Merge
authorduke
Wed, 05 Jul 2017 20:32:21 +0200
changeset 30386 07146758775b
parent 30385 1dbddb2a1971 (current diff)
parent 30381 098f4aed1a53 (diff)
child 30397 8cd4c3d60f97
Merge
hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SharedHeap.java
hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VirtualSpace.java
hotspot/src/cpu/x86/vm/rtmLocking.cpp
hotspot/src/cpu/x86/vm/templateTable_x86_32.hpp
hotspot/src/cpu/x86/vm/templateTable_x86_64.hpp
hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp
hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.hpp
hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.inline.hpp
hotspot/src/share/vm/memory/sharedHeap.cpp
hotspot/src/share/vm/memory/sharedHeap.hpp
hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp
hotspot/src/share/vm/oops/klassPS.hpp
hotspot/src/share/vm/oops/oop.pcgc.inline.hpp
hotspot/src/share/vm/oops/oop.psgc.inline.hpp
hotspot/src/share/vm/runtime/virtualspace.cpp
hotspot/src/share/vm/runtime/virtualspace.hpp
hotspot/test/sanity/WhiteBox.java
jdk/src/java.management/share/classes/META-INF/services/sun.management.spi.PlatformMBeanProvider
jdk/src/java.management/share/classes/com/sun/management/DiagnosticCommandMBean.java
jdk/src/java.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
jdk/src/java.management/share/classes/com/sun/management/GarbageCollectorMXBean.java
jdk/src/java.management/share/classes/com/sun/management/GcInfo.java
jdk/src/java.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java
jdk/src/java.management/share/classes/com/sun/management/OperatingSystemMXBean.java
jdk/src/java.management/share/classes/com/sun/management/ThreadMXBean.java
jdk/src/java.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java
jdk/src/java.management/share/classes/com/sun/management/VMOption.java
jdk/src/java.management/share/classes/com/sun/management/internal/PlatformMBeanProviderImpl.java
jdk/src/java.management/share/classes/com/sun/management/package-info.java
jdk/src/java.management/share/classes/sun/management/DiagnosticCommandArgumentInfo.java
jdk/src/java.management/share/classes/sun/management/DiagnosticCommandImpl.java
jdk/src/java.management/share/classes/sun/management/DiagnosticCommandInfo.java
jdk/src/java.management/share/classes/sun/management/Flag.java
jdk/src/java.management/share/classes/sun/management/GarbageCollectionNotifInfoCompositeData.java
jdk/src/java.management/share/classes/sun/management/GcInfoBuilder.java
jdk/src/java.management/share/classes/sun/management/GcInfoCompositeData.java
jdk/src/java.management/share/classes/sun/management/HotSpotDiagnostic.java
jdk/src/java.management/share/classes/sun/management/ManagementFactory.java
jdk/src/java.management/share/classes/sun/management/VMOptionCompositeData.java
jdk/src/java.management/share/native/libmanagement/DiagnosticCommandImpl.c
jdk/src/java.management/share/native/libmanagement/Flag.c
jdk/src/java.management/share/native/libmanagement/GcInfoBuilder.c
jdk/src/java.management/share/native/libmanagement/HotSpotDiagnostic.c
jdk/src/java.management/unix/classes/sun/management/OperatingSystemImpl.java
jdk/src/java.management/unix/native/libmanagement/LinuxOperatingSystem.c
jdk/src/java.management/unix/native/libmanagement/MacosxOperatingSystem.c
jdk/src/java.management/unix/native/libmanagement/OperatingSystemImpl.c
jdk/src/java.management/unix/native/libmanagement/SolarisOperatingSystem.c
jdk/src/java.management/windows/classes/sun/management/OperatingSystemImpl.java
jdk/src/java.management/windows/native/libmanagement/OperatingSystemImpl.c
jdk/test/java/lang/management/ThreadMXBean/Semaphore.java
jdk/test/sun/management/jmxremote/startstop/JMXStartStopDoSomething.java
--- a/.hgtags-top-repo	Thu May 07 20:50:57 2015 -0700
+++ b/.hgtags-top-repo	Wed Jul 05 20:32:21 2017 +0200
@@ -305,3 +305,4 @@
 9fa2185bee17462d1014538bff60af6e6f0b01e7 jdk9-b60
 ea38728b4f4bdd8fd0d7a89b18069f521cf05013 jdk9-b61
 105d045a69174d870b69bfe471b3f2d05a9f8ecc jdk9-b62
+0b32ed628fa60e4ab99fb0b5866d648e16231f17 jdk9-b63
--- a/common/autoconf/basics_windows.m4	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/basics_windows.m4	Wed Jul 05 20:32:21 2017 +0200
@@ -320,8 +320,8 @@
     WINDOWS_ENV_VENDOR='cygwin'
     WINDOWS_ENV_VERSION="$CYGWIN_VERSION"
 
-    CYGWIN_VERSION_OK=`$ECHO $CYGWIN_VERSION | $GREP ^1.7.`
-    if test "x$CYGWIN_VERSION_OK" = x; then
+    CYGWIN_VERSION_OLD=`$ECHO $CYGWIN_VERSION | $GREP -e '^1\.[0-6]'`
+    if test "x$CYGWIN_VERSION_OLD" != x; then
       AC_MSG_NOTICE([Your cygwin is too old. You are running $CYGWIN_VERSION, but at least cygwin 1.7 is required. Please upgrade.])
       AC_MSG_ERROR([Cannot continue])
     fi
--- a/common/autoconf/boot-jdk.m4	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/boot-jdk.m4	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -306,7 +306,6 @@
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAC, javac)
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAH, javah)
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAR, jar)
-  BOOTJDK_CHECK_TOOL_IN_BOOTJDK(NATIVE2ASCII, native2ascii)
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JARSIGNER, jarsigner)
 
   # Finally, set some other options...
--- a/common/autoconf/bootcycle-spec.gmk.in	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/bootcycle-spec.gmk.in	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -57,6 +57,5 @@
 JAVAC_CMD:=$(BOOT_JDK)/bin/javac
 JAVAH_CMD:=$(BOOT_JDK)/bin/javah
 JAR_CMD:=$(BOOT_JDK)/bin/jar
-NATIVE2ASCII_CMD:=$(BOOT_JDK)/bin/native2ascii
 JARSIGNER_CMD:=$(BOOT_JDK)/bin/jarsigner
 SJAVAC_SERVER_JAVA_CMD:=$(JAVA_CMD)
--- a/common/autoconf/flags.m4	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/flags.m4	Wed Jul 05 20:32:21 2017 +0200
@@ -65,12 +65,6 @@
   fi
   AC_SUBST(POST_STRIP_CMD)
 
-  if test "x$OPENJDK_TARGET_OS" = xsolaris; then
-    # FIXME: break out into MCSFLAGS
-    POST_MCS_CMD="$MCS -d -a \"JDK $FULL_VERSION\""
-  fi
-  AC_SUBST(POST_MCS_CMD)
-
   if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
     CC_OUT_OPTION=-Fo
     EXE_OUT_OPTION=-out:
--- a/common/autoconf/generated-configure.sh	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/generated-configure.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -737,7 +737,6 @@
 LD_OUT_OPTION
 EXE_OUT_OPTION
 CC_OUT_OPTION
-POST_MCS_CMD
 POST_STRIP_CMD
 ARFLAGS
 COMPILER_TARGET_BITS_FLAG
@@ -759,7 +758,6 @@
 OBJCOPY
 ac_ct_NM
 ac_ct_STRIP
-MCS
 GNM
 NM
 STRIP
@@ -820,7 +818,6 @@
 JAVAC_FLAGS
 BOOT_JDK_SOURCETARGET
 JARSIGNER
-NATIVE2ASCII
 JAR
 JAVAH
 JAVAC
@@ -1189,7 +1186,6 @@
 JAVAC
 JAVAH
 JAR
-NATIVE2ASCII
 JARSIGNER
 CC
 CFLAGS
@@ -1207,7 +1203,6 @@
 STRIP
 NM
 GNM
-MCS
 OBJCOPY
 OBJDUMP
 BUILD_CC
@@ -2070,8 +2065,6 @@
   JAVAC       Override default value for JAVAC
   JAVAH       Override default value for JAVAH
   JAR         Override default value for JAR
-  NATIVE2ASCII
-              Override default value for NATIVE2ASCII
   JARSIGNER   Override default value for JARSIGNER
   CC          C compiler command
   CFLAGS      C compiler flags
@@ -2090,7 +2083,6 @@
   STRIP       Override default value for STRIP
   NM          Override default value for NM
   GNM         Override default value for GNM
-  MCS         Override default value for MCS
   OBJCOPY     Override default value for OBJCOPY
   OBJDUMP     Override default value for OBJDUMP
   BUILD_CC    Override default value for BUILD_CC
@@ -3599,7 +3591,7 @@
 
 # ... then the rest
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -4367,7 +4359,7 @@
 #CUSTOM_AUTOCONF_INCLUDE
 
 # Do not change or remove the following line, it is needed for consistency checks:
-DATE_WHEN_GENERATED=1430331133
+DATE_WHEN_GENERATED=1430918902
 
 ###############################################################################
 #
@@ -14052,8 +14044,8 @@
     WINDOWS_ENV_VENDOR='cygwin'
     WINDOWS_ENV_VERSION="$CYGWIN_VERSION"
 
-    CYGWIN_VERSION_OK=`$ECHO $CYGWIN_VERSION | $GREP ^1.7.`
-    if test "x$CYGWIN_VERSION_OK" = x; then
+    CYGWIN_VERSION_OLD=`$ECHO $CYGWIN_VERSION | $GREP -e '^1\.0-6'`
+    if test "x$CYGWIN_VERSION_OLD" != x; then
       { $as_echo "$as_me:${as_lineno-$LINENO}: Your cygwin is too old. You are running $CYGWIN_VERSION, but at least cygwin 1.7 is required. Please upgrade." >&5
 $as_echo "$as_me: Your cygwin is too old. You are running $CYGWIN_VERSION, but at least cygwin 1.7 is required. Please upgrade." >&6;}
       as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -26059,133 +26051,6 @@
   # Publish this variable in the help.
 
 
-  if test "x$NATIVE2ASCII" = x; then
-    # The variable is not set by user, try to locate tool using the code snippet
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for native2ascii in Boot JDK" >&5
-$as_echo_n "checking for native2ascii in Boot JDK... " >&6; }
-      NATIVE2ASCII=$BOOT_JDK/bin/native2ascii
-      if test ! -x $NATIVE2ASCII; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Your Boot JDK seems broken. This might be fixed by explicitely setting --with-boot-jdk" >&5
-$as_echo "$as_me: Your Boot JDK seems broken. This might be fixed by explicitely setting --with-boot-jdk" >&6;}
-        as_fn_error $? "Could not find native2ascii in the Boot JDK" "$LINENO" 5
-      fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-
-
-  else
-    # The variable is set, but is it from the command line or the environment?
-
-    # Try to remove the string !NATIVE2ASCII! from our list.
-    try_remove_var=${CONFIGURE_OVERRIDDEN_VARIABLES//!NATIVE2ASCII!/}
-    if test "x$try_remove_var" = "x$CONFIGURE_OVERRIDDEN_VARIABLES"; then
-      # If it failed, the variable was not from the command line. Ignore it,
-      # but warn the user (except for BASH, which is always set by the calling BASH).
-      if test "xNATIVE2ASCII" != xBASH; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Ignoring value of NATIVE2ASCII from the environment. Use command line variables instead." >&5
-$as_echo "$as_me: WARNING: Ignoring value of NATIVE2ASCII from the environment. Use command line variables instead." >&2;}
-      fi
-      # Try to locate tool using the code snippet
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for native2ascii in Boot JDK" >&5
-$as_echo_n "checking for native2ascii in Boot JDK... " >&6; }
-      NATIVE2ASCII=$BOOT_JDK/bin/native2ascii
-      if test ! -x $NATIVE2ASCII; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Your Boot JDK seems broken. This might be fixed by explicitely setting --with-boot-jdk" >&5
-$as_echo "$as_me: Your Boot JDK seems broken. This might be fixed by explicitely setting --with-boot-jdk" >&6;}
-        as_fn_error $? "Could not find native2ascii in the Boot JDK" "$LINENO" 5
-      fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-
-
-    else
-      # If it succeeded, then it was overridden by the user. We will use it
-      # for the tool.
-
-      # First remove it from the list of overridden variables, so we can test
-      # for unknown variables in the end.
-      CONFIGURE_OVERRIDDEN_VARIABLES="$try_remove_var"
-
-      # Check if the provided tool contains a complete path.
-      tool_specified="$NATIVE2ASCII"
-      tool_basename="${tool_specified##*/}"
-      if test "x$tool_basename" = "x$tool_specified"; then
-        # A command without a complete path is provided, search $PATH.
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Will search for user supplied tool NATIVE2ASCII=$tool_basename" >&5
-$as_echo "$as_me: Will search for user supplied tool NATIVE2ASCII=$tool_basename" >&6;}
-        # Extract the first word of "$tool_basename", so it can be a program name with args.
-set dummy $tool_basename; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_NATIVE2ASCII+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $NATIVE2ASCII in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_NATIVE2ASCII="$NATIVE2ASCII" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_NATIVE2ASCII="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-NATIVE2ASCII=$ac_cv_path_NATIVE2ASCII
-if test -n "$NATIVE2ASCII"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NATIVE2ASCII" >&5
-$as_echo "$NATIVE2ASCII" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-        if test "x$NATIVE2ASCII" = x; then
-          as_fn_error $? "User supplied tool $tool_basename could not be found" "$LINENO" 5
-        fi
-      else
-        # Otherwise we believe it is a complete path. Use it as it is.
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Will use user supplied tool NATIVE2ASCII=$tool_specified" >&5
-$as_echo "$as_me: Will use user supplied tool NATIVE2ASCII=$tool_specified" >&6;}
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NATIVE2ASCII" >&5
-$as_echo_n "checking for NATIVE2ASCII... " >&6; }
-        if test ! -x "$tool_specified"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-          as_fn_error $? "User supplied tool NATIVE2ASCII=$tool_specified does not exist or is not executable" "$LINENO" 5
-        fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tool_specified" >&5
-$as_echo "$tool_specified" >&6; }
-      fi
-    fi
-  fi
-
-
-
-  # Use user overridden value if available, otherwise locate tool in the Boot JDK.
-
-  # Publish this variable in the help.
-
-
   if test "x$JARSIGNER" = x; then
     # The variable is not set by user, try to locate tool using the code snippet
 
@@ -28232,7 +28097,7 @@
   # For solaris we really need solaris tools, and not the GNU equivalent.
   # The build tools on Solaris reside in /usr/ccs (C Compilation System),
   # so add that to path before starting to probe.
-  # FIXME: This was originally only done for AS,NM,GNM,STRIP,MCS,OBJCOPY,OBJDUMP.
+  # FIXME: This was originally only done for AS,NM,GNM,STRIP,OBJCOPY,OBJDUMP.
   if test "x$OPENJDK_BUILD_OS" = xsolaris; then
     PATH="/usr/ccs/bin:$PATH"
   fi
@@ -36672,479 +36537,6 @@
     fi
   fi
 
-
-
-
-  # Publish this variable in the help.
-
-
-  if test "x$MCS" = x; then
-    # The variable is not set by user, try to locate tool using the code snippet
-    for ac_prog in mcs
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MCS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MCS in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_MCS="$MCS" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_MCS="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-MCS=$ac_cv_path_MCS
-if test -n "$MCS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MCS" >&5
-$as_echo "$MCS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$MCS" && break
-done
-
-  else
-    # The variable is set, but is it from the command line or the environment?
-
-    # Try to remove the string !MCS! from our list.
-    try_remove_var=${CONFIGURE_OVERRIDDEN_VARIABLES//!MCS!/}
-    if test "x$try_remove_var" = "x$CONFIGURE_OVERRIDDEN_VARIABLES"; then
-      # If it failed, the variable was not from the command line. Ignore it,
-      # but warn the user (except for BASH, which is always set by the calling BASH).
-      if test "xMCS" != xBASH; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Ignoring value of MCS from the environment. Use command line variables instead." >&5
-$as_echo "$as_me: WARNING: Ignoring value of MCS from the environment. Use command line variables instead." >&2;}
-      fi
-      # Try to locate tool using the code snippet
-      for ac_prog in mcs
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MCS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MCS in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_MCS="$MCS" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_MCS="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-MCS=$ac_cv_path_MCS
-if test -n "$MCS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MCS" >&5
-$as_echo "$MCS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$MCS" && break
-done
-
-    else
-      # If it succeeded, then it was overridden by the user. We will use it
-      # for the tool.
-
-      # First remove it from the list of overridden variables, so we can test
-      # for unknown variables in the end.
-      CONFIGURE_OVERRIDDEN_VARIABLES="$try_remove_var"
-
-      # Check if the provided tool contains a complete path.
-      tool_specified="$MCS"
-      tool_basename="${tool_specified##*/}"
-      if test "x$tool_basename" = "x$tool_specified"; then
-        # A command without a complete path is provided, search $PATH.
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Will search for user supplied tool MCS=$tool_basename" >&5
-$as_echo "$as_me: Will search for user supplied tool MCS=$tool_basename" >&6;}
-        # Extract the first word of "$tool_basename", so it can be a program name with args.
-set dummy $tool_basename; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MCS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MCS in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_MCS="$MCS" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_MCS="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-MCS=$ac_cv_path_MCS
-if test -n "$MCS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MCS" >&5
-$as_echo "$MCS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-        if test "x$MCS" = x; then
-          as_fn_error $? "User supplied tool $tool_basename could not be found" "$LINENO" 5
-        fi
-      else
-        # Otherwise we believe it is a complete path. Use it as it is.
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Will use user supplied tool MCS=$tool_specified" >&5
-$as_echo "$as_me: Will use user supplied tool MCS=$tool_specified" >&6;}
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCS" >&5
-$as_echo_n "checking for MCS... " >&6; }
-        if test ! -x "$tool_specified"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-          as_fn_error $? "User supplied tool MCS=$tool_specified does not exist or is not executable" "$LINENO" 5
-        fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tool_specified" >&5
-$as_echo "$tool_specified" >&6; }
-      fi
-    fi
-  fi
-
-
-
-  # Only process if variable expands to non-empty
-
-  if test "x$MCS" != x; then
-    if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
-
-  # First separate the path from the arguments. This will split at the first
-  # space.
-  complete="$MCS"
-  path="${complete%% *}"
-  tmp="$complete EOL"
-  arguments="${tmp#* }"
-
-  # Input might be given as Windows format, start by converting to
-  # unix format.
-  new_path=`$CYGPATH -u "$path"`
-
-  # Now try to locate executable using which
-  new_path=`$WHICH "$new_path" 2> /dev/null`
-  # bat and cmd files are not always considered executable in cygwin causing which
-  # to not find them
-  if test "x$new_path" = x \
-      && test "x`$ECHO \"$path\" | $GREP -i -e \"\\.bat$\" -e \"\\.cmd$\"`" != x \
-      && test "x`$LS \"$path\" 2>/dev/null`" != x; then
-    new_path=`$CYGPATH -u "$path"`
-  fi
-  if test "x$new_path" = x; then
-    # Oops. Which didn't find the executable.
-    # The splitting of arguments from the executable at a space might have been incorrect,
-    # since paths with space are more likely in Windows. Give it another try with the whole
-    # argument.
-    path="$complete"
-    arguments="EOL"
-    new_path=`$CYGPATH -u "$path"`
-    new_path=`$WHICH "$new_path" 2> /dev/null`
-    # bat and cmd files are not always considered executable in cygwin causing which
-    # to not find them
-    if test "x$new_path" = x \
-        && test "x`$ECHO \"$path\" | $GREP -i -e \"\\.bat$\" -e \"\\.cmd$\"`" != x \
-        && test "x`$LS \"$path\" 2>/dev/null`" != x; then
-      new_path=`$CYGPATH -u "$path"`
-    fi
-    if test "x$new_path" = x; then
-      # It's still not found. Now this is an unrecoverable error.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: The path of MCS, which resolves as \"$complete\", is not found." >&5
-$as_echo "$as_me: The path of MCS, which resolves as \"$complete\", is not found." >&6;}
-      has_space=`$ECHO "$complete" | $GREP " "`
-      if test "x$has_space" != x; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: You might be mixing spaces in the path and extra arguments, which is not allowed." >&5
-$as_echo "$as_me: You might be mixing spaces in the path and extra arguments, which is not allowed." >&6;}
-      fi
-      as_fn_error $? "Cannot locate the the path of MCS" "$LINENO" 5
-    fi
-  fi
-
-  # Cygwin tries to hide some aspects of the Windows file system, such that binaries are
-  # named .exe but called without that suffix. Therefore, "foo" and "foo.exe" are considered
-  # the same file, most of the time (as in "test -f"). But not when running cygpath -s, then
-  # "foo.exe" is OK but "foo" is an error.
-  #
-  # This test is therefore slightly more accurate than "test -f" to check for file presence.
-  # It is also a way to make sure we got the proper file name for the real test later on.
-  test_shortpath=`$CYGPATH -s -m "$new_path" 2> /dev/null`
-  if test "x$test_shortpath" = x; then
-    # Short path failed, file does not exist as specified.
-    # Try adding .exe or .cmd
-    if test -f "${new_path}.exe"; then
-      input_to_shortpath="${new_path}.exe"
-    elif test -f "${new_path}.cmd"; then
-      input_to_shortpath="${new_path}.cmd"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: The path of MCS, which resolves as \"$new_path\", is invalid." >&5
-$as_echo "$as_me: The path of MCS, which resolves as \"$new_path\", is invalid." >&6;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Neither \"$new_path\" nor \"$new_path.exe/cmd\" can be found" >&5
-$as_echo "$as_me: Neither \"$new_path\" nor \"$new_path.exe/cmd\" can be found" >&6;}
-      as_fn_error $? "Cannot locate the the path of MCS" "$LINENO" 5
-    fi
-  else
-    input_to_shortpath="$new_path"
-  fi
-
-  # Call helper function which possibly converts this using DOS-style short mode.
-  # If so, the updated path is stored in $new_path.
-  new_path="$input_to_shortpath"
-
-  input_path="$input_to_shortpath"
-  # Check if we need to convert this using DOS-style short mode. If the path
-  # contains just simple characters, use it. Otherwise (spaces, weird characters),
-  # take no chances and rewrite it.
-  # Note: m4 eats our [], so we need to use [ and ] instead.
-  has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-._/a-zA-Z0-9]`
-  if test "x$has_forbidden_chars" != x; then
-    # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \)
-    shortmode_path=`$CYGPATH -s -m -a "$input_path"`
-    path_after_shortmode=`$CYGPATH -u "$shortmode_path"`
-    if test "x$path_after_shortmode" != "x$input_to_shortpath"; then
-      # Going to short mode and back again did indeed matter. Since short mode is
-      # case insensitive, let's make it lowercase to improve readability.
-      shortmode_path=`$ECHO "$shortmode_path" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-      # Now convert it back to Unix-style (cygpath)
-      input_path=`$CYGPATH -u "$shortmode_path"`
-      new_path="$input_path"
-    fi
-  fi
-
-  test_cygdrive_prefix=`$ECHO $input_path | $GREP ^/cygdrive/`
-  if test "x$test_cygdrive_prefix" = x; then
-    # As a simple fix, exclude /usr/bin since it's not a real path.
-    if test "x`$ECHO $input_to_shortpath | $GREP ^/usr/bin/`" = x; then
-      # The path is in a Cygwin special directory (e.g. /home). We need this converted to
-      # a path prefixed by /cygdrive for fixpath to work.
-      new_path="$CYGWIN_ROOT_PATH$input_path"
-    fi
-  fi
-
-  # remove trailing .exe if any
-  new_path="${new_path/%.exe/}"
-
-    elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
-
-  # First separate the path from the arguments. This will split at the first
-  # space.
-  complete="$MCS"
-  path="${complete%% *}"
-  tmp="$complete EOL"
-  arguments="${tmp#* }"
-
-  # Input might be given as Windows format, start by converting to
-  # unix format.
-  new_path="$path"
-
-  windows_path="$new_path"
-  if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
-    unix_path=`$CYGPATH -u "$windows_path"`
-    new_path="$unix_path"
-  elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
-    unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'`
-    new_path="$unix_path"
-  fi
-
-
-  # Now try to locate executable using which
-  new_path=`$WHICH "$new_path" 2> /dev/null`
-
-  if test "x$new_path" = x; then
-    # Oops. Which didn't find the executable.
-    # The splitting of arguments from the executable at a space might have been incorrect,
-    # since paths with space are more likely in Windows. Give it another try with the whole
-    # argument.
-    path="$complete"
-    arguments="EOL"
-    new_path="$path"
-
-  windows_path="$new_path"
-  if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
-    unix_path=`$CYGPATH -u "$windows_path"`
-    new_path="$unix_path"
-  elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
-    unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'`
-    new_path="$unix_path"
-  fi
-
-
-    new_path=`$WHICH "$new_path" 2> /dev/null`
-    # bat and cmd files are not always considered executable in MSYS causing which
-    # to not find them
-    if test "x$new_path" = x \
-        && test "x`$ECHO \"$path\" | $GREP -i -e \"\\.bat$\" -e \"\\.cmd$\"`" != x \
-        && test "x`$LS \"$path\" 2>/dev/null`" != x; then
-      new_path="$path"
-
-  windows_path="$new_path"
-  if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
-    unix_path=`$CYGPATH -u "$windows_path"`
-    new_path="$unix_path"
-  elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
-    unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'`
-    new_path="$unix_path"
-  fi
-
-    fi
-
-    if test "x$new_path" = x; then
-      # It's still not found. Now this is an unrecoverable error.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: The path of MCS, which resolves as \"$complete\", is not found." >&5
-$as_echo "$as_me: The path of MCS, which resolves as \"$complete\", is not found." >&6;}
-      has_space=`$ECHO "$complete" | $GREP " "`
-      if test "x$has_space" != x; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: You might be mixing spaces in the path and extra arguments, which is not allowed." >&5
-$as_echo "$as_me: You might be mixing spaces in the path and extra arguments, which is not allowed." >&6;}
-      fi
-      as_fn_error $? "Cannot locate the the path of MCS" "$LINENO" 5
-    fi
-  fi
-
-  # Now new_path has a complete unix path to the binary
-  if test "x`$ECHO $new_path | $GREP ^/bin/`" != x; then
-    # Keep paths in /bin as-is, but remove trailing .exe if any
-    new_path="${new_path/%.exe/}"
-    # Do not save /bin paths to all_fixpath_prefixes!
-  else
-    # Not in mixed or Windows style, start by that.
-    new_path=`cmd //c echo $new_path`
-
-  input_path="$new_path"
-  # Check if we need to convert this using DOS-style short mode. If the path
-  # contains just simple characters, use it. Otherwise (spaces, weird characters),
-  # take no chances and rewrite it.
-  # Note: m4 eats our [], so we need to use [ and ] instead.
-  has_forbidden_chars=`$ECHO "$input_path" | $GREP [^-_/:a-zA-Z0-9]`
-  if test "x$has_forbidden_chars" != x; then
-    # Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \)
-    new_path=`cmd /c "for %A in (\"$input_path\") do @echo %~sA"|$TR \\\\\\\\ / | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-  fi
-
-    # Output is in $new_path
-
-  windows_path="$new_path"
-  if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
-    unix_path=`$CYGPATH -u "$windows_path"`
-    new_path="$unix_path"
-  elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
-    unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'`
-    new_path="$unix_path"
-  fi
-
-    # remove trailing .exe if any
-    new_path="${new_path/%.exe/}"
-
-    # Save the first 10 bytes of this path to the storage, so fixpath can work.
-    all_fixpath_prefixes=("${all_fixpath_prefixes[@]}" "${new_path:0:10}")
-  fi
-
-    else
-      # We're on a unix platform. Hooray! :)
-      # First separate the path from the arguments. This will split at the first
-      # space.
-      complete="$MCS"
-      path="${complete%% *}"
-      tmp="$complete EOL"
-      arguments="${tmp#* }"
-
-      # Cannot rely on the command "which" here since it doesn't always work.
-      is_absolute_path=`$ECHO "$path" | $GREP ^/`
-      if test -z "$is_absolute_path"; then
-        # Path to executable is not absolute. Find it.
-        IFS_save="$IFS"
-        IFS=:
-        for p in $PATH; do
-          if test -f "$p/$path" && test -x "$p/$path"; then
-            new_path="$p/$path"
-            break
-          fi
-        done
-        IFS="$IFS_save"
-      else
-        # This is an absolute path, we can use it without further modifications.
-        new_path="$path"
-      fi
-
-      if test "x$new_path" = x; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: The path of MCS, which resolves as \"$complete\", is not found." >&5
-$as_echo "$as_me: The path of MCS, which resolves as \"$complete\", is not found." >&6;}
-        has_space=`$ECHO "$complete" | $GREP " "`
-        if test "x$has_space" != x; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: This might be caused by spaces in the path, which is not allowed." >&5
-$as_echo "$as_me: This might be caused by spaces in the path, which is not allowed." >&6;}
-        fi
-        as_fn_error $? "Cannot locate the the path of MCS" "$LINENO" 5
-      fi
-    fi
-
-    # Now join together the path and the arguments once again
-    if test "x$arguments" != xEOL; then
-      new_complete="$new_path ${arguments% *}"
-    else
-      new_complete="$new_path"
-    fi
-
-    if test "x$complete" != "x$new_complete"; then
-      MCS="$new_complete"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Rewriting MCS to \"$new_complete\"" >&5
-$as_echo "$as_me: Rewriting MCS to \"$new_complete\"" >&6;}
-    fi
-  fi
-
   elif test "x$OPENJDK_TARGET_OS" != xwindows; then
     # FIXME: we should unify this with the solaris case above.
 
@@ -41632,12 +41024,6 @@
   fi
 
 
-  if test "x$OPENJDK_TARGET_OS" = xsolaris; then
-    # FIXME: break out into MCSFLAGS
-    POST_MCS_CMD="$MCS -d -a \"JDK $FULL_VERSION\""
-  fi
-
-
   if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
     CC_OUT_OPTION=-Fo
     EXE_OUT_OPTION=-out:
--- a/common/autoconf/spec.gmk.in	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/spec.gmk.in	Wed Jul 05 20:32:21 2017 +0200
@@ -391,7 +391,6 @@
 NM:=@NM@
 GNM:=@GNM@
 STRIP:=@STRIP@
-MCS:=@MCS@
 
 LIPO:=@LIPO@
 
@@ -440,7 +439,6 @@
 OBJ_SUFFIX:=@OBJ_SUFFIX@
 
 POST_STRIP_CMD:=@POST_STRIP_CMD@
-POST_MCS_CMD:=@POST_MCS_CMD@
 
 JAVA_FLAGS:=@JAVA_FLAGS@
 JAVA_FLAGS_BIG:=@JAVA_FLAGS_BIG@
@@ -455,7 +453,6 @@
 JAVAC_CMD:=@JAVAC@
 JAVAH_CMD:=@JAVAH@
 JAR_CMD:=@JAR@
-NATIVE2ASCII_CMD:=@NATIVE2ASCII@
 JARSIGNER_CMD:=@JARSIGNER@
 SJAVAC_SERVER_JAVA_CMD:=@SJAVAC_SERVER_JAVA@
 # These variables are meant to be used. They are defined with = instead of := to make
@@ -465,7 +462,6 @@
 JAVAC=@FIXPATH@ $(JAVAC_CMD)
 JAVAH=@FIXPATH@ $(JAVAH_CMD)
 JAR=@FIXPATH@ $(JAR_CMD)
-NATIVE2ASCII=@FIXPATH@ $(NATIVE2ASCII_CMD) $(JAVA_TOOL_FLAGS_SMALL)
 JARSIGNER=@FIXPATH@ $(JARSIGNER_CMD)
 # A specific java binary with specific options can be used to run
 # the long running background sjavac servers and other long running tasks.
@@ -692,10 +688,10 @@
 SYMBOLS_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/$(SYMBOLS_IMAGE_SUBDIR)
 
 # Macosx bundles directory definitions
-JDK_BUNDLE_SUBDIR=jdk-bundle/jdk$(JDK_VERSION).jdk/Contents
-JRE_BUNDLE_SUBDIR=jre-bundle/jre$(JDK_VERSION).jre/Contents
-JDK_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_BUNDLE_SUBDIR)
-JRE_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_BUNDLE_SUBDIR)
+JDK_MACOSX_BUNDLE_SUBDIR=jdk-bundle/jdk$(JDK_VERSION).jdk/Contents
+JRE_MACOSX_BUNDLE_SUBDIR=jre-bundle/jre$(JDK_VERSION).jre/Contents
+JDK_MACOSX_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_MACOSX_BUNDLE_SUBDIR)
+JRE_MACOSX_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_MACOSX_BUNDLE_SUBDIR)
 
 # This macro is called to allow inclusion of closed source counterparts.
 # Unless overridden in closed sources, it expands to nothing.
--- a/common/autoconf/toolchain.m4	Thu May 07 20:50:57 2015 -0700
+++ b/common/autoconf/toolchain.m4	Wed Jul 05 20:32:21 2017 +0200
@@ -210,7 +210,7 @@
   # For solaris we really need solaris tools, and not the GNU equivalent.
   # The build tools on Solaris reside in /usr/ccs (C Compilation System),
   # so add that to path before starting to probe.
-  # FIXME: This was originally only done for AS,NM,GNM,STRIP,MCS,OBJCOPY,OBJDUMP.
+  # FIXME: This was originally only done for AS,NM,GNM,STRIP,OBJCOPY,OBJDUMP.
   if test "x$OPENJDK_BUILD_OS" = xsolaris; then
     PATH="/usr/ccs/bin:$PATH"
   fi
@@ -569,9 +569,6 @@
     BASIC_FIXUP_EXECUTABLE(NM)
     BASIC_PATH_PROGS(GNM, gnm)
     BASIC_FIXUP_EXECUTABLE(GNM)
-
-    BASIC_PATH_PROGS(MCS, mcs)
-    BASIC_FIXUP_EXECUTABLE(MCS)
   elif test "x$OPENJDK_TARGET_OS" != xwindows; then
     # FIXME: we should unify this with the solaris case above.
     BASIC_CHECK_TOOLS(STRIP, strip)
--- a/common/bin/unshuffle_list.txt	Thu May 07 20:50:57 2015 -0700
+++ b/common/bin/unshuffle_list.txt	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -1156,7 +1156,6 @@
 jdk/src/java.management/share/classes/com/sun/jmx/interceptor : jdk/src/share/classes/com/sun/jmx/interceptor
 jdk/src/java.management/share/classes/com/sun/jmx/mbeanserver : jdk/src/share/classes/com/sun/jmx/mbeanserver
 jdk/src/java.management/share/classes/com/sun/jmx/remote : jdk/src/share/classes/com/sun/jmx/remote
-jdk/src/java.management/share/classes/com/sun/management : jdk/src/share/classes/com/sun/management
 jdk/src/java.management/share/classes/java/lang/management : jdk/src/share/classes/java/lang/management
 jdk/src/java.management/share/classes/javax/management : jdk/src/share/classes/javax/management
 jdk/src/java.management/share/classes/mgmt-overview.html : jdk/src/share/classes/com/sun/management/mgmt-overview.html
@@ -1429,6 +1428,7 @@
 jdk/src/jdk.localedata/share/classes/sun/util/resources/uk : jdk/src/share/classes/sun/util/resources/uk
 jdk/src/jdk.localedata/share/classes/sun/util/resources/vi : jdk/src/share/classes/sun/util/resources/vi
 jdk/src/jdk.localedata/share/classes/sun/util/resources/zh : jdk/src/share/classes/sun/util/resources/zh
+jdk/src/jdk.management/share/classes/com/sun/management : jdk/src/share/classes/com/sun/management
 jdk/src/jdk.naming.dns/share/classes/com/sun/jndi/dns : jdk/src/share/classes/com/sun/jndi/dns
 jdk/src/jdk.naming.dns/share/classes/com/sun/jndi/url/dns : jdk/src/share/classes/com/sun/jndi/url/dns
 jdk/src/jdk.naming.dns/share/classes/META-INF/services : jdk/src/share/classes/sun/net/spi/nameservice/dns/META-INF/services
--- a/hotspot/.hgtags	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/.hgtags	Wed Jul 05 20:32:21 2017 +0200
@@ -465,3 +465,4 @@
 9c916db4bf3bc164a47b5a9cefe5ffd71e111f6a jdk9-b60
 715d2da5801c410746e92f08066d53bde1496286 jdk9-b61
 1eab877142cce6ca06e556e2ad0af688f993f00b jdk9-b62
+2ac9b6b36689b50d1562627067c92d51781b5684 jdk9-b63
--- a/hotspot/agent/src/os/bsd/libproc_impl.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/os/bsd/libproc_impl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -215,7 +215,12 @@
     return NULL;
   }
 
-  strncpy(newlib->name, libname, sizeof(newlib->name));
+  if (strlen(libname) >= sizeof(newlib->name)) {
+    print_debug("libname %s too long\n", libname);
+    return NULL;
+  }
+  strcpy(newlib->name, libname);
+
   newlib->base = base;
 
   if (fd == -1) {
--- a/hotspot/agent/src/os/linux/libproc_impl.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/os/linux/libproc_impl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -159,7 +159,12 @@
       return NULL;
    }
 
-   strncpy(newlib->name, libname, sizeof(newlib->name));
+   if (strlen(libname) >= sizeof(newlib->name)) {
+     print_debug("libname %s too long\n", libname);
+     return NULL;
+   }
+   strcpy(newlib->name, libname);
+
    newlib->base = base;
 
    if (fd == -1) {
--- a/hotspot/agent/src/share/classes/com/sun/java/swing/action/ActionManager.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/com/sun/java/swing/action/ActionManager.java	Wed Jul 05 20:32:21 2017 +0200
@@ -46,6 +46,11 @@
         return manager;
     }
 
+    protected static void setInstance(ActionManager m)
+    {
+        manager = m;
+    }
+
     protected abstract void addActions();
 
     protected void addAction(String cmdname, Action action)
@@ -90,6 +95,6 @@
 
     private HashMap actions;
     private static ActionUtilities utilities = new ActionUtilities();
-    protected static ActionManager manager;
+    private static ActionManager manager;
 
 }
--- a/hotspot/agent/src/share/classes/com/sun/java/swing/ui/CommonToolBar.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/com/sun/java/swing/ui/CommonToolBar.java	Wed Jul 05 20:32:21 2017 +0200
@@ -46,7 +46,7 @@
     {
         this.manager = manager;
         statusBar = status;
-        buttonSize = new Dimension(CommonUI.buttconPrefSize);
+        buttonSize = new Dimension(CommonUI.getButtconPrefSize());
         buttonInsets = new Insets(0, 0, 0, 0);
         addComponents();
     }
--- a/hotspot/agent/src/share/classes/com/sun/java/swing/ui/CommonUI.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/com/sun/java/swing/ui/CommonUI.java	Wed Jul 05 20:32:21 2017 +0200
@@ -373,20 +373,25 @@
         comp.setCursor(Cursor.getPredefinedCursor(0));
     }
 
-    public static final int BUTTON_WIDTH = 100;
-    public static final int BUTTON_HEIGHT = 26;
-    public static final int BUTTCON_WIDTH = 28;
-    public static final int BUTTCON_HEIGHT = 28;
-    public static final int SM_BUTTON_WIDTH = 72;
-    public static final int SM_BUTTON_HEIGHT = 26;
-    public static final int LABEL_WIDTH = 100;
-    public static final int LABEL_HEIGHT = 20;
-    public static final int TEXT_WIDTH = 150;
-    public static final int TEXT_HEIGHT = 20;
-    public static Dimension buttonPrefSize = new Dimension(100, 26);
-    public static Dimension buttconPrefSize = new Dimension(28, 28);
-    public static Dimension smbuttonPrefSize = new Dimension(72, 26);
-    public static Dimension labelPrefSize = new Dimension(100, 20);
-    public static Dimension textPrefSize = new Dimension(150, 20);
+    public static Dimension getButtconPrefSize()
+    {
+        return buttconPrefSize;
+    }
+
+    private static final int BUTTON_WIDTH = 100;
+    private static final int BUTTON_HEIGHT = 26;
+    private static final int BUTTCON_WIDTH = 28;
+    private static final int BUTTCON_HEIGHT = 28;
+    private static final int SM_BUTTON_WIDTH = 72;
+    private static final int SM_BUTTON_HEIGHT = 26;
+    private static final int LABEL_WIDTH = 100;
+    private static final int LABEL_HEIGHT = 20;
+    private static final int TEXT_WIDTH = 150;
+    private static final int TEXT_HEIGHT = 20;
+    private static final Dimension buttonPrefSize = new Dimension(100, 26);
+    private static final Dimension buttconPrefSize = new Dimension(28, 28);
+    private static final Dimension smbuttonPrefSize = new Dimension(72, 26);
+    private static final Dimension labelPrefSize = new Dimension(100, 20);
+    private static final Dimension textPrefSize = new Dimension(150, 20);
 
 }
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/ci/ciMethodData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -148,7 +148,7 @@
   ParametersTypeData<ciKlass,ciMethod> parametersTypeData() {
     Address base = getAddress().addOffsetTo(origField.getOffset());
     int di = (int)parametersTypeDataDi.getValue(base);
-    if (di == -1) {
+    if (di == -1 || di == -2) {
       return null;
     }
     DataLayout dataLayout = new DataLayout(dataField.getValue(getAddress()), di);
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_implementation/g1/G1CollectedHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_implementation/g1/G1CollectedHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -29,9 +29,9 @@
 import java.util.Observer;
 
 import sun.jvm.hotspot.debugger.Address;
+import sun.jvm.hotspot.gc_interface.CollectedHeap;
 import sun.jvm.hotspot.gc_interface.CollectedHeapName;
 import sun.jvm.hotspot.memory.MemRegion;
-import sun.jvm.hotspot.memory.SharedHeap;
 import sun.jvm.hotspot.memory.SpaceClosure;
 import sun.jvm.hotspot.runtime.VM;
 import sun.jvm.hotspot.runtime.VMObjectFactory;
@@ -41,7 +41,7 @@
 
 // Mirror class for G1CollectedHeap.
 
-public class G1CollectedHeap extends SharedHeap {
+public class G1CollectedHeap extends CollectedHeap {
     // HeapRegionManager _hrm;
     static private long hrmFieldOffset;
     // MemRegion _g1_reserved;
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_interface/CollectedHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_interface/CollectedHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,7 +32,7 @@
 import sun.jvm.hotspot.runtime.*;
 import sun.jvm.hotspot.types.*;
 
-public class CollectedHeap extends VMObject {
+public abstract class CollectedHeap extends VMObject {
   private static long         reservedFieldOffset;
 
   static {
@@ -73,9 +73,7 @@
     return reservedRegion().contains(a);
   }
 
-  public CollectedHeapName kind() {
-    return CollectedHeapName.ABSTRACT;
-  }
+  public abstract CollectedHeapName kind();
 
   public void print() { printOn(System.out); }
   public void printOn(PrintStream tty) {
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_interface/CollectedHeapName.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/gc_interface/CollectedHeapName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,8 +31,6 @@
 
   private CollectedHeapName(String name) { this.name = name; }
 
-  public static final CollectedHeapName ABSTRACT = new CollectedHeapName("abstract");
-  public static final CollectedHeapName SHARED_HEAP = new CollectedHeapName("SharedHeap");
   public static final CollectedHeapName GEN_COLLECTED_HEAP = new CollectedHeapName("GenCollectedHeap");
   public static final CollectedHeapName G1_COLLECTED_HEAP = new CollectedHeapName("G1CollectedHeap");
   public static final CollectedHeapName PARALLEL_SCAVENGE_HEAP = new CollectedHeapName("ParallelScavengeHeap");
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/GenCollectedHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/GenCollectedHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,8 +33,7 @@
 import sun.jvm.hotspot.types.*;
 import sun.jvm.hotspot.utilities.*;
 
-public class GenCollectedHeap extends SharedHeap {
-  private static CIntegerField nGensField;
+public class GenCollectedHeap extends CollectedHeap {
   private static AddressField youngGenField;
   private static AddressField oldGenField;
 
@@ -54,7 +53,6 @@
   private static synchronized void initialize(TypeDataBase db) {
     Type type = db.lookupType("GenCollectedHeap");
 
-    nGensField = type.getCIntegerField("_n_gens");
     youngGenField = type.getAddressField("_young_gen");
     oldGenField = type.getAddressField("_old_gen");
 
@@ -70,7 +68,7 @@
   }
 
   public int nGens() {
-    return (int) nGensField.getValue(addr);
+    return 2; // Young + Old
   }
 
   public Generation getGen(int i) {
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SharedHeap.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-package sun.jvm.hotspot.memory;
-
-import java.io.*;
-import java.util.*;
-
-import sun.jvm.hotspot.debugger.*;
-import sun.jvm.hotspot.gc_interface.*;
-import sun.jvm.hotspot.runtime.*;
-import sun.jvm.hotspot.types.*;
-
-public abstract class SharedHeap extends CollectedHeap {
-  private static VirtualConstructor ctor;
-
-  static {
-    VM.registerVMInitializedObserver(new Observer() {
-        public void update(Observable o, Object data) {
-          initialize(VM.getVM().getTypeDataBase());
-        }
-      });
-  }
-
-  private static synchronized void initialize(TypeDataBase db) {
-    Type type = db.lookupType("SharedHeap");
-    ctor = new VirtualConstructor(db);
-  }
-
-  public SharedHeap(Address addr) {
-    super(addr);
-  }
-
-  public CollectedHeapName kind() {
-    return CollectedHeapName.SHARED_HEAP;
-  }
-  }
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/Universe.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/Universe.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -112,11 +112,7 @@
     return "";
   }
   public CollectedHeap heap() {
-    try {
-      return (CollectedHeap) heapConstructor.instantiateWrapperFor(collectedHeapField.getValue());
-    } catch (WrongTypeException e) {
-      return new CollectedHeap(collectedHeapField.getValue());
-    }
+    return (CollectedHeap) heapConstructor.instantiateWrapperFor(collectedHeapField.getValue());
   }
 
   public static long getNarrowOopBase() {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/VirtualSpace.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+package sun.jvm.hotspot.memory;
+
+import java.util.*;
+import sun.jvm.hotspot.debugger.*;
+import sun.jvm.hotspot.runtime.*;
+import sun.jvm.hotspot.types.*;
+
+public class VirtualSpace extends VMObject {
+  private static AddressField lowField;
+  private static AddressField highField;
+  private static AddressField lowBoundaryField;
+  private static AddressField highBoundaryField;
+
+  static {
+    VM.registerVMInitializedObserver(new Observer() {
+        public void update(Observable o, Object data) {
+          initialize(VM.getVM().getTypeDataBase());
+        }
+      });
+  }
+
+  private static synchronized void initialize(TypeDataBase db) {
+    Type type = db.lookupType("VirtualSpace");
+
+    lowField          = type.getAddressField("_low");
+    highField         = type.getAddressField("_high");
+    lowBoundaryField  = type.getAddressField("_low_boundary");
+    highBoundaryField = type.getAddressField("_high_boundary");
+  }
+
+  public VirtualSpace(Address addr) {
+    super(addr);
+  }
+
+  public Address low()                          { return lowField.getValue(addr);          }
+  public Address high()                         { return highField.getValue(addr);         }
+  public Address lowBoundary()                  { return lowBoundaryField.getValue(addr);  }
+  public Address highBoundary()                 { return highBoundaryField.getValue(addr); }
+
+  /** Testers (all sizes are byte sizes) */
+  public long committedSize()                   { return high().minus(low());                                    }
+  public long reservedSize()                    { return highBoundary().minus(lowBoundary());                    }
+  public long uncommittedSize()                 { return reservedSize() - committedSize();                       }
+  public boolean contains(Address addr)         { return (low().lessThanOrEqual(addr) && addr.lessThan(high())); }
+}
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java	Wed Jul 05 20:32:21 2017 +0200
@@ -328,7 +328,7 @@
   }
 
   public Symbol getUnresolvedStringAt(int which) {
-    return getSymbolAt(which);
+    return getSlotAt(which).getSymbol();
   }
 
   // returns null, if not resolved.
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/opto/PhaseCFG.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/opto/PhaseCFG.java	Wed Jul 05 20:32:21 2017 +0200
@@ -42,10 +42,10 @@
 
   private static synchronized void initialize(TypeDataBase db) throws WrongTypeException {
     Type type      = db.lookupType("PhaseCFG");
-    numBlocksField = new CIntField(type.getCIntegerField("_num_blocks"), 0);
+    numBlocksField = new CIntField(type.getCIntegerField("_number_of_blocks"), 0);
     blocksField = type.getAddressField("_blocks");
     bbsField = type.getAddressField("_node_to_block_mapping");
-    brootField = type.getAddressField("_broot");
+    brootField = type.getAddressField("_root_block");
   }
 
   private static CIntField numBlocksField;
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Wed Jul 05 20:32:21 2017 +0200
@@ -259,8 +259,7 @@
      saProps = new Properties();
      URL url = null;
      try {
-       url = VM.class.getClassLoader().getResource("sa.properties");
-       saProps.load(new BufferedInputStream(url.openStream()));
+       saProps.load(VM.class.getResourceAsStream("/sa.properties"));
      } catch (Exception e) {
        System.err.println("Unable to load properties  " +
                                   (url == null ? "null" : url.toString()) +
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VirtualSpace.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-package sun.jvm.hotspot.runtime;
-
-import java.util.*;
-import sun.jvm.hotspot.debugger.*;
-import sun.jvm.hotspot.types.*;
-
-public class VirtualSpace extends VMObject {
-  private static AddressField lowField;
-  private static AddressField highField;
-  private static AddressField lowBoundaryField;
-  private static AddressField highBoundaryField;
-
-  static {
-    VM.registerVMInitializedObserver(new Observer() {
-        public void update(Observable o, Object data) {
-          initialize(VM.getVM().getTypeDataBase());
-        }
-      });
-  }
-
-  private static synchronized void initialize(TypeDataBase db) {
-    Type type = db.lookupType("VirtualSpace");
-
-    lowField          = type.getAddressField("_low");
-    highField         = type.getAddressField("_high");
-    lowBoundaryField  = type.getAddressField("_low_boundary");
-    highBoundaryField = type.getAddressField("_high_boundary");
-  }
-
-  public VirtualSpace(Address addr) {
-    super(addr);
-  }
-
-  public Address low()                          { return lowField.getValue(addr);          }
-  public Address high()                         { return highField.getValue(addr);         }
-  public Address lowBoundary()                  { return lowBoundaryField.getValue(addr);  }
-  public Address highBoundary()                 { return highBoundaryField.getValue(addr); }
-
-  /** Testers (all sizes are byte sizes) */
-  public long committedSize()                   { return high().minus(low());                                    }
-  public long reservedSize()                    { return highBoundary().minus(lowBoundary());                    }
-  public long uncommittedSize()                 { return reservedSize() - committedSize();                       }
-  public boolean contains(Address addr)         { return (low().lessThanOrEqual(addr) && addr.lessThan(high())); }
-}
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/x86/X86Frame.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/x86/X86Frame.java	Wed Jul 05 20:32:21 2017 +0200
@@ -314,26 +314,17 @@
   //------------------------------------------------------------------------------
   // frame::adjust_unextended_sp
   private void adjustUnextendedSP() {
-    // If we are returning to a compiled MethodHandle call site, the
-    // saved_fp will in fact be a saved value of the unextended SP.  The
-    // simplest way to tell whether we are returning to such a call site
-    // is as follows:
+    // On x86, sites calling method handle intrinsics and lambda forms are treated
+    // as any other call site. Therefore, no special action is needed when we are
+    // returning to any of these call sites.
 
     CodeBlob cb = cb();
     NMethod senderNm = (cb == null) ? null : cb.asNMethodOrNull();
     if (senderNm != null) {
-      // If the sender PC is a deoptimization point, get the original
-      // PC.  For MethodHandle call site the unextended_sp is stored in
-      // saved_fp.
-      if (senderNm.isDeoptMhEntry(getPC())) {
-        // DEBUG_ONLY(verifyDeoptMhOriginalPc(senderNm, getFP()));
-        raw_unextendedSP = getFP();
-      }
-      else if (senderNm.isDeoptEntry(getPC())) {
-        // DEBUG_ONLY(verifyDeoptOriginalPc(senderNm, raw_unextendedSp));
-      }
-      else if (senderNm.isMethodHandleReturn(getPC())) {
-        raw_unextendedSP = getFP();
+      // If the sender PC is a deoptimization point, get the original PC.
+      if (senderNm.isDeoptEntry(getPC()) ||
+          senderNm.isDeoptMhEntry(getPC())) {
+        // DEBUG_ONLY(verifyDeoptriginalPc(senderNm, raw_unextendedSp));
       }
     }
   }
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/HeapSummary.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/HeapSummary.java	Wed Jul 05 20:32:21 2017 +0200
@@ -81,53 +81,48 @@
       System.out.println();
       System.out.println("Heap Usage:");
 
-      if (heap instanceof SharedHeap) {
-         SharedHeap sharedHeap = (SharedHeap) heap;
-         if (sharedHeap instanceof GenCollectedHeap) {
-            GenCollectedHeap genHeap = (GenCollectedHeap) sharedHeap;
-            for (int n = 0; n < genHeap.nGens(); n++) {
-               Generation gen = genHeap.getGen(n);
-               if (gen instanceof sun.jvm.hotspot.memory.DefNewGeneration) {
-                  System.out.println("New Generation (Eden + 1 Survivor Space):");
-                  printGen(gen);
+      if (heap instanceof GenCollectedHeap) {
+         GenCollectedHeap genHeap = (GenCollectedHeap) heap;
+         for (int n = 0; n < genHeap.nGens(); n++) {
+            Generation gen = genHeap.getGen(n);
+            if (gen instanceof sun.jvm.hotspot.memory.DefNewGeneration) {
+               System.out.println("New Generation (Eden + 1 Survivor Space):");
+               printGen(gen);
 
-                  ContiguousSpace eden = ((DefNewGeneration)gen).eden();
-                  System.out.println("Eden Space:");
-                  printSpace(eden);
+               ContiguousSpace eden = ((DefNewGeneration)gen).eden();
+               System.out.println("Eden Space:");
+               printSpace(eden);
 
-                  ContiguousSpace from = ((DefNewGeneration)gen).from();
-                  System.out.println("From Space:");
-                  printSpace(from);
+               ContiguousSpace from = ((DefNewGeneration)gen).from();
+               System.out.println("From Space:");
+               printSpace(from);
 
-                  ContiguousSpace to = ((DefNewGeneration)gen).to();
-                  System.out.println("To Space:");
-                  printSpace(to);
-               } else {
-                  System.out.println(gen.name() + ":");
-                  printGen(gen);
-               }
+               ContiguousSpace to = ((DefNewGeneration)gen).to();
+               System.out.println("To Space:");
+               printSpace(to);
+            } else {
+               System.out.println(gen.name() + ":");
+               printGen(gen);
             }
-         } else if (sharedHeap instanceof G1CollectedHeap) {
-             G1CollectedHeap g1h = (G1CollectedHeap) sharedHeap;
-             G1MonitoringSupport g1mm = g1h.g1mm();
-             long edenRegionNum = g1mm.edenRegionNum();
-             long survivorRegionNum = g1mm.survivorRegionNum();
-             HeapRegionSetBase oldSet = g1h.oldSet();
-             HeapRegionSetBase humongousSet = g1h.humongousSet();
-             long oldRegionNum = oldSet.count().length()
-                          + humongousSet.count().capacity() / HeapRegion.grainBytes();
-             printG1Space("G1 Heap:", g1h.n_regions(),
-                          g1h.used(), g1h.capacity());
-             System.out.println("G1 Young Generation:");
-             printG1Space("Eden Space:", edenRegionNum,
-                          g1mm.edenUsed(), g1mm.edenCommitted());
-             printG1Space("Survivor Space:", survivorRegionNum,
-                          g1mm.survivorUsed(), g1mm.survivorCommitted());
-             printG1Space("G1 Old Generation:", oldRegionNum,
-                          g1mm.oldUsed(), g1mm.oldCommitted());
-         } else {
-             throw new RuntimeException("unknown SharedHeap type : " + heap.getClass());
          }
+      } else if (heap instanceof G1CollectedHeap) {
+          G1CollectedHeap g1h = (G1CollectedHeap) heap;
+          G1MonitoringSupport g1mm = g1h.g1mm();
+          long edenRegionNum = g1mm.edenRegionNum();
+          long survivorRegionNum = g1mm.survivorRegionNum();
+          HeapRegionSetBase oldSet = g1h.oldSet();
+          HeapRegionSetBase humongousSet = g1h.humongousSet();
+          long oldRegionNum = oldSet.count().length()
+                       + humongousSet.count().capacity() / HeapRegion.grainBytes();
+          printG1Space("G1 Heap:", g1h.n_regions(),
+                       g1h.used(), g1h.capacity());
+          System.out.println("G1 Young Generation:");
+          printG1Space("Eden Space:", edenRegionNum,
+                       g1mm.edenUsed(), g1mm.edenCommitted());
+          printG1Space("Survivor Space:", survivorRegionNum,
+                       g1mm.survivorUsed(), g1mm.survivorCommitted());
+          printG1Space("G1 Old Generation:", oldRegionNum,
+                       g1mm.oldUsed(), g1mm.oldCommitted());
       } else if (heap instanceof ParallelScavengeHeap) {
          ParallelScavengeHeap psh = (ParallelScavengeHeap) heap;
          PSYoungGen youngGen = psh.youngGen();
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/ui/action/HSDBActionManager.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/ui/action/HSDBActionManager.java	Wed Jul 05 20:32:21 2017 +0200
@@ -32,10 +32,12 @@
 public class HSDBActionManager extends ActionManager {
 
     public static ActionManager getInstance() {
-        if (manager == null) {
-            manager = new HSDBActionManager();
+        ActionManager m = ActionManager.getInstance();
+        if (m == null) {
+            m = new HSDBActionManager();
+            ActionManager.setInstance(m);
         }
-        return manager;
+        return m;
     }
 
     protected void addActions() {
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -799,6 +799,18 @@
         writeObjectID(klass.getJavaMirror());
 
         ClassData cd = (ClassData) classDataCache.get(klass);
+        if (cd == null) {
+            // The class is not present in the system dictionary, probably Lambda.
+            // Add it to cache here
+            if (klass instanceof InstanceKlass) {
+                InstanceKlass ik = (InstanceKlass) klass;
+                List fields = getInstanceFields(ik);
+                int instSize = getSizeForFields(fields);
+                cd = new ClassData(instSize, fields);
+                classDataCache.put(ik, cd);
+            }
+        }
+
         if (Assert.ASSERTS_ENABLED) {
             Assert.that(cd != null, "can not get class data for " + klass.getName().asString() + klass.getAddress());
         }
--- a/hotspot/make/Makefile	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/Makefile	Wed Jul 05 20:32:21 2017 +0200
@@ -98,7 +98,7 @@
 COMMON_VM_OPTIMIZED_TARGETS=optimized optimized1 docs export_optimized
 
 # JDK directory list
-JDK_DIRS=bin include jre lib demo
+JDK_DIRS=bin include lib demo
 
 all:           all_product all_fastdebug
 
@@ -373,33 +373,33 @@
 	$(install-file)
 $(EXPORT_LIB_DIR)/%.lib:			$(C2_BUILD_DIR)/%.lib
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.diz:			$(C2_BUILD_DIR)/%.diz
+$(EXPORT_BIN_DIR)/%.diz:			$(C2_BUILD_DIR)/%.diz
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.dll:			$(C2_BUILD_DIR)/%.dll
+$(EXPORT_BIN_DIR)/%.dll:			$(C2_BUILD_DIR)/%.dll
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.pdb:			$(C2_BUILD_DIR)/%.pdb
+$(EXPORT_BIN_DIR)/%.pdb:			$(C2_BUILD_DIR)/%.pdb
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.map:			$(C2_BUILD_DIR)/%.map
+$(EXPORT_BIN_DIR)/%.map:			$(C2_BUILD_DIR)/%.map
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX):       $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX):    $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: 	$(C2_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: 	$(C2_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_SERVER_DIR)/%.debuginfo:       	$(C2_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_SERVER_DIR)/64/%.debuginfo:    	$(C2_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: 		$(C2_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz: 		$(C2_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_SERVER_DIR)/64/%.diz:    		$(C2_BUILD_DIR)/%.diz
 	$(install-file)
 # MacOS X
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.dSYM: 		$(C2_BUILD_DIR)/%.dSYM
+$(EXPORT_LIB_ARCH_DIR)/%.dSYM: 		$(C2_BUILD_DIR)/%.dSYM
 	$(install-dir)
 $(EXPORT_SERVER_DIR)/%.dSYM:       		$(C2_BUILD_DIR)/%.dSYM
 	$(install-dir)
@@ -423,33 +423,33 @@
 	$(install-file)
 $(EXPORT_LIB_DIR)/%.lib:			$(C1_BUILD_DIR)/%.lib
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.diz:			$(C1_BUILD_DIR)/%.diz
+$(EXPORT_BIN_DIR)/%.diz:			$(C1_BUILD_DIR)/%.diz
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.dll:			$(C1_BUILD_DIR)/%.dll
+$(EXPORT_BIN_DIR)/%.dll:			$(C1_BUILD_DIR)/%.dll
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.pdb:			$(C1_BUILD_DIR)/%.pdb
+$(EXPORT_BIN_DIR)/%.pdb:			$(C1_BUILD_DIR)/%.pdb
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.map:			$(C1_BUILD_DIR)/%.map
+$(EXPORT_BIN_DIR)/%.map:			$(C1_BUILD_DIR)/%.map
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX):       $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX):    $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: 	$(C1_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: 	$(C1_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_CLIENT_DIR)/%.debuginfo:       	$(C1_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_CLIENT_DIR)/64/%.debuginfo:    	$(C1_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: 		$(C1_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz: 		$(C1_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_CLIENT_DIR)/64/%.diz:    		$(C1_BUILD_DIR)/%.diz
 	$(install-file)
 # MacOS X
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.dSYM: 		$(C1_BUILD_DIR)/%.dSYM
+$(EXPORT_LIB_ARCH_DIR)/%.dSYM: 		$(C1_BUILD_DIR)/%.dSYM
 	$(install-dir)
 $(EXPORT_CLIENT_DIR)/%.dSYM:       		$(C1_BUILD_DIR)/%.dSYM
 	$(install-dir)
@@ -473,28 +473,28 @@
 	$(install-file)
 $(EXPORT_LIB_DIR)/%.lib:			$(MINIMAL1_BUILD_DIR)/%.lib
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.diz:			$(MINIMAL1_BUILD_DIR)/%.diz
+$(EXPORT_BIN_DIR)/%.diz:			$(MINIMAL1_BUILD_DIR)/%.diz
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.dll:			$(MINIMAL1_BUILD_DIR)/%.dll
+$(EXPORT_BIN_DIR)/%.dll:			$(MINIMAL1_BUILD_DIR)/%.dll
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.pdb:			$(MINIMAL1_BUILD_DIR)/%.pdb
+$(EXPORT_BIN_DIR)/%.pdb:			$(MINIMAL1_BUILD_DIR)/%.pdb
 	$(install-file)
-$(EXPORT_JRE_BIN_DIR)/%.map:			$(MINIMAL1_BUILD_DIR)/%.map
+$(EXPORT_BIN_DIR)/%.map:			$(MINIMAL1_BUILD_DIR)/%.map
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX):	$(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX):	$(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_MINIMAL_DIR)/%.$(LIBRARY_SUFFIX):	$(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
 $(EXPORT_MINIMAL_DIR)/64/%.$(LIBRARY_SUFFIX):	$(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo:		$(MINIMAL1_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo:		$(MINIMAL1_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_MINIMAL_DIR)/%.debuginfo:		$(MINIMAL1_BUILD_DIR)/%.debuginfo
 	$(install-file)
 $(EXPORT_MINIMAL_DIR)/64/%.debuginfo:		$(MINIMAL1_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz:		$(MINIMAL1_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz:		$(MINIMAL1_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_MINIMAL_DIR)/64/%.diz:			$(MINIMAL1_BUILD_DIR)/%.diz
 	$(install-file)
@@ -509,11 +509,11 @@
 $(EXPORT_INCLUDE_DIR)/%:			$(ZERO_BUILD_DIR)/../generated/jvmtifiles/%
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo:		$(ZERO_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo:		$(ZERO_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz:		$(ZERO_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz:		$(ZERO_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX):       $(ZERO_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
@@ -522,7 +522,7 @@
 $(EXPORT_SERVER_DIR)/%.diz:			$(ZERO_BUILD_DIR)/%.diz
 	$(install-file)
 # MacOS X
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.dSYM: 		$(ZERO_BUILD_DIR)/%.dSYM
+$(EXPORT_LIB_ARCH_DIR)/%.dSYM: 		$(ZERO_BUILD_DIR)/%.dSYM
 	$(install-dir)
 $(EXPORT_SERVER_DIR)/%.dSYM:			$(ZERO_BUILD_DIR)/%.dSYM
 	$(install-dir)
@@ -536,11 +536,11 @@
 $(EXPORT_INCLUDE_DIR)/%:			$(CORE_BUILD_DIR)/../generated/jvmtifiles/%
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX):	$(CORE_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX):	$(CORE_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo:		$(CORE_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo:		$(CORE_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz:		$(CORE_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz:		$(CORE_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX):	$(CORE_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
@@ -558,11 +558,11 @@
 $(EXPORT_INCLUDE_DIR)/%:			$(SHARK_BUILD_DIR)/../generated/jvmtifiles/%
 	$(install-file)
 # Unix
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
+$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo):	$(SHARK_BUILD_DIR)/%.debuginfo
+$(EXPORT_LIB_ARCH_DIR)/%.debuginfo):	$(SHARK_BUILD_DIR)/%.debuginfo
 	$(install-file)
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz:		$(SHARK_BUILD_DIR)/%.diz
+$(EXPORT_LIB_ARCH_DIR)/%.diz:		$(SHARK_BUILD_DIR)/%.diz
 	$(install-file)
 $(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX):       $(SHARK_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
 	$(install-file)
@@ -571,7 +571,7 @@
 $(EXPORT_SERVER_DIR)/%.diz:			$(SHARK_BUILD_DIR)/%.diz
 	$(install-file)
 # MacOS X
-$(EXPORT_JRE_LIB_ARCH_DIR)/%.dSYM: 		$(SHARK_BUILD_DIR)/%.dSYM
+$(EXPORT_LIB_ARCH_DIR)/%.dSYM: 		$(SHARK_BUILD_DIR)/%.dSYM
 	$(install-dir)
 $(EXPORT_SERVER_DIR)/%.dSYM:			$(SHARK_BUILD_DIR)/%.dSYM
 	$(install-dir)
--- a/hotspot/make/aix/makefiles/adlc.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/adlc.make	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -140,13 +140,7 @@
 # Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
 ADLCFLAGS += -q -T
 
-# Normally, debugging is done directly on the ad_<arch>*.cpp files.
-# But -g will put #line directives in those files pointing back to <arch>.ad.
-# Some builds of gcc 3.2 have a bug that gets tickled by the extra #line directives
-# so skip it for 3.2 and ealier.
-ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
 ADLCFLAGS += -g
-endif
 
 ifdef LP64
 ADLCFLAGS += -D_LP64
--- a/hotspot/make/aix/makefiles/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -184,17 +184,17 @@
 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
 
 # client and server subdirectories have symbolic links to ../libjsig.so
-EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
+EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
 #ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 #  ifeq ($(ZIP_DEBUGINFO_FILES),1)
-#    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz
+#    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
 #  else
-#    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo
+#    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
 #  endif
 #endif
-EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal
+EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
+EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
 
 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true)
   EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
--- a/hotspot/make/aix/makefiles/mapfile-vers-debug	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/mapfile-vers-debug	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/aix/makefiles/mapfile-vers-product	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/mapfile-vers-product	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetInheritedAccessControlContext;
--- a/hotspot/make/aix/makefiles/ppc64.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/ppc64.make	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 #
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright 2012, 2013 SAP AG. All rights reserved.
+# Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright 2012, 2015 SAP AG. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -71,9 +71,6 @@
 OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
 OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
 
-# xlc 10.01 parameters for ipa compile.
-QIPA_COMPILE=$(if $(CXX_IS_V10),-qipa)
-
 # Xlc 10.1 parameters for aggressive optimization:
 # - qhot=level=1: Most aggressive loop optimizations.
 # - qignerrno: Assume errno is not modified by system calls.
@@ -88,7 +85,7 @@
 OPT_CFLAGS/synchronizer.o = $(OPT_CFLAGS) -qnoinline
 
 # Set all the xlC V10.1 options here.
-OPT_CFLAGS += $(QIPA_COMPILE) $(QV10_OPT) $(QV10_OPT_AGGRESSIVE)
+OPT_CFLAGS += $(QV10_OPT) $(QV10_OPT_AGGRESSIVE)
 
 export OBJECT_MODE=64
 
--- a/hotspot/make/aix/makefiles/vm.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/vm.make	Wed Jul 05 20:32:21 2017 +0200
@@ -122,7 +122,7 @@
 # By default, link the *.o into the library, not the executable.
 LINK_INTO$(LINK_INTO) = LIBJVM
 
-JDK_LIBDIR = $(JAVA_HOME)/jre/lib/$(LIBARCH)
+JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
 
 #----------------------------------------------------------------------
 # jvm_db & dtrace
--- a/hotspot/make/aix/makefiles/xlc.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/aix/makefiles/xlc.make	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP. All rights reserved.
+# Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2015 SAP. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -34,13 +34,17 @@
 
 AS  = $(CC) -c
 
-# get xlc version
-CXX_VERSION   := $(shell $(CXX) -qversion 2>&1 | sed -n 's/.*Version: \([0-9.]*\)/\1/p')
+# get xlc version which comes as VV.RR.MMMM.LLLL where 'VV' is the version,
+# 'RR' is the release, 'MMMM' is the modification and 'LLLL' is the level.
+# We only use 'VV.RR.LLLL' to avoid integer overflows in bash when comparing
+# the version numbers (some shells only support 32-bit integer compares!).
+CXX_VERSION := $(shell $(CXX) -qversion 2>&1 | \
+                   sed -n 's/.*Version: \([0-9]\{2\}\).\([0-9]\{2\}\).[0-9]\{4\}.\([0-9]\{4\}\)/\1\2\3/p')
 
 # xlc 08.00.0000.0023 and higher supports -qtune=balanced
-CXX_SUPPORTS_BALANCED_TUNING=$(shell if [ $(subst .,,$(CXX_VERSION)) -ge 080000000023 ] ; then echo "true" ; fi)
+CXX_SUPPORTS_BALANCED_TUNING := $(shell if [ $(CXX_VERSION) -ge 08000023 ] ; then echo "true" ; fi)
 # xlc 10.01 is used with aggressive optimizations to boost performance
-CXX_IS_V10=$(shell if [ $(subst .,,$(CXX_VERSION)) -ge 100100000000 ] ; then echo "true" ; fi)
+CXX_IS_V10 := $(shell if [ $(CXX_VERSION) -ge 10010000 ] ; then echo "true" ; fi)
 
 # check for precompiled headers support
 
--- a/hotspot/make/bsd/makefiles/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -265,23 +265,23 @@
 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
 
 # client and server subdirectories have symbolic links to ../libjsig.so
-EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
+EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
 
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-      EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz
+      EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
   else
     ifeq ($(OS_VENDOR), Darwin)
-        EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
+        EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
     else
-        EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo
+        EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
     endif
   endif
 endif
 
-EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal
+EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
+EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
 
 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
   EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
@@ -324,34 +324,34 @@
 
 # Serviceability Binaries
 # No SA Support for PPC, IA64, ARM or zero
-ADD_SA_BINARIES/x86   = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
+ADD_SA_BINARIES/x86   = $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
                         $(EXPORT_LIB_DIR)/sa-jdi.jar
 
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-      ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz
+      ADD_SA_BINARIES/x86 += $(EXPORT_LIB_ARCH_DIR)/libsaproc.diz
   else
     ifeq ($(OS_VENDOR), Darwin)
-        ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
+        ADD_SA_BINARIES/x86 += $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
     else
-        ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
+        ADD_SA_BINARIES/x86 += $(EXPORT_LIB_ARCH_DIR)/libsaproc.debuginfo
     endif
   endif
 endif
 
-ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
+ADD_SA_BINARIES/sparc = $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
                         $(EXPORT_LIB_DIR)/sa-jdi.jar
-ADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
+ADD_SA_BINARIES/universal = $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
                             $(EXPORT_LIB_DIR)/sa-jdi.jar
 
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-      ADD_SA_BINARIES/universal += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz
+      ADD_SA_BINARIES/universal += $(EXPORT_LIB_ARCH_DIR)/libsaproc.diz
   else
     ifeq ($(OS_VENDOR), Darwin)
-        ADD_SA_BINARIES/universal += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
+        ADD_SA_BINARIES/universal += $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
     else
-        ADD_SA_BINARIES/universal += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
+        ADD_SA_BINARIES/universal += $(EXPORT_LIB_ARCH_DIR)/libsaproc.debuginfo
     endif
   endif
 endif
@@ -388,25 +388,25 @@
     endif
 
     # Binaries to 'universalize' if built
-    UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
-    UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
-    UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
-    UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
+    UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
+    UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
+    UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
+    UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
 
     # Files to simply copy in place
-    UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt
-    UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt
+    UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/Xusage.txt
+    UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/Xusage.txt
     ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
       ifeq ($(ZIP_DEBUGINFO_FILES),1)
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.diz
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.diz
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.diz
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.diz
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/libjvm.diz
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/libjvm.diz
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libjsig.diz
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libsaproc.diz
       else
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX).dSYM
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX).dSYM
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
-          UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX).dSYM
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX).dSYM
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
+          UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM
       endif
     endif
 
--- a/hotspot/make/bsd/makefiles/gcc.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/gcc.make	Wed Jul 05 20:32:21 2017 +0200
@@ -313,22 +313,13 @@
 
 # Work around some compiler bugs.
 ifeq ($(USE_CLANG), true)
-  # Clang 4.2
-  ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 2), 1)
-    OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
-    OPT_CFLAGS/unsafe.o += -O1
-  # Clang 5.0
-  else ifeq ($(shell expr $(CC_VER_MAJOR) = 5 \& $(CC_VER_MINOR) = 0), 1)
+  # Clang <= 6.1
+  ifeq ($(shell expr \
+      $(CC_VER_MAJOR) \< 6 \| \
+      \( $(CC_VER_MAJOR) = 6 \& $(CC_VER_MINOR) \<= 1 \) \
+    ), 1)
     OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
     OPT_CFLAGS/unsafe.o += -O1
-  # Clang 5.1
-  else ifeq ($(shell expr $(CC_VER_MAJOR) = 5 \& $(CC_VER_MINOR) = 1), 1)
-    OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
-    OPT_CFLAGS/unsafe.o += -O1
-  # Clang 6.0 
-  else ifeq ($(shell expr $(CC_VER_MAJOR) = 6 \& $(CC_VER_MINOR) = 0), 1) 
-    OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT) 
-    OPT_CFLAGS/unsafe.o += -O1 
   else
     $(error "Update compiler workarounds for Clang $(CC_VER_MAJOR).$(CC_VER_MINOR)")
   endif
@@ -336,7 +327,7 @@
   # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
   ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
     OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
-  endif
+  endif 
 endif
 
 # Flags for generating make dependency flags.
--- a/hotspot/make/bsd/makefiles/mapfile-vers-darwin-debug	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/mapfile-vers-darwin-debug	Wed Jul 05 20:32:21 2017 +0200
@@ -105,6 +105,7 @@
                 _JVM_GetClassTypeAnnotations
                 _JVM_GetDeclaredClasses
                 _JVM_GetDeclaringClass
+                _JVM_GetSimpleBinaryName
                 _JVM_GetEnclosingMethodInfo
                 _JVM_GetFieldIxModifiers
                 _JVM_GetFieldTypeAnnotations
--- a/hotspot/make/bsd/makefiles/mapfile-vers-darwin-product	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/mapfile-vers-darwin-product	Wed Jul 05 20:32:21 2017 +0200
@@ -105,6 +105,7 @@
                 _JVM_GetClassTypeAnnotations
                 _JVM_GetDeclaredClasses
                 _JVM_GetDeclaringClass
+                _JVM_GetSimpleBinaryName
                 _JVM_GetEnclosingMethodInfo
                 _JVM_GetFieldIxModifiers
                 _JVM_GetFieldTypeAnnotations
--- a/hotspot/make/bsd/makefiles/mapfile-vers-debug	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/mapfile-vers-debug	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/bsd/makefiles/mapfile-vers-product	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/mapfile-vers-product	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/bsd/makefiles/universal.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/bsd/makefiles/universal.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -54,12 +54,12 @@
 
 # Consolidate architecture builds into a single Universal binary
 universalize: $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
-	$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
+	$(RM) -r $(EXPORT_PATH)/lib/{i386,amd64}
 
 
 # Package built libraries in a universal binary
 $(UNIVERSAL_LIPO_LIST):
-	BUILT_LIPO_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) 2>/dev/null`" || test $$? = "1"; \
+	BUILT_LIPO_FILES="`find $(EXPORT_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_LIB_DIR)/,,$@) 2>/dev/null`" || test $$? = "1"; \
 	if [ -n "$${BUILT_LIPO_FILES}" ]; then \
 	  $(MKDIR) -p $(shell dirname $@); \
 	  lipo -create -output $@ $${BUILT_LIPO_FILES}; \
@@ -70,7 +70,7 @@
 # - copies directories; including empty dirs
 # - copies files, symlinks, other non-directory files
 $(UNIVERSAL_COPY_LIST):
-	BUILT_COPY_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) -prune 2>/dev/null`" || test $$? = "1"; \
+	BUILT_COPY_FILES="`find $(EXPORT_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_LIB_DIR)/,,$@) -prune 2>/dev/null`" || test $$? = "1"; \
 	if [ -n "$${BUILT_COPY_FILES}" ]; then \
 	  for i in $${BUILT_COPY_FILES}; do \
 	    $(MKDIR) -p $(shell dirname $@); \
@@ -80,21 +80,21 @@
 
 
 # Replace arch specific binaries with universal binaries
-# Do not touch jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
+# Do not touch lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
 # That symbolic link belongs to the 'jdk' build.
 export_universal:
-	$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
-	$(RM) -r $(JDK_IMAGE_DIR)/jre/lib/{i386,amd64}
+	$(RM) -r $(EXPORT_PATH)/lib/{i386,amd64}
+	$(RM) -r $(JDK_IMAGE_DIR)/lib/{i386,amd64}
 	($(CD) $(EXPORT_PATH) && \
 	  $(TAR) -cf - *) | \
 	  ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xpf -)
 
 
 # Overlay universal binaries
-# Do not touch jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
+# Do not touch lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
 # That symbolic link belongs to the 'jdk' build.
 copy_universal:
-	$(RM) -r $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/jre/lib/{i386,amd64}
+	$(RM) -r $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/lib/{i386,amd64}
 	($(CD) $(EXPORT_PATH)$(COPY_SUBDIR) && \
 	  $(TAR) -cf - *) | \
 	  ($(CD) $(JDK_IMAGE_DIR)$(COPY_SUBDIR) && $(TAR) -xpf -)
--- a/hotspot/make/build.sh	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/build.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -40,7 +40,7 @@
     exit 1
 fi
 
-if [ "${JAVA_HOME-}" = ""  -o  ! -d "${JAVA_HOME-}" -o ! -d ${JAVA_HOME-}/jre/lib/ ]; then
+if [ "${JAVA_HOME-}" = ""  -o  ! -d "${JAVA_HOME-}" ]; then
     echo "JAVA_HOME needs to be set to a valid JDK path"
     echo "JAVA_HOME: ${JAVA_HOME-}"
     exit 1
--- a/hotspot/make/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -350,15 +350,13 @@
 EXPORT_INCLUDE_DIR = $(EXPORT_PATH)/include
 EXPORT_DOCS_DIR = $(EXPORT_PATH)/docs
 EXPORT_LIB_DIR = $(EXPORT_PATH)/lib
-EXPORT_JRE_DIR = $(EXPORT_PATH)/jre
-EXPORT_JRE_BIN_DIR = $(EXPORT_JRE_DIR)/bin
-EXPORT_JRE_LIB_DIR = $(EXPORT_JRE_DIR)/lib
-EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)/$(LIBARCH)
+EXPORT_BIN_DIR = $(EXPORT_PATH)/bin
+EXPORT_LIB_ARCH_DIR = $(EXPORT_LIB_DIR)/$(LIBARCH)
 
 # non-universal macosx builds need to appear universal
 ifeq ($(OS_VENDOR), Darwin)
   ifneq ($(MACOSX_UNIVERSAL), true)
-    EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)
+    EXPORT_LIB_ARCH_DIR = $(EXPORT_LIB_DIR)
   endif
 endif
 
@@ -370,4 +368,3 @@
 EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jmm.h
 
 .PHONY: $(HS_ALT_MAKE)/defs.make
-
--- a/hotspot/make/linux/makefiles/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/linux/makefiles/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -244,17 +244,17 @@
 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
 
 # client and server subdirectories have symbolic links to ../libjsig.so
-EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
+EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
   else
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
   endif
 endif
-EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal
+EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
+EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
 
 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true)
   EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
@@ -295,14 +295,14 @@
 
 # Serviceability Binaries
 
-ADD_SA_BINARIES/DEFAULT = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
+ADD_SA_BINARIES/DEFAULT = $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
                           $(EXPORT_LIB_DIR)/sa-jdi.jar
 
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-    ADD_SA_BINARIES/DEFAULT += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz
+    ADD_SA_BINARIES/DEFAULT += $(EXPORT_LIB_ARCH_DIR)/libsaproc.diz
   else
-    ADD_SA_BINARIES/DEFAULT += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
+    ADD_SA_BINARIES/DEFAULT += $(EXPORT_LIB_ARCH_DIR)/libsaproc.debuginfo
   endif
 endif
 
--- a/hotspot/make/linux/makefiles/mapfile-vers-debug	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/linux/makefiles/mapfile-vers-debug	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/linux/makefiles/mapfile-vers-product	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/linux/makefiles/mapfile-vers-product	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/linux/makefiles/vm.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/linux/makefiles/vm.make	Wed Jul 05 20:32:21 2017 +0200
@@ -127,7 +127,7 @@
 # By default, link the *.o into the library, not the executable.
 LINK_INTO$(LINK_INTO) = LIBJVM
 
-JDK_LIBDIR = $(JAVA_HOME)/jre/lib/$(LIBARCH)
+JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
 
 #----------------------------------------------------------------------
 # jvm_db & dtrace
--- a/hotspot/make/solaris/makefiles/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -224,17 +224,17 @@
 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
 
 # client and server subdirectories have symbolic links to ../libjsig.$(LIBRARY_SUFFIX)
-EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
+EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
   else
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
   endif
 endif
 
-EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
+EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
 
 ifeq ($(JVM_VARIANT_SERVER),true)
   EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
@@ -295,12 +295,12 @@
   endif
 endif
 
-EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX)
+EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX)
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
   ifeq ($(ZIP_DEBUGINFO_FILES),1)
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libsaproc.diz
   else
-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo
+    EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libsaproc.debuginfo
   endif
 endif
 EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
--- a/hotspot/make/solaris/makefiles/dtrace.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/dtrace.make	Wed Jul 05 20:32:21 2017 +0200
@@ -130,8 +130,9 @@
 $(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
 	@echo $(LOG_INFO) Making $@
 	$(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \
-	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \
-		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
+	$(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. $(EXTRA_CFLAGS) \
+	    $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c \
+	    $(EXTRA_LDFLAGS) -lc -lthread -ldoor
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO)
 # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not
@@ -216,8 +217,9 @@
 
 $(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
 	@echo $(LOG_INFO) Making $@
-	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I.  \
-		$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
+	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. $(EXTRA_CFLAGS) \
+	    $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c \
+	    $(EXTRA_LDFLAGS) -lc -lthread -ldoor
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO)
 	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@
--- a/hotspot/make/solaris/makefiles/jsig.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/jsig.make	Wed Jul 05 20:32:21 2017 +0200
@@ -50,7 +50,9 @@
 $(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
 	@echo $(LOG_INFO) Making signal interposition lib...
 	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
-                         $(LFLAGS_JSIG) -o $@ $(JSIGSRCDIR)/jsig.c -ldl
+	                 $(EXTRA_CFLAGS) \
+                         $(LFLAGS_JSIG) $(EXTRA_LDFLAGS) \
+	                 -o $@ $(JSIGSRCDIR)/jsig.c -ldl
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
 	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
--- a/hotspot/make/solaris/makefiles/mapfile-vers	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/mapfile-vers	Wed Jul 05 20:32:21 2017 +0200
@@ -19,7 +19,7 @@
 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 # or visit www.oracle.com if you need additional information or have any
 # questions.
-#  
+#
 #
 
 # Define public interface.
@@ -30,7 +30,7 @@
                 JNI_CreateJavaVM;
                 JNI_GetCreatedJavaVMs;
                 JNI_GetDefaultJavaVMInitArgs;
-        
+
                 # JVM
                 JVM_ActiveProcessorCount;
                 JVM_ArrayCopy;
@@ -107,6 +107,7 @@
                 JVM_GetClassTypeAnnotations;
                 JVM_GetDeclaredClasses;
                 JVM_GetDeclaringClass;
+                JVM_GetSimpleBinaryName;
                 JVM_GetEnclosingMethodInfo;
                 JVM_GetFieldIxModifiers;
                 JVM_GetFieldTypeAnnotations;
--- a/hotspot/make/solaris/makefiles/product.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/product.make	Wed Jul 05 20:32:21 2017 +0200
@@ -37,6 +37,11 @@
 OPT_CFLAGS/ciEnv.o = $(OPT_CFLAGS) -xinline=no%__1cFciEnvbFpost_compiled_method_load_event6MpnHnmethod__v_
 endif
 
+# Need extra inlining to get oop_ps_push_contents functions to perform well enough.
+ifndef USE_GCC
+OPT_CFLAGS/psPromotionManager.o = $(OPT_CFLAGS) -W2,-Ainline:inc=1000
+endif
+
 # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
 ifeq ("${Platform_compiler}", "sparcWorks")
 
--- a/hotspot/make/solaris/makefiles/saproc.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/saproc.make	Wed Jul 05 20:32:21 2017 +0200
@@ -89,6 +89,17 @@
 # when actually building on Nevada-B158 or earlier:
 #SOLARIS_11_B159_OR_LATER=-DSOLARIS_11_B159_OR_LATER
 
+$(SADISOBJ): $(SADISSRCFILES)
+	           $(QUIETLY) $(CC)                                     \
+	           $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG)     \
+	           -I$(SASRCDIR)                                        \
+	           -I$(GENERATED)                                       \
+	           -I$(BOOT_JAVA_HOME)/include                          \
+	           -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family)    \
+	           $(SOLARIS_11_B159_OR_LATER)                          \
+	           $(EXTRA_CFLAGS)					\
+	           $(SADISSRCFILES)                                     \
+	           -c -o $(SADISOBJ)
 
 $(LIBSAPROC): $(SASRCFILES) $(SADISOBJ) $(SAMAPFILE)
 	$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
@@ -103,23 +114,13 @@
 	           -I$(BOOT_JAVA_HOME)/include                          \
 	           -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family)    \
 	           $(SOLARIS_11_B159_OR_LATER)                          \
+	           $(EXTRA_CXXFLAGS) $(EXTRA_LDFLAGS)			\
+	           $(SADISOBJ)                                          \
 	           $(SASRCFILES)                                        \
-	           $(SADISOBJ)                                          \
 	           $(SA_LFLAGS)                                         \
 	           -o $@                                                \
 	           -ldl -ldemangle -lthread -lc
 
-$(SADISOBJ): $(SADISSRCFILES)
-	           $(QUIETLY) $(CC)                                     \
-	           $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG)     \
-	           -I$(SASRCDIR)                                        \
-	           -I$(GENERATED)                                       \
-	           -I$(BOOT_JAVA_HOME)/include                          \
-	           -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family)    \
-	           $(SOLARIS_11_B159_OR_LATER)                          \
-	           $(SADISSRCFILES)                                     \
-	           -c -o $(SADISOBJ)
-
 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
 	$(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO)
 	$(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@
--- a/hotspot/make/solaris/makefiles/vm.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/solaris/makefiles/vm.make	Wed Jul 05 20:32:21 2017 +0200
@@ -148,7 +148,7 @@
 # By default, link the *.o into the library, not the executable.
 LINK_INTO$(LINK_INTO) = LIBJVM
 
-JDK_LIBDIR = $(JAVA_HOME)/jre/lib/$(LIBARCH)
+JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
 
 #----------------------------------------------------------------------
 # jvm_db & dtrace
@@ -288,6 +288,8 @@
 endif
 endif
 
+LFLAGS_VM += $(EXTRA_LDFLAGS)
+
 ifdef USE_GCC
 LINK_VM = $(LINK_LIB.CC)
 else
--- a/hotspot/make/windows/makefiles/defs.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/windows/makefiles/defs.make	Wed Jul 05 20:32:21 2017 +0200
@@ -249,8 +249,8 @@
   endif
 endif
 
-EXPORT_SERVER_DIR = $(EXPORT_JRE_BIN_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_JRE_BIN_DIR)/client
+EXPORT_SERVER_DIR = $(EXPORT_BIN_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_BIN_DIR)/client
 
 ifeq ($(JVM_VARIANT_SERVER),true)
   EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
@@ -280,13 +280,13 @@
 EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib
 
 ifeq ($(BUILD_WIN_SA), 1)
-  EXPORT_LIST += $(EXPORT_JRE_BIN_DIR)/sawindbg.$(LIBRARY_SUFFIX)
+  EXPORT_LIST += $(EXPORT_BIN_DIR)/sawindbg.$(LIBRARY_SUFFIX)
   ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
     ifeq ($(ZIP_DEBUGINFO_FILES),1)
-      EXPORT_LIST += $(EXPORT_JRE_BIN_DIR)/sawindbg.diz
+      EXPORT_LIST += $(EXPORT_BIN_DIR)/sawindbg.diz
     else
-      EXPORT_LIST += $(EXPORT_JRE_BIN_DIR)/sawindbg.pdb
-      EXPORT_LIST += $(EXPORT_JRE_BIN_DIR)/sawindbg.map
+      EXPORT_LIST += $(EXPORT_BIN_DIR)/sawindbg.pdb
+      EXPORT_LIST += $(EXPORT_BIN_DIR)/sawindbg.map
     endif
   endif
   EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
--- a/hotspot/make/windows/makefiles/sa.make	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/make/windows/makefiles/sa.make	Wed Jul 05 20:32:21 2017 +0200
@@ -91,6 +91,9 @@
 
 SAWINDBG=sawindbg.dll
 
+# Resource file containing VERSIONINFO
+SA_Res_Files=.\version.sares
+
 checkAndBuildSA:: $(SAWINDBG)
 
 # These do not need to be optimized (don't run a lot of code) and it
@@ -126,10 +129,13 @@
 # Note that we do not keep sawindbj.obj around as it would then
 # get included in the dumpbin command in build_vm_def.sh
 
+# Force resources to be rebuilt every time
+$(SA_Res_Files): FORCE
+
 # In VS2005 or VS2008 the link command creates a .manifest file that we want
 # to insert into the linked artifact so we do not need to track it separately.
 # Use ";#2" for .dll and ";#1" for .exe in the MT command below:
-$(SAWINDBG): $(SASRCFILES)
+$(SAWINDBG): $(SASRCFILES) $(SA_Res_Files)
 	set INCLUDE=$(SA_INCLUDE)$(INCLUDE)
 	$(CXX) @<<
 	  -I"$(BootStrapDir)/include" -I"$(BootStrapDir)/include/win32"
@@ -138,7 +144,7 @@
 	  -out:$*.obj
 <<
 	set LIB=$(SA_LIB)$(LIB)
-	$(LD) -out:$@ -DLL sawindbg.obj sadis.obj dbgeng.lib $(SA_LFLAGS)
+	$(LD) -out:$@ -DLL sawindbg.obj sadis.obj dbgeng.lib $(SA_LFLAGS) $(SA_Res_Files)
 !if "$(MT)" != ""
 	$(MT) -manifest $(@F).manifest -outputresource:$(@F);#2
 !endif
@@ -150,6 +156,9 @@
 !endif
 	-@rm -f $*.obj
 
+{$(COMMONSRC)\os\windows\vm}.rc.sares:
+        @$(RC) $(RC_FLAGS) /D "HS_FNAME=$(SAWINDBG)" /fo"$@" $<
+
 cleanall :
 	rm -rf $(GENERATED)/saclasses
 	rm -rf $(GENERATED)/sa-jdi.jar
--- a/hotspot/src/cpu/aarch64/vm/aarch64.ad	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/aarch64.ad	Wed Jul 05 20:32:21 2017 +0200
@@ -2614,6 +2614,8 @@
     case INDINDEXSCALEDI2L:
     case INDINDEXSCALEDOFFSETI2LN:
     case INDINDEXSCALEDI2LN:
+    case INDINDEXOFFSETI2L:
+    case INDINDEXOFFSETI2LN:
       scale = Address::sxtw(size);
       break;
     default:
@@ -5060,6 +5062,20 @@
   %}
 %}
 
+operand indIndexOffsetI2L(iRegP reg, iRegI ireg, immLU12 off)
+%{
+  constraint(ALLOC_IN_RC(ptr_reg));
+  match(AddP (AddP reg (ConvI2L ireg)) off);
+  op_cost(INSN_COST);
+  format %{ "$reg, $ireg, $off I2L" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index($ireg);
+    scale(0x0);
+    disp($off);
+  %}
+%}
+
 operand indIndexScaledOffsetI2L(iRegP reg, iRegI ireg, immIScale scale, immLU12 off)
 %{
   constraint(ALLOC_IN_RC(ptr_reg));
@@ -5120,7 +5136,7 @@
 %{
   constraint(ALLOC_IN_RC(ptr_reg));
   match(AddP reg off);
-  op_cost(INSN_COST);
+  op_cost(0);
   format %{ "[$reg, $off]" %}
   interface(MEMORY_INTER) %{
     base($reg);
@@ -5190,6 +5206,21 @@
   %}
 %}
 
+operand indIndexOffsetI2LN(iRegN reg, iRegI ireg, immLU12 off)
+%{
+  predicate(Universe::narrow_oop_shift() == 0);
+  constraint(ALLOC_IN_RC(ptr_reg));
+  match(AddP (AddP (DecodeN reg) (ConvI2L ireg)) off);
+  op_cost(INSN_COST);
+  format %{ "$reg, $ireg, $off I2L\t# narrow" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index($ireg);
+    scale(0x0);
+    disp($off);
+  %}
+%}
+
 operand indIndexScaledOffsetI2LN(iRegN reg, iRegI ireg, immIScale scale, immLU12 off)
 %{
   predicate(Universe::narrow_oop_shift() == 0);
@@ -5452,8 +5483,8 @@
 // memory is used to define read/write location for load/store
 // instruction defs. we can turn a memory op into an Address
 
-opclass memory(indirect, indIndexScaledOffsetI,  indIndexScaledOffsetL, indIndexScaledOffsetI2L, indIndexScaled, indIndexScaledI2L, indIndex, indOffI, indOffL,
-               indirectN, indIndexScaledOffsetIN,  indIndexScaledOffsetLN, indIndexScaledOffsetI2LN, indIndexScaledN, indIndexScaledI2LN, indIndexN, indOffIN, indOffLN);
+opclass memory(indirect, indIndexScaledOffsetI, indIndexScaledOffsetL, indIndexOffsetI2L, indIndexScaledOffsetI2L, indIndexScaled, indIndexScaledI2L, indIndex, indOffI, indOffL,
+               indirectN, indIndexScaledOffsetIN, indIndexScaledOffsetLN, indIndexOffsetI2LN, indIndexScaledOffsetI2LN, indIndexScaledN, indIndexScaledI2LN, indIndexN, indOffIN, indOffLN);
 
 
 // iRegIorL2I is used for src inputs in rules for 32 bit int (I)
@@ -8346,7 +8377,7 @@
 instruct addP_reg_reg_ext(iRegPNoSp dst, iRegP src1, iRegIorL2I src2) %{
   match(Set dst (AddP src1 (ConvI2L src2)));
 
-  ins_cost(INSN_COST);
+  ins_cost(1.9 * INSN_COST);
   format %{ "add $dst, $src1, $src2, sxtw\t# ptr" %}
 
   ins_encode %{
--- a/hotspot/src/cpu/aarch64/vm/assembler_aarch64.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/assembler_aarch64.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1469,7 +1469,7 @@
     f(op, 31, 29);
     f(0b11010000, 28, 21);
     f(0b000000, 15, 10);
-    rf(Rm, 16), rf(Rn, 5), rf(Rd, 0);
+    zrf(Rm, 16), zrf(Rn, 5), zrf(Rd, 0);
   }
 
   #define INSN(NAME, op)                                \
--- a/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -68,6 +68,8 @@
 
 define_pd_global(bool, UseMembar,            true);
 
+define_pd_global(bool, PreserveFramePointer, false);
+
 // GC Ergo Flags
 define_pd_global(uintx, CMSYoungGenPerWorker, 64*M);  // default max size of CMS young gen, per GC worker thread
 
--- a/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,8 @@
   using MacroAssembler::call_VM_leaf_base;
 
   // Interpreter specific version of call_VM_base
+  using MacroAssembler::call_VM_leaf_base;
+
   virtual void call_VM_leaf_base(address entry_point,
                                  int number_of_arguments);
 
--- a/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2238,6 +2238,341 @@
 }
 
 /**
+ * Helpers for multiply_to_len().
+ */
+void MacroAssembler::add2_with_carry(Register final_dest_hi, Register dest_hi, Register dest_lo,
+                                     Register src1, Register src2) {
+  adds(dest_lo, dest_lo, src1);
+  adc(dest_hi, dest_hi, zr);
+  adds(dest_lo, dest_lo, src2);
+  adc(final_dest_hi, dest_hi, zr);
+}
+
+// Generate an address from (r + r1 extend offset).  "size" is the
+// size of the operand.  The result may be in rscratch2.
+Address MacroAssembler::offsetted_address(Register r, Register r1,
+                                          Address::extend ext, int offset, int size) {
+  if (offset || (ext.shift() % size != 0)) {
+    lea(rscratch2, Address(r, r1, ext));
+    return Address(rscratch2, offset);
+  } else {
+    return Address(r, r1, ext);
+  }
+}
+
+/**
+ * Multiply 64 bit by 64 bit first loop.
+ */
+void MacroAssembler::multiply_64_x_64_loop(Register x, Register xstart, Register x_xstart,
+                                           Register y, Register y_idx, Register z,
+                                           Register carry, Register product,
+                                           Register idx, Register kdx) {
+  //
+  //  jlong carry, x[], y[], z[];
+  //  for (int idx=ystart, kdx=ystart+1+xstart; idx >= 0; idx-, kdx--) {
+  //    huge_128 product = y[idx] * x[xstart] + carry;
+  //    z[kdx] = (jlong)product;
+  //    carry  = (jlong)(product >>> 64);
+  //  }
+  //  z[xstart] = carry;
+  //
+
+  Label L_first_loop, L_first_loop_exit;
+  Label L_one_x, L_one_y, L_multiply;
+
+  subsw(xstart, xstart, 1);
+  br(Assembler::MI, L_one_x);
+
+  lea(rscratch1, Address(x, xstart, Address::lsl(LogBytesPerInt)));
+  ldr(x_xstart, Address(rscratch1));
+  ror(x_xstart, x_xstart, 32); // convert big-endian to little-endian
+
+  bind(L_first_loop);
+  subsw(idx, idx, 1);
+  br(Assembler::MI, L_first_loop_exit);
+  subsw(idx, idx, 1);
+  br(Assembler::MI, L_one_y);
+  lea(rscratch1, Address(y, idx, Address::uxtw(LogBytesPerInt)));
+  ldr(y_idx, Address(rscratch1));
+  ror(y_idx, y_idx, 32); // convert big-endian to little-endian
+  bind(L_multiply);
+
+  // AArch64 has a multiply-accumulate instruction that we can't use
+  // here because it has no way to process carries, so we have to use
+  // separate add and adc instructions.  Bah.
+  umulh(rscratch1, x_xstart, y_idx); // x_xstart * y_idx -> rscratch1:product
+  mul(product, x_xstart, y_idx);
+  adds(product, product, carry);
+  adc(carry, rscratch1, zr);   // x_xstart * y_idx + carry -> carry:product
+
+  subw(kdx, kdx, 2);
+  ror(product, product, 32); // back to big-endian
+  str(product, offsetted_address(z, kdx, Address::uxtw(LogBytesPerInt), 0, BytesPerLong));
+
+  b(L_first_loop);
+
+  bind(L_one_y);
+  ldrw(y_idx, Address(y,  0));
+  b(L_multiply);
+
+  bind(L_one_x);
+  ldrw(x_xstart, Address(x,  0));
+  b(L_first_loop);
+
+  bind(L_first_loop_exit);
+}
+
+/**
+ * Multiply 128 bit by 128. Unrolled inner loop.
+ *
+ */
+void MacroAssembler::multiply_128_x_128_loop(Register y, Register z,
+                                             Register carry, Register carry2,
+                                             Register idx, Register jdx,
+                                             Register yz_idx1, Register yz_idx2,
+                                             Register tmp, Register tmp3, Register tmp4,
+                                             Register tmp6, Register product_hi) {
+
+  //   jlong carry, x[], y[], z[];
+  //   int kdx = ystart+1;
+  //   for (int idx=ystart-2; idx >= 0; idx -= 2) { // Third loop
+  //     huge_128 tmp3 = (y[idx+1] * product_hi) + z[kdx+idx+1] + carry;
+  //     jlong carry2  = (jlong)(tmp3 >>> 64);
+  //     huge_128 tmp4 = (y[idx]   * product_hi) + z[kdx+idx] + carry2;
+  //     carry  = (jlong)(tmp4 >>> 64);
+  //     z[kdx+idx+1] = (jlong)tmp3;
+  //     z[kdx+idx] = (jlong)tmp4;
+  //   }
+  //   idx += 2;
+  //   if (idx > 0) {
+  //     yz_idx1 = (y[idx] * product_hi) + z[kdx+idx] + carry;
+  //     z[kdx+idx] = (jlong)yz_idx1;
+  //     carry  = (jlong)(yz_idx1 >>> 64);
+  //   }
+  //
+
+  Label L_third_loop, L_third_loop_exit, L_post_third_loop_done;
+
+  lsrw(jdx, idx, 2);
+
+  bind(L_third_loop);
+
+  subsw(jdx, jdx, 1);
+  br(Assembler::MI, L_third_loop_exit);
+  subw(idx, idx, 4);
+
+  lea(rscratch1, Address(y, idx, Address::uxtw(LogBytesPerInt)));
+
+  ldp(yz_idx2, yz_idx1, Address(rscratch1, 0));
+
+  lea(tmp6, Address(z, idx, Address::uxtw(LogBytesPerInt)));
+
+  ror(yz_idx1, yz_idx1, 32); // convert big-endian to little-endian
+  ror(yz_idx2, yz_idx2, 32);
+
+  ldp(rscratch2, rscratch1, Address(tmp6, 0));
+
+  mul(tmp3, product_hi, yz_idx1);  //  yz_idx1 * product_hi -> tmp4:tmp3
+  umulh(tmp4, product_hi, yz_idx1);
+
+  ror(rscratch1, rscratch1, 32); // convert big-endian to little-endian
+  ror(rscratch2, rscratch2, 32);
+
+  mul(tmp, product_hi, yz_idx2);   //  yz_idx2 * product_hi -> carry2:tmp
+  umulh(carry2, product_hi, yz_idx2);
+
+  // propagate sum of both multiplications into carry:tmp4:tmp3
+  adds(tmp3, tmp3, carry);
+  adc(tmp4, tmp4, zr);
+  adds(tmp3, tmp3, rscratch1);
+  adcs(tmp4, tmp4, tmp);
+  adc(carry, carry2, zr);
+  adds(tmp4, tmp4, rscratch2);
+  adc(carry, carry, zr);
+
+  ror(tmp3, tmp3, 32); // convert little-endian to big-endian
+  ror(tmp4, tmp4, 32);
+  stp(tmp4, tmp3, Address(tmp6, 0));
+
+  b(L_third_loop);
+  bind (L_third_loop_exit);
+
+  andw (idx, idx, 0x3);
+  cbz(idx, L_post_third_loop_done);
+
+  Label L_check_1;
+  subsw(idx, idx, 2);
+  br(Assembler::MI, L_check_1);
+
+  lea(rscratch1, Address(y, idx, Address::uxtw(LogBytesPerInt)));
+  ldr(yz_idx1, Address(rscratch1, 0));
+  ror(yz_idx1, yz_idx1, 32);
+  mul(tmp3, product_hi, yz_idx1);  //  yz_idx1 * product_hi -> tmp4:tmp3
+  umulh(tmp4, product_hi, yz_idx1);
+  lea(rscratch1, Address(z, idx, Address::uxtw(LogBytesPerInt)));
+  ldr(yz_idx2, Address(rscratch1, 0));
+  ror(yz_idx2, yz_idx2, 32);
+
+  add2_with_carry(carry, tmp4, tmp3, carry, yz_idx2);
+
+  ror(tmp3, tmp3, 32);
+  str(tmp3, Address(rscratch1, 0));
+
+  bind (L_check_1);
+
+  andw (idx, idx, 0x1);
+  subsw(idx, idx, 1);
+  br(Assembler::MI, L_post_third_loop_done);
+  ldrw(tmp4, Address(y, idx, Address::uxtw(LogBytesPerInt)));
+  mul(tmp3, tmp4, product_hi);  //  tmp4 * product_hi -> carry2:tmp3
+  umulh(carry2, tmp4, product_hi);
+  ldrw(tmp4, Address(z, idx, Address::uxtw(LogBytesPerInt)));
+
+  add2_with_carry(carry2, tmp3, tmp4, carry);
+
+  strw(tmp3, Address(z, idx, Address::uxtw(LogBytesPerInt)));
+  extr(carry, carry2, tmp3, 32);
+
+  bind(L_post_third_loop_done);
+}
+
+/**
+ * Code for BigInteger::multiplyToLen() instrinsic.
+ *
+ * r0: x
+ * r1: xlen
+ * r2: y
+ * r3: ylen
+ * r4:  z
+ * r5: zlen
+ * r10: tmp1
+ * r11: tmp2
+ * r12: tmp3
+ * r13: tmp4
+ * r14: tmp5
+ * r15: tmp6
+ * r16: tmp7
+ *
+ */
+void MacroAssembler::multiply_to_len(Register x, Register xlen, Register y, Register ylen,
+                                     Register z, Register zlen,
+                                     Register tmp1, Register tmp2, Register tmp3, Register tmp4,
+                                     Register tmp5, Register tmp6, Register product_hi) {
+
+  assert_different_registers(x, xlen, y, ylen, z, zlen, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6);
+
+  const Register idx = tmp1;
+  const Register kdx = tmp2;
+  const Register xstart = tmp3;
+
+  const Register y_idx = tmp4;
+  const Register carry = tmp5;
+  const Register product  = xlen;
+  const Register x_xstart = zlen;  // reuse register
+
+  // First Loop.
+  //
+  //  final static long LONG_MASK = 0xffffffffL;
+  //  int xstart = xlen - 1;
+  //  int ystart = ylen - 1;
+  //  long carry = 0;
+  //  for (int idx=ystart, kdx=ystart+1+xstart; idx >= 0; idx-, kdx--) {
+  //    long product = (y[idx] & LONG_MASK) * (x[xstart] & LONG_MASK) + carry;
+  //    z[kdx] = (int)product;
+  //    carry = product >>> 32;
+  //  }
+  //  z[xstart] = (int)carry;
+  //
+
+  movw(idx, ylen);      // idx = ylen;
+  movw(kdx, zlen);      // kdx = xlen+ylen;
+  mov(carry, zr);       // carry = 0;
+
+  Label L_done;
+
+  movw(xstart, xlen);
+  subsw(xstart, xstart, 1);
+  br(Assembler::MI, L_done);
+
+  multiply_64_x_64_loop(x, xstart, x_xstart, y, y_idx, z, carry, product, idx, kdx);
+
+  Label L_second_loop;
+  cbzw(kdx, L_second_loop);
+
+  Label L_carry;
+  subw(kdx, kdx, 1);
+  cbzw(kdx, L_carry);
+
+  strw(carry, Address(z, kdx, Address::uxtw(LogBytesPerInt)));
+  lsr(carry, carry, 32);
+  subw(kdx, kdx, 1);
+
+  bind(L_carry);
+  strw(carry, Address(z, kdx, Address::uxtw(LogBytesPerInt)));
+
+  // Second and third (nested) loops.
+  //
+  // for (int i = xstart-1; i >= 0; i--) { // Second loop
+  //   carry = 0;
+  //   for (int jdx=ystart, k=ystart+1+i; jdx >= 0; jdx--, k--) { // Third loop
+  //     long product = (y[jdx] & LONG_MASK) * (x[i] & LONG_MASK) +
+  //                    (z[k] & LONG_MASK) + carry;
+  //     z[k] = (int)product;
+  //     carry = product >>> 32;
+  //   }
+  //   z[i] = (int)carry;
+  // }
+  //
+  // i = xlen, j = tmp1, k = tmp2, carry = tmp5, x[i] = product_hi
+
+  const Register jdx = tmp1;
+
+  bind(L_second_loop);
+  mov(carry, zr);                // carry = 0;
+  movw(jdx, ylen);               // j = ystart+1
+
+  subsw(xstart, xstart, 1);      // i = xstart-1;
+  br(Assembler::MI, L_done);
+
+  str(z, Address(pre(sp, -4 * wordSize)));
+
+  Label L_last_x;
+  lea(z, offsetted_address(z, xstart, Address::uxtw(LogBytesPerInt), 4, BytesPerInt)); // z = z + k - j
+  subsw(xstart, xstart, 1);       // i = xstart-1;
+  br(Assembler::MI, L_last_x);
+
+  lea(rscratch1, Address(x, xstart, Address::uxtw(LogBytesPerInt)));
+  ldr(product_hi, Address(rscratch1));
+  ror(product_hi, product_hi, 32);  // convert big-endian to little-endian
+
+  Label L_third_loop_prologue;
+  bind(L_third_loop_prologue);
+
+  str(ylen, Address(sp, wordSize));
+  stp(x, xstart, Address(sp, 2 * wordSize));
+  multiply_128_x_128_loop(y, z, carry, x, jdx, ylen, product,
+                          tmp2, x_xstart, tmp3, tmp4, tmp6, product_hi);
+  ldp(z, ylen, Address(post(sp, 2 * wordSize)));
+  ldp(x, xlen, Address(post(sp, 2 * wordSize)));   // copy old xstart -> xlen
+
+  addw(tmp3, xlen, 1);
+  strw(carry, Address(z, tmp3, Address::uxtw(LogBytesPerInt)));
+  subsw(tmp3, tmp3, 1);
+  br(Assembler::MI, L_done);
+
+  lsr(carry, carry, 32);
+  strw(carry, Address(z, tmp3, Address::uxtw(LogBytesPerInt)));
+  b(L_second_loop);
+
+  // Next infrequent code is moved outside loops.
+  bind(L_last_x);
+  ldrw(product_hi, Address(x,  0));
+  b(L_third_loop_prologue);
+
+  bind(L_done);
+}
+
+/**
  * Emits code to update CRC-32 with a byte value according to constants in table
  *
  * @param [in,out]crc   Register containing the crc.
--- a/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -167,9 +167,8 @@
 
   // aliases defined in AARCH64 spec
 
-
   template<class T>
-  inline void  cmpw(Register Rd, T imm)  { subsw(zr, Rd, imm); }
+  inline void cmpw(Register Rd, T imm)  { subsw(zr, Rd, imm); }
   inline void cmp(Register Rd, unsigned imm)  { subs(zr, Rd, imm); }
 
   inline void cmnw(Register Rd, unsigned imm) { addsw(zr, Rd, imm); }
@@ -1121,9 +1120,34 @@
                       Register tmp1, Register tmp2,
                       Register tmp3, Register tmp4,
                       int int_cnt1, Register result);
-
+private:
+  void add2_with_carry(Register final_dest_hi, Register dest_hi, Register dest_lo,
+                       Register src1, Register src2);
+  void add2_with_carry(Register dest_hi, Register dest_lo, Register src1, Register src2) {
+    add2_with_carry(dest_hi, dest_hi, dest_lo, src1, src2);
+  }
+  void multiply_64_x_64_loop(Register x, Register xstart, Register x_xstart,
+                             Register y, Register y_idx, Register z,
+                             Register carry, Register product,
+                             Register idx, Register kdx);
+  void multiply_128_x_128_loop(Register y, Register z,
+                               Register carry, Register carry2,
+                               Register idx, Register jdx,
+                               Register yz_idx1, Register yz_idx2,
+                               Register tmp, Register tmp3, Register tmp4,
+                               Register tmp7, Register product_hi);
+public:
+  void multiply_to_len(Register x, Register xlen, Register y, Register ylen, Register z,
+                       Register zlen, Register tmp1, Register tmp2, Register tmp3,
+                       Register tmp4, Register tmp5, Register tmp6, Register tmp7);
   // ISB may be needed because of a safepoint
   void maybe_isb() { isb(); }
+
+private:
+  // Return the effective address r + (r1 << ext) + offset.
+  // Uses rscratch2.
+  Address offsetted_address(Register r, Register r1, Address::extend ext,
+                            int offset, int size);
 };
 
 // Used by aarch64.ad to control code generation
--- a/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2356,8 +2356,45 @@
     return start;
   }
 
-#undef __
-#define __ masm->
+  /**
+   *  Arguments:
+   *
+   *  Input:
+   *    c_rarg0   - x address
+   *    c_rarg1   - x length
+   *    c_rarg2   - y address
+   *    c_rarg3   - y lenth
+   *    c_rarg4   - z address
+   *    c_rarg5   - z length
+   */
+  address generate_multiplyToLen() {
+    __ align(CodeEntryAlignment);
+    StubCodeMark mark(this, "StubRoutines", "multiplyToLen");
+
+    address start = __ pc();
+    const Register x     = r0;
+    const Register xlen  = r1;
+    const Register y     = r2;
+    const Register ylen  = r3;
+    const Register z     = r4;
+    const Register zlen  = r5;
+
+    const Register tmp1  = r10;
+    const Register tmp2  = r11;
+    const Register tmp3  = r12;
+    const Register tmp4  = r13;
+    const Register tmp5  = r14;
+    const Register tmp6  = r15;
+    const Register tmp7  = r16;
+
+    BLOCK_COMMENT("Entry:");
+    __ enter(); // required for proper stackwalking of RuntimeStub frame
+    __ multiply_to_len(x, xlen, y, ylen, z, zlen, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7);
+    __ leave(); // required for proper stackwalking of RuntimeStub frame
+    __ ret(lr);
+
+    return start;
+  }
 
   // Continuation point for throwing of implicit exceptions that are
   // not handled in the current activation. Fabricates an exception
@@ -2375,6 +2412,9 @@
   // otherwise assume that stack unwinding will be initiated, so
   // caller saved registers were assumed volatile in the compiler.
 
+#undef __
+#define __ masm->
+
   address generate_throw_exception(const char* name,
                                    address runtime_entry,
                                    Register arg1 = noreg,
@@ -2518,6 +2558,10 @@
     // arraycopy stubs used by compilers
     generate_arraycopy_stubs();
 
+    if (UseMultiplyToLenIntrinsic) {
+      StubRoutines::_multiplyToLen = generate_multiplyToLen();
+    }
+
 #ifndef BUILTIN_SIM
     if (UseAESIntrinsics) {
       StubRoutines::_aescrypt_encryptBlock = generate_aescrypt_encryptBlock();
--- a/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -502,10 +502,17 @@
   __ neg(reg, reg);
 }
 
-void TemplateTable::iload()
-{
+void TemplateTable::iload() {
+  iload_internal();
+}
+
+void TemplateTable::nofast_iload() {
+  iload_internal(may_not_rewrite);
+}
+
+void TemplateTable::iload_internal(RewriteControl rc) {
   transition(vtos, itos);
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     // TODO : check x86 code for what to do here
     __ call_Unimplemented();
   } else {
@@ -759,8 +766,15 @@
   __ ldr(r0, iaddress(n));
 }
 
-void TemplateTable::aload_0()
-{
+void TemplateTable::aload_0() {
+  aload_0_internal();
+}
+
+void TemplateTable::nofast_aload_0() {
+  aload_0_internal(may_not_rewrite);
+}
+
+void TemplateTable::aload_0_internal(RewriteControl rc) {
   // According to bytecode histograms, the pairs:
   //
   // _aload_0, _fast_igetfield
@@ -782,7 +796,7 @@
   //   aload_0, iload_1
   // These bytecodes with a small amount of code are most profitable
   // to rewrite
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     __ call_Unimplemented();
   } else {
     aload(0);
@@ -2132,37 +2146,21 @@
   assert_different_registers(Rcache, index, temp);
 
   Label resolved;
+
+  Bytecodes::Code code = bytecode();
+  switch (code) {
+  case Bytecodes::_nofast_getfield: code = Bytecodes::_getfield; break;
+  case Bytecodes::_nofast_putfield: code = Bytecodes::_putfield; break;
+  }
+
   assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
   __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
-  __ cmp(temp, (int) bytecode());  // have we resolved this bytecode?
+  __ cmp(temp, (int) code);  // have we resolved this bytecode?
   __ br(Assembler::EQ, resolved);
 
   // resolve first time through
-  address entry;
-  switch (bytecode()) {
-  case Bytecodes::_getstatic:
-  case Bytecodes::_putstatic:
-  case Bytecodes::_getfield:
-  case Bytecodes::_putfield:
-    entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_get_put);
-    break;
-  case Bytecodes::_invokevirtual:
-  case Bytecodes::_invokespecial:
-  case Bytecodes::_invokestatic:
-  case Bytecodes::_invokeinterface:
-    entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invoke);
-    break;
-  case Bytecodes::_invokehandle:
-    entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokehandle);
-    break;
-  case Bytecodes::_invokedynamic:
-    entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokedynamic);
-    break;
-  default:
-    fatal(err_msg("unexpected bytecode: %s", Bytecodes::name(bytecode())));
-    break;
-  }
-  __ mov(temp, (int) bytecode());
+  address entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_from_cache);
+  __ mov(temp, (int) code);
   __ call_VM(noreg, entry, temp);
 
   // Update registers with resolved info
@@ -2280,7 +2278,7 @@
   __ verify_oop(r);
 }
 
-void TemplateTable::getfield_or_static(int byte_no, bool is_static)
+void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteControl rc)
 {
   const Register cache = r2;
   const Register index = r3;
@@ -2310,11 +2308,14 @@
   assert(btos == 0, "change code, btos != 0");
   __ cbnz(flags, notByte);
 
+  // Don't rewrite getstatic, only getfield
+  if (is_static) rc = may_not_rewrite;
+
   // btos
   __ load_signed_byte(r0, field);
   __ push(btos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_bgetfield, bc, r1);
   }
   __ b(Done);
@@ -2325,7 +2326,7 @@
   // atos
   __ load_heap_oop(r0, field);
   __ push(atos);
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_agetfield, bc, r1);
   }
   __ b(Done);
@@ -2337,7 +2338,7 @@
   __ ldrw(r0, field);
   __ push(itos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_igetfield, bc, r1);
   }
   __ b(Done);
@@ -2349,7 +2350,7 @@
   __ load_unsigned_short(r0, field);
   __ push(ctos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_cgetfield, bc, r1);
   }
   __ b(Done);
@@ -2361,7 +2362,7 @@
   __ load_signed_short(r0, field);
   __ push(stos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_sgetfield, bc, r1);
   }
   __ b(Done);
@@ -2373,7 +2374,7 @@
   __ ldr(r0, field);
   __ push(ltos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_lgetfield, bc, r1);
   }
   __ b(Done);
@@ -2385,7 +2386,7 @@
   __ ldrs(v0, field);
   __ push(ftos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_fgetfield, bc, r1);
   }
   __ b(Done);
@@ -2399,7 +2400,7 @@
   __ ldrd(v0, field);
   __ push(dtos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_dgetfield, bc, r1);
   }
 #ifdef ASSERT
@@ -2421,6 +2422,10 @@
   getfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_getfield(int byte_no) {
+  getfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::getstatic(int byte_no)
 {
   getfield_or_static(byte_no, true);
@@ -2484,7 +2489,7 @@
   }
 }
 
-void TemplateTable::putfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
 
   const Register cache = r2;
@@ -2521,12 +2526,15 @@
   assert(btos == 0, "change code, btos != 0");
   __ cbnz(flags, notByte);
 
+  // Don't rewrite putstatic, only putfield
+  if (is_static) rc = may_not_rewrite;
+
   // btos
   {
     __ pop(btos);
     if (!is_static) pop_and_check_object(obj);
     __ strb(r0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_bputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2542,7 +2550,7 @@
     if (!is_static) pop_and_check_object(obj);
     // Store into the field
     do_oop_store(_masm, field, r0, _bs->kind(), false);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_aputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2557,7 +2565,7 @@
     __ pop(itos);
     if (!is_static) pop_and_check_object(obj);
     __ strw(r0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_iputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2572,7 +2580,7 @@
     __ pop(ctos);
     if (!is_static) pop_and_check_object(obj);
     __ strh(r0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_cputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2587,7 +2595,7 @@
     __ pop(stos);
     if (!is_static) pop_and_check_object(obj);
     __ strh(r0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_sputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2602,7 +2610,7 @@
     __ pop(ltos);
     if (!is_static) pop_and_check_object(obj);
     __ str(r0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_lputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2617,7 +2625,7 @@
     __ pop(ftos);
     if (!is_static) pop_and_check_object(obj);
     __ strs(v0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_fputfield, bc, r1, true, byte_no);
     }
     __ b(Done);
@@ -2634,7 +2642,7 @@
     __ pop(dtos);
     if (!is_static) pop_and_check_object(obj);
     __ strd(v0, field);
-    if (!is_static) {
+    if (rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_dputfield, bc, r1, true, byte_no);
     }
   }
@@ -2661,6 +2669,10 @@
   putfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_putfield(int byte_no) {
+  putfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::putstatic(int byte_no) {
   putfield_or_static(byte_no, true);
 }
--- a/hotspot/src/cpu/aarch64/vm/vm_version_aarch64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/aarch64/vm/vm_version_aarch64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2014, Red Hat Inc. All rights reserved.
+ * Copyright (c) 2015, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -193,6 +193,15 @@
     }
   }
 
+  // This machine allows unaligned memory accesses
+  if (FLAG_IS_DEFAULT(UseUnalignedAccesses)) {
+    FLAG_SET_DEFAULT(UseUnalignedAccesses, true);
+  }
+
+  if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) {
+    UseMultiplyToLenIntrinsic = true;
+  }
+
 #ifdef COMPILER2
   if (FLAG_IS_DEFAULT(OptoScheduling)) {
     OptoScheduling = true;
--- a/hotspot/src/cpu/ppc/vm/assembler_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/assembler_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -85,8 +85,7 @@
 }
 
 // Low-level andi-one-instruction-macro.
-void Assembler::andi(Register a, Register s, const int ui16) {
-  assert(is_uimm(ui16, 16), "must be 16-bit unsigned immediate");
+void Assembler::andi(Register a, Register s, const long ui16) {
   if (is_power_of_2_long(((jlong) ui16)+1)) {
     // pow2minus1
     clrldi(a, s, 64-log2_long((((jlong) ui16)+1)));
@@ -97,6 +96,7 @@
     // negpow2
     clrrdi(a, s, log2_long((jlong)-ui16));
   } else {
+    assert(is_uimm(ui16, 16), "must be 16-bit unsigned immediate");
     andi_(a, s, ui16);
   }
 }
@@ -356,7 +356,6 @@
 // 16 bit immediate offset.
 int Assembler::load_const_optimized(Register d, long x, Register tmp, bool return_simm16_rest) {
   // Avoid accidentally trying to use R0 for indexed addressing.
-  assert(d != R0, "R0 not allowed");
   assert_different_registers(d, tmp);
 
   short xa, xb, xc, xd; // Four 16-bit chunks of const.
@@ -370,6 +369,58 @@
     return 0;
   }
 
+  int retval = 0;
+  if (return_simm16_rest) {
+    retval = xd;
+    x = rem << 16;
+    xd = 0;
+  }
+
+  if (d == R0) { // Can't use addi.
+    if (is_simm(x, 32)) { // opt 2: simm32
+      lis(d, x >> 16);
+      if (xd) ori(d, d, (unsigned short)xd);
+    } else {
+      // 64-bit value: x = xa xb xc xd
+      xa = (x >> 48) & 0xffff;
+      xb = (x >> 32) & 0xffff;
+      xc = (x >> 16) & 0xffff;
+      bool xa_loaded = (xb & 0x8000) ? (xa != -1) : (xa != 0);
+      if (tmp == noreg || (xc == 0 && xd == 0)) {
+        if (xa_loaded) {
+          lis(d, xa);
+          if (xb) { ori(d, d, (unsigned short)xb); }
+        } else {
+          li(d, xb);
+        }
+        sldi(d, d, 32);
+        if (xc) { oris(d, d, (unsigned short)xc); }
+        if (xd) { ori( d, d, (unsigned short)xd); }
+      } else {
+        // Exploit instruction level parallelism if we have a tmp register.
+        bool xc_loaded = (xd & 0x8000) ? (xc != -1) : (xc != 0);
+        if (xa_loaded) {
+          lis(tmp, xa);
+        }
+        if (xc_loaded) {
+          lis(d, xc);
+        }
+        if (xa_loaded) {
+          if (xb) { ori(tmp, tmp, (unsigned short)xb); }
+        } else {
+          li(tmp, xb);
+        }
+        if (xc_loaded) {
+          if (xd) { ori(d, d, (unsigned short)xd); }
+        } else {
+          li(d, xd);
+        }
+        insrdi(d, tmp, 32, 0);
+      }
+    }
+    return retval;
+  }
+
   xc = rem & 0xFFFF; // Next 16-bit chunk.
   rem = (rem >> 16) + ((unsigned short)xc >> 15); // Compensation for sign extend.
 
@@ -377,28 +428,27 @@
     lis(d, xc);
   } else { // High 32 bits needed.
 
-    if (tmp != noreg) { // opt 3: We have a temp reg.
+    if (tmp != noreg  && (int)x != 0) { // opt 3: We have a temp reg.
       // No carry propagation between xc and higher chunks here (use logical instructions).
       xa = (x >> 48) & 0xffff;
       xb = (x >> 32) & 0xffff; // No sign compensation, we use lis+ori or li to allow usage of R0.
-      bool load_xa = (xa != 0) || (xb < 0);
+      bool xa_loaded = (xb & 0x8000) ? (xa != -1) : (xa != 0);
       bool return_xd = false;
 
-      if (load_xa) { lis(tmp, xa); }
+      if (xa_loaded) { lis(tmp, xa); }
       if (xc) { lis(d, xc); }
-      if (load_xa) {
+      if (xa_loaded) {
         if (xb) { ori(tmp, tmp, (unsigned short)xb); } // No addi, we support tmp == R0.
       } else {
-        li(tmp, xb); // non-negative
+        li(tmp, xb);
       }
       if (xc) {
-        if (return_simm16_rest && xd >= 0) { return_xd = true; } // >= 0 to avoid carry propagation after insrdi/rldimi.
-        else if (xd) { addi(d, d, xd); }
+        if (xd) { addi(d, d, xd); }
       } else {
         li(d, xd);
       }
       insrdi(d, tmp, 32, 0);
-      return return_xd ? xd : 0; // non-negative
+      return retval;
     }
 
     xb = rem & 0xFFFF; // Next 16-bit chunk.
@@ -417,11 +467,51 @@
     if (xc) { addis(d, d, xc); }
   }
 
-  // opt 5: Return offset to be inserted into following instruction.
-  if (return_simm16_rest) return xd;
+  if (xd) { addi(d, d, xd); }
+  return retval;
+}
+
+// We emit only one addition to s to optimize latency.
+int Assembler::add_const_optimized(Register d, Register s, long x, Register tmp, bool return_simm16_rest) {
+  assert(s != R0 && s != tmp, "unsupported");
+  long rem = x;
 
-  if (xd) { addi(d, d, xd); }
-  return 0;
+  // Case 1: Can use mr or addi.
+  short xd = rem & 0xFFFF; // Lowest 16-bit chunk.
+  rem = (rem >> 16) + ((unsigned short)xd >> 15);
+  if (rem == 0) {
+    if (xd == 0) {
+      if (d != s) { mr(d, s); }
+      return 0;
+    }
+    if (return_simm16_rest) {
+      return xd;
+    }
+    addi(d, s, xd);
+    return 0;
+  }
+
+  // Case 2: Can use addis.
+  if (xd == 0) {
+    short xc = rem & 0xFFFF; // 2nd 16-bit chunk.
+    rem = (rem >> 16) + ((unsigned short)xd >> 15);
+    if (rem == 0) {
+      addis(d, s, xc);
+      return 0;
+    }
+  }
+
+  // Other cases: load & add.
+  Register tmp1 = tmp,
+           tmp2 = noreg;
+  if ((d != tmp) && (d != s)) {
+    // Can use d.
+    tmp1 = d;
+    tmp2 = tmp;
+  }
+  int simm16_rest = load_const_optimized(tmp1, x, tmp2, return_simm16_rest);
+  add(d, tmp1, s);
+  return simm16_rest;
 }
 
 #ifndef PRODUCT
--- a/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -224,10 +224,13 @@
     ADDIS_OPCODE  = (15u << OPCODE_SHIFT),
     ADDIC__OPCODE = (13u << OPCODE_SHIFT),
     ADDE_OPCODE   = (31u << OPCODE_SHIFT | 138u << 1),
+    ADDME_OPCODE  = (31u << OPCODE_SHIFT | 234u << 1),
+    ADDZE_OPCODE  = (31u << OPCODE_SHIFT | 202u << 1),
     SUBF_OPCODE   = (31u << OPCODE_SHIFT |  40u << 1),
     SUBFC_OPCODE  = (31u << OPCODE_SHIFT |   8u << 1),
     SUBFE_OPCODE  = (31u << OPCODE_SHIFT | 136u << 1),
     SUBFIC_OPCODE = (8u  << OPCODE_SHIFT),
+    SUBFME_OPCODE = (31u << OPCODE_SHIFT | 232u << 1),
     SUBFZE_OPCODE = (31u << OPCODE_SHIFT | 200u << 1),
     DIVW_OPCODE   = (31u << OPCODE_SHIFT | 491u << 1),
     MULLW_OPCODE  = (31u << OPCODE_SHIFT | 235u << 1),
@@ -657,6 +660,9 @@
     SYNC_OPCODE    = (31u << OPCODE_SHIFT |  598u << 1),
     EIEIO_OPCODE   = (31u << OPCODE_SHIFT |  854u << 1),
 
+    // Wait instructions for polling.
+    WAIT_OPCODE    = (31u << OPCODE_SHIFT |   62u << 1),
+
     // Trap instructions
     TDI_OPCODE     = (2u  << OPCODE_SHIFT),
     TWI_OPCODE     = (3u  << OPCODE_SHIFT),
@@ -666,8 +672,10 @@
     // Atomics.
     LWARX_OPCODE   = (31u << OPCODE_SHIFT |   20u << 1),
     LDARX_OPCODE   = (31u << OPCODE_SHIFT |   84u << 1),
+    LQARX_OPCODE   = (31u << OPCODE_SHIFT |  276u << 1),
     STWCX_OPCODE   = (31u << OPCODE_SHIFT |  150u << 1),
-    STDCX_OPCODE   = (31u << OPCODE_SHIFT |  214u << 1)
+    STDCX_OPCODE   = (31u << OPCODE_SHIFT |  214u << 1),
+    STQCX_OPCODE   = (31u << OPCODE_SHIFT |  182u << 1)
 
   };
 
@@ -1171,6 +1179,14 @@
   inline void adde_(  Register d, Register a, Register b);
   inline void subfe(  Register d, Register a, Register b);
   inline void subfe_( Register d, Register a, Register b);
+  inline void addme(  Register d, Register a);
+  inline void addme_( Register d, Register a);
+  inline void subfme( Register d, Register a);
+  inline void subfme_(Register d, Register a);
+  inline void addze(  Register d, Register a);
+  inline void addze_( Register d, Register a);
+  inline void subfze( Register d, Register a);
+  inline void subfze_(Register d, Register a);
   inline void neg(    Register d, Register a);
   inline void neg_(   Register d, Register a);
   inline void mulli(  Register d, Register a, int si16);
@@ -1189,6 +1205,38 @@
   inline void divw(   Register d, Register a, Register b);
   inline void divw_(  Register d, Register a, Register b);
 
+  // Fixed-Point Arithmetic Instructions with Overflow detection
+  inline void addo(    Register d, Register a, Register b);
+  inline void addo_(   Register d, Register a, Register b);
+  inline void subfo(   Register d, Register a, Register b);
+  inline void subfo_(  Register d, Register a, Register b);
+  inline void addco(   Register d, Register a, Register b);
+  inline void addco_(  Register d, Register a, Register b);
+  inline void subfco(  Register d, Register a, Register b);
+  inline void subfco_( Register d, Register a, Register b);
+  inline void addeo(   Register d, Register a, Register b);
+  inline void addeo_(  Register d, Register a, Register b);
+  inline void subfeo(  Register d, Register a, Register b);
+  inline void subfeo_( Register d, Register a, Register b);
+  inline void addmeo(  Register d, Register a);
+  inline void addmeo_( Register d, Register a);
+  inline void subfmeo( Register d, Register a);
+  inline void subfmeo_(Register d, Register a);
+  inline void addzeo(  Register d, Register a);
+  inline void addzeo_( Register d, Register a);
+  inline void subfzeo( Register d, Register a);
+  inline void subfzeo_(Register d, Register a);
+  inline void nego(    Register d, Register a);
+  inline void nego_(   Register d, Register a);
+  inline void mulldo(  Register d, Register a, Register b);
+  inline void mulldo_( Register d, Register a, Register b);
+  inline void mullwo(  Register d, Register a, Register b);
+  inline void mullwo_( Register d, Register a, Register b);
+  inline void divdo(   Register d, Register a, Register b);
+  inline void divdo_(  Register d, Register a, Register b);
+  inline void divwo(   Register d, Register a, Register b);
+  inline void divwo_(  Register d, Register a, Register b);
+
   // extended mnemonics
   inline void li(   Register d, int si16);
   inline void lis(  Register d, int si16);
@@ -1303,7 +1351,7 @@
   inline void isel_0( Register d, ConditionRegister cr, Condition cc, Register b = noreg);
 
   // PPC 1, section 3.3.11, Fixed-Point Logical Instructions
-         void andi(   Register a, Register s, int ui16);   // optimized version
+         void andi(   Register a, Register s, long ui16);   // optimized version
   inline void andi_(  Register a, Register s, int ui16);
   inline void andis_( Register a, Register s, int ui16);
   inline void ori(    Register a, Register s, int ui16);
@@ -1688,14 +1736,21 @@
   inline void isync();
   inline void elemental_membar(int e); // Elemental Memory Barriers (>=Power 8)
 
+  // Wait instructions for polling. Attention: May result in SIGILL.
+  inline void wait();
+  inline void waitrsv(); // >=Power7
+
   // atomics
   inline void lwarx_unchecked(Register d, Register a, Register b, int eh1 = 0);
   inline void ldarx_unchecked(Register d, Register a, Register b, int eh1 = 0);
+  inline void lqarx_unchecked(Register d, Register a, Register b, int eh1 = 0);
   inline bool lxarx_hint_exclusive_access();
   inline void lwarx(  Register d, Register a, Register b, bool hint_exclusive_access = false);
   inline void ldarx(  Register d, Register a, Register b, bool hint_exclusive_access = false);
+  inline void lqarx(  Register d, Register a, Register b, bool hint_exclusive_access = false);
   inline void stwcx_( Register s, Register a, Register b);
   inline void stdcx_( Register s, Register a, Register b);
+  inline void stqcx_( Register s, Register a, Register b);
 
   // Instructions for adjusting thread priority for simultaneous
   // multithreading (SMT) on Power5.
@@ -2054,10 +2109,13 @@
   // Atomics: use ra0mem to disallow R0 as base.
   inline void lwarx_unchecked(Register d, Register b, int eh1);
   inline void ldarx_unchecked(Register d, Register b, int eh1);
+  inline void lqarx_unchecked(Register d, Register b, int eh1);
   inline void lwarx( Register d, Register b, bool hint_exclusive_access);
   inline void ldarx( Register d, Register b, bool hint_exclusive_access);
+  inline void lqarx( Register d, Register b, bool hint_exclusive_access);
   inline void stwcx_(Register s, Register b);
   inline void stdcx_(Register s, Register b);
+  inline void stqcx_(Register s, Register b);
   inline void lfs(   FloatRegister d, int si16);
   inline void lfsx(  FloatRegister d, Register b);
   inline void lfd(   FloatRegister d, int si16);
@@ -2120,6 +2178,20 @@
     return load_const_optimized(d, (long)(unsigned long)a, tmp, return_simm16_rest);
   }
 
+  // If return_simm16_rest, the return value needs to get added afterwards.
+         int add_const_optimized(Register d, Register s, long x, Register tmp = R0, bool return_simm16_rest = false);
+  inline int add_const_optimized(Register d, Register s, void* a, Register tmp = R0, bool return_simm16_rest = false) {
+    return add_const_optimized(d, s, (long)(unsigned long)a, tmp, return_simm16_rest);
+  }
+
+  // If return_simm16_rest, the return value needs to get added afterwards.
+  inline int sub_const_optimized(Register d, Register s, long x, Register tmp = R0, bool return_simm16_rest = false) {
+    return add_const_optimized(d, s, -x, tmp, return_simm16_rest);
+  }
+  inline int sub_const_optimized(Register d, Register s, void* a, Register tmp = R0, bool return_simm16_rest = false) {
+    return sub_const_optimized(d, s, (long)(unsigned long)a, tmp, return_simm16_rest);
+  }
+
   // Creation
   Assembler(CodeBuffer* code) : AbstractAssembler(code) {
 #ifdef CHECK_DELAY
--- a/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -100,6 +100,14 @@
 inline void Assembler::adde_(  Register d, Register a, Register b) { emit_int32(ADDE_OPCODE   | rt(d) | ra(a) | rb(b) | oe(0) | rc(1)); }
 inline void Assembler::subfe(  Register d, Register a, Register b) { emit_int32(SUBFE_OPCODE  | rt(d) | ra(a) | rb(b) | oe(0) | rc(0)); }
 inline void Assembler::subfe_( Register d, Register a, Register b) { emit_int32(SUBFE_OPCODE  | rt(d) | ra(a) | rb(b) | oe(0) | rc(1)); }
+inline void Assembler::addme(  Register d, Register a)             { emit_int32(ADDME_OPCODE  | rt(d) | ra(a) |         oe(0) | rc(0)); }
+inline void Assembler::addme_( Register d, Register a)             { emit_int32(ADDME_OPCODE  | rt(d) | ra(a) |         oe(0) | rc(1)); }
+inline void Assembler::subfme( Register d, Register a)             { emit_int32(SUBFME_OPCODE | rt(d) | ra(a) |         oe(0) | rc(0)); }
+inline void Assembler::subfme_(Register d, Register a)             { emit_int32(SUBFME_OPCODE | rt(d) | ra(a) |         oe(0) | rc(1)); }
+inline void Assembler::addze(  Register d, Register a)             { emit_int32(ADDZE_OPCODE  | rt(d) | ra(a) |         oe(0) | rc(0)); }
+inline void Assembler::addze_( Register d, Register a)             { emit_int32(ADDZE_OPCODE  | rt(d) | ra(a) |         oe(0) | rc(1)); }
+inline void Assembler::subfze( Register d, Register a)             { emit_int32(SUBFZE_OPCODE | rt(d) | ra(a) |         oe(0) | rc(0)); }
+inline void Assembler::subfze_(Register d, Register a)             { emit_int32(SUBFZE_OPCODE | rt(d) | ra(a) |         oe(0) | rc(1)); }
 inline void Assembler::neg(    Register d, Register a)             { emit_int32(NEG_OPCODE    | rt(d) | ra(a) | oe(0) | rc(0)); }
 inline void Assembler::neg_(   Register d, Register a)             { emit_int32(NEG_OPCODE    | rt(d) | ra(a) | oe(0) | rc(1)); }
 inline void Assembler::mulli(  Register d, Register a, int si16)   { emit_int32(MULLI_OPCODE  | rt(d) | ra(a) | simm(si16, 16)); }
@@ -118,6 +126,38 @@
 inline void Assembler::divw(   Register d, Register a, Register b) { emit_int32(DIVW_OPCODE   | rt(d) | ra(a) | rb(b) | oe(0) | rc(0)); }
 inline void Assembler::divw_(  Register d, Register a, Register b) { emit_int32(DIVW_OPCODE   | rt(d) | ra(a) | rb(b) | oe(0) | rc(1)); }
 
+// Fixed-Point Arithmetic Instructions with Overflow detection
+inline void Assembler::addo(    Register d, Register a, Register b) { emit_int32(ADD_OPCODE    | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::addo_(   Register d, Register a, Register b) { emit_int32(ADD_OPCODE    | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::subfo(   Register d, Register a, Register b) { emit_int32(SUBF_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::subfo_(  Register d, Register a, Register b) { emit_int32(SUBF_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::addco(   Register d, Register a, Register b) { emit_int32(ADDC_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::addco_(  Register d, Register a, Register b) { emit_int32(ADDC_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::subfco(  Register d, Register a, Register b) { emit_int32(SUBFC_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::subfco_( Register d, Register a, Register b) { emit_int32(SUBFC_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::addeo(   Register d, Register a, Register b) { emit_int32(ADDE_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::addeo_(  Register d, Register a, Register b) { emit_int32(ADDE_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::subfeo(  Register d, Register a, Register b) { emit_int32(SUBFE_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::subfeo_( Register d, Register a, Register b) { emit_int32(SUBFE_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::addmeo(  Register d, Register a)             { emit_int32(ADDME_OPCODE  | rt(d) | ra(a) |         oe(1) | rc(0)); }
+inline void Assembler::addmeo_( Register d, Register a)             { emit_int32(ADDME_OPCODE  | rt(d) | ra(a) |         oe(1) | rc(1)); }
+inline void Assembler::subfmeo( Register d, Register a)             { emit_int32(SUBFME_OPCODE | rt(d) | ra(a) |         oe(1) | rc(0)); }
+inline void Assembler::subfmeo_(Register d, Register a)             { emit_int32(SUBFME_OPCODE | rt(d) | ra(a) |         oe(1) | rc(1)); }
+inline void Assembler::addzeo(  Register d, Register a)             { emit_int32(ADDZE_OPCODE  | rt(d) | ra(a) |         oe(1) | rc(0)); }
+inline void Assembler::addzeo_( Register d, Register a)             { emit_int32(ADDZE_OPCODE  | rt(d) | ra(a) |         oe(1) | rc(1)); }
+inline void Assembler::subfzeo( Register d, Register a)             { emit_int32(SUBFZE_OPCODE | rt(d) | ra(a) |         oe(1) | rc(0)); }
+inline void Assembler::subfzeo_(Register d, Register a)             { emit_int32(SUBFZE_OPCODE | rt(d) | ra(a) |         oe(1) | rc(1)); }
+inline void Assembler::nego(    Register d, Register a)             { emit_int32(NEG_OPCODE    | rt(d) | ra(a) | oe(1) | rc(0)); }
+inline void Assembler::nego_(   Register d, Register a)             { emit_int32(NEG_OPCODE    | rt(d) | ra(a) | oe(1) | rc(1)); }
+inline void Assembler::mulldo(  Register d, Register a, Register b) { emit_int32(MULLD_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::mulldo_( Register d, Register a, Register b) { emit_int32(MULLD_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::mullwo(  Register d, Register a, Register b) { emit_int32(MULLW_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::mullwo_( Register d, Register a, Register b) { emit_int32(MULLW_OPCODE  | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::divdo(   Register d, Register a, Register b) { emit_int32(DIVD_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::divdo_(  Register d, Register a, Register b) { emit_int32(DIVD_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+inline void Assembler::divwo(   Register d, Register a, Register b) { emit_int32(DIVW_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(0)); }
+inline void Assembler::divwo_(  Register d, Register a, Register b) { emit_int32(DIVW_OPCODE   | rt(d) | ra(a) | rb(b) | oe(1) | rc(1)); }
+
 // extended mnemonics
 inline void Assembler::li(   Register d, int si16)             { Assembler::addi_r0ok( d, R0, si16); }
 inline void Assembler::lis(  Register d, int si16)             { Assembler::addis_r0ok(d, R0, si16); }
@@ -540,15 +580,22 @@
 inline void Assembler::isync()     { emit_int32( ISYNC_OPCODE); }
 inline void Assembler::elemental_membar(int e) { assert(0 < e && e < 16, "invalid encoding"); emit_int32( SYNC_OPCODE | e1215(e)); }
 
+// Wait instructions for polling.
+inline void Assembler::wait()    { emit_int32( WAIT_OPCODE); }
+inline void Assembler::waitrsv() { emit_int32( WAIT_OPCODE | 1<<(31-10)); } // WC=0b01 >=Power7
+
 // atomics
 // Use ra0mem to disallow R0 as base.
 inline void Assembler::lwarx_unchecked(Register d, Register a, Register b, int eh1)           { emit_int32( LWARX_OPCODE | rt(d) | ra0mem(a) | rb(b) | eh(eh1)); }
 inline void Assembler::ldarx_unchecked(Register d, Register a, Register b, int eh1)           { emit_int32( LDARX_OPCODE | rt(d) | ra0mem(a) | rb(b) | eh(eh1)); }
+inline void Assembler::lqarx_unchecked(Register d, Register a, Register b, int eh1)           { emit_int32( LQARX_OPCODE | rt(d) | ra0mem(a) | rb(b) | eh(eh1)); }
 inline bool Assembler::lxarx_hint_exclusive_access()                                          { return VM_Version::has_lxarxeh(); }
 inline void Assembler::lwarx( Register d, Register a, Register b, bool hint_exclusive_access) { lwarx_unchecked(d, a, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
 inline void Assembler::ldarx( Register d, Register a, Register b, bool hint_exclusive_access) { ldarx_unchecked(d, a, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
+inline void Assembler::lqarx( Register d, Register a, Register b, bool hint_exclusive_access) { lqarx_unchecked(d, a, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
 inline void Assembler::stwcx_(Register s, Register a, Register b)                             { emit_int32( STWCX_OPCODE | rs(s) | ra0mem(a) | rb(b) | rc(1)); }
 inline void Assembler::stdcx_(Register s, Register a, Register b)                             { emit_int32( STDCX_OPCODE | rs(s) | ra0mem(a) | rb(b) | rc(1)); }
+inline void Assembler::stqcx_(Register s, Register a, Register b)                             { emit_int32( STQCX_OPCODE | rs(s) | ra0mem(a) | rb(b) | rc(1)); }
 
 // Instructions for adjusting thread priority
 // for simultaneous multithreading (SMT) on POWER5.
@@ -873,10 +920,13 @@
 // ra0 version
 inline void Assembler::lwarx_unchecked(Register d, Register b, int eh1)          { emit_int32( LWARX_OPCODE | rt(d) | rb(b) | eh(eh1)); }
 inline void Assembler::ldarx_unchecked(Register d, Register b, int eh1)          { emit_int32( LDARX_OPCODE | rt(d) | rb(b) | eh(eh1)); }
+inline void Assembler::lqarx_unchecked(Register d, Register b, int eh1)          { emit_int32( LQARX_OPCODE | rt(d) | rb(b) | eh(eh1)); }
 inline void Assembler::lwarx( Register d, Register b, bool hint_exclusive_access){ lwarx_unchecked(d, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
 inline void Assembler::ldarx( Register d, Register b, bool hint_exclusive_access){ ldarx_unchecked(d, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
+inline void Assembler::lqarx( Register d, Register b, bool hint_exclusive_access){ lqarx_unchecked(d, b, (hint_exclusive_access && lxarx_hint_exclusive_access() && UseExtendedLoadAndReserveInstructionsPPC64) ? 1 : 0); }
 inline void Assembler::stwcx_(Register s, Register b)                            { emit_int32( STWCX_OPCODE | rs(s) | rb(b) | rc(1)); }
 inline void Assembler::stdcx_(Register s, Register b)                            { emit_int32( STDCX_OPCODE | rs(s) | rb(b) | rc(1)); }
+inline void Assembler::stqcx_(Register s, Register b)                            { emit_int32( STQCX_OPCODE | rs(s) | rb(b) | rc(1)); }
 
 // ra0 version
 inline void Assembler::lfs( FloatRegister d, int si16)   { emit_int32( LFS_OPCODE  | frt(d) | simm(si16,16)); }
--- a/hotspot/src/cpu/ppc/vm/c2_globals_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/c2_globals_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
 define_pd_global(intx, FLOATPRESSURE,                28);
 define_pd_global(intx, FreqInlineSize,               175);
 define_pd_global(intx, MinJumpTableSize,             10);
-define_pd_global(intx, INTPRESSURE,                  25);
+define_pd_global(intx, INTPRESSURE,                  26);
 define_pd_global(intx, InteriorEntryAlignment,       16);
 define_pd_global(size_t, NewSizeThreadIncrease,      ScaleForWordSize(4*K));
 define_pd_global(intx, RegisterCostAreaRatio,        16000);
--- a/hotspot/src/cpu/ppc/vm/globals_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/globals_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -55,10 +55,12 @@
 
 define_pd_global(bool, UseMembar,             false);
 
+define_pd_global(bool, PreserveFramePointer,  false);
+
 // GC Ergo Flags
 define_pd_global(size_t, CMSYoungGenPerWorker, 16*M);  // Default max size of CMS young gen, per GC worker thread.
 
-define_pd_global(uintx, TypeProfileLevel, 0);
+define_pd_global(uintx, TypeProfileLevel, 111);
 
 // Platform dependent flag handling: flags only defined on this platform.
 #define ARCH_FLAGS(develop, product, diagnostic, experimental, notproduct)  \
@@ -71,14 +73,26 @@
                                                                             \
   product(uintx, PowerArchitecturePPC64, 0,                                 \
           "CPU Version: x for PowerX. Currently recognizes Power5 to "      \
-          "Power7. Default is 0. CPUs newer than Power7 will be "           \
-          "recognized as Power7.")                                          \
+          "Power8. Default is 0. Newer CPUs will be recognized as Power8.") \
                                                                             \
   /* Reoptimize code-sequences of calls at runtime, e.g. replace an */      \
   /* indirect call by a direct call.                                */      \
   product(bool, ReoptimizeCallSequences, true,                              \
           "Reoptimize code-sequences of calls at runtime.")                 \
                                                                             \
+  /* Power 8: Configure Data Stream Control Register. */                    \
+  product(uint64_t,DSCR_PPC64, (uintx)-1,                                   \
+          "Power8 or later: Specify encoded value for Data Stream Control " \
+          "Register")                                                       \
+  product(uint64_t,DSCR_DPFD_PPC64, 8,                                      \
+          "Power8 or later: DPFD (default prefetch depth) value of the "    \
+          "Data Stream Control Register."                                   \
+          " 0: hardware default, 1: none, 2-7: min-max, 8: don't touch")    \
+  product(uint64_t,DSCR_URG_PPC64, 8,                                       \
+          "Power8 or later: URG (depth attainment urgency) value of the "   \
+          "Data Stream Control Register."                                   \
+          " 0: hardware default, 1: none, 2-7: min-max, 8: don't touch")    \
+                                                                            \
   product(bool, UseLoadInstructionsForStackBangingPPC64, false,             \
           "Use load instructions for stack banging.")                       \
                                                                             \
@@ -121,6 +135,41 @@
                                                                             \
   product(bool, ZapMemory, false, "Write 0x0101... to empty memory."        \
           " Use this to ease debugging.")                                   \
-
+                                                                            \
+  /* Use Restricted Transactional Memory for lock eliding */                \
+  product(bool, UseRTMLocking, false,                                       \
+          "Enable RTM lock eliding for inflated locks in compiled code")    \
+                                                                            \
+  experimental(bool, UseRTMForStackLocks, false,                            \
+          "Enable RTM lock eliding for stack locks in compiled code")       \
+                                                                            \
+  product(bool, UseRTMDeopt, false,                                         \
+          "Perform deopt and recompilation based on RTM abort ratio")       \
+                                                                            \
+  product(uintx, RTMRetryCount, 5,                                          \
+          "Number of RTM retries on lock abort or busy")                    \
+                                                                            \
+  experimental(intx, RTMSpinLoopCount, 100,                                 \
+          "Spin count for lock to become free before RTM retry")            \
+                                                                            \
+  experimental(intx, RTMAbortThreshold, 1000,                               \
+          "Calculate abort ratio after this number of aborts")              \
+                                                                            \
+  experimental(intx, RTMLockingThreshold, 10000,                            \
+          "Lock count at which to do RTM lock eliding without "             \
+          "abort ratio calculation")                                        \
+                                                                            \
+  experimental(intx, RTMAbortRatio, 50,                                     \
+          "Lock abort ratio at which to stop use RTM lock eliding")         \
+                                                                            \
+  experimental(intx, RTMTotalCountIncrRate, 64,                             \
+          "Increment total RTM attempted lock count once every n times")    \
+                                                                            \
+  experimental(intx, RTMLockingCalculationDelay, 0,                         \
+          "Number of milliseconds to wait before start calculating aborts " \
+          "for RTM locking")                                                \
+                                                                            \
+  experimental(bool, UseRTMXendForLockBusy, true,                           \
+          "Use RTM Xend instead of Xabort when lock busy")                  \
 
 #endif // CPU_PPC_VM_GLOBALS_PPC_HPP
--- a/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -446,7 +446,7 @@
 }
 
 // Load object from cpool->resolved_references(index).
-void InterpreterMacroAssembler::load_resolved_reference_at_index(Register result, Register index) {
+void InterpreterMacroAssembler::load_resolved_reference_at_index(Register result, Register index, Label *is_null) {
   assert_different_registers(result, index);
   get_constant_pool(result);
 
@@ -469,7 +469,7 @@
 #endif
   // Add in the index.
   add(result, tmp, result);
-  load_heap_oop(result, arrayOopDesc::base_offset_in_bytes(T_OBJECT), result);
+  load_heap_oop(result, arrayOopDesc::base_offset_in_bytes(T_OBJECT), result, is_null);
 }
 
 // Generate a subtype check: branch to ok_is_subtype if sub_klass is
@@ -876,7 +876,6 @@
     // If condition is true we are done and hence we can store 0 in the displaced
     // header indicating it is a recursive lock.
     bne(CCR0, slow_case);
-    release();
     std(R0/*==0!*/, BasicObjectLock::lock_offset_in_bytes() +
         BasicLock::displaced_header_offset_in_bytes(), monitor);
     b(done);
@@ -1861,7 +1860,7 @@
     const Register mdp = tmp1;
     add(mdp, tmp1, R28_mdx);
 
-    // Pffset of the current profile entry to update.
+    // Offset of the current profile entry to update.
     const Register entry_offset = tmp2;
     // entry_offset = array len in number of cells
     ld(entry_offset, in_bytes(ArrayData::array_len_offset()), mdp);
--- a/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -85,7 +85,7 @@
                          Register tmp1, Register tmp2, Register tmp3, Label &ok_is_subtype);
 
   // Load object from cpool->resolved_references(index).
-  void load_resolved_reference_at_index(Register result, Register index);
+  void load_resolved_reference_at_index(Register result, Register index, Label *is_null = NULL);
 
   void generate_stack_overflow_check_with_compare_and_throw(Register Rmem_frame_size, Register Rscratch1);
   void load_receiver(Register Rparam_count, Register Rrecv_dst);
@@ -137,7 +137,6 @@
   void field_offset_at(int n, Register tmp, Register dest, Register base);
   int  field_offset_at(Register object, address bcp, int offset);
   void fast_iaaccess(int n, address bcp);
-  void fast_iagetfield(address bcp);
   void fast_iaputfield(address bcp, bool do_store_check);
 
   void index_check(Register array, Register index, int index_shift, Register tmp, Register res);
--- a/hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -427,7 +427,6 @@
   return entry;
 }
 
-
 // Call an accessor method (assuming it is resolved, otherwise drop into
 // vanilla (slow path) entry.
 address InterpreterGenerator::generate_jump_to_normal_entry(void) {
@@ -473,7 +472,8 @@
 
   // This is not a leaf but we have a JavaFrameAnchor now and we will
   // check (create) exceptions afterward so this is ok.
-  __ call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_AbstractMethodError));
+  __ call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_AbstractMethodError),
+                  R16_thread);
 
   // Pop the C frame and restore LR.
   __ pop_frame();
--- a/hotspot/src/cpu/ppc/vm/interpreter_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/interpreter_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,4 +47,4 @@
   }
 #endif
 
-#endif // CPU_PPC_VM_INTERPRETER_PPC_PP
+#endif // CPU_PPC_VM_INTERPRETER_PPC_HPP
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1455,7 +1455,7 @@
 // Several special cases exist to avoid that unnecessary information is generated.
 //
 void MacroAssembler::cmpxchgd(ConditionRegister flag,
-                              Register dest_current_value, Register compare_value, Register exchange_value,
+                              Register dest_current_value, RegisterOrConstant compare_value, Register exchange_value,
                               Register addr_base, int semantics, bool cmpxchgx_hint,
                               Register int_flag_success, Label* failed_ext, bool contention_hint) {
   Label retry;
@@ -1465,7 +1465,7 @@
 
   // Save one branch if result is returned via register and result register is different from the other ones.
   bool use_result_reg    = (int_flag_success!=noreg);
-  bool preset_result_reg = (int_flag_success!=dest_current_value && int_flag_success!=compare_value &&
+  bool preset_result_reg = (int_flag_success!=dest_current_value && int_flag_success!=compare_value.register_or_noreg() &&
                             int_flag_success!=exchange_value && int_flag_success!=addr_base);
   assert(int_flag_success == noreg || failed_ext == NULL, "cannot have both");
 
@@ -1481,7 +1481,7 @@
   // Add simple guard in order to reduce risk of starving under high contention (recommended by IBM).
   if (contention_hint) { // Don't try to reserve if cmp fails.
     ld(dest_current_value, 0, addr_base);
-    cmpd(flag, dest_current_value, compare_value);
+    cmpd(flag, compare_value, dest_current_value);
     bne(flag, failed);
   }
 
@@ -1489,7 +1489,7 @@
   bind(retry);
 
   ldarx(dest_current_value, addr_base, cmpxchgx_hint);
-  cmpd(flag, dest_current_value, compare_value);
+  cmpd(flag, compare_value, dest_current_value);
   if (UseStaticBranchPredictionInCompareAndSwapPPC64) {
     bne_predict_not_taken(flag, failed);
   } else {
@@ -1873,7 +1873,6 @@
   assert(oopDesc::mark_offset_in_bytes() == 0, "offset of _mark is not 0");
 
   // CmpxchgX sets cr_reg to cmpX(temp2_reg, mark_reg).
-  fence(); // TODO: replace by MacroAssembler::MemBarRel | MacroAssembler::MemBarAcq ?
   cmpxchgd(/*flag=*/cr_reg, /*current_value=*/temp2_reg,
            /*compare_value=*/mark_reg, /*exchange_value=*/temp_reg,
            /*where=*/obj_reg,
@@ -1909,7 +1908,6 @@
   assert(oopDesc::mark_offset_in_bytes() == 0, "offset of _mark is not 0");
 
   // CmpxchgX sets cr_reg to cmpX(temp2_reg, mark_reg).
-  fence(); // TODO: replace by MacroAssembler::MemBarRel | MacroAssembler::MemBarAcq ?
   cmpxchgd(/*flag=*/cr_reg, /*current_value=*/temp2_reg,
                  /*compare_value=*/mark_reg, /*exchange_value=*/temp_reg,
                  /*where=*/obj_reg,
@@ -1946,7 +1944,6 @@
   assert(oopDesc::mark_offset_in_bytes() == 0, "offset of _mark is not 0");
 
   // CmpxchgX sets cr_reg to cmpX(temp2_reg, mark_reg).
-  fence(); // TODO: replace by MacroAssembler::MemBarRel | MacroAssembler::MemBarAcq ?
   cmpxchgd(/*flag=*/cr_reg, /*current_value=*/temp2_reg,
                  /*compare_value=*/mark_reg, /*exchange_value=*/temp_reg,
                  /*where=*/obj_reg,
@@ -1987,9 +1984,371 @@
   beq(cr_reg, done);
 }
 
+// TM on PPC64.
+void MacroAssembler::atomic_inc_ptr(Register addr, Register result, int simm16) {
+  Label retry;
+  bind(retry);
+  ldarx(result, addr, /*hint*/ false);
+  addi(result, result, simm16);
+  stdcx_(result, addr);
+  if (UseStaticBranchPredictionInCompareAndSwapPPC64) {
+    bne_predict_not_taken(CCR0, retry); // stXcx_ sets CCR0
+  } else {
+    bne(                  CCR0, retry); // stXcx_ sets CCR0
+  }
+}
+
+void MacroAssembler::atomic_ori_int(Register addr, Register result, int uimm16) {
+  Label retry;
+  bind(retry);
+  lwarx(result, addr, /*hint*/ false);
+  ori(result, result, uimm16);
+  stwcx_(result, addr);
+  if (UseStaticBranchPredictionInCompareAndSwapPPC64) {
+    bne_predict_not_taken(CCR0, retry); // stXcx_ sets CCR0
+  } else {
+    bne(                  CCR0, retry); // stXcx_ sets CCR0
+  }
+}
+
+#if INCLUDE_RTM_OPT
+
+// Update rtm_counters based on abort status
+// input: abort_status
+//        rtm_counters (RTMLockingCounters*)
+void MacroAssembler::rtm_counters_update(Register abort_status, Register rtm_counters_Reg) {
+  // Mapping to keep PreciseRTMLockingStatistics similar to x86.
+  // x86 ppc (! means inverted, ? means not the same)
+  //  0   31  Set if abort caused by XABORT instruction.
+  //  1  ! 7  If set, the transaction may succeed on a retry. This bit is always clear if bit 0 is set.
+  //  2   13  Set if another logical processor conflicted with a memory address that was part of the transaction that aborted.
+  //  3   10  Set if an internal buffer overflowed.
+  //  4  ?12  Set if a debug breakpoint was hit.
+  //  5  ?32  Set if an abort occurred during execution of a nested transaction.
+  const  int tm_failure_bit[] = {Assembler::tm_tabort, // Note: Seems like signal handler sets this, too.
+                                 Assembler::tm_failure_persistent, // inverted: transient
+                                 Assembler::tm_trans_cf,
+                                 Assembler::tm_footprint_of,
+                                 Assembler::tm_non_trans_cf,
+                                 Assembler::tm_suspended};
+  const bool tm_failure_inv[] = {false, true, false, false, false, false};
+  assert(sizeof(tm_failure_bit)/sizeof(int) == RTMLockingCounters::ABORT_STATUS_LIMIT, "adapt mapping!");
+
+  const Register addr_Reg = R0;
+  // Keep track of offset to where rtm_counters_Reg had pointed to.
+  int counters_offs = RTMLockingCounters::abort_count_offset();
+  addi(addr_Reg, rtm_counters_Reg, counters_offs);
+  const Register temp_Reg = rtm_counters_Reg;
+
+  //atomic_inc_ptr(addr_Reg, temp_Reg); We don't increment atomically
+  ldx(temp_Reg, addr_Reg);
+  addi(temp_Reg, temp_Reg, 1);
+  stdx(temp_Reg, addr_Reg);
+
+  if (PrintPreciseRTMLockingStatistics) {
+    int counters_offs_delta = RTMLockingCounters::abortX_count_offset() - counters_offs;
+
+    //mftexasr(abort_status); done by caller
+    for (int i = 0; i < RTMLockingCounters::ABORT_STATUS_LIMIT; i++) {
+      counters_offs += counters_offs_delta;
+      li(temp_Reg, counters_offs_delta); // can't use addi with R0
+      add(addr_Reg, addr_Reg, temp_Reg); // point to next counter
+      counters_offs_delta = sizeof(uintx);
+
+      Label check_abort;
+      rldicr_(temp_Reg, abort_status, tm_failure_bit[i], 0);
+      if (tm_failure_inv[i]) {
+        bne(CCR0, check_abort);
+      } else {
+        beq(CCR0, check_abort);
+      }
+      //atomic_inc_ptr(addr_Reg, temp_Reg); We don't increment atomically
+      ldx(temp_Reg, addr_Reg);
+      addi(temp_Reg, temp_Reg, 1);
+      stdx(temp_Reg, addr_Reg);
+      bind(check_abort);
+    }
+  }
+  li(temp_Reg, -counters_offs); // can't use addi with R0
+  add(rtm_counters_Reg, addr_Reg, temp_Reg); // restore
+}
+
+// Branch if (random & (count-1) != 0), count is 2^n
+// tmp and CR0 are killed
+void MacroAssembler::branch_on_random_using_tb(Register tmp, int count, Label& brLabel) {
+  mftb(tmp);
+  andi_(tmp, tmp, count-1);
+  bne(CCR0, brLabel);
+}
+
+// Perform abort ratio calculation, set no_rtm bit if high ratio.
+// input:  rtm_counters_Reg (RTMLockingCounters* address) - KILLED
+void MacroAssembler::rtm_abort_ratio_calculation(Register rtm_counters_Reg,
+                                                 RTMLockingCounters* rtm_counters,
+                                                 Metadata* method_data) {
+  Label L_done, L_check_always_rtm1, L_check_always_rtm2;
+
+  if (RTMLockingCalculationDelay > 0) {
+    // Delay calculation.
+    ld(rtm_counters_Reg, (RegisterOrConstant)(intptr_t)RTMLockingCounters::rtm_calculation_flag_addr());
+    cmpdi(CCR0, rtm_counters_Reg, 0);
+    beq(CCR0, L_done);
+    load_const_optimized(rtm_counters_Reg, (address)rtm_counters, R0); // reload
+  }
+  // Abort ratio calculation only if abort_count > RTMAbortThreshold.
+  //   Aborted transactions = abort_count * 100
+  //   All transactions = total_count *  RTMTotalCountIncrRate
+  //   Set no_rtm bit if (Aborted transactions >= All transactions * RTMAbortRatio)
+  ld(R0, RTMLockingCounters::abort_count_offset(), rtm_counters_Reg);
+  cmpdi(CCR0, R0, RTMAbortThreshold);
+  blt(CCR0, L_check_always_rtm2);
+  mulli(R0, R0, 100);
+
+  const Register tmpReg = rtm_counters_Reg;
+  ld(tmpReg, RTMLockingCounters::total_count_offset(), rtm_counters_Reg);
+  mulli(tmpReg, tmpReg, RTMTotalCountIncrRate);
+  mulli(tmpReg, tmpReg, RTMAbortRatio);
+  cmpd(CCR0, R0, tmpReg);
+  blt(CCR0, L_check_always_rtm1); // jump to reload
+  if (method_data != NULL) {
+    // Set rtm_state to "no rtm" in MDO.
+    // Not using a metadata relocation. Method and Class Loader are kept alive anyway.
+    // (See nmethod::metadata_do and CodeBuffer::finalize_oop_references.)
+    load_const(R0, (address)method_data + MethodData::rtm_state_offset_in_bytes(), tmpReg);
+    atomic_ori_int(R0, tmpReg, NoRTM);
+  }
+  b(L_done);
+
+  bind(L_check_always_rtm1);
+  load_const_optimized(rtm_counters_Reg, (address)rtm_counters, R0); // reload
+  bind(L_check_always_rtm2);
+  ld(tmpReg, RTMLockingCounters::total_count_offset(), rtm_counters_Reg);
+  cmpdi(CCR0, tmpReg, RTMLockingThreshold / RTMTotalCountIncrRate);
+  blt(CCR0, L_done);
+  if (method_data != NULL) {
+    // Set rtm_state to "always rtm" in MDO.
+    // Not using a metadata relocation. See above.
+    load_const(R0, (address)method_data + MethodData::rtm_state_offset_in_bytes(), tmpReg);
+    atomic_ori_int(R0, tmpReg, UseRTM);
+  }
+  bind(L_done);
+}
+
+// Update counters and perform abort ratio calculation.
+// input: abort_status_Reg
+void MacroAssembler::rtm_profiling(Register abort_status_Reg, Register temp_Reg,
+                                   RTMLockingCounters* rtm_counters,
+                                   Metadata* method_data,
+                                   bool profile_rtm) {
+
+  assert(rtm_counters != NULL, "should not be NULL when profiling RTM");
+  // Update rtm counters based on state at abort.
+  // Reads abort_status_Reg, updates flags.
+  assert_different_registers(abort_status_Reg, temp_Reg);
+  load_const_optimized(temp_Reg, (address)rtm_counters, R0);
+  rtm_counters_update(abort_status_Reg, temp_Reg);
+  if (profile_rtm) {
+    assert(rtm_counters != NULL, "should not be NULL when profiling RTM");
+    rtm_abort_ratio_calculation(temp_Reg, rtm_counters, method_data);
+  }
+}
+
+// Retry on abort if abort's status indicates non-persistent failure.
+// inputs: retry_count_Reg
+//       : abort_status_Reg
+// output: retry_count_Reg decremented by 1
+void MacroAssembler::rtm_retry_lock_on_abort(Register retry_count_Reg, Register abort_status_Reg,
+                                             Label& retryLabel, Label* checkRetry) {
+  Label doneRetry;
+  rldicr_(R0, abort_status_Reg, tm_failure_persistent, 0);
+  bne(CCR0, doneRetry);
+  if (checkRetry) { bind(*checkRetry); }
+  addic_(retry_count_Reg, retry_count_Reg, -1);
+  blt(CCR0, doneRetry);
+  smt_yield(); // Can't use wait(). No permission (SIGILL).
+  b(retryLabel);
+  bind(doneRetry);
+}
+
+// Spin and retry if lock is busy.
+// inputs: box_Reg (monitor address)
+//       : retry_count_Reg
+// output: retry_count_Reg decremented by 1
+// CTR is killed
+void MacroAssembler::rtm_retry_lock_on_busy(Register retry_count_Reg, Register owner_addr_Reg, Label& retryLabel) {
+  Label SpinLoop, doneRetry;
+  addic_(retry_count_Reg, retry_count_Reg, -1);
+  blt(CCR0, doneRetry);
+  li(R0, RTMSpinLoopCount);
+  mtctr(R0);
+
+  bind(SpinLoop);
+  smt_yield(); // Can't use waitrsv(). No permission (SIGILL).
+  bdz(retryLabel);
+  ld(R0, 0, owner_addr_Reg);
+  cmpdi(CCR0, R0, 0);
+  bne(CCR0, SpinLoop);
+  b(retryLabel);
+
+  bind(doneRetry);
+}
+
+// Use RTM for normal stack locks.
+// Input: objReg (object to lock)
+void MacroAssembler::rtm_stack_locking(ConditionRegister flag,
+                                       Register obj, Register mark_word, Register tmp,
+                                       Register retry_on_abort_count_Reg,
+                                       RTMLockingCounters* stack_rtm_counters,
+                                       Metadata* method_data, bool profile_rtm,
+                                       Label& DONE_LABEL, Label& IsInflated) {
+  assert(UseRTMForStackLocks, "why call this otherwise?");
+  assert(!UseBiasedLocking, "Biased locking is not supported with RTM locking");
+  Label L_rtm_retry, L_decrement_retry, L_on_abort;
+
+  if (RTMRetryCount > 0) {
+    load_const_optimized(retry_on_abort_count_Reg, RTMRetryCount); // Retry on abort
+    bind(L_rtm_retry);
+  }
+  andi_(R0, mark_word, markOopDesc::monitor_value);  // inflated vs stack-locked|neutral|biased
+  bne(CCR0, IsInflated);
+
+  if (PrintPreciseRTMLockingStatistics || profile_rtm) {
+    Label L_noincrement;
+    if (RTMTotalCountIncrRate > 1) {
+      branch_on_random_using_tb(tmp, (int)RTMTotalCountIncrRate, L_noincrement);
+    }
+    assert(stack_rtm_counters != NULL, "should not be NULL when profiling RTM");
+    load_const_optimized(tmp, (address)stack_rtm_counters->total_count_addr(), R0);
+    //atomic_inc_ptr(tmp, /*temp, will be reloaded*/mark_word); We don't increment atomically
+    ldx(mark_word, tmp);
+    addi(mark_word, mark_word, 1);
+    stdx(mark_word, tmp);
+    bind(L_noincrement);
+  }
+  tbegin_();
+  beq(CCR0, L_on_abort);
+  ld(mark_word, oopDesc::mark_offset_in_bytes(), obj);         // Reload in transaction, conflicts need to be tracked.
+  andi(R0, mark_word, markOopDesc::biased_lock_mask_in_place); // look at 3 lock bits
+  cmpwi(flag, R0, markOopDesc::unlocked_value);                // bits = 001 unlocked
+  beq(flag, DONE_LABEL);                                       // all done if unlocked
+
+  if (UseRTMXendForLockBusy) {
+    tend_();
+    b(L_decrement_retry);
+  } else {
+    tabort_();
+  }
+  bind(L_on_abort);
+  const Register abort_status_Reg = tmp;
+  mftexasr(abort_status_Reg);
+  if (PrintPreciseRTMLockingStatistics || profile_rtm) {
+    rtm_profiling(abort_status_Reg, /*temp*/mark_word, stack_rtm_counters, method_data, profile_rtm);
+  }
+  ld(mark_word, oopDesc::mark_offset_in_bytes(), obj); // reload
+  if (RTMRetryCount > 0) {
+    // Retry on lock abort if abort status is not permanent.
+    rtm_retry_lock_on_abort(retry_on_abort_count_Reg, abort_status_Reg, L_rtm_retry, &L_decrement_retry);
+  } else {
+    bind(L_decrement_retry);
+  }
+}
+
+// Use RTM for inflating locks
+// inputs: obj       (object to lock)
+//         mark_word (current header - KILLED)
+//         boxReg    (on-stack box address (displaced header location) - KILLED)
+void MacroAssembler::rtm_inflated_locking(ConditionRegister flag,
+                                          Register obj, Register mark_word, Register boxReg,
+                                          Register retry_on_busy_count_Reg, Register retry_on_abort_count_Reg,
+                                          RTMLockingCounters* rtm_counters,
+                                          Metadata* method_data, bool profile_rtm,
+                                          Label& DONE_LABEL) {
+  assert(UseRTMLocking, "why call this otherwise?");
+  Label L_rtm_retry, L_decrement_retry, L_on_abort;
+  // Clean monitor_value bit to get valid pointer.
+  int owner_offset = ObjectMonitor::owner_offset_in_bytes() - markOopDesc::monitor_value;
+
+  // Store non-null, using boxReg instead of (intptr_t)markOopDesc::unused_mark().
+  std(boxReg, BasicLock::displaced_header_offset_in_bytes(), boxReg);
+  const Register tmpReg = boxReg;
+  const Register owner_addr_Reg = mark_word;
+  addi(owner_addr_Reg, mark_word, owner_offset);
+
+  if (RTMRetryCount > 0) {
+    load_const_optimized(retry_on_busy_count_Reg, RTMRetryCount);  // Retry on lock busy.
+    load_const_optimized(retry_on_abort_count_Reg, RTMRetryCount); // Retry on abort.
+    bind(L_rtm_retry);
+  }
+  if (PrintPreciseRTMLockingStatistics || profile_rtm) {
+    Label L_noincrement;
+    if (RTMTotalCountIncrRate > 1) {
+      branch_on_random_using_tb(R0, (int)RTMTotalCountIncrRate, L_noincrement);
+    }
+    assert(rtm_counters != NULL, "should not be NULL when profiling RTM");
+    load_const(R0, (address)rtm_counters->total_count_addr(), tmpReg);
+    //atomic_inc_ptr(R0, tmpReg); We don't increment atomically
+    ldx(tmpReg, R0);
+    addi(tmpReg, tmpReg, 1);
+    stdx(tmpReg, R0);
+    bind(L_noincrement);
+  }
+  tbegin_();
+  beq(CCR0, L_on_abort);
+  // We don't reload mark word. Will only be reset at safepoint.
+  ld(R0, 0, owner_addr_Reg); // Load in transaction, conflicts need to be tracked.
+  cmpdi(flag, R0, 0);
+  beq(flag, DONE_LABEL);
+
+  if (UseRTMXendForLockBusy) {
+    tend_();
+    b(L_decrement_retry);
+  } else {
+    tabort_();
+  }
+  bind(L_on_abort);
+  const Register abort_status_Reg = tmpReg;
+  mftexasr(abort_status_Reg);
+  if (PrintPreciseRTMLockingStatistics || profile_rtm) {
+    rtm_profiling(abort_status_Reg, /*temp*/ owner_addr_Reg, rtm_counters, method_data, profile_rtm);
+    // Restore owner_addr_Reg
+    ld(mark_word, oopDesc::mark_offset_in_bytes(), obj);
+#ifdef ASSERT
+    andi_(R0, mark_word, markOopDesc::monitor_value);
+    asm_assert_ne("must be inflated", 0xa754); // Deflating only allowed at safepoint.
+#endif
+    addi(owner_addr_Reg, mark_word, owner_offset);
+  }
+  if (RTMRetryCount > 0) {
+    // Retry on lock abort if abort status is not permanent.
+    rtm_retry_lock_on_abort(retry_on_abort_count_Reg, abort_status_Reg, L_rtm_retry);
+  }
+
+  // Appears unlocked - try to swing _owner from null to non-null.
+  cmpxchgd(flag, /*current val*/ R0, (intptr_t)0, /*new val*/ R16_thread, owner_addr_Reg,
+           MacroAssembler::MemBarRel | MacroAssembler::MemBarAcq,
+           MacroAssembler::cmpxchgx_hint_acquire_lock(), noreg, &L_decrement_retry, true);
+
+  if (RTMRetryCount > 0) {
+    // success done else retry
+    b(DONE_LABEL);
+    bind(L_decrement_retry);
+    // Spin and retry if lock is busy.
+    rtm_retry_lock_on_busy(retry_on_busy_count_Reg, owner_addr_Reg, L_rtm_retry);
+  } else {
+    bind(L_decrement_retry);
+  }
+}
+
+#endif //  INCLUDE_RTM_OPT
+
 // "The box" is the space on the stack where we copy the object mark.
 void MacroAssembler::compiler_fast_lock_object(ConditionRegister flag, Register oop, Register box,
-                                               Register temp, Register displaced_header, Register current_header) {
+                                               Register temp, Register displaced_header, Register current_header,
+                                               bool try_bias,
+                                               RTMLockingCounters* rtm_counters,
+                                               RTMLockingCounters* stack_rtm_counters,
+                                               Metadata* method_data,
+                                               bool use_rtm, bool profile_rtm) {
   assert_different_registers(oop, box, temp, displaced_header, current_header);
   assert(flag != CCR0, "bad condition register");
   Label cont;
@@ -2006,10 +2365,18 @@
     return;
   }
 
-  if (UseBiasedLocking) {
+  if (try_bias) {
     biased_locking_enter(flag, oop, displaced_header, temp, current_header, cont);
   }
 
+#if INCLUDE_RTM_OPT
+  if (UseRTMForStackLocks && use_rtm) {
+    rtm_stack_locking(flag, oop, displaced_header, temp, /*temp*/ current_header,
+                      stack_rtm_counters, method_data, profile_rtm,
+                      cont, object_has_monitor);
+  }
+#endif // INCLUDE_RTM_OPT
+
   // Handle existing monitor.
   if ((EmitSync & 0x02) == 0) {
     // The object has an existing monitor iff (mark & monitor_value) != 0.
@@ -2066,14 +2433,22 @@
     bind(object_has_monitor);
     // The object's monitor m is unlocked iff m->owner == NULL,
     // otherwise m->owner may contain a thread or a stack address.
-    //
+
+#if INCLUDE_RTM_OPT
+    // Use the same RTM locking code in 32- and 64-bit VM.
+    if (use_rtm) {
+      rtm_inflated_locking(flag, oop, displaced_header, box, temp, /*temp*/ current_header,
+                           rtm_counters, method_data, profile_rtm, cont);
+    } else {
+#endif // INCLUDE_RTM_OPT
+
     // Try to CAS m->owner from NULL to current thread.
     addi(temp, displaced_header, ObjectMonitor::owner_offset_in_bytes()-markOopDesc::monitor_value);
     li(displaced_header, 0);
     // CmpxchgX sets flag to cmpX(current, displaced).
     cmpxchgd(/*flag=*/flag,
              /*current_value=*/current_header,
-             /*compare_value=*/displaced_header,
+             /*compare_value=*/(intptr_t)0,
              /*exchange_value=*/R16_thread,
              /*where=*/temp,
              MacroAssembler::MemBarRel | MacroAssembler::MemBarAcq,
@@ -2095,6 +2470,10 @@
     //asm_assert_mem4_isnot_zero(ObjectMonitor::OwnerIsThread_offset_in_bytes(), temp,
     //                           "monitor->OwnerIsThread shouldn't be 0", -1);
 #   endif
+
+#if INCLUDE_RTM_OPT
+    } // use_rtm()
+#endif
   }
 
   bind(cont);
@@ -2103,7 +2482,8 @@
 }
 
 void MacroAssembler::compiler_fast_unlock_object(ConditionRegister flag, Register oop, Register box,
-                                                 Register temp, Register displaced_header, Register current_header) {
+                                                 Register temp, Register displaced_header, Register current_header,
+                                                 bool try_bias, bool use_rtm) {
   assert_different_registers(oop, box, temp, displaced_header, current_header);
   assert(flag != CCR0, "bad condition register");
   Label cont;
@@ -2115,10 +2495,24 @@
     return;
   }
 
-  if (UseBiasedLocking) {
+  if (try_bias) {
     biased_locking_exit(flag, oop, current_header, cont);
   }
 
+#if INCLUDE_RTM_OPT
+  if (UseRTMForStackLocks && use_rtm) {
+    assert(!UseBiasedLocking, "Biased locking is not supported with RTM locking");
+    Label L_regular_unlock;
+    ld(current_header, oopDesc::mark_offset_in_bytes(), oop);         // fetch markword
+    andi(R0, current_header, markOopDesc::biased_lock_mask_in_place); // look at 3 lock bits
+    cmpwi(flag, R0, markOopDesc::unlocked_value);                     // bits = 001 unlocked
+    bne(flag, L_regular_unlock);                                      // else RegularLock
+    tend_();                                                          // otherwise end...
+    b(cont);                                                          // ... and we're done
+    bind(L_regular_unlock);
+  }
+#endif
+
   // Find the lock address and load the displaced header from the stack.
   ld(displaced_header, BasicLock::displaced_header_offset_in_bytes(), box);
 
@@ -2129,13 +2523,12 @@
   // Handle existing monitor.
   if ((EmitSync & 0x02) == 0) {
     // The object has an existing monitor iff (mark & monitor_value) != 0.
+    RTM_OPT_ONLY( if (!(UseRTMForStackLocks && use_rtm)) ) // skip load if already done
     ld(current_header, oopDesc::mark_offset_in_bytes(), oop);
-    andi(temp, current_header, markOopDesc::monitor_value);
-    cmpdi(flag, temp, 0);
-    bne(flag, object_has_monitor);
+    andi_(R0, current_header, markOopDesc::monitor_value);
+    bne(CCR0, object_has_monitor);
   }
 
-
   // Check if it is still a light weight lock, this is is true if we see
   // the stack address of the basicLock in the markOop of the object.
   // Cmpxchg sets flag to cmpd(current_header, box).
@@ -2158,6 +2551,20 @@
     bind(object_has_monitor);
     addi(current_header, current_header, -markOopDesc::monitor_value); // monitor
     ld(temp,             ObjectMonitor::owner_offset_in_bytes(), current_header);
+
+    // It's inflated.
+#if INCLUDE_RTM_OPT
+    if (use_rtm) {
+      Label L_regular_inflated_unlock;
+      // Clean monitor_value bit to get valid pointer
+      cmpdi(flag, temp, 0);
+      bne(flag, L_regular_inflated_unlock);
+      tend_();
+      b(cont);
+      bind(L_regular_inflated_unlock);
+    }
+#endif
+
     ld(displaced_header, ObjectMonitor::recursions_offset_in_bytes(), current_header);
     xorr(temp, R16_thread, temp);      // Will be 0 if we are the owner.
     orr(temp, temp, displaced_header); // Will be 0 if there are 0 recursions.
@@ -2441,6 +2848,8 @@
   //   oop_result
   //   R16_thread->in_bytes(JavaThread::vm_result_offset())
 
+  verify_thread();
+
   ld(oop_result, in_bytes(JavaThread::vm_result_offset()), R16_thread);
   li(R0, 0);
   std(R0, in_bytes(JavaThread::vm_result_offset()), R16_thread);
@@ -2462,26 +2871,24 @@
   std(R0, in_bytes(JavaThread::vm_result_2_offset()), R16_thread);
 }
 
-
-void MacroAssembler::encode_klass_not_null(Register dst, Register src) {
+Register MacroAssembler::encode_klass_not_null(Register dst, Register src) {
   Register current = (src != noreg) ? src : dst; // Klass is in dst if no src provided.
   if (Universe::narrow_klass_base() != 0) {
     // Use dst as temp if it is free.
-    load_const(R0, Universe::narrow_klass_base(), (dst != current && dst != R0) ? dst : noreg);
-    sub(dst, current, R0);
+    sub_const_optimized(dst, current, Universe::narrow_klass_base(), R0);
     current = dst;
   }
   if (Universe::narrow_klass_shift() != 0) {
     srdi(dst, current, Universe::narrow_klass_shift());
     current = dst;
   }
-  mr_if_needed(dst, current); // Move may be required.
+  return current;
 }
 
 void MacroAssembler::store_klass(Register dst_oop, Register klass, Register ck) {
   if (UseCompressedClassPointers) {
-    encode_klass_not_null(ck, klass);
-    stw(ck, oopDesc::klass_offset_in_bytes(), dst_oop);
+    Register compressedKlass = encode_klass_not_null(ck, klass);
+    stw(compressedKlass, oopDesc::klass_offset_in_bytes(), dst_oop);
   } else {
     std(klass, oopDesc::klass_offset_in_bytes(), dst_oop);
   }
@@ -2514,8 +2921,7 @@
     sldi(shifted_src, src, Universe::narrow_klass_shift());
   }
   if (Universe::narrow_klass_base() != 0) {
-    load_const(R0, Universe::narrow_klass_base());
-    add(dst, shifted_src, R0);
+    add_const_optimized(dst, shifted_src, Universe::narrow_klass_base(), R0);
   }
 }
 
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 #define CPU_PPC_VM_MACROASSEMBLER_PPC_HPP
 
 #include "asm/assembler.hpp"
+#include "runtime/rtmLocking.hpp"
 #include "utilities/macros.hpp"
 
 // MacroAssembler extends Assembler by a few frequently used macros.
@@ -432,8 +433,8 @@
                 int semantics, bool cmpxchgx_hint = false,
                 Register int_flag_success = noreg, bool contention_hint = false);
   void cmpxchgd(ConditionRegister flag,
-                Register dest_current_value, Register compare_value, Register exchange_value, Register addr_base,
-                int semantics, bool cmpxchgx_hint = false,
+                Register dest_current_value, RegisterOrConstant compare_value, Register exchange_value,
+                Register addr_base, int semantics, bool cmpxchgx_hint = false,
                 Register int_flag_success = noreg, Label* failed = NULL, bool contention_hint = false);
 
   // interface method calling
@@ -506,8 +507,42 @@
   // biased locking exit case failed.
   void biased_locking_exit(ConditionRegister cr_reg, Register mark_addr, Register temp_reg, Label& done);
 
-  void compiler_fast_lock_object(  ConditionRegister flag, Register oop, Register box, Register tmp1, Register tmp2, Register tmp3);
-  void compiler_fast_unlock_object(ConditionRegister flag, Register oop, Register box, Register tmp1, Register tmp2, Register tmp3);
+  void atomic_inc_ptr(Register addr, Register result, int simm16 = 1);
+  void atomic_ori_int(Register addr, Register result, int uimm16);
+
+#if INCLUDE_RTM_OPT
+  void rtm_counters_update(Register abort_status, Register rtm_counters);
+  void branch_on_random_using_tb(Register tmp, int count, Label& brLabel);
+  void rtm_abort_ratio_calculation(Register rtm_counters_reg, RTMLockingCounters* rtm_counters,
+                                   Metadata* method_data);
+  void rtm_profiling(Register abort_status_Reg, Register temp_Reg,
+                     RTMLockingCounters* rtm_counters, Metadata* method_data, bool profile_rtm);
+  void rtm_retry_lock_on_abort(Register retry_count, Register abort_status,
+                               Label& retryLabel, Label* checkRetry = NULL);
+  void rtm_retry_lock_on_busy(Register retry_count, Register owner_addr, Label& retryLabel);
+  void rtm_stack_locking(ConditionRegister flag, Register obj, Register mark_word, Register tmp,
+                         Register retry_on_abort_count,
+                         RTMLockingCounters* stack_rtm_counters,
+                         Metadata* method_data, bool profile_rtm,
+                         Label& DONE_LABEL, Label& IsInflated);
+  void rtm_inflated_locking(ConditionRegister flag, Register obj, Register mark_word, Register box,
+                            Register retry_on_busy_count, Register retry_on_abort_count,
+                            RTMLockingCounters* rtm_counters,
+                            Metadata* method_data, bool profile_rtm,
+                            Label& DONE_LABEL);
+#endif
+
+  void compiler_fast_lock_object(ConditionRegister flag, Register oop, Register box,
+                                 Register tmp1, Register tmp2, Register tmp3,
+                                 bool try_bias = UseBiasedLocking,
+                                 RTMLockingCounters* rtm_counters = NULL,
+                                 RTMLockingCounters* stack_rtm_counters = NULL,
+                                 Metadata* method_data = NULL,
+                                 bool use_rtm = false, bool profile_rtm = false);
+
+  void compiler_fast_unlock_object(ConditionRegister flag, Register oop, Register box,
+                                   Register tmp1, Register tmp2, Register tmp3,
+                                   bool try_bias = UseBiasedLocking, bool use_rtm = false);
 
   // Support for serializing memory accesses between threads
   void serialize_memory(Register thread, Register tmp1, Register tmp2);
@@ -576,7 +611,7 @@
                                       Register tmp = noreg);
 
   // Null allowed.
-  inline void load_heap_oop(Register d, RegisterOrConstant offs, Register s1 = noreg);
+  inline void load_heap_oop(Register d, RegisterOrConstant offs, Register s1 = noreg, Label *is_null = NULL);
 
   // Encode/decode heap oop. Oop may not be null, else en/decoding goes wrong.
   // src == d allowed.
@@ -593,7 +628,7 @@
   void store_klass_gap(Register dst_oop, Register val = noreg); // Will store 0 if val not specified.
   static int instr_size_for_decode_klass_not_null();
   void decode_klass_not_null(Register dst, Register src = noreg);
-  void encode_klass_not_null(Register dst, Register src = noreg);
+  Register encode_klass_not_null(Register dst, Register src = noreg);
 
   // Load common heap base into register.
   void reinit_heapbase(Register d, Register tmp = noreg);
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -333,19 +333,29 @@
   }
 }
 
-inline void MacroAssembler::load_heap_oop(Register d, RegisterOrConstant offs, Register s1) {
+inline void MacroAssembler::load_heap_oop(Register d, RegisterOrConstant offs, Register s1, Label *is_null) {
   if (UseCompressedOops) {
     lwz(d, offs, s1);
-    decode_heap_oop(d);
+    if (is_null != NULL) {
+      cmpwi(CCR0, d, 0);
+      beq(CCR0, *is_null);
+      decode_heap_oop_not_null(d);
+    } else {
+      decode_heap_oop(d);
+    }
   } else {
     ld(d, offs, s1);
+    if (is_null != NULL) {
+      cmpdi(CCR0, d, 0);
+      beq(CCR0, *is_null);
+    }
   }
 }
 
 inline Register MacroAssembler::encode_heap_oop_not_null(Register d, Register src) {
   Register current = (src != noreg) ? src : d; // Oop to be compressed is in d if no src provided.
   if (Universe::narrow_oop_base_overlaps()) {
-    sub(d, current, R30);
+    sub_const_optimized(d, current, Universe::narrow_oop_base(), R0);
     current = d;
   }
   if (Universe::narrow_oop_shift() != 0) {
@@ -358,7 +368,7 @@
 inline Register MacroAssembler::decode_heap_oop_not_null(Register d, Register src) {
   if (Universe::narrow_oop_base_disjoint() && src != noreg && src != d &&
       Universe::narrow_oop_shift() != 0) {
-    mr(d, R30);
+    load_const_optimized(d, Universe::narrow_oop_base(), R0);
     rldimi(d, src, Universe::narrow_oop_shift(), 32-Universe::narrow_oop_shift());
     return d;
   }
@@ -369,7 +379,7 @@
     current = d;
   }
   if (Universe::narrow_oop_base() != NULL) {
-    add(d, current, R30);
+    add_const_optimized(d, current, Universe::narrow_oop_base(), R0);
     current = d;
   }
   return current; // Decoded oop is in this register.
@@ -377,11 +387,19 @@
 
 inline void MacroAssembler::decode_heap_oop(Register d) {
   Label isNull;
+  bool use_isel = false;
   if (Universe::narrow_oop_base() != NULL) {
     cmpwi(CCR0, d, 0);
-    beq(CCR0, isNull);
+    if (VM_Version::has_isel()) {
+      use_isel = true;
+    } else {
+      beq(CCR0, isNull);
+    }
   }
   decode_heap_oop_not_null(d);
+  if (use_isel) {
+    isel_0(d, CCR0, Assembler::equal);
+  }
   bind(isNull);
 }
 
--- a/hotspot/src/cpu/ppc/vm/methodHandles_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/methodHandles_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -466,7 +466,7 @@
                  strstr(adaptername, "linkTo") == NULL);    // static linkers don't have MH
   const char* mh_reg_name = has_mh ? "R23_method_handle" : "G23";
   tty->print_cr("MH %s %s="INTPTR_FORMAT " sp=" INTPTR_FORMAT,
-                adaptername, mh_reg_name, (intptr_t) mh, entry_sp);
+                adaptername, mh_reg_name, p2i(mh), p2i(entry_sp));
 
   if (Verbose) {
     tty->print_cr("Registers:");
--- a/hotspot/src/cpu/ppc/vm/methodHandles_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/methodHandles_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,9 +27,6 @@
 // These definitions are inlined into class MethodHandles.
 
 // Adapters
-//static unsigned int adapter_code_size() {
-//  return 32*K DEBUG_ONLY(+ 16*K) + (TraceMethodHandles ? 16*K : 0) + (VerifyMethodHandles ? 32*K : 0);
-//}
 enum /* platform_dependent_constants */ {
   adapter_code_size = NOT_LP64(16000 DEBUG_ONLY(+ 25000)) LP64_ONLY(32000 DEBUG_ONLY(+ 150000))
 };
@@ -45,7 +42,9 @@
 
   static void verify_method_handle(MacroAssembler* _masm, Register mh_reg,
                                    Register temp_reg, Register temp2_reg) {
-    Unimplemented();
+    verify_klass(_masm, mh_reg, SystemDictionary::WK_KLASS_ENUM_NAME(java_lang_invoke_MethodHandle),
+                 temp_reg, temp2_reg,
+                 "reference is a MH");
   }
 
   static void verify_ref_kind(MacroAssembler* _masm, int ref_kind, Register member_reg, Register temp) NOT_DEBUG_RETURN;
--- a/hotspot/src/cpu/ppc/vm/ppc.ad	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/ppc.ad	Wed Jul 05 20:32:21 2017 +0200
@@ -447,8 +447,8 @@
   R26,
   R27,
   R28,
-/*R29*/             // global TOC
-/*R30*/             // Narrow Oop Base
+/*R29,*/             // global TOC
+  R30,
   R31
 );
 
@@ -484,58 +484,11 @@
   R26,
   R27,
   R28,
-/*R29*/
-/*R30*/             // Narrow Oop Base
+/*R29,*/
+  R30,
   R31
 );
 
-// Complement-required-in-pipeline operands for narrow oops.
-reg_class bits32_reg_ro_not_complement (
-/*R0*/     // R0
-  R1,      // SP
-  R2,      // TOC
-  R3,
-  R4,
-  R5,
-  R6,
-  R7,
-  R8,
-  R9,
-  R10,
-  R11,
-  R12,
-/*R13,*/   // system thread id
-  R14,
-  R15,
-  R16,    // R16_thread
-  R17,
-  R18,
-  R19,
-  R20,
-  R21,
-  R22,
-/*R23,
-  R24,
-  R25,
-  R26,
-  R27,
-  R28,*/
-/*R29,*/ // TODO: let allocator handle TOC!!
-/*R30,*/
-  R31
-);
-
-// Complement-required-in-pipeline operands for narrow oops.
-// See 64-bit declaration.
-reg_class bits32_reg_ro_complement (
-  R23,
-  R24,
-  R25,
-  R26,
-  R27,
-  R28
-);
-
 reg_class rscratch1_bits32_reg(R11);
 reg_class rscratch2_bits32_reg(R12);
 reg_class rarg1_bits32_reg(R3);
@@ -591,8 +544,8 @@
   R26_H, R26,
   R27_H, R27,
   R28_H, R28,
-/*R29_H, R29*/
-/*R30_H, R30*/
+/*R29_H, R29,*/
+  R30_H, R30,
   R31_H, R31
 );
 
@@ -629,8 +582,8 @@
   R26_H, R26,
   R27_H, R27,
   R28_H, R28,
-/*R29_H, R29*/
-/*R30_H, R30*/
+/*R29_H, R29,*/
+  R30_H, R30,
   R31_H, R31
 );
 
@@ -667,8 +620,8 @@
   R26_H, R26,
   R27_H, R27,
   R28_H, R28,
-/*R29_H, R29*/
-/*R30_H, R30*/
+/*R29_H, R29,*/
+  R30_H, R30,
   R31_H, R31
 );
 
@@ -704,64 +657,11 @@
   R26_H, R26,
   R27_H, R27,
   R28_H, R28,
-/*R29_H, R29*/ // TODO: let allocator handle TOC!!
-/*R30_H, R30,*/
+/*R29_H, R29,*/ // TODO: let allocator handle TOC!!
+  R30_H, R30,
   R31_H, R31
 );
 
-// Complement-required-in-pipeline operands.
-reg_class bits64_reg_ro_not_complement (
-/*R0_H,  R0*/     // R0
-  R1_H,  R1,      // SP
-  R2_H,  R2,      // TOC
-  R3_H,  R3,
-  R4_H,  R4,
-  R5_H,  R5,
-  R6_H,  R6,
-  R7_H,  R7,
-  R8_H,  R8,
-  R9_H,  R9,
-  R10_H, R10,
-  R11_H, R11,
-  R12_H, R12,
-/*R13_H, R13*/   // system thread id
-  R14_H, R14,
-  R15_H, R15,
-  R16_H, R16,    // R16_thread
-  R17_H, R17,
-  R18_H, R18,
-  R19_H, R19,
-  R20_H, R20,
-  R21_H, R21,
-  R22_H, R22,
-/*R23_H, R23,
-  R24_H, R24,
-  R25_H, R25,
-  R26_H, R26,
-  R27_H, R27,
-  R28_H, R28,*/
-/*R29_H, R29*/ // TODO: let allocator handle TOC!!
-/*R30_H, R30,*/
-  R31_H, R31
-);
-
-// Complement-required-in-pipeline operands.
-// This register mask is used for the trap instructions that implement
-// the null checks on AIX. The trap instruction first computes the
-// complement of the value it shall trap on. Because of this, the
-// instruction can not be scheduled in the same cycle as an other
-// instruction reading the normal value of the same register. So we
-// force the value to check into 'bits64_reg_ro_not_complement'
-// and then copy it to 'bits64_reg_ro_complement' for the trap.
-reg_class bits64_reg_ro_complement (
-  R23_H, R23,
-  R24_H, R24,
-  R25_H, R25,
-  R26_H, R26,
-  R27_H, R27,
-  R28_H, R28
-);
-
 
 // ----------------------------
 // Special Class for Condition Code Flags Register
@@ -777,6 +677,17 @@
   CCR7
 );
 
+reg_class int_flags_ro(
+  CCR0,
+  CCR1,
+  CCR2,
+  CCR3,
+  CCR4,
+  CCR5,
+  CCR6,
+  CCR7
+);
+
 reg_class int_flags_CR0(CCR0);
 reg_class int_flags_CR1(CCR1);
 reg_class int_flags_CR6(CCR6);
@@ -2876,7 +2787,7 @@
 
   // Use release_store for card-marking to ensure that previous
   // oop-stores are visible before the card-mark change.
-  enc_class enc_cms_card_mark(memory mem, iRegLdst releaseFieldAddr) %{
+  enc_class enc_cms_card_mark(memory mem, iRegLdst releaseFieldAddr, flagsReg crx) %{
     // TODO: PPC port $archOpcode(ppc64Opcode_compound);
     // FIXME: Implement this as a cmove and use a fixed condition code
     // register which is written on every transition to compiled code,
@@ -2897,8 +2808,8 @@
     // Check CMSCollectorCardTableModRefBSExt::_requires_release and do the
     // StoreStore barrier conditionally.
     __ lwz(R0, 0, $releaseFieldAddr$$Register);
-    __ cmpwi(CCR0, R0, 0);
-    __ beq_predict_taken(CCR0, skip_storestore);
+    __ cmpwi($crx$$CondRegister, R0, 0);
+    __ beq_predict_taken($crx$$CondRegister, skip_storestore);
 #endif
     __ li(R0, 0);
     __ membar(Assembler::StoreStore);
@@ -3108,7 +3019,7 @@
     nodes->push(n2);
   %}
 
-  enc_class enc_cmove_reg(iRegIdst dst, flagsReg crx, iRegIsrc src, cmpOp cmp) %{
+  enc_class enc_cmove_reg(iRegIdst dst, flagsRegSrc crx, iRegIsrc src, cmpOp cmp) %{
     // TODO: PPC port $archOpcode(ppc64Opcode_cmove);
 
     MacroAssembler _masm(&cbuf);
@@ -3123,7 +3034,7 @@
     __ bind(done);
   %}
 
-  enc_class enc_cmove_imm(iRegIdst dst, flagsReg crx, immI16 src, cmpOp cmp) %{
+  enc_class enc_cmove_imm(iRegIdst dst, flagsRegSrc crx, immI16 src, cmpOp cmp) %{
     // TODO: PPC port $archOpcode(ppc64Opcode_cmove);
 
     MacroAssembler _masm(&cbuf);
@@ -3269,7 +3180,7 @@
     __ bind(done);
   %}
 
-  enc_class enc_cmove_bso_stackSlotL(iRegLdst dst, flagsReg crx, stackSlotL mem ) %{
+  enc_class enc_cmove_bso_stackSlotL(iRegLdst dst, flagsRegSrc crx, stackSlotL mem ) %{
     // TODO: PPC port $archOpcode(ppc64Opcode_cmove);
 
     MacroAssembler _masm(&cbuf);
@@ -3281,7 +3192,7 @@
     __ bind(done);
   %}
 
-  enc_class enc_bc(flagsReg crx, cmpOp cmp, Label lbl) %{
+  enc_class enc_bc(flagsRegSrc crx, cmpOp cmp, Label lbl) %{
     // TODO: PPC port $archOpcode(ppc64Opcode_bc);
 
     MacroAssembler _masm(&cbuf);
@@ -3309,7 +3220,7 @@
           l);
   %}
 
-  enc_class enc_bc_far(flagsReg crx, cmpOp cmp, Label lbl) %{
+  enc_class enc_bc_far(flagsRegSrc crx, cmpOp cmp, Label lbl) %{
     // The scheduler doesn't know about branch shortening, so we set the opcode
     // to ppc64Opcode_bc in order to hide this detail from the scheduler.
     // TODO: PPC port $archOpcode(ppc64Opcode_bc);
@@ -3341,7 +3252,7 @@
   %}
 
   // Branch used with Power6 scheduling (can be shortened without changing the node).
-  enc_class enc_bc_short_far(flagsReg crx, cmpOp cmp, Label lbl) %{
+  enc_class enc_bc_short_far(flagsRegSrc crx, cmpOp cmp, Label lbl) %{
     // The scheduler doesn't know about branch shortening, so we set the opcode
     // to ppc64Opcode_bc in order to hide this detail from the scheduler.
     // TODO: PPC port $archOpcode(ppc64Opcode_bc);
@@ -4700,6 +4611,15 @@
   interface(REG_INTER);
 %}
 
+operand flagsRegSrc() %{
+  constraint(ALLOC_IN_RC(int_flags_ro));
+  match(RegFlags);
+  match(flagsReg);
+  match(flagsRegCR0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
 // Condition Code Flag Register CR0
 operand flagsRegCR0() %{
   constraint(ALLOC_IN_RC(int_flags_CR0));
@@ -4783,6 +4703,13 @@
   predicate(false /* TODO: PPC port MatchDecodeNodes*/);
   constraint(ALLOC_IN_RC(bits32_reg_ro));
   match(DecodeN reg);
+  format %{ "$reg" %}
+  interface(REG_INTER)
+%}
+
+operand iRegN2P_klass(iRegNsrc reg) %{
+  predicate(Universe::narrow_klass_base() == NULL && Universe::narrow_klass_shift() == 0);
+  constraint(ALLOC_IN_RC(bits32_reg_ro));
   match(DecodeNKlass reg);
   format %{ "$reg" %}
   interface(REG_INTER)
@@ -4839,6 +4766,19 @@
   predicate(false /* TODO: PPC port MatchDecodeNodes*/);
   constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(DecodeN reg);
+  op_cost(100);
+  format %{ "[$reg]" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index(0x0);
+    scale(0x0);
+    disp(0x0);
+  %}
+%}
+
+operand indirectNarrow_klass(iRegNsrc reg) %{
+  predicate(Universe::narrow_klass_base() == NULL && Universe::narrow_klass_shift() == 0);
+  constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(DecodeNKlass reg);
   op_cost(100);
   format %{ "[$reg]" %}
@@ -4855,6 +4795,19 @@
   predicate(false /* TODO: PPC port MatchDecodeNodes*/);
   constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(AddP (DecodeN reg) offset);
+  op_cost(100);
+  format %{ "[$reg + $offset]" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index(0x0);
+    scale(0x0);
+    disp($offset);
+  %}
+%}
+
+operand indOffset16Narrow_klass(iRegNsrc reg, immL16 offset) %{
+  predicate(Universe::narrow_klass_base() == NULL && Universe::narrow_klass_shift() == 0);
+  constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(AddP (DecodeNKlass reg) offset);
   op_cost(100);
   format %{ "[$reg + $offset]" %}
@@ -4871,6 +4824,19 @@
   predicate(false /* TODO: PPC port MatchDecodeNodes*/);
   constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(AddP (DecodeN reg) offset);
+  op_cost(100);
+  format %{ "[$reg + $offset]" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index(0x0);
+    scale(0x0);
+    disp($offset);
+  %}
+%}
+
+operand indOffset16NarrowAlg4_klass(iRegNsrc reg, immL16Alg4 offset) %{
+  predicate(Universe::narrow_klass_base() == NULL && Universe::narrow_klass_shift() == 0);
+  constraint(ALLOC_IN_RC(bits64_reg_ro));
   match(AddP (DecodeNKlass reg) offset);
   op_cost(100);
   format %{ "[$reg + $offset]" %}
@@ -4998,9 +4964,9 @@
 // encoding and format. The classic case of this is memory operands.
 // Indirect is not included since its use is limited to Compare & Swap.
 
-opclass memory(indirect, indOffset16 /*, indIndex, tlsReference*/, indirectNarrow, indOffset16Narrow);
+opclass memory(indirect, indOffset16 /*, indIndex, tlsReference*/, indirectNarrow, indirectNarrow_klass, indOffset16Narrow, indOffset16Narrow_klass);
 // Memory operand where offsets are 4-aligned. Required for ld, std.
-opclass memoryAlg4(indirect, indOffset16Alg4, indirectNarrow, indOffset16NarrowAlg4);
+opclass memoryAlg4(indirect, indOffset16Alg4, indirectNarrow, indOffset16NarrowAlg4, indOffset16NarrowAlg4_klass);
 opclass indirectMemory(indirect, indirectNarrow);
 
 // Special opclass for I and ConvL2I.
@@ -5009,7 +4975,7 @@
 // Operand classes to match encode and decode. iRegN_P2N is only used
 // for storeN. I have never seen an encode node elsewhere.
 opclass iRegN_P2N(iRegNsrc, iRegP2N);
-opclass iRegP_N2P(iRegPsrc, iRegN2P);
+opclass iRegP_N2P(iRegPsrc, iRegN2P, iRegN2P_klass);
 
 //----------PIPELINE-----------------------------------------------------------
 
@@ -5593,6 +5559,19 @@
   ins_pipe(pipe_class_memory);
 %}
 
+instruct loadN2P_klass_unscaled(iRegPdst dst, memory mem) %{
+  match(Set dst (DecodeNKlass (LoadNKlass mem)));
+  // SAPJVM GL 2014-05-21 Differs.
+  predicate(Universe::narrow_klass_base() == NULL && Universe::narrow_klass_shift() == 0 &&
+            _kids[0]->_leaf->as_Load()->is_unordered());
+  ins_cost(MEMORY_REF_COST);
+
+  format %{ "LWZ     $dst, $mem \t// DecodeN (unscaled)" %}
+  size(4);
+  ins_encode( enc_lwz(dst, mem) );
+  ins_pipe(pipe_class_memory);
+%}
+
 // Load Pointer
 instruct loadP(iRegPdst dst, memoryAlg4 mem) %{
   match(Set dst (LoadP mem));
@@ -5669,8 +5648,9 @@
 %}
 
 // Load Float acquire.
-instruct loadF_ac(regF dst, memory mem) %{
+instruct loadF_ac(regF dst, memory mem, flagsRegCR0 cr0) %{
   match(Set dst (LoadF mem));
+  effect(TEMP cr0);
   ins_cost(3*MEMORY_REF_COST);
 
   format %{ "LFS     $dst, $mem \t// acquire\n\t"
@@ -5705,8 +5685,9 @@
 %}
 
 // Load Double - aligned acquire.
-instruct loadD_ac(regD dst, memory mem) %{
+instruct loadD_ac(regD dst, memory mem, flagsRegCR0 cr0) %{
   match(Set dst (LoadD mem));
+  effect(TEMP cr0);
   ins_cost(3*MEMORY_REF_COST);
 
   format %{ "LFD     $dst, $mem \t// acquire\n\t"
@@ -6034,11 +6015,10 @@
 instruct loadBase(iRegLdst dst) %{
   effect(DEF dst);
 
-  format %{ "MR      $dst, r30_heapbase" %}
-  size(4);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_or);
-    __ mr($dst$$Register, R30);
+  format %{ "LoadConst $dst, heapbase" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ load_const_optimized($dst$$Register, Universe::narrow_oop_base(), R0);
   %}
   ins_pipe(pipe_class_default);
 %}
@@ -6114,7 +6094,7 @@
   effect(TEMP src2);
   ins_cost(DEFAULT_COST);
 
-  format %{ "ORI    $dst, $src1, $src2 \t// narrow klass lo" %}
+  format %{ "ORI     $dst, $src1, $src2 \t// narrow klass lo" %}
   size(4);
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_ori);
@@ -6563,8 +6543,9 @@
 // do a releasing store. For this, it gets the address of
 // CMSCollectorCardTableModRefBSExt::_requires_release as input.
 // (Using releaseFieldAddr in the match rule is a hack.)
-instruct storeCM_CMS(memory mem, iRegLdst releaseFieldAddr) %{
+instruct storeCM_CMS(memory mem, iRegLdst releaseFieldAddr, flagsReg crx) %{
   match(Set mem (StoreCM mem releaseFieldAddr));
+  effect(TEMP crx);
   predicate(false);
   ins_cost(MEMORY_REF_COST);
 
@@ -6572,7 +6553,7 @@
   ins_cannot_rematerialize(true);
 
   format %{ "STB     #0, $mem \t// CMS card-mark byte (must be 0!), checking requires_release in [$releaseFieldAddr]" %}
-  ins_encode( enc_cms_card_mark(mem, releaseFieldAddr) );
+  ins_encode( enc_cms_card_mark(mem, releaseFieldAddr, crx) );
   ins_pipe(pipe_class_memory);
 %}
 
@@ -6589,8 +6570,9 @@
   expand %{
     immL baseImm %{ 0 /* TODO: PPC port (jlong)CMSCollectorCardTableModRefBSExt::requires_release_address() */ %}
     iRegLdst releaseFieldAddress;
+    flagsReg crx;
     loadConL_Ex(releaseFieldAddress, baseImm);
-    storeCM_CMS(mem, releaseFieldAddress);
+    storeCM_CMS(mem, releaseFieldAddress, crx);
   %}
 %}
 
@@ -6639,39 +6621,34 @@
   predicate(false);
 
   format %{ "SUB     $dst, $src, oop_base \t// encode" %}
-  size(4);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_subf);
-    __ subf($dst$$Register, R30, $src$$Register);
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ sub_const_optimized($dst$$Register, $src$$Register, Universe::narrow_oop_base(), R0);
   %}
   ins_pipe(pipe_class_default);
 %}
 
 // Conditional sub base.
-instruct cond_sub_base(iRegNdst dst, flagsReg crx, iRegPsrc src1) %{
+instruct cond_sub_base(iRegNdst dst, flagsRegSrc crx, iRegPsrc src1) %{
   // The match rule is needed to make it a 'MachTypeNode'!
   match(Set dst (EncodeP (Binary crx src1)));
   predicate(false);
 
-  ins_variable_size_depending_on_alignment(true);
-
   format %{ "BEQ     $crx, done\n\t"
-            "SUB     $dst, $src1, R30 \t// encode: subtract base if != NULL\n"
+            "SUB     $dst, $src1, heapbase \t// encode: subtract base if != NULL\n"
             "done:" %}
-  size(false /* TODO: PPC PORT (InsertEndGroupPPC64 && Compile::current()->do_hb_scheduling())*/ ? 12 : 8);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_cmove);
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
     Label done;
     __ beq($crx$$CondRegister, done);
-    __ subf($dst$$Register, R30, $src1$$Register);
-    // TODO PPC port __ endgroup_if_needed(_size == 12);
+    __ sub_const_optimized($dst$$Register, $src1$$Register, Universe::narrow_oop_base(), R0);
     __ bind(done);
   %}
   ins_pipe(pipe_class_default);
 %}
 
 // Power 7 can use isel instruction
-instruct cond_set_0_oop(iRegNdst dst, flagsReg crx, iRegPsrc src1) %{
+instruct cond_set_0_oop(iRegNdst dst, flagsRegSrc crx, iRegPsrc src1) %{
   // The match rule is needed to make it a 'MachTypeNode'!
   match(Set dst (EncodeP (Binary crx src1)));
   predicate(false);
@@ -6777,42 +6754,37 @@
   match(Set dst (DecodeN src));
   predicate(false);
 
-  format %{ "ADD     $dst, $src, R30 \t// DecodeN, add oop base" %}
-  size(4);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_add);
-    __ add($dst$$Register, $src$$Register, R30);
+  format %{ "ADD     $dst, $src, heapbase \t// DecodeN, add oop base" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ add_const_optimized($dst$$Register, $src$$Register, Universe::narrow_oop_base(), R0);
   %}
   ins_pipe(pipe_class_default);
 %}
 
 // conditianal add base for expand
-instruct cond_add_base(iRegPdst dst, flagsReg crx, iRegPsrc src1) %{
+instruct cond_add_base(iRegPdst dst, flagsRegSrc crx, iRegPsrc src) %{
   // The match rule is needed to make it a 'MachTypeNode'!
   // NOTICE that the rule is nonsense - we just have to make sure that:
   //  - _matrule->_rChild->_opType == "DecodeN" (see InstructForm::captures_bottom_type() in formssel.cpp)
   //  - we have to match 'crx' to avoid an "illegal USE of non-input: flagsReg crx" error in ADLC.
-  match(Set dst (DecodeN (Binary crx src1)));
+  match(Set dst (DecodeN (Binary crx src)));
   predicate(false);
 
-  ins_variable_size_depending_on_alignment(true);
-
   format %{ "BEQ     $crx, done\n\t"
-            "ADD     $dst, $src1, R30 \t// DecodeN: add oop base if $src1 != NULL\n"
+            "ADD     $dst, $src, heapbase \t// DecodeN: add oop base if $src != NULL\n"
             "done:" %}
-  size(false /* TODO: PPC PORT (InsertEndGroupPPC64 && Compile::current()->do_hb_scheduling()) */? 12 : 8);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_cmove);
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
     Label done;
     __ beq($crx$$CondRegister, done);
-    __ add($dst$$Register, $src1$$Register, R30);
-    // TODO PPC port  __ endgroup_if_needed(_size == 12);
+    __ add_const_optimized($dst$$Register, $src$$Register, Universe::narrow_oop_base(), R0);
     __ bind(done);
   %}
   ins_pipe(pipe_class_default);
 %}
 
-instruct cond_set_0_ptr(iRegPdst dst, flagsReg crx, iRegPsrc src1) %{
+instruct cond_set_0_ptr(iRegPdst dst, flagsRegSrc crx, iRegPsrc src1) %{
   // The match rule is needed to make it a 'MachTypeNode'!
   // NOTICE that the rule is nonsense - we just have to make sure that:
   //  - _matrule->_rChild->_opType == "DecodeN" (see InstructForm::captures_bottom_type() in formssel.cpp)
@@ -6888,7 +6860,7 @@
             Universe::narrow_oop_base_disjoint());
   ins_cost(DEFAULT_COST);
 
-  format %{ "MOV     $dst, R30 \t\n"
+  format %{ "MOV     $dst, heapbase \t\n"
             "RLDIMI  $dst, $src, shift, 32-shift \t// decode with disjoint base" %}
   postalloc_expand %{
     loadBaseNode *n1 = new loadBaseNode();
@@ -6946,7 +6918,7 @@
 
     assert(ra_->is_oop(this) == true, "A decodeN node must produce an oop!");
     ra_->set_oop(n_cond_set, true);
-    
+
     ra_->set_pair(n1->_idx, ra_->get_reg_second(this), ra_->get_reg_first(this));
     ra_->set_pair(n_compare->_idx, ra_->get_reg_second(n_crx), ra_->get_reg_first(n_crx));
     ra_->set_pair(n2->_idx, ra_->get_reg_second(this), ra_->get_reg_first(this));
@@ -7303,7 +7275,7 @@
 //----------Conditional Move---------------------------------------------------
 
 // Cmove using isel.
-instruct cmovI_reg_isel(cmpOp cmp, flagsReg crx, iRegIdst dst, iRegIsrc src) %{
+instruct cmovI_reg_isel(cmpOp cmp, flagsRegSrc crx, iRegIdst dst, iRegIsrc src) %{
   match(Set dst (CMoveI (Binary cmp crx) (Binary dst src)));
   predicate(VM_Version::has_isel());
   ins_cost(DEFAULT_COST);
@@ -7321,7 +7293,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovI_reg(cmpOp cmp, flagsReg crx, iRegIdst dst, iRegIsrc src) %{
+instruct cmovI_reg(cmpOp cmp, flagsRegSrc crx, iRegIdst dst, iRegIsrc src) %{
   match(Set dst (CMoveI (Binary cmp crx) (Binary dst src)));
   predicate(!VM_Version::has_isel());
   ins_cost(DEFAULT_COST+BRANCH_COST);
@@ -7335,7 +7307,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovI_imm(cmpOp cmp, flagsReg crx, iRegIdst dst, immI16 src) %{
+instruct cmovI_imm(cmpOp cmp, flagsRegSrc crx, iRegIdst dst, immI16 src) %{
   match(Set dst (CMoveI (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7349,7 +7321,7 @@
 %}
 
 // Cmove using isel.
-instruct cmovL_reg_isel(cmpOp cmp, flagsReg crx, iRegLdst dst, iRegLsrc src) %{
+instruct cmovL_reg_isel(cmpOp cmp, flagsRegSrc crx, iRegLdst dst, iRegLsrc src) %{
   match(Set dst (CMoveL (Binary cmp crx) (Binary dst src)));
   predicate(VM_Version::has_isel());
   ins_cost(DEFAULT_COST);
@@ -7367,7 +7339,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovL_reg(cmpOp cmp, flagsReg crx, iRegLdst dst, iRegLsrc src) %{
+instruct cmovL_reg(cmpOp cmp, flagsRegSrc crx, iRegLdst dst, iRegLsrc src) %{
   match(Set dst (CMoveL (Binary cmp crx) (Binary dst src)));
   predicate(!VM_Version::has_isel());
   ins_cost(DEFAULT_COST+BRANCH_COST);
@@ -7381,7 +7353,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovL_imm(cmpOp cmp, flagsReg crx, iRegLdst dst, immL16 src) %{
+instruct cmovL_imm(cmpOp cmp, flagsRegSrc crx, iRegLdst dst, immL16 src) %{
   match(Set dst (CMoveL (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7395,7 +7367,7 @@
 %}
 
 // Cmove using isel.
-instruct cmovN_reg_isel(cmpOp cmp, flagsReg crx, iRegNdst dst, iRegNsrc src) %{
+instruct cmovN_reg_isel(cmpOp cmp, flagsRegSrc crx, iRegNdst dst, iRegNsrc src) %{
   match(Set dst (CMoveN (Binary cmp crx) (Binary dst src)));
   predicate(VM_Version::has_isel());
   ins_cost(DEFAULT_COST);
@@ -7414,7 +7386,7 @@
 %}
 
 // Conditional move for RegN. Only cmov(reg, reg).
-instruct cmovN_reg(cmpOp cmp, flagsReg crx, iRegNdst dst, iRegNsrc src) %{
+instruct cmovN_reg(cmpOp cmp, flagsRegSrc crx, iRegNdst dst, iRegNsrc src) %{
   match(Set dst (CMoveN (Binary cmp crx) (Binary dst src)));
   predicate(!VM_Version::has_isel());
   ins_cost(DEFAULT_COST+BRANCH_COST);
@@ -7428,7 +7400,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovN_imm(cmpOp cmp, flagsReg crx, iRegNdst dst, immN_0 src) %{
+instruct cmovN_imm(cmpOp cmp, flagsRegSrc crx, iRegNdst dst, immN_0 src) %{
   match(Set dst (CMoveN (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7442,7 +7414,7 @@
 %}
 
 // Cmove using isel.
-instruct cmovP_reg_isel(cmpOp cmp, flagsReg crx, iRegPdst dst, iRegPsrc src) %{
+instruct cmovP_reg_isel(cmpOp cmp, flagsRegSrc crx, iRegPdst dst, iRegPsrc src) %{
   match(Set dst (CMoveP (Binary cmp crx) (Binary dst src)));
   predicate(VM_Version::has_isel());
   ins_cost(DEFAULT_COST);
@@ -7460,7 +7432,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovP_reg(cmpOp cmp, flagsReg crx, iRegPdst dst, iRegP_N2P src) %{
+instruct cmovP_reg(cmpOp cmp, flagsRegSrc crx, iRegPdst dst, iRegP_N2P src) %{
   match(Set dst (CMoveP (Binary cmp crx) (Binary dst src)));
   predicate(!VM_Version::has_isel());
   ins_cost(DEFAULT_COST+BRANCH_COST);
@@ -7474,7 +7446,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovP_imm(cmpOp cmp, flagsReg crx, iRegPdst dst, immP_0 src) %{
+instruct cmovP_imm(cmpOp cmp, flagsRegSrc crx, iRegPdst dst, immP_0 src) %{
   match(Set dst (CMoveP (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7487,7 +7459,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovF_reg(cmpOp cmp, flagsReg crx, regF dst, regF src) %{
+instruct cmovF_reg(cmpOp cmp, flagsRegSrc crx, regF dst, regF src) %{
   match(Set dst (CMoveF (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7509,7 +7481,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovD_reg(cmpOp cmp, flagsReg crx, regD dst, regD src) %{
+instruct cmovD_reg(cmpOp cmp, flagsRegSrc crx, regD dst, regD src) %{
   match(Set dst (CMoveD (Binary cmp crx) (Binary dst src)));
   ins_cost(DEFAULT_COST+BRANCH_COST);
 
@@ -7542,8 +7514,9 @@
 // Mem_ptr must be a memory operand, else this node does not get
 // Flag_needs_anti_dependence_check set by adlc. If this is not set this node
 // can be rematerialized which leads to errors.
-instruct storeLConditional_regP_regL_regL(flagsReg crx, indirect mem_ptr, iRegLsrc oldVal, iRegLsrc newVal) %{
+instruct storeLConditional_regP_regL_regL(flagsReg crx, indirect mem_ptr, iRegLsrc oldVal, iRegLsrc newVal, flagsRegCR0 cr0) %{
   match(Set crx (StoreLConditional mem_ptr (Binary oldVal newVal)));
+  effect(TEMP cr0);
   format %{ "CMPXCHGD if ($crx = ($oldVal == *$mem_ptr)) *mem_ptr = $newVal; as bool" %}
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_compound);
@@ -7560,16 +7533,16 @@
 // Mem_ptr must be a memory operand, else this node does not get
 // Flag_needs_anti_dependence_check set by adlc. If this is not set this node
 // can be rematerialized which leads to errors.
-instruct storePConditional_regP_regP_regP(flagsReg crx, indirect mem_ptr, iRegPsrc oldVal, iRegPsrc newVal) %{
-  match(Set crx (StorePConditional mem_ptr (Binary oldVal newVal)));
-  format %{ "CMPXCHGD if ($crx = ($oldVal == *$mem_ptr)) *mem_ptr = $newVal; as bool" %}
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
-    __ cmpxchgd($crx$$CondRegister, R0, $oldVal$$Register, $newVal$$Register, $mem_ptr$$Register,
-                MacroAssembler::MemBarNone, MacroAssembler::cmpxchgx_hint_atomic_update(),
-                noreg, NULL, true);
-  %}
-  ins_pipe(pipe_class_default);
+instruct storePConditional_regP_regP_regP(flagsRegCR0 cr0, indirect mem_ptr, iRegPsrc oldVal, iRegPsrc newVal) %{
+  match(Set cr0 (StorePConditional mem_ptr (Binary oldVal newVal)));
+  ins_cost(2*MEMORY_REF_COST);
+
+  format %{ "STDCX_  if ($cr0 = ($oldVal == *$mem_ptr)) *mem_ptr = $newVal; as bool" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_stdcx_);
+    __ stdcx_($newVal$$Register, $mem_ptr$$Register);
+  %}
+  ins_pipe(pipe_class_memory);
 %}
 
 // Implement LoadPLocked. Must be ordered against changes of the memory location
@@ -7577,13 +7550,14 @@
 // Don't know whether this is ever used.
 instruct loadPLocked(iRegPdst dst, memory mem) %{
   match(Set dst (LoadPLocked mem));
-  ins_cost(MEMORY_REF_COST);
-
-  format %{ "LD      $dst, $mem \t// loadPLocked\n\t"
-            "TWI     $dst\n\t"
-            "ISYNC" %}
-  size(12);
-  ins_encode( enc_ld_ac(dst, mem) );
+  ins_cost(2*MEMORY_REF_COST);
+
+  format %{ "LDARX   $dst, $mem \t// loadPLocked\n\t" %}
+  size(4);
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_ldarx);
+    __ ldarx($dst$$Register, $mem$$Register, MacroAssembler::cmpxchgx_hint_atomic_update());
+  %}
   ins_pipe(pipe_class_memory);
 %}
 
@@ -7593,8 +7567,9 @@
 // (CompareAndSwap ...)" or "If (CmpI (CompareAndSwap ..))"  cannot be
 // matched.
 
-instruct compareAndSwapI_regP_regI_regI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src1, iRegIsrc src2) %{
+instruct compareAndSwapI_regP_regI_regI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src1, iRegIsrc src2, flagsRegCR0 cr0) %{
   match(Set res (CompareAndSwapI mem_ptr (Binary src1 src2)));
+  effect(TEMP cr0);
   format %{ "CMPXCHGW $res, $mem_ptr, $src1, $src2; as bool" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode %{
@@ -7607,8 +7582,9 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct compareAndSwapN_regP_regN_regN(iRegIdst res, iRegPdst mem_ptr, iRegNsrc src1, iRegNsrc src2) %{
+instruct compareAndSwapN_regP_regN_regN(iRegIdst res, iRegPdst mem_ptr, iRegNsrc src1, iRegNsrc src2, flagsRegCR0 cr0) %{
   match(Set res (CompareAndSwapN mem_ptr (Binary src1 src2)));
+  effect(TEMP cr0);
   format %{ "CMPXCHGW $res, $mem_ptr, $src1, $src2; as bool" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode %{
@@ -7621,8 +7597,9 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct compareAndSwapL_regP_regL_regL(iRegIdst res, iRegPdst mem_ptr, iRegLsrc src1, iRegLsrc src2) %{
+instruct compareAndSwapL_regP_regL_regL(iRegIdst res, iRegPdst mem_ptr, iRegLsrc src1, iRegLsrc src2, flagsRegCR0 cr0) %{
   match(Set res (CompareAndSwapL mem_ptr (Binary src1 src2)));
+  effect(TEMP cr0);
   format %{ "CMPXCHGD $res, $mem_ptr, $src1, $src2; as bool" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode %{
@@ -7635,8 +7612,9 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct compareAndSwapP_regP_regP_regP(iRegIdst res, iRegPdst mem_ptr, iRegPsrc src1, iRegPsrc src2) %{
+instruct compareAndSwapP_regP_regP_regP(iRegIdst res, iRegPdst mem_ptr, iRegPsrc src1, iRegPsrc src2, flagsRegCR0 cr0) %{
   match(Set res (CompareAndSwapP mem_ptr (Binary src1 src2)));
+  effect(TEMP cr0);
   format %{ "CMPXCHGD $res, $mem_ptr, $src1, $src2; as bool; ptr" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode %{
@@ -7649,48 +7627,54 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndAddI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src) %{
+instruct getAndAddI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndAddI mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndAddI $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndAddI(res, mem_ptr, src) );
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndAddL(iRegLdst res, iRegPdst mem_ptr, iRegLsrc src) %{
+instruct getAndAddL(iRegLdst res, iRegPdst mem_ptr, iRegLsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndAddL mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndAddL $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndAddL(res, mem_ptr, src) );
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndSetI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src) %{
+instruct getAndSetI(iRegIdst res, iRegPdst mem_ptr, iRegIsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndSetI mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndSetI $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndSetI(res, mem_ptr, src) );
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndSetL(iRegLdst res, iRegPdst mem_ptr, iRegLsrc src) %{
+instruct getAndSetL(iRegLdst res, iRegPdst mem_ptr, iRegLsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndSetL mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndSetL $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndSetL(res, mem_ptr, src) );
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndSetP(iRegPdst res, iRegPdst mem_ptr, iRegPsrc src) %{
+instruct getAndSetP(iRegPdst res, iRegPdst mem_ptr, iRegPsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndSetP mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndSetP $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndSetL(res, mem_ptr, src) );
   ins_pipe(pipe_class_default);
 %}
 
-instruct getAndSetN(iRegNdst res, iRegPdst mem_ptr, iRegNsrc src) %{
+instruct getAndSetN(iRegNdst res, iRegPdst mem_ptr, iRegNsrc src, flagsRegCR0 cr0) %{
   match(Set res (GetAndSetN mem_ptr src));
+  effect(TEMP cr0);
   format %{ "GetAndSetN $res, $mem_ptr, $src" %}
   // Variable size: instruction count smaller if regs are disjoint.
   ins_encode( enc_GetAndSetI(res, mem_ptr, src) );
@@ -7898,18 +7882,8 @@
 %}
 
 // Immediate Subtraction
-// The compiler converts "x-c0" into "x+ -c0" (see SubINode::Ideal),
-// so this rule seems to be unused.
-instruct subI_reg_imm16(iRegIdst dst, iRegIsrc src1, immI16 src2) %{
-  match(Set dst (SubI src1 src2));
-  format %{ "SUBI    $dst, $src1, $src2" %}
-  size(4);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_addi);
-    __ addi($dst$$Register, $src1$$Register, ($src2$$constant) * (-1));
-  %}
-  ins_pipe(pipe_class_default);
-%}
+// Immediate Subtraction: The compiler converts "x-c0" into "x+ -c0" (see SubLNode::Ideal),
+// Don't try to use addi with - $src2$$constant since it can overflow when $src2$$constant == minI16.
 
 // SubI from constant (using subfic).
 instruct subI_imm16_reg(iRegIdst dst, immI16 src1, iRegIsrc src2) %{
@@ -7989,22 +7963,6 @@
   ins_pipe(pipe_class_default);
 %}
 
-// Immediate Subtraction
-// The compiler converts "x-c0" into "x+ -c0" (see SubLNode::Ideal),
-// so this rule seems to be unused.
-// No constant pool entries required.
-instruct subL_reg_imm16(iRegLdst dst, iRegLsrc src1, immL16 src2) %{
-  match(Set dst (SubL src1 src2));
-
-  format %{ "SUBI    $dst, $src1, $src2 \t// long" %}
-  size(4);
-  ins_encode %{
-    // TODO: PPC port $archOpcode(ppc64Opcode_addi);
-    __ addi($dst$$Register, $src1$$Register, ($src2$$constant) * (-1));
-  %}
-  ins_pipe(pipe_class_default);
-%}
-
 // Turn the sign-bit of a long into a 64-bit mask, 0x0...0 for
 // positive longs and 0xF...F for negative ones.
 instruct signmask64I_regL(iRegIdst dst, iRegLsrc src) %{
@@ -8165,7 +8123,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovI_bne_negI_reg(iRegIdst dst, flagsReg crx, iRegIsrc src1) %{
+instruct cmovI_bne_negI_reg(iRegIdst dst, flagsRegSrc crx, iRegIsrc src1) %{
   effect(USE_DEF dst, USE src1, USE crx);
   predicate(false);
 
@@ -8228,7 +8186,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovL_bne_negL_reg(iRegLdst dst, flagsReg crx, iRegLsrc src1) %{
+instruct cmovL_bne_negL_reg(iRegLdst dst, flagsRegSrc crx, iRegLsrc src1) %{
   effect(USE_DEF dst, USE src1, USE crx);
   predicate(false);
 
@@ -8281,7 +8239,7 @@
 %}
 
 // Long Remainder with registers
-instruct modL_reg_reg_Ex(iRegLdst dst, iRegLsrc src1, iRegLsrc src2, flagsRegCR0 cr0) %{
+instruct modL_reg_reg_Ex(iRegLdst dst, iRegLsrc src1, iRegLsrc src2) %{
   match(Set dst (ModL src1 src2));
   ins_cost(10*DEFAULT_COST);
 
@@ -9011,7 +8969,6 @@
 instruct andL_reg_uimm16(iRegLdst dst, iRegLsrc src1, uimmL16 src2, flagsRegCR0 cr0) %{
   match(Set dst (AndL src1 src2));
   effect(KILL cr0);
-  ins_cost(DEFAULT_COST);
 
   format %{ "ANDI    $dst, $src1, $src2 \t// long" %}
   size(4);
@@ -9803,7 +9760,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovI_bso_stackSlotL(iRegIdst dst, flagsReg crx, stackSlotL src) %{
+instruct cmovI_bso_stackSlotL(iRegIdst dst, flagsRegSrc crx, stackSlotL src) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx, USE src);
   predicate(false);
@@ -9817,7 +9774,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovI_bso_stackSlotL_conLvalue0_Ex(iRegIdst dst, flagsReg crx, stackSlotL mem) %{
+instruct cmovI_bso_stackSlotL_conLvalue0_Ex(iRegIdst dst, flagsRegSrc crx, stackSlotL mem) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx, USE mem);
   predicate(false);
@@ -9972,7 +9929,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovL_bso_stackSlotL(iRegLdst dst, flagsReg crx, stackSlotL src) %{
+instruct cmovL_bso_stackSlotL(iRegLdst dst, flagsRegSrc crx, stackSlotL src) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx, USE src);
   predicate(false);
@@ -9986,7 +9943,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct cmovL_bso_stackSlotL_conLvalue0_Ex(iRegLdst dst, flagsReg crx, stackSlotL mem) %{
+instruct cmovL_bso_stackSlotL_conLvalue0_Ex(iRegLdst dst, flagsRegSrc crx, stackSlotL mem) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx, USE mem);
   predicate(false);
@@ -10255,7 +10212,6 @@
   size(4);
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_andi_);
-    // FIXME: avoid andi_ ?
     __ andi_(R0, $src1$$Register, $src2$$constant);
   %}
   ins_pipe(pipe_class_compare);
@@ -10302,13 +10258,12 @@
   size(4);
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_andi_);
-    // FIXME: avoid andi_ ?
     __ andi_(R0, $src1$$Register, $src2$$constant);
   %}
   ins_pipe(pipe_class_compare);
 %}
 
-instruct cmovI_conIvalueMinus1_conIvalue1(iRegIdst dst, flagsReg crx) %{
+instruct cmovI_conIvalueMinus1_conIvalue1(iRegIdst dst, flagsRegSrc crx) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx);
   predicate(false);
@@ -10332,7 +10287,7 @@
   ins_pipe(pipe_class_compare);
 %}
 
-instruct cmovI_conIvalueMinus1_conIvalue0_conIvalue1_Ex(iRegIdst dst, flagsReg crx) %{
+instruct cmovI_conIvalueMinus1_conIvalue0_conIvalue1_Ex(iRegIdst dst, flagsRegSrc crx) %{
   // no match-rule, false predicate
   effect(DEF dst, USE crx);
   predicate(false);
@@ -10622,8 +10577,9 @@
 //----------Float Compares----------------------------------------------------
 
 instruct cmpFUnordered_reg_reg(flagsReg crx, regF src1, regF src2) %{
+  // Needs matchrule, see cmpDUnordered.
+  match(Set crx (CmpF src1 src2)); 
   // no match-rule, false predicate
-  effect(DEF crx, USE src1, USE src2);
   predicate(false);
 
   format %{ "cmpFUrd $crx, $src1, $src2" %}
@@ -10731,8 +10687,14 @@
 %}
 
 instruct cmpDUnordered_reg_reg(flagsReg crx, regD src1, regD src2) %{
-  // no match-rule, false predicate
-  effect(DEF crx, USE src1, USE src2);
+  // Needs matchrule so that ideal opcode is Cmp. This causes that gcm places the 
+  // node right before the conditional move using it. 
+  // In jck test api/java_awt/geom/QuadCurve2DFloat/index.html#SetCurveTesttestCase7,
+  // compilation of java.awt.geom.RectangularShape::getBounds()Ljava/awt/Rectangle
+  // crashed in register allocation where the flags Reg between cmpDUnoredered and a
+  // conditional move was supposed to be spilled.
+  match(Set crx (CmpD src1 src2)); 
+  // False predicate, shall not be matched.
   predicate(false);
 
   format %{ "cmpFUrd $crx, $src1, $src2" %}
@@ -10830,7 +10792,7 @@
 %}
 
 // Conditional Near Branch
-instruct branchCon(cmpOp cmp, flagsReg crx, label lbl) %{
+instruct branchCon(cmpOp cmp, flagsRegSrc crx, label lbl) %{
   // Same match rule as `branchConFar'.
   match(If cmp crx);
   effect(USE lbl);
@@ -10853,7 +10815,7 @@
 // expensive.
 //
 // Conditional Far Branch
-instruct branchConFar(cmpOp cmp, flagsReg crx, label lbl) %{
+instruct branchConFar(cmpOp cmp, flagsRegSrc crx, label lbl) %{
   // Same match rule as `branchCon'.
   match(If cmp crx);
   effect(USE crx, USE lbl);
@@ -10871,7 +10833,7 @@
 %}
 
 // Conditional Branch used with Power6 scheduler (can be far or short).
-instruct branchConSched(cmpOp cmp, flagsReg crx, label lbl) %{
+instruct branchConSched(cmpOp cmp, flagsRegSrc crx, label lbl) %{
   // Same match rule as `branchCon'.
   match(If cmp crx);
   effect(USE crx, USE lbl);
@@ -10890,7 +10852,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct branchLoopEnd(cmpOp cmp, flagsReg crx, label labl) %{
+instruct branchLoopEnd(cmpOp cmp, flagsRegSrc crx, label labl) %{
   match(CountedLoopEnd cmp crx);
   effect(USE labl);
   ins_cost(BRANCH_COST);
@@ -10904,7 +10866,7 @@
   ins_pipe(pipe_class_default);
 %}
 
-instruct branchLoopEndFar(cmpOp cmp, flagsReg crx, label labl) %{
+instruct branchLoopEndFar(cmpOp cmp, flagsRegSrc crx, label labl) %{
   match(CountedLoopEnd cmp crx);
   effect(USE labl);
   predicate(!false /* TODO: PPC port HB_Schedule */);
@@ -10920,7 +10882,7 @@
 %}
 
 // Conditional Branch used with Power6 scheduler (can be far or short).
-instruct branchLoopEndSched(cmpOp cmp, flagsReg crx, label labl) %{
+instruct branchLoopEndSched(cmpOp cmp, flagsRegSrc crx, label labl) %{
   match(CountedLoopEnd cmp crx);
   effect(USE labl);
   predicate(false /* TODO: PPC port HB_Schedule */);
@@ -10969,13 +10931,36 @@
 instruct cmpFastLock(flagsReg crx, iRegPdst oop, iRegPdst box, iRegPdst tmp1, iRegPdst tmp2, iRegPdst tmp3) %{
   match(Set crx (FastLock oop box));
   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
-  // TODO PPC port predicate(!UseNewFastLockPPC64 || UseBiasedLocking);
+  predicate(/*(!UseNewFastLockPPC64 || UseBiasedLocking) &&*/ !Compile::current()->use_rtm());
 
   format %{ "FASTLOCK  $oop, $box, $tmp1, $tmp2, $tmp3" %}
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_compound);
     __ compiler_fast_lock_object($crx$$CondRegister, $oop$$Register, $box$$Register,
-                                 $tmp3$$Register, $tmp1$$Register, $tmp2$$Register);
+                                 $tmp3$$Register, $tmp1$$Register, $tmp2$$Register,
+                                 UseBiasedLocking && !UseOptoBiasInlining); // SAPJVM MD 2014-11-06 UseOptoBiasInlining
+    // If locking was successfull, crx should indicate 'EQ'.
+    // The compiler generates a branch to the runtime call to
+    // _complete_monitor_locking_Java for the case where crx is 'NE'.
+  %}
+  ins_pipe(pipe_class_compare);
+%}
+
+// Separate version for TM. Use bound register for box to enable USE_KILL.
+instruct cmpFastLock_tm(flagsReg crx, iRegPdst oop, rarg2RegP box, iRegPdst tmp1, iRegPdst tmp2, iRegPdst tmp3) %{
+  match(Set crx (FastLock oop box));
+  effect(TEMP tmp1, TEMP tmp2, TEMP tmp3, USE_KILL box);
+  predicate(Compile::current()->use_rtm());
+
+  format %{ "FASTLOCK  $oop, $box, $tmp1, $tmp2, $tmp3 (TM)" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ compiler_fast_lock_object($crx$$CondRegister, $oop$$Register, $box$$Register,
+                                 $tmp3$$Register, $tmp1$$Register, $tmp2$$Register,
+                                 /*Biased Locking*/ false,
+                                 _rtm_counters, _stack_rtm_counters,
+                                 ((Method*)(ra_->C->method()->constant_encoding()))->method_data(),
+                                 /*TM*/ true, ra_->C->profile_rtm());
     // If locking was successfull, crx should indicate 'EQ'.
     // The compiler generates a branch to the runtime call to
     // _complete_monitor_locking_Java for the case where crx is 'NE'.
@@ -10986,12 +10971,33 @@
 instruct cmpFastUnlock(flagsReg crx, iRegPdst oop, iRegPdst box, iRegPdst tmp1, iRegPdst tmp2, iRegPdst tmp3) %{
   match(Set crx (FastUnlock oop box));
   effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
+  predicate(!Compile::current()->use_rtm());
 
   format %{ "FASTUNLOCK  $oop, $box, $tmp1, $tmp2" %}
   ins_encode %{
     // TODO: PPC port $archOpcode(ppc64Opcode_compound);
     __ compiler_fast_unlock_object($crx$$CondRegister, $oop$$Register, $box$$Register,
-                                   $tmp3$$Register, $tmp1$$Register, $tmp2$$Register);
+                                   $tmp3$$Register, $tmp1$$Register, $tmp2$$Register,
+                                   UseBiasedLocking && !UseOptoBiasInlining,
+                                   false);
+    // If unlocking was successfull, crx should indicate 'EQ'.
+    // The compiler generates a branch to the runtime call to
+    // _complete_monitor_unlocking_Java for the case where crx is 'NE'.
+  %}
+  ins_pipe(pipe_class_compare);
+%}
+
+instruct cmpFastUnlock_tm(flagsReg crx, iRegPdst oop, iRegPdst box, iRegPdst tmp1, iRegPdst tmp2, iRegPdst tmp3) %{
+  match(Set crx (FastUnlock oop box));
+  effect(TEMP tmp1, TEMP tmp2, TEMP tmp3);
+  predicate(Compile::current()->use_rtm());
+
+  format %{ "FASTUNLOCK  $oop, $box, $tmp1, $tmp2 (TM)" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ compiler_fast_unlock_object($crx$$CondRegister, $oop$$Register, $box$$Register,
+                                   $tmp3$$Register, $tmp1$$Register, $tmp2$$Register,
+                                   /*Biased Locking*/ false, /*TM*/ true);
     // If unlocking was successfull, crx should indicate 'EQ'.
     // The compiler generates a branch to the runtime call to
     // _complete_monitor_unlocking_Java for the case where crx is 'NE'.
@@ -11658,6 +11664,66 @@
   ins_pipe(pipe_class_default);
 %}
 
+
+//----------Overflow Math Instructions-----------------------------------------
+
+// Note that we have to make sure that XER.SO is reset before using overflow instructions.
+// Simple Overflow operations can be matched by very few instructions (e.g. addExact: xor, and_, bc).
+// Seems like only Long intrinsincs have an advantage. (The only expensive one is OverflowMulL.)
+
+instruct overflowAddL_reg_reg(flagsRegCR0 cr0, iRegLsrc op1, iRegLsrc op2) %{
+  match(Set cr0 (OverflowAddL op1 op2));
+
+  format %{ "add_    $op1, $op2\t# overflow check long" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ li(R0, 0);
+    __ mtxer(R0); // clear XER.SO
+    __ addo_(R0, $op1$$Register, $op2$$Register);
+  %}
+  ins_pipe(pipe_class_default);
+%}
+
+instruct overflowSubL_reg_reg(flagsRegCR0 cr0, iRegLsrc op1, iRegLsrc op2) %{
+  match(Set cr0 (OverflowSubL op1 op2));
+
+  format %{ "subfo_  R0, $op2, $op1\t# overflow check long" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ li(R0, 0);
+    __ mtxer(R0); // clear XER.SO
+    __ subfo_(R0, $op2$$Register, $op1$$Register);
+  %}
+  ins_pipe(pipe_class_default);
+%}
+
+instruct overflowNegL_reg(flagsRegCR0 cr0, immL_0 zero, iRegLsrc op2) %{
+  match(Set cr0 (OverflowSubL zero op2));
+
+  format %{ "nego_   R0, $op2\t# overflow check long" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ li(R0, 0);
+    __ mtxer(R0); // clear XER.SO
+    __ nego_(R0, $op2$$Register);
+  %}
+  ins_pipe(pipe_class_default);
+%}
+
+instruct overflowMulL_reg_reg(flagsRegCR0 cr0, iRegLsrc op1, iRegLsrc op2) %{
+  match(Set cr0 (OverflowMulL op1 op2));
+
+  format %{ "mulldo_ R0, $op1, $op2\t# overflow check long" %}
+  ins_encode %{
+    // TODO: PPC port $archOpcode(ppc64Opcode_compound);
+    __ li(R0, 0);
+    __ mtxer(R0); // clear XER.SO
+    __ mulldo_(R0, $op1$$Register, $op2$$Register);
+  %}
+  ins_pipe(pipe_class_default);
+%}
+
+
 // ============================================================================
 // Safepoint Instruction
 
--- a/hotspot/src/cpu/ppc/vm/register_definitions_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/register_definitions_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,19 +23,10 @@
  *
  */
 
-// make sure the defines don't screw up the declarations later on in this file
+// Make sure the defines don't screw up the declarations later on in this file.
 #define DONT_USE_REGISTER_DEFINES
 
-#include "precompiled.hpp"
-#include "asm/macroAssembler.hpp"
 #include "asm/register.hpp"
-#include "register_ppc.hpp"
-#ifdef TARGET_ARCH_MODEL_ppc_32
-# include "interp_masm_ppc_32.hpp"
-#endif
-#ifdef TARGET_ARCH_MODEL_ppc_64
-# include "interp_masm_ppc_64.hpp"
-#endif
 
 REGISTER_DEFINITION(Register, noreg);
 
--- a/hotspot/src/cpu/ppc/vm/relocInfo_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/relocInfo_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,12 @@
 
 #include "precompiled.hpp"
 #include "asm/assembler.inline.hpp"
-#include "assembler_ppc.inline.hpp"
 #include "code/relocInfo.hpp"
 #include "nativeInst_ppc.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/safepoint.hpp"
 
 void Relocation::pd_set_data_value(address x, intptr_t o, bool verify_only) {
-  bool copy_back_to_oop_pool = true;  // TODO: PPC port
   // The following comment is from the declaration of DataRelocation:
   //
   //  "The "o" (displacement) argument is relevant only to split relocations
--- a/hotspot/src/cpu/ppc/vm/sharedRuntime_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/sharedRuntime_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 #include "code/debugInfoRec.hpp"
 #include "code/icBuffer.hpp"
 #include "code/vtableStubs.hpp"
+#include "frame_ppc.hpp"
 #include "interpreter/interpreter.hpp"
 #include "interpreter/interp_masm.hpp"
 #include "oops/compiledICHolder.hpp"
@@ -194,8 +195,8 @@
   RegisterSaver_LiveIntReg(   R27 ),
   RegisterSaver_LiveIntReg(   R28 ),
   RegisterSaver_LiveIntReg(   R29 ),
-  RegisterSaver_LiveIntReg(   R31 ),
-  RegisterSaver_LiveIntReg(   R30 ), // r30 must be the last register
+  RegisterSaver_LiveIntReg(   R30 ),
+  RegisterSaver_LiveIntReg(   R31 ), // must be the last register (see save/restore functions below)
 };
 
 OopMap* RegisterSaver::push_frame_reg_args_and_save_live_registers(MacroAssembler* masm,
@@ -229,29 +230,30 @@
 
   BLOCK_COMMENT("push_frame_reg_args_and_save_live_registers {");
 
-  // Save r30 in the last slot of the not yet pushed frame so that we
+  // Save r31 in the last slot of the not yet pushed frame so that we
   // can use it as scratch reg.
-  __ std(R30, -reg_size, R1_SP);
+  __ std(R31, -reg_size, R1_SP);
   assert(-reg_size == register_save_offset - frame_size_in_bytes + ((regstosave_num-1)*reg_size),
          "consistency check");
 
   // save the flags
   // Do the save_LR_CR by hand and adjust the return pc if requested.
-  __ mfcr(R30);
-  __ std(R30, _abi(cr), R1_SP);
+  __ mfcr(R31);
+  __ std(R31, _abi(cr), R1_SP);
   switch (return_pc_location) {
-    case return_pc_is_lr:    __ mflr(R30);           break;
-    case return_pc_is_r4:    __ mr(R30, R4);     break;
+    case return_pc_is_lr:    __ mflr(R31);           break;
+    case return_pc_is_r4:    __ mr(R31, R4);     break;
     case return_pc_is_thread_saved_exception_pc:
-                                 __ ld(R30, thread_(saved_exception_pc)); break;
+                             __ ld(R31, thread_(saved_exception_pc)); break;
     default: ShouldNotReachHere();
   }
-  if (return_pc_adjustment != 0)
-    __ addi(R30, R30, return_pc_adjustment);
-  __ std(R30, _abi(lr), R1_SP);
+  if (return_pc_adjustment != 0) {
+    __ addi(R31, R31, return_pc_adjustment);
+  }
+  __ std(R31, _abi(lr), R1_SP);
 
   // push a new frame
-  __ push_frame(frame_size_in_bytes, R30);
+  __ push_frame(frame_size_in_bytes, R31);
 
   // save all registers (ints and floats)
   offset = register_save_offset;
@@ -261,7 +263,7 @@
 
     switch (reg_type) {
       case RegisterSaver::int_reg: {
-        if (reg_num != 30) { // We spilled R30 right at the beginning.
+        if (reg_num != 31) { // We spilled R31 right at the beginning.
           __ std(as_Register(reg_num), offset, R1_SP);
         }
         break;
@@ -272,8 +274,8 @@
       }
       case RegisterSaver::special_reg: {
         if (reg_num == SR_CTR_SpecialRegisterEnumValue) {
-          __ mfctr(R30);
-          __ std(R30, offset, R1_SP);
+          __ mfctr(R31);
+          __ std(R31, offset, R1_SP);
         } else {
           Unimplemented();
         }
@@ -321,7 +323,7 @@
 
     switch (reg_type) {
       case RegisterSaver::int_reg: {
-        if (reg_num != 30) // R30 restored at the end, it's the tmp reg!
+        if (reg_num != 31) // R31 restored at the end, it's the tmp reg!
           __ ld(as_Register(reg_num), offset, R1_SP);
         break;
       }
@@ -332,8 +334,8 @@
       case RegisterSaver::special_reg: {
         if (reg_num == SR_CTR_SpecialRegisterEnumValue) {
           if (restore_ctr) { // Nothing to do here if ctr already contains the next address.
-            __ ld(R30, offset, R1_SP);
-            __ mtctr(R30);
+            __ ld(R31, offset, R1_SP);
+            __ mtctr(R31);
           }
         } else {
           Unimplemented();
@@ -350,10 +352,10 @@
   __ pop_frame();
 
   // restore the flags
-  __ restore_LR_CR(R30);
+  __ restore_LR_CR(R31);
 
   // restore scratch register's value
-  __ ld(R30, -reg_size, R1_SP);
+  __ ld(R31, -reg_size, R1_SP);
 
   BLOCK_COMMENT("} restore_live_registers_and_pop_frame");
 }
@@ -2021,6 +2023,8 @@
   __ push_frame(frame_size_in_bytes, r_temp_1);          // Push the c2n adapter's frame.
   frame_done_pc = (intptr_t)__ pc();
 
+  __ verify_thread();
+
   // Native nmethod wrappers never take possesion of the oop arguments.
   // So the caller will gc the arguments.
   // The only thing we need an oopMap for is if the call is static.
@@ -2594,7 +2598,7 @@
 }
 
 uint SharedRuntime::out_preserve_stack_slots() {
-#ifdef COMPILER2
+#if defined(COMPILER1) || defined(COMPILER2)
   return frame::jit_out_preserve_size / VMRegImpl::stack_slot_size;
 #else
   return 0;
@@ -2868,11 +2872,6 @@
   __ std(R0, in_bytes(JavaThread::exception_oop_offset()), R16_thread);
   __ BIND(skip_restore_excp);
 
-  // reload narrro_oop_base
-  if (UseCompressedOops && Universe::narrow_oop_base() != 0) {
-    __ load_const_optimized(R30, Universe::narrow_oop_base());
-  }
-
   __ pop_frame();
 
   // stack: (deoptee, optional i2c, caller of deoptee, ...).
--- a/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -261,9 +261,6 @@
       // global toc register
       __ load_const(R29, MacroAssembler::global_toc(), R11_scratch1);
 
-      // Load narrow oop base.
-      __ reinit_heapbase(R30, R11_scratch1);
-
       // Remember the senderSP so we interpreter can pop c2i arguments off of the stack
       // when called via a c2i.
 
@@ -418,6 +415,23 @@
   // or native call stub.  The pending exception in Thread is
   // converted into a Java-level exception.
   //
+  // Read:
+  //
+  //   LR:     The pc the runtime library callee wants to return to.
+  //           Since the exception occurred in the callee, the return pc
+  //           from the point of view of Java is the exception pc.
+  //   thread: Needed for method handles.
+  //
+  // Invalidate:
+  //
+  //   volatile registers (except below).
+  //
+  // Update:
+  //
+  //   R4_ARG2: exception
+  //
+  // (LR is unchanged and is live out).
+  //
   address generate_forward_exception() {
     StubCodeMark mark(this, "StubRoutines", "forward_exception");
     address start = __ pc();
@@ -1256,9 +1270,9 @@
     Register tmp3 = R8_ARG6;
 
 #if defined(ABI_ELFv2)
-     address nooverlap_target = aligned ?
-       StubRoutines::arrayof_jbyte_disjoint_arraycopy() :
-       StubRoutines::jbyte_disjoint_arraycopy();
+    address nooverlap_target = aligned ?
+      StubRoutines::arrayof_jbyte_disjoint_arraycopy() :
+      StubRoutines::jbyte_disjoint_arraycopy();
 #else
     address nooverlap_target = aligned ?
       ((FunctionDescriptor*)StubRoutines::arrayof_jbyte_disjoint_arraycopy())->entry() :
--- a/hotspot/src/cpu/ppc/vm/templateInterpreter_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/templateInterpreter_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2013, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2013, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -264,11 +264,11 @@
       __ cmpdi(CCR0, Rmdo, 0);
       __ beq(CCR0, no_mdo);
 
-      // Increment invocation counter in the MDO.
-      const int mdo_ic_offs = in_bytes(MethodData::invocation_counter_offset()) + in_bytes(InvocationCounter::counter_offset());
-      __ lwz(Rscratch2, mdo_ic_offs, Rmdo);
+      // Increment backedge counter in the MDO.
+      const int mdo_bc_offs = in_bytes(MethodData::backedge_counter_offset()) + in_bytes(InvocationCounter::counter_offset());
+      __ lwz(Rscratch2, mdo_bc_offs, Rmdo);
       __ addi(Rscratch2, Rscratch2, increment);
-      __ stw(Rscratch2, mdo_ic_offs, Rmdo);
+      __ stw(Rscratch2, mdo_bc_offs, Rmdo);
       __ load_const_optimized(Rscratch1, mask, R0);
       __ and_(Rscratch1, Rscratch2, Rscratch1);
       __ bne(CCR0, done);
@@ -276,12 +276,12 @@
     }
 
     // Increment counter in MethodCounters*.
-    const int mo_ic_offs = in_bytes(MethodCounters::invocation_counter_offset()) + in_bytes(InvocationCounter::counter_offset());
+    const int mo_bc_offs = in_bytes(MethodCounters::backedge_counter_offset()) + in_bytes(InvocationCounter::counter_offset());
     __ bind(no_mdo);
     __ get_method_counters(R19_method, R3_counters, done);
-    __ lwz(Rscratch2, mo_ic_offs, R3_counters);
+    __ lwz(Rscratch2, mo_bc_offs, R3_counters);
     __ addi(Rscratch2, Rscratch2, increment);
-    __ stw(Rscratch2, mo_ic_offs, R3_counters);
+    __ stw(Rscratch2, mo_bc_offs, R3_counters);
     __ load_const_optimized(Rscratch1, mask, R0);
     __ and_(Rscratch1, Rscratch2, Rscratch1);
     __ beq(CCR0, *overflow);
@@ -611,12 +611,7 @@
 // For others we can use a normal (native) entry.
 
 inline bool math_entry_available(AbstractInterpreter::MethodKind kind) {
-  // Provide math entry with debugging on demand.
-  // Note: Debugging changes which code will get executed:
-  // Debugging or disabled InlineIntrinsics: java method will get interpreted and performs a native call.
-  // Not debugging and enabled InlineIntrinics: processor instruction will get used.
-  // Result might differ slightly due to rounding etc.
-  if (!InlineIntrinsics && (!FLAG_IS_ERGO(InlineIntrinsics))) return false; // Generate a vanilla entry.
+  if (!InlineIntrinsics) return false;
 
   return ((kind==Interpreter::java_lang_math_sqrt && VM_Version::has_fsqrt()) ||
           (kind==Interpreter::java_lang_math_abs));
@@ -628,15 +623,8 @@
     return Interpreter::entry_for_kind(Interpreter::zerolocals);
   }
 
-  Label Lslow_path;
-  const Register Rjvmti_mode = R11_scratch1;
   address entry = __ pc();
 
-  // Provide math entry with debugging on demand.
-  __ lwz(Rjvmti_mode, thread_(interp_only_mode));
-  __ cmpwi(CCR0, Rjvmti_mode, 0);
-  __ bne(CCR0, Lslow_path); // jvmti_mode!=0
-
   __ lfd(F1_RET, Interpreter::stackElementSize, R15_esp);
 
   // Pop c2i arguments (if any) off when we return.
@@ -659,9 +647,6 @@
   // And we're done.
   __ blr();
 
-  // Provide slow path for JVMTI case.
-  __ bind(Lslow_path);
-  __ branch_to_entry(Interpreter::entry_for_kind(Interpreter::zerolocals), R12_scratch2);
   __ flush();
 
   return entry;
--- a/hotspot/src/cpu/ppc/vm/templateInterpreter_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/templateInterpreter_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2013, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2013, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,7 +34,7 @@
   // Run with +PrintInterpreter to get the VM to print out the size.
   // Max size with JVMTI
 
-  const static int InterpreterCodeSize = 210*K;
+  const static int InterpreterCodeSize = 230*K;
 
 #endif // CPU_PPC_VM_TEMPLATEINTERPRETER_PPC_HPP
 
--- a/hotspot/src/cpu/ppc/vm/templateTable_ppc_64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/templateTable_ppc_64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2013, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -375,23 +375,22 @@
 
   int index_size = wide ? sizeof(u2) : sizeof(u1);
   const Register Rscratch = R11_scratch1;
-  Label resolved;
+  Label is_null;
 
   // We are resolved if the resolved reference cache entry contains a
   // non-null object (CallSite, etc.)
   __ get_cache_index_at_bcp(Rscratch, 1, index_size);  // Load index.
-  __ load_resolved_reference_at_index(R17_tos, Rscratch);
-  __ cmpdi(CCR0, R17_tos, 0);
-  __ bne(CCR0, resolved);
+  __ load_resolved_reference_at_index(R17_tos, Rscratch, &is_null);
+  __ verify_oop(R17_tos);
+  __ dispatch_epilog(atos, Bytecodes::length_for(bytecode()));
+
+  __ bind(is_null);
   __ load_const_optimized(R3_ARG1, (int)bytecode());
 
   address entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_ldc);
 
   // First time invocation - must resolve first.
   __ call_VM(R17_tos, entry, R3_ARG1);
-
-  __ align(32, 12);
-  __ bind(resolved);
   __ verify_oop(R17_tos);
 }
 
@@ -437,6 +436,14 @@
 }
 
 void TemplateTable::iload() {
+  iload_internal();
+}
+
+void TemplateTable::nofast_iload() {
+  iload_internal(may_not_rewrite);
+}
+
+void TemplateTable::iload_internal(RewriteControl rc) {
   transition(vtos, itos);
 
   // Get the local value into tos
@@ -445,7 +452,7 @@
 
   // Rewrite iload,iload  pair into fast_iload2
   //         iload,caload pair into fast_icaload
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     Label Lrewrite, Ldone;
     Register Rnext_byte  = R3_ARG1,
              Rrewrite_to = R6_ARG4,
@@ -709,6 +716,14 @@
 }
 
 void TemplateTable::aload_0() {
+  aload_0_internal();
+}
+
+void TemplateTable::nofast_aload_0() {
+  aload_0_internal(may_not_rewrite);
+}
+
+void TemplateTable::aload_0_internal(RewriteControl rc) {
   transition(vtos, atos);
   // According to bytecode histograms, the pairs:
   //
@@ -732,7 +747,7 @@
   // These bytecodes with a small amount of code are most profitable
   // to rewrite.
 
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
 
     Label Lrewrite, Ldont_rewrite;
     Register Rnext_byte  = R3_ARG1,
@@ -2144,6 +2159,12 @@
   __ get_cache_and_index_at_bcp(Rcache, 1, index_size);
   Label Lresolved, Ldone;
 
+  Bytecodes::Code code = bytecode();
+  switch (code) {
+  case Bytecodes::_nofast_getfield: code = Bytecodes::_getfield; break;
+  case Bytecodes::_nofast_putfield: code = Bytecodes::_putfield; break;
+  }
+
   assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
   // We are resolved if the indices offset contains the current bytecode.
 #if defined(VM_LITTLE_ENDIAN)
@@ -2152,24 +2173,11 @@
   __ lbz(Rscratch, in_bytes(ConstantPoolCache::base_offset() + ConstantPoolCacheEntry::indices_offset()) + 7 - (byte_no + 1), Rcache);
 #endif
   // Acquire by cmp-br-isync (see below).
-  __ cmpdi(CCR0, Rscratch, (int)bytecode());
+  __ cmpdi(CCR0, Rscratch, (int)code);
   __ beq(CCR0, Lresolved);
 
-  address entry = NULL;
-  switch (bytecode()) {
-    case Bytecodes::_getstatic      : // fall through
-    case Bytecodes::_putstatic      : // fall through
-    case Bytecodes::_getfield       : // fall through
-    case Bytecodes::_putfield       : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_get_put); break;
-    case Bytecodes::_invokevirtual  : // fall through
-    case Bytecodes::_invokespecial  : // fall through
-    case Bytecodes::_invokestatic   : // fall through
-    case Bytecodes::_invokeinterface: entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invoke); break;
-    case Bytecodes::_invokehandle   : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokehandle); break;
-    case Bytecodes::_invokedynamic  : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokedynamic); break;
-    default                         : ShouldNotReachHere(); break;
-  }
-  __ li(R4_ARG2, (int)bytecode());
+  address entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_from_cache);
+  __ li(R4_ARG2, code);
   __ call_VM(noreg, entry, R4_ARG2, true);
 
   // Update registers with resolved info.
@@ -2350,7 +2358,7 @@
 }
 
 // PPC64: implement volatile loads as fence-store-acquire.
-void TemplateTable::getfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
 
   Label Lacquire, Lisync;
@@ -2366,7 +2374,7 @@
   static address field_branch_table[number_of_states],
                  static_branch_table[number_of_states];
 
-  address* branch_table = is_static ? static_branch_table : field_branch_table;
+  address* branch_table = (is_static || rc == may_not_rewrite) ? static_branch_table : field_branch_table;
 
   // Get field offset.
   resolve_cache_and_index(byte_no, Rcache, Rscratch, sizeof(u2));
@@ -2417,7 +2425,14 @@
 #ifdef ASSERT
   __ bind(LFlagInvalid);
   __ stop("got invalid flag", 0x654);
-
+#endif
+
+  if (!is_static && rc == may_not_rewrite) {
+    // We reuse the code from is_static.  It's jumped to via the table above.
+    return;
+  }
+
+#ifdef ASSERT
   // __ bind(Lvtos);
   address pc_before_fence = __ pc();
   __ fence(); // Volatile entry point (one instruction before non-volatile_entry point).
@@ -2434,7 +2449,9 @@
   branch_table[dtos] = __ pc(); // non-volatile_entry point
   __ lfdx(F15_ftos, Rclass_or_obj, Roffset);
   __ push(dtos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_dgetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_dgetfield, Rbc, Rscratch);
+  }
   {
     Label acquire_double;
     __ beq(CCR6, acquire_double); // Volatile?
@@ -2453,7 +2470,9 @@
   branch_table[ftos] = __ pc(); // non-volatile_entry point
   __ lfsx(F15_ftos, Rclass_or_obj, Roffset);
   __ push(ftos);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_fgetfield, Rbc, Rscratch); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_fgetfield, Rbc, Rscratch);
+  }
   {
     Label acquire_float;
     __ beq(CCR6, acquire_float); // Volatile?
@@ -2472,7 +2491,9 @@
   branch_table[itos] = __ pc(); // non-volatile_entry point
   __ lwax(R17_tos, Rclass_or_obj, Roffset);
   __ push(itos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_igetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_igetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2483,7 +2504,9 @@
   branch_table[ltos] = __ pc(); // non-volatile_entry point
   __ ldx(R17_tos, Rclass_or_obj, Roffset);
   __ push(ltos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_lgetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_lgetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2495,7 +2518,9 @@
   __ lbzx(R17_tos, Rclass_or_obj, Roffset);
   __ extsb(R17_tos, R17_tos);
   __ push(btos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_bgetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_bgetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2506,7 +2531,9 @@
   branch_table[ctos] = __ pc(); // non-volatile_entry point
   __ lhzx(R17_tos, Rclass_or_obj, Roffset);
   __ push(ctos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_cgetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_cgetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2517,7 +2544,9 @@
   branch_table[stos] = __ pc(); // non-volatile_entry point
   __ lhax(R17_tos, Rclass_or_obj, Roffset);
   __ push(stos);
-  if (!is_static) patch_bytecode(Bytecodes::_fast_sgetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_sgetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2530,7 +2559,9 @@
   __ verify_oop(R17_tos);
   __ push(atos);
   //__ dcbt(R17_tos); // prefetch
-  if (!is_static) patch_bytecode(Bytecodes::_fast_agetfield, Rbc, Rscratch);
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_agetfield, Rbc, Rscratch);
+  }
   __ beq(CCR6, Lacquire); // Volatile?
   __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
 
@@ -2553,6 +2584,10 @@
   getfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_getfield(int byte_no) {
+  getfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::getstatic(int byte_no) {
   getfield_or_static(byte_no, true);
 }
@@ -2643,7 +2678,7 @@
 }
 
 // PPC64: implement volatile stores as release-store (return bytecode contains an additional release).
-void TemplateTable::putfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   Label Lvolatile;
 
   const Register Rcache        = R5_ARG3,  // Do not use ARG1/2 (causes trouble in jvmti_post_field_mod).
@@ -2657,10 +2692,12 @@
                  Rbc           = Rscratch3;
   const ConditionRegister CR_is_vol = CCR2; // Non-volatile condition register (survives runtime call in do_oop_store).
 
-  static address field_branch_table[number_of_states],
+  static address field_rw_branch_table[number_of_states],
+                 field_norw_branch_table[number_of_states],
                  static_branch_table[number_of_states];
 
-  address* branch_table = is_static ? static_branch_table : field_branch_table;
+  address* branch_table = is_static ? static_branch_table :
+    (rc == may_rewrite ? field_rw_branch_table : field_norw_branch_table);
 
   // Stack (grows up):
   //  value
@@ -2688,7 +2725,9 @@
 
   // Load from branch table and dispatch (volatile case: one instruction ahead).
   __ sldi(Rflags, Rflags, LogBytesPerWord);
-  if (!support_IRIW_for_not_multiple_copy_atomic_cpu) { __ cmpwi(CR_is_vol, Rscratch, 1); } // Volatile?
+  if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
+    __ cmpwi(CR_is_vol, Rscratch, 1);  // Volatile?
+  }
   __ sldi(Rscratch, Rscratch, exact_log2(BytesPerInstWord)); // Volatile? size of instruction 1 : 0.
   __ ldx(Rbtable, Rbtable, Rflags);
 
@@ -2715,9 +2754,13 @@
   assert(branch_table[dtos] == 0, "can't compute twice");
   branch_table[dtos] = __ pc(); // non-volatile_entry point
   __ pop(dtos);
-  if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
+  if (!is_static) {
+    pop_and_check_object(Rclass_or_obj);  // Kills R11_scratch1.
+  }
   __ stfdx(F15_ftos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_dputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_dputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2731,7 +2774,9 @@
   __ pop(ftos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
   __ stfsx(F15_ftos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_fputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_fputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2745,7 +2790,9 @@
   __ pop(itos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
   __ stwx(R17_tos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_iputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_iputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2759,7 +2806,9 @@
   __ pop(ltos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
   __ stdx(R17_tos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_lputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_lputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2773,7 +2822,9 @@
   __ pop(btos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
   __ stbx(R17_tos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_bputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_bputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2787,7 +2838,9 @@
   __ pop(ctos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1..
   __ sthx(R17_tos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_cputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_cputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2801,7 +2854,9 @@
   __ pop(stos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // Kills R11_scratch1.
   __ sthx(R17_tos, Rclass_or_obj, Roffset);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_sputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_sputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
   }
@@ -2815,7 +2870,9 @@
   __ pop(atos);
   if (!is_static) { pop_and_check_object(Rclass_or_obj); } // kills R11_scratch1
   do_oop_store(_masm, Rclass_or_obj, Roffset, R17_tos, Rscratch, Rscratch2, Rscratch3, _bs->kind(), false /* precise */, true /* check null */);
-  if (!is_static) { patch_bytecode(Bytecodes::_fast_aputfield, Rbc, Rscratch, true, byte_no); }
+  if (!is_static && rc == may_rewrite) {
+    patch_bytecode(Bytecodes::_fast_aputfield, Rbc, Rscratch, true, byte_no);
+  }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
     __ beq(CR_is_vol, Lvolatile); // Volatile?
     __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
@@ -2839,6 +2896,10 @@
   putfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_putfield(int byte_no) {
+  putfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::putstatic(int byte_no) {
   putfield_or_static(byte_no, true);
 }
@@ -3259,7 +3320,9 @@
   __ testbitdi(CCR0, R0, Rflags, ConstantPoolCacheEntry::is_vfinal_shift);
   __ bfalse(CCR0, LnotFinal);
 
-  patch_bytecode(Bytecodes::_fast_invokevfinal, Rnew_bc, R12_scratch2);
+  if (RewriteBytecodes && !UseSharedSpaces) {
+    patch_bytecode(Bytecodes::_fast_invokevfinal, Rnew_bc, R12_scratch2);
+  }
   invokevfinal_helper(Rvtableindex_or_method, Rflags, R11_scratch1, R12_scratch2);
 
   __ align(32, 12);
@@ -3795,9 +3858,9 @@
   transition(atos, itos);
 
   Label Ldone, Lis_null, Lquicked, Lresolved;
-  Register Roffset         = R5_ARG3,
+  Register Roffset         = R6_ARG4,
            RobjKlass       = R4_ARG2,
-           RspecifiedKlass = R6_ARG4, // Generate_ClassCastException_verbose_handler will expect the value in this register.
+           RspecifiedKlass = R5_ARG3,
            Rcpool          = R11_scratch1,
            Rtags           = R12_scratch2;
 
--- a/hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,12 +32,13 @@
 #include "runtime/os.hpp"
 #include "runtime/stubCodeGenerator.hpp"
 #include "utilities/defaultStream.hpp"
+#include "utilities/globalDefinitions.hpp"
 #include "vm_version_ppc.hpp"
 
 # include <sys/sysinfo.h>
 
 int VM_Version::_features = VM_Version::unknown_m;
-int VM_Version::_measured_cache_line_size = 128; // default value
+int VM_Version::_measured_cache_line_size = 32; // pessimistic init value
 const char* VM_Version::_features_str = "";
 bool VM_Version::_is_determine_features_test_running = false;
 
@@ -55,7 +56,9 @@
 
   // If PowerArchitecturePPC64 hasn't been specified explicitly determine from features.
   if (FLAG_IS_DEFAULT(PowerArchitecturePPC64)) {
-    if (VM_Version::has_popcntw()) {
+    if (VM_Version::has_lqarx()) {
+      FLAG_SET_ERGO(uintx, PowerArchitecturePPC64, 8);
+    } else if (VM_Version::has_popcntw()) {
       FLAG_SET_ERGO(uintx, PowerArchitecturePPC64, 7);
     } else if (VM_Version::has_cmpb()) {
       FLAG_SET_ERGO(uintx, PowerArchitecturePPC64, 6);
@@ -66,8 +69,14 @@
     }
   }
   guarantee(PowerArchitecturePPC64 == 0 || PowerArchitecturePPC64 == 5 ||
-            PowerArchitecturePPC64 == 6 || PowerArchitecturePPC64 == 7,
-            "PowerArchitecturePPC64 should be 0, 5, 6 or 7");
+            PowerArchitecturePPC64 == 6 || PowerArchitecturePPC64 == 7 ||
+            PowerArchitecturePPC64 == 8,
+            "PowerArchitecturePPC64 should be 0, 5, 6, 7, or 8");
+
+  // Power 8: Configure Data Stream Control Register.
+  if (PowerArchitecturePPC64 >= 8) {
+    config_dscr();
+  }
 
   if (!UseSIGTRAP) {
     MSG(TrapBasedICMissChecks);
@@ -97,7 +106,7 @@
   // Create and print feature-string.
   char buf[(num_features+1) * 16]; // Max 16 chars per feature.
   jio_snprintf(buf, sizeof(buf),
-               "ppc64%s%s%s%s%s%s%s%s",
+               "ppc64%s%s%s%s%s%s%s%s%s%s%s%s",
                (has_fsqrt()   ? " fsqrt"   : ""),
                (has_isel()    ? " isel"    : ""),
                (has_lxarxeh() ? " lxarxeh" : ""),
@@ -106,11 +115,17 @@
                (has_popcntb() ? " popcntb" : ""),
                (has_popcntw() ? " popcntw" : ""),
                (has_fcfids()  ? " fcfids"  : ""),
-               (has_vand()    ? " vand"    : "")
+               (has_vand()    ? " vand"    : ""),
+               (has_lqarx()   ? " lqarx"   : ""),
+               (has_vcipher() ? " vcipher" : ""),
+               (has_vpmsumb() ? " vpmsumb" : ""),
+               (has_tcheck()  ? " tcheck"  : "")
                // Make sure number of %s matches num_features!
               );
   _features_str = os::strdup(buf);
-  NOT_PRODUCT(if (Verbose) print_features(););
+  if (Verbose) {
+    print_features();
+  }
 
   // PPC64 supports 8-byte compare-exchange operations (see
   // Atomic::cmpxchg and StubGenerator::generate_atomic_cmpxchg_ptr)
@@ -171,7 +186,86 @@
     FLAG_SET_DEFAULT(UseSHA256Intrinsics, false);
     FLAG_SET_DEFAULT(UseSHA512Intrinsics, false);
   }
+  // Adjust RTM (Restricted Transactional Memory) flags.
+  if (!has_tcheck() && UseRTMLocking) {
+    // Can't continue because UseRTMLocking affects UseBiasedLocking flag
+    // setting during arguments processing. See use_biased_locking().
+    // VM_Version_init() is executed after UseBiasedLocking is used
+    // in Thread::allocate().
+    vm_exit_during_initialization("RTM instructions are not available on this CPU");
+  }
 
+  if (UseRTMLocking) {
+#if INCLUDE_RTM_OPT
+    if (!UnlockExperimentalVMOptions) {
+      vm_exit_during_initialization("UseRTMLocking is only available as experimental option on this platform. "
+                                    "It must be enabled via -XX:+UnlockExperimentalVMOptions flag.");
+    } else {
+      warning("UseRTMLocking is only available as experimental option on this platform.");
+    }
+    if (!FLAG_IS_CMDLINE(UseRTMLocking)) {
+      // RTM locking should be used only for applications with
+      // high lock contention. For now we do not use it by default.
+      vm_exit_during_initialization("UseRTMLocking flag should be only set on command line");
+    }
+    if (!is_power_of_2(RTMTotalCountIncrRate)) {
+      warning("RTMTotalCountIncrRate must be a power of 2, resetting it to 64");
+      FLAG_SET_DEFAULT(RTMTotalCountIncrRate, 64);
+    }
+    if (RTMAbortRatio < 0 || RTMAbortRatio > 100) {
+      warning("RTMAbortRatio must be in the range 0 to 100, resetting it to 50");
+      FLAG_SET_DEFAULT(RTMAbortRatio, 50);
+    }
+    FLAG_SET_ERGO(bool, UseNewFastLockPPC64, false); // Does not implement TM.
+    guarantee(RTMSpinLoopCount > 0, "unsupported");
+#else
+    // Only C2 does RTM locking optimization.
+    // Can't continue because UseRTMLocking affects UseBiasedLocking flag
+    // setting during arguments processing. See use_biased_locking().
+    vm_exit_during_initialization("RTM locking optimization is not supported in this VM");
+#endif
+  } else { // !UseRTMLocking
+    if (UseRTMForStackLocks) {
+      if (!FLAG_IS_DEFAULT(UseRTMForStackLocks)) {
+        warning("UseRTMForStackLocks flag should be off when UseRTMLocking flag is off");
+      }
+      FLAG_SET_DEFAULT(UseRTMForStackLocks, false);
+    }
+    if (UseRTMDeopt) {
+      FLAG_SET_DEFAULT(UseRTMDeopt, false);
+    }
+    if (PrintPreciseRTMLockingStatistics) {
+      FLAG_SET_DEFAULT(PrintPreciseRTMLockingStatistics, false);
+    }
+  }
+
+  // This machine does not allow unaligned memory accesses
+  if (UseUnalignedAccesses) {
+    if (!FLAG_IS_DEFAULT(UseUnalignedAccesses))
+      warning("Unaligned memory access is not available on this CPU");
+    FLAG_SET_DEFAULT(UseUnalignedAccesses, false);
+  }
+}
+
+bool VM_Version::use_biased_locking() {
+#if INCLUDE_RTM_OPT
+  // RTM locking is most useful when there is high lock contention and
+  // low data contention. With high lock contention the lock is usually
+  // inflated and biased locking is not suitable for that case.
+  // RTM locking code requires that biased locking is off.
+  // Note: we can't switch off UseBiasedLocking in get_processor_features()
+  // because it is used by Thread::allocate() which is called before
+  // VM_Version::initialize().
+  if (UseRTMLocking && UseBiasedLocking) {
+    if (FLAG_IS_DEFAULT(UseBiasedLocking)) {
+      FLAG_SET_DEFAULT(UseBiasedLocking, false);
+    } else {
+      warning("Biased locking is not supported with RTM locking; ignoring UseBiasedLocking flag." );
+      UseBiasedLocking = false;
+    }
+  }
+#endif
+  return UseBiasedLocking;
 }
 
 void VM_Version::print_features() {
@@ -437,16 +531,19 @@
   // Don't use R0 in ldarx.
   // Keep R3_ARG1 unmodified, it contains &field (see below).
   // Keep R4_ARG2 unmodified, it contains offset = 0 (see below).
-  a->fsqrt(F3, F4);                            // code[0] -> fsqrt_m
-  a->fsqrts(F3, F4);                           // code[1] -> fsqrts_m
-  a->isel(R7, R5, R6, 0);                      // code[2] -> isel_m
-  a->ldarx_unchecked(R7, R3_ARG1, R4_ARG2, 1); // code[3] -> lxarx_m
-  a->cmpb(R7, R5, R6);                         // code[4] -> bcmp
-  //a->mftgpr(R7, F3);                         // code[5] -> mftgpr
-  a->popcntb(R7, R5);                          // code[6] -> popcntb
-  a->popcntw(R7, R5);                          // code[7] -> popcntw
-  a->fcfids(F3, F4);                           // code[8] -> fcfids
-  a->vand(VR0, VR0, VR0);                      // code[9] -> vand
+  a->fsqrt(F3, F4);                            // code[0]  -> fsqrt_m
+  a->fsqrts(F3, F4);                           // code[1]  -> fsqrts_m
+  a->isel(R7, R5, R6, 0);                      // code[2]  -> isel_m
+  a->ldarx_unchecked(R7, R3_ARG1, R4_ARG2, 1); // code[3]  -> lxarx_m
+  a->cmpb(R7, R5, R6);                         // code[4]  -> cmpb
+  a->popcntb(R7, R5);                          // code[5]  -> popcntb
+  a->popcntw(R7, R5);                          // code[6]  -> popcntw
+  a->fcfids(F3, F4);                           // code[7]  -> fcfids
+  a->vand(VR0, VR0, VR0);                      // code[8]  -> vand
+  a->lqarx_unchecked(R7, R3_ARG1, R4_ARG2, 1); // code[9]  -> lqarx_m
+  a->vcipher(VR0, VR1, VR2);                   // code[10] -> vcipher
+  a->vpmsumb(VR0, VR1, VR2);                   // code[11] -> vpmsumb
+  a->tcheck(0);                                // code[12] -> tcheck
   a->blr();
 
   // Emit function to set one cache line to zero. Emit function descriptor and get pointer to it.
@@ -485,11 +582,14 @@
   if (code[feature_cntr++]) features |= isel_m;
   if (code[feature_cntr++]) features |= lxarxeh_m;
   if (code[feature_cntr++]) features |= cmpb_m;
-  //if(code[feature_cntr++])features |= mftgpr_m;
   if (code[feature_cntr++]) features |= popcntb_m;
   if (code[feature_cntr++]) features |= popcntw_m;
   if (code[feature_cntr++]) features |= fcfids_m;
   if (code[feature_cntr++]) features |= vand_m;
+  if (code[feature_cntr++]) features |= lqarx_m;
+  if (code[feature_cntr++]) features |= vcipher_m;
+  if (code[feature_cntr++]) features |= vpmsumb_m;
+  if (code[feature_cntr++]) features |= tcheck_m;
 
   // Print the detection code.
   if (PrintAssembly) {
@@ -501,6 +601,69 @@
   _features = features;
 }
 
+// Power 8: Configure Data Stream Control Register.
+void VM_Version::config_dscr() {
+  assert(has_tcheck(), "Only execute on Power 8 or later!");
+
+  // 7 InstWords for each call (function descriptor + blr instruction).
+  const int code_size = (2+2*7)*BytesPerInstWord;
+
+  // Allocate space for the code.
+  ResourceMark rm;
+  CodeBuffer cb("config_dscr", code_size, 0);
+  MacroAssembler* a = new MacroAssembler(&cb);
+
+  // Emit code.
+  uint64_t (*get_dscr)() = (uint64_t(*)())(void *)a->emit_fd();
+  uint32_t *code = (uint32_t *)a->pc();
+  a->mfdscr(R3);
+  a->blr();
+
+  void (*set_dscr)(long) = (void(*)(long))(void *)a->emit_fd();
+  a->mtdscr(R3);
+  a->blr();
+
+  uint32_t *code_end = (uint32_t *)a->pc();
+  a->flush();
+
+  // Print the detection code.
+  if (PrintAssembly) {
+    ttyLocker ttyl;
+    tty->print_cr("Decoding dscr configuration stub at " INTPTR_FORMAT " before execution:", code);
+    Disassembler::decode((u_char*)code, (u_char*)code_end, tty);
+  }
+
+  // Apply the configuration if needed.
+  uint64_t dscr_val = (*get_dscr)();
+  if (Verbose) {
+    tty->print_cr("dscr value was 0x%lx" , dscr_val);
+  }
+  bool change_requested = false;
+  if (DSCR_PPC64 != (uintx)-1) {
+    dscr_val = DSCR_PPC64;
+    change_requested = true;
+  }
+  if (DSCR_DPFD_PPC64 <= 7) {
+    uint64_t mask = 0x7;
+    if ((dscr_val & mask) != DSCR_DPFD_PPC64) {
+      dscr_val = (dscr_val & ~mask) | (DSCR_DPFD_PPC64);
+      change_requested = true;
+    }
+  }
+  if (DSCR_URG_PPC64 <= 7) {
+    uint64_t mask = 0x7 << 6;
+    if ((dscr_val & mask) != DSCR_DPFD_PPC64 << 6) {
+      dscr_val = (dscr_val & ~mask) | (DSCR_URG_PPC64 << 6);
+      change_requested = true;
+    }
+  }
+  if (change_requested) {
+    (*set_dscr)(dscr_val);
+    if (Verbose) {
+      tty->print_cr("dscr was set to 0x%lx" , (*get_dscr)());
+    }
+  }
+}
 
 static int saved_features = 0;
 
--- a/hotspot/src/cpu/ppc/vm/vm_version_ppc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/vm_version_ppc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,7 +41,10 @@
     popcntw,
     fcfids,
     vand,
-    dcba,
+    lqarx,
+    vcipher,
+    vpmsumb,
+    tcheck,
     num_features // last entry to count features
   };
   enum Feature_Flag_Set {
@@ -55,7 +58,10 @@
     popcntw_m             = (1 << popcntw),
     fcfids_m              = (1 << fcfids ),
     vand_m                = (1 << vand   ),
-    dcba_m                = (1 << dcba   ),
+    lqarx_m               = (1 << lqarx  ),
+    vcipher_m             = (1 << vcipher),
+    vpmsumb_m             = (1 << vpmsumb),
+    tcheck_m              = (1 << tcheck ),
     all_features_m        = -1
   };
   static int  _features;
@@ -65,12 +71,16 @@
 
   static void print_features();
   static void determine_features(); // also measures cache line size
+  static void config_dscr(); // Power 8: Configure Data Stream Control Register.
   static void determine_section_size();
   static void power6_micro_bench();
 public:
   // Initialization
   static void initialize();
 
+  // Override Abstract_VM_Version implementation
+  static bool use_biased_locking();
+
   static bool is_determine_features_test_running() { return _is_determine_features_test_running; }
   // CPU instruction support
   static bool has_fsqrt()   { return (_features & fsqrt_m) != 0; }
@@ -82,7 +92,10 @@
   static bool has_popcntw() { return (_features & popcntw_m) != 0; }
   static bool has_fcfids()  { return (_features & fcfids_m) != 0; }
   static bool has_vand()    { return (_features & vand_m) != 0; }
-  static bool has_dcba()    { return (_features & dcba_m) != 0; }
+  static bool has_lqarx()   { return (_features & lqarx_m) != 0; }
+  static bool has_vcipher() { return (_features & vcipher_m) != 0; }
+  static bool has_vpmsumb() { return (_features & vpmsumb_m) != 0; }
+  static bool has_tcheck()  { return (_features & tcheck_m) != 0; }
 
   static const char* cpu_features() { return _features_str; }
 
--- a/hotspot/src/cpu/ppc/vm/vtableStubs_ppc_64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/ppc/vm/vtableStubs_ppc_64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,6 @@
  */
 
 #include "precompiled.hpp"
-#include "asm/assembler.hpp"
 #include "asm/macroAssembler.inline.hpp"
 #include "code/vtableStubs.hpp"
 #include "interp_masm_ppc_64.hpp"
--- a/hotspot/src/cpu/sparc/vm/globals_sparc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/globals_sparc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -74,6 +74,8 @@
 
 define_pd_global(bool, UseMembar,            false);
 
+define_pd_global(bool, PreserveFramePointer, false);
+
 // GC Ergo Flags
 define_pd_global(size_t, CMSYoungGenPerWorker, 16*M);  // default max size of CMS young gen, per GC worker thread
 
--- a/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -203,7 +203,6 @@
   void field_offset_at(int n, Register tmp, Register dest, Register base);
   int  field_offset_at(Register object, address bcp, int offset);
   void fast_iaaccess(int n, address bcp);
-  void fast_iagetfield(address bcp);
   void fast_iaputfield(address bcp, bool do_store_check );
 
   void index_check(Register array, Register index, int index_shift, Register tmp, Register res);
--- a/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -3019,44 +3019,107 @@
    // past the store that releases the lock.  But TSO is a strong memory model
    // and that particular flavor of barrier is a noop, so we can safely elide it.
    // Note that we use 1-0 locking by default for the inflated case.  We
-   // close the resultant (and rare) race by having contented threads in
+   // close the resultant (and rare) race by having contended threads in
    // monitorenter periodically poll _owner.
-   ld_ptr(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner), Rscratch);
-   ld_ptr(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions), Rbox);
-   xor3(Rscratch, G2_thread, Rscratch);
-   orcc(Rbox, Rscratch, Rbox);
-   brx(Assembler::notZero, false, Assembler::pn, done);
-   delayed()->
-   ld_ptr(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(EntryList), Rscratch);
-   ld_ptr(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(cxq), Rbox);
-   orcc(Rbox, Rscratch, G0);
-   if (EmitSync & 65536) {
-      Label LSucc ;
-      brx(Assembler::notZero, false, Assembler::pn, LSucc);
-      delayed()->nop();
-      ba(done);
-      delayed()->st_ptr(G0, Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner));
-
-      bind(LSucc);
-      st_ptr(G0, Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner));
-      if (os::is_MP()) { membar (StoreLoad); }
-      ld_ptr(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ), Rscratch);
-      andcc(Rscratch, Rscratch, G0);
-      brx(Assembler::notZero, false, Assembler::pt, done);
-      delayed()->andcc(G0, G0, G0);
-      add(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner), Rmark);
-      mov(G2_thread, Rscratch);
-      cas_ptr(Rmark, G0, Rscratch);
-      // invert icc.zf and goto done
-      br_notnull(Rscratch, false, Assembler::pt, done);
-      delayed()->cmp(G0, G0);
-      ba(done);
-      delayed()->cmp(G0, 1);
+
+   if (EmitSync & 1024) {
+     // Emit code to check that _owner == Self
+     // We could fold the _owner test into subsequent code more efficiently
+     // than using a stand-alone check, but since _owner checking is off by
+     // default we don't bother. We also might consider predicating the
+     // _owner==Self check on Xcheck:jni or running on a debug build.
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)), Rscratch);
+     orcc(Rscratch, G0, G0);
+     brx(Assembler::notZero, false, Assembler::pn, done);
+     delayed()->nop();
+   }
+
+   if (EmitSync & 512) {
+     // classic lock release code absent 1-0 locking
+     //   m->Owner = null;
+     //   membar #storeload
+     //   if (m->cxq|m->EntryList) == null goto Success
+     //   if (m->succ != null) goto Success
+     //   if CAS (&m->Owner,0,Self) != 0 goto Success
+     //   goto SlowPath
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions)), Rbox);
+     orcc(Rbox, G0, G0);
+     brx(Assembler::notZero, false, Assembler::pn, done);
+     delayed()->nop();
+     st_ptr(G0, Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+     if (os::is_MP()) { membar(StoreLoad); }
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(EntryList)), Rscratch);
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(cxq)), Rbox);
+     orcc(Rbox, Rscratch, G0);
+     brx(Assembler::zero, false, Assembler::pt, done);
+     delayed()->
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), Rscratch);
+     andcc(Rscratch, Rscratch, G0);
+     brx(Assembler::notZero, false, Assembler::pt, done);
+     delayed()->andcc(G0, G0, G0);
+     add(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner), Rmark);
+     mov(G2_thread, Rscratch);
+     cas_ptr(Rmark, G0, Rscratch);
+     cmp(Rscratch, G0);
+     // invert icc.zf and goto done
+     brx(Assembler::notZero, false, Assembler::pt, done);
+     delayed()->cmp(G0, G0);
+     br(Assembler::always, false, Assembler::pt, done);
+     delayed()->cmp(G0, 1);
    } else {
-      brx(Assembler::notZero, false, Assembler::pn, done);
-      delayed()->nop();
-      ba(done);
-      delayed()->st_ptr(G0, Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner));
+     // 1-0 form : avoids CAS and MEMBAR in the common case
+     // Do not bother to ratify that m->Owner == Self.
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions)), Rbox);
+     orcc(Rbox, G0, G0);
+     brx(Assembler::notZero, false, Assembler::pn, done);
+     delayed()->
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(EntryList)), Rscratch);
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(cxq)), Rbox);
+     orcc(Rbox, Rscratch, G0);
+     if (EmitSync & 16384) {
+       // As an optional optimization, if (EntryList|cxq) != null and _succ is null then
+       // we should transfer control directly to the slow-path.
+       // This test makes the reacquire operation below very infrequent.
+       // The logic is equivalent to :
+       //   if (cxq|EntryList) == null : Owner=null; goto Success
+       //   if succ == null : goto SlowPath
+       //   Owner=null; membar #storeload
+       //   if succ != null : goto Success
+       //   if CAS(&Owner,null,Self) != null goto Success
+       //   goto SlowPath
+       brx(Assembler::zero, true, Assembler::pt, done);
+       delayed()->
+       st_ptr(G0, Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+       ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), Rscratch);
+       andcc(Rscratch, Rscratch, G0) ;
+       brx(Assembler::zero, false, Assembler::pt, done);
+       delayed()->orcc(G0, 1, G0);
+       st_ptr(G0, Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+     } else {
+       brx(Assembler::zero, false, Assembler::pt, done);
+       delayed()->
+       st_ptr(G0, Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+     }
+     if (os::is_MP()) { membar(StoreLoad); }
+     // Check that _succ is (or remains) non-zero
+     ld_ptr(Address(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), Rscratch);
+     andcc(Rscratch, Rscratch, G0);
+     brx(Assembler::notZero, false, Assembler::pt, done);
+     delayed()->andcc(G0, G0, G0);
+     add(Rmark, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner), Rmark);
+     mov(G2_thread, Rscratch);
+     cas_ptr(Rmark, G0, Rscratch);
+     cmp(Rscratch, G0);
+     // invert icc.zf and goto done
+     // A slightly better v8+/v9 idiom would be the following:
+     //   movrnz Rscratch,1,Rscratch
+     //   ba done
+     //   xorcc Rscratch,1,G0
+     // In v8+ mode the idiom would be valid IFF Rscratch was a G or O register
+     brx(Assembler::notZero, false, Assembler::pt, done);
+     delayed()->cmp(G0, G0);
+     br(Assembler::always, false, Assembler::pt, done);
+     delayed()->cmp(G0, 1);
    }
 
    bind   (LStacked);
@@ -3632,23 +3695,11 @@
     if (satb_log_enqueue_with_frame == 0) {
       generate_satb_log_enqueue(with_frame);
       assert(satb_log_enqueue_with_frame != 0, "postcondition.");
-      if (G1SATBPrintStubs) {
-        tty->print_cr("Generated with-frame satb enqueue:");
-        Disassembler::decode((u_char*)satb_log_enqueue_with_frame,
-                             satb_log_enqueue_with_frame_end,
-                             tty);
-      }
     }
   } else {
     if (satb_log_enqueue_frameless == 0) {
       generate_satb_log_enqueue(with_frame);
       assert(satb_log_enqueue_frameless != 0, "postcondition.");
-      if (G1SATBPrintStubs) {
-        tty->print_cr("Generated frameless satb enqueue:");
-        Disassembler::decode((u_char*)satb_log_enqueue_frameless,
-                             satb_log_enqueue_frameless_end,
-                             tty);
-      }
     }
   }
 }
@@ -3841,12 +3892,6 @@
   if (dirty_card_log_enqueue == 0) {
     generate_dirty_card_log_enqueue(byte_map_base);
     assert(dirty_card_log_enqueue != 0, "postcondition.");
-    if (G1SATBPrintStubs) {
-      tty->print_cr("Generated dirty_card enqueue:");
-      Disassembler::decode((u_char*)dirty_card_log_enqueue,
-                           dirty_card_log_enqueue_end,
-                           tty);
-    }
   }
 }
 
--- a/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2664,6 +2664,9 @@
     // disallows any pending_exception.
     __ mov(L3_box, O1);
 
+    // Pass in current thread pointer
+    __ mov(G2_thread, O2);
+
     __ call(CAST_FROM_FN_PTR(address, SharedRuntime::complete_monitor_unlocking_C), relocInfo::runtime_call_type);
     __ delayed()->mov(L4, O0);              // Need oop in O0
 
--- a/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -385,7 +385,6 @@
   __ verify_oop(Otos_i);
 }
 
-
 void TemplateTable::ldc2_w() {
   transition(vtos, vtos);
   Label Long, exit;
@@ -430,22 +429,28 @@
   __ bind(exit);
 }
 
-
 void TemplateTable::locals_index(Register reg, int offset) {
   __ ldub( at_bcp(offset), reg );
 }
 
-
 void TemplateTable::locals_index_wide(Register reg) {
   // offset is 2, not 1, because Lbcp points to wide prefix code
   __ get_2_byte_integer_at_bcp(2, G4_scratch, reg, InterpreterMacroAssembler::Unsigned);
 }
 
 void TemplateTable::iload() {
+  iload_internal();
+}
+
+void TemplateTable::nofast_iload() {
+  iload_internal(may_not_rewrite);
+}
+
+void TemplateTable::iload_internal(RewriteControl rc) {
   transition(vtos, itos);
   // Rewrite iload,iload  pair into fast_iload2
   //         iload,caload pair into fast_icaload
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     Label rewrite, done;
 
     // get next byte
@@ -672,8 +677,15 @@
   __ ld_ptr( Llocals, Interpreter::local_offset_in_bytes(n), Otos_i );
 }
 
-
 void TemplateTable::aload_0() {
+  aload_0_internal();
+}
+
+void TemplateTable::nofast_aload_0() {
+  aload_0_internal(may_not_rewrite);
+}
+
+void TemplateTable::aload_0_internal(RewriteControl rc) {
   transition(vtos, atos);
 
   // According to bytecode histograms, the pairs:
@@ -687,7 +699,7 @@
   // bytecode into a pair bytecode; otherwise it rewrites the current
   // bytecode into _fast_aload_0 that doesn't do the pair check anymore.
   //
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     Label rewrite, done;
 
     // get next byte
@@ -731,7 +743,6 @@
   }
 }
 
-
 void TemplateTable::istore() {
   transition(itos, vtos);
   locals_index(G3_scratch);
@@ -2045,30 +2056,21 @@
                                             Register index,
                                             size_t index_size) {
   // Depends on cpCacheOop layout!
+
   Label resolved;
-
-    assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
-    __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, Lbyte_code, byte_no, 1, index_size);
-    __ cmp(Lbyte_code, (int) bytecode());  // have we resolved this bytecode?
-    __ br(Assembler::equal, false, Assembler::pt, resolved);
-    __ delayed()->set((int)bytecode(), O1);
-
-  address entry;
-  switch (bytecode()) {
-    case Bytecodes::_getstatic      : // fall through
-    case Bytecodes::_putstatic      : // fall through
-    case Bytecodes::_getfield       : // fall through
-    case Bytecodes::_putfield       : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_get_put); break;
-    case Bytecodes::_invokevirtual  : // fall through
-    case Bytecodes::_invokespecial  : // fall through
-    case Bytecodes::_invokestatic   : // fall through
-    case Bytecodes::_invokeinterface: entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invoke);  break;
-    case Bytecodes::_invokehandle   : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokehandle);  break;
-    case Bytecodes::_invokedynamic  : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokedynamic);  break;
-    default:
-      fatal(err_msg("unexpected bytecode: %s", Bytecodes::name(bytecode())));
-      break;
+  Bytecodes::Code code = bytecode();
+  switch (code) {
+  case Bytecodes::_nofast_getfield: code = Bytecodes::_getfield; break;
+  case Bytecodes::_nofast_putfield: code = Bytecodes::_putfield; break;
   }
+
+  assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
+  __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, Lbyte_code, byte_no, 1, index_size);
+  __ cmp(Lbyte_code, code);  // have we resolved this bytecode?
+  __ br(Assembler::equal, false, Assembler::pt, resolved);
+  __ delayed()->set(code, O1);
+
+  address entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_from_cache);
   // first time invocation - must resolve first
   __ call_VM(noreg, entry, O1);
   // Update registers with resolved info
@@ -2183,7 +2185,7 @@
   }
 }
 
-void TemplateTable::getfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
 
   Register Rcache = G3_scratch;
@@ -2231,7 +2233,7 @@
   __ load_heap_oop(Rclass, Roffset, Otos_i);
   __ verify_oop(Otos_i);
   __ push(atos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_agetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2246,7 +2248,7 @@
   // itos
   __ ld(Rclass, Roffset, Otos_i);
   __ push(itos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_igetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2262,7 +2264,7 @@
   // load must be atomic
   __ ld_long(Rclass, Roffset, Otos_l);
   __ push(ltos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_lgetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2277,7 +2279,7 @@
   // btos
   __ ldsb(Rclass, Roffset, Otos_i);
   __ push(itos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_bgetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2292,7 +2294,7 @@
   // ctos
   __ lduh(Rclass, Roffset, Otos_i);
   __ push(itos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_cgetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2307,7 +2309,7 @@
   // stos
   __ ldsh(Rclass, Roffset, Otos_i);
   __ push(itos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_sgetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2323,7 +2325,7 @@
   // ftos
   __ ldf(FloatRegisterImpl::S, Rclass, Roffset, Ftos_f);
   __ push(ftos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_fgetfield, G3_scratch, G4_scratch);
   }
   __ ba(checkVolatile);
@@ -2335,7 +2337,7 @@
   // dtos
   __ ldf(FloatRegisterImpl::D, Rclass, Roffset, Ftos_d);
   __ push(dtos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_dgetfield, G3_scratch, G4_scratch);
   }
 
@@ -2350,16 +2352,18 @@
   __ bind(exit);
 }
 
-
 void TemplateTable::getfield(int byte_no) {
   getfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_getfield(int byte_no) {
+  getfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::getstatic(int byte_no) {
   getfield_or_static(byte_no, true);
 }
 
-
 void TemplateTable::fast_accessfield(TosState state) {
   transition(atos, state);
   Register Rcache  = G3_scratch;
@@ -2544,7 +2548,7 @@
   __ verify_oop(r);
 }
 
-void TemplateTable::putfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
   Register Rcache = G3_scratch;
   Register index  = G4_scratch;
@@ -2620,7 +2624,7 @@
       __ pop_i();
       pop_and_check_object(Rclass);
       __ st(Otos_i, Rclass, Roffset);
-      patch_bytecode(Bytecodes::_fast_iputfield, G3_scratch, G4_scratch, true, byte_no);
+      if (rc == may_rewrite) patch_bytecode(Bytecodes::_fast_iputfield, G3_scratch, G4_scratch, true, byte_no);
       __ ba(checkVolatile);
       __ delayed()->tst(Lscratch);
     }
@@ -2636,7 +2640,7 @@
       pop_and_check_object(Rclass);
       __ verify_oop(Otos_i);
       do_oop_store(_masm, Rclass, Roffset, 0, Otos_i, G1_scratch, _bs->kind(), false);
-      patch_bytecode(Bytecodes::_fast_aputfield, G3_scratch, G4_scratch, true, byte_no);
+      if (rc == may_rewrite) patch_bytecode(Bytecodes::_fast_aputfield, G3_scratch, G4_scratch, true, byte_no);
       __ ba(checkVolatile);
       __ delayed()->tst(Lscratch);
     }
@@ -2653,7 +2657,7 @@
     __ pop_i();
     if (!is_static) pop_and_check_object(Rclass);
     __ stb(Otos_i, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_bputfield, G3_scratch, G4_scratch, true, byte_no);
     }
     __ ba(checkVolatile);
@@ -2670,7 +2674,7 @@
     __ pop_l();
     if (!is_static) pop_and_check_object(Rclass);
     __ st_long(Otos_l, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_lputfield, G3_scratch, G4_scratch, true, byte_no);
     }
     __ ba(checkVolatile);
@@ -2687,7 +2691,7 @@
     __ pop_i();
     if (!is_static) pop_and_check_object(Rclass);
     __ sth(Otos_i, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_cputfield, G3_scratch, G4_scratch, true, byte_no);
     }
     __ ba(checkVolatile);
@@ -2704,7 +2708,7 @@
     __ pop_i();
     if (!is_static) pop_and_check_object(Rclass);
     __ sth(Otos_i, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_sputfield, G3_scratch, G4_scratch, true, byte_no);
     }
     __ ba(checkVolatile);
@@ -2721,7 +2725,7 @@
     __ pop_f();
     if (!is_static) pop_and_check_object(Rclass);
     __ stf(FloatRegisterImpl::S, Ftos_f, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_fputfield, G3_scratch, G4_scratch, true, byte_no);
     }
     __ ba(checkVolatile);
@@ -2735,7 +2739,7 @@
     __ pop_d();
     if (!is_static) pop_and_check_object(Rclass);
     __ stf(FloatRegisterImpl::D, Ftos_d, Rclass, Roffset);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_dputfield, G3_scratch, G4_scratch, true, byte_no);
     }
   }
@@ -2809,16 +2813,18 @@
   }
 }
 
-
 void TemplateTable::putfield(int byte_no) {
   putfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_putfield(int byte_no) {
+  putfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::putstatic(int byte_no) {
   putfield_or_static(byte_no, true);
 }
 
-
 void TemplateTable::fast_xaccess(TosState state) {
   transition(vtos, state);
   Register Rcache = G3_scratch;
@@ -2971,7 +2977,9 @@
   __ br(Assembler::zero, false, Assembler::pt, notFinal);
   __ delayed()->and3(Rret, 0xFF, G4_scratch);      // gets number of parameters
 
-  patch_bytecode(Bytecodes::_fast_invokevfinal, Rscratch, Rtemp);
+  if (RewriteBytecodes && !UseSharedSpaces) {
+    patch_bytecode(Bytecodes::_fast_invokevfinal, Rscratch, Rtemp);
+  }
 
   invokevfinal_helper(Rscratch, Rret);
 
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,7 +32,7 @@
 
 int VM_Version::_features = VM_Version::unknown_m;
 const char* VM_Version::_features_str = "";
-unsigned int VM_Version::_L2_cache_line_size = 0;
+unsigned int VM_Version::_L2_data_cache_line_size = 0;
 
 void VM_Version::initialize() {
   _features = determine_features();
@@ -356,10 +356,17 @@
     (cache_line_size > ContendedPaddingWidth))
     ContendedPaddingWidth = cache_line_size;
 
+  // This machine does not allow unaligned memory accesses
+  if (UseUnalignedAccesses) {
+    if (!FLAG_IS_DEFAULT(UseUnalignedAccesses))
+      warning("Unaligned memory access is not available on this CPU");
+    FLAG_SET_DEFAULT(UseUnalignedAccesses, false);
+  }
+
 #ifndef PRODUCT
   if (PrintMiscellaneous && Verbose) {
     tty->print_cr("L1 data cache line size: %u", L1_data_cache_line_size());
-    tty->print_cr("L2 cache line size: %u", L2_cache_line_size());
+    tty->print_cr("L2 data cache line size: %u", L2_data_cache_line_size());
     tty->print("Allocation");
     if (AllocatePrefetchStyle <= 0) {
       tty->print_cr(": no prefetching");
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -96,8 +96,8 @@
   static int  _features;
   static const char* _features_str;
 
-  static unsigned int _L2_cache_line_size;
-  static unsigned int L2_cache_line_size() { return _L2_cache_line_size; }
+  static unsigned int _L2_data_cache_line_size;
+  static unsigned int L2_data_cache_line_size() { return _L2_data_cache_line_size; }
 
   static void print_features();
   static int  determine_features();
@@ -171,7 +171,7 @@
   static const char* cpu_features()     { return _features_str; }
 
   // default prefetch block size on sparc
-  static intx prefetch_data_size()      { return L2_cache_line_size();  }
+  static intx prefetch_data_size()      { return L2_data_cache_line_size();  }
 
   // Prefetch
   static intx prefetch_copy_interval_in_bytes() {
--- a/hotspot/src/cpu/x86/vm/assembler_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/assembler_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -3359,6 +3359,20 @@
 
 
 // Integer vector arithmetic
+void Assembler::vphaddw(XMMRegister dst, XMMRegister nds, XMMRegister src, bool vector256) {
+  assert(VM_Version::supports_avx() && !vector256 || VM_Version::supports_avx2(), "256 bit integer vectors requires AVX2");
+  int encode = vex_prefix_and_encode(dst, nds, src, VEX_SIMD_66, vector256, VEX_OPCODE_0F_38);
+  emit_int8(0x01);
+  emit_int8((unsigned char)(0xC0 | encode));
+}
+
+void Assembler::vphaddd(XMMRegister dst, XMMRegister nds, XMMRegister src, bool vector256) {
+  assert(VM_Version::supports_avx() && !vector256 || VM_Version::supports_avx2(), "256 bit integer vectors requires AVX2");
+  int encode = vex_prefix_and_encode(dst, nds, src, VEX_SIMD_66, vector256, VEX_OPCODE_0F_38);
+  emit_int8(0x02);
+  emit_int8((unsigned char)(0xC0 | encode));
+}
+
 void Assembler::paddb(XMMRegister dst, XMMRegister src) {
   NOT_LP64(assert(VM_Version::supports_sse2(), ""));
   emit_simd_arith(0xFC, dst, src, VEX_SIMD_66);
@@ -3379,6 +3393,20 @@
   emit_simd_arith(0xD4, dst, src, VEX_SIMD_66);
 }
 
+void Assembler::phaddw(XMMRegister dst, XMMRegister src) {
+  NOT_LP64(assert(VM_Version::supports_sse3(), ""));
+  int encode = simd_prefix_and_encode(dst, dst, src, VEX_SIMD_66, VEX_OPCODE_0F_38);
+  emit_int8(0x01);
+  emit_int8((unsigned char)(0xC0 | encode));
+}
+
+void Assembler::phaddd(XMMRegister dst, XMMRegister src) {
+  NOT_LP64(assert(VM_Version::supports_sse3(), ""));
+  int encode = simd_prefix_and_encode(dst, dst, src, VEX_SIMD_66, VEX_OPCODE_0F_38);
+  emit_int8(0x02);
+  emit_int8((unsigned char)(0xC0 | encode));
+}
+
 void Assembler::vpaddb(XMMRegister dst, XMMRegister nds, XMMRegister src, bool vector256) {
   assert(VM_Version::supports_avx() && !vector256 || VM_Version::supports_avx2(), "256 bit integer vectors requires AVX2");
   emit_vex_arith(0xFC, dst, nds, src, VEX_SIMD_66, vector256);
@@ -3804,6 +3832,17 @@
   emit_int8(0x01);
 }
 
+void Assembler::vextractf128h(XMMRegister dst, XMMRegister src) {
+  assert(VM_Version::supports_avx(), "");
+  bool vector256 = true;
+  int encode = vex_prefix_and_encode(src, xnoreg, dst, VEX_SIMD_66, vector256, VEX_OPCODE_0F_3A);
+  emit_int8(0x19);
+  emit_int8((unsigned char)(0xC0 | encode));
+  // 0x00 - insert into lower 128 bits
+  // 0x01 - insert into upper 128 bits
+  emit_int8(0x01);
+}
+
 void Assembler::vextractf128h(Address dst, XMMRegister src) {
   assert(VM_Version::supports_avx(), "");
   InstructionMark im(this);
--- a/hotspot/src/cpu/x86/vm/assembler_x86.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/assembler_x86.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -142,8 +142,10 @@
 
 #endif // _LP64
 
-// JSR 292 fixed register usages:
-REGISTER_DECLARATION(Register, rbp_mh_SP_save, rbp);
+// JSR 292
+// On x86, the SP does not have to be saved when invoking method handle intrinsics
+// or compiled lambda forms. We indicate that by setting rbp_mh_SP_save to noreg.
+REGISTER_DECLARATION(Register, rbp_mh_SP_save, noreg);
 
 // Address is an abstraction used to represent a memory location
 // using any of the amd64 addressing modes with one object.
@@ -1777,6 +1779,12 @@
   void vxorpd(XMMRegister dst, XMMRegister nds, Address src, bool vector256);
   void vxorps(XMMRegister dst, XMMRegister nds, Address src, bool vector256);
 
+  // Add horizontal packed integers
+  void vphaddw(XMMRegister dst, XMMRegister nds, XMMRegister src, bool vector256);
+  void vphaddd(XMMRegister dst, XMMRegister nds, XMMRegister src, bool vector256);
+  void phaddw(XMMRegister dst, XMMRegister src);
+  void phaddd(XMMRegister dst, XMMRegister src);
+
   // Add packed integers
   void paddb(XMMRegister dst, XMMRegister src);
   void paddw(XMMRegister dst, XMMRegister src);
@@ -1869,6 +1877,7 @@
   // Copy low 128bit into high 128bit of YMM registers.
   void vinsertf128h(XMMRegister dst, XMMRegister nds, XMMRegister src);
   void vinserti128h(XMMRegister dst, XMMRegister nds, XMMRegister src);
+  void vextractf128h(XMMRegister dst, XMMRegister src);
 
   // Load/store high 128bit of YMM registers which does not destroy other half.
   void vinsertf128h(XMMRegister dst, Address src);
--- a/hotspot/src/cpu/x86/vm/c1_FrameMap_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/c1_FrameMap_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -343,14 +343,13 @@
   return FrameMap::rsp_opr;
 }
 
-
 // JSR 292
+// On x86, there is no need to save the SP, because neither
+// method handle intrinsics, nor compiled lambda forms modify it.
 LIR_Opr FrameMap::method_handle_invoke_SP_save_opr() {
-  assert(rbp == rbp_mh_SP_save, "must be same register");
-  return rbp_opr;
+  return LIR_OprFact::illegalOpr;
 }
 
-
 bool FrameMap::validate_frame() {
   return true;
 }
--- a/hotspot/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/c1_MacroAssembler_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -360,6 +360,9 @@
   generate_stack_overflow_check(bang_size_in_bytes);
 
   push(rbp);
+  if (PreserveFramePointer) {
+    mov(rbp, rsp);
+  }
 #ifdef TIERED
   // c2 leaves fpu stack dirty. Clean it on entry
   if (UseSSE < 2 ) {
--- a/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -754,14 +754,9 @@
     // WIN64_ONLY: No need to add frame::arg_reg_save_area_bytes to SP
     // since we do a leave anyway.
 
-    // Pop the return address since we are possibly changing SP (restoring from BP).
+    // Pop the return address.
     __ leave();
     __ pop(rcx);
-
-    // Restore SP from BP if the exception PC is a method handle call site.
-    NOT_LP64(__ get_thread(thread);)
-    __ cmpl(Address(thread, JavaThread::is_method_handle_return_offset()), 0);
-    __ cmovptr(Assembler::notEqual, rsp, rbp_mh_SP_save);
     __ jmp(rcx);  // jump to exception handler
     break;
   default:  ShouldNotReachHere();
@@ -832,11 +827,6 @@
   // the pop is also necessary to simulate the effect of a ret(0)
   __ pop(exception_pc);
 
-  // Restore SP from BP if the exception PC is a method handle call site.
-  NOT_LP64(__ get_thread(thread);)
-  __ cmpl(Address(thread, JavaThread::is_method_handle_return_offset()), 0);
-  __ cmovptr(Assembler::notEqual, rsp, rbp_mh_SP_save);
-
   // continue at exception handler (return address removed)
   // note: do *not* remove arguments when unwinding the
   //       activation since the caller assumes having
--- a/hotspot/src/cpu/x86/vm/frame_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/frame_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -224,7 +224,8 @@
     if (sender_blob->is_nmethod()) {
         nmethod* nm = sender_blob->as_nmethod_or_null();
         if (nm != NULL) {
-            if (nm->is_deopt_mh_entry(sender_pc) || nm->is_deopt_entry(sender_pc)) {
+            if (nm->is_deopt_mh_entry(sender_pc) || nm->is_deopt_entry(sender_pc) ||
+                nm->method()->is_method_handle_intrinsic()) {
                 return false;
             }
         }
@@ -391,10 +392,9 @@
 // frame::verify_deopt_original_pc
 //
 // Verifies the calculated original PC of a deoptimization PC for the
-// given unextended SP.  The unextended SP might also be the saved SP
-// for MethodHandle call sites.
+// given unextended SP.
 #ifdef ASSERT
-void frame::verify_deopt_original_pc(nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return) {
+void frame::verify_deopt_original_pc(nmethod* nm, intptr_t* unextended_sp) {
   frame fr;
 
   // This is ugly but it's better than to change {get,set}_original_pc
@@ -404,33 +404,23 @@
 
   address original_pc = nm->get_original_pc(&fr);
   assert(nm->insts_contains(original_pc), "original PC must be in nmethod");
-  assert(nm->is_method_handle_return(original_pc) == is_method_handle_return, "must be");
 }
 #endif
 
 //------------------------------------------------------------------------------
 // frame::adjust_unextended_sp
 void frame::adjust_unextended_sp() {
-  // If we are returning to a compiled MethodHandle call site, the
-  // saved_fp will in fact be a saved value of the unextended SP.  The
-  // simplest way to tell whether we are returning to such a call site
-  // is as follows:
+  // On x86, sites calling method handle intrinsics and lambda forms are treated
+  // as any other call site. Therefore, no special action is needed when we are
+  // returning to any of these call sites.
 
   nmethod* sender_nm = (_cb == NULL) ? NULL : _cb->as_nmethod_or_null();
   if (sender_nm != NULL) {
-    // If the sender PC is a deoptimization point, get the original
-    // PC.  For MethodHandle call site the unextended_sp is stored in
-    // saved_fp.
-    if (sender_nm->is_deopt_mh_entry(_pc)) {
-      DEBUG_ONLY(verify_deopt_mh_original_pc(sender_nm, _fp));
-      _unextended_sp = _fp;
-    }
-    else if (sender_nm->is_deopt_entry(_pc)) {
+    // If the sender PC is a deoptimization point, get the original PC.
+    if (sender_nm->is_deopt_entry(_pc) ||
+        sender_nm->is_deopt_mh_entry(_pc)) {
       DEBUG_ONLY(verify_deopt_original_pc(sender_nm, _unextended_sp));
     }
-    else if (sender_nm->is_method_handle_return(_pc)) {
-      _unextended_sp = _fp;
-    }
   }
 }
 
--- a/hotspot/src/cpu/x86/vm/frame_x86.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/frame_x86.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -76,11 +76,11 @@
 //    [locals and parameters   ]
 //                               <- sender sp
 
-// [1] When the c++ interpreter calls a new method it returns to the frame
+// [1] When the C++ interpreter calls a new method it returns to the frame
 //     manager which allocates a new frame on the stack. In that case there
 //     is no real callee of this newly allocated frame. The frame manager is
-//     aware of the  additional frame(s) and will pop them as nested calls
-//     complete. Howevers tTo make it look good in the debugger the frame
+//     aware of the additional frame(s) and will pop them as nested calls
+//     complete. However, to make it look good in the debugger the frame
 //     manager actually installs a dummy pc pointing to RecursiveInterpreterActivation
 //     with a fake interpreter_state* parameter to make it easy to debug
 //     nested calls.
@@ -88,7 +88,7 @@
 // Note that contrary to the layout for the assembly interpreter the
 // expression stack allocated for the C++ interpreter is full sized.
 // However this is not as bad as it seems as the interpreter frame_manager
-// will truncate the unused space on succesive method calls.
+// will truncate the unused space on successive method calls.
 //
 // ------------------------------ C++ interpreter ----------------------------------------
 
@@ -167,10 +167,7 @@
 
 #ifdef ASSERT
   // Used in frame::sender_for_{interpreter,compiled}_frame
-  static void verify_deopt_original_pc(   nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return = false);
-  static void verify_deopt_mh_original_pc(nmethod* nm, intptr_t* unextended_sp) {
-    verify_deopt_original_pc(nm, unextended_sp, true);
-  }
+  static void verify_deopt_original_pc(nmethod* nm, intptr_t* unextended_sp);
 #endif
 
  public:
--- a/hotspot/src/cpu/x86/vm/frame_x86.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/frame_x86.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -94,7 +94,7 @@
   // find_blob call. This is also why we can have no asserts on the validity
   // of the pc we find here. AsyncGetCallTrace -> pd_get_top_frame_for_signal_handler
   // -> pd_last_frame should use a specialized version of pd_last_frame which could
-  // call a specilaized frame constructor instead of this one.
+  // call a specialized frame constructor instead of this one.
   // Then we could use the assert below. However this assert is of somewhat dubious
   // value.
   // assert(_pc != NULL, "no pc?");
--- a/hotspot/src/cpu/x86/vm/globalDefinitions_x86.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/globalDefinitions_x86.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -58,4 +58,9 @@
   #endif
 #endif
 
+#if defined(COMPILER2) && !defined(JAVASE_EMBEDDED)
+// Include Restricted Transactional Memory lock eliding optimization
+#define INCLUDE_RTM_OPT 1
+#endif
+
 #endif // CPU_X86_VM_GLOBALDEFINITIONS_X86_HPP
--- a/hotspot/src/cpu/x86/vm/globals_x86.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/globals_x86.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -82,14 +82,13 @@
 
 define_pd_global(uintx, TypeProfileLevel, 111);
 
+define_pd_global(bool, PreserveFramePointer, false);
+
 #define ARCH_FLAGS(develop, product, diagnostic, experimental, notproduct) \
                                                                             \
   develop(bool, IEEEPrecision, true,                                        \
           "Enables IEEE precision (for INTEL only)")                        \
                                                                             \
-  product(intx, FenceInstruction, 0,                                        \
-          "(Unsafe,Unstable) Experimental")                                 \
-                                                                            \
   product(bool, UseStoreImmI16, true,                                       \
           "Use store immediate 16-bits value instruction on x86")           \
                                                                             \
--- a/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1958,6 +1958,11 @@
 // Programmer's Guide and Specification" claims that an object locked by jni_monitorenter
 // should not be unlocked by "normal" java-level locking and vice-versa.  The specification
 // doesn't specify what will occur if a program engages in such mixed-mode locking, however.
+// Arguably given that the spec legislates the JNI case as undefined our implementation
+// could reasonably *avoid* checking owner in Fast_Unlock().
+// In the interest of performance we elide m->Owner==Self check in unlock.
+// A perfectly viable alternative is to elide the owner check except when
+// Xcheck:jni is enabled.
 
 void MacroAssembler::fast_unlock(Register objReg, Register boxReg, Register tmpReg, bool use_rtm) {
   assert(boxReg == rax, "");
@@ -1966,24 +1971,6 @@
   if (EmitSync & 4) {
     // Disable - inhibit all inlining.  Force control through the slow-path
     cmpptr (rsp, 0);
-  } else
-  if (EmitSync & 8) {
-    Label DONE_LABEL;
-    if (UseBiasedLocking) {
-       biased_locking_exit(objReg, tmpReg, DONE_LABEL);
-    }
-    // Classic stack-locking code ...
-    // Check whether the displaced header is 0
-    //(=> recursive unlock)
-    movptr(tmpReg, Address(boxReg, 0));
-    testptr(tmpReg, tmpReg);
-    jccb(Assembler::zero, DONE_LABEL);
-    // If not recursive lock, reset the header to displaced header
-    if (os::is_MP()) {
-      lock();
-    }
-    cmpxchgptr(tmpReg, Address(objReg, 0));   // Uses RAX which is box
-    bind(DONE_LABEL);
   } else {
     Label DONE_LABEL, Stacked, CheckSucc;
 
@@ -2060,9 +2047,9 @@
     // the number of loads below (currently 4) to just 2 or 3.
     // Refer to the comments in synchronizer.cpp.
     // In practice the chain of fetches doesn't seem to impact performance, however.
+    xorptr(boxReg, boxReg);
     if ((EmitSync & 65536) == 0 && (EmitSync & 256)) {
        // Attempt to reduce branch density - AMD's branch predictor.
-       xorptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
        orptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions)));
        orptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(EntryList)));
        orptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(cxq)));
@@ -2070,7 +2057,6 @@
        movptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)), NULL_WORD);
        jmpb  (DONE_LABEL);
     } else {
-       xorptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
        orptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions)));
        jccb  (Assembler::notZero, DONE_LABEL);
        movptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(EntryList)));
@@ -2093,10 +2079,8 @@
        bind  (CheckSucc);
 
        // Optional pre-test ... it's safe to elide this
-       if ((EmitSync & 16) == 0) {
-          cmpptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), (int32_t)NULL_WORD);
-          jccb  (Assembler::zero, LGoSlowPath);
-       }
+       cmpptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), (int32_t)NULL_WORD);
+       jccb(Assembler::zero, LGoSlowPath);
 
        // We have a classic Dekker-style idiom:
        //    ST m->_owner = 0 ; MEMBAR; LD m->_succ
@@ -2109,7 +2093,8 @@
        //     In older IA32 processors MFENCE is slower than lock:add or xchg
        //     particularly if the write-buffer is full as might be the case if
        //     if stores closely precede the fence or fence-equivalent instruction.
-       //     In more modern implementations MFENCE appears faster, however.
+       //     See https://blogs.oracle.com/dave/entry/instruction_selection_for_volatile_fences
+       //     as the situation has changed with Nehalem and Shanghai.
        // (3) In lieu of an explicit fence, use lock:addl to the top-of-stack
        //     The $lines underlying the top-of-stack should be in M-state.
        //     The locked add instruction is serializing, of course.
@@ -2126,11 +2111,7 @@
 
        movptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)), NULL_WORD);
        if (os::is_MP()) {
-          if (VM_Version::supports_sse2() && 1 == FenceInstruction) {
-            mfence();
-          } else {
-            lock (); addptr(Address(rsp, 0), 0);
-          }
+         lock(); addptr(Address(rsp, 0), 0);
        }
        // Ratify _succ remains non-null
        cmpptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), 0);
@@ -2179,8 +2160,17 @@
     }
 #else // _LP64
     // It's inflated
-    movptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
-    xorptr(boxReg, r15_thread);
+    if (EmitSync & 1024) {
+      // Emit code to check that _owner == Self
+      // We could fold the _owner test into subsequent code more efficiently
+      // than using a stand-alone check, but since _owner checking is off by
+      // default we don't bother. We also might consider predicating the
+      // _owner==Self check on Xcheck:jni or running on a debug build.
+      movptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+      xorptr(boxReg, r15_thread);
+    } else {
+      xorptr(boxReg, boxReg);
+    }
     orptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(recursions)));
     jccb  (Assembler::notZero, DONE_LABEL);
     movptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(cxq)));
@@ -2190,23 +2180,51 @@
     jmpb  (DONE_LABEL);
 
     if ((EmitSync & 65536) == 0) {
+      // Try to avoid passing control into the slow_path ...
       Label LSuccess, LGoSlowPath ;
       bind  (CheckSucc);
+
+      // The following optional optimization can be elided if necessary
+      // Effectively: if (succ == null) goto SlowPath
+      // The code reduces the window for a race, however,
+      // and thus benefits performance.
       cmpptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), (int32_t)NULL_WORD);
       jccb  (Assembler::zero, LGoSlowPath);
 
-      // I'd much rather use lock:andl m->_owner, 0 as it's faster than the
-      // the explicit ST;MEMBAR combination, but masm doesn't currently support
-      // "ANDQ M,IMM".  Don't use MFENCE here.  lock:add to TOS, xchg, etc
-      // are all faster when the write buffer is populated.
-      movptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)), (int32_t)NULL_WORD);
-      if (os::is_MP()) {
-         lock (); addl (Address(rsp, 0), 0);
+      if ((EmitSync & 16) && os::is_MP()) {
+        orptr(boxReg, boxReg);
+        xchgptr(boxReg, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
+      } else {
+        movptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)), (int32_t)NULL_WORD);
+        if (os::is_MP()) {
+          // Memory barrier/fence
+          // Dekker pivot point -- fulcrum : ST Owner; MEMBAR; LD Succ
+          // Instead of MFENCE we use a dummy locked add of 0 to the top-of-stack.
+          // This is faster on Nehalem and AMD Shanghai/Barcelona.
+          // See https://blogs.oracle.com/dave/entry/instruction_selection_for_volatile_fences
+          // We might also restructure (ST Owner=0;barrier;LD _Succ) to
+          // (mov box,0; xchgq box, &m->Owner; LD _succ) .
+          lock(); addl(Address(rsp, 0), 0);
+        }
       }
       cmpptr(Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(succ)), (int32_t)NULL_WORD);
       jccb  (Assembler::notZero, LSuccess);
 
-      movptr (boxReg, (int32_t)NULL_WORD);                   // box is really EAX
+      // Rare inopportune interleaving - race.
+      // The successor vanished in the small window above.
+      // The lock is contended -- (cxq|EntryList) != null -- and there's no apparent successor.
+      // We need to ensure progress and succession.
+      // Try to reacquire the lock.
+      // If that fails then the new owner is responsible for succession and this
+      // thread needs to take no further action and can exit via the fast path (success).
+      // If the re-acquire succeeds then pass control into the slow path.
+      // As implemented, this latter mode is horrible because we generated more
+      // coherence traffic on the lock *and* artifically extended the critical section
+      // length while by virtue of passing control into the slow path.
+
+      // box is really RAX -- the following CMPXCHG depends on that binding
+      // cmpxchg R,[M] is equivalent to rax = CAS(M,rax,R)
+      movptr(boxReg, (int32_t)NULL_WORD);
       if (os::is_MP()) { lock(); }
       cmpxchgptr(r15_thread, Address(tmpReg, OM_OFFSET_NO_MONITOR_VALUE_TAG(owner)));
       jccb  (Assembler::notEqual, LSuccess);
@@ -2231,10 +2249,6 @@
     }
 #endif
     bind(DONE_LABEL);
-    // Avoid branch to branch on AMD processors
-    if (EmitSync & 32768) {
-       nop();
-    }
   }
 }
 #endif // COMPILER2
@@ -6090,6 +6104,10 @@
     // We always push rbp, so that on return to interpreter rbp, will be
     // restored correctly and we can correct the stack.
     push(rbp);
+    // Save caller's stack pointer into RBP if the frame pointer is preserved.
+    if (PreserveFramePointer) {
+      mov(rbp, rsp);
+    }
     // Remove word for ebp
     framesize -= wordSize;
 
@@ -6104,6 +6122,11 @@
     // Save RBP register now.
     framesize -= wordSize;
     movptr(Address(rsp, framesize), rbp);
+    // Save caller's stack pointer into RBP if the frame pointer is preserved.
+    if (PreserveFramePointer) {
+      movptr(rbp, rsp);
+      addptr(rbp, framesize + wordSize);
+    }
   }
 
   if (VerifyStackAtCalls) { // Majik cookie to verify stack depth
@@ -6657,7 +6680,7 @@
     subl(cnt2, stride2);
     jccb(Assembler::notZero, COMPARE_WIDE_VECTORS_LOOP);
     // clean upper bits of YMM registers
-    vzeroupper();
+    vpxor(vec1, vec1);
 
     // compare wide vectors tail
     bind(COMPARE_WIDE_TAIL);
@@ -6672,7 +6695,7 @@
     // Identifies the mismatching (higher or lower)16-bytes in the 32-byte vectors.
     bind(VECTOR_NOT_EQUAL);
     // clean upper bits of YMM registers
-    vzeroupper();
+    vpxor(vec1, vec1);
     lea(str1, Address(str1, result, scale));
     lea(str2, Address(str2, result, scale));
     jmp(COMPARE_16_CHARS);
@@ -6931,7 +6954,8 @@
   bind(DONE);
   if (UseAVX >= 2) {
     // clean upper bits of YMM registers
-    vzeroupper();
+    vpxor(vec1, vec1);
+    vpxor(vec2, vec2);
   }
 }
 
@@ -7065,7 +7089,8 @@
 
         BIND(L_check_fill_8_bytes);
         // clean upper bits of YMM registers
-        vzeroupper();
+        movdl(xtmp, value);
+        pshufd(xtmp, xtmp, 0);
       } else {
         // Fill 32-byte chunks
         pshufd(xtmp, xtmp, 0);
@@ -7228,7 +7253,11 @@
     bind(L_copy_16_chars_exit);
     if (UseAVX >= 2) {
       // clean upper bits of YMM registers
-      vzeroupper();
+      vpxor(tmp2Reg, tmp2Reg);
+      vpxor(tmp3Reg, tmp3Reg);
+      vpxor(tmp4Reg, tmp4Reg);
+      movdl(tmp1Reg, tmp5);
+      pshufd(tmp1Reg, tmp1Reg, 0);
     }
     subptr(len, 8);
     jccb(Assembler::greater, L_copy_8_chars_exit);
--- a/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -374,7 +374,7 @@
     //  member_reg - MemberName that was the trailing argument
     //  temp1_recv_klass - klass of stacked receiver, if needed
     //  rsi/r13 - interpreter linkage (if interpreted)
-    //  rcx, rdx, rsi, rdi, r8, r8 - compiler arguments (if compiled)
+    //  rcx, rdx, rsi, rdi, r8 - compiler arguments (if compiled)
 
     Label L_incompatible_class_change_error;
     switch (iid) {
--- a/hotspot/src/cpu/x86/vm/rtmLocking.cpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#include "precompiled.hpp"
-#include "memory/allocation.inline.hpp"
-#include "runtime/task.hpp"
-#include "runtime/rtmLocking.hpp"
-
-// One-shot PeriodicTask subclass for enabling RTM locking
-uintx RTMLockingCounters::_calculation_flag = 0;
-
-class RTMLockingCalculationTask : public PeriodicTask {
- public:
-  RTMLockingCalculationTask(size_t interval_time) : PeriodicTask(interval_time){  }
-
-  virtual void task() {
-    RTMLockingCounters::_calculation_flag = 1;
-    // Reclaim our storage and disenroll ourself
-    delete this;
-  }
-};
-
-void RTMLockingCounters::init() {
-  if (UseRTMLocking && RTMLockingCalculationDelay > 0) {
-    RTMLockingCalculationTask* task = new RTMLockingCalculationTask(RTMLockingCalculationDelay);
-    task->enroll();
-  } else {
-    _calculation_flag = 1;
-  }
-}
-
-//------------------------------print_on-------------------------------
-void RTMLockingCounters::print_on(outputStream* st) {
-  tty->print_cr("# rtm locks total (estimated): " UINTX_FORMAT, _total_count * RTMTotalCountIncrRate);
-  tty->print_cr("# rtm lock aborts  : " UINTX_FORMAT, _abort_count);
-  for (int i = 0; i < ABORT_STATUS_LIMIT; i++) {
-    tty->print_cr("# rtm lock aborts %d: " UINTX_FORMAT, i, _abortX_count[i]);
-  }
-}
--- a/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -126,10 +126,6 @@
 
   // rax: exception handler for given <exception oop/exception pc>
 
-  // Restore SP from BP if the exception PC is a MethodHandle call site.
-  __ cmpl(Address(rcx, JavaThread::is_method_handle_return_offset()), 0);
-  __ cmovptr(Assembler::notEqual, rsp, rbp_mh_SP_save);
-
   // We have a handler in rax, (could be deopt blob)
   // rdx - throwing pc, deopt blob will need it.
 
--- a/hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2343,12 +2343,14 @@
 
     // should be a peal
     // +wordSize because of the push above
+    // args are (oop obj, BasicLock* lock, JavaThread* thread)
+    __ push(thread);
     __ lea(rax, Address(rbp, lock_slot_rbp_offset));
     __ push(rax);
 
     __ push(obj_reg);
     __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::complete_monitor_unlocking_C)));
-    __ addptr(rsp, 2*wordSize);
+    __ addptr(rsp, 3*wordSize);
 #ifdef ASSERT
     {
       Label L;
--- a/hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -2581,6 +2581,7 @@
     __ lea(c_rarg1, Address(rsp, lock_slot_offset * VMRegImpl::stack_slot_size));
 
     __ mov(c_rarg0, obj_reg);
+    __ mov(c_rarg2, r15_thread);
     __ mov(r12, rsp); // remember sp
     __ subptr(rsp, frame::arg_reg_save_area_bytes); // windows
     __ andptr(rsp, -16); // align stack as required by ABI
@@ -2590,6 +2591,7 @@
     __ movptr(rbx, Address(r15_thread, in_bytes(Thread::pending_exception_offset())));
     __ movptr(Address(r15_thread, in_bytes(Thread::pending_exception_offset())), (int32_t)NULL_WORD);
 
+    // args are (oop obj, BasicLock* lock, JavaThread* thread)
     __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::complete_monitor_unlocking_C)));
     __ mov(rsp, r12); // restore sp
     __ reinit_heapbase();
@@ -3393,8 +3395,8 @@
 
   // Save callee-saved registers.  See x86_64.ad.
 
-  // rbp is an implicitly saved callee saved register (i.e. the calling
-  // convention will save restore it in prolog/epilog) Other than that
+  // rbp is an implicitly saved callee saved register (i.e., the calling
+  // convention will save/restore it in the prolog/epilog). Other than that
   // there are no callee save registers now that adapter frames are gone.
 
   __ movptr(Address(rsp, SimpleRuntimeFrame::rbp_off << LogBytesPerInt), rbp);
@@ -3436,9 +3438,9 @@
 
   // Restore callee-saved registers
 
-  // rbp is an implicitly saved callee saved register (i.e. the calling
+  // rbp is an implicitly saved callee-saved register (i.e., the calling
   // convention will save restore it in prolog/epilog) Other than that
-  // there are no callee save registers no that adapter frames are gone.
+  // there are no callee save registers now that adapter frames are gone.
 
   __ movptr(rbp, Address(rsp, SimpleRuntimeFrame::rbp_off << LogBytesPerInt));
 
@@ -3447,10 +3449,6 @@
 
   // rax: exception handler
 
-  // Restore SP from BP if the exception PC is a MethodHandle call site.
-  __ cmpl(Address(r15_thread, JavaThread::is_method_handle_return_offset()), 0);
-  __ cmovptr(Assembler::notEqual, rsp, rbp_mh_SP_save);
-
   // We have a handler in rax (could be deopt blob).
   __ mov(r8, rax);
 
--- a/hotspot/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -835,7 +835,8 @@
 
     if (UseUnalignedLoadStores && (UseAVX >= 2)) {
       // clean upper bits of YMM registers
-      __ vzeroupper();
+      __ vpxor(xmm0, xmm0);
+      __ vpxor(xmm1, xmm1);
     }
     __ addl(qword_count, 8);
     __ jccb(Assembler::zero, L_exit);
--- a/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1352,7 +1352,8 @@
       __ BIND(L_end);
       if (UseAVX >= 2) {
         // clean upper bits of YMM registers
-        __ vzeroupper();
+        __ vpxor(xmm0, xmm0);
+        __ vpxor(xmm1, xmm1);
       }
     } else {
       // Copy 32-bytes per iteration
@@ -1429,7 +1430,8 @@
       __ BIND(L_end);
       if (UseAVX >= 2) {
         // clean upper bits of YMM registers
-        __ vzeroupper();
+        __ vpxor(xmm0, xmm0);
+        __ vpxor(xmm1, xmm1);
       }
     } else {
       // Copy 32-bytes per iteration
--- a/hotspot/src/cpu/x86/vm/templateTable_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/templateTable_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -543,8 +543,16 @@
 }
 
 void TemplateTable::iload() {
+  iload_internal();
+}
+
+void TemplateTable::nofast_iload() {
+  iload_internal(may_not_rewrite);
+}
+
+void TemplateTable::iload_internal(RewriteControl rc) {
   transition(vtos, itos);
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     Label rewrite, done;
     const Register bc = LP64_ONLY(c_rarg3) NOT_LP64(rcx);
     LP64_ONLY(assert(rbx != bc, "register damaged"));
@@ -815,6 +823,14 @@
 }
 
 void TemplateTable::aload_0() {
+  aload_0_internal();
+}
+
+void TemplateTable::nofast_aload_0() {
+  aload_0_internal(may_not_rewrite);
+}
+
+void TemplateTable::aload_0_internal(RewriteControl rc) {
   transition(vtos, atos);
   // According to bytecode histograms, the pairs:
   //
@@ -837,7 +853,7 @@
   //   aload_0, iload_1
   // These bytecodes with a small amount of code are most profitable
   // to rewrite
-  if (RewriteFrequentPairs) {
+  if (RewriteFrequentPairs && rc == may_rewrite) {
     Label rewrite, done;
 
     const Register bc = LP64_ONLY(c_rarg3) NOT_LP64(rcx);
@@ -2491,29 +2507,21 @@
   assert_different_registers(Rcache, index, temp);
 
   Label resolved;
-    assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
-    __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
-    __ cmpl(temp, (int) bytecode());  // have we resolved this bytecode?
-    __ jcc(Assembler::equal, resolved);
+
+  Bytecodes::Code code = bytecode();
+  switch (code) {
+  case Bytecodes::_nofast_getfield: code = Bytecodes::_getfield; break;
+  case Bytecodes::_nofast_putfield: code = Bytecodes::_putfield; break;
+  }
+
+  assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
+  __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
+  __ cmpl(temp, code);  // have we resolved this bytecode?
+  __ jcc(Assembler::equal, resolved);
 
   // resolve first time through
-  address entry;
-  switch (bytecode()) {
-    case Bytecodes::_getstatic      : // fall through
-    case Bytecodes::_putstatic      : // fall through
-    case Bytecodes::_getfield       : // fall through
-    case Bytecodes::_putfield       : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_get_put);        break;
-    case Bytecodes::_invokevirtual  : // fall through
-    case Bytecodes::_invokespecial  : // fall through
-    case Bytecodes::_invokestatic   : // fall through
-    case Bytecodes::_invokeinterface: entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invoke);         break;
-    case Bytecodes::_invokehandle   : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokehandle);   break;
-    case Bytecodes::_invokedynamic  : entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_invokedynamic);  break;
-    default:
-      fatal(err_msg("unexpected bytecode: %s", Bytecodes::name(bytecode())));
-      break;
-  }
-  __ movl(temp, (int)bytecode());
+  address entry = CAST_FROM_FN_PTR(address, InterpreterRuntime::resolve_from_cache);
+  __ movl(temp, code);
   __ call_VM(noreg, entry, temp);
   // Update registers with resolved info
   __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
@@ -2628,7 +2636,7 @@
   __ verify_oop(r);
 }
 
-void TemplateTable::getfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
 
   const Register cache = rcx;
@@ -2660,7 +2668,7 @@
   __ load_signed_byte(rax, field);
   __ push(btos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_bgetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2671,7 +2679,7 @@
   // atos
   __ load_heap_oop(rax, field);
   __ push(atos);
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_agetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2683,7 +2691,7 @@
   __ movl(rax, field);
   __ push(itos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_igetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2695,7 +2703,7 @@
   __ load_unsigned_short(rax, field);
   __ push(ctos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_cgetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2707,7 +2715,7 @@
   __ load_signed_short(rax, field);
   __ push(stos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_sgetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2731,7 +2739,7 @@
 
   __ push(ltos);
   // Rewrite bytecode to be faster
-  LP64_ONLY(if (!is_static) patch_bytecode(Bytecodes::_fast_lgetfield, bc, rbx));
+  LP64_ONLY(if (!is_static && rc == may_rewrite) patch_bytecode(Bytecodes::_fast_lgetfield, bc, rbx));
   __ jmp(Done);
 
   __ bind(notLong);
@@ -2743,7 +2751,7 @@
   NOT_LP64(__ fld_s(field));
   __ push(ftos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_fgetfield, bc, rbx);
   }
   __ jmp(Done);
@@ -2758,7 +2766,7 @@
   NOT_LP64(__ fld_d(field));
   __ push(dtos);
   // Rewrite bytecode to be faster
-  if (!is_static) {
+  if (!is_static && rc == may_rewrite) {
     patch_bytecode(Bytecodes::_fast_dgetfield, bc, rbx);
   }
 #ifdef ASSERT
@@ -2779,6 +2787,10 @@
   getfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_getfield(int byte_no) {
+  getfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::getstatic(int byte_no) {
   getfield_or_static(byte_no, true);
 }
@@ -2870,7 +2882,7 @@
   }
 }
 
-void TemplateTable::putfield_or_static(int byte_no, bool is_static) {
+void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteControl rc) {
   transition(vtos, vtos);
 
   const Register cache = rcx;
@@ -2911,7 +2923,7 @@
     __ pop(btos);
     if (!is_static) pop_and_check_object(obj);
     __ movb(field, rax);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_bputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -2927,7 +2939,7 @@
     if (!is_static) pop_and_check_object(obj);
     // Store into the field
     do_oop_store(_masm, field, rax, _bs->kind(), false);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_aputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -2942,7 +2954,7 @@
     __ pop(itos);
     if (!is_static) pop_and_check_object(obj);
     __ movl(field, rax);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_iputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -2957,7 +2969,7 @@
     __ pop(ctos);
     if (!is_static) pop_and_check_object(obj);
     __ movw(field, rax);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_cputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -2972,7 +2984,7 @@
     __ pop(stos);
     if (!is_static) pop_and_check_object(obj);
     __ movw(field, rax);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_sputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -2988,7 +3000,7 @@
     __ pop(ltos);
     if (!is_static) pop_and_check_object(obj);
     __ movq(field, rax);
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_lputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -3035,7 +3047,7 @@
     if (!is_static) pop_and_check_object(obj);
     NOT_LP64( __ fstp_s(field);)
     LP64_ONLY( __ movflt(field, xmm0);)
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_fputfield, bc, rbx, true, byte_no);
     }
     __ jmp(Done);
@@ -3053,7 +3065,7 @@
     if (!is_static) pop_and_check_object(obj);
     NOT_LP64( __ fstp_d(field);)
     LP64_ONLY( __ movdbl(field, xmm0);)
-    if (!is_static) {
+    if (!is_static && rc == may_rewrite) {
       patch_bytecode(Bytecodes::_fast_dputfield, bc, rbx, true, byte_no);
     }
   }
@@ -3079,6 +3091,10 @@
   putfield_or_static(byte_no, false);
 }
 
+void TemplateTable::nofast_putfield(int byte_no) {
+  putfield_or_static(byte_no, false, may_not_rewrite);
+}
+
 void TemplateTable::putstatic(int byte_no) {
   putfield_or_static(byte_no, true);
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/cpu/x86/vm/templateTable_x86.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef CPU_X86_VM_TEMPLATETABLE_X86_HPP
+#define CPU_X86_VM_TEMPLATETABLE_X86_HPP
+
+  static void prepare_invoke(int byte_no,
+                             Register method,         // linked method (or i-klass)
+                             Register index = noreg,  // itable index, MethodType, etc.
+                             Register recv  = noreg,  // if caller wants to see it
+                             Register flags = noreg   // if caller wants to test it
+                             );
+  static void invokevirtual_helper(Register index, Register recv,
+                                   Register flags);
+  static void volatile_barrier(Assembler::Membar_mask_bits order_constraint);
+
+  // Helpers
+  static void index_check(Register array, Register index);
+  static void index_check_without_pop(Register array, Register index);
+
+#endif // CPU_X86_VM_TEMPLATETABLE_X86_HPP
--- a/hotspot/src/cpu/x86/vm/templateTable_x86_32.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef CPU_X86_VM_TEMPLATETABLE_X86_32_HPP
-#define CPU_X86_VM_TEMPLATETABLE_X86_32_HPP
-
-  static void prepare_invoke(int byte_no,
-                             Register method,         // linked method (or i-klass)
-                             Register index = noreg,  // itable index, MethodType, etc.
-                             Register recv  = noreg,  // if caller wants to see it
-                             Register flags = noreg   // if caller wants to test it
-                             );
-  static void invokevirtual_helper(Register index, Register recv,
-                                   Register flags);
-  static void volatile_barrier(Assembler::Membar_mask_bits order_constraint);
-
-  // Helpers
-  static void index_check(Register array, Register index);
-  static void index_check_without_pop(Register array, Register index);
-
-#endif // CPU_X86_VM_TEMPLATETABLE_X86_32_HPP
--- a/hotspot/src/cpu/x86/vm/templateTable_x86_64.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef CPU_X86_VM_TEMPLATETABLE_X86_64_HPP
-#define CPU_X86_VM_TEMPLATETABLE_X86_64_HPP
-
-  static void prepare_invoke(int byte_no,
-                             Register method,         // linked method (or i-klass)
-                             Register index = noreg,  // itable index, MethodType, etc.
-                             Register recv  = noreg,  // if caller wants to see it
-                             Register flags = noreg   // if caller wants to test it
-                             );
-  static void invokevirtual_helper(Register index, Register recv,
-                                   Register flags);
-  static void volatile_barrier(Assembler::Membar_mask_bits order_constraint);
-
-  // Helpers
-  static void index_check(Register array, Register index);
-  static void index_check_without_pop(Register array, Register index);
-
-#endif // CPU_X86_VM_TEMPLATETABLE_X86_64_HPP
--- a/hotspot/src/cpu/x86/vm/vm_version_x86.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/vm_version_x86.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -379,15 +379,6 @@
   };
 };
 
-
-void VM_Version::get_cpu_info_wrapper() {
-  get_cpu_info_stub(&_cpuid_info);
-}
-
-#ifndef CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED
-  #define CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(f) f()
-#endif
-
 void VM_Version::get_processor_features() {
 
   _cpu = 4; // 486 by default
@@ -401,9 +392,7 @@
   if (!Use486InstrsOnly) {
     // Get raw processor info
 
-    // Some platforms (like Win*) need a wrapper around here
-    // in order to properly handle SEGV for YMM registers test.
-    CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(get_cpu_info_wrapper);
+    get_cpu_info_stub(&_cpuid_info);
 
     assert_is_initialized();
     _cpu = extended_cpu_family();
@@ -980,6 +969,11 @@
      (cache_line_size > ContendedPaddingWidth))
      ContendedPaddingWidth = cache_line_size;
 
+  // This machine allows unaligned memory accesses
+  if (FLAG_IS_DEFAULT(UseUnalignedAccesses)) {
+    FLAG_SET_DEFAULT(UseUnalignedAccesses, true);
+  }
+
 #ifndef PRODUCT
   if (PrintMiscellaneous && Verbose) {
     tty->print_cr("Logical CPUs per core: %u",
--- a/hotspot/src/cpu/x86/vm/x86.ad	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/x86.ad	Wed Jul 05 20:32:21 2017 +0200
@@ -490,7 +490,7 @@
 class NativeJump;
 
 class CallStubImpl {
- 
+
   //--------------------------------------------------------------
   //---<  Used for optimization in Compile::shorten_branches  >---
   //--------------------------------------------------------------
@@ -500,9 +500,9 @@
   static uint size_call_trampoline() {
     return 0; // no call trampolines on this platform
   }
-  
+
   // number of relocations needed by a call trampoline stub
-  static uint reloc_call_trampoline() { 
+  static uint reloc_call_trampoline() {
     return 0; // no call trampolines on this platform
   }
 };
@@ -623,6 +623,22 @@
       if ((UseSSE < 4) && (UseAVX < 1)) // only with SSE4_1 or AVX
         return false;
     break;
+    case Op_AddReductionVL:
+      if (UseAVX < 3) // only EVEX : vector connectivity becomes an issue here
+        return false;
+    case Op_AddReductionVI:
+      if (UseSSE < 3) // requires at least SSE3
+        return false;
+    case Op_MulReductionVI:
+      if (UseSSE < 4) // requires at least SSE4
+        return false;
+    case Op_AddReductionVF:
+    case Op_AddReductionVD:
+    case Op_MulReductionVF:
+    case Op_MulReductionVD:
+      if (UseSSE < 1) // requires at least SSE
+        return false;
+    break;
     case Op_CompareAndSwapL:
 #ifdef _LP64
     case Op_CompareAndSwapP:
@@ -914,21 +930,6 @@
 
 encode %{
 
-  enc_class preserve_SP %{
-    debug_only(int off0 = cbuf.insts_size());
-    MacroAssembler _masm(&cbuf);
-    // RBP is preserved across all calls, even compiled calls.
-    // Use it to preserve RSP in places where the callee might change the SP.
-    __ movptr(rbp_mh_SP_save, rsp);
-    debug_only(int off1 = cbuf.insts_size());
-    assert(off1 - off0 == preserve_SP_size(), "correct size prediction");
-  %}
-
-  enc_class restore_SP %{
-    MacroAssembler _masm(&cbuf);
-    __ movptr(rsp, rbp_mh_SP_save);
-  %}
-
   enc_class call_epilog %{
     if (VerifyStackAtCalls) {
       // Check that stack depth is unchanged: find majik cookie on stack
@@ -2532,6 +2533,574 @@
   ins_pipe( fpu_reg_reg );
 %}
 
+// ====================REDUCTION ARITHMETIC=======================================
+
+instruct rsadd2I_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE > 2 && UseAVX == 0);
+  match(Set dst (AddReductionVI src1 src2));
+  effect(TEMP tmp2, TEMP tmp);
+  format %{ "movdqu  $tmp2,$src2\n\t"
+            "phaddd  $tmp2,$tmp2\n\t"
+            "movd    $tmp,$src1\n\t"
+            "paddd   $tmp,$tmp2\n\t"
+            "movd    $dst,$tmp\t! add reduction2I" %}
+  ins_encode %{
+    __ movdqu($tmp2$$XMMRegister, $src2$$XMMRegister);
+    __ phaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdl($tmp$$XMMRegister, $src1$$Register);
+    __ paddd($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdl($dst$$Register, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd2I_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vphaddd $tmp,$src2,$src2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpaddd  $tmp2,$tmp2,$tmp\n\t"
+            "movd    $dst,$tmp2\t! add reduction2I" %}
+  ins_encode %{
+    __ vphaddd($tmp$$XMMRegister, $src2$$XMMRegister, $src2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsadd4I_reduction_reg(rRegI dst, rRegI src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE > 2 && UseAVX == 0);
+  match(Set dst (AddReductionVI src1 src2));
+  effect(TEMP tmp2, TEMP tmp);
+  format %{ "movdqu  $tmp2,$src2\n\t"
+            "phaddd  $tmp2,$tmp2\n\t"
+            "phaddd  $tmp2,$tmp2\n\t"
+            "movd    $tmp,$src1\n\t"
+            "paddd   $tmp,$tmp2\n\t"
+            "movd    $dst,$tmp\t! add reduction4I" %}
+  ins_encode %{
+    __ movdqu($tmp2$$XMMRegister, $src2$$XMMRegister);
+    __ phaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister);
+    __ phaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdl($tmp$$XMMRegister, $src1$$Register);
+    __ paddd($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdl($dst$$Register, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd4I_reduction_reg(rRegI dst, rRegI src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vphaddd $tmp,$src2,$src2\n\t"
+            "vphaddd $tmp,$tmp,$tmp2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpaddd  $tmp2,$tmp2,$tmp\n\t"
+            "movd    $dst,$tmp2\t! add reduction4I" %}
+  ins_encode %{
+    __ vphaddd($tmp$$XMMRegister, $src2$$XMMRegister, $src2$$XMMRegister, false);
+    __ vphaddd($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd8I_reduction_reg(rRegI dst, rRegI src1, vecY src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vphaddd $tmp,$src2,$src2\n\t"
+            "vphaddd $tmp,$tmp,$tmp2\n\t"
+            "vextractf128  $tmp2,$tmp\n\t"
+            "vpaddd  $tmp,$tmp,$tmp2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpaddd  $tmp2,$tmp2,$tmp\n\t"
+            "movd    $dst,$tmp2\t! add reduction8I" %}
+  ins_encode %{
+    __ vphaddd($tmp$$XMMRegister, $src2$$XMMRegister, $src2$$XMMRegister, true);
+    __ vphaddd($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, true);
+    __ vextractf128h($tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ vpaddd($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpaddd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsadd2F_reduction_reg(regF dst, regF src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (AddReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "addss   $tmp,$src2\n\t"
+            "pshufd  $tmp2,$src2,0x01\n\t"
+            "addss   $tmp,$tmp2\n\t"
+            "movdqu  $dst,$tmp\t! add reduction2F" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ addss($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ addss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdqu($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd2F_reduction_reg(regF dst, regF src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVF src1 src2));
+  effect(TEMP tmp2, TEMP tmp);
+  format %{ "vaddss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vaddss  $dst,$tmp2,$tmp\t! add reduction2F" %}
+  ins_encode %{
+    __ vaddss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vaddss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsadd4F_reduction_reg(regF dst, regF src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (AddReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "addss   $tmp,$src2\n\t"
+            "pshufd  $tmp2,$src2,0x01\n\t"
+            "addss   $tmp,$tmp2\n\t"
+            "pshufd  $tmp2,$src2,0x02\n\t"
+            "addss   $tmp,$tmp2\n\t"
+            "pshufd  $tmp2,$src2,0x03\n\t"
+            "addss   $tmp,$tmp2\n\t"
+            "movdqu  $dst,$tmp\t! add reduction4F" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ addss($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ addss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ addss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ addss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdqu($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd4F_reduction_reg(regF dst, regF src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vaddss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x02\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x03\n\t"
+            "vaddss  $dst,$tmp2,$tmp\t! add reduction4F" %}
+  ins_encode %{
+    __ vaddss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ vaddss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct radd8F_reduction_reg(regF dst, regF src1, vecY src2, regF tmp, regF tmp2, regF tmp3) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2, TEMP tmp3);
+  format %{ "vaddss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x02\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x03\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "vextractf128  $tmp3,$src2\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp3\n\t"
+            "pshufd  $tmp,$tmp3,0x01\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$tmp3,0x02\n\t"
+            "vaddss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$tmp3,0x03\n\t"
+            "vaddss  $dst,$tmp2,$tmp\t! add reduction8F" %}
+  ins_encode %{
+    __ vaddss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ vextractf128h($tmp3$$XMMRegister, $src2$$XMMRegister);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp3$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x01);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x02);
+    __ vaddss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x03);
+    __ vaddss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsadd2D_reduction_reg(regD dst, regD src1, vecX src2, regD tmp) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (AddReductionVD src1 src2));
+  effect(TEMP tmp, TEMP dst);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "addsd   $tmp,$src2\n\t"
+            "pshufd  $dst,$src2,0xE\n\t"
+            "addsd   $dst,$tmp\t! add reduction2D" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ addsd($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($dst$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ addsd($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd2D_reduction_reg(regD dst, regD src1, vecX src2, regD tmp, regD tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVD src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vaddsd  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0xE\n\t"
+            "vaddsd  $dst,$tmp2,$tmp\t! add reduction2D" %}
+  ins_encode %{
+    __ vaddsd($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ vaddsd($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvadd4D_reduction_reg(regD dst, regD src1, vecY src2, regD tmp, regD tmp2, regD tmp3) %{
+  predicate(UseAVX > 0);
+  match(Set dst (AddReductionVD src1 src2));
+  effect(TEMP tmp, TEMP tmp2, TEMP tmp3);
+  format %{ "vaddsd  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0xE\n\t"
+            "vaddsd  $tmp2,$tmp2,$tmp\n\t"
+            "vextractf128  $tmp3,$src2\n\t"
+            "vaddsd  $tmp2,$tmp2,$tmp3\n\t"
+            "pshufd  $tmp,$tmp3,0xE\n\t"
+            "vaddsd  $dst,$tmp2,$tmp\t! add reduction4D" %}
+  ins_encode %{
+    __ vaddsd($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ vaddsd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ vextractf128h($tmp3$$XMMRegister, $src2$$XMMRegister);
+    __ vaddsd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp3$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0xE);
+    __ vaddsd($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsmul2I_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE > 3 && UseAVX == 0);
+  match(Set dst (MulReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "pshufd  $tmp2,$src2,0x1\n\t"
+            "pmulld  $tmp2,$src2\n\t"
+            "movd    $tmp,$src1\n\t"
+            "pmulld  $tmp2,$tmp\n\t"
+            "movd    $dst,$tmp2\t! mul reduction2I" %}
+  ins_encode %{
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x1);
+    __ pmulld($tmp2$$XMMRegister, $src2$$XMMRegister);
+    __ movdl($tmp$$XMMRegister, $src1$$Register);
+    __ pmulld($tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul2I_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "pshufd  $tmp2,$src2,0x1\n\t"
+            "vpmulld $tmp,$src2,$tmp2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpmulld $tmp2,$tmp,$tmp2\n\t"
+            "movd    $dst,$tmp2\t! mul reduction2I" %}
+  ins_encode %{
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x1);
+    __ vpmulld($tmp$$XMMRegister, $src2$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpmulld($tmp2$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsmul4I_reduction_reg(rRegI dst, rRegI src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE > 3 && UseAVX == 0);
+  match(Set dst (MulReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "pshufd  $tmp2,$src2,0xE\n\t"
+            "pmulld  $tmp2,$src2\n\t"
+            "pshufd  $tmp,$tmp2,0x1\n\t"
+            "pmulld  $tmp2,$tmp\n\t"
+            "movd    $tmp,$src1\n\t"
+            "pmulld  $tmp2,$tmp\n\t"
+            "movd    $dst,$tmp2\t! mul reduction4I" %}
+  ins_encode %{
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ pmulld($tmp2$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp2$$XMMRegister, 0x1);
+    __ pmulld($tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ movdl($tmp$$XMMRegister, $src1$$Register);
+    __ pmulld($tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul4I_reduction_reg(rRegI dst, rRegI src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "pshufd  $tmp2,$src2,0xE\n\t"
+            "vpmulld $tmp,$src2,$tmp2\n\t"
+            "pshufd  $tmp2,$tmp,0x1\n\t"
+            "vpmulld $tmp,$tmp,$tmp2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpmulld $tmp2,$tmp,$tmp2\n\t"
+            "movd    $dst,$tmp2\t! mul reduction4I" %}
+  ins_encode %{
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ vpmulld($tmp$$XMMRegister, $src2$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ pshufd($tmp2$$XMMRegister, $tmp$$XMMRegister, 0x1);
+    __ vpmulld($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpmulld($tmp2$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul8I_reduction_reg(rRegI dst, rRegI src1, vecY src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVI src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vextractf128  $tmp,$src2\n\t"
+            "vpmulld $tmp,$tmp,$src2\n\t"
+            "pshufd  $tmp2,$tmp,0xE\n\t"
+            "vpmulld $tmp,$tmp,$tmp2\n\t"
+            "pshufd  $tmp2,$tmp,0x1\n\t"
+            "vpmulld $tmp,$tmp,$tmp2\n\t"
+            "movd    $tmp2,$src1\n\t"
+            "vpmulld $tmp2,$tmp,$tmp2\n\t"
+            "movd    $dst,$tmp2\t! mul reduction8I" %}
+  ins_encode %{
+    __ vextractf128h($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ vpmulld($tmp$$XMMRegister, $tmp$$XMMRegister, $src2$$XMMRegister, false);
+    __ pshufd($tmp2$$XMMRegister, $tmp$$XMMRegister, 0xE);
+    __ vpmulld($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ pshufd($tmp2$$XMMRegister, $tmp$$XMMRegister, 0x1);
+    __ vpmulld($tmp$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($tmp2$$XMMRegister, $src1$$Register);
+    __ vpmulld($tmp2$$XMMRegister, $tmp$$XMMRegister, $tmp2$$XMMRegister, false);
+    __ movdl($dst$$Register, $tmp2$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsmul2F_reduction_reg(regF dst, regF src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (MulReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "mulss   $tmp,$src2\n\t"
+            "pshufd  $tmp2,$src2,0x01\n\t"
+            "mulss   $tmp,$tmp2\n\t"
+            "movdqu  $dst,$tmp\t! add reduction2F" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ mulss($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ mulss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdqu($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul2F_reduction_reg(regF dst, regF src1, vecD src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vmulss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vmulss  $dst,$tmp2,$tmp\t! add reduction2F" %}
+  ins_encode %{
+    __ vmulss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vmulss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsmul4F_reduction_reg(regF dst, regF src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (MulReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "mulss   $tmp,$src2\n\t"
+            "pshufd  $tmp2,$src2,0x01\n\t"
+            "mulss   $tmp,$tmp2\n\t"
+            "pshufd  $tmp2,$src2,0x02\n\t"
+            "mulss   $tmp,$tmp2\n\t"
+            "pshufd  $tmp2,$src2,0x03\n\t"
+            "mulss   $tmp,$tmp2\n\t"
+            "movdqu  $dst,$tmp\t! add reduction4F" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ mulss($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ mulss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ mulss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ pshufd($tmp2$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ mulss($tmp$$XMMRegister, $tmp2$$XMMRegister);
+    __ movdqu($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul4F_reduction_reg(regF dst, regF src1, vecX src2, regF tmp, regF tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vmulss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x02\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x03\n\t"
+            "vmulss  $dst,$tmp2,$tmp\t! add reduction4F" %}
+  ins_encode %{
+    __ vmulss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ vmulss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul8F_reduction_reg(regF dst, regF src1, vecY src2, regF tmp, regF tmp2, regF tmp3) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVF src1 src2));
+  effect(TEMP tmp, TEMP tmp2, TEMP tmp3);
+  format %{ "vmulss  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0x01\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x02\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$src2,0x03\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "vextractf128  $tmp3,$src2\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp3\n\t"
+            "pshufd  $tmp,$tmp3,0x01\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$tmp3,0x02\n\t"
+            "vmulss  $tmp2,$tmp2,$tmp\n\t"
+            "pshufd  $tmp,$tmp3,0x03\n\t"
+            "vmulss  $dst,$tmp2,$tmp\t! mul reduction8F" %}
+  ins_encode %{
+    __ vmulss($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x01);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x02);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0x03);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ vextractf128h($tmp3$$XMMRegister, $src2$$XMMRegister);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp3$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x01);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x02);
+    __ vmulss($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0x03);
+    __ vmulss($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rsmul2D_reduction_reg(regD dst, regD src1, vecX src2, regD tmp) %{
+  predicate(UseSSE >= 1 && UseAVX == 0);
+  match(Set dst (MulReductionVD src1 src2));
+  effect(TEMP tmp, TEMP dst);
+  format %{ "movdqu  $tmp,$src1\n\t"
+            "mulsd   $tmp,$src2\n\t"
+            "pshufd  $dst,$src2,0xE\n\t"
+            "mulsd   $dst,$tmp\t! add reduction2D" %}
+  ins_encode %{
+    __ movdqu($tmp$$XMMRegister, $src1$$XMMRegister);
+    __ mulsd($tmp$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($dst$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ mulsd($dst$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul2D_reduction_reg(regD dst, regD src1, vecX src2, regD tmp, regD tmp2) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVD src1 src2));
+  effect(TEMP tmp, TEMP tmp2);
+  format %{ "vmulsd  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0xE\n\t"
+            "vmulsd  $dst,$tmp2,$tmp\t! mul reduction2D" %}
+  ins_encode %{
+    __ vmulsd($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ vmulsd($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
+instruct rvmul4D_reduction_reg(regD dst, regD src1, vecY src2, regD tmp, regD tmp2, regD tmp3) %{
+  predicate(UseAVX > 0);
+  match(Set dst (MulReductionVD src1 src2));
+  effect(TEMP tmp, TEMP tmp2, TEMP tmp3);
+  format %{ "vmulsd  $tmp2,$src1,$src2\n\t"
+            "pshufd  $tmp,$src2,0xE\n\t"
+            "vmulsd  $tmp2,$tmp2,$tmp\n\t"
+            "vextractf128  $tmp3,$src2\n\t"
+            "vmulsd  $tmp2,$tmp2,$tmp3\n\t"
+            "pshufd  $tmp,$tmp3,0xE\n\t"
+            "vmulsd  $dst,$tmp2,$tmp\t! mul reduction4D" %}
+  ins_encode %{
+    __ vmulsd($tmp2$$XMMRegister, $src1$$XMMRegister, $src2$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $src2$$XMMRegister, 0xE);
+    __ vmulsd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+    __ vextractf128h($tmp3$$XMMRegister, $src2$$XMMRegister);
+    __ vmulsd($tmp2$$XMMRegister, $tmp2$$XMMRegister, $tmp3$$XMMRegister);
+    __ pshufd($tmp$$XMMRegister, $tmp3$$XMMRegister, 0xE);
+    __ vmulsd($dst$$XMMRegister, $tmp2$$XMMRegister, $tmp$$XMMRegister);
+  %}
+  ins_pipe( pipe_slow );
+%}
+
 // ====================VECTOR ARITHMETIC=======================================
 
 // --------------------------------- ADD --------------------------------------
--- a/hotspot/src/cpu/x86/vm/x86_32.ad	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/x86_32.ad	Wed Jul 05 20:32:21 2017 +0200
@@ -123,50 +123,94 @@
 // 2) reg_class interpreter_method_oop_reg ( /* as def'd in frame section */ )
 // 3) reg_class stack_slots( /* one chunk of stack-based "registers" */ )
 //
+// Class for no registers (empty set).
+reg_class no_reg();
+
 // Class for all registers
-reg_class any_reg(EAX, EDX, EBP, EDI, ESI, ECX, EBX, ESP);
+reg_class any_reg_with_ebp(EAX, EDX, EBP, EDI, ESI, ECX, EBX, ESP);
+// Class for all registers (excluding EBP)
+reg_class any_reg_no_ebp(EAX, EDX, EDI, ESI, ECX, EBX, ESP);
+// Dynamic register class that selects at runtime between register classes
+// any_reg and any_no_ebp_reg (depending on the value of the flag PreserveFramePointer). 
+// Equivalent to: return PreserveFramePointer ? any_no_ebp_reg : any_reg;
+reg_class_dynamic any_reg(any_reg_no_ebp, any_reg_with_ebp, %{ PreserveFramePointer %});
+
 // Class for general registers
-reg_class int_reg(EAX, EDX, EBP, EDI, ESI, ECX, EBX);
-// Class for general registers which may be used for implicit null checks on win95
-// Also safe for use by tailjump. We don't want to allocate in rbp,
-reg_class int_reg_no_rbp(EAX, EDX, EDI, ESI, ECX, EBX);
+reg_class int_reg_with_ebp(EAX, EDX, EBP, EDI, ESI, ECX, EBX);
+// Class for general registers (excluding EBP).
+// This register class can be used for implicit null checks on win95.
+// It is also safe for use by tailjumps (we don't want to allocate in ebp).
+// Used also if the PreserveFramePointer flag is true.
+reg_class int_reg_no_ebp(EAX, EDX, EDI, ESI, ECX, EBX);
+// Dynamic register class that selects between int_reg and int_reg_no_ebp.
+reg_class_dynamic int_reg(int_reg_no_ebp, int_reg_with_ebp, %{ PreserveFramePointer %});
+
 // Class of "X" registers
 reg_class int_x_reg(EBX, ECX, EDX, EAX);
+
 // Class of registers that can appear in an address with no offset.
 // EBP and ESP require an extra instruction byte for zero offset.
 // Used in fast-unlock
 reg_class p_reg(EDX, EDI, ESI, EBX);
-// Class for general registers not including ECX
-reg_class ncx_reg(EAX, EDX, EBP, EDI, ESI, EBX);
-// Class for general registers not including EAX
+
+// Class for general registers excluding ECX
+reg_class ncx_reg_with_ebp(EAX, EDX, EBP, EDI, ESI, EBX);
+// Class for general registers excluding ECX (and EBP)
+reg_class ncx_reg_no_ebp(EAX, EDX, EDI, ESI, EBX);
+// Dynamic register class that selects between ncx_reg and ncx_reg_no_ebp.
+reg_class_dynamic ncx_reg(ncx_reg_no_ebp, ncx_reg_with_ebp, %{ PreserveFramePointer %});
+
+// Class for general registers excluding EAX
 reg_class nax_reg(EDX, EDI, ESI, ECX, EBX);
-// Class for general registers not including EAX or EBX.
-reg_class nabx_reg(EDX, EDI, ESI, ECX, EBP);
+
+// Class for general registers excluding EAX and EBX.
+reg_class nabx_reg_with_ebp(EDX, EDI, ESI, ECX, EBP);
+// Class for general registers excluding EAX and EBX (and EBP)
+reg_class nabx_reg_no_ebp(EDX, EDI, ESI, ECX);
+// Dynamic register class that selects between nabx_reg and nabx_reg_no_ebp.
+reg_class_dynamic nabx_reg(nabx_reg_no_ebp, nabx_reg_with_ebp, %{ PreserveFramePointer %});
+
 // Class of EAX (for multiply and divide operations)
 reg_class eax_reg(EAX);
+
 // Class of EBX (for atomic add)
 reg_class ebx_reg(EBX);
+
 // Class of ECX (for shift and JCXZ operations and cmpLTMask)
 reg_class ecx_reg(ECX);
+
 // Class of EDX (for multiply and divide operations)
 reg_class edx_reg(EDX);
+
 // Class of EDI (for synchronization)
 reg_class edi_reg(EDI);
+
 // Class of ESI (for synchronization)
 reg_class esi_reg(ESI);
-// Singleton class for interpreter's stack pointer
-reg_class ebp_reg(EBP);
+
 // Singleton class for stack pointer
 reg_class sp_reg(ESP);
+
 // Singleton class for instruction pointer
 // reg_class ip_reg(EIP);
+
 // Class of integer register pairs
-reg_class long_reg( EAX,EDX, ECX,EBX, EBP,EDI );
+reg_class long_reg_with_ebp( EAX,EDX, ECX,EBX, EBP,EDI );
+// Class of integer register pairs (excluding EBP and EDI);
+reg_class long_reg_no_ebp( EAX,EDX, ECX,EBX );
+// Dynamic register class that selects between long_reg and long_reg_no_ebp.
+reg_class_dynamic long_reg(long_reg_no_ebp, long_reg_with_ebp, %{ PreserveFramePointer %});
+
 // Class of integer register pairs that aligns with calling convention
 reg_class eadx_reg( EAX,EDX );
 reg_class ebcx_reg( ECX,EBX );
+
 // Not AX or DX, used in divides
-reg_class nadx_reg( EBX,ECX,ESI,EDI,EBP );
+reg_class nadx_reg_with_ebp(EBX, ECX, ESI, EDI, EBP);
+// Not AX or DX (and neither EBP), used in divides
+reg_class nadx_reg_no_ebp(EBX, ECX, ESI, EDI);
+// Dynamic register class that selects between nadx_reg and nadx_reg_no_ebp.
+reg_class_dynamic nadx_reg(nadx_reg_no_ebp, nadx_reg_with_ebp, %{ PreserveFramePointer %});
 
 // Floating point registers.  Notice FPR0 is not a choice.
 // FPR0 is not ever allocated; we use clever encodings to fake
@@ -240,18 +284,11 @@
   return size;
 }
 
-static int preserve_SP_size() {
-  return 2;  // op, rm(reg/reg)
-}
-
 // !!!!! Special hack to get all type of calls to specify the byte offset
 //       from the start of the call to the point where the return address
 //       will point.
 int MachCallStaticJavaNode::ret_addr_offset() {
-  int offset = 5 + pre_call_resets_size();  // 5 bytes from start of call to where return address points
-  if (_method_handle_invoke)
-    offset += preserve_SP_size();
-  return offset;
+  return 5 + pre_call_resets_size();  // 5 bytes from start of call to where return address points  
 }
 
 int MachCallDynamicJavaNode::ret_addr_offset() {
@@ -285,15 +322,6 @@
 
 // The address of the call instruction needs to be 4-byte aligned to
 // ensure that it does not span a cache line so that it can be patched.
-int CallStaticJavaHandleNode::compute_padding(int current_offset) const {
-  current_offset += pre_call_resets_size();  // skip fldcw, if any
-  current_offset += preserve_SP_size();   // skip mov rbp, rsp
-  current_offset += 1;      // skip call opcode byte
-  return round_to(current_offset, alignment_required()) - current_offset;
-}
-
-// The address of the call instruction needs to be 4-byte aligned to
-// ensure that it does not span a cache line so that it can be patched.
 int CallDynamicJavaDirectNode::compute_padding(int current_offset) const {
   current_offset += pre_call_resets_size();  // skip fldcw, if any
   current_offset += 5;      // skip MOV instruction
@@ -523,6 +551,10 @@
     st->print("# stack bang (%d bytes)", bangsize);
     st->print("\n\t");
     st->print("PUSH   EBP\t# Save EBP");
+    if (PreserveFramePointer) {
+      st->print("\n\t");
+      st->print("MOV    EBP, ESP\t# Save the caller's SP into EBP");
+    }
     if (framesize) {
       st->print("\n\t");
       st->print("SUB    ESP, #%d\t# Create frame",framesize);
@@ -532,6 +564,10 @@
     st->print("\n\t");
     framesize -= wordSize;
     st->print("MOV    [ESP + #%d], EBP\t# Save EBP",framesize);
+    if (PreserveFramePointer) {
+      st->print("\n\t");
+      st->print("MOV    EBP, [ESP + #%d]\t# Save the caller's SP into EBP", (framesize + wordSize));
+    }
   }
 
   if (VerifyStackAtCalls) {
@@ -1489,7 +1525,7 @@
 }
 
 const RegMask Matcher::method_handle_invoke_SP_save_mask() {
-  return EBP_REG_mask();
+  return NO_REG_mask();
 }
 
 // Returns true if the high 32 bits of the value is known to be zero.
@@ -3735,7 +3771,7 @@
 
 // On windows95, EBP is not safe to use for implicit null tests.
 operand eRegP_no_EBP() %{
-  constraint(ALLOC_IN_RC(int_reg_no_rbp));
+  constraint(ALLOC_IN_RC(int_reg_no_ebp));
   match(RegP);
   match(eAXRegP);
   match(eBXRegP);
@@ -3824,13 +3860,6 @@
   interface(REG_INTER);
 %}
 
-operand eBPRegP() %{
-  constraint(ALLOC_IN_RC(ebp_reg));
-  match(RegP);
-  format %{ "EBP" %}
-  interface(REG_INTER);
-%}
-
 operand eRegL() %{
   constraint(ALLOC_IN_RC(long_reg));
   match(RegL);
@@ -12615,7 +12644,6 @@
 //       compute_padding() functions will have to be adjusted.
 instruct CallStaticJavaDirect(method meth) %{
   match(CallStaticJava);
-  predicate(! ((CallStaticJavaNode*)n)->is_method_handle_invoke());
   effect(USE meth);
 
   ins_cost(300);
@@ -12629,29 +12657,6 @@
   ins_alignment(4);
 %}
 
-// Call Java Static Instruction (method handle version)
-// Note: If this code changes, the corresponding ret_addr_offset() and
-//       compute_padding() functions will have to be adjusted.
-instruct CallStaticJavaHandle(method meth, eBPRegP ebp_mh_SP_save) %{
-  match(CallStaticJava);
-  predicate(((CallStaticJavaNode*)n)->is_method_handle_invoke());
-  effect(USE meth);
-  // EBP is saved by all callees (for interpreter stack correction).
-  // We use it here for a similar purpose, in {preserve,restore}_SP.
-
-  ins_cost(300);
-  format %{ "CALL,static/MethodHandle " %}
-  opcode(0xE8); /* E8 cd */
-  ins_encode( pre_call_resets,
-              preserve_SP,
-              Java_Static_Call( meth ),
-              restore_SP,
-              call_epilog,
-              post_call_FPU );
-  ins_pipe( pipe_slow );
-  ins_alignment(4);
-%}
-
 // Call Java Dynamic Instruction
 // Note: If this code changes, the corresponding ret_addr_offset() and
 //       compute_padding() functions will have to be adjusted.
--- a/hotspot/src/cpu/x86/vm/x86_64.ad	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/x86/vm/x86_64.ad	Wed Jul 05 20:32:21 2017 +0200
@@ -166,42 +166,67 @@
 // 3) reg_class stack_slots( /* one chunk of stack-based "registers" */ )
 //
 
-// Class for all pointer registers (including RSP)
-reg_class any_reg(RAX, RAX_H,
-                  RDX, RDX_H,
-                  RBP, RBP_H,
-                  RDI, RDI_H,
-                  RSI, RSI_H,
-                  RCX, RCX_H,
-                  RBX, RBX_H,
-                  RSP, RSP_H,
-                  R8,  R8_H,
-                  R9,  R9_H,
-                  R10, R10_H,
-                  R11, R11_H,
-                  R12, R12_H,
-                  R13, R13_H,
-                  R14, R14_H,
-                  R15, R15_H);
-
-// Class for all pointer registers except RSP
-reg_class ptr_reg(RAX, RAX_H,
-                  RDX, RDX_H,
-                  RBP, RBP_H,
-                  RDI, RDI_H,
-                  RSI, RSI_H,
-                  RCX, RCX_H,
-                  RBX, RBX_H,
-                  R8,  R8_H,
-                  R9,  R9_H,
-                  R10, R10_H,
-                  R11, R11_H,
-                  R13, R13_H,
-                  R14, R14_H);
-
-// Class for all pointer registers except RAX and RSP
-reg_class ptr_no_rax_reg(RDX, RDX_H,
-                         RBP, RBP_H,
+// Empty register class.
+reg_class no_reg();
+
+// Class for all pointer registers (including RSP and RBP)
+reg_class any_reg_with_rbp(RAX, RAX_H,
+                           RDX, RDX_H,
+                           RBP, RBP_H,               
+                           RDI, RDI_H,
+                           RSI, RSI_H,
+                           RCX, RCX_H,
+                           RBX, RBX_H,
+                           RSP, RSP_H,
+                           R8,  R8_H,
+                           R9,  R9_H,
+                           R10, R10_H,
+                           R11, R11_H,
+                           R12, R12_H,
+                           R13, R13_H,
+                           R14, R14_H,
+                           R15, R15_H);
+
+// Class for all pointer registers (including RSP, but excluding RBP)
+reg_class any_reg_no_rbp(RAX, RAX_H,
+                         RDX, RDX_H,                
+                         RDI, RDI_H,
+                         RSI, RSI_H,
+                         RCX, RCX_H,
+                         RBX, RBX_H,
+                         RSP, RSP_H,
+                         R8,  R8_H,
+                         R9,  R9_H,
+                         R10, R10_H,
+                         R11, R11_H,
+                         R12, R12_H,
+                         R13, R13_H,
+                         R14, R14_H,
+                         R15, R15_H);
+
+// Dynamic register class that selects at runtime between register classes
+// any_reg_no_rbp and any_reg_with_rbp (depending on the value of the flag PreserveFramePointer). 
+// Equivalent to: return PreserveFramePointer ? any_reg_no_rbp : any_reg_with_rbp;
+reg_class_dynamic any_reg(any_reg_no_rbp, any_reg_with_rbp, %{ PreserveFramePointer %});
+                  
+// Class for all pointer registers (excluding RSP)
+reg_class ptr_reg_with_rbp(RAX, RAX_H,
+                           RDX, RDX_H,
+                           RBP, RBP_H,
+                           RDI, RDI_H,
+                           RSI, RSI_H,
+                           RCX, RCX_H,
+                           RBX, RBX_H,
+                           R8,  R8_H,
+                           R9,  R9_H,
+                           R10, R10_H,
+                           R11, R11_H,
+                           R13, R13_H,
+                           R14, R14_H);
+
+// Class for all pointer registers (excluding RSP and RBP)
+reg_class ptr_reg_no_rbp(RAX, RAX_H,
+                         RDX, RDX_H,                         
                          RDI, RDI_H,
                          RSI, RSI_H,
                          RCX, RCX_H,
@@ -213,31 +238,66 @@
                          R13, R13_H,
                          R14, R14_H);
 
-reg_class ptr_no_rbp_reg(RDX, RDX_H,
-                         RAX, RAX_H,
-                         RDI, RDI_H,
-                         RSI, RSI_H,
-                         RCX, RCX_H,
-                         RBX, RBX_H,
-                         R8,  R8_H,
-                         R9,  R9_H,
-                         R10, R10_H,
-                         R11, R11_H,
-                         R13, R13_H,
-                         R14, R14_H);
-
-// Class for all pointer registers except RAX, RBX and RSP
-reg_class ptr_no_rax_rbx_reg(RDX, RDX_H,
-                             RBP, RBP_H,
-                             RDI, RDI_H,
-                             RSI, RSI_H,
-                             RCX, RCX_H,
-                             R8,  R8_H,
-                             R9,  R9_H,
-                             R10, R10_H,
-                             R11, R11_H,
-                             R13, R13_H,
-                             R14, R14_H);
+// Dynamic register class that selects between ptr_reg_no_rbp and ptr_reg_with_rbp.
+reg_class_dynamic ptr_reg(ptr_reg_no_rbp, ptr_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all pointer registers (excluding RAX and RSP)
+reg_class ptr_no_rax_reg_with_rbp(RDX, RDX_H,
+                                  RBP, RBP_H,
+                                  RDI, RDI_H,
+                                  RSI, RSI_H,
+                                  RCX, RCX_H,
+                                  RBX, RBX_H,
+                                  R8,  R8_H,
+                                  R9,  R9_H,
+                                  R10, R10_H,
+                                  R11, R11_H,
+                                  R13, R13_H,
+                                  R14, R14_H);
+
+// Class for all pointer registers (excluding RAX, RSP, and RBP)
+reg_class ptr_no_rax_reg_no_rbp(RDX, RDX_H,
+                                RDI, RDI_H,
+                                RSI, RSI_H,
+                                RCX, RCX_H,
+                                RBX, RBX_H,
+                                R8,  R8_H,
+                                R9,  R9_H,
+                                R10, R10_H,
+                                R11, R11_H,
+                                R13, R13_H,
+                                R14, R14_H);
+
+// Dynamic register class that selects between ptr_no_rax_reg_no_rbp and ptr_no_rax_reg_with_rbp.
+reg_class_dynamic ptr_no_rax_reg(ptr_no_rax_reg_no_rbp, ptr_no_rax_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all pointer registers (excluding RAX, RBX, and RSP)
+reg_class ptr_no_rax_rbx_reg_with_rbp(RDX, RDX_H,
+                                      RBP, RBP_H,
+                                      RDI, RDI_H,
+                                      RSI, RSI_H,
+                                      RCX, RCX_H,
+                                      R8,  R8_H,
+                                      R9,  R9_H,
+                                      R10, R10_H,
+                                      R11, R11_H,
+                                      R13, R13_H,
+                                      R14, R14_H);
+
+// Class for all pointer registers (excluding RAX, RBX, RSP, and RBP)
+reg_class ptr_no_rax_rbx_reg_no_rbp(RDX, RDX_H,
+                                    RDI, RDI_H,
+                                    RSI, RSI_H,
+                                    RCX, RCX_H,
+                                    R8,  R8_H,
+                                    R9,  R9_H,
+                                    R10, R10_H,
+                                    R11, R11_H,
+                                    R13, R13_H,
+                                    R14, R14_H);
+
+// Dynamic register class that selects between ptr_no_rax_rbx_reg_no_rbp and ptr_no_rax_rbx_reg_with_rbp.
+reg_class_dynamic ptr_no_rax_rbx_reg(ptr_no_rax_rbx_reg_no_rbp, ptr_no_rax_rbx_reg_with_rbp, %{ PreserveFramePointer %});
 
 // Singleton class for RAX pointer register
 reg_class ptr_rax_reg(RAX, RAX_H);
@@ -251,59 +311,29 @@
 // Singleton class for RDI pointer register
 reg_class ptr_rdi_reg(RDI, RDI_H);
 
-// Singleton class for RBP pointer register
-reg_class ptr_rbp_reg(RBP, RBP_H);
-
 // Singleton class for stack pointer
 reg_class ptr_rsp_reg(RSP, RSP_H);
 
 // Singleton class for TLS pointer
 reg_class ptr_r15_reg(R15, R15_H);
 
-// Class for all long registers (except RSP)
-reg_class long_reg(RAX, RAX_H,
-                   RDX, RDX_H,
-                   RBP, RBP_H,
-                   RDI, RDI_H,
-                   RSI, RSI_H,
-                   RCX, RCX_H,
-                   RBX, RBX_H,
-                   R8,  R8_H,
-                   R9,  R9_H,
-                   R10, R10_H,
-                   R11, R11_H,
-                   R13, R13_H,
-                   R14, R14_H);
-
-// Class for all long registers except RAX, RDX (and RSP)
-reg_class long_no_rax_rdx_reg(RBP, RBP_H,
-                              RDI, RDI_H,
-                              RSI, RSI_H,
-                              RCX, RCX_H,
-                              RBX, RBX_H,
-                              R8,  R8_H,
-                              R9,  R9_H,
-                              R10, R10_H,
-                              R11, R11_H,
-                              R13, R13_H,
-                              R14, R14_H);
-
-// Class for all long registers except RCX (and RSP)
-reg_class long_no_rcx_reg(RBP, RBP_H,
-                          RDI, RDI_H,
-                          RSI, RSI_H,
-                          RAX, RAX_H,
-                          RDX, RDX_H,
-                          RBX, RBX_H,
-                          R8,  R8_H,
-                          R9,  R9_H,
-                          R10, R10_H,
-                          R11, R11_H,
-                          R13, R13_H,
-                          R14, R14_H);
-
-// Class for all long registers except RAX (and RSP)
-reg_class long_no_rax_reg(RBP, RBP_H,
+// Class for all long registers (excluding RSP)
+reg_class long_reg_with_rbp(RAX, RAX_H,
+                            RDX, RDX_H,
+                            RBP, RBP_H,
+                            RDI, RDI_H,
+                            RSI, RSI_H,
+                            RCX, RCX_H,
+                            RBX, RBX_H,
+                            R8,  R8_H,
+                            R9,  R9_H,
+                            R10, R10_H,
+                            R11, R11_H,
+                            R13, R13_H,
+                            R14, R14_H);
+
+// Class for all long registers (excluding RSP and RBP)
+reg_class long_reg_no_rbp(RAX, RAX_H,
                           RDX, RDX_H,
                           RDI, RDI_H,
                           RSI, RSI_H,
@@ -316,6 +346,67 @@
                           R13, R13_H,
                           R14, R14_H);
 
+// Dynamic register class that selects between long_reg_no_rbp and long_reg_with_rbp.
+reg_class_dynamic long_reg(long_reg_no_rbp, long_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all long registers (excluding RAX, RDX and RSP)
+reg_class long_no_rax_rdx_reg_with_rbp(RBP, RBP_H,
+                                       RDI, RDI_H,
+                                       RSI, RSI_H,
+                                       RCX, RCX_H,
+                                       RBX, RBX_H,
+                                       R8,  R8_H,
+                                       R9,  R9_H,
+                                       R10, R10_H,
+                                       R11, R11_H,
+                                       R13, R13_H,
+                                       R14, R14_H);
+
+// Class for all long registers (excluding RAX, RDX, RSP, and RBP)
+reg_class long_no_rax_rdx_reg_no_rbp(RDI, RDI_H,
+                                     RSI, RSI_H,
+                                     RCX, RCX_H,
+                                     RBX, RBX_H,
+                                     R8,  R8_H,
+                                     R9,  R9_H,
+                                     R10, R10_H,
+                                     R11, R11_H,
+                                     R13, R13_H,
+                                     R14, R14_H);
+
+// Dynamic register class that selects between long_no_rax_rdx_reg_no_rbp and long_no_rax_rdx_reg_with_rbp.
+reg_class_dynamic long_no_rax_rdx_reg(long_no_rax_rdx_reg_no_rbp, long_no_rax_rdx_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all long registers (excluding RCX and RSP)
+reg_class long_no_rcx_reg_with_rbp(RBP, RBP_H,
+                                   RDI, RDI_H,
+                                   RSI, RSI_H,
+                                   RAX, RAX_H,
+                                   RDX, RDX_H,
+                                   RBX, RBX_H,
+                                   R8,  R8_H,
+                                   R9,  R9_H,
+                                   R10, R10_H,
+                                   R11, R11_H,
+                                   R13, R13_H,
+                                   R14, R14_H);
+
+// Class for all long registers (excluding RCX, RSP, and RBP)
+reg_class long_no_rcx_reg_no_rbp(RDI, RDI_H,
+                                 RSI, RSI_H,
+                                 RAX, RAX_H,
+                                 RDX, RDX_H,
+                                 RBX, RBX_H,
+                                 R8,  R8_H,
+                                 R9,  R9_H,
+                                 R10, R10_H,
+                                 R11, R11_H,
+                                 R13, R13_H,
+                                 R14, R14_H);
+
+// Dynamic register class that selects between long_no_rcx_reg_no_rbp and long_no_rcx_reg_with_rbp.
+reg_class_dynamic long_no_rcx_reg(long_no_rcx_reg_no_rbp, long_no_rcx_reg_with_rbp, %{ PreserveFramePointer %});
+
 // Singleton class for RAX long register
 reg_class long_rax_reg(RAX, RAX_H);
 
@@ -325,27 +416,27 @@
 // Singleton class for RDX long register
 reg_class long_rdx_reg(RDX, RDX_H);
 
-// Class for all int registers (except RSP)
-reg_class int_reg(RAX,
-                  RDX,
-                  RBP,
-                  RDI,
-                  RSI,
-                  RCX,
-                  RBX,
-                  R8,
-                  R9,
-                  R10,
-                  R11,
-                  R13,
-                  R14);
-
-// Class for all int registers except RCX (and RSP)
-reg_class int_no_rcx_reg(RAX,
+// Class for all int registers (excluding RSP)
+reg_class int_reg_with_rbp(RAX,
+                           RDX,
+                           RBP,
+                           RDI,
+                           RSI,
+                           RCX,
+                           RBX,
+                           R8,
+                           R9,
+                           R10,
+                           R11,
+                           R13,
+                           R14);
+
+// Class for all int registers (excluding RSP and RBP)
+reg_class int_reg_no_rbp(RAX,
                          RDX,
-                         RBP,
                          RDI,
                          RSI,
+                         RCX,
                          RBX,
                          R8,
                          R9,
@@ -354,18 +445,66 @@
                          R13,
                          R14);
 
-// Class for all int registers except RAX, RDX (and RSP)
-reg_class int_no_rax_rdx_reg(RBP,
-                             RDI,
-                             RSI,
-                             RCX,
-                             RBX,
-                             R8,
-                             R9,
-                             R10,
-                             R11,
-                             R13,
-                             R14);
+// Dynamic register class that selects between int_reg_no_rbp and int_reg_with_rbp.
+reg_class_dynamic int_reg(int_reg_no_rbp, int_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all int registers (excluding RCX and RSP)
+reg_class int_no_rcx_reg_with_rbp(RAX,
+                                  RDX,
+                                  RBP,
+                                  RDI,
+                                  RSI,
+                                  RBX,
+                                  R8,
+                                  R9,
+                                  R10,
+                                  R11,
+                                  R13,
+                                  R14);
+
+// Class for all int registers (excluding RCX, RSP, and RBP)
+reg_class int_no_rcx_reg_no_rbp(RAX,
+                                RDX,
+                                RDI,
+                                RSI,
+                                RBX,
+                                R8,
+                                R9,
+                                R10,
+                                R11,
+                                R13,
+                                R14);
+
+// Dynamic register class that selects between int_no_rcx_reg_no_rbp and int_no_rcx_reg_with_rbp.
+reg_class_dynamic int_no_rcx_reg(int_no_rcx_reg_no_rbp, int_no_rcx_reg_with_rbp, %{ PreserveFramePointer %});
+
+// Class for all int registers (excluding RAX, RDX, and RSP)
+reg_class int_no_rax_rdx_reg_with_rbp(RBP,
+                                      RDI,
+                                      RSI,
+                                      RCX,
+                                      RBX,
+                                      R8,
+                                      R9,
+                                      R10,
+                                      R11,
+                                      R13,
+                                      R14);
+
+// Class for all int registers (excluding RAX, RDX, RSP, and RBP)
+reg_class int_no_rax_rdx_reg_no_rbp(RDI,
+                                    RSI,
+                                    RCX,
+                                    RBX,
+                                    R8,
+                                    R9,
+                                    R10,
+                                    R11,
+                                    R13,
+                                    R14);
+
+// Dynamic register class that selects between int_no_rax_rdx_reg_no_rbp and int_no_rax_rdx_reg_with_rbp.
+reg_class_dynamic int_no_rax_rdx_reg(int_no_rax_rdx_reg_no_rbp, int_no_rax_rdx_reg_with_rbp, %{ PreserveFramePointer %});
 
 // Singleton class for RAX int register
 reg_class int_rax_reg(RAX);
@@ -396,9 +535,6 @@
 
 #define __ _masm.
 
-static int preserve_SP_size() {
-  return 3;  // rex.w, op, rm(reg/reg)
-}
 static int clear_avx_size() {
   return (Compile::current()->max_vector_size() > 16) ? 3 : 0;  // vzeroupper
 }
@@ -409,9 +545,7 @@
 int MachCallStaticJavaNode::ret_addr_offset()
 {
   int offset = 5; // 5 bytes from start of call to where return address points
-  offset += clear_avx_size();
-  if (_method_handle_invoke)
-    offset += preserve_SP_size();
+  offset += clear_avx_size();  
   return offset;
 }
 
@@ -450,16 +584,6 @@
 
 // The address of the call instruction needs to be 4-byte aligned to
 // ensure that it does not span a cache line so that it can be patched.
-int CallStaticJavaHandleNode::compute_padding(int current_offset) const
-{
-  current_offset += preserve_SP_size();   // skip mov rbp, rsp
-  current_offset += clear_avx_size(); // skip vzeroupper
-  current_offset += 1; // skip call opcode byte
-  return round_to(current_offset, alignment_required()) - current_offset;
-}
-
-// The address of the call instruction needs to be 4-byte aligned to
-// ensure that it does not span a cache line so that it can be patched.
 int CallDynamicJavaDirectNode::compute_padding(int current_offset) const
 {
   current_offset += clear_avx_size(); // skip vzeroupper
@@ -724,6 +848,10 @@
     st->print("# stack bang (%d bytes)", bangsize);
     st->print("\n\t");
     st->print("pushq   rbp\t# Save rbp");
+    if (PreserveFramePointer) {
+        st->print("\n\t");
+        st->print("movq    rbp, rsp\t# Save the caller's SP into rbp");
+    }
     if (framesize) {
       st->print("\n\t");
       st->print("subq    rsp, #%d\t# Create frame",framesize);
@@ -732,7 +860,11 @@
     st->print("subq    rsp, #%d\t# Create frame",framesize);
     st->print("\n\t");
     framesize -= wordSize;
-    st->print("movq    [rsp + #%d], rbp\t# Save rbp",framesize);
+    st->print("movq    [rsp + #%d], rbp\t# Save rbp",framesize);    
+    if (PreserveFramePointer) {
+      st->print("\n\t");
+      st->print("movq    rbp, [rsp + #%d]\t# Save the caller's SP into rbp", (framesize + wordSize));
+    }
   }
 
   if (VerifyStackAtCalls) {
@@ -1598,8 +1730,9 @@
   return LONG_RDX_REG_mask();
 }
 
+// Register for saving SP into on method handle invokes. Not used on x86_64.
 const RegMask Matcher::method_handle_invoke_SP_save_mask() {
-  return PTR_RBP_REG_mask();
+    return NO_REG_mask();
 }
 
 %}
@@ -3202,7 +3335,7 @@
 // Pointer Register
 operand any_RegP()
 %{
-  constraint(ALLOC_IN_RC(any_reg));
+  constraint(ALLOC_IN_RC(any_reg));  
   match(RegP);
   match(rax_RegP);
   match(rbx_RegP);
@@ -3224,8 +3357,8 @@
   match(rbx_RegP);
   match(rdi_RegP);
   match(rsi_RegP);
-  match(rbp_RegP);
-  match(r15_RegP);  // See Q&A below about r15_RegP.
+  match(rbp_RegP);  // See Q&A below about
+  match(r15_RegP);  // r15_RegP and rbp_RegP.
 
   format %{ %}
   interface(REG_INTER);
@@ -3241,11 +3374,14 @@
 
 // Question: Why is r15_RegP (the read-only TLS register) a match for rRegP?
 // Answer: Operand match rules govern the DFA as it processes instruction inputs.
-// It's fine for an instruction input which expects rRegP to match a r15_RegP.
+// It's fine for an instruction input that expects rRegP to match a r15_RegP.
 // The output of an instruction is controlled by the allocator, which respects
 // register class masks, not match rules.  Unless an instruction mentions
 // r15_RegP or any_RegP explicitly as its output, r15 will not be considered
 // by the allocator as an input.
+// The same logic applies to rbp_RegP being a match for rRegP: If PreserveFramePointer==true,
+// the RBP is used as a proper frame pointer and is not included in ptr_reg. As a
+// result, RBP is not included in the output of the instruction either.
 
 operand no_rax_RegP()
 %{
@@ -3259,9 +3395,11 @@
   interface(REG_INTER);
 %}
 
+// This operand is not allowed to use RBP even if
+// RBP is not used to hold the frame pointer.
 operand no_rbp_RegP()
 %{
-  constraint(ALLOC_IN_RC(ptr_no_rbp_reg));
+  constraint(ALLOC_IN_RC(ptr_reg_no_rbp));
   match(RegP);
   match(rbx_RegP);
   match(rsi_RegP);
@@ -3338,16 +3476,6 @@
   interface(REG_INTER);
 %}
 
-operand rbp_RegP()
-%{
-  constraint(ALLOC_IN_RC(ptr_rbp_reg));
-  match(RegP);
-  match(rRegP);
-
-  format %{ %}
-  interface(REG_INTER);
-%}
-
 operand r15_RegP()
 %{
   constraint(ALLOC_IN_RC(ptr_r15_reg));
@@ -3604,6 +3732,23 @@
   %}
 %}
 
+// Indirect Memory Plus Positive Index Register Plus Offset Operand
+operand indPosIndexOffset(any_RegP reg, immL32 off, rRegI idx)
+%{
+  constraint(ALLOC_IN_RC(ptr_reg));
+  predicate(n->in(2)->in(3)->as_Type()->type()->is_long()->_lo >= 0);
+  match(AddP (AddP reg (ConvI2L idx)) off);
+
+  op_cost(10);
+  format %{"[$reg + $off + $idx]" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index($idx);
+    scale(0x0);
+    disp($off);
+  %}
+%}
+
 // Indirect Memory Times Scale Plus Positive Index Register Plus Offset Operand
 operand indPosIndexScaleOffset(any_RegP reg, immL32 off, rRegI idx, immI2 scale)
 %{
@@ -3755,6 +3900,23 @@
   %}
 %}
 
+// Indirect Memory Times Plus Positive Index Register Plus Offset Operand
+operand indPosIndexOffsetNarrow(rRegN reg, immL32 off, rRegI idx)
+%{
+  constraint(ALLOC_IN_RC(ptr_reg));
+  predicate(Universe::narrow_oop_shift() == 0 && n->in(2)->in(3)->as_Type()->type()->is_long()->_lo >= 0);
+  match(AddP (AddP (DecodeN reg) (ConvI2L idx)) off);
+
+  op_cost(10);
+  format %{"[$reg + $off + $idx]" %}
+  interface(MEMORY_INTER) %{
+    base($reg);
+    index($idx);
+    scale(0x0);
+    disp($off);
+  %}
+%}
+
 // Indirect Memory Times Scale Plus Positive Index Register Plus Offset Operand
 operand indPosIndexScaleOffsetNarrow(rRegN reg, immL32 off, rRegI idx, immI2 scale)
 %{
@@ -3946,11 +4108,11 @@
 // case of this is memory operands.
 
 opclass memory(indirect, indOffset8, indOffset32, indIndexOffset, indIndex,
-               indIndexScale, indIndexScaleOffset, indPosIndexScaleOffset,
+               indIndexScale, indIndexScaleOffset, indPosIndexOffset, indPosIndexScaleOffset,
                indCompressedOopOffset,
                indirectNarrow, indOffset8Narrow, indOffset32Narrow,
                indIndexOffsetNarrow, indIndexNarrow, indIndexScaleNarrow,
-               indIndexScaleOffsetNarrow, indPosIndexScaleOffsetNarrow);
+               indIndexScaleOffsetNarrow, indPosIndexOffsetNarrow, indPosIndexScaleOffsetNarrow);
 
 //----------PIPELINE-----------------------------------------------------------
 // Rules which define the behavior of the target architectures pipeline.
@@ -4984,6 +5146,17 @@
   ins_pipe(ialu_reg_reg_fat);
 %}
 
+instruct leaPPosIdxOff(rRegP dst, indPosIndexOffset mem)
+%{
+  match(Set dst mem);
+
+  ins_cost(110);
+  format %{ "leaq    $dst, $mem\t# ptr posidxoff" %}
+  opcode(0x8D);
+  ins_encode(REX_reg_mem_wide(dst, mem), OpcP, reg_mem(dst, mem));
+  ins_pipe(ialu_reg_reg_fat);
+%}
+
 instruct leaPPosIdxScaleOff(rRegP dst, indPosIndexScaleOffset mem)
 %{
   match(Set dst mem);
@@ -5068,6 +5241,18 @@
   ins_pipe(ialu_reg_reg_fat);
 %}
 
+instruct leaPPosIdxOffNarrow(rRegP dst, indPosIndexOffsetNarrow mem)
+%{
+  predicate(Universe::narrow_oop_shift() == 0);
+  match(Set dst mem);
+
+  ins_cost(110);
+  format %{ "leaq    $dst, $mem\t# ptr posidxoffnarrow" %}
+  opcode(0x8D);
+  ins_encode(REX_reg_mem_wide(dst, mem), OpcP, reg_mem(dst, mem));
+  ins_pipe(ialu_reg_reg_fat);
+%}
+
 instruct leaPPosIdxScaleOffNarrow(rRegP dst, indPosIndexScaleOffsetNarrow mem)
 %{
   predicate(Universe::narrow_oop_shift() == 0);
@@ -11353,7 +11538,6 @@
 //       compute_padding() functions will have to be adjusted.
 instruct CallStaticJavaDirect(method meth) %{
   match(CallStaticJava);
-  predicate(!((CallStaticJavaNode*) n)->is_method_handle_invoke());
   effect(USE meth);
 
   ins_cost(300);
@@ -11364,27 +11548,6 @@
   ins_alignment(4);
 %}
 
-// Call Java Static Instruction (method handle version)
-// Note: If this code changes, the corresponding ret_addr_offset() and
-//       compute_padding() functions will have to be adjusted.
-instruct CallStaticJavaHandle(method meth, rbp_RegP rbp_mh_SP_save) %{
-  match(CallStaticJava);
-  predicate(((CallStaticJavaNode*) n)->is_method_handle_invoke());
-  effect(USE meth);
-  // RBP is saved by all callees (for interpreter stack correction).
-  // We use it here for a similar purpose, in {preserve,restore}_SP.
-
-  ins_cost(300);
-  format %{ "call,static/MethodHandle " %}
-  opcode(0xE8); /* E8 cd */
-  ins_encode(clear_avx, preserve_SP,
-             Java_Static_Call(meth),
-             restore_SP,
-             call_epilog);
-  ins_pipe(pipe_slow);
-  ins_alignment(4);
-%}
-
 // Call Java Dynamic Instruction
 // Note: If this code changes, the corresponding ret_addr_offset() and
 //       compute_padding() functions will have to be adjusted.
--- a/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -814,9 +814,9 @@
   }
 #endif // INCLUDE_ALL_GCS
 
-  // If G1 is not enabled then attempt to go through the accessor entry point
-  // Reference.get is an accessor
-  return generate_accessor_entry();
+  // If G1 is not enabled then attempt to go through the normal entry point
+  // Reference.get could be instrumented by jvmti
+  return generate_normal_entry(false);
 }
 
 address InterpreterGenerator::generate_native_entry(bool synchronized) {
--- a/hotspot/src/cpu/zero/vm/frame_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/frame_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -213,7 +213,7 @@
     valuebuf[buflen - 1] = '\0';
 
     // Print the result
-    st->print_cr(" " PTR_FORMAT ": %-21s = %s", addr, fieldbuf, valuebuf);
+    st->print_cr(" " PTR_FORMAT ": %-21s = %s", p2i(addr), fieldbuf, valuebuf);
   }
 }
 
--- a/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/methodHandles_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2009, 2010, 2011 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -27,6 +27,7 @@
 #include "interpreter/interpreterGenerator.hpp"
 #include "interpreter/interpreter.hpp"
 #include "memory/allocation.inline.hpp"
+#include "oops/oop.inline.hpp"
 #include "prims/methodHandles.hpp"
 
 void MethodHandles::invoke_target(Method* method, TRAPS) {
@@ -144,6 +145,7 @@
   oop recv = STACK_OBJECT(-numArgs);
   Klass* clazz = recv->klass();
   Klass* klass_part = InstanceKlass::cast(clazz);
+  ResourceMark rm(THREAD);
   klassVtable* vtable = klass_part->vtable();
   Method* vmtarget = vtable->method_at(vmindex);
 
--- a/hotspot/src/cpu/zero/vm/stubGenerator_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/stubGenerator_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2007, 2008, 2010 Red Hat, Inc.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2007, 2008, 2010, 2015 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -45,6 +45,18 @@
 #include "opto/runtime.hpp"
 #endif
 
+// For SafeFetch we need POSIX tls and setjmp
+#include <setjmp.h>
+#include <pthread.h>
+static pthread_key_t g_jmpbuf_key;
+
+// return the currently active jump buffer for this thread
+//  - if there is any, NULL otherwise. Called from
+//    zero signal handlers.
+extern sigjmp_buf* get_jmp_buf_for_continuation() {
+  return (sigjmp_buf*) pthread_getspecific(g_jmpbuf_key);
+}
+
 // Declaration and definition of StubGenerator (no .hpp file).
 // For a more detailed description of the stub routine structure
 // see the comment in stubRoutines.hpp
@@ -177,18 +189,56 @@
   }
 
   static int SafeFetch32(int *adr, int errValue) {
+
+    // set up a jump buffer; anchor the pointer to the jump buffer in tls; then
+    // do the pointer access. If pointer is invalid, we crash; in signal
+    // handler, we retrieve pointer to jmp buffer from tls, and jump back.
+    //
+    // Note: the jump buffer itself - which can get pretty large depending on
+    // the architecture - lives on the stack and that is fine, because we will
+    // not rewind the stack: either we crash, in which case signal handler
+    // frame is below us, or we don't crash, in which case it does not matter.
+    sigjmp_buf jb;
+    if (sigsetjmp(jb, 1)) {
+      // we crashed. clean up tls and return default value.
+      pthread_setspecific(g_jmpbuf_key, NULL);
+      return errValue;
+    } else {
+      // preparation phase
+      pthread_setspecific(g_jmpbuf_key, &jb);
+    }
+
     int value = errValue;
     value = *adr;
+
+    // all went well. clean tls.
+    pthread_setspecific(g_jmpbuf_key, NULL);
+
     return value;
   }
 
   static intptr_t SafeFetchN(intptr_t *adr, intptr_t errValue) {
+
+    sigjmp_buf jb;
+    if (sigsetjmp(jb, 1)) {
+      // we crashed. clean up tls and return default value.
+      pthread_setspecific(g_jmpbuf_key, NULL);
+      return errValue;
+    } else {
+      // preparation phase
+      pthread_setspecific(g_jmpbuf_key, &jb);
+    }
+
     intptr_t value = errValue;
     value = *adr;
+
+    // all went well. clean tls.
+    pthread_setspecific(g_jmpbuf_key, NULL);
+
     return value;
+
   }
 
-
   void generate_initial() {
     // Generates all stubs and initializes the entry points
 
@@ -241,6 +291,7 @@
     generate_arraycopy_stubs();
 
     // Safefetch stubs.
+    pthread_key_create(&g_jmpbuf_key, NULL);
     StubRoutines::_safefetch32_entry = CAST_FROM_FN_PTR(address, StubGenerator::SafeFetch32);
     StubRoutines::_safefetch32_fault_pc = NULL;
     StubRoutines::_safefetch32_continuation_pc = NULL;
--- a/hotspot/src/cpu/zero/vm/vm_version_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/vm_version_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2009 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -30,4 +30,11 @@
 #include "runtime/stubCodeGenerator.hpp"
 #include "vm_version_zero.hpp"
 
-// This file is intentionally empty
+
+void VM_Version::initialize() {
+  // This machine does not allow unaligned memory accesses
+  if (! FLAG_IS_DEFAULT(UseUnalignedAccesses)) {
+    warning("Unaligned memory access is not available on this CPU");
+    FLAG_SET_DEFAULT(UseUnalignedAccesses, false);
+  }
+}
--- a/hotspot/src/cpu/zero/vm/vm_version_zero.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/cpu/zero/vm/vm_version_zero.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2007 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -34,6 +34,7 @@
   static const char* cpu_features() {
     return "";
   }
+  static void initialize();
 };
 
 #endif // CPU_ZERO_VM_VM_VERSION_ZERO_HPP
--- a/hotspot/src/os/aix/vm/attachListener_aix.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/attachListener_aix.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -144,6 +144,10 @@
   }
   char* next() {
     if (*_pos == '\0') {
+      if (_pos < _end) {
+        _pos += 1;
+      }
+
       return NULL;
     }
     char* res = _pos;
@@ -214,6 +218,7 @@
 
   // bind socket
   struct sockaddr_un addr;
+  memset((void *)&addr, 0, sizeof(addr));
   addr.sun_family = AF_UNIX;
   strcpy(addr.sun_path, initial_path);
   ::unlink(initial_path);
--- a/hotspot/src/os/aix/vm/globals_aix.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/globals_aix.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,10 @@
 //
 #define RUNTIME_OS_FLAGS(develop, develop_pd, product, product_pd, diagnostic, notproduct) \
                                                                                     \
+  /* Use 64K pages for virtual memory (shmat). */                                   \
+  product(bool, Use64KPages, true,                                                  \
+          "Use 64K pages if available.")                                            \
+                                                                                    \
   /* If UseLargePages == true allow or deny usage of 16M pages. 16M pages are  */   \
   /* a scarce resource and there may be situations where we do not want the VM */   \
   /* to run with 16M pages. (Will fall back to 64K pages).                     */   \
@@ -55,7 +59,7 @@
 // Defines Aix-specific default values. The flags are available on all
 // platforms, but they may have different default values on other platforms.
 //
-define_pd_global(bool, UseLargePages, true);
+define_pd_global(bool, UseLargePages, false);
 define_pd_global(bool, UseLargePagesIndividualAllocation, false);
 define_pd_global(bool, UseOSErrorReporting, false);
 define_pd_global(bool, UseThreadPriorities, true) ;
--- a/hotspot/src/os/aix/vm/interfaceSupport_aix.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/interfaceSupport_aix.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,8 @@
  *
  */
 
-#ifndef OS_LINUX_VM_INTERFACESUPPORT_LINUX_HPP
-#define OS_LINUX_VM_INTERFACESUPPORT_LINUX_HPP
+#ifndef OS_AIX_VM_INTERFACESUPPORT_AIX_HPP
+#define OS_AIX_VM_INTERFACESUPPORT_AIX_HPP
 
 // Contains inlined functions for class InterfaceSupport
 
@@ -32,4 +32,4 @@
   os::write_memory_serialize_page(thread);
 }
 
-#endif // OS_LINUX_VM_INTERFACESUPPORT_LINUX_HPP
+#endif // OS_AIX_VM_INTERFACESUPPORT_AIX_HPP
--- a/hotspot/src/os/aix/vm/osThread_aix.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/osThread_aix.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
 
   _startThread_lock = new Monitor(Mutex::event, "startThread_lock", true,
                                   Monitor::_safepoint_check_never);
-  assert(_startThread_lock !=NULL, "check");
+  assert(_startThread_lock != NULL, "check");
 }
 
 void OSThread::pd_destroy() {
--- a/hotspot/src/os/aix/vm/os_aix.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/os_aix.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -113,6 +113,10 @@
 #define RUSAGE_THREAD   (1)               /* only the calling thread */
 #endif
 
+// PPC port
+static const uintx Use64KPagesThreshold       = 1*M;
+static const uintx MaxExpectedDataSegmentSize = SIZE_4G*2;
+
 // Add missing declarations (should be in procinfo.h but isn't until AIX 6.1).
 #if !defined(_AIXVERSION_610)
 extern "C" {
@@ -168,8 +172,8 @@
     return -1; \
 }
 
-// query dimensions of the stack of the calling thread
-static void query_stack_dimensions(address* p_stack_base, size_t* p_stack_size);
+// Query dimensions of the stack of the calling thread.
+static bool query_stack_dimensions(address* p_stack_base, size_t* p_stack_size);
 
 // function to check a given stack pointer against given stack limits
 inline bool is_valid_stackpointer(stackptr_t sp, stackptr_t stack_base, size_t stack_size) {
@@ -220,9 +224,6 @@
 int       os::Aix::_on_pase = -1;
 int       os::Aix::_os_version = -1;
 int       os::Aix::_stack_page_size = -1;
-size_t    os::Aix::_shm_default_page_size = -1;
-int       os::Aix::_can_use_64K_pages = -1;
-int       os::Aix::_can_use_16M_pages = -1;
 int       os::Aix::_xpg_sus_mode = -1;
 int       os::Aix::_extshm = -1;
 int       os::Aix::_logical_cpus = -1;
@@ -238,7 +239,63 @@
 static pid_t    _initial_pid       = 0;
 static int      SR_signum          = SIGUSR2; // Signal used to suspend/resume a thread (must be > SIGSEGV, see 4355769)
 static sigset_t SR_sigset;
-static pthread_mutex_t dl_mutex;              // Used to protect dlsym() calls.
+
+// This describes the state of multipage support of the underlying
+// OS. Note that this is of no interest to the outsize world and
+// therefore should not be defined in AIX class.
+//
+// AIX supports four different page sizes - 4K, 64K, 16MB, 16GB. The
+// latter two (16M "large" resp. 16G "huge" pages) require special
+// setup and are normally not available.
+//
+// AIX supports multiple page sizes per process, for:
+//  - Stack (of the primordial thread, so not relevant for us)
+//  - Data - data, bss, heap, for us also pthread stacks
+//  - Text - text code
+//  - shared memory
+//
+// Default page sizes can be set via linker options (-bdatapsize, -bstacksize, ...)
+// and via environment variable LDR_CNTRL (DATAPSIZE, STACKPSIZE, ...).
+//
+// For shared memory, page size can be set dynamically via
+// shmctl(). Different shared memory regions can have different page
+// sizes.
+//
+// More information can be found at AIBM info center:
+//   http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.prftungd/doc/prftungd/multiple_page_size_app_support.htm
+//
+static struct {
+  size_t pagesize;            // sysconf _SC_PAGESIZE (4K)
+  size_t datapsize;           // default data page size (LDR_CNTRL DATAPSIZE)
+  size_t shmpsize;            // default shared memory page size (LDR_CNTRL SHMPSIZE)
+  size_t pthr_stack_pagesize; // stack page size of pthread threads
+  size_t textpsize;           // default text page size (LDR_CNTRL STACKPSIZE)
+  bool can_use_64K_pages;     // True if we can alloc 64K pages dynamically with Sys V shm.
+  bool can_use_16M_pages;     // True if we can alloc 16M pages dynamically with Sys V shm.
+  int error;                  // Error describing if something went wrong at multipage init.
+} g_multipage_support = {
+  (size_t) -1,
+  (size_t) -1,
+  (size_t) -1,
+  (size_t) -1,
+  (size_t) -1,
+  false, false,
+  0
+};
+
+// We must not accidentally allocate memory close to the BRK - even if
+// that would work - because then we prevent the BRK segment from
+// growing which may result in a malloc OOM even though there is
+// enough memory. The problem only arises if we shmat() or mmap() at
+// a specific wish address, e.g. to place the heap in a
+// compressed-oops-friendly way.
+static bool is_close_to_brk(address a) {
+  address a1 = (address) sbrk(0);
+  if (a >= a1 && a < (a1 + MaxExpectedDataSegmentSize)) {
+    return true;
+  }
+  return false;
+}
 
 julong os::available_memory() {
   return Aix::available_memory();
@@ -257,19 +314,6 @@
   return Aix::physical_memory();
 }
 
-////////////////////////////////////////////////////////////////////////////////
-// environment support
-
-bool os::getenv(const char* name, char* buf, int len) {
-  const char* val = ::getenv(name);
-  if (val != NULL && strlen(val) < (size_t)len) {
-    strcpy(buf, val);
-    return true;
-  }
-  if (len > 0) buf[0] = 0;  // return a null string
-  return false;
-}
-
 // Return true if user is running as root.
 
 bool os::have_special_privileges() {
@@ -291,7 +335,7 @@
   }
 
   // Maximum size 32bit disclaim() accepts. (Theoretically 4GB, but I just do not trust that.)
-  const unsigned int maxDisclaimSize = 0x80000000;
+  const unsigned int maxDisclaimSize = 0x40000000;
 
   const unsigned int numFullDisclaimsNeeded = (size / maxDisclaimSize);
   const unsigned int lastDisclaimSize = (size % maxDisclaimSize);
@@ -368,138 +412,131 @@
     case SIZE_64K: return "64K";
     case SIZE_16M: return "16M";
     case SIZE_16G: return "16G";
+    case -1:       return "not set";
     default:
       assert(false, "surprise");
       return "??";
   }
 }
 
-// Retrieve information about multipage size support. Will initialize
-// Aix::_page_size, Aix::_stack_page_size, Aix::_can_use_64K_pages,
-// Aix::_can_use_16M_pages.
+// Probe OS for multipage support.
+// Will fill the global g_multipage_support structure.
 // Must be called before calling os::large_page_init().
-void os::Aix::query_multipage_support() {
-
-  guarantee(_page_size == -1 &&
-            _stack_page_size == -1 &&
-            _can_use_64K_pages == -1 &&
-            _can_use_16M_pages == -1 &&
-            g_multipage_error == -1,
+static void query_multipage_support() {
+
+  guarantee(g_multipage_support.pagesize == -1,
             "do not call twice");
 
-  _page_size = ::sysconf(_SC_PAGESIZE);
+  g_multipage_support.pagesize = ::sysconf(_SC_PAGESIZE);
 
   // This really would surprise me.
-  assert(_page_size == SIZE_4K, "surprise!");
-
+  assert(g_multipage_support.pagesize == SIZE_4K, "surprise!");
 
   // Query default data page size (default page size for C-Heap, pthread stacks and .bss).
-  // Default data page size is influenced either by linker options (-bdatapsize)
+  // Default data page size is defined either by linker options (-bdatapsize)
   // or by environment variable LDR_CNTRL (suboption DATAPSIZE). If none is given,
   // default should be 4K.
-  size_t data_page_size = SIZE_4K;
   {
-    void* p = os::malloc(SIZE_16M, mtInternal);
-    guarantee(p != NULL, "malloc failed");
-    data_page_size = os::Aix::query_pagesize(p);
-    os::free(p);
-  }
-
-  // query default shm page size (LDR_CNTRL SHMPSIZE)
+    void* p = ::malloc(SIZE_16M);
+    g_multipage_support.datapsize = os::Aix::query_pagesize(p);
+    ::free(p);
+  }
+
+  // Query default shm page size (LDR_CNTRL SHMPSIZE).
   {
     const int shmid = ::shmget(IPC_PRIVATE, 1, IPC_CREAT | S_IRUSR | S_IWUSR);
     guarantee(shmid != -1, "shmget failed");
     void* p = ::shmat(shmid, NULL, 0);
     ::shmctl(shmid, IPC_RMID, NULL);
     guarantee(p != (void*) -1, "shmat failed");
-    _shm_default_page_size = os::Aix::query_pagesize(p);
+    g_multipage_support.shmpsize = os::Aix::query_pagesize(p);
     ::shmdt(p);
   }
 
-  // before querying the stack page size, make sure we are not running as primordial
+  // Before querying the stack page size, make sure we are not running as primordial
   // thread (because primordial thread's stack may have different page size than
   // pthread thread stacks). Running a VM on the primordial thread won't work for a
-  // number of reasons so we may just as well guarantee it here
-  guarantee(!os::Aix::is_primordial_thread(), "Must not be called for primordial thread");
-
-  // query stack page size
+  // number of reasons so we may just as well guarantee it here.
+  guarantee0(!os::Aix::is_primordial_thread());
+
+  // Query pthread stack page size.
   {
     int dummy = 0;
-    _stack_page_size = os::Aix::query_pagesize(&dummy);
-    // everything else would surprise me and should be looked into
-    guarantee(_stack_page_size == SIZE_4K || _stack_page_size == SIZE_64K, "Wrong page size");
-    // also, just for completeness: pthread stacks are allocated from C heap, so
-    // stack page size should be the same as data page size
-    guarantee(_stack_page_size == data_page_size, "stack page size should be the same as data page size");
-  }
-
-  // EXTSHM is bad: among other things, it prevents setting pagesize dynamically
-  // for system V shm.
-  if (Aix::extshm()) {
-    if (Verbose) {
-      fprintf(stderr, "EXTSHM is active - will disable large page support.\n"
-                      "Please make sure EXTSHM is OFF for large page support.\n");
-    }
-    g_multipage_error = ERROR_MP_EXTSHM_ACTIVE;
-    _can_use_64K_pages = _can_use_16M_pages = 0;
+    g_multipage_support.pthr_stack_pagesize = os::Aix::query_pagesize(&dummy);
+  }
+
+  // Query default text page size (LDR_CNTRL TEXTPSIZE).
+  /* PPC port: so far unused.
+  {
+    address any_function =
+      (address) resolve_function_descriptor_to_code_pointer((address)describe_pagesize);
+    g_multipage_support.textpsize = os::Aix::query_pagesize(any_function);
+  }
+  */
+
+  // Now probe for support of 64K pages and 16M pages.
+
+  // Before OS/400 V6R1, there is no support for pages other than 4K.
+  if (os::Aix::on_pase_V5R4_or_older()) {
+    Unimplemented();
     goto query_multipage_support_end;
   }
 
-  // now check which page sizes the OS claims it supports, and of those, which actually can be used.
+  // Now check which page sizes the OS claims it supports, and of those, which actually can be used.
   {
     const int MAX_PAGE_SIZES = 4;
     psize_t sizes[MAX_PAGE_SIZES];
     const int num_psizes = ::vmgetinfo(sizes, VMINFO_GETPSIZES, MAX_PAGE_SIZES);
     if (num_psizes == -1) {
-      if (Verbose) {
-        fprintf(stderr, "vmgetinfo(VMINFO_GETPSIZES) failed (errno: %d)\n", errno);
-        fprintf(stderr, "disabling multipage support.\n");
-      }
-      g_multipage_error = ERROR_MP_VMGETINFO_FAILED;
-      _can_use_64K_pages = _can_use_16M_pages = 0;
+      trc("vmgetinfo(VMINFO_GETPSIZES) failed (errno: %d)\n", errno);
+      trc("disabling multipage support.\n");
+      g_multipage_support.error = ERROR_MP_VMGETINFO_FAILED;
       goto query_multipage_support_end;
     }
     guarantee(num_psizes > 0, "vmgetinfo(.., VMINFO_GETPSIZES, ...) failed.");
     assert(num_psizes <= MAX_PAGE_SIZES, "Surprise! more than 4 page sizes?");
-    if (Verbose) {
-      fprintf(stderr, "vmgetinfo(.., VMINFO_GETPSIZES, ...) returns %d supported page sizes: ", num_psizes);
-      for (int i = 0; i < num_psizes; i ++) {
-        fprintf(stderr, " %s ", describe_pagesize(sizes[i]));
-      }
-      fprintf(stderr, " .\n");
+    trcVerbose("vmgetinfo(.., VMINFO_GETPSIZES, ...) returns %d supported page sizes: ", num_psizes);
+    for (int i = 0; i < num_psizes; i ++) {
+      trcVerbose(" %s ", describe_pagesize(sizes[i]));
     }
 
     // Can we use 64K, 16M pages?
-    _can_use_64K_pages = 0;
-    _can_use_16M_pages = 0;
     for (int i = 0; i < num_psizes; i ++) {
-      if (sizes[i] == SIZE_64K) {
-        _can_use_64K_pages = 1;
-      } else if (sizes[i] == SIZE_16M) {
-        _can_use_16M_pages = 1;
+      const size_t pagesize = sizes[i];
+      if (pagesize != SIZE_64K && pagesize != SIZE_16M) {
+        continue;
       }
-    }
-
-    if (!_can_use_64K_pages) {
-      g_multipage_error = ERROR_MP_VMGETINFO_CLAIMS_NO_SUPPORT_FOR_64K;
-    }
-
-    // Double-check for 16M pages: Even if AIX claims to be able to use 16M pages,
-    // there must be an actual 16M page pool, and we must run with enough rights.
-    if (_can_use_16M_pages) {
-      const int shmid = ::shmget(IPC_PRIVATE, SIZE_16M, IPC_CREAT | S_IRUSR | S_IWUSR);
-      guarantee(shmid != -1, "shmget failed");
+      bool can_use = false;
+      trcVerbose("Probing support for %s pages...", describe_pagesize(pagesize));
+      const int shmid = ::shmget(IPC_PRIVATE, pagesize,
+        IPC_CREAT | S_IRUSR | S_IWUSR);
+      guarantee0(shmid != -1); // Should always work.
+      // Try to set pagesize.
       struct shmid_ds shm_buf = { 0 };
-      shm_buf.shm_pagesize = SIZE_16M;
-      const bool can_set_pagesize = ::shmctl(shmid, SHM_PAGESIZE, &shm_buf) == 0 ? true : false;
-      const int en = errno;
-      ::shmctl(shmid, IPC_RMID, NULL);
-      if (!can_set_pagesize) {
-        if (Verbose) {
-          fprintf(stderr, "Failed to allocate even one misely 16M page. shmctl failed with %d (%s).\n"
-                          "Will deactivate 16M support.\n", en, strerror(en));
+      shm_buf.shm_pagesize = pagesize;
+      if (::shmctl(shmid, SHM_PAGESIZE, &shm_buf) != 0) {
+        const int en = errno;
+        ::shmctl(shmid, IPC_RMID, NULL); // As early as possible!
+        // PPC port trcVerbose("shmctl(SHM_PAGESIZE) failed with %s",
+        // PPC port  MiscUtils::describe_errno(en));
+      } else {
+        // Attach and double check pageisze.
+        void* p = ::shmat(shmid, NULL, 0);
+        ::shmctl(shmid, IPC_RMID, NULL); // As early as possible!
+        guarantee0(p != (void*) -1); // Should always work.
+        const size_t real_pagesize = os::Aix::query_pagesize(p);
+        if (real_pagesize != pagesize) {
+          trcVerbose("real page size (0x%llX) differs.", real_pagesize);
+        } else {
+          can_use = true;
         }
-        _can_use_16M_pages = 0;
+        ::shmdt(p);
+      }
+      trcVerbose("Can use: %s", (can_use ? "yes" : "no"));
+      if (pagesize == SIZE_64K) {
+        g_multipage_support.can_use_64K_pages = can_use;
+      } else if (pagesize == SIZE_16M) {
+        g_multipage_support.can_use_16M_pages = can_use;
       }
     }
 
@@ -507,23 +544,29 @@
 
 query_multipage_support_end:
 
-  guarantee(_page_size != -1 &&
-            _stack_page_size != -1 &&
-            _can_use_64K_pages != -1 &&
-            _can_use_16M_pages != -1, "Page sizes not properly initialized");
-
-  if (_can_use_64K_pages) {
-    g_multipage_error = 0;
-  }
-
-  if (Verbose) {
-    fprintf(stderr, "Data page size (C-Heap, bss, etc): %s\n", describe_pagesize(data_page_size));
-    fprintf(stderr, "Thread stack page size (pthread): %s\n", describe_pagesize(_stack_page_size));
-    fprintf(stderr, "Default shared memory page size: %s\n", describe_pagesize(_shm_default_page_size));
-    fprintf(stderr, "Can use 64K pages dynamically with shared meory: %s\n", (_can_use_64K_pages ? "yes" :"no"));
-    fprintf(stderr, "Can use 16M pages dynamically with shared memory: %s\n", (_can_use_16M_pages ? "yes" :"no"));
-    fprintf(stderr, "Multipage error details: %d\n", g_multipage_error);
-  }
+  trcVerbose("base page size (sysconf _SC_PAGESIZE): %s\n",
+      describe_pagesize(g_multipage_support.pagesize));
+  trcVerbose("Data page size (C-Heap, bss, etc): %s\n",
+      describe_pagesize(g_multipage_support.datapsize));
+  trcVerbose("Text page size: %s\n",
+      describe_pagesize(g_multipage_support.textpsize));
+  trcVerbose("Thread stack page size (pthread): %s\n",
+      describe_pagesize(g_multipage_support.pthr_stack_pagesize));
+  trcVerbose("Default shared memory page size: %s\n",
+      describe_pagesize(g_multipage_support.shmpsize));
+  trcVerbose("Can use 64K pages dynamically with shared meory: %s\n",
+      (g_multipage_support.can_use_64K_pages ? "yes" :"no"));
+  trcVerbose("Can use 16M pages dynamically with shared memory: %s\n",
+      (g_multipage_support.can_use_16M_pages ? "yes" :"no"));
+  trcVerbose("Multipage error details: %d\n",
+      g_multipage_support.error);
+
+  // sanity checks
+  assert0(g_multipage_support.pagesize == SIZE_4K);
+  assert0(g_multipage_support.datapsize == SIZE_4K || g_multipage_support.datapsize == SIZE_64K);
+  // PPC port: so far unused.assert0(g_multipage_support.textpsize == SIZE_4K || g_multipage_support.textpsize == SIZE_64K);
+  assert0(g_multipage_support.pthr_stack_pagesize == g_multipage_support.datapsize);
+  assert0(g_multipage_support.shmpsize == SIZE_4K || g_multipage_support.shmpsize == SIZE_64K);
 
 } // end os::Aix::query_multipage_support()
 
@@ -1225,6 +1268,10 @@
 // called from signal handler. Before adding something to os::abort(), make
 // sure it is async-safe and can handle partially initialized VM.
 void os::abort(bool dump_core) {
+  abort(dump_core, NULL, NULL);
+}
+
+void os::abort(bool dump_core, void* siginfo, void* context) {
   os::shutdown();
   if (dump_core) {
 #ifndef PRODUCT
@@ -1492,13 +1539,8 @@
   return NULL;
 }
 
-// Glibc-2.0 libdl is not MT safe. If you are building with any glibc,
-// chances are you might want to run the generated bits against glibc-2.0
-// libdl.so, so always use locking for any version of glibc.
 void* os::dll_lookup(void* handle, const char* name) {
-  pthread_mutex_lock(&dl_mutex);
   void* res = dlsym(handle, name);
-  pthread_mutex_unlock(&dl_mutex);
   return res;
 }
 
@@ -1572,9 +1614,12 @@
 
   st->print_cr("  default page size: %s", describe_pagesize(os::vm_page_size()));
   st->print_cr("  default stack page size: %s", describe_pagesize(os::vm_page_size()));
-  st->print_cr("  default shm page size: %s", describe_pagesize(os::Aix::shm_default_page_size()));
-  st->print_cr("  can use 64K pages dynamically: %s", (os::Aix::can_use_64K_pages() ? "yes" :"no"));
-  st->print_cr("  can use 16M pages dynamically: %s", (os::Aix::can_use_16M_pages() ? "yes" :"no"));
+  st->print_cr("  Default shared memory page size:        %s",
+    describe_pagesize(g_multipage_support.shmpsize));
+  st->print_cr("  Can use 64K pages dynamically with shared meory:  %s",
+    (g_multipage_support.can_use_64K_pages ? "yes" :"no"));
+  st->print_cr("  Can use 16M pages dynamically with shared memory: %s",
+    (g_multipage_support.can_use_16M_pages ? "yes" :"no"));
   if (g_multipage_error != 0) {
     st->print_cr("  multipage error: %d", g_multipage_error);
   }
@@ -1585,6 +1630,9 @@
 
   const char* const extshm = ::getenv("EXTSHM");
   st->print_cr("  EXTSHM=%s.", extshm ? extshm : "<unset>");
+  if ( (strcmp(extshm, "on") == 0) || (strcmp(extshm, "ON") == 0) ) {
+    st->print_cr("  *** Unsupported! Please remove EXTSHM from your environment! ***");
+  }
 
   // Call os::Aix::get_meminfo() to retrieve memory statistics.
   os::Aix::meminfo_t mi;
@@ -1827,315 +1875,386 @@
 ////////////////////////////////////////////////////////////////////////////////
 // Virtual Memory
 
-// AddrRange describes an immutable address range
-//
-// This is a helper class for the 'shared memory bookkeeping' below.
-class AddrRange {
-  friend class ShmBkBlock;
-
-  char* _start;
-  size_t _size;
-
-public:
-
-  AddrRange(char* start, size_t size)
-    : _start(start), _size(size)
-  {}
-
-  AddrRange(const AddrRange& r)
-    : _start(r.start()), _size(r.size())
-  {}
-
-  char* start() const { return _start; }
-  size_t size() const { return _size; }
-  char* end() const { return _start + _size; }
-  bool is_empty() const { return _size == 0 ? true : false; }
-
-  static AddrRange empty_range() { return AddrRange(NULL, 0); }
-
-  bool contains(const char* p) const {
-    return start() <= p && end() > p;
-  }
-
-  bool contains(const AddrRange& range) const {
-    return start() <= range.start() && end() >= range.end();
-  }
-
-  bool intersects(const AddrRange& range) const {
-    return (range.start() <= start() && range.end() > start()) ||
-           (range.start() < end() && range.end() >= end()) ||
-           contains(range);
-  }
-
-  bool is_same_range(const AddrRange& range) const {
-    return start() == range.start() && size() == range.size();
-  }
-
-  // return the closest inside range consisting of whole pages
-  AddrRange find_closest_aligned_range(size_t pagesize) const {
-    if (pagesize == 0 || is_empty()) {
-      return empty_range();
+// We need to keep small simple bookkeeping for os::reserve_memory and friends.
+
+#define VMEM_MAPPED  1
+#define VMEM_SHMATED 2
+
+struct vmembk_t {
+  int type;         // 1 - mmap, 2 - shmat
+  char* addr;
+  size_t size;      // Real size, may be larger than usersize.
+  size_t pagesize;  // page size of area
+  vmembk_t* next;
+
+  bool contains_addr(char* p) const {
+    return p >= addr && p < (addr + size);
+  }
+
+  bool contains_range(char* p, size_t s) const {
+    return contains_addr(p) && contains_addr(p + s - 1);
+  }
+
+  void print_on(outputStream* os) const {
+    os->print("[" PTR_FORMAT " - " PTR_FORMAT "] (" UINTX_FORMAT
+      " bytes, %d %s pages), %s",
+      addr, addr + size - 1, size, size / pagesize, describe_pagesize(pagesize),
+      (type == VMEM_SHMATED ? "shmat" : "mmap")
+    );
+  }
+
+  // Check that range is a sub range of memory block (or equal to memory block);
+  // also check that range is fully page aligned to the page size if the block.
+  void assert_is_valid_subrange(char* p, size_t s) const {
+    if (!contains_range(p, s)) {
+      fprintf(stderr, "[" PTR_FORMAT " - " PTR_FORMAT "] is not a sub "
+              "range of [" PTR_FORMAT " - " PTR_FORMAT "].\n",
+              p, p + s - 1, addr, addr + size - 1);
+      guarantee0(false);
     }
-    char* const from = (char*)align_size_up((intptr_t)_start, pagesize);
-    char* const to = (char*)align_size_down((intptr_t)end(), pagesize);
-    if (from > to) {
-      return empty_range();
+    if (!is_aligned_to(p, pagesize) || !is_aligned_to(p + s, pagesize)) {
+      fprintf(stderr, "range [" PTR_FORMAT " - " PTR_FORMAT "] is not"
+              " aligned to pagesize (%s)\n", p, p + s);
+      guarantee0(false);
     }
-    return AddrRange(from, to - from);
   }
 };
 
-////////////////////////////////////////////////////////////////////////////
-// shared memory bookkeeping
-//
-// the os::reserve_memory() API and friends hand out different kind of memory, depending
-// on need and circumstances. Memory may be allocated with mmap() or with shmget/shmat.
-//
-// But these memory types have to be treated differently. For example, to uncommit
-// mmap-based memory, msync(MS_INVALIDATE) is needed, to uncommit shmat-based memory,
-// disclaim64() is needed.
-//
-// Therefore we need to keep track of the allocated memory segments and their
-// properties.
-
-// ShmBkBlock: base class for all blocks in the shared memory bookkeeping
-class ShmBkBlock : public CHeapObj<mtInternal> {
-
-  ShmBkBlock* _next;
-
-protected:
-
-  AddrRange _range;
-  const size_t _pagesize;
-  const bool _pinned;
-
-public:
-
-  ShmBkBlock(AddrRange range, size_t pagesize, bool pinned)
-    : _range(range), _pagesize(pagesize), _pinned(pinned) , _next(NULL) {
-
-    assert(_pagesize == SIZE_4K || _pagesize == SIZE_64K || _pagesize == SIZE_16M, "invalid page size");
-    assert(!_range.is_empty(), "invalid range");
-  }
-
-  virtual void print(outputStream* st) const {
-    st->print("0x%p ... 0x%p (%llu) - %d %s pages - %s",
-              _range.start(), _range.end(), _range.size(),
-              _range.size() / _pagesize, describe_pagesize(_pagesize),
-              _pinned ? "pinned" : "");
-  }
-
-  enum Type { MMAP, SHMAT };
-  virtual Type getType() = 0;
-
-  char* base() const { return _range.start(); }
-  size_t size() const { return _range.size(); }
-
-  void setAddrRange(AddrRange range) {
-    _range = range;
-  }
-
-  bool containsAddress(const char* p) const {
-    return _range.contains(p);
-  }
-
-  bool containsRange(const char* p, size_t size) const {
-    return _range.contains(AddrRange((char*)p, size));
-  }
-
-  bool isSameRange(const char* p, size_t size) const {
-    return _range.is_same_range(AddrRange((char*)p, size));
-  }
-
-  virtual bool disclaim(char* p, size_t size) = 0;
-  virtual bool release() = 0;
-
-  // blocks live in a list.
-  ShmBkBlock* next() const { return _next; }
-  void set_next(ShmBkBlock* blk) { _next = blk; }
-
-}; // end: ShmBkBlock
-
-
-// ShmBkMappedBlock: describes an block allocated with mmap()
-class ShmBkMappedBlock : public ShmBkBlock {
-public:
-
-  ShmBkMappedBlock(AddrRange range)
-    : ShmBkBlock(range, SIZE_4K, false) {} // mmap: always 4K, never pinned
-
-  void print(outputStream* st) const {
-    ShmBkBlock::print(st);
-    st->print_cr(" - mmap'ed");
-  }
-
-  Type getType() {
-    return MMAP;
-  }
-
-  bool disclaim(char* p, size_t size) {
-
-    AddrRange r(p, size);
-
-    guarantee(_range.contains(r), "invalid disclaim");
-
-    // only disclaim whole ranges.
-    const AddrRange r2 = r.find_closest_aligned_range(_pagesize);
-    if (r2.is_empty()) {
-      return true;
+static struct {
+  vmembk_t* first;
+  MiscUtils::CritSect cs;
+} vmem;
+
+static void vmembk_add(char* addr, size_t size, size_t pagesize, int type) {
+  vmembk_t* p = (vmembk_t*) ::malloc(sizeof(vmembk_t));
+  assert0(p);
+  if (p) {
+    MiscUtils::AutoCritSect lck(&vmem.cs);
+    p->addr = addr; p->size = size;
+    p->pagesize = pagesize;
+    p->type = type;
+    p->next = vmem.first;
+    vmem.first = p;
+  }
+}
+
+static vmembk_t* vmembk_find(char* addr) {
+  MiscUtils::AutoCritSect lck(&vmem.cs);
+  for (vmembk_t* p = vmem.first; p; p = p->next) {
+    if (p->addr <= addr && (p->addr + p->size) > addr) {
+      return p;
     }
-
-    const int rc = ::msync(r2.start(), r2.size(), MS_INVALIDATE);
-
-    if (rc != 0) {
-      warning("msync(0x%p, %llu, MS_INVALIDATE) failed (%d)\n", r2.start(), r2.size(), errno);
-    }
-
-    return rc == 0 ? true : false;
-  }
-
-  bool release() {
-    // mmap'ed blocks are released using munmap
-    if (::munmap(_range.start(), _range.size()) != 0) {
-      warning("munmap(0x%p, %llu) failed (%d)\n", _range.start(), _range.size(), errno);
-      return false;
-    }
-    return true;
-  }
-}; // end: ShmBkMappedBlock
-
-// ShmBkShmatedBlock: describes an block allocated with shmget/shmat()
-class ShmBkShmatedBlock : public ShmBkBlock {
-public:
-
-  ShmBkShmatedBlock(AddrRange range, size_t pagesize, bool pinned)
-    : ShmBkBlock(range, pagesize, pinned) {}
-
-  void print(outputStream* st) const {
-    ShmBkBlock::print(st);
-    st->print_cr(" - shmat'ed");
-  }
-
-  Type getType() {
-    return SHMAT;
-  }
-
-  bool disclaim(char* p, size_t size) {
-
-    AddrRange r(p, size);
-
-    if (_pinned) {
-      return true;
-    }
-
-    // shmat'ed blocks are disclaimed using disclaim64
-    guarantee(_range.contains(r), "invalid disclaim");
-
-    // only disclaim whole ranges.
-    const AddrRange r2 = r.find_closest_aligned_range(_pagesize);
-    if (r2.is_empty()) {
-      return true;
-    }
-
-    const bool rc = my_disclaim64(r2.start(), r2.size());
-
-    if (Verbose && !rc) {
-      warning("failed to disclaim shm %p-%p\n", r2.start(), r2.end());
-    }
-
-    return rc;
-  }
-
-  bool release() {
-    bool rc = false;
-    if (::shmdt(_range.start()) != 0) {
-      warning("shmdt(0x%p) failed (%d)\n", _range.start(), errno);
-    } else {
-      rc = true;
-    }
-    return rc;
-  }
-
-}; // end: ShmBkShmatedBlock
-
-static ShmBkBlock* g_shmbk_list = NULL;
-static volatile jint g_shmbk_table_lock = 0;
-
-// keep some usage statistics
-static struct {
-  int nodes;    // number of nodes in list
-  size_t bytes; // reserved - not committed - bytes.
-  int reserves; // how often reserve was called
-  int lookups;  // how often a lookup was made
-} g_shmbk_stats = { 0, 0, 0, 0 };
-
-// add information about a shared memory segment to the bookkeeping
-static void shmbk_register(ShmBkBlock* p_block) {
-  guarantee(p_block, "logic error");
-  p_block->set_next(g_shmbk_list);
-  g_shmbk_list = p_block;
-  g_shmbk_stats.reserves ++;
-  g_shmbk_stats.bytes += p_block->size();
-  g_shmbk_stats.nodes ++;
-}
-
-// remove information about a shared memory segment by its starting address
-static void shmbk_unregister(ShmBkBlock* p_block) {
-  ShmBkBlock* p = g_shmbk_list;
-  ShmBkBlock* prev = NULL;
-  while (p) {
-    if (p == p_block) {
-      if (prev) {
-        prev->set_next(p->next());
-      } else {
-        g_shmbk_list = p->next();
-      }
-      g_shmbk_stats.nodes --;
-      g_shmbk_stats.bytes -= p->size();
+  }
+  return NULL;
+}
+
+static void vmembk_remove(vmembk_t* p0) {
+  MiscUtils::AutoCritSect lck(&vmem.cs);
+  assert0(p0);
+  assert0(vmem.first); // List should not be empty.
+  for (vmembk_t** pp = &(vmem.first); *pp; pp = &((*pp)->next)) {
+    if (*pp == p0) {
+      *pp = p0->next;
+      ::free(p0);
       return;
     }
-    prev = p;
-    p = p->next();
-  }
-  assert(false, "should not happen");
-}
-
-// given a pointer, return shared memory bookkeeping record for the segment it points into
-// using the returned block info must happen under lock protection
-static ShmBkBlock* shmbk_find_by_containing_address(const char* addr) {
-  g_shmbk_stats.lookups ++;
-  ShmBkBlock* p = g_shmbk_list;
-  while (p) {
-    if (p->containsAddress(addr)) {
-      return p;
+  }
+  assert0(false); // Not found?
+}
+
+static void vmembk_print_on(outputStream* os) {
+  MiscUtils::AutoCritSect lck(&vmem.cs);
+  for (vmembk_t* vmi = vmem.first; vmi; vmi = vmi->next) {
+    vmi->print_on(os);
+    os->cr();
+  }
+}
+
+// Reserve and attach a section of System V memory.
+// If <requested_addr> is not NULL, function will attempt to attach the memory at the given
+// address. Failing that, it will attach the memory anywhere.
+// If <requested_addr> is NULL, function will attach the memory anywhere.
+//
+// <alignment_hint> is being ignored by this function. It is very probable however that the
+// alignment requirements are met anyway, because shmat() attaches at 256M boundaries.
+// Should this be not enogh, we can put more work into it.
+static char* reserve_shmated_memory (
+  size_t bytes,
+  char* requested_addr,
+  size_t alignment_hint) {
+
+  trcVerbose("reserve_shmated_memory " UINTX_FORMAT " bytes, wishaddress "
+    PTR_FORMAT ", alignment_hint " UINTX_FORMAT "...",
+    bytes, requested_addr, alignment_hint);
+
+  // Either give me wish address or wish alignment but not both.
+  assert0(!(requested_addr != NULL && alignment_hint != 0));
+
+  // We must prevent anyone from attaching too close to the
+  // BRK because that may cause malloc OOM.
+  if (requested_addr != NULL && is_close_to_brk((address)requested_addr)) {
+    trcVerbose("Wish address " PTR_FORMAT " is too close to the BRK segment. "
+      "Will attach anywhere.", requested_addr);
+    // Act like the OS refused to attach there.
+    requested_addr = NULL;
+  }
+
+  // For old AS/400's (V5R4 and older) we should not even be here - System V shared memory is not
+  // really supported (max size 4GB), so reserve_mmapped_memory should have been used instead.
+  if (os::Aix::on_pase_V5R4_or_older()) {
+    ShouldNotReachHere();
+  }
+
+  // Align size of shm up to 64K to avoid errors if we later try to change the page size.
+  const size_t size = align_size_up(bytes, SIZE_64K);
+
+  // Reserve the shared segment.
+  int shmid = shmget(IPC_PRIVATE, size, IPC_CREAT | S_IRUSR | S_IWUSR);
+  if (shmid == -1) {
+    trc("shmget(.., " UINTX_FORMAT ", ..) failed (errno: %d).", size, errno);
+    return NULL;
+  }
+
+  // Important note:
+  // It is very important that we, upon leaving this function, do not leave a shm segment alive.
+  // We must right after attaching it remove it from the system. System V shm segments are global and
+  // survive the process.
+  // So, from here on: Do not assert, do not return, until we have called shmctl(IPC_RMID) (A).
+
+  struct shmid_ds shmbuf;
+  memset(&shmbuf, 0, sizeof(shmbuf));
+  shmbuf.shm_pagesize = SIZE_64K;
+  if (shmctl(shmid, SHM_PAGESIZE, &shmbuf) != 0) {
+    trcVerbose("Failed to set page size (need " UINTX_FORMAT " 64K pages) - shmctl failed with %d.",
+               size / SIZE_64K, errno);
+    // I want to know if this ever happens.
+    assert(false, "failed to set page size for shmat");
+  }
+
+  // Now attach the shared segment.
+  // Note that I attach with SHM_RND - which means that the requested address is rounded down, if
+  // needed, to the next lowest segment boundary. Otherwise the attach would fail if the address
+  // were not a segment boundary.
+  char* const addr = (char*) shmat(shmid, requested_addr, SHM_RND);
+  const int errno_shmat = errno;
+
+  // (A) Right after shmat and before handing shmat errors delete the shm segment.
+  if (::shmctl(shmid, IPC_RMID, NULL) == -1) {
+    trc("shmctl(%u, IPC_RMID) failed (%d)\n", shmid, errno);
+    assert(false, "failed to remove shared memory segment!");
+  }
+
+  // Handle shmat error. If we failed to attach, just return.
+  if (addr == (char*)-1) {
+    trcVerbose("Failed to attach segment at " PTR_FORMAT " (%d).", requested_addr, errno_shmat);
+    return NULL;
+  }
+
+  // Just for info: query the real page size. In case setting the page size did not
+  // work (see above), the system may have given us something other then 4K (LDR_CNTRL).
+  const size_t real_pagesize = os::Aix::query_pagesize(addr);
+  if (real_pagesize != shmbuf.shm_pagesize) {
+    trcVerbose("pagesize is, surprisingly, %h.", real_pagesize);
+  }
+
+  if (addr) {
+    trcVerbose("shm-allocated " PTR_FORMAT " .. " PTR_FORMAT " (" UINTX_FORMAT " bytes, " UINTX_FORMAT " %s pages)",
+      addr, addr + size - 1, size, size/real_pagesize, describe_pagesize(real_pagesize));
+  } else {
+    if (requested_addr != NULL) {
+      trcVerbose("failed to shm-allocate " UINTX_FORMAT " bytes at with address " PTR_FORMAT ".", size, requested_addr);
+    } else {
+      trcVerbose("failed to shm-allocate " UINTX_FORMAT " bytes at any address.", size);
     }
-    p = p->next();
-  }
-  return NULL;
-}
-
-// dump all information about all memory segments allocated with os::reserve_memory()
-void shmbk_dump_info() {
-  tty->print_cr("-- shared mem bookkeeping (alive: %d segments, %llu bytes, "
-    "total reserves: %d total lookups: %d)",
-    g_shmbk_stats.nodes, g_shmbk_stats.bytes, g_shmbk_stats.reserves, g_shmbk_stats.lookups);
-  const ShmBkBlock* p = g_shmbk_list;
-  int i = 0;
-  while (p) {
-    p->print(tty);
-    p = p->next();
-    i ++;
-  }
-}
-
-#define LOCK_SHMBK     { ThreadCritical _LOCK_SHMBK;
-#define UNLOCK_SHMBK   }
+  }
+
+  // book-keeping
+  vmembk_add(addr, size, real_pagesize, VMEM_SHMATED);
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+
+  return addr;
+}
+
+static bool release_shmated_memory(char* addr, size_t size) {
+
+  trcVerbose("release_shmated_memory [" PTR_FORMAT " - " PTR_FORMAT "].",
+    addr, addr + size - 1);
+
+  bool rc = false;
+
+  // TODO: is there a way to verify shm size without doing bookkeeping?
+  if (::shmdt(addr) != 0) {
+    trcVerbose("error (%d).", errno);
+  } else {
+    trcVerbose("ok.");
+    rc = true;
+  }
+  return rc;
+}
+
+static bool uncommit_shmated_memory(char* addr, size_t size) {
+  trcVerbose("uncommit_shmated_memory [" PTR_FORMAT " - " PTR_FORMAT "].",
+    addr, addr + size - 1);
+
+  const bool rc = my_disclaim64(addr, size);
+
+  if (!rc) {
+    trcVerbose("my_disclaim64(" PTR_FORMAT ", " UINTX_FORMAT ") failed.\n", addr, size);
+    return false;
+  }
+  return true;
+}
+
+// Reserve memory via mmap.
+// If <requested_addr> is given, an attempt is made to attach at the given address.
+// Failing that, memory is allocated at any address.
+// If <alignment_hint> is given and <requested_addr> is NULL, an attempt is made to
+// allocate at an address aligned with the given alignment. Failing that, memory
+// is aligned anywhere.
+static char* reserve_mmaped_memory(size_t bytes, char* requested_addr, size_t alignment_hint) {
+  trcVerbose("reserve_mmaped_memory " UINTX_FORMAT " bytes, wishaddress " PTR_FORMAT ", "
+    "alignment_hint " UINTX_FORMAT "...",
+    bytes, requested_addr, alignment_hint);
+
+  // If a wish address is given, but not aligned to 4K page boundary, mmap will fail.
+  if (requested_addr && !is_aligned_to(requested_addr, os::vm_page_size()) != 0) {
+    trcVerbose("Wish address " PTR_FORMAT " not aligned to page boundary.", requested_addr);
+    return NULL;
+  }
+
+  // We must prevent anyone from attaching too close to the
+  // BRK because that may cause malloc OOM.
+  if (requested_addr != NULL && is_close_to_brk((address)requested_addr)) {
+    trcVerbose("Wish address " PTR_FORMAT " is too close to the BRK segment. "
+      "Will attach anywhere.", requested_addr);
+    // Act like the OS refused to attach there.
+    requested_addr = NULL;
+  }
+
+  // Specify one or the other but not both.
+  assert0(!(requested_addr != NULL && alignment_hint > 0));
+
+  // In 64K mode, we claim the global page size (os::vm_page_size())
+  // is 64K. This is one of the few points where that illusion may
+  // break, because mmap() will always return memory aligned to 4K. So
+  // we must ensure we only ever return memory aligned to 64k.
+  if (alignment_hint) {
+    alignment_hint = lcm(alignment_hint, os::vm_page_size());
+  } else {
+    alignment_hint = os::vm_page_size();
+  }
+
+  // Size shall always be a multiple of os::vm_page_size (esp. in 64K mode).
+  const size_t size = align_size_up(bytes, os::vm_page_size());
+
+  // alignment: Allocate memory large enough to include an aligned range of the right size and
+  // cut off the leading and trailing waste pages.
+  assert0(alignment_hint != 0 && is_aligned_to(alignment_hint, os::vm_page_size())); // see above
+  const size_t extra_size = size + alignment_hint;
+
+  // Note: MAP_SHARED (instead of MAP_PRIVATE) needed to be able to
+  // later use msync(MS_INVALIDATE) (see os::uncommit_memory).
+  int flags = MAP_ANONYMOUS | MAP_SHARED;
+
+  // MAP_FIXED is needed to enforce requested_addr - manpage is vague about what
+  // it means if wishaddress is given but MAP_FIXED is not set.
+  //
+  // Important! Behaviour differs depending on whether SPEC1170 mode is active or not.
+  // SPEC1170 mode active: behaviour like POSIX, MAP_FIXED will clobber existing mappings.
+  // SPEC1170 mode not active: behaviour, unlike POSIX, is that no existing mappings will
+  // get clobbered.
+  if (requested_addr != NULL) {
+    if (!os::Aix::xpg_sus_mode()) {  // not SPEC1170 Behaviour
+      flags |= MAP_FIXED;
+    }
+  }
+
+  char* addr = (char*)::mmap(requested_addr, extra_size,
+      PROT_READ|PROT_WRITE|PROT_EXEC, flags, -1, 0);
+
+  if (addr == MAP_FAILED) {
+    trcVerbose("mmap(" PTR_FORMAT ", " UINTX_FORMAT ", ..) failed (%d)", requested_addr, size, errno);
+    return NULL;
+  }
+
+  // Handle alignment.
+  char* const addr_aligned = (char *)align_ptr_up(addr, alignment_hint);
+  const size_t waste_pre = addr_aligned - addr;
+  char* const addr_aligned_end = addr_aligned + size;
+  const size_t waste_post = extra_size - waste_pre - size;
+  if (waste_pre > 0) {
+    ::munmap(addr, waste_pre);
+  }
+  if (waste_post > 0) {
+    ::munmap(addr_aligned_end, waste_post);
+  }
+  addr = addr_aligned;
+
+  if (addr) {
+    trcVerbose("mmap-allocated " PTR_FORMAT " .. " PTR_FORMAT " (" UINTX_FORMAT " bytes)",
+      addr, addr + bytes, bytes);
+  } else {
+    if (requested_addr != NULL) {
+      trcVerbose("failed to mmap-allocate " UINTX_FORMAT " bytes at wish address " PTR_FORMAT ".", bytes, requested_addr);
+    } else {
+      trcVerbose("failed to mmap-allocate " UINTX_FORMAT " bytes at any address.", bytes);
+    }
+  }
+
+  // bookkeeping
+  vmembk_add(addr, size, SIZE_4K, VMEM_MAPPED);
+
+  // Test alignment, see above.
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+
+  return addr;
+}
+
+static bool release_mmaped_memory(char* addr, size_t size) {
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+  assert0(is_aligned_to(size, os::vm_page_size()));
+
+  trcVerbose("release_mmaped_memory [" PTR_FORMAT " - " PTR_FORMAT "].",
+    addr, addr + size - 1);
+  bool rc = false;
+
+  if (::munmap(addr, size) != 0) {
+    trcVerbose("failed (%d)\n", errno);
+    rc = false;
+  } else {
+    trcVerbose("ok.");
+    rc = true;
+  }
+
+  return rc;
+}
+
+static bool uncommit_mmaped_memory(char* addr, size_t size) {
+
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+  assert0(is_aligned_to(size, os::vm_page_size()));
+
+  trcVerbose("uncommit_mmaped_memory [" PTR_FORMAT " - " PTR_FORMAT "].",
+    addr, addr + size - 1);
+  bool rc = false;
+
+  // Uncommit mmap memory with msync MS_INVALIDATE.
+  if (::msync(addr, size, MS_INVALIDATE) != 0) {
+    trcVerbose("failed (%d)\n", errno);
+    rc = false;
+  } else {
+    trcVerbose("ok.");
+    rc = true;
+  }
+
+  return rc;
+}
 
 // End: shared memory bookkeeping
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 
 int os::vm_page_size() {
-  // Seems redundant as all get out
+  // Seems redundant as all get out.
   assert(os::Aix::page_size() != -1, "must call os::init");
   return os::Aix::page_size();
 }
@@ -2146,91 +2265,76 @@
   return os::Aix::page_size();
 }
 
-int os::Aix::commit_memory_impl(char* addr, size_t size, bool exec) {
-
-  // Commit is a noop. There is no explicit commit
-  // needed on AIX. Memory is committed when touched.
-  //
-  // Debug : check address range for validity
-#ifdef ASSERT
-  LOCK_SHMBK
-    ShmBkBlock* const block = shmbk_find_by_containing_address(addr);
-    if (!block) {
-      fprintf(stderr, "invalid pointer: " INTPTR_FORMAT "\n", addr);
-      shmbk_dump_info();
-      assert(false, "invalid pointer");
-      return false;
-    } else if (!block->containsRange(addr, size)) {
-      fprintf(stderr, "invalid range: " INTPTR_FORMAT " .. " INTPTR_FORMAT "\n", addr, addr + size);
-      shmbk_dump_info();
-      assert(false, "invalid range");
-      return false;
-    }
-  UNLOCK_SHMBK
-#endif // ASSERT
-
-  return 0;
-}
-
-bool os::pd_commit_memory(char* addr, size_t size, bool exec) {
-  return os::Aix::commit_memory_impl(addr, size, exec) == 0;
-}
+#ifdef PRODUCT
+static void warn_fail_commit_memory(char* addr, size_t size, bool exec,
+                                    int err) {
+  warning("INFO: os::commit_memory(" PTR_FORMAT ", " SIZE_FORMAT
+          ", %d) failed; error='%s' (errno=%d)", addr, size, exec,
+          strerror(err), err);
+}
+#endif
 
 void os::pd_commit_memory_or_exit(char* addr, size_t size, bool exec,
                                   const char* mesg) {
   assert(mesg != NULL, "mesg must be specified");
-  os::Aix::commit_memory_impl(addr, size, exec);
-}
-
-int os::Aix::commit_memory_impl(char* addr, size_t size,
-                                size_t alignment_hint, bool exec) {
-  return os::Aix::commit_memory_impl(addr, size, exec);
-}
-
-bool os::pd_commit_memory(char* addr, size_t size, size_t alignment_hint,
-                          bool exec) {
-  return os::Aix::commit_memory_impl(addr, size, alignment_hint, exec) == 0;
+  if (!pd_commit_memory(addr, size, exec)) {
+    // Add extra info in product mode for vm_exit_out_of_memory():
+    PRODUCT_ONLY(warn_fail_commit_memory(addr, size, exec, errno);)
+    vm_exit_out_of_memory(size, OOM_MMAP_ERROR, mesg);
+  }
+}
+
+bool os::pd_commit_memory(char* addr, size_t size, bool exec) {
+
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+  assert0(is_aligned_to(size, os::vm_page_size()));
+
+  vmembk_t* const vmi = vmembk_find(addr);
+  assert0(vmi);
+  vmi->assert_is_valid_subrange(addr, size);
+
+  trcVerbose("commit_memory [" PTR_FORMAT " - " PTR_FORMAT "].", addr, addr + size - 1);
+
+  return true;
+}
+
+bool os::pd_commit_memory(char* addr, size_t size, size_t alignment_hint, bool exec) {
+  return pd_commit_memory(addr, size, exec);
 }
 
 void os::pd_commit_memory_or_exit(char* addr, size_t size,
                                   size_t alignment_hint, bool exec,
                                   const char* mesg) {
-  os::Aix::commit_memory_impl(addr, size, alignment_hint, exec);
+  // Alignment_hint is ignored on this OS.
+  pd_commit_memory_or_exit(addr, size, exec, mesg);
 }
 
 bool os::pd_uncommit_memory(char* addr, size_t size) {
-
-  // Delegate to ShmBkBlock class which knows how to uncommit its memory.
-
-  bool rc = false;
-  LOCK_SHMBK
-    ShmBkBlock* const block = shmbk_find_by_containing_address(addr);
-    if (!block) {
-      fprintf(stderr, "invalid pointer: 0x%p.\n", addr);
-      shmbk_dump_info();
-      assert(false, "invalid pointer");
-      return false;
-    } else if (!block->containsRange(addr, size)) {
-      fprintf(stderr, "invalid range: 0x%p .. 0x%p.\n", addr, addr + size);
-      shmbk_dump_info();
-      assert(false, "invalid range");
-      return false;
-    }
-    rc = block->disclaim(addr, size);
-  UNLOCK_SHMBK
-
-  if (Verbose && !rc) {
-    warning("failed to disclaim 0x%p .. 0x%p (0x%llX bytes).", addr, addr + size, size);
-  }
-  return rc;
+  assert0(is_aligned_to(addr, os::vm_page_size()));
+  assert0(is_aligned_to(size, os::vm_page_size()));
+
+  // Dynamically do different things for mmap/shmat.
+  const vmembk_t* const vmi = vmembk_find(addr);
+  assert0(vmi);
+  vmi->assert_is_valid_subrange(addr, size);
+
+  if (vmi->type == VMEM_SHMATED) {
+    return uncommit_shmated_memory(addr, size);
+  } else {
+    return uncommit_mmaped_memory(addr, size);
+  }
 }
 
 bool os::pd_create_stack_guard_pages(char* addr, size_t size) {
-  return os::guard_memory(addr, size);
+  // Do not call this; no need to commit stack pages on AIX.
+  ShouldNotReachHere();
+  return true;
 }
 
 bool os::remove_stack_guard_pages(char* addr, size_t size) {
-  return os::unguard_memory(addr, size);
+  // Do not call this; no need to commit stack pages on AIX.
+  ShouldNotReachHere();
+  return true;
 }
 
 void os::pd_realign_memory(char *addr, size_t bytes, size_t alignment_hint) {
@@ -2273,355 +2377,75 @@
   return end;
 }
 
-// Flags for reserve_shmatted_memory:
-#define RESSHM_WISHADDR_OR_FAIL                     1
-#define RESSHM_TRY_16M_PAGES                        2
-#define RESSHM_16M_PAGES_OR_FAIL                    4
-
-// Result of reserve_shmatted_memory:
-struct shmatted_memory_info_t {
-  char* addr;
-  size_t pagesize;
-  bool pinned;
-};
-
-// Reserve a section of shmatted memory.
-// params:
-// bytes [in]: size of memory, in bytes
-// requested_addr [in]: wish address.
-//                      NULL = no wish.
-//                      If RESSHM_WISHADDR_OR_FAIL is set in flags and wish address cannot
-//                      be obtained, function will fail. Otherwise wish address is treated as hint and
-//                      another pointer is returned.
-// flags [in]:          some flags. Valid flags are:
-//                      RESSHM_WISHADDR_OR_FAIL - fail if wish address is given and cannot be obtained.
-//                      RESSHM_TRY_16M_PAGES - try to allocate from 16M page pool
-//                          (requires UseLargePages and Use16MPages)
-//                      RESSHM_16M_PAGES_OR_FAIL - if you cannot allocate from 16M page pool, fail.
-//                          Otherwise any other page size will do.
-// p_info [out] :       holds information about the created shared memory segment.
-static bool reserve_shmatted_memory(size_t bytes, char* requested_addr, int flags, shmatted_memory_info_t* p_info) {
-
-  assert(p_info, "parameter error");
-
-  // init output struct.
-  p_info->addr = NULL;
-
-  // neither should we be here for EXTSHM=ON.
-  if (os::Aix::extshm()) {
-    ShouldNotReachHere();
-  }
-
-  // extract flags. sanity checks.
-  const bool wishaddr_or_fail =
-    flags & RESSHM_WISHADDR_OR_FAIL;
-  const bool try_16M_pages =
-    flags & RESSHM_TRY_16M_PAGES;
-  const bool f16M_pages_or_fail =
-    flags & RESSHM_16M_PAGES_OR_FAIL;
-
-  // first check: if a wish address is given and it is mandatory, but not aligned to segment boundary,
-  // shmat will fail anyway, so save some cycles by failing right away
-  if (requested_addr && ((uintptr_t)requested_addr % SIZE_256M == 0)) {
-    if (wishaddr_or_fail) {
-      return false;
-    } else {
-      requested_addr = NULL;
-    }
-  }
-
-  char* addr = NULL;
-
-  // Align size of shm up to the largest possible page size, to avoid errors later on when we try to change
-  // pagesize dynamically.
-  const size_t size = align_size_up(bytes, SIZE_16M);
-
-  // reserve the shared segment
-  int shmid = shmget(IPC_PRIVATE, size, IPC_CREAT | S_IRUSR | S_IWUSR);
-  if (shmid == -1) {
-    warning("shmget(.., %lld, ..) failed (errno: %d).", size, errno);
-    return false;
-  }
-
-  // Important note:
-  // It is very important that we, upon leaving this function, do not leave a shm segment alive.
-  // We must right after attaching it remove it from the system. System V shm segments are global and
-  // survive the process.
-  // So, from here on: Do not assert. Do not return. Always do a "goto cleanup_shm".
-
-  // try forcing the page size
-  size_t pagesize = -1; // unknown so far
-
-  if (UseLargePages) {
-
-    struct shmid_ds shmbuf;
-    memset(&shmbuf, 0, sizeof(shmbuf));
-
-    // First, try to take from 16M page pool if...
-    if (os::Aix::can_use_16M_pages()  // we can ...
-        && Use16MPages                // we are not explicitly forbidden to do so (-XX:-Use16MPages)..
-        && try_16M_pages) {           // caller wants us to.
-      shmbuf.shm_pagesize = SIZE_16M;
-      if (shmctl(shmid, SHM_PAGESIZE, &shmbuf) == 0) {
-        pagesize = SIZE_16M;
-      } else {
-        warning("Failed to allocate %d 16M pages. 16M page pool might be exhausted. (shmctl failed with %d)",
-                size / SIZE_16M, errno);
-        if (f16M_pages_or_fail) {
-          goto cleanup_shm;
-        }
-      }
-    }
-
-    // Nothing yet? Try setting 64K pages. Note that I never saw this fail, but in theory it might,
-    // because the 64K page pool may also be exhausted.
-    if (pagesize == -1) {
-      shmbuf.shm_pagesize = SIZE_64K;
-      if (shmctl(shmid, SHM_PAGESIZE, &shmbuf) == 0) {
-        pagesize = SIZE_64K;
-      } else {
-        warning("Failed to allocate %d 64K pages. (shmctl failed with %d)",
-                size / SIZE_64K, errno);
-        // here I give up. leave page_size -1 - later, after attaching, we will query the
-        // real page size of the attached memory. (in theory, it may be something different
-        // from 4K if LDR_CNTRL SHM_PSIZE is set)
-      }
-    }
-  }
-
-  // sanity point
-  assert(pagesize == -1 || pagesize == SIZE_16M || pagesize == SIZE_64K, "wrong page size");
-
-  // Now attach the shared segment.
-  addr = (char*) shmat(shmid, requested_addr, 0);
-  if (addr == (char*)-1) {
-    // How to handle attach failure:
-    // If it failed for a specific wish address, tolerate this: in that case, if wish address was
-    // mandatory, fail, if not, retry anywhere.
-    // If it failed for any other reason, treat that as fatal error.
-    addr = NULL;
-    if (requested_addr) {
-      if (wishaddr_or_fail) {
-        goto cleanup_shm;
-      } else {
-        addr = (char*) shmat(shmid, NULL, 0);
-        if (addr == (char*)-1) { // fatal
-          addr = NULL;
-          warning("shmat failed (errno: %d)", errno);
-          goto cleanup_shm;
-        }
-      }
-    } else { // fatal
-      addr = NULL;
-      warning("shmat failed (errno: %d)", errno);
-      goto cleanup_shm;
-    }
-  }
-
-  // sanity point
-  assert(addr && addr != (char*) -1, "wrong address");
-
-  // after successful Attach remove the segment - right away.
-  if (::shmctl(shmid, IPC_RMID, NULL) == -1) {
-    warning("shmctl(%u, IPC_RMID) failed (%d)\n", shmid, errno);
-    guarantee(false, "failed to remove shared memory segment!");
-  }
-  shmid = -1;
-
-  // query the real page size. In case setting the page size did not work (see above), the system
-  // may have given us something other then 4K (LDR_CNTRL)
-  {
-    const size_t real_pagesize = os::Aix::query_pagesize(addr);
-    if (pagesize != -1) {
-      assert(pagesize == real_pagesize, "unexpected pagesize after shmat");
-    } else {
-      pagesize = real_pagesize;
-    }
-  }
-
-  // Now register the reserved block with internal book keeping.
-  LOCK_SHMBK
-    const bool pinned = pagesize >= SIZE_16M ? true : false;
-    ShmBkShmatedBlock* const p_block = new ShmBkShmatedBlock(AddrRange(addr, size), pagesize, pinned);
-    assert(p_block, "");
-    shmbk_register(p_block);
-  UNLOCK_SHMBK
-
-cleanup_shm:
-
-  // if we have not done so yet, remove the shared memory segment. This is very important.
-  if (shmid != -1) {
-    if (::shmctl(shmid, IPC_RMID, NULL) == -1) {
-      warning("shmctl(%u, IPC_RMID) failed (%d)\n", shmid, errno);
-      guarantee(false, "failed to remove shared memory segment!");
-    }
-    shmid = -1;
-  }
-
-  // trace
-  if (Verbose && !addr) {
-    if (requested_addr != NULL) {
-      warning("failed to shm-allocate 0x%llX bytes at wish address 0x%p.", size, requested_addr);
-    } else {
-      warning("failed to shm-allocate 0x%llX bytes at any address.", size);
-    }
-  }
-
-  // hand info to caller
-  if (addr) {
-    p_info->addr = addr;
-    p_info->pagesize = pagesize;
-    p_info->pinned = pagesize == SIZE_16M ? true : false;
-  }
-
-  // sanity test:
-  if (requested_addr && addr && wishaddr_or_fail) {
-    guarantee(addr == requested_addr, "shmat error");
-  }
-
-  // just one more test to really make sure we have no dangling shm segments.
-  guarantee(shmid == -1, "dangling shm segments");
-
-  return addr ? true : false;
-
-} // end: reserve_shmatted_memory
-
-// Reserve memory using mmap. Behaves the same as reserve_shmatted_memory():
-// will return NULL in case of an error.
-static char* reserve_mmaped_memory(size_t bytes, char* requested_addr) {
-
-  // if a wish address is given, but not aligned to 4K page boundary, mmap will fail.
-  if (requested_addr && ((uintptr_t)requested_addr % os::vm_page_size() != 0)) {
-    warning("Wish address 0x%p not aligned to page boundary.", requested_addr);
-    return NULL;
-  }
-
-  const size_t size = align_size_up(bytes, SIZE_4K);
-
-  // Note: MAP_SHARED (instead of MAP_PRIVATE) needed to be able to
-  // msync(MS_INVALIDATE) (see os::uncommit_memory)
-  int flags = MAP_ANONYMOUS | MAP_SHARED;
-
-  // MAP_FIXED is needed to enforce requested_addr - manpage is vague about what
-  // it means if wishaddress is given but MAP_FIXED is not set.
-  //
-  // Note however that this changes semantics in SPEC1170 mode insofar as MAP_FIXED
-  // clobbers the address range, which is probably not what the caller wants. That's
-  // why I assert here (again) that the SPEC1170 compat mode is off.
-  // If we want to be able to run under SPEC1170, we have to do some porting and
-  // testing.
-  if (requested_addr != NULL) {
-    assert(!os::Aix::xpg_sus_mode(), "SPEC1170 mode not allowed.");
-    flags |= MAP_FIXED;
-  }
-
-  char* addr = (char*)::mmap(requested_addr, size, PROT_READ|PROT_WRITE|PROT_EXEC, flags, -1, 0);
-
-  if (addr == MAP_FAILED) {
-    // attach failed: tolerate for specific wish addresses. Not being able to attach
-    // anywhere is a fatal error.
-    if (requested_addr == NULL) {
-      // It's ok to fail here if the machine has not enough memory.
-      warning("mmap(NULL, 0x%llX, ..) failed (%d)", size, errno);
-    }
-    addr = NULL;
-    goto cleanup_mmap;
-  }
-
-  // If we did request a specific address and that address was not available, fail.
-  if (addr && requested_addr) {
-    guarantee(addr == requested_addr, "unexpected");
-  }
-
-  // register this mmap'ed segment with book keeping
-  LOCK_SHMBK
-    ShmBkMappedBlock* const p_block = new ShmBkMappedBlock(AddrRange(addr, size));
-    assert(p_block, "");
-    shmbk_register(p_block);
-  UNLOCK_SHMBK
-
-cleanup_mmap:
-
-  // trace
-  if (Verbose) {
-    if (addr) {
-      fprintf(stderr, "mmap-allocated 0x%p .. 0x%p (0x%llX bytes)\n", addr, addr + bytes, bytes);
-    }
-    else {
-      if (requested_addr != NULL) {
-        warning("failed to mmap-allocate 0x%llX bytes at wish address 0x%p.", bytes, requested_addr);
-      } else {
-        warning("failed to mmap-allocate 0x%llX bytes at any address.", bytes);
-      }
-    }
-  }
-
-  return addr;
-
-} // end: reserve_mmaped_memory
-
 // Reserves and attaches a shared memory segment.
 // Will assert if a wish address is given and could not be obtained.
 char* os::pd_reserve_memory(size_t bytes, char* requested_addr, size_t alignment_hint) {
-  return os::attempt_reserve_memory_at(bytes, requested_addr);
+
+  // All other Unices do a mmap(MAP_FIXED) if the addr is given,
+  // thereby clobbering old mappings at that place. That is probably
+  // not intended, never used and almost certainly an error were it
+  // ever be used this way (to try attaching at a specified address
+  // without clobbering old mappings an alternate API exists,
+  // os::attempt_reserve_memory_at()).
+  // Instead of mimicking the dangerous coding of the other platforms, here I
+  // just ignore the request address (release) or assert(debug).
+  assert0(requested_addr == NULL);
+
+  // Always round to os::vm_page_size(), which may be larger than 4K.
+  bytes = align_size_up(bytes, os::vm_page_size());
+  const size_t alignment_hint0 =
+    alignment_hint ? align_size_up(alignment_hint, os::vm_page_size()) : 0;
+
+  // In 4K mode always use mmap.
+  // In 64K mode allocate small sizes with mmap, large ones with 64K shmatted.
+  if (os::vm_page_size() == SIZE_4K) {
+    return reserve_mmaped_memory(bytes, requested_addr, alignment_hint);
+  } else {
+    if (bytes >= Use64KPagesThreshold) {
+      return reserve_shmated_memory(bytes, requested_addr, alignment_hint);
+    } else {
+      return reserve_mmaped_memory(bytes, requested_addr, alignment_hint);
+    }
+  }
 }
 
 bool os::pd_release_memory(char* addr, size_t size) {
 
-  // delegate to ShmBkBlock class which knows how to uncommit its memory.
+  // Dynamically do different things for mmap/shmat.
+  vmembk_t* const vmi = vmembk_find(addr);
+  assert0(vmi);
+
+  // Always round to os::vm_page_size(), which may be larger than 4K.
+  size = align_size_up(size, os::vm_page_size());
+  addr = (char *)align_ptr_up(addr, os::vm_page_size());
 
   bool rc = false;
-  LOCK_SHMBK
-    ShmBkBlock* const block = shmbk_find_by_containing_address(addr);
-    if (!block) {
-      fprintf(stderr, "invalid pointer: 0x%p.\n", addr);
-      shmbk_dump_info();
-      assert(false, "invalid pointer");
-      return false;
+  bool remove_bookkeeping = false;
+  if (vmi->type == VMEM_SHMATED) {
+    // For shmatted memory, we do:
+    // - If user wants to release the whole range, release the memory (shmdt).
+    // - If user only wants to release a partial range, uncommit (disclaim) that
+    //   range. That way, at least, we do not use memory anymore (bust still page
+    //   table space).
+    vmi->assert_is_valid_subrange(addr, size);
+    if (addr == vmi->addr && size == vmi->size) {
+      rc = release_shmated_memory(addr, size);
+      remove_bookkeeping = true;
+    } else {
+      rc = uncommit_shmated_memory(addr, size);
     }
-    else if (!block->isSameRange(addr, size)) {
-      if (block->getType() == ShmBkBlock::MMAP) {
-        // Release only the same range or a the beginning or the end of a range.
-        if (block->base() == addr && size < block->size()) {
-          ShmBkMappedBlock* const b = new ShmBkMappedBlock(AddrRange(block->base() + size, block->size() - size));
-          assert(b, "");
-          shmbk_register(b);
-          block->setAddrRange(AddrRange(addr, size));
-        }
-        else if (addr > block->base() && addr + size == block->base() + block->size()) {
-          ShmBkMappedBlock* const b = new ShmBkMappedBlock(AddrRange(block->base(), block->size() - size));
-          assert(b, "");
-          shmbk_register(b);
-          block->setAddrRange(AddrRange(addr, size));
-        }
-        else {
-          fprintf(stderr, "invalid mmap range: 0x%p .. 0x%p.\n", addr, addr + size);
-          shmbk_dump_info();
-          assert(false, "invalid mmap range");
-          return false;
-        }
-      }
-      else {
-        // Release only the same range. No partial release allowed.
-        // Soften the requirement a bit, because the user may think he owns a smaller size
-        // than the block is due to alignment etc.
-        if (block->base() != addr || block->size() < size) {
-          fprintf(stderr, "invalid shmget range: 0x%p .. 0x%p.\n", addr, addr + size);
-          shmbk_dump_info();
-          assert(false, "invalid shmget range");
-          return false;
-        }
-      }
-    }
-    rc = block->release();
-    assert(rc, "release failed");
-    // remove block from bookkeeping
-    shmbk_unregister(block);
-    delete block;
-  UNLOCK_SHMBK
-
-  if (!rc) {
-    warning("failed to released %lu bytes at 0x%p", size, addr);
+  } else {
+    // User may unmap partial regions but region has to be fully contained.
+#ifdef ASSERT
+    vmi->assert_is_valid_subrange(addr, size);
+#endif
+    rc = release_mmaped_memory(addr, size);
+    remove_bookkeeping = true;
+  }
+
+  // update bookkeeping
+  if (rc && remove_bookkeeping) {
+    vmembk_remove(vmi);
   }
 
   return rc;
@@ -2654,7 +2478,7 @@
   //
   if (!os::Aix::xpg_sus_mode()) {
 
-    if (StubRoutines::SafeFetch32_stub()) {
+    if (CanUseSafeFetch32()) {
 
       const bool read_protected =
         (SafeFetch32((int*)addr, 0x12345678) == 0x12345678 &&
@@ -2702,46 +2526,8 @@
 
 // Enable large page support if OS allows that.
 void os::large_page_init() {
-
-  // Note: os::Aix::query_multipage_support must run first.
-
-  if (!UseLargePages) {
-    return;
-  }
-
-  if (!Aix::can_use_64K_pages()) {
-    assert(!Aix::can_use_16M_pages(), "64K is a precondition for 16M.");
-    UseLargePages = false;
-    return;
-  }
-
-  if (!Aix::can_use_16M_pages() && Use16MPages) {
-    fprintf(stderr, "Cannot use 16M pages. Please ensure that there is a 16M page pool "
-            " and that the VM runs with CAP_BYPASS_RAC_VMM and CAP_PROPAGATE capabilities.\n");
-  }
-
-  // Do not report 16M page alignment as part of os::_page_sizes if we are
-  // explicitly forbidden from using 16M pages. Doing so would increase the
-  // alignment the garbage collector calculates with, slightly increasing
-  // heap usage. We should only pay for 16M alignment if we really want to
-  // use 16M pages.
-  if (Use16MPages && Aix::can_use_16M_pages()) {
-    _large_page_size = SIZE_16M;
-    _page_sizes[0] = SIZE_16M;
-    _page_sizes[1] = SIZE_64K;
-    _page_sizes[2] = SIZE_4K;
-    _page_sizes[3] = 0;
-  } else if (Aix::can_use_64K_pages()) {
-    _large_page_size = SIZE_64K;
-    _page_sizes[0] = SIZE_64K;
-    _page_sizes[1] = SIZE_4K;
-    _page_sizes[2] = 0;
-  }
-
-  if (Verbose) {
-    ("Default large page size is 0x%llX.", _large_page_size);
-  }
-} // end: os::large_page_init()
+  return; // Nothing to do. See query_multipage_support and friends.
+}
 
 char* os::reserve_memory_special(size_t bytes, size_t alignment, char* req_addr, bool exec) {
   // "exec" is passed in but not used. Creating the shared image for
@@ -2751,7 +2537,7 @@
 }
 
 bool os::release_memory_special(char* base, size_t bytes) {
-  // detaching the SHM segment will also delete it, see reserve_memory_special()
+  // Detaching the SHM segment will also delete it, see reserve_memory_special().
   Unimplemented();
   return false;
 }
@@ -2761,40 +2547,32 @@
 }
 
 bool os::can_commit_large_page_memory() {
-  // Well, sadly we cannot commit anything at all (see comment in
-  // os::commit_memory) but we claim to so we can make use of large pages
-  return true;
+  // Does not matter, we do not support huge pages.
+  return false;
 }
 
 bool os::can_execute_large_page_memory() {
-  // We can do that
-  return true;
+  // Does not matter, we do not support huge pages.
+  return false;
 }
 
 // Reserve memory at an arbitrary address, only if that area is
 // available (and not reserved for something else).
 char* os::pd_attempt_reserve_memory_at(size_t bytes, char* requested_addr) {
-
-  bool use_mmap = false;
-
-  // mmap: smaller graining, no large page support
-  // shm: large graining (256M), large page support, limited number of shm segments
-  //
-  // Prefer mmap wherever we either do not need large page support or have OS limits
-
-  if (!UseLargePages || bytes < SIZE_16M) {
-    use_mmap = true;
-  }
-
   char* addr = NULL;
-  if (use_mmap) {
-    addr = reserve_mmaped_memory(bytes, requested_addr);
+
+  // Always round to os::vm_page_size(), which may be larger than 4K.
+  bytes = align_size_up(bytes, os::vm_page_size());
+
+  // In 4K mode always use mmap.
+  // In 64K mode allocate small sizes with mmap, large ones with 64K shmatted.
+  if (os::vm_page_size() == SIZE_4K) {
+    return reserve_mmaped_memory(bytes, requested_addr, 0);
   } else {
-    // shmat: wish address is mandatory, and do not try 16M pages here.
-    shmatted_memory_info_t info;
-    const int flags = RESSHM_WISHADDR_OR_FAIL;
-    if (reserve_shmatted_memory(bytes, requested_addr, flags, &info)) {
-      addr = info.addr;
+    if (bytes >= Use64KPagesThreshold) {
+      return reserve_shmated_memory(bytes, requested_addr, 0);
+    } else {
+      return reserve_mmaped_memory(bytes, requested_addr, 0);
     }
   }
 
@@ -3629,18 +3407,89 @@
 // This is called _before_ the most of global arguments have been parsed.
 void os::init(void) {
   // This is basic, we want to know if that ever changes.
-  // (shared memory boundary is supposed to be a 256M aligned)
+  // (Shared memory boundary is supposed to be a 256M aligned.)
   assert(SHMLBA == ((uint64_t)0x10000000ULL)/*256M*/, "unexpected");
 
   // First off, we need to know whether we run on AIX or PASE, and
   // the OS level we run on.
   os::Aix::initialize_os_info();
 
-  // Scan environment (SPEC1170 behaviour, etc)
+  // Scan environment (SPEC1170 behaviour, etc).
   os::Aix::scan_environment();
 
   // Check which pages are supported by AIX.
-  os::Aix::query_multipage_support();
+  query_multipage_support();
+
+  // Act like we only have one page size by eliminating corner cases which
+  // we did not support very well anyway.
+  // We have two input conditions:
+  // 1) Data segment page size. This is controlled by linker setting (datapsize) on the
+  //    launcher, and/or by LDR_CNTRL environment variable. The latter overrules the linker
+  //    setting.
+  //    Data segment page size is important for us because it defines the thread stack page
+  //    size, which is needed for guard page handling, stack banging etc.
+  // 2) The ability to allocate 64k pages dynamically. If this is a given, java heap can
+  //    and should be allocated with 64k pages.
+  //
+  // So, we do the following:
+  // LDR_CNTRL    can_use_64K_pages_dynamically       what we do                      remarks
+  // 4K           no                                  4K                              old systems (aix 5.2, as/400 v5r4) or new systems with AME activated
+  // 4k           yes                                 64k (treat 4k stacks as 64k)    different loader than java and standard settings
+  // 64k          no              --- AIX 5.2 ? ---
+  // 64k          yes                                 64k                             new systems and standard java loader (we set datapsize=64k when linking)
+
+  // We explicitly leave no option to change page size, because only upgrading would work,
+  // not downgrading (if stack page size is 64k you cannot pretend its 4k).
+
+  if (g_multipage_support.datapsize == SIZE_4K) {
+    // datapsize = 4K. Data segment, thread stacks are 4K paged.
+    if (g_multipage_support.can_use_64K_pages) {
+      // .. but we are able to use 64K pages dynamically.
+      // This would be typical for java launchers which are not linked
+      // with datapsize=64K (like, any other launcher but our own).
+      //
+      // In this case it would be smart to allocate the java heap with 64K
+      // to get the performance benefit, and to fake 64k pages for the
+      // data segment (when dealing with thread stacks).
+      //
+      // However, leave a possibility to downgrade to 4K, using
+      // -XX:-Use64KPages.
+      if (Use64KPages) {
+        trcVerbose("64K page mode (faked for data segment)");
+        Aix::_page_size = SIZE_64K;
+      } else {
+        trcVerbose("4K page mode (Use64KPages=off)");
+        Aix::_page_size = SIZE_4K;
+      }
+    } else {
+      // .. and not able to allocate 64k pages dynamically. Here, just
+      // fall back to 4K paged mode and use mmap for everything.
+      trcVerbose("4K page mode");
+      Aix::_page_size = SIZE_4K;
+      FLAG_SET_ERGO(bool, Use64KPages, false);
+    }
+  } else {
+    // datapsize = 64k. Data segment, thread stacks are 64k paged.
+    //   This normally means that we can allocate 64k pages dynamically.
+    //   (There is one special case where this may be false: EXTSHM=on.
+    //    but we decided to not support that mode).
+    assert0(g_multipage_support.can_use_64K_pages);
+    Aix::_page_size = SIZE_64K;
+    trcVerbose("64K page mode");
+    FLAG_SET_ERGO(bool, Use64KPages, true);
+  }
+
+  // Short-wire stack page size to base page size; if that works, we just remove
+  // that stack page size altogether.
+  Aix::_stack_page_size = Aix::_page_size;
+
+  // For now UseLargePages is just ignored.
+  FLAG_SET_ERGO(bool, UseLargePages, false);
+  _page_sizes[0] = 0;
+  _large_page_size = -1;
+
+  // debug trace
+  trcVerbose("os::vm_page_size %s\n", describe_pagesize(os::vm_page_size()));
 
   // Next, we need to initialize libo4 and libperfstat libraries.
   if (os::Aix::on_pase()) {
@@ -3658,34 +3507,6 @@
   // need libperfstat etc.
   os::Aix::initialize_system_info();
 
-  // Initialize large page support.
-  if (UseLargePages) {
-    os::large_page_init();
-    if (!UseLargePages) {
-      // initialize os::_page_sizes
-      _page_sizes[0] = Aix::page_size();
-      _page_sizes[1] = 0;
-      if (Verbose) {
-        fprintf(stderr, "Large Page initialization failed: setting UseLargePages=0.\n");
-      }
-    }
-  } else {
-    // initialize os::_page_sizes
-    _page_sizes[0] = Aix::page_size();
-    _page_sizes[1] = 0;
-  }
-
-  // debug trace
-  if (Verbose) {
-    fprintf(stderr, "os::vm_page_size 0x%llX\n", os::vm_page_size());
-    fprintf(stderr, "os::large_page_size 0x%llX\n", os::large_page_size());
-    fprintf(stderr, "os::_page_sizes = ( ");
-    for (int i = 0; _page_sizes[i]; i ++) {
-      fprintf(stderr, " %s ", describe_pagesize(_page_sizes[i]));
-    }
-    fprintf(stderr, ")\n");
-  }
-
   _initial_pid = getpid();
 
   clock_tics_per_sec = sysconf(_SC_CLK_TCK);
@@ -3698,7 +3519,15 @@
   Aix::_main_thread = pthread_self();
 
   initial_time_count = os::elapsed_counter();
-  pthread_mutex_init(&dl_mutex, NULL);
+
+  // If the pagesize of the VM is greater than 8K determine the appropriate
+  // number of initial guard pages. The user can change this with the
+  // command line arguments, if needed.
+  if (vm_page_size() > (int)Aix::vm_default_page_size()) {
+    StackYellowPages = 1;
+    StackRedPages = 1;
+    StackShadowPages = round_to((StackShadowPages*Aix::vm_default_page_size()), vm_page_size()) / vm_page_size();
+  }
 }
 
 // This is called _after_ the global arguments have been parsed.
@@ -3717,7 +3546,7 @@
   const int prot  = PROT_READ;
   const int flags = MAP_PRIVATE|MAP_ANONYMOUS;
 
-  // use optimized addresses for the polling page,
+  // Use optimized addresses for the polling page,
   // e.g. map it to a special 32-bit address.
   if (OptimizePollingPageLocation) {
     // architecture-specific list of address wishes:
@@ -3739,7 +3568,7 @@
 
     // iterate over the list of address wishes:
     for (int i=0; i<address_wishes_length; i++) {
-      // try to map with current address wish.
+      // Try to map with current address wish.
       // AIX: AIX needs MAP_FIXED if we provide an address and mmap will
       // fail if the address is already mapped.
       map_address = (address) ::mmap(address_wishes[i] - (ssize_t)page_size,
@@ -3752,7 +3581,7 @@
       }
 
       if (map_address + (ssize_t)page_size == address_wishes[i]) {
-        // map succeeded and map_address is at wished address, exit loop.
+        // Map succeeded and map_address is at wished address, exit loop.
         break;
       }
 
@@ -3761,7 +3590,7 @@
         ::munmap(map_address, map_size);
         map_address = (address) MAP_FAILED;
       }
-      // map failed, continue loop.
+      // Map failed, continue loop.
     }
   } // end OptimizePollingPageLocation
 
@@ -3777,8 +3606,9 @@
     os::set_memory_serialize_page(mem_serialize_page);
 
 #ifndef PRODUCT
-    if (Verbose && PrintMiscellaneous)
+    if (Verbose && PrintMiscellaneous) {
       tty->print("[Memory Serialize Page address: " INTPTR_FORMAT "]\n", (intptr_t)mem_serialize_page);
+    }
 #endif
   }
 
@@ -3797,16 +3627,18 @@
   // Add in 2*BytesPerWord times page size to account for VM stack during
   // class initialization depending on 32 or 64 bit VM.
   os::Aix::min_stack_allowed = MAX2(os::Aix::min_stack_allowed,
-            (size_t)(StackYellowPages+StackRedPages+StackShadowPages +
-                     2*BytesPerWord COMPILER2_PRESENT(+1)) * Aix::page_size());
+            (size_t)(StackYellowPages+StackRedPages+StackShadowPages) * Aix::page_size() +
+                     (2*BytesPerWord COMPILER2_PRESENT(+1)) * Aix::vm_default_page_size());
+
+  os::Aix::min_stack_allowed = align_size_up(os::Aix::min_stack_allowed, os::Aix::page_size());
 
   size_t threadStackSizeInBytes = ThreadStackSize * K;
   if (threadStackSizeInBytes != 0 &&
       threadStackSizeInBytes < os::Aix::min_stack_allowed) {
-        tty->print_cr("\nThe stack size specified is too small, "
-                      "Specify at least %dk",
-                      os::Aix::min_stack_allowed / K);
-        return JNI_ERR;
+    tty->print_cr("\nThe stack size specified is too small, "
+                  "Specify at least %dk",
+                  os::Aix::min_stack_allowed / K);
+    return JNI_ERR;
   }
 
   // Make the stack size a multiple of the page size so that
@@ -3817,7 +3649,7 @@
   Aix::libpthread_init();
 
   if (MaxFDLimit) {
-    // set the number of file descriptors to max. print out error
+    // Set the number of file descriptors to max. print out error
     // if getrlimit/setrlimit fails but continue regardless.
     struct rlimit nbr_files;
     int status = getrlimit(RLIMIT_NOFILE, &nbr_files);
@@ -3835,12 +3667,12 @@
   }
 
   if (PerfAllowAtExitRegistration) {
-    // only register atexit functions if PerfAllowAtExitRegistration is set.
-    // atexit functions can be delayed until process exit time, which
+    // Only register atexit functions if PerfAllowAtExitRegistration is set.
+    // Atexit functions can be delayed until process exit time, which
     // can be problematic for embedded VM situations. Embedded VMs should
     // call DestroyJavaVM() to assure that VM resources are released.
 
-    // note: perfMemory_exit_helper atexit function may be removed in
+    // Note: perfMemory_exit_helper atexit function may be removed in
     // the future if the appropriate cleanup code can be added to the
     // VM_Exit VMOperation's doit method.
     if (atexit(perfMemory_exit_helper) != 0) {
@@ -4162,8 +3994,10 @@
 
   if (read_only) {
     prot = PROT_READ;
+    flags = MAP_SHARED;
   } else {
     prot = PROT_READ | PROT_WRITE;
+    flags = MAP_PRIVATE;
   }
 
   if (allow_exec) {
@@ -4174,7 +4008,12 @@
     flags |= MAP_FIXED;
   }
 
-  char* mapped_address = (char*)mmap(addr, (size_t)bytes, prot, flags,
+  // Allow anonymous mappings if 'fd' is -1.
+  if (fd == -1) {
+    flags |= MAP_ANONYMOUS;
+  }
+
+  char* mapped_address = (char*)::mmap(addr, (size_t)bytes, prot, flags,
                                      fd, file_offset);
   if (mapped_address == MAP_FAILED) {
     return NULL;
@@ -4432,7 +4271,7 @@
   if (Verbose) {
     fprintf(stderr, "EXTSHM=%s.\n", p ? p : "<unset>");
   }
-  if (p && strcmp(p, "ON") == 0) {
+  if (p && strcasecmp(p, "ON") == 0) {
     fprintf(stderr, "Unsupported setting: EXTSHM=ON. Large Page support will be disabled.\n");
     _extshm = 1;
   } else {
@@ -4493,16 +4332,13 @@
 /////////////////////////////////////////////////////////////////////////////
 // thread stack
 
-// function to query the current stack size using pthread_getthrds_np
-//
-// ! do not change anything here unless you know what you are doing !
-static void query_stack_dimensions(address* p_stack_base, size_t* p_stack_size) {
-
+// Function to query the current stack size using pthread_getthrds_np.
+static bool query_stack_dimensions(address* p_stack_base, size_t* p_stack_size) {
   // This only works when invoked on a pthread. As we agreed not to use
-  // primordial threads anyway, I assert here
+  // primordial threads anyway, I assert here.
   guarantee(!os::Aix::is_primordial_thread(), "not allowed on the primordial thread");
 
-  // information about this api can be found (a) in the pthread.h header and
+  // Information about this api can be found (a) in the pthread.h header and
   // (b) in http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.basetechref/doc/basetrf1/pthread_getthrds_np.htm
   //
   // The use of this API to find out the current stack is kind of undefined.
@@ -4513,57 +4349,72 @@
 
   pthread_t tid = pthread_self();
   struct __pthrdsinfo pinfo;
-  char dummy[1]; // we only need this to satisfy the api and to not get E
+  char dummy[1]; // We only need this to satisfy the api and to not get E.
   int dummy_size = sizeof(dummy);
 
   memset(&pinfo, 0, sizeof(pinfo));
 
-  const int rc = pthread_getthrds_np (&tid, PTHRDSINFO_QUERY_ALL, &pinfo,
-                                      sizeof(pinfo), dummy, &dummy_size);
+  const int rc = pthread_getthrds_np(&tid, PTHRDSINFO_QUERY_ALL, &pinfo,
+                                     sizeof(pinfo), dummy, &dummy_size);
 
   if (rc != 0) {
-    fprintf(stderr, "pthread_getthrds_np failed (%d)\n", rc);
-    guarantee(0, "pthread_getthrds_np failed");
-  }
-
-  guarantee(pinfo.__pi_stackend, "returned stack base invalid");
-
-  // the following can happen when invoking pthread_getthrds_np on a pthread running on a user provided stack
-  // (when handing down a stack to pthread create, see pthread_attr_setstackaddr).
+    assert0(false);
+    trcVerbose("pthread_getthrds_np failed (%d)", rc);
+    return false;
+  }
+  guarantee0(pinfo.__pi_stackend);
+
+  // The following can happen when invoking pthread_getthrds_np on a pthread running
+  // on a user provided stack (when handing down a stack to pthread create, see
+  // pthread_attr_setstackaddr).
   // Not sure what to do here - I feel inclined to forbid this use case completely.
-  guarantee(pinfo.__pi_stacksize, "returned stack size invalid");
-
-  // On AIX, stacks are not necessarily page aligned so round the base and size accordingly
+  guarantee0(pinfo.__pi_stacksize);
+
+  // Note: the pthread stack on AIX seems to look like this:
+  //
+  // ---------------------   real base ? at page border ?
+  //
+  //     pthread internal data, like ~2K, see also
+  //     http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.prftungd/doc/prftungd/thread_supp_tun_params.htm
+  //
+  // ---------------------   __pi_stackend - not page aligned, (xxxxF890)
+  //
+  //     stack
+  //      ....
+  //
+  //     stack
+  //
+  // ---------------------   __pi_stackend  - __pi_stacksize
+  //
+  //     padding due to AIX guard pages (?) see AIXTHREAD_GUARDPAGES
+  // ---------------------   __pi_stackaddr  (page aligned if AIXTHREAD_GUARDPAGES > 0)
+  //
+  //   AIX guard pages (?)
+  //
+
+  // So, the safe thing to do is to use the area from __pi_stackend to __pi_stackaddr;
+  // __pi_stackend however is almost never page aligned.
+  //
+
   if (p_stack_base) {
-    (*p_stack_base) = (address) align_size_up((intptr_t)pinfo.__pi_stackend, os::Aix::stack_page_size());
+    (*p_stack_base) = (address) (pinfo.__pi_stackend);
   }
 
   if (p_stack_size) {
-    (*p_stack_size) = pinfo.__pi_stacksize - os::Aix::stack_page_size();
-  }
-
-#ifndef PRODUCT
-  if (Verbose) {
-    fprintf(stderr,
-            "query_stack_dimensions() -> real stack_base=" INTPTR_FORMAT ", real stack_addr=" INTPTR_FORMAT
-            ", real stack_size=" INTPTR_FORMAT
-            ", stack_base=" INTPTR_FORMAT ", stack_size=" INTPTR_FORMAT "\n",
-            (intptr_t)pinfo.__pi_stackend, (intptr_t)pinfo.__pi_stackaddr, pinfo.__pi_stacksize,
-            (intptr_t)align_size_up((intptr_t)pinfo.__pi_stackend, os::Aix::stack_page_size()),
-            pinfo.__pi_stacksize - os::Aix::stack_page_size());
-  }
-#endif
-
-} // end query_stack_dimensions
-
-// get the current stack base from the OS (actually, the pthread library)
+    (*p_stack_size) = pinfo.__pi_stackend - pinfo.__pi_stackaddr;
+  }
+
+  return true;
+}
+
+// Get the current stack base from the OS (actually, the pthread library).
 address os::current_stack_base() {
   address p;
   query_stack_dimensions(&p, 0);
   return p;
 }
 
-// get the current stack size from the OS (actually, the pthread library)
+// Get the current stack size from the OS (actually, the pthread library).
 size_t os::current_stack_size() {
   size_t s;
   query_stack_dimensions(0, &s);
--- a/hotspot/src/os/aix/vm/os_aix.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/os_aix.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2013 SAP AG. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2013, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,9 +35,9 @@
   friend class os;
 
   // For signal-chaining
-  // highest so far (AIX 5.2) is SIGSAK (63)
+  // highest so far (AIX 5.2 - 6.1) is SIGSAK (63)
 #define MAXSIGNUM 63
-  // length of strings included in the libperfstat structures
+  // Length of strings included in the libperfstat structures.
 #define IDENTIFIER_LENGTH 64
 
   static struct sigaction sigact[MAXSIGNUM]; // saved preinstalled sigactions
@@ -111,22 +111,6 @@
   // (should be LDR_CNTRL DATAPSIZE because stack is allocated on heap by pthread lib)
   static int _stack_page_size;
 
-  // Default shm page size. Read: what page size shared memory will be backed
-  // with if no page size was set explicitly using shmctl(SHM_PAGESIZE).
-  // Should be LDR_CNTRL SHMPSIZE.
-  static size_t _shm_default_page_size;
-
-  // True if sys V shm can be used with 64K pages dynamically.
-  // (via shmctl(.. SHM_PAGESIZE..). Should be true for AIX 53 and
-  // newer / PASE V6R1 and newer. (0 or 1, -1 if not initialized)
-  static int _can_use_64K_pages;
-
-  // True if sys V shm can be used with 16M pages dynamically.
-  // (via shmctl(.. SHM_PAGESIZE..). Only true on AIX 5.3 and
-  // newer, if the system was set up to use 16M pages and the
-  // jvm has enough user rights. (0 or 1, -1 if not initialized)
-  static int _can_use_16M_pages;
-
   static julong available_memory();
   static julong physical_memory() { return _physical_memory; }
   static void initialize_system_info();
@@ -135,10 +119,6 @@
   // one of Aix::on_pase(), Aix::os_version().
   static void initialize_os_info();
 
-  static int commit_memory_impl(char* addr, size_t bytes, bool exec);
-  static int commit_memory_impl(char* addr, size_t bytes,
-                                size_t alignment_hint, bool exec);
-
   // Scan environment for important settings which might effect the
   // VM. Trace out settings. Warn about invalid settings and/or
   // correct them.
@@ -146,10 +126,6 @@
   // Must run after os::Aix::initialue_os_info().
   static void scan_environment();
 
-  // Retrieve information about multipage size support. Will initialize
-  // _page_size, _stack_page_size, _can_use_64K_pages/_can_use_16M_pages
-  static void query_multipage_support();
-
   // Initialize libo4 (on PASE) and libperfstat (on AIX). Call this
   // before relying on functions from either lib, e.g. Aix::get_meminfo().
   static void initialize_libo4();
@@ -187,27 +163,8 @@
     return _stack_page_size;
   }
 
-  // default shm page size. Read: what page size shared memory
-  // will be backed with if no page size was set explicitly using shmctl(SHM_PAGESIZE).
-  // Should be LDR_CNTRL SHMPSIZE.
-  static int shm_default_page_size(void) {
-    assert(_shm_default_page_size != -1, "not initialized");
-    return _shm_default_page_size;
-  }
-
-  // Return true if sys V shm can be used with 64K pages dynamically
-  // (via shmctl(.. SHM_PAGESIZE..).
-  static bool can_use_64K_pages () {
-    assert(_can_use_64K_pages != -1,  "not initialized");
-    return _can_use_64K_pages == 1 ? true : false;
-  }
-
-  // Return true if sys V shm can be used with 16M pages dynamically.
-  // (via shmctl(.. SHM_PAGESIZE..).
-  static bool can_use_16M_pages () {
-    assert(_can_use_16M_pages != -1,  "not initialized");
-    return _can_use_16M_pages == 1 ? true : false;
-  }
+  // This is used to scale stack space (guard pages etc.). The name is somehow misleading.
+  static int vm_default_page_size(void ) { return 8*K; }
 
   static address   ucontext_get_pc(const ucontext_t* uc);
   static intptr_t* ucontext_get_sp(ucontext_t* uc);
@@ -269,6 +226,11 @@
     return _os_version;
   }
 
+  // Convenience method: returns true if running on PASE V5R4 or older.
+  static bool on_pase_V5R4_or_older() {
+    return on_pase() && os_version() <= 0x0504;
+  }
+
   // Convenience method: returns true if running on AIX 5.3 or older.
   static bool on_aix_53_or_older() {
     return on_aix() && os_version() <= 0x0503;
--- a/hotspot/src/os/aix/vm/os_aix.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/os_aix.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -40,7 +40,7 @@
   return pthread_getspecific((pthread_key_t)index);
 }
 
-// File names are case-sensitive on windows only
+// File names are case-sensitive on windows only.
 inline int os::file_name_strcmp(const char* s1, const char* s2) {
   return strcmp(s1, s2);
 }
@@ -53,18 +53,19 @@
   return true;
 }
 
+// Whether or not calling code should/can commit/uncommit stack pages
+// before guarding them. Answer for AIX is definitly no, because memory
+// is automatically committed on touch.
 inline bool os::allocate_stack_guard_pages() {
   assert(uses_stack_guard_pages(), "sanity check");
-  return true;
+  return false;
 }
 
-
 // On Aix, reservations are made on a page by page basis, nothing to do.
 inline void os::pd_split_reserved_memory(char *base, size_t size,
                                          size_t split, bool realloc) {
 }
 
-
 // Bang the shadow pages if they need to be touched to be mapped.
 inline void os::bang_stack_shadow_pages() {
 }
@@ -75,15 +76,13 @@
 
 inline const int os::default_file_open_flags() { return 0;}
 
-inline DIR* os::opendir(const char* dirname)
-{
+inline DIR* os::opendir(const char* dirname) {
   assert(dirname != NULL, "just checking");
   return ::opendir(dirname);
 }
 
-inline int os::readdir_buf_size(const char *path)
-{
-  // according to aix sys/limits, NAME_MAX must be retrieved at runtime. */
+inline int os::readdir_buf_size(const char *path) {
+  // According to aix sys/limits, NAME_MAX must be retrieved at runtime.
   const long my_NAME_MAX = pathconf(path, _PC_NAME_MAX);
   return my_NAME_MAX + sizeof(dirent) + 1;
 }
@@ -104,8 +103,7 @@
   return ::ftruncate64(fd, length);
 }
 
-inline struct dirent* os::readdir(DIR* dirp, dirent *dbuf)
-{
+inline struct dirent* os::readdir(DIR* dirp, dirent *dbuf) {
   dirent* p;
   int status;
   assert(dirp != NULL, "just checking");
@@ -174,11 +172,11 @@
   RESTARTABLE_RETURN_INT(::send(fd, buf, nBytes, flags));
 }
 
-inline int os::raw_send(int fd, char* buf, size_t nBytes, uint flags) {
+inline int os::raw_send(int fd, char *buf, size_t nBytes, uint flags) {
   return os::send(fd, buf, nBytes, flags);
 }
 
-inline int os::connect(int fd, struct sockaddr* him, socklen_t len) {
+inline int os::connect(int fd, struct sockaddr *him, socklen_t len) {
   RESTARTABLE_RETURN_INT(::connect(fd, him, len));
 }
 
--- a/hotspot/src/os/aix/vm/perfMemory_aix.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/perfMemory_aix.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -797,7 +797,7 @@
   // Close the directory and reset the current working directory.
   close_directory_secure_cwd(dirp, saved_cwd_fd);
 
-  FREE_C_HEAP_ARRAY(char, dbuf, mtInternal);
+  FREE_C_HEAP_ARRAY(char, dbuf);
 }
 
 // Make the user specific temporary directory. Returns true if
@@ -1164,9 +1164,9 @@
   // store file, we don't follow them when attaching either.
   //
   if (!is_directory_secure(dirname)) {
-    FREE_C_HEAP_ARRAY(char, dirname, mtInternal);
+    FREE_C_HEAP_ARRAY(char, dirname);
     if (luser != user) {
-      FREE_C_HEAP_ARRAY(char, luser, mtInternal);
+      FREE_C_HEAP_ARRAY(char, luser);
     }
     THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
               "Process not found");
--- a/hotspot/src/os/aix/vm/porting_aix.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/aix/vm/porting_aix.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright 2012, 2013 SAP AG. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,8 +22,18 @@
  *
  */
 
+#ifndef OS_AIX_VM_PORTING_AIX_HPP
+#define OS_AIX_VM_PORTING_AIX_HPP
+
 #include <stddef.h>
 
+// PPC port only:
+#define assert0(b) assert( (b), "" )
+#define guarantee0(b) assert( (b), "" )
+template <class T1, class T2> bool is_aligned_to(T1 what, T2 alignment) {
+  return  ( ((uintx)(what)) & (((uintx)(alignment)) - 1) ) == 0 ? true : false;
+}
+
 // Header file to contain porting-relevant code which does not have a
 // home anywhere else and which can not go into os_<platform>.h because
 // that header is included inside the os class definition, hence all
@@ -79,3 +89,62 @@
       const struct tbtable** p_tb,     // [out] optional: ptr to traceback table to get further information
       char* p_errmsg, size_t errmsglen // [out] optional: user provided buffer for error messages
     );
+
+// -------------------------------------------------------------------------
+
+// A simple critical section which shall be based upon OS critical
+// sections (CRITICAL_SECTION resp. Posix Mutex) and nothing else.
+
+#include <pthread.h>
+
+namespace MiscUtils {
+  typedef pthread_mutex_t critsect_t;
+
+  inline void init_critsect(MiscUtils::critsect_t* cs) {
+    pthread_mutex_init(cs, NULL);
+  }
+  inline void free_critsect(MiscUtils::critsect_t* cs) {
+    pthread_mutex_destroy(cs);
+  }
+  inline void enter_critsect(MiscUtils::critsect_t* cs) {
+    pthread_mutex_lock(cs);
+  }
+  inline void leave_critsect(MiscUtils::critsect_t* cs) {
+    pthread_mutex_unlock(cs);
+  }
+
+  // Need to wrap this in an object because we need to dynamically initialize
+  // critical section (because of windows, where there is no way to initialize
+  // a CRITICAL_SECTION statically. On Unix, we could use
+  // PTHREAD_MUTEX_INITIALIZER)
+
+  // Note: The critical section does NOT get cleaned up in the destructor. That is
+  // by design: the CritSect class is only ever used as global objects whose
+  // lifetime spans the whole VM life; in that context we don't want the lock to
+  // be cleaned up when global C++ objects are destroyed, but to continue to work
+  // correctly right to the very end of the process life.
+  class CritSect {
+    critsect_t _cs;
+  public:
+    CritSect()        { init_critsect(&_cs); }
+    //~CritSect()       { free_critsect(&_cs); }
+    void enter()      { enter_critsect(&_cs); }
+    void leave()      { leave_critsect(&_cs); }
+  };
+
+  class AutoCritSect {
+    CritSect* const _pcsobj;
+  public:
+    AutoCritSect(CritSect* pcsobj)
+      : _pcsobj(pcsobj)
+    {
+      _pcsobj->enter();
+    }
+    ~AutoCritSect() {
+      _pcsobj->leave();
+    }
+  };
+
+}
+
+#endif // OS_AIX_VM_PORTING_AIX_HPP
--- a/hotspot/src/os/bsd/dtrace/generateJvmOffsets.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/bsd/dtrace/generateJvmOffsets.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -45,12 +45,12 @@
 #include "memory/heap.hpp"
 #include "memory/memRegion.hpp"
 #include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "oops/constMethod.hpp"
 #include "oops/klass.hpp"
 #include "oops/method.hpp"
 #include "oops/oop.hpp"
 #include "oops/symbol.hpp"
-#include "runtime/virtualspace.hpp"
 #include "runtime/vmStructs.hpp"
 #include "utilities/accessFlags.hpp"
 #include "utilities/globalDefinitions.hpp"
--- a/hotspot/src/os/bsd/dtrace/libjvm_db.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/bsd/dtrace/libjvm_db.c	Wed Jul 05 20:32:21 2017 +0200
@@ -582,13 +582,14 @@
   CHECK_FAIL(err);
 
   result[0] = '\0';
-  strncat(result, klassString, size);
-  size -= strlen(klassString);
-  strncat(result, ".", size);
-  size -= 1;
-  strncat(result, nameString, size);
-  size -= strlen(nameString);
-  strncat(result, signatureString, size);
+  if (snprintf(result, size,
+    "%s.%s%s",
+    klassString,
+    nameString,
+    signatureString) >= size) {
+    // truncation
+    goto fail;
+  }
 
   if (nameString != NULL) free(nameString);
   if (klassString != NULL) free(klassString);
@@ -1095,9 +1096,9 @@
       CHECK_FAIL(err);
   }
   if (deoptimized) {
-    strncat(result + 1, " [deoptimized frame]; ", size-1);
+    strncat(result, " [deoptimized frame]; ", size - strlen(result) - 1);
   } else {
-    strncat(result + 1, " [compiled] ", size-1);
+    strncat(result, " [compiled] ", size - strlen(result) - 1);
   }
   if (debug)
       fprintf(stderr, "name_for_nmethod: END: method name: %s, vf_cnt: %d\n\n",
--- a/hotspot/src/os/bsd/vm/decoder_machO.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/bsd/vm/decoder_machO.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -97,6 +97,7 @@
   char * symname = mach_find_in_stringtable((char*) ((uintptr_t)mach_base + stroff), strsize, found_strx);
   if (symname) {
       strncpy(buf, symname, buflen);
+      buf[buflen - 1] = '\0';
       return true;
   }
   DEBUG_ONLY(tty->print_cr("no string or null string found."));
--- a/hotspot/src/os/bsd/vm/os_bsd.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/bsd/vm/os_bsd.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -190,20 +190,6 @@
   return Bsd::physical_memory();
 }
 
-////////////////////////////////////////////////////////////////////////////////
-// environment support
-
-bool os::getenv(const char* name, char* buf, int len) {
-  const char* val = ::getenv(name);
-  if (val != NULL && strlen(val) < (size_t)len) {
-    strcpy(buf, val);
-    return true;
-  }
-  if (len > 0) buf[0] = 0;  // return a null string
-  return false;
-}
-
-
 // Return true if user is running as root.
 
 bool os::have_special_privileges() {
@@ -1146,6 +1132,10 @@
 // called from signal handler. Before adding something to os::abort(), make
 // sure it is async-safe and can handle partially initialized VM.
 void os::abort(bool dump_core) {
+  abort(dump_core, NULL, NULL);
+}
+
+void os::abort(bool dump_core, void* siginfo, void* context) {
   os::shutdown();
   if (dump_core) {
 #ifndef PRODUCT
@@ -1195,12 +1185,18 @@
   guarantee(retval != 0, "just checking");
   return retval;
 
-#elif __FreeBSD__
+#else
+  #ifdef __FreeBSD__
   retval = syscall(SYS_thr_self);
-#elif __OpenBSD__
+  #else
+    #ifdef __OpenBSD__
   retval = syscall(SYS_getthrid);
-#elif __NetBSD__
+    #else
+      #ifdef __NetBSD__
   retval = (pid_t) syscall(SYS__lwp_self);
+      #endif
+    #endif
+  #endif
 #endif
 
   if (retval == -1) {
--- a/hotspot/src/os/linux/vm/os_linux.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/linux/vm/os_linux.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -158,9 +158,6 @@
 static int SR_signum = SIGUSR2;
 sigset_t SR_sigset;
 
-// Used to protect dlsym() calls
-static pthread_mutex_t dl_mutex;
-
 // Declarations
 static void unpackTime(timespec* absTime, bool isAbsolute, jlong time);
 
@@ -184,20 +181,6 @@
   return Linux::physical_memory();
 }
 
-////////////////////////////////////////////////////////////////////////////////
-// environment support
-
-bool os::getenv(const char* name, char* buf, int len) {
-  const char* val = ::getenv(name);
-  if (val != NULL && strlen(val) < (size_t)len) {
-    strcpy(buf, val);
-    return true;
-  }
-  if (len > 0) buf[0] = 0;  // return a null string
-  return false;
-}
-
-
 // Return true if user is running as root.
 
 bool os::have_special_privileges() {
@@ -215,14 +198,20 @@
 // i386: 224, ia64: 1105, amd64: 186, sparc 143
   #ifdef __ia64__
     #define SYS_gettid 1105
-  #elif __i386__
-    #define SYS_gettid 224
-  #elif __amd64__
-    #define SYS_gettid 186
-  #elif __sparc__
-    #define SYS_gettid 143
   #else
-    #error define gettid for the arch
+    #ifdef __i386__
+      #define SYS_gettid 224
+    #else
+      #ifdef __amd64__
+        #define SYS_gettid 186
+      #else
+        #ifdef __sparc__
+          #define SYS_gettid 143
+        #else
+          #error define gettid for the arch
+        #endif
+      #endif
+    #endif
   #endif
 #endif
 
@@ -1490,6 +1479,10 @@
 // called from signal handler. Before adding something to os::abort(), make
 // sure it is async-safe and can handle partially initialized VM.
 void os::abort(bool dump_core) {
+  abort(dump_core, NULL, NULL);
+}
+
+void os::abort(bool dump_core, void* siginfo, void* context) {
   os::shutdown();
   if (dump_core) {
 #ifndef PRODUCT
@@ -2039,14 +2032,8 @@
   return result;
 }
 
-// glibc-2.0 libdl is not MT safe.  If you are building with any glibc,
-// chances are you might want to run the generated bits against glibc-2.0
-// libdl.so, so always use locking for any version of glibc.
-//
 void* os::dll_lookup(void* handle, const char* name) {
-  pthread_mutex_lock(&dl_mutex);
   void* res = dlsym(handle, name);
-  pthread_mutex_unlock(&dl_mutex);
   return res;
 }
 
@@ -4655,8 +4642,6 @@
   }
   // else it defaults to CLOCK_REALTIME
 
-  pthread_mutex_init(&dl_mutex, NULL);
-
   // If the pagesize of the VM is greater than 8K determine the appropriate
   // number of initial guard pages.  The user can change this with the
   // command line arguments, if needed.
--- a/hotspot/src/os/posix/vm/os_posix.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/posix/vm/os_posix.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -46,7 +46,7 @@
 #define IS_VALID_PID(p) (p > 0 && p < MAX_PID)
 
 // Check core dump limit and report possible place where core can be found
-void os::check_or_create_dump(void* exceptionRecord, void* contextRecord, char* buffer, size_t bufferSize) {
+void os::check_dump_limit(char* buffer, size_t bufferSize) {
   int n;
   struct rlimit rlim;
   bool success;
@@ -82,7 +82,7 @@
     }
   }
 
-  VMError::report_coredump_status(buffer, success);
+  VMError::record_coredump_status(buffer, success);
 }
 
 int os::get_native_stack(address* stack, int frames, int toSkip) {
--- a/hotspot/src/os/solaris/dtrace/generateJvmOffsets.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/solaris/dtrace/generateJvmOffsets.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -45,12 +45,12 @@
 #include "memory/heap.hpp"
 #include "memory/memRegion.hpp"
 #include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "oops/constMethod.hpp"
 #include "oops/klass.hpp"
 #include "oops/method.hpp"
 #include "oops/oop.hpp"
 #include "oops/symbol.hpp"
-#include "runtime/virtualspace.hpp"
 #include "runtime/vmStructs.hpp"
 #include "utilities/accessFlags.hpp"
 #include "utilities/globalDefinitions.hpp"
--- a/hotspot/src/os/solaris/dtrace/libjvm_db.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/solaris/dtrace/libjvm_db.c	Wed Jul 05 20:32:21 2017 +0200
@@ -582,13 +582,14 @@
   CHECK_FAIL(err);
 
   result[0] = '\0';
-  strncat(result, klassString, size);
-  size -= strlen(klassString);
-  strncat(result, ".", size);
-  size -= 1;
-  strncat(result, nameString, size);
-  size -= strlen(nameString);
-  strncat(result, signatureString, size);
+  if (snprintf(result, size,
+    "%s.%s%s",
+    klassString,
+    nameString,
+    signatureString) >= size) {
+    // truncation
+    goto fail;
+  }
 
   if (nameString != NULL) free(nameString);
   if (klassString != NULL) free(klassString);
@@ -1095,9 +1096,9 @@
       CHECK_FAIL(err);
   }
   if (deoptimized) {
-    strncat(result + 1, " [deoptimized frame]; ", size-1);
+    strncat(result, " [deoptimized frame]; ", size - strlen(result) - 1);
   } else {
-    strncat(result + 1, " [compiled] ", size-1);
+    strncat(result, " [compiled] ", size - strlen(result) - 1);
   }
   if (debug)
       fprintf(stderr, "name_for_nmethod: END: method name: %s, vf_cnt: %d\n\n",
--- a/hotspot/src/os/solaris/vm/os_solaris.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/solaris/vm/os_solaris.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -555,17 +555,6 @@
   return (bind_result == 0);
 }
 
-bool os::getenv(const char* name, char* buffer, int len) {
-  char* val = ::getenv(name);
-  if (val == NULL || strlen(val) + 1 > len) {
-    if (len > 0) buffer[0] = 0; // return a null string
-    return false;
-  }
-  strcpy(buffer, val);
-  return true;
-}
-
-
 // Return true if user is running as root.
 
 bool os::have_special_privileges() {
@@ -1532,6 +1521,10 @@
 // called from signal handler. Before adding something to os::abort(), make
 // sure it is async-safe and can handle partially initialized VM.
 void os::abort(bool dump_core) {
+  abort(dump_core, NULL, NULL);
+}
+
+void os::abort(bool dump_core, void* siginfo, void* context) {
   os::shutdown();
   if (dump_core) {
 #ifndef PRODUCT
--- a/hotspot/src/os/windows/vm/os_windows.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/windows/vm/os_windows.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -114,10 +114,12 @@
 
 #ifdef _M_IA64
   #define __CPU__ ia64
-#elif _M_AMD64
-  #define __CPU__ amd64
 #else
-  #define __CPU__ i486
+  #ifdef _M_AMD64
+    #define __CPU__ amd64
+  #else
+    #define __CPU__ i486
+  #endif
 #endif
 
 // save DLL module handle, used by GetModuleFileName
@@ -153,11 +155,6 @@
 
 // Implementation of os
 
-bool os::getenv(const char* name, char* buffer, int len) {
-  int result = GetEnvironmentVariable(name, buffer, len);
-  return result > 0 && result < len;
-}
-
 bool os::unsetenv(const char* name) {
   assert(name != NULL, "Null pointer");
   return (SetEnvironmentVariable(name, NULL) == TRUE);
@@ -188,9 +185,13 @@
     char *dll_path;
     char *pslash;
     char *bin = "\\bin";
-    char home_dir[MAX_PATH];
-
-    if (!getenv("_ALT_JAVA_HOME_DIR", home_dir, MAX_PATH)) {
+    char home_dir[MAX_PATH + 1];
+    char *alt_home_dir = ::getenv("_ALT_JAVA_HOME_DIR");
+
+    if (alt_home_dir != NULL)  {
+      strncpy(home_dir, alt_home_dir, MAX_PATH + 1);
+      home_dir[MAX_PATH] = '\0';
+    } else {
       os::jvm_path(home_dir, sizeof(home_dir));
       // Found the full path to jvm.dll.
       // Now cut the path to <java_home>/jre if we can.
@@ -988,7 +989,34 @@
                                          PMINIDUMP_USER_STREAM_INFORMATION,
                                          PMINIDUMP_CALLBACK_INFORMATION);
 
-void os::check_or_create_dump(void* exceptionRecord, void* contextRecord, char* buffer, size_t bufferSize) {
+static HANDLE dumpFile = NULL;
+
+// Check if dump file can be created.
+void os::check_dump_limit(char* buffer, size_t buffsz) {
+  bool status = true;
+  if (!FLAG_IS_DEFAULT(CreateCoredumpOnCrash) && !CreateCoredumpOnCrash) {
+    jio_snprintf(buffer, buffsz, "CreateCoredumpOnCrash is disabled from command line");
+    status = false;
+  } else {
+    const char* cwd = get_current_directory(NULL, 0);
+    int pid = current_process_id();
+    if (cwd != NULL) {
+      jio_snprintf(buffer, buffsz, "%s\\hs_err_pid%u.mdmp", cwd, pid);
+    } else {
+      jio_snprintf(buffer, buffsz, ".\\hs_err_pid%u.mdmp", pid);
+    }
+
+    if (dumpFile == NULL &&
+       (dumpFile = CreateFile(buffer, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL))
+                 == INVALID_HANDLE_VALUE) {
+      jio_snprintf(buffer, buffsz, "Failed to create minidump file (0x%x).", GetLastError());
+      status = false;
+    }
+  }
+  VMError::record_coredump_status(buffer, status);
+}
+
+void os::abort(bool dump_core, void* siginfo, void* context) {
   HINSTANCE dbghelp;
   EXCEPTION_POINTERS ep;
   MINIDUMP_EXCEPTION_INFORMATION mei;
@@ -996,33 +1024,22 @@
 
   HANDLE hProcess = GetCurrentProcess();
   DWORD processId = GetCurrentProcessId();
-  HANDLE dumpFile;
   MINIDUMP_TYPE dumpType;
-  static const char* cwd;
-
-// Default is to always create dump for debug builds, on product builds only dump on server versions of Windows.
-#ifndef ASSERT
-  // If running on a client version of Windows and user has not explicitly enabled dumping
-  if (!os::win32::is_windows_server() && !CreateMinidumpOnCrash) {
-    VMError::report_coredump_status("Minidumps are not enabled by default on client versions of Windows", false);
-    return;
-    // If running on a server version of Windows and user has explictly disabled dumping
-  } else if (os::win32::is_windows_server() && !FLAG_IS_DEFAULT(CreateMinidumpOnCrash) && !CreateMinidumpOnCrash) {
-    VMError::report_coredump_status("Minidump has been disabled from the command line", false);
-    return;
-  }
-#else
-  if (!FLAG_IS_DEFAULT(CreateMinidumpOnCrash) && !CreateMinidumpOnCrash) {
-    VMError::report_coredump_status("Minidump has been disabled from the command line", false);
-    return;
-  }
-#endif
+
+  shutdown();
+  if (!dump_core || dumpFile == NULL) {
+    if (dumpFile != NULL) {
+      CloseHandle(dumpFile);
+    }
+    win32::exit_process_or_thread(win32::EPT_PROCESS, 1);
+  }
 
   dbghelp = os::win32::load_Windows_dll("DBGHELP.DLL", NULL, 0);
 
   if (dbghelp == NULL) {
-    VMError::report_coredump_status("Failed to load dbghelp.dll", false);
-    return;
+    jio_fprintf(stderr, "Failed to load dbghelp.dll\n");
+    CloseHandle(dumpFile);
+    win32::exit_process_or_thread(win32::EPT_PROCESS, 1);
   }
 
   _MiniDumpWriteDump =
@@ -1034,30 +1051,23 @@
                                     "MiniDumpWriteDump"));
 
   if (_MiniDumpWriteDump == NULL) {
-    VMError::report_coredump_status("Failed to find MiniDumpWriteDump() in module dbghelp.dll", false);
-    return;
+    jio_fprintf(stderr, "Failed to find MiniDumpWriteDump() in module dbghelp.dll.\n");
+    CloseHandle(dumpFile);
+    win32::exit_process_or_thread(win32::EPT_PROCESS, 1);
   }
 
   dumpType = (MINIDUMP_TYPE)(MiniDumpWithFullMemory | MiniDumpWithHandleData);
 
-// Older versions of dbghelp.h doesn't contain all the dumptypes we want, dbghelp.h with
-// API_VERSION_NUMBER 11 or higher contains the ones we want though
+  // Older versions of dbghelp.h do not contain all the dumptypes we want, dbghelp.h with
+  // API_VERSION_NUMBER 11 or higher contains the ones we want though
 #if API_VERSION_NUMBER >= 11
   dumpType = (MINIDUMP_TYPE)(dumpType | MiniDumpWithFullMemoryInfo | MiniDumpWithThreadInfo |
                              MiniDumpWithUnloadedModules);
 #endif
 
-  cwd = get_current_directory(NULL, 0);
-  jio_snprintf(buffer, bufferSize, "%s\\hs_err_pid%u.mdmp", cwd, current_process_id());
-  dumpFile = CreateFile(buffer, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
-
-  if (dumpFile == INVALID_HANDLE_VALUE) {
-    VMError::report_coredump_status("Failed to create file for dumping", false);
-    return;
-  }
-  if (exceptionRecord != NULL && contextRecord != NULL) {
-    ep.ContextRecord = (PCONTEXT) contextRecord;
-    ep.ExceptionRecord = (PEXCEPTION_RECORD) exceptionRecord;
+  if (siginfo != NULL && context != NULL) {
+    ep.ContextRecord = (PCONTEXT) context;
+    ep.ExceptionRecord = (PEXCEPTION_RECORD) siginfo;
 
     mei.ThreadId = GetCurrentThreadId();
     mei.ExceptionPointers = &ep;
@@ -1066,38 +1076,18 @@
     pmei = NULL;
   }
 
-
   // Older versions of dbghelp.dll (the one shipped with Win2003 for example) may not support all
   // the dump types we really want. If first call fails, lets fall back to just use MiniDumpWithFullMemory then.
   if (_MiniDumpWriteDump(hProcess, processId, dumpFile, dumpType, pmei, NULL, NULL) == false &&
       _MiniDumpWriteDump(hProcess, processId, dumpFile, (MINIDUMP_TYPE)MiniDumpWithFullMemory, pmei, NULL, NULL) == false) {
-    DWORD error = GetLastError();
-    LPTSTR msgbuf = NULL;
-
-    if (FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
-                      FORMAT_MESSAGE_FROM_SYSTEM |
-                      FORMAT_MESSAGE_IGNORE_INSERTS,
-                      NULL, error, 0, (LPTSTR)&msgbuf, 0, NULL) != 0) {
-
-      jio_snprintf(buffer, bufferSize, "Call to MiniDumpWriteDump() failed (Error 0x%x: %s)", error, msgbuf);
-      LocalFree(msgbuf);
-    } else {
-      // Call to FormatMessage failed, just include the result from GetLastError
-      jio_snprintf(buffer, bufferSize, "Call to MiniDumpWriteDump() failed (Error 0x%x)", error);
-    }
-    VMError::report_coredump_status(buffer, false);
-  } else {
-    VMError::report_coredump_status(buffer, true);
-  }
-
+    jio_fprintf(stderr, "Call to MiniDumpWriteDump() failed (Error 0x%x)\n", GetLastError());
+  }
   CloseHandle(dumpFile);
-}
-
+  win32::exit_process_or_thread(win32::EPT_PROCESS, 1);
+}
 
 void os::abort(bool dump_core) {
-  os::shutdown();
-  // no core dump on Windows
-  win32::exit_process_or_thread(win32::EPT_PROCESS, 1);
+  abort(dump_core, NULL, NULL);
 }
 
 // Die immediately, no exit hook, no abort hook, no cleanup.
@@ -2102,20 +2092,22 @@
   // at the beginning of the target bundle.
   exceptionInfo->ContextRecord->StIPSR &= 0xFFFFF9FFFFFFFFFF;
   assert(((DWORD64)handler & 0xF) == 0, "Target address must point to the beginning of a bundle!");
-#elif _M_AMD64
+#else
+  #ifdef _M_AMD64
   // Do not blow up if no thread info available.
   if (thread) {
     thread->set_saved_exception_pc((address)(DWORD_PTR)exceptionInfo->ContextRecord->Rip);
   }
   // Set pc to handler
   exceptionInfo->ContextRecord->Rip = (DWORD64)handler;
-#else
+  #else
   // Do not blow up if no thread info available.
   if (thread) {
     thread->set_saved_exception_pc((address)(DWORD_PTR)exceptionInfo->ContextRecord->Eip);
   }
   // Set pc to handler
   exceptionInfo->ContextRecord->Eip = (DWORD)(DWORD_PTR)handler;
+  #endif
 #endif
 
   // Continue the execution
@@ -2214,7 +2206,8 @@
   // (division by zero is handled explicitly)
 #ifdef _M_IA64
   assert(0, "Fix Handle_IDiv_Exception");
-#elif _M_AMD64
+#else
+  #ifdef  _M_AMD64
   PCONTEXT ctx = exceptionInfo->ContextRecord;
   address pc = (address)ctx->Rip;
   assert(pc[0] == 0xF7, "not an idiv opcode");
@@ -2225,7 +2218,7 @@
   ctx->Rax = (DWORD)min_jint;      // result
   ctx->Rdx = (DWORD)0;             // remainder
   // Continue the execution
-#else
+  #else
   PCONTEXT ctx = exceptionInfo->ContextRecord;
   address pc = (address)ctx->Eip;
   assert(pc[0] == 0xF7, "not an idiv opcode");
@@ -2236,6 +2229,7 @@
   ctx->Eax = (DWORD)min_jint;      // result
   ctx->Edx = (DWORD)0;             // remainder
   // Continue the execution
+  #endif
 #endif
   return EXCEPTION_CONTINUE_EXECUTION;
 }
@@ -2308,10 +2302,12 @@
   // This is needed for IA64 because "relocation" / "implicit null check" / "poll instruction"
   // information is saved in the Unix format.
   address pc_unix_format = (address) ((((uint64_t)pc) & 0xFFFFFFFFFFFFFFF0) | ((((uint64_t)pc) & 0xF) >> 2));
-#elif _M_AMD64
+#else
+  #ifdef _M_AMD64
   address pc = (address) exceptionInfo->ContextRecord->Rip;
-#else
+  #else
   address pc = (address) exceptionInfo->ContextRecord->Eip;
+  #endif
 #endif
   Thread* t = ThreadLocalStorage::get_thread_slow();          // slow & steady
 
@@ -2696,17 +2692,6 @@
 }
 #endif
 
-void os::win32::call_test_func_with_wrapper(void (*funcPtr)(void)) {
-  // Install a win32 structured exception handler around the test
-  // function call so the VM can generate an error dump if needed.
-  __try {
-    (*funcPtr)();
-  } __except(topLevelExceptionFilter(
-                                     (_EXCEPTION_POINTERS*)_exception_info())) {
-    // Nothing to do.
-  }
-}
-
 // Virtual Memory
 
 int os::vm_page_size() { return os::win32::vm_page_size(); }
@@ -5930,4 +5915,3 @@
   UseNUMAInterleaving = old_use_numa_interleaving;
 }
 #endif // PRODUCT
-
--- a/hotspot/src/os/windows/vm/os_windows.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/windows/vm/os_windows.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -115,8 +115,6 @@
   static address fast_jni_accessor_wrapper(BasicType);
 #endif
 
-  static void call_test_func_with_wrapper(void (*funcPtr)(void));
-
   // filter function to ignore faults on serializations page
   static LONG WINAPI serialize_fault_filter(struct _EXCEPTION_POINTERS* e);
 };
--- a/hotspot/src/os/windows/vm/os_windows.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os/windows/vm/os_windows.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -104,7 +104,4 @@
   win32::exit_process_or_thread(win32::EPT_PROCESS, num);
 }
 
-#define CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(f) \
-        os::win32::call_test_func_with_wrapper(f)
-
 #endif // OS_WINDOWS_VM_OS_WINDOWS_INLINE_HPP
--- a/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -59,6 +59,10 @@
 #include "utilities/events.hpp"
 #include "utilities/vmError.hpp"
 
+// See stubGenerator_zero.cpp
+#include <setjmp.h>
+extern sigjmp_buf* get_jmp_buf_for_continuation();
+
 address os::current_stack_pointer() {
   address dummy = (address) &dummy;
   return dummy;
@@ -134,6 +138,14 @@
 
   SignalHandlerMark shm(t);
 
+  // handle SafeFetch faults
+  if (sig == SIGSEGV || sig == SIGBUS) {
+    sigjmp_buf* const pjb = get_jmp_buf_for_continuation();
+    if (pjb) {
+      siglongjmp(*pjb, 1);
+    }
+  }
+
   // Note: it's not uncommon that JNI code uses signal/sigset to
   // install then restore certain signal handler (e.g. to temporarily
   // block SIGPIPE, or have a SIGILL handler when detecting CPU
--- a/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2012, 2014 SAP AG. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2012, 2015 SAP AG. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -298,6 +298,7 @@
         goto report_and_die;
       }
 
+      CodeBlob *cb = NULL;
       // Handle signal from NativeJump::patch_verified_entry().
       if (( TrapBasedNotEntrantChecks && sig == SIGTRAP && nativeInstruction_at(pc)->is_sigtrap_zombie_not_entrant()) ||
           (!TrapBasedNotEntrantChecks && sig == SIGILL  && nativeInstruction_at(pc)->is_sigill_zombie_not_entrant())) {
@@ -313,7 +314,10 @@
                // especially when we try to read from the safepoint polling page. So the check
                //   (address)info->si_addr == os::get_standard_polling_page()
                // doesn't work for us. We use:
-               ((NativeInstruction*)pc)->is_safepoint_poll()) {
+               ((NativeInstruction*)pc)->is_safepoint_poll() &&
+               CodeCache::contains((void*) pc) &&
+               ((cb = CodeCache::find_blob(pc)) != NULL) &&
+               cb->is_nmethod()) {
         if (TraceTraps) {
           tty->print_cr("trap: safepoint_poll at " INTPTR_FORMAT " (SIGSEGV)", p2i(pc));
         }
--- a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -54,6 +54,10 @@
 #include "utilities/events.hpp"
 #include "utilities/vmError.hpp"
 
+// See stubGenerator_zero.cpp
+#include <setjmp.h>
+extern sigjmp_buf* get_jmp_buf_for_continuation();
+
 address os::current_stack_pointer() {
   address dummy = (address) &dummy;
   return dummy;
@@ -125,6 +129,14 @@
 
   SignalHandlerMark shm(t);
 
+  // handle SafeFetch faults
+  if (sig == SIGSEGV || sig == SIGBUS) {
+    sigjmp_buf* const pjb = get_jmp_buf_for_continuation();
+    if (pjb) {
+      siglongjmp(*pjb, 1);
+    }
+  }
+
   // Note: it's not uncommon that JNI code uses signal/sigset to
   // install then restore certain signal handler (e.g. to temporarily
   // block SIGPIPE, or have a SIGILL handler when detecting CPU
--- a/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -129,7 +129,7 @@
     bool is_inconsistent()  { return _state == INCONSISTENT; }
     void set_inconsistent() { _state = INCONSISTENT;         }
 
-    void visit(picl_nodehdl_t nodeh, const char* name) {
+    bool visit(picl_nodehdl_t nodeh, const char* name) {
       assert(!is_inconsistent(), "Precondition");
       int curr;
       if (_picl->get_int_property(nodeh, name, &curr) == PICL_SUCCESS) {
@@ -138,7 +138,9 @@
         } else if (curr != value()) { // following iterations
           set_inconsistent();
         }
+        return true;
       }
+      return false;
     }
   };
 
@@ -155,8 +157,19 @@
       if (!l1_visitor->is_inconsistent()) {
         l1_visitor->visit(nodeh, "l1-dcache-line-size");
       }
-      if (!l2_visitor->is_inconsistent()) {
-        l2_visitor->visit(nodeh, "l2-cache-line-size");
+      static const char* l2_data_cache_line_property_name = NULL;
+      // On the first visit determine the name of the l2 cache line size property and memoize it.
+      if (l2_data_cache_line_property_name == NULL) {
+        assert(!l2_visitor->is_inconsistent(), "First iteration cannot be inconsistent");
+        l2_data_cache_line_property_name = "l2-cache-line-size";
+        if (!l2_visitor->visit(nodeh, l2_data_cache_line_property_name)) {
+          l2_data_cache_line_property_name = "l2-dcache-line-size";
+          l2_visitor->visit(nodeh, l2_data_cache_line_property_name);
+        }
+      } else {
+        if (!l2_visitor->is_inconsistent()) {
+          l2_visitor->visit(nodeh, l2_data_cache_line_property_name);
+        }
       }
 
       if (l1_visitor->is_inconsistent() && l2_visitor->is_inconsistent()) {
@@ -172,13 +185,13 @@
     UniqueValueVisitor* l2_visitor() { return &_l2_visitor; }
   };
   int _L1_data_cache_line_size;
-  int _L2_cache_line_size;
+  int _L2_data_cache_line_size;
 public:
   static int visit_cpu(picl_nodehdl_t nodeh, void *state) {
     return CPUVisitor::visit(nodeh, state);
   }
 
-  PICL(bool is_fujitsu) : _L1_data_cache_line_size(0), _L2_cache_line_size(0), _dl_handle(NULL) {
+  PICL(bool is_fujitsu) : _L1_data_cache_line_size(0), _L2_data_cache_line_size(0), _dl_handle(NULL) {
     if (!open_library()) {
       return;
     }
@@ -196,7 +209,7 @@
           _L1_data_cache_line_size = cpu_visitor.l1_visitor()->value();
         }
         if (cpu_visitor.l2_visitor()->is_assigned()) {
-          _L2_cache_line_size = cpu_visitor.l2_visitor()->value();
+          _L2_data_cache_line_size = cpu_visitor.l2_visitor()->value();
         }
       }
       _picl_shutdown();
@@ -205,7 +218,7 @@
   }
 
   unsigned int L1_data_cache_line_size() const { return _L1_data_cache_line_size; }
-  unsigned int L2_cache_line_size() const      { return _L2_cache_line_size;      }
+  unsigned int L2_data_cache_line_size() const { return _L2_data_cache_line_size; }
 };
 
 
@@ -431,7 +444,7 @@
   // Figure out cache line sizes using PICL
   PICL picl((features & sparc64_family_m) != 0);
   _L1_data_cache_line_size = picl.L1_data_cache_line_size();
-  _L2_cache_line_size      = picl.L2_cache_line_size();
+  _L2_data_cache_line_size = picl.L2_data_cache_line_size();
 
   return features;
 }
--- a/hotspot/src/share/tools/hsdis/hsdis.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/tools/hsdis/hsdis.c	Wed Jul 05 20:32:21 2017 +0200
@@ -410,6 +410,7 @@
     }
     p = q;
   }
+  *iop = '\0';
 }
 
 static void print_help(struct hsdis_app_data* app_data,
--- a/hotspot/src/share/vm/adlc/adlparse.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/adlparse.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -800,6 +800,7 @@
       }
       if (strcmp(token,"reg_def")==0)          { reg_def_parse(); }
       else if (strcmp(token,"reg_class")==0)   { reg_class_parse(); }
+      else if (strcmp(token, "reg_class_dynamic") == 0) { reg_class_dynamic_parse(); }
       else if (strcmp(token,"alloc_class")==0) { alloc_class_parse(); }
       else if (strcmp(token,"#define")==0)     { preproc_define(); }
       else { parse_err(SYNERR, "bad token %s inside register block.\n", token); break; }
@@ -2323,11 +2324,12 @@
   // Debug Stuff
   if (_AD._adl_debug >1) fprintf(stderr,"Register Class: %s\n", cname);
 
-  RegClass *reg_class = _AD._register->addRegClass(cname);
-
-  // Collect registers in class
   skipws();
   if (_curchar == '(') {
+    // A register list is defined for the register class.
+    // Collect registers into a generic RegClass register class.
+    RegClass* reg_class = _AD._register->addRegClass<RegClass>(cname);
+
     next_char();                  // Skip '('
     skipws();
     while (_curchar != ')') {
@@ -2352,12 +2354,15 @@
     }
     next_char();                  // Skip closing ')'
   } else if (_curchar == '%') {
+    // A code snippet is defined for the register class.
+    // Collect the code snippet into a CodeSnippetRegClass register class.
+    CodeSnippetRegClass* reg_class = _AD._register->addRegClass<CodeSnippetRegClass>(cname);
     char *code = find_cpp_block("reg class");
     if (code == NULL) {
       parse_err(SYNERR, "missing code declaration for reg class.\n");
       return;
     }
-    reg_class->_user_defined = code;
+    reg_class->set_code_snippet(code);
     return;
   }
 
@@ -2374,6 +2379,87 @@
   return;
 }
 
+//------------------------------reg_class_dynamic_parse------------------------
+void ADLParser::reg_class_dynamic_parse(void) {
+  char *cname; // Name of dynamic register class being defined
+
+  // Get register class name
+  skipws();
+  cname = get_ident();
+  if (cname == NULL) {
+    parse_err(SYNERR, "missing dynamic register class name after 'reg_class_dynamic'\n");
+    return;
+  }
+
+  if (_AD._adl_debug > 1) {
+    fprintf(stdout, "Dynamic Register Class: %s\n", cname);
+  }
+
+  skipws();
+  if (_curchar != '(') {
+    parse_err(SYNERR, "missing '(' at the beginning of reg_class_dynamic definition\n");
+    return;
+  }
+  next_char();
+  skipws();
+
+  // Collect two register classes and the C++ code representing the condition code used to
+  // select between the two classes into a ConditionalRegClass register class.
+  ConditionalRegClass* reg_class = _AD._register->addRegClass<ConditionalRegClass>(cname);
+  int i;
+  for (i = 0; i < 2; i++) {
+    char* name = get_ident();
+    if (name == NULL) {
+      parse_err(SYNERR, "missing class identifier inside reg_class_dynamic list.\n");
+      return;
+    }
+    RegClass* rc = _AD._register->getRegClass(name);
+    if (rc == NULL) {
+      parse_err(SEMERR, "unknown identifier %s inside reg_class_dynamic list.\n", name);
+    } else {
+      reg_class->set_rclass_at_index(i, rc);
+    }
+
+    skipws();
+    if (_curchar == ',') {
+      next_char();
+      skipws();
+    } else {
+      parse_err(SYNERR, "missing separator ',' inside reg_class_dynamic list.\n");
+    }
+  }
+
+  // Collect the condition code.
+  skipws();
+  if (_curchar == '%') {
+    char* code = find_cpp_block("reg class dynamic");
+    if (code == NULL) {
+       parse_err(SYNERR, "missing code declaration for reg_class_dynamic.\n");
+       return;
+    }
+    reg_class->set_condition_code(code);
+  } else {
+    parse_err(SYNERR, "missing %% at the beginning of code block in reg_class_dynamic definition\n");
+    return;
+  }
+
+  skipws();
+  if (_curchar != ')') {
+    parse_err(SYNERR, "missing ')' at the end of reg_class_dynamic definition\n");
+    return;
+  }
+  next_char();
+
+  skipws();
+  if (_curchar != ';') {
+    parse_err(SYNERR, "missing ';' at the end of reg_class_dynamic definition.\n");
+    return;
+  }
+  next_char();                    // Skip trailing ';'
+
+  return;
+}
+
 //------------------------------alloc_class_parse------------------------------
 void ADLParser::alloc_class_parse(void) {
   char *name;                     // Name of allocation class being defined
--- a/hotspot/src/share/vm/adlc/adlparse.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/adlparse.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -53,6 +53,8 @@
 // ***** Register Section *****
 class RegDef;
 class RegClass;
+class CodeSnippetRegClass;
+class ConditionalRegClass;
 class AllocClass;
 class ResourceForm;
 // ***** Pipeline Section *****
@@ -125,6 +127,7 @@
   // Parse components of the register section
   void reg_def_parse(void);              // Parse register definition
   void reg_class_parse(void);            // Parse register class definition
+  void reg_class_dynamic_parse(void);    // Parse dynamic register class definition
   void alloc_class_parse(void);          // Parse allocation class definition
 
   // Parse components of the definition section
--- a/hotspot/src/share/vm/adlc/archDesc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/archDesc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -908,7 +908,7 @@
 void ArchDesc::set_stack_or_reg(const char *reg_class_name) {
   if( _register ) {
     RegClass *reg_class  = _register->getRegClass(reg_class_name);
-    reg_class->_stack_or_reg = true;
+    reg_class->set_stack_version(true);
   }
 }
 
--- a/hotspot/src/share/vm/adlc/forms.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/forms.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -68,6 +68,8 @@
 class InsEncode;
 class RegDef;
 class RegClass;
+class CodeSnippetRegClass;
+class ConditionalRegClass;
 class AllocClass;
 class ResourceForm;
 class PipeClassForm;
--- a/hotspot/src/share/vm/adlc/formsopt.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/formsopt.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -47,13 +47,19 @@
 }
 
 // record a new register class
-RegClass *RegisterForm::addRegClass(const char *className) {
-  RegClass *regClass = new RegClass(className);
+template <typename T>
+T* RegisterForm::addRegClass(const char* className) {
+  T* regClass = new T(className);
   _rclasses.addName(className);
-  _regClass.Insert(className,regClass);
+  _regClass.Insert(className, regClass);
   return regClass;
 }
 
+// Explicit instantiation for all supported register classes.
+template RegClass* RegisterForm::addRegClass<RegClass>(const char* className);
+template CodeSnippetRegClass* RegisterForm::addRegClass<CodeSnippetRegClass>(const char* className);
+template ConditionalRegClass* RegisterForm::addRegClass<ConditionalRegClass>(const char* className);
+
 // record a new register class
 AllocClass *RegisterForm::addAllocClass(char *className) {
   AllocClass *allocClass = new AllocClass(className);
@@ -67,9 +73,9 @@
 void RegisterForm::addSpillRegClass() {
   // Stack slots start at the next available even register number.
   _reg_ctr = (_reg_ctr+7) & ~7;
-  const char *rc_name   = "stack_slots";
-  RegClass   *reg_class = new RegClass(rc_name);
-  reg_class->_stack_or_reg = true;
+  const char *rc_name = "stack_slots";
+  RegClass* reg_class = new RegClass(rc_name);
+  reg_class->set_stack_version(true);
   _rclasses.addName(rc_name);
   _regClass.Insert(rc_name,reg_class);
 }
@@ -224,9 +230,11 @@
 
 //------------------------------RegClass---------------------------------------
 // Construct a register class into which registers will be inserted
-RegClass::RegClass(const char *classid) : _stack_or_reg(false), _classid(classid), _regDef(cmpstr,hashstr, Form::arena),
-                                          _user_defined(NULL)
-{
+RegClass::RegClass(const char* classid) : _stack_or_reg(false), _classid(classid), _regDef(cmpstr, hashstr, Form::arena) {
+}
+
+RegClass::~RegClass() {
+  delete _classid;
 }
 
 // record a register in this class
@@ -305,6 +313,91 @@
   fprintf(fp,"--- done with entries for reg_class %s\n\n",_classid);
 }
 
+void RegClass::declare_register_masks(FILE* fp) {
+  const char* prefix = "";
+  const char* rc_name_to_upper = toUpper(_classid);
+  fprintf(fp, "extern const RegMask _%s%s_mask;\n", prefix,  rc_name_to_upper);
+  fprintf(fp, "inline const RegMask &%s%s_mask() { return _%s%s_mask; }\n", prefix, rc_name_to_upper, prefix, rc_name_to_upper);
+  if (_stack_or_reg) {
+    fprintf(fp, "extern const RegMask _%sSTACK_OR_%s_mask;\n", prefix, rc_name_to_upper);
+    fprintf(fp, "inline const RegMask &%sSTACK_OR_%s_mask() { return _%sSTACK_OR_%s_mask; }\n", prefix, rc_name_to_upper, prefix, rc_name_to_upper);
+  }
+  delete[] rc_name_to_upper;
+}
+
+void RegClass::build_register_masks(FILE* fp) {
+  int len = RegisterForm::RegMask_Size();
+  const char *prefix = "";
+  const char* rc_name_to_upper = toUpper(_classid);
+  fprintf(fp, "const RegMask _%s%s_mask(", prefix, rc_name_to_upper);
+
+  int i;
+  for(i = 0; i < len - 1; i++) {
+    fprintf(fp," 0x%x,", regs_in_word(i, false));
+  }
+  fprintf(fp," 0x%x );\n", regs_in_word(i, false));
+
+  if (_stack_or_reg) {
+    fprintf(fp, "const RegMask _%sSTACK_OR_%s_mask(", prefix, rc_name_to_upper);
+    for(i = 0; i < len - 1; i++) {
+      fprintf(fp," 0x%x,", regs_in_word(i, true));
+    }
+    fprintf(fp," 0x%x );\n", regs_in_word(i, true));
+  }
+  delete[] rc_name_to_upper;
+}
+
+//------------------------------CodeSnippetRegClass---------------------------
+CodeSnippetRegClass::CodeSnippetRegClass(const char* classid) : RegClass(classid), _code_snippet(NULL) {
+}
+
+CodeSnippetRegClass::~CodeSnippetRegClass() {
+  delete _code_snippet;
+}
+
+void CodeSnippetRegClass::declare_register_masks(FILE* fp) {
+  const char* prefix = "";
+  const char* rc_name_to_upper = toUpper(_classid);
+  fprintf(fp, "inline const RegMask &%s%s_mask() { %s }\n", prefix, rc_name_to_upper, _code_snippet);
+  delete[] rc_name_to_upper;
+}
+
+//------------------------------ConditionalRegClass---------------------------
+ConditionalRegClass::ConditionalRegClass(const char *classid) : RegClass(classid), _condition_code(NULL) {
+}
+
+ConditionalRegClass::~ConditionalRegClass() {
+  delete _condition_code;
+}
+
+void ConditionalRegClass::declare_register_masks(FILE* fp) {
+  const char* prefix = "";
+  const char* rc_name_to_upper = toUpper(_classid);
+  const char* rclass_0_to_upper = toUpper(_rclasses[0]->_classid);
+  const char* rclass_1_to_upper = toUpper(_rclasses[1]->_classid);
+  fprintf(fp, "inline const RegMask &%s%s_mask() {"
+              " return (%s) ?"
+              " %s%s_mask() :"
+              " %s%s_mask(); }\n",
+              prefix, rc_name_to_upper,
+              _condition_code,
+              prefix, rclass_0_to_upper,
+              prefix, rclass_1_to_upper);
+  if (_stack_or_reg) {
+    fprintf(fp, "inline const RegMask &%sSTACK_OR_%s_mask() {"
+                  " return (%s) ?"
+                  " %sSTACK_OR_%s_mask() :"
+                  " %sSTACK_OR_%s_mask(); }\n",
+                  prefix, rc_name_to_upper,
+                  _condition_code,
+                  prefix, rclass_0_to_upper,
+                  prefix, rclass_1_to_upper);
+  }
+  delete[] rc_name_to_upper;
+  delete[] rclass_0_to_upper;
+  delete[] rclass_1_to_upper;
+  return;
+}
 
 //------------------------------AllocClass-------------------------------------
 AllocClass::AllocClass(char *classid) : _classid(classid), _regDef(cmpstr,hashstr, Form::arena) {
--- a/hotspot/src/share/vm/adlc/formsopt.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/formsopt.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -60,6 +60,8 @@
 class InsEncode;
 class RegDef;
 class RegClass;
+class CodeSnippetRegClass;
+class ConditionalRegClass;
 class AllocClass;
 class ResourceForm;
 class PipeClassForm;
@@ -98,7 +100,8 @@
 
   void        addRegDef(char *regName, char *callingConv, char *c_conv,
                         char * idealtype, char *encoding, char* concreteName);
-  RegClass   *addRegClass(const char *className);
+  template<typename T> T* addRegClass(const char* className);
+
   AllocClass *addAllocClass(char *allocName);
   void        addSpillRegClass();
 
@@ -154,17 +157,28 @@
 };
 
 //------------------------------RegClass---------------------------------------
+// Generic register class. This register class is the internal representation
+// for the following .ad file format:
+//
+//  reg_class ptr(RAX, RBX, ...);
+//
+// where ptr is the name of the register class, RAX and RBX are registers.
+//
+// This register class allows registers to be spilled onto the stack. Spilling
+// is allowed is field _stack_or_reg is true.
 class RegClass : public Form {
 public:
   // Public Data
   const char *_classid;         // Name of class
   NameList    _regDefs;         // List of registers in class
   Dict        _regDef;          // Dictionary of registers in class
+protected:
   bool        _stack_or_reg;    // Allowed on any stack slot
-  char*       _user_defined;
 
+public:
   // Public Methods
   RegClass(const char *classid);// Constructor
+  virtual ~RegClass();
 
   void addReg(RegDef *regDef);  // Add a register to this class
 
@@ -183,6 +197,115 @@
 
   void dump();                  // Debug printer
   void output(FILE *fp);        // Write info to output files
+
+  virtual bool has_stack_version() {
+    return _stack_or_reg;
+  }
+  virtual void set_stack_version(bool flag) {
+    _stack_or_reg = flag;
+  }
+
+  virtual void declare_register_masks(FILE* fp);
+  virtual void build_register_masks(FILE* fp);
+};
+
+//------------------------------CodeSnippetRegClass----------------------------
+// Register class that has an user-defined C++ code snippet attached to it
+// to determine at runtime which register class to use. This register class is
+// the internal representation for the following .ad file format:
+//
+//  reg_class actual_dflt_reg %{
+//      if (VM_Version::has_vfp3_32()) {
+//          return DFLT_REG_mask();
+//      } else {
+//          return DFLT_LOW_REG_mask();
+//      }
+//  %}
+//
+// where DFLT_REG_mask() and DFLT_LOW_REG_mask() are the internal names of the
+// masks of register classes dflt_reg and dflt_low_reg.
+//
+// The attached code snippet can select also between more than two register classes.
+// This register class can be, however, used only if the register class is not
+// cisc-spillable (i.e., the registers of this class are not allowed on the stack,
+// which is equivalent with _stack_or_reg being false).
+class CodeSnippetRegClass : public RegClass {
+protected:
+  char* _code_snippet;
+public:
+  CodeSnippetRegClass(const char* classid);// Constructor
+  ~CodeSnippetRegClass();
+
+  void set_code_snippet(char* code) {
+    _code_snippet = code;
+  }
+  char* code_snippet() {
+    return _code_snippet;
+  }
+  void set_stack_version(bool flag) {
+    assert(false, "User defined register classes are not allowed to spill to the stack.");
+  }
+  void declare_register_masks(FILE* fp);
+  void build_register_masks(FILE* fp) {
+    // We do not need to generate register masks because we select at runtime
+    // between register masks generated for other register classes.
+    return;
+  }
+};
+
+//------------------------------ConditionalRegClass----------------------------
+// Register class that has two register classes and a runtime condition attached
+// to it. The condition is evaluated at runtime and either one of the register
+// attached register classes is selected. This register class is the internal
+// representation for the following .ad format:
+//
+//  reg_class_dynamic actual_dflt_reg(dflt_reg, low_reg,
+//                                    %{ VM_Version::has_vfp3_32() }%
+//                                    );
+//
+// This example is equivalent to the example used with the CodeSnippetRegClass
+// register class. A ConditionalRegClass works also if a register class is cisc-spillable
+// (i.e., _stack_or_reg is true), but if can select only between two register classes.
+class ConditionalRegClass : public RegClass {
+protected:
+  // reference to condition code
+  char* _condition_code;  // C++ condition code to dynamically determine which register class to use.
+
+                          // Example syntax (equivalent to previous example):
+                          //
+                          //  reg_class actual_dflt_reg(dflt_reg, low_reg,
+                          //                            %{ VM_Version::has_vfp3_32() }%
+                          //                            );
+  // reference to conditional register classes
+  RegClass* _rclasses[2]; // 0 is the register class selected if the condition code returns true
+                          // 1 is the register class selected if the condition code returns false
+public:
+  ConditionalRegClass(const char* classid);// Constructor
+  ~ConditionalRegClass();
+
+  virtual void set_stack_version(bool flag) {
+    RegClass::set_stack_version(flag);
+    assert((_rclasses[0] != NULL), "Register class NULL for condition code == true");
+    assert((_rclasses[1] != NULL), "Register class NULL for condition code == false");
+    _rclasses[0]->set_stack_version(flag);
+    _rclasses[1]->set_stack_version(flag);
+  }
+  void declare_register_masks(FILE* fp);
+  void build_register_masks(FILE* fp) {
+    // We do not need to generate register masks because we select at runtime
+    // between register masks generated for other register classes.
+    return;
+  }
+  void set_rclass_at_index(int index, RegClass* rclass) {
+    assert((0 <= index && index < 2), "Condition code can select only between two register classes");
+    _rclasses[index] = rclass;
+  }
+  void set_condition_code(char* code) {
+    _condition_code = code;
+  }
+  char* condition_code() {
+    return _condition_code;
+  }
 };
 
 //------------------------------AllocClass-------------------------------------
--- a/hotspot/src/share/vm/adlc/formssel.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/formssel.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -3392,7 +3392,7 @@
 // Count occurrences of operands names in the leaves of the instruction
 // match rule.
 void MatchNode::count_instr_names( Dict &names ) {
-  if( !this ) return;
+  if( this == NULL ) return;
   if( _lChild ) _lChild->count_instr_names(names);
   if( _rChild ) _rChild->count_instr_names(names);
   if( !_lChild && !_rChild ) {
@@ -4043,6 +4043,13 @@
         strcmp(opType,"ReplicateL")==0 ||
         strcmp(opType,"ReplicateF")==0 ||
         strcmp(opType,"ReplicateD")==0 ||
+        strcmp(opType,"AddReductionVI")==0 ||
+        strcmp(opType,"AddReductionVL")==0 ||
+        strcmp(opType,"AddReductionVF")==0 ||
+        strcmp(opType,"AddReductionVD")==0 ||
+        strcmp(opType,"MulReductionVI")==0 ||
+        strcmp(opType,"MulReductionVF")==0 ||
+        strcmp(opType,"MulReductionVD")==0 ||
         0 /* 0 to line up columns nicely */ )
       return 1;
   }
@@ -4135,6 +4142,10 @@
     "MulVS","MulVI","MulVF","MulVD",
     "DivVF","DivVD",
     "AndV" ,"XorV" ,"OrV",
+    "AddReductionVI", "AddReductionVL",
+    "AddReductionVF", "AddReductionVD",
+    "MulReductionVI",
+    "MulReductionVF", "MulReductionVD",
     "LShiftCntV","RShiftCntV",
     "LShiftVB","LShiftVS","LShiftVI","LShiftVL",
     "RShiftVB","RShiftVS","RShiftVI","RShiftVL",
--- a/hotspot/src/share/vm/adlc/formssel.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/formssel.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -59,6 +59,8 @@
 class InsEncode;
 class RegDef;
 class RegClass;
+class CodeSnippetRegClass;
+class ConditionalRegClass;
 class AllocClass;
 class ResourceForm;
 class PipeDesc;
--- a/hotspot/src/share/vm/adlc/output_c.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/adlc/output_c.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -138,26 +138,9 @@
     fprintf(fp_hpp,"// Register masks, one for each register class.\n");
     _register->_rclasses.reset();
     for (rc_name = NULL; (rc_name = _register->_rclasses.iter()) != NULL;) {
-      const char *prefix = "";
       RegClass *reg_class = _register->getRegClass(rc_name);
       assert(reg_class, "Using an undefined register class");
-
-      const char* rc_name_to_upper = toUpper(rc_name);
-
-      if (reg_class->_user_defined == NULL) {
-        fprintf(fp_hpp, "extern const RegMask _%s%s_mask;\n", prefix,  rc_name_to_upper);
-        fprintf(fp_hpp, "inline const RegMask &%s%s_mask() { return _%s%s_mask; }\n", prefix, rc_name_to_upper, prefix, rc_name_to_upper);
-      } else {
-        fprintf(fp_hpp, "inline const RegMask &%s%s_mask() { %s }\n", prefix, rc_name_to_upper, reg_class->_user_defined);
-      }
-
-      if (reg_class->_stack_or_reg) {
-        assert(reg_class->_user_defined == NULL, "no user defined reg class here");
-        fprintf(fp_hpp, "extern const RegMask _%sSTACK_OR_%s_mask;\n", prefix, rc_name_to_upper);
-        fprintf(fp_hpp, "inline const RegMask &%sSTACK_OR_%s_mask() { return _%sSTACK_OR_%s_mask; }\n", prefix, rc_name_to_upper, prefix, rc_name_to_upper);
-      }
-      delete[] rc_name_to_upper;
-
+      reg_class->declare_register_masks(fp_hpp);
     }
   }
 }
@@ -173,35 +156,9 @@
     fprintf(fp_cpp,"// Register masks, one for each register class.\n");
     _register->_rclasses.reset();
     for (rc_name = NULL; (rc_name = _register->_rclasses.iter()) != NULL;) {
-      const char *prefix = "";
       RegClass *reg_class = _register->getRegClass(rc_name);
       assert(reg_class, "Using an undefined register class");
-
-      if (reg_class->_user_defined != NULL) {
-        continue;
-      }
-
-      int len = RegisterForm::RegMask_Size();
-      const char* rc_name_to_upper = toUpper(rc_name);
-      fprintf(fp_cpp, "const RegMask _%s%s_mask(", prefix, rc_name_to_upper);
-
-      {
-        int i;
-        for(i = 0; i < len - 1; i++) {
-          fprintf(fp_cpp," 0x%x,", reg_class->regs_in_word(i, false));
-        }
-        fprintf(fp_cpp," 0x%x );\n", reg_class->regs_in_word(i, false));
-      }
-
-      if (reg_class->_stack_or_reg) {
-        int i;
-        fprintf(fp_cpp, "const RegMask _%sSTACK_OR_%s_mask(", prefix, rc_name_to_upper);
-        for(i = 0; i < len - 1; i++) {
-          fprintf(fp_cpp," 0x%x,",reg_class->regs_in_word(i, true));
-        }
-        fprintf(fp_cpp," 0x%x );\n",reg_class->regs_in_word(i, true));
-      }
-      delete[] rc_name_to_upper;
+      reg_class->build_register_masks(fp_cpp);
     }
   }
 }
@@ -1548,8 +1505,8 @@
     // Iterate over the instructions 'node' expands into
     ExpandRule  *expand       = node->_exprule;
     NameAndList *expand_instr = NULL;
-    for(expand->reset_instructions();
-        (expand_instr = expand->iter_instructions()) != NULL; cnt++) {
+    for (expand->reset_instructions();
+         (expand_instr = expand->iter_instructions()) != NULL; cnt++) {
       new_id = expand_instr->name();
 
       InstructForm* expand_instruction = (InstructForm*)globalAD->globalNames()[new_id];
@@ -1560,30 +1517,25 @@
         continue;
       }
 
-      if (expand_instruction->has_temps()) {
-        globalAD->syntax_err(node->_linenum, "In %s: expand rules using instructs with TEMPs aren't supported: %s",
-                             node->_ident, new_id);
-      }
-
       // Build the node for the instruction
       fprintf(fp,"\n  %sNode *n%d = new %sNode();\n", new_id, cnt, new_id);
       // Add control edge for this node
       fprintf(fp,"  n%d->add_req(_in[0]);\n", cnt);
       // Build the operand for the value this node defines.
       Form *form = (Form*)_globalNames[new_id];
-      assert( form, "'new_id' must be a defined form name");
+      assert(form, "'new_id' must be a defined form name");
       // Grab the InstructForm for the new instruction
       new_inst = form->is_instruction();
-      assert( new_inst, "'new_id' must be an instruction name");
-      if( node->is_ideal_if() && new_inst->is_ideal_if() ) {
-        fprintf(fp, "  ((MachIfNode*)n%d)->_prob = _prob;\n",cnt);
-        fprintf(fp, "  ((MachIfNode*)n%d)->_fcnt = _fcnt;\n",cnt);
+      assert(new_inst, "'new_id' must be an instruction name");
+      if (node->is_ideal_if() && new_inst->is_ideal_if()) {
+        fprintf(fp, "  ((MachIfNode*)n%d)->_prob = _prob;\n", cnt);
+        fprintf(fp, "  ((MachIfNode*)n%d)->_fcnt = _fcnt;\n", cnt);
       }
 
-      if( node->is_ideal_fastlock() && new_inst->is_ideal_fastlock() ) {
-        fprintf(fp, "  ((MachFastLockNode*)n%d)->_counters = _counters;\n",cnt);
-        fprintf(fp, "  ((MachFastLockNode*)n%d)->_rtm_counters = _rtm_counters;\n",cnt);
-        fprintf(fp, "  ((MachFastLockNode*)n%d)->_stack_rtm_counters = _stack_rtm_counters;\n",cnt);
+      if (node->is_ideal_fastlock() && new_inst->is_ideal_fastlock()) {
+        fprintf(fp, "  ((MachFastLockNode*)n%d)->_counters = _counters;\n", cnt);
+        fprintf(fp, "  ((MachFastLockNode*)n%d)->_rtm_counters = _rtm_counters;\n", cnt);
+        fprintf(fp, "  ((MachFastLockNode*)n%d)->_stack_rtm_counters = _stack_rtm_counters;\n", cnt);
       }
 
       // Fill in the bottom_type where requested
--- a/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -3462,6 +3462,24 @@
     case vmIntrinsics::_putFloat  : return append_unsafe_put_obj(callee, T_FLOAT,   false);
     case vmIntrinsics::_putDouble : return append_unsafe_put_obj(callee, T_DOUBLE,  false);
 
+    case vmIntrinsics::_getShortUnaligned  :
+      return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_SHORT,   false) : false;
+    case vmIntrinsics::_getCharUnaligned   :
+      return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_CHAR,    false) : false;
+    case vmIntrinsics::_getIntUnaligned    :
+      return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_INT,     false) : false;
+    case vmIntrinsics::_getLongUnaligned   :
+      return UseUnalignedAccesses ? append_unsafe_get_obj(callee, T_LONG,    false) : false;
+
+    case vmIntrinsics::_putShortUnaligned  :
+      return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_SHORT,   false) : false;
+    case vmIntrinsics::_putCharUnaligned   :
+      return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_CHAR,    false) : false;
+    case vmIntrinsics::_putIntUnaligned    :
+      return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_INT,     false) : false;
+    case vmIntrinsics::_putLongUnaligned   :
+      return UseUnalignedAccesses ? append_unsafe_put_obj(callee, T_LONG,    false) : false;
+
     case vmIntrinsics::_getObjectVolatile : return append_unsafe_get_obj(callee, T_OBJECT,  true);
     case vmIntrinsics::_getBooleanVolatile: return append_unsafe_get_obj(callee, T_BOOLEAN, true);
     case vmIntrinsics::_getByteVolatile   : return append_unsafe_get_obj(callee, T_BYTE,    true);
@@ -4065,7 +4083,7 @@
       ValueType* type = apop()->type();
       if (type->is_constant()) {
         ciMethod* target = type->as_ObjectType()->constant_value()->as_member_name()->get_vmtarget();
-        // If the target is another method handle invoke try recursivly to get
+        // If the target is another method handle invoke, try to recursively get
         // a better target.
         if (target->is_method_handle_intrinsic()) {
           if (try_method_handle_inline(target)) {
--- a/hotspot/src/share/vm/c1/c1_LIR.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/c1/c1_LIR.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -458,7 +458,7 @@
 //-------------------visits--------------------------
 
 // complete rework of LIR instruction visitor.
-// The virtual calls for each instruction type is replaced by a big
+// The virtual call for each instruction type is replaced by a big
 // switch that adds the operands for each instruction
 
 void LIR_OpVisitState::visit(LIR_Op* op) {
@@ -825,7 +825,8 @@
       }
 
       if (opJavaCall->_info)                     do_info(opJavaCall->_info);
-      if (opJavaCall->is_method_handle_invoke()) {
+      if (FrameMap::method_handle_invoke_SP_save_opr() != LIR_OprFact::illegalOpr &&
+          opJavaCall->is_method_handle_invoke()) {
         opJavaCall->_method_handle_invoke_SP_save_opr = FrameMap::method_handle_invoke_SP_save_opr();
         do_temp(opJavaCall->_method_handle_invoke_SP_save_opr);
       }
--- a/hotspot/src/share/vm/c1/c1_LIR.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/c1/c1_LIR.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1219,10 +1219,8 @@
   // JSR 292 support.
   bool is_invokedynamic() const                  { return code() == lir_dynamic_call; }
   bool is_method_handle_invoke() const {
-    return
-      method()->is_compiled_lambda_form()  // Java-generated adapter
-      ||
-      method()->is_method_handle_intrinsic();  // JVM-generated MH intrinsic
+    return method()->is_compiled_lambda_form() ||   // Java-generated lambda form
+           method()->is_method_handle_intrinsic();  // JVM-generated MH intrinsic
   }
 
   intptr_t vtable_offset() const {
--- a/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1606,13 +1606,26 @@
   } else {
     __ unsigned_shift_right(addr, CardTableModRefBS::card_shift, tmp);
   }
+
+  LIR_Address* card_addr;
   if (can_inline_as_constant(card_table_base)) {
-    __ move(LIR_OprFact::intConst(0),
-              new LIR_Address(tmp, card_table_base->as_jint(), T_BYTE));
+    card_addr = new LIR_Address(tmp, card_table_base->as_jint(), T_BYTE);
   } else {
-    __ move(LIR_OprFact::intConst(0),
-              new LIR_Address(tmp, load_constant(card_table_base),
-                              T_BYTE));
+    card_addr = new LIR_Address(tmp, load_constant(card_table_base), T_BYTE);
+  }
+
+  LIR_Opr dirty = LIR_OprFact::intConst(CardTableModRefBS::dirty_card_val());
+  if (UseCondCardMark) {
+    LIR_Opr cur_value = new_register(T_INT);
+    __ move(card_addr, cur_value);
+
+    LabelObj* L_already_dirty = new LabelObj();
+    __ cmp(lir_cond_equal, cur_value, dirty);
+    __ branch(lir_cond_equal, T_BYTE, L_already_dirty->label());
+    __ move(dirty, card_addr);
+    __ branch_destination(L_already_dirty->label());
+  } else {
+    __ move(dirty, card_addr);
   }
 #endif
 }
@@ -2862,7 +2875,7 @@
 //   g) lock result registers and emit call operation
 //
 // Before issuing a call, we must spill-save all values on stack
-// that are in caller-save register. "spill-save" moves thos registers
+// that are in caller-save register. "spill-save" moves those registers
 // either in a free callee-save register or spills them if no free
 // callee save register is available.
 //
@@ -2870,7 +2883,7 @@
 // - if invoked between e) and f), we may lock callee save
 //   register in "spill-save" that destroys the receiver register
 //   before f) is executed
-// - if we rearange the f) to be earlier, by loading %o0, it
+// - if we rearrange f) to be earlier (by loading %o0) it
 //   may destroy a value on the stack that is currently in %o0
 //   and is waiting to be spilled
 // - if we keep the receiver locked while doing spill-save,
@@ -2903,14 +2916,16 @@
   assert(receiver->is_illegal() || receiver->is_equal(LIR_Assembler::receiverOpr()), "must match");
 
   // JSR 292
-  // Preserve the SP over MethodHandle call sites.
+  // Preserve the SP over MethodHandle call sites, if needed.
   ciMethod* target = x->target();
   bool is_method_handle_invoke = (// %%% FIXME: Are both of these relevant?
                                   target->is_method_handle_intrinsic() ||
                                   target->is_compiled_lambda_form());
   if (is_method_handle_invoke) {
     info->set_is_method_handle_invoke(true);
-    __ move(FrameMap::stack_pointer(), FrameMap::method_handle_invoke_SP_save_opr());
+    if(FrameMap::method_handle_invoke_SP_save_opr() != LIR_OprFact::illegalOpr) {
+        __ move(FrameMap::stack_pointer(), FrameMap::method_handle_invoke_SP_save_opr());
+    }
   }
 
   switch (x->code()) {
@@ -2950,8 +2965,9 @@
   }
 
   // JSR 292
-  // Restore the SP after MethodHandle call sites.
-  if (is_method_handle_invoke) {
+  // Restore the SP after MethodHandle call sites, if needed.
+  if (is_method_handle_invoke
+      && FrameMap::method_handle_invoke_SP_save_opr() != LIR_OprFact::illegalOpr) {
     __ move(FrameMap::method_handle_invoke_SP_save_opr(), FrameMap::stack_pointer());
   }
 
--- a/hotspot/src/share/vm/ci/ciCallSite.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/ci/ciCallSite.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -50,6 +50,25 @@
 }
 
 // ------------------------------------------------------------------
+// ciCallSite::get_context
+//
+// Return the target MethodHandle of this CallSite.
+ciKlass* ciCallSite::get_context() {
+  assert(!is_constant_call_site(), "");
+
+  VM_ENTRY_MARK;
+  oop call_site_oop = get_oop();
+  InstanceKlass* ctxk = MethodHandles::get_call_site_context(call_site_oop);
+  if (ctxk == NULL) {
+    // The call site doesn't have a context associated. Set it to the default context.
+    oop def_context_oop = java_lang_invoke_CallSite::default_context();
+    java_lang_invoke_CallSite::set_context_cas(call_site_oop, def_context_oop, /*expected=*/NULL);
+    ctxk = MethodHandles::get_call_site_context(call_site_oop);
+  }
+  return (CURRENT_ENV->get_metadata(ctxk))->as_klass();
+}
+
+// ------------------------------------------------------------------
 // ciCallSite::print
 //
 // Print debugging information about the CallSite.
--- a/hotspot/src/share/vm/ci/ciCallSite.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/ci/ciCallSite.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -43,6 +43,7 @@
 
   // Return the target MethodHandle of this CallSite.
   ciMethodHandle* get_target() const;
+  ciKlass* get_context();
 
   void print();
 };
--- a/hotspot/src/share/vm/ci/ciMethod.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/ci/ciMethod.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -688,7 +688,8 @@
 // via assert_unique_concrete_method or assert_leaf_type.
 ciMethod* ciMethod::find_monomorphic_target(ciInstanceKlass* caller,
                                             ciInstanceKlass* callee_holder,
-                                            ciInstanceKlass* actual_recv) {
+                                            ciInstanceKlass* actual_recv,
+                                            bool check_access) {
   check_is_loaded();
 
   if (actual_recv->is_interface()) {
@@ -696,7 +697,7 @@
     return NULL;
   }
 
-  ciMethod* root_m = resolve_invoke(caller, actual_recv);
+  ciMethod* root_m = resolve_invoke(caller, actual_recv, check_access);
   if (root_m == NULL) {
     // Something went wrong looking up the actual receiver method.
     return NULL;
@@ -775,7 +776,7 @@
 //
 // Given a known receiver klass, find the target for the call.
 // Return NULL if the call has no target or the target is abstract.
-ciMethod* ciMethod::resolve_invoke(ciKlass* caller, ciKlass* exact_receiver) {
+ciMethod* ciMethod::resolve_invoke(ciKlass* caller, ciKlass* exact_receiver, bool check_access) {
    check_is_loaded();
    VM_ENTRY_MARK;
 
@@ -792,9 +793,9 @@
         ||
        InstanceKlass::cast(h_recv())->is_linked() && !exact_receiver->is_interface()) {
      if (holder()->is_interface()) {
-       m = LinkResolver::resolve_interface_call_or_null(h_recv, h_resolved, h_name, h_signature, caller_klass);
+       m = LinkResolver::resolve_interface_call_or_null(h_recv, h_resolved, h_name, h_signature, caller_klass, check_access);
      } else {
-       m = LinkResolver::resolve_virtual_call_or_null(h_recv, h_resolved, h_name, h_signature, caller_klass);
+       m = LinkResolver::resolve_virtual_call_or_null(h_recv, h_resolved, h_name, h_signature, caller_klass, check_access);
      }
    }
 
--- a/hotspot/src/share/vm/ci/ciMethod.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/ci/ciMethod.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -255,11 +255,12 @@
   // its calling environment.
   ciMethod* find_monomorphic_target(ciInstanceKlass* caller,
                                     ciInstanceKlass* callee_holder,
-                                    ciInstanceKlass* actual_receiver);
+                                    ciInstanceKlass* actual_receiver,
+                                    bool check_access = true);
 
   // Given a known receiver klass, find the target for the call.
   // Return NULL if the call has no target or is abstract.
-  ciMethod* resolve_invoke(ciKlass* caller, ciKlass* exact_receiver);
+  ciMethod* resolve_invoke(ciKlass* caller, ciKlass* exact_receiver, bool check_access = true);
 
   // Find the proper vtable index to invoke this method.
   int resolve_vtable_index(ciKlass* caller, ciKlass* receiver);
--- a/hotspot/src/share/vm/classfile/classFileParser.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/classFileParser.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -4838,20 +4838,21 @@
       }
     }
   } else { // not interface
-    if (is_initializer) {
-      if (is_static || is_final || is_synchronized || is_native ||
-          is_abstract || (major_gte_15 && is_bridge)) {
-        is_illegal = true;
-      }
-    } else { // not initializer
-      if (is_abstract) {
-        if ((is_final || is_native || is_private || is_static ||
-            (major_gte_15 && (is_synchronized || is_strict)))) {
+    if (has_illegal_visibility(flags)) {
+      is_illegal = true;
+    } else {
+      if (is_initializer) {
+        if (is_static || is_final || is_synchronized || is_native ||
+            is_abstract || (major_gte_15 && is_bridge)) {
           is_illegal = true;
         }
-      }
-      if (has_illegal_visibility(flags)) {
-        is_illegal = true;
+      } else { // not initializer
+        if (is_abstract) {
+          if ((is_final || is_native || is_private || is_static ||
+              (major_gte_15 && (is_synchronized || is_strict)))) {
+            is_illegal = true;
+          }
+        }
       }
     }
   }
--- a/hotspot/src/share/vm/classfile/javaClasses.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/javaClasses.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -102,21 +102,22 @@
 static bool find_field(InstanceKlass* ik,
                        Symbol* name_symbol, Symbol* signature_symbol,
                        fieldDescriptor* fd,
-                       bool allow_super = false) {
-  if (allow_super)
-    return ik->find_field(name_symbol, signature_symbol, fd) != NULL;
-  else
+                       bool is_static = false, bool allow_super = false) {
+  if (allow_super || is_static) {
+    return ik->find_field(name_symbol, signature_symbol, is_static, fd) != NULL;
+  } else {
     return ik->find_local_field(name_symbol, signature_symbol, fd);
+  }
 }
 
 // Helpful routine for computing field offsets at run time rather than hardcoding them
 static void
 compute_offset(int &dest_offset,
                Klass* klass_oop, Symbol* name_symbol, Symbol* signature_symbol,
-               bool allow_super = false) {
+               bool is_static = false, bool allow_super = false) {
   fieldDescriptor fd;
   InstanceKlass* ik = InstanceKlass::cast(klass_oop);
-  if (!find_field(ik, name_symbol, signature_symbol, &fd, allow_super)) {
+  if (!find_field(ik, name_symbol, signature_symbol, &fd, is_static, allow_super)) {
     ResourceMark rm;
     tty->print_cr("Invalid layout of %s at %s", ik->external_name(), name_symbol->as_C_string());
 #ifndef PRODUCT
@@ -126,7 +127,7 @@
       tty->print_cr("  name: %s, sig: %s, flags: %08x", fs.name()->as_C_string(), fs.signature()->as_C_string(), fs.access_flags().as_int());
     }
 #endif //PRODUCT
-    fatal("Invalid layout of preloaded class");
+    vm_exit_during_initialization("Invalid layout of preloaded class: use -XX:+TraceClassLoading to see the origin of the problem class");
   }
   dest_offset = fd.offset();
 }
@@ -1313,7 +1314,8 @@
 }
 
 static inline bool version_matches(Method* method, int version) {
-  return (method->constants()->version() == version && version < MAX_VERSION);
+  assert(version < MAX_VERSION, "version is too big");
+  return method != NULL && (method->constants()->version() == version);
 }
 
 static inline int get_line_number(Method* method, int bci) {
@@ -1343,6 +1345,7 @@
   typeArrayOop    _methods;
   typeArrayOop    _bcis;
   objArrayOop     _mirrors;
+  typeArrayOop    _cprefs; // needed to insulate method name against redefinition
   int             _index;
   No_Safepoint_Verifier _nsv;
 
@@ -1350,8 +1353,9 @@
 
   enum {
     trace_methods_offset = java_lang_Throwable::trace_methods_offset,
-    trace_bcis_offset = java_lang_Throwable::trace_bcis_offset,
+    trace_bcis_offset    = java_lang_Throwable::trace_bcis_offset,
     trace_mirrors_offset = java_lang_Throwable::trace_mirrors_offset,
+    trace_cprefs_offset  = java_lang_Throwable::trace_cprefs_offset,
     trace_next_offset    = java_lang_Throwable::trace_next_offset,
     trace_size           = java_lang_Throwable::trace_size,
     trace_chunk_size     = java_lang_Throwable::trace_chunk_size
@@ -1373,9 +1377,14 @@
     assert(mirrors != NULL, "mirror array should be initialized in backtrace");
     return mirrors;
   }
+  static typeArrayOop get_cprefs(objArrayHandle chunk) {
+    typeArrayOop cprefs = typeArrayOop(chunk->obj_at(trace_cprefs_offset));
+    assert(cprefs != NULL, "cprefs array should be initialized in backtrace");
+    return cprefs;
+  }
 
   // constructor for new backtrace
-  BacktraceBuilder(TRAPS): _methods(NULL), _bcis(NULL), _head(NULL), _mirrors(NULL) {
+  BacktraceBuilder(TRAPS): _methods(NULL), _bcis(NULL), _head(NULL), _mirrors(NULL), _cprefs(NULL) {
     expand(CHECK);
     _backtrace = _head;
     _index = 0;
@@ -1385,6 +1394,7 @@
     _methods = get_methods(backtrace);
     _bcis = get_bcis(backtrace);
     _mirrors = get_mirrors(backtrace);
+    _cprefs = get_cprefs(backtrace);
     assert(_methods->length() == _bcis->length() &&
            _methods->length() == _mirrors->length(),
            "method and source information arrays should match");
@@ -1410,17 +1420,22 @@
     objArrayOop mirrors = oopFactory::new_objectArray(trace_chunk_size, CHECK);
     objArrayHandle new_mirrors(THREAD, mirrors);
 
+    typeArrayOop cprefs = oopFactory::new_shortArray(trace_chunk_size, CHECK);
+    typeArrayHandle new_cprefs(THREAD, cprefs);
+
     if (!old_head.is_null()) {
       old_head->obj_at_put(trace_next_offset, new_head());
     }
     new_head->obj_at_put(trace_methods_offset, new_methods());
     new_head->obj_at_put(trace_bcis_offset, new_bcis());
     new_head->obj_at_put(trace_mirrors_offset, new_mirrors());
+    new_head->obj_at_put(trace_cprefs_offset, new_cprefs());
 
     _head    = new_head();
     _methods = new_methods();
     _bcis = new_bcis();
     _mirrors = new_mirrors();
+    _cprefs  = new_cprefs();
     _index = 0;
   }
 
@@ -1440,8 +1455,9 @@
       method = mhandle();
     }
 
-    _methods->short_at_put(_index, method->method_idnum());
+    _methods->short_at_put(_index, method->orig_method_idnum());
     _bcis->int_at_put(_index, merge_bci_and_version(bci, method->constants()->version()));
+    _cprefs->short_at_put(_index, method->name_index());
 
     // We need to save the mirrors in the backtrace to keep the class
     // from being unloaded while we still have this stack trace.
@@ -1454,27 +1470,26 @@
 
 // Print stack trace element to resource allocated buffer
 char* java_lang_Throwable::print_stack_element_to_buffer(Handle mirror,
-                                  int method_id, int version, int bci) {
+                                  int method_id, int version, int bci, int cpref) {
 
   // Get strings and string lengths
   InstanceKlass* holder = InstanceKlass::cast(java_lang_Class::as_Klass(mirror()));
   const char* klass_name  = holder->external_name();
   int buf_len = (int)strlen(klass_name);
 
-  // The method id may point to an obsolete method, can't get more stack information
-  Method* method = holder->method_with_idnum(method_id);
-  if (method == NULL) {
-    char* buf = NEW_RESOURCE_ARRAY(char, buf_len + 64);
-    // This is what the java code prints in this case - added Redefined
-    sprintf(buf, "\tat %s.null (Redefined)", klass_name);
-    return buf;
-  }
-
-  char* method_name = method->name()->as_C_string();
+  Method* method = holder->method_with_orig_idnum(method_id, version);
+
+  // The method can be NULL if the requested class version is gone
+  Symbol* sym = (method != NULL) ? method->name() : holder->constants()->symbol_at(cpref);
+  char* method_name = sym->as_C_string();
   buf_len += (int)strlen(method_name);
 
+  // Use specific ik version as a holder since the mirror might
+  // refer to version that is now obsolete and no longer accessible
+  // via the previous versions list.
+  holder = holder->get_klass_version(version);
   char* source_file_name = NULL;
-  if (version_matches(method, version)) {
+  if (holder != NULL) {
     Symbol* source = holder->source_file_name();
     if (source != NULL) {
       source_file_name = source->as_C_string();
@@ -1516,17 +1531,18 @@
 }
 
 void java_lang_Throwable::print_stack_element(outputStream *st, Handle mirror,
-                                              int method_id, int version, int bci) {
+                                              int method_id, int version, int bci, int cpref) {
   ResourceMark rm;
-  char* buf = print_stack_element_to_buffer(mirror, method_id, version, bci);
+  char* buf = print_stack_element_to_buffer(mirror, method_id, version, bci, cpref);
   st->print_cr("%s", buf);
 }
 
 void java_lang_Throwable::print_stack_element(outputStream *st, methodHandle method, int bci) {
   Handle mirror = method->method_holder()->java_mirror();
-  int method_id = method->method_idnum();
+  int method_id = method->orig_method_idnum();
   int version = method->constants()->version();
-  print_stack_element(st, mirror, method_id, version, bci);
+  int cpref = method->name_index();
+  print_stack_element(st, mirror, method_id, version, bci, cpref);
 }
 
 const char* java_lang_Throwable::no_stack_trace_message() {
@@ -1551,6 +1567,7 @@
       typeArrayHandle methods (THREAD, BacktraceBuilder::get_methods(result));
       typeArrayHandle bcis (THREAD, BacktraceBuilder::get_bcis(result));
       objArrayHandle mirrors (THREAD, BacktraceBuilder::get_mirrors(result));
+      typeArrayHandle cprefs (THREAD, BacktraceBuilder::get_cprefs(result));
 
       int length = methods()->length();
       for (int index = 0; index < length; index++) {
@@ -1560,7 +1577,8 @@
         int method = methods->short_at(index);
         int version = version_at(bcis->int_at(index));
         int bci = bci_at(bcis->int_at(index));
-        print_stack_element(st, mirror, method, version, bci);
+        int cpref = cprefs->short_at(index);
+        print_stack_element(st, mirror, method, version, bci, cpref);
       }
       result = objArrayHandle(THREAD, objArrayOop(result->obj_at(trace_next_offset)));
     }
@@ -1837,29 +1855,30 @@
   if (chunk == NULL) {
     THROW_(vmSymbols::java_lang_IndexOutOfBoundsException(), NULL);
   }
-  // Get method id, bci, version and mirror from chunk
+  // Get method id, bci, version, mirror and cpref from chunk
   typeArrayOop methods = BacktraceBuilder::get_methods(chunk);
   typeArrayOop bcis = BacktraceBuilder::get_bcis(chunk);
   objArrayOop mirrors = BacktraceBuilder::get_mirrors(chunk);
+  typeArrayOop cprefs = BacktraceBuilder::get_cprefs(chunk);
 
   assert(methods != NULL && bcis != NULL && mirrors != NULL, "sanity check");
 
   int method = methods->short_at(chunk_index);
   int version = version_at(bcis->int_at(chunk_index));
   int bci = bci_at(bcis->int_at(chunk_index));
+  int cpref = cprefs->short_at(chunk_index);
   Handle mirror(THREAD, mirrors->obj_at(chunk_index));
 
   // Chunk can be partial full
   if (mirror.is_null()) {
     THROW_(vmSymbols::java_lang_IndexOutOfBoundsException(), NULL);
   }
-
-  oop element = java_lang_StackTraceElement::create(mirror, method, version, bci, CHECK_0);
+  oop element = java_lang_StackTraceElement::create(mirror, method, version, bci, cpref, CHECK_0);
   return element;
 }
 
 oop java_lang_StackTraceElement::create(Handle mirror, int method_id,
-                                        int version, int bci, TRAPS) {
+                                        int version, int bci, int cpref, TRAPS) {
   // Allocate java.lang.StackTraceElement instance
   Klass* k = SystemDictionary::StackTraceElement_klass();
   assert(k != NULL, "must be loaded in 1.4+");
@@ -1876,17 +1895,13 @@
   oop classname = StringTable::intern((char*) str, CHECK_0);
   java_lang_StackTraceElement::set_declaringClass(element(), classname);
 
-  Method* method = holder->method_with_idnum(method_id);
-  // Method on stack may be obsolete because it was redefined so cannot be
-  // found by idnum.
-  if (method == NULL) {
-    // leave name and fileName null
-    java_lang_StackTraceElement::set_lineNumber(element(), -1);
-    return element();
-  }
+  Method* method = holder->method_with_orig_idnum(method_id, version);
+
+  // The method can be NULL if the requested class version is gone
+  Symbol* sym = (method != NULL) ? method->name() : holder->constants()->symbol_at(cpref);
 
   // Fill in method name
-  oop methodname = StringTable::intern(method->name(), CHECK_0);
+  oop methodname = StringTable::intern(sym, CHECK_0);
   java_lang_StackTraceElement::set_methodName(element(), methodname);
 
   if (!version_matches(method, version)) {
@@ -1895,6 +1910,11 @@
     java_lang_StackTraceElement::set_lineNumber(element(), -1);
   } else {
     // Fill in source file name and line number.
+    // Use specific ik version as a holder since the mirror might
+    // refer to version that is now obsolete and no longer accessible
+    // via the previous versions list.
+    holder = holder->get_klass_version(version);
+    assert(holder != NULL, "sanity check");
     Symbol* source = holder->source_file_name();
     if (ShowHiddenFrames && source == NULL)
       source = vmSymbols::unknown_class_name();
@@ -1909,8 +1929,9 @@
 
 oop java_lang_StackTraceElement::create(methodHandle method, int bci, TRAPS) {
   Handle mirror (THREAD, method->method_holder()->java_mirror());
-  int method_id = method->method_idnum();
-  return create(mirror, method_id, method->constants()->version(), bci, THREAD);
+  int method_id = method->orig_method_idnum();
+  int cpref = method->name_index();
+  return create(mirror, method_id, method->constants()->version(), bci, cpref, THREAD);
 }
 
 void java_lang_reflect_AccessibleObject::compute_offsets() {
@@ -2811,33 +2832,6 @@
   return (flags(mname) & (MN_IS_METHOD | MN_IS_CONSTRUCTOR)) > 0;
 }
 
-#if INCLUDE_JVMTI
-// Can be executed on VM thread only
-void java_lang_invoke_MemberName::adjust_vmtarget(oop mname, Method* old_method,
-                                                  Method* new_method, bool* trace_name_printed) {
-  assert(is_method(mname), "wrong type");
-  assert(Thread::current()->is_VM_thread(), "not VM thread");
-
-  Method* target = (Method*)mname->address_field(_vmtarget_offset);
-  if (target == old_method) {
-    mname->address_field_put(_vmtarget_offset, (address)new_method);
-
-    if (RC_TRACE_IN_RANGE(0x00100000, 0x00400000)) {
-      if (!(*trace_name_printed)) {
-        // RC_TRACE_MESG macro has an embedded ResourceMark
-        RC_TRACE_MESG(("adjust: name=%s",
-                       old_method->method_holder()->external_name()));
-        *trace_name_printed = true;
-      }
-      // RC_TRACE macro has an embedded ResourceMark
-      RC_TRACE(0x00400000, ("MemberName method update: %s(%s)",
-                            new_method->name()->as_C_string(),
-                            new_method->signature()->as_C_string()));
-    }
-  }
-}
-#endif // INCLUDE_JVMTI
-
 void java_lang_invoke_MemberName::set_vmtarget(oop mname, Metadata* ref) {
   assert(is_instance(mname), "wrong type");
   // check the type of the vmtarget
@@ -2972,14 +2966,49 @@
 // Support for java_lang_invoke_CallSite
 
 int java_lang_invoke_CallSite::_target_offset;
+int java_lang_invoke_CallSite::_context_offset;
+int java_lang_invoke_CallSite::_default_context_offset;
 
 void java_lang_invoke_CallSite::compute_offsets() {
   Klass* k = SystemDictionary::CallSite_klass();
   if (k != NULL) {
     compute_offset(_target_offset, k, vmSymbols::target_name(), vmSymbols::java_lang_invoke_MethodHandle_signature());
+    compute_offset(_context_offset, k, vmSymbols::context_name(), vmSymbols::sun_misc_Cleaner_signature());
+    compute_offset(_default_context_offset, k,
+                   vmSymbols::DEFAULT_CONTEXT_name(), vmSymbols::sun_misc_Cleaner_signature(),
+                   /*is_static=*/true, /*allow_super=*/false);
   }
 }
 
+oop java_lang_invoke_CallSite::context_volatile(oop call_site) {
+  assert(java_lang_invoke_CallSite::is_instance(call_site), "");
+
+  oop dep_oop = call_site->obj_field_volatile(_context_offset);
+  return dep_oop;
+}
+
+void java_lang_invoke_CallSite::set_context_volatile(oop call_site, oop context) {
+  assert(java_lang_invoke_CallSite::is_instance(call_site), "");
+  call_site->obj_field_put_volatile(_context_offset, context);
+}
+
+bool java_lang_invoke_CallSite::set_context_cas(oop call_site, oop context, oop expected) {
+  assert(java_lang_invoke_CallSite::is_instance(call_site), "");
+  HeapWord* context_addr = call_site->obj_field_addr<HeapWord>(_context_offset);
+  oop res = oopDesc::atomic_compare_exchange_oop(context, context_addr, expected, true);
+  bool success = (res == expected);
+  if (success) {
+    update_barrier_set((void*)context_addr, context);
+  }
+  return success;
+}
+
+oop java_lang_invoke_CallSite::default_context() {
+  InstanceKlass* ik = InstanceKlass::cast(SystemDictionary::CallSite_klass());
+  oop def_context_oop = ik->java_mirror()->obj_field(_default_context_offset);
+  assert(!oopDesc::is_null(def_context_oop), "");
+  return def_context_oop;
+}
 
 // Support for java_security_AccessControlContext
 
@@ -3606,7 +3635,7 @@
     tty->print_cr("  name: %s, sig: %s, flags: %08x", fs.name()->as_C_string(), fs.signature()->as_C_string(), fs.access_flags().as_int());
   }
 #endif //PRODUCT
-  fatal("Invalid layout of preloaded class");
+  vm_exit_during_initialization("Invalid layout of preloaded class: use -XX:+TraceClassLoading to see the origin of the problem class");
   return -1;
 }
 
--- a/hotspot/src/share/vm/classfile/javaClasses.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/javaClasses.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -485,8 +485,9 @@
     trace_methods_offset = 0,
     trace_bcis_offset    = 1,
     trace_mirrors_offset = 2,
-    trace_next_offset    = 3,
-    trace_size           = 4,
+    trace_cprefs_offset  = 3,
+    trace_next_offset    = 4,
+    trace_size           = 5,
     trace_chunk_size     = 32
   };
 
@@ -497,7 +498,7 @@
   static int static_unassigned_stacktrace_offset;
 
   // Printing
-  static char* print_stack_element_to_buffer(Handle mirror, int method, int version, int bci);
+  static char* print_stack_element_to_buffer(Handle mirror, int method, int version, int bci, int cpref);
   // StackTrace (programmatic access, new since 1.4)
   static void clear_stacktrace(oop throwable);
   // No stack trace available
@@ -519,7 +520,7 @@
   static void set_message(oop throwable, oop value);
   static Symbol* detail_message(oop throwable);
   static void print_stack_element(outputStream *st, Handle mirror, int method,
-                                  int version, int bci);
+                                  int version, int bci, int cpref);
   static void print_stack_element(outputStream *st, methodHandle method, int bci);
   static void print_stack_usage(Handle stream);
 
@@ -961,7 +962,6 @@
   static void set_clock(jlong value);
 };
 
-
 // Interface to java.lang.invoke.MethodHandle objects
 
 class MethodHandleEntry;
@@ -1091,10 +1091,6 @@
 
   static Metadata*      vmtarget(oop mname);
   static void       set_vmtarget(oop mname, Metadata* target);
-#if INCLUDE_JVMTI
-  static void       adjust_vmtarget(oop mname, Method* old_method, Method* new_method,
-                                    bool* trace_name_printed);
-#endif // INCLUDE_JVMTI
 
   static intptr_t       vmindex(oop mname);
   static void       set_vmindex(oop mname, intptr_t index);
@@ -1173,16 +1169,23 @@
 
 private:
   static int _target_offset;
+  static int _context_offset;
+  static int _default_context_offset;
+
 
   static void compute_offsets();
 
 public:
   // Accessors
-  static oop              target(         oop site);
-  static void         set_target(         oop site, oop target);
+  static oop              target(          oop site);
+  static void         set_target(          oop site, oop target);
+  static void         set_target_volatile( oop site, oop target);
 
-  static volatile oop     target_volatile(oop site);
-  static void         set_target_volatile(oop site, oop target);
+  static oop              context_volatile(oop site);
+  static void         set_context_volatile(oop site, oop context);
+  static bool         set_context_cas     (oop site, oop context, oop expected);
+
+  static oop default_context();
 
   // Testers
   static bool is_subclass(Klass* klass) {
@@ -1194,7 +1197,6 @@
   static int target_offset_in_bytes()           { return _target_offset; }
 };
 
-
 // Interface to java.security.AccessControlContext objects
 
 class java_security_AccessControlContext: AllStatic {
@@ -1314,7 +1316,7 @@
   static void set_lineNumber(oop element, int value);
 
   // Create an instance of StackTraceElement
-  static oop create(Handle mirror, int method, int version, int bci, TRAPS);
+  static oop create(Handle mirror, int method, int version, int bci, int cpref, TRAPS);
   static oop create(methodHandle method, int bci, TRAPS);
 
   // Debugging
--- a/hotspot/src/share/vm/classfile/javaClasses.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/javaClasses.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -29,10 +29,6 @@
 #include "oops/oop.inline.hpp"
 #include "oops/oopsHierarchy.hpp"
 
-inline volatile oop java_lang_invoke_CallSite::target_volatile(oop site) {
-  return oop((oopDesc *)(site->obj_field_volatile(_target_offset)));
-}
-
 inline void java_lang_invoke_CallSite::set_target_volatile(oop site, oop target) {
   site->obj_field_put_volatile(_target_offset, target);
 }
--- a/hotspot/src/share/vm/classfile/verifier.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/verifier.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -657,6 +657,7 @@
 
 
     bool this_uninit = false;  // Set to true when invokespecial <init> initialized 'this'
+    bool verified_exc_handlers = false;
 
     // Merge with the next instruction
     {
@@ -688,6 +689,18 @@
         }
       }
 
+      // Look for possible jump target in exception handlers and see if it
+      // matches current_frame.  Do this check here for astore*, dstore*,
+      // fstore*, istore*, and lstore* opcodes because they can change the type
+      // state by adding a local.  JVM Spec says that the incoming type state
+      // should be used for this check.  So, do the check here before a possible
+      // local is added to the type state.
+      if (Bytecodes::is_store_into_local(opcode) && bci >= ex_min && bci < ex_max) {
+        verify_exception_handler_targets(
+          bci, this_uninit, &current_frame, &stackmap_table, CHECK_VERIFY(this));
+        verified_exc_handlers = true;
+      }
+
       switch (opcode) {
         case Bytecodes::_nop :
           no_control_flow = false; break;
@@ -1669,9 +1682,13 @@
       }  // end switch
     }  // end Merge with the next instruction
 
-    // Look for possible jump target in exception handlers and see if it
-    // matches current_frame
-    if (bci >= ex_min && bci < ex_max) {
+    // Look for possible jump target in exception handlers and see if it matches
+    // current_frame.  Don't do this check if it has already been done (for
+    // ([a,d,f,i,l]store* opcodes).  This check cannot be done earlier because
+    // opcodes, such as invokespecial, may set the this_uninit flag.
+    assert(!(verified_exc_handlers && this_uninit),
+      "Exception handler targets got verified before this_uninit got set");
+    if (!verified_exc_handlers && bci >= ex_min && bci < ex_max) {
       verify_exception_handler_targets(
         bci, this_uninit, &current_frame, &stackmap_table, CHECK_VERIFY(this));
     }
@@ -2236,14 +2253,20 @@
 }
 
 // Look at the method's handlers.  If the bci is in the handler's try block
-// then check if the handler_pc is already on the stack.  If not, push it.
+// then check if the handler_pc is already on the stack.  If not, push it
+// unless the handler has already been scanned.
 void ClassVerifier::push_handlers(ExceptionTable* exhandlers,
+                                  GrowableArray<u4>* handler_list,
                                   GrowableArray<u4>* handler_stack,
                                   u4 bci) {
   int exlength = exhandlers->length();
   for(int x = 0; x < exlength; x++) {
     if (bci >= exhandlers->start_pc(x) && bci < exhandlers->end_pc(x)) {
-      handler_stack->append_if_missing(exhandlers->handler_pc(x));
+      u4 exhandler_pc = exhandlers->handler_pc(x);
+      if (!handler_list->contains(exhandler_pc)) {
+        handler_stack->append_if_missing(exhandler_pc);
+        handler_list->append(exhandler_pc);
+      }
     }
   }
 }
@@ -2261,6 +2284,10 @@
   GrowableArray<u4>* bci_stack = new GrowableArray<u4>(30);
   // Create stack for handlers for try blocks containing this handler.
   GrowableArray<u4>* handler_stack = new GrowableArray<u4>(30);
+  // Create list of handlers that have been pushed onto the handler_stack
+  // so that handlers embedded inside of their own TRY blocks only get
+  // scanned once.
+  GrowableArray<u4>* handler_list = new GrowableArray<u4>(30);
   // Create list of visited branch opcodes (goto* and if*).
   GrowableArray<u4>* visited_branches = new GrowableArray<u4>(30);
   ExceptionTable exhandlers(_method());
@@ -2279,7 +2306,7 @@
 
     // If the bytecode is in a TRY block, push its handlers so they
     // will get parsed.
-    push_handlers(&exhandlers, handler_stack, bci);
+    push_handlers(&exhandlers, handler_list, handler_stack, bci);
 
     switch (opcode) {
       case Bytecodes::_if_icmpeq:
--- a/hotspot/src/share/vm/classfile/verifier.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/verifier.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -305,9 +305,10 @@
     bool* this_uninit, constantPoolHandle cp, StackMapTable* stackmap_table,
     TRAPS);
 
-  // Used by ends_in_athrow() to push all handlers that contain bci onto
-  // the handler_stack, if the handler is not already on the stack.
+  // Used by ends_in_athrow() to push all handlers that contain bci onto the
+  // handler_stack, if the handler has not already been pushed on the stack.
   void push_handlers(ExceptionTable* exhandlers,
+                     GrowableArray<u4>* handler_list,
                      GrowableArray<u4>* handler_stack,
                      u4 bci);
 
--- a/hotspot/src/share/vm/classfile/vmSymbols.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/classfile/vmSymbols.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -292,6 +292,7 @@
   template(setTargetNormal_name,                      "setTargetNormal")                          \
   template(setTargetVolatile_name,                    "setTargetVolatile")                        \
   template(setTarget_signature,                       "(Ljava/lang/invoke/MethodHandle;)V")       \
+  template(DEFAULT_CONTEXT_name,                      "DEFAULT_CONTEXT")                          \
   NOT_LP64(  do_alias(intptr_signature,               int_signature)  )                           \
   LP64_ONLY( do_alias(intptr_signature,               long_signature) )                           \
                                                                                                   \
@@ -501,6 +502,7 @@
   template(class_signature,                           "Ljava/lang/Class;")                                        \
   template(string_signature,                          "Ljava/lang/String;")                                       \
   template(reference_signature,                       "Ljava/lang/ref/Reference;")                                \
+  template(sun_misc_Cleaner_signature,                "Lsun/misc/Cleaner;")                                       \
   template(executable_signature,                      "Ljava/lang/reflect/Executable;")                           \
   template(concurrenthashmap_signature,               "Ljava/util/concurrent/ConcurrentHashMap;")                 \
   template(String_StringBuilder_signature,            "(Ljava/lang/String;)Ljava/lang/StringBuilder;")            \
@@ -531,18 +533,17 @@
   template(java_lang_management_ThreadState,           "java/lang/management/ThreadState")                        \
   template(java_lang_management_MemoryUsage,           "java/lang/management/MemoryUsage")                        \
   template(java_lang_management_ThreadInfo,            "java/lang/management/ThreadInfo")                         \
-  template(sun_management_ManagementFactory,           "sun/management/ManagementFactory")                        \
   template(sun_management_Sensor,                      "sun/management/Sensor")                                   \
   template(sun_management_Agent,                       "sun/management/Agent")                                    \
-  template(sun_management_DiagnosticCommandImpl,       "sun/management/DiagnosticCommandImpl")                    \
-  template(sun_management_GarbageCollectorImpl,        "sun/management/GarbageCollectorImpl")                     \
+  template(com_sun_management_internal_DiagnosticCommandImpl,  "com/sun/management/internal/DiagnosticCommandImpl")     \
+  template(com_sun_management_internal_GarbageCollectorExtImpl,"com/sun/management/internal/GarbageCollectorExtImpl")   \
   template(sun_management_ManagementFactoryHelper,     "sun/management/ManagementFactoryHelper")                  \
   template(getDiagnosticCommandMBean_name,             "getDiagnosticCommandMBean")                               \
   template(getDiagnosticCommandMBean_signature,        "()Lcom/sun/management/DiagnosticCommandMBean;")           \
   template(getGcInfoBuilder_name,                      "getGcInfoBuilder")                                        \
-  template(getGcInfoBuilder_signature,                 "()Lsun/management/GcInfoBuilder;")                        \
+  template(getGcInfoBuilder_signature,                 "()Lcom/sun/management/internal/GcInfoBuilder;")           \
   template(com_sun_management_GcInfo,                  "com/sun/management/GcInfo")                               \
-  template(com_sun_management_GcInfo_constructor_signature, "(Lsun/management/GcInfoBuilder;JJJ[Ljava/lang/management/MemoryUsage;[Ljava/lang/management/MemoryUsage;[Ljava/lang/Object;)V") \
+  template(com_sun_management_GcInfo_constructor_signature, "(Lcom/sun/management/internal/GcInfoBuilder;JJJ[Ljava/lang/management/MemoryUsage;[Ljava/lang/management/MemoryUsage;[Ljava/lang/Object;)V") \
   template(createGCNotification_name,                  "createGCNotification")                                    \
   template(createGCNotification_signature,             "(JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/sun/management/GcInfo;)V") \
   template(createDiagnosticFrameworkNotification_name, "createDiagnosticFrameworkNotification")                   \
@@ -554,11 +555,12 @@
   template(createGarbageCollectorMBean_signature,      "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/management/GarbageCollectorMBean;") \
   template(trigger_name,                               "trigger")                                                 \
   template(clear_name,                                 "clear")                                                   \
-  template(trigger_method_signature,                   "(ILjava/lang/management/MemoryUsage;)V")                                                 \
+  template(trigger_method_signature,                   "(ILjava/lang/management/MemoryUsage;)V")                  \
   template(startAgent_name,                            "startAgent")                                              \
   template(startRemoteAgent_name,                      "startRemoteManagementAgent")                              \
   template(startLocalAgent_name,                       "startLocalManagementAgent")                               \
   template(stopRemoteAgent_name,                       "stopRemoteManagementAgent")                               \
+  template(getAgentStatus_name,                        "getManagementAgentStatus")                                \
   template(java_lang_management_ThreadInfo_constructor_signature, "(Ljava/lang/Thread;ILjava/lang/Object;Ljava/lang/Thread;JJJJ[Ljava/lang/StackTraceElement;)V") \
   template(java_lang_management_ThreadInfo_with_locks_constructor_signature, "(Ljava/lang/Thread;ILjava/lang/Object;Ljava/lang/Thread;JJJJ[Ljava/lang/StackTraceElement;[Ljava/lang/Object;[I[Ljava/lang/Object;)V") \
   template(long_long_long_long_void_signature,         "(JJJJ)V")                                                 \
@@ -868,9 +870,12 @@
                                                                                                                         \
   /* Custom branch frequencies profiling support for JSR292 */                                                          \
   do_class(java_lang_invoke_MethodHandleImpl,               "java/lang/invoke/MethodHandleImpl")                        \
-  do_intrinsic(_profileBoolean, java_lang_invoke_MethodHandleImpl, profileBoolean_name, profileBoolean_signature,    F_S)  \
-   do_name(     profileBoolean_name,                               "profileBoolean")                                     \
-   do_signature(profileBoolean_signature,                           "(Z[I)Z")                                            \
+  do_intrinsic(_profileBoolean, java_lang_invoke_MethodHandleImpl, profileBoolean_name, profileBoolean_signature, F_S)  \
+   do_name(     profileBoolean_name,                             "profileBoolean")                                      \
+   do_signature(profileBoolean_signature,                        "(Z[I)Z")                                              \
+  do_intrinsic(_isCompileConstant, java_lang_invoke_MethodHandleImpl, isCompileConstant_name, isCompileConstant_signature, F_S) \
+   do_name(     isCompileConstant_name,                          "isCompileConstant")                                   \
+   do_alias(    isCompileConstant_signature,                      object_boolean_signature)                             \
                                                                                                                         \
   /* unsafe memory references (there are a lot of them...) */                                                           \
   do_signature(getObject_signature,       "(Ljava/lang/Object;J)Ljava/lang/Object;")                                    \
@@ -950,6 +955,20 @@
   do_intrinsic(_putFloatVolatile,         sun_misc_Unsafe,        putFloatVolatile_name, putFloat_signature,     F_RN)  \
   do_intrinsic(_putDoubleVolatile,        sun_misc_Unsafe,        putDoubleVolatile_name, putDouble_signature,   F_RN)  \
                                                                                                                         \
+  do_name(getShortUnaligned_name,"getShortUnaligned")     do_name(putShortUnaligned_name,"putShortUnaligned")           \
+  do_name(getCharUnaligned_name,"getCharUnaligned")       do_name(putCharUnaligned_name,"putCharUnaligned")             \
+  do_name(getIntUnaligned_name,"getIntUnaligned")         do_name(putIntUnaligned_name,"putIntUnaligned")               \
+  do_name(getLongUnaligned_name,"getLongUnaligned")       do_name(putLongUnaligned_name,"putLongUnaligned")             \
+                                                                                                                        \
+  do_intrinsic(_getShortUnaligned,         sun_misc_Unsafe,        getShortUnaligned_name, getShort_signature,     F_R)  \
+  do_intrinsic(_getCharUnaligned,          sun_misc_Unsafe,        getCharUnaligned_name, getChar_signature,       F_R)  \
+  do_intrinsic(_getIntUnaligned,           sun_misc_Unsafe,        getIntUnaligned_name, getInt_signature,         F_R)  \
+  do_intrinsic(_getLongUnaligned,          sun_misc_Unsafe,        getLongUnaligned_name, getLong_signature,       F_R)  \
+  do_intrinsic(_putShortUnaligned,         sun_misc_Unsafe,        putShortUnaligned_name, putShort_signature,     F_R)  \
+  do_intrinsic(_putCharUnaligned,          sun_misc_Unsafe,        putCharUnaligned_name, putChar_signature,       F_R)  \
+  do_intrinsic(_putIntUnaligned,           sun_misc_Unsafe,        putIntUnaligned_name, putInt_signature,         F_R)  \
+  do_intrinsic(_putLongUnaligned,          sun_misc_Unsafe,        putLongUnaligned_name, putLong_signature,       F_R)  \
+                                                                                                                        \
   /* %%% these are redundant except perhaps for getAddress, but Unsafe has native methods for them */                   \
   do_signature(getByte_raw_signature,     "(J)B")                                                                       \
   do_signature(putByte_raw_signature,     "(JB)V")                                                                      \
--- a/hotspot/src/share/vm/code/codeCache.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/codeCache.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1067,8 +1067,11 @@
   int marked = 0;
   {
     MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
-    InstanceKlass* call_site_klass = InstanceKlass::cast(call_site->klass());
-    marked = call_site_klass->mark_dependent_nmethods(changes);
+    InstanceKlass* ctxk = MethodHandles::get_call_site_context(call_site());
+    if (ctxk == NULL) {
+      return; // No dependencies to invalidate yet.
+    }
+    marked = ctxk->mark_dependent_nmethods(changes);
   }
   if (marked > 0) {
     // At least one nmethod has been marked for deoptimization
--- a/hotspot/src/share/vm/code/dependencies.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/dependencies.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -117,8 +117,9 @@
 }
 
 void Dependencies::assert_call_site_target_value(ciCallSite* call_site, ciMethodHandle* method_handle) {
-  check_ctxk(call_site->klass());
-  assert_common_2(call_site_target_value, call_site, method_handle);
+  ciKlass* ctxk = call_site->get_context();
+  check_ctxk(ctxk);
+  assert_common_3(call_site_target_value, ctxk, call_site, method_handle);
 }
 
 // Helper function.  If we are adding a new dep. under ctxk2,
@@ -388,7 +389,7 @@
   3, // unique_concrete_subtypes_2 ctxk, k1, k2
   3, // unique_concrete_methods_2 ctxk, m1, m2
   1, // no_finalizable_subclasses ctxk
-  2  // call_site_target_value call_site, method_handle
+  3  // call_site_target_value ctxk, call_site, method_handle
 };
 
 const char* Dependencies::dep_name(Dependencies::DepType dept) {
@@ -594,7 +595,7 @@
   const int nargs = argument_count();
   GrowableArray<DepArgument>* args = new GrowableArray<DepArgument>(nargs);
   for (int j = 0; j < nargs; j++) {
-    if (type() == call_site_target_value) {
+    if (is_oop_argument(j)) {
       args->push(argument_oop(j));
     } else {
       args->push(argument(j));
@@ -614,7 +615,7 @@
   int nargs = argument_count();
   GrowableArray<DepArgument>* args = new GrowableArray<DepArgument>(nargs);
   for (int j = 0; j < nargs; j++) {
-    if (type() == call_site_target_value) {
+    if (is_oop_argument(j)) {
       args->push(argument_oop(j));
     } else {
       args->push(argument(j));
@@ -710,7 +711,7 @@
  * Returns a unique identifier for each dependency argument.
  */
 uintptr_t Dependencies::DepStream::get_identifier(int i) {
-  if (has_oop_argument()) {
+  if (is_oop_argument(i)) {
     return (uintptr_t)(oopDesc*)argument_oop(i);
   } else {
     return (uintptr_t)argument(i);
@@ -737,7 +738,7 @@
   }
 
   // Some dependencies are using the klass of the first object
-  // argument as implicit context type (e.g. call_site_target_value).
+  // argument as implicit context type.
   {
     int ctxkj = dep_implicit_context_arg(type());
     if (ctxkj >= 0) {
@@ -845,7 +846,13 @@
     assert((uint)n <= (uint)_num_participants, "oob");
     Method* fm = _found_methods[n];
     assert(n == _num_participants || fm != NULL, "proper usage");
-    assert(fm == NULL || fm->method_holder() == _participants[n], "sanity");
+    if (fm != NULL && fm->method_holder() != _participants[n]) {
+      // Default methods from interfaces can be added to classes. In
+      // that case the holder of the method is not the class but the
+      // interface where it's defined.
+      assert(fm->is_default_method(), "sanity");
+      return NULL;
+    }
     return fm;
   }
 
@@ -1508,9 +1515,16 @@
   return find_finalizable_subclass(search_at);
 }
 
-Klass* Dependencies::check_call_site_target_value(oop call_site, oop method_handle, CallSiteDepChange* changes) {
-  assert(call_site    ->is_a(SystemDictionary::CallSite_klass()),     "sanity");
-  assert(method_handle->is_a(SystemDictionary::MethodHandle_klass()), "sanity");
+Klass* Dependencies::check_call_site_target_value(Klass* recorded_ctxk, oop call_site, oop method_handle, CallSiteDepChange* changes) {
+  assert(call_site->is_a(SystemDictionary::CallSite_klass()),     "sanity");
+  assert(!oopDesc::is_null(method_handle), "sanity");
+
+  Klass* call_site_ctxk = MethodHandles::get_call_site_context(call_site);
+  assert(!Klass::is_null(call_site_ctxk), "call site context should be initialized already");
+  if (recorded_ctxk != call_site_ctxk) {
+    // Stale context
+    return recorded_ctxk;
+  }
   if (changes == NULL) {
     // Validate all CallSites
     if (java_lang_invoke_CallSite::target(call_site) != method_handle)
@@ -1525,7 +1539,6 @@
   return NULL;  // assertion still valid
 }
 
-
 void Dependencies::DepStream::trace_and_log_witness(Klass* witness) {
   if (witness != NULL) {
     if (TraceDependencies) {
@@ -1586,7 +1599,7 @@
   Klass* witness = NULL;
   switch (type()) {
   case call_site_target_value:
-    witness = check_call_site_target_value(argument_oop(0), argument_oop(1), changes);
+    witness = check_call_site_target_value(context_type(), argument_oop(1), argument_oop(2), changes);
     break;
   default:
     witness = NULL;
--- a/hotspot/src/share/vm/code/dependencies.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/dependencies.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -174,7 +174,7 @@
     klass_types         = all_types & ~non_klass_types,
 
     non_ctxk_types      = (1 << evol_method),
-    implicit_ctxk_types = (1 << call_site_target_value),
+    implicit_ctxk_types = 0,
     explicit_ctxk_types = all_types & ~(non_ctxk_types | implicit_ctxk_types),
 
     max_arg_count = 3,   // current maximum number of arguments (incl. ctxk)
@@ -330,7 +330,7 @@
   static Klass* check_exclusive_concrete_methods(Klass* ctxk, Method* m1, Method* m2,
                                                    KlassDepChange* changes = NULL);
   static Klass* check_has_no_finalizable_subclasses(Klass* ctxk, KlassDepChange* changes = NULL);
-  static Klass* check_call_site_target_value(oop call_site, oop method_handle, CallSiteDepChange* changes = NULL);
+  static Klass* check_call_site_target_value(Klass* recorded_ctxk, oop call_site, oop method_handle, CallSiteDepChange* changes = NULL);
   // A returned Klass* is NULL if the dependency assertion is still
   // valid.  A non-NULL Klass* is a 'witness' to the assertion
   // failure, a point in the class hierarchy where the assertion has
@@ -496,7 +496,7 @@
     bool next();
 
     DepType type()               { return _type; }
-    bool has_oop_argument()      { return type() == call_site_target_value; }
+    bool is_oop_argument(int i)  { return type() == call_site_target_value && i > 0; }
     uintptr_t get_identifier(int i);
 
     int argument_count()         { return dep_args(type()); }
@@ -682,7 +682,7 @@
       _method_handle(method_handle)
   {
     assert(_call_site()    ->is_a(SystemDictionary::CallSite_klass()),     "must be");
-    assert(_method_handle()->is_a(SystemDictionary::MethodHandle_klass()), "must be");
+    assert(_method_handle.is_null() || _method_handle()->is_a(SystemDictionary::MethodHandle_klass()), "must be");
   }
 
   // What kind of DepChange is this?
--- a/hotspot/src/share/vm/code/nmethod.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/nmethod.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -504,7 +504,7 @@
                                             basic_lock_owner_sp_offset,
                                             basic_lock_sp_offset, oop_maps);
     NOT_PRODUCT(if (nm != NULL)  nmethod_stats.note_native_nmethod(nm));
-    if (PrintAssembly && nm != NULL) {
+    if ((PrintAssembly || CompilerOracle::should_print(method)) && nm != NULL) {
       Disassembler::decode(nm);
     }
   }
@@ -2325,6 +2325,7 @@
             // Dependency checking failed. Print out information about the failed
             // dependency and finally fail with an assert. We can fail here, since
             // dependency checking is never done in a product build.
+            tty->print_cr("Failed dependency:");
             changes.print();
             nm->print();
             nm->print_dependencies();
@@ -2837,11 +2838,21 @@
           st.print(")");
           return st.as_string();
         }
+        case relocInfo::runtime_call_type: {
+          stringStream st;
+          st.print("runtime_call");
+          runtime_call_Relocation* r = iter.runtime_call_reloc();
+          address dest = r->destination();
+          CodeBlob* cb = CodeCache::find_blob(dest);
+          if (cb != NULL) {
+            st.print(" %s", cb->name());
+          }
+          return st.as_string();
+        }
         case relocInfo::virtual_call_type:     return "virtual_call";
         case relocInfo::opt_virtual_call_type: return "optimized virtual_call";
         case relocInfo::static_call_type:      return "static_call";
         case relocInfo::static_stub_type:      return "static_stub";
-        case relocInfo::runtime_call_type:     return "runtime_call";
         case relocInfo::external_word_type:    return "external_word";
         case relocInfo::internal_word_type:    return "internal_word";
         case relocInfo::section_word_type:     return "section_word";
--- a/hotspot/src/share/vm/code/pcDesc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/pcDesc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -54,12 +54,7 @@
   for (ScopeDesc* sd = code->scope_desc_at(real_pc(code));
        sd != NULL;
        sd = sd->sender()) {
-    tty->print("  ");
-    sd->method()->print_short_name(tty);
-    tty->print("  @%d", sd->bci());
-    if (sd->should_reexecute())
-      tty->print("  reexecute=true");
-    tty->cr();
+    sd->print_on(tty);
   }
 #endif
 }
--- a/hotspot/src/share/vm/code/scopeDesc.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/code/scopeDesc.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -157,14 +157,18 @@
 #ifndef PRODUCT
 
 void ScopeDesc::print_value_on(outputStream* st) const {
-  tty->print("   ");
+  st->print("  ");
   method()->print_short_name(st);
   int lineno = method()->line_number_from_bci(bci());
   if (lineno != -1) {
-    st->print_cr("@%d (line %d)", bci(), lineno);
+    st->print("@%d (line %d)", bci(), lineno);
   } else {
-    st->print_cr("@%d", bci());
+    st->print("@%d", bci());
   }
+  if (should_reexecute()) {
+    st->print("  reexecute=true");
+  }
+  st->cr();
 }
 
 void ScopeDesc::print_on(outputStream* st) const {
@@ -174,7 +178,7 @@
 void ScopeDesc::print_on(outputStream* st, PcDesc* pd) const {
   // header
   if (pd != NULL) {
-    tty->print_cr("ScopeDesc(pc=" PTR_FORMAT " offset=%x):", pd->real_pc(_code), pd->pc_offset());
+    st->print_cr("ScopeDesc(pc=" PTR_FORMAT " offset=%x):", pd->real_pc(_code), pd->pc_offset());
   }
 
   print_value_on(st);
@@ -192,7 +196,7 @@
   // locals
   { GrowableArray<ScopeValue*>* l = ((ScopeDesc*) this)->locals();
     if (l != NULL) {
-      tty->print_cr("   Locals");
+      st->print_cr("   Locals");
       for (int index = 0; index < l->length(); index++) {
         st->print("    - l%d: ", index);
         l->at(index)->print_on(st);
@@ -205,7 +209,7 @@
     if (l != NULL) {
       st->print_cr("   Expression stack");
       for (int index = 0; index < l->length(); index++) {
-        st->print("   - @%d: ", index);
+        st->print("    - @%d: ", index);
         l->at(index)->print_on(st);
         st->cr();
       }
@@ -225,12 +229,12 @@
 
 #ifdef COMPILER2
   if (DoEscapeAnalysis && is_top() && _objects != NULL) {
-    tty->print_cr("Objects");
+    st->print_cr("   Objects");
     for (int i = 0; i < _objects->length(); i++) {
       ObjectValue* sv = (ObjectValue*) _objects->at(i);
-      tty->print(" - %d: ", sv->id());
-      sv->print_fields_on(tty);
-      tty->cr();
+      st->print("    - %d: ", sv->id());
+      sv->print_fields_on(st);
+      st->cr();
     }
   }
 #endif // COMPILER2
--- a/hotspot/src/share/vm/compiler/compileBroker.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/compiler/compileBroker.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -172,7 +172,8 @@
     // these methods should be called in a thread safe context
 
     void set_current_method(const char* method) {
-      strncpy(_current_method, method, (size_t)cmname_buffer_length);
+      strncpy(_current_method, method, (size_t)cmname_buffer_length-1);
+      _current_method[cmname_buffer_length-1] = '\0';
       if (UsePerfData) _perf_current_method->set_value(method);
     }
 
--- a/hotspot/src/share/vm/compiler/compilerOracle.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/compiler/compilerOracle.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -673,9 +673,7 @@
       // so read integer and fraction part of double value separately.
       if (sscanf(line, "%*[ \t]%255[0-9]%*[ /\t]%255[0-9]%n", buffer[0], buffer[1], &bytes_read) == 2) {
         char value[512] = "";
-        strncat(value, buffer[0], 255);
-        strcat(value, ".");
-        strncat(value, buffer[1], 255);
+        jio_snprintf(value, sizeof(value), "%s.%s", buffer[0], buffer[1]);
         total_bytes_read += bytes_read;
         return add_option_string(c_name, c_match, m_name, m_match, signature, flag, atof(value));
       } else {
--- a/hotspot/src/share/vm/compiler/disassembler.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/compiler/disassembler.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -300,6 +300,7 @@
         strlen((const char*)arg) > sizeof(buffer) - 1) {
       // Only print this when the mach changes
       strncpy(buffer, (const char*)arg, sizeof(buffer) - 1);
+      buffer[sizeof(buffer) - 1] = '\0';
       output()->print_cr("[Disassembling for mach='%s']", arg);
     }
   } else if (match(event, "format bytes-per-line")) {
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,8 +25,8 @@
 #include "precompiled.hpp"
 #include "gc_implementation/concurrentMarkSweep/adaptiveFreeList.hpp"
 #include "gc_implementation/concurrentMarkSweep/freeChunk.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/freeBlockDictionary.hpp"
-#include "memory/sharedHeap.hpp"
 #include "runtime/globals.hpp"
 #include "runtime/mutex.hpp"
 #include "runtime/orderAccess.inline.hpp"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/cmsOopClosures.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "gc_implementation/concurrentMarkSweep/cmsOopClosures.inline.hpp"
+#include "memory/iterator.inline.hpp"
+#include "memory/specialized_oop_closures.hpp"
+
+// Generate CMS specialized oop_oop_iterate functions.
+SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_CMS(ALL_KLASS_OOP_OOP_ITERATE_DEFN)
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -32,6 +32,7 @@
 #include "gc_interface/collectedHeap.inline.hpp"
 #include "memory/allocation.inline.hpp"
 #include "memory/blockOffsetTable.inline.hpp"
+#include "memory/genCollectedHeap.hpp"
 #include "memory/resourceArea.hpp"
 #include "memory/space.inline.hpp"
 #include "memory/universe.inline.hpp"
@@ -673,10 +674,10 @@
                                                  HeapWord* bottom,              \
                                                  HeapWord* top,                 \
                                                  ClosureType* cl) {             \
-   bool is_par = SharedHeap::heap()->n_par_threads() > 0;                       \
+   bool is_par = GenCollectedHeap::heap()->n_par_threads() > 0;                 \
    if (is_par) {                                                                \
-     assert(SharedHeap::heap()->n_par_threads() ==                              \
-            SharedHeap::heap()->workers()->active_workers(), "Mismatch");       \
+     assert(GenCollectedHeap::heap()->n_par_threads() ==                        \
+            GenCollectedHeap::heap()->workers()->active_workers(), "Mismatch"); \
      walk_mem_region_with_cl_par(mr, bottom, top, cl);                          \
    } else {                                                                     \
      walk_mem_region_with_cl_nopar(mr, bottom, top, cl);                        \
@@ -1907,11 +1908,11 @@
   assert(chunk->is_free() && ffc->is_free(), "Error");
   _bt.split_block((HeapWord*)chunk, chunk->size(), new_size);
   if (rem_sz < SmallForDictionary) {
-    bool is_par = (SharedHeap::heap()->n_par_threads() > 0);
+    bool is_par = (GenCollectedHeap::heap()->n_par_threads() > 0);
     if (is_par) _indexedFreeListParLocks[rem_sz]->lock();
     assert(!is_par ||
-           (SharedHeap::heap()->n_par_threads() ==
-            SharedHeap::heap()->workers()->active_workers()), "Mismatch");
+           (GenCollectedHeap::heap()->n_par_threads() ==
+            GenCollectedHeap::heap()->workers()->active_workers()), "Mismatch");
     returnChunkToFreeList(ffc);
     split(size, rem_sz);
     if (is_par) _indexedFreeListParLocks[rem_sz]->unlock();
@@ -1982,7 +1983,7 @@
 
 bool CompactibleFreeListSpace::no_allocs_since_save_marks() {
   assert(_promoInfo.tracking(), "No preceding save_marks?");
-  assert(SharedHeap::heap()->n_par_threads() == 0,
+  assert(GenCollectedHeap::heap()->n_par_threads() == 0,
          "Shouldn't be called if using parallel gc.");
   return _promoInfo.noPromotions();
 }
@@ -1991,7 +1992,7 @@
                                                                             \
 void CompactibleFreeListSpace::                                             \
 oop_since_save_marks_iterate##nv_suffix(OopClosureType* blk) {              \
-  assert(SharedHeap::heap()->n_par_threads() == 0,                          \
+  assert(GenCollectedHeap::heap()->n_par_threads() == 0,                    \
          "Shouldn't be called (yet) during parallel part of gc.");          \
   _promoInfo.promoted_oops_iterate##nv_suffix(blk);                         \
   /*                                                                        \
@@ -2442,11 +2443,10 @@
   {
     VerifyAllOopsClosure cl(_collector, this, span, past_remark,
       _collector->markBitMap());
-    CollectedHeap* ch = Universe::heap();
 
     // Iterate over all oops in the heap. Uses the _no_header version
     // since we are not interested in following the klass pointers.
-    ch->oop_iterate_no_header(&cl);
+    GenCollectedHeap::heap()->oop_iterate_no_header(&cl);
   }
 
   if (VerifyObjectStartArray) {
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,7 +28,7 @@
 #include "gc_implementation/concurrentMarkSweep/adaptiveFreeList.hpp"
 #include "gc_implementation/concurrentMarkSweep/promotionInfo.hpp"
 #include "memory/binaryTreeDictionary.hpp"
-#include "memory/blockOffsetTable.inline.hpp"
+#include "memory/blockOffsetTable.hpp"
 #include "memory/freeList.hpp"
 #include "memory/space.hpp"
 
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -53,6 +53,7 @@
 #include "memory/padded.hpp"
 #include "memory/referencePolicy.hpp"
 #include "memory/resourceArea.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "memory/tenuredGeneration.hpp"
 #include "oops/oop.inline.hpp"
 #include "prims/jvmtiExport.hpp"
@@ -64,6 +65,7 @@
 #include "runtime/vmThread.hpp"
 #include "services/memoryService.hpp"
 #include "services/runtimeService.hpp"
+#include "utilities/stack.inline.hpp"
 
 // statics
 CMSCollector* ConcurrentMarkSweepGeneration::_collector = NULL;
@@ -208,10 +210,6 @@
                                            use_adaptive_freelists,
                                            dictionaryChoice);
   NOT_PRODUCT(debug_cms_space = _cmsSpace;)
-  if (_cmsSpace == NULL) {
-    vm_exit_during_initialization(
-      "CompactibleFreeListSpace allocation failure");
-  }
   _cmsSpace->_gen = this;
 
   _gc_stats = new CMSGCStats();
@@ -230,14 +228,8 @@
     typedef CMSParGCThreadState* CMSParGCThreadStatePtr;
     _par_gc_thread_states =
       NEW_C_HEAP_ARRAY(CMSParGCThreadStatePtr, ParallelGCThreads, mtGC);
-    if (_par_gc_thread_states == NULL) {
-      vm_exit_during_initialization("Could not allocate par gc structs");
-    }
     for (uint i = 0; i < ParallelGCThreads; i++) {
       _par_gc_thread_states[i] = new CMSParGCThreadState(cmsSpace());
-      if (_par_gc_thread_states[i] == NULL) {
-        vm_exit_during_initialization("Could not allocate par gc structs");
-      }
     }
   } else {
     _par_gc_thread_states = NULL;
@@ -308,8 +300,6 @@
 
 AdaptiveSizePolicy* CMSCollector::size_policy() {
   GenCollectedHeap* gch = GenCollectedHeap::heap();
-  assert(gch->kind() == CollectedHeap::GenCollectedHeap,
-    "Wrong type of heap");
   return gch->gen_policy()->size_policy();
 }
 
@@ -586,11 +576,6 @@
         return;
       }
       _hash_seed = NEW_C_HEAP_ARRAY(int, num_queues, mtGC);
-      if (_hash_seed == NULL) {
-        warning("_hash_seed array allocation failure");
-        return;
-      }
-
       typedef Padded<OopTaskQueue> PaddedOopTaskQueue;
       for (i = 0; i < num_queues; i++) {
         PaddedOopTaskQueue *q = new PaddedOopTaskQueue();
@@ -633,12 +618,7 @@
     _eden_chunk_index = 0;
     _eden_chunk_capacity = (_young_gen->max_capacity()+CMSSamplingGrain)/CMSSamplingGrain;
     _eden_chunk_array = NEW_C_HEAP_ARRAY(HeapWord*, _eden_chunk_capacity, mtGC);
-    if (_eden_chunk_array == NULL) {
-      _eden_chunk_capacity = 0;
-      warning("GC/CMS: _eden_chunk_array allocation failure");
-    }
-  }
-  assert(_eden_chunk_array != NULL || _eden_chunk_capacity == 0, "Error");
+  }
 
   // Support for parallelizing survivor space rescan
   if ((CMSParallelRemarkEnabled && CMSParallelSurvivorRemarkEnabled) || CMSParallelInitialMarkEnabled) {
@@ -648,52 +628,15 @@
     _survivor_plab_array  = NEW_C_HEAP_ARRAY(ChunkArray, ParallelGCThreads, mtGC);
     _survivor_chunk_array = NEW_C_HEAP_ARRAY(HeapWord*, 2*max_plab_samples, mtGC);
     _cursor               = NEW_C_HEAP_ARRAY(size_t, ParallelGCThreads, mtGC);
-    if (_survivor_plab_array == NULL || _survivor_chunk_array == NULL
-        || _cursor == NULL) {
-      warning("Failed to allocate survivor plab/chunk array");
-      if (_survivor_plab_array  != NULL) {
-        FREE_C_HEAP_ARRAY(ChunkArray, _survivor_plab_array);
-        _survivor_plab_array = NULL;
-      }
-      if (_survivor_chunk_array != NULL) {
-        FREE_C_HEAP_ARRAY(HeapWord*, _survivor_chunk_array);
-        _survivor_chunk_array = NULL;
-      }
-      if (_cursor != NULL) {
-        FREE_C_HEAP_ARRAY(size_t, _cursor);
-        _cursor = NULL;
-      }
-    } else {
-      _survivor_chunk_capacity = 2*max_plab_samples;
-      for (uint i = 0; i < ParallelGCThreads; i++) {
-        HeapWord** vec = NEW_C_HEAP_ARRAY(HeapWord*, max_plab_samples, mtGC);
-        if (vec == NULL) {
-          warning("Failed to allocate survivor plab array");
-          for (int j = i; j > 0; j--) {
-            FREE_C_HEAP_ARRAY(HeapWord*, _survivor_plab_array[j-1].array());
-          }
-          FREE_C_HEAP_ARRAY(ChunkArray, _survivor_plab_array);
-          FREE_C_HEAP_ARRAY(HeapWord*, _survivor_chunk_array);
-          _survivor_plab_array = NULL;
-          _survivor_chunk_array = NULL;
-          _survivor_chunk_capacity = 0;
-          break;
-        } else {
-          ChunkArray* cur =
-            ::new (&_survivor_plab_array[i]) ChunkArray(vec,
-                                                        max_plab_samples);
-          assert(cur->end() == 0, "Should be 0");
-          assert(cur->array() == vec, "Should be vec");
-          assert(cur->capacity() == max_plab_samples, "Error");
-        }
-      }
-    }
-  }
-  assert(   (   _survivor_plab_array  != NULL
-             && _survivor_chunk_array != NULL)
-         || (   _survivor_chunk_capacity == 0
-             && _survivor_chunk_index == 0),
-         "Error");
+    _survivor_chunk_capacity = 2*max_plab_samples;
+    for (uint i = 0; i < ParallelGCThreads; i++) {
+      HeapWord** vec = NEW_C_HEAP_ARRAY(HeapWord*, max_plab_samples, mtGC);
+      ChunkArray* cur = ::new (&_survivor_plab_array[i]) ChunkArray(vec, max_plab_samples);
+      assert(cur->end() == 0, "Should be 0");
+      assert(cur->array() == vec, "Should be vec");
+      assert(cur->capacity() == max_plab_samples, "Error");
+    }
+  }
 
   NOT_PRODUCT(_overflow_counter = CMSMarkStackOverflowInterval;)
   _gc_counters = new CollectorCounters("CMS", 1);
@@ -1037,7 +980,7 @@
   assert_lock_strong(freelistLock());
 
 #ifndef PRODUCT
-  if (Universe::heap()->promotion_should_fail()) {
+  if (GenCollectedHeap::heap()->promotion_should_fail()) {
     return NULL;
   }
 #endif  // #ifndef PRODUCT
@@ -1114,7 +1057,7 @@
                                            oop old, markOop m,
                                            size_t word_sz) {
 #ifndef PRODUCT
-  if (Universe::heap()->promotion_should_fail()) {
+  if (GenCollectedHeap::heap()->promotion_should_fail()) {
     return NULL;
   }
 #endif  // #ifndef PRODUCT
@@ -2524,7 +2467,7 @@
   verification_mark_bm()->iterate(&vcl);
   if (vcl.failed()) {
     gclog_or_tty->print("Verification failed");
-    Universe::heap()->print_on(gclog_or_tty);
+    gch->print_on(gclog_or_tty);
     fatal("CMS: failed marking verification after remark");
   }
 }
@@ -3071,10 +3014,10 @@
       gch->set_par_threads(n_workers);
       initialize_sequential_subtasks_for_young_gen_rescan(n_workers);
       if (n_workers > 1) {
-        GenCollectedHeap::StrongRootsScope srs(gch);
+        StrongRootsScope srs;
         workers->run_task(&tsk);
       } else {
-        GenCollectedHeap::StrongRootsScope srs(gch);
+        StrongRootsScope srs;
         tsk.work(0);
       }
       gch->set_par_threads(0);
@@ -5169,11 +5112,11 @@
     // necessarily be so, since it's possible that we are doing
     // ST marking.
     ReferenceProcessorMTDiscoveryMutator mt(ref_processor(), true);
-    GenCollectedHeap::StrongRootsScope srs(gch);
+    StrongRootsScope srs;
     workers->run_task(&tsk);
   } else {
     ReferenceProcessorMTDiscoveryMutator mt(ref_processor(), false);
-    GenCollectedHeap::StrongRootsScope srs(gch);
+    StrongRootsScope srs;
     tsk.work(0);
   }
 
@@ -5241,7 +5184,7 @@
     verify_work_stacks_empty();
 
     gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel.
-    GenCollectedHeap::StrongRootsScope srs(gch);
+    StrongRootsScope srs;
 
     gch->gen_process_roots(_cmsGen->level(),
                            true,  // younger gens as roots
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -35,11 +35,11 @@
 #include "memory/freeBlockDictionary.hpp"
 #include "memory/iterator.hpp"
 #include "memory/space.hpp"
+#include "memory/virtualspace.hpp"
 #include "runtime/mutexLocker.hpp"
-#include "runtime/virtualspace.hpp"
 #include "services/memoryService.hpp"
-#include "utilities/bitMap.inline.hpp"
-#include "utilities/stack.inline.hpp"
+#include "utilities/bitMap.hpp"
+#include "utilities/stack.hpp"
 #include "utilities/taskqueue.hpp"
 #include "utilities/yieldingWorkgroup.hpp"
 
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -27,7 +27,7 @@
 
 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp"
 #include "gc_implementation/shared/concurrentGCThread.hpp"
-#include "runtime/thread.inline.hpp"
+#include "runtime/thread.hpp"
 
 class ConcurrentMarkSweepGeneration;
 class CMSCollector;
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/promotionInfo.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/promotionInfo.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,6 +23,7 @@
  */
 
 #include "precompiled.hpp"
+#include "memory/genOopClosures.hpp"
 #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp"
 #include "gc_implementation/concurrentMarkSweep/promotionInfo.hpp"
 #include "oops/markOop.inline.hpp"
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -62,7 +62,7 @@
     HandleMark hm;
     FreelistLocker x(_collector);
     MutexLockerEx  y(_collector->bitMapLock(), Mutex::_no_safepoint_check_flag);
-    Universe::heap()->prepare_for_verify();
+    GenCollectedHeap::heap()->prepare_for_verify();
     Universe::verify();
   }
 }
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -34,6 +34,7 @@
 #include "gc_implementation/g1/g1Log.hpp"
 #include "gc_implementation/g1/g1OopClosures.inline.hpp"
 #include "gc_implementation/g1/g1RemSet.hpp"
+#include "gc_implementation/g1/g1StringDedup.hpp"
 #include "gc_implementation/g1/heapRegion.inline.hpp"
 #include "gc_implementation/g1/heapRegionManager.inline.hpp"
 #include "gc_implementation/g1/heapRegionRemSet.hpp"
@@ -46,6 +47,7 @@
 #include "memory/genOopClosures.inline.hpp"
 #include "memory/referencePolicy.hpp"
 #include "memory/resourceArea.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/handles.inline.hpp"
 #include "runtime/java.hpp"
@@ -115,7 +117,7 @@
 }
 
 size_t CMBitMap::compute_size(size_t heap_size) {
-  return heap_size / mark_distance();
+  return ReservedSpace::allocation_align_size_up(heap_size / mark_distance());
 }
 
 size_t CMBitMap::mark_distance() {
@@ -941,13 +943,6 @@
 
   _has_aborted = false;
 
-#ifndef PRODUCT
-  if (G1PrintReachableAtInitialMark) {
-    print_reachable("at-cycle-start",
-                    VerifyOption_G1UsePrevMarking, true /* all */);
-  }
-#endif
-
   // Initialize marking structures. This has to be done in a STW phase.
   reset();
 
@@ -1325,7 +1320,7 @@
 
   if (VerifyDuringGC) {
     HandleMark hm;  // handle scope
-    Universe::heap()->prepare_for_verify();
+    g1h->prepare_for_verify();
     Universe::verify(VerifyOption_G1UsePrevMarking,
                      " VerifyDuringGC:(before)");
   }
@@ -1352,7 +1347,7 @@
     // Verify the heap w.r.t. the previous marking bitmap.
     if (VerifyDuringGC) {
       HandleMark hm;  // handle scope
-      Universe::heap()->prepare_for_verify();
+      g1h->prepare_for_verify();
       Universe::verify(VerifyOption_G1UsePrevMarking,
                        " VerifyDuringGC:(overflow)");
     }
@@ -1378,7 +1373,7 @@
 
     if (VerifyDuringGC) {
       HandleMark hm;  // handle scope
-      Universe::heap()->prepare_for_verify();
+      g1h->prepare_for_verify();
       Universe::verify(VerifyOption_G1UseNextMarking,
                        " VerifyDuringGC:(after)");
     }
@@ -1986,13 +1981,13 @@
 
   if (VerifyDuringGC) {
     HandleMark hm;  // handle scope
-    Universe::heap()->prepare_for_verify();
+    g1h->prepare_for_verify();
     Universe::verify(VerifyOption_G1UsePrevMarking,
                      " VerifyDuringGC:(before)");
   }
   g1h->check_bitmaps("Cleanup Start");
 
-  G1CollectorPolicy* g1p = G1CollectedHeap::heap()->g1_policy();
+  G1CollectorPolicy* g1p = g1h->g1_policy();
   g1p->record_concurrent_mark_cleanup_start();
 
   double start = os::elapsedTime();
@@ -2097,7 +2092,7 @@
 
   if (VerifyDuringGC) {
     HandleMark hm;  // handle scope
-    Universe::heap()->prepare_for_verify();
+    g1h->prepare_for_verify();
     Universe::verify(VerifyOption_G1UsePrevMarking,
                      " VerifyDuringGC:(after)");
   }
@@ -2650,7 +2645,7 @@
 
   g1h->ensure_parsability(false);
 
-  G1CollectedHeap::StrongRootsScope srs(g1h);
+  StrongRootsScope srs;
   // this is remark, so we'll use up all active threads
   uint active_workers = g1h->workers()->active_workers();
   if (active_workers == 0) {
@@ -2682,166 +2677,6 @@
   print_stats();
 }
 
-#ifndef PRODUCT
-
-class PrintReachableOopClosure: public OopClosure {
-private:
-  G1CollectedHeap* _g1h;
-  outputStream*    _out;
-  VerifyOption     _vo;
-  bool             _all;
-
-public:
-  PrintReachableOopClosure(outputStream* out,
-                           VerifyOption  vo,
-                           bool          all) :
-    _g1h(G1CollectedHeap::heap()),
-    _out(out), _vo(vo), _all(all) { }
-
-  void do_oop(narrowOop* p) { do_oop_work(p); }
-  void do_oop(      oop* p) { do_oop_work(p); }
-
-  template <class T> void do_oop_work(T* p) {
-    oop         obj = oopDesc::load_decode_heap_oop(p);
-    const char* str = NULL;
-    const char* str2 = "";
-
-    if (obj == NULL) {
-      str = "";
-    } else if (!_g1h->is_in_g1_reserved(obj)) {
-      str = " O";
-    } else {
-      HeapRegion* hr  = _g1h->heap_region_containing(obj);
-      bool over_tams = _g1h->allocated_since_marking(obj, hr, _vo);
-      bool marked = _g1h->is_marked(obj, _vo);
-
-      if (over_tams) {
-        str = " >";
-        if (marked) {
-          str2 = " AND MARKED";
-        }
-      } else if (marked) {
-        str = " M";
-      } else {
-        str = " NOT";
-      }
-    }
-
-    _out->print_cr("  "PTR_FORMAT": "PTR_FORMAT"%s%s",
-                   p2i(p), p2i((void*) obj), str, str2);
-  }
-};
-
-class PrintReachableObjectClosure : public ObjectClosure {
-private:
-  G1CollectedHeap* _g1h;
-  outputStream*    _out;
-  VerifyOption     _vo;
-  bool             _all;
-  HeapRegion*      _hr;
-
-public:
-  PrintReachableObjectClosure(outputStream* out,
-                              VerifyOption  vo,
-                              bool          all,
-                              HeapRegion*   hr) :
-    _g1h(G1CollectedHeap::heap()),
-    _out(out), _vo(vo), _all(all), _hr(hr) { }
-
-  void do_object(oop o) {
-    bool over_tams = _g1h->allocated_since_marking(o, _hr, _vo);
-    bool marked = _g1h->is_marked(o, _vo);
-    bool print_it = _all || over_tams || marked;
-
-    if (print_it) {
-      _out->print_cr(" "PTR_FORMAT"%s",
-                     p2i((void *)o), (over_tams) ? " >" : (marked) ? " M" : "");
-      PrintReachableOopClosure oopCl(_out, _vo, _all);
-      o->oop_iterate_no_header(&oopCl);
-    }
-  }
-};
-
-class PrintReachableRegionClosure : public HeapRegionClosure {
-private:
-  G1CollectedHeap* _g1h;
-  outputStream*    _out;
-  VerifyOption     _vo;
-  bool             _all;
-
-public:
-  bool doHeapRegion(HeapRegion* hr) {
-    HeapWord* b = hr->bottom();
-    HeapWord* e = hr->end();
-    HeapWord* t = hr->top();
-    HeapWord* p = _g1h->top_at_mark_start(hr, _vo);
-    _out->print_cr("** ["PTR_FORMAT", "PTR_FORMAT"] top: "PTR_FORMAT" "
-                   "TAMS: " PTR_FORMAT, p2i(b), p2i(e), p2i(t), p2i(p));
-    _out->cr();
-
-    HeapWord* from = b;
-    HeapWord* to   = t;
-
-    if (to > from) {
-      _out->print_cr("Objects in [" PTR_FORMAT ", " PTR_FORMAT "]", p2i(from), p2i(to));
-      _out->cr();
-      PrintReachableObjectClosure ocl(_out, _vo, _all, hr);
-      hr->object_iterate_mem_careful(MemRegion(from, to), &ocl);
-      _out->cr();
-    }
-
-    return false;
-  }
-
-  PrintReachableRegionClosure(outputStream* out,
-                              VerifyOption  vo,
-                              bool          all) :
-    _g1h(G1CollectedHeap::heap()), _out(out), _vo(vo), _all(all) { }
-};
-
-void ConcurrentMark::print_reachable(const char* str,
-                                     VerifyOption vo,
-                                     bool all) {
-  gclog_or_tty->cr();
-  gclog_or_tty->print_cr("== Doing heap dump... ");
-
-  if (G1PrintReachableBaseFile == NULL) {
-    gclog_or_tty->print_cr("  #### error: no base file defined");
-    return;
-  }
-
-  if (strlen(G1PrintReachableBaseFile) + 1 + strlen(str) >
-      (JVM_MAXPATHLEN - 1)) {
-    gclog_or_tty->print_cr("  #### error: file name too long");
-    return;
-  }
-
-  char file_name[JVM_MAXPATHLEN];
-  sprintf(file_name, "%s.%s", G1PrintReachableBaseFile, str);
-  gclog_or_tty->print_cr("  dumping to file %s", file_name);
-
-  fileStream fout(file_name);
-  if (!fout.is_open()) {
-    gclog_or_tty->print_cr("  #### error: could not open file");
-    return;
-  }
-
-  outputStream* out = &fout;
-  out->print_cr("-- USING %s", _g1h->top_at_mark_start_str(vo));
-  out->cr();
-
-  out->print_cr("--- ITERATING OVER REGIONS");
-  out->cr();
-  PrintReachableRegionClosure rcl(out, vo, all);
-  _g1h->heap_region_iterate(&rcl);
-  out->cr();
-
-  gclog_or_tty->print_cr("  done");
-  gclog_or_tty->flush();
-}
-
-#endif // PRODUCT
-
 void ConcurrentMark::clearRangePrevBitmap(MemRegion mr) {
   // Note we are overriding the read-only view of the prev map here, via
   // the cast.
@@ -2958,9 +2793,7 @@
 #ifndef PRODUCT
 enum VerifyNoCSetOopsPhase {
   VerifyNoCSetOopsStack,
-  VerifyNoCSetOopsQueues,
-  VerifyNoCSetOopsSATBCompleted,
-  VerifyNoCSetOopsSATBThread
+  VerifyNoCSetOopsQueues
 };
 
 class VerifyNoCSetOopsClosure : public OopClosure, public ObjectClosure  {
@@ -2973,8 +2806,6 @@
     switch (_phase) {
     case VerifyNoCSetOopsStack:         return "Stack";
     case VerifyNoCSetOopsQueues:        return "Queue";
-    case VerifyNoCSetOopsSATBCompleted: return "Completed SATB Buffers";
-    case VerifyNoCSetOopsSATBThread:    return "Thread SATB Buffers";
     default:                            ShouldNotReachHere();
     }
     return NULL;
@@ -3001,7 +2832,7 @@
 
   virtual void do_oop(narrowOop* p) {
     // We should not come across narrow oops while scanning marking
-    // stacks and SATB buffers.
+    // stacks
     ShouldNotReachHere();
   }
 
@@ -3010,10 +2841,7 @@
   }
 };
 
-void ConcurrentMark::verify_no_cset_oops(bool verify_stacks,
-                                         bool verify_enqueued_buffers,
-                                         bool verify_thread_buffers,
-                                         bool verify_fingers) {
+void ConcurrentMark::verify_no_cset_oops() {
   assert(SafepointSynchronize::is_at_safepoint(), "should be at a safepoint");
   if (!G1CollectedHeap::heap()->mark_in_progress()) {
     return;
@@ -3021,65 +2849,47 @@
 
   VerifyNoCSetOopsClosure cl;
 
-  if (verify_stacks) {
-    // Verify entries on the global mark stack
-    cl.set_phase(VerifyNoCSetOopsStack);
-    _markStack.oops_do(&cl);
-
-    // Verify entries on the task queues
-    for (uint i = 0; i < _max_worker_id; i += 1) {
-      cl.set_phase(VerifyNoCSetOopsQueues, i);
-      CMTaskQueue* queue = _task_queues->queue(i);
-      queue->oops_do(&cl);
-    }
-  }
-
-  SATBMarkQueueSet& satb_qs = JavaThread::satb_mark_queue_set();
-
-  // Verify entries on the enqueued SATB buffers
-  if (verify_enqueued_buffers) {
-    cl.set_phase(VerifyNoCSetOopsSATBCompleted);
-    satb_qs.iterate_completed_buffers_read_only(&cl);
-  }
-
-  // Verify entries on the per-thread SATB buffers
-  if (verify_thread_buffers) {
-    cl.set_phase(VerifyNoCSetOopsSATBThread);
-    satb_qs.iterate_thread_buffers_read_only(&cl);
+  // Verify entries on the global mark stack
+  cl.set_phase(VerifyNoCSetOopsStack);
+  _markStack.oops_do(&cl);
+
+  // Verify entries on the task queues
+  for (uint i = 0; i < _max_worker_id; i += 1) {
+    cl.set_phase(VerifyNoCSetOopsQueues, i);
+    CMTaskQueue* queue = _task_queues->queue(i);
+    queue->oops_do(&cl);
   }
 
-  if (verify_fingers) {
-    // Verify the global finger
-    HeapWord* global_finger = finger();
-    if (global_finger != NULL && global_finger < _heap_end) {
-      // The global finger always points to a heap region boundary. We
-      // use heap_region_containing_raw() to get the containing region
-      // given that the global finger could be pointing to a free region
-      // which subsequently becomes continues humongous. If that
-      // happens, heap_region_containing() will return the bottom of the
-      // corresponding starts humongous region and the check below will
-      // not hold any more.
-      // Since we always iterate over all regions, we might get a NULL HeapRegion
-      // here.
-      HeapRegion* global_hr = _g1h->heap_region_containing_raw(global_finger);
-      guarantee(global_hr == NULL || global_finger == global_hr->bottom(),
-                err_msg("global finger: "PTR_FORMAT" region: "HR_FORMAT,
-                        p2i(global_finger), HR_FORMAT_PARAMS(global_hr)));
-    }
-
-    // Verify the task fingers
-    assert(parallel_marking_threads() <= _max_worker_id, "sanity");
-    for (int i = 0; i < (int) parallel_marking_threads(); i += 1) {
-      CMTask* task = _tasks[i];
-      HeapWord* task_finger = task->finger();
-      if (task_finger != NULL && task_finger < _heap_end) {
-        // See above note on the global finger verification.
-        HeapRegion* task_hr = _g1h->heap_region_containing_raw(task_finger);
-        guarantee(task_hr == NULL || task_finger == task_hr->bottom() ||
-                  !task_hr->in_collection_set(),
-                  err_msg("task finger: "PTR_FORMAT" region: "HR_FORMAT,
-                          p2i(task_finger), HR_FORMAT_PARAMS(task_hr)));
-      }
+  // Verify the global finger
+  HeapWord* global_finger = finger();
+  if (global_finger != NULL && global_finger < _heap_end) {
+    // The global finger always points to a heap region boundary. We
+    // use heap_region_containing_raw() to get the containing region
+    // given that the global finger could be pointing to a free region
+    // which subsequently becomes continues humongous. If that
+    // happens, heap_region_containing() will return the bottom of the
+    // corresponding starts humongous region and the check below will
+    // not hold any more.
+    // Since we always iterate over all regions, we might get a NULL HeapRegion
+    // here.
+    HeapRegion* global_hr = _g1h->heap_region_containing_raw(global_finger);
+    guarantee(global_hr == NULL || global_finger == global_hr->bottom(),
+              err_msg("global finger: "PTR_FORMAT" region: "HR_FORMAT,
+                      p2i(global_finger), HR_FORMAT_PARAMS(global_hr)));
+  }
+
+  // Verify the task fingers
+  assert(parallel_marking_threads() <= _max_worker_id, "sanity");
+  for (int i = 0; i < (int) parallel_marking_threads(); i += 1) {
+    CMTask* task = _tasks[i];
+    HeapWord* task_finger = task->finger();
+    if (task_finger != NULL && task_finger < _heap_end) {
+      // See above note on the global finger verification.
+      HeapRegion* task_hr = _g1h->heap_region_containing_raw(task_finger);
+      guarantee(task_hr == NULL || task_finger == task_hr->bottom() ||
+                !task_hr->in_collection_set(),
+                err_msg("task finger: "PTR_FORMAT" region: "HR_FORMAT,
+                        p2i(task_finger), HR_FORMAT_PARAMS(task_hr)));
     }
   }
 }
@@ -3392,22 +3202,29 @@
 }
 #endif
 
-void CMTask::scan_object(oop obj) {
+template<bool scan>
+inline void CMTask::process_grey_object(oop obj) {
+  assert(scan || obj->is_typeArray(), "Skipping scan of grey non-typeArray");
   assert(_nextMarkBitMap->isMarked((HeapWord*) obj), "invariant");
 
   if (_cm->verbose_high()) {
-    gclog_or_tty->print_cr("[%u] we're scanning object "PTR_FORMAT,
+    gclog_or_tty->print_cr("[%u] processing grey object " PTR_FORMAT,
                            _worker_id, p2i((void*) obj));
   }
 
   size_t obj_size = obj->size();
   _words_scanned += obj_size;
 
-  obj->oop_iterate(_cm_oop_closure);
+  if (scan) {
+    obj->oop_iterate(_cm_oop_closure);
+  }
   statsOnly( ++_objs_scanned );
   check_limits();
 }
 
+template void CMTask::process_grey_object<true>(oop);
+template void CMTask::process_grey_object<false>(oop);
+
 // Closure for iteration over bitmaps
 class CMBitMapClosure : public BitMapClosure {
 private:
@@ -3878,12 +3695,11 @@
 
   CMObjectClosure oc(this);
   SATBMarkQueueSet& satb_mq_set = JavaThread::satb_mark_queue_set();
-  satb_mq_set.set_closure(_worker_id, &oc);
 
   // This keeps claiming and applying the closure to completed buffers
   // until we run out of buffers or we need to abort.
   while (!has_aborted() &&
-         satb_mq_set.apply_closure_to_completed_buffer(_worker_id)) {
+         satb_mq_set.apply_closure_to_completed_buffer(&oc)) {
     if (_cm->verbose_medium()) {
       gclog_or_tty->print_cr("[%u] processed an SATB buffer", _worker_id);
     }
@@ -3897,8 +3713,6 @@
          concurrent() ||
          satb_mq_set.completed_buffers_num() == 0, "invariant");
 
-  satb_mq_set.set_closure(_worker_id, NULL);
-
   // again, this was a potentially expensive operation, decrease the
   // limits to get the regular clock call early
   decrease_limits();
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -785,14 +785,9 @@
   }
 
   // Verify that there are no CSet oops on the stacks (taskqueues /
-  // global mark stack), enqueued SATB buffers, per-thread SATB
-  // buffers, and fingers (global / per-task). The boolean parameters
-  // decide which of the above data structures to verify. If marking
-  // is not in progress, it's a no-op.
-  void verify_no_cset_oops(bool verify_stacks,
-                           bool verify_enqueued_buffers,
-                           bool verify_thread_buffers,
-                           bool verify_fingers) PRODUCT_RETURN;
+  // global mark stack) and fingers (global / per-task).
+  // If marking is not in progress, it's a no-op.
+  void verify_no_cset_oops() PRODUCT_RETURN;
 
   bool isPrevMarked(oop p) const {
     assert(p != NULL && p->is_oop(), "expected an oop");
@@ -1100,6 +1095,12 @@
   void regular_clock_call();
   bool concurrent() { return _concurrent; }
 
+  // Test whether objAddr might have already been passed over by the
+  // mark bitmap scan, and so needs to be pushed onto the mark stack.
+  bool is_below_finger(HeapWord* objAddr, HeapWord* global_finger) const;
+
+  template<bool scan> void process_grey_object(oop obj);
+
 public:
   // It resets the task; it should be called right at the beginning of
   // a marking phase.
@@ -1152,7 +1153,7 @@
   inline void deal_with_reference(oop obj);
 
   // It scans an object and visits its children.
-  void scan_object(oop obj);
+  void scan_object(oop obj) { process_grey_object<true>(obj); }
 
   // It pushes an object on the local queue.
   inline void push(oop obj);
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -259,14 +259,35 @@
              ++_local_pushes );
 }
 
-// This determines whether the method below will check both the local
-// and global fingers when determining whether to push on the stack a
-// gray object (value 1) or whether it will only check the global one
-// (value 0). The tradeoffs are that the former will be a bit more
-// accurate and possibly push less on the stack, but it might also be
-// a little bit slower.
+inline bool CMTask::is_below_finger(HeapWord* objAddr,
+                                    HeapWord* global_finger) const {
+  // If objAddr is above the global finger, then the mark bitmap scan
+  // will find it later, and no push is needed.  Similarly, if we have
+  // a current region and objAddr is between the local finger and the
+  // end of the current region, then no push is needed.  The tradeoff
+  // of checking both vs only checking the global finger is that the
+  // local check will be more accurate and so result in fewer pushes,
+  // but may also be a little slower.
+  if (_finger != NULL) {
+    // We have a current region.
 
-#define _CHECK_BOTH_FINGERS_      1
+    // Finger and region values are all NULL or all non-NULL.  We
+    // use _finger to check since we immediately use its value.
+    assert(_curr_region != NULL, "invariant");
+    assert(_region_limit != NULL, "invariant");
+    assert(_region_limit <= global_finger, "invariant");
+
+    // True if objAddr is less than the local finger, or is between
+    // the region limit and the global finger.
+    if (objAddr < _finger) {
+      return true;
+    } else if (objAddr < _region_limit) {
+      return false;
+    } // Else check global finger.
+  }
+  // Check global finger.
+  return objAddr < global_finger;
+}
 
 inline void CMTask::deal_with_reference(oop obj) {
   if (_cm->verbose_high()) {
@@ -297,50 +318,43 @@
           // CAS done in CMBitMap::parMark() call in the routine above.
           HeapWord* global_finger = _cm->finger();
 
-#if _CHECK_BOTH_FINGERS_
-          // we will check both the local and global fingers
-
-          if (_finger != NULL && objAddr < _finger) {
-            if (_cm->verbose_high()) {
-              gclog_or_tty->print_cr("[%u] below the local finger ("PTR_FORMAT"), "
-                                     "pushing it", _worker_id, p2i(_finger));
+          // We only need to push a newly grey object on the mark
+          // stack if it is in a section of memory the mark bitmap
+          // scan has already examined.  Mark bitmap scanning
+          // maintains progress "fingers" for determining that.
+          //
+          // Notice that the global finger might be moving forward
+          // concurrently. This is not a problem. In the worst case, we
+          // mark the object while it is above the global finger and, by
+          // the time we read the global finger, it has moved forward
+          // past this object. In this case, the object will probably
+          // be visited when a task is scanning the region and will also
+          // be pushed on the stack. So, some duplicate work, but no
+          // correctness problems.
+          if (is_below_finger(objAddr, global_finger)) {
+            if (obj->is_typeArray()) {
+              // Immediately process arrays of primitive types, rather
+              // than pushing on the mark stack.  This keeps us from
+              // adding humongous objects to the mark stack that might
+              // be reclaimed before the entry is processed - see
+              // selection of candidates for eager reclaim of humongous
+              // objects.  The cost of the additional type test is
+              // mitigated by avoiding a trip through the mark stack,
+              // by only doing a bookkeeping update and avoiding the
+              // actual scan of the object - a typeArray contains no
+              // references, and the metadata is built-in.
+              process_grey_object<false>(obj);
+            } else {
+              if (_cm->verbose_high()) {
+                gclog_or_tty->print_cr("[%u] below a finger (local: " PTR_FORMAT
+                                       ", global: " PTR_FORMAT ") pushing "
+                                       PTR_FORMAT " on mark stack",
+                                       _worker_id, p2i(_finger),
+                                       p2i(global_finger), p2i(objAddr));
+              }
+              push(obj);
             }
-            push(obj);
-          } else if (_curr_region != NULL && objAddr < _region_limit) {
-            // do nothing
-          } else if (objAddr < global_finger) {
-            // Notice that the global finger might be moving forward
-            // concurrently. This is not a problem. In the worst case, we
-            // mark the object while it is above the global finger and, by
-            // the time we read the global finger, it has moved forward
-            // passed this object. In this case, the object will probably
-            // be visited when a task is scanning the region and will also
-            // be pushed on the stack. So, some duplicate work, but no
-            // correctness problems.
-
-            if (_cm->verbose_high()) {
-              gclog_or_tty->print_cr("[%u] below the global finger "
-                                     "("PTR_FORMAT"), pushing it",
-                                     _worker_id, p2i(global_finger));
-            }
-            push(obj);
-          } else {
-            // do nothing
           }
-#else // _CHECK_BOTH_FINGERS_
-          // we will only check the global finger
-
-          if (objAddr < global_finger) {
-            // see long comment above
-
-            if (_cm->verbose_high()) {
-              gclog_or_tty->print_cr("[%u] below the global finger "
-                                     "("PTR_FORMAT"), pushing it",
-                                     _worker_id, p2i(global_finger));
-            }
-            push(obj);
-          }
-#endif // _CHECK_BOTH_FINGERS_
         }
       }
     }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -110,15 +110,15 @@
   _retained_old_gc_alloc_region = NULL;
 }
 
-G1ParGCAllocBuffer::G1ParGCAllocBuffer(size_t gclab_word_size) :
-  ParGCAllocBuffer(gclab_word_size), _retired(true) { }
+G1PLAB::G1PLAB(size_t gclab_word_size) :
+  PLAB(gclab_word_size), _retired(true) { }
 
 HeapWord* G1ParGCAllocator::allocate_direct_or_new_plab(InCSetState dest,
                                                         size_t word_sz,
                                                         AllocationContext_t context) {
   size_t gclab_word_size = _g1h->desired_plab_sz(dest);
   if (word_sz * 100 < gclab_word_size * ParallelGCBufferWastePct) {
-    G1ParGCAllocBuffer* alloc_buf = alloc_buffer(dest, context);
+    G1PLAB* alloc_buf = alloc_buffer(dest, context);
     add_to_alloc_buffer_waste(alloc_buf->words_remaining());
     alloc_buf->retire();
 
@@ -151,7 +151,7 @@
 
 void G1DefaultParGCAllocator::retire_alloc_buffers() {
   for (uint state = 0; state < InCSetState::Num; state++) {
-    G1ParGCAllocBuffer* const buf = _alloc_buffers[state];
+    G1PLAB* const buf = _alloc_buffers[state];
     if (buf != NULL) {
       add_to_alloc_buffer_waste(buf->words_remaining());
       buf->flush_and_retire_stats(_g1h->alloc_buffer_stats(state));
--- a/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1Allocator.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,7 +28,10 @@
 #include "gc_implementation/g1/g1AllocationContext.hpp"
 #include "gc_implementation/g1/g1AllocRegion.hpp"
 #include "gc_implementation/g1/g1InCSetState.hpp"
-#include "gc_implementation/shared/parGCAllocBuffer.hpp"
+#include "gc_implementation/shared/plab.hpp"
+#include "gc_interface/collectedHeap.hpp"
+
+class EvacuationInfo;
 
 // Base class for G1 allocators.
 class G1Allocator : public CHeapObj<mtGC> {
@@ -144,18 +147,18 @@
   }
 };
 
-class G1ParGCAllocBuffer: public ParGCAllocBuffer {
+class G1PLAB: public PLAB {
 private:
   bool _retired;
 
 public:
-  G1ParGCAllocBuffer(size_t gclab_word_size);
-  virtual ~G1ParGCAllocBuffer() {
+  G1PLAB(size_t gclab_word_size);
+  virtual ~G1PLAB() {
     guarantee(_retired, "Allocation buffer has not been retired");
   }
 
   virtual void set_buf(HeapWord* buf) {
-    ParGCAllocBuffer::set_buf(buf);
+    PLAB::set_buf(buf);
     _retired = false;
   }
 
@@ -163,7 +166,12 @@
     if (_retired) {
       return;
     }
-    ParGCAllocBuffer::retire();
+    PLAB::retire();
+    _retired = true;
+  }
+
+  virtual void flush_and_retire_stats(PLABStats* stats) {
+    PLAB::flush_and_retire_stats(stats);
     _retired = true;
   }
 };
@@ -187,7 +195,7 @@
   void add_to_undo_waste(size_t waste)         { _undo_waste += waste; }
 
   virtual void retire_alloc_buffers() = 0;
-  virtual G1ParGCAllocBuffer* alloc_buffer(InCSetState dest, AllocationContext_t context) = 0;
+  virtual G1PLAB* alloc_buffer(InCSetState dest, AllocationContext_t context) = 0;
 
   // Calculate the survivor space object alignment in bytes. Returns that or 0 if
   // there are no restrictions on survivor alignment.
@@ -208,6 +216,7 @@
     _g1h(g1h), _survivor_alignment_bytes(calc_survivor_alignment_bytes()),
     _alloc_buffer_waste(0), _undo_waste(0) {
   }
+  virtual ~G1ParGCAllocator() { }
 
   static G1ParGCAllocator* create_allocator(G1CollectedHeap* g1h);
 
@@ -226,7 +235,7 @@
   HeapWord* plab_allocate(InCSetState dest,
                           size_t word_sz,
                           AllocationContext_t context) {
-    G1ParGCAllocBuffer* buffer = alloc_buffer(dest, context);
+    G1PLAB* buffer = alloc_buffer(dest, context);
     if (_survivor_alignment_bytes == 0) {
       return buffer->allocate(word_sz);
     } else {
@@ -256,14 +265,14 @@
 };
 
 class G1DefaultParGCAllocator : public G1ParGCAllocator {
-  G1ParGCAllocBuffer  _surviving_alloc_buffer;
-  G1ParGCAllocBuffer  _tenured_alloc_buffer;
-  G1ParGCAllocBuffer* _alloc_buffers[InCSetState::Num];
+  G1PLAB  _surviving_alloc_buffer;
+  G1PLAB  _tenured_alloc_buffer;
+  G1PLAB* _alloc_buffers[InCSetState::Num];
 
 public:
   G1DefaultParGCAllocator(G1CollectedHeap* g1h);
 
-  virtual G1ParGCAllocBuffer* alloc_buffer(InCSetState dest, AllocationContext_t context) {
+  virtual G1PLAB* alloc_buffer(InCSetState dest, AllocationContext_t context) {
     assert(dest.is_valid(),
            err_msg("Allocation buffer index out-of-bounds: " CSETSTATE_FORMAT, dest.value()));
     assert(_alloc_buffers[dest.value()] != NULL,
--- a/hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_implementation/g1/g1CollectedHeap.hpp"
 #include "gc_implementation/g1/g1BlockOffsetTable.inline.hpp"
 #include "gc_implementation/g1/heapRegion.hpp"
 #include "memory/space.hpp"
@@ -303,9 +304,9 @@
   assert(blk_start <= threshold, "blk_start should be at or before threshold");
   assert(pointer_delta(threshold, blk_start) <= N_words,
          "offset should be <= BlockOffsetSharedArray::N");
-  assert(Universe::heap()->is_in_reserved(blk_start),
+  assert(G1CollectedHeap::heap()->is_in_reserved(blk_start),
          "reference must be into the heap");
-  assert(Universe::heap()->is_in_reserved(blk_end-1),
+  assert(G1CollectedHeap::heap()->is_in_reserved(blk_end-1),
          "limit must be within the heap");
   assert(threshold == _array->_reserved.start() + index*N_words,
          "index must agree with threshold");
@@ -458,7 +459,7 @@
 }
 
 HeapWord* G1BlockOffsetArrayContigSpace::initialize_threshold_raw() {
-  assert(!Universe::heap()->is_in_reserved(_array->_offset_array),
+  assert(!G1CollectedHeap::heap()->is_in_reserved(_array->_offset_array),
          "just checking");
   _next_offset_index = _array->index_for_raw(_bottom);
   _next_offset_index++;
@@ -468,7 +469,7 @@
 }
 
 void G1BlockOffsetArrayContigSpace::zero_bottom_entry_raw() {
-  assert(!Universe::heap()->is_in_reserved(_array->_offset_array),
+  assert(!G1CollectedHeap::heap()->is_in_reserved(_array->_offset_array),
          "just checking");
   size_t bottom_index = _array->index_for_raw(_bottom);
   assert(_array->address_for_index_raw(bottom_index) == _bottom,
@@ -477,7 +478,7 @@
 }
 
 HeapWord* G1BlockOffsetArrayContigSpace::initialize_threshold() {
-  assert(!Universe::heap()->is_in_reserved(_array->_offset_array),
+  assert(!G1CollectedHeap::heap()->is_in_reserved(_array->_offset_array),
          "just checking");
   _next_offset_index = _array->index_for(_bottom);
   _next_offset_index++;
--- a/hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 
 #include "gc_implementation/g1/g1RegionToSpaceMapper.hpp"
 #include "memory/memRegion.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/globalDefinitions.hpp"
 
 // The CollectedHeap type requires subtypes to implement a method
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CardCounts.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CardCounts.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -27,7 +27,7 @@
 
 #include "gc_implementation/g1/g1RegionToSpaceMapper.hpp"
 #include "memory/allocation.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/globalDefinitions.hpp"
 
 class CardTableModRefBS;
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -22,11 +22,6 @@
  *
  */
 
-#if !defined(__clang_major__) && defined(__GNUC__)
-// FIXME, formats have issues.  Disable this macro definition, compile, and study warnings for more information.
-#define ATTRIBUTE_PRINTF(x,y)
-#endif
-
 #include "precompiled.hpp"
 #include "classfile/metadataOnStackMark.hpp"
 #include "classfile/stringTable.hpp"
@@ -70,6 +65,7 @@
 #include "runtime/orderAccess.inline.hpp"
 #include "runtime/vmThread.hpp"
 #include "utilities/globalDefinitions.hpp"
+#include "utilities/stack.inline.hpp"
 
 size_t G1CollectedHeap::_humongous_object_threshold_in_words = 0;
 
@@ -200,7 +196,7 @@
     if (!curr->is_young()) {
       gclog_or_tty->print_cr("### YOUNG REGION "PTR_FORMAT"-"PTR_FORMAT" "
                              "incorrectly tagged (y: %d, surv: %d)",
-                             curr->bottom(), curr->end(),
+                             p2i(curr->bottom()), p2i(curr->end()),
                              curr->is_young(), curr->is_survivor());
       ret = false;
     }
@@ -329,8 +325,8 @@
     while (curr != NULL) {
       gclog_or_tty->print_cr("  "HR_FORMAT", P: "PTR_FORMAT ", N: "PTR_FORMAT", age: %4d",
                              HR_FORMAT_PARAMS(curr),
-                             curr->prev_top_at_mark_start(),
-                             curr->next_top_at_mark_start(),
+                             p2i(curr->prev_top_at_mark_start()),
+                             p2i(curr->next_top_at_mark_start()),
                              curr->age_in_surv_rate_group_cond());
       curr = curr->get_next_young_region();
     }
@@ -409,10 +405,6 @@
   return !hr->is_humongous();
 }
 
-// Private class members.
-
-G1CollectedHeap* G1CollectedHeap::_g1h;
-
 // Private methods.
 
 HeapRegion*
@@ -1728,7 +1720,7 @@
 
 
 G1CollectedHeap::G1CollectedHeap(G1CollectorPolicy* policy_) :
-  SharedHeap(),
+  CollectedHeap(),
   _g1_policy(policy_),
   _dirty_card_queue_set(false),
   _into_cset_dirty_card_queue_set(false),
@@ -1746,7 +1738,7 @@
   _secondary_free_list("Secondary Free List", new SecondaryFreeRegionListMtSafeChecker()),
   _old_set("Old Set", false /* humongous */, new OldRegionSetMtSafeChecker()),
   _humongous_set("Master Humongous Set", true /* humongous */, new HumongousRegionSetMtSafeChecker()),
-  _humongous_is_live(),
+  _humongous_reclaim_candidates(),
   _has_humongous_reclaim_candidates(false),
   _free_regions_coming(false),
   _young_list(new YoungList(this)),
@@ -1768,9 +1760,12 @@
   _gc_tracer_stw(new (ResourceObj::C_HEAP, mtGC) G1NewTracer()),
   _gc_tracer_cm(new (ResourceObj::C_HEAP, mtGC) G1OldTracer()) {
 
-  _g1h = this;
-
-  _allocator = G1Allocator::create_allocator(_g1h);
+  _workers = new FlexibleWorkGang("GC Thread", ParallelGCThreads,
+                          /* are_GC_task_threads */true,
+                          /* are_ConcurrentGC_threads */false);
+  _workers->initialize_workers();
+
+  _allocator = G1Allocator::create_allocator(this);
   _humongous_object_threshold_in_words = HeapRegion::GrainWords / 2;
 
   int n_queues = MAX2((int)ParallelGCThreads, 1);
@@ -1797,6 +1792,26 @@
   guarantee(_task_queues != NULL, "task_queues allocation failure.");
 }
 
+G1RegionToSpaceMapper* G1CollectedHeap::create_aux_memory_mapper(const char* description,
+                                                                 size_t size,
+                                                                 size_t translation_factor) {
+  size_t preferred_page_size = os::page_size_for_region_unaligned(size, 1);
+  // Allocate a new reserved space, preferring to use large pages.
+  ReservedSpace rs(size, preferred_page_size);
+  G1RegionToSpaceMapper* result  =
+    G1RegionToSpaceMapper::create_mapper(rs,
+                                         size,
+                                         rs.alignment(),
+                                         HeapRegion::GrainBytes,
+                                         translation_factor,
+                                         mtGC);
+  if (TracePageSizes) {
+    gclog_or_tty->print_cr("G1 '%s': pg_sz=" SIZE_FORMAT " base=" PTR_FORMAT " size=" SIZE_FORMAT " alignment=" SIZE_FORMAT " reqsize=" SIZE_FORMAT,
+                           description, preferred_page_size, p2i(rs.base()), rs.size(), rs.alignment(), size);
+  }
+  return result;
+}
+
 jint G1CollectedHeap::initialize() {
   CollectedHeap::pre_initialize();
   os::enable_vtime();
@@ -1864,57 +1879,35 @@
   ReservedSpace g1_rs = heap_rs.first_part(max_byte_size);
   G1RegionToSpaceMapper* heap_storage =
     G1RegionToSpaceMapper::create_mapper(g1_rs,
+                                         g1_rs.size(),
                                          UseLargePages ? os::large_page_size() : os::vm_page_size(),
                                          HeapRegion::GrainBytes,
                                          1,
                                          mtJavaHeap);
   heap_storage->set_mapping_changed_listener(&_listener);
 
-  // Reserve space for the block offset table. We do not support automatic uncommit
-  // for the card table at this time. BOT only.
-  ReservedSpace bot_rs(G1BlockOffsetSharedArray::compute_size(g1_rs.size() / HeapWordSize));
+  // Create storage for the BOT, card table, card counts table (hot card cache) and the bitmaps.
   G1RegionToSpaceMapper* bot_storage =
-    G1RegionToSpaceMapper::create_mapper(bot_rs,
-                                         os::vm_page_size(),
-                                         HeapRegion::GrainBytes,
-                                         G1BlockOffsetSharedArray::N_bytes,
-                                         mtGC);
+    create_aux_memory_mapper("Block offset table",
+                             G1BlockOffsetSharedArray::compute_size(g1_rs.size() / HeapWordSize),
+                             G1BlockOffsetSharedArray::N_bytes);
 
   ReservedSpace cardtable_rs(G1SATBCardTableLoggingModRefBS::compute_size(g1_rs.size() / HeapWordSize));
   G1RegionToSpaceMapper* cardtable_storage =
-    G1RegionToSpaceMapper::create_mapper(cardtable_rs,
-                                         os::vm_page_size(),
-                                         HeapRegion::GrainBytes,
-                                         G1BlockOffsetSharedArray::N_bytes,
-                                         mtGC);
-
-  // Reserve space for the card counts table.
-  ReservedSpace card_counts_rs(G1BlockOffsetSharedArray::compute_size(g1_rs.size() / HeapWordSize));
+    create_aux_memory_mapper("Card table",
+                             G1SATBCardTableLoggingModRefBS::compute_size(g1_rs.size() / HeapWordSize),
+                             G1BlockOffsetSharedArray::N_bytes);
+
   G1RegionToSpaceMapper* card_counts_storage =
-    G1RegionToSpaceMapper::create_mapper(card_counts_rs,
-                                         os::vm_page_size(),
-                                         HeapRegion::GrainBytes,
-                                         G1BlockOffsetSharedArray::N_bytes,
-                                         mtGC);
-
-  // Reserve space for prev and next bitmap.
+    create_aux_memory_mapper("Card counts table",
+                             G1BlockOffsetSharedArray::compute_size(g1_rs.size() / HeapWordSize),
+                             G1BlockOffsetSharedArray::N_bytes);
+
   size_t bitmap_size = CMBitMap::compute_size(g1_rs.size());
-
-  ReservedSpace prev_bitmap_rs(ReservedSpace::allocation_align_size_up(bitmap_size));
   G1RegionToSpaceMapper* prev_bitmap_storage =
-    G1RegionToSpaceMapper::create_mapper(prev_bitmap_rs,
-                                         os::vm_page_size(),
-                                         HeapRegion::GrainBytes,
-                                         CMBitMap::mark_distance(),
-                                         mtGC);
-
-  ReservedSpace next_bitmap_rs(ReservedSpace::allocation_align_size_up(bitmap_size));
+    create_aux_memory_mapper("Prev Bitmap", bitmap_size, CMBitMap::mark_distance());
   G1RegionToSpaceMapper* next_bitmap_storage =
-    G1RegionToSpaceMapper::create_mapper(next_bitmap_rs,
-                                         os::vm_page_size(),
-                                         HeapRegion::GrainBytes,
-                                         CMBitMap::mark_distance(),
-                                         mtGC);
+    create_aux_memory_mapper("Next Bitmap", bitmap_size, CMBitMap::mark_distance());
 
   _hrm.initialize(heap_storage, prev_bitmap_storage, next_bitmap_storage, bot_storage, cardtable_storage, card_counts_storage);
   g1_barrier_set()->initialize(cardtable_storage);
@@ -1935,10 +1928,14 @@
 
   _bot_shared = new G1BlockOffsetSharedArray(reserved_region(), bot_storage);
 
-  _g1h = this;
-
-  _in_cset_fast_test.initialize(_hrm.reserved().start(), _hrm.reserved().end(), HeapRegion::GrainBytes);
-  _humongous_is_live.initialize(_hrm.reserved().start(), _hrm.reserved().end(), HeapRegion::GrainBytes);
+  {
+    HeapWord* start = _hrm.reserved().start();
+    HeapWord* end = _hrm.reserved().end();
+    size_t granularity = HeapRegion::GrainBytes;
+
+    _in_cset_fast_test.initialize(start, end, granularity);
+    _humongous_reclaim_candidates.initialize(start, end, granularity);
+  }
 
   // Create the ConcurrentMark data structure and thread.
   // (Must do this late, so that "max_regions" is defined.)
@@ -2026,15 +2023,15 @@
   }
 }
 
-void G1CollectedHeap::clear_humongous_is_live_table() {
-  guarantee(G1EagerReclaimHumongousObjects, "Should only be called if true");
-  _humongous_is_live.clear();
-}
-
 size_t G1CollectedHeap::conservative_max_heap_alignment() {
   return HeapRegion::max_region_size();
 }
 
+void G1CollectedHeap::post_initialize() {
+  CollectedHeap::post_initialize();
+  ref_processing_init();
+}
+
 void G1CollectedHeap::ref_processing_init() {
   // Reference processing in G1 currently works as follows:
   //
@@ -2071,7 +2068,6 @@
   //     * Discovery is atomic - i.e. not concurrent.
   //     * Reference discovery will not need a barrier.
 
-  SharedHeap::ref_processing_init();
   MemRegion mr = reserved_region();
 
   // Concurrent Mark ref processor
@@ -2128,6 +2124,7 @@
 }
 
 #ifndef PRODUCT
+
 class CheckGCTimeStampsHRClosure : public HeapRegionClosure {
 private:
   unsigned _gc_time_stamp;
@@ -2462,11 +2459,6 @@
   }
 };
 
-void G1CollectedHeap::oop_iterate(ExtendedOopClosure* cl) {
-  IterateOopClosureRegionClosure blk(cl);
-  heap_region_iterate(&blk);
-}
-
 // Iterates an ObjectClosure over all objects within a HeapRegion.
 
 class IterateObjectClosureRegionClosure: public HeapRegionClosure {
@@ -2486,23 +2478,6 @@
   heap_region_iterate(&blk);
 }
 
-// Calls a SpaceClosure on a HeapRegion.
-
-class SpaceClosureRegionClosure: public HeapRegionClosure {
-  SpaceClosure* _cl;
-public:
-  SpaceClosureRegionClosure(SpaceClosure* cl) : _cl(cl) {}
-  bool doHeapRegion(HeapRegion* r) {
-    _cl->do_space(r);
-    return false;
-  }
-};
-
-void G1CollectedHeap::space_iterate(SpaceClosure* cl) {
-  SpaceClosureRegionClosure blk(cl);
-  heap_region_iterate(&blk);
-}
-
 void G1CollectedHeap::heap_region_iterate(HeapRegionClosure* cl) const {
   _hrm.iterate(cl);
 }
@@ -2639,23 +2614,19 @@
   return result;
 }
 
-Space* G1CollectedHeap::space_containing(const void* addr) const {
-  return heap_region_containing(addr);
-}
-
 HeapWord* G1CollectedHeap::block_start(const void* addr) const {
-  Space* sp = space_containing(addr);
-  return sp->block_start(addr);
+  HeapRegion* hr = heap_region_containing(addr);
+  return hr->block_start(addr);
 }
 
 size_t G1CollectedHeap::block_size(const HeapWord* addr) const {
-  Space* sp = space_containing(addr);
-  return sp->block_size(addr);
+  HeapRegion* hr = heap_region_containing(addr);
+  return hr->block_size(addr);
 }
 
 bool G1CollectedHeap::block_is_obj(const HeapWord* addr) const {
-  Space* sp = space_containing(addr);
-  return sp->block_is_obj(addr);
+  HeapRegion* hr = heap_region_containing(addr);
+  return hr->block_is_obj(addr);
 }
 
 bool G1CollectedHeap::supports_tlab_allocation() const {
@@ -2776,9 +2747,9 @@
       oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
       if (_g1h->is_obj_dead_cond(obj, _vo)) {
         gclog_or_tty->print_cr("Root location "PTR_FORMAT" "
-                              "points to dead obj "PTR_FORMAT, p, (void*) obj);
+                               "points to dead obj "PTR_FORMAT, p2i(p), p2i(obj));
         if (_vo == VerifyOption_G1UseMarkWord) {
-          gclog_or_tty->print_cr("  Mark word: "PTR_FORMAT, (void*)(obj->mark()));
+          gclog_or_tty->print_cr("  Mark word: "INTPTR_FORMAT, (intptr_t)obj->mark());
         }
         obj->print_on(gclog_or_tty);
         _failures = true;
@@ -2826,9 +2797,9 @@
       // contains the nmethod
       if (!hrrs->strong_code_roots_list_contains(_nm)) {
         gclog_or_tty->print_cr("Code root location "PTR_FORMAT" "
-                              "from nmethod "PTR_FORMAT" not in strong "
-                              "code roots for region ["PTR_FORMAT","PTR_FORMAT")",
-                              p, _nm, hr->bottom(), hr->end());
+                               "from nmethod "PTR_FORMAT" not in strong "
+                               "code roots for region ["PTR_FORMAT","PTR_FORMAT")",
+                               p2i(p), p2i(_nm), p2i(hr->bottom()), p2i(hr->end()));
         _failures = true;
       }
     }
@@ -2884,7 +2855,7 @@
     _young_ref_counter_closure.reset_count();
     k->oops_do(&_young_ref_counter_closure);
     if (_young_ref_counter_closure.count() > 0) {
-      guarantee(k->has_modified_oops(), err_msg("Klass " PTR_FORMAT ", has young refs but is not dirty.", k));
+      guarantee(k->has_modified_oops(), err_msg("Klass " PTR_FORMAT ", has young refs but is not dirty.", p2i(k)));
     }
   }
 };
@@ -2945,35 +2916,6 @@
   size_t live_bytes() { return _live_bytes; }
 };
 
-class PrintObjsInRegionClosure : public ObjectClosure {
-  HeapRegion *_hr;
-  G1CollectedHeap *_g1;
-public:
-  PrintObjsInRegionClosure(HeapRegion *hr) : _hr(hr) {
-    _g1 = G1CollectedHeap::heap();
-  };
-
-  void do_object(oop o) {
-    if (o != NULL) {
-      HeapWord *start = (HeapWord *) o;
-      size_t word_sz = o->size();
-      gclog_or_tty->print("\nPrinting obj "PTR_FORMAT" of size " SIZE_FORMAT
-                          " isMarkedPrev %d isMarkedNext %d isAllocSince %d\n",
-                          (void*) o, word_sz,
-                          _g1->isMarkedPrev(o),
-                          _g1->isMarkedNext(o),
-                          _hr->obj_allocated_since_prev_marking(o));
-      HeapWord *end = start + word_sz;
-      HeapWord *cur;
-      int *val;
-      for (cur = start; cur < end; cur++) {
-        val = (int *) cur;
-        gclog_or_tty->print("\t "PTR_FORMAT":%d\n", val, *val);
-      }
-    }
-  }
-};
-
 class VerifyRegionClosure: public HeapRegionClosure {
 private:
   bool             _par;
@@ -3006,7 +2948,7 @@
             gclog_or_tty->print_cr("["PTR_FORMAT","PTR_FORMAT"] "
                                    "max_live_bytes "SIZE_FORMAT" "
                                    "< calculated "SIZE_FORMAT,
-                                   r->bottom(), r->end(),
+                                   p2i(r->bottom()), p2i(r->end()),
                                    r->max_live_bytes(),
                                  not_dead_yet_cl.live_bytes());
             _failures = true;
@@ -3125,12 +3067,6 @@
       // print_extended_on() instead of print_on().
       print_extended_on(gclog_or_tty);
       gclog_or_tty->cr();
-#ifndef PRODUCT
-      if (VerifyDuringGC && G1VerifyDuringGCPrintReachable) {
-        concurrent_mark()->print_reachable("at-verification-failure",
-                                           vo, false /* all */);
-      }
-#endif
       gclog_or_tty->flush();
     }
     guarantee(!failures, "there should not have been any failures");
@@ -3210,10 +3146,10 @@
   st->print(" %-20s", "garbage-first heap");
   st->print(" total " SIZE_FORMAT "K, used " SIZE_FORMAT "K",
             capacity()/K, used_unlocked()/K);
-  st->print(" [" INTPTR_FORMAT ", " INTPTR_FORMAT ", " INTPTR_FORMAT ")",
-            _hrm.reserved().start(),
-            _hrm.reserved().start() + _hrm.length() + HeapRegion::GrainWords,
-            _hrm.reserved().end());
+  st->print(" [" PTR_FORMAT ", " PTR_FORMAT ", " PTR_FORMAT ")",
+            p2i(_hrm.reserved().start()),
+            p2i(_hrm.reserved().start() + _hrm.length() + HeapRegion::GrainWords),
+            p2i(_hrm.reserved().end()));
   st->cr();
   st->print("  region size " SIZE_FORMAT "K, ", HeapRegion::GrainBytes / K);
   uint young_regions = _young_list->length();
@@ -3336,9 +3272,10 @@
 #endif // PRODUCT
 
 G1CollectedHeap* G1CollectedHeap::heap() {
-  assert(_sh->kind() == CollectedHeap::G1CollectedHeap,
-         "not a garbage-first heap");
-  return _g1h;
+  CollectedHeap* heap = Universe::heap();
+  assert(heap != NULL, "Uninitialized access to G1CollectedHeap::heap()");
+  assert(heap->kind() == CollectedHeap::G1CollectedHeap, "Not a G1CollectedHeap");
+  return (G1CollectedHeap*)heap;
 }
 
 void G1CollectedHeap::gc_prologue(bool full /* Ignored */) {
@@ -3434,12 +3371,6 @@
   return g1_rem_set()->cardsScanned();
 }
 
-bool G1CollectedHeap::humongous_region_is_always_live(uint index) {
-  HeapRegion* region = region_at(index);
-  assert(region->is_starts_humongous(), "Must start a humongous object");
-  return oop(region->bottom())->is_objArray() || !region->rem_set()->is_empty();
-}
-
 class RegisterHumongousWithInCSetFastTestClosure : public HeapRegionClosure {
  private:
   size_t _total_humongous;
@@ -3447,14 +3378,59 @@
 
   DirtyCardQueue _dcq;
 
-  bool humongous_region_is_candidate(uint index) {
-    HeapRegion* region = G1CollectedHeap::heap()->region_at(index);
-    assert(region->is_starts_humongous(), "Must start a humongous object");
+  // We don't nominate objects with many remembered set entries, on
+  // the assumption that such objects are likely still live.
+  bool is_remset_small(HeapRegion* region) const {
     HeapRegionRemSet* const rset = region->rem_set();
-    bool const allow_stale_refs = G1EagerReclaimHumongousObjectsWithStaleRefs;
-    return !oop(region->bottom())->is_objArray() &&
-           ((allow_stale_refs && rset->occupancy_less_or_equal_than(G1RSetSparseRegionEntries)) ||
-            (!allow_stale_refs && rset->is_empty()));
+    return G1EagerReclaimHumongousObjectsWithStaleRefs
+      ? rset->occupancy_less_or_equal_than(G1RSetSparseRegionEntries)
+      : rset->is_empty();
+  }
+
+  bool is_typeArray_region(HeapRegion* region) const {
+    return oop(region->bottom())->is_typeArray();
+  }
+
+  bool humongous_region_is_candidate(G1CollectedHeap* heap, HeapRegion* region) const {
+    assert(region->is_starts_humongous(), "Must start a humongous object");
+
+    // Candidate selection must satisfy the following constraints
+    // while concurrent marking is in progress:
+    //
+    // * In order to maintain SATB invariants, an object must not be
+    // reclaimed if it was allocated before the start of marking and
+    // has not had its references scanned.  Such an object must have
+    // its references (including type metadata) scanned to ensure no
+    // live objects are missed by the marking process.  Objects
+    // allocated after the start of concurrent marking don't need to
+    // be scanned.
+    //
+    // * An object must not be reclaimed if it is on the concurrent
+    // mark stack.  Objects allocated after the start of concurrent
+    // marking are never pushed on the mark stack.
+    //
+    // Nominating only objects allocated after the start of concurrent
+    // marking is sufficient to meet both constraints.  This may miss
+    // some objects that satisfy the constraints, but the marking data
+    // structures don't support efficiently performing the needed
+    // additional tests or scrubbing of the mark stack.
+    //
+    // However, we presently only nominate is_typeArray() objects.
+    // A humongous object containing references induces remembered
+    // set entries on other regions.  In order to reclaim such an
+    // object, those remembered sets would need to be cleaned up.
+    //
+    // We also treat is_typeArray() objects specially, allowing them
+    // to be reclaimed even if allocated before the start of
+    // concurrent mark.  For this we rely on mark stack insertion to
+    // exclude is_typeArray() objects, preventing reclaiming an object
+    // that is in the mark stack.  We also rely on the metadata for
+    // such objects to be built-in and so ensured to be kept live.
+    // Frequent allocation and drop of large binary blobs is an
+    // important use case for eager reclaim, and this special handling
+    // may reduce needed headroom.
+
+    return is_typeArray_region(region) && is_remset_small(region);
   }
 
  public:
@@ -3470,14 +3446,17 @@
     }
     G1CollectedHeap* g1h = G1CollectedHeap::heap();
 
-    uint region_idx = r->hrm_index();
-    bool is_candidate = humongous_region_is_candidate(region_idx);
-    // Is_candidate already filters out humongous object with large remembered sets.
-    // If we have a humongous object with a few remembered sets, we simply flush these
-    // remembered set entries into the DCQS. That will result in automatic
-    // re-evaluation of their remembered set entries during the following evacuation
-    // phase.
+    bool is_candidate = humongous_region_is_candidate(g1h, r);
+    uint rindex = r->hrm_index();
+    g1h->set_humongous_reclaim_candidate(rindex, is_candidate);
     if (is_candidate) {
+      _candidate_humongous++;
+      g1h->register_humongous_region_with_cset(rindex);
+      // Is_candidate already filters out humongous object with large remembered sets.
+      // If we have a humongous object with a few remembered sets, we simply flush these
+      // remembered set entries into the DCQS. That will result in automatic
+      // re-evaluation of their remembered set entries during the following evacuation
+      // phase.
       if (!r->rem_set()->is_empty()) {
         guarantee(r->rem_set()->occupancy_less_or_equal_than(G1RSetSparseRegionEntries),
                   "Found a not-small remembered set here. This is inconsistent with previous assumptions.");
@@ -3499,8 +3478,6 @@
         r->rem_set()->clear_locked();
       }
       assert(r->rem_set()->is_empty(), "At this point any humongous candidate remembered set must be empty.");
-      g1h->register_humongous_region_with_cset(region_idx);
-      _candidate_humongous++;
     }
     _total_humongous++;
 
@@ -3520,6 +3497,7 @@
   }
   double time = os::elapsed_counter();
 
+  // Collect reclaim candidate information and register candidates with cset.
   RegisterHumongousWithInCSetFastTestClosure cl;
   heap_region_iterate(&cl);
 
@@ -3529,10 +3507,6 @@
                                                                   cl.candidate_humongous());
   _has_humongous_reclaim_candidates = cl.candidate_humongous() > 0;
 
-  if (_has_humongous_reclaim_candidates || G1TraceEagerReclaimHumongousObjects) {
-    clear_humongous_is_live_table();
-  }
-
   // Finally flush all remembered set entries to re-check into the global DCQS.
   cl.flush_rem_set_entries();
 }
@@ -3832,14 +3806,9 @@
         assert(check_cset_fast_test(), "Inconsistency in the InCSetState table.");
 
         _cm->note_start_of_gc();
-        // We should not verify the per-thread SATB buffers given that
-        // we have not filtered them yet (we'll do so during the
-        // GC). We also call this after finalize_cset() to
+        // We call this after finalize_cset() to
         // ensure that the CSet has been finalized.
-        _cm->verify_no_cset_oops(true  /* verify_stacks */,
-                                 true  /* verify_enqueued_buffers */,
-                                 false /* verify_thread_buffers */,
-                                 true  /* verify_fingers */);
+        _cm->verify_no_cset_oops();
 
         if (_hr_printer.is_active()) {
           HeapRegion* hr = g1_policy()->collection_set();
@@ -3862,16 +3831,6 @@
         // Actually do the work...
         evacuate_collection_set(evacuation_info);
 
-        // We do this to mainly verify the per-thread SATB buffers
-        // (which have been filtered by now) since we didn't verify
-        // them earlier. No point in re-checking the stacks / enqueued
-        // buffers given that the CSet has not changed since last time
-        // we checked.
-        _cm->verify_no_cset_oops(false /* verify_stacks */,
-                                 false /* verify_enqueued_buffers */,
-                                 true  /* verify_thread_buffers */,
-                                 true  /* verify_fingers */);
-
         free_collection_set(g1_policy()->collection_set(), evacuation_info);
 
         eagerly_reclaim_humongous_regions();
@@ -3954,10 +3913,7 @@
 
         // We redo the verification but now wrt to the new CSet which
         // has just got initialized after the previous CSet was freed.
-        _cm->verify_no_cset_oops(true  /* verify_stacks */,
-                                 true  /* verify_enqueued_buffers */,
-                                 true  /* verify_thread_buffers */,
-                                 true  /* verify_fingers */);
+        _cm->verify_no_cset_oops();
         _cm->note_end_of_gc();
 
         // This timing is only used by the ergonomics to handle our pause target.
@@ -4116,7 +4072,7 @@
                                                oop old) {
   assert(obj_in_cs(old),
          err_msg("obj: "PTR_FORMAT" should still be in the CSet",
-                 (HeapWord*) old));
+                 p2i(old)));
   markOop m = old->mark();
   oop forward_ptr = old->forward_to_atomic(old);
   if (forward_ptr == NULL) {
@@ -4151,7 +4107,7 @@
     assert(old == forward_ptr || !obj_in_cs(forward_ptr),
            err_msg("obj: "PTR_FORMAT" forwarded to: "PTR_FORMAT" "
                    "should not be in the CSet",
-                   (HeapWord*) old, (HeapWord*) forward_ptr));
+                   p2i(old), p2i(forward_ptr)));
     return forward_ptr;
   }
 }
@@ -4856,7 +4812,7 @@
 void G1CollectedHeap::unlink_string_and_symbol_table(BoolObjectClosure* is_alive,
                                                      bool process_strings, bool process_symbols) {
   {
-    uint n_workers = _g1h->workers()->active_workers();
+    uint n_workers = workers()->active_workers();
     G1StringSymbolTableUnlinkTask g1_unlink_task(is_alive, process_strings, process_symbols);
     set_par_threads(n_workers);
     workers()->run_task(&g1_unlink_task);
@@ -4888,7 +4844,7 @@
 void G1CollectedHeap::redirty_logged_cards() {
   double redirty_logged_cards_start = os::elapsedTime();
 
-  uint n_workers = _g1h->workers()->active_workers();
+  uint n_workers = workers()->active_workers();
 
   G1RedirtyLoggedCardsTask redirty_task(&dirty_card_queue_set());
   dirty_card_queue_set().reset_for_par_iteration();
@@ -5001,8 +4957,7 @@
         _par_scan_state->push_on_queue(p);
       } else {
         assert(!Metaspace::contains((const void*)p),
-               err_msg("Unexpectedly found a pointer from metadata: "
-                              PTR_FORMAT, p));
+               err_msg("Unexpectedly found a pointer from metadata: " PTR_FORMAT, p2i(p)));
         _copy_non_heap_obj_cl->do_oop(p);
       }
     }
@@ -5321,7 +5276,7 @@
 
   OopClosure*                    copy_non_heap_cl = &only_copy_non_heap_cl;
 
-  if (_g1h->g1_policy()->during_initial_mark_pause()) {
+  if (g1_policy()->during_initial_mark_pause()) {
     // We also need to mark copied objects.
     copy_non_heap_cl = &copy_mark_non_heap_cl;
   }
@@ -5667,14 +5622,14 @@
 bool G1CollectedHeap::verify_no_bits_over_tams(const char* bitmap_name, CMBitMapRO* bitmap,
                                                HeapWord* tams, HeapWord* end) {
   guarantee(tams <= end,
-            err_msg("tams: "PTR_FORMAT" end: "PTR_FORMAT, tams, end));
+            err_msg("tams: "PTR_FORMAT" end: "PTR_FORMAT, p2i(tams), p2i(end)));
   HeapWord* result = bitmap->getNextMarkedWordAddress(tams, end);
   if (result < end) {
     gclog_or_tty->cr();
     gclog_or_tty->print_cr("## wrong marked address on %s bitmap: "PTR_FORMAT,
-                           bitmap_name, result);
+                           bitmap_name, p2i(result));
     gclog_or_tty->print_cr("## %s tams: "PTR_FORMAT" end: "PTR_FORMAT,
-                           bitmap_name, tams, end);
+                           bitmap_name, p2i(tams), p2i(end));
     return false;
   }
   return true;
@@ -5994,41 +5949,42 @@
     // required because stale remembered sets might reference locations that
     // are currently allocated into.
     uint region_idx = r->hrm_index();
-    if (g1h->humongous_is_live(region_idx) ||
-        g1h->humongous_region_is_always_live(region_idx)) {
+    if (!g1h->is_humongous_reclaim_candidate(region_idx) ||
+        !r->rem_set()->is_empty()) {
 
       if (G1TraceEagerReclaimHumongousObjects) {
-        gclog_or_tty->print_cr("Live humongous region %u size "SIZE_FORMAT" start "PTR_FORMAT" length "UINT32_FORMAT" with remset "SIZE_FORMAT" code roots "SIZE_FORMAT" is marked %d live-other %d obj array %d",
+        gclog_or_tty->print_cr("Live humongous region %u size "SIZE_FORMAT" start "PTR_FORMAT" length %u with remset "SIZE_FORMAT" code roots "SIZE_FORMAT" is marked %d reclaim candidate %d type array %d",
                                region_idx,
-                               obj->size()*HeapWordSize,
-                               r->bottom(),
+                               (size_t)obj->size() * HeapWordSize,
+                               p2i(r->bottom()),
                                r->region_num(),
                                r->rem_set()->occupied(),
                                r->rem_set()->strong_code_roots_list_length(),
                                next_bitmap->isMarked(r->bottom()),
-                               g1h->humongous_is_live(region_idx),
-                               obj->is_objArray()
+                               g1h->is_humongous_reclaim_candidate(region_idx),
+                               obj->is_typeArray()
                               );
       }
 
       return false;
     }
 
-    guarantee(!obj->is_objArray(),
-              err_msg("Eagerly reclaiming object arrays is not supported, but the object "PTR_FORMAT" is.",
-                      r->bottom()));
+    guarantee(obj->is_typeArray(),
+              err_msg("Only eagerly reclaiming type arrays is supported, but the object "
+                      PTR_FORMAT " is not.",
+                      p2i(r->bottom())));
 
     if (G1TraceEagerReclaimHumongousObjects) {
-      gclog_or_tty->print_cr("Dead humongous region %u size "SIZE_FORMAT" start "PTR_FORMAT" length "UINT32_FORMAT" with remset "SIZE_FORMAT" code roots "SIZE_FORMAT" is marked %d live-other %d obj array %d",
+      gclog_or_tty->print_cr("Dead humongous region %u size "SIZE_FORMAT" start "PTR_FORMAT" length %u with remset "SIZE_FORMAT" code roots "SIZE_FORMAT" is marked %d reclaim candidate %d type array %d",
                              region_idx,
-                             obj->size()*HeapWordSize,
-                             r->bottom(),
+                             (size_t)obj->size() * HeapWordSize,
+                             p2i(r->bottom()),
                              r->region_num(),
                              r->rem_set()->occupied(),
                              r->rem_set()->strong_code_roots_list_length(),
                              next_bitmap->isMarked(r->bottom()),
-                             g1h->humongous_is_live(region_idx),
-                             obj->is_objArray()
+                             g1h->is_humongous_reclaim_candidate(region_idx),
+                             obj->is_typeArray()
                             );
     }
     // Need to clear mark bit of the humongous object if already set.
@@ -6075,12 +6031,12 @@
   HeapRegionSetCount empty_set;
   remove_from_old_sets(empty_set, cl.humongous_free_count());
 
-  G1HRPrinter* hr_printer = _g1h->hr_printer();
-  if (hr_printer->is_active()) {
+  G1HRPrinter* hrp = hr_printer();
+  if (hrp->is_active()) {
     FreeRegionListIterator iter(&local_cleanup_list);
     while (iter.more_available()) {
       HeapRegion* hr = iter.get_next();
-      hr_printer->cleanup(hr);
+      hrp->cleanup(hr);
     }
   }
 
@@ -6163,8 +6119,6 @@
 }
 
 void G1CollectedHeap::set_region_short_lived_locked(HeapRegion* hr) {
-  assert(heap_lock_held_for_gc(),
-              "the heap lock should already be held by or for this thread");
   _young_list->push_region(hr);
 }
 
@@ -6176,7 +6130,7 @@
   bool doHeapRegion(HeapRegion* r) {
     if (r->is_young()) {
       gclog_or_tty->print_cr("Region ["PTR_FORMAT", "PTR_FORMAT") tagged as young",
-                             r->bottom(), r->end());
+                             p2i(r->bottom()), p2i(r->end()));
       _success = false;
     }
     return false;
@@ -6526,7 +6480,7 @@
       assert(!hr->is_continues_humongous(),
              err_msg("trying to add code root "PTR_FORMAT" in continuation of humongous region "HR_FORMAT
                      " starting at "HR_FORMAT,
-                     _nm, HR_FORMAT_PARAMS(hr), HR_FORMAT_PARAMS(hr->humongous_start_region())));
+                     p2i(_nm), HR_FORMAT_PARAMS(hr), HR_FORMAT_PARAMS(hr->humongous_start_region())));
 
       // HeapRegion::add_strong_code_root_locked() avoids adding duplicate entries.
       hr->add_strong_code_root_locked(_nm);
@@ -6553,7 +6507,7 @@
       assert(!hr->is_continues_humongous(),
              err_msg("trying to remove code root "PTR_FORMAT" in continuation of humongous region "HR_FORMAT
                      " starting at "HR_FORMAT,
-                     _nm, HR_FORMAT_PARAMS(hr), HR_FORMAT_PARAMS(hr->humongous_start_region())));
+                     p2i(_nm), HR_FORMAT_PARAMS(hr), HR_FORMAT_PARAMS(hr->humongous_start_region())));
 
       hr->remove_strong_code_root(_nm);
     }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -39,10 +39,9 @@
 #include "gc_implementation/g1/heapRegionManager.hpp"
 #include "gc_implementation/g1/heapRegionSet.hpp"
 #include "gc_implementation/shared/hSpaceCounters.hpp"
-#include "gc_implementation/shared/parGCAllocBuffer.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/barrierSet.hpp"
 #include "memory/memRegion.hpp"
-#include "memory/sharedHeap.hpp"
 #include "utilities/stack.hpp"
 
 // A "G1CollectedHeap" is an implementation of a java heap for HotSpot.
@@ -76,6 +75,7 @@
 class EvacuationFailedInfo;
 class nmethod;
 class Ticks;
+class FlexibleWorkGang;
 
 typedef OverflowTaskQueue<StarTask, mtGC>         RefToScanQueue;
 typedef GenericTaskQueueSet<RefToScanQueue, mtGC> RefToScanQueueSet;
@@ -177,7 +177,7 @@
   virtual void on_commit(uint start_idx, size_t num_regions, bool zero_filled);
 };
 
-class G1CollectedHeap : public SharedHeap {
+class G1CollectedHeap : public CollectedHeap {
   friend class VM_CollectForMetadataAllocation;
   friend class VM_G1CollectForAllocation;
   friend class VM_G1CollectFull;
@@ -201,8 +201,7 @@
   friend class G1CheckCSetFastTableClosure;
 
 private:
-  // The one and only G1CollectedHeap, so static functions can find it.
-  static G1CollectedHeap* _g1h;
+  FlexibleWorkGang* _workers;
 
   static size_t _humongous_object_threshold_in_words;
 
@@ -217,7 +216,6 @@
   // It keeps track of the humongous regions.
   HeapRegionSet _humongous_set;
 
-  void clear_humongous_is_live_table();
   void eagerly_reclaim_humongous_regions();
 
   // The number of regions we could create by expansion.
@@ -287,22 +285,26 @@
   // Helper for monitoring and management support.
   G1MonitoringSupport* _g1mm;
 
-  // Records whether the region at the given index is kept live by roots or
-  // references from the young generation.
-  class HumongousIsLiveBiasedMappedArray : public G1BiasedMappedArray<bool> {
+  // Records whether the region at the given index is (still) a
+  // candidate for eager reclaim.  Only valid for humongous start
+  // regions; other regions have unspecified values.  Humongous start
+  // regions are initialized at start of collection pause, with
+  // candidates removed from the set as they are found reachable from
+  // roots or the young generation.
+  class HumongousReclaimCandidates : public G1BiasedMappedArray<bool> {
    protected:
     bool default_value() const { return false; }
    public:
     void clear() { G1BiasedMappedArray<bool>::clear(); }
-    void set_live(uint region) {
-      set_by_index(region, true);
+    void set_candidate(uint region, bool value) {
+      set_by_index(region, value);
     }
-    bool is_live(uint region) {
+    bool is_candidate(uint region) {
       return get_by_index(region);
     }
   };
 
-  HumongousIsLiveBiasedMappedArray _humongous_is_live;
+  HumongousReclaimCandidates _humongous_reclaim_candidates;
   // Stores whether during humongous object registration we found candidate regions.
   // If not, we can skip a few steps.
   bool _has_humongous_reclaim_candidates;
@@ -351,6 +353,12 @@
   // heap after a compaction.
   void print_hrm_post_compaction();
 
+  // Create a memory mapper for auxiliary data structures of the given size and
+  // translation factor.
+  static G1RegionToSpaceMapper* create_aux_memory_mapper(const char* description,
+                                                         size_t size,
+                                                         size_t translation_factor);
+
   double verify(bool guard, const char* msg);
   void verify_before_gc();
   void verify_after_gc();
@@ -605,6 +613,7 @@
   void enqueue_discovered_references(uint no_of_gc_workers);
 
 public:
+  FlexibleWorkGang* workers() const { return _workers; }
 
   G1Allocator* allocator() {
     return _allocator;
@@ -630,21 +639,18 @@
   inline AllocationContextStats& allocation_context_stats();
 
   // Do anything common to GC's.
-  virtual void gc_prologue(bool full);
-  virtual void gc_epilogue(bool full);
+  void gc_prologue(bool full);
+  void gc_epilogue(bool full);
 
+  // Modify the reclaim candidate set and test for presence.
+  // These are only valid for starts_humongous regions.
+  inline void set_humongous_reclaim_candidate(uint region, bool value);
+  inline bool is_humongous_reclaim_candidate(uint region);
+
+  // Remove from the reclaim candidate set.  Also remove from the
+  // collection set so that later encounters avoid the slow path.
   inline void set_humongous_is_live(oop obj);
 
-  bool humongous_is_live(uint region) {
-    return _humongous_is_live.is_live(region);
-  }
-
-  // Returns whether the given region (which must be a humongous (start) region)
-  // is to be considered conservatively live regardless of any other conditions.
-  bool humongous_region_is_always_live(uint index);
-  // Returns whether the given region (which must be a humongous (start) region)
-  // is considered a candidate for eager reclamation.
-  bool humongous_region_is_candidate(uint index);
   // Register the given region to be part of the collection set.
   inline void register_humongous_region_with_cset(uint index);
   // Register regions with humongous objects (actually on the start region) in
@@ -1000,11 +1006,14 @@
   // Return the (conservative) maximum heap alignment for any G1 heap
   static size_t conservative_max_heap_alignment();
 
+  // Does operations required after initialization has been done.
+  void post_initialize();
+
   // Initialize weak reference processing.
-  virtual void ref_processing_init();
+  void ref_processing_init();
 
   // Explicitly import set_par_threads into this scope
-  using SharedHeap::set_par_threads;
+  using CollectedHeap::set_par_threads;
   // Set _n_par_threads according to a policy TBD.
   void set_par_threads();
 
@@ -1251,10 +1260,6 @@
 
   // Iteration functions.
 
-  // Iterate over all the ref-containing fields of all objects, calling
-  // "cl.do_oop" on each.
-  virtual void oop_iterate(ExtendedOopClosure* cl);
-
   // Iterate over all objects, calling "cl.do_object" on each.
   virtual void object_iterate(ObjectClosure* cl);
 
@@ -1262,9 +1267,6 @@
     object_iterate(cl);
   }
 
-  // Iterate over all spaces in use in the heap, in ascending address order.
-  virtual void space_iterate(SpaceClosure* cl);
-
   // Iterate over heap regions, in address order, terminating the
   // iteration early if the "doHeapRegion" method returns "true".
   void heap_region_iterate(HeapRegionClosure* blk) const;
@@ -1307,10 +1309,6 @@
 
   HeapRegion* next_compaction_region(const HeapRegion* from) const;
 
-  // A CollectedHeap will contain some number of spaces.  This finds the
-  // space containing a given address, or else returns NULL.
-  virtual Space* space_containing(const void* addr) const;
-
   // Returns the HeapRegion that contains addr. addr must not be NULL.
   template <class T>
   inline HeapRegion* heap_region_containing_raw(const T addr) const;
@@ -1344,9 +1342,6 @@
   // the block is an object.
   virtual bool block_is_obj(const HeapWord* addr) const;
 
-  // Does this heap support heap inspection? (+PrintClassHistogram)
-  virtual bool supports_heap_inspection() const { return true; }
-
   // Section on thread-local allocation buffers (TLABs)
   // See CollectedHeap for semantics.
 
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -352,20 +352,30 @@
   return is_obj_ill(obj, heap_region_containing(obj));
 }
 
+inline void G1CollectedHeap::set_humongous_reclaim_candidate(uint region, bool value) {
+  assert(_hrm.at(region)->is_starts_humongous(), "Must start a humongous object");
+  _humongous_reclaim_candidates.set_candidate(region, value);
+}
+
+inline bool G1CollectedHeap::is_humongous_reclaim_candidate(uint region) {
+  assert(_hrm.at(region)->is_starts_humongous(), "Must start a humongous object");
+  return _humongous_reclaim_candidates.is_candidate(region);
+}
+
 inline void G1CollectedHeap::set_humongous_is_live(oop obj) {
   uint region = addr_to_region((HeapWord*)obj);
-  // We not only set the "live" flag in the humongous_is_live table, but also
+  // Clear the flag in the humongous_reclaim_candidates table.  Also
   // reset the entry in the _in_cset_fast_test table so that subsequent references
   // to the same humongous object do not go into the slow path again.
   // This is racy, as multiple threads may at the same time enter here, but this
   // is benign.
-  // During collection we only ever set the "live" flag, and only ever clear the
+  // During collection we only ever clear the "candidate" flag, and only ever clear the
   // entry in the in_cset_fast_table.
   // We only ever evaluate the contents of these tables (in the VM thread) after
   // having synchronized the worker threads with the VM thread, or in the same
   // thread (i.e. within the VM thread).
-  if (!_humongous_is_live.is_live(region)) {
-    _humongous_is_live.set_live(region);
+  if (is_humongous_reclaim_candidate(region)) {
+    set_humongous_reclaim_candidate(region, false);
     _in_cset_fast_test.clear_humongous(region);
   }
 }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -22,11 +22,6 @@
  *
  */
 
-#ifndef __clang_major__
-// FIXME, formats have issues.  Disable this macro definition, compile, and study warnings for more information.
-#define ATTRIBUTE_PRINTF(x,y)
-#endif
-
 #include "precompiled.hpp"
 #include "gc_implementation/g1/concurrentG1Refine.hpp"
 #include "gc_implementation/g1/concurrentMark.hpp"
@@ -302,7 +297,7 @@
   if (reserve_perc > 50) {
     reserve_perc = 50;
     warning("G1ReservePercent is set to a value that is too large, "
-            "it's been updated to %u", reserve_perc);
+            "it's been updated to " UINTX_FORMAT, reserve_perc);
   }
   _reserve_factor = (double) reserve_perc / 100.0;
   // This will be set when the heap is expanded
@@ -1460,7 +1455,7 @@
   _max_survivor_regions = (uint) ceil(max_survivor_regions_d);
 
   _tenuring_threshold = _survivors_age_table.compute_tenuring_threshold(
-        HeapRegion::GrainWords * _max_survivor_regions);
+        HeapRegion::GrainWords * _max_survivor_regions, counters());
 }
 
 bool G1CollectorPolicy::force_initial_mark_if_outside_cycle(
@@ -1800,7 +1795,7 @@
     assert(csr->in_collection_set(), "bad CS");
     st->print_cr("  "HR_FORMAT", P: "PTR_FORMAT "N: "PTR_FORMAT", age: %4d",
                  HR_FORMAT_PARAMS(csr),
-                 csr->prev_top_at_mark_start(), csr->next_top_at_mark_start(),
+                 p2i(csr->prev_top_at_mark_start()), p2i(csr->next_top_at_mark_start()),
                  csr->age_in_surv_rate_group_cond());
     csr = next;
   }
@@ -2166,7 +2161,7 @@
 void TraceYoungGenTimeData::print_summary_sd(const char* str,
                                              const NumberSeq* seq) const {
   print_summary(str, seq);
-  gclog_or_tty->print_cr("%+45s = %5d, std dev = %8.2lf ms, max = %8.2lf ms)",
+  gclog_or_tty->print_cr("%45s = %5d, std dev = %8.2lf ms, max = %8.2lf ms)",
                 "(num", seq->num(), seq->sd(), seq->maximum());
 }
 
--- a/hotspot/src/share/vm/gc_implementation/g1/g1ErgoVerbose.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1ErgoVerbose.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -160,40 +160,43 @@
   } while (0)
 
 
-#define ergo_verbose(_tag_, _action_)                                   \
-  ergo_verbose_common(_tag_, _action_, "", 0, 0, 0, 0, 0, 0)
-
-#define ergo_verbose0(_tag_, _action_, _extra_format_)                  \
-  ergo_verbose_common(_tag_, _action_, _extra_format_, 0, 0, 0, 0, 0, 0)
-
-#define ergo_verbose1(_tag_, _action_, _extra_format_,                  \
-                      _arg0_)                                           \
-  ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, 0, 0, 0, 0, 0)
-
-#define ergo_verbose2(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_)                                   \
-  ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, 0, 0, 0, 0)
-
-#define ergo_verbose3(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_)                           \
-  ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_, 0, 0, 0)
-
-#define ergo_verbose4(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_, _arg3_)                   \
-  ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_, _arg3_, 0, 0)
-
-#define ergo_verbose5(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_, _arg3_, _arg4_)           \
-  ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
-                      _arg0_, _arg1_, _arg2_, _arg3_, _arg4_, 0)
-
 #define ergo_verbose6(_tag_, _action_, _extra_format_,                  \
                       _arg0_, _arg1_, _arg2_, _arg3_, _arg4_, _arg5_)   \
   ergo_verbose_common(_tag_, _action_, _extra_format_,                  \
                       _arg0_, _arg1_, _arg2_, _arg3_, _arg4_, _arg5_)
 
+#define ergo_verbose5(_tag_, _action_, _extra_format_,                  \
+                      _arg0_, _arg1_, _arg2_, _arg3_, _arg4_)           \
+  ergo_verbose6(_tag_, _action_, _extra_format_ "%s",                   \
+                _arg0_, _arg1_, _arg2_, _arg3_, _arg4_, "")
+
+#define ergo_verbose4(_tag_, _action_, _extra_format_,                  \
+                      _arg0_, _arg1_, _arg2_, _arg3_)                   \
+  ergo_verbose5(_tag_, _action_, _extra_format_ "%s",                   \
+                _arg0_, _arg1_, _arg2_, _arg3_, "")
+
+#define ergo_verbose3(_tag_, _action_, _extra_format_,                  \
+                      _arg0_, _arg1_, _arg2_)                           \
+  ergo_verbose4(_tag_, _action_, _extra_format_ "%s",                   \
+                _arg0_, _arg1_, _arg2_, "")
+
+#define ergo_verbose2(_tag_, _action_, _extra_format_,                  \
+                      _arg0_, _arg1_)                                   \
+  ergo_verbose3(_tag_, _action_, _extra_format_ "%s",                   \
+                _arg0_, _arg1_, "")
+
+#define ergo_verbose1(_tag_, _action_, _extra_format_,                  \
+                      _arg0_)                                           \
+  ergo_verbose2(_tag_, _action_, _extra_format_ "%s",                   \
+                _arg0_, "")
+
+
+#define ergo_verbose0(_tag_, _action_, _extra_format_)                  \
+  ergo_verbose1(_tag_, _action_, _extra_format_ "%s",                   \
+                "")
+
+#define ergo_verbose(_tag_, _action_)                                   \
+  ergo_verbose0(_tag_, _action_, "")
+
+
 #endif // SHARE_VM_GC_IMPLEMENTATION_G1_G1ERGOVERBOSE_HPP
--- a/hotspot/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -263,7 +263,6 @@
   _gc_par_phases[SystemDictionaryRoots] = new WorkerDataArray<double>(max_gc_threads, "SystemDictionary Roots (ms)", true, G1Log::LevelFinest, 3);
   _gc_par_phases[CLDGRoots] = new WorkerDataArray<double>(max_gc_threads, "CLDG Roots (ms)", true, G1Log::LevelFinest, 3);
   _gc_par_phases[JVMTIRoots] = new WorkerDataArray<double>(max_gc_threads, "JVMTI Roots (ms)", true, G1Log::LevelFinest, 3);
-  _gc_par_phases[CodeCacheRoots] = new WorkerDataArray<double>(max_gc_threads, "CodeCache Roots (ms)", true, G1Log::LevelFinest, 3);
   _gc_par_phases[CMRefRoots] = new WorkerDataArray<double>(max_gc_threads, "CM RefProcessor Roots (ms)", true, G1Log::LevelFinest, 3);
   _gc_par_phases[WaitForStrongCLD] = new WorkerDataArray<double>(max_gc_threads, "Wait For Strong CLD (ms)", true, G1Log::LevelFinest, 3);
   _gc_par_phases[WeakCLDRoots] = new WorkerDataArray<double>(max_gc_threads, "Weak CLD Roots (ms)", true, G1Log::LevelFinest, 3);
--- a/hotspot/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -51,7 +51,6 @@
     SystemDictionaryRoots,
     CLDGRoots,
     JVMTIRoots,
-    CodeCacheRoots,
     CMRefRoots,
     WaitForStrongCLD,
     WeakCLDRoots,
--- a/hotspot/src/share/vm/gc_implementation/g1/g1HotCardCache.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1HotCardCache.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -29,7 +29,7 @@
 #include "gc_implementation/g1/g1CardCounts.hpp"
 #include "memory/allocation.hpp"
 #include "runtime/safepoint.hpp"
-#include "runtime/thread.inline.hpp"
+#include "runtime/thread.hpp"
 #include "utilities/globalDefinitions.hpp"
 
 class DirtyCardQueue;
@@ -123,7 +123,7 @@
   // Resets the hot card cache and discards the entries.
   void reset_hot_cache() {
     assert(SafepointSynchronize::is_at_safepoint(), "Should be at a safepoint");
-    assert(Thread::current()->is_VM_thread(), "Current thread should be the VMthread");
+    assert(Thread::current_noinline()->is_VM_thread(), "Current thread should be the VMthread");
     if (default_use_cache()) {
         reset_hot_cache_internal();
     }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -61,9 +61,8 @@
                                       bool clear_all_softrefs) {
   assert(SafepointSynchronize::is_at_safepoint(), "must be at a safepoint");
 
-  SharedHeap* sh = SharedHeap::heap();
 #ifdef ASSERT
-  if (sh->collector_policy()->should_clear_all_soft_refs()) {
+  if (G1CollectedHeap::heap()->collector_policy()->should_clear_all_soft_refs()) {
     assert(clear_all_softrefs, "Policy should have been checked earler");
   }
 #endif
@@ -102,11 +101,6 @@
   BiasedLocking::restore_marks();
   GenMarkSweep::deallocate_stacks();
 
-  // "free at last gc" is calculated from these.
-  // CHF: cheating for now!!!
-  //  Universe::set_heap_capacity_at_last_gc(Universe::heap()->capacity());
-  //  Universe::set_heap_used_at_last_gc(Universe::heap()->used());
-
   CodeCache::gc_epilogue();
   JvmtiExport::gc_epilogue();
 
@@ -125,7 +119,6 @@
                                     bool clear_all_softrefs) {
   // Recursively traverse all live objects and mark them
   GCTraceTime tm("phase 1", G1Log::fine() && Verbose, true, gc_timer(), gc_tracer()->gc_id());
-  GenMarkSweep::trace(" 1");
 
   G1CollectedHeap* g1h = G1CollectedHeap::heap();
 
@@ -168,12 +161,12 @@
   Klass::clean_weak_klass_links(&GenMarkSweep::is_alive);
 
   // Delete entries for dead interned string and clean up unreferenced symbols in symbol table.
-  G1CollectedHeap::heap()->unlink_string_and_symbol_table(&GenMarkSweep::is_alive);
+  g1h->unlink_string_and_symbol_table(&GenMarkSweep::is_alive);
 
   if (VerifyDuringGC) {
     HandleMark hm;  // handle scope
     COMPILER2_PRESENT(DerivedPointerTableDeactivate dpt_deact);
-    Universe::heap()->prepare_for_verify();
+    g1h->prepare_for_verify();
     // Note: we can verify only the heap here. When an object is
     // marked, the previous value of the mark word (including
     // identity hash values, ages, etc) is preserved, and the mark
@@ -187,7 +180,7 @@
     if (!VerifySilently) {
       gclog_or_tty->print(" VerifyDuringGC:(full)[Verifying ");
     }
-    Universe::heap()->verify(VerifySilently, VerifyOption_G1UseMarkWord);
+    g1h->verify(VerifySilently, VerifyOption_G1UseMarkWord);
     if (!VerifySilently) {
       gclog_or_tty->print_cr("]");
     }
@@ -205,7 +198,6 @@
   // tracking expects us to do so. See comment under phase4.
 
   GCTraceTime tm("phase 2", G1Log::fine() && Verbose, true, gc_timer(), gc_tracer()->gc_id());
-  GenMarkSweep::trace("2");
 
   prepare_compaction();
 }
@@ -239,7 +231,6 @@
 
   // Adjust the pointers to reflect the new locations
   GCTraceTime tm("phase 3", G1Log::fine() && Verbose, true, gc_timer(), gc_tracer()->gc_id());
-  GenMarkSweep::trace("3");
 
   // Need cleared claim bits for the roots processing
   ClassLoaderDataGraph::clear_claimed_marks();
@@ -301,7 +292,6 @@
   G1CollectedHeap* g1h = G1CollectedHeap::heap();
 
   GCTraceTime tm("phase 4", G1Log::fine() && Verbose, true, gc_timer(), gc_tracer()->gc_id());
-  GenMarkSweep::trace("4");
 
   G1SpaceCompactClosure blk;
   g1h->heap_region_iterate(&blk);
--- a/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,7 +25,7 @@
 #ifndef SHARE_VM_GC_IMPLEMENTATION_G1_G1MARKSWEEP_HPP
 #define SHARE_VM_GC_IMPLEMENTATION_G1_G1MARKSWEEP_HPP
 
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
+#include "gc_implementation/g1/g1CollectedHeap.hpp"
 #include "gc_implementation/g1/heapRegion.hpp"
 #include "memory/genMarkSweep.hpp"
 #include "memory/generation.hpp"
--- a/hotspot/src/share/vm/gc_implementation/g1/g1OopClosures.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1OopClosures.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,9 +23,12 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_implementation/g1/g1_specialized_oop_closures.hpp"
 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
 #include "gc_implementation/g1/g1OopClosures.inline.hpp"
 #include "gc_implementation/g1/g1ParScanThreadState.hpp"
+#include "memory/iterator.inline.hpp"
+#include "utilities/stack.inline.hpp"
 
 G1ParCopyHelper::G1ParCopyHelper(G1CollectedHeap* g1,  G1ParScanThreadState* par_scan_state) :
   G1ParClosureSuper(g1, par_scan_state), _scanned_klass(NULL),
@@ -50,3 +53,6 @@
   assert(_worker_id < MAX2((uint)ParallelGCThreads, 1u),
          err_msg("The given worker id %u must be less than the number of threads %u", _worker_id, MAX2((uint)ParallelGCThreads, 1u)));
 }
+
+// Generate G1 specialized oop_oop_iterate functions.
+SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1(ALL_KLASS_OOP_OOP_ITERATE_DEFN)
--- a/hotspot/src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -172,7 +172,7 @@
   oopDesc* o = obj;
 #endif // CHECK_UNHANDLED_OOPS
   assert((intptr_t)o % MinObjAlignmentInBytes == 0, "not oop aligned");
-  assert(Universe::heap()->is_in_reserved(obj), "must be in heap");
+  assert(_g1->is_in_reserved(obj), "must be in heap");
 #endif // ASSERT
 
   assert(_from != NULL, "from region must be non-NULL");
--- a/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,37 +44,45 @@
 #endif
 #include "utilities/bitMap.inline.hpp"
 
-G1PageBasedVirtualSpace::G1PageBasedVirtualSpace() : _low_boundary(NULL),
-  _high_boundary(NULL), _committed(), _page_size(0), _special(false),
+G1PageBasedVirtualSpace::G1PageBasedVirtualSpace(ReservedSpace rs, size_t used_size, size_t page_size) :
+  _low_boundary(NULL), _high_boundary(NULL), _committed(), _page_size(0), _special(false),
   _dirty(), _executable(false) {
+  initialize_with_page_size(rs, used_size, page_size);
 }
 
-bool G1PageBasedVirtualSpace::initialize_with_granularity(ReservedSpace rs, size_t page_size) {
-  if (!rs.is_reserved()) {
-    return false;  // Allocation failed.
-  }
-  assert(_low_boundary == NULL, "VirtualSpace already initialized");
-  assert(page_size > 0, "Granularity must be non-zero.");
+void G1PageBasedVirtualSpace::initialize_with_page_size(ReservedSpace rs, size_t used_size, size_t page_size) {
+  guarantee(rs.is_reserved(), "Given reserved space must have been reserved already.");
+
+  vmassert(_low_boundary == NULL, "VirtualSpace already initialized");
+  vmassert(page_size > 0, "Page size must be non-zero.");
+
+  guarantee(is_ptr_aligned(rs.base(), page_size),
+            err_msg("Reserved space base " PTR_FORMAT " is not aligned to requested page size " SIZE_FORMAT, p2i(rs.base()), page_size));
+  guarantee(is_size_aligned(used_size, os::vm_page_size()),
+            err_msg("Given used reserved space size needs to be OS page size aligned (%d bytes) but is " SIZE_FORMAT, os::vm_page_size(), used_size));
+  guarantee(used_size <= rs.size(),
+            err_msg("Used size of reserved space " SIZE_FORMAT " bytes is smaller than reservation at " SIZE_FORMAT " bytes", used_size, rs.size()));
+  guarantee(is_size_aligned(rs.size(), page_size),
+            err_msg("Expected that the virtual space is size aligned, but " SIZE_FORMAT " is not aligned to page size " SIZE_FORMAT, rs.size(), page_size));
 
   _low_boundary  = rs.base();
-  _high_boundary = _low_boundary + rs.size();
+  _high_boundary = _low_boundary + used_size;
 
   _special = rs.special();
   _executable = rs.executable();
 
   _page_size = page_size;
 
-  assert(_committed.size() == 0, "virtual space initialized more than once");
-  uintx size_in_bits = rs.size() / page_size;
-  _committed.resize(size_in_bits, /* in_resource_area */ false);
+  vmassert(_committed.size() == 0, "virtual space initialized more than once");
+  BitMap::idx_t size_in_pages = rs.size() / page_size;
+  _committed.resize(size_in_pages, /* in_resource_area */ false);
   if (_special) {
-    _dirty.resize(size_in_bits, /* in_resource_area */ false);
+    _dirty.resize(size_in_pages, /* in_resource_area */ false);
   }
 
-  return true;
+  _tail_size = used_size % _page_size;
 }
 
-
 G1PageBasedVirtualSpace::~G1PageBasedVirtualSpace() {
   release();
 }
@@ -87,12 +95,18 @@
   _special                = false;
   _executable             = false;
   _page_size              = 0;
+  _tail_size              = 0;
   _committed.resize(0, false);
   _dirty.resize(0, false);
 }
 
 size_t G1PageBasedVirtualSpace::committed_size() const {
-  return _committed.count_one_bits() * _page_size;
+  size_t result = _committed.count_one_bits() * _page_size;
+  // The last page might not be in full.
+  if (is_last_page_partial() && _committed.at(_committed.size() - 1)) {
+    result -= _page_size - _tail_size;
+  }
+  return result;
 }
 
 size_t G1PageBasedVirtualSpace::reserved_size() const {
@@ -103,65 +117,134 @@
   return reserved_size() - committed_size();
 }
 
-uintptr_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
+size_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const {
   return (addr - _low_boundary) / _page_size;
 }
 
-bool G1PageBasedVirtualSpace::is_area_committed(uintptr_t start, size_t size_in_pages) const {
-  uintptr_t end = start + size_in_pages;
-  return _committed.get_next_zero_offset(start, end) >= end;
+bool G1PageBasedVirtualSpace::is_area_committed(size_t start_page, size_t size_in_pages) const {
+  size_t end_page = start_page + size_in_pages;
+  return _committed.get_next_zero_offset(start_page, end_page) >= end_page;
 }
 
-bool G1PageBasedVirtualSpace::is_area_uncommitted(uintptr_t start, size_t size_in_pages) const {
-  uintptr_t end = start + size_in_pages;
-  return _committed.get_next_one_offset(start, end) >= end;
+bool G1PageBasedVirtualSpace::is_area_uncommitted(size_t start_page, size_t size_in_pages) const {
+  size_t end_page = start_page + size_in_pages;
+  return _committed.get_next_one_offset(start_page, end_page) >= end_page;
 }
 
-char* G1PageBasedVirtualSpace::page_start(uintptr_t index) {
+char* G1PageBasedVirtualSpace::page_start(size_t index) const {
   return _low_boundary + index * _page_size;
 }
 
-size_t G1PageBasedVirtualSpace::byte_size_for_pages(size_t num) {
-  return num * _page_size;
+bool G1PageBasedVirtualSpace::is_after_last_page(size_t index) const {
+  guarantee(index <= _committed.size(),
+            err_msg("Given boundary page " SIZE_FORMAT " is beyond managed page count " SIZE_FORMAT, index, _committed.size()));
+  return index == _committed.size();
+}
+
+void G1PageBasedVirtualSpace::commit_preferred_pages(size_t start, size_t num_pages) {
+  vmassert(num_pages > 0, "No full pages to commit");
+  vmassert(start + num_pages <= _committed.size(),
+           err_msg("Tried to commit area from page " SIZE_FORMAT " to page " SIZE_FORMAT " "
+                   "that is outside of managed space of " SIZE_FORMAT " pages",
+                   start, start + num_pages, _committed.size()));
+
+  char* start_addr = page_start(start);
+  size_t size = num_pages * _page_size;
+
+  os::commit_memory_or_exit(start_addr, size, _page_size, _executable,
+                            err_msg("Failed to commit area from " PTR_FORMAT " to " PTR_FORMAT " of length " SIZE_FORMAT ".",
+                                    p2i(start_addr), p2i(start_addr + size), size));
+}
+
+void G1PageBasedVirtualSpace::commit_tail() {
+  vmassert(_tail_size > 0, "The size of the tail area must be > 0 when reaching here");
+
+  char* const aligned_end_address = (char*)align_ptr_down(_high_boundary, _page_size);
+  os::commit_memory_or_exit(aligned_end_address, _tail_size, os::vm_page_size(), _executable,
+                            err_msg("Failed to commit tail area from " PTR_FORMAT " to " PTR_FORMAT " of length " SIZE_FORMAT ".",
+                                    p2i(aligned_end_address), p2i(_high_boundary), _tail_size));
 }
 
-bool G1PageBasedVirtualSpace::commit(uintptr_t start, size_t size_in_pages) {
+void G1PageBasedVirtualSpace::commit_internal(size_t start_page, size_t end_page) {
+  guarantee(start_page < end_page,
+            err_msg("Given start page " SIZE_FORMAT " is larger or equal to end page " SIZE_FORMAT, start_page, end_page));
+  guarantee(end_page <= _committed.size(),
+            err_msg("Given end page " SIZE_FORMAT " is beyond end of managed page amount of " SIZE_FORMAT, end_page, _committed.size()));
+
+  size_t pages = end_page - start_page;
+  bool need_to_commit_tail = is_after_last_page(end_page) && is_last_page_partial();
+
+  // If we have to commit some (partial) tail area, decrease the amount of pages to avoid
+  // committing that in the full-page commit code.
+  if (need_to_commit_tail) {
+    pages--;
+  }
+
+  if (pages > 0) {
+    commit_preferred_pages(start_page, pages);
+  }
+
+  if (need_to_commit_tail) {
+    commit_tail();
+  }
+}
+
+char* G1PageBasedVirtualSpace::bounded_end_addr(size_t end_page) const {
+  return MIN2(_high_boundary, page_start(end_page));
+}
+
+void G1PageBasedVirtualSpace::pretouch_internal(size_t start_page, size_t end_page) {
+  guarantee(start_page < end_page,
+            err_msg("Given start page " SIZE_FORMAT " is larger or equal to end page " SIZE_FORMAT, start_page, end_page));
+
+  os::pretouch_memory(page_start(start_page), bounded_end_addr(end_page));
+}
+
+bool G1PageBasedVirtualSpace::commit(size_t start_page, size_t size_in_pages) {
   // We need to make sure to commit all pages covered by the given area.
-  guarantee(is_area_uncommitted(start, size_in_pages), "Specified area is not uncommitted");
+  guarantee(is_area_uncommitted(start_page, size_in_pages), "Specified area is not uncommitted");
 
   bool zero_filled = true;
-  uintptr_t end = start + size_in_pages;
+  size_t end_page = start_page + size_in_pages;
 
   if (_special) {
     // Check for dirty pages and update zero_filled if any found.
-    if (_dirty.get_next_one_offset(start,end) < end) {
+    if (_dirty.get_next_one_offset(start_page, end_page) < end_page) {
       zero_filled = false;
-      _dirty.clear_range(start, end);
+      _dirty.clear_range(start_page, end_page);
     }
   } else {
-    os::commit_memory_or_exit(page_start(start), byte_size_for_pages(size_in_pages), _executable,
-                              err_msg("Failed to commit pages from "SIZE_FORMAT" of length "SIZE_FORMAT, start, size_in_pages));
+    commit_internal(start_page, end_page);
   }
-  _committed.set_range(start, end);
+  _committed.set_range(start_page, end_page);
 
   if (AlwaysPreTouch) {
-    os::pretouch_memory(page_start(start), page_start(end));
+    pretouch_internal(start_page, end_page);
   }
   return zero_filled;
 }
 
-void G1PageBasedVirtualSpace::uncommit(uintptr_t start, size_t size_in_pages) {
-  guarantee(is_area_committed(start, size_in_pages), "checking");
+void G1PageBasedVirtualSpace::uncommit_internal(size_t start_page, size_t end_page) {
+  guarantee(start_page < end_page,
+            err_msg("Given start page " SIZE_FORMAT " is larger or equal to end page " SIZE_FORMAT, start_page, end_page));
 
+  char* start_addr = page_start(start_page);
+  os::uncommit_memory(start_addr, pointer_delta(bounded_end_addr(end_page), start_addr, sizeof(char)));
+}
+
+void G1PageBasedVirtualSpace::uncommit(size_t start_page, size_t size_in_pages) {
+  guarantee(is_area_committed(start_page, size_in_pages), "checking");
+
+  size_t end_page = start_page + size_in_pages;
   if (_special) {
     // Mark that memory is dirty. If committed again the memory might
     // need to be cleared explicitly.
-    _dirty.set_range(start, start + size_in_pages);
+    _dirty.set_range(start_page, end_page);
   } else {
-    os::uncommit_memory(page_start(start), byte_size_for_pages(size_in_pages));
+    uncommit_internal(start_page, end_page);
   }
 
-  _committed.clear_range(start, start + size_in_pages);
+  _committed.clear_range(start_page, end_page);
 }
 
 bool G1PageBasedVirtualSpace::contains(const void* p) const {
@@ -175,7 +258,8 @@
   out->cr();
   out->print_cr(" - committed: " SIZE_FORMAT, committed_size());
   out->print_cr(" - reserved:  " SIZE_FORMAT, reserved_size());
-  out->print_cr(" - [low_b, high_b]: [" INTPTR_FORMAT ", " INTPTR_FORMAT "]",  p2i(_low_boundary), p2i(_high_boundary));
+  out->print_cr(" - preferred page size: " SIZE_FORMAT, _page_size);
+  out->print_cr(" - [low_b, high_b]: [" PTR_FORMAT ", " PTR_FORMAT "]",  p2i(_low_boundary), p2i(_high_boundary));
 }
 
 void G1PageBasedVirtualSpace::print() {
--- a/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,13 +27,19 @@
 
 #include "memory/allocation.hpp"
 #include "memory/memRegion.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/bitMap.hpp"
 
 // Virtual space management helper for a virtual space with an OS page allocation
 // granularity.
 // (De-)Allocation requests are always OS page aligned by passing a page index
 // and multiples of pages.
+// For systems that only commits of memory in a given size (always greater than
+// page size) the base address is required to be aligned to that page size.
+// The actual size requested need not be aligned to that page size, but the size
+// of the reservation passed may be rounded up to this page size. Any fragment
+// (less than the page size) of the actual size at the tail of the request will
+// be committed using OS small pages.
 // The implementation gives an error when trying to commit or uncommit pages that
 // have already been committed or uncommitted.
 class G1PageBasedVirtualSpace VALUE_OBJ_CLASS_SPEC {
@@ -43,7 +49,11 @@
   char* _low_boundary;
   char* _high_boundary;
 
-  // The commit/uncommit granularity in bytes.
+  // The size of the tail in bytes of the handled space that needs to be committed
+  // using small pages.
+  size_t _tail_size;
+
+  // The preferred page size used for commit/uncommit in bytes.
   size_t _page_size;
 
   // Bitmap used for verification of commit/uncommit operations.
@@ -62,30 +72,55 @@
   // Indicates whether the committed space should be executable.
   bool _executable;
 
+  // Helper function for committing memory. Commit the given memory range by using
+  // _page_size pages as much as possible and the remainder with small sized pages.
+  void commit_internal(size_t start_page, size_t end_page);
+  // Commit num_pages pages of _page_size size starting from start. All argument
+  // checking has been performed.
+  void commit_preferred_pages(size_t start_page, size_t end_page);
+  // Commit space at the high end of the space that needs to be committed with small
+  // sized pages.
+  void commit_tail();
+
+  // Uncommit the given memory range.
+  void uncommit_internal(size_t start_page, size_t end_page);
+
+  // Pretouch the given memory range.
+  void pretouch_internal(size_t start_page, size_t end_page);
+
   // Returns the index of the page which contains the given address.
   uintptr_t  addr_to_page_index(char* addr) const;
   // Returns the address of the given page index.
-  char*  page_start(uintptr_t index);
-  // Returns the byte size of the given number of pages.
-  size_t byte_size_for_pages(size_t num);
+  char*  page_start(size_t index) const;
+
+  // Is the given page index the last page?
+  bool is_last_page(size_t index) const { return index == (_committed.size() - 1); }
+  // Is the given page index the first after last page?
+  bool is_after_last_page(size_t index) const;
+  // Is the last page only partially covered by this space?
+  bool is_last_page_partial() const { return !is_ptr_aligned(_high_boundary, _page_size); }
+  // Returns the end address of the given page bounded by the reserved space.
+  char* bounded_end_addr(size_t end_page) const;
 
   // Returns true if the entire area is backed by committed memory.
-  bool is_area_committed(uintptr_t start, size_t size_in_pages) const;
+  bool is_area_committed(size_t start_page, size_t size_in_pages) const;
   // Returns true if the entire area is not backed by committed memory.
-  bool is_area_uncommitted(uintptr_t start, size_t size_in_pages) const;
+  bool is_area_uncommitted(size_t start_page, size_t size_in_pages) const;
 
+  void initialize_with_page_size(ReservedSpace rs, size_t used_size, size_t page_size);
  public:
 
   // Commit the given area of pages starting at start being size_in_pages large.
   // Returns true if the given area is zero filled upon completion.
-  bool commit(uintptr_t start, size_t size_in_pages);
+  bool commit(size_t start_page, size_t size_in_pages);
 
   // Uncommit the given area of pages starting at start being size_in_pages large.
-  void uncommit(uintptr_t start, size_t size_in_pages);
+  void uncommit(size_t start_page, size_t size_in_pages);
 
-  // Initialization
-  G1PageBasedVirtualSpace();
-  bool initialize_with_granularity(ReservedSpace rs, size_t page_size);
+  // Initialize the given reserved space with the given base address and the size
+  // actually used.
+  // Prefer to commit in page_size chunks.
+  G1PageBasedVirtualSpace(ReservedSpace rs, size_t used_size, size_t page_size);
 
   // Destruction
   ~G1PageBasedVirtualSpace();
--- a/hotspot/src/share/vm/gc_implementation/g1/g1ParScanThreadState.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1ParScanThreadState.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,8 +26,10 @@
 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
 #include "gc_implementation/g1/g1OopClosures.inline.hpp"
 #include "gc_implementation/g1/g1ParScanThreadState.inline.hpp"
+#include "gc_implementation/g1/g1StringDedup.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/prefetch.inline.hpp"
+#include "utilities/stack.inline.hpp"
 
 G1ParScanThreadState::G1ParScanThreadState(G1CollectedHeap* g1h, uint queue_num, ReferenceProcessor* rp)
   : _g1h(g1h),
--- a/hotspot/src/share/vm/gc_implementation/g1/g1ParScanThreadState.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1ParScanThreadState.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -63,7 +63,7 @@
   assert(has_partial_array_mask(p), "invariant");
   oop from_obj = clear_partial_array_mask(p);
 
-  assert(Universe::heap()->is_in_reserved(from_obj), "must be in heap.");
+  assert(_g1h->is_in_reserved(from_obj), "must be in heap.");
   assert(from_obj->is_objArray(), "must be obj array");
   objArrayOop from_obj_array = objArrayOop(from_obj);
   // The from-space object contains the real length.
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RegionToSpaceMapper.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RegionToSpaceMapper.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,22 +26,21 @@
 #include "gc_implementation/g1/g1BiasedArray.hpp"
 #include "gc_implementation/g1/g1RegionToSpaceMapper.hpp"
 #include "memory/allocation.inline.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "services/memTracker.hpp"
 #include "utilities/bitMap.inline.hpp"
 
 G1RegionToSpaceMapper::G1RegionToSpaceMapper(ReservedSpace rs,
-                                             size_t commit_granularity,
+                                             size_t used_size,
+                                             size_t page_size,
                                              size_t region_granularity,
                                              MemoryType type) :
-  _storage(),
-  _commit_granularity(commit_granularity),
+  _storage(rs, used_size, page_size),
   _region_granularity(region_granularity),
   _listener(NULL),
   _commit_map() {
-  guarantee(is_power_of_2(commit_granularity), "must be");
+  guarantee(is_power_of_2(page_size), "must be");
   guarantee(is_power_of_2(region_granularity), "must be");
-  _storage.initialize_with_granularity(rs, commit_granularity);
 
   MemTracker::record_virtual_memory_type((address)rs.base(), type);
 }
@@ -55,25 +54,26 @@
 
  public:
   G1RegionsLargerThanCommitSizeMapper(ReservedSpace rs,
-                                      size_t os_commit_granularity,
+                                      size_t actual_size,
+                                      size_t page_size,
                                       size_t alloc_granularity,
                                       size_t commit_factor,
                                       MemoryType type) :
-     G1RegionToSpaceMapper(rs, os_commit_granularity, alloc_granularity, type),
-    _pages_per_region(alloc_granularity / (os_commit_granularity * commit_factor)) {
+    G1RegionToSpaceMapper(rs, actual_size, page_size, alloc_granularity, type),
+    _pages_per_region(alloc_granularity / (page_size * commit_factor)) {
 
-    guarantee(alloc_granularity >= os_commit_granularity, "allocation granularity smaller than commit granularity");
+    guarantee(alloc_granularity >= page_size, "allocation granularity smaller than commit granularity");
     _commit_map.resize(rs.size() * commit_factor / alloc_granularity, /* in_resource_area */ false);
   }
 
-  virtual void commit_regions(uintptr_t start_idx, size_t num_regions) {
-    bool zero_filled = _storage.commit(start_idx * _pages_per_region, num_regions * _pages_per_region);
+  virtual void commit_regions(uint start_idx, size_t num_regions) {
+    bool zero_filled = _storage.commit((size_t)start_idx * _pages_per_region, num_regions * _pages_per_region);
     _commit_map.set_range(start_idx, start_idx + num_regions);
     fire_on_commit(start_idx, num_regions, zero_filled);
   }
 
-  virtual void uncommit_regions(uintptr_t start_idx, size_t num_regions) {
-    _storage.uncommit(start_idx * _pages_per_region, num_regions * _pages_per_region);
+  virtual void uncommit_regions(uint start_idx, size_t num_regions) {
+    _storage.uncommit((size_t)start_idx * _pages_per_region, num_regions * _pages_per_region);
     _commit_map.clear_range(start_idx, start_idx + num_regions);
   }
 };
@@ -98,22 +98,23 @@
 
  public:
   G1RegionsSmallerThanCommitSizeMapper(ReservedSpace rs,
-                                       size_t os_commit_granularity,
+                                       size_t actual_size,
+                                       size_t page_size,
                                        size_t alloc_granularity,
                                        size_t commit_factor,
                                        MemoryType type) :
-     G1RegionToSpaceMapper(rs, os_commit_granularity, alloc_granularity, type),
-    _regions_per_page((os_commit_granularity * commit_factor) / alloc_granularity), _refcounts() {
+    G1RegionToSpaceMapper(rs, actual_size, page_size, alloc_granularity, type),
+    _regions_per_page((page_size * commit_factor) / alloc_granularity), _refcounts() {
 
-    guarantee((os_commit_granularity * commit_factor) >= alloc_granularity, "allocation granularity smaller than commit granularity");
-    _refcounts.initialize((HeapWord*)rs.base(), (HeapWord*)(rs.base() + rs.size()), os_commit_granularity);
+    guarantee((page_size * commit_factor) >= alloc_granularity, "allocation granularity smaller than commit granularity");
+    _refcounts.initialize((HeapWord*)rs.base(), (HeapWord*)(rs.base() + align_size_up(rs.size(), page_size)), page_size);
     _commit_map.resize(rs.size() * commit_factor / alloc_granularity, /* in_resource_area */ false);
   }
 
-  virtual void commit_regions(uintptr_t start_idx, size_t num_regions) {
-    for (uintptr_t i = start_idx; i < start_idx + num_regions; i++) {
-      assert(!_commit_map.at(i), err_msg("Trying to commit storage at region "INTPTR_FORMAT" that is already committed", i));
-      uintptr_t idx = region_idx_to_page_idx(i);
+  virtual void commit_regions(uint start_idx, size_t num_regions) {
+    for (uint i = start_idx; i < start_idx + num_regions; i++) {
+      assert(!_commit_map.at(i), err_msg("Trying to commit storage at region %u that is already committed", i));
+      size_t idx = region_idx_to_page_idx(i);
       uint old_refcount = _refcounts.get_by_index(idx);
       bool zero_filled = false;
       if (old_refcount == 0) {
@@ -125,10 +126,10 @@
     }
   }
 
-  virtual void uncommit_regions(uintptr_t start_idx, size_t num_regions) {
-    for (uintptr_t i = start_idx; i < start_idx + num_regions; i++) {
-      assert(_commit_map.at(i), err_msg("Trying to uncommit storage at region "INTPTR_FORMAT" that is not committed", i));
-      uintptr_t idx = region_idx_to_page_idx(i);
+  virtual void uncommit_regions(uint start_idx, size_t num_regions) {
+    for (uint i = start_idx; i < start_idx + num_regions; i++) {
+      assert(_commit_map.at(i), err_msg("Trying to uncommit storage at region %u that is not committed", i));
+      size_t idx = region_idx_to_page_idx(i);
       uint old_refcount = _refcounts.get_by_index(idx);
       assert(old_refcount > 0, "must be");
       if (old_refcount == 1) {
@@ -147,14 +148,15 @@
 }
 
 G1RegionToSpaceMapper* G1RegionToSpaceMapper::create_mapper(ReservedSpace rs,
-                                                            size_t os_commit_granularity,
+                                                            size_t actual_size,
+                                                            size_t page_size,
                                                             size_t region_granularity,
                                                             size_t commit_factor,
                                                             MemoryType type) {
 
-  if (region_granularity >= (os_commit_granularity * commit_factor)) {
-    return new G1RegionsLargerThanCommitSizeMapper(rs, os_commit_granularity, region_granularity, commit_factor, type);
+  if (region_granularity >= (page_size * commit_factor)) {
+    return new G1RegionsLargerThanCommitSizeMapper(rs, actual_size, page_size, region_granularity, commit_factor, type);
   } else {
-    return new G1RegionsSmallerThanCommitSizeMapper(rs, os_commit_granularity, region_granularity, commit_factor, type);
+    return new G1RegionsSmallerThanCommitSizeMapper(rs, actual_size, page_size, region_granularity, commit_factor, type);
   }
 }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RegionToSpaceMapper.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RegionToSpaceMapper.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -46,12 +46,12 @@
  protected:
   // Backing storage.
   G1PageBasedVirtualSpace _storage;
-  size_t _commit_granularity;
+
   size_t _region_granularity;
   // Mapping management
   BitMap _commit_map;
 
-  G1RegionToSpaceMapper(ReservedSpace rs, size_t commit_granularity, size_t region_granularity, MemoryType type);
+  G1RegionToSpaceMapper(ReservedSpace rs, size_t used_size, size_t page_size, size_t region_granularity, MemoryType type);
 
   void fire_on_commit(uint start_idx, size_t num_regions, bool zero_filled);
  public:
@@ -70,16 +70,20 @@
     return _commit_map.at(idx);
   }
 
-  virtual void commit_regions(uintptr_t start_idx, size_t num_regions = 1) = 0;
-  virtual void uncommit_regions(uintptr_t start_idx, size_t num_regions = 1) = 0;
+  virtual void commit_regions(uint start_idx, size_t num_regions = 1) = 0;
+  virtual void uncommit_regions(uint start_idx, size_t num_regions = 1) = 0;
 
   // Creates an appropriate G1RegionToSpaceMapper for the given parameters.
+  // The actual space to be used within the given reservation is given by actual_size.
+  // This is because some OSes need to round up the reservation size to guarantee
+  // alignment of page_size.
   // The byte_translation_factor defines how many bytes in a region correspond to
   // a single byte in the data structure this mapper is for.
   // Eg. in the card table, this value corresponds to the size a single card
-  // table entry corresponds to.
+  // table entry corresponds to in the heap.
   static G1RegionToSpaceMapper* create_mapper(ReservedSpace rs,
-                                              size_t os_commit_granularity,
+                                              size_t actual_size,
+                                              size_t page_size,
                                               size_t region_granularity,
                                               size_t byte_translation_factor,
                                               MemoryType type);
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -38,6 +38,7 @@
 #include "oops/oop.inline.hpp"
 #include "utilities/globalDefinitions.hpp"
 #include "utilities/intHisto.hpp"
+#include "utilities/stack.inline.hpp"
 
 #define CARD_REPEAT_HISTO 0
 
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RemSet.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -57,7 +57,7 @@
   oopDesc* o = obj;
 #endif // CHECK_UNHANDLED_OOPS
   assert((intptr_t)o % MinObjAlignmentInBytes == 0, "not oop aligned");
-  assert(Universe::heap()->is_in_reserved(obj), "must be in heap");
+  assert(_g1->is_in_reserved(obj), "must be in heap");
 #endif // ASSERT
 
   assert(from == NULL || from->is_in_reserved(p), "p is not in from");
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -116,7 +116,7 @@
 G1RootProcessor::G1RootProcessor(G1CollectedHeap* g1h) :
     _g1h(g1h),
     _process_strong_tasks(new SubTasksDone(G1RP_PS_NumElements)),
-    _srs(g1h),
+    _srs(),
     _lock(Mutex::leaf, "G1 Root Scanning barrier lock", false, Monitor::_safepoint_check_never),
     _n_workers_discovered_strong_classes(0) {}
 
@@ -253,7 +253,8 @@
 
   {
     G1GCParPhaseTimesTracker x(phase_times, G1GCPhaseTimes::ThreadRoots, worker_i);
-    Threads::possibly_parallel_oops_do(strong_roots, thread_stack_clds, strong_code);
+    bool is_par = _g1h->n_par_threads() > 0;
+    Threads::possibly_parallel_oops_do(is_par, strong_roots, thread_stack_clds, strong_code);
   }
 }
 
@@ -323,10 +324,6 @@
 void G1RootProcessor::scan_remembered_sets(G1ParPushHeapRSClosure* scan_rs,
                                            OopClosure* scan_non_heap_weak_roots,
                                            uint worker_i) {
-  G1GCPhaseTimes* phase_times = _g1h->g1_policy()->phase_times();
-  G1GCParPhaseTimesTracker x(phase_times, G1GCPhaseTimes::CodeCacheRoots, worker_i);
-
-  // Now scan the complement of the collection set.
   G1CodeBlobClosure scavenge_cs_nmethods(scan_non_heap_weak_roots);
 
   _g1h->g1_rem_set()->oops_into_collection_set_do(scan_rs, &scavenge_cs_nmethods, worker_i);
--- a/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 #define SHARE_VM_GC_IMPLEMENTATION_G1_ROOTPROCESSOR_HPP
 
 #include "memory/allocation.hpp"
-#include "memory/sharedHeap.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "runtime/mutex.hpp"
 
 class CLDClosure;
@@ -46,7 +46,7 @@
 class G1RootProcessor : public StackObj {
   G1CollectedHeap* _g1h;
   SubTasksDone* _process_strong_tasks;
-  SharedHeap::StrongRootsScope _srs;
+  StrongRootsScope _srs;
 
   // Used to implement the Thread work barrier.
   Monitor _lock;
--- a/hotspot/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -206,7 +206,7 @@
   if (new_val == NULL) return;
   // Otherwise, log it.
   G1SATBCardTableLoggingModRefBS* g1_bs =
-    barrier_set_cast<G1SATBCardTableLoggingModRefBS>(Universe::heap()->barrier_set());
+    barrier_set_cast<G1SATBCardTableLoggingModRefBS>(G1CollectedHeap::heap()->barrier_set());
   g1_bs->write_ref_field_work(field, new_val);
 }
 
--- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -24,6 +24,7 @@
 
 #include "precompiled.hpp"
 #include "classfile/javaClasses.inline.hpp"
+#include "gc_implementation/g1/g1CollectedHeap.hpp"
 #include "gc_implementation/g1/g1StringDedup.hpp"
 #include "gc_implementation/g1/g1StringDedupQueue.hpp"
 #include "memory/gcLocker.hpp"
@@ -163,7 +164,7 @@
     while (!iter.is_empty()) {
       oop obj = iter.next();
       if (obj != NULL) {
-        guarantee(Universe::heap()->is_in_reserved(obj), "Object must be on the heap");
+        guarantee(G1CollectedHeap::heap()->is_in_reserved(obj), "Object must be on the heap");
         guarantee(!obj->is_forwarded(), "Object must not be forwarded");
         guarantee(java_lang_String::is_instance(obj), "Object must be a String");
       }
--- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
 #include "classfile/javaClasses.inline.hpp"
 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
 #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp"
+#include "gc_implementation/g1/g1StringDedup.hpp"
 #include "gc_implementation/g1/g1StringDedupTable.hpp"
 #include "memory/gcLocker.hpp"
 #include "memory/padded.inline.hpp"
@@ -519,7 +520,7 @@
     while (*entry != NULL) {
       typeArrayOop value = (*entry)->obj();
       guarantee(value != NULL, "Object must not be NULL");
-      guarantee(Universe::heap()->is_in_reserved(value), "Object must be on the heap");
+      guarantee(G1CollectedHeap::heap()->is_in_reserved(value), "Object must be on the heap");
       guarantee(!value->is_forwarded(), "Object must not be forwarded");
       guarantee(value->is_typeArray(), "Object must be a typeArrayOop");
       unsigned int hash = hash_code(value);
--- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -29,6 +29,7 @@
 #include "runtime/mutexLocker.hpp"
 
 class G1StringDedupEntryCache;
+class G1StringDedupUnlinkOrOopsDoClosure;
 
 //
 // Table entry in the deduplication hashtable. Points weakly to the
--- a/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -41,15 +41,6 @@
   develop(intx, G1MarkingVerboseLevel, 0,                                   \
           "Level (0-4) of verboseness of the marking code")                 \
                                                                             \
-  develop(bool, G1PrintReachableAtInitialMark, false,                       \
-          "Reachable object dump at the initial mark pause")                \
-                                                                            \
-  develop(bool, G1VerifyDuringGCPrintReachable, false,                      \
-          "If conc mark verification fails, dump reachable objects")        \
-                                                                            \
-  develop(ccstr, G1PrintReachableBaseFile, NULL,                            \
-          "The base file name for the reachable object dumps")              \
-                                                                            \
   develop(bool, G1TraceMarkStackOverflow, false,                            \
           "If true, extra debugging code for CM restart for ovflw.")        \
                                                                             \
@@ -99,9 +90,6 @@
           "the buffer will be enqueued for processing. A value of 0 "       \
           "specifies that mutator threads should not do such filtering.")   \
                                                                             \
-  develop(bool, G1SATBPrintStubs, false,                                    \
-          "If true, print generated stubs for the SATB barrier")            \
-                                                                            \
   experimental(intx, G1ExpandByPercentOfAvailable, 20,                      \
           "When expanding, % of uncommitted space to claim.")               \
                                                                             \
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -31,7 +31,6 @@
 #include "gc_implementation/g1/survRateGroup.hpp"
 #include "gc_implementation/shared/ageTable.hpp"
 #include "gc_implementation/shared/spaceDecorator.hpp"
-#include "memory/space.inline.hpp"
 #include "memory/watermark.hpp"
 #include "utilities/macros.hpp"
 
@@ -45,6 +44,7 @@
 // The solution is to remove this method from the definition
 // of a Space.
 
+class G1CollectedHeap;
 class HeapRegionRemSet;
 class HeapRegionRemSetIterator;
 class HeapRegion;
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionManager.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionManager.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -330,8 +330,12 @@
         assert(!hrclaimer->is_region_claimed(ch_index),
                "Must not have been claimed yet because claiming of humongous continuation first claims the start region");
 
-        // There's no need to actually claim the continues humongous region, but we can do it in an assert as an extra precaution.
-        assert(hrclaimer->claim_region(ch_index), "We should always be able to claim the continuesHumongous part of the humongous object");
+        // Claim the region so no other worker tries to process the region. When a worker processes a
+        // starts_humongous region it may also process the associated continues_humongous regions.
+        // The continues_humongous regions can be changed to free regions. Unless this worker claims
+        // all of these regions, other workers might try claim and process these newly free regions.
+        bool claim_result = hrclaimer->claim_region(ch_index);
+        guarantee(claim_result, "We should always be able to claim the continuesHumongous part of the humongous object");
 
         bool res2 = blk->doHeapRegion(chr);
         if (res2) {
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -419,6 +419,7 @@
   ReservedSpace bot_rs(G1BlockOffsetSharedArray::compute_size(heap.word_size()));
   G1RegionToSpaceMapper* bot_storage =
     G1RegionToSpaceMapper::create_mapper(bot_rs,
+                                         bot_rs.size(),
                                          os::vm_page_size(),
                                          HeapRegion::GrainBytes,
                                          G1BlockOffsetSharedArray::N_bytes,
--- a/hotspot/src/share/vm/gc_implementation/g1/satbQueue.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/satbQueue.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,38 +25,75 @@
 #include "precompiled.hpp"
 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
 #include "gc_implementation/g1/satbQueue.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/allocation.inline.hpp"
-#include "memory/sharedHeap.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/mutexLocker.hpp"
 #include "runtime/thread.hpp"
 #include "runtime/vmThread.hpp"
 
 void ObjPtrQueue::flush() {
-  // The buffer might contain refs into the CSet. We have to filter it
-  // first before we flush it, otherwise we might end up with an
-  // enqueued buffer with refs into the CSet which breaks our invariants.
+  // Filter now to possibly save work later.  If filtering empties the
+  // buffer then flush_impl can deallocate the buffer.
   filter();
   flush_impl();
 }
 
-// This method removes entries from an SATB buffer that will not be
-// useful to the concurrent marking threads. An entry is removed if it
-// satisfies one of the following conditions:
+// Return true if a SATB buffer entry refers to an object that
+// requires marking.
+//
+// The entry must point into the G1 heap.  In particular, it must not
+// be a NULL pointer.  NULL pointers are pre-filtered and never
+// inserted into a SATB buffer.
+//
+// An entry that is below the NTAMS pointer for the containing heap
+// region requires marking. Such an entry must point to a valid object.
+//
+// An entry that is at least the NTAMS pointer for the containing heap
+// region might be any of the following, none of which should be marked.
+//
+// * A reference to an object allocated since marking started.
+//   According to SATB, such objects are implicitly kept live and do
+//   not need to be dealt with via SATB buffer processing.
+//
+// * A reference to a young generation object. Young objects are
+//   handled separately and are not marked by concurrent marking.
+//
+// * A stale reference to a young generation object. If a young
+//   generation object reference is recorded and not filtered out
+//   before being moved by a young collection, the reference becomes
+//   stale.
 //
-// * it points to an object outside the G1 heap (G1's concurrent
-//     marking only visits objects inside the G1 heap),
-// * it points to an object that has been allocated since marking
-//     started (according to SATB those objects do not need to be
-//     visited during marking), or
-// * it points to an object that has already been marked (no need to
-//     process it again).
+// * A stale reference to an eagerly reclaimed humongous object.  If a
+//   humongous object is recorded and then reclaimed, the reference
+//   becomes stale.
 //
-// The rest of the entries will be retained and are compacted towards
-// the top of the buffer. Note that, because we do not allow old
-// regions in the CSet during marking, all objects on the CSet regions
-// are young (eden or survivors) and therefore implicitly live. So any
-// references into the CSet will be removed during filtering.
+// The stale reference cases are implicitly handled by the NTAMS
+// comparison. Because of the possibility of stale references, buffer
+// processing must be somewhat circumspect and not assume entries
+// in an unfiltered buffer refer to valid objects.
+
+inline bool requires_marking(const void* entry, G1CollectedHeap* heap) {
+  // Includes rejection of NULL pointers.
+  assert(heap->is_in_reserved(entry),
+         err_msg("Non-heap pointer in SATB buffer: " PTR_FORMAT, p2i(entry)));
+
+  HeapRegion* region = heap->heap_region_containing_raw(entry);
+  assert(region != NULL, err_msg("No region for " PTR_FORMAT, p2i(entry)));
+  if (entry >= region->next_top_at_mark_start()) {
+    return false;
+  }
+
+  assert(((oop)entry)->is_oop(true /* ignore mark word */),
+         err_msg("Invalid oop in SATB buffer: " PTR_FORMAT, p2i(entry)));
+
+  return true;
+}
+
+// This method removes entries from a SATB buffer that will not be
+// useful to the concurrent marking threads.  Entries are retained if
+// they require marking and are not already marked. Retained entries
+// are compacted toward the top of the buffer.
 
 void ObjPtrQueue::filter() {
   G1CollectedHeap* g1h = G1CollectedHeap::heap();
@@ -78,26 +115,25 @@
     assert(i > 0, "we should have at least one more entry to process");
     i -= oopSize;
     debug_only(entries += 1;)
-    oop* p = (oop*) &buf[byte_index_to_index((int) i)];
-    oop obj = *p;
+    void** p = &buf[byte_index_to_index((int) i)];
+    void* entry = *p;
     // NULL the entry so that unused parts of the buffer contain NULLs
     // at the end. If we are going to retain it we will copy it to its
     // final place. If we have retained all entries we have visited so
     // far, we'll just end up copying it to the same place.
     *p = NULL;
 
-    bool retain = g1h->is_obj_ill(obj);
-    if (retain) {
+    if (requires_marking(entry, g1h) && !g1h->isMarkedNext((oop)entry)) {
       assert(new_index > 0, "we should not have already filled up the buffer");
       new_index -= oopSize;
       assert(new_index >= i,
              "new_index should never be below i, as we always compact 'up'");
-      oop* new_p = (oop*) &buf[byte_index_to_index((int) new_index)];
+      void** new_p = &buf[byte_index_to_index((int) new_index)];
       assert(new_p >= p, "the destination location should never be below "
              "the source as we always compact 'up'");
       assert(*new_p == NULL,
              "we should have already cleared the destination location");
-      *new_p = obj;
+      *new_p = entry;
       debug_only(retained += 1;)
     }
   }
@@ -144,12 +180,6 @@
   return should_enqueue;
 }
 
-void ObjPtrQueue::apply_closure(ObjectClosure* cl) {
-  if (_buf != NULL) {
-    apply_closure_to_buffer(cl, _buf, _index, _sz);
-  }
-}
-
 void ObjPtrQueue::apply_closure_and_empty(ObjectClosure* cl) {
   if (_buf != NULL) {
     apply_closure_to_buffer(cl, _buf, _index, _sz);
@@ -184,23 +214,12 @@
 }
 #endif // PRODUCT
 
-#ifdef ASSERT
-void ObjPtrQueue::verify_oops_in_buffer() {
-  if (_buf == NULL) return;
-  for (size_t i = _index; i < _sz; i += oopSize) {
-    oop obj = (oop)_buf[byte_index_to_index((int)i)];
-    assert(obj != NULL && obj->is_oop(true /* ignore mark word */),
-           "Not an oop");
-  }
-}
-#endif
-
 #ifdef _MSC_VER // the use of 'this' below gets a warning, make it go away
 #pragma warning( disable:4355 ) // 'this' : used in base member initializer list
 #endif // _MSC_VER
 
 SATBMarkQueueSet::SATBMarkQueueSet() :
-  PtrQueueSet(), _closures(NULL),
+  PtrQueueSet(),
   _shared_satb_queue(this, true /*perm*/) { }
 
 void SATBMarkQueueSet::initialize(Monitor* cbl_mon, Mutex* fl_lock,
@@ -208,11 +227,9 @@
                                   Mutex* lock) {
   PtrQueueSet::initialize(cbl_mon, fl_lock, process_completed_threshold, -1);
   _shared_satb_queue.set_lock(lock);
-  _closures = NEW_C_HEAP_ARRAY(ObjectClosure*, ParallelGCThreads, mtGC);
 }
 
 void SATBMarkQueueSet::handle_zero_index_for_thread(JavaThread* t) {
-  DEBUG_ONLY(t->satb_mark_queue().verify_oops_in_buffer();)
   t->satb_mark_queue().handle_zero_index();
 }
 
@@ -272,13 +289,7 @@
   shared_satb_queue()->filter();
 }
 
-void SATBMarkQueueSet::set_closure(uint worker, ObjectClosure* closure) {
-  assert(_closures != NULL, "Precondition");
-  assert(worker < ParallelGCThreads, "Worker index must be in range [0...ParallelGCThreads)");
-  _closures[worker] = closure;
-}
-
-bool SATBMarkQueueSet::apply_closure_to_completed_buffer(uint worker) {
+bool SATBMarkQueueSet::apply_closure_to_completed_buffer(ObjectClosure* cl) {
   BufferNode* nd = NULL;
   {
     MutexLockerEx x(_cbl_mon, Mutex::_no_safepoint_check_flag);
@@ -290,7 +301,6 @@
       if (_n_completed_buffers == 0) _process_completed = false;
     }
   }
-  ObjectClosure* cl = _closures[worker];
   if (nd != NULL) {
     void **buf = BufferNode::make_buffer_from_node(nd);
     ObjPtrQueue::apply_closure_to_buffer(cl, buf, 0, _sz);
@@ -301,28 +311,6 @@
   }
 }
 
-void SATBMarkQueueSet::iterate_completed_buffers_read_only(ObjectClosure* cl) {
-  assert(SafepointSynchronize::is_at_safepoint(), "Must be at safepoint.");
-  assert(cl != NULL, "pre-condition");
-
-  BufferNode* nd = _completed_buffers_head;
-  while (nd != NULL) {
-    void** buf = BufferNode::make_buffer_from_node(nd);
-    ObjPtrQueue::apply_closure_to_buffer(cl, buf, 0, _sz);
-    nd = nd->next();
-  }
-}
-
-void SATBMarkQueueSet::iterate_thread_buffers_read_only(ObjectClosure* cl) {
-  assert(SafepointSynchronize::is_at_safepoint(), "Must be at safepoint.");
-  assert(cl != NULL, "pre-condition");
-
-  for (JavaThread* t = Threads::first(); t; t = t->next()) {
-    t->satb_mark_queue().apply_closure(cl);
-  }
-  shared_satb_queue()->apply_closure(cl);
-}
-
 #ifndef PRODUCT
 // Helpful for debugging
 
--- a/hotspot/src/share/vm/gc_implementation/g1/satbQueue.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/satbQueue.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,9 +41,6 @@
   // Filter out unwanted entries from the buffer.
   void filter();
 
-  // Apply the closure to all elements.
-  void apply_closure(ObjectClosure* cl);
-
   // Apply the closure to all elements and empty the buffer;
   void apply_closure_and_empty(ObjectClosure* cl);
 
@@ -72,13 +69,9 @@
   void print(const char* name);
   static void print(const char* name, void** buf, size_t index, size_t sz);
 #endif // PRODUCT
-
-  void verify_oops_in_buffer() NOT_DEBUG_RETURN;
 };
 
 class SATBMarkQueueSet: public PtrQueueSet {
-  ObjectClosure** _closures;  // One per ParGCThread.
-
   ObjPtrQueue _shared_satb_queue;
 
 #ifdef ASSERT
@@ -104,22 +97,10 @@
   // Filter all the currently-active SATB buffers.
   void filter_thread_buffers();
 
-  // Register closure for the given worker thread. The "apply_closure_to_completed_buffer"
-  // method will apply this closure to a completed buffer, and "iterate_closure_all_threads"
-  // applies it to partially-filled buffers (the latter should only be done
-  // with the world stopped).
-  void set_closure(uint worker, ObjectClosure* closure);
-
   // If there exists some completed buffer, pop it, then apply the
-  // registered closure to all its elements, and return true.  If no
+  // closure to all its elements, and return true.  If no
   // completed buffers exist, return false.
-  bool apply_closure_to_completed_buffer(uint worker);
-
-  // Apply the given closure on enqueued and currently-active buffers
-  // respectively. Both methods are read-only, i.e., they do not
-  // modify any of the buffers.
-  void iterate_completed_buffers_read_only(ObjectClosure* cl);
-  void iterate_thread_buffers_read_only(ObjectClosure* cl);
+  bool apply_closure_to_completed_buffer(ObjectClosure* closure);
 
 #ifndef PRODUCT
   // Helpful for debugging
--- a/hotspot/src/share/vm/gc_implementation/g1/vmStructs_g1.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/vmStructs_g1.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,8 +26,8 @@
 #define SHARE_VM_GC_IMPLEMENTATION_G1_VMSTRUCTS_G1_HPP
 
 #include "gc_implementation/g1/heapRegion.hpp"
-#include "gc_implementation/g1/heapRegionManager.inline.hpp"
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
+#include "gc_implementation/g1/heapRegionManager.hpp"
+#include "gc_implementation/g1/g1CollectedHeap.hpp"
 
 #define VM_STRUCTS_G1(nonstatic_field, static_field)                          \
                                                                               \
@@ -70,7 +70,7 @@
                                                                               \
   declare_toplevel_type(G1HeapRegionTable)                                    \
                                                                               \
-  declare_type(G1CollectedHeap, SharedHeap)                                   \
+  declare_type(G1CollectedHeap, CollectedHeap)                                \
                                                                               \
   declare_type(G1OffsetTableContigSpace, CompactibleSpace)                    \
   declare_type(HeapRegion, G1OffsetTableContigSpace)                          \
--- a/hotspot/src/share/vm/gc_implementation/g1/vm_operations_g1.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/vm_operations_g1.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -225,15 +225,10 @@
 
 void VM_CGC_Operation::doit() {
   TraceCPUTime tcpu(G1Log::finer(), true, gclog_or_tty);
-  GCTraceTime t(_printGCMessage, G1Log::fine(), true, G1CollectedHeap::heap()->gc_timer_cm(), G1CollectedHeap::heap()->concurrent_mark()->concurrent_gc_id());
-  SharedHeap* sh = SharedHeap::heap();
-  // This could go away if CollectedHeap gave access to _gc_is_active...
-  if (sh != NULL) {
-    IsGCActiveMark x;
-    _cl->do_void();
-  } else {
-    _cl->do_void();
-  }
+  G1CollectedHeap* g1h = G1CollectedHeap::heap();
+  GCTraceTime t(_printGCMessage, G1Log::fine(), true, g1h->gc_timer_cm(), g1h->concurrent_mark()->concurrent_gc_id());
+  IsGCActiveMark x;
+  _cl->do_void();
 }
 
 bool VM_CGC_Operation::doit_prologue() {
@@ -244,14 +239,12 @@
   }
 
   Heap_lock->lock();
-  SharedHeap::heap()->_thread_holds_heap_lock_for_gc = true;
   return true;
 }
 
 void VM_CGC_Operation::doit_epilogue() {
   // Note the relative order of the unlocks must match that in
   // VM_GC_Operation::doit_epilogue()
-  SharedHeap::heap()->_thread_holds_heap_lock_for_gc = false;
   Heap_lock->unlock();
   if (_needs_pll) {
     release_and_notify_pending_list_lock();
--- a/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,17 +23,17 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/allocation.inline.hpp"
 #include "memory/cardTableModRefBS.hpp"
 #include "memory/cardTableRS.hpp"
-#include "memory/sharedHeap.hpp"
+#include "memory/genCollectedHeap.hpp"
 #include "memory/space.inline.hpp"
-#include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/java.hpp"
 #include "runtime/mutexLocker.hpp"
 #include "runtime/orderAccess.inline.hpp"
-#include "runtime/virtualspace.hpp"
 #include "runtime/vmThread.hpp"
 
 void CardTableModRefBS::non_clean_card_iterate_parallel_work(Space* sp, MemRegion mr,
@@ -449,7 +449,7 @@
   // Do a dirty read here. If we pass the conditional then take the rare
   // event lock and do the read again in case some other thread had already
   // succeeded and done the resize.
-  int cur_collection = Universe::heap()->total_collections();
+  int cur_collection = GenCollectedHeap::heap()->total_collections();
   if (_last_LNC_resizing_collection[i] != cur_collection) {
     MutexLocker x(ParGCRareEvent_lock);
     if (_last_LNC_resizing_collection[i] != cur_collection) {
--- a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -34,7 +34,7 @@
 #include "gc_implementation/shared/gcTimer.hpp"
 #include "gc_implementation/shared/gcTrace.hpp"
 #include "gc_implementation/shared/gcTraceTime.hpp"
-#include "gc_implementation/shared/parGCAllocBuffer.inline.hpp"
+#include "gc_implementation/shared/plab.inline.hpp"
 #include "gc_implementation/shared/spaceDecorator.hpp"
 #include "memory/defNewGeneration.inline.hpp"
 #include "memory/genCollectedHeap.hpp"
@@ -42,7 +42,7 @@
 #include "memory/generation.hpp"
 #include "memory/referencePolicy.hpp"
 #include "memory/resourceArea.hpp"
-#include "memory/sharedHeap.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "memory/space.hpp"
 #include "oops/objArrayOop.hpp"
 #include "oops/oop.inline.hpp"
@@ -53,6 +53,7 @@
 #include "runtime/thread.inline.hpp"
 #include "utilities/copy.hpp"
 #include "utilities/globalDefinitions.hpp"
+#include "utilities/stack.inline.hpp"
 #include "utilities/workgroup.hpp"
 
 #ifdef _MSC_VER
@@ -117,7 +118,7 @@
 void ParScanThreadState::scan_partial_array_and_push_remainder(oop old) {
   assert(old->is_objArray(), "must be obj array");
   assert(old->is_forwarded(), "must be forwarded");
-  assert(Universe::heap()->is_in_reserved(old), "must be in heap.");
+  assert(GenCollectedHeap::heap()->is_in_reserved(old), "must be in heap.");
   assert(!old_gen()->is_in(old), "must be in young generation.");
 
   objArrayOop obj = objArrayOop(old->forwardee());
@@ -199,9 +200,9 @@
   for (size_t i = 0; i != num_take_elems; i++) {
     oop cur = of_stack->pop();
     oop obj_to_push = cur->forwardee();
-    assert(Universe::heap()->is_in_reserved(cur), "Should be in heap");
+    assert(GenCollectedHeap::heap()->is_in_reserved(cur), "Should be in heap");
     assert(!old_gen()->is_in_reserved(cur), "Should be in young gen");
-    assert(Universe::heap()->is_in_reserved(obj_to_push), "Should be in heap");
+    assert(GenCollectedHeap::heap()->is_in_reserved(obj_to_push), "Should be in heap");
     if (should_be_partially_scanned(obj_to_push, cur)) {
       assert(arrayOop(cur)->length() == 0, "entire array remaining to be scanned");
       obj_to_push = cur;
@@ -225,7 +226,7 @@
   // buffer.
   HeapWord* obj = NULL;
   if (!_to_space_full) {
-    ParGCAllocBuffer* const plab = to_space_alloc_buffer();
+    PLAB* const plab = to_space_alloc_buffer();
     Space*            const sp   = to_space();
     if (word_sz * 100 <
         ParallelGCBufferWastePct * plab->word_sz()) {
@@ -235,7 +236,7 @@
       HeapWord* buf_space = sp->par_allocate(buf_size);
       if (buf_space == NULL) {
         const size_t min_bytes =
-          ParGCAllocBuffer::min_size() << LogHeapWordSize;
+          PLAB::min_size() << LogHeapWordSize;
         size_t free_bytes = sp->free();
         while(buf_space == NULL && free_bytes >= min_bytes) {
           buf_size = free_bytes >> LogHeapWordSize;
@@ -251,7 +252,7 @@
         record_survivor_plab(buf_space, buf_size);
         obj = plab->allocate_aligned(word_sz, SurvivorAlignmentInBytes);
         // Note that we cannot compare buf_size < word_sz below
-        // because of AlignmentReserve (see ParGCAllocBuffer::allocate()).
+        // because of AlignmentReserve (see PLAB::allocate()).
         assert(obj != NULL || plab->words_remaining() < word_sz,
                "Else should have been able to allocate");
         // It's conceivable that we may be able to use the
@@ -596,8 +597,6 @@
   // and handle marks.
   ResourceMark rm;
   HandleMark hm;
-  // We would need multiple old-gen queues otherwise.
-  assert(gch->n_gens() == 2, "Par young collection currently only works with one older gen.");
 
   ParScanThreadState& par_scan_state = _state_set->thread_state(worker_id);
   assert(_state_set->is_valid(worker_id), "Should not have been called");
@@ -697,7 +696,7 @@
 
   _par_cl->do_oop_nv(p);
 
-  if (Universe::heap()->is_in_reserved(p)) {
+  if (GenCollectedHeap::heap()->is_in_reserved(p)) {
     oop obj = oopDesc::load_decode_heap_oop_not_null(p);
     _rs->write_ref_field_gc_par(p, obj);
   }
@@ -724,7 +723,7 @@
 
   _cl->do_oop_nv(p);
 
-  if (Universe::heap()->is_in_reserved(p)) {
+  if (GenCollectedHeap::heap()->is_in_reserved(p)) {
     oop obj = oopDesc::load_decode_heap_oop_not_null(p);
     _rs->write_ref_field_gc_par(p, obj);
   }
@@ -823,8 +822,6 @@
 void ParNewRefProcTaskExecutor::execute(ProcessTask& task)
 {
   GenCollectedHeap* gch = GenCollectedHeap::heap();
-  assert(gch->kind() == CollectedHeap::GenCollectedHeap,
-         "not a generational heap");
   FlexibleWorkGang* workers = gch->workers();
   assert(workers != NULL, "Need parallel worker threads.");
   _state_set.reset(workers->active_workers(), _generation.promotion_failed());
@@ -899,7 +896,7 @@
     _gc_tracer.report_promotion_failed(_promotion_failed_info);
   }
   // Reset the PromotionFailureALot counters.
-  NOT_PRODUCT(Universe::heap()->reset_promotion_should_fail();)
+  NOT_PRODUCT(gch->reset_promotion_should_fail();)
 }
 
 void ParNewGeneration::collect(bool   full,
@@ -912,8 +909,6 @@
 
   _gc_timer->register_gc_start();
 
-  assert(gch->kind() == CollectedHeap::GenCollectedHeap,
-    "not a CMS generational heap");
   AdaptiveSizePolicy* size_policy = gch->gen_policy()->size_policy();
   FlexibleWorkGang* workers = gch->workers();
   assert(workers != NULL, "Need workgang for parallel work");
@@ -922,8 +917,6 @@
                                    workers->active_workers(),
                                    Threads::number_of_non_daemon_threads());
   workers->set_active_workers(active_workers);
-  assert(gch->n_gens() == 2,
-         "Par collection currently only works with single older gen.");
   _old_gen = gch->old_gen();
 
   // If the next generation is too full to accommodate worst-case promotion
@@ -974,10 +967,10 @@
   // in the multi-threaded case, but we special-case n=1 here to get
   // repeatable measurements of the 1-thread overhead of the parallel code.
   if (n_workers > 1) {
-    GenCollectedHeap::StrongRootsScope srs(gch);
+    StrongRootsScope srs;
     workers->run_task(&tsk);
   } else {
-    GenCollectedHeap::StrongRootsScope srs(gch);
+    StrongRootsScope srs;
     tsk.work(0);
   }
   thread_state_set.reset(0 /* Bad value in debug if not reset */,
@@ -1194,7 +1187,7 @@
   } else {
     // Is in to-space; do copying ourselves.
     Copy::aligned_disjoint_words((HeapWord*)old, (HeapWord*)new_obj, sz);
-    assert(Universe::heap()->is_in_reserved(new_obj), "illegal forwarding pointer value.");
+    assert(GenCollectedHeap::heap()->is_in_reserved(new_obj), "illegal forwarding pointer value.");
     forward_ptr = old->forward_to_atomic(new_obj);
     // Restore the mark word copied above.
     new_obj->set_mark(m);
--- a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -27,7 +27,7 @@
 
 #include "gc_implementation/parNew/parOopClosures.hpp"
 #include "gc_implementation/shared/gcTrace.hpp"
-#include "gc_implementation/shared/parGCAllocBuffer.hpp"
+#include "gc_implementation/shared/plab.hpp"
 #include "gc_implementation/shared/copyFailedInfo.hpp"
 #include "memory/defNewGeneration.hpp"
 #include "memory/padded.hpp"
@@ -65,7 +65,7 @@
   ObjToScanQueue *_work_queue;
   Stack<oop, mtGC>* const _overflow_stack;
 
-  ParGCAllocBuffer _to_space_alloc_buffer;
+  PLAB _to_space_alloc_buffer;
 
   ParScanWithoutBarrierClosure         _to_space_closure; // scan_without_gc_barrier
   ParScanWithBarrierClosure            _old_gen_closure; // scan_with_gc_barrier
@@ -140,7 +140,7 @@
 
   ObjToScanQueue* work_queue() { return _work_queue; }
 
-  ParGCAllocBuffer* to_space_alloc_buffer() {
+  PLAB* to_space_alloc_buffer() {
     return &_to_space_alloc_buffer;
   }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parOopClosures.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "memory/iterator.inline.hpp"
+#include "memory/specialized_oop_closures.hpp"
+#include "gc_implementation/parNew/parOopClosures.inline.hpp"
+
+// Generate ParNew specialized oop_oop_iterate functions.
+SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_P(ALL_KLASS_OOP_OOP_ITERATE_DEFN);
--- a/hotspot/src/share/vm/gc_implementation/parNew/parOopClosures.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parOopClosures.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -70,7 +70,7 @@
 inline void ParScanClosure::do_oop_work(T* p,
                                         bool gc_barrier,
                                         bool root_scan) {
-  assert((!Universe::heap()->is_in_reserved(p) ||
+  assert((!GenCollectedHeap::heap()->is_in_reserved(p) ||
           generation()->is_in_reserved(p))
          && (generation()->level() == 0 || gc_barrier),
          "The gen must be right, and we must be doing the barrier "
@@ -82,7 +82,7 @@
 #ifndef PRODUCT
       if (_g->to()->is_in_reserved(obj)) {
         tty->print_cr("Scanning field (" PTR_FORMAT ") twice?", p2i(p));
-        GenCollectedHeap* gch =  (GenCollectedHeap*)Universe::heap();
+        GenCollectedHeap* gch = GenCollectedHeap::heap();
         Space* sp = gch->space_containing(p);
         oop obj = oop(sp->block_start(p));
         assert((HeapWord*)obj < (HeapWord*)p, "Error");
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/asPSOldGen.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/asPSOldGen.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -89,7 +89,7 @@
   assert(virtual_space()->is_aligned(gen_size_limit()), "not aligned");
   assert(gen_size_limit() >= virtual_space()->committed_size(), "bad gen size");
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   size_t result =  gen_size_limit() - virtual_space()->committed_size();
   size_t result_aligned = align_size_down(result, heap->generation_alignment());
   return result_aligned;
@@ -101,7 +101,7 @@
     return uncommitted_bytes;
   }
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t gen_alignment = heap->generation_alignment();
   PSAdaptiveSizePolicy* policy = heap->size_policy();
   const size_t working_size =
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,7 @@
   size_t current_committed_size = virtual_space()->committed_size();
   assert((gen_size_limit() >= current_committed_size),
     "generation size limit is wrong");
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   size_t result =  gen_size_limit() - current_committed_size;
   size_t result_aligned = align_size_down(result, heap->generation_alignment());
   return result_aligned;
@@ -91,7 +91,7 @@
 
   if (eden_space()->is_empty()) {
     // Respect the minimum size for eden and for the young gen as a whole.
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     const size_t eden_alignment = heap->space_alignment();
     const size_t gen_alignment = heap->generation_alignment();
 
@@ -128,7 +128,7 @@
 // If to_space is below from_space, to_space is not considered.
 // to_space can be.
 size_t ASPSYoungGen::available_to_live() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t alignment = heap->space_alignment();
 
   // Include any space that is committed but is not in eden.
@@ -292,7 +292,7 @@
 
   assert(eden_start < from_start, "Cannot push into from_space");
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t alignment = heap->space_alignment();
   const bool maintain_minimum =
     (requested_eden_size + 2 * requested_survivor_size) <= min_gen_size();
@@ -345,8 +345,6 @@
 
     // Does the optimal to-space overlap from-space?
     if (to_start < (char*)from_space()->end()) {
-      assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
       // Calculate the minimum offset possible for from_end
       size_t from_size =
         pointer_delta(from_space()->top(), from_start, sizeof(char));
@@ -509,9 +507,7 @@
   assert(from_space()->top() == old_from_top, "from top changed!");
 
   if (PrintAdaptiveSizePolicy) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-    assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     gclog_or_tty->print("AdaptiveSizePolicy::survivor space sizes: "
                   "collection: %d "
                   "(" SIZE_FORMAT ", " SIZE_FORMAT ") -> "
@@ -542,7 +538,7 @@
   }
   MemRegion cmr((HeapWord*)virtual_space()->low(),
                 (HeapWord*)virtual_space()->high());
-  Universe::heap()->barrier_set()->resize_covered_region(cmr);
+  ParallelScavengeHeap::heap()->barrier_set()->resize_covered_region(cmr);
 
   space_invariants();
 }
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -76,9 +76,7 @@
 
  public:
   CheckForUnmarkedObjects() {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-    assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     _young_gen = heap->young_gen();
     _card_table = barrier_set_cast<CardTableExtension>(heap->barrier_set());
     // No point in asserting barrier set type here. Need to make CardTableExtension
@@ -325,9 +323,7 @@
 void CardTableExtension::verify_all_young_refs_imprecise() {
   CheckForUnmarkedObjects check;
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSOldGen* old_gen = heap->old_gen();
 
   old_gen->object_iterate(&check);
@@ -335,9 +331,7 @@
 
 // This should be called immediately after a scavenge, before mutators resume.
 void CardTableExtension::verify_all_young_refs_precise() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSOldGen* old_gen = heap->old_gen();
 
   CheckForPreciseMarks check(
@@ -351,7 +345,7 @@
 
 void CardTableExtension::verify_all_young_refs_precise_helper(MemRegion mr) {
   CardTableExtension* card_table =
-    barrier_set_cast<CardTableExtension>(Universe::heap()->barrier_set());
+    barrier_set_cast<CardTableExtension>(ParallelScavengeHeap::heap()->barrier_set());
 
   jbyte* bot = card_table->byte_for(mr.start());
   jbyte* top = card_table->byte_for(mr.end());
@@ -523,7 +517,7 @@
     cur_committed = new_committed;
   }
 #ifdef ASSERT
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   assert(cur_committed.start() ==
     (HeapWord*) align_size_up((uintptr_t) cur_committed.start(),
                               os::vm_page_size()),
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -49,42 +49,25 @@
 PSOldGen*    ParallelScavengeHeap::_old_gen = NULL;
 PSAdaptiveSizePolicy* ParallelScavengeHeap::_size_policy = NULL;
 PSGCAdaptivePolicyCounters* ParallelScavengeHeap::_gc_policy_counters = NULL;
-ParallelScavengeHeap* ParallelScavengeHeap::_psh = NULL;
 GCTaskManager* ParallelScavengeHeap::_gc_task_manager = NULL;
 
 jint ParallelScavengeHeap::initialize() {
   CollectedHeap::pre_initialize();
 
-  // Initialize collector policy
-  _collector_policy = new GenerationSizer();
-  _collector_policy->initialize_all();
-
   const size_t heap_size = _collector_policy->max_heap_byte_size();
 
   ReservedSpace heap_rs = Universe::reserve_heap(heap_size, _collector_policy->heap_alignment());
-  MemTracker::record_virtual_memory_type((address)heap_rs.base(), mtJavaHeap);
 
   os::trace_page_sizes("ps main", _collector_policy->min_heap_byte_size(),
                        heap_size, generation_alignment(),
                        heap_rs.base(),
                        heap_rs.size());
-  if (!heap_rs.is_reserved()) {
-    vm_shutdown_during_initialization(
-      "Could not reserve enough space for object heap");
-    return JNI_ENOMEM;
-  }
 
   initialize_reserved_region((HeapWord*)heap_rs.base(), (HeapWord*)(heap_rs.base() + heap_rs.size()));
 
   CardTableExtension* const barrier_set = new CardTableExtension(reserved_region());
   barrier_set->initialize();
-  _barrier_set = barrier_set;
-  oopDesc::set_bs(_barrier_set);
-  if (_barrier_set == NULL) {
-    vm_shutdown_during_initialization(
-      "Could not reserve enough space for barrier set");
-    return JNI_ENOMEM;
-  }
+  set_barrier_set(barrier_set);
 
   // Make up the generations
   // Calculate the maximum size that a generation can grow.  This
@@ -120,7 +103,6 @@
   // initialize the policy counters - 2 collectors, 3 generations
   _gc_policy_counters =
     new PSGCAdaptivePolicyCounters("ParScav:MSC", 2, 3, _size_policy);
-  _psh = this;
 
   // Set up the GCTaskManager
   _gc_task_manager = GCTaskManager::create(ParallelGCThreads);
@@ -176,27 +158,11 @@
 }
 
 bool ParallelScavengeHeap::is_in(const void* p) const {
-  if (young_gen()->is_in(p)) {
-    return true;
-  }
-
-  if (old_gen()->is_in(p)) {
-    return true;
-  }
-
-  return false;
+  return young_gen()->is_in(p) || old_gen()->is_in(p);
 }
 
 bool ParallelScavengeHeap::is_in_reserved(const void* p) const {
-  if (young_gen()->is_in_reserved(p)) {
-    return true;
-  }
-
-  if (old_gen()->is_in_reserved(p)) {
-    return true;
-  }
-
-  return false;
+  return young_gen()->is_in_reserved(p) || old_gen()->is_in_reserved(p);
 }
 
 bool ParallelScavengeHeap::is_scavengable(const void* addr) {
@@ -265,7 +231,7 @@
     // total_collections() value!
     {
       MutexLocker ml(Heap_lock);
-      gc_count = Universe::heap()->total_collections();
+      gc_count = total_collections();
 
       result = young_gen()->allocate(size);
       if (result != NULL) {
@@ -315,8 +281,7 @@
       // This prevents us from looping until time out on requests that can
       // not be satisfied.
       if (op.prologue_succeeded()) {
-        assert(Universe::heap()->is_in_or_null(op.result()),
-          "result not in heap");
+        assert(is_in_or_null(op.result()), "result not in heap");
 
         // If GC was locked out during VM operation then retry allocation
         // and/or stall as necessary.
@@ -426,7 +391,7 @@
 HeapWord* ParallelScavengeHeap::failed_mem_allocate(size_t size) {
   assert(SafepointSynchronize::is_at_safepoint(), "should be at safepoint");
   assert(Thread::current() == (Thread*)VMThread::vm_thread(), "should be in vm thread");
-  assert(!Universe::heap()->is_gc_active(), "not reentrant");
+  assert(!is_gc_active(), "not reentrant");
   assert(!Heap_lock->owned_by_self(), "this thread should not own the Heap_lock");
 
   // We assume that allocation in eden will fail unless we collect.
@@ -514,18 +479,14 @@
   {
     MutexLocker ml(Heap_lock);
     // This value is guarded by the Heap_lock
-    gc_count      = Universe::heap()->total_collections();
-    full_gc_count = Universe::heap()->total_full_collections();
+    gc_count      = total_collections();
+    full_gc_count = total_full_collections();
   }
 
   VM_ParallelGCSystemGC op(gc_count, full_gc_count, cause);
   VMThread::execute(&op);
 }
 
-void ParallelScavengeHeap::oop_iterate(ExtendedOopClosure* cl) {
-  Unimplemented();
-}
-
 void ParallelScavengeHeap::object_iterate(ObjectClosure* cl) {
   young_gen()->object_iterate(cl);
   old_gen()->object_iterate(cl);
@@ -661,9 +622,10 @@
 }
 
 ParallelScavengeHeap* ParallelScavengeHeap::heap() {
-  assert(_psh != NULL, "Uninitialized access to ParallelScavengeHeap::heap()");
-  assert(_psh->kind() == CollectedHeap::ParallelScavengeHeap, "not a parallel scavenge heap");
-  return _psh;
+  CollectedHeap* heap = Universe::heap();
+  assert(heap != NULL, "Uninitialized access to ParallelScavengeHeap::heap()");
+  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Not a ParallelScavengeHeap");
+  return (ParallelScavengeHeap*)heap;
 }
 
 // Before delegating the resize to the young generation,
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -32,8 +32,9 @@
 #include "gc_implementation/parallelScavenge/psYoungGen.hpp"
 #include "gc_implementation/shared/gcPolicyCounters.hpp"
 #include "gc_implementation/shared/gcWhen.hpp"
-#include "gc_interface/collectedHeap.inline.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/collectorPolicy.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "utilities/ostream.hpp"
 
 class AdjoiningGenerations;
@@ -52,8 +53,6 @@
   static PSAdaptiveSizePolicy*       _size_policy;
   static PSGCAdaptivePolicyCounters* _gc_policy_counters;
 
-  static ParallelScavengeHeap* _psh;
-
   GenerationSizer* _collector_policy;
 
   // Collection of generations that are adjacent in the
@@ -75,7 +74,8 @@
   HeapWord* mem_allocate_old_gen(size_t size);
 
  public:
-  ParallelScavengeHeap() : CollectedHeap(), _death_march_count(0) { }
+  ParallelScavengeHeap(GenerationSizer* policy) :
+    CollectedHeap(), _collector_policy(policy), _death_march_count(0) { }
 
   // For use by VM operations
   enum CollectionType {
@@ -131,9 +131,6 @@
   // the young gen.
   virtual bool is_scavengable(const void* addr);
 
-  // Does this heap support heap inspection? (+PrintClassHistogram)
-  bool supports_heap_inspection() const { return true; }
-
   size_t max_capacity() const;
 
   // Whether p is in the allocated part of the heap
@@ -201,7 +198,6 @@
   // initializing stores to an object at this address.
   virtual bool can_elide_initializing_store_barrier(oop new_obj);
 
-  void oop_iterate(ExtendedOopClosure* cl);
   void object_iterate(ObjectClosure* cl);
   void safe_object_iterate(ObjectClosure* cl) { object_iterate(cl); }
 
@@ -238,7 +234,7 @@
   void gen_mangle_unused_area() PRODUCT_RETURN;
 
   // Call these in sequential code around the processing of strong roots.
-  class ParStrongRootsScope : public MarkingCodeBlobClosure::MarkScope {
+  class ParStrongRootsScope : public MarkScope {
    public:
     ParStrongRootsScope();
     ~ParStrongRootsScope();
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -41,13 +41,14 @@
 #include "runtime/thread.hpp"
 #include "runtime/vmThread.hpp"
 #include "services/management.hpp"
+#include "utilities/stack.inline.hpp"
 
 //
 // ThreadRootsMarkingTask
 //
 
 void ThreadRootsMarkingTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   ResourceMark rm;
 
@@ -78,7 +79,7 @@
 
 
 void MarkFromRootsTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   NOT_PRODUCT(GCTraceTime tm("MarkFromRootsTask",
     PrintGCDetails && TraceParallelOldGCTasks, true, NULL, PSParallelCompact::gc_tracer()->gc_id()));
@@ -149,7 +150,7 @@
 
 void RefProcTaskProxy::do_it(GCTaskManager* manager, uint which)
 {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   NOT_PRODUCT(GCTraceTime tm("RefProcTask",
     PrintGCDetails && TraceParallelOldGCTasks, true, NULL, PSParallelCompact::gc_tracer()->gc_id()));
@@ -167,7 +168,7 @@
 
 void RefProcTaskExecutor::execute(ProcessTask& task)
 {
-  ParallelScavengeHeap* heap = PSParallelCompact::gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   uint parallel_gc_threads = heap->gc_task_manager()->workers();
   uint active_gc_threads = heap->gc_task_manager()->active_workers();
   RegionTaskQueueSet* qset = ParCompactionManager::region_array();
@@ -188,7 +189,7 @@
 
 void RefProcTaskExecutor::execute(EnqueueTask& task)
 {
-  ParallelScavengeHeap* heap = PSParallelCompact::gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   uint parallel_gc_threads = heap->gc_task_manager()->workers();
   GCTaskQueue* q = GCTaskQueue::create();
   for(uint i=0; i<parallel_gc_threads; i++) {
@@ -205,7 +206,7 @@
   _terminator(t) {}
 
 void StealMarkingTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   NOT_PRODUCT(GCTraceTime tm("StealMarkingTask",
     PrintGCDetails && TraceParallelOldGCTasks, true, NULL, PSParallelCompact::gc_tracer()->gc_id()));
@@ -237,7 +238,7 @@
   _terminator(t) {}
 
 void StealRegionCompactionTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   NOT_PRODUCT(GCTraceTime tm("StealRegionCompactionTask",
     PrintGCDetails && TraceParallelOldGCTasks, true, NULL, PSParallelCompact::gc_tracer()->gc_id()));
@@ -319,7 +320,7 @@
 }
 
 void DrainStacksCompactionTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   NOT_PRODUCT(GCTraceTime tm("DrainStacksCompactionTask",
     PrintGCDetails && TraceParallelOldGCTasks, true, NULL, PSParallelCompact::gc_tracer()->gc_id()));
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -30,7 +30,10 @@
 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
 #include "gc_implementation/parallelScavenge/psCompactionManager.inline.hpp"
 #include "gc_implementation/parallelScavenge/psOldGen.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
+#include "gc_implementation/parallelScavenge/psParallelCompact.inline.hpp"
+#include "memory/iterator.inline.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
 #include "oops/objArrayKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/atomic.inline.hpp"
@@ -57,8 +60,7 @@
     _region_stack(NULL),
     _region_stack_index((uint)max_uintx) {
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   _old_gen = heap->old_gen();
   _start_array = old_gen()->start_array();
@@ -174,6 +176,142 @@
   return _manager_array[index];
 }
 
+void InstanceKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  assert(obj != NULL, "can't follow the content of NULL object");
+
+  PSParallelCompact::follow_klass(cm, this);
+  // Only mark the header and let the scan of the meta-data mark
+  // everything else.
+
+  PSParallelCompact::MarkAndPushClosure cl(cm);
+  InstanceKlass::oop_oop_iterate_oop_maps<true>(obj, &cl);
+}
+
+void InstanceMirrorKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  InstanceKlass::oop_pc_follow_contents(obj, cm);
+
+  // Follow the klass field in the mirror.
+  Klass* klass = java_lang_Class::as_Klass(obj);
+  if (klass != NULL) {
+    // An anonymous class doesn't have its own class loader, so the call
+    // to follow_klass will mark and push its java mirror instead of the
+    // class loader. When handling the java mirror for an anonymous class
+    // we need to make sure its class loader data is claimed, this is done
+    // by calling follow_class_loader explicitly. For non-anonymous classes
+    // the call to follow_class_loader is made when the class loader itself
+    // is handled.
+    if (klass->oop_is_instance() && InstanceKlass::cast(klass)->is_anonymous()) {
+      PSParallelCompact::follow_class_loader(cm, klass->class_loader_data());
+    } else {
+      PSParallelCompact::follow_klass(cm, klass);
+    }
+  } else {
+    // If klass is NULL then this a mirror for a primitive type.
+    // We don't have to follow them, since they are handled as strong
+    // roots in Universe::oops_do.
+    assert(java_lang_Class::is_primitive(obj), "Sanity check");
+  }
+
+  PSParallelCompact::MarkAndPushClosure cl(cm);
+  oop_oop_iterate_statics<true>(obj, &cl);
+}
+
+void InstanceClassLoaderKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  InstanceKlass::oop_pc_follow_contents(obj, cm);
+
+  ClassLoaderData * const loader_data = java_lang_ClassLoader::loader_data(obj);
+  if (loader_data != NULL) {
+    PSParallelCompact::follow_class_loader(cm, loader_data);
+  }
+}
+
+template <class T>
+static void oop_pc_follow_contents_specialized(InstanceRefKlass* klass, oop obj, ParCompactionManager* cm) {
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  T heap_oop = oopDesc::load_heap_oop(referent_addr);
+  debug_only(
+    if(TraceReferenceGC && PrintGCDetails) {
+      gclog_or_tty->print_cr("InstanceRefKlass::oop_pc_follow_contents " PTR_FORMAT, p2i(obj));
+    }
+  )
+  if (!oopDesc::is_null(heap_oop)) {
+    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);
+    if (PSParallelCompact::mark_bitmap()->is_unmarked(referent) &&
+        PSParallelCompact::ref_processor()->discover_reference(obj, klass->reference_type())) {
+      // reference already enqueued, referent will be traversed later
+      klass->InstanceKlass::oop_pc_follow_contents(obj, cm);
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("       Non NULL enqueued " PTR_FORMAT, p2i(obj));
+        }
+      )
+      return;
+    } else {
+      // treat referent as normal oop
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("       Non NULL normal " PTR_FORMAT, p2i(obj));
+        }
+      )
+      PSParallelCompact::mark_and_push(cm, referent_addr);
+    }
+  }
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
+    // Treat discovered as normal oop, if ref is not "active",
+    // i.e. if next is non-NULL.
+    T  next_oop = oopDesc::load_heap_oop(next_addr);
+    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
+      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("   Process discovered as normal "
+                                 PTR_FORMAT, p2i(discovered_addr));
+        }
+      )
+      PSParallelCompact::mark_and_push(cm, discovered_addr);
+    }
+  } else {
+#ifdef ASSERT
+    // In the case of older JDKs which do not use the discovered
+    // field for the pending list, an inactive ref (next != NULL)
+    // must always have a NULL discovered field.
+    T next = oopDesc::load_heap_oop(next_addr);
+    oop discovered = java_lang_ref_Reference::discovered(obj);
+    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
+           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
+                   p2i(obj)));
+#endif
+  }
+  PSParallelCompact::mark_and_push(cm, next_addr);
+  klass->InstanceKlass::oop_pc_follow_contents(obj, cm);
+}
+
+
+void InstanceRefKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  if (UseCompressedOops) {
+    oop_pc_follow_contents_specialized<narrowOop>(this, obj, cm);
+  } else {
+    oop_pc_follow_contents_specialized<oop>(this, obj, cm);
+  }
+}
+
+void ObjArrayKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  PSParallelCompact::follow_klass(cm, this);
+
+  if (UseCompressedOops) {
+    oop_pc_follow_contents_specialized<narrowOop>(objArrayOop(obj), 0, cm);
+  } else {
+    oop_pc_follow_contents_specialized<oop>(objArrayOop(obj), 0, cm);
+  }
+}
+
+void TypeArrayKlass::oop_pc_follow_contents(oop obj, ParCompactionManager* cm) {
+  assert(obj->is_typeArray(),"must be a type array");
+  // Performance tweak: We skip iterating over the klass pointer since we
+  // know that Universe::TypeArrayKlass never moves.
+}
+
 void ParCompactionManager::follow_marking_stacks() {
   do {
     // Drain the overflow stack first, to allow stealing from the marking stack.
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,9 +26,11 @@
 #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSCOMPACTIONMANAGER_INLINE_HPP
 
 #include "gc_implementation/parallelScavenge/psCompactionManager.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
-#include "oops/objArrayKlass.inline.hpp"
-#include "oops/oop.pcgc.inline.hpp"
+#include "gc_implementation/parallelScavenge/psParallelCompact.inline.hpp"
+#include "oops/objArrayOop.hpp"
+#include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
 
 void ParCompactionManager::push_objarray(oop obj, size_t index)
 {
@@ -49,16 +51,42 @@
 }
 
 inline void ParCompactionManager::follow_contents(oop obj) {
-  obj->follow_contents(this);
+  assert(PSParallelCompact::mark_bitmap()->is_marked(obj), "should be marked");
+  obj->pc_follow_contents(this);
+}
+
+template <class T>
+inline void oop_pc_follow_contents_specialized(objArrayOop obj, int index, ParCompactionManager* cm) {
+  const size_t len = size_t(obj->length());
+  const size_t beg_index = size_t(index);
+  assert(beg_index < len || len == 0, "index too large");
+
+  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
+  const size_t end_index = beg_index + stride;
+  T* const base = (T*)obj->base();
+  T* const beg = base + beg_index;
+  T* const end = base + end_index;
+
+  // Push the non-NULL elements of the next stride on the marking stack.
+  for (T* e = beg; e < end; e++) {
+    PSParallelCompact::mark_and_push<T>(cm, e);
+  }
+
+  if (end_index < len) {
+    cm->push_objarray(obj, end_index); // Push the continuation.
+  }
 }
 
 inline void ParCompactionManager::follow_contents(objArrayOop obj, int index) {
-  ObjArrayKlass* k = (ObjArrayKlass*)obj->klass();
-  k->oop_follow_contents(this, obj, index);
+  if (UseCompressedOops) {
+    oop_pc_follow_contents_specialized<narrowOop>(obj, index, this);
+  } else {
+    oop_pc_follow_contents_specialized<oop>(obj, index, this);
+  }
 }
 
 inline void ParCompactionManager::update_contents(oop obj) {
-  obj->update_contents(this);
+  obj->pc_update_contents();
 }
 
 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSCOMPACTIONMANAGER_INLINE_HPP
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -59,7 +59,7 @@
 CollectorCounters*  PSMarkSweep::_counters = NULL;
 
 void PSMarkSweep::initialize() {
-  MemRegion mr = Universe::heap()->reserved_region();
+  MemRegion mr = ParallelScavengeHeap::heap()->reserved_region();
   _ref_processor = new ReferenceProcessor(mr);     // a vanilla ref proc
   _counters = new CollectorCounters("PSMarkSweep", 1);
 }
@@ -81,9 +81,9 @@
 void PSMarkSweep::invoke(bool maximum_heap_compaction) {
   assert(SafepointSynchronize::is_at_safepoint(), "should be at safepoint");
   assert(Thread::current() == (Thread*)VMThread::vm_thread(), "should be in vm thread");
-  assert(!Universe::heap()->is_gc_active(), "not reentrant");
+  assert(!ParallelScavengeHeap::heap()->is_gc_active(), "not reentrant");
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   GCCause::Cause gc_cause = heap->gc_cause();
   PSAdaptiveSizePolicy* policy = heap->size_policy();
   IsGCActiveMark mark;
@@ -110,8 +110,7 @@
     return false;
   }
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   GCCause::Cause gc_cause = heap->gc_cause();
 
   _gc_timer->register_gc_start();
@@ -487,9 +486,7 @@
 }
 
 void PSMarkSweep::allocate_stacks() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
 
   MutableSpace* to_space = young_gen->to_space();
@@ -513,10 +510,8 @@
 void PSMarkSweep::mark_sweep_phase1(bool clear_all_softrefs) {
   // Recursively traverse all live objects and mark them
   GCTraceTime tm("phase 1", PrintGCDetails && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace(" 1");
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   // Need to clear claim bits before the tracing starts.
   ClassLoaderDataGraph::clear_claimed_marks();
@@ -574,7 +569,6 @@
 
 void PSMarkSweep::mark_sweep_phase2() {
   GCTraceTime tm("phase 2", PrintGCDetails && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("2");
 
   // Now all live objects are marked, compute the new object addresses.
 
@@ -582,9 +576,7 @@
   // phase2, phase3 and phase4, but the ValidateMarkSweep live oops
   // tracking expects us to do so. See comment under phase4.
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSOldGen* old_gen = heap->old_gen();
 
   // Begin compacting into the old gen
@@ -604,11 +596,8 @@
 void PSMarkSweep::mark_sweep_phase3() {
   // Adjust the pointers to reflect the new locations
   GCTraceTime tm("phase 3", PrintGCDetails && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("3");
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
   PSOldGen* old_gen = heap->old_gen();
 
@@ -647,13 +636,10 @@
 void PSMarkSweep::mark_sweep_phase4() {
   EventMark m("4 compact heap");
   GCTraceTime tm("phase 4", PrintGCDetails && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("4");
 
   // All pointers are now adjusted, move objects accordingly
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
   PSOldGen* old_gen = heap->old_gen();
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -38,15 +38,12 @@
 
 
 void PSMarkSweepDecorator::set_destination_decorator_tenured() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   _destination_decorator = heap->old_gen()->object_mark_sweep();
 }
 
 void PSMarkSweepDecorator::advance_destination_decorator() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   assert(_destination_decorator != NULL, "Sanity");
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psOldGen.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -107,20 +107,22 @@
     SpaceMangler::mangle_region(cmr);
   }
 
-  Universe::heap()->barrier_set()->resize_covered_region(cmr);
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
+  BarrierSet* bs = heap->barrier_set();
 
-  CardTableModRefBS* _ct =
-    barrier_set_cast<CardTableModRefBS>(Universe::heap()->barrier_set());
+  bs->resize_covered_region(cmr);
+
+  CardTableModRefBS* ct = barrier_set_cast<CardTableModRefBS>(bs);
 
   // Verify that the start and end of this generation is the start of a card.
   // If this wasn't true, a single card could span more than one generation,
   // which would cause problems when we commit/uncommit memory, and when we
   // clear and dirty cards.
-  guarantee(_ct->is_card_aligned(_reserved.start()), "generation must be card aligned");
-  if (_reserved.end() != Universe::heap()->reserved_region().end()) {
+  guarantee(ct->is_card_aligned(_reserved.start()), "generation must be card aligned");
+  if (_reserved.end() != heap->reserved_region().end()) {
     // Don't check at the very end of the heap as we'll assert that we're probing off
     // the end if we try.
-    guarantee(_ct->is_card_aligned(_reserved.end()), "generation must be card aligned");
+    guarantee(ct->is_card_aligned(_reserved.end()), "generation must be card aligned");
   }
 
   //
@@ -161,8 +163,7 @@
 }
 
 void PSOldGen::precompact() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   // Reset start array first.
   start_array()->reset();
@@ -197,7 +198,7 @@
 
   // Allocations in the old generation need to be reported
   if (res != NULL) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     heap->size_policy()->tenured_allocation(word_size);
   }
 
@@ -376,8 +377,7 @@
   }
 
   if (PrintAdaptiveSizePolicy) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-    assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     gclog_or_tty->print_cr("AdaptiveSizePolicy::old generation size: "
                   "collection: %d "
                   "(" SIZE_FORMAT ") -> (" SIZE_FORMAT ") ",
@@ -397,7 +397,7 @@
   size_t new_word_size = new_memregion.word_size();
 
   start_array()->set_covered_region(new_memregion);
-  Universe::heap()->barrier_set()->resize_covered_region(new_memregion);
+  ParallelScavengeHeap::heap()->barrier_set()->resize_covered_region(new_memregion);
 
   // ALWAYS do this last!!
   object_space()->initialize(new_memregion,
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psOldGen.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psOldGen.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -60,11 +60,29 @@
   // Used when initializing the _name field.
   static inline const char* select_name();
 
+#ifdef ASSERT
+  void assert_block_in_covered_region(MemRegion new_memregion) {
+    // Explictly capture current covered_region in a local
+    MemRegion covered_region = this->start_array()->covered_region();
+    assert(covered_region.contains(new_memregion),
+           err_msg("new region is not in covered_region [ "PTR_FORMAT", "PTR_FORMAT" ], "
+                   "new region [ "PTR_FORMAT", "PTR_FORMAT" ], "
+                   "object space [ "PTR_FORMAT", "PTR_FORMAT" ]",
+                   p2i(covered_region.start()),
+                   p2i(covered_region.end()),
+                   p2i(new_memregion.start()),
+                   p2i(new_memregion.end()),
+                   p2i(this->object_space()->used_region().start()),
+                   p2i(this->object_space()->used_region().end())));
+  }
+#endif
+
   HeapWord* allocate_noexpand(size_t word_size) {
     // We assume the heap lock is held here.
     assert_locked_or_safepoint(Heap_lock);
     HeapWord* res = object_space()->allocate(word_size);
     if (res != NULL) {
+      DEBUG_ONLY(assert_block_in_covered_region(MemRegion(res, word_size)));
       _start_array.allocate_block(res);
     }
     return res;
@@ -77,6 +95,7 @@
     assert(SafepointSynchronize::is_at_safepoint(), "Must only be called at safepoint");
     HeapWord* res = object_space()->cas_allocate(word_size);
     if (res != NULL) {
+      DEBUG_ONLY(assert_block_in_covered_region(MemRegion(res, word_size)));
       _start_array.allocate_block(res);
     }
     return res;
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -34,7 +34,7 @@
 #include "gc_implementation/parallelScavenge/psMarkSweep.hpp"
 #include "gc_implementation/parallelScavenge/psMarkSweepDecorator.hpp"
 #include "gc_implementation/parallelScavenge/psOldGen.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
+#include "gc_implementation/parallelScavenge/psParallelCompact.inline.hpp"
 #include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
 #include "gc_implementation/parallelScavenge/psScavenge.hpp"
 #include "gc_implementation/parallelScavenge/psYoungGen.hpp"
@@ -48,7 +48,10 @@
 #include "memory/gcLocker.inline.hpp"
 #include "memory/referencePolicy.hpp"
 #include "memory/referenceProcessor.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
 #include "oops/methodData.hpp"
+#include "oops/objArrayKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/atomic.inline.hpp"
 #include "runtime/fprofiler.hpp"
@@ -745,7 +748,7 @@
 
 HeapWord* ParallelCompactData::calc_new_pointer(HeapWord* addr) {
   assert(addr != NULL, "Should detect NULL oop earlier");
-  assert(PSParallelCompact::gc_heap()->is_in(addr), "not in heap");
+  assert(ParallelScavengeHeap::heap()->is_in(addr), "not in heap");
   assert(PSParallelCompact::mark_bitmap()->is_marked(addr), "not marked");
 
   // Region covering the object.
@@ -823,16 +826,8 @@
 PSParallelCompact::AdjustPointerClosure PSParallelCompact::_adjust_pointer_closure;
 PSParallelCompact::AdjustKlassClosure PSParallelCompact::_adjust_klass_closure;
 
-void PSParallelCompact::AdjustPointerClosure::do_oop(oop* p)       { adjust_pointer(p); }
-void PSParallelCompact::AdjustPointerClosure::do_oop(narrowOop* p) { adjust_pointer(p); }
-
 void PSParallelCompact::FollowStackClosure::do_void() { _compaction_manager->follow_marking_stacks(); }
 
-void PSParallelCompact::MarkAndPushClosure::do_oop(oop* p)       {
-  mark_and_push(_compaction_manager, p);
-}
-void PSParallelCompact::MarkAndPushClosure::do_oop(narrowOop* p) { mark_and_push(_compaction_manager, p); }
-
 void PSParallelCompact::FollowKlassClosure::do_klass(Klass* klass) {
   klass->oops_do(_mark_and_push_closure);
 }
@@ -841,9 +836,7 @@
 }
 
 void PSParallelCompact::post_initialize() {
-  ParallelScavengeHeap* heap = gc_heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   MemRegion mr = heap->reserved_region();
   _ref_processor =
     new ReferenceProcessor(mr,            // span
@@ -860,8 +853,7 @@
 }
 
 bool PSParallelCompact::initialize() {
-  ParallelScavengeHeap* heap = gc_heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   MemRegion mr = heap->reserved_region();
 
   // Was the old gen get allocated successfully?
@@ -895,7 +887,7 @@
 {
   memset(&_space_info, 0, sizeof(_space_info));
 
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
 
   _space_info[old_space_id].set_space(heap->old_gen()->object_space());
@@ -978,7 +970,7 @@
   // promotion failure does not swap spaces) because an unknown number of minor
   // collections will have swapped the spaces an unknown number of times.
   GCTraceTime tm("pre compact", print_phases(), true, &_gc_timer, _gc_tracer.gc_id());
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   _space_info[from_space_id].set_space(heap->young_gen()->from_space());
   _space_info[to_space_id].set_space(heap->young_gen()->to_space());
 
@@ -1033,7 +1025,7 @@
   MutableSpace* const from_space = _space_info[from_space_id].space();
   MutableSpace* const to_space   = _space_info[to_space_id].space();
 
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   bool eden_empty = eden_space->is_empty();
   if (!eden_empty) {
     eden_empty = absorb_live_data_from_eden(heap->size_policy(),
@@ -1971,7 +1963,7 @@
   assert(Thread::current() == (Thread*)VMThread::vm_thread(),
          "should be in vm thread");
 
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   GCCause::Cause gc_cause = heap->gc_cause();
   assert(!heap->is_gc_active(), "not reentrant");
 
@@ -1999,7 +1991,7 @@
     return false;
   }
 
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   _gc_timer.register_gc_start();
   _gc_tracer.report_gc_start(heap->gc_cause(), _gc_timer.gc_start());
@@ -2352,7 +2344,7 @@
   // Recursively traverse all live objects and mark them
   GCTraceTime tm("marking phase", print_phases(), true, &_gc_timer, _gc_tracer.gc_id());
 
-  ParallelScavengeHeap* heap = gc_heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   uint parallel_gc_threads = heap->gc_task_manager()->workers();
   uint active_gc_threads = heap->gc_task_manager()->active_workers();
   TaskQueueSetSuper* qset = ParCompactionManager::region_array();
@@ -2692,8 +2684,7 @@
   // trace("5");
   GCTraceTime tm("compaction phase", print_phases(), true, &_gc_timer, _gc_tracer.gc_id());
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSOldGen* old_gen = heap->old_gen();
   old_gen->start_array()->reset();
   uint parallel_gc_threads = heap->gc_task_manager()->workers();
@@ -2844,7 +2835,7 @@
 // heap, last_space_id is returned.  In debug mode it expects the address to be
 // in the heap and asserts such.
 PSParallelCompact::SpaceId PSParallelCompact::space_id(HeapWord* addr) {
-  assert(Universe::heap()->is_in_reserved(addr), "addr not in the heap");
+  assert(ParallelScavengeHeap::heap()->is_in_reserved(addr), "addr not in the heap");
 
   for (unsigned int id = old_space_id; id < last_space_id; ++id) {
     if (_space_info[id].space()->contains(addr)) {
@@ -3338,6 +3329,71 @@
   update_state(words);
 }
 
+void InstanceKlass::oop_pc_update_pointers(oop obj) {
+  oop_oop_iterate_oop_maps<true>(obj, PSParallelCompact::adjust_pointer_closure());
+}
+
+void InstanceMirrorKlass::oop_pc_update_pointers(oop obj) {
+  InstanceKlass::oop_pc_update_pointers(obj);
+
+  oop_oop_iterate_statics<true>(obj, PSParallelCompact::adjust_pointer_closure());
+}
+
+void InstanceClassLoaderKlass::oop_pc_update_pointers(oop obj) {
+  InstanceKlass::oop_pc_update_pointers(obj);
+}
+
+#ifdef ASSERT
+template <class T> static void trace_reference_gc(const char *s, oop obj,
+                                                  T* referent_addr,
+                                                  T* next_addr,
+                                                  T* discovered_addr) {
+  if(TraceReferenceGC && PrintGCDetails) {
+    gclog_or_tty->print_cr("%s obj " PTR_FORMAT, s, p2i(obj));
+    gclog_or_tty->print_cr("     referent_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(referent_addr),
+                           referent_addr ? p2i(oopDesc::load_decode_heap_oop(referent_addr)) : NULL);
+    gclog_or_tty->print_cr("     next_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(next_addr),
+                           next_addr ? p2i(oopDesc::load_decode_heap_oop(next_addr)) : NULL);
+    gclog_or_tty->print_cr("     discovered_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(discovered_addr),
+                           discovered_addr ? p2i(oopDesc::load_decode_heap_oop(discovered_addr)) : NULL);
+  }
+}
+#endif
+
+template <class T>
+static void oop_pc_update_pointers_specialized(oop obj) {
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  PSParallelCompact::adjust_pointer(referent_addr);
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  PSParallelCompact::adjust_pointer(next_addr);
+  T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+  PSParallelCompact::adjust_pointer(discovered_addr);
+  debug_only(trace_reference_gc("InstanceRefKlass::oop_update_ptrs", obj,
+                                referent_addr, next_addr, discovered_addr);)
+}
+
+void InstanceRefKlass::oop_pc_update_pointers(oop obj) {
+  InstanceKlass::oop_pc_update_pointers(obj);
+
+  if (UseCompressedOops) {
+    oop_pc_update_pointers_specialized<narrowOop>(obj);
+  } else {
+    oop_pc_update_pointers_specialized<oop>(obj);
+  }
+}
+
+void ObjArrayKlass::oop_pc_update_pointers(oop obj) {
+  assert(obj->is_objArray(), "obj must be obj array");
+  oop_oop_iterate_elements<true>(objArrayOop(obj), PSParallelCompact::adjust_pointer_closure());
+}
+
+void TypeArrayKlass::oop_pc_update_pointers(oop obj) {
+  assert(obj->is_typeArray(),"must be a type array");
+}
+
 ParMarkBitMapClosure::IterationStatus
 MoveAndUpdateClosure::do_addr(HeapWord* addr, size_t words) {
   assert(destination() != NULL, "sanity");
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,11 +26,12 @@
 #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPARALLELCOMPACT_HPP
 
 #include "gc_implementation/parallelScavenge/objectStartArray.hpp"
+#include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
 #include "gc_implementation/parallelScavenge/parMarkBitMap.hpp"
 #include "gc_implementation/parallelScavenge/psCompactionManager.hpp"
 #include "gc_implementation/shared/collectorCounters.hpp"
 #include "gc_implementation/shared/mutableSpace.hpp"
-#include "memory/sharedHeap.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "oops/oop.hpp"
 
 class ParallelScavengeHeap;
@@ -951,12 +952,14 @@
     virtual void do_void();
   };
 
-  class AdjustPointerClosure: public OopClosure {
+  class AdjustPointerClosure: public ExtendedOopClosure {
    public:
+    template <typename T> void do_oop_nv(T* p);
     virtual void do_oop(oop* p);
     virtual void do_oop(narrowOop* p);
-    // do not walk from thread stacks to the code cache on this phase
-    virtual void do_code_blob(CodeBlob* cb) const { }
+
+    // This closure provides its own oop verification code.
+    debug_only(virtual bool should_verify_oops() { return false; })
   };
 
   class AdjustKlassClosure : public KlassClosure {
@@ -1139,13 +1142,18 @@
   static void reset_millis_since_last_gc();
 
  public:
-  class MarkAndPushClosure: public OopClosure {
+  class MarkAndPushClosure: public ExtendedOopClosure {
    private:
     ParCompactionManager* _compaction_manager;
    public:
     MarkAndPushClosure(ParCompactionManager* cm) : _compaction_manager(cm) { }
+
+    template <typename T> void do_oop_nv(T* p);
     virtual void do_oop(oop* p);
     virtual void do_oop(narrowOop* p);
+
+    // This closure provides its own oop verification code.
+    debug_only(virtual bool should_verify_oops() { return false; })
   };
 
   // The one and only place to start following the classes.
@@ -1161,11 +1169,6 @@
 
   PSParallelCompact();
 
-  // Convenient accessor for Universe::heap().
-  static ParallelScavengeHeap* gc_heap() {
-    return (ParallelScavengeHeap*)Universe::heap();
-  }
-
   static void invoke(bool maximum_heap_compaction);
   static bool invoke_no_policy(bool maximum_heap_compaction);
 
@@ -1177,7 +1180,9 @@
   static bool initialize();
 
   // Closure accessors
-  static OopClosure* adjust_pointer_closure()      { return (OopClosure*)&_adjust_pointer_closure; }
+  static PSParallelCompact::AdjustPointerClosure* adjust_pointer_closure() {
+    return &_adjust_pointer_closure;
+  }
   static KlassClosure* adjust_klass_closure()      { return (KlassClosure*)&_adjust_klass_closure; }
   static BoolObjectClosure* is_alive_closure()     { return (BoolObjectClosure*)&_is_alive_closure; }
 
@@ -1333,39 +1338,6 @@
 }
 
 template <class T>
-inline void PSParallelCompact::mark_and_push(ParCompactionManager* cm, T* p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
-    if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) {
-      cm->push(obj);
-    }
-  }
-}
-
-template <class T>
-inline void PSParallelCompact::adjust_pointer(T* p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop obj     = oopDesc::decode_heap_oop_not_null(heap_oop);
-    oop new_obj = (oop)summary_data().calc_new_pointer(obj);
-    assert(new_obj != NULL,                    // is forwarding ptr?
-           "should be forwarded");
-    // Just always do the update unconditionally?
-    if (new_obj != NULL) {
-      assert(Universe::heap()->is_in_reserved(new_obj),
-             "should be in object space");
-      oopDesc::encode_store_heap_oop_not_null(p, new_obj);
-    }
-  }
-}
-
-inline void PSParallelCompact::follow_klass(ParCompactionManager* cm, Klass* klass) {
-  oop holder = klass->klass_holder();
-  PSParallelCompact::mark_and_push(cm, &holder);
-}
-
-template <class T>
 inline void PSParallelCompact::KeepAliveClosure::do_oop_work(T* p) {
   mark_and_push(_compaction_manager, p);
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPARALLELCOMPACT_INLINE_HPP
+#define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPARALLELCOMPACT_INLINE_HPP
+
+#include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
+#include "gc_implementation/parallelScavenge/psCompactionManager.hpp"
+#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
+#include "gc_interface/collectedHeap.hpp"
+#include "oops/klass.hpp"
+#include "oops/oop.inline.hpp"
+
+template <typename T>
+inline void PSParallelCompact::mark_and_push(ParCompactionManager* cm, T* p) {
+  T heap_oop = oopDesc::load_heap_oop(p);
+  if (!oopDesc::is_null(heap_oop)) {
+    oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
+    assert(ParallelScavengeHeap::heap()->is_in(obj), "should be in heap");
+
+    if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) {
+      cm->push(obj);
+    }
+  }
+}
+
+template <typename T>
+inline void PSParallelCompact::MarkAndPushClosure::do_oop_nv(T* p) {
+  mark_and_push(_compaction_manager, p);
+}
+
+inline void PSParallelCompact::MarkAndPushClosure::do_oop(oop* p)       { do_oop_nv(p); }
+inline void PSParallelCompact::MarkAndPushClosure::do_oop(narrowOop* p) { do_oop_nv(p); }
+
+inline void PSParallelCompact::follow_klass(ParCompactionManager* cm, Klass* klass) {
+  oop holder = klass->klass_holder();
+  mark_and_push(cm, &holder);
+}
+
+template <class T>
+inline void PSParallelCompact::adjust_pointer(T* p) {
+  T heap_oop = oopDesc::load_heap_oop(p);
+  if (!oopDesc::is_null(heap_oop)) {
+    oop obj     = oopDesc::decode_heap_oop_not_null(heap_oop);
+    assert(ParallelScavengeHeap::heap()->is_in(obj), "should be in heap");
+
+    oop new_obj = (oop)summary_data().calc_new_pointer(obj);
+    assert(new_obj != NULL,                    // is forwarding ptr?
+           "should be forwarded");
+    // Just always do the update unconditionally?
+    if (new_obj != NULL) {
+      assert(ParallelScavengeHeap::heap()->is_in_reserved(new_obj),
+             "should be in object space");
+      oopDesc::encode_store_heap_oop_not_null(p, new_obj);
+    }
+  }
+}
+
+template <typename T>
+void PSParallelCompact::AdjustPointerClosure::do_oop_nv(T* p) {
+  adjust_pointer(p);
+}
+
+inline void PSParallelCompact::AdjustPointerClosure::do_oop(oop* p)       { do_oop_nv(p); }
+inline void PSParallelCompact::AdjustPointerClosure::do_oop(narrowOop* p) { do_oop_nv(p); }
+
+#endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPARALLELCOMPACT_INLINE_HPP
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionLAB.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionLAB.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -103,7 +103,7 @@
 }
 
 bool PSPromotionLAB::unallocate_object(HeapWord* obj, size_t obj_size) {
-  assert(Universe::heap()->is_in(obj), "Object outside heap");
+  assert(ParallelScavengeHeap::heap()->is_in(obj), "Object outside heap");
 
   if (contains(obj)) {
     HeapWord* object_end = obj + obj_size;
@@ -137,9 +137,7 @@
 #ifdef ASSERT
 
 bool PSYoungPromotionLAB::lab_is_valid(MemRegion lab) {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   MutableSpace* to_space = heap->young_gen()->to_space();
   MemRegion used = to_space->used_region();
   if (used.contains(lab)) {
@@ -150,10 +148,9 @@
 }
 
 bool PSOldPromotionLAB::lab_is_valid(MemRegion lab) {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
   assert(_start_array->covered_region().contains(lab), "Sanity");
 
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSOldGen* old_gen = heap->old_gen();
   MemRegion used = old_gen->object_space()->used_region();
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionLAB.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionLAB.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONLAB_HPP
 
 #include "gc_implementation/parallelScavenge/objectStartArray.hpp"
-#include "gc_interface/collectedHeap.inline.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/allocation.hpp"
 
 //
@@ -59,7 +59,7 @@
   // The shared initialize code invokes this.
   debug_only(virtual bool lab_is_valid(MemRegion lab) { return false; });
 
-  PSPromotionLAB() : _top(NULL), _bottom(NULL), _end(NULL) { }
+  PSPromotionLAB() : _top(NULL), _bottom(NULL), _end(NULL), _state(zero_size) { }
 
  public:
   // Filling and flushing.
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -32,6 +32,9 @@
 #include "memory/allocation.inline.hpp"
 #include "memory/memRegion.hpp"
 #include "memory/padded.inline.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
+#include "oops/objArrayKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "utilities/stack.inline.hpp"
 
@@ -41,8 +44,7 @@
 MutableSpace*                  PSPromotionManager::_young_space = NULL;
 
 void PSPromotionManager::initialize() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   _old_gen = heap->old_gen();
   _young_space = heap->young_gen()->to_space();
@@ -85,8 +87,7 @@
 }
 
 void PSPromotionManager::pre_scavenge() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   _young_space = heap->young_gen()->to_space();
 
@@ -129,7 +130,7 @@
 void
 PSPromotionManager::print_taskqueue_stats(outputStream* const out) {
   out->print_cr("== GC Tasks Stats, GC %3d",
-                Universe::heap()->total_collections());
+                ParallelScavengeHeap::heap()->total_collections());
 
   TaskQueueStats totals;
   out->print("thr "); TaskQueueStats::print_header(1, out); out->cr();
@@ -157,8 +158,7 @@
 #endif // TASKQUEUE_STATS
 
 PSPromotionManager::PSPromotionManager() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   // We set the old lab's start array.
   _old_lab.set_start_array(old_gen()->start_array());
@@ -188,8 +188,7 @@
 
   // We need to get an assert in here to make sure the labs are always flushed.
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   // Do not prefill the LAB's, save heap wastage!
   HeapWord* lab_base = young_space()->top();
@@ -210,8 +209,7 @@
   totally_drain = totally_drain || _totally_drain;
 
 #ifdef ASSERT
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   MutableSpace* to_space = heap->young_gen()->to_space();
   MutableSpace* old_space = heap->old_gen()->object_space();
 #endif /* ASSERT */
@@ -308,6 +306,118 @@
   }
 }
 
+class PushContentsClosure : public ExtendedOopClosure {
+  PSPromotionManager* _pm;
+ public:
+  PushContentsClosure(PSPromotionManager* pm) : _pm(pm) {}
+
+  template <typename T> void do_oop_nv(T* p) {
+    if (PSScavenge::should_scavenge(p)) {
+      _pm->claim_or_forward_depth(p);
+    }
+  }
+
+  virtual void do_oop(oop* p)       { do_oop_nv(p); }
+  virtual void do_oop(narrowOop* p) { do_oop_nv(p); }
+
+  // Don't use the oop verification code in the oop_oop_iterate framework.
+  debug_only(virtual bool should_verify_oops() { return false; })
+};
+
+void InstanceKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+  PushContentsClosure cl(pm);
+  oop_oop_iterate_oop_maps_reverse<true>(obj, &cl);
+}
+
+void InstanceMirrorKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+    // Note that we don't have to follow the mirror -> klass pointer, since all
+    // klasses that are dirty will be scavenged when we iterate over the
+    // ClassLoaderData objects.
+
+  InstanceKlass::oop_ps_push_contents(obj, pm);
+
+  PushContentsClosure cl(pm);
+  oop_oop_iterate_statics<true>(obj, &cl);
+}
+
+void InstanceClassLoaderKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+  InstanceKlass::oop_ps_push_contents(obj, pm);
+
+  // This is called by the young collector. It will already have taken care of
+  // all class loader data. So, we don't have to follow the class loader ->
+  // class loader data link.
+}
+
+template <class T>
+static void oop_ps_push_contents_specialized(oop obj, InstanceRefKlass *klass, PSPromotionManager* pm) {
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  if (PSScavenge::should_scavenge(referent_addr)) {
+    ReferenceProcessor* rp = PSScavenge::reference_processor();
+    if (rp->discover_reference(obj, klass->reference_type())) {
+      // reference already enqueued, referent and next will be traversed later
+      klass->InstanceKlass::oop_ps_push_contents(obj, pm);
+      return;
+    } else {
+      // treat referent as normal oop
+      pm->claim_or_forward_depth(referent_addr);
+    }
+  }
+  // Treat discovered as normal oop, if ref is not "active",
+  // i.e. if next is non-NULL.
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
+    T  next_oop = oopDesc::load_heap_oop(next_addr);
+    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
+      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("   Process discovered as normal "
+                                 PTR_FORMAT, p2i(discovered_addr));
+        }
+      )
+      if (PSScavenge::should_scavenge(discovered_addr)) {
+        pm->claim_or_forward_depth(discovered_addr);
+      }
+    }
+  } else {
+#ifdef ASSERT
+    // In the case of older JDKs which do not use the discovered
+    // field for the pending list, an inactive ref (next != NULL)
+    // must always have a NULL discovered field.
+    oop next = oopDesc::load_decode_heap_oop(next_addr);
+    oop discovered = java_lang_ref_Reference::discovered(obj);
+    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
+           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
+                   p2i(obj)));
+#endif
+  }
+
+  // Treat next as normal oop;  next is a link in the reference queue.
+  if (PSScavenge::should_scavenge(next_addr)) {
+    pm->claim_or_forward_depth(next_addr);
+  }
+  klass->InstanceKlass::oop_ps_push_contents(obj, pm);
+}
+
+void InstanceRefKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+  if (UseCompressedOops) {
+    oop_ps_push_contents_specialized<narrowOop>(obj, this, pm);
+  } else {
+    oop_ps_push_contents_specialized<oop>(obj, this, pm);
+  }
+}
+
+void ObjArrayKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+  assert(obj->is_objArray(), "obj must be obj array");
+  PushContentsClosure cl(pm);
+  oop_oop_iterate_elements<true>(objArrayOop(obj), &cl);
+}
+
+void TypeArrayKlass::oop_ps_push_contents(oop obj, PSPromotionManager* pm) {
+  assert(obj->is_typeArray(),"must be a type array");
+  ShouldNotReachHere();
+}
+
 oop PSPromotionManager::oop_promotion_failed(oop obj, markOop obj_mark) {
   assert(_old_gen_is_full || PromotionFailureALot, "Sanity");
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,11 +25,12 @@
 #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_INLINE_HPP
 #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_INLINE_HPP
 
+#include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
 #include "gc_implementation/parallelScavenge/psOldGen.hpp"
 #include "gc_implementation/parallelScavenge/psPromotionManager.hpp"
 #include "gc_implementation/parallelScavenge/psPromotionLAB.inline.hpp"
 #include "gc_implementation/parallelScavenge/psScavenge.hpp"
-#include "oops/oop.psgc.inline.hpp"
+#include "oops/oop.inline.hpp"
 
 inline PSPromotionManager* PSPromotionManager::manager_array(int index) {
   assert(_manager_array != NULL, "access of NULL manager_array");
@@ -57,9 +58,7 @@
 template <class T>
 inline void PSPromotionManager::claim_or_forward_depth(T* p) {
   assert(should_scavenge(p, true), "revisiting object?");
-  assert(Universe::heap()->kind() == CollectedHeap::ParallelScavengeHeap,
-         "Sanity");
-  assert(Universe::heap()->is_in(p), "pointer outside heap");
+  assert(ParallelScavengeHeap::heap()->is_in(p), "pointer outside heap");
 
   claim_or_forward_internal_depth(p);
 }
@@ -92,7 +91,7 @@
 }
 
 inline void PSPromotionManager::push_contents(oop obj) {
-  obj->push_contents(this);
+  obj->ps_push_contents(this);
 }
 //
 // This method is pretty bulky. It would be nice to split it up
@@ -150,7 +149,7 @@
     // Otherwise try allocating obj tenured
     if (new_obj == NULL) {
 #ifndef PRODUCT
-      if (Universe::heap()->promotion_should_fail()) {
+      if (ParallelScavengeHeap::heap()->promotion_should_fail()) {
         return oop_promotion_failed(o, test_mark);
       }
 #endif  // #ifndef PRODUCT
@@ -296,7 +295,7 @@
   // that are outside the heap. These pointers are either from roots
   // or from metadata.
   if ((!PSScavenge::is_obj_in_young((HeapWord*)p)) &&
-      Universe::heap()->is_in_reserved(p)) {
+      ParallelScavengeHeap::heap()->is_in_reserved(p)) {
     if (PSScavenge::is_obj_in_young(new_obj)) {
       PSScavenge::card_table()->inline_write_ref_field_gc(p, new_obj);
     }
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -87,8 +87,7 @@
 
 public:
   PSKeepAliveClosure(PSPromotionManager* pm) : _promotion_manager(pm) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-    assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     _to_space = heap->young_gen()->to_space();
 
     assert(_promotion_manager != NULL, "Sanity");
@@ -218,11 +217,9 @@
 bool PSScavenge::invoke() {
   assert(SafepointSynchronize::is_at_safepoint(), "should be at safepoint");
   assert(Thread::current() == (Thread*)VMThread::vm_thread(), "should be in vm thread");
-  assert(!Universe::heap()->is_gc_active(), "not reentrant");
+  assert(!ParallelScavengeHeap::heap()->is_gc_active(), "not reentrant");
 
-  ParallelScavengeHeap* const heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* const heap = ParallelScavengeHeap::heap();
   PSAdaptiveSizePolicy* policy = heap->size_policy();
   IsGCActiveMark mark;
 
@@ -273,9 +270,8 @@
     return false;
   }
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   GCCause::Cause gc_cause = heap->gc_cause();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
 
   // Check for potential problems.
   if (!should_attempt_scavenge()) {
@@ -713,9 +709,7 @@
 // unforwarding markOops. It then restores any preserved mark oops,
 // and clears the _preserved_mark_stack.
 void PSScavenge::clean_up_failed_promotion() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
 
   {
@@ -742,7 +736,7 @@
   }
 
   // Reset the PromotionFailureALot counters.
-  NOT_PRODUCT(Universe::heap()->reset_promotion_should_fail();)
+  NOT_PRODUCT(heap->reset_promotion_should_fail();)
 }
 
 // This method is called whenever an attempt to promote an object
@@ -761,8 +755,7 @@
 }
 
 bool PSScavenge::should_attempt_scavenge() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSGCAdaptivePolicyCounters* counters = heap->gc_policy_counters();
 
   if (UsePerfData) {
@@ -838,9 +831,7 @@
                                                     MaxTenuringThreshold;
   }
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   PSYoungGen* young_gen = heap->young_gen();
   PSOldGen* old_gen = heap->old_gen();
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,7 +33,7 @@
 #include "utilities/globalDefinitions.hpp"
 
 inline void PSScavenge::save_to_space_top_before_gc() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   _to_space_top_before_gc = heap->young_gen()->to_space()->top();
 }
 
@@ -56,7 +56,7 @@
 template <class T>
 inline bool PSScavenge::should_scavenge(T* p, bool check_to_space) {
   if (check_to_space) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     return should_scavenge(p, heap->young_gen()->to_space());
   }
   return should_scavenge(p);
@@ -97,7 +97,6 @@
     ParallelScavengeHeap* psh = ParallelScavengeHeap::heap();
     assert(!psh->is_in_reserved(p), "GC barrier needed");
     if (PSScavenge::should_scavenge(p)) {
-      assert(!Universe::heap()->is_in_reserved(p), "Not from meta-data?");
       assert(PSScavenge::should_scavenge(p, true), "revisiting object?");
 
       oop o = *p;
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -47,7 +47,7 @@
 //
 
 void ScavengeRootsTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which);
   PSScavengeRootsClosure roots_closure(pm);
@@ -118,7 +118,7 @@
 //
 
 void ThreadRootsTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which);
   PSScavengeRootsClosure roots_closure(pm);
@@ -143,7 +143,7 @@
   _terminator(t) {}
 
 void StealTask::do_it(GCTaskManager* manager, uint which) {
-  assert(Universe::heap()->is_gc_active(), "called outside gc");
+  assert(ParallelScavengeHeap::heap()->is_gc_active(), "called outside gc");
 
   PSPromotionManager* pm =
     PSPromotionManager::gc_thread_promotion_manager(which);
@@ -181,10 +181,8 @@
 
   {
     PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which);
-
-    assert(Universe::heap()->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
     CardTableExtension* card_table =
-      barrier_set_cast<CardTableExtension>(Universe::heap()->barrier_set());
+      barrier_set_cast<CardTableExtension>(ParallelScavengeHeap::heap()->barrier_set());
 
     card_table->scavenge_contents_parallel(_gen->start_array(),
                                            _gen->object_space(),
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,8 +24,8 @@
 
 #include "precompiled.hpp"
 #include "gc_implementation/parallelScavenge/psVirtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "runtime/os.hpp"
-#include "runtime/virtualspace.hpp"
 
 // PSVirtualSpace
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
 #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSVIRTUALSPACE_HPP
 #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSVIRTUALSPACE_HPP
 
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 
 // VirtualSpace for the parallel scavenge collector.
 //
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -62,7 +62,7 @@
 
   MemRegion cmr((HeapWord*)virtual_space()->low(),
                 (HeapWord*)virtual_space()->high());
-  Universe::heap()->barrier_set()->resize_covered_region(cmr);
+  ParallelScavengeHeap::heap()->barrier_set()->resize_covered_region(cmr);
 
   if (ZapUnusedHeapArea) {
     // Mangle newly committed space immediately because it
@@ -103,7 +103,7 @@
                                            _max_gen_size, _virtual_space);
 
   // Compute maximum space sizes for performance counters
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   size_t alignment = heap->space_alignment();
   size_t size = virtual_space()->reserved_size();
 
@@ -153,8 +153,7 @@
 }
 
 void PSYoungGen::compute_initial_space_boundaries() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   // Compute sizes
   size_t alignment = heap->space_alignment();
@@ -208,7 +207,7 @@
 
 #ifndef PRODUCT
 void PSYoungGen::space_invariants() {
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t alignment = heap->space_alignment();
 
   // Currently, our eden size cannot shrink to zero
@@ -494,7 +493,7 @@
   char* to_start   = (char*)to_space()->bottom();
   char* to_end     = (char*)to_space()->end();
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t alignment = heap->space_alignment();
   const bool maintain_minimum =
     (requested_eden_size + 2 * requested_survivor_size) <= min_gen_size();
@@ -546,8 +545,6 @@
 
     // Does the optimal to-space overlap from-space?
     if (to_start < (char*)from_space()->end()) {
-      assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
       // Calculate the minimum offset possible for from_end
       size_t from_size = pointer_delta(from_space()->top(), from_start, sizeof(char));
 
@@ -708,9 +705,7 @@
   assert(from_space()->top() == old_from_top, "from top changed!");
 
   if (PrintAdaptiveSizePolicy) {
-    ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-    assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
-
+    ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
     gclog_or_tty->print("AdaptiveSizePolicy::survivor space sizes: "
                   "collection: %d "
                   "(" SIZE_FORMAT ", " SIZE_FORMAT ") -> "
@@ -843,7 +838,7 @@
 // from-space.
 size_t PSYoungGen::available_to_live() {
   size_t delta_in_survivor = 0;
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
   const size_t space_alignment = heap->space_alignment();
   const size_t gen_alignment = heap->generation_alignment();
 
@@ -927,7 +922,7 @@
 
   MemRegion cmr((HeapWord*)virtual_space()->low(),
                 (HeapWord*)virtual_space()->high());
-  Universe::heap()->barrier_set()->resize_covered_region(cmr);
+  ParallelScavengeHeap::heap()->barrier_set()->resize_covered_region(cmr);
   space_invariants();
 }
 
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/vmPSOperations.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/vmPSOperations.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,6 @@
 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.inline.hpp"
 #include "gc_implementation/parallelScavenge/psMarkSweep.hpp"
 #include "gc_implementation/parallelScavenge/psScavenge.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.inline.hpp"
 #include "gc_implementation/parallelScavenge/vmPSOperations.hpp"
 #include "memory/gcLocker.inline.hpp"
 #include "utilities/dtrace.hpp"
@@ -41,8 +40,7 @@
 void VM_ParallelGCFailedAllocation::doit() {
   SvcGCMarker sgcm(SvcGCMarker::MINOR);
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "must be a ParallelScavengeHeap");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   GCCauseSetter gccs(heap, _gc_cause);
   _result = heap->failed_mem_allocate(_word_size);
@@ -63,9 +61,7 @@
 void VM_ParallelGCSystemGC::doit() {
   SvcGCMarker sgcm(SvcGCMarker::FULL);
 
-  ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
-  assert(heap->kind() == CollectedHeap::ParallelScavengeHeap,
-    "must be a ParallelScavengeHeap");
+  ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 
   GCCauseSetter gccs(heap, _gc_cause);
   if (_gc_cause == GCCause::_gc_locker || _gc_cause == GCCause::_wb_young_gc
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -61,7 +61,6 @@
                                                                                                                                      \
      static_field(ParallelScavengeHeap,        _young_gen,                                    PSYoungGen*)                           \
      static_field(ParallelScavengeHeap,        _old_gen,                                      PSOldGen*)                             \
-     static_field(ParallelScavengeHeap,        _psh,                                          ParallelScavengeHeap*)                 \
                                                                                                                                      \
 
 #define VM_TYPES_PARALLELGC(declare_type,                                 \
--- a/hotspot/src/share/vm/gc_implementation/shared/ageTable.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/ageTable.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,9 +25,9 @@
 #include "precompiled.hpp"
 #include "gc_implementation/shared/ageTable.hpp"
 #include "gc_implementation/shared/gcPolicyCounters.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/collectorPolicy.hpp"
 #include "memory/resourceArea.hpp"
-#include "memory/sharedHeap.hpp"
 #include "runtime/atomic.inline.hpp"
 #include "utilities/copy.hpp"
 
@@ -79,7 +79,7 @@
   }
 }
 
-uint ageTable::compute_tenuring_threshold(size_t survivor_capacity) {
+uint ageTable::compute_tenuring_threshold(size_t survivor_capacity, GCPolicyCounters* gc_counters) {
   size_t desired_survivor_size = (size_t)((((double) survivor_capacity)*TargetSurvivorRatio)/100);
   uint result;
 
@@ -126,9 +126,6 @@
       age++;
     }
     if (UsePerfData) {
-      SharedHeap* sh = SharedHeap::heap();
-      CollectorPolicy* policy = sh->collector_policy();
-      GCPolicyCounters* gc_counters = policy->counters();
       gc_counters->tenuring_threshold()->set_value(result);
       gc_counters->desired_survivor_size()->set_value(
         desired_survivor_size*oopSize);
--- a/hotspot/src/share/vm/gc_implementation/shared/ageTable.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/ageTable.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -29,6 +29,8 @@
 #include "oops/oop.hpp"
 #include "runtime/perfData.hpp"
 
+class GCPolicyCounters;
+
 /* Copyright (c) 1992-2009 Oracle and/or its affiliates, and Stanford University.
    See the LICENSE file for license information. */
 
@@ -69,7 +71,7 @@
   void merge_par(ageTable* subTable);
 
   // calculate new tenuring threshold based on age information
-  uint compute_tenuring_threshold(size_t survivor_capacity);
+  uint compute_tenuring_threshold(size_t survivor_capacity, GCPolicyCounters* gc_counters);
 
  private:
   PerfVariable* _perf_sizes[table_size];
--- a/hotspot/src/share/vm/gc_implementation/shared/generationCounters.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/generationCounters.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,8 @@
 #ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_GENERATIONCOUNTERS_HPP
 #define SHARE_VM_GC_IMPLEMENTATION_SHARED_GENERATIONCOUNTERS_HPP
 
+#include "memory/virtualspace.hpp"
 #include "runtime/perfData.hpp"
-#include "runtime/virtualspace.hpp"
 
 // A GenerationCounter is a holder class for performance counters
 // that track a generation
--- a/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,6 +28,8 @@
 #include "gc_implementation/shared/gcTrace.hpp"
 #include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
 #include "oops/methodData.hpp"
 #include "oops/objArrayKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
@@ -55,16 +57,183 @@
 CLDToOopClosure               MarkSweep::follow_cld_closure(&mark_and_push_closure);
 CLDToOopClosure               MarkSweep::adjust_cld_closure(&adjust_pointer_closure);
 
-void MarkSweep::MarkAndPushClosure::do_oop(oop* p)       { mark_and_push(p); }
-void MarkSweep::MarkAndPushClosure::do_oop(narrowOop* p) { mark_and_push(p); }
+template <typename T>
+void MarkSweep::MarkAndPushClosure::do_oop_nv(T* p)       { mark_and_push(p); }
+void MarkSweep::MarkAndPushClosure::do_oop(oop* p)        { do_oop_nv(p); }
+void MarkSweep::MarkAndPushClosure::do_oop(narrowOop* p)  { do_oop_nv(p); }
 
 void MarkSweep::follow_class_loader(ClassLoaderData* cld) {
   MarkSweep::follow_cld_closure.do_cld(cld);
 }
 
+void InstanceKlass::oop_ms_follow_contents(oop obj) {
+  assert(obj != NULL, "can't follow the content of NULL object");
+  MarkSweep::follow_klass(this);
+
+  oop_oop_iterate_oop_maps<true>(obj, &MarkSweep::mark_and_push_closure);
+}
+
+void InstanceMirrorKlass::oop_ms_follow_contents(oop obj) {
+  InstanceKlass::oop_ms_follow_contents(obj);
+
+  // Follow the klass field in the mirror
+  Klass* klass = java_lang_Class::as_Klass(obj);
+  if (klass != NULL) {
+    // An anonymous class doesn't have its own class loader, so the call
+    // to follow_klass will mark and push its java mirror instead of the
+    // class loader. When handling the java mirror for an anonymous class
+    // we need to make sure its class loader data is claimed, this is done
+    // by calling follow_class_loader explicitly. For non-anonymous classes
+    // the call to follow_class_loader is made when the class loader itself
+    // is handled.
+    if (klass->oop_is_instance() && InstanceKlass::cast(klass)->is_anonymous()) {
+      MarkSweep::follow_class_loader(klass->class_loader_data());
+    } else {
+      MarkSweep::follow_klass(klass);
+    }
+  } else {
+    // If klass is NULL then this a mirror for a primitive type.
+    // We don't have to follow them, since they are handled as strong
+    // roots in Universe::oops_do.
+    assert(java_lang_Class::is_primitive(obj), "Sanity check");
+  }
+
+  oop_oop_iterate_statics<true>(obj, &MarkSweep::mark_and_push_closure);
+}
+
+void InstanceClassLoaderKlass::oop_ms_follow_contents(oop obj) {
+  InstanceKlass::oop_ms_follow_contents(obj);
+
+  ClassLoaderData * const loader_data = java_lang_ClassLoader::loader_data(obj);
+
+  // We must NULL check here, since the class loader
+  // can be found before the loader data has been set up.
+  if(loader_data != NULL) {
+    MarkSweep::follow_class_loader(loader_data);
+  }
+}
+
+template <class T>
+static void oop_ms_follow_contents_specialized(InstanceRefKlass* klass, oop obj) {
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  T heap_oop = oopDesc::load_heap_oop(referent_addr);
+  debug_only(
+    if(TraceReferenceGC && PrintGCDetails) {
+      gclog_or_tty->print_cr("InstanceRefKlass::oop_ms_follow_contents_specialized " PTR_FORMAT, p2i(obj));
+    }
+  )
+  if (!oopDesc::is_null(heap_oop)) {
+    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);
+    if (!referent->is_gc_marked() &&
+        MarkSweep::ref_processor()->discover_reference(obj, klass->reference_type())) {
+      // reference was discovered, referent will be traversed later
+      klass->InstanceKlass::oop_ms_follow_contents(obj);
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("       Non NULL enqueued " PTR_FORMAT, p2i(obj));
+        }
+      )
+      return;
+    } else {
+      // treat referent as normal oop
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("       Non NULL normal " PTR_FORMAT, p2i(obj));
+        }
+      )
+      MarkSweep::mark_and_push(referent_addr);
+    }
+  }
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
+    // Treat discovered as normal oop, if ref is not "active",
+    // i.e. if next is non-NULL.
+    T  next_oop = oopDesc::load_heap_oop(next_addr);
+    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
+      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("   Process discovered as normal "
+                                 PTR_FORMAT, p2i(discovered_addr));
+        }
+      )
+      MarkSweep::mark_and_push(discovered_addr);
+    }
+  } else {
+#ifdef ASSERT
+    // In the case of older JDKs which do not use the discovered
+    // field for the pending list, an inactive ref (next != NULL)
+    // must always have a NULL discovered field.
+    oop next = oopDesc::load_decode_heap_oop(next_addr);
+    oop discovered = java_lang_ref_Reference::discovered(obj);
+    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
+        err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
+            p2i(obj)));
+#endif
+  }
+  // treat next as normal oop.  next is a link in the reference queue.
+  debug_only(
+    if(TraceReferenceGC && PrintGCDetails) {
+      gclog_or_tty->print_cr("   Process next as normal " PTR_FORMAT, p2i(next_addr));
+    }
+  )
+  MarkSweep::mark_and_push(next_addr);
+  klass->InstanceKlass::oop_ms_follow_contents(obj);
+}
+
+void InstanceRefKlass::oop_ms_follow_contents(oop obj) {
+  if (UseCompressedOops) {
+    oop_ms_follow_contents_specialized<narrowOop>(this, obj);
+  } else {
+    oop_ms_follow_contents_specialized<oop>(this, obj);
+  }
+}
+
+template <class T>
+static void oop_ms_follow_contents_specialized(oop obj, int index) {
+  objArrayOop a = objArrayOop(obj);
+  const size_t len = size_t(a->length());
+  const size_t beg_index = size_t(index);
+  assert(beg_index < len || len == 0, "index too large");
+
+  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
+  const size_t end_index = beg_index + stride;
+  T* const base = (T*)a->base();
+  T* const beg = base + beg_index;
+  T* const end = base + end_index;
+
+  // Push the non-NULL elements of the next stride on the marking stack.
+  for (T* e = beg; e < end; e++) {
+    MarkSweep::mark_and_push<T>(e);
+  }
+
+  if (end_index < len) {
+    MarkSweep::push_objarray(a, end_index); // Push the continuation.
+  }
+}
+
+void ObjArrayKlass::oop_ms_follow_contents(oop obj) {
+  assert (obj->is_array(), "obj must be array");
+  MarkSweep::follow_klass(this);
+  if (UseCompressedOops) {
+    oop_ms_follow_contents_specialized<narrowOop>(obj, 0);
+  } else {
+    oop_ms_follow_contents_specialized<oop>(obj, 0);
+  }
+}
+
+void TypeArrayKlass::oop_ms_follow_contents(oop obj) {
+  assert(obj->is_typeArray(),"must be a type array");
+  // Performance tweak: We skip iterating over the klass pointer since we
+  // know that Universe::TypeArrayKlass never moves.
+}
+
 void MarkSweep::follow_array(objArrayOop array, int index) {
-  ObjArrayKlass* k = (ObjArrayKlass*)array->klass();
-  k->oop_follow_contents(array, index);
+  if (UseCompressedOops) {
+    oop_ms_follow_contents_specialized<narrowOop>(array, index);
+  } else {
+    oop_ms_follow_contents_specialized<oop>(array, index);
+  }
 }
 
 void MarkSweep::follow_stack() {
@@ -112,8 +281,10 @@
 
 MarkSweep::AdjustPointerClosure MarkSweep::adjust_pointer_closure;
 
-void MarkSweep::AdjustPointerClosure::do_oop(oop* p)       { adjust_pointer(p); }
-void MarkSweep::AdjustPointerClosure::do_oop(narrowOop* p) { adjust_pointer(p); }
+template <typename T>
+void MarkSweep::AdjustPointerClosure::do_oop_nv(T* p)      { adjust_pointer(p); }
+void MarkSweep::AdjustPointerClosure::do_oop(oop* p)       { do_oop_nv(p); }
+void MarkSweep::AdjustPointerClosure::do_oop(narrowOop* p) { do_oop_nv(p); }
 
 void MarkSweep::adjust_marks() {
   assert( _preserved_oop_stack.size() == _preserved_mark_stack.size(),
@@ -167,11 +338,83 @@
   MarkSweep::_gc_tracer = new (ResourceObj::C_HEAP, mtGC) SerialOldTracer();
 }
 
-#ifndef PRODUCT
+int InstanceKlass::oop_ms_adjust_pointers(oop obj) {
+  int size = size_helper();
+  oop_oop_iterate_oop_maps<true>(obj, &MarkSweep::adjust_pointer_closure);
+  return size;
+}
 
-void MarkSweep::trace(const char* msg) {
-  if (TraceMarkSweep)
-    gclog_or_tty->print("%s", msg);
+int InstanceMirrorKlass::oop_ms_adjust_pointers(oop obj) {
+  int size = oop_size(obj);
+  InstanceKlass::oop_ms_adjust_pointers(obj);
+
+  oop_oop_iterate_statics<true>(obj, &MarkSweep::adjust_pointer_closure);
+  return size;
+}
+
+int InstanceClassLoaderKlass::oop_ms_adjust_pointers(oop obj) {
+  return InstanceKlass::oop_ms_adjust_pointers(obj);
 }
 
+#ifdef ASSERT
+template <class T> static void trace_reference_gc(const char *s, oop obj,
+                                                  T* referent_addr,
+                                                  T* next_addr,
+                                                  T* discovered_addr) {
+  if(TraceReferenceGC && PrintGCDetails) {
+    gclog_or_tty->print_cr("%s obj " PTR_FORMAT, s, p2i(obj));
+    gclog_or_tty->print_cr("     referent_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(referent_addr),
+                           p2i(referent_addr ?
+                               (address)oopDesc::load_decode_heap_oop(referent_addr) : NULL));
+    gclog_or_tty->print_cr("     next_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(next_addr),
+                           p2i(next_addr ? (address)oopDesc::load_decode_heap_oop(next_addr) : NULL));
+    gclog_or_tty->print_cr("     discovered_addr/* " PTR_FORMAT " / "
+                           PTR_FORMAT, p2i(discovered_addr),
+                           p2i(discovered_addr ?
+                               (address)oopDesc::load_decode_heap_oop(discovered_addr) : NULL));
+  }
+}
 #endif
+
+template <class T> void static adjust_object_specialized(oop obj) {
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  MarkSweep::adjust_pointer(referent_addr);
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  MarkSweep::adjust_pointer(next_addr);
+  T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+  MarkSweep::adjust_pointer(discovered_addr);
+  debug_only(trace_reference_gc("InstanceRefKlass::oop_ms_adjust_pointers", obj,
+                                referent_addr, next_addr, discovered_addr);)
+}
+
+int InstanceRefKlass::oop_ms_adjust_pointers(oop obj) {
+  int size = size_helper();
+  InstanceKlass::oop_ms_adjust_pointers(obj);
+
+  if (UseCompressedOops) {
+    adjust_object_specialized<narrowOop>(obj);
+  } else {
+    adjust_object_specialized<oop>(obj);
+  }
+  return size;
+}
+
+int ObjArrayKlass::oop_ms_adjust_pointers(oop obj) {
+  assert(obj->is_objArray(), "obj must be obj array");
+  objArrayOop a = objArrayOop(obj);
+  // Get size before changing pointers.
+  // Don't call size() or oop_size() since that is a virtual call.
+  int size = a->object_size();
+  oop_oop_iterate_elements<true>(a, &MarkSweep::adjust_pointer_closure);
+  return size;
+}
+
+int TypeArrayKlass::oop_ms_adjust_pointers(oop obj) {
+  assert(obj->is_typeArray(), "must be a type array");
+  typeArrayOop t = typeArrayOop(obj);
+  // Performance tweak: We skip iterating over the klass pointer since we
+  // know that Universe::TypeArrayKlass never moves.
+  return t->object_size();
+}
--- a/hotspot/src/share/vm/gc_implementation/shared/markSweep.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/markSweep.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -60,8 +60,9 @@
     virtual void do_oop(narrowOop* p);
   };
 
-  class MarkAndPushClosure: public OopClosure {
+  class MarkAndPushClosure: public ExtendedOopClosure {
    public:
+    template <typename T> void do_oop_nv(T* p);
     virtual void do_oop(oop* p);
     virtual void do_oop(narrowOop* p);
   };
@@ -73,8 +74,12 @@
 
   class AdjustPointerClosure: public OopsInGenClosure {
    public:
+    template <typename T> void do_oop_nv(T* p);
     virtual void do_oop(oop* p);
     virtual void do_oop(narrowOop* p);
+
+    // This closure provides its own oop verification code.
+    debug_only(virtual bool should_verify_oops() { return false; })
   };
 
   // Used for java/lang/ref handling
@@ -126,9 +131,6 @@
   // Non public closures
   static KeepAliveClosure keep_alive;
 
-  // Debugging
-  static void trace(const char* msg) PRODUCT_RETURN;
-
  public:
   // Public closures
   static IsAliveClosure       is_alive;
--- a/hotspot/src/share/vm/gc_implementation/shared/markSweep.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/markSweep.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,11 +28,15 @@
 #include "gc_implementation/shared/markSweep.hpp"
 #include "gc_interface/collectedHeap.hpp"
 #include "oops/markOop.inline.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceClassLoaderKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
+#include "oops/instanceRefKlass.inline.hpp"
+#include "oops/objArrayKlass.inline.hpp"
 #include "utilities/stack.inline.hpp"
 #include "utilities/macros.hpp"
 #if INCLUDE_ALL_GCS
 #include "gc_implementation/g1/g1StringDedup.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
 #endif // INCLUDE_ALL_GCS
 
 inline void MarkSweep::mark_object(oop obj) {
@@ -59,7 +63,9 @@
 }
 
 inline void MarkSweep::follow_object(oop obj) {
-  obj->follow_contents();
+  assert(obj->is_gc_marked(), "should be marked");
+
+  obj->ms_follow_contents();
 }
 
 template <class T> inline void MarkSweep::follow_root(T* p) {
@@ -95,13 +101,15 @@
 }
 
 inline int MarkSweep::adjust_pointers(oop obj) {
-  return obj->adjust_pointers();
+  return obj->ms_adjust_pointers();
 }
 
 template <class T> inline void MarkSweep::adjust_pointer(T* p) {
   T heap_oop = oopDesc::load_heap_oop(p);
   if (!oopDesc::is_null(heap_oop)) {
     oop obj     = oopDesc::decode_heap_oop_not_null(heap_oop);
+    assert(Universe::heap()->is_in(obj), "should be in heap");
+
     oop new_obj = oop(obj->mark()->decode_pointer());
     assert(new_obj != NULL ||                         // is forwarding ptr?
            obj->mark() == markOopDesc::prototype() || // not gc marked?
--- a/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 #include "precompiled.hpp"
 #include "gc_implementation/shared/mutableNUMASpace.hpp"
 #include "gc_implementation/shared/spaceDecorator.hpp"
-#include "memory/sharedHeap.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/atomic.inline.hpp"
 #include "runtime/thread.inline.hpp"
--- a/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,134 +0,0 @@
-/*
- * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#include "precompiled.hpp"
-#include "gc_implementation/shared/parGCAllocBuffer.hpp"
-#include "memory/threadLocalAllocBuffer.hpp"
-#include "oops/arrayOop.hpp"
-#include "oops/oop.inline.hpp"
-
-size_t ParGCAllocBuffer::min_size() {
-  // Make sure that we return something that is larger than AlignmentReserve
-  return align_object_size(MAX2(MinTLABSize / HeapWordSize, (uintx)oopDesc::header_size())) + AlignmentReserve;
-}
-
-size_t ParGCAllocBuffer::max_size() {
-  return ThreadLocalAllocBuffer::max_size();
-}
-
-ParGCAllocBuffer::ParGCAllocBuffer(size_t desired_plab_sz_) :
-  _word_sz(desired_plab_sz_), _bottom(NULL), _top(NULL),
-  _end(NULL), _hard_end(NULL), _allocated(0), _wasted(0)
-{
-  // ArrayOopDesc::header_size depends on command line initialization.
-  AlignmentReserve = oopDesc::header_size() > MinObjAlignment ? align_object_size(arrayOopDesc::header_size(T_INT)) : 0;
-  assert(min_size() > AlignmentReserve,
-         err_msg("Minimum PLAB size " SIZE_FORMAT" must be larger than alignment reserve " SIZE_FORMAT" "
-                 "to be able to contain objects", min_size(), AlignmentReserve));
-}
-
-// If the minimum object size is greater than MinObjAlignment, we can
-// end up with a shard at the end of the buffer that's smaller than
-// the smallest object.  We can't allow that because the buffer must
-// look like it's full of objects when we retire it, so we make
-// sure we have enough space for a filler int array object.
-size_t ParGCAllocBuffer::AlignmentReserve;
-
-void ParGCAllocBuffer::flush_and_retire_stats(PLABStats* stats) {
-  // Retire the last allocation buffer.
-  size_t unused = retire_internal();
-
-  // Now flush the statistics.
-  stats->add_allocated(_allocated);
-  stats->add_wasted(_wasted);
-  stats->add_unused(unused);
-
-  // Since we have flushed the stats we need to clear  the _allocated and _wasted
-  // fields in case somebody retains an instance of this over GCs. Not doing so
-  // will artifically inflate the values in the statistics.
-  _allocated = 0;
-  _wasted = 0;
-}
-
-void ParGCAllocBuffer::retire() {
-  _wasted += retire_internal();
-}
-
-size_t ParGCAllocBuffer::retire_internal() {
-  size_t result = 0;
-  if (_top < _hard_end) {
-    CollectedHeap::fill_with_object(_top, _hard_end);
-    result += invalidate();
-  }
-  return result;
-}
-
-// Compute desired plab size and latch result for later
-// use. This should be called once at the end of parallel
-// scavenge; it clears the sensor accumulators.
-void PLABStats::adjust_desired_plab_sz(uint no_of_gc_workers) {
-  assert(ResizePLAB, "Not set");
-
-  assert(is_object_aligned(max_size()) && min_size() <= max_size(),
-         "PLAB clipping computation may be incorrect");
-
-  if (_allocated == 0) {
-    assert(_unused == 0,
-           err_msg("Inconsistency in PLAB stats: "
-                   "_allocated: "SIZE_FORMAT", "
-                   "_wasted: "SIZE_FORMAT", "
-                   "_unused: "SIZE_FORMAT,
-                   _allocated, _wasted, _unused));
-
-    _allocated = 1;
-  }
-  double wasted_frac    = (double)_unused / (double)_allocated;
-  size_t target_refills = (size_t)((wasted_frac * TargetSurvivorRatio) / TargetPLABWastePct);
-  if (target_refills == 0) {
-    target_refills = 1;
-  }
-  size_t used = _allocated - _wasted - _unused;
-  size_t recent_plab_sz = used / (target_refills * no_of_gc_workers);
-  // Take historical weighted average
-  _filter.sample(recent_plab_sz);
-  // Clip from above and below, and align to object boundary
-  size_t new_plab_sz = MAX2(min_size(), (size_t)_filter.average());
-  new_plab_sz = MIN2(max_size(), new_plab_sz);
-  new_plab_sz = align_object_size(new_plab_sz);
-  // Latch the result
-  if (PrintPLAB) {
-    gclog_or_tty->print(" (plab_sz = " SIZE_FORMAT" desired_plab_sz = " SIZE_FORMAT") ", recent_plab_sz, new_plab_sz);
-  }
-  _desired_plab_sz = new_plab_sz;
-
-  reset();
-}
-
-#ifndef PRODUCT
-void ParGCAllocBuffer::print() {
-  gclog_or_tty->print_cr("parGCAllocBuffer: _bottom: " PTR_FORMAT "  _top: " PTR_FORMAT
-    "  _end: " PTR_FORMAT "  _hard_end: " PTR_FORMAT ")",
-    p2i(_bottom), p2i(_top), p2i(_end), p2i(_hard_end));
-}
-#endif // !PRODUCT
--- a/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,197 +0,0 @@
-/*
- * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_GC_IMPLEMENTATION_PARNEW_PARGCALLOCBUFFER_HPP
-#define SHARE_VM_GC_IMPLEMENTATION_PARNEW_PARGCALLOCBUFFER_HPP
-
-#include "gc_implementation/shared/gcUtil.hpp"
-#include "memory/allocation.hpp"
-#include "runtime/atomic.hpp"
-#include "utilities/globalDefinitions.hpp"
-
-// Forward declarations.
-class PLABStats;
-
-// A per-thread allocation buffer used during GC.
-class ParGCAllocBuffer: public CHeapObj<mtGC> {
-protected:
-  char      head[32];
-  size_t    _word_sz;          // In HeapWord units
-  HeapWord* _bottom;
-  HeapWord* _top;
-  HeapWord* _end;           // Last allocatable address + 1
-  HeapWord* _hard_end;      // _end + AlignmentReserve
-  // In support of ergonomic sizing of PLAB's
-  size_t    _allocated;     // in HeapWord units
-  size_t    _wasted;        // in HeapWord units
-  char      tail[32];
-  static size_t AlignmentReserve;
-
-  // Force future allocations to fail and queries for contains()
-  // to return false. Returns the amount of unused space in this PLAB.
-  size_t invalidate() {
-    _end    = _hard_end;
-    size_t remaining = pointer_delta(_end, _top);  // Calculate remaining space.
-    _top    = _end;      // Force future allocations to fail.
-    _bottom = _end;      // Force future contains() queries to return false.
-    return remaining;
-  }
-
-  // Fill in remaining space with a dummy object and invalidate the PLAB. Returns
-  // the amount of remaining space.
-  size_t retire_internal();
-
-public:
-  // Initializes the buffer to be empty, but with the given "word_sz".
-  // Must get initialized with "set_buf" for an allocation to succeed.
-  ParGCAllocBuffer(size_t word_sz);
-  virtual ~ParGCAllocBuffer() {}
-
-  // Minimum PLAB size.
-  static size_t min_size();
-  // Maximum PLAB size.
-  static size_t max_size();
-
-  // If an allocation of the given "word_sz" can be satisfied within the
-  // buffer, do the allocation, returning a pointer to the start of the
-  // allocated block.  If the allocation request cannot be satisfied,
-  // return NULL.
-  HeapWord* allocate(size_t word_sz) {
-    HeapWord* res = _top;
-    if (pointer_delta(_end, _top) >= word_sz) {
-      _top = _top + word_sz;
-      return res;
-    } else {
-      return NULL;
-    }
-  }
-
-  // Allocate the object aligned to "alignment_in_bytes".
-  HeapWord* allocate_aligned(size_t word_sz, unsigned short alignment_in_bytes);
-
-  // Undo the last allocation in the buffer, which is required to be of the
-  // "obj" of the given "word_sz".
-  void undo_allocation(HeapWord* obj, size_t word_sz) {
-    assert(pointer_delta(_top, _bottom) >= word_sz, "Bad undo");
-    assert(pointer_delta(_top, obj)     == word_sz, "Bad undo");
-    _top = obj;
-  }
-
-  // The total (word) size of the buffer, including both allocated and
-  // unallocated space.
-  size_t word_sz() { return _word_sz; }
-
-  // Should only be done if we are about to reset with a new buffer of the
-  // given size.
-  void set_word_size(size_t new_word_sz) {
-    assert(new_word_sz > AlignmentReserve, "Too small");
-    _word_sz = new_word_sz;
-  }
-
-  // The number of words of unallocated space remaining in the buffer.
-  size_t words_remaining() {
-    assert(_end >= _top, "Negative buffer");
-    return pointer_delta(_end, _top, HeapWordSize);
-  }
-
-  bool contains(void* addr) {
-    return (void*)_bottom <= addr && addr < (void*)_hard_end;
-  }
-
-  // Sets the space of the buffer to be [buf, space+word_sz()).
-  virtual void set_buf(HeapWord* buf) {
-    _bottom   = buf;
-    _top      = _bottom;
-    _hard_end = _bottom + word_sz();
-    _end      = _hard_end - AlignmentReserve;
-    assert(_end >= _top, "Negative buffer");
-    // In support of ergonomic sizing
-    _allocated += word_sz();
-  }
-
-  // Flush allocation statistics into the given PLABStats supporting ergonomic
-  // sizing of PLAB's and retire the current buffer. To be called at the end of
-  // GC.
-  void flush_and_retire_stats(PLABStats* stats);
-
-  // Fills in the unallocated portion of the buffer with a garbage object and updates
-  // statistics. To be called during GC.
-  virtual void retire();
-
-  void print() PRODUCT_RETURN;
-};
-
-// PLAB book-keeping.
-class PLABStats VALUE_OBJ_CLASS_SPEC {
-  size_t _allocated;      // Total allocated
-  size_t _wasted;         // of which wasted (internal fragmentation)
-  size_t _unused;         // Unused in last buffer
-  size_t _desired_plab_sz;// Output of filter (below), suitably trimmed and quantized
-  AdaptiveWeightedAverage
-         _filter;         // Integrator with decay
-
-  void reset() {
-    _allocated = 0;
-    _wasted    = 0;
-    _unused    = 0;
-  }
- public:
-  PLABStats(size_t desired_plab_sz_, unsigned wt) :
-    _allocated(0),
-    _wasted(0),
-    _unused(0),
-    _desired_plab_sz(desired_plab_sz_),
-    _filter(wt)
-  { }
-
-  static const size_t min_size() {
-    return ParGCAllocBuffer::min_size();
-  }
-
-  static const size_t max_size() {
-    return ParGCAllocBuffer::max_size();
-  }
-
-  size_t desired_plab_sz() {
-    return _desired_plab_sz;
-  }
-
-  // Updates the current desired PLAB size. Computes the new desired PLAB size,
-  // updates _desired_plab_sz and clears sensor accumulators.
-  void adjust_desired_plab_sz(uint no_of_gc_workers);
-
-  void add_allocated(size_t v) {
-    Atomic::add_ptr(v, &_allocated);
-  }
-
-  void add_unused(size_t v) {
-    Atomic::add_ptr(v, &_unused);
-  }
-
-  void add_wasted(size_t v) {
-    Atomic::add_ptr(v, &_wasted);
-  }
-};
-
-#endif // SHARE_VM_GC_IMPLEMENTATION_PARNEW_PARGCALLOCBUFFER_HPP
--- a/hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_PARGCALLOCBUFFER_INLINE_HPP
-#define SHARE_VM_GC_IMPLEMENTATION_SHARED_PARGCALLOCBUFFER_INLINE_HPP
-
-#include "gc_implementation/shared/parGCAllocBuffer.hpp"
-#include "gc_interface/collectedHeap.inline.hpp"
-
-HeapWord* ParGCAllocBuffer::allocate_aligned(size_t word_sz, unsigned short alignment_in_bytes) {
-
-  HeapWord* res = CollectedHeap::align_allocation_or_fail(_top, _end, alignment_in_bytes);
-  if (res == NULL) {
-    return NULL;
-  }
-
-  // Set _top so that allocate(), which expects _top to be correctly set,
-  // can be used below.
-  _top = res;
-  return allocate(word_sz);
-}
-
-#endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_PARGCALLOCBUFFER_INLINE_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/shared/plab.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,134 @@
+/*
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "gc_implementation/shared/plab.hpp"
+#include "memory/threadLocalAllocBuffer.hpp"
+#include "oops/arrayOop.hpp"
+#include "oops/oop.inline.hpp"
+
+size_t PLAB::min_size() {
+  // Make sure that we return something that is larger than AlignmentReserve
+  return align_object_size(MAX2(MinTLABSize / HeapWordSize, (uintx)oopDesc::header_size())) + AlignmentReserve;
+}
+
+size_t PLAB::max_size() {
+  return ThreadLocalAllocBuffer::max_size();
+}
+
+PLAB::PLAB(size_t desired_plab_sz_) :
+  _word_sz(desired_plab_sz_), _bottom(NULL), _top(NULL),
+  _end(NULL), _hard_end(NULL), _allocated(0), _wasted(0)
+{
+  // ArrayOopDesc::header_size depends on command line initialization.
+  AlignmentReserve = oopDesc::header_size() > MinObjAlignment ? align_object_size(arrayOopDesc::header_size(T_INT)) : 0;
+  assert(min_size() > AlignmentReserve,
+         err_msg("Minimum PLAB size " SIZE_FORMAT" must be larger than alignment reserve " SIZE_FORMAT" "
+                 "to be able to contain objects", min_size(), AlignmentReserve));
+}
+
+// If the minimum object size is greater than MinObjAlignment, we can
+// end up with a shard at the end of the buffer that's smaller than
+// the smallest object.  We can't allow that because the buffer must
+// look like it's full of objects when we retire it, so we make
+// sure we have enough space for a filler int array object.
+size_t PLAB::AlignmentReserve;
+
+void PLAB::flush_and_retire_stats(PLABStats* stats) {
+  // Retire the last allocation buffer.
+  size_t unused = retire_internal();
+
+  // Now flush the statistics.
+  stats->add_allocated(_allocated);
+  stats->add_wasted(_wasted);
+  stats->add_unused(unused);
+
+  // Since we have flushed the stats we need to clear  the _allocated and _wasted
+  // fields in case somebody retains an instance of this over GCs. Not doing so
+  // will artifically inflate the values in the statistics.
+  _allocated = 0;
+  _wasted = 0;
+}
+
+void PLAB::retire() {
+  _wasted += retire_internal();
+}
+
+size_t PLAB::retire_internal() {
+  size_t result = 0;
+  if (_top < _hard_end) {
+    CollectedHeap::fill_with_object(_top, _hard_end);
+    result += invalidate();
+  }
+  return result;
+}
+
+// Compute desired plab size and latch result for later
+// use. This should be called once at the end of parallel
+// scavenge; it clears the sensor accumulators.
+void PLABStats::adjust_desired_plab_sz(uint no_of_gc_workers) {
+  assert(ResizePLAB, "Not set");
+
+  assert(is_object_aligned(max_size()) && min_size() <= max_size(),
+         "PLAB clipping computation may be incorrect");
+
+  if (_allocated == 0) {
+    assert(_unused == 0,
+           err_msg("Inconsistency in PLAB stats: "
+                   "_allocated: "SIZE_FORMAT", "
+                   "_wasted: "SIZE_FORMAT", "
+                   "_unused: "SIZE_FORMAT,
+                   _allocated, _wasted, _unused));
+
+    _allocated = 1;
+  }
+  double wasted_frac    = (double)_unused / (double)_allocated;
+  size_t target_refills = (size_t)((wasted_frac * TargetSurvivorRatio) / TargetPLABWastePct);
+  if (target_refills == 0) {
+    target_refills = 1;
+  }
+  size_t used = _allocated - _wasted - _unused;
+  size_t recent_plab_sz = used / (target_refills * no_of_gc_workers);
+  // Take historical weighted average
+  _filter.sample(recent_plab_sz);
+  // Clip from above and below, and align to object boundary
+  size_t new_plab_sz = MAX2(min_size(), (size_t)_filter.average());
+  new_plab_sz = MIN2(max_size(), new_plab_sz);
+  new_plab_sz = align_object_size(new_plab_sz);
+  // Latch the result
+  if (PrintPLAB) {
+    gclog_or_tty->print(" (plab_sz = " SIZE_FORMAT" desired_plab_sz = " SIZE_FORMAT") ", recent_plab_sz, new_plab_sz);
+  }
+  _desired_plab_sz = new_plab_sz;
+
+  reset();
+}
+
+#ifndef PRODUCT
+void PLAB::print() {
+  gclog_or_tty->print_cr("PLAB: _bottom: " PTR_FORMAT "  _top: " PTR_FORMAT
+    "  _end: " PTR_FORMAT "  _hard_end: " PTR_FORMAT ")",
+    p2i(_bottom), p2i(_top), p2i(_end), p2i(_hard_end));
+}
+#endif // !PRODUCT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/shared/plab.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,197 @@
+/*
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_HPP
+#define SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_HPP
+
+#include "gc_implementation/shared/gcUtil.hpp"
+#include "memory/allocation.hpp"
+#include "runtime/atomic.hpp"
+#include "utilities/globalDefinitions.hpp"
+
+// Forward declarations.
+class PLABStats;
+
+// A per-thread allocation buffer used during GC.
+class PLAB: public CHeapObj<mtGC> {
+protected:
+  char      head[32];
+  size_t    _word_sz;          // In HeapWord units
+  HeapWord* _bottom;
+  HeapWord* _top;
+  HeapWord* _end;           // Last allocatable address + 1
+  HeapWord* _hard_end;      // _end + AlignmentReserve
+  // In support of ergonomic sizing of PLAB's
+  size_t    _allocated;     // in HeapWord units
+  size_t    _wasted;        // in HeapWord units
+  char      tail[32];
+  static size_t AlignmentReserve;
+
+  // Force future allocations to fail and queries for contains()
+  // to return false. Returns the amount of unused space in this PLAB.
+  size_t invalidate() {
+    _end    = _hard_end;
+    size_t remaining = pointer_delta(_end, _top);  // Calculate remaining space.
+    _top    = _end;      // Force future allocations to fail.
+    _bottom = _end;      // Force future contains() queries to return false.
+    return remaining;
+  }
+
+  // Fill in remaining space with a dummy object and invalidate the PLAB. Returns
+  // the amount of remaining space.
+  size_t retire_internal();
+
+public:
+  // Initializes the buffer to be empty, but with the given "word_sz".
+  // Must get initialized with "set_buf" for an allocation to succeed.
+  PLAB(size_t word_sz);
+  virtual ~PLAB() {}
+
+  // Minimum PLAB size.
+  static size_t min_size();
+  // Maximum PLAB size.
+  static size_t max_size();
+
+  // If an allocation of the given "word_sz" can be satisfied within the
+  // buffer, do the allocation, returning a pointer to the start of the
+  // allocated block.  If the allocation request cannot be satisfied,
+  // return NULL.
+  HeapWord* allocate(size_t word_sz) {
+    HeapWord* res = _top;
+    if (pointer_delta(_end, _top) >= word_sz) {
+      _top = _top + word_sz;
+      return res;
+    } else {
+      return NULL;
+    }
+  }
+
+  // Allocate the object aligned to "alignment_in_bytes".
+  HeapWord* allocate_aligned(size_t word_sz, unsigned short alignment_in_bytes);
+
+  // Undo the last allocation in the buffer, which is required to be of the
+  // "obj" of the given "word_sz".
+  void undo_allocation(HeapWord* obj, size_t word_sz) {
+    assert(pointer_delta(_top, _bottom) >= word_sz, "Bad undo");
+    assert(pointer_delta(_top, obj)     == word_sz, "Bad undo");
+    _top = obj;
+  }
+
+  // The total (word) size of the buffer, including both allocated and
+  // unallocated space.
+  size_t word_sz() { return _word_sz; }
+
+  // Should only be done if we are about to reset with a new buffer of the
+  // given size.
+  void set_word_size(size_t new_word_sz) {
+    assert(new_word_sz > AlignmentReserve, "Too small");
+    _word_sz = new_word_sz;
+  }
+
+  // The number of words of unallocated space remaining in the buffer.
+  size_t words_remaining() {
+    assert(_end >= _top, "Negative buffer");
+    return pointer_delta(_end, _top, HeapWordSize);
+  }
+
+  bool contains(void* addr) {
+    return (void*)_bottom <= addr && addr < (void*)_hard_end;
+  }
+
+  // Sets the space of the buffer to be [buf, space+word_sz()).
+  virtual void set_buf(HeapWord* buf) {
+    _bottom   = buf;
+    _top      = _bottom;
+    _hard_end = _bottom + word_sz();
+    _end      = _hard_end - AlignmentReserve;
+    assert(_end >= _top, "Negative buffer");
+    // In support of ergonomic sizing
+    _allocated += word_sz();
+  }
+
+  // Flush allocation statistics into the given PLABStats supporting ergonomic
+  // sizing of PLAB's and retire the current buffer. To be called at the end of
+  // GC.
+  virtual void flush_and_retire_stats(PLABStats* stats);
+
+  // Fills in the unallocated portion of the buffer with a garbage object and updates
+  // statistics. To be called during GC.
+  virtual void retire();
+
+  void print() PRODUCT_RETURN;
+};
+
+// PLAB book-keeping.
+class PLABStats VALUE_OBJ_CLASS_SPEC {
+  size_t _allocated;      // Total allocated
+  size_t _wasted;         // of which wasted (internal fragmentation)
+  size_t _unused;         // Unused in last buffer
+  size_t _desired_plab_sz;// Output of filter (below), suitably trimmed and quantized
+  AdaptiveWeightedAverage
+         _filter;         // Integrator with decay
+
+  void reset() {
+    _allocated = 0;
+    _wasted    = 0;
+    _unused    = 0;
+  }
+ public:
+  PLABStats(size_t desired_plab_sz_, unsigned wt) :
+    _allocated(0),
+    _wasted(0),
+    _unused(0),
+    _desired_plab_sz(desired_plab_sz_),
+    _filter(wt)
+  { }
+
+  static const size_t min_size() {
+    return PLAB::min_size();
+  }
+
+  static const size_t max_size() {
+    return PLAB::max_size();
+  }
+
+  size_t desired_plab_sz() {
+    return _desired_plab_sz;
+  }
+
+  // Updates the current desired PLAB size. Computes the new desired PLAB size,
+  // updates _desired_plab_sz and clears sensor accumulators.
+  void adjust_desired_plab_sz(uint no_of_gc_workers);
+
+  void add_allocated(size_t v) {
+    Atomic::add_ptr(v, &_allocated);
+  }
+
+  void add_unused(size_t v) {
+    Atomic::add_ptr(v, &_unused);
+  }
+
+  void add_wasted(size_t v) {
+    Atomic::add_ptr(v, &_wasted);
+  }
+};
+
+#endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/gc_implementation/shared/plab.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_INLINE_HPP
+#define SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_INLINE_HPP
+
+#include "gc_implementation/shared/plab.hpp"
+#include "gc_interface/collectedHeap.inline.hpp"
+
+HeapWord* PLAB::allocate_aligned(size_t word_sz, unsigned short alignment_in_bytes) {
+
+  HeapWord* res = CollectedHeap::align_allocation_or_fail(_top, _end, alignment_in_bytes);
+  if (res == NULL) {
+    return NULL;
+  }
+
+  // Set _top so that allocate(), which expects _top to be correctly set,
+  // can be used below.
+  _top = res;
+  return allocate(word_sz);
+}
+
+#endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_PLAB_INLINE_HPP
--- a/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -116,8 +116,6 @@
     _prologue_succeeded = false;
   } else {
     _prologue_succeeded = true;
-    SharedHeap* sh = SharedHeap::heap();
-    if (sh != NULL) sh->_thread_holds_heap_lock_for_gc = true;
   }
   return _prologue_succeeded;
 }
@@ -126,22 +124,11 @@
 void VM_GC_Operation::doit_epilogue() {
   assert(Thread::current()->is_Java_thread(), "just checking");
   // Release the Heap_lock first.
-  SharedHeap* sh = SharedHeap::heap();
-  if (sh != NULL) sh->_thread_holds_heap_lock_for_gc = false;
   Heap_lock->unlock();
   release_and_notify_pending_list_lock();
 }
 
-bool VM_GC_HeapInspection::doit_prologue() {
-  if (Universe::heap()->supports_heap_inspection()) {
-    return VM_GC_Operation::doit_prologue();
-  } else {
-    return false;
-  }
-}
-
 bool VM_GC_HeapInspection::skip_operation() const {
-  assert(Universe::heap()->supports_heap_inspection(), "huh?");
   return false;
 }
 
--- a/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -150,7 +150,6 @@
   ~VM_GC_HeapInspection() {}
   virtual VMOp_Type type() const { return VMOp_GC_HeapInspection; }
   virtual bool skip_operation() const;
-  virtual bool doit_prologue();
   virtual void doit();
   void set_csv_format(bool value) {_csv_format = value;}
   void set_print_help(bool value) {_print_help = value;}
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -220,6 +220,11 @@
   }
 }
 
+void CollectedHeap::set_barrier_set(BarrierSet* barrier_set) {
+  _barrier_set = barrier_set;
+  oopDesc::set_bs(_barrier_set);
+}
+
 void CollectedHeap::pre_initialize() {
   // Used for ReduceInitialCardMarks (when COMPILER2 is used);
   // otherwise remains unused.
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -75,9 +75,8 @@
 
 //
 // CollectedHeap
-//   SharedHeap
-//     GenCollectedHeap
-//     G1CollectedHeap
+//   GenCollectedHeap
+//   G1CollectedHeap
 //   ParallelScavengeHeap
 //
 class CollectedHeap : public CHeapObj<mtInternal> {
@@ -205,7 +204,7 @@
   // In many heaps, there will be a need to perform some initialization activities
   // after the Universe is fully formed, but before general heap allocation is allowed.
   // This is the correct place to place such initialization methods.
-  virtual void post_initialize() = 0;
+  virtual void post_initialize();
 
   // Stop any onging concurrent work and prepare for exit.
   virtual void stop() {}
@@ -240,22 +239,11 @@
   }
 
   // Returns "TRUE" iff "p" points into the committed areas of the heap.
-  // Since this method can be expensive in general, we restrict its
-  // use to assertion checking only.
+  // This method can be expensive so avoid using it in performance critical
+  // code.
   virtual bool is_in(const void* p) const = 0;
 
-  bool is_in_or_null(const void* p) const {
-    return p == NULL || is_in(p);
-  }
-
-  bool is_in_place(Metadata** p) {
-    return !Universe::heap()->is_in(p);
-  }
-  bool is_in_place(oop* p) { return Universe::heap()->is_in(p); }
-  bool is_in_place(narrowOop* p) {
-    oop o = oopDesc::load_decode_heap_oop_not_null(p);
-    return Universe::heap()->is_in((const void*)o);
-  }
+  DEBUG_ONLY(bool is_in_or_null(const void* p) const { return p == NULL || is_in(p); })
 
   // Let's define some terms: a "closed" subset of a heap is one that
   //
@@ -451,9 +439,6 @@
   // remembered set.
   virtual void flush_deferred_store_barrier(JavaThread* thread);
 
-  // Does this heap support heap inspection (+PrintClassHistogram?)
-  virtual bool supports_heap_inspection() const = 0;
-
   // Perform a collection of the heap; intended for use in implementing
   // "System.gc".  This probably implies as full a collection as the
   // "CollectedHeap" supports.
@@ -470,6 +455,7 @@
 
   // Returns the barrier set for this heap
   BarrierSet* barrier_set() { return _barrier_set; }
+  void set_barrier_set(BarrierSet* barrier_set);
 
   // Returns "true" iff there is a stop-world GC in progress.  (I assume
   // that it should answer "false" for the concurrent part of a concurrent
@@ -497,12 +483,6 @@
   // Return the CollectorPolicy for the heap
   virtual CollectorPolicy* collector_policy() const = 0;
 
-  void oop_iterate_no_header(OopClosure* cl);
-
-  // Iterate over all the ref-containing fields of all objects, calling
-  // "cl.do_oop" on each.
-  virtual void oop_iterate(ExtendedOopClosure* cl) = 0;
-
   // Iterate over all objects, calling "cl.do_object" on each.
   virtual void object_iterate(ObjectClosure* cl) = 0;
 
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -236,12 +236,6 @@
   return (oop)obj;
 }
 
-inline void CollectedHeap::oop_iterate_no_header(OopClosure* cl) {
-  NoHeaderExtendedOopClosure no_header_cl(cl);
-  oop_iterate(&no_header_cl);
-}
-
-
 inline HeapWord* CollectedHeap::align_allocation_or_fail(HeapWord* addr,
                                                          HeapWord* end,
                                                          unsigned short alignment_in_bytes) {
--- a/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -576,10 +576,10 @@
 /* 0xD8 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
 /* 0xDC */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
 
-/* 0xE0 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
-/* 0xE4 */ &&opc_default,     &&opc_fast_aldc,      &&opc_fast_aldc_w,  &&opc_return_register_finalizer,
-/* 0xE8 */ &&opc_invokehandle,&&opc_default,        &&opc_default,      &&opc_default,
-/* 0xEC */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+/* 0xE0 */ &&opc_default,     &&opc_default,        &&opc_default,         &&opc_default,
+/* 0xE4 */ &&opc_default,     &&opc_fast_aldc,      &&opc_fast_aldc_w,     &&opc_return_register_finalizer,
+/* 0xE8 */ &&opc_invokehandle,&&opc_default,        &&opc_default,         &&opc_default,
+/* 0xEC */ &&opc_default,     &&opc_default,        &&opc_default,         &&opc_default,
 
 /* 0xF0 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
 /* 0xF4 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
@@ -1942,7 +1942,7 @@
 
           cache = cp->entry_at(index);
           if (!cache->is_resolved((Bytecodes::Code)opcode)) {
-            CALL_VM(InterpreterRuntime::resolve_get_put(THREAD, (Bytecodes::Code)opcode),
+            CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                     handle_exception);
             cache = cp->entry_at(index);
           }
@@ -2040,7 +2040,7 @@
           u2 index = Bytes::get_native_u2(pc+1);
           ConstantPoolCacheEntry* cache = cp->entry_at(index);
           if (!cache->is_resolved((Bytecodes::Code)opcode)) {
-            CALL_VM(InterpreterRuntime::resolve_get_put(THREAD, (Bytecodes::Code)opcode),
+            CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                     handle_exception);
             cache = cp->entry_at(index);
           }
@@ -2416,7 +2416,7 @@
         // This kind of CP cache entry does not need to match the flags byte, because
         // there is a 1-1 relation between bytecode type and CP entry type.
         if (! cache->is_resolved((Bytecodes::Code) opcode)) {
-          CALL_VM(InterpreterRuntime::resolve_invokedynamic(THREAD),
+          CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                   handle_exception);
           cache = cp->constant_pool()->invokedynamic_cp_cache_entry_at(index);
         }
@@ -2447,7 +2447,7 @@
         ConstantPoolCacheEntry* cache = cp->entry_at(index);
 
         if (! cache->is_resolved((Bytecodes::Code) opcode)) {
-          CALL_VM(InterpreterRuntime::resolve_invokehandle(THREAD),
+          CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                   handle_exception);
           cache = cp->entry_at(index);
         }
@@ -2480,7 +2480,7 @@
 
         ConstantPoolCacheEntry* cache = cp->entry_at(index);
         if (!cache->is_resolved((Bytecodes::Code)opcode)) {
-          CALL_VM(InterpreterRuntime::resolve_invoke(THREAD, (Bytecodes::Code)opcode),
+          CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                   handle_exception);
           cache = cp->entry_at(index);
         }
@@ -2571,7 +2571,7 @@
         // out so c++ compiler has a chance for constant prop to fold everything possible away.
 
         if (!cache->is_resolved((Bytecodes::Code)opcode)) {
-          CALL_VM(InterpreterRuntime::resolve_invoke(THREAD, (Bytecodes::Code)opcode),
+          CALL_VM(InterpreterRuntime::resolve_from_cache(THREAD, (Bytecodes::Code)opcode),
                   handle_exception);
           cache = cp->entry_at(index);
         }
--- a/hotspot/src/share/vm/interpreter/bytecodes.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/bytecodes.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -525,6 +525,12 @@
   def(_fast_aldc           , "fast_aldc"           , "bj"   , NULL    , T_OBJECT,   1, true,  _ldc   );
   def(_fast_aldc_w         , "fast_aldc_w"         , "bJJ"  , NULL    , T_OBJECT,   1, true,  _ldc_w );
 
+  def(_nofast_getfield     , "nofast_getfield"     , "bJJ"  , NULL    , T_ILLEGAL,  0, true,  _getfield       );
+  def(_nofast_putfield     , "nofast_putfield"     , "bJJ"  , NULL    , T_ILLEGAL, -2, true , _putfield       );
+
+  def(_nofast_aload_0      , "nofast_aload_0"      , "b"    , NULL    , T_ILLEGAL,  1, true , _aload_0        );
+  def(_nofast_iload        , "nofast_iload"        , "bi"   , NULL    , T_ILLEGAL,  1, false, _iload          );
+
   def(_shouldnotreachhere  , "_shouldnotreachhere" , "b"    , NULL    , T_VOID   ,  0, false);
 
   // compare can_trap information for each bytecode with the
--- a/hotspot/src/share/vm/interpreter/bytecodes.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/bytecodes.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -285,7 +285,20 @@
     // special handling of signature-polymorphic methods:
     _invokehandle         ,
 
-    _shouldnotreachhere,      // For debugging
+    // These bytecodes are rewritten at CDS dump time, so that we can prevent them from being
+    // rewritten at run time. This way, the ConstMethods can be placed in the CDS ReadOnly
+    // section, and RewriteByteCodes/RewriteFrequentPairs can rewrite non-CDS bytecodes
+    // at run time.
+    //
+    // Rewritten at CDS dump time to | Original bytecode
+    // _invoke_virtual rewritten on sparc, will be disabled if UseSharedSpaces turned on.
+    // ------------------------------+------------------
+    _nofast_getfield      ,          //  <- _getfield
+    _nofast_putfield      ,          //  <- _putfield
+    _nofast_aload_0       ,          //  <- _aload_0
+    _nofast_iload         ,          //  <- _iload
+
+    _shouldnotreachhere   ,          // For debugging
 
 
     number_of_codes
@@ -401,6 +414,7 @@
   static bool        is_astore      (Code code)    { return (code == _astore || code == _astore_0 || code == _astore_1
                                                                              || code == _astore_2 || code == _astore_3); }
 
+  static bool        is_store_into_local(Code code){ return (_istore <= code && code <= _astore_3); }
   static bool        is_const       (Code code)    { return (_aconst_null <= code && code <= _ldc2_w); }
   static bool        is_zero_const  (Code code)    { return (code == _aconst_null || code == _iconst_0
                                                            || code == _fconst_0 || code == _dconst_0); }
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -537,11 +537,13 @@
 // Fields
 //
 
-IRT_ENTRY(void, InterpreterRuntime::resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode))
+void InterpreterRuntime::resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode) {
+  Thread* THREAD = thread;
   // resolve field
   fieldDescriptor info;
   constantPoolHandle pool(thread, method(thread)->constants());
-  bool is_put    = (bytecode == Bytecodes::_putfield  || bytecode == Bytecodes::_putstatic);
+  bool is_put    = (bytecode == Bytecodes::_putfield  || bytecode == Bytecodes::_nofast_putfield ||
+                    bytecode == Bytecodes::_putstatic);
   bool is_static = (bytecode == Bytecodes::_getstatic || bytecode == Bytecodes::_putstatic);
 
   {
@@ -551,7 +553,8 @@
   } // end JvmtiHideSingleStepping
 
   // check if link resolution caused cpCache to be updated
-  if (already_resolved(thread)) return;
+  ConstantPoolCacheEntry* cp_cache_entry = cache_entry(thread);
+  if (cp_cache_entry->is_resolved(bytecode)) return;
 
   // compute auxiliary field attributes
   TosState state  = as_TosState(info.field_type());
@@ -579,7 +582,7 @@
     }
   }
 
-  cache_entry(thread)->set_field(
+  cp_cache_entry->set_field(
     get_code,
     put_code,
     info.field_holder(),
@@ -590,7 +593,7 @@
     info.access_flags().is_volatile(),
     pool->pool_holder()
   );
-IRT_END
+}
 
 
 //------------------------------------------------------------------------------------------------------------------------
@@ -685,7 +688,8 @@
   JvmtiExport::post_raw_breakpoint(thread, method, bcp);
 IRT_END
 
-IRT_ENTRY(void, InterpreterRuntime::resolve_invoke(JavaThread* thread, Bytecodes::Code bytecode)) {
+void InterpreterRuntime::resolve_invoke(JavaThread* thread, Bytecodes::Code bytecode) {
+  Thread* THREAD = thread;
   // extract receiver from the outgoing argument list if necessary
   Handle receiver(thread, NULL);
   if (bytecode == Bytecodes::_invokevirtual || bytecode == Bytecodes::_invokeinterface) {
@@ -709,7 +713,8 @@
   {
     JvmtiHideSingleStepping jhss(thread);
     LinkResolver::resolve_invoke(info, receiver, pool,
-                                 get_index_u2_cpcache(thread, bytecode), bytecode, CHECK);
+                                 get_index_u2_cpcache(thread, bytecode), bytecode,
+                                 CHECK);
     if (JvmtiExport::can_hotswap_or_post_breakpoint()) {
       int retry_count = 0;
       while (info.resolved_method()->is_old()) {
@@ -720,13 +725,15 @@
                   "Could not resolve to latest version of redefined method");
         // method is redefined in the middle of resolve so re-try.
         LinkResolver::resolve_invoke(info, receiver, pool,
-                                     get_index_u2_cpcache(thread, bytecode), bytecode, CHECK);
+                                     get_index_u2_cpcache(thread, bytecode), bytecode,
+                                     CHECK);
       }
     }
   } // end JvmtiHideSingleStepping
 
   // check if link resolution caused cpCache to be updated
-  if (already_resolved(thread)) return;
+  ConstantPoolCacheEntry* cp_cache_entry = cache_entry(thread);
+  if (cp_cache_entry->is_resolved(bytecode)) return;
 
   if (bytecode == Bytecodes::_invokeinterface) {
     if (TraceItables && Verbose) {
@@ -761,18 +768,18 @@
 #endif
   switch (info.call_kind()) {
   case CallInfo::direct_call:
-    cache_entry(thread)->set_direct_call(
+    cp_cache_entry->set_direct_call(
       bytecode,
       info.resolved_method());
     break;
   case CallInfo::vtable_call:
-    cache_entry(thread)->set_vtable_call(
+    cp_cache_entry->set_vtable_call(
       bytecode,
       info.resolved_method(),
       info.vtable_index());
     break;
   case CallInfo::itable_call:
-    cache_entry(thread)->set_itable_call(
+    cp_cache_entry->set_itable_call(
       bytecode,
       info.resolved_method(),
       info.itable_index());
@@ -780,30 +787,30 @@
   default:  ShouldNotReachHere();
   }
 }
-IRT_END
 
 
 // First time execution:  Resolve symbols, create a permanent MethodType object.
-IRT_ENTRY(void, InterpreterRuntime::resolve_invokehandle(JavaThread* thread)) {
+void InterpreterRuntime::resolve_invokehandle(JavaThread* thread) {
+  Thread* THREAD = thread;
   const Bytecodes::Code bytecode = Bytecodes::_invokehandle;
 
   // resolve method
   CallInfo info;
   constantPoolHandle pool(thread, method(thread)->constants());
-
   {
     JvmtiHideSingleStepping jhss(thread);
     LinkResolver::resolve_invoke(info, Handle(), pool,
-                                 get_index_u2_cpcache(thread, bytecode), bytecode, CHECK);
+                                 get_index_u2_cpcache(thread, bytecode), bytecode,
+                                 CHECK);
   } // end JvmtiHideSingleStepping
 
-  cache_entry(thread)->set_method_handle(pool, info);
+  ConstantPoolCacheEntry* cp_cache_entry = cache_entry(thread);
+  cp_cache_entry->set_method_handle(pool, info);
 }
-IRT_END
-
 
 // First time execution:  Resolve symbols, create a permanent CallSite object.
-IRT_ENTRY(void, InterpreterRuntime::resolve_invokedynamic(JavaThread* thread)) {
+void InterpreterRuntime::resolve_invokedynamic(JavaThread* thread) {
+  Thread* THREAD = thread;
   const Bytecodes::Code bytecode = Bytecodes::_invokedynamic;
 
   //TO DO: consider passing BCI to Java.
@@ -822,9 +829,37 @@
   ConstantPoolCacheEntry* cp_cache_entry = pool->invokedynamic_cp_cache_entry_at(index);
   cp_cache_entry->set_dynamic_call(pool, info);
 }
+
+// This function is the interface to the assembly code. It returns the resolved
+// cpCache entry.  This doesn't safepoint, but the helper routines safepoint.
+// This function will check for redefinition!
+IRT_ENTRY(void, InterpreterRuntime::resolve_from_cache(JavaThread* thread, Bytecodes::Code bytecode)) {
+  switch (bytecode) {
+  case Bytecodes::_getstatic:
+  case Bytecodes::_putstatic:
+  case Bytecodes::_getfield:
+  case Bytecodes::_putfield:
+    resolve_get_put(thread, bytecode);
+    break;
+  case Bytecodes::_invokevirtual:
+  case Bytecodes::_invokespecial:
+  case Bytecodes::_invokestatic:
+  case Bytecodes::_invokeinterface:
+    resolve_invoke(thread, bytecode);
+    break;
+  case Bytecodes::_invokehandle:
+    resolve_invokehandle(thread);
+    break;
+  case Bytecodes::_invokedynamic:
+    resolve_invokedynamic(thread);
+    break;
+  default:
+    fatal(err_msg("unexpected bytecode: %s", Bytecodes::name(bytecode)));
+    break;
+  }
+}
 IRT_END
 
-
 //------------------------------------------------------------------------------------------------------------------------
 // Miscellaneous
 
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -52,7 +52,6 @@
     // pass method to avoid calling unsafe bcp_to_method (partial fix 4926272)
     return Bytecodes::code_at(method(thread), bcp(thread));
   }
-  static bool      already_resolved(JavaThread *thread) { return cache_entry(thread)->is_resolved(code(thread)); }
   static Bytecode  bytecode(JavaThread *thread)      { return Bytecode(method(thread), bcp(thread)); }
   static int       get_index_u1(JavaThread *thread, Bytecodes::Code bc)
                                                         { return bytecode(thread).get_index_u1(bc); }
@@ -117,9 +116,17 @@
   static void    note_no_trap(JavaThread* thread, Method *method, int trap_bci) {}
 #endif // CC_INTERP
 
+  static void resolve_from_cache(JavaThread* thread, Bytecodes::Code bytecode);
+ private:
   // Statics & fields
-  static void    resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode);
+  static void resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode);
 
+  // Calls
+  static void resolve_invoke(JavaThread* thread, Bytecodes::Code bytecode);
+  static void resolve_invokehandle (JavaThread* thread);
+  static void resolve_invokedynamic(JavaThread* thread);
+
+ public:
   // Synchronization
   static void    monitorenter(JavaThread* thread, BasicObjectLock* elem);
   static void    monitorexit (JavaThread* thread, BasicObjectLock* elem);
@@ -127,11 +134,6 @@
   static void    throw_illegal_monitor_state_exception(JavaThread* thread);
   static void    new_illegal_monitor_state_exception(JavaThread* thread);
 
-  // Calls
-  static void    resolve_invoke       (JavaThread* thread, Bytecodes::Code bytecode);
-  static void    resolve_invokehandle (JavaThread* thread);
-  static void    resolve_invokedynamic(JavaThread* thread);
-
   // Breakpoints
   static void _breakpoint(JavaThread* thread, Method* method, address bcp);
   static Bytecodes::Code get_original_bytecode_at(JavaThread* thread, Method* method, address bcp);
--- a/hotspot/src/share/vm/interpreter/linkResolver.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/linkResolver.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -777,11 +777,11 @@
                                  TRAPS) {
   assert(byte == Bytecodes::_getstatic || byte == Bytecodes::_putstatic ||
          byte == Bytecodes::_getfield  || byte == Bytecodes::_putfield  ||
+         byte == Bytecodes::_nofast_getfield  || byte == Bytecodes::_nofast_putfield  ||
          (byte == Bytecodes::_nop && !check_access), "bad field access bytecode");
 
   bool is_static = (byte == Bytecodes::_getstatic || byte == Bytecodes::_putstatic);
-  bool is_put    = (byte == Bytecodes::_putfield  || byte == Bytecodes::_putstatic);
-
+  bool is_put    = (byte == Bytecodes::_putfield  || byte == Bytecodes::_putstatic || byte == Bytecodes::_nofast_putfield);
   // Check if there's a resolved klass containing the field
   if (resolved_klass.is_null()) {
     ResourceMark rm(THREAD);
@@ -1406,10 +1406,11 @@
                                                  KlassHandle resolved_klass,
                                                  Symbol* name,
                                                  Symbol* signature,
-                                                 KlassHandle current_klass) {
+                                                 KlassHandle current_klass,
+                                                 bool check_access) {
   EXCEPTION_MARK;
   CallInfo info;
-  resolve_virtual_call(info, Handle(), receiver_klass, resolved_klass, name, signature, current_klass, true, false, THREAD);
+  resolve_virtual_call(info, Handle(), receiver_klass, resolved_klass, name, signature, current_klass, check_access, false, THREAD);
   if (HAS_PENDING_EXCEPTION) {
     CLEAR_PENDING_EXCEPTION;
     return methodHandle();
@@ -1422,10 +1423,11 @@
                                                  KlassHandle resolved_klass,
                                                  Symbol* name,
                                                  Symbol* signature,
-                                                 KlassHandle current_klass) {
+                                                 KlassHandle current_klass,
+                                                 bool check_access) {
   EXCEPTION_MARK;
   CallInfo info;
-  resolve_interface_call(info, Handle(), receiver_klass, resolved_klass, name, signature, current_klass, true, false, THREAD);
+  resolve_interface_call(info, Handle(), receiver_klass, resolved_klass, name, signature, current_klass, check_access, false, THREAD);
   if (HAS_PENDING_EXCEPTION) {
     CLEAR_PENDING_EXCEPTION;
     return methodHandle();
@@ -1453,10 +1455,11 @@
                                                   KlassHandle resolved_klass,
                                                   Symbol* name,
                                                   Symbol* signature,
-                                                  KlassHandle current_klass) {
+                                                  KlassHandle current_klass,
+                                                  bool check_access) {
   EXCEPTION_MARK;
   CallInfo info;
-  resolve_static_call(info, resolved_klass, name, signature, current_klass, true, false, THREAD);
+  resolve_static_call(info, resolved_klass, name, signature, current_klass, check_access, false, THREAD);
   if (HAS_PENDING_EXCEPTION) {
     CLEAR_PENDING_EXCEPTION;
     return methodHandle();
@@ -1464,11 +1467,15 @@
   return info.selected_method();
 }
 
-methodHandle LinkResolver::resolve_special_call_or_null(KlassHandle resolved_klass, Symbol* name, Symbol* signature,
-                                                        KlassHandle current_klass) {
+methodHandle LinkResolver::resolve_special_call_or_null(
+                                                  KlassHandle resolved_klass,
+                                                  Symbol* name,
+                                                  Symbol* signature,
+                                                  KlassHandle current_klass,
+                                                  bool check_access) {
   EXCEPTION_MARK;
   CallInfo info;
-  resolve_special_call(info, resolved_klass, name, signature, current_klass, true, THREAD);
+  resolve_special_call(info, resolved_klass, name, signature, current_klass, check_access, THREAD);
   if (HAS_PENDING_EXCEPTION) {
     CLEAR_PENDING_EXCEPTION;
     return methodHandle();
--- a/hotspot/src/share/vm/interpreter/linkResolver.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/linkResolver.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -181,10 +181,10 @@
 
   // same as above for compile-time resolution; but returns null handle instead of throwing an exception on error
   // also, does not initialize klass (i.e., no side effects)
-  static methodHandle resolve_virtual_call_or_null  (KlassHandle receiver_klass, KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass);
-  static methodHandle resolve_interface_call_or_null(KlassHandle receiver_klass, KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass);
-  static methodHandle resolve_static_call_or_null   (KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass);
-  static methodHandle resolve_special_call_or_null  (KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass);
+  static methodHandle resolve_virtual_call_or_null  (KlassHandle receiver_klass, KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass, bool check_access = true);
+  static methodHandle resolve_interface_call_or_null(KlassHandle receiver_klass, KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass, bool check_access = true);
+  static methodHandle resolve_static_call_or_null   (KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass, bool check_access = true);
+  static methodHandle resolve_special_call_or_null  (KlassHandle resolved_klass, Symbol* method_name, Symbol* method_signature, KlassHandle current_klass, bool check_access = true);
   static int vtable_index_of_interface_method(KlassHandle klass, methodHandle resolved_method);
 
   // same as above for compile-time resolution; returns vtable_index if current_klass if linked
--- a/hotspot/src/share/vm/interpreter/rewriter.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/rewriter.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,6 +26,7 @@
 #include "interpreter/bytecodes.hpp"
 #include "interpreter/interpreter.hpp"
 #include "interpreter/rewriter.hpp"
+#include "memory/metaspaceShared.hpp"
 #include "memory/gcLocker.hpp"
 #include "memory/resourceArea.hpp"
 #include "oops/generateOopMap.hpp"
@@ -167,12 +168,12 @@
   if (!reverse) {
     int cp_index = Bytes::get_Java_u2(p);
     if (_pool->tag_at(cp_index).is_interface_method()) {
-    int cache_index = add_invokespecial_cp_cache_entry(cp_index);
-    if (cache_index != (int)(jushort) cache_index) {
-      *invokespecial_error = true;
-    }
-    Bytes::put_native_u2(p, cache_index);
-  } else {
+      int cache_index = add_invokespecial_cp_cache_entry(cp_index);
+      if (cache_index != (int)(jushort) cache_index) {
+        *invokespecial_error = true;
+      }
+      Bytes::put_native_u2(p, cache_index);
+    } else {
       rewrite_member_reference(bcp, offset, reverse);
     }
   } else {
@@ -500,12 +501,14 @@
 }
 
 void Rewriter::rewrite(instanceKlassHandle klass, TRAPS) {
+  if (!DumpSharedSpaces) {
+    assert(!MetaspaceShared::is_in_shared_space(klass()), "archive methods must not be rewritten at run time");
+  }
   ResourceMark rm(THREAD);
   Rewriter     rw(klass, klass->constants(), klass->methods(), CHECK);
   // (That's all, folks.)
 }
 
-
 Rewriter::Rewriter(instanceKlassHandle klass, constantPoolHandle cpool, Array<Method*>* methods, TRAPS)
   : _klass(klass),
     _pool(cpool),
--- a/hotspot/src/share/vm/interpreter/templateTable.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/templateTable.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -517,6 +517,12 @@
 
   def(Bytecodes::_invokehandle        , ubcp|disp|clvm|____, vtos, vtos, invokehandle        , f1_byte      );
 
+  def(Bytecodes::_nofast_getfield     , ubcp|____|clvm|____, vtos, vtos, nofast_getfield     , f1_byte      );
+  def(Bytecodes::_nofast_putfield     , ubcp|____|clvm|____, vtos, vtos, nofast_putfield     , f2_byte      );
+
+  def(Bytecodes::_nofast_aload_0      , ____|____|clvm|____, vtos, atos, nofast_aload_0      ,  _           );
+  def(Bytecodes::_nofast_iload        , ubcp|____|clvm|____, vtos, itos, nofast_iload        ,  _           );
+
   def(Bytecodes::_shouldnotreachhere   , ____|____|____|____, vtos, vtos, shouldnotreachhere ,  _           );
   // platform specific bytecodes
   pd_initialize();
--- a/hotspot/src/share/vm/interpreter/templateTable.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/interpreter/templateTable.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -82,6 +82,7 @@
   enum Operation { add, sub, mul, div, rem, _and, _or, _xor, shl, shr, ushr };
   enum Condition { equal, not_equal, less, less_equal, greater, greater_equal };
   enum CacheByte { f1_byte = 1, f2_byte = 2 };  // byte_no codes
+  enum RewriteControl { may_rewrite, may_not_rewrite };  // control for fast code under CDS
 
  private:
   static bool            _is_initialized;        // true if TemplateTable has been initialized
@@ -165,6 +166,10 @@
   static void dload(int n);
   static void aload(int n);
   static void aload_0();
+  static void nofast_aload_0();
+  static void nofast_iload();
+  static void iload_internal(RewriteControl rc = may_rewrite);
+  static void aload_0_internal(RewriteControl rc = may_rewrite);
 
   static void istore();
   static void lstore();
@@ -279,10 +284,13 @@
   static void invokehandle(int byte_no);
   static void fast_invokevfinal(int byte_no);
 
-  static void getfield_or_static(int byte_no, bool is_static);
-  static void putfield_or_static(int byte_no, bool is_static);
+  static void getfield_or_static(int byte_no, bool is_static, RewriteControl rc = may_rewrite);
+  static void putfield_or_static(int byte_no, bool is_static, RewriteControl rc = may_rewrite);
+
   static void getfield(int byte_no);
   static void putfield(int byte_no);
+  static void nofast_getfield(int byte_no);
+  static void nofast_putfield(int byte_no);
   static void getstatic(int byte_no);
   static void putstatic(int byte_no);
   static void pop_and_check_object(Register obj);
@@ -343,10 +351,8 @@
   // Platform specifics
 #if defined TEMPLATETABLE_MD_HPP
 # include TEMPLATETABLE_MD_HPP
-#elif defined TARGET_ARCH_MODEL_x86_32
-# include "templateTable_x86_32.hpp"
-#elif defined TARGET_ARCH_MODEL_x86_64
-# include "templateTable_x86_64.hpp"
+#elif defined (TARGET_ARCH_MODEL_x86_32) || defined (TARGET_ARCH_MODEL_x86_64)
+# include "templateTable_x86.hpp"
 #elif defined TARGET_ARCH_MODEL_sparc
 # include "templateTable_sparc.hpp"
 #elif defined TARGET_ARCH_MODEL_zero
--- a/hotspot/src/share/vm/libadt/set.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/libadt/set.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -57,7 +57,7 @@
 // The caller must deallocate the string.
 char *Set::setstr() const
 {
-  if( !this ) return os::strdup("{no set}");
+  if( this == NULL ) return os::strdup("{no set}");
   Set &set = clone();           // Virtually copy the basic set.
   set.Sort();                   // Sort elements for in-order retrieval
 
--- a/hotspot/src/share/vm/memory/allocation.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/allocation.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -62,11 +62,18 @@
   }
   return p;
 }
+
+#ifdef __GNUC__
+__attribute__((always_inline))
+#endif
 inline char* AllocateHeap(size_t size, MEMFLAGS flags,
     AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM) {
   return AllocateHeap(size, flags, CURRENT_PC, alloc_failmode);
 }
 
+#ifdef __GNUC__
+__attribute__((always_inline))
+#endif
 inline char* ReallocateHeap(char *old, size_t size, MEMFLAGS flag,
     AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM) {
   char* p = (char*) os::realloc(old, size, flag, CURRENT_PC);
--- a/hotspot/src/share/vm/memory/blockOffsetTable.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/blockOffsetTable.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 #define SHARE_VM_MEMORY_BLOCKOFFSETTABLE_HPP
 
 #include "memory/memRegion.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/globalDefinitions.hpp"
 
 // The CollectedHeap type requires subtypes to implement a method
--- a/hotspot/src/share/vm/memory/cardGeneration.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/cardGeneration.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -60,7 +60,7 @@
   // which would cause problems when we commit/uncommit memory, and when we
   // clear and dirty cards.
   guarantee(_rs->is_aligned(reserved_mr.start()), "generation must be card aligned");
-  if (reserved_mr.end() != Universe::heap()->reserved_region().end()) {
+  if (reserved_mr.end() != GenCollectedHeap::heap()->reserved_region().end()) {
     // Don't check at the very end of the heap as we'll assert that we're probing off
     // the end if we try.
     guarantee(_rs->is_aligned(reserved_mr.end()), "generation must be card aligned");
@@ -78,7 +78,7 @@
        heap_word_size(_virtual_space.committed_size());
     MemRegion mr(space()->bottom(), new_word_size);
     // Expand card table
-    Universe::heap()->barrier_set()->resize_covered_region(mr);
+    GenCollectedHeap::heap()->barrier_set()->resize_covered_region(mr);
     // Expand shared block offset array
     _bts->resize(new_word_size);
 
@@ -170,7 +170,7 @@
   _bts->resize(new_word_size);
   MemRegion mr(space()->bottom(), new_word_size);
   // Shrink the card table
-  Universe::heap()->barrier_set()->resize_covered_region(mr);
+  GenCollectedHeap::heap()->barrier_set()->resize_covered_region(mr);
 
   if (Verbose && PrintGC) {
     size_t new_mem_size = _virtual_space.committed_size();
--- a/hotspot/src/share/vm/memory/cardTableModRefBS.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/cardTableModRefBS.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,16 +23,17 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/allocation.inline.hpp"
 #include "memory/cardTableModRefBS.inline.hpp"
 #include "memory/cardTableRS.hpp"
-#include "memory/sharedHeap.hpp"
+#include "memory/genCollectedHeap.hpp"
 #include "memory/space.hpp"
 #include "memory/space.inline.hpp"
 #include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "runtime/java.hpp"
 #include "runtime/mutexLocker.hpp"
-#include "runtime/virtualspace.hpp"
 #include "services/memTracker.hpp"
 #include "utilities/macros.hpp"
 #ifdef COMPILER1
@@ -450,21 +451,20 @@
     // This is an example of where n_par_threads() is used instead
     // of workers()->active_workers().  n_par_threads can be set to 0 to
     // turn off parallelism.  For example when this code is called as
-    // part of verification and SharedHeap::process_roots() is being
-    // used, then n_par_threads() may have been set to 0.  active_workers
-    // is not overloaded with the meaning that it is a switch to disable
-    // parallelism and so keeps the meaning of the number of
-    // active gc workers.  If parallelism has not been shut off by
-    // setting n_par_threads to 0, then n_par_threads should be
-    // equal to active_workers.  When a different mechanism for shutting
-    // off parallelism is used, then active_workers can be used in
+    // part of verification during root processing then n_par_threads()
+    // may have been set to 0. active_workers is not overloaded with
+    // the meaning that it is a switch to disable parallelism and so keeps
+    // the meaning of the number of active gc workers. If parallelism has
+    // not been shut off by setting n_par_threads to 0, then n_par_threads
+    // should be equal to active_workers.  When a different mechanism for
+    // shutting off parallelism is used, then active_workers can be used in
     // place of n_par_threads.
-    int n_threads =  SharedHeap::heap()->n_par_threads();
+    int n_threads =  GenCollectedHeap::heap()->n_par_threads();
     bool is_par = n_threads > 0;
     if (is_par) {
 #if INCLUDE_ALL_GCS
-      assert(SharedHeap::heap()->n_par_threads() ==
-             SharedHeap::heap()->workers()->active_workers(), "Mismatch");
+      assert(GenCollectedHeap::heap()->n_par_threads() ==
+             GenCollectedHeap::heap()->workers()->active_workers(), "Mismatch");
       non_clean_card_iterate_parallel_work(sp, mr, cl, ct, n_threads);
 #else  // INCLUDE_ALL_GCS
       fatal("Parallel gc not supported here.");
--- a/hotspot/src/share/vm/memory/cardTableRS.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/cardTableRS.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,16 +38,18 @@
   GenRemSet(),
   _cur_youngergen_card_val(youngergenP1_card)
 {
-  guarantee(Universe::heap()->kind() == CollectedHeap::GenCollectedHeap, "sanity");
   _ct_bs = new CardTableModRefBSForCTRS(whole_heap);
   _ct_bs->initialize();
   set_bs(_ct_bs);
-  _last_cur_val_in_gen = NEW_C_HEAP_ARRAY3(jbyte, GenCollectedHeap::max_gens + 1,
+  // max_gens is really GenCollectedHeap::heap()->gen_policy()->number_of_generations()
+  // (which is always 2, young & old), but GenCollectedHeap has not been initialized yet.
+  uint max_gens = 2;
+  _last_cur_val_in_gen = NEW_C_HEAP_ARRAY3(jbyte, max_gens + 1,
                          mtGC, CURRENT_PC, AllocFailStrategy::RETURN_NULL);
   if (_last_cur_val_in_gen == NULL) {
     vm_exit_during_initialization("Could not create last_cur_val_in_gen array.");
   }
-  for (int i = 0; i < GenCollectedHeap::max_gens + 1; i++) {
+  for (uint i = 0; i < max_gens + 1; i++) {
     _last_cur_val_in_gen[i] = clean_card_val();
   }
   _ct_bs->set_CTRS(this);
@@ -167,16 +169,20 @@
     // Cannot yet substitute active_workers for n_par_threads
     // in the case where parallelism is being turned off by
     // setting n_par_threads to 0.
-    _is_par = (SharedHeap::heap()->n_par_threads() > 0);
+    _is_par = (GenCollectedHeap::heap()->n_par_threads() > 0);
     assert(!_is_par ||
-           (SharedHeap::heap()->n_par_threads() ==
-            SharedHeap::heap()->workers()->active_workers()), "Mismatch");
+           (GenCollectedHeap::heap()->n_par_threads() ==
+            GenCollectedHeap::heap()->workers()->active_workers()), "Mismatch");
 }
 
 bool ClearNoncleanCardWrapper::is_word_aligned(jbyte* entry) {
   return (((intptr_t)entry) & (BytesPerWord-1)) == 0;
 }
 
+// The regions are visited in *decreasing* address order.
+// This order aids with imprecise card marking, where a dirty
+// card may cause scanning, and summarization marking, of objects
+// that extend onto subsequent cards.
 void ClearNoncleanCardWrapper::do_MemRegion(MemRegion mr) {
   assert(mr.word_size() > 0, "Error");
   assert(_ct->is_aligned(mr.start()), "mr.start() should be card aligned");
@@ -591,10 +597,6 @@
   // At present, we only know how to verify the card table RS for
   // generational heaps.
   VerifyCTGenClosure blk(this);
-  CollectedHeap* ch = Universe::heap();
-
-  if (ch->kind() == CollectedHeap::GenCollectedHeap) {
-    GenCollectedHeap::heap()->generation_iterate(&blk, false);
-    _ct_bs->verify();
-    }
-  }
+  GenCollectedHeap::heap()->generation_iterate(&blk, false);
+  _ct_bs->verify();
+}
--- a/hotspot/src/share/vm/memory/collectorPolicy.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/collectorPolicy.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -669,7 +669,7 @@
       }
 
       // Read the gc count while the heap lock is held.
-      gc_count_before = Universe::heap()->total_collections();
+      gc_count_before = gch->total_collections();
     }
 
     VM_GenCollectForAllocation op(size, is_tlab, gc_count_before);
--- a/hotspot/src/share/vm/memory/defNewGeneration.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/defNewGeneration.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -48,6 +48,9 @@
 #include "utilities/copy.hpp"
 #include "utilities/globalDefinitions.hpp"
 #include "utilities/stack.inline.hpp"
+#if INCLUDE_ALL_GCS
+#include "gc_implementation/parNew/parOopClosures.hpp"
+#endif
 
 //
 // DefNewGeneration functions.
@@ -190,7 +193,9 @@
 {
   MemRegion cmr((HeapWord*)_virtual_space.low(),
                 (HeapWord*)_virtual_space.high());
-  Universe::heap()->barrier_set()->resize_covered_region(cmr);
+  GenCollectedHeap* gch = GenCollectedHeap::heap();
+
+  gch->barrier_set()->resize_covered_region(cmr);
 
   _eden_space = new ContiguousSpace();
   _from_space = new ContiguousSpace();
@@ -202,13 +207,13 @@
   // Compute the maximum eden and survivor space sizes. These sizes
   // are computed assuming the entire reserved space is committed.
   // These values are exported as performance counters.
-  uintx alignment = GenCollectedHeap::heap()->collector_policy()->space_alignment();
+  uintx alignment = gch->collector_policy()->space_alignment();
   uintx size = _virtual_space.reserved_size();
   _max_survivor_size = compute_survivor_size(size, alignment);
   _max_eden_size = size - (2*_max_survivor_size);
 
   // allocate the performance counters
-  GenCollectorPolicy* gcp = (GenCollectorPolicy*) GenCollectedHeap::heap()->collector_policy();
+  GenCollectorPolicy* gcp = (GenCollectorPolicy*)gch->collector_policy();
 
   // Generation counters -- generation 0, 3 subspaces
   _gen_counters = new GenerationCounters("new", 0, 3,
@@ -378,8 +383,7 @@
 
   int next_level = level() + 1;
   GenCollectedHeap* gch = GenCollectedHeap::heap();
-  assert(next_level < gch->n_gens(),
-         "DefNewGeneration cannot be an oldest gen");
+  assert(next_level == 1, "DefNewGeneration must be a young gen");
 
   Generation* old_gen = gch->old_gen();
   size_t old_size = old_gen->capacity();
@@ -431,7 +435,7 @@
                              SpaceDecorator::DontMangle);
     MemRegion cmr((HeapWord*)_virtual_space.low(),
                   (HeapWord*)_virtual_space.high());
-    Universe::heap()->barrier_set()->resize_covered_region(cmr);
+    gch->barrier_set()->resize_covered_region(cmr);
     if (Verbose && PrintGC) {
       size_t new_size_after  = _virtual_space.committed_size();
       size_t eden_size_after = eden()->capacity();
@@ -550,8 +554,9 @@
 
 void DefNewGeneration::adjust_desired_tenuring_threshold() {
   // Set the desired survivor size to half the real survivor space
+  GCPolicyCounters* gc_counters = GenCollectedHeap::heap()->collector_policy()->counters();
   _tenuring_threshold =
-    age_table()->compute_tenuring_threshold(to()->capacity()/HeapWordSize);
+    age_table()->compute_tenuring_threshold(to()->capacity()/HeapWordSize, gc_counters);
 }
 
 void DefNewGeneration::collect(bool   full,
@@ -688,7 +693,7 @@
     gc_tracer.report_promotion_failed(_promotion_failed_info);
 
     // Reset the PromotionFailureALot counters.
-    NOT_PRODUCT(Universe::heap()->reset_promotion_should_fail();)
+    NOT_PRODUCT(gch->reset_promotion_should_fail();)
   }
   if (PrintGC && !PrintGCDetails) {
     gch->print_heap_change(gch_prev_used);
--- a/hotspot/src/share/vm/memory/defNewGeneration.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/defNewGeneration.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,9 +25,9 @@
 #ifndef SHARE_VM_MEMORY_DEFNEWGENERATION_INLINE_HPP
 #define SHARE_VM_MEMORY_DEFNEWGENERATION_INLINE_HPP
 
-#include "gc_interface/collectedHeap.hpp"
 #include "memory/cardTableRS.hpp"
 #include "memory/defNewGeneration.hpp"
+#include "memory/genCollectedHeap.hpp"
 #include "memory/genOopClosures.inline.hpp"
 #include "memory/space.hpp"
 
@@ -60,7 +60,7 @@
   // We could check that p is also in an older generation, but
   // dirty cards in the youngest gen are never scanned, so the
   // extra check probably isn't worthwhile.
-  if (Universe::heap()->is_in_reserved(p)) {
+  if (GenCollectedHeap::heap()->is_in_reserved(p)) {
     oop obj = oopDesc::load_decode_heap_oop_not_null(p);
     _rs->inline_write_ref_field_gc(p, obj);
   }
@@ -84,7 +84,7 @@
   // we set a younger_gen card if we have an older->youngest
   // generation pointer.
   oop obj = oopDesc::load_decode_heap_oop_not_null(p);
-  if (((HeapWord*)obj < _boundary) && Universe::heap()->is_in_reserved(p)) {
+  if (((HeapWord*)obj < _boundary) && GenCollectedHeap::heap()->is_in_reserved(p)) {
     _rs->inline_write_ref_field_gc(p, obj);
   }
 }
--- a/hotspot/src/share/vm/memory/freeList.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/freeList.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,10 +23,10 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/freeBlockDictionary.hpp"
 #include "memory/freeList.hpp"
 #include "memory/metachunk.hpp"
-#include "memory/sharedHeap.hpp"
 #include "runtime/globals.hpp"
 #include "runtime/mutex.hpp"
 #include "runtime/vmThread.hpp"
--- a/hotspot/src/share/vm/memory/gcLocker.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/gcLocker.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,9 +23,9 @@
  */
 
 #include "precompiled.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/gcLocker.inline.hpp"
 #include "memory/resourceArea.hpp"
-#include "memory/sharedHeap.hpp"
 #include "runtime/atomic.inline.hpp"
 #include "runtime/thread.inline.hpp"
 
--- a/hotspot/src/share/vm/memory/genCollectedHeap.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/genCollectedHeap.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -39,7 +39,7 @@
 #include "memory/genOopClosures.inline.hpp"
 #include "memory/generationSpec.hpp"
 #include "memory/resourceArea.hpp"
-#include "memory/sharedHeap.hpp"
+#include "memory/strongRootsScope.hpp"
 #include "memory/space.hpp"
 #include "oops/oop.inline.hpp"
 #include "runtime/biasedLocking.hpp"
@@ -50,15 +50,15 @@
 #include "runtime/vmThread.hpp"
 #include "services/management.hpp"
 #include "services/memoryService.hpp"
+#include "utilities/macros.hpp"
+#include "utilities/stack.inline.hpp"
 #include "utilities/vmError.hpp"
 #include "utilities/workgroup.hpp"
-#include "utilities/macros.hpp"
 #if INCLUDE_ALL_GCS
 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
 #include "gc_implementation/concurrentMarkSweep/vmCMSOperations.hpp"
 #endif // INCLUDE_ALL_GCS
 
-GenCollectedHeap* GenCollectedHeap::_gch;
 NOT_PRODUCT(size_t GenCollectedHeap::_skip_header_HeapWords = 0;)
 
 // The set of potentially parallel tasks in root scanning.
@@ -78,21 +78,27 @@
 };
 
 GenCollectedHeap::GenCollectedHeap(GenCollectorPolicy *policy) :
-  SharedHeap(),
+  CollectedHeap(),
   _rem_set(NULL),
   _gen_policy(policy),
   _process_strong_tasks(new SubTasksDone(GCH_PS_NumElements)),
   _full_collections_completed(0)
 {
   assert(policy != NULL, "Sanity check");
+  if (UseConcMarkSweepGC) {
+    _workers = new FlexibleWorkGang("GC Thread", ParallelGCThreads,
+                            /* are_GC_task_threads */true,
+                            /* are_ConcurrentGC_threads */false);
+    _workers->initialize_workers();
+  } else {
+    // Serial GC does not use workers.
+    _workers = NULL;
+  }
 }
 
 jint GenCollectedHeap::initialize() {
   CollectedHeap::pre_initialize();
 
-  _n_gens = gen_policy()->number_of_generations();
-  assert(_n_gens == 2, "There is no support for more than two generations");
-
   // While there are no constraints in the GC code that HeapWordSize
   // be any particular value, there are multiple other areas in the
   // system which believe this to be true (e.g. oop->object_size in some
@@ -120,8 +126,6 @@
   _rem_set = collector_policy()->create_rem_set(reserved_region());
   set_barrier_set(rem_set()->bs());
 
-  _gch = this;
-
   ReservedSpace young_rs = heap_rs.first_part(gen_policy()->young_gen_spec()->max_size(), false, false);
   _young_gen = gen_policy()->young_gen_spec()->init(young_rs, 0, rem_set());
   heap_rs = heap_rs.last_part(gen_policy()->young_gen_spec()->max_size());
@@ -166,7 +170,8 @@
 }
 
 void GenCollectedHeap::post_initialize() {
-  SharedHeap::post_initialize();
+  CollectedHeap::post_initialize();
+  ref_processing_init();
   GenCollectorPolicy *policy = (GenCollectorPolicy *)collector_policy();
   guarantee(policy->is_generation_policy(), "Illegal policy type");
   assert((_young_gen->kind() == Generation::DefNew) ||
@@ -185,7 +190,6 @@
 }
 
 void GenCollectedHeap::ref_processing_init() {
-  SharedHeap::ref_processing_init();
   _young_gen->ref_processor_init();
   _old_gen->ref_processor_init();
 }
@@ -200,8 +204,7 @@
 
 // Save the "used_region" for generations level and lower.
 void GenCollectedHeap::save_used_regions(int level) {
-  assert(level >= 0, "Illegal level parameter");
-  assert(level < _n_gens, "Illegal level parameter");
+  assert(level == 0 || level == 1, "Illegal level parameter");
   if (level == 1) {
     _old_gen->save_used_region();
   }
@@ -417,7 +420,6 @@
   assert(Heap_lock->is_locked(),
          "the requesting thread should have the Heap_lock");
   guarantee(!is_gc_active(), "collection is not reentrant");
-  assert(max_level < n_gens(), "sanity check");
 
   if (GC_locker::check_active_before_gc()) {
     return; // GC is disabled (e.g. JNI GetXXXCritical operation)
@@ -435,7 +437,7 @@
   {
     FlagSetting fl(_is_gc_active, true);
 
-    bool complete = full && (max_level == (n_gens()-1));
+    bool complete = full && (max_level == 1 /* old */);
     const char* gc_cause_prefix = complete ? "Full GC" : "GC";
     TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty);
     // The PrintGCDetails logging starts before we have incremented the GC id. We will do that later
@@ -507,7 +509,7 @@
     // Update "complete" boolean wrt what actually transpired --
     // for instance, a promotion failure could have led to
     // a whole heap collection.
-    complete = complete || (max_level_collected == n_gens() - 1);
+    complete = complete || (max_level_collected == 1 /* old */);
 
     if (complete) { // We did a "major" collection
       // FIXME: See comment at pre_full_gc_dump call
@@ -524,7 +526,7 @@
     }
 
     // Adjust generation sizes.
-    if (max_level_collected == 1) {
+    if (max_level_collected == 1 /* old */) {
       _old_gen->compute_new_size();
     }
     _young_gen->compute_new_size();
@@ -560,7 +562,8 @@
 }
 
 void GenCollectedHeap::set_par_threads(uint t) {
-  SharedHeap::set_par_threads(t);
+  assert(t == 0 || !UseSerialGC, "Cannot have parallel threads");
+  CollectedHeap::set_par_threads(t);
   set_n_termination(t);
 }
 
@@ -586,7 +589,7 @@
                                      CLDClosure* strong_cld_closure,
                                      CLDClosure* weak_cld_closure,
                                      CodeBlobClosure* code_roots) {
-  StrongRootsScope srs(this, activate_scope);
+  StrongRootsScope srs(activate_scope);
 
   // General roots.
   assert(Threads::thread_claim_parity() != 0, "must have called prologue code");
@@ -606,7 +609,8 @@
   // Only process code roots from thread stacks if we aren't visiting the entire CodeCache anyway
   CodeBlobClosure* roots_from_code_p = (so & SO_AllCodeCache) ? NULL : code_roots;
 
-  Threads::possibly_parallel_oops_do(strong_roots, roots_from_clds_p, roots_from_code_p);
+  bool is_par = n_par_threads() > 0;
+  Threads::possibly_parallel_oops_do(is_par, strong_roots, roots_from_clds_p, roots_from_code_p);
 
   if (!_process_strong_tasks->is_task_claimed(GCH_PS_Universe_oops_do)) {
     Universe::oops_do(strong_roots);
@@ -771,19 +775,19 @@
 #endif // INCLUDE_ALL_GCS
   } else if (cause == GCCause::_wb_young_gc) {
     // minor collection for WhiteBox API
-    collect(cause, 0);
+    collect(cause, 0 /* young */);
   } else {
 #ifdef ASSERT
   if (cause == GCCause::_scavenge_alot) {
     // minor collection only
-    collect(cause, 0);
+    collect(cause, 0 /* young */);
   } else {
     // Stop-the-world full collection
-    collect(cause, n_gens() - 1);
+    collect(cause, 1 /* old */);
   }
 #else
     // Stop-the-world full collection
-    collect(cause, n_gens() - 1);
+    collect(cause, 1 /* old */);
 #endif
   }
 }
@@ -798,7 +802,7 @@
 void GenCollectedHeap::collect_locked(GCCause::Cause cause) {
   // The caller has the Heap_lock
   assert(Heap_lock->owned_by_self(), "this thread should own the Heap_lock");
-  collect_locked(cause, n_gens() - 1);
+  collect_locked(cause, 1 /* old */);
 }
 
 // this is the private collection interface
@@ -854,7 +858,7 @@
 #endif // INCLUDE_ALL_GCS
 
 void GenCollectedHeap::do_full_collection(bool clear_all_soft_refs) {
-   do_full_collection(clear_all_soft_refs, _n_gens - 1);
+   do_full_collection(clear_all_soft_refs, 1 /* old */);
 }
 
 void GenCollectedHeap::do_full_collection(bool clear_all_soft_refs,
@@ -886,7 +890,7 @@
                   clear_all_soft_refs  /* clear_all_soft_refs */,
                   0                    /* size */,
                   false                /* is_tlab */,
-                  n_gens() - 1         /* max_level */);
+                  1  /* old */         /* max_level */);
   }
 }
 
@@ -899,17 +903,6 @@
 
 // Returns "TRUE" iff "p" points into the committed areas of the heap.
 bool GenCollectedHeap::is_in(const void* p) const {
-  #ifndef ASSERT
-  guarantee(VerifyBeforeGC      ||
-            VerifyDuringGC      ||
-            VerifyBeforeExit    ||
-            VerifyDuringStartup ||
-            PrintAssembly       ||
-            tty->count() != 0   ||   // already printing
-            VerifyAfterGC       ||
-    VMError::fatal_error_in_progress(), "too expensive");
-
-  #endif
   return _young_gen->is_in(p) || _old_gen->is_in(p);
 }
 
@@ -923,6 +916,11 @@
 }
 #endif
 
+void GenCollectedHeap::oop_iterate_no_header(OopClosure* cl) {
+  NoHeaderExtendedOopClosure no_header_cl(cl);
+  oop_iterate(&no_header_cl);
+}
+
 void GenCollectedHeap::oop_iterate(ExtendedOopClosure* cl) {
   _young_gen->oop_iterate(cl);
   _old_gen->oop_iterate(cl);
@@ -1092,11 +1090,6 @@
   }
 }
 
-void GenCollectedHeap::space_iterate(SpaceClosure* cl) {
-  _young_gen->space_iterate(cl, true);
-  _old_gen->space_iterate(cl, true);
-}
-
 bool GenCollectedHeap::is_maximal_no_gc() const {
   return _young_gen->is_maximal_no_gc() && _old_gen->is_maximal_no_gc();
 }
@@ -1107,14 +1100,13 @@
 }
 
 GenCollectedHeap* GenCollectedHeap::heap() {
-  assert(_gch != NULL, "Uninitialized access to GenCollectedHeap::heap()");
-  assert(_gch->kind() == CollectedHeap::GenCollectedHeap, "not a generational heap");
-  return _gch;
+  CollectedHeap* heap = Universe::heap();
+  assert(heap != NULL, "Uninitialized access to GenCollectedHeap::heap()");
+  assert(heap->kind() == CollectedHeap::GenCollectedHeap, "Not a GenCollectedHeap");
+  return (GenCollectedHeap*)heap;
 }
 
-
 void GenCollectedHeap::prepare_for_compaction() {
-  guarantee(_n_gens = 2, "Wrong number of generations");
   // Start by compacting into same gen.
   CompactPoint cp(_old_gen);
   _old_gen->prepare_for_compaction(&cp);
--- a/hotspot/src/share/vm/memory/genCollectedHeap.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/genCollectedHeap.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,15 +26,16 @@
 #define SHARE_VM_MEMORY_GENCOLLECTEDHEAP_HPP
 
 #include "gc_implementation/shared/adaptiveSizePolicy.hpp"
+#include "gc_interface/collectedHeap.hpp"
 #include "memory/collectorPolicy.hpp"
 #include "memory/generation.hpp"
-#include "memory/sharedHeap.hpp"
 
 class SubTasksDone;
+class FlexibleWorkGang;
 
-// A "GenCollectedHeap" is a SharedHeap that uses generational
+// A "GenCollectedHeap" is a CollectedHeap that uses generational
 // collection.  It has two generations, young and old.
-class GenCollectedHeap : public SharedHeap {
+class GenCollectedHeap : public CollectedHeap {
   friend class GenCollectorPolicy;
   friend class Generation;
   friend class DefNewGeneration;
@@ -51,19 +52,9 @@
   friend class GCCauseSetter;
   friend class VMStructs;
 public:
-  enum SomeConstants {
-    max_gens = 10
-  };
-
   friend class VM_PopulateDumpSharedSpace;
 
- protected:
-  // Fields:
-  static GenCollectedHeap* _gch;
-
- private:
-  int _n_gens;
-
+private:
   Generation* _young_gen;
   Generation* _old_gen;
 
@@ -93,6 +84,8 @@
   // In block contents verification, the number of header words to skip
   NOT_PRODUCT(static size_t _skip_header_HeapWords;)
 
+  FlexibleWorkGang* _workers;
+
 protected:
   // Helper functions for allocation
   HeapWord* attempt_allocation(size_t size,
@@ -125,6 +118,8 @@
 public:
   GenCollectedHeap(GenCollectorPolicy *policy);
 
+  FlexibleWorkGang* workers() const { return _workers; }
+
   GCStats* gc_stats(int level) const;
 
   // Returns JNI_OK on success
@@ -178,9 +173,6 @@
   HeapWord** top_addr() const;
   HeapWord** end_addr() const;
 
-  // Does this heap support heap inspection? (+PrintClassHistogram)
-  virtual bool supports_heap_inspection() const { return true; }
-
   // Perform a full collection of the heap; intended for use in implementing
   // "System.gc". This implies as full a collection as the CollectedHeap
   // supports. Caller does not hold the Heap_lock on entry.
@@ -223,6 +215,7 @@
   }
 
   // Iteration functions.
+  void oop_iterate_no_header(OopClosure* cl);
   void oop_iterate(ExtendedOopClosure* cl);
   void object_iterate(ObjectClosure* cl);
   void safe_object_iterate(ObjectClosure* cl);
@@ -280,11 +273,6 @@
   // only and may need to be re-examined in case other
   // kinds of collectors are implemented in the future.
   virtual bool can_elide_initializing_store_barrier(oop new_obj) {
-    // We wanted to assert that:-
-    // assert(UseSerialGC || UseConcMarkSweepGC,
-    //       "Check can_elide_initializing_store_barrier() for this collector");
-    // but unfortunately the flag UseSerialGC need not necessarily always
-    // be set when DefNew+Tenured are being used.
     return is_in_young(new_obj);
   }
 
@@ -331,7 +319,6 @@
     _old_gen->update_gc_stats(current_level, full);
   }
 
-  // Override.
   bool no_gc_in_progress() { return !is_gc_active(); }
 
   // Override.
@@ -363,18 +350,11 @@
   // If "old_to_young" determines the order.
   void generation_iterate(GenClosure* cl, bool old_to_young);
 
-  void space_iterate(SpaceClosure* cl);
-
   // Return "true" if all generations have reached the
   // maximal committed limit that they can reach, without a garbage
   // collection.
   virtual bool is_maximal_no_gc() const;
 
-  int n_gens() const {
-    assert(_n_gens == gen_policy()->number_of_generations(), "Sanity");
-    return _n_gens;
-  }
-
   // This function returns the "GenRemSet" object that allows us to scan
   // generations in a fully generational heap.
   GenRemSet* rem_set() { return _rem_set; }
@@ -531,8 +511,8 @@
   void record_gen_tops_before_GC() PRODUCT_RETURN;
 
 protected:
-  virtual void gc_prologue(bool full);
-  virtual void gc_epilogue(bool full);
+  void gc_prologue(bool full);
+  void gc_epilogue(bool full);
 };
 
 #endif // SHARE_VM_MEMORY_GENCOLLECTEDHEAP_HPP
--- a/hotspot/src/share/vm/memory/genMarkSweep.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/genMarkSweep.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -187,7 +187,6 @@
                                      bool clear_all_softrefs) {
   // Recursively traverse all live objects and mark them
   GCTraceTime tm("phase 1", PrintGC && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace(" 1");
 
   GenCollectedHeap* gch = GenCollectedHeap::heap();
 
@@ -258,7 +257,6 @@
   GenCollectedHeap* gch = GenCollectedHeap::heap();
 
   GCTraceTime tm("phase 2", PrintGC && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("2");
 
   gch->prepare_for_compaction();
 }
@@ -275,7 +273,6 @@
 
   // Adjust the pointers to reflect the new locations
   GCTraceTime tm("phase 3", PrintGC && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("3");
 
   // Need new claim bits for the pointer adjustment tracing.
   ClassLoaderDataGraph::clear_claimed_marks();
@@ -325,7 +322,6 @@
   GenCollectedHeap* gch = GenCollectedHeap::heap();
 
   GCTraceTime tm("phase 4", PrintGC && Verbose, true, _gc_timer, _gc_tracer->gc_id());
-  trace("4");
 
   GenCompactClosure blk;
   gch->generation_iterate(&blk, true);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/memory/genOopClosures.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,30 @@
+/* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "memory/genOopClosures.inline.hpp"
+#include "memory/iterator.inline.hpp"
+#include "memory/specialized_oop_closures.hpp"
+
+// Generate Serial GC specialized oop_oop_iterate functions.
+SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_S(ALL_KLASS_OOP_OOP_ITERATE_DEFN)
--- a/hotspot/src/share/vm/memory/genOopClosures.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/genOopClosures.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -31,7 +31,6 @@
 #include "memory/genOopClosures.hpp"
 #include "memory/genRemSet.hpp"
 #include "memory/generation.hpp"
-#include "memory/sharedHeap.hpp"
 #include "memory/space.hpp"
 
 inline OopsInGenClosure::OopsInGenClosure(Generation* gen) :
--- a/hotspot/src/share/vm/memory/generation.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/generation.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -187,7 +187,7 @@
   assert(obj_size == (size_t)obj->size(), "bad obj_size passed in");
 
 #ifndef PRODUCT
-  if (Universe::heap()->promotion_should_fail()) {
+  if (GenCollectedHeap::heap()->promotion_should_fail()) {
     return NULL;
   }
 #endif  // #ifndef PRODUCT
--- a/hotspot/src/share/vm/memory/generation.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/generation.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -30,10 +30,10 @@
 #include "memory/memRegion.hpp"
 #include "memory/referenceProcessor.hpp"
 #include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "memory/watermark.hpp"
 #include "runtime/mutex.hpp"
 #include "runtime/perfData.hpp"
-#include "runtime/virtualspace.hpp"
 
 // A Generation models a heap area for similarly-aged objects.
 // It will contain one ore more spaces holding the actual objects.
--- a/hotspot/src/share/vm/memory/heap.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/heap.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 
 #include "code/codeBlob.hpp"
 #include "memory/allocation.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 
 // Blocks
 
--- a/hotspot/src/share/vm/memory/iterator.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/iterator.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -23,8 +23,11 @@
  */
 
 #include "precompiled.hpp"
-#include "memory/iterator.hpp"
+#include "memory/iterator.inline.hpp"
+#include "memory/universe.hpp"
 #include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
 
 void KlassToOopClosure::do_klass(Klass* k) {
   assert(_oop_closure != NULL, "Not initialized?");
@@ -61,19 +64,18 @@
   }
 }
 
-MarkingCodeBlobClosure::MarkScope::MarkScope(bool activate)
-  : _active(activate)
-{
-  if (_active)  nmethod::oops_do_marking_prologue();
-}
-
-MarkingCodeBlobClosure::MarkScope::~MarkScope() {
-  if (_active)  nmethod::oops_do_marking_epilogue();
-}
-
 void MarkingCodeBlobClosure::do_code_blob(CodeBlob* cb) {
   nmethod* nm = cb->as_nmethod_or_null();
   if (nm != NULL && !nm->test_set_oops_do_mark()) {
     do_nmethod(nm);
   }
 }
+
+// Generate the *Klass::oop_oop_iterate functions for the base class
+// of the oop closures. These versions use the virtual do_oop calls,
+// instead of the devirtualized do_oop_nv version.
+ALL_KLASS_OOP_OOP_ITERATE_DEFN(ExtendedOopClosure,  _v)
+
+// Generate the *Klass::oop_oop_iterate functions
+// for the NoHeaderExtendedOopClosure helper class.
+ALL_KLASS_OOP_OOP_ITERATE_DEFN(NoHeaderExtendedOopClosure, _nv)
--- a/hotspot/src/share/vm/memory/iterator.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/iterator.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -44,9 +44,7 @@
 class OopClosure : public Closure {
  public:
   virtual void do_oop(oop* o) = 0;
-  virtual void do_oop_v(oop* o) { do_oop(o); }
   virtual void do_oop(narrowOop* o) = 0;
-  virtual void do_oop_v(narrowOop* o) { do_oop(o); }
 };
 
 // ExtendedOopClosure adds extra code to be run during oop iterations.
@@ -74,11 +72,9 @@
   // Currently, only CMS and G1 need these.
 
   virtual bool do_metadata() { return do_metadata_nv(); }
-  bool do_metadata_v()       { return do_metadata(); }
   bool do_metadata_nv()      { return false; }
 
   virtual void do_klass(Klass* k)   { do_klass_nv(k); }
-  void do_klass_v(Klass* k)         { do_klass(k); }
   void do_klass_nv(Klass* k)        { ShouldNotReachHere(); }
 
   virtual void do_class_loader_data(ClassLoaderData* cld) { ShouldNotReachHere(); }
@@ -87,6 +83,14 @@
   // location without an intervening "major reset" (like the end of a GC).
   virtual bool idempotent() { return false; }
   virtual bool apply_to_weak_ref_discovered_field() { return false; }
+
+#ifdef ASSERT
+  // Default verification of each visited oop field.
+  template <typename T> void verify(T* p);
+
+  // Can be used by subclasses to turn off the default verification of oop fields.
+  virtual bool should_verify_oops() { return true; }
+#endif
 };
 
 // Wrapper closure only used to implement oop_iterate_no_header().
@@ -147,7 +151,6 @@
 };
 
 class CLDToKlassAndOopClosure : public CLDClosure {
-  friend class SharedHeap;
   friend class G1CollectedHeap;
  protected:
   OopClosure*   _oop_closure;
@@ -284,16 +287,6 @@
   // Called for each code blob, but at most once per unique blob.
 
   virtual void do_code_blob(CodeBlob* cb);
-
-  class MarkScope : public StackObj {
-  protected:
-    bool _active;
-  public:
-    MarkScope(bool activate = true);
-      // = { if (active) nmethod::oops_do_marking_prologue(); }
-    ~MarkScope();
-      // = { if (active) nmethod::oops_do_marking_epilogue(); }
-  };
 };
 
 // MonitorClosure is used for iterating over monitors in the monitors cache
@@ -364,16 +357,33 @@
   }
 };
 
+// The two class template specializations are used to dispatch calls
+// to the ExtendedOopClosure functions. If use_non_virtual_call is true,
+// the non-virtual versions are called (E.g. do_oop_nv), otherwise the
+// virtual versions are called (E.g. do_oop).
 
-// Helper defines for ExtendOopClosure
+template <bool use_non_virtual_call>
+class Devirtualizer {};
 
-#define if_do_metadata_checked(closure, nv_suffix)       \
-  /* Make sure the non-virtual and the virtual versions match. */     \
-  assert(closure->do_metadata##nv_suffix() == closure->do_metadata(), \
-      "Inconsistency in do_metadata");                                \
-  if (closure->do_metadata##nv_suffix())
+// Dispatches to the non-virtual functions.
+template <> class Devirtualizer<true> {
+ public:
+  template <class OopClosureType, typename T> static void do_oop(OopClosureType* closure, T* p);
+  template <class OopClosureType>             static void do_klass(OopClosureType* closure, Klass* k);
+  template <class OopClosureType>             static bool do_metadata(OopClosureType* closure);
+};
 
-#define assert_should_ignore_metadata(closure, nv_suffix)                                  \
-  assert(!closure->do_metadata##nv_suffix(), "Code to handle metadata is not implemented")
+// Dispatches to the virtual functions.
+template <> class Devirtualizer<false> {
+ public:
+  template <class OopClosureType, typename T> static void do_oop(OopClosureType* closure, T* p);
+  template <class OopClosureType>             static void do_klass(OopClosureType* closure, Klass* k);
+  template <class OopClosureType>             static bool do_metadata(OopClosureType* closure);
+};
+
+// Helper to convert the oop iterate macro suffixes into bool values that can be used by template functions.
+#define nvs_nv_to_bool true
+#define nvs_v_to_bool  false
+#define nvs_to_bool(nv_suffix) nvs##nv_suffix##_to_bool
 
 #endif // SHARE_VM_MEMORY_ITERATOR_HPP
--- a/hotspot/src/share/vm/memory/iterator.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/iterator.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,6 +28,12 @@
 #include "classfile/classLoaderData.hpp"
 #include "memory/iterator.hpp"
 #include "oops/klass.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.inline.hpp"
+#include "oops/instanceClassLoaderKlass.inline.hpp"
+#include "oops/instanceRefKlass.inline.hpp"
+#include "oops/objArrayKlass.inline.hpp"
+#include "oops/typeArrayKlass.inline.hpp"
 #include "utilities/debug.hpp"
 
 inline void MetadataAwareOopClosure::do_class_loader_data(ClassLoaderData* cld) {
@@ -44,4 +50,63 @@
 
 inline void MetadataAwareOopClosure::do_klass(Klass* k)       { do_klass_nv(k); }
 
+#ifdef ASSERT
+// This verification is applied to all visited oops.
+// The closures can turn is off by overriding should_verify_oops().
+template <typename T>
+void ExtendedOopClosure::verify(T* p) {
+  if (should_verify_oops()) {
+    T heap_oop = oopDesc::load_heap_oop(p);
+    if (!oopDesc::is_null(heap_oop)) {
+      oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
+      assert(Universe::heap()->is_in_closed_subset(o),
+             err_msg("should be in closed *p " PTR_FORMAT " " PTR_FORMAT, p2i(p), p2i(o)));
+    }
+  }
+}
+#endif
+
+// Implementation of the non-virtual do_oop dispatch.
+
+template <class OopClosureType, typename T>
+inline void Devirtualizer<true>::do_oop(OopClosureType* closure, T* p) {
+  debug_only(closure->verify(p));
+  closure->do_oop_nv(p);
+}
+template <class OopClosureType>
+inline void Devirtualizer<true>::do_klass(OopClosureType* closure, Klass* k) {
+  closure->do_klass_nv(k);
+}
+template <class OopClosureType>
+inline bool Devirtualizer<true>::do_metadata(OopClosureType* closure) {
+  // Make sure the non-virtual and the virtual versions match.
+  assert(closure->do_metadata_nv() == closure->do_metadata(), "Inconsistency in do_metadata");
+  return closure->do_metadata_nv();
+}
+
+// Implementation of the virtual do_oop dispatch.
+
+template <class OopClosureType, typename T>
+void Devirtualizer<false>::do_oop(OopClosureType* closure, T* p) {
+  debug_only(closure->verify(p));
+  closure->do_oop(p);
+}
+template <class OopClosureType>
+void Devirtualizer<false>::do_klass(OopClosureType* closure, Klass* k) {
+  closure->do_klass(k);
+}
+template <class OopClosureType>
+bool Devirtualizer<false>::do_metadata(OopClosureType* closure) {
+  return closure->do_metadata();
+}
+
+// The list of all "specializable" oop_oop_iterate function definitions.
+#define ALL_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)                  \
+  ALL_INSTANCE_KLASS_OOP_OOP_ITERATE_DEFN(             OopClosureType, nv_suffix)  \
+  ALL_INSTANCE_REF_KLASS_OOP_OOP_ITERATE_DEFN(         OopClosureType, nv_suffix)  \
+  ALL_INSTANCE_MIRROR_KLASS_OOP_OOP_ITERATE_DEFN(      OopClosureType, nv_suffix)  \
+  ALL_INSTANCE_CLASS_LOADER_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  ALL_OBJ_ARRAY_KLASS_OOP_OOP_ITERATE_DEFN(            OopClosureType, nv_suffix)  \
+  ALL_TYPE_ARRAY_KLASS_OOP_OOP_ITERATE_DEFN(           OopClosureType, nv_suffix)
+
 #endif // SHARE_VM_MEMORY_ITERATOR_INLINE_HPP
--- a/hotspot/src/share/vm/memory/metaspace.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/metaspace.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 #include "memory/allocation.hpp"
 #include "memory/memRegion.hpp"
 #include "memory/metaspaceChunkFreeListSummary.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/exceptions.hpp"
 
 // Metaspace
--- a/hotspot/src/share/vm/memory/metaspaceShared.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/metaspaceShared.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -30,6 +30,8 @@
 #include "classfile/symbolTable.hpp"
 #include "classfile/systemDictionary.hpp"
 #include "code/codeCache.hpp"
+#include "interpreter/bytecodes.hpp"
+#include "interpreter/bytecodeStream.hpp"
 #include "memory/filemap.hpp"
 #include "memory/gcLocker.hpp"
 #include "memory/metaspace.hpp"
@@ -104,15 +106,33 @@
   }
 }
 
-// Walk all methods in the class list and assign a fingerprint.
-// so that this part of the ConstMethod* is read only.
-static void calculate_fingerprints() {
+static void rewrite_nofast_bytecode(Method* method) {
+  RawBytecodeStream bcs(method);
+  while (!bcs.is_last_bytecode()) {
+    Bytecodes::Code opcode = bcs.raw_next();
+    switch (opcode) {
+    case Bytecodes::_getfield:      *bcs.bcp() = Bytecodes::_nofast_getfield;      break;
+    case Bytecodes::_putfield:      *bcs.bcp() = Bytecodes::_nofast_putfield;      break;
+    case Bytecodes::_aload_0:       *bcs.bcp() = Bytecodes::_nofast_aload_0;       break;
+    case Bytecodes::_iload:         *bcs.bcp() = Bytecodes::_nofast_iload;         break;
+    default: break;
+    }
+  }
+}
+
+// Walk all methods in the class list to ensure that they won't be modified at
+// run time. This includes:
+// [1] Rewrite all bytecodes as needed, so that the ConstMethod* will not be modified
+//     at run time by RewriteBytecodes/RewriteFrequentPairs
+// [2] Assign a fingerprint, so one doesn't need to be assigned at run-time.
+static void rewrite_nofast_bytecodes_and_calculate_fingerprints() {
   for (int i = 0; i < _global_klass_objects->length(); i++) {
     Klass* k = _global_klass_objects->at(i);
     if (k->oop_is_instance()) {
       InstanceKlass* ik = InstanceKlass::cast(k);
       for (int i = 0; i < ik->methods()->length(); i++) {
         Method* m = ik->methods()->at(i);
+        rewrite_nofast_bytecode(m);
         Fingerprinter fp(m);
         // The side effect of this call sets method's fingerprint field.
         fp.fingerprint();
@@ -476,9 +496,10 @@
     tty->print_cr("    type array classes = %5d", num_type_array);
   }
 
-  // Update all the fingerprints in the shared methods.
-  tty->print("Calculating fingerprints ... ");
-  calculate_fingerprints();
+
+  // Ensure the ConstMethods won't be modified at run-time
+  tty->print("Updating ConstMethods ... ");
+  rewrite_nofast_bytecodes_and_calculate_fingerprints();
   tty->print_cr("done. ");
 
   // Remove all references outside the metadata
--- a/hotspot/src/share/vm/memory/metaspaceShared.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/metaspaceShared.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 #include "classfile/compactHashtable.hpp"
 #include "memory/allocation.hpp"
 #include "memory/memRegion.hpp"
-#include "runtime/virtualspace.hpp"
+#include "memory/virtualspace.hpp"
 #include "utilities/exceptions.hpp"
 #include "utilities/macros.hpp"
 
--- a/hotspot/src/share/vm/memory/sharedHeap.cpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#include "precompiled.hpp"
-#include "classfile/stringTable.hpp"
-#include "classfile/systemDictionary.hpp"
-#include "code/codeCache.hpp"
-#include "gc_interface/collectedHeap.inline.hpp"
-#include "memory/sharedHeap.hpp"
-#include "oops/oop.inline.hpp"
-#include "runtime/atomic.inline.hpp"
-#include "runtime/fprofiler.hpp"
-#include "runtime/java.hpp"
-#include "utilities/copy.hpp"
-#include "utilities/workgroup.hpp"
-
-SharedHeap* SharedHeap::_sh;
-
-SharedHeap::SharedHeap() :
-  CollectedHeap(),
-  _workers(NULL)
-{
-  _sh = this;  // ch is static, should be set only once.
-  if (UseConcMarkSweepGC || UseG1GC) {
-    _workers = new FlexibleWorkGang("GC Thread", ParallelGCThreads,
-                            /* are_GC_task_threads */true,
-                            /* are_ConcurrentGC_threads */false);
-    if (_workers == NULL) {
-      vm_exit_during_initialization("Failed necessary allocation.");
-    } else {
-      _workers->initialize_workers();
-    }
-  }
-}
-
-bool SharedHeap::heap_lock_held_for_gc() {
-  Thread* t = Thread::current();
-  return    Heap_lock->owned_by_self()
-         || (   (t->is_GC_task_thread() ||  t->is_VM_thread())
-             && _thread_holds_heap_lock_for_gc);
-}
-
-void SharedHeap::set_par_threads(uint t) {
-  assert(t == 0 || !UseSerialGC, "Cannot have parallel threads");
-  _n_par_threads = t;
-}
-
-SharedHeap::StrongRootsScope::StrongRootsScope(SharedHeap* heap, bool activate)
-  : MarkScope(activate), _sh(heap)
-{
-  if (_active) {
-    Threads::change_thread_claim_parity();
-    // Zero the claimed high water mark in the StringTable
-    StringTable::clear_parallel_claimed_index();
-  }
-}
-
-SharedHeap::StrongRootsScope::~StrongRootsScope() {
-  Threads::assert_all_threads_claimed();
-}
-
-void SharedHeap::set_barrier_set(BarrierSet* bs) {
-  _barrier_set = bs;
-  // Cached barrier set for fast access in oops
-  oopDesc::set_bs(bs);
-}
-
-void SharedHeap::post_initialize() {
-  CollectedHeap::post_initialize();
-  ref_processing_init();
-}
-
-void SharedHeap::ref_processing_init() {}
--- a/hotspot/src/share/vm/memory/sharedHeap.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,213 +0,0 @@
-/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_MEMORY_SHAREDHEAP_HPP
-#define SHARE_VM_MEMORY_SHAREDHEAP_HPP
-
-#include "gc_interface/collectedHeap.hpp"
-#include "memory/generation.hpp"
-
-// A "SharedHeap" is an implementation of a java heap for HotSpot.  This
-// is an abstract class: there may be many different kinds of heaps.  This
-// class defines the functions that a heap must implement, and contains
-// infrastructure common to all heaps.
-
-class Generation;
-class BarrierSet;
-class GenRemSet;
-class Space;
-class SpaceClosure;
-class OopClosure;
-class OopsInGenClosure;
-class ObjectClosure;
-class SubTasksDone;
-class WorkGang;
-class FlexibleWorkGang;
-class CollectorPolicy;
-class KlassClosure;
-
-// Note on use of FlexibleWorkGang's for GC.
-// There are three places where task completion is determined.
-// In
-//    1) ParallelTaskTerminator::offer_termination() where _n_threads
-//    must be set to the correct value so that count of workers that
-//    have offered termination will exactly match the number
-//    working on the task.  Tasks such as those derived from GCTask
-//    use ParallelTaskTerminator's.  Tasks that want load balancing
-//    by work stealing use this method to gauge completion.
-//    2) SubTasksDone has a variable _n_threads that is used in
-//    all_tasks_completed() to determine completion.  all_tasks_complete()
-//    counts the number of tasks that have been done and then reset
-//    the SubTasksDone so that it can be used again.  When the number of
-//    tasks is set to the number of GC workers, then _n_threads must
-//    be set to the number of active GC workers. G1RootProcessor and
-//    GenCollectedHeap have SubTasksDone.
-//    3) SequentialSubTasksDone has an _n_threads that is used in
-//    a way similar to SubTasksDone and has the same dependency on the
-//    number of active GC workers.  CompactibleFreeListSpace and Space
-//    have SequentialSubTasksDone's.
-//
-// Examples of using SubTasksDone and SequentialSubTasksDone:
-//  G1RootProcessor and GenCollectedHeap::process_roots() use
-//  SubTasksDone* _process_strong_tasks to claim tasks for workers
-//
-//  GenCollectedHeap::gen_process_roots() calls
-//      rem_set()->younger_refs_iterate()
-//  to scan the card table and which eventually calls down into
-//  CardTableModRefBS::par_non_clean_card_iterate_work().  This method
-//  uses SequentialSubTasksDone* _pst to claim tasks.
-//  Both SubTasksDone and SequentialSubTasksDone call their method
-//  all_tasks_completed() to count the number of GC workers that have
-//  finished their work.  That logic is "when all the workers are
-//  finished the tasks are finished".
-//
-//  The pattern that appears  in the code is to set _n_threads
-//  to a value > 1 before a task that you would like executed in parallel
-//  and then to set it to 0 after that task has completed.  A value of
-//  0 is a "special" value in set_n_threads() which translates to
-//  setting _n_threads to 1.
-//
-//  Some code uses _n_termination to decide if work should be done in
-//  parallel.  The notorious possibly_parallel_oops_do() in threads.cpp
-//  is an example of such code.  Look for variable "is_par" for other
-//  examples.
-//
-//  The active_workers is not reset to 0 after a parallel phase.  It's
-//  value may be used in later phases and in one instance at least
-//  (the parallel remark) it has to be used (the parallel remark depends
-//  on the partitioning done in the previous parallel scavenge).
-
-class SharedHeap : public CollectedHeap {
-  friend class VMStructs;
-
-  friend class VM_GC_Operation;
-  friend class VM_CGC_Operation;
-
-protected:
-  // There should be only a single instance of "SharedHeap" in a program.
-  // This is enforced with the protected constructor below, which will also
-  // set the static pointer "_sh" to that instance.
-  static SharedHeap* _sh;
-
-  // If we're doing parallel GC, use this gang of threads.
-  FlexibleWorkGang* _workers;
-
-  // Full initialization is done in a concrete subtype's "initialize"
-  // function.
-  SharedHeap();
-
-  // Returns true if the calling thread holds the heap lock,
-  // or the calling thread is a par gc thread and the heap_lock is held
-  // by the vm thread doing a gc operation.
-  bool heap_lock_held_for_gc();
-  // True if the heap_lock is held by the a non-gc thread invoking a gc
-  // operation.
-  bool _thread_holds_heap_lock_for_gc;
-
-public:
-  static SharedHeap* heap() { return _sh; }
-
-  void set_barrier_set(BarrierSet* bs);
-
-  // Does operations required after initialization has been done.
-  virtual void post_initialize();
-
-  // Initialization of ("weak") reference processing support
-  virtual void ref_processing_init();
-
-  // Iteration functions.
-  void oop_iterate(ExtendedOopClosure* cl) = 0;
-
-  // Iterate over all spaces in use in the heap, in an undefined order.
-  virtual void space_iterate(SpaceClosure* cl) = 0;
-
-  // A SharedHeap will contain some number of spaces.  This finds the
-  // space whose reserved area contains the given address, or else returns
-  // NULL.
-  virtual Space* space_containing(const void* addr) const = 0;
-
-  bool no_gc_in_progress() { return !is_gc_active(); }
-
-  // Note, the below comment needs to be updated to reflect the changes
-  // introduced by JDK-8076225. This should be done as part of JDK-8076289.
-  //
-  //Some collectors will perform "process_strong_roots" in parallel.
-  // Such a call will involve claiming some fine-grained tasks, such as
-  // scanning of threads.  To make this process simpler, we provide the
-  // "strong_roots_parity()" method.  Collectors that start parallel tasks
-  // whose threads invoke "process_strong_roots" must
-  // call "change_strong_roots_parity" in sequential code starting such a
-  // task.  (This also means that a parallel thread may only call
-  // process_strong_roots once.)
-  //
-  // For calls to process_roots by sequential code, the parity is
-  // updated automatically.
-  //
-  // The idea is that objects representing fine-grained tasks, such as
-  // threads, will contain a "parity" field.  A task will is claimed in the
-  // current "process_roots" call only if its parity field is the
-  // same as the "strong_roots_parity"; task claiming is accomplished by
-  // updating the parity field to the strong_roots_parity with a CAS.
-  //
-  // If the client meats this spec, then strong_roots_parity() will have
-  // the following properties:
-  //   a) to return a different value than was returned before the last
-  //      call to change_strong_roots_parity, and
-  //   c) to never return a distinguished value (zero) with which such
-  //      task-claiming variables may be initialized, to indicate "never
-  //      claimed".
- public:
-
-  // Call these in sequential code around process_roots.
-  // strong_roots_prologue calls change_strong_roots_parity, if
-  // parallel tasks are enabled.
-  class StrongRootsScope : public MarkingCodeBlobClosure::MarkScope {
-    SharedHeap*   _sh;
-
-   public:
-    StrongRootsScope(SharedHeap* heap, bool activate = true);
-    ~StrongRootsScope();
-  };
-
- private:
-
- public:
-  FlexibleWorkGang* workers() const { return _workers; }
-
-  // The functions below are helper functions that a subclass of
-  // "SharedHeap" can use in the implementation of its virtual
-  // functions.
-
-public:
-
-  // Do anything common to GC's.
-  virtual void gc_prologue(bool full) = 0;
-  virtual void gc_epilogue(bool full) = 0;
-
-  // Sets the number of parallel threads that will be doing tasks
-  // (such as process roots) subsequently.
-  virtual void set_par_threads(uint t);
-};
-
-#endif // SHARE_VM_MEMORY_SHAREDHEAP_HPP
--- a/hotspot/src/share/vm/memory/space.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/space.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -31,6 +31,7 @@
 #include "memory/blockOffsetTable.inline.hpp"
 #include "memory/defNewGeneration.hpp"
 #include "memory/genCollectedHeap.hpp"
+#include "memory/genOopClosures.inline.hpp"
 #include "memory/space.hpp"
 #include "memory/space.inline.hpp"
 #include "memory/universe.inline.hpp"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/memory/strongRootsScope.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "classfile/stringTable.hpp"
+#include "code/nmethod.hpp"
+#include "memory/strongRootsScope.hpp"
+#include "runtime/thread.hpp"
+
+MarkScope::MarkScope(bool activate) : _active(activate) {
+  if (_active) {
+    nmethod::oops_do_marking_prologue();
+  }
+}
+
+MarkScope::~MarkScope() {
+  if (_active) {
+    nmethod::oops_do_marking_epilogue();
+  }
+}
+
+StrongRootsScope::StrongRootsScope(bool activate) : MarkScope(activate) {
+  if (_active) {
+    Threads::change_thread_claim_parity();
+    // Zero the claimed high water mark in the StringTable
+    StringTable::clear_parallel_claimed_index();
+  }
+}
+
+StrongRootsScope::~StrongRootsScope() {
+  Threads::assert_all_threads_claimed();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/memory/strongRootsScope.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_MEMORY_STRONGROOTSSCOPE_HPP
+#define SHARE_VM_MEMORY_STRONGROOTSSCOPE_HPP
+
+#include "memory/allocation.hpp"
+
+class MarkScope : public StackObj {
+ protected:
+  bool _active;
+ public:
+  MarkScope(bool activate = true);
+  ~MarkScope();
+};
+
+// Sets up and tears down the required state for parallel root processing.
+
+class StrongRootsScope : public MarkScope {
+ public:
+  StrongRootsScope(bool activate = true);
+  ~StrongRootsScope();
+};
+
+#endif // SHARE_VM_MEMORY_STRONGROOTSSCOPE_HPP
--- a/hotspot/src/share/vm/memory/tenuredGeneration.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/tenuredGeneration.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -36,6 +36,9 @@
 #include "oops/oop.inline.hpp"
 #include "runtime/java.hpp"
 #include "utilities/macros.hpp"
+#if INCLUDE_ALL_GCS
+#include "gc_implementation/parNew/parOopClosures.hpp"
+#endif
 
 TenuredGeneration::TenuredGeneration(ReservedSpace rs,
                                      size_t initial_byte_size, int level,
--- a/hotspot/src/share/vm/memory/universe.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/universe.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -687,6 +687,15 @@
   return JNI_OK;
 }
 
+template <class Heap, class Policy>
+jint Universe::create_heap() {
+  assert(_collectedHeap == NULL, "Heap already created");
+  Policy* policy = new Policy();
+  policy->initialize_all();
+  _collectedHeap = new Heap(policy);
+  return _collectedHeap->initialize();
+}
+
 // Choose the heap base address and oop encoding mode
 // when compressed oops are used:
 // Unscaled  - Use 32-bits oops without encoding when
@@ -696,50 +705,35 @@
 // HeapBased - Use compressed oops with heap base + encoding.
 
 jint Universe::initialize_heap() {
-
-  if (UseParallelGC) {
-#if INCLUDE_ALL_GCS
-    Universe::_collectedHeap = new ParallelScavengeHeap();
-#else  // INCLUDE_ALL_GCS
-    fatal("UseParallelGC not supported in this VM.");
-#endif // INCLUDE_ALL_GCS
-
-  } else if (UseG1GC) {
-#if INCLUDE_ALL_GCS
-    G1CollectorPolicyExt* g1p = new G1CollectorPolicyExt();
-    g1p->initialize_all();
-    G1CollectedHeap* g1h = new G1CollectedHeap(g1p);
-    Universe::_collectedHeap = g1h;
-#else  // INCLUDE_ALL_GCS
-    fatal("UseG1GC not supported in java kernel vm.");
-#endif // INCLUDE_ALL_GCS
+  jint status = JNI_ERR;
 
+#if !INCLUDE_ALL_GCS
+  if (UseParallelGC) {
+    fatal("UseParallelGC not supported in this VM.");
+  } else if (UseG1GC) {
+    fatal("UseG1GC not supported in this VM.");
+  } else if (UseConcMarkSweepGC) {
+    fatal("UseConcMarkSweepGC not supported in this VM.");
+#else
+  if (UseParallelGC) {
+    status = Universe::create_heap<ParallelScavengeHeap, GenerationSizer>();
+  } else if (UseG1GC) {
+    status = Universe::create_heap<G1CollectedHeap, G1CollectorPolicyExt>();
+  } else if (UseConcMarkSweepGC) {
+    status = Universe::create_heap<GenCollectedHeap, ConcurrentMarkSweepPolicy>();
+#endif
+  } else if (UseSerialGC) {
+    status = Universe::create_heap<GenCollectedHeap, MarkSweepPolicy>();
   } else {
-    GenCollectorPolicy *gc_policy;
+    ShouldNotReachHere();
+  }
 
-    if (UseSerialGC) {
-      gc_policy = new MarkSweepPolicy();
-    } else if (UseConcMarkSweepGC) {
-#if INCLUDE_ALL_GCS
-      gc_policy = new ConcurrentMarkSweepPolicy();
-#else  // INCLUDE_ALL_GCS
-      fatal("UseConcMarkSweepGC not supported in this VM.");
-#endif // INCLUDE_ALL_GCS
-    } else { // default old generation
-      gc_policy = new MarkSweepPolicy();
-    }
-    gc_policy->initialize_all();
-
-    Universe::_collectedHeap = new GenCollectedHeap(gc_policy);
+  if (status != JNI_OK) {
+    return status;
   }
 
   ThreadLocalAllocBuffer::set_max_size(Universe::heap()->max_tlab_size());
 
-  jint status = Universe::heap()->initialize();
-  if (status != JNI_OK) {
-    return status;
-  }
-
 #ifdef _LP64
   if (UseCompressedOops) {
     // Subtract a page because something can get allocated at heap base.
@@ -1063,7 +1057,7 @@
 
   MemoryService::add_metaspace_memory_pools();
 
-  MemoryService::set_universe_heap(Universe::_collectedHeap);
+  MemoryService::set_universe_heap(Universe::heap());
 #if INCLUDE_CDS
   SharedClassUtil::initialize(CHECK_false);
 #endif
--- a/hotspot/src/share/vm/memory/universe.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/memory/universe.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -214,6 +214,7 @@
   static size_t _heap_capacity_at_last_gc;
   static size_t _heap_used_at_last_gc;
 
+  template <class Heap, class Policy> static jint create_heap();
   static jint initialize_heap();
   static void initialize_basic_type_mirrors(TRAPS);
   static void fixup_mirrors(TRAPS);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/memory/virtualspace.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,1381 @@
+/*
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "memory/virtualspace.hpp"
+#include "oops/markOop.hpp"
+#include "oops/oop.inline.hpp"
+#include "services/memTracker.hpp"
+
+PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
+
+// ReservedSpace
+
+// Dummy constructor
+ReservedSpace::ReservedSpace() : _base(NULL), _size(0), _noaccess_prefix(0),
+    _alignment(0), _special(false), _executable(false) {
+}
+
+ReservedSpace::ReservedSpace(size_t size, size_t preferred_page_size) {
+  bool has_preferred_page_size = preferred_page_size != 0;
+  // Want to use large pages where possible and pad with small pages.
+  size_t page_size = has_preferred_page_size ? preferred_page_size : os::page_size_for_region_unaligned(size, 1);
+  bool large_pages = page_size != (size_t)os::vm_page_size();
+  size_t alignment;
+  if (large_pages && has_preferred_page_size) {
+    alignment = MAX2(page_size, (size_t)os::vm_allocation_granularity());
+    // ReservedSpace initialization requires size to be aligned to the given
+    // alignment. Align the size up.
+    size = align_size_up(size, alignment);
+  } else {
+    // Don't force the alignment to be large page aligned,
+    // since that will waste memory.
+    alignment = os::vm_allocation_granularity();
+  }
+  initialize(size, alignment, large_pages, NULL, false);
+}
+
+ReservedSpace::ReservedSpace(size_t size, size_t alignment,
+                             bool large,
+                             char* requested_address) {
+  initialize(size, alignment, large, requested_address, false);
+}
+
+ReservedSpace::ReservedSpace(size_t size, size_t alignment,
+                             bool large,
+                             bool executable) {
+  initialize(size, alignment, large, NULL, executable);
+}
+
+// Helper method.
+static bool failed_to_reserve_as_requested(char* base, char* requested_address,
+                                           const size_t size, bool special)
+{
+  if (base == requested_address || requested_address == NULL)
+    return false; // did not fail
+
+  if (base != NULL) {
+    // Different reserve address may be acceptable in other cases
+    // but for compressed oops heap should be at requested address.
+    assert(UseCompressedOops, "currently requested address used only for compressed oops");
+    if (PrintCompressedOopsMode) {
+      tty->cr();
+      tty->print_cr("Reserved memory not at requested address: " PTR_FORMAT " vs " PTR_FORMAT, base, requested_address);
+    }
+    // OS ignored requested address. Try different address.
+    if (special) {
+      if (!os::release_memory_special(base, size)) {
+        fatal("os::release_memory_special failed");
+      }
+    } else {
+      if (!os::release_memory(base, size)) {
+        fatal("os::release_memory failed");
+      }
+    }
+  }
+  return true;
+}
+
+void ReservedSpace::initialize(size_t size, size_t alignment, bool large,
+                               char* requested_address,
+                               bool executable) {
+  const size_t granularity = os::vm_allocation_granularity();
+  assert((size & (granularity - 1)) == 0,
+         "size not aligned to os::vm_allocation_granularity()");
+  assert((alignment & (granularity - 1)) == 0,
+         "alignment not aligned to os::vm_allocation_granularity()");
+  assert(alignment == 0 || is_power_of_2((intptr_t)alignment),
+         "not a power of 2");
+
+  alignment = MAX2(alignment, (size_t)os::vm_page_size());
+
+  _base = NULL;
+  _size = 0;
+  _special = false;
+  _executable = executable;
+  _alignment = 0;
+  _noaccess_prefix = 0;
+  if (size == 0) {
+    return;
+  }
+
+  // If OS doesn't support demand paging for large page memory, we need
+  // to use reserve_memory_special() to reserve and pin the entire region.
+  bool special = large && !os::can_commit_large_page_memory();
+  char* base = NULL;
+
+  if (special) {
+
+    base = os::reserve_memory_special(size, alignment, requested_address, executable);
+
+    if (base != NULL) {
+      if (failed_to_reserve_as_requested(base, requested_address, size, true)) {
+        // OS ignored requested address. Try different address.
+        return;
+      }
+      // Check alignment constraints.
+      assert((uintptr_t) base % alignment == 0,
+             err_msg("Large pages returned a non-aligned address, base: "
+                 PTR_FORMAT " alignment: " PTR_FORMAT,
+                 base, (void*)(uintptr_t)alignment));
+      _special = true;
+    } else {
+      // failed; try to reserve regular memory below
+      if (UseLargePages && (!FLAG_IS_DEFAULT(UseLargePages) ||
+                            !FLAG_IS_DEFAULT(LargePageSizeInBytes))) {
+        if (PrintCompressedOopsMode) {
+          tty->cr();
+          tty->print_cr("Reserve regular memory without large pages.");
+        }
+      }
+    }
+  }
+
+  if (base == NULL) {
+    // Optimistically assume that the OSes returns an aligned base pointer.
+    // When reserving a large address range, most OSes seem to align to at
+    // least 64K.
+
+    // If the memory was requested at a particular address, use
+    // os::attempt_reserve_memory_at() to avoid over mapping something
+    // important.  If available space is not detected, return NULL.
+
+    if (requested_address != 0) {
+      base = os::attempt_reserve_memory_at(size, requested_address);
+      if (failed_to_reserve_as_requested(base, requested_address, size, false)) {
+        // OS ignored requested address. Try different address.
+        base = NULL;
+      }
+    } else {
+      base = os::reserve_memory(size, NULL, alignment);
+    }
+
+    if (base == NULL) return;
+
+    // Check alignment constraints
+    if ((((size_t)base) & (alignment - 1)) != 0) {
+      // Base not aligned, retry
+      if (!os::release_memory(base, size)) fatal("os::release_memory failed");
+      // Make sure that size is aligned
+      size = align_size_up(size, alignment);
+      base = os::reserve_memory_aligned(size, alignment);
+
+      if (requested_address != 0 &&
+          failed_to_reserve_as_requested(base, requested_address, size, false)) {
+        // As a result of the alignment constraints, the allocated base differs
+        // from the requested address. Return back to the caller who can
+        // take remedial action (like try again without a requested address).
+        assert(_base == NULL, "should be");
+        return;
+      }
+    }
+  }
+  // Done
+  _base = base;
+  _size = size;
+  _alignment = alignment;
+}
+
+
+ReservedSpace::ReservedSpace(char* base, size_t size, size_t alignment,
+                             bool special, bool executable) {
+  assert((size % os::vm_allocation_granularity()) == 0,
+         "size not allocation aligned");
+  _base = base;
+  _size = size;
+  _alignment = alignment;
+  _noaccess_prefix = 0;
+  _special = special;
+  _executable = executable;
+}
+
+
+ReservedSpace ReservedSpace::first_part(size_t partition_size, size_t alignment,
+                                        bool split, bool realloc) {
+  assert(partition_size <= size(), "partition failed");
+  if (split) {
+    os::split_reserved_memory(base(), size(), partition_size, realloc);
+  }
+  ReservedSpace result(base(), partition_size, alignment, special(),
+                       executable());
+  return result;
+}
+
+
+ReservedSpace
+ReservedSpace::last_part(size_t partition_size, size_t alignment) {
+  assert(partition_size <= size(), "partition failed");
+  ReservedSpace result(base() + partition_size, size() - partition_size,
+                       alignment, special(), executable());
+  return result;
+}
+
+
+size_t ReservedSpace::page_align_size_up(size_t size) {
+  return align_size_up(size, os::vm_page_size());
+}
+
+
+size_t ReservedSpace::page_align_size_down(size_t size) {
+  return align_size_down(size, os::vm_page_size());
+}
+
+
+size_t ReservedSpace::allocation_align_size_up(size_t size) {
+  return align_size_up(size, os::vm_allocation_granularity());
+}
+
+
+size_t ReservedSpace::allocation_align_size_down(size_t size) {
+  return align_size_down(size, os::vm_allocation_granularity());
+}
+
+
+void ReservedSpace::release() {
+  if (is_reserved()) {
+    char *real_base = _base - _noaccess_prefix;
+    const size_t real_size = _size + _noaccess_prefix;
+    if (special()) {
+      os::release_memory_special(real_base, real_size);
+    } else{
+      os::release_memory(real_base, real_size);
+    }
+    _base = NULL;
+    _size = 0;
+    _noaccess_prefix = 0;
+    _alignment = 0;
+    _special = false;
+    _executable = false;
+  }
+}
+
+static size_t noaccess_prefix_size(size_t alignment) {
+  return lcm(os::vm_page_size(), alignment);
+}
+
+void ReservedHeapSpace::establish_noaccess_prefix() {
+  assert(_alignment >= (size_t)os::vm_page_size(), "must be at least page size big");
+  _noaccess_prefix = noaccess_prefix_size(_alignment);
+
+  if (base() && base() + _size > (char *)OopEncodingHeapMax) {
+    if (true
+        WIN64_ONLY(&& !UseLargePages)
+        AIX_ONLY(&& os::vm_page_size() != SIZE_64K)) {
+      // Protect memory at the base of the allocated region.
+      // If special, the page was committed (only matters on windows)
+      if (!os::protect_memory(_base, _noaccess_prefix, os::MEM_PROT_NONE, _special)) {
+        fatal("cannot protect protection page");
+      }
+      if (PrintCompressedOopsMode) {
+        tty->cr();
+        tty->print_cr("Protected page at the reserved heap base: "
+                      PTR_FORMAT " / " INTX_FORMAT " bytes", _base, _noaccess_prefix);
+      }
+      assert(Universe::narrow_oop_use_implicit_null_checks() == true, "not initialized?");
+    } else {
+      Universe::set_narrow_oop_use_implicit_null_checks(false);
+    }
+  }
+
+  _base += _noaccess_prefix;
+  _size -= _noaccess_prefix;
+  assert(((uintptr_t)_base % _alignment == 0), "must be exactly of required alignment");
+}
+
+// Tries to allocate memory of size 'size' at address requested_address with alignment 'alignment'.
+// Does not check whether the reserved memory actually is at requested_address, as the memory returned
+// might still fulfill the wishes of the caller.
+// Assures the memory is aligned to 'alignment'.
+// NOTE: If ReservedHeapSpace already points to some reserved memory this is freed, first.
+void ReservedHeapSpace::try_reserve_heap(size_t size,
+                                         size_t alignment,
+                                         bool large,
+                                         char* requested_address) {
+  if (_base != NULL) {
+    // We tried before, but we didn't like the address delivered.
+    release();
+  }
+
+  // If OS doesn't support demand paging for large page memory, we need
+  // to use reserve_memory_special() to reserve and pin the entire region.
+  bool special = large && !os::can_commit_large_page_memory();
+  char* base = NULL;
+
+  if (PrintCompressedOopsMode && Verbose) {
+    tty->print("Trying to allocate at address " PTR_FORMAT " heap of size " PTR_FORMAT ".\n",
+               requested_address, (address)size);
+  }
+
+  if (special) {
+    base = os::reserve_memory_special(size, alignment, requested_address, false);
+
+    if (base != NULL) {
+      // Check alignment constraints.
+      assert((uintptr_t) base % alignment == 0,
+             err_msg("Large pages returned a non-aligned address, base: "
+                     PTR_FORMAT " alignment: " PTR_FORMAT,
+                     base, (void*)(uintptr_t)alignment));
+      _special = true;
+    }
+  }
+
+  if (base == NULL) {
+    // Failed; try to reserve regular memory below
+    if (UseLargePages && (!FLAG_IS_DEFAULT(UseLargePages) ||
+                          !FLAG_IS_DEFAULT(LargePageSizeInBytes))) {
+      if (PrintCompressedOopsMode) {
+        tty->cr();
+        tty->print_cr("Reserve regular memory without large pages.");
+      }
+    }
+
+    // Optimistically assume that the OSes returns an aligned base pointer.
+    // When reserving a large address range, most OSes seem to align to at
+    // least 64K.
+
+    // If the memory was requested at a particular address, use
+    // os::attempt_reserve_memory_at() to avoid over mapping something
+    // important.  If available space is not detected, return NULL.
+
+    if (requested_address != 0) {
+      base = os::attempt_reserve_memory_at(size, requested_address);
+    } else {
+      base = os::reserve_memory(size, NULL, alignment);
+    }
+  }
+  if (base == NULL) { return; }
+
+  // Done
+  _base = base;
+  _size = size;
+  _alignment = alignment;
+
+  // Check alignment constraints
+  if ((((size_t)base) & (alignment - 1)) != 0) {
+    // Base not aligned, retry.
+    release();
+  }
+}
+
+void ReservedHeapSpace::try_reserve_range(char *highest_start,
+                                          char *lowest_start,
+                                          size_t attach_point_alignment,
+                                          char *aligned_heap_base_min_address,
+                                          char *upper_bound,
+                                          size_t size,
+                                          size_t alignment,
+                                          bool large) {
+  const size_t attach_range = highest_start - lowest_start;
+  // Cap num_attempts at possible number.
+  // At least one is possible even for 0 sized attach range.
+  const uint64_t num_attempts_possible = (attach_range / attach_point_alignment) + 1;
+  const uint64_t num_attempts_to_try   = MIN2((uint64_t)HeapSearchSteps, num_attempts_possible);
+
+  const size_t stepsize = (attach_range == 0) ? // Only one try.
+    (size_t) highest_start : align_size_up(attach_range / num_attempts_to_try, attach_point_alignment);
+
+  // Try attach points from top to bottom.
+  char* attach_point = highest_start;
+  while (attach_point >= lowest_start  &&
+         attach_point <= highest_start &&  // Avoid wrap around.
+         ((_base == NULL) ||
+          (_base < aligned_heap_base_min_address || _base + size > upper_bound))) {
+    try_reserve_heap(size, alignment, large, attach_point);
+    attach_point -= stepsize;
+  }
+}
+
+#define SIZE_64K  ((uint64_t) UCONST64(      0x10000))
+#define SIZE_256M ((uint64_t) UCONST64(   0x10000000))
+#define SIZE_32G  ((uint64_t) UCONST64(  0x800000000))
+
+// Helper for heap allocation. Returns an array with addresses
+// (OS-specific) which are suited for disjoint base mode. Array is
+// NULL terminated.
+static char** get_attach_addresses_for_disjoint_mode() {
+  static uint64_t addresses[] = {
+     2 * SIZE_32G,
+     3 * SIZE_32G,
+     4 * SIZE_32G,
+     8 * SIZE_32G,
+    10 * SIZE_32G,
+     1 * SIZE_64K * SIZE_32G,
+     2 * SIZE_64K * SIZE_32G,
+     3 * SIZE_64K * SIZE_32G,
+     4 * SIZE_64K * SIZE_32G,
+    16 * SIZE_64K * SIZE_32G,
+    32 * SIZE_64K * SIZE_32G,
+    34 * SIZE_64K * SIZE_32G,
+    0
+  };
+
+  // Sort out addresses smaller than HeapBaseMinAddress. This assumes
+  // the array is sorted.
+  uint i = 0;
+  while (addresses[i] != 0 &&
+         (addresses[i] < OopEncodingHeapMax || addresses[i] < HeapBaseMinAddress)) {
+    i++;
+  }
+  uint start = i;
+
+  // Avoid more steps than requested.
+  i = 0;
+  while (addresses[start+i] != 0) {
+    if (i == HeapSearchSteps) {
+      addresses[start+i] = 0;
+      break;
+    }
+    i++;
+  }
+
+  return (char**) &addresses[start];
+}
+
+void ReservedHeapSpace::initialize_compressed_heap(const size_t size, size_t alignment, bool large) {
+  guarantee(size + noaccess_prefix_size(alignment) <= OopEncodingHeapMax,
+            "can not allocate compressed oop heap for this size");
+  guarantee(alignment == MAX2(alignment, (size_t)os::vm_page_size()), "alignment too small");
+  assert(HeapBaseMinAddress > 0, "sanity");
+
+  const size_t granularity = os::vm_allocation_granularity();
+  assert((size & (granularity - 1)) == 0,
+         "size not aligned to os::vm_allocation_granularity()");
+  assert((alignment & (granularity - 1)) == 0,
+         "alignment not aligned to os::vm_allocation_granularity()");
+  assert(alignment == 0 || is_power_of_2((intptr_t)alignment),
+         "not a power of 2");
+
+  // The necessary attach point alignment for generated wish addresses.
+  // This is needed to increase the chance of attaching for mmap and shmat.
+  const size_t os_attach_point_alignment =
+    AIX_ONLY(SIZE_256M)  // Known shm boundary alignment.
+    NOT_AIX(os::vm_allocation_granularity());
+  const size_t attach_point_alignment = lcm(alignment, os_attach_point_alignment);
+
+  char *aligned_heap_base_min_address = (char *)align_ptr_up((void *)HeapBaseMinAddress, alignment);
+  size_t noaccess_prefix = ((aligned_heap_base_min_address + size) > (char*)OopEncodingHeapMax) ?
+    noaccess_prefix_size(alignment) : 0;
+
+  // Attempt to alloc at user-given address.
+  if (!FLAG_IS_DEFAULT(HeapBaseMinAddress)) {
+    try_reserve_heap(size + noaccess_prefix, alignment, large, aligned_heap_base_min_address);
+    if (_base != aligned_heap_base_min_address) { // Enforce this exact address.
+      release();
+    }
+  }
+
+  // Keep heap at HeapBaseMinAddress.
+  if (_base == NULL) {
+
+    // Try to allocate the heap at addresses that allow efficient oop compression.
+    // Different schemes are tried, in order of decreasing optimization potential.
+    //
+    // For this, try_reserve_heap() is called with the desired heap base addresses.
+    // A call into the os layer to allocate at a given address can return memory
+    // at a different address than requested.  Still, this might be memory at a useful
+    // address. try_reserve_heap() always returns this allocated memory, as only here
+    // the criteria for a good heap are checked.
+
+    // Attempt to allocate so that we can run without base and scale (32-Bit unscaled compressed oops).
+    // Give it several tries from top of range to bottom.
+    if (aligned_heap_base_min_address + size <= (char *)UnscaledOopHeapMax) {
+
+      // Calc address range within we try to attach (range of possible start addresses).
+      char* const highest_start = (char *)align_ptr_down((char *)UnscaledOopHeapMax - size, attach_point_alignment);
+      char* const lowest_start  = (char *)align_ptr_up  (        aligned_heap_base_min_address             , attach_point_alignment);
+      try_reserve_range(highest_start, lowest_start, attach_point_alignment,
+                        aligned_heap_base_min_address, (char *)UnscaledOopHeapMax, size, alignment, large);
+    }
+
+    // zerobased: Attempt to allocate in the lower 32G.
+    // But leave room for the compressed class pointers, which is allocated above
+    // the heap.
+    char *zerobased_max = (char *)OopEncodingHeapMax;
+    const size_t class_space = align_size_up(CompressedClassSpaceSize, alignment);
+    // For small heaps, save some space for compressed class pointer
+    // space so it can be decoded with no base.
+    if (UseCompressedClassPointers && !UseSharedSpaces &&
+        OopEncodingHeapMax <= KlassEncodingMetaspaceMax &&
+        (uint64_t)(aligned_heap_base_min_address + size + class_space) <= KlassEncodingMetaspaceMax) {
+      zerobased_max = (char *)OopEncodingHeapMax - class_space;
+    }
+
+    // Give it several tries from top of range to bottom.
+    if (aligned_heap_base_min_address + size <= zerobased_max &&    // Zerobased theoretical possible.
+        ((_base == NULL) ||                        // No previous try succeeded.
+         (_base + size > zerobased_max))) {        // Unscaled delivered an arbitrary address.
+
+      // Calc address range within we try to attach (range of possible start addresses).
+      char *const highest_start = (char *)align_ptr_down(zerobased_max - size, attach_point_alignment);
+      // Need to be careful about size being guaranteed to be less
+      // than UnscaledOopHeapMax due to type constraints.
+      char *lowest_start = aligned_heap_base_min_address;
+      uint64_t unscaled_end = UnscaledOopHeapMax - size;
+      if (unscaled_end < UnscaledOopHeapMax) { // unscaled_end wrapped if size is large
+        lowest_start = MAX2(lowest_start, (char*)unscaled_end);
+      }
+      lowest_start  = (char *)align_ptr_up(lowest_start, attach_point_alignment);
+      try_reserve_range(highest_start, lowest_start, attach_point_alignment,
+                        aligned_heap_base_min_address, zerobased_max, size, alignment, large);
+    }
+
+    // Now we go for heaps with base != 0.  We need a noaccess prefix to efficiently
+    // implement null checks.
+    noaccess_prefix = noaccess_prefix_size(alignment);
+
+    // Try to attach at addresses that are aligned to OopEncodingHeapMax. Disjointbase mode.
+    char** addresses = get_attach_addresses_for_disjoint_mode();
+    int i = 0;
+    while (addresses[i] &&                                 // End of array not yet reached.
+           ((_base == NULL) ||                             // No previous try succeeded.
+            (_base + size >  (char *)OopEncodingHeapMax && // Not zerobased or unscaled address.
+             !Universe::is_disjoint_heap_base_address((address)_base)))) {  // Not disjoint address.
+      char* const attach_point = addresses[i];
+      assert(attach_point >= aligned_heap_base_min_address, "Flag support broken");
+      try_reserve_heap(size + noaccess_prefix, alignment, large, attach_point);
+      i++;
+    }
+
+    // Last, desperate try without any placement.
+    if (_base == NULL) {
+      if (PrintCompressedOopsMode && Verbose) {
+        tty->print("Trying to allocate at address NULL heap of size " PTR_FORMAT ".\n", (address)size + noaccess_prefix);
+      }
+      initialize(size + noaccess_prefix, alignment, large, NULL, false);
+    }
+  }
+}
+
+ReservedHeapSpace::ReservedHeapSpace(size_t size, size_t alignment, bool large) : ReservedSpace() {
+
+  if (size == 0) {
+    return;
+  }
+
+  // Heap size should be aligned to alignment, too.
+  guarantee(is_size_aligned(size, alignment), "set by caller");
+
+  if (UseCompressedOops) {
+    initialize_compressed_heap(size, alignment, large);
+    if (_size > size) {
+      // We allocated heap with noaccess prefix.
+      // It can happen we get a zerobased/unscaled heap with noaccess prefix,
+      // if we had to try at arbitrary address.
+      establish_noaccess_prefix();
+    }
+  } else {
+    initialize(size, alignment, large, NULL, false);
+  }
+
+  assert(markOopDesc::encode_pointer_as_mark(_base)->decode_pointer() == _base,
+         "area must be distinguishable from marks for mark-sweep");
+  assert(markOopDesc::encode_pointer_as_mark(&_base[size])->decode_pointer() == &_base[size],
+         "area must be distinguishable from marks for mark-sweep");
+
+  if (base() > 0) {
+    MemTracker::record_virtual_memory_type((address)base(), mtJavaHeap);
+  }
+}
+
+// Reserve space for code segment.  Same as Java heap only we mark this as
+// executable.
+ReservedCodeSpace::ReservedCodeSpace(size_t r_size,
+                                     size_t rs_align,
+                                     bool large) :
+  ReservedSpace(r_size, rs_align, large, /*executable*/ true) {
+  MemTracker::record_virtual_memory_type((address)base(), mtCode);
+}
+
+// VirtualSpace
+
+VirtualSpace::VirtualSpace() {
+  _low_boundary           = NULL;
+  _high_boundary          = NULL;
+  _low                    = NULL;
+  _high                   = NULL;
+  _lower_high             = NULL;
+  _middle_high            = NULL;
+  _upper_high             = NULL;
+  _lower_high_boundary    = NULL;
+  _middle_high_boundary   = NULL;
+  _upper_high_boundary    = NULL;
+  _lower_alignment        = 0;
+  _middle_alignment       = 0;
+  _upper_alignment        = 0;
+  _special                = false;
+  _executable             = false;
+}
+
+
+bool VirtualSpace::initialize(ReservedSpace rs, size_t committed_size) {
+  const size_t max_commit_granularity = os::page_size_for_region_unaligned(rs.size(), 1);
+  return initialize_with_granularity(rs, committed_size, max_commit_granularity);
+}
+
+bool VirtualSpace::initialize_with_granularity(ReservedSpace rs, size_t committed_size, size_t max_commit_granularity) {
+  if(!rs.is_reserved()) return false;  // allocation failed.
+  assert(_low_boundary == NULL, "VirtualSpace already initialized");
+  assert(max_commit_granularity > 0, "Granularity must be non-zero.");
+
+  _low_boundary  = rs.base();
+  _high_boundary = low_boundary() + rs.size();
+
+  _low = low_boundary();
+  _high = low();
+
+  _special = rs.special();
+  _executable = rs.executable();
+
+  // When a VirtualSpace begins life at a large size, make all future expansion
+  // and shrinking occur aligned to a granularity of large pages.  This avoids
+  // fragmentation of physical addresses that inhibits the use of large pages
+  // by the OS virtual memory system.  Empirically,  we see that with a 4MB
+  // page size, the only spaces that get handled this way are codecache and
+  // the heap itself, both of which provide a substantial performance
+  // boost in many benchmarks when covered by large pages.
+  //
+  // No attempt is made to force large page alignment at the very top and
+  // bottom of the space if they are not aligned so already.
+  _lower_alignment  = os::vm_page_size();
+  _middle_alignment = max_commit_granularity;
+  _upper_alignment  = os::vm_page_size();
+
+  // End of each region
+  _lower_high_boundary = (char*) round_to((intptr_t) low_boundary(), middle_alignment());
+  _middle_high_boundary = (char*) round_down((intptr_t) high_boundary(), middle_alignment());
+  _upper_high_boundary = high_boundary();
+
+  // High address of each region
+  _lower_high = low_boundary();
+  _middle_high = lower_high_boundary();
+  _upper_high = middle_high_boundary();
+
+  // commit to initial size
+  if (committed_size > 0) {
+    if (!expand_by(committed_size)) {
+      return false;
+    }
+  }
+  return true;
+}
+
+
+VirtualSpace::~VirtualSpace() {
+  release();
+}
+
+
+void VirtualSpace::release() {
+  // This does not release memory it never reserved.
+  // Caller must release via rs.release();
+  _low_boundary           = NULL;
+  _high_boundary          = NULL;
+  _low                    = NULL;
+  _high                   = NULL;
+  _lower_high             = NULL;
+  _middle_high            = NULL;
+  _upper_high             = NULL;
+  _lower_high_boundary    = NULL;
+  _middle_high_boundary   = NULL;
+  _upper_high_boundary    = NULL;
+  _lower_alignment        = 0;
+  _middle_alignment       = 0;
+  _upper_alignment        = 0;
+  _special                = false;
+  _executable             = false;
+}
+
+
+size_t VirtualSpace::committed_size() const {
+  return pointer_delta(high(), low(), sizeof(char));
+}
+
+
+size_t VirtualSpace::reserved_size() const {
+  return pointer_delta(high_boundary(), low_boundary(), sizeof(char));
+}
+
+
+size_t VirtualSpace::uncommitted_size()  const {
+  return reserved_size() - committed_size();
+}
+
+size_t VirtualSpace::actual_committed_size() const {
+  // Special VirtualSpaces commit all reserved space up front.
+  if (special()) {
+    return reserved_size();
+  }
+
+  size_t committed_low    = pointer_delta(_lower_high,  _low_boundary,         sizeof(char));
+  size_t committed_middle = pointer_delta(_middle_high, _lower_high_boundary,  sizeof(char));
+  size_t committed_high   = pointer_delta(_upper_high,  _middle_high_boundary, sizeof(char));
+
+#ifdef ASSERT
+  size_t lower  = pointer_delta(_lower_high_boundary,  _low_boundary,         sizeof(char));
+  size_t middle = pointer_delta(_middle_high_boundary, _lower_high_boundary,  sizeof(char));
+  size_t upper  = pointer_delta(_upper_high_boundary,  _middle_high_boundary, sizeof(char));
+
+  if (committed_high > 0) {
+    assert(committed_low == lower, "Must be");
+    assert(committed_middle == middle, "Must be");
+  }
+
+  if (committed_middle > 0) {
+    assert(committed_low == lower, "Must be");
+  }
+  if (committed_middle < middle) {
+    assert(committed_high == 0, "Must be");
+  }
+
+  if (committed_low < lower) {
+    assert(committed_high == 0, "Must be");
+    assert(committed_middle == 0, "Must be");
+  }
+#endif
+
+  return committed_low + committed_middle + committed_high;
+}
+
+
+bool VirtualSpace::contains(const void* p) const {
+  return low() <= (const char*) p && (const char*) p < high();
+}
+
+/*
+   First we need to determine if a particular virtual space is using large
+   pages.  This is done at the initialize function and only virtual spaces
+   that are larger than LargePageSizeInBytes use large pages.  Once we
+   have determined this, all expand_by and shrink_by calls must grow and
+   shrink by large page size chunks.  If a particular request
+   is within the current large page, the call to commit and uncommit memory
+   can be ignored.  In the case that the low and high boundaries of this
+   space is not large page aligned, the pages leading to the first large
+   page address and the pages after the last large page address must be
+   allocated with default pages.
+*/
+bool VirtualSpace::expand_by(size_t bytes, bool pre_touch) {
+  if (uncommitted_size() < bytes) return false;
+
+  if (special()) {
+    // don't commit memory if the entire space is pinned in memory
+    _high += bytes;
+    return true;
+  }
+
+  char* previous_high = high();
+  char* unaligned_new_high = high() + bytes;
+  assert(unaligned_new_high <= high_boundary(),
+         "cannot expand by more than upper boundary");
+
+  // Calculate where the new high for each of the regions should be.  If
+  // the low_boundary() and high_boundary() are LargePageSizeInBytes aligned
+  // then the unaligned lower and upper new highs would be the
+  // lower_high() and upper_high() respectively.
+  char* unaligned_lower_new_high =
+    MIN2(unaligned_new_high, lower_high_boundary());
+  char* unaligned_middle_new_high =
+    MIN2(unaligned_new_high, middle_high_boundary());
+  char* unaligned_upper_new_high =
+    MIN2(unaligned_new_high, upper_high_boundary());
+
+  // Align the new highs based on the regions alignment.  lower and upper
+  // alignment will always be default page size.  middle alignment will be
+  // LargePageSizeInBytes if the actual size of the virtual space is in
+  // fact larger than LargePageSizeInBytes.
+  char* aligned_lower_new_high =
+    (char*) round_to((intptr_t) unaligned_lower_new_high, lower_alignment());
+  char* aligned_middle_new_high =
+    (char*) round_to((intptr_t) unaligned_middle_new_high, middle_alignment());
+  char* aligned_upper_new_high =
+    (char*) round_to((intptr_t) unaligned_upper_new_high, upper_alignment());
+
+  // Determine which regions need to grow in this expand_by call.
+  // If you are growing in the lower region, high() must be in that
+  // region so calculate the size based on high().  For the middle and
+  // upper regions, determine the starting point of growth based on the
+  // location of high().  By getting the MAX of the region's low address
+  // (or the previous region's high address) and high(), we can tell if it
+  // is an intra or inter region growth.
+  size_t lower_needs = 0;
+  if (aligned_lower_new_high > lower_high()) {
+    lower_needs =
+      pointer_delta(aligned_lower_new_high, lower_high(), sizeof(char));
+  }
+  size_t middle_needs = 0;
+  if (aligned_middle_new_high > middle_high()) {
+    middle_needs =
+      pointer_delta(aligned_middle_new_high, middle_high(), sizeof(char));
+  }
+  size_t upper_needs = 0;
+  if (aligned_upper_new_high > upper_high()) {
+    upper_needs =
+      pointer_delta(aligned_upper_new_high, upper_high(), sizeof(char));
+  }
+
+  // Check contiguity.
+  assert(low_boundary() <= lower_high() &&
+         lower_high() <= lower_high_boundary(),
+         "high address must be contained within the region");
+  assert(lower_high_boundary() <= middle_high() &&
+         middle_high() <= middle_high_boundary(),
+         "high address must be contained within the region");
+  assert(middle_high_boundary() <= upper_high() &&
+         upper_high() <= upper_high_boundary(),
+         "high address must be contained within the region");
+
+  // Commit regions
+  if (lower_needs > 0) {
+    assert(low_boundary() <= lower_high() &&
+           lower_high() + lower_needs <= lower_high_boundary(),
+           "must not expand beyond region");
+    if (!os::commit_memory(lower_high(), lower_needs, _executable)) {
+      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
+                         ", lower_needs=" SIZE_FORMAT ", %d) failed",
+                         lower_high(), lower_needs, _executable);)
+      return false;
+    } else {
+      _lower_high += lower_needs;
+    }
+  }
+  if (middle_needs > 0) {
+    assert(lower_high_boundary() <= middle_high() &&
+           middle_high() + middle_needs <= middle_high_boundary(),
+           "must not expand beyond region");
+    if (!os::commit_memory(middle_high(), middle_needs, middle_alignment(),
+                           _executable)) {
+      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
+                         ", middle_needs=" SIZE_FORMAT ", " SIZE_FORMAT
+                         ", %d) failed", middle_high(), middle_needs,
+                         middle_alignment(), _executable);)
+      return false;
+    }
+    _middle_high += middle_needs;
+  }
+  if (upper_needs > 0) {
+    assert(middle_high_boundary() <= upper_high() &&
+           upper_high() + upper_needs <= upper_high_boundary(),
+           "must not expand beyond region");
+    if (!os::commit_memory(upper_high(), upper_needs, _executable)) {
+      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
+                         ", upper_needs=" SIZE_FORMAT ", %d) failed",
+                         upper_high(), upper_needs, _executable);)
+      return false;
+    } else {
+      _upper_high += upper_needs;
+    }
+  }
+
+  if (pre_touch || AlwaysPreTouch) {
+    os::pretouch_memory(previous_high, unaligned_new_high);
+  }
+
+  _high += bytes;
+  return true;
+}
+
+// A page is uncommitted if the contents of the entire page is deemed unusable.
+// Continue to decrement the high() pointer until it reaches a page boundary
+// in which case that particular page can now be uncommitted.
+void VirtualSpace::shrink_by(size_t size) {
+  if (committed_size() < size)
+    fatal("Cannot shrink virtual space to negative size");
+
+  if (special()) {
+    // don't uncommit if the entire space is pinned in memory
+    _high -= size;
+    return;
+  }
+
+  char* unaligned_new_high = high() - size;
+  assert(unaligned_new_high >= low_boundary(), "cannot shrink past lower boundary");
+
+  // Calculate new unaligned address
+  char* unaligned_upper_new_high =
+    MAX2(unaligned_new_high, middle_high_boundary());
+  char* unaligned_middle_new_high =
+    MAX2(unaligned_new_high, lower_high_boundary());
+  char* unaligned_lower_new_high =
+    MAX2(unaligned_new_high, low_boundary());
+
+  // Align address to region's alignment
+  char* aligned_upper_new_high =
+    (char*) round_to((intptr_t) unaligned_upper_new_high, upper_alignment());
+  char* aligned_middle_new_high =
+    (char*) round_to((intptr_t) unaligned_middle_new_high, middle_alignment());
+  char* aligned_lower_new_high =
+    (char*) round_to((intptr_t) unaligned_lower_new_high, lower_alignment());
+
+  // Determine which regions need to shrink
+  size_t upper_needs = 0;
+  if (aligned_upper_new_high < upper_high()) {
+    upper_needs =
+      pointer_delta(upper_high(), aligned_upper_new_high, sizeof(char));
+  }
+  size_t middle_needs = 0;
+  if (aligned_middle_new_high < middle_high()) {
+    middle_needs =
+      pointer_delta(middle_high(), aligned_middle_new_high, sizeof(char));
+  }
+  size_t lower_needs = 0;
+  if (aligned_lower_new_high < lower_high()) {
+    lower_needs =
+      pointer_delta(lower_high(), aligned_lower_new_high, sizeof(char));
+  }
+
+  // Check contiguity.
+  assert(middle_high_boundary() <= upper_high() &&
+         upper_high() <= upper_high_boundary(),
+         "high address must be contained within the region");
+  assert(lower_high_boundary() <= middle_high() &&
+         middle_high() <= middle_high_boundary(),
+         "high address must be contained within the region");
+  assert(low_boundary() <= lower_high() &&
+         lower_high() <= lower_high_boundary(),
+         "high address must be contained within the region");
+
+  // Uncommit
+  if (upper_needs > 0) {
+    assert(middle_high_boundary() <= aligned_upper_new_high &&
+           aligned_upper_new_high + upper_needs <= upper_high_boundary(),
+           "must not shrink beyond region");
+    if (!os::uncommit_memory(aligned_upper_new_high, upper_needs)) {
+      debug_only(warning("os::uncommit_memory failed"));
+      return;
+    } else {
+      _upper_high -= upper_needs;
+    }
+  }
+  if (middle_needs > 0) {
+    assert(lower_high_boundary() <= aligned_middle_new_high &&
+           aligned_middle_new_high + middle_needs <= middle_high_boundary(),
+           "must not shrink beyond region");
+    if (!os::uncommit_memory(aligned_middle_new_high, middle_needs)) {
+      debug_only(warning("os::uncommit_memory failed"));
+      return;
+    } else {
+      _middle_high -= middle_needs;
+    }
+  }
+  if (lower_needs > 0) {
+    assert(low_boundary() <= aligned_lower_new_high &&
+           aligned_lower_new_high + lower_needs <= lower_high_boundary(),
+           "must not shrink beyond region");
+    if (!os::uncommit_memory(aligned_lower_new_high, lower_needs)) {
+      debug_only(warning("os::uncommit_memory failed"));
+      return;
+    } else {
+      _lower_high -= lower_needs;
+    }
+  }
+
+  _high -= size;
+}
+
+#ifndef PRODUCT
+void VirtualSpace::check_for_contiguity() {
+  // Check contiguity.
+  assert(low_boundary() <= lower_high() &&
+         lower_high() <= lower_high_boundary(),
+         "high address must be contained within the region");
+  assert(lower_high_boundary() <= middle_high() &&
+         middle_high() <= middle_high_boundary(),
+         "high address must be contained within the region");
+  assert(middle_high_boundary() <= upper_high() &&
+         upper_high() <= upper_high_boundary(),
+         "high address must be contained within the region");
+  assert(low() >= low_boundary(), "low");
+  assert(low_boundary() <= lower_high_boundary(), "lower high boundary");
+  assert(upper_high_boundary() <= high_boundary(), "upper high boundary");
+  assert(high() <= upper_high(), "upper high");
+}
+
+void VirtualSpace::print_on(outputStream* out) {
+  out->print   ("Virtual space:");
+  if (special()) out->print(" (pinned in memory)");
+  out->cr();
+  out->print_cr(" - committed: " SIZE_FORMAT, committed_size());
+  out->print_cr(" - reserved:  " SIZE_FORMAT, reserved_size());
+  out->print_cr(" - [low, high]:     [" INTPTR_FORMAT ", " INTPTR_FORMAT "]",  low(), high());
+  out->print_cr(" - [low_b, high_b]: [" INTPTR_FORMAT ", " INTPTR_FORMAT "]",  low_boundary(), high_boundary());
+}
+
+void VirtualSpace::print() {
+  print_on(tty);
+}
+
+/////////////// Unit tests ///////////////
+
+#ifndef PRODUCT
+
+#define test_log(...) \
+  do {\
+    if (VerboseInternalVMTests) { \
+      tty->print_cr(__VA_ARGS__); \
+      tty->flush(); \
+    }\
+  } while (false)
+
+class TestReservedSpace : AllStatic {
+ public:
+  static void small_page_write(void* addr, size_t size) {
+    size_t page_size = os::vm_page_size();
+
+    char* end = (char*)addr + size;
+    for (char* p = (char*)addr; p < end; p += page_size) {
+      *p = 1;
+    }
+  }
+
+  static void release_memory_for_test(ReservedSpace rs) {
+    if (rs.special()) {
+      guarantee(os::release_memory_special(rs.base(), rs.size()), "Shouldn't fail");
+    } else {
+      guarantee(os::release_memory(rs.base(), rs.size()), "Shouldn't fail");
+    }
+  }
+
+  static void test_reserved_space1(size_t size, size_t alignment) {
+    test_log("test_reserved_space1(%p)", (void*) (uintptr_t) size);
+
+    assert(is_size_aligned(size, alignment), "Incorrect input parameters");
+
+    ReservedSpace rs(size,          // size
+                     alignment,     // alignment
+                     UseLargePages, // large
+                     (char *)NULL); // requested_address
+
+    test_log(" rs.special() == %d", rs.special());
+
+    assert(rs.base() != NULL, "Must be");
+    assert(rs.size() == size, "Must be");
+
+    assert(is_ptr_aligned(rs.base(), alignment), "aligned sizes should always give aligned addresses");
+    assert(is_size_aligned(rs.size(), alignment), "aligned sizes should always give aligned addresses");
+
+    if (rs.special()) {
+      small_page_write(rs.base(), size);
+    }
+
+    release_memory_for_test(rs);
+  }
+
+  static void test_reserved_space2(size_t size) {
+    test_log("test_reserved_space2(%p)", (void*)(uintptr_t)size);
+
+    assert(is_size_aligned(size, os::vm_allocation_granularity()), "Must be at least AG aligned");
+
+    ReservedSpace rs(size);
+
+    test_log(" rs.special() == %d", rs.special());
+
+    assert(rs.base() != NULL, "Must be");
+    assert(rs.size() == size, "Must be");
+
+    if (rs.special()) {
+      small_page_write(rs.base(), size);
+    }
+
+    release_memory_for_test(rs);
+  }
+
+  static void test_reserved_space3(size_t size, size_t alignment, bool maybe_large) {
+    test_log("test_reserved_space3(%p, %p, %d)",
+        (void*)(uintptr_t)size, (void*)(uintptr_t)alignment, maybe_large);
+
+    assert(is_size_aligned(size, os::vm_allocation_granularity()), "Must be at least AG aligned");
+    assert(is_size_aligned(size, alignment), "Must be at least aligned against alignment");
+
+    bool large = maybe_large && UseLargePages && size >= os::large_page_size();
+
+    ReservedSpace rs(size, alignment, large, false);
+
+    test_log(" rs.special() == %d", rs.special());
+
+    assert(rs.base() != NULL, "Must be");
+    assert(rs.size() == size, "Must be");
+
+    if (rs.special()) {
+      small_page_write(rs.base(), size);
+    }
+
+    release_memory_for_test(rs);
+  }
+
+
+  static void test_reserved_space1() {
+    size_t size = 2 * 1024 * 1024;
+    size_t ag   = os::vm_allocation_granularity();
+
+    test_reserved_space1(size,      ag);
+    test_reserved_space1(size * 2,  ag);
+    test_reserved_space1(size * 10, ag);
+  }
+
+  static void test_reserved_space2() {
+    size_t size = 2 * 1024 * 1024;
+    size_t ag = os::vm_allocation_granularity();
+
+    test_reserved_space2(size * 1);
+    test_reserved_space2(size * 2);
+    test_reserved_space2(size * 10);
+    test_reserved_space2(ag);
+    test_reserved_space2(size - ag);
+    test_reserved_space2(size);
+    test_reserved_space2(size + ag);
+    test_reserved_space2(size * 2);
+    test_reserved_space2(size * 2 - ag);
+    test_reserved_space2(size * 2 + ag);
+    test_reserved_space2(size * 3);
+    test_reserved_space2(size * 3 - ag);
+    test_reserved_space2(size * 3 + ag);
+    test_reserved_space2(size * 10);
+    test_reserved_space2(size * 10 + size / 2);
+  }
+
+  static void test_reserved_space3() {
+    size_t ag = os::vm_allocation_granularity();
+
+    test_reserved_space3(ag,      ag    , false);
+    test_reserved_space3(ag * 2,  ag    , false);
+    test_reserved_space3(ag * 3,  ag    , false);
+    test_reserved_space3(ag * 2,  ag * 2, false);
+    test_reserved_space3(ag * 4,  ag * 2, false);
+    test_reserved_space3(ag * 8,  ag * 2, false);
+    test_reserved_space3(ag * 4,  ag * 4, false);
+    test_reserved_space3(ag * 8,  ag * 4, false);
+    test_reserved_space3(ag * 16, ag * 4, false);
+
+    if (UseLargePages) {
+      size_t lp = os::large_page_size();
+
+      // Without large pages
+      test_reserved_space3(lp,     ag * 4, false);
+      test_reserved_space3(lp * 2, ag * 4, false);
+      test_reserved_space3(lp * 4, ag * 4, false);
+      test_reserved_space3(lp,     lp    , false);
+      test_reserved_space3(lp * 2, lp    , false);
+      test_reserved_space3(lp * 3, lp    , false);
+      test_reserved_space3(lp * 2, lp * 2, false);
+      test_reserved_space3(lp * 4, lp * 2, false);
+      test_reserved_space3(lp * 8, lp * 2, false);
+
+      // With large pages
+      test_reserved_space3(lp, ag * 4    , true);
+      test_reserved_space3(lp * 2, ag * 4, true);
+      test_reserved_space3(lp * 4, ag * 4, true);
+      test_reserved_space3(lp, lp        , true);
+      test_reserved_space3(lp * 2, lp    , true);
+      test_reserved_space3(lp * 3, lp    , true);
+      test_reserved_space3(lp * 2, lp * 2, true);
+      test_reserved_space3(lp * 4, lp * 2, true);
+      test_reserved_space3(lp * 8, lp * 2, true);
+    }
+  }
+
+  static void test_reserved_space() {
+    test_reserved_space1();
+    test_reserved_space2();
+    test_reserved_space3();
+  }
+};
+
+void TestReservedSpace_test() {
+  TestReservedSpace::test_reserved_space();
+}
+
+#define assert_equals(actual, expected)     \
+  assert(actual == expected,                \
+    err_msg("Got " SIZE_FORMAT " expected " \
+      SIZE_FORMAT, actual, expected));
+
+#define assert_ge(value1, value2)                  \
+  assert(value1 >= value2,                         \
+    err_msg("'" #value1 "': " SIZE_FORMAT " '"     \
+      #value2 "': " SIZE_FORMAT, value1, value2));
+
+#define assert_lt(value1, value2)                  \
+  assert(value1 < value2,                          \
+    err_msg("'" #value1 "': " SIZE_FORMAT " '"     \
+      #value2 "': " SIZE_FORMAT, value1, value2));
+
+
+class TestVirtualSpace : AllStatic {
+  enum TestLargePages {
+    Default,
+    Disable,
+    Reserve,
+    Commit
+  };
+
+  static ReservedSpace reserve_memory(size_t reserve_size_aligned, TestLargePages mode) {
+    switch(mode) {
+    default:
+    case Default:
+    case Reserve:
+      return ReservedSpace(reserve_size_aligned);
+    case Disable:
+    case Commit:
+      return ReservedSpace(reserve_size_aligned,
+                           os::vm_allocation_granularity(),
+                           /* large */ false, /* exec */ false);
+    }
+  }
+
+  static bool initialize_virtual_space(VirtualSpace& vs, ReservedSpace rs, TestLargePages mode) {
+    switch(mode) {
+    default:
+    case Default:
+    case Reserve:
+      return vs.initialize(rs, 0);
+    case Disable:
+      return vs.initialize_with_granularity(rs, 0, os::vm_page_size());
+    case Commit:
+      return vs.initialize_with_granularity(rs, 0, os::page_size_for_region_unaligned(rs.size(), 1));
+    }
+  }
+
+ public:
+  static void test_virtual_space_actual_committed_space(size_t reserve_size, size_t commit_size,
+                                                        TestLargePages mode = Default) {
+    size_t granularity = os::vm_allocation_granularity();
+    size_t reserve_size_aligned = align_size_up(reserve_size, granularity);
+
+    ReservedSpace reserved = reserve_memory(reserve_size_aligned, mode);
+
+    assert(reserved.is_reserved(), "Must be");
+
+    VirtualSpace vs;
+    bool initialized = initialize_virtual_space(vs, reserved, mode);
+    assert(initialized, "Failed to initialize VirtualSpace");
+
+    vs.expand_by(commit_size, false);
+
+    if (vs.special()) {
+      assert_equals(vs.actual_committed_size(), reserve_size_aligned);
+    } else {
+      assert_ge(vs.actual_committed_size(), commit_size);
+      // Approximate the commit granularity.
+      // Make sure that we don't commit using large pages
+      // if large pages has been disabled for this VirtualSpace.
+      size_t commit_granularity = (mode == Disable || !UseLargePages) ?
+                                   os::vm_page_size() : os::large_page_size();
+      assert_lt(vs.actual_committed_size(), commit_size + commit_granularity);
+    }
+
+    reserved.release();
+  }
+
+  static void test_virtual_space_actual_committed_space_one_large_page() {
+    if (!UseLargePages) {
+      return;
+    }
+
+    size_t large_page_size = os::large_page_size();
+
+    ReservedSpace reserved(large_page_size, large_page_size, true, false);
+
+    assert(reserved.is_reserved(), "Must be");
+
+    VirtualSpace vs;
+    bool initialized = vs.initialize(reserved, 0);
+    assert(initialized, "Failed to initialize VirtualSpace");
+
+    vs.expand_by(large_page_size, false);
+
+    assert_equals(vs.actual_committed_size(), large_page_size);
+
+    reserved.release();
+  }
+
+  static void test_virtual_space_actual_committed_space() {
+    test_virtual_space_actual_committed_space(4 * K, 0);
+    test_virtual_space_actual_committed_space(4 * K, 4 * K);
+    test_virtual_space_actual_committed_space(8 * K, 0);
+    test_virtual_space_actual_committed_space(8 * K, 4 * K);
+    test_virtual_space_actual_committed_space(8 * K, 8 * K);
+    test_virtual_space_actual_committed_space(12 * K, 0);
+    test_virtual_space_actual_committed_space(12 * K, 4 * K);
+    test_virtual_space_actual_committed_space(12 * K, 8 * K);
+    test_virtual_space_actual_committed_space(12 * K, 12 * K);
+    test_virtual_space_actual_committed_space(64 * K, 0);
+    test_virtual_space_actual_committed_space(64 * K, 32 * K);
+    test_virtual_space_actual_committed_space(64 * K, 64 * K);
+    test_virtual_space_actual_committed_space(2 * M, 0);
+    test_virtual_space_actual_committed_space(2 * M, 4 * K);
+    test_virtual_space_actual_committed_space(2 * M, 64 * K);
+    test_virtual_space_actual_committed_space(2 * M, 1 * M);
+    test_virtual_space_actual_committed_space(2 * M, 2 * M);
+    test_virtual_space_actual_committed_space(10 * M, 0);
+    test_virtual_space_actual_committed_space(10 * M, 4 * K);
+    test_virtual_space_actual_committed_space(10 * M, 8 * K);
+    test_virtual_space_actual_committed_space(10 * M, 1 * M);
+    test_virtual_space_actual_committed_space(10 * M, 2 * M);
+    test_virtual_space_actual_committed_space(10 * M, 5 * M);
+    test_virtual_space_actual_committed_space(10 * M, 10 * M);
+  }
+
+  static void test_virtual_space_disable_large_pages() {
+    if (!UseLargePages) {
+      return;
+    }
+    // These test cases verify that if we force VirtualSpace to disable large pages
+    test_virtual_space_actual_committed_space(10 * M, 0, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 4 * K, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 8 * K, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 1 * M, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 2 * M, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 5 * M, Disable);
+    test_virtual_space_actual_committed_space(10 * M, 10 * M, Disable);
+
+    test_virtual_space_actual_committed_space(10 * M, 0, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 4 * K, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 8 * K, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 1 * M, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 2 * M, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 5 * M, Reserve);
+    test_virtual_space_actual_committed_space(10 * M, 10 * M, Reserve);
+
+    test_virtual_space_actual_committed_space(10 * M, 0, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 4 * K, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 8 * K, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 1 * M, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 2 * M, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 5 * M, Commit);
+    test_virtual_space_actual_committed_space(10 * M, 10 * M, Commit);
+  }
+
+  static void test_virtual_space() {
+    test_virtual_space_actual_committed_space();
+    test_virtual_space_actual_committed_space_one_large_page();
+    test_virtual_space_disable_large_pages();
+  }
+};
+
+void TestVirtualSpace_test() {
+  TestVirtualSpace::test_virtual_space();
+}
+
+#endif // PRODUCT
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/memory/virtualspace.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,222 @@
+/*
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
+#define SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
+
+#include "memory/allocation.hpp"
+
+// ReservedSpace is a data structure for reserving a contiguous address range.
+
+class ReservedSpace VALUE_OBJ_CLASS_SPEC {
+  friend class VMStructs;
+ protected:
+  char*  _base;
+  size_t _size;
+  size_t _noaccess_prefix;
+  size_t _alignment;
+  bool   _special;
+ private:
+  bool   _executable;
+
+  // ReservedSpace
+  ReservedSpace(char* base, size_t size, size_t alignment, bool special,
+                bool executable);
+ protected:
+  void initialize(size_t size, size_t alignment, bool large,
+                  char* requested_address,
+                  bool executable);
+
+ public:
+  // Constructor
+  ReservedSpace();
+  // Initialize the reserved space with the given size. If preferred_page_size
+  // is set, use this as minimum page size/alignment. This may waste some space
+  // if the given size is not aligned to that value, as the reservation will be
+  // aligned up to the final alignment in this case.
+  ReservedSpace(size_t size, size_t preferred_page_size = 0);
+  ReservedSpace(size_t size, size_t alignment, bool large,
+                char* requested_address = NULL);
+  ReservedSpace(size_t size, size_t alignment, bool large, bool executable);
+
+  // Accessors
+  char*  base()            const { return _base;      }
+  size_t size()            const { return _size;      }
+  size_t alignment()       const { return _alignment; }
+  bool   special()         const { return _special;   }
+  bool   executable()      const { return _executable;   }
+  size_t noaccess_prefix() const { return _noaccess_prefix;   }
+  bool is_reserved()       const { return _base != NULL; }
+  void release();
+
+  // Splitting
+  ReservedSpace first_part(size_t partition_size, size_t alignment,
+                           bool split = false, bool realloc = true);
+  ReservedSpace last_part (size_t partition_size, size_t alignment);
+
+  // These simply call the above using the default alignment.
+  inline ReservedSpace first_part(size_t partition_size,
+                                  bool split = false, bool realloc = true);
+  inline ReservedSpace last_part (size_t partition_size);
+
+  // Alignment
+  static size_t page_align_size_up(size_t size);
+  static size_t page_align_size_down(size_t size);
+  static size_t allocation_align_size_up(size_t size);
+  static size_t allocation_align_size_down(size_t size);
+};
+
+ReservedSpace
+ReservedSpace::first_part(size_t partition_size, bool split, bool realloc)
+{
+  return first_part(partition_size, alignment(), split, realloc);
+}
+
+ReservedSpace ReservedSpace::last_part(size_t partition_size)
+{
+  return last_part(partition_size, alignment());
+}
+
+// Class encapsulating behavior specific of memory space reserved for Java heap.
+class ReservedHeapSpace : public ReservedSpace {
+ private:
+  void try_reserve_heap(size_t size, size_t alignment, bool large,
+                        char *requested_address);
+  void try_reserve_range(char *highest_start, char *lowest_start,
+                         size_t attach_point_alignment, char *aligned_HBMA,
+                         char *upper_bound, size_t size, size_t alignment, bool large);
+  void initialize_compressed_heap(const size_t size, size_t alignment, bool large);
+  // Create protection page at the beginning of the space.
+  void establish_noaccess_prefix();
+ public:
+  // Constructor. Tries to find a heap that is good for compressed oops.
+  ReservedHeapSpace(size_t size, size_t forced_base_alignment, bool large);
+  // Returns the base to be used for compression, i.e. so that null can be
+  // encoded safely and implicit null checks can work.
+  char *compressed_oop_base() { return _base - _noaccess_prefix; }
+};
+
+// Class encapsulating behavior specific memory space for Code
+class ReservedCodeSpace : public ReservedSpace {
+ public:
+  // Constructor
+  ReservedCodeSpace(size_t r_size, size_t rs_align, bool large);
+};
+
+// VirtualSpace is data structure for committing a previously reserved address range in smaller chunks.
+
+class VirtualSpace VALUE_OBJ_CLASS_SPEC {
+  friend class VMStructs;
+ private:
+  // Reserved area
+  char* _low_boundary;
+  char* _high_boundary;
+
+  // Committed area
+  char* _low;
+  char* _high;
+
+  // The entire space has been committed and pinned in memory, no
+  // os::commit_memory() or os::uncommit_memory().
+  bool _special;
+
+  // Need to know if commit should be executable.
+  bool   _executable;
+
+  // MPSS Support
+  // Each virtualspace region has a lower, middle, and upper region.
+  // Each region has an end boundary and a high pointer which is the
+  // high water mark for the last allocated byte.
+  // The lower and upper unaligned to LargePageSizeInBytes uses default page.
+  // size.  The middle region uses large page size.
+  char* _lower_high;
+  char* _middle_high;
+  char* _upper_high;
+
+  char* _lower_high_boundary;
+  char* _middle_high_boundary;
+  char* _upper_high_boundary;
+
+  size_t _lower_alignment;
+  size_t _middle_alignment;
+  size_t _upper_alignment;
+
+  // MPSS Accessors
+  char* lower_high() const { return _lower_high; }
+  char* middle_high() const { return _middle_high; }
+  char* upper_high() const { return _upper_high; }
+
+  char* lower_high_boundary() const { return _lower_high_boundary; }
+  char* middle_high_boundary() const { return _middle_high_boundary; }
+  char* upper_high_boundary() const { return _upper_high_boundary; }
+
+  size_t lower_alignment() const { return _lower_alignment; }
+  size_t middle_alignment() const { return _middle_alignment; }
+  size_t upper_alignment() const { return _upper_alignment; }
+
+ public:
+  // Committed area
+  char* low()  const { return _low; }
+  char* high() const { return _high; }
+
+  // Reserved area
+  char* low_boundary()  const { return _low_boundary; }
+  char* high_boundary() const { return _high_boundary; }
+
+  bool special() const { return _special; }
+
+ public:
+  // Initialization
+  VirtualSpace();
+  bool initialize_with_granularity(ReservedSpace rs, size_t committed_byte_size, size_t max_commit_ganularity);
+  bool initialize(ReservedSpace rs, size_t committed_byte_size);
+
+  // Destruction
+  ~VirtualSpace();
+
+  // Reserved memory
+  size_t reserved_size() const;
+  // Actually committed OS memory
+  size_t actual_committed_size() const;
+  // Memory used/expanded in this virtual space
+  size_t committed_size() const;
+  // Memory left to use/expand in this virtual space
+  size_t uncommitted_size() const;
+
+  bool   contains(const void* p) const;
+
+  // Operations
+  // returns true on success, false otherwise
+  bool expand_by(size_t bytes, bool pre_touch = false);
+  void shrink_by(size_t bytes);
+  void release();
+
+  void check_for_contiguity() PRODUCT_RETURN;
+
+  // Debugging
+  void print_on(outputStream* out) PRODUCT_RETURN;
+  void print();
+};
+
+#endif // SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
--- a/hotspot/src/share/vm/oops/constMethod.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/constMethod.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -32,7 +32,6 @@
 // processes in a read-only section with Class Data Sharing (CDS).  It's important
 // that this class doesn't have virtual functions because the vptr cannot be shared
 // with CDS.
-//   (*)RewriteByteCodes and RewriteFrequentPairs is an exception but turned off in CDS
 //
 // Note that most applications load thousands of methods, so keeping the size of this
 // structure small has a big impact on footprint.
--- a/hotspot/src/share/vm/oops/cpCache.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/cpCache.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -606,44 +606,6 @@
 // RedefineClasses() API support:
 // If any entry of this ConstantPoolCache points to any of
 // old_methods, replace it with the corresponding new_method.
-void ConstantPoolCache::adjust_method_entries(Method** old_methods, Method** new_methods,
-                                              int methods_length, bool * trace_name_printed) {
-
-  if (methods_length == 0) {
-    // nothing to do if there are no methods
-    return;
-  }
-
-  // get shorthand for the interesting class
-  Klass* old_holder = old_methods[0]->method_holder();
-
-  for (int i = 0; i < length(); i++) {
-    if (entry_at(i)->get_interesting_method_entry(old_holder) == NULL) {
-      // skip uninteresting methods
-      continue;
-    }
-
-    // The ConstantPoolCache contains entries for several different
-    // things, but we only care about methods. In fact, we only care
-    // about methods in the same class as the one that contains the
-    // old_methods. At this point, we have an interesting entry.
-
-    for (int j = 0; j < methods_length; j++) {
-      Method* old_method = old_methods[j];
-      Method* new_method = new_methods[j];
-
-      if (entry_at(i)->adjust_method_entry(old_method, new_method,
-          trace_name_printed)) {
-        // current old_method matched this entry and we updated it so
-        // break out and get to the next interesting entry if there one
-        break;
-      }
-    }
-  }
-}
-
-// If any entry of this ConstantPoolCache points to any of
-// old_methods, replace it with the corresponding new_method.
 void ConstantPoolCache::adjust_method_entries(InstanceKlass* holder, bool * trace_name_printed) {
   for (int i = 0; i < length(); i++) {
     ConstantPoolCacheEntry* entry = entry_at(i);
--- a/hotspot/src/share/vm/oops/cpCache.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/cpCache.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -477,8 +477,6 @@
   // trace_name_printed is set to true if the current call has
   // printed the klass name so that other routines in the adjust_*
   // group don't print the klass name.
-  void adjust_method_entries(Method** old_methods, Method** new_methods,
-                             int methods_length, bool* trace_name_printed);
   void adjust_method_entries(InstanceKlass* holder, bool* trace_name_printed);
   bool check_no_old_or_obsolete_entries();
   void dump_cache();
--- a/hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,146 +0,0 @@
-/*
- * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#include "precompiled.hpp"
-#include "classfile/javaClasses.hpp"
-#include "classfile/systemDictionary.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
-#include "gc_interface/collectedHeap.inline.hpp"
-#include "memory/genOopClosures.inline.hpp"
-#include "memory/iterator.inline.hpp"
-#include "memory/oopFactory.hpp"
-#include "memory/specialized_oop_closures.hpp"
-#include "oops/instanceKlass.hpp"
-#include "oops/instanceClassLoaderKlass.hpp"
-#include "oops/instanceMirrorKlass.hpp"
-#include "oops/instanceOop.hpp"
-#include "oops/oop.inline.hpp"
-#include "oops/symbol.hpp"
-#include "runtime/handles.inline.hpp"
-#include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/parNew/parOopClosures.inline.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
-#endif // INCLUDE_ALL_GCS
-
-// Macro to define InstanceClassLoaderKlass::oop_oop_iterate for virtual/nonvirtual for
-// all closures.  Macros calling macros above for each oop size.
-// Since ClassLoader objects have only a pointer to the loader_data, they are not
-// compressed nor does the pointer move.
-
-#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)\
-                                                                                \
-int InstanceClassLoaderKlass::                                                  \
-oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {                  \
-  /* Get size before changing pointers */                                       \
-  int size = InstanceKlass::oop_oop_iterate##nv_suffix(obj, closure);           \
-                                                                                \
-  if_do_metadata_checked(closure, nv_suffix) {                                  \
-    ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);             \
-    /* cld can be null if we have a non-registered class loader. */             \
-    if (cld != NULL) {                                                          \
-      closure->do_class_loader_data(cld);                                       \
-    }                                                                           \
-  }                                                                             \
-                                                                                \
-  return size;                                                                  \
-}
-
-#if INCLUDE_ALL_GCS
-#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix) \
-                                                                                \
-int InstanceClassLoaderKlass::                                                  \
-oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {        \
-  /* Get size before changing pointers */                                       \
-  int size = InstanceKlass::oop_oop_iterate_backwards##nv_suffix(obj, closure); \
-  return size;                                                                  \
-}
-#endif // INCLUDE_ALL_GCS
-
-
-#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)      \
-                                                                                \
-int InstanceClassLoaderKlass::                                                  \
-oop_oop_iterate##nv_suffix##_m(oop obj,                                         \
-                               OopClosureType* closure,                         \
-                               MemRegion mr) {                                  \
-  int size = InstanceKlass::oop_oop_iterate##nv_suffix##_m(obj, closure, mr);   \
-                                                                                \
-  if_do_metadata_checked(closure, nv_suffix) {                                  \
-    if (mr.contains(obj)) {                                                     \
-      ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);           \
-      /* cld can be null if we have a non-registered class loader. */           \
-      if (cld != NULL) {                                                        \
-        closure->do_class_loader_data(cld);                                     \
-      }                                                                         \
-    }                                                                           \
-  }                                                                             \
-                                                                                \
-  return size;                                                                  \
-}
-
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN)
-#if INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-#endif // INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN_m)
-
-void InstanceClassLoaderKlass::oop_follow_contents(oop obj) {
-  InstanceKlass::oop_follow_contents(obj);
-  ClassLoaderData * const loader_data = java_lang_ClassLoader::loader_data(obj);
-
-  // We must NULL check here, since the class loader
-  // can be found before the loader data has been set up.
-  if(loader_data != NULL) {
-    MarkSweep::follow_class_loader(loader_data);
-  }
-}
-
-#if INCLUDE_ALL_GCS
-void InstanceClassLoaderKlass::oop_follow_contents(ParCompactionManager* cm,
-        oop obj) {
-  InstanceKlass::oop_follow_contents(cm, obj);
-  ClassLoaderData * const loader_data = java_lang_ClassLoader::loader_data(obj);
-  if (loader_data != NULL) {
-    PSParallelCompact::follow_class_loader(cm, loader_data);
-  }
-}
-
-void InstanceClassLoaderKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  InstanceKlass::oop_push_contents(pm, obj);
-
-  // This is called by the young collector. It will already have taken care of
-  // all class loader data. So, we don't have to follow the class loader ->
-  // class loader data link.
-}
-
-int InstanceClassLoaderKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  InstanceKlass::oop_update_pointers(cm, obj);
-  return size_helper();
-}
-#endif // INCLUDE_ALL_GCS
-
--- a/hotspot/src/share/vm/oops/instanceClassLoaderKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceClassLoaderKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -48,34 +48,60 @@
 
   InstanceClassLoaderKlass() { assert(DumpSharedSpaces || UseSharedSpaces, "only for CDS"); }
 
-  // Iterators
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_v_m(obj, blk, mr);
-  }
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
+
+  // Oop fields (and metadata) iterators
+  //  [nv = true]  Use non-virtual calls to do_oop_nv.
+  //  [nv = false] Use virtual calls to do_oop.
+  //
+  // The InstanceClassLoaderKlass iterators also visit the CLD pointer (or mirror of anonymous klasses.)
 
-#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)                \
-  int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);                         \
+ private:
+  // Forward iteration
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate(oop obj, OopClosureType* closure);
+
+#if INCLUDE_ALL_GCS
+  // Reverse iteration
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
+#endif
+
+  // Bounded range iteration
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+ public:
+
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)   \
+  int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);                    \
   int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* blk, MemRegion mr);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL)
 
 #if INCLUDE_ALL_GCS
-#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)      \
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)  \
   int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* blk);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
 #endif // INCLUDE_ALL_GCS
 
-    // Garbage collection
-  void oop_follow_contents(oop obj);
-
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
 };
 
 #endif // SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/oops/instanceClassLoaderKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_INLINE_HPP
+#define SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_INLINE_HPP
+
+#include "classfile/javaClasses.hpp"
+#include "oops/instanceClassLoaderKlass.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
+#include "utilities/macros.hpp"
+
+template <bool nv, class OopClosureType>
+inline int InstanceClassLoaderKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
+  int size = InstanceKlass::oop_oop_iterate<nv>(obj, closure);
+
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);
+    // cld can be null if we have a non-registered class loader.
+    if (cld != NULL) {
+      closure->do_class_loader_data(cld);
+    }
+  }
+
+  return size;
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, class OopClosureType>
+inline int InstanceClassLoaderKlass::oop_oop_iterate_reverse(oop obj, OopClosureType* closure) {
+  int size = InstanceKlass::oop_oop_iterate_reverse<nv>(obj, closure);
+
+  assert(!Devirtualizer<nv>::do_metadata(closure),
+      "Code to handle metadata is not implemented");
+
+  return size;
+}
+#endif // INCLUDE_ALL_GCS
+
+
+template <bool nv, class OopClosureType>
+inline int InstanceClassLoaderKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  int size = InstanceKlass::oop_oop_iterate_bounded<nv>(obj, closure, mr);
+
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    if (mr.contains(obj)) {
+      ClassLoaderData* cld = java_lang_ClassLoader::loader_data(obj);
+      // cld can be null if we have a non-registered class loader.
+      if (cld != NULL) {
+        closure->do_class_loader_data(cld);
+      }
+    }
+  }
+
+  return size;
+}
+
+
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)              \
+                                                                                              \
+int InstanceClassLoaderKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                               \
+}
+
+#if INCLUDE_ALL_GCS
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
+                                                                                                        \
+int InstanceClassLoaderKlass::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate_reverse<nvs_to_bool(nv_suffix)>(obj, closure);                                 \
+}
+#else
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+
+#define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)                              \
+                                                                                                                \
+int InstanceClassLoaderKlass::oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_bounded<nvs_to_bool(nv_suffix)>(obj, closure, mr);                                     \
+}
+
+#define ALL_INSTANCE_CLASS_LOADER_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)     \
+  InstanceClassLoaderKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)     \
+  InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+
+#endif // SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -28,12 +28,10 @@
 #include "classfile/verifier.hpp"
 #include "classfile/vmSymbols.hpp"
 #include "compiler/compileBroker.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
 #include "interpreter/oopMapCache.hpp"
 #include "interpreter/rewriter.hpp"
 #include "jvmtifiles/jvmti.h"
-#include "memory/genOopClosures.inline.hpp"
 #include "memory/heapInspection.hpp"
 #include "memory/iterator.inline.hpp"
 #include "memory/metadataFactory.hpp"
@@ -41,7 +39,7 @@
 #include "memory/specialized_oop_closures.hpp"
 #include "oops/fieldStreams.hpp"
 #include "oops/instanceClassLoaderKlass.hpp"
-#include "oops/instanceKlass.hpp"
+#include "oops/instanceKlass.inline.hpp"
 #include "oops/instanceMirrorKlass.hpp"
 #include "oops/instanceOop.hpp"
 #include "oops/klass.inline.hpp"
@@ -64,17 +62,6 @@
 #include "services/threadService.hpp"
 #include "utilities/dtrace.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/concurrentMarkSweep/cmsOopClosures.inline.hpp"
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
-#include "gc_implementation/g1/g1OopClosures.inline.hpp"
-#include "gc_implementation/g1/g1RemSet.inline.hpp"
-#include "gc_implementation/g1/heapRegionManager.inline.hpp"
-#include "gc_implementation/parNew/parOopClosures.inline.hpp"
-#include "gc_implementation/parallelScavenge/parallelScavengeHeap.inline.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.inline.hpp"
-#endif // INCLUDE_ALL_GCS
 #ifdef COMPILER1
 #include "c1/c1_Compiler.hpp"
 #endif
@@ -716,23 +703,6 @@
 
     // Set up method entry points for compiler and interpreter    .
     m->link_method(m, CHECK);
-
-    // This is for JVMTI and unrelated to relocator but the last thing we do
-#ifdef ASSERT
-    if (StressMethodComparator) {
-      ResourceMark rm(THREAD);
-      static int nmc = 0;
-      for (int j = i; j >= 0 && j >= i-4; j--) {
-        if ((++nmc % 1000) == 0)  tty->print_cr("Have run MethodComparator %d times...", nmc);
-        bool z = MethodComparator::methods_EMCP(m(),
-                   methods()->at(j));
-        if (j == i && !z) {
-          tty->print("MethodComparator FAIL: "); m->print(); m->print_codes();
-          assert(z, "method must compare equal to itself");
-        }
-      }
-    }
-#endif //ASSERT
   }
 }
 
@@ -2010,288 +1980,6 @@
 }
 #endif //PRODUCT
 
-
-// Garbage collection
-
-#ifdef ASSERT
-template <class T> void assert_is_in(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in(o), "should be in heap");
-  }
-}
-template <class T> void assert_is_in_closed_subset(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in_closed_subset(o),
-           err_msg("should be in closed *p " INTPTR_FORMAT " " INTPTR_FORMAT, (address)p, (address)o));
-  }
-}
-template <class T> void assert_is_in_reserved(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in_reserved(o), "should be in reserved");
-  }
-}
-template <class T> void assert_nothing(T *p) {}
-
-#else
-template <class T> void assert_is_in(T *p) {}
-template <class T> void assert_is_in_closed_subset(T *p) {}
-template <class T> void assert_is_in_reserved(T *p) {}
-template <class T> void assert_nothing(T *p) {}
-#endif // ASSERT
-
-//
-// Macros that iterate over areas of oops which are specialized on type of
-// oop pointer either narrow or wide, depending on UseCompressedOops
-//
-// Parameters are:
-//   T         - type of oop to point to (either oop or narrowOop)
-//   start_p   - starting pointer for region to iterate over
-//   count     - number of oops or narrowOops to iterate over
-//   do_oop    - action to perform on each oop (it's arbitrary C code which
-//               makes it more efficient to put in a macro rather than making
-//               it a template function)
-//   assert_fn - assert function which is template function because performance
-//               doesn't matter when enabled.
-#define InstanceKlass_SPECIALIZED_OOP_ITERATE( \
-  T, start_p, count, do_oop,                \
-  assert_fn)                                \
-{                                           \
-  T* p         = (T*)(start_p);             \
-  T* const end = p + (count);               \
-  while (p < end) {                         \
-    (assert_fn)(p);                         \
-    do_oop;                                 \
-    ++p;                                    \
-  }                                         \
-}
-
-#define InstanceKlass_SPECIALIZED_OOP_REVERSE_ITERATE( \
-  T, start_p, count, do_oop,                \
-  assert_fn)                                \
-{                                           \
-  T* const start = (T*)(start_p);           \
-  T*       p     = start + (count);         \
-  while (start < p) {                       \
-    --p;                                    \
-    (assert_fn)(p);                         \
-    do_oop;                                 \
-  }                                         \
-}
-
-#define InstanceKlass_SPECIALIZED_BOUNDED_OOP_ITERATE( \
-  T, start_p, count, low, high,             \
-  do_oop, assert_fn)                        \
-{                                           \
-  T* const l = (T*)(low);                   \
-  T* const h = (T*)(high);                  \
-  assert(mask_bits((intptr_t)l, sizeof(T)-1) == 0 && \
-         mask_bits((intptr_t)h, sizeof(T)-1) == 0,   \
-         "bounded region must be properly aligned"); \
-  T* p       = (T*)(start_p);               \
-  T* end     = p + (count);                 \
-  if (p < l) p = l;                         \
-  if (end > h) end = h;                     \
-  while (p < end) {                         \
-    (assert_fn)(p);                         \
-    do_oop;                                 \
-    ++p;                                    \
-  }                                         \
-}
-
-
-// The following macros call specialized macros, passing either oop or
-// narrowOop as the specialization type.  These test the UseCompressedOops
-// flag.
-#define InstanceKlass_OOP_MAP_ITERATE(obj, do_oop, assert_fn)            \
-{                                                                        \
-  /* Compute oopmap block range. The common case                         \
-     is nonstatic_oop_map_size == 1. */                                  \
-  OopMapBlock* map           = start_of_nonstatic_oop_maps();            \
-  OopMapBlock* const end_map = map + nonstatic_oop_map_count();          \
-  if (UseCompressedOops) {                                               \
-    while (map < end_map) {                                              \
-      InstanceKlass_SPECIALIZED_OOP_ITERATE(narrowOop,                   \
-        obj->obj_field_addr<narrowOop>(map->offset()), map->count(),     \
-        do_oop, assert_fn)                                               \
-      ++map;                                                             \
-    }                                                                    \
-  } else {                                                               \
-    while (map < end_map) {                                              \
-      InstanceKlass_SPECIALIZED_OOP_ITERATE(oop,                         \
-        obj->obj_field_addr<oop>(map->offset()), map->count(),           \
-        do_oop, assert_fn)                                               \
-      ++map;                                                             \
-    }                                                                    \
-  }                                                                      \
-}
-
-#define InstanceKlass_OOP_MAP_REVERSE_ITERATE(obj, do_oop, assert_fn)    \
-{                                                                        \
-  OopMapBlock* const start_map = start_of_nonstatic_oop_maps();          \
-  OopMapBlock* map             = start_map + nonstatic_oop_map_count();  \
-  if (UseCompressedOops) {                                               \
-    while (start_map < map) {                                            \
-      --map;                                                             \
-      InstanceKlass_SPECIALIZED_OOP_REVERSE_ITERATE(narrowOop,           \
-        obj->obj_field_addr<narrowOop>(map->offset()), map->count(),     \
-        do_oop, assert_fn)                                               \
-    }                                                                    \
-  } else {                                                               \
-    while (start_map < map) {                                            \
-      --map;                                                             \
-      InstanceKlass_SPECIALIZED_OOP_REVERSE_ITERATE(oop,                 \
-        obj->obj_field_addr<oop>(map->offset()), map->count(),           \
-        do_oop, assert_fn)                                               \
-    }                                                                    \
-  }                                                                      \
-}
-
-#define InstanceKlass_BOUNDED_OOP_MAP_ITERATE(obj, low, high, do_oop,    \
-                                              assert_fn)                 \
-{                                                                        \
-  /* Compute oopmap block range. The common case is                      \
-     nonstatic_oop_map_size == 1, so we accept the                       \
-     usually non-existent extra overhead of examining                    \
-     all the maps. */                                                    \
-  OopMapBlock* map           = start_of_nonstatic_oop_maps();            \
-  OopMapBlock* const end_map = map + nonstatic_oop_map_count();          \
-  if (UseCompressedOops) {                                               \
-    while (map < end_map) {                                              \
-      InstanceKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(narrowOop,           \
-        obj->obj_field_addr<narrowOop>(map->offset()), map->count(),     \
-        low, high,                                                       \
-        do_oop, assert_fn)                                               \
-      ++map;                                                             \
-    }                                                                    \
-  } else {                                                               \
-    while (map < end_map) {                                              \
-      InstanceKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(oop,                 \
-        obj->obj_field_addr<oop>(map->offset()), map->count(),           \
-        low, high,                                                       \
-        do_oop, assert_fn)                                               \
-      ++map;                                                             \
-    }                                                                    \
-  }                                                                      \
-}
-
-void InstanceKlass::oop_follow_contents(oop obj) {
-  assert(obj != NULL, "can't follow the content of NULL object");
-  MarkSweep::follow_klass(obj->klass());
-  InstanceKlass_OOP_MAP_ITERATE( \
-    obj, \
-    MarkSweep::mark_and_push(p), \
-    assert_is_in_closed_subset)
-}
-
-#if INCLUDE_ALL_GCS
-void InstanceKlass::oop_follow_contents(ParCompactionManager* cm,
-                                        oop obj) {
-  assert(obj != NULL, "can't follow the content of NULL object");
-  PSParallelCompact::follow_klass(cm, obj->klass());
-  // Only mark the header and let the scan of the meta-data mark
-  // everything else.
-  InstanceKlass_OOP_MAP_ITERATE( \
-    obj, \
-    PSParallelCompact::mark_and_push(cm, p), \
-    assert_is_in)
-}
-#endif // INCLUDE_ALL_GCS
-
-// closure's do_metadata() method dictates whether the given closure should be
-// applied to the klass ptr in the object header.
-
-#define InstanceKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)        \
-                                                                             \
-int InstanceKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) { \
-  /* header */                                                          \
-  if_do_metadata_checked(closure, nv_suffix) {                          \
-    closure->do_klass##nv_suffix(obj->klass());                         \
-  }                                                                     \
-  InstanceKlass_OOP_MAP_ITERATE(                                        \
-    obj,                                                                \
-    (closure)->do_oop##nv_suffix(p),                                    \
-    assert_is_in_closed_subset)                                         \
-  return size_helper();                                                 \
-}
-
-#if INCLUDE_ALL_GCS
-#define InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix) \
-                                                                                \
-int InstanceKlass::oop_oop_iterate_backwards##nv_suffix(oop obj,                \
-                                              OopClosureType* closure) {        \
-  assert_should_ignore_metadata(closure, nv_suffix);                            \
-                                                                                \
-  /* instance variables */                                                      \
-  InstanceKlass_OOP_MAP_REVERSE_ITERATE(                                        \
-    obj,                                                                        \
-    (closure)->do_oop##nv_suffix(p),                                            \
-    assert_is_in_closed_subset)                                                 \
-   return size_helper();                                                        \
-}
-#endif // INCLUDE_ALL_GCS
-
-#define InstanceKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix) \
-                                                                        \
-int InstanceKlass::oop_oop_iterate##nv_suffix##_m(oop obj,              \
-                                                  OopClosureType* closure, \
-                                                  MemRegion mr) {          \
-  if_do_metadata_checked(closure, nv_suffix) {                           \
-    if (mr.contains(obj)) {                                              \
-      closure->do_klass##nv_suffix(obj->klass());                        \
-    }                                                                    \
-  }                                                                      \
-  InstanceKlass_BOUNDED_OOP_MAP_ITERATE(                                 \
-    obj, mr.start(), mr.end(),                                           \
-    (closure)->do_oop##nv_suffix(p),                                     \
-    assert_is_in_closed_subset)                                          \
-  return size_helper();                                                  \
-}
-
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceKlass_OOP_OOP_ITERATE_DEFN_m)
-#if INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-#endif // INCLUDE_ALL_GCS
-
-int InstanceKlass::oop_adjust_pointers(oop obj) {
-  int size = size_helper();
-  InstanceKlass_OOP_MAP_ITERATE( \
-    obj, \
-    MarkSweep::adjust_pointer(p), \
-    assert_is_in)
-  return size;
-}
-
-#if INCLUDE_ALL_GCS
-void InstanceKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  InstanceKlass_OOP_MAP_REVERSE_ITERATE( \
-    obj, \
-    if (PSScavenge::should_scavenge(p)) { \
-      pm->claim_or_forward_depth(p); \
-    }, \
-    assert_nothing )
-}
-
-int InstanceKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  int size = size_helper();
-  InstanceKlass_OOP_MAP_ITERATE( \
-    obj, \
-    PSParallelCompact::adjust_pointer(p), \
-    assert_is_in)
-  return size;
-}
-
-#endif // INCLUDE_ALL_GCS
-
 void InstanceKlass::clean_implementors_list(BoolObjectClosure* is_alive) {
   assert(class_loader_data()->is_alive(is_alive), "this klass should be live");
   if (is_interface()) {
@@ -2712,6 +2400,57 @@
   return false;
 }
 
+bool InstanceKlass::find_inner_classes_attr(instanceKlassHandle k, int* ooff, int* noff, TRAPS) {
+  constantPoolHandle i_cp(THREAD, k->constants());
+  for (InnerClassesIterator iter(k); !iter.done(); iter.next()) {
+    int ioff = iter.inner_class_info_index();
+    if (ioff != 0) {
+      // Check to see if the name matches the class we're looking for
+      // before attempting to find the class.
+      if (i_cp->klass_name_at_matches(k, ioff)) {
+        Klass* inner_klass = i_cp->klass_at(ioff, CHECK_false);
+        if (k() == inner_klass) {
+          *ooff = iter.outer_class_info_index();
+          *noff = iter.inner_name_index();
+          return true;
+        }
+      }
+    }
+  }
+  return false;
+}
+
+Klass* InstanceKlass::compute_enclosing_class_impl(instanceKlassHandle k, bool* inner_is_member, TRAPS) {
+  instanceKlassHandle outer_klass;
+  *inner_is_member = false;
+  int ooff = 0, noff = 0;
+  if (find_inner_classes_attr(k, &ooff, &noff, THREAD)) {
+    constantPoolHandle i_cp(THREAD, k->constants());
+    if (ooff != 0) {
+      Klass* ok = i_cp->klass_at(ooff, CHECK_NULL);
+      outer_klass = instanceKlassHandle(THREAD, ok);
+      *inner_is_member = true;
+    }
+    if (outer_klass.is_null()) {
+      // It may be anonymous; try for that.
+      int encl_method_class_idx = k->enclosing_method_class_index();
+      if (encl_method_class_idx != 0) {
+        Klass* ok = i_cp->klass_at(encl_method_class_idx, CHECK_NULL);
+        outer_klass = instanceKlassHandle(THREAD, ok);
+        *inner_is_member = false;
+      }
+    }
+  }
+
+  // If no inner class attribute found for this class.
+  if (outer_klass.is_null())  return NULL;
+
+  // Throws an exception if outer klass has not declared k as an inner klass
+  // We need evidence that each klass knows about the other, or else
+  // the system could allow a spoof of an inner class to gain access rights.
+  Reflection::check_for_inner_class(outer_klass, k, *inner_is_member, CHECK_NULL);
+  return outer_klass();
+}
 
 jint InstanceKlass::compute_modifier_flags(TRAPS) const {
   jint access = access_flags().as_int();
@@ -3718,6 +3457,37 @@
   return m;
 }
 
+
+Method* InstanceKlass::method_with_orig_idnum(int idnum) {
+  if (idnum >= methods()->length()) {
+    return NULL;
+  }
+  Method* m = methods()->at(idnum);
+  if (m != NULL && m->orig_method_idnum() == idnum) {
+    return m;
+  }
+  // Obsolete method idnum does not match the original idnum
+  for (int index = 0; index < methods()->length(); ++index) {
+    m = methods()->at(index);
+    if (m->orig_method_idnum() == idnum) {
+      return m;
+    }
+  }
+  // None found, return null for the caller to handle.
+  return NULL;
+}
+
+
+Method* InstanceKlass::method_with_orig_idnum(int idnum, int version) {
+  InstanceKlass* holder = get_klass_version(version);
+  if (holder == NULL) {
+    return NULL; // The version of klass is gone, no method is found
+  }
+  Method* method = holder->method_with_orig_idnum(idnum);
+  return method;
+}
+
+
 jint InstanceKlass::get_cached_class_file_len() {
   return VM_RedefineClasses::get_cached_class_file_len(_cached_class_file);
 }
--- a/hotspot/src/share/vm/oops/instanceKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -330,6 +330,8 @@
   Array<Method*>* methods() const          { return _methods; }
   void set_methods(Array<Method*>* a)      { _methods = a; }
   Method* method_with_idnum(int idnum);
+  Method* method_with_orig_idnum(int idnum);
+  Method* method_with_orig_idnum(int idnum, int version);
 
   // method ordering
   Array<int>* method_ordering() const     { return _method_ordering; }
@@ -404,13 +406,17 @@
   bool is_same_class_package(oop classloader2, Symbol* classname2);
   static bool is_same_class_package(oop class_loader1, Symbol* class_name1, oop class_loader2, Symbol* class_name2);
 
-  // find an enclosing class (defined where original code was, in jvm.cpp!)
+  // find an enclosing class
   Klass* compute_enclosing_class(bool* inner_is_member, TRAPS) {
     instanceKlassHandle self(THREAD, this);
     return compute_enclosing_class_impl(self, inner_is_member, THREAD);
   }
   static Klass* compute_enclosing_class_impl(instanceKlassHandle self,
-                                               bool* inner_is_member, TRAPS);
+                                             bool* inner_is_member, TRAPS);
+
+  // Find InnerClasses attribute for k and return outer_class_info_index & inner_name_index.
+  static bool find_inner_classes_attr(instanceKlassHandle k,
+                                      int* ooff, int* noff, TRAPS);
 
   // tell if two classes have the same enclosing class (at package level)
   bool is_same_package_member(Klass* class2, TRAPS) {
@@ -621,6 +627,15 @@
 
   InstanceKlass* previous_versions() const { return _previous_versions; }
 
+  InstanceKlass* get_klass_version(int version) {
+    for (InstanceKlass* ik = this; ik != NULL; ik = ik->previous_versions()) {
+      if (ik->constants()->version() == version) {
+        return ik;
+      }
+    }
+    return NULL;
+  }
+
   bool has_been_redefined() const {
     return (_misc_flags & _misc_has_been_redefined) != 0;
   }
@@ -954,10 +969,6 @@
   void adjust_default_methods(InstanceKlass* holder, bool* trace_name_printed);
 #endif // INCLUDE_JVMTI
 
-  // Garbage collection
-  void oop_follow_contents(oop obj);
-  int  oop_adjust_pointers(oop obj);
-
   void clean_implementors_list(BoolObjectClosure* is_alive);
   void clean_method_data(BoolObjectClosure* is_alive);
   void clean_dependent_nmethods();
@@ -981,32 +992,108 @@
   static void notify_unload_class(InstanceKlass* ik);
   static void release_C_heap_structures(InstanceKlass* ik);
 
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
-
   // Naming
   const char* signature_name() const;
 
-  // Iterators
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
+
+  // Oop fields (and metadata) iterators
+  //  [nv = true]  Use non-virtual calls to do_oop_nv.
+  //  [nv = false] Use virtual calls to do_oop.
+  //
+  // The InstanceKlass iterators also visits the Object's klass.
+
+  // Forward iteration
+ public:
+  // Iterate over all oop fields in the oop maps.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure);
+
+ protected:
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate(oop obj, OopClosureType* closure);
+
+ private:
+  // Iterate over all oop fields in the oop maps.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps_specialized(oop obj, OopClosureType* closure);
+
+  // Iterate over all oop fields in one oop map.
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_map(OopMapBlock* map, oop obj, OopClosureType* closure);
+
 
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_v_m(obj, blk, mr);
-  }
+  // Reverse iteration
+#if INCLUDE_ALL_GCS
+ public:
+  // Iterate over all oop fields in the oop maps.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps_reverse(oop obj, OopClosureType* closure);
+
+ protected:
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
+
+ private:
+  // Iterate over all oop fields in the oop maps.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps_specialized_reverse(oop obj, OopClosureType* closure);
+
+  // Iterate over all oop fields in one oop map.
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_map_reverse(OopMapBlock* map, oop obj, OopClosureType* closure);
+#endif
+
 
-#define InstanceKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)      \
-  int  oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);           \
-  int  oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* blk,        \
-                                      MemRegion mr);
+  // Bounded range iteration
+ public:
+  // Iterate over all oop fields in the oop maps.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+ protected:
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+ private:
+  // Iterate over all oop fields in the oop maps.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_maps_specialized_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Iterate over all oop fields in one oop map.
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_oop_map_bounded(OopMapBlock* map, oop obj, OopClosureType* closure, MemRegion mr);
+
+
+ public:
+
+#define InstanceKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)                   \
+  int  oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure);                    \
+  int  oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceKlass_OOP_OOP_ITERATE_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceKlass_OOP_OOP_ITERATE_DECL)
 
 #if INCLUDE_ALL_GCS
-#define InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix) \
-  int  oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* blk);
+#define InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)  \
+  int  oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/oops/instanceKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,215 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_OOPS_INSTANCEKLASS_INLINE_HPP
+#define SHARE_VM_OOPS_INSTANCEKLASS_INLINE_HPP
+
+#include "memory/iterator.hpp"
+#include "oops/instanceKlass.hpp"
+#include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
+#include "utilities/macros.hpp"
+
+// The iteration over the oops in objects is a hot path in the GC code.
+// By force inlining the following functions, we get similar GC performance
+// as the previous macro based implementation.
+#ifdef TARGET_COMPILER_visCPP
+#define INLINE __forceinline
+#else
+#define INLINE inline
+#endif
+
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_map(OopMapBlock* map, oop obj, OopClosureType* closure) {
+  T* p         = (T*)obj->obj_field_addr<T>(map->offset());
+  T* const end = p + map->count();
+
+  for (; p < end; ++p) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_map_reverse(OopMapBlock* map, oop obj, OopClosureType* closure) {
+  T* const start = (T*)obj->obj_field_addr<T>(map->offset());
+  T*       p     = start + map->count();
+
+  while (start < p) {
+    --p;
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+#endif
+
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_map_bounded(OopMapBlock* map, oop obj, OopClosureType* closure, MemRegion mr) {
+  T* p   = (T*)obj->obj_field_addr<T>(map->offset());
+  T* end = p + map->count();
+
+  T* const l   = (T*)mr.start();
+  T* const h   = (T*)mr.end();
+  assert(mask_bits((intptr_t)l, sizeof(T)-1) == 0 &&
+         mask_bits((intptr_t)h, sizeof(T)-1) == 0,
+         "bounded region must be properly aligned");
+
+  if (p < l) {
+    p = l;
+  }
+  if (end > h) {
+    end = h;
+  }
+
+  for (;p < end; ++p) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps_specialized(oop obj, OopClosureType* closure) {
+  OopMapBlock* map           = start_of_nonstatic_oop_maps();
+  OopMapBlock* const end_map = map + nonstatic_oop_map_count();
+
+  for (; map < end_map; ++map) {
+    oop_oop_iterate_oop_map<nv, T>(map, obj, closure);
+  }
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps_specialized_reverse(oop obj, OopClosureType* closure) {
+  OopMapBlock* const start_map = start_of_nonstatic_oop_maps();
+  OopMapBlock* map             = start_map + nonstatic_oop_map_count();
+
+  while (start_map < map) {
+    --map;
+    oop_oop_iterate_oop_map_reverse<nv, T>(map, obj, closure);
+  }
+}
+#endif
+
+template <bool nv, typename T, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps_specialized_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  OopMapBlock* map           = start_of_nonstatic_oop_maps();
+  OopMapBlock* const end_map = map + nonstatic_oop_map_count();
+
+  for (;map < end_map; ++map) {
+    oop_oop_iterate_oop_map_bounded<nv, T>(map, obj, closure, mr);
+  }
+}
+
+template <bool nv, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps(oop obj, OopClosureType* closure) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_oop_maps_specialized<nv, narrowOop>(obj, closure);
+  } else {
+    oop_oop_iterate_oop_maps_specialized<nv, oop>(obj, closure);
+  }
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps_reverse(oop obj, OopClosureType* closure) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_oop_maps_specialized_reverse<nv, narrowOop>(obj, closure);
+  } else {
+    oop_oop_iterate_oop_maps_specialized_reverse<nv, oop>(obj, closure);
+  }
+}
+#endif
+
+template <bool nv, class OopClosureType>
+INLINE void InstanceKlass::oop_oop_iterate_oop_maps_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_oop_maps_specialized_bounded<nv, narrowOop>(obj, closure, mr);
+  } else {
+    oop_oop_iterate_oop_maps_specialized_bounded<nv, oop>(obj, closure, mr);
+  }
+}
+
+template <bool nv, class OopClosureType>
+INLINE int InstanceKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    Devirtualizer<nv>::do_klass(closure, this);
+  }
+
+  oop_oop_iterate_oop_maps<nv>(obj, closure);
+
+  return size_helper();
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, class OopClosureType>
+INLINE int InstanceKlass::oop_oop_iterate_reverse(oop obj, OopClosureType* closure) {
+  assert(!Devirtualizer<nv>::do_metadata(closure),
+      "Code to handle metadata is not implemented");
+
+  oop_oop_iterate_oop_maps_reverse<nv>(obj, closure);
+
+  return size_helper();
+}
+#endif
+
+template <bool nv, class OopClosureType>
+INLINE int InstanceKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    if (mr.contains(obj)) {
+      Devirtualizer<nv>::do_klass(closure, this);
+    }
+  }
+
+  oop_oop_iterate_oop_maps_bounded<nv>(obj, closure, mr);
+
+  return size_helper();
+}
+
+#undef INLINE
+
+
+#define InstanceKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)              \
+int InstanceKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                    \
+}
+
+#if INCLUDE_ALL_GCS
+#define InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
+int InstanceKlass::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate_reverse<nvs_to_bool(nv_suffix)>(obj, closure);                      \
+}
+#else
+#define InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+#define InstanceKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)                              \
+int InstanceKlass::oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_bounded<nvs_to_bool(nv_suffix)>(obj, closure, mr);                          \
+}
+
+#define ALL_INSTANCE_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  InstanceKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)   \
+  InstanceKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)   \
+  InstanceKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+
+#endif // SHARE_VM_OOPS_INSTANCEKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/oops/instanceMirrorKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceMirrorKlass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,9 +25,7 @@
 #include "precompiled.hpp"
 #include "classfile/javaClasses.hpp"
 #include "classfile/systemDictionary.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
-#include "memory/genOopClosures.inline.hpp"
 #include "memory/iterator.inline.hpp"
 #include "memory/oopFactory.hpp"
 #include "memory/specialized_oop_closures.hpp"
@@ -38,313 +36,9 @@
 #include "oops/symbol.hpp"
 #include "runtime/handles.inline.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/concurrentMarkSweep/cmsOopClosures.inline.hpp"
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
-#include "gc_implementation/g1/g1OopClosures.inline.hpp"
-#include "gc_implementation/g1/g1RemSet.inline.hpp"
-#include "gc_implementation/g1/heapRegionManager.inline.hpp"
-#include "gc_implementation/parNew/parOopClosures.inline.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.inline.hpp"
-#endif // INCLUDE_ALL_GCS
 
 int InstanceMirrorKlass::_offset_of_static_fields = 0;
 
-#ifdef ASSERT
-template <class T> void assert_is_in(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in(o), "should be in heap");
-  }
-}
-template <class T> void assert_is_in_closed_subset(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in_closed_subset(o), "should be in closed");
-  }
-}
-template <class T> void assert_is_in_reserved(T *p) {
-  T heap_oop = oopDesc::load_heap_oop(p);
-  if (!oopDesc::is_null(heap_oop)) {
-    oop o = oopDesc::decode_heap_oop_not_null(heap_oop);
-    assert(Universe::heap()->is_in_reserved(o), "should be in reserved");
-  }
-}
-template <class T> void assert_nothing(T *p) {}
-
-#else
-template <class T> void assert_is_in(T *p) {}
-template <class T> void assert_is_in_closed_subset(T *p) {}
-template <class T> void assert_is_in_reserved(T *p) {}
-template <class T> void assert_nothing(T *p) {}
-#endif // ASSERT
-
-#define InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE( \
-  T, start_p, count, do_oop,                         \
-  assert_fn)                                         \
-{                                                    \
-  T* p         = (T*)(start_p);                      \
-  T* const end = p + (count);                        \
-  while (p < end) {                                  \
-    (assert_fn)(p);                                  \
-    do_oop;                                          \
-    ++p;                                             \
-  }                                                  \
-}
-
-#define InstanceMirrorKlass_SPECIALIZED_BOUNDED_OOP_ITERATE( \
-  T, start_p, count, low, high,                              \
-  do_oop, assert_fn)                                         \
-{                                                            \
-  T* const l = (T*)(low);                                    \
-  T* const h = (T*)(high);                                   \
-  assert(mask_bits((intptr_t)l, sizeof(T)-1) == 0 &&         \
-         mask_bits((intptr_t)h, sizeof(T)-1) == 0,           \
-         "bounded region must be properly aligned");         \
-  T* p       = (T*)(start_p);                                \
-  T* end     = p + (count);                                  \
-  if (p < l) p = l;                                          \
-  if (end > h) end = h;                                      \
-  while (p < end) {                                          \
-    (assert_fn)(p);                                          \
-    do_oop;                                                  \
-    ++p;                                                     \
-  }                                                          \
-}
-
-
-#define InstanceMirrorKlass_OOP_ITERATE(start_p, count,    \
-                                  do_oop, assert_fn)       \
-{                                                          \
-  if (UseCompressedOops) {                                 \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE(narrowOop, \
-      start_p, count,                                      \
-      do_oop, assert_fn)                                   \
-  } else {                                                 \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE(oop,       \
-      start_p, count,                                      \
-      do_oop, assert_fn)                                   \
-  }                                                        \
-}
-
-// The following macros call specialized macros, passing either oop or
-// narrowOop as the specialization type.  These test the UseCompressedOops
-// flag.
-#define InstanceMirrorKlass_BOUNDED_OOP_ITERATE(start_p, count, low, high, \
-                                          do_oop, assert_fn)               \
-{                                                                          \
-  if (UseCompressedOops) {                                                 \
-    InstanceMirrorKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(narrowOop,         \
-      start_p, count,                                                      \
-      low, high,                                                           \
-      do_oop, assert_fn)                                                   \
-  } else {                                                                 \
-    InstanceMirrorKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(oop,               \
-      start_p, count,                                                      \
-      low, high,                                                           \
-      do_oop, assert_fn)                                                   \
-  }                                                                        \
-}
-
-
-void InstanceMirrorKlass::oop_follow_contents(oop obj) {
-  InstanceKlass::oop_follow_contents(obj);
-
-  // Follow the klass field in the mirror.
-  Klass* klass = java_lang_Class::as_Klass(obj);
-  if (klass != NULL) {
-    // An anonymous class doesn't have its own class loader, so the call
-    // to follow_klass will mark and push its java mirror instead of the
-    // class loader. When handling the java mirror for an anonymous class
-    // we need to make sure its class loader data is claimed, this is done
-    // by calling follow_class_loader explicitly. For non-anonymous classes
-    // the call to follow_class_loader is made when the class loader itself
-    // is handled.
-    if (klass->oop_is_instance() && InstanceKlass::cast(klass)->is_anonymous()) {
-      MarkSweep::follow_class_loader(klass->class_loader_data());
-    } else {
-      MarkSweep::follow_klass(klass);
-    }
-  } else {
-    // If klass is NULL then this a mirror for a primitive type.
-    // We don't have to follow them, since they are handled as strong
-    // roots in Universe::oops_do.
-    assert(java_lang_Class::is_primitive(obj), "Sanity check");
-  }
-
-  InstanceMirrorKlass_OOP_ITERATE(                                                    \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),        \
-    MarkSweep::mark_and_push(p),                                                      \
-    assert_is_in_closed_subset)
-}
-
-#if INCLUDE_ALL_GCS
-void InstanceMirrorKlass::oop_follow_contents(ParCompactionManager* cm,
-                                              oop obj) {
-  InstanceKlass::oop_follow_contents(cm, obj);
-
-  // Follow the klass field in the mirror.
-  Klass* klass = java_lang_Class::as_Klass(obj);
-  if (klass != NULL) {
-    // An anonymous class doesn't have its own class loader, so the call
-    // to follow_klass will mark and push its java mirror instead of the
-    // class loader. When handling the java mirror for an anonymous class
-    // we need to make sure its class loader data is claimed, this is done
-    // by calling follow_class_loader explicitly. For non-anonymous classes
-    // the call to follow_class_loader is made when the class loader itself
-    // is handled.
-    if (klass->oop_is_instance() && InstanceKlass::cast(klass)->is_anonymous()) {
-      PSParallelCompact::follow_class_loader(cm, klass->class_loader_data());
-    } else {
-      PSParallelCompact::follow_klass(cm, klass);
-    }
-  } else {
-    // If klass is NULL then this a mirror for a primitive type.
-    // We don't have to follow them, since they are handled as strong
-    // roots in Universe::oops_do.
-    assert(java_lang_Class::is_primitive(obj), "Sanity check");
-  }
-
-  InstanceMirrorKlass_OOP_ITERATE(                                                    \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),        \
-    PSParallelCompact::mark_and_push(cm, p),                                          \
-    assert_is_in)
-}
-#endif // INCLUDE_ALL_GCS
-
-int InstanceMirrorKlass::oop_adjust_pointers(oop obj) {
-  int size = oop_size(obj);
-  InstanceKlass::oop_adjust_pointers(obj);
-
-  InstanceMirrorKlass_OOP_ITERATE(                                                    \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),        \
-    MarkSweep::adjust_pointer(p),                                                     \
-    assert_nothing)
-  return size;
-}
-
-#define InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE_DEFN(T, nv_suffix)                \
-  InstanceMirrorKlass_OOP_ITERATE(                                                    \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),        \
-      (closure)->do_oop##nv_suffix(p),                                                \
-    assert_is_in_closed_subset)                                                       \
-  return oop_size(obj);                                                               \
-
-#define InstanceMirrorKlass_BOUNDED_SPECIALIZED_OOP_ITERATE(T, nv_suffix, mr)         \
-  InstanceMirrorKlass_BOUNDED_OOP_ITERATE(                                            \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),        \
-    mr.start(), mr.end(),                                                             \
-      (closure)->do_oop##nv_suffix(p),                                                \
-    assert_is_in_closed_subset)                                                       \
-  return oop_size(obj);                                                               \
-
-
-// Macro to define InstanceMirrorKlass::oop_oop_iterate for virtual/nonvirtual for
-// all closures.  Macros calling macros above for each oop size.
-
-#define InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)           \
-                                                                                      \
-int InstanceMirrorKlass::                                                             \
-oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {                        \
-  /* Get size before changing pointers */                                             \
-  InstanceKlass::oop_oop_iterate##nv_suffix(obj, closure);                            \
-                                                                                      \
-  if_do_metadata_checked(closure, nv_suffix) {                                        \
-    Klass* klass = java_lang_Class::as_Klass(obj);                                    \
-    /* We'll get NULL for primitive mirrors. */                                       \
-    if (klass != NULL) {                                                              \
-      closure->do_klass##nv_suffix(klass);                                            \
-    }                                                                                 \
-  }                                                                                   \
-                                                                                      \
-  if (UseCompressedOops) {                                                            \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE_DEFN(narrowOop, nv_suffix);           \
-  } else {                                                                            \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE_DEFN(oop, nv_suffix);                 \
-  }                                                                                   \
-}
-
-#if INCLUDE_ALL_GCS
-#define InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix) \
-                                                                                      \
-int InstanceMirrorKlass::                                                             \
-oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {              \
-  /* Get size before changing pointers */                                             \
-  InstanceKlass::oop_oop_iterate_backwards##nv_suffix(obj, closure);                  \
-                                                                                      \
-  if (UseCompressedOops) {                                                            \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE_DEFN(narrowOop, nv_suffix);           \
-  } else {                                                                            \
-    InstanceMirrorKlass_SPECIALIZED_OOP_ITERATE_DEFN(oop, nv_suffix);                 \
-  }                                                                                   \
-}
-#endif // INCLUDE_ALL_GCS
-
-
-#define InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)         \
-                                                                                      \
-int InstanceMirrorKlass::                                                             \
-oop_oop_iterate##nv_suffix##_m(oop obj,                                               \
-                               OopClosureType* closure,                               \
-                               MemRegion mr) {                                        \
-  InstanceKlass::oop_oop_iterate##nv_suffix##_m(obj, closure, mr);                    \
-                                                                                      \
-  if_do_metadata_checked(closure, nv_suffix) {                                        \
-    if (mr.contains(obj)) {                                                           \
-      Klass* klass = java_lang_Class::as_Klass(obj);                                  \
-      /* We'll get NULL for primitive mirrors. */                                     \
-      if (klass != NULL) {                                                            \
-        closure->do_klass##nv_suffix(klass);                                          \
-      }                                                                               \
-    }                                                                                 \
-  }                                                                                   \
-                                                                                      \
-  if (UseCompressedOops) {                                                            \
-    InstanceMirrorKlass_BOUNDED_SPECIALIZED_OOP_ITERATE(narrowOop, nv_suffix, mr);    \
-  } else {                                                                            \
-    InstanceMirrorKlass_BOUNDED_SPECIALIZED_OOP_ITERATE(oop, nv_suffix, mr);          \
-  }                                                                                   \
-}
-
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN)
-#if INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-#endif // INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN_m)
-
-#if INCLUDE_ALL_GCS
-void InstanceMirrorKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  // Note that we don't have to follow the mirror -> klass pointer, since all
-  // klasses that are dirty will be scavenged when we iterate over the
-  // ClassLoaderData objects.
-
-  InstanceKlass::oop_push_contents(pm, obj);
-  InstanceMirrorKlass_OOP_ITERATE(                                            \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),\
-    if (PSScavenge::should_scavenge(p)) {                                     \
-      pm->claim_or_forward_depth(p);                                          \
-    },                                                                        \
-    assert_nothing )
-}
-
-int InstanceMirrorKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  int size = oop_size(obj);
-  InstanceKlass::oop_update_pointers(cm, obj);
-
-  InstanceMirrorKlass_OOP_ITERATE(                                            \
-    start_of_static_fields(obj), java_lang_Class::static_oop_field_count(obj),\
-    PSParallelCompact::adjust_pointer(p),                                     \
-    assert_nothing)
-  return size;
-}
-#endif // INCLUDE_ALL_GCS
-
 int InstanceMirrorKlass::instance_size(KlassHandle k) {
   if (k() != NULL && k->oop_is_instance()) {
     return align_object_size(size_helper() + InstanceKlass::cast(k())->static_field_size());
--- a/hotspot/src/share/vm/oops/instanceMirrorKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceMirrorKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -88,19 +88,66 @@
   // allocation
   instanceOop allocate_instance(KlassHandle k, TRAPS);
 
-  // Garbage collection
-  int  oop_adjust_pointers(oop obj);
-  void oop_follow_contents(oop obj);
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
 
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
+  // Oop fields (and metadata) iterators
+  //  [nv = true]  Use non-virtual calls to do_oop_nv.
+  //  [nv = false] Use virtual calls to do_oop.
+  //
+  // The InstanceMirrorKlass iterators also visit the hidden Klass pointer.
+
+ public:
+  // Iterate over the static fields.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_statics(oop obj, OopClosureType* closure);
+
+ private:
+  // Iterate over the static fields.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_statics_specialized(oop obj, OopClosureType* closure);
 
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_v_m(obj, blk, mr);
-  }
+  // Forward iteration
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate(oop obj, OopClosureType* closure);
+
+
+  // Reverse iteration
+#if INCLUDE_ALL_GCS
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
+#endif
+
+
+  // Bounded range iteration
+  // Iterate over the oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Iterate over the static fields.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_statics_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Iterate over the static fields.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_statics_specialized_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+
+ public:
 
 #define InstanceMirrorKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)           \
   int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);                       \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/oops/instanceMirrorKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,164 @@
+/* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_OOPS_INSTANCEMIRRORKLASS_INLINE_HPP
+#define SHARE_VM_OOPS_INSTANCEMIRRORKLASS_INLINE_HPP
+
+#include "classfile/javaClasses.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/instanceMirrorKlass.hpp"
+#include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
+#include "utilities/macros.hpp"
+
+template <bool nv, typename T, class OopClosureType>
+void InstanceMirrorKlass::oop_oop_iterate_statics_specialized(oop obj, OopClosureType* closure) {
+  T* p         = (T*)start_of_static_fields(obj);
+  T* const end = p + java_lang_Class::static_oop_field_count(obj);
+
+  for (; p < end; ++p) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+template <bool nv, class OopClosureType>
+void InstanceMirrorKlass::oop_oop_iterate_statics(oop obj, OopClosureType* closure) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_statics_specialized<nv, narrowOop>(obj, closure);
+  } else {
+    oop_oop_iterate_statics_specialized<nv, oop>(obj, closure);
+  }
+}
+
+template <bool nv, class OopClosureType>
+int InstanceMirrorKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
+  InstanceKlass::oop_oop_iterate<nv>(obj, closure);
+
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    Klass* klass = java_lang_Class::as_Klass(obj);
+    // We'll get NULL for primitive mirrors.
+    if (klass != NULL) {
+      Devirtualizer<nv>::do_klass(closure, klass);
+    }
+  }
+
+  oop_oop_iterate_statics<nv>(obj, closure);
+
+  return oop_size(obj);
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, class OopClosureType>
+int InstanceMirrorKlass::oop_oop_iterate_reverse(oop obj, OopClosureType* closure) {
+  InstanceKlass::oop_oop_iterate_reverse<nv>(obj, closure);
+
+  InstanceMirrorKlass::oop_oop_iterate_statics<nv>(obj, closure);
+
+  return oop_size(obj);
+}
+#endif
+
+template <bool nv, typename T, class OopClosureType>
+void InstanceMirrorKlass::oop_oop_iterate_statics_specialized_bounded(oop obj,
+                                                                     OopClosureType* closure,
+                                                                     MemRegion mr) {
+  T* p   = (T*)start_of_static_fields(obj);
+  T* end = p + java_lang_Class::static_oop_field_count(obj);
+
+  T* const l   = (T*)mr.start();
+  T* const h   = (T*)mr.end();
+  assert(mask_bits((intptr_t)l, sizeof(T)-1) == 0 &&
+         mask_bits((intptr_t)h, sizeof(T)-1) == 0,
+         "bounded region must be properly aligned");
+
+  if (p < l) {
+    p = l;
+  }
+  if (end > h) {
+    end = h;
+  }
+
+  for (;p < end; ++p) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+template <bool nv, class OopClosureType>
+void InstanceMirrorKlass::oop_oop_iterate_statics_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_statics_specialized_bounded<nv, narrowOop>(obj, closure, mr);
+  } else {
+    oop_oop_iterate_statics_specialized_bounded<nv, oop>(obj, closure, mr);
+  }
+}
+
+template <bool nv, class OopClosureType>
+int InstanceMirrorKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  InstanceKlass::oop_oop_iterate_bounded<nv>(obj, closure, mr);
+
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    if (mr.contains(obj)) {
+      Klass* klass = java_lang_Class::as_Klass(obj);
+      // We'll get NULL for primitive mirrors.
+      if (klass != NULL) {
+        Devirtualizer<nv>::do_klass(closure, klass);
+      }
+    }
+  }
+
+  oop_oop_iterate_statics_bounded<nv>(obj, closure, mr);
+
+  return oop_size(obj);
+}
+
+
+#define InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)              \
+                                                                                         \
+int InstanceMirrorKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                          \
+}
+
+#if INCLUDE_ALL_GCS
+#define InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
+                                                                                                   \
+int InstanceMirrorKlass::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate_reverse<nvs_to_bool(nv_suffix)>(obj, closure);                            \
+}
+#else
+#define InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+
+#define InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)                              \
+                                                                                                           \
+int InstanceMirrorKlass::oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_bounded<nvs_to_bool(nv_suffix)>(obj, closure, mr);                                \
+}
+
+#define ALL_INSTANCE_MIRROR_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)    \
+  InstanceMirrorKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)    \
+  InstanceMirrorKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+
+#endif // SHARE_VM_OOPS_INSTANCEMIRRORKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/oops/instanceRefKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceRefKlass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,421 +25,16 @@
 #include "precompiled.hpp"
 #include "classfile/javaClasses.hpp"
 #include "classfile/systemDictionary.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
-#include "gc_interface/collectedHeap.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
 #include "memory/genCollectedHeap.hpp"
-#include "memory/genOopClosures.inline.hpp"
 #include "memory/specialized_oop_closures.hpp"
-#include "oops/instanceRefKlass.hpp"
+#include "oops/instanceRefKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "utilities/preserveException.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
-#include "gc_implementation/g1/g1OopClosures.inline.hpp"
-#include "gc_implementation/g1/g1RemSet.inline.hpp"
-#include "gc_implementation/g1/heapRegionManager.inline.hpp"
-#include "gc_implementation/parNew/parOopClosures.inline.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.inline.hpp"
-#endif // INCLUDE_ALL_GCS
 
 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
 
-template <class T>
-void specialized_oop_follow_contents(InstanceRefKlass* ref, oop obj) {
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
-  T heap_oop = oopDesc::load_heap_oop(referent_addr);
-  debug_only(
-    if(TraceReferenceGC && PrintGCDetails) {
-      gclog_or_tty->print_cr("InstanceRefKlass::oop_follow_contents " INTPTR_FORMAT, (void *)obj);
-    }
-  )
-  if (!oopDesc::is_null(heap_oop)) {
-    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);
-    if (!referent->is_gc_marked() &&
-        MarkSweep::ref_processor()->discover_reference(obj, ref->reference_type())) {
-      // reference was discovered, referent will be traversed later
-      ref->InstanceKlass::oop_follow_contents(obj);
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("       Non NULL enqueued " INTPTR_FORMAT, (void *)obj);
-        }
-      )
-      return;
-    } else {
-      // treat referent as normal oop
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("       Non NULL normal " INTPTR_FORMAT, (void *)obj);
-        }
-      )
-      MarkSweep::mark_and_push(referent_addr);
-    }
-  }
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
-  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
-    // Treat discovered as normal oop, if ref is not "active",
-    // i.e. if next is non-NULL.
-    T  next_oop = oopDesc::load_heap_oop(next_addr);
-    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
-      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("   Process discovered as normal "
-                                 INTPTR_FORMAT, discovered_addr);
-        }
-      )
-      MarkSweep::mark_and_push(discovered_addr);
-    }
-  } else {
-#ifdef ASSERT
-    // In the case of older JDKs which do not use the discovered
-    // field for the pending list, an inactive ref (next != NULL)
-    // must always have a NULL discovered field.
-    oop next = oopDesc::load_decode_heap_oop(next_addr);
-    oop discovered = java_lang_ref_Reference::discovered(obj);
-    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
-           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
-                   (oopDesc*)obj));
-#endif
-  }
-  // treat next as normal oop.  next is a link in the reference queue.
-  debug_only(
-    if(TraceReferenceGC && PrintGCDetails) {
-      gclog_or_tty->print_cr("   Process next as normal " INTPTR_FORMAT, next_addr);
-    }
-  )
-  MarkSweep::mark_and_push(next_addr);
-  ref->InstanceKlass::oop_follow_contents(obj);
-}
-
-void InstanceRefKlass::oop_follow_contents(oop obj) {
-  if (UseCompressedOops) {
-    specialized_oop_follow_contents<narrowOop>(this, obj);
-  } else {
-    specialized_oop_follow_contents<oop>(this, obj);
-  }
-}
-
-#if INCLUDE_ALL_GCS
-template <class T>
-void specialized_oop_follow_contents(InstanceRefKlass* ref,
-                                     ParCompactionManager* cm,
-                                     oop obj) {
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
-  T heap_oop = oopDesc::load_heap_oop(referent_addr);
-  debug_only(
-    if(TraceReferenceGC && PrintGCDetails) {
-      gclog_or_tty->print_cr("InstanceRefKlass::oop_follow_contents " INTPTR_FORMAT, (void *)obj);
-    }
-  )
-  if (!oopDesc::is_null(heap_oop)) {
-    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);
-    if (PSParallelCompact::mark_bitmap()->is_unmarked(referent) &&
-        PSParallelCompact::ref_processor()->
-          discover_reference(obj, ref->reference_type())) {
-      // reference already enqueued, referent will be traversed later
-      ref->InstanceKlass::oop_follow_contents(cm, obj);
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("       Non NULL enqueued " INTPTR_FORMAT, (void *)obj);
-        }
-      )
-      return;
-    } else {
-      // treat referent as normal oop
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("       Non NULL normal " INTPTR_FORMAT, (void *)obj);
-        }
-      )
-      PSParallelCompact::mark_and_push(cm, referent_addr);
-    }
-  }
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
-  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
-    // Treat discovered as normal oop, if ref is not "active",
-    // i.e. if next is non-NULL.
-    T  next_oop = oopDesc::load_heap_oop(next_addr);
-    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
-      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("   Process discovered as normal "
-                                 INTPTR_FORMAT, discovered_addr);
-        }
-      )
-      PSParallelCompact::mark_and_push(cm, discovered_addr);
-    }
-  } else {
-#ifdef ASSERT
-    // In the case of older JDKs which do not use the discovered
-    // field for the pending list, an inactive ref (next != NULL)
-    // must always have a NULL discovered field.
-    T next = oopDesc::load_heap_oop(next_addr);
-    oop discovered = java_lang_ref_Reference::discovered(obj);
-    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
-           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
-                   (oopDesc*)obj));
-#endif
-  }
-  PSParallelCompact::mark_and_push(cm, next_addr);
-  ref->InstanceKlass::oop_follow_contents(cm, obj);
-}
-
-void InstanceRefKlass::oop_follow_contents(ParCompactionManager* cm,
-                                           oop obj) {
-  if (UseCompressedOops) {
-    specialized_oop_follow_contents<narrowOop>(this, cm, obj);
-  } else {
-    specialized_oop_follow_contents<oop>(this, cm, obj);
-  }
-}
-#endif // INCLUDE_ALL_GCS
-
-#ifdef ASSERT
-template <class T> void trace_reference_gc(const char *s, oop obj,
-                                           T* referent_addr,
-                                           T* next_addr,
-                                           T* discovered_addr) {
-  if(TraceReferenceGC && PrintGCDetails) {
-    gclog_or_tty->print_cr("%s obj " INTPTR_FORMAT, s, (address)obj);
-    gclog_or_tty->print_cr("     referent_addr/* " INTPTR_FORMAT " / "
-         INTPTR_FORMAT, referent_addr,
-         referent_addr ?
-           (address)oopDesc::load_decode_heap_oop(referent_addr) : NULL);
-    gclog_or_tty->print_cr("     next_addr/* " INTPTR_FORMAT " / "
-         INTPTR_FORMAT, next_addr,
-         next_addr ? (address)oopDesc::load_decode_heap_oop(next_addr) : NULL);
-    gclog_or_tty->print_cr("     discovered_addr/* " INTPTR_FORMAT " / "
-         INTPTR_FORMAT, discovered_addr,
-         discovered_addr ?
-           (address)oopDesc::load_decode_heap_oop(discovered_addr) : NULL);
-  }
-}
-#endif
-
-template <class T> void specialized_oop_adjust_pointers(InstanceRefKlass *ref, oop obj) {
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
-  MarkSweep::adjust_pointer(referent_addr);
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
-  MarkSweep::adjust_pointer(next_addr);
-  T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
-  MarkSweep::adjust_pointer(discovered_addr);
-  debug_only(trace_reference_gc("InstanceRefKlass::oop_adjust_pointers", obj,
-                                referent_addr, next_addr, discovered_addr);)
-}
-
-int InstanceRefKlass::oop_adjust_pointers(oop obj) {
-  int size = size_helper();
-  InstanceKlass::oop_adjust_pointers(obj);
-
-  if (UseCompressedOops) {
-    specialized_oop_adjust_pointers<narrowOop>(this, obj);
-  } else {
-    specialized_oop_adjust_pointers<oop>(this, obj);
-  }
-  return size;
-}
-
-#define InstanceRefKlass_SPECIALIZED_OOP_ITERATE(T, nv_suffix, contains)        \
-  T* disc_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);             \
-  if (closure->apply_to_weak_ref_discovered_field()) {                          \
-    closure->do_oop##nv_suffix(disc_addr);                                      \
-  }                                                                             \
-                                                                                \
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);           \
-  T heap_oop = oopDesc::load_heap_oop(referent_addr);                           \
-  ReferenceProcessor* rp = closure->_ref_processor;                             \
-  if (!oopDesc::is_null(heap_oop)) {                                            \
-    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);                 \
-    if (!referent->is_gc_marked() && (rp != NULL) &&                            \
-        rp->discover_reference(obj, reference_type())) {                        \
-      return size;                                                              \
-    } else if (contains(referent_addr)) {                                       \
-      /* treat referent as normal oop */                                        \
-      closure->do_oop##nv_suffix(referent_addr);                                \
-    }                                                                           \
-  }                                                                             \
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);                   \
-  if (ReferenceProcessor::pending_list_uses_discovered_field()) {               \
-    T next_oop  = oopDesc::load_heap_oop(next_addr);                            \
-    /* Treat discovered as normal oop, if ref is not "active" (next non-NULL) */\
-    if (!oopDesc::is_null(next_oop) && contains(disc_addr)) {                   \
-        /* i.e. ref is not "active" */                                          \
-      debug_only(                                                               \
-        if(TraceReferenceGC && PrintGCDetails) {                                \
-          gclog_or_tty->print_cr("   Process discovered as normal "             \
-                                 INTPTR_FORMAT, disc_addr);                     \
-        }                                                                       \
-      )                                                                         \
-      closure->do_oop##nv_suffix(disc_addr);                                    \
-    }                                                                           \
-  } else {                                                                      \
-    /* In the case of older JDKs which do not use the discovered field for  */  \
-    /* the pending list, an inactive ref (next != NULL) must always have a  */  \
-    /* NULL discovered field. */                                                \
-    debug_only(                                                                 \
-      T next_oop = oopDesc::load_heap_oop(next_addr);                           \
-      T disc_oop = oopDesc::load_heap_oop(disc_addr);                           \
-      assert(oopDesc::is_null(next_oop) || oopDesc::is_null(disc_oop),          \
-           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL" \
-                   "discovered field", (oopDesc*)obj));                                   \
-    )                                                                           \
-  }                                                                             \
-  /* treat next as normal oop */                                                \
-  if (contains(next_addr)) {                                                    \
-    closure->do_oop##nv_suffix(next_addr);                                      \
-  }                                                                             \
-  return size;                                                                  \
-
-
-template <class T> bool contains(T *t) { return true; }
-
-// Macro to define InstanceRefKlass::oop_oop_iterate for virtual/nonvirtual for
-// all closures.  Macros calling macros above for each oop size.
-
-#define InstanceRefKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)        \
-                                                                                \
-int InstanceRefKlass::                                                          \
-oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {                  \
-  /* Get size before changing pointers */                                       \
-  int size = InstanceKlass::oop_oop_iterate##nv_suffix(obj, closure);           \
-                                                                                \
-  if (UseCompressedOops) {                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(narrowOop, nv_suffix, contains);   \
-  } else {                                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(oop, nv_suffix, contains);         \
-  }                                                                             \
-}
-
-#if INCLUDE_ALL_GCS
-#define InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix) \
-                                                                                \
-int InstanceRefKlass::                                                          \
-oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {        \
-  /* Get size before changing pointers */                                       \
-  int size = InstanceKlass::oop_oop_iterate_backwards##nv_suffix(obj, closure); \
-                                                                                \
-  if (UseCompressedOops) {                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(narrowOop, nv_suffix, contains);   \
-  } else {                                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(oop, nv_suffix, contains);         \
-  }                                                                             \
-}
-#endif // INCLUDE_ALL_GCS
-
-
-#define InstanceRefKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)      \
-                                                                                \
-int InstanceRefKlass::                                                          \
-oop_oop_iterate##nv_suffix##_m(oop obj,                                         \
-                               OopClosureType* closure,                         \
-                               MemRegion mr) {                                  \
-  int size = InstanceKlass::oop_oop_iterate##nv_suffix##_m(obj, closure, mr);   \
-  if (UseCompressedOops) {                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(narrowOop, nv_suffix, mr.contains); \
-  } else {                                                                      \
-    InstanceRefKlass_SPECIALIZED_OOP_ITERATE(oop, nv_suffix, mr.contains);      \
-  }                                                                             \
-}
-
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceRefKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceRefKlass_OOP_OOP_ITERATE_DEFN)
-#if INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN)
-#endif // INCLUDE_ALL_GCS
-ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceRefKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceRefKlass_OOP_OOP_ITERATE_DEFN_m)
-
-#if INCLUDE_ALL_GCS
-template <class T>
-void specialized_oop_push_contents(InstanceRefKlass *ref,
-                                   PSPromotionManager* pm, oop obj) {
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
-  if (PSScavenge::should_scavenge(referent_addr)) {
-    ReferenceProcessor* rp = PSScavenge::reference_processor();
-    if (rp->discover_reference(obj, ref->reference_type())) {
-      // reference already enqueued, referent and next will be traversed later
-      ref->InstanceKlass::oop_push_contents(pm, obj);
-      return;
-    } else {
-      // treat referent as normal oop
-      pm->claim_or_forward_depth(referent_addr);
-    }
-  }
-  // Treat discovered as normal oop, if ref is not "active",
-  // i.e. if next is non-NULL.
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
-  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
-    T  next_oop = oopDesc::load_heap_oop(next_addr);
-    if (!oopDesc::is_null(next_oop)) { // i.e. ref is not "active"
-      T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
-      debug_only(
-        if(TraceReferenceGC && PrintGCDetails) {
-          gclog_or_tty->print_cr("   Process discovered as normal "
-                                 INTPTR_FORMAT, discovered_addr);
-        }
-      )
-      if (PSScavenge::should_scavenge(discovered_addr)) {
-        pm->claim_or_forward_depth(discovered_addr);
-      }
-    }
-  } else {
-#ifdef ASSERT
-    // In the case of older JDKs which do not use the discovered
-    // field for the pending list, an inactive ref (next != NULL)
-    // must always have a NULL discovered field.
-    oop next = oopDesc::load_decode_heap_oop(next_addr);
-    oop discovered = java_lang_ref_Reference::discovered(obj);
-    assert(oopDesc::is_null(next) || oopDesc::is_null(discovered),
-           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL discovered field",
-                   (oopDesc*)obj));
-#endif
-  }
-
-  // Treat next as normal oop;  next is a link in the reference queue.
-  if (PSScavenge::should_scavenge(next_addr)) {
-    pm->claim_or_forward_depth(next_addr);
-  }
-  ref->InstanceKlass::oop_push_contents(pm, obj);
-}
-
-void InstanceRefKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  if (UseCompressedOops) {
-    specialized_oop_push_contents<narrowOop>(this, pm, obj);
-  } else {
-    specialized_oop_push_contents<oop>(this, pm, obj);
-  }
-}
-
-template <class T>
-void specialized_oop_update_pointers(InstanceRefKlass *ref,
-                                    ParCompactionManager* cm, oop obj) {
-  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
-  PSParallelCompact::adjust_pointer(referent_addr);
-  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
-  PSParallelCompact::adjust_pointer(next_addr);
-  T* discovered_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
-  PSParallelCompact::adjust_pointer(discovered_addr);
-  debug_only(trace_reference_gc("InstanceRefKlass::oop_update_ptrs", obj,
-                                referent_addr, next_addr, discovered_addr);)
-}
-
-int InstanceRefKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  InstanceKlass::oop_update_pointers(cm, obj);
-  if (UseCompressedOops) {
-    specialized_oop_update_pointers<narrowOop>(this, cm, obj);
-  } else {
-    specialized_oop_update_pointers<oop>(this, cm, obj);
-  }
-  return size_helper();
-}
-#endif // INCLUDE_ALL_GCS
-
 void InstanceRefKlass::update_nonstatic_oop_maps(Klass* k) {
   // Clear the nonstatic oop-map entries corresponding to referent
   // and nextPending field.  They are treated specially by the
@@ -483,12 +78,6 @@
   InstanceKlass::oop_verify_on(obj, st);
   // Verify referent field
   oop referent = java_lang_ref_Reference::referent(obj);
-
-  // We should make this general to all heaps
-  GenCollectedHeap* gch = NULL;
-  if (Universe::heap()->kind() == CollectedHeap::GenCollectedHeap)
-    gch = GenCollectedHeap::heap();
-
   if (referent != NULL) {
     guarantee(referent->is_oop(), "referent field heap failed");
   }
--- a/hotspot/src/share/vm/oops/instanceRefKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/instanceRefKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -64,30 +64,71 @@
     return (InstanceRefKlass*) k;
   }
 
-  // Garbage collection
-  int  oop_adjust_pointers(oop obj);
-  void oop_follow_contents(oop obj);
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
 
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
+  // Oop fields (and metadata) iterators
+  //  [nv = true]  Use non-virtual calls to do_oop_nv.
+  //  [nv = false] Use virtual calls to do_oop.
+  //
+  // The InstanceRefKlass iterators also support reference processing.
+
+
+  // Forward iteration
+private:
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate(oop obj, OopClosureType* closure);
 
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_v_m(obj, blk, mr);
-  }
+  // Reverse iteration
+#if INCLUDE_ALL_GCS
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
+#endif // INCLUDE_ALL_GCS
+
+  // Bounded range iteration
+  // Iterate over all oop fields and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Reference processing part of the iterators.
 
-#define InstanceRefKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)                \
-  int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);                         \
-  int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* blk, MemRegion mr);
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType, class Contains>
+  inline void oop_oop_iterate_ref_processing_specialized(oop obj, OopClosureType* closure, Contains& contains);
+
+  // Only perform reference processing if the referent object is within mr.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_ref_processing_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Reference processing
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_ref_processing(oop obj, OopClosureType* closure);
+
+
+ public:
+
+#define InstanceRefKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)               \
+  int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure);                    \
+  int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceRefKlass_OOP_OOP_ITERATE_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceRefKlass_OOP_OOP_ITERATE_DECL)
 
 #if INCLUDE_ALL_GCS
-#define InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)      \
-  int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* blk);
+#define InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)     \
+  int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure);
 
   ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/oops/instanceRefKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,187 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_OOPS_INSTANCEREFKLASS_INLINE_HPP
+#define SHARE_VM_OOPS_INSTANCEREFKLASS_INLINE_HPP
+
+#include "classfile/javaClasses.hpp"
+#include "memory/referenceProcessor.hpp"
+#include "oops/instanceRefKlass.hpp"
+#include "oops/instanceKlass.inline.hpp"
+#include "oops/oop.inline.hpp"
+#include "utilities/debug.hpp"
+#include "utilities/globalDefinitions.hpp"
+#include "utilities/macros.hpp"
+
+template <bool nv, typename T, class OopClosureType, class Contains>
+void InstanceRefKlass::oop_oop_iterate_ref_processing_specialized(oop obj, OopClosureType* closure, Contains& contains) {
+  T* disc_addr = (T*)java_lang_ref_Reference::discovered_addr(obj);
+  if (closure->apply_to_weak_ref_discovered_field()) {
+    Devirtualizer<nv>::do_oop(closure, disc_addr);
+  }
+
+  T* referent_addr = (T*)java_lang_ref_Reference::referent_addr(obj);
+  T heap_oop = oopDesc::load_heap_oop(referent_addr);
+  ReferenceProcessor* rp = closure->_ref_processor;
+  if (!oopDesc::is_null(heap_oop)) {
+    oop referent = oopDesc::decode_heap_oop_not_null(heap_oop);
+    if (!referent->is_gc_marked() && (rp != NULL) &&
+        rp->discover_reference(obj, reference_type())) {
+      return;
+    } else if (contains(referent_addr)) {
+      // treat referent as normal oop
+      Devirtualizer<nv>::do_oop(closure, referent_addr);
+    }
+  }
+  T* next_addr = (T*)java_lang_ref_Reference::next_addr(obj);
+  if (ReferenceProcessor::pending_list_uses_discovered_field()) {
+    T next_oop  = oopDesc::load_heap_oop(next_addr);
+    // Treat discovered as normal oop, if ref is not "active" (next non-NULL)
+    if (!oopDesc::is_null(next_oop) && contains(disc_addr)) {
+      // i.e. ref is not "active"
+      debug_only(
+        if(TraceReferenceGC && PrintGCDetails) {
+          gclog_or_tty->print_cr("   Process discovered as normal "
+                                 PTR_FORMAT, p2i(disc_addr));
+        }
+      )
+      Devirtualizer<nv>::do_oop(closure, disc_addr);
+    }
+  } else {
+    // In the case of older JDKs which do not use the discovered field for
+    // the pending list, an inactive ref (next != NULL) must always have a
+    // NULL discovered field.
+    debug_only(
+      T next_oop = oopDesc::load_heap_oop(next_addr);
+      T disc_oop = oopDesc::load_heap_oop(disc_addr);
+      assert(oopDesc::is_null(next_oop) || oopDesc::is_null(disc_oop),
+           err_msg("Found an inactive reference " PTR_FORMAT " with a non-NULL"
+                   "discovered field", p2i(obj)));
+    )
+  }
+  // treat next as normal oop
+  if (contains(next_addr)) {
+    Devirtualizer<nv>::do_oop(closure, next_addr);
+  }
+}
+
+class AlwaysContains {
+ public:
+  template <typename T> bool operator()(T* p) const { return true; }
+};
+
+template <bool nv, class OopClosureType>
+void InstanceRefKlass::oop_oop_iterate_ref_processing(oop obj, OopClosureType* closure) {
+  AlwaysContains always_contains;
+  if (UseCompressedOops) {
+    oop_oop_iterate_ref_processing_specialized<nv, narrowOop>(obj, closure, always_contains);
+  } else {
+    oop_oop_iterate_ref_processing_specialized<nv, oop>(obj, closure, always_contains);
+  }
+}
+
+class MrContains {
+  const MemRegion _mr;
+ public:
+  MrContains(MemRegion mr) : _mr(mr) {}
+  template <typename T> bool operator()(T* p) const { return _mr.contains(p); }
+};
+
+template <bool nv, class OopClosureType>
+void InstanceRefKlass::oop_oop_iterate_ref_processing_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  const MrContains contains(mr);
+  if (UseCompressedOops) {
+    oop_oop_iterate_ref_processing_specialized<nv, narrowOop>(obj, closure, contains);
+  } else {
+    oop_oop_iterate_ref_processing_specialized<nv, oop>(obj, closure, contains);
+  }
+}
+
+template <bool nv, class OopClosureType>
+int InstanceRefKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
+  // Get size before changing pointers
+  int size = InstanceKlass::oop_oop_iterate<nv>(obj, closure);
+
+  oop_oop_iterate_ref_processing<nv>(obj, closure);
+
+  return size;
+}
+
+#if INCLUDE_ALL_GCS
+template <bool nv, class OopClosureType>
+int InstanceRefKlass::
+oop_oop_iterate_reverse(oop obj, OopClosureType* closure) {
+  // Get size before changing pointers
+  int size = InstanceKlass::oop_oop_iterate_reverse<nv>(obj, closure);
+
+  oop_oop_iterate_ref_processing<nv>(obj, closure);
+
+  return size;
+}
+#endif // INCLUDE_ALL_GCS
+
+
+template <bool nv, class OopClosureType>
+int InstanceRefKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  // Get size before changing pointers
+  int size = InstanceKlass::oop_oop_iterate_bounded<nv>(obj, closure, mr);
+
+  oop_oop_iterate_ref_processing_bounded<nv>(obj, closure, mr);
+
+  return size;
+}
+
+// Macro to define InstanceRefKlass::oop_oop_iterate for virtual/nonvirtual for
+// all closures.  Macros calling macros above for each oop size.
+
+#define InstanceRefKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)              \
+                                                                                      \
+int InstanceRefKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                       \
+}
+
+#if INCLUDE_ALL_GCS
+#define InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
+                                                                                                \
+int InstanceRefKlass::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate_reverse<nvs_to_bool(nv_suffix)>(obj, closure);                         \
+}
+#else
+#define InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+
+#define InstanceRefKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)                              \
+                                                                                                        \
+int InstanceRefKlass::oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_bounded<nvs_to_bool(nv_suffix)>(obj, closure, mr);                             \
+}
+
+#define ALL_INSTANCE_REF_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  InstanceRefKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)    \
+  InstanceRefKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)    \
+  InstanceRefKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+
+
+#endif // SHARE_VM_OOPS_INSTANCEREFKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/oops/klass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/klass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -27,7 +27,6 @@
 #include "classfile/dictionary.hpp"
 #include "classfile/systemDictionary.hpp"
 #include "classfile/vmSymbols.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
 #include "memory/heapInspection.hpp"
 #include "memory/metadataFactory.hpp"
@@ -43,9 +42,6 @@
 #include "utilities/stack.inline.hpp"
 #if INCLUDE_ALL_GCS
 #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.hpp"
 #endif // INCLUDE_ALL_GCS
 
 void Klass::set_name(Symbol* n) {
--- a/hotspot/src/share/vm/oops/klass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/klass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,21 +25,14 @@
 #ifndef SHARE_VM_OOPS_KLASS_HPP
 #define SHARE_VM_OOPS_KLASS_HPP
 
-#include "memory/genOopClosures.hpp"
 #include "memory/iterator.hpp"
 #include "memory/memRegion.hpp"
 #include "memory/specialized_oop_closures.hpp"
-#include "oops/klassPS.hpp"
 #include "oops/metadata.hpp"
 #include "oops/oop.hpp"
 #include "trace/traceMacros.hpp"
 #include "utilities/accessFlags.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/concurrentMarkSweep/cmsOopClosures.hpp"
-#include "gc_implementation/g1/g1OopClosures.hpp"
-#include "gc_implementation/parNew/parOopClosures.hpp"
-#endif // INCLUDE_ALL_GCS
 
 //
 // A Klass provides:
@@ -61,6 +54,7 @@
 class ClassLoaderData;
 class klassVtable;
 class ParCompactionManager;
+class PSPromotionManager;
 class KlassSizeStats;
 class fieldDescriptor;
 
@@ -478,13 +472,6 @@
   //     and the package separators as '/'.
   virtual const char* signature_name() const;
 
-  // garbage collection support
-  virtual void oop_follow_contents(oop obj) = 0;
-  virtual int  oop_adjust_pointers(oop obj) = 0;
-
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS_PV
-
   // type testing operations
  protected:
   virtual bool oop_is_instance_slow()       const { return false; }
@@ -581,60 +568,35 @@
     clean_weak_klass_links(is_alive, false /* clean_alive_klasses */);
   }
 
-  // iterators
-  virtual int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) = 0;
-  virtual int oop_oop_iterate_v(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate(obj, blk);
-  }
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  virtual void oop_ms_follow_contents(oop obj) = 0;
+  virtual int  oop_ms_adjust_pointers(oop obj) = 0;
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  virtual void oop_ps_push_contents(  oop obj, PSPromotionManager* pm)   = 0;
+  // Parallel Compact
+  virtual void oop_pc_follow_contents(oop obj, ParCompactionManager* cm) = 0;
+  virtual void oop_pc_update_pointers(oop obj) = 0;
+#endif
+
+  // Iterators specialized to particular subtypes
+  // of ExtendedOopClosure, to avoid closure virtual calls.
+#define Klass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)                                      \
+  virtual int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) = 0;                    \
+  /* Iterates "closure" over all the oops in "obj" (of type "this") within "mr". */                \
+  virtual int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) = 0;
+
+  ALL_OOP_OOP_ITERATE_CLOSURES_1(Klass_OOP_OOP_ITERATE_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_2(Klass_OOP_OOP_ITERATE_DECL)
 
 #if INCLUDE_ALL_GCS
-  // In case we don't have a specialized backward scanner use forward
-  // iteration.
-  virtual int oop_oop_iterate_backwards_v(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
-#endif // INCLUDE_ALL_GCS
-
-  // Iterates "blk" over all the oops in "obj" (of type "this") within "mr".
-  // (I don't see why the _m should be required, but without it the Solaris
-  // C++ gives warning messages about overridings of the "oop_oop_iterate"
-  // defined above "hiding" this virtual function.  (DLD, 6/20/00)) */
-  virtual int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) = 0;
-  virtual int oop_oop_iterate_v_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_m(obj, blk, mr);
-  }
+#define Klass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)                    \
+  virtual int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) = 0;
 
-  // Versions of the above iterators specialized to particular subtypes
-  // of OopClosure, to avoid closure virtual calls.
-#define Klass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)                \
-  virtual int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk) {     \
-    /* Default implementation reverts to general version. */                 \
-    return oop_oop_iterate(obj, blk);                                        \
-  }                                                                          \
-                                                                             \
-  /* Iterates "blk" over all the oops in "obj" (of type "this") within "mr". \
-     (I don't see why the _m should be required, but without it the Solaris  \
-     C++ gives warning messages about overridings of the "oop_oop_iterate"   \
-     defined above "hiding" this virtual function.  (DLD, 6/20/00)) */       \
-  virtual int oop_oop_iterate##nv_suffix##_m(oop obj,                        \
-                                             OopClosureType* blk,            \
-                                             MemRegion mr) {                 \
-    return oop_oop_iterate_m(obj, blk, mr);                                  \
-  }
-
-  SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_1(Klass_OOP_OOP_ITERATE_DECL)
-  SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(Klass_OOP_OOP_ITERATE_DECL)
-
-#if INCLUDE_ALL_GCS
-#define Klass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)      \
-  virtual int oop_oop_iterate_backwards##nv_suffix(oop obj,                  \
-                                                   OopClosureType* blk) {    \
-    /* Default implementation reverts to general version. */                 \
-    return oop_oop_iterate_backwards_v(obj, blk);                            \
-  }
-
-  SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_1(Klass_OOP_OOP_ITERATE_BACKWARDS_DECL)
-  SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(Klass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_1(Klass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_2(Klass_OOP_OOP_ITERATE_BACKWARDS_DECL)
 #endif // INCLUDE_ALL_GCS
 
   virtual void array_klasses_do(void f(Klass* k)) {}
--- a/hotspot/src/share/vm/oops/klassPS.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_OOPS_KLASSPS_HPP
-#define SHARE_VM_OOPS_KLASSPS_HPP
-
-  // Expands to Parallel Scavenge and Parallel Old declarations
-
-#include "utilities/macros.hpp"
-
-#if INCLUDE_ALL_GCS
-#define PARALLEL_GC_DECLS \
-  virtual void oop_push_contents(PSPromotionManager* pm, oop obj);          \
-  /* Parallel Old GC support                                                \
-                                                                            \
-   The 2-arg version of oop_update_pointers is for objects that are         \
-   known not to cross chunk boundaries.  The 4-arg version is for           \
-   objects that do (or may) cross chunk boundaries; it updates only those   \
-   oops that are in the region [beg_addr, end_addr).  */                    \
-  virtual void oop_follow_contents(ParCompactionManager* cm, oop obj);      \
-  virtual int  oop_update_pointers(ParCompactionManager* cm, oop obj);
-
-// Pure virtual version for klass.hpp
-#define PARALLEL_GC_DECLS_PV \
-  virtual void oop_push_contents(PSPromotionManager* pm, oop obj) = 0;      \
-  virtual void oop_follow_contents(ParCompactionManager* cm, oop obj) = 0;  \
-  virtual int  oop_update_pointers(ParCompactionManager* cm, oop obj) = 0;
-#else  // INCLUDE_ALL_GCS
-#define PARALLEL_GC_DECLS
-#define PARALLEL_GC_DECLS_PV
-#endif // INCLUDE_ALL_GCS
-
-#endif // SHARE_VM_OOPS_KLASSPS_HPP
--- a/hotspot/src/share/vm/oops/methodData.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/methodData.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -152,6 +152,7 @@
 
 void BitData::print_data_on(outputStream* st, const char* extra) const {
   print_shared(st, "BitData", extra);
+  st->cr();
 }
 
 // ==================================================================
--- a/hotspot/src/share/vm/oops/methodData.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/methodData.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -2056,7 +2056,7 @@
 
   // Whole-method sticky bits and flags
   enum {
-    _trap_hist_limit    = 21,   // decoupled from Deoptimization::Reason_LIMIT
+    _trap_hist_limit    = 22,   // decoupled from Deoptimization::Reason_LIMIT
     _trap_hist_mask     = max_jubyte,
     _extra_data_count   = 4     // extra DataLayout headers, for trap history
   }; // Public flag values
--- a/hotspot/src/share/vm/oops/objArrayKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/objArrayKlass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,9 +26,7 @@
 #include "classfile/symbolTable.hpp"
 #include "classfile/systemDictionary.hpp"
 #include "classfile/vmSymbols.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
-#include "memory/genOopClosures.inline.hpp"
 #include "memory/iterator.inline.hpp"
 #include "memory/metadataFactory.hpp"
 #include "memory/resourceArea.hpp"
@@ -45,17 +43,6 @@
 #include "runtime/orderAccess.inline.hpp"
 #include "utilities/copy.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/concurrentMarkSweep/cmsOopClosures.inline.hpp"
-#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
-#include "gc_implementation/g1/g1OopClosures.inline.hpp"
-#include "gc_implementation/g1/g1RemSet.inline.hpp"
-#include "gc_implementation/g1/heapRegionManager.inline.hpp"
-#include "gc_implementation/parNew/parOopClosures.inline.hpp"
-#include "gc_implementation/parallelScavenge/psCompactionManager.hpp"
-#include "gc_implementation/parallelScavenge/psPromotionManager.inline.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.inline.hpp"
-#endif // INCLUDE_ALL_GCS
 
 ObjArrayKlass* ObjArrayKlass::allocate(ClassLoaderData* loader_data, int n, KlassHandle klass_handle, Symbol* name, TRAPS) {
   assert(ObjArrayKlass::header_size() <= InstanceKlass::header_size(),
@@ -410,179 +397,6 @@
   bottom_klass()->initialize(THREAD);  // dispatches to either InstanceKlass or TypeArrayKlass
 }
 
-#define ObjArrayKlass_SPECIALIZED_OOP_ITERATE(T, a, p, do_oop) \
-{                                   \
-  T* p         = (T*)(a)->base();   \
-  T* const end = p + (a)->length(); \
-  while (p < end) {                 \
-    do_oop;                         \
-    p++;                            \
-  }                                 \
-}
-
-#define ObjArrayKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(T, a, p, low, high, do_oop) \
-{                                   \
-  T* const l = (T*)(low);           \
-  T* const h = (T*)(high);          \
-  T* p       = (T*)(a)->base();     \
-  T* end     = p + (a)->length();   \
-  if (p < l) p = l;                 \
-  if (end > h) end = h;             \
-  while (p < end) {                 \
-    do_oop;                         \
-    ++p;                            \
-  }                                 \
-}
-
-#define ObjArrayKlass_OOP_ITERATE(a, p, do_oop)      \
-  if (UseCompressedOops) {                           \
-    ObjArrayKlass_SPECIALIZED_OOP_ITERATE(narrowOop, \
-      a, p, do_oop)                                  \
-  } else {                                           \
-    ObjArrayKlass_SPECIALIZED_OOP_ITERATE(oop,       \
-      a, p, do_oop)                                  \
-  }
-
-#define ObjArrayKlass_BOUNDED_OOP_ITERATE(a, p, low, high, do_oop) \
-  if (UseCompressedOops) {                                   \
-    ObjArrayKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(narrowOop, \
-      a, p, low, high, do_oop)                               \
-  } else {                                                   \
-    ObjArrayKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(oop,       \
-      a, p, low, high, do_oop)                               \
-  }
-
-void ObjArrayKlass::oop_follow_contents(oop obj) {
-  assert (obj->is_array(), "obj must be array");
-  MarkSweep::follow_klass(obj->klass());
-  if (UseCompressedOops) {
-    objarray_follow_contents<narrowOop>(obj, 0);
-  } else {
-    objarray_follow_contents<oop>(obj, 0);
-  }
-}
-
-#if INCLUDE_ALL_GCS
-void ObjArrayKlass::oop_follow_contents(ParCompactionManager* cm,
-                                        oop obj) {
-  assert(obj->is_array(), "obj must be array");
-  PSParallelCompact::follow_klass(cm, obj->klass());
-  if (UseCompressedOops) {
-    objarray_follow_contents<narrowOop>(cm, obj, 0);
-  } else {
-    objarray_follow_contents<oop>(cm, obj, 0);
-  }
-}
-#endif // INCLUDE_ALL_GCS
-
-#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)           \
-                                                                                \
-int ObjArrayKlass::oop_oop_iterate##nv_suffix(oop obj,                          \
-                                              OopClosureType* closure) {        \
-  assert (obj->is_array(), "obj must be array");                                \
-  objArrayOop a = objArrayOop(obj);                                             \
-  /* Get size before changing pointers. */                                      \
-  /* Don't call size() or oop_size() since that is a virtual call. */           \
-  int size = a->object_size();                                                  \
-  if_do_metadata_checked(closure, nv_suffix) {                                  \
-    closure->do_klass##nv_suffix(obj->klass());                                 \
-  }                                                                             \
-  ObjArrayKlass_OOP_ITERATE(a, p, (closure)->do_oop##nv_suffix(p))              \
-  return size;                                                                  \
-}
-
-#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)         \
-                                                                                \
-int ObjArrayKlass::oop_oop_iterate##nv_suffix##_m(oop obj,                      \
-                                                  OopClosureType* closure,      \
-                                                  MemRegion mr) {               \
-  assert(obj->is_array(), "obj must be array");                                 \
-  objArrayOop a  = objArrayOop(obj);                                            \
-  /* Get size before changing pointers. */                                      \
-  /* Don't call size() or oop_size() since that is a virtual call */            \
-  int size = a->object_size();                                                  \
-  if_do_metadata_checked(closure, nv_suffix) {                                  \
-    /* SSS: Do we need to pass down mr here? */                                 \
-    closure->do_klass##nv_suffix(a->klass());                                   \
-  }                                                                             \
-  ObjArrayKlass_BOUNDED_OOP_ITERATE(                                            \
-    a, p, mr.start(), mr.end(), (closure)->do_oop##nv_suffix(p))                \
-  return size;                                                                  \
-}
-
-// Like oop_oop_iterate but only iterates over a specified range and only used
-// for objArrayOops.
-#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN_r(OopClosureType, nv_suffix)         \
-                                                                                \
-int ObjArrayKlass::oop_oop_iterate_range##nv_suffix(oop obj,                    \
-                                                  OopClosureType* closure,      \
-                                                  int start, int end) {         \
-  assert(obj->is_array(), "obj must be array");                                 \
-  objArrayOop a  = objArrayOop(obj);                                            \
-  /* Get size before changing pointers. */                                      \
-  /* Don't call size() or oop_size() since that is a virtual call */            \
-  int size = a->object_size();                                                  \
-  if (UseCompressedOops) {                                                      \
-    HeapWord* low = start == 0 ? (HeapWord*)a : (HeapWord*)a->obj_at_addr<narrowOop>(start);\
-    /* this might be wierd if end needs to be aligned on HeapWord boundary */   \
-    HeapWord* high = (HeapWord*)((narrowOop*)a->base() + end);                  \
-    MemRegion mr(low, high);                                                    \
-    if_do_metadata_checked(closure, nv_suffix) {                                \
-      /* SSS: Do we need to pass down mr here? */                               \
-      closure->do_klass##nv_suffix(a->klass());                                 \
-    }                                                                           \
-    ObjArrayKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(narrowOop,                    \
-      a, p, low, high, (closure)->do_oop##nv_suffix(p))                         \
-  } else {                                                                      \
-    HeapWord* low = start == 0 ? (HeapWord*)a : (HeapWord*)a->obj_at_addr<oop>(start);  \
-    HeapWord* high = (HeapWord*)((oop*)a->base() + end);                        \
-    MemRegion mr(low, high);                                                    \
-    if_do_metadata_checked(closure, nv_suffix) {                                \
-      /* SSS: Do we need to pass down mr here? */                               \
-      closure->do_klass##nv_suffix(a->klass());                                 \
-    }                                                                           \
-    ObjArrayKlass_SPECIALIZED_BOUNDED_OOP_ITERATE(oop,                          \
-      a, p, low, high, (closure)->do_oop##nv_suffix(p))                         \
-  }                                                                             \
-  return size;                                                                  \
-}
-
-ALL_OOP_OOP_ITERATE_CLOSURES_1(ObjArrayKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(ObjArrayKlass_OOP_OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_1(ObjArrayKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(ObjArrayKlass_OOP_OOP_ITERATE_DEFN_m)
-ALL_OOP_OOP_ITERATE_CLOSURES_1(ObjArrayKlass_OOP_OOP_ITERATE_DEFN_r)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(ObjArrayKlass_OOP_OOP_ITERATE_DEFN_r)
-
-int ObjArrayKlass::oop_adjust_pointers(oop obj) {
-  assert(obj->is_objArray(), "obj must be obj array");
-  objArrayOop a = objArrayOop(obj);
-  // Get size before changing pointers.
-  // Don't call size() or oop_size() since that is a virtual call.
-  int size = a->object_size();
-  ObjArrayKlass_OOP_ITERATE(a, p, MarkSweep::adjust_pointer(p))
-  return size;
-}
-
-#if INCLUDE_ALL_GCS
-void ObjArrayKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  assert(obj->is_objArray(), "obj must be obj array");
-  ObjArrayKlass_OOP_ITERATE( \
-    objArrayOop(obj), p, \
-    if (PSScavenge::should_scavenge(p)) { \
-      pm->claim_or_forward_depth(p); \
-    })
-}
-
-int ObjArrayKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  assert (obj->is_objArray(), "obj must be obj array");
-  objArrayOop a = objArrayOop(obj);
-  int size = a->object_size();
-  ObjArrayKlass_OOP_ITERATE(a, p, PSParallelCompact::adjust_pointer(p))
-  return size;
-}
-#endif // INCLUDE_ALL_GCS
-
 // JVM support
 
 jint ObjArrayKlass::compute_modifier_flags(TRAPS) const {
--- a/hotspot/src/share/vm/oops/objArrayKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/objArrayKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,6 @@
 #define SHARE_VM_OOPS_OBJARRAYKLASS_HPP
 
 #include "classfile/classLoaderData.hpp"
-#include "memory/specialized_oop_closures.hpp"
 #include "oops/arrayKlass.hpp"
 #include "utilities/macros.hpp"
 
@@ -103,28 +102,67 @@
   // Initialization (virtual from Klass)
   void initialize(TRAPS);
 
-  // Garbage collection
-  void oop_follow_contents(oop obj);
-  inline void oop_follow_contents(oop obj, int index);
-  template <class T> inline void objarray_follow_contents(oop obj, int index);
-
-  int  oop_adjust_pointers(oop obj);
-
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
 #if INCLUDE_ALL_GCS
-  inline void oop_follow_contents(ParCompactionManager* cm, oop obj, int index);
-  template <class T> inline void
-    objarray_follow_contents(ParCompactionManager* cm, oop obj, int index);
-#endif // INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
+
+  // Oop fields (and metadata) iterators
+  //  [nv = true]  Use non-virtual calls to do_oop_nv.
+  //  [nv = false] Use virtual calls to do_oop.
+  //
+  // The ObjArrayKlass iterators also visits the Object's klass.
+
+ private:
+
+  // Iterate over oop elements and metadata.
+  template <bool nv, typename OopClosureType>
+  inline int oop_oop_iterate(oop obj, OopClosureType* closure);
+
+  // Iterate over oop elements within mr, and metadata.
+  template <bool nv, typename OopClosureType>
+  inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
+
+  // Iterate over oop elements with indices within [start, end), and metadata.
+  template <bool nv, class OopClosureType>
+  inline int oop_oop_iterate_range(oop obj, OopClosureType* closure, int start, int end);
 
-  // Iterators
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-    return oop_oop_iterate_v(obj, blk);
-  }
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-    return oop_oop_iterate_v_m(obj, blk, mr);
-  }
+  // Iterate over oop elements within [start, end), and metadata.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_range_specialized(objArrayOop a, OopClosureType* closure, int start, int end);
+
+ public:
+  // Iterate over all oop elements.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_elements(objArrayOop a, OopClosureType* closure);
+
+ private:
+  // Iterate over all oop elements.
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_elements_specialized(objArrayOop a, OopClosureType* closure);
+
+  // Iterate over all oop elements with indices within mr.
+  template <bool nv, class OopClosureType>
+  inline void oop_oop_iterate_elements_bounded(objArrayOop a, OopClosureType* closure, MemRegion mr);
+
+  // Iterate over oop elements within [low, high)..
+  // Specialized for [T = oop] or [T = narrowOop].
+  template <bool nv, typename T, class OopClosureType>
+  inline void oop_oop_iterate_elements_specialized_bounded(objArrayOop a, OopClosureType* closure, void* low, void* high);
+
+
+ public:
+
 #define ObjArrayKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)   \
   int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk);         \
   int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* blk,      \
@@ -135,6 +173,14 @@
   ALL_OOP_OOP_ITERATE_CLOSURES_1(ObjArrayKlass_OOP_OOP_ITERATE_DECL)
   ALL_OOP_OOP_ITERATE_CLOSURES_2(ObjArrayKlass_OOP_OOP_ITERATE_DECL)
 
+#if INCLUDE_ALL_GCS
+#define ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix) \
+  int  oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* blk);
+
+  ALL_OOP_OOP_ITERATE_CLOSURES_1(ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_2(ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+#endif // INCLUDE_ALL_GCS
+
   // JVM support
   jint compute_modifier_flags(TRAPS) const;
 
--- a/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,78 +25,165 @@
 #ifndef SHARE_VM_OOPS_OBJARRAYKLASS_INLINE_HPP
 #define SHARE_VM_OOPS_OBJARRAYKLASS_INLINE_HPP
 
-#include "gc_implementation/shared/markSweep.inline.hpp"
+#include "memory/memRegion.hpp"
+#include "memory/iterator.inline.hpp"
 #include "oops/objArrayKlass.hpp"
+#include "oops/objArrayOop.inline.hpp"
+#include "oops/oop.inline.hpp"
 #include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/parallelScavenge/psCompactionManager.inline.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
-#endif // INCLUDE_ALL_GCS
+
+template <bool nv, typename T, class OopClosureType>
+void ObjArrayKlass::oop_oop_iterate_elements_specialized(objArrayOop a, OopClosureType* closure) {
+  T* p         = (T*)a->base();
+  T* const end = p + a->length();
+
+  for (;p < end; p++) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+template <bool nv, typename T, class OopClosureType>
+void ObjArrayKlass::oop_oop_iterate_elements_specialized_bounded(
+    objArrayOop a, OopClosureType* closure, void* low, void* high) {
+
+  T* const l = (T*)low;
+  T* const h = (T*)high;
+
+  T* p   = (T*)a->base();
+  T* end = p + a->length();
 
-void ObjArrayKlass::oop_follow_contents(oop obj, int index) {
+  if (p < l) {
+    p = l;
+  }
+  if (end > h) {
+    end = h;
+  }
+
+  for (;p < end; ++p) {
+    Devirtualizer<nv>::do_oop(closure, p);
+  }
+}
+
+template <bool nv, class OopClosureType>
+void ObjArrayKlass::oop_oop_iterate_elements(objArrayOop a, OopClosureType* closure) {
   if (UseCompressedOops) {
-    objarray_follow_contents<narrowOop>(obj, index);
+    oop_oop_iterate_elements_specialized<nv, narrowOop>(a, closure);
   } else {
-    objarray_follow_contents<oop>(obj, index);
+    oop_oop_iterate_elements_specialized<nv, oop>(a, closure);
+  }
+}
+
+template <bool nv, class OopClosureType>
+void ObjArrayKlass::oop_oop_iterate_elements_bounded(objArrayOop a, OopClosureType* closure, MemRegion mr) {
+  if (UseCompressedOops) {
+    oop_oop_iterate_elements_specialized_bounded<nv, narrowOop>(a, closure, mr.start(), mr.end());
+  } else {
+    oop_oop_iterate_elements_specialized_bounded<nv, oop>(a, closure, mr.start(), mr.end());
   }
 }
 
-template <class T>
-void ObjArrayKlass::objarray_follow_contents(oop obj, int index) {
+template <bool nv, typename OopClosureType>
+int ObjArrayKlass::oop_oop_iterate(oop obj, OopClosureType* closure) {
+  assert (obj->is_array(), "obj must be array");
   objArrayOop a = objArrayOop(obj);
-  const size_t len = size_t(a->length());
-  const size_t beg_index = size_t(index);
-  assert(beg_index < len || len == 0, "index too large");
+
+  // Get size before changing pointers.
+  // Don't call size() or oop_size() since that is a virtual call.
+  int size = a->object_size();
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    Devirtualizer<nv>::do_klass(closure, obj->klass());
+  }
+
+  oop_oop_iterate_elements<nv>(a, closure);
 
-  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
-  const size_t end_index = beg_index + stride;
-  T* const base = (T*)a->base();
-  T* const beg = base + beg_index;
-  T* const end = base + end_index;
+  return size;
+}
 
-  // Push the non-NULL elements of the next stride on the marking stack.
-  for (T* e = beg; e < end; e++) {
-    MarkSweep::mark_and_push<T>(e);
+template <bool nv, typename OopClosureType>
+int ObjArrayKlass::oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr) {
+  assert(obj->is_array(), "obj must be array");
+  objArrayOop a  = objArrayOop(obj);
+
+  // Get size before changing pointers.
+  // Don't call size() or oop_size() since that is a virtual call
+  int size = a->object_size();
+
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    Devirtualizer<nv>::do_klass(closure, a->klass());
   }
 
-  if (end_index < len) {
-    MarkSweep::push_objarray(a, end_index); // Push the continuation.
+  oop_oop_iterate_elements_bounded<nv>(a, closure, mr);
+
+  return size;
+}
+
+template <bool nv, typename T, class OopClosureType>
+void ObjArrayKlass::oop_oop_iterate_range_specialized(objArrayOop a, OopClosureType* closure, int start, int end) {
+  if (Devirtualizer<nv>::do_metadata(closure)) {
+    Devirtualizer<nv>::do_klass(closure, a->klass());
   }
+
+  T* low = start == 0 ? cast_from_oop<T*>(a) : a->obj_at_addr<T>(start);
+  T* high = (T*)a->base() + end;
+
+  oop_oop_iterate_elements_specialized_bounded<nv, T>(a, closure, low, high);
+}
+
+// Like oop_oop_iterate but only iterates over a specified range and only used
+// for objArrayOops.
+template <bool nv, class OopClosureType>
+int ObjArrayKlass::oop_oop_iterate_range(oop obj, OopClosureType* closure, int start, int end) {
+  assert(obj->is_array(), "obj must be array");
+  objArrayOop a  = objArrayOop(obj);
+
+  // Get size before changing pointers.
+  // Don't call size() or oop_size() since that is a virtual call
+  int size = a->object_size();
+
+  if (UseCompressedOops) {
+    oop_oop_iterate_range_specialized<nv, narrowOop>(a, closure, start, end);
+  } else {
+    oop_oop_iterate_range_specialized<nv, oop>(a, closure, start, end);
+  }
+
+  return size;
+}
+
+
+#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)              \
+                                                                                   \
+int ObjArrayKlass::oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {  \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                    \
 }
 
 #if INCLUDE_ALL_GCS
-void ObjArrayKlass::oop_follow_contents(ParCompactionManager* cm, oop obj,
-                                        int index) {
-  if (UseCompressedOops) {
-    objarray_follow_contents<narrowOop>(cm, obj, index);
-  } else {
-    objarray_follow_contents<oop>(cm, obj, index);
-  }
+#define ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
+int ObjArrayKlass::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
+  /* No reverse implementation ATM. */                                                       \
+  return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                              \
+}
+#else
+#define ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)                              \
+                                                                                                     \
+int ObjArrayKlass::oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_bounded<nvs_to_bool(nv_suffix)>(obj, closure, mr);                          \
 }
 
-template <class T>
-void ObjArrayKlass::objarray_follow_contents(ParCompactionManager* cm, oop obj,
-                                             int index) {
-  objArrayOop a = objArrayOop(obj);
-  const size_t len = size_t(a->length());
-  const size_t beg_index = size_t(index);
-  assert(beg_index < len || len == 0, "index too large");
+#define ObjArrayKlass_OOP_OOP_ITERATE_DEFN_r(OopClosureType, nv_suffix)                                      \
+                                                                                                             \
+int ObjArrayKlass::oop_oop_iterate_range##nv_suffix(oop obj, OopClosureType* closure, int start, int end) {  \
+  return oop_oop_iterate_range<nvs_to_bool(nv_suffix)>(obj, closure, start, end);                            \
+}
+
 
-  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
-  const size_t end_index = beg_index + stride;
-  T* const base = (T*)a->base();
-  T* const beg = base + beg_index;
-  T* const end = base + end_index;
+#define ALL_OBJ_ARRAY_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  ObjArrayKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)    \
+  ObjArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)    \
+  ObjArrayKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)    \
+  ObjArrayKlass_OOP_OOP_ITERATE_DEFN_r(        OopClosureType, nv_suffix)
 
-  // Push the non-NULL elements of the next stride on the marking stack.
-  for (T* e = beg; e < end; e++) {
-    PSParallelCompact::mark_and_push<T>(cm, e);
-  }
-
-  if (end_index < len) {
-    cm->push_objarray(a, end_index); // Push the continuation.
-  }
-}
-#endif // INCLUDE_ALL_GCS
 
 #endif // SHARE_VM_OOPS_OBJARRAYKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/oops/oop.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/oop.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -298,19 +298,6 @@
 
   // garbage collection
   bool is_gc_marked() const;
-  // Apply "MarkSweep::mark_and_push" to (the address of) every non-NULL
-  // reference field in "this".
-  void follow_contents(void);
-
-#if INCLUDE_ALL_GCS
-  // Parallel Scavenge
-  void push_contents(PSPromotionManager* pm);
-
-  // Parallel Old
-  void update_contents(ParCompactionManager* cm);
-
-  void follow_contents(ParCompactionManager* cm);
-#endif // INCLUDE_ALL_GCS
 
   bool is_scavengable() const;
 
@@ -334,9 +321,6 @@
   uint age() const;
   void incr_age();
 
-  // Adjust all pointers in this object to point at it's forwarded location and
-  // return the size of this oop.  This is used by the MarkSweep collector.
-  int adjust_pointers();
 
   // mark-sweep support
   void follow_body(int begin, int end);
@@ -345,6 +329,22 @@
   static BarrierSet* bs()            { return _bs; }
   static void set_bs(BarrierSet* bs) { _bs = bs; }
 
+  // Garbage Collection support
+
+  // Mark Sweep
+  void ms_follow_contents();
+  // Adjust all pointers in this object to point at it's forwarded location and
+  // return the size of this oop.  This is used by the MarkSweep collector.
+  int  ms_adjust_pointers();
+#if INCLUDE_ALL_GCS
+  // Parallel Compact
+  void pc_follow_contents(ParCompactionManager* pc);
+  void pc_update_contents();
+  // Parallel Scavenge
+  void ps_push_contents(PSPromotionManager* pm);
+#endif
+
+
   // iterators, returns size of object
 #define OOP_ITERATE_DECL(OopClosureType, nv_suffix)                      \
   int oop_iterate(OopClosureType* blk);                                  \
--- a/hotspot/src/share/vm/oops/oop.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/oop.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -26,13 +26,11 @@
 #define SHARE_VM_OOPS_OOP_INLINE_HPP
 
 #include "gc_implementation/shared/ageTable.hpp"
-#include "gc_implementation/shared/markSweep.inline.hpp"
 #include "gc_interface/collectedHeap.inline.hpp"
 #include "memory/barrierSet.inline.hpp"
 #include "memory/cardTableModRefBS.hpp"
 #include "memory/genCollectedHeap.hpp"
 #include "memory/generation.hpp"
-#include "memory/specialized_oop_closures.hpp"
 #include "oops/arrayKlass.hpp"
 #include "oops/arrayOop.hpp"
 #include "oops/klass.inline.hpp"
@@ -592,11 +590,6 @@
 }
 #endif // PRODUCT
 
-inline void oopDesc::follow_contents(void) {
-  assert (is_gc_marked(), "should be marked");
-  klass()->oop_follow_contents(this);
-}
-
 inline bool oopDesc::is_scavengable() const {
   return Universe::heap()->is_scavengable(this);
 }
@@ -706,21 +699,49 @@
   }
 }
 
-inline int oopDesc::adjust_pointers() {
+inline void oopDesc::ms_follow_contents() {
+  klass()->oop_ms_follow_contents(this);
+}
+
+inline int oopDesc::ms_adjust_pointers() {
   debug_only(int check_size = size());
-  int s = klass()->oop_adjust_pointers(this);
+  int s = klass()->oop_ms_adjust_pointers(this);
   assert(s == check_size, "should be the same");
   return s;
 }
 
-#define OOP_ITERATE_DEFN(OopClosureType, nv_suffix)                        \
-                                                                           \
-inline int oopDesc::oop_iterate(OopClosureType* blk) {                     \
-  return klass()->oop_oop_iterate##nv_suffix(this, blk);               \
-}                                                                          \
-                                                                           \
-inline int oopDesc::oop_iterate(OopClosureType* blk, MemRegion mr) {       \
-  return klass()->oop_oop_iterate##nv_suffix##_m(this, blk, mr);       \
+#if INCLUDE_ALL_GCS
+inline void oopDesc::pc_follow_contents(ParCompactionManager* cm) {
+  klass()->oop_pc_follow_contents(this, cm);
+}
+
+inline void oopDesc::pc_update_contents() {
+  Klass* k = klass();
+  if (!k->oop_is_typeArray()) {
+    // It might contain oops beyond the header, so take the virtual call.
+    k->oop_pc_update_pointers(this);
+  }
+  // Else skip it.  The TypeArrayKlass in the header never needs scavenging.
+}
+
+inline void oopDesc::ps_push_contents(PSPromotionManager* pm) {
+  Klass* k = klass();
+  if (!k->oop_is_typeArray()) {
+    // It might contain oops beyond the header, so take the virtual call.
+    k->oop_ps_push_contents(this, pm);
+  }
+  // Else skip it.  The TypeArrayKlass in the header never needs scavenging.
+}
+#endif
+
+#define OOP_ITERATE_DEFN(OopClosureType, nv_suffix)                   \
+                                                                      \
+inline int oopDesc::oop_iterate(OopClosureType* blk) {                \
+  return klass()->oop_oop_iterate##nv_suffix(this, blk);              \
+}                                                                     \
+                                                                      \
+inline int oopDesc::oop_iterate(OopClosureType* blk, MemRegion mr) {  \
+  return klass()->oop_oop_iterate##nv_suffix##_m(this, blk, mr);      \
 }
 
 
@@ -736,18 +757,21 @@
   return oop_iterate(&cl, mr);
 }
 
-ALL_OOP_OOP_ITERATE_CLOSURES_1(OOP_ITERATE_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(OOP_ITERATE_DEFN)
+#if INCLUDE_ALL_GCS
+#define OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)       \
+                                                                    \
+inline int oopDesc::oop_iterate_backwards(OopClosureType* blk) {    \
+  return klass()->oop_oop_iterate_backwards##nv_suffix(this, blk);  \
+}
+#else
+#define OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
 
-#if INCLUDE_ALL_GCS
-#define OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)              \
-                                                                           \
-inline int oopDesc::oop_iterate_backwards(OopClosureType* blk) {           \
-  return klass()->oop_oop_iterate_backwards##nv_suffix(this, blk);     \
-}
+#define ALL_OOPDESC_OOP_ITERATE(OopClosureType, nv_suffix)  \
+  OOP_ITERATE_DEFN(OopClosureType, nv_suffix)               \
+  OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
 
-ALL_OOP_OOP_ITERATE_CLOSURES_1(OOP_ITERATE_BACKWARDS_DEFN)
-ALL_OOP_OOP_ITERATE_CLOSURES_2(OOP_ITERATE_BACKWARDS_DEFN)
-#endif // INCLUDE_ALL_GCS
+ALL_OOP_OOP_ITERATE_CLOSURES_1(ALL_OOPDESC_OOP_ITERATE)
+ALL_OOP_OOP_ITERATE_CLOSURES_2(ALL_OOPDESC_OOP_ITERATE)
 
 #endif // SHARE_VM_OOPS_OOP_INLINE_HPP
--- a/hotspot/src/share/vm/oops/oop.pcgc.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_OOPS_OOP_PCGC_INLINE_HPP
-#define SHARE_VM_OOPS_OOP_PCGC_INLINE_HPP
-
-#include "runtime/atomic.inline.hpp"
-#include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/parNew/parNewGeneration.hpp"
-#include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
-#include "gc_implementation/parallelScavenge/psCompactionManager.hpp"
-#include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.hpp"
-#endif // INCLUDE_ALL_GCS
-
-inline void oopDesc::update_contents(ParCompactionManager* cm) {
-  // The klass field must be updated before anything else
-  // can be done.
-  DEBUG_ONLY(Klass* original_klass = klass());
-
-  Klass* new_klass = klass();
-  if (!new_klass->oop_is_typeArray()) {
-    // It might contain oops beyond the header, so take the virtual call.
-    new_klass->oop_update_pointers(cm, this);
-  }
-  // Else skip it.  The TypeArrayKlass in the header never needs scavenging.
-}
-
-inline void oopDesc::follow_contents(ParCompactionManager* cm) {
-  assert (PSParallelCompact::mark_bitmap()->is_marked(this),
-    "should be marked");
-  klass()->oop_follow_contents(cm, this);
-}
-
-#endif // SHARE_VM_OOPS_OOP_PCGC_INLINE_HPP
--- a/hotspot/src/share/vm/oops/oop.psgc.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_OOPS_OOP_PSGC_INLINE_HPP
-#define SHARE_VM_OOPS_OOP_PSGC_INLINE_HPP
-
-#include "utilities/macros.hpp"
-#if INCLUDE_ALL_GCS
-#include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
-#include "gc_implementation/parallelScavenge/psScavenge.hpp"
-#endif // INCLUDE_ALL_GCS
-
-// ParallelScavengeHeap methods
-
-inline void oopDesc::push_contents(PSPromotionManager* pm) {
-  Klass* k = klass();
-  if (!k->oop_is_typeArray()) {
-    // It might contain oops beyond the header, so take the virtual call.
-    k->oop_push_contents(pm, this);
-  }
-  // Else skip it.  The TypeArrayKlass in the header never needs scavenging.
-}
-
-#endif // SHARE_VM_OOPS_OOP_PSGC_INLINE_HPP
--- a/hotspot/src/share/vm/oops/typeArrayKlass.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -36,7 +36,7 @@
 #include "oops/klass.inline.hpp"
 #include "oops/objArrayKlass.hpp"
 #include "oops/oop.inline.hpp"
-#include "oops/typeArrayKlass.hpp"
+#include "oops/typeArrayKlass.inline.hpp"
 #include "oops/typeArrayOop.hpp"
 #include "runtime/handles.inline.hpp"
 #include "runtime/orderAccess.inline.hpp"
@@ -204,57 +204,6 @@
   return t->object_size();
 }
 
-void TypeArrayKlass::oop_follow_contents(oop obj) {
-  assert(obj->is_typeArray(),"must be a type array");
-  // Performance tweak: We skip iterating over the klass pointer since we
-  // know that Universe::TypeArrayKlass never moves.
-}
-
-#if INCLUDE_ALL_GCS
-void TypeArrayKlass::oop_follow_contents(ParCompactionManager* cm, oop obj) {
-  assert(obj->is_typeArray(),"must be a type array");
-  // Performance tweak: We skip iterating over the klass pointer since we
-  // know that Universe::TypeArrayKlass never moves.
-}
-#endif // INCLUDE_ALL_GCS
-
-int TypeArrayKlass::oop_adjust_pointers(oop obj) {
-  assert(obj->is_typeArray(),"must be a type array");
-  typeArrayOop t = typeArrayOop(obj);
-  // Performance tweak: We skip iterating over the klass pointer since we
-  // know that Universe::TypeArrayKlass never moves.
-  return t->object_size();
-}
-
-int TypeArrayKlass::oop_oop_iterate(oop obj, ExtendedOopClosure* blk) {
-  assert(obj->is_typeArray(),"must be a type array");
-  typeArrayOop t = typeArrayOop(obj);
-  // Performance tweak: We skip iterating over the klass pointer since we
-  // know that Universe::TypeArrayKlass never moves.
-  return t->object_size();
-}
-
-int TypeArrayKlass::oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr) {
-  assert(obj->is_typeArray(),"must be a type array");
-  typeArrayOop t = typeArrayOop(obj);
-  // Performance tweak: We skip iterating over the klass pointer since we
-  // know that Universe::TypeArrayKlass never moves.
-  return t->object_size();
-}
-
-#if INCLUDE_ALL_GCS
-void TypeArrayKlass::oop_push_contents(PSPromotionManager* pm, oop obj) {
-  ShouldNotReachHere();
-  assert(obj->is_typeArray(),"must be a type array");
-}
-
-int
-TypeArrayKlass::oop_update_pointers(ParCompactionManager* cm, oop obj) {
-  assert(obj->is_typeArray(),"must be a type array");
-  return typeArrayOop(obj)->object_size();
-}
-#endif // INCLUDE_ALL_GCS
-
 void TypeArrayKlass::initialize(TRAPS) {
   // Nothing to do. Having this function is handy since objArrayKlasses can be
   // initialized by calling initialize on their bottom_klass, see ObjArrayKlass::initialize
--- a/hotspot/src/share/vm/oops/typeArrayKlass.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -72,16 +72,46 @@
   // Copying
   void  copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS);
 
-  // Iteration
-  int oop_oop_iterate(oop obj, ExtendedOopClosure* blk);
-  int oop_oop_iterate_m(oop obj, ExtendedOopClosure* blk, MemRegion mr);
+  // GC specific object visitors
+  //
+  // Mark Sweep
+  void oop_ms_follow_contents(oop obj);
+  int  oop_ms_adjust_pointers(oop obj);
+#if INCLUDE_ALL_GCS
+  // Parallel Scavenge
+  void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
+  // Parallel Compact
+  void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
+  void oop_pc_update_pointers(oop obj);
+#endif
+
+  // Oop iterators. Since there are no oops in TypeArrayKlasses,
+  // these functions only return the size of the object.
+
+ private:
+  // The implementation used by all oop_oop_iterate functions in TypeArrayKlasses.
+  inline int oop_oop_iterate_impl(oop obj, ExtendedOopClosure* closure);
 
-  // Garbage collection
-  void oop_follow_contents(oop obj);
-  int  oop_adjust_pointers(oop obj);
+ public:
+
+#define TypeArrayKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix)    \
+  int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure);       \
+  int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure,    \
+                                     MemRegion mr);                       \
+  int oop_oop_iterate_range##nv_suffix(oop obj, OopClosureType* closure,  \
+                                     int start, int end);
 
-  // Parallel Scavenge and Parallel Old
-  PARALLEL_GC_DECLS
+  ALL_OOP_OOP_ITERATE_CLOSURES_1(TypeArrayKlass_OOP_OOP_ITERATE_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_2(TypeArrayKlass_OOP_OOP_ITERATE_DECL)
+
+#if INCLUDE_ALL_GCS
+#define TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix)  \
+  int  oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure);
+
+  ALL_OOP_OOP_ITERATE_CLOSURES_1(TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+  ALL_OOP_OOP_ITERATE_CLOSURES_2(TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
+#endif // INCLUDE_ALL_GCS
+
 
  protected:
   // Find n'th dimensional array
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#ifndef SHARE_VM_OOPS_TYPEARRAYKLASS_INLINE_HPP
+#define SHARE_VM_OOPS_TYPEARRAYKLASS_INLINE_HPP
+
+#include "oops/oop.inline.hpp"
+#include "oops/typeArrayKlass.hpp"
+#include "oops/typeArrayOop.hpp"
+
+class ExtendedOopClosure;
+
+inline int TypeArrayKlass::oop_oop_iterate_impl(oop obj, ExtendedOopClosure* closure) {
+  assert(obj->is_typeArray(),"must be a type array");
+  typeArrayOop t = typeArrayOop(obj);
+  // Performance tweak: We skip iterating over the klass pointer since we
+  // know that Universe::TypeArrayKlass never moves.
+  return t->object_size();
+}
+
+#define TypeArrayKlass_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+                                                                        \
+int TypeArrayKlass::                                                    \
+oop_oop_iterate##nv_suffix(oop obj, OopClosureType* closure) {          \
+  return oop_oop_iterate_impl(obj, closure);                            \
+}
+
+#if INCLUDE_ALL_GCS
+#define TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)  \
+                                                                                  \
+int TypeArrayKlass::                                                              \
+oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {          \
+  return oop_oop_iterate_impl(obj, closure);                                      \
+}
+#else
+#define TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+#endif
+
+
+#define TypeArrayKlass_OOP_OOP_ITERATE_DEFN_m(OopClosureType, nv_suffix)          \
+                                                                                  \
+int TypeArrayKlass::                                                              \
+oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* closure, MemRegion mr) {  \
+  return oop_oop_iterate_impl(obj, closure);                                      \
+}
+
+#define ALL_TYPE_ARRAY_KLASS_OOP_OOP_ITERATE_DEFN(OopClosureType, nv_suffix)  \
+  TypeArrayKlass_OOP_OOP_ITERATE_DEFN(          OopClosureType, nv_suffix)    \
+  TypeArrayKlass_OOP_OOP_ITERATE_DEFN_m(        OopClosureType, nv_suffix)    \
+  TypeArrayKlass_OOP_OOP_ITERATE_BACKWARDS_DEFN(OopClosureType, nv_suffix)
+
+#endif // SHARE_VM_OOPS_TYPEARRAYKLASS_INLINE_HPP
--- a/hotspot/src/share/vm/opto/bytecodeInfo.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/bytecodeInfo.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -631,11 +631,11 @@
   }
   int max_inline_level_adjust = 0;
   if (caller_jvms->method() != NULL) {
-    if (caller_jvms->method()->is_compiled_lambda_form())
+    if (caller_jvms->method()->is_compiled_lambda_form()) {
       max_inline_level_adjust += 1;  // don't count actions in MH or indy adapter frames
-    else if (callee_method->is_method_handle_intrinsic() ||
-             callee_method->is_compiled_lambda_form()) {
-      max_inline_level_adjust += 1;  // don't count method handle calls from java.lang.invoke implem
+    } else if (callee_method->is_method_handle_intrinsic() ||
+               callee_method->is_compiled_lambda_form()) {
+      max_inline_level_adjust += 1;  // don't count method handle calls from java.lang.invoke implementation
     }
     if (max_inline_level_adjust != 0 && C->print_inlining() && (Verbose || WizardMode)) {
       CompileTask::print_inline_indent(inline_level());
--- a/hotspot/src/share/vm/opto/c2_globals.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/c2_globals.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -324,6 +324,9 @@
   develop(bool, SuperWordRTDepCheck, false,                                 \
           "Enable runtime dependency checks.")                              \
                                                                             \
+  product(bool, SuperWordReductions, true,                                  \
+          "Enable reductions support in superword.")                        \
+                                                                            \
   notproduct(bool, TraceSuperWord, false,                                   \
           "Trace superword transforms")                                     \
                                                                             \
@@ -590,9 +593,6 @@
   develop(bool, PoisonOSREntry, true,                                       \
            "Detect abnormal calls to OSR code")                             \
                                                                             \
-  product(bool, UseCondCardMark, false,                                     \
-          "Check for already marked card before updating card table")       \
-                                                                            \
   develop(bool, SoftMatchFailure, trueInProduct,                            \
           "If the DFA fails to match a node, print a message and bail out") \
                                                                             \
--- a/hotspot/src/share/vm/opto/callGenerator.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/callGenerator.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -876,7 +876,8 @@
           // Parse::do_call())
           target = C->optimize_virtual_call(caller, jvms->bci(), klass, klass,
                                             target, receiver_type, is_virtual,
-                                            call_does_dispatch, vtable_index);  // out-parameters
+                                            call_does_dispatch, vtable_index, // out-parameters
+                                            /*check_access=*/false);
           // We lack profiling at this call but type speculation may
           // provide us with a type
           speculative_receiver_type = (receiver_type != NULL) ? receiver_type->speculative_type() : NULL;
--- a/hotspot/src/share/vm/opto/castnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/castnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -73,16 +73,6 @@
   return (in(0) && remove_dead_region(phase, can_reshape)) ? this : NULL;
 }
 
-//------------------------------Ideal_DU_postCCP-------------------------------
-// Throw away cast after constant propagation
-Node *ConstraintCastNode::Ideal_DU_postCCP( PhaseCCP *ccp ) {
-  const Type *t = ccp->type(in(1));
-  ccp->hash_delete(this);
-  set_type(t);                   // Turn into ID function
-  ccp->hash_insert(this);
-  return this;
-}
-
 uint CastIINode::size_of() const {
   return sizeof(*this);
 }
@@ -164,13 +154,6 @@
   return res;
 }
 
-Node *CastIINode::Ideal_DU_postCCP(PhaseCCP *ccp) {
-  if (_carry_dependency) {
-    return NULL;
-  }
-  return ConstraintCastNode::Ideal_DU_postCCP(ccp);
-}
-
 #ifndef PRODUCT
 void CastIINode::dump_spec(outputStream *st) const {
   TypeNode::dump_spec(st);
@@ -181,20 +164,6 @@
 #endif
 
 //=============================================================================
-
-//------------------------------Ideal_DU_postCCP-------------------------------
-// If not converting int->oop, throw away cast after constant propagation
-Node *CastPPNode::Ideal_DU_postCCP( PhaseCCP *ccp ) {
-  const Type *t = ccp->type(in(1));
-  if (!t->isa_oop_ptr() || ((in(1)->is_DecodeN()) && Matcher::gen_narrow_oop_implicit_null_checks())) {
-    return NULL; // do not transform raw pointers or narrow oops
-  }
-  return ConstraintCastNode::Ideal_DU_postCCP(ccp);
-}
-
-
-
-//=============================================================================
 //------------------------------Identity---------------------------------------
 // If input is already higher or equal to cast type, then this is an identity.
 Node *CheckCastPPNode::Identity( PhaseTransform *phase ) {
@@ -216,16 +185,13 @@
   const Type *result = _type;
   if( in_type != NULL && my_type != NULL ) {
     TypePtr::PTR   in_ptr    = in_type->ptr();
-    if( in_ptr == TypePtr::Null ) {
+    if (in_ptr == TypePtr::Null) {
       result = in_type;
-    } else if( in_ptr == TypePtr::Constant ) {
-      // Casting a constant oop to an interface?
-      // (i.e., a String to a Comparable?)
-      // Then return the interface.
+    } else if (in_ptr == TypePtr::Constant) {
       const TypeOopPtr *jptr = my_type->isa_oopptr();
-      assert( jptr, "" );
-      result =  (jptr->klass()->is_interface() || !in_type->higher_equal(_type))
-      ? my_type->cast_to_ptr_type( TypePtr::NotNull )
+      assert(jptr, "");
+      result = !in_type->higher_equal(_type)
+      ? my_type->cast_to_ptr_type(TypePtr::NotNull)
       : in_type;
     } else {
       result =  my_type->cast_to_ptr_type( my_type->join_ptr(in_ptr) );
--- a/hotspot/src/share/vm/opto/castnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/castnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -42,7 +42,6 @@
   virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
   virtual int Opcode() const;
   virtual uint ideal_reg() const = 0;
-  virtual Node *Ideal_DU_postCCP( PhaseCCP * );
 };
 
 //------------------------------CastIINode-------------------------------------
@@ -63,7 +62,6 @@
   virtual uint ideal_reg() const { return Op_RegI; }
   virtual Node *Identity( PhaseTransform *phase );
   virtual const Type *Value( PhaseTransform *phase ) const;
-  virtual Node *Ideal_DU_postCCP( PhaseCCP * );
 #ifndef PRODUCT
   virtual void dump_spec(outputStream *st) const;
 #endif
@@ -76,7 +74,6 @@
   CastPPNode (Node *n, const Type *t ): ConstraintCastNode(n, t) {}
   virtual int Opcode() const;
   virtual uint ideal_reg() const { return Op_RegP; }
-  virtual Node *Ideal_DU_postCCP( PhaseCCP * );
 };
 
 //------------------------------CheckCastPPNode--------------------------------
@@ -94,9 +91,6 @@
   virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
   virtual int   Opcode() const;
   virtual uint  ideal_reg() const { return Op_RegP; }
-  // No longer remove CheckCast after CCP as it gives me a place to hang
-  // the proper address type - which is required to compute anti-deps.
-  //virtual Node *Ideal_DU_postCCP( PhaseCCP * );
 };
 
 
--- a/hotspot/src/share/vm/opto/cfgnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/cfgnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -525,13 +525,16 @@
       // Cut the backedge input and remove phis since no data paths left.
       // We don't cut outputs to other nodes here since we need to put them
       // on the worklist.
+      PhaseIterGVN *igvn = phase->is_IterGVN();
+      if (in(1)->outcnt() == 1) {
+        igvn->_worklist.push(in(1));
+      }
       del_req(1);
       cnt = 0;
       assert( req() == 1, "no more inputs expected" );
       uint max = outcnt();
       bool progress = true;
       Node *top = phase->C->top();
-      PhaseIterGVN *igvn = phase->is_IterGVN();
       DUIterator j;
       while(progress) {
         progress = false;
--- a/hotspot/src/share/vm/opto/cfgnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/cfgnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -263,6 +263,30 @@
   // Size is bigger to hold the probability field.  However, _prob does not
   // change the semantics so it does not appear in the hash & cmp functions.
   virtual uint size_of() const { return sizeof(*this); }
+
+private:
+  ProjNode* range_check_trap_proj(int& flip, Node*& l, Node*& r);
+  ProjNode* range_check_trap_proj() {
+    int flip_test = 0;
+    Node* l = NULL;
+    Node* r = NULL;
+    return range_check_trap_proj(flip_test, l, r);
+  }
+
+  // Helper methods for fold_compares
+  bool cmpi_folds(PhaseIterGVN* igvn);
+  bool is_ctrl_folds(Node* ctrl, PhaseIterGVN* igvn);
+  bool has_shared_region(ProjNode* proj, ProjNode*& success, ProjNode*& fail);
+  bool has_only_uncommon_traps(ProjNode* proj, ProjNode*& success, ProjNode*& fail, PhaseIterGVN* igvn);
+  static void merge_uncommon_traps(ProjNode* proj, ProjNode* success, ProjNode* fail, PhaseIterGVN* igvn);
+  static void improve_address_types(Node* l, Node* r, ProjNode* fail, PhaseIterGVN* igvn);
+  bool is_cmp_with_loadrange(ProjNode* proj);
+  bool is_null_check(ProjNode* proj, PhaseIterGVN* igvn);
+  bool is_side_effect_free_test(ProjNode* proj, PhaseIterGVN* igvn);
+  void reroute_side_effect_free_unc(ProjNode* proj, ProjNode* dom_proj, PhaseIterGVN* igvn);
+  ProjNode* uncommon_trap_proj(CallStaticJavaNode*& call) const;
+  bool fold_compares_helper(ProjNode* proj, ProjNode* success, ProjNode* fail, PhaseIterGVN* igvn);
+
 public:
 
   // Degrees of branch prediction probability by order of magnitude:
@@ -348,7 +372,7 @@
   virtual const RegMask &out_RegMask() const;
   void dominated_by(Node* prev_dom, PhaseIterGVN* igvn);
   int is_range_check(Node* &range, Node* &index, jint &offset);
-  Node* fold_compares(PhaseGVN* phase);
+  Node* fold_compares(PhaseIterGVN* phase);
   static Node* up_one_dom(Node* curr, bool linear_only = false);
 
   // Takes the type of val and filters it through the test represented
--- a/hotspot/src/share/vm/opto/chaitin.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/chaitin.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -2095,7 +2095,7 @@
 // Dump a register name into a buffer.  Be intelligent if we get called
 // before allocation is complete.
 char *PhaseChaitin::dump_register( const Node *n, char *buf  ) const {
-  if( !this ) {                 // Not got anything?
+  if( this == NULL ) {          // Not got anything?
     sprintf(buf,"N%d",n->_idx); // Then use Node index
   } else if( _node_regs ) {
     // Post allocation, use direct mappings, no LRG info available
--- a/hotspot/src/share/vm/opto/classes.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/classes.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -266,9 +266,13 @@
 macro(AddVB)
 macro(AddVS)
 macro(AddVI)
+macro(AddReductionVI)
 macro(AddVL)
+macro(AddReductionVL)
 macro(AddVF)
+macro(AddReductionVF)
 macro(AddVD)
+macro(AddReductionVD)
 macro(SubVB)
 macro(SubVS)
 macro(SubVI)
@@ -277,8 +281,11 @@
 macro(SubVD)
 macro(MulVS)
 macro(MulVI)
+macro(MulReductionVI)
 macro(MulVF)
+macro(MulReductionVF)
 macro(MulVD)
+macro(MulReductionVD)
 macro(DivVF)
 macro(DivVD)
 macro(LShiftCntV)
--- a/hotspot/src/share/vm/opto/compile.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/compile.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -2811,9 +2811,38 @@
     break;
   }
 
-#ifdef _LP64
-  case Op_CastPP:
-    if (n->in(1)->is_DecodeN() && Matcher::gen_narrow_oop_implicit_null_checks()) {
+  case Op_CastPP: {
+    // Remove CastPP nodes to gain more freedom during scheduling but
+    // keep the dependency they encode as control or precedence edges
+    // (if control is set already) on memory operations. Some CastPP
+    // nodes don't have a control (don't carry a dependency): skip
+    // those.
+    if (n->in(0) != NULL) {
+      ResourceMark rm;
+      Unique_Node_List wq;
+      wq.push(n);
+      for (uint next = 0; next < wq.size(); ++next) {
+        Node *m = wq.at(next);
+        for (DUIterator_Fast imax, i = m->fast_outs(imax); i < imax; i++) {
+          Node* use = m->fast_out(i);
+          if (use->is_Mem() || use->is_EncodeNarrowPtr()) {
+            use->ensure_control_or_add_prec(n->in(0));
+          } else if (use->in(0) == NULL) {
+            switch(use->Opcode()) {
+            case Op_AddP:
+            case Op_DecodeN:
+            case Op_DecodeNKlass:
+            case Op_CheckCastPP:
+            case Op_CastPP:
+              wq.push(use);
+              break;
+            }
+          }
+        }
+      }
+    }
+    const bool is_LP64 = LP64_ONLY(true) NOT_LP64(false);
+    if (is_LP64 && n->in(1)->is_DecodeN() && Matcher::gen_narrow_oop_implicit_null_checks()) {
       Node* in1 = n->in(1);
       const Type* t = n->bottom_type();
       Node* new_in1 = in1->clone();
@@ -2846,9 +2875,15 @@
       if (in1->outcnt() == 0) {
         in1->disconnect_inputs(NULL, this);
       }
+    } else {
+      n->subsume_by(n->in(1), this);
+      if (n->outcnt() == 0) {
+        n->disconnect_inputs(NULL, this);
+      }
     }
     break;
-
+  }
+#ifdef _LP64
   case Op_CmpP:
     // Do this transformation here to preserve CmpPNode::sub() and
     // other TypePtr related Ideal optimizations (for example, ptr nullness).
@@ -3049,6 +3084,15 @@
   case Op_StoreVector:
     break;
 
+  case Op_AddReductionVI:
+  case Op_AddReductionVL:
+  case Op_AddReductionVF:
+  case Op_AddReductionVD:
+  case Op_MulReductionVI:
+  case Op_MulReductionVF:
+  case Op_MulReductionVD:
+    break;
+
   case Op_PackB:
   case Op_PackS:
   case Op_PackI:
--- a/hotspot/src/share/vm/opto/compile.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/compile.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -879,9 +879,11 @@
   ciMethod* optimize_virtual_call(ciMethod* caller, int bci, ciInstanceKlass* klass,
                                   ciKlass* holder, ciMethod* callee,
                                   const TypeOopPtr* receiver_type, bool is_virtual,
-                                  bool &call_does_dispatch, int &vtable_index);
+                                  bool &call_does_dispatch, int &vtable_index,
+                                  bool check_access = true);
   ciMethod* optimize_inlining(ciMethod* caller, int bci, ciInstanceKlass* klass,
-                              ciMethod* callee, const TypeOopPtr* receiver_type);
+                              ciMethod* callee, const TypeOopPtr* receiver_type,
+                              bool check_access = true);
 
   // Report if there were too many traps at a current method and bci.
   // Report if a trap was recorded, and/or PerMethodTrapLimit was exceeded.
--- a/hotspot/src/share/vm/opto/doCall.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/doCall.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -959,13 +959,15 @@
 ciMethod* Compile::optimize_virtual_call(ciMethod* caller, int bci, ciInstanceKlass* klass,
                                          ciKlass* holder, ciMethod* callee,
                                          const TypeOopPtr* receiver_type, bool is_virtual,
-                                         bool& call_does_dispatch, int& vtable_index) {
+                                         bool& call_does_dispatch, int& vtable_index,
+                                         bool check_access) {
   // Set default values for out-parameters.
   call_does_dispatch = true;
   vtable_index       = Method::invalid_vtable_index;
 
   // Choose call strategy.
-  ciMethod* optimized_virtual_method = optimize_inlining(caller, bci, klass, callee, receiver_type);
+  ciMethod* optimized_virtual_method = optimize_inlining(caller, bci, klass, callee,
+                                                         receiver_type, check_access);
 
   // Have the call been sufficiently improved such that it is no longer a virtual?
   if (optimized_virtual_method != NULL) {
@@ -980,7 +982,8 @@
 
 // Identify possible target method and inlining style
 ciMethod* Compile::optimize_inlining(ciMethod* caller, int bci, ciInstanceKlass* klass,
-                                     ciMethod* callee, const TypeOopPtr* receiver_type) {
+                                     ciMethod* callee, const TypeOopPtr* receiver_type,
+                                     bool check_access) {
   // only use for virtual or interface calls
 
   // If it is obviously final, do not bother to call find_monomorphic_target,
@@ -1020,7 +1023,7 @@
   }
 
   ciInstanceKlass*   calling_klass = caller->holder();
-  ciMethod* cha_monomorphic_target = callee->find_monomorphic_target(calling_klass, klass, actual_receiver);
+  ciMethod* cha_monomorphic_target = callee->find_monomorphic_target(calling_klass, klass, actual_receiver, check_access);
   if (cha_monomorphic_target != NULL) {
     assert(!cha_monomorphic_target->is_abstract(), "");
     // Look at the method-receiver type.  Does it add "too much information"?
--- a/hotspot/src/share/vm/opto/gcm.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/gcm.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -100,6 +100,9 @@
   }
 }
 
+static bool is_dominator(Block* d, Block* n) {
+  return d->dom_lca(n) == d;
+}
 
 //------------------------------schedule_pinned_nodes--------------------------
 // Set the basic block for Nodes pinned into blocks
@@ -122,6 +125,42 @@
         schedule_node_into_block(node, block);
       }
 
+      // If the node has precedence edges (added when CastPP nodes are
+      // removed in final_graph_reshaping), fix the control of the
+      // node to cover the precedence edges and remove the
+      // dependencies.
+      Node* n = NULL;
+      for (uint i = node->len()-1; i >= node->req(); i--) {
+        Node* m = node->in(i);
+        if (m == NULL) continue;
+        // Skip the precedence edge if the test that guarded a CastPP:
+        // - was optimized out during escape analysis
+        // (OptimizePtrCompare): the CastPP's control isn't an end of
+        // block.
+        // - is moved in the branch of a dominating If: the control of
+        // the CastPP is then a Region.
+        if (m->is_block_proj() || m->is_block_start()) {
+          node->rm_prec(i);
+          if (n == NULL) {
+            n = m;
+          } else {
+            Block* bn = get_block_for_node(n);
+            Block* bm = get_block_for_node(m);
+            assert(is_dominator(bn, bm) || is_dominator(bm, bn), "one must dominate the other");
+            n = is_dominator(bn, bm) ? m : n;
+          }
+        }
+      }
+      if (n != NULL) {
+        assert(node->in(0), "control should have been set");
+        Block* bn = get_block_for_node(n);
+        Block* bnode = get_block_for_node(node->in(0));
+        assert(is_dominator(bn, bnode) || is_dominator(bnode, bn), "one must dominate the other");
+        if (!is_dominator(bn, bnode)) {
+          node->set_req(0, n);
+        }
+      }
+
       // process all inputs that are non NULL
       for (int i = node->req() - 1; i >= 0; --i) {
         if (node->in(i) != NULL) {
--- a/hotspot/src/share/vm/opto/graphKit.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/graphKit.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -2530,6 +2530,11 @@
 // prior to coming here.
 Node* Phase::gen_subtype_check(Node* subklass, Node* superklass, Node** ctrl, MergeMemNode* mem, PhaseGVN* gvn) {
   Compile* C = gvn->C;
+
+  if ((*ctrl)->is_top()) {
+    return C->top();
+  }
+
   // Fast check for identical types, perhaps identical constants.
   // The types can even be identical non-constants, in cases
   // involving Array.newInstance, Object.clone, etc.
@@ -2792,18 +2797,19 @@
  */
 Node* GraphKit::maybe_cast_profiled_obj(Node* obj,
                                         ciKlass* type,
-                                        bool not_null,
-                                        SafePointNode* sfpt) {
+                                        bool not_null) {
+  if (stopped()) {
+    return obj;
+  }
+
   // type == NULL if profiling tells us this object is always null
   if (type != NULL) {
     Deoptimization::DeoptReason class_reason = Deoptimization::Reason_speculate_class_check;
     Deoptimization::DeoptReason null_reason = Deoptimization::Reason_speculate_null_check;
-    ciMethod* trap_method = (sfpt == NULL) ? method() : sfpt->jvms()->method();
-    int trap_bci = (sfpt == NULL) ? bci() : sfpt->jvms()->bci();
 
     if (!too_many_traps(null_reason) && !too_many_recompiles(null_reason) &&
-        !C->too_many_traps(trap_method, trap_bci, class_reason) &&
-        !C->too_many_recompiles(trap_method, trap_bci, class_reason)) {
+        !too_many_traps(class_reason) &&
+        !too_many_recompiles(class_reason)) {
       Node* not_null_obj = NULL;
       // not_null is true if we know the object is not null and
       // there's no need for a null check
@@ -2819,12 +2825,7 @@
       ciKlass* exact_kls = type;
       Node* slow_ctl  = type_check_receiver(exact_obj, exact_kls, 1.0,
                                             &exact_obj);
-      if (sfpt != NULL) {
-        GraphKit kit(sfpt->jvms());
-        PreserveJVMState pjvms(&kit);
-        kit.set_control(slow_ctl);
-        kit.uncommon_trap_exact(class_reason, Deoptimization::Action_maybe_recompile);
-      } else {
+      {
         PreserveJVMState pjvms(this);
         set_control(slow_ctl);
         uncommon_trap_exact(class_reason, Deoptimization::Action_maybe_recompile);
--- a/hotspot/src/share/vm/opto/graphKit.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/graphKit.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -409,8 +409,7 @@
   // Cast obj to type and emit guard unless we had too many traps here already
   Node* maybe_cast_profiled_obj(Node* obj,
                                 ciKlass* type,
-                                bool not_null = false,
-                                SafePointNode* sfpt = NULL);
+                                bool not_null = false);
 
   // Cast obj to not-null on this path
   Node* cast_not_null(Node* obj, bool do_replace_in_map = true);
--- a/hotspot/src/share/vm/opto/ifnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/ifnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -25,11 +25,13 @@
 #include "precompiled.hpp"
 #include "memory/allocation.inline.hpp"
 #include "opto/addnode.hpp"
+#include "opto/castnode.hpp"
 #include "opto/cfgnode.hpp"
 #include "opto/connode.hpp"
 #include "opto/loopnode.hpp"
 #include "opto/phaseX.hpp"
 #include "opto/runtime.hpp"
+#include "opto/rootnode.hpp"
 #include "opto/subnode.hpp"
 
 // Portions of code courtesy of Clifford Click
@@ -232,16 +234,24 @@
   // Make a region merging constants and a region merging the rest
   uint req_c = 0;
   Node* predicate_proj = NULL;
+  int nb_predicate_proj = 0;
   for (uint ii = 1; ii < r->req(); ii++) {
     if (phi->in(ii) == con1) {
       req_c++;
     }
     Node* proj = PhaseIdealLoop::find_predicate(r->in(ii));
     if (proj != NULL) {
-      assert(predicate_proj == NULL, "only one predicate entry expected");
+      nb_predicate_proj++;
       predicate_proj = proj;
     }
   }
+  if (nb_predicate_proj > 1) {
+    // Can happen in case of loop unswitching and when the loop is
+    // optimized out: it's not a loop anymore so we don't care about
+    // predicates.
+    assert(!r->is_Loop(), "this must not be a loop anymore");
+    predicate_proj = NULL;
+  }
   Node* predicate_c = NULL;
   Node* predicate_x = NULL;
   bool counted_loop = r->is_CountedLoop();
@@ -449,62 +459,59 @@
   return new ConINode(TypeInt::ZERO);
 }
 
-//------------------------------is_range_check---------------------------------
-// Return 0 if not a range check.  Return 1 if a range check and set index and
-// offset.  Return 2 if we had to negate the test.  Index is NULL if the check
-// is versus a constant.
-int IfNode::is_range_check(Node* &range, Node* &index, jint &offset) {
+// if this IfNode follows a range check pattern return the projection
+// for the failed path
+ProjNode* IfNode::range_check_trap_proj(int& flip_test, Node*& l, Node*& r) {
   Node* b = in(1);
-  if (b == NULL || !b->is_Bool())  return 0;
+  if (b == NULL || !b->is_Bool())  return NULL;
   BoolNode* bn = b->as_Bool();
   Node* cmp = bn->in(1);
-  if (cmp == NULL)  return 0;
-  if (cmp->Opcode() != Op_CmpU)  return 0;
+  if (cmp == NULL)  return NULL;
+  if (cmp->Opcode() != Op_CmpU)  return NULL;
 
-  Node* l = cmp->in(1);
-  Node* r = cmp->in(2);
-  int flip_test = 1;
+  l = cmp->in(1);
+  r = cmp->in(2);
+  flip_test = 1;
   if (bn->_test._test == BoolTest::le) {
     l = cmp->in(2);
     r = cmp->in(1);
     flip_test = 2;
   } else if (bn->_test._test != BoolTest::lt) {
-    return 0;
+    return NULL;
   }
-  if (l->is_top())  return 0;   // Top input means dead test
-  if (r->Opcode() != Op_LoadRange)  return 0;
+  if (l->is_top())  return NULL;   // Top input means dead test
+  if (r->Opcode() != Op_LoadRange)  return NULL;
 
   // We have recognized one of these forms:
   //  Flip 1:  If (Bool[<] CmpU(l, LoadRange)) ...
   //  Flip 2:  If (Bool[<=] CmpU(LoadRange, l)) ...
 
+  ProjNode* iftrap = proj_out(flip_test == 2 ? true : false);
+  return iftrap;
+}
+
+
+//------------------------------is_range_check---------------------------------
+// Return 0 if not a range check.  Return 1 if a range check and set index and
+// offset.  Return 2 if we had to negate the test.  Index is NULL if the check
+// is versus a constant.
+int IfNode::is_range_check(Node* &range, Node* &index, jint &offset) {
+  int flip_test = 0;
+  Node* l = NULL;
+  Node* r = NULL;
+  ProjNode* iftrap = range_check_trap_proj(flip_test, l, r);
+
+  if (iftrap == NULL) {
+    return 0;
+  }
+
   // Make sure it's a real range check by requiring an uncommon trap
   // along the OOB path.  Otherwise, it's possible that the user wrote
   // something which optimized to look like a range check but behaves
   // in some other way.
-  Node* iftrap = proj_out(flip_test == 2 ? true : false);
-  bool found_trap = false;
-  if (iftrap != NULL) {
-    Node* u = iftrap->unique_ctrl_out();
-    if (u != NULL) {
-      // It could be a merge point (Region) for uncommon trap.
-      if (u->is_Region()) {
-        Node* c = u->unique_ctrl_out();
-        if (c != NULL) {
-          iftrap = u;
-          u = c;
-        }
-      }
-      if (u->in(0) == iftrap && u->is_CallStaticJava()) {
-        int req = u->as_CallStaticJava()->uncommon_trap_request();
-        if (Deoptimization::trap_request_reason(req) ==
-            Deoptimization::Reason_range_check) {
-          found_trap = true;
-        }
-      }
-    }
+  if (iftrap->is_uncommon_trap_proj(Deoptimization::Reason_range_check) == NULL) {
+    return 0;
   }
-  if (!found_trap)  return 0;   // sorry, no cigar
 
   // Look for index+offset form
   Node* ind = l;
@@ -664,11 +671,12 @@
 //------------------------------fold_compares----------------------------
 // See if a pair of CmpIs can be converted into a CmpU.  In some cases
 // the direction of this if is determined by the preceding if so it
-// can be eliminate entirely.  Given an if testing (CmpI n c) check
-// for an immediately control dependent if that is testing (CmpI n c2)
-// and has one projection leading to this if and the other projection
-// leading to a region that merges one of this ifs control
-// projections.
+// can be eliminate entirely.
+//
+// Given an if testing (CmpI n v) check for an immediately control
+// dependent if that is testing (CmpI n v2) and has one projection
+// leading to this if and the other projection leading to a region
+// that merges one of this ifs control projections.
 //
 //                   If
 //                  / |
@@ -680,79 +688,458 @@
 //            /    \  |
 //           /    Region
 //
-Node* IfNode::fold_compares(PhaseGVN* phase) {
-  if (Opcode() != Op_If) return NULL;
+// Or given an if testing (CmpI n v) check for a dominating if that is
+// testing (CmpI n v2), both having one projection leading to an
+// uncommon trap. Allow Another independent guard in between to cover
+// an explicit range check:
+// if (index < 0 || index >= array.length) {
+// which may need a null check to guard the LoadRange
+//
+//                   If
+//                  / \
+//                 /   \
+//                /     \
+//              If      unc
+//              /\
+//             /  \
+//            /    \
+//           /      unc
+//
+
+// Is the comparison for this If suitable for folding?
+bool IfNode::cmpi_folds(PhaseIterGVN* igvn) {
+  return in(1) != NULL &&
+    in(1)->is_Bool() &&
+    in(1)->in(1) != NULL &&
+    in(1)->in(1)->Opcode() == Op_CmpI &&
+    in(1)->in(1)->in(2) != NULL &&
+    in(1)->in(1)->in(2) != igvn->C->top() &&
+    (in(1)->as_Bool()->_test.is_less() ||
+     in(1)->as_Bool()->_test.is_greater());
+}
+
+// Is a dominating control suitable for folding with this if?
+bool IfNode::is_ctrl_folds(Node* ctrl, PhaseIterGVN* igvn) {
+  return ctrl != NULL &&
+    ctrl->is_Proj() &&
+    ctrl->in(0) != NULL &&
+    ctrl->in(0)->is_If() &&
+    ctrl->in(0)->outcnt() == 2 &&
+    ctrl->in(0)->as_If()->cmpi_folds(igvn) &&
+    // Must compare same value
+    ctrl->in(0)->in(1)->in(1)->in(1) != NULL &&
+    ctrl->in(0)->in(1)->in(1)->in(1) == in(1)->in(1)->in(1);
+}
+
+// Do this If and the dominating If share a region?
+bool IfNode::has_shared_region(ProjNode* proj, ProjNode*& success, ProjNode*& fail) {
+  ProjNode* otherproj = proj->other_if_proj();
+  Node* otherproj_ctrl_use = otherproj->unique_ctrl_out();
+  RegionNode* region = (otherproj_ctrl_use != NULL && otherproj_ctrl_use->is_Region()) ? otherproj_ctrl_use->as_Region() : NULL;
+  success = NULL;
+  fail = NULL;
 
+  if (otherproj->outcnt() == 1 && region != NULL && !region->has_phi()) {
+    for (int i = 0; i < 2; i++) {
+      ProjNode* proj = proj_out(i);
+      if (success == NULL && proj->outcnt() == 1 && proj->unique_out() == region) {
+        success = proj;
+      } else if (fail == NULL) {
+        fail = proj;
+      } else {
+        success = fail = NULL;
+      }
+    }
+  }
+  return success != NULL && fail != NULL;
+}
+
+// Return projection that leads to an uncommon trap if any
+ProjNode* IfNode::uncommon_trap_proj(CallStaticJavaNode*& call) const {
+  for (int i = 0; i < 2; i++) {
+    call = proj_out(i)->is_uncommon_trap_proj(Deoptimization::Reason_none);
+    if (call != NULL) {
+      return proj_out(i);
+    }
+  }
+  return NULL;
+}
+
+// Do this If and the dominating If both branch out to an uncommon trap
+bool IfNode::has_only_uncommon_traps(ProjNode* proj, ProjNode*& success, ProjNode*& fail, PhaseIterGVN* igvn) {
+  ProjNode* otherproj = proj->other_if_proj();
+  CallStaticJavaNode* dom_unc = otherproj->is_uncommon_trap_proj(Deoptimization::Reason_none);
+
+  if (otherproj->outcnt() == 1 && dom_unc != NULL) {
+    CallStaticJavaNode* unc = NULL;
+    ProjNode* unc_proj = uncommon_trap_proj(unc);
+    if (unc_proj != NULL && unc_proj->outcnt() == 1) {
+      if (dom_unc == unc) {
+        // Allow the uncommon trap to be shared through a region
+        RegionNode* r = unc->in(0)->as_Region();
+        if (r->outcnt() != 2 || r->req() != 3 || r->find_edge(otherproj) == -1 || r->find_edge(unc_proj) == -1) {
+          return false;
+        }
+        assert(r->has_phi() == NULL, "simple region shouldn't have a phi");
+      } else if (dom_unc->in(0) != otherproj || unc->in(0) != unc_proj) {
+        return false;
+      }
+      // See merge_uncommon_traps: the reason of the uncommon trap
+      // will be changed and the state of the dominating If will be
+      // used. Checked that we didn't apply this transformation in a
+      // previous compilation and it didn't cause too many traps
+      if (!igvn->C->too_many_traps(dom_unc->jvms()->method(), dom_unc->jvms()->bci(), Deoptimization::Reason_unstable_fused_if) &&
+          !igvn->C->too_many_traps(dom_unc->jvms()->method(), dom_unc->jvms()->bci(), Deoptimization::Reason_range_check)) {
+        success = unc_proj;
+        fail = unc_proj->other_if_proj();
+        return true;
+      }
+    }
+  }
+  return false;
+}
+
+// Check that the 2 CmpI can be folded into as single CmpU and proceed with the folding
+bool IfNode::fold_compares_helper(ProjNode* proj, ProjNode* success, ProjNode* fail, PhaseIterGVN* igvn) {
   Node* this_cmp = in(1)->in(1);
-  if (this_cmp != NULL && this_cmp->Opcode() == Op_CmpI &&
-      this_cmp->in(2)->is_Con() && this_cmp->in(2) != phase->C->top()) {
-    Node* ctrl = in(0);
-    BoolNode* this_bool = in(1)->as_Bool();
-    Node* n = this_cmp->in(1);
-    int hi = this_cmp->in(2)->get_int();
-    if (ctrl != NULL && ctrl->is_Proj() && ctrl->outcnt() == 1 &&
-        ctrl->in(0)->is_If() &&
-        ctrl->in(0)->outcnt() == 2 &&
-        ctrl->in(0)->in(1)->is_Bool() &&
-        ctrl->in(0)->in(1)->in(1)->Opcode() == Op_CmpI &&
-        ctrl->in(0)->in(1)->in(1)->in(2)->is_Con() &&
-        ctrl->in(0)->in(1)->in(1)->in(2) != phase->C->top() &&
-        ctrl->in(0)->in(1)->in(1)->in(1) == n) {
-      IfNode* dom_iff = ctrl->in(0)->as_If();
-      Node* otherproj = dom_iff->proj_out(!ctrl->as_Proj()->_con);
-      if (otherproj->outcnt() == 1 && otherproj->unique_out()->is_Region() &&
-          this_bool->_test._test != BoolTest::ne && this_bool->_test._test != BoolTest::eq) {
-        // Identify which proj goes to the region and which continues on
-        RegionNode* region = otherproj->unique_out()->as_Region();
-        Node* success = NULL;
-        Node* fail = NULL;
-        for (int i = 0; i < 2; i++) {
-          Node* proj = proj_out(i);
-          if (success == NULL && proj->outcnt() == 1 && proj->unique_out() == region) {
-            success = proj;
-          } else if (fail == NULL) {
-            fail = proj;
-          } else {
-            success = fail = NULL;
+  BoolNode* this_bool = in(1)->as_Bool();
+  IfNode* dom_iff = proj->in(0)->as_If();
+  BoolNode* dom_bool = dom_iff->in(1)->as_Bool();
+  Node* lo = dom_iff->in(1)->in(1)->in(2);
+  Node* hi = this_cmp->in(2);
+  Node* n = this_cmp->in(1);
+  ProjNode* otherproj = proj->other_if_proj();
+
+  const TypeInt* lo_type = IfNode::filtered_int_type(igvn, n, otherproj);
+  const TypeInt* hi_type = IfNode::filtered_int_type(igvn, n, success);
+
+  BoolTest::mask lo_test = dom_bool->_test._test;
+  BoolTest::mask hi_test = this_bool->_test._test;
+  BoolTest::mask cond = hi_test;
+
+  // Figure out which of the two tests sets the upper bound and which
+  // sets the lower bound if any.
+  if (hi_type->_lo > lo_type->_hi && hi_type->_hi == max_jint && lo_type->_lo == min_jint) {
+
+    assert((dom_bool->_test.is_less() && !proj->_con) ||
+           (dom_bool->_test.is_greater() && proj->_con), "incorrect test");
+    // this test was canonicalized
+    assert(this_bool->_test.is_less() && fail->_con, "incorrect test");
+
+    if (lo_test == BoolTest::gt || lo_test == BoolTest::le) {
+      lo = igvn->transform(new AddINode(lo, igvn->intcon(1)));
+    }
+  } else if (lo_type->_lo > hi_type->_hi && lo_type->_hi == max_jint && hi_type->_lo == min_jint) {
+    swap(lo, hi);
+    swap(lo_type, hi_type);
+    swap(lo_test, hi_test);
+
+    assert((this_bool->_test.is_less() && proj->_con) ||
+           (this_bool->_test.is_greater() && !proj->_con), "incorrect test");
+    // this test was canonicalized
+    assert(dom_bool->_test.is_less() && !fail->_con, "incorrect test");
+
+    cond = (hi_test == BoolTest::le || hi_test == BoolTest::gt) ? BoolTest::gt : BoolTest::ge;
+
+    if (lo_test == BoolTest::le) {
+      lo = igvn->transform(new AddINode(lo, igvn->intcon(1)));
+    }
+
+  } else {
+    const TypeInt* failtype  = filtered_int_type(igvn, n, proj);
+    if (failtype != NULL) {
+      const TypeInt* type2 = filtered_int_type(igvn, n, fail);
+      if (type2 != NULL) {
+        failtype = failtype->join(type2)->is_int();
+        if (failtype->_lo > failtype->_hi) {
+          // previous if determines the result of this if so
+          // replace Bool with constant
+          igvn->hash_delete(this);
+          set_req(1, igvn->intcon(success->_con));
+          return true;
+        }
+      }
+    }
+
+    lo = NULL;
+    hi = NULL;
+  }
+
+  if (lo && hi) {
+    // Merge the two compares into a single unsigned compare by building (CmpU (n - lo) (hi - lo))
+    Node* adjusted_val = igvn->transform(new SubINode(n,  lo));
+    Node* adjusted_lim = igvn->transform(new SubINode(hi, lo));
+    Node* newcmp = igvn->transform(new CmpUNode(adjusted_val, adjusted_lim));
+    Node* newbool = igvn->transform(new BoolNode(newcmp, cond));
+
+    igvn->is_IterGVN()->replace_input_of(dom_iff, 1, igvn->intcon(proj->_con));
+    igvn->hash_delete(this);
+    set_req(1, newbool);
+
+    return true;
+  }
+  return false;
+}
+
+// Merge the branches that trap for this If and the dominating If into
+// a single region that branches to the uncommon trap for the
+// dominating If
+void IfNode::merge_uncommon_traps(ProjNode* proj, ProjNode* success, ProjNode* fail, PhaseIterGVN* igvn) {
+  ProjNode* otherproj = proj->other_if_proj();
+
+  CallStaticJavaNode* unc = success->is_uncommon_trap_proj(Deoptimization::Reason_none);
+  CallStaticJavaNode* dom_unc = otherproj->is_uncommon_trap_proj(Deoptimization::Reason_none);
+
+  if (unc != dom_unc) {
+    Node* r = new RegionNode(3);
+
+    r->set_req(1, otherproj);
+    r->set_req(2, success);
+    r = igvn->transform(r);
+    assert(r->is_Region(), "can't go away");
+
+    // Make both If trap at the state of the first If: once the CmpI
+    // nodes are merged, if we trap we don't know which of the CmpI
+    // nodes would have caused the trap so we have to restart
+    // execution at the first one
+    igvn->replace_input_of(dom_unc, 0, r);
+    igvn->replace_input_of(unc, 0, igvn->C->top());
+  }
+  int trap_request = dom_unc->uncommon_trap_request();
+  Deoptimization::DeoptReason reason = Deoptimization::trap_request_reason(trap_request);
+  Deoptimization::DeoptAction action = Deoptimization::trap_request_action(trap_request);
+
+  int flip_test = 0;
+  Node* l = NULL;
+  Node* r = NULL;
+
+  if (success->in(0)->as_If()->range_check_trap_proj(flip_test, l, r) != NULL) {
+    // If this looks like a range check, change the trap to
+    // Reason_range_check so the compiler recognizes it as a range
+    // check and applies the corresponding optimizations
+    trap_request = Deoptimization::make_trap_request(Deoptimization::Reason_range_check, action);
+
+    improve_address_types(l, r, fail, igvn);
+  } else if (unc != dom_unc) {
+    // If we trap we won't know what CmpI would have caused the trap
+    // so use a special trap reason to mark this pair of CmpI nodes as
+    // bad candidate for folding. On recompilation we won't fold them
+    // and we may trap again but this time we'll know what branch
+    // traps
+    trap_request = Deoptimization::make_trap_request(Deoptimization::Reason_unstable_fused_if, action);
+  }
+  igvn->replace_input_of(dom_unc, TypeFunc::Parms, igvn->intcon(trap_request));
+}
+
+// If we are turning 2 CmpI nodes into a CmpU that follows the pattern
+// of a rangecheck on index i, on 64 bit the compares may be followed
+// by memory accesses using i as index. In that case, the CmpU tells
+// us something about the values taken by i that can help the compiler
+// (see Compile::conv_I2X_index())
+void IfNode::improve_address_types(Node* l, Node* r, ProjNode* fail, PhaseIterGVN* igvn) {
+#ifdef _LP64
+  ResourceMark rm;
+  Node_Stack stack(2);
+
+  assert(r->Opcode() == Op_LoadRange, "unexpected range check");
+  const TypeInt* array_size = igvn->type(r)->is_int();
+
+  stack.push(l, 0);
+
+  while(stack.size() > 0) {
+    Node* n = stack.node();
+    uint start = stack.index();
+
+    uint i = start;
+    for (; i < n->outcnt(); i++) {
+      Node* use = n->raw_out(i);
+      if (stack.size() == 1) {
+        if (use->Opcode() == Op_ConvI2L) {
+          const TypeLong* bounds = use->as_Type()->type()->is_long();
+          if (bounds->_lo <= array_size->_lo && bounds->_hi >= array_size->_hi &&
+              (bounds->_lo != array_size->_lo || bounds->_hi != array_size->_hi)) {
+            stack.set_index(i+1);
+            stack.push(use, 0);
+            break;
           }
         }
-        if (success != NULL && fail != NULL && !region->has_phi()) {
-          int lo = dom_iff->in(1)->in(1)->in(2)->get_int();
-          BoolNode* dom_bool = dom_iff->in(1)->as_Bool();
-          Node* dom_cmp =  dom_bool->in(1);
-          const TypeInt* failtype  = filtered_int_type(phase, n, ctrl);
-          if (failtype != NULL) {
-            const TypeInt* type2 = filtered_int_type(phase, n, fail);
-            if (type2 != NULL) {
-              failtype = failtype->join(type2)->is_int();
-            } else {
-              failtype = NULL;
-            }
-          }
+      } else if (use->is_Mem()) {
+        Node* ctrl = use->in(0);
+        for (int i = 0; i < 10 && ctrl != NULL && ctrl != fail; i++) {
+          ctrl = up_one_dom(ctrl);
+        }
+        if (ctrl == fail) {
+          Node* init_n = stack.node_at(1);
+          assert(init_n->Opcode() == Op_ConvI2L, "unexpected first node");
+          Node* new_n = igvn->C->conv_I2X_index(igvn, l, array_size);
 
-          if (failtype != NULL &&
-              dom_bool->_test._test != BoolTest::ne && dom_bool->_test._test != BoolTest::eq) {
-            int bound = failtype->_hi - failtype->_lo + 1;
-            if (failtype->_hi != max_jint && failtype->_lo != min_jint && bound > 1) {
-              // Merge the two compares into a single unsigned compare by building  (CmpU (n - lo) hi)
-              BoolTest::mask cond = fail->as_Proj()->_con ? BoolTest::lt : BoolTest::ge;
-              Node* adjusted = phase->transform(new SubINode(n, phase->intcon(failtype->_lo)));
-              Node* newcmp = phase->transform(new CmpUNode(adjusted, phase->intcon(bound)));
-              Node* newbool = phase->transform(new BoolNode(newcmp, cond));
-              phase->is_IterGVN()->replace_input_of(dom_iff, 1, phase->intcon(ctrl->as_Proj()->_con));
-              phase->hash_delete(this);
-              set_req(1, newbool);
-              return this;
-            }
-            if (failtype->_lo > failtype->_hi) {
-              // previous if determines the result of this if so
-              // replace Bool with constant
-              phase->hash_delete(this);
-              set_req(1, phase->intcon(success->as_Proj()->_con));
-              return this;
-            }
+          for (uint j = 2; j < stack.size(); j++) {
+            Node* n = stack.node_at(j);
+            Node* clone = n->clone();
+            int rep = clone->replace_edge(init_n, new_n);
+            assert(rep > 0, "can't find expected node?");
+            clone = igvn->transform(clone);
+            init_n = n;
+            new_n = clone;
+          }
+          igvn->hash_delete(use);
+          int rep = use->replace_edge(init_n, new_n);
+          assert(rep > 0, "can't find expected node?");
+          igvn->transform(use);
+          if (init_n->outcnt() == 0) {
+            igvn->_worklist.push(init_n);
           }
         }
+      } else if (use->in(0) == NULL && (igvn->type(use)->isa_long() ||
+                                        igvn->type(use)->isa_ptr())) {
+        stack.set_index(i+1);
+        stack.push(use, 0);
+        break;
+      }
+    }
+    if (i == n->outcnt()) {
+      stack.pop();
+    }
+  }
+#endif
+}
+
+bool IfNode::is_cmp_with_loadrange(ProjNode* proj) {
+  if (in(1) != NULL &&
+      in(1)->in(1) != NULL &&
+      in(1)->in(1)->in(2) != NULL) {
+    Node* other = in(1)->in(1)->in(2);
+    if (other->Opcode() == Op_LoadRange &&
+        ((other->in(0) != NULL && other->in(0) == proj) ||
+         (other->in(0) == NULL &&
+          other->in(2) != NULL &&
+          other->in(2)->is_AddP() &&
+          other->in(2)->in(1) != NULL &&
+          other->in(2)->in(1)->Opcode() == Op_CastPP &&
+          other->in(2)->in(1)->in(0) == proj))) {
+      return true;
+    }
+  }
+  return false;
+}
+
+bool IfNode::is_null_check(ProjNode* proj, PhaseIterGVN* igvn) {
+  Node* other = in(1)->in(1)->in(2);
+  if (other->in(MemNode::Address) != NULL &&
+      proj->in(0)->in(1) != NULL &&
+      proj->in(0)->in(1)->is_Bool() &&
+      proj->in(0)->in(1)->in(1) != NULL &&
+      proj->in(0)->in(1)->in(1)->Opcode() == Op_CmpP &&
+      proj->in(0)->in(1)->in(1)->in(2) != NULL &&
+      proj->in(0)->in(1)->in(1)->in(1) == other->in(MemNode::Address)->in(AddPNode::Address)->uncast() &&
+      igvn->type(proj->in(0)->in(1)->in(1)->in(2)) == TypePtr::NULL_PTR) {
+    return true;
+  }
+  return false;
+}
+
+// Check that the If that is in between the 2 integer comparisons has
+// no side effect
+bool IfNode::is_side_effect_free_test(ProjNode* proj, PhaseIterGVN* igvn) {
+  if (proj != NULL &&
+      proj->is_uncommon_trap_if_pattern(Deoptimization::Reason_none) &&
+      proj->outcnt() <= 2) {
+    if (proj->outcnt() == 1 ||
+        // Allow simple null check from LoadRange
+        (is_cmp_with_loadrange(proj) && is_null_check(proj, igvn))) {
+      CallStaticJavaNode* unc = proj->is_uncommon_trap_if_pattern(Deoptimization::Reason_none);
+      CallStaticJavaNode* dom_unc = proj->in(0)->in(0)->as_Proj()->is_uncommon_trap_if_pattern(Deoptimization::Reason_none);
+
+      // reroute_side_effect_free_unc changes the state of this
+      // uncommon trap to restart execution at the previous
+      // CmpI. Check that this change in a previous compilation didn't
+      // cause too many traps.
+      int trap_request = unc->uncommon_trap_request();
+      Deoptimization::DeoptReason reason = Deoptimization::trap_request_reason(trap_request);
+
+      if (igvn->C->too_many_traps(dom_unc->jvms()->method(), dom_unc->jvms()->bci(), reason)) {
+        return false;
+      }
+
+      return true;
+    }
+  }
+  return false;
+}
+
+// Make the If between the 2 integer comparisons trap at the state of
+// the first If: the last CmpI is the one replaced by a CmpU and the
+// first CmpI is eliminated, so the test between the 2 CmpI nodes
+// won't be guarded by the first CmpI anymore. It can trap in cases
+// where the first CmpI would have prevented it from executing: on a
+// trap, we need to restart execution at the state of the first CmpI
+void IfNode::reroute_side_effect_free_unc(ProjNode* proj, ProjNode* dom_proj, PhaseIterGVN* igvn) {
+  CallStaticJavaNode* dom_unc = dom_proj->is_uncommon_trap_if_pattern(Deoptimization::Reason_none);
+  ProjNode* otherproj = proj->other_if_proj();
+  CallStaticJavaNode* unc = proj->is_uncommon_trap_if_pattern(Deoptimization::Reason_none);
+  Node* call_proj = dom_unc->unique_ctrl_out();
+  Node* halt = call_proj->unique_ctrl_out();
+
+  Node* new_unc = dom_unc->clone();
+  call_proj = call_proj->clone();
+  halt = halt->clone();
+  Node* c = otherproj->clone();
+
+  c = igvn->transform(c);
+  new_unc->set_req(TypeFunc::Parms, unc->in(TypeFunc::Parms));
+  new_unc->set_req(0, c);
+  new_unc = igvn->transform(new_unc);
+  call_proj->set_req(0, new_unc);
+  call_proj = igvn->transform(call_proj);
+  halt->set_req(0, call_proj);
+  halt = igvn->transform(halt);
+
+  igvn->replace_node(otherproj, igvn->C->top());
+  igvn->C->root()->add_req(halt);
+}
+
+Node* IfNode::fold_compares(PhaseIterGVN* igvn) {
+  if (Opcode() != Op_If) return NULL;
+
+  if (cmpi_folds(igvn)) {
+    Node* ctrl = in(0);
+    if (is_ctrl_folds(ctrl, igvn) &&
+        ctrl->outcnt() == 1) {
+      // A integer comparison immediately dominated by another integer
+      // comparison
+      ProjNode* success = NULL;
+      ProjNode* fail = NULL;
+      ProjNode* dom_cmp = ctrl->as_Proj();
+      if (has_shared_region(dom_cmp, success, fail) &&
+          // Next call modifies graph so must be last
+          fold_compares_helper(dom_cmp, success, fail, igvn)) {
+        return this;
+      }
+      if (has_only_uncommon_traps(dom_cmp, success, fail, igvn) &&
+          // Next call modifies graph so must be last
+          fold_compares_helper(dom_cmp, success, fail, igvn)) {
+        merge_uncommon_traps(dom_cmp, success, fail, igvn);
+        return this;
+      }
+      return NULL;
+    } else if (ctrl->in(0) != NULL &&
+               ctrl->in(0)->in(0) != NULL) {
+      ProjNode* success = NULL;
+      ProjNode* fail = NULL;
+      Node* dom = ctrl->in(0)->in(0);
+      ProjNode* dom_cmp = dom->isa_Proj();
+      ProjNode* other_cmp = ctrl->isa_Proj();
+
+      // Check if it's an integer comparison dominated by another
+      // integer comparison with another test in between
+      if (is_ctrl_folds(dom, igvn) &&
+          has_only_uncommon_traps(dom_cmp, success, fail, igvn) &&
+          is_side_effect_free_test(other_cmp, igvn) &&
+          // Next call modifies graph so must be last
+          fold_compares_helper(dom_cmp, success, fail, igvn)) {
+        reroute_side_effect_free_unc(other_cmp, dom_cmp, igvn);
+        merge_uncommon_traps(dom_cmp, success, fail, igvn);
+        return this;
       }
     }
   }
@@ -1029,7 +1416,7 @@
     // Normal equivalent-test check.
     if( !dom ) return NULL;     // Dead loop?
 
-    Node* result = fold_compares(phase);
+    Node* result = fold_compares(igvn);
     if (result != NULL) {
       return result;
     }
@@ -1089,7 +1476,7 @@
   // be skipped. For example, range check predicate has two checks
   // for lower and upper bounds.
   ProjNode* unc_proj = proj_out(1 - prev_dom->as_Proj()->_con)->as_Proj();
-  if (unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_predicate))
+  if (unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_predicate) != NULL)
    prev_dom = idom;
 
   // Now walk the current IfNode's projections.
--- a/hotspot/src/share/vm/opto/library_call.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/library_call.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -262,6 +262,9 @@
   bool inline_arraycopy();
   AllocateArrayNode* tightly_coupled_allocation(Node* ptr,
                                                 RegionNode* slow_region);
+  JVMState* arraycopy_restore_alloc_state(AllocateArrayNode* alloc, int& saved_reexecute_sp);
+  void arraycopy_move_allocation_here(AllocateArrayNode* alloc, Node* dest, JVMState* saved_jvms, int saved_reexecute_sp);
+
   typedef enum { LS_xadd, LS_xchg, LS_cmpxchg } LoadStoreKind;
   bool inline_unsafe_load_store(BasicType type,  LoadStoreKind kind);
   bool inline_unsafe_ordered_store(BasicType type);
@@ -290,6 +293,7 @@
   bool inline_multiplyToLen();
 
   bool inline_profileBoolean();
+  bool inline_isCompileConstant();
 };
 
 
@@ -549,6 +553,17 @@
     if (!Matcher::match_rule_supported(Op_OverflowMulL) || !UseMathExactIntrinsics) return NULL;
     break;
 
+  case vmIntrinsics::_getShortUnaligned:
+  case vmIntrinsics::_getCharUnaligned:
+  case vmIntrinsics::_getIntUnaligned:
+  case vmIntrinsics::_getLongUnaligned:
+  case vmIntrinsics::_putShortUnaligned:
+  case vmIntrinsics::_putCharUnaligned:
+  case vmIntrinsics::_putIntUnaligned:
+  case vmIntrinsics::_putLongUnaligned:
+    if (!UseUnalignedAccesses) return NULL;
+    break;
+
  default:
     assert(id <= vmIntrinsics::LAST_COMPILER_INLINE, "caller responsibility");
     assert(id != vmIntrinsics::_Object_init && id != vmIntrinsics::_invoke, "enum out of order?");
@@ -799,6 +814,16 @@
   case vmIntrinsics::_putFloatVolatile:         return inline_unsafe_access(!is_native_ptr,  is_store, T_FLOAT,    is_volatile);
   case vmIntrinsics::_putDoubleVolatile:        return inline_unsafe_access(!is_native_ptr,  is_store, T_DOUBLE,   is_volatile);
 
+  case vmIntrinsics::_getShortUnaligned:        return inline_unsafe_access(!is_native_ptr, !is_store, T_SHORT,   !is_volatile);
+  case vmIntrinsics::_getCharUnaligned:         return inline_unsafe_access(!is_native_ptr, !is_store, T_CHAR,    !is_volatile);
+  case vmIntrinsics::_getIntUnaligned:          return inline_unsafe_access(!is_native_ptr, !is_store, T_INT,     !is_volatile);
+  case vmIntrinsics::_getLongUnaligned:         return inline_unsafe_access(!is_native_ptr, !is_store, T_LONG,    !is_volatile);
+
+  case vmIntrinsics::_putShortUnaligned:        return inline_unsafe_access(!is_native_ptr,  is_store, T_SHORT,   !is_volatile);
+  case vmIntrinsics::_putCharUnaligned:         return inline_unsafe_access(!is_native_ptr,  is_store, T_CHAR,    !is_volatile);
+  case vmIntrinsics::_putIntUnaligned:          return inline_unsafe_access(!is_native_ptr,  is_store, T_INT,     !is_volatile);
+  case vmIntrinsics::_putLongUnaligned:         return inline_unsafe_access(!is_native_ptr,  is_store, T_LONG,    !is_volatile);
+
   case vmIntrinsics::_compareAndSwapObject:     return inline_unsafe_load_store(T_OBJECT, LS_cmpxchg);
   case vmIntrinsics::_compareAndSwapInt:        return inline_unsafe_load_store(T_INT,    LS_cmpxchg);
   case vmIntrinsics::_compareAndSwapLong:       return inline_unsafe_load_store(T_LONG,   LS_cmpxchg);
@@ -900,6 +925,8 @@
 
   case vmIntrinsics::_profileBoolean:
     return inline_profileBoolean();
+  case vmIntrinsics::_isCompileConstant:
+    return inline_isCompileConstant();
 
   default:
     // If you get here, it may be that someone has added a new intrinsic
@@ -3664,6 +3691,11 @@
 //---------------------generate_array_guard_common------------------------
 Node* LibraryCallKit::generate_array_guard_common(Node* kls, RegionNode* region,
                                                   bool obj_array, bool not_array) {
+
+  if (stopped()) {
+    return NULL;
+  }
+
   // If obj_array/non_array==false/false:
   // Branch around if the given klass is in fact an array (either obj or prim).
   // If obj_array/non_array==false/true:
@@ -3911,21 +3943,23 @@
         validated = true;
       }
 
-      newcopy = new_array(klass_node, length, 0);  // no arguments to push
-
-      ArrayCopyNode* ac = ArrayCopyNode::make(this, true, original, start, newcopy, intcon(0), moved, true,
-                                              load_object_klass(original), klass_node);
-      if (!is_copyOfRange) {
-        ac->set_copyof(validated);
-      } else {
-        ac->set_copyofrange(validated);
-      }
-      Node* n = _gvn.transform(ac);
-      if (n == ac) {
-        ac->connect_outputs(this);
-      } else {
-        assert(validated, "shouldn't transform if all arguments not validated");
-        set_all_memory(n);
+      if (!stopped()) {
+        newcopy = new_array(klass_node, length, 0);  // no arguments to push
+
+        ArrayCopyNode* ac = ArrayCopyNode::make(this, true, original, start, newcopy, intcon(0), moved, true,
+                                                load_object_klass(original), klass_node);
+        if (!is_copyOfRange) {
+          ac->set_copyof(validated);
+        } else {
+          ac->set_copyofrange(validated);
+        }
+        Node* n = _gvn.transform(ac);
+        if (n == ac) {
+          ac->connect_outputs(this);
+        } else {
+          assert(validated, "shouldn't transform if all arguments not validated");
+          set_all_memory(n);
+        }
       }
     }
   } // original reexecute is set back here
@@ -4674,6 +4708,141 @@
   return true;
 }
 
+// If we have a tighly coupled allocation, the arraycopy may take care
+// of the array initialization. If one of the guards we insert between
+// the allocation and the arraycopy causes a deoptimization, an
+// unitialized array will escape the compiled method. To prevent that
+// we set the JVM state for uncommon traps between the allocation and
+// the arraycopy to the state before the allocation so, in case of
+// deoptimization, we'll reexecute the allocation and the
+// initialization.
+JVMState* LibraryCallKit::arraycopy_restore_alloc_state(AllocateArrayNode* alloc, int& saved_reexecute_sp) {
+  if (alloc != NULL) {
+    ciMethod* trap_method = alloc->jvms()->method();
+    int trap_bci = alloc->jvms()->bci();
+
+    if (!C->too_many_traps(trap_method, trap_bci, Deoptimization::Reason_intrinsic) &
+          !C->too_many_traps(trap_method, trap_bci, Deoptimization::Reason_null_check)) {
+      // Make sure there's no store between the allocation and the
+      // arraycopy otherwise visible side effects could be rexecuted
+      // in case of deoptimization and cause incorrect execution.
+      bool no_interfering_store = true;
+      Node* mem = alloc->in(TypeFunc::Memory);
+      if (mem->is_MergeMem()) {
+        for (MergeMemStream mms(merged_memory(), mem->as_MergeMem()); mms.next_non_empty2(); ) {
+          Node* n = mms.memory();
+          if (n != mms.memory2() && !(n->is_Proj() && n->in(0) == alloc->initialization())) {
+            assert(n->is_Store(), "what else?");
+            no_interfering_store = false;
+            break;
+          }
+        }
+      } else {
+        for (MergeMemStream mms(merged_memory()); mms.next_non_empty(); ) {
+          Node* n = mms.memory();
+          if (n != mem && !(n->is_Proj() && n->in(0) == alloc->initialization())) {
+            assert(n->is_Store(), "what else?");
+            no_interfering_store = false;
+            break;
+          }
+        }
+      }
+
+      if (no_interfering_store) {
+        JVMState* old_jvms = alloc->jvms()->clone_shallow(C);
+        uint size = alloc->req();
+        SafePointNode* sfpt = new SafePointNode(size, old_jvms);
+        old_jvms->set_map(sfpt);
+        for (uint i = 0; i < size; i++) {
+          sfpt->init_req(i, alloc->in(i));
+        }
+        // re-push array length for deoptimization
+        sfpt->ins_req(old_jvms->stkoff() + old_jvms->sp(), alloc->in(AllocateNode::ALength));
+        old_jvms->set_sp(old_jvms->sp()+1);
+        old_jvms->set_monoff(old_jvms->monoff()+1);
+        old_jvms->set_scloff(old_jvms->scloff()+1);
+        old_jvms->set_endoff(old_jvms->endoff()+1);
+        old_jvms->set_should_reexecute(true);
+
+        sfpt->set_i_o(map()->i_o());
+        sfpt->set_memory(map()->memory());
+        sfpt->set_control(map()->control());
+
+        JVMState* saved_jvms = jvms();
+        saved_reexecute_sp = _reexecute_sp;
+
+        set_jvms(sfpt->jvms());
+        _reexecute_sp = jvms()->sp();
+
+        return saved_jvms;
+      }
+    }
+  }
+  return NULL;
+}
+
+// In case of a deoptimization, we restart execution at the
+// allocation, allocating a new array. We would leave an uninitialized
+// array in the heap that GCs wouldn't expect. Move the allocation
+// after the traps so we don't allocate the array if we
+// deoptimize. This is possible because tightly_coupled_allocation()
+// guarantees there's no observer of the allocated array at this point
+// and the control flow is simple enough.
+void LibraryCallKit::arraycopy_move_allocation_here(AllocateArrayNode* alloc, Node* dest, JVMState* saved_jvms, int saved_reexecute_sp) {
+  if (saved_jvms != NULL && !stopped()) {
+    assert(alloc != NULL, "only with a tightly coupled allocation");
+    // restore JVM state to the state at the arraycopy
+    saved_jvms->map()->set_control(map()->control());
+    assert(saved_jvms->map()->memory() == map()->memory(), "memory state changed?");
+    assert(saved_jvms->map()->i_o() == map()->i_o(), "IO state changed?");
+    // If we've improved the types of some nodes (null check) while
+    // emitting the guards, propagate them to the current state
+    map()->replaced_nodes().apply(saved_jvms->map());
+    set_jvms(saved_jvms);
+    _reexecute_sp = saved_reexecute_sp;
+
+    // Remove the allocation from above the guards
+    CallProjections callprojs;
+    alloc->extract_projections(&callprojs, true);
+    InitializeNode* init = alloc->initialization();
+    Node* alloc_mem = alloc->in(TypeFunc::Memory);
+    C->gvn_replace_by(callprojs.fallthrough_ioproj, alloc->in(TypeFunc::I_O));
+    C->gvn_replace_by(init->proj_out(TypeFunc::Memory), alloc_mem);
+    C->gvn_replace_by(init->proj_out(TypeFunc::Control), alloc->in(0));
+
+    // move the allocation here (after the guards)
+    _gvn.hash_delete(alloc);
+    alloc->set_req(TypeFunc::Control, control());
+    alloc->set_req(TypeFunc::I_O, i_o());
+    Node *mem = reset_memory();
+    set_all_memory(mem);
+    alloc->set_req(TypeFunc::Memory, mem);
+    set_control(init->proj_out(TypeFunc::Control));
+    set_i_o(callprojs.fallthrough_ioproj);
+
+    // Update memory as done in GraphKit::set_output_for_allocation()
+    const TypeInt* length_type = _gvn.find_int_type(alloc->in(AllocateNode::ALength));
+    const TypeOopPtr* ary_type = _gvn.type(alloc->in(AllocateNode::KlassNode))->is_klassptr()->as_instance_type();
+    if (ary_type->isa_aryptr() && length_type != NULL) {
+      ary_type = ary_type->is_aryptr()->cast_to_size(length_type);
+    }
+    const TypePtr* telemref = ary_type->add_offset(Type::OffsetBot);
+    int            elemidx  = C->get_alias_index(telemref);
+    set_memory(init->proj_out(TypeFunc::Memory), Compile::AliasIdxRaw);
+    set_memory(init->proj_out(TypeFunc::Memory), elemidx);
+
+    Node* allocx = _gvn.transform(alloc);
+    assert(allocx == alloc, "where has the allocation gone?");
+    assert(dest->is_CheckCastPP(), "not an allocation result?");
+
+    _gvn.hash_delete(dest);
+    dest->set_req(0, control());
+    Node* destx = _gvn.transform(dest);
+    assert(destx == dest, "where has the allocation result gone?");
+  }
+}
+
+
 //------------------------------inline_arraycopy-----------------------
 // public static native void java.lang.System.arraycopy(Object src,  int  srcPos,
 //                                                      Object dest, int destPos,
@@ -4686,6 +4855,19 @@
   Node* dest_offset = argument(3);  // type: int
   Node* length      = argument(4);  // type: int
 
+
+  // Check for allocation before we add nodes that would confuse
+  // tightly_coupled_allocation()
+  AllocateArrayNode* alloc = tightly_coupled_allocation(dest, NULL);
+
+  int saved_reexecute_sp = -1;
+  JVMState* saved_jvms = arraycopy_restore_alloc_state(alloc, saved_reexecute_sp);
+  // See arraycopy_restore_alloc_state() comment
+  // if alloc == NULL we don't have to worry about a tightly coupled allocation so we can emit all needed guards
+  // if saved_jvms != NULL (then alloc != NULL) then we can handle guards and a tightly coupled allocation
+  // if saved_jvms == NULL and alloc != NULL, we can’t emit any guards
+  bool can_emit_guards = (alloc == NULL || saved_jvms != NULL);
+
   // The following tests must be performed
   // (1) src and dest are arrays.
   // (2) src and dest arrays must have elements of the same BasicType
@@ -4699,42 +4881,20 @@
 
   // (3) src and dest must not be null.
   // always do this here because we need the JVM state for uncommon traps
-  src  = null_check(src,  T_ARRAY);
+  Node* null_ctl = top();
+  src  = saved_jvms != NULL ? null_check_oop(src, &null_ctl, true, true) : null_check(src,  T_ARRAY);
+  assert(null_ctl->is_top(), "no null control here");
   dest = null_check(dest, T_ARRAY);
 
-  // Check for allocation before we add nodes that would confuse
-  // tightly_coupled_allocation()
-  AllocateArrayNode* alloc = tightly_coupled_allocation(dest, NULL);
-
-  ciMethod* trap_method = method();
-  int trap_bci = bci();
-  SafePointNode* sfpt = NULL;
-  if (alloc != NULL) {
-    // The JVM state for uncommon traps between the allocation and
-    // arraycopy is set to the state before the allocation: if the
-    // initialization is performed by the array copy, we don't want to
-    // go back to the interpreter with an unitialized array.
-    JVMState* old_jvms = alloc->jvms();
-    JVMState* jvms = old_jvms->clone_shallow(C);
-    uint size = alloc->req();
-    sfpt = new SafePointNode(size, jvms);
-    jvms->set_map(sfpt);
-    for (uint i = 0; i < size; i++) {
-      sfpt->init_req(i, alloc->in(i));
-    }
-    // re-push array length for deoptimization
-    sfpt->ins_req(jvms->stkoff() + jvms->sp(), alloc->in(AllocateNode::ALength));
-    jvms->set_sp(jvms->sp()+1);
-    jvms->set_monoff(jvms->monoff()+1);
-    jvms->set_scloff(jvms->scloff()+1);
-    jvms->set_endoff(jvms->endoff()+1);
-    jvms->set_should_reexecute(true);
-
-    sfpt->set_i_o(map()->i_o());
-    sfpt->set_memory(map()->memory());
-
-    trap_method = jvms->method();
-    trap_bci = jvms->bci();
+  if (!can_emit_guards) {
+    // if saved_jvms == NULL and alloc != NULL, we don't emit any
+    // guards but the arraycopy node could still take advantage of a
+    // tightly allocated allocation. tightly_coupled_allocation() is
+    // called again to make sure it takes the null check above into
+    // account: the null check is mandatory and if it caused an
+    // uncommon trap to be emitted then the allocation can't be
+    // considered tightly coupled in this context.
+    alloc = tightly_coupled_allocation(dest, NULL);
   }
 
   bool validated = false;
@@ -4753,7 +4913,7 @@
   // Is the type for dest from speculation?
   bool dest_spec = false;
 
-  if (!has_src || !has_dest) {
+  if ((!has_src || !has_dest) && can_emit_guards) {
     // We don't have sufficient type information, let's see if
     // speculative types can help. We need to have types for both src
     // and dest so that it pays off.
@@ -4782,7 +4942,7 @@
     if (could_have_src && could_have_dest) {
       // This is going to pay off so emit the required guards
       if (!has_src) {
-        src = maybe_cast_profiled_obj(src, src_k, true, sfpt);
+        src = maybe_cast_profiled_obj(src, src_k, true);
         src_type  = _gvn.type(src);
         top_src  = src_type->isa_aryptr();
         has_src = (top_src != NULL && top_src->klass() != NULL);
@@ -4798,7 +4958,7 @@
     }
   }
 
-  if (has_src && has_dest) {
+  if (has_src && has_dest && can_emit_guards) {
     BasicType src_elem  = top_src->klass()->as_array_klass()->element_type()->basic_type();
     BasicType dest_elem = top_dest->klass()->as_array_klass()->element_type()->basic_type();
     if (src_elem  == T_ARRAY)  src_elem  = T_OBJECT;
@@ -4830,7 +4990,7 @@
       if (could_have_src && could_have_dest) {
         // If we can have both exact types, emit the missing guards
         if (could_have_src && !src_spec) {
-          src = maybe_cast_profiled_obj(src, src_k, true, sfpt);
+          src = maybe_cast_profiled_obj(src, src_k, true);
         }
         if (could_have_dest && !dest_spec) {
           dest = maybe_cast_profiled_obj(dest, dest_k, true);
@@ -4839,7 +4999,16 @@
     }
   }
 
-  if (!C->too_many_traps(trap_method, trap_bci, Deoptimization::Reason_intrinsic) && !src->is_top() && !dest->is_top()) {
+  ciMethod* trap_method = method();
+  int trap_bci = bci();
+  if (saved_jvms != NULL) {
+    trap_method = alloc->jvms()->method();
+    trap_bci = alloc->jvms()->bci();
+  }
+
+  if (!C->too_many_traps(trap_method, trap_bci, Deoptimization::Reason_intrinsic) &&
+      can_emit_guards &&
+      !src->is_top() && !dest->is_top()) {
     // validate arguments: enables transformation the ArrayCopyNode
     validated = true;
 
@@ -4875,28 +5044,13 @@
     Node* not_subtype_ctrl = gen_subtype_check(src_klass, dest_klass);
 
     if (not_subtype_ctrl != top()) {
-      if (sfpt != NULL) {
-        GraphKit kit(sfpt->jvms());
-        PreserveJVMState pjvms(&kit);
-        kit.set_control(not_subtype_ctrl);
-        kit.uncommon_trap(Deoptimization::Reason_intrinsic,
-                          Deoptimization::Action_make_not_entrant);
-        assert(kit.stopped(), "Should be stopped");
-      } else {
-        PreserveJVMState pjvms(this);
-        set_control(not_subtype_ctrl);
-        uncommon_trap(Deoptimization::Reason_intrinsic,
-                      Deoptimization::Action_make_not_entrant);
-        assert(stopped(), "Should be stopped");
-      }
+      PreserveJVMState pjvms(this);
+      set_control(not_subtype_ctrl);
+      uncommon_trap(Deoptimization::Reason_intrinsic,
+                    Deoptimization::Action_make_not_entrant);
+      assert(stopped(), "Should be stopped");
     }
-    if (sfpt != NULL) {
-      GraphKit kit(sfpt->jvms());
-      kit.set_control(_gvn.transform(slow_region));
-      kit.uncommon_trap(Deoptimization::Reason_intrinsic,
-                        Deoptimization::Action_make_not_entrant);
-      assert(kit.stopped(), "Should be stopped");
-    } else {
+    {
       PreserveJVMState pjvms(this);
       set_control(_gvn.transform(slow_region));
       uncommon_trap(Deoptimization::Reason_intrinsic,
@@ -4905,6 +5059,8 @@
     }
   }
 
+  arraycopy_move_allocation_here(alloc, dest, saved_jvms, saved_reexecute_sp);
+
   if (stopped()) {
     return true;
   }
@@ -5870,12 +6026,46 @@
                           Deoptimization::Action_reinterpret);
       return true;
     }
+
+    // result is a boolean (0 or 1) and its profile (false_cnt & true_cnt)
+    // is a number of each value occurrences.
+    Node* result = argument(0);
+    if (false_cnt == 0 || true_cnt == 0) {
+      // According to profile, one value has been never seen.
+      int expected_val = (false_cnt == 0) ? 1 : 0;
+
+      Node* cmp  = _gvn.transform(new CmpINode(result, intcon(expected_val)));
+      Node* test = _gvn.transform(new BoolNode(cmp, BoolTest::eq));
+
+      IfNode* check = create_and_map_if(control(), test, PROB_ALWAYS, COUNT_UNKNOWN);
+      Node* fast_path = _gvn.transform(new IfTrueNode(check));
+      Node* slow_path = _gvn.transform(new IfFalseNode(check));
+
+      { // Slow path: uncommon trap for never seen value and then reexecute
+        // MethodHandleImpl::profileBoolean() to bump the count, so JIT knows
+        // the value has been seen at least once.
+        PreserveJVMState pjvms(this);
+        PreserveReexecuteState preexecs(this);
+        jvms()->set_should_reexecute(true);
+
+        set_control(slow_path);
+        set_i_o(i_o());
+
+        uncommon_trap_exact(Deoptimization::Reason_intrinsic,
+                            Deoptimization::Action_reinterpret);
+      }
+      // The guard for never seen value enables sharpening of the result and
+      // returning a constant. It allows to eliminate branches on the same value
+      // later on.
+      set_control(fast_path);
+      result = intcon(expected_val);
+    }
     // Stop profiling.
-    // MethodHandleImpl::profileBoolean() has profiling logic in it's bytecode.
-    // By replacing method's body with profile data (represented as ProfileBooleanNode
+    // MethodHandleImpl::profileBoolean() has profiling logic in its bytecode.
+    // By replacing method body with profile data (represented as ProfileBooleanNode
     // on IR level) we effectively disable profiling.
     // It enables full speed execution once optimized code is generated.
-    Node* profile = _gvn.transform(new ProfileBooleanNode(argument(0), false_cnt, true_cnt));
+    Node* profile = _gvn.transform(new ProfileBooleanNode(result, false_cnt, true_cnt));
     C->record_for_igvn(profile);
     set_result(profile);
     return true;
@@ -5888,3 +6078,9 @@
     return false;
   }
 }
+
+bool LibraryCallKit::inline_isCompileConstant() {
+  Node* n = argument(0);
+  set_result(n->is_Con() ? intcon(1) : intcon(0));
+  return true;
+}
--- a/hotspot/src/share/vm/opto/loopPredicate.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/loopPredicate.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -89,7 +89,7 @@
 //
 // We will create a region to guard the uct call if there is no one there.
 // The true projecttion (if_cont) of the new_iff is returned.
-// This code is also used to clone predicates to clonned loops.
+// This code is also used to clone predicates to cloned loops.
 ProjNode* PhaseIdealLoop::create_new_if_for_predicate(ProjNode* cont_proj, Node* new_entry,
                                                       Deoptimization::DeoptReason reason) {
   assert(cont_proj->is_uncommon_trap_if_pattern(reason), "must be a uct if pattern!");
--- a/hotspot/src/share/vm/opto/loopTransform.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/loopTransform.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -38,6 +38,7 @@
 #include "opto/rootnode.hpp"
 #include "opto/runtime.hpp"
 #include "opto/subnode.hpp"
+#include "opto/vectornode.hpp"
 
 //------------------------------is_loop_exit-----------------------------------
 // Given an IfNode, return the loop-exiting projection or NULL if both
@@ -1524,6 +1525,44 @@
   }
 }
 
+void PhaseIdealLoop::mark_reductions(IdealLoopTree *loop) {
+  if (SuperWordReductions == false) return;
+
+  CountedLoopNode* loop_head = loop->_head->as_CountedLoop();
+  if (loop_head->unrolled_count() > 1) {
+    return;
+  }
+
+  Node* trip_phi = loop_head->phi();
+  for (DUIterator_Fast imax, i = loop_head->fast_outs(imax); i < imax; i++) {
+    Node* phi = loop_head->fast_out(i);
+    if (phi->is_Phi() && phi->outcnt() > 0 && phi != trip_phi) {
+      // For definitions which are loop inclusive and not tripcounts.
+      Node* def_node = phi->in(LoopNode::LoopBackControl);
+
+      if (def_node != NULL) {
+        Node* n_ctrl = get_ctrl(def_node);
+        if (n_ctrl != NULL && loop->is_member(get_loop(n_ctrl))) {
+          // Now test it to see if it fits the standard pattern for a reduction operator.
+          int opc = def_node->Opcode();
+          if (opc != ReductionNode::opcode(opc, def_node->bottom_type()->basic_type())) {
+            if (!def_node->is_reduction()) { // Not marked yet
+              // To be a reduction, the arithmetic node must have the phi as input and provide a def to it
+              for (unsigned j = 1; j < def_node->req(); j++) {
+                Node* in = def_node->in(j);
+                if (in == phi) {
+                  def_node->add_flag(Node::Flag_is_reduction);
+                  break;
+                }
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}
+
 //------------------------------dominates_backedge---------------------------------
 // Returns true if ctrl is executed on every complete iteration
 bool IdealLoopTree::dominates_backedge(Node* ctrl) {
@@ -2361,8 +2400,10 @@
     // an even number of trips).  If we are peeling, we might enable some RCE
     // and we'd rather unroll the post-RCE'd loop SO... do not unroll if
     // peeling.
-    if (should_unroll && !should_peel)
-      phase->do_unroll(this,old_new, true);
+    if (should_unroll && !should_peel) {
+      phase->mark_reductions(this);
+      phase->do_unroll(this, old_new, true);
+    }
 
     // Adjust the pre-loop limits to align the main body
     // iterations.
--- a/hotspot/src/share/vm/opto/loopnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/loopnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -872,6 +872,9 @@
   // Unroll the loop body one step - make each trip do 2 iterations.
   void do_unroll( IdealLoopTree *loop, Node_List &old_new, bool adjust_min_trip );
 
+  // Mark vector reduction candidates before loop unrolling
+  void mark_reductions( IdealLoopTree *loop );
+
   // Return true if exp is a constant times an induction var
   bool is_scaled_iv(Node* exp, Node* iv, int* p_scale);
 
--- a/hotspot/src/share/vm/opto/loopopts.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/loopopts.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -241,8 +241,8 @@
   ProjNode* dp_proj  = dp->as_Proj();
   ProjNode* unc_proj = iff->as_If()->proj_out(1 - dp_proj->_con)->as_Proj();
   if (exclude_loop_predicate &&
-      (unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_predicate) ||
-       unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_range_check))) {
+      (unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_predicate) != NULL ||
+       unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_range_check) != NULL)) {
     // If this is a range check (IfNode::is_range_check), do not
     // reorder because Compile::allow_range_check_smearing might have
     // changed the check.
--- a/hotspot/src/share/vm/opto/macro.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/macro.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -144,7 +144,9 @@
 }
 
 //------------------------------make_slow_call---------------------------------
-CallNode* PhaseMacroExpand::make_slow_call(CallNode *oldcall, const TypeFunc* slow_call_type, address slow_call, const char* leaf_name, Node* slow_path, Node* parm0, Node* parm1) {
+CallNode* PhaseMacroExpand::make_slow_call(CallNode *oldcall, const TypeFunc* slow_call_type,
+                                           address slow_call, const char* leaf_name, Node* slow_path,
+                                           Node* parm0, Node* parm1, Node* parm2) {
 
   // Slow-path call
  CallNode *call = leaf_name
@@ -155,6 +157,7 @@
   copy_predefined_input_for_runtime_call(slow_path, oldcall, call );
   if (parm0 != NULL)  call->init_req(TypeFunc::Parms+0, parm0);
   if (parm1 != NULL)  call->init_req(TypeFunc::Parms+1, parm1);
+  if (parm2 != NULL)  call->init_req(TypeFunc::Parms+2, parm2);
   copy_call_debug_info(oldcall, call);
   call->set_cnt(PROB_UNLIKELY_MAG(4));  // Same effect as RC_UNCOMMON.
   _igvn.replace_node(oldcall, call);
@@ -2328,7 +2331,9 @@
   }
 
   // Make slow path call
-  CallNode *call = make_slow_call( (CallNode *) lock, OptoRuntime::complete_monitor_enter_Type(), OptoRuntime::complete_monitor_locking_Java(), NULL, slow_path, obj, box );
+  CallNode *call = make_slow_call((CallNode *) lock, OptoRuntime::complete_monitor_enter_Type(),
+                                  OptoRuntime::complete_monitor_locking_Java(), NULL, slow_path,
+                                  obj, box, NULL);
 
   extract_call_projections(call);
 
@@ -2395,8 +2400,11 @@
   funlock = transform_later( funlock )->as_FastUnlock();
   // Optimize test; set region slot 2
   Node *slow_path = opt_bits_test(ctrl, region, 2, funlock, 0, 0);
+  Node *thread = transform_later(new ThreadLocalNode());
 
-  CallNode *call = make_slow_call( (CallNode *) unlock, OptoRuntime::complete_monitor_exit_Type(), CAST_FROM_FN_PTR(address, SharedRuntime::complete_monitor_unlocking_C), "complete_monitor_unlocking_C", slow_path, obj, box );
+  CallNode *call = make_slow_call((CallNode *) unlock, OptoRuntime::complete_monitor_exit_Type(),
+                                  CAST_FROM_FN_PTR(address, SharedRuntime::complete_monitor_unlocking_C),
+                                  "complete_monitor_unlocking_C", slow_path, obj, box, thread);
 
   extract_call_projections(call);
 
@@ -2535,7 +2543,7 @@
                (bol->_test._test == BoolTest::ne), "");
         IfNode* ifn = bol->unique_out()->as_If();
         assert((ifn->outcnt() == 2) &&
-               ifn->proj_out(1)->is_uncommon_trap_proj(Deoptimization::Reason_rtm_state_change), "");
+               ifn->proj_out(1)->is_uncommon_trap_proj(Deoptimization::Reason_rtm_state_change) != NULL, "");
 #endif
         Node* repl = n->in(1);
         if (!_has_locks) {
--- a/hotspot/src/share/vm/opto/macro.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/macro.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -186,7 +186,8 @@
   Node* opt_bits_test(Node* ctrl, Node* region, int edge, Node* word, int mask, int bits, bool return_fast_path = false);
   void copy_predefined_input_for_runtime_call(Node * ctrl, CallNode* oldcall, CallNode* call);
   CallNode* make_slow_call(CallNode *oldcall, const TypeFunc* slow_call_type, address slow_call,
-                       const char* leaf_name, Node* slow_path, Node* parm0, Node* parm1);
+                           const char* leaf_name, Node* slow_path, Node* parm0, Node* parm1,
+                           Node* parm2);
   void extract_call_projections(CallNode *call);
 
   Node* initialize_object(AllocateNode* alloc,
--- a/hotspot/src/share/vm/opto/matcher.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/matcher.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1049,6 +1049,15 @@
         mstack.push(m, Visit, n, -1);
       }
 
+      // Handle precedence edges for interior nodes
+      for (i = n->len()-1; (uint)i >= n->req(); i--) {
+        Node *m = n->in(i);
+        if (m == NULL || C->node_arena()->contains(m)) continue;
+        n->rm_prec(i);
+        // set -1 to call add_prec() instead of set_req() during Step1
+        mstack.push(m, Visit, n, -1);
+      }
+
       // For constant debug info, I'd rather have unmatched constants.
       int cnt = n->req();
       JVMState* jvms = n->jvms();
@@ -1738,6 +1747,14 @@
   return ex;
 }
 
+void Matcher::handle_precedence_edges(Node* n, MachNode *mach) {
+  for (uint i = n->req(); i < n->len(); i++) {
+    if (n->in(i) != NULL) {
+      mach->add_prec(n->in(i));
+    }
+  }
+}
+
 void Matcher::ReduceInst_Chain_Rule( State *s, int rule, Node *&mem, MachNode *mach ) {
   // 'op' is what I am expecting to receive
   int op = _leftOp[rule];
@@ -1772,6 +1789,8 @@
 
 
 uint Matcher::ReduceInst_Interior( State *s, int rule, Node *&mem, MachNode *mach, uint num_opnds ) {
+  handle_precedence_edges(s->_leaf, mach);
+
   if( s->_leaf->is_Load() ) {
     Node *mem2 = s->_leaf->in(MemNode::Memory);
     assert( mem == (Node*)1 || mem == mem2, "multiple Memories being matched at once?" );
@@ -1854,6 +1873,9 @@
     mem = s->_leaf->in(MemNode::Memory);
     debug_only(_mem_node = s->_leaf;)
   }
+
+  handle_precedence_edges(s->_leaf, mach);
+
   if( s->_leaf->in(0) && s->_leaf->req() > 1) {
     if( !mach->in(0) )
       mach->set_req(0,s->_leaf->in(0));
--- a/hotspot/src/share/vm/opto/matcher.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/matcher.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -124,6 +124,8 @@
   // Mach node for ConP #NULL
   MachNode* _mach_null;
 
+  void handle_precedence_edges(Node* n, MachNode *mach);
+
 public:
   int LabelRootDepth;
   // Convert ideal machine register to a register mask for spill-loads
--- a/hotspot/src/share/vm/opto/memnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/memnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -652,216 +652,6 @@
   }
 }
 
-//------------------------adr_phi_is_loop_invariant----------------------------
-// A helper function for Ideal_DU_postCCP to check if a Phi in a counted
-// loop is loop invariant. Make a quick traversal of Phi and associated
-// CastPP nodes, looking to see if they are a closed group within the loop.
-bool MemNode::adr_phi_is_loop_invariant(Node* adr_phi, Node* cast) {
-  // The idea is that the phi-nest must boil down to only CastPP nodes
-  // with the same data. This implies that any path into the loop already
-  // includes such a CastPP, and so the original cast, whatever its input,
-  // must be covered by an equivalent cast, with an earlier control input.
-  ResourceMark rm;
-
-  // The loop entry input of the phi should be the unique dominating
-  // node for every Phi/CastPP in the loop.
-  Unique_Node_List closure;
-  closure.push(adr_phi->in(LoopNode::EntryControl));
-
-  // Add the phi node and the cast to the worklist.
-  Unique_Node_List worklist;
-  worklist.push(adr_phi);
-  if( cast != NULL ){
-    if( !cast->is_ConstraintCast() ) return false;
-    worklist.push(cast);
-  }
-
-  // Begin recursive walk of phi nodes.
-  while( worklist.size() ){
-    // Take a node off the worklist
-    Node *n = worklist.pop();
-    if( !closure.member(n) ){
-      // Add it to the closure.
-      closure.push(n);
-      // Make a sanity check to ensure we don't waste too much time here.
-      if( closure.size() > 20) return false;
-      // This node is OK if:
-      //  - it is a cast of an identical value
-      //  - or it is a phi node (then we add its inputs to the worklist)
-      // Otherwise, the node is not OK, and we presume the cast is not invariant
-      if( n->is_ConstraintCast() ){
-        worklist.push(n->in(1));
-      } else if( n->is_Phi() ) {
-        for( uint i = 1; i < n->req(); i++ ) {
-          worklist.push(n->in(i));
-        }
-      } else {
-        return false;
-      }
-    }
-  }
-
-  // Quit when the worklist is empty, and we've found no offending nodes.
-  return true;
-}
-
-//------------------------------Ideal_DU_postCCP-------------------------------
-// Find any cast-away of null-ness and keep its control.  Null cast-aways are
-// going away in this pass and we need to make this memory op depend on the
-// gating null check.
-Node *MemNode::Ideal_DU_postCCP( PhaseCCP *ccp ) {
-  return Ideal_common_DU_postCCP(ccp, this, in(MemNode::Address));
-}
-
-// I tried to leave the CastPP's in.  This makes the graph more accurate in
-// some sense; we get to keep around the knowledge that an oop is not-null
-// after some test.  Alas, the CastPP's interfere with GVN (some values are
-// the regular oop, some are the CastPP of the oop, all merge at Phi's which
-// cannot collapse, etc).  This cost us 10% on SpecJVM, even when I removed
-// some of the more trivial cases in the optimizer.  Removing more useless
-// Phi's started allowing Loads to illegally float above null checks.  I gave
-// up on this approach.  CNC 10/20/2000
-// This static method may be called not from MemNode (EncodePNode calls it).
-// Only the control edge of the node 'n' might be updated.
-Node *MemNode::Ideal_common_DU_postCCP( PhaseCCP *ccp, Node* n, Node* adr ) {
-  Node *skipped_cast = NULL;
-  // Need a null check?  Regular static accesses do not because they are
-  // from constant addresses.  Array ops are gated by the range check (which
-  // always includes a NULL check).  Just check field ops.
-  if( n->in(MemNode::Control) == NULL ) {
-    // Scan upwards for the highest location we can place this memory op.
-    while( true ) {
-      switch( adr->Opcode() ) {
-
-      case Op_AddP:             // No change to NULL-ness, so peek thru AddP's
-        adr = adr->in(AddPNode::Base);
-        continue;
-
-      case Op_DecodeN:         // No change to NULL-ness, so peek thru
-      case Op_DecodeNKlass:
-        adr = adr->in(1);
-        continue;
-
-      case Op_EncodeP:
-      case Op_EncodePKlass:
-        // EncodeP node's control edge could be set by this method
-        // when EncodeP node depends on CastPP node.
-        //
-        // Use its control edge for memory op because EncodeP may go away
-        // later when it is folded with following or preceding DecodeN node.
-        if (adr->in(0) == NULL) {
-          // Keep looking for cast nodes.
-          adr = adr->in(1);
-          continue;
-        }
-        ccp->hash_delete(n);
-        n->set_req(MemNode::Control, adr->in(0));
-        ccp->hash_insert(n);
-        return n;
-
-      case Op_CastPP:
-        // If the CastPP is useless, just peek on through it.
-        if( ccp->type(adr) == ccp->type(adr->in(1)) ) {
-          // Remember the cast that we've peeked though. If we peek
-          // through more than one, then we end up remembering the highest
-          // one, that is, if in a loop, the one closest to the top.
-          skipped_cast = adr;
-          adr = adr->in(1);
-          continue;
-        }
-        // CastPP is going away in this pass!  We need this memory op to be
-        // control-dependent on the test that is guarding the CastPP.
-        ccp->hash_delete(n);
-        n->set_req(MemNode::Control, adr->in(0));
-        ccp->hash_insert(n);
-        return n;
-
-      case Op_Phi:
-        // Attempt to float above a Phi to some dominating point.
-        if (adr->in(0) != NULL && adr->in(0)->is_CountedLoop()) {
-          // If we've already peeked through a Cast (which could have set the
-          // control), we can't float above a Phi, because the skipped Cast
-          // may not be loop invariant.
-          if (adr_phi_is_loop_invariant(adr, skipped_cast)) {
-            adr = adr->in(1);
-            continue;
-          }
-        }
-
-        // Intentional fallthrough!
-
-        // No obvious dominating point.  The mem op is pinned below the Phi
-        // by the Phi itself.  If the Phi goes away (no true value is merged)
-        // then the mem op can float, but not indefinitely.  It must be pinned
-        // behind the controls leading to the Phi.
-      case Op_CheckCastPP:
-        // These usually stick around to change address type, however a
-        // useless one can be elided and we still need to pick up a control edge
-        if (adr->in(0) == NULL) {
-          // This CheckCastPP node has NO control and is likely useless. But we
-          // need check further up the ancestor chain for a control input to keep
-          // the node in place. 4959717.
-          skipped_cast = adr;
-          adr = adr->in(1);
-          continue;
-        }
-        ccp->hash_delete(n);
-        n->set_req(MemNode::Control, adr->in(0));
-        ccp->hash_insert(n);
-        return n;
-
-        // List of "safe" opcodes; those that implicitly block the memory
-        // op below any null check.
-      case Op_CastX2P:          // no null checks on native pointers
-      case Op_Parm:             // 'this' pointer is not null
-      case Op_LoadP:            // Loading from within a klass
-      case Op_LoadN:            // Loading from within a klass
-      case Op_LoadKlass:        // Loading from within a klass
-      case Op_LoadNKlass:       // Loading from within a klass
-      case Op_ConP:             // Loading from a klass
-      case Op_ConN:             // Loading from a klass
-      case Op_ConNKlass:        // Loading from a klass
-      case Op_CreateEx:         // Sucking up the guts of an exception oop
-      case Op_Con:              // Reading from TLS
-      case Op_CMoveP:           // CMoveP is pinned
-      case Op_CMoveN:           // CMoveN is pinned
-        break;                  // No progress
-
-      case Op_Proj:             // Direct call to an allocation routine
-      case Op_SCMemProj:        // Memory state from store conditional ops
-#ifdef ASSERT
-        {
-          assert(adr->as_Proj()->_con == TypeFunc::Parms, "must be return value");
-          const Node* call = adr->in(0);
-          if (call->is_CallJava()) {
-            const CallJavaNode* call_java = call->as_CallJava();
-            const TypeTuple *r = call_java->tf()->range();
-            assert(r->cnt() > TypeFunc::Parms, "must return value");
-            const Type* ret_type = r->field_at(TypeFunc::Parms);
-            assert(ret_type && ret_type->isa_ptr(), "must return pointer");
-            // We further presume that this is one of
-            // new_instance_Java, new_array_Java, or
-            // the like, but do not assert for this.
-          } else if (call->is_Allocate()) {
-            // similar case to new_instance_Java, etc.
-          } else if (!call->is_CallLeaf()) {
-            // Projections from fetch_oop (OSR) are allowed as well.
-            ShouldNotReachHere();
-          }
-        }
-#endif
-        break;
-      default:
-        ShouldNotReachHere();
-      }
-      break;
-    }
-  }
-
-  return  NULL;               // No progress
-}
-
-
 //=============================================================================
 // Should LoadNode::Ideal() attempt to remove control edges?
 bool LoadNode::can_remove_control() const {
--- a/hotspot/src/share/vm/opto/memnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/memnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -84,10 +84,6 @@
   // This one should probably be a phase-specific function:
   static bool all_controls_dominate(Node* dom, Node* sub);
 
-  // Find any cast-away of null-ness and keep its control.
-  static  Node *Ideal_common_DU_postCCP( PhaseCCP *ccp, Node* n, Node* adr );
-  virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp );
-
   virtual const class TypePtr *adr_type() const;  // returns bottom_type of address
 
   // Shared code for Ideal methods:
--- a/hotspot/src/share/vm/opto/multnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/multnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -150,59 +150,67 @@
 }
 
 //-------------------------------is_uncommon_trap_proj----------------------------
-// Return true if proj is the form of "proj->[region->..]call_uct"
-bool ProjNode::is_uncommon_trap_proj(Deoptimization::DeoptReason reason) {
+// Return uncommon trap call node if proj is for "proj->[region->..]call_uct"
+// NULL otherwise
+CallStaticJavaNode* ProjNode::is_uncommon_trap_proj(Deoptimization::DeoptReason reason) {
   int path_limit = 10;
   Node* out = this;
   for (int ct = 0; ct < path_limit; ct++) {
     out = out->unique_ctrl_out();
     if (out == NULL)
-      return false;
+      return NULL;
     if (out->is_CallStaticJava()) {
-      int req = out->as_CallStaticJava()->uncommon_trap_request();
+      CallStaticJavaNode* call = out->as_CallStaticJava();
+      int req = call->uncommon_trap_request();
       if (req != 0) {
         Deoptimization::DeoptReason trap_reason = Deoptimization::trap_request_reason(req);
         if (trap_reason == reason || reason == Deoptimization::Reason_none) {
-           return true;
+          return call;
         }
       }
-      return false; // don't do further after call
+      return NULL; // don't do further after call
     }
     if (out->Opcode() != Op_Region)
-      return false;
+      return NULL;
   }
-  return false;
+  return NULL;
 }
 
 //-------------------------------is_uncommon_trap_if_pattern-------------------------
-// Return true  for "if(test)-> proj -> ...
-//                          |
-//                          V
-//                      other_proj->[region->..]call_uct"
-//
+// Return uncommon trap call node for    "if(test)-> proj -> ...
+//                                                 |
+//                                                 V
+//                                             other_proj->[region->..]call_uct"
+// NULL otherwise
 // "must_reason_predicate" means the uct reason must be Reason_predicate
-bool ProjNode::is_uncommon_trap_if_pattern(Deoptimization::DeoptReason reason) {
+CallStaticJavaNode* ProjNode::is_uncommon_trap_if_pattern(Deoptimization::DeoptReason reason) {
   Node *in0 = in(0);
-  if (!in0->is_If()) return false;
+  if (!in0->is_If()) return NULL;
   // Variation of a dead If node.
-  if (in0->outcnt() < 2)  return false;
+  if (in0->outcnt() < 2)  return NULL;
   IfNode* iff = in0->as_If();
 
   // we need "If(Conv2B(Opaque1(...)))" pattern for reason_predicate
   if (reason != Deoptimization::Reason_none) {
     if (iff->in(1)->Opcode() != Op_Conv2B ||
        iff->in(1)->in(1)->Opcode() != Op_Opaque1) {
-      return false;
+      return NULL;
     }
   }
 
   ProjNode* other_proj = iff->proj_out(1-_con);
   if (other_proj == NULL) // Should never happen, but make Parfait happy.
-      return false;
-  if (other_proj->is_uncommon_trap_proj(reason)) {
+      return NULL;
+  CallStaticJavaNode* call = other_proj->is_uncommon_trap_proj(reason);
+  if (call != NULL) {
     assert(reason == Deoptimization::Reason_none ||
            Compile::current()->is_predicate_opaq(iff->in(1)->in(1)), "should be on the list");
-    return true;
+    return call;
   }
-  return false;
+  return NULL;
 }
+
+ProjNode* ProjNode::other_if_proj() const {
+  assert(_con == 0 || _con == 1, "not an if?");
+  return in(0)->as_If()->proj_out(1-_con);
+}
--- a/hotspot/src/share/vm/opto/multnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/multnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -89,13 +89,18 @@
   virtual void dump_spec(outputStream *st) const;
 #endif
 
-  // Return true if proj is for "proj->[region->..]call_uct"
-  bool is_uncommon_trap_proj(Deoptimization::DeoptReason reason);
-  // Return true for    "if(test)-> proj -> ...
-  //                          |
-  //                          V
-  //                      other_proj->[region->..]call_uct"
-  bool is_uncommon_trap_if_pattern(Deoptimization::DeoptReason reason);
+  // Return uncommon trap call node if proj is for "proj->[region->..]call_uct"
+  // NULL otherwise
+  CallStaticJavaNode* is_uncommon_trap_proj(Deoptimization::DeoptReason reason);
+  // Return uncommon trap call node for    "if(test)-> proj -> ...
+  //                                                 |
+  //                                                 V
+  //                                             other_proj->[region->..]call_uct"
+  // NULL otherwise
+  CallStaticJavaNode* is_uncommon_trap_if_pattern(Deoptimization::DeoptReason reason);
+
+  // Return other proj node when this is a If proj node
+  ProjNode* other_if_proj() const;
 };
 
 #endif // SHARE_VM_OPTO_MULTNODE_HPP
--- a/hotspot/src/share/vm/opto/narrowptrnode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/narrowptrnode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -67,10 +67,6 @@
 }
 
 
-Node *EncodeNarrowPtrNode::Ideal_DU_postCCP( PhaseCCP *ccp ) {
-  return MemNode::Ideal_common_DU_postCCP(ccp, this, in(1));
-}
-
 Node* DecodeNKlassNode::Identity(PhaseTransform* phase) {
   const Type *t = phase->type( in(1) );
   if( t == Type::TOP ) return in(1);
--- a/hotspot/src/share/vm/opto/narrowptrnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/narrowptrnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -39,7 +39,6 @@
   }
   public:
   virtual uint  ideal_reg() const { return Op_RegN; }
-  virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp );
 };
 
 //------------------------------EncodeP--------------------------------
--- a/hotspot/src/share/vm/opto/node.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/node.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1387,12 +1387,6 @@
   return false;
 }
 
-//------------------------------Ideal_DU_postCCP-------------------------------
-// Idealize graph, using DU info.  Must clone result into new-space
-Node *Node::Ideal_DU_postCCP( PhaseCCP * ) {
-  return NULL;                 // Default to no change
-}
-
 //------------------------------hash-------------------------------------------
 // Hash function over Nodes.
 uint Node::hash() const {
@@ -2069,7 +2063,7 @@
 
 //--------------------------unique_ctrl_out------------------------------
 // Return the unique control out if only one. Null if none or more than one.
-Node* Node::unique_ctrl_out() {
+Node* Node::unique_ctrl_out() const {
   Node* found = NULL;
   for (uint i = 0; i < outcnt(); i++) {
     Node* use = raw_out(i);
@@ -2081,6 +2075,14 @@
   return found;
 }
 
+void Node::ensure_control_or_add_prec(Node* c) {
+  if (in(0) == NULL) {
+    set_req(0, c);
+  } else if (in(0) != c) {
+    add_prec(c);
+  }
+}
+
 //=============================================================================
 //------------------------------yank-------------------------------------------
 // Find and remove
--- a/hotspot/src/share/vm/opto/node.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/node.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -673,7 +673,8 @@
     Flag_avoid_back_to_back_before   = Flag_may_be_short_branch << 1,
     Flag_avoid_back_to_back_after    = Flag_avoid_back_to_back_before << 1,
     Flag_has_call                    = Flag_avoid_back_to_back_after << 1,
-    Flag_is_expensive                = Flag_has_call << 1,
+    Flag_is_reduction                = Flag_has_call << 1,
+    Flag_is_expensive                = Flag_is_reduction << 1,
     _max_flags = (Flag_is_expensive << 1) - 1 // allow flags combination
   };
 
@@ -701,6 +702,10 @@
 
   const jushort flags() const { return _flags; }
 
+  void add_flag(jushort fl) { init_flags(fl); }
+
+  void remove_flag(jushort fl) { clear_flag(fl); }
+
   // Return a dense integer opcode number
   virtual int Opcode() const;
 
@@ -852,6 +857,10 @@
   // The node is expensive: the best control is set during loop opts
   bool is_expensive() const { return (_flags & Flag_is_expensive) != 0 && in(0) != NULL; }
 
+  // An arithmetic node which accumulates a data in a loop.
+  // It must have the loop's phi as input and provide a def to the phi.
+  bool is_reduction() const { return (_flags & Flag_is_reduction) != 0; }
+
 //----------------- Optimization
 
   // Get the worst-case Type output for this Node.
@@ -897,9 +906,6 @@
   bool remove_dead_region(PhaseGVN *phase, bool can_reshape);
 public:
 
-  // Idealize graph, using DU info.  Done after constant propagation
-  virtual Node *Ideal_DU_postCCP( PhaseCCP *ccp );
-
   // See if there is valid pipeline info
   static  const Pipeline *pipeline_class();
   virtual const Pipeline *pipeline() const;
@@ -931,7 +937,10 @@
   Node* find_similar(int opc);
 
   // Return the unique control out if only one. Null if none or more than one.
-  Node* unique_ctrl_out();
+  Node* unique_ctrl_out() const;
+
+  // Set control or add control as precedence edge
+  void ensure_control_or_add_prec(Node* c);
 
 //----------------- Code Generation
 
--- a/hotspot/src/share/vm/opto/phaseX.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/phaseX.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1605,21 +1605,6 @@
   C->set_root( transform(C->root())->as_Root() );
   assert( C->top(),  "missing TOP node" );
   assert( C->root(), "missing root" );
-
-  // Eagerly remove castPP nodes here. CastPP nodes might not be
-  // removed in the subsequent IGVN phase if a node that changes
-  // in(1) of a castPP is processed prior to the castPP node.
-  for (uint i = 0; i < _worklist.size(); i++) {
-    Node* n = _worklist.at(i);
-
-    if (n->is_ConstraintCast()) {
-      Node* nn = n->Identity(this);
-      if (nn != n) {
-        replace_node(n, nn);
-        --i;
-      }
-    }
-  }
 }
 
 //------------------------------transform--------------------------------------
@@ -1700,11 +1685,6 @@
     _worklist.push(n);          // n re-enters the hash table via the worklist
   }
 
-  // Idealize graph using DU info.  Must clone() into new-space.
-  // DU info is generally used to show profitability, progress or safety
-  // (but generally not needed for correctness).
-  Node *nn = n->Ideal_DU_postCCP(this);
-
   // TEMPORARY fix to ensure that 2nd GVN pass eliminates NULL checks
   switch( n->Opcode() ) {
   case Op_FastLock:      // Revisit FastLocks for lock coarsening
@@ -1721,12 +1701,6 @@
   default:
     break;
   }
-  if( nn ) {
-    _worklist.push(n);
-    // Put users of 'n' onto worklist for second igvn transform
-    add_users_to_worklist(n);
-    return nn;
-  }
 
   return  n;
 }
--- a/hotspot/src/share/vm/opto/runtime.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/runtime.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -600,10 +600,11 @@
 //-----------------------------------------------------------------------------
 const TypeFunc *OptoRuntime::complete_monitor_exit_Type() {
   // create input type (domain)
-  const Type **fields = TypeTuple::fields(2);
+  const Type **fields = TypeTuple::fields(3);
   fields[TypeFunc::Parms+0] = TypeInstPtr::NOTNULL;  // Object to be Locked
-  fields[TypeFunc::Parms+1] = TypeRawPtr::BOTTOM;   // Address of stack location for lock
-  const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms+2,fields);
+  fields[TypeFunc::Parms+1] = TypeRawPtr::BOTTOM;    // Address of stack location for lock - BasicLock
+  fields[TypeFunc::Parms+2] = TypeRawPtr::BOTTOM;    // Thread pointer (Self)
+  const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms+3,fields);
 
   // create result type (range)
   fields = TypeTuple::fields(0);
--- a/hotspot/src/share/vm/opto/runtime.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/runtime.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -184,7 +184,7 @@
 public:
   // Slow-path Locking and Unlocking
   static void complete_monitor_locking_C(oopDesc* obj, BasicLock* lock, JavaThread* thread);
-  static void complete_monitor_unlocking_C(oopDesc* obj, BasicLock* lock);
+  static void complete_monitor_unlocking_C(oopDesc* obj, BasicLock* lock, JavaThread* thread);
 
 private:
 
--- a/hotspot/src/share/vm/opto/subnode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/subnode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -275,6 +275,8 @@
   mask commute( ) const { return mask("032147658"[_test]-'0'); }
   mask negate( ) const { return mask(_test^4); }
   bool is_canonical( ) const { return (_test == BoolTest::ne || _test == BoolTest::lt || _test == BoolTest::le || _test == BoolTest::overflow); }
+  bool is_less( )  const { return _test == BoolTest::lt || _test == BoolTest::le; }
+  bool is_greater( ) const { return _test == BoolTest::gt || _test == BoolTest::ge; }
   void dump_on(outputStream *st) const;
 };
 
--- a/hotspot/src/share/vm/opto/superword.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/superword.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -65,7 +65,8 @@
   _lpt(NULL),                             // loop tree node
   _lp(NULL),                              // LoopNode
   _bb(NULL),                              // basic block
-  _iv(NULL)                               // induction var
+  _iv(NULL),                              // induction var
+  _race_possible(false)                   // cases where SDMU is true
 {}
 
 //------------------------------transform_loop---------------------------
@@ -145,7 +146,6 @@
 void SuperWord::SLP_extract() {
 
   // Ready the block
-
   if (!construct_bb())
     return; // Exit if no interesting nodes or complex graph.
 
@@ -449,11 +449,13 @@
   int preloop_stride = pre_end->stride_con();
 
   int span = preloop_stride * p.scale_in_bytes();
-
-  // Stride one accesses are alignable.
-  if (ABS(span) == p.memory_size())
+  int mem_size = p.memory_size();
+  int offset   = p.offset_in_bytes();
+  // Stride one accesses are alignable if offset is aligned to memory operation size.
+  // Offset can be unaligned when UseUnalignedAccesses is used.
+  if (ABS(span) == mem_size && (ABS(offset) % mem_size) == 0) {
     return true;
-
+  }
   // If initial offset from start of object is computable,
   // compute alignment within the vector.
   int vw = vector_width_in_bytes(p.mem());
@@ -463,7 +465,7 @@
     if (init_nd->is_Con() && p.invar() == NULL) {
       int init = init_nd->bottom_type()->is_int()->get_con();
 
-      int init_offset = init * p.scale_in_bytes() + p.offset_in_bytes();
+      int init_offset = init * p.scale_in_bytes() + offset;
       assert(init_offset >= 0, "positive offset from object start");
 
       if (span > 0) {
@@ -640,7 +642,7 @@
   }
 
   if (isomorphic(s1, s2)) {
-    if (independent(s1, s2)) {
+    if (independent(s1, s2) || reduction(s1, s2)) {
       if (!exists_at(s1, 0) && !exists_at(s2, 1)) {
         if (!s1->is_Mem() || are_adjacent_refs(s1, s2)) {
           int s1_align = alignment(s1);
@@ -718,6 +720,28 @@
   return independent_path(shallow, deep);
 }
 
+//------------------------------reduction---------------------------
+// Is there a data path between s1 and s2 and the nodes reductions?
+bool SuperWord::reduction(Node* s1, Node* s2) {
+  bool retValue = false;
+  int d1 = depth(s1);
+  int d2 = depth(s2);
+  if (d1 + 1 == d2) {
+    if (s1->is_reduction() && s2->is_reduction()) {
+      // This is an ordered set, so s1 should define s2
+      for (DUIterator_Fast imax, i = s1->fast_outs(imax); i < imax; i++) {
+        Node* t1 = s1->fast_out(i);
+        if (t1 == s2) {
+          // both nodes are reductions and connected
+          retValue = true;
+        }
+      }
+    }
+  }
+
+  return retValue;
+}
+
 //------------------------------independent_path------------------------------
 // Helper for independent
 bool SuperWord::independent_path(Node* shallow, Node* deep, uint dp) {
@@ -761,6 +785,7 @@
 void SuperWord::extend_packlist() {
   bool changed;
   do {
+    packset_sort(_packset.length());
     changed = false;
     for (int i = 0; i < _packset.length(); i++) {
       Node_List* p = _packset.at(i);
@@ -769,6 +794,13 @@
     }
   } while (changed);
 
+  if (_race_possible) {
+    for (int i = 0; i < _packset.length(); i++) {
+      Node_List* p = _packset.at(i);
+      order_def_uses(p);
+    }
+  }
+
 #ifndef PRODUCT
   if (TraceSuperWord) {
     tty->print_cr("\nAfter extend_packlist");
@@ -825,10 +857,12 @@
 
   int align = alignment(s1);
   int savings = -1;
+  int num_s1_uses = 0;
   Node* u1 = NULL;
   Node* u2 = NULL;
   for (DUIterator_Fast imax, i = s1->fast_outs(imax); i < imax; i++) {
     Node* t1 = s1->fast_out(i);
+    num_s1_uses++;
     if (!in_bb(t1)) continue;
     for (DUIterator_Fast jmax, j = s2->fast_outs(jmax); j < jmax; j++) {
       Node* t2 = s2->fast_out(j);
@@ -845,6 +879,9 @@
       }
     }
   }
+  if (num_s1_uses > 1) {
+    _race_possible = true;
+  }
   if (savings >= 0) {
     Node_List* pair = new Node_List();
     pair->push(u1);
@@ -856,9 +893,64 @@
   return changed;
 }
 
+//------------------------------order_def_uses---------------------------
+// For extended packsets, ordinally arrange uses packset by major component
+void SuperWord::order_def_uses(Node_List* p) {
+  Node* s1 = p->at(0);
+
+  if (s1->is_Store()) return;
+
+  // reductions are always managed beforehand
+  if (s1->is_reduction()) return;
+
+  for (DUIterator_Fast imax, i = s1->fast_outs(imax); i < imax; i++) {
+    Node* t1 = s1->fast_out(i);
+
+    // Only allow operand swap on commuting operations
+    if (!t1->is_Add() && !t1->is_Mul()) {
+      break;
+    }
+
+    // Now find t1's packset
+    Node_List* p2 = NULL;
+    for (int j = 0; j < _packset.length(); j++) {
+      p2 = _packset.at(j);
+      Node* first = p2->at(0);
+      if (t1 == first) {
+        break;
+      }
+      p2 = NULL;
+    }
+    // Arrange all sub components by the major component
+    if (p2 != NULL) {
+      for (uint j = 1; j < p->size(); j++) {
+        Node* d1 = p->at(j);
+        Node* u1 = p2->at(j);
+        opnd_positions_match(s1, t1, d1, u1);
+      }
+    }
+  }
+}
+
 //---------------------------opnd_positions_match-------------------------
 // Is the use of d1 in u1 at the same operand position as d2 in u2?
 bool SuperWord::opnd_positions_match(Node* d1, Node* u1, Node* d2, Node* u2) {
+  // check reductions to see if they are marshalled to represent the reduction
+  // operator in a specified opnd
+  if (u1->is_reduction() && u2->is_reduction()) {
+    // ensure reductions have phis and reduction definitions feeding the 1st operand
+    Node* first = u1->in(2);
+    if (first->is_Phi() || first->is_reduction()) {
+      u1->swap_edges(1, 2);
+    }
+    // ensure reductions have phis and reduction definitions feeding the 1st operand
+    first = u2->in(2);
+    if (first->is_Phi() || first->is_reduction()) {
+      u2->swap_edges(1, 2);
+    }
+    return true;
+  }
+
   uint ct = u1->req();
   if (ct != u2->req()) return false;
   uint i1 = 0;
@@ -940,7 +1032,8 @@
     for (int i = 0; i < _packset.length(); i++) {
       Node_List* p1 = _packset.at(i);
       if (p1 == NULL) continue;
-      for (int j = 0; j < _packset.length(); j++) {
+      // Because of sorting we can start at i + 1
+      for (int j = i + 1; j < _packset.length(); j++) {
         Node_List* p2 = _packset.at(j);
         if (p2 == NULL) continue;
         if (i == j) continue;
@@ -1067,8 +1160,19 @@
 //------------------------------implemented---------------------------
 // Can code be generated for pack p?
 bool SuperWord::implemented(Node_List* p) {
+  bool retValue = false;
   Node* p0 = p->at(0);
-  return VectorNode::implemented(p0->Opcode(), p->size(), velt_basic_type(p0));
+  if (p0 != NULL) {
+    int opc = p0->Opcode();
+    uint size = p->size();
+    if (p0->is_reduction()) {
+      const Type *arith_type = p0->bottom_type();
+      retValue = ReductionNode::implemented(opc, size, arith_type->basic_type());
+    } else {
+      retValue = VectorNode::implemented(opc, size, velt_basic_type(p0));
+    }
+  }
+  return retValue;
 }
 
 //------------------------------same_inputs--------------------------
@@ -1102,6 +1206,18 @@
     if (!is_vector_use(p0, i))
       return false;
   }
+  // Check if reductions are connected
+  if (p0->is_reduction()) {
+    Node* second_in = p0->in(2);
+    Node_List* second_pk = my_pack(second_in);
+    if (second_pk == NULL) {
+      // Remove reduction flag if no parent pack, it is not profitable
+      p0->remove_flag(Node::Flag_is_reduction);
+      return false;
+    } else if (second_pk->size() != p->size()) {
+      return false;
+    }
+  }
   if (VectorNode::is_shift(p0)) {
     // For now, return false if shift count is vector or not scalar promotion
     // case (different shift counts) because it is not supported yet.
@@ -1123,6 +1239,9 @@
         for (uint k = 0; k < use->req(); k++) {
           Node* n = use->in(k);
           if (def == n) {
+            // reductions can be loop carried dependences
+            if (def->is_reduction() && use->is_Phi())
+              continue;
             if (!is_vector_use(use, k)) {
               return false;
             }
@@ -1407,16 +1526,33 @@
         vlen_in_bytes = vn->as_StoreVector()->memory_size();
       } else if (n->req() == 3) {
         // Promote operands to vector
-        Node* in1 = vector_opd(p, 1);
+        Node* in1 = NULL;
+        bool node_isa_reduction = n->is_reduction();
+        if (node_isa_reduction) {
+          // the input to the first reduction operation is retained
+          in1 = low_adr->in(1);
+        } else {
+          in1 = vector_opd(p, 1);
+        }
         Node* in2 = vector_opd(p, 2);
-        if (VectorNode::is_invariant_vector(in1) && (n->is_Add() || n->is_Mul())) {
+        if (VectorNode::is_invariant_vector(in1) && (node_isa_reduction == false) && (n->is_Add() || n->is_Mul())) {
           // Move invariant vector input into second position to avoid register spilling.
           Node* tmp = in1;
           in1 = in2;
           in2 = tmp;
         }
-        vn = VectorNode::make(opc, in1, in2, vlen, velt_basic_type(n));
-        vlen_in_bytes = vn->as_Vector()->length_in_bytes();
+        if (node_isa_reduction) {
+          const Type *arith_type = n->bottom_type();
+          vn = ReductionNode::make(opc, NULL, in1, in2, arith_type->basic_type());
+          if (in2->is_Load()) {
+            vlen_in_bytes = in2->as_LoadVector()->memory_size();
+          } else {
+            vlen_in_bytes = in2->as_Vector()->length_in_bytes();
+          }
+        } else {
+          vn = VectorNode::make(opc, in1, in2, vlen, velt_basic_type(n));
+          vlen_in_bytes = vn->as_Vector()->length_in_bytes();
+        }
       } else {
         ShouldNotReachHere();
       }
@@ -1556,6 +1692,8 @@
     _n_idx_list.pop();
     Node* def = use->in(idx);
 
+    if (def->is_reduction()) continue;
+
     // Insert extract operation
     _igvn.hash_delete(def);
     int def_pos = alignment(def) / data_size(def);
@@ -1576,6 +1714,7 @@
 bool SuperWord::is_vector_use(Node* use, int u_idx) {
   Node_List* u_pk = my_pack(use);
   if (u_pk == NULL) return false;
+  if (use->is_reduction()) return true;
   Node* def = use->in(u_idx);
   Node_List* d_pk = my_pack(def);
   if (d_pk == NULL) {
@@ -1613,7 +1752,7 @@
   // by the visited and post_visited sets,
   // and count number of nodes in block.
   int bb_ct = 0;
-  for (uint i = 0; i < lpt()->_body.size(); i++ ) {
+  for (uint i = 0; i < lpt()->_body.size(); i++) {
     Node *n = lpt()->_body.at(i);
     set_bb_idx(n, i); // Create a temporary map
     if (in_bb(n)) {
@@ -1674,6 +1813,7 @@
   // Do a depth first walk over out edges
   int rpo_idx = bb_ct - 1;
   int size;
+  int reduction_uses = 0;
   while ((size = _stk.length()) > 0) {
     Node* n = _stk.top(); // Leave node on stack
     if (!visited_test_set(n)) {
@@ -1685,6 +1825,14 @@
         if (in_bb(use) && !visited_test(use) &&
             // Don't go around backedge
             (!use->is_Phi() || n == entry)) {
+          if (use->is_reduction()) {
+            // First see if we can map the reduction on the given system we are on, then
+            // make a data entry operation for each reduction we see.
+            BasicType bt = use->bottom_type()->basic_type();
+            if (ReductionNode::implemented(use->Opcode(), Matcher::min_vector_size(bt), bt)) {
+              reduction_uses++;
+            }
+          }
           _stk.push(use);
         }
       }
@@ -1708,7 +1856,8 @@
     set_bb_idx(n, j);
   }
 
-  initialize_bb(); // Ensure extra info is allocated.
+  // Ensure extra info is allocated.
+  initialize_bb();
 
 #ifndef PRODUCT
   if (TraceSuperWord) {
@@ -1726,7 +1875,7 @@
   }
 #endif
   assert(rpo_idx == -1 && bb_ct == _block.length(), "all block members found");
-  return (_mem_slice_head.length() > 0) || (_data_entry.length() > 0);
+  return (_mem_slice_head.length() > 0) || (reduction_uses > 0) || (_data_entry.length() > 0);
 }
 
 //------------------------------initialize_bb---------------------------
@@ -1959,6 +2108,27 @@
   _packset.remove_at(pos);
 }
 
+void SuperWord::packset_sort(int n) {
+  // simple bubble sort so that we capitalize with O(n) when its already sorted
+  while (n != 0) {
+    bool swapped = false;
+    for (int i = 1; i < n; i++) {
+      Node_List* q_low = _packset.at(i-1);
+      Node_List* q_i = _packset.at(i);
+
+      // only swap when we find something to swap
+      if (alignment(q_low->at(0)) > alignment(q_i->at(0))) {
+        Node_List* t = q_i;
+        *(_packset.adr_at(i)) = q_low;
+        *(_packset.adr_at(i-1)) = q_i;
+        swapped = true;
+      }
+    }
+    if (swapped == false) break;
+    n--;
+  }
+}
+
 //------------------------------executed_first---------------------------
 // Return the node executed first in pack p.  Uses the RPO block list
 // to determine order.
--- a/hotspot/src/share/vm/opto/superword.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/superword.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -249,6 +249,7 @@
   LoopNode*      _lp;              // Current LoopNode
   Node*          _bb;              // Current basic block
   PhiNode*       _iv;              // Induction var
+  bool           _race_possible;   // In cases where SDMU is true
 
   // Accessors
   Arena* arena()                   { return _arena; }
@@ -337,6 +338,8 @@
   bool isomorphic(Node* s1, Node* s2);
   // Is there no data path from s1 to s2 or s2 to s1?
   bool independent(Node* s1, Node* s2);
+  // Is there a data path between s1 and s2 and both are reductions?
+  bool reduction(Node* s1, Node* s2);
   // Helper for independent
   bool independent_path(Node* shallow, Node* deep, uint dp=0);
   void set_alignment(Node* s1, Node* s2, int align);
@@ -347,6 +350,8 @@
   bool follow_use_defs(Node_List* p);
   // Extend the packset by visiting uses of nodes in pack p
   bool follow_def_uses(Node_List* p);
+  // For extended packsets, ordinally arrange uses packset by major component
+  void order_def_uses(Node_List* p);
   // Estimate the savings from executing s1 and s2 as a pack
   int est_savings(Node* s1, Node* s2);
   int adjacent_profit(Node* s1, Node* s2);
@@ -419,9 +424,12 @@
   void print_bb();
   void print_stmt(Node* s);
   char* blank(uint depth);
+
+  void packset_sort(int n);
 };
 
 
+
 //------------------------------SWPointer---------------------------
 // Information about an address for dependence checking and vector alignment
 class SWPointer VALUE_OBJ_CLASS_SPEC {
--- a/hotspot/src/share/vm/opto/type.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/type.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1158,11 +1158,11 @@
   // Certain normalizations keep us sane when comparing types.
   // The 'SMALLINT' covers constants and also CC and its relatives.
   if (lo <= hi) {
-    if ((juint)(hi - lo) <= SMALLINT)  w = Type::WidenMin;
-    if ((juint)(hi - lo) >= max_juint) w = Type::WidenMax; // TypeInt::INT
+    if (((juint)hi - lo) <= SMALLINT)  w = Type::WidenMin;
+    if (((juint)hi - lo) >= max_juint) w = Type::WidenMax; // TypeInt::INT
   } else {
-    if ((juint)(lo - hi) <= SMALLINT)  w = Type::WidenMin;
-    if ((juint)(lo - hi) >= max_juint) w = Type::WidenMin; // dual TypeInt::INT
+    if (((juint)lo - hi) <= SMALLINT)  w = Type::WidenMin;
+    if (((juint)lo - hi) >= max_juint) w = Type::WidenMin; // dual TypeInt::INT
   }
   return w;
 }
@@ -1416,11 +1416,11 @@
   // Certain normalizations keep us sane when comparing types.
   // The 'SMALLINT' covers constants.
   if (lo <= hi) {
-    if ((julong)(hi - lo) <= SMALLINT)   w = Type::WidenMin;
-    if ((julong)(hi - lo) >= max_julong) w = Type::WidenMax; // TypeLong::LONG
+    if (((julong)hi - lo) <= SMALLINT)   w = Type::WidenMin;
+    if (((julong)hi - lo) >= max_julong) w = Type::WidenMax; // TypeLong::LONG
   } else {
-    if ((julong)(lo - hi) <= SMALLINT)   w = Type::WidenMin;
-    if ((julong)(lo - hi) >= max_julong) w = Type::WidenMin; // dual TypeLong::LONG
+    if (((julong)lo - hi) <= SMALLINT)   w = Type::WidenMin;
+    if (((julong)lo - hi) >= max_julong) w = Type::WidenMin; // dual TypeLong::LONG
   }
   return w;
 }
@@ -4083,7 +4083,9 @@
            (tap->_klass_is_exact && !tap->klass()->is_subtype_of(klass())) ||
            // 'this' is exact and super or unrelated:
            (this->_klass_is_exact && !klass()->is_subtype_of(tap->klass())))) {
-      tary = TypeAry::make(Type::BOTTOM, tary->_size, tary->_stable);
+      if (above_centerline(ptr)) {
+        tary = TypeAry::make(Type::BOTTOM, tary->_size, tary->_stable);
+      }
       return make(NotNull, NULL, tary, lazy_klass, false, off, InstanceBot, speculative, depth);
     }
 
--- a/hotspot/src/share/vm/opto/vectornode.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/vectornode.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -250,7 +250,6 @@
   int vopc = VectorNode::opcode(opc, bt);
   // This method should not be called for unimplemented vectors.
   guarantee(vopc > 0, err_msg_res("Vector for '%s' is not implemented", NodeClassNames[opc]));
-
   switch (vopc) {
   case Op_AddVB: return new AddVBNode(n1, n2, vt);
   case Op_AddVS: return new AddVSNode(n1, n2, vt);
@@ -441,3 +440,72 @@
   return NULL;
 }
 
+int ReductionNode::opcode(int opc, BasicType bt) {
+  int vopc = opc;
+  switch (opc) {
+    case Op_AddI:
+      assert(bt == T_INT, "must be");
+      vopc = Op_AddReductionVI;
+      break;
+    case Op_AddL:
+      assert(bt == T_LONG, "must be");
+      vopc = Op_AddReductionVL;
+      break;
+    case Op_AddF:
+      assert(bt == T_FLOAT, "must be");
+      vopc = Op_AddReductionVF;
+      break;
+    case Op_AddD:
+      assert(bt == T_DOUBLE, "must be");
+      vopc = Op_AddReductionVD;
+      break;
+    case Op_MulI:
+      assert(bt == T_INT, "must be");
+      vopc = Op_MulReductionVI;
+      break;
+    case Op_MulF:
+      assert(bt == T_FLOAT, "must be");
+      vopc = Op_MulReductionVF;
+      break;
+    case Op_MulD:
+      assert(bt == T_DOUBLE, "must be");
+      vopc = Op_MulReductionVD;
+      break;
+    // TODO: add MulL for targets that support it
+    default:
+      break;
+  }
+  return vopc;
+}
+
+// Return the appropriate reduction node.
+ReductionNode* ReductionNode::make(int opc, Node *ctrl, Node* n1, Node* n2, BasicType bt) {
+
+  int vopc = opcode(opc, bt);
+
+  // This method should not be called for unimplemented vectors.
+  guarantee(vopc != opc, err_msg_res("Vector for '%s' is not implemented", NodeClassNames[opc]));
+
+  switch (vopc) {
+  case Op_AddReductionVI: return new AddReductionVINode(ctrl, n1, n2);
+  case Op_AddReductionVL: return new AddReductionVLNode(ctrl, n1, n2);
+  case Op_AddReductionVF: return new AddReductionVFNode(ctrl, n1, n2);
+  case Op_AddReductionVD: return new AddReductionVDNode(ctrl, n1, n2);
+  case Op_MulReductionVI: return new MulReductionVINode(ctrl, n1, n2);
+  case Op_MulReductionVF: return new MulReductionVFNode(ctrl, n1, n2);
+  case Op_MulReductionVD: return new MulReductionVDNode(ctrl, n1, n2);
+  }
+  fatal(err_msg_res("Missed vector creation for '%s'", NodeClassNames[vopc]));
+  return NULL;
+}
+
+bool ReductionNode::implemented(int opc, uint vlen, BasicType bt) {
+  if (is_java_primitive(bt) &&
+      (vlen > 1) && is_power_of_2(vlen) &&
+      Matcher::vector_size_supported(bt, vlen)) {
+    int vopc = ReductionNode::opcode(opc, bt);
+    return vopc != opc && Matcher::match_rule_supported(vopc);
+  }
+  return false;
+}
+
--- a/hotspot/src/share/vm/opto/vectornode.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/opto/vectornode.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -90,6 +90,37 @@
   virtual int Opcode() const;
 };
 
+//------------------------------ReductionNode------------------------------------
+// Perform reduction of a vector
+class ReductionNode : public Node {
+ public:
+  ReductionNode(Node *ctrl, Node* in1, Node* in2) : Node(ctrl, in1, in2) {}
+
+  static ReductionNode* make(int opc, Node *ctrl, Node* in1, Node* in2, BasicType bt);
+  static int  opcode(int opc, BasicType bt);
+  static bool implemented(int opc, uint vlen, BasicType bt);
+};
+
+//------------------------------AddReductionVINode--------------------------------------
+// Vector add int as a reduction
+class AddReductionVINode : public ReductionNode {
+public:
+  AddReductionVINode(Node * ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return TypeInt::INT; }
+  virtual uint ideal_reg() const { return Op_RegI; }
+};
+
+//------------------------------AddReductionVLNode--------------------------------------
+// Vector add long as a reduction
+class AddReductionVLNode : public ReductionNode {
+public:
+  AddReductionVLNode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return TypeLong::LONG; }
+  virtual uint ideal_reg() const { return Op_RegL; }
+};
+
 //------------------------------AddVLNode--------------------------------------
 // Vector add long
 class AddVLNode : public VectorNode {
@@ -106,6 +137,16 @@
   virtual int Opcode() const;
 };
 
+//------------------------------AddReductionVFNode--------------------------------------
+// Vector add float as a reduction
+class AddReductionVFNode : public ReductionNode {
+public:
+  AddReductionVFNode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return Type::FLOAT; }
+  virtual uint ideal_reg() const { return Op_RegF; }
+};
+
 //------------------------------AddVDNode--------------------------------------
 // Vector add double
 class AddVDNode : public VectorNode {
@@ -114,6 +155,16 @@
   virtual int Opcode() const;
 };
 
+//------------------------------AddReductionVDNode--------------------------------------
+// Vector add double as a reduction
+class AddReductionVDNode : public ReductionNode {
+public:
+  AddReductionVDNode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return Type::DOUBLE; }
+  virtual uint ideal_reg() const { return Op_RegD; }
+};
+
 //------------------------------SubVBNode--------------------------------------
 // Vector subtract byte
 class SubVBNode : public VectorNode {
@@ -178,6 +229,16 @@
   virtual int Opcode() const;
 };
 
+//------------------------------MulReductionVINode--------------------------------------
+// Vector multiply int as a reduction
+class MulReductionVINode : public ReductionNode {
+public:
+  MulReductionVINode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return TypeInt::INT; }
+  virtual uint ideal_reg() const { return Op_RegI; }
+};
+
 //------------------------------MulVFNode--------------------------------------
 // Vector multiply float
 class MulVFNode : public VectorNode {
@@ -186,6 +247,16 @@
   virtual int Opcode() const;
 };
 
+//------------------------------MulReductionVFNode--------------------------------------
+// Vector multiply float as a reduction
+class MulReductionVFNode : public ReductionNode {
+public:
+  MulReductionVFNode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return Type::FLOAT; }
+  virtual uint ideal_reg() const { return Op_RegF; }
+};
+
 //------------------------------MulVDNode--------------------------------------
 // Vector multiply double
 class MulVDNode : public VectorNode {
@@ -194,6 +265,16 @@
   virtual int Opcode() const;
 };
 
+//------------------------------MulReductionVDNode--------------------------------------
+// Vector multiply double as a reduction
+class MulReductionVDNode : public ReductionNode {
+public:
+  MulReductionVDNode(Node *ctrl, Node* in1, Node* in2) : ReductionNode(ctrl, in1, in2) {}
+  virtual int Opcode() const;
+  virtual const Type* bottom_type() const { return Type::DOUBLE; }
+  virtual uint ideal_reg() const { return Op_RegD; }
+};
+
 //------------------------------DivVFNode--------------------------------------
 // Vector divide float
 class DivVFNode : public VectorNode {
--- a/hotspot/src/share/vm/precompiled/precompiled.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/precompiled/precompiled.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -94,7 +94,6 @@
 # include "gc_implementation/shared/spaceCounters.hpp"
 # include "gc_implementation/shared/spaceDecorator.hpp"
 # include "gc_interface/collectedHeap.hpp"
-# include "gc_interface/collectedHeap.inline.hpp"
 # include "gc_interface/gcCause.hpp"
 # include "interpreter/abstractInterpreter.hpp"
 # include "interpreter/bytecode.hpp"
@@ -114,15 +113,12 @@
 # include "memory/allocation.hpp"
 # include "memory/allocation.inline.hpp"
 # include "memory/barrierSet.hpp"
-# include "memory/barrierSet.inline.hpp"
 # include "memory/blockOffsetTable.hpp"
-# include "memory/blockOffsetTable.inline.hpp"
 # include "memory/cardTableModRefBS.hpp"
 # include "memory/collectorPolicy.hpp"
 # include "memory/defNewGeneration.hpp"
 # include "memory/gcLocker.hpp"
 # include "memory/genCollectedHeap.hpp"
-# include "memory/genOopClosures.hpp"
 # include "memory/genRemSet.hpp"
 # include "memory/generation.hpp"
 # include "memory/heap.hpp"
@@ -133,12 +129,11 @@
 # include "memory/referencePolicy.hpp"
 # include "memory/referenceProcessor.hpp"
 # include "memory/resourceArea.hpp"
-# include "memory/sharedHeap.hpp"
 # include "memory/space.hpp"
 # include "memory/threadLocalAllocBuffer.hpp"
-# include "memory/threadLocalAllocBuffer.inline.hpp"
 # include "memory/universe.hpp"
 # include "memory/universe.inline.hpp"
+# include "memory/virtualspace.hpp"
 # include "memory/watermark.hpp"
 # include "oops/arrayKlass.hpp"
 # include "oops/arrayOop.hpp"
@@ -147,7 +142,6 @@
 # include "oops/instanceOop.hpp"
 # include "oops/instanceRefKlass.hpp"
 # include "oops/klass.hpp"
-# include "oops/klassPS.hpp"
 # include "oops/klassVtable.hpp"
 # include "oops/markOop.hpp"
 # include "oops/markOop.inline.hpp"
@@ -211,7 +205,6 @@
 # include "runtime/timer.hpp"
 # include "runtime/unhandledOops.hpp"
 # include "runtime/vframe.hpp"
-# include "runtime/virtualspace.hpp"
 # include "runtime/vmThread.hpp"
 # include "runtime/vm_operations.hpp"
 # include "runtime/vm_version.hpp"
@@ -305,7 +298,6 @@
 # include "gc_implementation/concurrentMarkSweep/promotionInfo.hpp"
 # include "gc_implementation/g1/dirtyCardQueue.hpp"
 # include "gc_implementation/g1/g1BlockOffsetTable.hpp"
-# include "gc_implementation/g1/g1BlockOffsetTable.inline.hpp"
 # include "gc_implementation/g1/g1OopClosures.hpp"
 # include "gc_implementation/g1/g1_globals.hpp"
 # include "gc_implementation/g1/ptrQueue.hpp"
@@ -319,12 +311,11 @@
 # include "gc_implementation/parallelScavenge/psGCAdaptivePolicyCounters.hpp"
 # include "gc_implementation/parallelScavenge/psGenerationCounters.hpp"
 # include "gc_implementation/parallelScavenge/psOldGen.hpp"
-# include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
 # include "gc_implementation/parallelScavenge/psVirtualspace.hpp"
 # include "gc_implementation/parallelScavenge/psYoungGen.hpp"
 # include "gc_implementation/shared/gcAdaptivePolicyCounters.hpp"
 # include "gc_implementation/shared/gcPolicyCounters.hpp"
-# include "gc_implementation/shared/parGCAllocBuffer.hpp"
+# include "gc_implementation/shared/plab.hpp"
 #endif // INCLUDE_ALL_GCS
 
 #endif // !DONT_USE_PRECOMPILED_HEADER
--- a/hotspot/src/share/vm/prims/forte.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/forte.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -171,8 +171,27 @@
   // Now do we have a useful PcDesc?
   if (pc_desc == NULL ||
       pc_desc->scope_decode_offset() == DebugInformationRecorder::serialized_null) {
-    // No debug information available for this pc
-    // vframeStream would explode if we try and walk the frames.
+    // No debug information is available for this PC.
+    //
+    // vframeStreamCommon::fill_from_frame() will decode the frame depending
+    // on the state of the thread.
+    //
+    // Case #1: If the thread is in Java (state == _thread_in_Java), then
+    // the vframeStreamCommon object will be filled as if the frame were a native
+    // compiled frame. Therefore, no debug information is needed.
+    //
+    // Case #2: If the thread is in any other state, then two steps will be performed:
+    // - if asserts are enabled, found_bad_method_frame() will be called and
+    //   the assert in found_bad_method_frame() will be triggered;
+    // - if asserts are disabled, the vframeStreamCommon object will be filled
+    //   as if it were a native compiled frame.
+    //
+    // Case (2) is similar to the way interpreter frames are processed in
+    // vframeStreamCommon::fill_from_interpreter_frame in case no valid BCI
+    // was found for an interpreted frame. If asserts are enabled, the assert
+    // in found_bad_method_frame() will be triggered. If asserts are disabled,
+    // the vframeStreamCommon object will be filled afterwards as if the
+    // interpreter were at the point of entering into the method.
     return false;
   }
 
@@ -229,9 +248,10 @@
     // a valid method. Then again we may have caught an interpreter
     // frame in the middle of construction and the bci field is
     // not yet valid.
-
-    *method_p = method;
     if (!method->is_valid_method()) return false;
+    *method_p = method; // If the Method* found is invalid, it is
+                        // ignored by forte_fill_call_trace_given_top().
+                        // So set method_p only if the Method is valid.
 
     address bcp = fr->interpreter_frame_bcp();
     int bci = method->validate_bci_from_bcp(bcp);
@@ -245,18 +265,33 @@
 }
 
 
-// Determine if 'fr' can be used to find an initial Java frame.
-// Return false if it can not find a fully decipherable Java frame
-// (in other words a frame that isn't safe to use in a vframe stream).
-// Obviously if it can't even find a Java frame false will also be returned.
+// Determine if a Java frame can be found starting with the frame 'fr'.
+//
+// Check the return value of find_initial_Java_frame and the value of
+// 'method_p' to decide on how use the results returned by this method.
+//
+// If 'method_p' is not NULL, an initial Java frame has been found and
+// the stack can be walked starting from that initial frame. In this case,
+// 'method_p' points to the Method that the initial frame belongs to and
+// the initial Java frame is returned in initial_frame_p.
+//
+// find_initial_Java_frame() returns true if a Method has been found (i.e.,
+// 'method_p' is not NULL) and the initial frame that belongs to that Method
+// is decipherable.
 //
-// If we find a Java frame decipherable or not then by definition we have
-// identified a method and that will be returned to the caller via method_p.
-// If we can determine a bci that is returned also. (Hmm is it possible
-// to return a method and bci and still return false? )
+// A frame is considered to be decipherable:
+//
+// - if the frame is a compiled frame and a PCDesc is available;
+//
+// - if the frame is an interpreter frame that is valid or the thread is
+//   state (_thread_in_native || state == _thread_in_vm || state == _thread_blocked).
 //
-// The initial Java frame we find (if any) is return via initial_frame_p.
+// Note that find_initial_Java_frame() can return false even if an initial
+// Java method was found (e.g., there is no PCDesc available for the method).
 //
+// If 'method_p' is NULL, it was not possible to find a Java frame when
+// walking the stack starting from 'fr'. In this case find_initial_Java_frame
+// returns false.
 
 static bool find_initial_Java_frame(JavaThread* thread,
                                     frame* fr,
@@ -276,8 +311,6 @@
   // recognizable to us. This should only happen if we are in a JRT_LEAF
   // or something called by a JRT_LEAF method.
 
-
-
   frame candidate = *fr;
 
   // If the starting frame we were given has no codeBlob associated with
@@ -332,9 +365,11 @@
       nmethod* nm = (nmethod*) candidate.cb();
       *method_p = nm->method();
 
-      // If the frame isn't fully decipherable then the default
-      // value for the bci is a signal that we don't have a bci.
-      // If we have a decipherable frame this bci value will
+      // If the frame is not decipherable, then the value of -1
+      // for the BCI is used to signal that no BCI is available.
+      // Furthermore, the method returns false in this case.
+      //
+      // If a decipherable frame is available, the BCI value will
       // not be used.
 
       *bci_p = -1;
@@ -345,9 +380,9 @@
 
       if (nm->is_native_method()) return true;
 
-      // If it isn't decipherable then we have found a pc that doesn't
-      // have a PCDesc that can get us a bci however we did find
-      // a method
+      // If the frame is not decipherable, then a PC was found
+      // that does not have a PCDesc from which a BCI can be obtained.
+      // Nevertheless, a Method was found.
 
       if (!is_decipherable_compiled_frame(thread, &candidate, nm)) {
         return false;
@@ -356,7 +391,7 @@
       // is_decipherable_compiled_frame may modify candidate's pc
       *initial_frame_p = candidate;
 
-      assert(nm->pc_desc_at(candidate.pc()) != NULL, "if it's decipherable then pc must be valid");
+      assert(nm->pc_desc_at(candidate.pc()) != NULL, "debug information must be available if the frame is decipherable");
 
       return true;
     }
@@ -386,17 +421,17 @@
 
   frame initial_Java_frame;
   Method* method;
-  int bci;
+  int bci = -1; // assume BCI is not available for method
+                // update with correct information if available
   int count;
 
   count = 0;
   assert(trace->frames != NULL, "trace->frames must be non-NULL");
 
-  bool fully_decipherable = find_initial_Java_frame(thd, &top_frame, &initial_Java_frame, &method, &bci);
+  // Walk the stack starting from 'top_frame' and search for an initial Java frame.
+  find_initial_Java_frame(thd, &top_frame, &initial_Java_frame, &method, &bci);
 
-  // The frame might not be walkable but still recovered a method
-  // (e.g. an nmethod with no scope info for the pc)
-
+  // Check if a Java Method has been found.
   if (method == NULL) return;
 
   if (!method->is_valid_method()) {
@@ -404,29 +439,6 @@
     return;
   }
 
-  // We got a Java frame however it isn't fully decipherable
-  // so it won't necessarily be safe to use it for the
-  // initial frame in the vframe stream.
-
-  if (!fully_decipherable) {
-    // Take whatever method the top-frame decoder managed to scrape up.
-    // We look further at the top frame only if non-safepoint
-    // debugging information is available.
-    count++;
-    trace->num_frames = count;
-    trace->frames[0].method_id = method->find_jmethod_id_or_null();
-    if (!method->is_native()) {
-      trace->frames[0].lineno = bci;
-    } else {
-      trace->frames[0].lineno = -3;
-    }
-
-    if (!initial_Java_frame.safe_for_sender(thd)) return;
-
-    RegisterMap map(thd, false);
-    initial_Java_frame = initial_Java_frame.sender(&map);
-  }
-
   vframeStreamForte st(thd, initial_Java_frame, false);
 
   for (; !st.at_end() && count < depth; st.forte_next(), count++) {
--- a/hotspot/src/share/vm/prims/jni.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/jni.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -84,6 +84,9 @@
 
 static jint CurrentVersion = JNI_VERSION_1_8;
 
+#ifdef _WIN32
+extern LONG WINAPI topLevelExceptionFilter(_EXCEPTION_POINTERS* );
+#endif
 
 // The DT_RETURN_MARK macros create a scoped object to fire the dtrace
 // '-return' probe regardless of the return path is taken out of the function.
@@ -3924,7 +3927,7 @@
 DT_RETURN_MARK_DECL(CreateJavaVM, jint
                     , HOTSPOT_JNI_CREATEJAVAVM_RETURN(_ret_ref));
 
-_JNI_IMPORT_OR_EXPORT_ jint JNICALL JNI_CreateJavaVM(JavaVM **vm, void **penv, void *args) {
+static jint JNI_CreateJavaVM_inner(JavaVM **vm, void **penv, void *args) {
   HOTSPOT_JNI_CREATEJAVAVM_ENTRY((void **) vm, penv, args);
 
   jint result = JNI_ERR;
@@ -4001,18 +4004,14 @@
     }
 
 #ifndef PRODUCT
-  #ifndef CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED
-    #define CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(f) f()
-  #endif
-
     // Check if we should compile all classes on bootclasspath
     if (CompileTheWorld) ClassLoader::compile_the_world();
     if (ReplayCompiles) ciReplay::replay(thread);
 
     // Some platforms (like Win*) need a wrapper around these test
     // functions in order to properly handle error conditions.
-    CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(test_error_handler);
-    CALL_TEST_FUNC_WITH_WRAPPER_IF_NEEDED(execute_internal_vm_tests);
+    test_error_handler();
+    execute_internal_vm_tests();
 #endif
 
     // Since this is not a JVM_ENTRY we have to set the thread state manually before leaving.
@@ -4045,8 +4044,23 @@
   }
 
   return result;
+
 }
 
+_JNI_IMPORT_OR_EXPORT_ jint JNICALL JNI_CreateJavaVM(JavaVM **vm, void **penv, void *args) {
+  jint result = 0;
+  // On Windows, let CreateJavaVM run with SEH protection
+#ifdef _WIN32
+  __try {
+#endif
+    result = JNI_CreateJavaVM_inner(vm, penv, args);
+#ifdef _WIN32
+  } __except(topLevelExceptionFilter((_EXCEPTION_POINTERS*)_exception_info())) {
+    // Nothing to do.
+  }
+#endif
+  return result;
+}
 
 _JNI_IMPORT_OR_EXPORT_ jint JNICALL JNI_GetCreatedJavaVMs(JavaVM **vm_buf, jsize bufLen, jsize *numVMs) {
   // See bug 4367188, the wrapper can sometimes cause VM crashes
--- a/hotspot/src/share/vm/prims/jvm.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/jvm.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1465,63 +1465,26 @@
 }
 JVM_END
 
-// should be in InstanceKlass.cpp, but is here for historical reasons
-Klass* InstanceKlass::compute_enclosing_class_impl(instanceKlassHandle k,
-                                                     bool* inner_is_member,
-                                                     TRAPS) {
-  Thread* thread = THREAD;
-  InnerClassesIterator iter(k);
-  if (iter.length() == 0) {
-    // No inner class info => no declaring class
+JVM_ENTRY(jstring, JVM_GetSimpleBinaryName(JNIEnv *env, jclass cls))
+{
+  oop mirror = JNIHandles::resolve_non_null(cls);
+  if (java_lang_Class::is_primitive(mirror) ||
+      !java_lang_Class::as_Klass(mirror)->oop_is_instance()) {
     return NULL;
   }
-
-  constantPoolHandle i_cp(thread, k->constants());
-
-  bool found = false;
-  Klass* ok;
-  instanceKlassHandle outer_klass;
-  *inner_is_member = false;
-
-  // Find inner_klass attribute
-  for (; !iter.done() && !found; iter.next()) {
-    int ioff = iter.inner_class_info_index();
-    int ooff = iter.outer_class_info_index();
-    int noff = iter.inner_name_index();
-    if (ioff != 0) {
-      // Check to see if the name matches the class we're looking for
-      // before attempting to find the class.
-      if (i_cp->klass_name_at_matches(k, ioff)) {
-        Klass* inner_klass = i_cp->klass_at(ioff, CHECK_NULL);
-        found = (k() == inner_klass);
-        if (found && ooff != 0) {
-          ok = i_cp->klass_at(ooff, CHECK_NULL);
-          outer_klass = instanceKlassHandle(thread, ok);
-          *inner_is_member = true;
-        }
-      }
+  instanceKlassHandle k(THREAD, InstanceKlass::cast(java_lang_Class::as_Klass(mirror)));
+  int ooff = 0, noff = 0;
+  if (InstanceKlass::find_inner_classes_attr(k, &ooff, &noff, THREAD)) {
+    if (noff != 0) {
+      constantPoolHandle i_cp(thread, k->constants());
+      Symbol* name = i_cp->symbol_at(noff);
+      Handle str = java_lang_String::create_from_symbol(name, CHECK_NULL);
+      return (jstring) JNIHandles::make_local(env, str());
     }
   }
-
-  if (found && outer_klass.is_null()) {
-    // It may be anonymous; try for that.
-    int encl_method_class_idx = k->enclosing_method_class_index();
-    if (encl_method_class_idx != 0) {
-      ok = i_cp->klass_at(encl_method_class_idx, CHECK_NULL);
-      outer_klass = instanceKlassHandle(thread, ok);
-      *inner_is_member = false;
-    }
-  }
-
-  // If no inner class attribute found for this class.
-  if (outer_klass.is_null())  return NULL;
-
-  // Throws an exception if outer klass has not declared k as an inner klass
-  // We need evidence that each klass knows about the other, or else
-  // the system could allow a spoof of an inner class to gain access rights.
-  Reflection::check_for_inner_class(outer_klass, k, *inner_is_member, CHECK_NULL);
-  return outer_klass();
+  return NULL;
 }
+JVM_END
 
 JVM_ENTRY(jstring, JVM_GetClassSignature(JNIEnv *env, jclass cls))
   assert (cls != NULL, "illegal class");
--- a/hotspot/src/share/vm/prims/jvm.h	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/jvm.h	Wed Jul 05 20:32:21 2017 +0200
@@ -426,6 +426,9 @@
 JNIEXPORT jclass JNICALL
 JVM_GetDeclaringClass(JNIEnv *env, jclass ofClass);
 
+JNIEXPORT jstring JNICALL
+JVM_GetSimpleBinaryName(JNIEnv *env, jclass ofClass);
+
 /* Generics support (JDK 1.5) */
 JNIEXPORT jstring JNICALL
 JVM_GetClassSignature(JNIEnv *env, jclass cls);
--- a/hotspot/src/share/vm/prims/jvmtiRedefineClasses.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/jvmtiRedefineClasses.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -3433,10 +3433,7 @@
          pv_node = pv_node->previous_versions()) {
       cp_cache = pv_node->constants()->cache();
       if (cp_cache != NULL) {
-        cp_cache->adjust_method_entries(_matching_old_methods,
-                                        _matching_new_methods,
-                                        _matching_methods_length,
-                                        &trace_name_printed);
+        cp_cache->adjust_method_entries(pv_node, &trace_name_printed);
       }
     }
   }
@@ -3992,14 +3989,13 @@
     // the_class doesn't have a cache yet so copy it
     the_class->set_cached_class_file(scratch_class->get_cached_class_file());
   }
-#ifndef PRODUCT
-  else {
-    assert(the_class->get_cached_class_file_bytes() ==
-      scratch_class->get_cached_class_file_bytes(), "cache ptrs must match");
-    assert(the_class->get_cached_class_file_len() ==
-      scratch_class->get_cached_class_file_len(), "cache lens must match");
+  else if (scratch_class->get_cached_class_file_bytes() !=
+           the_class->get_cached_class_file_bytes()) {
+    // The same class can be present twice in the scratch classes list or there
+    // are multiple concurrent RetransformClasses calls on different threads.
+    // In such cases we have to deallocate scratch_class cached_class_file_bytes.
+    os::free(scratch_class->get_cached_class_file_bytes());
   }
-#endif
 
   // NULL out in scratch class to not delete twice.  The class to be redefined
   // always owns these bytes.
@@ -4086,10 +4082,7 @@
   MemberNameTable* mnt = the_class->member_names();
   if (mnt != NULL) {
     bool trace_name_printed = false;
-    mnt->adjust_method_entries(_matching_old_methods,
-                               _matching_new_methods,
-                               _matching_methods_length,
-                               &trace_name_printed);
+    mnt->adjust_method_entries(the_class(), &trace_name_printed);
   }
 
   // Fix Resolution Error table also to remove old constant pools
--- a/hotspot/src/share/vm/prims/methodHandles.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/methodHandles.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -35,6 +35,7 @@
 #include "oops/objArrayOop.inline.hpp"
 #include "oops/oop.inline.hpp"
 #include "prims/methodHandles.hpp"
+#include "prims/jvmtiRedefineClassesTrace.hpp"
 #include "runtime/compilationPolicy.hpp"
 #include "runtime/javaCalls.hpp"
 #include "runtime/reflection.hpp"
@@ -939,6 +940,24 @@
   return rfill + overflow;
 }
 
+// Get context class for a CallSite instance: either extract existing context or use default one.
+InstanceKlass* MethodHandles::get_call_site_context(oop call_site) {
+  // In order to extract a context the following traversal is performed:
+  //   CallSite.context => Cleaner.referent => Class._klass => Klass
+  assert(java_lang_invoke_CallSite::is_instance(call_site), "");
+  oop context_oop = java_lang_invoke_CallSite::context_volatile(call_site);
+  if (oopDesc::is_null(context_oop)) {
+    return NULL; // The context hasn't been initialized yet.
+  }
+  oop context_class_oop = java_lang_ref_Reference::referent(context_oop);
+  if (oopDesc::is_null(context_class_oop)) {
+    // The context reference was cleared by GC, so current dependency context
+    // isn't usable anymore. Context should be fetched from CallSite again.
+    return NULL;
+  }
+  return InstanceKlass::cast(java_lang_Class::as_Klass(context_class_oop));
+}
+
 //------------------------------------------------------------------------------
 // MemberNameTable
 //
@@ -965,21 +984,41 @@
 
 #if INCLUDE_JVMTI
 // It is called at safepoint only for RedefineClasses
-void MemberNameTable::adjust_method_entries(Method** old_methods, Method** new_methods,
-                                            int methods_length, bool *trace_name_printed) {
+void MemberNameTable::adjust_method_entries(InstanceKlass* holder, bool * trace_name_printed) {
   assert(SafepointSynchronize::is_at_safepoint(), "only called at safepoint");
   // For each redefined method
-  for (int j = 0; j < methods_length; j++) {
-    Method* old_method = old_methods[j];
-    Method* new_method = new_methods[j];
+  for (int idx = 0; idx < length(); idx++) {
+    oop mem_name = JNIHandles::resolve(this->at(idx));
+    if (mem_name == NULL) {
+      continue;
+    }
+    Method* old_method = (Method*)java_lang_invoke_MemberName::vmtarget(mem_name);
+
+    if (old_method == NULL || !old_method->is_old()) {
+      continue; // skip uninteresting entries
+    }
+    if (old_method->is_deleted()) {
+      // skip entries with deleted methods
+      continue;
+    }
+    Method* new_method = holder->method_with_idnum(old_method->orig_method_idnum());
 
-    // search the MemberNameTable for uses of either obsolete or EMCP methods
-    for (int idx = 0; idx < length(); idx++) {
-      oop mem_name = JNIHandles::resolve(this->at(idx));
-      if (mem_name != NULL) {
-        java_lang_invoke_MemberName::adjust_vmtarget(mem_name, old_method, new_method,
-                                                     trace_name_printed);
+    assert(new_method != NULL, "method_with_idnum() should not be NULL");
+    assert(old_method != new_method, "sanity check");
+
+    java_lang_invoke_MemberName::set_vmtarget(mem_name, new_method);
+
+    if (RC_TRACE_IN_RANGE(0x00100000, 0x00400000)) {
+      if (!(*trace_name_printed)) {
+        // RC_TRACE_MESG macro has an embedded ResourceMark
+        RC_TRACE_MESG(("adjust: name=%s",
+                       old_method->method_holder()->external_name()));
+        *trace_name_printed = true;
       }
+      // RC_TRACE macro has an embedded ResourceMark
+      RC_TRACE(0x00400000, ("MemberName method update: %s(%s)",
+                            new_method->name()->as_C_string(),
+                            new_method->signature()->as_C_string()));
     }
   }
 }
@@ -994,22 +1033,8 @@
 // that intrinsic (non-JNI) native methods are defined in HotSpot.
 //
 
-JVM_ENTRY(jint, MHN_getConstant(JNIEnv *env, jobject igcls, jint which)) {
-  switch (which) {
-  case MethodHandles::GC_COUNT_GWT:
-#ifdef COMPILER2
-    return true;
-#else
-    return false;
-#endif
-  }
-  return 0;
-}
-JVM_END
-
 #ifndef PRODUCT
 #define EACH_NAMED_CON(template, requirement) \
-    template(MethodHandles,GC_COUNT_GWT) \
     template(java_lang_invoke_MemberName,MN_IS_METHOD) \
     template(java_lang_invoke_MemberName,MN_IS_CONSTRUCTOR) \
     template(java_lang_invoke_MemberName,MN_IS_FIELD) \
@@ -1019,7 +1044,6 @@
     template(java_lang_invoke_MemberName,MN_SEARCH_INTERFACES) \
     template(java_lang_invoke_MemberName,MN_REFERENCE_KIND_SHIFT) \
     template(java_lang_invoke_MemberName,MN_REFERENCE_KIND_MASK) \
-    template(MethodHandles,GC_LAMBDA_SUPPORT) \
     /*end*/
 
 #define IGNORE_REQ(req_expr) /* req_expr */
@@ -1246,7 +1270,7 @@
 
 JVM_ENTRY(void, MHN_setCallSiteTargetNormal(JNIEnv* env, jobject igcls, jobject call_site_jh, jobject target_jh)) {
   Handle call_site(THREAD, JNIHandles::resolve_non_null(call_site_jh));
-  Handle target   (THREAD, JNIHandles::resolve(target_jh));
+  Handle target   (THREAD, JNIHandles::resolve_non_null(target_jh));
   {
     // Walk all nmethods depending on this call site.
     MutexLocker mu(Compile_lock, thread);
@@ -1258,7 +1282,7 @@
 
 JVM_ENTRY(void, MHN_setCallSiteTargetVolatile(JNIEnv* env, jobject igcls, jobject call_site_jh, jobject target_jh)) {
   Handle call_site(THREAD, JNIHandles::resolve_non_null(call_site_jh));
-  Handle target   (THREAD, JNIHandles::resolve(target_jh));
+  Handle target   (THREAD, JNIHandles::resolve_non_null(target_jh));
   {
     // Walk all nmethods depending on this call site.
     MutexLocker mu(Compile_lock, thread);
@@ -1268,6 +1292,33 @@
 }
 JVM_END
 
+JVM_ENTRY(void, MHN_invalidateDependentNMethods(JNIEnv* env, jobject igcls, jobject call_site_jh)) {
+  Handle call_site(THREAD, JNIHandles::resolve_non_null(call_site_jh));
+  {
+    // Walk all nmethods depending on this call site.
+    MutexLocker mu1(Compile_lock, thread);
+
+    CallSiteDepChange changes(call_site(), Handle());
+
+    InstanceKlass* ctxk = MethodHandles::get_call_site_context(call_site());
+    if (ctxk == NULL) {
+      return; // No dependencies to invalidate yet.
+    }
+    int marked = 0;
+    {
+      MutexLockerEx mu2(CodeCache_lock, Mutex::_no_safepoint_check_flag);
+      marked = ctxk->mark_dependent_nmethods(changes);
+    }
+    java_lang_invoke_CallSite::set_context_volatile(call_site(), NULL); // Reset call site to initial state
+    if (marked > 0) {
+      // At least one nmethod has been marked for deoptimization
+      VM_Deoptimize op;
+      VMThread::execute(&op);
+    }
+  }
+}
+JVM_END
+
 /**
  * Throws a java/lang/UnsupportedOperationException unconditionally.
  * This is required by the specification of MethodHandle.invoke if
@@ -1313,7 +1364,6 @@
   {CC"init",                      CC"("MEM""OBJ")V",                     FN_PTR(MHN_init_Mem)},
   {CC"expand",                    CC"("MEM")V",                          FN_PTR(MHN_expand_Mem)},
   {CC"resolve",                   CC"("MEM""CLS")"MEM,                   FN_PTR(MHN_resolve_Mem)},
-  {CC"getConstant",               CC"(I)I",                              FN_PTR(MHN_getConstant)},
   //  static native int getNamedCon(int which, Object[] name)
   {CC"getNamedCon",               CC"(I["OBJ")I",                        FN_PTR(MHN_getNamedCon)},
   //  static native int getMembers(Class<?> defc, String matchName, String matchSig,
@@ -1322,6 +1372,7 @@
   {CC"objectFieldOffset",         CC"("MEM")J",                          FN_PTR(MHN_objectFieldOffset)},
   {CC"setCallSiteTargetNormal",   CC"("CS""MH")V",                       FN_PTR(MHN_setCallSiteTargetNormal)},
   {CC"setCallSiteTargetVolatile", CC"("CS""MH")V",                       FN_PTR(MHN_setCallSiteTargetVolatile)},
+  {CC"invalidateDependentNMethods", CC"("CS")V",                         FN_PTR(MHN_invalidateDependentNMethods)},
   {CC"staticFieldOffset",         CC"("MEM")J",                          FN_PTR(MHN_staticFieldOffset)},
   {CC"staticFieldBase",           CC"("MEM")"OBJ,                        FN_PTR(MHN_staticFieldBase)},
   {CC"getMemberVMInfo",           CC"("MEM")"OBJ,                        FN_PTR(MHN_getMemberVMInfo)}
--- a/hotspot/src/share/vm/prims/methodHandles.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/methodHandles.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -68,6 +68,9 @@
   // bit values for suppress argument to expand_MemberName:
   enum { _suppress_defc = 1, _suppress_name = 2, _suppress_type = 4 };
 
+  // CallSite support
+  static InstanceKlass* get_call_site_context(oop call_site);
+
   // Generate MethodHandles adapters.
   static bool generate_adapters();
 
@@ -125,11 +128,6 @@
     return signature_polymorphic_name_id(klass, name) != vmIntrinsics::_none;
   }
 
-  enum {
-    // format of query to getConstant:
-    GC_COUNT_GWT = 4,
-    GC_LAMBDA_SUPPORT = 5
-  };
   static int get_named_constant(int which, Handle name_box, TRAPS);
 
 public:
@@ -243,10 +241,8 @@
 
 #if INCLUDE_JVMTI
   // RedefineClasses() API support:
-  // If a MemberName refers to old_method then update it
-  // to refer to new_method.
-  void adjust_method_entries(Method** old_methods, Method** new_methods,
-                             int methods_length, bool *trace_name_printed);
+  // If a MemberName refers to old_method then update it to refer to new_method.
+  void adjust_method_entries(InstanceKlass* holder, bool * trace_name_printed);
 #endif // INCLUDE_JVMTI
 };
 
--- a/hotspot/src/share/vm/prims/unsafe.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/unsafe.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -172,18 +172,6 @@
   oop p = JNIHandles::resolve(obj); \
   OrderAccess::release_store_fence((volatile type_name*)index_oop_from_field_offset_long(p, offset), x);
 
-// Macros for oops that check UseCompressedOops
-
-#define GET_OOP_FIELD(obj, offset, v) \
-  oop p = JNIHandles::resolve(obj);   \
-  oop v;                              \
-  if (UseCompressedOops) {            \
-    narrowOop n = *(narrowOop*)index_oop_from_field_offset_long(p, offset); \
-    v = oopDesc::decode_heap_oop(n);                                \
-  } else {                            \
-    v = *(oop*)index_oop_from_field_offset_long(p, offset);                 \
-  }
-
 
 // Get/SetObject must be special-cased, since it works with handles.
 
@@ -192,7 +180,14 @@
 // That is, it should be in the range [0, MAX_OBJECT_SIZE].
 UNSAFE_ENTRY(jobject, Unsafe_GetObject(JNIEnv *env, jobject unsafe, jobject obj, jlong offset))
   UnsafeWrapper("Unsafe_GetObject");
-  GET_OOP_FIELD(obj, offset, v)
+  oop p = JNIHandles::resolve(obj);
+  oop v;
+  if (UseCompressedOops) {
+    narrowOop n = *(narrowOop*)index_oop_from_field_offset_long(p, offset);
+    v = oopDesc::decode_heap_oop(n);
+  } else {
+    v = *(oop*)index_oop_from_field_offset_long(p, offset);
+  }
   jobject ret = JNIHandles::make_local(env, v);
 #if INCLUDE_ALL_GCS
   // We could be accessing the referent field in a reference
@@ -261,6 +256,25 @@
   OrderAccess::fence();
 UNSAFE_END
 
+UNSAFE_ENTRY(jobject, Unsafe_GetUncompressedObject(JNIEnv *env, jobject unsafe, jlong addr))
+  UnsafeWrapper("Unsafe_GetUncompressedObject");
+  oop v = *(oop*) (address) addr;
+  return JNIHandles::make_local(env, v);
+UNSAFE_END
+
+UNSAFE_ENTRY(jclass, Unsafe_GetJavaMirror(JNIEnv *env, jobject unsafe, jlong metaspace_klass))
+  UnsafeWrapper("Unsafe_GetJavaMirror");
+  Klass* klass = (Klass*) (address) metaspace_klass;
+  return (jclass) JNIHandles::make_local(klass->java_mirror());
+UNSAFE_END
+
+UNSAFE_ENTRY(jlong, Unsafe_GetKlassPointer(JNIEnv *env, jobject unsafe, jobject obj))
+  UnsafeWrapper("Unsafe_GetKlassPointer");
+  oop o = JNIHandles::resolve(obj);
+  jlong klass = (jlong) (address) o->klass();
+  return klass;
+UNSAFE_END
+
 #ifndef SUPPORTS_NATIVE_CX8
 
 // VM_Version::supports_cx8() is a surrogate for 'supports atomic long memory ops'.
@@ -324,6 +338,24 @@
 
 #endif // not SUPPORTS_NATIVE_CX8
 
+UNSAFE_ENTRY(jboolean, Unsafe_isBigEndian0(JNIEnv *env, jobject unsafe))
+  UnsafeWrapper("Unsafe_IsBigEndian0");
+  {
+#ifdef VM_LITTLE_ENDIAN
+    return false;
+#else
+    return true;
+#endif
+  }
+UNSAFE_END
+
+UNSAFE_ENTRY(jint, Unsafe_unalignedAccess0(JNIEnv *env, jobject unsafe))
+  UnsafeWrapper("Unsafe_UnalignedAccess0");
+  {
+    return UseUnalignedAccesses;
+  }
+UNSAFE_END
+
 #define DEFINE_GETSETOOP(jboolean, Boolean) \
  \
 UNSAFE_ENTRY(jboolean, Unsafe_Get##Boolean##140(JNIEnv *env, jobject unsafe, jobject obj, jint offset)) \
@@ -1204,6 +1236,10 @@
     {CC"getObjectVolatile",CC"("OBJ"J)"OBJ"",   FN_PTR(Unsafe_GetObjectVolatile)},
     {CC"putObjectVolatile",CC"("OBJ"J"OBJ")V",  FN_PTR(Unsafe_SetObjectVolatile)},
 
+    {CC"getUncompressedObject", CC"("ADR")"OBJ, FN_PTR(Unsafe_GetUncompressedObject)},
+    {CC"getJavaMirror",         CC"("ADR")"CLS, FN_PTR(Unsafe_GetJavaMirror)},
+    {CC"getKlassPointer",       CC"("OBJ")"ADR, FN_PTR(Unsafe_GetKlassPointer)},
+
     DECLARE_GETPUTOOP(Boolean, Z),
     DECLARE_GETPUTOOP(Byte, B),
     DECLARE_GETPUTOOP(Short, S),
@@ -1261,6 +1297,9 @@
     {CC"loadFence",          CC"()V",                    FN_PTR(Unsafe_LoadFence)},
     {CC"storeFence",         CC"()V",                    FN_PTR(Unsafe_StoreFence)},
     {CC"fullFence",          CC"()V",                    FN_PTR(Unsafe_FullFence)},
+
+    {CC"isBigEndian0",       CC"()Z",                    FN_PTR(Unsafe_isBigEndian0)},
+    {CC"unalignedAccess0",   CC"()Z",                    FN_PTR(Unsafe_unalignedAccess0)}
 };
 
 #undef CC
--- a/hotspot/src/share/vm/prims/whitebox.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/whitebox.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -89,6 +89,10 @@
   return os::vm_page_size();
 WB_END
 
+WB_ENTRY(jlong, WB_GetVMLargePageSize(JNIEnv* env, jobject o))
+  return os::large_page_size();
+WB_END
+
 class WBIsKlassAliveClosure : public KlassClosure {
     Symbol* _name;
     bool _found;
@@ -819,46 +823,9 @@
   mo.notify_all();
 WB_END
 
-void WhiteBox::sweeper_thread_entry(JavaThread* thread, TRAPS) {
-  guarantee(WhiteBoxAPI, "internal testing API :: WhiteBox has to be enabled");
-  {
-    MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
-    NMethodSweeper::_should_sweep = true;
-  }
-  NMethodSweeper::possibly_sweep();
-}
-
-JavaThread* WhiteBox::create_sweeper_thread(TRAPS) {
-  // create sweeper thread w/ custom entry -- one iteration instead of loop
-  CodeCacheSweeperThread* sweeper_thread = new CodeCacheSweeperThread();
-  sweeper_thread->set_entry_point(&WhiteBox::sweeper_thread_entry);
-
-  // create j.l.Thread object and associate it w/ sweeper thread
-  {
-    // inherit deamon property from current thread
-    bool is_daemon = java_lang_Thread::is_daemon(JavaThread::current()->threadObj());
-
-    HandleMark hm(THREAD);
-    Handle thread_group(THREAD, Universe::system_thread_group());
-    const char* name = "WB Sweeper thread";
-    sweeper_thread->allocate_threadObj(thread_group, name, is_daemon, THREAD);
-  }
-
-  {
-    MutexLocker mu(Threads_lock, THREAD);
-    Threads::add(sweeper_thread);
-  }
-  return sweeper_thread;
-}
-
-WB_ENTRY(jobject, WB_ForceNMethodSweep(JNIEnv* env, jobject o))
-  JavaThread* sweeper_thread = WhiteBox::create_sweeper_thread(Thread::current());
-  if (sweeper_thread == NULL) {
-    return NULL;
-  }
-  jobject result = JNIHandles::make_local(env, sweeper_thread->threadObj());
-  Thread::start(sweeper_thread);
-  return result;
+WB_ENTRY(void, WB_ForceNMethodSweep(JNIEnv* env, jobject o))
+  // Force a code cache sweep and block until it finished
+  NMethodSweeper::force_sweep();
 WB_END
 
 WB_ENTRY(jboolean, WB_IsInStringTable(JNIEnv* env, jobject o, jstring javaString))
@@ -1234,7 +1201,7 @@
   if (res == NULL) {
     tty->print_cr("Invalid layout of %s at %s", ik->external_name(),
         name_symbol->as_C_string());
-    fatal("Invalid layout of preloaded class");
+    vm_exit_during_initialization("Invalid layout of preloaded class: use -XX:+TraceClassLoading to see the origin of the problem class");
   }
 
   //fetch the field at the offset we've found
@@ -1296,19 +1263,20 @@
 #define CC (char*)
 
 static JNINativeMethod methods[] = {
-  {CC"getObjectAddress",   CC"(Ljava/lang/Object;)J", (void*)&WB_GetObjectAddress  },
-  {CC"getObjectSize",      CC"(Ljava/lang/Object;)J", (void*)&WB_GetObjectSize     },
-  {CC"isObjectInOldGen",   CC"(Ljava/lang/Object;)Z", (void*)&WB_isObjectInOldGen  },
+  {CC"getObjectAddress0",   CC"(Ljava/lang/Object;)J", (void*)&WB_GetObjectAddress  },
+  {CC"getObjectSize0",      CC"(Ljava/lang/Object;)J", (void*)&WB_GetObjectSize     },
+  {CC"isObjectInOldGen0",   CC"(Ljava/lang/Object;)Z", (void*)&WB_isObjectInOldGen  },
   {CC"getHeapOopSize",     CC"()I",                   (void*)&WB_GetHeapOopSize    },
   {CC"getVMPageSize",      CC"()I",                   (void*)&WB_GetVMPageSize     },
+  {CC"getVMLargePageSize", CC"()J",                   (void*)&WB_GetVMLargePageSize},
   {CC"isClassAlive0",      CC"(Ljava/lang/String;)Z", (void*)&WB_IsClassAlive      },
-  {CC"parseCommandLine",
+  {CC"parseCommandLine0",
       CC"(Ljava/lang/String;C[Lsun/hotspot/parser/DiagnosticCommand;)[Ljava/lang/Object;",
       (void*) &WB_ParseCommandLine
   },
-  {CC"addToBootstrapClassLoaderSearch", CC"(Ljava/lang/String;)V",
+  {CC"addToBootstrapClassLoaderSearch0", CC"(Ljava/lang/String;)V",
                                                       (void*)&WB_AddToBootstrapClassLoaderSearch},
-  {CC"addToSystemClassLoaderSearch",    CC"(Ljava/lang/String;)V",
+  {CC"addToSystemClassLoaderSearch0",    CC"(Ljava/lang/String;)V",
                                                       (void*)&WB_AddToSystemClassLoaderSearch},
   {CC"getCompressedOopsMaxHeapSize", CC"()J",
       (void*)&WB_GetCompressedOopsMaxHeapSize},
@@ -1318,7 +1286,7 @@
   {CC"stressVirtualSpaceResize",CC"(JJJ)I",           (void*)&WB_StressVirtualSpaceResize},
 #if INCLUDE_ALL_GCS
   {CC"g1InConcurrentMark", CC"()Z",                   (void*)&WB_G1InConcurrentMark},
-  {CC"g1IsHumongous",      CC"(Ljava/lang/Object;)Z", (void*)&WB_G1IsHumongous     },
+  {CC"g1IsHumongous0",      CC"(Ljava/lang/Object;)Z", (void*)&WB_G1IsHumongous     },
   {CC"g1NumMaxRegions",    CC"()J",                   (void*)&WB_G1NumMaxRegions  },
   {CC"g1NumFreeRegions",   CC"()J",                   (void*)&WB_G1NumFreeRegions  },
   {CC"g1RegionSize",       CC"()I",                   (void*)&WB_G1RegionSize      },
@@ -1339,29 +1307,29 @@
 #endif // INCLUDE_NMT
   {CC"deoptimizeFrames",   CC"(Z)I",                  (void*)&WB_DeoptimizeFrames  },
   {CC"deoptimizeAll",      CC"()V",                   (void*)&WB_DeoptimizeAll     },
-  {CC"deoptimizeMethod",   CC"(Ljava/lang/reflect/Executable;Z)I",
+  {CC"deoptimizeMethod0",   CC"(Ljava/lang/reflect/Executable;Z)I",
                                                       (void*)&WB_DeoptimizeMethod  },
-  {CC"isMethodCompiled",   CC"(Ljava/lang/reflect/Executable;Z)Z",
+  {CC"isMethodCompiled0",   CC"(Ljava/lang/reflect/Executable;Z)Z",
                                                       (void*)&WB_IsMethodCompiled  },
-  {CC"isMethodCompilable", CC"(Ljava/lang/reflect/Executable;IZ)Z",
+  {CC"isMethodCompilable0", CC"(Ljava/lang/reflect/Executable;IZ)Z",
                                                       (void*)&WB_IsMethodCompilable},
-  {CC"isMethodQueuedForCompilation",
+  {CC"isMethodQueuedForCompilation0",
       CC"(Ljava/lang/reflect/Executable;)Z",          (void*)&WB_IsMethodQueuedForCompilation},
-  {CC"makeMethodNotCompilable",
+  {CC"makeMethodNotCompilable0",
       CC"(Ljava/lang/reflect/Executable;IZ)V",        (void*)&WB_MakeMethodNotCompilable},
-  {CC"testSetDontInlineMethod",
+  {CC"testSetDontInlineMethod0",
       CC"(Ljava/lang/reflect/Executable;Z)Z",         (void*)&WB_TestSetDontInlineMethod},
-  {CC"getMethodCompilationLevel",
+  {CC"getMethodCompilationLevel0",
       CC"(Ljava/lang/reflect/Executable;Z)I",         (void*)&WB_GetMethodCompilationLevel},
-  {CC"getMethodEntryBci",
+  {CC"getMethodEntryBci0",
       CC"(Ljava/lang/reflect/Executable;)I",          (void*)&WB_GetMethodEntryBci},
   {CC"getCompileQueueSize",
       CC"(I)I",                                       (void*)&WB_GetCompileQueueSize},
-  {CC"testSetForceInlineMethod",
+  {CC"testSetForceInlineMethod0",
       CC"(Ljava/lang/reflect/Executable;Z)Z",         (void*)&WB_TestSetForceInlineMethod},
-  {CC"enqueueMethodForCompilation",
+  {CC"enqueueMethodForCompilation0",
       CC"(Ljava/lang/reflect/Executable;II)Z",        (void*)&WB_EnqueueMethodForCompilation},
-  {CC"clearMethodState",
+  {CC"clearMethodState0",
       CC"(Ljava/lang/reflect/Executable;)V",          (void*)&WB_ClearMethodState},
   {CC"lockCompilation",    CC"()V",                   (void*)&WB_LockCompilation},
   {CC"unlockCompilation",  CC"()V",                   (void*)&WB_UnlockCompilation},
@@ -1400,9 +1368,9 @@
   {CC"incMetaspaceCapacityUntilGC", CC"(J)J",         (void*)&WB_IncMetaspaceCapacityUntilGC },
   {CC"metaspaceCapacityUntilGC", CC"()J",             (void*)&WB_MetaspaceCapacityUntilGC },
   {CC"getCPUFeatures",     CC"()Ljava/lang/String;",  (void*)&WB_GetCPUFeatures     },
-  {CC"getNMethod",         CC"(Ljava/lang/reflect/Executable;Z)[Ljava/lang/Object;",
+  {CC"getNMethod0",         CC"(Ljava/lang/reflect/Executable;Z)[Ljava/lang/Object;",
                                                       (void*)&WB_GetNMethod         },
-  {CC"forceNMethodSweep0", CC"()Ljava/lang/Thread;",  (void*)&WB_ForceNMethodSweep  },
+  {CC"forceNMethodSweep",  CC"()V",                   (void*)&WB_ForceNMethodSweep  },
   {CC"allocateCodeBlob",   CC"(II)J",                 (void*)&WB_AllocateCodeBlob   },
   {CC"freeCodeBlob",       CC"(J)V",                  (void*)&WB_FreeCodeBlob       },
   {CC"getCodeHeapEntries", CC"(I)[Ljava/lang/Object;",(void*)&WB_GetCodeHeapEntries },
@@ -1412,7 +1380,7 @@
   {CC"getThreadStackSize", CC"()J",                   (void*)&WB_GetThreadStackSize },
   {CC"getThreadRemainingStackSize", CC"()J",          (void*)&WB_GetThreadRemainingStackSize },
   {CC"assertMatchingSafepointCalls", CC"(ZZ)V",       (void*)&WB_AssertMatchingSafepointCalls },
-  {CC"isMonitorInflated",  CC"(Ljava/lang/Object;)Z", (void*)&WB_IsMonitorInflated  },
+  {CC"isMonitorInflated0",  CC"(Ljava/lang/Object;)Z", (void*)&WB_IsMonitorInflated  },
   {CC"forceSafepoint",     CC"()V",                   (void*)&WB_ForceSafepoint     },
   {CC"getMethodBooleanOption",
       CC"(Ljava/lang/reflect/Executable;Ljava/lang/String;)Ljava/lang/Boolean;",
--- a/hotspot/src/share/vm/prims/whitebox.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/prims/whitebox.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -70,8 +70,6 @@
     Symbol* signature_symbol);
   static const char* lookup_jstring(const char* field_name, oop object);
   static bool lookup_bool(const char* field_name, oop object);
-  static void sweeper_thread_entry(JavaThread* thread, TRAPS);
-  static JavaThread* create_sweeper_thread(TRAPS);
   static int get_blob_type(const CodeBlob* code);
   static CodeHeap* get_code_heap(int blob_type);
   static CodeBlob* allocate_code_blob(int size, int blob_type);
--- a/hotspot/src/share/vm/runtime/arguments.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/arguments.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -92,6 +92,8 @@
 bool   Arguments::_UseOnStackReplacement        = UseOnStackReplacement;
 bool   Arguments::_BackgroundCompilation        = BackgroundCompilation;
 bool   Arguments::_ClipInlining                 = ClipInlining;
+intx   Arguments::_Tier3InvokeNotifyFreqLog     = Tier3InvokeNotifyFreqLog;
+intx   Arguments::_Tier4InvocationThreshold     = Tier4InvocationThreshold;
 
 char*  Arguments::SharedArchivePath             = NULL;
 
@@ -240,6 +242,9 @@
  * and ignoring the value.  Once the JDK version reaches the 'accept_until'
  * limit, we flatly refuse to admit the existence of the flag.  This allows
  * a flag to die correctly over JDK releases using HSX.
+ * But now that HSX is no longer supported only options with a future
+ * accept_until value need to be listed, and the list can be pruned
+ * on each major release.
  */
 typedef struct {
   const char* name;
@@ -248,63 +253,8 @@
 } ObsoleteFlag;
 
 static ObsoleteFlag obsolete_jvm_flags[] = {
-  { "UseTrainGC",                    JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "UseSpecialLargeObjectHandling", JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "UseOversizedCarHandling",       JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "TraceCarAllocation",            JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "PrintTrainGCProcessingStats",   JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "LogOfCarSpaceSize",             JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "OversizedCarThreshold",         JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "MinTickInterval",               JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "DefaultTickInterval",           JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "MaxTickInterval",               JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "DelayTickAdjustment",           JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "ProcessingToTenuringRatio",     JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "MinTrainLength",                JDK_Version::jdk(5), JDK_Version::jdk(7) },
-  { "AppendRatio",         JDK_Version::jdk_update(6,10), JDK_Version::jdk(7) },
-  { "DefaultMaxRAM",       JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) },
-  { "DefaultInitialRAMFraction",
-                           JDK_Version::jdk_update(6,18), JDK_Version::jdk(7) },
-  { "UseDepthFirstScavengeOrder",
-                           JDK_Version::jdk_update(6,22), JDK_Version::jdk(7) },
-  { "HandlePromotionFailure",
-                           JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) },
-  { "MaxLiveObjectEvacuationRatio",
-                           JDK_Version::jdk_update(6,24), JDK_Version::jdk(8) },
-  { "ForceSharedSpaces",   JDK_Version::jdk_update(6,25), JDK_Version::jdk(8) },
-  { "UseParallelOldGCCompacting",
-                           JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) },
-  { "UseParallelDensePrefixUpdate",
-                           JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) },
-  { "UseParallelOldGCDensePrefix",
-                           JDK_Version::jdk_update(6,27), JDK_Version::jdk(8) },
-  { "AllowTransitionalJSR292",       JDK_Version::jdk(7), JDK_Version::jdk(8) },
-  { "UseCompressedStrings",          JDK_Version::jdk(7), JDK_Version::jdk(8) },
-  { "CMSPermGenPrecleaningEnabled", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "CMSTriggerPermRatio", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "CMSInitiatingPermOccupancyFraction", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "AdaptivePermSizeWeight", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "PermGenPadding", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "PermMarkSweepDeadRatio", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "PermSize", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "MaxPermSize", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "MinPermHeapExpansion", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "MaxPermHeapExpansion", JDK_Version::jdk(8),  JDK_Version::jdk(9) },
-  { "CMSRevisitStackSize",           JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "PrintRevisitStats",             JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UseVectoredExceptions",         JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UseSplitVerifier",              JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UseISM",                        JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UsePermISM",                    JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UseMPSS",                       JDK_Version::jdk(8), JDK_Version::jdk(9) },
-  { "UseStringCache",                JDK_Version::jdk(8), JDK_Version::jdk(9) },
   { "UseOldInlining",                JDK_Version::jdk(9), JDK_Version::jdk(10) },
   { "SafepointPollOffset",           JDK_Version::jdk(9), JDK_Version::jdk(10) },
-#ifdef PRODUCT
-  { "DesiredMethodLimit",
-                           JDK_Version::jdk_update(7, 2), JDK_Version::jdk(8) },
-#endif // PRODUCT
-  { "UseVMInterruptibleIO",          JDK_Version::jdk(8), JDK_Version::jdk(9) },
   { "UseBoundThreads",               JDK_Version::jdk(9), JDK_Version::jdk(10) },
   { "DefaultThreadPriority",         JDK_Version::jdk(9), JDK_Version::jdk(10) },
   { "NoYieldsInMicrolock",           JDK_Version::jdk(9), JDK_Version::jdk(10) },
@@ -338,11 +288,8 @@
     // <flag>=xxx form
     // [-|+]<flag> form
     size_t len = strlen(flag_status.name);
-    if (((strncmp(flag_status.name, s, len) == 0) &&
-         (strlen(s) == len)) ||
-        ((s[0] == '+' || s[0] == '-') &&
-         (strncmp(flag_status.name, &s[1], len) == 0) &&
-         (strlen(&s[1]) == len))) {
+    if ((strncmp(flag_status.name, s, len) == 0) &&
+        (strlen(s) == len)){
       if (JDK_Version::current().compare(flag_status.accept_until) == -1) {
           *version = flag_status.obsoleted_in;
           return true;
@@ -858,17 +805,9 @@
     return true;
   }
 
+  // Determine if the flag has '+', '-', or '=' characters.
   bool has_plus_minus = (*arg == '+' || *arg == '-');
   const char* const argname = has_plus_minus ? arg + 1 : arg;
-  if (is_newly_obsolete(arg, &since)) {
-    char version[256];
-    since.to_string(version, sizeof(version));
-    warning("ignoring option %s; support was removed in %s", argname, version);
-    return true;
-  }
-
-  // For locked flags, report a custom error message if available.
-  // Otherwise, report the standard unrecognized VM option.
 
   size_t arg_len;
   const char* equal_sign = strchr(argname, '=');
@@ -878,6 +817,20 @@
     arg_len = equal_sign - argname;
   }
 
+  // Construct a string which consists only of the argument name without '+', '-', or '='.
+  char stripped_argname[256];
+  strncpy(stripped_argname, argname, arg_len);
+  stripped_argname[arg_len] = '\0'; //strncpy doesn't null terminate.
+
+  if (is_newly_obsolete(stripped_argname, &since)) {
+    char version[256];
+    since.to_string(version, sizeof(version));
+    warning("ignoring option %s; support was removed in %s", stripped_argname, version);
+    return true;
+  }
+
+  // For locked flags, report a custom error message if available.
+  // Otherwise, report the standard unrecognized VM option.
   Flag* found_flag = Flag::find_flag((const char*)argname, arg_len, true, true);
   if (found_flag != NULL) {
     char locked_message_buf[BUFLEN];
@@ -906,16 +859,8 @@
                   (fuzzy_matched->is_bool()) ? "(+/-)" : "",
                   fuzzy_matched->_name,
                   (fuzzy_matched->is_bool()) ? "" : "=<value>");
-      if (is_newly_obsolete(fuzzy_matched->_name, &since)) {
-        char version[256];
-        since.to_string(version, sizeof(version));
-        jio_fprintf(defaultStream::error_stream(),
-                    "Warning: support for %s was removed in %s\n",
-                    fuzzy_matched->_name,
-                    version);
     }
   }
-  }
 
   // allow for commandline "commenting out" options like -XX:#+Verbose
   return arg[0] == '#';
@@ -1069,6 +1014,14 @@
   AlwaysCompileLoopMethods   = Arguments::_AlwaysCompileLoopMethods;
   UseOnStackReplacement      = Arguments::_UseOnStackReplacement;
   BackgroundCompilation      = Arguments::_BackgroundCompilation;
+  if (TieredCompilation) {
+    if (FLAG_IS_DEFAULT(Tier3InvokeNotifyFreqLog)) {
+      Tier3InvokeNotifyFreqLog = Arguments::_Tier3InvokeNotifyFreqLog;
+    }
+    if (FLAG_IS_DEFAULT(Tier4InvocationThreshold)) {
+      Tier4InvocationThreshold = Arguments::_Tier4InvocationThreshold;
+    }
+  }
 
   // Change from defaults based on mode
   switch (mode) {
@@ -1607,12 +1560,15 @@
     } else {
       FLAG_SET_ERGO(bool, UseParallelGC, true);
     }
+  } else {
+    FLAG_SET_ERGO(bool, UseSerialGC, true);
   }
 }
 
 void Arguments::select_gc() {
   if (!gc_selected()) {
     select_gc_ergonomically();
+    guarantee(gc_selected(), "No GC selected");
   }
 }
 
@@ -1900,15 +1856,8 @@
   }
 }
 
-// This must be called after ergonomics because we want bytecode rewriting
-// if the server compiler is used, or if UseSharedSpaces is disabled.
+// This must be called after ergonomics.
 void Arguments::set_bytecode_flags() {
-  // Better not attempt to store into a read-only space.
-  if (UseSharedSpaces) {
-    FLAG_SET_DEFAULT(RewriteBytecodes, false);
-    FLAG_SET_DEFAULT(RewriteFrequentPairs, false);
-  }
-
   if (!RewriteBytecodes) {
     FLAG_SET_DEFAULT(RewriteFrequentPairs, false);
   }
@@ -2145,10 +2094,8 @@
   }
 
   if (UseParNewGC && !UseConcMarkSweepGC) {
-    // !UseConcMarkSweepGC means that we are using serial old gc. Unfortunately we don't
-    // set up UseSerialGC properly, so that can't be used in the check here.
     jio_fprintf(defaultStream::error_stream(),
-        "It is not possible to combine the ParNew young collector with the Serial old collector.\n");
+        "It is not possible to combine the ParNew young collector with any collector other than CMS.\n");
     return false;
   }
 
@@ -2589,6 +2536,10 @@
   Arguments::_UseOnStackReplacement    = UseOnStackReplacement;
   Arguments::_ClipInlining             = ClipInlining;
   Arguments::_BackgroundCompilation    = BackgroundCompilation;
+  if (TieredCompilation) {
+    Arguments::_Tier3InvokeNotifyFreqLog = Tier3InvokeNotifyFreqLog;
+    Arguments::_Tier4InvocationThreshold = Tier4InvocationThreshold;
+  }
 
   // Setup flags for mixed which is the default
   set_mode_flags(_mixed);
@@ -2764,7 +2715,7 @@
 
         char *options = NULL;
         if(pos != NULL) {
-          options = strcpy(NEW_C_HEAP_ARRAY(char, strlen(pos + 1) + 1, mtInternal), pos + 1);
+          options = os::strdup_check_oom(pos + 1, mtInternal);
         }
 #if !INCLUDE_JVMTI
         if (valid_hprof_or_jdwp_agent(name, is_absolute_path)) {
@@ -3070,8 +3021,7 @@
     } else if (match_option(option, "-Xnoagent")) {
       // For compatibility with classic. HotSpot refuses to load the old style agent.dll.
     } else if (match_option(option, "-Xboundthreads")) {
-      // Bind user level threads to kernel threads (Solaris only)
-      FLAG_SET_CMDLINE(bool, UseBoundThreads, true);
+      // Ignore silently for compatibility
     } else if (match_option(option, "-Xloggc:", &tail)) {
       // Redirect GC output to the file. -Xloggc:<filename>
       // ostream_init_log(), when called will use this filename
@@ -3150,7 +3100,7 @@
          FLAG_SET_CMDLINE(size_t, MaxNewSize, NewSize);
       }
 
-#ifndef _ALLBSD_SOURCE  // UseLargePages is not yet supported on BSD.
+#if !defined(_ALLBSD_SOURCE) && !defined(AIX)  // UseLargePages is not yet supported on BSD and AIX.
       FLAG_SET_DEFAULT(UseLargePages, true);
 #endif
 
@@ -3209,7 +3159,8 @@
       uintx max_tenuring_thresh = 0;
       if(!parse_uintx(tail, &max_tenuring_thresh, 0)) {
         jio_fprintf(defaultStream::error_stream(),
-                    "Invalid MaxTenuringThreshold: %s\n", option->optionString);
+          "Improperly specified VM option 'MaxTenuringThreshold=%s'\n", tail);
+        return JNI_EINVAL;
       }
       FLAG_SET_CMDLINE(uintx, MaxTenuringThreshold, max_tenuring_thresh);
 
@@ -3300,6 +3251,15 @@
           "ManagementServer is not supported in this VM.\n");
         return JNI_ERR;
 #endif // INCLUDE_MANAGEMENT
+    // CreateMinidumpOnCrash is removed, and replaced by CreateCoredumpOnCrash
+    } else if (match_option(option, "-XX:+CreateMinidumpOnCrash")) {
+      FLAG_SET_CMDLINE(bool, CreateCoredumpOnCrash, true);
+      jio_fprintf(defaultStream::output_stream(),
+          "CreateMinidumpOnCrash is replaced by CreateCoredumpOnCrash: CreateCoredumpOnCrash is on\n");
+    } else if (match_option(option, "-XX:-CreateMinidumpOnCrash")) {
+      FLAG_SET_CMDLINE(bool, CreateCoredumpOnCrash, false);
+      jio_fprintf(defaultStream::output_stream(),
+          "CreateMinidumpOnCrash is replaced by CreateCoredumpOnCrash: CreateCoredumpOnCrash is off\n");
     } else if (match_option(option, "-XX:", &tail)) { // -XX:xxxx
       // Skip -XX:Flags= since that case has already been handled
       if (strncmp(tail, "Flags=", strlen("Flags=")) != 0) {
@@ -3355,8 +3315,7 @@
       src ++;
     }
 
-    char* copy = AllocateHeap(strlen(src) + 1, mtInternal);
-    strncpy(copy, src, strlen(src) + 1);
+    char* copy = os::strdup_check_oom(src, mtInternal);
 
     // trim all trailing empty paths
     for (char* tail = copy + strlen(copy) - 1; tail >= copy && *tail == separator; tail--) {
@@ -3514,15 +3473,14 @@
   if (os::is_headless_jre()) {
     const char* headless = Arguments::get_property("java.awt.headless");
     if (headless == NULL) {
-      char envbuffer[128];
-      if (!os::getenv("JAVA_AWT_HEADLESS", envbuffer, sizeof(envbuffer))) {
+      const char *headless_env = ::getenv("JAVA_AWT_HEADLESS");
+      if (headless_env == NULL) {
         if (!add_property("java.awt.headless=true")) {
           return JNI_ENOMEM;
         }
       } else {
         char buffer[256];
-        strcpy(buffer, "java.awt.headless=");
-        strcat(buffer, envbuffer);
+        jio_snprintf(buffer, sizeof(buffer), "java.awt.headless=%s", headless_env);
         if (!add_property(buffer)) {
           return JNI_ENOMEM;
         }
@@ -3553,75 +3511,95 @@
 }
 
 jint Arguments::parse_options_environment_variable(const char* name, SysClassPath* scp_p, bool* scp_assembly_required_p) {
-  const int N_MAX_OPTIONS = 64;
-  const int OPTION_BUFFER_SIZE = 1024;
-  char buffer[OPTION_BUFFER_SIZE];
-
-  // The variable will be ignored if it exceeds the length of the buffer.
+  char *buffer = ::getenv(name);
+
   // Don't check this variable if user has special privileges
   // (e.g. unix su command).
-  if (os::getenv(name, buffer, sizeof(buffer)) &&
-      !os::have_special_privileges()) {
-    JavaVMOption options[N_MAX_OPTIONS];      // Construct option array
-    jio_fprintf(defaultStream::error_stream(),
-                "Picked up %s: %s\n", name, buffer);
-    char* rd = buffer;                        // pointer to the input string (rd)
-    int i;
-    for (i = 0; i < N_MAX_OPTIONS;) {         // repeat for all options in the input string
-      while (isspace(*rd)) rd++;              // skip whitespace
-      if (*rd == 0) break;                    // we re done when the input string is read completely
-
-      // The output, option string, overwrites the input string.
-      // Because of quoting, the pointer to the option string (wrt) may lag the pointer to
-      // input string (rd).
-      char* wrt = rd;
-
-      options[i++].optionString = wrt;        // Fill in option
-      while (*rd != 0 && !isspace(*rd)) {     // unquoted strings terminate with a space or NULL
-        if (*rd == '\'' || *rd == '"') {      // handle a quoted string
-          int quote = *rd;                    // matching quote to look for
-          rd++;                               // don't copy open quote
-          while (*rd != quote) {              // include everything (even spaces) up until quote
-            if (*rd == 0) {                   // string termination means unmatched string
-              jio_fprintf(defaultStream::error_stream(),
-                          "Unmatched quote in %s\n", name);
-              return JNI_ERR;
-            }
-            *wrt++ = *rd++;                   // copy to option string
+  if (buffer == NULL || os::have_special_privileges()) {
+    return JNI_OK;
+  }
+
+  if ((buffer = os::strdup(buffer)) == NULL) {
+    return JNI_ENOMEM;
+  }
+
+  GrowableArray<JavaVMOption> *options = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<JavaVMOption>(2, true);    // Construct option array
+  jio_fprintf(defaultStream::error_stream(),
+              "Picked up %s: %s\n", name, buffer);
+  char* rd = buffer;                        // pointer to the input string (rd)
+  while (true) {                            // repeat for all options in the input string
+    while (isspace(*rd)) rd++;              // skip whitespace
+    if (*rd == 0) break;                    // we re done when the input string is read completely
+
+    // The output, option string, overwrites the input string.
+    // Because of quoting, the pointer to the option string (wrt) may lag the pointer to
+    // input string (rd).
+    char* wrt = rd;
+
+    JavaVMOption option;
+    option.optionString = wrt;
+    options->append(option);                // Fill in option
+    while (*rd != 0 && !isspace(*rd)) {     // unquoted strings terminate with a space or NULL
+      if (*rd == '\'' || *rd == '"') {      // handle a quoted string
+        int quote = *rd;                    // matching quote to look for
+        rd++;                               // don't copy open quote
+        while (*rd != quote) {              // include everything (even spaces) up until quote
+          if (*rd == 0) {                   // string termination means unmatched string
+            jio_fprintf(defaultStream::error_stream(),
+                        "Unmatched quote in %s\n", name);
+            delete options;
+            os::free(buffer);
+            return JNI_ERR;
           }
-          rd++;                               // don't copy close quote
-        } else {
-          *wrt++ = *rd++;                     // copy to option string
+          *wrt++ = *rd++;                   // copy to option string
         }
-      }
-      // Need to check if we're done before writing a NULL,
-      // because the write could be to the byte that rd is pointing to.
-      if (*rd++ == 0) {
-        *wrt = 0;
-        break;
-      }
-      *wrt = 0;                               // Zero terminate option
-    }
-    // Construct JavaVMInitArgs structure and parse as if it was part of the command line
-    JavaVMInitArgs vm_args;
-    vm_args.version = JNI_VERSION_1_2;
-    vm_args.options = options;
-    vm_args.nOptions = i;
-    vm_args.ignoreUnrecognized = IgnoreUnrecognizedVMOptions;
-
-    if (PrintVMOptions) {
-      const char* tail;
-      for (int i = 0; i < vm_args.nOptions; i++) {
-        const JavaVMOption *option = vm_args.options + i;
-        if (match_option(option, "-XX:", &tail)) {
-          logOption(tail);
-        }
+        rd++;                               // don't copy close quote
+      } else {
+        *wrt++ = *rd++;                     // copy to option string
       }
     }
-
-    return(parse_each_vm_init_arg(&vm_args, scp_p, scp_assembly_required_p, Flag::ENVIRON_VAR));
+    // Need to check if we're done before writing a NULL,
+    // because the write could be to the byte that rd is pointing to.
+    if (*rd++ == 0) {
+      *wrt = 0;
+      break;
+    }
+    *wrt = 0;                               // Zero terminate option
+  }
+  JavaVMOption* options_arr =
+      NEW_C_HEAP_ARRAY_RETURN_NULL(JavaVMOption, options->length(), mtInternal);
+  if (options_arr == NULL) {
+    delete options;
+    os::free(buffer);
+    return JNI_ENOMEM;
+  }
+  for (int i = 0; i < options->length(); i++) {
+    options_arr[i] = options->at(i);
   }
-  return JNI_OK;
+
+  // Construct JavaVMInitArgs structure and parse as if it was part of the command line
+  JavaVMInitArgs vm_args;
+  vm_args.version = JNI_VERSION_1_2;
+  vm_args.options = options_arr;
+  vm_args.nOptions = options->length();
+  vm_args.ignoreUnrecognized = IgnoreUnrecognizedVMOptions;
+
+  if (PrintVMOptions) {
+    const char* tail;
+    for (int i = 0; i < vm_args.nOptions; i++) {
+      const JavaVMOption *option = vm_args.options + i;
+      if (match_option(option, "-XX:", &tail)) {
+        logOption(tail);
+      }
+    }
+  }
+
+  jint result = parse_each_vm_init_arg(&vm_args, scp_p, scp_assembly_required_p,
+                                       Flag::ENVIRON_VAR);
+  FREE_C_HEAP_ARRAY(JavaVMOption, options_arr);
+  delete options;
+  os::free(buffer);
+  return result;
 }
 
 void Arguments::set_shared_spaces_flags() {
@@ -3665,18 +3643,14 @@
     if (end != NULL) *end = '\0';
     size_t jvm_path_len = strlen(jvm_path);
     size_t file_sep_len = strlen(os::file_separator());
-    shared_archive_path = NEW_C_HEAP_ARRAY(char, jvm_path_len +
-        file_sep_len + 20, mtInternal);
+    const size_t len = jvm_path_len + file_sep_len + 20;
+    shared_archive_path = NEW_C_HEAP_ARRAY(char, len, mtInternal);
     if (shared_archive_path != NULL) {
-      strncpy(shared_archive_path, jvm_path, jvm_path_len + 1);
-      strncat(shared_archive_path, os::file_separator(), file_sep_len);
-      strncat(shared_archive_path, "classes.jsa", 11);
+      jio_snprintf(shared_archive_path, len, "%s%sclasses.jsa",
+        jvm_path, os::file_separator());
     }
   } else {
-    shared_archive_path = NEW_C_HEAP_ARRAY(char, strlen(SharedArchiveFile) + 1, mtInternal);
-    if (shared_archive_path != NULL) {
-      strncpy(shared_archive_path, SharedArchiveFile, strlen(SharedArchiveFile) + 1);
-    }
+    shared_archive_path = os::strdup_check_oom(SharedArchiveFile, mtInternal);
   }
   return shared_archive_path;
 }
@@ -3752,8 +3726,8 @@
       CommandLineFlags::printFlags(tty, false);
       vm_exit(0);
     }
+    if (match_option(option, "-XX:NativeMemoryTracking", &tail)) {
 #if INCLUDE_NMT
-    if (match_option(option, "-XX:NativeMemoryTracking", &tail)) {
       // The launcher did not setup nmt environment variable properly.
       if (!MemTracker::check_launcher_nmt_support(tail)) {
         warning("Native Memory Tracking did not setup properly, using wrong launcher?");
@@ -3769,9 +3743,12 @@
         vm_exit_during_initialization("Syntax error, expecting -XX:NativeMemoryTracking=[off|summary|detail]", NULL);
       }
       continue;
-    }
+#else
+      jio_fprintf(defaultStream::error_stream(),
+        "Native Memory Tracking is not supported in this VM\n");
+      return JNI_ERR;
 #endif
-
+    }
 
 #ifndef PRODUCT
     if (match_option(option, "-XX:+PrintFlagsWithComments")) {
@@ -3839,7 +3816,7 @@
             hotspotrc, hotspotrc);
   }
 
-#ifdef _ALLBSD_SOURCE  // UseLargePages is not yet supported on BSD.
+#if defined(_ALLBSD_SOURCE) || defined(AIX)  // UseLargePages is not yet supported on BSD and AIX.
   UNSUPPORTED_OPTION(UseLargePages, "-XX:+UseLargePages");
 #endif
 
--- a/hotspot/src/share/vm/runtime/arguments.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/arguments.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -323,6 +323,8 @@
   static bool _BackgroundCompilation;
   static bool _ClipInlining;
   static bool _CIDynamicCompilePriority;
+  static intx _Tier3InvokeNotifyFreqLog;
+  static intx _Tier4InvocationThreshold;
 
   // Tiered
   static void set_tiered_flags();
--- a/hotspot/src/share/vm/runtime/deoptimization.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/deoptimization.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1861,6 +1861,7 @@
   "speculate_null_check",
   "rtm_state_change",
   "unstable_if",
+  "unstable_fused_if",
   "tenured"
 };
 const char* Deoptimization::_trap_action_name[] = {
--- a/hotspot/src/share/vm/runtime/deoptimization.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/deoptimization.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -63,6 +63,7 @@
     Reason_speculate_null_check,  // saw unexpected null from type speculation
     Reason_rtm_state_change,      // rtm state change detected
     Reason_unstable_if,           // a branch predicted always false was taken
+    Reason_unstable_fused_if,     // fused two ifs that had each one untaken branch. One is now taken.
 
     // Reason_tenured is counted separately, add normal counted Reasons above.
     // Related to MethodData::_trap_hist_limit where Reason_tenured isn't included
@@ -326,6 +327,8 @@
       return Reason_null_check;
     else if (reason == Reason_unstable_if)
       return Reason_intrinsic;
+    else if (reason == Reason_unstable_fused_if)
+      return Reason_range_check;
     else
       return Reason_none;
   }
--- a/hotspot/src/share/vm/runtime/frame.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/frame.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1104,9 +1104,9 @@
 // call f() on the interpreted Method*s in the stack.
 // Have to walk the entire code cache for the compiled frames Yuck.
 void frame::metadata_do(void f(Metadata*)) {
-  if (_cb != NULL && Interpreter::contains(pc())) {
+  if (is_interpreted_frame()) {
     Method* m = this->interpreter_frame_method();
-    assert(m != NULL, "huh?");
+    assert(m != NULL, "expecting a method in this frame");
     f(m);
   }
 }
--- a/hotspot/src/share/vm/runtime/globals.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/globals.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -677,9 +677,6 @@
   product(bool, PrintVMQWaitTime, false,                                    \
           "Print out the waiting time in VM operation queue")               \
                                                                             \
-  develop(bool, NoYieldsInMicrolock, false,                                 \
-          "Disable yields in microlock")                                    \
-                                                                            \
   develop(bool, TraceOopMapGeneration, false,                               \
           "Show OopMapGeneration")                                          \
                                                                             \
@@ -936,8 +933,8 @@
   product(bool, ShowMessageBoxOnError, false,                               \
           "Keep process alive on VM fatal error")                           \
                                                                             \
-  product(bool, CreateMinidumpOnCrash, false,                               \
-          "Create minidump on VM fatal error")                              \
+  product(bool, CreateCoredumpOnCrash, true,                                \
+          "Create core/mini dump on VM fatal error")                        \
                                                                             \
   product_pd(bool, UseOSErrorReporting,                                     \
           "Let VM fatal error propagate to the OS (ie. WER on Windows)")    \
@@ -1157,9 +1154,6 @@
           "Convert yield to a sleep of MinSleepInterval to simulate Win32 " \
           "behavior")                                                       \
                                                                             \
-  product(bool, UseBoundThreads, true,                                      \
-          "Bind user level threads to kernel threads (for Solaris only)")   \
-                                                                            \
   develop(bool, UseDetachedThreads, true,                                   \
           "Use detached threads that are recycled upon termination "        \
           "(for Solaris only)")                                             \
@@ -1342,9 +1336,6 @@
   product(intx, TraceRedefineClasses, 0,                                    \
           "Trace level for JVMTI RedefineClasses")                          \
                                                                             \
-  develop(bool, StressMethodComparator, false,                              \
-          "Run the MethodComparator on all loaded methods")                 \
-                                                                            \
   /* change to false by default sometime after Mustang */                   \
   product(bool, VerifyMergedCPBytecodes, true,                              \
           "Verify bytecodes after RedefineClasses constant pool merging")   \
@@ -1963,7 +1954,7 @@
           "collection")                                                     \
                                                                             \
   develop(uintx, PromotionFailureALotCount, 1000,                           \
-          "Number of promotion failures occurring at ParGCAllocBuffer "     \
+          "Number of promotion failures occurring at PLAB "     \
           "refill attempts (ParNew) or promotion attempts "                 \
           "(other young collectors)")                                       \
                                                                             \
@@ -2235,6 +2226,9 @@
           "When +ReduceInitialCardMarks, explicitly defer any that "        \
           "may arise from new_pre_store_barrier")                           \
                                                                             \
+  product(bool, UseCondCardMark, false,                                     \
+          "Check for already marked card before updating card table")       \
+                                                                            \
   diagnostic(bool, VerifyRememberedSets, false,                             \
           "Verify GC remembered sets")                                      \
                                                                             \
@@ -2293,9 +2287,6 @@
           "If non-zero, assert that GC threads yield within this "          \
           "number of milliseconds")                                         \
                                                                             \
-  notproduct(bool, TraceMarkSweep, false,                                   \
-          "Trace mark sweep")                                               \
-                                                                            \
   product(bool, PrintReferenceGC, false,                                    \
           "Print times spent handling reference objects during GC "         \
           "(enabled only when PrintGCDetails)")                             \
@@ -3447,10 +3438,6 @@
   product(bool, ThreadPriorityVerbose, false,                               \
           "Print priority changes")                                         \
                                                                             \
-  product(intx, DefaultThreadPriority, -1,                                  \
-          "The native priority at which threads run if not elsewhere "      \
-          "specified (-1 means no change)")                                 \
-                                                                            \
   product(intx, CompilerThreadPriority, -1,                                 \
           "The native priority at which compiler threads should run "       \
           "(-1 means no change)")                                           \
@@ -3912,7 +3899,14 @@
           "Enable event-based tracing")                                     \
                                                                             \
   product(bool, UseLockedTracing, false,                                    \
-          "Use locked-tracing when doing event-based tracing")
+          "Use locked-tracing when doing event-based tracing")              \
+                                                                            \
+  diagnostic(bool, UseUnalignedAccesses, false,                             \
+          "Use unaligned memory accesses in sun.misc.Unsafe")               \
+                                                                            \
+  product_pd(bool, PreserveFramePointer,                                    \
+             "Use the FP register for holding the frame pointer "           \
+             "and not as a general purpose register.")
 
 /*
  *  Macros for factoring of globals
--- a/hotspot/src/share/vm/runtime/mutexLocker.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/mutexLocker.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -169,7 +169,7 @@
 #define def(var, type, pri, vm_block, safepoint_check_allowed ) {      \
   var = new type(Mutex::pri, #var, vm_block, safepoint_check_allowed); \
   assert(_num_mutex < MAX_NUM_MUTEX, "increase MAX_NUM_MUTEX");        \
-  _mutex_array[_num_mutex] = var;                                      \
+  _mutex_array[_num_mutex++] = var;                                      \
 }
 
 void mutex_init() {
--- a/hotspot/src/share/vm/runtime/os.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/os.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -813,16 +813,16 @@
   st->cr();
 }
 
-void os::print_environment_variables(outputStream* st, const char** env_list,
-                                     char* buffer, int len) {
+void os::print_environment_variables(outputStream* st, const char** env_list) {
   if (env_list) {
     st->print_cr("Environment Variables:");
 
     for (int i = 0; env_list[i] != NULL; i++) {
-      if (getenv(env_list[i], buffer, len)) {
+      char *envvar = ::getenv(env_list[i]);
+      if (envvar != NULL) {
         st->print("%s", env_list[i]);
         st->print("=");
-        st->print_cr("%s", buffer);
+        st->print_cr("%s", envvar);
       }
     }
   }
--- a/hotspot/src/share/vm/runtime/os.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/os.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -164,8 +164,7 @@
   // Override me as needed
   static int    file_name_strcmp(const char* s1, const char* s2);
 
-  // get/unset environment variable
-  static bool getenv(const char* name, char* buffer, int len);
+  // unset environment variable
   static bool unsetenv(const char* name);
 
   static bool have_special_privileges();
@@ -493,6 +492,7 @@
 
   // Terminate with an error.  Default is to generate a core file on platforms
   // that support such things.  This calls shutdown() and then aborts.
+  static void abort(bool dump_core, void *siginfo, void *context);
   static void abort(bool dump_core = true);
 
   // Die immediately, no exit hook, no abort hook, no cleanup.
@@ -591,7 +591,7 @@
   static void pd_print_cpu_info(outputStream* st);
   static void print_memory_info(outputStream* st);
   static void print_dll_info(outputStream* st);
-  static void print_environment_variables(outputStream* st, const char** env_list, char* buffer, int len);
+  static void print_environment_variables(outputStream* st, const char** env_list);
   static void print_context(outputStream* st, void* context);
   static void print_register_info(outputStream* st, void* context);
   static void print_siginfo(outputStream* st, void* siginfo);
@@ -717,8 +717,13 @@
   // Structured OS Exception support
   static void os_exception_wrapper(java_call_t f, JavaValue* value, methodHandle* method, JavaCallArguments* args, Thread* thread);
 
-  // On Windows this will create an actual minidump, on Linux/Solaris it will simply check core dump limits
-  static void check_or_create_dump(void* exceptionRecord, void* contextRecord, char* buffer, size_t bufferSize);
+  // On Posix compatible OS it will simply check core dump limits while on Windows
+  // it will check if dump file can be created. Check or prepare a core dump to be
+  // taken at a later point in the same thread in os::abort(). Use the caller
+  // provided buffer as a scratch buffer. The status message which will be written
+  // into the error log either is file location or a short error message, depending
+  // on the checking result.
+  static void check_dump_limit(char* buffer, size_t bufferSize);
 
   // Get the default path to the core file
   // Returns the length of the string
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/src/share/vm/runtime/rtmLocking.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+#include "precompiled.hpp"
+#include "utilities/globalDefinitions.hpp"
+
+#if INCLUDE_RTM_OPT
+
+#include "memory/allocation.inline.hpp"
+#include "runtime/task.hpp"
+#include "runtime/rtmLocking.hpp"
+
+
+// One-shot PeriodicTask subclass for enabling RTM locking
+uintx RTMLockingCounters::_calculation_flag = 0;
+
+class RTMLockingCalculationTask : public PeriodicTask {
+ public:
+  RTMLockingCalculationTask(size_t interval_time) : PeriodicTask(interval_time){  }
+
+  virtual void task() {
+    RTMLockingCounters::_calculation_flag = 1;
+    // Reclaim our storage and disenroll ourself
+    delete this;
+  }
+};
+
+void RTMLockingCounters::init() {
+  if (UseRTMLocking && RTMLockingCalculationDelay > 0) {
+    RTMLockingCalculationTask* task = new RTMLockingCalculationTask(RTMLockingCalculationDelay);
+    task->enroll();
+  } else {
+    _calculation_flag = 1;
+  }
+}
+
+//------------------------------print_on-------------------------------
+void RTMLockingCounters::print_on(outputStream* st) {
+  tty->print_cr("# rtm locks total (estimated): " UINTX_FORMAT, _total_count * RTMTotalCountIncrRate);
+  tty->print_cr("# rtm lock aborts  : " UINTX_FORMAT, _abort_count);
+  for (int i = 0; i < ABORT_STATUS_LIMIT; i++) {
+    tty->print_cr("# rtm lock aborts %d: " UINTX_FORMAT, i, _abortX_count[i]);
+  }
+}
+
+#endif
--- a/hotspot/src/share/vm/runtime/sharedRuntime.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/sharedRuntime.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1179,7 +1179,7 @@
 #endif
 
   // JSR 292 key invariant:
-  // If the resolved method is a MethodHandle invoke target the call
+  // If the resolved method is a MethodHandle invoke target, the call
   // site must be a MethodHandle call site, because the lambda form might tail-call
   // leaving the stack in a state unknown to either caller or callee
   // TODO detune for now but we might need it again
@@ -1793,7 +1793,9 @@
 
 // Handles the uncommon case in locking, i.e., contention or an inflated lock.
 JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
-  if (!SafepointSynchronize::is_synchronizing()) {
+  // Disable ObjectSynchronizer::quick_enter() in default config
+  // until JDK-8077392 is resolved.
+  if ((SyncFlags & 256) != 0 && !SafepointSynchronize::is_synchronizing()) {
     // Only try quick_enter() if we're not trying to reach a safepoint
     // so that the calling thread reaches the safepoint more quickly.
     if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
@@ -1819,9 +1821,9 @@
 JRT_END
 
 // Handles the uncommon cases of monitor unlocking in compiled code
-JRT_LEAF(void, SharedRuntime::complete_monitor_unlocking_C(oopDesc* _obj, BasicLock* lock))
+JRT_LEAF(void, SharedRuntime::complete_monitor_unlocking_C(oopDesc* _obj, BasicLock* lock, JavaThread * THREAD))
    oop obj(_obj);
-  Thread* THREAD = JavaThread::current();
+  assert(JavaThread::current() == THREAD, "invariant");
   // I'm not convinced we need the code contained by MIGHT_HAVE_PENDING anymore
   // testing was unable to ever fire the assert that guarded it so I have removed it.
   assert(!HAS_PENDING_EXCEPTION, "Do we need code below anymore?");
--- a/hotspot/src/share/vm/runtime/sharedRuntime.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/sharedRuntime.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -472,7 +472,7 @@
 
   // Slow-path Locking and Unlocking
   static void complete_monitor_locking_C(oopDesc* obj, BasicLock* lock, JavaThread* thread);
-  static void complete_monitor_unlocking_C(oopDesc* obj, BasicLock* lock);
+  static void complete_monitor_unlocking_C(oopDesc* obj, BasicLock* lock, JavaThread* thread);
 
   // Resolving of calls
   static address resolve_static_call_C     (JavaThread *thread);
--- a/hotspot/src/share/vm/runtime/stubRoutines.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/stubRoutines.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -213,31 +213,35 @@
 
 // simple test for SafeFetch32
 static void test_safefetch32() {
-  int dummy = 17;
-  int* const p_invalid = (int*) get_segfault_address();
-  int* const p_valid = &dummy;
-  int result_invalid = SafeFetch32(p_invalid, 0xABC);
-  assert(result_invalid == 0xABC, "SafeFetch32 error");
-  int result_valid = SafeFetch32(p_valid, 0xABC);
-  assert(result_valid == 17, "SafeFetch32 error");
+  if (CanUseSafeFetch32()) {
+    int dummy = 17;
+    int* const p_invalid = (int*) get_segfault_address();
+    int* const p_valid = &dummy;
+    int result_invalid = SafeFetch32(p_invalid, 0xABC);
+    assert(result_invalid == 0xABC, "SafeFetch32 error");
+    int result_valid = SafeFetch32(p_valid, 0xABC);
+    assert(result_valid == 17, "SafeFetch32 error");
+  }
 }
 
 // simple test for SafeFetchN
 static void test_safefetchN() {
+  if (CanUseSafeFetchN()) {
 #ifdef _LP64
-  const intptr_t v1 = UCONST64(0xABCD00000000ABCD);
-  const intptr_t v2 = UCONST64(0xDEFD00000000DEFD);
+    const intptr_t v1 = UCONST64(0xABCD00000000ABCD);
+    const intptr_t v2 = UCONST64(0xDEFD00000000DEFD);
 #else
-  const intptr_t v1 = 0xABCDABCD;
-  const intptr_t v2 = 0xDEFDDEFD;
+    const intptr_t v1 = 0xABCDABCD;
+    const intptr_t v2 = 0xDEFDDEFD;
 #endif
-  intptr_t dummy = v1;
-  intptr_t* const p_invalid = (intptr_t*) get_segfault_address();
-  intptr_t* const p_valid = &dummy;
-  intptr_t result_invalid = SafeFetchN(p_invalid, v2);
-  assert(result_invalid == v2, "SafeFetchN error");
-  intptr_t result_valid = SafeFetchN(p_valid, v2);
-  assert(result_valid == v1, "SafeFetchN error");
+    intptr_t dummy = v1;
+    intptr_t* const p_invalid = (intptr_t*) get_segfault_address();
+    intptr_t* const p_valid = &dummy;
+    intptr_t result_invalid = SafeFetchN(p_invalid, v2);
+    assert(result_invalid == v2, "SafeFetchN error");
+    intptr_t result_valid = SafeFetchN(p_valid, v2);
+    assert(result_valid == v1, "SafeFetchN error");
+  }
 }
 #endif
 
--- a/hotspot/src/share/vm/runtime/stubRoutines.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/stubRoutines.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -450,7 +450,11 @@
 
 
 // returns true if SafeFetch32 and SafeFetchN can be used safely (stubroutines are already generated)
-inline bool CanUseSafeFetch32() { return StubRoutines::SafeFetch32_stub() ? true : false; }
-inline bool CanUseSafeFetchN()  { return StubRoutines::SafeFetchN_stub() ? true : false; }
+inline bool CanUseSafeFetch32() {
+  return StubRoutines::SafeFetch32_stub() ? true : false;
+}
 
+inline bool CanUseSafeFetchN() {
+  return StubRoutines::SafeFetchN_stub() ? true : false;
+}
 #endif // SHARE_VM_RUNTIME_STUBROUTINES_HPP
--- a/hotspot/src/share/vm/runtime/sweeper.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/sweeper.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -144,6 +144,7 @@
 int      NMethodSweeper::_seen                         = 0;    // Nof. nmethod we have currently processed in current pass of CodeCache
 
 volatile bool NMethodSweeper::_should_sweep            = true; // Indicates if we should invoke the sweeper
+volatile bool NMethodSweeper::_force_sweep             = false;// Indicates if we should force a sweep
 volatile int  NMethodSweeper::_bytes_changed           = 0;    // Counts the total nmethod size if the nmethod changed from:
                                                                //   1) alive       -> not_entrant
                                                                //   2) not_entrant -> zombie
@@ -276,6 +277,23 @@
 }
 
 /**
+  * Wakes up the sweeper thread and forces a sweep. Blocks until it finished.
+  */
+void NMethodSweeper::force_sweep() {
+  ThreadBlockInVM tbivm(JavaThread::current());
+  MutexLockerEx waiter(CodeCache_lock, Mutex::_no_safepoint_check_flag);
+  // Request forced sweep
+  _force_sweep = true;
+  while (_force_sweep) {
+    // Notify sweeper that we want to force a sweep and wait for completion.
+    // In case a sweep currently takes place we timeout and try again because
+    // we want to enforce a full sweep.
+    CodeCache_lock->notify();
+    CodeCache_lock->wait(Mutex::_no_safepoint_check_flag, 1000);
+  }
+}
+
+/**
  * Handle a safepoint request
  */
 void NMethodSweeper::handle_safepoint_request() {
@@ -335,6 +353,9 @@
     }
   }
 
+  // Remember if this was a forced sweep
+  bool forced = _force_sweep;
+
   // Force stack scanning if there is only 10% free space in the code cache.
   // We force stack scanning only non-profiled code heap gets full, since critical
   // allocation go to the non-profiled heap and we must be make sure that there is
@@ -344,7 +365,7 @@
     do_stack_scanning();
   }
 
-  if (_should_sweep) {
+  if (_should_sweep || forced) {
     init_sweeper_log();
     sweep_code_cache();
   }
@@ -356,12 +377,20 @@
   _should_sweep = false;
   // If there was enough state change, 'possibly_enable_sweeper()'
   // sets '_should_sweep' to true
-   possibly_enable_sweeper();
+  possibly_enable_sweeper();
   // Reset _bytes_changed only if there was enough state change. _bytes_changed
   // can further increase by calls to 'report_state_change'.
   if (_should_sweep) {
     _bytes_changed = 0;
   }
+
+  if (forced) {
+    // Notify requester that forced sweep finished
+    assert(_force_sweep, "Should be a forced sweep");
+    MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
+    _force_sweep = false;
+    CodeCache_lock->notify();
+  }
 }
 
 void NMethodSweeper::sweep_code_cache() {
--- a/hotspot/src/share/vm/runtime/sweeper.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/sweeper.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -54,7 +54,6 @@
 //     nmethod's space is freed.
 
 class NMethodSweeper : public AllStatic {
-  friend class WhiteBox;
  private:
   enum MethodStateChange {
     None,
@@ -71,6 +70,7 @@
 
   static volatile int  _sweep_started;            // Flag to control conc sweeper
   static volatile bool _should_sweep;             // Indicates if we should invoke the sweeper
+  static volatile bool _force_sweep;              // Indicates if we should force a sweep
   static volatile int _bytes_changed;             // Counts the total nmethod size if the nmethod changed from:
                                                   //   1) alive       -> not_entrant
                                                   //   2) not_entrant -> zombie
@@ -117,6 +117,7 @@
   static void mark_active_nmethods();      // Invoked at the end of each safepoint
   static void sweeper_loop();
   static void notify(int code_blob_type);  // Possibly start the sweeper thread.
+  static void force_sweep();
 
   static int hotness_counter_reset_val();
   static void report_state_change(nmethod* nm);
--- a/hotspot/src/share/vm/runtime/synchronizer.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/synchronizer.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -109,17 +109,24 @@
 }
 
 #define NINFLATIONLOCKS 256
-static volatile intptr_t InflationLocks[NINFLATIONLOCKS];
+static volatile intptr_t gInflationLocks[NINFLATIONLOCKS];
 
+// global list of blocks of monitors
 // gBlockList is really PaddedEnd<ObjectMonitor> *, but we don't
 // want to expose the PaddedEnd template more than necessary.
 ObjectMonitor * ObjectSynchronizer::gBlockList = NULL;
+// global monitor free list
 ObjectMonitor * volatile ObjectSynchronizer::gFreeList  = NULL;
+// global monitor in-use list, for moribund threads,
+// monitors they inflated need to be scanned for deflation
 ObjectMonitor * volatile ObjectSynchronizer::gOmInUseList  = NULL;
+// count of entries in gOmInUseList
 int ObjectSynchronizer::gOmInUseCount = 0;
-static volatile intptr_t ListLock = 0;      // protects global monitor free-list cache
-static volatile int MonitorFreeCount  = 0;  // # on gFreeList
-static volatile int MonitorPopulation = 0;  // # Extant -- in circulation
+
+static volatile intptr_t gListLock = 0;      // protects global monitor lists
+static volatile int gMonitorFreeCount  = 0;  // # on gFreeList
+static volatile int gMonitorPopulation = 0;  // # Extant -- in circulation
+
 #define CHAINMARKER (cast_to_oop<intptr_t>(-1))
 
 
@@ -528,7 +535,7 @@
         int YieldThenBlock = 0;
         assert(ix >= 0 && ix < NINFLATIONLOCKS, "invariant");
         assert((NINFLATIONLOCKS & (NINFLATIONLOCKS-1)) == 0, "invariant");
-        Thread::muxAcquire(InflationLocks + ix, "InflationLock");
+        Thread::muxAcquire(gInflationLocks + ix, "gInflationLock");
         while (obj->mark() == markOopDesc::INFLATING()) {
           // Beware: NakedYield() is advisory and has almost no effect on some platforms
           // so we periodically call Self->_ParkEvent->park(1).
@@ -539,7 +546,7 @@
             os::naked_yield();
           }
         }
-        Thread::muxRelease(InflationLocks + ix);
+        Thread::muxRelease(gInflationLocks + ix);
         TEVENT(Inflate: INFLATING - yield/park);
       }
     } else {
@@ -882,7 +889,7 @@
 // STW-time -- disassociates idle monitors from objects.  Such
 // scavenged monitors are returned to the gFreeList.
 //
-// The global list is protected by ListLock.  All the critical sections
+// The global list is protected by gListLock.  All the critical sections
 // are short and operate in constant-time.
 //
 // ObjectMonitors reside in type-stable memory (TSM) and are immortal.
@@ -937,17 +944,17 @@
 
 void ObjectSynchronizer::verifyInUse(Thread *Self) {
   ObjectMonitor* mid;
-  int inusetally = 0;
+  int in_use_tally = 0;
   for (mid = Self->omInUseList; mid != NULL; mid = mid->FreeNext) {
-    inusetally++;
+    in_use_tally++;
   }
-  assert(inusetally == Self->omInUseCount, "inuse count off");
+  assert(in_use_tally == Self->omInUseCount, "in-use count off");
 
-  int freetally = 0;
+  int free_tally = 0;
   for (mid = Self->omFreeList; mid != NULL; mid = mid->FreeNext) {
-    freetally++;
+    free_tally++;
   }
-  assert(freetally == Self->omFreeCount, "free count off");
+  assert(free_tally == Self->omFreeCount, "free count off");
 }
 
 ObjectMonitor * NOINLINE ObjectSynchronizer::omAlloc(Thread * Self) {
@@ -964,7 +971,7 @@
     // Threads will attempt to allocate first from their local list, then
     // from the global list, and only after those attempts fail will the thread
     // attempt to instantiate new monitors.   Thread-local free lists take
-    // heat off the ListLock and improve allocation latency, as well as reducing
+    // heat off the gListLock and improve allocation latency, as well as reducing
     // coherency traffic on the shared global list.
     m = Self->omFreeList;
     if (m != NULL) {
@@ -994,9 +1001,9 @@
       // Reprovision the thread's omFreeList.
       // Use bulk transfers to reduce the allocation rate and heat
       // on various locks.
-      Thread::muxAcquire(&ListLock, "omAlloc");
+      Thread::muxAcquire(&gListLock, "omAlloc");
       for (int i = Self->omFreeProvision; --i >= 0 && gFreeList != NULL;) {
-        MonitorFreeCount--;
+        gMonitorFreeCount--;
         ObjectMonitor * take = gFreeList;
         gFreeList = take->FreeNext;
         guarantee(take->object() == NULL, "invariant");
@@ -1004,13 +1011,13 @@
         take->Recycle();
         omRelease(Self, take, false);
       }
-      Thread::muxRelease(&ListLock);
+      Thread::muxRelease(&gListLock);
       Self->omFreeProvision += 1 + (Self->omFreeProvision/2);
       if (Self->omFreeProvision > MAXPRIVATE) Self->omFreeProvision = MAXPRIVATE;
       TEVENT(omFirst - reprovision);
 
       const int mx = MonitorBound;
-      if (mx > 0 && (MonitorPopulation-MonitorFreeCount) > mx) {
+      if (mx > 0 && (gMonitorPopulation-gMonitorFreeCount) > mx) {
         // We can't safely induce a STW safepoint from omAlloc() as our thread
         // state may not be appropriate for such activities and callers may hold
         // naked oops, so instead we defer the action.
@@ -1068,11 +1075,11 @@
     // block in hand.  This avoids some lock traffic and redundant
     // list activity.
 
-    // Acquire the ListLock to manipulate BlockList and FreeList.
+    // Acquire the gListLock to manipulate gBlockList and gFreeList.
     // An Oyama-Taura-Yonezawa scheme might be more efficient.
-    Thread::muxAcquire(&ListLock, "omAlloc [2]");
-    MonitorPopulation += _BLOCKSIZE-1;
-    MonitorFreeCount += _BLOCKSIZE-1;
+    Thread::muxAcquire(&gListLock, "omAlloc [2]");
+    gMonitorPopulation += _BLOCKSIZE-1;
+    gMonitorFreeCount += _BLOCKSIZE-1;
 
     // Add the new block to the list of extant blocks (gBlockList).
     // The very first objectMonitor in a block is reserved and dedicated.
@@ -1083,7 +1090,7 @@
     // Add the new string of objectMonitors to the global free list
     temp[_BLOCKSIZE - 1].FreeNext = gFreeList;
     gFreeList = temp + 1;
-    Thread::muxRelease(&ListLock);
+    Thread::muxRelease(&gListLock);
     TEVENT(Allocate block of monitors);
   }
 }
@@ -1094,32 +1101,36 @@
 // omRelease is to return a monitor to the free list after a CAS
 // attempt failed.  This doesn't allow unbounded #s of monitors to
 // accumulate on a thread's free list.
+//
+// Key constraint: all ObjectMonitors on a thread's free list and the global
+// free list must have their object field set to null. This prevents the
+// scavenger -- deflate_idle_monitors -- from reclaiming them.
 
 void ObjectSynchronizer::omRelease(Thread * Self, ObjectMonitor * m,
                                    bool fromPerThreadAlloc) {
   guarantee(m->object() == NULL, "invariant");
-
+  guarantee(((m->is_busy()|m->_recursions) == 0), "freeing in-use monitor");
   // Remove from omInUseList
   if (MonitorInUseLists && fromPerThreadAlloc) {
-    ObjectMonitor* curmidinuse = NULL;
-    for (ObjectMonitor* mid = Self->omInUseList; mid != NULL;) {
+    ObjectMonitor* cur_mid_in_use = NULL;
+    bool extracted = false;
+    for (ObjectMonitor* mid = Self->omInUseList; mid != NULL; cur_mid_in_use = mid, mid = mid->FreeNext) {
       if (m == mid) {
-        // extract from per-thread in-use-list
+        // extract from per-thread in-use list
         if (mid == Self->omInUseList) {
           Self->omInUseList = mid->FreeNext;
-        } else if (curmidinuse != NULL) {
-          curmidinuse->FreeNext = mid->FreeNext; // maintain the current thread inuselist
+        } else if (cur_mid_in_use != NULL) {
+          cur_mid_in_use->FreeNext = mid->FreeNext; // maintain the current thread in-use list
         }
+        extracted = true;
         Self->omInUseCount--;
         if (ObjectMonitor::Knob_VerifyInUse) {
           verifyInUse(Self);
         }
         break;
-      } else {
-        curmidinuse = mid;
-        mid = mid->FreeNext;
       }
     }
+    assert(extracted, "Should have extracted from in-use list");
   }
 
   // FreeNext is used for both omInUseList and omFreeList, so clear old before setting new
@@ -1149,52 +1160,60 @@
 // operator.
 
 void ObjectSynchronizer::omFlush(Thread * Self) {
-  ObjectMonitor * List = Self->omFreeList;  // Null-terminated SLL
+  ObjectMonitor * list = Self->omFreeList;  // Null-terminated SLL
   Self->omFreeList = NULL;
-  ObjectMonitor * Tail = NULL;
-  int Tally = 0;
-  if (List != NULL) {
+  ObjectMonitor * tail = NULL;
+  int tally = 0;
+  if (list != NULL) {
     ObjectMonitor * s;
-    for (s = List; s != NULL; s = s->FreeNext) {
-      Tally++;
-      Tail = s;
+    // The thread is going away, the per-thread free monitors
+    // are freed via set_owner(NULL)
+    // Link them to tail, which will be linked into the global free list
+    // gFreeList below, under the gListLock
+    for (s = list; s != NULL; s = s->FreeNext) {
+      tally++;
+      tail = s;
       guarantee(s->object() == NULL, "invariant");
       guarantee(!s->is_busy(), "invariant");
       s->set_owner(NULL);   // redundant but good hygiene
       TEVENT(omFlush - Move one);
     }
-    guarantee(Tail != NULL && List != NULL, "invariant");
+    guarantee(tail != NULL && list != NULL, "invariant");
   }
 
-  ObjectMonitor * InUseList = Self->omInUseList;
-  ObjectMonitor * InUseTail = NULL;
-  int InUseTally = 0;
-  if (InUseList != NULL) {
+  ObjectMonitor * inUseList = Self->omInUseList;
+  ObjectMonitor * inUseTail = NULL;
+  int inUseTally = 0;
+  if (inUseList != NULL) {
     Self->omInUseList = NULL;
-    ObjectMonitor *curom;
-    for (curom = InUseList; curom != NULL; curom = curom->FreeNext) {
-      InUseTail = curom;
-      InUseTally++;
+    ObjectMonitor *cur_om;
+    // The thread is going away, however the omInUseList inflated
+    // monitors may still be in-use by other threads.
+    // Link them to inUseTail, which will be linked into the global in-use list
+    // gOmInUseList below, under the gListLock
+    for (cur_om = inUseList; cur_om != NULL; cur_om = cur_om->FreeNext) {
+      inUseTail = cur_om;
+      inUseTally++;
     }
-    assert(Self->omInUseCount == InUseTally, "inuse count off");
+    assert(Self->omInUseCount == inUseTally, "in-use count off");
     Self->omInUseCount = 0;
-    guarantee(InUseTail != NULL && InUseList != NULL, "invariant");
+    guarantee(inUseTail != NULL && inUseList != NULL, "invariant");
   }
 
-  Thread::muxAcquire(&ListLock, "omFlush");
-  if (Tail != NULL) {
-    Tail->FreeNext = gFreeList;
-    gFreeList = List;
-    MonitorFreeCount += Tally;
+  Thread::muxAcquire(&gListLock, "omFlush");
+  if (tail != NULL) {
+    tail->FreeNext = gFreeList;
+    gFreeList = list;
+    gMonitorFreeCount += tally;
   }
 
-  if (InUseTail != NULL) {
-    InUseTail->FreeNext = gOmInUseList;
-    gOmInUseList = InUseList;
-    gOmInUseCount += InUseTally;
+  if (inUseTail != NULL) {
+    inUseTail->FreeNext = gOmInUseList;
+    gOmInUseList = inUseList;
+    gOmInUseCount += inUseTally;
   }
 
-  Thread::muxRelease(&ListLock);
+  Thread::muxRelease(&gListLock);
   TEVENT(omFlush);
 }
 
@@ -1411,14 +1430,14 @@
 //
 // We have added a flag, MonitorInUseLists, which creates a list
 // of active monitors for each thread. deflate_idle_monitors()
-// only scans the per-thread inuse lists. omAlloc() puts all
+// only scans the per-thread in-use lists. omAlloc() puts all
 // assigned monitors on the per-thread list. deflate_idle_monitors()
 // returns the non-busy monitors to the global free list.
 // When a thread dies, omFlush() adds the list of active monitors for
 // that thread to a global gOmInUseList acquiring the
 // global list lock. deflate_idle_monitors() acquires the global
 // list lock to scan for non-busy monitors to the global free list.
-// An alternative could have used a single global inuse list. The
+// An alternative could have used a single global in-use list. The
 // downside would have been the additional cost of acquiring the global list lock
 // for every omAlloc().
 //
@@ -1432,8 +1451,8 @@
   MaximumRecheckInterval  = 1000
 };
 
-// Deflate a single monitor if not in use
-// Return true if deflated, false if in use
+// Deflate a single monitor if not in-use
+// Return true if deflated, false if in-use
 bool ObjectSynchronizer::deflate_monitor(ObjectMonitor* mid, oop obj,
                                          ObjectMonitor** freeHeadp,
                                          ObjectMonitor** freeTailp) {
@@ -1465,11 +1484,11 @@
 
     assert(mid->object() == NULL, "invariant");
 
-    // Move the object to the working free list defined by FreeHead,FreeTail.
+    // Move the object to the working free list defined by freeHeadp, freeTailp
     if (*freeHeadp == NULL) *freeHeadp = mid;
     if (*freeTailp != NULL) {
       ObjectMonitor * prevtail = *freeTailp;
-      assert(prevtail->FreeNext == NULL, "cleaned up deflated?"); // TODO KK
+      assert(prevtail->FreeNext == NULL, "cleaned up deflated?");
       prevtail->FreeNext = mid;
     }
     *freeTailp = mid;
@@ -1478,38 +1497,37 @@
   return deflated;
 }
 
-// Caller acquires ListLock
-int ObjectSynchronizer::walk_monitor_list(ObjectMonitor** listheadp,
-                                          ObjectMonitor** freeHeadp,
-                                          ObjectMonitor** freeTailp) {
+// Walk a given monitor list, and deflate idle monitors
+// The given list could be a per-thread list or a global list
+// Caller acquires gListLock
+int ObjectSynchronizer::deflate_monitor_list(ObjectMonitor** listHeadp,
+                                             ObjectMonitor** freeHeadp,
+                                             ObjectMonitor** freeTailp) {
   ObjectMonitor* mid;
   ObjectMonitor* next;
-  ObjectMonitor* curmidinuse = NULL;
-  int deflatedcount = 0;
+  ObjectMonitor* cur_mid_in_use = NULL;
+  int deflated_count = 0;
 
-  for (mid = *listheadp; mid != NULL;) {
+  for (mid = *listHeadp; mid != NULL;) {
     oop obj = (oop) mid->object();
-    bool deflated = false;
-    if (obj != NULL) {
-      deflated = deflate_monitor(mid, obj, freeHeadp, freeTailp);
-    }
-    if (deflated) {
-      // extract from per-thread in-use-list
-      if (mid == *listheadp) {
-        *listheadp = mid->FreeNext;
-      } else if (curmidinuse != NULL) {
-        curmidinuse->FreeNext = mid->FreeNext; // maintain the current thread inuselist
+    if (obj != NULL && deflate_monitor(mid, obj, freeHeadp, freeTailp)) {
+      // if deflate_monitor succeeded,
+      // extract from per-thread in-use list
+      if (mid == *listHeadp) {
+        *listHeadp = mid->FreeNext;
+      } else if (cur_mid_in_use != NULL) {
+        cur_mid_in_use->FreeNext = mid->FreeNext; // maintain the current thread in-use list
       }
       next = mid->FreeNext;
-      mid->FreeNext = NULL;  // This mid is current tail in the FreeHead list
+      mid->FreeNext = NULL;  // This mid is current tail in the freeHeadp list
       mid = next;
-      deflatedcount++;
+      deflated_count++;
     } else {
-      curmidinuse = mid;
+      cur_mid_in_use = mid;
       mid = mid->FreeNext;
     }
   }
-  return deflatedcount;
+  return deflated_count;
 }
 
 void ObjectSynchronizer::deflate_idle_monitors() {
@@ -1519,34 +1537,34 @@
   int nScavenged = 0;          // reclaimed
   bool deflated = false;
 
-  ObjectMonitor * FreeHead = NULL;  // Local SLL of scavenged monitors
-  ObjectMonitor * FreeTail = NULL;
+  ObjectMonitor * freeHeadp = NULL;  // Local SLL of scavenged monitors
+  ObjectMonitor * freeTailp = NULL;
 
   TEVENT(deflate_idle_monitors);
   // Prevent omFlush from changing mids in Thread dtor's during deflation
   // And in case the vm thread is acquiring a lock during a safepoint
   // See e.g. 6320749
-  Thread::muxAcquire(&ListLock, "scavenge - return");
+  Thread::muxAcquire(&gListLock, "scavenge - return");
 
   if (MonitorInUseLists) {
     int inUse = 0;
     for (JavaThread* cur = Threads::first(); cur != NULL; cur = cur->next()) {
       nInCirculation+= cur->omInUseCount;
-      int deflatedcount = walk_monitor_list(cur->omInUseList_addr(), &FreeHead, &FreeTail);
-      cur->omInUseCount-= deflatedcount;
+      int deflated_count = deflate_monitor_list(cur->omInUseList_addr(), &freeHeadp, &freeTailp);
+      cur->omInUseCount-= deflated_count;
       if (ObjectMonitor::Knob_VerifyInUse) {
         verifyInUse(cur);
       }
-      nScavenged += deflatedcount;
+      nScavenged += deflated_count;
       nInuse += cur->omInUseCount;
     }
 
     // For moribund threads, scan gOmInUseList
     if (gOmInUseList) {
       nInCirculation += gOmInUseCount;
-      int deflatedcount = walk_monitor_list((ObjectMonitor **)&gOmInUseList, &FreeHead, &FreeTail);
-      gOmInUseCount-= deflatedcount;
-      nScavenged += deflatedcount;
+      int deflated_count = deflate_monitor_list((ObjectMonitor **)&gOmInUseList, &freeHeadp, &freeTailp);
+      gOmInUseCount-= deflated_count;
+      nScavenged += deflated_count;
       nInuse += gOmInUseCount;
     }
 
@@ -1568,7 +1586,7 @@
         guarantee(!mid->is_busy(), "invariant");
         continue;
       }
-      deflated = deflate_monitor(mid, obj, &FreeHead, &FreeTail);
+      deflated = deflate_monitor(mid, obj, &freeHeadp, &freeTailp);
 
       if (deflated) {
         mid->FreeNext = NULL;
@@ -1579,28 +1597,28 @@
     }
   }
 
-  MonitorFreeCount += nScavenged;
+  gMonitorFreeCount += nScavenged;
 
-  // Consider: audit gFreeList to ensure that MonitorFreeCount and list agree.
+  // Consider: audit gFreeList to ensure that gMonitorFreeCount and list agree.
 
   if (ObjectMonitor::Knob_Verbose) {
     ::printf("Deflate: InCirc=%d InUse=%d Scavenged=%d ForceMonitorScavenge=%d : pop=%d free=%d\n",
              nInCirculation, nInuse, nScavenged, ForceMonitorScavenge,
-             MonitorPopulation, MonitorFreeCount);
+             gMonitorPopulation, gMonitorFreeCount);
     ::fflush(stdout);
   }
 
   ForceMonitorScavenge = 0;    // Reset
 
   // Move the scavenged monitors back to the global free list.
-  if (FreeHead != NULL) {
-    guarantee(FreeTail != NULL && nScavenged > 0, "invariant");
-    assert(FreeTail->FreeNext == NULL, "invariant");
+  if (freeHeadp != NULL) {
+    guarantee(freeTailp != NULL && nScavenged > 0, "invariant");
+    assert(freeTailp->FreeNext == NULL, "invariant");
     // constant-time list splice - prepend scavenged segment to gFreeList
-    FreeTail->FreeNext = gFreeList;
-    gFreeList = FreeHead;
+    freeTailp->FreeNext = gFreeList;
+    gFreeList = freeHeadp;
   }
-  Thread::muxRelease(&ListLock);
+  Thread::muxRelease(&gListLock);
 
   if (ObjectMonitor::_sync_Deflations != NULL) ObjectMonitor::_sync_Deflations->inc(nScavenged);
   if (ObjectMonitor::_sync_MonExtant  != NULL) ObjectMonitor::_sync_MonExtant ->set_value(nInCirculation);
@@ -1648,9 +1666,9 @@
   assert(THREAD == JavaThread::current(), "must be current Java thread");
   No_Safepoint_Verifier nsv;
   ReleaseJavaMonitorsClosure rjmc(THREAD);
-  Thread::muxAcquire(&ListLock, "release_monitors_owned_by_thread");
+  Thread::muxAcquire(&gListLock, "release_monitors_owned_by_thread");
   ObjectSynchronizer::monitors_iterate(&rjmc);
-  Thread::muxRelease(&ListLock);
+  Thread::muxRelease(&gListLock);
   THREAD->clear_pending_exception();
 }
 
--- a/hotspot/src/share/vm/runtime/synchronizer.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/synchronizer.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -116,9 +116,10 @@
   // Basically we deflate all monitors that are not busy.
   // An adaptive profile-based deflation policy could be used if needed
   static void deflate_idle_monitors();
-  static int walk_monitor_list(ObjectMonitor** listheadp,
-                               ObjectMonitor** freeHeadp,
-                               ObjectMonitor** freeTailp);
+  // For a given monitor list: global or per-thread, deflate idle monitors
+  static int deflate_monitor_list(ObjectMonitor** listheadp,
+                                  ObjectMonitor** freeHeadp,
+                                  ObjectMonitor** freeTailp);
   static bool deflate_monitor(ObjectMonitor* mid, oop obj,
                               ObjectMonitor** freeHeadp,
                               ObjectMonitor** freeTailp);
@@ -135,16 +136,17 @@
 
  private:
   enum { _BLOCKSIZE = 128 };
+  // global list of blocks of monitors
   // gBlockList is really PaddedEnd<ObjectMonitor> *, but we don't
   // want to expose the PaddedEnd template more than necessary.
-  static ObjectMonitor* gBlockList;
+  static ObjectMonitor * gBlockList;
+  // global monitor free list
   static ObjectMonitor * volatile gFreeList;
-  // global monitor in use list, for moribund threads,
+  // global monitor in-use list, for moribund threads,
   // monitors they inflated need to be scanned for deflation
   static ObjectMonitor * volatile gOmInUseList;
   // count of entries in gOmInUseList
   static int gOmInUseCount;
-
 };
 
 // ObjectLocker enforced balanced locking and can never thrown an
--- a/hotspot/src/share/vm/runtime/thread.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/thread.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -272,6 +272,11 @@
 #endif // ASSERT
 }
 
+// Non-inlined version to be used where thread.inline.hpp shouldn't be included.
+Thread* Thread::current_noinline() {
+  return Thread::current();
+}
+
 void Thread::initialize_thread_local_storage() {
   // Note: Make sure this method only calls
   // non-blocking operations. Otherwise, it might not work
@@ -754,13 +759,9 @@
       return true;
     } else {
       guarantee(res == strong_roots_parity, "Or else what?");
-      assert(SharedHeap::heap()->workers()->active_workers() > 0,
-             "Should only fail when parallel.");
       return false;
     }
   }
-  assert(SharedHeap::heap()->workers()->active_workers() > 0,
-         "Should only fail when parallel.");
   return false;
 }
 
@@ -4056,7 +4057,7 @@
          "Not in range.");
 }
 
-#ifndef PRODUCT
+#ifdef ASSERT
 void Threads::assert_all_threads_claimed() {
   ALL_JAVA_THREADS(p) {
     const int thread_parity = p->oops_do_parity();
@@ -4064,22 +4065,9 @@
         err_msg("Thread " PTR_FORMAT " has incorrect parity %d != %d", p2i(p), thread_parity, _thread_claim_parity));
   }
 }
-#endif // PRODUCT
-
-void Threads::possibly_parallel_oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
-  // Introduce a mechanism allowing parallel threads to claim threads as
-  // root groups.  Overhead should be small enough to use all the time,
-  // even in sequential code.
-  SharedHeap* sh = SharedHeap::heap();
-  // Cannot yet substitute active_workers for n_par_threads
-  // because of G1CollectedHeap::verify() use of
-  // SharedHeap::process_roots().  n_par_threads == 0 will
-  // turn off parallelism in process_roots while active_workers
-  // is being used for parallelism elsewhere.
-  bool is_par = sh->n_par_threads() > 0;
-  assert(!is_par ||
-         (SharedHeap::heap()->n_par_threads() ==
-         SharedHeap::heap()->workers()->active_workers()), "Mismatch");
+#endif // ASSERT
+
+void Threads::possibly_parallel_oops_do(bool is_par, OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
   int cp = Threads::thread_claim_parity();
   ALL_JAVA_THREADS(p) {
     if (p->claim_oops_do(is_par, cp)) {
--- a/hotspot/src/share/vm/runtime/thread.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/thread.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -324,6 +324,8 @@
 
   // Returns the current thread
   static inline Thread* current();
+  // ... without having to include thread.inline.hpp.
+  static Thread* current_noinline();
 
   // Common thread operations
   static void set_priority(Thread* thread, ThreadPriority priority);
@@ -1886,15 +1888,28 @@
   // Does not include JNI_VERSION_1_1
   static jboolean is_supported_jni_version(jint version);
 
+  // The "thread claim parity" provides a way for threads to be claimed
+  // by parallel worker tasks.
+  //
+  // Each thread contains a a "parity" field. A task will claim the
+  // thread only if its parity field is the same as the global parity,
+  // which is updated by calling change_thread_claim_parity().
+  //
+  // For this to work change_thread_claim_parity() needs to be called
+  // exactly once in sequential code before starting parallel tasks
+  // that should claim threads.
+  //
+  // New threads get their parity set to 0 and change_thread_claim_parity()
+  // never set the global parity to 0.
   static int thread_claim_parity() { return _thread_claim_parity; }
   static void change_thread_claim_parity();
+  static void assert_all_threads_claimed() NOT_DEBUG_RETURN;
 
-  static void assert_all_threads_claimed() PRODUCT_RETURN;
   // Apply "f->do_oop" to all root oops in all threads.
   // This version may only be called by sequential code.
   static void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
   // This version may be called by sequential or parallel code.
-  static void possibly_parallel_oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+  static void possibly_parallel_oops_do(bool is_par, OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
   // This creates a list of GCTasks, one per thread.
   static void create_thread_roots_tasks(GCTaskQueue* q);
   // This creates a list of GCTasks, one per thread, for marking objects.
--- a/hotspot/src/share/vm/runtime/vframe.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/vframe.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -389,12 +389,12 @@
       decode_offset < 0 ||
       decode_offset >= nm()->scopes_data_size()) {
     // 6379830 AsyncGetCallTrace sometimes feeds us wild frames.
-    // If we attempt to read nmethod::scopes_data at serialized_null (== 0),
-    // or if we read some at other crazy offset,
-    // we will decode garbage and make wild references into the heap,
-    // leading to crashes in product mode.
-    // (This isn't airtight, of course, since there are internal
-    // offsets which are also crazy.)
+    // If we read nmethod::scopes_data at serialized_null (== 0)
+    // or if read some at other invalid offset, invalid values will be decoded.
+    // Based on these values, invalid heap locations could be referenced
+    // that could lead to crashes in product mode.
+    // Therefore, do not use the decode offset if invalid, but fill the frame
+    // as it were a native compiled frame (no Java-level assumptions).
 #ifdef ASSERT
     if (WizardMode) {
       tty->print_cr("Error in fill_from_frame: pc_desc for "
@@ -514,9 +514,15 @@
   address   bcp    = _frame.interpreter_frame_bcp();
   int       bci    = method->validate_bci_from_bcp(bcp);
   // 6379830 AsyncGetCallTrace sometimes feeds us wild frames.
+  // AsyncGetCallTrace interrupts the VM asynchronously. As a result
+  // it is possible to access an interpreter frame for which
+  // no Java-level information is yet available (e.g., becasue
+  // the frame was being created when the VM interrupted it).
+  // In this scenario, pretend that the interpreter is at the point
+  // of entering the method.
   if (bci < 0) {
     found_bad_method_frame();
-    bci = 0;  // pretend it's on the point of entering
+    bci = 0;
   }
   _mode   = interpreted_mode;
   _method = method;
--- a/hotspot/src/share/vm/runtime/virtualspace.cpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1372 +0,0 @@
-/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#include "precompiled.hpp"
-#include "oops/markOop.hpp"
-#include "oops/oop.inline.hpp"
-#include "runtime/virtualspace.hpp"
-#include "services/memTracker.hpp"
-
-PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
-
-// ReservedSpace
-
-// Dummy constructor
-ReservedSpace::ReservedSpace() : _base(NULL), _size(0), _noaccess_prefix(0),
-    _alignment(0), _special(false), _executable(false) {
-}
-
-ReservedSpace::ReservedSpace(size_t size) {
-  // Want to use large pages where possible and pad with small pages.
-  size_t page_size = os::page_size_for_region_unaligned(size, 1);
-  bool large_pages = page_size != (size_t)os::vm_page_size();
-  // Don't force the alignment to be large page aligned,
-  // since that will waste memory.
-  size_t alignment = os::vm_allocation_granularity();
-  initialize(size, alignment, large_pages, NULL, false);
-}
-
-ReservedSpace::ReservedSpace(size_t size, size_t alignment,
-                             bool large,
-                             char* requested_address) {
-  initialize(size, alignment, large, requested_address, false);
-}
-
-ReservedSpace::ReservedSpace(size_t size, size_t alignment,
-                             bool large,
-                             bool executable) {
-  initialize(size, alignment, large, NULL, executable);
-}
-
-// Helper method.
-static bool failed_to_reserve_as_requested(char* base, char* requested_address,
-                                           const size_t size, bool special)
-{
-  if (base == requested_address || requested_address == NULL)
-    return false; // did not fail
-
-  if (base != NULL) {
-    // Different reserve address may be acceptable in other cases
-    // but for compressed oops heap should be at requested address.
-    assert(UseCompressedOops, "currently requested address used only for compressed oops");
-    if (PrintCompressedOopsMode) {
-      tty->cr();
-      tty->print_cr("Reserved memory not at requested address: " PTR_FORMAT " vs " PTR_FORMAT, base, requested_address);
-    }
-    // OS ignored requested address. Try different address.
-    if (special) {
-      if (!os::release_memory_special(base, size)) {
-        fatal("os::release_memory_special failed");
-      }
-    } else {
-      if (!os::release_memory(base, size)) {
-        fatal("os::release_memory failed");
-      }
-    }
-  }
-  return true;
-}
-
-void ReservedSpace::initialize(size_t size, size_t alignment, bool large,
-                               char* requested_address,
-                               bool executable) {
-  const size_t granularity = os::vm_allocation_granularity();
-  assert((size & (granularity - 1)) == 0,
-         "size not aligned to os::vm_allocation_granularity()");
-  assert((alignment & (granularity - 1)) == 0,
-         "alignment not aligned to os::vm_allocation_granularity()");
-  assert(alignment == 0 || is_power_of_2((intptr_t)alignment),
-         "not a power of 2");
-
-  alignment = MAX2(alignment, (size_t)os::vm_page_size());
-
-  _base = NULL;
-  _size = 0;
-  _special = false;
-  _executable = executable;
-  _alignment = 0;
-  _noaccess_prefix = 0;
-  if (size == 0) {
-    return;
-  }
-
-  // If OS doesn't support demand paging for large page memory, we need
-  // to use reserve_memory_special() to reserve and pin the entire region.
-  bool special = large && !os::can_commit_large_page_memory();
-  char* base = NULL;
-
-  if (special) {
-
-    base = os::reserve_memory_special(size, alignment, requested_address, executable);
-
-    if (base != NULL) {
-      if (failed_to_reserve_as_requested(base, requested_address, size, true)) {
-        // OS ignored requested address. Try different address.
-        return;
-      }
-      // Check alignment constraints.
-      assert((uintptr_t) base % alignment == 0,
-             err_msg("Large pages returned a non-aligned address, base: "
-                 PTR_FORMAT " alignment: " PTR_FORMAT,
-                 base, (void*)(uintptr_t)alignment));
-      _special = true;
-    } else {
-      // failed; try to reserve regular memory below
-      if (UseLargePages && (!FLAG_IS_DEFAULT(UseLargePages) ||
-                            !FLAG_IS_DEFAULT(LargePageSizeInBytes))) {
-        if (PrintCompressedOopsMode) {
-          tty->cr();
-          tty->print_cr("Reserve regular memory without large pages.");
-        }
-      }
-    }
-  }
-
-  if (base == NULL) {
-    // Optimistically assume that the OSes returns an aligned base pointer.
-    // When reserving a large address range, most OSes seem to align to at
-    // least 64K.
-
-    // If the memory was requested at a particular address, use
-    // os::attempt_reserve_memory_at() to avoid over mapping something
-    // important.  If available space is not detected, return NULL.
-
-    if (requested_address != 0) {
-      base = os::attempt_reserve_memory_at(size, requested_address);
-      if (failed_to_reserve_as_requested(base, requested_address, size, false)) {
-        // OS ignored requested address. Try different address.
-        base = NULL;
-      }
-    } else {
-      base = os::reserve_memory(size, NULL, alignment);
-    }
-
-    if (base == NULL) return;
-
-    // Check alignment constraints
-    if ((((size_t)base) & (alignment - 1)) != 0) {
-      // Base not aligned, retry
-      if (!os::release_memory(base, size)) fatal("os::release_memory failed");
-      // Make sure that size is aligned
-      size = align_size_up(size, alignment);
-      base = os::reserve_memory_aligned(size, alignment);
-
-      if (requested_address != 0 &&
-          failed_to_reserve_as_requested(base, requested_address, size, false)) {
-        // As a result of the alignment constraints, the allocated base differs
-        // from the requested address. Return back to the caller who can
-        // take remedial action (like try again without a requested address).
-        assert(_base == NULL, "should be");
-        return;
-      }
-    }
-  }
-  // Done
-  _base = base;
-  _size = size;
-  _alignment = alignment;
-}
-
-
-ReservedSpace::ReservedSpace(char* base, size_t size, size_t alignment,
-                             bool special, bool executable) {
-  assert((size % os::vm_allocation_granularity()) == 0,
-         "size not allocation aligned");
-  _base = base;
-  _size = size;
-  _alignment = alignment;
-  _noaccess_prefix = 0;
-  _special = special;
-  _executable = executable;
-}
-
-
-ReservedSpace ReservedSpace::first_part(size_t partition_size, size_t alignment,
-                                        bool split, bool realloc) {
-  assert(partition_size <= size(), "partition failed");
-  if (split) {
-    os::split_reserved_memory(base(), size(), partition_size, realloc);
-  }
-  ReservedSpace result(base(), partition_size, alignment, special(),
-                       executable());
-  return result;
-}
-
-
-ReservedSpace
-ReservedSpace::last_part(size_t partition_size, size_t alignment) {
-  assert(partition_size <= size(), "partition failed");
-  ReservedSpace result(base() + partition_size, size() - partition_size,
-                       alignment, special(), executable());
-  return result;
-}
-
-
-size_t ReservedSpace::page_align_size_up(size_t size) {
-  return align_size_up(size, os::vm_page_size());
-}
-
-
-size_t ReservedSpace::page_align_size_down(size_t size) {
-  return align_size_down(size, os::vm_page_size());
-}
-
-
-size_t ReservedSpace::allocation_align_size_up(size_t size) {
-  return align_size_up(size, os::vm_allocation_granularity());
-}
-
-
-size_t ReservedSpace::allocation_align_size_down(size_t size) {
-  return align_size_down(size, os::vm_allocation_granularity());
-}
-
-
-void ReservedSpace::release() {
-  if (is_reserved()) {
-    char *real_base = _base - _noaccess_prefix;
-    const size_t real_size = _size + _noaccess_prefix;
-    if (special()) {
-      os::release_memory_special(real_base, real_size);
-    } else{
-      os::release_memory(real_base, real_size);
-    }
-    _base = NULL;
-    _size = 0;
-    _noaccess_prefix = 0;
-    _alignment = 0;
-    _special = false;
-    _executable = false;
-  }
-}
-
-static size_t noaccess_prefix_size(size_t alignment) {
-  return lcm(os::vm_page_size(), alignment);
-}
-
-void ReservedHeapSpace::establish_noaccess_prefix() {
-  assert(_alignment >= (size_t)os::vm_page_size(), "must be at least page size big");
-  _noaccess_prefix = noaccess_prefix_size(_alignment);
-
-  if (base() && base() + _size > (char *)OopEncodingHeapMax) {
-    if (true
-        WIN64_ONLY(&& !UseLargePages)
-        AIX_ONLY(&& os::vm_page_size() != SIZE_64K)) {
-      // Protect memory at the base of the allocated region.
-      // If special, the page was committed (only matters on windows)
-      if (!os::protect_memory(_base, _noaccess_prefix, os::MEM_PROT_NONE, _special)) {
-        fatal("cannot protect protection page");
-      }
-      if (PrintCompressedOopsMode) {
-        tty->cr();
-        tty->print_cr("Protected page at the reserved heap base: "
-                      PTR_FORMAT " / " INTX_FORMAT " bytes", _base, _noaccess_prefix);
-      }
-      assert(Universe::narrow_oop_use_implicit_null_checks() == true, "not initialized?");
-    } else {
-      Universe::set_narrow_oop_use_implicit_null_checks(false);
-    }
-  }
-
-  _base += _noaccess_prefix;
-  _size -= _noaccess_prefix;
-  assert(((uintptr_t)_base % _alignment == 0), "must be exactly of required alignment");
-}
-
-// Tries to allocate memory of size 'size' at address requested_address with alignment 'alignment'.
-// Does not check whether the reserved memory actually is at requested_address, as the memory returned
-// might still fulfill the wishes of the caller.
-// Assures the memory is aligned to 'alignment'.
-// NOTE: If ReservedHeapSpace already points to some reserved memory this is freed, first.
-void ReservedHeapSpace::try_reserve_heap(size_t size,
-                                         size_t alignment,
-                                         bool large,
-                                         char* requested_address) {
-  if (_base != NULL) {
-    // We tried before, but we didn't like the address delivered.
-    release();
-  }
-
-  // If OS doesn't support demand paging for large page memory, we need
-  // to use reserve_memory_special() to reserve and pin the entire region.
-  bool special = large && !os::can_commit_large_page_memory();
-  char* base = NULL;
-
-  if (PrintCompressedOopsMode && Verbose) {
-    tty->print("Trying to allocate at address " PTR_FORMAT " heap of size " PTR_FORMAT ".\n",
-               requested_address, (address)size);
-  }
-
-  if (special) {
-    base = os::reserve_memory_special(size, alignment, requested_address, false);
-
-    if (base != NULL) {
-      // Check alignment constraints.
-      assert((uintptr_t) base % alignment == 0,
-             err_msg("Large pages returned a non-aligned address, base: "
-                     PTR_FORMAT " alignment: " PTR_FORMAT,
-                     base, (void*)(uintptr_t)alignment));
-      _special = true;
-    }
-  }
-
-  if (base == NULL) {
-    // Failed; try to reserve regular memory below
-    if (UseLargePages && (!FLAG_IS_DEFAULT(UseLargePages) ||
-                          !FLAG_IS_DEFAULT(LargePageSizeInBytes))) {
-      if (PrintCompressedOopsMode) {
-        tty->cr();
-        tty->print_cr("Reserve regular memory without large pages.");
-      }
-    }
-
-    // Optimistically assume that the OSes returns an aligned base pointer.
-    // When reserving a large address range, most OSes seem to align to at
-    // least 64K.
-
-    // If the memory was requested at a particular address, use
-    // os::attempt_reserve_memory_at() to avoid over mapping something
-    // important.  If available space is not detected, return NULL.
-
-    if (requested_address != 0) {
-      base = os::attempt_reserve_memory_at(size, requested_address);
-    } else {
-      base = os::reserve_memory(size, NULL, alignment);
-    }
-  }
-  if (base == NULL) { return; }
-
-  // Done
-  _base = base;
-  _size = size;
-  _alignment = alignment;
-
-  // Check alignment constraints
-  if ((((size_t)base) & (alignment - 1)) != 0) {
-    // Base not aligned, retry.
-    release();
-  }
-}
-
-void ReservedHeapSpace::try_reserve_range(char *highest_start,
-                                          char *lowest_start,
-                                          size_t attach_point_alignment,
-                                          char *aligned_heap_base_min_address,
-                                          char *upper_bound,
-                                          size_t size,
-                                          size_t alignment,
-                                          bool large) {
-  const size_t attach_range = highest_start - lowest_start;
-  // Cap num_attempts at possible number.
-  // At least one is possible even for 0 sized attach range.
-  const uint64_t num_attempts_possible = (attach_range / attach_point_alignment) + 1;
-  const uint64_t num_attempts_to_try   = MIN2((uint64_t)HeapSearchSteps, num_attempts_possible);
-
-  const size_t stepsize = (attach_range == 0) ? // Only one try.
-    (size_t) highest_start : align_size_up(attach_range / num_attempts_to_try, attach_point_alignment);
-
-  // Try attach points from top to bottom.
-  char* attach_point = highest_start;
-  while (attach_point >= lowest_start  &&
-         attach_point <= highest_start &&  // Avoid wrap around.
-         ((_base == NULL) ||
-          (_base < aligned_heap_base_min_address || _base + size > upper_bound))) {
-    try_reserve_heap(size, alignment, large, attach_point);
-    attach_point -= stepsize;
-  }
-}
-
-#define SIZE_64K  ((uint64_t) UCONST64(      0x10000))
-#define SIZE_256M ((uint64_t) UCONST64(   0x10000000))
-#define SIZE_32G  ((uint64_t) UCONST64(  0x800000000))
-
-// Helper for heap allocation. Returns an array with addresses
-// (OS-specific) which are suited for disjoint base mode. Array is
-// NULL terminated.
-static char** get_attach_addresses_for_disjoint_mode() {
-  static uint64_t addresses[] = {
-     2 * SIZE_32G,
-     3 * SIZE_32G,
-     4 * SIZE_32G,
-     8 * SIZE_32G,
-    10 * SIZE_32G,
-     1 * SIZE_64K * SIZE_32G,
-     2 * SIZE_64K * SIZE_32G,
-     3 * SIZE_64K * SIZE_32G,
-     4 * SIZE_64K * SIZE_32G,
-    16 * SIZE_64K * SIZE_32G,
-    32 * SIZE_64K * SIZE_32G,
-    34 * SIZE_64K * SIZE_32G,
-    0
-  };
-
-  // Sort out addresses smaller than HeapBaseMinAddress. This assumes
-  // the array is sorted.
-  uint i = 0;
-  while (addresses[i] != 0 &&
-         (addresses[i] < OopEncodingHeapMax || addresses[i] < HeapBaseMinAddress)) {
-    i++;
-  }
-  uint start = i;
-
-  // Avoid more steps than requested.
-  i = 0;
-  while (addresses[start+i] != 0) {
-    if (i == HeapSearchSteps) {
-      addresses[start+i] = 0;
-      break;
-    }
-    i++;
-  }
-
-  return (char**) &addresses[start];
-}
-
-void ReservedHeapSpace::initialize_compressed_heap(const size_t size, size_t alignment, bool large) {
-  guarantee(size + noaccess_prefix_size(alignment) <= OopEncodingHeapMax,
-            "can not allocate compressed oop heap for this size");
-  guarantee(alignment == MAX2(alignment, (size_t)os::vm_page_size()), "alignment too small");
-  assert(HeapBaseMinAddress > 0, "sanity");
-
-  const size_t granularity = os::vm_allocation_granularity();
-  assert((size & (granularity - 1)) == 0,
-         "size not aligned to os::vm_allocation_granularity()");
-  assert((alignment & (granularity - 1)) == 0,
-         "alignment not aligned to os::vm_allocation_granularity()");
-  assert(alignment == 0 || is_power_of_2((intptr_t)alignment),
-         "not a power of 2");
-
-  // The necessary attach point alignment for generated wish addresses.
-  // This is needed to increase the chance of attaching for mmap and shmat.
-  const size_t os_attach_point_alignment =
-    AIX_ONLY(SIZE_256M)  // Known shm boundary alignment.
-    NOT_AIX(os::vm_allocation_granularity());
-  const size_t attach_point_alignment = lcm(alignment, os_attach_point_alignment);
-
-  char *aligned_heap_base_min_address = (char *)align_ptr_up((void *)HeapBaseMinAddress, alignment);
-  size_t noaccess_prefix = ((aligned_heap_base_min_address + size) > (char*)OopEncodingHeapMax) ?
-    noaccess_prefix_size(alignment) : 0;
-
-  // Attempt to alloc at user-given address.
-  if (!FLAG_IS_DEFAULT(HeapBaseMinAddress)) {
-    try_reserve_heap(size + noaccess_prefix, alignment, large, aligned_heap_base_min_address);
-    if (_base != aligned_heap_base_min_address) { // Enforce this exact address.
-      release();
-    }
-  }
-
-  // Keep heap at HeapBaseMinAddress.
-  if (_base == NULL) {
-
-    // Try to allocate the heap at addresses that allow efficient oop compression.
-    // Different schemes are tried, in order of decreasing optimization potential.
-    //
-    // For this, try_reserve_heap() is called with the desired heap base addresses.
-    // A call into the os layer to allocate at a given address can return memory
-    // at a different address than requested.  Still, this might be memory at a useful
-    // address. try_reserve_heap() always returns this allocated memory, as only here
-    // the criteria for a good heap are checked.
-
-    // Attempt to allocate so that we can run without base and scale (32-Bit unscaled compressed oops).
-    // Give it several tries from top of range to bottom.
-    if (aligned_heap_base_min_address + size <= (char *)UnscaledOopHeapMax) {
-
-      // Calc address range within we try to attach (range of possible start addresses).
-      char* const highest_start = (char *)align_ptr_down((char *)UnscaledOopHeapMax - size, attach_point_alignment);
-      char* const lowest_start  = (char *)align_ptr_up  (        aligned_heap_base_min_address             , attach_point_alignment);
-      try_reserve_range(highest_start, lowest_start, attach_point_alignment,
-                        aligned_heap_base_min_address, (char *)UnscaledOopHeapMax, size, alignment, large);
-    }
-
-    // zerobased: Attempt to allocate in the lower 32G.
-    // But leave room for the compressed class pointers, which is allocated above
-    // the heap.
-    char *zerobased_max = (char *)OopEncodingHeapMax;
-    const size_t class_space = align_size_up(CompressedClassSpaceSize, alignment);
-    // For small heaps, save some space for compressed class pointer
-    // space so it can be decoded with no base.
-    if (UseCompressedClassPointers && !UseSharedSpaces &&
-        OopEncodingHeapMax <= KlassEncodingMetaspaceMax &&
-        (uint64_t)(aligned_heap_base_min_address + size + class_space) <= KlassEncodingMetaspaceMax) {
-      zerobased_max = (char *)OopEncodingHeapMax - class_space;
-    }
-
-    // Give it several tries from top of range to bottom.
-    if (aligned_heap_base_min_address + size <= zerobased_max &&    // Zerobased theoretical possible.
-        ((_base == NULL) ||                        // No previous try succeeded.
-         (_base + size > zerobased_max))) {        // Unscaled delivered an arbitrary address.
-
-      // Calc address range within we try to attach (range of possible start addresses).
-      char *const highest_start = (char *)align_ptr_down(zerobased_max - size, attach_point_alignment);
-      // Need to be careful about size being guaranteed to be less
-      // than UnscaledOopHeapMax due to type constraints.
-      char *lowest_start = aligned_heap_base_min_address;
-      uint64_t unscaled_end = UnscaledOopHeapMax - size;
-      if (unscaled_end < UnscaledOopHeapMax) { // unscaled_end wrapped if size is large
-        lowest_start = MAX2(lowest_start, (char*)unscaled_end);
-      }
-      lowest_start  = (char *)align_ptr_up(lowest_start, attach_point_alignment);
-      try_reserve_range(highest_start, lowest_start, attach_point_alignment,
-                        aligned_heap_base_min_address, zerobased_max, size, alignment, large);
-    }
-
-    // Now we go for heaps with base != 0.  We need a noaccess prefix to efficiently
-    // implement null checks.
-    noaccess_prefix = noaccess_prefix_size(alignment);
-
-    // Try to attach at addresses that are aligned to OopEncodingHeapMax. Disjointbase mode.
-    char** addresses = get_attach_addresses_for_disjoint_mode();
-    int i = 0;
-    while (addresses[i] &&                                 // End of array not yet reached.
-           ((_base == NULL) ||                             // No previous try succeeded.
-            (_base + size >  (char *)OopEncodingHeapMax && // Not zerobased or unscaled address.
-             !Universe::is_disjoint_heap_base_address((address)_base)))) {  // Not disjoint address.
-      char* const attach_point = addresses[i];
-      assert(attach_point >= aligned_heap_base_min_address, "Flag support broken");
-      try_reserve_heap(size + noaccess_prefix, alignment, large, attach_point);
-      i++;
-    }
-
-    // Last, desperate try without any placement.
-    if (_base == NULL) {
-      if (PrintCompressedOopsMode && Verbose) {
-        tty->print("Trying to allocate at address NULL heap of size " PTR_FORMAT ".\n", (address)size + noaccess_prefix);
-      }
-      initialize(size + noaccess_prefix, alignment, large, NULL, false);
-    }
-  }
-}
-
-ReservedHeapSpace::ReservedHeapSpace(size_t size, size_t alignment, bool large) : ReservedSpace() {
-
-  if (size == 0) {
-    return;
-  }
-
-  // Heap size should be aligned to alignment, too.
-  guarantee(is_size_aligned(size, alignment), "set by caller");
-
-  if (UseCompressedOops) {
-    initialize_compressed_heap(size, alignment, large);
-    if (_size > size) {
-      // We allocated heap with noaccess prefix.
-      // It can happen we get a zerobased/unscaled heap with noaccess prefix,
-      // if we had to try at arbitrary address.
-      establish_noaccess_prefix();
-    }
-  } else {
-    initialize(size, alignment, large, NULL, false);
-  }
-
-  assert(markOopDesc::encode_pointer_as_mark(_base)->decode_pointer() == _base,
-         "area must be distinguishable from marks for mark-sweep");
-  assert(markOopDesc::encode_pointer_as_mark(&_base[size])->decode_pointer() == &_base[size],
-         "area must be distinguishable from marks for mark-sweep");
-
-  if (base() > 0) {
-    MemTracker::record_virtual_memory_type((address)base(), mtJavaHeap);
-  }
-}
-
-// Reserve space for code segment.  Same as Java heap only we mark this as
-// executable.
-ReservedCodeSpace::ReservedCodeSpace(size_t r_size,
-                                     size_t rs_align,
-                                     bool large) :
-  ReservedSpace(r_size, rs_align, large, /*executable*/ true) {
-  MemTracker::record_virtual_memory_type((address)base(), mtCode);
-}
-
-// VirtualSpace
-
-VirtualSpace::VirtualSpace() {
-  _low_boundary           = NULL;
-  _high_boundary          = NULL;
-  _low                    = NULL;
-  _high                   = NULL;
-  _lower_high             = NULL;
-  _middle_high            = NULL;
-  _upper_high             = NULL;
-  _lower_high_boundary    = NULL;
-  _middle_high_boundary   = NULL;
-  _upper_high_boundary    = NULL;
-  _lower_alignment        = 0;
-  _middle_alignment       = 0;
-  _upper_alignment        = 0;
-  _special                = false;
-  _executable             = false;
-}
-
-
-bool VirtualSpace::initialize(ReservedSpace rs, size_t committed_size) {
-  const size_t max_commit_granularity = os::page_size_for_region_unaligned(rs.size(), 1);
-  return initialize_with_granularity(rs, committed_size, max_commit_granularity);
-}
-
-bool VirtualSpace::initialize_with_granularity(ReservedSpace rs, size_t committed_size, size_t max_commit_granularity) {
-  if(!rs.is_reserved()) return false;  // allocation failed.
-  assert(_low_boundary == NULL, "VirtualSpace already initialized");
-  assert(max_commit_granularity > 0, "Granularity must be non-zero.");
-
-  _low_boundary  = rs.base();
-  _high_boundary = low_boundary() + rs.size();
-
-  _low = low_boundary();
-  _high = low();
-
-  _special = rs.special();
-  _executable = rs.executable();
-
-  // When a VirtualSpace begins life at a large size, make all future expansion
-  // and shrinking occur aligned to a granularity of large pages.  This avoids
-  // fragmentation of physical addresses that inhibits the use of large pages
-  // by the OS virtual memory system.  Empirically,  we see that with a 4MB
-  // page size, the only spaces that get handled this way are codecache and
-  // the heap itself, both of which provide a substantial performance
-  // boost in many benchmarks when covered by large pages.
-  //
-  // No attempt is made to force large page alignment at the very top and
-  // bottom of the space if they are not aligned so already.
-  _lower_alignment  = os::vm_page_size();
-  _middle_alignment = max_commit_granularity;
-  _upper_alignment  = os::vm_page_size();
-
-  // End of each region
-  _lower_high_boundary = (char*) round_to((intptr_t) low_boundary(), middle_alignment());
-  _middle_high_boundary = (char*) round_down((intptr_t) high_boundary(), middle_alignment());
-  _upper_high_boundary = high_boundary();
-
-  // High address of each region
-  _lower_high = low_boundary();
-  _middle_high = lower_high_boundary();
-  _upper_high = middle_high_boundary();
-
-  // commit to initial size
-  if (committed_size > 0) {
-    if (!expand_by(committed_size)) {
-      return false;
-    }
-  }
-  return true;
-}
-
-
-VirtualSpace::~VirtualSpace() {
-  release();
-}
-
-
-void VirtualSpace::release() {
-  // This does not release memory it never reserved.
-  // Caller must release via rs.release();
-  _low_boundary           = NULL;
-  _high_boundary          = NULL;
-  _low                    = NULL;
-  _high                   = NULL;
-  _lower_high             = NULL;
-  _middle_high            = NULL;
-  _upper_high             = NULL;
-  _lower_high_boundary    = NULL;
-  _middle_high_boundary   = NULL;
-  _upper_high_boundary    = NULL;
-  _lower_alignment        = 0;
-  _middle_alignment       = 0;
-  _upper_alignment        = 0;
-  _special                = false;
-  _executable             = false;
-}
-
-
-size_t VirtualSpace::committed_size() const {
-  return pointer_delta(high(), low(), sizeof(char));
-}
-
-
-size_t VirtualSpace::reserved_size() const {
-  return pointer_delta(high_boundary(), low_boundary(), sizeof(char));
-}
-
-
-size_t VirtualSpace::uncommitted_size()  const {
-  return reserved_size() - committed_size();
-}
-
-size_t VirtualSpace::actual_committed_size() const {
-  // Special VirtualSpaces commit all reserved space up front.
-  if (special()) {
-    return reserved_size();
-  }
-
-  size_t committed_low    = pointer_delta(_lower_high,  _low_boundary,         sizeof(char));
-  size_t committed_middle = pointer_delta(_middle_high, _lower_high_boundary,  sizeof(char));
-  size_t committed_high   = pointer_delta(_upper_high,  _middle_high_boundary, sizeof(char));
-
-#ifdef ASSERT
-  size_t lower  = pointer_delta(_lower_high_boundary,  _low_boundary,         sizeof(char));
-  size_t middle = pointer_delta(_middle_high_boundary, _lower_high_boundary,  sizeof(char));
-  size_t upper  = pointer_delta(_upper_high_boundary,  _middle_high_boundary, sizeof(char));
-
-  if (committed_high > 0) {
-    assert(committed_low == lower, "Must be");
-    assert(committed_middle == middle, "Must be");
-  }
-
-  if (committed_middle > 0) {
-    assert(committed_low == lower, "Must be");
-  }
-  if (committed_middle < middle) {
-    assert(committed_high == 0, "Must be");
-  }
-
-  if (committed_low < lower) {
-    assert(committed_high == 0, "Must be");
-    assert(committed_middle == 0, "Must be");
-  }
-#endif
-
-  return committed_low + committed_middle + committed_high;
-}
-
-
-bool VirtualSpace::contains(const void* p) const {
-  return low() <= (const char*) p && (const char*) p < high();
-}
-
-/*
-   First we need to determine if a particular virtual space is using large
-   pages.  This is done at the initialize function and only virtual spaces
-   that are larger than LargePageSizeInBytes use large pages.  Once we
-   have determined this, all expand_by and shrink_by calls must grow and
-   shrink by large page size chunks.  If a particular request
-   is within the current large page, the call to commit and uncommit memory
-   can be ignored.  In the case that the low and high boundaries of this
-   space is not large page aligned, the pages leading to the first large
-   page address and the pages after the last large page address must be
-   allocated with default pages.
-*/
-bool VirtualSpace::expand_by(size_t bytes, bool pre_touch) {
-  if (uncommitted_size() < bytes) return false;
-
-  if (special()) {
-    // don't commit memory if the entire space is pinned in memory
-    _high += bytes;
-    return true;
-  }
-
-  char* previous_high = high();
-  char* unaligned_new_high = high() + bytes;
-  assert(unaligned_new_high <= high_boundary(),
-         "cannot expand by more than upper boundary");
-
-  // Calculate where the new high for each of the regions should be.  If
-  // the low_boundary() and high_boundary() are LargePageSizeInBytes aligned
-  // then the unaligned lower and upper new highs would be the
-  // lower_high() and upper_high() respectively.
-  char* unaligned_lower_new_high =
-    MIN2(unaligned_new_high, lower_high_boundary());
-  char* unaligned_middle_new_high =
-    MIN2(unaligned_new_high, middle_high_boundary());
-  char* unaligned_upper_new_high =
-    MIN2(unaligned_new_high, upper_high_boundary());
-
-  // Align the new highs based on the regions alignment.  lower and upper
-  // alignment will always be default page size.  middle alignment will be
-  // LargePageSizeInBytes if the actual size of the virtual space is in
-  // fact larger than LargePageSizeInBytes.
-  char* aligned_lower_new_high =
-    (char*) round_to((intptr_t) unaligned_lower_new_high, lower_alignment());
-  char* aligned_middle_new_high =
-    (char*) round_to((intptr_t) unaligned_middle_new_high, middle_alignment());
-  char* aligned_upper_new_high =
-    (char*) round_to((intptr_t) unaligned_upper_new_high, upper_alignment());
-
-  // Determine which regions need to grow in this expand_by call.
-  // If you are growing in the lower region, high() must be in that
-  // region so calculate the size based on high().  For the middle and
-  // upper regions, determine the starting point of growth based on the
-  // location of high().  By getting the MAX of the region's low address
-  // (or the previous region's high address) and high(), we can tell if it
-  // is an intra or inter region growth.
-  size_t lower_needs = 0;
-  if (aligned_lower_new_high > lower_high()) {
-    lower_needs =
-      pointer_delta(aligned_lower_new_high, lower_high(), sizeof(char));
-  }
-  size_t middle_needs = 0;
-  if (aligned_middle_new_high > middle_high()) {
-    middle_needs =
-      pointer_delta(aligned_middle_new_high, middle_high(), sizeof(char));
-  }
-  size_t upper_needs = 0;
-  if (aligned_upper_new_high > upper_high()) {
-    upper_needs =
-      pointer_delta(aligned_upper_new_high, upper_high(), sizeof(char));
-  }
-
-  // Check contiguity.
-  assert(low_boundary() <= lower_high() &&
-         lower_high() <= lower_high_boundary(),
-         "high address must be contained within the region");
-  assert(lower_high_boundary() <= middle_high() &&
-         middle_high() <= middle_high_boundary(),
-         "high address must be contained within the region");
-  assert(middle_high_boundary() <= upper_high() &&
-         upper_high() <= upper_high_boundary(),
-         "high address must be contained within the region");
-
-  // Commit regions
-  if (lower_needs > 0) {
-    assert(low_boundary() <= lower_high() &&
-           lower_high() + lower_needs <= lower_high_boundary(),
-           "must not expand beyond region");
-    if (!os::commit_memory(lower_high(), lower_needs, _executable)) {
-      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
-                         ", lower_needs=" SIZE_FORMAT ", %d) failed",
-                         lower_high(), lower_needs, _executable);)
-      return false;
-    } else {
-      _lower_high += lower_needs;
-    }
-  }
-  if (middle_needs > 0) {
-    assert(lower_high_boundary() <= middle_high() &&
-           middle_high() + middle_needs <= middle_high_boundary(),
-           "must not expand beyond region");
-    if (!os::commit_memory(middle_high(), middle_needs, middle_alignment(),
-                           _executable)) {
-      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
-                         ", middle_needs=" SIZE_FORMAT ", " SIZE_FORMAT
-                         ", %d) failed", middle_high(), middle_needs,
-                         middle_alignment(), _executable);)
-      return false;
-    }
-    _middle_high += middle_needs;
-  }
-  if (upper_needs > 0) {
-    assert(middle_high_boundary() <= upper_high() &&
-           upper_high() + upper_needs <= upper_high_boundary(),
-           "must not expand beyond region");
-    if (!os::commit_memory(upper_high(), upper_needs, _executable)) {
-      debug_only(warning("INFO: os::commit_memory(" PTR_FORMAT
-                         ", upper_needs=" SIZE_FORMAT ", %d) failed",
-                         upper_high(), upper_needs, _executable);)
-      return false;
-    } else {
-      _upper_high += upper_needs;
-    }
-  }
-
-  if (pre_touch || AlwaysPreTouch) {
-    os::pretouch_memory(previous_high, unaligned_new_high);
-  }
-
-  _high += bytes;
-  return true;
-}
-
-// A page is uncommitted if the contents of the entire page is deemed unusable.
-// Continue to decrement the high() pointer until it reaches a page boundary
-// in which case that particular page can now be uncommitted.
-void VirtualSpace::shrink_by(size_t size) {
-  if (committed_size() < size)
-    fatal("Cannot shrink virtual space to negative size");
-
-  if (special()) {
-    // don't uncommit if the entire space is pinned in memory
-    _high -= size;
-    return;
-  }
-
-  char* unaligned_new_high = high() - size;
-  assert(unaligned_new_high >= low_boundary(), "cannot shrink past lower boundary");
-
-  // Calculate new unaligned address
-  char* unaligned_upper_new_high =
-    MAX2(unaligned_new_high, middle_high_boundary());
-  char* unaligned_middle_new_high =
-    MAX2(unaligned_new_high, lower_high_boundary());
-  char* unaligned_lower_new_high =
-    MAX2(unaligned_new_high, low_boundary());
-
-  // Align address to region's alignment
-  char* aligned_upper_new_high =
-    (char*) round_to((intptr_t) unaligned_upper_new_high, upper_alignment());
-  char* aligned_middle_new_high =
-    (char*) round_to((intptr_t) unaligned_middle_new_high, middle_alignment());
-  char* aligned_lower_new_high =
-    (char*) round_to((intptr_t) unaligned_lower_new_high, lower_alignment());
-
-  // Determine which regions need to shrink
-  size_t upper_needs = 0;
-  if (aligned_upper_new_high < upper_high()) {
-    upper_needs =
-      pointer_delta(upper_high(), aligned_upper_new_high, sizeof(char));
-  }
-  size_t middle_needs = 0;
-  if (aligned_middle_new_high < middle_high()) {
-    middle_needs =
-      pointer_delta(middle_high(), aligned_middle_new_high, sizeof(char));
-  }
-  size_t lower_needs = 0;
-  if (aligned_lower_new_high < lower_high()) {
-    lower_needs =
-      pointer_delta(lower_high(), aligned_lower_new_high, sizeof(char));
-  }
-
-  // Check contiguity.
-  assert(middle_high_boundary() <= upper_high() &&
-         upper_high() <= upper_high_boundary(),
-         "high address must be contained within the region");
-  assert(lower_high_boundary() <= middle_high() &&
-         middle_high() <= middle_high_boundary(),
-         "high address must be contained within the region");
-  assert(low_boundary() <= lower_high() &&
-         lower_high() <= lower_high_boundary(),
-         "high address must be contained within the region");
-
-  // Uncommit
-  if (upper_needs > 0) {
-    assert(middle_high_boundary() <= aligned_upper_new_high &&
-           aligned_upper_new_high + upper_needs <= upper_high_boundary(),
-           "must not shrink beyond region");
-    if (!os::uncommit_memory(aligned_upper_new_high, upper_needs)) {
-      debug_only(warning("os::uncommit_memory failed"));
-      return;
-    } else {
-      _upper_high -= upper_needs;
-    }
-  }
-  if (middle_needs > 0) {
-    assert(lower_high_boundary() <= aligned_middle_new_high &&
-           aligned_middle_new_high + middle_needs <= middle_high_boundary(),
-           "must not shrink beyond region");
-    if (!os::uncommit_memory(aligned_middle_new_high, middle_needs)) {
-      debug_only(warning("os::uncommit_memory failed"));
-      return;
-    } else {
-      _middle_high -= middle_needs;
-    }
-  }
-  if (lower_needs > 0) {
-    assert(low_boundary() <= aligned_lower_new_high &&
-           aligned_lower_new_high + lower_needs <= lower_high_boundary(),
-           "must not shrink beyond region");
-    if (!os::uncommit_memory(aligned_lower_new_high, lower_needs)) {
-      debug_only(warning("os::uncommit_memory failed"));
-      return;
-    } else {
-      _lower_high -= lower_needs;
-    }
-  }
-
-  _high -= size;
-}
-
-#ifndef PRODUCT
-void VirtualSpace::check_for_contiguity() {
-  // Check contiguity.
-  assert(low_boundary() <= lower_high() &&
-         lower_high() <= lower_high_boundary(),
-         "high address must be contained within the region");
-  assert(lower_high_boundary() <= middle_high() &&
-         middle_high() <= middle_high_boundary(),
-         "high address must be contained within the region");
-  assert(middle_high_boundary() <= upper_high() &&
-         upper_high() <= upper_high_boundary(),
-         "high address must be contained within the region");
-  assert(low() >= low_boundary(), "low");
-  assert(low_boundary() <= lower_high_boundary(), "lower high boundary");
-  assert(upper_high_boundary() <= high_boundary(), "upper high boundary");
-  assert(high() <= upper_high(), "upper high");
-}
-
-void VirtualSpace::print_on(outputStream* out) {
-  out->print   ("Virtual space:");
-  if (special()) out->print(" (pinned in memory)");
-  out->cr();
-  out->print_cr(" - committed: " SIZE_FORMAT, committed_size());
-  out->print_cr(" - reserved:  " SIZE_FORMAT, reserved_size());
-  out->print_cr(" - [low, high]:     [" INTPTR_FORMAT ", " INTPTR_FORMAT "]",  low(), high());
-  out->print_cr(" - [low_b, high_b]: [" INTPTR_FORMAT ", " INTPTR_FORMAT "]",  low_boundary(), high_boundary());
-}
-
-void VirtualSpace::print() {
-  print_on(tty);
-}
-
-/////////////// Unit tests ///////////////
-
-#ifndef PRODUCT
-
-#define test_log(...) \
-  do {\
-    if (VerboseInternalVMTests) { \
-      tty->print_cr(__VA_ARGS__); \
-      tty->flush(); \
-    }\
-  } while (false)
-
-class TestReservedSpace : AllStatic {
- public:
-  static void small_page_write(void* addr, size_t size) {
-    size_t page_size = os::vm_page_size();
-
-    char* end = (char*)addr + size;
-    for (char* p = (char*)addr; p < end; p += page_size) {
-      *p = 1;
-    }
-  }
-
-  static void release_memory_for_test(ReservedSpace rs) {
-    if (rs.special()) {
-      guarantee(os::release_memory_special(rs.base(), rs.size()), "Shouldn't fail");
-    } else {
-      guarantee(os::release_memory(rs.base(), rs.size()), "Shouldn't fail");
-    }
-  }
-
-  static void test_reserved_space1(size_t size, size_t alignment) {
-    test_log("test_reserved_space1(%p)", (void*) (uintptr_t) size);
-
-    assert(is_size_aligned(size, alignment), "Incorrect input parameters");
-
-    ReservedSpace rs(size,          // size
-                     alignment,     // alignment
-                     UseLargePages, // large
-                     (char *)NULL); // requested_address
-
-    test_log(" rs.special() == %d", rs.special());
-
-    assert(rs.base() != NULL, "Must be");
-    assert(rs.size() == size, "Must be");
-
-    assert(is_ptr_aligned(rs.base(), alignment), "aligned sizes should always give aligned addresses");
-    assert(is_size_aligned(rs.size(), alignment), "aligned sizes should always give aligned addresses");
-
-    if (rs.special()) {
-      small_page_write(rs.base(), size);
-    }
-
-    release_memory_for_test(rs);
-  }
-
-  static void test_reserved_space2(size_t size) {
-    test_log("test_reserved_space2(%p)", (void*)(uintptr_t)size);
-
-    assert(is_size_aligned(size, os::vm_allocation_granularity()), "Must be at least AG aligned");
-
-    ReservedSpace rs(size);
-
-    test_log(" rs.special() == %d", rs.special());
-
-    assert(rs.base() != NULL, "Must be");
-    assert(rs.size() == size, "Must be");
-
-    if (rs.special()) {
-      small_page_write(rs.base(), size);
-    }
-
-    release_memory_for_test(rs);
-  }
-
-  static void test_reserved_space3(size_t size, size_t alignment, bool maybe_large) {
-    test_log("test_reserved_space3(%p, %p, %d)",
-        (void*)(uintptr_t)size, (void*)(uintptr_t)alignment, maybe_large);
-
-    assert(is_size_aligned(size, os::vm_allocation_granularity()), "Must be at least AG aligned");
-    assert(is_size_aligned(size, alignment), "Must be at least aligned against alignment");
-
-    bool large = maybe_large && UseLargePages && size >= os::large_page_size();
-
-    ReservedSpace rs(size, alignment, large, false);
-
-    test_log(" rs.special() == %d", rs.special());
-
-    assert(rs.base() != NULL, "Must be");
-    assert(rs.size() == size, "Must be");
-
-    if (rs.special()) {
-      small_page_write(rs.base(), size);
-    }
-
-    release_memory_for_test(rs);
-  }
-
-
-  static void test_reserved_space1() {
-    size_t size = 2 * 1024 * 1024;
-    size_t ag   = os::vm_allocation_granularity();
-
-    test_reserved_space1(size,      ag);
-    test_reserved_space1(size * 2,  ag);
-    test_reserved_space1(size * 10, ag);
-  }
-
-  static void test_reserved_space2() {
-    size_t size = 2 * 1024 * 1024;
-    size_t ag = os::vm_allocation_granularity();
-
-    test_reserved_space2(size * 1);
-    test_reserved_space2(size * 2);
-    test_reserved_space2(size * 10);
-    test_reserved_space2(ag);
-    test_reserved_space2(size - ag);
-    test_reserved_space2(size);
-    test_reserved_space2(size + ag);
-    test_reserved_space2(size * 2);
-    test_reserved_space2(size * 2 - ag);
-    test_reserved_space2(size * 2 + ag);
-    test_reserved_space2(size * 3);
-    test_reserved_space2(size * 3 - ag);
-    test_reserved_space2(size * 3 + ag);
-    test_reserved_space2(size * 10);
-    test_reserved_space2(size * 10 + size / 2);
-  }
-
-  static void test_reserved_space3() {
-    size_t ag = os::vm_allocation_granularity();
-
-    test_reserved_space3(ag,      ag    , false);
-    test_reserved_space3(ag * 2,  ag    , false);
-    test_reserved_space3(ag * 3,  ag    , false);
-    test_reserved_space3(ag * 2,  ag * 2, false);
-    test_reserved_space3(ag * 4,  ag * 2, false);
-    test_reserved_space3(ag * 8,  ag * 2, false);
-    test_reserved_space3(ag * 4,  ag * 4, false);
-    test_reserved_space3(ag * 8,  ag * 4, false);
-    test_reserved_space3(ag * 16, ag * 4, false);
-
-    if (UseLargePages) {
-      size_t lp = os::large_page_size();
-
-      // Without large pages
-      test_reserved_space3(lp,     ag * 4, false);
-      test_reserved_space3(lp * 2, ag * 4, false);
-      test_reserved_space3(lp * 4, ag * 4, false);
-      test_reserved_space3(lp,     lp    , false);
-      test_reserved_space3(lp * 2, lp    , false);
-      test_reserved_space3(lp * 3, lp    , false);
-      test_reserved_space3(lp * 2, lp * 2, false);
-      test_reserved_space3(lp * 4, lp * 2, false);
-      test_reserved_space3(lp * 8, lp * 2, false);
-
-      // With large pages
-      test_reserved_space3(lp, ag * 4    , true);
-      test_reserved_space3(lp * 2, ag * 4, true);
-      test_reserved_space3(lp * 4, ag * 4, true);
-      test_reserved_space3(lp, lp        , true);
-      test_reserved_space3(lp * 2, lp    , true);
-      test_reserved_space3(lp * 3, lp    , true);
-      test_reserved_space3(lp * 2, lp * 2, true);
-      test_reserved_space3(lp * 4, lp * 2, true);
-      test_reserved_space3(lp * 8, lp * 2, true);
-    }
-  }
-
-  static void test_reserved_space() {
-    test_reserved_space1();
-    test_reserved_space2();
-    test_reserved_space3();
-  }
-};
-
-void TestReservedSpace_test() {
-  TestReservedSpace::test_reserved_space();
-}
-
-#define assert_equals(actual, expected)     \
-  assert(actual == expected,                \
-    err_msg("Got " SIZE_FORMAT " expected " \
-      SIZE_FORMAT, actual, expected));
-
-#define assert_ge(value1, value2)                  \
-  assert(value1 >= value2,                         \
-    err_msg("'" #value1 "': " SIZE_FORMAT " '"     \
-      #value2 "': " SIZE_FORMAT, value1, value2));
-
-#define assert_lt(value1, value2)                  \
-  assert(value1 < value2,                          \
-    err_msg("'" #value1 "': " SIZE_FORMAT " '"     \
-      #value2 "': " SIZE_FORMAT, value1, value2));
-
-
-class TestVirtualSpace : AllStatic {
-  enum TestLargePages {
-    Default,
-    Disable,
-    Reserve,
-    Commit
-  };
-
-  static ReservedSpace reserve_memory(size_t reserve_size_aligned, TestLargePages mode) {
-    switch(mode) {
-    default:
-    case Default:
-    case Reserve:
-      return ReservedSpace(reserve_size_aligned);
-    case Disable:
-    case Commit:
-      return ReservedSpace(reserve_size_aligned,
-                           os::vm_allocation_granularity(),
-                           /* large */ false, /* exec */ false);
-    }
-  }
-
-  static bool initialize_virtual_space(VirtualSpace& vs, ReservedSpace rs, TestLargePages mode) {
-    switch(mode) {
-    default:
-    case Default:
-    case Reserve:
-      return vs.initialize(rs, 0);
-    case Disable:
-      return vs.initialize_with_granularity(rs, 0, os::vm_page_size());
-    case Commit:
-      return vs.initialize_with_granularity(rs, 0, os::page_size_for_region_unaligned(rs.size(), 1));
-    }
-  }
-
- public:
-  static void test_virtual_space_actual_committed_space(size_t reserve_size, size_t commit_size,
-                                                        TestLargePages mode = Default) {
-    size_t granularity = os::vm_allocation_granularity();
-    size_t reserve_size_aligned = align_size_up(reserve_size, granularity);
-
-    ReservedSpace reserved = reserve_memory(reserve_size_aligned, mode);
-
-    assert(reserved.is_reserved(), "Must be");
-
-    VirtualSpace vs;
-    bool initialized = initialize_virtual_space(vs, reserved, mode);
-    assert(initialized, "Failed to initialize VirtualSpace");
-
-    vs.expand_by(commit_size, false);
-
-    if (vs.special()) {
-      assert_equals(vs.actual_committed_size(), reserve_size_aligned);
-    } else {
-      assert_ge(vs.actual_committed_size(), commit_size);
-      // Approximate the commit granularity.
-      // Make sure that we don't commit using large pages
-      // if large pages has been disabled for this VirtualSpace.
-      size_t commit_granularity = (mode == Disable || !UseLargePages) ?
-                                   os::vm_page_size() : os::large_page_size();
-      assert_lt(vs.actual_committed_size(), commit_size + commit_granularity);
-    }
-
-    reserved.release();
-  }
-
-  static void test_virtual_space_actual_committed_space_one_large_page() {
-    if (!UseLargePages) {
-      return;
-    }
-
-    size_t large_page_size = os::large_page_size();
-
-    ReservedSpace reserved(large_page_size, large_page_size, true, false);
-
-    assert(reserved.is_reserved(), "Must be");
-
-    VirtualSpace vs;
-    bool initialized = vs.initialize(reserved, 0);
-    assert(initialized, "Failed to initialize VirtualSpace");
-
-    vs.expand_by(large_page_size, false);
-
-    assert_equals(vs.actual_committed_size(), large_page_size);
-
-    reserved.release();
-  }
-
-  static void test_virtual_space_actual_committed_space() {
-    test_virtual_space_actual_committed_space(4 * K, 0);
-    test_virtual_space_actual_committed_space(4 * K, 4 * K);
-    test_virtual_space_actual_committed_space(8 * K, 0);
-    test_virtual_space_actual_committed_space(8 * K, 4 * K);
-    test_virtual_space_actual_committed_space(8 * K, 8 * K);
-    test_virtual_space_actual_committed_space(12 * K, 0);
-    test_virtual_space_actual_committed_space(12 * K, 4 * K);
-    test_virtual_space_actual_committed_space(12 * K, 8 * K);
-    test_virtual_space_actual_committed_space(12 * K, 12 * K);
-    test_virtual_space_actual_committed_space(64 * K, 0);
-    test_virtual_space_actual_committed_space(64 * K, 32 * K);
-    test_virtual_space_actual_committed_space(64 * K, 64 * K);
-    test_virtual_space_actual_committed_space(2 * M, 0);
-    test_virtual_space_actual_committed_space(2 * M, 4 * K);
-    test_virtual_space_actual_committed_space(2 * M, 64 * K);
-    test_virtual_space_actual_committed_space(2 * M, 1 * M);
-    test_virtual_space_actual_committed_space(2 * M, 2 * M);
-    test_virtual_space_actual_committed_space(10 * M, 0);
-    test_virtual_space_actual_committed_space(10 * M, 4 * K);
-    test_virtual_space_actual_committed_space(10 * M, 8 * K);
-    test_virtual_space_actual_committed_space(10 * M, 1 * M);
-    test_virtual_space_actual_committed_space(10 * M, 2 * M);
-    test_virtual_space_actual_committed_space(10 * M, 5 * M);
-    test_virtual_space_actual_committed_space(10 * M, 10 * M);
-  }
-
-  static void test_virtual_space_disable_large_pages() {
-    if (!UseLargePages) {
-      return;
-    }
-    // These test cases verify that if we force VirtualSpace to disable large pages
-    test_virtual_space_actual_committed_space(10 * M, 0, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 4 * K, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 8 * K, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 1 * M, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 2 * M, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 5 * M, Disable);
-    test_virtual_space_actual_committed_space(10 * M, 10 * M, Disable);
-
-    test_virtual_space_actual_committed_space(10 * M, 0, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 4 * K, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 8 * K, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 1 * M, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 2 * M, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 5 * M, Reserve);
-    test_virtual_space_actual_committed_space(10 * M, 10 * M, Reserve);
-
-    test_virtual_space_actual_committed_space(10 * M, 0, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 4 * K, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 8 * K, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 1 * M, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 2 * M, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 5 * M, Commit);
-    test_virtual_space_actual_committed_space(10 * M, 10 * M, Commit);
-  }
-
-  static void test_virtual_space() {
-    test_virtual_space_actual_committed_space();
-    test_virtual_space_actual_committed_space_one_large_page();
-    test_virtual_space_disable_large_pages();
-  }
-};
-
-void TestVirtualSpace_test() {
-  TestVirtualSpace::test_virtual_space();
-}
-
-#endif // PRODUCT
-
-#endif
--- a/hotspot/src/share/vm/runtime/virtualspace.hpp	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,218 +0,0 @@
-/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- *
- */
-
-#ifndef SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
-#define SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
-
-#include "memory/allocation.hpp"
-
-// ReservedSpace is a data structure for reserving a contiguous address range.
-
-class ReservedSpace VALUE_OBJ_CLASS_SPEC {
-  friend class VMStructs;
- protected:
-  char*  _base;
-  size_t _size;
-  size_t _noaccess_prefix;
-  size_t _alignment;
-  bool   _special;
- private:
-  bool   _executable;
-
-  // ReservedSpace
-  ReservedSpace(char* base, size_t size, size_t alignment, bool special,
-                bool executable);
- protected:
-  void initialize(size_t size, size_t alignment, bool large,
-                  char* requested_address,
-                  bool executable);
-
- public:
-  // Constructor
-  ReservedSpace();
-  ReservedSpace(size_t size);
-  ReservedSpace(size_t size, size_t alignment, bool large,
-                char* requested_address = NULL);
-  ReservedSpace(size_t size, size_t alignment, bool large, bool executable);
-
-  // Accessors
-  char*  base()            const { return _base;      }
-  size_t size()            const { return _size;      }
-  size_t alignment()       const { return _alignment; }
-  bool   special()         const { return _special;   }
-  bool   executable()      const { return _executable;   }
-  size_t noaccess_prefix() const { return _noaccess_prefix;   }
-  bool is_reserved()       const { return _base != NULL; }
-  void release();
-
-  // Splitting
-  ReservedSpace first_part(size_t partition_size, size_t alignment,
-                           bool split = false, bool realloc = true);
-  ReservedSpace last_part (size_t partition_size, size_t alignment);
-
-  // These simply call the above using the default alignment.
-  inline ReservedSpace first_part(size_t partition_size,
-                                  bool split = false, bool realloc = true);
-  inline ReservedSpace last_part (size_t partition_size);
-
-  // Alignment
-  static size_t page_align_size_up(size_t size);
-  static size_t page_align_size_down(size_t size);
-  static size_t allocation_align_size_up(size_t size);
-  static size_t allocation_align_size_down(size_t size);
-};
-
-ReservedSpace
-ReservedSpace::first_part(size_t partition_size, bool split, bool realloc)
-{
-  return first_part(partition_size, alignment(), split, realloc);
-}
-
-ReservedSpace ReservedSpace::last_part(size_t partition_size)
-{
-  return last_part(partition_size, alignment());
-}
-
-// Class encapsulating behavior specific of memory space reserved for Java heap.
-class ReservedHeapSpace : public ReservedSpace {
- private:
-  void try_reserve_heap(size_t size, size_t alignment, bool large,
-                        char *requested_address);
-  void try_reserve_range(char *highest_start, char *lowest_start,
-                         size_t attach_point_alignment, char *aligned_HBMA,
-                         char *upper_bound, size_t size, size_t alignment, bool large);
-  void initialize_compressed_heap(const size_t size, size_t alignment, bool large);
-  // Create protection page at the beginning of the space.
-  void establish_noaccess_prefix();
- public:
-  // Constructor. Tries to find a heap that is good for compressed oops.
-  ReservedHeapSpace(size_t size, size_t forced_base_alignment, bool large);
-  // Returns the base to be used for compression, i.e. so that null can be
-  // encoded safely and implicit null checks can work.
-  char *compressed_oop_base() { return _base - _noaccess_prefix; }
-};
-
-// Class encapsulating behavior specific memory space for Code
-class ReservedCodeSpace : public ReservedSpace {
- public:
-  // Constructor
-  ReservedCodeSpace(size_t r_size, size_t rs_align, bool large);
-};
-
-// VirtualSpace is data structure for committing a previously reserved address range in smaller chunks.
-
-class VirtualSpace VALUE_OBJ_CLASS_SPEC {
-  friend class VMStructs;
- private:
-  // Reserved area
-  char* _low_boundary;
-  char* _high_boundary;
-
-  // Committed area
-  char* _low;
-  char* _high;
-
-  // The entire space has been committed and pinned in memory, no
-  // os::commit_memory() or os::uncommit_memory().
-  bool _special;
-
-  // Need to know if commit should be executable.
-  bool   _executable;
-
-  // MPSS Support
-  // Each virtualspace region has a lower, middle, and upper region.
-  // Each region has an end boundary and a high pointer which is the
-  // high water mark for the last allocated byte.
-  // The lower and upper unaligned to LargePageSizeInBytes uses default page.
-  // size.  The middle region uses large page size.
-  char* _lower_high;
-  char* _middle_high;
-  char* _upper_high;
-
-  char* _lower_high_boundary;
-  char* _middle_high_boundary;
-  char* _upper_high_boundary;
-
-  size_t _lower_alignment;
-  size_t _middle_alignment;
-  size_t _upper_alignment;
-
-  // MPSS Accessors
-  char* lower_high() const { return _lower_high; }
-  char* middle_high() const { return _middle_high; }
-  char* upper_high() const { return _upper_high; }
-
-  char* lower_high_boundary() const { return _lower_high_boundary; }
-  char* middle_high_boundary() const { return _middle_high_boundary; }
-  char* upper_high_boundary() const { return _upper_high_boundary; }
-
-  size_t lower_alignment() const { return _lower_alignment; }
-  size_t middle_alignment() const { return _middle_alignment; }
-  size_t upper_alignment() const { return _upper_alignment; }
-
- public:
-  // Committed area
-  char* low()  const { return _low; }
-  char* high() const { return _high; }
-
-  // Reserved area
-  char* low_boundary()  const { return _low_boundary; }
-  char* high_boundary() const { return _high_boundary; }
-
-  bool special() const { return _special; }
-
- public:
-  // Initialization
-  VirtualSpace();
-  bool initialize_with_granularity(ReservedSpace rs, size_t committed_byte_size, size_t max_commit_ganularity);
-  bool initialize(ReservedSpace rs, size_t committed_byte_size);
-
-  // Destruction
-  ~VirtualSpace();
-
-  // Reserved memory
-  size_t reserved_size() const;
-  // Actually committed OS memory
-  size_t actual_committed_size() const;
-  // Memory used/expanded in this virtual space
-  size_t committed_size() const;
-  // Memory left to use/expand in this virtual space
-  size_t uncommitted_size() const;
-
-  bool   contains(const void* p) const;
-
-  // Operations
-  // returns true on success, false otherwise
-  bool expand_by(size_t bytes, bool pre_touch = false);
-  void shrink_by(size_t bytes);
-  void release();
-
-  void check_for_contiguity() PRODUCT_RETURN;
-
-  // Debugging
-  void print_on(outputStream* out) PRODUCT_RETURN;
-  void print();
-};
-
-#endif // SHARE_VM_RUNTIME_VIRTUALSPACE_HPP
--- a/hotspot/src/share/vm/runtime/vmStructs.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/runtime/vmStructs.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -65,6 +65,7 @@
 #include "memory/space.hpp"
 #include "memory/tenuredGeneration.hpp"
 #include "memory/universe.hpp"
+#include "memory/virtualspace.hpp"
 #include "memory/watermark.hpp"
 #include "oops/arrayKlass.hpp"
 #include "oops/arrayOop.hpp"
@@ -100,7 +101,6 @@
 #include "runtime/sharedRuntime.hpp"
 #include "runtime/stubRoutines.hpp"
 #include "runtime/thread.inline.hpp"
-#include "runtime/virtualspace.hpp"
 #include "runtime/vmStructs.hpp"
 #include "utilities/array.hpp"
 #include "utilities/globalDefinitions.hpp"
@@ -555,10 +555,8 @@
   nonstatic_field(GenerationSpec,              _init_size,                                    size_t)                                \
   nonstatic_field(GenerationSpec,              _max_size,                                     size_t)                                \
                                                                                                                                      \
-    static_field(GenCollectedHeap,             _gch,                                          GenCollectedHeap*)                     \
   nonstatic_field(GenCollectedHeap,            _young_gen,                                    Generation*)                           \
   nonstatic_field(GenCollectedHeap,            _old_gen,                                      Generation*)                           \
- nonstatic_field(GenCollectedHeap,             _n_gens,                                       int)                                   \
                                                                                                                                      \
   nonstatic_field(GenCollectorPolicy,          _young_gen_spec,                               GenerationSpec*)                       \
   nonstatic_field(GenCollectorPolicy,          _old_gen_spec,                                 GenerationSpec*)                       \
@@ -1501,8 +1499,7 @@
   /******************************************/                            \
                                                                           \
   declare_toplevel_type(CollectedHeap)                                    \
-           declare_type(SharedHeap,                   CollectedHeap)      \
-           declare_type(GenCollectedHeap,             SharedHeap)         \
+           declare_type(GenCollectedHeap,             CollectedHeap)      \
   declare_toplevel_type(Generation)                                       \
            declare_type(DefNewGeneration,             Generation)         \
            declare_type(CardGeneration,               Generation)         \
@@ -1985,13 +1982,18 @@
   declare_c2_type(PowDNode, Node)                                         \
   declare_c2_type(ReverseBytesINode, Node)                                \
   declare_c2_type(ReverseBytesLNode, Node)                                \
+  declare_c2_type(ReductionNode, Node)                                    \
   declare_c2_type(VectorNode, Node)                                       \
   declare_c2_type(AddVBNode, VectorNode)                                  \
   declare_c2_type(AddVSNode, VectorNode)                                  \
   declare_c2_type(AddVINode, VectorNode)                                  \
+  declare_c2_type(AddReductionVINode, ReductionNode)                      \
   declare_c2_type(AddVLNode, VectorNode)                                  \
+  declare_c2_type(AddReductionVLNode, ReductionNode)                      \
   declare_c2_type(AddVFNode, VectorNode)                                  \
+  declare_c2_type(AddReductionVFNode, ReductionNode)                      \
   declare_c2_type(AddVDNode, VectorNode)                                  \
+  declare_c2_type(AddReductionVDNode, ReductionNode)                      \
   declare_c2_type(SubVBNode, VectorNode)                                  \
   declare_c2_type(SubVSNode, VectorNode)                                  \
   declare_c2_type(SubVINode, VectorNode)                                  \
@@ -2000,8 +2002,11 @@
   declare_c2_type(SubVDNode, VectorNode)                                  \
   declare_c2_type(MulVSNode, VectorNode)                                  \
   declare_c2_type(MulVINode, VectorNode)                                  \
+  declare_c2_type(MulReductionVINode, ReductionNode)                      \
   declare_c2_type(MulVFNode, VectorNode)                                  \
+  declare_c2_type(MulReductionVFNode, ReductionNode)                      \
   declare_c2_type(MulVDNode, VectorNode)                                  \
+  declare_c2_type(MulReductionVDNode, ReductionNode)                      \
   declare_c2_type(DivVFNode, VectorNode)                                  \
   declare_c2_type(DivVDNode, VectorNode)                                  \
   declare_c2_type(LShiftVBNode, VectorNode)                               \
@@ -2257,8 +2262,6 @@
   declare_constant(CollectedHeap::ParallelScavengeHeap)                   \
   declare_constant(CollectedHeap::G1CollectedHeap)                        \
                                                                           \
-  declare_constant(GenCollectedHeap::max_gens)                            \
-                                                                          \
   /* constants from Generation::Name enum */                              \
                                                                           \
   declare_constant(Generation::DefNew)                                    \
@@ -2516,6 +2519,7 @@
   declare_constant(Deoptimization::Reason_speculate_null_check)           \
   declare_constant(Deoptimization::Reason_rtm_state_change)               \
   declare_constant(Deoptimization::Reason_unstable_if)                    \
+  declare_constant(Deoptimization::Reason_unstable_fused_if)              \
   declare_constant(Deoptimization::Reason_tenured)                        \
   declare_constant(Deoptimization::Reason_LIMIT)                          \
   declare_constant(Deoptimization::Reason_RECORDED_LIMIT)                 \
--- a/hotspot/src/share/vm/services/diagnosticCommand.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/diagnosticCommand.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -32,6 +32,7 @@
 #include "services/diagnosticArgument.hpp"
 #include "services/diagnosticCommand.hpp"
 #include "services/diagnosticFramework.hpp"
+#include "services/writeableFlags.hpp"
 #include "services/heapDumper.hpp"
 #include "services/management.hpp"
 #include "utilities/macros.hpp"
@@ -50,6 +51,7 @@
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<CommandLineDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<PrintSystemPropertiesDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<PrintVMFlagsDCmd>(full_export, true, false));
+  DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<SetVMFlagDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<VMDynamicLibrariesDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<VMUptimeDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<SystemGCDCmd>(full_export, true, false));
@@ -62,6 +64,9 @@
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<SymboltableDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<StringtableDCmd>(full_export, true, false));
 #endif // INCLUDE_SERVICES
+#if INCLUDE_JVMTI
+  DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<JVMTIDataDumpDCmd>(full_export, true, false));
+#endif // INCLUDE_JVMTI
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<ThreadDumpDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<RotateGCLogDCmd>(full_export, true, false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<ClassLoaderStatsDCmd>(full_export, true, false));
@@ -76,6 +81,7 @@
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<JMXStartRemoteDCmd>(jmx_agent_export_flags, true,false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<JMXStartLocalDCmd>(jmx_agent_export_flags, true,false));
   DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<JMXStopRemoteDCmd>(jmx_agent_export_flags, true,false));
+  DCmdFactory::register_DCmdFactory(new DCmdFactoryImpl<JMXStatusDCmd>(jmx_agent_export_flags, true,false));
 
 }
 
@@ -197,6 +203,46 @@
     }
 }
 
+SetVMFlagDCmd::SetVMFlagDCmd(outputStream* output, bool heap) :
+                                   DCmdWithParser(output, heap),
+  _flag("flag name", "The name of the flag we want to set",
+        "STRING", true),
+  _value("string value", "The value we want to set", "STRING", false) {
+  _dcmdparser.add_dcmd_argument(&_flag);
+  _dcmdparser.add_dcmd_argument(&_value);
+}
+
+void SetVMFlagDCmd::execute(DCmdSource source, TRAPS) {
+  const char* val = NULL;
+  if (_value.value() != NULL) {
+    val = _value.value();
+  }
+
+  FormatBuffer<80> err_msg("%s", "");
+  int ret = WriteableFlags::set_flag(_flag.value(), val, Flag::MANAGEMENT, err_msg);
+
+  if (ret != WriteableFlags::SUCCESS) {
+    output()->print_cr("%s", err_msg.buffer());
+  }
+}
+
+int SetVMFlagDCmd::num_arguments() {
+  ResourceMark rm;
+  SetVMFlagDCmd* dcmd = new SetVMFlagDCmd(NULL, false);
+  if (dcmd != NULL) {
+    DCmdMark mark(dcmd);
+    return dcmd->_dcmdparser.num_arguments();
+  } else {
+    return 0;
+  }
+}
+
+void JVMTIDataDumpDCmd::execute(DCmdSource source, TRAPS) {
+  if (JvmtiExport::should_post_data_dump()) {
+    JvmtiExport::post_data_dump();
+  }
+}
+
 void PrintSystemPropertiesDCmd::execute(DCmdSource source, TRAPS) {
   // load sun.misc.VMSupport
   Symbol* klass = vmSymbols::sun_misc_VMSupport();
@@ -663,6 +709,38 @@
     JavaCalls::call_static(&result, ik, vmSymbols::stopRemoteAgent_name(), vmSymbols::void_method_signature(), CHECK);
 }
 
+JMXStatusDCmd::JMXStatusDCmd(outputStream *output, bool heap_allocated) :
+  DCmd(output, heap_allocated) {
+  // do nothing
+}
+
+void JMXStatusDCmd::execute(DCmdSource source, TRAPS) {
+  ResourceMark rm(THREAD);
+  HandleMark hm(THREAD);
+
+  // Load and initialize the sun.management.Agent class
+  // invoke getManagementAgentStatus() method to generate the status info
+  // throw java.lang.NoSuchMethodError if method doesn't exist
+
+  Handle loader = Handle(THREAD, SystemDictionary::java_system_loader());
+  Klass* k = SystemDictionary::resolve_or_fail(vmSymbols::sun_management_Agent(), loader, Handle(), true, CHECK);
+  instanceKlassHandle ik (THREAD, k);
+
+  JavaValue result(T_OBJECT);
+  JavaCalls::call_static(&result, ik, vmSymbols::getAgentStatus_name(), vmSymbols::void_string_signature(), CHECK);
+
+  jvalue* jv = (jvalue*) result.get_value_addr();
+  oop str = (oop) jv->l;
+  if (str != NULL) {
+      char* out = java_lang_String::as_utf8_string(str);
+      if (out) {
+          output()->print_cr("%s", out);
+          return;
+      }
+  }
+  output()->print_cr("Error obtaining management agent status");
+}
+
 VMDynamicLibrariesDCmd::VMDynamicLibrariesDCmd(outputStream *output, bool heap_allocated) :
   DCmd(output, heap_allocated) {
   // do nothing
--- a/hotspot/src/share/vm/services/diagnosticCommand.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/diagnosticCommand.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -131,6 +131,48 @@
   virtual void execute(DCmdSource source, TRAPS);
 };
 
+class SetVMFlagDCmd : public DCmdWithParser {
+protected:
+  DCmdArgument<char*> _flag;
+  DCmdArgument<char*> _value;
+
+public:
+  SetVMFlagDCmd(outputStream* output, bool heap);
+  static const char* name() { return "VM.set_flag"; }
+  static const char* description() {
+    return "Sets VM flag option using the provided value.";
+  }
+  static const char* impact() {
+    return "Low";
+  }
+  static const JavaPermission permission() {
+    JavaPermission p = {"java.lang.management.ManagementPermission",
+                        "control", NULL};
+    return p;
+  }
+  static int num_arguments();
+  virtual void execute(DCmdSource source, TRAPS);
+};
+
+class JVMTIDataDumpDCmd : public DCmd {
+public:
+  JVMTIDataDumpDCmd(outputStream* output, bool heap) : DCmd(output, heap) { }
+  static const char* name() { return "JVMTI.data_dump"; }
+  static const char* description() {
+    return "Signal the JVM to do a data-dump request for JVMTI.";
+  }
+  static const char* impact() {
+    return "High";
+  }
+  static const JavaPermission permission() {
+    JavaPermission p = {"java.lang.management.ManagementPermission",
+                        "monitor", NULL};
+    return p;
+  }
+  static int num_arguments() { return 0; }
+  virtual void execute(DCmdSource source, TRAPS);
+};
+
 class VMDynamicLibrariesDCmd : public DCmd {
 public:
   VMDynamicLibrariesDCmd(outputStream* output, bool heap);
@@ -410,6 +452,29 @@
   virtual void execute(DCmdSource source, TRAPS);
 };
 
+// Print the JMX system status
+class JMXStatusDCmd : public DCmd {
+public:
+  JMXStatusDCmd(outputStream *output, bool heap_allocated);
+
+  static const char *name() {
+    return "ManagementAgent.status";
+  }
+
+  static const char *description() {
+    return "Print the management agent status.";
+  }
+
+  static const JavaPermission permission() {
+    JavaPermission p = {"java.lang.management.ManagementPermission",
+                        "monitor", NULL};
+    return p;
+  }
+
+  virtual void execute(DCmdSource source, TRAPS);
+
+};
+
 class RotateGCLogDCmd : public DCmd {
 public:
   RotateGCLogDCmd(outputStream* output, bool heap) : DCmd(output, heap) {}
--- a/hotspot/src/share/vm/services/diagnosticFramework.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/diagnosticFramework.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -455,12 +455,12 @@
   }
   if (notif) {
 
-    Klass* k = Management::sun_management_ManagementFactoryHelper_klass(CHECK);
-    instanceKlassHandle mgmt_factory_helper_klass(THREAD, k);
+    Klass* k = Management::com_sun_management_internal_DiagnosticCommandImpl_klass(CHECK);
+    instanceKlassHandle dcmd_mbean_klass(THREAD, k);
 
     JavaValue result(T_OBJECT);
     JavaCalls::call_static(&result,
-            mgmt_factory_helper_klass,
+            dcmd_mbean_klass,
             vmSymbols::getDiagnosticCommandMBean_name(),
             vmSymbols::getDiagnosticCommandMBean_signature(),
             CHECK);
@@ -468,12 +468,9 @@
     instanceOop m = (instanceOop) result.get_jobject();
     instanceHandle dcmd_mbean_h(THREAD, m);
 
-    Klass* k2 = Management::sun_management_DiagnosticCommandImpl_klass(CHECK);
-    instanceKlassHandle dcmd_mbean_klass(THREAD, k2);
-
-    if (!dcmd_mbean_h->is_a(k2)) {
+    if (!dcmd_mbean_h->is_a(k)) {
       THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
-              "ManagementFactory.getDiagnosticCommandMBean didn't return a DiagnosticCommandMBean instance");
+              "DiagnosticCommandImpl.getDiagnosticCommandMBean didn't return a DiagnosticCommandMBean instance");
     }
 
     JavaValue result2(T_VOID);
--- a/hotspot/src/share/vm/services/gcNotifier.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/gcNotifier.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -77,7 +77,7 @@
 
 static Handle getGcInfoBuilder(GCMemoryManager *gcManager,TRAPS) {
 
-  Klass* k = Management::sun_management_GarbageCollectorImpl_klass(CHECK_NH);
+  Klass* k = Management::com_sun_management_internal_GarbageCollectorExtImpl_klass(CHECK_NH);
   instanceKlassHandle gcMBeanKlass (THREAD, k);
 
   instanceOop i = gcManager->get_memory_manager_instance(THREAD);
@@ -214,8 +214,8 @@
     Handle objName = java_lang_String::create_from_str(request->gcManager->name(), CHECK);
     Handle objAction = java_lang_String::create_from_str(request->gcAction, CHECK);
     Handle objCause = java_lang_String::create_from_str(request->gcCause, CHECK);
+    Klass* k = Management::com_sun_management_internal_GarbageCollectorExtImpl_klass(CHECK);
 
-    Klass* k = Management::sun_management_GarbageCollectorImpl_klass(CHECK);
     instanceKlassHandle gc_mbean_klass(THREAD, k);
 
     instanceOop gc_mbean = request->gcManager->get_memory_manager_instance(THREAD);
--- a/hotspot/src/share/vm/services/management.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/management.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -64,18 +64,16 @@
 PerfVariable* Management::_end_vm_creation_time = NULL;
 PerfVariable* Management::_vm_init_done_time = NULL;
 
+Klass* Management::_diagnosticCommandImpl_klass = NULL;
+Klass* Management::_garbageCollectorExtImpl_klass = NULL;
+Klass* Management::_garbageCollectorMXBean_klass = NULL;
+Klass* Management::_gcInfo_klass = NULL;
+Klass* Management::_managementFactoryHelper_klass = NULL;
+Klass* Management::_memoryManagerMXBean_klass = NULL;
+Klass* Management::_memoryPoolMXBean_klass = NULL;
+Klass* Management::_memoryUsage_klass = NULL;
 Klass* Management::_sensor_klass = NULL;
 Klass* Management::_threadInfo_klass = NULL;
-Klass* Management::_memoryUsage_klass = NULL;
-Klass* Management::_memoryPoolMXBean_klass = NULL;
-Klass* Management::_memoryManagerMXBean_klass = NULL;
-Klass* Management::_garbageCollectorMXBean_klass = NULL;
-Klass* Management::_managementFactory_klass = NULL;
-Klass* Management::_garbageCollectorImpl_klass = NULL;
-Klass* Management::_gcInfo_klass = NULL;
-Klass* Management::_diagnosticCommandImpl_klass = NULL;
-Klass* Management::_managementFactoryHelper_klass = NULL;
-
 
 jmmOptionalSupport Management::_optional_support = {0};
 TimeStamp Management::_stamp;
@@ -255,18 +253,18 @@
   return _sensor_klass;
 }
 
-Klass* Management::sun_management_ManagementFactory_klass(TRAPS) {
-  if (_managementFactory_klass == NULL) {
-    _managementFactory_klass = load_and_initialize_klass(vmSymbols::sun_management_ManagementFactory(), CHECK_NULL);
+Klass* Management::sun_management_ManagementFactoryHelper_klass(TRAPS) {
+  if (_managementFactoryHelper_klass == NULL) {
+    _managementFactoryHelper_klass = load_and_initialize_klass(vmSymbols::sun_management_ManagementFactoryHelper(), CHECK_NULL);
   }
-  return _managementFactory_klass;
+  return _managementFactoryHelper_klass;
 }
 
-Klass* Management::sun_management_GarbageCollectorImpl_klass(TRAPS) {
-  if (_garbageCollectorImpl_klass == NULL) {
-    _garbageCollectorImpl_klass = load_and_initialize_klass(vmSymbols::sun_management_GarbageCollectorImpl(), CHECK_NULL);
+Klass* Management::com_sun_management_internal_GarbageCollectorExtImpl_klass(TRAPS) {
+  if (_garbageCollectorExtImpl_klass == NULL) {
+    _garbageCollectorExtImpl_klass = load_and_initialize_klass(vmSymbols::com_sun_management_internal_GarbageCollectorExtImpl(), CHECK_NULL);
   }
-  return _garbageCollectorImpl_klass;
+  return _garbageCollectorExtImpl_klass;
 }
 
 Klass* Management::com_sun_management_GcInfo_klass(TRAPS) {
@@ -276,20 +274,13 @@
   return _gcInfo_klass;
 }
 
-Klass* Management::sun_management_DiagnosticCommandImpl_klass(TRAPS) {
+Klass* Management::com_sun_management_internal_DiagnosticCommandImpl_klass(TRAPS) {
   if (_diagnosticCommandImpl_klass == NULL) {
-    _diagnosticCommandImpl_klass = load_and_initialize_klass(vmSymbols::sun_management_DiagnosticCommandImpl(), CHECK_NULL);
+    _diagnosticCommandImpl_klass = load_and_initialize_klass(vmSymbols::com_sun_management_internal_DiagnosticCommandImpl(), CHECK_NULL);
   }
   return _diagnosticCommandImpl_klass;
 }
 
-Klass* Management::sun_management_ManagementFactoryHelper_klass(TRAPS) {
-  if (_managementFactoryHelper_klass == NULL) {
-    _managementFactoryHelper_klass = load_and_initialize_klass(vmSymbols::sun_management_ManagementFactoryHelper(), CHECK_NULL);
-  }
-  return _managementFactoryHelper_klass;
-}
-
 static void initialize_ThreadInfo_constructor_arguments(JavaCallArguments* args, ThreadSnapshot* snapshot, TRAPS) {
   Handle snapshot_thread(THREAD, snapshot->threadObj());
 
@@ -1109,6 +1100,8 @@
                            bool with_locked_monitors,
                            bool with_locked_synchronizers,
                            TRAPS) {
+  // no need to actually perform thread dump if no TIDs are specified
+  if (num_threads == 0) return;
 
   // First get an array of threadObj handles.
   // A JavaThread may terminate before we get the stack trace.
--- a/hotspot/src/share/vm/services/management.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/management.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,18 +42,16 @@
   static TimeStamp          _stamp; // Timestamp since vm init done time
 
   // Management klasses
+  static Klass*             _diagnosticCommandImpl_klass;
+  static Klass*             _garbageCollectorExtImpl_klass;
+  static Klass*             _garbageCollectorMXBean_klass;
+  static Klass*             _gcInfo_klass;
+  static Klass*             _managementFactoryHelper_klass;
+  static Klass*             _memoryManagerMXBean_klass;
+  static Klass*             _memoryPoolMXBean_klass;
+  static Klass*             _memoryUsage_klass;
   static Klass*             _sensor_klass;
   static Klass*             _threadInfo_klass;
-  static Klass*             _memoryUsage_klass;
-  static Klass*             _memoryPoolMXBean_klass;
-  static Klass*             _memoryManagerMXBean_klass;
-  static Klass*             _garbageCollectorMXBean_klass;
-  static Klass*             _managementFactory_klass;
-  static Klass*             _garbageCollectorImpl_klass;
-  static Klass*             _diagnosticCommandImpl_klass;
-  static Klass*             _managementFactoryHelper_klass;
-  static Klass*             _gcInfo_klass;
-
   static Klass* load_and_initialize_klass(Symbol* sh, TRAPS);
 
 public:
@@ -93,17 +91,15 @@
   static Klass* java_lang_management_MemoryPoolMXBean_klass(TRAPS);
   static Klass* java_lang_management_MemoryManagerMXBean_klass(TRAPS);
   static Klass* java_lang_management_GarbageCollectorMXBean_klass(TRAPS);
+  static Klass* sun_management_ManagementFactoryHelper_klass(TRAPS)
+      NOT_MANAGEMENT_RETURN_(NULL);
   static Klass* sun_management_Sensor_klass(TRAPS)
       NOT_MANAGEMENT_RETURN_(NULL);
-  static Klass* sun_management_ManagementFactory_klass(TRAPS)
-      NOT_MANAGEMENT_RETURN_(NULL);
-  static Klass* sun_management_GarbageCollectorImpl_klass(TRAPS)
+  static Klass* com_sun_management_internal_GarbageCollectorExtImpl_klass(TRAPS)
       NOT_MANAGEMENT_RETURN_(NULL);
   static Klass* com_sun_management_GcInfo_klass(TRAPS)
       NOT_MANAGEMENT_RETURN_(NULL);
-  static Klass* sun_management_DiagnosticCommandImpl_klass(TRAPS)
-      NOT_MANAGEMENT_RETURN_(NULL);
-  static Klass* sun_management_ManagementFactoryHelper_klass(TRAPS)
+  static Klass* com_sun_management_internal_DiagnosticCommandImpl_klass(TRAPS)
       NOT_MANAGEMENT_RETURN_(NULL);
 
   static instanceOop create_thread_info_instance(ThreadSnapshot* snapshot, TRAPS);
--- a/hotspot/src/share/vm/services/memTracker.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/memTracker.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -47,9 +47,9 @@
 NMT_TrackingLevel MemTracker::init_tracking_level() {
   NMT_TrackingLevel level = NMT_off;
   char buf[64];
-  char nmt_option[64];
   jio_snprintf(buf, sizeof(buf), "NMT_LEVEL_%d", os::current_process_id());
-  if (os::getenv(buf, nmt_option, sizeof(nmt_option))) {
+  const char *nmt_option = ::getenv(buf);
+  if (nmt_option != NULL) {
     if (strcmp(nmt_option, "summary") == 0) {
       level = NMT_summary;
     } else if (strcmp(nmt_option, "detail") == 0) {
@@ -311,4 +311,3 @@
   out->print_cr(" ");
   walker.report_statistics(out);
 }
-
--- a/hotspot/src/share/vm/services/memoryManager.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/memoryManager.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -98,8 +98,7 @@
   if (mgr_obj == NULL) {
     // It's ok for more than one thread to execute the code up to the locked region.
     // Extra manager instances will just be gc'ed.
-    Klass* k = Management::sun_management_ManagementFactory_klass(CHECK_0);
-    instanceKlassHandle ik(THREAD, k);
+    Klass* k = Management::sun_management_ManagementFactoryHelper_klass(CHECK_0);
 
     Handle mgr_name = java_lang_String::create_from_str(name(), CHECK_0);
 
@@ -110,7 +109,14 @@
     Symbol* method_name = NULL;
     Symbol* signature = NULL;
     if (is_gc_memory_manager()) {
+      Klass* extKlass = Management::com_sun_management_internal_GarbageCollectorExtImpl_klass(CHECK_0);
+      // com.sun.management.GarbageCollectorMXBean is in jdk.management module which may not be present.
+      if (extKlass != NULL) {
+        k = extKlass;
+      }
+
       method_name = vmSymbols::createGarbageCollector_name();
+
       signature = vmSymbols::createGarbageCollector_signature();
       args.push_oop(Handle());      // Argument 2 (for future extension)
     } else {
@@ -118,6 +124,8 @@
       signature = vmSymbols::createMemoryManager_signature();
     }
 
+    instanceKlassHandle ik(THREAD, k);
+
     JavaCalls::call_static(&result,
                            ik,
                            method_name,
--- a/hotspot/src/share/vm/services/memoryManager.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/memoryManager.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -53,20 +53,6 @@
   volatile instanceOop _memory_mgr_obj;
 
 public:
-  enum Name {
-    Abstract,
-    CodeCache,
-    Metaspace,
-    Copy,
-    MarkSweepCompact,
-    ParNew,
-    ConcurrentMarkSweep,
-    PSScavenge,
-    PSMarkSweep,
-    G1YoungGen,
-    G1OldGen
-  };
-
   MemoryManager();
 
   int num_memory_pools() const           { return _num_pools; }
@@ -80,7 +66,6 @@
   bool is_manager(instanceHandle mh)     { return mh() == _memory_mgr_obj; }
 
   virtual instanceOop get_memory_manager_instance(TRAPS);
-  virtual MemoryManager::Name kind()     { return MemoryManager::Abstract; }
   virtual bool is_gc_memory_manager()    { return false; }
   virtual const char* name() = 0;
 
@@ -98,7 +83,6 @@
   static GCMemoryManager* get_psMarkSweep_memory_manager();
   static GCMemoryManager* get_g1YoungGen_memory_manager();
   static GCMemoryManager* get_g1OldGen_memory_manager();
-
 };
 
 class CodeCacheMemoryManager : public MemoryManager {
@@ -106,16 +90,14 @@
 public:
   CodeCacheMemoryManager() : MemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::CodeCache; }
-  const char* name()         { return "CodeCacheManager"; }
+  const char* name() { return "CodeCacheManager"; }
 };
 
 class MetaspaceMemoryManager : public MemoryManager {
 public:
   MetaspaceMemoryManager() : MemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::Metaspace; }
-  const char *name()         { return "Metaspace Manager"; }
+  const char* name() { return "Metaspace Manager"; }
 };
 
 class GCStatInfo : public ResourceObj {
@@ -202,7 +184,6 @@
 
   void set_notification_enabled(bool enabled) { _notification_enabled = enabled; }
   bool is_notification_enabled() { return _notification_enabled; }
-  virtual MemoryManager::Name kind() = 0;
 };
 
 // These subclasses of GCMemoryManager are defined to include
@@ -213,8 +194,7 @@
 public:
   CopyMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::Copy; }
-  const char* name()         { return "Copy"; }
+  const char* name() { return "Copy"; }
 };
 
 class MSCMemoryManager : public GCMemoryManager {
@@ -222,9 +202,7 @@
 public:
   MSCMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::MarkSweepCompact; }
-  const char* name()         { return "MarkSweepCompact"; }
-
+  const char* name() { return "MarkSweepCompact"; }
 };
 
 class ParNewMemoryManager : public GCMemoryManager {
@@ -232,9 +210,7 @@
 public:
   ParNewMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::ParNew; }
-  const char* name()         { return "ParNew"; }
-
+  const char* name() { return "ParNew"; }
 };
 
 class CMSMemoryManager : public GCMemoryManager {
@@ -242,9 +218,7 @@
 public:
   CMSMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::ConcurrentMarkSweep; }
-  const char* name()         { return "ConcurrentMarkSweep";}
-
+  const char* name() { return "ConcurrentMarkSweep";}
 };
 
 class PSScavengeMemoryManager : public GCMemoryManager {
@@ -252,9 +226,7 @@
 public:
   PSScavengeMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::PSScavenge; }
-  const char* name()         { return "PS Scavenge"; }
-
+  const char* name() { return "PS Scavenge"; }
 };
 
 class PSMarkSweepMemoryManager : public GCMemoryManager {
@@ -262,8 +234,7 @@
 public:
   PSMarkSweepMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::PSMarkSweep; }
-  const char* name()         { return "PS MarkSweep"; }
+  const char* name() { return "PS MarkSweep"; }
 };
 
 class G1YoungGenMemoryManager : public GCMemoryManager {
@@ -271,8 +242,7 @@
 public:
   G1YoungGenMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::G1YoungGen; }
-  const char* name()         { return "G1 Young Generation"; }
+  const char* name() { return "G1 Young Generation"; }
 };
 
 class G1OldGenMemoryManager : public GCMemoryManager {
@@ -280,8 +250,7 @@
 public:
   G1OldGenMemoryManager() : GCMemoryManager() {}
 
-  MemoryManager::Name kind() { return MemoryManager::G1OldGen; }
-  const char* name()         { return "G1 Old Generation"; }
+  const char* name() { return "G1 Old Generation"; }
 };
 
 #endif // SHARE_VM_SERVICES_MEMORYMANAGER_HPP
--- a/hotspot/src/share/vm/services/memoryPool.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/memoryPool.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -86,7 +86,7 @@
   if (pool_obj == NULL) {
     // It's ok for more than one thread to execute the code up to the locked region.
     // Extra pool instances will just be gc'ed.
-    Klass* k = Management::sun_management_ManagementFactory_klass(CHECK_NULL);
+    Klass* k = Management::sun_management_ManagementFactoryHelper_klass(CHECK_NULL);
     instanceKlassHandle ik(THREAD, k);
 
     Handle pool_name = java_lang_String::create_from_str(_name, CHECK_NULL);
--- a/hotspot/src/share/vm/services/memoryService.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/services/memoryService.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -126,9 +126,8 @@
   CollectorPolicy* policy = heap->collector_policy();
 
   assert(policy->is_generation_policy(), "Only support two generations");
-  guarantee(heap->n_gens() == 2, "Only support two-generation heap");
-
   GenCollectorPolicy* gen_policy = policy->as_generation_policy();
+  guarantee(gen_policy->number_of_generations() == 2, "Only support two-generation heap");
   if (gen_policy != NULL) {
     Generation::Name kind = gen_policy->young_gen_spec()->name();
     switch (kind) {
--- a/hotspot/src/share/vm/utilities/globalDefinitions.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/globalDefinitions.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -407,14 +407,6 @@
 
 // Machine dependent stuff
 
-#if defined(X86) && defined(COMPILER2) && !defined(JAVASE_EMBEDDED)
-// Include Restricted Transactional Memory lock eliding optimization
-#define INCLUDE_RTM_OPT 1
-#define RTM_OPT_ONLY(code) code
-#else
-#define INCLUDE_RTM_OPT 0
-#define RTM_OPT_ONLY(code)
-#endif
 // States of Restricted Transactional Memory usage.
 enum RTMState {
   NoRTM      = 0x2, // Don't use RTM
@@ -446,6 +438,15 @@
 # include "globalDefinitions_aarch64.hpp"
 #endif
 
+#ifndef INCLUDE_RTM_OPT
+#define INCLUDE_RTM_OPT 0
+#endif
+#if INCLUDE_RTM_OPT
+#define RTM_OPT_ONLY(code) code
+#else
+#define RTM_OPT_ONLY(code)
+#endif
+
 // To assure the IRIW property on processors that are not multiple copy
 // atomic, sync instructions must be issued between volatile reads to
 // assure their ordering, instead of after volatile stores.
@@ -1345,6 +1346,13 @@
   return (intptr_t) p;
 }
 
+// swap a & b
+template<class T> static void swap(T& a, T& b) {
+  T tmp = a;
+  a = b;
+  b = tmp;
+}
+
 // Printf-style formatters for fixed- and variable-width types as pointers and
 // integers.  These are derived from the definitions in inttypes.h.  If the platform
 // doesn't provide appropriate definitions, they should be provided in
--- a/hotspot/src/share/vm/utilities/growableArray.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/growableArray.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -168,6 +168,8 @@
   GrowableArray(int initial_size, bool C_heap = false, MEMFLAGS F = mtInternal)
     : GenericGrowableArray(initial_size, 0, C_heap, F) {
     _data = (E*)raw_allocate(sizeof(E));
+// Needed for Visual Studio 2012 and older
+#pragma warning(suppress: 4345)
     for (int i = 0; i < _max; i++) ::new ((void*)&_data[i]) E();
   }
 
@@ -385,6 +387,8 @@
     E* newData = (E*)raw_allocate(sizeof(E));
     int i = 0;
     for (     ; i < _len; i++) ::new ((void*)&newData[i]) E(_data[i]);
+// Needed for Visual Studio 2012 and older
+#pragma warning(suppress: 4345)
     for (     ; i < _max; i++) ::new ((void*)&newData[i]) E();
     for (i = 0; i < old_max; i++) _data[i].~E();
     if (on_C_heap() && _data != NULL) {
--- a/hotspot/src/share/vm/utilities/ostream.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/ostream.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -109,7 +109,7 @@
   }
   if (add_cr) {
     if (result != buffer) {
-      strncpy(buffer, result, buflen);
+      memcpy(buffer, result, result_len);
       result = buffer;
     }
     buffer[result_len++] = '\n';
@@ -334,15 +334,19 @@
       assert(rm == NULL || Thread::current()->current_resource_mark() == rm,
              "stringStream is re-allocated with a different ResourceMark");
       buffer = NEW_RESOURCE_ARRAY(char, end);
-      strncpy(buffer, oldbuf, buffer_pos);
+      if (buffer_pos > 0) {
+        memcpy(buffer, oldbuf, buffer_pos);
+      }
       buffer_length = end;
     }
   }
   // invariant: buffer is always null-terminated
   guarantee(buffer_pos + write_len + 1 <= buffer_length, "stringStream oob");
-  buffer[buffer_pos + write_len] = 0;
-  strncpy(buffer + buffer_pos, s, write_len);
-  buffer_pos += write_len;
+  if (write_len > 0) {
+    buffer[buffer_pos + write_len] = 0;
+    memcpy(buffer + buffer_pos, s, write_len);
+    buffer_pos += write_len;
+  }
 
   // Note that the following does not depend on write_len.
   // This means that position and count get updated
@@ -978,8 +982,13 @@
       xs->head("properties");
       // Print it as a java-style property list.
       // System properties don't generally contain newlines, so don't bother with unparsing.
+      outputStream *text = xs->text();
       for (SystemProperty* p = Arguments::system_properties(); p != NULL; p = p->next()) {
-        xs->text()->print_cr("%s=%s", p->key(), p->value());
+        // Print in two stages to avoid problems with long
+        // keys/values.
+        text->print_raw(p->key());
+        text->put('=');
+        text->print_raw_cr(p->value());
       }
       xs->tail("properties");
     }
--- a/hotspot/src/share/vm/utilities/stack.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/stack.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -96,11 +96,16 @@
 public:
   friend class StackIterator<E, F>;
 
+  // Number of elements that fit in 4K bytes minus the size of two pointers
+  // (link field and malloc header).
+  static const size_t _default_segment_size =  (4096 - 2 * sizeof(E*)) / sizeof(E);
+  static size_t default_segment_size() { return _default_segment_size; }
+
   // segment_size:    number of items per segment
   // max_cache_size:  maxmium number of *segments* to cache
   // max_size:        maximum number of items allowed, rounded to a multiple of
   //                  the segment size (0 == unlimited)
-  inline Stack(size_t segment_size = default_segment_size(),
+  inline Stack(size_t segment_size = _default_segment_size,
                size_t max_cache_size = 4, size_t max_size = 0);
   inline ~Stack() { clear(true); }
 
@@ -122,8 +127,6 @@
   // clear_cache is true, also release any cached segments.
   void clear(bool clear_cache = false);
 
-  static inline size_t default_segment_size();
-
 protected:
   // Each segment includes space for _seg_size elements followed by a link
   // (pointer) to the previous segment; the space is allocated as a single block
--- a/hotspot/src/share/vm/utilities/stack.inline.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/stack.inline.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -86,14 +86,6 @@
 }
 
 template <class E, MEMFLAGS F>
-size_t Stack<E, F>::default_segment_size()
-{
-  // Number of elements that fit in 4K bytes minus the size of two pointers
-  // (link field and malloc header).
-  return (4096 - 2 * sizeof(E*)) / sizeof(E);
-}
-
-template <class E, MEMFLAGS F>
 size_t Stack<E, F>::adjust_segment_size(size_t seg_size)
 {
   const size_t elem_sz = sizeof(E);
--- a/hotspot/src/share/vm/utilities/vmError.cpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/vmError.cpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -217,7 +217,7 @@
 bool VMError::coredump_status;
 char VMError::coredump_message[O_BUFLEN];
 
-void VMError::report_coredump_status(const char* message, bool status) {
+void VMError::record_coredump_status(const char* message, bool status) {
   coredump_status = status;
   strncpy(coredump_message, message, sizeof(coredump_message));
   coredump_message[sizeof(coredump_message)-1] = 0;
@@ -231,7 +231,7 @@
 
   if (signame) {
     jio_snprintf(buf, buflen,
-                 "%s (0x%x) at pc=" PTR_FORMAT ", pid=%d, tid=" UINTX_FORMAT,
+                 "%s (0x%x) at pc=" PTR_FORMAT ", pid=%d, tid=" INTPTR_FORMAT,
                  signame, _id, _pc,
                  os::current_process_id(), os::current_thread_id());
   } else if (_filename != NULL && _lineno > 0) {
@@ -239,7 +239,7 @@
     char separator = os::file_separator()[0];
     const char *p = strrchr(_filename, separator);
     int n = jio_snprintf(buf, buflen,
-                         "Internal Error at %s:%d, pid=%d, tid=" UINTX_FORMAT,
+                         "Internal Error at %s:%d, pid=%d, tid=" INTPTR_FORMAT,
                          p ? p + 1 : _filename, _lineno,
                          os::current_process_id(), os::current_thread_id());
     if (n >= 0 && n < buflen && _message) {
@@ -253,7 +253,7 @@
     }
   } else {
     jio_snprintf(buf, buflen,
-                 "Internal Error (0x%x), pid=%d, tid=" UINTX_FORMAT,
+                 "Internal Error (0x%x), pid=%d, tid=" INTPTR_FORMAT,
                  _id, os::current_process_id(), os::current_thread_id());
   }
 
@@ -463,14 +463,7 @@
 #else
          const char *file = _filename;
 #endif
-         size_t len = strlen(file);
-         size_t buflen = sizeof(buf);
-
-         strncpy(buf, file, buflen);
-         if (len + 10 < buflen) {
-           sprintf(buf + len, ":%d", _lineno);
-         }
-         st->print(" (%s)", buf);
+         st->print(" (%s:%d)", file, _lineno);
        } else {
          st->print(" (0x%x)", _id);
        }
@@ -480,7 +473,7 @@
 
      // process id, thread id
      st->print(", pid=%d", os::current_process_id());
-     st->print(", tid=" UINTX_FORMAT, os::current_thread_id());
+     st->print(", tid=" INTPTR_FORMAT, os::current_thread_id());
      st->cr();
 
   STEP(40, "(printing error message)")
@@ -525,10 +518,14 @@
      }
   STEP(63, "(printing core file information)")
     st->print("# ");
-    if (coredump_status) {
-      st->print("Core dump written. Default location: %s", coredump_message);
+    if (CreateCoredumpOnCrash) {
+      if (coredump_status) {
+        st->print("Core dump will be written. %s", coredump_message);
+      } else {
+        st->print("No core dump will be written. %s", coredump_message);
+      }
     } else {
-      st->print("Failed to write core dump. %s", coredump_message);
+      st->print("CreateCoredumpOnCrash turned off, no core file dumped");
     }
     st->cr();
     st->print_cr("#");
@@ -768,7 +765,7 @@
   STEP(220, "(printing environment variables)" )
 
      if (_verbose) {
-       os::print_environment_variables(st, env_list, buf, sizeof(buf));
+       os::print_environment_variables(st, env_list);
        st->cr();
      }
 
@@ -918,7 +915,7 @@
   static bool transmit_report_done = false; // done error reporting
 
   if (SuppressFatalErrorMessage) {
-      os::abort();
+      os::abort(CreateCoredumpOnCrash);
   }
   jlong mytid = os::current_thread_id();
   if (first_error == NULL &&
@@ -936,8 +933,7 @@
       ShowMessageBoxOnError = false;
     }
 
-    // Write a minidump on Windows, check core dump limits on Linux/Solaris
-    os::check_or_create_dump(_siginfo, _context, buffer, sizeof(buffer));
+    os::check_dump_limit(buffer, sizeof(buffer));
 
     // reset signal handlers or exception filter; make sure recursive crashes
     // are handled properly.
@@ -1108,7 +1104,7 @@
     if (!skip_os_abort) {
       skip_os_abort = true;
       bool dump_core = should_report_bug(first_error->_id);
-      os::abort(dump_core);
+      os::abort(dump_core && CreateCoredumpOnCrash, _siginfo, _context);
     }
 
     // if os::abort() doesn't abort, try os::die();
--- a/hotspot/src/share/vm/utilities/vmError.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/vmError.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -117,8 +117,8 @@
   // return a string to describe the error
   char *error_string(char* buf, int buflen);
 
-  // Report status of core/minidump
-  static void report_coredump_status(const char* message, bool status);
+  // Record status of core/minidump
+  static void record_coredump_status(const char* message, bool status);
 
   // main error reporting function
   void report_and_die();
--- a/hotspot/src/share/vm/utilities/workgroup.hpp	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/src/share/vm/utilities/workgroup.hpp	Wed Jul 05 20:32:21 2017 +0200
@@ -340,18 +340,6 @@
   }
 };
 
-// Work gangs in garbage collectors: 2009-06-10
-//
-// SharedHeap - work gang for stop-the-world parallel collection.
-//   Used by
-//     ParNewGeneration
-//     CMSParRemarkTask
-//     CMSRefProcTaskExecutor
-//     G1CollectedHeap
-//     G1ParFinalCountTask
-// ConcurrentMark
-// CMSCollector
-
 // A class that acts as a synchronisation barrier. Workers enter
 // the barrier and must wait until all other workers have entered
 // before any of them may leave.
--- a/hotspot/test/Makefile	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/Makefile	Wed Jul 05 20:32:21 2017 +0200
@@ -279,6 +279,8 @@
 # Default JTREG to run
 JTREG = $(JT_HOME)/bin/jtreg
 
+# Use agent mode
+JTREG_BASIC_OPTIONS += -agentvm
 # Only run automatic tests
 JTREG_BASIC_OPTIONS += -a
 # Report details on all failed or error tests, times too
@@ -344,6 +346,34 @@
 
 ################################################################
 
+# basicvmtest (make sure various basic java options work)
+
+# Set up the directory in which the jvm directories live (client/, server/, etc.)
+ifeq ($(PLATFORM),windows)
+JVMS_DIR := $(PRODUCT_HOME)/bin
+else ifeq ($(PLATFORM),bsd)
+JVMS_DIR := $(PRODUCT_HOME)/lib
+else
+# The jvms live in the architecture directory (amd64, sparcv9,
+# etc.). By using a wildcard there's no need to figure out the exact
+# name of that directory.
+JVMS_DIR := $(PRODUCT_HOME)/lib/*
+endif
+
+# Use the existance of a directory as a sign that jvm variant is available
+CANDIDATE_JVM_VARIANTS := client minimal server
+JVM_VARIANTS := $(strip $(foreach x,$(CANDIDATE_JVM_VARIANTS),$(if $(wildcard $(JVMS_DIR)/$(x)),$(x))))
+
+hotspot_basicvmtest:
+	for variant in $(JVM_VARIANTS);                                           \
+	do                                                                        \
+	    $(MAKE) JAVA_ARGS="$(JAVA_ARGS) -$$variant" hotspot_$${variant}test;  \
+	done
+
+PHONY_LIST += hotspot_basicvmtest
+
+################################################################
+
 # clienttest (make sure various basic java client options work)
 
 hotspot_clienttest clienttest: sanitytest
--- a/hotspot/test/TEST.groups	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/TEST.groups	Wed Jul 05 20:32:21 2017 +0200
@@ -394,6 +394,7 @@
 hotspot_gc = \
   sanity/ExecuteInternalVMTests.java \
   gc/ \
+  -gc/g1/TestGreyReclaimedHumongousObjects.java \
   -gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java
 
 hotspot_gc_closed = \
@@ -416,9 +417,7 @@
  -runtime/SharedArchiveFile/CdsSameObjectAlignment.java \
  -runtime/SharedArchiveFile/DefaultUseWithClient.java \
  -runtime/Thread/CancellableThreadTest.java \
- -runtime/7158988/FieldMonitor.java
-
-hotspot_runtime_closed = \
+ -runtime/7158988/FieldMonitor.java \
   sanity/ExecuteInternalVMTests.java \
   testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/arraycopy/TestArrayCopyBadReexec.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8073866
+ * @summary Fix for 8064703 may also cause stores between the allocation and arraycopy to be rexecuted after a deoptimization
+ * @run main/othervm -XX:-BackgroundCompilation -XX:-UseOnStackReplacement TestArrayCopyBadReexec
+ *
+ */
+
+public class TestArrayCopyBadReexec {
+
+    static int val;
+
+    static int[] m1(int[] src, int l) {
+        if (src == null) {
+            return null;
+        }
+        int[] dest = new int[10];
+        val++;
+        try {
+            System.arraycopy(src, 0, dest, 0, l);
+        } catch (IndexOutOfBoundsException npe) {
+        }
+        return dest;
+    }
+
+    static public void main(String[] args) {
+        int[] src = new int[10];
+        int[] res = null;
+        boolean success = true;
+
+        for (int i = 0; i < 20000; i++) {
+            m1(src, 10);
+        }
+
+        int val_before = val;
+
+        m1(src, -1);
+
+        if (val - val_before != 1) {
+            System.out.println("Bad increment: " + (val - val_before));
+            throw new RuntimeException("Test failed");
+        }
+    }
+}
--- a/hotspot/test/compiler/arraycopy/TestArrayCopyNoInit.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/arraycopy/TestArrayCopyNoInit.java	Wed Jul 05 20:32:21 2017 +0200
@@ -76,7 +76,7 @@
     static TestArrayCopyNoInit[] m5(Object[] src) {
         Object tmp = src[0];
         TestArrayCopyNoInit[] dest = new TestArrayCopyNoInit[10];
-        System.arraycopy(src, 0, dest, 0, 0);
+        System.arraycopy(src, 0, dest, 0, 10);
         return dest;
     }
 
@@ -110,7 +110,7 @@
     static H[] m6(Object[] src) {
         Object tmp = src[0];
         H[] dest = new H[10];
-        System.arraycopy(src, 0, dest, 0, 0);
+        System.arraycopy(src, 0, dest, 0, 10);
         return dest;
     }
 
--- a/hotspot/test/compiler/arraycopy/TestArrayCopyNoInitDeopt.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/arraycopy/TestArrayCopyNoInitDeopt.java	Wed Jul 05 20:32:21 2017 +0200
@@ -116,44 +116,46 @@
                 throw new RuntimeException("m1 deoptimized again");
             }
 
-            // Same test as above but with speculative types
+            if (WHITE_BOX.getUintxVMFlag("TypeProfileLevel") == 20) {
+                // Same test as above but with speculative types
 
-            // Warm up & make sure we collect type profiling
-            for (int i = 0; i < 20000; i++) {
-                m2(src);
-            }
+                // Warm up & make sure we collect type profiling
+                for (int i = 0; i < 20000; i++) {
+                    m2(src);
+                }
 
-            // And make sure m2 is compiled by C2
-            WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
+                // And make sure m2 is compiled by C2
+                WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
 
-            if (!WHITE_BOX.isMethodCompiled(method_m2)) {
-                throw new RuntimeException("m2 not compiled");
-            }
+                if (!WHITE_BOX.isMethodCompiled(method_m2)) {
+                    throw new RuntimeException("m2 not compiled");
+                }
 
-            // should deoptimize for speculative type check
-            if (!deoptimize(method_m2, src_obj)) {
-                throw new RuntimeException("m2 not deoptimized");
-            }
+                // should deoptimize for speculative type check
+                if (!deoptimize(method_m2, src_obj)) {
+                    throw new RuntimeException("m2 not deoptimized");
+                }
 
-            WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
+                WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
 
-            if (!WHITE_BOX.isMethodCompiled(method_m2)) {
-                throw new RuntimeException("m2 not recompiled");
-            }
+                if (!WHITE_BOX.isMethodCompiled(method_m2)) {
+                    throw new RuntimeException("m2 not recompiled");
+                }
 
-            // should deoptimize for actual type check
-            if (!deoptimize(method_m2, src_obj)) {
-                throw new RuntimeException("m2 not deoptimized");
-            }
+                // should deoptimize for actual type check
+                if (!deoptimize(method_m2, src_obj)) {
+                    throw new RuntimeException("m2 not deoptimized");
+                }
 
-            WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
+                WHITE_BOX.enqueueMethodForCompilation(method_m2, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
 
-            if (!WHITE_BOX.isMethodCompiled(method_m2)) {
-                throw new RuntimeException("m2 not recompiled");
-            }
+                if (!WHITE_BOX.isMethodCompiled(method_m2)) {
+                    throw new RuntimeException("m2 not recompiled");
+                }
 
-            if (deoptimize(method_m2, src_obj)) {
-                throw new RuntimeException("m2 deoptimized again");
+                if (deoptimize(method_m2, src_obj)) {
+                    throw new RuntimeException("m2 deoptimized again");
+                }
             }
         }
     }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/arraycopy/TestArrayCopyOfStopped.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8074676
+ * @summary after guards in Arrays.copyOf() intrinsic, control may become top
+ * @run main/othervm -XX:-BackgroundCompilation -XX:-UseOnStackReplacement TestArrayCopyOfStopped
+ *
+ */
+
+import java.util.Arrays;
+
+public class TestArrayCopyOfStopped {
+    static class A {
+    }
+
+    static class B {
+    }
+
+    static final B[] array_of_bs = new B[10];
+    static final A[] array_of_as = new A[10];
+
+    static Object[] m1_helper(Object[] array, boolean flag) {
+        if (flag) {
+            return Arrays.copyOf(array, 10, A[].class);
+        }
+        return null;
+    }
+
+    static Object[] m1(boolean flag) {
+        return m1_helper(array_of_bs, flag);
+    }
+
+    public static void main(String[] args) {
+        for (int i = 0; i < 20000; i++) {
+            m1_helper(array_of_as, (i%2) == 0);
+        }
+
+        for (int i = 0; i < 20000; i++) {
+            m1(false);
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/arraycopy/TestArrayCopyStoppedAfterGuards.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8075921
+ * @summary control becomes top after arraycopy guards and confuses tighly coupled allocation logic
+ * @run main/othervm -Xcomp -XX:CompileOnly=TestArrayCopyStoppedAfterGuards.test,System.arraycopy TestArrayCopyStoppedAfterGuards
+ *
+ */
+
+public class TestArrayCopyStoppedAfterGuards {
+
+    static void test() {
+        Object src = new Object();
+        int[] dst = new int[10];
+        System.arraycopy(src, 0, dst, 0, 10);
+    }
+
+    static public void main(String[] args) {
+        // warmup
+        Object o = new Object();
+        int[] src = new int[10];
+        int[] dst = new int[10];
+        System.arraycopy(src, 0, dst, 0, 10);
+
+        try {
+            test();
+        } catch(ArrayStoreException ase) {}
+    }
+}
--- a/hotspot/test/compiler/codecache/jmx/PoolsIndependenceTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/codecache/jmx/PoolsIndependenceTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -37,7 +37,6 @@
 
 /*
  * @test PoolsIndependenceTest
- * @ignore 8068385
  * @library /testlibrary /../../test/lib
  * @build PoolsIndependenceTest
  * @run main ClassFileInstaller sun.hotspot.WhiteBox
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/inlining/DefaultMethodsDependencies.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,63 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8069263
+ * @summary Deoptimization between array allocation and arraycopy may result in non initialized array
+ * @run main/othervm -XX:-BackgroundCompilation -XX:CompileOnly=DefaultMethodsDependencies::test -XX:CompileOnly=DefaultMethodsDependencies$I2::m1 DefaultMethodsDependencies
+ *
+ */
+
+public class DefaultMethodsDependencies {
+
+    interface I1 {
+        void m1();
+        // triggers processing of default methods in C1
+        default void m2() {
+        }
+    }
+
+    interface I2 extends I1 {
+        // added to C2 as default method
+        default void m1() {
+        }
+    }
+
+    static abstract class C1 implements I1 {
+    }
+
+    static class C2 extends C1 implements I2 {
+    }
+
+    static void test(C1 obj) {
+        obj.m1();
+    }
+
+    static public void main(String[] args) {
+        C2 obj = new C2();
+        for (int i = 0; i < 20000; i++) {
+            test(obj);
+        }
+    }
+}
--- a/hotspot/test/compiler/intrinsics/multiplytolen/TestMultiplyToLen.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/intrinsics/multiplytolen/TestMultiplyToLen.java	Wed Jul 05 20:32:21 2017 +0200
@@ -34,6 +34,7 @@
  *      -XX:CompileCommand=inline,java.math.BigInteger::multiply TestMultiplyToLen
  */
 
+import java.util.Arrays;
 import java.util.Random;
 import java.math.*;
 
@@ -97,12 +98,36 @@
         newsum = newsum.add(newres);
 
         if (!bytecompare(oldres,newres)) {
+          System.out.println(b1);
+          System.out.println(b2);
+          System.out.print("mismatch for:b1:" + stringify(b1) + " :b2:" + stringify(b2) + " :oldres:" + stringify(oldres) + " :newres:" + stringify(newres));
+          throw new Exception("Failed");
+        }
+      }
+
+      // Test carry propagation.  Multiple carries during bignum
+      // multiplication are rare (especially when using 64-bit
+      // arithmetic) so we have to provoke them deliberately.
+      for (int j = 4; j <= 396; j += 4) {
+        byte[] bytes = new byte[j];
+        Arrays.fill(bytes, (byte)255);
+        b1 = new BigInteger(bytes);
+        b2 = new BigInteger(bytes);
+
+        oldres = base_multiply(b1,b2);
+        newres = new_multiply(b1,b2);
+
+        oldsum = oldsum.add(oldres);
+        newsum = newsum.add(newres);
+
+        if (!bytecompare(oldres,newres)) {
           System.out.print("mismatch for:b1:" + stringify(b1) + " :b2:" + stringify(b2) + " :oldres:" + stringify(oldres) + " :newres:" + stringify(newres));
           System.out.println(b1);
           System.out.println(b2);
           throw new Exception("Failed");
         }
       }
+
       if (!bytecompare(oldsum,newsum))  {
         System.out.println("Failure: oldsum:" + stringify(oldsum) + " newsum:" + stringify(newsum));
         throw new Exception("Failed");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/intrinsics/unsafe/HeapByteBufferTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,371 @@
+//
+// Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+// Copyright (c) 2015, Red Hat Inc. All rights reserved.
+// DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+//
+// This code is free software; you can redistribute it and/or modify it
+// under the terms of the GNU General Public License version 2 only, as
+// published by the Free Software Foundation.
+//
+// This code is distributed in the hope that it will be useful, but WITHOUT
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+// version 2 for more details (a copy is included in the LICENSE file that
+// accompanied this code).
+//
+// You should have received a copy of the GNU General Public License version
+// 2 along with this work; if not, write to the Free Software Foundation,
+// Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+// or visit www.oracle.com if you need additional information or have any
+// questions.
+//
+//
+
+import com.oracle.java.testlibrary.Utils;
+import static java.lang.Math.abs;
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
+import static java.nio.ByteOrder.BIG_ENDIAN;
+import static java.nio.ByteOrder.LITTLE_ENDIAN;
+import java.util.Random;
+import java.util.Arrays;
+
+/**
+ * @test
+ * @bug 8026049
+ * @library /testlibrary
+ * @run main/othervm -XX:+UnlockDiagnosticVMOptions -XX:-UseUnalignedAccesses HeapByteBufferTest
+ * @run main/othervm HeapByteBufferTest
+ * @summary Verify that byte buffers are correctly accessed.
+ */
+
+// A wrapper for a ByteBuffer which maintains a backing array and a
+// position.  Whenever this wrapper is written the backing array and
+// the wrapped byte buffer are updated together, and whenever it is
+// read we check that the ByteBuffer and the backing array are identical.
+
+class MyByteBuffer {
+    final ByteBuffer buf;
+    final byte[] bytes;
+    int pos;
+    ByteOrder byteOrder = BIG_ENDIAN;
+
+    MyByteBuffer(ByteBuffer buf, byte[] bytes) {
+        this.buf = buf;
+        this.bytes = Arrays.copyOf(bytes, bytes.length);
+        pos = 0;
+    }
+
+    public final MyByteBuffer order(ByteOrder bo) {
+        byteOrder = bo;
+        buf.order(bo);
+        return this;
+    }
+
+    static MyByteBuffer wrap(byte[] bytes) {
+        return new MyByteBuffer(ByteBuffer.wrap(bytes), bytes);
+    }
+
+    int capacity() { return bytes.length; }
+    int position() {
+        if (buf.position() != pos)
+            throw new RuntimeException();
+        return buf.position();
+    }
+
+    byte[] array() { return buf.array(); }
+    byte[] backingArray() { return bytes; }
+
+    private static byte long7(long x) { return (byte)(x >> 56); }
+    private static byte long6(long x) { return (byte)(x >> 48); }
+    private static byte long5(long x) { return (byte)(x >> 40); }
+    private static byte long4(long x) { return (byte)(x >> 32); }
+    private static byte long3(long x) { return (byte)(x >> 24); }
+    private static byte long2(long x) { return (byte)(x >> 16); }
+    private static byte long1(long x) { return (byte)(x >>  8); }
+    private static byte long0(long x) { return (byte)(x      ); }
+
+    private static byte int3(int x) { return (byte)(x >> 24); }
+    private static byte int2(int x) { return (byte)(x >> 16); }
+    private static byte int1(int x) { return (byte)(x >>  8); }
+    private static byte int0(int x) { return (byte)(x      ); }
+
+    private static byte short1(short x) { return (byte)(x >> 8); }
+    private static byte short0(short x) { return (byte)(x     ); }
+
+    byte _get(long i) { return bytes[(int)i]; }
+    void _put(long i, byte x) { bytes[(int)i] = x; }
+
+    private void putLongX(long a, long x) {
+        if (byteOrder == BIG_ENDIAN) {
+            x = Long.reverseBytes(x);
+        }
+        _put(a + 7, long7(x));
+        _put(a + 6, long6(x));
+        _put(a + 5, long5(x));
+        _put(a + 4, long4(x));
+        _put(a + 3, long3(x));
+        _put(a + 2, long2(x));
+        _put(a + 1, long1(x));
+        _put(a    , long0(x));
+    }
+
+    private void putIntX(long a, int x) {
+        if (byteOrder == BIG_ENDIAN) {
+            x = Integer.reverseBytes(x);
+        }
+        _put(a + 3, int3(x));
+        _put(a + 2, int2(x));
+        _put(a + 1, int1(x));
+        _put(a    , int0(x));
+    }
+
+    private void putShortX(int bi, short x) {
+        if (byteOrder == BIG_ENDIAN) {
+            x = Short.reverseBytes(x);
+        }
+        _put(bi    , short0(x));
+        _put(bi + 1, short1(x));
+    }
+
+    static private int makeInt(byte b3, byte b2, byte b1, byte b0) {
+        return (((b3       ) << 24) |
+                ((b2 & 0xff) << 16) |
+                ((b1 & 0xff) <<  8) |
+                ((b0 & 0xff)      ));
+    }
+    int getIntX(long a) {
+        int x = makeInt(_get(a + 3),
+                _get(a + 2),
+                _get(a + 1),
+                _get(a));
+        if (byteOrder == BIG_ENDIAN) {
+            x = Integer.reverseBytes(x);
+        }
+        return x;
+    }
+
+    static private long makeLong(byte b7, byte b6, byte b5, byte b4,
+                                 byte b3, byte b2, byte b1, byte b0)
+    {
+        return ((((long)b7       ) << 56) |
+                (((long)b6 & 0xff) << 48) |
+                (((long)b5 & 0xff) << 40) |
+                (((long)b4 & 0xff) << 32) |
+                (((long)b3 & 0xff) << 24) |
+                (((long)b2 & 0xff) << 16) |
+                (((long)b1 & 0xff) <<  8) |
+                (((long)b0 & 0xff)      ));
+    }
+
+    long getLongX(long a) {
+        long x = makeLong(_get(a + 7),
+                _get(a + 6),
+                _get(a + 5),
+                _get(a + 4),
+                _get(a + 3),
+                _get(a + 2),
+                _get(a + 1),
+                _get(a));
+        if (byteOrder == BIG_ENDIAN) {
+            x = Long.reverseBytes(x);
+        }
+        return x;
+    }
+
+    static private short makeShort(byte b1, byte b0) {
+        return (short)((b1 << 8) | (b0 & 0xff));
+    }
+
+    short getShortX(long a) {
+        short x = makeShort(_get(a + 1),
+                            _get(a    ));
+        if (byteOrder == BIG_ENDIAN) {
+            x = Short.reverseBytes(x);
+        }
+        return x;
+    }
+
+    double getDoubleX(long a) {
+        long x = getLongX(a);
+        return Double.longBitsToDouble(x);
+    }
+
+    double getFloatX(long a) {
+        int x = getIntX(a);
+        return Float.intBitsToFloat(x);
+    }
+
+    void ck(long x, long y) {
+        if (x != y) {
+            throw new RuntimeException(" x = " + Long.toHexString(x) + ", y = " + Long.toHexString(y));
+        }
+    }
+
+    void ck(double x, double y) {
+        if (x == x && y == y && x != y) {
+            ck(x, y);
+        }
+    }
+
+    long getLong(int i) { ck(buf.getLong(i), getLongX(i)); return buf.getLong(i); }
+    int getInt(int i) { ck(buf.getInt(i), getIntX(i)); return buf.getInt(i); }
+    short getShort(int i) { ck(buf.getShort(i), getShortX(i)); return buf.getShort(i); }
+    char getChar(int i) { ck(buf.getChar(i), (char)getShortX(i)); return buf.getChar(i); }
+    double getDouble(int i) { ck(buf.getDouble(i), getDoubleX(i)); return buf.getDouble(i); }
+    float getFloat(int i) { ck(buf.getFloat(i), getFloatX(i)); return buf.getFloat(i); }
+
+    void putLong(int i, long x) { buf.putLong(i, x); putLongX(i, x); }
+    void putInt(int i, int x) { buf.putInt(i, x); putIntX(i, x); }
+    void putShort(int i, short x) { buf.putShort(i, x); putShortX(i, x); }
+    void putChar(int i, char x) { buf.putChar(i, x); putShortX(i, (short)x); }
+    void putDouble(int i, double x) { buf.putDouble(i, x); putLongX(i, Double.doubleToRawLongBits(x)); }
+    void putFloat(int i, float x) { buf.putFloat(i, x); putIntX(i, Float.floatToRawIntBits(x)); }
+
+    long getLong() { ck(buf.getLong(buf.position()), getLongX(pos)); long x = buf.getLong(); pos += 8; return x; }
+    int getInt() { ck(buf.getInt(buf.position()), getIntX(pos)); int x = buf.getInt(); pos += 4; return x; }
+    short getShort() { ck(buf.getShort(buf.position()), getShortX(pos)); short x = buf.getShort(); pos += 2; return x; }
+    char getChar() {  ck(buf.getChar(buf.position()), (char)getShortX(pos)); char x = buf.getChar(); pos += 2; return x; }
+    double getDouble() { ck(buf.getDouble(buf.position()), getDoubleX(pos)); double x = buf.getDouble(); pos += 8; return x; }
+    float getFloat() { ck(buf.getFloat(buf.position()), getFloatX(pos)); float x = buf.getFloat(); pos += 4; return x; }
+
+    void putLong(long x) { putLongX(pos, x); pos += 8; buf.putLong(x); }
+    void putInt(int x) { putIntX(pos, x); pos += 4; buf.putInt(x); }
+    void putShort(short x) { putShortX(pos, x); pos += 2; buf.putShort(x); }
+    void putChar(char x) { putShortX(pos, (short)x); pos += 2; buf.putChar(x); }
+    void putDouble(double x) { putLongX(pos, Double.doubleToRawLongBits(x)); pos += 8; buf.putDouble(x); }
+    void putFloat(float x) { putIntX(pos, Float.floatToRawIntBits(x)); pos += 4; buf.putFloat(x); }
+
+    void rewind() { pos = 0; buf.rewind(); }
+}
+
+public class HeapByteBufferTest implements Runnable {
+
+    Random random = Utils.getRandomInstance();
+    MyByteBuffer data = MyByteBuffer.wrap(new byte[1024]);
+
+    int randomOffset(Random r, MyByteBuffer buf, int size) {
+        return r.nextInt(buf.capacity() - size);
+    }
+
+    long iterations;
+
+    HeapByteBufferTest(long iterations) {
+        this.iterations = iterations;
+    }
+
+    // The core of the test.  Walk over the buffer reading and writing
+    // random data, XORing it as we go.  We can detect writes in the
+    // wrong place, writes which are too long or too short, and reads
+    // or writes of the wrong data,
+    void step(Random r) {
+        data.order((r.nextInt() & 1) != 0 ? BIG_ENDIAN : LITTLE_ENDIAN);
+
+        data.rewind();
+        while (data.position() < data.capacity())
+            data.putLong(data.getLong() ^ random.nextLong());
+
+        data.rewind();
+        while (data.position() < data.capacity())
+            data.putInt(data.getInt() ^ random.nextInt());
+
+        data.rewind();
+        while (data.position() < data.capacity())
+            data.putShort((short)(data.getShort() ^ random.nextInt()));
+
+        data.rewind();
+        while (data.position() < data.capacity())
+            data.putChar((char)(data.getChar() ^ random.nextInt()));
+
+        data.rewind();
+        while (data.position() < data.capacity()) {
+            data.putDouble(combine(data.getDouble(), random.nextLong()));
+        }
+
+        data.rewind();
+        while (data.position() < data.capacity())
+            data.putFloat(combine(data.getFloat(), random.nextInt()));
+
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 8);
+            data.putLong(offset, data.getLong(offset) ^ random.nextLong());
+        }
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 4);
+            data.putInt(offset, data.getInt(offset) ^ random.nextInt());
+        }
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 2);
+            data.putShort(offset, (short)(data.getShort(offset) ^ random.nextInt()));
+        }
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 2);
+            data.putChar(offset, (char)(data.getChar(offset) ^ random.nextInt()));
+        }
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 8);
+            data.putDouble(offset, combine(data.getDouble(offset), random.nextLong()));
+        }
+        for (int i = 0; i < 100; i++) {
+            int offset = randomOffset(r, data, 4);
+            data.putFloat(offset, combine(data.getFloat(offset), random.nextInt()));
+        }
+    }
+
+    // XOR the bit pattern of a double and a long, returning the
+    // result as a double.
+    //
+    // We convert signalling NaNs to quiet NaNs.  We need to do this
+    // because some platforms (in particular legacy 80x87) do not
+    // provide transparent conversions between integer and
+    // floating-point types even when using raw conversions but
+    // quietly convert sNaN to qNaN.  This causes spurious test
+    // failures when the template interpreter uses 80x87 and the JITs
+    // use XMM registers.
+    //
+    public double combine(double prev, long bits) {
+        bits ^= Double.doubleToRawLongBits(prev);
+        double result = Double.longBitsToDouble(bits);
+        if (Double.isNaN(result)) {
+            result = Double.longBitsToDouble(bits | 0x8000000000000l);
+        }
+        return result;
+    }
+
+    // XOR the bit pattern of a float and an int, returning the result
+    // as a float.  Convert sNaNs to qNaNs.
+    public Float combine(float prev, int bits) {
+        bits ^= Float.floatToRawIntBits(prev);
+        Float result = Float.intBitsToFloat(bits);
+        if (Float.isNaN(result)) {
+            result = Float.intBitsToFloat(bits | 0x400000);
+        }
+        return result;
+    }
+
+    public void run() {
+        for (int i = 0; i < data.capacity(); i += 8) {
+            data.putLong(i, random.nextLong());
+        }
+
+        for (int i = 0; i < iterations; i++) {
+            step(random);
+        }
+
+        if (!Arrays.equals(data.array(), data.backingArray())) {
+            throw new RuntimeException();
+        }
+    }
+
+    public static void main(String[] args) {
+        // The number of iterations is high to ensure that tiered
+        // compilation kicks in all the way up to C2.
+        long iterations = 100000;
+        if (args.length > 0)
+            iterations = Long.parseLong(args[0]);
+
+        new HeapByteBufferTest(iterations).run();
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/jsr292/CallSiteDepContextTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,180 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/**
+ * @test
+ * @bug 8057967
+ * @ignore 8079205
+ * @run main/bootclasspath -Xbatch java.lang.invoke.CallSiteDepContextTest
+ */
+package java.lang.invoke;
+
+import java.lang.ref.*;
+import jdk.internal.org.objectweb.asm.*;
+import sun.misc.Unsafe;
+
+import static jdk.internal.org.objectweb.asm.Opcodes.*;
+
+public class CallSiteDepContextTest {
+    static final Unsafe               UNSAFE = Unsafe.getUnsafe();
+    static final MethodHandles.Lookup LOOKUP = MethodHandles.Lookup.IMPL_LOOKUP;
+    static final String           CLASS_NAME = "java/lang/invoke/Test";
+    static final String          METHOD_NAME = "m";
+    static final MethodType             TYPE = MethodType.methodType(int.class);
+
+    static MutableCallSite mcs;
+    static MethodHandle bsmMH;
+
+    static {
+        try {
+            bsmMH = LOOKUP.findStatic(
+                    CallSiteDepContextTest.class, "bootstrap",
+                    MethodType.methodType(CallSite.class, MethodHandles.Lookup.class, String.class, MethodType.class));
+        } catch(Throwable e) {
+            throw new InternalError(e);
+        }
+    }
+
+    public static CallSite bootstrap(MethodHandles.Lookup caller,
+                                     String invokedName,
+                                     MethodType invokedType) {
+        return mcs;
+    }
+
+    static class T {
+        static int f1() { return 1; }
+        static int f2() { return 2; }
+    }
+
+    static byte[] getClassFile(String suffix) {
+        ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS);
+        MethodVisitor mv;
+        cw.visit(52, ACC_PUBLIC | ACC_SUPER, CLASS_NAME + suffix, null, "java/lang/Object", null);
+        {
+            mv = cw.visitMethod(ACC_PUBLIC | ACC_STATIC, METHOD_NAME, TYPE.toMethodDescriptorString(), null, null);
+            mv.visitCode();
+            Handle bsm = new Handle(H_INVOKESTATIC,
+                    "java/lang/invoke/CallSiteDepContextTest", "bootstrap",
+                    bsmMH.type().toMethodDescriptorString());
+            mv.visitInvokeDynamicInsn("methodName", TYPE.toMethodDescriptorString(), bsm);
+            mv.visitInsn(IRETURN);
+            mv.visitMaxs(0, 0);
+            mv.visitEnd();
+        }
+        cw.visitEnd();
+        return cw.toByteArray();
+    }
+
+    private static void execute(int expected, MethodHandle... mhs) throws Throwable {
+        for (int i = 0; i < 20_000; i++) {
+            for (MethodHandle mh : mhs) {
+                int r = (int) mh.invokeExact();
+                if (r != expected) {
+                    throw new Error(r + " != " + expected);
+                }
+            }
+        }
+    }
+
+    public static void testSharedCallSite() throws Throwable {
+        Class<?> cls1 = UNSAFE.defineAnonymousClass(Object.class, getClassFile("CS_1"), null);
+        Class<?> cls2 = UNSAFE.defineAnonymousClass(Object.class, getClassFile("CS_2"), null);
+
+        MethodHandle[] mhs = new MethodHandle[] {
+            LOOKUP.findStatic(cls1, METHOD_NAME, TYPE),
+            LOOKUP.findStatic(cls2, METHOD_NAME, TYPE)
+        };
+
+        mcs = new MutableCallSite(LOOKUP.findStatic(T.class, "f1", TYPE));
+        execute(1, mhs);
+        mcs.setTarget(LOOKUP.findStatic(T.class, "f2", TYPE));
+        execute(2, mhs);
+    }
+
+    public static void testNonBoundCallSite() throws Throwable {
+        mcs = new MutableCallSite(LOOKUP.findStatic(T.class, "f1", TYPE));
+
+        // mcs.context == null
+        MethodHandle mh = mcs.dynamicInvoker();
+        execute(1, mh);
+
+        // mcs.context == cls1
+        Class<?> cls1 = UNSAFE.defineAnonymousClass(Object.class, getClassFile("NonBound_1"), null);
+        MethodHandle mh1 = LOOKUP.findStatic(cls1, METHOD_NAME, TYPE);
+
+        execute(1, mh1);
+
+        mcs.setTarget(LOOKUP.findStatic(T.class, "f2", TYPE));
+
+        execute(2, mh, mh1);
+    }
+
+    static ReferenceQueue rq = new ReferenceQueue();
+    static PhantomReference ref;
+
+    public static void testGC() throws Throwable {
+        mcs = new MutableCallSite(LOOKUP.findStatic(T.class, "f1", TYPE));
+
+        Class<?>[] cls = new Class[] {
+                UNSAFE.defineAnonymousClass(Object.class, getClassFile("GC_1"), null),
+                UNSAFE.defineAnonymousClass(Object.class, getClassFile("GC_2"), null),
+        };
+
+        MethodHandle[] mhs = new MethodHandle[] {
+                LOOKUP.findStatic(cls[0], METHOD_NAME, TYPE),
+                LOOKUP.findStatic(cls[1], METHOD_NAME, TYPE),
+        };
+
+        // mcs.context == cls[0]
+        int r = (int) mhs[0].invokeExact();
+
+        execute(1, mhs);
+
+        ref = new PhantomReference<>(cls[0], rq);
+        cls[0] = UNSAFE.defineAnonymousClass(Object.class, getClassFile("GC_3"), null);
+        mhs[0] = LOOKUP.findStatic(cls[0], METHOD_NAME, TYPE);
+
+        do {
+            System.gc();
+            try {
+                Reference ref1 = rq.remove(1000);
+                if (ref1 == ref) {
+                    ref1.clear();
+                    System.gc(); // Ensure that the stale context is cleared
+                    break;
+                }
+            } catch(InterruptedException e) { /* ignore */ }
+        } while (true);
+
+        execute(1, mhs);
+        mcs.setTarget(LOOKUP.findStatic(T.class, "f2", TYPE));
+        execute(2, mhs);
+    }
+
+    public static void main(String[] args) throws Throwable {
+        testSharedCallSite();
+        testNonBoundCallSite();
+        testGC();
+        System.out.println("TEST PASSED");
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/jsr292/MHInlineTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,205 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+/**
+ * @test
+ * @bug 8062280
+ * @summary C2: inlining failure due to access checks being too strict
+ * @library /testlibrary
+ * @run main/othervm MHInlineTest
+ */
+import java.lang.invoke.*;
+import com.oracle.java.testlibrary.*;
+import static com.oracle.java.testlibrary.Asserts.*;
+
+public class MHInlineTest {
+    public static void main(String[] args) throws Exception {
+        ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
+                "-XX:+IgnoreUnrecognizedVMOptions", "-showversion",
+                "-server", "-XX:-TieredCompilation", "-Xbatch",
+                "-XX:+PrintCompilation", "-XX:+UnlockDiagnosticVMOptions", "-XX:+PrintInlining",
+                "-XX:CompileCommand=dontinline,MHInlineTest::test*",
+                    "MHInlineTest$Launcher");
+
+        OutputAnalyzer analyzer = new OutputAnalyzer(pb.start());
+
+        analyzer.shouldHaveExitValue(0);
+
+        // The test is applicable only to C2 (present in Server VM).
+        if (analyzer.getStderr().contains("Server VM")) {
+            analyzer.shouldContain("MHInlineTest$B::public_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$B::protected_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$B::package_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$A::package_final_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$B::private_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$B::private_static_x (3 bytes)   inline (hot)");
+            analyzer.shouldContain("MHInlineTest$A::package_static_x (3 bytes)   inline (hot)");
+        }
+    }
+
+    static class A {
+        public static final MethodHandles.Lookup LOOKUP = MethodHandles.lookup();
+
+        public Class<?>         public_x() { return A.class; }
+        protected Class<?>   protected_x() { return A.class; }
+        Class<?>               package_x() { return A.class; }
+        final Class<?>   package_final_x() { return A.class; }
+
+        static Class<?> package_static_x() { return A.class; }
+    }
+
+    static class B extends A {
+        public static final MethodHandles.Lookup LOOKUP = MethodHandles.lookup();
+
+        @Override public    Class<?>    public_x() { return B.class; }
+        @Override protected Class<?> protected_x() { return B.class; }
+        @Override Class<?>             package_x() { return B.class; }
+
+        private   Class<?>             private_x() { return B.class; }
+        static    Class<?>      private_static_x() { return B.class; }
+    }
+
+    static final MethodHandle A_PUBLIC_X;
+    static final MethodHandle A_PROTECTED_X;
+    static final MethodHandle A_PACKAGE_X;
+    static final MethodHandle A_PACKAGE_STATIC_X;
+    static final MethodHandle A_PACKAGE_FINAL_X;
+
+    static final MethodHandle B_PRIVATE_X;
+    static final MethodHandle B_PRIVATE_STATIC_X;
+
+    static {
+        try {
+            MethodHandles.Lookup LOOKUP = MethodHandles.lookup();
+
+            A_PUBLIC_X = LOOKUP.findVirtual(
+                    A.class, "public_x", MethodType.methodType(Class.class));
+            A_PROTECTED_X = LOOKUP.findVirtual(
+                    A.class, "protected_x", MethodType.methodType(Class.class));
+            A_PACKAGE_X = LOOKUP.findVirtual(
+                    A.class, "package_x", MethodType.methodType(Class.class));
+            A_PACKAGE_FINAL_X = LOOKUP.findVirtual(
+                    A.class, "package_final_x", MethodType.methodType(Class.class));
+            A_PACKAGE_STATIC_X = LOOKUP.findStatic(
+                    A.class, "package_static_x", MethodType.methodType(Class.class));
+
+            B_PRIVATE_X = B.LOOKUP.findVirtual(
+                    B.class, "private_x", MethodType.methodType(Class.class));
+            B_PRIVATE_STATIC_X = B.LOOKUP.findStatic(
+                    B.class, "private_static_x", MethodType.methodType(Class.class));
+        } catch (Exception e) {
+            throw new Error(e);
+        }
+    }
+
+    static final A a = new B();
+
+    private static void testPublicMH() {
+        try {
+            Class<?> r = (Class<?>)A_PUBLIC_X.invokeExact(a);
+            assertEquals(r, B.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testProtectedMH() {
+        try {
+            Class<?> r = (Class<?>)A_PROTECTED_X.invokeExact(a);
+            assertEquals(r, B.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testPackageMH() {
+        try {
+            Class<?> r = (Class<?>)A_PACKAGE_X.invokeExact(a);
+            assertEquals(r, B.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testPackageFinalMH() {
+        try {
+            Class<?> r = (Class<?>)A_PACKAGE_FINAL_X.invokeExact(a);
+            assertEquals(r, A.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testPackageStaticMH() {
+        try {
+            Class<?> r = (Class<?>)A_PACKAGE_STATIC_X.invokeExact();
+            assertEquals(r, A.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testPrivateMH() {
+        try {
+            Class<?> r = (Class<?>)B_PRIVATE_X.invokeExact((B)a);
+            assertEquals(r, B.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    private static void testPrivateStaticMH() {
+        try {
+            Class<?> r = (Class<?>)B_PRIVATE_STATIC_X.invokeExact();
+            assertEquals(r, B.class);
+        } catch (Throwable throwable) {
+            throw new Error(throwable);
+        }
+    }
+
+    static class Launcher {
+        public static void main(String[] args) throws Exception {
+            for (int i = 0; i < 20_000; i++) {
+                testPublicMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testProtectedMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testPackageMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testPackageFinalMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testPackageStaticMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testPrivateMH();
+            }
+            for (int i = 0; i < 20_000; i++) {
+                testPrivateStaticMH();
+            }
+        }
+    }
+}
--- a/hotspot/test/compiler/jsr292/RedefineMethodUsedByMultipleMethodHandles.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/jsr292/RedefineMethodUsedByMultipleMethodHandles.java	Wed Jul 05 20:32:21 2017 +0200
@@ -30,7 +30,7 @@
  *          java.instrument
  *          java.management
  * @compile -XDignore.symbol.file RedefineMethodUsedByMultipleMethodHandles.java
- * @run main RedefineMethodUsedByMultipleMethodHandles
+ * @run main/othervm RedefineMethodUsedByMultipleMethodHandles
  */
 
 import java.io.*;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/TestPredicateLostDependency.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8069191
+ * @summary predicate moved out of loops and CastPP removal causes dependency to be lost
+ * @run main/othervm -Xcomp -XX:CompileOnly=TestPredicateLostDependency.m1 -XX:+IgnoreUnrecognizedVMOptions -XX:+StressGCM TestPredicateLostDependency
+ *
+ */
+
+public class TestPredicateLostDependency {
+    static class A {
+        int i;
+    }
+
+    static class B extends A {
+    }
+
+    static boolean crash = false;
+
+    static boolean m2() {
+        return crash;
+    }
+
+    static int m3(float[] arr) {
+        return 0;
+    }
+
+    static float m1(A aa) {
+        float res = 0;
+        float[] arr = new float[10];
+        for (int i = 0; i < 10; i++) {
+            if (m2()) {
+                arr = null;
+            }
+            m3(arr);
+            int j = arr.length;
+            int k = 0;
+            for (k = 9; k < j; k++) {
+            }
+            if (k == 10) {
+                if (aa instanceof B) {
+                }
+            }
+            res += arr[0];
+            res += arr[1];
+        }
+        return res;
+    }
+
+    static public void main(String args[]) {
+        A a = new A();
+        B b = new B();
+        for (int i = 0; i < 20000; i++) {
+            m1(a);
+        }
+        crash = true;
+        try {
+            m1(a);
+        } catch (NullPointerException npe) {}
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/TestSplitIfUnswitchedLoopsEliminated.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8078426
+ * @summary split if finds predicates on several incoming paths when unswitched's loops are optimized out
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-UseOnStackReplacement -XX:-BackgroundCompilation -XX:-UseCompressedOops TestSplitIfUnswitchedLoopsEliminated
+ *
+ */
+
+
+public class TestSplitIfUnswitchedLoopsEliminated {
+
+    static class A {
+        int f;
+    }
+
+    static A aa = new A();
+    static A aaa = new A();
+
+    static int test_helper(int stop, boolean unswitch) {
+        A a = null;
+        for (int i = 3; i < 10; i++) {
+            if (unswitch) {
+                a = null;
+            } else {
+                a = aa;
+                int v = a.f;
+            }
+        }
+        if (stop != 4) {
+            a = aaa;
+        }
+        if (a != null) {
+            return a.f;
+        }
+        return 0;
+    }
+
+    static int test(boolean unswitch) {
+        int stop = 1;
+        for (; stop < 3; stop *= 4) {
+        }
+        return test_helper(stop, unswitch);
+    }
+
+    public static void main(String[] args) {
+        for (int i = 0; i < 20000; i++) {
+            test_helper(10, i%2 == 0);
+            test(i%2 == 0);
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/ProdRed_Double.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,82 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar product reduction optimizations : float test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Double
+ */
+
+public class ProdRed_Double
+{
+  public static void main(String[] args) throws Exception {
+    double[] a = new double[256*1024];
+    double[] b = new double[256*1024];
+    prodReductionInit(a,b);
+    double valid = 2000;
+    double total = 0;
+    for(int j = 0; j < 2000; j++) {
+      total = j + 1;
+      total = prodReductionImplement(a,b, total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void prodReductionInit(double[] a, double[] b)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      a[i] = i + 2;
+      b[i] = i + 1;
+    }
+  }
+
+  public static double prodReductionImplement(double[] a, double[] b, double total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      total *= a[i] - b[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/ProdRed_Float.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,82 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar product reduction optimizations : float test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Float
+ */
+
+public class ProdRed_Float
+{
+  public static void main(String[] args) throws Exception {
+    float[] a = new float[256*1024];
+    float[] b = new float[256*1024];
+    prodReductionInit(a,b);
+    float valid = 2000;
+    float total = 0;
+    for(int j = 0; j < 2000; j++) {
+      total = j + 1;
+      total = prodReductionImplement(a,b, total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void prodReductionInit(float[] a, float[] b)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      a[i] = i + 2;
+      b[i] = i + 1;
+    }
+  }
+
+  public static float prodReductionImplement(float[] a, float[] b, float total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      total *= a[i] - b[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/ProdRed_Int.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar product reduction optimizations : int test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 ProdRed_Int
+ */
+
+public class ProdRed_Int
+{
+  public static void main(String[] args) throws Exception {
+    int[] a = new int[256*1024];
+    int[] b = new int[256*1024];
+    prodReductionInit(a,b);
+    int valid = 419430401;
+    int total = 1;
+    for(int j = 0; j < 2000; j++) {
+      total = prodReductionImplement(a,b,total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void prodReductionInit(int[] a, int[] b)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      a[i] = i + 2;
+      b[i] = i + 1;
+    }
+  }
+
+  public static int prodReductionImplement(int[] a, int[] b, int total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      total *= a[i] + b[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/SumRed_Double.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,96 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar sum reduction optimizations : double test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Double
+ */
+
+public class SumRed_Double
+{
+  public static void main(String[] args) throws Exception {
+    double[] a = new double[256*1024];
+    double[] b = new double[256*1024];
+    double[] c = new double[256*1024];
+    double[] d = new double[256*1024];
+    sumReductionInit(a,b,c);
+    double total = 0;
+    double valid = 3.6028590866691944E19;
+    for(int j = 0; j < 2000; j++) {
+      total = sumReductionImplement(a,b,c,d,total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void sumReductionInit(
+    double[] a,
+    double[] b,
+    double[] c)
+  {
+    for(int j = 0; j < 1; j++)
+    {
+      for(int i = 0; i < a.length; i++)
+      {
+        a[i] = i * 1 + j;
+        b[i] = i * 1 - j;
+        c[i] = i + j;
+      }
+    }
+  }
+
+  public static double sumReductionImplement(
+    double[] a,
+    double[] b,
+    double[] c,
+    double[] d,
+    double total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      d[i]= (a[i] * b[i]) + (a[i] * c[i]) + (b[i] * c[i]);
+      total += d[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/SumRed_Float.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,96 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar sum reduction optimizations : float test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Float
+ */
+
+public class SumRed_Float
+{
+  public static void main(String[] args) throws Exception {
+    float[] a = new float[256*1024];
+    float[] b = new float[256*1024];
+    float[] c = new float[256*1024];
+    float[] d = new float[256*1024];
+    sumReductionInit(a,b,c);
+    float total = 0;
+    float valid = (float)4.611686E18;
+    for(int j = 0; j < 2000; j++) {
+      total = sumReductionImplement(a,b,c,d,total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void sumReductionInit(
+    float[] a,
+    float[] b,
+    float[] c)
+  {
+    for(int j = 0; j < 1; j++)
+    {
+      for(int i = 0; i < a.length; i++)
+      {
+        a[i] = i * 1 + j;
+        b[i] = i * 1 - j;
+        c[i] = i + j;
+      }
+    }
+  }
+
+  public static float sumReductionImplement(
+    float[] a,
+    float[] b,
+    float[] c,
+    float[] d,
+    float total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      d[i]= (a[i] * b[i]) + (a[i] * c[i]) + (b[i] * c[i]);
+      total += d[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/loopopts/superword/SumRed_Int.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,96 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ *
+ */
+
+/**
+ * @test
+ * @bug 8074981
+ * @summary Add C2 x86 Superword support for scalar sum reduction optimizations : int test
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=2 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=4 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=8 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ *
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-SuperWordReductions -XX:LoopUnrollLimit=250 -XX:LoopMaxUnroll=16 -XX:CompileThresholdScaling=0.1 SumRed_Int
+ */
+
+public class SumRed_Int
+{
+  public static void main(String[] args) throws Exception {
+    int[] a = new int[256*1024];
+    int[] b = new int[256*1024];
+    int[] c = new int[256*1024];
+    int[] d = new int[256*1024];
+    sumReductionInit(a,b,c);
+    int total = 0;
+    int valid = 262144000;
+    for(int j = 0; j < 2000; j++) {
+      total = sumReductionImplement(a,b,c,d,total);
+    }
+    if(total == valid) {
+      System.out.println("Success");
+    } else {
+      System.out.println("Invalid sum of elements variable in total: " + total);
+      System.out.println("Expected value = " + valid);
+      throw new Exception("Failed");
+    }
+  }
+
+  public static void sumReductionInit(
+    int[] a,
+    int[] b,
+    int[] c)
+  {
+    for(int j = 0; j < 1; j++)
+    {
+      for(int i = 0; i < a.length; i++)
+      {
+        a[i] = i * 1 + j;
+        b[i] = i * 1 - j;
+        c[i] = i + j;
+      }
+    }
+  }
+
+  public static int sumReductionImplement(
+    int[] a,
+    int[] b,
+    int[] c,
+    int[] d,
+    int total)
+  {
+    for(int i = 0; i < a.length; i++)
+    {
+      d[i]= (a[i] * b[i]) + (a[i] * c[i]) + (b[i] * c[i]);
+      total += d[i];
+    }
+    return total;
+  }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/rangechecks/TestExplicitRangeChecks.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,596 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8073480
+ * @summary explicit range checks should be recognized by C2
+ * @library /testlibrary /../../test/lib /compiler/whitebox
+ * @build  TestExplicitRangeChecks
+ * @run main ClassFileInstaller sun.hotspot.WhiteBox
+ * @run main ClassFileInstaller com.oracle.java.testlibrary.Platform
+ * @run main/othervm -ea -Xmixed -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
+ *                   -XX:-BackgroundCompilation -XX:-UseOnStackReplacement -XX:CompileCommand=compileonly,TestExplicitRangeChecks.test* TestExplicitRangeChecks
+ *
+ */
+
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+import java.util.*;
+import sun.hotspot.WhiteBox;
+import sun.hotspot.code.NMethod;
+import com.oracle.java.testlibrary.Platform;
+import sun.misc.Unsafe;
+
+public class TestExplicitRangeChecks {
+
+    static int[] array = new int[10];
+
+    @Retention(RetentionPolicy.RUNTIME)
+    @interface Args {
+        int[] compile();
+        int[] good();
+        int[] bad();
+        boolean deoptimize() default true;
+    }
+
+    // Should be compiled as a single unsigned comparison
+    // 0 <= index < array.length
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1, 10})
+    static boolean test1_1(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // same test but so we can compile with same optimization after trap in test1_1
+    static boolean test1_2(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // Shouldn't matter whether first or second test is the one
+    // against a constants
+    // 0 <= index < array.length
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1, 10})
+    static boolean test2_1(int index, int[] array) {
+        if (index >= array.length || index < 0) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test2_2(int index, int[] array) {
+        if (index >= array.length || index < 0) {
+            return false;
+        }
+        return true;
+    }
+
+    // 0 <= index <= array.length
+    @Args(compile = {5,}, good = {0, 10}, bad = {-1, 11})
+    static boolean test3_1(int index, int[] array) {
+        if (index < 0 || index > array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test3_2(int index, int[] array) {
+        if (index < 0 || index > array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // 0 <= index <= array.length
+    @Args(compile = {5,}, good = {0, 10}, bad = {-1, 11})
+    static boolean test4_1(int index, int[] array) {
+        if (index > array.length || index < 0 ) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test4_2(int index, int[] array) {
+        if (index > array.length || index < 0) {
+            return false;
+        }
+        return true;
+    }
+
+    static int[] test5_helper(int i) {
+        return (i < 100) ? new int[10] : new int[5];
+    }
+
+    // 0 < index < array.length
+    @Args(compile = {5,}, good = {1, 9}, bad = {0, 10})
+    static boolean test5_1(int index, int[] array) {
+        array = test5_helper(index); // array.length must be not constant greater than 1
+        if (index <= 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test5_2(int index, int[] array) {
+        array = test5_helper(index); // array.length must be not constant greater than 1
+        if (index <= 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // 0 < index < array.length
+    @Args(compile = {5,}, good = {1, 9}, bad = {0, 10})
+    static boolean test6_1(int index, int[] array) {
+        array = test5_helper(index); // array.length must be not constant greater than 1
+        if (index >= array.length || index <= 0 ) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test6_2(int index, int[] array) {
+        array = test5_helper(index); // array.length must be not constant greater than 1
+        if (index >= array.length || index <= 0) {
+            return false;
+        }
+        return true;
+    }
+
+    // 0 < index <= array.length
+    @Args(compile = {5,}, good = {1, 10}, bad = {0, 11})
+    static boolean test7_1(int index, int[] array) {
+        if (index <= 0 || index > array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test7_2(int index, int[] array) {
+        if (index <= 0 || index > array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // 0 < index <= array.length
+    @Args(compile = {5,}, good = {1, 10}, bad = {0, 11})
+    static boolean test8_1(int index, int[] array) {
+        if (index > array.length || index <= 0 ) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test8_2(int index, int[] array) {
+        if (index > array.length || index <= 0) {
+            return false;
+        }
+        return true;
+    }
+
+    static int[] test9_helper1(int i) {
+        return (i < 100) ? new int[1] : new int[2];
+    }
+
+    static int[] test9_helper2(int i) {
+        return (i < 100) ? new int[10] : new int[11];
+    }
+
+    // array1.length <= index < array2.length
+    @Args(compile = {5,}, good = {1, 9}, bad = {0, 10})
+    static boolean test9_1(int index, int[] array) {
+        int[] array1 = test9_helper1(index);
+        int[] array2 = test9_helper2(index);
+        if (index < array1.length || index >= array2.length) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test9_2(int index, int[] array) {
+        int[] array1 = test9_helper1(index);
+        int[] array2 = test9_helper2(index);
+        if (index < array1.length || index >= array2.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // Previously supported pattern
+    @Args(compile = {-5,5,15}, good = {0, 9}, bad = {-1, 10}, deoptimize=false)
+    static boolean test10_1(int index, int[] array) {
+        if (index < 0 || index >= 10) {
+            return false;
+        }
+        return true;
+    }
+
+    static int[] array11 = new int[10];
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1,})
+    static boolean test11_1(int index, int[] array) {
+        if (index < 0) {
+            return false;
+        }
+        int unused = array11[index];
+        // If this one is folded with the first test then we allow
+        // array access above to proceed even for out of bound array
+        // index and the method throws an
+        // ArrayIndexOutOfBoundsException.
+        if (index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    static int[] array12 = {10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1,})
+    static boolean test12_1(int index, int[] array) {
+        // Cannot be folded otherwise would cause incorrect array
+        // access if the array12 range check is executed before the
+        // folded test.
+        if (index < 0 || index >= array12[index]) {
+            return false;
+        }
+        return true;
+    }
+
+    // Same as test1_1 but pass null array when index < 0: shouldn't
+    // cause NPE.
+    @Args(compile = {5,}, good = {0, 9}, bad = {})
+    static boolean test13_1(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // Same as test10 but with uncommon traps
+    @Args(compile = {5}, good = {0, 9}, bad = {-1, 10})
+    static boolean test14_1(int index, int[] array) {
+        if (index < 0 || index >= 10) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test14_2(int index, int[] array) {
+        if (index < 0 || index >= 10) {
+            return false;
+        }
+        return true;
+    }
+
+    // Same as test13_1 but pass null array: null trap should be reported on first if
+    @Args(compile = {5,}, good = {0, 9}, bad = {})
+    static boolean test15_1(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        return true;
+    }
+
+    // Same as test1 but with no null check between the integer comparisons
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1, 10})
+    static boolean test16_1(int index, int[] array) {
+        int l = array.length;
+        if (index < 0 || index >= l) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test16_2(int index, int[] array) {
+        int l = array.length;
+        if (index < 0 || index >= l) {
+            return false;
+        }
+        return true;
+    }
+
+    // Same as test1 but bound check on array access should optimize
+    // out.
+    @Args(compile = {5,}, good = {0, 9}, bad = {-1, 10})
+    static boolean test17_1(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        array[index] = 0;
+        return true;
+    }
+
+    static boolean test17_2(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        array[index] = 0;
+        return true;
+    }
+
+    // Same as test1 but range check smearing should optimize
+    // 3rd range check out.
+    @Args(compile = {5,}, good = {}, bad = {})
+    static boolean test18_1(int index, int[] array) {
+        if (index < 0 || index >= array.length) {
+            return false;
+        }
+        array[index+2] = 0;
+        array[index+1] = 0;
+        return true;
+    }
+
+    static boolean test19_helper1(int index) {
+        if (index < 12) {
+            return false;
+        }
+        return true;
+    }
+
+    static boolean test19_helper2(int index) {
+        if (index > 8) {
+            return false;
+        }
+        return true;
+    }
+
+    // Second test should be optimized out
+    static boolean test19(int index, int[] array) {
+        test19_helper1(index);
+        test19_helper2(index);
+        return true;
+    }
+
+    static boolean success = true;
+
+    private static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox();
+
+    final HashMap<String,Method> tests = new HashMap<>();
+    {
+        for (Method m : this.getClass().getDeclaredMethods()) {
+            if (m.getName().matches("test[0-9]+(_[0-9])?")) {
+                assert(Modifier.isStatic(m.getModifiers())) : m;
+                tests.put(m.getName(), m);
+            }
+        }
+    }
+
+    void doTest(String name) throws Exception {
+        Method m = tests.get(name + "_1");
+
+        Args anno =  m.getAnnotation(Args.class);
+        int[] compile = anno.compile();
+        int[] good = anno.good();
+        int[] bad = anno.bad();
+        boolean deoptimize = anno.deoptimize();
+
+        // Get compiled
+        for (int i = 0; i < 20000;) {
+            for (int j = 0; j < compile.length; j++) {
+                m.invoke(null, compile[j], array);
+                i++;
+            }
+        }
+
+        if (!WHITE_BOX.isMethodCompiled(m)) {
+            System.out.println(name + "_1 not compiled");
+            success = false;
+        }
+
+        // check that good values don't trigger exception or
+        // deoptimization
+        for (int i = 0; i < good.length; i++) {
+            boolean res = (boolean)m.invoke(null, good[i], array);
+
+            if (!res) {
+                System.out.println(name + " bad result for good input " + good[i]);
+                success = false;
+            }
+            if (!WHITE_BOX.isMethodCompiled(m)) {
+                System.out.println(name + " deoptimized on valid access");
+                success = false;
+            }
+        }
+
+        // check that bad values trigger exception and deoptimization
+        for (int i = 0; i < bad.length; i++) {
+            if (i > 0 && deoptimize) {
+                m = tests.get(name + "_" + (i+1));
+                for (int k = 0; k < 20000;) {
+                    for (int j = 0; j < compile.length; j++) {
+                        m.invoke(null, compile[j], array);
+                        k++;
+                    }
+                }
+                if (!WHITE_BOX.isMethodCompiled(m)) {
+                    System.out.println(name + ("_" + (i+1)) + " not compiled");
+                    success = false;
+                }
+            }
+
+            boolean res = (boolean)m.invoke(null, bad[i], array);
+
+            if (res) {
+                System.out.println(name + " bad result for bad input " + bad[i]);
+                success = false;
+            }
+            if (Platform.isServer()) {
+                if (deoptimize && WHITE_BOX.isMethodCompiled(m)) {
+                    System.out.println(name + " not deoptimized on invalid access");
+                    success = false;
+                } else if (!deoptimize && !WHITE_BOX.isMethodCompiled(m)) {
+                    System.out.println(name + " deoptimized on invalid access");
+                    success = false;
+                }
+            }
+        }
+
+    }
+
+    private static final Unsafe UNSAFE;
+
+    static {
+        try {
+            Field unsafeField = Unsafe.class.getDeclaredField("theUnsafe");
+            unsafeField.setAccessible(true);
+            UNSAFE = (Unsafe) unsafeField.get(null);
+        }
+        catch (Exception e) {
+            throw new AssertionError(e);
+        }
+    }
+
+    // On x64, int to long conversion should optimize away in address computation
+    static int test20(int[] a) {
+        int sum = 0;
+        for (int i = 0; i < a.length; i++) {
+            sum += test20_helper(a, i);
+        }
+        return sum;
+    }
+
+    static int test20_helper(int[] a, int i) {
+        if (i < 0 || i >= a.length)
+            throw new ArrayIndexOutOfBoundsException();
+
+        long address = (((long) i) << 2) + UNSAFE.ARRAY_INT_BASE_OFFSET;
+        return UNSAFE.getInt(a, address);
+    }
+
+    static int test21(int[] a) {
+        int sum = 0;
+        for (int i = 0; i < a.length; i++) {
+            sum += test20_helper(a, i);
+        }
+        return sum;
+    }
+
+    static int test21_helper(int[] a, int i) {
+        if (i < 0 || i >= a.length)
+            throw new ArrayIndexOutOfBoundsException();
+
+        long address = (((long) i) << 2) + UNSAFE.ARRAY_INT_BASE_OFFSET;
+        return UNSAFE.getIntVolatile(a, address);
+    }
+
+    static public void main(String[] args) throws Exception {
+
+        if (WHITE_BOX.getBooleanVMFlag("BackgroundCompilation")) {
+            throw new AssertionError("Background compilation enabled");
+        }
+
+        TestExplicitRangeChecks test = new TestExplicitRangeChecks();
+
+        test.doTest("test1");
+        test.doTest("test2");
+        test.doTest("test3");
+        test.doTest("test4");
+
+        // pollute branch profile
+        for (int i = 0; i < 10000; i++) {
+            test5_helper((i%2 == 0) ? 0 : 1000);
+        }
+
+        test.doTest("test5");
+        test.doTest("test6");
+        test.doTest("test7");
+        test.doTest("test8");
+
+        // pollute branch profile
+        for (int i = 0; i < 10000; i++) {
+            test9_helper1((i%2 == 0) ? 0 : 1000);
+            test9_helper2((i%2 == 0) ? 0 : 1000);
+        }
+
+        test.doTest("test9");
+        test.doTest("test10");
+        test.doTest("test11");
+        test.doTest("test12");
+
+        test.doTest("test13");
+        {
+            Method m = test.tests.get("test13_1");
+            for (int i = 0; i < 1; i++) {
+                test13_1(-1, null);
+                if (!WHITE_BOX.isMethodCompiled(m)) {
+                    break;
+                }
+            }
+        }
+        test.doTest("test13");
+        {
+            Method m = test.tests.get("test13_1");
+            for (int i = 0; i < 10; i++) {
+                test13_1(-1, null);
+                if (!WHITE_BOX.isMethodCompiled(m)) {
+                    break;
+                }
+            }
+        }
+
+        test.doTest("test14");
+
+        test.doTest("test15");
+        {
+            Method m = test.tests.get("test15_1");
+            for (int i = 0; i < 10; i++) {
+                try {
+                    test15_1(5, null);
+                } catch(NullPointerException npe) {}
+                if (!WHITE_BOX.isMethodCompiled(m)) {
+                    break;
+                }
+            }
+        }
+        test.doTest("test15");
+        test.doTest("test16");
+        test.doTest("test17");
+        test.doTest("test18");
+
+        for (int i = 0; i < 20000; i++) {
+            test19_helper1(20);
+            test19_helper2(5);
+        }
+
+        {
+            Method m = test.tests.get("test19");
+            WHITE_BOX.enqueueMethodForCompilation(m, CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION);
+        }
+
+        for (int i = 0; i < 20000; i++) {
+            test20(array);
+        }
+
+        for (int i = 0; i < 20000; i++) {
+            test21(array);
+        }
+
+        if (!success) {
+            throw new RuntimeException("some tests failed");
+        }
+    }
+}
--- a/hotspot/test/compiler/startup/NumCompilerThreadsCheck.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/startup/NumCompilerThreadsCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -40,20 +40,10 @@
     String expectedOutput = "CICompilerCount of -1 is invalid";
     out.shouldContain(expectedOutput);
 
-    if (isZeroVm()) {
+    if (Platform.isZero()) {
       String expectedLowWaterMarkText = "must be at least 0";
       out.shouldContain(expectedLowWaterMarkText);
     }
   }
 
-  private static boolean isZeroVm() {
-    String vmName = System.getProperty("java.vm.name");
-    if (vmName == null) {
-      throw new RuntimeException("No VM name");
-    }
-    if (vmName.toLowerCase().contains("zero")) {
-      return true;
-    }
-    return false;
-  }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/compiler/types/TestMeetExactConstantArrays.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8075587
+ * @summary meet of 2 constant arrays result in bottom
+ * @run main/othervm TestMeetExactConstantArrays
+ *
+ */
+
+public class TestMeetExactConstantArrays {
+    public abstract static class NumbersHolder {
+        public Number[] getNumbers() {
+            return null;
+        }
+    }
+
+    public static class IntegersHolder extends NumbersHolder {
+        private final static Integer integers[] = { new Integer(1) };
+
+        public Number[] getNumbers() {
+            return integers;
+        }
+    }
+
+    public static class LongsHolder extends NumbersHolder {
+        private final static Long longs[] = { new Long(1) };
+
+        public Number[] getNumbers() {
+            return longs;
+        }
+    }
+
+    public static final void loopNumbers(NumbersHolder numbersHolder) {
+        Number[] numbers = numbersHolder.getNumbers();
+        for (int i = 0; i < numbers.length; i++) {
+            numbers[i].longValue();
+        }
+    }
+
+    public static void main(String[] args) throws Exception {
+        for (int i = 0; i < 10000; i++) {
+            IntegersHolder integersHolder = new IntegersHolder();
+            LongsHolder longsHolder = new LongsHolder();
+            loopNumbers(integersHolder);
+            loopNumbers(longsHolder);
+        }
+    }
+}
--- a/hotspot/test/compiler/uncommontrap/TestUnstableIfTrap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/uncommontrap/TestUnstableIfTrap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -69,7 +69,7 @@
  *                   -XX:CompileCommand=compileonly,UnstableIfExecutable.test
  *                   -XX:LogFile=never_taken_fired.xml
  *                   TestUnstableIfTrap NEVER_TAKEN true
- * @run main uncommontrap.Verifier always_taken_not_fired.xml
+ * @run main/othervm uncommontrap.Verifier always_taken_not_fired.xml
  *                                 always_taken_fired.xml
  *                                 never_taken_not_fired.xml
  *                                 never_taken_fired.xml
--- a/hotspot/test/compiler/whitebox/DeoptimizeFramesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/compiler/whitebox/DeoptimizeFramesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -32,12 +32,12 @@
  * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+WhiteBoxAPI -Xmixed
  *                   -XX:CompileCommand=compileonly,DeoptimizeFramesTest$TestCaseImpl::method
- *                   -XX:+IgnoreUnexpectedVMOptions -XX:-DeoptimizeRandom -XX:-DeoptimizeALot
+ *                   -XX:+IgnoreUnrecognizedVMOptions -XX:-DeoptimizeRandom -XX:-DeoptimizeALot
  *                   DeoptimizeFramesTest true
  * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+WhiteBoxAPI -Xmixed
  *                   -XX:CompileCommand=compileonly,DeoptimizeFramesTest$TestCaseImpl::method
- *                   -XX:+IgnoreUnexpectedVMOptions -XX:-DeoptimizeRandom -XX:-DeoptimizeALot
+ *                   -XX:+IgnoreUnrecognizedVMOptions -XX:-DeoptimizeRandom -XX:-DeoptimizeALot
  *                   DeoptimizeFramesTest false
  * @summary testing of WB::deoptimizeFrames()
  */
--- a/hotspot/test/gc/TestSmallHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/TestSmallHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -58,9 +58,11 @@
  */
 
 import com.oracle.java.testlibrary.*;
+import com.sun.management.HotSpotDiagnosticMXBean;
+import java.lang.management.ManagementFactory;
 import static com.oracle.java.testlibrary.Asserts.*;
+
 import sun.hotspot.WhiteBox;
-import sun.management.ManagementFactoryHelper;
 
 public class TestSmallHeap {
 
@@ -69,7 +71,9 @@
         int pageSize = wb.getVMPageSize();
         int heapBytesPerCard = 512;
         long expectedMaxHeap = pageSize * heapBytesPerCard;
-        String maxHeap = ManagementFactoryHelper.getDiagnosticMXBean().getVMOption("MaxHeapSize").getValue();
+        String maxHeap
+            = ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                .getVMOption("MaxHeapSize").getValue();
         assertEQ(Long.parseLong(maxHeap), expectedMaxHeap);
     }
 }
--- a/hotspot/test/gc/arguments/TestG1HeapRegionSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/arguments/TestG1HeapRegionSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,14 +33,15 @@
  * @run main/othervm -XX:G1HeapRegionSize=64m -Xmx256m TestG1HeapRegionSize 33554432
  */
 
-import sun.management.ManagementFactoryHelper;
 import com.sun.management.HotSpotDiagnosticMXBean;
 import com.sun.management.VMOption;
+import java.lang.management.ManagementFactory;
 
 public class TestG1HeapRegionSize {
 
   public static void main(String[] args) {
-    HotSpotDiagnosticMXBean diagnostic = ManagementFactoryHelper.getDiagnosticMXBean();
+    HotSpotDiagnosticMXBean diagnostic =
+        ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
 
     String expectedValue = getExpectedValue(args);
     VMOption option = diagnostic.getVMOption("UseG1GC");
--- a/hotspot/test/gc/arguments/TestInitialTenuringThreshold.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/arguments/TestInitialTenuringThreshold.java	Wed Jul 05 20:32:21 2017 +0200
@@ -70,6 +70,7 @@
     runWithThresholds(10, 0, true);
     runWithThresholds(9, 8, true);
     runWithThresholds(-1, 8, true);
+    runWithThresholds(0, -1, true);
     runWithThresholds(8, -1, true);
     runWithThresholds(16, 8, true);
     runWithThresholds(8, 17, true);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/gc/arguments/TestSelectDefaultGC.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test TestSelectDefaultGC
+ * @summary Test selection of GC when no GC option is specified
+ * @bug 8068582
+ * @key gc
+ * @library /testlibrary
+ * @modules java.base/sun.misc
+ *          java.management
+ * @run driver TestSelectDefaultGC
+ */
+
+import com.oracle.java.testlibrary.*;
+import java.util.regex.*;
+
+public class TestSelectDefaultGC {
+    public static boolean versionStringContains(OutputAnalyzer output, String pattern) {
+        Matcher matcher = Pattern.compile(pattern, Pattern.MULTILINE).matcher(output.getStderr());
+        return matcher.find();
+    }
+
+    public static void assertVMOption(OutputAnalyzer output, String option, boolean value) {
+        output.shouldMatch(" " + option + " .*=.* " + value + " ");
+    }
+
+    public static void main(String[] args) throws Exception {
+        // Start VM without specifying GC
+        ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+PrintFlagsFinal", "-version");
+        OutputAnalyzer output = new OutputAnalyzer(pb.start());
+        output.shouldHaveExitValue(0);
+
+        boolean isServerVM = versionStringContains(output, "Server VM");
+
+        // Verify GC selection
+        assertVMOption(output, "UseParallelGC",      isServerVM);
+        assertVMOption(output, "UseParallelOldGC",   isServerVM);
+        assertVMOption(output, "UseSerialGC",        !isServerVM);
+        assertVMOption(output, "UseConcMarkSweepGC", false);
+        assertVMOption(output, "UseG1GC",            false);
+        assertVMOption(output, "UseParNewGC",        false);
+    }
+}
--- a/hotspot/test/gc/arguments/TestUseCompressedOopsErgoTools.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/arguments/TestUseCompressedOopsErgoTools.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+* Copyright (c) 2013, 2015,Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,6 @@
 * questions.
 */
 
-import sun.management.ManagementFactoryHelper;
 import com.sun.management.HotSpotDiagnosticMXBean;
 import com.sun.management.VMOption;
 
@@ -31,6 +30,7 @@
 import java.util.Arrays;
 
 import com.oracle.java.testlibrary.*;
+import java.lang.management.ManagementFactory;
 import sun.hotspot.WhiteBox;
 
 class DetermineMaxHeapForCompressedOops {
@@ -43,7 +43,8 @@
 class TestUseCompressedOopsErgoTools {
 
   private static long getCompressedClassSpaceSize() {
-    HotSpotDiagnosticMXBean diagnostic = ManagementFactoryHelper.getDiagnosticMXBean();
+    HotSpotDiagnosticMXBean diagnostic =
+        ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
 
     VMOption option = diagnostic.getVMOption("CompressedClassSpaceSize");
     return Long.parseLong(option.getValue());
@@ -174,4 +175,3 @@
     return expect(flags, false, false, 0);
   }
 }
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/gc/arguments/TestVerifyBeforeAndAfterGCFlags.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,119 @@
+/*
+* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* This code is free software; you can redistribute it and/or modify it
+* under the terms of the GNU General Public License version 2 only, as
+* published by the Free Software Foundation.
+*
+* This code is distributed in the hope that it will be useful, but WITHOUT
+* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+* FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+* version 2 for more details (a copy is included in the LICENSE file that
+* accompanied this code).
+*
+* You should have received a copy of the GNU General Public License version
+* 2 along with this work; if not, write to the Free Software Foundation,
+* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+*
+* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+* or visit www.oracle.com if you need additional information or have any
+* questions.
+*/
+
+/*
+ * @test TestVerifyBeforeAndAfterGCFlags
+ * @key gc
+ * @bug 8000831
+ * @summary Runs an simple application (GarbageProducer) with various
+         combinations of -XX:{+|-}Verify{After|Before}GC flags and checks that
+         output contain or doesn't contain expected patterns
+ * @modules java.management
+ * @library /testlibrary
+ * @run driver TestVerifyBeforeAndAfterGCFlags
+ */
+
+import java.util.ArrayList;
+import java.util.Collections;
+
+import com.oracle.java.testlibrary.Utils;
+import com.oracle.java.testlibrary.OutputAnalyzer;
+import com.oracle.java.testlibrary.ProcessTools;
+
+public class TestVerifyBeforeAndAfterGCFlags {
+
+    // VerifyBeforeGC:[Verifying threads heap tenured eden syms strs zone dict metaspace chunks hand C-heap code cache ]
+    public static final String VERIFY_BEFORE_GC_PATTERN = "VerifyBeforeGC:\\[Verifying\\s+([^]\\s]+\\s+)+\\]";
+    // VerifyBeforeGC: VerifyBeforeGC: VerifyBeforeGC:
+    public static final String VERIFY_BEFORE_GC_CORRUPTED_PATTERN = "VerifyBeforeGC:(?!\\[Verifying[^]]+\\])";
+
+    // VerifyAfterGC:[Verifying threads heap tenured eden syms strs zone dict metaspace chunks hand C-heap code cache ]
+    public static final String VERIFY_AFTER_GC_PATTERN = "VerifyAfterGC:\\[Verifying\\s+([^]\\s]+\\s+)+\\]";
+    // VerifyAfterGC: VerifyAfterGC: VerifyAfterGC:
+    public static final String VERIFY_AFTER_GC_CORRUPTED_PATTERN = "VerifyAfterGC:(?!\\[Verifying[^]]+\\])";
+
+    public static void main(String args[]) throws Exception {
+        String[] filteredOpts = Utils.getFilteredTestJavaOpts(
+                                    new String[] { "-Xloggc:",
+                                                   "-XX:+UseGCLogFileRotation",
+                                                   "-XX:-DisplayVMOutput",
+                                                   "VerifyBeforeGC",
+                                                   "VerifyAfterGC" });
+        testVerifyFlags(false, false, filteredOpts);
+        testVerifyFlags(true,  true,  filteredOpts);
+        testVerifyFlags(true,  false, filteredOpts);
+        testVerifyFlags(false, true,  filteredOpts);
+    }
+
+    public static void testVerifyFlags(boolean verifyBeforeGC,
+                                       boolean verifyAfterGC,
+                                       String[] opts) throws Exception {
+        ArrayList<String> vmOpts = new ArrayList<>();
+        if (opts != null && (opts.length > 0)) {
+            Collections.addAll(vmOpts, opts);
+        }
+
+        Collections.addAll(vmOpts, new String[] {
+                                       "-Xmx5m",
+                                       "-Xms5m",
+                                       "-Xmn3m",
+                                       "-XX:+UnlockDiagnosticVMOptions",
+                                       (verifyBeforeGC ? "-XX:+VerifyBeforeGC"
+                                                       : "-XX:-VerifyBeforeGC"),
+                                       (verifyAfterGC ? "-XX:+VerifyAfterGC"
+                                                      : "-XX:-VerifyAfterGC"),
+                                       GarbageProducer.class.getName() });
+        ProcessBuilder procBuilder =
+            ProcessTools.createJavaProcessBuilder(vmOpts.toArray(
+                                                   new String[vmOpts.size()]));
+        OutputAnalyzer analyzer = new OutputAnalyzer(procBuilder.start());
+
+        analyzer.shouldHaveExitValue(0);
+        analyzer.shouldNotMatch(VERIFY_BEFORE_GC_CORRUPTED_PATTERN);
+        analyzer.shouldNotMatch(VERIFY_AFTER_GC_CORRUPTED_PATTERN);
+
+        if (verifyBeforeGC) {
+            analyzer.shouldMatch(VERIFY_BEFORE_GC_PATTERN);
+        } else {
+            analyzer.shouldNotMatch(VERIFY_BEFORE_GC_PATTERN);
+        }
+
+        if (verifyAfterGC) {
+            analyzer.shouldMatch(VERIFY_AFTER_GC_PATTERN);
+        } else {
+            analyzer.shouldNotMatch(VERIFY_AFTER_GC_PATTERN);
+        }
+    }
+
+    public static class GarbageProducer {
+        static long[][] garbage = new long[10][];
+
+        public static void main(String args[]) {
+            int j = 0;
+            for(int i = 0; i<1000; i++) {
+                garbage[j] = new long[10000];
+                j = (j+1)%garbage.length;
+            }
+        }
+    }
+}
--- a/hotspot/test/gc/g1/TestGCLogMessages.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/g1/TestGCLogMessages.java	Wed Jul 05 20:32:21 2017 +0200
@@ -66,7 +66,6 @@
         new LogMessageWithLevel("SystemDictionary Roots", Level.FINEST),
         new LogMessageWithLevel("CLDG Roots", Level.FINEST),
         new LogMessageWithLevel("JVMTI Roots", Level.FINEST),
-        new LogMessageWithLevel("CodeCache Roots", Level.FINEST),
         new LogMessageWithLevel("SATB Filtering", Level.FINEST),
         new LogMessageWithLevel("CM RefProcessor Roots", Level.FINEST),
         new LogMessageWithLevel("Wait For Strong CLD", Level.FINEST),
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/gc/g1/TestGreyReclaimedHumongousObjects.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,175 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test TestGreyReclaimedHumongousObjects.java
+ * @bug 8069367
+ * @requires vm.gc == "G1" | vm.gc == "null"
+ * @summary Test handling of marked but unscanned reclaimed humongous objects.
+ * @key gc
+ * @run main/othervm -XX:+UseG1GC -Xss32m -Xmx128m -XX:G1HeapRegionSize=1m
+ *      -XX:+UnlockExperimentalVMOptions
+ *          -XX:+G1EagerReclaimHumongousObjects
+ *          -XX:+G1EagerReclaimHumongousObjectsWithStaleRefs
+ *      TestGreyReclaimedHumongousObjects 1048576 90
+ */
+
+// This test spawns a bunch of threads, each of them rapidly
+// allocating large objects and storing them into a circular buffer
+// associated with the thread.  The circular buffer results in these
+// objects becoming dead in fairly short order.
+//
+// The situation we're trying to provoke is
+//
+// (1) A humongous object H is marked and added to the mark stack.
+//
+// (2) An evacuation pause determines H is no longer live, and
+// reclaims it.  This occurs before concurrent marking has gotten
+// around to processing the mark stack entry for H.
+//
+// (3) Concurrent marking processes the mark stack entry for H.  The
+// bug is that it would attempt to scan the now dead object.
+//
+// Unfortunately, this test is *very* sensitive to configuration.
+// Among the parameters that affect whether / how often we'll get into
+// the desired situation within a reasonable amount of time are:
+//
+// - THREAD_COUNT: The number of allocating threads.
+//
+// - OLD_COUNT: The number of objects each thread keeps.
+//
+// - MAX_MEMORY: The maximum heap size.
+//
+// - G1HeapRegionSize
+//
+// - The size of the objects being allocated.
+//
+// The parameter values specified here:
+//
+// - THREAD_COUNT = 12
+// - OLD_COUNT == 4
+// - MAX_MEMORY == 128m
+// - G1HeapRegionSize = 1m
+// - Object size = 1048576 (2 regions after header overhead and roundup)
+//
+// seems to work well at provoking the desired state fairly quickly.
+// Even relatively small perturbations may change that.  The key
+// factors seem to be keeping the heap mostly full of live objects but
+// having them become dead fairly quickly.
+
+import java.util.Date;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ThreadFactory;
+import java.util.concurrent.TimeUnit;
+import com.sun.management.HotSpotDiagnosticMXBean;
+import java.lang.management.ManagementFactory;
+
+public class TestGreyReclaimedHumongousObjects {
+
+    static class NamedThreadFactory implements ThreadFactory {
+       private int threadNum = 0;
+
+       @Override
+       public Thread newThread(Runnable r) {
+         return new Thread(r, THREAD_NAME + (threadNum++));
+       }
+    }
+
+    static class Runner extends Thread {
+        private final Date startDate = new Date();
+        private final int obj_size;
+        private final Object[] old_garbage;
+        private int old_index = 0;
+
+        public Runner(int obj_size) {
+            this.obj_size = obj_size;
+            old_garbage = new Object[OLD_COUNT];
+        }
+
+        private void allocate_garbage() {
+            byte[] garbage = new byte[obj_size];
+            old_garbage[Math.abs(++old_index % OLD_COUNT)] = garbage;
+        }
+
+        @Override
+        public void run() {
+            try {
+                while (!isInterrupted()) {
+                    allocate_garbage();
+                    Thread.sleep(0); // Yield, to ensure interruptable.
+                }
+            } catch (InterruptedException e) {
+                System.out.println("Aborted after "
+                                   + (new Date().getTime() - startDate.getTime())
+                                   + " ms");
+                interrupt();
+            }
+        }
+    }
+
+    public static void main(String[] args) throws Exception {
+        HotSpotDiagnosticMXBean diagnostic =
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
+
+        System.out.println("Max memory= " + MAX_MEMORY + " bytes");
+
+        int obj_size = 0;
+        long seconds_to_run = 0;
+        if (args.length != 2) {
+            throw new RuntimeException("Object size argument must be supplied");
+        } else {
+            obj_size = Integer.parseInt(args[0]);
+            seconds_to_run = Integer.parseInt(args[1]);
+        }
+        System.out.println("Objects size= " + obj_size + " bytes");
+        System.out.println("Seconds to run=" + seconds_to_run);
+
+        int region_size =
+            Integer.parseInt(diagnostic.getVMOption("G1HeapRegionSize").getValue());
+        if (obj_size < (region_size / 2)) {
+            throw new RuntimeException("Object size " + obj_size +
+                                       " is not humongous with region size " + region_size);
+        }
+
+        ExecutorService executor =
+            Executors.newFixedThreadPool(THREAD_COUNT, new NamedThreadFactory());
+        System.out.println("Starting " + THREAD_COUNT + " threads");
+
+        for (int i = 0; i < THREAD_COUNT; i++) {
+            executor.execute(new Runner(obj_size));
+        }
+
+        Thread.sleep(seconds_to_run * 1000);
+        executor.shutdownNow();
+
+        if (!executor.awaitTermination(10, TimeUnit.SECONDS)) {
+            System.err.println("Thread pool did not terminate after 10 seconds after shutdown");
+        }
+    }
+
+    private static final long MAX_MEMORY = Runtime.getRuntime().maxMemory();
+    private static final int OLD_COUNT = 4;
+    private static final int THREAD_COUNT = 12;
+    private static final String THREAD_NAME = "TestGreyRH-";
+}
--- a/hotspot/test/gc/g1/TestHumongousShrinkHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/g1/TestHumongousShrinkHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -34,11 +34,11 @@
  * TestHumongousShrinkHeap
  */
 
+import com.sun.management.HotSpotDiagnosticMXBean;
 import java.lang.management.ManagementFactory;
 import java.lang.management.MemoryUsage;
 import java.util.ArrayList;
 import java.util.List;
-import sun.management.ManagementFactoryHelper;
 import static com.oracle.java.testlibrary.Asserts.*;
 
 public class TestHumongousShrinkHeap {
@@ -83,9 +83,11 @@
                 "committed free heap size is not less than committed full heap size, heap hasn't been shrunk?%n"
                 + "%s = %s%n%s = %s",
                 MIN_FREE_RATIO_FLAG_NAME,
-                ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                    .getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
                 MAX_FREE_RATIO_FLAG_NAME,
-                ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                    .getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
         ));
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/gc/g1/TestLargePageUseForAuxMemory.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,130 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test TestLargePageUseForAuxMemory.java
+ * @bug 8058354
+ * @ignore 8079208
+ * @key gc
+ * @library /testlibrary /../../test/lib
+ * @requires (vm.gc=="G1" | vm.gc=="null")
+ * @build TestLargePageUseForAuxMemory
+ * @run main ClassFileInstaller sun.hotspot.WhiteBox
+ *                              sun.hotspot.WhiteBox$WhiteBoxPermission
+ * @summary Test that auxiliary data structures are allocated using large pages if available.
+ * @run main/othervm -Xbootclasspath/a:. -XX:+UseG1GC -XX:+WhiteBoxAPI -XX:+IgnoreUnrecognizedVMOptions -XX:+UseLargePages TestLargePageUseForAuxMemory
+ */
+
+import com.oracle.java.testlibrary.*;
+import sun.hotspot.WhiteBox;
+
+public class TestLargePageUseForAuxMemory {
+    static final int HEAP_REGION_SIZE = 4 * 1024 * 1024;
+    static long largePageSize;
+    static long smallPageSize;
+
+    static void checkSmallTables(OutputAnalyzer output, long expectedPageSize) throws Exception {
+        output.shouldContain("G1 'Block offset table': pg_sz=" + expectedPageSize);
+        output.shouldContain("G1 'Card counts table': pg_sz=" + expectedPageSize);
+    }
+
+    static void checkBitmaps(OutputAnalyzer output, long expectedPageSize) throws Exception {
+        output.shouldContain("G1 'Prev Bitmap': pg_sz=" + expectedPageSize);
+        output.shouldContain("G1 'Next Bitmap': pg_sz=" + expectedPageSize);
+    }
+
+    static void testVM(long heapsize, boolean cardsShouldUseLargePages, boolean bitmapShouldUseLargePages) throws Exception {
+        ProcessBuilder pb;
+        // Test with large page enabled.
+        pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC",
+                                                   "-XX:G1HeapRegionSize=" + HEAP_REGION_SIZE,
+                                                   "-Xms" + 10 * HEAP_REGION_SIZE,
+                                                   "-Xmx" + heapsize,
+                                                   "-XX:+TracePageSizes",
+                                                   "-XX:+UseLargePages",
+                                                   "-XX:+IgnoreUnrecognizedVMOptions",  // there is on ObjectAlignmentInBytes in 32 bit builds
+                                                   "-XX:ObjectAlignmentInBytes=8",
+                                                   "-version");
+
+        OutputAnalyzer output = new OutputAnalyzer(pb.start());
+        checkSmallTables(output, (cardsShouldUseLargePages ? largePageSize : smallPageSize));
+        checkBitmaps(output, (bitmapShouldUseLargePages ? largePageSize : smallPageSize));
+        output.shouldHaveExitValue(0);
+
+        // Test with large page disabled.
+        pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC",
+                                                   "-XX:G1HeapRegionSize=" + HEAP_REGION_SIZE,
+                                                   "-Xms" + 10 * HEAP_REGION_SIZE,
+                                                   "-Xmx" + heapsize,
+                                                   "-XX:+TracePageSizes",
+                                                   "-XX:-UseLargePages",
+                                                   "-XX:+IgnoreUnrecognizedVMOptions",  // there is on ObjectAlignmentInBytes in 32 bit builds
+                                                   "-XX:ObjectAlignmentInBytes=8",
+                                                   "-version");
+
+        output = new OutputAnalyzer(pb.start());
+        checkSmallTables(output, smallPageSize);
+        checkBitmaps(output, smallPageSize);
+        output.shouldHaveExitValue(0);
+    }
+
+    public static void main(String[] args) throws Exception {
+        if (!Platform.isDebugBuild()) {
+            System.out.println("Skip tests on non-debug builds because the required option TracePageSizes is a debug-only option.");
+            return;
+        }
+
+        WhiteBox wb = WhiteBox.getWhiteBox();
+        smallPageSize = wb.getVMPageSize();
+        largePageSize = wb.getVMLargePageSize();
+
+        if (largePageSize == 0) {
+            System.out.println("Skip tests because large page support does not seem to be available on this platform.");
+            return;
+        }
+
+        // To get large pages for the card table etc. we need at least a 1G heap (with 4k page size).
+        // 32 bit systems will have problems reserving such an amount of contiguous space, so skip the
+        // test there.
+        if (!Platform.is32bit()) {
+            // Size that a single card covers.
+            final int cardSize = 512;
+
+            final long heapSizeForCardTableUsingLargePages = largePageSize * cardSize;
+
+            testVM(heapSizeForCardTableUsingLargePages, true, true);
+            testVM(heapSizeForCardTableUsingLargePages + HEAP_REGION_SIZE, true, true);
+            testVM(heapSizeForCardTableUsingLargePages - HEAP_REGION_SIZE, false, true);
+        }
+
+        // Minimum heap requirement to get large pages for bitmaps is 128M heap. This seems okay to test
+        // everywhere.
+        final int bitmapTranslationFactor = 8 * 8; // ObjectAlignmentInBytes * BitsPerByte
+        final long heapSizeForBitmapUsingLargePages = largePageSize * bitmapTranslationFactor;
+
+        testVM(heapSizeForBitmapUsingLargePages, false, true);
+        testVM(heapSizeForBitmapUsingLargePages + HEAP_REGION_SIZE, false, true);
+        testVM(heapSizeForBitmapUsingLargePages - HEAP_REGION_SIZE, false, false);
+    }
+}
+
--- a/hotspot/test/gc/g1/TestShrinkDefragmentedHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/g1/TestShrinkDefragmentedHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -39,10 +39,10 @@
 import java.lang.management.MemoryUsage;
 import java.util.ArrayList;
 import java.util.List;
-import sun.management.ManagementFactoryHelper;
 import static com.oracle.java.testlibrary.Asserts.*;
 import com.oracle.java.testlibrary.ProcessTools;
 import com.oracle.java.testlibrary.OutputAnalyzer;
+import com.sun.management.HotSpotDiagnosticMXBean;
 
 public class TestShrinkDefragmentedHeap {
     // Since we store all the small objects, they become old and old regions are also allocated at the bottom of the heap
@@ -144,9 +144,11 @@
                     "committed free heap size is not less than committed full heap size, heap hasn't been shrunk?%n"
                     + "%s = %s%n%s = %s",
                     MIN_FREE_RATIO_FLAG_NAME,
-                    ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
+                    ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                        .getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
                     MAX_FREE_RATIO_FLAG_NAME,
-                    ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
+                    ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                        .getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
             );
         }
 
--- a/hotspot/test/gc/g1/TestSummarizeRSetStatsTools.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/g1/TestSummarizeRSetStatsTools.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,11 @@
  * Common helpers for TestSummarizeRSetStats* tests
  */
 
-import sun.management.ManagementFactoryHelper;
 import com.sun.management.HotSpotDiagnosticMXBean;
 import com.sun.management.VMOption;
 
 import com.oracle.java.testlibrary.*;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import java.lang.Thread;
+import java.lang.management.ManagementFactory;
 import java.util.ArrayList;
 import java.util.Arrays;
 
@@ -74,7 +71,8 @@
 
     // the VM is currently run using G1GC, i.e. trying to test G1 functionality.
     public static boolean testingG1GC() {
-        HotSpotDiagnosticMXBean diagnostic = ManagementFactoryHelper.getDiagnosticMXBean();
+        HotSpotDiagnosticMXBean diagnostic =
+            ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
 
         VMOption option = diagnostic.getVMOption("UseG1GC");
         if (option.getValue().equals("false")) {
@@ -150,4 +148,3 @@
         }
     }
 }
-
--- a/hotspot/test/gc/parallelScavenge/TestDynShrinkHeap.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/parallelScavenge/TestDynShrinkHeap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,8 +33,8 @@
 import java.lang.management.ManagementFactory;
 import java.lang.management.MemoryUsage;
 import java.util.ArrayList;
-import sun.management.ManagementFactoryHelper;
 import static com.oracle.java.testlibrary.Asserts.assertLessThan;
+import com.sun.management.HotSpotDiagnosticMXBean;
 
 public class TestDynShrinkHeap {
 
@@ -63,9 +63,11 @@
                 "committed free heap size is not less than committed full heap size, heap hasn't been shrunk?%n"
                 + "%s = %s%n%s = %s",
                 MIN_FREE_RATIO_FLAG_NAME,
-                ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                    .getVMOption(MIN_FREE_RATIO_FLAG_NAME).getValue(),
                 MAX_FREE_RATIO_FLAG_NAME,
-                ManagementFactoryHelper.getDiagnosticMXBean().getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
+                    .getVMOption(MAX_FREE_RATIO_FLAG_NAME).getValue()
         ));
     }
 
--- a/hotspot/test/gc/startup_warnings/TestParNewSerialOld.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/gc/startup_warnings/TestParNewSerialOld.java	Wed Jul 05 20:32:21 2017 +0200
@@ -40,7 +40,7 @@
   public static void main(String args[]) throws Exception {
     ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+UseParNewGC", "-version");
     OutputAnalyzer output = new OutputAnalyzer(pb.start());
-    output.shouldContain("It is not possible to combine the ParNew young collector with the Serial old collector.");
+    output.shouldContain("It is not possible to combine the ParNew young collector with any collector other than CMS.");
     output.shouldContain("Error");
     output.shouldHaveExitValue(1);
   }
--- a/hotspot/test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrs.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrs.java	Wed Jul 05 20:32:21 2017 +0200
@@ -39,7 +39,7 @@
     if (Platform.is64bit()) {
       pb = ProcessTools.createJavaProcessBuilder(
         "-XX:+UseCompressedClassPointers", "-XX:+UseCompressedOops",
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./CDSCompressedKPtrs.jsa", "-Xshare:dump");
       OutputAnalyzer output = new OutputAnalyzer(pb.start());
       try {
         output.shouldContain("Loading classes to share");
@@ -47,7 +47,7 @@
 
         pb = ProcessTools.createJavaProcessBuilder(
           "-XX:+UseCompressedClassPointers", "-XX:+UseCompressedOops",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./CDSCompressedKPtrs.jsa", "-Xshare:on", "-version");
         output = new OutputAnalyzer(pb.start());
         output.shouldContain("sharing");
         output.shouldHaveExitValue(0);
--- a/hotspot/test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CDSCompressedKPtrs/CDSCompressedKPtrsError.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,10 +36,12 @@
 public class CDSCompressedKPtrsError {
   public static void main(String[] args) throws Exception {
     ProcessBuilder pb;
+    String filename = "./CDSCompressedKPtrsError.jsa";
+
     if (Platform.is64bit()) {
       pb = ProcessTools.createJavaProcessBuilder(
         "-XX:+UseCompressedOops", "-XX:+UseCompressedClassPointers", "-XX:+UnlockDiagnosticVMOptions",
-        "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:SharedArchiveFile=" + filename, "-Xshare:dump");
       OutputAnalyzer output = new OutputAnalyzer(pb.start());
       try {
         output.shouldContain("Loading classes to share");
@@ -47,21 +49,21 @@
 
         pb = ProcessTools.createJavaProcessBuilder(
           "-XX:-UseCompressedClassPointers", "-XX:-UseCompressedOops",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename, "-Xshare:on", "-version");
         output = new OutputAnalyzer(pb.start());
         output.shouldContain("Unable to use shared archive");
         output.shouldHaveExitValue(0);
 
         pb = ProcessTools.createJavaProcessBuilder(
           "-XX:-UseCompressedClassPointers", "-XX:+UseCompressedOops",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename, "-Xshare:on", "-version");
         output = new OutputAnalyzer(pb.start());
         output.shouldContain("Unable to use shared archive");
         output.shouldHaveExitValue(0);
 
         pb = ProcessTools.createJavaProcessBuilder(
           "-XX:+UseCompressedClassPointers", "-XX:-UseCompressedOops",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename, "-Xshare:on", "-version");
         output = new OutputAnalyzer(pb.start());
         output.shouldContain("Unable to use shared archive");
         output.shouldHaveExitValue(0);
@@ -74,19 +76,19 @@
       // Test bad options with -Xshare:dump.
       pb = ProcessTools.createJavaProcessBuilder(
         "-XX:-UseCompressedOops", "-XX:+UseCompressedClassPointers", "-XX:+UnlockDiagnosticVMOptions",
-        "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:SharedArchiveFile=./CDSCompressedKPtrsErrorBad1.jsa", "-Xshare:dump");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("Cannot dump shared archive");
 
       pb = ProcessTools.createJavaProcessBuilder(
         "-XX:+UseCompressedOops", "-XX:-UseCompressedClassPointers", "-XX:+UnlockDiagnosticVMOptions",
-        "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:SharedArchiveFile=./CDSCompressedKPtrsErrorBad2.jsa", "-Xshare:dump");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("Cannot dump shared archive");
 
       pb = ProcessTools.createJavaProcessBuilder(
         "-XX:-UseCompressedOops", "-XX:-UseCompressedClassPointers", "-XX:+UnlockDiagnosticVMOptions",
-        "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:SharedArchiveFile=./CDSCompressedKPtrsErrorBad3.jsa", "-Xshare:dump");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("Cannot dump shared archive");
 
--- a/hotspot/test/runtime/CDSCompressedKPtrs/XShareAuto.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CDSCompressedKPtrs/XShareAuto.java	Wed Jul 05 20:32:21 2017 +0200
@@ -37,14 +37,14 @@
     public static void main(String[] args) throws Exception {
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
             "-server", "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+            "-XX:SharedArchiveFile=./XShareAuto.jsa", "-Xshare:dump");
         OutputAnalyzer output = new OutputAnalyzer(pb.start());
         output.shouldContain("Loading classes to share");
         output.shouldHaveExitValue(0);
 
         pb = ProcessTools.createJavaProcessBuilder(
             "-server", "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa", "-version");
+            "-XX:SharedArchiveFile=./XShareAuto.jsa", "-version");
         output = new OutputAnalyzer(pb.start());
         // We asked for server but it could be aliased to something else
         if (output.getOutput().contains("Server VM")) {
@@ -59,7 +59,7 @@
 
         pb = ProcessTools.createJavaProcessBuilder(
             "-server", "-Xshare:auto", "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa", "-XX:+PrintSharedSpaces", "-version");
+            "-XX:SharedArchiveFile=./XShareAuto.jsa", "-XX:+PrintSharedSpaces", "-version");
         output = new OutputAnalyzer(pb.start());
         try {
             output.shouldContain("sharing");
--- a/hotspot/test/runtime/CommandLine/ObsoleteFlagErrorMessage.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CommandLine/ObsoleteFlagErrorMessage.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,24 +23,30 @@
 
 /*
  * @test
- * @bug 8060449
+ * @bug 8060449 8073989
  * @summary Newly obsolete command line options should still give useful error messages when used improperly.
  * @library /testlibrary
- * @modules java.base/sun.misc
- *          java.management
  */
 
 import com.oracle.java.testlibrary.*;
 
 public class ObsoleteFlagErrorMessage {
   public static void main(String[] args) throws Exception {
+
+    // Case 1: Newly obsolete flags with extra junk appended should not be treated as newly obsolete (8060449)
     ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:UseBoundThreadsPlusJunk", "-version");
+        "-XX:UseOldInliningPlusJunk", "-version");
 
     OutputAnalyzer output = new OutputAnalyzer(pb.start());
-    output.shouldContain("Unrecognized VM option 'UseBoundThreadsPlusJunk'"); // Must identify bad option.
-    output.shouldContain("UseBoundThreads"); // Should apply fuzzy matching to find correct option.
-    output.shouldContain("support").shouldContain("removed"); // Should warn user that the option they are trying to use is no longer supported.
+    output.shouldContain("Unrecognized VM option 'UseOldInliningPlusJunk'"); // Must identify bad option.
     output.shouldHaveExitValue(1);
+
+    // Case 2: Newly obsolete integer-valued flags should be recognized as newly obsolete (8073989)
+    ProcessBuilder pb2 = ProcessTools.createJavaProcessBuilder(
+        "-XX:NmethodSweepFraction=10", "-version");
+
+    OutputAnalyzer output2 = new OutputAnalyzer(pb2.start());
+    output2.shouldContain("ignoring option").shouldContain("support was removed");
+    output2.shouldContain("NmethodSweepFraction");
   }
 }
--- a/hotspot/test/runtime/CommandLine/TestVMOptions.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CommandLine/TestVMOptions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -46,7 +46,7 @@
     pb = ProcessTools.createJavaProcessBuilder(
         "-XX:-PrintVMOptions", "-version");
     output = new OutputAnalyzer(pb.start());
-    output.shouldContain("java version");
+    output.shouldMatch("(openjdk|java)\\sversion");
 
     File dir = new File(System.getProperty("test.src", "."));
     File file = new File(dir, "flagfile.txt");
--- a/hotspot/test/runtime/CompressedOops/CompressedClassPointers.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/CompressedOops/CompressedClassPointers.java	Wed Jul 05 20:32:21 2017 +0200
@@ -97,7 +97,7 @@
         // Test small heaps
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=./CompressedClassPointers.jsa",
             "-Xmx128m",
             "-XX:SharedBaseAddress=8g",
             "-XX:+PrintCompressedOopsMode",
@@ -110,7 +110,7 @@
 
           pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=./CompressedClassPointers.jsa",
             "-Xmx128m",
             "-XX:SharedBaseAddress=8g",
             "-XX:+PrintCompressedOopsMode",
--- a/hotspot/test/runtime/ErrorHandling/ProblematicFrameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/ErrorHandling/ProblematicFrameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -48,7 +48,7 @@
 
     public static void main(String[] args) throws Exception {
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
-            "-Xmx64m", "-XX:-TransmitErrorReport", "-XX:-CreateMinidumpOnCrash", Crasher.class.getName());
+            "-Xmx64m", "-XX:-TransmitErrorReport", "-XX:-CreateCoredumpOnCrash", Crasher.class.getName());
         OutputAnalyzer output = new OutputAnalyzer(pb.start());
         output.shouldNotMatch("error occurred during error reporting \\(printing problematic frame\\)");
     }
--- a/hotspot/test/runtime/ErrorHandling/SafeFetchInErrorHandlingTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/ErrorHandling/SafeFetchInErrorHandlingTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,3 +1,26 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileInputStream;
@@ -21,7 +44,7 @@
 
   public static void main(String[] args) throws Exception {
 
-    if (!Platform.isDebugBuild()) {
+    if (!Platform.isDebugBuild() || Platform.isZero()) {
       return;
     }
 
@@ -30,6 +53,7 @@
         "-Xmx100M",
         "-XX:ErrorHandlerTest=14",
         "-XX:+TestSafeFetchInErrorHandler",
+        "-XX:-CreateCoredumpOnCrash",
         "-version");
 
     OutputAnalyzer output_detail = new OutputAnalyzer(pb.start());
--- a/hotspot/test/runtime/ErrorHandling/SecondaryErrorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/ErrorHandling/SecondaryErrorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,12 +1,26 @@
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStreamReader;
-import java.util.regex.Pattern;
+/*
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
 
-import com.oracle.java.testlibrary.OutputAnalyzer;
-import com.oracle.java.testlibrary.Platform;
-import com.oracle.java.testlibrary.ProcessTools;
 
 /*
  * @test
@@ -18,6 +32,16 @@
  *          java.management
  */
 
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStreamReader;
+import java.util.regex.Pattern;
+
+import com.oracle.java.testlibrary.OutputAnalyzer;
+import com.oracle.java.testlibrary.Platform;
+import com.oracle.java.testlibrary.ProcessTools;
+
 public class SecondaryErrorTest {
 
 
@@ -35,6 +59,7 @@
     ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
         "-XX:+UnlockDiagnosticVMOptions",
         "-Xmx100M",
+        "-XX:-CreateCoredumpOnCrash",
         "-XX:ErrorHandlerTest=15",
         "-XX:TestCrashInErrorHandler=14",
         "-version");
--- a/hotspot/test/runtime/NMT/JcmdDetailDiff.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/NMT/JcmdDetailDiff.java	Wed Jul 05 20:32:21 2017 +0200
@@ -28,7 +28,6 @@
  * @library /testlibrary /../../test/lib
  * @modules java.base/sun.misc
  *          java.management
- * @ignore
  * @build JcmdDetailDiff
  * @run main ClassFileInstaller sun.hotspot.WhiteBox
  * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:NativeMemoryTracking=detail JcmdDetailDiff
--- a/hotspot/test/runtime/NMT/NMTWithCDS.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/NMT/NMTWithCDS.java	Wed Jul 05 20:32:21 2017 +0200
@@ -37,14 +37,14 @@
   public static void main(String[] args) throws Exception {
     ProcessBuilder pb;
     pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./NMTWithCDS.jsa", "-Xshare:dump");
     OutputAnalyzer output = new OutputAnalyzer(pb.start());
     try {
       output.shouldContain("Loading classes to share");
       output.shouldHaveExitValue(0);
 
       pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:NativeMemoryTracking=detail", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:NativeMemoryTracking=detail", "-XX:SharedArchiveFile=./NMTWithCDS.jsa", "-Xshare:on", "-version");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("sharing");
       output.shouldHaveExitValue(0);
--- a/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency1.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency1.java	Wed Jul 05 20:32:21 2017 +0200
@@ -49,7 +49,7 @@
                   "-XX:+UnlockDiagnosticVMOptions",
                   "-XX:+WhiteBoxAPI",
                   "-XX:-TransmitErrorReport",
-                  "-XX:-CreateMinidumpOnCrash",
+                  "-XX:-CreateCoredumpOnCrash",
                   "-Xmx32m",
                   "AssertSafepointCheckConsistency1",
                   "test");
--- a/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency2.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency2.java	Wed Jul 05 20:32:21 2017 +0200
@@ -49,7 +49,7 @@
                   "-XX:+UnlockDiagnosticVMOptions",
                   "-XX:+WhiteBoxAPI",
                   "-XX:-TransmitErrorReport",
-                  "-XX:-CreateMinidumpOnCrash",
+                  "-XX:-CreateCoredumpOnCrash",
                   "-Xmx32m",
                   "AssertSafepointCheckConsistency2",
                   "test");
--- a/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency3.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency3.java	Wed Jul 05 20:32:21 2017 +0200
@@ -49,7 +49,7 @@
                   "-XX:+UnlockDiagnosticVMOptions",
                   "-XX:+WhiteBoxAPI",
                   "-XX:-TransmitErrorReport",
-                  "-XX:-CreateMinidumpOnCrash",
+                  "-XX:-CreateCoredumpOnCrash",
                   "-Xmx32m",
                   "AssertSafepointCheckConsistency3",
                   "test");
--- a/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency4.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/Safepoint/AssertSafepointCheckConsistency4.java	Wed Jul 05 20:32:21 2017 +0200
@@ -49,7 +49,7 @@
                "-XX:+UnlockDiagnosticVMOptions",
                "-XX:+WhiteBoxAPI",
                "-XX:-TransmitErrorReport",
-               "-XX:-CreateMinidumpOnCrash",
+               "-XX:-CreateCoredumpOnCrash",
                "-Xmx32m",
                "AssertSafepointCheckConsistency4",
                "test");
--- a/hotspot/test/runtime/SharedArchiveFile/ArchiveDoesNotExist.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/ArchiveDoesNotExist.java	Wed Jul 05 20:32:21 2017 +0200
@@ -38,7 +38,7 @@
 
 public class ArchiveDoesNotExist {
     public static void main(String[] args) throws Exception {
-        String fileName = "test.jsa";
+        String fileName = "ArchiveDoesNotExist.jsa";
 
         File cdsFile = new File(fileName);
         if (cdsFile.exists())
--- a/hotspot/test/runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java	Wed Jul 05 20:32:21 2017 +0200
@@ -59,10 +59,11 @@
             createAlignment;
         String loadAlignmentArgument = "-XX:ObjectAlignmentInBytes=" +
             loadAlignment;
+        String filename = "./CdsDifferentObjectAlignment" + createAlignment + ".jsa";
 
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=" + filename,
             "-Xshare:dump",
             createAlignmentArgument);
 
@@ -72,7 +73,7 @@
 
         pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=" + filename,
             "-Xshare:on",
             loadAlignmentArgument,
             "-version");
--- a/hotspot/test/runtime/SharedArchiveFile/CdsSameObjectAlignment.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/CdsSameObjectAlignment.java	Wed Jul 05 20:32:21 2017 +0200
@@ -55,10 +55,11 @@
         System.out.println("dumpAndLoadSharedArchive(): objectAlignmentInBytes = "
             + objectAlignmentInBytes);
 
+        String filename = "./CdsSameObjectAlignment" + objectAlignmentInBytes + ".jsa";
         // create shared archive
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=" + filename,
             "-Xshare:dump",
             objectAlignmentArg);
 
@@ -70,7 +71,7 @@
         // run using the shared archive
         pb = ProcessTools.createJavaProcessBuilder(
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=" + filename,
             "-Xshare:on",
             objectAlignmentArg,
             "-version");
--- a/hotspot/test/runtime/SharedArchiveFile/DefaultUseWithClient.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/DefaultUseWithClient.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,7 +36,7 @@
 
 public class DefaultUseWithClient {
     public static void main(String[] args) throws Exception {
-        String fileName = "test.jsa";
+        String fileName = "DefaultUseWithClient.jsa";
 
         // On 32-bit windows CDS should be on by default in "-client" config
         // Skip this test on any other platform
--- a/hotspot/test/runtime/SharedArchiveFile/LimitSharedSizes.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/LimitSharedSizes.java	Wed Jul 05 20:32:21 2017 +0200
@@ -125,9 +125,11 @@
     };
 
     public static void main(String[] args) throws Exception {
-        String fileName = "test.jsa";
+        int counter = 0;
+        for (SharedSizeTestData td : testTable) {
+            String fileName = "LimitSharedSizes" + counter + ".jsa";
+            counter++;
 
-        for (SharedSizeTestData td : testTable) {
             String option = td.optionName + "=" + td.optionValue;
             System.out.println("testing option <" + option + ">");
 
--- a/hotspot/test/runtime/SharedArchiveFile/PrintSharedArchiveAndExit.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/PrintSharedArchiveAndExit.java	Wed Jul 05 20:32:21 2017 +0200
@@ -34,8 +34,10 @@
 
 public class PrintSharedArchiveAndExit {
   public static void main(String[] args) throws Exception {
+    String filename = "./PrintSharedArchiveAndExit.jsa";
+
     ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename, "-Xshare:dump");
     OutputAnalyzer output = new OutputAnalyzer(pb.start());
     try {
       output.shouldContain("Loading classes to share");
@@ -43,7 +45,7 @@
 
       // (1) With a valid archive
       pb = ProcessTools.createJavaProcessBuilder(
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa",
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename,
           "-XX:+PrintSharedArchiveAndExit", "-version");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("archive is valid");
@@ -51,7 +53,7 @@
       output.shouldHaveExitValue(0);               // Should report success in error code.
 
       pb = ProcessTools.createJavaProcessBuilder(
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa",
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename,
           "-XX:+PrintSharedArchiveAndExit");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("archive is valid");
@@ -61,7 +63,7 @@
       // (2) With an invalid archive (boot class path has been prepended)
       pb = ProcessTools.createJavaProcessBuilder(
           "-Xbootclasspath/p:foo.jar",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa",
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename,
           "-XX:+PrintSharedArchiveAndExit", "-version");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("archive is invalid");
@@ -70,7 +72,7 @@
 
       pb = ProcessTools.createJavaProcessBuilder(
           "-Xbootclasspath/p:foo.jar",
-          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa",
+          "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=" + filename,
           "-XX:+PrintSharedArchiveAndExit");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("archive is invalid");
--- a/hotspot/test/runtime/SharedArchiveFile/SharedArchiveFile.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/SharedArchiveFile.java	Wed Jul 05 20:32:21 2017 +0200
@@ -35,14 +35,14 @@
 public class SharedArchiveFile {
   public static void main(String[] args) throws Exception {
     ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:dump");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./SharedArchiveFile.jsa", "-Xshare:dump");
     OutputAnalyzer output = new OutputAnalyzer(pb.start());
     try {
       output.shouldContain("Loading classes to share");
       output.shouldHaveExitValue(0);
 
       pb = ProcessTools.createJavaProcessBuilder(
-        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./sample.jsa", "-Xshare:on", "-version");
+        "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./SharedArchiveFile.jsa", "-Xshare:on", "-version");
       output = new OutputAnalyzer(pb.start());
       output.shouldContain("sharing");
       output.shouldHaveExitValue(0);
--- a/hotspot/test/runtime/SharedArchiveFile/SharedBaseAddress.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/SharedBaseAddress.java	Wed Jul 05 20:32:21 2017 +0200
@@ -49,11 +49,12 @@
             return;
 
         for (String testEntry : testTable) {
+            String filename = "SharedBaseAddress" + testEntry + ".jsa";
             System.out.println("sharedBaseAddress = " + testEntry);
 
             ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
                "-XX:+UnlockDiagnosticVMOptions",
-               "-XX:SharedArchiveFile=test.jsa",
+               "-XX:SharedArchiveFile=" + filename,
                "-XX:SharedBaseAddress=" + testEntry,
                "-Xshare:dump");
 
@@ -64,7 +65,7 @@
             try {
                 pb = ProcessTools.createJavaProcessBuilder(
                     "-XX:+UnlockDiagnosticVMOptions",
-                    "-XX:SharedArchiveFile=test.jsa",
+                    "-XX:SharedArchiveFile=" + filename,
                     "-Xshare:on",
                     "-version");
                 output = new OutputAnalyzer(pb.start());
--- a/hotspot/test/runtime/SharedArchiveFile/SharedSymbolTableBucketSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/SharedSymbolTableBucketSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -38,7 +38,7 @@
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
             "-Xshare:dump", "-XX:+PrintSharedSpaces",
             "-XX:+UnlockDiagnosticVMOptions",
-            "-XX:SharedArchiveFile=./sample.jsa",
+            "-XX:SharedArchiveFile=./SharedSymbolTableBucketSize.jsa",
             "-XX:SharedSymbolTableBucketSize=" + Integer.valueOf(bucket_size));
         OutputAnalyzer output = new OutputAnalyzer(pb.start());
         output.shouldContain("Loading classes to share");
@@ -60,7 +60,7 @@
           pb = ProcessTools.createJavaProcessBuilder(
                "-Xshare:dump", "-XX:+PrintSharedSpaces",
                "-XX:+UnlockDiagnosticVMOptions",
-               "-XX:SharedArchiveFile=./sample.jsa",
+               "-XX:SharedArchiveFile=./SharedSymbolTableBucketSize.jsa",
                input[i]);
           output = new OutputAnalyzer(pb.start());
           output.shouldContain("Improperly specified VM option");
--- a/hotspot/test/runtime/SharedArchiveFile/SpaceUtilizationCheck.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/SpaceUtilizationCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -50,7 +50,7 @@
     public static void main(String[] args) throws Exception {
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
            "-XX:+UnlockDiagnosticVMOptions",
-           "-XX:SharedArchiveFile=./test.jsa",
+           "-XX:SharedArchiveFile=./SpaceUtilizationCheck.jsa",
            "-Xshare:dump");
 
         OutputAnalyzer output = new OutputAnalyzer(pb.start());
--- a/hotspot/test/runtime/StackGuardPages/invoke.c	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/StackGuardPages/invoke.c	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -221,7 +221,7 @@
   printf("Test started with pid: %ld\n", (long) getpid());
 
   options[0].optionString = "-Xint";
-  options[1].optionString = "-Xss320k";
+  options[1].optionString = "-Xss328k";
 
   vm_args.version = JNI_VERSION_1_2;
   vm_args.ignoreUnrecognized = JNI_TRUE;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/Unsafe/GetKlassPointerGetJavaMirror.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8022853
+ * @library /testlibrary
+ * @modules java.base/sun.misc
+ * @run main GetKlassPointerGetJavaMirror
+ */
+
+import static com.oracle.java.testlibrary.Asserts.*;
+
+import com.oracle.java.testlibrary.*;
+import sun.misc.Unsafe;
+
+public class GetKlassPointerGetJavaMirror {
+
+    public static void main(String args[]) throws Exception {
+        Unsafe unsafe = Utils.getUnsafe();
+        Object o = new GetKlassPointerGetJavaMirror();
+        final long metaspaceKlass = unsafe.getKlassPointer(o);
+        Class<?> c = unsafe.getJavaMirror(metaspaceKlass);
+        assertEquals(o.getClass(), c);
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/Unsafe/GetUncompressedObject.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8022853
+ * @library /testlibrary
+ * @modules java.base/sun.misc
+ * @run main GetUncompressedObject
+ */
+
+import static com.oracle.java.testlibrary.Asserts.*;
+
+import com.oracle.java.testlibrary.*;
+import sun.misc.Unsafe;
+
+public class GetUncompressedObject {
+
+    public static void main(String args[]) throws Exception {
+        Unsafe unsafe = Utils.getUnsafe();
+
+        // Allocate some memory and fill it with non-zero values.
+        final int size = 32;
+        final long address = unsafe.allocateMemory(size);
+        unsafe.setMemory(address, size, (byte) 0x23);
+
+        // The only thing we can do is check for null-ness.
+        // So, store a null somewhere.
+        unsafe.putAddress(address + 16, 0);
+
+        Object nullObj = unsafe.getUncompressedObject(address + 16);
+        if (nullObj != null) {
+            throw new InternalError("should be null");
+        }
+    }
+
+}
--- a/hotspot/test/runtime/Unsafe/RangeCheck.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/Unsafe/RangeCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -45,6 +45,7 @@
                 true,
                 "-Xmx32m",
                 "-XX:-TransmitErrorReport",
+                "-XX:-CreateCoredumpOnCrash",
                 "-XX:-InlineUnsafeOps", // The compiler intrinsics doesn't have the assert
                 DummyClassWithMainRangeCheck.class.getName());
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/handlerInTry/HandlerInTry.jasm	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,115 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * HandlerInTry contains a try block in a ctor whose handler is inside
+ * the same try block.  The try block starts at line 74 (try t2;), ends at
+ * line 106 (endtry t2;), but its handler starts at line 101 (catch t2 #0;).
+ */
+super public class HandlerInTry
+    version 51:0
+{
+
+public static final synthetic Field ___transactionFactory_2002349702336125:"Ljava/lang/Object;";
+
+public Method "<init>":"(Ljava/lang/Object;)V"
+    stack 5 locals 5
+{
+        invokestatic    Method ThreadLocalTransaction.getThreadLocalTransaction:"()Ljava/lang/Object;";
+        checkcast    class java/lang/Object;
+        astore_2;
+        aload_2;
+        invokestatic    Method TransactionLogicDonor.isActiveTransaction:"(Ljava/lang/Object;)Z";
+        ifeq    L21;
+        aload_0;
+        aload_1;
+        aload_2;
+        invokespecial    Method "<init>":"(Ljava/lang/Object;Ljava/lang/Object;)V";
+        return;
+    L21:    stack_frame_type append;
+        locals_map class java/lang/Object;
+        aload_2;
+        getstatic    Field ___transactionFactory_2002349702336125:"Ljava/lang/Object;";
+        invokestatic    Method TransactionLogicDonor.createTransaction:"(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;";
+        astore_2;
+        aload_2;
+        iconst_1;
+        pop;
+        aload_2;
+        invokestatic    Method ThreadLocalTransaction.setThreadLocalTransaction:"(Ljava/lang/Object;)V";
+        try t0, t1;
+        aload_0;
+        aload_1;
+        aload_2;
+        invokespecial    Method "<init>":"(Ljava/lang/Object;Ljava/lang/Object;)V";
+        aload_2;
+        pop;
+        aconst_null;
+        astore_2;
+        endtry t0, t1;
+        invokestatic    Method ThreadLocalTransaction.clearThreadLocalTransaction:"()V";
+        pop;
+        goto    L107;
+        catch t0 java/lang/Throwable;
+        try t2;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore_3;
+        aload_2;
+        pop;
+        aload_3;
+        instanceof    class ControlFlowError;
+        ifeq    L82;
+        new    class java/lang/NullPointerException;
+        dup;
+        invokespecial    Method java/lang/NullPointerException."<init>":"()V";
+        athrow;
+    L82:    stack_frame_type append;
+        locals_map class java/lang/Throwable;
+        aload_3;
+        instanceof    class java/lang/Error;
+        ifeq    L94;
+        aload_3;
+        checkcast    class java/lang/Error;
+        athrow;
+    L94:    stack_frame_type same;
+        aload_3;
+        checkcast    class java/lang/Exception;
+        athrow;
+        catch t1 #0;
+        catch t2 #0;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore    4;
+        endtry t2;
+        invokestatic    Method ThreadLocalTransaction.clearThreadLocalTransaction:"()V";
+        aload    4;
+        athrow;
+    L107:    stack_frame_type full;
+        locals_map class HandlerInTry, class java/lang/Object, null;
+        return;
+}
+
+} // end Class HandlerInTry
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/handlerInTry/IsolatedHandlerInTry.jasm	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * IsolatedHandlerInTry contains a try block in a ctor whose handler is inside
+ * the same try block but the handler can only be reached if an exception
+ * occurs.  The handler does a return.  So, a VerifyException should be thrown.
+ * The try block starts at line 77 (try t2;) and ends at line 113 (endtry t2;).
+ * Its handler starts at line 107 (catch t2 #0;).  The handler can only be reached
+ * by exception because of the athrow at line 106.
+ */
+super public class IsolatedHandlerInTry
+    version 51:0
+{
+
+public static final synthetic Field ___transactionFactory_2002349702336125:"Ljava/lang/Object;";
+
+public Method "<init>":"(Ljava/lang/Object;)V"
+    stack 5 locals 5
+{
+        invokestatic    Method ThreadLocalTransaction.getThreadLocalTransaction:"()Ljava/lang/Object;";
+        checkcast    class java/lang/Object;
+        astore_2;
+        aload_2;
+        invokestatic    Method TransactionLogicDonor.isActiveTransaction:"(Ljava/lang/Object;)Z";
+        ifeq    L21;
+        aload_0;
+        aload_1;
+        aload_2;
+        invokespecial    Method "<init>":"(Ljava/lang/Object;Ljava/lang/Object;)V";
+        return;
+    L21:    stack_frame_type append;
+        locals_map class java/lang/Object;
+        aload_2;
+        getstatic    Field ___transactionFactory_2002349702336125:"Ljava/lang/Object;";
+        invokestatic    Method TransactionLogicDonor.createTransaction:"(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;";
+        astore_2;
+        aload_2;
+        iconst_1;
+        pop;
+        aload_2;
+        invokestatic    Method ThreadLocalTransaction.setThreadLocalTransaction:"(Ljava/lang/Object;)V";
+        try t0, t1;
+        aload_0;
+        aload_1;
+        aload_2;
+        invokespecial    Method "<init>":"(Ljava/lang/Object;Ljava/lang/Object;)V";
+        aload_2;
+        pop;
+        aconst_null;
+        astore_2;
+        endtry t0, t1;
+        invokestatic    Method ThreadLocalTransaction.clearThreadLocalTransaction:"()V";
+        pop;
+        goto    L107;
+        catch t0 java/lang/Throwable;
+        try t2;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore_3;
+        aload_2;
+        pop;
+        aload_3;
+        instanceof    class ControlFlowError;
+        ifeq    L82;
+        new    class java/lang/NullPointerException;
+        dup;
+        invokespecial    Method java/lang/NullPointerException."<init>":"()V";
+        athrow;
+    L82:    stack_frame_type append;
+        locals_map class java/lang/Throwable;
+        aload_3;
+        instanceof    class java/lang/Error;
+        ifeq    L94;
+        aload_3;
+        checkcast    class java/lang/Error;
+        athrow;
+    L94:    stack_frame_type same;
+        aload_3;
+        checkcast    class java/lang/Exception;
+        catch t1 #0;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        athrow;
+        catch t2 #0;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore    4;
+        return;
+        endtry t2;
+        stack_frame_type full;
+        locals_map bogus, class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        invokestatic    Method ThreadLocalTransaction.clearThreadLocalTransaction:"()V";
+        athrow;
+    L107:    stack_frame_type full;
+        locals_map class IsolatedHandlerInTry, class java/lang/Object, null;
+        return;
+}
+
+} // end Class IsolatedHandlerInTry
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/handlerInTry/LoadHandlerInTry.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,86 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8075118
+ * @summary Allow a ctor to call super() from a switch bytecode.
+ * @compile HandlerInTry.jasm
+ * @compile IsolatedHandlerInTry.jasm
+ * @run main/othervm -Xverify:all LoadHandlerInTry
+ */
+
+/*
+ * This test has two cases:
+ *
+ * 1. class HandlerInTry:  Class HandlerInTry contains a TRY block in a
+ *    constructor whose handler is inside the same TRY block.  The last
+ *    few bytecodes and exception table look like this:
+ *
+ *         ...
+ *      87: athrow
+ *      88: astore        4
+ *      90: invokestatic  #9
+ *      93: aload         4
+ *      95: athrow
+ *      96: return
+ *    Exception table:
+ *       from    to  target type
+ *          36    46    53   Class java/lang/Throwable
+ *          36    46    88   any
+ *          53    90    88   any
+ *
+ * Note that the target for the third handler in the Exception table is
+ * inside its TRY block.
+ * Without the fix for bug JDK-8075118, this test will time out.
+ *
+ *
+ * 2. class IsolatedHandlerInTry: Class IsolatedHandlerInTry also contains
+ *    a TRY block in a constructoer whose handler is inside its TRY block.
+ *    But the handler is only reachable if an exception is thrown.  The
+ *    handler's bytecodes will not get parsed as part of parsing the TRY
+ *    block.  They will only get parsed as a handler for the TRY block.
+ *    Since the isolated handler does a 'return', a VerifyError exception
+ *    should get thrown.
+ */
+
+public class LoadHandlerInTry {
+
+    public static void main(String[] args) throws Exception {
+        System.out.println("Regression test for bug 8075118");
+        try {
+            Class newClass = Class.forName("HandlerInTry");
+        } catch (Exception e) {
+            System.out.println("Failed: Exception was thrown: " + e.toString());
+            throw e;
+        }
+
+        try {
+            Class newClass = Class.forName("IsolatedHandlerInTry");
+            throw new RuntimeException(
+                 "Failed to throw VerifyError for IsolatedHandlerInTry");
+        } catch (java.lang.VerifyError e) {
+            System.out.println("Passed: VerifyError exception was thrown");
+        }
+    }
+}
--- a/hotspot/test/runtime/memory/ReadFromNoaccessArea.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/runtime/memory/ReadFromNoaccessArea.java	Wed Jul 05 20:32:21 2017 +0200
@@ -50,6 +50,7 @@
           "-XX:+WhiteBoxAPI",
           "-XX:+UseCompressedOops",
           "-XX:HeapBaseMinAddress=33G",
+          "-XX:-CreateCoredumpOnCrash",
           "-Xmx32m",
           DummyClassWithMainTryingToReadFromNoaccessArea.class.getName());
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/stackMapCheck/BadMap.jasm	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,152 @@
+ /*
+  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+  *
+  * This code is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU General Public License version 2 only, as
+  * published by the Free Software Foundation.
+  *
+  * This code is distributed in the hope that it will be useful, but WITHOUT
+  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+  * version 2 for more details (a copy is included in the LICENSE file that
+  * accompanied this code).
+  *
+  * You should have received a copy of the GNU General Public License version
+  * 2 along with this work; if not, write to the Free Software Foundation,
+  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+  *
+  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+  * or visit www.oracle.com if you need additional information or have any
+  * questions.
+  *
+  */
+
+/*
+ * This class should throw VerifyError because the StackMap for bytecode index
+ * 45 (astore_2, line 123) is incorrect. The stack maps for bytecode indexes 45
+ * and 49 (astore, line 133) do not match because 45 does not supply enough
+ * locals to satisfy 49.
+ *
+ * The astore_2 bytecode at bytecode index 45 changes the type state,
+ * preventing the stackmap mismatch.  But, if the incoming type state is used,
+ * as required by JVM Spec 8, then the verifier will detected the stackmap
+ * mismatch, and throw VerifyError.
+ */
+
+super public class BadMap
+    version 51:0
+{
+
+
+public Method "<init>":"()V"
+    stack 1 locals 1
+{
+        aload_0;
+        invokespecial    Method java/lang/Object."<init>":"()V";
+        return;
+}
+
+public static Method main:"([Ljava/lang/String;)V"
+    throws java/lang/Throwable
+    stack 0 locals 1
+{
+        return;
+}
+
+public static Method foo:"()V"
+    stack 3 locals 5
+{
+        iconst_0;
+        ifne    L5;
+        nop;
+        try t7;
+    L5:    stack_frame_type full;
+        aconst_null;
+        dup;
+        astore_0;
+        astore_1;
+        try t0;
+        aconst_null;
+        astore_0;
+        endtry t0;
+        goto    L19;
+        catch t0 java/io/IOException;
+        stack_frame_type full;
+        locals_map class java/lang/Object, null;
+        stack_map class java/io/IOException;
+        astore_2;
+        aconst_null;
+        dup;
+        astore_1;
+        astore_0;
+        try t1;
+    L19:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object;
+        aconst_null;
+        astore_2;
+        endtry t1;
+        aload_1;
+        ifnonnull    L37;
+        nop;
+        goto    L37;
+        catch t1 #0;
+        catch t2 #0;
+        try t2;
+        stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore_3;
+        endtry t2;
+        aload_1;
+        ifnonnull    L35;
+        nop;
+    L35:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, bogus, class java/lang/Throwable;
+        aload_3;
+        athrow;
+        try t3, t4;
+    L37:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        aload_1;
+        ifnonnull    L42;
+        nop;
+        endtry t3, t4;
+    L42:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        goto    L54;
+        catch t3 java/lang/Exception;
+        try t5;
+        stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Exception;
+        astore_2;   // astore_2, at bci 45, that changes the type state.
+        endtry t5;
+        goto    L54;
+        catch t4 #0;
+        catch t5 #0;
+        catch t6 #0;
+        try t6;
+        stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        stack_map class java/lang/Throwable;
+        astore    4;
+        endtry t6;
+        aload    4;
+        athrow;
+    L54:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        goto    L57;
+    L57:    stack_frame_type full;
+        locals_map class java/lang/Object, class java/lang/Object, class java/lang/Object;
+        nop;
+        endtry t7;
+        return;
+        catch t7 #0;
+        stack_frame_type full;
+        stack_map class java/lang/Throwable;
+        nop;
+        athrow;
+}
+
+} // end Class BadMap
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/stackMapCheck/BadMapDstore.jasm	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,79 @@
+ /*
+  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+  *
+  * This code is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU General Public License version 2 only, as
+  * published by the Free Software Foundation.
+  *
+  * This code is distributed in the hope that it will be useful, but WITHOUT
+  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+  * version 2 for more details (a copy is included in the LICENSE file that
+  * accompanied this code).
+  *
+  * You should have received a copy of the GNU General Public License version
+  * 2 along with this work; if not, write to the Free Software Foundation,
+  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+  *
+  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+  * or visit www.oracle.com if you need additional information or have any
+  * questions.
+  *
+  */
+
+/*
+ * This class should throw VerifyError because the StackMap for bytecode index
+ * 9 (dstore_2, line 60) is incorrect. The stack maps for bytecode indexes 9
+ * and 18 (astore_2, line 70) do not match because 9 does not supply enough
+ * locals to satisfy 18.
+ *
+ * The dstore_2 bytecode at bytecode index 9 changes the type state,
+ * preventing the stackmap mismatch.  But, if the incoming type state is used,
+ * as required by JVM Spec 8, then the verifier will detected the stackmap
+ * mismatch, and throw VerifyError.
+ */
+
+super public class BadMapDstore
+    version 51:0
+{
+
+Field blah:I;
+
+public Method "<init>":"()V"
+    stack 1 locals 1
+{
+        aload_0;
+        invokespecial    Method java/lang/Object."<init>":"()V";
+        return;
+}
+
+public static Method main:"([Ljava/lang/String;)V"
+    stack 4 locals 4
+{
+        new    class BadMapDstore;
+        dup;
+        invokespecial    Method "<init>":"()V";
+        astore_1;
+        dconst_1;
+        try t0;
+        dstore_2;
+        aload_1;
+        iconst_5;
+        putfield    Field blah:"I";
+        endtry t0;
+        goto    L22;
+        catch t0 java/lang/Throwable;
+        stack_frame_type full;
+        locals_map class "[Ljava/lang/String;", class BadMapDstore, double;
+        stack_map class java/lang/Throwable;
+        astore_2;
+        aload_1;
+        dconst_0;
+        dstore_2;
+        pop;
+    L22:    stack_frame_type same;
+        return;
+}
+
+} // end Class BadMapDstore
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/stackMapCheck/BadMapIstore.jasm	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,79 @@
+ /*
+  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+  *
+  * This code is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU General Public License version 2 only, as
+  * published by the Free Software Foundation.
+  *
+  * This code is distributed in the hope that it will be useful, but WITHOUT
+  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+  * version 2 for more details (a copy is included in the LICENSE file that
+  * accompanied this code).
+  *
+  * You should have received a copy of the GNU General Public License version
+  * 2 along with this work; if not, write to the Free Software Foundation,
+  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+  *
+  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+  * or visit www.oracle.com if you need additional information or have any
+  * questions.
+  *
+  */
+
+/*
+ * This class should throw VerifyError because the StackMap for bytecode index
+ * 9 (istore_2, line 60) is incorrect. The stack maps for bytecode indexes 9
+ * and 18 (astore_2, line 70) do not match because 9 does not supply enough
+ * locals to satisfy 18.
+ *
+ * The istore_2 bytecode at bytecode index 9 changes the type state,
+ * preventing the stackmap mismatch.  But, if the incoming type state is used,
+ * as required by JVM Spec 8, then the verifier will detected the stackmap
+ * mismatch, and throw VerifyError.
+ */
+
+super public class BadMapIstore
+    version 51:0
+{
+
+Field blah:I;
+
+public Method "<init>":"()V"
+    stack 1 locals 1
+{
+        aload_0;
+        invokespecial    Method java/lang/Object."<init>":"()V";
+        return;
+}
+
+public static Method main:"([Ljava/lang/String;)V"
+    stack 2 locals 3
+{
+        new    class BadMapIstore;
+        dup;
+        invokespecial    Method "<init>":"()V";
+        astore_1;
+        iconst_2;
+        try t0;
+        istore_2;
+        aload_1;
+        iconst_5;
+        putfield    Field blah:"I";
+        endtry t0;
+        goto    L22;
+        catch t0 java/lang/Throwable;
+        stack_frame_type full;
+        locals_map class "[Ljava/lang/String;", class BadMapIstore, int;
+        stack_map class java/lang/Throwable;
+        astore_2;
+        aload_1;
+        iconst_4;
+        istore_2;
+        pop;
+    L22:    stack_frame_type same;
+        return;
+}
+
+} // end Class BadMapIstore
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/stackMapCheck/StackMapCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,63 @@
+ /*
+  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+  *
+  * This code is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU General Public License version 2 only, as
+  * published by the Free Software Foundation.
+  *
+  * This code is distributed in the hope that it will be useful, but WITHOUT
+  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+  * version 2 for more details (a copy is included in the LICENSE file that
+  * accompanied this code).
+  *
+  * You should have received a copy of the GNU General Public License version
+  * 2 along with this work; if not, write to the Free Software Foundation,
+  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+  *
+  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+  * or visit www.oracle.com if you need additional information or have any
+  * questions.
+  *
+  */
+
+/*
+ * @test
+ * @bug 7127066
+ * @summary Class verifier accepts an invalid class file
+ * @compile BadMap.jasm
+ * @compile BadMapDstore.jasm
+ * @compile BadMapIstore.jasm
+ * @run main/othervm -Xverify:all StackMapCheck
+ */
+
+public class StackMapCheck {
+    public static void main(String args[]) throws Throwable {
+
+        System.out.println("Regression test for bug 7127066");
+        try {
+            Class newClass = Class.forName("BadMap");
+            throw new RuntimeException(
+                "StackMapCheck failed, BadMap did not throw VerifyError");
+        } catch (java.lang.VerifyError e) {
+            System.out.println("BadMap passed, VerifyError was thrown");
+        }
+
+        try {
+            Class newClass = Class.forName("BadMapDstore");
+            throw new RuntimeException(
+                "StackMapCheck failed, BadMapDstore did not throw VerifyError");
+        } catch (java.lang.VerifyError e) {
+            System.out.println("BadMapDstore passed, VerifyError was thrown");
+        }
+
+        try {
+            Class newClass = Class.forName("BadMapIstore");
+            throw new RuntimeException(
+                "StackMapCheck failed, BadMapIstore did not throw VerifyError");
+        } catch (java.lang.VerifyError e) {
+            System.out.println("BadMapIstore passed, VerifyError was thrown");
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/sanity/MismatchedWhiteBox/WhiteBox.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test WhiteBox
+ * @bug 8011675
+ * @summary verify that whitebox can be used even if not all functions are declared in java-part
+ * @author igor.ignatyev@oracle.com
+ * @library /testlibrary
+ * @compile WhiteBox.java
+ * @run main ClassFileInstaller sun.hotspot.WhiteBox
+ * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI sun.hotspot.WhiteBox
+ */
+
+package sun.hotspot;
+
+public class WhiteBox {
+    private static native void registerNatives();
+    static { registerNatives(); }
+    public native int notExistedMethod();
+    public native int getHeapOopSize();
+    public static void main(String[] args) {
+        WhiteBox wb = new WhiteBox();
+        if (wb.getHeapOopSize() < 0) {
+            throw new Error("wb.getHeapOopSize() < 0");
+        }
+        boolean catched = false;
+        try {
+            wb.notExistedMethod();
+        } catch (UnsatisfiedLinkError e) {
+            catched = true;
+        }
+        if (!catched) {
+            throw new Error("wb.notExistedMethod() was invoked");
+        }
+    }
+}
--- a/hotspot/test/sanity/WhiteBox.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-/*
- * @test WhiteBox
- * @bug 8011675
- * @summary verify that whitebox can be used even if not all functions are declared in java-part
- * @author igor.ignatyev@oracle.com
- * @library /testlibrary
- * @compile WhiteBox.java
- * @run main ClassFileInstaller sun.hotspot.WhiteBox
- * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI sun.hotspot.WhiteBox
- * @clean sun.hotspot.WhiteBox
- */
-
-package sun.hotspot;
-
-public class WhiteBox {
-    private static native void registerNatives();
-    static { registerNatives(); }
-    public native int notExistedMethod();
-    public native int getHeapOopSize();
-    public static void main(String[] args) {
-        WhiteBox wb = new WhiteBox();
-        if (wb.getHeapOopSize() < 0) {
-            throw new Error("wb.getHeapOopSize() < 0");
-        }
-        boolean catched = false;
-        try {
-            wb.notExistedMethod();
-        } catch (UnsatisfiedLinkError e) {
-            catched = true;
-        }
-        if (!catched) {
-            throw new Error("wb.notExistedMethod() was invoked");
-        }
-    }
-}
--- a/hotspot/test/serviceability/attach/AttachWithStalePidFile.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/serviceability/attach/AttachWithStalePidFile.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,6 @@
  * @bug 7162400
  * @key regression
  * @summary Regression test for attach issue where stale pid files in /tmp lead to connection issues
- * @ignore 8024055
  * @library /testlibrary
  * @build com.oracle.java.testlibrary.* AttachWithStalePidFileTarget
  * @run main AttachWithStalePidFile
@@ -79,9 +78,7 @@
       // wait for vm.paused file to be created and delete it once we find it.
       waitForAndResumeVM(pid);
 
-      // unfortunately there's no reliable way to know the VM is ready to receive the
-      // attach request so we have to do an arbitrary sleep.
-      Thread.sleep(5000);
+      waitForTargetReady(target);
 
       HotSpotVirtualMachine vm = (HotSpotVirtualMachine)VirtualMachine.attach(((Integer)pid).toString());
       BufferedReader remoteDataReader = new BufferedReader(new InputStreamReader(vm.remoteDataDump()));
@@ -101,6 +98,16 @@
     }
   }
 
+  private static void waitForTargetReady(Process target) throws IOException {
+    BufferedReader br = new BufferedReader(new InputStreamReader(target.getInputStream()));
+    String line = br.readLine();
+    // wait for the ready message having been printed or EOF (line == null)
+    while (line != null && !line.equals(AttachWithStalePidFileTarget.READY_MSG)) {
+        line = br.readLine();
+    }
+    // target VM ready
+  }
+
   private static Path createJavaPidFile(int pid) throws Exception {
     Path pidFile = Paths.get("/tmp/.java_pid" + pid);
     if(Files.exists(pidFile)) {
@@ -108,8 +115,10 @@
         Files.delete(pidFile);
       }
       catch(FileSystemException e) {
-        if(e.getReason().equals("Operation not permitted")) {
+        if(e.getReason().matches("Operation not permitted|Not owner")) {
           System.out.println("Unable to remove exisiting stale PID file" + pidFile);
+          System.out.println("===================================================");
+          e.printStackTrace(System.out);
           return null;
         }
         throw e;
--- a/hotspot/test/serviceability/attach/AttachWithStalePidFileTarget.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/serviceability/attach/AttachWithStalePidFileTarget.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,10 @@
  * questions.
  */
 public class AttachWithStalePidFileTarget {
+  static final String READY_MSG = "*ready*";
   public static void main(String... args) throws Exception {
-    Thread.sleep(2*60*1000);
+      System.out.println(READY_MSG);
+      System.out.flush();
+      System.in.read();
   }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/serviceability/dcmd/jvmti/DataDumpDcmdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,60 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import com.oracle.java.testlibrary.OutputAnalyzer;
+import com.oracle.java.testlibrary.dcmd.CommandExecutor;
+import com.oracle.java.testlibrary.dcmd.JMXExecutor;
+import com.oracle.java.testlibrary.dcmd.PidJcmdExecutor;
+import org.testng.annotations.Test;
+
+/*
+ * @test
+ * @bug 8054890
+ * @summary Test of JVMTI.data_dump diagnostic command
+ * @library /testlibrary
+ * @build com.oracle.java.testlibrary.*
+ * @run testng DataDumpDcmdTest
+ */
+
+/**
+ * This test issues the "JVMTI.data_dump" command which will dump the related JVMTI
+ * data.
+ *
+ */
+public class DataDumpDcmdTest {
+    public void run(CommandExecutor executor) {
+        OutputAnalyzer output = executor.execute("JVMTI.data_dump");
+
+        output.stderrShouldBeEmpty();
+    }
+
+    @Test
+    public void jmx() throws Throwable {
+        run(new JMXExecutor());
+    }
+
+    @Test
+    public void cli() throws Throwable {
+        run(new PidJcmdExecutor());
+    }
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/serviceability/dcmd/vm/SetVMFlagTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,142 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import com.oracle.java.testlibrary.OutputAnalyzer;
+import com.oracle.java.testlibrary.dcmd.CommandExecutor;
+import com.oracle.java.testlibrary.dcmd.JMXExecutor;
+import org.testng.annotations.Test;
+import static org.testng.Assert.*;
+
+/*
+ * @test
+ * @bug 8054890
+ * @summary Test of VM.set_flag diagnostic command
+ * @library /testlibrary
+ * @build com.oracle.java.testlibrary.*
+ * @build com.oracle.java.testlibrary.dcmd.*
+ * @run testng SetVMFlagTest
+ */
+
+public class SetVMFlagTest {
+    private static final String MANAGEABLE_PATTERN = "\\s*bool\\s+(\\S+)\\s+[\\:]?=\\s+" +
+                                                     "(.*?)\\s+\\{manageable\\}";
+    private static final String IMMUTABLE_PATTERN = "\\s*uintx\\s+(\\S+)\\s+[\\:]?=\\s+" +
+                                                    "(.*?)\\s+\\{product\\}";
+
+    public void run(CommandExecutor executor) {
+        setMutableFlag(executor);
+        setMutableFlagWithInvalidValue(executor);
+        setImmutableFlag(executor);
+        setNonExistingFlag(executor);
+    }
+
+    @Test
+    public void jmx() {
+        run(new JMXExecutor());
+    }
+
+    private void setMutableFlag(CommandExecutor executor) {
+        OutputAnalyzer out = getAllFlags(executor);
+        String flagName = out.firstMatch(MANAGEABLE_PATTERN, 1);
+        String flagVal = out.firstMatch(MANAGEABLE_PATTERN, 2);
+
+        System.out.println("### Setting a mutable flag '" + flagName + "'");
+
+        if (flagVal == null) {
+            System.err.println(out.getOutput());
+            throw new Error("Can not find a boolean manageable flag");
+        }
+
+        Boolean blnVal = Boolean.parseBoolean(flagVal);
+
+        out = executor.execute("VM.set_flag " + flagName + " " + (blnVal ? 0 : 1));
+        out.stderrShouldBeEmpty();
+
+        out = getAllFlags(executor);
+
+        String newFlagVal = out.firstMatch(MANAGEABLE_PATTERN.replace("(\\S+)", flagName), 1);
+
+        assertNotEquals(newFlagVal, flagVal);
+    }
+
+    private void setMutableFlagWithInvalidValue(CommandExecutor executor) {
+        OutputAnalyzer out = getAllFlags(executor);
+        String flagName = out.firstMatch(MANAGEABLE_PATTERN, 1);
+        String flagVal = out.firstMatch(MANAGEABLE_PATTERN, 2);
+
+        System.out.println("### Setting a mutable flag '" + flagName + "' to an invalid value");
+
+        if (flagVal == null) {
+            System.err.println(out.getOutput());
+            throw new Error("Can not find a boolean manageable flag");
+        }
+
+        // a boolean flag accepts only 0/1 as its value
+        out = executor.execute("VM.set_flag " + flagName + " unexpected_value");
+        out.stderrShouldBeEmpty();
+        out.stdoutShouldContain("flag value must be a boolean (1 or 0)");
+
+        out = getAllFlags(executor);
+
+        String newFlagVal = out.firstMatch(MANAGEABLE_PATTERN.replace("(\\S+)", flagName), 1);
+
+        assertEquals(newFlagVal, flagVal);
+    }
+
+    private void setImmutableFlag(CommandExecutor executor) {
+        OutputAnalyzer out = getAllFlags(executor);
+        String flagName = out.firstMatch(IMMUTABLE_PATTERN, 1);
+        String flagVal = out.firstMatch(IMMUTABLE_PATTERN, 2);
+
+        System.out.println("### Setting an immutable flag '" + flagName + "'");
+
+        if (flagVal == null) {
+            System.err.println(out.getOutput());
+            throw new Error("Can not find an immutable uintx flag");
+        }
+
+        Long numVal = Long.parseLong(flagVal);
+
+        out = executor.execute("VM.set_flag " + flagName + " " + (numVal + 1));
+        out.stderrShouldBeEmpty();
+        out.stdoutShouldContain("only 'writeable' flags can be set");
+
+        out = getAllFlags(executor);
+
+        String newFlagVal = out.firstMatch(IMMUTABLE_PATTERN.replace("(\\S+)", flagName), 1);
+
+        assertEquals(newFlagVal, flagVal);
+    }
+
+    private void setNonExistingFlag(CommandExecutor executor) {
+        String unknownFlag = "ThisIsUnknownFlag";
+        System.out.println("### Setting a non-existing flag '" + unknownFlag + "'");
+        OutputAnalyzer out = executor.execute("VM.set_flag " + unknownFlag + " 1");
+        out.stderrShouldBeEmpty();
+        out.stdoutShouldContain("flag " + unknownFlag + " does not exist");
+    }
+
+    private OutputAnalyzer getAllFlags(CommandExecutor executor) {
+        return executor.execute("VM.flags -all", true);
+    }
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/serviceability/hprof/cpu002.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8076421
+ * @summary Test of hprof option crashes Zero
+ * @compile cpu002.java
+ * @run main/othervm -Xrunhprof:cpu=times,file=cpu002.hprof.out cpu002
+ */
+
+import java.io.*;
+
+public class cpu002 {
+    public static final int PASSED = 0;
+    public static final int FAILED = 2;
+    public static final int JCK_STATUS_BASE = 95;
+
+    public static void main (String argv[]) {
+        System.exit(run(argv,System.out) + JCK_STATUS_BASE);
+    }
+
+    public static int run(String argv[], PrintStream out) {
+        return PASSED;
+    }
+}
--- a/hotspot/test/serviceability/sa/jmap-hashcode/Test8028623.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/serviceability/sa/jmap-hashcode/Test8028623.java	Wed Jul 05 20:32:21 2017 +0200
@@ -30,7 +30,6 @@
  *          java.compiler
  *          java.management
  *          jdk.jvmstat/sun.jvmstat.monitor
- * @ignore 8044416
  * @build com.oracle.java.testlibrary.*
  * @compile -encoding utf8 Test8028623.java
  * @run main Test8028623
--- a/hotspot/test/serviceability/threads/TestFalseDeadLock.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/serviceability/threads/TestFalseDeadLock.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,6 @@
 
 /*
  * @test
- * @ignore 8061157
  * @bug 8016304
  * @summary Make sure no deadlock is reported for this program which has no deadlocks.
  * @library /testlibrary
--- a/hotspot/test/testlibrary/com/oracle/java/testlibrary/Platform.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/testlibrary/com/oracle/java/testlibrary/Platform.java	Wed Jul 05 20:32:21 2017 +0200
@@ -48,6 +48,10 @@
         return vmName.endsWith(" Graal VM");
     }
 
+    public static boolean isZero() {
+        return vmName.endsWith(" Zero VM");
+    }
+
     public static boolean isMinimal() {
         return vmName.endsWith(" Minimal VM");
     }
--- a/hotspot/test/testlibrary/com/oracle/java/testlibrary/ProcessTools.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/testlibrary/com/oracle/java/testlibrary/ProcessTools.java	Wed Jul 05 20:32:21 2017 +0200
@@ -139,6 +139,9 @@
     args.add(javapath);
     Collections.addAll(args, getPlatformSpecificVMArgs());
 
+    args.add("-cp");
+    args.add(System.getProperty("java.class.path"));
+
     if (addTestVmAndJavaOptions) {
       Collections.addAll(args, Utils.getTestJavaOpts());
     }
--- a/hotspot/test/testlibrary/com/oracle/java/testlibrary/dcmd/CommandExecutor.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/testlibrary/com/oracle/java/testlibrary/dcmd/CommandExecutor.java	Wed Jul 05 20:32:21 2017 +0200
@@ -40,16 +40,34 @@
      *          stderr, regardless of the specific executor used.
      */
     public final OutputAnalyzer execute(String cmd) throws CommandExecutorException {
-        System.out.printf("Running DCMD '%s' through '%s'%n", cmd, this.getClass().getSimpleName());
+        return execute(cmd, false);
+    }
+
+    /**
+     * Execute a diagnostic command
+     *
+     * @param cmd The diagnostic command to execute
+     * @param silent Do not print the command output
+     * @return an {@link jdk.testlibrary.OutputAnalyzer} encapsulating the output of the command
+     * @throws CommandExecutorException if there is an exception on the "calling side" while trying to execute the
+     *          Diagnostic Command. Exceptions thrown on the remote side are available as textual representations in
+     *          stderr, regardless of the specific executor used.
+     */
+    public final OutputAnalyzer execute(String cmd, boolean silent) throws CommandExecutorException {
+        if (!silent) {
+            System.out.printf("Running DCMD '%s' through '%s'%n", cmd, this.getClass().getSimpleName());
+        }
+
         OutputAnalyzer oa = executeImpl(cmd);
 
-        System.out.println("---------------- stdout ----------------");
-        System.out.println(oa.getStdout());
-        System.out.println("---------------- stderr ----------------");
-        System.out.println(oa.getStderr());
-        System.out.println("----------------------------------------");
-        System.out.println();
-
+        if (!silent) {
+            System.out.println("---------------- stdout ----------------");
+            System.out.println(oa.getStdout());
+            System.out.println("---------------- stderr ----------------");
+            System.out.println(oa.getStderr());
+            System.out.println("----------------------------------------");
+            System.out.println();
+        }
         return oa;
     }
 
--- a/hotspot/test/testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java	Wed Jul 05 20:32:21 2017 +0200
@@ -48,7 +48,7 @@
         ARCH("isARM", "isPPC", "isSparc", "isX86", "isX64"),
         BITNESS("is32bit", "is64bit"),
         OS("isAix", "isLinux", "isOSX", "isSolaris", "isWindows"),
-        VM_TYPE("isClient", "isServer", "isGraal", "isMinimal"),
+        VM_TYPE("isClient", "isServer", "isGraal", "isMinimal", "isZero"),
         IGNORED("isEmbedded", "isDebugBuild", "shouldSAAttach",
                 "canPtraceAttachLinux", "canAttachOSX", "isTieredSupported");
 
--- a/hotspot/test/testlibrary_tests/whitebox/vm_flags/VmFlagTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/hotspot/test/testlibrary_tests/whitebox/vm_flags/VmFlagTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,13 +21,13 @@
  * questions.
  */
 
-import java.util.Objects;
 import java.util.function.BiConsumer;
 import java.util.function.Function;
 import sun.hotspot.WhiteBox;
 import sun.management.*;
 import com.sun.management.*;
 import com.oracle.java.testlibrary.*;
+import java.lang.management.ManagementFactory;
 
 public final class VmFlagTest<T> {
     public static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox();
@@ -96,7 +96,7 @@
           return asString(getValue());
         }
         HotSpotDiagnosticMXBean diagnostic
-                = ManagementFactoryHelper.getDiagnosticMXBean();
+                = ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
         VMOption tmp;
         try {
             tmp = diagnostic.getVMOption(flagName);
--- a/jdk/.hgtags	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/.hgtags	Wed Jul 05 20:32:21 2017 +0200
@@ -305,3 +305,4 @@
 84c5527f742bc64562e47d3149c16197fe1c4c1a jdk9-b60
 da84dcac1b0b12c5b836b05ac75ecbfadee0cd32 jdk9-b61
 49118e68fbd4cc0044e718c47db681946d5efd69 jdk9-b62
+fd3281c400347088b36aeb16273aa679d53a81a4 jdk9-b63
--- a/jdk/make/Import.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/Import.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -32,11 +32,11 @@
 
 # Put the libraries here. Different locations for different target OS types.
 ifneq ($(OPENJDK_TARGET_OS), windows)
-  HOTSPOT_LIB_DIR := $(HOTSPOT_DIST)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)
+  HOTSPOT_LIB_DIR := $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)
   BASE_INSTALL_LIBRARIES_HERE := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base$(OPENJDK_TARGET_CPU_LIBDIR)
   SA_INSTALL_LIBRARIES_HERE := $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.hotspot.agent$(OPENJDK_TARGET_CPU_LIBDIR)
 else
-  HOTSPOT_LIB_DIR := $(HOTSPOT_DIST)/jre/bin
+  HOTSPOT_LIB_DIR := $(HOTSPOT_DIST)/bin
   BASE_INSTALL_LIBRARIES_HERE := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base
   SA_INSTALL_LIBRARIES_HERE := $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.hotspot.agent
 endif
@@ -80,11 +80,11 @@
 ################################################################################
 
 ifeq ($(OPENJDK_TARGET_OS), macosx)
-  JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig$(SHARED_LIBRARY_SUFFIX).dSYM) \
-      $(wildcard $(HOTSPOT_DIST)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
+  JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig$(SHARED_LIBRARY_SUFFIX).dSYM) \
+      $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
 else
-  JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.debuginfo) \
-      $(wildcard $(HOTSPOT_DIST)/jre/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
+  JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.debuginfo) \
+      $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
 endif
 
 ifneq ($(OPENJDK_TARGET_OS), windows)
--- a/jdk/make/data/tzdata/VERSION	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/VERSION	Wed Jul 05 20:32:21 2017 +0200
@@ -21,4 +21,4 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
-tzdata2015b
+tzdata2015d
--- a/jdk/make/data/tzdata/africa	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/africa	Wed Jul 05 20:32:21 2017 +0200
@@ -342,35 +342,29 @@
 # above) says DST had no affect on electricity consumption.  There is
 # no information about when DST will end this fall.  See:
 # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833
+
+# From Steffen Thorsen (2015-04-08):
+# Egypt will start DST on midnight after Thursday, April 30, 2015.
+# This is based on a law (no 35) from May 15, 2014 saying it starts the last
+# Thursday of April....  Clocks will still be turned back for Ramadan, but
+# dates not yet announced....
+# http://almogaz.com/news/weird-news/2015/04/05/1947105 ...
+# http://www.timeanddate.com/news/time/egypt-starts-dst-2015.html
+
+# From Ahmed Nazmy (2015-04-20):
+# Egypt's ministers cabinet just announced ... that it will cancel DST at
+# least for 2015.
 #
-# For now, guess that later spring and fall transitions will use
-# 2010's rules, and guess that Egypt will switch to standard time at
-# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the
-# first Friday after Ramadan.  To implement this,
-# transition dates for 2015 through 2037 were determined by running
-# the following program under GNU Emacs 24.3, with the results integrated
-# by hand into the table below.  Ramadan again intrudes on the guessed
-# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff.
-# (let ((islamic-year 1436))
-#   (while (< islamic-year 1460)
-#     (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
-#           (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
-#           (friday 5))
-#       (while (/= friday (mod a 7))
-#         (setq a (1- a)))
-#       (while (/= friday (mod b 7))
-#         (setq b (1+ b)))
-#       (setq a (1- a))
-#       (setq b (1- b))
-#       (setq a (calendar-gregorian-from-absolute a))
-#       (setq b (calendar-gregorian-from-absolute b))
-#       (insert
-#        (format
-#         (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n"
-#                 "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n")
-#         (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
-#         (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
-#     (setq islamic-year (+ 1 islamic-year))))
+# From Tim Parenti (2015-04-20):
+# http://english.ahram.org.eg/WriterArticles/NewsContentP/1/128195/Egypt/No-daylight-saving-this-summer-Egypts-prime-minist.aspx
+# "Egypt's cabinet agreed on Monday not to switch clocks for daylight saving
+# time this summer, and carry out studies on the possibility of canceling the
+# practice altogether in future years."
+#
+# From Paul Eggert (2015-04-20):
+# For now, assume DST will be canceled.  Any resumption would likely
+# use different rules anyway.
+
 Rule	Egypt	2008	only	-	Aug	lastThu	24:00	0	-
 Rule	Egypt	2009	only	-	Aug	20	24:00	0	-
 Rule	Egypt	2010	only	-	Aug	10	24:00	0	-
@@ -379,22 +373,7 @@
 Rule	Egypt	2014	only	-	May	15	24:00	1:00	S
 Rule	Egypt	2014	only	-	Jun	26	24:00	0	-
 Rule	Egypt	2014	only	-	Jul	31	24:00	1:00	S
-Rule	Egypt	2014	max	-	Sep	lastThu	24:00	0	-
-Rule	Egypt	2015	2019	-	Apr	lastFri	 0:00s	1:00	S
-Rule	Egypt	2015	only	-	Jun	11	24:00	0	-
-Rule	Egypt	2015	only	-	Jul	23	24:00	1:00	S
-Rule	Egypt	2016	only	-	Jun	 2	24:00	0	-
-Rule	Egypt	2016	only	-	Jul	 7	24:00	1:00	S
-Rule	Egypt	2017	only	-	May	25	24:00	0	-
-Rule	Egypt	2017	only	-	Jun	29	24:00	1:00	S
-Rule	Egypt	2018	only	-	May	10	24:00	0	-
-Rule	Egypt	2018	only	-	Jun	14	24:00	1:00	S
-Rule	Egypt	2019	only	-	May	 2	24:00	0	-
-Rule	Egypt	2019	only	-	Jun	 6	24:00	1:00	S
-Rule	Egypt	2020	only	-	May	28	24:00	1:00	S
-Rule	Egypt	2021	only	-	May	13	24:00	1:00	S
-Rule	Egypt	2022	only	-	May	 5	24:00	1:00	S
-Rule	Egypt	2023	max	-	Apr	lastFri	 0:00s	1:00	S
+Rule	Egypt	2014	only	-	Sep	lastThu	24:00	0	-
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Africa/Cairo	2:05:09 -	LMT	1900 Oct
--- a/jdk/make/data/tzdata/antarctica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/antarctica	Wed Jul 05 20:32:21 2017 +0200
@@ -38,41 +38,6 @@
 # I made up all time zone abbreviations mentioned here; corrections welcome!
 # FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
 
-# These rules are stolen from the 'southamerica' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
-Rule	ArgAQ	1964	1966	-	Oct	15	0:00	1:00	S
-Rule	ArgAQ	1967	only	-	Apr	 2	0:00	0	-
-Rule	ArgAQ	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
-Rule	ArgAQ	1968	1969	-	Apr	Sun>=1	0:00	0	-
-Rule	ArgAQ	1974	only	-	Jan	23	0:00	1:00	S
-Rule	ArgAQ	1974	only	-	May	 1	0:00	0	-
-Rule	ChileAQ	1972	1986	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1987	only	-	Apr	12	3:00u	0	-
-Rule	ChileAQ	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	ChileAQ	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1990	only	-	Mar	18	3:00u	0	-
-Rule	ChileAQ	1990	only	-	Sep	16	4:00u	1:00	S
-Rule	ChileAQ	1991	1996	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1997	only	-	Mar	30	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Sep	27	4:00u	1:00	S
-Rule	ChileAQ	1999	only	-	Apr	 4	3:00u	0	-
-Rule	ChileAQ	1999	2010	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	2000	2007	-	Mar	Sun>=9	3:00u	0	-
-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
-# which is used below in specifying the transition.
-Rule	ChileAQ	2008	only	-	Mar	30	3:00u	0	-
-Rule	ChileAQ	2009	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	2010	only	-	Apr	Sun>=1	3:00u	0	-
-Rule	ChileAQ	2011	only	-	May	Sun>=2	3:00u	0	-
-Rule	ChileAQ	2011	only	-	Aug	Sun>=16	4:00u	1:00	S
-Rule	ChileAQ	2012	2015	-	Apr	Sun>=23	3:00u	0	-
-Rule	ChileAQ	2012	2014	-	Sep	Sun>=2	4:00u	1:00	S
-
 # Argentina - year-round bases
 # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
 # Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01
@@ -367,21 +332,7 @@
 # USA - year-round bases
 #
 # Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
-#
-# From Ethan Dicks (1996-10-06):
-# It keeps the same time as Punta Arenas, Chile, because, just like us
-# and the South Pole, that's the other end of their supply line....
-# I verified with someone who was there that since 1980,
-# Palmer has followed Chile.  Prior to that, before the Falklands War,
-# Palmer used to be supplied from Argentina.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Palmer	0	-	zzz	1965
-			-4:00	ArgAQ	AR%sT	1969 Oct  5
-			-3:00	ArgAQ	AR%sT	1982 May
-			-4:00	ChileAQ	CL%sT	2015 Apr 26 3:00u
-			-3:00	-	CLT
-#
+# See 'southamerica' for Antarctica/Palmer, since it uses South American DST.
 #
 # McMurdo Station, Ross Island, since 1955-12
 # Amundsen-Scott South Pole Station, continuously occupied since 1956-11-20
--- a/jdk/make/data/tzdata/backward	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/backward	Wed Jul 05 20:32:21 2017 +0200
@@ -43,6 +43,7 @@
 Link	America/Indiana/Knox	America/Knox_IN
 Link	America/Kentucky/Louisville	America/Louisville
 Link	America/Argentina/Mendoza	America/Mendoza
+Link	America/Toronto		America/Montreal
 Link	America/Rio_Branco	America/Porto_Acre
 Link	America/Argentina/Cordoba	America/Rosario
 Link	America/Denver		America/Shiprock
--- a/jdk/make/data/tzdata/europe	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/europe	Wed Jul 05 20:32:21 2017 +0200
@@ -99,7 +99,7 @@
 #        1:00:14    SET           Swedish (1879-1899)*
 #        2:00       EET EEST      Eastern Europe
 #        3:00       FET           Further-eastern Europe (2011-2014)*
-#        3:00       MSK MSD  MSM* Moscow
+#        3:00       MSK MSD  MSM* Minsk, Moscow
 
 # From Peter Ilieve (1994-12-04),
 # The original six [EU members]: Belgium, France, (West) Germany, Italy,
--- a/jdk/make/data/tzdata/northamerica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/northamerica	Wed Jul 05 20:32:21 2017 +0200
@@ -250,9 +250,14 @@
 # The law doesn't give abbreviations.
 #
 # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
-# Public law 106-564 (2000-12-23) introduced the abbreviation
-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
-# See the file "australasia".
+# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
+# for time in Guam and the Northern Marianas.  See the file "australasia".
+#
+# From Paul Eggert (2015-04-17):
+# HST and HDT are standardized abbreviations for Hawaii-Aleutian
+# standard and daylight times.  See section 9.47 (p 234) of the
+# U.S. Government Printing Office Style Manual (2008)
+# http://www.gpo.gov/fdsys/pkg/GPO-STYLEMANUAL-2008/pdf/GPO-STYLEMANUAL-2008.pdf
 
 # From Arthur David Olson, 2005-08-09
 # The following was signed into law on 2005-08-08.
@@ -559,7 +564,7 @@
 			-11:00	-	BST	1969
 			-11:00	US	B%sT	1983 Oct 30  2:00
 			-10:00	US	AH%sT	1983 Nov 30
-			-10:00	US	HA%sT
+			-10:00	US	H%sT
 # The following switches don't quite make our 1970 cutoff.
 #
 # Shanks writes that part of southwest Alaska (e.g. Aniak)
@@ -1354,14 +1359,9 @@
 
 # Quebec
 
-# From Paul Eggert (2013-08-30):
-# Since 1970 most of Quebec has been like Toronto.
-# However, because earlier versions of the tz database mistakenly relied on data
-# from Shanks & Pottenger saying that Quebec differed from Ontario after 1970,
-# a separate entry was created for most of Quebec.  We're loath to lose
-# its pre-1970 info, even though the tz database is normally limited to
-# zones that differ after 1970, so keep this otherwise out-of-scope entry.
-
+# From Paul Eggert (2015-03-24):
+# See America/Toronto for most of Quebec, including Montreal.
+#
 # Matthews and Vincent (1998) also write that Quebec east of the -63
 # meridian is supposed to observe AST, but residents as far east as
 # Natashquan use EST/EDT, and residents east of Natashquan use AST.
@@ -1375,39 +1375,10 @@
 # For lack of better info, guess this practice began around 1970, contra to
 # Shanks & Pottenger who have this region observing AST/ADT.
 
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Mont	1917	only	-	Mar	25	2:00	1:00	D
-Rule	Mont	1917	only	-	Apr	24	0:00	0	S
-Rule	Mont	1919	only	-	Mar	31	2:30	1:00	D
-Rule	Mont	1919	only	-	Oct	25	2:30	0	S
-Rule	Mont	1920	only	-	May	 2	2:30	1:00	D
-Rule	Mont	1920	1922	-	Oct	Sun>=1	2:30	0	S
-Rule	Mont	1921	only	-	May	 1	2:00	1:00	D
-Rule	Mont	1922	only	-	Apr	30	2:00	1:00	D
-Rule	Mont	1924	only	-	May	17	2:00	1:00	D
-Rule	Mont	1924	1926	-	Sep	lastSun	2:30	0	S
-Rule	Mont	1925	1926	-	May	Sun>=1	2:00	1:00	D
-Rule	Mont	1927	1937	-	Apr	lastSat	24:00	1:00	D
-Rule	Mont	1927	1937	-	Sep	lastSat	24:00	0	S
-Rule	Mont	1938	1940	-	Apr	lastSun	0:00	1:00	D
-Rule	Mont	1938	1939	-	Sep	lastSun	0:00	0	S
-Rule	Mont	1946	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	Mont	1945	1948	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1949	1950	-	Oct	lastSun	2:00	0	S
-Rule	Mont	1951	1956	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1957	1973	-	Oct	lastSun	2:00	0	S
-
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Blanc-Sablon -3:48:28 -	LMT	1884
 			-4:00	Canada	A%sT	1970
 			-4:00	-	AST
-Zone America/Montreal	-4:54:16 -	LMT	1884
-			-5:00	Mont	E%sT	1918
-			-5:00	Canada	E%sT	1919
-			-5:00	Mont	E%sT	1942 Feb  9  2:00s
-			-5:00	Canada	E%sT	1946
-			-5:00	Mont	E%sT	1974
-			-5:00	Canada	E%sT
 
 # Ontario
 
@@ -1898,17 +1869,115 @@
 # Dawson switched to PST in 1973.  Inuvik switched to MST in 1979.
 # Mathew Englander (1996-10-07) gives the following refs:
 #	* 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
-#	c. 7 defines Yukon standard time as UTC-9.  This is still valid;
+#	c. 7 defines Yukon standard time as UTC-9....
 #	see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
+#	[http://canlii.ca/t/7vhg]
 #	* C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
 #	* O.I.C. 1980/02 established DST.
 #	* O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
-# with Englander.
-# From Chris Walton (2006-06-26):
-# Here is a link to the old daylight saving portion of the interpretation
-# act which was last updated in 1987:
-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
+
+# From Brian Inglis (2015-04-14):
+#
+# I tried to trace the history of Yukon time and found the following
+# regulations, giving the reference title and URL if found, regulation name,
+# and relevant quote if available.  Each regulation specifically revokes its
+# predecessor.  The final reference is to the current Interpretation Act
+# authorizing and resulting from these regulatory changes.
+#
+# Only recent regulations were retrievable via Yukon government site search or
+# index, and only some via Canadian legal sources.  Other sources used include
+# articles titled "Standard Time and Time Zones in Canada" from JRASC via ADS
+# Abstracts, cited by ADO for 1932 ..., and updated versions from 1958 and
+# 1970 quoted below; each article includes current extracts from provincial
+# and territorial ST and DST regulations at the end, summaries and details of
+# standard times and daylight saving time at many locations across Canada,
+# with time zone maps, tables and calculations for Canadian Sunrise, Sunset,
+# and LMST; they also cover many countries and global locations, with a chart
+# and table showing current Universal Time offsets, and may be useful as
+# another source of information for 1970 and earlier.
+#
+# * Standard Time and Time Zones in Canada; Smith, C.C.; JRASC, Vol. 26,
+#   pp.49-77; February 1932; SAO/NASA Astrophysics Data System (ADS)
+#   http://adsabs.harvard.edu/abs/1932JRASC..26...49S from p.75:
+#   Yukon Interpretation Ordinance
+#   Yukon standard time is the local mean time at the one hundred and
+#   thirty-fifth meridian.
+#
+# * Standard Time and Time Zones in Canada; Smith, C.C.; Thomson, Malcolm M.;
+#   JRASC, Vol. 52, pp.193-223; October 1958; SAO/NASA Astrophysics Data System
+#   (ADS) http://adsabs.harvard.edu/abs/1958JRASC..52..193S from pp.220-1:
+#   Yukon Interpretation Ordinance, 1955, Chap. 16.
+#
+#     (1) Subject to this section, standard time shall be reckoned as nine
+#     hours behind Greenwich Time and called Yukon Standard Time.
+#
+#     (2) Notwithstanding subsection (1), the Commissioner may make regulations
+#     varying the manner of reckoning standard time.
+#
+# * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
+#   http://? - no online source found
+#
+# * Standard Time and Time Zones in Canada; Thomson, Malcolm M.; JRASC,
+#   Vol. 64, pp.129-162; June 1970; SAO/NASA Astrophysics Data System (ADS)
+#   http://adsabs.harvard.edu/abs/1970JRASC..64..129T from p.156: Yukon
+#   Territory Commissioner's Order 1967-59 Interpretation Ordinance ...
+#
+#     1. Commissioner's Order 1966-20 dated at Whitehorse in the Yukon
+#     Territory on 27th January, 1966, is hereby revoked.
+#
+#     2. Yukon (East) Standard Time as defined by section 36 of the
+#     Interpretation Ordinance from and after mid-night on the 28th day of May,
+#     1967 shall be reckoned in the same manner as Pacific Standard Time, that
+#     is to say, eight hours behind Greenwich Time in the area of the Yukon
+#     Territory lying east of the 138th degree longitude west.
+#
+#     3. In the remainder of the Territory, lying west of the 138th degree
+#     longitude west, Yukon (West) Standard Time shall be reckoned as nine
+#     hours behind Greenwich Time.
+#
+# * Yukon Standard Time defined as Pacific Standard Time, YCO 1973/214
+#   http://www.canlii.org/en/yk/laws/regu/yco-1973-214/latest/yco-1973-214.html
+#   C.O. 1973/214 INTERPRETATION ACT ...
+#
+#     1. Effective October 28, 1973 Commissioner's Order 1967/59 is hereby
+#     revoked.
+#
+#     2. Yukon Standard Time as defined by section 36 of the Interpretation
+#     Act from and after midnight on the twenty-eighth day of October, 1973
+#     shall be reckoned in the same manner as Pacific Standard Time, that is
+#     to say eight hours behind Greenwich Time.
+#
+# * O.I.C. 1980/02 INTERPRETATION ACT
+#   http://? - no online source found
+#
+# * Yukon Daylight Saving Time, YOIC 1987/56
+#   http://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
+#   O.I.C. 1987/056 INTERPRETATION ACT ...
+#
+#   In every year between
+#     (a) two o'clock in the morning in the first Sunday in April, and
+#     (b) two o'clock in the morning in the last Sunday in October,
+#   Standard Time shall be reckoned as seven hours behind Greenwich Time and
+#   called Yukon Daylight Saving Time.
+#   ...
+#   Dated ... 9th day of March, A.D., 1987.
+#
+# * Yukon Daylight Saving Time 2006, YOIC 2006/127
+#   http://www.canlii.org/en/yk/laws/regu/yoic-2006-127/latest/yoic-2006-127.html
+#   O.I.C. 2006/127 INTERPRETATION ACT ...
+#
+#     1. In Yukon each year the time for general purposes shall be 7 hours
+#     behind Greenwich mean time during the period commencing at two o'clock
+#     in the forenoon on the second Sunday of March and ending at two o'clock
+#     in the forenoon on the first Sunday of November and shall be called
+#     Yukon Daylight Saving Time.
+#
+#     2. Order-in-Council 1987/56 is revoked.
+#
+#     3. This order comes into force January 1, 2007.
+#
+# * Interpretation Act, RSY 2002, c 125
+# http://www.canlii.org/en/yk/laws/stat/rsy-2002-c-125/latest/rsy-2002-c-125.html
 
 # From Rives McDow (1999-09-04):
 # Nunavut ... moved ... to incorporate the whole territory into one time zone.
@@ -2134,7 +2203,7 @@
 			-7:00	NT_YK	M%sT	1980
 			-7:00	Canada	M%sT
 Zone America/Whitehorse	-9:00:12 -	LMT	1900 Aug 20
-			-9:00	NT_YK	Y%sT	1966 Jul  1  2:00
+			-9:00	NT_YK	Y%sT	1967 May 28  0:00
 			-8:00	NT_YK	P%sT	1980
 			-8:00	Canada	P%sT
 Zone America/Dawson	-9:17:40 -	LMT	1900 Aug 20
--- a/jdk/make/data/tzdata/southamerica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/data/tzdata/southamerica	Wed Jul 05 20:32:21 2017 +0200
@@ -1121,6 +1121,60 @@
 
 # Chile
 
+# From Paul Eggert (2015-04-03):
+# Shanks & Pottenger says America/Santiago introduced standard time in
+# 1890 and rounds its UTC offset to 70W40; guess that in practice this
+# was the same offset as in 1916-1919.  It also says Pacific/Easter
+# standardized on 109W22 in 1890; assume this didn't change the clocks.
+#
+# Dates for America/Santiago from 1910 to 2004 are primarily from
+# the following source, cited by Oscar van Vlijmen (2006-10-08):
+# [1] Chile Law
+# http://www.webexhibits.org/daylightsaving/chile.html
+# This contains a copy of a this official table:
+# Cambios en la hora oficial de Chile desde 1900 (retrieved 2008-03-30)
+# http://web.archive.org/web/20080330200901/http://www.horaoficial.cl/cambio.htm
+# [1] needs several corrections, though.
+#
+# The first set of corrections is from:
+# [2] History of the Official Time of Chile
+# http://www.horaoficial.cl/ing/horaof_ing.html (retrieved 2012-03-06).  See:
+# http://web.archive.org/web/20120306042032/http://www.horaoficial.cl/ing/horaof_ing.html
+# This is an English translation of:
+# Historia de la hora oficial de Chile (retrieved 2012-10-24).  See:
+# http://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
+# A fancier Spanish version (requiring mouse-clicking) is at:
+# http://www.horaoficial.cl/historia_hora.html
+# Conflicts between [1] and [2] were resolved as follows:
+#
+#  - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
+#    Boletín Nº 1, Aviso Nº 1 (1910).  Go with [2].
+#
+#  - [1] says SMT was -4:42:45, [2] says Chile's official time from
+#    1916 to 1919 was -4:42:46.3, the meridian of Chile's National
+#    Astronomical Observatory (OAN), then located in what is now
+#    Quinta Normal in Santiago.  Go with [2], rounding it to -4:42:46.
+#
+#  - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
+#    Boletín Nº 22, Aviso Nº 129/1918 (1918-08-23).  Go with [2].
+#
+#  - [1] does not give times for transitions; assume they occur
+#    at midnight mainland time, the current common practice.  However,
+#    go with [2]'s specification of 23:00 for the 1947-05-21 transition.
+#
+# Another correction to [1] is from Jesper Nørgaard Welen, who
+# wrote (2006-10-08), "I think that there are some obvious mistakes in
+# the suggested link from Oscar van Vlijmen,... for instance entry 66
+# says that GMT-4 ended 1990-09-12 while entry 67 only begins GMT-3 at
+# 1990-09-15 (they should have been 1990-09-15 and 1990-09-16
+# respectively), but anyhow it clears up some doubts too."
+#
+# Data for Pacific/Easter from 1910 through 1967 come from Shanks &
+# Pottenger.  After that, for lack of better info assume
+# Pacific/Easter is always two hours behind America/Santiago;
+# this is known to work for DST transitions starting in 2008 and
+# may well be true for earlier transitions.
+
 # From Eduardo Krell (1995-10-19):
 # The law says to switch to DST at midnight [24:00] on the second SATURDAY
 # of October....  The law is the same for March and October.
@@ -1133,78 +1187,35 @@
 # Because of the same drought, the government decided to end DST later,
 # on April 3, (one-time change).
 
-# From Oscar van Vlijmen (2006-10-08):
-# http://www.horaoficial.cl/cambio.htm
-
-# From Jesper Nørgaard Welen (2006-10-08):
-# I think that there are some obvious mistakes in the suggested link
-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
-# anyhow it clears up some doubts too.
-
-# From Paul Eggert (2014-08-12):
-# The following data entries for Chile and America/Santiago are from
-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
-# Jesper Nørgaard Welen.  The data entries for Pacific/Easter are from Shanks
-# & Pottenger, except with DST transitions after 1932 cloned from
-# America/Santiago.  The pre-1980 Pacific/Easter data entries are dubious,
-# but we have no other source.
-
 # From Germán Poo-Caamaño (2008-03-03):
 # Due to drought, Chile extends Daylight Time in three weeks.  This
 # is one-time change (Saturday 3/29 at 24:00 for America/Santiago
 # and Saturday 3/29 at 22:00 for Pacific/Easter)
 # The Supreme Decree is located at
 # http://www.shoa.cl/servicios/supremo316.pdf
-# and the instructions for 2008 are located in:
-# http://www.horaoficial.cl/cambio.htm
-
+#
 # From José Miguel Garrido (2008-03-05):
-# ...
-# You could see the announces of the change on
 # http://www.shoa.cl/noticias/2008/04hora/hora.htm
 
 # From Angel Chiang (2010-03-04):
 # Subject: DST in Chile exceptionally extended to 3 April due to earthquake
 # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
-# (in Spanish, last paragraph).
 #
-# This is breaking news. There should be more information available later.
-
 # From Arthur David Olson (2010-03-06):
 # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
 
-# From Glenn Eychaner (2011-03-02):
-# It appears that the Chilean government has decided to postpone the
-# change from summer time to winter time again, by three weeks to April
-# 2nd:
-# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
-#
-# This is not yet reflected in the official "cambio de hora" site, but
-# probably will be soon:
-# http://www.horaoficial.cl/cambio.htm
-
-# From Arthur David Olson (2011-03-02):
-# The emol.com article mentions a water shortage as the cause of the
-# postponement, which may mean that it's not a permanent change.
-
 # From Glenn Eychaner (2011-03-28):
-# The article:
 # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
-#
 # In English:
 # Chile's clocks will go back an hour this year on the 7th of May instead
 # of this Saturday. They will go forward again the 3rd Saturday in
-# August, not in October as they have since 1968. This is a pilot plan
-# which will be reevaluated in 2012.
+# August, not in October as they have since 1968.
 
 # From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
 # As stated in the website of the Chilean Energy Ministry
 # http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
 # The Chilean Government has decided to postpone the entrance into winter time
-# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
-# been yet formalized but it will within the next days.
+# (to leave DST) from March 11 2012 to April 28th 2012....
 # Quote from the website communication:
 #
 # 6. For the year 2012, the dates of entry into winter time will be as follows:
@@ -1237,17 +1248,9 @@
 # From Paul Eggert (2015-03-03):
 # For now, assume that the extension will persist indefinitely.
 
-# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
-# 'antarctica' file.
-
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Chile	1927	1932	-	Sep	 1	0:00	1:00	S
+Rule	Chile	1927	1931	-	Sep	 1	0:00	1:00	S
 Rule	Chile	1928	1932	-	Apr	 1	0:00	0	-
-Rule	Chile	1942	only	-	Jun	 1	4:00u	0	-
-Rule	Chile	1942	only	-	Aug	 1	5:00u	1:00	S
-Rule	Chile	1946	only	-	Jul	15	4:00u	1:00	S
-Rule	Chile	1946	only	-	Sep	 1	3:00u	0:00	-
-Rule	Chile	1947	only	-	Apr	 1	4:00u	0	-
 Rule	Chile	1968	only	-	Nov	 3	4:00u	1:00	S
 Rule	Chile	1969	only	-	Mar	30	3:00u	0	-
 Rule	Chile	1969	only	-	Nov	23	4:00u	1:00	S
@@ -1258,10 +1261,8 @@
 Rule	Chile	1973	only	-	Sep	30	4:00u	1:00	S
 Rule	Chile	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
 Rule	Chile	1987	only	-	Apr	12	3:00u	0	-
-Rule	Chile	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	Chile	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1990	only	-	Mar	18	3:00u	0	-
+Rule	Chile	1988	1990	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1988	1989	-	Oct	Sun>=9	4:00u	1:00	S
 Rule	Chile	1990	only	-	Sep	16	4:00u	1:00	S
 Rule	Chile	1991	1996	-	Mar	Sun>=9	3:00u	0	-
 Rule	Chile	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
@@ -1284,15 +1285,21 @@
 # (1996-09) says 1998-03-08.  Ignore these.
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Santiago	-4:42:46 -	LMT	1890
-			-4:42:46 -	SMT	1910        # Santiago Mean Time
+			-4:42:46 -	SMT	1910 Jan 10 # Santiago Mean Time
 			-5:00	-	CLT	1916 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1918 Sep  1 # Santiago Mean Time
-			-4:00	-	CLT	1919 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1927 Sep  1 # Santiago Mean Time
-			-5:00	Chile	CL%sT	1947 May 22 # Chile Time
+			-4:42:46 -	SMT	1918 Sep 10
+			-4:00	-	CLT	1919 Jul  1
+			-4:42:46 -	SMT	1927 Sep  1
+			-5:00	Chile	CL%sT	1932 Sep  1
+			-4:00	-	CLT	1942 Jun  1
+			-5:00	-	CLT	1942 Aug  1
+			-4:00	-	CLT	1946 Jul 15
+			-4:00	1:00	CLST	1946 Sep  1 # central Chile
+			-4:00	-	CLT	1947 Apr  1
+			-5:00	-	CLT	1947 May 21 23:00
 			-4:00	Chile	CL%sT	2015 Apr 26  3:00u
 			-3:00	-	CLT
-Zone Pacific/Easter	-7:17:44 -	LMT	1890
+Zone Pacific/Easter	-7:17:28 -	LMT	1890
 			-7:17:28 -	EMT	1932 Sep    # Easter Mean Time
 			-7:00	Chile	EAS%sT	1982 Mar 14 3:00u # Easter Time
 			-6:00	Chile	EAS%sT	2015 Apr 26 3:00u
@@ -1302,6 +1309,25 @@
 # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
 # and Antarctic bases, are like America/Santiago.
 
+# Antarctic base using South American rules
+# (See the file 'antarctica' for more.)
+#
+# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+#
+# From Ethan Dicks (1996-10-06):
+# It keeps the same time as Punta Arenas, Chile, because, just like us
+# and the South Pole, that's the other end of their supply line....
+# I verified with someone who was there that since 1980,
+# Palmer has followed Chile.  Prior to that, before the Falklands War,
+# Palmer used to be supplied from Argentina.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Palmer	0	-	zzz	1965
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1982 May
+			-4:00	Chile	CL%sT	2015 Apr 26 3:00u
+			-3:00	-	CLT
+
 # Colombia
 
 # Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest.  He writes,
--- a/jdk/make/lib/Awt2dLibraries.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/lib/Awt2dLibraries.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -827,7 +827,7 @@
     LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.desktop/macosx/native/libsplashscreen
   endif
 
-  LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE \
+  LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0 \
       $(addprefix -I, $(LIBSPLASHSCREEN_DIRS)) \
       $(LIBJAVA_HEADER_FLAGS) \
       #
--- a/jdk/make/lib/Lib-java.instrument.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/lib/Lib-java.instrument.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,9 @@
 
 include LibCommon.gmk
 
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, lib/Lib-java.instrument.gmk))
+
 ################################################################################
 
 LIBINSTRUMENT_SRC := $(JDK_TOPDIR)/src/java.instrument/share/native/libinstrument \
--- a/jdk/make/lib/Lib-java.management.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/lib/Lib-java.management.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -30,33 +30,14 @@
 
 ################################################################################
 
-BUILD_LIBMANAGEMENT_SRC += $(JDK_TOPDIR)/src/java.management/share/native/libmanagement \
+LIBMANAGEMENT_SRC += $(JDK_TOPDIR)/src/java.management/share/native/libmanagement \
     $(JDK_TOPDIR)/src/java.management/$(OPENJDK_TARGET_OS_TYPE)/native/libmanagement
-BUILD_LIBMANAGEMENT_CFLAGS := -I$(JDK_TOPDIR)/src/java.management/share/native/include \
-    $(addprefix -I,$(BUILD_LIBMANAGEMENT_SRC)) \
+LIBMANAGEMENT_CFLAGS := -I$(JDK_TOPDIR)/src/java.management/share/native/include \
+    $(addprefix -I,$(LIBMANAGEMENT_SRC)) \
     -I$(SUPPORT_OUTPUTDIR)/headers/java.management \
     $(LIBJAVA_HEADER_FLAGS) \
     #
 
-# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
-# a binary that is compatible with windows versions older than 7/2008R2.
-# See MSDN documentation for GetProcessMemoryInfo for more information.
-BUILD_LIBMANAGEMENT_CFLAGS += -DPSAPI_VERSION=1
-
-BUILD_LIBMANAGEMENT_EXCLUDES :=
-
-ifneq ($(OPENJDK_TARGET_OS), solaris)
-  BUILD_LIBMANAGEMENT_EXCLUDES += SolarisOperatingSystem.c
-endif
-
-ifneq ($(OPENJDK_TARGET_OS), linux)
-  BUILD_LIBMANAGEMENT_EXCLUDES += LinuxOperatingSystem.c
-endif
-
-ifneq ($(OPENJDK_TARGET_OS), macosx)
-  BUILD_LIBMANAGEMENT_EXCLUDES += MacosxOperatingSystem.c
-endif
-
 LIBMANAGEMENT_OPTIMIZATION := HIGH
 ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
   ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
@@ -64,17 +45,13 @@
   endif
 endif
 
-# Make it possible to override this variable
-LIBMANAGEMENT_MAPFILE ?= $(JDK_TOPDIR)/make/mapfiles/libmanagement/mapfile-vers
-
 $(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT, \
     LIBRARY := management, \
     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
-    SRC := $(BUILD_LIBMANAGEMENT_SRC), \
-    EXCLUDE_FILES := $(BUILD_LIBMANAGEMENT_EXCLUDES), \
+    SRC := $(LIBMANAGEMENT_SRC), \
     OPTIMIZATION := $(LIBMANAGEMENT_OPTIMIZATION), \
-    CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) $(BUILD_LIBMANAGEMENT_CFLAGS), \
-    MAPFILE := $(LIBMANAGEMENT_MAPFILE), \
+    CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) $(LIBMANAGEMENT_CFLAGS), \
+    MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libmanagement/mapfile-vers, \
     LDFLAGS := $(LDFLAGS_JDKLIB) \
         $(call SET_SHARED_LIBRARY_ORIGIN), \
     LDFLAGS_solaris := -lkstat, \
--- a/jdk/make/lib/Lib-jdk.hprof.agent.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/lib/Lib-jdk.hprof.agent.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -49,6 +49,7 @@
     CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
         $(BUILD_LIBHPROF_CFLAGS), \
     CFLAGS_debug := -DHPROF_LOGGING, \
+    CFLAGS_windows := -D_WINSOCK_DEPRECATED_NO_WARNINGS, \
     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libhprof/mapfile-vers, \
     LDFLAGS := $(LDFLAGS_JDKLIB) \
         $(call SET_SHARED_LIBRARY_ORIGIN), \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/make/lib/Lib-jdk.management.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,80 @@
+#
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+include LibCommon.gmk
+
+# Hook to include the corresponding custom file, if present.
+$(eval $(call IncludeCustomExtension, jdk, lib/Lib-jdk.management.gmk))
+
+################################################################################
+
+LIBMANAGEMENT_EXT_SRC += $(JDK_TOPDIR)/src/jdk.management/share/native/libmanagement_ext \
+    $(JDK_TOPDIR)/src/jdk.management/$(OPENJDK_TARGET_OS_TYPE)/native/libmanagement_ext       \
+    $(JDK_TOPDIR)/src/jdk.management/$(OPENJDK_TARGET_OS)/native/libmanagement_ext
+LIBMANAGEMENT_EXT_CFLAGS := -I$(JDK_TOPDIR)/src/java.management/share/native/include \
+    $(addprefix -I,$(LIBMANAGEMENT_EXT_SRC)) \
+    -I$(SUPPORT_OUTPUTDIR)/headers/jdk.management \
+    $(LIBJAVA_HEADER_FLAGS) \
+    #
+
+# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
+# a binary that is compatible with windows versions older than 7/2008R2.
+# See MSDN documentation for GetProcessMemoryInfo for more information.
+BUILD_LIBMANAGEMENT_EXT_CFLAGS += -DPSAPI_VERSION=1
+
+LIBMANAGEMENT_EXT_OPTIMIZATION := HIGH
+ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
+  ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
+    LIBMANAGEMENT_EXT_OPTIMIZATION := LOW
+  endif
+endif
+
+$(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT_EXT, \
+    LIBRARY := management_ext, \
+    OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
+    SRC := $(LIBMANAGEMENT_EXT_SRC), \
+    LANG := C, \
+    OPTIMIZATION := $(LIBMANAGEMENT_EXT_OPTIMIZATION), \
+    CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) $(LIBMANAGEMENT_EXT_CFLAGS), \
+    MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libmanagement_ext/mapfile-vers, \
+    LDFLAGS := $(LDFLAGS_JDKLIB) \
+        $(call SET_SHARED_LIBRARY_ORIGIN), \
+    LDFLAGS_solaris := -lkstat, \
+    LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \
+    LDFLAGS_SUFFIX_windows := jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib, \
+    LDFLAGS_SUFFIX_aix := -lperfstat,\
+    VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \
+    RC_FLAGS := $(RC_FLAGS) \
+        -D "JDK_FNAME=management_ext.dll" \
+        -D "JDK_INTERNAL_NAME=management_ext" \
+        -D "JDK_FTYPE=0x2L", \
+    OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libmanagement_ext, \
+    DEBUG_SYMBOLS := true))
+
+$(BUILD_LIBMANAGEMENT_EXT): $(call FindLib, java.base, java)
+
+TARGETS += $(BUILD_LIBMANAGEMENT_EXT)
+
+################################################################################
--- a/jdk/make/mapfiles/libmanagement/mapfile-vers	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/mapfiles/libmanagement/mapfile-vers	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,37 +27,10 @@
 
 SUNWprivate_1.1 {
 	global:
-	    Java_sun_management_OperatingSystemImpl_getCommittedVirtualMemorySize0;
-	    Java_sun_management_OperatingSystemImpl_getFreePhysicalMemorySize0;
-	    Java_sun_management_OperatingSystemImpl_getFreeSwapSpaceSize0;
-	    Java_sun_management_OperatingSystemImpl_getMaxFileDescriptorCount0;
-	    Java_sun_management_OperatingSystemImpl_getOpenFileDescriptorCount0;
-	    Java_sun_management_OperatingSystemImpl_getProcessCpuLoad0;
-	    Java_sun_management_OperatingSystemImpl_getProcessCpuTime0;
-	    Java_sun_management_OperatingSystemImpl_getSystemCpuLoad0;
-	    Java_sun_management_OperatingSystemImpl_getTotalPhysicalMemorySize0;
-	    Java_sun_management_OperatingSystemImpl_getTotalSwapSpaceSize0;
-	    Java_sun_management_OperatingSystemImpl_initialize0;
 	    Java_sun_management_ClassLoadingImpl_setVerboseClass;
-            Java_sun_management_DiagnosticCommandImpl_executeDiagnosticCommand;
-            Java_sun_management_DiagnosticCommandImpl_getDiagnosticCommands;
-            Java_sun_management_DiagnosticCommandImpl_getDiagnosticCommandInfo;
-            Java_sun_management_DiagnosticCommandImpl_setNotificationEnabled;
-	    Java_sun_management_FileSystemImpl_isAccessUserOnly0;
-	    Java_sun_management_Flag_getAllFlagNames;
-	    Java_sun_management_Flag_getFlags;
-	    Java_sun_management_Flag_getInternalFlagCount;
-	    Java_sun_management_Flag_initialize;
-	    Java_sun_management_Flag_setLongValue;
-	    Java_sun_management_Flag_setBooleanValue;
-	    Java_sun_management_Flag_setStringValue;
-	    Java_sun_management_GarbageCollectorImpl_getCollectionCount;
+            Java_sun_management_FileSystemImpl_isAccessUserOnly0;
+            Java_sun_management_GarbageCollectorImpl_getCollectionCount;
 	    Java_sun_management_GarbageCollectorImpl_getCollectionTime;
-	    Java_sun_management_GarbageCollectorImpl_setNotificationEnabled;
-	    Java_sun_management_GcInfoBuilder_fillGcAttributeInfo;
-	    Java_sun_management_GcInfoBuilder_getLastGcInfo0;
-	    Java_sun_management_GcInfoBuilder_getNumGcExtAttributes;
-	    Java_sun_management_HotSpotDiagnostic_dumpHeap0;
 	    Java_sun_management_HotspotThread_getInternalThreadCount;
 	    Java_sun_management_HotspotThread_getInternalThreadTimes0;
 	    Java_sun_management_MemoryImpl_getMemoryManagers0;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/make/mapfiles/libmanagement_ext/mapfile-vers	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,60 @@
+#
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+	global:
+	    Java_com_sun_management_internal_OperatingSystemImpl_getCommittedVirtualMemorySize0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getFreePhysicalMemorySize0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getFreeSwapSpaceSize0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getMaxFileDescriptorCount0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getOpenFileDescriptorCount0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuTime0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getTotalPhysicalMemorySize0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_getTotalSwapSpaceSize0;
+	    Java_com_sun_management_internal_OperatingSystemImpl_initialize0;
+            Java_com_sun_management_internal_DiagnosticCommandImpl_executeDiagnosticCommand;
+            Java_com_sun_management_internal_DiagnosticCommandImpl_getDiagnosticCommands;
+            Java_com_sun_management_internal_DiagnosticCommandImpl_getDiagnosticCommandInfo;
+            Java_com_sun_management_internal_DiagnosticCommandImpl_setNotificationEnabled;
+	    Java_com_sun_management_internal_Flag_getAllFlagNames;
+	    Java_com_sun_management_internal_Flag_getFlags;
+	    Java_com_sun_management_internal_Flag_getInternalFlagCount;
+	    Java_com_sun_management_internal_Flag_initialize;
+	    Java_com_sun_management_internal_Flag_setLongValue;
+	    Java_com_sun_management_internal_Flag_setBooleanValue;
+	    Java_com_sun_management_internal_Flag_setStringValue;
+            Java_com_sun_management_internal_GarbageCollectorExtImpl_setNotificationEnabled;
+	    Java_com_sun_management_internal_GcInfoBuilder_fillGcAttributeInfo;
+	    Java_com_sun_management_internal_GcInfoBuilder_getLastGcInfo0;
+	    Java_com_sun_management_internal_GcInfoBuilder_getNumGcExtAttributes;
+	    Java_com_sun_management_internal_HotSpotDiagnostic_dumpHeap0;
+            JNI_OnLoad;
+	local:
+	    *;
+};
--- a/jdk/make/src/classes/build/tools/module/boot.modules	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/make/src/classes/build/tools/module/boot.modules	Wed Jul 05 20:32:21 2017 +0200
@@ -22,6 +22,7 @@
 jdk.hprof.agent
 jdk.httpserver
 jdk.jfr
+jdk.management
 jdk.management.cmm
 jdk.naming.rmi
 jdk.sctp
--- a/jdk/src/java.base/share/classes/com/sun/crypto/provider/GCTR.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/com/sun/crypto/provider/GCTR.java	Wed Jul 05 20:32:21 2017 +0200
@@ -38,7 +38,17 @@
  * under section 6.5. It needs to be constructed w/ an initialized
  * cipher object, and initial counter block(ICB). Given an input X
  * of arbitrary length, it processes and returns an output which has
- * the same length as X.
+ * the same length as X. The invariants of this class are:
+ *
+ * (1) The length of intialCounterBlk (and also of its clones, e.g.,
+ * fields counter and counterSave) is equal to AES_BLOCK_SIZE.
+ *
+ * (2) After construction, the field counter never becomes null, it
+ * always contains a byte array of length AES_BLOCK_SIZE.
+ *
+ * If any invariant is broken, failures can occur because the
+ * AESCrypt.encryptBlock method can be intrinsified on the HotSpot VM
+ * (see JDK-8067648 for details).
  *
  * <p>This function is used in the implementation of GCM mode.
  *
@@ -59,6 +69,10 @@
     // NOTE: cipher should already be initialized
     GCTR(SymmetricCipher cipher, byte[] initialCounterBlk) {
         this.aes = cipher;
+        if (initialCounterBlk.length != AES_BLOCK_SIZE) {
+            throw new RuntimeException("length of initial counter block (" + initialCounterBlk.length +
+                                       ") not equal to AES_BLOCK_SIZE (" + AES_BLOCK_SIZE + ")");
+        }
         this.icb = initialCounterBlk;
         this.counter = icb.clone();
     }
@@ -137,6 +151,8 @@
      * Restores the content of this object to the previous saved one.
      */
     void restore() {
-        this.counter = this.counterSave;
+        if (this.counterSave != null) {
+            this.counter = this.counterSave;
+        }
     }
 }
--- a/jdk/src/java.base/share/classes/java/lang/Class.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/Class.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1312,7 +1312,7 @@
         // e) Anonymous classes
 
 
-        // JVM Spec 4.8.6: A class must have an EnclosingMethod
+        // JVM Spec 4.7.7: A class must have an EnclosingMethod
         // attribute if and only if it is a local class or an
         // anonymous class.
         EnclosingMethodInfo enclosingInfo = getEnclosingMethodInfo();
@@ -1357,28 +1357,7 @@
             simpleName = getName();
             return simpleName.substring(simpleName.lastIndexOf('.')+1); // strip the package name
         }
-        // According to JLS3 "Binary Compatibility" (13.1) the binary
-        // name of non-package classes (not top level) is the binary
-        // name of the immediately enclosing class followed by a '$' followed by:
-        // (for nested and inner classes): the simple name.
-        // (for local classes): 1 or more digits followed by the simple name.
-        // (for anonymous classes): 1 or more digits.
-
-        // Since getSimpleBinaryName() will strip the binary name of
-        // the immediately enclosing class, we are now looking at a
-        // string that matches the regular expression "\$[0-9]*"
-        // followed by a simple name (considering the simple of an
-        // anonymous class to be the empty string).
-
-        // Remove leading "\$[0-9]*" from the name
-        int length = simpleName.length();
-        if (length < 1 || simpleName.charAt(0) != '$')
-            throw new InternalError("Malformed class name");
-        int index = 1;
-        while (index < length && isAsciiDigit(simpleName.charAt(index)))
-            index++;
-        // Eventually, this is the empty string iff this is an anonymous class
-        return simpleName.substring(index);
+        return simpleName;
     }
 
     /**
@@ -1489,20 +1468,20 @@
         Class<?> enclosingClass = getEnclosingClass();
         if (enclosingClass == null) // top level class
             return null;
-        // Otherwise, strip the enclosing class' name
-        try {
-            return getName().substring(enclosingClass.getName().length());
-        } catch (IndexOutOfBoundsException ex) {
-            throw new InternalError("Malformed class name", ex);
-        }
+        String name = getSimpleBinaryName0();
+        if (name == null) // anonymous class
+            return "";
+        return name;
     }
 
+    private native String getSimpleBinaryName0();
+
     /**
      * Returns {@code true} if this is a local class or an anonymous
      * class.  Returns {@code false} otherwise.
      */
     private boolean isLocalOrAnonymousClass() {
-        // JVM Spec 4.8.6: A class must have an EnclosingMethod
+        // JVM Spec 4.7.7: A class must have an EnclosingMethod
         // attribute if and only if it is a local class or an
         // anonymous class.
         return getEnclosingMethodInfo() != null;
--- a/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/RuntimePermission.java	Wed Jul 05 20:32:21 2017 +0200
@@ -333,6 +333,19 @@
  *   "../../../technotes/guides/plugin/developer_guide/rsa_how.html#use">
  *   usePolicy Permission</a>.</td>
  * </tr>
+ *
+ * <tr>
+ *   <td>localeServiceProvider</td>
+ *   <td>This {@code RuntimePermission} is required to be granted to
+ *   classes which subclass and implement
+ *   {@code java.util.spi.LocaleServiceProvider}. The permission is
+ *   checked during invocation of the abstract base class constructor.
+ *   This permission ensures trust in classes which implement this
+ *   security-sensitive provider mechanism. </td>
+ *   <td>See <a href= "../util/spi/LocaleServiceProvider.html">
+ *   {@code java.util.spi.LocaleServiceProvider}</a> for more
+ *   information.</td>
+ * </tr>
  * </table>
  *
  * @see java.security.BasicPermission
--- a/jdk/src/java.base/share/classes/java/lang/invoke/CallSite.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/CallSite.java	Wed Jul 05 20:32:21 2017 +0200
@@ -25,9 +25,10 @@
 
 package java.lang.invoke;
 
-import sun.invoke.empty.Empty;
 import static java.lang.invoke.MethodHandleStatics.*;
 import static java.lang.invoke.MethodHandles.Lookup.IMPL_LOOKUP;
+import java.lang.reflect.Field;
+import sun.misc.Cleaner;
 
 /**
  * A {@code CallSite} is a holder for a variable {@link MethodHandle},
@@ -136,6 +137,50 @@
     }
 
     /**
+     * {@code CallSite} dependency context.
+     * VM uses context class to store nmethod dependencies on the call site target.
+     * Can be in 2 states: (a) null; or (b) {@code Cleaner} instance pointing to some Class instance.
+     * Lazily initialized when CallSite instance is linked to some indy call site or VM needs
+     * it to store dependencies. As a corollary, "null" context means there are no dependencies
+     * registered yet. {@code Cleaner} is used in 2 roles:
+     *   (a) context class access for VM;
+     *   (b) stale context class cleanup.
+     * {@code Cleaner} holds the context class until cleanup action is finished (see {@code PhantomReference}).
+     * Though it's impossible to get the context class using {@code Reference.get()}, VM extracts it directly
+     * from {@code Reference.referent} field.
+     */
+    private volatile Cleaner context = null;
+
+    /**
+     * Default context.
+     * VM uses it to initialize non-linked CallSite context.
+     */
+    private static class DefaultContext {}
+    private static final Cleaner DEFAULT_CONTEXT = makeContext(DefaultContext.class, null);
+
+    private static Cleaner makeContext(Class<?> referent, final CallSite holder) {
+        return Cleaner.create(referent,
+                new Runnable() {
+                    @Override public void run() {
+                        MethodHandleNatives.invalidateDependentNMethods(holder);
+                    }
+                });
+    }
+
+    /** Initialize context class used for nmethod dependency tracking */
+    /*package-private*/
+    void initContext(Class<?> newContext) {
+        // If there are concurrent actions, exactly one succeeds.
+        if (context == null) {
+            UNSAFE.compareAndSwapObject(this, CONTEXT_OFFSET, /*expected=*/null, makeContext(newContext, this));
+            // No need to care about failed CAS attempt.
+            // Since initContext is called from indy call site linkage in newContext class, there's no risk
+            // that the context class becomes dead while corresponding context cleaner is alive (causing cleanup
+            // action in the wrong context).
+        }
+    }
+
+    /**
      * Returns the type of this call site's target.
      * Although targets may change, any call site's type is permanent, and can never change to an unequal type.
      * The {@code setTarget} method enforces this invariant by refusing any new target that does
@@ -246,11 +291,13 @@
     }
 
     // unsafe stuff:
-    private static final long TARGET_OFFSET;
+    private static final long  TARGET_OFFSET;
+    private static final long CONTEXT_OFFSET;
     static {
         try {
-            TARGET_OFFSET = UNSAFE.objectFieldOffset(CallSite.class.getDeclaredField("target"));
-        } catch (Exception ex) { throw new Error(ex); }
+            TARGET_OFFSET  = UNSAFE.objectFieldOffset(CallSite.class.getDeclaredField("target"));
+            CONTEXT_OFFSET = UNSAFE.objectFieldOffset(CallSite.class.getDeclaredField("context"));
+        } catch (Exception ex) { throw newInternalError(ex); }
     }
 
     /*package-private*/
--- a/jdk/src/java.base/share/classes/java/lang/invoke/DirectMethodHandle.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/DirectMethodHandle.java	Wed Jul 05 20:32:21 2017 +0200
@@ -691,10 +691,4 @@
             }
         }
     }
-
-    @Override
-    void customize() {
-        assert(form.customized == null);
-        // No need to customize DMHs.
-    }
 }
--- a/jdk/src/java.base/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java	Wed Jul 05 20:32:21 2017 +0200
@@ -847,11 +847,7 @@
             refKind = REF_invokeVirtual;
         }
 
-        if (member.getDeclaringClass().isInterface() && refKind == REF_invokeVirtual) {
-            // Methods from Object declared in an interface can be resolved by JVM to invokevirtual kind.
-            // Need to convert it back to invokeinterface to pass verification and make the invocation works as expected.
-            refKind = REF_invokeInterface;
-        }
+        assert(!(member.getDeclaringClass().isInterface() && refKind == REF_invokeVirtual));
 
         // push arguments
         emitPushArguments(name);
--- a/jdk/src/java.base/share/classes/java/lang/invoke/Invokers.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/Invokers.java	Wed Jul 05 20:32:21 2017 +0200
@@ -281,7 +281,7 @@
             outArgs[0] = names[CHECK_TYPE];
         }
         if (CHECK_CUSTOM != -1) {
-            names[CHECK_CUSTOM] = new Name(NF_checkCustomized, names[CALL_MH]);
+            names[CHECK_CUSTOM] = new Name(NF_checkCustomized, outArgs[0]);
         }
         names[LINKER_CALL] = new Name(outCallType, outArgs);
         lform = new LambdaForm(debugName, INARG_LIMIT, names);
@@ -394,6 +394,7 @@
     @ForceInline
     void checkCustomized(Object o) {
         MethodHandle mh = (MethodHandle)o;
+        if (MethodHandleImpl.isCompileConstant(mh)) return;
         if (mh.form.customized == null) {
             maybeCustomize(mh);
         }
--- a/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -722,6 +722,13 @@
         return result;
     }
 
+    // Intrinsified by C2. Returns true if obj is a compile-time constant.
+    @LambdaForm.Hidden
+    static
+    boolean isCompileConstant(Object obj) {
+        return false;
+    }
+
     static
     MethodHandle makeGuardWithTest(MethodHandle test,
                                    MethodHandle target,
--- a/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleNatives.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandleNatives.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -55,121 +55,42 @@
     static native Object staticFieldBase(MemberName self);  // e.g., returns clazz
     static native Object getMemberVMInfo(MemberName self);  // returns {vmindex,vmtarget}
 
-    /// MethodHandle support
-
-    /** Fetch MH-related JVM parameter.
-     *  which=0 retrieves MethodHandlePushLimit
-     *  which=1 retrieves stack slot push size (in address units)
-     */
-    static native int getConstant(int which);
-
-    static final boolean COUNT_GWT;
-
     /// CallSite support
 
     /** Tell the JVM that we need to change the target of a CallSite. */
     static native void setCallSiteTargetNormal(CallSite site, MethodHandle target);
     static native void setCallSiteTargetVolatile(CallSite site, MethodHandle target);
 
+    /** Invalidate CallSite context: clean up dependent nmethods and reset call site context to initial state (null). */
+    static native void invalidateDependentNMethods(CallSite site);
+
     private static native void registerNatives();
     static {
         registerNatives();
-        COUNT_GWT                   = getConstant(Constants.GC_COUNT_GWT) != 0;
 
         // The JVM calls MethodHandleNatives.<clinit>.  Cascade the <clinit> calls as needed:
         MethodHandleImpl.initStatics();
     }
 
-    // All compile-time constants go here.
-    // There is an opportunity to check them against the JVM's idea of them.
+    /**
+     * Compile-time constants go here. This collection exists not only for
+     * reference from clients, but also for ensuring the VM and JDK agree on the
+     * values of these constants (see {@link #verifyConstants()}).
+     */
     static class Constants {
         Constants() { } // static only
-        // MethodHandleImpl
-        static final int // for getConstant
-                GC_COUNT_GWT = 4,
-                GC_LAMBDA_SUPPORT = 5;
 
-        // MemberName
-        // The JVM uses values of -2 and above for vtable indexes.
-        // Field values are simple positive offsets.
-        // Ref: src/share/vm/oops/methodOop.hpp
-        // This value is negative enough to avoid such numbers,
-        // but not too negative.
-        static final int
-                MN_IS_METHOD           = 0x00010000, // method (not constructor)
-                MN_IS_CONSTRUCTOR      = 0x00020000, // constructor
-                MN_IS_FIELD            = 0x00040000, // field
-                MN_IS_TYPE             = 0x00080000, // nested type
-                MN_CALLER_SENSITIVE    = 0x00100000, // @CallerSensitive annotation detected
-                MN_REFERENCE_KIND_SHIFT = 24, // refKind
-                MN_REFERENCE_KIND_MASK = 0x0F000000 >> MN_REFERENCE_KIND_SHIFT,
-                // The SEARCH_* bits are not for MN.flags but for the matchFlags argument of MHN.getMembers:
-                MN_SEARCH_SUPERCLASSES = 0x00100000,
-                MN_SEARCH_INTERFACES   = 0x00200000;
-
-        /**
-         * Basic types as encoded in the JVM.  These code values are not
-         * intended for use outside this class.  They are used as part of
-         * a private interface between the JVM and this class.
-         */
         static final int
-            T_BOOLEAN  =  4,
-            T_CHAR     =  5,
-            T_FLOAT    =  6,
-            T_DOUBLE   =  7,
-            T_BYTE     =  8,
-            T_SHORT    =  9,
-            T_INT      = 10,
-            T_LONG     = 11,
-            T_OBJECT   = 12,
-            //T_ARRAY    = 13
-            T_VOID     = 14,
-            //T_ADDRESS  = 15
-            T_ILLEGAL  = 99;
-
-        /**
-         * Constant pool entry types.
-         */
-        static final byte
-            CONSTANT_Utf8                = 1,
-            CONSTANT_Integer             = 3,
-            CONSTANT_Float               = 4,
-            CONSTANT_Long                = 5,
-            CONSTANT_Double              = 6,
-            CONSTANT_Class               = 7,
-            CONSTANT_String              = 8,
-            CONSTANT_Fieldref            = 9,
-            CONSTANT_Methodref           = 10,
-            CONSTANT_InterfaceMethodref  = 11,
-            CONSTANT_NameAndType         = 12,
-            CONSTANT_MethodHandle        = 15,  // JSR 292
-            CONSTANT_MethodType          = 16,  // JSR 292
-            CONSTANT_InvokeDynamic       = 18,
-            CONSTANT_LIMIT               = 19;   // Limit to tags found in classfiles
-
-        /**
-         * Access modifier flags.
-         */
-        static final char
-            ACC_PUBLIC                 = 0x0001,
-            ACC_PRIVATE                = 0x0002,
-            ACC_PROTECTED              = 0x0004,
-            ACC_STATIC                 = 0x0008,
-            ACC_FINAL                  = 0x0010,
-            ACC_SYNCHRONIZED           = 0x0020,
-            ACC_VOLATILE               = 0x0040,
-            ACC_TRANSIENT              = 0x0080,
-            ACC_NATIVE                 = 0x0100,
-            ACC_INTERFACE              = 0x0200,
-            ACC_ABSTRACT               = 0x0400,
-            ACC_STRICT                 = 0x0800,
-            ACC_SYNTHETIC              = 0x1000,
-            ACC_ANNOTATION             = 0x2000,
-            ACC_ENUM                   = 0x4000,
-            // aliases:
-            ACC_SUPER                  = ACC_SYNCHRONIZED,
-            ACC_BRIDGE                 = ACC_VOLATILE,
-            ACC_VARARGS                = ACC_TRANSIENT;
+            MN_IS_METHOD           = 0x00010000, // method (not constructor)
+            MN_IS_CONSTRUCTOR      = 0x00020000, // constructor
+            MN_IS_FIELD            = 0x00040000, // field
+            MN_IS_TYPE             = 0x00080000, // nested type
+            MN_CALLER_SENSITIVE    = 0x00100000, // @CallerSensitive annotation detected
+            MN_REFERENCE_KIND_SHIFT = 24, // refKind
+            MN_REFERENCE_KIND_MASK = 0x0F000000 >> MN_REFERENCE_KIND_SHIFT,
+            // The SEARCH_* bits are not for MN.flags but for the matchFlags argument of MHN.getMembers:
+            MN_SEARCH_SUPERCLASSES = 0x00100000,
+            MN_SEARCH_INTERFACES   = 0x00200000;
 
         /**
          * Constant pool reference-kind codes, as used by CONSTANT_MethodHandle CP entries.
@@ -314,6 +235,7 @@
             return Invokers.linkToTargetMethod(type);
         } else {
             appendixResult[0] = callSite;
+            callSite.initContext(caller);
             return Invokers.linkToCallSiteMethod(type);
         }
     }
--- a/jdk/src/java.base/share/classes/java/nio/Bits.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/nio/Bits.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -567,32 +567,13 @@
 
     // -- Processor and memory-system properties --
 
-    private static final ByteOrder byteOrder;
+    private static final ByteOrder byteOrder
+        = unsafe.isBigEndian() ? ByteOrder.BIG_ENDIAN : ByteOrder.LITTLE_ENDIAN;
 
     static ByteOrder byteOrder() {
-        if (byteOrder == null)
-            throw new Error("Unknown byte order");
         return byteOrder;
     }
 
-    static {
-        long a = unsafe.allocateMemory(8);
-        try {
-            unsafe.putLong(a, 0x0102030405060708L);
-            byte b = unsafe.getByte(a);
-            switch (b) {
-            case 0x01: byteOrder = ByteOrder.BIG_ENDIAN;     break;
-            case 0x08: byteOrder = ByteOrder.LITTLE_ENDIAN;  break;
-            default:
-                assert false;
-                byteOrder = null;
-            }
-        } finally {
-            unsafe.freeMemory(a);
-        }
-    }
-
-
     private static int pageSize = -1;
 
     static int pageSize() {
@@ -605,17 +586,9 @@
         return (int)(size + (long)pageSize() - 1L) / pageSize();
     }
 
-    private static boolean unaligned;
-    private static boolean unalignedKnown = false;
+    private static boolean unaligned = unsafe.unalignedAccess();
 
     static boolean unaligned() {
-        if (unalignedKnown)
-            return unaligned;
-        String arch = AccessController.doPrivileged(
-            new sun.security.action.GetPropertyAction("os.arch"));
-        unaligned = arch.equals("i386") || arch.equals("x86")
-            || arch.equals("amd64") || arch.equals("x86_64");
-        unalignedKnown = true;
         return unaligned;
     }
 
--- a/jdk/src/java.base/share/classes/java/nio/Heap-X-Buffer.java.template	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/nio/Heap-X-Buffer.java.template	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 
 package java.nio;
 
+import sun.misc.Unsafe;
 
 /**
 #if[rw]
@@ -52,6 +53,16 @@
 #end[rw]
     */
 
+#if[byte]
+
+    // Cached unsafe-access object
+    private static final Unsafe unsafe = Bits.unsafe();
+
+    // Cached array base offset
+    private static final long arrayBaseOffset = unsafe.arrayBaseOffset($type$[].class);
+
+#end[byte]
+
     Heap$Type$Buffer$RW$(int cap, int lim) {            // package-private
 #if[rw]
         super(-1, 0, lim, cap, new $type$[cap], 0);
@@ -131,6 +142,12 @@
         return i + offset;
     }
 
+#if[byte]
+    private long byteOffset(long i) {
+        return arrayBaseOffset + i + offset;
+    }
+#end[byte]
+
     public $type$ get() {
         return hb[ix(nextGetIndex())];
     }
@@ -256,18 +273,18 @@
 #if[rw]
 
     public char getChar() {
-        return Bits.getChar(this, ix(nextGetIndex(2)), bigEndian);
+        return unsafe.getCharUnaligned(hb, byteOffset(nextGetIndex(2)), bigEndian);
     }
 
     public char getChar(int i) {
-        return Bits.getChar(this, ix(checkIndex(i, 2)), bigEndian);
+        return unsafe.getCharUnaligned(hb, byteOffset(checkIndex(i, 2)), bigEndian);
     }
 
 #end[rw]
 
     public $Type$Buffer putChar(char x) {
 #if[rw]
-        Bits.putChar(this, ix(nextPutIndex(2)), x, bigEndian);
+        unsafe.putCharUnaligned(hb, byteOffset(nextPutIndex(2)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -276,7 +293,7 @@
 
     public $Type$Buffer putChar(int i, char x) {
 #if[rw]
-        Bits.putChar(this, ix(checkIndex(i, 2)), x, bigEndian);
+        unsafe.putCharUnaligned(hb, byteOffset(checkIndex(i, 2)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -307,18 +324,18 @@
 #if[rw]
 
     public short getShort() {
-        return Bits.getShort(this, ix(nextGetIndex(2)), bigEndian);
+        return unsafe.getShortUnaligned(hb, byteOffset(nextGetIndex(2)), bigEndian);
     }
 
     public short getShort(int i) {
-        return Bits.getShort(this, ix(checkIndex(i, 2)), bigEndian);
+        return unsafe.getShortUnaligned(hb, byteOffset(checkIndex(i, 2)), bigEndian);
     }
 
 #end[rw]
 
     public $Type$Buffer putShort(short x) {
 #if[rw]
-        Bits.putShort(this, ix(nextPutIndex(2)), x, bigEndian);
+        unsafe.putShortUnaligned(hb, byteOffset(nextPutIndex(2)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -327,7 +344,7 @@
 
     public $Type$Buffer putShort(int i, short x) {
 #if[rw]
-        Bits.putShort(this, ix(checkIndex(i, 2)), x, bigEndian);
+        unsafe.putShortUnaligned(hb, byteOffset(checkIndex(i, 2)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -358,18 +375,18 @@
 #if[rw]
 
     public int getInt() {
-        return Bits.getInt(this, ix(nextGetIndex(4)), bigEndian);
+        return unsafe.getIntUnaligned(hb, byteOffset(nextGetIndex(4)), bigEndian);
     }
 
     public int getInt(int i) {
-        return Bits.getInt(this, ix(checkIndex(i, 4)), bigEndian);
+        return unsafe.getIntUnaligned(hb, byteOffset(checkIndex(i, 4)), bigEndian);
     }
 
 #end[rw]
 
     public $Type$Buffer putInt(int x) {
 #if[rw]
-        Bits.putInt(this, ix(nextPutIndex(4)), x, bigEndian);
+        unsafe.putIntUnaligned(hb, byteOffset(nextPutIndex(4)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -378,7 +395,7 @@
 
     public $Type$Buffer putInt(int i, int x) {
 #if[rw]
-        Bits.putInt(this, ix(checkIndex(i, 4)), x, bigEndian);
+        unsafe.putIntUnaligned(hb, byteOffset(checkIndex(i, 4)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -409,18 +426,18 @@
 #if[rw]
 
     public long getLong() {
-        return Bits.getLong(this, ix(nextGetIndex(8)), bigEndian);
+        return unsafe.getLongUnaligned(hb, byteOffset(nextGetIndex(8)), bigEndian);
     }
 
     public long getLong(int i) {
-        return Bits.getLong(this, ix(checkIndex(i, 8)), bigEndian);
+        return unsafe.getLongUnaligned(hb, byteOffset(checkIndex(i, 8)), bigEndian);
     }
 
 #end[rw]
 
     public $Type$Buffer putLong(long x) {
 #if[rw]
-        Bits.putLong(this, ix(nextPutIndex(8)), x, bigEndian);
+        unsafe.putLongUnaligned(hb, byteOffset(nextPutIndex(8)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -429,7 +446,7 @@
 
     public $Type$Buffer putLong(int i, long x) {
 #if[rw]
-        Bits.putLong(this, ix(checkIndex(i, 8)), x, bigEndian);
+        unsafe.putLongUnaligned(hb, byteOffset(checkIndex(i, 8)), x, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -460,18 +477,21 @@
 #if[rw]
 
     public float getFloat() {
-        return Bits.getFloat(this, ix(nextGetIndex(4)), bigEndian);
+        int x = unsafe.getIntUnaligned(hb, byteOffset(nextPutIndex(4)), bigEndian);
+        return Float.intBitsToFloat(x);
     }
 
     public float getFloat(int i) {
-        return Bits.getFloat(this, ix(checkIndex(i, 4)), bigEndian);
+        int x = unsafe.getIntUnaligned(hb, byteOffset(checkIndex(i, 4)), bigEndian);
+        return Float.intBitsToFloat(x);
     }
 
 #end[rw]
 
     public $Type$Buffer putFloat(float x) {
 #if[rw]
-        Bits.putFloat(this, ix(nextPutIndex(4)), x, bigEndian);
+        int y = Float.floatToRawIntBits(x);
+        unsafe.putIntUnaligned(hb, byteOffset(nextPutIndex(4)), y, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -480,7 +500,8 @@
 
     public $Type$Buffer putFloat(int i, float x) {
 #if[rw]
-        Bits.putFloat(this, ix(checkIndex(i, 4)), x, bigEndian);
+        int y = Float.floatToRawIntBits(x);
+        unsafe.putIntUnaligned(hb, byteOffset(checkIndex(i, 4)), y, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -511,18 +532,21 @@
 #if[rw]
 
     public double getDouble() {
-        return Bits.getDouble(this, ix(nextGetIndex(8)), bigEndian);
+        long x = unsafe.getLongUnaligned(hb, byteOffset(nextGetIndex(8)), bigEndian);
+        return Double.longBitsToDouble(x);
     }
 
     public double getDouble(int i) {
-        return Bits.getDouble(this, ix(checkIndex(i, 8)), bigEndian);
+        long x = unsafe.getLongUnaligned(hb, byteOffset(checkIndex(i, 8)), bigEndian);
+        return Double.longBitsToDouble(x);
     }
 
 #end[rw]
 
     public $Type$Buffer putDouble(double x) {
 #if[rw]
-        Bits.putDouble(this, ix(nextPutIndex(8)), x, bigEndian);
+        long y = Double.doubleToRawLongBits(x);
+        unsafe.putLongUnaligned(hb, byteOffset(nextPutIndex(8)), y, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
@@ -531,7 +555,8 @@
 
     public $Type$Buffer putDouble(int i, double x) {
 #if[rw]
-        Bits.putDouble(this, ix(checkIndex(i, 8)), x, bigEndian);
+        long y = Double.doubleToRawLongBits(x);
+        unsafe.putLongUnaligned(hb, byteOffset(checkIndex(i, 8)), y, bigEndian);
         return this;
 #else[rw]
         throw new ReadOnlyBufferException();
--- a/jdk/src/java.base/share/classes/java/nio/file/Files.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/nio/file/Files.java	Wed Jul 05 20:32:21 2017 +0200
@@ -2851,7 +2851,10 @@
      * @throws  SecurityException
      *          In the case of the default provider, and a security manager is
      *          installed, the {@link SecurityManager#checkWrite(String) checkWrite}
-     *          method is invoked to check write access to the file.
+     *          method is invoked to check write access to the file. The {@link
+     *          SecurityManager#checkDelete(String) checkDelete} method is
+     *          invoked to check delete access if the file is opened with the
+     *          {@code DELETE_ON_CLOSE} option.
      *
      * @see #write(Path,Iterable,Charset,OpenOption[])
      */
@@ -2893,7 +2896,10 @@
      * @throws  SecurityException
      *          In the case of the default provider, and a security manager is
      *          installed, the {@link SecurityManager#checkWrite(String) checkWrite}
-     *          method is invoked to check write access to the file.
+     *          method is invoked to check write access to the file. The {@link
+     *          SecurityManager#checkDelete(String) checkDelete} method is
+     *          invoked to check delete access if the file is opened with the
+     *          {@code DELETE_ON_CLOSE} option.
      *
      * @since 1.8
      */
@@ -3290,7 +3296,10 @@
      * @throws  SecurityException
      *          In the case of the default provider, and a security manager is
      *          installed, the {@link SecurityManager#checkWrite(String) checkWrite}
-     *          method is invoked to check write access to the file.
+     *          method is invoked to check write access to the file. The {@link
+     *          SecurityManager#checkDelete(String) checkDelete} method is
+     *          invoked to check delete access if the file is opened with the
+     *          {@code DELETE_ON_CLOSE} option.
      */
     public static Path write(Path path, byte[] bytes, OpenOption... options)
         throws IOException
@@ -3350,7 +3359,10 @@
      * @throws  SecurityException
      *          In the case of the default provider, and a security manager is
      *          installed, the {@link SecurityManager#checkWrite(String) checkWrite}
-     *          method is invoked to check write access to the file.
+     *          method is invoked to check write access to the file. The {@link
+     *          SecurityManager#checkDelete(String) checkDelete} method is
+     *          invoked to check delete access if the file is opened with the
+     *          {@code DELETE_ON_CLOSE} option.
      */
     public static Path write(Path path, Iterable<? extends CharSequence> lines,
                              Charset cs, OpenOption... options)
@@ -3398,7 +3410,10 @@
      * @throws  SecurityException
      *          In the case of the default provider, and a security manager is
      *          installed, the {@link SecurityManager#checkWrite(String) checkWrite}
-     *          method is invoked to check write access to the file.
+     *          method is invoked to check write access to the file. The {@link
+     *          SecurityManager#checkDelete(String) checkDelete} method is
+     *          invoked to check delete access if the file is opened with the
+     *          {@code DELETE_ON_CLOSE} option.
      *
      * @since 1.8
      */
--- a/jdk/src/java.base/share/classes/java/time/zone/ZoneOffsetTransition.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/java/time/zone/ZoneOffsetTransition.java	Wed Jul 05 20:32:21 2017 +0200
@@ -104,6 +104,10 @@
      */
     private static final long serialVersionUID = -6946044323557704546L;
     /**
+     * The transition epoch-second.
+     */
+    private final long epochSecond;
+    /**
      * The local transition date-time at the transition.
      */
     private final LocalDateTime transition;
@@ -152,6 +156,7 @@
      * @param offsetAfter  the offset at and after the transition, not null
      */
     ZoneOffsetTransition(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter) {
+        this.epochSecond = transition.toEpochSecond(offsetBefore);
         this.transition = transition;
         this.offsetBefore = offsetBefore;
         this.offsetAfter = offsetAfter;
@@ -165,6 +170,7 @@
      * @param offsetAfter  the offset at and after the transition, not null
      */
     ZoneOffsetTransition(long epochSecond, ZoneOffset offsetBefore, ZoneOffset offsetAfter) {
+        this.epochSecond = epochSecond;
         this.transition = LocalDateTime.ofEpochSecond(epochSecond, 0, offsetBefore);
         this.offsetBefore = offsetBefore;
         this.offsetAfter = offsetAfter;
@@ -209,7 +215,7 @@
      * @throws IOException if an error occurs
      */
     void writeExternal(DataOutput out) throws IOException {
-        Ser.writeEpochSec(toEpochSecond(), out);
+        Ser.writeEpochSec(epochSecond, out);
         Ser.writeOffset(offsetBefore, out);
         Ser.writeOffset(offsetAfter, out);
     }
@@ -253,7 +259,7 @@
      * @return the transition epoch second
      */
     public long toEpochSecond() {
-        return transition.toEpochSecond(offsetBefore);
+        return epochSecond;
     }
 
     //-------------------------------------------------------------------------
@@ -397,7 +403,13 @@
      */
     @Override
     public int compareTo(ZoneOffsetTransition transition) {
-        return this.getInstant().compareTo(transition.getInstant());
+        if (epochSecond < transition.epochSecond) {
+            return -1;
+        } else if (epochSecond > transition.epochSecond) {
+            return 1;
+        } else {
+            return this.getInstant().compareTo(transition.getInstant());
+        }
     }
 
     //-----------------------------------------------------------------------
@@ -416,7 +428,8 @@
         }
         if (other instanceof ZoneOffsetTransition) {
             ZoneOffsetTransition d = (ZoneOffsetTransition) other;
-            return transition.equals(d.transition) &&
+            return epochSecond == d.epochSecond &&
+                transition.equals(d.transition) &&
                 offsetBefore.equals(d.offsetBefore) && offsetAfter.equals(d.offsetAfter);
         }
         return false;
--- a/jdk/src/java.base/share/classes/sun/misc/Unsafe.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/misc/Unsafe.java	Wed Jul 05 20:32:21 2017 +0200
@@ -183,7 +183,7 @@
      * <p>
      * Unless the reference {@code x} being stored is either null
      * or matches the field type, the results are undefined.
-     * If the reference {@code o} is non-null, car marks or
+     * If the reference {@code o} is non-null, card marks or
      * other store barriers for that object (if the VM requires them)
      * are updated.
      * @see #putInt(Object, long, int)
@@ -219,6 +219,35 @@
     /** @see #putInt(Object, long, int) */
     public native void    putDouble(Object o, long offset, double x);
 
+    // These read VM internal data.
+
+    /**
+     * Fetches an uncompressed reference value from a given native variable
+     * ignoring the VM's compressed references mode.
+     *
+     * @param address a memory address locating the variable
+     * @return the value fetched from the indicated native variable
+     */
+    public native Object getUncompressedObject(long address);
+
+    /**
+     * Fetches the {@link java.lang.Class} Java mirror for the given native
+     * metaspace {@code Klass} pointer.
+     *
+     * @param metaspaceKlass a native metaspace {@code Klass} pointer
+     * @return the {@link java.lang.Class} Java mirror
+     */
+    public native Class<?> getJavaMirror(long metaspaceKlass);
+
+    /**
+     * Fetches a native metaspace {@code Klass} pointer for the given Java
+     * object.
+     *
+     * @param o Java heap object for which to fetch the class pointer
+     * @return a native metaspace {@code Klass} pointer
+     */
+    public native long getKlassPointer(Object o);
+
     // These work on values in the C heap.
 
     /**
@@ -934,4 +963,347 @@
     private static void throwIllegalAccessError() {
         throw new IllegalAccessError();
     }
+
+    /**
+     * @return Returns true if the native byte ordering of this
+     * platform is big-endian, false if it is little-endian.
+     */
+    public final boolean isBigEndian() { return BE; }
+
+    /**
+     * @return Returns true if this platform is capable of performing
+     * accesses at addresses which are not aligned for the type of the
+     * primitive type being accessed, false otherwise.
+     */
+    public final boolean unalignedAccess() { return unalignedAccess; }
+
+    /**
+     * Fetches a value at some byte offset into a given Java object.
+     * More specifically, fetches a value within the given object
+     * <code>o</code> at the given offset, or (if <code>o</code> is
+     * null) from the memory address whose numerical value is the
+     * given offset.  <p>
+     *
+     * The specification of this method is the same as {@link
+     * #getLong(Object, long)} except that the offset does not need to
+     * have been obtained from {@link #objectFieldOffset} on the
+     * {@link java.lang.reflect.Field} of some Java field.  The value
+     * in memory is raw data, and need not correspond to any Java
+     * variable.  Unless <code>o</code> is null, the value accessed
+     * must be entirely within the allocated object.  The endianness
+     * of the value in memory is the endianness of the native platform.
+     *
+     * <p> The read will be atomic with respect to the largest power
+     * of two that divides the GCD of the offset and the storage size.
+     * For example, getLongUnaligned will make atomic reads of 2-, 4-,
+     * or 8-byte storage units if the offset is zero mod 2, 4, or 8,
+     * respectively.  There are no other guarantees of atomicity.
+     * <p>
+     * 8-byte atomicity is only guaranteed on platforms on which
+     * support atomic accesses to longs.
+     *
+     * @param o Java heap object in which the value resides, if any, else
+     *        null
+     * @param offset The offset in bytes from the start of the object
+     * @return the value fetched from the indicated object
+     * @throws RuntimeException No defined exceptions are thrown, not even
+     *         {@link NullPointerException}
+     * @since 1.9
+     */
+    public final long getLongUnaligned(Object o, long offset) {
+        if ((offset & 7) == 0) {
+            return getLong(o, offset);
+        } else if ((offset & 3) == 0) {
+            return makeLong(getInt(o, offset),
+                            getInt(o, offset + 4));
+        } else if ((offset & 1) == 0) {
+            return makeLong(getShort(o, offset),
+                            getShort(o, offset + 2),
+                            getShort(o, offset + 4),
+                            getShort(o, offset + 6));
+        } else {
+            return makeLong(getByte(o, offset),
+                            getByte(o, offset + 1),
+                            getByte(o, offset + 2),
+                            getByte(o, offset + 3),
+                            getByte(o, offset + 4),
+                            getByte(o, offset + 5),
+                            getByte(o, offset + 6),
+                            getByte(o, offset + 7));
+        }
+    }
+    /**
+     * As {@link #getLongUnaligned(Object, long)} but with an
+     * additional argument which specifies the endianness of the value
+     * as stored in memory.
+     *
+     * @param o Java heap object in which the variable resides
+     * @param offset The offset in bytes from the start of the object
+     * @param bigEndian The endianness of the value
+     * @return the value fetched from the indicated object
+     * @since 1.9
+     */
+    public final long getLongUnaligned(Object o, long offset, boolean bigEndian) {
+        return convEndian(bigEndian, getLongUnaligned(o, offset));
+    }
+
+    /** @see #getLongUnaligned(Object, long) */
+    public final int getIntUnaligned(Object o, long offset) {
+        if ((offset & 3) == 0) {
+            return getInt(o, offset);
+        } else if ((offset & 1) == 0) {
+            return makeInt(getShort(o, offset),
+                           getShort(o, offset + 2));
+        } else {
+            return makeInt(getByte(o, offset),
+                           getByte(o, offset + 1),
+                           getByte(o, offset + 2),
+                           getByte(o, offset + 3));
+        }
+    }
+    /** @see #getLongUnaligned(Object, long, boolean) */
+    public final int getIntUnaligned(Object o, long offset, boolean bigEndian) {
+        return convEndian(bigEndian, getIntUnaligned(o, offset));
+    }
+
+    /** @see #getLongUnaligned(Object, long) */
+    public final short getShortUnaligned(Object o, long offset) {
+        if ((offset & 1) == 0) {
+            return getShort(o, offset);
+        } else {
+            return makeShort(getByte(o, offset),
+                             getByte(o, offset + 1));
+        }
+    }
+    /** @see #getLongUnaligned(Object, long, boolean) */
+    public final short getShortUnaligned(Object o, long offset, boolean bigEndian) {
+        return convEndian(bigEndian, getShortUnaligned(o, offset));
+    }
+
+    /** @see #getLongUnaligned(Object, long) */
+    public final char getCharUnaligned(Object o, long offset) {
+        return (char)getShortUnaligned(o, offset);
+    }
+    /** @see #getLongUnaligned(Object, long, boolean) */
+    public final char getCharUnaligned(Object o, long offset, boolean bigEndian) {
+        return convEndian(bigEndian, getCharUnaligned(o, offset));
+    }
+
+    /**
+     * Stores a value at some byte offset into a given Java object.
+     * <p>
+     * The specification of this method is the same as {@link
+     * #getLong(Object, long)} except that the offset does not need to
+     * have been obtained from {@link #objectFieldOffset} on the
+     * {@link java.lang.reflect.Field} of some Java field.  The value
+     * in memory is raw data, and need not correspond to any Java
+     * variable.  The endianness of the value in memory is the
+     * endianness of the native platform.
+     * <p>
+     * The write will be atomic with respect to the largest power of
+     * two that divides the GCD of the offset and the storage size.
+     * For example, putLongUnaligned will make atomic writes of 2-, 4-,
+     * or 8-byte storage units if the offset is zero mod 2, 4, or 8,
+     * respectively.  There are no other guarantees of atomicity.
+     * <p>
+     * 8-byte atomicity is only guaranteed on platforms on which
+     * support atomic accesses to longs.
+     * <p>
+     *
+     * @param o Java heap object in which the value resides, if any, else
+     *        null
+     * @param offset The offset in bytes from the start of the object
+     * @param x the value to store
+     * @throws RuntimeException No defined exceptions are thrown, not even
+     *         {@link NullPointerException}
+     * @since 1.9
+     */
+    public final void putLongUnaligned(Object o, long offset, long x) {
+        if ((offset & 7) == 0) {
+            putLong(o, offset, x);
+        } else if ((offset & 3) == 0) {
+            putLongParts(o, offset,
+                         (int)(x >> 0),
+                         (int)(x >>> 32));
+        } else if ((offset & 1) == 0) {
+            putLongParts(o, offset,
+                         (short)(x >>> 0),
+                         (short)(x >>> 16),
+                         (short)(x >>> 32),
+                         (short)(x >>> 48));
+        } else {
+            putLongParts(o, offset,
+                         (byte)(x >>> 0),
+                         (byte)(x >>> 8),
+                         (byte)(x >>> 16),
+                         (byte)(x >>> 24),
+                         (byte)(x >>> 32),
+                         (byte)(x >>> 40),
+                         (byte)(x >>> 48),
+                         (byte)(x >>> 56));
+        }
+    }
+    /**
+     * As {@link #putLongUnaligned(Object, long, long)} but with an additional
+     * argument which specifies the endianness of the value as stored in memory.
+     * @param o Java heap object in which the value resides
+     * @param offset The offset in bytes from the start of the object
+     * @param x the value to store
+     * @param bigEndian The endianness of the value
+     * @throws RuntimeException No defined exceptions are thrown, not even
+     *         {@link NullPointerException}
+     * @since 1.9
+     */
+    public final void putLongUnaligned(Object o, long offset, long x, boolean bigEndian) {
+        putLongUnaligned(o, offset, convEndian(bigEndian, x));
+    }
+
+    /** @see #putLongUnaligned(Object, long, long) */
+    public final void putIntUnaligned(Object o, long offset, int x) {
+        if ((offset & 3) == 0) {
+            putInt(o, offset, x);
+        } else if ((offset & 1) == 0) {
+            putIntParts(o, offset,
+                        (short)(x >> 0),
+                        (short)(x >>> 16));
+        } else {
+            putIntParts(o, offset,
+                        (byte)(x >>> 0),
+                        (byte)(x >>> 8),
+                        (byte)(x >>> 16),
+                        (byte)(x >>> 24));
+        }
+    }
+    /** @see #putLongUnaligned(Object, long, long, boolean) */
+    public final void putIntUnaligned(Object o, long offset, int x, boolean bigEndian) {
+        putIntUnaligned(o, offset, convEndian(bigEndian, x));
+    }
+
+    /** @see #putLongUnaligned(Object, long, long) */
+    public final void putShortUnaligned(Object o, long offset, short x) {
+        if ((offset & 1) == 0) {
+            putShort(o, offset, x);
+        } else {
+            putShortParts(o, offset,
+                          (byte)(x >>> 0),
+                          (byte)(x >>> 8));
+        }
+    }
+    /** @see #putLongUnaligned(Object, long, long, boolean) */
+    public final void putShortUnaligned(Object o, long offset, short x, boolean bigEndian) {
+        putShortUnaligned(o, offset, convEndian(bigEndian, x));
+    }
+
+    /** @see #putLongUnaligned(Object, long, long) */
+    public final void putCharUnaligned(Object o, long offset, char x) {
+        putShortUnaligned(o, offset, (short)x);
+    }
+    /** @see #putLongUnaligned(Object, long, long, boolean) */
+    public final void putCharUnaligned(Object o, long offset, char x, boolean bigEndian) {
+        putCharUnaligned(o, offset, convEndian(bigEndian, x));
+    }
+
+    // JVM interface methods
+    private native boolean unalignedAccess0();
+    private native boolean isBigEndian0();
+
+    // BE is true iff the native endianness of this platform is big.
+    private static final boolean BE = theUnsafe.isBigEndian0();
+
+    // unalignedAccess is true iff this platform can perform unaligned accesses.
+    private static final boolean unalignedAccess = theUnsafe.unalignedAccess0();
+
+    private static int pickPos(int top, int pos) { return BE ? top - pos : pos; }
+
+    // These methods construct integers from bytes.  The byte ordering
+    // is the native endianness of this platform.
+    private static long makeLong(byte i0, byte i1, byte i2, byte i3, byte i4, byte i5, byte i6, byte i7) {
+        return ((toUnsignedLong(i0) << pickPos(56, 0))
+              | (toUnsignedLong(i1) << pickPos(56, 8))
+              | (toUnsignedLong(i2) << pickPos(56, 16))
+              | (toUnsignedLong(i3) << pickPos(56, 24))
+              | (toUnsignedLong(i4) << pickPos(56, 32))
+              | (toUnsignedLong(i5) << pickPos(56, 40))
+              | (toUnsignedLong(i6) << pickPos(56, 48))
+              | (toUnsignedLong(i7) << pickPos(56, 56)));
+    }
+    private static long makeLong(short i0, short i1, short i2, short i3) {
+        return ((toUnsignedLong(i0) << pickPos(48, 0))
+              | (toUnsignedLong(i1) << pickPos(48, 16))
+              | (toUnsignedLong(i2) << pickPos(48, 32))
+              | (toUnsignedLong(i3) << pickPos(48, 48)));
+    }
+    private static long makeLong(int i0, int i1) {
+        return (toUnsignedLong(i0) << pickPos(32, 0))
+             | (toUnsignedLong(i1) << pickPos(32, 32));
+    }
+    private static int makeInt(short i0, short i1) {
+        return (toUnsignedInt(i0) << pickPos(16, 0))
+             | (toUnsignedInt(i1) << pickPos(16, 16));
+    }
+    private static int makeInt(byte i0, byte i1, byte i2, byte i3) {
+        return ((toUnsignedInt(i0) << pickPos(24, 0))
+              | (toUnsignedInt(i1) << pickPos(24, 8))
+              | (toUnsignedInt(i2) << pickPos(24, 16))
+              | (toUnsignedInt(i3) << pickPos(24, 24)));
+    }
+    private static short makeShort(byte i0, byte i1) {
+        return (short)((toUnsignedInt(i0) << pickPos(8, 0))
+                     | (toUnsignedInt(i1) << pickPos(8, 8)));
+    }
+
+    private static byte  pick(byte  le, byte  be) { return BE ? be : le; }
+    private static short pick(short le, short be) { return BE ? be : le; }
+    private static int   pick(int   le, int   be) { return BE ? be : le; }
+
+    // These methods write integers to memory from smaller parts
+    // provided by their caller.  The ordering in which these parts
+    // are written is the native endianness of this platform.
+    private void putLongParts(Object o, long offset, byte i0, byte i1, byte i2, byte i3, byte i4, byte i5, byte i6, byte i7) {
+        putByte(o, offset + 0, pick(i0, i7));
+        putByte(o, offset + 1, pick(i1, i6));
+        putByte(o, offset + 2, pick(i2, i5));
+        putByte(o, offset + 3, pick(i3, i4));
+        putByte(o, offset + 4, pick(i4, i3));
+        putByte(o, offset + 5, pick(i5, i2));
+        putByte(o, offset + 6, pick(i6, i1));
+        putByte(o, offset + 7, pick(i7, i0));
+    }
+    private void putLongParts(Object o, long offset, short i0, short i1, short i2, short i3) {
+        putShort(o, offset + 0, pick(i0, i3));
+        putShort(o, offset + 2, pick(i1, i2));
+        putShort(o, offset + 4, pick(i2, i1));
+        putShort(o, offset + 6, pick(i3, i0));
+    }
+    private void putLongParts(Object o, long offset, int i0, int i1) {
+        putInt(o, offset + 0, pick(i0, i1));
+        putInt(o, offset + 4, pick(i1, i0));
+    }
+    private void putIntParts(Object o, long offset, short i0, short i1) {
+        putShort(o, offset + 0, pick(i0, i1));
+        putShort(o, offset + 2, pick(i1, i0));
+    }
+    private void putIntParts(Object o, long offset, byte i0, byte i1, byte i2, byte i3) {
+        putByte(o, offset + 0, pick(i0, i3));
+        putByte(o, offset + 1, pick(i1, i2));
+        putByte(o, offset + 2, pick(i2, i1));
+        putByte(o, offset + 3, pick(i3, i0));
+    }
+    private void putShortParts(Object o, long offset, byte i0, byte i1) {
+        putByte(o, offset + 0, pick(i0, i1));
+        putByte(o, offset + 1, pick(i1, i0));
+    }
+
+    // Zero-extend an integer
+    private static int toUnsignedInt(byte n)    { return n & 0xff; }
+    private static int toUnsignedInt(short n)   { return n & 0xffff; }
+    private static long toUnsignedLong(byte n)  { return n & 0xffl; }
+    private static long toUnsignedLong(short n) { return n & 0xffffl; }
+    private static long toUnsignedLong(int n)   { return n & 0xffffffffl; }
+
+    // Maybe byte-reverse an integer
+    private static char convEndian(boolean big, char n)   { return big == BE ? n : Character.reverseBytes(n); }
+    private static short convEndian(boolean big, short n) { return big == BE ? n : Short.reverseBytes(n)    ; }
+    private static int convEndian(boolean big, int n)     { return big == BE ? n : Integer.reverseBytes(n)  ; }
+    private static long convEndian(boolean big, long n)   { return big == BE ? n : Long.reverseBytes(n)     ; }
 }
--- a/jdk/src/java.base/share/classes/sun/security/action/GetBooleanAction.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/action/GetBooleanAction.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,7 +33,7 @@
  * <code>AccessController.doPrivileged</code>.
  *
  * <p>The following code retrieves the boolean value of the system
- * property named <code>"prop"</code> as a privileged action: <p>
+ * property named <code>"prop"</code> as a privileged action:
  *
  * <pre>
  * boolean b = java.security.AccessController.doPrivileged
--- a/jdk/src/java.base/share/classes/sun/security/action/GetBooleanSecurityPropertyAction.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/action/GetBooleanSecurityPropertyAction.java	Wed Jul 05 20:32:21 2017 +0200
@@ -35,7 +35,7 @@
  * <code>AccessController.doPrivileged</code>.
  *
  * <p>The following code retrieves the boolean value of the security
- * property named <code>"prop"</code> as a privileged action: <p>
+ * property named <code>"prop"</code> as a privileged action:
  *
  * <pre>
  * boolean b = java.security.AccessController.doPrivileged
--- a/jdk/src/java.base/share/classes/sun/security/action/GetIntegerAction.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/action/GetIntegerAction.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,7 +36,7 @@
  * property named <code>"prop"</code> as a privileged action. Since it does
  * not pass a default value to be used in case the property
  * <code>"prop"</code> is not defined, it has to check the result for
- * <code>null</code>: <p>
+ * <code>null</code>:
  *
  * <pre>
  * Integer tmp = java.security.AccessController.doPrivileged
@@ -50,7 +50,7 @@
  * <p>The following code retrieves the integer value of the system
  * property named <code>"prop"</code> as a privileged action, and also passes
  * a default value to be used in case the property <code>"prop"</code> is not
- * defined: <p>
+ * defined:
  *
  * <pre>
  * int i = ((Integer)java.security.AccessController.doPrivileged(
@@ -84,7 +84,7 @@
      * value of that property.
      *
      * @param theProp the name of the system property.
-     * @param defaulVal the default value.
+     * @param defaultVal the default value.
      */
     public GetIntegerAction(String theProp, int defaultVal) {
         this.theProp = theProp;
--- a/jdk/src/java.base/share/classes/sun/security/action/GetLongAction.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/action/GetLongAction.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,7 +36,7 @@
  * property named <code>"prop"</code> as a privileged action. Since it does
  * not pass a default value to be used in case the property
  * <code>"prop"</code> is not defined, it has to check the result for
- * <code>null</code>: <p>
+ * <code>null</code>:
  *
  * <pre>
  * Long tmp = java.security.AccessController.doPrivileged
@@ -50,7 +50,7 @@
  * <p>The following code retrieves the <code>Long</code> value of the system
  * property named <code>"prop"</code> as a privileged action, and also passes
  * a default value to be used in case the property <code>"prop"</code> is not
- * defined: <p>
+ * defined:
  *
  * <pre>
  * long l = java.security.AccessController.doPrivileged
@@ -83,7 +83,7 @@
      * value of that property.
      *
      * @param theProp the name of the system property.
-     * @param defaulVal the default value.
+     * @param defaultVal the default value.
      */
     public GetLongAction(String theProp, long defaultVal) {
         this.theProp = theProp;
--- a/jdk/src/java.base/share/classes/sun/security/action/GetPropertyAction.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/action/GetPropertyAction.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,7 +33,7 @@
  * <code>AccessController.doPrivileged</code>.
  *
  * <p>The following code retrieves the value of the system
- * property named <code>"prop"</code> as a privileged action: <p>
+ * property named <code>"prop"</code> as a privileged action:
  *
  * <pre>
  * String s = java.security.AccessController.doPrivileged
@@ -66,7 +66,7 @@
      * value of that property.
      *
      * @param theProp the name of the system property.
-     * @param defaulVal the default value.
+     * @param defaultVal the default value.
      */
     public GetPropertyAction(String theProp, String defaultVal) {
         this.theProp = theProp;
--- a/jdk/src/java.base/share/classes/sun/security/jca/GetInstance.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/jca/GetInstance.java	Wed Jul 05 20:32:21 2017 +0200
@@ -117,7 +117,7 @@
     /**
      * This method exists for compatibility with JCE only. It will be removed
      * once JCE has been changed to use the replacement method.
-     * @deprecated use getServices(List<ServiceId>) instead
+     * @deprecated use {@code getServices(List<ServiceId>)} instead
      */
     @Deprecated
     public static List<Service> getServices(String type,
--- a/jdk/src/java.base/share/classes/sun/security/jca/ProviderList.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/jca/ProviderList.java	Wed Jul 05 20:32:21 2017 +0200
@@ -353,7 +353,7 @@
     /**
      * This method exists for compatibility with JCE only. It will be removed
      * once JCE has been changed to use the replacement method.
-     * @deprecated use getServices(List<ServiceId>) instead
+     * @deprecated use {@code getServices(List<ServiceId>)} instead
      */
     @Deprecated
     public List<Service> getServices(String type, List<String> algorithms) {
--- a/jdk/src/java.base/share/classes/sun/security/pkcs/PKCS9Attribute.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/pkcs/PKCS9Attribute.java	Wed Jul 05 20:32:21 2017 +0200
@@ -51,7 +51,6 @@
  * in string form, its value is a (single-valued)
  * byte array that is the SET's encoding.
  *
- * <P>
  * <TABLE BORDER CELLPADDING=8 ALIGN=CENTER>
  *
  * <TR>
@@ -476,7 +475,7 @@
      * Construct a PKCS9Attribute from its encoding on an input
      * stream.
      *
-     * @param val the DerValue representing the DER encoding of the attribute.
+     * @param derVal the DerValue representing the DER encoding of the attribute.
      * @exception IOException on parsing error.
      */
     public PKCS9Attribute(DerValue derVal) throws IOException {
--- a/jdk/src/java.base/share/classes/sun/security/pkcs12/PKCS12KeyStore.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/pkcs12/PKCS12KeyStore.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1642,23 +1642,22 @@
             Entry entry = entries.get(alias);
 
             // certificate chain
-            int chainLen = 1;
-            Certificate[] certs = null;
+            Certificate[] certs;
 
             if (entry instanceof PrivateKeyEntry) {
                 PrivateKeyEntry keyEntry = (PrivateKeyEntry) entry;
-                    if (keyEntry.chain == null) {
-                        chainLen = 0;
-                    } else {
-                        chainLen = keyEntry.chain.length;
-                    }
-                certs = keyEntry.chain;
-
+                if (keyEntry.chain != null) {
+                    certs = keyEntry.chain;
+                } else {
+                    certs = new Certificate[0];
+                }
             } else if (entry instanceof CertEntry) {
-               certs = new Certificate[]{((CertEntry) entry).cert};
+                certs = new Certificate[]{((CertEntry) entry).cert};
+            } else {
+                certs = new Certificate[0];
             }
 
-            for (int i = 0; i < chainLen; i++) {
+            for (int i = 0; i < certs.length; i++) {
                 // create SafeBag of Type CertBag
                 DerOutputStream safeBag = new DerOutputStream();
                 safeBag.putOID(CertBag_OID);
--- a/jdk/src/java.base/share/classes/sun/security/provider/ByteArrayAccess.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/ByteArrayAccess.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -88,13 +88,8 @@
 
     // Return whether this platform supports full speed int/long memory access
     // at unaligned addresses.
-    // This code was copied from java.nio.Bits because there is no equivalent
-    // public API.
     private static boolean unaligned() {
-        String arch = java.security.AccessController.doPrivileged
-            (new sun.security.action.GetPropertyAction("os.arch", ""));
-        return arch.equals("i386") || arch.equals("x86") || arch.equals("amd64")
-            || arch.equals("x86_64");
+        return unsafe.unalignedAccess();
     }
 
     /**
--- a/jdk/src/java.base/share/classes/sun/security/provider/PolicyFile.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/PolicyFile.java	Wed Jul 05 20:32:21 2017 +0200
@@ -186,7 +186,7 @@
  * <p> Case is unimportant for the identifiers (<code>permission</code>,
  * <code>signedBy</code>, <code>codeBase</code>, etc.) but is
  * significant for the <i>Type</i>
- * or for any string that is passed in as a value. <p>
+ * or for any string that is passed in as a value.
  *
  * <p> An example of two entries in a policy configuration file is
  * <pre>
@@ -212,7 +212,7 @@
  *  with one or more Principal class/name pairs.  The exact
  *  replacement performed depends upon the contents of the
  *  grant clause to which the permission belongs.
- *<p>
+ * <p>
  *
  *  If the grant clause does not contain any principal information,
  *  the permission will be ignored (permissions containing
@@ -220,11 +220,11 @@
  *  of a principal-based grant clause).  For example, BarPermission
  *  will always be ignored in the following grant clause:
  *
- *<pre>
+ * <pre>
  *    grant codebase "www.foo.com", signedby "duke" {
  *      permission BarPermission "... ${{self}} ...";
  *    };
- *</pre>
+ * </pre>
  *
  *  If the grant clause contains principal information, <b>${{self}}</b>
  *  will be replaced with that same principal information.
@@ -389,7 +389,7 @@
      * <p>Case is unimportant for the identifiers (<code>permission</code>,
      * <code>signedBy</code>, <code>codeBase</code>, etc.) but is
      * significant for the <i>Type</i>
-     * or for any string that is passed in as a value. <p>
+     * or for any string that is passed in as a value.
      *
      * <p>An example of two entries in a policy configuration file is
      * <pre>
@@ -399,7 +399,7 @@
      *   grant signedBy "Duke" {
      *          permission java.io.FilePermission "/tmp/*", "read,write";
      *   };
-     * <p>
+     *
      *   // grant everyone the following permission
      *
      *   grant {
@@ -1044,8 +1044,8 @@
      * the ProtectionDomain and tests whether the permission is
      * granted.
      *
-     * @param domain the ProtectionDomain to test
-     * @param permission the Permission object to be tested for implication.
+     * @param pd the ProtectionDomain to test
+     * @param p the Permission object to be tested for implication.
      *
      * @return true if "permission" is a proper subset of a permission
      * granted to this ProtectionDomain.
@@ -1093,8 +1093,6 @@
      * originally granted permission, as well as the Class and name
      * for the respective <code>Principal</code>.
      *
-     * <p>
-     *
      * @param domain the Permissions granted to this
      *          <code>ProtectionDomain</code> are returned.
      *
@@ -1131,7 +1129,7 @@
      * Examines this Policy and creates a PermissionCollection object with
      * the set of permissions for the specified CodeSource.
      *
-     * @param CodeSource the codesource associated with the caller.
+     * @param codesource the CodeSource associated with the caller.
      * This encapsulates the original location of the code (where the code
      * came from) and the public key(s) of its signer.
      *
@@ -1430,9 +1428,7 @@
     }
 
     /**
-     * <p>
-     *
-     * @param sp the SelfPermission that needs to be expanded <p>
+     * @param sp the SelfPermission that needs to be expanded.
      *
      * @param entryPs list of principals for the Policy entry.
      *
--- a/jdk/src/java.base/share/classes/sun/security/provider/PolicyParser.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/PolicyParser.java	Wed Jul 05 20:32:21 2017 +0200
@@ -45,19 +45,19 @@
  * is represented as a separate
  * persistent configuration.  The configuration may be stored as a
  * flat ASCII file, as a serialized binary file of
- * the Policy class, or as a database. <p>
+ * the Policy class, or as a database.
  *
  * <p>The Java runtime creates one global Policy object, which is used to
  * represent the static policy configuration file.  It is consulted by
  * a ProtectionDomain when the protection domain initializes its set of
- * permissions. <p>
+ * permissions.
  *
  * <p>The Policy <code>init</code> method parses the policy
  * configuration file, and then
  * populates the Policy object.  The Policy object is agnostic in that
  * it is not involved in making policy decisions.  It is merely the
  * Java runtime representation of the persistent policy configuration
- * file. <p>
+ * file.
  *
  * <p>When a protection domain needs to initialize its set of
  * permissions, it executes code such as the following
@@ -842,8 +842,7 @@
 
     /**
      * Each grant entry in the policy configuration file is
-     * represented by a
-     * GrantEntry object.  <p>
+     * represented by a GrantEntry object.
      *
      * <p>
      * For example, the entry
@@ -1094,7 +1093,7 @@
     /**
      * Each permission entry in the policy configuration file is
      * represented by a
-     * PermissionEntry object.  <p>
+     * PermissionEntry object.
      *
      * <p>
      * For example, the entry
--- a/jdk/src/java.base/share/classes/sun/security/provider/SecureRandom.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/SecureRandom.java	Wed Jul 05 20:32:21 2017 +0200
@@ -208,7 +208,7 @@
     /**
      * Generates a user-specified number of random bytes.
      *
-     * @param bytes the array to be filled in with random bytes.
+     * @param result the array to be filled in with random bytes.
      */
     @Override
     public synchronized void engineNextBytes(byte[] result) {
--- a/jdk/src/java.base/share/classes/sun/security/provider/X509Factory.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/X509Factory.java	Wed Jul 05 20:32:21 2017 +0200
@@ -41,7 +41,7 @@
 import sun.security.pkcs.ParsingException;
 
 /**
- * This class defines a certificate factory for X.509 v3 certificates &
+ * This class defines a certificate factory for X.509 v3 certificates {@literal &}
  * certification paths, and X.509 v2 certificate revocation lists (CRLs).
  *
  * @author Jan Luehe
@@ -536,7 +536,7 @@
      * after the newline character after the -----END SOMETHING----- line.
      *
      * @param is the InputStream
-     * @returns byte block or null if end of stream
+     * @return byte block or null if end of stream
      * @throws IOException If any parsing error
      */
     private static byte[] readOneBlock(InputStream is) throws IOException {
@@ -664,7 +664,7 @@
      * @param is    Read from this InputStream
      * @param bout  Write into this OutputStream
      * @param tag   Tag already read (-1 mean not read)
-     * @returns     The current tag, used to check EOC in indefinite-length BER
+     * @return     The current tag, used to check EOC in indefinite-length BER
      * @throws IOException Any parsing error
      */
     private static int readBERInternal(InputStream is,
--- a/jdk/src/java.base/share/classes/sun/security/provider/certpath/AdjacencyList.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/certpath/AdjacencyList.java	Wed Jul 05 20:32:21 2017 +0200
@@ -75,10 +75,10 @@
  * values <code>SUCCEED</code> and <code>FAIL</code> mean that we've come to
  * the end of the build process, and there will not be any more entries in
  * the list.
- * <p>
+ *
  * @see sun.security.provider.certpath.BuildStep
  * @see sun.security.provider.certpath.Vertex
- * <p>
+ *
  * @author  seth proctor
  * @since   1.4
  */
--- a/jdk/src/java.base/share/classes/sun/security/provider/certpath/BuildStep.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/certpath/BuildStep.java	Wed Jul 05 20:32:21 2017 +0200
@@ -93,7 +93,7 @@
     /**
      * return vertex description for this build step
      *
-     * @returns Vertex
+     * @return Vertex
      */
     public Vertex getVertex() {
         return vertex;
@@ -102,7 +102,7 @@
     /**
      * return the certificate associated with this build step
      *
-     * @returns X509Certificate
+     * @return X509Certificate
      */
     public X509Certificate getCertificate() {
         return cert;
@@ -112,7 +112,7 @@
      * return string form of issuer name from certificate associated with this
      * build step
      *
-     * @returns String form of issuer name or null, if no certificate.
+     * @return String form of issuer name or null, if no certificate.
      */
     public String getIssuerName() {
         return getIssuerName(null);
@@ -125,7 +125,7 @@
      *
      * @param defaultName name to use as default if unable to return an issuer
      * name from the certificate, or if no certificate.
-     * @returns String form of issuer name or defaultName, if no certificate or
+     * @return String form of issuer name or defaultName, if no certificate or
      * exception received while trying to extract issuer name from certificate.
      */
     public String getIssuerName(String defaultName) {
@@ -137,7 +137,7 @@
      * return string form of subject name from certificate associated with this
      * build step.
      *
-     * @returns String form of subject name or null, if no certificate.
+     * @return String form of subject name or null, if no certificate.
      */
     public String getSubjectName() {
         return getSubjectName(null);
@@ -151,7 +151,7 @@
      *
      * @param defaultName name to use as default if unable to return a subject
      * name from the certificate, or if no certificate.
-     * @returns String form of subject name or defaultName, if no certificate or
+     * @return String form of subject name or defaultName, if no certificate or
      * if an exception was received while attempting to extract the subject name
      * from the certificate.
      */
@@ -163,7 +163,7 @@
     /**
      * return the exception associated with this build step.
      *
-     * @returns Throwable
+     * @return Throwable
      */
     public Throwable getThrowable() {
         return throwable;
@@ -173,7 +173,7 @@
      * return the result code associated with this build step.  The result codes
      * are POSSIBLE, FOLLOW, BACK, FAIL, SUCCEED.
      *
-     * @returns int result code
+     * @return int result code
      */
     public int getResult() {
         return result;
@@ -184,7 +184,7 @@
      * with this build step.
      *
      * @param   res    result code
-     * @returns String string representing meaning of the result code
+     * @return String string representing meaning of the result code
      */
     public String resultToString(int res) {
         String resultString = "";
@@ -216,7 +216,7 @@
      * return a string representation of this build step, showing minimal
      * detail.
      *
-     * @returns String
+     * @return String
      */
     @Override
     public String toString() {
@@ -243,7 +243,7 @@
      * the vertex state appropriate to the result of this build step, and the
      * certificate contents.
      *
-     * @returns String
+     * @return String
      */
     public String verboseToString() {
         String out = resultToString(getResult());
@@ -269,7 +269,7 @@
      * return a string representation of this build step, including all possible
      * detail of the vertex state, but not including the certificate contents.
      *
-     * @returns String
+     * @return String
      */
     public String fullToString() {
         return resultToString(getResult()) + vertex.toString();
--- a/jdk/src/java.base/share/classes/sun/security/provider/certpath/PolicyChecker.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/certpath/PolicyChecker.java	Wed Jul 05 20:32:21 2017 +0200
@@ -849,7 +849,7 @@
      * @param initPolicies the Set of policies required by the user
      * @param currCertPolicies the CertificatePoliciesExtension of the
      * certificate being processed
-     * @returns the root node of the valid policy tree after modification
+     * @return the root node of the valid policy tree after modification
      * @exception CertPathValidatorException Exception thrown if error occurs.
      */
     private static PolicyNodeImpl removeInvalidNodes(PolicyNodeImpl rootNode,
@@ -909,7 +909,7 @@
      * valid policy tree is null. Marks each node of the returned tree
      * immutable and thread-safe.
      *
-     * @returns the root node of the valid policy tree, or null if
+     * @return the root node of the valid policy tree, or null if
      * the valid policy tree is null
      */
     PolicyNode getPolicyTree() {
--- a/jdk/src/java.base/share/classes/sun/security/provider/certpath/Vertex.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/provider/certpath/Vertex.java	Wed Jul 05 20:32:21 2017 +0200
@@ -67,7 +67,7 @@
     /**
      * return the certificate for this vertex
      *
-     * @returns X509Certificate
+     * @return X509Certificate
      */
     public X509Certificate getCertificate() {
         return cert;
@@ -78,7 +78,7 @@
      * adjacency list that contains certificates that could follow this
      * certificate.
      *
-     * @returns int index for this vertex, or -1 if no following certificates.
+     * @return int index for this vertex, or -1 if no following certificates.
      */
     public int getIndex() {
         return index;
@@ -99,7 +99,7 @@
      * return the throwable associated with this vertex;
      * returns null if none.
      *
-     * @returns Throwable
+     * @return Throwable
      */
     public Throwable getThrowable() {
         return throwable;
@@ -118,7 +118,7 @@
     /**
      * Return full string representation of vertex
      *
-     * @returns String representation of vertex
+     * @return String representation of vertex
      */
     @Override
     public String toString() {
@@ -129,7 +129,7 @@
      * Return string representation of this vertex's
      * certificate information.
      *
-     * @returns String representation of certificate info
+     * @return String representation of certificate info
      */
     public String certToString() {
         StringBuilder sb = new StringBuilder();
@@ -197,7 +197,7 @@
      * return Vertex throwable as String compatible with
      * the way toString returns other information
      *
-     * @returns String form of exception (or "none")
+     * @return String form of exception (or "none")
      */
     public String throwableToString() {
         StringBuilder sb = new StringBuilder("Exception:  ");
@@ -214,7 +214,7 @@
      * the way other Vertex.xToString() methods display
      * information.
      *
-     * @returns String form of index as "Last cert?  [Yes/No]
+     * @return String form of index as "Last cert?  [Yes/No]
      */
     public String moreToString() {
         StringBuilder sb = new StringBuilder("Last cert?  ");
@@ -227,7 +227,7 @@
      * return Vertex index as String compatible with
      * the way other Vertex.xToString() methods displays other information.
      *
-     * @returns String form of index as "Index:     [numeric index]"
+     * @return String form of index as "Index:     [numeric index]"
      */
     public String indexToString() {
         return "Index:      " + index + "\n";
--- a/jdk/src/java.base/share/classes/sun/security/rsa/RSAKeyFactory.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/rsa/RSAKeyFactory.java	Wed Jul 05 20:32:21 2017 +0200
@@ -133,7 +133,7 @@
      *
      * @param modulusLen the bit length of the RSA modulus.
      * @param exponent the RSA exponent
-     * @param minModulusLen if > 0, check to see if modulusLen is at
+     * @param minModulusLen if {@literal > 0}, check to see if modulusLen is at
      *        least this long, otherwise unused.
      * @param maxModulusLen caller will allow this max number of bits.
      *        Allow the smaller of the system-defined maximum and this param.
--- a/jdk/src/java.base/share/classes/sun/security/ssl/ProtocolVersion.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/ssl/ProtocolVersion.java	Wed Jul 05 20:32:21 2017 +0200
@@ -39,11 +39,13 @@
  *
  * Checks for a particular version number should generally take this form:
  *
+ * <pre>{@code
  * if (protocolVersion.v >= ProtocolVersion.TLS10) {
  *   // TLS 1.0 code goes here
  * } else {
  *   // SSL 3.0 code here
  * }
+ * }</pre>
  *
  * @author  Andreas Sterbenz
  * @since   1.4.1
--- a/jdk/src/java.base/share/classes/sun/security/timestamp/HttpTimestamper.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/timestamp/HttpTimestamper.java	Wed Jul 05 20:32:21 2017 +0200
@@ -68,7 +68,7 @@
     /**
      * Creates a timestamper that connects to the specified TSA.
      *
-     * @param tsa The location of the TSA. It must be an HTTP or HTTPS URI.
+     * @param tsaURI The location of the TSA. It must be an HTTP or HTTPS URI.
      * @throws IllegalArgumentException if tsaURI is not an HTTP or HTTPS URI
      */
     public HttpTimestamper(URI tsaURI) {
--- a/jdk/src/java.base/share/classes/sun/security/timestamp/TSRequest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/timestamp/TSRequest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -112,7 +112,7 @@
     /**
      * Sets an object identifier for the Time-Stamp Protocol policy.
      *
-     * @param version The policy object identifier.
+     * @param policyId The policy object identifier.
      */
     public void setPolicyId(String policyId) {
         this.policyId = policyId;
--- a/jdk/src/java.base/share/classes/sun/security/timestamp/TimestampToken.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/timestamp/TimestampToken.java	Wed Jul 05 20:32:21 2017 +0200
@@ -83,8 +83,8 @@
     /**
      * Constructs an object to store a timestamp token.
      *
-     * @param status A buffer containing the ASN.1 BER encoding of the
-     *               TSTInfo element defined in RFC 3161.
+     * @param timestampTokenInfo A buffer containing the ASN.1 BER encoding of the
+     *                           TSTInfo element defined in RFC 3161.
      */
     public TimestampToken(byte[] timestampTokenInfo) throws IOException {
         if (timestampTokenInfo == null) {
--- a/jdk/src/java.base/share/classes/sun/security/tools/PathList.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/PathList.java	Wed Jul 05 20:32:21 2017 +0200
@@ -42,7 +42,7 @@
      * Utility method for appending path from pathFrom to pathTo.
      *
      * @param pathTo the target path
-     * @param pathSource the path to be appended to pathTo
+     * @param pathFrom the path to be appended to pathTo
      * @return the resulting path
      */
     public static String appendPath(String pathTo, String pathFrom) {
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1887,7 +1887,7 @@
 
     /**
      * Load the srckeystore from a stream, used in -importkeystore
-     * @returns the src KeyStore
+     * @return the src KeyStore
      */
     KeyStore loadSourceKeyStore() throws Exception {
         boolean isPkcs11 = false;
@@ -2005,7 +2005,7 @@
 
     /**
      * Import a single entry named alias from srckeystore
-     * @returns 1 if the import action succeed
+     * @return  1 if the import action succeed
      *          0 if user choose to ignore an alias-dumplicated entry
      *          2 if setEntry throws Exception
      */
@@ -2836,7 +2836,7 @@
     /**
      * Prompts user for alias name.
      * @param prompt the {0} of "Enter {0} alias name:  " in prompt line
-     * @returns the string entered by the user, without the \n at the end
+     * @return the string entered by the user, without the \n at the end
      */
     private String getAlias(String prompt) throws Exception {
         if (prompt != null) {
@@ -2854,7 +2854,7 @@
     /**
      * Prompts user for an input string from the command line (System.in)
      * @prompt the prompt string printed
-     * @returns the string entered by the user, without the \n at the end
+     * @return the string entered by the user, without the \n at the end
      */
     private String inputStringFromStdin(String prompt) throws Exception {
         System.err.print(prompt);
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_HK.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_HK.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -420,8 +420,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -433,8 +433,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/util/BitArray.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/BitArray.java	Wed Jul 05 20:32:21 2017 +0200
@@ -66,10 +66,10 @@
 
     /**
      * Creates a BitArray of the specified size, initialized from the
-     * specified byte array.  The most significant bit of a[0] gets
+     * specified byte array.  The most significant bit of {@code a[0]} gets
      * index zero in the BitArray.  The array a must be large enough
      * to specify a value for every bit in the BitArray.  In other words,
-     * 8*a.length <= length.
+     * {@code 8*a.length <= length}.
      */
     public BitArray(int length, byte[] a) throws IllegalArgumentException {
 
--- a/jdk/src/java.base/share/classes/sun/security/util/ByteArrayLexOrder.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/ByteArrayLexOrder.java	Wed Jul 05 20:32:21 2017 +0200
@@ -44,8 +44,9 @@
      *
      * @param  bytes1 first byte array to compare.
      * @param  bytes2 second byte array to compare.
-     * @return negative number if bytes1 < bytes2, 0 if bytes1 == bytes2,
-     * positive number if bytes1 > bytes2.
+     * @return negative number if {@code bytes1 < bytes2},
+     *         0 if {@code bytes1 == bytes2},
+     *         positive number if {@code bytes1 > bytes2}.
      *
      * @exception <code>ClassCastException</code>
      * if either argument is not a byte array.
--- a/jdk/src/java.base/share/classes/sun/security/util/ByteArrayTagOrder.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/ByteArrayTagOrder.java	Wed Jul 05 20:32:21 2017 +0200
@@ -44,8 +44,9 @@
      *
      * @param  bytes1 first byte array to compare.
      * @param  bytes2 second byte array to compare.
-     * @return negative number if bytes1 < bytes2, 0 if bytes1 == bytes2,
-     * positive number if bytes1 > bytes2.
+     * @return negative number if {@code bytes1 < bytes2},
+     *         0 if {@code bytes1 == bytes2},
+     *         positive number if {@code bytes1 > bytes2}.
      *
      * @exception <code>ClassCastException</code>
      * if either argument is not a byte array.
--- a/jdk/src/java.base/share/classes/sun/security/util/DerOutputStream.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/DerOutputStream.java	Wed Jul 05 20:32:21 2017 +0200
@@ -103,7 +103,7 @@
      * @param tag the DER value of the context-specific tag that replaces
      * original tag of the value in the output, such as in
      * <pre>
-     *          <em> <field> [N] IMPLICIT <type></em>
+     *          <em> {@code <field> [N] IMPLICIT <type>}</em>
      * </pre>
      * For example, <em>FooLength [1] IMPLICIT INTEGER</em>, with value=4;
      * would be encoded as "81 01 04"  whereas in explicit
@@ -245,7 +245,7 @@
      * Marshals a DER bit string on the output stream.
      * The bit strings need not be byte-aligned.
      *
-     * @param bits the bit string, MSB first
+     * @param ba the bit string, MSB first
      */
     public void putUnalignedBitString(BitArray ba) throws IOException {
         byte[] bits = ba.toByteArray();
@@ -260,7 +260,7 @@
      * Marshals a truncated DER bit string on the output stream.
      * The bit strings need not be byte-aligned.
      *
-     * @param bits the bit string, MSB first
+     * @param ba the bit string, MSB first
      */
     public void putTruncatedUnalignedBitString(BitArray ba) throws IOException {
         putUnalignedBitString(ba.truncate());
@@ -516,7 +516,7 @@
     /**
      * Put the encoding of the length in the stream.
      *
-     * @params len the length of the attribute.
+     * @param len the length of the attribute.
      * @exception IOException on writing errors.
      */
     public void putLength(int len) throws IOException {
@@ -550,11 +550,11 @@
     /**
      * Put the tag of the attribute in the stream.
      *
-     * @params class the tag class type, one of UNIVERSAL, CONTEXT,
-     *                            APPLICATION or PRIVATE
-     * @params form if true, the value is constructed, otherwise it is
+     * @param tagClass the tag class type, one of UNIVERSAL, CONTEXT,
+     *        APPLICATION or PRIVATE
+     * @param form if true, the value is constructed, otherwise it is
      * primitive.
-     * @params val the tag value
+     * @param val the tag value
      */
     public void putTag(byte tagClass, boolean form, byte val) {
         byte tag = (byte)(tagClass | val);
--- a/jdk/src/java.base/share/classes/sun/security/util/DerValue.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/DerValue.java	Wed Jul 05 20:32:21 2017 +0200
@@ -301,7 +301,7 @@
      *
      * @param buf the buffer
      * @param offset start point of the single DER-encoded dataum
-     * @param length how many bytes are in the encoded datum
+     * @param len how many bytes are in the encoded datum
      */
     public DerValue(byte[] buf, int offset, int len) throws IOException {
         data = init(true, new ByteArrayInputStream(buf, offset, len));
@@ -594,7 +594,7 @@
      * Returns an ASN.1 BIT STRING value, with the tag assumed implicit
      * based on the parameter.  The bit string must be byte-aligned.
      *
-     * @params tagImplicit if true, the tag is assumed implicit.
+     * @param tagImplicit if true, the tag is assumed implicit.
      * @return the bit string held in this value
      */
     public byte[] getBitString(boolean tagImplicit) throws IOException {
@@ -610,7 +610,7 @@
      * Returns an ASN.1 BIT STRING value, with the tag assumed implicit
      * based on the parameter.  The bit string need not be byte-aligned.
      *
-     * @params tagImplicit if true, the tag is assumed implicit.
+     * @param tagImplicit if true, the tag is assumed implicit.
      * @return the bit string held in this value
      */
     public BitArray getUnalignedBitString(boolean tagImplicit)
@@ -750,7 +750,7 @@
      * encoding, so that bitwise equality of the encoded values is an
      * efficient way to establish equivalence of the unencoded values.
      *
-     * @param other the object being compared with this one
+     * @param o the object being compared with this one
      */
     @Override
     public boolean equals(Object o) {
@@ -892,11 +892,11 @@
     /**
      * Create the tag of the attribute.
      *
-     * @params class the tag class type, one of UNIVERSAL, CONTEXT,
+     * @param tagClass the tag class type, one of UNIVERSAL, CONTEXT,
      *               APPLICATION or PRIVATE
-     * @params form if true, the value is constructed, otherwise it
+     * @param form if true, the value is constructed, otherwise it
      * is primitive.
-     * @params val the tag value
+     * @param val the tag value
      */
     public static byte createTag(byte tagClass, boolean form, byte val) {
         byte tag = (byte)(tagClass | val);
@@ -910,7 +910,7 @@
      * Set the tag of the attribute. Commonly used to reset the
      * tag value used for IMPLICIT encodings.
      *
-     * @params tag the tag value
+     * @param tag the tag value
      */
     public void resetTag(byte tag) {
         this.tag = tag;
--- a/jdk/src/java.base/share/classes/sun/security/util/KeyUtil.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/KeyUtil.java	Wed Jul 05 20:32:21 2017 +0200
@@ -100,11 +100,10 @@
      * <P>
      * Note that this method is only apply to DHPublicKey at present.
      *
-     * @param  publicKey
-     *         the key object, cannot be null
+     * @param  key the key object, cannot be null
      *
-     * @throws NullPointerException if {@code publicKey} is null
-     * @throws InvalidKeyException if {@code publicKey} is invalid
+     * @throws NullPointerException if {@code key} is null
+     * @throws InvalidKeyException if {@code key} is invalid
      */
     public static final void validate(Key key)
             throws InvalidKeyException {
@@ -165,7 +164,8 @@
      * version numbers in a manner indistinguishable from correctly
      * formatted RSA blocks.
      *
-     * RFC 5246 describes the approach as :
+     * RFC 5246 describes the approach as:
+     * <pre>{@literal
      *
      *  1. Generate a string R of 48 random bytes
      *
@@ -183,6 +183,7 @@
      *        premaster secret = M
      *
      * Note that #2 should have completed before the call to this method.
+     * }</pre>
      *
      * @param  clientVersion the version of the TLS protocol by which the
      *         client wishes to communicate during this session
@@ -190,7 +191,7 @@
      *         contains the lower of that suggested by the client in the client
      *         hello and the highest supported by the server.
      * @param  encoded the encoded key in its "RAW" encoding format
-     * @param  isFailover whether or not the previous decryption of the
+     * @param  isFailOver whether or not the previous decryption of the
      *         encrypted PreMasterSecret message run into problem
      * @return the polished PreMasterSecret key in its "RAW" encoding format
      */
--- a/jdk/src/java.base/share/classes/sun/security/util/ManifestDigester.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/ManifestDigester.java	Wed Jul 05 20:32:21 2017 +0200
@@ -59,7 +59,7 @@
      *
      * @pos set by
      *
-     * @returns false if end of bytes has been reached, otherwise returns
+     * @return false if end of bytes has been reached, otherwise returns
      *          true
      */
     @SuppressWarnings("fallthrough")
--- a/jdk/src/java.base/share/classes/sun/security/util/PendingException.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/PendingException.java	Wed Jul 05 20:32:21 2017 +0200
@@ -47,8 +47,6 @@
      * A detail message is a String that describes this particular
      * exception.
      *
-     * <p>
-     *
      * @param msg the detail message.
      */
     public PendingException(String msg) {
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
--- a/jdk/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/SignatureFileVerifier.java	Wed Jul 05 20:32:21 2017 +0200
@@ -159,7 +159,7 @@
      * unknown signature related files (those starting with SIG- with
      * an optional [A-Z0-9]{1,3} extension right inside META-INF).
      *
-     * @param s file name
+     * @param name file name
      * @return true if the input file name is signature related
      */
     public static boolean isSigningRelated(String name) {
--- a/jdk/src/java.base/share/classes/sun/security/validator/PKIXValidator.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/validator/PKIXValidator.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,7 +36,7 @@
 
 /**
  * Validator implementation built on the PKIX CertPath API. This
- * implementation will be emphasized going forward.<p>
+ * implementation will be emphasized going forward.
  * <p>
  * Note that the validate() implementation tries to use a PKIX validator
  * if that appears possible and a PKIX builder otherwise. This increases
--- a/jdk/src/java.base/share/classes/sun/security/validator/Validator.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/validator/Validator.java	Wed Jul 05 20:32:21 2017 +0200
@@ -228,7 +228,7 @@
      * used (see JSSE X509TrustManager specification). In the future, it
      * could be used to pass in a PKCS#7 object for code signing to check time
      * stamps.
-     * <p>
+     *
      * @return a non-empty chain that was used to validate the path. The
      * end entity cert is at index 0, the trust anchor at index n-1.
      */
--- a/jdk/src/java.base/share/classes/sun/security/x509/AlgIdDSA.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/AlgIdDSA.java	Wed Jul 05 20:32:21 2017 +0200
@@ -39,7 +39,7 @@
  * NIST/IETF standard DER encoding.  These are used to implement the Digital
  * Signature Standard (DSS), FIPS 186.
  *
- * <P><em><b>NOTE:</b>  DSS/DSA Algorithm IDs may be created without these
+ * <P><em><b>NOTE:</b></em>  DSS/DSA Algorithm IDs may be created without these
  * parameters.  Use of DSS/DSA in modes where parameters are
  * either implicit (e.g. a default applicable to a site or a larger scope),
  * or are derived from some Certificate Authority's DSS certificate, is
@@ -49,8 +49,8 @@
  * that we have a certificate called <code>currentCert</code> which doesn't
  * contain DSS/DSA parameters and we need to derive DSS/DSA parameters
  * from a CA's certificate called <code>caCert</code>.
- * <p>
- * <code><pre>
+ *
+ * <pre>{@code
  * // key containing parameters to use
  * DSAPublicKey cAKey = (DSAPublicKey)(caCert.getPublicKey());
  * // key without parameters
@@ -63,7 +63,7 @@
  *                                            cAKeyParams.getQ(),
  *                                            cAKeyParams.getG());
  * DSAPublicKey usableKey = kf.generatePublic(ks);
- * </pre></code>
+ * }</pre>
  *
  * @see java.security.interfaces.DSAParams
  * @see java.security.interfaces.DSAPublicKey
--- a/jdk/src/java.base/share/classes/sun/security/x509/AuthorityInfoAccessExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/AuthorityInfoAccessExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -58,7 +58,7 @@
  *         accessMethod          OBJECT IDENTIFIER,
  *         accessLocation        GeneralName  }
  * </pre>
- * <p>
+ *
  * @see Extension
  * @see CertAttrSet
  */
--- a/jdk/src/java.base/share/classes/sun/security/x509/AuthorityKeyIdentifierExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/AuthorityKeyIdentifierExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -117,17 +117,17 @@
      * The default constructor for this extension.  Null parameters make
      * the element optional (not present).
      *
-     * @param id the KeyIdentifier associated with this extension.
+     * @param kid the KeyIdentifier associated with this extension.
      * @param names the GeneralNames associated with this extension
-     * @param serialNum the CertificateSerialNumber associated with
-     *         this extension.
+     * @param sn the CertificateSerialNumber associated with
+     *        this extension.
      * @exception IOException on error.
      */
-    public AuthorityKeyIdentifierExtension(KeyIdentifier kid, GeneralNames name,
+    public AuthorityKeyIdentifierExtension(KeyIdentifier kid, GeneralNames names,
                                            SerialNumber sn)
     throws IOException {
         this.id = kid;
-        this.names = name;
+        this.names = names;
         this.serialNum = sn;
 
         this.extensionId = PKIXExtensions.AuthorityKey_Id;
--- a/jdk/src/java.base/share/classes/sun/security/x509/CRLDistributionPointsExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/CRLDistributionPointsExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -71,7 +71,7 @@
  *
  * CRLDistPointsSyntax ::= SEQUENCE SIZE (1..MAX) OF DistributionPoint
  * </pre>
- * <p>
+ *
  * @author Anne Anderson
  * @author Andreas Sterbenz
  * @since 1.4.2
--- a/jdk/src/java.base/share/classes/sun/security/x509/CertificateSerialNumber.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/CertificateSerialNumber.java	Wed Jul 05 20:32:21 2017 +0200
@@ -57,7 +57,7 @@
     /**
      * Default constructor for the certificate attribute.
      *
-     * @param serial the serial number for the certificate.
+     * @param num the serial number for the certificate.
      */
     public CertificateSerialNumber(BigInteger num) {
       this.serial = new SerialNumber(num);
@@ -66,7 +66,7 @@
     /**
      * Default constructor for the certificate attribute.
      *
-     * @param serial the serial number for the certificate.
+     * @param num the serial number for the certificate.
      */
     public CertificateSerialNumber(int num) {
       this.serial = new SerialNumber(num);
--- a/jdk/src/java.base/share/classes/sun/security/x509/DNSName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/DNSName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -44,7 +44,7 @@
  * the DNS representation for Internet mail addresses (wpolk.nist.gov
  * instead of wpolk@nist.gov) is not permitted; such identities are to
  * be encoded as rfc822Name.
- * <p>
+ *
  * @author Amit Kapoor
  * @author Hemma Prafullchandra
  */
@@ -186,9 +186,9 @@
      * domain name comparisons for all present domain functions are done in a
      * case-insensitive manner, assuming an ASCII character set, and a high
      * order zero bit.
-     * <p>
+     *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
      *          not supported for this name type.
      */
@@ -228,7 +228,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/DistributionPoint.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/DistributionPoint.java	Wed Jul 05 20:32:21 2017 +0200
@@ -143,9 +143,9 @@
      * Constructor for the class using GeneralNames for DistributionPointName
      *
      * @param fullName the GeneralNames of the distribution point; may be null
-     * @param reasons the CRL reasons included in the CRL at this distribution
+     * @param reasonFlags the CRL reasons included in the CRL at this distribution
      *        point; may be null
-     * @param issuer the name(s) of the CRL issuer for the CRL at this
+     * @param crlIssuer the name(s) of the CRL issuer for the CRL at this
      *        distribution point; may be null
      */
     public DistributionPoint(GeneralNames fullName, boolean[] reasonFlags,
@@ -165,9 +165,9 @@
      *
      * @param relativeName the RelativeDistinguishedName of the distribution
      *        point; may not be null
-     * @param reasons the CRL reasons included in the CRL at this distribution
+     * @param reasonFlags the CRL reasons included in the CRL at this distribution
      *        point; may be null
-     * @param issuer the name(s) of the CRL issuer for the CRL at this
+     * @param crlIssuer the name(s) of the CRL issuer for the CRL at this
      *        distribution point; may not be null or empty.
      */
     public DistributionPoint(RDN relativeName, boolean[] reasonFlags,
--- a/jdk/src/java.base/share/classes/sun/security/x509/EDIPartyName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/EDIPartyName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -146,7 +146,7 @@
     /**
      * Return the assignerName
      *
-     * @returns String assignerName
+     * @return String assignerName
      */
     public String getAssignerName() {
         return assigner;
@@ -155,7 +155,7 @@
     /**
      * Return the partyName
      *
-     * @returns String partyName
+     * @return String partyName
      */
     public String getPartyName() {
         return party;
@@ -166,7 +166,7 @@
      * comparison without regard to type of the partyName and
      * the assignerName.
      *
-     * @returns true if the two names match
+     * @return true if the two names match
      */
     public boolean equals(Object other) {
         if (!(other instanceof EDIPartyName))
@@ -226,7 +226,7 @@
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is same type, but comparison operations are
      *          not supported for this name type.
      */
@@ -247,7 +247,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/ExtendedKeyUsageExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/ExtendedKeyUsageExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -75,7 +75,7 @@
  * processed independently and the certificate MUST only be used for a
  * purpose consistent with both fields.  If there is no purpose
  * consistent with both fields, then the certificate MUST NOT be used
- * for any purpose.<p>
+ * for any purpose.
  *
  * @since       1.4
  */
--- a/jdk/src/java.base/share/classes/sun/security/x509/Extension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/Extension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -50,11 +50,11 @@
  * }
  * </pre>
  * All subclasses need to implement a constructor of the form
- * <pre>
+ * <pre>{@code
  *     <subclass> (Boolean, Object)
- * </pre>
+ * }</pre>
  * where the Object is typically an array of DER encoded bytes.
- * <p>
+ *
  * @author Amit Kapoor
  * @author Hemma Prafullchandra
  */
--- a/jdk/src/java.base/share/classes/sun/security/x509/GeneralName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/GeneralName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -116,6 +116,15 @@
             }
             break;
 
+        case GeneralNameInterface.NAME_X400:
+            if (encName.isContextSpecific() && encName.isConstructed()) {
+                encName.resetTag(DerValue.tag_IA5String);
+                name = new X400Address(encName);
+            } else {
+                throw new IOException("Invalid encoding of X400Address name");
+            }
+            break;
+
         case GeneralNameInterface.NAME_URI:
             if (encName.isContextSpecific() && !encName.isConstructed()) {
                 encName.resetTag(DerValue.tag_IA5String);
@@ -193,7 +202,7 @@
      * Compare this GeneralName with another
      *
      * @param other GeneralName to compare to this
-     * @returns true if match
+     * @return true if match
      */
     public boolean equals(Object other) {
         if (this == other) {
--- a/jdk/src/java.base/share/classes/sun/security/x509/GeneralNameInterface.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/GeneralNameInterface.java	Wed Jul 05 20:32:21 2017 +0200
@@ -85,7 +85,7 @@
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is same type, but comparison operations are
      *          not supported for this name type.
      */
@@ -96,7 +96,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     int subtreeDepth() throws UnsupportedOperationException;
--- a/jdk/src/java.base/share/classes/sun/security/x509/GeneralNames.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/GeneralNames.java	Wed Jul 05 20:32:21 2017 +0200
@@ -126,7 +126,7 @@
     /**
      * compare this GeneralNames to other object for equality
      *
-     * @returns true iff this equals other
+     * @return true if this equals obj
      */
     public boolean equals(Object obj) {
         if (this == obj) {
--- a/jdk/src/java.base/share/classes/sun/security/x509/GeneralSubtree.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/GeneralSubtree.java	Wed Jul 05 20:32:21 2017 +0200
@@ -56,9 +56,9 @@
     /**
      * The default constructor for the class.
      *
-     * @params name the GeneralName
-     * @params min the minimum BaseDistance
-     * @params max the maximum BaseDistance
+     * @param name the GeneralName
+     * @param min the minimum BaseDistance
+     * @param max the maximum BaseDistance
      */
     public GeneralSubtree(GeneralName name, int min, int max) {
         this.name = name;
@@ -142,7 +142,7 @@
      * Compare this GeneralSubtree with another
      *
      * @param other GeneralSubtree to compare to this
-     * @returns true if match
+     * @return true if match
      */
     public boolean equals(Object other) {
         if (!(other instanceof GeneralSubtree))
@@ -187,7 +187,7 @@
     /**
      * Encode the GeneralSubtree.
      *
-     * @params out the DerOutputStream to encode this object to.
+     * @param out the DerOutputStream to encode this object to.
      */
     public void encode(DerOutputStream out) throws IOException {
         DerOutputStream seq = new DerOutputStream();
--- a/jdk/src/java.base/share/classes/sun/security/x509/GeneralSubtrees.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/GeneralSubtrees.java	Wed Jul 05 20:32:21 2017 +0200
@@ -37,7 +37,6 @@
  * <pre>
  * GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
  * </pre>
- * </p>
  *
  *
  * @author Amit Kapoor
@@ -132,7 +131,7 @@
     /**
      * Encode the GeneralSubtrees.
      *
-     * @params out the DerOutputStrean to encode this object to.
+     * @param out the DerOutputStrean to encode this object to.
      */
     public void encode(DerOutputStream out) throws IOException {
         DerOutputStream seq = new DerOutputStream();
@@ -147,8 +146,8 @@
      * Compare two general subtrees by comparing the subtrees
      * of each.
      *
-     * @param other GeneralSubtrees to compare to this
-     * @returns true if match
+     * @param obj GeneralSubtrees to compare to this
+     * @return true if match
      */
     public boolean equals(Object obj) {
         if (this == obj) {
@@ -236,8 +235,8 @@
      * create a subtree containing an instance of the input
      * name type that widens all other names of that type.
      *
-     * @params name GeneralNameInterface name
-     * @returns GeneralSubtree containing widest name of that type
+     * @param name GeneralNameInterface name
+     * @return GeneralSubtree containing widest name of that type
      * @throws RuntimeException on error (should not occur)
      */
     private GeneralSubtree createWidestSubtree(GeneralNameInterface name) {
@@ -309,10 +308,10 @@
      *     the result contains the name in other.  This means that
      *     the name is now constrained in some way, whereas before it was
      *     completely permitted.
-     * <ul>
+     * </ul>
      *
      * @param other GeneralSubtrees to be intersected with this
-     * @returns GeneralSubtrees to be merged with excluded; these are
+     * @return  GeneralSubtrees to be merged with excluded; these are
      *          empty-valued name types corresponding to entries that were
      *          of the same type but did not share the same subtree between
      *          this and other. Returns null if no such.
--- a/jdk/src/java.base/share/classes/sun/security/x509/IPAddressName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/IPAddressName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -75,7 +75,7 @@
     /**
      * Create the IPAddressName object from the passed encoded Der value.
      *
-     * @params derValue the encoded DER IPAddressName.
+     * @param derValue the encoded DER IPAddressName.
      * @exception IOException on error.
      */
     public IPAddressName(DerValue derValue) throws IOException {
@@ -85,7 +85,7 @@
     /**
      * Create the IPAddressName object with the specified octets.
      *
-     * @params address the IP address
+     * @param address the IP address
      * @throws IOException if address is not a valid IPv4 or IPv6 address
      */
     public IPAddressName(byte[] address) throws IOException {
@@ -106,7 +106,7 @@
 
     /**
      * Create an IPAddressName from a String.
-     * [IETF RFC1338 Supernetting & IETF RFC1519 Classless Inter-Domain
+     * [IETF RFC1338 Supernetting {@literal &} IETF RFC1519 Classless Inter-Domain
      * Routing (CIDR)] For IPv4 addresses, the forms are
      * "b1.b2.b3.b4" or "b1.b2.b3.b4/m1.m2.m3.m4", where b1 - b4 are decimal
      * byte values 0-255 and m1 - m4 are decimal mask values
@@ -118,7 +118,7 @@
      * of the address. If /n is used, n is a decimal number indicating how many
      * of the leftmost contiguous bits of the address comprise the prefix for
      * this subnet. Internally, a mask value is created using the prefix length.
-     * <p>
+     *
      * @param name String form of IPAddressName
      * @throws IOException if name can not be converted to a valid IPv4 or IPv6
      *     address
@@ -224,7 +224,7 @@
     /**
      * Encode the IPAddress name into the DerOutputStream.
      *
-     * @params out the DER stream to encode the IPAddressName to.
+     * @param out the DER stream to encode the IPAddressName to.
      * @exception IOException on encoding errors.
      */
     public void encode(DerOutputStream out) throws IOException {
@@ -384,9 +384,9 @@
      * constraint for "class C" subnet 10.9.8.0 shall be represented as the
      * octets 0A 09 08 00 FF FF FF 00, representing the CIDR notation
      * 10.9.8.0/255.255.255.0.
-     * <p>
+     *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but
      * narrowing and widening are not supported for this name type.
      */
@@ -479,7 +479,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/InhibitAnyPolicyExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/InhibitAnyPolicyExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -50,13 +50,13 @@
  * This extension MUST be critical.
  * <p>
  * The ASN.1 syntax for this extension is:
- * <code><pre>
+ * <pre>{@code
  * id-ce-inhibitAnyPolicy OBJECT IDENTIFIER ::=  { id-ce 54 }
  *
  * InhibitAnyPolicy ::= SkipCerts
  *
  * SkipCerts ::= INTEGER (0..MAX)
- * </pre></code>
+ * }</pre>
  * @author Anne Anderson
  * @see CertAttrSet
  * @see Extension
@@ -211,7 +211,7 @@
      * Get the attribute value.
      *
      * @param name name of attribute to get.  Must be SKIP_CERTS.
-     * @returns value of the attribute.  In this case it will be of type
+     * @return value of the attribute.  In this case it will be of type
      *          Integer.
      * @throws IOException on error
      */
@@ -244,7 +244,7 @@
      * Return an enumeration of names of attributes existing within this
      * attribute.
      *
-     * @returns enumeration of elements
+     * @return enumeration of elements
      */
     public Enumeration<String> getElements() {
         AttributeNameEnumeration elements = new AttributeNameEnumeration();
@@ -255,7 +255,7 @@
     /**
      * Return the name of this attribute.
      *
-     * @returns name of attribute.
+     * @return name of attribute.
      */
     public String getName() {
         return (NAME);
--- a/jdk/src/java.base/share/classes/sun/security/x509/KeyIdentifier.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/KeyIdentifier.java	Wed Jul 05 20:32:21 2017 +0200
@@ -69,7 +69,7 @@
      * <li>The keyIdentifier is composed of the 160-bit SHA-1 hash of the
      * value of the BIT STRING subjectPublicKey (excluding the tag,
      * length, and number of unused bits).
-     * <p>
+     *
      * <li>The keyIdentifier is composed of a four bit type field with
      * the value 0100 followed by the least significant 60 bits of the
      * SHA-1 hash of the value of the BIT STRING subjectPublicKey.
--- a/jdk/src/java.base/share/classes/sun/security/x509/NameConstraintsExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/NameConstraintsExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -328,7 +328,7 @@
      * (k)  If excludedSubtrees is present in the certificate, set the
      * excluded subtrees state variable to the union of its previous
      * value and the value indicated in the extension field.
-     * <p>
+     *
      * @param newConstraints additional NameConstraints to be applied
      * @throws IOException on error
      */
@@ -406,7 +406,7 @@
      * the excluded subtrees state variables.
      *
      * @param cert X509Certificate to be verified
-     * @returns true if certificate verifies successfully
+     * @return true if certificate verifies successfully
      * @throws IOException on error
      */
     public boolean verify(X509Certificate cert) throws IOException {
@@ -484,7 +484,7 @@
      * permitted and excluded subtrees variables.
      *
      * @param name GeneralNameInterface name to be verified
-     * @returns true if certificate verifies successfully
+     * @return true if certificate verifies successfully
      * @throws IOException on error
      */
     public boolean verify(GeneralNameInterface name) throws IOException {
@@ -566,7 +566,7 @@
      * NameConstraints.
      *
      * @param subject the certificate's subject name
-     * @returns true if certificate verifies successfully
+     * @return true if certificate verifies successfully
      * @throws IOException on error
      */
     public boolean verifyRFC822SpecialCase(X500Name subject) throws IOException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/OIDMap.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/OIDMap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,8 +33,8 @@
 import sun.security.util.*;
 
 /**
- * This class defines the mapping from OID & name to classes and vice
- * versa.  Used by CertificateExtensions & PKCS10 to get the java
+ * This class defines the mapping from OID {@literal &} name to classes and vice
+ * versa.  Used by CertificateExtensions {@literal &} PKCS10 to get the java
  * classes associated with a particular OID/name.
  *
  * @author Amit Kapoor
--- a/jdk/src/java.base/share/classes/sun/security/x509/OIDName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/OIDName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -55,7 +55,7 @@
     /**
      * Create the OIDName object with the specified name.
      *
-     * @param name the OIDName.
+     * @param oid the OIDName.
      */
     public OIDName(ObjectIdentifier oid) {
         this.oid = oid;
@@ -143,7 +143,7 @@
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
      *          not supported for this name type.
      */
@@ -166,7 +166,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/OtherName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/OtherName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -237,7 +237,7 @@
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is same type, but
      *         comparison operations are not supported for this name type.
      */
@@ -258,7 +258,7 @@
      * Return subtree depth of this name for purposes of determining
      * NameConstraints minimum and maximum bounds.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() {
--- a/jdk/src/java.base/share/classes/sun/security/x509/PolicyMappingsExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/PolicyMappingsExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -88,9 +88,9 @@
      *
      * @param maps the List of CertificatePolicyMap.
      */
-    public PolicyMappingsExtension(List<CertificatePolicyMap> map)
+    public PolicyMappingsExtension(List<CertificatePolicyMap> maps)
             throws IOException {
-        this.maps = map;
+        this.maps = maps;
         this.extensionId = PKIXExtensions.PolicyMappings_Id;
         this.critical = true;
         encodeThis();
@@ -108,8 +108,8 @@
     /**
      * Create the extension from the passed DER encoded value.
      *
-     * @params critical true if the extension is to be treated as critical.
-     * @params value an array of DER encoded bytes of the actual value.
+     * @param critical true if the extension is to be treated as critical.
+     * @param value an array of DER encoded bytes of the actual value.
      * @exception ClassCastException if value is not an array of bytes
      * @exception IOException on error.
      */
--- a/jdk/src/java.base/share/classes/sun/security/x509/RDN.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/RDN.java	Wed Jul 05 20:32:21 2017 +0200
@@ -95,7 +95,7 @@
      * preceded by '\'.
      *
      * @param name String form of RDN
-     * @param keyword an additional mapping of keywords to OIDs
+     * @param keywordMap an additional mapping of keywords to OIDs
      * @throws IOException on parsing error
      */
     public RDN(String name, Map<String, String> keywordMap) throws IOException {
@@ -307,7 +307,7 @@
      * Calculates a hash code value for the object.  Objects
      * which are equal will also have the same hashcode.
      *
-     * @returns int hashCode value
+     * @return int hashCode value
      */
     public int hashCode() {
         return toRFC2253String(true).hashCode();
@@ -316,8 +316,8 @@
     /*
      * return specified attribute value from RDN
      *
-     * @params oid ObjectIdentifier of attribute to be found
-     * @returns DerValue of attribute value; null if attribute does not exist
+     * @param oid ObjectIdentifier of attribute to be found
+     * @return DerValue of attribute value; null if attribute does not exist
      */
     DerValue findAttribute(ObjectIdentifier oid) {
         for (int i = 0; i < assertion.length; i++) {
--- a/jdk/src/java.base/share/classes/sun/security/x509/RFC822Name.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/RFC822Name.java	Wed Jul 05 20:32:21 2017 +0200
@@ -174,9 +174,9 @@
      * surrounded in parentheses) after it, and is not surrounded by "&lt;" and
      * "&gt;". Note that while upper and lower case letters are allowed in an
      * RFC 822 addr-spec, no significance is attached to the case.
-     * <p>
+     *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
      *          not supported for this name type.
      */
@@ -232,7 +232,7 @@
      * Return subtree depth of this name for purposes of determining
      * NameConstraints minimum and maximum bounds.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/SubjectInfoAccessExtension.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/SubjectInfoAccessExtension.java	Wed Jul 05 20:32:21 2017 +0200
@@ -62,7 +62,7 @@
  *          accessMethod          OBJECT IDENTIFIER,
  *          accessLocation        GeneralName  }
  * </pre>
- * <p>
+ *
  * @see Extension
  * @see CertAttrSet
  */
--- a/jdk/src/java.base/share/classes/sun/security/x509/URIName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/URIName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -52,10 +52,10 @@
  * <p>
  * [RFC1738] In general, URLs are written as follows:
  * <pre>
- * <scheme>:<scheme-specific-part>
+ * {@code <scheme>:<scheme-specific-part>}
  * </pre>
- * A URL contains the name of the scheme being used (<scheme>) followed
- * by a colon and then a string (the <scheme-specific-part>) whose
+ * A URL contains the name of the scheme being used ({@code <scheme>}) followed
+ * by a colon and then a string (the {@code <scheme-specific-part>}) whose
  * interpretation depends on the scheme.
  * <p>
  * While the syntax for the rest of the URL may vary depending on the
@@ -63,13 +63,13 @@
  * of an IP-based protocol to a specified host on the Internet use a
  * common syntax for the scheme-specific data:
  * <pre>
- * //<user>:<password>@<host>:<port>/<url-path>
+ * {@code //<user>:<password>@<host>:<port>/<url-path>}
  * </pre>
  * [RFC2732] specifies that an IPv6 address contained inside a URL
  * must be enclosed in square brackets (to allow distinguishing the
  * colons that separate IPv6 components from the colons that separate
  * scheme-specific data.
- * <p>
+ *
  * @author Amit Kapoor
  * @author Hemma Prafullchandra
  * @author Sean Mullan
@@ -246,7 +246,7 @@
     /**
      * Return the scheme name portion of a URIName
      *
-     * @returns scheme portion of full name
+     * @return scheme portion of full name
      */
     public String getScheme() {
         return uri.getScheme();
@@ -255,7 +255,7 @@
     /**
      * Return the host name or IP address portion of the URIName
      *
-     * @returns host name or IP address portion of full name
+     * @return host name or IP address portion of full name
      */
     public String getHost() {
         return host;
@@ -266,7 +266,7 @@
      * DNSName, then this host object does not include any
      * initial "." on the name.
      *
-     * @returns host name as DNSName or IPAddressName
+     * @return host name as DNSName or IPAddressName
      */
     public Object getHostObject() {
         if (hostIP != null) {
@@ -308,9 +308,9 @@
      * abc.def.xyz.com.  However, the constraint ".xyz.com" is not satisfied
      * by "xyz.com".  When the constraint does not begin with a period, it
      * specifies a host.
-     * <p>
+     *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but
      *  narrowing and widening are not supported for this name type.
      */
@@ -377,7 +377,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/UniqueIdentity.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/UniqueIdentity.java	Wed Jul 05 20:32:21 2017 +0200
@@ -73,7 +73,6 @@
      * Create the object, decoding the values from the passed DER stream.
      *
      * @param derVal the DerValue decoded from the stream.
-     * @param tag the tag the value is encoded under.
      * @exception IOException on decoding errors.
      */
     public UniqueIdentity(DerValue derVal) throws IOException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/X400Address.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X400Address.java	Wed Jul 05 20:32:21 2017 +0200
@@ -340,7 +340,7 @@
     /**
      * Create the X400Address object from the specified byte array
      *
-     * @param nameValue value of the name as a byte array
+     * @param value value of the name as a byte array
      */
     public X400Address(byte[] value) {
         nameValue = value;
@@ -392,7 +392,7 @@
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is same type, but comparison operations are
      *          not supported for this name type.
      */
@@ -413,7 +413,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/X500Name.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X500Name.java	Wed Jul 05 20:32:21 2017 +0200
@@ -84,14 +84,14 @@
  * <li>attribute values encoded in different types (e.g.,
  *    PrintableString and BMPString) may be assumed to represent
  *    different strings;
- * <p>
+ *
  * <li>attribute values in types other than PrintableString are case
  *    sensitive (this permits matching of attribute values as binary
  *    objects);
- * <p>
+ *
  * <li>attribute values in PrintableString are not case sensitive
  *    (e.g., "Marianne Swanson" is the same as "MARIANNE SWANSON"); and
- * <p>
+ *
  * <li>attribute values in PrintableString are compared after
  *    removing leading and trailing white space and converting internal
  *    substrings of one or more consecutive white space characters to a
@@ -1242,12 +1242,13 @@
      *   <li>NAME_NARROWS = 1: input name narrows this name
      *   <li>NAME_WIDENS = 2: input name widens this name
      *   <li>NAME_SAME_TYPE = 3: input name does not match or narrow this name,
-     &       but is same type
-     * </ul>.  These results are used in checking NameConstraints during
+     *       but is same type.
+     * </ul>
+     * These results are used in checking NameConstraints during
      * certification path verification.
      *
      * @param inputName to be checked for being constrained
-     * @returns constraint type above
+     * @return constraint type above
      * @throws UnsupportedOperationException if name is not exact match, but
      *         narrowing and widening are not supported for this name type.
      */
@@ -1313,7 +1314,7 @@
      * NameConstraints minimum and maximum bounds and for calculating
      * path lengths in name subtrees.
      *
-     * @returns distance of name from root
+     * @return distance of name from root
      * @throws UnsupportedOperationException if not supported for this name type
      */
     public int subtreeDepth() throws UnsupportedOperationException {
--- a/jdk/src/java.base/share/classes/sun/security/x509/X509CRLEntryImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X509CRLEntryImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -125,7 +125,7 @@
     /**
      * Unmarshals a revoked certificate from its encoded form.
      *
-     * @param derVal the DER value containing the revoked certificate.
+     * @param derValue the DER value containing the revoked certificate.
      * @exception CRLException on parsing errors.
      */
     public X509CRLEntryImpl(DerValue derValue) throws CRLException {
@@ -271,7 +271,7 @@
     /**
      * get Reason Code from CRL entry.
      *
-     * @returns Integer or null, if no such extension
+     * @return Integer or null, if no such extension
      * @throws IOException on error
      */
     public Integer getReasonCode() throws IOException {
@@ -432,7 +432,7 @@
      * get an extension
      *
      * @param oid ObjectIdentifier of extension desired
-     * @returns Extension of type <extension> or null, if not found
+     * @return Extension of type {@code <extension>} or null, if not found
      */
     public Extension getExtension(ObjectIdentifier oid) {
         if (extensions == null)
--- a/jdk/src/java.base/share/classes/sun/security/x509/X509CRLImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X509CRLImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -185,8 +185,8 @@
      * Initial CRL constructor, no revoked certs, and no extensions.
      *
      * @param issuer the name of the CA issuing this CRL.
-     * @param thisUpdate the Date of this issue.
-     * @param nextUpdate the Date of the next CRL.
+     * @param thisDate the Date of this issue.
+     * @param nextDate the Date of the next CRL.
      */
     public X509CRLImpl(X500Name issuer, Date thisDate, Date nextDate) {
         this.issuer = issuer;
@@ -198,8 +198,8 @@
      * CRL constructor, revoked certs, no extensions.
      *
      * @param issuer the name of the CA issuing this CRL.
-     * @param thisUpdate the Date of this issue.
-     * @param nextUpdate the Date of the next CRL.
+     * @param thisDate the Date of this issue.
+     * @param nextDate the Date of the next CRL.
      * @param badCerts the array of CRL entries.
      *
      * @exception CRLException on parsing/construction errors.
@@ -237,8 +237,8 @@
      * CRL constructor, revoked certs and extensions.
      *
      * @param issuer the name of the CA issuing this CRL.
-     * @param thisUpdate the Date of this issue.
-     * @param nextUpdate the Date of the next CRL.
+     * @param thisDate the Date of this issue.
+     * @param nextDate the Date of the next CRL.
      * @param badCerts the array of CRL entries.
      * @param crlExts the CRL extensions.
      *
@@ -832,8 +832,8 @@
     /**
      * return the AuthorityKeyIdentifier, if any.
      *
-     * @returns AuthorityKeyIdentifier or null
-     *          (if no AuthorityKeyIdentifierExtension)
+     * @return AuthorityKeyIdentifier or null
+     *         (if no AuthorityKeyIdentifierExtension)
      * @throws IOException on error
      */
     public KeyIdentifier getAuthKeyId() throws IOException {
@@ -850,7 +850,7 @@
     /**
      * return the AuthorityKeyIdentifierExtension, if any.
      *
-     * @returns AuthorityKeyIdentifierExtension or null (if no such extension)
+     * @return AuthorityKeyIdentifierExtension or null (if no such extension)
      * @throws IOException on error
      */
     public AuthorityKeyIdentifierExtension getAuthKeyIdExtension()
@@ -862,7 +862,7 @@
     /**
      * return the CRLNumberExtension, if any.
      *
-     * @returns CRLNumberExtension or null (if no such extension)
+     * @return CRLNumberExtension or null (if no such extension)
      * @throws IOException on error
      */
     public CRLNumberExtension getCRLNumberExtension() throws IOException {
@@ -873,7 +873,7 @@
     /**
      * return the CRL number from the CRLNumberExtension, if any.
      *
-     * @returns number or null (if no such extension)
+     * @return number or null (if no such extension)
      * @throws IOException on error
      */
     public BigInteger getCRLNumber() throws IOException {
@@ -889,7 +889,7 @@
     /**
      * return the DeltaCRLIndicatorExtension, if any.
      *
-     * @returns DeltaCRLIndicatorExtension or null (if no such extension)
+     * @return DeltaCRLIndicatorExtension or null (if no such extension)
      * @throws IOException on error
      */
     public DeltaCRLIndicatorExtension getDeltaCRLIndicatorExtension()
@@ -902,7 +902,7 @@
     /**
      * return the base CRL number from the DeltaCRLIndicatorExtension, if any.
      *
-     * @returns number or null (if no such extension)
+     * @return number or null (if no such extension)
      * @throws IOException on error
      */
     public BigInteger getBaseCRLNumber() throws IOException {
@@ -918,7 +918,7 @@
     /**
      * return the IssuerAlternativeNameExtension, if any.
      *
-     * @returns IssuerAlternativeNameExtension or null (if no such extension)
+     * @return IssuerAlternativeNameExtension or null (if no such extension)
      * @throws IOException on error
      */
     public IssuerAlternativeNameExtension getIssuerAltNameExtension()
@@ -930,8 +930,8 @@
     /**
      * return the IssuingDistributionPointExtension, if any.
      *
-     * @returns IssuingDistributionPointExtension or null
-     *          (if no such extension)
+     * @return IssuingDistributionPointExtension or null
+     *         (if no such extension)
      * @throws IOException on error
      */
     public IssuingDistributionPointExtension
@@ -1043,7 +1043,7 @@
      * get an extension
      *
      * @param oid ObjectIdentifier of extension desired
-     * @returns Object of type <extension> or null, if not found
+     * @return Object of type {@code <extension>} or null, if not found
      * @throws IOException on error
      */
     public Object getExtension(ObjectIdentifier oid) {
--- a/jdk/src/java.base/share/classes/sun/security/x509/X509CertImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X509CertImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -247,7 +247,7 @@
      * read input stream as HEX-encoded DER-encoded bytes
      *
      * @param in InputStream to read
-     * @returns DerValue corresponding to decoded HEX-encoded bytes
+     * @return DerValue corresponding to decoded HEX-encoded bytes
      * @throws IOException if stream can not be interpreted as RFC1421
      *                     encoded bytes
      */
@@ -289,8 +289,8 @@
      * Construct an initialized X509 Certificate. The certificate is stored
      * in raw form and has to be signed to be useful.
      *
-     * @params info the X509CertificateInfo which the Certificate is to be
-     *              created from.
+     * @param certInfo the X509CertificateInfo which the Certificate is to be
+     *             created from.
      */
     public X509CertImpl(X509CertInfo certInfo) {
         this.info = certInfo;
--- a/jdk/src/java.base/share/classes/sun/security/x509/X509CertInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/x509/X509CertInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -38,8 +38,9 @@
 /**
  * The X509CertInfo class represents X.509 certificate information.
  *
- * <P>X.509 certificates have several base data elements, including:<UL>
+ * <P>X.509 certificates have several base data elements, including:
  *
+ * <UL>
  * <LI>The <em>Subject Name</em>, an X.500 Distinguished Name for
  *      the entity (subject) for which the certificate was issued.
  *
@@ -54,6 +55,7 @@
  *
  * <LI>A <em>Serial Number</em> assigned by the CA, for use in
  *      certificate revocation and other applications.
+ * </UL>
  *
  * @author Amit Kapoor
  * @author Hemma Prafullchandra
@@ -356,8 +358,8 @@
     /**
      * Set the certificate attribute.
      *
-     * @params name the name of the Certificate attribute.
-     * @params val the value of the Certificate attribute.
+     * @param name the name of the Certificate attribute.
+     * @param val the value of the Certificate attribute.
      * @exception CertificateException on invalid attributes.
      * @exception IOException on other errors.
      */
@@ -446,7 +448,7 @@
     /**
      * Delete the certificate attribute.
      *
-     * @params name the name of the Certificate attribute.
+     * @param name the name of the Certificate attribute.
      * @exception CertificateException on invalid attributes.
      * @exception IOException on other errors.
      */
@@ -525,7 +527,7 @@
     /**
      * Get the certificate attribute.
      *
-     * @params name the name of the Certificate attribute.
+     * @param name the name of the Certificate attribute.
      *
      * @exception CertificateException on invalid attributes.
      * @exception IOException on other errors.
@@ -812,7 +814,7 @@
     /**
      * Set the version number of the certificate.
      *
-     * @params val the Object class value for the Extensions
+     * @param val the Object class value for the Extensions
      * @exception CertificateException on invalid data.
      */
     private void setVersion(Object val) throws CertificateException {
@@ -825,7 +827,7 @@
     /**
      * Set the serial number of the certificate.
      *
-     * @params val the Object class value for the CertificateSerialNumber
+     * @param val the Object class value for the CertificateSerialNumber
      * @exception CertificateException on invalid data.
      */
     private void setSerialNumber(Object val) throws CertificateException {
@@ -838,7 +840,7 @@
     /**
      * Set the algorithm id of the certificate.
      *
-     * @params val the Object class value for the AlgorithmId
+     * @param val the Object class value for the AlgorithmId
      * @exception CertificateException on invalid data.
      */
     private void setAlgorithmId(Object val) throws CertificateException {
@@ -852,7 +854,7 @@
     /**
      * Set the issuer name of the certificate.
      *
-     * @params val the Object class value for the issuer
+     * @param val the Object class value for the issuer
      * @exception CertificateException on invalid data.
      */
     private void setIssuer(Object val) throws CertificateException {
@@ -866,7 +868,7 @@
     /**
      * Set the validity interval of the certificate.
      *
-     * @params val the Object class value for the CertificateValidity
+     * @param val the Object class value for the CertificateValidity
      * @exception CertificateException on invalid data.
      */
     private void setValidity(Object val) throws CertificateException {
@@ -880,7 +882,7 @@
     /**
      * Set the subject name of the certificate.
      *
-     * @params val the Object class value for the Subject
+     * @param val the Object class value for the Subject
      * @exception CertificateException on invalid data.
      */
     private void setSubject(Object val) throws CertificateException {
@@ -894,7 +896,7 @@
     /**
      * Set the public key in the certificate.
      *
-     * @params val the Object class value for the PublicKey
+     * @param val the Object class value for the PublicKey
      * @exception CertificateException on invalid data.
      */
     private void setKey(Object val) throws CertificateException {
@@ -908,7 +910,7 @@
     /**
      * Set the Issuer Unique Identity in the certificate.
      *
-     * @params val the Object class value for the IssuerUniqueId
+     * @param val the Object class value for the IssuerUniqueId
      * @exception CertificateException
      */
     private void setIssuerUniqueId(Object val) throws CertificateException {
@@ -925,7 +927,7 @@
     /**
      * Set the Subject Unique Identity in the certificate.
      *
-     * @params val the Object class value for the SubjectUniqueId
+     * @param val the Object class value for the SubjectUniqueId
      * @exception CertificateException
      */
     private void setSubjectUniqueId(Object val) throws CertificateException {
@@ -942,7 +944,7 @@
     /**
      * Set the extensions in the certificate.
      *
-     * @params val the Object class value for the Extensions
+     * @param val the Object class value for the Extensions
      * @exception CertificateException
      */
     private void setExtensions(Object val) throws CertificateException {
--- a/jdk/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java	Wed Jul 05 20:32:21 2017 +0200
@@ -152,9 +152,6 @@
         String GST[] = new String[] {"Gulf Standard Time", "GST",
                                      "Gulf Daylight Time", "GDT",
                                      "Gulf Time", "GT"};
-        String HAST[] = new String[] {"Hawaii-Aleutian Standard Time", "HAST",
-                                      "Hawaii-Aleutian Daylight Time", "HADT",
-                                      "Hawaii-Aleutian Time", "HAT"};
         String HKT[] =  new String[] {"Hong Kong Time", "HKT",
                                       "Hong Kong Summer Time", "HKST",
                                       "Hong Kong Time", "HKT"};
@@ -371,7 +368,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -393,7 +390,7 @@
                                                "Paraguay Summer Time", "PYST",
                                                "Paraguay Time", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/java.base/share/native/include/jvm.h	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/native/include/jvm.h	Wed Jul 05 20:32:21 2017 +0200
@@ -395,6 +395,9 @@
 JNIEXPORT jclass JNICALL
 JVM_GetDeclaringClass(JNIEnv *env, jclass ofClass);
 
+JNIEXPORT jstring JNICALL
+JVM_GetSimpleBinaryName(JNIEnv *env, jclass ofClass);
+
 /* Generics support (JDK 1.5) */
 JNIEXPORT jstring JNICALL
 JVM_GetClassSignature(JNIEnv *env, jclass cls);
--- a/jdk/src/java.base/share/native/libjava/Class.c	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.base/share/native/libjava/Class.c	Wed Jul 05 20:32:21 2017 +0200
@@ -67,6 +67,7 @@
     {"getProtectionDomain0", "()" PD,       (void *)&JVM_GetProtectionDomain},
     {"getDeclaredClasses0",  "()[" CLS,      (void *)&JVM_GetDeclaredClasses},
     {"getDeclaringClass0",   "()" CLS,      (void *)&JVM_GetDeclaringClass},
+    {"getSimpleBinaryName0", "()" STR,      (void *)&JVM_GetSimpleBinaryName},
     {"getGenericSignature0", "()" STR,      (void *)&JVM_GetClassSignature},
     {"getRawAnnotations",      "()" BA,        (void *)&JVM_GetClassAnnotations},
     {"getConstantPool",     "()" CPL,       (void *)&JVM_GetClassConstantPool},
--- a/jdk/src/java.management/share/classes/META-INF/services/sun.management.spi.PlatformMBeanProvider	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-#
-# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.  Oracle designates this
-# particular file as subject to the "Classpath" exception as provided
-# by Oracle in the LICENSE file that accompanied this code.
-#
-# This code is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# version 2 for more details (a copy is included in the LICENSE file that
-# accompanied this code).
-#
-# You should have received a copy of the GNU General Public License version
-# 2 along with this work; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
-# or visit www.oracle.com if you need additional information or have any
-# questions.
-#
-com.sun.management.internal.PlatformMBeanProviderImpl
--- a/jdk/src/java.management/share/classes/com/sun/management/DiagnosticCommandMBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,218 +0,0 @@
-/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import java.lang.management.PlatformManagedObject;
-import javax.management.DynamicMBean;
-
-/**
- * Management interface for the diagnostic commands for the HotSpot Virtual Machine.
- *
- * <p>The {@code DiagnosticCommandMBean} is registered to the
- * {@linkplain java.lang.management.ManagementFactory#getPlatformMBeanServer
- * platform MBeanServer} as are other platform MBeans.
- *
- * <p>The {@link javax.management.ObjectName ObjectName} for uniquely identifying
- * the diagnostic MBean within an MBeanServer is:
- * <blockquote>
- *    {@code com.sun.management:type=DiagnosticCommand}
- * </blockquote>
- *
- * <p>This MBean is a {@link javax.management.DynamicMBean DynamicMBean}
- * and also a {@link javax.management.NotificationEmitter}.
- * The {@code DiagnosticCommandMBean} is generated at runtime and is subject to
- * modifications during the lifetime of the Java virtual machine.
- *
- * A <em>diagnostic command</em> is represented as an operation of
- * the {@code DiagnosticCommandMBean} interface. Each diagnostic command has:
- * <ul>
- * <li>the diagnostic command name which is the name being referenced in
- *     the HotSpot Virtual Machine</li>
- * <li>the MBean operation name which is the
- *     {@linkplain javax.management.MBeanOperationInfo#getName() name}
- *     generated for the diagnostic command operation invocation.
- *     The MBean operation name is implementation dependent</li>
- * </ul>
- *
- * The recommended way to transform a diagnostic command name into a MBean
- * operation name is as follows:
- * <ul>
- * <li>All characters from the first one to the first dot are set to be
- *      lower-case characters</li>
- * <li>Every dot or underline character is removed and the following
- *   character is set to be an upper-case character</li>
- * <li>All other characters are copied without modification</li>
- * </ul>
- *
- * <p>The diagnostic command name is always provided with the meta-data on the
- * operation in a field named {@code dcmd.name} (see below).
- *
- * <p>A diagnostic command may or may not support options or arguments.
- * All the operations return {@code String} and either take
- * no parameter for operations that do not support any option or argument,
- * or take a {@code String[]} parameter for operations that support at least
- * one option or argument.
- * Each option or argument must be stored in a single String.
- * Options or arguments split across several String instances are not supported.
- *
- * <p>The distinction between options and arguments: options are identified by
- * the option name while arguments are identified by their position in the
- * command line. Options and arguments are processed in the order of the array
- * passed to the invocation method.
- *
- * <p>Like any operation of a dynamic MBean, each of these operations is
- * described by {@link javax.management.MBeanOperationInfo MBeanOperationInfo}
- * instance. Here's the values returned by this object:
- * <ul>
- *  <li>{@link javax.management.MBeanOperationInfo#getName() getName()}
- *      returns the operation name generated from the diagnostic command name</li>
- *  <li>{@link javax.management.MBeanOperationInfo#getDescription() getDescription()}
- *      returns the diagnostic command description
- *      (the same as the one return in the 'help' command)</li>
- *  <li>{@link javax.management.MBeanOperationInfo#getImpact() getImpact()}
- *      returns {@code ACTION_INFO}</li>
- *  <li>{@link javax.management.MBeanOperationInfo#getReturnType() getReturnType()}
- *      returns {@code java.lang.String}</li>
- *  <li>{@link javax.management.MBeanOperationInfo#getDescriptor() getDescriptor()}
- *      returns a Descriptor instance (see below)</li>
- * </ul>
- *
- * <p>The {@link javax.management.Descriptor Descriptor}
- * is a collection of fields containing additional
- * meta-data for a JMX element. A field is a name and an associated value.
- * The additional meta-data provided for an operation associated with a
- * diagnostic command are described in the table below:
- *
- * <table border="1" cellpadding="5">
- *   <tr>
- *     <th>Name</th><th>Type</th><th>Description</th>
- *   </tr>
- *   <tr>
- *     <td>dcmd.name</td><td>String</td>
- *     <td>The original diagnostic command name (not the operation name)</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.description</td><td>String</td>
- *     <td>The diagnostic command description</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.help</td><td>String</td>
- *     <td>The full help message for this diagnostic command (same output as
- *          the one produced by the 'help' command)</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.vmImpact</td><td>String</td>
- *     <td>The impact of the diagnostic command,
- *      this value is the same as the one printed in the 'impact'
- *      section of the help message of the diagnostic command, and it
- *      is different from the getImpact() of the MBeanOperationInfo</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.enabled</td><td>boolean</td>
- *     <td>True if the diagnostic command is enabled, false otherwise</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.permissionClass</td><td>String</td>
- *     <td>Some diagnostic command might require a specific permission to be
- *          executed, in addition to the MBeanPermission to invoke their
- *          associated MBean operation. This field returns the fully qualified
- *          name of the permission class or null if no permission is required
- *   </td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.permissionName</td><td>String</td>
- *     <td>The fist argument of the permission required to execute this
- *          diagnostic command or null if no permission is required</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.permissionAction</td><td>String</td>
- *     <td>The second argument of the permission required to execute this
- *          diagnostic command or null if the permission constructor has only
- *          one argument (like the ManagementPermission) or if no permission
- *          is required</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arguments</td><td>Descriptor</td>
- *     <td>A Descriptor instance containing the descriptions of options and
- *          arguments supported by the diagnostic command (see below)</td>
- *   </tr>
- * </table>
- *
- * <p>The description of parameters (options or arguments) of a diagnostic
- * command is provided within a Descriptor instance. In this Descriptor,
- * each field name is a parameter name, and each field value is itself
- * a Descriptor instance. The fields provided in this second Descriptor
- * instance are described in the table below:
- *
- * <table border="1" cellpadding="5">
- *   <tr>
- *     <th>Name</th><th>Type</th><th>Description</th>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.name</td><td>String</td>
- *     <td>The name of the parameter</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.type</td><td>String</td>
- *     <td>The type of the parameter. The returned String is the name of a type
- *          recognized by the diagnostic command parser. These types are not
- *          Java types and are implementation dependent.
- *          </td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.description</td><td>String</td>
- *     <td>The parameter description</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.isMandatory</td><td>boolean</td>
- *     <td>True if the parameter is mandatory, false otherwise</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.isOption</td><td>boolean</td>
- *     <td>True if the parameter is an option, false if it is an argument</td>
- *   </tr>
- *   <tr>
- *     <td>dcmd.arg.isMultiple</td><td>boolean</td>
- *     <td>True if the parameter can be specified several times, false
- *          otherwise</td>
- *   </tr>
- * </table>
- *
- * <p>When the set of diagnostic commands currently supported by the Java
- * Virtual Machine is modified, the {@code DiagnosticCommandMBean} emits
- * a {@link javax.management.Notification} with a
- * {@linkplain javax.management.Notification#getType() type} of
- * <a href="{@docRoot}/../../../../api/javax/management/MBeanInfo.html#info-changed">
- * {@code "jmx.mbean.info.changed"}</a> and a
- * {@linkplain javax.management.Notification#getUserData() userData} that
- * is the new {@code MBeanInfo}.
- *
- * @since 1.8
- */
-public interface DiagnosticCommandMBean extends DynamicMBean
-{
-
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,238 +0,0 @@
-/*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import javax.management.Notification;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataView;
-import javax.management.openmbean.CompositeType;
-import java.util.Collection;
-import java.util.Collections;
-import sun.management.GarbageCollectionNotifInfoCompositeData;
-
-/**
- * The information about a garbage collection
- *
- * <p>
- * A garbage collection notification is emitted by {@link GarbageCollectorMXBean}
- * when the Java virtual machine completes a garbage collection action
- * The notification emitted will contain the garbage collection notification
- * information about the status of the memory:
- * <ul>
- *   <li>The name of the garbage collector used to perform the collection.</li>
- *   <li>The action performed by the garbage collector.</li>
- *   <li>The cause of the garbage collection action.</li>
- *   <li>A {@link GcInfo} object containing some statistics about the GC cycle
-          (start time, end time) and the memory usage before and after
-          the GC cycle.</li>
- * </ul>
- *
- * <p>
- * A {@link CompositeData CompositeData} representing
- * the {@code GarbageCollectionNotificationInfo} object
- * is stored in the
- * {@linkplain javax.management.Notification#setUserData userdata}
- * of a {@linkplain javax.management.Notification notification}.
- * The {@link #from from} method is provided to convert from
- * a {@code CompositeData} to a {@code GarbageCollectionNotificationInfo}
- * object. For example:
- *
- * <blockquote><pre>
- *      Notification notif;
- *
- *      // receive the notification emitted by a GarbageCollectorMXBean and set to notif
- *      ...
- *
- *      String notifType = notif.getType();
- *      if (notifType.equals(GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION)) {
- *          // retrieve the garbage collection notification information
- *          CompositeData cd = (CompositeData) notif.getUserData();
- *          GarbageCollectionNotificationInfo info = GarbageCollectionNotificationInfo.from(cd);
- *          ....
- *      }
- * </pre></blockquote>
- *
- * <p>
- * The type of the notification emitted by a {@code GarbageCollectorMXBean} is:
- * <ul>
- *   <li>A {@linkplain #GARBAGE_COLLECTION_NOTIFICATION garbage collection notification}.
- *       <br>Used by every notification emitted by the garbage collector, the details about
- *             the notification are provided in the {@linkplain #getGcAction action} String
- *       </li>
- * </ul>
- **/
-
-@jdk.Exported
-public class GarbageCollectionNotificationInfo implements  CompositeDataView {
-
-    private final String gcName;
-    private final String gcAction;
-    private final String gcCause;
-    private final GcInfo gcInfo;
-    private final CompositeData cdata;
-
-    /**
-     * Notification type denoting that
-     * the Java virtual machine has completed a garbage collection cycle.
-     * This notification is emitted by a {@link GarbageCollectorMXBean}.
-     * The value of this notification type is
-     * {@code com.sun.management.gc.notification}.
-     */
-    public static final String GARBAGE_COLLECTION_NOTIFICATION =
-        "com.sun.management.gc.notification";
-
-    /**
-     * Constructs a {@code GarbageCollectionNotificationInfo} object.
-     *
-     * @param gcName The name of the garbage collector used to perform the collection
-     * @param gcAction The name of the action performed by the garbage collector
-     * @param gcCause The cause of the garbage collection action
-     * @param gcInfo  a GcInfo object providing statistics about the GC cycle
-     */
-    public GarbageCollectionNotificationInfo(String gcName,
-                                             String gcAction,
-                                             String gcCause,
-                                             GcInfo gcInfo)  {
-        if (gcName == null) {
-            throw new NullPointerException("Null gcName");
-        }
-        if (gcAction == null) {
-            throw new NullPointerException("Null gcAction");
-        }
-        if (gcCause == null) {
-            throw new NullPointerException("Null gcCause");
-        }
-        this.gcName = gcName;
-        this.gcAction = gcAction;
-        this.gcCause = gcCause;
-        this.gcInfo = gcInfo;
-        this.cdata = new GarbageCollectionNotifInfoCompositeData(this);
-    }
-
-    GarbageCollectionNotificationInfo(CompositeData cd) {
-        GarbageCollectionNotifInfoCompositeData.validateCompositeData(cd);
-
-        this.gcName = GarbageCollectionNotifInfoCompositeData.getGcName(cd);
-        this.gcAction = GarbageCollectionNotifInfoCompositeData.getGcAction(cd);
-        this.gcCause = GarbageCollectionNotifInfoCompositeData.getGcCause(cd);
-        this.gcInfo = GarbageCollectionNotifInfoCompositeData.getGcInfo(cd);
-        this.cdata = cd;
-    }
-
-    /**
-     * Returns the name of the garbage collector used to perform the collection
-     *
-     * @return the name of the garbage collector used to perform the collection
-     */
-    public String getGcName() {
-        return gcName;
-    }
-
-    /**
-     * Returns the action performed by the garbage collector
-     *
-     * @return the action performed by the garbage collector
-     */
-    public String getGcAction() {
-        return gcAction;
-    }
-
-    /**
-     * Returns the cause of the garbage collection
-     *
-     * @return the cause of the garbage collection
-     */
-    public String getGcCause() {
-        return gcCause;
-    }
-
-    /**
-     * Returns the GC information related to the last garbage collection
-     *
-     * @return the GC information related to the
-     * last garbage collection
-     */
-    public GcInfo getGcInfo() {
-        return gcInfo;
-    }
-
-    /**
-     * Returns a {@code GarbageCollectionNotificationInfo} object represented by the
-     * given {@code CompositeData}.
-     * The given {@code CompositeData} must contain
-     * the following attributes:
-     * <blockquote>
-     * <table border>
-     * <tr>
-     *   <th align=left>Attribute Name</th>
-     *   <th align=left>Type</th>
-     * </tr>
-     * <tr>
-     *   <td>gcName</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>gcAction</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>gcCause</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>gcInfo</td>
-     *   <td>{@code javax.management.openmbean.CompositeData}</td>
-     * </tr>
-     * </table>
-     * </blockquote>
-     *
-     * @param cd {@code CompositeData} representing a
-     *           {@code GarbageCollectionNotificationInfo}
-     *
-     * @throws IllegalArgumentException if {@code cd} does not
-     *   represent a {@code GarbaageCollectionNotificationInfo} object.
-     *
-     * @return a {@code GarbageCollectionNotificationInfo} object represented
-     *         by {@code cd} if {@code cd} is not {@code null};
-     *         {@code null} otherwise.
-     */
-    public static GarbageCollectionNotificationInfo from(CompositeData cd) {
-        if (cd == null) {
-            return null;
-        }
-
-        if (cd instanceof GarbageCollectionNotifInfoCompositeData) {
-            return ((GarbageCollectionNotifInfoCompositeData) cd).getGarbageCollectionNotifInfo();
-        } else {
-            return new GarbageCollectionNotificationInfo(cd);
-        }
-    }
-
-    public CompositeData toCompositeData(CompositeType ct) {
-        return cdata;
-    }
-
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/GarbageCollectorMXBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeType;
-
-/**
- * Platform-specific management interface for a garbage collector
- * which performs collections in cycles.
- *
- * <p> This platform extension is only available to the garbage
- * collection implementation that supports this extension.
- *
- * @author  Mandy Chung
- * @since   1.5
- */
-@jdk.Exported
-public interface GarbageCollectorMXBean
-    extends java.lang.management.GarbageCollectorMXBean {
-
-    /**
-     * Returns the GC information about the most recent GC.
-     * This method returns a {@link GcInfo}.
-     * If no GC information is available, <tt>null</tt> is returned.
-     * The collector-specific attributes, if any, can be obtained
-     * via the {@link CompositeData CompositeData} interface.
-     * <p>
-     * <b>MBeanServer access:</b>
-     * The mapped type of <tt>GcInfo</tt> is <tt>CompositeData</tt>
-     * with attributes specified in {@link GcInfo#from GcInfo}.
-     *
-     * @return a <tt>GcInfo</tt> object representing
-     * the most GC information; or <tt>null</tt> if no GC
-     * information available.
-     */
-    public GcInfo getLastGcInfo();
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/GcInfo.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,288 +0,0 @@
-/*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import java.lang.management.MemoryUsage;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataView;
-import javax.management.openmbean.CompositeType;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.List;
-import sun.management.GcInfoCompositeData;
-import sun.management.GcInfoBuilder;
-
-/**
- * Garbage collection information.  It contains the following
- * information for one garbage collection as well as GC-specific
- * attributes:
- * <blockquote>
- * <ul>
- *   <li>Start time</li>
- *   <li>End time</li>
- *   <li>Duration</li>
- *   <li>Memory usage before the collection starts</li>
- *   <li>Memory usage after the collection ends</li>
- * </ul>
- * </blockquote>
- *
- * <p>
- * {@code GcInfo} is a {@link CompositeData CompositeData}
- * The GC-specific attributes can be obtained via the CompositeData
- * interface.  This is a historical relic, and other classes should
- * not copy this pattern.  Use {@link CompositeDataView} instead.
- *
- * <h4>MXBean Mapping</h4>
- * {@code GcInfo} is mapped to a {@link CompositeData CompositeData}
- * with attributes as specified in the {@link #from from} method.
- *
- * @author  Mandy Chung
- * @since   1.5
- */
-@jdk.Exported
-public class GcInfo implements CompositeData, CompositeDataView {
-    private final long index;
-    private final long startTime;
-    private final long endTime;
-    private final Map<String, MemoryUsage> usageBeforeGc;
-    private final Map<String, MemoryUsage> usageAfterGc;
-    private final Object[] extAttributes;
-    private final CompositeData cdata;
-    private final GcInfoBuilder builder;
-
-    private GcInfo(GcInfoBuilder builder,
-                   long index, long startTime, long endTime,
-                   MemoryUsage[] muBeforeGc,
-                   MemoryUsage[] muAfterGc,
-                   Object[] extAttributes) {
-        this.builder       = builder;
-        this.index         = index;
-        this.startTime     = startTime;
-        this.endTime       = endTime;
-        String[] poolNames = builder.getPoolNames();
-        this.usageBeforeGc = new HashMap<String, MemoryUsage>(poolNames.length);
-        this.usageAfterGc = new HashMap<String, MemoryUsage>(poolNames.length);
-        for (int i = 0; i < poolNames.length; i++) {
-            this.usageBeforeGc.put(poolNames[i],  muBeforeGc[i]);
-            this.usageAfterGc.put(poolNames[i],  muAfterGc[i]);
-        }
-        this.extAttributes = extAttributes;
-        this.cdata = new GcInfoCompositeData(this, builder, extAttributes);
-    }
-
-    private GcInfo(CompositeData cd) {
-        GcInfoCompositeData.validateCompositeData(cd);
-
-        this.index         = GcInfoCompositeData.getId(cd);
-        this.startTime     = GcInfoCompositeData.getStartTime(cd);
-        this.endTime       = GcInfoCompositeData.getEndTime(cd);
-        this.usageBeforeGc = GcInfoCompositeData.getMemoryUsageBeforeGc(cd);
-        this.usageAfterGc  = GcInfoCompositeData.getMemoryUsageAfterGc(cd);
-        this.extAttributes = null;
-        this.builder       = null;
-        this.cdata         = cd;
-    }
-
-    /**
-     * Returns the identifier of this garbage collection which is
-     * the number of collections that this collector has done.
-     *
-     * @return the identifier of this garbage collection which is
-     * the number of collections that this collector has done.
-     */
-    public long getId() {
-        return index;
-    }
-
-    /**
-     * Returns the start time of this GC in milliseconds
-     * since the Java virtual machine was started.
-     *
-     * @return the start time of this GC.
-     */
-    public long getStartTime() {
-        return startTime;
-    }
-
-    /**
-     * Returns the end time of this GC in milliseconds
-     * since the Java virtual machine was started.
-     *
-     * @return the end time of this GC.
-     */
-    public long getEndTime() {
-        return endTime;
-    }
-
-    /**
-     * Returns the elapsed time of this GC in milliseconds.
-     *
-     * @return the elapsed time of this GC in milliseconds.
-     */
-    public long getDuration() {
-        return endTime - startTime;
-    }
-
-    /**
-     * Returns the memory usage of all memory pools
-     * at the beginning of this GC.
-     * This method returns
-     * a {@code Map} of the name of a memory pool
-     * to the memory usage of the corresponding
-     * memory pool before GC starts.
-     *
-     * @return a {@code Map} of memory pool names to the memory
-     * usage of a memory pool before GC starts.
-     */
-    public Map<String, MemoryUsage> getMemoryUsageBeforeGc() {
-        return Collections.unmodifiableMap(usageBeforeGc);
-    }
-
-    /**
-     * Returns the memory usage of all memory pools
-     * at the end of this GC.
-     * This method returns
-     * a {@code Map} of the name of a memory pool
-     * to the memory usage of the corresponding
-     * memory pool when GC finishes.
-     *
-     * @return a {@code Map} of memory pool names to the memory
-     * usage of a memory pool when GC finishes.
-     */
-    public Map<String, MemoryUsage> getMemoryUsageAfterGc() {
-        return Collections.unmodifiableMap(usageAfterGc);
-    }
-
-   /**
-     * Returns a {@code GcInfo} object represented by the
-     * given {@code CompositeData}. The given
-     * {@code CompositeData} must contain
-     * all the following attributes:
-     *
-     * <blockquote>
-     * <table border>
-     * <tr>
-     *   <th align=left>Attribute Name</th>
-     *   <th align=left>Type</th>
-     * </tr>
-     * <tr>
-     *   <td>index</td>
-     *   <td>{@code java.lang.Long}</td>
-     * </tr>
-     * <tr>
-     *   <td>startTime</td>
-     *   <td>{@code java.lang.Long}</td>
-     * </tr>
-     * <tr>
-     *   <td>endTime</td>
-     *   <td>{@code java.lang.Long}</td>
-     * </tr>
-     * <tr>
-     *   <td>memoryUsageBeforeGc</td>
-     *   <td>{@code javax.management.openmbean.TabularData}</td>
-     * </tr>
-     * <tr>
-     *   <td>memoryUsageAfterGc</td>
-     *   <td>{@code javax.management.openmbean.TabularData}</td>
-     * </tr>
-     * </table>
-     * </blockquote>
-     *
-     * @throws IllegalArgumentException if {@code cd} does not
-     *   represent a {@code GcInfo} object with the attributes
-     *   described above.
-     *
-     * @return a {@code GcInfo} object represented by {@code cd}
-     * if {@code cd} is not {@code null}; {@code null} otherwise.
-     */
-    public static GcInfo from(CompositeData cd) {
-        if (cd == null) {
-            return null;
-        }
-
-        if (cd instanceof GcInfoCompositeData) {
-            return ((GcInfoCompositeData) cd).getGcInfo();
-        } else {
-            return new GcInfo(cd);
-        }
-
-    }
-
-    // Implementation of the CompositeData interface
-    public boolean containsKey(String key) {
-        return cdata.containsKey(key);
-    }
-
-    public boolean containsValue(Object value) {
-        return cdata.containsValue(value);
-    }
-
-    public boolean equals(Object obj) {
-        return cdata.equals(obj);
-    }
-
-    public Object get(String key) {
-        return cdata.get(key);
-    }
-
-    public Object[] getAll(String[] keys) {
-        return cdata.getAll(keys);
-    }
-
-    public CompositeType getCompositeType() {
-        return cdata.getCompositeType();
-    }
-
-    public int hashCode() {
-        return cdata.hashCode();
-    }
-
-    public String toString() {
-        return cdata.toString();
-    }
-
-    public Collection<?> values() {
-        return cdata.values();
-    }
-
-    /**
-     * Return the {@code CompositeData} representation of this
-     * {@code GcInfo}, including any GC-specific attributes.  The
-     * returned value will have at least all the attributes described
-     * in the {@link #from(CompositeData) from} method, plus optionally
-     * other attributes.
-     *
-     * @param ct the {@code CompositeType} that the caller expects.
-     * This parameter is ignored and can be null.
-     *
-     * @return the {@code CompositeData} representation.
-     */
-    public CompositeData toCompositeData(CompositeType ct) {
-        return cdata;
-    }
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import java.lang.management.PlatformManagedObject;
-
-/**
- * Diagnostic management interface for the HotSpot Virtual Machine.
- *
- * <p>The diagnostic MBean is registered to the platform MBeanServer
- * as are other platform MBeans.
- *
- * <p>The <tt>ObjectName</tt> for uniquely identifying the diagnostic
- * MXBean within an MBeanServer is:
- * <blockquote>
- *    <tt>com.sun.management:type=HotSpotDiagnostic</tt>
- * </blockquote>
-.*
- * It can be obtained by calling the
- * {@link PlatformManagedObject#getObjectName} method.
- *
- * All methods throw a {@code NullPointerException} if any input argument is
- * {@code null} unless it's stated otherwise.
- *
- * @see java.lang.management.ManagementFactory#getPlatformMXBeans(Class)
- */
-@jdk.Exported
-public interface HotSpotDiagnosticMXBean extends PlatformManagedObject {
-    /**
-     * Dumps the heap to the <tt>outputFile</tt> file in the same
-     * format as the hprof heap dump.
-     * <p>
-     * If this method is called remotely from another process,
-     * the heap dump output is written to a file named <tt>outputFile</tt>
-     * on the machine where the target VM is running.  If outputFile is
-     * a relative path, it is relative to the working directory where
-     * the target VM was started.
-     *
-     * @param  outputFile the system-dependent filename
-     * @param  live if <tt>true</tt> dump only <i>live</i> objects
-     *         i.e. objects that are reachable from others
-     * @throws IOException if the <tt>outputFile</tt>
-     *                     cannot be created, opened, or written to.
-     * @throws UnsupportedOperationException if this operation is not supported.
-     * @throws NullPointerException if <tt>outputFile</tt> is <tt>null</tt>.
-     * @throws SecurityException
-     *         If a security manager exists and its {@link
-     *         java.lang.SecurityManager#checkWrite(java.lang.String)}
-     *         method denies write access to the named file
-     *         or the caller does not have ManagmentPermission("control").
-     */
-    public void dumpHeap(String outputFile, boolean live) throws java.io.IOException;
-
-    /**
-     * Returns a list of <tt>VMOption</tt> objects for all diagnostic options.
-     * A diagnostic option is a {@link VMOption#isWriteable writeable}
-     * VM option that can be set dynamically mainly for troubleshooting
-     * and diagnosis.
-     *
-     * @return a list of <tt>VMOption</tt> objects for all diagnostic options.
-     */
-    public java.util.List<VMOption> getDiagnosticOptions();
-
-    /**
-     * Returns a <tt>VMOption</tt> object for a VM option of the given
-     * name.
-     *
-     * @return a <tt>VMOption</tt> object for a VM option of the given name.
-     * @throws NullPointerException if name is <tt>null</tt>.
-     * @throws IllegalArgumentException if a VM option of the given name
-     *                                     does not exist.
-     */
-    public VMOption getVMOption(String name);
-
-    /**
-     * Sets a VM option of the given name to the specified value.
-     * The new value will be reflected in a new <tt>VMOption</tt>
-     * object returned by the {@link #getVMOption} method or
-     * the {@link #getDiagnosticOptions} method.  This method does
-     * not change the value of this <tt>VMOption</tt> object.
-     *
-     * @param name Name of a VM option
-     * @param value New value of the VM option to be set
-     *
-     * @throws IllegalArgumentException if the VM option of the given name
-     *                                     does not exist.
-     * @throws IllegalArgumentException if the new value is invalid.
-     * @throws IllegalArgumentException if the VM option is not writable.
-     * @throws NullPointerException if name or value is <tt>null</tt>.
-     *
-     * @throws  java.lang.SecurityException
-     *     if a security manager exists and the caller does not have
-     *     ManagementPermission("control").
-     */
-    public void setVMOption(String name, String value);
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/OperatingSystemMXBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-/**
- * Platform-specific management interface for the operating system
- * on which the Java virtual machine is running.
- *
- * <p>
- * The <tt>OperatingSystemMXBean</tt> object returned by
- * {@link java.lang.management.ManagementFactory#getOperatingSystemMXBean()}
- * is an instance of the implementation class of this interface
- * or {@link UnixOperatingSystemMXBean} interface depending on
- * its underlying operating system.
- *
- * @author  Mandy Chung
- * @since   1.5
- */
-@jdk.Exported
-public interface OperatingSystemMXBean extends
-    java.lang.management.OperatingSystemMXBean {
-
-    /**
-     * Returns the amount of virtual memory that is guaranteed to
-     * be available to the running process in bytes,
-     * or <tt>-1</tt> if this operation is not supported.
-     *
-     * @return the amount of virtual memory that is guaranteed to
-     * be available to the running process in bytes,
-     * or <tt>-1</tt> if this operation is not supported.
-     */
-    public long getCommittedVirtualMemorySize();
-
-    /**
-     * Returns the total amount of swap space in bytes.
-     *
-     * @return the total amount of swap space in bytes.
-     */
-    public long getTotalSwapSpaceSize();
-
-    /**
-     * Returns the amount of free swap space in bytes.
-     *
-     * @return the amount of free swap space in bytes.
-     */
-    public long getFreeSwapSpaceSize();
-
-    /**
-     * Returns the CPU time used by the process on which the Java
-     * virtual machine is running in nanoseconds.  The returned value
-     * is of nanoseconds precision but not necessarily nanoseconds
-     * accuracy.  This method returns <tt>-1</tt> if the
-     * the platform does not support this operation.
-     *
-     * @return the CPU time used by the process in nanoseconds,
-     * or <tt>-1</tt> if this operation is not supported.
-     */
-    public long getProcessCpuTime();
-
-    /**
-     * Returns the amount of free physical memory in bytes.
-     *
-     * @return the amount of free physical memory in bytes.
-     */
-    public long getFreePhysicalMemorySize();
-
-    /**
-     * Returns the total amount of physical memory in bytes.
-     *
-     * @return the total amount of physical memory in  bytes.
-     */
-    public long getTotalPhysicalMemorySize();
-
-    /**
-     * Returns the "recent cpu usage" for the whole system. This value is a
-     * double in the [0.0,1.0] interval. A value of 0.0 means that all CPUs
-     * were idle during the recent period of time observed, while a value
-     * of 1.0 means that all CPUs were actively running 100% of the time
-     * during the recent period being observed. All values betweens 0.0 and
-     * 1.0 are possible depending of the activities going on in the system.
-     * If the system recent cpu usage is not available, the method returns a
-     * negative value.
-     *
-     * @return the "recent cpu usage" for the whole system; a negative
-     * value if not available.
-     * @since   1.7
-     */
-    public double getSystemCpuLoad();
-
-    /**
-     * Returns the "recent cpu usage" for the Java Virtual Machine process.
-     * This value is a double in the [0.0,1.0] interval. A value of 0.0 means
-     * that none of the CPUs were running threads from the JVM process during
-     * the recent period of time observed, while a value of 1.0 means that all
-     * CPUs were actively running threads from the JVM 100% of the time
-     * during the recent period being observed. Threads from the JVM include
-     * the application threads as well as the JVM internal threads. All values
-     * betweens 0.0 and 1.0 are possible depending of the activities going on
-     * in the JVM process and the whole system. If the Java Virtual Machine
-     * recent CPU usage is not available, the method returns a negative value.
-     *
-     * @return the "recent cpu usage" for the Java Virtual Machine process;
-     * a negative value if not available.
-     * @since   1.7
-     */
-    public double getProcessCpuLoad();
-
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/ThreadMXBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,222 +0,0 @@
-/*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import java.util.Map;
-
-/**
- * Platform-specific management interface for the thread system
- * of the Java virtual machine.
- * <p>
- * This platform extension is only available to a thread
- * implementation that supports this extension.
- *
- * @author  Paul Hohensee
- * @since   6u25
- */
-
-@jdk.Exported
-public interface ThreadMXBean extends java.lang.management.ThreadMXBean {
-    /**
-     * Returns the total CPU time for each thread whose ID is
-     * in the input array {@code ids} in nanoseconds.
-     * The returned values are of nanoseconds precision but
-     * not necessarily nanoseconds accuracy.
-     * <p>
-     * This method is equivalent to calling the
-     * {@link ThreadMXBean#getThreadCpuTime(long)}
-     * method for each thread ID in the input array {@code ids} and setting the
-     * returned value in the corresponding element of the returned array.
-     *
-     * @param ids an array of thread IDs.
-     * @return an array of long values, each of which is the amount of CPU
-     * time the thread whose ID is in the corresponding element of the input
-     * array of IDs has used,
-     * if the thread of a specified ID exists, the thread is alive,
-     * and CPU time measurement is enabled;
-     * {@code -1} otherwise.
-     *
-     * @throws NullPointerException if {@code ids} is {@code null}
-     * @throws IllegalArgumentException if any element in the input array
-     *         {@code ids} is {@code <=} {@code 0}.
-     * @throws java.lang.UnsupportedOperationException if the Java
-     *         virtual machine implementation does not support CPU time
-     *         measurement.
-     *
-     * @see ThreadMXBean#getThreadCpuTime(long)
-     * @see #getThreadUserTime
-     * @see ThreadMXBean#isThreadCpuTimeSupported
-     * @see ThreadMXBean#isThreadCpuTimeEnabled
-     * @see ThreadMXBean#setThreadCpuTimeEnabled
-     */
-    public long[] getThreadCpuTime(long[] ids);
-
-    /**
-     * Returns the CPU time that each thread whose ID is in the input array
-     * {@code ids} has executed in user mode in nanoseconds.
-     * The returned values are of nanoseconds precision but
-     * not necessarily nanoseconds accuracy.
-     * <p>
-     * This method is equivalent to calling the
-     * {@link ThreadMXBean#getThreadUserTime(long)}
-     * method for each thread ID in the input array {@code ids} and setting the
-     * returned value in the corresponding element of the returned array.
-     *
-     * @param ids an array of thread IDs.
-     * @return an array of long values, each of which is the amount of user
-     * mode CPU time the thread whose ID is in the corresponding element of
-     * the input array of IDs has used,
-     * if the thread of a specified ID exists, the thread is alive,
-     * and CPU time measurement is enabled;
-     * {@code -1} otherwise.
-     *
-     * @throws NullPointerException if {@code ids} is {@code null}
-     * @throws IllegalArgumentException if any element in the input array
-     *         {@code ids} is {@code <=} {@code 0}.
-     * @throws java.lang.UnsupportedOperationException if the Java
-     *         virtual machine implementation does not support CPU time
-     *         measurement.
-     *
-     * @see ThreadMXBean#getThreadUserTime(long)
-     * @see #getThreadCpuTime
-     * @see ThreadMXBean#isThreadCpuTimeSupported
-     * @see ThreadMXBean#isThreadCpuTimeEnabled
-     * @see ThreadMXBean#setThreadCpuTimeEnabled
-     */
-    public long[] getThreadUserTime(long[] ids);
-
-    /**
-     * Returns an approximation of the total amount of memory, in bytes,
-     * allocated in heap memory for the thread of the specified ID.
-     * The returned value is an approximation because some Java virtual machine
-     * implementations may use object allocation mechanisms that result in a
-     * delay between the time an object is allocated and the time its size is
-     * recorded.
-     * <p>
-     * If the thread of the specified ID is not alive or does not exist,
-     * this method returns {@code -1}. If thread memory allocation measurement
-     * is disabled, this method returns {@code -1}.
-     * A thread is alive if it has been started and has not yet died.
-     * <p>
-     * If thread memory allocation measurement is enabled after the thread has
-     * started, the Java virtual machine implementation may choose any time up
-     * to and including the time that the capability is enabled as the point
-     * where thread memory allocation measurement starts.
-     *
-     * @param id the thread ID of a thread
-     * @return an approximation of the total memory allocated, in bytes, in
-     * heap memory for a thread of the specified ID
-     * if the thread of the specified ID exists, the thread is alive,
-     * and thread memory allocation measurement is enabled;
-     * {@code -1} otherwise.
-     *
-     * @throws IllegalArgumentException if {@code id} {@code <=} {@code 0}.
-     * @throws java.lang.UnsupportedOperationException if the Java virtual
-     *         machine implementation does not support thread memory allocation
-     *         measurement.
-     *
-     * @see #isThreadAllocatedMemorySupported
-     * @see #isThreadAllocatedMemoryEnabled
-     * @see #setThreadAllocatedMemoryEnabled
-     */
-    public long getThreadAllocatedBytes(long id);
-
-    /**
-     * Returns an approximation of the total amount of memory, in bytes,
-     * allocated in heap memory for each thread whose ID is in the input
-     * array {@code ids}.
-     * The returned values are approximations because some Java virtual machine
-     * implementations may use object allocation mechanisms that result in a
-     * delay between the time an object is allocated and the time its size is
-     * recorded.
-     * <p>
-     * This method is equivalent to calling the
-     * {@link #getThreadAllocatedBytes(long)}
-     * method for each thread ID in the input array {@code ids} and setting the
-     * returned value in the corresponding element of the returned array.
-     *
-     * @param ids an array of thread IDs.
-     * @return an array of long values, each of which is an approximation of
-     * the total memory allocated, in bytes, in heap memory for the thread
-     * whose ID is in the corresponding element of the input array of IDs.
-     *
-     * @throws NullPointerException if {@code ids} is {@code null}
-     * @throws IllegalArgumentException if any element in the input array
-     *         {@code ids} is {@code <=} {@code 0}.
-     * @throws java.lang.UnsupportedOperationException if the Java virtual
-     *         machine implementation does not support thread memory allocation
-     *         measurement.
-     *
-     * @see #getThreadAllocatedBytes(long)
-     * @see #isThreadAllocatedMemorySupported
-     * @see #isThreadAllocatedMemoryEnabled
-     * @see #setThreadAllocatedMemoryEnabled
-     */
-    public long[] getThreadAllocatedBytes(long[] ids);
-
-    /**
-     * Tests if the Java virtual machine implementation supports thread memory
-     * allocation measurement.
-     *
-     * @return
-     *   {@code true}
-     *     if the Java virtual machine implementation supports thread memory
-     *     allocation measurement;
-     *   {@code false} otherwise.
-     */
-    public boolean isThreadAllocatedMemorySupported();
-
-    /**
-     * Tests if thread memory allocation measurement is enabled.
-     *
-     * @return {@code true} if thread memory allocation measurement is enabled;
-     *         {@code false} otherwise.
-     *
-     * @throws java.lang.UnsupportedOperationException if the Java virtual
-     *         machine does not support thread memory allocation measurement.
-     *
-     * @see #isThreadAllocatedMemorySupported
-     */
-    public boolean isThreadAllocatedMemoryEnabled();
-
-    /**
-     * Enables or disables thread memory allocation measurement.  The default
-     * is platform dependent.
-     *
-     * @param enable {@code true} to enable;
-     *               {@code false} to disable.
-     *
-     * @throws java.lang.UnsupportedOperationException if the Java virtual
-     *         machine does not support thread memory allocation measurement.
-     *
-     * @throws java.lang.SecurityException if a security manager
-     *         exists and the caller does not have
-     *         ManagementPermission("control").
-     *
-     * @see #isThreadAllocatedMemorySupported
-     */
-    public void setThreadAllocatedMemoryEnabled(boolean enable);
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-/**
- * Platform-specific management interface for the Unix
- * operating system on which the Java virtual machine is running.
- *
- * @author  Mandy Chung
- * @since   1.5
- */
-@jdk.Exported
-public interface UnixOperatingSystemMXBean extends
-    com.sun.management.OperatingSystemMXBean {
-
-    /**
-     * Returns the number of open file descriptors.
-     *
-     * @return the number of open file descriptors.
-     */
-    public long getOpenFileDescriptorCount();
-
-    /**
-     * Returns the maximum number of file descriptors.
-     *
-     * @return the maximum number of file descriptors.
-     */
-    public long getMaxFileDescriptorCount();
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/VMOption.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,245 +0,0 @@
-/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package com.sun.management;
-
-import sun.management.VMOptionCompositeData;
-import javax.management.openmbean.CompositeData;
-
-/**
- * Information about a VM option including its value and
- * where the value came from which is referred as its
- * {@link VMOption.Origin <i>origin</i>}.
- * <p>
- * Each VM option has a default value.  A VM option can
- * be set at VM creation time typically as a command line
- * argument to the launcher or an argument passed to the
- * VM created using the JNI invocation interface.
- * In addition, a VM option may be set via an environment
- * variable or a configuration file. A VM option can also
- * be set dynamically via a management interface after
- * the VM was started.
- *
- * A {@code VMOption} contains the value of a VM option
- * and the origin of that value at the time this {@code VMOption}
- * object was constructed.  The value of the VM option
- * may be changed after the {@code VMOption} object was constructed,
- *
- * @see <a href="{@docRoot}/../../../../technotes/guides/vm/index.html">
- *         Java Virtual Machine</a>
- * @author Mandy Chung
- * @since 1.6
- */
-@jdk.Exported
-public class VMOption {
-    private String name;
-    private String value;
-    private boolean writeable;
-    private Origin origin;
-
-    /**
-     * Origin of the value of a VM option.  It tells where the
-     * value of a VM option came from.
-     *
-     * @since 1.6
-     */
-    @jdk.Exported
-    public enum Origin {
-        /**
-         * The VM option has not been set and its value
-         * is the default value.
-         */
-        DEFAULT,
-        /**
-         * The VM option was set at VM creation time typically
-         * as a command line argument to the launcher or
-         * an argument passed to the VM created using the
-         * JNI invocation interface.
-         */
-        VM_CREATION,
-        /**
-         * The VM option was set via an environment variable.
-         */
-        ENVIRON_VAR,
-        /**
-         * The VM option was set via a configuration file.
-         */
-        CONFIG_FILE,
-        /**
-         * The VM option was set via the management interface after the VM
-         * was started.
-         */
-        MANAGEMENT,
-        /**
-         * The VM option was set via the VM ergonomic support.
-         */
-        ERGONOMIC,
-        /**
-         * The VM option was set using the attach framework.
-         * @since 1.9
-         */
-        ATTACH_ON_DEMAND,
-        /**
-         * The VM option was set via some other mechanism.
-         */
-        OTHER
-    }
-
-    /**
-     * Constructs a {@code VMOption}.
-     *
-     * @param name Name of a VM option.
-     * @param value Value of a VM option.
-     * @param writeable {@code true} if a VM option can be set dynamically,
-     *                  or {@code false} otherwise.
-     * @param origin where the value of a VM option came from.
-     *
-     * @throws NullPointerException if the name or value is {@code null}
-     */
-    public VMOption(String name, String value, boolean writeable, Origin origin) {
-        this.name = name;
-        this.value = value;
-        this.writeable = writeable;
-        this.origin = origin;
-    }
-
-    /**
-     * Constructs a {@code VMOption} object from a
-     * {@link CompositeData CompositeData}.
-     */
-    private VMOption(CompositeData cd) {
-        // validate the input composite data
-        VMOptionCompositeData.validateCompositeData(cd);
-
-        this.name = VMOptionCompositeData.getName(cd);
-        this.value = VMOptionCompositeData.getValue(cd);
-        this.writeable = VMOptionCompositeData.isWriteable(cd);
-        this.origin = VMOptionCompositeData.getOrigin(cd);
-    }
-
-    /**
-     * Returns the name of this VM option.
-     *
-     * @return the name of this VM option.
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * Returns the value of this VM option at the time when
-     * this {@code VMOption} was created. The value could have been changed.
-     *
-     * @return the value of the VM option at the time when
-     *         this {@code VMOption} was created.
-     */
-    public String getValue() {
-        return value;
-    }
-
-    /**
-     * Returns the origin of the value of this VM option. That is,
-     * where the value of this VM option came from.
-     *
-     * @return where the value of this VM option came from.
-     */
-    public Origin getOrigin() {
-        return origin;
-    }
-
-    /**
-     * Tests if this VM option is writeable.  If this VM option is writeable,
-     * it can be set by the {@link HotSpotDiagnosticMXBean#setVMOption
-     * HotSpotDiagnosticMXBean.setVMOption} method.
-     *
-     * @return {@code true} if this VM option is writeable; {@code false}
-     * otherwise.
-     */
-    public boolean isWriteable() {
-        return writeable;
-    }
-
-    public String toString() {
-        return "VM option: " + getName() +
-               " value: " + value + " " +
-               " origin: " + origin + " " +
-               (writeable ? "(read-write)" : "(read-only)");
-    }
-
-    /**
-     * Returns a {@code VMOption} object represented by the
-     * given {@code CompositeData}. The given {@code CompositeData}
-     * must contain the following attributes:
-     *
-     * <blockquote>
-     * <table border>
-     * <tr>
-     *   <th align=left>Attribute Name</th>
-     *   <th align=left>Type</th>
-     * </tr>
-     * <tr>
-     *   <td>name</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>value</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>origin</td>
-     *   <td>{@code java.lang.String}</td>
-     * </tr>
-     * <tr>
-     *   <td>writeable</td>
-     *   <td>{@code java.lang.Boolean}</td>
-     * </tr>
-     * </table>
-     * </blockquote>
-     *
-     * @param cd {@code CompositeData} representing a {@code VMOption}
-     *
-     * @throws IllegalArgumentException if {@code cd} does not
-     *   represent a {@code VMOption} with the attributes described
-     *   above.
-     *
-     * @return a {@code VMOption} object represented by {@code cd}
-     *         if {@code cd} is not {@code null};
-     *         {@code null} otherwise.
-     */
-    public static VMOption from(CompositeData cd) {
-        if (cd == null) {
-            return null;
-        }
-
-        if (cd instanceof VMOptionCompositeData) {
-            return ((VMOptionCompositeData) cd).getVMOption();
-        } else {
-            return new VMOption(cd);
-        }
-
-    }
-
-
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/internal/PlatformMBeanProviderImpl.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,209 +0,0 @@
-/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-package com.sun.management.internal;
-
-import java.lang.management.ManagementFactory;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-import javax.management.DynamicMBean;
-import javax.management.ObjectName;
-import sun.management.ManagementFactoryHelper;
-import sun.management.spi.PlatformMBeanProvider;
-
-public final class PlatformMBeanProviderImpl extends PlatformMBeanProvider {
-    private final List<PlatformComponent<?>> mxbeanList;
-
-    public PlatformMBeanProviderImpl() {
-        mxbeanList = Collections.unmodifiableList(init());
-    }
-
-    @Override
-    public List<PlatformComponent<?>> getPlatformComponentList() {
-        return mxbeanList;
-    }
-
-    private List<PlatformComponent<?>> init() {
-        ArrayList<PlatformComponent<?>> initMBeanList = new ArrayList<>();
-        /**
-         * Garbage Collector in the Java virtual machine.
-         */
-        initMBeanList.add(new PlatformComponent<java.lang.management.MemoryManagerMXBean>() {
-            private final Set<String> garbageCollectorMXBeanInterfaceNames
-                    = Collections.unmodifiableSet(
-                            Stream.of("java.lang.management.MemoryManagerMXBean",
-                                    "java.lang.management.GarbageCollectorMXBean",
-                                    "com.sun.management.GarbageCollectorMXBean")
-                            .collect(Collectors.toSet()));
-
-            @Override
-            public Set<Class<? extends java.lang.management.MemoryManagerMXBean>> mbeanInterfaces() {
-                return Stream.of(java.lang.management.MemoryManagerMXBean.class,
-                        java.lang.management.GarbageCollectorMXBean.class,
-                        com.sun.management.GarbageCollectorMXBean.class)
-                        .collect(Collectors.toSet());
-            }
-
-            @Override
-            public Set<String> mbeanInterfaceNames() {
-                return garbageCollectorMXBeanInterfaceNames;
-            }
-
-            @Override
-            public String getObjectNamePattern() {
-                return ManagementFactory.GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE + ",name=*";
-            }
-
-            @Override
-            public boolean isSingleton() {
-                return false; // zero or more instances
-            }
-
-            @Override
-            public Map<String, java.lang.management.MemoryManagerMXBean> nameToMBeanMap() {
-                List<java.lang.management.GarbageCollectorMXBean> list
-                        = ManagementFactoryHelper.getGarbageCollectorMXBeans();;
-                Map<String, java.lang.management.MemoryManagerMXBean> map;
-                if (list.isEmpty()) {
-                    map = Collections.<String, java.lang.management.MemoryManagerMXBean>emptyMap();
-                } else {
-                    map = new HashMap<>(list.size());
-                    for (java.lang.management.MemoryManagerMXBean gcm : list) {
-                        map.put(gcm.getObjectName().getCanonicalName(),
-                                gcm);
-                    }
-                }
-                return map;
-            }
-        });
-
-        /**
-         * OperatingSystemMXBean
-         */
-        initMBeanList.add(new PlatformComponent<java.lang.management.OperatingSystemMXBean>() {
-            private final Set<String> operatingSystemMXBeanInterfaceNames
-                    = Collections.unmodifiableSet(
-                            Stream.of("java.lang.management.OperatingSystemMXBean",
-                                    "com.sun.management.OperatingSystemMXBean",
-                                    "com.sun.management.UnixOperatingSystemMXBean")
-                            .collect(Collectors.toSet()));
-
-            @Override
-            public Set<Class<? extends java.lang.management.OperatingSystemMXBean>> mbeanInterfaces() {
-                return Stream.of(java.lang.management.OperatingSystemMXBean.class,
-                        com.sun.management.OperatingSystemMXBean.class,
-                        com.sun.management.UnixOperatingSystemMXBean.class)
-                        .collect(Collectors.toSet());
-            }
-
-            @Override
-            public Set<String> mbeanInterfaceNames() {
-                return operatingSystemMXBeanInterfaceNames;
-            }
-
-            @Override
-            public String getObjectNamePattern() {
-                return ManagementFactory.OPERATING_SYSTEM_MXBEAN_NAME;
-            }
-
-            @Override
-            public Map<String, java.lang.management.OperatingSystemMXBean> nameToMBeanMap() {
-                return Collections.<String, java.lang.management.OperatingSystemMXBean>singletonMap(
-                        ManagementFactory.OPERATING_SYSTEM_MXBEAN_NAME,
-                        ManagementFactoryHelper.getOperatingSystemMXBean());
-            }
-        });
-
-        /**
-         * Diagnostic support for the HotSpot Virtual Machine.
-         */
-        initMBeanList.add(new PlatformComponent<com.sun.management.HotSpotDiagnosticMXBean>() {
-            private final Set<String> hotSpotDiagnosticMXBeanInterfaceNames =
-                    Collections.unmodifiableSet(Collections.<String>singleton("com.sun.management.HotSpotDiagnosticMXBean"));
-
-            @Override
-            public Set<Class<? extends com.sun.management.HotSpotDiagnosticMXBean>> mbeanInterfaces() {
-                return Collections.singleton(com.sun.management.HotSpotDiagnosticMXBean.class);
-            }
-
-            @Override
-            public Set<String> mbeanInterfaceNames() {
-                return hotSpotDiagnosticMXBeanInterfaceNames;
-            }
-
-            @Override
-            public String getObjectNamePattern() {
-                return "com.sun.management:type=HotSpotDiagnostic";
-            }
-
-            @Override
-            public Map<String, com.sun.management.HotSpotDiagnosticMXBean> nameToMBeanMap() {
-                return Collections.<String, com.sun.management.HotSpotDiagnosticMXBean>singletonMap(
-                        "com.sun.management:type=HotSpotDiagnostic",
-                        ManagementFactoryHelper.getDiagnosticMXBean());
-            }
-        });
-
-        /**
-         * DynamicMBean
-         */
-        HashMap<ObjectName, DynamicMBean> dynmbeans
-                = ManagementFactoryHelper.getPlatformDynamicMBeans();
-        final Set<String> dynamicMBeanInterfaceNames =
-            Collections.unmodifiableSet(Collections.<String>singleton("javax.management.DynamicMBean"));
-        for (Map.Entry<ObjectName, DynamicMBean> e : dynmbeans.entrySet()) {
-            initMBeanList.add(new PlatformComponent<DynamicMBean>() {
-                @Override
-                public Set<String> mbeanInterfaceNames() {
-                    return dynamicMBeanInterfaceNames;
-                }
-
-                @Override
-                public Set<Class<? extends DynamicMBean>> mbeanInterfaces() {
-                    return Collections.emptySet(); // DynamicMBean cannot be used to find an MBean by ManagementFactory
-                }
-
-                @Override
-                public String getObjectNamePattern() {
-                    return e.getKey().getCanonicalName();
-                }
-
-                @Override
-                public Map<String, DynamicMBean> nameToMBeanMap() {
-                    return Collections.<String, DynamicMBean>singletonMap(
-                            e.getKey().getCanonicalName(),
-                            e.getValue());
-                }
-            });
-        }
-        initMBeanList.trimToSize();
-        return initMBeanList;
-    }
-}
--- a/jdk/src/java.management/share/classes/com/sun/management/package-info.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-/**
- * This package contains Oracle Corporation's platform extension to
- * the implementation of the
- * <a href="{@docRoot}/../../../../api/java/lang/management/package-summary.html">
- * java.lang.management</a> API and also defines the management
- * interface for some other components for the platform.
- *
- * <p>
- * All platform MBeans are registered in the <em>platform MBeanServer</em>
- * which can be obtained via the
- * <a href="{@docRoot}/../../../../api/java/lang/management/ManagementFactory.html#getPlatformMBeanServer()">
- * java.lang.management.ManagementFactory.getPlatformMBeanServer</a>
- *
- * @author  Mandy Chung
- * @since   1.5
- */
-
-@jdk.Exported
-package com.sun.management;
--- a/jdk/src/java.management/share/classes/java/lang/management/DefaultPlatformMBeanProvider.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/java/lang/management/DefaultPlatformMBeanProvider.java	Wed Jul 05 20:32:21 2017 +0200
@@ -33,7 +33,6 @@
 import java.util.function.Function;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
-import javax.management.DynamicMBean;
 import javax.management.ObjectName;
 import sun.management.ManagementFactoryHelper;
 import sun.management.spi.PlatformMBeanProvider;
@@ -162,8 +161,7 @@
             @Override
             public Set<Class<? extends MemoryManagerMXBean>> mbeanInterfaces() {
                 return Stream.of(MemoryManagerMXBean.class,
-                        GarbageCollectorMXBean.class,
-                        com.sun.management.GarbageCollectorMXBean.class).collect(Collectors.toSet());
+                        GarbageCollectorMXBean.class).collect(Collectors.toSet());
             }
 
             @Override
@@ -464,39 +462,6 @@
 
         });
 
-        /**
-         * DynamicMBean
-         */
-        HashMap<ObjectName, DynamicMBean> dynmbeans
-                = ManagementFactoryHelper.getPlatformDynamicMBeans();
-        final Set<String> dynamicMBeanInterfaceNames =
-            Collections.unmodifiableSet(Collections.singleton("javax.management.DynamicMBean"));
-        for (Map.Entry<ObjectName, DynamicMBean> e : dynmbeans.entrySet()) {
-            initMBeanList.add(new PlatformComponent<DynamicMBean>() {
-                @Override
-                public Set<Class<? extends DynamicMBean>> mbeanInterfaces() {
-                    return Collections.emptySet();
-                }
-
-                @Override
-                public Set<String> mbeanInterfaceNames() {
-                    return dynamicMBeanInterfaceNames;
-                }
-
-                @Override
-                public String getObjectNamePattern() {
-                    return e.getKey().getCanonicalName();
-                }
-
-                @Override
-                public Map<String, DynamicMBean> nameToMBeanMap() {
-                    return Collections.<String, DynamicMBean>singletonMap(
-                            e.getKey().getCanonicalName(),
-                            e.getValue());
-                }
-            });
-        }
-
         initMBeanList.trimToSize();
         return initMBeanList;
     }
--- a/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/java/lang/management/ManagementFactory.java	Wed Jul 05 20:32:21 2017 +0200
@@ -582,7 +582,7 @@
         final Class<?> cls = mxbeanInterface;
         ClassLoader loader =
             AccessController.doPrivileged(
-                    (PrivilegedAction<ClassLoader>) () -> cls.getClassLoader());
+                (PrivilegedAction<ClassLoader>) () -> cls.getClassLoader());
         if (!sun.misc.VM.isSystemDomainLoader(loader)) {
             throw new IllegalArgumentException(mxbeanName +
                 " is not a platform MXBean");
@@ -883,7 +883,7 @@
                      all.add(new DefaultPlatformMBeanProvider());
                      return all;
                 }, null, new FilePermission("<<ALL FILES>>", "read"),
-                         new RuntimePermission("sun.management.spi.PlatformMBeanProvider"));
+                         new RuntimePermission("sun.management.spi.PlatformMBeanProvider.subclass"));
 
             // load all platform components into a map
             componentMap = providers.stream()
@@ -970,4 +970,11 @@
             return singleton;
         }
     }
+
+    static {
+        AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
+            System.loadLibrary("management");
+            return null;
+        });
+    }
 }
--- a/jdk/src/java.management/share/classes/sun/management/Agent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/Agent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.net.InetAddress;
+import java.net.MalformedURLException;
 import java.net.UnknownHostException;
 import java.text.MessageFormat;
 import java.util.MissingResourceException;
@@ -55,6 +56,125 @@
  * system class loader. Also jmx framework could be started by jcmd
  */
 public class Agent {
+    /**
+     * Agent status collector strategy class
+     */
+    private static abstract class StatusCollector {
+        final protected StringBuilder sb = new StringBuilder();
+        final public String collect() {
+            Properties agentProps = VMSupport.getAgentProperties();
+            String localConnAddr = (String)agentProps.get(LOCAL_CONNECTOR_ADDRESS_PROP);
+            if (localConnAddr != null || jmxServer != null) {
+                addAgentStatus(true);
+                appendConnections(localConnAddr);
+            } else {
+                addAgentStatus(false);
+            }
+            return sb.toString();
+        }
+
+        private void appendConnections(String localConnAddr) {
+            appendConnectionsHeader();
+            if (localConnAddr != null) {
+                try {
+                    JMXServiceURL u = new JMXServiceURL(localConnAddr);
+                    addConnection(false, u);
+                } catch (MalformedURLException e) {
+                    // will never happen
+                }
+
+            }
+            if (jmxServer != null) {
+                addConnection(true, jmxServer.getAddress());
+            }
+            appendConnectionsFooter();
+        }
+
+        private void addConnection(boolean remote, JMXServiceURL u) {
+            appendConnectionHeader(remote);
+            addConnectionDetails(u);
+            if (remote) {
+                addConfigProperties();
+            }
+            appendConnectionFooter(remote);
+        }
+
+        private void addConfigProperties() {
+            appendConfigPropsHeader();
+            boolean[] first = new boolean[] {true};
+            configProps.entrySet().stream().forEach((e) -> {
+                String key = (String)e.getKey();
+                if (key.startsWith("com.sun.management.")) {
+                    addConfigProp(key, e.getValue(), first[0]);
+                    first[0] = false;
+                }
+            });
+            appendConfigPropsFooter();
+        }
+
+        abstract protected void addAgentStatus(boolean enabled);
+        abstract protected void appendConnectionsHeader();
+        abstract protected void appendConnectionsFooter();
+        abstract protected void addConnectionDetails(JMXServiceURL u);
+        abstract protected void appendConnectionHeader(boolean remote);
+        abstract protected void appendConnectionFooter(boolean remote);
+        abstract protected void appendConfigPropsHeader();
+        abstract protected void appendConfigPropsFooter();
+        abstract protected void addConfigProp(String key, Object value, boolean first);
+    }
+
+    /**
+     * Free-text status collector strategy implementation
+     */
+    final private static class TextStatusCollector extends StatusCollector {
+
+        @Override
+        protected void addAgentStatus(boolean enabled) {
+            sb.append("Agent: ").append(enabled ? "enabled" : "disabled").append('\n');
+        }
+
+        @Override
+        protected void appendConnectionsHeader() {
+            sb.append('\n');
+        }
+
+        @Override
+        protected void addConnectionDetails(JMXServiceURL u) {
+            sb.append("Protocol       : ").append(u.getProtocol()).append('\n')
+              .append("Host           : ").append(u.getHost()).append('\n')
+              .append("URL            : ").append(u).append('\n');
+        }
+
+        @Override
+        protected void appendConnectionHeader(boolean remote) {
+            sb.append("Connection Type: ").append(remote ? "remote" : "local").append('\n');
+        }
+
+        @Override
+        protected void appendConfigPropsHeader() {
+            sb.append("Properties     :\n");
+        }
+
+        @Override
+        protected void addConfigProp(String key, Object value, boolean first) {
+            if (!first) {
+                sb.append('\n');
+            }
+            sb.append("  ").append(key).append(" = ").append(value);
+        }
+
+        @Override
+        protected void appendConnectionsFooter() {}
+
+        @Override
+        protected void appendConnectionFooter(boolean remote) {
+            sb.append('\n');
+        }
+
+        @Override
+        protected void appendConfigPropsFooter() {}
+    }
+
     // management properties
 
     private static Properties mgmtProps;
@@ -81,6 +201,8 @@
 
     // The only active agent allowed
     private static JMXConnectorServer jmxServer = null;
+    // The properties used to configure the server
+    private static Properties configProps = null;
 
     // Parse string com.sun.management.prop=xxx,com.sun.management.prop=yyyy
     // and return property set if args is null or empty
@@ -161,7 +283,7 @@
 
         try {
             Properties argProps = parseString(args);
-            Properties configProps = new Properties();
+            configProps = new Properties();
 
             // Load the management properties from the config file
             // if config file is not specified readConfiguration implicitly
@@ -228,9 +350,14 @@
             // Don't cause any errors.
             jmxServer.stop();
             jmxServer = null;
+            configProps = null;
         }
     }
 
+    private static synchronized String getManagementAgentStatus() throws Exception {
+        return new TextStatusCollector().collect();
+    }
+
     private static void startAgent(Properties props) throws Exception {
         String snmpPort = props.getProperty(SNMP_PORT);
         String jmxremote = props.getProperty(JMXREMOTE);
--- a/jdk/src/java.management/share/classes/sun/management/DiagnosticCommandArgumentInfo.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-/**
- * Diagnostic Command Argument information. It contains the description
- * of one parameter of the diagnostic command. A parameter can either be an
- * option or an argument. Options are identified by the option name while
- * arguments are identified by their position in the command line. The generic
- * syntax of a diagnostic command is:
- *  <blockquote>
- *    &lt;command name&gt; [&lt;option&gt;=&lt;value&gt;] [&lt;argument_value&gt;]
- * </blockquote>
- * Example:
- * <blockquote>
- * command_name option1=value1 option2=value argumentA argumentB argumentC
- * </blockquote>
- * In this command line, the diagnostic command receives five parameters, two
- * options named {@code option1} and {@code option2}, and three arguments.
- * argumentA's position is 0, argumentB's position is 1 and argumentC's
- * position is 2.
- *
- * @since 1.8
- */
-
-class DiagnosticCommandArgumentInfo {
-    private final String name;
-    private final String description;
-    private final String type;
-    private final String defaultValue;
-    private final boolean mandatory;
-    private final boolean option;
-    private final boolean multiple;
-    private final int position;
-
-    /**
-     * Returns the argument name.
-     *
-     * @return the argument name
-     */
-    String getName() {
-        return name;
-    }
-
-   /**
-     * Returns the argument description.
-     *
-     * @return the argument description
-     */
-    String getDescription() {
-        return description;
-    }
-
-    /**
-     * Returns the argument type.
-     *
-     * @return the argument type
-     */
-    String getType() {
-        return type;
-    }
-
-    /**
-     * Returns the default value as a String if a default value
-     * is defined, null otherwise.
-     *
-     * @return the default value as a String if a default value
-     * is defined, null otherwise.
-     */
-    String getDefault() {
-        return defaultValue;
-    }
-
-    /**
-     * Returns {@code true} if the argument is mandatory,
-     *         {@code false} otherwise.
-     *
-     * @return {@code true} if the argument is mandatory,
-     *         {@code false} otherwise
-     */
-    boolean isMandatory() {
-        return mandatory;
-    }
-
-    /**
-     * Returns {@code true} if the argument is an option,
-     *         {@code false} otherwise. Options have to be specified using the
-     *         &lt;key&gt;=&lt;value&gt; syntax on the command line, while other
-     *         arguments are specified with a single &lt;value&gt; field and are
-     *         identified by their position on command line.
-     *
-     * @return {@code true} if the argument is an option,
-     *         {@code false} otherwise
-     */
-    boolean isOption() {
-        return option;
-    }
-
-    /**
-     * Returns {@code true} if the argument can be specified multiple times,
-     *         {@code false} otherwise.
-     *
-     * @return {@code true} if the argument can be specified multiple times,
-     *         {@code false} otherwise
-     */
-    boolean isMultiple() {
-        return multiple;
-    }
-
-    /**
-     * Returns the expected position of this argument if it is not an option,
-     *         -1 otherwise. Argument position if defined from left to right,
-     *         starting at zero and ignoring the diagnostic command name and
-     *         options.
-     *
-     * @return the expected position of this argument if it is not an option,
-     *         -1 otherwise.
-     */
-    int getPosition() {
-        return position;
-    }
-
-    DiagnosticCommandArgumentInfo(String name, String description,
-                                         String type, String defaultValue,
-                                         boolean mandatory, boolean option,
-                                         boolean multiple, int position) {
-        this.name = name;
-        this.description = description;
-        this.type = type;
-        this.defaultValue = defaultValue;
-        this.mandatory = mandatory;
-        this.option = option;
-        this.multiple = multiple;
-        this.position = position;
-    }
-}
--- a/jdk/src/java.management/share/classes/sun/management/DiagnosticCommandImpl.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,380 +0,0 @@
-/*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import com.sun.management.DiagnosticCommandMBean;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.security.Permission;
-import java.util.*;
-import javax.management.*;
-
-/**
- * Implementation class for the diagnostic commands subsystem.
- *
- * @since 1.8
- */
-class DiagnosticCommandImpl extends NotificationEmitterSupport
-    implements DiagnosticCommandMBean {
-
-    private final VMManagement jvm;
-    private volatile Map<String, Wrapper> wrappers = null;
-    private static final String strClassName = "".getClass().getName();
-    private static final String strArrayClassName = String[].class.getName();
-    private final boolean isSupported;
-
-    @Override
-    public Object getAttribute(String attribute) throws AttributeNotFoundException,
-        MBeanException, ReflectionException {
-        throw new AttributeNotFoundException(attribute);
-    }
-
-    @Override
-    public void setAttribute(Attribute attribute) throws AttributeNotFoundException,
-        InvalidAttributeValueException, MBeanException, ReflectionException {
-        throw new AttributeNotFoundException(attribute.getName());
-    }
-
-    @Override
-    public AttributeList getAttributes(String[] attributes) {
-        return new AttributeList();
-    }
-
-    @Override
-    public AttributeList setAttributes(AttributeList attributes) {
-        return new AttributeList();
-    }
-
-    private class Wrapper {
-
-        String name;
-        String cmd;
-        DiagnosticCommandInfo info;
-        Permission permission;
-
-        Wrapper(String name, String cmd, DiagnosticCommandInfo info)
-                throws InstantiationException {
-            this.name = name;
-            this.cmd = cmd;
-            this.info = info;
-            this.permission = null;
-            Exception cause = null;
-            if (info.getPermissionClass() != null) {
-                try {
-                    Class<?> c = Class.forName(info.getPermissionClass());
-                    if (info.getPermissionAction() == null) {
-                        try {
-                            Constructor<?> constructor = c.getConstructor(String.class);
-                            permission = (Permission) constructor.newInstance(info.getPermissionName());
-
-                        } catch (InstantiationException | IllegalAccessException
-                                | IllegalArgumentException | InvocationTargetException
-                                | NoSuchMethodException | SecurityException ex) {
-                            cause = ex;
-                        }
-                    }
-                    if (permission == null) {
-                        try {
-                            Constructor<?> constructor = c.getConstructor(String.class, String.class);
-                            permission = (Permission) constructor.newInstance(
-                                    info.getPermissionName(),
-                                    info.getPermissionAction());
-                        } catch (InstantiationException | IllegalAccessException
-                                | IllegalArgumentException | InvocationTargetException
-                                | NoSuchMethodException | SecurityException ex) {
-                            cause = ex;
-                        }
-                    }
-                } catch (ClassNotFoundException ex) { }
-                if (permission == null) {
-                    InstantiationException iex =
-                            new InstantiationException("Unable to instantiate required permission");
-                    iex.initCause(cause);
-                }
-            }
-        }
-
-        public String execute(String[] args) {
-            if (permission != null) {
-                SecurityManager sm = System.getSecurityManager();
-                if (sm != null) {
-                    sm.checkPermission(permission);
-                }
-            }
-            if(args == null) {
-                return executeDiagnosticCommand(cmd);
-            } else {
-                StringBuilder sb = new StringBuilder();
-                sb.append(cmd);
-                for(int i=0; i<args.length; i++) {
-                    if(args[i] == null) {
-                        throw new IllegalArgumentException("Invalid null argument");
-                    }
-                    sb.append(" ");
-                    sb.append(args[i]);
-                }
-                return executeDiagnosticCommand(sb.toString());
-            }
-        }
-    }
-
-    DiagnosticCommandImpl(VMManagement jvm) {
-        this.jvm = jvm;
-        isSupported = jvm.isRemoteDiagnosticCommandsSupported();
-    }
-
-    private static class OperationInfoComparator implements Comparator<MBeanOperationInfo> {
-        @Override
-        public int compare(MBeanOperationInfo o1, MBeanOperationInfo o2) {
-            return o1.getName().compareTo(o2.getName());
-        }
-    }
-
-    @Override
-    public MBeanInfo getMBeanInfo() {
-        SortedSet<MBeanOperationInfo> operations = new TreeSet<>(new OperationInfoComparator());
-        Map<String, Wrapper> wrappersmap;
-        if (!isSupported) {
-            wrappersmap = Collections.emptyMap();
-        } else {
-            try {
-                String[] command = getDiagnosticCommands();
-                DiagnosticCommandInfo[] info = getDiagnosticCommandInfo(command);
-                MBeanParameterInfo stringArgInfo[] = new MBeanParameterInfo[]{
-                    new MBeanParameterInfo("arguments", strArrayClassName,
-                    "Array of Diagnostic Commands Arguments and Options")
-                };
-                wrappersmap = new HashMap<>();
-                for (int i = 0; i < command.length; i++) {
-                    String name = transform(command[i]);
-                    try {
-                        Wrapper w = new Wrapper(name, command[i], info[i]);
-                        wrappersmap.put(name, w);
-                        operations.add(new MBeanOperationInfo(
-                                w.name,
-                                w.info.getDescription(),
-                                (w.info.getArgumentsInfo() == null
-                                    || w.info.getArgumentsInfo().isEmpty())
-                                    ? null : stringArgInfo,
-                                strClassName,
-                                MBeanOperationInfo.ACTION_INFO,
-                                commandDescriptor(w)));
-                    } catch (InstantiationException ex) {
-                        // If for some reasons the creation of a diagnostic command
-                        // wrappers fails, the diagnostic command is just ignored
-                        // and won't appear in the DynamicMBean
-                    }
-                }
-            } catch (IllegalArgumentException | UnsupportedOperationException e) {
-                wrappersmap = Collections.emptyMap();
-            }
-        }
-        wrappers =  Collections.unmodifiableMap(wrappersmap);
-        HashMap<String, Object> map = new HashMap<>();
-        map.put("immutableInfo", "false");
-        map.put("interfaceClassName","com.sun.management.DiagnosticCommandMBean");
-        map.put("mxbean", "false");
-        Descriptor desc = new ImmutableDescriptor(map);
-        return new MBeanInfo(
-                this.getClass().getName(),
-                "Diagnostic Commands",
-                null, // attributes
-                null, // constructors
-                operations.toArray(new MBeanOperationInfo[operations.size()]), // operations
-                getNotificationInfo(), // notifications
-                desc);
-    }
-
-    @Override
-    public Object invoke(String actionName, Object[] params, String[] signature)
-            throws MBeanException, ReflectionException {
-        if (!isSupported) {
-            throw new UnsupportedOperationException();
-        }
-        if (wrappers == null) {
-            getMBeanInfo();
-        }
-        Wrapper w = wrappers.get(actionName);
-        if (w != null) {
-            if (w.info.getArgumentsInfo().isEmpty()
-                    && (params == null || params.length == 0)
-                    && (signature == null || signature.length == 0)) {
-                return w.execute(null);
-            } else if((params != null && params.length == 1)
-                    && (signature != null && signature.length == 1
-                    && signature[0] != null
-                    && signature[0].compareTo(strArrayClassName) == 0)) {
-                return w.execute((String[]) params[0]);
-            }
-        }
-        throw new ReflectionException(new NoSuchMethodException(actionName));
-    }
-
-    private static String transform(String name) {
-        StringBuilder sb = new StringBuilder();
-        boolean toLower = true;
-        boolean toUpper = false;
-        for (int i = 0; i < name.length(); i++) {
-            char c = name.charAt(i);
-            if (c == '.' || c == '_') {
-                toLower = false;
-                toUpper = true;
-            } else {
-                if (toUpper) {
-                    toUpper = false;
-                    sb.append(Character.toUpperCase(c));
-                } else if(toLower) {
-                    sb.append(Character.toLowerCase(c));
-                } else {
-                    sb.append(c);
-                }
-            }
-        }
-        return sb.toString();
-    }
-
-    private Descriptor commandDescriptor(Wrapper w) throws IllegalArgumentException {
-        HashMap<String, Object> map = new HashMap<>();
-        map.put("dcmd.name", w.info.getName());
-        map.put("dcmd.description", w.info.getDescription());
-        map.put("dcmd.vmImpact", w.info.getImpact());
-        map.put("dcmd.permissionClass", w.info.getPermissionClass());
-        map.put("dcmd.permissionName", w.info.getPermissionName());
-        map.put("dcmd.permissionAction", w.info.getPermissionAction());
-        map.put("dcmd.enabled", w.info.isEnabled());
-        StringBuilder sb = new StringBuilder();
-        sb.append("help ");
-        sb.append(w.info.getName());
-        map.put("dcmd.help", executeDiagnosticCommand(sb.toString()));
-        if (w.info.getArgumentsInfo() != null && !w.info.getArgumentsInfo().isEmpty()) {
-            HashMap<String, Object> allargmap = new HashMap<>();
-            for (DiagnosticCommandArgumentInfo arginfo : w.info.getArgumentsInfo()) {
-                HashMap<String, Object> argmap = new HashMap<>();
-                argmap.put("dcmd.arg.name", arginfo.getName());
-                argmap.put("dcmd.arg.type", arginfo.getType());
-                argmap.put("dcmd.arg.description", arginfo.getDescription());
-                argmap.put("dcmd.arg.isMandatory", arginfo.isMandatory());
-                argmap.put("dcmd.arg.isMultiple", arginfo.isMultiple());
-                boolean isOption = arginfo.isOption();
-                argmap.put("dcmd.arg.isOption", isOption);
-                if(!isOption) {
-                    argmap.put("dcmd.arg.position", arginfo.getPosition());
-                } else {
-                    argmap.put("dcmd.arg.position", -1);
-                }
-                allargmap.put(arginfo.getName(), new ImmutableDescriptor(argmap));
-            }
-            map.put("dcmd.arguments", new ImmutableDescriptor(allargmap));
-        }
-        return new ImmutableDescriptor(map);
-    }
-
-    private final static String notifName =
-        "javax.management.Notification";
-
-    private final static String[] diagFramNotifTypes = {
-        "jmx.mbean.info.changed"
-    };
-
-    private MBeanNotificationInfo[] notifInfo = null;
-
-    @Override
-    public MBeanNotificationInfo[] getNotificationInfo() {
-        synchronized (this) {
-            if (notifInfo == null) {
-                 notifInfo = new MBeanNotificationInfo[1];
-                 notifInfo[0] =
-                         new MBeanNotificationInfo(diagFramNotifTypes,
-                                                   notifName,
-                                                   "Diagnostic Framework Notification");
-            }
-        }
-        return notifInfo;
-    }
-
-    private static long seqNumber = 0;
-    private static long getNextSeqNumber() {
-        return ++seqNumber;
-    }
-
-    private void createDiagnosticFrameworkNotification() {
-
-        if (!hasListeners()) {
-            return;
-        }
-        ObjectName on = null;
-        try {
-            on = ObjectName.getInstance(ManagementFactoryHelper.HOTSPOT_DIAGNOSTIC_COMMAND_MBEAN_NAME);
-        } catch (MalformedObjectNameException e) { }
-        Notification notif = new Notification("jmx.mbean.info.changed",
-                                              on,
-                                              getNextSeqNumber());
-        notif.setUserData(getMBeanInfo());
-        sendNotification(notif);
-    }
-
-    @Override
-    public synchronized void addNotificationListener(NotificationListener listener,
-            NotificationFilter filter,
-            Object handback) {
-        boolean before = hasListeners();
-        super.addNotificationListener(listener, filter, handback);
-        boolean after = hasListeners();
-        if (!before && after) {
-            setNotificationEnabled(true);
-        }
-    }
-
-    @Override
-    public synchronized void removeNotificationListener(NotificationListener listener)
-            throws ListenerNotFoundException {
-        boolean before = hasListeners();
-        super.removeNotificationListener(listener);
-        boolean after = hasListeners();
-        if (before && !after) {
-            setNotificationEnabled(false);
-        }
-    }
-
-    @Override
-    public synchronized void removeNotificationListener(NotificationListener listener,
-            NotificationFilter filter,
-            Object handback)
-            throws ListenerNotFoundException {
-        boolean before = hasListeners();
-        super.removeNotificationListener(listener, filter, handback);
-        boolean after = hasListeners();
-        if (before && !after) {
-            setNotificationEnabled(false);
-        }
-    }
-
-    private native void setNotificationEnabled(boolean enabled);
-    private native String[] getDiagnosticCommands();
-    private native DiagnosticCommandInfo[] getDiagnosticCommandInfo(String[] commands);
-    private native String executeDiagnosticCommand(String command);
-
-}
--- a/jdk/src/java.management/share/classes/sun/management/DiagnosticCommandInfo.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,151 +0,0 @@
-/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import java.util.List;
-
-/**
- * Diagnostic command information. It contains the description of a
- * diagnostic command.
- *
- * @since 1.8
- */
-
-class DiagnosticCommandInfo {
-    private final String name;
-    private final String description;
-    private final String impact;
-    private final String permissionClass;
-    private final String permissionName;
-    private final String permissionAction;
-    private final boolean enabled;
-    private final List<DiagnosticCommandArgumentInfo> arguments;
-
-    /**
-     * Returns the diagnostic command name.
-     *
-     * @return the diagnostic command name
-     */
-    String getName() {
-        return name;
-    }
-
-   /**
-     * Returns the diagnostic command description.
-     *
-     * @return the diagnostic command description
-     */
-    String getDescription() {
-        return description;
-    }
-
-    /**
-     * Returns the potential impact of the diagnostic command execution
-     *         on the Java virtual machine behavior.
-     *
-     * @return the potential impact of the diagnostic command execution
-     *         on the Java virtual machine behavior
-     */
-    String getImpact() {
-        return impact;
-    }
-
-    /**
-     * Returns the name of the permission class required to be allowed
-     *         to invoke the diagnostic command, or null if no permission
-     *         is required.
-     *
-     * @return the name of the permission class name required to be allowed
-     *         to invoke the diagnostic command, or null if no permission
-     *         is required
-     */
-    String getPermissionClass() {
-        return permissionClass;
-    }
-
-    /**
-     * Returns the permission name required to be allowed to invoke the
-     *         diagnostic command, or null if no permission is required.
-     *
-     * @return the permission name required to be allowed to invoke the
-     *         diagnostic command, or null if no permission is required
-     */
-    String getPermissionName() {
-        return permissionName;
-    }
-
-    /**
-     * Returns the permission action required to be allowed to invoke the
-     *         diagnostic command, or null if no permission is required or
-     *         if the permission has no action specified.
-     *
-     * @return the permission action required to be allowed to invoke the
-     *         diagnostic command, or null if no permission is required or
-     *         if the permission has no action specified
-     */
-    String getPermissionAction() {
-        return permissionAction;
-    }
-
-    /**
-     * Returns {@code true} if the diagnostic command is enabled,
-     *         {@code false} otherwise. The enabled/disabled
-     *         status of a diagnostic command can evolve during
-     *         the lifetime of the Java virtual machine.
-     *
-     * @return {@code true} if the diagnostic command is enabled,
-     *         {@code false} otherwise
-     */
-    boolean isEnabled() {
-        return enabled;
-    }
-
-    /**
-     * Returns the list of the diagnostic command arguments description.
-     * If the diagnostic command has no arguments, it returns an empty list.
-     *
-     * @return a list of the diagnostic command arguments description
-     */
-    List<DiagnosticCommandArgumentInfo> getArgumentsInfo() {
-        return arguments;
-    }
-
-    DiagnosticCommandInfo(String name, String description,
-                                    String impact, String permissionClass,
-                                    String permissionName, String permissionAction,
-                                    boolean enabled,
-                                    List<DiagnosticCommandArgumentInfo> arguments)
-    {
-        this.name = name;
-        this.description = description;
-        this.impact = impact;
-        this.permissionClass = permissionClass;
-        this.permissionName = permissionName;
-        this.permissionAction = permissionAction;
-        this.enabled = enabled;
-        this.arguments = arguments;
-    }
-}
--- a/jdk/src/java.management/share/classes/sun/management/Flag.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-/*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import java.util.*;
-import com.sun.management.VMOption;
-import com.sun.management.VMOption.Origin;
-import java.security.AccessController;
-
-/**
- * Flag class is a helper class for constructing a VMOption.
- * It has the static methods for getting the Flag objects, each
- * corresponds to one VMOption.
- *
- */
-class Flag {
-    private String name;
-    private Object value;
-    private Origin origin;
-    private boolean writeable;
-    private boolean external;
-
-    Flag(String name, Object value, boolean writeable,
-         boolean external, Origin origin) {
-        this.name = name;
-        this.value = value == null ? "" : value ;
-        this.origin = origin;
-        this.writeable = writeable;
-        this.external = external;
-    }
-
-    Object getValue() {
-        return value;
-    }
-
-    boolean isWriteable() {
-        return writeable;
-    }
-
-    boolean isExternal() {
-        return external;
-    }
-
-    VMOption getVMOption() {
-        return new VMOption(name, value.toString(), writeable, origin);
-    }
-
-    static Flag getFlag(String name) {
-        String[] names = new String[1];
-        names[0] = name;
-
-        List<Flag> flags = getFlags(names, 1);
-        if (flags.isEmpty()) {
-            return null;
-        } else {
-            // flags should have only one element
-            return flags.get(0);
-        }
-    }
-
-    static List<Flag> getAllFlags() {
-        int numFlags = getInternalFlagCount();
-
-        // Get all internal flags with names = null
-        return getFlags(null, numFlags);
-    }
-
-    private static List<Flag> getFlags(String[] names, int numFlags) {
-        Flag[] flags = new Flag[numFlags];
-        int count = getFlags(names, flags, numFlags);
-
-        List<Flag> result = new ArrayList<>();
-        for (Flag f : flags) {
-            if (f != null) {
-                result.add(f);
-            }
-        }
-        return result;
-    }
-
-    private static native String[] getAllFlagNames();
-    // getFlags sets each element in the given flags array
-    // with a Flag object only if the name is valid and the
-    // type is supported. The flags array may contain null elements.
-    private static native int getFlags(String[] names, Flag[] flags, int count);
-    private static native int getInternalFlagCount();
-
-    // These set* methods are synchronized on the class object
-    // to avoid multiple threads updating the same flag at the same time.
-    static synchronized native void setLongValue(String name, long value);
-    static synchronized native void setDoubleValue(String name, double value);
-    static synchronized native void setBooleanValue(String name, boolean value);
-    static synchronized native void setStringValue(String name, String value);
-
-    static {
-        AccessController.doPrivileged(
-            new java.security.PrivilegedAction<Void>() {
-                public Void run() {
-                    System.loadLibrary("management");
-                    return null;
-                }
-            });
-        initialize();
-    }
-    private static native void initialize();
-}
--- a/jdk/src/java.management/share/classes/sun/management/GarbageCollectionNotifInfoCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,215 +0,0 @@
-/*
- * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import com.sun.management.GarbageCollectionNotificationInfo;
-import com.sun.management.GcInfo;
-import java.lang.reflect.Method;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.CompositeDataSupport;
-import javax.management.openmbean.OpenDataException;
-import javax.management.openmbean.OpenType;
-import javax.management.openmbean.SimpleType;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.lang.reflect.Field;
-import java.util.HashMap;
-
-/**
- * A CompositeData for GarbageCollectionNotificationInfo for the local management support.
- * This class avoids the performance penalty paid to the
- * construction of a CompositeData use in the local case.
- */
-public class GarbageCollectionNotifInfoCompositeData extends LazyCompositeData {
-    private final GarbageCollectionNotificationInfo gcNotifInfo;
-
-    public GarbageCollectionNotifInfoCompositeData(GarbageCollectionNotificationInfo info) {
-        this.gcNotifInfo = info;
-    }
-
-    public GarbageCollectionNotificationInfo getGarbageCollectionNotifInfo() {
-        return gcNotifInfo;
-    }
-
-    public static CompositeData toCompositeData(GarbageCollectionNotificationInfo info) {
-        GarbageCollectionNotifInfoCompositeData gcnicd =
-            new GarbageCollectionNotifInfoCompositeData(info);
-        return gcnicd.getCompositeData();
-    }
-
-    private CompositeType getCompositeTypeByBuilder() {
-        final GcInfoBuilder builder = AccessController.doPrivileged (new PrivilegedAction<GcInfoBuilder>() {
-                public GcInfoBuilder run() {
-                    try {
-                        Class<?> cl = Class.forName("com.sun.management.GcInfo");
-                        Field f = cl.getDeclaredField("builder");
-                        f.setAccessible(true);
-                        return (GcInfoBuilder)f.get(gcNotifInfo.getGcInfo());
-                    } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
-                        return null;
-                    }
-                }
-            });
-        CompositeType gict = null;
-        synchronized(compositeTypeByBuilder) {
-            gict = compositeTypeByBuilder.get(builder);
-            if(gict == null) {
-                OpenType<?>[] gcNotifInfoItemTypes = new OpenType<?>[] {
-                    SimpleType.STRING,
-                    SimpleType.STRING,
-                    SimpleType.STRING,
-                    builder.getGcInfoCompositeType(),
-                };
-                try {
-                    final String typeName =
-                        "sun.management.GarbageCollectionNotifInfoCompositeType";
-                    gict = new CompositeType(typeName,
-                                             "CompositeType for GC notification info",
-                                             gcNotifInfoItemNames,
-                                             gcNotifInfoItemNames,
-                                             gcNotifInfoItemTypes);
-                    compositeTypeByBuilder.put(builder,gict);
-                } catch (OpenDataException e) {
-                    // shouldn't reach here
-                    throw Util.newException(e);
-                }
-            }
-        }
-        return gict;
-    }
-
-    protected CompositeData getCompositeData() {
-        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
-        // gcNotifInfoItemNames!
-        final Object[] gcNotifInfoItemValues;
-        gcNotifInfoItemValues = new Object[] {
-            gcNotifInfo.getGcName(),
-            gcNotifInfo.getGcAction(),
-            gcNotifInfo.getGcCause(),
-            GcInfoCompositeData.toCompositeData(gcNotifInfo.getGcInfo())
-        };
-
-        CompositeType gict = getCompositeTypeByBuilder();
-
-        try {
-            return new CompositeDataSupport(gict,
-                                            gcNotifInfoItemNames,
-                                            gcNotifInfoItemValues);
-        } catch (OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    //    private static MappedMXBeanType gcInfoMapType;
-    private static final String GC_NAME = "gcName";
-    private static final String GC_ACTION = "gcAction";
-    private static final String GC_CAUSE = "gcCause";
-    private static final String GC_INFO     = "gcInfo";
-    private static final String[] gcNotifInfoItemNames = {
-        GC_NAME,
-        GC_ACTION,
-        GC_CAUSE,
-        GC_INFO
-    };
-    private static HashMap<GcInfoBuilder,CompositeType> compositeTypeByBuilder =
-        new HashMap<>();
-
-    public static String getGcName(CompositeData cd) {
-        String gcname = getString(cd, GC_NAME);
-        if (gcname == null) {
-            throw new IllegalArgumentException("Invalid composite data: " +
-                "Attribute " + GC_NAME + " has null value");
-        }
-        return gcname;
-    }
-
-    public static String getGcAction(CompositeData cd) {
-        String gcaction = getString(cd, GC_ACTION);
-        if (gcaction == null) {
-            throw new IllegalArgumentException("Invalid composite data: " +
-                "Attribute " + GC_ACTION + " has null value");
-        }
-        return gcaction;
-    }
-
-    public static String getGcCause(CompositeData cd) {
-        String gccause = getString(cd, GC_CAUSE);
-        if (gccause == null) {
-            throw new IllegalArgumentException("Invalid composite data: " +
-                "Attribute " + GC_CAUSE + " has null value");
-        }
-        return gccause;
-    }
-
-    public static GcInfo getGcInfo(CompositeData cd) {
-        CompositeData gcInfoData = (CompositeData) cd.get(GC_INFO);
-        return GcInfo.from(gcInfoData);
-    }
-
-    /** Validate if the input CompositeData has the expected
-     * CompositeType (i.e. contain all attributes with expected
-     * names and types).
-     */
-    public static void validateCompositeData(CompositeData cd) {
-        if (cd == null) {
-            throw new NullPointerException("Null CompositeData");
-        }
-
-        if (!isTypeMatched( getBaseGcNotifInfoCompositeType(), cd.getCompositeType())) {
-            throw new IllegalArgumentException(
-                "Unexpected composite type for GarbageCollectionNotificationInfo");
-        }
-    }
-
-    // This is only used for validation.
-    private static CompositeType baseGcNotifInfoCompositeType = null;
-    private static synchronized CompositeType getBaseGcNotifInfoCompositeType() {
-        if (baseGcNotifInfoCompositeType == null) {
-            try {
-                OpenType<?>[] baseGcNotifInfoItemTypes = new OpenType<?>[] {
-                    SimpleType.STRING,
-                    SimpleType.STRING,
-                    SimpleType.STRING,
-                    GcInfoCompositeData.getBaseGcInfoCompositeType()
-                };
-                baseGcNotifInfoCompositeType =
-                    new CompositeType("sun.management.BaseGarbageCollectionNotifInfoCompositeType",
-                                      "CompositeType for Base GarbageCollectionNotificationInfo",
-                                      gcNotifInfoItemNames,
-                                      gcNotifInfoItemNames,
-                                      baseGcNotifInfoItemTypes);
-            } catch (OpenDataException e) {
-                // shouldn't reach here
-                throw Util.newException(e);
-            }
-        }
-        return baseGcNotifInfoCompositeType;
-    }
-
-    private static final long serialVersionUID = -1805123446483771292L;
-}
--- a/jdk/src/java.management/share/classes/sun/management/GarbageCollectorImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/GarbageCollectorImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,168 +25,31 @@
 
 package sun.management;
 
-import com.sun.management.GarbageCollectorMXBean;
-import com.sun.management.GarbageCollectionNotificationInfo;
+import java.lang.management.GarbageCollectorMXBean;
 import java.lang.management.ManagementFactory;
-import java.lang.management.MemoryPoolMXBean;
-import java.lang.management.MemoryUsage;
-
-import com.sun.management.GcInfo;
-import javax.management.openmbean.CompositeData;
-import javax.management.MBeanInfo;
-import javax.management.MBeanAttributeInfo;
 import javax.management.ObjectName;
-import javax.management.MBeanNotificationInfo;
-import javax.management.Notification;
-import javax.management.NotificationFilter;
-import javax.management.NotificationListener;
-import javax.management.ListenerNotFoundException;
-
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
 
 /**
  * Implementation class for the garbage collector.
- * Standard and committed hotspot-specific metrics if any.
  *
  * ManagementFactory.getGarbageCollectorMXBeans() returns a list
  * of instances of this class.
  */
-class GarbageCollectorImpl extends MemoryManagerImpl
+public class GarbageCollectorImpl extends MemoryManagerImpl
     implements GarbageCollectorMXBean {
 
-    GarbageCollectorImpl(String name) {
+    protected GarbageCollectorImpl(String name) {
         super(name);
     }
 
+    @Override
     public native long getCollectionCount();
+
+    @Override
     public native long getCollectionTime();
 
-
-    // The memory pools are static and won't be changed.
-    // TODO: If the hotspot implementation begins to have pools
-    // dynamically created and removed, this needs to be modified.
-    private String[] poolNames = null;
-    synchronized String[] getAllPoolNames() {
-        if (poolNames == null) {
-            List<MemoryPoolMXBean> pools = ManagementFactory.getMemoryPoolMXBeans();
-            poolNames = new String[pools.size()];
-            int i = 0;
-            for (MemoryPoolMXBean m : pools) {
-                poolNames[i++] = m.getName();
-            }
-        }
-        return poolNames;
-    }
-
-    // Sun JDK extension
-    private GcInfoBuilder gcInfoBuilder;
-
-    private synchronized GcInfoBuilder getGcInfoBuilder() {
-        if(gcInfoBuilder == null) {
-            gcInfoBuilder = new GcInfoBuilder(this, getAllPoolNames());
-        }
-        return gcInfoBuilder;
-    }
-
-    public GcInfo getLastGcInfo() {
-        GcInfo info = getGcInfoBuilder().getLastGcInfo();
-        return info;
-    }
-
-    private final static String notifName =
-        "javax.management.Notification";
-
-    private final static String[] gcNotifTypes = {
-        GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION
-    };
-
-    private MBeanNotificationInfo[] notifInfo = null;
-    public MBeanNotificationInfo[] getNotificationInfo() {
-        synchronized (this) {
-            if (notifInfo == null) {
-                 notifInfo = new MBeanNotificationInfo[1];
-                 notifInfo[0] = new MBeanNotificationInfo(gcNotifTypes,
-                                                          notifName,
-                                                          "GC Notification");
-            }
-        }
-        return notifInfo;
-    }
-
-    private static long seqNumber = 0;
-    private static long getNextSeqNumber() {
-        return ++seqNumber;
-    }
-
-    void createGCNotification(long timestamp,
-                              String gcName,
-                              String gcAction,
-                              String gcCause,
-                              GcInfo gcInfo)  {
-
-        if (!hasListeners()) {
-            return;
-        }
-
-        Notification notif = new Notification(GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION,
-                                              getObjectName(),
-                                              getNextSeqNumber(),
-                                              timestamp,
-                                              gcName);
-        GarbageCollectionNotificationInfo info =
-            new GarbageCollectionNotificationInfo(gcName,
-                                                  gcAction,
-                                                  gcCause,
-                                                  gcInfo);
-
-        CompositeData cd =
-            GarbageCollectionNotifInfoCompositeData.toCompositeData(info);
-        notif.setUserData(cd);
-        sendNotification(notif);
-    }
-
-    public synchronized void addNotificationListener(NotificationListener listener,
-                                                     NotificationFilter filter,
-                                                     Object handback)
-    {
-        boolean before = hasListeners();
-        super.addNotificationListener(listener, filter, handback);
-        boolean after = hasListeners();
-        if (!before && after) {
-            setNotificationEnabled(this, true);
-        }
-    }
-
-    public synchronized void removeNotificationListener(NotificationListener listener)
-        throws ListenerNotFoundException {
-        boolean before = hasListeners();
-        super.removeNotificationListener(listener);
-        boolean after = hasListeners();
-        if (before && !after) {
-            setNotificationEnabled(this,false);
-        }
-    }
-
-    public synchronized void removeNotificationListener(NotificationListener listener,
-                                                        NotificationFilter filter,
-                                                        Object handback)
-            throws ListenerNotFoundException
-    {
-        boolean before = hasListeners();
-        super.removeNotificationListener(listener,filter,handback);
-        boolean after = hasListeners();
-        if (before && !after) {
-            setNotificationEnabled(this,false);
-        }
-    }
-
+    @Override
     public ObjectName getObjectName() {
         return Util.newObjectName(ManagementFactory.GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE, getName());
     }
-
-    native void setNotificationEnabled(GarbageCollectorMXBean gc,
-                                       boolean enabled);
-
 }
--- a/jdk/src/java.management/share/classes/sun/management/GcInfoBuilder.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,205 +0,0 @@
-/*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-package sun.management;
-
-import java.lang.management.GarbageCollectorMXBean;
-import java.lang.management.MemoryUsage;
-import javax.management.openmbean.OpenType;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.TabularType;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.TabularDataSupport;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataSupport;
-import javax.management.openmbean.OpenDataException;
-import com.sun.management.GcInfo;
-
-/**
- * Helper class to build composite data.
- */
-public class GcInfoBuilder {
-    private final GarbageCollectorMXBean gc;
-    private final String[] poolNames;
-    private String[] allItemNames;
-
-    // GC-specific composite type:
-    // Each GarbageCollectorMXBean may have different GC-specific attributes
-    // the CompositeType for the GcInfo could be different.
-    private CompositeType gcInfoCompositeType;
-
-    // GC-specific items
-    private final int gcExtItemCount;
-    private final String[] gcExtItemNames;
-    private final String[] gcExtItemDescs;
-    private final char[] gcExtItemTypes;
-
-    GcInfoBuilder(GarbageCollectorMXBean gc, String[] poolNames) {
-        this.gc = gc;
-        this.poolNames = poolNames;
-        this.gcExtItemCount = getNumGcExtAttributes(gc);
-        this.gcExtItemNames = new String[gcExtItemCount];
-        this.gcExtItemDescs = new String[gcExtItemCount];
-        this.gcExtItemTypes = new char[gcExtItemCount];
-
-        // Fill the information about extension attributes
-        fillGcAttributeInfo(gc, gcExtItemCount, gcExtItemNames,
-                            gcExtItemTypes, gcExtItemDescs);
-
-        // lazily build the CompositeType for the GcInfo
-        // including the GC-specific extension attributes
-        this.gcInfoCompositeType = null;
-    }
-
-    GcInfo getLastGcInfo() {
-        MemoryUsage[] usageBeforeGC = new MemoryUsage[poolNames.length];
-        MemoryUsage[] usageAfterGC = new MemoryUsage[poolNames.length];
-        Object[] values = new Object[gcExtItemCount];
-
-        return getLastGcInfo0(gc, gcExtItemCount, values, gcExtItemTypes,
-                              usageBeforeGC, usageAfterGC);
-    }
-
-    public String[] getPoolNames() {
-        return poolNames;
-    }
-
-    int getGcExtItemCount() {
-        return gcExtItemCount;
-    }
-
-    // Returns the CompositeType for the GcInfo including
-    // the extension attributes
-    synchronized CompositeType getGcInfoCompositeType() {
-        if (gcInfoCompositeType != null)
-            return gcInfoCompositeType;
-
-        // First, fill with the attributes in the GcInfo
-        String[] gcInfoItemNames = GcInfoCompositeData.getBaseGcInfoItemNames();
-        OpenType<?>[] gcInfoItemTypes = GcInfoCompositeData.getBaseGcInfoItemTypes();
-        int numGcInfoItems = gcInfoItemNames.length;
-
-        int itemCount = numGcInfoItems + gcExtItemCount;
-        allItemNames = new String[itemCount];
-        String[] allItemDescs = new String[itemCount];
-        OpenType<?>[] allItemTypes = new OpenType<?>[itemCount];
-
-        System.arraycopy(gcInfoItemNames, 0, allItemNames, 0, numGcInfoItems);
-        System.arraycopy(gcInfoItemNames, 0, allItemDescs, 0, numGcInfoItems);
-        System.arraycopy(gcInfoItemTypes, 0, allItemTypes, 0, numGcInfoItems);
-
-        // Then fill with the extension GC-specific attributes, if any.
-        if (gcExtItemCount > 0) {
-            fillGcAttributeInfo(gc, gcExtItemCount, gcExtItemNames,
-                                gcExtItemTypes, gcExtItemDescs);
-            System.arraycopy(gcExtItemNames, 0, allItemNames,
-                             numGcInfoItems, gcExtItemCount);
-            System.arraycopy(gcExtItemDescs, 0, allItemDescs,
-                             numGcInfoItems, gcExtItemCount);
-            for (int i = numGcInfoItems, j = 0; j < gcExtItemCount; i++, j++) {
-                switch (gcExtItemTypes[j]) {
-                    case 'Z':
-                        allItemTypes[i] = SimpleType.BOOLEAN;
-                        break;
-                    case 'B':
-                        allItemTypes[i] = SimpleType.BYTE;
-                        break;
-                    case 'C':
-                        allItemTypes[i] = SimpleType.CHARACTER;
-                        break;
-                    case 'S':
-                        allItemTypes[i] = SimpleType.SHORT;
-                        break;
-                    case 'I':
-                        allItemTypes[i] = SimpleType.INTEGER;
-                        break;
-                    case 'J':
-                        allItemTypes[i] = SimpleType.LONG;
-                        break;
-                    case 'F':
-                        allItemTypes[i] = SimpleType.FLOAT;
-                        break;
-                    case 'D':
-                        allItemTypes[i] = SimpleType.DOUBLE;
-                        break;
-                    default:
-                        throw new AssertionError(
-                            "Unsupported type [" + gcExtItemTypes[i] + "]");
-                }
-            }
-        }
-
-        CompositeType gict = null;
-        try {
-            final String typeName =
-                "sun.management." + gc.getName() + ".GcInfoCompositeType";
-
-            gict = new CompositeType(typeName,
-                                     "CompositeType for GC info for " +
-                                         gc.getName(),
-                                     allItemNames,
-                                     allItemDescs,
-                                     allItemTypes);
-        } catch (OpenDataException e) {
-            // shouldn't reach here
-            throw Util.newException(e);
-        }
-        gcInfoCompositeType = gict;
-
-        return gcInfoCompositeType;
-    }
-
-    synchronized String[] getItemNames() {
-        if (allItemNames == null) {
-            // initialize when forming the composite type
-            getGcInfoCompositeType();
-        }
-        return allItemNames;
-    }
-
-    // Retrieve information about extension attributes
-    private native int getNumGcExtAttributes(GarbageCollectorMXBean gc);
-    private native void fillGcAttributeInfo(GarbageCollectorMXBean gc,
-                                            int numAttributes,
-                                            String[] attributeNames,
-                                            char[] types,
-                                            String[] descriptions);
-
-    /**
-     * Returns the last GcInfo
-     *
-     * @param gc GarbageCollectorMXBean that the gc info is associated with.
-     * @param numExtAtts number of extension attributes
-     * @param extAttValues Values of extension attributes to be filled.
-     * @param before Memory usage before GC to be filled.
-     * @param after Memory usage after GC to be filled.
-     */
-    private native GcInfo getLastGcInfo0(GarbageCollectorMXBean gc,
-                                         int numExtAtts,
-                                         Object[] extAttValues,
-                                         char[] extAttTypes,
-                                         MemoryUsage[] before,
-                                         MemoryUsage[] after);
-}
--- a/jdk/src/java.management/share/classes/sun/management/GcInfoCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-/*
- * Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import java.lang.management.MemoryUsage;
-import java.lang.reflect.Method;
-import java.lang.reflect.Field;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Collections;
-import java.io.InvalidObjectException;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataSupport;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.SimpleType;
-import javax.management.openmbean.OpenType;
-import javax.management.openmbean.OpenDataException;
-import com.sun.management.GcInfo;
-import com.sun.management.GarbageCollectionNotificationInfo;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-
-/**
- * A CompositeData for GcInfo for the local management support.
- * This class avoids the performance penalty paid to the
- * construction of a CompositeData use in the local case.
- */
-public class GcInfoCompositeData extends LazyCompositeData {
-    private final GcInfo info;
-    private final GcInfoBuilder builder;
-    private final Object[] gcExtItemValues;
-
-    public GcInfoCompositeData(GcInfo info,
-                        GcInfoBuilder builder,
-                        Object[] gcExtItemValues) {
-        this.info = info;
-        this.builder = builder;
-        this.gcExtItemValues = gcExtItemValues;
-    }
-
-    public GcInfo getGcInfo() {
-        return info;
-    }
-
-    public static CompositeData toCompositeData(final GcInfo info) {
-        final GcInfoBuilder builder = AccessController.doPrivileged (new PrivilegedAction<GcInfoBuilder>() {
-                        public GcInfoBuilder run() {
-                            try {
-                                Class<?> cl = Class.forName("com.sun.management.GcInfo");
-                                Field f = cl.getDeclaredField("builder");
-                                f.setAccessible(true);
-                                return (GcInfoBuilder)f.get(info);
-                            } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
-                                return null;
-                            }
-                        }
-                    });
-        final Object[] extAttr = AccessController.doPrivileged (new PrivilegedAction<Object[]>() {
-                        public Object[] run() {
-                            try {
-                                Class<?> cl = Class.forName("com.sun.management.GcInfo");
-                                Field f = cl.getDeclaredField("extAttributes");
-                                f.setAccessible(true);
-                                return (Object[])f.get(info);
-                            } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
-                                return null;
-                            }
-                        }
-                    });
-        GcInfoCompositeData gcicd =
-            new GcInfoCompositeData(info,builder,extAttr);
-        return gcicd.getCompositeData();
-    }
-
-    protected CompositeData getCompositeData() {
-        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
-        // baseGcInfoItemNames!
-        final Object[] baseGcInfoItemValues;
-
-        try {
-            baseGcInfoItemValues = new Object[] {
-                info.getId(),
-                info.getStartTime(),
-                info.getEndTime(),
-                info.getDuration(),
-                memoryUsageMapType.toOpenTypeData(info.getMemoryUsageBeforeGc()),
-                memoryUsageMapType.toOpenTypeData(info.getMemoryUsageAfterGc()),
-            };
-        } catch (OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-
-        // Get the item values for the extension attributes
-        final int gcExtItemCount = builder.getGcExtItemCount();
-        if (gcExtItemCount == 0 &&
-            gcExtItemValues != null && gcExtItemValues.length != 0) {
-            throw new AssertionError("Unexpected Gc Extension Item Values");
-        }
-
-        if (gcExtItemCount > 0 && (gcExtItemValues == null ||
-             gcExtItemCount != gcExtItemValues.length)) {
-            throw new AssertionError("Unmatched Gc Extension Item Values");
-        }
-
-        Object[] values = new Object[baseGcInfoItemValues.length +
-                                     gcExtItemCount];
-        System.arraycopy(baseGcInfoItemValues, 0, values, 0,
-                         baseGcInfoItemValues.length);
-
-        if (gcExtItemCount > 0) {
-            System.arraycopy(gcExtItemValues, 0, values,
-                             baseGcInfoItemValues.length, gcExtItemCount);
-        }
-
-        try {
-            return new CompositeDataSupport(builder.getGcInfoCompositeType(),
-                                            builder.getItemNames(),
-                                            values);
-        } catch (OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    private static final String ID                     = "id";
-    private static final String START_TIME             = "startTime";
-    private static final String END_TIME               = "endTime";
-    private static final String DURATION               = "duration";
-    private static final String MEMORY_USAGE_BEFORE_GC = "memoryUsageBeforeGc";
-    private static final String MEMORY_USAGE_AFTER_GC  = "memoryUsageAfterGc";
-
-    private static final String[] baseGcInfoItemNames = {
-        ID,
-        START_TIME,
-        END_TIME,
-        DURATION,
-        MEMORY_USAGE_BEFORE_GC,
-        MEMORY_USAGE_AFTER_GC,
-    };
-
-
-    private static MappedMXBeanType memoryUsageMapType;
-    static {
-        try {
-            Method m = GcInfo.class.getMethod("getMemoryUsageBeforeGc");
-            memoryUsageMapType =
-                MappedMXBeanType.getMappedType(m.getGenericReturnType());
-        } catch (NoSuchMethodException | OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    static String[] getBaseGcInfoItemNames() {
-        return baseGcInfoItemNames;
-    }
-
-    private static OpenType<?>[] baseGcInfoItemTypes = null;
-    static synchronized OpenType<?>[] getBaseGcInfoItemTypes() {
-        if (baseGcInfoItemTypes == null) {
-            OpenType<?> memoryUsageOpenType = memoryUsageMapType.getOpenType();
-            baseGcInfoItemTypes = new OpenType<?>[] {
-                SimpleType.LONG,
-                SimpleType.LONG,
-                SimpleType.LONG,
-                SimpleType.LONG,
-
-                memoryUsageOpenType,
-                memoryUsageOpenType,
-            };
-        }
-        return baseGcInfoItemTypes;
-    }
-
-    public static long getId(CompositeData cd) {
-        return getLong(cd, ID);
-    }
-    public static long getStartTime(CompositeData cd) {
-        return getLong(cd, START_TIME);
-    }
-    public static long getEndTime(CompositeData cd) {
-        return getLong(cd, END_TIME);
-    }
-
-    public static Map<String, MemoryUsage>
-            getMemoryUsageBeforeGc(CompositeData cd) {
-        try {
-            TabularData td = (TabularData) cd.get(MEMORY_USAGE_BEFORE_GC);
-            return cast(memoryUsageMapType.toJavaTypeData(td));
-        } catch (InvalidObjectException | OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    @SuppressWarnings("unchecked")
-    public static Map<String, MemoryUsage> cast(Object x) {
-        return (Map<String, MemoryUsage>) x;
-    }
-    public static Map<String, MemoryUsage>
-            getMemoryUsageAfterGc(CompositeData cd) {
-        try {
-            TabularData td = (TabularData) cd.get(MEMORY_USAGE_AFTER_GC);
-            //return (Map<String,MemoryUsage>)
-            return cast(memoryUsageMapType.toJavaTypeData(td));
-        } catch (InvalidObjectException | OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    /**
-     * Returns true if the input CompositeData has the expected
-     * CompositeType (i.e. contain all attributes with expected
-     * names and types).  Otherwise, return false.
-     */
-    public static void validateCompositeData(CompositeData cd) {
-        if (cd == null) {
-            throw new NullPointerException("Null CompositeData");
-        }
-
-        if (!isTypeMatched(getBaseGcInfoCompositeType(),
-                           cd.getCompositeType())) {
-           throw new IllegalArgumentException(
-                "Unexpected composite type for GcInfo");
-        }
-    }
-
-    // This is only used for validation.
-    private static CompositeType baseGcInfoCompositeType = null;
-    static synchronized CompositeType getBaseGcInfoCompositeType() {
-        if (baseGcInfoCompositeType == null) {
-            try {
-                baseGcInfoCompositeType =
-                    new CompositeType("sun.management.BaseGcInfoCompositeType",
-                                      "CompositeType for Base GcInfo",
-                                      getBaseGcInfoItemNames(),
-                                      getBaseGcInfoItemNames(),
-                                      getBaseGcInfoItemTypes());
-            } catch (OpenDataException e) {
-                // shouldn't reach here
-                throw Util.newException(e);
-            }
-        }
-        return baseGcInfoCompositeType;
-    }
-
-    private static final long serialVersionUID = -5716428894085882742L;
-}
--- a/jdk/src/java.management/share/classes/sun/management/HotSpotDiagnostic.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-import javax.management.ObjectName;
-
-import com.sun.management.HotSpotDiagnosticMXBean;
-import com.sun.management.VMOption;
-
-/**
- * Implementation of the diagnostic MBean for Hotspot VM.
- */
-public class HotSpotDiagnostic implements HotSpotDiagnosticMXBean {
-    public HotSpotDiagnostic() {
-    }
-
-    @Override
-    public void dumpHeap(String outputFile, boolean live) throws IOException {
-        SecurityManager security = System.getSecurityManager();
-        if (security != null) {
-            security.checkWrite(outputFile);
-            Util.checkControlAccess();
-        }
-
-        dumpHeap0(outputFile, live);
-    }
-
-    private native void dumpHeap0(String outputFile, boolean live) throws IOException;
-
-    @Override
-    public List<VMOption> getDiagnosticOptions() {
-        List<Flag> allFlags = Flag.getAllFlags();
-        List<VMOption> result = new ArrayList<>();
-        for (Flag flag : allFlags) {
-            if (flag.isWriteable() && flag.isExternal()) {
-                result.add(flag.getVMOption());
-            }
-        }
-        return result;
-    }
-
-    @Override
-    public VMOption getVMOption(String name) {
-        if (name == null) {
-            throw new NullPointerException("name cannot be null");
-        }
-
-        Flag f = Flag.getFlag(name);
-        if (f == null) {
-            throw new IllegalArgumentException("VM option \"" +
-                name + "\" does not exist");
-        }
-        return f.getVMOption();
-    }
-
-    @Override
-    public void setVMOption(String name, String value) {
-        if (name == null) {
-            throw new NullPointerException("name cannot be null");
-        }
-        if (value == null) {
-            throw new NullPointerException("value cannot be null");
-        }
-
-        Util.checkControlAccess();
-        Flag flag = Flag.getFlag(name);
-        if (flag == null) {
-            throw new IllegalArgumentException("VM option \"" +
-                name + "\" does not exist");
-        }
-        if (!flag.isWriteable()){
-            throw new IllegalArgumentException("VM Option \"" +
-                name + "\" is not writeable");
-        }
-
-        // Check the type of the value
-        Object v = flag.getValue();
-        if (v instanceof Long) {
-            try {
-                long l = Long.parseLong(value);
-                Flag.setLongValue(name, l);
-            } catch (NumberFormatException e) {
-                throw new IllegalArgumentException("Invalid value:" +
-                        " VM Option \"" + name + "\"" +
-                        " expects numeric value", e);
-            }
-        } else if (v instanceof Double) {
-            try {
-                double d = Double.parseDouble(value);
-                Flag.setDoubleValue(name, d);
-            } catch (NumberFormatException e) {
-                throw new IllegalArgumentException("Invalid value:" +
-                        " VM Option \"" + name + "\"" +
-                        " expects numeric value", e);
-            }
-        } else if (v instanceof Boolean) {
-            if (!value.equalsIgnoreCase("true") &&
-                !value.equalsIgnoreCase("false")) {
-                throw new IllegalArgumentException("Invalid value:" +
-                    " VM Option \"" + name + "\"" +
-                    " expects \"true\" or \"false\".");
-            }
-            Flag.setBooleanValue(name, Boolean.parseBoolean(value));
-        } else if (v instanceof String) {
-            Flag.setStringValue(name, value);
-        } else {
-            throw new IllegalArgumentException("VM Option \"" +
-                name + "\" is of an unsupported type: " +
-                v.getClass().getName());
-        }
-    }
-
-    @Override
-    public ObjectName getObjectName() {
-        return Util.newObjectName("com.sun.management:type=HotSpotDiagnostic");
-    }
-}
--- a/jdk/src/java.management/share/classes/sun/management/LazyCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/LazyCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -115,28 +115,28 @@
     protected abstract CompositeData getCompositeData();
 
     // Helper methods
-    static String getString(CompositeData cd, String itemName) {
+    public static String getString(CompositeData cd, String itemName) {
         if (cd == null)
             throw new IllegalArgumentException("Null CompositeData");
 
         return (String) cd.get(itemName);
     }
 
-    static boolean getBoolean(CompositeData cd, String itemName) {
+    public static boolean getBoolean(CompositeData cd, String itemName) {
         if (cd == null)
             throw new IllegalArgumentException("Null CompositeData");
 
         return ((Boolean) cd.get(itemName)).booleanValue();
     }
 
-    static long getLong(CompositeData cd, String itemName) {
+    public static long getLong(CompositeData cd, String itemName) {
         if (cd == null)
             throw new IllegalArgumentException("Null CompositeData");
 
         return ((Long) cd.get(itemName)).longValue();
     }
 
-    static int getInt(CompositeData cd, String itemName) {
+    public static int getInt(CompositeData cd, String itemName) {
         if (cd == null)
             throw new IllegalArgumentException("Null CompositeData");
 
--- a/jdk/src/java.management/share/classes/sun/management/ManagementFactory.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import java.lang.management.MemoryManagerMXBean;
-import java.lang.management.MemoryPoolMXBean;
-import java.lang.management.GarbageCollectorMXBean;
-
-/**
- * ManagementFactory class provides the methods that the HotSpot VM
- * will invoke. So the class and method names cannot be renamed.
- */
-class ManagementFactory {
-    private ManagementFactory() {};
-
-    // Invoked by the VM
-    private static MemoryPoolMXBean createMemoryPool
-        (String name, boolean isHeap, long uThreshold, long gcThreshold) {
-        return new MemoryPoolImpl(name, isHeap, uThreshold, gcThreshold);
-    }
-
-    private static MemoryManagerMXBean createMemoryManager(String name) {
-        return new MemoryManagerImpl(name);
-    }
-
-    private static GarbageCollectorMXBean
-        createGarbageCollector(String name, String type) {
-
-        // ignore type parameter which is for future extension
-        return new GarbageCollectorImpl(name);
-    }
-}
--- a/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/ManagementFactoryHelper.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,8 +26,6 @@
 package sun.management;
 
 import java.lang.management.*;
-
-import javax.management.DynamicMBean;
 import javax.management.InstanceAlreadyExistsException;
 import javax.management.InstanceNotFoundException;
 import javax.management.MBeanServer;
@@ -38,30 +36,35 @@
 import java.security.AccessController;
 import java.security.PrivilegedActionException;
 import java.security.PrivilegedExceptionAction;
-
 import sun.util.logging.LoggingSupport;
-
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
-import com.sun.management.DiagnosticCommandMBean;
-import com.sun.management.HotSpotDiagnosticMXBean;
 
 /**
  * ManagementFactoryHelper provides static factory methods to create
  * instances of the management interface.
  */
 public class ManagementFactoryHelper {
+    static {
+        // make sure that the management lib is loaded within
+        // java.lang.management.ManagementFactory
+        sun.misc.Unsafe.getUnsafe().ensureClassInitialized(ManagementFactory.class);
+    }
+
+    private static final VMManagement jvm = new VMManagementImpl();
+
     private ManagementFactoryHelper() {};
 
-    private static VMManagement jvm;
+    public static VMManagement getVMManagement() {
+        return jvm;
+    }
 
     private static ClassLoadingImpl    classMBean = null;
     private static MemoryImpl          memoryMBean = null;
     private static ThreadImpl          threadMBean = null;
     private static RuntimeImpl         runtimeMBean = null;
     private static CompilationImpl     compileMBean = null;
-    private static OperatingSystemImpl osMBean = null;
+    private static BaseOperatingSystemImpl osMBean = null;
 
     public static synchronized ClassLoadingMXBean getClassLoadingMXBean() {
         if (classMBean == null) {
@@ -100,7 +103,7 @@
 
     public static synchronized OperatingSystemMXBean getOperatingSystemMXBean() {
         if (osMBean == null) {
-            osMBean = new OperatingSystemImpl(jvm);
+            osMBean = new BaseOperatingSystemImpl(jvm);
         }
         return osMBean;
     }
@@ -123,7 +126,7 @@
         return result;
     }
 
-    public static List<GarbageCollectorMXBean> getGarbageCollectorMXBeans() {
+     public static List<GarbageCollectorMXBean> getGarbageCollectorMXBeans() {
         MemoryManagerMXBean[]  mgrs = MemoryImpl.getMemoryManagers();
         List<GarbageCollectorMXBean> result = new ArrayList<>(mgrs.length);
         for (MemoryManagerMXBean m : mgrs) {
@@ -257,20 +260,11 @@
         };
     }
 
-    private static HotSpotDiagnostic hsDiagMBean = null;
     private static HotspotRuntime hsRuntimeMBean = null;
     private static HotspotClassLoading hsClassMBean = null;
     private static HotspotThread hsThreadMBean = null;
     private static HotspotCompilation hsCompileMBean = null;
     private static HotspotMemory hsMemoryMBean = null;
-    private static DiagnosticCommandImpl hsDiagCommandMBean = null;
-
-    public static synchronized HotSpotDiagnosticMXBean getDiagnosticMXBean() {
-        if (hsDiagMBean == null) {
-            hsDiagMBean = new HotSpotDiagnostic();
-        }
-        return hsDiagMBean;
-    }
 
     /**
      * This method is for testing only.
@@ -312,14 +306,6 @@
         return hsMemoryMBean;
     }
 
-    public static synchronized DiagnosticCommandMBean getDiagnosticCommandMBean() {
-        // Remote Diagnostic Commands may not be supported
-        if (hsDiagCommandMBean == null && jvm.isRemoteDiagnosticCommandsSupported()) {
-            hsDiagCommandMBean = new DiagnosticCommandImpl(jvm);
-        }
-        return hsDiagCommandMBean;
-    }
-
     /**
      * This method is for testing only.
      */
@@ -374,18 +360,6 @@
     private final static String HOTSPOT_THREAD_MBEAN_NAME =
         "sun.management:type=HotspotThreading";
 
-    final static String HOTSPOT_DIAGNOSTIC_COMMAND_MBEAN_NAME =
-        "com.sun.management:type=DiagnosticCommand";
-
-    public static HashMap<ObjectName, DynamicMBean> getPlatformDynamicMBeans() {
-        HashMap<ObjectName, DynamicMBean> map = new HashMap<>();
-        DiagnosticCommandMBean diagMBean = getDiagnosticCommandMBean();
-        if (diagMBean != null) {
-            map.put(Util.newObjectName(HOTSPOT_DIAGNOSTIC_COMMAND_MBEAN_NAME), diagMBean);
-        }
-        return map;
-    }
-
     static void registerInternalMBeans(MBeanServer mbs) {
         // register all internal MBeans if not registered
         // No exception is thrown if a MBean with that object name
@@ -441,17 +415,6 @@
         }
     }
 
-    static {
-        AccessController.doPrivileged(
-            new java.security.PrivilegedAction<Void>() {
-                public Void run() {
-                    System.loadLibrary("management");
-                    return null;
-                }
-            });
-        jvm = new VMManagementImpl();
-    }
-
     public static boolean isThreadSuspended(int state) {
         return ((state & JMM_THREAD_STATE_FLAG_SUSPENDED) != 0);
     }
@@ -471,4 +434,20 @@
     private static final int JMM_THREAD_STATE_FLAG_SUSPENDED = 0x00100000;
     private static final int JMM_THREAD_STATE_FLAG_NATIVE = 0x00400000;
 
+    // Invoked by the VM
+    private static MemoryPoolMXBean createMemoryPool
+        (String name, boolean isHeap, long uThreshold, long gcThreshold) {
+        return new MemoryPoolImpl(name, isHeap, uThreshold, gcThreshold);
+    }
+
+    private static MemoryManagerMXBean createMemoryManager(String name) {
+        return new MemoryManagerImpl(name);
+    }
+
+    private static GarbageCollectorMXBean
+        createGarbageCollector(String name, String type) {
+
+        // ignore type parameter which is for future extension
+        return new GarbageCollectorImpl(name);
+    }
 }
--- a/jdk/src/java.management/share/classes/sun/management/MappedMXBeanType.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/MappedMXBeanType.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,10 +38,8 @@
 import java.security.PrivilegedAction;
 import java.security.PrivilegedActionException;
 import java.security.PrivilegedExceptionAction;
-import javax.management.*;
 import javax.management.openmbean.*;
 import static javax.management.openmbean.SimpleType.*;
-import com.sun.management.VMOption;
 
 /**
  * A mapped mxbean type maps a Java type to an open type.
@@ -113,7 +111,7 @@
         return mt;
     }
 
-    static synchronized MappedMXBeanType getMappedType(Type t)
+    public static synchronized MappedMXBeanType getMappedType(Type t)
             throws OpenDataException {
         MappedMXBeanType mt = convertedTypes.get(t);
         if (mt == null) {
@@ -152,7 +150,7 @@
     }
 
     // Return the mapped open type
-    OpenType<?> getOpenType() {
+    public OpenType<?> getOpenType() {
         return openType;
     }
 
@@ -177,10 +175,10 @@
     // return name of the class or the generic type
     abstract String getName();
 
-    abstract Object toOpenTypeData(Object javaTypeData)
+    public abstract Object toOpenTypeData(Object javaTypeData)
         throws OpenDataException;
 
-    abstract Object toJavaTypeData(Object openTypeData)
+    public abstract Object toJavaTypeData(Object openTypeData)
         throws OpenDataException, InvalidObjectException;
 
     // Basic Types - Classes that do not require data conversion
@@ -208,11 +206,11 @@
             return basicType.getName();
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
             return data;
         }
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             return data;
@@ -243,11 +241,11 @@
             return enumClass.getName();
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
             return ((Enum) data).name();
         }
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             try {
@@ -315,7 +313,7 @@
             return arrayClass.getName();
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
             // If the base element type is a basic type
             // return the data as no conversion is needed.
             // Primitive types are not converted to wrappers.
@@ -340,7 +338,7 @@
         }
 
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             // If the base element type is a basic type
@@ -457,7 +455,7 @@
             return typeName;
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
             final List<Object> list = (List<Object>) data;
 
             final Object[] openArray = (Object[])
@@ -470,7 +468,7 @@
             return openArray;
         }
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             final Object[] openArray = (Object[]) data;
@@ -538,7 +536,7 @@
             return typeName;
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
             final Map<Object,Object> map = (Map<Object,Object>) data;
             final TabularType tabularType = (TabularType) openType;
             final TabularData table = new TabularDataSupport(tabularType);
@@ -556,7 +554,7 @@
             return table;
         }
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             final TabularData td = (TabularData) data;
@@ -605,8 +603,9 @@
     //
     static class CompositeDataMXBeanType extends MappedMXBeanType {
         final Class<?> javaClass;
-        final boolean isCompositeData;
+        boolean isCompositeData = false;
         Method fromMethod = null;
+        Method toMethod = null;
 
         CompositeDataMXBeanType(Class<?> c) throws OpenDataException {
             this.javaClass = c;
@@ -624,6 +623,26 @@
                 // that has no from method to be embeded in another class.
             }
 
+            // check if a static "toCompositeData" method exists
+            try {
+                toMethod = AccessController.doPrivileged(new PrivilegedExceptionAction<Method>() {
+                    public Method run() throws NoSuchMethodException {
+                        Method m = javaClass.getDeclaredMethod("toCompositeData", javaClass);
+                        if (m != null
+                                && CompositeData.class.isAssignableFrom(m.getReturnType())
+                                && Modifier.isStatic(m.getModifiers())) {
+                            m.setAccessible(true);
+                            return m;
+                        } else {
+                            return null;
+                        }
+                    }
+                });
+            } catch (PrivilegedActionException e) {
+                // ignore NoSuchMethodException since we allow classes
+                // that has no from method to be embeded in another class.
+            }
+
             if (COMPOSITE_DATA_CLASS.isAssignableFrom(c)) {
                 // c implements CompositeData - set openType to null
                 // defer generating the CompositeType
@@ -636,16 +655,16 @@
                 // Make a CompositeData containing all the getters
                 final Method[] methods =
                     AccessController.doPrivileged(new PrivilegedAction<Method[]>() {
-                        public Method[] run() {
-                            return javaClass.getMethods();
-                        }
-                    });
+                            public Method[] run() {
+                                return javaClass.getMethods();
+                            }
+                        });
                 final List<String> names = new ArrayList<>();
                 final List<OpenType<?>> types = new ArrayList<>();
 
                 /* Select public methods that look like "T getX()" or "boolean
-                   isX()", where T is not void and X is not the empty
-                   string.  Exclude "Class getClass()" inherited from Object.  */
+                 isX()", where T is not void and X is not the empty
+                 string.  Exclude "Class getClass()" inherited from Object.  */
                 for (int i = 0; i < methods.length; i++) {
                     final Method method = methods[i];
                     final String name = method.getName();
@@ -676,10 +695,10 @@
 
                 final String[] nameArray = names.toArray(new String[0]);
                 openType = new CompositeType(c.getName(),
-                                             c.getName(),
-                                             nameArray, // field names
-                                             nameArray, // field descriptions
-                                             types.toArray(new OpenType<?>[0]));
+                        c.getName(),
+                        nameArray, // field names
+                        nameArray, // field descriptions
+                        types.toArray(new OpenType<?>[0]));
             }
         }
 
@@ -691,7 +710,23 @@
             return javaClass.getName();
         }
 
-        Object toOpenTypeData(Object data) throws OpenDataException {
+        public Object toOpenTypeData(Object data) throws OpenDataException {
+            if (toMethod != null) {
+                try {
+                    return toMethod.invoke(null, data);
+                } catch (IllegalAccessException e) {
+                    // should never reach here
+                    throw new AssertionError(e);
+                } catch (InvocationTargetException e) {
+                    final OpenDataException ode
+                            = new OpenDataException("Failed to invoke "
+                                    + toMethod.getName() + " to convert " + javaClass.getName()
+                                    + " to CompositeData");
+                    ode.initCause(e);
+                    throw ode;
+                }
+            }
+
             if (data instanceof MemoryUsage) {
                 return MemoryUsageCompositeData.toCompositeData((MemoryUsage) data);
             }
@@ -712,10 +747,6 @@
                     toCompositeData((MemoryNotificationInfo) data);
             }
 
-            if (data instanceof VMOption) {
-                return VMOptionCompositeData.toCompositeData((VMOption) data);
-            }
-
             if (isCompositeData) {
                 // Classes that implement CompositeData
                 //
@@ -732,7 +763,7 @@
                 " is not supported for platform MXBeans");
         }
 
-        Object toJavaTypeData(Object data)
+        public Object toJavaTypeData(Object data)
             throws OpenDataException, InvalidObjectException {
 
             if (fromMethod == null) {
--- a/jdk/src/java.management/share/classes/sun/management/NotificationEmitterSupport.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/NotificationEmitterSupport.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,13 +34,12 @@
 
 import java.util.List;
 import java.util.ArrayList;
-import java.util.ListIterator;
 import java.util.Collections;
 
 /**
  * Abstract helper class for notification emitter support.
  */
-abstract class NotificationEmitterSupport implements NotificationEmitter {
+public abstract class NotificationEmitterSupport implements NotificationEmitter {
 
     protected NotificationEmitterSupport() {
     }
@@ -135,7 +134,7 @@
         }
     }
 
-    void sendNotification(Notification notification) {
+    public void sendNotification(Notification notification) {
 
         if (notification == null) {
             return;
@@ -162,7 +161,7 @@
         }
     }
 
-    boolean hasListeners() {
+    public boolean hasListeners() {
         synchronized (listenerLock) {
             return !listenerList.isEmpty();
         }
--- a/jdk/src/java.management/share/classes/sun/management/ThreadImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/ThreadImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,20 +26,18 @@
 package sun.management;
 
 import java.lang.management.ManagementFactory;
-
 import java.lang.management.ThreadInfo;
-
+import java.lang.management.ThreadMXBean;
 import javax.management.ObjectName;
 
 /**
- * Implementation class for the thread subsystem.
- * Standard and committed hotspot-specific metrics if any.
- *
- * ManagementFactory.getThreadMXBean() returns an instance
- * of this class.
+ * Implementation for java.lang.management.ThreadMXBean as well as providing the
+ * supporting method for com.sun.management.ThreadMXBean.
+ * The supporting method for com.sun.management.ThreadMXBean can be moved to
+ * jdk.management in the future.
  */
-class ThreadImpl implements com.sun.management.ThreadMXBean {
 
+public class ThreadImpl implements ThreadMXBean {
     private final VMManagement jvm;
 
     // default for thread contention monitoring is disabled.
@@ -50,32 +48,38 @@
     /**
      * Constructor of ThreadImpl class.
      */
-    ThreadImpl(VMManagement vm) {
+    protected ThreadImpl(VMManagement vm) {
         this.jvm = vm;
         this.cpuTimeEnabled = jvm.isThreadCpuTimeEnabled();
         this.allocatedMemoryEnabled = jvm.isThreadAllocatedMemoryEnabled();
     }
 
+    @Override
     public int getThreadCount() {
         return jvm.getLiveThreadCount();
     }
 
+    @Override
     public int getPeakThreadCount() {
         return jvm.getPeakThreadCount();
     }
 
+    @Override
     public long getTotalStartedThreadCount() {
         return jvm.getTotalThreadCount();
     }
 
+    @Override
     public int getDaemonThreadCount() {
         return jvm.getDaemonThreadCount();
     }
 
+    @Override
     public boolean isThreadContentionMonitoringSupported() {
         return jvm.isThreadContentionMonitoringSupported();
     }
 
+    @Override
     public synchronized boolean isThreadContentionMonitoringEnabled() {
        if (!isThreadContentionMonitoringSupported()) {
             throw new UnsupportedOperationException(
@@ -84,18 +88,21 @@
         return contentionMonitoringEnabled;
     }
 
+    @Override
     public boolean isThreadCpuTimeSupported() {
         return jvm.isOtherThreadCpuTimeSupported();
     }
 
+    @Override
     public boolean isCurrentThreadCpuTimeSupported() {
         return jvm.isCurrentThreadCpuTimeSupported();
     }
 
-    public boolean isThreadAllocatedMemorySupported() {
+    protected boolean isThreadAllocatedMemorySupported() {
         return jvm.isThreadAllocatedMemorySupported();
     }
 
+    @Override
     public boolean isThreadCpuTimeEnabled() {
         if (!isThreadCpuTimeSupported() &&
             !isCurrentThreadCpuTimeSupported()) {
@@ -105,7 +112,7 @@
         return cpuTimeEnabled;
     }
 
-    public boolean isThreadAllocatedMemoryEnabled() {
+    protected boolean isThreadAllocatedMemoryEnabled() {
         if (!isThreadAllocatedMemorySupported()) {
             throw new UnsupportedOperationException(
                 "Thread allocated memory measurement is not supported");
@@ -113,6 +120,7 @@
         return allocatedMemoryEnabled;
     }
 
+    @Override
     public long[] getAllThreadIds() {
         Util.checkMonitorAccess();
 
@@ -126,6 +134,7 @@
         return ids;
     }
 
+    @Override
     public ThreadInfo getThreadInfo(long id) {
         long[] ids = new long[1];
         ids[0] = id;
@@ -133,6 +142,7 @@
         return infos[0];
     }
 
+    @Override
     public ThreadInfo getThreadInfo(long id, int maxDepth) {
         long[] ids = new long[1];
         ids[0] = id;
@@ -140,6 +150,7 @@
         return infos[0];
     }
 
+    @Override
     public ThreadInfo[] getThreadInfo(long[] ids) {
         return getThreadInfo(ids, 0);
     }
@@ -157,6 +168,7 @@
         }
     }
 
+    @Override
     public ThreadInfo[] getThreadInfo(long[] ids, int maxDepth) {
         verifyThreadIds(ids);
 
@@ -165,6 +177,10 @@
                 "Invalid maxDepth parameter: " + maxDepth);
         }
 
+        // ids has been verified to be non-null
+        // an empty array of ids should return an empty array of ThreadInfos
+        if (ids.length == 0) return new ThreadInfo[0];
+
         Util.checkMonitorAccess();
 
         ThreadInfo[] infos = new ThreadInfo[ids.length]; // nulls
@@ -176,6 +192,7 @@
         return infos;
     }
 
+    @Override
     public void setThreadContentionMonitoringEnabled(boolean enable) {
         if (!isThreadContentionMonitoringSupported()) {
             throw new UnsupportedOperationException(
@@ -209,6 +226,7 @@
         return isThreadCpuTimeEnabled();
     }
 
+    @Override
     public long getCurrentThreadCpuTime() {
         if (verifyCurrentThreadCpuTime()) {
             return getThreadTotalCpuTime0(0);
@@ -216,6 +234,7 @@
         return -1;
     }
 
+    @Override
     public long getThreadCpuTime(long id) {
         long[] ids = new long[1];
         ids[0] = id;
@@ -247,7 +266,7 @@
         return isThreadCpuTimeEnabled();
     }
 
-    public long[] getThreadCpuTime(long[] ids) {
+    protected long[] getThreadCpuTime(long[] ids) {
         boolean verified = verifyThreadCpuTime(ids);
 
         int length = ids.length;
@@ -268,6 +287,7 @@
         return times;
     }
 
+    @Override
     public long getCurrentThreadUserTime() {
         if (verifyCurrentThreadCpuTime()) {
             return getThreadUserCpuTime0(0);
@@ -275,6 +295,7 @@
         return -1;
     }
 
+    @Override
     public long getThreadUserTime(long id) {
         long[] ids = new long[1];
         ids[0] = id;
@@ -282,7 +303,7 @@
         return times[0];
     }
 
-    public long[] getThreadUserTime(long[] ids) {
+    protected long[] getThreadUserTime(long[] ids) {
         boolean verified = verifyThreadCpuTime(ids);
 
         int length = ids.length;
@@ -303,6 +324,7 @@
         return times;
     }
 
+    @Override
     public void setThreadCpuTimeEnabled(boolean enable) {
         if (!isThreadCpuTimeSupported() &&
             !isCurrentThreadCpuTimeSupported()) {
@@ -320,7 +342,7 @@
         }
     }
 
-    public long getThreadAllocatedBytes(long id) {
+    protected long getThreadAllocatedBytes(long id) {
         long[] ids = new long[1];
         ids[0] = id;
         final long[] sizes = getThreadAllocatedBytes(ids);
@@ -339,7 +361,7 @@
         return isThreadAllocatedMemoryEnabled();
     }
 
-    public long[] getThreadAllocatedBytes(long[] ids) {
+    protected long[] getThreadAllocatedBytes(long[] ids) {
         boolean verified = verifyThreadAllocatedMemory(ids);
 
         long[] sizes = new long[ids.length];
@@ -351,7 +373,7 @@
         return sizes;
     }
 
-    public void setThreadAllocatedMemoryEnabled(boolean enable) {
+    protected void setThreadAllocatedMemoryEnabled(boolean enable) {
         if (!isThreadAllocatedMemorySupported()) {
             throw new UnsupportedOperationException(
                 "Thread allocated memory measurement is not supported.");
@@ -367,6 +389,7 @@
         }
     }
 
+    @Override
     public long[] findMonitorDeadlockedThreads() {
         Util.checkMonitorAccess();
 
@@ -383,6 +406,7 @@
         return ids;
     }
 
+    @Override
     public long[] findDeadlockedThreads() {
         if (!isSynchronizerUsageSupported()) {
             throw new UnsupportedOperationException(
@@ -404,15 +428,18 @@
         return ids;
     }
 
+    @Override
     public void resetPeakThreadCount() {
         Util.checkControlAccess();
         resetPeakThreadCount0();
     }
 
+    @Override
     public boolean isObjectMonitorUsageSupported() {
         return jvm.isObjectMonitorUsageSupported();
     }
 
+    @Override
     public boolean isSynchronizerUsageSupported() {
         return jvm.isSynchronizerUsageSupported();
     }
@@ -432,14 +459,20 @@
         Util.checkMonitorAccess();
     }
 
+    @Override
     public ThreadInfo[] getThreadInfo(long[] ids,
                                       boolean lockedMonitors,
                                       boolean lockedSynchronizers) {
         verifyThreadIds(ids);
+        // ids has been verified to be non-null
+        // an empty array of ids should return an empty array of ThreadInfos
+        if (ids.length == 0) return new ThreadInfo[0];
+
         verifyDumpThreads(lockedMonitors, lockedSynchronizers);
         return dumpThreads0(ids, lockedMonitors, lockedSynchronizers);
     }
 
+    @Override
     public ThreadInfo[] dumpAllThreads(boolean lockedMonitors,
                                        boolean lockedSynchronizers) {
         verifyDumpThreads(lockedMonitors, lockedSynchronizers);
@@ -469,6 +502,7 @@
     // tid == 0 to reset contention times for all threads
     private static native void resetContentionTimes0(long tid);
 
+    @Override
     public ObjectName getObjectName() {
         return Util.newObjectName(ManagementFactory.THREAD_MXBEAN_NAME);
     }
--- a/jdk/src/java.management/share/classes/sun/management/Util.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/Util.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -81,7 +81,7 @@
     static void checkMonitorAccess() throws SecurityException {
         checkAccess(monitorPermission);
     }
-    static void checkControlAccess() throws SecurityException {
+    public static void checkControlAccess() throws SecurityException {
         checkAccess(controlPermission);
     }
 }
--- a/jdk/src/java.management/share/classes/sun/management/VMOptionCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,133 +0,0 @@
-/*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import com.sun.management.VMOption;
-import com.sun.management.VMOption.Origin;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataSupport;
-import javax.management.openmbean.OpenDataException;
-
-/**
- * A CompositeData for VMOption for the local management support.
- * This class avoids the performance penalty paid to the
- * construction of a CompositeData use in the local case.
- */
-public class VMOptionCompositeData extends LazyCompositeData {
-    private final VMOption option;
-
-    private VMOptionCompositeData(VMOption option) {
-        this.option = option;
-    }
-
-    public VMOption getVMOption() {
-        return option;
-    }
-
-    public static CompositeData toCompositeData(VMOption option) {
-        VMOptionCompositeData vcd = new VMOptionCompositeData(option);
-        return vcd.getCompositeData();
-    }
-
-    protected CompositeData getCompositeData() {
-        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
-        // vmOptionItemNames!
-        final Object[] vmOptionItemValues = {
-            option.getName(),
-            option.getValue(),
-            option.isWriteable(),
-            option.getOrigin().toString(),
-        };
-
-        try {
-            return new CompositeDataSupport(vmOptionCompositeType,
-                                            vmOptionItemNames,
-                                            vmOptionItemValues);
-        } catch (OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    private static final CompositeType vmOptionCompositeType;
-    static {
-        try {
-            vmOptionCompositeType = (CompositeType)
-                MappedMXBeanType.toOpenType(VMOption.class);
-        } catch (OpenDataException e) {
-            // Should never reach here
-            throw new AssertionError(e);
-        }
-    }
-
-    static CompositeType getVMOptionCompositeType() {
-        return vmOptionCompositeType;
-    }
-
-    private static final String NAME      = "name";
-    private static final String VALUE     = "value";
-    private static final String WRITEABLE = "writeable";
-    private static final String ORIGIN    = "origin";
-
-    private static final String[] vmOptionItemNames = {
-        NAME,
-        VALUE,
-        WRITEABLE,
-        ORIGIN,
-    };
-
-    public static String getName(CompositeData cd) {
-        return getString(cd, NAME);
-    }
-    public static String getValue(CompositeData cd) {
-        return getString(cd, VALUE);
-    }
-    public static Origin getOrigin(CompositeData cd) {
-        String o = getString(cd, ORIGIN);
-        return Enum.valueOf(Origin.class, o);
-    }
-    public static boolean isWriteable(CompositeData cd) {
-        return getBoolean(cd, WRITEABLE);
-    }
-
-    /** Validate if the input CompositeData has the expected
-     * CompositeType (i.e. contain all attributes with expected
-     * names and types).
-     */
-    public static void validateCompositeData(CompositeData cd) {
-        if (cd == null) {
-            throw new NullPointerException("Null CompositeData");
-        }
-
-        if (!isTypeMatched(vmOptionCompositeType, cd.getCompositeType())) {
-            throw new IllegalArgumentException(
-                "Unexpected composite type for VMOption");
-        }
-    }
-
-    private static final long serialVersionUID = -2395573975093578470L;
-}
--- a/jdk/src/java.management/share/classes/sun/management/spi/PlatformMBeanProvider.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/classes/sun/management/spi/PlatformMBeanProvider.java	Wed Jul 05 20:32:21 2017 +0200
@@ -205,7 +205,7 @@
      * Instantiates a new PlatformMBeanProvider.
      *
      * @throws SecurityException if the subclass (and calling code) does not
-     *    have {@code RuntimePermission("sun.management.spi.PlatformMBeanProvider", "subclass")}
+     *    have {@code RuntimePermission("sun.management.spi.PlatformMBeanProvider.subclass")}
      */
     protected PlatformMBeanProvider () {
         this(checkSubclassPermission());
@@ -226,7 +226,7 @@
     private static Void checkSubclassPermission() {
         SecurityManager sm = System.getSecurityManager();
         if (sm != null) {
-            sm.checkPermission(new RuntimePermission(PlatformMBeanProvider.class.getName(), "subclass"));
+            sm.checkPermission(new RuntimePermission(PlatformMBeanProvider.class.getName()+".subclass"));
         }
         return null;
     }
--- a/jdk/src/java.management/share/native/libmanagement/DiagnosticCommandImpl.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,194 +0,0 @@
-/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <stdlib.h>
-#include <jni.h>
-#include "management.h"
-#include "sun_management_DiagnosticCommandImpl.h"
-
-JNIEXPORT void JNICALL Java_sun_management_DiagnosticCommandImpl_setNotificationEnabled
-(JNIEnv *env, jobject dummy, jboolean enabled) {
-    if (jmm_version <= JMM_VERSION_1_2_2) {
-        JNU_ThrowByName(env, "java/lang/UnsupportedOperationException",
-                        "JMX interface to diagnostic framework notifications is not supported by this VM");
-        return;
-    }
-    jmm_interface->SetDiagnosticFrameworkNotificationEnabled(env, enabled);
-}
-
-JNIEXPORT jobjectArray JNICALL
-Java_sun_management_DiagnosticCommandImpl_getDiagnosticCommands
-  (JNIEnv *env, jobject dummy)
-{
-  return jmm_interface->GetDiagnosticCommands(env);
-}
-
-jobject getDiagnosticCommandArgumentInfoArray(JNIEnv *env, jstring command,
-                                              int num_arg) {
-  int i;
-  jobject obj;
-  jobjectArray result;
-  dcmdArgInfo* dcmd_arg_info_array;
-  jclass dcmdArgInfoCls;
-  jclass arraysCls;
-  jmethodID mid;
-  jobject resultList;
-
-  dcmd_arg_info_array = (dcmdArgInfo*) malloc(num_arg * sizeof(dcmdArgInfo));
-  /* According to ISO C it is perfectly legal for malloc to return zero if called with a zero argument */
-  if (dcmd_arg_info_array == NULL && num_arg != 0) {
-    return NULL;
-  }
-  jmm_interface->GetDiagnosticCommandArgumentsInfo(env, command,
-                                                   dcmd_arg_info_array);
-  dcmdArgInfoCls = (*env)->FindClass(env,
-                                     "sun/management/DiagnosticCommandArgumentInfo");
-  if ((*env)->ExceptionCheck(env)) {
-    free(dcmd_arg_info_array);
-    return NULL;
-  }
-
-  result = (*env)->NewObjectArray(env, num_arg, dcmdArgInfoCls, NULL);
-  if (result == NULL) {
-    free(dcmd_arg_info_array);
-    return NULL;
-  }
-  for (i=0; i<num_arg; i++) {
-    obj = JNU_NewObjectByName(env,
-                              "sun/management/DiagnosticCommandArgumentInfo",
-                              "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZI)V",
-                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].name),
-                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].description),
-                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].type),
-                              dcmd_arg_info_array[i].default_string == NULL ? NULL:
-                              (*env)->NewStringUTF(env, dcmd_arg_info_array[i].default_string),
-                              dcmd_arg_info_array[i].mandatory,
-                              dcmd_arg_info_array[i].option,
-                              dcmd_arg_info_array[i].multiple,
-                              dcmd_arg_info_array[i].position);
-    if (obj == NULL) {
-      free(dcmd_arg_info_array);
-      return NULL;
-    }
-    (*env)->SetObjectArrayElement(env, result, i, obj);
-  }
-  free(dcmd_arg_info_array);
-  arraysCls = (*env)->FindClass(env, "java/util/Arrays");
-  if ((*env)->ExceptionCheck(env)) {
-    return NULL;
-  }
-  mid = (*env)->GetStaticMethodID(env, arraysCls,
-                                  "asList", "([Ljava/lang/Object;)Ljava/util/List;");
-  resultList = (*env)->CallStaticObjectMethod(env, arraysCls, mid, result);
-  if ((*env)->ExceptionCheck(env)) {
-    // Make sure we return NULL in case of OOM inside Java
-    return NULL;
-  }
-  return resultList;
-}
-
-/* Throws IllegalArgumentException if at least one of the diagnostic command
- * passed in argument is not supported by the JVM
- */
-JNIEXPORT jobjectArray JNICALL
-Java_sun_management_DiagnosticCommandImpl_getDiagnosticCommandInfo
-(JNIEnv *env, jobject dummy, jobjectArray commands)
-{
-  int i;
-  jclass dcmdInfoCls;
-  jobject result;
-  jobjectArray args;
-  jobject obj;
-  jmmOptionalSupport mos;
-  jint ret = jmm_interface->GetOptionalSupport(env, &mos);
-  jsize num_commands;
-  dcmdInfo* dcmd_info_array;
-
-  if (commands == NULL) {
-      JNU_ThrowNullPointerException(env, "Invalid String Array");
-      return NULL;
-  }
-  num_commands = (*env)->GetArrayLength(env, commands);
-  dcmdInfoCls = (*env)->FindClass(env,
-                                  "sun/management/DiagnosticCommandInfo");
-  if ((*env)->ExceptionCheck(env)) {
-    return NULL;
-  }
-
-  result = (*env)->NewObjectArray(env, num_commands, dcmdInfoCls, NULL);
-  if (result == NULL) {
-      JNU_ThrowOutOfMemoryError(env, 0);
-      return NULL;
-  }
-  if (num_commands == 0) {
-      /* Handle the 'zero commands' case specially to avoid calling 'malloc()' */
-      /* with a zero argument because that may legally return a NULL pointer.  */
-      return result;
-  }
-  dcmd_info_array = (dcmdInfo*) malloc(num_commands * sizeof(dcmdInfo));
-  if (dcmd_info_array == NULL) {
-      JNU_ThrowOutOfMemoryError(env, NULL);
-      return NULL;
-  }
-  jmm_interface->GetDiagnosticCommandInfo(env, commands, dcmd_info_array);
-  for (i=0; i<num_commands; i++) {
-      args = getDiagnosticCommandArgumentInfoArray(env,
-                                                   (*env)->GetObjectArrayElement(env,commands,i),
-                                                   dcmd_info_array[i].num_arguments);
-      if (args == NULL) {
-          free(dcmd_info_array);
-          JNU_ThrowOutOfMemoryError(env, 0);
-          return NULL;
-      }
-      obj = JNU_NewObjectByName(env,
-                                "sun/management/DiagnosticCommandInfo",
-                                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/util/List;)V",
-                                (*env)->NewStringUTF(env,dcmd_info_array[i].name),
-                                (*env)->NewStringUTF(env,dcmd_info_array[i].description),
-                                (*env)->NewStringUTF(env,dcmd_info_array[i].impact),
-                                dcmd_info_array[i].permission_class==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_class),
-                                dcmd_info_array[i].permission_name==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_name),
-                                dcmd_info_array[i].permission_action==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_action),
-                                dcmd_info_array[i].enabled,
-                                args);
-      if (obj == NULL) {
-          free(dcmd_info_array);
-          JNU_ThrowOutOfMemoryError(env, 0);
-          return NULL;
-      }
-      (*env)->SetObjectArrayElement(env, result, i, obj);
-  }
-  free(dcmd_info_array);
-  return result;
-}
-
-/* Throws IllegalArgumentException if the diagnostic command
- * passed in argument is not supported by the JVM
- */
-JNIEXPORT jstring JNICALL
-Java_sun_management_DiagnosticCommandImpl_executeDiagnosticCommand
-(JNIEnv *env, jobject dummy, jstring command) {
-  return jmm_interface->ExecuteDiagnosticCommand(env, command);
-}
--- a/jdk/src/java.management/share/native/libmanagement/Flag.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,236 +0,0 @@
-/*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <jni.h>
-#include "management.h"
-#include "sun_management_Flag.h"
-
-static jobject default_origin = NULL;
-static jobject vm_creation_origin = NULL;
-static jobject mgmt_origin = NULL;
-static jobject envvar_origin = NULL;
-static jobject config_file_origin = NULL;
-static jobject ergo_origin = NULL;
-static jobject attach_origin = NULL;
-static jobject other_origin = NULL;
-
-JNIEXPORT jint JNICALL
-Java_sun_management_Flag_getInternalFlagCount
-  (JNIEnv *env, jclass cls)
-{
-    jlong count = jmm_interface->GetLongAttribute(env, NULL,
-                                                  JMM_VM_GLOBAL_COUNT);
-    return (jint) count;
-}
-
-JNIEXPORT jobjectArray JNICALL
-  Java_sun_management_Flag_getAllFlagNames
-(JNIEnv *env, jclass cls)
-{
-  return jmm_interface->GetVMGlobalNames(env);
-}
-
-static jobject find_origin_constant(JNIEnv* env, const char* enum_name) {
-    jvalue field;
-    field = JNU_GetStaticFieldByName(env,
-                                     NULL,
-                                     "com/sun/management/VMOption$Origin",
-                                     enum_name,
-                                     "Lcom/sun/management/VMOption$Origin;");
-    return (*env)->NewGlobalRef(env, field.l);
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_Flag_initialize
-  (JNIEnv *env, jclass cls)
-{
-    default_origin = find_origin_constant(env, "DEFAULT");
-    vm_creation_origin = find_origin_constant(env, "VM_CREATION");
-    mgmt_origin = find_origin_constant(env, "MANAGEMENT");
-    envvar_origin = find_origin_constant(env, "ENVIRON_VAR");
-    config_file_origin = find_origin_constant(env, "CONFIG_FILE");
-    ergo_origin = find_origin_constant(env, "ERGONOMIC");
-    attach_origin = find_origin_constant(env, "ATTACH_ON_DEMAND");
-    other_origin = find_origin_constant(env, "OTHER");
-}
-
-JNIEXPORT jint JNICALL
-Java_sun_management_Flag_getFlags
-  (JNIEnv *env, jclass cls, jobjectArray names, jobjectArray flags, jint count)
-{
-    jint num_flags, i, index;
-    jmmVMGlobal* globals;
-    size_t gsize;
-    const char* class_name = "sun/management/Flag";
-    const char* signature = "(Ljava/lang/String;Ljava/lang/Object;ZZLcom/sun/management/VMOption$Origin;)V";
-    jobject origin;
-    jobject valueObj;
-    jobject flag;
-
-    if (flags == NULL) {
-        JNU_ThrowNullPointerException(env, 0);
-        return 0;
-    }
-
-    if (count <= 0) {
-        JNU_ThrowIllegalArgumentException(env, 0);
-        return 0;
-    }
-
-    gsize = (size_t)count * sizeof(jmmVMGlobal);
-    globals = (jmmVMGlobal*) malloc(gsize);
-    if (globals == NULL) {
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return 0;
-    }
-
-    memset(globals, 0, gsize);
-    num_flags = jmm_interface->GetVMGlobals(env, names, globals, count);
-    if (num_flags == 0) {
-        free(globals);
-        return 0;
-    }
-
-    index = 0;
-    for (i = 0; i < count; i++) {
-        if (globals[i].name == NULL) {
-            continue;
-        }
-        switch (globals[i].type) {
-        case JMM_VMGLOBAL_TYPE_JBOOLEAN:
-            valueObj = JNU_NewObjectByName(env, "java/lang/Boolean", "(Z)V",
-                                           globals[i].value.z);
-            break;
-        case JMM_VMGLOBAL_TYPE_JSTRING:
-            valueObj = globals[i].value.l;
-            break;
-        case JMM_VMGLOBAL_TYPE_JLONG:
-            valueObj = JNU_NewObjectByName(env, "java/lang/Long", "(J)V",
-                                           globals[i].value.j);
-            break;
-        case JMM_VMGLOBAL_TYPE_JDOUBLE:
-            valueObj = JNU_NewObjectByName(env, "java/lang/Double", "(D)V",
-                                           globals[i].value.d);
-            break;
-        default:
-            // ignore unsupported type
-            continue;
-        }
-        switch (globals[i].origin) {
-        case JMM_VMGLOBAL_ORIGIN_DEFAULT:
-            origin = default_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_COMMAND_LINE:
-            origin = vm_creation_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_MANAGEMENT:
-            origin = mgmt_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_ENVIRON_VAR:
-            origin = envvar_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_CONFIG_FILE:
-            origin = config_file_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_ERGONOMIC:
-            origin = ergo_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_ATTACH_ON_DEMAND:
-            origin = attach_origin;
-            break;
-        case JMM_VMGLOBAL_ORIGIN_OTHER:
-            origin = other_origin;
-            break;
-        default:
-            // unknown origin
-            origin = other_origin;
-            break;
-        }
-        flag = JNU_NewObjectByName(env, class_name, signature, globals[i].name,
-                                   valueObj, globals[i].writeable,
-                                   globals[i].external, origin);
-        if (flag == NULL) {
-            free(globals);
-            JNU_ThrowOutOfMemoryError(env, 0);
-            return 0;
-        }
-        (*env)->SetObjectArrayElement(env, flags, index, flag);
-        index++;
-    }
-
-    if (index != num_flags) {
-        JNU_ThrowInternalError(env, "Number of Flag objects created unmatched");
-        free(globals);
-        return 0;
-    }
-
-    free(globals);
-
-    /* return the number of Flag objects created */
-    return num_flags;
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_Flag_setLongValue
-  (JNIEnv *env, jclass cls, jstring name, jlong value)
-{
-   jvalue v;
-   v.j = value;
-
-   jmm_interface->SetVMGlobal(env, name, v);
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_Flag_setDoubleValue
-  (JNIEnv *env, jclass cls, jstring name, jdouble value)
-{
-   jvalue v;
-   v.d = value;
-
-   jmm_interface->SetVMGlobal(env, name, v);
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_Flag_setBooleanValue
-  (JNIEnv *env, jclass cls, jstring name, jboolean value)
-{
-   jvalue v;
-   v.z = value;
-
-   jmm_interface->SetVMGlobal(env, name, v);
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_Flag_setStringValue
-  (JNIEnv *env, jclass cls, jstring name, jstring value)
-{
-   jvalue v;
-   v.l = value;
-
-   jmm_interface->SetVMGlobal(env, name, v);
-}
--- a/jdk/src/java.management/share/native/libmanagement/GarbageCollectorImpl.c	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.management/share/native/libmanagement/GarbageCollectorImpl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -36,17 +36,3 @@
   (JNIEnv *env, jobject mgr) {
     return jmm_interface->GetLongAttribute(env, mgr, JMM_GC_TIME_MS);
 }
-
-
-JNIEXPORT void JNICALL Java_sun_management_GarbageCollectorImpl_setNotificationEnabled
-(JNIEnv *env, jobject dummy, jobject gc,jboolean enabled) {
-
-    if (gc == NULL) {
-        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
-        return;
-    }
-    if((jmm_version > JMM_VERSION_1_2)
-       || (jmm_version == JMM_VERSION_1_2 && ((jmm_version&0xFF)>=1))) {
-      jmm_interface->SetGCNotificationEnabled(env, gc, enabled);
-    }
-}
--- a/jdk/src/java.management/share/native/libmanagement/GcInfoBuilder.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,284 +0,0 @@
-/*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <jni.h>
-#include "management.h"
-#include "sun_management_GcInfoBuilder.h"
-
-JNIEXPORT jint JNICALL Java_sun_management_GcInfoBuilder_getNumGcExtAttributes
-  (JNIEnv *env, jobject dummy, jobject gc) {
-    jlong value;
-
-    if (gc == NULL) {
-        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
-        return 0;
-    }
-    value = jmm_interface->GetLongAttribute(env, gc,
-                                            JMM_GC_EXT_ATTRIBUTE_INFO_SIZE);
-    return (jint) value;
-}
-
-JNIEXPORT void JNICALL Java_sun_management_GcInfoBuilder_fillGcAttributeInfo
-  (JNIEnv *env, jobject dummy, jobject gc,
-   jint num_attributes, jobjectArray attributeNames,
-   jcharArray types, jobjectArray descriptions) {
-
-    jmmExtAttributeInfo* ext_att_info;
-    jchar* nativeTypes;
-    jstring attName = NULL;
-    jstring desc = NULL;
-    jint ret = 0;
-    jint i;
-
-    if (gc == NULL) {
-        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
-        return;
-    }
-
-    if (num_attributes <= 0) {
-        JNU_ThrowIllegalArgumentException(env, "Invalid num_attributes");
-        return;
-    }
-
-    ext_att_info = (jmmExtAttributeInfo*) malloc((size_t)num_attributes *
-                                                 sizeof(jmmExtAttributeInfo));
-    if (ext_att_info == NULL) {
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return;
-    }
-    ret = jmm_interface->GetGCExtAttributeInfo(env, gc,
-                                               ext_att_info, num_attributes);
-    if (ret != num_attributes) {
-        JNU_ThrowInternalError(env, "Unexpected num_attributes");
-        free(ext_att_info);
-        return;
-    }
-
-    nativeTypes = (jchar*) malloc((size_t)num_attributes * sizeof(jchar));
-    if (nativeTypes == NULL) {
-        free(ext_att_info);
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return;
-    }
-    for (i = 0; i < num_attributes; i++) {
-        nativeTypes[i] = ext_att_info[i].type;
-        attName = (*env)->NewStringUTF(env, ext_att_info[i].name);
-        desc = (*env)->NewStringUTF(env, ext_att_info[i].description);
-        (*env)->SetObjectArrayElement(env, attributeNames, i, attName);
-        (*env)->SetObjectArrayElement(env, descriptions, i, desc);
-    }
-    (*env)->SetCharArrayRegion(env, types, 0, num_attributes, nativeTypes);
-
-    if (ext_att_info != NULL) {
-        free(ext_att_info);
-    }
-    if (nativeTypes != NULL) {
-        free(nativeTypes);
-    }
-}
-
-static void setLongValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                      jsize index, jlong value) {
-    static const char* class_name = "java/lang/Long";
-    static const char* signature = "(J)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setBooleanValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                         jsize index, jboolean value) {
-    static const char* class_name = "java/lang/Boolean";
-    static const char* signature = "(Z)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setByteValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                      jsize index, jbyte value) {
-    static const char* class_name = "java/lang/Byte";
-    static const char* signature = "(B)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setIntValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                     jsize index, jint value) {
-    static const char* class_name = "java/lang/Integer";
-    static const char* signature = "(I)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setShortValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                       jsize index, jshort value) {
-    static const char* class_name = "java/lang/Short";
-    static const char* signature = "(S)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setDoubleValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                        jsize index, jdouble value) {
-    static const char* class_name = "java/lang/Double";
-    static const char* signature = "(D)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setFloatValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                       jsize index, jfloat value) {
-    static const char* class_name = "java/lang/Float";
-    static const char* signature = "(D)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-static void setCharValueAtObjectArray(JNIEnv *env, jobjectArray array,
-                                      jsize index, jchar value) {
-    static const char* class_name = "java/lang/Character";
-    static const char* signature = "(C)V";
-    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
-
-    (*env)->SetObjectArrayElement(env, array, index, obj);
-}
-
-JNIEXPORT jobject JNICALL Java_sun_management_GcInfoBuilder_getLastGcInfo0
-  (JNIEnv *env, jobject builder, jobject gc,
-   jint ext_att_count, jobjectArray ext_att_values, jcharArray ext_att_types,
-   jobjectArray usageBeforeGC, jobjectArray usageAfterGC) {
-
-    jmmGCStat   gc_stat;
-    jchar*      nativeTypes;
-    jsize       i;
-    jvalue      v;
-
-    if (gc == NULL) {
-        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
-        return 0;
-    }
-
-    if (ext_att_count <= 0) {
-        JNU_ThrowIllegalArgumentException(env, "Invalid ext_att_count");
-        return 0;
-    }
-
-    gc_stat.usage_before_gc = usageBeforeGC;
-    gc_stat.usage_after_gc = usageAfterGC;
-    gc_stat.gc_ext_attribute_values_size = ext_att_count;
-    if (ext_att_count > 0) {
-        gc_stat.gc_ext_attribute_values = (jvalue*) malloc((size_t)ext_att_count *
-                                                           sizeof(jvalue));
-        if (gc_stat.gc_ext_attribute_values == NULL) {
-            JNU_ThrowOutOfMemoryError(env, 0);
-            return 0;
-        }
-    } else {
-        gc_stat.gc_ext_attribute_values = NULL;
-    }
-
-
-    jmm_interface->GetLastGCStat(env, gc, &gc_stat);
-    if (gc_stat.gc_index == 0) {
-        if (gc_stat.gc_ext_attribute_values != NULL) {
-            free(gc_stat.gc_ext_attribute_values);
-        }
-        return 0;
-    }
-
-    // convert the ext_att_types to native types
-    nativeTypes = (jchar*) malloc((size_t)ext_att_count * sizeof(jchar));
-    if (nativeTypes == NULL) {
-        if (gc_stat.gc_ext_attribute_values != NULL) {
-            free(gc_stat.gc_ext_attribute_values);
-        }
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return 0;
-    }
-    (*env)->GetCharArrayRegion(env, ext_att_types, 0, ext_att_count, nativeTypes);
-    for (i = 0; i < ext_att_count; i++) {
-       v = gc_stat.gc_ext_attribute_values[i];
-       switch (nativeTypes[i]) {
-            case 'Z':
-                setBooleanValueAtObjectArray(env, ext_att_values, i, v.z);
-                break;
-            case 'B':
-                setByteValueAtObjectArray(env, ext_att_values, i, v.b);
-                break;
-            case 'C':
-                setCharValueAtObjectArray(env, ext_att_values, i, v.c);
-                break;
-            case 'S':
-                setShortValueAtObjectArray(env, ext_att_values, i, v.s);
-                break;
-            case 'I':
-                setIntValueAtObjectArray(env, ext_att_values, i, v.i);
-                break;
-            case 'J':
-                setLongValueAtObjectArray(env, ext_att_values, i, v.j);
-                break;
-            case 'F':
-                setFloatValueAtObjectArray(env, ext_att_values, i, v.f);
-                break;
-            case 'D':
-                setDoubleValueAtObjectArray(env, ext_att_values, i, v.d);
-                break;
-            default:
-                if (gc_stat.gc_ext_attribute_values != NULL) {
-                    free(gc_stat.gc_ext_attribute_values);
-                }
-                if (nativeTypes != NULL) {
-                    free(nativeTypes);
-                }
-                JNU_ThrowInternalError(env, "Unsupported attribute type");
-                return 0;
-       }
-    }
-    if (gc_stat.gc_ext_attribute_values != NULL) {
-        free(gc_stat.gc_ext_attribute_values);
-    }
-    if (nativeTypes != NULL) {
-        free(nativeTypes);
-    }
-
-    return JNU_NewObjectByName(env,
-       "com/sun/management/GcInfo",
-       "(Lsun/management/GcInfoBuilder;JJJ[Ljava/lang/management/MemoryUsage;[Ljava/lang/management/MemoryUsage;[Ljava/lang/Object;)V",
-       builder,
-       gc_stat.gc_index,
-       gc_stat.start_time,
-       gc_stat.end_time,
-       usageBeforeGC,
-       usageAfterGC,
-       ext_att_values);
-}
--- a/jdk/src/java.management/share/native/libmanagement/HotSpotDiagnostic.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <jni.h>
-#include "jvm.h"
-#include "management.h"
-#include "sun_management_HotSpotDiagnostic.h"
-
-JNIEXPORT void JNICALL
-Java_sun_management_HotSpotDiagnostic_dumpHeap0
-  (JNIEnv *env, jobject dummy, jstring outputfile, jboolean live)
-{
-    jmm_interface->DumpHeap0(env, outputfile, live);
-}
--- a/jdk/src/java.management/unix/classes/sun/management/OperatingSystemImpl.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,99 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-/**
- * Implementation class for the operating system.
- * Standard and committed hotspot-specific metrics if any.
- *
- * ManagementFactory.getOperatingSystemMXBean() returns an instance
- * of this class.
- */
-class OperatingSystemImpl extends BaseOperatingSystemImpl
-    implements com.sun.management.UnixOperatingSystemMXBean {
-
-    OperatingSystemImpl(VMManagement vm) {
-        super(vm);
-    }
-
-    public long getCommittedVirtualMemorySize() {
-        return getCommittedVirtualMemorySize0();
-    }
-
-    public long getTotalSwapSpaceSize() {
-        return getTotalSwapSpaceSize0();
-    }
-
-    public long getFreeSwapSpaceSize() {
-        return getFreeSwapSpaceSize0();
-    }
-
-    public long getProcessCpuTime() {
-        return getProcessCpuTime0();
-    }
-
-    public long getFreePhysicalMemorySize() {
-        return getFreePhysicalMemorySize0();
-    }
-
-    public long getTotalPhysicalMemorySize() {
-        return getTotalPhysicalMemorySize0();
-    }
-
-    public long getOpenFileDescriptorCount() {
-        return getOpenFileDescriptorCount0();
-    }
-
-    public long getMaxFileDescriptorCount() {
-        return getMaxFileDescriptorCount0();
-    }
-
-    public double getSystemCpuLoad() {
-        return getSystemCpuLoad0();
-    }
-
-    public double getProcessCpuLoad() {
-        return getProcessCpuLoad0();
-    }
-
-    /* native methods */
-    private native long getCommittedVirtualMemorySize0();
-    private native long getFreePhysicalMemorySize0();
-    private native long getFreeSwapSpaceSize0();
-    private native long getMaxFileDescriptorCount0();
-    private native long getOpenFileDescriptorCount0();
-    private native long getProcessCpuTime0();
-    private native double getProcessCpuLoad0();
-    private native double getSystemCpuLoad0();
-    private native long getTotalPhysicalMemorySize0();
-    private native long getTotalSwapSpaceSize0();
-
-    static {
-        initialize0();
-    }
-
-    private static native void initialize0();
-}
--- a/jdk/src/java.management/unix/native/libmanagement/LinuxOperatingSystem.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,333 +0,0 @@
-/*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <stdio.h>
-#include <stdint.h>
-#include <stdarg.h>
-#include <unistd.h>
-#include <errno.h>
-#include <string.h>
-#include <sys/resource.h>
-#include <sys/types.h>
-#include <dirent.h>
-#include <stdlib.h>
-#include <dlfcn.h>
-#include <pthread.h>
-#include <inttypes.h>
-#include "sun_management_OperatingSystemImpl.h"
-
-struct ticks {
-    uint64_t  used;
-    uint64_t  usedKernel;
-    uint64_t  total;
-};
-
-typedef struct ticks ticks;
-
-typedef enum {
-    CPU_LOAD_VM_ONLY,
-    CPU_LOAD_GLOBAL,
-} CpuLoadTarget;
-
-static struct perfbuf {
-    int   nProcs;
-    ticks jvmTicks;
-    ticks cpuTicks;
-    ticks *cpus;
-} counters;
-
-#define DEC_64 "%"SCNd64
-
-static void next_line(FILE *f) {
-    while (fgetc(f) != '\n');
-}
-
-/**
- * Return the total number of ticks since the system was booted.
- * If the usedTicks parameter is not NULL, it will be filled with
- * the number of ticks spent on actual processes (user, system or
- * nice processes) since system boot. Note that this is the total number
- * of "executed" ticks on _all_ CPU:s, that is on a n-way system it is
- * n times the number of ticks that has passed in clock time.
- *
- * Returns a negative value if the reading of the ticks failed.
- */
-static int get_totalticks(int which, ticks *pticks) {
-    FILE         *fh;
-    uint64_t        userTicks, niceTicks, systemTicks, idleTicks;
-    int             n;
-
-    if((fh = fopen("/proc/stat", "r")) == NULL) {
-        return -1;
-    }
-
-    n = fscanf(fh, "cpu " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64,
-           &userTicks, &niceTicks, &systemTicks, &idleTicks);
-
-    // Move to next line
-    next_line(fh);
-
-    //find the line for requested cpu faster to just iterate linefeeds?
-    if (which != -1) {
-        int i;
-        for (i = 0; i < which; i++) {
-            if (fscanf(fh, "cpu%*d " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64, &userTicks, &niceTicks, &systemTicks, &idleTicks) != 4) {
-                fclose(fh);
-                return -2;
-            }
-            next_line(fh);
-        }
-        n = fscanf(fh, "cpu%*d " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64 "\n",
-           &userTicks, &niceTicks, &systemTicks, &idleTicks);
-    }
-
-    fclose(fh);
-    if (n != 4) {
-        return -2;
-    }
-
-    pticks->used       = userTicks + niceTicks;
-    pticks->usedKernel = systemTicks;
-    pticks->total      = userTicks + niceTicks + systemTicks + idleTicks;
-
-    return 0;
-}
-
-static int vread_statdata(const char *procfile, const char *fmt, va_list args) {
-    FILE    *f;
-    int     n;
-    char     buf[2048];
-
-    if ((f = fopen(procfile, "r")) == NULL) {
-        return -1;
-    }
-
-    if ((n = fread(buf, 1, sizeof(buf), f)) != -1) {
-    char *tmp;
-
-    buf[n-1] = '\0';
-    /** skip through pid and exec name. the exec name _could be wacky_ (renamed) and
-     *  make scanf go mupp.
-     */
-    if ((tmp = strrchr(buf, ')')) != NULL) {
-        // skip the ')' and the following space but check that the buffer is long enough
-        tmp += 2;
-        if (tmp < buf + n) {
-        n = vsscanf(tmp, fmt, args);
-        }
-    }
-    }
-
-    fclose(f);
-
-    return n;
-}
-
-static int read_statdata(const char *procfile, const char *fmt, ...) {
-    int       n;
-    va_list args;
-
-    va_start(args, fmt);
-    n = vread_statdata(procfile, fmt, args);
-    va_end(args);
-    return n;
-}
-
-/** read user and system ticks from a named procfile, assumed to be in 'stat' format then. */
-static int read_ticks(const char *procfile, uint64_t *userTicks, uint64_t *systemTicks) {
-    return read_statdata(procfile, "%*c %*d %*d %*d %*d %*d %*u %*u %*u %*u %*u "DEC_64" "DEC_64,
-             userTicks, systemTicks
-             );
-}
-
-/**
- * Return the number of ticks spent in any of the processes belonging
- * to the JVM on any CPU.
- */
-static int get_jvmticks(ticks *pticks) {
-    uint64_t userTicks;
-    uint64_t systemTicks;
-
-    if (read_ticks("/proc/self/stat", &userTicks, &systemTicks) < 0) {
-        return -1;
-    }
-
-    // get the total
-    if (get_totalticks(-1, pticks) < 0) {
-        return -1;
-    }
-
-    pticks->used       = userTicks;
-    pticks->usedKernel = systemTicks;
-
-    return 0;
-}
-
-/**
- * This method must be called first, before any data can be gathererd.
- */
-int perfInit() {
-    static int initialized=1;
-
-    if (!initialized) {
-        int  i;
-
-        int n = sysconf(_SC_NPROCESSORS_ONLN);
-        if (n <= 0) {
-            n = 1;
-        }
-
-        counters.cpus = calloc(n,sizeof(ticks));
-        if (counters.cpus != NULL)  {
-            // For the CPU load
-            get_totalticks(-1, &counters.cpuTicks);
-
-            for (i = 0; i < n; i++) {
-                get_totalticks(i, &counters.cpus[i]);
-            }
-            // For JVM load
-            get_jvmticks(&counters.jvmTicks);
-            initialized = 1;
-        }
-    }
-
-    return initialized ? 0 : -1;
-}
-
-#define MAX(a,b) (a>b?a:b)
-#define MIN(a,b) (a<b?a:b)
-
-static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
-
-/**
- * Return the load of the CPU as a double. 1.0 means the CPU process uses all
- * available time for user or system processes, 0.0 means the CPU uses all time
- * being idle.
- *
- * Returns a negative value if there is a problem in determining the CPU load.
- */
-
-static double get_cpuload_internal(int which, double *pkernelLoad, CpuLoadTarget target) {
-    uint64_t udiff, kdiff, tdiff;
-    ticks *pticks, tmp;
-    double user_load = -1.0;
-    int failed = 0;
-
-    *pkernelLoad = 0.0;
-
-    pthread_mutex_lock(&lock);
-
-    if(perfInit() == 0) {
-
-        if (target == CPU_LOAD_VM_ONLY) {
-            pticks = &counters.jvmTicks;
-        } else if (which == -1) {
-            pticks = &counters.cpuTicks;
-        } else {
-            pticks = &counters.cpus[which];
-        }
-
-        tmp = *pticks;
-
-        if (target == CPU_LOAD_VM_ONLY) {
-            if (get_jvmticks(pticks) != 0) {
-                failed = 1;
-            }
-        } else if (get_totalticks(which, pticks) < 0) {
-            failed = 1;
-        }
-
-        if(!failed) {
-            // seems like we sometimes end up with less kernel ticks when
-            // reading /proc/self/stat a second time, timing issue between cpus?
-            if (pticks->usedKernel < tmp.usedKernel) {
-                kdiff = 0;
-            } else {
-                kdiff = pticks->usedKernel - tmp.usedKernel;
-            }
-            tdiff = pticks->total - tmp.total;
-            udiff = pticks->used - tmp.used;
-
-            if (tdiff == 0) {
-                user_load = 0;
-            } else {
-                if (tdiff < (udiff + kdiff)) {
-                    tdiff = udiff + kdiff;
-                }
-                *pkernelLoad = (kdiff / (double)tdiff);
-                // BUG9044876, normalize return values to sane values
-                *pkernelLoad = MAX(*pkernelLoad, 0.0);
-                *pkernelLoad = MIN(*pkernelLoad, 1.0);
-
-                user_load = (udiff / (double)tdiff);
-                user_load = MAX(user_load, 0.0);
-                user_load = MIN(user_load, 1.0);
-            }
-        }
-    }
-    pthread_mutex_unlock(&lock);
-    return user_load;
-}
-
-double get_cpu_load(int which) {
-    double u, s;
-    u = get_cpuload_internal(which, &s, CPU_LOAD_GLOBAL);
-    if (u < 0) {
-        return -1.0;
-    }
-    // Cap total systemload to 1.0
-    return MIN((u + s), 1.0);
-}
-
-double get_process_load() {
-    double u, s;
-    u = get_cpuload_internal(-1, &s, CPU_LOAD_VM_ONLY);
-    if (u < 0) {
-        return -1.0;
-    }
-    return u + s;
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getSystemCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    if(perfInit() == 0) {
-        return get_cpu_load(-1);
-    } else {
-        return -1.0;
-    }
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    if(perfInit() == 0) {
-        return get_process_load();
-    } else {
-        return -1.0;
-    }
-}
--- a/jdk/src/java.management/unix/native/libmanagement/MacosxOperatingSystem.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-/*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include "sun_management_OperatingSystemImpl.h"
-
-#include <sys/time.h>
-#include <mach/mach.h>
-#include <mach/task_info.h>
-
-#include "jvm.h"
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getSystemCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    // This code is influenced by the darwin top source
-
-    kern_return_t kr;
-    mach_msg_type_number_t count;
-    host_cpu_load_info_data_t load;
-
-    static jlong last_used  = 0;
-    static jlong last_total = 0;
-
-    count = HOST_CPU_LOAD_INFO_COUNT;
-    kr = host_statistics(mach_host_self(), HOST_CPU_LOAD_INFO, (host_info_t)&load, &count);
-    if (kr != KERN_SUCCESS) {
-        return -1;
-    }
-
-    jlong used  = load.cpu_ticks[CPU_STATE_USER] + load.cpu_ticks[CPU_STATE_NICE] + load.cpu_ticks[CPU_STATE_SYSTEM];
-    jlong total = used + load.cpu_ticks[CPU_STATE_IDLE];
-
-    if (last_used == 0 || last_total == 0) {
-        // First call, just set the last values
-        last_used  = used;
-        last_total = total;
-        // return 0 since we have no data, not -1 which indicates error
-        return 0;
-    }
-
-    jlong used_delta  = used - last_used;
-    jlong total_delta = total - last_total;
-
-    jdouble cpu = (jdouble) used_delta / total_delta;
-
-    last_used  = used;
-    last_total = total;
-
-    return cpu;
-}
-
-
-#define TIME_VALUE_TO_TIMEVAL(a, r) do {  \
-     (r)->tv_sec = (a)->seconds;          \
-     (r)->tv_usec = (a)->microseconds;    \
-} while (0)
-
-
-#define TIME_VALUE_TO_MICROSECONDS(TV) \
-     ((TV).tv_sec * 1000 * 1000 + (TV).tv_usec)
-
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    // This code is influenced by the darwin top source
-
-    struct task_basic_info_64 task_info_data;
-    struct task_thread_times_info thread_info_data;
-    struct timeval user_timeval, system_timeval, task_timeval;
-    struct timeval now;
-    mach_port_t task = mach_task_self();
-    kern_return_t kr;
-
-    static jlong last_task_time = 0;
-    static jlong last_time      = 0;
-
-    mach_msg_type_number_t thread_info_count = TASK_THREAD_TIMES_INFO_COUNT;
-    kr = task_info(task,
-            TASK_THREAD_TIMES_INFO,
-            (task_info_t)&thread_info_data,
-            &thread_info_count);
-    if (kr != KERN_SUCCESS) {
-        // Most likely cause: |task| is a zombie.
-        return -1;
-    }
-
-    mach_msg_type_number_t count = TASK_BASIC_INFO_64_COUNT;
-    kr = task_info(task,
-            TASK_BASIC_INFO_64,
-            (task_info_t)&task_info_data,
-            &count);
-    if (kr != KERN_SUCCESS) {
-        // Most likely cause: |task| is a zombie.
-        return -1;
-    }
-
-    /* Set total_time. */
-    // thread info contains live time...
-    TIME_VALUE_TO_TIMEVAL(&thread_info_data.user_time, &user_timeval);
-    TIME_VALUE_TO_TIMEVAL(&thread_info_data.system_time, &system_timeval);
-    timeradd(&user_timeval, &system_timeval, &task_timeval);
-
-    // ... task info contains terminated time.
-    TIME_VALUE_TO_TIMEVAL(&task_info_data.user_time, &user_timeval);
-    TIME_VALUE_TO_TIMEVAL(&task_info_data.system_time, &system_timeval);
-    timeradd(&user_timeval, &task_timeval, &task_timeval);
-    timeradd(&system_timeval, &task_timeval, &task_timeval);
-
-    if (gettimeofday(&now, NULL) < 0) {
-       return -1;
-    }
-    jint ncpus      = JVM_ActiveProcessorCount();
-    jlong time      = TIME_VALUE_TO_MICROSECONDS(now) * ncpus;
-    jlong task_time = TIME_VALUE_TO_MICROSECONDS(task_timeval);
-
-    if ((last_task_time == 0) || (last_time == 0)) {
-        // First call, just set the last values.
-        last_task_time = task_time;
-        last_time      = time;
-        // return 0 since we have no data, not -1 which indicates error
-        return 0;
-    }
-
-    jlong task_time_delta = task_time - last_task_time;
-    jlong time_delta      = time - last_time;
-    if (time_delta == 0) {
-        return -1;
-    }
-
-    jdouble cpu = (jdouble) task_time_delta / time_delta;
-
-    last_task_time = task_time;
-    last_time      = time;
-
-    return cpu;
- }
--- a/jdk/src/java.management/unix/native/libmanagement/OperatingSystemImpl.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,479 +0,0 @@
-/*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include "jni.h"
-#include "jni_util.h"
-#include "jlong.h"
-#include "jvm.h"
-#include "management.h"
-#include "sun_management_OperatingSystemImpl.h"
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#if defined(_ALLBSD_SOURCE)
-#include <sys/sysctl.h>
-#ifdef __APPLE__
-#include <sys/param.h>
-#include <sys/mount.h>
-#include <mach/mach.h>
-#include <sys/proc_info.h>
-#include <libproc.h>
-#endif
-#elif !defined(_AIX)
-#include <sys/swap.h>
-#endif
-#include <sys/resource.h>
-#include <sys/times.h>
-#ifndef _ALLBSD_SOURCE
-#include <sys/sysinfo.h>
-#endif
-#include <ctype.h>
-#include <dirent.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <limits.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-#if defined(_AIX)
-#include <libperfstat.h>
-#endif
-
-static jlong page_size = 0;
-
-#if defined(_ALLBSD_SOURCE) || defined(_AIX)
-#define MB      (1024UL * 1024UL)
-#else
-
-/* This gets us the new structured proc interfaces of 5.6 & later */
-/* - see comment in <sys/procfs.h> */
-#define _STRUCTURED_PROC 1
-#include <sys/procfs.h>
-
-#endif /* _ALLBSD_SOURCE */
-
-static struct dirent* read_dir(DIR* dirp, struct dirent* entry) {
-#ifdef __solaris__
-    struct dirent* dbuf = readdir(dirp);
-    return dbuf;
-#else /* __linux__ || _ALLBSD_SOURCE */
-    struct dirent* p;
-    if (readdir_r(dirp, entry, &p) == 0) {
-        return p;
-    } else {
-        return NULL;
-    }
-#endif
-}
-
-// true = get available swap in bytes
-// false = get total swap in bytes
-static jlong get_total_or_available_swap_space_size(JNIEnv* env, jboolean available) {
-#ifdef __solaris__
-    long total, avail;
-    int nswap, i, count;
-    swaptbl_t *stbl;
-    char *strtab;
-
-    // First get the number of swap resource entries
-    if ((nswap = swapctl(SC_GETNSWP, NULL)) == -1) {
-        throw_internal_error(env, "swapctl failed to get nswap");
-        return -1;
-    }
-    if (nswap == 0) {
-        return 0;
-    }
-
-    // Allocate storage for resource entries
-    stbl = (swaptbl_t*) malloc(nswap * sizeof(swapent_t) +
-                               sizeof(struct swaptable));
-    if (stbl == NULL) {
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return -1;
-    }
-
-    // Allocate storage for the table
-    strtab = (char*) malloc((nswap + 1) * MAXPATHLEN);
-    if (strtab == NULL) {
-        free(stbl);
-        JNU_ThrowOutOfMemoryError(env, 0);
-        return -1;
-    }
-
-    for (i = 0; i < (nswap + 1); i++) {
-      stbl->swt_ent[i].ste_path = strtab + (i * MAXPATHLEN);
-    }
-    stbl->swt_n = nswap + 1;
-
-    // Get the entries
-    if ((count = swapctl(SC_LIST, stbl)) < 0) {
-        free(stbl);
-        free(strtab);
-        throw_internal_error(env, "swapctl failed to get swap list");
-        return -1;
-    }
-
-    // Sum the entries to get total and free swap
-    total = 0;
-    avail = 0;
-    for (i = 0; i < count; i++) {
-      total += stbl->swt_ent[i].ste_pages;
-      avail += stbl->swt_ent[i].ste_free;
-    }
-
-    free(stbl);
-    free(strtab);
-    return available ? ((jlong)avail * page_size) :
-                       ((jlong)total * page_size);
-#elif defined(__linux__)
-    int ret;
-    FILE *fp;
-    jlong total = 0, avail = 0;
-
-    struct sysinfo si;
-    ret = sysinfo(&si);
-    if (ret != 0) {
-        throw_internal_error(env, "sysinfo failed to get swap size");
-    }
-    total = (jlong)si.totalswap * si.mem_unit;
-    avail = (jlong)si.freeswap * si.mem_unit;
-
-    return available ? avail : total;
-#elif defined(__APPLE__)
-    struct xsw_usage vmusage;
-    size_t size = sizeof(vmusage);
-    if (sysctlbyname("vm.swapusage", &vmusage, &size, NULL, 0) != 0) {
-        throw_internal_error(env, "sysctlbyname failed");
-    }
-    return available ? (jlong)vmusage.xsu_avail : (jlong)vmusage.xsu_total;
-#else /* _ALLBSD_SOURCE */
-    /*
-     * XXXBSD: there's no way available to get swap info in
-     *         FreeBSD.  Usage of libkvm is not an option here
-     */
-    // throw_internal_error(env, "Unimplemented in FreeBSD");
-    return (0);
-#endif
-}
-
-JNIEXPORT void JNICALL
-Java_sun_management_OperatingSystemImpl_initialize0
-  (JNIEnv *env, jclass cls)
-{
-    page_size = sysconf(_SC_PAGESIZE);
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getCommittedVirtualMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-#ifdef __solaris__
-    psinfo_t psinfo;
-    ssize_t result;
-    size_t remaining;
-    char* addr;
-    int fd;
-
-    fd = open64("/proc/self/psinfo", O_RDONLY, 0);
-    if (fd < 0) {
-        throw_internal_error(env, "Unable to open /proc/self/psinfo");
-        return -1;
-    }
-
-    addr = (char *)&psinfo;
-    for (remaining = sizeof(psinfo_t); remaining > 0;) {
-        result = read(fd, addr, remaining);
-        if (result < 0) {
-            if (errno != EINTR) {
-                close(fd);
-                throw_internal_error(env, "Unable to read /proc/self/psinfo");
-                return -1;
-            }
-        } else {
-            remaining -= result;
-            addr += result;
-        }
-    }
-
-    close(fd);
-    return (jlong) psinfo.pr_size * 1024;
-#elif defined(__linux__)
-    FILE *fp;
-    unsigned long vsize = 0;
-
-    if ((fp = fopen("/proc/self/stat", "r")) == NULL) {
-        throw_internal_error(env, "Unable to open /proc/self/stat");
-        return -1;
-    }
-
-    // Ignore everything except the vsize entry
-    if (fscanf(fp, "%*d %*s %*c %*d %*d %*d %*d %*d %*u %*u %*u %*u %*u %*d %*d %*d %*d %*d %*d %*u %*u %*d %lu %*[^\n]\n", &vsize) == EOF) {
-        throw_internal_error(env, "Unable to get virtual memory usage");
-        fclose(fp);
-        return -1;
-    }
-
-    fclose(fp);
-    return (jlong)vsize;
-#elif defined(__APPLE__)
-    struct task_basic_info t_info;
-    mach_msg_type_number_t t_info_count = TASK_BASIC_INFO_COUNT;
-
-    kern_return_t res = task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&t_info, &t_info_count);
-    if (res != KERN_SUCCESS) {
-        throw_internal_error(env, "task_info failed");
-    }
-    return t_info.virtual_size;
-#else /* _ALLBSD_SOURCE */
-    /*
-     * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
-     */
-    // throw_internal_error(env, "Unimplemented in FreeBSD");
-    return (64 * MB);
-#endif
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getTotalSwapSpaceSize0
-  (JNIEnv *env, jobject mbean)
-{
-    return get_total_or_available_swap_space_size(env, JNI_FALSE);
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getFreeSwapSpaceSize0
-  (JNIEnv *env, jobject mbean)
-{
-    return get_total_or_available_swap_space_size(env, JNI_TRUE);
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuTime0
-  (JNIEnv *env, jobject mbean)
-{
-#ifdef __APPLE__
-    struct rusage usage;
-    if (getrusage(RUSAGE_SELF, &usage) != 0) {
-        throw_internal_error(env, "getrusage failed");
-        return -1;
-    }
-    jlong microsecs =
-        usage.ru_utime.tv_sec * 1000 * 1000 + usage.ru_utime.tv_usec +
-        usage.ru_stime.tv_sec * 1000 * 1000 + usage.ru_stime.tv_usec;
-    return microsecs * 1000;
-#else
-    jlong clk_tck, ns_per_clock_tick;
-    jlong cpu_time_ns;
-    struct tms time;
-
-    /*
-     * BSDNOTE: FreeBSD implements _SC_CLK_TCK since FreeBSD 5, so
-     *          add a magic to handle it
-     */
-#if defined(__solaris__) || defined(_SC_CLK_TCK)
-    clk_tck = (jlong) sysconf(_SC_CLK_TCK);
-#elif defined(__linux__) || defined(_ALLBSD_SOURCE)
-    clk_tck = 100;
-#endif
-    if (clk_tck == -1) {
-        throw_internal_error(env,
-                             "sysconf failed - not able to get clock tick");
-        return -1;
-    }
-
-    times(&time);
-    ns_per_clock_tick = (jlong) 1000 * 1000 * 1000 / (jlong) clk_tck;
-    cpu_time_ns = ((jlong)time.tms_utime + (jlong) time.tms_stime) *
-                      ns_per_clock_tick;
-    return cpu_time_ns;
-#endif
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getFreePhysicalMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-#ifdef __APPLE__
-    mach_msg_type_number_t count;
-    vm_statistics_data_t vm_stats;
-    kern_return_t res;
-
-    count = HOST_VM_INFO_COUNT;
-    res = host_statistics(mach_host_self(), HOST_VM_INFO, (host_info_t)&vm_stats, &count);
-    if (res != KERN_SUCCESS) {
-        throw_internal_error(env, "host_statistics failed");
-        return -1;
-    }
-    return (jlong)vm_stats.free_count * page_size;
-#elif defined(_ALLBSD_SOURCE)
-    /*
-     * XXBSDL no way to do it in FreeBSD
-     */
-    // throw_internal_error(env, "unimplemented in FreeBSD")
-    return (128 * MB);
-#elif defined(_AIX)
-    perfstat_memory_total_t memory_info;
-    if (-1 != perfstat_memory_total(NULL, &memory_info, sizeof(perfstat_memory_total_t), 1)) {
-        return (jlong)(memory_info.real_free * 4L * 1024L);
-    }
-    return -1;
-#else // solaris / linux
-    jlong num_avail_physical_pages = sysconf(_SC_AVPHYS_PAGES);
-    return (num_avail_physical_pages * page_size);
-#endif
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getTotalPhysicalMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-#ifdef _ALLBSD_SOURCE
-    jlong result = 0;
-    int mib[2];
-    size_t rlen;
-
-    mib[0] = CTL_HW;
-    mib[1] = HW_MEMSIZE;
-    rlen = sizeof(result);
-    if (sysctl(mib, 2, &result, &rlen, NULL, 0) != 0) {
-        throw_internal_error(env, "sysctl failed");
-        return -1;
-    }
-    return result;
-#elif defined(_AIX)
-    perfstat_memory_total_t memory_info;
-    if (-1 != perfstat_memory_total(NULL, &memory_info, sizeof(perfstat_memory_total_t), 1)) {
-        return (jlong)(memory_info.real_total * 4L * 1024L);
-    }
-    return -1;
-#else // solaris / linux
-    jlong num_physical_pages = sysconf(_SC_PHYS_PAGES);
-    return (num_physical_pages * page_size);
-#endif
-}
-
-
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getOpenFileDescriptorCount0
-  (JNIEnv *env, jobject mbean)
-{
-#ifdef __APPLE__
-    // This code is influenced by the darwin lsof source
-    pid_t my_pid;
-    struct proc_bsdinfo bsdinfo;
-    struct proc_fdinfo *fds;
-    int nfiles;
-    kern_return_t kres;
-    int res;
-    size_t fds_size;
-
-    kres = pid_for_task(mach_task_self(), &my_pid);
-    if (kres != KERN_SUCCESS) {
-        throw_internal_error(env, "pid_for_task failed");
-        return -1;
-    }
-
-    // get the maximum number of file descriptors
-    res = proc_pidinfo(my_pid, PROC_PIDTBSDINFO, 0, &bsdinfo, PROC_PIDTBSDINFO_SIZE);
-    if (res <= 0) {
-        throw_internal_error(env, "proc_pidinfo with PROC_PIDTBSDINFO failed");
-        return -1;
-    }
-
-    // allocate memory to hold the fd information (we don't acutally use this information
-    // but need it to get the number of open files)
-    fds_size = bsdinfo.pbi_nfiles * sizeof(struct proc_fdinfo);
-    fds = malloc(fds_size);
-    if (fds == NULL) {
-        JNU_ThrowOutOfMemoryError(env, "could not allocate space for file descriptors");
-        return -1;
-    }
-
-    // get the list of open files - the return value is the number of bytes
-    // proc_pidinfo filled in
-    res = proc_pidinfo(my_pid, PROC_PIDLISTFDS, 0, fds, fds_size);
-    if (res <= 0) {
-        free(fds);
-        throw_internal_error(env, "proc_pidinfo failed for PROC_PIDLISTFDS");
-        return -1;
-    }
-    nfiles = res / sizeof(struct proc_fdinfo);
-    free(fds);
-
-    return nfiles;
-#elif defined(_ALLBSD_SOURCE)
-    /*
-     * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
-     */
-    // throw_internal_error(env, "Unimplemented in FreeBSD");
-    return (100);
-#else /* solaris/linux */
-    DIR *dirp;
-    struct dirent dbuf;
-    struct dirent* dentp;
-    jlong fds = 0;
-
-#if defined(_AIX)
-/* AIX does not understand '/proc/self' - it requires the real process ID */
-#define FD_DIR aix_fd_dir
-    char aix_fd_dir[32];     /* the pid has at most 19 digits */
-    snprintf(aix_fd_dir, 32, "/proc/%d/fd", getpid());
-#else
-#define FD_DIR "/proc/self/fd"
-#endif
-
-    dirp = opendir(FD_DIR);
-    if (dirp == NULL) {
-        throw_internal_error(env, "Unable to open directory /proc/self/fd");
-        return -1;
-    }
-
-    // iterate through directory entries, skipping '.' and '..'
-    // each entry represents an open file descriptor.
-    while ((dentp = read_dir(dirp, &dbuf)) != NULL) {
-        if (isdigit(dentp->d_name[0])) {
-            fds++;
-        }
-    }
-
-    closedir(dirp);
-    // subtract by 1 which was the fd open for this implementation
-    return (fds - 1);
-#endif
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getMaxFileDescriptorCount0
-  (JNIEnv *env, jobject mbean)
-{
-    struct rlimit rlp;
-
-    if (getrlimit(RLIMIT_NOFILE, &rlp) == -1) {
-        throw_internal_error(env, "getrlimit failed");
-        return -1;
-    }
-    return (jlong) rlp.rlim_cur;
-}
--- a/jdk/src/java.management/unix/native/libmanagement/SolarisOperatingSystem.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,241 +0,0 @@
-/*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include <fcntl.h>
-#include <kstat.h>
-#include <procfs.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/sysinfo.h>
-#include <sys/lwp.h>
-#include <pthread.h>
-#include <utmpx.h>
-#include <dlfcn.h>
-#include <sys/loadavg.h>
-#include <jni.h>
-#include "jvm.h"
-#include "sun_management_OperatingSystemImpl.h"
-
-typedef struct {
-    kstat_t *kstat;
-    uint64_t  last_idle;
-    uint64_t  last_total;
-    double  last_ratio;
-} cpuload_t;
-
-static cpuload_t   *cpu_loads = NULL;
-static unsigned int num_cpus;
-static kstat_ctl_t *kstat_ctrl = NULL;
-
-static void map_cpu_kstat_counters() {
-    kstat_t     *kstat;
-    int          i;
-
-    // Get number of CPU(s)
-    if ((num_cpus = sysconf(_SC_NPROCESSORS_ONLN)) == -1) {
-        num_cpus = 1;
-    }
-
-    // Data structure for saving CPU load
-    if ((cpu_loads = calloc(num_cpus,sizeof(cpuload_t))) == NULL) {
-        return;
-    }
-
-    // Get kstat cpu_stat counters for every CPU
-    // (loop over kstat to find our cpu_stat(s)
-    i = 0;
-    for (kstat = kstat_ctrl->kc_chain; kstat != NULL; kstat = kstat->ks_next) {
-        if (strncmp(kstat->ks_module, "cpu_stat", 8) == 0) {
-
-            if (kstat_read(kstat_ctrl, kstat, NULL) == -1) {
-            // Failed to initialize kstat for this CPU so ignore it
-            continue;
-            }
-
-            if (i == num_cpus) {
-            // Found more cpu_stats than reported CPUs
-            break;
-            }
-
-            cpu_loads[i++].kstat = kstat;
-        }
-    }
-}
-
-static int init_cpu_kstat_counters() {
-    static int initialized = 0;
-
-    // Concurrence in this method is prevented by the lock in
-    // the calling method get_cpu_load();
-    if(!initialized) {
-        if ((kstat_ctrl = kstat_open()) != NULL) {
-            map_cpu_kstat_counters();
-            initialized = 1;
-        }
-    }
-    return initialized ? 0 : -1;
-}
-
-static void update_cpu_kstat_counters() {
-    if(kstat_chain_update(kstat_ctrl) != 0) {
-        free(cpu_loads);
-        map_cpu_kstat_counters();
-    }
-}
-
-int read_cpustat(cpuload_t *load, cpu_stat_t *cpu_stat) {
-    if (load->kstat == NULL) {
-        // no handle.
-        return -1;
-    }
-    if (kstat_read(kstat_ctrl, load->kstat, cpu_stat) == -1) {
-        //  disabling for now, a kstat chain update is likely to happen next time
-        load->kstat = NULL;
-        return -1;
-    }
-    return 0;
-}
-
-double get_single_cpu_load(unsigned int n) {
-    cpuload_t  *load;
-    cpu_stat_t  cpu_stat;
-    uint_t     *usage;
-    uint64_t          c_idle;
-    uint64_t          c_total;
-    uint64_t          d_idle;
-    uint64_t          d_total;
-    int           i;
-
-    if (n >= num_cpus) {
-        return -1.0;
-    }
-
-    load = &cpu_loads[n];
-    if (read_cpustat(load, &cpu_stat) < 0) {
-        return -1.0;
-    }
-
-    usage   = cpu_stat.cpu_sysinfo.cpu;
-    c_idle  = usage[CPU_IDLE];
-
-    for (c_total = 0, i = 0; i < CPU_STATES; i++) {
-        c_total += usage[i];
-    }
-
-    // Calculate diff against previous snapshot
-    d_idle  = c_idle - load->last_idle;
-    d_total = c_total - load->last_total;
-
-    /** update if weve moved */
-    if (d_total > 0) {
-        // Save current values for next time around
-        load->last_idle  = c_idle;
-        load->last_total = c_total;
-        load->last_ratio = (double) (d_total - d_idle) / d_total;
-    }
-
-    return load->last_ratio;
-}
-
-int get_info(const char *path, void *info, size_t s, off_t o) {
-    int fd;
-    int ret = 0;
-    if ((fd = open(path, O_RDONLY)) < 0) {
-        return -1;
-    }
-    if (pread(fd, info, s, o) != s) {
-        ret = -1;
-    }
-    close(fd);
-    return ret;
-}
-
-#define MIN(a, b)           ((a < b) ? a : b)
-
-static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
-
-/**
- * Return the cpu load (0-1) for proc number 'which' (or average all if which == -1)
- */
-double  get_cpu_load(int which) {
-    double load =.0;
-
-    pthread_mutex_lock(&lock);
-    if(init_cpu_kstat_counters()==0) {
-
-        update_cpu_kstat_counters();
-
-        if (which == -1) {
-            unsigned int i;
-            double       t;
-
-            for (t = .0, i = 0; i < num_cpus; i++) {
-                t += get_single_cpu_load(i);
-            }
-
-            // Cap total systemload to 1.0
-            load = MIN((t / num_cpus), 1.0);
-        } else {
-            load = MIN(get_single_cpu_load(which), 1.0);
-        }
-    } else {
-        load = -1.0;
-    }
-    pthread_mutex_unlock(&lock);
-
-    return load;
-}
-
-/**
- * Return the cpu load (0-1) for the current process (i.e the JVM)
- * or -1.0 if the get_info() call failed
- */
-double get_process_load(void) {
-    psinfo_t info;
-
-    // Get the percentage of "recent cpu usage" from all the lwp:s in the JVM:s
-    // process. This is returned as a value between 0.0 and 1.0 multiplied by 0x8000.
-    if (get_info("/proc/self/psinfo",&info.pr_pctcpu, sizeof(info.pr_pctcpu), offsetof(psinfo_t, pr_pctcpu)) == 0) {
-        return (double) info.pr_pctcpu / 0x8000;
-    }
-    return -1.0;
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getSystemCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    return get_cpu_load(-1);
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    return get_process_load();
-}
-
--- a/jdk/src/java.management/windows/classes/sun/management/OperatingSystemImpl.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-package sun.management;
-
-import com.sun.management.OperatingSystemMXBean;
-
-/**
- * Implementation class for the operating system.
- * Standard and committed hotspot-specific metrics if any.
- *
- * ManagementFactory.getOperatingSystemMXBean() returns an instance
- * of this class.
- */
-class OperatingSystemImpl extends BaseOperatingSystemImpl
-    implements OperatingSystemMXBean {
-
-    // psapiLock is a lock to make sure only one thread loading
-    // PSAPI DLL.
-    private static Object psapiLock = new Object();
-
-    OperatingSystemImpl(VMManagement vm) {
-        super(vm);
-    }
-
-    public long getCommittedVirtualMemorySize() {
-        synchronized (psapiLock) {
-            return getCommittedVirtualMemorySize0();
-        }
-    }
-
-    public long getTotalSwapSpaceSize() {
-        return getTotalSwapSpaceSize0();
-    }
-
-    public long getFreeSwapSpaceSize() {
-        return getFreeSwapSpaceSize0();
-    }
-
-    public long getProcessCpuTime() {
-        return getProcessCpuTime0();
-    }
-
-    public long getFreePhysicalMemorySize() {
-        return getFreePhysicalMemorySize0();
-    }
-
-    public long getTotalPhysicalMemorySize() {
-        return getTotalPhysicalMemorySize0();
-    }
-
-    public double getSystemCpuLoad() {
-        return getSystemCpuLoad0();
-    }
-
-    public double getProcessCpuLoad() {
-        return getProcessCpuLoad0();
-    }
-
-    /* native methods */
-    private native long getCommittedVirtualMemorySize0();
-    private native long getFreePhysicalMemorySize0();
-    private native long getFreeSwapSpaceSize0();
-    private native double getProcessCpuLoad0();
-    private native long getProcessCpuTime0();
-    private native double getSystemCpuLoad0();
-    private native long getTotalPhysicalMemorySize0();
-    private native long getTotalSwapSpaceSize0();
-
-    static {
-        initialize0();
-    }
-
-    private static native void initialize0();
-}
--- a/jdk/src/java.management/windows/native/libmanagement/OperatingSystemImpl.c	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1363 +0,0 @@
-/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-#include "jni.h"
-#include "jni_util.h"
-#include "jlong.h"
-#include "jvm.h"
-#include "management.h"
-#include "sun_management_OperatingSystemImpl.h"
-
-#include <psapi.h>
-#include <errno.h>
-#include <stdlib.h>
-
-#include <malloc.h>
-#pragma warning (push,0)
-#include <windows.h>
-#pragma warning (pop)
-#include <stdio.h>
-#include <time.h>
-#include <stdint.h>
-#include <assert.h>
-
-/* Disable warnings due to broken header files from Microsoft... */
-#pragma warning(push, 3)
-#include <pdh.h>
-#include <pdhmsg.h>
-#include <process.h>
-#pragma warning(pop)
-
-typedef unsigned __int32 juint;
-typedef unsigned __int64 julong;
-
-static void set_low(jlong* value, jint low) {
-    *value &= (jlong)0xffffffff << 32;
-    *value |= (jlong)(julong)(juint)low;
-}
-
-static void set_high(jlong* value, jint high) {
-    *value &= (jlong)(julong)(juint)0xffffffff;
-    *value |= (jlong)high       << 32;
-}
-
-static jlong jlong_from(jint h, jint l) {
-    jlong result = 0; // initialization to avoid warning
-    set_high(&result, h);
-    set_low(&result,  l);
-    return result;
-}
-
-static HANDLE main_process;
-
-static void perfInit(void);
-
-JNIEXPORT void JNICALL
-Java_sun_management_OperatingSystemImpl_initialize0
-  (JNIEnv *env, jclass cls)
-{
-    main_process = GetCurrentProcess();
-    perfInit();
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getCommittedVirtualMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-    PROCESS_MEMORY_COUNTERS pmc;
-    if (GetProcessMemoryInfo(main_process, &pmc, sizeof(PROCESS_MEMORY_COUNTERS)) == 0) {
-        return (jlong)-1L;
-    } else {
-        return (jlong) pmc.PagefileUsage;
-    }
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getTotalSwapSpaceSize0
-  (JNIEnv *env, jobject mbean)
-{
-    MEMORYSTATUSEX ms;
-    ms.dwLength = sizeof(ms);
-    GlobalMemoryStatusEx(&ms);
-    return (jlong) ms.ullTotalPageFile;
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getFreeSwapSpaceSize0
-  (JNIEnv *env, jobject mbean)
-{
-    MEMORYSTATUSEX ms;
-    ms.dwLength = sizeof(ms);
-    GlobalMemoryStatusEx(&ms);
-    return (jlong) ms.ullAvailPageFile;
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuTime0
-  (JNIEnv *env, jobject mbean)
-{
-
-    FILETIME process_creation_time, process_exit_time,
-             process_user_time, process_kernel_time;
-
-    // Using static variables declared above
-    // Units are 100-ns intervals.  Convert to ns.
-    GetProcessTimes(main_process, &process_creation_time,
-                    &process_exit_time,
-                    &process_kernel_time, &process_user_time);
-    return (jlong_from(process_user_time.dwHighDateTime,
-                        process_user_time.dwLowDateTime) +
-            jlong_from(process_kernel_time.dwHighDateTime,
-                        process_kernel_time.dwLowDateTime)) * 100;
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getFreePhysicalMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-    MEMORYSTATUSEX ms;
-    ms.dwLength = sizeof(ms);
-    GlobalMemoryStatusEx(&ms);
-    return (jlong) ms.ullAvailPhys;
-}
-
-JNIEXPORT jlong JNICALL
-Java_sun_management_OperatingSystemImpl_getTotalPhysicalMemorySize0
-  (JNIEnv *env, jobject mbean)
-{
-    MEMORYSTATUSEX ms;
-    ms.dwLength = sizeof(ms);
-    GlobalMemoryStatusEx(&ms);
-    return (jlong) ms.ullTotalPhys;
-}
-
-/* Performance Data Helper API (PDH) support */
-
-typedef PDH_STATUS (WINAPI *PdhAddCounterFunc)(
-                           HQUERY      hQuery,
-                           LPCSTR      szFullCounterPath,
-                           DWORD       dwUserData,
-                           HCOUNTER    *phCounter
-                           );
-typedef PDH_STATUS (WINAPI *PdhOpenQueryFunc)(
-                           LPCWSTR     szDataSource,
-                           DWORD       dwUserData,
-                           HQUERY      *phQuery
-                           );
-typedef PDH_STATUS (WINAPI *PdhCollectQueryDataFunc)(
-                           HQUERY      hQuery
-                           );
-
-typedef PDH_STATUS (WINAPI *PdhEnumObjectItemsFunc)(
-                           LPCTSTR     szDataSource,
-                           LPCTSTR     szMachineName,
-                           LPCTSTR     szObjectName,
-                           LPTSTR      mszCounterList,
-                           LPDWORD     pcchCounterListLength,
-                           LPTSTR      mszInstanceList,
-                           LPDWORD     pcchInstanceListLength,
-                           DWORD       dwDetailLevel,
-                           DWORD       dwFlags
-                           );
-typedef PDH_STATUS (WINAPI *PdhRemoveCounterFunc)(
-                           HCOUNTER   hCounter
-                           );
-typedef PDH_STATUS (WINAPI *PdhLookupPerfNameByIndexFunc)(
-                           LPCSTR     szMachineName,
-                           DWORD      dwNameIndex,
-                           LPSTR      szNameBuffer,
-                           LPDWORD    pcchNameBufferSize
-                           );
-typedef DWORD (WINAPI *PdhCloseQueryFunc)(
-                      HQUERY      hQuery
-                      );
-
-typedef DWORD (WINAPI *PdhGetFormattedCounterValueFunc)(
-                      HCOUNTER                hCounter,
-                      DWORD                   dwFormat,
-                      LPDWORD                 lpdwType,
-                      PPDH_FMT_COUNTERVALUE   pValue
-                      );
-
-static PdhAddCounterFunc PdhAddCounter_i;
-static PdhOpenQueryFunc PdhOpenQuery_i;
-static PdhCloseQueryFunc PdhCloseQuery_i;
-static PdhCollectQueryDataFunc PdhCollectQueryData_i;
-static PdhGetFormattedCounterValueFunc PdhGetFormattedCounterValue_i;
-static PdhEnumObjectItemsFunc PdhEnumObjectItems_i;
-static PdhRemoveCounterFunc PdhRemoveCounter_i;
-static PdhLookupPerfNameByIndexFunc PdhLookupPerfNameByIndex_i;
-
-/*
- * Struct for PDH queries.
- */
-typedef struct {
-    HQUERY      query;
-    uint64_t    lastUpdate; // Last time query was updated (ticks)
-} UpdateQueryS, *UpdateQueryP;
-
-// Min time between query updates (ticks)
-static const int MIN_UPDATE_INTERVAL = 500;
-
-/*
- * Struct for a PDH query with multiple counters.
- */
-typedef struct {
-    UpdateQueryS  query;
-    HCOUNTER*     counters;
-    int           noOfCounters;
-} MultipleCounterQueryS, *MultipleCounterQueryP;
-
-/*
- * Struct for a PDH query with a single counter.
- */
-typedef struct {
-    UpdateQueryS  query;
-    HCOUNTER      counter;
-} SingleCounterQueryS, *SingleCounterQueryP;
-
-
-typedef struct {
-    CRITICAL_SECTION cs;
-    DWORD owningThread;
-    DWORD recursionCount;
-} PdhCriticalSectionS, *PdhCriticalSectionP;
-
-static PdhCriticalSectionS initializationLock;
-
-static void InitializePdhCriticalSection(PdhCriticalSectionP criticalSection) {
-    assert(criticalSection);
-
-    InitializeCriticalSection(&criticalSection->cs);
-    criticalSection->owningThread = 0;
-    criticalSection->recursionCount = 0;
-}
-
-static void EnterPdhCriticalSection(PdhCriticalSectionP criticalSection) {
-    assert(criticalSection);
-
-    EnterCriticalSection(&criticalSection->cs);
-    criticalSection->recursionCount++;
-    if (!criticalSection->owningThread) {
-        criticalSection->owningThread = GetCurrentThreadId();
-    }
-}
-
-static void LeavePdhCriticalSection(PdhCriticalSectionP criticalSection) {
-    assert(criticalSection);
-    assert(GetCurrentThreadId() == criticalSection->owningThread);
-    assert(criticalSection->recursionCount >= 1);
-
-    criticalSection->recursionCount--;
-    if (!criticalSection->recursionCount) {
-        criticalSection->owningThread = 0;
-    }
-    LeaveCriticalSection(&criticalSection->cs);
-}
-
-/*
- * INFO: Using PDH APIs Correctly in a Localized Language (Q287159)
- *   http://support.microsoft.com/default.aspx?scid=kb;EN-US;q287159
- * The index value for the base system counters and objects like processor,
- * process, thread, memory, and so forth are always the same irrespective
- * of the localized version of the operating system or service pack installed.
- * To find the correct index for an object or counter, inspect the registry key/value:
- * [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009\Counter]
- */
-static const DWORD PDH_PROCESSOR_IDX = 238;
-static const DWORD PDH_PROCESSOR_TIME_IDX = 6;
-static const DWORD PDH_PROCESS_IDX = 230;
-static const DWORD PDH_ID_PROCESS_IDX = 784;
-
-/* useful pdh fmt's */
-static const char* const OBJECT_COUNTER_FMT = "\\%s\\%s";
-static const size_t OBJECT_COUNTER_FMT_LEN = 2;
-static const char* const OBJECT_WITH_INSTANCES_COUNTER_FMT = "\\%s(%s)\\%s";
-static const size_t OBJECT_WITH_INSTANCES_COUNTER_FMT_LEN = 4;
-static const char* const PROCESS_OBJECT_INSTANCE_COUNTER_FMT = "\\%s(%s#%s)\\%s";
-static const size_t PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN = 5;
-
-static const char* pdhProcessImageName = NULL; /* "java" */
-static char* pdhIDProcessCounterFmt = NULL;    /* "\Process(java#%d)\ID Process" */
-
-static int numberOfJavaProcessesAtInitialization = 0;
-
-/*
- * Currently used CPU queries/counters and variables
- */
-static SingleCounterQueryP processTotalCPULoad = NULL;
-static MultipleCounterQueryP multiCounterCPULoad = NULL;
-static double cpuFactor = .0;
-static DWORD  numCpus = 0;
-
-/*
- * Seems WinXP PDH returns PDH_MORE_DATA whenever we send in a NULL buffer.
- * Let's just ignore it, since we make sure we have enough buffer anyway.
- */
-static int
-pdhFail(PDH_STATUS pdhStat) {
-    return pdhStat != ERROR_SUCCESS && pdhStat != PDH_MORE_DATA;
-}
-
-static const char*
-allocateAndCopy(const char* const originalString) {
-    size_t len;
-    char* allocatedString;
-
-    assert(originalString);
-
-    len = strlen(originalString);
-
-    allocatedString = malloc(len + 1);
-
-    if (!allocatedString) {
-        return NULL;
-    }
-
-    strncpy(allocatedString, originalString, len);
-    allocatedString[len] = '\0';
-
-    return allocatedString;
-}
-
-/*
- * Allocates memory into the supplied pointer and
- * fills it with the localized PDH artifact description, if indexed correctly.
- * Caller owns the memory from the point of returning from this function.
- *
- * @param index    the PDH counter index as specified in the registry
- * @param ppBuffer pointer to a char*.
- * @return         0 if successful, negative on failure.
- */
-static int
-lookupNameByIndex(DWORD index, char** ppBuffer) {
-    DWORD size;
-
-    assert(ppBuffer);
-
-    /* determine size needed */
-    if (PdhLookupPerfNameByIndex_i(NULL, index, NULL, &size) != PDH_MORE_DATA) {
-      /* invalid index? */
-      return -1;
-    }
-
-    *ppBuffer = malloc((size_t)size);
-
-    if (!*ppBuffer) {
-        return -1;
-    }
-
-    if (PdhLookupPerfNameByIndex_i(NULL, index, *ppBuffer, &size) != ERROR_SUCCESS) {
-        free(*ppBuffer);
-        *ppBuffer = NULL;
-        return -1;
-    }
-
-    /* windows vista does not null-terminate the string
-     * (although the docs says it will) */
-    (*ppBuffer)[size - 1] = '\0';
-
-    return 0;
-}
-
-/*
-* Construct a fully qualified PDH path
-*
-* @param objectName   a PDH Object string representation (required)
-* @param counterName  a PDH Counter string representation (required)
-* @param imageName    a process image name string, ex. "java" (opt)
-* @param instance     an instance string, ex. "0", "1", ... (opt)
-* @return             the fully qualified PDH path.
-*
-* Caller will own the returned malloc:ed string
-*/
-static const char*
-makeFullCounterPath(const char* const objectName,
-                    const char* const counterName,
-                    const char* const imageName,
-                    const char* const instance) {
-
-    size_t fullCounterPathLen;
-    char* fullCounterPath;
-
-    assert(objectName);
-    assert(counterName);
-
-    fullCounterPathLen = strlen(objectName);
-    fullCounterPathLen += strlen(counterName);
-
-    if (imageName) {
-        /*
-         * For paths using the "Process" Object.
-         *
-         * Examples:
-         * abstract: "\Process(imageName#instance)\Counter"
-         * actual:   "\Process(java#2)\ID Process"
-         */
-        fullCounterPathLen += PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN;
-        fullCounterPathLen += strlen(imageName);
-
-        /*
-         * imageName must be passed together with an associated
-         * instance "number" ("0", "1", "2", ...).
-         * This is required in order to create valid "Process" Object paths.
-         *
-         * Examples: "\Process(java#0)", \Process(java#1"), ...
-         */
-        assert(instance);
-
-        fullCounterPathLen += strlen(instance);
-
-        fullCounterPath = malloc(fullCounterPathLen + 1);
-
-        if (!fullCounterPath) {
-            return NULL;
-        }
-
-        _snprintf(fullCounterPath,
-                  fullCounterPathLen,
-                  PROCESS_OBJECT_INSTANCE_COUNTER_FMT,
-                  objectName,
-                  imageName,
-                  instance,
-                  counterName);
-    } else {
-        if (instance) {
-            /*
-             * For paths where the Object has multiple instances.
-             *
-             * Examples:
-             * abstract: "\Object(instance)\Counter"
-             * actual:   "\Processor(0)\% Privileged Time"
-             */
-            fullCounterPathLen += strlen(instance);
-            fullCounterPathLen += OBJECT_WITH_INSTANCES_COUNTER_FMT_LEN;
-        } else {
-            /*
-             * For "normal" paths.
-             *
-             * Examples:
-             * abstract: "\Object\Counter"
-             * actual:   "\Memory\Available Mbytes"
-             */
-            fullCounterPathLen += OBJECT_COUNTER_FMT_LEN;
-        }
-
-        fullCounterPath = malloc(fullCounterPathLen + 1);
-
-        if (!fullCounterPath) {
-            return NULL;
-        }
-
-        if (instance) {
-            _snprintf(fullCounterPath,
-                      fullCounterPathLen,
-                      OBJECT_WITH_INSTANCES_COUNTER_FMT,
-                      objectName,
-                      instance,
-                      counterName);
-        } else {
-            _snprintf(fullCounterPath,
-                      fullCounterPathLen,
-                      OBJECT_COUNTER_FMT,
-                      objectName,
-                      counterName);
-        }
-    }
-
-    fullCounterPath[fullCounterPathLen] = '\0';
-
-    return fullCounterPath;
-}
-
-/*
- * Resolves an index for a PDH artifact to
- * a localized, malloc:ed string representation.
- * Caller will own the returned malloc:ed string.
- *
- * @param pdhArtifactIndex  PDH index
- * @return                  malloc:ed string representation
- *                          of the requested pdh artifact (localized).
- *                          NULL on failure.
- */
-static const char*
-getPdhLocalizedArtifact(DWORD pdhArtifactIndex) {
-    char* pdhLocalizedArtifactString;
-
-    if (lookupNameByIndex(pdhArtifactIndex,
-                          &pdhLocalizedArtifactString) != 0) {
-        return NULL;
-    }
-
-    return pdhLocalizedArtifactString;
-}
-
-static void
-pdhCleanup(HQUERY* const query, HCOUNTER* const counter) {
-    if (counter && *counter) {
-        PdhRemoveCounter_i(*counter);
-        *counter = NULL;
-    }
-    if (query && *query) {
-        PdhCloseQuery_i(*query);
-        *query = NULL;
-    }
-}
-
-static void
-destroySingleCounter(SingleCounterQueryP counterQuery) {
-    if (counterQuery) {
-        pdhCleanup(&counterQuery->query.query, &counterQuery->counter);
-    }
-}
-
-static void
-destroyMultiCounter(MultipleCounterQueryP multiCounterQuery) {
-    int i;
-    if (multiCounterQuery) {
-        if (multiCounterQuery->counters) {
-            for (i = 0; i < multiCounterQuery->noOfCounters; i++) {
-                pdhCleanup(NULL, &multiCounterQuery->counters[i]);
-            }
-            free(multiCounterQuery->counters);
-            multiCounterQuery->counters = NULL;
-        }
-        pdhCleanup(&multiCounterQuery->query.query, NULL);
-    }
-}
-
-static int
-openQuery(HQUERY* const query) {
-    assert(query);
-
-    if (PdhOpenQuery_i(NULL, 0, query) != ERROR_SUCCESS) {
-        return -1;
-    }
-
-    return 0;
-}
-
-static int
-addCounter(HQUERY query,
-           const char* const fullCounterPath,
-           HCOUNTER* const counter) {
-
-    assert(fullCounterPath);
-    assert(counter);
-
-    if (PdhAddCounter_i(query,
-                        fullCounterPath,
-                        0,
-                        counter) != ERROR_SUCCESS) {
-        return -1;
-    }
-
-    return 0;
-}
-
-/*
- * Sets up the supplied SingleCounterQuery to listen for the specified counter.
- *
- * @param counterQuery       the counter query to set up.
- * @param fullCounterPath    the string specifying the full path to the counter.
- * @returns                  0 if successful, negative on failure.
- */
-static int
-initializeSingleCounterQuery(SingleCounterQueryP counterQuery,
-                             const char* const fullCounterPath) {
-    assert(counterQuery);
-    assert(fullCounterPath);
-
-    if (openQuery(&counterQuery->query.query) == 0) {
-        if (addCounter(counterQuery->query.query,
-                       fullCounterPath,
-                       &counterQuery->counter) == 0) {
-            return 0;
-        }
-    }
-
-    return -1;
-}
-
-/*
- * Sets up a SingleCounterQuery
- *
- * param counter             the counter query to set up.
- * param localizedObject     string representing the PDH object to query
- * param localizedCounter    string representing the PDH counter to query
- * param processImageName    if the counter query needs the process image name ("java")
- * param instance            if the counter has instances, this is the instance ("\Processor(0)\")
-                                 where 0 is the instance
- * param firstSampleOnInit   for counters that need two queries to yield their values,
-                                 the first query can be issued just after initialization
- *
- * @returns                   0 if successful, negative on failure.
- */
-static int
-initializeSingleCounter(SingleCounterQueryP const counter,
-                        const char* const localizedObject,
-                        const char* const localizedCounter,
-                        const char* const processImageName,
-                        const char* const instance,
-                        BOOL firstSampleOnInit) {
-    int retValue = -1;
-
-    const char* fullCounterPath = makeFullCounterPath(localizedObject,
-                                                      localizedCounter,
-                                                      processImageName,
-                                                      instance);
-
-    if (fullCounterPath) {
-
-        assert(counter);
-
-        if (initializeSingleCounterQuery(counter, fullCounterPath) == 0) {
-            /*
-             * According to the MSDN documentation, rate counters must be read twice:
-             *
-             * "Obtaining the value of rate counters such as Page faults/sec requires that
-             *  PdhCollectQueryData be called twice, with a specific time interval between
-             *  the two calls, before calling PdhGetFormattedCounterValue. Call Sleep to
-             *  implement the waiting period between the two calls to PdhCollectQueryData."
-             *
-             *  Take the first sample here already to allow for the next (first) "real" sample
-             *  to succeed.
-             */
-            if (firstSampleOnInit) {
-                PdhCollectQueryData_i(counter->query.query);
-            }
-
-            retValue = 0;
-        }
-        free((char*)fullCounterPath);
-    }
-
-    return retValue;
-}
-
-static void
-perfInit(void) {
-    InitializePdhCriticalSection(&initializationLock);
-}
-
-static int
-getProcessID() {
-    static int myPid = 0;
-    if (0 == myPid) {
-        myPid = _getpid();
-    }
-    return myPid;
-}
-
-/*
- * Working against the Process object and it's related counters is inherently problematic
- * when using the PDH API:
- *
- * For PDH, a process is not primarily identified by it's process id,
- * but with a sequential number, for example \Process(java#0), \Process(java#1), ....
- * The really bad part is that this list is reset as soon as one process exits:
- * If \Process(java#1) exits, \Process(java#3) now becomes \Process(java#2) etc.
- *
- * The PDH query api requires a process identifier to be submitted when registering
- * a query, but as soon as the list resets, the query is invalidated (since the name
- * changed).
- *
- * Solution:
- * The #number identifier for a Process query can only decrease after process creation.
- *
- * Therefore we create an array of counter queries for all process object instances
- * up to and including ourselves:
- *
- * Ex. we come in as third process instance (java#2), we then create and register
- * queries for the following Process object instances:
- * java#0, java#1, java#2
- *
- * currentQueryIndexForProcess() keeps track of the current "correct" query
- * (in order to keep this index valid when the list resets from underneath,
- * ensure to call getCurrentQueryIndexForProcess() before every query involving
- * Process object instance data).
- */
-static int
-currentQueryIndexForProcess(void) {
-    HQUERY tmpQuery = NULL;
-    HCOUNTER handleCounter = NULL;
-    int retValue = -1;
-
-    assert(pdhProcessImageName);
-    assert(pdhIDProcessCounterFmt);
-
-    if (openQuery(&tmpQuery) == 0) {
-        int index;
-
-        /* iterate over all instance indexes and try to find our own pid */
-        for (index = 0; index < INT_MAX; ++index) {
-            char fullIDProcessCounterPath[MAX_PATH];
-            PDH_FMT_COUNTERVALUE counterValue;
-            PDH_STATUS res;
-
-            _snprintf(fullIDProcessCounterPath,
-                      MAX_PATH,
-                      pdhIDProcessCounterFmt,
-                      index);
-
-            if (addCounter(tmpQuery, fullIDProcessCounterPath, &handleCounter) != 0) {
-                break;
-            }
-
-            res = PdhCollectQueryData_i(tmpQuery);
-
-            if (PDH_INVALID_HANDLE == res || PDH_NO_DATA == res) {
-                break;
-            }
-
-            PdhGetFormattedCounterValue_i(handleCounter,
-                                          PDH_FMT_LONG,
-                                          NULL,
-                                          &counterValue);
-            /*
-             * This check seems to be needed for Win2k SMP boxes, since
-             * they for some reason don't return PDH_NO_DATA for non existing
-             * counters.
-             */
-            if (counterValue.CStatus != PDH_CSTATUS_VALID_DATA) {
-                break;
-            }
-
-            if ((LONG)getProcessID() == counterValue.longValue) {
-                retValue = index;
-                break;
-            }
-        }
-    }
-
-    pdhCleanup(&tmpQuery, &handleCounter);
-
-    return retValue;
-}
-
-/*
- * If successful, returns the #index corresponding to our PID
- * as resolved by the pdh query:
- * "\Process(java#index)\ID Process" (or localized equivalent)
- *
- * This function should be called before attempting to read
- * from any Process related counter(s), and the return value
- * is the index to be used for indexing an array of Process object query's:
- *
- * Example:
- * processTotalCPULoad[currentQueryIndex].query
- *
- * Returns -1 on failure.
- */
-static int
-getCurrentQueryIndexForProcess() {
-    int currentQueryIndex = currentQueryIndexForProcess();
-
-    assert(currentQueryIndex >= 0 &&
-           currentQueryIndex < numberOfJavaProcessesAtInitialization);
-
-    return currentQueryIndex;
-}
-
-/*
- * Returns the PDH string identifying the current process image name.
- * Use this name as a qualifier when getting counters from the PDH Process Object
- * representing your process.
-
- * Example:
- * "\Process(java#0)\Virtual Bytes" - where "java" is the PDH process
- * image name.
- *
- * Please note that the process image name is not necessarily "java",
- * hence the use of GetModuleFileName() to detect the process image name.
- *
- * @return   the process image name to be used when retrieving
- *           PDH counters from the current process. The caller will
-             own the returned malloc:ed string. NULL if failure.
- */
-static const char*
-getPdhProcessImageName() {
-    char moduleName[MAX_PATH];
-    char* processImageName;
-    char* dotPos;
-
-    // Find our module name and use it to extract the image name used by PDH
-    DWORD getmfnReturn = GetModuleFileName(NULL, moduleName, sizeof(moduleName));
-
-    if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
-        return NULL;
-    }
-
-    if (getmfnReturn >= MAX_PATH || 0 == getmfnReturn) {
-        return NULL;
-    }
-
-    processImageName = strrchr(moduleName, '\\'); //drop path
-    processImageName++;                           //skip slash
-    dotPos = strrchr(processImageName, '.');      //drop .exe
-    dotPos[0] = '\0';
-
-    return allocateAndCopy(processImageName);
-}
-
-/*
- * Sets up the supplied MultipleCounterQuery to check on the processors via PDH CPU counters.
- * TODO: Refactor and prettify as with the the SingleCounter queries
- * if more MultipleCounterQueries are discovered/needed.
- *
- * @param multiCounterCPULoad  a pointer to a MultipleCounterQueryS, will be filled in with
- *                             the necessary info to check the PDH processor counters.
- * @return                     0 if successful, negative on failure.
- */
-static int
-initializeMultipleCounterForCPUs(MultipleCounterQueryP multiCounterCPULoad) {
-    DWORD cSize = 0;
-    DWORD iSize = 0;
-    DWORD pCount;
-    DWORD index;
-    char* processor = NULL; //'Processor' == PDH_PROCESSOR_IDX
-    char* time = NULL;      //'Time' == PDH_PROCESSOR_TIME_IDX
-    char* instances = NULL;
-    char* tmp;
-    int   retValue = -1;
-    PDH_STATUS pdhStat;
-
-    if (lookupNameByIndex(PDH_PROCESSOR_IDX, &processor) != 0) {
-        goto end;
-    }
-
-    if (lookupNameByIndex(PDH_PROCESSOR_TIME_IDX, &time) != 0) {
-        goto end;
-    }
-
-    //ok, now we have enough to enumerate all processors.
-    pdhStat = PdhEnumObjectItems_i(
-                                   NULL, // reserved
-                                   NULL, // local machine
-                                   processor, // object to enumerate
-                                   NULL, // pass in NULL buffers
-                                   &cSize, // and 0 length to get
-                                   NULL, // required size
-                                   &iSize, // of the buffers in chars
-                                   PERF_DETAIL_WIZARD, // counter detail level
-                                   0);
-
-    if (pdhFail(pdhStat)) {
-        goto end;
-    }
-
-    instances = calloc(iSize, 1);
-
-    if (!instances) {
-        goto end;
-    }
-
-    cSize = 0;
-
-    pdhStat = PdhEnumObjectItems_i(
-                                   NULL, // reserved
-                                   NULL, // local machine
-                                   processor, // object to enumerate
-                                   NULL, // pass in NULL buffers
-                                   &cSize,
-                                   instances, // now allocated to be filled in
-                                   &iSize, // and size is known
-                                   PERF_DETAIL_WIZARD, // counter detail level
-                                   0);
-
-    if (pdhFail(pdhStat)) {
-        goto end;
-    }
-
-    // enumerate the Processor instances ("\Processor(0)", "\Processor(1)", ..., "\Processor(_Total)")
-    for (pCount = 0, tmp = instances; *tmp != '\0'; tmp = &tmp[strlen(tmp)+1], pCount++);
-
-    assert(pCount == numCpus+1);
-
-    //ok, we now have the number of Processor instances - allocate an HCOUNTER for each
-    multiCounterCPULoad->counters = (HCOUNTER*)malloc(pCount * sizeof(HCOUNTER));
-
-    if (!multiCounterCPULoad->counters) {
-        goto end;
-    }
-
-    multiCounterCPULoad->noOfCounters = pCount;
-
-    if (openQuery(&multiCounterCPULoad->query.query) != 0) {
-        goto end;
-    }
-
-    // fetch instance and register its corresponding HCOUNTER with the query
-    for (index = 0, tmp = instances; *tmp != '\0'; tmp = &tmp[strlen(tmp)+1], ++index) {
-        const char* const fullCounterPath = makeFullCounterPath(processor, time, NULL, tmp);
-
-        if (!fullCounterPath) {
-            goto end;
-        }
-
-        retValue = addCounter(multiCounterCPULoad->query.query,
-                              fullCounterPath,
-                              &multiCounterCPULoad->counters[index]);
-
-        free((char*)fullCounterPath);
-
-        if (retValue != 0) {
-            goto end;
-        }
-    }
-
-    // Query once to initialize the counters which require at least two samples
-    // (like the % CPU usage) to calculate correctly.
-    PdhCollectQueryData_i(multiCounterCPULoad->query.query);
-
-  end:
-    if (processor) {
-        free(processor);
-    }
-
-    if (time) {
-        free(time);
-    }
-
-    if (instances) {
-        free(instances);
-    }
-
-    return retValue;
-}
-
-/*
- * Dynamically sets up function pointers to the PDH library.
- *
- * @param h  HMODULE for the PDH library
- * @return   0 on success, negative on failure.
- */
-static int
-bindPdhFunctionPointers(HMODULE h) {
-    assert(h);
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    /* The 'A' at the end means the ANSI (not the UNICODE) vesions of the methods */
-    PdhAddCounter_i         = (PdhAddCounterFunc)GetProcAddress(h, "PdhAddCounterA");
-    PdhOpenQuery_i         = (PdhOpenQueryFunc)GetProcAddress(h, "PdhOpenQueryA");
-    PdhCloseQuery_i         = (PdhCloseQueryFunc)GetProcAddress(h, "PdhCloseQuery");
-    PdhCollectQueryData_i     = (PdhCollectQueryDataFunc)GetProcAddress(h, "PdhCollectQueryData");
-    PdhGetFormattedCounterValue_i = (PdhGetFormattedCounterValueFunc)GetProcAddress(h, "PdhGetFormattedCounterValue");
-    PdhEnumObjectItems_i         = (PdhEnumObjectItemsFunc)GetProcAddress(h, "PdhEnumObjectItemsA");
-    PdhRemoveCounter_i         = (PdhRemoveCounterFunc)GetProcAddress(h, "PdhRemoveCounter");
-    PdhLookupPerfNameByIndex_i     = (PdhLookupPerfNameByIndexFunc)GetProcAddress(h, "PdhLookupPerfNameByIndexA");
-
-    if (!PdhAddCounter_i || !PdhOpenQuery_i ||
-        !PdhCloseQuery_i || !PdhCollectQueryData_i ||
-        !PdhGetFormattedCounterValue_i || !PdhEnumObjectItems_i ||
-        !PdhRemoveCounter_i || !PdhLookupPerfNameByIndex_i)
-    {
-        return -1;
-    }
-    return 0;
-}
-
-/*
- * Returns the counter value as a double for the specified query.
- * Will collect the query data and update the counter values as necessary.
- *
- * @param query       the query to update (if needed).
- * @param c           the counter to read.
- * @param value       where to store the formatted value.
- * @param format      the format to use (i.e. PDH_FMT_DOUBLE, PDH_FMT_LONG etc)
- * @return            0 if no error
- *                    -1 if PdhCollectQueryData fails
- *                    -2 if PdhGetFormattedCounterValue fails
- */
-static int
-getPerformanceData(UpdateQueryP query, HCOUNTER c, PDH_FMT_COUNTERVALUE* value, DWORD format) {
-    clock_t now = clock();
-
-    /*
-     * Need to limit how often we update the query
-     * to minimize the Heisenberg effect.
-     * (PDH behaves erratically if the counters are
-     * queried too often, especially counters that
-     * store and use values from two consecutive updates,
-     * like cpu load.)
-     */
-    if (now - query->lastUpdate > MIN_UPDATE_INTERVAL) {
-        if (PdhCollectQueryData_i(query->query) != ERROR_SUCCESS) {
-            return -1;
-        }
-        query->lastUpdate = now;
-    }
-
-    if (PdhGetFormattedCounterValue_i(c, format, NULL, value) != ERROR_SUCCESS) {
-        return -2;
-    }
-
-    return 0;
-}
-
-static int
-allocateAndInitializePdhConstants() {
-    const char* pdhLocalizedProcessObject = NULL;
-    const char* pdhLocalizedIDProcessCounter = NULL;
-    size_t pdhIDProcessCounterFmtLen;
-    int currentQueryIndex;
-    int retValue = -1;
-
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    assert(!pdhProcessImageName);
-    pdhProcessImageName = getPdhProcessImageName();
-    if (!pdhProcessImageName) {
-        goto end;
-    }
-
-    pdhLocalizedProcessObject = getPdhLocalizedArtifact(PDH_PROCESS_IDX);
-    if (!pdhLocalizedProcessObject) {
-        goto end;
-    }
-
-    pdhLocalizedIDProcessCounter = getPdhLocalizedArtifact(PDH_ID_PROCESS_IDX);
-    if (!pdhLocalizedIDProcessCounter) {
-        goto end;
-    }
-
-    assert(!pdhIDProcessCounterFmt);
-
-    pdhIDProcessCounterFmtLen = strlen(pdhProcessImageName);
-    pdhIDProcessCounterFmtLen += strlen(pdhLocalizedProcessObject);
-    pdhIDProcessCounterFmtLen += strlen(pdhLocalizedIDProcessCounter);
-    pdhIDProcessCounterFmtLen += PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN;
-    pdhIDProcessCounterFmtLen += 2; // "%d"
-
-    assert(pdhIDProcessCounterFmtLen < MAX_PATH);
-    pdhIDProcessCounterFmt = malloc(pdhIDProcessCounterFmtLen + 1);
-    if (!pdhIDProcessCounterFmt) {
-        goto end;
-    }
-
-    /* "\Process(java#%d)\ID Process" */
-    _snprintf(pdhIDProcessCounterFmt,
-              pdhIDProcessCounterFmtLen,
-              PROCESS_OBJECT_INSTANCE_COUNTER_FMT,
-              pdhLocalizedProcessObject,
-              pdhProcessImageName,
-              "%d",
-              pdhLocalizedIDProcessCounter);
-
-    pdhIDProcessCounterFmt[pdhIDProcessCounterFmtLen] = '\0';
-
-    assert(0 == numberOfJavaProcessesAtInitialization);
-    currentQueryIndex = currentQueryIndexForProcess();
-    if (-1 == currentQueryIndex) {
-        goto end;
-    }
-
-    numberOfJavaProcessesAtInitialization = currentQueryIndex + 1;
-    assert(numberOfJavaProcessesAtInitialization >= 1);
-
-    retValue = 0;
-
-  end:
-
-    if (pdhLocalizedProcessObject) {
-        free((char*)pdhLocalizedProcessObject);
-    }
-
-    if (pdhLocalizedIDProcessCounter) {
-        free((char*)pdhLocalizedIDProcessCounter);
-    }
-
-    return retValue;
-}
-
-static void
-deallocatePdhConstants() {
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    if (pdhProcessImageName) {
-        free((char*)pdhProcessImageName);
-        pdhProcessImageName = NULL;
-    }
-
-    if (pdhIDProcessCounterFmt) {
-      free(pdhIDProcessCounterFmt);
-      pdhIDProcessCounterFmt = NULL;
-    }
-
-    numberOfJavaProcessesAtInitialization = 0;
-}
-
-static int
-initializeCPUCounters() {
-    SYSTEM_INFO si;
-    char* localizedProcessObject;
-    char* localizedProcessorTimeCounter;
-    int i;
-    int retValue = -1;
-
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    assert(0 == numCpus);
-    GetSystemInfo(&si);
-    numCpus = si.dwNumberOfProcessors;
-    assert(numCpus >= 1);
-
-    /* Initialize the denominator for the jvm load calculations */
-    assert(.0 == cpuFactor);
-    cpuFactor = numCpus * 100;
-
-    if (lookupNameByIndex(PDH_PROCESS_IDX,
-                          &localizedProcessObject) == 0) {
-
-        if (lookupNameByIndex(PDH_PROCESSOR_TIME_IDX,
-                              &localizedProcessorTimeCounter) == 0) {
-
-            assert(processTotalCPULoad);
-            assert(pdhProcessImageName);
-
-            for (i = 0; i < numberOfJavaProcessesAtInitialization; ++i) {
-                char instanceIndexBuffer[32];
-                retValue = initializeSingleCounter(&processTotalCPULoad[i],
-                                                   localizedProcessObject,
-                                                   localizedProcessorTimeCounter,
-                                                   pdhProcessImageName,
-                                                   itoa(i, instanceIndexBuffer, 10),
-                                                   TRUE);
-                if (retValue != 0) {
-                    break;
-                }
-            }
-            free(localizedProcessorTimeCounter);
-        }
-        free(localizedProcessObject);
-    }
-
-    if (retValue != 0) {
-        return -1;
-    }
-
-    assert(multiCounterCPULoad);
-    return initializeMultipleCounterForCPUs(multiCounterCPULoad);
-}
-
-static void
-deallocateCPUCounters() {
-    int i;
-
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    if (processTotalCPULoad) {
-        for (i = 0; i < numberOfJavaProcessesAtInitialization; ++i) {
-            destroySingleCounter(&processTotalCPULoad[i]);
-        }
-        free(processTotalCPULoad);
-        processTotalCPULoad = NULL;
-    }
-
-    if (multiCounterCPULoad) {
-        destroyMultiCounter(multiCounterCPULoad);
-        free(multiCounterCPULoad);
-        multiCounterCPULoad = NULL;
-    }
-
-    cpuFactor = .0;
-    numCpus = 0;
-}
-
-static void
-pdhInitErrorHandler(HMODULE h) {
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-
-    deallocatePdhConstants();
-
-    if (h) {
-        FreeLibrary(h);
-    }
-}
-
-/*
- * Helper to initialize the PDH library, function pointers and constants.
- *
- * @return  0 if successful, negative on failure.
- */
-static int
-pdhInit() {
-    static BOOL initialized = FALSE;
-    int retValue;
-
-    if (initialized) {
-        return 0;
-    }
-
-    retValue = 0;
-
-    EnterPdhCriticalSection(&initializationLock); {
-        if (!initialized) {
-            HMODULE h = NULL;
-            if ((h = LoadLibrary("pdh.dll")) == NULL) {
-                retValue = -1;
-            } else if (bindPdhFunctionPointers(h) < 0) {
-                retValue = -1;
-            } else if (allocateAndInitializePdhConstants() < 0) {
-                retValue = -1;
-            }
-
-            if (0 == retValue) {
-                initialized = TRUE;
-            } else {
-                pdhInitErrorHandler(h);
-            }
-        }
-    } LeavePdhCriticalSection(&initializationLock);
-
-    return retValue;
-}
-
-static int
-allocateCPUCounters() {
-    assert(GetCurrentThreadId() == initializationLock.owningThread);
-    assert(numberOfJavaProcessesAtInitialization >= 1);
-    assert(!processTotalCPULoad);
-    assert(!multiCounterCPULoad);
-
-    /*
-     * Create an array of Process object queries, for each instance
-     * up to and including our own (java#0, java#1, java#2, ...).
-     */
-    processTotalCPULoad = calloc(numberOfJavaProcessesAtInitialization,
-                                 sizeof(SingleCounterQueryS));
-
-    if (!processTotalCPULoad) {
-        return -1;
-    }
-
-    multiCounterCPULoad = calloc(1, sizeof(MultipleCounterQueryS));
-
-    if (!multiCounterCPULoad) {
-        return -1;
-    }
-
-    return 0;
-}
-
-static int
-initializePdhCPUCounters() {
-    static BOOL initialized = FALSE;
-    int retValue;
-
-    if (initialized) {
-        return 0;
-    }
-
-    retValue = 0;
-
-    EnterPdhCriticalSection(&initializationLock); {
-        if (!initialized) {
-            if (pdhInit() < 0) {
-                retValue = -1;
-            }  else if (allocateCPUCounters() < 0) {
-                retValue = -1;
-            } else if (initializeCPUCounters() < 0) {
-                retValue = -1;
-            }
-
-            if (0 == retValue) {
-                initialized = TRUE;
-            } else {
-              deallocateCPUCounters();
-            }
-        }
-    } LeavePdhCriticalSection(&initializationLock);
-
-    return retValue;
-}
-
-static int
-perfCPUInit() {
-    return initializePdhCPUCounters();
-}
-
-static double
-perfGetProcessCPULoad() {
-    PDH_FMT_COUNTERVALUE cv;
-    int currentQueryIndex;
-
-    if (perfCPUInit() < 0) {
-        // warn?
-        return -1.0;
-    }
-
-    currentQueryIndex = getCurrentQueryIndexForProcess();
-
-    if (getPerformanceData(&processTotalCPULoad[currentQueryIndex].query,
-                           processTotalCPULoad[currentQueryIndex].counter,
-                           &cv,
-                           PDH_FMT_DOUBLE | PDH_FMT_NOCAP100) == 0) {
-        double d = cv.doubleValue / cpuFactor;
-        d = min(1, d);
-        d = max(0, d);
-        return d;
-    }
-    return -1.0;
-}
-
-static double
-perfGetCPULoad(int which) {
-    PDH_FMT_COUNTERVALUE cv;
-    HCOUNTER c;
-
-    if (perfCPUInit() < 0) {
-        // warn?
-        return -1.0;
-    }
-
-    if (-1 == which) {
-        c = multiCounterCPULoad->counters[multiCounterCPULoad->noOfCounters - 1];
-    } else {
-        if (which < multiCounterCPULoad->noOfCounters) {
-            c = multiCounterCPULoad->counters[which];
-        } else {
-            return -1.0;
-        }
-    }
-    if (getPerformanceData(&multiCounterCPULoad->query, c, &cv, PDH_FMT_DOUBLE ) == 0) {
-        return cv.doubleValue / 100;
-    }
-    return -1.0;
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getSystemCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    return perfGetCPULoad(-1);
-}
-
-JNIEXPORT jdouble JNICALL
-Java_sun_management_OperatingSystemImpl_getProcessCpuLoad0
-(JNIEnv *env, jobject dummy)
-{
-    return perfGetProcessCPULoad();
-}
--- a/jdk/src/java.security.jgss/share/classes/sun/security/jgss/GSSUtil.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.security.jgss/share/classes/sun/security/jgss/GSSUtil.java	Wed Jul 05 20:32:21 2017 +0200
@@ -59,6 +59,8 @@
                 GSSUtil.createOid("1.2.840.113554.1.2.2");
     public static final Oid GSS_KRB5_MECH_OID2 =
                 GSSUtil.createOid("1.3.5.1.5.2");
+    public static final Oid GSS_KRB5_MECH_OID_MS =
+                GSSUtil.createOid("1.2.840.48018.1.2.2");
 
     public static final Oid GSS_SPNEGO_MECH_OID =
                 GSSUtil.createOid("1.3.6.1.5.5.2");
@@ -101,7 +103,8 @@
 
     public static boolean isKerberosMech(Oid oid) {
         return (GSS_KRB5_MECH_OID.equals(oid) ||
-                GSS_KRB5_MECH_OID2.equals(oid));
+                GSS_KRB5_MECH_OID2.equals(oid) ||
+                GSS_KRB5_MECH_OID_MS.equals(oid));
 
     }
 
--- a/jdk/src/java.security.jgss/share/classes/sun/security/jgss/spnego/SpNegoContext.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.security.jgss/share/classes/sun/security/jgss/spnego/SpNegoContext.java	Wed Jul 05 20:32:21 2017 +0200
@@ -538,14 +538,21 @@
                 // get the token for mechanism
                 byte[] accept_token;
 
-                if (mechList[0].equals(mech_wanted)) {
+                if (mechList[0].equals(mech_wanted) ||
+                        (GSSUtil.isKerberosMech(mechList[0]) &&
+                         GSSUtil.isKerberosMech(mech_wanted))) {
                     // get the mechanism token
+                    if (DEBUG && !mech_wanted.equals(mechList[0])) {
+                        System.out.println("SpNegoContext.acceptSecContext: " +
+                                "negotiated mech adjusted to " + mechList[0]);
+                    }
                     byte[] mechToken = initToken.getMechToken();
                     if (mechToken == null) {
                         throw new GSSException(GSSException.FAILURE, -1,
                                 "mechToken is missing");
                     }
                     accept_token = GSS_acceptSecContext(mechToken);
+                    mech_wanted = mechList[0];
                 } else {
                     accept_token = null;
                 }
--- a/jdk/src/java.security.jgss/windows/native/libw2k_lsa_auth/NativeCreds.c	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/java.security.jgss/windows/native/libw2k_lsa_auth/NativeCreds.c	Wed Jul 05 20:32:21 2017 +0200
@@ -389,7 +389,7 @@
     jobject authTime, renewTillTime, hostAddresses = NULL;
     KERB_EXTERNAL_TICKET *msticket;
     int found = 0;
-    FILETIME Now, EndTime, LocalEndTime;
+    FILETIME Now, EndTime;
 
     int i, netypes;
     jint *etypes = NULL;
@@ -476,8 +476,7 @@
             GetSystemTimeAsFileTime(&Now);
             EndTime.dwLowDateTime = msticket->EndTime.LowPart;
             EndTime.dwHighDateTime = msticket->EndTime.HighPart;
-            FileTimeToLocalFileTime(&EndTime, &LocalEndTime);
-            if (CompareFileTime(&Now, &LocalEndTime) < 0) {
+            if (CompareFileTime(&Now, &EndTime) < 0) {
                 for (i=0; i<netypes; i++) {
                     if (etypes[i] == msticket->SessionKey.KeyType) {
                         found = 1;
--- a/jdk/src/jdk.jdi/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/tools/jdi/InterfaceTypeImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -131,6 +131,15 @@
     }
 
     @Override
+    boolean isAssignableTo(ReferenceType type) {
+        if (type.name().equals("java.lang.Object")) {
+            // interfaces are always assignable to j.l.Object
+            return true;
+        }
+        return super.isAssignableTo(type);
+    }
+
+    @Override
     List<InterfaceType> interfaces() {
         return superinterfaces();
     }
@@ -140,4 +149,4 @@
         // method must be directly in this interface
         return this.equals(method.declaringType());
     }
-}
\ No newline at end of file
+}
--- a/jdk/src/jdk.jvmstat/share/classes/sun/tools/jstatd/Jstatd.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.jvmstat/share/classes/sun/tools/jstatd/Jstatd.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -64,15 +64,9 @@
                 int localport = (port < 0) ? Registry.REGISTRY_PORT : port;
                 registry = LocateRegistry.createRegistry(localport);
                 bind(name, remoteHost);
+            } else {
+                throw e;
             }
-            else {
-                System.out.println("Could not contact registry\n"
-                                   + e.getMessage());
-                e.printStackTrace();
-            }
-        } catch (RemoteException e) {
-            System.err.println("Could not bind " + name + " to RMI Registry");
-            e.printStackTrace();
         }
     }
 
@@ -142,23 +136,28 @@
             RemoteHost stub = (RemoteHost) UnicastRemoteObject.exportObject(
                     remoteHost, 0);
             bind(name.toString(), remoteHost);
+            System.out.println("jstatd started (bound to " + name.toString() + ")");
+            System.out.flush();
         } catch (MalformedURLException e) {
             if (rminame != null) {
                 System.out.println("Bad RMI server name: " + rminame);
             } else {
-                System.out.println("Bad RMI URL: " + name + " : "
-                                   + e.getMessage());
+                System.out.println("Bad RMI URL: " + name);
             }
+            e.printStackTrace(System.out);
             System.exit(1);
         } catch (java.rmi.ConnectException e) {
             // could not attach to or create a registry
-            System.out.println("Could not contact RMI registry\n"
-                               + e.getMessage());
+            System.out.println("Could not contact RMI registry");
+            e.printStackTrace(System.out);
+            System.exit(1);
+        } catch (RemoteException e) {
+            System.out.println("Could not bind " + name + " to RMI Registry");
+            e.printStackTrace(System.out);
             System.exit(1);
         } catch (Exception e) {
-            System.out.println("Could not create remote object\n"
-                               + e.getMessage());
-            e.printStackTrace();
+            System.out.println("Could not create remote object");
+            e.printStackTrace(System.out);
             System.exit(1);
         }
     }
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/de/TimeZoneNames_de.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/de/TimeZoneNames_de.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"Golf Normalzeit", "GST",
                                      "Golf Sommerzeit", "GDT",
                                      "Zeitzone f\u00FCr Persischen Golf", "GT"};
-        String HAST[] = new String[] {"Hawaii-Aleutische Normalzeit", "HAST",
-                                      "Hawaii-Aleutische Sommerzeit", "HADT",
-                                      "Zeitzone f\u00FCr Hawaii und Al\u00EButen", "HAT"};
         String HKT[] =  new String[] {"Hongkong Zeit", "HKT",
                                       "Hongkong Sommerzeit", "HKST",
                                       "Hongkong Zeit", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Paraguay Sommerzeit", "PYST",
                                                "Paraguay Zeit", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/es/TimeZoneNames_es.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/es/TimeZoneNames_es.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"Hora est\u00e1ndar del Golfo", "GST",
                                      "Hora de verano del Golfo", "GDT",
                                      "Hora del Golfo", "GT"};
-        String HAST[] = new String[] {"Hora est\u00e1ndar de Hawaii-Aleutianas", "HAST",
-                                      "Hora de verano de Hawaii-Aleutianas", "HADT",
-                                      "Hora de Hawaii-Aleutian", "HAT"};
         String HKT[] =  new String[] {"Hora de Hong Kong", "HKT",
                                       "Hora de verano de Hong Kong", "HKST",
                                       "Hora de Hong Kong", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Hora de verano de Paraguay", "PYST",
                                                "Hora de Paraguay", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/fr/TimeZoneNames_fr.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/fr/TimeZoneNames_fr.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"Heure normale du Golfe", "GST",
                                      "Heure avanc\u00e9e du Golfe", "GDT",
                                      "Golfe", "GT"} ;
-        String HAST[] = new String[] {"Heure normale d'Hawa\u00ef-Al\u00e9outiennes", "HAST",
-                                      "Heure avanc\u00e9e d'Hawa\u00ef-Al\u00e9outiennes", "HADT",
-                                      "Hawa\u00EF-Iles Al\u00E9outiennes", "HAT"} ;
         String HKT[] =  new String[] {"Heure de Hong Kong", "HKT",
                                       "Heure d'\u00e9t\u00e9 de Hong Kong", "HKST",
                                       "Heure de Hong-Kong", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Heure d'\u00e9t\u00e9 du Paraguay", "PYST",
                                                "Heure du Paraguay", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/it/TimeZoneNames_it.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/it/TimeZoneNames_it.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"Ora solare del golfo", "GST",
                                      "Ora legale del golfo", "GDT",
                                      "Ora del golfo", "GT"};
-        String HAST[] = new String[] {"Ora solare delle Isole Hawaii-Aleutine", "HAST",
-                                      "Ora solare delle Isole Hawaii-Aleutine", "HADT",
-                                      "Ora Hawaii-Aleutine", "HAT"};
         String HKT[] =  new String[] {"Ora di Hong Kong", "HKT",
                                       "Ora estiva di Hong Kong", "HKST",
                                       "Ora di Hong Kong", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Ora estiva del Paraguay", "PYST",
                                                "Ora del Paraguay", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/ja/TimeZoneNames_ja.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/ja/TimeZoneNames_ja.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"\u6e7e\u5cb8\u6a19\u6e96\u6642", "GST",
                                      "\u6e7e\u5cb8\u590f\u6642\u9593", "GDT",
                                      "\u6E7E\u5CB8\u6642\u9593", "GT"};
-        String HAST[] = new String[] {"\u30cf\u30ef\u30a4 - \u30a2\u30ea\u30e5\u30fc\u30b7\u30e3\u30f3\u6a19\u6e96\u6642", "HAST",
-                                      "\u30cf\u30ef\u30a4 - \u30a2\u30ea\u30e5\u30fc\u30b7\u30e3\u30f3\u590f\u6642\u9593", "HADT",
-                                      "\u30CF\u30EF\u30A4\u30FB\u30A2\u30EA\u30E5\u30FC\u30B7\u30E3\u30F3\u6642\u9593", "HAT"};
         String HKT[] =  new String[] {"\u9999\u6e2f\u6642\u9593", "HKT",
                                       "\u9999\u6e2f\u590f\u6642\u9593", "HKST",
                                       "\u9999\u6E2F\u6642\u9593", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "\u30d1\u30e9\u30b0\u30a2\u30a4\u590f\u6642\u9593", "PYST",
                                                "\u30D1\u30E9\u30B0\u30A2\u30A4\u6642\u9593", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/ko/TimeZoneNames_ko.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/ko/TimeZoneNames_ko.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"\uac78\ud504\ub9cc \ud45c\uc900\uc2dc", "GST",
                                      "\uac78\ud504\ub9cc \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "GDT",
                                      "\uAC78\uD504\uB9CC \uD45C\uC900\uC2DC", "GT"};
-        String HAST[] = new String[] {"\ud558\uc640\uc774 \uc54c\ub958\uc0e8 \ud45c\uc900\uc2dc", "HAST",
-                                      "\ud558\uc640\uc774 \uc54c\ub958\uc0e8 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "HADT",
-                                      "\uD558\uC640\uC774-\uC54C\uB8E8\uC0E8 \uD45C\uC900\uC2DC", "HAT"};
         String HKT[] =  new String[] {"\ud64d\ucf69 \uc2dc\uac04", "HKT",
                                       "\ud64d\ucf69 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "HKST",
                                       "\uD64D\uCF69 \uD45C\uC900\uC2DC", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "\ud30c\ub77c\uacfc\uc774 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PYST",
                                                "\uD30C\uB77C\uACFC\uC774 \uD45C\uC900\uC2DC", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/pt/TimeZoneNames_pt_BR.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/pt/TimeZoneNames_pt_BR.java	Wed Jul 05 20:32:21 2017 +0200
@@ -150,9 +150,6 @@
         String GST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o do golfo", "GST",
                                      "Hor\u00e1rio de luz natural do golfo", "GDT",
                                      "Hor\u00E1rio do Golfo", "GT"};
-        String HAST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o do Hava\u00ed-Aleutian", "HAST",
-                                      "Hor\u00e1rio de luz natural do Hava\u00ed-Aleutian", "HADT",
-                                      "Hor\u00E1rio do Hava\u00ED-Aleutas", "HAT"};
         String HKT[] =  new String[] {"Fuso hor\u00e1rio de Hong Kong", "HKT",
                                       "Fuso hor\u00e1rio de ver\u00e3o de Hong Kong", "HKST",
                                       "Hor\u00E1rio de Hong Kong", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Fuso hor\u00e1rio de ver\u00e3o do Paraguai", "PYST",
                                                "Hor\u00E1rio do Paraguai", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/sv/TimeZoneNames_sv.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/sv/TimeZoneNames_sv.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"Gulf-normaltid", "GST",
                                      "Gulf-sommartid", "GDT",
                                      "Golfens tid", "GT"};
-        String HAST[] = new String[] {"Hawaii-Aleuterna, normaltid", "HAST",
-                                      "Hawaii-Aleuterna, sommartid", "HADT",
-                                      "Hawaiiansk-aleutisk tid", "HAT"};
         String HKT[] =  new String[] {"Hong Kong, normaltid", "HKT",
                                       "Hong Kong, sommartid", "HKST",
                                       "Hongkong-tid", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "Paraguay, sommartid", "PYST",
                                                "Paraguayansk tid", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/zh/TimeZoneNames_zh_CN.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/zh/TimeZoneNames_zh_CN.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"\u6ce2\u65af\u6e7e\u6807\u51c6\u65f6\u95f4", "GST",
                                      "\u6ce2\u65af\u6e7e\u590f\u4ee4\u65f6", "GDT",
                                      "\u6D77\u6E7E\u65F6\u95F4", "GT"};
-        String HAST[] = new String[] {"\u590f\u5a01\u5937-\u963f\u7559\u7533\u7fa4\u5c9b\u6807\u51c6\u65f6\u95f4", "HAST",
-                                      "\u590f\u5a01\u5937-\u963f\u7559\u7533\u7fa4\u5c9b\u590f\u4ee4\u65f6", "HADT",
-                                      "\u590F\u5A01\u5937-\u963F\u7559\u7533\u65F6\u95F4", "HAT"};
         String HKT[] =  new String[] {"\u9999\u6e2f\u65f6\u95f4", "HKT",
                                       "\u9999\u6e2f\u590f\u4ee4\u65f6", "HKST",
                                       "\u9999\u6E2F\u65F6\u95F4", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "\u5df4\u62c9\u572d\u590f\u4ee4\u65f6", "PYST",
                                                "\u5DF4\u62C9\u572D\u65F6\u95F4", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1024,7 +1021,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- a/jdk/src/jdk.localedata/share/classes/sun/util/resources/zh/TimeZoneNames_zh_TW.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/jdk.localedata/share/classes/sun/util/resources/zh/TimeZoneNames_zh_TW.java	Wed Jul 05 20:32:21 2017 +0200
@@ -153,9 +153,6 @@
         String GST[] = new String[] {"\u6ce2\u65af\u7063\u6a19\u6e96\u6642\u9593", "GST",
                                      "\u6ce2\u65af\u7063\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "GDT",
                                      "\u6CE2\u65AF\u7063\u6642\u9593", "GT"};
-        String HAST[] = new String[] {"\u590f\u5a01\u5937-\u963f\u7559\u7533\u7fa4\u5cf6\u6a19\u6e96\u6642\u9593", "HAST",
-                                      "\u590f\u5a01\u5937-\u963f\u7559\u7533\u7fa4\u5cf6\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "HADT",
-                                      "\u590F\u5A01\u5937-\u963F\u7559\u7533\u6642\u9593", "HAT"};
         String HKT[] =  new String[] {"\u9999\u6e2f\u6642\u9593", "HKT",
                                       "\u9999\u6e2f\u590f\u4ee4\u6642\u9593", "HKST",
                                       "\u9999\u6E2F\u6642\u9593", "HKT"};
@@ -372,7 +369,7 @@
             {"Africa/Tripoli", EET},
             {"Africa/Tunis", CET},
             {"Africa/Windhoek", WAT},
-            {"America/Adak", HAST},
+            {"America/Adak", HST},
             {"America/Anguilla", AST},
             {"America/Antigua", AST},
             {"America/Araguaina", BRT},
@@ -394,7 +391,7 @@
                                                "\u5df4\u62c9\u572d\u590f\u4ee4\u6642\u9593", "PYST",
                                                "\u5DF4\u62C9\u572D\u6642\u9593", "PYT"}},
             {"America/Atikokan", EST},
-            {"America/Atka", HAST},
+            {"America/Atka", HST},
             {"America/Bahia", BRT},
             {"America/Bahia_Banderas", CST},
             {"America/Barbados", AST},
@@ -1026,7 +1023,7 @@
             {"UCT", UTC},
             {"Universal", UTC},
             {"US/Alaska", AKST},
-            {"US/Aleutian", HAST},
+            {"US/Aleutian", HST},
             {"US/Arizona", MST},
             {"US/Central", CST},
             {"US/Eastern", EST},
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/aix/native/libmanagement_ext/UnixOperatingSystem.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2015 SAP AG. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* Empty stubs for now to satisfy the new build process.                 */
+/* Implement and update https://bugs.openjdk.java.net/browse/JDK-8030957 */
+
+#include <jni.h>
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return -1.0;
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return -1.0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/linux/native/libmanagement_ext/UnixOperatingSystem.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,333 @@
+/*
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdarg.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include <sys/resource.h>
+#include <sys/types.h>
+#include <dirent.h>
+#include <stdlib.h>
+#include <dlfcn.h>
+#include <pthread.h>
+#include <inttypes.h>
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+struct ticks {
+    uint64_t  used;
+    uint64_t  usedKernel;
+    uint64_t  total;
+};
+
+typedef struct ticks ticks;
+
+typedef enum {
+    CPU_LOAD_VM_ONLY,
+    CPU_LOAD_GLOBAL,
+} CpuLoadTarget;
+
+static struct perfbuf {
+    int   nProcs;
+    ticks jvmTicks;
+    ticks cpuTicks;
+    ticks *cpus;
+} counters;
+
+#define DEC_64 "%"SCNd64
+
+static void next_line(FILE *f) {
+    while (fgetc(f) != '\n');
+}
+
+/**
+ * Return the total number of ticks since the system was booted.
+ * If the usedTicks parameter is not NULL, it will be filled with
+ * the number of ticks spent on actual processes (user, system or
+ * nice processes) since system boot. Note that this is the total number
+ * of "executed" ticks on _all_ CPU:s, that is on a n-way system it is
+ * n times the number of ticks that has passed in clock time.
+ *
+ * Returns a negative value if the reading of the ticks failed.
+ */
+static int get_totalticks(int which, ticks *pticks) {
+    FILE         *fh;
+    uint64_t        userTicks, niceTicks, systemTicks, idleTicks;
+    int             n;
+
+    if((fh = fopen("/proc/stat", "r")) == NULL) {
+        return -1;
+    }
+
+    n = fscanf(fh, "cpu " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64,
+           &userTicks, &niceTicks, &systemTicks, &idleTicks);
+
+    // Move to next line
+    next_line(fh);
+
+    //find the line for requested cpu faster to just iterate linefeeds?
+    if (which != -1) {
+        int i;
+        for (i = 0; i < which; i++) {
+            if (fscanf(fh, "cpu%*d " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64, &userTicks, &niceTicks, &systemTicks, &idleTicks) != 4) {
+                fclose(fh);
+                return -2;
+            }
+            next_line(fh);
+        }
+        n = fscanf(fh, "cpu%*d " DEC_64 " " DEC_64 " " DEC_64 " " DEC_64 "\n",
+           &userTicks, &niceTicks, &systemTicks, &idleTicks);
+    }
+
+    fclose(fh);
+    if (n != 4) {
+        return -2;
+    }
+
+    pticks->used       = userTicks + niceTicks;
+    pticks->usedKernel = systemTicks;
+    pticks->total      = userTicks + niceTicks + systemTicks + idleTicks;
+
+    return 0;
+}
+
+static int vread_statdata(const char *procfile, const char *fmt, va_list args) {
+    FILE    *f;
+    int     n;
+    char     buf[2048];
+
+    if ((f = fopen(procfile, "r")) == NULL) {
+        return -1;
+    }
+
+    if ((n = fread(buf, 1, sizeof(buf), f)) != -1) {
+    char *tmp;
+
+    buf[n-1] = '\0';
+    /** skip through pid and exec name. the exec name _could be wacky_ (renamed) and
+     *  make scanf go mupp.
+     */
+    if ((tmp = strrchr(buf, ')')) != NULL) {
+        // skip the ')' and the following space but check that the buffer is long enough
+        tmp += 2;
+        if (tmp < buf + n) {
+        n = vsscanf(tmp, fmt, args);
+        }
+    }
+    }
+
+    fclose(f);
+
+    return n;
+}
+
+static int read_statdata(const char *procfile, const char *fmt, ...) {
+    int       n;
+    va_list args;
+
+    va_start(args, fmt);
+    n = vread_statdata(procfile, fmt, args);
+    va_end(args);
+    return n;
+}
+
+/** read user and system ticks from a named procfile, assumed to be in 'stat' format then. */
+static int read_ticks(const char *procfile, uint64_t *userTicks, uint64_t *systemTicks) {
+    return read_statdata(procfile, "%*c %*d %*d %*d %*d %*d %*u %*u %*u %*u %*u "DEC_64" "DEC_64,
+             userTicks, systemTicks
+             );
+}
+
+/**
+ * Return the number of ticks spent in any of the processes belonging
+ * to the JVM on any CPU.
+ */
+static int get_jvmticks(ticks *pticks) {
+    uint64_t userTicks;
+    uint64_t systemTicks;
+
+    if (read_ticks("/proc/self/stat", &userTicks, &systemTicks) < 0) {
+        return -1;
+    }
+
+    // get the total
+    if (get_totalticks(-1, pticks) < 0) {
+        return -1;
+    }
+
+    pticks->used       = userTicks;
+    pticks->usedKernel = systemTicks;
+
+    return 0;
+}
+
+/**
+ * This method must be called first, before any data can be gathererd.
+ */
+int perfInit() {
+    static int initialized=1;
+
+    if (!initialized) {
+        int  i;
+
+        int n = sysconf(_SC_NPROCESSORS_ONLN);
+        if (n <= 0) {
+            n = 1;
+        }
+
+        counters.cpus = calloc(n,sizeof(ticks));
+        if (counters.cpus != NULL)  {
+            // For the CPU load
+            get_totalticks(-1, &counters.cpuTicks);
+
+            for (i = 0; i < n; i++) {
+                get_totalticks(i, &counters.cpus[i]);
+            }
+            // For JVM load
+            get_jvmticks(&counters.jvmTicks);
+            initialized = 1;
+        }
+    }
+
+    return initialized ? 0 : -1;
+}
+
+#define MAX(a,b) (a>b?a:b)
+#define MIN(a,b) (a<b?a:b)
+
+static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
+
+/**
+ * Return the load of the CPU as a double. 1.0 means the CPU process uses all
+ * available time for user or system processes, 0.0 means the CPU uses all time
+ * being idle.
+ *
+ * Returns a negative value if there is a problem in determining the CPU load.
+ */
+
+static double get_cpuload_internal(int which, double *pkernelLoad, CpuLoadTarget target) {
+    uint64_t udiff, kdiff, tdiff;
+    ticks *pticks, tmp;
+    double user_load = -1.0;
+    int failed = 0;
+
+    *pkernelLoad = 0.0;
+
+    pthread_mutex_lock(&lock);
+
+    if(perfInit() == 0) {
+
+        if (target == CPU_LOAD_VM_ONLY) {
+            pticks = &counters.jvmTicks;
+        } else if (which == -1) {
+            pticks = &counters.cpuTicks;
+        } else {
+            pticks = &counters.cpus[which];
+        }
+
+        tmp = *pticks;
+
+        if (target == CPU_LOAD_VM_ONLY) {
+            if (get_jvmticks(pticks) != 0) {
+                failed = 1;
+            }
+        } else if (get_totalticks(which, pticks) < 0) {
+            failed = 1;
+        }
+
+        if(!failed) {
+            // seems like we sometimes end up with less kernel ticks when
+            // reading /proc/self/stat a second time, timing issue between cpus?
+            if (pticks->usedKernel < tmp.usedKernel) {
+                kdiff = 0;
+            } else {
+                kdiff = pticks->usedKernel - tmp.usedKernel;
+            }
+            tdiff = pticks->total - tmp.total;
+            udiff = pticks->used - tmp.used;
+
+            if (tdiff == 0) {
+                user_load = 0;
+            } else {
+                if (tdiff < (udiff + kdiff)) {
+                    tdiff = udiff + kdiff;
+                }
+                *pkernelLoad = (kdiff / (double)tdiff);
+                // BUG9044876, normalize return values to sane values
+                *pkernelLoad = MAX(*pkernelLoad, 0.0);
+                *pkernelLoad = MIN(*pkernelLoad, 1.0);
+
+                user_load = (udiff / (double)tdiff);
+                user_load = MAX(user_load, 0.0);
+                user_load = MIN(user_load, 1.0);
+            }
+        }
+    }
+    pthread_mutex_unlock(&lock);
+    return user_load;
+}
+
+double get_cpu_load(int which) {
+    double u, s;
+    u = get_cpuload_internal(which, &s, CPU_LOAD_GLOBAL);
+    if (u < 0) {
+        return -1.0;
+    }
+    // Cap total systemload to 1.0
+    return MIN((u + s), 1.0);
+}
+
+double get_process_load() {
+    double u, s;
+    u = get_cpuload_internal(-1, &s, CPU_LOAD_VM_ONLY);
+    if (u < 0) {
+        return -1.0;
+    }
+    return u + s;
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    if(perfInit() == 0) {
+        return get_cpu_load(-1);
+    } else {
+        return -1.0;
+    }
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    if(perfInit() == 0) {
+        return get_process_load();
+    } else {
+        return -1.0;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/macosx/native/libmanagement_ext/UnixOperatingSystem.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,161 @@
+/*
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+#include <sys/time.h>
+#include <mach/mach.h>
+#include <mach/task_info.h>
+
+#include "jvm.h"
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    // This code is influenced by the darwin top source
+
+    kern_return_t kr;
+    mach_msg_type_number_t count;
+    host_cpu_load_info_data_t load;
+
+    static jlong last_used  = 0;
+    static jlong last_total = 0;
+
+    count = HOST_CPU_LOAD_INFO_COUNT;
+    kr = host_statistics(mach_host_self(), HOST_CPU_LOAD_INFO, (host_info_t)&load, &count);
+    if (kr != KERN_SUCCESS) {
+        return -1;
+    }
+
+    jlong used  = load.cpu_ticks[CPU_STATE_USER] + load.cpu_ticks[CPU_STATE_NICE] + load.cpu_ticks[CPU_STATE_SYSTEM];
+    jlong total = used + load.cpu_ticks[CPU_STATE_IDLE];
+
+    if (last_used == 0 || last_total == 0) {
+        // First call, just set the last values
+        last_used  = used;
+        last_total = total;
+        // return 0 since we have no data, not -1 which indicates error
+        return 0;
+    }
+
+    jlong used_delta  = used - last_used;
+    jlong total_delta = total - last_total;
+
+    jdouble cpu = (jdouble) used_delta / total_delta;
+
+    last_used  = used;
+    last_total = total;
+
+    return cpu;
+}
+
+
+#define TIME_VALUE_TO_TIMEVAL(a, r) do {  \
+     (r)->tv_sec = (a)->seconds;          \
+     (r)->tv_usec = (a)->microseconds;    \
+} while (0)
+
+
+#define TIME_VALUE_TO_MICROSECONDS(TV) \
+     ((TV).tv_sec * 1000 * 1000 + (TV).tv_usec)
+
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    // This code is influenced by the darwin top source
+
+    struct task_basic_info_64 task_info_data;
+    struct task_thread_times_info thread_info_data;
+    struct timeval user_timeval, system_timeval, task_timeval;
+    struct timeval now;
+    mach_port_t task = mach_task_self();
+    kern_return_t kr;
+
+    static jlong last_task_time = 0;
+    static jlong last_time      = 0;
+
+    mach_msg_type_number_t thread_info_count = TASK_THREAD_TIMES_INFO_COUNT;
+    kr = task_info(task,
+            TASK_THREAD_TIMES_INFO,
+            (task_info_t)&thread_info_data,
+            &thread_info_count);
+    if (kr != KERN_SUCCESS) {
+        // Most likely cause: |task| is a zombie.
+        return -1;
+    }
+
+    mach_msg_type_number_t count = TASK_BASIC_INFO_64_COUNT;
+    kr = task_info(task,
+            TASK_BASIC_INFO_64,
+            (task_info_t)&task_info_data,
+            &count);
+    if (kr != KERN_SUCCESS) {
+        // Most likely cause: |task| is a zombie.
+        return -1;
+    }
+
+    /* Set total_time. */
+    // thread info contains live time...
+    TIME_VALUE_TO_TIMEVAL(&thread_info_data.user_time, &user_timeval);
+    TIME_VALUE_TO_TIMEVAL(&thread_info_data.system_time, &system_timeval);
+    timeradd(&user_timeval, &system_timeval, &task_timeval);
+
+    // ... task info contains terminated time.
+    TIME_VALUE_TO_TIMEVAL(&task_info_data.user_time, &user_timeval);
+    TIME_VALUE_TO_TIMEVAL(&task_info_data.system_time, &system_timeval);
+    timeradd(&user_timeval, &task_timeval, &task_timeval);
+    timeradd(&system_timeval, &task_timeval, &task_timeval);
+
+    if (gettimeofday(&now, NULL) < 0) {
+       return -1;
+    }
+    jint ncpus      = JVM_ActiveProcessorCount();
+    jlong time      = TIME_VALUE_TO_MICROSECONDS(now) * ncpus;
+    jlong task_time = TIME_VALUE_TO_MICROSECONDS(task_timeval);
+
+    if ((last_task_time == 0) || (last_time == 0)) {
+        // First call, just set the last values.
+        last_task_time = task_time;
+        last_time      = time;
+        // return 0 since we have no data, not -1 which indicates error
+        return 0;
+    }
+
+    jlong task_time_delta = task_time - last_task_time;
+    jlong time_delta      = time - last_time;
+    if (time_delta == 0) {
+        return -1;
+    }
+
+    jdouble cpu = (jdouble) task_time_delta / time_delta;
+
+    last_task_time = task_time;
+    last_time      = time;
+
+    return cpu;
+ }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/META-INF/services/sun.management.spi.PlatformMBeanProvider	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,25 @@
+#
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+com.sun.management.internal.PlatformMBeanProviderImpl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,218 @@
+/*
+ * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import java.lang.management.PlatformManagedObject;
+import javax.management.DynamicMBean;
+
+/**
+ * Management interface for the diagnostic commands for the HotSpot Virtual Machine.
+ *
+ * <p>The {@code DiagnosticCommandMBean} is registered to the
+ * {@linkplain java.lang.management.ManagementFactory#getPlatformMBeanServer
+ * platform MBeanServer} as are other platform MBeans.
+ *
+ * <p>The {@link javax.management.ObjectName ObjectName} for uniquely identifying
+ * the diagnostic MBean within an MBeanServer is:
+ * <blockquote>
+ *    {@code com.sun.management:type=DiagnosticCommand}
+ * </blockquote>
+ *
+ * <p>This MBean is a {@link javax.management.DynamicMBean DynamicMBean}
+ * and also a {@link javax.management.NotificationEmitter}.
+ * The {@code DiagnosticCommandMBean} is generated at runtime and is subject to
+ * modifications during the lifetime of the Java virtual machine.
+ *
+ * A <em>diagnostic command</em> is represented as an operation of
+ * the {@code DiagnosticCommandMBean} interface. Each diagnostic command has:
+ * <ul>
+ * <li>the diagnostic command name which is the name being referenced in
+ *     the HotSpot Virtual Machine</li>
+ * <li>the MBean operation name which is the
+ *     {@linkplain javax.management.MBeanOperationInfo#getName() name}
+ *     generated for the diagnostic command operation invocation.
+ *     The MBean operation name is implementation dependent</li>
+ * </ul>
+ *
+ * The recommended way to transform a diagnostic command name into a MBean
+ * operation name is as follows:
+ * <ul>
+ * <li>All characters from the first one to the first dot are set to be
+ *      lower-case characters</li>
+ * <li>Every dot or underline character is removed and the following
+ *   character is set to be an upper-case character</li>
+ * <li>All other characters are copied without modification</li>
+ * </ul>
+ *
+ * <p>The diagnostic command name is always provided with the meta-data on the
+ * operation in a field named {@code dcmd.name} (see below).
+ *
+ * <p>A diagnostic command may or may not support options or arguments.
+ * All the operations return {@code String} and either take
+ * no parameter for operations that do not support any option or argument,
+ * or take a {@code String[]} parameter for operations that support at least
+ * one option or argument.
+ * Each option or argument must be stored in a single String.
+ * Options or arguments split across several String instances are not supported.
+ *
+ * <p>The distinction between options and arguments: options are identified by
+ * the option name while arguments are identified by their position in the
+ * command line. Options and arguments are processed in the order of the array
+ * passed to the invocation method.
+ *
+ * <p>Like any operation of a dynamic MBean, each of these operations is
+ * described by {@link javax.management.MBeanOperationInfo MBeanOperationInfo}
+ * instance. Here's the values returned by this object:
+ * <ul>
+ *  <li>{@link javax.management.MBeanOperationInfo#getName() getName()}
+ *      returns the operation name generated from the diagnostic command name</li>
+ *  <li>{@link javax.management.MBeanOperationInfo#getDescription() getDescription()}
+ *      returns the diagnostic command description
+ *      (the same as the one return in the 'help' command)</li>
+ *  <li>{@link javax.management.MBeanOperationInfo#getImpact() getImpact()}
+ *      returns {@code ACTION_INFO}</li>
+ *  <li>{@link javax.management.MBeanOperationInfo#getReturnType() getReturnType()}
+ *      returns {@code java.lang.String}</li>
+ *  <li>{@link javax.management.MBeanOperationInfo#getDescriptor() getDescriptor()}
+ *      returns a Descriptor instance (see below)</li>
+ * </ul>
+ *
+ * <p>The {@link javax.management.Descriptor Descriptor}
+ * is a collection of fields containing additional
+ * meta-data for a JMX element. A field is a name and an associated value.
+ * The additional meta-data provided for an operation associated with a
+ * diagnostic command are described in the table below:
+ *
+ * <table border="1" cellpadding="5">
+ *   <tr>
+ *     <th>Name</th><th>Type</th><th>Description</th>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.name</td><td>String</td>
+ *     <td>The original diagnostic command name (not the operation name)</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.description</td><td>String</td>
+ *     <td>The diagnostic command description</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.help</td><td>String</td>
+ *     <td>The full help message for this diagnostic command (same output as
+ *          the one produced by the 'help' command)</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.vmImpact</td><td>String</td>
+ *     <td>The impact of the diagnostic command,
+ *      this value is the same as the one printed in the 'impact'
+ *      section of the help message of the diagnostic command, and it
+ *      is different from the getImpact() of the MBeanOperationInfo</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.enabled</td><td>boolean</td>
+ *     <td>True if the diagnostic command is enabled, false otherwise</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.permissionClass</td><td>String</td>
+ *     <td>Some diagnostic command might require a specific permission to be
+ *          executed, in addition to the MBeanPermission to invoke their
+ *          associated MBean operation. This field returns the fully qualified
+ *          name of the permission class or null if no permission is required
+ *   </td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.permissionName</td><td>String</td>
+ *     <td>The fist argument of the permission required to execute this
+ *          diagnostic command or null if no permission is required</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.permissionAction</td><td>String</td>
+ *     <td>The second argument of the permission required to execute this
+ *          diagnostic command or null if the permission constructor has only
+ *          one argument (like the ManagementPermission) or if no permission
+ *          is required</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arguments</td><td>Descriptor</td>
+ *     <td>A Descriptor instance containing the descriptions of options and
+ *          arguments supported by the diagnostic command (see below)</td>
+ *   </tr>
+ * </table>
+ *
+ * <p>The description of parameters (options or arguments) of a diagnostic
+ * command is provided within a Descriptor instance. In this Descriptor,
+ * each field name is a parameter name, and each field value is itself
+ * a Descriptor instance. The fields provided in this second Descriptor
+ * instance are described in the table below:
+ *
+ * <table border="1" cellpadding="5">
+ *   <tr>
+ *     <th>Name</th><th>Type</th><th>Description</th>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.name</td><td>String</td>
+ *     <td>The name of the parameter</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.type</td><td>String</td>
+ *     <td>The type of the parameter. The returned String is the name of a type
+ *          recognized by the diagnostic command parser. These types are not
+ *          Java types and are implementation dependent.
+ *          </td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.description</td><td>String</td>
+ *     <td>The parameter description</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.isMandatory</td><td>boolean</td>
+ *     <td>True if the parameter is mandatory, false otherwise</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.isOption</td><td>boolean</td>
+ *     <td>True if the parameter is an option, false if it is an argument</td>
+ *   </tr>
+ *   <tr>
+ *     <td>dcmd.arg.isMultiple</td><td>boolean</td>
+ *     <td>True if the parameter can be specified several times, false
+ *          otherwise</td>
+ *   </tr>
+ * </table>
+ *
+ * <p>When the set of diagnostic commands currently supported by the Java
+ * Virtual Machine is modified, the {@code DiagnosticCommandMBean} emits
+ * a {@link javax.management.Notification} with a
+ * {@linkplain javax.management.Notification#getType() type} of
+ * <a href="{@docRoot}/../../../../api/javax/management/MBeanInfo.html#info-changed">
+ * {@code "jmx.mbean.info.changed"}</a> and a
+ * {@linkplain javax.management.Notification#getUserData() userData} that
+ * is the new {@code MBeanInfo}.
+ *
+ * @since 1.8
+ */
+public interface DiagnosticCommandMBean extends DynamicMBean
+{
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,235 @@
+/*
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeDataView;
+import javax.management.openmbean.CompositeType;
+import com.sun.management.internal.GarbageCollectionNotifInfoCompositeData;
+
+/**
+ * The information about a garbage collection
+ *
+ * <p>
+ * A garbage collection notification is emitted by {@link GarbageCollectorMXBean}
+ * when the Java virtual machine completes a garbage collection action
+ * The notification emitted will contain the garbage collection notification
+ * information about the status of the memory:
+ * <ul>
+ *   <li>The name of the garbage collector used to perform the collection.</li>
+ *   <li>The action performed by the garbage collector.</li>
+ *   <li>The cause of the garbage collection action.</li>
+ *   <li>A {@link GcInfo} object containing some statistics about the GC cycle
+          (start time, end time) and the memory usage before and after
+          the GC cycle.</li>
+ * </ul>
+ *
+ * <p>
+ * A {@link CompositeData CompositeData} representing
+ * the {@code GarbageCollectionNotificationInfo} object
+ * is stored in the
+ * {@linkplain javax.management.Notification#setUserData userdata}
+ * of a {@linkplain javax.management.Notification notification}.
+ * The {@link #from from} method is provided to convert from
+ * a {@code CompositeData} to a {@code GarbageCollectionNotificationInfo}
+ * object. For example:
+ *
+ * <blockquote><pre>
+ *      Notification notif;
+ *
+ *      // receive the notification emitted by a GarbageCollectorMXBean and set to notif
+ *      ...
+ *
+ *      String notifType = notif.getType();
+ *      if (notifType.equals(GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION)) {
+ *          // retrieve the garbage collection notification information
+ *          CompositeData cd = (CompositeData) notif.getUserData();
+ *          GarbageCollectionNotificationInfo info = GarbageCollectionNotificationInfo.from(cd);
+ *          ....
+ *      }
+ * </pre></blockquote>
+ *
+ * <p>
+ * The type of the notification emitted by a {@code GarbageCollectorMXBean} is:
+ * <ul>
+ *   <li>A {@linkplain #GARBAGE_COLLECTION_NOTIFICATION garbage collection notification}.
+ *       <br>Used by every notification emitted by the garbage collector, the details about
+ *             the notification are provided in the {@linkplain #getGcAction action} String
+ *       </li>
+ * </ul>
+ **/
+
+@jdk.Exported
+public class GarbageCollectionNotificationInfo implements  CompositeDataView {
+
+    private final String gcName;
+    private final String gcAction;
+    private final String gcCause;
+    private final GcInfo gcInfo;
+    private final CompositeData cdata;
+
+    /**
+     * Notification type denoting that
+     * the Java virtual machine has completed a garbage collection cycle.
+     * This notification is emitted by a {@link GarbageCollectorMXBean}.
+     * The value of this notification type is
+     * {@code com.sun.management.gc.notification}.
+     */
+    public static final String GARBAGE_COLLECTION_NOTIFICATION =
+        "com.sun.management.gc.notification";
+
+    /**
+     * Constructs a {@code GarbageCollectionNotificationInfo} object.
+     *
+     * @param gcName The name of the garbage collector used to perform the collection
+     * @param gcAction The name of the action performed by the garbage collector
+     * @param gcCause The cause of the garbage collection action
+     * @param gcInfo  a GcInfo object providing statistics about the GC cycle
+     */
+    public GarbageCollectionNotificationInfo(String gcName,
+                                             String gcAction,
+                                             String gcCause,
+                                             GcInfo gcInfo)  {
+        if (gcName == null) {
+            throw new NullPointerException("Null gcName");
+        }
+        if (gcAction == null) {
+            throw new NullPointerException("Null gcAction");
+        }
+        if (gcCause == null) {
+            throw new NullPointerException("Null gcCause");
+        }
+        this.gcName = gcName;
+        this.gcAction = gcAction;
+        this.gcCause = gcCause;
+        this.gcInfo = gcInfo;
+        this.cdata = new GarbageCollectionNotifInfoCompositeData(this);
+    }
+
+    GarbageCollectionNotificationInfo(CompositeData cd) {
+        GarbageCollectionNotifInfoCompositeData.validateCompositeData(cd);
+
+        this.gcName = GarbageCollectionNotifInfoCompositeData.getGcName(cd);
+        this.gcAction = GarbageCollectionNotifInfoCompositeData.getGcAction(cd);
+        this.gcCause = GarbageCollectionNotifInfoCompositeData.getGcCause(cd);
+        this.gcInfo = GarbageCollectionNotifInfoCompositeData.getGcInfo(cd);
+        this.cdata = cd;
+    }
+
+    /**
+     * Returns the name of the garbage collector used to perform the collection
+     *
+     * @return the name of the garbage collector used to perform the collection
+     */
+    public String getGcName() {
+        return gcName;
+    }
+
+    /**
+     * Returns the action performed by the garbage collector
+     *
+     * @return the action performed by the garbage collector
+     */
+    public String getGcAction() {
+        return gcAction;
+    }
+
+    /**
+     * Returns the cause of the garbage collection
+     *
+     * @return the cause of the garbage collection
+     */
+    public String getGcCause() {
+        return gcCause;
+    }
+
+    /**
+     * Returns the GC information related to the last garbage collection
+     *
+     * @return the GC information related to the
+     * last garbage collection
+     */
+    public GcInfo getGcInfo() {
+        return gcInfo;
+    }
+
+    /**
+     * Returns a {@code GarbageCollectionNotificationInfo} object represented by the
+     * given {@code CompositeData}.
+     * The given {@code CompositeData} must contain
+     * the following attributes:
+     * <blockquote>
+     * <table border>
+     * <tr>
+     *   <th align=left>Attribute Name</th>
+     *   <th align=left>Type</th>
+     * </tr>
+     * <tr>
+     *   <td>gcName</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>gcAction</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>gcCause</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>gcInfo</td>
+     *   <td>{@code javax.management.openmbean.CompositeData}</td>
+     * </tr>
+     * </table>
+     * </blockquote>
+     *
+     * @param cd {@code CompositeData} representing a
+     *           {@code GarbageCollectionNotificationInfo}
+     *
+     * @throws IllegalArgumentException if {@code cd} does not
+     *   represent a {@code GarbaageCollectionNotificationInfo} object.
+     *
+     * @return a {@code GarbageCollectionNotificationInfo} object represented
+     *         by {@code cd} if {@code cd} is not {@code null};
+     *         {@code null} otherwise.
+     */
+    public static GarbageCollectionNotificationInfo from(CompositeData cd) {
+        if (cd == null) {
+            return null;
+        }
+
+        if (cd instanceof GarbageCollectionNotifInfoCompositeData) {
+            return ((GarbageCollectionNotifInfoCompositeData) cd).getGarbageCollectionNotifInfo();
+        } else {
+            return new GarbageCollectionNotificationInfo(cd);
+        }
+    }
+
+    public CompositeData toCompositeData(CompositeType ct) {
+        return cdata;
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GarbageCollectorMXBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,60 @@
+/*
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeType;
+
+/**
+ * Platform-specific management interface for a garbage collector
+ * which performs collections in cycles.
+ *
+ * <p> This platform extension is only available to the garbage
+ * collection implementation that supports this extension.
+ *
+ * @author  Mandy Chung
+ * @since   1.5
+ */
+@jdk.Exported
+public interface GarbageCollectorMXBean
+    extends java.lang.management.GarbageCollectorMXBean {
+
+    /**
+     * Returns the GC information about the most recent GC.
+     * This method returns a {@link GcInfo}.
+     * If no GC information is available, <tt>null</tt> is returned.
+     * The collector-specific attributes, if any, can be obtained
+     * via the {@link CompositeData CompositeData} interface.
+     * <p>
+     * <b>MBeanServer access:</b>
+     * The mapped type of <tt>GcInfo</tt> is <tt>CompositeData</tt>
+     * with attributes specified in {@link GcInfo#from GcInfo}.
+     *
+     * @return a <tt>GcInfo</tt> object representing
+     * the most GC information; or <tt>null</tt> if no GC
+     * information available.
+     */
+    public GcInfo getLastGcInfo();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/GcInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,287 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import java.lang.management.MemoryUsage;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeDataView;
+import javax.management.openmbean.CompositeType;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import com.sun.management.internal.GcInfoCompositeData;
+import com.sun.management.internal.GcInfoBuilder;
+
+/**
+ * Garbage collection information.  It contains the following
+ * information for one garbage collection as well as GC-specific
+ * attributes:
+ * <blockquote>
+ * <ul>
+ *   <li>Start time</li>
+ *   <li>End time</li>
+ *   <li>Duration</li>
+ *   <li>Memory usage before the collection starts</li>
+ *   <li>Memory usage after the collection ends</li>
+ * </ul>
+ * </blockquote>
+ *
+ * <p>
+ * {@code GcInfo} is a {@link CompositeData CompositeData}
+ * The GC-specific attributes can be obtained via the CompositeData
+ * interface.  This is a historical relic, and other classes should
+ * not copy this pattern.  Use {@link CompositeDataView} instead.
+ *
+ * <h4>MXBean Mapping</h4>
+ * {@code GcInfo} is mapped to a {@link CompositeData CompositeData}
+ * with attributes as specified in the {@link #from from} method.
+ *
+ * @author  Mandy Chung
+ * @since   1.5
+ */
+@jdk.Exported
+public class GcInfo implements CompositeData, CompositeDataView {
+    private final long index;
+    private final long startTime;
+    private final long endTime;
+    private final Map<String, MemoryUsage> usageBeforeGc;
+    private final Map<String, MemoryUsage> usageAfterGc;
+    private final Object[] extAttributes;
+    private final CompositeData cdata;
+    private final GcInfoBuilder builder;
+
+    private GcInfo(GcInfoBuilder builder,
+                   long index, long startTime, long endTime,
+                   MemoryUsage[] muBeforeGc,
+                   MemoryUsage[] muAfterGc,
+                   Object[] extAttributes) {
+        this.builder       = builder;
+        this.index         = index;
+        this.startTime     = startTime;
+        this.endTime       = endTime;
+        String[] poolNames = builder.getPoolNames();
+        this.usageBeforeGc = new HashMap<String, MemoryUsage>(poolNames.length);
+        this.usageAfterGc = new HashMap<String, MemoryUsage>(poolNames.length);
+        for (int i = 0; i < poolNames.length; i++) {
+            this.usageBeforeGc.put(poolNames[i],  muBeforeGc[i]);
+            this.usageAfterGc.put(poolNames[i],  muAfterGc[i]);
+        }
+        this.extAttributes = extAttributes;
+        this.cdata = new GcInfoCompositeData(this, builder, extAttributes);
+    }
+
+    private GcInfo(CompositeData cd) {
+        GcInfoCompositeData.validateCompositeData(cd);
+
+        this.index         = GcInfoCompositeData.getId(cd);
+        this.startTime     = GcInfoCompositeData.getStartTime(cd);
+        this.endTime       = GcInfoCompositeData.getEndTime(cd);
+        this.usageBeforeGc = GcInfoCompositeData.getMemoryUsageBeforeGc(cd);
+        this.usageAfterGc  = GcInfoCompositeData.getMemoryUsageAfterGc(cd);
+        this.extAttributes = null;
+        this.builder       = null;
+        this.cdata         = cd;
+    }
+
+    /**
+     * Returns the identifier of this garbage collection which is
+     * the number of collections that this collector has done.
+     *
+     * @return the identifier of this garbage collection which is
+     * the number of collections that this collector has done.
+     */
+    public long getId() {
+        return index;
+    }
+
+    /**
+     * Returns the start time of this GC in milliseconds
+     * since the Java virtual machine was started.
+     *
+     * @return the start time of this GC.
+     */
+    public long getStartTime() {
+        return startTime;
+    }
+
+    /**
+     * Returns the end time of this GC in milliseconds
+     * since the Java virtual machine was started.
+     *
+     * @return the end time of this GC.
+     */
+    public long getEndTime() {
+        return endTime;
+    }
+
+    /**
+     * Returns the elapsed time of this GC in milliseconds.
+     *
+     * @return the elapsed time of this GC in milliseconds.
+     */
+    public long getDuration() {
+        return endTime - startTime;
+    }
+
+    /**
+     * Returns the memory usage of all memory pools
+     * at the beginning of this GC.
+     * This method returns
+     * a {@code Map} of the name of a memory pool
+     * to the memory usage of the corresponding
+     * memory pool before GC starts.
+     *
+     * @return a {@code Map} of memory pool names to the memory
+     * usage of a memory pool before GC starts.
+     */
+    public Map<String, MemoryUsage> getMemoryUsageBeforeGc() {
+        return Collections.unmodifiableMap(usageBeforeGc);
+    }
+
+    /**
+     * Returns the memory usage of all memory pools
+     * at the end of this GC.
+     * This method returns
+     * a {@code Map} of the name of a memory pool
+     * to the memory usage of the corresponding
+     * memory pool when GC finishes.
+     *
+     * @return a {@code Map} of memory pool names to the memory
+     * usage of a memory pool when GC finishes.
+     */
+    public Map<String, MemoryUsage> getMemoryUsageAfterGc() {
+        return Collections.unmodifiableMap(usageAfterGc);
+    }
+
+   /**
+     * Returns a {@code GcInfo} object represented by the
+     * given {@code CompositeData}. The given
+     * {@code CompositeData} must contain
+     * all the following attributes:
+     *
+     * <blockquote>
+     * <table border>
+     * <tr>
+     *   <th align=left>Attribute Name</th>
+     *   <th align=left>Type</th>
+     * </tr>
+     * <tr>
+     *   <td>index</td>
+     *   <td>{@code java.lang.Long}</td>
+     * </tr>
+     * <tr>
+     *   <td>startTime</td>
+     *   <td>{@code java.lang.Long}</td>
+     * </tr>
+     * <tr>
+     *   <td>endTime</td>
+     *   <td>{@code java.lang.Long}</td>
+     * </tr>
+     * <tr>
+     *   <td>memoryUsageBeforeGc</td>
+     *   <td>{@code javax.management.openmbean.TabularData}</td>
+     * </tr>
+     * <tr>
+     *   <td>memoryUsageAfterGc</td>
+     *   <td>{@code javax.management.openmbean.TabularData}</td>
+     * </tr>
+     * </table>
+     * </blockquote>
+     *
+     * @throws IllegalArgumentException if {@code cd} does not
+     *   represent a {@code GcInfo} object with the attributes
+     *   described above.
+     *
+     * @return a {@code GcInfo} object represented by {@code cd}
+     * if {@code cd} is not {@code null}; {@code null} otherwise.
+     */
+    public static GcInfo from(CompositeData cd) {
+        if (cd == null) {
+            return null;
+        }
+
+        if (cd instanceof GcInfoCompositeData) {
+            return ((GcInfoCompositeData) cd).getGcInfo();
+        } else {
+            return new GcInfo(cd);
+        }
+
+    }
+
+    // Implementation of the CompositeData interface
+    public boolean containsKey(String key) {
+        return cdata.containsKey(key);
+    }
+
+    public boolean containsValue(Object value) {
+        return cdata.containsValue(value);
+    }
+
+    public boolean equals(Object obj) {
+        return cdata.equals(obj);
+    }
+
+    public Object get(String key) {
+        return cdata.get(key);
+    }
+
+    public Object[] getAll(String[] keys) {
+        return cdata.getAll(keys);
+    }
+
+    public CompositeType getCompositeType() {
+        return cdata.getCompositeType();
+    }
+
+    public int hashCode() {
+        return cdata.hashCode();
+    }
+
+    public String toString() {
+        return cdata.toString();
+    }
+
+    public Collection<?> values() {
+        return cdata.values();
+    }
+
+    /**
+     * Return the {@code CompositeData} representation of this
+     * {@code GcInfo}, including any GC-specific attributes.  The
+     * returned value will have at least all the attributes described
+     * in the {@link #from(CompositeData) from} method, plus optionally
+     * other attributes.
+     *
+     * @param ct the {@code CompositeType} that the caller expects.
+     * This parameter is ignored and can be null.
+     *
+     * @return the {@code CompositeData} representation.
+     */
+    public CompositeData toCompositeData(CompositeType ct) {
+        return cdata;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,119 @@
+/*
+ * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import java.lang.management.PlatformManagedObject;
+
+/**
+ * Diagnostic management interface for the HotSpot Virtual Machine.
+ *
+ * <p>The diagnostic MBean is registered to the platform MBeanServer
+ * as are other platform MBeans.
+ *
+ * <p>The <tt>ObjectName</tt> for uniquely identifying the diagnostic
+ * MXBean within an MBeanServer is:
+ * <blockquote>
+ *    <tt>com.sun.management:type=HotSpotDiagnostic</tt>
+ * </blockquote>
+.*
+ * It can be obtained by calling the
+ * {@link PlatformManagedObject#getObjectName} method.
+ *
+ * All methods throw a {@code NullPointerException} if any input argument is
+ * {@code null} unless it's stated otherwise.
+ *
+ * @see java.lang.management.ManagementFactory#getPlatformMXBeans(Class)
+ */
+@jdk.Exported
+public interface HotSpotDiagnosticMXBean extends PlatformManagedObject {
+    /**
+     * Dumps the heap to the <tt>outputFile</tt> file in the same
+     * format as the hprof heap dump.
+     * <p>
+     * If this method is called remotely from another process,
+     * the heap dump output is written to a file named <tt>outputFile</tt>
+     * on the machine where the target VM is running.  If outputFile is
+     * a relative path, it is relative to the working directory where
+     * the target VM was started.
+     *
+     * @param  outputFile the system-dependent filename
+     * @param  live if <tt>true</tt> dump only <i>live</i> objects
+     *         i.e. objects that are reachable from others
+     * @throws IOException if the <tt>outputFile</tt>
+     *                     cannot be created, opened, or written to.
+     * @throws UnsupportedOperationException if this operation is not supported.
+     * @throws NullPointerException if <tt>outputFile</tt> is <tt>null</tt>.
+     * @throws SecurityException
+     *         If a security manager exists and its {@link
+     *         java.lang.SecurityManager#checkWrite(java.lang.String)}
+     *         method denies write access to the named file
+     *         or the caller does not have ManagmentPermission("control").
+     */
+    public void dumpHeap(String outputFile, boolean live) throws java.io.IOException;
+
+    /**
+     * Returns a list of <tt>VMOption</tt> objects for all diagnostic options.
+     * A diagnostic option is a {@link VMOption#isWriteable writeable}
+     * VM option that can be set dynamically mainly for troubleshooting
+     * and diagnosis.
+     *
+     * @return a list of <tt>VMOption</tt> objects for all diagnostic options.
+     */
+    public java.util.List<VMOption> getDiagnosticOptions();
+
+    /**
+     * Returns a <tt>VMOption</tt> object for a VM option of the given
+     * name.
+     *
+     * @return a <tt>VMOption</tt> object for a VM option of the given name.
+     * @throws NullPointerException if name is <tt>null</tt>.
+     * @throws IllegalArgumentException if a VM option of the given name
+     *                                     does not exist.
+     */
+    public VMOption getVMOption(String name);
+
+    /**
+     * Sets a VM option of the given name to the specified value.
+     * The new value will be reflected in a new <tt>VMOption</tt>
+     * object returned by the {@link #getVMOption} method or
+     * the {@link #getDiagnosticOptions} method.  This method does
+     * not change the value of this <tt>VMOption</tt> object.
+     *
+     * @param name Name of a VM option
+     * @param value New value of the VM option to be set
+     *
+     * @throws IllegalArgumentException if the VM option of the given name
+     *                                     does not exist.
+     * @throws IllegalArgumentException if the new value is invalid.
+     * @throws IllegalArgumentException if the VM option is not writable.
+     * @throws NullPointerException if name or value is <tt>null</tt>.
+     *
+     * @throws  java.lang.SecurityException
+     *     if a security manager exists and the caller does not have
+     *     ManagementPermission("control").
+     */
+    public void setVMOption(String name, String value);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/OperatingSystemMXBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,131 @@
+/*
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+/**
+ * Platform-specific management interface for the operating system
+ * on which the Java virtual machine is running.
+ *
+ * <p>
+ * The <tt>OperatingSystemMXBean</tt> object returned by
+ * {@link java.lang.management.ManagementFactory#getOperatingSystemMXBean()}
+ * is an instance of the implementation class of this interface
+ * or {@link UnixOperatingSystemMXBean} interface depending on
+ * its underlying operating system.
+ *
+ * @author  Mandy Chung
+ * @since   1.5
+ */
+@jdk.Exported
+public interface OperatingSystemMXBean extends
+    java.lang.management.OperatingSystemMXBean {
+
+    /**
+     * Returns the amount of virtual memory that is guaranteed to
+     * be available to the running process in bytes,
+     * or <tt>-1</tt> if this operation is not supported.
+     *
+     * @return the amount of virtual memory that is guaranteed to
+     * be available to the running process in bytes,
+     * or <tt>-1</tt> if this operation is not supported.
+     */
+    public long getCommittedVirtualMemorySize();
+
+    /**
+     * Returns the total amount of swap space in bytes.
+     *
+     * @return the total amount of swap space in bytes.
+     */
+    public long getTotalSwapSpaceSize();
+
+    /**
+     * Returns the amount of free swap space in bytes.
+     *
+     * @return the amount of free swap space in bytes.
+     */
+    public long getFreeSwapSpaceSize();
+
+    /**
+     * Returns the CPU time used by the process on which the Java
+     * virtual machine is running in nanoseconds.  The returned value
+     * is of nanoseconds precision but not necessarily nanoseconds
+     * accuracy.  This method returns <tt>-1</tt> if the
+     * the platform does not support this operation.
+     *
+     * @return the CPU time used by the process in nanoseconds,
+     * or <tt>-1</tt> if this operation is not supported.
+     */
+    public long getProcessCpuTime();
+
+    /**
+     * Returns the amount of free physical memory in bytes.
+     *
+     * @return the amount of free physical memory in bytes.
+     */
+    public long getFreePhysicalMemorySize();
+
+    /**
+     * Returns the total amount of physical memory in bytes.
+     *
+     * @return the total amount of physical memory in  bytes.
+     */
+    public long getTotalPhysicalMemorySize();
+
+    /**
+     * Returns the "recent cpu usage" for the whole system. This value is a
+     * double in the [0.0,1.0] interval. A value of 0.0 means that all CPUs
+     * were idle during the recent period of time observed, while a value
+     * of 1.0 means that all CPUs were actively running 100% of the time
+     * during the recent period being observed. All values betweens 0.0 and
+     * 1.0 are possible depending of the activities going on in the system.
+     * If the system recent cpu usage is not available, the method returns a
+     * negative value.
+     *
+     * @return the "recent cpu usage" for the whole system; a negative
+     * value if not available.
+     * @since   1.7
+     */
+    public double getSystemCpuLoad();
+
+    /**
+     * Returns the "recent cpu usage" for the Java Virtual Machine process.
+     * This value is a double in the [0.0,1.0] interval. A value of 0.0 means
+     * that none of the CPUs were running threads from the JVM process during
+     * the recent period of time observed, while a value of 1.0 means that all
+     * CPUs were actively running threads from the JVM 100% of the time
+     * during the recent period being observed. Threads from the JVM include
+     * the application threads as well as the JVM internal threads. All values
+     * betweens 0.0 and 1.0 are possible depending of the activities going on
+     * in the JVM process and the whole system. If the Java Virtual Machine
+     * recent CPU usage is not available, the method returns a negative value.
+     *
+     * @return the "recent cpu usage" for the Java Virtual Machine process;
+     * a negative value if not available.
+     * @since   1.7
+     */
+    public double getProcessCpuLoad();
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/ThreadMXBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,222 @@
+/*
+ * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import java.util.Map;
+
+/**
+ * Platform-specific management interface for the thread system
+ * of the Java virtual machine.
+ * <p>
+ * This platform extension is only available to a thread
+ * implementation that supports this extension.
+ *
+ * @author  Paul Hohensee
+ * @since   6u25
+ */
+
+@jdk.Exported
+public interface ThreadMXBean extends java.lang.management.ThreadMXBean {
+    /**
+     * Returns the total CPU time for each thread whose ID is
+     * in the input array {@code ids} in nanoseconds.
+     * The returned values are of nanoseconds precision but
+     * not necessarily nanoseconds accuracy.
+     * <p>
+     * This method is equivalent to calling the
+     * {@link ThreadMXBean#getThreadCpuTime(long)}
+     * method for each thread ID in the input array {@code ids} and setting the
+     * returned value in the corresponding element of the returned array.
+     *
+     * @param ids an array of thread IDs.
+     * @return an array of long values, each of which is the amount of CPU
+     * time the thread whose ID is in the corresponding element of the input
+     * array of IDs has used,
+     * if the thread of a specified ID exists, the thread is alive,
+     * and CPU time measurement is enabled;
+     * {@code -1} otherwise.
+     *
+     * @throws NullPointerException if {@code ids} is {@code null}
+     * @throws IllegalArgumentException if any element in the input array
+     *         {@code ids} is {@code <=} {@code 0}.
+     * @throws java.lang.UnsupportedOperationException if the Java
+     *         virtual machine implementation does not support CPU time
+     *         measurement.
+     *
+     * @see ThreadMXBean#getThreadCpuTime(long)
+     * @see #getThreadUserTime
+     * @see ThreadMXBean#isThreadCpuTimeSupported
+     * @see ThreadMXBean#isThreadCpuTimeEnabled
+     * @see ThreadMXBean#setThreadCpuTimeEnabled
+     */
+    public long[] getThreadCpuTime(long[] ids);
+
+    /**
+     * Returns the CPU time that each thread whose ID is in the input array
+     * {@code ids} has executed in user mode in nanoseconds.
+     * The returned values are of nanoseconds precision but
+     * not necessarily nanoseconds accuracy.
+     * <p>
+     * This method is equivalent to calling the
+     * {@link ThreadMXBean#getThreadUserTime(long)}
+     * method for each thread ID in the input array {@code ids} and setting the
+     * returned value in the corresponding element of the returned array.
+     *
+     * @param ids an array of thread IDs.
+     * @return an array of long values, each of which is the amount of user
+     * mode CPU time the thread whose ID is in the corresponding element of
+     * the input array of IDs has used,
+     * if the thread of a specified ID exists, the thread is alive,
+     * and CPU time measurement is enabled;
+     * {@code -1} otherwise.
+     *
+     * @throws NullPointerException if {@code ids} is {@code null}
+     * @throws IllegalArgumentException if any element in the input array
+     *         {@code ids} is {@code <=} {@code 0}.
+     * @throws java.lang.UnsupportedOperationException if the Java
+     *         virtual machine implementation does not support CPU time
+     *         measurement.
+     *
+     * @see ThreadMXBean#getThreadUserTime(long)
+     * @see #getThreadCpuTime
+     * @see ThreadMXBean#isThreadCpuTimeSupported
+     * @see ThreadMXBean#isThreadCpuTimeEnabled
+     * @see ThreadMXBean#setThreadCpuTimeEnabled
+     */
+    public long[] getThreadUserTime(long[] ids);
+
+    /**
+     * Returns an approximation of the total amount of memory, in bytes,
+     * allocated in heap memory for the thread of the specified ID.
+     * The returned value is an approximation because some Java virtual machine
+     * implementations may use object allocation mechanisms that result in a
+     * delay between the time an object is allocated and the time its size is
+     * recorded.
+     * <p>
+     * If the thread of the specified ID is not alive or does not exist,
+     * this method returns {@code -1}. If thread memory allocation measurement
+     * is disabled, this method returns {@code -1}.
+     * A thread is alive if it has been started and has not yet died.
+     * <p>
+     * If thread memory allocation measurement is enabled after the thread has
+     * started, the Java virtual machine implementation may choose any time up
+     * to and including the time that the capability is enabled as the point
+     * where thread memory allocation measurement starts.
+     *
+     * @param id the thread ID of a thread
+     * @return an approximation of the total memory allocated, in bytes, in
+     * heap memory for a thread of the specified ID
+     * if the thread of the specified ID exists, the thread is alive,
+     * and thread memory allocation measurement is enabled;
+     * {@code -1} otherwise.
+     *
+     * @throws IllegalArgumentException if {@code id} {@code <=} {@code 0}.
+     * @throws java.lang.UnsupportedOperationException if the Java virtual
+     *         machine implementation does not support thread memory allocation
+     *         measurement.
+     *
+     * @see #isThreadAllocatedMemorySupported
+     * @see #isThreadAllocatedMemoryEnabled
+     * @see #setThreadAllocatedMemoryEnabled
+     */
+    public long getThreadAllocatedBytes(long id);
+
+    /**
+     * Returns an approximation of the total amount of memory, in bytes,
+     * allocated in heap memory for each thread whose ID is in the input
+     * array {@code ids}.
+     * The returned values are approximations because some Java virtual machine
+     * implementations may use object allocation mechanisms that result in a
+     * delay between the time an object is allocated and the time its size is
+     * recorded.
+     * <p>
+     * This method is equivalent to calling the
+     * {@link #getThreadAllocatedBytes(long)}
+     * method for each thread ID in the input array {@code ids} and setting the
+     * returned value in the corresponding element of the returned array.
+     *
+     * @param ids an array of thread IDs.
+     * @return an array of long values, each of which is an approximation of
+     * the total memory allocated, in bytes, in heap memory for the thread
+     * whose ID is in the corresponding element of the input array of IDs.
+     *
+     * @throws NullPointerException if {@code ids} is {@code null}
+     * @throws IllegalArgumentException if any element in the input array
+     *         {@code ids} is {@code <=} {@code 0}.
+     * @throws java.lang.UnsupportedOperationException if the Java virtual
+     *         machine implementation does not support thread memory allocation
+     *         measurement.
+     *
+     * @see #getThreadAllocatedBytes(long)
+     * @see #isThreadAllocatedMemorySupported
+     * @see #isThreadAllocatedMemoryEnabled
+     * @see #setThreadAllocatedMemoryEnabled
+     */
+    public long[] getThreadAllocatedBytes(long[] ids);
+
+    /**
+     * Tests if the Java virtual machine implementation supports thread memory
+     * allocation measurement.
+     *
+     * @return
+     *   {@code true}
+     *     if the Java virtual machine implementation supports thread memory
+     *     allocation measurement;
+     *   {@code false} otherwise.
+     */
+    public boolean isThreadAllocatedMemorySupported();
+
+    /**
+     * Tests if thread memory allocation measurement is enabled.
+     *
+     * @return {@code true} if thread memory allocation measurement is enabled;
+     *         {@code false} otherwise.
+     *
+     * @throws java.lang.UnsupportedOperationException if the Java virtual
+     *         machine does not support thread memory allocation measurement.
+     *
+     * @see #isThreadAllocatedMemorySupported
+     */
+    public boolean isThreadAllocatedMemoryEnabled();
+
+    /**
+     * Enables or disables thread memory allocation measurement.  The default
+     * is platform dependent.
+     *
+     * @param enable {@code true} to enable;
+     *               {@code false} to disable.
+     *
+     * @throws java.lang.UnsupportedOperationException if the Java virtual
+     *         machine does not support thread memory allocation measurement.
+     *
+     * @throws java.lang.SecurityException if a security manager
+     *         exists and the caller does not have
+     *         ManagementPermission("control").
+     *
+     * @see #isThreadAllocatedMemorySupported
+     */
+    public void setThreadAllocatedMemoryEnabled(boolean enable);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/UnixOperatingSystemMXBean.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+/**
+ * Platform-specific management interface for the Unix
+ * operating system on which the Java virtual machine is running.
+ *
+ * @author  Mandy Chung
+ * @since   1.5
+ */
+@jdk.Exported
+public interface UnixOperatingSystemMXBean extends
+    com.sun.management.OperatingSystemMXBean {
+
+    /**
+     * Returns the number of open file descriptors.
+     *
+     * @return the number of open file descriptors.
+     */
+    public long getOpenFileDescriptorCount();
+
+    /**
+     * Returns the maximum number of file descriptors.
+     *
+     * @return the maximum number of file descriptors.
+     */
+    public long getMaxFileDescriptorCount();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/VMOption.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,248 @@
+/*
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management;
+
+import com.sun.management.internal.VMOptionCompositeData;
+import javax.management.openmbean.CompositeData;
+
+/**
+ * Information about a VM option including its value and
+ * where the value came from which is referred as its
+ * {@link VMOption.Origin <i>origin</i>}.
+ * <p>
+ * Each VM option has a default value.  A VM option can
+ * be set at VM creation time typically as a command line
+ * argument to the launcher or an argument passed to the
+ * VM created using the JNI invocation interface.
+ * In addition, a VM option may be set via an environment
+ * variable or a configuration file. A VM option can also
+ * be set dynamically via a management interface after
+ * the VM was started.
+ *
+ * A {@code VMOption} contains the value of a VM option
+ * and the origin of that value at the time this {@code VMOption}
+ * object was constructed.  The value of the VM option
+ * may be changed after the {@code VMOption} object was constructed,
+ *
+ * @see <a href="{@docRoot}/../../../../technotes/guides/vm/index.html">
+ *         Java Virtual Machine</a>
+ * @author Mandy Chung
+ * @since 1.6
+ */
+@jdk.Exported
+public class VMOption {
+    private String name;
+    private String value;
+    private boolean writeable;
+    private Origin origin;
+
+    /**
+     * Origin of the value of a VM option.  It tells where the
+     * value of a VM option came from.
+     *
+     * @since 1.6
+     */
+    @jdk.Exported
+    public enum Origin {
+        /**
+         * The VM option has not been set and its value
+         * is the default value.
+         */
+        DEFAULT,
+        /**
+         * The VM option was set at VM creation time typically
+         * as a command line argument to the launcher or
+         * an argument passed to the VM created using the
+         * JNI invocation interface.
+         */
+        VM_CREATION,
+        /**
+         * The VM option was set via an environment variable.
+         */
+        ENVIRON_VAR,
+        /**
+         * The VM option was set via a configuration file.
+         */
+        CONFIG_FILE,
+        /**
+         * The VM option was set via the management interface after the VM
+         * was started.
+         */
+        MANAGEMENT,
+        /**
+         * The VM option was set via the VM ergonomic support.
+         */
+        ERGONOMIC,
+        /**
+         * The VM option was set using the attach framework.
+         * @since 1.9
+         */
+        ATTACH_ON_DEMAND,
+        /**
+         * The VM option was set via some other mechanism.
+         */
+        OTHER
+    }
+
+    /**
+     * Constructs a {@code VMOption}.
+     *
+     * @param name Name of a VM option.
+     * @param value Value of a VM option.
+     * @param writeable {@code true} if a VM option can be set dynamically,
+     *                  or {@code false} otherwise.
+     * @param origin where the value of a VM option came from.
+     *
+     * @throws NullPointerException if the name or value is {@code null}
+     */
+    public VMOption(String name, String value, boolean writeable, Origin origin) {
+        this.name = name;
+        this.value = value;
+        this.writeable = writeable;
+        this.origin = origin;
+    }
+
+    /**
+     * Constructs a {@code VMOption} object from a
+     * {@link CompositeData CompositeData}.
+     */
+    private VMOption(CompositeData cd) {
+        // validate the input composite data
+        VMOptionCompositeData.validateCompositeData(cd);
+
+        this.name = VMOptionCompositeData.getName(cd);
+        this.value = VMOptionCompositeData.getValue(cd);
+        this.writeable = VMOptionCompositeData.isWriteable(cd);
+        this.origin = VMOptionCompositeData.getOrigin(cd);
+    }
+
+    /**
+     * Returns the name of this VM option.
+     *
+     * @return the name of this VM option.
+     */
+    public String getName() {
+        return name;
+    }
+
+    /**
+     * Returns the value of this VM option at the time when
+     * this {@code VMOption} was created. The value could have been changed.
+     *
+     * @return the value of the VM option at the time when
+     *         this {@code VMOption} was created.
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Returns the origin of the value of this VM option. That is,
+     * where the value of this VM option came from.
+     *
+     * @return where the value of this VM option came from.
+     */
+    public Origin getOrigin() {
+        return origin;
+    }
+
+    /**
+     * Tests if this VM option is writeable.  If this VM option is writeable,
+     * it can be set by the {@link HotSpotDiagnosticMXBean#setVMOption
+     * HotSpotDiagnosticMXBean.setVMOption} method.
+     *
+     * @return {@code true} if this VM option is writeable; {@code false}
+     * otherwise.
+     */
+    public boolean isWriteable() {
+        return writeable;
+    }
+
+    public String toString() {
+        return "VM option: " + getName() +
+               " value: " + value + " " +
+               " origin: " + origin + " " +
+               (writeable ? "(read-write)" : "(read-only)");
+    }
+
+    /**
+     * Returns a {@code VMOption} object represented by the
+     * given {@code CompositeData}. The given {@code CompositeData}
+     * must contain the following attributes:
+     *
+     * <blockquote>
+     * <table border>
+     * <tr>
+     *   <th align=left>Attribute Name</th>
+     *   <th align=left>Type</th>
+     * </tr>
+     * <tr>
+     *   <td>name</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>value</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>origin</td>
+     *   <td>{@code java.lang.String}</td>
+     * </tr>
+     * <tr>
+     *   <td>writeable</td>
+     *   <td>{@code java.lang.Boolean}</td>
+     * </tr>
+     * </table>
+     * </blockquote>
+     *
+     * @param cd {@code CompositeData} representing a {@code VMOption}
+     *
+     * @throws IllegalArgumentException if {@code cd} does not
+     *   represent a {@code VMOption} with the attributes described
+     *   above.
+     *
+     * @return a {@code VMOption} object represented by {@code cd}
+     *         if {@code cd} is not {@code null};
+     *         {@code null} otherwise.
+     */
+    public static VMOption from(CompositeData cd) {
+        if (cd == null) {
+            return null;
+        }
+
+        if (cd instanceof VMOptionCompositeData) {
+            return ((VMOptionCompositeData) cd).getVMOption();
+        } else {
+            return new VMOption(cd);
+        }
+
+    }
+
+    // for sun.management.MappedMXBeanType
+    static CompositeData toCompositeData(VMOption option) {
+        return VMOptionCompositeData.toCompositeData(option);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/DiagnosticCommandArgumentInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+/**
+ * Diagnostic Command Argument information. It contains the description
+ * of one parameter of the diagnostic command. A parameter can either be an
+ * option or an argument. Options are identified by the option name while
+ * arguments are identified by their position in the command line. The generic
+ * syntax of a diagnostic command is:
+ *  <blockquote>
+ *    &lt;command name&gt; [&lt;option&gt;=&lt;value&gt;] [&lt;argument_value&gt;]
+ * </blockquote>
+ * Example:
+ * <blockquote>
+ * command_name option1=value1 option2=value argumentA argumentB argumentC
+ * </blockquote>
+ * In this command line, the diagnostic command receives five parameters, two
+ * options named {@code option1} and {@code option2}, and three arguments.
+ * argumentA's position is 0, argumentB's position is 1 and argumentC's
+ * position is 2.
+ *
+ * @since 1.8
+ */
+
+class DiagnosticCommandArgumentInfo {
+    private final String name;
+    private final String description;
+    private final String type;
+    private final String defaultValue;
+    private final boolean mandatory;
+    private final boolean option;
+    private final boolean multiple;
+    private final int position;
+
+    /**
+     * Returns the argument name.
+     *
+     * @return the argument name
+     */
+    String getName() {
+        return name;
+    }
+
+   /**
+     * Returns the argument description.
+     *
+     * @return the argument description
+     */
+    String getDescription() {
+        return description;
+    }
+
+    /**
+     * Returns the argument type.
+     *
+     * @return the argument type
+     */
+    String getType() {
+        return type;
+    }
+
+    /**
+     * Returns the default value as a String if a default value
+     * is defined, null otherwise.
+     *
+     * @return the default value as a String if a default value
+     * is defined, null otherwise.
+     */
+    String getDefault() {
+        return defaultValue;
+    }
+
+    /**
+     * Returns {@code true} if the argument is mandatory,
+     *         {@code false} otherwise.
+     *
+     * @return {@code true} if the argument is mandatory,
+     *         {@code false} otherwise
+     */
+    boolean isMandatory() {
+        return mandatory;
+    }
+
+    /**
+     * Returns {@code true} if the argument is an option,
+     *         {@code false} otherwise. Options have to be specified using the
+     *         &lt;key&gt;=&lt;value&gt; syntax on the command line, while other
+     *         arguments are specified with a single &lt;value&gt; field and are
+     *         identified by their position on command line.
+     *
+     * @return {@code true} if the argument is an option,
+     *         {@code false} otherwise
+     */
+    boolean isOption() {
+        return option;
+    }
+
+    /**
+     * Returns {@code true} if the argument can be specified multiple times,
+     *         {@code false} otherwise.
+     *
+     * @return {@code true} if the argument can be specified multiple times,
+     *         {@code false} otherwise
+     */
+    boolean isMultiple() {
+        return multiple;
+    }
+
+    /**
+     * Returns the expected position of this argument if it is not an option,
+     *         -1 otherwise. Argument position if defined from left to right,
+     *         starting at zero and ignoring the diagnostic command name and
+     *         options.
+     *
+     * @return the expected position of this argument if it is not an option,
+     *         -1 otherwise.
+     */
+    int getPosition() {
+        return position;
+    }
+
+    DiagnosticCommandArgumentInfo(String name, String description,
+                                         String type, String defaultValue,
+                                         boolean mandatory, boolean option,
+                                         boolean multiple, int position) {
+        this.name = name;
+        this.description = description;
+        this.type = type;
+        this.defaultValue = defaultValue;
+        this.mandatory = mandatory;
+        this.option = option;
+        this.multiple = multiple;
+        this.position = position;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/DiagnosticCommandImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,411 @@
+/*
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import com.sun.management.DiagnosticCommandMBean;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.security.Permission;
+import java.util.*;
+import javax.management.Attribute;
+import javax.management.AttributeList;
+import javax.management.AttributeNotFoundException;
+import javax.management.Descriptor;
+import javax.management.ImmutableDescriptor;
+import javax.management.InvalidAttributeValueException;
+import javax.management.ListenerNotFoundException;
+import javax.management.MBeanException;
+import javax.management.MBeanInfo;
+import javax.management.MBeanNotificationInfo;
+import javax.management.MBeanOperationInfo;
+import javax.management.MBeanParameterInfo;
+import javax.management.MalformedObjectNameException;
+import javax.management.Notification;
+import javax.management.NotificationFilter;
+import javax.management.NotificationListener;
+import javax.management.ObjectName;
+import javax.management.ReflectionException;
+import sun.management.ManagementFactoryHelper;
+import sun.management.NotificationEmitterSupport;
+import sun.management.VMManagement;
+
+/**
+ * Implementation class for the diagnostic commands subsystem.
+ *
+ * @since 1.8
+ */
+public class DiagnosticCommandImpl extends NotificationEmitterSupport
+    implements DiagnosticCommandMBean {
+
+    private final VMManagement jvm;
+    private volatile Map<String, Wrapper> wrappers = null;
+    private static final String strClassName = "".getClass().getName();
+    private static final String strArrayClassName = String[].class.getName();
+    private final boolean isSupported;
+    private static DiagnosticCommandImpl diagCommandMBean = null;
+
+    static synchronized DiagnosticCommandMBean getDiagnosticCommandMBean() {
+        VMManagement jvm = ManagementFactoryHelper.getVMManagement();
+
+        // Remote Diagnostic Commands may not be supported
+        if (diagCommandMBean == null && jvm.isRemoteDiagnosticCommandsSupported()) {
+            diagCommandMBean = new DiagnosticCommandImpl(jvm);
+        }
+        return diagCommandMBean;
+    }
+
+    @Override
+    public Object getAttribute(String attribute) throws AttributeNotFoundException,
+        MBeanException, ReflectionException {
+        throw new AttributeNotFoundException(attribute);
+    }
+
+    @Override
+    public void setAttribute(Attribute attribute) throws AttributeNotFoundException,
+        InvalidAttributeValueException, MBeanException, ReflectionException {
+        throw new AttributeNotFoundException(attribute.getName());
+    }
+
+    @Override
+    public AttributeList getAttributes(String[] attributes) {
+        return new AttributeList();
+    }
+
+    @Override
+    public AttributeList setAttributes(AttributeList attributes) {
+        return new AttributeList();
+    }
+
+    private class Wrapper {
+
+        String name;
+        String cmd;
+        DiagnosticCommandInfo info;
+        Permission permission;
+
+        Wrapper(String name, String cmd, DiagnosticCommandInfo info)
+                throws InstantiationException {
+            this.name = name;
+            this.cmd = cmd;
+            this.info = info;
+            this.permission = null;
+            Exception cause = null;
+            if (info.getPermissionClass() != null) {
+                try {
+                    Class<?> c = Class.forName(info.getPermissionClass());
+                    if (info.getPermissionAction() == null) {
+                        try {
+                            Constructor<?> constructor = c.getConstructor(String.class);
+                            permission = (Permission) constructor.newInstance(info.getPermissionName());
+
+                        } catch (InstantiationException | IllegalAccessException
+                                | IllegalArgumentException | InvocationTargetException
+                                | NoSuchMethodException | SecurityException ex) {
+                            cause = ex;
+                        }
+                    }
+                    if (permission == null) {
+                        try {
+                            Constructor<?> constructor = c.getConstructor(String.class, String.class);
+                            permission = (Permission) constructor.newInstance(
+                                    info.getPermissionName(),
+                                    info.getPermissionAction());
+                        } catch (InstantiationException | IllegalAccessException
+                                | IllegalArgumentException | InvocationTargetException
+                                | NoSuchMethodException | SecurityException ex) {
+                            cause = ex;
+                        }
+                    }
+                } catch (ClassNotFoundException ex) { }
+                if (permission == null) {
+                    InstantiationException iex =
+                            new InstantiationException("Unable to instantiate required permission");
+                    iex.initCause(cause);
+                }
+            }
+        }
+
+        public String execute(String[] args) {
+            if (permission != null) {
+                SecurityManager sm = System.getSecurityManager();
+                if (sm != null) {
+                    sm.checkPermission(permission);
+                }
+            }
+            if(args == null) {
+                return executeDiagnosticCommand(cmd);
+            } else {
+                StringBuilder sb = new StringBuilder();
+                sb.append(cmd);
+                for(int i=0; i<args.length; i++) {
+                    if(args[i] == null) {
+                        throw new IllegalArgumentException("Invalid null argument");
+                    }
+                    sb.append(" ");
+                    sb.append(args[i]);
+                }
+                return executeDiagnosticCommand(sb.toString());
+            }
+        }
+    }
+
+    DiagnosticCommandImpl(VMManagement jvm) {
+        this.jvm = jvm;
+        isSupported = jvm.isRemoteDiagnosticCommandsSupported();
+    }
+
+    private static class OperationInfoComparator implements Comparator<MBeanOperationInfo> {
+        @Override
+        public int compare(MBeanOperationInfo o1, MBeanOperationInfo o2) {
+            return o1.getName().compareTo(o2.getName());
+        }
+    }
+
+    @Override
+    public MBeanInfo getMBeanInfo() {
+        SortedSet<MBeanOperationInfo> operations = new TreeSet<>(new OperationInfoComparator());
+        Map<String, Wrapper> wrappersmap;
+        if (!isSupported) {
+            wrappersmap = Collections.emptyMap();
+        } else {
+            try {
+                String[] command = getDiagnosticCommands();
+                DiagnosticCommandInfo[] info = getDiagnosticCommandInfo(command);
+                MBeanParameterInfo stringArgInfo[] = new MBeanParameterInfo[]{
+                    new MBeanParameterInfo("arguments", strArrayClassName,
+                    "Array of Diagnostic Commands Arguments and Options")
+                };
+                wrappersmap = new HashMap<>();
+                for (int i = 0; i < command.length; i++) {
+                    String name = transform(command[i]);
+                    try {
+                        Wrapper w = new Wrapper(name, command[i], info[i]);
+                        wrappersmap.put(name, w);
+                        operations.add(new MBeanOperationInfo(
+                                w.name,
+                                w.info.getDescription(),
+                                (w.info.getArgumentsInfo() == null
+                                    || w.info.getArgumentsInfo().isEmpty())
+                                    ? null : stringArgInfo,
+                                strClassName,
+                                MBeanOperationInfo.ACTION_INFO,
+                                commandDescriptor(w)));
+                    } catch (InstantiationException ex) {
+                        // If for some reasons the creation of a diagnostic command
+                        // wrappers fails, the diagnostic command is just ignored
+                        // and won't appear in the DynamicMBean
+                    }
+                }
+            } catch (IllegalArgumentException | UnsupportedOperationException e) {
+                wrappersmap = Collections.emptyMap();
+            }
+        }
+        wrappers =  Collections.unmodifiableMap(wrappersmap);
+        HashMap<String, Object> map = new HashMap<>();
+        map.put("immutableInfo", "false");
+        map.put("interfaceClassName","com.sun.management.DiagnosticCommandMBean");
+        map.put("mxbean", "false");
+        Descriptor desc = new ImmutableDescriptor(map);
+        return new MBeanInfo(
+                this.getClass().getName(),
+                "Diagnostic Commands",
+                null, // attributes
+                null, // constructors
+                operations.toArray(new MBeanOperationInfo[operations.size()]), // operations
+                getNotificationInfo(), // notifications
+                desc);
+    }
+
+    @Override
+    public Object invoke(String actionName, Object[] params, String[] signature)
+            throws MBeanException, ReflectionException {
+        if (!isSupported) {
+            throw new UnsupportedOperationException();
+        }
+        if (wrappers == null) {
+            getMBeanInfo();
+        }
+        Wrapper w = wrappers.get(actionName);
+        if (w != null) {
+            if (w.info.getArgumentsInfo().isEmpty()
+                    && (params == null || params.length == 0)
+                    && (signature == null || signature.length == 0)) {
+                return w.execute(null);
+            } else if((params != null && params.length == 1)
+                    && (signature != null && signature.length == 1
+                    && signature[0] != null
+                    && signature[0].compareTo(strArrayClassName) == 0)) {
+                return w.execute((String[]) params[0]);
+            }
+        }
+        throw new ReflectionException(new NoSuchMethodException(actionName));
+    }
+
+    private static String transform(String name) {
+        StringBuilder sb = new StringBuilder();
+        boolean toLower = true;
+        boolean toUpper = false;
+        for (int i = 0; i < name.length(); i++) {
+            char c = name.charAt(i);
+            if (c == '.' || c == '_') {
+                toLower = false;
+                toUpper = true;
+            } else {
+                if (toUpper) {
+                    toUpper = false;
+                    sb.append(Character.toUpperCase(c));
+                } else if(toLower) {
+                    sb.append(Character.toLowerCase(c));
+                } else {
+                    sb.append(c);
+                }
+            }
+        }
+        return sb.toString();
+    }
+
+    private Descriptor commandDescriptor(Wrapper w) throws IllegalArgumentException {
+        HashMap<String, Object> map = new HashMap<>();
+        map.put("dcmd.name", w.info.getName());
+        map.put("dcmd.description", w.info.getDescription());
+        map.put("dcmd.vmImpact", w.info.getImpact());
+        map.put("dcmd.permissionClass", w.info.getPermissionClass());
+        map.put("dcmd.permissionName", w.info.getPermissionName());
+        map.put("dcmd.permissionAction", w.info.getPermissionAction());
+        map.put("dcmd.enabled", w.info.isEnabled());
+        StringBuilder sb = new StringBuilder();
+        sb.append("help ");
+        sb.append(w.info.getName());
+        map.put("dcmd.help", executeDiagnosticCommand(sb.toString()));
+        if (w.info.getArgumentsInfo() != null && !w.info.getArgumentsInfo().isEmpty()) {
+            HashMap<String, Object> allargmap = new HashMap<>();
+            for (DiagnosticCommandArgumentInfo arginfo : w.info.getArgumentsInfo()) {
+                HashMap<String, Object> argmap = new HashMap<>();
+                argmap.put("dcmd.arg.name", arginfo.getName());
+                argmap.put("dcmd.arg.type", arginfo.getType());
+                argmap.put("dcmd.arg.description", arginfo.getDescription());
+                argmap.put("dcmd.arg.isMandatory", arginfo.isMandatory());
+                argmap.put("dcmd.arg.isMultiple", arginfo.isMultiple());
+                boolean isOption = arginfo.isOption();
+                argmap.put("dcmd.arg.isOption", isOption);
+                if(!isOption) {
+                    argmap.put("dcmd.arg.position", arginfo.getPosition());
+                } else {
+                    argmap.put("dcmd.arg.position", -1);
+                }
+                allargmap.put(arginfo.getName(), new ImmutableDescriptor(argmap));
+            }
+            map.put("dcmd.arguments", new ImmutableDescriptor(allargmap));
+        }
+        return new ImmutableDescriptor(map);
+    }
+
+    private final static String notifName =
+        "javax.management.Notification";
+
+    private final static String[] diagFramNotifTypes = {
+        "jmx.mbean.info.changed"
+    };
+
+    private MBeanNotificationInfo[] notifInfo = null;
+
+    @Override
+    public MBeanNotificationInfo[] getNotificationInfo() {
+        synchronized (this) {
+            if (notifInfo == null) {
+                 notifInfo = new MBeanNotificationInfo[1];
+                 notifInfo[0] =
+                         new MBeanNotificationInfo(diagFramNotifTypes,
+                                                   notifName,
+                                                   "Diagnostic Framework Notification");
+            }
+        }
+        return notifInfo;
+    }
+
+    private static long seqNumber = 0;
+    private static long getNextSeqNumber() {
+        return ++seqNumber;
+    }
+
+    private void createDiagnosticFrameworkNotification() {
+
+        if (!hasListeners()) {
+            return;
+        }
+        ObjectName on = null;
+        try {
+            on = ObjectName.getInstance(PlatformMBeanProviderImpl.DIAGNOSTIC_COMMAND_MBEAN_NAME);
+        } catch (MalformedObjectNameException e) { }
+        Notification notif = new Notification("jmx.mbean.info.changed",
+                                              on,
+                                              getNextSeqNumber());
+        notif.setUserData(getMBeanInfo());
+        sendNotification(notif);
+    }
+
+    @Override
+    public synchronized void addNotificationListener(NotificationListener listener,
+            NotificationFilter filter,
+            Object handback) {
+        boolean before = hasListeners();
+        super.addNotificationListener(listener, filter, handback);
+        boolean after = hasListeners();
+        if (!before && after) {
+            setNotificationEnabled(true);
+        }
+    }
+
+    @Override
+    public synchronized void removeNotificationListener(NotificationListener listener)
+            throws ListenerNotFoundException {
+        boolean before = hasListeners();
+        super.removeNotificationListener(listener);
+        boolean after = hasListeners();
+        if (before && !after) {
+            setNotificationEnabled(false);
+        }
+    }
+
+    @Override
+    public synchronized void removeNotificationListener(NotificationListener listener,
+            NotificationFilter filter,
+            Object handback)
+            throws ListenerNotFoundException {
+        boolean before = hasListeners();
+        super.removeNotificationListener(listener, filter, handback);
+        boolean after = hasListeners();
+        if (before && !after) {
+            setNotificationEnabled(false);
+        }
+    }
+
+    private native void setNotificationEnabled(boolean enabled);
+    private native String[] getDiagnosticCommands();
+    private native DiagnosticCommandInfo[] getDiagnosticCommandInfo(String[] commands);
+    private native String executeDiagnosticCommand(String command);
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/DiagnosticCommandInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,151 @@
+/*
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import java.util.List;
+
+/**
+ * Diagnostic command information. It contains the description of a
+ * diagnostic command.
+ *
+ * @since 1.8
+ */
+
+class DiagnosticCommandInfo {
+    private final String name;
+    private final String description;
+    private final String impact;
+    private final String permissionClass;
+    private final String permissionName;
+    private final String permissionAction;
+    private final boolean enabled;
+    private final List<DiagnosticCommandArgumentInfo> arguments;
+
+    /**
+     * Returns the diagnostic command name.
+     *
+     * @return the diagnostic command name
+     */
+    String getName() {
+        return name;
+    }
+
+   /**
+     * Returns the diagnostic command description.
+     *
+     * @return the diagnostic command description
+     */
+    String getDescription() {
+        return description;
+    }
+
+    /**
+     * Returns the potential impact of the diagnostic command execution
+     *         on the Java virtual machine behavior.
+     *
+     * @return the potential impact of the diagnostic command execution
+     *         on the Java virtual machine behavior
+     */
+    String getImpact() {
+        return impact;
+    }
+
+    /**
+     * Returns the name of the permission class required to be allowed
+     *         to invoke the diagnostic command, or null if no permission
+     *         is required.
+     *
+     * @return the name of the permission class name required to be allowed
+     *         to invoke the diagnostic command, or null if no permission
+     *         is required
+     */
+    String getPermissionClass() {
+        return permissionClass;
+    }
+
+    /**
+     * Returns the permission name required to be allowed to invoke the
+     *         diagnostic command, or null if no permission is required.
+     *
+     * @return the permission name required to be allowed to invoke the
+     *         diagnostic command, or null if no permission is required
+     */
+    String getPermissionName() {
+        return permissionName;
+    }
+
+    /**
+     * Returns the permission action required to be allowed to invoke the
+     *         diagnostic command, or null if no permission is required or
+     *         if the permission has no action specified.
+     *
+     * @return the permission action required to be allowed to invoke the
+     *         diagnostic command, or null if no permission is required or
+     *         if the permission has no action specified
+     */
+    String getPermissionAction() {
+        return permissionAction;
+    }
+
+    /**
+     * Returns {@code true} if the diagnostic command is enabled,
+     *         {@code false} otherwise. The enabled/disabled
+     *         status of a diagnostic command can evolve during
+     *         the lifetime of the Java virtual machine.
+     *
+     * @return {@code true} if the diagnostic command is enabled,
+     *         {@code false} otherwise
+     */
+    boolean isEnabled() {
+        return enabled;
+    }
+
+    /**
+     * Returns the list of the diagnostic command arguments description.
+     * If the diagnostic command has no arguments, it returns an empty list.
+     *
+     * @return a list of the diagnostic command arguments description
+     */
+    List<DiagnosticCommandArgumentInfo> getArgumentsInfo() {
+        return arguments;
+    }
+
+    DiagnosticCommandInfo(String name, String description,
+                                    String impact, String permissionClass,
+                                    String permissionName, String permissionAction,
+                                    boolean enabled,
+                                    List<DiagnosticCommandArgumentInfo> arguments)
+    {
+        this.name = name;
+        this.description = description;
+        this.impact = impact;
+        this.permissionClass = permissionClass;
+        this.permissionName = permissionName;
+        this.permissionAction = permissionAction;
+        this.enabled = enabled;
+        this.arguments = arguments;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/Flag.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import java.util.*;
+import com.sun.management.VMOption;
+import com.sun.management.VMOption.Origin;
+import java.security.AccessController;
+
+/**
+ * Flag class is a helper class for constructing a VMOption.
+ * It has the static methods for getting the Flag objects, each
+ * corresponds to one VMOption.
+ *
+ */
+class Flag {
+    private String name;
+    private Object value;
+    private Origin origin;
+    private boolean writeable;
+    private boolean external;
+
+    Flag(String name, Object value, boolean writeable,
+         boolean external, Origin origin) {
+        this.name = name;
+        this.value = value == null ? "" : value ;
+        this.origin = origin;
+        this.writeable = writeable;
+        this.external = external;
+    }
+
+    Object getValue() {
+        return value;
+    }
+
+    boolean isWriteable() {
+        return writeable;
+    }
+
+    boolean isExternal() {
+        return external;
+    }
+
+    VMOption getVMOption() {
+        return new VMOption(name, value.toString(), writeable, origin);
+    }
+
+    static Flag getFlag(String name) {
+        String[] names = new String[1];
+        names[0] = name;
+
+        List<Flag> flags = getFlags(names, 1);
+        if (flags.isEmpty()) {
+            return null;
+        } else {
+            // flags should have only one element
+            return flags.get(0);
+        }
+    }
+
+    static List<Flag> getAllFlags() {
+        int numFlags = getInternalFlagCount();
+
+        // Get all internal flags with names = null
+        return getFlags(null, numFlags);
+    }
+
+    private static List<Flag> getFlags(String[] names, int numFlags) {
+        Flag[] flags = new Flag[numFlags];
+        int count = getFlags(names, flags, numFlags);
+
+        List<Flag> result = new ArrayList<>();
+        for (Flag f : flags) {
+            if (f != null) {
+                result.add(f);
+            }
+        }
+        return result;
+    }
+
+    private static native String[] getAllFlagNames();
+    // getFlags sets each element in the given flags array
+    // with a Flag object only if the name is valid and the
+    // type is supported. The flags array may contain null elements.
+    private static native int getFlags(String[] names, Flag[] flags, int count);
+    private static native int getInternalFlagCount();
+
+    // These set* methods are synchronized on the class object
+    // to avoid multiple threads updating the same flag at the same time.
+    static synchronized native void setLongValue(String name, long value);
+    static synchronized native void setDoubleValue(String name, double value);
+    static synchronized native void setBooleanValue(String name, boolean value);
+    static synchronized native void setStringValue(String name, String value);
+
+    static {
+        AccessController.doPrivileged(
+            new java.security.PrivilegedAction<Void>() {
+                public Void run() {
+                    System.loadLibrary("management");
+                    return null;
+                }
+            });
+        initialize();
+    }
+    private static native void initialize();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/GarbageCollectionNotifInfoCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,217 @@
+/*
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import com.sun.management.GarbageCollectionNotificationInfo;
+import com.sun.management.GcInfo;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeType;
+import javax.management.openmbean.CompositeDataSupport;
+import javax.management.openmbean.OpenDataException;
+import javax.management.openmbean.OpenType;
+import javax.management.openmbean.SimpleType;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import sun.management.LazyCompositeData;
+import static sun.management.LazyCompositeData.getString;
+import sun.management.Util;
+
+/**
+ * A CompositeData for GarbageCollectionNotificationInfo for the local management support.
+ * This class avoids the performance penalty paid to the
+ * construction of a CompositeData use in the local case.
+ */
+public class GarbageCollectionNotifInfoCompositeData extends LazyCompositeData {
+    private final GarbageCollectionNotificationInfo gcNotifInfo;
+
+    public GarbageCollectionNotifInfoCompositeData(GarbageCollectionNotificationInfo info) {
+        this.gcNotifInfo = info;
+    }
+
+    public GarbageCollectionNotificationInfo getGarbageCollectionNotifInfo() {
+        return gcNotifInfo;
+    }
+
+    public static CompositeData toCompositeData(GarbageCollectionNotificationInfo info) {
+        GarbageCollectionNotifInfoCompositeData gcnicd =
+            new GarbageCollectionNotifInfoCompositeData(info);
+        return gcnicd.getCompositeData();
+    }
+
+    private CompositeType getCompositeTypeByBuilder() {
+        final GcInfoBuilder builder = AccessController.doPrivileged (new PrivilegedAction<GcInfoBuilder>() {
+                public GcInfoBuilder run() {
+                    try {
+                        Class<?> cl = Class.forName("com.sun.management.GcInfo");
+                        Field f = cl.getDeclaredField("builder");
+                        f.setAccessible(true);
+                        return (GcInfoBuilder)f.get(gcNotifInfo.getGcInfo());
+                    } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
+                        return null;
+                    }
+                }
+            });
+        CompositeType gict = null;
+        synchronized(compositeTypeByBuilder) {
+            gict = compositeTypeByBuilder.get(builder);
+            if(gict == null) {
+                OpenType<?>[] gcNotifInfoItemTypes = new OpenType<?>[] {
+                    SimpleType.STRING,
+                    SimpleType.STRING,
+                    SimpleType.STRING,
+                    builder.getGcInfoCompositeType(),
+                };
+                try {
+                    final String typeName =
+                        "sun.management.GarbageCollectionNotifInfoCompositeType";
+                    gict = new CompositeType(typeName,
+                                             "CompositeType for GC notification info",
+                                             gcNotifInfoItemNames,
+                                             gcNotifInfoItemNames,
+                                             gcNotifInfoItemTypes);
+                    compositeTypeByBuilder.put(builder,gict);
+                } catch (OpenDataException e) {
+                    // shouldn't reach here
+                    throw new RuntimeException(e);
+                }
+            }
+        }
+        return gict;
+    }
+
+    protected CompositeData getCompositeData() {
+        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
+        // gcNotifInfoItemNames!
+        final Object[] gcNotifInfoItemValues;
+        gcNotifInfoItemValues = new Object[] {
+            gcNotifInfo.getGcName(),
+            gcNotifInfo.getGcAction(),
+            gcNotifInfo.getGcCause(),
+            GcInfoCompositeData.toCompositeData(gcNotifInfo.getGcInfo())
+        };
+
+        CompositeType gict = getCompositeTypeByBuilder();
+
+        try {
+            return new CompositeDataSupport(gict,
+                                            gcNotifInfoItemNames,
+                                            gcNotifInfoItemValues);
+        } catch (OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    //    private static MappedMXBeanType gcInfoMapType;
+    private static final String GC_NAME = "gcName";
+    private static final String GC_ACTION = "gcAction";
+    private static final String GC_CAUSE = "gcCause";
+    private static final String GC_INFO     = "gcInfo";
+    private static final String[] gcNotifInfoItemNames = {
+        GC_NAME,
+        GC_ACTION,
+        GC_CAUSE,
+        GC_INFO
+    };
+    private static HashMap<GcInfoBuilder,CompositeType> compositeTypeByBuilder =
+        new HashMap<>();
+
+    public static String getGcName(CompositeData cd) {
+        String gcname = getString(cd, GC_NAME);
+        if (gcname == null) {
+            throw new IllegalArgumentException("Invalid composite data: " +
+                "Attribute " + GC_NAME + " has null value");
+        }
+        return gcname;
+    }
+
+    public static String getGcAction(CompositeData cd) {
+        String gcaction = getString(cd, GC_ACTION);
+        if (gcaction == null) {
+            throw new IllegalArgumentException("Invalid composite data: " +
+                "Attribute " + GC_ACTION + " has null value");
+        }
+        return gcaction;
+    }
+
+    public static String getGcCause(CompositeData cd) {
+        String gccause = getString(cd, GC_CAUSE);
+        if (gccause == null) {
+            throw new IllegalArgumentException("Invalid composite data: " +
+                "Attribute " + GC_CAUSE + " has null value");
+        }
+        return gccause;
+    }
+
+    public static GcInfo getGcInfo(CompositeData cd) {
+        CompositeData gcInfoData = (CompositeData) cd.get(GC_INFO);
+        return GcInfo.from(gcInfoData);
+    }
+
+    /** Validate if the input CompositeData has the expected
+     * CompositeType (i.e. contain all attributes with expected
+     * names and types).
+     */
+    public static void validateCompositeData(CompositeData cd) {
+        if (cd == null) {
+            throw new NullPointerException("Null CompositeData");
+        }
+
+        if (!isTypeMatched( getBaseGcNotifInfoCompositeType(), cd.getCompositeType())) {
+            throw new IllegalArgumentException(
+                "Unexpected composite type for GarbageCollectionNotificationInfo");
+        }
+    }
+
+    // This is only used for validation.
+    private static CompositeType baseGcNotifInfoCompositeType = null;
+    private static synchronized CompositeType getBaseGcNotifInfoCompositeType() {
+        if (baseGcNotifInfoCompositeType == null) {
+            try {
+                OpenType<?>[] baseGcNotifInfoItemTypes = new OpenType<?>[] {
+                    SimpleType.STRING,
+                    SimpleType.STRING,
+                    SimpleType.STRING,
+                    GcInfoCompositeData.getBaseGcInfoCompositeType()
+                };
+                baseGcNotifInfoCompositeType =
+                    new CompositeType("sun.management.BaseGarbageCollectionNotifInfoCompositeType",
+                                      "CompositeType for Base GarbageCollectionNotificationInfo",
+                                      gcNotifInfoItemNames,
+                                      gcNotifInfoItemNames,
+                                      baseGcNotifInfoItemTypes);
+            } catch (OpenDataException e) {
+                // shouldn't reach here
+                throw new RuntimeException(e);
+            }
+        }
+        return baseGcNotifInfoCompositeType;
+    }
+
+    private static final long serialVersionUID = -1805123446483771292L;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/GarbageCollectorExtImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,181 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import com.sun.management.GarbageCollectionNotificationInfo;
+import com.sun.management.GarbageCollectorMXBean;
+import com.sun.management.GcInfo;
+import java.lang.management.ManagementFactory;
+import java.lang.management.MemoryPoolMXBean;
+import java.util.List;
+import javax.management.ListenerNotFoundException;
+import javax.management.MBeanNotificationInfo;
+import javax.management.Notification;
+import javax.management.NotificationFilter;
+import javax.management.NotificationListener;
+import javax.management.openmbean.CompositeData;
+import sun.management.GarbageCollectorImpl;
+
+/**
+ * Implementation class for the garbage collector.
+ * Standard and committed hotspot-specific metrics if any.
+ *
+ * ManagementFactory.getGarbageCollectorMXBeans() returns a list
+ * of instances of this class.
+ */
+public class GarbageCollectorExtImpl extends GarbageCollectorImpl
+    implements GarbageCollectorMXBean {
+
+    public GarbageCollectorExtImpl(String name) {
+        super(name);
+    }
+
+    // The memory pools are static and won't be changed.
+    // TODO: If the hotspot implementation begins to have pools
+    // dynamically created and removed, this needs to be modified.
+    private String[] poolNames = null;
+    private synchronized String[] getAllPoolNames() {
+        if (poolNames == null) {
+            List<MemoryPoolMXBean> pools = ManagementFactory.getMemoryPoolMXBeans();
+            poolNames = new String[pools.size()];
+            int i = 0;
+            for (MemoryPoolMXBean m : pools) {
+                poolNames[i++] = m.getName();
+            }
+        }
+        return poolNames;
+    }
+
+    public GcInfo getLastGcInfo() {
+        GcInfo info = getGcInfoBuilder().getLastGcInfo();
+        return info;
+    }
+
+    private final static String notifName =
+        "javax.management.Notification";
+
+    private final static String[] gcNotifTypes = {
+        GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION
+    };
+
+    private MBeanNotificationInfo[] notifInfo = null;
+    public MBeanNotificationInfo[] getNotificationInfo() {
+        synchronized (this) {
+            if (notifInfo == null) {
+                 notifInfo = new MBeanNotificationInfo[1];
+                 notifInfo[0] = new MBeanNotificationInfo(gcNotifTypes,
+                                                          notifName,
+                                                          "GC Notification");
+            }
+        }
+        return notifInfo;
+    }
+
+    private static long seqNumber = 0;
+    private static long getNextSeqNumber() {
+        return ++seqNumber;
+    }
+
+    protected void createGCNotification(long timestamp,
+                              String gcName,
+                              String gcAction,
+                              String gcCause,
+                              GcInfo gcInfo)  {
+        if (!hasListeners()) {
+            return;
+        }
+        Notification notif = new Notification(GarbageCollectionNotificationInfo.GARBAGE_COLLECTION_NOTIFICATION,
+                                              getObjectName(),
+                                              getNextSeqNumber(),
+                                              timestamp,
+                                              gcName);
+        GarbageCollectionNotificationInfo info =
+            new GarbageCollectionNotificationInfo(gcName,
+                                                  gcAction,
+                                                  gcCause,
+                                                  gcInfo);
+
+        CompositeData cd =
+            GarbageCollectionNotifInfoCompositeData.toCompositeData(info);
+        notif.setUserData(cd);
+        sendNotification(notif);
+    }
+
+    public synchronized void addNotificationListener(NotificationListener listener,
+                                                     NotificationFilter filter,
+                                                     Object handback)
+    {
+        boolean before = hasListeners();
+        super.addNotificationListener(listener, filter, handback);
+        boolean after = hasListeners();
+        if (!before && after) {
+            setNotificationEnabled(this, true);
+        }
+    }
+
+    public synchronized void removeNotificationListener(NotificationListener listener)
+        throws ListenerNotFoundException {
+        boolean before = hasListeners();
+        super.removeNotificationListener(listener);
+        boolean after = hasListeners();
+
+        if (before && !after) {
+            setNotificationEnabled(this,false);
+        }
+    }
+
+    public synchronized void removeNotificationListener(NotificationListener listener,
+                                                        NotificationFilter filter,
+                                                        Object handback)
+            throws ListenerNotFoundException
+    {
+        boolean before = hasListeners();
+        super.removeNotificationListener(listener,filter,handback);
+        boolean after = hasListeners();
+        if (before && !after) {
+            setNotificationEnabled(this,false);
+        }
+    }
+
+    private GcInfoBuilder gcInfoBuilder;
+    // Invoked also by the VM
+    private synchronized GcInfoBuilder getGcInfoBuilder() {
+        if(gcInfoBuilder == null) {
+            gcInfoBuilder = new GcInfoBuilder(this, getAllPoolNames());
+        }
+        return gcInfoBuilder;
+    }
+
+    private native void setNotificationEnabled(GarbageCollectorMXBean gc,
+                                                 boolean enabled);
+
+    // Invoked by the VM
+    private static java.lang.management.GarbageCollectorMXBean
+        createGarbageCollector(String name, String type) {
+
+        return new GarbageCollectorExtImpl(name);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/GcInfoBuilder.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,201 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package com.sun.management.internal;
+
+import java.lang.management.GarbageCollectorMXBean;
+import java.lang.management.MemoryUsage;
+import javax.management.openmbean.OpenType;
+import javax.management.openmbean.SimpleType;
+import javax.management.openmbean.CompositeType;
+import javax.management.openmbean.OpenDataException;
+import com.sun.management.GcInfo;
+import sun.management.Util;
+
+/**
+ * Helper class to build composite data.
+ */
+public class GcInfoBuilder {
+    private final GarbageCollectorMXBean gc;
+    private final String[] poolNames;
+    private String[] allItemNames;
+
+    // GC-specific composite type:
+    // Each GarbageCollectorMXBean may have different GC-specific attributes
+    // the CompositeType for the GcInfo could be different.
+    private CompositeType gcInfoCompositeType;
+
+    // GC-specific items
+    private final int gcExtItemCount;
+    private final String[] gcExtItemNames;
+    private final String[] gcExtItemDescs;
+    private final char[] gcExtItemTypes;
+
+    GcInfoBuilder(GarbageCollectorMXBean gc, String[] poolNames) {
+        this.gc = gc;
+        this.poolNames = poolNames;
+        this.gcExtItemCount = getNumGcExtAttributes(gc);
+        this.gcExtItemNames = new String[gcExtItemCount];
+        this.gcExtItemDescs = new String[gcExtItemCount];
+        this.gcExtItemTypes = new char[gcExtItemCount];
+
+        // Fill the information about extension attributes
+        fillGcAttributeInfo(gc, gcExtItemCount, gcExtItemNames,
+                            gcExtItemTypes, gcExtItemDescs);
+
+        // lazily build the CompositeType for the GcInfo
+        // including the GC-specific extension attributes
+        this.gcInfoCompositeType = null;
+    }
+
+    GcInfo getLastGcInfo() {
+        MemoryUsage[] usageBeforeGC = new MemoryUsage[poolNames.length];
+        MemoryUsage[] usageAfterGC = new MemoryUsage[poolNames.length];
+        Object[] values = new Object[gcExtItemCount];
+
+        return getLastGcInfo0(gc, gcExtItemCount, values, gcExtItemTypes,
+                              usageBeforeGC, usageAfterGC);
+    }
+
+    public String[] getPoolNames() {
+        return poolNames;
+    }
+
+    int getGcExtItemCount() {
+        return gcExtItemCount;
+    }
+
+    // Returns the CompositeType for the GcInfo including
+    // the extension attributes
+    synchronized CompositeType getGcInfoCompositeType() {
+        if (gcInfoCompositeType != null)
+            return gcInfoCompositeType;
+
+        // First, fill with the attributes in the GcInfo
+        String[] gcInfoItemNames = GcInfoCompositeData.getBaseGcInfoItemNames();
+        OpenType<?>[] gcInfoItemTypes = GcInfoCompositeData.getBaseGcInfoItemTypes();
+        int numGcInfoItems = gcInfoItemNames.length;
+
+        int itemCount = numGcInfoItems + gcExtItemCount;
+        allItemNames = new String[itemCount];
+        String[] allItemDescs = new String[itemCount];
+        OpenType<?>[] allItemTypes = new OpenType<?>[itemCount];
+
+        System.arraycopy(gcInfoItemNames, 0, allItemNames, 0, numGcInfoItems);
+        System.arraycopy(gcInfoItemNames, 0, allItemDescs, 0, numGcInfoItems);
+        System.arraycopy(gcInfoItemTypes, 0, allItemTypes, 0, numGcInfoItems);
+
+        // Then fill with the extension GC-specific attributes, if any.
+        if (gcExtItemCount > 0) {
+            fillGcAttributeInfo(gc, gcExtItemCount, gcExtItemNames,
+                                gcExtItemTypes, gcExtItemDescs);
+            System.arraycopy(gcExtItemNames, 0, allItemNames,
+                             numGcInfoItems, gcExtItemCount);
+            System.arraycopy(gcExtItemDescs, 0, allItemDescs,
+                             numGcInfoItems, gcExtItemCount);
+            for (int i = numGcInfoItems, j = 0; j < gcExtItemCount; i++, j++) {
+                switch (gcExtItemTypes[j]) {
+                    case 'Z':
+                        allItemTypes[i] = SimpleType.BOOLEAN;
+                        break;
+                    case 'B':
+                        allItemTypes[i] = SimpleType.BYTE;
+                        break;
+                    case 'C':
+                        allItemTypes[i] = SimpleType.CHARACTER;
+                        break;
+                    case 'S':
+                        allItemTypes[i] = SimpleType.SHORT;
+                        break;
+                    case 'I':
+                        allItemTypes[i] = SimpleType.INTEGER;
+                        break;
+                    case 'J':
+                        allItemTypes[i] = SimpleType.LONG;
+                        break;
+                    case 'F':
+                        allItemTypes[i] = SimpleType.FLOAT;
+                        break;
+                    case 'D':
+                        allItemTypes[i] = SimpleType.DOUBLE;
+                        break;
+                    default:
+                        throw new AssertionError(
+                            "Unsupported type [" + gcExtItemTypes[i] + "]");
+                }
+            }
+        }
+
+        CompositeType gict = null;
+        try {
+            final String typeName =
+                "sun.management." + gc.getName() + ".GcInfoCompositeType";
+
+            gict = new CompositeType(typeName,
+                                     "CompositeType for GC info for " +
+                                         gc.getName(),
+                                     allItemNames,
+                                     allItemDescs,
+                                     allItemTypes);
+        } catch (OpenDataException e) {
+            // shouldn't reach here
+            throw new RuntimeException(e);
+        }
+        gcInfoCompositeType = gict;
+
+        return gcInfoCompositeType;
+    }
+
+    synchronized String[] getItemNames() {
+        if (allItemNames == null) {
+            // initialize when forming the composite type
+            getGcInfoCompositeType();
+        }
+        return allItemNames;
+    }
+
+    // Retrieve information about extension attributes
+    private native int getNumGcExtAttributes(GarbageCollectorMXBean gc);
+    private native void fillGcAttributeInfo(GarbageCollectorMXBean gc,
+                                            int numAttributes,
+                                            String[] attributeNames,
+                                            char[] types,
+                                            String[] descriptions);
+
+    /**
+     * Returns the last GcInfo
+     *
+     * @param gc GarbageCollectorMXBean that the gc info is associated with.
+     * @param numExtAtts number of extension attributes
+     * @param extAttValues Values of extension attributes to be filled.
+     * @param before Memory usage before GC to be filled.
+     * @param after Memory usage after GC to be filled.
+     */
+    private native GcInfo getLastGcInfo0(GarbageCollectorMXBean gc,
+                                         int numExtAtts,
+                                         Object[] extAttValues,
+                                         char[] extAttTypes,
+                                         MemoryUsage[] before,
+                                         MemoryUsage[] after);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/GcInfoCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,275 @@
+/*
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import java.lang.management.MemoryUsage;
+import java.lang.reflect.Method;
+import java.lang.reflect.Field;
+import java.util.Map;
+import java.io.InvalidObjectException;
+import javax.management.openmbean.CompositeType;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeDataSupport;
+import javax.management.openmbean.TabularData;
+import javax.management.openmbean.SimpleType;
+import javax.management.openmbean.OpenType;
+import javax.management.openmbean.OpenDataException;
+import com.sun.management.GcInfo;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import sun.management.LazyCompositeData;
+import static sun.management.LazyCompositeData.getLong;
+import sun.management.MappedMXBeanType;
+import sun.management.Util;
+
+/**
+ * A CompositeData for GcInfo for the local management support.
+ * This class avoids the performance penalty paid to the
+ * construction of a CompositeData use in the local case.
+ */
+public class GcInfoCompositeData extends LazyCompositeData {
+    private final GcInfo info;
+    private final GcInfoBuilder builder;
+    private final Object[] gcExtItemValues;
+
+    public GcInfoCompositeData(GcInfo info,
+                        GcInfoBuilder builder,
+                        Object[] gcExtItemValues) {
+        this.info = info;
+        this.builder = builder;
+        this.gcExtItemValues = gcExtItemValues;
+    }
+
+    public GcInfo getGcInfo() {
+        return info;
+    }
+
+    public static CompositeData toCompositeData(final GcInfo info) {
+        final GcInfoBuilder builder = AccessController.doPrivileged (new PrivilegedAction<GcInfoBuilder>() {
+                        public GcInfoBuilder run() {
+                            try {
+                                Class<?> cl = Class.forName("com.sun.management.GcInfo");
+                                Field f = cl.getDeclaredField("builder");
+                                f.setAccessible(true);
+                                return (GcInfoBuilder)f.get(info);
+                            } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
+                                return null;
+                            }
+                        }
+                    });
+        final Object[] extAttr = AccessController.doPrivileged (new PrivilegedAction<Object[]>() {
+                        public Object[] run() {
+                            try {
+                                Class<?> cl = Class.forName("com.sun.management.GcInfo");
+                                Field f = cl.getDeclaredField("extAttributes");
+                                f.setAccessible(true);
+                                return (Object[])f.get(info);
+                            } catch(ClassNotFoundException | NoSuchFieldException | IllegalAccessException e) {
+                                return null;
+                            }
+                        }
+                    });
+        GcInfoCompositeData gcicd =
+            new GcInfoCompositeData(info,builder,extAttr);
+        return gcicd.getCompositeData();
+    }
+
+    protected CompositeData getCompositeData() {
+        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
+        // baseGcInfoItemNames!
+        final Object[] baseGcInfoItemValues;
+
+        try {
+            baseGcInfoItemValues = new Object[] {
+                info.getId(),
+                info.getStartTime(),
+                info.getEndTime(),
+                info.getDuration(),
+                memoryUsageMapType.toOpenTypeData(info.getMemoryUsageBeforeGc()),
+                memoryUsageMapType.toOpenTypeData(info.getMemoryUsageAfterGc()),
+            };
+        } catch (OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+
+        // Get the item values for the extension attributes
+        final int gcExtItemCount = builder.getGcExtItemCount();
+        if (gcExtItemCount == 0 &&
+            gcExtItemValues != null && gcExtItemValues.length != 0) {
+            throw new AssertionError("Unexpected Gc Extension Item Values");
+        }
+
+        if (gcExtItemCount > 0 && (gcExtItemValues == null ||
+             gcExtItemCount != gcExtItemValues.length)) {
+            throw new AssertionError("Unmatched Gc Extension Item Values");
+        }
+
+        Object[] values = new Object[baseGcInfoItemValues.length +
+                                     gcExtItemCount];
+        System.arraycopy(baseGcInfoItemValues, 0, values, 0,
+                         baseGcInfoItemValues.length);
+
+        if (gcExtItemCount > 0) {
+            System.arraycopy(gcExtItemValues, 0, values,
+                             baseGcInfoItemValues.length, gcExtItemCount);
+        }
+
+        try {
+            return new CompositeDataSupport(builder.getGcInfoCompositeType(),
+                                            builder.getItemNames(),
+                                            values);
+        } catch (OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    private static final String ID                     = "id";
+    private static final String START_TIME             = "startTime";
+    private static final String END_TIME               = "endTime";
+    private static final String DURATION               = "duration";
+    private static final String MEMORY_USAGE_BEFORE_GC = "memoryUsageBeforeGc";
+    private static final String MEMORY_USAGE_AFTER_GC  = "memoryUsageAfterGc";
+
+    private static final String[] baseGcInfoItemNames = {
+        ID,
+        START_TIME,
+        END_TIME,
+        DURATION,
+        MEMORY_USAGE_BEFORE_GC,
+        MEMORY_USAGE_AFTER_GC,
+    };
+
+
+    private static MappedMXBeanType memoryUsageMapType;
+    static {
+        try {
+            Method m = GcInfo.class.getMethod("getMemoryUsageBeforeGc");
+            memoryUsageMapType =
+                MappedMXBeanType.getMappedType(m.getGenericReturnType());
+        } catch (NoSuchMethodException | OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    static String[] getBaseGcInfoItemNames() {
+        return baseGcInfoItemNames;
+    }
+
+    private static OpenType<?>[] baseGcInfoItemTypes = null;
+    static synchronized OpenType<?>[] getBaseGcInfoItemTypes() {
+        if (baseGcInfoItemTypes == null) {
+            OpenType<?> memoryUsageOpenType = memoryUsageMapType.getOpenType();
+            baseGcInfoItemTypes = new OpenType<?>[] {
+                SimpleType.LONG,
+                SimpleType.LONG,
+                SimpleType.LONG,
+                SimpleType.LONG,
+
+                memoryUsageOpenType,
+                memoryUsageOpenType,
+            };
+        }
+        return baseGcInfoItemTypes;
+    }
+
+    public static long getId(CompositeData cd) {
+        return getLong(cd, ID);
+    }
+    public static long getStartTime(CompositeData cd) {
+        return getLong(cd, START_TIME);
+    }
+    public static long getEndTime(CompositeData cd) {
+        return getLong(cd, END_TIME);
+    }
+
+    public static Map<String, MemoryUsage>
+            getMemoryUsageBeforeGc(CompositeData cd) {
+        try {
+            TabularData td = (TabularData) cd.get(MEMORY_USAGE_BEFORE_GC);
+            return cast(memoryUsageMapType.toJavaTypeData(td));
+        } catch (InvalidObjectException | OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    @SuppressWarnings("unchecked")
+    public static Map<String, MemoryUsage> cast(Object x) {
+        return (Map<String, MemoryUsage>) x;
+    }
+    public static Map<String, MemoryUsage>
+            getMemoryUsageAfterGc(CompositeData cd) {
+        try {
+            TabularData td = (TabularData) cd.get(MEMORY_USAGE_AFTER_GC);
+            //return (Map<String,MemoryUsage>)
+            return cast(memoryUsageMapType.toJavaTypeData(td));
+        } catch (InvalidObjectException | OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    /**
+     * Returns true if the input CompositeData has the expected
+     * CompositeType (i.e. contain all attributes with expected
+     * names and types).  Otherwise, return false.
+     */
+    public static void validateCompositeData(CompositeData cd) {
+        if (cd == null) {
+            throw new NullPointerException("Null CompositeData");
+        }
+
+        if (!isTypeMatched(getBaseGcInfoCompositeType(),
+                           cd.getCompositeType())) {
+           throw new IllegalArgumentException(
+                "Unexpected composite type for GcInfo");
+        }
+    }
+
+    // This is only used for validation.
+    private static CompositeType baseGcInfoCompositeType = null;
+    static synchronized CompositeType getBaseGcInfoCompositeType() {
+        if (baseGcInfoCompositeType == null) {
+            try {
+                baseGcInfoCompositeType =
+                    new CompositeType("sun.management.BaseGcInfoCompositeType",
+                                      "CompositeType for Base GcInfo",
+                                      getBaseGcInfoItemNames(),
+                                      getBaseGcInfoItemNames(),
+                                      getBaseGcInfoItemTypes());
+            } catch (OpenDataException e) {
+                // shouldn't reach here
+                throw new RuntimeException(e);
+            }
+        }
+        return baseGcInfoCompositeType;
+    }
+
+    private static final long serialVersionUID = -5716428894085882742L;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/HotSpotDiagnostic.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import javax.management.ObjectName;
+
+import com.sun.management.HotSpotDiagnosticMXBean;
+import com.sun.management.VMOption;
+import sun.management.Util;
+
+/**
+ * Implementation of the diagnostic MBean for Hotspot VM.
+ */
+public class HotSpotDiagnostic implements HotSpotDiagnosticMXBean {
+    public HotSpotDiagnostic() {
+    }
+
+    @Override
+    public void dumpHeap(String outputFile, boolean live) throws IOException {
+        SecurityManager security = System.getSecurityManager();
+        if (security != null) {
+            security.checkWrite(outputFile);
+            Util.checkControlAccess();
+        }
+
+        dumpHeap0(outputFile, live);
+    }
+
+    private native void dumpHeap0(String outputFile, boolean live) throws IOException;
+
+    @Override
+    public List<VMOption> getDiagnosticOptions() {
+        List<Flag> allFlags = Flag.getAllFlags();
+        List<VMOption> result = new ArrayList<>();
+        for (Flag flag : allFlags) {
+            if (flag.isWriteable() && flag.isExternal()) {
+                result.add(flag.getVMOption());
+            }
+        }
+        return result;
+    }
+
+    @Override
+    public VMOption getVMOption(String name) {
+        if (name == null) {
+            throw new NullPointerException("name cannot be null");
+        }
+
+        Flag f = Flag.getFlag(name);
+        if (f == null) {
+            throw new IllegalArgumentException("VM option \"" +
+                name + "\" does not exist");
+        }
+        return f.getVMOption();
+    }
+
+    @Override
+    public void setVMOption(String name, String value) {
+        if (name == null) {
+            throw new NullPointerException("name cannot be null");
+        }
+        if (value == null) {
+            throw new NullPointerException("value cannot be null");
+        }
+
+        Util.checkControlAccess();
+        Flag flag = Flag.getFlag(name);
+        if (flag == null) {
+            throw new IllegalArgumentException("VM option \"" +
+                name + "\" does not exist");
+        }
+        if (!flag.isWriteable()){
+            throw new IllegalArgumentException("VM Option \"" +
+                name + "\" is not writeable");
+        }
+
+        // Check the type of the value
+        Object v = flag.getValue();
+        if (v instanceof Long) {
+            try {
+                long l = Long.parseLong(value);
+                Flag.setLongValue(name, l);
+            } catch (NumberFormatException e) {
+                throw new IllegalArgumentException("Invalid value:" +
+                        " VM Option \"" + name + "\"" +
+                        " expects numeric value", e);
+            }
+        } else if (v instanceof Double) {
+            try {
+                double d = Double.parseDouble(value);
+                Flag.setDoubleValue(name, d);
+            } catch (NumberFormatException e) {
+                throw new IllegalArgumentException("Invalid value:" +
+                        " VM Option \"" + name + "\"" +
+                        " expects numeric value", e);
+            }
+        } else if (v instanceof Boolean) {
+            if (!value.equalsIgnoreCase("true") &&
+                !value.equalsIgnoreCase("false")) {
+                throw new IllegalArgumentException("Invalid value:" +
+                    " VM Option \"" + name + "\"" +
+                    " expects \"true\" or \"false\".");
+            }
+            Flag.setBooleanValue(name, Boolean.parseBoolean(value));
+        } else if (v instanceof String) {
+            Flag.setStringValue(name, value);
+        } else {
+            throw new IllegalArgumentException("VM Option \"" +
+                name + "\" is of an unsupported type: " +
+                v.getClass().getName());
+        }
+    }
+
+    @Override
+    public ObjectName getObjectName() {
+        return Util.newObjectName("com.sun.management:type=HotSpotDiagnostic");
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/HotSpotThreadImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package com.sun.management.internal;
+
+import com.sun.management.ThreadMXBean;
+import sun.management.ManagementFactoryHelper;
+import sun.management.ThreadImpl;
+import sun.management.VMManagement;
+
+/**
+ *
+ */
+public class HotSpotThreadImpl extends ThreadImpl implements ThreadMXBean {
+    public HotSpotThreadImpl(VMManagement vm) {
+        super(ManagementFactoryHelper.getVMManagement());
+    }
+
+    @Override
+    public boolean isThreadAllocatedMemorySupported() {
+        return super.isThreadAllocatedMemorySupported();
+    }
+
+    @Override
+    public boolean isThreadAllocatedMemoryEnabled() {
+        return super.isThreadAllocatedMemoryEnabled();
+    }
+
+    @Override
+    public long[] getThreadCpuTime(long[] ids) {
+        return super.getThreadCpuTime(ids);
+    }
+
+    @Override
+    public long[] getThreadUserTime(long[] ids) {
+        return super.getThreadUserTime(ids);
+    }
+
+    @Override
+    public long getThreadAllocatedBytes(long id) {
+        return super.getThreadAllocatedBytes(id);
+    }
+
+    @Override
+    public long[] getThreadAllocatedBytes(long[] ids) {
+        return super.getThreadAllocatedBytes(ids);
+    }
+
+    @Override
+    public void setThreadAllocatedMemoryEnabled(boolean enable) {
+        super.setThreadAllocatedMemoryEnabled(enable);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/PlatformMBeanProviderImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,285 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package com.sun.management.internal;
+
+import com.sun.management.DiagnosticCommandMBean;
+import com.sun.management.HotSpotDiagnosticMXBean;
+import com.sun.management.ThreadMXBean;
+import java.lang.management.ManagementFactory;
+import java.lang.management.MemoryManagerMXBean;
+import java.lang.management.OperatingSystemMXBean;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+import javax.management.DynamicMBean;
+import sun.management.ManagementFactoryHelper;
+import sun.management.spi.PlatformMBeanProvider;
+
+public final class PlatformMBeanProviderImpl extends PlatformMBeanProvider {
+    final static String DIAGNOSTIC_COMMAND_MBEAN_NAME =
+        "com.sun.management:type=DiagnosticCommand";
+
+    private final List<PlatformComponent<?>> mxbeanList;
+    private static HotSpotDiagnostic hsDiagMBean = null;
+    private static OperatingSystemMXBean osMBean = null;
+
+    static {
+       AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
+           System.loadLibrary("management_ext");
+           return null;
+       });
+    }
+
+    public PlatformMBeanProviderImpl() {
+        mxbeanList = Collections.unmodifiableList(init());
+    }
+
+    @Override
+    public List<PlatformComponent<?>> getPlatformComponentList() {
+        return mxbeanList;
+    }
+
+    private List<PlatformComponent<?>> init() {
+        ArrayList<PlatformComponent<?>> initMBeanList = new ArrayList<>();
+        /**
+         * Garbage Collector in the Java virtual machine.
+         */
+        initMBeanList.add(new PlatformComponent<MemoryManagerMXBean>() {
+            private final Set<String> garbageCollectorMXBeanInterfaceNames
+                    = Collections.unmodifiableSet(
+                            Stream.of("java.lang.management.MemoryManagerMXBean",
+                                    "java.lang.management.GarbageCollectorMXBean",
+                                    "com.sun.management.GarbageCollectorMXBean")
+                            .collect(Collectors.toSet()));
+
+            @Override
+            public Set<Class<? extends MemoryManagerMXBean>> mbeanInterfaces() {
+                return Stream.of(MemoryManagerMXBean.class,
+                        java.lang.management.GarbageCollectorMXBean.class,
+                        com.sun.management.GarbageCollectorMXBean.class)
+                        .collect(Collectors.toSet());
+            }
+
+            @Override
+            public Set<String> mbeanInterfaceNames() {
+                return garbageCollectorMXBeanInterfaceNames;
+            }
+
+            @Override
+            public String getObjectNamePattern() {
+                return ManagementFactory.GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE + ",name=*";
+            }
+
+            @Override
+            public boolean isSingleton() {
+                return false; // zero or more instances
+            }
+
+            @Override
+            public Map<String, MemoryManagerMXBean> nameToMBeanMap() {
+                List<java.lang.management.GarbageCollectorMXBean> list
+                        = ManagementFactoryHelper.getGarbageCollectorMXBeans();
+                Map<String, MemoryManagerMXBean> map;
+                if (list.isEmpty()) {
+                    map = Collections.emptyMap();
+                } else {
+                    map = new HashMap<>(list.size());
+                    for (MemoryManagerMXBean gcm : list) {
+                        map.put(gcm.getObjectName().getCanonicalName(),
+                                gcm);
+                    }
+                }
+
+                return map;
+            }
+        });
+
+        /**
+         * Threading system of the Java virtual machine.
+         */
+        initMBeanList.add(new PlatformComponent<java.lang.management.ThreadMXBean>() {
+            private final Set<String> threadMXBeanInterfaceNames
+                    = Collections.unmodifiableSet(
+                            Stream.of("java.lang.management.ThreadMXBean",
+                                    "com.sun.management.ThreadMXBean")
+                            .collect(Collectors.toSet()));
+            private ThreadMXBean threadMBean = null;
+
+            @Override
+            public Set<Class<? extends java.lang.management.ThreadMXBean>> mbeanInterfaces() {
+                return Stream.of(java.lang.management.ThreadMXBean.class,
+                        com.sun.management.ThreadMXBean.class)
+                        .collect(Collectors.toSet());
+            }
+
+            @Override
+            public Set<String> mbeanInterfaceNames() {
+                return threadMXBeanInterfaceNames;
+            }
+
+            @Override
+            public String getObjectNamePattern() {
+                return ManagementFactory.THREAD_MXBEAN_NAME;
+            }
+
+            @Override
+            public synchronized Map<String, java.lang.management.ThreadMXBean> nameToMBeanMap() {
+                if (threadMBean == null) {
+                    threadMBean = new HotSpotThreadImpl(ManagementFactoryHelper.getVMManagement());
+                }
+                return Collections.singletonMap(
+                        ManagementFactory.THREAD_MXBEAN_NAME,
+                        threadMBean);
+            }
+        });
+
+        /**
+         * OperatingSystemMXBean
+         */
+        initMBeanList.add(new PlatformComponent<OperatingSystemMXBean>() {
+            private final Set<String> operatingSystemMXBeanInterfaceNames
+                    = Collections.unmodifiableSet(
+                            Stream.of("java.lang.management.OperatingSystemMXBean",
+                                    "com.sun.management.OperatingSystemMXBean",
+                                    "com.sun.management.UnixOperatingSystemMXBean")
+                            .collect(Collectors.toSet()));
+
+            @Override
+            public Set<Class<? extends OperatingSystemMXBean>> mbeanInterfaces() {
+                return Stream.of(java.lang.management.OperatingSystemMXBean.class,
+                        com.sun.management.OperatingSystemMXBean.class,
+                        com.sun.management.UnixOperatingSystemMXBean.class)
+                        .collect(Collectors.toSet());
+            }
+
+            @Override
+            public Set<String> mbeanInterfaceNames() {
+                return operatingSystemMXBeanInterfaceNames;
+            }
+
+            @Override
+            public String getObjectNamePattern() {
+                return ManagementFactory.OPERATING_SYSTEM_MXBEAN_NAME;
+            }
+
+            @Override
+            public Map<String, java.lang.management.OperatingSystemMXBean> nameToMBeanMap() {
+                return Collections.<String, java.lang.management.OperatingSystemMXBean>singletonMap(
+                        ManagementFactory.OPERATING_SYSTEM_MXBEAN_NAME,
+                        getOperatingSystemMXBean());
+            }
+        });
+
+        /**
+         * Diagnostic support for the HotSpot Virtual Machine.
+         */
+        initMBeanList.add(new PlatformComponent<com.sun.management.HotSpotDiagnosticMXBean>() {
+            private final Set<String> hotSpotDiagnosticMXBeanInterfaceNames =
+                    Collections.unmodifiableSet(Collections.<String>singleton(
+                            "com.sun.management.HotSpotDiagnosticMXBean"));
+
+            @Override
+            public Set<Class<? extends com.sun.management.HotSpotDiagnosticMXBean>> mbeanInterfaces() {
+                return Collections.singleton(com.sun.management.HotSpotDiagnosticMXBean.class);
+            }
+
+            @Override
+            public Set<String> mbeanInterfaceNames() {
+                return hotSpotDiagnosticMXBeanInterfaceNames;
+            }
+
+            @Override
+            public String getObjectNamePattern() {
+                return "com.sun.management:type=HotSpotDiagnostic";
+            }
+
+            @Override
+            public Map<String, com.sun.management.HotSpotDiagnosticMXBean> nameToMBeanMap() {
+                return Collections.<String, com.sun.management.HotSpotDiagnosticMXBean>singletonMap(
+                        "com.sun.management:type=HotSpotDiagnostic",
+                        getDiagnosticMXBean());
+            }
+        });
+
+        /**
+         * Diagnostic command MBean
+         */
+        DiagnosticCommandMBean diagMBean = DiagnosticCommandImpl.getDiagnosticCommandMBean();
+        if (diagMBean != null) {
+            initMBeanList.add(new PlatformComponent<DynamicMBean>() {
+                final Set<String> dynamicMBeanInterfaceNames
+                        = Collections.unmodifiableSet(Collections.<String>singleton(
+                                "javax.management.DynamicMBean"));
+
+                @Override
+                public Set<String> mbeanInterfaceNames() {
+                    return dynamicMBeanInterfaceNames;
+                }
+
+                @Override
+                public Set<Class<? extends DynamicMBean>> mbeanInterfaces() {
+                    // DynamicMBean cannot be used to find an MBean by ManagementFactory
+                    return Collections.emptySet();
+                }
+
+                @Override
+                public String getObjectNamePattern() {
+                    return DIAGNOSTIC_COMMAND_MBEAN_NAME;
+                }
+
+                @Override
+                public Map<String, DynamicMBean> nameToMBeanMap() {
+                    return Collections.<String, DynamicMBean>singletonMap(
+                            DIAGNOSTIC_COMMAND_MBEAN_NAME,
+                            diagMBean);
+                }
+            });
+        }
+
+        initMBeanList.trimToSize();
+        return initMBeanList;
+    }
+
+    private static synchronized HotSpotDiagnosticMXBean getDiagnosticMXBean() {
+        if (hsDiagMBean == null) {
+            hsDiagMBean = new HotSpotDiagnostic();
+        }
+        return hsDiagMBean;
+    }
+
+    private static synchronized OperatingSystemMXBean getOperatingSystemMXBean() {
+        if (osMBean == null) {
+            osMBean = new OperatingSystemImpl(ManagementFactoryHelper.getVMManagement());
+        }
+        return osMBean;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/internal/VMOptionCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,135 @@
+/*
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import com.sun.management.VMOption;
+import com.sun.management.VMOption.Origin;
+import javax.management.openmbean.CompositeType;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeDataSupport;
+import javax.management.openmbean.OpenDataException;
+import sun.management.LazyCompositeData;
+import sun.management.MappedMXBeanType;
+
+/**
+ * A CompositeData for VMOption for the local management support.
+ * This class avoids the performance penalty paid to the
+ * construction of a CompositeData use in the local case.
+ */
+public class VMOptionCompositeData extends LazyCompositeData {
+    private final VMOption option;
+
+    private VMOptionCompositeData(VMOption option) {
+        this.option = option;
+    }
+
+    public VMOption getVMOption() {
+        return option;
+    }
+
+    public static CompositeData toCompositeData(VMOption option) {
+        VMOptionCompositeData vcd = new VMOptionCompositeData(option);
+        return vcd.getCompositeData();
+    }
+
+    protected CompositeData getCompositeData() {
+        // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
+        // vmOptionItemNames!
+        final Object[] vmOptionItemValues = {
+            option.getName(),
+            option.getValue(),
+            option.isWriteable(),
+            option.getOrigin().toString(),
+        };
+
+        try {
+            return new CompositeDataSupport(vmOptionCompositeType,
+                                            vmOptionItemNames,
+                                            vmOptionItemValues);
+        } catch (OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    private static final CompositeType vmOptionCompositeType;
+    static {
+        try {
+            vmOptionCompositeType = (CompositeType)
+                MappedMXBeanType.toOpenType(VMOption.class);
+        } catch (OpenDataException e) {
+            // Should never reach here
+            throw new AssertionError(e);
+        }
+    }
+
+    static CompositeType getVMOptionCompositeType() {
+        return vmOptionCompositeType;
+    }
+
+    private static final String NAME      = "name";
+    private static final String VALUE     = "value";
+    private static final String WRITEABLE = "writeable";
+    private static final String ORIGIN    = "origin";
+
+    private static final String[] vmOptionItemNames = {
+        NAME,
+        VALUE,
+        WRITEABLE,
+        ORIGIN,
+    };
+
+    public static String getName(CompositeData cd) {
+        return getString(cd, NAME);
+    }
+    public static String getValue(CompositeData cd) {
+        return getString(cd, VALUE);
+    }
+    public static Origin getOrigin(CompositeData cd) {
+        String o = getString(cd, ORIGIN);
+        return Enum.valueOf(Origin.class, o);
+    }
+    public static boolean isWriteable(CompositeData cd) {
+        return getBoolean(cd, WRITEABLE);
+    }
+
+    /** Validate if the input CompositeData has the expected
+     * CompositeType (i.e. contain all attributes with expected
+     * names and types).
+     */
+    public static void validateCompositeData(CompositeData cd) {
+        if (cd == null) {
+            throw new NullPointerException("Null CompositeData");
+        }
+
+        if (!isTypeMatched(vmOptionCompositeType, cd.getCompositeType())) {
+            throw new IllegalArgumentException(
+                "Unexpected composite type for VMOption");
+        }
+    }
+
+    private static final long serialVersionUID = -2395573975093578470L;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/classes/com/sun/management/package-info.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/**
+ * This package contains Oracle Corporation's platform extension to
+ * the implementation of the
+ * <a href="{@docRoot}/../../../../api/java/lang/management/package-summary.html">
+ * java.lang.management</a> API and also defines the management
+ * interface for some other components for the platform.
+ *
+ * <p>
+ * All platform MBeans are registered in the <em>platform MBeanServer</em>
+ * which can be obtained via the
+ * <a href="{@docRoot}/../../../../api/java/lang/management/ManagementFactory.html#getPlatformMBeanServer()">
+ * java.lang.management.ManagementFactory.getPlatformMBeanServer</a>
+ *
+ * @author  Mandy Chung
+ * @since   1.5
+ */
+
+@jdk.Exported
+package com.sun.management;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/DiagnosticCommandImpl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,194 @@
+/*
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdlib.h>
+#include <jni.h>
+#include "management_ext.h"
+#include "com_sun_management_internal_DiagnosticCommandImpl.h"
+
+JNIEXPORT void JNICALL Java_com_sun_management_internal_DiagnosticCommandImpl_setNotificationEnabled
+(JNIEnv *env, jobject dummy, jboolean enabled) {
+    if (jmm_version <= JMM_VERSION_1_2_2) {
+        JNU_ThrowByName(env, "java/lang/UnsupportedOperationException",
+                        "JMX interface to diagnostic framework notifications is not supported by this VM");
+        return;
+    }
+    jmm_interface->SetDiagnosticFrameworkNotificationEnabled(env, enabled);
+}
+
+JNIEXPORT jobjectArray JNICALL
+Java_com_sun_management_internal_DiagnosticCommandImpl_getDiagnosticCommands
+  (JNIEnv *env, jobject dummy)
+{
+  return jmm_interface->GetDiagnosticCommands(env);
+}
+
+jobject getDiagnosticCommandArgumentInfoArray(JNIEnv *env, jstring command,
+                                              int num_arg) {
+  int i;
+  jobject obj;
+  jobjectArray result;
+  dcmdArgInfo* dcmd_arg_info_array;
+  jclass dcmdArgInfoCls;
+  jclass arraysCls;
+  jmethodID mid;
+  jobject resultList;
+
+  dcmd_arg_info_array = (dcmdArgInfo*) malloc(num_arg * sizeof(dcmdArgInfo));
+  /* According to ISO C it is perfectly legal for malloc to return zero if called with a zero argument */
+  if (dcmd_arg_info_array == NULL && num_arg != 0) {
+    return NULL;
+  }
+  jmm_interface->GetDiagnosticCommandArgumentsInfo(env, command,
+                                                   dcmd_arg_info_array);
+  dcmdArgInfoCls = (*env)->FindClass(env,
+                                     "com/sun/management/internal/DiagnosticCommandArgumentInfo");
+  if ((*env)->ExceptionCheck(env)) {
+    free(dcmd_arg_info_array);
+    return NULL;
+  }
+
+  result = (*env)->NewObjectArray(env, num_arg, dcmdArgInfoCls, NULL);
+  if (result == NULL) {
+    free(dcmd_arg_info_array);
+    return NULL;
+  }
+  for (i=0; i<num_arg; i++) {
+    obj = JNU_NewObjectByName(env,
+                              "com/sun/management/internal/DiagnosticCommandArgumentInfo",
+                              "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZI)V",
+                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].name),
+                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].description),
+                              (*env)->NewStringUTF(env,dcmd_arg_info_array[i].type),
+                              dcmd_arg_info_array[i].default_string == NULL ? NULL:
+                              (*env)->NewStringUTF(env, dcmd_arg_info_array[i].default_string),
+                              dcmd_arg_info_array[i].mandatory,
+                              dcmd_arg_info_array[i].option,
+                              dcmd_arg_info_array[i].multiple,
+                              dcmd_arg_info_array[i].position);
+    if (obj == NULL) {
+      free(dcmd_arg_info_array);
+      return NULL;
+    }
+    (*env)->SetObjectArrayElement(env, result, i, obj);
+  }
+  free(dcmd_arg_info_array);
+  arraysCls = (*env)->FindClass(env, "java/util/Arrays");
+  if ((*env)->ExceptionCheck(env)) {
+    return NULL;
+  }
+  mid = (*env)->GetStaticMethodID(env, arraysCls,
+                                  "asList", "([Ljava/lang/Object;)Ljava/util/List;");
+  resultList = (*env)->CallStaticObjectMethod(env, arraysCls, mid, result);
+  if ((*env)->ExceptionCheck(env)) {
+    // Make sure we return NULL in case of OOM inside Java
+    return NULL;
+  }
+  return resultList;
+}
+
+/* Throws IllegalArgumentException if at least one of the diagnostic command
+ * passed in argument is not supported by the JVM
+ */
+JNIEXPORT jobjectArray JNICALL
+Java_com_sun_management_internal_DiagnosticCommandImpl_getDiagnosticCommandInfo
+(JNIEnv *env, jobject dummy, jobjectArray commands)
+{
+  int i;
+  jclass dcmdInfoCls;
+  jobject result;
+  jobjectArray args;
+  jobject obj;
+  jmmOptionalSupport mos;
+  jint ret = jmm_interface->GetOptionalSupport(env, &mos);
+  jsize num_commands;
+  dcmdInfo* dcmd_info_array;
+
+  if (commands == NULL) {
+      JNU_ThrowNullPointerException(env, "Invalid String Array");
+      return NULL;
+  }
+  num_commands = (*env)->GetArrayLength(env, commands);
+  dcmdInfoCls = (*env)->FindClass(env,
+                                  "com/sun/management/internal/DiagnosticCommandInfo");
+  if ((*env)->ExceptionCheck(env)) {
+    return NULL;
+  }
+
+  result = (*env)->NewObjectArray(env, num_commands, dcmdInfoCls, NULL);
+  if (result == NULL) {
+      JNU_ThrowOutOfMemoryError(env, 0);
+      return NULL;
+  }
+  if (num_commands == 0) {
+      /* Handle the 'zero commands' case specially to avoid calling 'malloc()' */
+      /* with a zero argument because that may legally return a NULL pointer.  */
+      return result;
+  }
+  dcmd_info_array = (dcmdInfo*) malloc(num_commands * sizeof(dcmdInfo));
+  if (dcmd_info_array == NULL) {
+      JNU_ThrowOutOfMemoryError(env, NULL);
+      return NULL;
+  }
+  jmm_interface->GetDiagnosticCommandInfo(env, commands, dcmd_info_array);
+  for (i=0; i<num_commands; i++) {
+      args = getDiagnosticCommandArgumentInfoArray(env,
+                                                   (*env)->GetObjectArrayElement(env,commands,i),
+                                                   dcmd_info_array[i].num_arguments);
+      if (args == NULL) {
+          free(dcmd_info_array);
+          JNU_ThrowOutOfMemoryError(env, 0);
+          return NULL;
+      }
+      obj = JNU_NewObjectByName(env,
+                                "com/sun/management/internal/DiagnosticCommandInfo",
+                                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/util/List;)V",
+                                (*env)->NewStringUTF(env,dcmd_info_array[i].name),
+                                (*env)->NewStringUTF(env,dcmd_info_array[i].description),
+                                (*env)->NewStringUTF(env,dcmd_info_array[i].impact),
+                                dcmd_info_array[i].permission_class==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_class),
+                                dcmd_info_array[i].permission_name==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_name),
+                                dcmd_info_array[i].permission_action==NULL?NULL:(*env)->NewStringUTF(env,dcmd_info_array[i].permission_action),
+                                dcmd_info_array[i].enabled,
+                                args);
+      if (obj == NULL) {
+          free(dcmd_info_array);
+          JNU_ThrowOutOfMemoryError(env, 0);
+          return NULL;
+      }
+      (*env)->SetObjectArrayElement(env, result, i, obj);
+  }
+  free(dcmd_info_array);
+  return result;
+}
+
+/* Throws IllegalArgumentException if the diagnostic command
+ * passed in argument is not supported by the JVM
+ */
+JNIEXPORT jstring JNICALL
+Java_com_sun_management_internal_DiagnosticCommandImpl_executeDiagnosticCommand
+(JNIEnv *env, jobject dummy, jstring command) {
+  return jmm_interface->ExecuteDiagnosticCommand(env, command);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/Flag.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,236 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <jni.h>
+#include "management_ext.h"
+#include "com_sun_management_internal_Flag.h"
+
+static jobject default_origin = NULL;
+static jobject vm_creation_origin = NULL;
+static jobject mgmt_origin = NULL;
+static jobject envvar_origin = NULL;
+static jobject config_file_origin = NULL;
+static jobject ergo_origin = NULL;
+static jobject attach_origin = NULL;
+static jobject other_origin = NULL;
+
+JNIEXPORT jint JNICALL
+Java_com_sun_management_internal_Flag_getInternalFlagCount
+  (JNIEnv *env, jclass cls)
+{
+    jlong count = jmm_interface->GetLongAttribute(env, NULL,
+                                                  JMM_VM_GLOBAL_COUNT);
+    return (jint) count;
+}
+
+JNIEXPORT jobjectArray JNICALL
+  Java_com_sun_management_internal_Flag_getAllFlagNames
+(JNIEnv *env, jclass cls)
+{
+  return jmm_interface->GetVMGlobalNames(env);
+}
+
+static jobject find_origin_constant(JNIEnv* env, const char* enum_name) {
+    jvalue field;
+    field = JNU_GetStaticFieldByName(env,
+                                     NULL,
+                                     "com/sun/management/VMOption$Origin",
+                                     enum_name,
+                                     "Lcom/sun/management/VMOption$Origin;");
+    return (*env)->NewGlobalRef(env, field.l);
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_Flag_initialize
+  (JNIEnv *env, jclass cls)
+{
+    default_origin = find_origin_constant(env, "DEFAULT");
+    vm_creation_origin = find_origin_constant(env, "VM_CREATION");
+    mgmt_origin = find_origin_constant(env, "MANAGEMENT");
+    envvar_origin = find_origin_constant(env, "ENVIRON_VAR");
+    config_file_origin = find_origin_constant(env, "CONFIG_FILE");
+    ergo_origin = find_origin_constant(env, "ERGONOMIC");
+    attach_origin = find_origin_constant(env, "ATTACH_ON_DEMAND");
+    other_origin = find_origin_constant(env, "OTHER");
+}
+
+JNIEXPORT jint JNICALL
+Java_com_sun_management_internal_Flag_getFlags
+  (JNIEnv *env, jclass cls, jobjectArray names, jobjectArray flags, jint count)
+{
+    jint num_flags, i, index;
+    jmmVMGlobal* globals;
+    size_t gsize;
+    const char* class_name = "com/sun/management/internal/Flag";
+    const char* signature = "(Ljava/lang/String;Ljava/lang/Object;ZZLcom/sun/management/VMOption$Origin;)V";
+    jobject origin;
+    jobject valueObj;
+    jobject flag;
+
+    if (flags == NULL) {
+        JNU_ThrowNullPointerException(env, 0);
+        return 0;
+    }
+
+    if (count <= 0) {
+        JNU_ThrowIllegalArgumentException(env, 0);
+        return 0;
+    }
+
+    gsize = (size_t)count * sizeof(jmmVMGlobal);
+    globals = (jmmVMGlobal*) malloc(gsize);
+    if (globals == NULL) {
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return 0;
+    }
+
+    memset(globals, 0, gsize);
+    num_flags = jmm_interface->GetVMGlobals(env, names, globals, count);
+    if (num_flags == 0) {
+        free(globals);
+        return 0;
+    }
+
+    index = 0;
+    for (i = 0; i < count; i++) {
+        if (globals[i].name == NULL) {
+            continue;
+        }
+        switch (globals[i].type) {
+        case JMM_VMGLOBAL_TYPE_JBOOLEAN:
+            valueObj = JNU_NewObjectByName(env, "java/lang/Boolean", "(Z)V",
+                                           globals[i].value.z);
+            break;
+        case JMM_VMGLOBAL_TYPE_JSTRING:
+            valueObj = globals[i].value.l;
+            break;
+        case JMM_VMGLOBAL_TYPE_JLONG:
+            valueObj = JNU_NewObjectByName(env, "java/lang/Long", "(J)V",
+                                           globals[i].value.j);
+            break;
+        case JMM_VMGLOBAL_TYPE_JDOUBLE:
+            valueObj = JNU_NewObjectByName(env, "java/lang/Double", "(D)V",
+                                           globals[i].value.d);
+            break;
+        default:
+            // ignore unsupported type
+            continue;
+        }
+        switch (globals[i].origin) {
+        case JMM_VMGLOBAL_ORIGIN_DEFAULT:
+            origin = default_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_COMMAND_LINE:
+            origin = vm_creation_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_MANAGEMENT:
+            origin = mgmt_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_ENVIRON_VAR:
+            origin = envvar_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_CONFIG_FILE:
+            origin = config_file_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_ERGONOMIC:
+            origin = ergo_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_ATTACH_ON_DEMAND:
+            origin = attach_origin;
+            break;
+        case JMM_VMGLOBAL_ORIGIN_OTHER:
+            origin = other_origin;
+            break;
+        default:
+            // unknown origin
+            origin = other_origin;
+            break;
+        }
+        flag = JNU_NewObjectByName(env, class_name, signature, globals[i].name,
+                                   valueObj, globals[i].writeable,
+                                   globals[i].external, origin);
+        if (flag == NULL) {
+            free(globals);
+            JNU_ThrowOutOfMemoryError(env, 0);
+            return 0;
+        }
+        (*env)->SetObjectArrayElement(env, flags, index, flag);
+        index++;
+    }
+
+    if (index != num_flags) {
+        JNU_ThrowInternalError(env, "Number of Flag objects created unmatched");
+        free(globals);
+        return 0;
+    }
+
+    free(globals);
+
+    /* return the number of Flag objects created */
+    return num_flags;
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_Flag_setLongValue
+  (JNIEnv *env, jclass cls, jstring name, jlong value)
+{
+   jvalue v;
+   v.j = value;
+
+   jmm_interface->SetVMGlobal(env, name, v);
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_Flag_setDoubleValue
+  (JNIEnv *env, jclass cls, jstring name, jdouble value)
+{
+   jvalue v;
+   v.d = value;
+
+   jmm_interface->SetVMGlobal(env, name, v);
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_Flag_setBooleanValue
+  (JNIEnv *env, jclass cls, jstring name, jboolean value)
+{
+   jvalue v;
+   v.z = value;
+
+   jmm_interface->SetVMGlobal(env, name, v);
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_Flag_setStringValue
+  (JNIEnv *env, jclass cls, jstring name, jstring value)
+{
+   jvalue v;
+   v.l = value;
+
+   jmm_interface->SetVMGlobal(env, name, v);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/GarbageCollectorExtImpl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <jni.h>
+#include "management_ext.h"
+#include "com_sun_management_internal_GarbageCollectorExtImpl.h"
+
+JNIEXPORT void JNICALL Java_com_sun_management_internal_GarbageCollectorExtImpl_setNotificationEnabled
+(JNIEnv *env, jobject dummy, jobject gc,jboolean enabled) {
+
+    if (gc == NULL) {
+        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
+        return;
+    }
+    if((jmm_version > JMM_VERSION_1_2)
+       || (jmm_version == JMM_VERSION_1_2 && ((jmm_version&0xFF)>=1))) {
+      jmm_interface->SetGCNotificationEnabled(env, gc, enabled);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/GcInfoBuilder.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,284 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <jni.h>
+#include "management_ext.h"
+#include "com_sun_management_internal_GcInfoBuilder.h"
+
+JNIEXPORT jint JNICALL Java_com_sun_management_internal_GcInfoBuilder_getNumGcExtAttributes
+  (JNIEnv *env, jobject dummy, jobject gc) {
+    jlong value;
+
+    if (gc == NULL) {
+        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
+        return 0;
+    }
+    value = jmm_interface->GetLongAttribute(env, gc,
+                                            JMM_GC_EXT_ATTRIBUTE_INFO_SIZE);
+    return (jint) value;
+}
+
+JNIEXPORT void JNICALL Java_com_sun_management_internal_GcInfoBuilder_fillGcAttributeInfo
+  (JNIEnv *env, jobject dummy, jobject gc,
+   jint num_attributes, jobjectArray attributeNames,
+   jcharArray types, jobjectArray descriptions) {
+
+    jmmExtAttributeInfo* ext_att_info;
+    jchar* nativeTypes;
+    jstring attName = NULL;
+    jstring desc = NULL;
+    jint ret = 0;
+    jint i;
+
+    if (gc == NULL) {
+        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
+        return;
+    }
+
+    if (num_attributes <= 0) {
+        JNU_ThrowIllegalArgumentException(env, "Invalid num_attributes");
+        return;
+    }
+
+    ext_att_info = (jmmExtAttributeInfo*) malloc((size_t)num_attributes *
+                                                 sizeof(jmmExtAttributeInfo));
+    if (ext_att_info == NULL) {
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return;
+    }
+    ret = jmm_interface->GetGCExtAttributeInfo(env, gc,
+                                               ext_att_info, num_attributes);
+    if (ret != num_attributes) {
+        JNU_ThrowInternalError(env, "Unexpected num_attributes");
+        free(ext_att_info);
+        return;
+    }
+
+    nativeTypes = (jchar*) malloc((size_t)num_attributes * sizeof(jchar));
+    if (nativeTypes == NULL) {
+        free(ext_att_info);
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return;
+    }
+    for (i = 0; i < num_attributes; i++) {
+        nativeTypes[i] = ext_att_info[i].type;
+        attName = (*env)->NewStringUTF(env, ext_att_info[i].name);
+        desc = (*env)->NewStringUTF(env, ext_att_info[i].description);
+        (*env)->SetObjectArrayElement(env, attributeNames, i, attName);
+        (*env)->SetObjectArrayElement(env, descriptions, i, desc);
+    }
+    (*env)->SetCharArrayRegion(env, types, 0, num_attributes, nativeTypes);
+
+    if (ext_att_info != NULL) {
+        free(ext_att_info);
+    }
+    if (nativeTypes != NULL) {
+        free(nativeTypes);
+    }
+}
+
+static void setLongValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                      jsize index, jlong value) {
+    static const char* class_name = "java/lang/Long";
+    static const char* signature = "(J)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setBooleanValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                         jsize index, jboolean value) {
+    static const char* class_name = "java/lang/Boolean";
+    static const char* signature = "(Z)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setByteValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                      jsize index, jbyte value) {
+    static const char* class_name = "java/lang/Byte";
+    static const char* signature = "(B)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setIntValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                     jsize index, jint value) {
+    static const char* class_name = "java/lang/Integer";
+    static const char* signature = "(I)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setShortValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                       jsize index, jshort value) {
+    static const char* class_name = "java/lang/Short";
+    static const char* signature = "(S)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setDoubleValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                        jsize index, jdouble value) {
+    static const char* class_name = "java/lang/Double";
+    static const char* signature = "(D)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setFloatValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                       jsize index, jfloat value) {
+    static const char* class_name = "java/lang/Float";
+    static const char* signature = "(D)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+static void setCharValueAtObjectArray(JNIEnv *env, jobjectArray array,
+                                      jsize index, jchar value) {
+    static const char* class_name = "java/lang/Character";
+    static const char* signature = "(C)V";
+    jobject obj = JNU_NewObjectByName(env, class_name, signature, value);
+
+    (*env)->SetObjectArrayElement(env, array, index, obj);
+}
+
+JNIEXPORT jobject JNICALL Java_com_sun_management_internal_GcInfoBuilder_getLastGcInfo0
+  (JNIEnv *env, jobject builder, jobject gc,
+   jint ext_att_count, jobjectArray ext_att_values, jcharArray ext_att_types,
+   jobjectArray usageBeforeGC, jobjectArray usageAfterGC) {
+
+    jmmGCStat   gc_stat;
+    jchar*      nativeTypes;
+    jsize       i;
+    jvalue      v;
+
+    if (gc == NULL) {
+        JNU_ThrowNullPointerException(env, "Invalid GarbageCollectorMBean");
+        return 0;
+    }
+
+    if (ext_att_count <= 0) {
+        JNU_ThrowIllegalArgumentException(env, "Invalid ext_att_count");
+        return 0;
+    }
+
+    gc_stat.usage_before_gc = usageBeforeGC;
+    gc_stat.usage_after_gc = usageAfterGC;
+    gc_stat.gc_ext_attribute_values_size = ext_att_count;
+    if (ext_att_count > 0) {
+        gc_stat.gc_ext_attribute_values = (jvalue*) malloc((size_t)ext_att_count *
+                                                           sizeof(jvalue));
+        if (gc_stat.gc_ext_attribute_values == NULL) {
+            JNU_ThrowOutOfMemoryError(env, 0);
+            return 0;
+        }
+    } else {
+        gc_stat.gc_ext_attribute_values = NULL;
+    }
+
+
+    jmm_interface->GetLastGCStat(env, gc, &gc_stat);
+    if (gc_stat.gc_index == 0) {
+        if (gc_stat.gc_ext_attribute_values != NULL) {
+            free(gc_stat.gc_ext_attribute_values);
+        }
+        return 0;
+    }
+
+    // convert the ext_att_types to native types
+    nativeTypes = (jchar*) malloc((size_t)ext_att_count * sizeof(jchar));
+    if (nativeTypes == NULL) {
+        if (gc_stat.gc_ext_attribute_values != NULL) {
+            free(gc_stat.gc_ext_attribute_values);
+        }
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return 0;
+    }
+    (*env)->GetCharArrayRegion(env, ext_att_types, 0, ext_att_count, nativeTypes);
+    for (i = 0; i < ext_att_count; i++) {
+       v = gc_stat.gc_ext_attribute_values[i];
+       switch (nativeTypes[i]) {
+            case 'Z':
+                setBooleanValueAtObjectArray(env, ext_att_values, i, v.z);
+                break;
+            case 'B':
+                setByteValueAtObjectArray(env, ext_att_values, i, v.b);
+                break;
+            case 'C':
+                setCharValueAtObjectArray(env, ext_att_values, i, v.c);
+                break;
+            case 'S':
+                setShortValueAtObjectArray(env, ext_att_values, i, v.s);
+                break;
+            case 'I':
+                setIntValueAtObjectArray(env, ext_att_values, i, v.i);
+                break;
+            case 'J':
+                setLongValueAtObjectArray(env, ext_att_values, i, v.j);
+                break;
+            case 'F':
+                setFloatValueAtObjectArray(env, ext_att_values, i, v.f);
+                break;
+            case 'D':
+                setDoubleValueAtObjectArray(env, ext_att_values, i, v.d);
+                break;
+            default:
+                if (gc_stat.gc_ext_attribute_values != NULL) {
+                    free(gc_stat.gc_ext_attribute_values);
+                }
+                if (nativeTypes != NULL) {
+                    free(nativeTypes);
+                }
+                JNU_ThrowInternalError(env, "Unsupported attribute type");
+                return 0;
+       }
+    }
+    if (gc_stat.gc_ext_attribute_values != NULL) {
+        free(gc_stat.gc_ext_attribute_values);
+    }
+    if (nativeTypes != NULL) {
+        free(nativeTypes);
+    }
+
+    return JNU_NewObjectByName(env,
+       "com/sun/management/GcInfo",
+       "(Lcom/sun/management/internal/GcInfoBuilder;JJJ[Ljava/lang/management/MemoryUsage;[Ljava/lang/management/MemoryUsage;[Ljava/lang/Object;)V",
+       builder,
+       gc_stat.gc_index,
+       gc_stat.start_time,
+       gc_stat.end_time,
+       usageBeforeGC,
+       usageAfterGC,
+       ext_att_values);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/HotSpotDiagnostic.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <jni.h>
+#include "jvm.h"
+#include "management_ext.h"
+#include "com_sun_management_internal_HotSpotDiagnostic.h"
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_HotSpotDiagnostic_dumpHeap0
+  (JNIEnv *env, jobject dummy, jstring outputfile, jboolean live)
+{
+    jmm_interface->DumpHeap0(env, outputfile, live);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/management_ext.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#include <jni.h>
+#include "jvm.h"
+#include "management_ext.h"
+
+#define ERR_MSG_SIZE 128
+
+const JmmInterface* jmm_interface = NULL;
+JavaVM* jvm = NULL;
+jint jmm_version = 0;
+
+JNIEXPORT jint JNICALL
+   JNI_OnLoad(JavaVM *vm, void *reserved) {
+    JNIEnv* env;
+
+    jvm = vm;
+    if ((*vm)->GetEnv(vm, (void**) &env, JNI_VERSION_1_2) != JNI_OK) {
+        return JNI_ERR;
+    }
+
+    jmm_interface = (JmmInterface*) JVM_GetManagement(JMM_VERSION_1_0);
+    if (jmm_interface == NULL) {
+        JNU_ThrowInternalError(env, "Unsupported Management version");
+        return JNI_ERR;
+    }
+
+    jmm_version = jmm_interface->GetVersion(env);
+    return (*env)->GetVersion(env);
+}
+
+void throw_internal_error(JNIEnv* env, const char* msg) {
+    char errmsg[128];
+
+    sprintf(errmsg, "errno: %d error: %s\n", errno, msg);
+    JNU_ThrowInternalError(env, errmsg);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/share/native/libmanagement_ext/management_ext.h	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <jni.h>
+
+#include "jni_util.h"
+#include "jmm.h"
+
+#ifndef _MANAGEMENT_EXT_H_
+#define _MANAGEMENT_EXT_H_
+
+extern const JmmInterface* jmm_interface;
+extern jint jmm_version;
+extern void throw_internal_error(JNIEnv* env, const char* msg);
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/solaris/native/libmanagement_ext/UnixOperatingSystem.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,241 @@
+/*
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <fcntl.h>
+#include <kstat.h>
+#include <procfs.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/sysinfo.h>
+#include <sys/lwp.h>
+#include <pthread.h>
+#include <utmpx.h>
+#include <dlfcn.h>
+#include <sys/loadavg.h>
+#include <jni.h>
+#include "jvm.h"
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+typedef struct {
+    kstat_t *kstat;
+    uint64_t  last_idle;
+    uint64_t  last_total;
+    double  last_ratio;
+} cpuload_t;
+
+static cpuload_t   *cpu_loads = NULL;
+static unsigned int num_cpus;
+static kstat_ctl_t *kstat_ctrl = NULL;
+
+static void map_cpu_kstat_counters() {
+    kstat_t     *kstat;
+    int          i;
+
+    // Get number of CPU(s)
+    if ((num_cpus = sysconf(_SC_NPROCESSORS_ONLN)) == -1) {
+        num_cpus = 1;
+    }
+
+    // Data structure for saving CPU load
+    if ((cpu_loads = calloc(num_cpus,sizeof(cpuload_t))) == NULL) {
+        return;
+    }
+
+    // Get kstat cpu_stat counters for every CPU
+    // (loop over kstat to find our cpu_stat(s)
+    i = 0;
+    for (kstat = kstat_ctrl->kc_chain; kstat != NULL; kstat = kstat->ks_next) {
+        if (strncmp(kstat->ks_module, "cpu_stat", 8) == 0) {
+
+            if (kstat_read(kstat_ctrl, kstat, NULL) == -1) {
+            // Failed to initialize kstat for this CPU so ignore it
+            continue;
+            }
+
+            if (i == num_cpus) {
+            // Found more cpu_stats than reported CPUs
+            break;
+            }
+
+            cpu_loads[i++].kstat = kstat;
+        }
+    }
+}
+
+static int init_cpu_kstat_counters() {
+    static int initialized = 0;
+
+    // Concurrence in this method is prevented by the lock in
+    // the calling method get_cpu_load();
+    if(!initialized) {
+        if ((kstat_ctrl = kstat_open()) != NULL) {
+            map_cpu_kstat_counters();
+            initialized = 1;
+        }
+    }
+    return initialized ? 0 : -1;
+}
+
+static void update_cpu_kstat_counters() {
+    if(kstat_chain_update(kstat_ctrl) != 0) {
+        free(cpu_loads);
+        map_cpu_kstat_counters();
+    }
+}
+
+int read_cpustat(cpuload_t *load, cpu_stat_t *cpu_stat) {
+    if (load->kstat == NULL) {
+        // no handle.
+        return -1;
+    }
+    if (kstat_read(kstat_ctrl, load->kstat, cpu_stat) == -1) {
+        //  disabling for now, a kstat chain update is likely to happen next time
+        load->kstat = NULL;
+        return -1;
+    }
+    return 0;
+}
+
+double get_single_cpu_load(unsigned int n) {
+    cpuload_t  *load;
+    cpu_stat_t  cpu_stat;
+    uint_t     *usage;
+    uint64_t          c_idle;
+    uint64_t          c_total;
+    uint64_t          d_idle;
+    uint64_t          d_total;
+    int           i;
+
+    if (n >= num_cpus) {
+        return -1.0;
+    }
+
+    load = &cpu_loads[n];
+    if (read_cpustat(load, &cpu_stat) < 0) {
+        return -1.0;
+    }
+
+    usage   = cpu_stat.cpu_sysinfo.cpu;
+    c_idle  = usage[CPU_IDLE];
+
+    for (c_total = 0, i = 0; i < CPU_STATES; i++) {
+        c_total += usage[i];
+    }
+
+    // Calculate diff against previous snapshot
+    d_idle  = c_idle - load->last_idle;
+    d_total = c_total - load->last_total;
+
+    /** update if weve moved */
+    if (d_total > 0) {
+        // Save current values for next time around
+        load->last_idle  = c_idle;
+        load->last_total = c_total;
+        load->last_ratio = (double) (d_total - d_idle) / d_total;
+    }
+
+    return load->last_ratio;
+}
+
+int get_info(const char *path, void *info, size_t s, off_t o) {
+    int fd;
+    int ret = 0;
+    if ((fd = open(path, O_RDONLY)) < 0) {
+        return -1;
+    }
+    if (pread(fd, info, s, o) != s) {
+        ret = -1;
+    }
+    close(fd);
+    return ret;
+}
+
+#define MIN(a, b)           ((a < b) ? a : b)
+
+static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
+
+/**
+ * Return the cpu load (0-1) for proc number 'which' (or average all if which == -1)
+ */
+double  get_cpu_load(int which) {
+    double load =.0;
+
+    pthread_mutex_lock(&lock);
+    if(init_cpu_kstat_counters()==0) {
+
+        update_cpu_kstat_counters();
+
+        if (which == -1) {
+            unsigned int i;
+            double       t;
+
+            for (t = .0, i = 0; i < num_cpus; i++) {
+                t += get_single_cpu_load(i);
+            }
+
+            // Cap total systemload to 1.0
+            load = MIN((t / num_cpus), 1.0);
+        } else {
+            load = MIN(get_single_cpu_load(which), 1.0);
+        }
+    } else {
+        load = -1.0;
+    }
+    pthread_mutex_unlock(&lock);
+
+    return load;
+}
+
+/**
+ * Return the cpu load (0-1) for the current process (i.e the JVM)
+ * or -1.0 if the get_info() call failed
+ */
+double get_process_load(void) {
+    psinfo_t info;
+
+    // Get the percentage of "recent cpu usage" from all the lwp:s in the JVM:s
+    // process. This is returned as a value between 0.0 and 1.0 multiplied by 0x8000.
+    if (get_info("/proc/self/psinfo",&info.pr_pctcpu, sizeof(info.pr_pctcpu), offsetof(psinfo_t, pr_pctcpu)) == 0) {
+        return (double) info.pr_pctcpu / 0x8000;
+    }
+    return -1.0;
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return get_cpu_load(-1);
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return get_process_load();
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/unix/classes/com/sun/management/internal/OperatingSystemImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,101 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import sun.management.BaseOperatingSystemImpl;
+import sun.management.VMManagement;
+/**
+ * Implementation class for the operating system.
+ * Standard and committed hotspot-specific metrics if any.
+ *
+ * ManagementFactory.getOperatingSystemMXBean() returns an instance
+ * of this class.
+ */
+class OperatingSystemImpl extends BaseOperatingSystemImpl
+    implements com.sun.management.UnixOperatingSystemMXBean {
+
+    OperatingSystemImpl(VMManagement vm) {
+        super(vm);
+    }
+
+    public long getCommittedVirtualMemorySize() {
+        return getCommittedVirtualMemorySize0();
+    }
+
+    public long getTotalSwapSpaceSize() {
+        return getTotalSwapSpaceSize0();
+    }
+
+    public long getFreeSwapSpaceSize() {
+        return getFreeSwapSpaceSize0();
+    }
+
+    public long getProcessCpuTime() {
+        return getProcessCpuTime0();
+    }
+
+    public long getFreePhysicalMemorySize() {
+        return getFreePhysicalMemorySize0();
+    }
+
+    public long getTotalPhysicalMemorySize() {
+        return getTotalPhysicalMemorySize0();
+    }
+
+    public long getOpenFileDescriptorCount() {
+        return getOpenFileDescriptorCount0();
+    }
+
+    public long getMaxFileDescriptorCount() {
+        return getMaxFileDescriptorCount0();
+    }
+
+    public double getSystemCpuLoad() {
+        return getSystemCpuLoad0();
+    }
+
+    public double getProcessCpuLoad() {
+        return getProcessCpuLoad0();
+    }
+
+    /* native methods */
+    private native long getCommittedVirtualMemorySize0();
+    private native long getFreePhysicalMemorySize0();
+    private native long getFreeSwapSpaceSize0();
+    private native long getMaxFileDescriptorCount0();
+    private native long getOpenFileDescriptorCount0();
+    private native long getProcessCpuTime0();
+    private native double getProcessCpuLoad0();
+    private native double getSystemCpuLoad0();
+    private native long getTotalPhysicalMemorySize0();
+    private native long getTotalSwapSpaceSize0();
+
+    static {
+        initialize0();
+    }
+
+    private static native void initialize0();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/unix/native/libmanagement_ext/OperatingSystemImpl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,479 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include "jni.h"
+#include "jni_util.h"
+#include "jlong.h"
+#include "jvm.h"
+#include "management_ext.h"
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#if defined(_ALLBSD_SOURCE)
+#include <sys/sysctl.h>
+#ifdef __APPLE__
+#include <sys/param.h>
+#include <sys/mount.h>
+#include <mach/mach.h>
+#include <sys/proc_info.h>
+#include <libproc.h>
+#endif
+#elif !defined(_AIX)
+#include <sys/swap.h>
+#endif
+#include <sys/resource.h>
+#include <sys/times.h>
+#ifndef _ALLBSD_SOURCE
+#include <sys/sysinfo.h>
+#endif
+#include <ctype.h>
+#include <dirent.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <limits.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+#if defined(_AIX)
+#include <libperfstat.h>
+#endif
+
+static jlong page_size = 0;
+
+#if defined(_ALLBSD_SOURCE) || defined(_AIX)
+#define MB      (1024UL * 1024UL)
+#else
+
+/* This gets us the new structured proc interfaces of 5.6 & later */
+/* - see comment in <sys/procfs.h> */
+#define _STRUCTURED_PROC 1
+#include <sys/procfs.h>
+
+#endif /* _ALLBSD_SOURCE */
+
+static struct dirent* read_dir(DIR* dirp, struct dirent* entry) {
+#ifdef __solaris__
+    struct dirent* dbuf = readdir(dirp);
+    return dbuf;
+#else /* __linux__ || _ALLBSD_SOURCE */
+    struct dirent* p;
+    if (readdir_r(dirp, entry, &p) == 0) {
+        return p;
+    } else {
+        return NULL;
+    }
+#endif
+}
+
+// true = get available swap in bytes
+// false = get total swap in bytes
+static jlong get_total_or_available_swap_space_size(JNIEnv* env, jboolean available) {
+#ifdef __solaris__
+    long total, avail;
+    int nswap, i, count;
+    swaptbl_t *stbl;
+    char *strtab;
+
+    // First get the number of swap resource entries
+    if ((nswap = swapctl(SC_GETNSWP, NULL)) == -1) {
+        throw_internal_error(env, "swapctl failed to get nswap");
+        return -1;
+    }
+    if (nswap == 0) {
+        return 0;
+    }
+
+    // Allocate storage for resource entries
+    stbl = (swaptbl_t*) malloc(nswap * sizeof(swapent_t) +
+                               sizeof(struct swaptable));
+    if (stbl == NULL) {
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return -1;
+    }
+
+    // Allocate storage for the table
+    strtab = (char*) malloc((nswap + 1) * MAXPATHLEN);
+    if (strtab == NULL) {
+        free(stbl);
+        JNU_ThrowOutOfMemoryError(env, 0);
+        return -1;
+    }
+
+    for (i = 0; i < (nswap + 1); i++) {
+      stbl->swt_ent[i].ste_path = strtab + (i * MAXPATHLEN);
+    }
+    stbl->swt_n = nswap + 1;
+
+    // Get the entries
+    if ((count = swapctl(SC_LIST, stbl)) < 0) {
+        free(stbl);
+        free(strtab);
+        throw_internal_error(env, "swapctl failed to get swap list");
+        return -1;
+    }
+
+    // Sum the entries to get total and free swap
+    total = 0;
+    avail = 0;
+    for (i = 0; i < count; i++) {
+      total += stbl->swt_ent[i].ste_pages;
+      avail += stbl->swt_ent[i].ste_free;
+    }
+
+    free(stbl);
+    free(strtab);
+    return available ? ((jlong)avail * page_size) :
+                       ((jlong)total * page_size);
+#elif defined(__linux__)
+    int ret;
+    FILE *fp;
+    jlong total = 0, avail = 0;
+
+    struct sysinfo si;
+    ret = sysinfo(&si);
+    if (ret != 0) {
+        throw_internal_error(env, "sysinfo failed to get swap size");
+    }
+    total = (jlong)si.totalswap * si.mem_unit;
+    avail = (jlong)si.freeswap * si.mem_unit;
+
+    return available ? avail : total;
+#elif defined(__APPLE__)
+    struct xsw_usage vmusage;
+    size_t size = sizeof(vmusage);
+    if (sysctlbyname("vm.swapusage", &vmusage, &size, NULL, 0) != 0) {
+        throw_internal_error(env, "sysctlbyname failed");
+    }
+    return available ? (jlong)vmusage.xsu_avail : (jlong)vmusage.xsu_total;
+#else /* _ALLBSD_SOURCE */
+    /*
+     * XXXBSD: there's no way available to get swap info in
+     *         FreeBSD.  Usage of libkvm is not an option here
+     */
+    // throw_internal_error(env, "Unimplemented in FreeBSD");
+    return (0);
+#endif
+}
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_initialize0
+  (JNIEnv *env, jclass cls)
+{
+    page_size = sysconf(_SC_PAGESIZE);
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getCommittedVirtualMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+#ifdef __solaris__
+    psinfo_t psinfo;
+    ssize_t result;
+    size_t remaining;
+    char* addr;
+    int fd;
+
+    fd = open64("/proc/self/psinfo", O_RDONLY, 0);
+    if (fd < 0) {
+        throw_internal_error(env, "Unable to open /proc/self/psinfo");
+        return -1;
+    }
+
+    addr = (char *)&psinfo;
+    for (remaining = sizeof(psinfo_t); remaining > 0;) {
+        result = read(fd, addr, remaining);
+        if (result < 0) {
+            if (errno != EINTR) {
+                close(fd);
+                throw_internal_error(env, "Unable to read /proc/self/psinfo");
+                return -1;
+            }
+        } else {
+            remaining -= result;
+            addr += result;
+        }
+    }
+
+    close(fd);
+    return (jlong) psinfo.pr_size * 1024;
+#elif defined(__linux__)
+    FILE *fp;
+    unsigned long vsize = 0;
+
+    if ((fp = fopen("/proc/self/stat", "r")) == NULL) {
+        throw_internal_error(env, "Unable to open /proc/self/stat");
+        return -1;
+    }
+
+    // Ignore everything except the vsize entry
+    if (fscanf(fp, "%*d %*s %*c %*d %*d %*d %*d %*d %*u %*u %*u %*u %*u %*d %*d %*d %*d %*d %*d %*u %*u %*d %lu %*[^\n]\n", &vsize) == EOF) {
+        throw_internal_error(env, "Unable to get virtual memory usage");
+        fclose(fp);
+        return -1;
+    }
+
+    fclose(fp);
+    return (jlong)vsize;
+#elif defined(__APPLE__)
+    struct task_basic_info t_info;
+    mach_msg_type_number_t t_info_count = TASK_BASIC_INFO_COUNT;
+
+    kern_return_t res = task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&t_info, &t_info_count);
+    if (res != KERN_SUCCESS) {
+        throw_internal_error(env, "task_info failed");
+    }
+    return t_info.virtual_size;
+#else /* _ALLBSD_SOURCE */
+    /*
+     * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
+     */
+    // throw_internal_error(env, "Unimplemented in FreeBSD");
+    return (64 * MB);
+#endif
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getTotalSwapSpaceSize0
+  (JNIEnv *env, jobject mbean)
+{
+    return get_total_or_available_swap_space_size(env, JNI_FALSE);
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getFreeSwapSpaceSize0
+  (JNIEnv *env, jobject mbean)
+{
+    return get_total_or_available_swap_space_size(env, JNI_TRUE);
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuTime0
+  (JNIEnv *env, jobject mbean)
+{
+#ifdef __APPLE__
+    struct rusage usage;
+    if (getrusage(RUSAGE_SELF, &usage) != 0) {
+        throw_internal_error(env, "getrusage failed");
+        return -1;
+    }
+    jlong microsecs =
+        usage.ru_utime.tv_sec * 1000 * 1000 + usage.ru_utime.tv_usec +
+        usage.ru_stime.tv_sec * 1000 * 1000 + usage.ru_stime.tv_usec;
+    return microsecs * 1000;
+#else
+    jlong clk_tck, ns_per_clock_tick;
+    jlong cpu_time_ns;
+    struct tms time;
+
+    /*
+     * BSDNOTE: FreeBSD implements _SC_CLK_TCK since FreeBSD 5, so
+     *          add a magic to handle it
+     */
+#if defined(__solaris__) || defined(_SC_CLK_TCK)
+    clk_tck = (jlong) sysconf(_SC_CLK_TCK);
+#elif defined(__linux__) || defined(_ALLBSD_SOURCE)
+    clk_tck = 100;
+#endif
+    if (clk_tck == -1) {
+        throw_internal_error(env,
+                             "sysconf failed - not able to get clock tick");
+        return -1;
+    }
+
+    times(&time);
+    ns_per_clock_tick = (jlong) 1000 * 1000 * 1000 / (jlong) clk_tck;
+    cpu_time_ns = ((jlong)time.tms_utime + (jlong) time.tms_stime) *
+                      ns_per_clock_tick;
+    return cpu_time_ns;
+#endif
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getFreePhysicalMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+#ifdef __APPLE__
+    mach_msg_type_number_t count;
+    vm_statistics_data_t vm_stats;
+    kern_return_t res;
+
+    count = HOST_VM_INFO_COUNT;
+    res = host_statistics(mach_host_self(), HOST_VM_INFO, (host_info_t)&vm_stats, &count);
+    if (res != KERN_SUCCESS) {
+        throw_internal_error(env, "host_statistics failed");
+        return -1;
+    }
+    return (jlong)vm_stats.free_count * page_size;
+#elif defined(_ALLBSD_SOURCE)
+    /*
+     * XXBSDL no way to do it in FreeBSD
+     */
+    // throw_internal_error(env, "unimplemented in FreeBSD")
+    return (128 * MB);
+#elif defined(_AIX)
+    perfstat_memory_total_t memory_info;
+    if (-1 != perfstat_memory_total(NULL, &memory_info, sizeof(perfstat_memory_total_t), 1)) {
+        return (jlong)(memory_info.real_free * 4L * 1024L);
+    }
+    return -1;
+#else // solaris / linux
+    jlong num_avail_physical_pages = sysconf(_SC_AVPHYS_PAGES);
+    return (num_avail_physical_pages * page_size);
+#endif
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getTotalPhysicalMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+#ifdef _ALLBSD_SOURCE
+    jlong result = 0;
+    int mib[2];
+    size_t rlen;
+
+    mib[0] = CTL_HW;
+    mib[1] = HW_MEMSIZE;
+    rlen = sizeof(result);
+    if (sysctl(mib, 2, &result, &rlen, NULL, 0) != 0) {
+        throw_internal_error(env, "sysctl failed");
+        return -1;
+    }
+    return result;
+#elif defined(_AIX)
+    perfstat_memory_total_t memory_info;
+    if (-1 != perfstat_memory_total(NULL, &memory_info, sizeof(perfstat_memory_total_t), 1)) {
+        return (jlong)(memory_info.real_total * 4L * 1024L);
+    }
+    return -1;
+#else // solaris / linux
+    jlong num_physical_pages = sysconf(_SC_PHYS_PAGES);
+    return (num_physical_pages * page_size);
+#endif
+}
+
+
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getOpenFileDescriptorCount0
+  (JNIEnv *env, jobject mbean)
+{
+#ifdef __APPLE__
+    // This code is influenced by the darwin lsof source
+    pid_t my_pid;
+    struct proc_bsdinfo bsdinfo;
+    struct proc_fdinfo *fds;
+    int nfiles;
+    kern_return_t kres;
+    int res;
+    size_t fds_size;
+
+    kres = pid_for_task(mach_task_self(), &my_pid);
+    if (kres != KERN_SUCCESS) {
+        throw_internal_error(env, "pid_for_task failed");
+        return -1;
+    }
+
+    // get the maximum number of file descriptors
+    res = proc_pidinfo(my_pid, PROC_PIDTBSDINFO, 0, &bsdinfo, PROC_PIDTBSDINFO_SIZE);
+    if (res <= 0) {
+        throw_internal_error(env, "proc_pidinfo with PROC_PIDTBSDINFO failed");
+        return -1;
+    }
+
+    // allocate memory to hold the fd information (we don't acutally use this information
+    // but need it to get the number of open files)
+    fds_size = bsdinfo.pbi_nfiles * sizeof(struct proc_fdinfo);
+    fds = malloc(fds_size);
+    if (fds == NULL) {
+        JNU_ThrowOutOfMemoryError(env, "could not allocate space for file descriptors");
+        return -1;
+    }
+
+    // get the list of open files - the return value is the number of bytes
+    // proc_pidinfo filled in
+    res = proc_pidinfo(my_pid, PROC_PIDLISTFDS, 0, fds, fds_size);
+    if (res <= 0) {
+        free(fds);
+        throw_internal_error(env, "proc_pidinfo failed for PROC_PIDLISTFDS");
+        return -1;
+    }
+    nfiles = res / sizeof(struct proc_fdinfo);
+    free(fds);
+
+    return nfiles;
+#elif defined(_ALLBSD_SOURCE)
+    /*
+     * XXXBSD: there's no way available to do it in FreeBSD, AFAIK.
+     */
+    // throw_internal_error(env, "Unimplemented in FreeBSD");
+    return (100);
+#else /* solaris/linux */
+    DIR *dirp;
+    struct dirent dbuf;
+    struct dirent* dentp;
+    jlong fds = 0;
+
+#if defined(_AIX)
+/* AIX does not understand '/proc/self' - it requires the real process ID */
+#define FD_DIR aix_fd_dir
+    char aix_fd_dir[32];     /* the pid has at most 19 digits */
+    snprintf(aix_fd_dir, 32, "/proc/%d/fd", getpid());
+#else
+#define FD_DIR "/proc/self/fd"
+#endif
+
+    dirp = opendir(FD_DIR);
+    if (dirp == NULL) {
+        throw_internal_error(env, "Unable to open directory /proc/self/fd");
+        return -1;
+    }
+
+    // iterate through directory entries, skipping '.' and '..'
+    // each entry represents an open file descriptor.
+    while ((dentp = read_dir(dirp, &dbuf)) != NULL) {
+        if (isdigit(dentp->d_name[0])) {
+            fds++;
+        }
+    }
+
+    closedir(dirp);
+    // subtract by 1 which was the fd open for this implementation
+    return (fds - 1);
+#endif
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getMaxFileDescriptorCount0
+  (JNIEnv *env, jobject mbean)
+{
+    struct rlimit rlp;
+
+    if (getrlimit(RLIMIT_NOFILE, &rlp) == -1) {
+        throw_internal_error(env, "getrlimit failed");
+        return -1;
+    }
+    return (jlong) rlp.rlim_cur;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/windows/classes/com/sun/management/internal/OperatingSystemImpl.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,107 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.management.internal;
+
+import com.sun.management.OperatingSystemMXBean;
+import sun.management.BaseOperatingSystemImpl;
+import sun.management.VMManagement;
+
+/**
+ * Implementation class for the operating system.
+ * Standard and committed hotspot-specific metrics if any.
+ *
+ * ManagementFactory.getOperatingSystemMXBean() returns an instance
+ * of this class.
+ */
+class OperatingSystemImpl extends BaseOperatingSystemImpl
+    implements OperatingSystemMXBean {
+
+    // psapiLock is a lock to make sure only one thread loading
+    // PSAPI DLL.
+    private static Object psapiLock = new Object();
+
+    OperatingSystemImpl(VMManagement vm) {
+        super(vm);
+    }
+
+    @Override
+    public long getCommittedVirtualMemorySize() {
+        synchronized (psapiLock) {
+            return getCommittedVirtualMemorySize0();
+        }
+    }
+
+    @Override
+    public long getTotalSwapSpaceSize() {
+        return getTotalSwapSpaceSize0();
+    }
+
+    @Override
+    public long getFreeSwapSpaceSize() {
+        return getFreeSwapSpaceSize0();
+    }
+
+    @Override
+    public long getProcessCpuTime() {
+        return getProcessCpuTime0();
+    }
+
+    @Override
+    public long getFreePhysicalMemorySize() {
+        return getFreePhysicalMemorySize0();
+    }
+
+    @Override
+    public long getTotalPhysicalMemorySize() {
+        return getTotalPhysicalMemorySize0();
+    }
+
+    @Override
+    public double getSystemCpuLoad() {
+        return getSystemCpuLoad0();
+    }
+
+    @Override
+    public double getProcessCpuLoad() {
+        return getProcessCpuLoad0();
+    }
+
+    /* native methods */
+    private native long getCommittedVirtualMemorySize0();
+    private native long getFreePhysicalMemorySize0();
+    private native long getFreeSwapSpaceSize0();
+    private native double getProcessCpuLoad0();
+    private native long getProcessCpuTime0();
+    private native double getSystemCpuLoad0();
+    private native long getTotalPhysicalMemorySize0();
+    private native long getTotalSwapSpaceSize0();
+
+    static {
+        initialize0();
+    }
+
+    private static native void initialize0();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/jdk.management/windows/native/libmanagement_ext/OperatingSystemImpl.c	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,1363 @@
+/*
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include "jni.h"
+#include "jni_util.h"
+#include "jlong.h"
+#include "jvm.h"
+#include "management_ext.h"
+#include "com_sun_management_internal_OperatingSystemImpl.h"
+
+#include <psapi.h>
+#include <errno.h>
+#include <stdlib.h>
+
+#include <malloc.h>
+#pragma warning (push,0)
+#include <windows.h>
+#pragma warning (pop)
+#include <stdio.h>
+#include <time.h>
+#include <stdint.h>
+#include <assert.h>
+
+/* Disable warnings due to broken header files from Microsoft... */
+#pragma warning(push, 3)
+#include <pdh.h>
+#include <pdhmsg.h>
+#include <process.h>
+#pragma warning(pop)
+
+typedef unsigned __int32 juint;
+typedef unsigned __int64 julong;
+
+static void set_low(jlong* value, jint low) {
+    *value &= (jlong)0xffffffff << 32;
+    *value |= (jlong)(julong)(juint)low;
+}
+
+static void set_high(jlong* value, jint high) {
+    *value &= (jlong)(julong)(juint)0xffffffff;
+    *value |= (jlong)high       << 32;
+}
+
+static jlong jlong_from(jint h, jint l) {
+    jlong result = 0; // initialization to avoid warning
+    set_high(&result, h);
+    set_low(&result,  l);
+    return result;
+}
+
+static HANDLE main_process;
+
+static void perfInit(void);
+
+JNIEXPORT void JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_initialize0
+  (JNIEnv *env, jclass cls)
+{
+    main_process = GetCurrentProcess();
+    perfInit();
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getCommittedVirtualMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+    PROCESS_MEMORY_COUNTERS pmc;
+    if (GetProcessMemoryInfo(main_process, &pmc, sizeof(PROCESS_MEMORY_COUNTERS)) == 0) {
+        return (jlong)-1L;
+    } else {
+        return (jlong) pmc.PagefileUsage;
+    }
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getTotalSwapSpaceSize0
+  (JNIEnv *env, jobject mbean)
+{
+    MEMORYSTATUSEX ms;
+    ms.dwLength = sizeof(ms);
+    GlobalMemoryStatusEx(&ms);
+    return (jlong) ms.ullTotalPageFile;
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getFreeSwapSpaceSize0
+  (JNIEnv *env, jobject mbean)
+{
+    MEMORYSTATUSEX ms;
+    ms.dwLength = sizeof(ms);
+    GlobalMemoryStatusEx(&ms);
+    return (jlong) ms.ullAvailPageFile;
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuTime0
+  (JNIEnv *env, jobject mbean)
+{
+
+    FILETIME process_creation_time, process_exit_time,
+             process_user_time, process_kernel_time;
+
+    // Using static variables declared above
+    // Units are 100-ns intervals.  Convert to ns.
+    GetProcessTimes(main_process, &process_creation_time,
+                    &process_exit_time,
+                    &process_kernel_time, &process_user_time);
+    return (jlong_from(process_user_time.dwHighDateTime,
+                        process_user_time.dwLowDateTime) +
+            jlong_from(process_kernel_time.dwHighDateTime,
+                        process_kernel_time.dwLowDateTime)) * 100;
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getFreePhysicalMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+    MEMORYSTATUSEX ms;
+    ms.dwLength = sizeof(ms);
+    GlobalMemoryStatusEx(&ms);
+    return (jlong) ms.ullAvailPhys;
+}
+
+JNIEXPORT jlong JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getTotalPhysicalMemorySize0
+  (JNIEnv *env, jobject mbean)
+{
+    MEMORYSTATUSEX ms;
+    ms.dwLength = sizeof(ms);
+    GlobalMemoryStatusEx(&ms);
+    return (jlong) ms.ullTotalPhys;
+}
+
+/* Performance Data Helper API (PDH) support */
+
+typedef PDH_STATUS (WINAPI *PdhAddCounterFunc)(
+                           HQUERY      hQuery,
+                           LPCSTR      szFullCounterPath,
+                           DWORD       dwUserData,
+                           HCOUNTER    *phCounter
+                           );
+typedef PDH_STATUS (WINAPI *PdhOpenQueryFunc)(
+                           LPCWSTR     szDataSource,
+                           DWORD       dwUserData,
+                           HQUERY      *phQuery
+                           );
+typedef PDH_STATUS (WINAPI *PdhCollectQueryDataFunc)(
+                           HQUERY      hQuery
+                           );
+
+typedef PDH_STATUS (WINAPI *PdhEnumObjectItemsFunc)(
+                           LPCTSTR     szDataSource,
+                           LPCTSTR     szMachineName,
+                           LPCTSTR     szObjectName,
+                           LPTSTR      mszCounterList,
+                           LPDWORD     pcchCounterListLength,
+                           LPTSTR      mszInstanceList,
+                           LPDWORD     pcchInstanceListLength,
+                           DWORD       dwDetailLevel,
+                           DWORD       dwFlags
+                           );
+typedef PDH_STATUS (WINAPI *PdhRemoveCounterFunc)(
+                           HCOUNTER   hCounter
+                           );
+typedef PDH_STATUS (WINAPI *PdhLookupPerfNameByIndexFunc)(
+                           LPCSTR     szMachineName,
+                           DWORD      dwNameIndex,
+                           LPSTR      szNameBuffer,
+                           LPDWORD    pcchNameBufferSize
+                           );
+typedef DWORD (WINAPI *PdhCloseQueryFunc)(
+                      HQUERY      hQuery
+                      );
+
+typedef DWORD (WINAPI *PdhGetFormattedCounterValueFunc)(
+                      HCOUNTER                hCounter,
+                      DWORD                   dwFormat,
+                      LPDWORD                 lpdwType,
+                      PPDH_FMT_COUNTERVALUE   pValue
+                      );
+
+static PdhAddCounterFunc PdhAddCounter_i;
+static PdhOpenQueryFunc PdhOpenQuery_i;
+static PdhCloseQueryFunc PdhCloseQuery_i;
+static PdhCollectQueryDataFunc PdhCollectQueryData_i;
+static PdhGetFormattedCounterValueFunc PdhGetFormattedCounterValue_i;
+static PdhEnumObjectItemsFunc PdhEnumObjectItems_i;
+static PdhRemoveCounterFunc PdhRemoveCounter_i;
+static PdhLookupPerfNameByIndexFunc PdhLookupPerfNameByIndex_i;
+
+/*
+ * Struct for PDH queries.
+ */
+typedef struct {
+    HQUERY      query;
+    uint64_t    lastUpdate; // Last time query was updated (ticks)
+} UpdateQueryS, *UpdateQueryP;
+
+// Min time between query updates (ticks)
+static const int MIN_UPDATE_INTERVAL = 500;
+
+/*
+ * Struct for a PDH query with multiple counters.
+ */
+typedef struct {
+    UpdateQueryS  query;
+    HCOUNTER*     counters;
+    int           noOfCounters;
+} MultipleCounterQueryS, *MultipleCounterQueryP;
+
+/*
+ * Struct for a PDH query with a single counter.
+ */
+typedef struct {
+    UpdateQueryS  query;
+    HCOUNTER      counter;
+} SingleCounterQueryS, *SingleCounterQueryP;
+
+
+typedef struct {
+    CRITICAL_SECTION cs;
+    DWORD owningThread;
+    DWORD recursionCount;
+} PdhCriticalSectionS, *PdhCriticalSectionP;
+
+static PdhCriticalSectionS initializationLock;
+
+static void InitializePdhCriticalSection(PdhCriticalSectionP criticalSection) {
+    assert(criticalSection);
+
+    InitializeCriticalSection(&criticalSection->cs);
+    criticalSection->owningThread = 0;
+    criticalSection->recursionCount = 0;
+}
+
+static void EnterPdhCriticalSection(PdhCriticalSectionP criticalSection) {
+    assert(criticalSection);
+
+    EnterCriticalSection(&criticalSection->cs);
+    criticalSection->recursionCount++;
+    if (!criticalSection->owningThread) {
+        criticalSection->owningThread = GetCurrentThreadId();
+    }
+}
+
+static void LeavePdhCriticalSection(PdhCriticalSectionP criticalSection) {
+    assert(criticalSection);
+    assert(GetCurrentThreadId() == criticalSection->owningThread);
+    assert(criticalSection->recursionCount >= 1);
+
+    criticalSection->recursionCount--;
+    if (!criticalSection->recursionCount) {
+        criticalSection->owningThread = 0;
+    }
+    LeaveCriticalSection(&criticalSection->cs);
+}
+
+/*
+ * INFO: Using PDH APIs Correctly in a Localized Language (Q287159)
+ *   http://support.microsoft.com/default.aspx?scid=kb;EN-US;q287159
+ * The index value for the base system counters and objects like processor,
+ * process, thread, memory, and so forth are always the same irrespective
+ * of the localized version of the operating system or service pack installed.
+ * To find the correct index for an object or counter, inspect the registry key/value:
+ * [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009\Counter]
+ */
+static const DWORD PDH_PROCESSOR_IDX = 238;
+static const DWORD PDH_PROCESSOR_TIME_IDX = 6;
+static const DWORD PDH_PROCESS_IDX = 230;
+static const DWORD PDH_ID_PROCESS_IDX = 784;
+
+/* useful pdh fmt's */
+static const char* const OBJECT_COUNTER_FMT = "\\%s\\%s";
+static const size_t OBJECT_COUNTER_FMT_LEN = 2;
+static const char* const OBJECT_WITH_INSTANCES_COUNTER_FMT = "\\%s(%s)\\%s";
+static const size_t OBJECT_WITH_INSTANCES_COUNTER_FMT_LEN = 4;
+static const char* const PROCESS_OBJECT_INSTANCE_COUNTER_FMT = "\\%s(%s#%s)\\%s";
+static const size_t PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN = 5;
+
+static const char* pdhProcessImageName = NULL; /* "java" */
+static char* pdhIDProcessCounterFmt = NULL;    /* "\Process(java#%d)\ID Process" */
+
+static int numberOfJavaProcessesAtInitialization = 0;
+
+/*
+ * Currently used CPU queries/counters and variables
+ */
+static SingleCounterQueryP processTotalCPULoad = NULL;
+static MultipleCounterQueryP multiCounterCPULoad = NULL;
+static double cpuFactor = .0;
+static DWORD  numCpus = 0;
+
+/*
+ * Seems WinXP PDH returns PDH_MORE_DATA whenever we send in a NULL buffer.
+ * Let's just ignore it, since we make sure we have enough buffer anyway.
+ */
+static int
+pdhFail(PDH_STATUS pdhStat) {
+    return pdhStat != ERROR_SUCCESS && pdhStat != PDH_MORE_DATA;
+}
+
+static const char*
+allocateAndCopy(const char* const originalString) {
+    size_t len;
+    char* allocatedString;
+
+    assert(originalString);
+
+    len = strlen(originalString);
+
+    allocatedString = malloc(len + 1);
+
+    if (!allocatedString) {
+        return NULL;
+    }
+
+    strncpy(allocatedString, originalString, len);
+    allocatedString[len] = '\0';
+
+    return allocatedString;
+}
+
+/*
+ * Allocates memory into the supplied pointer and
+ * fills it with the localized PDH artifact description, if indexed correctly.
+ * Caller owns the memory from the point of returning from this function.
+ *
+ * @param index    the PDH counter index as specified in the registry
+ * @param ppBuffer pointer to a char*.
+ * @return         0 if successful, negative on failure.
+ */
+static int
+lookupNameByIndex(DWORD index, char** ppBuffer) {
+    DWORD size;
+
+    assert(ppBuffer);
+
+    /* determine size needed */
+    if (PdhLookupPerfNameByIndex_i(NULL, index, NULL, &size) != PDH_MORE_DATA) {
+      /* invalid index? */
+      return -1;
+    }
+
+    *ppBuffer = malloc((size_t)size);
+
+    if (!*ppBuffer) {
+        return -1;
+    }
+
+    if (PdhLookupPerfNameByIndex_i(NULL, index, *ppBuffer, &size) != ERROR_SUCCESS) {
+        free(*ppBuffer);
+        *ppBuffer = NULL;
+        return -1;
+    }
+
+    /* windows vista does not null-terminate the string
+     * (although the docs says it will) */
+    (*ppBuffer)[size - 1] = '\0';
+
+    return 0;
+}
+
+/*
+* Construct a fully qualified PDH path
+*
+* @param objectName   a PDH Object string representation (required)
+* @param counterName  a PDH Counter string representation (required)
+* @param imageName    a process image name string, ex. "java" (opt)
+* @param instance     an instance string, ex. "0", "1", ... (opt)
+* @return             the fully qualified PDH path.
+*
+* Caller will own the returned malloc:ed string
+*/
+static const char*
+makeFullCounterPath(const char* const objectName,
+                    const char* const counterName,
+                    const char* const imageName,
+                    const char* const instance) {
+
+    size_t fullCounterPathLen;
+    char* fullCounterPath;
+
+    assert(objectName);
+    assert(counterName);
+
+    fullCounterPathLen = strlen(objectName);
+    fullCounterPathLen += strlen(counterName);
+
+    if (imageName) {
+        /*
+         * For paths using the "Process" Object.
+         *
+         * Examples:
+         * abstract: "\Process(imageName#instance)\Counter"
+         * actual:   "\Process(java#2)\ID Process"
+         */
+        fullCounterPathLen += PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN;
+        fullCounterPathLen += strlen(imageName);
+
+        /*
+         * imageName must be passed together with an associated
+         * instance "number" ("0", "1", "2", ...).
+         * This is required in order to create valid "Process" Object paths.
+         *
+         * Examples: "\Process(java#0)", \Process(java#1"), ...
+         */
+        assert(instance);
+
+        fullCounterPathLen += strlen(instance);
+
+        fullCounterPath = malloc(fullCounterPathLen + 1);
+
+        if (!fullCounterPath) {
+            return NULL;
+        }
+
+        _snprintf(fullCounterPath,
+                  fullCounterPathLen,
+                  PROCESS_OBJECT_INSTANCE_COUNTER_FMT,
+                  objectName,
+                  imageName,
+                  instance,
+                  counterName);
+    } else {
+        if (instance) {
+            /*
+             * For paths where the Object has multiple instances.
+             *
+             * Examples:
+             * abstract: "\Object(instance)\Counter"
+             * actual:   "\Processor(0)\% Privileged Time"
+             */
+            fullCounterPathLen += strlen(instance);
+            fullCounterPathLen += OBJECT_WITH_INSTANCES_COUNTER_FMT_LEN;
+        } else {
+            /*
+             * For "normal" paths.
+             *
+             * Examples:
+             * abstract: "\Object\Counter"
+             * actual:   "\Memory\Available Mbytes"
+             */
+            fullCounterPathLen += OBJECT_COUNTER_FMT_LEN;
+        }
+
+        fullCounterPath = malloc(fullCounterPathLen + 1);
+
+        if (!fullCounterPath) {
+            return NULL;
+        }
+
+        if (instance) {
+            _snprintf(fullCounterPath,
+                      fullCounterPathLen,
+                      OBJECT_WITH_INSTANCES_COUNTER_FMT,
+                      objectName,
+                      instance,
+                      counterName);
+        } else {
+            _snprintf(fullCounterPath,
+                      fullCounterPathLen,
+                      OBJECT_COUNTER_FMT,
+                      objectName,
+                      counterName);
+        }
+    }
+
+    fullCounterPath[fullCounterPathLen] = '\0';
+
+    return fullCounterPath;
+}
+
+/*
+ * Resolves an index for a PDH artifact to
+ * a localized, malloc:ed string representation.
+ * Caller will own the returned malloc:ed string.
+ *
+ * @param pdhArtifactIndex  PDH index
+ * @return                  malloc:ed string representation
+ *                          of the requested pdh artifact (localized).
+ *                          NULL on failure.
+ */
+static const char*
+getPdhLocalizedArtifact(DWORD pdhArtifactIndex) {
+    char* pdhLocalizedArtifactString;
+
+    if (lookupNameByIndex(pdhArtifactIndex,
+                          &pdhLocalizedArtifactString) != 0) {
+        return NULL;
+    }
+
+    return pdhLocalizedArtifactString;
+}
+
+static void
+pdhCleanup(HQUERY* const query, HCOUNTER* const counter) {
+    if (counter && *counter) {
+        PdhRemoveCounter_i(*counter);
+        *counter = NULL;
+    }
+    if (query && *query) {
+        PdhCloseQuery_i(*query);
+        *query = NULL;
+    }
+}
+
+static void
+destroySingleCounter(SingleCounterQueryP counterQuery) {
+    if (counterQuery) {
+        pdhCleanup(&counterQuery->query.query, &counterQuery->counter);
+    }
+}
+
+static void
+destroyMultiCounter(MultipleCounterQueryP multiCounterQuery) {
+    int i;
+    if (multiCounterQuery) {
+        if (multiCounterQuery->counters) {
+            for (i = 0; i < multiCounterQuery->noOfCounters; i++) {
+                pdhCleanup(NULL, &multiCounterQuery->counters[i]);
+            }
+            free(multiCounterQuery->counters);
+            multiCounterQuery->counters = NULL;
+        }
+        pdhCleanup(&multiCounterQuery->query.query, NULL);
+    }
+}
+
+static int
+openQuery(HQUERY* const query) {
+    assert(query);
+
+    if (PdhOpenQuery_i(NULL, 0, query) != ERROR_SUCCESS) {
+        return -1;
+    }
+
+    return 0;
+}
+
+static int
+addCounter(HQUERY query,
+           const char* const fullCounterPath,
+           HCOUNTER* const counter) {
+
+    assert(fullCounterPath);
+    assert(counter);
+
+    if (PdhAddCounter_i(query,
+                        fullCounterPath,
+                        0,
+                        counter) != ERROR_SUCCESS) {
+        return -1;
+    }
+
+    return 0;
+}
+
+/*
+ * Sets up the supplied SingleCounterQuery to listen for the specified counter.
+ *
+ * @param counterQuery       the counter query to set up.
+ * @param fullCounterPath    the string specifying the full path to the counter.
+ * @returns                  0 if successful, negative on failure.
+ */
+static int
+initializeSingleCounterQuery(SingleCounterQueryP counterQuery,
+                             const char* const fullCounterPath) {
+    assert(counterQuery);
+    assert(fullCounterPath);
+
+    if (openQuery(&counterQuery->query.query) == 0) {
+        if (addCounter(counterQuery->query.query,
+                       fullCounterPath,
+                       &counterQuery->counter) == 0) {
+            return 0;
+        }
+    }
+
+    return -1;
+}
+
+/*
+ * Sets up a SingleCounterQuery
+ *
+ * param counter             the counter query to set up.
+ * param localizedObject     string representing the PDH object to query
+ * param localizedCounter    string representing the PDH counter to query
+ * param processImageName    if the counter query needs the process image name ("java")
+ * param instance            if the counter has instances, this is the instance ("\Processor(0)\")
+                                 where 0 is the instance
+ * param firstSampleOnInit   for counters that need two queries to yield their values,
+                                 the first query can be issued just after initialization
+ *
+ * @returns                   0 if successful, negative on failure.
+ */
+static int
+initializeSingleCounter(SingleCounterQueryP const counter,
+                        const char* const localizedObject,
+                        const char* const localizedCounter,
+                        const char* const processImageName,
+                        const char* const instance,
+                        BOOL firstSampleOnInit) {
+    int retValue = -1;
+
+    const char* fullCounterPath = makeFullCounterPath(localizedObject,
+                                                      localizedCounter,
+                                                      processImageName,
+                                                      instance);
+
+    if (fullCounterPath) {
+
+        assert(counter);
+
+        if (initializeSingleCounterQuery(counter, fullCounterPath) == 0) {
+            /*
+             * According to the MSDN documentation, rate counters must be read twice:
+             *
+             * "Obtaining the value of rate counters such as Page faults/sec requires that
+             *  PdhCollectQueryData be called twice, with a specific time interval between
+             *  the two calls, before calling PdhGetFormattedCounterValue. Call Sleep to
+             *  implement the waiting period between the two calls to PdhCollectQueryData."
+             *
+             *  Take the first sample here already to allow for the next (first) "real" sample
+             *  to succeed.
+             */
+            if (firstSampleOnInit) {
+                PdhCollectQueryData_i(counter->query.query);
+            }
+
+            retValue = 0;
+        }
+        free((char*)fullCounterPath);
+    }
+
+    return retValue;
+}
+
+static void
+perfInit(void) {
+    InitializePdhCriticalSection(&initializationLock);
+}
+
+static int
+getProcessID() {
+    static int myPid = 0;
+    if (0 == myPid) {
+        myPid = _getpid();
+    }
+    return myPid;
+}
+
+/*
+ * Working against the Process object and it's related counters is inherently problematic
+ * when using the PDH API:
+ *
+ * For PDH, a process is not primarily identified by it's process id,
+ * but with a sequential number, for example \Process(java#0), \Process(java#1), ....
+ * The really bad part is that this list is reset as soon as one process exits:
+ * If \Process(java#1) exits, \Process(java#3) now becomes \Process(java#2) etc.
+ *
+ * The PDH query api requires a process identifier to be submitted when registering
+ * a query, but as soon as the list resets, the query is invalidated (since the name
+ * changed).
+ *
+ * Solution:
+ * The #number identifier for a Process query can only decrease after process creation.
+ *
+ * Therefore we create an array of counter queries for all process object instances
+ * up to and including ourselves:
+ *
+ * Ex. we come in as third process instance (java#2), we then create and register
+ * queries for the following Process object instances:
+ * java#0, java#1, java#2
+ *
+ * currentQueryIndexForProcess() keeps track of the current "correct" query
+ * (in order to keep this index valid when the list resets from underneath,
+ * ensure to call getCurrentQueryIndexForProcess() before every query involving
+ * Process object instance data).
+ */
+static int
+currentQueryIndexForProcess(void) {
+    HQUERY tmpQuery = NULL;
+    HCOUNTER handleCounter = NULL;
+    int retValue = -1;
+
+    assert(pdhProcessImageName);
+    assert(pdhIDProcessCounterFmt);
+
+    if (openQuery(&tmpQuery) == 0) {
+        int index;
+
+        /* iterate over all instance indexes and try to find our own pid */
+        for (index = 0; index < INT_MAX; ++index) {
+            char fullIDProcessCounterPath[MAX_PATH];
+            PDH_FMT_COUNTERVALUE counterValue;
+            PDH_STATUS res;
+
+            _snprintf(fullIDProcessCounterPath,
+                      MAX_PATH,
+                      pdhIDProcessCounterFmt,
+                      index);
+
+            if (addCounter(tmpQuery, fullIDProcessCounterPath, &handleCounter) != 0) {
+                break;
+            }
+
+            res = PdhCollectQueryData_i(tmpQuery);
+
+            if (PDH_INVALID_HANDLE == res || PDH_NO_DATA == res) {
+                break;
+            }
+
+            PdhGetFormattedCounterValue_i(handleCounter,
+                                          PDH_FMT_LONG,
+                                          NULL,
+                                          &counterValue);
+            /*
+             * This check seems to be needed for Win2k SMP boxes, since
+             * they for some reason don't return PDH_NO_DATA for non existing
+             * counters.
+             */
+            if (counterValue.CStatus != PDH_CSTATUS_VALID_DATA) {
+                break;
+            }
+
+            if ((LONG)getProcessID() == counterValue.longValue) {
+                retValue = index;
+                break;
+            }
+        }
+    }
+
+    pdhCleanup(&tmpQuery, &handleCounter);
+
+    return retValue;
+}
+
+/*
+ * If successful, returns the #index corresponding to our PID
+ * as resolved by the pdh query:
+ * "\Process(java#index)\ID Process" (or localized equivalent)
+ *
+ * This function should be called before attempting to read
+ * from any Process related counter(s), and the return value
+ * is the index to be used for indexing an array of Process object query's:
+ *
+ * Example:
+ * processTotalCPULoad[currentQueryIndex].query
+ *
+ * Returns -1 on failure.
+ */
+static int
+getCurrentQueryIndexForProcess() {
+    int currentQueryIndex = currentQueryIndexForProcess();
+
+    assert(currentQueryIndex >= 0 &&
+           currentQueryIndex < numberOfJavaProcessesAtInitialization);
+
+    return currentQueryIndex;
+}
+
+/*
+ * Returns the PDH string identifying the current process image name.
+ * Use this name as a qualifier when getting counters from the PDH Process Object
+ * representing your process.
+
+ * Example:
+ * "\Process(java#0)\Virtual Bytes" - where "java" is the PDH process
+ * image name.
+ *
+ * Please note that the process image name is not necessarily "java",
+ * hence the use of GetModuleFileName() to detect the process image name.
+ *
+ * @return   the process image name to be used when retrieving
+ *           PDH counters from the current process. The caller will
+             own the returned malloc:ed string. NULL if failure.
+ */
+static const char*
+getPdhProcessImageName() {
+    char moduleName[MAX_PATH];
+    char* processImageName;
+    char* dotPos;
+
+    // Find our module name and use it to extract the image name used by PDH
+    DWORD getmfnReturn = GetModuleFileName(NULL, moduleName, sizeof(moduleName));
+
+    if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
+        return NULL;
+    }
+
+    if (getmfnReturn >= MAX_PATH || 0 == getmfnReturn) {
+        return NULL;
+    }
+
+    processImageName = strrchr(moduleName, '\\'); //drop path
+    processImageName++;                           //skip slash
+    dotPos = strrchr(processImageName, '.');      //drop .exe
+    dotPos[0] = '\0';
+
+    return allocateAndCopy(processImageName);
+}
+
+/*
+ * Sets up the supplied MultipleCounterQuery to check on the processors via PDH CPU counters.
+ * TODO: Refactor and prettify as with the the SingleCounter queries
+ * if more MultipleCounterQueries are discovered/needed.
+ *
+ * @param multiCounterCPULoad  a pointer to a MultipleCounterQueryS, will be filled in with
+ *                             the necessary info to check the PDH processor counters.
+ * @return                     0 if successful, negative on failure.
+ */
+static int
+initializeMultipleCounterForCPUs(MultipleCounterQueryP multiCounterCPULoad) {
+    DWORD cSize = 0;
+    DWORD iSize = 0;
+    DWORD pCount;
+    DWORD index;
+    char* processor = NULL; //'Processor' == PDH_PROCESSOR_IDX
+    char* time = NULL;      //'Time' == PDH_PROCESSOR_TIME_IDX
+    char* instances = NULL;
+    char* tmp;
+    int   retValue = -1;
+    PDH_STATUS pdhStat;
+
+    if (lookupNameByIndex(PDH_PROCESSOR_IDX, &processor) != 0) {
+        goto end;
+    }
+
+    if (lookupNameByIndex(PDH_PROCESSOR_TIME_IDX, &time) != 0) {
+        goto end;
+    }
+
+    //ok, now we have enough to enumerate all processors.
+    pdhStat = PdhEnumObjectItems_i(
+                                   NULL, // reserved
+                                   NULL, // local machine
+                                   processor, // object to enumerate
+                                   NULL, // pass in NULL buffers
+                                   &cSize, // and 0 length to get
+                                   NULL, // required size
+                                   &iSize, // of the buffers in chars
+                                   PERF_DETAIL_WIZARD, // counter detail level
+                                   0);
+
+    if (pdhFail(pdhStat)) {
+        goto end;
+    }
+
+    instances = calloc(iSize, 1);
+
+    if (!instances) {
+        goto end;
+    }
+
+    cSize = 0;
+
+    pdhStat = PdhEnumObjectItems_i(
+                                   NULL, // reserved
+                                   NULL, // local machine
+                                   processor, // object to enumerate
+                                   NULL, // pass in NULL buffers
+                                   &cSize,
+                                   instances, // now allocated to be filled in
+                                   &iSize, // and size is known
+                                   PERF_DETAIL_WIZARD, // counter detail level
+                                   0);
+
+    if (pdhFail(pdhStat)) {
+        goto end;
+    }
+
+    // enumerate the Processor instances ("\Processor(0)", "\Processor(1)", ..., "\Processor(_Total)")
+    for (pCount = 0, tmp = instances; *tmp != '\0'; tmp = &tmp[strlen(tmp)+1], pCount++);
+
+    assert(pCount == numCpus+1);
+
+    //ok, we now have the number of Processor instances - allocate an HCOUNTER for each
+    multiCounterCPULoad->counters = (HCOUNTER*)malloc(pCount * sizeof(HCOUNTER));
+
+    if (!multiCounterCPULoad->counters) {
+        goto end;
+    }
+
+    multiCounterCPULoad->noOfCounters = pCount;
+
+    if (openQuery(&multiCounterCPULoad->query.query) != 0) {
+        goto end;
+    }
+
+    // fetch instance and register its corresponding HCOUNTER with the query
+    for (index = 0, tmp = instances; *tmp != '\0'; tmp = &tmp[strlen(tmp)+1], ++index) {
+        const char* const fullCounterPath = makeFullCounterPath(processor, time, NULL, tmp);
+
+        if (!fullCounterPath) {
+            goto end;
+        }
+
+        retValue = addCounter(multiCounterCPULoad->query.query,
+                              fullCounterPath,
+                              &multiCounterCPULoad->counters[index]);
+
+        free((char*)fullCounterPath);
+
+        if (retValue != 0) {
+            goto end;
+        }
+    }
+
+    // Query once to initialize the counters which require at least two samples
+    // (like the % CPU usage) to calculate correctly.
+    PdhCollectQueryData_i(multiCounterCPULoad->query.query);
+
+  end:
+    if (processor) {
+        free(processor);
+    }
+
+    if (time) {
+        free(time);
+    }
+
+    if (instances) {
+        free(instances);
+    }
+
+    return retValue;
+}
+
+/*
+ * Dynamically sets up function pointers to the PDH library.
+ *
+ * @param h  HMODULE for the PDH library
+ * @return   0 on success, negative on failure.
+ */
+static int
+bindPdhFunctionPointers(HMODULE h) {
+    assert(h);
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    /* The 'A' at the end means the ANSI (not the UNICODE) vesions of the methods */
+    PdhAddCounter_i         = (PdhAddCounterFunc)GetProcAddress(h, "PdhAddCounterA");
+    PdhOpenQuery_i         = (PdhOpenQueryFunc)GetProcAddress(h, "PdhOpenQueryA");
+    PdhCloseQuery_i         = (PdhCloseQueryFunc)GetProcAddress(h, "PdhCloseQuery");
+    PdhCollectQueryData_i     = (PdhCollectQueryDataFunc)GetProcAddress(h, "PdhCollectQueryData");
+    PdhGetFormattedCounterValue_i = (PdhGetFormattedCounterValueFunc)GetProcAddress(h, "PdhGetFormattedCounterValue");
+    PdhEnumObjectItems_i         = (PdhEnumObjectItemsFunc)GetProcAddress(h, "PdhEnumObjectItemsA");
+    PdhRemoveCounter_i         = (PdhRemoveCounterFunc)GetProcAddress(h, "PdhRemoveCounter");
+    PdhLookupPerfNameByIndex_i     = (PdhLookupPerfNameByIndexFunc)GetProcAddress(h, "PdhLookupPerfNameByIndexA");
+
+    if (!PdhAddCounter_i || !PdhOpenQuery_i ||
+        !PdhCloseQuery_i || !PdhCollectQueryData_i ||
+        !PdhGetFormattedCounterValue_i || !PdhEnumObjectItems_i ||
+        !PdhRemoveCounter_i || !PdhLookupPerfNameByIndex_i)
+    {
+        return -1;
+    }
+    return 0;
+}
+
+/*
+ * Returns the counter value as a double for the specified query.
+ * Will collect the query data and update the counter values as necessary.
+ *
+ * @param query       the query to update (if needed).
+ * @param c           the counter to read.
+ * @param value       where to store the formatted value.
+ * @param format      the format to use (i.e. PDH_FMT_DOUBLE, PDH_FMT_LONG etc)
+ * @return            0 if no error
+ *                    -1 if PdhCollectQueryData fails
+ *                    -2 if PdhGetFormattedCounterValue fails
+ */
+static int
+getPerformanceData(UpdateQueryP query, HCOUNTER c, PDH_FMT_COUNTERVALUE* value, DWORD format) {
+    clock_t now = clock();
+
+    /*
+     * Need to limit how often we update the query
+     * to minimize the Heisenberg effect.
+     * (PDH behaves erratically if the counters are
+     * queried too often, especially counters that
+     * store and use values from two consecutive updates,
+     * like cpu load.)
+     */
+    if (now - query->lastUpdate > MIN_UPDATE_INTERVAL) {
+        if (PdhCollectQueryData_i(query->query) != ERROR_SUCCESS) {
+            return -1;
+        }
+        query->lastUpdate = now;
+    }
+
+    if (PdhGetFormattedCounterValue_i(c, format, NULL, value) != ERROR_SUCCESS) {
+        return -2;
+    }
+
+    return 0;
+}
+
+static int
+allocateAndInitializePdhConstants() {
+    const char* pdhLocalizedProcessObject = NULL;
+    const char* pdhLocalizedIDProcessCounter = NULL;
+    size_t pdhIDProcessCounterFmtLen;
+    int currentQueryIndex;
+    int retValue = -1;
+
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    assert(!pdhProcessImageName);
+    pdhProcessImageName = getPdhProcessImageName();
+    if (!pdhProcessImageName) {
+        goto end;
+    }
+
+    pdhLocalizedProcessObject = getPdhLocalizedArtifact(PDH_PROCESS_IDX);
+    if (!pdhLocalizedProcessObject) {
+        goto end;
+    }
+
+    pdhLocalizedIDProcessCounter = getPdhLocalizedArtifact(PDH_ID_PROCESS_IDX);
+    if (!pdhLocalizedIDProcessCounter) {
+        goto end;
+    }
+
+    assert(!pdhIDProcessCounterFmt);
+
+    pdhIDProcessCounterFmtLen = strlen(pdhProcessImageName);
+    pdhIDProcessCounterFmtLen += strlen(pdhLocalizedProcessObject);
+    pdhIDProcessCounterFmtLen += strlen(pdhLocalizedIDProcessCounter);
+    pdhIDProcessCounterFmtLen += PROCESS_OBJECT_INSTANCE_COUNTER_FMT_LEN;
+    pdhIDProcessCounterFmtLen += 2; // "%d"
+
+    assert(pdhIDProcessCounterFmtLen < MAX_PATH);
+    pdhIDProcessCounterFmt = malloc(pdhIDProcessCounterFmtLen + 1);
+    if (!pdhIDProcessCounterFmt) {
+        goto end;
+    }
+
+    /* "\Process(java#%d)\ID Process" */
+    _snprintf(pdhIDProcessCounterFmt,
+              pdhIDProcessCounterFmtLen,
+              PROCESS_OBJECT_INSTANCE_COUNTER_FMT,
+              pdhLocalizedProcessObject,
+              pdhProcessImageName,
+              "%d",
+              pdhLocalizedIDProcessCounter);
+
+    pdhIDProcessCounterFmt[pdhIDProcessCounterFmtLen] = '\0';
+
+    assert(0 == numberOfJavaProcessesAtInitialization);
+    currentQueryIndex = currentQueryIndexForProcess();
+    if (-1 == currentQueryIndex) {
+        goto end;
+    }
+
+    numberOfJavaProcessesAtInitialization = currentQueryIndex + 1;
+    assert(numberOfJavaProcessesAtInitialization >= 1);
+
+    retValue = 0;
+
+  end:
+
+    if (pdhLocalizedProcessObject) {
+        free((char*)pdhLocalizedProcessObject);
+    }
+
+    if (pdhLocalizedIDProcessCounter) {
+        free((char*)pdhLocalizedIDProcessCounter);
+    }
+
+    return retValue;
+}
+
+static void
+deallocatePdhConstants() {
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    if (pdhProcessImageName) {
+        free((char*)pdhProcessImageName);
+        pdhProcessImageName = NULL;
+    }
+
+    if (pdhIDProcessCounterFmt) {
+      free(pdhIDProcessCounterFmt);
+      pdhIDProcessCounterFmt = NULL;
+    }
+
+    numberOfJavaProcessesAtInitialization = 0;
+}
+
+static int
+initializeCPUCounters() {
+    SYSTEM_INFO si;
+    char* localizedProcessObject;
+    char* localizedProcessorTimeCounter;
+    int i;
+    int retValue = -1;
+
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    assert(0 == numCpus);
+    GetSystemInfo(&si);
+    numCpus = si.dwNumberOfProcessors;
+    assert(numCpus >= 1);
+
+    /* Initialize the denominator for the jvm load calculations */
+    assert(.0 == cpuFactor);
+    cpuFactor = numCpus * 100;
+
+    if (lookupNameByIndex(PDH_PROCESS_IDX,
+                          &localizedProcessObject) == 0) {
+
+        if (lookupNameByIndex(PDH_PROCESSOR_TIME_IDX,
+                              &localizedProcessorTimeCounter) == 0) {
+
+            assert(processTotalCPULoad);
+            assert(pdhProcessImageName);
+
+            for (i = 0; i < numberOfJavaProcessesAtInitialization; ++i) {
+                char instanceIndexBuffer[32];
+                retValue = initializeSingleCounter(&processTotalCPULoad[i],
+                                                   localizedProcessObject,
+                                                   localizedProcessorTimeCounter,
+                                                   pdhProcessImageName,
+                                                   itoa(i, instanceIndexBuffer, 10),
+                                                   TRUE);
+                if (retValue != 0) {
+                    break;
+                }
+            }
+            free(localizedProcessorTimeCounter);
+        }
+        free(localizedProcessObject);
+    }
+
+    if (retValue != 0) {
+        return -1;
+    }
+
+    assert(multiCounterCPULoad);
+    return initializeMultipleCounterForCPUs(multiCounterCPULoad);
+}
+
+static void
+deallocateCPUCounters() {
+    int i;
+
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    if (processTotalCPULoad) {
+        for (i = 0; i < numberOfJavaProcessesAtInitialization; ++i) {
+            destroySingleCounter(&processTotalCPULoad[i]);
+        }
+        free(processTotalCPULoad);
+        processTotalCPULoad = NULL;
+    }
+
+    if (multiCounterCPULoad) {
+        destroyMultiCounter(multiCounterCPULoad);
+        free(multiCounterCPULoad);
+        multiCounterCPULoad = NULL;
+    }
+
+    cpuFactor = .0;
+    numCpus = 0;
+}
+
+static void
+pdhInitErrorHandler(HMODULE h) {
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+
+    deallocatePdhConstants();
+
+    if (h) {
+        FreeLibrary(h);
+    }
+}
+
+/*
+ * Helper to initialize the PDH library, function pointers and constants.
+ *
+ * @return  0 if successful, negative on failure.
+ */
+static int
+pdhInit() {
+    static BOOL initialized = FALSE;
+    int retValue;
+
+    if (initialized) {
+        return 0;
+    }
+
+    retValue = 0;
+
+    EnterPdhCriticalSection(&initializationLock); {
+        if (!initialized) {
+            HMODULE h = NULL;
+            if ((h = LoadLibrary("pdh.dll")) == NULL) {
+                retValue = -1;
+            } else if (bindPdhFunctionPointers(h) < 0) {
+                retValue = -1;
+            } else if (allocateAndInitializePdhConstants() < 0) {
+                retValue = -1;
+            }
+
+            if (0 == retValue) {
+                initialized = TRUE;
+            } else {
+                pdhInitErrorHandler(h);
+            }
+        }
+    } LeavePdhCriticalSection(&initializationLock);
+
+    return retValue;
+}
+
+static int
+allocateCPUCounters() {
+    assert(GetCurrentThreadId() == initializationLock.owningThread);
+    assert(numberOfJavaProcessesAtInitialization >= 1);
+    assert(!processTotalCPULoad);
+    assert(!multiCounterCPULoad);
+
+    /*
+     * Create an array of Process object queries, for each instance
+     * up to and including our own (java#0, java#1, java#2, ...).
+     */
+    processTotalCPULoad = calloc(numberOfJavaProcessesAtInitialization,
+                                 sizeof(SingleCounterQueryS));
+
+    if (!processTotalCPULoad) {
+        return -1;
+    }
+
+    multiCounterCPULoad = calloc(1, sizeof(MultipleCounterQueryS));
+
+    if (!multiCounterCPULoad) {
+        return -1;
+    }
+
+    return 0;
+}
+
+static int
+initializePdhCPUCounters() {
+    static BOOL initialized = FALSE;
+    int retValue;
+
+    if (initialized) {
+        return 0;
+    }
+
+    retValue = 0;
+
+    EnterPdhCriticalSection(&initializationLock); {
+        if (!initialized) {
+            if (pdhInit() < 0) {
+                retValue = -1;
+            }  else if (allocateCPUCounters() < 0) {
+                retValue = -1;
+            } else if (initializeCPUCounters() < 0) {
+                retValue = -1;
+            }
+
+            if (0 == retValue) {
+                initialized = TRUE;
+            } else {
+              deallocateCPUCounters();
+            }
+        }
+    } LeavePdhCriticalSection(&initializationLock);
+
+    return retValue;
+}
+
+static int
+perfCPUInit() {
+    return initializePdhCPUCounters();
+}
+
+static double
+perfGetProcessCPULoad() {
+    PDH_FMT_COUNTERVALUE cv;
+    int currentQueryIndex;
+
+    if (perfCPUInit() < 0) {
+        // warn?
+        return -1.0;
+    }
+
+    currentQueryIndex = getCurrentQueryIndexForProcess();
+
+    if (getPerformanceData(&processTotalCPULoad[currentQueryIndex].query,
+                           processTotalCPULoad[currentQueryIndex].counter,
+                           &cv,
+                           PDH_FMT_DOUBLE | PDH_FMT_NOCAP100) == 0) {
+        double d = cv.doubleValue / cpuFactor;
+        d = min(1, d);
+        d = max(0, d);
+        return d;
+    }
+    return -1.0;
+}
+
+static double
+perfGetCPULoad(int which) {
+    PDH_FMT_COUNTERVALUE cv;
+    HCOUNTER c;
+
+    if (perfCPUInit() < 0) {
+        // warn?
+        return -1.0;
+    }
+
+    if (-1 == which) {
+        c = multiCounterCPULoad->counters[multiCounterCPULoad->noOfCounters - 1];
+    } else {
+        if (which < multiCounterCPULoad->noOfCounters) {
+            c = multiCounterCPULoad->counters[which];
+        } else {
+            return -1.0;
+        }
+    }
+    if (getPerformanceData(&multiCounterCPULoad->query, c, &cv, PDH_FMT_DOUBLE ) == 0) {
+        return cv.doubleValue / 100;
+    }
+    return -1.0;
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getSystemCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return perfGetCPULoad(-1);
+}
+
+JNIEXPORT jdouble JNICALL
+Java_com_sun_management_internal_OperatingSystemImpl_getProcessCpuLoad0
+(JNIEnv *env, jobject dummy)
+{
+    return perfGetProcessCPULoad();
+}
--- a/jdk/src/linux/doc/man/ja/appletviewer.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/appletviewer.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: appletviewer
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "appletviewer" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "appletviewer" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-appletviewer \- Web¥Ö¥é¥¦¥¶¤Î³°Â¦¤Ç¥¢¥×¥ì¥Ã¥È¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+appletviewer \- Webブラウザã®å¤–å´ã§ã‚¢ãƒ—レットを実行ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,39 +64,39 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIurl\fR
 .RS 4
-ɽ¼¨¤¹¤ë¥É¥­¥å¥á¥ó¥È¤Þ¤¿¤Ï¥ê¥½¡¼¥¹¤Î¾ì½ê¡£¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿Ê£¿ô¤ÎURL¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+表示ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¾ãŸã¯ãƒªã‚½ãƒ¼ã‚¹ã®å ´æ‰€ã€‚空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸè¤‡æ•°ã®URLを指定ã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï\fIurls\fR¤Ë»ØÄꤵ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¢¤ë¤¤¤Ï¥ê¥½¡¼¥¹¤ÈÀܳ¤·¤Æ¡¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤¬»²¾È¤¹¤ë¤½¤ì¤¾¤ì¤Î¥¢¥×¥ì¥Ã¥È¤òÆȼ«¤Î¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤·¤Þ¤¹¡£urls¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¬¡¢\fIOBJECT\fR¡¢\fIEMBED\fR¤Þ¤¿¤Ï\fIAPPLET\fR¥¿¥°¤Ç¤É¤Î¥¢¥×¥ì¥Ã¥È¤â»²¾È¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï²¿¤â¹Ô¤¤¤Þ¤»¤ó¡£\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëHTML¥¿¥°¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/appletviewertags\&.html¤Ë¤¢¤ë
-¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¡¦¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIappletviewer\fRコマンドã¯\fIurls\fRã«æŒ‡å®šã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚ã‚‹ã„ã¯ãƒªã‚½ãƒ¼ã‚¹ã¨æŽ¥ç¶šã—ã¦ã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒå‚ç…§ã™ã‚‹ãã‚Œãžã‚Œã®ã‚¢ãƒ—レットを独自ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§è¡¨ç¤ºã—ã¾ã™ã€‚urlsã«ã‚ˆã£ã¦å‚ç…§ã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€\fIOBJECT\fRã€\fIEMBED\fRã¾ãŸã¯\fIAPPLET\fRã‚¿ã‚°ã§ã©ã®ã‚¢ãƒ—レットもå‚ç…§ã—ã¦ã„ãªã„å ´åˆã€\fIappletviewer\fRコマンドã¯ä½•ã‚‚è¡Œã„ã¾ã›ã‚“。\fIappletviewer\fRコマンドã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹HTMLã‚¿ã‚°ã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/appletviewertags\&.htmlã«ã‚ã‚‹
+アプレット・ビューア・タグをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï¡¢RFC2396¤ÇÄêµÁ¤µ¤ì¤¿¥¨¥¹¥±¡¼¥×¡¦¥á¥«¥Ë¥º¥à¤Ë½¾¤Ã¤Æ¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿URL¤òɬÍפȤ·¤Þ¤¹¡£¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤Î¤Ï¡¢¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿URL¤Î¤ß¤Ç¤¹¡£¤¿¤À¤·¡¢¥Õ¥¡¥¤¥ë̾¤Ë¤Ä¤¤¤Æ¤Ï¡¢RFC2396¤Î»ÅÍͤ˽¾¤Ã¤Æ¥¨¥ó¥³¡¼¥É¤ò²ò½ü¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+\fIappletviewer\fRコマンドã¯ã€RFC2396ã§å®šç¾©ã•ã‚ŒãŸã‚¨ã‚¹ã‚±ãƒ¼ãƒ—・メカニズムã«å¾“ã£ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸURLã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚サãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã®ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸURLã®ã¿ã§ã™ã€‚ãŸã ã—ã€ãƒ•ã‚¡ã‚¤ãƒ«åã«ã¤ã„ã¦ã¯ã€RFC2396ã®ä»•æ§˜ã«å¾“ã£ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’解除ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
+\fB注æ„:\fR
 The
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï³«È¯ÀìÍѤǤ¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/aboutCodeSamples\&.html¤Ë¤¢¤ë
-¥µ¥ó¥×¥ë/¥Æ¥¹¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ª¤è¤Ó¥³¡¼¥É¤Ë¤Ä¤¤¤Æ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIappletviewer\fRコマンドã¯é–‹ç™ºå°‚用ã§ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/aboutCodeSamples\&.htmlã«ã‚ã‚‹
+サンプル/テスト・アプリケーションãŠã‚ˆã³ã‚³ãƒ¼ãƒ‰ã«ã¤ã„ã¦ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-debug
 .RS 4
-\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJava¥Ç¥Ð¥Ã¥¬¤Ç¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¤ò³«»Ï¤·¤Æ¡¢¥É¥­¥å¥á¥ó¥ÈÃæ¤Î¥¢¥×¥ì¥Ã¥È¤ò¥Ç¥Ð¥Ã¥°¤·¤Þ¤¹¡£
+\fIjdb\fRコマンドを使用ã—ã¦Javaデãƒãƒƒã‚¬ã§ã‚¢ãƒ—レット・ビューアを開始ã—ã¦ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆä¸­ã®ã‚¢ãƒ—レットをデãƒãƒƒã‚°ã—ã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\-name\fR
 .RS 4
-ÆþÎÏHTML¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+入力HTMLファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°åを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIjavaoption\fR
 .RS 4
-ʸ»úÎó\fIjavaoption\fR¤Ï¡¢¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¤ò¼Â¹Ô¤¹¤ëJava¥¤¥ó¥¿¥×¥ê¥¿¤Ë1¤Ä¤Î°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤Þ¤¹¡£°ú¿ô¤Ë¥¹¥Ú¡¼¥¹¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£Ê£¿ô¤Î°ú¿ô¤Ï¡¢¤¹¤Ù¤Æ¤¬ÀÜƬ¼­\fI\-J\fR¤Ç»Ï¤Þ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤÎÄ´À°¤ËÍ­¸ú¤Ç¤¹¡£
+文字列\fIjavaoption\fRã¯ã€ã‚¢ãƒ—レット・ビューアを実行ã™ã‚‹Javaインタプリタã«1ã¤ã®å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã¾ã™ã€‚引数ã«ã‚¹ãƒšãƒ¼ã‚¹ã‚’å«ã‚ãªã„ã§ãã ã•ã„。複数ã®å¼•æ•°ã¯ã€ã™ã¹ã¦ãŒæŽ¥é ­è¾ž\fI\-J\fRã§å§‹ã¾ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚³ãƒ³ãƒ‘イラã®å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã®èª¿æ•´ã«æœ‰åŠ¹ã§ã™ã€‚
 .RE
 .PP
 
--- a/jdk/src/linux/doc/man/ja/idlj.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/idlj.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: idlj
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "idlj" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "idlj" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-idlj \- »ØÄꤵ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+idlj \- 指定ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹å®šç¾©è¨€èªž(IDL)ファイルã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,22 +64,22 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£options¤Î½çÈÖ¤ÏǤ°Õ¤Ç¤¹¤¬¡¢\fIidlfile\fR¤è¤ê¤âÁ°¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。optionsã®é †ç•ªã¯ä»»æ„ã§ã™ãŒã€\fIidlfile\fRよりもå‰ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIidlfile\fR
 .RS 4
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¤Ë¤è¤ëÄêµÁ¤¬´Þ¤Þ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+インタフェース定義言語(IDL)ã«ã‚ˆã‚‹å®šç¾©ãŒå«ã¾ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Ï¡¢»ØÄꤵ¤ì¤¿IDL¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.html¤Ë¤¢¤ë
-Java IDL: Java¸À¸ì¥Þ¥Ã¥Ô¥ó¥°¤Ø¤ÎIDL¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+IDL\-to\-Javaコンパイラã¯ã€æŒ‡å®šã•ã‚ŒãŸIDLファイルã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.htmlã«ã‚ã‚‹
+Java IDL: Java言語マッピングã¸ã®IDLã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Î°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤ÎÃæ¤Ë¤Ï¡¢\fIidltojava\fR¤È¤¤¤¦Ì¾Á°¤À¤Ã¤¿¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£
-.SS "¥¯¥é¥¤¥¢¥ó¥È¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ª¤è¤Ó¥µ¡¼¥Ð¡¼¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Îȯ¹Ô"
+IDL\-to\-Javaコンパイラã®ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®ä¸­ã«ã¯ã€\fIidltojava\fRã¨ã„ã†åå‰ã ã£ãŸã‚‚ã®ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "クライアント・ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŠã‚ˆã³ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ç™ºè¡Œ"
 .PP
-¼¡¤Î\fIidlj\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò´Þ¤à\fIMy\&.idl\fR¤È¤¤¤¦Ì¾Á°¤ÎIDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®\fIidlj\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’å«ã‚€\fIMy\&.idl\fRã¨ã„ã†åå‰ã®IDLファイルを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -91,7 +91,7 @@
 .RE
 .\}
 .PP
-Á°¤Î¹½Ê¸¤Ï¼¡¤ÈƱÅù¤Ç¤¹¡£
+å‰ã®æ§‹æ–‡ã¯æ¬¡ã¨åŒç­‰ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -103,7 +103,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¡¢¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¤ò´Þ¤á¤Æ¤ª¤ê¡¢¤³¤ì¤é¤Ï¤¹¤Ù¤Æ¡¢POA (·Ñ¾µ¥â¥Ç¥ë)¤Ç¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚µãƒ¼ãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã‚’å«ã‚ã¦ãŠã‚Šã€ã“れらã¯ã™ã¹ã¦ã€POA (継承モデル)ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -115,7 +115,7 @@
 .RE
 .\}
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¦¤È¥µ¡¼¥Ð¡¼Â¦¤ÎξÊý¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É(¤É¤ì¤âÅù²Á)¤Î¤¦¤Á¤Î1¤Ä¤ò»ÈÍѤ·¤Þ¤¹¡£
+クライアントå´ã¨ã‚µãƒ¼ãƒãƒ¼å´ã®ä¸¡æ–¹ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰(ã©ã‚Œã‚‚等価)ã®ã†ã¡ã®1ã¤ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -128,7 +128,7 @@
 .RE
 .\}
 .PP
-¥µ¡¼¥Ð¡¼Â¦¤Ç²Äǽ¤Ê¥â¥Ç¥ë¤Ï2¤Ä¤¢¤ê¤Þ¤¹¡£°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë¤ÈTie¥â¥Ç¥ë¤Ç¤¹¡£Tie°Ñ¾ù¥â¥Ç¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+サーãƒãƒ¼å´ã§å¯èƒ½ãªãƒ¢ãƒ‡ãƒ«ã¯2ã¤ã‚ã‚Šã¾ã™ã€‚移殖å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã¨Tieモデルã§ã™ã€‚Tie委譲モデルをå‚ç…§ã—ã¦ãã ã•ã„。
 .if n \{\
 .sp
 .\}
@@ -138,21 +138,21 @@
 .nr an-break-flag 1
 .br
 .ps +1
-\fB°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë\fR
+\fB移殖å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«\fR
 .ps -1
 .br
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥µ¡¼¥Ð¡¼Â¦¤Î¥â¥Ç¥ë¤Ï¡¢°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë¤Ç¤¹¡£\fIMy\&.idl\fRÆâ¤Ç\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIMyPOA\&.java\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¡¢\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fIMyPOA\fR¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIMyPOA\&.java\fR¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/api/org/omg/PortableServer/Servant\&.html¤Ë¤¢¤ë
-\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤ò³ÈÄ¥¤¹¤ë¥¹¥È¥ê¡¼¥à¥Ù¡¼¥¹¤Î¥¹¥±¥ë¥È¥ó¤Ç¤¹¡£
+デフォルトã®ã‚µãƒ¼ãƒãƒ¼å´ã®ãƒ¢ãƒ‡ãƒ«ã¯ã€ç§»æ®–å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã§ã™ã€‚\fIMy\&.idl\fR内ã§\fIMy\fRインタフェースãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIMyPOA\&.java\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy\fRインタフェースã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€\fIMy\fRインタフェースã¯\fIMyPOA\fRクラスã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIMyPOA\&.java\fRã¯ã€http://docs\&.oracle\&.com/javase/8/docs/api/org/omg/PortableServer/Servant\&.htmlã«ã‚ã‚‹
+\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスを拡張ã™ã‚‹ã‚¹ãƒˆãƒªãƒ¼ãƒ ãƒ™ãƒ¼ã‚¹ã®ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã§ã™ã€‚
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¥¹¥±¥ë¥È¥ó¤¬¼ÂÁõ¤¹¤ëIDL¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤ë\fIcallHandler\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÈÁàºî¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤·¤Þ¤¹¡£
+\fIMy\fRインタフェースã¯ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãŒå®Ÿè£…ã™ã‚‹IDLインタフェースã«é–¢é€£ä»˜ã‘られã¦ã„ã‚‹\fIcallHandler\fRインタフェースã¨æ“作インタフェースを実装ã—ã¾ã™ã€‚
 .PP
-¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤Î\fIPortableServer\fR¥â¥¸¥å¡¼¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¤Î\fIServant\fR·¿¤òÄêµÁ¤·¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/POA\&.html¤Ë¤¢¤ë
-¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã®\fIPortableServer\fRモジュールã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–ã®\fIServant\fR型を定義ã—ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/POA\&.htmlã«ã‚ã‚‹
+ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢\fIServant\fR·¿¤ÏJava¤Î\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¹¤Ù¤Æ¤ÎPOA¥µ¡¼¥Ð¥ó¥È¼ÂÁõ¤Î¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤È¤·¤Æµ¡Ç½¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¸Æ¤Ó½Ð¤¹¤³¤È¤Î¤Ç¤­¤ë¤¤¤¯¤Ä¤«¤Î¥á¥½¥Ã¥É¡¢¤ª¤è¤ÓPOA¤Ë¤è¤Ã¤Æ¸Æ¤Ó½Ð¤µ¤ì¡¢¥µ¡¼¥Ð¥ó¥È¤ÎÆ°ºî¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë¥æ¡¼¥¶¡¼¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤ë¥á¥½¥Ã¥É¤òÄ󶡤·¤Þ¤¹¡£
+Javaプログラミング言語ã§ã¯ã€\fIServant\fRåž‹ã¯Javaã®\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスã«ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã™ã¹ã¦ã®POAサーãƒãƒ³ãƒˆå®Ÿè£…ã®ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¯ãƒ©ã‚¹ã¨ã—ã¦æ©Ÿèƒ½ã—ã€ã‚¢ãƒ—リケーション・プログラマãŒå‘¼ã³å‡ºã™ã“ã¨ã®ã§ãã‚‹ã„ãã¤ã‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³POAã«ã‚ˆã£ã¦å‘¼ã³å‡ºã•ã‚Œã€ã‚µãƒ¼ãƒãƒ³ãƒˆã®å‹•ä½œã‚’制御ã™ã‚‹ãŸã‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãるメソッドをæä¾›ã—ã¾ã™ã€‚
 .PP
-·Ñ¾µ¥â¥Ç¥ë¤Î¤â¤¦1¤Ä¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-oldImplBase\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤Æ¡¢Java SE 1\&.4¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤È¸ß´¹À­¤Î¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¤³¤È¤Ç¤¹¡£\-\fIoldImplBase\fR¥Õ¥é¥°¤ÏÈóɸ½à¤Ç¡¢¤³¤ì¤é¤ÎAPI¤ÏÈó¿ä¾©¤Ç¤¹¡£¤³¤Î¥Õ¥é¥°¤ò»ÈÍѤ¹¤ë¤Î¤Ï¡¢Java SE 1\&.3¤Çµ­½Ò¤µ¤ì¤¿´û¸¤Î¥µ¡¼¥Ð¡¼¤È¤Î¸ß´¹À­¤¬É¬Íפʾì¹ç¤Î¤ß¤Ç¤¹¡£¤½¤Î¾ì¹ç¡¢´û¸¤Îmake¥Õ¥¡¥¤¥ë¤òÊѹ¹¤·¤Æ¡¢\fI\-oldImplBase\fR¥Õ¥é¥°¤ò\fIidlj\fR¥³¥ó¥Ñ¥¤¥é¤ËÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢POA¥Ù¡¼¥¹¤Î¥µ¡¼¥Ð¡¼Â¦¥Þ¥Ã¥Ô¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£²¼°Ì¸ß´¹À­¤Î¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+継承モデルã®ã‚‚ã†1ã¤ã®ã‚ªãƒ—ションã¯ã€\fI\-oldImplBase\fRフラグを使用ã—ã¦ã€Java SE 1\&.4よりå‰ã®ãƒªãƒªãƒ¼ã‚¹ã®Javaプログラミング言語ã¨äº’æ›æ€§ã®ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹ã“ã¨ã§ã™ã€‚\-\fIoldImplBase\fRフラグã¯éžæ¨™æº–ã§ã€ã“れらã®APIã¯éžæŽ¨å¥¨ã§ã™ã€‚ã“ã®ãƒ•ãƒ©ã‚°ã‚’使用ã™ã‚‹ã®ã¯ã€Java SE 1\&.3ã§è¨˜è¿°ã•ã‚ŒãŸæ—¢å­˜ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã®äº’æ›æ€§ãŒå¿…è¦ãªå ´åˆã®ã¿ã§ã™ã€‚ãã®å ´åˆã€æ—¢å­˜ã®makeファイルを変更ã—ã¦ã€\fI\-oldImplBase\fRフラグを\fIidlj\fRコンパイラã«è¿½åŠ ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€POAベースã®ã‚µãƒ¼ãƒãƒ¼å´ãƒžãƒƒãƒ”ングãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚下ä½äº’æ›æ€§ã®ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹ã«ã¯ã€æ¬¡ã‚’実行ã—ã¾ã™ã€‚
 .sp .5v
 .RE
 .sp
@@ -167,7 +167,7 @@
 .RE
 .\}
 .PP
-\fIMy\&.idl\fRÆâ¤Ç\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI_MyImplBase\&.java\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¡¢\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fI_MyImplBase\fR¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\&.idl\fR内ã§\fIMy\fRインタフェースãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI_MyImplBase\&.java\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy\fRインタフェースã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€\fIMy\fRインタフェースã¯\fI_MyImplBase\fRクラスã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .if n \{\
 .sp
 .\}
@@ -177,11 +177,11 @@
 .nr an-break-flag 1
 .br
 .ps +1
-\fBTie°Ñ¾ù¥â¥Ç¥ë\fR
+\fBTie委譲モデル\fR
 .ps -1
 .br
 .PP
-¤â¤¦1¤Ä¤Î¥µ¡¼¥Ð¡¼Â¦¥â¥Ç¥ë¤Ï¡¢Tie¥â¥Ç¥ë¤È¸Æ¤Ð¤ì¤ë¤â¤Î¤Ç¤¹¡£¤³¤Î¥µ¡¼¥Ð¡¼Â¦¥â¥Ç¥ë¤Ï¡¢°Ñ¾ù¥â¥Ç¥ë¤Ç¤¹¡£Tie¤È¥¹¥±¥ë¥È¥ó¤òƱ»þ¤ËÀ¸À®¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤¿¤á¡¢¤½¤ì¤é¤ÏÊÌ¡¹¤ËÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢Tie¥â¥Ç¥ëÍѤΥХ¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+ã‚‚ã†1ã¤ã®ã‚µãƒ¼ãƒãƒ¼å´ãƒ¢ãƒ‡ãƒ«ã¯ã€Tieモデルã¨å‘¼ã°ã‚Œã‚‹ã‚‚ã®ã§ã™ã€‚ã“ã®ã‚µãƒ¼ãƒãƒ¼å´ãƒ¢ãƒ‡ãƒ«ã¯ã€å§”譲モデルã§ã™ã€‚Tieã¨ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã‚’åŒæ™‚ã«ç”Ÿæˆã™ã‚‹ã“ã¨ã¯ã§ããªã„ãŸã‚ã€ãれらã¯åˆ¥ã€…ã«ç”Ÿæˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€Tieモデル用ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp .5v
 .RE
 .sp
@@ -196,7 +196,7 @@
 .RE
 .\}
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢2ÈÖÌܤΥ³¥Þ¥ó¥É¤Ë¤è¤ê¡¢\fIMyPOATie\&.java\fR¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMyPOATie\fR¥¯¥é¥¹¤Ø¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢delegate¤ò¼è¤ê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎPOA¥â¥Ç¥ë¤ò»ÈÍѤ·¤Æ¤¤¤ë¤¿¤á¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Ë¤âPOA¤¬É¬ÍפǤ¹¡£delegate¤ËÂФ·¤Æ¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤³¤Î¼ÂÁõ¤Ï\fIMyOperations\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤ß¤Ç¡¢¤½¤Î¾¤Î¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤òORB¤È°ì½ï¤Ë»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¼¡¤Î¤è¤¦¤Ë\fIMyPOATie\fR¥¯¥é¥¹Æâ¤Ç¼ÂÁõ¤ò¥é¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\fRインタフェースã®å ´åˆã€2番目ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šã€\fIMyPOATie\&.java\fRãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMyPOATie\fRクラスã¸ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¯ã€delegateã‚’å–ã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®POAモデルを使用ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã«ã‚‚POAãŒå¿…è¦ã§ã™ã€‚delegateã«å¯¾ã—ã¦å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ã“ã®å®Ÿè£…ã¯\fIMyOperations\fRインタフェースã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã¿ã§ã€ãã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã“れをORBã¨ä¸€ç·’ã«ä½¿ç”¨ã™ã‚‹ã«ã¯ã€ãŸã¨ãˆã°æ¬¡ã®ã‚ˆã†ã«\fIMyPOATie\fRクラス内ã§å®Ÿè£…をラップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -222,9 +222,9 @@
 .RE
 .\}
 .PP
-¾¤Î¼ÂÁõ¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢É¸½à¤Î·Ñ¾µ¥â¥Ç¥ë¤Ç¤Ï¤Ê¤¯Tie¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Java¤Î¾ì¹ç¤Ï¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î·Ñ¾µ¤Î¸Ä¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢¥¯¥é¥¹¤Î·Ñ¾µ¤Ë»ÈÍѤǤ­¤ë¥¹¥í¥Ã¥È¤Ï1¤Ä¤Î¤ß¤Ç¤¹¡£·Ñ¾µ¥â¥Ç¥ë¤ò»ÈÍѤ·¤¿¾ì¹ç¤Ï¡¢¤½¤Î¥¹¥í¥Ã¥È¤¬ÀêÍ­¤µ¤ì¤Þ¤¹¡£Tie¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë¤È¡¢¤½¤Î¥¹¥í¥Ã¥È¤¬»ÈÍѤµ¤ì¤º¡¢¥æ¡¼¥¶¡¼¤¬Æȼ«¤ÎÌÜŪ¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ë¤Ï¡¢´ÖÀÜÀ­¤Î¥ì¥Ù¥ë¤¬1¤ÄƳÆþ¤µ¤ì¤ë¤È¤¤¤¦Ã»½ê¤¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤È¤­¤Ë¡¢Í¾Ê¬¤Ê¥á¥½¥Ã¥É¸Æ½Ð¤·¤¬1²óȯÀ¸¤·¤Þ¤¹¡£
+ä»–ã®å®Ÿè£…ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€æ¨™æº–ã®ç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã§ã¯ãªãTieモデルを使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚Javaã®å ´åˆã¯ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ç¶™æ‰¿ã®å€‹æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ã‚¯ãƒ©ã‚¹ã®ç¶™æ‰¿ã«ä½¿ç”¨ã§ãるスロットã¯1ã¤ã®ã¿ã§ã™ã€‚継承モデルを使用ã—ãŸå ´åˆã¯ã€ãã®ã‚¹ãƒ­ãƒƒãƒˆãŒå æœ‰ã•ã‚Œã¾ã™ã€‚Tieモデルを使用ã™ã‚‹ã¨ã€ãã®ã‚¹ãƒ­ãƒƒãƒˆãŒä½¿ç”¨ã•ã‚Œãšã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒç‹¬è‡ªã®ç›®çš„ã§ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®æ–¹æ³•ã«ã¯ã€é–“接性ã®ãƒ¬ãƒ™ãƒ«ãŒ1ã¤å°Žå…¥ã•ã‚Œã‚‹ã¨ã„ã†çŸ­æ‰€ãŒã‚ã‚Šã¾ã™ã€‚メソッドを呼ã³å‡ºã™ã¨ãã«ã€ä½™åˆ†ãªãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ãŒ1回発生ã—ã¾ã™ã€‚
 .PP
-¥µ¡¼¥Ð¡¼Â¦¤ÎÀ¸À®¤Î¾ì¹ç¡¢Java SE 1\&.4¤è¤êÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤ÎJava¸À¸ì¤Ë¥Þ¥Ã¥Ô¥ó¥°¤¹¤ëIDL¤Î¥Ð¡¼¥¸¥ç¥ó¤È¸ß´¹À­¤Î¤¢¤ë¡¢Tie¥â¥Ç¥ë¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¹¡£
+サーãƒãƒ¼å´ã®ç”Ÿæˆã®å ´åˆã€Java SE 1\&.4よりå‰ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®Java言語ã«ãƒžãƒƒãƒ”ングã™ã‚‹IDLã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨äº’æ›æ€§ã®ã‚ã‚‹ã€Tieモデルã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -237,7 +237,7 @@
 .RE
 .\}
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢¤³¤ì¤Ë¤è¤ê¡¢\fIMy_Tie\&.java\fR¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy_Tie\fR¥¯¥é¥¹¤Ø¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢\fIimpl\fR¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê¤Þ¤¹¡£\fIimpl\fR¤ËÂФ·¤Æ¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤Î¼ÂÁõ¤Ï\fIHelloOperations\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤ß¤Ç¡¢¤½¤Î¾¤Î¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤·¤«¤·¡¢¤³¤ì¤òORB¤È°ì½ï¤Ë»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¼¡¤Î¤è¤¦¤Ë\fIMy_Tie\fRÆâ¤Ç¼ÂÁõ¤ò¥é¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\fRインタフェースã®å ´åˆã€ã“ã‚Œã«ã‚ˆã‚Šã€\fIMy_Tie\&.java\fRãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy_Tie\fRクラスã¸ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¯ã€\fIimpl\fRオブジェクトをå–ã‚Šã¾ã™ã€‚\fIimpl\fRã«å¯¾ã—ã¦å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãã®å®Ÿè£…ã¯\fIHelloOperations\fRインタフェースã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã¿ã§ã€ãã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€ã“れをORBã¨ä¸€ç·’ã«ä½¿ç”¨ã™ã‚‹ã«ã¯ã€ãŸã¨ãˆã°æ¬¡ã®ã‚ˆã†ã«\fIMy_Tie\fR内ã§å®Ÿè£…をラップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -258,15 +258,15 @@
 .if n \{\
 .RE
 .\}
-.SS "ȯ¹Ô¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÎÂåÂØ°ÌÃ֤λØÄê"
+.SS "発行ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ä»£æ›¿ä½ç½®ã®æŒ‡å®š"
 .PP
-ȯ¹Ô¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤¯¤Ë¤Ï¡¢\fIi\fR\fIdlj \-td /altdir My\&.idl\fR¤Î¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+発行ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä»¥å¤–ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç½®ãã«ã¯ã€\fIi\fR\fIdlj \-td /altdir My\&.idl\fRã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .PP
 
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fI\&./My\&.java\fR¤Ç¤Ï¤Ê¤¯¡¢\fI/altdir/My\&.java\fR¤Ê¤É¤Ëȯ¹Ô¤µ¤ì¤Þ¤¹¡£
-.SS "¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ÎÂåÂØ°ÌÃ֤λØÄê"
+\fIMy\fRインタフェースã®å ´åˆã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fI\&./My\&.java\fRã§ã¯ãªãã€\fI/altdir/My\&.java\fRãªã©ã«ç™ºè¡Œã•ã‚Œã¾ã™ã€‚
+.SS "インクルード・ファイルã®ä»£æ›¿ä½ç½®ã®æŒ‡å®š"
 .PP
-\fIMy\&.idl\fR¥Õ¥¡¥¤¥ë¤¬Ê̤Î\fIidl\fR¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë\fIMyOther\&.idl\fR¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¡¢\fIMyOther\&.idl\fR¥Õ¥¡¥¤¥ë¤¬¥í¡¼¥«¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¸ºß¤¹¤ë¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤½¤ì¤¬\fI/includes\fR¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+\fIMy\&.idl\fRファイルãŒåˆ¥ã®\fIidl\fRファイルã§ã‚ã‚‹\fIMyOther\&.idl\fRをインクルードã™ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã§ã¯ã€\fIMyOther\&.idl\fRファイルãŒãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å­˜åœ¨ã™ã‚‹ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€ãã‚ŒãŒ\fI/includes\fRã«ã‚ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -278,7 +278,7 @@
 .RE
 .\}
 .PP
-¤¿¤È¤¨¤Ð¡¢\fI/moreIncludes\fR¤Ë¤¢¤ë\fIAnother\&.idl\fR¤â\fIMy\&.idl\fR¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fI/moreIncludes\fRã«ã‚ã‚‹\fIAnother\&.idl\fRã‚‚\fIMy\&.idl\fRã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹ã®ã§ã‚ã‚Œã°ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -290,7 +290,7 @@
 .RE
 .\}
 .PP
-¤³¤Î¤è¤¦¤Ê·Á¼°¤Î\fIinclude\fR¤ÏŤ¯¤Ê¤ë¤¿¤á¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤¹¤ë¤¿¤á¤ÎÊ̤ÎÊýË¡¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢´Ä¶­ÊÑ¿ô¤Î¹Í¤¨Êý¤È»÷¤Æ¤¤¤Þ¤¹¡£\fICLASSPATH\fRÊÑ¿ô¤Ë°ìÍ÷ɽ¼¨¤µ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ëidl\&.config¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¤½¤Î\fIidl\&.config\fR¤ÎÃæ¤Ë¡¢¼¡¤Î¤è¤¦¤Ê·Á¼°¤Î¹Ô¤òÆþ¤ì¤Þ¤¹¡£
+ã“ã®ã‚ˆã†ãªå½¢å¼ã®\fIinclude\fRã¯é•·ããªã‚‹ãŸã‚ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã™ã‚‹å ´æ‰€ã‚’コンパイラã«æŒ‡ç¤ºã™ã‚‹ãŸã‚ã®åˆ¥ã®æ–¹æ³•ãŒç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ç’°å¢ƒå¤‰æ•°ã®è€ƒãˆæ–¹ã¨ä¼¼ã¦ã„ã¾ã™ã€‚\fICLASSPATH\fR変数ã«ä¸€è¦§è¡¨ç¤ºã•ã‚Œã¦ã„るディレクトリ内ã«idl\&.configã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚ãã®\fIidl\&.config\fRã®ä¸­ã«ã€æ¬¡ã®ã‚ˆã†ãªå½¢å¼ã®è¡Œã‚’入れã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -302,10 +302,10 @@
 .RE
 .\}
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥ê¥¹¥È¤òÆɤ߹þ¤ß¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤Ï¥»¥ß¥³¥í¥ó(;)¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î¶èÀÚ¤êʸ»ú¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£Windows¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥»¥ß¥³¥í¥ó¤ò»ÈÍѤ·¡¢UNIX¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥³¥í¥ó¤ò»ÈÍѤ¹¤ë¤Ê¤É¤Ç¤¹¡£
-.SS "¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Îȯ¹Ô"
+コンパイラã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒªã‚¹ãƒˆã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã«ãªã£ã¦ã„ã¾ã™ã€‚ã“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¯ã€ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚Windowsプラットフォームã§ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã‚’使用ã—ã€UNIXプラットフォームã§ã¯ã‚³ãƒ­ãƒ³ã‚’使用ã™ã‚‹ãªã©ã§ã™ã€‚
+.SS "インクルード・ファイルã«å¯¾ã™ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ç™ºè¡Œ"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤷ¤¿\fIidl\fR¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ä¹½Â¤ÂΤʤɤˤĤ¤¤Æ¤Î¤ß¡¢Java¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë·¿¤Ë¤Ä¤¤¤Æ¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î2¤Ä¤Î\fIidl\fR¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¹Í¤¨¤Æ¤ß¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æŒ‡å®šã—ãŸ\fIidl\fRファイルã§å®šç¾©ã•ã‚Œã¦ã„るインタフェースや構造体ãªã©ã«ã¤ã„ã¦ã®ã¿ã€Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚インクルードã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹åž‹ã«ã¤ã„ã¦ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®2ã¤ã®\fIidl\fRファイルã«ã¤ã„ã¦è€ƒãˆã¦ã¿ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -328,7 +328,7 @@
 .RE
 .\}
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥ë¡¼¥ë¤Ë´Ø¤·¤Æ·Ù¹ð¤¬¤¢¤ê¤Þ¤¹¡£¥°¥í¡¼¥Ð¥ë¡¦¥¹¥³¡¼¥×¤Ëɽ¼¨¤µ¤ì¤ë\fI#include\fRʸ¤Ï¡¢Á°½Ò¤Î¤È¤ª¤ê¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î\fI#include\fRʸ¤Ï¡¢¥¤¥ó¥Ý¡¼¥Èʸ¤È¸«¤Ê¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£°Ï¤Þ¤ì¤¿¥¹¥³¡¼¥×Æâ¤Ëɽ¼¨¤µ¤ì¤ë\fI#include\fRʸ¤Ï¡¢ËÜÅö¤Î°ÕÌ£¤Ç¤Î\fI#include\fRʸ¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¥³¡¼¥É¤¬¡¢¸µ¤Î¥Õ¥¡¥¤¥ë¤Ë¤½¤Î¤Þ¤Þɽ¼¨¤µ¤ì¤Æ¤¤¤ë¤«¤Î¤è¤¦¤Ë½èÍý¤µ¤ì¡¢¤½¤ì¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£¼¡¤Ï¤½¤ÎÎã¤Ç¤¹¡£
+デフォルトã®ãƒ«ãƒ¼ãƒ«ã«é–¢ã—ã¦è­¦å‘ŠãŒã‚ã‚Šã¾ã™ã€‚グローãƒãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI#include\fRæ–‡ã¯ã€å‰è¿°ã®ã¨ãŠã‚Šã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚ã“れらã®\fI#include\fRæ–‡ã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ–‡ã¨è¦‹ãªã™ã“ã¨ãŒã§ãã¾ã™ã€‚囲ã¾ã‚ŒãŸã‚¹ã‚³ãƒ¼ãƒ—内ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI#include\fRæ–‡ã¯ã€æœ¬å½“ã®æ„味ã§ã®\fI#include\fRæ–‡ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚るコードãŒã€å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ãã®ã¾ã¾è¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã‹ã®ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã€ãã‚Œã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚次ã¯ãã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -356,7 +356,7 @@
 .RE
 .\}
 .PP
-\fI idlj My\&.idl \fR¤ò¼Â¹Ô¤·¤Æ¡¢Java¥Õ¥¡¥¤¥ë¤Î¼¡¤Î¥ê¥¹¥È¤òÀ¸À®¤·¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥Èʸ¤È¤ß¤Ê¤µ¤ì¤ë\fI#include\fR¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤¿¤¿¤á¡¢\fIMyOther\&.java\fR¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£¤¿¤À¤·¡¢ËÜÅö¤Î°ÕÌ£¤Ç¤Î\fI#include\fR¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤¿¤¿¤á¡¢\fIE\&.java\fR¤ÏÀ¸À®¤µ¤ì¤Þ¤·¤¿¡£\fIEmbedded\&.idl\fR¥Õ¥¡¥¤¥ë¤¬\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥¹¥³¡¼¥×Æâ¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢\fIMy\fR¤Î¥¹¥³¡¼¥×Æâ(¤Ä¤Þ¤ê¡¢\fIMyPackage\fRÆâ)¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-emitAll\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¤¹¤Ù¤Æ¤Î·¿¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£
+\fI idlj My\&.idl \fRを実行ã—ã¦ã€Javaファイルã®æ¬¡ã®ãƒªã‚¹ãƒˆã‚’生æˆã—ã¾ã™ã€‚インãƒãƒ¼ãƒˆæ–‡ã¨ã¿ãªã•ã‚Œã‚‹\fI#include\fRã«å®šç¾©ã•ã‚Œã¦ã„ãŸãŸã‚ã€\fIMyOther\&.java\fRã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ãŸã ã—ã€æœ¬å½“ã®æ„味ã§ã®\fI#include\fRã§å®šç¾©ã•ã‚Œã¦ã„ãŸãŸã‚ã€\fIE\&.java\fRã¯ç”Ÿæˆã•ã‚Œã¾ã—ãŸã€‚\fIEmbedded\&.idl\fRファイルãŒ\fIMy\fRインタフェースã®ã‚¹ã‚³ãƒ¼ãƒ—内ã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€\fIMy\fRã®ã‚¹ã‚³ãƒ¼ãƒ—内(ã¤ã¾ã‚Šã€\fIMyPackage\fR内)ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¾ã™ã€‚\fI\-emitAll\fRフラグを使用ã—ãŸå ´åˆã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚ã‚‹ã™ã¹ã¦ã®åž‹ãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -374,9 +374,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Ñ¥Ã¥±¡¼¥¸¤ÎÀÜƬ¼­¤ÎÁÞÆþ"
+.SS "パッケージã®æŽ¥é ­è¾žã®æŒ¿å…¥"
 .PP
-ABC¤È¤¤¤¦Ì¾Á°¤Î²ñ¼Ò¤Î¤¿¤á¤Ëºî¶È¤·¤Æ¤¤¤Æ¡¢¼¡¤Î¤è¤¦¤ÊIDL¥Õ¥¡¥¤¥ë¤ò¹½ÃÛ¤·¤¿¤È¤·¤Þ¤·¤ç¤¦¡£
+ABCã¨ã„ã†åå‰ã®ä¼šç¤¾ã®ãŸã‚ã«ä½œæ¥­ã—ã¦ã„ã¦ã€æ¬¡ã®ã‚ˆã†ãªIDLファイルを構築ã—ãŸã¨ã—ã¾ã—ょã†ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -394,7 +394,7 @@
 .RE
 .\}
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤ò²ð¤·¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢W1¤ª¤è¤ÓW2¤ËÂФ¹¤ëJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fIWidgets\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¶È³¦¤Î´·Îã¤Ë¤è¤ë¤È¡¢²ñ¼Ò¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢\fIcom\&.<company name>\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËÃÖ¤¯¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î´·Îã¤Ë½¾¤¦¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò\fIcom\&.abc\&.Widgets\fR¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Ñ¥Ã¥±¡¼¥¸ÀÜƬ¼­¤òWidgets¥â¥¸¥å¡¼¥ë¤ËÉղ乤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラを介ã—ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’実行ã—ãŸå ´åˆã€W1ãŠã‚ˆã³W2ã«å¯¾ã™ã‚‹Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fIWidgets\fRパッケージ内ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚業界ã®æ…£ä¾‹ã«ã‚ˆã‚‹ã¨ã€ä¼šç¤¾ã®ãƒ‘ッケージã¯ã€\fIcom\&.<company name>\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージ内ã«ç½®ãã“ã¨ã«ãªã£ã¦ã„ã¾ã™ã€‚ã“ã®æ…£ä¾‹ã«å¾“ã†ã«ã¯ã€ãƒ‘ッケージåã‚’\fIcom\&.abc\&.Widgets\fRã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ‘ッケージ接頭辞をWidgetsモジュールã«ä»˜åŠ ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -406,30 +406,30 @@
 .RE
 .\}
 .PP
-Widgets\&.idl¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ëIDL¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥³¥Þ¥ó¥É¤Ë¤â\fI\-pkgPrefix\fR¥Õ¥é¥°¤¬É¬ÍפǤ¹¡£¤³¤Î¥Õ¥é¥°¤ò»ØÄꤷ¤Ê¤¤¤È¡¢¤½¤ÎIDL¥Õ¥¡¥¤¥ë¤Ï¡¢\fIcom\&.abc\&.Widgets\fR¥Ñ¥Ã¥±¡¼¥¸¤Ç¤Ï¤Ê¤¯¡¢\fIWidgets\fR¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+Widgets\&.idlをインクルードã—ã¦ã„ã‚‹IDLファイルãŒã‚ã‚‹å ´åˆã¯ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚‚\fI\-pkgPrefix\fRフラグãŒå¿…è¦ã§ã™ã€‚ã“ã®ãƒ•ãƒ©ã‚°ã‚’指定ã—ãªã„ã¨ã€ãã®IDLファイルã¯ã€\fIcom\&.abc\&.Widgets\fRパッケージã§ã¯ãªãã€\fIWidgets\fRパッケージを検索ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-ÀÜƬ¼­¤¬É¬Íפʥѥ屡¼¥¸¤¬¤¤¤¯¤Ä¤â¤¢¤ë¾ì¹ç¤Ï¡¢Á°½Ò¤Îidl\&.config¥Õ¥¡¥¤¥ë¤ÇÀÜƬ¼­¤ò»ØÄꤹ¤ë¤Î¤¬´Êñ¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸ÀÜƬ¼­¤Î³Æ¹Ô¤Ï¡¢\fIPkgPrefix\&.<type>=<prefix>\fR¤Î·Á¼°¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Á°½Ò¤ÎÎã¤Î¹Ô¤Ç¤Ï¡¢\fIPkgPrefix\&.Widgets=com\&.abc\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥ê¥Ý¥¸¥È¥êID¤Ë¤Ï±Æ¶Á¤·¤Þ¤»¤ó¡£
-.SS "¥³¥ó¥Ñ¥¤¥ëÁ°¤Î¥·¥ó¥Ü¥ë¤ÎÄêµÁ"
+接頭辞ãŒå¿…è¦ãªãƒ‘ッケージãŒã„ãã¤ã‚‚ã‚ã‚‹å ´åˆã¯ã€å‰è¿°ã®idl\&.configファイルã§æŽ¥é ­è¾žã‚’指定ã™ã‚‹ã®ãŒç°¡å˜ã§ã™ã€‚パッケージ接頭辞ã®å„è¡Œã¯ã€\fIPkgPrefix\&.<type>=<prefix>\fRã®å½¢å¼ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å‰è¿°ã®ä¾‹ã®è¡Œã§ã¯ã€\fIPkgPrefix\&.Widgets=com\&.abc\fRã«ãªã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒªãƒã‚¸ãƒˆãƒªIDã«ã¯å½±éŸ¿ã—ã¾ã›ã‚“。
+.SS "コンパイルå‰ã®ã‚·ãƒ³ãƒœãƒ«ã®å®šç¾©"
 .PP
-¥³¥ó¥Ñ¥¤¥ëÍѤΥ·¥ó¥Ü¥ë¤¬IDL¥Õ¥¡¥¤¥ëÆâ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¤½¤Î¥·¥ó¥Ü¥ë¤òÄêµÁ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¿¤È¤¨¤Ð¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°Æâ¤Ë¥Ç¥Ð¥Ã¥°¡¦¥³¡¼¥É¤òÁȤßÆþ¤ì¤ë¤È¤­¤Ë»ÈÍѤ·¤Þ¤¹¡£¥³¥Þ¥ó¥É\fIidlj \-d MYDEF My\&.idl \fR¤Ï¡¢My\&.idlÆâ¤Ë¹Ô\fI#define MYDEF\fR¤òÇÛÃÖ¤·¤¿¾ì¹ç¤ÈƱÅù¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SS "´û¸¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ÎÊÝ»ý"
+コンパイル用ã®ã‚·ãƒ³ãƒœãƒ«ãŒIDLファイル内ã§å®šç¾©ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãã®ã‚·ãƒ³ãƒœãƒ«ã‚’定義ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ãŸã¨ãˆã°ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°å†…ã«ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’組ã¿å…¥ã‚Œã‚‹ã¨ãã«ä½¿ç”¨ã—ã¾ã™ã€‚コマンド\fIidlj \-d MYDEF My\&.idl \fRã¯ã€My\&.idl内ã«è¡Œ\fI#define MYDEF\fRã‚’é…ç½®ã—ãŸå ´åˆã¨åŒç­‰ã«ãªã‚Šã¾ã™ã€‚
+.SS "既存ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ä¿æŒ"
 .PP
-Java¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-keep\fR¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤ë¾å½ñ¤­¤ò²óÈò¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤¹¤Ç¤Ë¸ºß¤¹¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤¿¾ì¹ç(¤¿¤À¤·¡¢¤½¤ì¤é¤ÎÆâÍƤ¬Àµ³Î¤Ç¤¢¤ë¤È¤­°Ê³°¤Ï¥«¥¹¥¿¥Þ¥¤¥º¤ÏÈò¤±¤ë)¡¢\fI\-keep\fR¥ª¥×¥·¥ç¥ó¤ÏÍ­ÍѤǤ¹¡£¥³¥Þ¥ó¥É\fIidlj \-keep My\&.idl\fR¤Ï¡¢¤¹¤Ç¤Ë¸ºß¤·¤Ê¤¤¤¹¤Ù¤Æ¤Î¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òȯ¹Ô¤·¤Þ¤¹¡£
-.SS "¥³¥ó¥Ñ¥¤¥ë¤Î¿ÊĽ¾õ¶·¤Îɽ¼¨"
+Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã¯ã€\fI\-keep\fRフラグを指定ã™ã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã‚‹ä¸Šæ›¸ãを回é¿ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã™ã§ã«å­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’カスタマイズã—ãŸå ´åˆ(ãŸã ã—ã€ãれらã®å†…容ãŒæ­£ç¢ºã§ã‚ã‚‹ã¨ã以外ã¯ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã¯é¿ã‘ã‚‹)ã€\fI\-keep\fRオプションã¯æœ‰ç”¨ã§ã™ã€‚コマンド\fIidlj \-keep My\&.idl\fRã¯ã€ã™ã§ã«å­˜åœ¨ã—ãªã„ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’発行ã—ã¾ã™ã€‚
+.SS "コンパイルã®é€²æ—状æ³ã®è¡¨ç¤º"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¼Â¹Ô¤Î³ÆÃʳ¬¤Ç¾õÂÖ¥á¥Ã¥»¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIidlj \-v My\&.idl\fR¤Î¤è¤¦¤Ê¾éĹ¥â¡¼¥É¤ò¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラã¯ã€å®Ÿè¡Œã®å„段階ã§çŠ¶æ…‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚\fI\-v\fRオプションを使用ã—ã¦ã€\fIidlj \-v My\&.idl\fRã®ã‚ˆã†ãªå†—長モードをアクティブ化ã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¾éĹ¥â¡¼¥É¤Ç¤Ï¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£
-.SS "¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨"
+デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯å†—長モードã§ã¯å®Ÿè¡Œã•ã‚Œã¾ã›ã‚“。
+.SS "ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤º"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Î¥Ó¥ë¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó\fIidlj \-version\fR¤Ç\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラã®ãƒ“ルド・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³\fIidlj \-version\fRã§\fI\-version\fRオプションを指定ã—ã¾ã™ã€‚
 .PP
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°Æâ¤Ë¤â½ñ¤­¹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤È¡¢¤½¤ì°Ê³°¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¤â¡¢¤¹¤Ù¤Æ̵»ë¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚ŒãŸãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°å†…ã«ã‚‚書ãè¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションをコマンドラインã«æŒ‡å®šã™ã‚‹ã¨ã€ãれ以外ã®ã‚ªãƒ—ションを指定ã—ã¦ã‚‚ã€ã™ã¹ã¦ç„¡è¦–ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-d \fIsymbol\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢IDL¥Õ¥¡¥¤¥ë¤Ë¼¡¤Î¤è¤¦¤Ê¹Ô¤òÄɲä·¤¿¾ì¹ç¤ÈÅù²Á¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€IDLファイルã«æ¬¡ã®ã‚ˆã†ãªè¡Œã‚’追加ã—ãŸå ´åˆã¨ç­‰ä¾¡ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -444,46 +444,46 @@
 .PP
 \-demitAll
 .RS 4
-\fI#include\fR¥Õ¥¡¥¤¥ëÆâ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤â´Þ¤á¤Æ¡¢¤¹¤Ù¤Æ¤Î·¿¤òȯ¹Ô¤·¤Þ¤¹¡£
+\fI#include\fRファイル内ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹ã‚‚ã®ã‚‚å«ã‚ã¦ã€ã™ã¹ã¦ã®åž‹ã‚’発行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-fside
 .RS 4
-ȯ¹Ô¤¹¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÄêµÁ¤·¤Þ¤¹¡£\fIside\fR¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¡¢\fIclient\fR¡¢\fIserver\fR¡¢\fIserverTIE\fR¡¢\fIall\fR¤Þ¤¿¤Ï\fIallTIE\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-fserverTIE\fR¤Þ¤¿¤Ï\fI\-fallTIE\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢°Ñ¾ù¥â¥Ç¥ë¡¦¥¹¥±¥ë¥È¥ó¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£¥Õ¥é¥°¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fI\-fclient\fR¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+発行ã™ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’定義ã—ã¾ã™ã€‚\fIside\fRパラメータã«ã¯ã€\fIclient\fRã€\fIserver\fRã€\fIserverTIE\fRã€\fIall\fRã¾ãŸã¯\fIallTIE\fRを指定ã§ãã¾ã™ã€‚\fI\-fserverTIE\fRã¾ãŸã¯\fI\-fallTIE\fRオプションを指定ã™ã‚‹ã¨ã€å§”譲モデル・スケルトンãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚フラグを指定ã—ãªã„å ´åˆã€\fI\-fclient\fRã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-i \fIinclude\-path\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢Â¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲäǤ­¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€ä»–ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’追加ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-i \fIkeep\fR
 .RS 4
-À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬¾å½ñ¤­¤µ¤ì¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŒã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒä¸Šæ›¸ãã•ã‚Œã¾ã›ã‚“。デフォルトã§ã¯ã€ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-noWarn
 .RS 4
-·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+警告メッセージを表示ã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-oldImplBase
 .RS 4
-1\&.4¤è¤êÁ°¤ÎJDK ORB¤È¸ß´¹À­¤Î¤¢¤ë¥¹¥±¥ë¥È¥ó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢POA·Ñ¾µ¥â¥Ç¥ë¤Î¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢\fIImplBase\fR·Ñ¾µ¥â¥Ç¥ë¤Î¥¯¥é¥¹¤Ç¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤ë¤Î¤Ç¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤È¤Î²¼°Ì¸ß´¹À­¤¬ÆÀ¤é¤ì¤Þ¤¹¡£
+1\&.4よりå‰ã®JDK ORBã¨äº’æ›æ€§ã®ã‚るスケルトンを生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€POA継承モデルã®ã‚µãƒ¼ãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€\fIImplBase\fR継承モデルã®ã‚¯ãƒ©ã‚¹ã§ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã‚‹ã®ã§ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®Javaプログラミング言語ã¨ã®ä¸‹ä½äº’æ›æ€§ãŒå¾—られã¾ã™ã€‚
 .RE
 .PP
 \-pkgPrefix \fItype\fR \fIprefix\fR
 .RS 4
-\fItype\fR¤¬¥Õ¥¡¥¤¥ë¡¦¥¹¥³¡¼¥×¤Ç¸¡½Ð¤µ¤ì¤¿¾ì¹ç¤Ï¡¢¤½¤Î·¿¤ËÂФ·¤ÆÀ¸À®¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢À¸À®¤µ¤ì¤ëJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë\fIprefix\fR¤È¤¤¤¦ÀÜƬ¼­¤¬Éղ䵤ì¤Þ¤¹¡£type¤Ï¡¢¥È¥Ã¥×¥ì¥Ù¥ë¡¦¥â¥¸¥å¡¼¥ë¤Îñ½ã̾¤«¡¢¤É¤Î¥â¥¸¥å¡¼¥ë¤è¤ê¤â³°Â¦¤ÇÄêµÁ¤µ¤ì¤¿IDL·¿¤Îñ½ã̾¤Î¤É¤Á¤é¤«¤Ç¤¹¡£
+\fItype\fRãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—ã§æ¤œå‡ºã•ã‚ŒãŸå ´åˆã¯ã€ãã®åž‹ã«å¯¾ã—ã¦ç”Ÿæˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã€ç”Ÿæˆã•ã‚Œã‚‹Javaパッケージåã«\fIprefix\fRã¨ã„ã†æŽ¥é ­è¾žãŒä»˜åŠ ã•ã‚Œã¾ã™ã€‚typeã¯ã€ãƒˆãƒƒãƒ—レベル・モジュールã®å˜ç´”åã‹ã€ã©ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚ˆã‚Šã‚‚外å´ã§å®šç¾©ã•ã‚ŒãŸIDLåž‹ã®å˜ç´”åã®ã©ã¡ã‚‰ã‹ã§ã™ã€‚
 .RE
 .PP
 \-pkgTranslate \fItype\fR \fIpackage\fR
 .RS 4
-¼±Ê̻ҤÎÃæ¤Ë¥â¥¸¥å¡¼¥ë̾type¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢À¸À®¤µ¤ì¤ëJava¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢¼±Ê̻ҤÎÃæ¤Î¤½¤Î̾Á°¤¬package¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£ºÇ½é¤Ë\fIpkgPrefix\fR¤ÎÊѹ¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£type¤ÎÃͤϡ¢¥È¥Ã¥×¥ì¥Ù¥ë¤Î¥â¥¸¥å¡¼¥ë¤Îñ½ã̾¡¢¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥â¥¸¥å¡¼¥ë¤Î³°Éô¤ÇÄêµÁ¤µ¤ì¤¿IDL·¿¤Îñ½ã̾¤Ç¡¢´°Á´¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÀµ³Î¤Ë°ìÃפ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å­ã®ä¸­ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«åtypeãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ç”Ÿæˆã•ã‚Œã‚‹Javaパッケージ内ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã€è­˜åˆ¥å­ã®ä¸­ã®ãã®åå‰ãŒpackageã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚最åˆã«\fIpkgPrefix\fRã®å¤‰æ›´ãŒè¡Œã‚ã‚Œã¾ã™ã€‚typeã®å€¤ã¯ã€ãƒˆãƒƒãƒ—レベルã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®å˜ç´”åã€ã¾ãŸã¯ã™ã¹ã¦ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®å¤–部ã§å®šç¾©ã•ã‚ŒãŸIDLåž‹ã®å˜ç´”åã§ã€å®Œå…¨ãªãƒ‘ッケージåã«æ­£ç¢ºã«ä¸€è‡´ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ê£¿ô¤ÎÊÑ´¹¤¬¼±Ê̻Ҥ˰ìÃפ¹¤ë¾ì¹ç¡¢¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë¡¢ºÇ¤âŤ¤°ìÃפ¬ÁªÂò¤µ¤ì¤Þ¤¹¡£
+複数ã®å¤‰æ›ãŒè­˜åˆ¥å­ã«ä¸€è‡´ã™ã‚‹å ´åˆã€æ¬¡ã®ä¾‹ã«ç¤ºã™ã‚ˆã†ã«ã€æœ€ã‚‚é•·ã„一致ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥³¥Þ¥ó¥É\fR:
+\fBコマンド\fR:
 .sp
 .if n \{\
 .RS 4
@@ -494,7 +494,7 @@
 .if n \{\
 .RE
 .\}
-\fB·ë²Ì¤ÎÊÑ´¹\fR:
+\fBçµæžœã®å¤‰æ›\fR:
 .sp
 .if n \{\
 .RS 4
@@ -508,47 +508,47 @@
 .if n \{\
 .RE
 .\}
-¥Ñ¥Ã¥±¡¼¥¸Ì¾\fIorg\fR¡¢\fIorg\fR\&.o\fImg\fR¡¢¤Þ¤¿¤Ï\fIorg\&.omg\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢ÊÑ´¹¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÊÑ´¹¤·¤è¤¦¤È¤¹¤ë¤È¡¢¸ß´¹À­¤Î¤Ê¤¤¥³¡¼¥É¤¬À¸À®¤µ¤ì¡¢\fI\-pkgTranslate\fR¤Î¸å¤ÎºÇ½é¤Î°ú¿ô¤È¤·¤Æ¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¤È¡¢¥¨¥é¡¼¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+パッケージå\fIorg\fRã€\fIorg\fR\&.o\fImg\fRã€ã¾ãŸã¯\fIorg\&.omg\fRã®ã‚µãƒ–パッケージã¯ã€å¤‰æ›ã§ãã¾ã›ã‚“。ã“れらã®ãƒ‘ッケージåを変æ›ã—よã†ã¨ã™ã‚‹ã¨ã€äº’æ›æ€§ã®ãªã„コードãŒç”Ÿæˆã•ã‚Œã€\fI\-pkgTranslate\fRã®å¾Œã®æœ€åˆã®å¼•æ•°ã¨ã—ã¦ãれらã®ãƒ‘ッケージを使用ã™ã‚‹ã¨ã€ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-skeletonName \fIxxx%yyy\fR
 .RS 4
-\fIxxx%yyy\fR¤¬¡¢¥¹¥±¥ë¥È¥ó¤Ë̾Á°¤òÉÕ¤±¤ë¥Ñ¥¿¡¼¥ó¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£\fIPOA\fR¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI%POA\fR
-(\fI\-fserver\fR¤Þ¤¿¤Ï\fI\-fall\fR)¡¢\fIoldImplBase\fR¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI_%ImplBase\fR
-(\-\fIoldImplBase\fR)¤ª¤è¤Ó(\fI\-fserver\fR¤Þ¤¿¤Ï\fI\-fall\fR))¡£
+\fIxxx%yyy\fRãŒã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã«åå‰ã‚’付ã‘るパターンã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚デフォルトã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚\fIPOA\fRベース・クラスã®å ´åˆã¯\fI%POA\fR
+(\fI\-fserver\fRã¾ãŸã¯\fI\-fall\fR)ã€\fIoldImplBase\fRクラスã®å ´åˆã¯\fI_%ImplBase\fR
+(\-\fIoldImplBase\fR)ãŠã‚ˆã³(\fI\-fserver\fRã¾ãŸã¯\fI\-fall\fR))。
 .RE
 .PP
 \-td \fIdir\fR
 .RS 4
-½ÐÎϥǥ£¥ì¥¯¥È¥ê¤È¤·¤Æ¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤Ê¤¯¡¢\fIdir\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+出力ディレクトリã¨ã—ã¦ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ãªãã€\fIdir\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tieName \fIxxx%yyy\fR
 .RS 4
-¥Ñ¥¿¡¼¥ó¤Ë½¾¤Ã¤Æ¡¢\fIxxx%yyy\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£\fIPOA\fR¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI%POA\fR
-(\fI\-fserverTie¤Þ¤¿¤Ï\-fallTie\fR)¡¢\fIoldImplBase\fR
-tie¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI_%Tie\fR
-(\-\fIoldImplBase\fR)¤ª¤è¤Ó(\fI\-fserverTie\fR¤Þ¤¿¤Ï\fI\-fallTie\fR))¡£
+パターンã«å¾“ã£ã¦ã€\fIxxx%yyy\fRを使用ã—ã¾ã™ã€‚デフォルトã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚\fIPOA\fRベース・クラスã®å ´åˆã¯\fI%POA\fR
+(\fI\-fserverTieã¾ãŸã¯\-fallTie\fR)ã€\fIoldImplBase\fR
+tieクラスã®å ´åˆã¯\fI_%Tie\fR
+(\-\fIoldImplBase\fR)ãŠã‚ˆã³(\fI\-fserverTie\fRã¾ãŸã¯\fI\-fallTie\fR))。
 .RE
 .PP
-\-nowarn¡¢\-verbose
+\-nowarnã€\-verbose
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SH "À©¸Â»ö¹à"
+.SH "制é™äº‹é …"
 .PP
-¥°¥í¡¼¥Ð¥ë¡¦¥¹¥³¡¼¥×Æâ¤Î¥¨¥¹¥±¡¼¥×¤µ¤ì¤¿¼±Ê̻Ҥϡ¢IDL¥×¥ê¥ß¥Æ¥£¥Ö·¿¤Î\fIObject\fR¤Þ¤¿¤Ï\fIValueBase\fR¤ÈƱ¤¸ÄÖ¤ê¤Ë¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤³¤ì¤Ï¡¢¥·¥ó¥Ü¥ëɽ¤¬¤³¤ì¤é¤Î¼±Ê̻Ҥǥץê¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£¤³¤ì¤é¤ÎºÆÄêµÁ¤òµö²Ä¤¹¤ë¤È¡¢¸µ¤ÎÄêµÁ¤¬¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤ª¤½¤é¤¯¹±µ×Ū¤ÊÀ©Ìó¤Ç¤¹¡£
+グローãƒãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—内ã®ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã•ã‚ŒãŸè­˜åˆ¥å­ã¯ã€IDLプリミティブ型ã®\fIObject\fRã¾ãŸã¯\fIValueBase\fRã¨åŒã˜ç¶´ã‚Šã«ã—ãªã„ã§ãã ã•ã„。ã“ã‚Œã¯ã€ã‚·ãƒ³ãƒœãƒ«è¡¨ãŒã“れらã®è­˜åˆ¥å­ã§ãƒ—リロードã•ã‚Œã¦ã„ã‚‹ãŸã‚ã§ã™ã€‚ã“れらã®å†å®šç¾©ã‚’許å¯ã™ã‚‹ã¨ã€å…ƒã®å®šç¾©ãŒä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ãŠãらãæ’ä¹…çš„ãªåˆ¶ç´„ã§ã™ã€‚
 .PP
-\fIfixed\fR¤È¤¤¤¦IDL·¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "´ûÃΤÎÌäÂê"
+\fIfixed\fRã¨ã„ã†IDLåž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "既知ã®å•é¡Œ"
 .PP
-¥°¥í¡¼¥Ð¥ë¼±Ê̻ҤˤĤ¤¤Æ¥¤¥ó¥Ý¡¼¥È¤¬À¸À®¤µ¤ì¤Þ¤»¤ó¡£Í½´ü¤µ¤ì¤Ê¤¤¥í¡¼¥«¥ë\fIimpl\fR¥ª¥Ö¥¸¥§¥¯¥È¤ò¸Æ¤Ó½Ð¤¹¤È¡¢Îã³°¤ò¼õ¤±¼è¤ê¤Þ¤¹¡£¤·¤«¤·¡¢¤½¤Î¸¶°ø¤Ï¡¢\fIServerDelegate\fR
-DSI¥³¡¼¥ÉÆâ¤Î\fINullPointerException\fR¤Ë¤¢¤ë¤è¤¦¤Ç¤¹¡£
+グローãƒãƒ«è­˜åˆ¥å­ã«ã¤ã„ã¦ã‚¤ãƒ³ãƒãƒ¼ãƒˆãŒç”Ÿæˆã•ã‚Œã¾ã›ã‚“。予期ã•ã‚Œãªã„ローカル\fIimpl\fRオブジェクトを呼ã³å‡ºã™ã¨ã€ä¾‹å¤–ã‚’å—ã‘å–ã‚Šã¾ã™ã€‚ã—ã‹ã—ã€ãã®åŽŸå› ã¯ã€\fIServerDelegate\fR
+DSIコード内ã®\fINullPointerException\fRã«ã‚るよã†ã§ã™ã€‚
 .br
 'pl 8.5i
 'bp
--- a/jdk/src/linux/doc/man/ja/jar.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jar.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jar
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jar" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jar" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,9 +49,9 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jar \- Java Archive (JAR)¥Õ¥¡¥¤¥ë¤òÁàºî¤·¤Þ¤¹¡£
-.SH "³µÍ×"
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®
+jar \- Java Archive (JAR)ファイルをæ“作ã—ã¾ã™ã€‚
+.SH "概è¦"
+JARファイルã®ä½œæˆ
 .sp
 .if n \{\
 .RS 4
@@ -62,7 +62,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Î¹¹¿·
+JARファイルã®æ›´æ–°
 .sp
 .if n \{\
 .RS 4
@@ -73,7 +73,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤ÎÃê½Ð
+JARファイルã®æŠ½å‡º
 .sp
 .if n \{\
 .RS 4
@@ -84,7 +84,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È
+JARファイルã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ
 .sp
 .if n \{\
 .RS 4
@@ -95,7 +95,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Ø¤Îº÷°ú¤ÎÄɲÃ
+JARファイルã¸ã®ç´¢å¼•ã®è¿½åŠ 
 .sp
 .if n \{\
 .RS 4
@@ -106,48 +106,48 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢ZIP¤ª¤è¤ÓZLIB°µ½Ì·Á¼°¤Ë´ð¤Å¤¯ÈÆÍѤΥ¢¡¼¥«¥¤¥Ö¤ª¤è¤Ó°µ½Ì¥Ä¡¼¥ë¤Ç¤¹¡£¤¿¤À¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢¼ç¤Ë¤¤¤¯¤Ä¤«¤ÎJava¥¢¥×¥ì¥Ã¥È¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òñ°ì¤Î¥¢¡¼¥«¥¤¥Ö¤Ë¥Ñ¥Ã¥±¡¼¥¸²½¤¹¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Þ¤·¤¿¡£¥¢¥×¥ì¥Ã¥È¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È(¥Õ¥¡¥¤¥ë¡¢¥¤¥á¡¼¥¸¡¢¤ª¤è¤Ó¥µ¥¦¥ó¥É)¤¬1¤Ä¤Î¥¢¡¼¥«¥¤¥Ö¤Ë·ë¹ç¤µ¤ì¤Æ¤¤¤ë¤È¡¢Java¥¨¡¼¥¸¥§¥ó¥È(¥Ö¥é¥¦¥¶¤Ê¤É)¤Ï¡¢¤½¤ì¤é¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò1²ó¤ÎHTTP¥È¥é¥ó¥¶¥¯¥·¥ç¥ó¤Ç¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤´¤È¤Ë¿·¤·¤¤Àܳ¤¬ÉÔÍפˤʤê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤¬ÂçÉý¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤Î°µ½Ì¤â¹Ô¤¦¤¿¤á¡¢¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤¬¤µ¤é¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¸Ä¡¹¤Î¥¨¥ó¥È¥ê¤Ë¥¢¥×¥ì¥Ã¥ÈºîÀ®¼Ô¤Ë¤è¤ë½ð̾¤ò½ñ¤­¹þ¤á¤ë¤¿¤á¡¢ÇÛÉÛ¸µ¤Îǧ¾Ú¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Ï¡¢°µ½Ì¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjar\fRコマンドã¯ã€ZIPãŠã‚ˆã³ZLIB圧縮形å¼ã«åŸºã¥ã汎用ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ãŠã‚ˆã³åœ§ç¸®ãƒ„ールã§ã™ã€‚ãŸã ã—ã€\fIjar\fRコマンドã¯ã€ä¸»ã«ã„ãã¤ã‹ã®Javaアプレットやアプリケーションをå˜ä¸€ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«ãƒ‘ッケージ化ã™ã‚‹ã‚ˆã†ã«è¨­è¨ˆã•ã‚Œã¾ã—ãŸã€‚アプレットやアプリケーションã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆ(ファイルã€ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ãŠã‚ˆã³ã‚µã‚¦ãƒ³ãƒ‰)ãŒ1ã¤ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«çµåˆã•ã‚Œã¦ã„ã‚‹ã¨ã€Javaエージェント(ブラウザãªã©)ã¯ã€ãれらã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã‚’1回ã®HTTPトランザクションã§ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã“ã¨ãŒã§ãã€ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã”ã¨ã«æ–°ã—ã„接続ãŒä¸è¦ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚é–“ãŒå¤§å¹…ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€\fIjar\fRコマンドã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®åœ§ç¸®ã‚‚è¡Œã†ãŸã‚ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚é–“ãŒã•ã‚‰ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€\fIjar\fRコマンドã«ã‚ˆã£ã¦ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å€‹ã€…ã®ã‚¨ãƒ³ãƒˆãƒªã«ã‚¢ãƒ—レット作æˆè€…ã«ã‚ˆã‚‹ç½²åを書ãè¾¼ã‚ã‚‹ãŸã‚ã€é…布元ã®èªè¨¼ãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚JARファイルã¯ã€åœ§ç¸®ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ã‚¨ãƒ³ãƒˆãƒªã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ï¡¢\fItar\fR¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ë»÷¤Æ¤¤¤Þ¤¹¡£É¬¿Ü¤Î\fIÁàºî¤Î°ú¿ô\fR¤Î1¤Ä¤ÇÄêµÁ¤µ¤ì¤¿Ê£¿ô¤ÎÁàºî¥â¡¼¥É¤¬¤¢¤ê¤Þ¤¹¡£Â¾¤Î°ú¿ô¤Ï¡¢Áàºî¤ÎÆ°ºî¤òÊѹ¹¤¹¤ë\fI¥ª¥×¥·¥ç¥ó\fR¡¢¤Þ¤¿¤ÏÁàºî¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤ËɬÍפÊ\fI¥ª¥Ú¥é¥ó¥É\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.SH "Áàºî¤Î°ú¿ô"
+\fIjar\fRコマンドã®æ§‹æ–‡ã¯ã€\fItar\fRコマンドã®æ§‹æ–‡ã«ä¼¼ã¦ã„ã¾ã™ã€‚å¿…é ˆã®\fIæ“作ã®å¼•æ•°\fRã®1ã¤ã§å®šç¾©ã•ã‚ŒãŸè¤‡æ•°ã®æ“作モードãŒã‚ã‚Šã¾ã™ã€‚ä»–ã®å¼•æ•°ã¯ã€æ“作ã®å‹•ä½œã‚’変更ã™ã‚‹\fIオプション\fRã€ã¾ãŸã¯æ“作を実行ã™ã‚‹ãŸã‚ã«å¿…è¦ãª\fIオペランド\fRを使用ã—ã¾ã™ã€‚
+.SH "æ“作ã®å¼•æ•°"
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¼¡¤ÎÁàºî¤Î°ú¿ô¤Î¤¤¤º¤ì¤«¤ò»ØÄꤷ¤Æ¼Â¹Ô¤µ¤ì¤ëÁàºî¤òÁªÂò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¾¤Î1ʸ»ú¤Î¥ª¥×¥·¥ç¥ó¤Èº®ºß¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢Ä̾Áàºî¤Î°ú¿ô¤Ï»ØÄꤵ¤ì¤ëºÇ½é¤Î°ú¿ô¤Ç¤¹¡£
+\fIjar\fRコマンドを使用ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®æ“作ã®å¼•æ•°ã®ã„ãšã‚Œã‹ã‚’指定ã—ã¦å®Ÿè¡Œã•ã‚Œã‚‹æ“作をé¸æŠžã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ä»–ã®1文字ã®ã‚ªãƒ—ションã¨æ··åœ¨ã•ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€é€šå¸¸ã€æ“作ã®å¼•æ•°ã¯æŒ‡å®šã•ã‚Œã‚‹æœ€åˆã®å¼•æ•°ã§ã™ã€‚
 .PP
 c
 .RS 4
-¿·¤·¤¤JAR¥¢¡¼¥«¥¤¥Ö¤òºîÀ®¤·¤Þ¤¹¡£
+æ–°ã—ã„JARアーカイブを作æˆã—ã¾ã™ã€‚
 .RE
 .PP
 i
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤Îº÷°ú¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£
+JARアーカイブã®ç´¢å¼•æƒ…報を生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 t
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤Î¥³¥ó¥Æ¥ó¥Ä¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£
+JARアーカイブã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„をリストã—ã¾ã™ã€‚
 .RE
 .PP
 u
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤ò¹¹¿·¤·¤Þ¤¹¡£
+JARアーカイブを更新ã—ã¾ã™ã€‚
 .RE
 .PP
 x
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤«¤é¥Õ¥¡¥¤¥ë¤òÃê½Ð¤·¤Þ¤¹¡£
+JARアーカイブã‹ã‚‰ãƒ•ã‚¡ã‚¤ãƒ«ã‚’抽出ã—ã¾ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤òºîÀ®¡¢¹¹¿·¡¢Ãê½Ð¤Þ¤¿¤Ïɽ¼¨¤¹¤ëÊýË¡¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションを使用ã—ã¦ã€JARファイルを作æˆã€æ›´æ–°ã€æŠ½å‡ºã¾ãŸã¯è¡¨ç¤ºã™ã‚‹æ–¹æ³•ã‚’カスタマイズã—ã¾ã™ã€‚
 .PP
 e
 .RS 4
-\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤ë¥¯¥é¥¹¤ò¡¢¼Â¹Ô²ÄǽJAR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤ë¥¹¥¿¥ó¥É¥¢¥í¥óJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤ËÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î\fIMain\-Class\fR°À­Ãͤ¬ºîÀ®¤Þ¤¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Þ¤¹¡£\fIe\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+\fIentrypoint\fRオペランドã§æŒ‡å®šã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã‚’ã€å®Ÿè¡Œå¯èƒ½JARファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã‚‹ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ³Javaアプリケーションã®ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã«è¨­å®šã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®\fIMain\-Class\fR属性値ãŒä½œæˆã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¾ã™ã€‚\fIe\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIMain\&.jar\fR¥¢¡¼¥«¥¤¥Ö¤¬\fIMain\&.class\fR¥Õ¥¡¥¤¥ë¤È¤È¤â¤ËºîÀ®¤µ¤ì¤Þ¤¹¤¬¡¢¤½¤ÎºÝ¡¢¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Î\fIMain\-Class\fR°À­ÃͤÏ\fIMain\fR¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIMain\&.jar\fRアーカイブãŒ\fIMain\&.class\fRファイルã¨ã¨ã‚‚ã«ä½œæˆã•ã‚Œã¾ã™ãŒã€ãã®éš›ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã®\fIMain\-Class\fR属性値ã¯\fIMain\fRã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .if n \{\
 .RE
 .\}
-Java Runtime Environment (JRE)¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¡¢¤³¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òľÀܸƤӽФ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+Java Runtime Environment (JRE)ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¦ã€ã“ã®ã‚¢ãƒ—リケーションを直接呼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -169,7 +169,7 @@
 .if n \{\
 .RE
 .\}
-¤¢¤ë¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ë¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤Î¥¯¥é¥¹Ì¾¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥É¥Ã¥È(\&.)¤Þ¤¿¤Ï¥¹¥é¥Ã¥·¥å(/)¤Î¤¤¤º¤ì¤«¤ò¶èÀÚ¤êʸ»ú¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMain\&.class\fR¤¬\fImydir\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤Ï¼¡¤Î¤¤¤º¤ì¤«¤ÎÊýË¡¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã‚るパッケージ内ã«ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã®ã‚¯ãƒ©ã‚¹åãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ‰ãƒƒãƒˆ(\&.)ã¾ãŸã¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ã®ã„ãšã‚Œã‹ã‚’区切り文字ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMain\&.class\fRãŒ\fImydir\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã¯æ¬¡ã®ã„ãšã‚Œã‹ã®æ–¹æ³•ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,8 +197,8 @@
 allbox tab(:);
 l.
 T{
-Ãí°Õ
-ÆÃÄê¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¤Ë¤â\fIMain\-Class\fR°À­¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë\fIm\fR¥ª¥×¥·¥ç¥ó¤È\fIe\fR¥ª¥×¥·¥ç¥ó¤ÎξÊý¤òƱ»þ¤Ë»ØÄꤹ¤ë¤È¡¢\fIMain\-Class\fR¤Î»ØÄ꤬¤¢¤¤¤Þ¤¤¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¤¢¤¤¤Þ¤¤¤µ¤Ë¤è¤Ã¤Æ¥¨¥é¡¼¤¬È¯À¸¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤ÎºîÀ®¤ä¹¹¿·¤ÎÁàºî¤¬½ªÎ»¤·¤Þ¤¹¡£
+注æ„
+特定ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆã«ã‚‚\fIMain\-Class\fR属性ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã«\fIm\fRオプションã¨\fIe\fRオプションã®ä¸¡æ–¹ã‚’åŒæ™‚ã«æŒ‡å®šã™ã‚‹ã¨ã€\fIMain\-Class\fRã®æŒ‡å®šãŒã‚ã„ã¾ã„ã«ãªã‚Šã¾ã™ã€‚ã“ã®ã‚ã„ã¾ã„ã•ã«ã‚ˆã£ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã€\fIjar\fRコマンドã®ä½œæˆã‚„æ›´æ–°ã®æ“作ãŒçµ‚了ã—ã¾ã™ã€‚
 T}
 .TE
 .sp 1
@@ -208,42 +208,42 @@
 .PP
 f
 .RS 4
-\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢ºîÀ®(\fIc\fR)¡¢¹¹¿·(\fIu\fR)¡¢Ãê½Ð(\fIx\fR)¤Þ¤¿¤Ïɽ¼¨(\fIt\fR)¤µ¤ì¤ëJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤ËÀßÄꤷ¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò¾Êά¤¹¤ë¤È¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¡¢\fIstdin\fR¤«¤é¤ÎJAR¥Õ¥¡¥¤¥ë̾¤ò¼õ¤±Æþ¤ì¤ë¤«(\fIx\fR¤ª¤è¤Ó\fIt\fR¤Î¾ì¹ç)¡¢JAR¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤ËÁ÷¿®¤¹¤ë¤³¤È(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤¬»Ø¼¨¤µ¤ì¤Þ¤¹¡£
+\fIjarfile\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ä½œæˆ(\fIc\fR)ã€æ›´æ–°(\fIu\fR)ã€æŠ½å‡º(\fIx\fR)ã¾ãŸã¯è¡¨ç¤º(\fIt\fR)ã•ã‚Œã‚‹JARファイルã®åå‰ã«è¨­å®šã—ã¾ã™ã€‚\fIf\fRオプションãŠã‚ˆã³\fIjarfile\fRオペランドをçœç•¥ã™ã‚‹ã¨ã€\fIjar\fRコマンドã«ã€\fIstdin\fRã‹ã‚‰ã®JARファイルåã‚’å—ã‘入れるã‹(\fIx\fRãŠã‚ˆã³\fIt\fRã®å ´åˆ)ã€JARファイルを\fIstdout\fRã«é€ä¿¡ã™ã‚‹ã“ã¨(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ãŒæŒ‡ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 m
 .RS 4
-(\fIMETA\-INF/MANIFEST\&.MF\fR¤Î¥¢¡¼¥«¥¤¥Ö¤Ë¤¢¤ë)
-\fIjar\fR¥³¥Þ¥ó¥É¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤«¤é¡¢Â°À­¤Î̾Á°¤ÈÃͤΥڥ¢¤ò´Þ¤á¤Þ¤¹¡£\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢Æ±¤¸Ì¾Á°¤Î¥¨¥ó¥È¥ê¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¤ò½ü¤­¡¢Â°À­¤Î̾Á°¤ÈÃͤòJAR¥Õ¥¡¥¤¥ë¤ËÄɲä·¤Þ¤¹¡£Æ±¤¸Ì¾Á°¤Î¥¨¥ó¥È¥ê¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï°À­¤ÎÃͤò¹¹¿·¤·¤Þ¤¹¡£\fIm\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+(\fIMETA\-INF/MANIFEST\&.MF\fRã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«ã‚ã‚‹)
+\fIjar\fRコマンドã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®\fImanifest\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ã€å±žæ€§ã®åå‰ã¨å€¤ã®ãƒšã‚¢ã‚’å«ã‚ã¾ã™ã€‚\fIjar\fRコマンドã¯ã€åŒã˜åå‰ã®ã‚¨ãƒ³ãƒˆãƒªãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã‚’除ãã€å±žæ€§ã®åå‰ã¨å€¤ã‚’JARファイルã«è¿½åŠ ã—ã¾ã™ã€‚åŒã˜åå‰ã®ã‚¨ãƒ³ãƒˆãƒªãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã€\fIjar\fRコマンドã¯å±žæ€§ã®å€¤ã‚’æ›´æ–°ã—ã¾ã™ã€‚\fIm\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï´Þ¤Þ¤ì¤Ê¤¤¥Þ¥Ë¥Õ¥§¥¹¥È¤Ë¡¢ÆÃÊ̤ÊÌÜŪ¤Î̾Á°\-ÃͤΰÀ­¥Ú¥¢¤òÄɲäǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ù¥ó¥À¡¼¾ðÊó¡¢¥ê¥ê¡¼¥¹¾ðÊ󡢥ѥ屡¼¥¸¡¦¥·¡¼¥ê¥ó¥°¤ò»ØÄꤹ¤ë°À­¡¢¤Þ¤¿¤ÏJAR¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô²Äǽ¤Ë¤¹¤ë¤¿¤á¤Î°À­¤òÄɲäǤ­¤Þ¤¹¡£\fIm\fR¥ª¥×¥·¥ç¥ó¤Î»ÈÍÑÎã¤Ï¡¢http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-¥×¥í¥°¥é¥à¤Î¥Ñ¥Ã¥±¡¼¥¸²½¤Ë´Ø¤¹¤ë¹à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯å«ã¾ã‚Œãªã„マニフェストã«ã€ç‰¹åˆ¥ãªç›®çš„ã®åå‰\-値ã®å±žæ€§ãƒšã‚¢ã‚’追加ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ™ãƒ³ãƒ€ãƒ¼æƒ…å ±ã€ãƒªãƒªãƒ¼ã‚¹æƒ…å ±ã€ãƒ‘ッケージ・シーリングを指定ã™ã‚‹å±žæ€§ã€ã¾ãŸã¯JARã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚ŒãŸã‚¢ãƒ—リケーションを実行å¯èƒ½ã«ã™ã‚‹ãŸã‚ã®å±žæ€§ã‚’追加ã§ãã¾ã™ã€‚\fIm\fRオプションã®ä½¿ç”¨ä¾‹ã¯ã€http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+プログラムã®ãƒ‘ッケージ化ã«é–¢ã™ã‚‹é …ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 M
 .RS 4
-¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥¨¥ó¥È¥ê¤òºîÀ®¤·¤Ê¤¤(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤«¡¢¤Þ¤¿¤Ï¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥¨¥ó¥È¥ê¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ïºï½ü¤·¤Þ¤¹(\fIu\fR¤Î¾ì¹ç)¡£\fIM\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+マニフェスト・ファイル・エントリを作æˆã—ãªã„(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ã‹ã€ã¾ãŸã¯ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚¨ãƒ³ãƒˆãƒªãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯å‰Šé™¤ã—ã¾ã™(\fIu\fRã®å ´åˆ)。\fIM\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 n
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)»þ¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Æ¥ó¥Ä¤¬pack200(1)¥³¥Þ¥ó¥É¤Î¥Ñ¥Ã¥¯¤ª¤è¤Ó¥¢¥ó¥Ñ¥Ã¥¯Áàºî¤Î±Æ¶Á¤ò¼õ¤±¤Ê¤¤¤è¤¦¤Ë¥¢¡¼¥«¥¤¥Ö¤òÀµµ¬²½¤·¤Þ¤¹¡£¤³¤ÎÀµµ¬²½¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç¡¢½ð̾ÉÕ¤­JAR¤Î½ð̾¤Ï̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)時ã«ã€ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒpack200(1)コマンドã®ãƒ‘ックãŠã‚ˆã³ã‚¢ãƒ³ãƒ‘ックæ“作ã®å½±éŸ¿ã‚’å—ã‘ãªã„よã†ã«ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã‚’æ­£è¦åŒ–ã—ã¾ã™ã€‚ã“ã®æ­£è¦åŒ–を使用ã—ãªã„å ´åˆã€ç½²å付ãJARã®ç½²åã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 v
 .RS 4
-¾ÜºÙ¤Ê½ÐÎϤòɸ½à½ÐÎϤËÀ¸À®¤·¤Þ¤¹¡£Îã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+詳細ãªå‡ºåŠ›ã‚’標準出力ã«ç”Ÿæˆã—ã¾ã™ã€‚例をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 0
 .RS 4
-(¥¼¥í) ZIP°µ½Ì¤ò»ÈÍѤ·¤Ê¤¤¤ÇJAR¥Õ¥¡¥¤¥ë¤òºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)¤·¤Þ¤¹¡£
+(ゼロ) ZIP圧縮を使用ã—ãªã„ã§JARファイルを作æˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)ã—ã¾ã™ã€‚
 .RE
 .PP
 \-C \fIdir\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fIfile\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î½èÍýÃæ¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤ò°ì»þŪ¤ËÊѹ¹¤·¤Þ¤¹¡£¤³¤ÎÁàºî¤Ï¡¢UNIX
-\fItar\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Î\fI\-C\fR¥ª¥×¥·¥ç¥ó¤ÈƱÍͤˤʤ뤳¤È¤òÌÜŪ¤È¤·¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹¤µ¤ì¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é\fImy\&.jar\fR¤Ë\fIBar\&.class\fR¥Õ¥¡¥¤¥ë¤¬Äɲ䵤ì¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€ã“ã®ã‚ªãƒ—ションã¯\fIfile\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ä¸­ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’一時的ã«å¤‰æ›´ã—ã¾ã™ã€‚ã“ã®æ“作ã¯ã€UNIX
+\fItar\fRユーティリティã®\fI\-C\fRオプションã¨åŒæ§˜ã«ãªã‚‹ã“ã¨ã‚’目的ã¨ã—ã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fIclasses\fRディレクトリã«å¤‰æ›´ã•ã‚Œã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰\fImy\&.jar\fRã«\fIBar\&.class\fRファイルãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -254,7 +254,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¡¢classes¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò\fImy\&.jar\fR¤ËÄɲä·¤Þ¤¹(JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤»¤ó)¡£¼¡¤Ë¸µ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÌá¤Ã¤Æ¤«¤é¡¢\fIbin\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¡¢\fIXyz\&.class\fR¤ò\fImy\&.jar\fR¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIclasses\fRディレクトリã«ç§»å‹•ã—ã€classesディレクトリ内ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fImy\&.jar\fRã«è¿½åŠ ã—ã¾ã™(JARファイルã«ã¯\fIclasses\fRディレクトリを作æˆã—ã¾ã›ã‚“)。次ã«å…ƒã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æˆ»ã£ã¦ã‹ã‚‰ã€\fIbin\fRディレクトリã«ç§»å‹•ã—ã€\fIXyz\&.class\fRã‚’\fImy\&.jar\fRã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -265,7 +265,7 @@
 .if n \{\
 .RE
 .\}
-\fIclasses\fR¤Ë\fIbar1\fR¥Õ¥¡¥¤¥ë¤È\fIbar2\fR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢Á°½Ò¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¼¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+\fIclasses\fRã«\fIbar1\fRファイルã¨\fIbar2\fRファイルãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ãŸå¾Œã€JARファイルã«ã¯æ¬¡ã®ã‚‚ã®ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -285,41 +285,41 @@
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤷ¤¿JVM¥ª¥×¥·¥ç¥ó¤ò¡¢JRE¤¬JAR¥Õ¥¡¥¤¥ë¤ò¼Â¹Ô¤¹¤ëºÝ¤Ë»ÈÍѤ¹¤ë¤è¤¦¤ËÀßÄꤷ¤Þ¤¹¡£JVM¥ª¥×¥·¥ç¥ó¤Ï¡¢java(1)¥³¥Þ¥ó¥É¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+指定ã—ãŸJVMオプションをã€JREãŒJARファイルを実行ã™ã‚‹éš›ã«ä½¿ç”¨ã™ã‚‹ã‚ˆã†ã«è¨­å®šã—ã¾ã™ã€‚JVMオプションã¯ã€java(1)コマンドã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã§èª¬æ˜Žã•ã‚Œã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "¥ª¥Ú¥é¥ó¥É"
+.SH "オペランド"
 .PP
-¼¡¤Î¥ª¥Ú¥é¥ó¥É¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Çǧ¼±¤µ¤ì¤Þ¤¹¡£
+次ã®ã‚ªãƒšãƒ©ãƒ³ãƒ‰ã¯ã€\fIjar\fRコマンドã§èªè­˜ã•ã‚Œã¾ã™ã€‚
 .PP
 \fIfile\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fIfile\fR¥ª¥Ú¥é¥ó¥É¤Ï¡¢¥¢¡¼¥«¥¤¥Ö¤ËÄɲ乤ëɬÍפΤ¢¤ë¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ñ¥¹¤È̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤ÎÃê½Ð(\fIx\fR)¤Þ¤¿¤Ï¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È(\fIt\fR)»þ¤Ë¡¢\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ÏÃê½Ð¤Þ¤¿¤Ï¥ê¥¹¥È¤¹¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£¾¯¤Ê¤¯¤È¤â1¤Ä¤ÎÍ­¸ú¤Ê¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Ê£¿ô¤Î\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ò¶õÇò¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fIentrypoint\fR¡¢\fIjarfile\fR¤Þ¤¿¤Ï\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¤Ï¡¢¤½¤Î¸å¤Ë\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fIfile\fRオペランドã¯ã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«è¿½åŠ ã™ã‚‹å¿…è¦ã®ã‚るファイルã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒ‘スã¨åå‰ã‚’定義ã—ã¾ã™ã€‚JARファイルã®æŠ½å‡º(\fIx\fR)ã¾ãŸã¯ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ(\fIt\fR)時ã«ã€\fIfile\fRオペランドã¯æŠ½å‡ºã¾ãŸã¯ãƒªã‚¹ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘スã¨åå‰ã‚’定義ã—ã¾ã™ã€‚å°‘ãªãã¨ã‚‚1ã¤ã®æœ‰åŠ¹ãªãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚複数ã®\fIfile\fRオペランドを空白ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fIentrypoint\fRã€\fIjarfile\fRã¾ãŸã¯\fImanifest\fRオペランドãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã¯ã€ãã®å¾Œã«\fIfile\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIentrypoint\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤Ï¡¢¼Â¹Ô²ÄǽJAR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤Æ¤¤¤ë¥¹¥¿¥ó¥É¥¢¥í¥óJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤È¤Ê¤ë¥¯¥é¥¹¤Î̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£\fIe\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fIentrypoint\fRオペランドã¯ã€å®Ÿè¡Œå¯èƒ½JARファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã¦ã„るスタンドアロンJavaアプリケーションã®ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã¨ãªã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’定義ã—ã¾ã™ã€‚\fIe\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fIentrypoint\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIjarfile\fR
 .RS 4
-ºîÀ®(\fIc\fR)¡¢¹¹¿·(\fIu\fR)¡¢Ãê½Ð(\fIx\fR)¤Þ¤¿¤Ïɽ¼¨(\fIt\fR)¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò¾Êά¤¹¤ë¤È¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¡¢\fIstdin\fR¤«¤é¤ÎJAR¥Õ¥¡¥¤¥ë̾¤ò¼õ¤±Æþ¤ì¤ë¤«(\fIx\fR¤ª¤è¤Ó\fIt\fR¤Î¾ì¹ç)¡¢JAR¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤ËÁ÷¿®¤¹¤ë¤³¤È(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤¬»Ø¼¨¤µ¤ì¤Þ¤¹¡£
+作æˆ(\fIc\fR)ã€æ›´æ–°(\fIu\fR)ã€æŠ½å‡º(\fIx\fR)ã¾ãŸã¯è¡¨ç¤º(\fIt\fR)ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’定義ã—ã¾ã™ã€‚\fIf\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fIjarfile\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIf\fRオプションãŠã‚ˆã³\fIjarfile\fRオペランドをçœç•¥ã™ã‚‹ã¨ã€\fIjar\fRコマンドã«ã€\fIstdin\fRã‹ã‚‰ã®JARファイルåã‚’å—ã‘入れるã‹(\fIx\fRãŠã‚ˆã³\fIt\fRã®å ´åˆ)ã€JARファイルを\fIstdout\fRã«é€ä¿¡ã™ã‚‹ã“ã¨(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ãŒæŒ‡ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤òº÷°úÉÕ¤±(\fIi\fR)¤¹¤ë¾ì¹ç¤Ï¡¢\fIf\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルを索引付ã‘(\fIi\fR)ã™ã‚‹å ´åˆã¯ã€\fIf\fRオプションを指定ã—ãªã„ã§\fIjarfile\fRオペランドを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \fImanifest\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ÏJAR¥Õ¥¡¥¤¥ë¤Î\fIMANIFEST\&.MF\fR¤Ë´Þ¤á¤ë°À­¤Î̾Á°¤ÈÃͤò»ý¤Ä´û¸¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤òÄêµÁ¤·¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fImanifest\fRオペランドã¯JARファイルã®\fIMANIFEST\&.MF\fRã«å«ã‚る属性ã®åå‰ã¨å€¤ã‚’æŒã¤æ—¢å­˜ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’定義ã—ã¾ã™ã€‚\fIf\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fImanifest\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fI@arg\-file\fR
 .RS 4
-\fIjar\fR¥³¥Þ¥ó¥É¤òû½Ì¤Þ¤¿¤Ï´ÊÁDz½¤¹¤ë¤Ë¤Ï¡¢Ê̤Υƥ­¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤ò»ØÄꤷ¡¢ÀÜƬ¼­¤È¤·¤Æ¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤òÉÕ¤±¤Æ\fIjar\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯Ê¸»ú¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjar\fRコマンドを短縮ã¾ãŸã¯ç°¡ç´ åŒ–ã™ã‚‹ã«ã¯ã€åˆ¥ã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¼•æ•°ã‚’指定ã—ã€æŽ¥é ­è¾žã¨ã—ã¦ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)を付ã‘ã¦\fIjar\fRコマンドã«æ¸¡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjar\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯æ–‡å­—ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .sp
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤È°ú¿ô(°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤µ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤ë\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤Ï¡¢¶õÇò¤Þ¤¿¤Ï²þ¹Ôʸ»ú¤Ç¶èÀڤ뤳¤È¤¬¤Ç¤­¤Þ¤¹¡£°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ·¤ÆÁêÂÐŪ¤Ç¤¢¤ê¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î¾ì½ê¤ËÂФ·¤Æ¤ÏÁêÂÐŪ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£Ä̾ï¤Ï¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥§¥ë¤Ë¤è¤Ã¤ÆŸ³«¤µ¤ì¤ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ê¤É¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÏŸ³«¤µ¤ì¤Þ¤»¤ó¡£
+引数ファイルã«ã¯ã€\fIjar\fRコマンドã®ã‚ªãƒ—ションã¨å¼•æ•°(引数ファイルをサãƒãƒ¼ãƒˆã—ãªã„起動ツールã«æ¸¡ã•ã‚Œã‚‹\fI\-J\fRオプションを除ã)ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ファイル内ã®å¼•æ•°ã¯ã€ç©ºç™½ã¾ãŸã¯æ”¹è¡Œæ–‡å­—ã§åŒºåˆ‡ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€\fIjar\fRコマンドを実行ã§ãã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¯¾ã—ã¦ç›¸å¯¾çš„ã§ã‚ã‚Šã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®å ´æ‰€ã«å¯¾ã—ã¦ã¯ç›¸å¯¾çš„ã§ã¯ã‚ã‚Šã¾ã›ã‚“。通常ã¯ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦å±•é–‹ã•ã‚Œã‚‹ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ãªã©ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã¯å±•é–‹ã•ã‚Œã¾ã›ã‚“。
 .sp
-¼¡¤ÎÎã¤Ï¡¢\fIfind\fR¥³¥Þ¥ó¥É¤Ë¤è¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê½ÐÎϤ«¤é¤Î¥Õ¥¡¥¤¥ë̾¤Ç\fIclasses\&.list\fR¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã¯ã€\fIfind\fRコマンドã«ã‚ˆã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå‡ºåŠ›ã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«åã§\fIclasses\&.list\fRファイルを作æˆã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -330,7 +330,7 @@
 .if n \{\
 .RE
 .\}
-\fIjar\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢\fI@arg\-file\fR¹½Ê¸¤ò»ÈÍѤ·¤Æ\fIclasses\&.list\fR¥Õ¥¡¥¤¥ë¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIjar\fRコマンドを実行ã—ã€\fI@arg\-file\fR構文を使用ã—ã¦\fIclasses\&.list\fRファイルを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -341,7 +341,7 @@
 .if n \{\
 .RE
 .\}
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢ÁêÂХѥ¹¤¬µ­½Ò¤µ¤ì¤¿°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢ÅϤµ¤ì¤¿¥Ñ¥¹¤ËÂФ·¤ÆÁêÂÐŪ¤Ç¤Ï¤Ê¤¯¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Î¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ç›¸å¯¾ãƒ‘スãŒè¨˜è¿°ã•ã‚ŒãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€æ¸¡ã•ã‚ŒãŸãƒ‘スã«å¯¾ã—ã¦ç›¸å¯¾çš„ã§ã¯ãªãã€\fIjar\fRコマンドã®ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -353,9 +353,9 @@
 .RE
 .\}
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-\fIe\fR¡¢\fIf\fR¤ª¤è¤Ó\fIm\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIentrypoint\fR¡¢\fIjarfile\fR¤ª¤è¤Ó\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ÈƱ¤¸½ç½ø¤Ç¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë½Ð¸½¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIe\fRã€\fIf\fRãŠã‚ˆã³\fIm\fRオプションã¯ã€\fIentrypoint\fRã€\fIjarfile\fRãŠã‚ˆã³\fImanifest\fRオペランドã¨åŒã˜é †åºã§ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«å‡ºç¾ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -366,9 +366,9 @@
 .if n \{\
 .RE
 .\}
-.SH "Îã"
+.SH "例"
 .PP
-\fBExample 1\fR, ¾éĹ¤Ê½ÐÎϤˤè¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ÎÄɲÃ
+\fBExample 1\fR, 冗長ãªå‡ºåŠ›ã«ã‚ˆã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®è¿½åŠ 
 .RS 4
 .sp
 .if n \{\
@@ -396,7 +396,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¥Õ¥¡¥¤¥ë¤ÎÄɲÃ
+\fBExample 2\fR, サブディレクトリã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®è¿½åŠ 
 .RS 4
 .sp
 .if n \{\
@@ -427,7 +427,7 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, JAR¤Î¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È
+\fBExample 3\fR, JARã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ
 .RS 4
 .sp
 .if n \{\
@@ -460,9 +460,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, º÷°ú¤ÎÄɲÃ
+\fBExample 4\fR, 索引ã®è¿½åŠ 
 .RS 4
-³ô¼°¼è°ú¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÁê¸ß°Í¸¥¯¥é¥¹¤ò¡¢\fImain\&.jar\fR¡¢\fIbuy\&.jar\fR¤ª¤è¤Ó\fIsell\&.jar\fR¤Î3¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤¹¤ë¾ì¹ç¡¢\fIi\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fImain\&.jar\fR¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Î\fIClass\-Path\fR°À­¤ò»ØÄꤹ¤ë¾ì¹ç¡¢\fIi\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥É¤Î®ÅÙ¤ò¸þ¾å¤Ç¤­¤Þ¤¹¡£
+æ ªå¼å–引ã®ã‚¢ãƒ—リケーションã®ç›¸äº’ä¾å­˜ã‚¯ãƒ©ã‚¹ã‚’ã€\fImain\&.jar\fRã€\fIbuy\&.jar\fRãŠã‚ˆã³\fIsell\&.jar\fRã®3ã¤ã®JARファイルã«åˆ†å‰²ã™ã‚‹å ´åˆã€\fIi\fRオプションを使用ã—ã¾ã™ã€‚\fImain\&.jar\fRマニフェスト内ã®\fIClass\-Path\fR属性を指定ã™ã‚‹å ´åˆã€\fIi\fRオプションを使用ã—ã¦ã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ‰ã®é€Ÿåº¦ã‚’å‘上ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -474,9 +474,9 @@
 .if n \{\
 .RE
 .\}
-\fIINDEX\&.LIST\fR¥Õ¥¡¥¤¥ë¤¬\fIMETA\-INF\fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÁÞÆþ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ë¤è¤Ã¤Æ¥¯¥é¥¹¤Þ¤¿¤Ï¥ê¥½¡¼¥¹¤Î¸¡º÷¤¬¹Ô¤ï¤ì¤ë¤È¤­¤Ë¡¢»ØÄꤷ¤¿JAR¥Õ¥¡¥¤¥ë¤¬¥À¥¦¥ó¥í¡¼¥É¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIINDEX\&.LIST\fRファイルãŒ\fIMETA\-INF\fRディレクトリã«æŒ¿å…¥ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã«ã‚ˆã£ã¦ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒªã‚½ãƒ¼ã‚¹ã®æ¤œç´¢ãŒè¡Œã‚れるã¨ãã«ã€æŒ‡å®šã—ãŸJARファイルãŒãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ðÊó¤ò»ÈÍѤ·¤Æ¡¢¸úΨŪ¤Ë¥¯¥é¥¹¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ò¥³¥Ô¡¼¤¹¤ë¤Ë¤Ï¡¢ºÇ½é¤Ë\fIdir1\fRÆâ¤Î¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤Ë°µ½Ì¤·¤Æ¤«¤é¡¢\fIstdin\fR¤«¤é\fIdir2\fR¤Ë¥Ñ¥¤¥×¥é¥¤¥ó¤òºîÀ®¤·¤ÆÃê½Ð¤·¤Þ¤¹(\fI\-f\fR¥ª¥×¥·¥ç¥ó¤ÏξÊý¤Î\fIjar\fR¥³¥Þ¥ó¥É¤Ç¾Êά¤·¤Þ¤¹)¡£
+アプリケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã•ã‚Œã¦ã„る情報を使用ã—ã¦ã€åŠ¹çŽ‡çš„ã«ã‚¯ãƒ©ã‚¹ã‚’ロードã—ã¾ã™ã€‚ディレクトリをコピーã™ã‚‹ã«ã¯ã€æœ€åˆã«\fIdir1\fR内ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fIstdout\fRã«åœ§ç¸®ã—ã¦ã‹ã‚‰ã€\fIstdin\fRã‹ã‚‰\fIdir2\fRã«ãƒ‘イプラインを作æˆã—ã¦æŠ½å‡ºã—ã¾ã™(\fI\-f\fRオプションã¯ä¸¡æ–¹ã®\fIjar\fRコマンドã§çœç•¥ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -488,7 +488,7 @@
 .RE
 .\}
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -509,8 +509,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-Java¥Á¥å¡¼¥È¥ê¥¢¥ë¤ÎJAR¤Ë´Ø¤¹¤ë¹à
+http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+Javaãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã®JARã«é–¢ã™ã‚‹é …
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/jarsigner.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jarsigner.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jarsigner
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jarsigner" "1" "2013ǯ11·î21Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "jarsigner" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jarsigner \- Java¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ½ð̾¤ª¤è¤Ó¸¡¾Ú¤ò¹Ô¤¤¤Þ¤¹¡£
-.SH "³µÍ×"
+jarsigner \- Javaアーカイブ(JAR)ファイルã«å¯¾ã—ã¦ç½²åãŠã‚ˆã³æ¤œè¨¼ã‚’è¡Œã„ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,30 +74,30 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verify
 .RS 4
-\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ë̾¤Î¸å¤Ë0¸Ä°Ê¾å¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ½ð̾ÉÕ¤­¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸¡¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬¡¢¤¤¤º¤ì¤«¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤Ë°ìÃפ¹¤ë¤³¤È¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ÊÌ̾¤Ï¡¢\fI\-keystore\fR¤Ç»ØÄꤵ¤ì¤¿¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢Æâ¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£
+\fI\-verify\fRオプションã§ã¯ã€JARファイルåã®å¾Œã«0個以上ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åを指定ã§ãã¾ã™ã€‚\fI\-verify\fRオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€\fIjarsigner\fRコマンドã§ã¯ã€JARファイル内ã®å„ç½²å付ãエンティティã®æ¤œè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒã€ã„ãšã‚Œã‹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åã«ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚別åã¯ã€\fI\-keystore\fRã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢¥á¥Ã¥»¡¼¥¸¡Öjar¤¬¸¡¾Ú¤µ¤ì¤Þ¤·¤¿¡£½ð̾¼Ô¥¨¥é¡¼¡×¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fI\-strict\fRオプションも指定ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€ŒjarãŒæ¤œè¨¼ã•ã‚Œã¾ã—ãŸã€‚ç½²å者エラーã€ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIjar\-file\fR
 .RS 4
-½ð̾¤µ¤ì¤ëJAR¥Õ¥¡¥¤¥ë¡£
+ç½²åã•ã‚Œã‚‹JARファイル。
 .sp
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢¥á¥Ã¥»¡¼¥¸¡Öjar¤Ï½ð̾¤µ¤ì¤Þ¤·¤¿ \- ½ð̾¼Ô¥¨¥é¡¼¤¬¤¢¤ê¤Þ¤¹¡£¡×¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fI\-strict\fRオプションも指定ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€Œjarã¯ç½²åã•ã‚Œã¾ã—㟠\- ç½²å者エラーãŒã‚ã‚Šã¾ã™ã€‚ã€ã¨ã„ã†ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIalias\fR
 .RS 4
-ÊÌ̾¤Ï¡¢\fI\-keystore\fR¤Ç»ØÄꤵ¤ì¤¿¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢Æâ¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£
+別åã¯ã€\fI\-keystore\fRã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjarsigner\fR¥Ä¡¼¥ë¤Ë¤Ï¡¢¼¡¤Î2¤Ä¤ÎÌÜŪ¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjarsigner\fRツールã«ã¯ã€æ¬¡ã®2ã¤ã®ç›®çš„ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -107,7 +107,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëÌÜŪ¡£
+Javaアーカイブ(JAR)ファイルã«ç½²åã™ã‚‹ç›®çš„。
 .RE
 .sp
 .RS 4
@@ -118,12 +118,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ÈÀ°¹çÀ­¤ò¸¡¾Ú¤¹¤ëÌÜŪ¡£
+ç½²å付ãJARファイルã®ç½²åã¨æ•´åˆæ€§ã‚’検証ã™ã‚‹ç›®çš„。
 .RE
 .PP
-JARµ¡Ç½¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥¤¥á¡¼¥¸¡¢¥µ¥¦¥ó¥É¤ª¤è¤Ó¤½¤Î¾¤Î¥Ç¥¸¥¿¥ë¡¦¥Ç¡¼¥¿¤òñ°ì¤Î¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸²½¤Ç¤­¤ë¤Î¤Ç¡¢¥Õ¥¡¥¤¥ë¤ò¿×®¤«¤ÄÍưפËÇÛÉۤǤ­¤Þ¤¹¡£\fIjar\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¡¢³«È¯¼Ô¤ÏJAR¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£(µ»½ÑŪ¤Ê´ÑÅÀ¤«¤é¸À¤¨¤Ð¡¢¤¹¤Ù¤Æ¤ÎZIP¥Õ¥¡¥¤¥ë¤âJAR¥Õ¥¡¥¤¥ë¤È¤ß¤Ê¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ½èÍý¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£)
+JAR機能を使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ã‚µã‚¦ãƒ³ãƒ‰ãŠã‚ˆã³ãã®ä»–ã®ãƒ‡ã‚¸ã‚¿ãƒ«ãƒ»ãƒ‡ãƒ¼ã‚¿ã‚’å˜ä¸€ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ãƒ‘ッケージ化ã§ãã‚‹ã®ã§ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’迅速ã‹ã¤å®¹æ˜“ã«é…布ã§ãã¾ã™ã€‚\fIjar\fRã¨ã„ã†åå‰ã®ãƒ„ールを使用ã—ã¦ã€é–‹ç™ºè€…ã¯JARファイルを作æˆã§ãã¾ã™ã€‚(技術的ãªè¦³ç‚¹ã‹ã‚‰è¨€ãˆã°ã€ã™ã¹ã¦ã®ZIPファイルもJARファイルã¨ã¿ãªã™ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€\fIjar\fRコマンドã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸJARファイルã€ã¾ãŸã¯\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦å‡¦ç†ã•ã‚ŒãŸJARファイルã«ã¯ã€\fIMETA\-INF/MANIFEST\&.MF\fRファイルもå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚)
 .PP
-¥Ç¥¸¥¿¥ë½ð̾¤Ï¡¢¤Ê¤ó¤é¤«¤Î¥Ç¡¼¥¿(½ð̾¤ÎÂоݤȤʤë¥Ç¡¼¥¿)¡¢¤ª¤è¤Ó¥¨¥ó¥Æ¥£¥Æ¥£(¿Í¡¢²ñ¼Ò¤Ê¤É)¤ÎÈëÌ©¸°¤«¤é·×»»¤µ¤ì¤ë¥Ó¥Ã¥È¤Îʸ»úÎó¤Ç¤¹¡£¼ê½ñ¤­¤Î½ð̾ƱÍÍ¡¢¥Ç¥¸¥¿¥ë½ð̾¤Ë¤Ï¿¤¯¤ÎÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
+デジタル署åã¯ã€ãªã‚“らã‹ã®ãƒ‡ãƒ¼ã‚¿(ç½²åã®å¯¾è±¡ã¨ãªã‚‹ãƒ‡ãƒ¼ã‚¿)ã€ãŠã‚ˆã³ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£(人ã€ä¼šç¤¾ãªã©)ã®ç§˜å¯†éµã‹ã‚‰è¨ˆç®—ã•ã‚Œã‚‹ãƒ“ットã®æ–‡å­—列ã§ã™ã€‚手書ãã®ç½²ååŒæ§˜ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã«ã¯å¤šãã®åˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -133,7 +133,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾¤ÎÀ¸À®¤Ë»ÈÍѤµ¤ì¤¿ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤ò»ÈÍѤ¹¤ë·×»»¤Ë¤è¤Ã¤Æ¡¢¤½¤ì¤¬ËÜʪ¤Ç¤¢¤ë¤³¤È¤ò¸¡¾Ú¤Ç¤­¤Þ¤¹¡£
+ç½²åã®ç”Ÿæˆã«ä½¿ç”¨ã•ã‚ŒãŸç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’使用ã™ã‚‹è¨ˆç®—ã«ã‚ˆã£ã¦ã€ãã‚ŒãŒæœ¬ç‰©ã§ã‚ã‚‹ã“ã¨ã‚’検証ã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -144,7 +144,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ÈëÌ©¸°¤¬Â¾¿Í¤ËÃΤé¤ì¤Ê¤¤¸Â¤ê¡¢¥Ç¥¸¥¿¥ë½ð̾¤Îµ¶Â¤¤ÏÉÔ²Äǽ¤Ç¤¹¡£
+秘密éµãŒä»–人ã«çŸ¥ã‚‰ã‚Œãªã„é™ã‚Šã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã®å½é€ ã¯ä¸å¯èƒ½ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -155,7 +155,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤³¤ì¤Ï¡¢½ð̾¤¬ÉÕ¤¤¤¿¥Ç¡¼¥¿¤Îµ¡Ç½¤Ç¤¢¤ê¡¢Â¾¤Î¥Ç¡¼¥¿¤Î½ð̾¤È¤Ê¤ë¤è¤¦¤ËÍ×µá¤Ç¤­¤Þ¤»¤ó¡£
+ã“ã‚Œã¯ã€ç½²åãŒä»˜ã„ãŸãƒ‡ãƒ¼ã‚¿ã®æ©Ÿèƒ½ã§ã‚ã‚Šã€ä»–ã®ãƒ‡ãƒ¼ã‚¿ã®ç½²åã¨ãªã‚‹ã‚ˆã†ã«è¦æ±‚ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -166,27 +166,27 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾ÉÕ¤­¥Ç¡¼¥¿¤ÏÊѹ¹¤Ç¤­¤Þ¤»¤ó¡£¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç¡¢½ð̾¤Ë¤è¤Ã¤ÆËÜʪ¤Ç¤¢¤ë¤È¸¡¾Ú¤Ç¤­¤Þ¤»¤ó¡£
+ç½²å付ãデータã¯å¤‰æ›´ã§ãã¾ã›ã‚“。データãŒå¤‰æ›´ã•ã‚ŒãŸå ´åˆã€ç½²åã«ã‚ˆã£ã¦æœ¬ç‰©ã§ã‚ã‚‹ã¨æ¤œè¨¼ã§ãã¾ã›ã‚“。
 .RE
 .PP
-¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¨¥ó¥Æ¥£¥Æ¥£¤Î½ð̾¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¤Þ¤º¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´ØÏ¢¤¹¤ë¸ø³«¸°/ÈëÌ©¸°¤Î¥Ú¥¢¤È¡¢¸ø³«¸°¤òǧ¾Ú¤¹¤ë1¤Ä°Ê¾å¤Î¾ÚÌÀ½ñ¤ò»ý¤ÄɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Ç¡¢Ê̤Υ¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤¬ÆÃÄê¤ÎÃͤò»ý¤Ä¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+ファイルã«å¯¾ã—ã¦ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç½²åを生æˆã™ã‚‹ã«ã¯ã€ã¾ãšã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«é–¢é€£ã™ã‚‹å…¬é–‹éµ/秘密éµã®ãƒšã‚¢ã¨ã€å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹1ã¤ä»¥ä¸Šã®è¨¼æ˜Žæ›¸ã‚’æŒã¤å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚証明書ã¨ã¯ã€ã‚るエンティティã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã§ã€åˆ¥ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµãŒç‰¹å®šã®å€¤ã‚’æŒã¤ã“ã¨ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤«¤é¤Î¸°¤È¾ÚÌÀ½ñ¾ðÊó¤ò»ÈÍѤ·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤òÀ¸À®¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢ÈëÌ©¸°¡¢¤ª¤è¤ÓÂбþ¤¹¤ë¸ø³«¸°¤òǧ¾Ú¤¹¤ë¡¢ÈëÌ©¸°¤Ë´ØÏ¢¤·¤¿X\&.509¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢¤òºîÀ®¤ª¤è¤Ó´ÉÍý¤·¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®éµã¨è¨¼æ˜Žæ›¸æƒ…報を使用ã—ã¦ã€JARファイルã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを生æˆã—ã¾ã™ã€‚キーストアã¯ã€ç§˜å¯†éµã€ãŠã‚ˆã³å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã€ç§˜å¯†éµã«é–¢é€£ã—ãŸX\&.509証明書ãƒã‚§ãƒ¼ãƒ³ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã§ã™ã€‚\fIkeytool\fRコマンドを使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆãŠã‚ˆã³ç®¡ç†ã—ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ½ð̾¤òÀ¸À®¤·¤Þ¤¹¡£½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Æäˡ¢¥Õ¥¡¥¤¥ë¤Ø¤Î½ð̾¤Ë»ÈÍѤ¹¤ëÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤Î¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Î¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÆâÉô(½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ëÆâ)¤Î¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤ò¸¡¾Ú¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã§ã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã‚’使用ã—ã¦ç½²åを生æˆã—ã¾ã™ã€‚ç½²å付ãJARファイルã«ã¯ã€ç‰¹ã«ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã®ã‚³ãƒ”ーãŒå«ã¾ã‚Œã¾ã™ã€‚\fIjarsigner\fRコマンドã§ã¯ã€å†…部(ç½²åブロック・ファイル内)ã®è¨¼æ˜Žæ›¸ã‚’使用ã—ã¦ã€ç½²å付ãJARファイルã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを検証ã§ãã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢½ð̾¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü´ÖÃæ¤ËJAR¥Õ¥¡¥¤¥ë¤¬½ð̾¤µ¤ì¤¿¤µ¤ì¤¿¤«¤É¤¦¤«¤ò¥·¥¹¥Æ¥à¤ä¥Ç¥×¥í¥¤¥ä(Java Plug\-in¤ò´Þ¤à)¤¬¥Á¥§¥Ã¥¯¤Ç¤­¤ë¡¢¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤à½ð̾¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¤µ¤é¤Ë¡¢API¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¥¿¥¤¥à¥¹¥¿¥ó¥×¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã§ã¯ã€ç½²å証明書ã®æœ‰åŠ¹æœŸé–“中ã«JARファイルãŒç½²åã•ã‚ŒãŸã•ã‚ŒãŸã‹ã©ã†ã‹ã‚’システムやデプロイヤ(Java Plug\-inã‚’å«ã‚€)ãŒãƒã‚§ãƒƒã‚¯ã§ãã‚‹ã€ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã‚€ç½²åを生æˆã§ãã¾ã™ã€‚ã•ã‚‰ã«ã€APIを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã§ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—情報をå–å¾—ã§ãã¾ã™ã€‚
 .PP
-¸½»þÅÀ¤Ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Þ¤¿¤ÏZIP¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤Î¤ß¤Ë½ð̾¤Ç¤­¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤ÏZIP¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤â´Þ¤Þ¤ì¤Æ¤¤¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆZIP¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëºÝ¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+ç¾æ™‚点ã§ã¯ã€\fIjarsigner\fRコマンドã§ã¯ã€\fIjar\fRコマンドã¾ãŸã¯ZIPファイルã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸJARファイルã®ã¿ã«ç½²åã§ãã¾ã™ã€‚JARファイルã¯ZIPファイルã¨åŒã˜ã§ã™ãŒã€JARファイルã«ã¯\fIMETA\-INF/MANIFEST\&.MF\fRファイルもå«ã¾ã‚Œã¦ã„る点ãŒç•°ãªã‚Šã¾ã™ã€‚\fIMETA\-INF/MANIFEST\&.MF\fRファイルã¯ã€\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦ZIPファイルã«ç½²åã™ã‚‹éš›ã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î\fIjarsigner\fR¥³¥Þ¥ó¥É¤ÎÆ°ºî¤Ç¤Ï¡¢JAR¤Þ¤¿¤ÏZIP¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+デフォルトã®\fIjarsigner\fRコマンドã®å‹•ä½œã§ã¯ã€JARã¾ãŸã¯ZIPファイルã«ç½²åã—ã¾ã™ã€‚\fI\-verify\fRオプションを使用ã—ã¦ã€ç½²å付ãJARファイルを検証ã—ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤Î¸å¤Ë½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤Î¸¡¾Ú¤â»î¹Ô¤·¤Þ¤¹¡£¸¡¾Ú¥¨¥é¡¼¤Þ¤¿¤Ï¤½¤Î¾¤ÎÌäÂ꤬ȯÀ¸¤¹¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¥¨¥é¡¼¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£¥¨¥é¡¼¤È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾"
+\fIjarsigner\fRコマンドã¯ã€ç½²åã¾ãŸã¯æ¤œè¨¼ã®å¾Œã«ç½²å者ã®è¨¼æ˜Žæ›¸ã®æ¤œè¨¼ã‚‚試行ã—ã¾ã™ã€‚検証エラーã¾ãŸã¯ãã®ä»–ã®å•é¡ŒãŒç™ºç”Ÿã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚エラーã¨è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "キーストアã®åˆ¥å"
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢°ì°Õ¤ÎÊÌ̾¤ò»ÈÍѤ·¤Æ¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤¹¡£
+キーストアã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ä¸€æ„ã®åˆ¥åを使用ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¤È¤­¤Ï¡¢½ð̾¤ÎÀ¸À®¤ËɬÍפÊÈëÌ©¸°¤ò´Þ¤à¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÊÌ̾¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIworking\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fImystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤Ë´Þ¤Þ¤ì¤ëÊÌ̾\fIduke\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¡¢\fIMyJARFile\&.jar\fR¤È¤¤¤¦Ì¾Á°¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢\fIMyJARFile\&.jar\fR¤Ï½ð̾ÉÕ¤­¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦JARファイルã«ç½²åã™ã‚‹ã¨ãã¯ã€ç½²åã®ç”Ÿæˆã«å¿…è¦ãªç§˜å¯†éµã‚’å«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIworking\fRディレクトリã®\fImystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«å«ã¾ã‚Œã‚‹åˆ¥å\fIduke\fRã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã‚’使用ã—ã¦ã€\fIMyJARFile\&.jar\fRã¨ã„ã†åå‰ã®JARファイルã«ç½²åã—ã¾ã™ã€‚出力ファイルã¯æŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€\fIMyJARFile\&.jar\fRã¯ç½²å付ãã®JARファイルã«ã‚ˆã£ã¦ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -199,36 +199,36 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤¤¤È¡¢ÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£Æ±Íͤˡ¢ÈëÌ©¸°¤â¥­¡¼¥¹¥È¥¢Æâ¤Ç¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Æ¤¤¤ë¤¿¤á¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤Þ¤¿¤Ï»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥È¤¬Êݸ¤µ¤ì¤Æ¤¤¤ë¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¾ì½ê"
+キーストアã¯ãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§æŒ‡å®šã—ãªã„ã¨ã€å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚åŒæ§˜ã«ã€ç§˜å¯†éµã‚‚キーストア内ã§ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€ç§˜å¯†éµã®ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ãƒ‘スワードを指定ã—ã¦ã„ãªã„å ´åˆã€ã¾ãŸã¯æŒ‡å®šã—ãŸãƒ‘スワートãŒä¿å­˜ã•ã‚Œã¦ã„るパスワードã¨åŒã˜ã§ã¯ãªã„å ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
+.SS "キーストアã®å ´æ‰€"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢»ÈÍѤ¹¤ë¥­¡¼¥¹¥È¥¢¤ÎURL¤ò»ØÄꤹ¤ë\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç¡¢\fIuser\&.home\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç·è¤Þ¤ë¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ëÆâ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã«ã¯ã€ä½¿ç”¨ã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®URLを指定ã™ã‚‹\fI\-keystore\fRオプションãŒã‚ã‚Šã¾ã™ã€‚キーストアã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã€\fIuser\&.home\fRシステム・プロパティã§æ±ºã¾ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®\fI\&.keystore\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .PP
-Oracle Solaris¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢\fIuser\&.home\fR¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+Oracle Solarisシステムã®å ´åˆã€\fIuser\&.home\fRã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤«¤é¤ÎÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ï¡¢\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£URL¤È¤·¤Æ\fINONE\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢null¤Î¥¹¥È¥ê¡¼¥à¤¬\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£\fINONE\fR¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤¬¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢¤¿¤È¤¨¤Ð¡¢¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¡¦¥Ç¥Ð¥¤¥¹¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë»ØÄꤷ¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ"
+\fI\-keystore\fRオプションã‹ã‚‰ã®å…¥åŠ›ã‚¹ãƒˆãƒªãƒ¼ãƒ ã¯ã€\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚URLã¨ã—ã¦\fINONE\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€nullã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ãŒ\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚\fINONE\fRã¯ã€\fIKeyStore\fRクラスãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã€ãŸã¨ãˆã°ã€ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ãƒ»ãƒ‡ãƒã‚¤ã‚¹ã«ç½®ã‹ã‚Œã¦ã„ã‚‹å ´åˆã«æŒ‡å®šã—ã¾ã™ã€‚
+.SS "キーストアã®å®Ÿè£…"
 .PP
-\fIjava\&.security package\fR¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë\fIKeyStore\fR¥¯¥é¥¹¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤ª¤è¤Ó¾ðÊó¤ÎÊѹ¹¤ò¹Ô¤¦¤¿¤á¤Î¡¢ÌÀ³Î¤ËÄêµÁ¤µ¤ì¤¿Â¿¤¯¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£Ê£¿ô¤Î°Û¤Ê¤ë¸ÇÄê¼ÂÁõ¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¡¢³Æ¼ÂÁõ¤ÏÆÃÄê¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤òÂоݤȤ·¤Þ¤¹¡£
+\fIjava\&.security package\fRã§æä¾›ã•ã‚Œã¦ã„ã‚‹\fIKeyStore\fRクラスã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æƒ…å ±ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŠã‚ˆã³æƒ…å ±ã®å¤‰æ›´ã‚’è¡Œã†ãŸã‚ã®ã€æ˜Žç¢ºã«å®šç¾©ã•ã‚ŒãŸå¤šãã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚複数ã®ç•°ãªã‚‹å›ºå®šå®Ÿè£…を指定ã™ã‚‹ã“ã¨ãŒã§ãã€å„実装ã¯ç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’対象ã¨ã—ã¾ã™ã€‚
 .PP
-¸½ºß¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë2¤Ä¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë(\fIkeytool\fR¤È\fIjarsigner\fR)¡¢¤ª¤è¤Ó¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë¤È¤¤¤¦Ì¾Á°¤Î1¤Ä¤ÎGUI¥Ù¡¼¥¹¤Î¥Ä¡¼¥ë¤¬¤¢¤ê¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤Ï¸ø³«¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢JDK¥æ¡¼¥¶¡¼¤Ï¡¢¤½¤ì¤ò»ÈÍѤ¹¤ë¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò½ñ¤­¹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ール(\fIkeytool\fRã¨\fIjarsigner\fR)ã€ãŠã‚ˆã³ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ールã¨ã„ã†åå‰ã®1ã¤ã®GUIベースã®ãƒ„ールãŒã‚ã‚Šã¾ã™ã€‚\fIKeyStore\fRクラスã¯å…¬é–‹ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€JDKユーザーã¯ã€ãれを使用ã™ã‚‹ä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ã‚¢ãƒ—リケーションを書ã込むã“ã¨ãŒã§ãã¾ã™ã€‚
 .PP
-Oracle¤¬Ä󶡤¹¤ëÁȹþ¤ß¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢JKS¤È¤¤¤¦Ì¾Á°¤ÎÆȼ«¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(·Á¼°)¤ò»ÈÍѤ¹¤ë¤â¤Î¤Ç¡¢¥­¡¼¥¹¥È¥¢¤ò¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£Áȹþ¤ß¤Î¼ÂÁõ¤Ç¤Ï¡¢³ÆÈëÌ©¸°¤Ï¸ÄÊ̤Υѥ¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÀ°¹çÀ­¤Ï(ÈëÌ©¸°¤È¤ÏÊ̤Î)¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+OracleãŒæä¾›ã™ã‚‹çµ„è¾¼ã¿ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å®Ÿè£…ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€JKSã¨ã„ã†åå‰ã®ç‹¬è‡ªã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(å½¢å¼)を使用ã™ã‚‹ã‚‚ã®ã§ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’ファイルã¨ã—ã¦å®Ÿè£…ã—ã¦ã„ã¾ã™ã€‚組込ã¿ã®å®Ÿè£…ã§ã¯ã€å„秘密éµã¯å€‹åˆ¥ã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®æ•´åˆæ€§ã¯(秘密éµã¨ã¯åˆ¥ã®)パスワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ï¥×¥í¥Ð¥¤¥À¥Ù¡¼¥¹¤Ç¡¢¤Ä¤Þ¤ê¡¢\fIKeyStore\fR¥¯¥é¥¹¤Ë¤è¤êÄ󶡤µ¤ì¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SPI)¤Ë´Ø¤·¤Æ¼ÂÁõ¤µ¤ì¤Þ¤¹¡£Âбþ¤¹¤ë\fIKeystoreSpi\fRÃê¾Ý¥¯¥é¥¹¤¬¤¢¤ê¡¢¤³¤ì¤â\fIjava\&.security package\fR¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤¬¡¢¥×¥í¥Ð¥¤¥À¤¬¼ÂÁõ¤¹¤ëɬÍפΤ¢¤ë¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢¥×¥í¥Ð¥¤¥À¤È¤Ï¡¢Java Security API¤Ë¤è¤Ã¤Æ¥¢¥¯¥»¥¹²Äǽ¤Ê¥µ¡¼¥Ó¥¹¤Î¥µ¥Ö¥»¥Ã¥È¤ËÂФ·¡¢¤½¤Î¸ÇÄê¼ÂÁõ¤òÄ󶡤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î½¸¹ç¤Î¤³¤È¤Ç¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¤Ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.html¤Ë¤¢¤ë
-Java°Å¹æ²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î¥×¥í¥Ð¥¤¥À¤Î¼ÂÁõÊýË¡¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥×¥í¥Ð¥¤¥À¤ò¼ÂÁõ¤·¡¢\fIKeystoreSpi\fR¥µ¥Ö¥¯¥é¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å®Ÿè£…ã¯ãƒ—ロãƒã‚¤ãƒ€ãƒ™ãƒ¼ã‚¹ã§ã€ã¤ã¾ã‚Šã€\fIKeyStore\fRクラスã«ã‚ˆã‚Šæä¾›ã•ã‚Œã‚‹ã‚¢ãƒ—リケーション・インタフェースã¯ã€ã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SPI)ã«é–¢ã—ã¦å®Ÿè£…ã•ã‚Œã¾ã™ã€‚対応ã™ã‚‹\fIKeystoreSpi\fR抽象クラスãŒã‚ã‚Šã€ã“れも\fIjava\&.security package\fRã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãŒã€ãƒ—ロãƒã‚¤ãƒ€ãŒå®Ÿè£…ã™ã‚‹å¿…è¦ã®ã‚るサービス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’定義ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€ãƒ—ロãƒã‚¤ãƒ€ã¨ã¯ã€Java Security APIã«ã‚ˆã£ã¦ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãªã‚µãƒ¼ãƒ“スã®ã‚µãƒ–セットã«å¯¾ã—ã€ãã®å›ºå®šå®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ‘ッケージã¾ãŸã¯ãƒ‘ッケージã®é›†åˆã®ã“ã¨ã§ã™ã€‚キーストアã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ã«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.htmlã«ã‚ã‚‹
+Javaæš—å·åŒ–アーキテクãƒãƒ£ã®ãƒ—ロãƒã‚¤ãƒ€ã®å®Ÿè£…方法ã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒ—ロãƒã‚¤ãƒ€ã‚’実装ã—ã€\fIKeystoreSpi\fRサブクラスã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤Î\fIgetInstance\fR¥Õ¥¡¥¯¥È¥ê¡¦¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤Æ¡¢ÍÍ¡¹¤Ê¥×¥í¥Ð¥¤¥À¤«¤é°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Ï¡¢¥­¡¼¥¹¥È¥¢¾ðÊó¤Î³ÊǼ·Á¼°¤È¥Ç¡¼¥¿·Á¼°¤òÄêµÁ¤¹¤ë¤È¤È¤â¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÈëÌ©¸°¤È¥­¡¼¥¹¥È¥¢¼«ÂΤÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à¤òÄêµÁ¤·¤Þ¤¹¡£°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ë¤Ï¡¢¸ß´¹À­¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+アプリケーションã§ã¯ã€\fIKeyStore\fRクラスã®\fIgetInstance\fRファクトリ・メソッドを使用ã—ã¦ã€æ§˜ã€…ãªãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’é¸æŠžã§ãã¾ã™ã€‚キーストアã®ã‚¿ã‚¤ãƒ—ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…å ±ã®æ ¼ç´å½¢å¼ã¨ãƒ‡ãƒ¼ã‚¿å½¢å¼ã‚’定義ã™ã‚‹ã¨ã¨ã‚‚ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ç§˜å¯†éµã¨ã‚­ãƒ¼ã‚¹ãƒˆã‚¢è‡ªä½“ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’定義ã—ã¾ã™ã€‚ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã«ã¯ã€äº’æ›æ€§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .PP
-\fIjarsigner\fR¤ª¤è¤Ó\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢URL¤ò»ÈÍѤ·¤Æ»ØÄê¤Ç¤­¤ëǤ°Õ¤Î¾ì½ê¤«¤é¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¤³¤ì¤é¤Î¥³¥Þ¥ó¥É¤Ï¡¢Windows¾å¤ÎMSCAPI¤ª¤è¤Ó¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¾å¤ÎPKCS11¤ÇÄ󶡤µ¤ì¤ë¤è¤¦¤ÊÈó¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRãŠã‚ˆã³\fIpolicytool\fRコマンドã¯ã€URLを使用ã—ã¦æŒ‡å®šã§ãã‚‹ä»»æ„ã®å ´æ‰€ã‹ã‚‰ãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Windows上ã®MSCAPIãŠã‚ˆã³ã™ã¹ã¦ã®ãƒ—ラットフォーム上ã®PKCS11ã§æä¾›ã•ã‚Œã‚‹ã‚ˆã†ãªéžãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ª¤è¤Ó\fIkeytool\fR¥³¥Þ¥ó¥É¤Î¾ì¹ç¡¢\fI\-storetype\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë¤Î¾ì¹ç¡¢\fB¡Ö¥­¡¼¥¹¥È¥¢¡×\fR¥á¥Ë¥å¡¼¤Î\fB¡ÖÊÔ½¸¡×\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドãŠã‚ˆã³\fIkeytool\fRコマンドã®å ´åˆã€\fI\-storetype\fRオプションを使用ã—ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ールã®å ´åˆã€\fB「キーストアã€\fRメニューã®\fB「編集ã€\fRコマンドを使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚
 .PP
-¥æ¡¼¥¶¡¼¤¬¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤵ¤ì¤¿\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ˴ð¤Å¤¤¤Æ¡¢¥Ä¡¼¥ë¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤¬ÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.security\fR¤È¸Æ¤Ð¤ì¡¢JDK¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home/lib/security\fRÆâ¤Ë¸ºß¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIjava\&.home\fR¤Ï¼Â¹Ô»þ´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢JDK¤Þ¤¿¤ÏJava Runtime Environment (JRE)¤ÎºÇ¾å°Ì¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£
+ユーザーãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を明示的ã«æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã§æŒ‡å®šã•ã‚ŒãŸ\fIkeystore\&.type\fRプロパティã®å€¤ã«åŸºã¥ã„ã¦ã€ãƒ„ールã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã¯\fIjava\&.security\fRã¨å‘¼ã°ã‚Œã€JDKセキュリティ・プロパティ・ディレクトリ\fIjava\&.home/lib/security\fR内ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€\fIjava\&.home\fRã¯å®Ÿè¡Œæ™‚環境ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚\fIjre\fRディレクトリã¯ã€JDKã¾ãŸã¯Java Runtime Environment (JRE)ã®æœ€ä¸Šä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-³Æ¥Ä¡¼¥ë¤Ï¡¢\fIkeystore\&.type\fR¤ÎÃͤò¼èÆÀ¤·¡¢¤½¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¡¢¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥Ð¥¤¥À¤òÄ´¤Ù¤Þ¤¹¡£ÌÜŪ¤Î¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤È¡¢¤½¤Î¥×¥í¥Ð¥¤¥À¤«¤é¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„ツールã¯ã€\fIkeystore\&.type\fRã®å€¤ã‚’å–å¾—ã—ã€ãã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’実装ã—ã¦ã„るプロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§ã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ—ロãƒã‚¤ãƒ€ã‚’調ã¹ã¾ã™ã€‚目的ã®ãƒ—ロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¨ã€ãã®ãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¾ã™ã€‚
 .PP
-\fIKeyStore\fR¥¯¥é¥¹¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ëstatic¥á¥½¥Ã¥É\fIgetDefaultType\fR¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥¢¥×¥ì¥Ã¥È¤«¤é\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥³¡¼¥É¤Î¹Ô¤Ç¤Ï¡¢\fIkeystore\&.type property\fR¤Ç»ØÄꤵ¤ì¤¿¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òºîÀ®¤·¤Þ¤¹¡£
+\fIKeyStore\fRクラスã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹staticメソッド\fIgetDefaultType\fRを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションやアプレットã‹ã‚‰\fIkeystore\&.type\fRプロパティã®å€¤ã‚’å–å¾—ã§ãã¾ã™ã€‚次ã®ã‚³ãƒ¼ãƒ‰ã®è¡Œã§ã¯ã€\fIkeystore\&.type property\fRã§æŒ‡å®šã•ã‚ŒãŸã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -240,8 +240,8 @@
 .RE
 .\}
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï¡¢\fIjks\fR
-(Oracle¤¬Ä󶡤¹¤ëÆȼ«¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ)¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¼¡¤Î¹Ô¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯ã€\fIjks\fR
+(OracleãŒæä¾›ã™ã‚‹ç‹¬è‡ªã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…)ã§ã™ã€‚ã“ã‚Œã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®æ¬¡ã®è¡Œã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -253,9 +253,9 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î»ØÄê¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fIJKS\fR¤Ï\fIjks\fR¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+キーストアã®ã‚¿ã‚¤ãƒ—ã®æŒ‡å®šã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fIJKS\fRã¯\fIjks\fRã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥Ä¡¼¥ë¤Ç¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤½¤Î¹Ô¤òÊѹ¹¤·¤ÆÊ̤Υ­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIpkcs12\fR¤È¸Æ¤Ð¤ì¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ë¾ì¹ç¡¢¹Ô¤ò¼¡¤Î¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
+ツールã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹ã«ã¯ã€ãã®è¡Œã‚’変更ã—ã¦åˆ¥ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIpkcs12\fRã¨å‘¼ã°ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージãŒã‚ã‚‹å ´åˆã€è¡Œã‚’次ã®ã‚ˆã†ã«å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -267,12 +267,12 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-PKCS 11¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/p11guide\&.html¤Ë¤¢¤ë
-Java PKCS #11¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖKeyTool¡×¤ª¤è¤Ó¡ÖJarSigner¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥µ¥Ý¡¼¥È¤µ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à"
+\fB注æ„:\fR
+PKCS 11プロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージを使用ã™ã‚‹å ´åˆã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/p11guide\&.htmlã«ã‚ã‚‹
+Java PKCS #11リファレンス・ガイドã®ã€ŒKeyToolã€ãŠã‚ˆã³ã€ŒJarSignerã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "サãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ "
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¼¡¤Î¤¤¤º¤ì¤«¤Î¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£
+デフォルトã§ã€\fIjarsigner\fRコマンドã§ã¯æ¬¡ã®ã„ãšã‚Œã‹ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -282,7 +282,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA1¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤¿¥Ç¥¸¥¿¥ë½ð̾¥¢¥ë¥´¥ê¥º¥à(DSA)
+SHA1ダイジェスト・アルゴリズムを使用ã—ãŸãƒ‡ã‚¸ã‚¿ãƒ«ç½²åアルゴリズム(DSA)
 .RE
 .sp
 .RS 4
@@ -293,7 +293,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA256¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤¿RSA¥¢¥ë¥´¥ê¥º¥à¡£
+SHA256ダイジェスト・アルゴリズムを使用ã—ãŸRSAアルゴリズム。
 .RE
 .sp
 .RS 4
@@ -304,15 +304,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA256¤ÈÂʱ߶ÊÀþ¥Ç¥¸¥¿¥ë½ð̾¥¢¥ë¥´¥ê¥º¥à(ECDSA)¤ò»ÈÍѤ·¤¿Âʱ߶ÊÀþ(EC)°Å¹æÊý¼°¥¢¥ë¥´¥ê¥º¥à
+SHA256ã¨æ¥•å††æ›²ç·šãƒ‡ã‚¸ã‚¿ãƒ«ç½²åアルゴリズム(ECDSA)を使用ã—ãŸæ¥•å††æ›²ç·š(EC)æš—å·æ–¹å¼ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ 
 .RE
 .PP
-½ð̾¼Ô¤Î¸ø³«¸°¤ÈÈëÌ©¸°¤¬DSA¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA1withDSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£½ð̾¼Ô¤Î¸°¤¬RSA¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA256withRSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤è¤¦¤È¤·¤Þ¤¹¡£½ð̾¼Ô¤Î¸°¤¬EC¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA256withECDSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£
+ç½²å者ã®å…¬é–‹éµã¨ç§˜å¯†éµãŒDSAéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA1withDSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚ç½²å者ã®éµãŒRSAéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA256withRSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—よã†ã¨ã—ã¾ã™ã€‚ç½²å者ã®éµãŒECéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA256withECDSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚
 .PP
-¤³¤ì¤é¤Î¥Ç¥Õ¥©¥ë¥È¤Î½ð̾¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£
-.SS "½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë"
+ã“れらã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç½²åアルゴリズムã¯ã€\fI\-sigalg\fRオプションを使用ã—ã¦ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚
+.SS "ç½²å付ãJARファイル"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¡¢½ÐÎϤµ¤ì¤ë½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ÏÆþÎÏJAR¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢¼¡¤Î2¤Ä¤ÎÄɲåե¡¥¤¥ë¤¬META\-INF¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦JARファイルã«ç½²åã™ã‚‹å ´åˆã€å‡ºåŠ›ã•ã‚Œã‚‹ç½²å付ãJARファイルã¯å…¥åŠ›JARファイルã¨åŒã˜ã§ã™ãŒã€æ¬¡ã®2ã¤ã®è¿½åŠ ãƒ•ã‚¡ã‚¤ãƒ«ãŒMETA\-INFディレクトリã«ç½®ã‹ã‚Œã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -322,7 +322,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\&.SF\fR³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Õ¥¡¥¤¥ë
+\fI\&.SF\fRæ‹¡å¼µå­ã®ä»˜ã„ãŸç½²åファイル
 .RE
 .sp
 .RS 4
@@ -333,14 +333,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\&.DSA\fR¡¢\fI\&.RSA\fR¤Þ¤¿¤Ï\fI\&.EC\fR³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë
+\fI\&.DSA\fRã€\fI\&.RSA\fRã¾ãŸã¯\fI\&.EC\fRæ‹¡å¼µå­ã®ä»˜ã„ãŸç½²åブロック・ファイル
 .RE
 .PP
-¤³¤ì¤é2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢\fI\-sigFile\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤ«¤éºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥ª¥×¥·¥ç¥ó¤¬\fI\-sigFile MKSIGN\fR¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï\fIMKSIGN\&.SF\fR¤ª¤è¤Ó\fIMKSIGN\&.DSA\fR¤È¤¤¤¦Ì¾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“れら2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€\fI\-sigFile\fRオプションã®å€¤ã‹ã‚‰ä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚ªãƒ—ションãŒ\fI\-sigFile MKSIGN\fRã®å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIMKSIGN\&.SF\fRãŠã‚ˆã³\fIMKSIGN\&.DSA\fRã¨ã„ã†åå‰ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sigfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î8ʸ»ú¤ò¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬8ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬¤½¤Î¤Þ¤Þ»ÈÍѤµ¤ì¤Þ¤¹¡£ÊÌ̾¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ç»ÈÍѤǤ­¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾¤ÎºîÀ®»þ¤Ë¡¢³ºÅö¤¹¤ëʸ»ú¤¬²¼Àþ(_)ʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£Í­¸ú¤Êʸ»ú¤Ï¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢¿ô»ú¡¢²¼Àþ¤ª¤è¤Ó¥Ï¥¤¥Õ¥ó¤Ç¤¹¡£
-½ð̾¥Õ¥¡¥¤¥ë.PP
-½ð̾¥Õ¥¡¥¤¥ë(\fI\&.SF\fR¥Õ¥¡¥¤¥ë)¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëºÝ¤ËJAR¥Õ¥¡¥¤¥ë¤Ë¾ï¤Ë´Þ¤Þ¤ì¤ë¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤È»÷¤Æ¤¤¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¤è¤¦¤Ê¡¢¼¡¤Ë¼¨¤¹3¤Ä¤Î¹Ô¤¬¤¢¤ê¤Þ¤¹¡£
+コマンドラインã§\fI\-sigfile\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã€\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã®å…ˆé ­ã®8文字をã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚別åãŒ8文字未満ã®å ´åˆã¯ã€åˆ¥åãŒãã®ã¾ã¾ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚別åã«ã€ç½²åファイルåã§ä½¿ç”¨ã§ããªã„文字ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«åã®ä½œæˆæ™‚ã«ã€è©²å½“ã™ã‚‹æ–‡å­—ãŒä¸‹ç·š(_)文字ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚有効ãªæ–‡å­—ã¯ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã€æ•°å­—ã€ä¸‹ç·šãŠã‚ˆã³ãƒã‚¤ãƒ•ãƒ³ã§ã™ã€‚
+ç½²åファイル.PP
+ç½²åファイル(\fI\&.SF\fRファイル)ã¯ã€\fIjarsigner\fRコマンドを使用ã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã«ç½²åã™ã‚‹éš›ã«JARファイルã«å¸¸ã«å«ã¾ã‚Œã‚‹ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ä¼¼ã¦ã„ã¾ã™ã€‚JARファイルã«å«ã¾ã‚Œã¦ã„るソース・ファイルã”ã¨ã«ã€\fI\&.SF\fRファイルã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚るよã†ãªã€æ¬¡ã«ç¤ºã™3ã¤ã®è¡ŒãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -350,7 +350,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Õ¥¡¥¤¥ë̾
+ファイルå
 .RE
 .sp
 .RS 4
@@ -361,7 +361,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à(SHA)¤Î̾Á°
+ダイジェスト・アルゴリズム(SHA)ã®åå‰
 .RE
 .sp
 .RS 4
@@ -372,17 +372,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA¥À¥¤¥¸¥§¥¹¥È¤ÎÃÍ
+SHAダイジェストã®å€¤
 .RE
 .PP
-¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎSHA¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ð¥¤¥Ê¥ê¡¦¥Ç¡¼¥¿¤Î¥À¥¤¥¸¥§¥¹¥È(¥Ï¥Ã¥·¥å)¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢»ØÄꤵ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¤½¤Î3¹Ô¤Î¥Ï¥Ã¥·¥å¤Ë¤Ê¤ê¤Þ¤¹¡£
+マニフェスト・ファイルã§ã¯ã€å„ソース・ファイルã®SHAダイジェストã®å€¤ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ»ãƒ‡ãƒ¼ã‚¿ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆ(ãƒãƒƒã‚·ãƒ¥)ã«ãªã‚Šã¾ã™ã€‚\fI\&.SF\fRファイルã§ã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã®å€¤ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãã®3è¡Œã®ãƒãƒƒã‚·ãƒ¥ã«ãªã‚Šã¾ã™ã€‚
 .PP
-½ð̾¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥ工夬³ÊǼ¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Ë¤Ï¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Ø¥Ã¥À¡¼¤Î¥Ï¥Ã¥·¥å¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¤È¡¢¸¡¾Ú¤ÎºÇŬ²½¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë.PP
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï½ð̾¤¬ÉÕ¤±¤é¤ì¡¢½ð̾¤Ï½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ËÃÖ¤«¤ì¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢½ð̾¤Ë»ÈÍѤµ¤ì¤¿ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤â¡¢ÆâÉô¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤Æ´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤Î³ÈÄ¥»Ò¤Ï¡¢»ÈÍѤµ¤ì¤ë¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤Ë±þ¤¸¤Æ¡¢\fI\&.DSA\fR¡¢\fI\&.RSA\fR¤Þ¤¿¤Ï\fI\&.EC\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SS "½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×"
+ç½²åファイルã«ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ãŒæ ¼ç´ã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーã«ã¯ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ˜ãƒƒãƒ€ãƒ¼ã®ãƒãƒƒã‚·ãƒ¥ã‚‚å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹ã¨ã€æ¤œè¨¼ã®æœ€é©åŒ–ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚JARファイルã®æ¤œè¨¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+ç½²åブロック・ファイル.PP
+\fI\&.SF\fRファイルã«ã¯ç½²åãŒä»˜ã‘られã€ç½²åã¯ç½²åブロック・ファイルã«ç½®ã‹ã‚Œã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ç½²åã«ä½¿ç”¨ã•ã‚ŒãŸç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚‚ã€å†…部ã§ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ファイルã®æ‹¡å¼µå­ã¯ã€ä½¿ç”¨ã•ã‚Œã‚‹ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«å¿œã˜ã¦ã€\fI\&.DSA\fRã€\fI\&.RSA\fRã¾ãŸã¯\fI\&.EC\fRã«ãªã‚Šã¾ã™ã€‚
+.SS "ç½²åタイムスタンプ"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤ª¤è¤ÓÊݸ¤Ç¤­¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIjarsigner\fR¤ÏÂåÂؽð̾µ¡¹½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¤³¤ÎÆ°ºî¤Ï¾Êά²Äǽ¤Ç¡¢½ð̾»þ¤Ë¼¡¤Î³Æ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ©¸æ¤µ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjarsigner\fRコマンドã§ã¯ã€JARファイルã®ç½²å時ã«ç½²åタイムスタンプを生æˆãŠã‚ˆã³ä¿å­˜ã§ãã¾ã™ã€‚ã•ã‚‰ã«ã€\fIjarsigner\fRã¯ä»£æ›¿ç½²å機構をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ã“ã®å‹•ä½œã¯çœç•¥å¯èƒ½ã§ã€ç½²å時ã«æ¬¡ã®å„オプションã«ã‚ˆã£ã¦åˆ¶å¾¡ã•ã‚Œã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -397,9 +397,9 @@
 .if n \{\
 .RE
 .\}
-.SS "JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú"
+.SS "JARファイルã®æ¤œè¨¼"
 .PP
-JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤¬À®¸ù¤¹¤ë¤Î¤Ï¡¢½ð̾¤¬Í­¸ú¤Ç¤¢¤ê¡¢¤«¤Ä½ð̾¤ÎÀ¸À®°Ê¹ß¤ËJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ï¡¢¼¡¤Î¼ê½ç¤Ç¹Ô¤ï¤ì¤Þ¤¹¡£
+JARファイルã®æ¤œè¨¼ãŒæˆåŠŸã™ã‚‹ã®ã¯ã€ç½²åãŒæœ‰åŠ¹ã§ã‚ã‚Šã€ã‹ã¤ç½²åã®ç”Ÿæˆä»¥é™ã«JARファイル内ã®ã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚変更ã•ã‚Œã¦ã„ãªã„å ´åˆã§ã™ã€‚JARファイルã®æ¤œè¨¼ã¯ã€æ¬¡ã®æ‰‹é †ã§è¡Œã‚ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -409,9 +409,9 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイルã®ç½²åを検証ã—ã¾ã™ã€‚
 .sp
-¸¡¾Ú¤Ç¤Ï¡¢³Æ½ð̾¥Ö¥í¥Ã¥¯(\fI\&.DSA\fR)¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤¿½ð̾¤¬¡¢¾ÚÌÀ½ñ(¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó)¤â\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë¼¨¤µ¤ì¤ë¸ø³«¸°¤ËÂбþ¤¹¤ëÈëÌ©¸°¤ò»ÈÍѤ·¤ÆÀ¸À®¤µ¤ì¤¿¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤Þ¤¿¡¢½ð̾¤¬Âбþ¤¹¤ë½ð̾(\fI\&.SF\fR)¥Õ¥¡¥¤¥ë¤ÎÍ­¸ú¤Ê½ð̾¤Ç¤¢¤ë¤³¤È¤¬³Îǧ¤µ¤ì¡¢¤½¤ì¤Ë¤è¤ê¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤¬²þ¤¶¤ó¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â³Îǧ¤µ¤ì¤Þ¤¹¡£
+検証ã§ã¯ã€å„ç½²åブロック(\fI\&.DSA\fR)ファイルã«æ ¼ç´ã•ã‚ŒãŸç½²åãŒã€è¨¼æ˜Žæ›¸(ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³)ã‚‚\fI\&.DSA\fRファイルã«ç¤ºã•ã‚Œã‚‹å…¬é–‹éµã«å¯¾å¿œã™ã‚‹ç§˜å¯†éµã‚’使用ã—ã¦ç”Ÿæˆã•ã‚ŒãŸã“ã¨ã‚’確èªã—ã¾ã™ã€‚ã¾ãŸã€ç½²åãŒå¯¾å¿œã™ã‚‹ç½²å(\fI\&.SF\fR)ファイルã®æœ‰åŠ¹ãªç½²åã§ã‚ã‚‹ã“ã¨ãŒç¢ºèªã•ã‚Œã€ãã‚Œã«ã‚ˆã‚Šã€\fI\&.SF\fRファイルãŒæ”¹ã–ã‚“ã•ã‚Œã¦ã„ãªã„ã“ã¨ã‚‚確èªã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -422,13 +422,13 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥¨¥ó¥È¥ê¤Ë¼¨¤µ¤ì¤ë¥À¥¤¥¸¥§¥¹¥È¤ò¡¢¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤ÎÂбþ¤¹¤ë³Æ¥»¥¯¥·¥ç¥ó¤ÈÆͤ­¤¢¤ï¤»¤Æ¸¡¾Ú¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイル内ã®å„エントリã«ç¤ºã•ã‚Œã‚‹ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã‚’ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã®å¯¾å¿œã™ã‚‹å„セクションã¨çªãã‚ã‚ã›ã¦æ¤œè¨¼ã—ã¾ã™ã€‚
 .sp
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥ工夬³ÊǼ¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤¬¥Ç¥Õ¥©¥ë¥È¤Ç´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ç¤Ï¡¢¥Ø¥Ã¥À¡¼Æâ¤Î¥Ï¥Ã¥·¥å¤¬¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£°ìÃפ¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ï¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£
+\fI\&.SF\fRファイルã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ãŒæ ¼ç´ã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹å ´åˆã€æ¤œè¨¼ã§ã¯ã€ãƒ˜ãƒƒãƒ€ãƒ¼å†…ã®ãƒãƒƒã‚·ãƒ¥ãŒãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚一致ã™ã‚‹å ´åˆã€æ¤œè¨¼ã¯æ¬¡ã®æ‰‹é †ã«é€²ã¿ã¾ã™ã€‚
 .sp
-°ìÃפ·¤Ê¤¤¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¡¢¤¢¤Þ¤êºÇŬ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¸¡¾Ú¤¬É¬Íפˤʤê¤Þ¤¹¡£½ð̾¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+一致ã—ãªã„å ´åˆã€\fI\&.SF\fRファイル内ã®å„ソース・ファイル情報セクションã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã™ã‚‹ãŸã‚ã«ã€ã‚ã¾ã‚Šæœ€é©åŒ–ã•ã‚Œã¦ã„ãªã„検証ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚ç½²åファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À¡¼¤Ë³ÊǼ¤µ¤ì¤¿¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤¬¡¢¸½ºß¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤Ë°ìÃפ·¤Ê¤¤Íýͳ¤Î1¤Ä¤Ï¡¢½ð̾¤ª¤è¤Ó\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¸å¤Ë¡¢(\fIjar\fR¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ)1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ë¤ËÄɲ䵤줿¤³¤È¤Ç¤¹¡£\fIjar\fR¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¥Õ¥¡¥¤¥ë¤òÄɲä·¤¿¾ì¹ç¡¢¿·¤·¤¤¥Õ¥¡¥¤¥ëÍѤΥ»¥¯¥·¥ç¥ó¤¬Äɲ䵤ì¤ë¤³¤È¤Ë¤è¤ê¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤¹¤¬¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤»¤ó¡£¸¡¾Ú¤¬¤Þ¤ÀÀ®¸ù¤·¤Æ¤¤¤ë¤È¤ß¤Ê¤µ¤ì¤ë¤Î¤Ï¡¢½ð̾¤ÎÀ¸À®°Ê¹ß¤ËJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¹¡£¤³¤ì¤¬È¯À¸¤¹¤ë¤Î¤Ï¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À¡¼°Ê³°¤Î¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¾ì¹ç¤Ç¤¹¡£
+\fI\&.SF\fRファイルã®ãƒ˜ãƒƒãƒ€ãƒ¼ã«æ ¼ç´ã•ã‚ŒãŸãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ãŒã€ç¾åœ¨ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ã«ä¸€è‡´ã—ãªã„ç†ç”±ã®1ã¤ã¯ã€ç½²åãŠã‚ˆã³\fI\&.SF\fRファイルã®ç”Ÿæˆå¾Œã«ã€(\fIjar\fRツールを使用ã—ã¦)1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒJARファイルã«è¿½åŠ ã•ã‚ŒãŸã“ã¨ã§ã™ã€‚\fIjar\fRツールを使用ã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚’追加ã—ãŸå ´åˆã€æ–°ã—ã„ファイル用ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãŒè¿½åŠ ã•ã‚Œã‚‹ã“ã¨ã«ã‚ˆã‚Šã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯å¤‰æ›´ã•ã‚Œã¾ã™ãŒã€\fI\&.SF\fRファイルã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“。検証ãŒã¾ã æˆåŠŸã—ã¦ã„ã‚‹ã¨ã¿ãªã•ã‚Œã‚‹ã®ã¯ã€ç½²åã®ç”Ÿæˆä»¥é™ã«JARファイル内ã®ã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚変更ã•ã‚Œã¦ã„ãªã„å ´åˆã§ã™ã€‚ã“ã‚ŒãŒç™ºç”Ÿã™ã‚‹ã®ã¯ã€\fI\&.SF\fRファイルã®ãƒ˜ãƒƒãƒ€ãƒ¼ä»¥å¤–ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹å ´åˆã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -439,16 +439,16 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Ë¥¨¥ó¥È¥ê¤ò»ý¤ÄJAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¤Þ¤¹¡£Æɼè¤êÃæ¤Ë¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ò·×»»¤·¡¢·ë²Ì¤ò¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥»¥¯¥·¥ç¥óÆâ¤Î¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ÈÈæ³Ó¤·¤Þ¤¹¡£¥À¥¤¥¸¥§¥¹¥È¤ÏƱ¤¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¡¢¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¸¡¾Ú¤¬¼ºÇÔ¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイル内ã«ã‚¨ãƒ³ãƒˆãƒªã‚’æŒã¤JARファイル内ã®å„ファイルを読ã¿å–ã‚Šã¾ã™ã€‚読å–り中ã«ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã‚’計算ã—ã€çµæžœã‚’マニフェスト・セクション内ã®ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã¨æ¯”較ã—ã¾ã™ã€‚ダイジェストã¯åŒã˜ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã€ãã†ã§ãªã„å ´åˆã¯æ¤œè¨¼ãŒå¤±æ•—ã—ã¾ã™ã€‚
 .sp
-¸¡¾Ú¥×¥í¥»¥¹Ãæ¤Ë¤Ê¤ó¤é¤«¤Î½ÅÂç¤Ê¸¡¾Ú¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¤½¤Î¥×¥í¥»¥¹¤ÏÄä»ß¤µ¤ì¡¢¥»¥­¥å¥ê¥Æ¥£Îã³°¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Îã³°¤òÊ᪤ª¤è¤Óɽ¼¨¤·¤Þ¤¹¡£
+検証プロセス中ã«ãªã‚“らã‹ã®é‡å¤§ãªæ¤œè¨¼ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãã®ãƒ—ロセスã¯åœæ­¢ã•ã‚Œã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚\fIjarsigner\fRコマンドã§ã¯ã€ä¾‹å¤–ã‚’æ•æ‰ãŠã‚ˆã³è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
-\fBÃí°Õ:\fR
-Äɲäηٹð(¤Þ¤¿¤Ï¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¥¨¥é¡¼)¤Ï¤¹¤Ù¤ÆÆɤàɬÍפ¬¤¢¤ê¤Þ¤¹¡£Æ±Íͤˡ¢¾ÚÌÀ¤¬¿®Íê¤Ç¤­¤ë¤«¤ò·èÄꤹ¤ë¤¿¤á¤Ë¡¢(\fI\-verbose\fR¤ª¤è¤Ó\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ)¾ÚÌÀ½ñ¤ÎÆâÍƤâÆɤàɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SS "1¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤òÂоݤȤ¹¤ëÊ£¿ô¤Î½ð̾"
+\fB注æ„:\fR
+追加ã®è­¦å‘Š(ã¾ãŸã¯ã€\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã¯ã‚¨ãƒ©ãƒ¼)ã¯ã™ã¹ã¦èª­ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åŒæ§˜ã«ã€è¨¼æ˜ŽãŒä¿¡é ¼ã§ãã‚‹ã‹ã‚’決定ã™ã‚‹ãŸã‚ã«ã€(\fI\-verbose\fRãŠã‚ˆã³\fI\-certs\fRオプションを指定ã—ã¦)証明書ã®å†…容も読む必è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "1ã¤ã®JARファイルを対象ã¨ã™ã‚‹è¤‡æ•°ã®ç½²å"
 .PP
-¼¡¤Î¤è¤¦¤Ë¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò¥Õ¥¡¥¤¥ë¤ÇÊ£¿ô²ó¼Â¹Ô¤·¡¢¼Â¹Ô¤Î¤¿¤Ó¤Ë°Û¤Ê¤ë¥æ¡¼¥¶¡¼¤ÎÊÌ̾¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢1¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤ËÊ£¿ô¤Î¥æ¡¼¥¶¡¼¤Î½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIjarsigner\fRコマンドをファイルã§è¤‡æ•°å›žå®Ÿè¡Œã—ã€å®Ÿè¡Œã®ãŸã³ã«ç•°ãªã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®åˆ¥åを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€1ã¤ã®JARファイルã«è¤‡æ•°ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ç½²åを付ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -461,7 +461,7 @@
 .RE
 .\}
 .PP
-JAR¥Õ¥¡¥¤¥ë¤¬Ê£¿ô²ó½ð̾¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Ê£¿ô¤Î\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢1²ó¤Î½ð̾¤ËÂФ·¤Æ1¤Ä¤Î¥Ú¥¢¤È¤Ê¤ê¤Þ¤¹¡£Á°½Ò¤ÎÎã¤Ç¤Ï¡¢½ÐÎÏJAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î̾Á°¤Î¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+JARファイルãŒè¤‡æ•°å›žç½²åã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãã®JARファイルã«ã¯ã€è¤‡æ•°ã®\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルãŒå«ã¾ã‚Œã¦ãŠã‚Šã€1回ã®ç½²åã«å¯¾ã—ã¦1ã¤ã®ãƒšã‚¢ã¨ãªã‚Šã¾ã™ã€‚å‰è¿°ã®ä¾‹ã§ã¯ã€å‡ºåŠ›JARファイルã«ã¯ã€æ¬¡ã®åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -475,9 +475,9 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î³Æ¹à¤Ç¤Ï¡¢ÍÍ¡¹¤Ê\fIjarsigner\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¼¡¤Îɸ½à¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®å„é …ã§ã¯ã€æ§˜ã€…ãª\fIjarsigner\fRオプションã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚次ã®æ¨™æº–ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -487,7 +487,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤É¤Î¥ª¥×¥·¥ç¥ó̾¤Ë¤âÀèƬ¤Ë¥Þ¥¤¥Ê¥¹µ­¹æ(\-)¤¬ÉÕ¤­¤Þ¤¹¡£
+ã©ã®ã‚ªãƒ—ションåã«ã‚‚先頭ã«ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\-)ãŒä»˜ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -498,7 +498,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+オプションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -509,7 +509,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤޤ¿¤Ï²¼ÀþÉÕ¤­¤Î¹àÌÜ(¥ª¥×¥·¥ç¥ó¤ÎÃÍ)¤Î¼ÂºÝ¤ÎÃͤϡ¢»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+イタリック体ã¾ãŸã¯ä¸‹ç·šä»˜ãã®é …ç›®(オプションã®å€¤)ã®å®Ÿéš›ã®å€¤ã¯ã€æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -520,18 +520,18 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-storepass\fR¡¢\fI\-keypass\fR¡¢\fI\-sigfile\fR¡¢\fI\-sigalg\fR¡¢\fI\-digestalg\fR¡¢\fI\-signedjar\fR¤ª¤è¤ÓTSA´ØÏ¢¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¾ì¹ç¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fI\-keystore \fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ª¤è¤Ó¸¡¾Ú¤Ë´ØÏ¢¤·¤Þ¤¹¡£¤Þ¤¿¡¢ÊÌ̾¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ª¤è¤Ó¸¡¾Ú»þ¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fI\-storepass\fRã€\fI\-keypass\fRã€\fI\-sigfile\fRã€\fI\-sigalg\fRã€\fI\-digestalg\fRã€\fI\-signedjar\fRãŠã‚ˆã³TSA関連ã®ã‚ªãƒ—ションを使用ã§ãã‚‹ã®ã¯ã€JARファイルã«ç½²åã™ã‚‹å ´åˆã®ã¿ã§ã™ã€‚ç½²å付ãJARファイルを検証ã™ã‚‹å ´åˆã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fI\-keystore \fRオプションã¯ã€JARファイルã®ç½²åãŠã‚ˆã³æ¤œè¨¼ã«é–¢é€£ã—ã¾ã™ã€‚ã¾ãŸã€åˆ¥åã¯ã€JARファイルã®ç½²åãŠã‚ˆã³æ¤œè¨¼æ™‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-keystore \fIurl\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò¼¨¤¹URL¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIuser\&.home\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç·èÄꤵ¤ì¤¿¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¥Õ¥¡¥¤¥ë\fI\&.keystore\fR¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+キーストアã®å ´æ‰€ã‚’示ã™URLを指定ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIuser\&.home\fRシステム・プロパティã§æ±ºå®šã•ã‚ŒãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ãƒ•ã‚¡ã‚¤ãƒ«\fI\&.keystore\fRã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Ï½ð̾»þ¤Ë¤ÏɬÍפǤ¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã¯ç½²å時ã«ã¯å¿…è¦ã§ã™ã€‚デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒå­˜åœ¨ã—ãªã„å ´åˆã€ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’使用ã™ã‚‹å ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’明示的ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¸¡¾Ú¤¹¤ë¤È¤­¤Ï¥­¡¼¥¹¥È¥¢¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥­¡¼¥¹¥È¥¢¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤«¡¢¤¢¤ë¤¤¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß¤·¤Æ¤¤¤Æ¡¢¤µ¤é¤Ë\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬¤½¤Î¥­¡¼¥¹¥È¥¢¤Ë1¤Ä¤Ç¤â´Þ¤Þ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë´Ø¤¹¤ëÄɲþðÊ󤬽ÐÎϤµ¤ì¤Þ¤¹¡£
+検証ã™ã‚‹ã¨ãã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¯å¿…è¦ã‚ã‚Šã¾ã›ã‚“。ãŸã ã—ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒå­˜åœ¨ã—ã¦ã„ã¦ã€ã•ã‚‰ã«\fI\-verbose\fRオプションも指定ã•ã‚Œã¦ã„ãŸå ´åˆã€JARファイルã®æ¤œè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒãã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«1ã¤ã§ã‚‚å«ã¾ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«é–¢ã™ã‚‹è¿½åŠ æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-keystore\fR°ú¿ô¤Ë¤Ï¡¢URL¤Ç¤Ï¤Ê¤¯¥Õ¥¡¥¤¥ë̾¤È¥Ñ¥¹¤ò»ØÄê¤Ç¤­¡¢¤³¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë: URL¤ÈƱ¤¸¤è¤¦¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Ë¤è¤¦¤Ë»ØÄꤹ¤ë¤ÈƱÅù¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI\-keystore\fR引数ã«ã¯ã€URLã§ã¯ãªãファイルåã¨ãƒ‘スを指定ã§ãã€ã“ã®å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«: URLã¨åŒã˜ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã«ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨åŒç­‰ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -543,8 +543,8 @@
 .if n \{\
 .RE
 .\}
-(JRE¤Î\fI$JAVA_HOME/lib/security directory\fR¤Ë¤¢¤ë)
-\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤ÇSun PKCS #11¥×¥í¥Ð¥¤¥À¤¬¹½À®¤µ¤ì¤¿¾ì¹ç¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥Ä¡¼¥ë¤ÏPKCS#11¥È¡¼¥¯¥ó¤Ë´ð¤Å¤¤¤ÆÆ°ºî¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+(JREã®\fI$JAVA_HOME/lib/security directory\fRã«ã‚ã‚‹)
+\fIjava\&.security\fRセキュリティ・プロパティ・ファイル内ã§Sun PKCS #11プロãƒã‚¤ãƒ€ãŒæ§‹æˆã•ã‚ŒãŸå ´åˆã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRツールã¯PKCS#11トークンã«åŸºã¥ã„ã¦å‹•ä½œã§ãã¾ã™ã€‚次ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -556,7 +556,7 @@
 .if n \{\
 .RE
 .\}
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¹½À®¤µ¤ì¤¿PKCS#11¥È¡¼¥¯¥ó¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ§‹æˆã•ã‚ŒãŸPKCS#11トークンã®å†…容を一覧表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -571,17 +571,17 @@
 .PP
 \-storetype \fIstoretype\fR
 .RS 4
-¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤǻØÄꤵ¤ì¤¿¥¿¥¤¥×¤Ç¤¹¡£¤³¤ÎÃͤϡ¢\fIjava\&.security\&.KeyStore\fR¤Îstatic
-\fIgetDefaultType\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤Þ¤¹¡£
+インスタンスを生æˆã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®\fIkeystore\&.type\fRプロパティã®å€¤ã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—ã§ã™ã€‚ã“ã®å€¤ã¯ã€\fIjava\&.security\&.KeyStore\fRã®static
+\fIgetDefaultType\fRメソッドã«ã‚ˆã£ã¦è¿”ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢PCKS #11¥È¡¼¥¯¥ó¤ÎPIN¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£²¿¤â»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢¥È¡¼¥¯¥óPIN¤Î»ØÄê¤òµá¤á¤é¤ì¤Þ¤¹¡£¥È¡¼¥¯¥ó¤ËÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹(ÀìÍѤÎPIN¥Ñ¥Ã¥É¤äÀ¸ÂÎÆɼè¤êµ¡¤Ê¤É)¤¬¤¢¤ë¾ì¹ç¡¢\fI\-protected\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¥Ñ¥¹¥ï¡¼¥É¡¦¥ª¥×¥·¥ç¥ó¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£
+\fI\-storepass\fRオプションを使用ã—ã¦ã€PCKS #11トークンã®PINを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚何も指定ã—ãªã„å ´åˆã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦ã€ãƒˆãƒ¼ã‚¯ãƒ³PINã®æŒ‡å®šã‚’求ã‚られã¾ã™ã€‚トークンã«ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘ス(専用ã®PINパッドや生体読å–ã‚Šæ©Ÿãªã©)ãŒã‚ã‚‹å ´åˆã€\fI\-protected\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãƒ‘スワード・オプションã¯æŒ‡å®šã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-storepass[:env | :file] \fIargument\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Î¤ËɬÍפʥѥ¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤¬É¬ÍפʤΤϡ¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Î¤ß¤Ç¤¹(¸¡¾Ú¤¹¤ë¤È¤­¤Ë¤ÏÉÔÍפǤ¹)¡£¤½¤Î¾ì¹ç¡¢\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤¤¤È¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+キーストアã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã®ã«å¿…è¦ãªãƒ‘スワードを指定ã—ã¾ã™ã€‚ã“ã‚ŒãŒå¿…è¦ãªã®ã¯ã€JARファイルã«ç½²åを付ã‘ã‚‹ã¨ãã®ã¿ã§ã™(検証ã™ã‚‹ã¨ãã«ã¯ä¸è¦ã§ã™)。ãã®å ´åˆã€\fI\-storepass\fRオプションをコマンドラインã§æŒ‡å®šã—ãªã„ã¨ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -592,7 +592,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -604,18 +604,18 @@
 .IP \(bu 2.3
 .\}
 \fIfile\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¤Þ¤¿¤Ï¥»¥­¥å¥ê¥Æ¥£Êݸ¤ì¤¿¥·¥¹¥Æ¥à¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+テストを目的ã¨ã™ã‚‹å ´åˆã¾ãŸã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¿è­·ã•ã‚ŒãŸã‚·ã‚¹ãƒ†ãƒ ã‚’使用ã—ã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-keypass [:env | :file] \fIargument\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ËÂбþ¤¹¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤òÊݸ¤ë¤Î¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£\fIjarsigner\fR¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Æ¤ª¤é¤º¡¢É¬Íפʥѥ¹¥ï¡¼¥É¤¬¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã«å¯¾å¿œã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚\fIjarsigner\fRを使用ã—ã¦JARファイルã«ç½²åを付ã‘ã‚‹ã¨ãã¯ã€ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚コマンドラインã§ãƒ‘スワードãŒæŒ‡å®šã•ã‚Œã¦ãŠã‚‰ãšã€å¿…è¦ãªãƒ‘スワードãŒã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -626,7 +626,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -638,84 +638,84 @@
 .IP \(bu 2.3
 .\}
 \fIfile\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¤Þ¤¿¤Ï¥»¥­¥å¥ê¥Æ¥£Êݸ¤ì¤¿¥·¥¹¥Æ¥à¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+テストを目的ã¨ã™ã‚‹å ´åˆã¾ãŸã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¿è­·ã•ã‚ŒãŸã‚·ã‚¹ãƒ†ãƒ ã‚’使用ã—ã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-sigfile \fIfile\fR
 .RS 4
-À¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë»ÈÍѤ¹¤ë¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Õ¥¡¥¤¥ë¤¬\fIDUKESIGN\fR¤Î¾ì¹ç¡¢À¸À®¤µ¤ì¤ë\fI\&.SF\fR¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ï¡¢\fIDUKESIGN\&.SF\fR¤ª¤è¤Ó\fIDUKESIGN\&.DSA\fR¤È¤¤¤¦Ì¾Á°¤Ç¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î\fIMETA\-INF\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸ\fI\&.SF\fRファイルãŠã‚ˆã³\fI\&.DSA\fRファイルã«ä½¿ç”¨ã™ã‚‹ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIDUKESIGN\fRã®å ´åˆã€ç”Ÿæˆã•ã‚Œã‚‹\fI\&.SF\fRãŠã‚ˆã³\fI\&.DSA\fRファイルã¯ã€\fIDUKESIGN\&.SF\fRãŠã‚ˆã³\fIDUKESIGN\&.DSA\fRã¨ã„ã†åå‰ã§ã€ç½²å付ãJARファイルã®\fIMETA\-INF\fRディレクトリã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Õ¥¡¥¤¥ëÆâ¤Îʸ»ú¤Ï¡¢¥»¥Ã¥È\fIa\-zA\-Z0\-9_\-\fR¤«¤é»ØÄꤵ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢¿ô»ú¡¢²¼Àþ¤ª¤è¤Ó¥Ï¥¤¥Õ¥óʸ»ú¤Î¤ß¤ò»ÈÍѤǤ­¤Þ¤¹¡£\fI\&.SF\fR¤ª¤è¤Ó\fI\&.DSA\fR¤Î¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¡¢¾®Ê¸»ú¤Ï¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
+ファイル内ã®æ–‡å­—ã¯ã€ã‚»ãƒƒãƒˆ\fIa\-zA\-Z0\-9_\-\fRã‹ã‚‰æŒ‡å®šã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚アルファベットã€æ•°å­—ã€ä¸‹ç·šãŠã‚ˆã³ãƒã‚¤ãƒ•ãƒ³æ–‡å­—ã®ã¿ã‚’使用ã§ãã¾ã™ã€‚\fI\&.SF\fRãŠã‚ˆã³\fI\&.DSA\fRã®ãƒ•ã‚¡ã‚¤ãƒ«åã§ã¯ã€å°æ–‡å­—ã¯ã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sigfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î8ʸ»ú¤ò¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬8ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬¤½¤Î¤Þ¤Þ»ÈÍѤµ¤ì¤Þ¤¹¡£ÊÌ̾¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ç̵¸ú¤Êʸ»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾¤òºîÀ®¤¹¤ë¤¿¤á¤Ë¡¢³ºÅö¤¹¤ëʸ»ú¤¬²¼Àþ(_)ʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-sigfile\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã€\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã®å…ˆé ­ã®8文字をã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚別åãŒ8文字未満ã®å ´åˆã¯ã€åˆ¥åãŒãã®ã¾ã¾ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚別åã«ã€ç½²åファイルåã§ç„¡åŠ¹ãªæ–‡å­—ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«åを作æˆã™ã‚‹ãŸã‚ã«ã€è©²å½“ã™ã‚‹æ–‡å­—ãŒä¸‹ç·š(_)文字ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-sigalg \fIalgorithm\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ë½ð̾¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç½²åアルゴリズムã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ɸ½àŪ¤Ê½ð̾¥¢¥ë¥´¥ê¥º¥à̾¤Î¥ê¥¹¥È¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Ë¤¢¤ë
-Java Cryptography Architecture (JCA)¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖÉÕÏ¿A: ɸ½à̾¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+標準的ãªç½²åアルゴリズムåã®ãƒªã‚¹ãƒˆã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã«ã‚ã‚‹
+Java Cryptography Architecture (JCA)リファレンス・ガイドã®ã€Œä»˜éŒ²A: 標準åã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ëÈëÌ©¸°¤È¤Î¸ß´¹À­¤¬É¬ÍפǤ¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢ÈëÌ©¸°¤Î¥¿¥¤¥×¤Ë±þ¤¸¤Æ¡¢\fISHA1withDSA\fR¡¢\fISHA256withRSA\fR¤Þ¤¿¤Ï\fISHA256withECDSA\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò¥æ¡¼¥¶¡¼¤¬»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¼ºÇÔ¤·¤Þ¤¹¡£
+ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«ã¯ã€JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç§˜å¯†éµã¨ã®äº’æ›æ€§ãŒå¿…è¦ã§ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€ç§˜å¯†éµã®ã‚¿ã‚¤ãƒ—ã«å¿œã˜ã¦ã€\fISHA1withDSA\fRã€\fISHA256withRSA\fRã¾ãŸã¯\fISHA256withECDSA\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãŒé™çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fI\-providerClass\fRオプションを使用ã—ã¦ãã®ã‚ˆã†ãªãƒ—ロãƒã‚¤ãƒ€ã‚’ユーザーãŒæŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤±æ•—ã—ã¾ã™ã€‚
 .RE
 .PP
 \-digestalg \fIalgorithm\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤ò¥À¥¤¥¸¥§¥¹¥È¤¹¤ëºÝ¤Ë»ÈÍѤ¹¤ë¥á¥Ã¥»¡¼¥¸¡¦¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルã®ã‚¨ãƒ³ãƒˆãƒªã‚’ダイジェストã™ã‚‹éš›ã«ä½¿ç”¨ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ»ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ɸ½àŪ¤Ê¥á¥Ã¥»¡¼¥¸¡¦¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à̾¤Î¥ê¥¹¥È¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Ë¤¢¤ë
-Java Cryptography Architecture (JCA)¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖÉÕÏ¿A: ɸ½à̾¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+標準的ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ»ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ åã®ãƒªã‚¹ãƒˆã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã«ã‚ã‚‹
+Java Cryptography Architecture (JCA)リファレンス・ガイドã®ã€Œä»˜éŒ²A: 標準åã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fISHA256\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò¥æ¡¼¥¶¡¼¤¬»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¼ºÇÔ¤·¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€\fISHA256\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãŒé™çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fI\-providerClass\fRオプションを使用ã—ã¦ãã®ã‚ˆã†ãªãƒ—ロãƒã‚¤ãƒ€ã‚’ユーザーãŒæŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤±æ•—ã—ã¾ã™ã€‚
 .RE
 .PP
 \-certs
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò\fI\-verify\fR¤ª¤è¤Ó\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊ󤬽ÐÎϤ˴ޤޤì¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ë¤Ï¡¢½ð̾¼Ô¤Î¸ø³«¸°¤ò¾ÚÌÀ¤¹¤ë¾ÚÌÀ½ñ(\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ)¤Î¥¿¥¤¥×¤Î̾Á°¤¬´Þ¤Þ¤ì¡¢¾ÚÌÀ½ñ¤¬X\&.509¾ÚÌÀ½ñ(\fIjava\&.security\&.cert\&.X509Certificate\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹)¤Î¾ì¹ç¡¢½ð̾¼Ô¤Î¼±ÊÌ̾¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+コマンドラインã§ã€\fI\-certs\fRオプションを\fI\-verify\fRãŠã‚ˆã³\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«æŒ‡å®šã—ãŸå ´åˆã€JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…å ±ãŒå‡ºåŠ›ã«å«ã¾ã‚Œã¾ã™ã€‚ã“ã®æƒ…å ±ã«ã¯ã€ç½²å者ã®å…¬é–‹éµã‚’証明ã™ã‚‹è¨¼æ˜Žæ›¸(\fI\&.DSA\fRファイルã«æ ¼ç´)ã®ã‚¿ã‚¤ãƒ—ã®åå‰ãŒå«ã¾ã‚Œã€è¨¼æ˜Žæ›¸ãŒX\&.509証明書(\fIjava\&.security\&.cert\&.X509Certificate\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹)ã®å ´åˆã€ç½²å者ã®è­˜åˆ¥åãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Î³Îǧ¤â¹Ô¤ï¤ì¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤ÎÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë(¤¢¤ë¾ì¹ç)¤¬¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£½ð̾¼Ô¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢Æâ¤Î¥¨¥ó¥È¥ê¤È°ìÃפ¹¤ë¾ì¹ç¡¢¤½¤Î½ð̾¼Ô¤Î¥­¡¼¥¹¥È¥¢¤Î¥¨¥ó¥È¥ê¤ÎÊÌ̾¤¬´Ý¥«¥Ã¥³Æâ¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+キーストアã®ç¢ºèªã‚‚è¡Œã‚ã‚Œã¾ã™ã€‚コマンドラインã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å€¤ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(ã‚ã‚‹å ´åˆ)ãŒãƒã‚§ãƒƒã‚¯ã•ã‚Œã¾ã™ã€‚ç½²å者ã®å…¬é–‹éµã®è¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã‚¨ãƒ³ãƒˆãƒªã¨ä¸€è‡´ã™ã‚‹å ´åˆã€ãã®ç½²å者ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åãŒä¸¸ã‚«ãƒƒã‚³å†…ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-certchain \fIfile\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤¿ÊÌ̾¤Ë¤è¤Ã¤Æɽ¤µ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬´°Á´¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ë¡¢»ÈÍѤ¹¤ë¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥óÁ´ÂΤòÊÝ»ý¤¹¤ë¤Î¤Ë½½Ê¬¤ÊÎΰ褬¤Ê¤¤¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¾å¤Ë¥­¡¼¥¹¥È¥¢¤¬³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï°ìÏ¢¤ÎÏ¢·ë¤µ¤ì¤¿X\&.509¾ÚÌÀ½ñ¡¢PKCS#7·Á¼°¤Îñ°ì¥Ç¡¼¥¿¡¦¥Ö¥í¥Ã¥¯¤Î¤¤¤º¤ì¤«¤È¤Ê¤ê¡¢¤½¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°¤Ï¥Ð¥¤¥Ê¥ê¡¦¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°¡¢Internet RFC 1421ɸ½à¤Çµ¬Äꤵ¤ì¤ë°õºþ²Äǽ¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°(Base64¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤È¤â¸Æ¤Ð¤ì¤ë)¤Î¤¤¤º¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ª¤è¤Óhttp://tools\&.ietf\&.org/html/rfc1421¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドラインã§æŒ‡å®šã—ãŸåˆ¥åã«ã‚ˆã£ã¦è¡¨ã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ãŒå®Œå…¨ã§ã¯ãªã„å ´åˆã«ã€ä½¿ç”¨ã™ã‚‹è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’指定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³å…¨ä½“ã‚’ä¿æŒã™ã‚‹ã®ã«å分ãªé ˜åŸŸãŒãªã„ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ä¸Šã«ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒæ ¼ç´ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ä¸€é€£ã®é€£çµã•ã‚ŒãŸX\&.509証明書ã€PKCS#7å½¢å¼ã®å˜ä¸€ãƒ‡ãƒ¼ã‚¿ãƒ»ãƒ–ロックã®ã„ãšã‚Œã‹ã¨ãªã‚Šã€ãã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼ã¯ãƒã‚¤ãƒŠãƒªãƒ»ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼ã€Internet RFC 1421標準ã§è¦å®šã•ã‚Œã‚‹å°åˆ·å¯èƒ½ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼(Base64エンコーディングã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ã„ãšã‚Œã‹ã«ãªã‚Šã¾ã™ã€‚インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ãŠã‚ˆã³http://tools\&.ietf\&.org/html/rfc1421ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¾éĹ¥â¡¼¥É¤ÇÆ°ºî¤·¡¢¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢\fIjarsigner\fR¤Ï¡¢JAR¤Î½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤Î¿Ê¹Ô¾õ¶·¤Ë´Ø¤¹¤ëÄɲþðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンドラインã§\fI\-verbose\fRオプションを指定ã—ãŸå ´åˆã€å†—長モードã§å‹•ä½œã—ã€ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€\fIjarsigner\fRã¯ã€JARã®ç½²åã¾ãŸã¯æ¤œè¨¼ã®é€²è¡ŒçŠ¶æ³ã«é–¢ã™ã‚‹è¿½åŠ æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-internalsf
 .RS 4
-°ÊÁ°¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤¿\fI\&.DSA\fR
-(½ð̾¥Ö¥í¥Ã¥¯)¥Õ¥¡¥¤¥ë¤Ë¡¢À¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë(½ð̾¥Õ¥¡¥¤¥ë)¤Î¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿´°Á´¤Ê¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤·¤¿¡£ ¤³¤ÎÆ°ºî¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿¡£½ÐÎÏJAR¥Õ¥¡¥¤¥ëÁ´ÂΤΥµ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë¤¿¤á¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-internalsf\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢°ÊÁ°¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Æ¥¹¥È¤ò¹Ô¤¦¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¼ÂºÝ¤Ë¤Ï¡¢\fI\-internalsf\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤¬Â礭¤¯¤Ê¤ë¤¿¤á¡¢»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+以å‰ã¯ã€JARファイルã®ç½²å時ã«ç”Ÿæˆã•ã‚ŒãŸ\fI\&.DSA\fR
+(ç½²åブロック)ファイルã«ã€ç”Ÿæˆã•ã‚ŒãŸ\fI\&.SF\fRファイル(ç½²åファイル)ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸå®Œå…¨ãªã‚³ãƒ”ーãŒå«ã¾ã‚Œã¦ã„ã¾ã—ãŸã€‚ ã“ã®å‹•ä½œã¯å¤‰æ›´ã•ã‚Œã¾ã—ãŸã€‚出力JARファイル全体ã®ã‚µã‚¤ã‚ºã‚’å°ã•ãã™ã‚‹ãŸã‚ã«ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fI\&.DSA\fRファイルã«ã¯\fI\&.SF\fRファイルã®ã‚³ãƒ”ーãŒå«ã¾ã‚Œãªã„よã†ã«ãªã£ã¦ã„ã¾ã™ã€‚コマンドラインã§\fI\-internalsf\fRを指定ã—ãŸå ´åˆã€ä»¥å‰ã¨åŒã˜ã‚ˆã†ã«å‹•ä½œã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ†ã‚¹ãƒˆã‚’è¡Œã†å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚実際ã«ã¯ã€\fI\-internalsf\fRオプションã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ãŒå¤§ãããªã‚‹ãŸã‚ã€ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-sectionsonly
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sectionsonly\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤ë\fI\&.SF\fR¥Õ¥¡¥¤¥ë(½ð̾¥Õ¥¡¥¤¥ë)¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤ò´Þ¤à¥Ø¥Ã¥À¡¼¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë´Þ¤Þ¤ì¤ë¤Î¤Ï¡¢JAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë´ØÏ¢¤¹¤ë¾ðÊ󤪤è¤Ó¥Ï¥Ã¥·¥å¤Î¤ß¤Ç¤¹¡£½ð̾¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドラインã§\fI\-sectionsonly\fRオプションを指定ã—ãŸå ´åˆã€JARファイルã®ç½²å時ã«ç”Ÿæˆã•ã‚Œã‚‹\fI\&.SF\fRファイル(ç½²åファイル)ã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ã‚’å«ã‚€ãƒ˜ãƒƒãƒ€ãƒ¼ã¯å«ã¾ã‚Œã¾ã›ã‚“。ã“ã‚Œã«å«ã¾ã‚Œã‚‹ã®ã¯ã€JARファイル内ã®å„ソース・ファイルã«é–¢é€£ã™ã‚‹æƒ…å ±ãŠã‚ˆã³ãƒãƒƒã‚·ãƒ¥ã®ã¿ã§ã™ã€‚ç½²åファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇŬ²½¤Î¤¿¤á¤Ë¡¢¤³¤Î¥Ø¥Ã¥À¡¼¤¬Äɲ䵤ì¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¤¿¤Ó¤Ë¡¢¸¡¾Ú¤Ç¤Ï¡¢¤Þ¤º¥Ø¥Ã¥À¡¼Æâ¤Î¥Ï¥Ã¥·¥å¤¬¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£°ìÃפ¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ï¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£°ìÃפ·¤Ê¤¤¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤È¤¤¤¦¡¢¤¢¤Þ¤êºÇŬ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¸¡¾Ú¤ò¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§ã¯ã€æœ€é©åŒ–ã®ãŸã‚ã«ã€ã“ã®ãƒ˜ãƒƒãƒ€ãƒ¼ãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹å ´åˆã€JARファイルを検証ã™ã‚‹ãŸã³ã«ã€æ¤œè¨¼ã§ã¯ã€ã¾ãšãƒ˜ãƒƒãƒ€ãƒ¼å†…ã®ãƒãƒƒã‚·ãƒ¥ãŒãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚一致ã™ã‚‹å ´åˆã€æ¤œè¨¼ã¯æ¬¡ã®æ‰‹é †ã«é€²ã¿ã¾ã™ã€‚一致ã—ãªã„å ´åˆã€\fI\&.SF\fRファイル内ã®å„ソース・ファイル情報セクションã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã¨ã„ã†ã€ã‚ã¾ã‚Šæœ€é©åŒ–ã•ã‚Œã¦ã„ãªã„検証を実行ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚JARファイルã®æ¤œè¨¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-sectionsonly\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¼ç¤Ë¥Æ¥¹¥ÈÍѤ˻ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ¹¤ë¤È¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤¬Â礭¤¯¤Ê¤ë¤¿¤á¡¢¥Æ¥¹¥ÈÍѰʳ°¤Ç¤Ï»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fI\-sectionsonly\fRオプションã¯ã€ä¸»ã«ãƒ†ã‚¹ãƒˆç”¨ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ãŒå¤§ãããªã‚‹ãŸã‚ã€ãƒ†ã‚¹ãƒˆç”¨ä»¥å¤–ã§ã¯ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-protected
 .RS 4
-\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¤Î¤¤¤º¤ì¤«¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£ÀìÍÑPIN¥ê¡¼¥À¡¼¤Ê¤É¤ÎÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹¤Ë¤è¤Ã¤Æ¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢\fItrue\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fItrue\fRã¾ãŸã¯\fIfalse\fRã®ã„ãšã‚Œã‹ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚専用PINリーダーãªã©ã®ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘スã«ã‚ˆã£ã¦ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€\fItrue\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-providerClass \fIprovider\-class\-name\fR
 .RS 4
-°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¤¬\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¡¢¤½¤Î¥Þ¥¹¥¿¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤹ¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€ãŒ\fIjava\&.security\fRセキュリティ・プロパティ・ファイルã«æŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ãã¯ã€ãã®ãƒžã‚¹ã‚¿ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-providerArg ConfigFilePath\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥Ä¡¼¥ë¤Ï¡¢¥×¥í¥Ð¥¤¥À¤òưŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¡¢¥È¡¼¥¯¥ó¹½À®¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ë\fIConfigFilePath\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢Oracle PKCS #11¥×¥í¥Ð¥¤¥À¤¬¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë¹½À®¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë\fIPKCS #11\fR¥­¡¼¥¹¥È¥¢¤ò°ìÍ÷ɽ¼¨¤¹¤ë¥³¥Þ¥ó¥É¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+\fI\-providerArg ConfigFilePath\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRツールã¯ã€ãƒ—ロãƒã‚¤ãƒ€ã‚’å‹•çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã€ãƒˆãƒ¼ã‚¯ãƒ³æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スã«\fIConfigFilePath\fRを使用ã—ã¾ã™ã€‚次ã®ä¾‹ã¯ã€Oracle PKCS #11プロãƒã‚¤ãƒ€ãŒã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã«æ§‹æˆã•ã‚Œã¦ã„ãªã‹ã£ãŸå ´åˆã«\fIPKCS #11\fRキーストアを一覧表示ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -733,9 +733,9 @@
 .PP
 \-providerName \fIproviderName\fR
 .RS 4
-\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Ç2¤Ä°Ê¾å¤Î¥×¥í¥Ð¥¤¥À¤¬¹½À®¤µ¤ì¤¿¾ì¹ç¡¢\fI\-providerName\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢ÆÃÄê¤Î¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤òÂоݤˤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ï¡¢¥×¥í¥Ð¥¤¥À¤Î̾Á°¤Ç¤¹¡£
+\fIjava\&.security\fRセキュリティ・プロパティ・ファイル内ã§2ã¤ä»¥ä¸Šã®ãƒ—ロãƒã‚¤ãƒ€ãŒæ§‹æˆã•ã‚ŒãŸå ´åˆã€\fI\-providerName\fRオプションを使用ã—ã¦ã€ç‰¹å®šã®ãƒ—ロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’対象ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã®å¼•æ•°ã¯ã€ãƒ—ロãƒã‚¤ãƒ€ã®åå‰ã§ã™ã€‚
 .sp
-Oracle PKCS #11¥×¥í¥Ð¥¤¥À¤Î¾ì¹ç¡¢\fIproviderName\fR¤Ï\fISunPKCS11\-\fR\fITokenName\fR¤È¤¤¤¦·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤³¤Ç¡¢¹½À®Â°À­¤Îɽ¤Ç¾ÜºÙ¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢\fITokenName\fR¤Ï¡¢¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤¬¹½À®¤µ¤ì¤¿Ì¾Á°¤ÎÀÜÈø¼­¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Ì¾Á°ÀÜÈø¼­\fISmartCard\fR¤Î\fIPKCS #11\fR¥­¡¼¥¹¥È¥¢¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+Oracle PKCS #11プロãƒã‚¤ãƒ€ã®å ´åˆã€\fIproviderName\fRã¯\fISunPKCS11\-\fR\fITokenName\fRã¨ã„ã†å½¢å¼ã«ãªã‚Šã¾ã™ã€‚ã“ã“ã§ã€æ§‹æˆå±žæ€§ã®è¡¨ã§è©³ç´°ã«èª¬æ˜Žã•ã‚Œã¦ã„るよã†ã«ã€\fITokenName\fRã¯ã€ãƒ—ロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ãŒæ§‹æˆã•ã‚ŒãŸåå‰ã®æŽ¥å°¾è¾žã§ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€åå‰æŽ¥å°¾è¾ž\fISmartCard\fRã®\fIPKCS #11\fRキーストア・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å†…容を一覧表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -752,45 +752,45 @@
 .PP
 \-J\fIjavaoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿\fIjavaoption\fRʸ»úÎó¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤ËľÀÜÅϤ·¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¤¥ó¥¿¥×¥ê¥¿¤ËÂФ¹¤ë¥é¥Ã¥Ñ¡¼¤Ç¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤòÄ´À°¤¹¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£»ØÄê¤Ç¤­¤ë¥¤¥ó¥¿¥×¥ê¥¿¡¦¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava \-h\fR¤Þ¤¿¤Ï\fIjava \-X\fR¤ÈÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã•ã‚ŒãŸ\fIjavaoption\fR文字列をJavaインタプリタã«ç›´æŽ¥æ¸¡ã—ã¾ã™ã€‚\fIjarsigner\fRコマンドã¯ã€ã‚¤ãƒ³ã‚¿ãƒ—リタã«å¯¾ã™ã‚‹ãƒ©ãƒƒãƒ‘ーã§ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã¯ã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã‚’調整ã™ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚指定ã§ãるインタプリタ・オプションを一覧表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava \-h\fRã¾ãŸã¯\fIjava \-X\fRã¨å…¥åŠ›ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-tsa \fIurl\fR
 .RS 4
-\fI\-tsa http://example\&.tsa\&.url\fR¤¬JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¢¤ë¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£URL
-\fIhttp://example\&.tsa\&.url\fR¤Ï¡¢Time Stamping Authority (TSA)¤Î¾ì½ê¤òÆÃÄꤷ¡¢\fI\-tsacert\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¸¡½Ð¤µ¤ì¤¿URL¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fI\-tsa\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢TSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤ËÇÛÃÖ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+\fI\-tsa http://example\&.tsa\&.url\fRãŒJARファイルã®ç½²å時ã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ã‚‹å ´åˆã€ç½²åã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚URL
+\fIhttp://example\&.tsa\&.url\fRã¯ã€Time Stamping Authority (TSA)ã®å ´æ‰€ã‚’特定ã—ã€\fI\-tsacert\fRオプションを指定ã—ã¦æ¤œå‡ºã•ã‚ŒãŸURLをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fI\-tsa\fRオプションã§ã¯ã€TSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’キーストアã«é…ç½®ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢\fIjarsigner\fR¤Ï¡¢RFC 3161¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥¿¥¤¥à¥¹¥¿¥ó¥×¡¦¥×¥í¥È¥³¥ë(TSP)¤ò»ÈÍѤ·¤ÆTSA¤ÈÄÌ¿®¤·¤Þ¤¹¡£À®¸ù¤¹¤ë¤È¡¢TSA¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤¿¥¿¥¤¥à¥¹¥¿¥ó¥×¡¦¥È¡¼¥¯¥ó¤Ï¡¢½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤Î½ð̾¤È¤È¤â¤ËÊݸ¤µ¤ì¤Þ¤¹¡£
+タイムスタンプを生æˆã™ã‚‹ãŸã‚ã«ã€\fIjarsigner\fRã¯ã€RFC 3161ã§å®šç¾©ã•ã‚Œã¦ã„るタイムスタンプ・プロトコル(TSP)を使用ã—ã¦TSAã¨é€šä¿¡ã—ã¾ã™ã€‚æˆåŠŸã™ã‚‹ã¨ã€TSAã«ã‚ˆã£ã¦è¿”ã•ã‚ŒãŸã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—・トークンã¯ã€ç½²åブロック・ファイルã®ç½²åã¨ã¨ã‚‚ã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tsacert \fIalias\fR
 .RS 4
-\fI\-tsacert alias\fR¤¬JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¢¤ë¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£ÊÌ̾¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÍ­¸ú¤ÊTSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤òÆÃÄꤷ¤Þ¤¹¡£¥¨¥ó¥È¥ê¤Î¾ÚÌÀ½ñ¤Ç¡¢TSA¤Î¾ì½ê¤òÆÃÄꤹ¤ëURL¤ò´Þ¤àSubject Information Access³ÈÄ¥µ¡Ç½¤¬³Îǧ¤µ¤ì¤Þ¤¹¡£
+\fI\-tsacert alias\fRãŒJARファイルã®ç½²å時ã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ã‚‹å ´åˆã€ç½²åã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚別åã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æœ‰åŠ¹ãªTSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’特定ã—ã¾ã™ã€‚エントリã®è¨¼æ˜Žæ›¸ã§ã€TSAã®å ´æ‰€ã‚’特定ã™ã‚‹URLã‚’å«ã‚€Subject Information Access拡張機能ãŒç¢ºèªã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-tsacert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢TSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢¤ËÇÛÃÖ¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fI\-tsacert\fRオプションを使用ã™ã‚‹å ´åˆã¯ã€TSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«é…ç½®ã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-tsapolicyid \fIpolicyid\fR
 .RS 4
-TSA¥µ¡¼¥Ð¡¼¤ËÁ÷¿®¤¹¤ë¥Ý¥ê¥·¡¼ID¤ò¼±Ê̤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¼±ÊÌ»Ò(OID)¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ý¥ê¥·¡¼ID¤ÏÁ÷¿®¤µ¤ì¤º¡¢TSA¥µ¡¼¥Ð¡¼¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥Ý¥ê¥·¡¼ID¤òÁªÂò¤·¤Þ¤¹¡£
+TSAサーãƒãƒ¼ã«é€ä¿¡ã™ã‚‹ãƒãƒªã‚·ãƒ¼IDを識別ã™ã‚‹ã‚ªãƒ–ジェクト識別å­(OID)を指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€ãƒãƒªã‚·ãƒ¼IDã¯é€ä¿¡ã•ã‚Œãšã€TSAサーãƒãƒ¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒãƒªã‚·ãƒ¼IDã‚’é¸æŠžã—ã¾ã™ã€‚
 .sp
-¥ª¥Ö¥¸¥§¥¯¥È¼±Ê̻Ҥϡ¢ITU Telecommunication Standardization Sector (ITU\-T)ɸ½à¤Ç¤¢¤ëX\&.696¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¼±Ê̻Ҥϡ¢Ä̾\fI1\&.2\&.3\&.4\fR¤Ê¤É¤Î¡¢Éé¤Ç¤Ï¤Ê¤¤¿ô»ú¤Î¥Ô¥ê¥ª¥É¶èÀÚ¤ê¤Î¥»¥Ã¥È¤Ç¤¹¡£
+オブジェクト識別å­ã¯ã€ITU Telecommunication Standardization Sector (ITU\-T)標準ã§ã‚ã‚‹X\&.696ã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚ã“れらã®è­˜åˆ¥å­ã¯ã€é€šå¸¸ã€\fI1\&.2\&.3\&.4\fRãªã©ã®ã€è² ã§ã¯ãªã„æ•°å­—ã®ãƒ”リオド区切りã®ã‚»ãƒƒãƒˆã§ã™ã€‚
 .RE
 .PP
 \-altsigner \fIclass\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ÂåÂؽð̾¥á¥«¥Ë¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤Ï¡¢\fIcom\&.sun\&.jarsigner\&.ContentSigner\fRÃê¾Ý¥¯¥é¥¹¤ò³ÈÄ¥¤¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¼±Ê̤·¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ï¡¢\fI\-altsignerpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£\fI\-altsigner\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥Õ¥©¥ë¥È¤Î½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€ä»£æ›¿ç½²åメカニズムを指定ã—ã¾ã™ã€‚完全修飾クラスåã¯ã€\fIcom\&.sun\&.jarsigner\&.ContentSigner\fR抽象クラスを拡張ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’識別ã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スã¯ã€\fI\-altsignerpath\fRオプションã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚\fI\-altsigner\fRオプションを使用ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã§ã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ç½²åメカニズムを使用ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIjarsigner\fRコマンドã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç½²åメカニズムを使用ã—ã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.sun\&.sun\&.jarsigner\&.AuthSigner\fR¤È¤¤¤¦Ì¾Á°¤Î¥¯¥é¥¹¤¬Ä󶡤¹¤ë½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢jarsigner¤Î¥ª¥×¥·¥ç¥ó\fI\-altsigner com\&.sun\&.jarsigner\&.AuthSigner\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIcom\&.sun\&.sun\&.jarsigner\&.AuthSigner\fRã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ãŒæä¾›ã™ã‚‹ç½²åメカニズムを使用ã™ã‚‹ã«ã¯ã€jarsignerã®ã‚ªãƒ—ション\fI\-altsigner com\&.sun\&.jarsigner\&.AuthSigner\fRを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-altsignerpath \fIclasspathlist\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¤½¤ì¤¬°Í¸¤¹¤ëJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-altsigner\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¤½¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルãŠã‚ˆã³ãã‚ŒãŒä¾å­˜ã™ã‚‹JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚\fI\-altsigner\fRオプションを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚クラス・ファイルãŒJARファイル内ã«ã‚ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã§ã¯ã€ãã®JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚
 .sp
-ÀäÂХѥ¹¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎÁêÂХѥ¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIclasspathlist\fR¤ËÊ£¿ô¤Î¥Ñ¥¹¤äJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¡¢¤½¤ì¤é¤ò¡¢Oracle Solaris¤Î¾ì¹ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó(;)¤Ç¡¢¤½¤ì¤¾¤ì¶èÀÚ¤ê¤Þ¤¹¡£ÌÜŪ¤Î¥¯¥é¥¹¤¬¤¹¤Ç¤Ë¸¡º÷¥Ñ¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£
+絶対パスã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ç›¸å¯¾ãƒ‘スを指定ã§ãã¾ã™ã€‚\fIclasspathlist\fRã«è¤‡æ•°ã®ãƒ‘スやJARファイルãŒå«ã¾ã‚Œã‚‹å ´åˆã€ãれらをã€Oracle Solarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§ã€ãã‚Œãžã‚ŒåŒºåˆ‡ã‚Šã¾ã™ã€‚目的ã®ã‚¯ãƒ©ã‚¹ãŒã™ã§ã«æ¤œç´¢ãƒ‘ス内ã«ã‚ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë̾¤ò´Þ¤á¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã¸ã®ãƒ‘スを指定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚JARファイルåã‚’å«ã‚ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -801,7 +801,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë̾¤ò¾Êά¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã¸ã®ãƒ‘スを指定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚JARファイルåã‚’çœç•¥ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -816,101 +816,101 @@
 .PP
 \-strict
 .RS 4
-½ð̾¤Þ¤¿¤Ï¸¡¾Ú½èÍýÃæ¤Ë¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬È¯¹Ô¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê¸¡½Ð¤µ¤ì¤¿½ÅÂç¤Ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬¥Ä¡¼¥ë¤Î½ªÎ»¥³¡¼¥É¤ËÈ¿±Ç¤µ¤ì¤Þ¤¹¡£¥¨¥é¡¼¤È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ç½²åã¾ãŸã¯æ¤œè¨¼å‡¦ç†ä¸­ã«ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒç™ºè¡Œã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šæ¤œå‡ºã•ã‚ŒãŸé‡å¤§ãªè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒãƒ„ールã®çµ‚了コードã«å映ã•ã‚Œã¾ã™ã€‚エラーã¨è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose \fIsuboptions\fR
 .RS 4
-¸¡¾Ú½èÍý¤Î¾ì¹ç¡¢\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢É½¼¨¤¹¤ë¾ðÊó¤ÎÎ̤ò·èÄꤹ¤ë¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥â¡¼¥É(¤Þ¤¿¤Ï¥µ¥Ö¥ª¥×¥·¥ç¥ó\fIall\fR)¤Ç¤Ï¡¢¥¨¥ó¥È¥ê¤¬½èÍý¤µ¤ì¤ë¤¿¤Ó¤Ë³Æ¥¨¥ó¥È¥ê¤¬É½¼¨¤µ¤ì¡¢¤½¤Î¸å¤ËJAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊó¤âɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-certs\fR¤ª¤è¤Ó\fI\-verbose:grouped\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Æ±¤¸½ð̾¼Ô¾ðÊó¤ò»ý¤Ä¥¨¥ó¥È¥ê¤¬¡¢¤½¤Î¾ÚÌÀ½ñ¾ðÊó¤È¤È¤â¤Ë¡¢¥°¥ë¡¼¥×²½¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-certs\fR¤ª¤è¤Ó\fI\-verbose:summary\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Æ±¤¸½ð̾¼Ô¾ðÊó¤ò»ý¤Ä¥¨¥ó¥È¥ê¤¬¡¢¤½¤Î¾ÚÌÀ½ñ¾ðÊó¤È¤È¤â¤Ë¡¢¥°¥ë¡¼¥×²½¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£³Æ¥¨¥ó¥È¥ê¤Î¾ÜºÙ¤Ï¡¢\fI1¤Ä¤Î¥¨¥ó¥È¥ê(°Ê¾å)\fR¤Ë¤Þ¤È¤á¤é¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£Îã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+検証処ç†ã®å ´åˆã€\fI\-verbose\fRオプションã«ã¯ã€è¡¨ç¤ºã™ã‚‹æƒ…å ±ã®é‡ã‚’決定ã™ã‚‹ã‚µãƒ–オプションを指定ã—ã¾ã™ã€‚\fI\-certs\fRオプションも指定ã—ãŸå ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ¢ãƒ¼ãƒ‰(ã¾ãŸã¯ã‚µãƒ–オプション\fIall\fR)ã§ã¯ã€ã‚¨ãƒ³ãƒˆãƒªãŒå‡¦ç†ã•ã‚Œã‚‹ãŸã³ã«å„エントリãŒè¡¨ç¤ºã•ã‚Œã€ãã®å¾Œã«JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…報も表示ã•ã‚Œã¾ã™ã€‚\fI\-certs\fRãŠã‚ˆã³\fI\-verbose:grouped\fRサブオプションを指定ã—ãŸå ´åˆã€åŒã˜ç½²å者情報をæŒã¤ã‚¨ãƒ³ãƒˆãƒªãŒã€ãã®è¨¼æ˜Žæ›¸æƒ…å ±ã¨ã¨ã‚‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-certs\fRãŠã‚ˆã³\fI\-verbose:summary\fRサブオプションを指定ã—ãŸå ´åˆã€åŒã˜ç½²å者情報をæŒã¤ã‚¨ãƒ³ãƒˆãƒªãŒã€ãã®è¨¼æ˜Žæ›¸æƒ…å ±ã¨ã¨ã‚‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚å„エントリã®è©³ç´°ã¯ã€\fI1ã¤ã®ã‚¨ãƒ³ãƒˆãƒª(以上)\fRã«ã¾ã¨ã‚られã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚例をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥¨¥é¡¼¤È·Ù¹ð"
+.SH "エラーã¨è­¦å‘Š"
 .PP
-½ð̾¤Þ¤¿¤Ï¸¡¾Ú¥×¥í¥»¥¹Ãæ¤Ë¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¡¢ÍÍ¡¹¤Ê¥¨¥é¡¼¤Þ¤¿¤Ï·Ù¹ð¤¬È¯¹Ô¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ç½²åã¾ãŸã¯æ¤œè¨¼ãƒ—ロセス中ã«ã€\fIjarsigner\fRコマンドã§ã€æ§˜ã€…ãªã‚¨ãƒ©ãƒ¼ã¾ãŸã¯è­¦å‘ŠãŒç™ºè¡Œã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¾ã³²¤¬¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É1¤Ç½ªÎ»¤·¤Þ¤¹¡£¾ã³²¤Ï¤Ê¤¤¤¬¡¢1¤Ä°Ê¾å¤Î½ÅÂç¤Ê·Ù¹ð¤¬¤¢¤ë¾ì¹ç¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ\fB¤¤¤Ê¤¤\fR¾ì¹ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É0¤Ç½ªÎ»¤·¡¢\fI\-strict\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï·Ù¹ð¥³¡¼¥É¤ÎORÃͤǽªÎ»¤·¤Þ¤¹¡£¾ðÊó·Ù¹ð¤Î¤ß¤¬¤¢¤ë¡¢¤Þ¤¿¤Ï·Ù¹ð¤¬¤Þ¤Ã¤¿¤¯¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¾ï¤Ë¥³¡¼¥É0¤Ç½ªÎ»¤·¤Þ¤¹¡£
+障害ãŒã‚ã‚‹å ´åˆã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰1ã§çµ‚了ã—ã¾ã™ã€‚障害ã¯ãªã„ãŒã€1ã¤ä»¥ä¸Šã®é‡å¤§ãªè­¦å‘ŠãŒã‚ã‚‹å ´åˆã€\fI\-strict\fRオプションãŒæŒ‡å®šã•ã‚Œã¦\fBã„ãªã„\fRå ´åˆã¯ã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰0ã§çµ‚了ã—ã€\fI\-strict\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯è­¦å‘Šã‚³ãƒ¼ãƒ‰ã®OR値ã§çµ‚了ã—ã¾ã™ã€‚情報警告ã®ã¿ãŒã‚ã‚‹ã€ã¾ãŸã¯è­¦å‘ŠãŒã¾ã£ãŸããªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¸¸ã«ã‚³ãƒ¼ãƒ‰0ã§çµ‚了ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥¨¥ó¥È¥ê¤Î½ð̾¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬´ü¸ÂÀÚ¤ì¤Ç¡¢¥Õ¥¡¥¤¥ë¤Î½ð̾¤òµö²Ä¤·¤Ê¤¤KeyUsage³ÈÄ¥µ¡Ç½¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤È¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É12 (=4+8)¤Ç½ªÎ»¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚¨ãƒ³ãƒˆãƒªã®ç½²åã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒæœŸé™åˆ‡ã‚Œã§ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®ç½²åを許å¯ã—ãªã„KeyUsage拡張機能を使用ã—ã¦ã„ã‚‹å ´åˆã€\fI\-strict\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã¨ã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰12 (=4+8)ã§çµ‚了ã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-UNIX¥Ù¡¼¥¹¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¤Ï0¤«¤é255¤Þ¤Ç¤ÎÃͤΤߤ¬Í­¸ú¤Î¤¿¤á¡¢½ªÎ»¥³¡¼¥É¤ÏºÆÍøÍѤµ¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+UNIXベースã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã¯0ã‹ã‚‰255ã¾ã§ã®å€¤ã®ã¿ãŒæœ‰åŠ¹ã®ãŸã‚ã€çµ‚了コードã¯å†åˆ©ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¼¡¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤êȯ¹Ô¤Ç¤­¤ë¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¤Î̾Á°¡¢¥³¡¼¥É¡¢ÀâÌÀ¤òµ­½Ò¤·¤Þ¤¹¡£
-.SS "¾ã³²"
+次ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šç™ºè¡Œã§ãるエラーãŠã‚ˆã³è­¦å‘Šã®åå‰ã€ã‚³ãƒ¼ãƒ‰ã€èª¬æ˜Žã‚’記述ã—ã¾ã™ã€‚
+.SS "障害"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó²òÀÏ¥¨¥é¡¼¡¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¸°¥Ú¥¢¤ò¸¡º÷¤Ç¤­¤Ê¤¤¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¼ºÇԤʤÉ(¸ÂÄꤵ¤ì¤Þ¤»¤ó)¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Î¼ºÇÔÍýͳ¡£
+コマンドライン解æžã‚¨ãƒ©ãƒ¼ã€JARファイルã«ç½²åã™ã‚‹éµãƒšã‚¢ã‚’検索ã§ããªã„ã€ã¾ãŸã¯ç½²å付ãJARファイルã®æ¤œè¨¼å¤±æ•—ãªã©(é™å®šã•ã‚Œã¾ã›ã‚“)ã€\fIjarsigner\fRコマンドã®å¤±æ•—ç†ç”±ã€‚
 .PP
 failure
 .RS 4
-¥³¡¼¥É1¡£½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤¬¼ºÇÔ¤·¤Þ¤¹¡£
+コード1。署åã¾ãŸã¯æ¤œè¨¼ãŒå¤±æ•—ã—ã¾ã™ã€‚
 .RE
-.SS "½ÅÂç¤Ê·Ù¹ð"
+.SS "é‡å¤§ãªè­¦å‘Š"
 .PP
-\fBÃí°Õ:\fR
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢½ÅÂç¤Ê·Ù¹ð¤Ï¥¨¥é¡¼¤È¤·¤ÆÊó¹ð¤µ¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã€é‡å¤§ãªè­¦å‘Šã¯ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å ±å‘Šã•ã‚Œã¾ã™ã€‚
 .PP
-JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ë¾ÚÌÀ½ñ¤Ë¥¨¥é¡¼¤¬¤¢¤ë¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë¾¤ÎÌäÂ꤬¤¢¤ë¤Ê¤É¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤¬½ÅÂç¤Ê·Ù¹ð¤òȯ¹Ô¤¹¤ëÍýͳ¡£
+JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹è¨¼æ˜Žæ›¸ã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚‹ã€ã¾ãŸã¯ç½²å付ãJARファイルã«ä»–ã®å•é¡ŒãŒã‚ã‚‹ãªã©ã€\fIjarsigner\fRコマンドãŒé‡å¤§ãªè­¦å‘Šã‚’発行ã™ã‚‹ç†ç”±ã€‚
 .PP
 hasExpiredCert
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬´ü¸ÂÀÚ¤ì¤Î¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒæœŸé™åˆ‡ã‚Œã®ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 notYetValidCert
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬¤Þ¤ÀÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒã¾ã æœ‰åŠ¹ã«ãªã£ã¦ã„ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 chainNotValidated
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬Àµ¤·¤¯¸¡¾Ú¤Ç¤­¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ãŒæ­£ã—ã検証ã§ããªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badKeyUsage
 .RS 4
-¥³¡¼¥É8¡£¤³¤ÎJAR¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎKeyUsage³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®JARã«ã¯ã€ç½²å者証明書ã®KeyUsage拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badExtendedKeyUsage
 .RS 4
-¥³¡¼¥É8¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎExtendedKeyUsage³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®jarã«ã¯ã€ç½²å者証明書ã®ExtendedKeyUsage拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badNetscapeCertType
 .RS 4
-¥³¡¼¥É8¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎNetscapeCertType³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®jarã«ã¯ã€ç½²å者証明書ã®NetscapeCertType拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 hasUnsignedEntry
 .RS 4
-¥³¡¼¥É16¡£¤³¤Îjar¤Ë¤Ï¡¢À°¹çÀ­¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¤¤Ê¤¤Ì¤½ð̾¤Î¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード16。ã“ã®jarã«ã¯ã€æ•´åˆæ€§ãƒã‚§ãƒƒã‚¯ã‚’ã—ã¦ã„ãªã„未署åã®ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 notSignedByAlias
 .RS 4
-¥³¡¼¥É32¡£¤³¤Îjar¤Ë¤Ï¡¢»ØÄꤵ¤ì¤¿ÊÌ̾¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Æ¤¤¤Ê¤¤½ð̾ºÑ¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード32。ã“ã®jarã«ã¯ã€æŒ‡å®šã•ã‚ŒãŸåˆ¥åã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¦ã„ãªã„ç½²å済エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 aliasNotInStore
 .RS 4
-¥³¡¼¥É32¡£¤³¤Îjar¤Ë¤Ï¡¢¤³¤Î¥­¡¼¥¹¥È¥¢Æâ¤ÎÊÌ̾¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Æ¤¤¤Ê¤¤½ð̾ºÑ¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+コード32。ã“ã®jarã«ã¯ã€ã“ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®åˆ¥åã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¦ã„ãªã„ç½²å済エントリãŒå«ã¾ã‚Œã¾ã™ã€‚
 .RE
-.SS "¾ðÊó·Ù¹ð"
+.SS "情報警告"
 .PP
-¾ðÊó·Ù¹ð¤Ë¤Ï¡¢¥¨¥é¡¼¤Ç¤Ï¤Ê¤¤¤¬ÉÔŬÀڤȤߤʤµ¤ì¤ë¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¥³¡¼¥É¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+情報警告ã«ã¯ã€ã‚¨ãƒ©ãƒ¼ã§ã¯ãªã„ãŒä¸é©åˆ‡ã¨ã¿ãªã•ã‚Œã‚‹ã‚‚ã®ãŒå«ã¾ã‚Œã¾ã™ã€‚コードã¯ã‚ã‚Šã¾ã›ã‚“。
 .PP
 hasExpiringCert
 .RS 4
-¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬6¤«·î°ÊÆâ¤Ë´ü¸ÂÀÚ¤ì¤È¤Ê¤ë¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒ6ã‹æœˆä»¥å†…ã«æœŸé™åˆ‡ã‚Œã¨ãªã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 noTimestamp
 .RS 4
-¤³¤Îjar¤Ë¤Ï¡¢¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤Þ¤Ê¤¤½ð̾¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ê¤·¤Ç¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü¸Â(\fIYYYY\-MM\-DD\fR)¸å¤Þ¤¿¤Ï¾­Íè¤Î¼è¾ÃÆü¸å¡¢¥æ¡¼¥¶¡¼¤Ï¤³¤ÎJAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤Ç¤­¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+ã“ã®jarã«ã¯ã€ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã¾ãªã„ç½²åãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚タイムスタンプãªã—ã§ã¯ã€ç½²å者証明書ã®æœ‰åŠ¹æœŸé™(\fIYYYY\-MM\-DD\fR)後ã¾ãŸã¯å°†æ¥ã®å–消日後ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã“ã®JARファイルを検証ã§ããªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "Îã"
-.SS "JAR¥Õ¥¡¥¤¥ë¤Î½ð̾"
+.SH "例"
+.SS "JARファイルã®ç½²å"
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢ÊÌ̾¤¬\fIworking\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fImystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤Ë¤¢¤ë\fIjane\fR¤Ç¤¢¤ë¥æ¡¼¥¶¡¼¤ÎÈëÌ©¸°¤Çbundle\&.jar¤Ë½ð̾¤·¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë\fIsbundle\&.jar\fR¤È¤¤¤¦Ì¾Á°¤òÉÕ¤±¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åãŒ\fIworking\fRディレクトリã®\fImystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã‚ã‚‹\fIjane\fRã§ã‚るユーザーã®ç§˜å¯†éµã§bundle\&.jarã«ç½²åã—ã€ç½²å付ãJARファイルã«\fIsbundle\&.jar\fRã¨ã„ã†åå‰ã‚’付ã‘ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -925,9 +925,9 @@
 .RE
 .\}
 .PP
-Á°½Ò¤Î¥³¥Þ¥ó¥É¤Ç¤Ï\fI\-sigfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤ëÀ¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢ÊÌ̾¤Ë´ð¤Å¤¤¤¿¥Ç¥Õ¥©¥ë¥È¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢Ì¾Á°ÉÕ¤­¤Î\fIJANE\&.SF\fR¤ª¤è¤Ó\fIJANE\&.DSA\fR¤Ç¤¹¡£
+å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯\fI\-sigfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€ç½²å付ãJARファイルã«æ ¼ç´ã•ã‚Œã‚‹ç”Ÿæˆã•ã‚ŒãŸ\fI\&.SF\fRファイルãŠã‚ˆã³\fI\&.DSA\fRファイルã®åå‰ã¯ã€åˆ¥åã«åŸºã¥ã„ãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åå‰ã«ãªã‚Šã¾ã™ã€‚ã“れらã¯ã€åå‰ä»˜ãã®\fIJANE\&.SF\fRãŠã‚ˆã³\fIJANE\&.DSA\fRã§ã™ã€‚
 .PP
-¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ª¤è¤ÓÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤òµá¤á¤é¤ì¤ë¾ì¹ç¡¢Á°½Ò¤Î¥³¥Þ¥ó¥É¤òû½Ì¤·¤Æ¡¢¼¡¤Î¤³¤È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+ストアã®ãƒ‘スワードãŠã‚ˆã³ç§˜å¯†éµã®ãƒ‘スワードを求ã‚られる場åˆã€å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’短縮ã—ã¦ã€æ¬¡ã®ã“ã¨ã‚’実行ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -940,7 +940,7 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤¬¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢(¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î\&.keystore)¤Ç¤¢¤ë¾ì¹ç¡¢¼¡¤Ë¼¨¤¹¤è¤¦¤Ë¡¢¥­¡¼¥¹¥È¥¢¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£
+キーストアãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢(ホーム・ディレクトリ内ã®\&.keystore)ã§ã‚ã‚‹å ´åˆã€æ¬¡ã«ç¤ºã™ã‚ˆã†ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -952,7 +952,7 @@
 .RE
 .\}
 .PP
-ÆþÎÏJAR¥Õ¥¡¥¤¥ë(bundle\&.jar)¤ò½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ç¾å½ñ¤­¤¹¤ë¾ì¹ç¡¢¼¡¤Î¤è¤¦¤Ë\fI\-signedjar\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+入力JARファイル(bundle\&.jar)ã‚’ç½²å付ãJARファイルã§ä¸Šæ›¸ãã™ã‚‹å ´åˆã€æ¬¡ã®ã‚ˆã†ã«\fI\-signedjar\fRオプションを指定ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -963,9 +963,9 @@
 .if n \{\
 .RE
 .\}
-.SS "½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú"
+.SS "ç½²å付ãJARファイルã®æ¤œè¨¼"
 .PP
-½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¤Æ¡¢½ð̾¤¬Í­¸ú¤ÇJAR¥Õ¥¡¥¤¥ë¤¬²þ¤¶¤ó¤µ¤ì¤Ê¤«¤Ã¤¿¤³¤È¤ò³Îǧ¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+ç½²å付ãJARファイルを検証ã—ã¦ã€ç½²åãŒæœ‰åŠ¹ã§JARファイルãŒæ”¹ã–ã‚“ã•ã‚Œãªã‹ã£ãŸã“ã¨ã‚’確èªã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -977,7 +977,7 @@
 .RE
 .\}
 .PP
-¸¡¾Ú¤¬À®¸ù¤¹¤ë¤È¡¢\fIjar verified\fR¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÜºÙ¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£\fIjarsigner\fR¤ò\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¥µ¥ó¥×¥ë¤ò¡¢¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+検証ãŒæˆåŠŸã™ã‚‹ã¨ã€\fIjar verified\fRãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-verbose\fRオプションを使用ã™ã‚‹ã¨ã€è©³ç´°æƒ…報をå–å¾—ã§ãã¾ã™ã€‚\fIjarsigner\fRã‚’\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹ã‚µãƒ³ãƒ—ルをã€æ¬¡ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1000,9 +1000,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¾ÚÌÀ½ñ¾ðÊó¤ò»ÈÍѤ·¤¿¸¡¾Ú"
+.SS "証明書情報を使用ã—ãŸæ¤œè¨¼"
 .PP
-\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò\fI\-verify\fR¤ª¤è¤Ó\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊ󤬽ÐÎϤ˴ޤޤì¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ë¤Ï¡¢¾ÚÌÀ½ñ¥¿¥¤¥×¡¢½ð̾¼Ô¤Î¼±ÊÌ̾¾ðÊó(X\&.509¾ÚÌÀ½ñ¤Î¾ì¹ç)¤¬´Þ¤Þ¤ì¡¢´Ý¥«¥Ã¥³Æâ¤Ë¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤Î¸ø³«¸°¾ÚÌÀ½ñ¤Ë°ìÃפ¹¤ë¾ì¹ç¤Î½ð̾¼Ô¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI\-certs\fRオプションを\fI\-verify\fRãŠã‚ˆã³\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«æŒ‡å®šã—ãŸå ´åˆã€JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…å ±ãŒå‡ºåŠ›ã«å«ã¾ã‚Œã¾ã™ã€‚ã“ã®æƒ…å ±ã«ã¯ã€è¨¼æ˜Žæ›¸ã‚¿ã‚¤ãƒ—ã€ç½²å者ã®è­˜åˆ¥å情報(X\&.509証明書ã®å ´åˆ)ãŒå«ã¾ã‚Œã€ä¸¸ã‚«ãƒƒã‚³å†…ã«ã¯ã€JARファイルã®å…¬é–‹éµè¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã«ä¸€è‡´ã™ã‚‹å ´åˆã®ç½²å者ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åãŒå«ã¾ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1030,8 +1030,8 @@
 .RE
 .\}
 .PP
-½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤¬X\&.509¾ÚÌÀ½ñ¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢¼±ÊÌ̾¾ðÊó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£¤½¤Î¾ì¹ç¤Ë¤Ï¡¢¾ÚÌÀ½ñ¤Î¥¿¥¤¥×¤ÈÊÌ̾¤Î¤ß¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬PGP¾ÚÌÀ½ñ¤Ç¡¢ÊÌ̾¤¬\fIbob\fR¤Ç¤¢¤ë¾ì¹ç¡¢\fIPGP, (bob)\fR¤ò¼èÆÀ¤·¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+ç½²å者ã®è¨¼æ˜Žæ›¸ãŒX\&.509証明書ã§ã¯ãªã„å ´åˆã€è­˜åˆ¥å情報ã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。ãã®å ´åˆã«ã¯ã€è¨¼æ˜Žæ›¸ã®ã‚¿ã‚¤ãƒ—ã¨åˆ¥åã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒPGP証明書ã§ã€åˆ¥åãŒ\fIbob\fRã§ã‚ã‚‹å ´åˆã€\fIPGP, (bob)\fRã‚’å–å¾—ã—ã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -1063,8 +1063,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/security/index\&.html¤Ë¤¢¤ë
-¡Ö¥³¡¼¥¹: Java SE¤Î¥»¥­¥å¥ê¥Æ¥£µ¡Ç½¡×
+http://docs\&.oracle\&.com/javase/tutorial/security/index\&.htmlã«ã‚ã‚‹
+「コース: Java SEã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£æ©Ÿèƒ½ã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/java.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/java.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: java
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "java" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "java" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-java \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+java \- Javaアプリケーションを起動ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,26 +74,26 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassname\fR
 .RS 4
-µ¯Æ°¤¹¤ë¥¯¥é¥¹¤Î̾Á°¡£
+èµ·å‹•ã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚
 .RE
 .PP
 \fIfilename\fR
 .RS 4
-¸Æ¤Ó½Ð¤µ¤ì¤ëJava¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Î̾Á°¡£\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤È°ì½ï¤Ë¤Î¤ß»ÈÍѤ·¤Þ¤¹¡£
+呼ã³å‡ºã•ã‚Œã‚‹Javaアーカイブ(JAR)ファイルã®åå‰ã€‚\fI\-jar\fRオプションã¨ä¸€ç·’ã«ã®ã¿ä½¿ç”¨ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIargs\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸ\fImain()\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤ÏJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò³«»Ï¤·¤Þ¤¹¡£Java Runtime Environment (JRE)¤òµ¯Æ°¤·¤¿¸å¡¢»ØÄꤷ¤¿¥¯¥é¥¹¤ò¥í¡¼¥É¤·¡¢¤½¤Î¥¯¥é¥¹¤Î\fImain()\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ë¤è¤ê¡¢¤³¤ì¤ò¹Ô¤¤¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ï¡¢\fIpublic\fR¤ª¤è¤Ó\fIstatic\fR¤È¤·¤ÆÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢ÃͤÏÊÖ¤»¤Þ¤»¤ó¡£¤µ¤é¤Ë¡¢\fIString\fRÇÛÎó¤ò¥Ñ¥é¥á¡¼¥¿¤È¤·¤Æ»ØÄê¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥ÉÀë¸À¤Ï¼¡¤Î·Á¼°¤ò´Þ¤ß¤Þ¤¹¡£
+\fIjava\fRコマンドã¯Javaアプリケーションを開始ã—ã¾ã™ã€‚Java Runtime Environment (JRE)ã‚’èµ·å‹•ã—ãŸå¾Œã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ã‚’ロードã—ã€ãã®ã‚¯ãƒ©ã‚¹ã®\fImain()\fRメソッドを呼ã³å‡ºã™ã“ã¨ã«ã‚ˆã‚Šã€ã“れを行ã„ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€\fIpublic\fRãŠã‚ˆã³\fIstatic\fRã¨ã—ã¦å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€å€¤ã¯è¿”ã›ã¾ã›ã‚“。ã•ã‚‰ã«ã€\fIString\fRé…列をパラメータã¨ã—ã¦æŒ‡å®šã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚メソッド宣言ã¯æ¬¡ã®å½¢å¼ã‚’å«ã¿ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -105,16 +105,16 @@
 .RE
 .\}
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fImain()\fR¥á¥½¥Ã¥É¤¬¤¢¤ë¤«\fIjavafx\&.application\&.Application\fR¤ò³ÈÄ¥¤¹¤ë¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¤³¤È¤Ç¡¢JavaFX¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òµ¯Æ°¤Ç¤­¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¡¢µ¯Æ°¥Ä¡¼¥ë¤Ï\fIApplication\fR¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¹½À®¤·¡¢¤½¤Î\fIinit()\fR¥á¥½¥Ã¥É¤ò¥³¡¼¥ë¤·¡¢\fIstart(javafx\&.stage\&.Stage)\fR¥á¥½¥Ã¥É¤ò¥³¡¼¥ë¤·¤Þ¤¹¡£
+\fIjava\fRコマンドを使用ã—ã¦ã€\fImain()\fRメソッドãŒã‚ã‚‹ã‹\fIjavafx\&.application\&.Application\fRã‚’æ‹¡å¼µã™ã‚‹ã‚¯ãƒ©ã‚¹ã‚’ロードã™ã‚‹ã“ã¨ã§ã€JavaFXアプリケーションを起動ã§ãã¾ã™ã€‚後者ã®å ´åˆã€èµ·å‹•ãƒ„ールã¯\fIApplication\fRクラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’構æˆã—ã€ãã®\fIinit()\fRメソッドをコールã—ã€\fIstart(javafx\&.stage\&.Stage)\fRメソッドをコールã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¤Ê¤¤ºÇ½é¤Î°ú¿ô¤Ï¡¢¸Æ¤Ó½Ð¤µ¤ì¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ̾¤Ç¤¹¡£\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î°ú¿ô¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£µ¯Æ°¥¯¥é¥¹¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î\fIMain\-Class\fR¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Ø¥Ã¥À¡¼¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€\fIjava\fRコマンドã®ã‚ªãƒ—ションã§ã¯ãªã„最åˆã®å¼•æ•°ã¯ã€å‘¼ã³å‡ºã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾åã§ã™ã€‚\fI\-jar\fRオプションを指定ã—ãŸå ´åˆã€ãã®å¼•æ•°ã¯ã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã®åå‰ã«ãªã‚Šã¾ã™ã€‚起動クラスã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®\fIMain\-Class\fRマニフェスト・ヘッダーã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-JRE¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¡¢¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤ª¤è¤Ó¥æ¡¼¥¶¡¼¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Î3²Õ½ê¤«¤é¡¢µ¯Æ°¥¯¥é¥¹(¤ª¤è¤Ó¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¾¤Î¥¯¥é¥¹)¤ò¸¡º÷¤·¤Þ¤¹¡£
+JREã¯ã€ãƒ–ートストラップ・クラス・パスã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ¸ˆæ‹¡å¼µæ©Ÿèƒ½ãŠã‚ˆã³ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®3箇所ã‹ã‚‰ã€èµ·å‹•ã‚¯ãƒ©ã‚¹(ãŠã‚ˆã³ã‚¢ãƒ—リケーションã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ä»–ã®ã‚¯ãƒ©ã‚¹)を検索ã—ã¾ã™ã€‚
 .PP
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤Î¸å¤Î°ú¿ô¤Ï¡¢\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+クラス・ファイルåã¾ãŸã¯JARファイルåã®å¾Œã®å¼•æ•°ã¯ã€\fImain()\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥«¥Æ¥´¥ê¤ËʬÎà¤Ç¤­¤ë¹­ÈϤʥª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
+\fIjava\fRコマンドã¯ã€æ¬¡ã®ã‚«ãƒ†ã‚´ãƒªã«åˆ†é¡žã§ãる広範ãªã‚ªãƒ—ションをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -124,7 +124,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɸ½à¥ª¥×¥·¥ç¥ó
+標準オプション
 .RE
 .sp
 .RS 4
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó
+éžæ¨™æº–オプション
 .RE
 .sp
 .RS 4
@@ -146,7 +146,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥé¥ó¥¿¥¤¥à¡¦¥ª¥×¥·¥ç¥ó
+高度ãªãƒ©ãƒ³ã‚¿ã‚¤ãƒ ãƒ»ã‚ªãƒ—ション
 .RE
 .sp
 .RS 4
@@ -157,7 +157,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅÙ¤ÊJIT¥³¥ó¥Ñ¥¤¥é¡¦¥ª¥×¥·¥ç¥ó
+高度ãªJITコンパイラ・オプション
 .RE
 .sp
 .RS 4
@@ -168,7 +168,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥµ¡¼¥Ó¥¹¥¢¥Ó¥ê¥Æ¥£¡¦¥ª¥×¥·¥ç¥ó
+高度ãªã‚µãƒ¼ãƒ“スアビリティ・オプション
 .RE
 .sp
 .RS 4
@@ -179,31 +179,31 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥ¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥ª¥×¥·¥ç¥ó
+高度ãªã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚ªãƒ—ション
 .RE
 .PP
-ɸ½à¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java Virtual Machine (JVM)¤Î¤¹¤Ù¤Æ¤Î¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤¹¤ë¤³¤È¤¬Êݾڤµ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢JRE¤Î¥Ð¡¼¥¸¥ç¥ó¤Î³Îǧ¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÀßÄê¡¢¾éĹ¤Ê½ÐÎϤÎÍ­¸ú²½¤Ê¤É¤Î°ìÈÌŪ¤Ê¥¢¥¯¥·¥ç¥ó¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+標準ã®ã‚ªãƒ—ションã¯ã€Java Virtual Machine (JVM)ã®ã™ã¹ã¦ã®å®Ÿè£…ã§ã‚µãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ãŒä¿è¨¼ã•ã‚Œã¾ã™ã€‚ã“れらã¯ã€JREã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ç¢ºèªã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®è¨­å®šã€å†—é•·ãªå‡ºåŠ›ã®æœ‰åŠ¹åŒ–ãªã©ã®ä¸€èˆ¬çš„ãªã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-ɸ½à°Ê³°¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot²¾ÁÛ¥Þ¥·¥ó¤Ë¸ÇÍ­¤ÎÈÆÍÑ¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ë¤¿¤á¡¢¤¹¤Ù¤Æ¤ÎJVM¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ÏÊݾڤµ¤ì¤º¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-X\fR¤Ç³«»Ï¤·¤Þ¤¹¡£
+標準以外ã®ã‚ªãƒ—ションã¯ã€Java HotSpot仮想マシンã«å›ºæœ‰ã®æ±Žç”¨ã‚ªãƒ—ションã§ã‚ã‚‹ãŸã‚ã€ã™ã¹ã¦ã®JVM実装ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã¯ä¿è¨¼ã•ã‚Œãšã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã¯\fI\-X\fRã§é–‹å§‹ã—ã¾ã™ã€‚
 .PP
-³ÈÄ¥¥ª¥×¥·¥ç¥ó¤Ï¡¢ÉÔÍѰդ˻ÈÍѤ·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢ÆÃÄê¤Î¥·¥¹¥Æ¥àÍ×·ï¤ò»ý¤Ä¤³¤È¤¬Â¿¤¯¡¢¥·¥¹¥Æ¥à¹½À®¥Ñ¥é¥á¡¼¥¿¤Ø¤ÎÆø¢¥¢¥¯¥»¥¹¤¬É¬Íפʾì¹ç¤¬¤¢¤ëJava HotSpot²¾ÁÛ¥Þ¥·¥óÁàºî¤ÎÆÃÄê¤ÎÎΰè¤òÄ´À°¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë³«È¯¼Ô¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£¤³¤ì¤é¤Ï¡¢¤¹¤Ù¤Æ¤ÎJVM¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ÏÊݾڤµ¤ì¤º¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£³ÈÄ¥¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX\fR¤Ç»Ï¤Þ¤ê¤Þ¤¹¡£
+拡張オプションã¯ã€ä¸ç”¨æ„ã«ä½¿ç”¨ã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚ã“れらã¯ã€ç‰¹å®šã®ã‚·ã‚¹ãƒ†ãƒ è¦ä»¶ã‚’æŒã¤ã“ã¨ãŒå¤šãã€ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆãƒ‘ラメータã¸ã®ç‰¹æ¨©ã‚¢ã‚¯ã‚»ã‚¹ãŒå¿…è¦ãªå ´åˆãŒã‚ã‚‹Java HotSpot仮想マシンæ“作ã®ç‰¹å®šã®é ˜åŸŸã‚’調整ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹é–‹ç™ºè€…オプションã§ã™ã€‚ã“れらã¯ã€ã™ã¹ã¦ã®JVM実装ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã¯ä¿è¨¼ã•ã‚Œãšã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚拡張オプションã¯\fI\-XX\fRã§å§‹ã¾ã‚Šã¾ã™ã€‚
 .PP
-ºÇ¿·¥ê¥ê¡¼¥¹¤ÇÈó¿ä¾©¤Þ¤¿¤Ïºï½ü¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó¤òÄÉÀפ¹¤ë¤¿¤á¤Ë¡¢¥É¥­¥å¥á¥ó¥È¤ÎºÇ¸å¤ËÈó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤È¤¤¤¦Ì¾Á°¤Î¥»¥¯¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£
+最新リリースã§éžæŽ¨å¥¨ã¾ãŸã¯å‰Šé™¤ã•ã‚Œã‚‹ã‚ªãƒ—ションを追跡ã™ã‚‹ãŸã‚ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®æœ€å¾Œã«éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ションã¨ã„ã†åå‰ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥Ö¡¼¥ë¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëµ¡Ç½¤òÍ­¸ú¤Ë¤·¤¿¤ê¡¢¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëµ¡Ç½¤ò̵¸ú¤Ë¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤òɬÍפȤ·¤Þ¤»¤ó¡£¥Ö¡¼¥ëÃÍ\fI\-XX\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥×¥é¥¹µ­¹æ(\fI\-XX:+\fR\fIOptionName\fR)¤ò»ÈÍѤ·¤ÆÍ­¸ú¤Ë¤·¡¢¥Þ¥¤¥Ê¥¹µ­¹æ(\fI\-XX:\-\fR\fIOptionName\fR)¤ò»ÈÍѤ·¤Æ̵¸ú¤Ë¤·¤Þ¤¹¡£
+ブール・オプションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ã„る機能を有効ã«ã—ãŸã‚Šã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„る機能を無効ã«ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ˆã†ãªã‚ªãƒ—ションã¯ã€ãƒ‘ラメータを必è¦ã¨ã—ã¾ã›ã‚“。ブール値\fI\-XX\fRオプションã¯ã€ãƒ—ラス記å·(\fI\-XX:+\fR\fIOptionName\fR)を使用ã—ã¦æœ‰åŠ¹ã«ã—ã€ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\fI\-XX:\-\fR\fIOptionName\fR)を使用ã—ã¦ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
 .PP
-°ú¿ô¤¬É¬Íפʥª¥×¥·¥ç¥ó¤Î¾ì¹ç¡¢°ú¿ô¤Ï¡¢¥ª¥×¥·¥ç¥ó̾¤ò¶õÇò¡¢¥³¥í¥ó(:)¤Þ¤¿¤ÏÅù¹æ(=)¤Ç¶èÀڤ俤â¤Î¤Ë¤Ê¤ë¤«¡¢¤¢¤ë¤¤¤Ï°ú¿ô¤¬¥ª¥×¥·¥ç¥ó¤Î¸å¤ËľÀܳ¤¯¾ì¹ç¤â¤¢¤ê¤Þ¤¹(Àµ³Î¤Ê¹½Ê¸¤Ï³Æ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹)¡£¥µ¥¤¥º¤ò¥Ð¥¤¥Èñ°Ì¤Ç»ØÄꤹ¤ë¤è¤¦µá¤á¤é¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ÀÜÈø¼­¤ò»ÈÍѤ·¤Ê¤¤¤«¡¢¤¢¤ë¤¤¤Ï¥­¥í¥Ð¥¤¥È(KB)¤Ë¤ÏÀÜÈø¼­\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È(MB)¤Ë¤ÏÀÜÈø¼­\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È(GB)¤Ë¤ÏÀÜÈø¼­\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥µ¥¤¥º¤ò8GB¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢\fI8g\fR¡¢\fI8192m\fR¡¢\fI8388608k\fR¤Þ¤¿¤Ï\fI8589934592\fR¤Î¤¤¤º¤ì¤«¤ò°ú¿ô¤È¤·¤Æ»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¡¼¥»¥ó¥È¤Î»ØÄ꤬ɬÍפʾì¹ç¤Ï¡¢0¤«¤é1¤Î¿ôÃͤò»ÈÍѤ·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢25%¤Î¾ì¹ç¤Ï\fI0\&.25\fR¤ò»ØÄꤷ¤Þ¤¹)¡£
-.SS "ɸ½à¥ª¥×¥·¥ç¥ó"
+引数ãŒå¿…è¦ãªã‚ªãƒ—ションã®å ´åˆã€å¼•æ•°ã¯ã€ã‚ªãƒ—ションåを空白ã€ã‚³ãƒ­ãƒ³(:)ã¾ãŸã¯ç­‰å·(=)ã§åŒºåˆ‡ã£ãŸã‚‚ã®ã«ãªã‚‹ã‹ã€ã‚ã‚‹ã„ã¯å¼•æ•°ãŒã‚ªãƒ—ションã®å¾Œã«ç›´æŽ¥ç¶šãå ´åˆã‚‚ã‚ã‚Šã¾ã™(正確ãªæ§‹æ–‡ã¯å„オプションã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™)。サイズをãƒã‚¤ãƒˆå˜ä½ã§æŒ‡å®šã™ã‚‹ã‚ˆã†æ±‚ã‚られã¦ã„ã‚‹å ´åˆã€æŽ¥å°¾è¾žã‚’使用ã—ãªã„ã‹ã€ã‚ã‚‹ã„ã¯ã‚­ãƒ­ãƒã‚¤ãƒˆ(KB)ã«ã¯æŽ¥å°¾è¾ž\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆ(MB)ã«ã¯æŽ¥å°¾è¾ž\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆ(GB)ã«ã¯æŽ¥å°¾è¾ž\fIg\fRã¾ãŸã¯\fIG\fRを使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚µã‚¤ã‚ºã‚’8GBã«è¨­å®šã™ã‚‹ã«ã¯ã€\fI8g\fRã€\fI8192m\fRã€\fI8388608k\fRã¾ãŸã¯\fI8589934592\fRã®ã„ãšã‚Œã‹ã‚’引数ã¨ã—ã¦æŒ‡å®šã§ãã¾ã™ã€‚パーセントã®æŒ‡å®šãŒå¿…è¦ãªå ´åˆã¯ã€0ã‹ã‚‰1ã®æ•°å€¤ã‚’使用ã—ã¾ã™(ãŸã¨ãˆã°ã€25%ã®å ´åˆã¯\fI0\&.25\fRを指定ã—ã¾ã™)。
+.SS "標準オプション"
 .PP
-¤³¤ì¤é¤Ï¡¢JVM¤Î¤¹¤Ù¤Æ¤Î¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëºÇ¤â°ìÈÌŪ¤Ë»ÈÍѤµ¤ì¤ë¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+ã“れらã¯ã€JVMã®ã™ã¹ã¦ã®å®Ÿè£…ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æœ€ã‚‚一般的ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚ªãƒ—ションã§ã™ã€‚
 .PP
 \-agentlib:\fIlibname\fR[=\fIoptions\fR]
 .RS 4
-»ØÄꤷ¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¥é¥¤¥Ö¥é¥ê̾¤Î¸å¤Ë¡¢¥é¥¤¥Ö¥é¥ê¤Ë¸ÇÍ­¤Î¥ª¥×¥·¥ç¥ó¤Î¥«¥ó¥Þ¶èÀÚ¤ê¥ê¥¹¥È¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+指定ã—ãŸãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリをロードã—ã¾ã™ã€‚ライブラリåã®å¾Œã«ã€ãƒ©ã‚¤ãƒ–ラリã«å›ºæœ‰ã®ã‚ªãƒ—ションã®ã‚«ãƒ³ãƒžåŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã‚’使用ã§ãã¾ã™ã€‚
 .sp
-¥ª¥×¥·¥ç¥ó\fI\-agentlib:foo\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢JVM¤Ï¡¢\fILD_LIBRARY_PATH\fR¥·¥¹¥Æ¥àÊÑ¿ô(OS X¤Ç¤Ï¡¢¤³¤ÎÊÑ¿ô¤Ï\fIDYLD_LIBRARY_PATH\fR¤Ë¤Ê¤ê¤Þ¤¹)¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Ë\fIlibfoo\&.so\fR¤È¤¤¤¦Ì¾Á°¤Î¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤è¤¦¤È¤·¤Þ¤¹¡£
+オプション\fI\-agentlib:foo\fRを指定ã—ãŸå ´åˆã€JVMã¯ã€\fILD_LIBRARY_PATH\fRシステム変数(OS Xã§ã¯ã€ã“ã®å¤‰æ•°ã¯\fIDYLD_LIBRARY_PATH\fRã«ãªã‚Šã¾ã™)ã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã«\fIlibfoo\&.so\fRã¨ã„ã†åå‰ã®ãƒ©ã‚¤ãƒ–ラリをロードã—よã†ã¨ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥¿¥Ã¥¯¤Î¿¼¤µ3¤Ç¡¢20¥ß¥êÉ䴤Ȥ˥ҡ¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë(HPROF)¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Æ¡¢¥µ¥ó¥×¥ë¤ÎCPU¾ðÊó¤ò¼èÆÀ¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ã‚¿ãƒƒã‚¯ã®æ·±ã•3ã§ã€20ミリ秒ã”ã¨ã«ãƒ’ープ・プロファイリング・ツール(HPROF)ライブラリをロードã—ã¦ã€ã‚µãƒ³ãƒ—ルã®CPU情報をå–å¾—ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -214,7 +214,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î¥í¡¼¥ÉÁ°¤ËJVM¤ò°ì»þÄä»ß¤·¤Æ¡¢Java¥Ç¥Ð¥Ã¥°¡¦¥ï¥¤¥ä¡¦¥×¥í¥È¥³¥ë(JDWP)¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Æ¡¢¥Ý¡¼¥È8000¤Ç¤Î¥½¥±¥Ã¥ÈÀܳÍѤ˥ꥹ¥Ë¥ó¥°¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®ãƒ­ãƒ¼ãƒ‰å‰ã«JVMを一時åœæ­¢ã—ã¦ã€Javaデãƒãƒƒã‚°ãƒ»ãƒ¯ã‚¤ãƒ¤ãƒ»ãƒ—ロトコル(JDWP)ライブラリをロードã—ã¦ã€ãƒãƒ¼ãƒˆ8000ã§ã®ã‚½ã‚±ãƒƒãƒˆæŽ¥ç¶šç”¨ã«ãƒªã‚¹ãƒ‹ãƒ³ã‚°ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -225,7 +225,7 @@
 .if n \{\
 .RE
 .\}
-¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤Î¾ÜºÙ¤Ï¡¢¼¡¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリã®è©³ç´°ã¯ã€æ¬¡ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -235,7 +235,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.html¤Ë¤¢¤ë\fIjava\&.lang\&.instrument\fR¥Ñ¥Ã¥±¡¼¥¸¤ÎÀâÌÀ
+http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.htmlã«ã‚ã‚‹\fIjava\&.lang\&.instrument\fRパッケージã®èª¬æ˜Ž
 .RE
 .sp
 .RS 4
@@ -246,54 +246,54 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/platform/jvmti/jvmti\&.html#starting¤Ë¤¢¤ëJVM¥Ä¡¼¥ë¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥¬¥¤¥É¤Î¥¨¡¼¥¸¥§¥ó¥È¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ë¹à
+http://docs\&.oracle\&.com/javase/8/docs/platform/jvmti/jvmti\&.html#startingã«ã‚ã‚‹JVMツール・インタフェース・ガイドã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã«é–¢ã™ã‚‹é …
 .RE
 .RE
 .PP
 \-agentpath:\fIpathname\fR[=\fIoptions\fR]
 .RS 4
-ÀäÂХѥ¹Ì¾¤Ç»ØÄꤵ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-agentlib\fR¤ÈƱÅù¤Ç¤¹¤¬¡¢¥é¥¤¥Ö¥é¥ê¤Î¥Õ¥ë¡¦¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤ò»ÈÍѤ·¤Þ¤¹¡£
+絶対パスåã§æŒ‡å®šã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリをロードã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-agentlib\fRã¨åŒç­‰ã§ã™ãŒã€ãƒ©ã‚¤ãƒ–ラリã®ãƒ•ãƒ«ãƒ»ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-client
 .RS 4
-Java HotSpot Client VM¤òÁªÂò¤·¤Þ¤¹¡£64¥Ó¥Ã¥È¡¦¥Ð¡¼¥¸¥ç¥ó¤ÎJava SE Development Kit (JDK)¤Ç¤Ï¡¢¸½ºß¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¡¢¤«¤ï¤ê¤ËServer JVM¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+Java HotSpot Client VMã‚’é¸æŠžã—ã¾ã™ã€‚64ビット・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®Java SE Development Kit (JDK)ã§ã¯ã€ç¾åœ¨ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡è¦–ã•ã‚Œã€ã‹ã‚ã‚Šã«Server JVMãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎJVMÁªÂò¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.html¤Ë¤¢¤ë
-¥µ¡¼¥Ð¡¼¥¯¥é¥¹¡¦¥Þ¥·¥ó¤Î¸¡½Ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®JVMé¸æŠžã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.htmlã«ã‚ã‚‹
+サーãƒãƒ¼ã‚¯ãƒ©ã‚¹ãƒ»ãƒžã‚·ãƒ³ã®æ¤œå‡ºã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-D\fIproperty\fR=\fIvalue\fR
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÀßÄꤷ¤Þ¤¹¡£\fIproperty\fRÊÑ¿ô¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¤Î̾Á°¤òɽ¤¹¡¢¶õÇò¤Î¤Ê¤¤Ê¸»úÎó¤Ç¤¹¡£\fIvalue\fRÊÑ¿ô¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòɽ¤¹Ê¸»úÎó¤Ç¤¹¡£\fIvalue\fR¤¬¶õÇò¤ò´Þ¤àʸ»úÎó¤Î¾ì¹ç¡¢¤½¤ì¤ò°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹(Îã:
-\fI\-Dfoo="foo bar"\fR)¡£
+システム・プロパティã®å€¤ã‚’設定ã—ã¾ã™ã€‚\fIproperty\fR変数ã¯ã€ãƒ—ロパティã®åå‰ã‚’表ã™ã€ç©ºç™½ã®ãªã„文字列ã§ã™ã€‚\fIvalue\fR変数ã¯ã€ãƒ—ロパティã®å€¤ã‚’表ã™æ–‡å­—列ã§ã™ã€‚\fIvalue\fRãŒç©ºç™½ã‚’å«ã‚€æ–‡å­—列ã®å ´åˆã€ãれを引用符ã§å›²ã¿ã¾ã™(例:
+\fI\-Dfoo="foo bar"\fR)。
 .RE
 .PP
 \-d32
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤·¤Þ¤¹¡£32¥Ó¥Ã¥È´Ä¶­¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢64¥Ó¥Ã¥È¡¦¥·¥¹¥Æ¥à¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤ò½ü¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+アプリケーションを32ビット環境ã§å®Ÿè¡Œã—ã¾ã™ã€‚32ビット環境ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„ã‹ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€64ビット・システムãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ãã€ã‚¢ãƒ—リケーションã¯32ビット環境ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-d64
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò64¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤·¤Þ¤¹¡£64¥Ó¥Ã¥È´Ä¶­¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢64¥Ó¥Ã¥È¡¦¥·¥¹¥Æ¥à¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤ò½ü¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+アプリケーションを64ビット環境ã§å®Ÿè¡Œã—ã¾ã™ã€‚64ビット環境ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„ã‹ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€64ビット・システムãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ãã€ã‚¢ãƒ—リケーションã¯32ビット環境ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .sp
-¸½ºß¤Î¤È¤³¤í¡¢Java HotSpot Server VM¤Î¤ß¤¬64¥Ó¥Ã¥È¤ÎÁàºî¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢\fI\-d64\fR»ÈÍÑ»þ¤Ë¤Ï\fI\-server\fR¥ª¥×¥·¥ç¥ó¤¬°ÅÌÛŪ¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-d64\fR»ÈÍÑ»þ¤Ë¤Ï¡¢\fI\-client\fR¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤³¤Î»ÅÍͤϡ¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÊѹ¹¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ç¾åœ¨ã®ã¨ã“ã‚ã€Java HotSpot Server VMã®ã¿ãŒ64ビットã®æ“作をサãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€\fI\-d64\fR使用時ã«ã¯\fI\-server\fRオプションãŒæš—黙的ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-d64\fR使用時ã«ã¯ã€\fI\-client\fRオプションã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã“ã®ä»•æ§˜ã¯ã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯å¤‰æ›´ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-disableassertions[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR], \-da[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR]
 .RS 4
-¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¢¥µ¡¼¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+アサーションを無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã¯ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚
 .sp
-°ú¿ô¤Ê¤·¤Î\fI\-disableassertions\fR
-(\fI\-da\fR)¤ò»ØÄꤹ¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.\&.\&.\fR¤Ç½ª¤ï¤ë\fIpackagename\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£°ú¿ô¤È¤·¤Æ\fI\&.\&.\&.\fR¤Î¤ß¤ò»ØÄꤹ¤ë¤È¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë̾Á°¤Î¤Ê¤¤¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIclassname\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢ÀÚÂؤ¨¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ãªã—ã®\fI\-disableassertions\fR
+(\fI\-da\fR)を指定ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fI\&.\&.\&.\fRã§çµ‚ã‚ã‚‹\fIpackagename\fR引数を指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚引数ã¨ã—ã¦\fI\&.\&.\&.\fRã®ã¿ã‚’指定ã™ã‚‹ã¨ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹åå‰ã®ãªã„パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIclassname\fR引数を指定ã™ã‚‹ã¨ã€åˆ‡æ›¿ãˆã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
 \fI\-disableassertions\fR
-(\fI\-da\fR)¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ª¤è¤Ó¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤¹(¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ë¤Ï¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î¥ë¡¼¥ë¤Ë¤Ï1¤ÄÎã³°¤¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò´Êñ¤Ë̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-disablesystemassertions\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+(\fI\-da\fR)オプションã¯ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã™(システム・クラスã«ã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®ãƒ«ãƒ¼ãƒ«ã«ã¯1ã¤ä¾‹å¤–ãŒã‚ã‚Šã¾ã™ã€‚オプションã®å¼•æ•°ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã‚’除ãã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç°¡å˜ã«ç„¡åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-disablesystemassertions\fRオプションを使用ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¤ä¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÌÀ¼¨Åª¤ËÍ­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-enableassertions\fR
-(\fI\-ea\fR)¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Î¾Êý¤Î¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ñ¥Ã¥±¡¼¥¸\fIcom\&.wombat\&.fruitbat\fR
-(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥¯¥é¥¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fR¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Æ¡¢\fIMyClass\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+特定ã®ãƒ‘ッケージやクラスã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’明示的ã«æœ‰åŠ¹ã«ã™ã‚‹ã«ã¯ã€\fI\-enableassertions\fR
+(\fI\-ea\fR)オプションを使用ã—ã¾ã™ã€‚両方ã®ã‚ªãƒ—ションをåŒæ™‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‘ッケージ\fIcom\&.wombat\&.fruitbat\fR
+(ãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ)ã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¦ã€ã‚¯ãƒ©ã‚¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fRã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¦ã€\fIMyClass\fRアプリケーションを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -308,22 +308,22 @@
 .PP
 \-disablesystemassertions, \-dsa
 .RS 4
-¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-enableassertions[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR], \-ea[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR]
 .RS 4
-¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¢¥µ¡¼¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+アサーションを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã¯ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚
 .sp
-°ú¿ô¤Ê¤·¤Î\fI\-enableassertions\fR
-(\fI\-ea\fR)¤ò»ØÄꤹ¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.\&.\&.\fR¤Ç½ª¤ï¤ë\fIpackagename\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£°ú¿ô¤È¤·¤Æ\fI\&.\&.\&.\fR¤Î¤ß¤ò»ØÄꤹ¤ë¤È¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë̾Á°¤Î¤Ê¤¤¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIclassname\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢ÀÚÂؤ¨¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ãªã—ã®\fI\-enableassertions\fR
+(\fI\-ea\fR)を指定ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fI\&.\&.\&.\fRã§çµ‚ã‚ã‚‹\fIpackagename\fR引数を指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚引数ã¨ã—ã¦\fI\&.\&.\&.\fRã®ã¿ã‚’指定ã™ã‚‹ã¨ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹åå‰ã®ãªã„パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIclassname\fR引数を指定ã™ã‚‹ã¨ã€åˆ‡æ›¿ãˆã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
 \fI\-enableassertions\fR
-(\fI\-ea\fR)¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ª¤è¤Ó¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤¹(¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ë¤Ï¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î¥ë¡¼¥ë¤Ë¤Ï1¤ÄÎã³°¤¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò´Êñ¤ËÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-enablesystemassertions\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ëÊ̤Υ¹¥¤¥Ã¥Á¤òÄ󶡤·¤Þ¤¹¡£
+(\fI\-ea\fR)オプションã¯ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã™(システム・クラスã«ã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®ãƒ«ãƒ¼ãƒ«ã«ã¯1ã¤ä¾‹å¤–ãŒã‚ã‚Šã¾ã™ã€‚オプションã®å¼•æ•°ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã‚’除ãã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç°¡å˜ã«æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-enablesystemassertions\fRオプションã¯ã€ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹åˆ¥ã®ã‚¹ã‚¤ãƒƒãƒã‚’æä¾›ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¤ä¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÌÀ¼¨Åª¤Ë̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-disableassertions\fR
-(\fI\-da\fR)¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Ã±°ì¥³¥Þ¥ó¥É¤Ë¤³¤ì¤é¤Î¥¹¥¤¥Ã¥Á¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÊ£¿ô»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢»ØÄꤷ¤¿¥¹¥¤¥Ã¥Á¤¬½çÈ֤˽èÍý¤µ¤ì¤Æ¤«¤é¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ñ¥Ã¥±¡¼¥¸\fIcom\&.wombat\&.fruitbat\fR
-(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¤Î¤ß¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥¯¥é¥¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fR¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Æ¡¢\fIMyClass\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+特定ã®ãƒ‘ッケージやクラスã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’明示的ã«ç„¡åŠ¹ã«ã™ã‚‹ã«ã¯ã€\fI\-disableassertions\fR
+(\fI\-da\fR)オプションを使用ã—ã¾ã™ã€‚å˜ä¸€ã‚³ãƒžãƒ³ãƒ‰ã«ã“れらã®ã‚¹ã‚¤ãƒƒãƒã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’複数指定ã—ãŸå ´åˆã¯ã€æŒ‡å®šã—ãŸã‚¹ã‚¤ãƒƒãƒãŒé †ç•ªã«å‡¦ç†ã•ã‚Œã¦ã‹ã‚‰ã‚¯ãƒ©ã‚¹ãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‘ッケージ\fIcom\&.wombat\&.fruitbat\fR
+(ãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ)ã§ã®ã¿ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¦ã€ã‚¯ãƒ©ã‚¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fRã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¦ã€\fIMyClass\fRアプリケーションを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -338,21 +338,21 @@
 .PP
 \-enablesystemassertions, \-esa
 .RS 4
-¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help, \-?
 .RS 4
-¼ÂºÝ¤ËJVM¤ò¼Â¹Ô¤»¤º¤Ë¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î»ÈÍѾõ¶·¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+実際ã«JVMを実行ã›ãšã«ã€\fIjava\fRコマンドã®ä½¿ç”¨çŠ¶æ³æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-jar \fIfilename\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Ë¥«¥×¥»¥ë²½¤µ¤ì¤¿¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fIfilename\fR°ú¿ô¤Ï¡¢»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«»ÏÅÀ¤È¤·¤Æµ¡Ç½¤¹¤ë\fIpublic static void main(String[] args)\fR¥á¥½¥Ã¥É¤òÄêµÁ¤¹¤ë¡¢\fIMain\-Class:\fR\fIclassname\fR¤È¤¤¤¦·Á¼°¤Î1¹Ô¤ò´Þ¤à¥Þ¥Ë¥Õ¥§¥¹¥È¤ò»ý¤ÄJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ç¤¹¡£
+JARファイルã«ã‚«ãƒ—セル化ã•ã‚ŒãŸãƒ—ログラムを実行ã—ã¾ã™ã€‚\fIfilename\fR引数ã¯ã€ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ—リケーションã®é–‹å§‹ç‚¹ã¨ã—ã¦æ©Ÿèƒ½ã™ã‚‹\fIpublic static void main(String[] args)\fRメソッドを定義ã™ã‚‹ã€\fIMain\-Class:\fR\fIclassname\fRã¨ã„ã†å½¢å¼ã®1行をå«ã‚€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆã‚’æŒã¤JARファイルã®åå‰ã§ã™ã€‚
 .sp
-\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢»ØÄꤷ¤¿JAR¥Õ¥¡¥¤¥ë¤¬¤¹¤Ù¤Æ¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤Î¥½¡¼¥¹¤Ë¤Ê¤ê¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¾¤ÎÀßÄê¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£
+\fI\-jar\fRオプションを使用ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸJARファイルãŒã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã®ã‚½ãƒ¼ã‚¹ã«ãªã‚Šã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ä»–ã®è¨­å®šã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢¼¡¤Î¥ê¥½¡¼¥¹¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JARファイルã®è©³ç´°ã¯ã€æ¬¡ã®ãƒªã‚½ãƒ¼ã‚¹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -373,7 +373,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jar/index\&.html¤Ë¤¢¤ëJava¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Î¥¬¥¤¥É
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jar/index\&.htmlã«ã‚ã‚‹Javaアーカイブ(JAR)ファイルã®ã‚¬ã‚¤ãƒ‰
 .RE
 .sp
 .RS 4
@@ -384,42 +384,42 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-¡Ö¥ì¥Ã¥¹¥ó: JAR¥Õ¥¡¥¤¥ë¤Î¥×¥í¥°¥é¥à¤Î¥Ñ¥Ã¥±¡¼¥¸²½¡×
+http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+「レッスン: JARファイルã®ãƒ—ログラムã®ãƒ‘ッケージ化ã€
 .RE
 .RE
 .PP
 \-javaagent:\fIjarpath\fR[=\fIoptions\fR]
 .RS 4
-»ØÄꤷ¤¿Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¥¨¡¼¥¸¥§¥ó¥È¤ò¥í¡¼¥É¤·¤Þ¤¹¡£Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥È¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.html¤Ë¤¢¤ëJava API¥É¥­¥å¥á¥ó¥È¤Î\fIjava\&.lang\&.instrument\fR¥Ñ¥Ã¥±¡¼¥¸¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã—ãŸJavaプログラミング言語エージェントをロードã—ã¾ã™ã€‚Javaアプリケーションã®ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒˆã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.htmlã«ã‚ã‚‹Java APIドキュメントã®\fIjava\&.lang\&.instrument\fRパッケージã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-jre\-restrict\-search
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥×¥é¥¤¥Ù¡¼¥È¤ÊJRE¤ò¥Ð¡¼¥¸¥ç¥ó¸¡º÷¤Ë´Þ¤á¤Þ¤¹¡£
+ユーザー・プライベートãªJREã‚’ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ¤œç´¢ã«å«ã‚ã¾ã™ã€‚
 .RE
 .PP
 \-no\-jre\-restrict\-search
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥×¥é¥¤¥Ù¡¼¥È¤ÊJRE¤ò¥Ð¡¼¥¸¥ç¥ó¸¡º÷¤«¤é½ü³°¤·¤Þ¤¹¡£
+ユーザー・プライベートãªJREã‚’ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ¤œç´¢ã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚
 .RE
 .PP
 \-server
 .RS 4
-Java HotSpot Server VM¤òÁªÂò¤·¤Þ¤¹¡£64¥Ó¥Ã¥È¡¦¥Ð¡¼¥¸¥ç¥ó¤ÎJDK¤Ç¤Ï¡¢Server VM¤Î¤ß¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢¤½¤Î¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï°ÅÌÛŪ¤Ç¤¹¡£
+Java HotSpot Server VMã‚’é¸æŠžã—ã¾ã™ã€‚64ビット・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®JDKã§ã¯ã€Server VMã®ã¿ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€ãã®å ´åˆã€ã“ã®ã‚ªãƒ—ションã¯æš—黙的ã§ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎJVMÁªÂò¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.html¤Ë¤¢¤ë
-¥µ¡¼¥Ð¡¼¥¯¥é¥¹¡¦¥Þ¥·¥ó¤Î¸¡½Ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®JVMé¸æŠžã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.htmlã«ã‚ã‚‹
+サーãƒãƒ¼ã‚¯ãƒ©ã‚¹ãƒ»ãƒžã‚·ãƒ³ã®æ¤œå‡ºã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-showversion
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò³¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ÈƱÅù¤Ç¤¹¤¬¡¢\-version¤Ï¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨¸å¤ËJVM¤Ë½ªÎ»¤ò»Ø¼¨¤¹¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã€ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’続行ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-version\fRオプションã¨åŒç­‰ã§ã™ãŒã€\-versionã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤ºå¾Œã«JVMã«çµ‚了を指示ã™ã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-splash:\fIimgname\fR
 .RS 4
-\fIimgname\fR¤Ç»ØÄꤵ¤ì¤¿¥¤¥á¡¼¥¸¤ò´Þ¤à¥¹¥×¥é¥Ã¥·¥å²èÌ̤òɽ¼¨¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Îµ¯Æ°»þ¤Ë\fIimages\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fIsplash\&.gif\fR¥Õ¥¡¥¤¥ë¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fIimgname\fRã§æŒ‡å®šã•ã‚ŒãŸã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’å«ã‚€ã‚¹ãƒ—ラッシュ画é¢ã‚’表示ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¢ãƒ—リケーションã®èµ·å‹•æ™‚ã«\fIimages\fRディレクトリã®\fIsplash\&.gif\fRファイルを表示ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -434,31 +434,31 @@
 .PP
 \-verbose:class
 .RS 4
-¥í¡¼¥É¤µ¤ì¤¿³Æ¥¯¥é¥¹¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+ロードã•ã‚ŒãŸå„クラスã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:gc
 .RS 4
-³Æ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¥¤¥Ù¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+å„ガベージ・コレクション(GC)イベントã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:jni
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤Î»ÈÍѤª¤è¤Ó¤½¤Î¾¤ÎJava Native Interface (JNI)¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドã®ä½¿ç”¨ãŠã‚ˆã³ãã®ä»–ã®Java Native Interface (JNI)アクティビティã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Æ¤«¤é½ªÎ»¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-showversion\fR¥ª¥×¥·¥ç¥ó¤ÈƱÅù¤Ç¤¹¤¬¡¢\-showversion¤Ï¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨¸å¤ËJVM¤Ë½ªÎ»¤ò»Ø¼¨¤·¤Ê¤¤ÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¦ã‹ã‚‰çµ‚了ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-showversion\fRオプションã¨åŒç­‰ã§ã™ãŒã€\-showversionã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤ºå¾Œã«JVMã«çµ‚了を指示ã—ãªã„点ãŒç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-version:\fIrelease\fR
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤Ë»ÈÍѤ¹¤ë¥ê¥ê¡¼¥¹¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¥³¡¼¥ë¤µ¤ì¤¿\fIjava\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¤³¤Î»ØÄêÆâÍƤòËþ¤¿¤µ¤º¡¢¤«¤ÄŬÀڤʼÂÁõ¤¬¥·¥¹¥Æ¥à¾å¤Ç¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤ÎŬÀڤʼÂÁõ¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+アプリケーションã®å®Ÿè¡Œã«ä½¿ç”¨ã™ã‚‹ãƒªãƒªãƒ¼ã‚¹ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’指定ã—ã¾ã™ã€‚コールã•ã‚ŒãŸ\fIjava\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒã“ã®æŒ‡å®šå†…容を満ãŸã•ãšã€ã‹ã¤é©åˆ‡ãªå®Ÿè£…ãŒã‚·ã‚¹ãƒ†ãƒ ä¸Šã§è¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ãã®é©åˆ‡ãªå®Ÿè£…ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIrelease\fR°ú¿ô¤Ï¡¢Àµ³Î¤Ê¥Ð¡¼¥¸¥ç¥óʸ»úÎ󡢤ޤ¿¤Ï¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤È¥Ð¡¼¥¸¥ç¥óÈϰϤΥꥹ¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fI¥Ð¡¼¥¸¥ç¥óʸ»úÎó\fR¤Ï¡¢¼¡¤Î·Á¼°¤Ç¡¢³«È¯¼Ô¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹:
+\fIrelease\fR引数ã¯ã€æ­£ç¢ºãªãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã€ã¾ãŸã¯ç©ºç™½ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲ã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列\fRã¯ã€æ¬¡ã®å½¢å¼ã§ã€é–‹ç™ºè€…ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã‚’指定ã—ã¾ã™:
 \fI1\&.\fR\fIx\fR\fI\&.0_\fR\fIu\fR
-(\fIx\fR¤Ï¥á¥¸¥ã¡¼¡¦¥Ð¡¼¥¸¥ç¥óÈֹ桢\fIu\fR¤Ï¹¹¿·¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ç¤¹)¡£\fI¥Ð¡¼¥¸¥ç¥óÈÏ°Ï\fR¤Ï¡¢¤³¤Î¥Ð¡¼¥¸¥ç¥ó°Ê¹ß¤ò»ØÄꤹ¤ë¤Ë¤Ï¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤Î¸å¤Ë¥×¥é¥¹µ­¹æ(\fI+\fR)¤ò³¤±¤¿¤â¤Î¡¢¤Þ¤¿¤Ï°ìÃפ¹¤ëÀÜƬ¼­¤ò´Þ¤àǤ°Õ¤Î¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò»ØÄꤹ¤ë¤Ë¤Ï°ìÉô¤Î¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤Î¸å¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(\fI*\fR)¤ò³¤±¤¿¤â¤Î¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£ÏÀÍý\fIOR\fR¤ÎÁȹ礻¤Ë¤Ï¶õÇò¡¢2¤Ä¤Î¥Ð¡¼¥¸¥ç¥ó¤Îʸ»úÎó/ÈϰϤÎÏÀÍý\fIAND\fR¤ÎÁȹ礻¤Ë¤Ï¥¢¥ó¥Ñ¥µ¥ó¥É(\fI&\fR)¤ò»ÈÍѤ·¤Æ¡¢¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤È¥Ð¡¼¥¸¥ç¥óÈϰϤòÁȤ߹礻¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Î¼Â¹Ô¤ËJRE 6u13 (1\&.6\&.0_13)¤Þ¤¿¤Ï6u10 (1\&.6\&.0_10)°Ê¹ß¤ÎǤ°Õ¤ÎJRE 6¤Î¤¤¤º¤ì¤«¤òɬÍפȤ¹¤ë¾ì¹ç¡¢¼¡¤ò»ØÄꤷ¤Þ¤¹¡£
+(\fIx\fRã¯ãƒ¡ã‚¸ãƒ£ãƒ¼ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã€\fIu\fRã¯æ›´æ–°ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã§ã™)。\fIãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲\fRã¯ã€ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ä»¥é™ã‚’指定ã™ã‚‹ã«ã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã®å¾Œã«ãƒ—ラス記å·(\fI+\fR)を続ã‘ãŸã‚‚ã®ã€ã¾ãŸã¯ä¸€è‡´ã™ã‚‹æŽ¥é ­è¾žã‚’å«ã‚€ä»»æ„ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を指定ã™ã‚‹ã«ã¯ä¸€éƒ¨ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã®å¾Œã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(\fI*\fR)を続ã‘ãŸã‚‚ã®ã§æ§‹æˆã•ã‚Œã¾ã™ã€‚è«–ç†\fIOR\fRã®çµ„åˆã›ã«ã¯ç©ºç™½ã€2ã¤ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®æ–‡å­—列/範囲ã®è«–ç†\fIAND\fRã®çµ„åˆã›ã«ã¯ã‚¢ãƒ³ãƒ‘サンド(\fI&\fR)を使用ã—ã¦ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲を組ã¿åˆã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯JARファイルã®å®Ÿè¡Œã«JRE 6u13 (1\&.6\&.0_13)ã¾ãŸã¯6u10 (1\&.6\&.0_10)以é™ã®ä»»æ„ã®JRE 6ã®ã„ãšã‚Œã‹ã‚’å¿…è¦ã¨ã™ã‚‹å ´åˆã€æ¬¡ã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -469,99 +469,99 @@
 .if n \{\
 .RE
 .\}
-°úÍÑÉ䤬ɬÍפʤΤϡ¢\fIrelease\fR¥Ñ¥é¥á¡¼¥¿¤Ë¶õÇò¤¬¤¢¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£
+引用符ãŒå¿…è¦ãªã®ã¯ã€\fIrelease\fRパラメータã«ç©ºç™½ãŒã‚ã‚‹å ´åˆã®ã¿ã§ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¥Ð¡¼¥¸¥ç¥óÍ×·ï¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤è¤ê¤â¡¢JAR¥Õ¥¡¥¤¥ë¤Î¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Ë»ØÄꤹ¤ë¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+JARファイルã®å ´åˆã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³è¦ä»¶ã‚’コマンドラインã«æŒ‡å®šã™ã‚‹ã‚ˆã‚Šã‚‚ã€JARファイルã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã«æŒ‡å®šã™ã‚‹ã“ã¨ãŒæŽ¨å¥¨ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot²¾ÁÛ¥Þ¥·¥ó¤Ë¸ÇÍ­¤ÎÈÆÍÑ¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot仮想マシンã«å›ºæœ‰ã®æ±Žç”¨ã‚ªãƒ—ションã§ã™ã€‚
 .PP
 \-X
 .RS 4
-»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î\fI\-X\fR¥ª¥×¥·¥ç¥ó¤Î¥Ø¥ë¥×¤òɽ¼¨¤·¤Þ¤¹¡£
+使用å¯èƒ½ãªã™ã¹ã¦ã®\fI\-X\fRオプションã®ãƒ˜ãƒ«ãƒ—を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbatch
 .RS 4
-¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JVM¤Ç¤Ï¡¢¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢¥á¥½¥Ã¥É¤ò¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥¿¥¹¥¯¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¡¢¥¤¥ó¥¿¥×¥ê¥¿¡¦¥â¡¼¥É¤Ç¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fI\-Xbatch\fR¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤¬Ìµ¸ú¤Ë¤Ê¤ê¡¢¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤¬´°Î»¤¹¤ë¤Þ¤Ç¥Õ¥©¥¢¥°¥é¥¦¥ó¥É¡¦¥¿¥¹¥¯¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£
+ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JVMã§ã¯ã€ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルãŒçµ‚了ã™ã‚‹ã¾ã§ã€ãƒ¡ã‚½ãƒƒãƒ‰ã‚’ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚¿ã‚¹ã‚¯ã¨ã—ã¦ã‚³ãƒ³ãƒ‘イルã—ã€ã‚¤ãƒ³ã‚¿ãƒ—リタ・モードã§ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実行ã—ã¾ã™ã€‚\fI\-Xbatch\fRフラグを指定ã™ã‚‹ã¨ã€ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルãŒç„¡åŠ¹ã«ãªã‚Šã€ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イルãŒå®Œäº†ã™ã‚‹ã¾ã§ãƒ•ã‚©ã‚¢ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚¿ã‚¹ã‚¯ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:\-BackgroundCompilation\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:\-BackgroundCompilation\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢JDK¤Ë´Þ¤Þ¤ì¤ë¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤«¤ï¤ê¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+ブート・クラス・ファイルを検索ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“れらã¯ã€JDKã«å«ã¾ã‚Œã‚‹ãƒ–ート・クラス・ファイルã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xbootclasspath/a:\fIpath\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎºÇ¸å¤ËÄɲ乤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+デフォルトã®ãƒ–ートストラップ・クラス・パスã®æœ€å¾Œã«è¿½åŠ ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xbootclasspath/p:\fIpath\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÀèƬ¤ËÄɲ乤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+デフォルトã®ãƒ–ートストラップ・クラス・パスã®å…ˆé ­ã«è¿½åŠ ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xboundthreads
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥ì¥Ù¥ë¤Î¥¹¥ì¥Ã¥É¤ò¥«¡¼¥Í¥ë¡¦¥¹¥ì¥Ã¥É¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£
+ユーザー・レベルã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’カーãƒãƒ«ãƒ»ã‚¹ãƒ¬ãƒƒãƒ‰ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xcheck:jni
 .RS 4
-Java Native Interface (JNI)µ¡Ç½¤ËÂФ·¤ÆÄɲåÁ¥§¥Ã¥¯¤ò¹Ô¤¤¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢¤³¤ì¤Ï¡¢JNI¥ê¥¯¥¨¥¹¥È¤ò½èÍý¤¹¤ëÁ°¤Ë¡¢JNI´Ø¿ô¤ËÅϤµ¤ì¤ë¥Ñ¥é¥á¡¼¥¿¤È¼Â¹Ô´Ä¶­¤Î¥Ç¡¼¥¿¤ò¸¡¾Ú¤·¤Þ¤¹¡£Ìµ¸ú¤Ê¥Ç¡¼¥¿¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤ËÌäÂ꤬¤¢¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤ë¤¿¤á¡¢JVM¤Ï¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤òȯÀ¸¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹Äã²¼¤¬Í½ÁÛ¤µ¤ì¤Þ¤¹¡£
+Java Native Interface (JNI)機能ã«å¯¾ã—ã¦è¿½åŠ ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã„ã¾ã™ã€‚具体的ã«ã¯ã€ã“ã‚Œã¯ã€JNIリクエストを処ç†ã™ã‚‹å‰ã«ã€JNI関数ã«æ¸¡ã•ã‚Œã‚‹ãƒ‘ラメータã¨å®Ÿè¡Œç’°å¢ƒã®ãƒ‡ãƒ¼ã‚¿ã‚’検証ã—ã¾ã™ã€‚無効ãªãƒ‡ãƒ¼ã‚¿ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã«å•é¡ŒãŒã‚ã‚‹ã“ã¨ã‚’示ã—ã¦ã„ã‚‹ãŸã‚ã€JVMã¯ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ã‚’発生ã—ã¦çµ‚了ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‘フォーマンス低下ãŒäºˆæƒ³ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xcomp
 .RS 4
-ºÇ½é¤Î¸Æ½Ð¤·¤ÇJava¥³¡¼¥É¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤Î²ò¼á¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï¡¢10,000¤Î²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¼Â¹Ô¤·¤Æ¡¢¸úΨŪ¤Ê¥³¥ó¥Ñ¥¤¥ë¤Î¤¿¤á¤Î¾ðÊó¤ò¼ý½¸¤·¤Þ¤¹¡£¸úΨ¤òµ¾À·¤Ë¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¤Ë¤Ï¡¢\fI\-Xcomp\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤Æ¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+最åˆã®å‘¼å‡ºã—ã§JavaコードãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イル・メソッドã®è§£é‡ˆã‚’無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JITコンパイラã¯ã€10,000ã®è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を実行ã—ã¦ã€åŠ¹çŽ‡çš„ãªã‚³ãƒ³ãƒ‘イルã®ãŸã‚ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚効率を犠牲ã«ã—ã¦ã‚³ãƒ³ãƒ‘イルã®ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ã«ã¯ã€\fI\-Xcomp\fRフラグを使用ã—ã¦ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を無効ã«ã—ã¾ã™ã€‚
 .sp
-\fI\-XX:CompileThreshold\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¤ÎÁ°¤Ë¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤òÊѹ¹¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:CompileThreshold\fRオプションを使用ã—ã¦ã€ã‚³ãƒ³ãƒ‘イルã®å‰ã«ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’変更ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xdebug
 .RS 4
-²¿¤â¹Ô¤¤¤Þ¤»¤ó¡£²¼°Ì¸ß´¹À­¤Î¤¿¤á¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+何も行ã„ã¾ã›ã‚“。下ä½äº’æ›æ€§ã®ãŸã‚ã«ç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-Xdiag
 .RS 4
-ÄɲäοÇÃÇ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+追加ã®è¨ºæ–­ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xfuture
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Î»ÅÍͤؤνàµò¤ò¶¯²½¤¹¤ë¡¢¸·Ì©¤Ê¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Î¥Á¥§¥Ã¥¯¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢¤è¤ê¸·Ì©¤Ê¥Á¥§¥Ã¥¯¤¬¥Ç¥Õ¥©¥ë¥È¤Ë¤Ê¤ë¤¿¤á¡¢¿·¤·¤¤¥³¡¼¥É¤ò³«È¯¤¹¤ë¤È¤­¤Ë¤Ï¡¢³«È¯¼Ô¤Ï¤³¤Î¥Õ¥é¥°¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+クラス・ファイル形å¼ã®ä»•æ§˜ã¸ã®æº–拠を強化ã™ã‚‹ã€åŽ³å¯†ãªã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼ã®ãƒã‚§ãƒƒã‚¯ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€ã‚ˆã‚ŠåŽ³å¯†ãªãƒã‚§ãƒƒã‚¯ãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«ãªã‚‹ãŸã‚ã€æ–°ã—ã„コードを開発ã™ã‚‹ã¨ãã«ã¯ã€é–‹ç™ºè€…ã¯ã“ã®ãƒ•ãƒ©ã‚°ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xincgc
 .RS 4
-ÁýʬGC¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+増分GCを有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xint
 .RS 4
-¥¤¥ó¥¿¥×¥ê¥¿ÀìÍѥ⡼¥É¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤Ø¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï̵¸ú¤Ë¤Ê¤ê¡¢¤¹¤Ù¤Æ¤Î¥Ð¥¤¥È¥³¡¼¥É¤¬¥¤¥ó¥¿¥×¥ê¥¿¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥¸¥ã¥¹¥È¡¦¥¤¥ó¡¦¥¿¥¤¥à(JIT)¥³¥ó¥Ñ¥¤¥é¤¬Ä󶡤¹¤ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¾å¤ÎÍøÅÀ¤Ï¡¢¤³¤Î¥â¡¼¥É¤Ç¤Ï¼Â¸½¤µ¤ì¤Þ¤»¤ó¡£
+インタプリタ専用モードã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã¸ã®ã‚³ãƒ³ãƒ‘イルã¯ç„¡åŠ¹ã«ãªã‚Šã€ã™ã¹ã¦ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ—リタã«ã‚ˆã£ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚ジャスト・イン・タイム(JIT)コンパイラãŒæä¾›ã™ã‚‹ãƒ‘フォーマンス上ã®åˆ©ç‚¹ã¯ã€ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯å®Ÿç¾ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-Xinternalversion
 .RS 4
-\fI\-version\fR¥ª¥×¥·¥ç¥ó¤è¤ê¾ÜºÙ¤ÊJVM¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Æ¤«¤é½ªÎ»¤·¤Þ¤¹¡£
+\fI\-version\fRオプションより詳細ãªJVMãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¦ã‹ã‚‰çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xloggc:\fIfilename\fR
 .RS 4
-¾ÜºÙ¤ÊGC¥¤¥Ù¥ó¥È¾ðÊó¤ò¥í¥®¥ó¥°ÍѤ˥ê¥À¥¤¥ì¥¯¥È¤¹¤ë¥Õ¥¡¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¾ðÊó¤Ï¡¢µ­Ï¿¤µ¤ì¤¿³Æ¥¤¥Ù¥ó¥È¤ÎÁ°¤Ë¹Ô¤ï¤ì¤ëºÇ½é¤ÎGC¥¤¥Ù¥ó¥È°Ê¹ß¤Ë·Ð²á¤·¤¿»þ´Ö¤ò»ØÄꤷ¤¿\fI\-verbose:gc\fR¤Î½ÐÎϤÈÎà»÷¤·¤Æ¤¤¤Þ¤¹¡£\fI\-Xloggc\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-verbose:gc\fR¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹(¤³¤ì¤é¤ÎξÊý¤¬Æ±¤¸\fIjava\fR¥³¥Þ¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç)¡£
+詳細ãªGCイベント情報をロギング用ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«æ›¸ãè¾¼ã¾ã‚Œã‚‹æƒ…å ±ã¯ã€è¨˜éŒ²ã•ã‚ŒãŸå„イベントã®å‰ã«è¡Œã‚れる最åˆã®GCイベント以é™ã«çµŒéŽã—ãŸæ™‚間を指定ã—ãŸ\fI\-verbose:gc\fRã®å‡ºåŠ›ã¨é¡žä¼¼ã—ã¦ã„ã¾ã™ã€‚\fI\-Xloggc\fRオプションã¯\fI\-verbose:gc\fRをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™(ã“れらã®ä¸¡æ–¹ãŒåŒã˜\fIjava\fRコマンドã§æŒ‡å®šã•ã‚ŒãŸå ´åˆ)。
 .sp
-Îã:
+例:
 .sp
 .if n \{\
 .RS 4
@@ -576,7 +576,7 @@
 .PP
 \-Xmaxjitcodesize=\fIsize\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÎºÇÂ祳¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤ò»ØÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ48MB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+JITコンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を指定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯48MBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -587,21 +587,21 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:ReservedCodeCacheSize\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:ReservedCodeCacheSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xmixed
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥Û¥Ã¥È¡¦¥á¥½¥Ã¥É¤ò½ü¤­¡¢¥¤¥ó¥¿¥×¥ê¥¿¤Ë¤è¤Ã¤Æ¤¹¤Ù¤Æ¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã«ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ›ãƒƒãƒˆãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ãã€ã‚¤ãƒ³ã‚¿ãƒ—リタã«ã‚ˆã£ã¦ã™ã¹ã¦ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xmn\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤ª¤è¤ÓºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºãŠã‚ˆã³æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×¤Î¼ã¤¤À¤Âå¥ê¡¼¥¸¥ç¥ó¤Ï¿·¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£GC¤Ï¡¢Â¾¤Î¥ê¡¼¥¸¥ç¥ó¤è¤ê¤³¤Î¥ê¡¼¥¸¥ç¥ó¤Ç¡¢¤è¤êÉÑÈˤ˼¹Ԥµ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤¬¾®¤µ¤¹¤®¤ë¾ì¹ç¡¢Â¿¿ô¤Î¥Þ¥¤¥Ê¡¼¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥µ¥¤¥º¤¬Â礭¤¹¤®¤ë¾ì¹ç¡¢¥Õ¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢´°Î»¤Þ¤Ç¤Ë»þ´Ö¤¬¤«¤«¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤Ï¡¢Á´ÂΤΥҡ¼¥×¡¦¥µ¥¤¥º¤ÎȾʬ¤«¤é4ʬ¤Î1¤Î´Ö¤Ë¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ヒープã®è‹¥ã„世代リージョンã¯æ–°ã—ã„オブジェクトã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚GCã¯ã€ä»–ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚ˆã‚Šã“ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã§ã€ã‚ˆã‚Šé »ç¹ã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºãŒå°ã•ã™ãŽã‚‹å ´åˆã€å¤šæ•°ã®ãƒžã‚¤ãƒŠãƒ¼ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚サイズãŒå¤§ãã™ãŽã‚‹å ´åˆã€ãƒ•ãƒ«ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ãŒã€å®Œäº†ã¾ã§ã«æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¯ã€å…¨ä½“ã®ãƒ’ープ・サイズã®åŠåˆ†ã‹ã‚‰4分ã®1ã®é–“ã«ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤À¤Âå¤Î½é´ü¥µ¥¤¥º¤ª¤è¤ÓºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€è‹¥ã„世代ã®åˆæœŸã‚µã‚¤ã‚ºãŠã‚ˆã³æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -614,14 +614,14 @@
 .if n \{\
 .RE
 .\}
-¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤ÈºÇÂ祵¥¤¥º¤ÎξÊý¤òÀßÄꤹ¤ë\fI\-Xmn\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë¡¢½é´ü¥µ¥¤¥º¤ÎÀßÄê¤Ë¤Ï\fI\-XX:NewSize\fR¤ò¡¢ºÇÂ祵¥¤¥º¤ÎÀßÄê¤Ë¤Ï\fI\-XX:MaxNewSize\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+è‹¥ã„世代ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºã¨æœ€å¤§ã‚µã‚¤ã‚ºã®ä¸¡æ–¹ã‚’設定ã™ã‚‹\fI\-Xmn\fRオプションã®ã‹ã‚ã‚Šã«ã€åˆæœŸã‚µã‚¤ã‚ºã®è¨­å®šã«ã¯\fI\-XX:NewSize\fRã‚’ã€æœ€å¤§ã‚µã‚¤ã‚ºã®è¨­å®šã«ã¯\fI\-XX:MaxNewSize\fRを使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xms\fIsize\fR
 .RS 4
-¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢1MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+ヒープã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€1MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ6MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦6MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -634,14 +634,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤷ¤Ê¤¤¾ì¹ç¡¢½é´ü¥µ¥¤¥º¤Ï¡¢¸Å¤¤À¤Âå¤È¼ã¤¤À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥µ¥¤¥º¤Î¹ç·×¤È¤·¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤Ï¡¢\fI\-Xmn\fR¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã—ãªã„å ´åˆã€åˆæœŸã‚µã‚¤ã‚ºã¯ã€å¤ã„世代ã¨è‹¥ã„世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚µã‚¤ã‚ºã®åˆè¨ˆã¨ã—ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºã¯ã€\fI\-Xmn\fRオプションã¾ãŸã¯\fI\-XX:NewSize\fRオプションを使用ã—ã¦è¨­å®šã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xmx\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢2MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Ç¥×¥í¥¤¥á¥ó¥È¤Ç¤Ï¡¢\fI\-Xms\fR¤ª¤è¤Ó\fI\-Xmx\fR¤ÏÄ̾ïƱ¤¸ÃͤËÀßÄꤵ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を指定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€2MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚サーãƒãƒ¼ãƒ»ãƒ‡ãƒ—ロイメントã§ã¯ã€\fI\-Xms\fRãŠã‚ˆã³\fI\-Xmx\fRã¯é€šå¸¸åŒã˜å€¤ã«è¨­å®šã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Îµö²Ä¤µ¤ì¤ëºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ80MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®è¨±å¯ã•ã‚Œã‚‹æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦80MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -654,34 +654,34 @@
 .if n \{\
 .RE
 .\}
-\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:MaxHeapSize\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-Xmx\fRオプションã¯\fI\-XX:MaxHeapSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xnoclassgc
 .RS 4
-¥¯¥é¥¹¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢GC»þ´Ö¤òÀáÌó¤Ç¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¼Â¹ÔÃæ¤ÎÃæÃǤ¬Ã»½Ì¤µ¤ì¤Þ¤¹¡£
+クラスã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(GC)を無効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€GC時間を節約ã§ãã€ã‚¢ãƒ—リケーション実行中ã®ä¸­æ–­ãŒçŸ­ç¸®ã•ã‚Œã¾ã™ã€‚
 .sp
-µ¯Æ°»þ¤Ë\fI\-Xnoclassgc\fR¤ò»ØÄꤹ¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Î¥¯¥é¥¹¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢GC¤Î´Ö¤Ï¤½¤Î¤Þ¤Þ»Ä¤ê¡¢¾ï¤Ë¥é¥¤¥Ö¤Ç¤¢¤ë¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤è¤ê¿¤¯¤Î¥á¥â¥ê¡¼¤¬±Êµ×¤ËÀêÍ­¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¡¢Ãí°Õ¤·¤Æ»ÈÍѤ·¤Ê¤¤¤È¡¢¥á¥â¥ê¡¼ÉÔ­¤ÎÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
+起動時ã«\fI\-Xnoclassgc\fRを指定ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーション内ã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚ªãƒ–ジェクトã¯ã€GCã®é–“ã¯ãã®ã¾ã¾æ®‹ã‚Šã€å¸¸ã«ãƒ©ã‚¤ãƒ–ã§ã‚ã‚‹ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚ˆã‚Šå¤šãã®ãƒ¡ãƒ¢ãƒªãƒ¼ãŒæ°¸ä¹…ã«å æœ‰ã•ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã€æ³¨æ„ã—ã¦ä½¿ç”¨ã—ãªã„ã¨ã€ãƒ¡ãƒ¢ãƒªãƒ¼ä¸è¶³ã®ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xprof
 .RS 4
-¼Â¹ÔÃæ¤Î¥×¥í¥°¥é¥à¤Î¥×¥í¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¡¢¥×¥í¥Õ¥¡¥¤¥ë¡¦¥Ç¡¼¥¿¤òɸ½à½ÐÎϤËÁ÷¿®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥×¥í¥°¥é¥à³«È¯ÍѤΥ桼¥Æ¥£¥ê¥Æ¥£¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ËÜÈÖ²ÔƯ¥·¥¹¥Æ¥à¤Ç¤Î»ÈÍѤòÌÜŪ¤È¤·¤¿¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+実行中ã®ãƒ—ログラムã®ãƒ—ロファイルを生æˆã—ã€ãƒ—ロファイル・データを標準出力ã«é€ä¿¡ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ—ログラム開発用ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚本番稼åƒã‚·ã‚¹ãƒ†ãƒ ã§ã®ä½¿ç”¨ã‚’目的ã¨ã—ãŸã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-Xrs
 .RS 4
-JVM¤Ë¤è¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥°¥Ê¥ë¤Î»ÈÍѤò¸º¤é¤·¤Þ¤¹¡£
+JVMã«ã‚ˆã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’減らã—ã¾ã™ã€‚
 .sp
-¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤Ï¡¢JVM¤¬ÆÍÁ³½ªÎ»¤·¤¿¾ì¹ç¤Ç¤â¡¢¥·¥ã¥Ã¥È¥À¥¦¥ó»þ¤Ë¥æ¡¼¥¶¡¼¡¦¥¯¥ê¡¼¥ó¥¢¥Ã¥×¡¦¥³¡¼¥É(¥Ç¡¼¥¿¥Ù¡¼¥¹Àܳ¤Î¥¯¥í¡¼¥º¤Ê¤É)¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥·¥ã¥Ã¥È¥À¥¦¥ó¤ò½çÈÖ¤ËÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+シャットダウン・フックã¯ã€JVMãŒçªç„¶çµ‚了ã—ãŸå ´åˆã§ã‚‚ã€ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³æ™‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒªãƒ¼ãƒ³ã‚¢ãƒƒãƒ—・コード(データベース接続ã®ã‚¯ãƒ­ãƒ¼ã‚ºãªã©)を実行ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€Javaアプリケーションã®ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã‚’順番ã«æœ‰åŠ¹ã«ã—ã¾ã™ã€‚
 .sp
-JVM¤Ï¡¢Í½´ü¤·¤Ê¤¤½ªÎ»¤Î¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤ò¼ÂÁõ¤¹¤ë¤¿¤á¤Ë¥·¥°¥Ê¥ë¤ò¥­¥ã¥Ã¥Á¤·¤Þ¤¹¡£JVM¤Ï¡¢\fISIGHUP\fR¡¢\fISIGINT\fR¤ª¤è¤Ó\fISIGTERM\fR¤ò»ÈÍѤ·¤Æ¡¢¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤Î¼Â¹Ô¤ò³«»Ï¤·¤Þ¤¹¡£
+JVMã¯ã€äºˆæœŸã—ãªã„終了ã®ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ãƒ»ãƒ•ãƒƒã‚¯ã‚’実装ã™ã‚‹ãŸã‚ã«ã‚·ã‚°ãƒŠãƒ«ã‚’キャッãƒã—ã¾ã™ã€‚JVMã¯ã€\fISIGHUP\fRã€\fISIGINT\fRãŠã‚ˆã³\fISIGTERM\fRを使用ã—ã¦ã€ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ãƒ»ãƒ•ãƒƒã‚¯ã®å®Ÿè¡Œã‚’開始ã—ã¾ã™ã€‚
 .sp
-JVM¤Ï¡¢¥Ç¥Ð¥Ã¥°¤ÎÌÜŪ¤Ç¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¤ò¥À¥ó¥×¤¹¤ë¤È¤¤¤¦µ¡Ç½¤ò¼Â¸½¤¹¤ë¤¿¤á¤Ë¡¢Æ±ÍͤΥᥫ¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£JVM¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥À¥ó¥×¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë\fISIGQUIT\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+JVMã¯ã€ãƒ‡ãƒãƒƒã‚°ã®ç›®çš„ã§ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ã‚’ダンプã™ã‚‹ã¨ã„ã†æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã€åŒæ§˜ã®ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’使用ã—ã¾ã™ã€‚JVMã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ€ãƒ³ãƒ—を実行ã™ã‚‹ãŸã‚ã«\fISIGQUIT\fRを使用ã—ã¾ã™ã€‚
 .sp
-JVM¤òËä¤á¹þ¤ó¤Ç¤¤¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢\fISIGINT\fR¤ä\fISIGTERM\fR¤Ê¤É¤Î¥·¥°¥Ê¥ë¤òÉÑÈˤ˥ȥé¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¡¢¤½¤Î·ë²Ì¡¢JVM¤Î¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤È¾×Æͤ¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fI\-Xrs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¤³¤ÎÌäÂê¤ËÂн褹¤ë¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£\fI\-Xrs\fR¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fISIGINT\fR¡¢\fISIGTERM\fR¡¢\fISIGHUP\fR¤ª¤è¤Ó\fISIGQUIT\fR¤Î¥·¥°¥Ê¥ë¡¦¥Þ¥¹¥¯¤ÏJVM¤Ë¤è¤Ã¤ÆÊѹ¹¤µ¤ì¤º¡¢¤³¤ì¤é¤Î¥·¥°¥Ê¥ë¤Î¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤»¤ó¡£
+JVMを埋ã‚込んã§ã„るアプリケーションã¯ã€\fISIGINT\fRã‚„\fISIGTERM\fRãªã©ã®ã‚·ã‚°ãƒŠãƒ«ã‚’é »ç¹ã«ãƒˆãƒ©ãƒƒãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€ãã®çµæžœã€JVMã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã¨è¡çªã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fI\-Xrs\fRオプションã¯ã€ã“ã®å•é¡Œã«å¯¾å‡¦ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-Xrs\fRãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fISIGINT\fRã€\fISIGTERM\fRã€\fISIGHUP\fRãŠã‚ˆã³\fISIGQUIT\fRã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒžã‚¹ã‚¯ã¯JVMã«ã‚ˆã£ã¦å¤‰æ›´ã•ã‚Œãšã€ã“れらã®ã‚·ã‚°ãƒŠãƒ«ã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fI\-Xrs\fR¤ò»ØÄꤹ¤ë¤È¡¢¼¡¤Î2¤Ä¤Î·ë²Ì¤¬À¸¤¸¤Þ¤¹:
+\fI\-Xrs\fRを指定ã™ã‚‹ã¨ã€æ¬¡ã®2ã¤ã®çµæžœãŒç”Ÿã˜ã¾ã™:
 .sp
 .RS 4
 .ie n \{\
@@ -691,7 +691,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISIGQUIT\fR¤Ë¤è¤ë¥¹¥ì¥Ã¥É¡¦¥À¥ó¥×¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+\fISIGQUIT\fRã«ã‚ˆã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ€ãƒ³ãƒ—ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -702,63 +702,63 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯½èÍý¤Î¼Â¹Ô¤Ï¡¢JVM¤¬½ªÎ»¤·¤è¤¦¤È¤·¤Æ¤¤¤ë»þÅÀ¤Ç\fISystem\&.exit()\fR¤ò¸Æ¤Ó½Ð¤¹¤Ê¤É¤·¤Æ¡¢¥æ¡¼¥¶¡¼¡¦¥³¡¼¥É¦¤Ç¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+シャットダウン・フック処ç†ã®å®Ÿè¡Œã¯ã€JVMãŒçµ‚了ã—よã†ã¨ã—ã¦ã„る時点ã§\fISystem\&.exit()\fRを呼ã³å‡ºã™ãªã©ã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚³ãƒ¼ãƒ‰å´ã§è¡Œã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xshare:\fImode\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¥â¡¼¥É¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+クラス・データ共有モードを設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 auto
 .RS 4
-²Äǽ¤Ê¾ì¹ç¡¢¶¦Í­¥¯¥é¥¹¤Î¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢Java HotSpot 32\-Bit Client VM¤Î¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+å¯èƒ½ãªå ´åˆã€å…±æœ‰ã‚¯ãƒ©ã‚¹ã®ãƒ‡ãƒ¼ã‚¿ã‚’使用ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€Java HotSpot 32\-Bit Client VMã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 on
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¤Î»ÈÍѤ¬É¬ÍפǤ¹¡£¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¤ò»ÈÍѤǤ­¤Ê¤¤¾ì¹ç¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+クラス・データ共有ã®ä½¿ç”¨ãŒå¿…è¦ã§ã™ã€‚クラス・データ共有を使用ã§ããªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 off
 .RS 4
-¶¦Í­¥¯¥é¥¹¡¦¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢Java HotSpot 32\-Bit Server VM¡¢Java HotSpot 64\-Bit Client VM¤ª¤è¤ÓJava HotSpot 64\-Bit Server VM¤Î¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+共有クラス・データを使用ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€Java HotSpot 32\-Bit Server VMã€Java HotSpot 64\-Bit Client VMãŠã‚ˆã³Java HotSpot 64\-Bit Server VMã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 dump
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¥¢¡¼¥«¥¤¥Ö¤ò¼êÆ°¤ÇÀ¸À®¤·¤Þ¤¹¡£
+クラス・データ共有アーカイブを手動ã§ç”Ÿæˆã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XshowSettings:\fIcategory\fR
 .RS 4
-ÀßÄê¤òɽ¼¨¤·¤Æ³¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fIcategory\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+設定を表示ã—ã¦ç¶šè¡Œã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fIcategory\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 all
 .RS 4
-ÀßÄê¤Î¤¹¤Ù¤Æ¤Î¥«¥Æ¥´¥ê¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+設定ã®ã™ã¹ã¦ã®ã‚«ãƒ†ã‚´ãƒªã‚’表示ã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 locale
 .RS 4
-¥í¥±¡¼¥ë¤Ë´ØÏ¢¤¹¤ëÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+ロケールã«é–¢é€£ã™ã‚‹è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 properties
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ë´ØÏ¢¤¹¤ëÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+システム・プロパティã«é–¢é€£ã™ã‚‹è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 vm
 .RS 4
-JVM¤ÎÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+JVMã®è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xss\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£KB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢MB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢GB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϥץé¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+スレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚KBを示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€MBを示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€GBを示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -768,7 +768,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/ARM (32¥Ó¥Ã¥È): 320KB
+Linux/ARM (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -779,7 +779,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/i386 (32¥Ó¥Ã¥È): 320KB
+Linux/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -790,7 +790,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/x64 (64¥Ó¥Ã¥È): 1024KB
+Linux/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -801,7 +801,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-OS X (64¥Ó¥Ã¥È): 1024KB
+OS X (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -812,7 +812,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/i386 (32¥Ó¥Ã¥È): 320KB
+Oracle Solaris/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -823,7 +823,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/x64 (64¥Ó¥Ã¥È): 1024KB
+Oracle Solaris/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -834,10 +834,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Windows: ²¾ÁÛ¥á¥â¥ê¡¼¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+Windows: 仮想メモリーã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤷ¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã‚’ç•°ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -850,46 +850,46 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:ThreadStackSize\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:ThreadStackSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xusealtsigs
 .RS 4
-JVMÆâÉô¥·¥°¥Ê¥ë¤Î\fISIGUSR1\fR¤ª¤è¤Ó\fISIGUSR2\fR¤Î¤«¤ï¤ê¤Ë¡¢ÂåÂØ¥·¥°¥Ê¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:+UseAltSigs\fR¤ÈƱÅù¤Ç¤¹¡£
+JVM内部シグナルã®\fISIGUSR1\fRãŠã‚ˆã³\fISIGUSR2\fRã®ã‹ã‚ã‚Šã«ã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã‚’使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:+UseAltSigs\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xverify:\fImode\fR
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ù¥ê¥Õ¥¡¥¤¥¢¤Î¥â¡¼¥É¤òÀßÄꤷ¤Þ¤¹¡£¥Ð¥¤¥È¥³¡¼¥É¤Î¸¡¾Ú¤Ï°ìÉô¤ÎÌäÂê¤Î¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ËÌòΩ¤Á¤Þ¤¹¤¬¡¢¼Â¹ÔÃæ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ø¤Î¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤òÁýÂ礵¤»¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒ™ãƒªãƒ•ã‚¡ã‚¤ã‚¢ã®ãƒ¢ãƒ¼ãƒ‰ã‚’設定ã—ã¾ã™ã€‚ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã®æ¤œè¨¼ã¯ä¸€éƒ¨ã®å•é¡Œã®ãƒˆãƒ©ãƒ–ルシューティングã«å½¹ç«‹ã¡ã¾ã™ãŒã€å®Ÿè¡Œä¸­ã®ã‚¢ãƒ—リケーションã¸ã®ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã‚’増大ã•ã›ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 none
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò¸¡¾Ú¤·¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢µ¯Æ°»þ´Ö¤¬Ã»½Ì¤µ¤ì¡¢Java¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ëÊݸî¤â·Ú¸º¤µ¤ì¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’検証ã—ã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€èµ·å‹•æ™‚é–“ãŒçŸ­ç¸®ã•ã‚Œã€Javaã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ä¿è­·ã‚‚軽減ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 remote
 .RS 4
-¥Í¥Ã¥È¥ï¡¼¥¯¤ò²ð¤·¤Æ¥ê¥â¡¼¥È¤Ç¥í¡¼¥É¤µ¤ì¤ë¥¯¥é¥¹¤Î¤ß¤ò¸¡¾Ú¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-Xverify\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’介ã—ã¦ãƒªãƒ¢ãƒ¼ãƒˆã§ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®ã¿ã‚’検証ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-Xverify\fRオプションを指定ã—ãªã„å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 all
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã‚’検証ã—ã¾ã™ã€‚
 .RE
 .RE
-.SS "¹âÅ٤ʥé¥ó¥¿¥¤¥à¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªãƒ©ãƒ³ã‚¿ã‚¤ãƒ ãƒ»ã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot VM¤Î¼Â¹Ô»þ¤ÎÆ°ºî¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot VMã®å®Ÿè¡Œæ™‚ã®å‹•ä½œã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+DisableAttachMechanism
 .RS 4
-JVM¤Ë¥Ä¡¼¥ë¤ò¥¢¥¿¥Ã¥Á¤¹¤ë¥á¥«¥Ë¥º¥à¤ò̵¸ú¤Ë¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¤³¤ì¤Ï¡¢¥¢¥¿¥Ã¥Á¡¦¥á¥«¥Ë¥º¥à¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fIjcmd\fR¡¢\fIjstack\fR¡¢\fIjmap\fR¡¢\fIjinfo\fR¤Ê¤É¤Î¥Ä¡¼¥ë¤ò»ÈÍѤǤ­¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+JVMã«ãƒ„ールをアタッãƒã™ã‚‹ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’無効ã«ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã“ã‚Œã¯ã€ã‚¢ã‚¿ãƒƒãƒãƒ»ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’有効ã«ã™ã‚‹ã¨ã€\fIjcmd\fRã€\fIjstack\fRã€\fIjmap\fRã€\fIjinfo\fRãªã©ã®ãƒ„ールを使用ã§ãã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:ErrorFile=\fIfilename\fR
 .RS 4
-¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¥¨¥é¡¼¡¦¥Ç¡¼¥¿¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIhs_err_pid\fR\fIpid\fR\fI\&.log\fR
-(\fIpid\fR¤Ï¥¨¥é¡¼¤Î¸¶°ø¤È¤Ê¤Ã¤¿¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤Ë¤Ê¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥í¥°¡¦¥Õ¥¡¥¤¥ë¤òÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(¥×¥í¥»¥¹¤Î¼±Ê̻ҤÏ\fI%p\fR¤È¤·¤Æ»ØÄꤵ¤ì¤Þ¤¹)¡£
+リカãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã«ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ‡ãƒ¼ã‚¿ãŒæ›¸ãè¾¼ã¾ã‚Œã‚‹ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIhs_err_pid\fR\fIpid\fR\fI\&.log\fR
+(\fIpid\fRã¯ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã¨ãªã£ãŸãƒ—ロセスã®è­˜åˆ¥å­)ã«ãªã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(プロセスã®è­˜åˆ¥å­ã¯\fI%p\fRã¨ã—ã¦æŒ‡å®šã•ã‚Œã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -900,7 +900,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¨¥é¡¼¡¦¥í¥°¤ò\fI/var/log/java/java_error\&.log\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ­ã‚°ã‚’\fI/var/log/java/java_error\&.log\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -911,14 +911,14 @@
 .if n \{\
 .RE
 .\}
-(ÎΰèÉÔ­¡¢¸¢¸Â¤ÎÌäÂê¤Þ¤¿¤ÏÊ̤ÎÌäÂê¤Ë¤è¤ê)»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Ê¤¤¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î°ì»þ¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£°ì»þ¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fI/tmp\fR¤Ç¤¹¡£
+(領域ä¸è¶³ã€æ¨©é™ã®å•é¡Œã¾ãŸã¯åˆ¥ã®å•é¡Œã«ã‚ˆã‚Š)指定ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ããªã„å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ä¸€æ™‚ディレクトリã«ä½œæˆã•ã‚Œã¾ã™ã€‚一時ディレクトリã¯\fI/tmp\fRã§ã™ã€‚
 .RE
 .PP
 \-XX:LargePageSizeInBytes=\fIsize\fR
 .RS 4
-Java¥Ò¡¼¥×¤Ë»ÈÍѤµ¤ì¤ëÂ礭¤¤¥Ú¡¼¥¸¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£\fIsize\fR°ú¿ô¤Ï¡¢2¤ÎÎß¾è(2¡¢4¡¢8¡¢16¡¢\&.\&.\&.)¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥¤¥º¤Ï0¤ËÀßÄꤵ¤ì¡¢¤³¤ì¤Ï¡¢JVM¤Ç¤ÏÂ礭¤¤¥Ú¡¼¥¸¤Î¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+Javaヒープã«ä½¿ç”¨ã•ã‚Œã‚‹å¤§ãã„ページã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚\fIsize\fR引数ã¯ã€2ã®ç´¯ä¹—(2ã€4ã€8ã€16ã€\&.\&.\&.)ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µã‚¤ã‚ºã¯0ã«è¨­å®šã•ã‚Œã€ã“ã‚Œã¯ã€JVMã§ã¯å¤§ãã„ページã®ã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Â礭¤¤¥Ú¡¼¥¸¤Î¥µ¥¤¥º¤ò4¥á¥¬¥Ð¥¤¥È(MB)¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å¤§ãã„ページã®ã‚µã‚¤ã‚ºã‚’4メガãƒã‚¤ãƒˆ(MB)ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -933,9 +933,9 @@
 .PP
 \-XX:MaxDirectMemorySize=\fIsize\fR
 .RS 4
-¿·µ¬I/O (\fIjava\&.nio\fR¥Ñ¥Ã¥±¡¼¥¸)¤ÎľÀܥХåե¡³äÅö¤Æ¤ÎºÇÂç¹ç·×¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥¤¥º¤Ï0¤ËÀßÄꤵ¤ì¡¢¤³¤ì¤Ï¡¢JVM¤Ç¤ÏNIO¤ÎľÀܥХåե¡³äÅö¤Æ¤Î¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+æ–°è¦I/O (\fIjava\&.nio\fRパッケージ)ã®ç›´æŽ¥ãƒãƒƒãƒ•ã‚¡å‰²å½“ã¦ã®æœ€å¤§åˆè¨ˆã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µã‚¤ã‚ºã¯0ã«è¨­å®šã•ã‚Œã€ã“ã‚Œã¯ã€JVMã§ã¯NIOã®ç›´æŽ¥ãƒãƒƒãƒ•ã‚¡å‰²å½“ã¦ã®ã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢NIO¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€NIOサイズを異ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -952,30 +952,30 @@
 .PP
 \-XX:NativeMemoryTracking=\fImode\fR
 .RS 4
-JVM¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¥È¥é¥Ã¥­¥ó¥°¤Î¥â¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+JVMã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリー使用状æ³ã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ã®ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 off
 .RS 4
-JVM¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼»ÈÍѾõ¶·¤òÄÉÀפ·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢\fI\-XX:NativeMemoryTracking\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+JVMã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリー使用状æ³ã‚’追跡ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€\fI\-XX:NativeMemoryTracking\fRオプションを指定ã—ãªã„å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 summary
 .RS 4
-JVM¥µ¥Ö¥·¥¹¥Æ¥à(Java¥Ò¡¼¥×¡¢¥¯¥é¥¹¡¢¥³¡¼¥É¡¢¥¹¥ì¥Ã¥É¤Ê¤É)¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¤ßÄÉÀפ·¤Þ¤¹¡£
+JVMサブシステム(Javaヒープã€ã‚¯ãƒ©ã‚¹ã€ã‚³ãƒ¼ãƒ‰ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãªã©)ã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã®ã¿è¿½è·¡ã—ã¾ã™ã€‚
 .RE
 .PP
 detail
 .RS 4
-JVM¥µ¥Ö¥·¥¹¥Æ¥à¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¥È¥é¥Ã¥­¥ó¥°¤Ë²Ã¤¨¤Æ¡¢¸Ä¡¹¤Î\fICallSite\fR
-(¸Ä¡¹¤Î²¾ÁÛ¥á¥â¥ê¡¼¡¦¥ê¡¼¥¸¥ç¥ó¤ª¤è¤Ó¤½¤Î¥³¥ß¥Ã¥ÈºÑ¥ê¡¼¥¸¥ç¥ó)¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤òÄÉÀפ·¤Þ¤¹¡£
+JVMサブシステムã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ã«åŠ ãˆã¦ã€å€‹ã€…ã®\fICallSite\fR
+(個々ã®ä»®æƒ³ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãŠã‚ˆã³ãã®ã‚³ãƒŸãƒƒãƒˆæ¸ˆãƒªãƒ¼ã‚¸ãƒ§ãƒ³)ã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã‚’追跡ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:OnError=\fIstring\fR
 .RS 4
-¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤È¤­¤Ë¼Â¹Ô¤¹¤ë¡¢¥«¥¹¥¿¥à¡¦¥³¥Þ¥ó¥É¤Þ¤¿¤Ï°ìÏ¢¤Î¥»¥ß¥³¥í¥ó¶èÀÚ¤ê¤Î¥³¥Þ¥ó¥É¤òÀßÄꤷ¤Þ¤¹¡£Ê¸»úÎó¤Ë¶õÇò¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+リカãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸã¨ãã«å®Ÿè¡Œã™ã‚‹ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã¾ãŸã¯ä¸€é€£ã®ã‚»ãƒŸã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’設定ã—ã¾ã™ã€‚文字列ã«ç©ºç™½ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fI\-XX:OnError\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥¢¡¦¥¤¥á¡¼¥¸¤òºîÀ®¤¹¤ë¤¿¤á¤Ë\fIgcore\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëÊýË¡¡¢¤ª¤è¤Ó¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤Î¾ì¹ç¤Ë¥Ç¥Ð¥Ã¥¬¤òµ¯Æ°¤·¤Æ¥×¥í¥»¥¹¤ËÀܳ¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(\fI%p\fR¤Ï¸½ºß¤Î¥×¥í¥»¥¹¤ò»ØÄꤷ¤Þ¤¹)¡£
+次ã®ä¾‹ã§ã¯ã€\fI\-XX:OnError\fRオプションを使用ã—ã¦ã‚³ã‚¢ãƒ»ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’作æˆã™ã‚‹ãŸã‚ã«\fIgcore\fRコマンドを実行ã™ã‚‹æ–¹æ³•ã€ãŠã‚ˆã³ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ã®å ´åˆã«ãƒ‡ãƒãƒƒã‚¬ã‚’èµ·å‹•ã—ã¦ãƒ—ロセスã«æŽ¥ç¶šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(\fI%p\fRã¯ç¾åœ¨ã®ãƒ—ロセスを指定ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -990,27 +990,27 @@
 .PP
 \-XX:OnOutOfMemoryError=\fIstring\fR
 .RS 4
-\fIOutOfMemoryError\fRÎã³°¤¬ºÇ½é¤Ë¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤Ë¼Â¹Ô¤¹¤ë¡¢¥«¥¹¥¿¥à¡¦¥³¥Þ¥ó¥É¤Þ¤¿¤Ï°ìÏ¢¤Î¥»¥ß¥³¥í¥ó¶èÀÚ¤ê¤Î¥³¥Þ¥ó¥É¤òÀßÄꤷ¤Þ¤¹¡£Ê¸»úÎó¤Ë¶õÇò¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥Éʸ»úÎó¤ÎÎã¤Ï¡¢\fI\-XX:OnError\fR¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIOutOfMemoryError\fR例外ãŒæœ€åˆã«ã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«å®Ÿè¡Œã™ã‚‹ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã¾ãŸã¯ä¸€é€£ã®ã‚»ãƒŸã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’設定ã—ã¾ã™ã€‚文字列ã«ç©ºç™½ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンド文字列ã®ä¾‹ã¯ã€\fI\-XX:OnError\fRオプションã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:+PrintCommandLineFlags
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ëɽ¼¨¤µ¤ì¤¿¡¢¿Í´Ö¹©³ØŪ¤ËÁªÂò¤·¤¿JVM¥Õ¥é¥°¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ò¡¼¥×Îΰ襵¥¤¥º¤äÁªÂò¤µ¤ì¤¿¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ê¤É¡¢JVM¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤¿¥¨¥ë¥´¥Î¥ß¥Ã¥¯Ãͤò³Îǧ¤¹¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Õ¥é¥°¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£
+コマンドラインã«è¡¨ç¤ºã•ã‚ŒãŸã€äººé–“工学的ã«é¸æŠžã—ãŸJVMフラグã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ’ープ領域サイズやé¸æŠžã•ã‚ŒãŸã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ãªã©ã€JVMã«ã‚ˆã£ã¦è¨­å®šã•ã‚ŒãŸã‚¨ãƒ«ã‚´ãƒŽãƒŸãƒƒã‚¯å€¤ã‚’確èªã™ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ•ãƒ©ã‚°ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+PrintNMTStatistics
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¤¬Í­¸ú¤Ê¾ì¹ç¤Ë¡¢JVM¤Î½ªÎ»»þ¤Ë¼ý½¸¤µ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¡¦¥Ç¡¼¥¿¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹(\fI\-XX:NativeMemoryTracking\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¡¦¥Ç¡¼¥¿¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãŒæœ‰åŠ¹ãªå ´åˆã«ã€JVMã®çµ‚了時ã«åŽé›†ã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãƒ»ãƒ‡ãƒ¼ã‚¿ã®å°åˆ·ã‚’有効ã«ã—ã¾ã™(\fI\-XX:NativeMemoryTracking\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„)。デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãƒ»ãƒ‡ãƒ¼ã‚¿ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+ShowMessageBoxOnError
 .RS 4
-JVM¤Ç¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥À¥¤¥¢¥í¥°¡¦¥Ü¥Ã¥¯¥¹¤Îɽ¼¨¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢JVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤·¤Æ¥¨¥é¡¼¤Î¸¶°ø¤òÄ´ºº¤Ç¤­¤ë¤è¤¦¤Ë¡¢JVM¤ò½ªÎ»¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¡¢¥×¥í¥»¥¹¤ò¥¢¥¯¥Æ¥£¥Ö¤Ê¤Þ¤Þ¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+JVMã§ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãƒ»ãƒœãƒƒã‚¯ã‚¹ã®è¡¨ç¤ºã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã—ã¦ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã‚’調査ã§ãるよã†ã«ã€JVMを終了ã—ãªã„よã†ã«ã—ã¦ã€ãƒ—ロセスをアクティブãªã¾ã¾ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:ThreadStackSize=\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϥץé¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+スレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1020,7 +1020,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/ARM (32¥Ó¥Ã¥È): 320KB
+Linux/ARM (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1031,7 +1031,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/i386 (32¥Ó¥Ã¥È): 320KB
+Linux/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1042,7 +1042,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/x64 (64¥Ó¥Ã¥È): 1024KB
+Linux/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1053,7 +1053,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-OS X (64¥Ó¥Ã¥È): 1024KB
+OS X (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1064,7 +1064,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/i386 (32¥Ó¥Ã¥È): 320KB
+Oracle Solaris/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1075,7 +1075,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/x64 (64¥Ó¥Ã¥È): 1024KB
+Oracle Solaris/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1086,10 +1086,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Windows: ²¾ÁÛ¥á¥â¥ê¡¼¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+Windows: 仮想メモリーã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã‚’ç•°ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1102,86 +1102,86 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xss\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-Xss\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+TraceClassLoading
 .RS 4
-¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤ë¤È¤­¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨ãã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassLoadingPreorder
 .RS 4
-¥¯¥é¥¹¤¬»²¾È¤µ¤ì¤ë½ç½ø¤Ç¡¢¥í¡¼¥É¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒå‚ç…§ã•ã‚Œã‚‹é †åºã§ã€ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassResolution
 .RS 4
-Äê¿ô¥×¡¼¥ë¤Î²ò·è¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢Äê¿ô¥×¡¼¥ë¤Î²ò·è¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+定数プールã®è§£æ±ºã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€å®šæ•°ãƒ—ールã®è§£æ±ºã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassUnloading
 .RS 4
-¥¯¥é¥¹¤¬¥¢¥ó¥í¡¼¥É¤µ¤ì¤ë¤È¤­¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨ãã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceLoaderConstraints
 .RS 4
-¥í¡¼¥À¡¼À©Ìó¤Îµ­Ï¿¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥í¡¼¥À¡¼À©Ìó¤Îµ­Ï¿¤ÏÄÉÀפµ¤ì¤Þ¤»¤ó¡£
+ローダー制約ã®è¨˜éŒ²ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ­ãƒ¼ãƒ€ãƒ¼åˆ¶ç´„ã®è¨˜éŒ²ã¯è¿½è·¡ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseAltSigs
 .RS 4
-JVMÆâÉô¥·¥°¥Ê¥ë¤Î\fISIGUSR1\fR¤ª¤è¤Ó\fISIGUSR2\fR¤Î¤«¤ï¤ê¤Ë¡¢ÂåÂØ¥·¥°¥Ê¥ë¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢ÂåÂØ¥·¥°¥Ê¥ë¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xusealtsigs\fR¤ÈƱÅù¤Ç¤¹¡£
+JVM内部シグナルã®\fISIGUSR1\fRãŠã‚ˆã³\fISIGUSR2\fRã®ã‹ã‚ã‚Šã«ã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯\fI\-Xusealtsigs\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+UseBiasedLocking
 .RS 4
-¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤«¤Ê¤ê¤ÎÎ̤ÎÈ󶥹ç¤ÎƱ´ü²½¤¬¤¢¤ë°ìÉô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¤³¤Î¥Õ¥é¥°¤òÍ­¸ú¤Ë¤¹¤ë¤ÈÂçÉý¤Ê¹â®²½¤¬¼Â¸½¤·¤Þ¤¹¤¬¡¢ÆÃÄê¤Î¥Ñ¥¿¡¼¥ó¤Î¥í¥Ã¥¯¤¬¤¢¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢Â®ÅÙ¤¬Äã²¼¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤ÎÊýË¡¤Î¾ÜºÙ¤Ï¡¢http://www\&.oracle\&.com/technetwork/java/tuning\-139912\&.html#section4\&.2\&.5¤Ë¤¢¤ëJava¥Á¥å¡¼¥Ë¥ó¥°¤Î¥Û¥ï¥¤¥È¡¦¥Ú¡¼¥Ñ¡¼¤ÎÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã‹ãªã‚Šã®é‡ã®éžç«¶åˆã®åŒæœŸåŒ–ãŒã‚る一部ã®ã‚¢ãƒ—リケーションã¯ã€ã“ã®ãƒ•ãƒ©ã‚°ã‚’有効ã«ã™ã‚‹ã¨å¤§å¹…ãªé«˜é€ŸåŒ–ãŒå®Ÿç¾ã—ã¾ã™ãŒã€ç‰¹å®šã®ãƒ‘ターンã®ãƒ­ãƒƒã‚¯ãŒã‚るアプリケーションã¯ã€é€Ÿåº¦ãŒä½Žä¸‹ã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã®æ–¹æ³•ã®è©³ç´°ã¯ã€http://www\&.oracle\&.com/technetwork/java/tuning\-139912\&.html#section4\&.2\&.5ã«ã‚ã‚‹Javaãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ã®ãƒ›ãƒ¯ã‚¤ãƒˆãƒ»ãƒšãƒ¼ãƒ‘ーã®ä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseCompressedOops
 .RS 4
-°µ½Ì¤µ¤ì¤¿¥Ý¥¤¥ó¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¡¢64¥Ó¥Ã¥È¤Î¥Ý¥¤¥ó¥¿¤Ç¤Ï¤Ê¤¯32¥Ó¥Ã¥È¤Î¥ª¥Õ¥»¥Ã¥È¤È¤·¤Æɽ¤µ¤ì¡¢¤³¤ì¤Ë¤è¤ê¡¢32GB¤è¤ê¾®¤µ¤¤Java¥Ò¡¼¥×¡¦¥µ¥¤¥º¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô»þ¤Ë¡¢Ä̾¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬¸þ¾å¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢64¥Ó¥Ã¥È¤ÎJVM¤Ç¤Î¤ßµ¡Ç½¤·¤Þ¤¹¡£
+圧縮ã•ã‚ŒãŸãƒã‚¤ãƒ³ã‚¿ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€ã‚ªãƒ–ジェクトå‚ç…§ã¯ã€64ビットã®ãƒã‚¤ãƒ³ã‚¿ã§ã¯ãªã32ビットã®ã‚ªãƒ•ã‚»ãƒƒãƒˆã¨ã—ã¦è¡¨ã•ã‚Œã€ã“ã‚Œã«ã‚ˆã‚Šã€32GBよりå°ã•ã„Javaヒープ・サイズã®ã‚¢ãƒ—リケーションã®å®Ÿè¡Œæ™‚ã«ã€é€šå¸¸ã€ãƒ‘フォーマンスãŒå‘上ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€64ビットã®JVMã§ã®ã¿æ©Ÿèƒ½ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢°µ½Ì¥Ý¥¤¥ó¥¿¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€åœ§ç¸®ãƒã‚¤ãƒ³ã‚¿ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseLargePages
 .RS 4
-Â礭¤¤¥Ú¡¼¥¸¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Â礭¤¤¥Ú¡¼¥¸¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseLargePages\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+大ãã„ページã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚大ãã„ページã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseLargePages\fRを指定ã—ã¾ã™ã€‚
 .sp
-¾ÜºÙ¤Ï¡¢http://www\&.oracle\&.com/technetwork/java/javase/tech/largememory\-jsp\-137182\&.html¤Ë¤¢¤ëÂ礭¤¤¥á¥â¥ê¡¼¡¦¥Ú¡¼¥¸ÍѤÎJava¥µ¥Ý¡¼¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+詳細ã¯ã€http://www\&.oracle\&.com/technetwork/java/javase/tech/largememory\-jsp\-137182\&.htmlã«ã‚る大ãã„メモリー・ページ用ã®Javaサãƒãƒ¼ãƒˆã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:+UseMembar
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¾õÂÖ¤ÎÁ«°Ü¤Ç¥á¥ó¥Ð¡¼¤Îȯ¹Ô¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Í­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëPower PC¤ª¤è¤ÓARM¥µ¡¼¥Ð¡¼¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¾å¤Ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Power PC¤ÈARM¤Î¥¹¥ì¥Ã¥É¾õÂÖÁ«°Ü¤ËÂФ¹¤ë¥á¥ó¥Ð¡¼¤Îȯ¹Ô¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseMembar\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+スレッドã®çŠ¶æ…‹ã®é·ç§»ã§ãƒ¡ãƒ³ãƒãƒ¼ã®ç™ºè¡Œã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€æœ‰åŠ¹ã«ãªã£ã¦ã„ã‚‹Power PCãŠã‚ˆã³ARMサーãƒãƒ¼ã‚’除ãã™ã¹ã¦ã®ãƒ—ラットフォーム上ã§ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚Power PCã¨ARMã®ã‚¹ãƒ¬ãƒƒãƒ‰çŠ¶æ…‹é·ç§»ã«å¯¾ã™ã‚‹ãƒ¡ãƒ³ãƒãƒ¼ã®ç™ºè¡Œã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseMembar\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UsePerfData
 .RS 4
-\fIperfdata\fRµ¡Ç½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢JVM¤Î¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥Æ¥¹¥È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤ò̵¸ú¤Ë¤¹¤ë¤È¡¢\fIhsperfdata_userid\fR¥Ç¥£¥ì¥¯¥È¥ê¤ÎºîÀ®¤òÍÞÀ©¤·¤Þ¤¹¡£\fIperfdata\fRµ¡Ç½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UsePerfData\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIperfdata\fR機能を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€JVMã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ãƒ‘フォーマンス・テストãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚ã“れを無効ã«ã™ã‚‹ã¨ã€\fIhsperfdata_userid\fRディレクトリã®ä½œæˆã‚’抑制ã—ã¾ã™ã€‚\fIperfdata\fR機能を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UsePerfData\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+AllowUserSignalHandlers
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤è¤ë¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤Î¥¤¥ó¥¹¥È¡¼¥ë¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+アプリケーションã«ã‚ˆã‚‹ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¢ãƒ—リケーションã¯ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã‚’インストールã™ã‚‹ã“ã¨ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。
 .RE
-.SS "¹âÅÙ¤ÊJIT¥³¥ó¥Ñ¥¤¥é¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªJITコンパイラ・オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot VM¤Ç¼Â¹Ô¤µ¤ì¤ëưŪ¤Êjust\-in\-time (JIT)¥³¥ó¥Ñ¥¤¥é¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot VMã§å®Ÿè¡Œã•ã‚Œã‚‹å‹•çš„ãªjust\-in\-time (JIT)コンパイラを制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+AggressiveOpts
 .RS 4
-ÀѶËŪ¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹ºÇŬ²½µ¡Ç½¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ïº£¸å¤Î¥ê¥ê¡¼¥¹¤Ç¥Ç¥Õ¥©¥ë¥È¤Ë¤Ê¤ëͽÄê¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢»î¸³Åª¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹µ¡Ç½¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+ç©æ¥µçš„ãªãƒ‘フォーマンス最é©åŒ–機能ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«ãªã‚‹äºˆå®šã§ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è©¦é¨“çš„ãªãƒ‘フォーマンス機能ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:AllocateInstancePrefetchLines=\fIlines\fR
 .RS 4
-¥¤¥ó¥¹¥¿¥ó¥¹³äÅö¤Æ¥Ý¥¤¥ó¥¿¤ÎÁ°¤Ë¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¹Ô¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¹Ô¿ô¤Ï1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インスタンス割当ã¦ãƒã‚¤ãƒ³ã‚¿ã®å‰ã«ãƒ—リフェッãƒã™ã‚‹è¡Œæ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ—リフェッãƒã™ã‚‹è¡Œæ•°ã¯1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1196,7 +1196,7 @@
 .PP
 \-XX:AllocatePrefetchInstr=\fIinstruction\fR
 .RS 4
-³äÅö¤Æ¥Ý¥¤¥ó¥¿¤ÎÁ°¤Ë¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤òÀßÄꤷ¤Þ¤¹¡£»ÈÍѲÄǽ¤ÊÃͤÏ0¤«¤é3¤Þ¤Ç¤Ç¤¹¡£ÃͤÎÇظå¤Ë¤¢¤ë¼ÂºÝ¤ÎÌ¿Îá¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤Ï0¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+割当ã¦ãƒã‚¤ãƒ³ã‚¿ã®å‰ã«ãƒ—リフェッãƒã™ã‚‹ãƒ—リフェッãƒå‘½ä»¤ã‚’設定ã—ã¾ã™ã€‚使用å¯èƒ½ãªå€¤ã¯0ã‹ã‚‰3ã¾ã§ã§ã™ã€‚値ã®èƒŒå¾Œã«ã‚る実際ã®å‘½ä»¤ã¯ã€ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ—リフェッãƒå‘½ä»¤ã¯0ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1211,7 +1211,7 @@
 .PP
 \-XX:AllocatePrefetchStepSize=\fIsize\fR
 .RS 4
-½ç¼¡¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤Î¥¹¥Æ¥Ã¥×¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¹¥Æ¥Ã¥×¡¦¥µ¥¤¥º¤Ï16¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+順次プリフェッãƒå‘½ä»¤ã®ã‚¹ãƒ†ãƒƒãƒ—・サイズ(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¹ãƒ†ãƒƒãƒ—・サイズã¯16ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1226,12 +1226,12 @@
 .PP
 \-XX:+BackgroundCompilation
 .RS 4
-¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-BackgroundCompilation\fR¤ò»ØÄꤷ¤Þ¤¹(¤³¤ì¤Ï\fI\-Xbatch\fR¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤Ç¤¹)¡£
+ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-BackgroundCompilation\fRを指定ã—ã¾ã™(ã“ã‚Œã¯\fI\-Xbatch\fRを指定ã™ã‚‹ã®ã¨åŒç­‰ã§ã™)。
 .RE
 .PP
 \-XX:CICompilerCount=\fIthreads\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤Ë»ÈÍѤ¹¤ë¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¿ô¤Ï¡¢¥µ¡¼¥Ð¡¼JVM¤Î¾ì¹ç¤Ï2¡¢¥¯¥é¥¤¥¢¥ó¥ÈJVM¤Î¾ì¹ç¤Ï1¤ËÀßÄꤵ¤ì¤Æ¤ª¤ê¡¢ÁØ¥³¥ó¥Ñ¥¤¥ë¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥³¥¢¿ô¤Ë¹ç¤»¤ÆÁý¸º¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¤Î¿ô¤ò2¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルã«ä½¿ç”¨ã™ã‚‹ã‚³ãƒ³ãƒ‘イラ・スレッドã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã¯ã€ã‚µãƒ¼ãƒãƒ¼JVMã®å ´åˆã¯2ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆJVMã®å ´åˆã¯1ã«è¨­å®šã•ã‚Œã¦ãŠã‚Šã€å±¤ã‚³ãƒ³ãƒ‘イルãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚³ã‚¢æ•°ã«åˆã›ã¦å¢—減ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’2ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1246,7 +1246,7 @@
 .PP
 \-XX:CodeCacheMinimumFreeSpace=\fIsize\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤ËɬÍפʺǾ®¶õ¤­Îΰè(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£ºÇ¾®¶õ¤­Îΰè¤è¤ê¾¯¤Ê¤¤Îΰ褷¤«»Ä¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥ë¤ÏÄä»ß¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï500KB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇ¾®¶õ¤­Îΰè¤ò1024MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルã«å¿…è¦ãªæœ€å°ç©ºã領域(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚最å°ç©ºã領域より少ãªã„領域ã—ã‹æ®‹ã£ã¦ã„ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イルã¯åœæ­¢ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯500KBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€æœ€å°ç©ºã領域を1024MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1261,7 +1261,7 @@
 .PP
 \-XX:CompileCommand=\fIcommand\fR,\fImethod\fR[,\fIoption\fR]
 .RS 4
-¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é\fIString\fR¥¯¥é¥¹¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+メソッドã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰\fIString\fRクラスã®\fIindexOf()\fRメソッドを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1272,7 +1272,7 @@
 .if n \{\
 .RE
 .\}
-¥¹¥é¥Ã¥·¥å(\fI/\fR)¤Ç¶èÀÚ¤é¤ì¤¿¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¡¢´°Á´¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ÀÚ¼è¤ê¤ÈŽÉÕ¤±¤ÎÁàºî¤òÍưפˤ¹¤ë¤¿¤á¤Ë¡¢\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥á¥½¥Ã¥É̾¤Î·Á¼°¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+スラッシュ(\fI/\fR)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€ã€å®Œå…¨ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚切å–ã‚Šã¨è²¼ä»˜ã‘ã®æ“作を容易ã«ã™ã‚‹ãŸã‚ã«ã€\fI\-XX:+PrintCompilation\fRオプションãŠã‚ˆã³\fI\-XX:+LogCompilation\fRオプションã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰åã®å½¢å¼ã‚’使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1283,7 +1283,7 @@
 .if n \{\
 .RE
 .\}
-½ð̾¤Ê¤·¤Ç¥á¥½¥Ã¥É¤ò»ØÄꤹ¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ï»ØÄꤷ¤¿Ì¾Á°¤ò»ý¤Ä¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ËŬÍѤµ¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Ç¥á¥½¥Ã¥É¤Î½ð̾¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é\fIString\fR¥¯¥é¥¹¤Î\fIindexOf(String)\fR¥á¥½¥Ã¥É¤Î¤ß½ü³°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ç½²åãªã—ã§ãƒ¡ã‚½ãƒƒãƒ‰ã‚’指定ã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã¯æŒ‡å®šã—ãŸåå‰ã‚’æŒã¤ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«é©ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼ã§ãƒ¡ã‚½ãƒƒãƒ‰ã®ç½²åを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰\fIString\fRクラスã®\fIindexOf(String)\fRメソッドã®ã¿é™¤å¤–ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1294,7 +1294,7 @@
 .if n \{\
 .RE
 .\}
-¤Þ¤¿¡¢¥¯¥é¥¹Ì¾¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤Ë¥ï¥¤¥ë¥É¥«¡¼¥É¤È¤·¤Æ¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¤¹¤Ù¤Æ¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤ò½ü³°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã¾ãŸã€ã‚¯ãƒ©ã‚¹åãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åã«ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã¨ã—ã¦ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を使用ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ã™ã¹ã¦ã®\fIindexOf()\fRメソッドを除外ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1305,7 +1305,7 @@
 .if n \{\
 .RE
 .\}
-¥«¥ó¥Þ¤È¥Ô¥ê¥ª¥É¤Ï¶õÇò¤ÎÊÌ̾¤Ç¡¢¤³¤ì¤Ë¤è¤ê¡¢¥·¥§¥ë¤ò²ð¤·¤Æ¥³¥ó¥Ñ¥¤¥é¡¦¥³¥Þ¥ó¥É¤òÅϤ¹¤³¤È¤¬Íưפˤʤê¤Þ¤¹¡£°ú¿ô¤ò°úÍÑÉä¤Ç°Ï¤à¤³¤È¤Ç¡¢¶õÇò¤ò¥»¥Ñ¥ì¡¼¥¿¤È¤·¤Æ»ÈÍѤ·¤Æ\fI\-XX:CompileCommand\fR¤Ë°ú¿ô¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+カンマã¨ãƒ”リオドã¯ç©ºç™½ã®åˆ¥åã§ã€ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚§ãƒ«ã‚’介ã—ã¦ã‚³ãƒ³ãƒ‘イラ・コマンドを渡ã™ã“ã¨ãŒå®¹æ˜“ã«ãªã‚Šã¾ã™ã€‚引数を引用符ã§å›²ã‚€ã“ã¨ã§ã€ç©ºç™½ã‚’セパレータã¨ã—ã¦ä½¿ç”¨ã—ã¦\fI\-XX:CompileCommand\fRã«å¼•æ•°ã‚’渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1316,48 +1316,48 @@
 .if n \{\
 .RE
 .\}
-\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÇÅϤµ¤ì¤¿¥³¥Þ¥ó¥É¤ò²òÀϤ·¤¿¸å¤Ë¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï\fI\&.hotspot_compiler\fR¥Õ¥¡¥¤¥ë¤«¤é¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¥³¥Þ¥ó¥É¤òÄɲ乤뤫¡¢¤Þ¤¿¤Ï\fI\-XX:CompileCommandFile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ̤Υե¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:CompileCommand\fRオプションを使用ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æ¸¡ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã‚’解æžã—ãŸå¾Œã«ã€JITコンパイラã¯\fI\&.hotspot_compiler\fRファイルã‹ã‚‰ã‚³ãƒžãƒ³ãƒ‰ã‚’読ã¿å–ã‚Šã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’追加ã™ã‚‹ã‹ã€ã¾ãŸã¯\fI\-XX:CompileCommandFile\fRオプションを使用ã—ã¦åˆ¥ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-Ê£¿ô¤Î¥³¥Þ¥ó¥É¤òÄɲ乤ë¤Ë¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄꤹ¤ë¤«¡¢¤Þ¤¿¤Ï²þ¹Ô¥»¥Ñ¥ì¡¼¥¿(\fI\en\fR)¤ò»ÈÍѤ·¤Æ³Æ°ú¿ô¤ò¶èÀÚ¤ê¤Þ¤¹¡£¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+複数ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’追加ã™ã‚‹ã«ã¯ã€\fI\-XX:CompileCommand\fRオプションを複数回指定ã™ã‚‹ã‹ã€ã¾ãŸã¯æ”¹è¡Œã‚»ãƒ‘レータ(\fI\en\fR)を使用ã—ã¦å„引数を区切りã¾ã™ã€‚次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã§ãã¾ã™ã€‚
 .PP
 break
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤ÎºÇ½é¤ËÄä»ß¤¹¤ë¤¿¤á¤Ë¡¢JVM¤Î¥Ç¥Ð¥Ã¥°»þ¤Î¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イルã®æœ€åˆã«åœæ­¢ã™ã‚‹ãŸã‚ã«ã€JVMã®ãƒ‡ãƒãƒƒã‚°æ™‚ã®ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 compileonly
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò½ü¤¤¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ò¡¢¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤·¤Þ¤¹¡£Ê̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-XX:CompileOnly\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ£¿ô¤Î¥á¥½¥Ã¥É¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ã„ãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’ã€ã‚³ãƒ³ãƒ‘イルã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚別ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-XX:CompileOnly\fRオプションを使用ã—ã¦è¤‡æ•°ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 dontinline
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥¤¥ó¥é¥¤¥ó²½¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’インライン化ã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 exclude
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚
 .RE
 .PP
 help
 .RS 4
-\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò°õºþ¤·¤Þ¤¹¡£
+\fI\-XX:CompileCommand\fRオプションã®ãƒ˜ãƒ«ãƒ—・メッセージをå°åˆ·ã—ã¾ã™ã€‚
 .RE
 .PP
 inline
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥¤¥ó¥é¥¤¥ó²½¤·¤è¤¦¤È¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’インライン化ã—よã†ã¨ã—ã¾ã™ã€‚
 .RE
 .PP
 log
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ËÂФ·¤Æ¡¢(\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ)¥³¥ó¥Ñ¥¤¥ë¡¦¥í¥®¥ó¥°¤ò½ü³°¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤Ë¥í¥®¥ó¥°¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ãã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«å¯¾ã—ã¦ã€(\fI\-XX:+LogCompilation\fRオプションを使用ã—ã¦)コンパイル・ロギングを除外ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ãƒ­ã‚®ãƒ³ã‚°ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 option
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢ºÇ¸å¤Î°ú¿ô(\fIoption\fR)¤Î¤«¤ï¤ê¤Ë¡¢»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ËJIT¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤òÅϤ¹¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢¥á¥½¥Ã¥É̾¤Î¸å¤ÎËöÈø¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIStringBuffer\fR¥¯¥é¥¹¤Î\fIappend()\fR¥á¥½¥Ã¥É¤ËÂФ·¤Æ\fIBlockLayoutByFrequency\fR¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æœ€å¾Œã®å¼•æ•°(\fIoption\fR)ã®ã‹ã‚ã‚Šã«ã€æŒ‡å®šã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã«JITコンパイル・オプションを渡ã™ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚コンパイル・オプションã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰åã®å¾Œã®æœ«å°¾ã«è¨­å®šã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIStringBuffer\fRクラスã®\fIappend()\fRメソッドã«å¯¾ã—ã¦\fIBlockLayoutByFrequency\fRオプションを有効ã«ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1368,17 +1368,17 @@
 .if n \{\
 .RE
 .\}
-¥«¥ó¥Þ¤Þ¤¿¤Ï¶õÇò¤Ç¶èÀڤäơ¢Ê£¿ô¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+カンマã¾ãŸã¯ç©ºç™½ã§åŒºåˆ‡ã£ã¦ã€è¤‡æ•°ã®ã‚³ãƒ³ãƒ‘イル・オプションを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 print
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¸å¤ËÀ¸À®¤µ¤ì¤¿¥¢¥»¥ó¥Ö¥é¡¦¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル後ã«ç”Ÿæˆã•ã‚ŒãŸã‚¢ã‚»ãƒ³ãƒ–ラ・コードを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 quiet
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¡¦¥³¥Þ¥ó¥É¤ò½ÐÎϤ·¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄꤷ¤¿¥³¥Þ¥ó¥É¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR¥¯¥é¥¹¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤¹¤ë¾ì¹ç¡¢¼¡¤¬É¸½à½ÐÎϤ˽ÐÎϤµ¤ì¤Þ¤¹¡£
+コンパイル・コマンドを出力ã—ã¾ã›ã‚“。デフォルトã§ã¯ã€\fI\-XX:CompileCommand\fRオプションを使用ã—ã¦æŒ‡å®šã—ãŸã‚³ãƒžãƒ³ãƒ‰ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fRクラスã®\fIindexOf()\fRメソッドã®ã‚³ãƒ³ãƒ‘イルã‹ã‚‰é™¤å¤–ã™ã‚‹å ´åˆã€æ¬¡ãŒæ¨™æº–出力ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1389,15 +1389,15 @@
 .if n \{\
 .RE
 .\}
-¾¤Î\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ÎÁ°¤Ë\fI\-XX:CompileCommand=quiet\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤³¤ì¤òÍÞÀ©¤Ç¤­¤Þ¤¹¡£
+ä»–ã®\fI\-XX:CompileCommand\fRオプションã®å‰ã«\fI\-XX:CompileCommand=quiet\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã“れを抑制ã§ãã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:CompileCommandFile=\fIfilename\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥é¡¦¥³¥Þ¥ó¥É¤ÎÆɼè¤ê¸µ¤Î¥Õ¥¡¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤ë¥³¥Þ¥ó¥É¤ò³ÊǼ¤¹¤ë¤¿¤á¤Ë¡¢\fI\&.hotspot_compiler\fR¥Õ¥¡¥¤¥ë¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+JITコンパイラ・コマンドã®èª­å–ã‚Šå…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JITコンパイラã«ã‚ˆã£ã¦å®Ÿè¡Œã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’æ ¼ç´ã™ã‚‹ãŸã‚ã«ã€\fI\&.hotspot_compiler\fRファイルãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¡¦¥Õ¥¡¥¤¥ë¤Î³Æ¹Ô¤Ï¡¢¥³¥Þ¥ó¥É¤¬»ÈÍѤµ¤ì¤ë¥³¥Þ¥ó¥É¡¢¥¯¥é¥¹Ì¾¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤òɽ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¹Ô¤Ï¡¢\fIString\fR¥¯¥é¥¹¤Î\fItoString()\fR¥á¥½¥Ã¥É¤ËÂФ·¤Æ¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンド・ファイルã®å„è¡Œã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãŒä½¿ç”¨ã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ã€ã‚¯ãƒ©ã‚¹åãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åを表ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®è¡Œã¯ã€\fIString\fRクラスã®\fItoString()\fRメソッドã«å¯¾ã—ã¦ã‚¢ã‚»ãƒ³ãƒ–リ・コードを出力ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1408,12 +1408,12 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤¹¤ëJIT¥³¥ó¥Ñ¥¤¥é¤Î¥³¥Þ¥ó¥É¤Î»ØÄê¤Î¾ÜºÙ¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メソッドã§å®Ÿè¡Œã™ã‚‹JITコンパイラã®ã‚³ãƒžãƒ³ãƒ‰ã®æŒ‡å®šã®è©³ç´°ã¯ã€\fI\-XX:CompileCommand\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:CompileOnly=\fImethods\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤òÀ©¸Â¤¹¤ë(¥«¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿)¥á¥½¥Ã¥É¤Î¥ê¥¹¥È¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¤ß¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£´°Á´¥¯¥é¥¹Ì¾(¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à)¤Ç³Æ¥á¥½¥Ã¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR¥¯¥é¥¹¤Î\fIlength()\fR¥á¥½¥Ã¥É¤ª¤è¤Ó\fIList\fR¥¯¥é¥¹¤Î\fIsize()\fR¥á¥½¥Ã¥É¤Î¤ß¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+コンパイルを制é™ã™ã‚‹(カンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸ)メソッドã®ãƒªã‚¹ãƒˆã‚’設定ã—ã¾ã™ã€‚指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã¿ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚完全クラスå(パッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€)ã§å„メソッドを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fRクラスã®\fIlength()\fRメソッドãŠã‚ˆã³\fIList\fRクラスã®\fIsize()\fRメソッドã®ã¿ã‚’コンパイルã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1424,7 +1424,7 @@
 .if n \{\
 .RE
 .\}
-¥¹¥é¥Ã¥·¥å(\fI/\fR)¤Ç¶èÀÚ¤é¤ì¤¿¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¡¢´°Á´¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ÀÚ¼è¤ê¤ÈŽÉÕ¤±¤ÎÁàºî¤òÍưפˤ¹¤ë¤¿¤á¤Ë¡¢\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥á¥½¥Ã¥É̾¤Î·Á¼°¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+スラッシュ(\fI/\fR)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€ã€å®Œå…¨ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚切å–ã‚Šã¨è²¼ä»˜ã‘ã®æ“作を容易ã«ã™ã‚‹ãŸã‚ã«ã€\fI\-XX:+PrintCompilation\fRオプションãŠã‚ˆã³\fI\-XX:+LogCompilation\fRオプションã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰åã®å½¢å¼ã‚’使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1435,7 +1435,7 @@
 .if n \{\
 .RE
 .\}
-¥ï¥¤¥ë¥É¥«¡¼¥É¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¤¬¡¢¥¯¥é¥¹Ì¾¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸Ì¾¤À¤±¤ò»ØÄꤷ¤Æ¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤â¡¢¥á¥½¥Ã¥É¤À¤±¤ò»ØÄꤷ¤ÆǤ°Õ¤Î¥¯¥é¥¹¤Î¤³¤Î̾Á°¤ò»ý¤Ä¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ワイルドカードã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ãŒã€ã‚¯ãƒ©ã‚¹åã¾ãŸã¯ãƒ‘ッケージåã ã‘を指定ã—ã¦ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã®ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ã“ã¨ã‚‚ã€ãƒ¡ã‚½ãƒƒãƒ‰ã ã‘を指定ã—ã¦ä»»æ„ã®ã‚¯ãƒ©ã‚¹ã®ã“ã®åå‰ã‚’æŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1452,7 +1452,7 @@
 .PP
 \-XX:CompileThreshold=\fIinvocations\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ëÁ°¤Ë²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¡¼¥Ð¡¼JVM¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï¡¢10,000¤Î²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¼Â¹Ô¤·¤Æ¡¢¸úΨŪ¤Ê¥³¥ó¥Ñ¥¤¥ë¤Î¤¿¤á¤Î¾ðÊó¤ò¼ý½¸¤·¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥ÈJVM¤Î¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤Ï1,500¸Æ½Ð¤·¤Ç¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤ò5,000¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルå‰ã«è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µãƒ¼ãƒãƒ¼JVMã§ã¯ã€JITコンパイラã¯ã€10,000ã®è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を実行ã—ã¦ã€åŠ¹çŽ‡çš„ãªã‚³ãƒ³ãƒ‘イルã®ãŸã‚ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚クライアントJVMã®å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã¯1,500呼出ã—ã§ã™ã€‚次ã®ä¾‹ã§ã¯ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’5,000ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1463,22 +1463,22 @@
 .if n \{\
 .RE
 .\}
-\fI\-Xcomp\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¤ÎÁ°¤Ë¡¢Java¥á¥½¥Ã¥É¤Î²ò¼á¤ò´°Á´¤Ë̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fI\-Xcomp\fRオプションを指定ã—ã¦ã€ã‚³ãƒ³ãƒ‘イルã®å‰ã«ã€Javaメソッドã®è§£é‡ˆã‚’完全ã«ç„¡åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+DoEscapeAnalysis
 .RS 4
-¥¨¥¹¥±¡¼¥×ʬÀϤλÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥¨¥¹¥±¡¼¥×ʬÀϤλÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-DoEscapeAnalysis\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+エスケープ分æžã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚エスケープ分æžã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-DoEscapeAnalysis\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+FailOverToOldVerifier
 .RS 4
-¿·¤·¤¤¥¿¥¤¥×¡¦¥Á¥§¥Ã¥«¤¬¼ºÇÔ¤·¤¿¾ì¹ç¤Î¡¢¸Å¤¤¥Ù¥ê¥Õ¥¡¥¤¥¢¤Ø¤Î¼«Æ°¥Õ¥§¥¤¥ë¥ª¡¼¥Ð¡¼¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢ºÇ¶á¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤Ï̵»ë¤µ¤ì¤Þ¤¹(¤Ä¤Þ¤ê¡¢Ìµ¸ú¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹)¡£¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤òÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+æ–°ã—ã„タイプ・ãƒã‚§ãƒƒã‚«ãŒå¤±æ•—ã—ãŸå ´åˆã®ã€å¤ã„ベリファイアã¸ã®è‡ªå‹•ãƒ•ã‚§ã‚¤ãƒ«ã‚ªãƒ¼ãƒãƒ¼ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æœ€è¿‘ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“ã‚Œã¯ç„¡è¦–ã•ã‚Œã¾ã™(ã¤ã¾ã‚Šã€ç„¡åŠ¹ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™)。å¤ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“れを有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:InitialCodeCacheSize=\fIsize\fR
 .RS 4
-½é´ü¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ500KB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢½é´ü¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤ò32KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+åˆæœŸã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯500KBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€åˆæœŸã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚ºã‚’32KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1493,12 +1493,12 @@
 .PP
 \-XX:+Inline
 .RS 4
-¥á¥½¥Ã¥É¤Î¥¤¥ó¥é¥¤¥ó²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¤¿¤á¤Ë¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥á¥½¥Ã¥É¤Î¥¤¥ó¥é¥¤¥ó²½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-Inline\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+メソッドã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ãŸã‚ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚メソッドã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-Inline\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:InlineSmallCode=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¬É¬Íפʥ³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤ÎºÇÂ祳¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£»ØÄꤷ¤¿¥µ¥¤¥º¤è¤ê¾®¤µ¤¤¥µ¥¤¥º¤Î¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¤ß¤¬¡¢¥¤¥ó¥é¥¤¥ó²½¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇÂ祳¡¼¥É¡¦¥µ¥¤¥º¤Ï1000¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ãŒå¿…è¦ãªã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚指定ã—ãŸã‚µã‚¤ã‚ºã‚ˆã‚Šå°ã•ã„サイズã®ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã¿ãŒã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–ã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯1000ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1513,16 +1513,16 @@
 .PP
 \-XX:+LogCompilation
 .RS 4
-¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë\fIhotspot\&.log\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Î¥í¥®¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£\fI\-XX:LogFile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢°Û¤Ê¤ë¥í¥°¡¦¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¤È̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹\fIhotspot\&.log\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ã‚³ãƒ³ãƒ‘イル・アクティビティã®ãƒ­ã‚®ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚\fI\-XX:LogFile\fRオプションを使用ã—ã¦ã€ç•°ãªã‚‹ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ‘スã¨åå‰ã‚’指定ã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ïµ­Ï¿¤µ¤ì¤Þ¤»¤ó¡£\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚³ãƒ³ãƒ‘イル・アクティビティã¯è¨˜éŒ²ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+LogCompilation\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤Ó¤Ë¡¢¥³¥ó¥½¡¼¥ë¤Ë½ÐÎϤµ¤ì¤¿¥á¥Ã¥»¡¼¥¸¤ò´Þ¤à¾ÜºÙ¤Ê¿ÇÃǽÐÎϤòÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:+PrintCompilation\fRオプションを使用ã—ã¦ã€ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ãŸã³ã«ã€ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã«å‡ºåŠ›ã•ã‚ŒãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’å«ã‚€è©³ç´°ãªè¨ºæ–­å‡ºåŠ›ã‚’有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:MaxInlineSize=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¹¤ë¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º¤Ï35¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ã™ã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯35ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1537,7 +1537,7 @@
 .PP
 \-XX:MaxNodeLimit=\fInodes\fR
 .RS 4
-ñ°ì¤Î¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë»þ¤Ë»ÈÍѤµ¤ì¤ë¥Î¡¼¥É¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Î¡¼¥É¤ÎºÇÂç¿ô¤Ï65,000¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+å˜ä¸€ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル時ã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒŽãƒ¼ãƒ‰ã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒŽãƒ¼ãƒ‰ã®æœ€å¤§æ•°ã¯65,000ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1552,7 +1552,7 @@
 .PP
 \-XX:MaxTrivialSize=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¹¤ëñ½ã¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Ã±½ã¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º¤Ï6¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ã™ã‚‹å˜ç´”メソッドã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€å˜ç´”メソッドã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯6ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1567,77 +1567,77 @@
 .PP
 \-XX:+OptimizeStringConcat
 .RS 4
-\fIString\fRÏ¢·ëÁàºî¤ÎºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£\fIString\fRÏ¢·ëÁàºî¤ÎºÇŬ²½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-OptimizeStringConcat\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIString\fR連çµæ“作ã®æœ€é©åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚\fIString\fR連çµæ“作ã®æœ€é©åŒ–を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-OptimizeStringConcat\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintAssembly
 .RS 4
-³°Éô¤Î\fIdisassembler\&.so\fR¥é¥¤¥Ö¥é¥ê¤ò»ÈÍѤ·¤Æ¡¢¥Ð¥¤¥È¥³¡¼¥É²½¤µ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¤Î¥á¥½¥Ã¥É¤Î¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤òɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ÎÌäÂê¤Î¿ÇÃǤËÌòΩ¤Á¤Þ¤¹¡£
+外部ã®\fIdisassembler\&.so\fRライブラリを使用ã—ã¦ã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰åŒ–ã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚¢ã‚»ãƒ³ãƒ–リ・コードã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã‚’表示ã™ã‚‹ã“ã¨ãŒã§ãã€ãƒ‘フォーマンスã®å•é¡Œã®è¨ºæ–­ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£\fI\-XX:+PrintAssembly\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¢ã‚»ãƒ³ãƒ–リ・コードã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+PrintAssembly\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintCompilation
 .RS 4
-¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤Ó¤Ë¡¢¥³¥ó¥½¡¼¥ë¤Ë¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢JVM¤«¤é¤Î¾ÜºÙ¤Ê¿ÇÃǽÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¼ÂºÝ¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¥á¥½¥Ã¥É¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¿ÇÃǽÐÎϤϰõºþ¤µ¤ì¤Þ¤»¤ó¡£
+メソッドをコンパイルã™ã‚‹ãŸã³ã«ã€ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€JVMã‹ã‚‰ã®è©³ç´°ãªè¨ºæ–­å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€å®Ÿéš›ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã‚’確èªã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è¨ºæ–­å‡ºåŠ›ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤ò¥Õ¥¡¥¤¥ë¤Ëµ­Ï¿¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:+LogCompilation\fRオプションを使用ã—ã¦ã€ã‚³ãƒ³ãƒ‘イル・アクティビティをファイルã«è¨˜éŒ²ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintInlining
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤Î·èÄêÆâÍƤνÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥¤¥ó¥é¥¤¥ó²½¤µ¤ì¤ë¥á¥½¥Ã¥É¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£
+インライン化ã®æ±ºå®šå†…容ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–ã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã‚’確èªã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¤¥ó¥é¥¤¥ó²½¾ðÊó¤Ï½ÐÎϤµ¤ì¤Þ¤»¤ó¡£\fI\-XX:+PrintInlining\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:+UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–情報ã¯å‡ºåŠ›ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+PrintInlining\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:+UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+RelaxAccessControlCheck
 .RS 4
-¥Ù¥ê¥Õ¥¡¥¤¥¢Æâ¤Î¥¢¥¯¥»¥¹À©¸æ¥Á¥§¥Ã¥¯¤ÎÎ̤ò¸º¤é¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢ºÇ¶á¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤Ï̵»ë¤µ¤ì¤Þ¤¹(¤Ä¤Þ¤ê¡¢Ìµ¸ú¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹)¡£¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤òÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+ベリファイア内ã®ã‚¢ã‚¯ã‚»ã‚¹åˆ¶å¾¡ãƒã‚§ãƒƒã‚¯ã®é‡ã‚’減らã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æœ€è¿‘ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“ã‚Œã¯ç„¡è¦–ã•ã‚Œã¾ã™(ã¤ã¾ã‚Šã€ç„¡åŠ¹ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™)。å¤ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“れを有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:ReservedCodeCacheSize=\fIsize\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÎºÇÂ祳¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmaxjitcodesize\fR¤ÈƱÅù¤Ç¤¹¡£
+JITコンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-Xmaxjitcodesize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+TieredCompilation
 .RS 4
-ÁØ¥³¥ó¥Ñ¥¤¥ë¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢ÁØ¥³¥ó¥Ñ¥¤¥ë¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+層コンパイルã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€å±¤ã‚³ãƒ³ãƒ‘イルã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseCodeCacheFlushing
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ëÁ°¤Ë¡¢¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¤Î¥Õ¥é¥Ã¥·¥å¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ëÁ°¤Ë¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¤Î¥Õ¥é¥Ã¥·¥å¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-XX:\-UseCodeCacheFlushing\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+コンパイラをシャットダウンã™ã‚‹å‰ã«ã€ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚コンパイラをシャットダウンã™ã‚‹å‰ã«ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ã‚’無効ã«ã™ã‚‹ã«ã¯\fI\-XX:\-UseCodeCacheFlushing\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseCondCardMark
 .RS 4
-¥«¡¼¥Éɽ¤Î¹¹¿·Á°¤Ë¡¢¥«¡¼¥É¤¬¤¹¤Ç¤Ë¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Î¥Á¥§¥Ã¥¯¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢Ê£¿ô¤Î¥½¥±¥Ã¥È¤ò»ý¤Ä¥Þ¥·¥ó¾å¤Ç¤Î¤ß»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢Æ±»þÁàºî¤Ë¤«¤Ê¤ê°Í¸¤·¤Æ¤¤¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬¸þ¾å¤·¤Þ¤¹¡£
+カード表ã®æ›´æ–°å‰ã«ã€ã‚«ãƒ¼ãƒ‰ãŒã™ã§ã«ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€è¤‡æ•°ã®ã‚½ã‚±ãƒƒãƒˆã‚’æŒã¤ãƒžã‚·ãƒ³ä¸Šã§ã®ã¿ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€åŒæ™‚æ“作ã«ã‹ãªã‚Šä¾å­˜ã—ã¦ã„ã‚‹Javaアプリケーションã®ãƒ‘フォーマンスãŒå‘上ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseSuperWord
 .RS 4
-¥¹¥«¥é¡¼±é»»¤Î¥¹¡¼¥Ñ¡¼¥ï¡¼¥É±é»»¤Ø¤ÎÊÑ´¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥¹¥«¥é¡¼±é»»¤Î¥¹¡¼¥Ñ¡¼¥ï¡¼¥É±é»»¤Ø¤ÎÊÑ´¹¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseSuperWord\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+スカラー演算ã®ã‚¹ãƒ¼ãƒ‘ーワード演算ã¸ã®å¤‰æ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚スカラー演算ã®ã‚¹ãƒ¼ãƒ‘ーワード演算ã¸ã®å¤‰æ›ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseSuperWord\fRを指定ã—ã¾ã™ã€‚
 .RE
-.SS "¹âÅ٤ʥµ¡¼¥Ó¥¹¥¢¥Ó¥ê¥Æ¥£¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªã‚µãƒ¼ãƒ“スアビリティ・オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥·¥¹¥Æ¥à¾ðÊó¤ò¼ý½¸¤·¡¢¾ÜºÙ¤Ê¥Ç¥Ð¥Ã¥°¤ò¼Â¹Ô¤¹¤ëµ¡Ç½¤òÄ󶡤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ã‚·ã‚¹ãƒ†ãƒ æƒ…報をåŽé›†ã—ã€è©³ç´°ãªãƒ‡ãƒãƒƒã‚°ã‚’実行ã™ã‚‹æ©Ÿèƒ½ã‚’æä¾›ã—ã¾ã™ã€‚
 .PP
 \-XX:+ExtendedDTraceProbes
 .RS 4
-¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Ë±Æ¶Á¤òÍ¿¤¨¤ëÄɲäÎ\fIdtrace\fR¥Ä¡¼¥ë¡¦¥×¥í¡¼¥Ö¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fIdtrace\fR¤Ïɸ½à¥×¥í¡¼¥Ö¤Î¤ß¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+パフォーマンスã«å½±éŸ¿ã‚’与ãˆã‚‹è¿½åŠ ã®\fIdtrace\fRツール・プローブを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fIdtrace\fRã¯æ¨™æº–プローブã®ã¿ã‚’実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+HeapDumpOnOutOfMemory
 .RS 4
-\fIjava\&.lang\&.OutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ë¡¢¥Ò¡¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥é(HPROF)¤ò»ÈÍѤ·¤Æ¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¥Õ¥¡¥¤¥ë¤Ø¤ÎJava¥Ò¡¼¥×¤Î¥À¥ó¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£\fI\-XX:HeapDumpPath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ª¤è¤Ó̾Á°¤òÌÀ¼¨Åª¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢\fIOutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ë¥Ò¡¼¥×¤Ï¥À¥ó¥×¤µ¤ì¤Þ¤»¤ó¡£
+\fIjava\&.lang\&.OutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã«ã€ãƒ’ープ・プロファイラ(HPROF)を使用ã—ã¦ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®Javaヒープã®ãƒ€ãƒ³ãƒ—を有効ã«ã—ã¾ã™ã€‚\fI\-XX:HeapDumpPath\fRオプションを使用ã—ã¦ã€ãƒ’ープ・ダンプ・ファイルã®ãƒ‘スãŠã‚ˆã³åå‰ã‚’明示的ã«è¨­å®šã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€\fIOutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã«ãƒ’ープã¯ãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:HeapDumpPath=\fIpath\fR
 .RS 4
-\fI\-XX:+HeapDumpOnOutOfMemoryError\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Ò¡¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥é(HPROF)¤¬Ä󶡤¹¤ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò½ñ¤­¹þ¤à¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIjava_pid\fR\fIpid\fR\fI\&.hprof\fR
-(\fIpid\fR¤Ï¥¨¥é¡¼¤Î¸¶°ø¤È¤Ê¤Ã¤¿¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤Ë¤Ê¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥Õ¥¡¥¤¥ë¤òÌÀ¼¨Åª¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(\fI%p\fR¤Ï¸½ºß¤Î¥×¥í¥»¥¹¤Î¼±Ê̻Ҥòɽ¤·¤Þ¤¹)¡£
+\fI\-XX:+HeapDumpOnOutOfMemoryError\fRオプションãŒè¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ’ープ・プロファイラ(HPROF)ãŒæä¾›ã™ã‚‹ãƒ’ープ・ダンプを書ã込むパスãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIjava_pid\fR\fIpid\fR\fI\&.hprof\fR
+(\fIpid\fRã¯ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã¨ãªã£ãŸãƒ—ロセスã®è­˜åˆ¥å­)ã«ãªã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’明示的ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(\fI%p\fRã¯ç¾åœ¨ã®ãƒ—ロセスã®è­˜åˆ¥å­ã‚’表ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -1648,7 +1648,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤ò\fI/var/log/java/java_heapdump\&.hprof\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ’ープ・ダンプ・ファイルを\fI/var/log/java/java_heapdump\&.hprof\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1663,9 +1663,9 @@
 .PP
 \-XX:LogFile=\fIpath\fR
 .RS 4
-¥í¥°¡¦¥Ç¡¼¥¿¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIhotspot\&.log\fR¤Ç¤¹¡£
+ログ・データãŒæ›¸ãè¾¼ã¾ã‚Œã‚‹ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIhotspot\&.log\fRã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò\fI/var/log/java/hotspot\&.log\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fI/var/log/java/hotspot\&.log\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1680,39 +1680,39 @@
 .PP
 \-XX:+PrintClassHistogram
 .RS 4
-\fI[Control]+[C]\fR¥¤¥Ù¥ó¥È(\fISIGTERM\fR)¸å¤Ë¥¯¥é¥¹¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥Ò¥¹¥È¥°¥é¥à¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+\fI[Control]+[C]\fRイベント(\fISIGTERM\fR)後ã«ã‚¯ãƒ©ã‚¹ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ãƒ’ストグラムã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢\fIjmap \-histo\fR¥³¥Þ¥ó¥É¡¢¤Þ¤¿¤Ï\fIjcmd \fR\fIpid\fR\fI GC\&.class_histogram\fR¥³¥Þ¥ó¥É(\fIpid\fR¤Ï¸½ºß¤ÎJava¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã™ã‚‹ã¨ã€\fIjmap \-histo\fRコマンドã€ã¾ãŸã¯\fIjcmd \fR\fIpid\fR\fI GC\&.class_histogram\fRコマンド(\fIpid\fRã¯ç¾åœ¨ã®Javaプロセスã®è­˜åˆ¥å­)を実行ã™ã‚‹å ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintConcurrentLocks
 .RS 4
 .sp
-\fI[Control]+[C]\fR¥¤¥Ù¥ó¥È(\fISIGTERM\fR)¸å¤Ë\fIjava\&.util\&.concurrent\fR¥í¥Ã¥¯¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+\fI[Control]+[C]\fRイベント(\fISIGTERM\fR)後ã«\fIjava\&.util\&.concurrent\fRロックã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢\fIjstack \-l\fR¥³¥Þ¥ó¥É¡¢¤Þ¤¿¤Ï\fIjcmd \fR\fIpid\fR\fI Thread\&.print \-l\fR¥³¥Þ¥ó¥É(\fIpid\fR¤Ï¸½ºß¤ÎJava¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã™ã‚‹ã¨ã€\fIjstack \-l\fRコマンドã€ã¾ãŸã¯\fIjcmd \fR\fIpid\fR\fI Thread\&.print \-l\fRコマンド(\fIpid\fRã¯ç¾åœ¨ã®Javaプロセスã®è­˜åˆ¥å­)を実行ã™ã‚‹å ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UnlockDiagnosticVMOptions
 .RS 4
-JVM¤Î¿ÇÃǤòÌÜŪ¤È¤·¤¿¥ª¥×¥·¥ç¥ó¤ò¥¢¥ó¥í¥Ã¥¯¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¿ÇÃÇ¥ª¥×¥·¥ç¥ó¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+JVMã®è¨ºæ–­ã‚’目的ã¨ã—ãŸã‚ªãƒ—ションをアンロックã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è¨ºæ–­ã‚ªãƒ—ションã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
-.SS "¹âÅ٤ʥ¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¤¬Java HotSpot VM¤Ë¤è¤Ã¤Æ¤É¤Î¤è¤¦¤Ë¼Â¹Ô¤µ¤ì¤ë¤«¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(GC)ãŒJava HotSpot VMã«ã‚ˆã£ã¦ã©ã®ã‚ˆã†ã«å®Ÿè¡Œã•ã‚Œã‚‹ã‹ã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+AggressiveHeap
 .RS 4
-Java¥Ò¡¼¥×¤ÎºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥³¥ó¥Ô¥å¡¼¥¿¤Î¹½À®(RAM¤ª¤è¤ÓCPU)¤Ë´ð¤Å¤¤¤Æ¡¢ÍÍ¡¹¤Ê¥Ñ¥é¥á¡¼¥¿¤¬¡¢¥á¥â¥ê¡¼³äÅö¤Æ¤¬½¸Ã椷¤¿Ä¹»þ´Ö¼Â¹Ô¥¸¥ç¥Ö¤ËºÇŬ¤Ë¤Ê¤ë¤è¤¦¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Ò¡¼¥×¤ÏºÇŬ²½¤µ¤ì¤Þ¤»¤ó¡£
+Javaヒープã®æœ€é©åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚³ãƒ³ãƒ”ュータã®æ§‹æˆ(RAMãŠã‚ˆã³CPU)ã«åŸºã¥ã„ã¦ã€æ§˜ã€…ãªãƒ‘ラメータãŒã€ãƒ¡ãƒ¢ãƒªãƒ¼å‰²å½“ã¦ãŒé›†ä¸­ã—ãŸé•·æ™‚間実行ジョブã«æœ€é©ã«ãªã‚‹ã‚ˆã†ã«è¨­å®šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ’ープã¯æœ€é©åŒ–ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:AllocatePrefetchDistance=\fIsize\fR
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È³äÅö¤Æ¤Î¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤Î¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¿·µ¬¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃͤǽñ¤­¹þ¤â¤¦¤È¤¹¤ë¥á¥â¥ê¡¼¤Ï¡¢ºÇ¸å¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤«¤é¡¢¤³¤Îµ÷Î¥¤Þ¤Ç¥×¥ê¥Õ¥§¥Ã¥Á¤µ¤ì¤Þ¤¹¡£³ÆJava¥¹¥ì¥Ã¥É¤Ë¤ÏÆȼ«¤Î³äÅö¤Æ¥Ý¥¤¥ó¥È¤¬¤¢¤ê¤Þ¤¹¡£
+オブジェクト割当ã¦ã®ãƒ—リフェッãƒè·é›¢ã®ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚æ–°è¦ã‚ªãƒ–ジェクトã®å€¤ã§æ›¸ã込もã†ã¨ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ã¯ã€æœ€å¾Œã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚ªãƒ–ジェクトã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹ã‚‰ã€ã“ã®è·é›¢ã¾ã§ãƒ—リフェッãƒã•ã‚Œã¾ã™ã€‚å„Javaスレッドã«ã¯ç‹¬è‡ªã®å‰²å½“ã¦ãƒã‚¤ãƒ³ãƒˆãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Éé¤ÎÃͤϡ¢¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£Àµ¤ÎÃͤϡ¢¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¥Ð¥¤¥È¿ô¤Ç¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\-1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+è² ã®å€¤ã¯ã€ãƒ—リフェッãƒè·é›¢ã¯ãƒ—ラットフォームã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã‚‹ã“ã¨ã‚’示ã—ã¾ã™ã€‚æ­£ã®å€¤ã¯ã€ãƒ—リフェッãƒã™ã‚‹ãƒã‚¤ãƒˆæ•°ã§ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯\-1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤ò1024¥Ð¥¤¥È¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ—リフェッãƒè·é›¢ã‚’1024ãƒã‚¤ãƒˆã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1727,9 +1727,9 @@
 .PP
 \-XX:AllocatePrefetchLines=\fIlines\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÇÀ¸À®¤µ¤ì¤ë¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò»ÈÍѤ·¤Æ¡¢ºÇ¸å¤Î¥ª¥Ö¥¸¥§¥¯¥È³äÅö¤Æ¸å¤Ë¥í¡¼¥É¤¹¤ë¥­¥ã¥Ã¥·¥å¹Ô¿ô¤òÀßÄꤷ¤Þ¤¹¡£ºÇ¸å¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤¬¥¤¥ó¥¹¥¿¥ó¥¹¤Î¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1¤Ë¤Ê¤ê¡¢ÇÛÎó¤Î¾ì¹ç¤Ï3¤Ë¤Ê¤ê¤Þ¤¹¡£
+コンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã§ç”Ÿæˆã•ã‚Œã‚‹ãƒ—リフェッãƒå‘½ä»¤ã‚’使用ã—ã¦ã€æœ€å¾Œã®ã‚ªãƒ–ジェクト割当ã¦å¾Œã«ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã‚­ãƒ£ãƒƒã‚·ãƒ¥è¡Œæ•°ã‚’設定ã—ã¾ã™ã€‚最後ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚ªãƒ–ジェクトãŒã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯1ã«ãªã‚Šã€é…列ã®å ´åˆã¯3ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥í¡¼¥É¤µ¤ì¤ë¥­¥ã¥Ã¥·¥å¹Ô¿ô¤ò5¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚­ãƒ£ãƒƒã‚·ãƒ¥è¡Œæ•°ã‚’5ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1744,42 +1744,42 @@
 .PP
 \-XX:AllocatePrefetchStyle=\fIstyle\fR
 .RS 4
-¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ËÀ¸À®¤µ¤ì¤ë¥³¡¼¥É¡¦¥¹¥¿¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£\fIstyle\fR°ú¿ô¤Ï¡¢0¤«¤é3¤Þ¤Ç¤ÎÀ°¿ô¤Ç¤¹¡£
+プリフェッãƒå‘½ä»¤ã«ç”Ÿæˆã•ã‚Œã‚‹ã‚³ãƒ¼ãƒ‰ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚\fIstyle\fR引数ã¯ã€0ã‹ã‚‰3ã¾ã§ã®æ•´æ•°ã§ã™ã€‚
 .PP
 0
 .RS 4
-¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+プリフェッãƒå‘½ä»¤ã‚’生æˆã—ã¾ã›ã‚“。
 .RE
 .PP
 1
 .RS 4
-³Æ³äÅö¤Æ¤Î¸å¤Ç¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥Ñ¥é¥á¡¼¥¿¤Ç¤¹¡£
+å„割当ã¦ã®å¾Œã§ã€ãƒ—リフェッãƒå‘½ä»¤ã‚’実行ã—ã¾ã™ã€‚ã“ã‚Œã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ‘ラメータã§ã™ã€‚
 .RE
 .PP
 2
 .RS 4
-¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ö¥í¥Ã¥¯(TLAB)¥¦¥©¡¼¥¿¡¼¥Þ¡¼¥¯¡¦¥Ý¥¤¥ó¥¿¤ò»ÈÍѤ·¤Æ¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò¼Â¹Ô¤¹¤ë¥¿¥¤¥ß¥ó¥°¤ò·èÄꤷ¤Þ¤¹¡£
+スレッド・ローカルãªå‰²å½“ã¦ãƒ–ロック(TLAB)ウォーターマーク・ãƒã‚¤ãƒ³ã‚¿ã‚’使用ã—ã¦ã€ãƒ—リフェッãƒå‘½ä»¤ã‚’実行ã™ã‚‹ã‚¿ã‚¤ãƒŸãƒ³ã‚°ã‚’決定ã—ã¾ã™ã€‚
 .RE
 .PP
 3
 .RS 4
-³äÅö¤Æ¥×¥ê¥Õ¥§¥Ã¥ÁÍѤÎSPARC¤ÇBISÌ¿Îá¤ò»ÈÍѤ·¤Þ¤¹¡£
+割当ã¦ãƒ—リフェッãƒç”¨ã®SPARCã§BIS命令を使用ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:+AlwaysPreTouch
 .RS 4
-JVM¤Î½é´ü²½Ãæ¤ËJava¥Ò¡¼¥×¾å¤Î¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤Î¥¿¥Ã¥Á¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fImain()\fR¥á¥½¥Ã¥É¤ÎÆþÎÏÁ°¤Ë¡¢¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤¬¥á¥â¥ê¡¼¤Ë¼èÆÀ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ÊªÍý¥á¥â¥ê¡¼¤Ë¥Þ¥Ã¥×¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î²¾ÁÛ¥á¥â¥ê¡¼¤ò´Þ¤àĹ»þ´Ö¼Â¹Ô¤Î¥·¥¹¥Æ¥à¤ò¥·¥ß¥å¥ì¡¼¥È¤¹¤ë¥Æ¥¹¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢JVM¥Ò¡¼¥×Îΰ褬¤¤¤Ã¤Ñ¤¤¤Ë¤Ê¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤¬¥³¥ß¥Ã¥È¤µ¤ì¤Þ¤¹¡£
+JVMã®åˆæœŸåŒ–中ã«Javaヒープ上ã®ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã®ã‚¿ãƒƒãƒã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fImain()\fRメソッドã®å…¥åŠ›å‰ã«ã€ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ãŒãƒ¡ãƒ¢ãƒªãƒ¼ã«å–å¾—ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ç‰©ç†ãƒ¡ãƒ¢ãƒªãƒ¼ã«ãƒžãƒƒãƒ—ã•ã‚ŒãŸã™ã¹ã¦ã®ä»®æƒ³ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’å«ã‚€é•·æ™‚間実行ã®ã‚·ã‚¹ãƒ†ãƒ ã‚’シミュレートã™ã‚‹ãƒ†ã‚¹ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€JVMヒープ領域ãŒã„ã£ã±ã„ã«ãªã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ãŒã‚³ãƒŸãƒƒãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+CMSClassUnloadingEnabled
 .RS 4
-ʹԥޡ¼¥¯¥¹¥¤¡¼¥×(CMS)¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ë¡¢¥¢¥ó¥í¡¼¥É¤¹¤ë¥¯¥é¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£CMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î¥¯¥é¥¹¡¦¥¢¥ó¥í¡¼¥É¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-CMSClassUnloadingEnabled\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+並行マークスイープ(CMS)ガベージ・コレクタを使用ã™ã‚‹å ´åˆã«ã€ã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã‚¯ãƒ©ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚CMSガベージ・コレクタã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-CMSClassUnloadingEnabled\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSExpAvgFactor=\fIpercent\fR
 .RS 4
-ʹԥ³¥ì¥¯¥·¥ç¥óÅý·×¤Î»Ø¿ôÊ¿¶Ñ¤ò·×»»¤¹¤ëºÝ¤Ë¡¢¸½ºß¤Î¥µ¥ó¥×¥ë¤ò½Å¤ßÉÕ¤±¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢»Ø¿ôÊ¿¶Ñ·¸¿ô¤Ï25%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢·¸¿ô¤ò15%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+並行コレクション統計ã®æŒ‡æ•°å¹³å‡ã‚’計算ã™ã‚‹éš›ã«ã€ç¾åœ¨ã®ã‚µãƒ³ãƒ—ルをé‡ã¿ä»˜ã‘ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€æŒ‡æ•°å¹³å‡ä¿‚æ•°ã¯25%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ä¿‚æ•°ã‚’15%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1794,9 +1794,9 @@
 .PP
 \-XX:CMSIncrementalDutyCycle=\fIpercent\fR
 .RS 4
-ʹԥ³¥ì¥¯¥¿¤Î¼Â¹Ô¤¬µö²Ä¤µ¤ì¤Æ¤¤¤ë¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Î»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£\fI\-XX:+CMSIncrementalPacing\fR¤¬Í­¸ú¤Ê¾ì¹ç¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï½é´üÃͤΤߤòÀßÄꤷ¤Þ¤¹¡£
+並行コレクタã®å®Ÿè¡ŒãŒè¨±å¯ã•ã‚Œã¦ã„るマイナー・コレクション間ã®æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚\fI\-XX:+CMSIncrementalPacing\fRãŒæœ‰åŠ¹ãªå ´åˆã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ãŒè‡ªå‹•çš„ã«è¨­å®šã•ã‚Œã€ã“ã®ã‚ªãƒ—ションã¯åˆæœŸå€¤ã®ã¿ã‚’設定ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デフォルトã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã‚’20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1811,7 +1811,7 @@
 .PP
 \-XX:CMSIncrementalDutyCycleMin=\fIpercent\fR
 .RS 4
-\fI\-XX:+CMSIncrementalPacing\fR¤¬Í­¸ú¤Ê¾ì¹ç¤Ë¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î²¼¸Â¤Ç¤¢¤ë¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Î»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î²¼¸Â¤Ï0%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢²¼¸Â¤ò10%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+\fI\-XX:+CMSIncrementalPacing\fRãŒæœ‰åŠ¹ãªå ´åˆã«ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ä¸‹é™ã§ã‚るマイナー・コレクション間ã®æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ä¸‹é™ã¯0%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ä¸‹é™ã‚’10%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1826,12 +1826,12 @@
 .PP
 \-XX:+CMSIncrementalMode
 .RS 4
-CMS¥³¥ì¥¯¥¿¤ÎÁýʬ¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢2¤Ä°Ê²¼¤ÎGC¥¹¥ì¥Ã¥É¤ò»ý¤Ä¹½À®¤Ë¤Î¤ßÍ­¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fICMSIncremental\fR¤Ç»Ï¤Þ¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤¬Í­¸ú¤Ê¾ì¹ç¤Î¤ß¡¢Å¬ÍѤµ¤ì¤Þ¤¹¡£
+CMSコレクタã®å¢—分モードを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€2ã¤ä»¥ä¸‹ã®GCスレッドをæŒã¤æ§‹æˆã«ã®ã¿æœ‰åŠ¹ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fICMSIncremental\fRã§å§‹ã¾ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションã¯ã€ã“ã®ã‚ªãƒ—ションãŒæœ‰åŠ¹ãªå ´åˆã®ã¿ã€é©ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSIncrementalOffset=\fIpercent\fR
 .RS 4
-Áýʬ¥â¡¼¥É¤Î¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Ç´ü´ÖÆâ¤Ë±¦¤Ë°ÜÆ°¤¹¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥ª¥Õ¥»¥Ã¥È¤Ï0%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¥ª¥Õ¥»¥Ã¥È¤ò25%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+増分モードã®ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã‚’マイナー・コレクション間ã§æœŸé–“内ã«å³ã«ç§»å‹•ã™ã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚ªãƒ•ã‚»ãƒƒãƒˆã¯0%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’25%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1846,12 +1846,12 @@
 .PP
 \-XX:+CMSIncrementalPacing
 .RS 4
-JVM¤Î¼Â¹ÔÃæ¤Ë¼ý½¸¤µ¤ì¤¿Åý·×¤Ë´ð¤Å¤¤¤Æ¡¢Áýʬ¥â¡¼¥É¤Î¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¼«Æ°Ä´À°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Áýʬ¥â¡¼¥É¡¦¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¼«Æ°Ä´À°¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-CMSIncrementalPacing\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+JVMã®å®Ÿè¡Œä¸­ã«åŽé›†ã•ã‚ŒãŸçµ±è¨ˆã«åŸºã¥ã„ã¦ã€å¢—分モードã®ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®è‡ªå‹•èª¿æ•´ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚増分モード・デューティ・サイクルã®è‡ªå‹•èª¿æ•´ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-CMSIncrementalPacing\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSIncrementalSafetyFactor=\fIpercent\fR
 .RS 4
-¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò·×»»¤¹¤ëºÝ¤Ë¡¢Êݼé¤òÄɲ乤뤿¤á¤Ë»ÈÍѤµ¤ì¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢°ÂÁ´·¸¿ô¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢°ÂÁ´·¸¿ô¤ò5%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デューティ・サイクルを計算ã™ã‚‹éš›ã«ã€ä¿å®ˆã‚’追加ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€å®‰å…¨ä¿‚æ•°ã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€å®‰å…¨ä¿‚æ•°ã‚’5%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1866,9 +1866,9 @@
 .PP
 \-XX:CMSInitiatingOccupancyFraction=\fIpercent\fR
 .RS 4
-CMS¼ý½¸¥µ¥¤¥¯¥ë¤ò³«»Ï¤¹¤ë¸Å¤¤À¤Âå¤ÎÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\-1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£Éé¤ÎÃÍ(¥Ç¥Õ¥©¥ë¥È¤ò´Þ¤à)¤Ï¡¢\fI\-XX:CMSTriggerRatio\fR¤¬³«»ÏÀêͭΨ¤ÎÃͤòÄêµÁ¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+CMSåŽé›†ã‚µã‚¤ã‚¯ãƒ«ã‚’開始ã™ã‚‹å¤ã„世代ã®å æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルト値ã¯\-1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚è² ã®å€¤(デフォルトをå«ã‚€)ã¯ã€\fI\-XX:CMSTriggerRatio\fRãŒé–‹å§‹å æœ‰çŽ‡ã®å€¤ã‚’定義ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÀêͭΨ¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å æœ‰çŽ‡ã‚’20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1883,14 +1883,14 @@
 .PP
 \-XX:+CMSScavengeBeforeRemark
 .RS 4
-CMS¥³¥á¥ó¥È¡¦¥¹¥Æ¥Ã¥×¤ÎÁ°¤Ë¥¹¥«¥Ù¥ó¥¸¤Î»î¹Ô¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+CMSコメント・ステップã®å‰ã«ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã®è©¦è¡Œã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:CMSTriggerRatio=\fIpercent\fR
 .RS 4
-CMS¼ý½¸¥µ¥¤¥¯¥ë¤¬³«»Ï¤¹¤ëÁ°¤Ë³ä¤êÅö¤Æ¤é¤ì¤ë\fI\-XX:MinHeapFreeRatio\fR¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ëÃͤγä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ80%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+CMSåŽé›†ã‚µã‚¤ã‚¯ãƒ«ãŒé–‹å§‹ã™ã‚‹å‰ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã‚‹\fI\-XX:MinHeapFreeRatio\fRã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹å€¤ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルト値ã¯80%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÀêͭΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å æœ‰çŽ‡ã‚’75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1905,9 +1905,9 @@
 .PP
 \-XX:ConcGCThreads=\fIthreads\fR
 .RS 4
-ʹÔGC¤Ë»ÈÍѤµ¤ì¤ë¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢JVM¤Ë»ÈÍѤǤ­¤ëCPU¤Î¿ô¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+並行GCã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€JVMã«ä½¿ç”¨ã§ãã‚‹CPUã®æ•°ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢Ê¹ÔGC¤Î¥¹¥ì¥Ã¥É¿ô¤ò2¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ä¸¦è¡ŒGCã®ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã‚’2ã«è¨­å®šã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1922,24 +1922,24 @@
 .PP
 \-XX:+DisableExplicitGC
 .RS 4
-\fISystem\&.gc()\fR¤Î¸Æ½Ð¤·¤Î½èÍý¤ò̵¸ú¤Ë¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¤³¤ì¤Ï\fISystem\&.gc()\fR¤Ø¤Î¸Æ½Ð¤·¤¬½èÍý¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fISystem\&.gc()\fR¤Î¸Æ½Ð¤·¤Î½èÍý¤¬Ìµ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¡¢JVM¤ÏɬÍפ˱þ¤¸¤ÆGC¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fISystem\&.gc()\fRã®å‘¼å‡ºã—ã®å‡¦ç†ã‚’無効ã«ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã“ã‚Œã¯\fISystem\&.gc()\fRã¸ã®å‘¼å‡ºã—ãŒå‡¦ç†ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fISystem\&.gc()\fRã®å‘¼å‡ºã—ã®å‡¦ç†ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆã€JVMã¯å¿…è¦ã«å¿œã˜ã¦GCを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+ExplicitGCInvokesConcurrent
 .RS 4
-\fISystem\&.gc()\fR¥ê¥¯¥¨¥¹¥È¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Ê¹ÔGC¤Î¸Æ½Ð¤·¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¾ì¹ç¤Î¤ß¡¢Í­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fISystem\&.gc()\fRリクエストを使用ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸¦è¡ŒGCã®å‘¼å‡ºã—を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fI\-XX:+UseConcMarkSweepGC\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å ´åˆã®ã¿ã€æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses
 .RS 4
-\fISystem\&.gc()\fR¥ê¥¯¥¨¥¹¥È¤ò»ÈÍѤ·¡¢Ê¹ÔGC¥µ¥¤¥¯¥ëÃæ¤Ë¥¯¥é¥¹¤ò¥¢¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Ê¹ÔGC¤Î¸Æ½Ð¤·¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¾ì¹ç¤Î¤ß¡¢Í­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fISystem\&.gc()\fRリクエストを使用ã—ã€ä¸¦è¡ŒGCサイクル中ã«ã‚¯ãƒ©ã‚¹ã‚’アンロードã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸¦è¡ŒGCã®å‘¼å‡ºã—を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fI\-XX:+UseConcMarkSweepGC\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å ´åˆã®ã¿ã€æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:G1HeapRegionSize=\fIsize\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¥Õ¥¡¡¼¥¹¥È(G1)¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ëºÝ¤ËJava¥Ò¡¼¥×¤òºÙʬ²½¤¹¤ë¥ê¡¼¥¸¥ç¥ó¤Î¥µ¥¤¥º¤òÀßÄꤷ¤Þ¤¹¡£Ãͤˤϡ¢1MB¤«¤é32MB¤Þ¤Ç¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥ê¡¼¥¸¥ç¥ó¡¦¥µ¥¤¥º¤Ï¡¢¥Ò¡¼¥×¡¦¥µ¥¤¥º¤Ë´ð¤Å¤¤¤Æ¿Í´Ö¹©³ØŪ¤Ë·èÄꤵ¤ì¤Þ¤¹¡£
+ガベージファースト(G1)コレクタを使用ã™ã‚‹éš›ã«Javaヒープを細分化ã™ã‚‹ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã®ã‚µã‚¤ã‚ºã‚’設定ã—ã¾ã™ã€‚値ã«ã¯ã€1MBã‹ã‚‰32MBã¾ã§ã‚’指定ã§ãã¾ã™ã€‚デフォルトã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãƒ»ã‚µã‚¤ã‚ºã¯ã€ãƒ’ープ・サイズã«åŸºã¥ã„ã¦äººé–“工学的ã«æ±ºå®šã•ã‚Œã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÙʬ²½¤µ¤ì¤¿¥µ¥¤¥º¤ò16MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç´°åˆ†åŒ–ã•ã‚ŒãŸã‚µã‚¤ã‚ºã‚’16MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1954,14 +1954,14 @@
 .PP
 \-XX:+G1PrintHeapRegions
 .RS 4
-³ä¤êÅö¤Æ¤é¤ì¤¿¥ê¡¼¥¸¥ç¥ó¤ª¤è¤ÓG1¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤ÆºÆÍ׵ᤵ¤ì¤¿¤â¤Î¤Ë´Ø¤¹¤ë¾ðÊó¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+割り当ã¦ã‚‰ã‚ŒãŸãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãŠã‚ˆã³G1コレクタã«ã‚ˆã£ã¦å†è¦æ±‚ã•ã‚ŒãŸã‚‚ã®ã«é–¢ã™ã‚‹æƒ…å ±ã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:G1ReservePercent=\fIpercent\fR
 .RS 4
-G1¥³¥ì¥¯¥¿¤Î¾º³Ê¤¬¼ºÇÔ¤¹¤ë²ÄǽÀ­¤ò¸º¤é¤¹¤¿¤á¤Îfalse¤Î¾å¸Â¤È¤·¤ÆͽÌ󤵤줿¥Ò¡¼¥×¤Î³ä¹ç(0¤«¤é50¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+G1コレクタã®æ˜‡æ ¼ãŒå¤±æ•—ã™ã‚‹å¯èƒ½æ€§ã‚’減らã™ãŸã‚ã®falseã®ä¸Šé™ã¨ã—ã¦äºˆç´„ã•ã‚ŒãŸãƒ’ープã®å‰²åˆ(0ã‹ã‚‰50ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Í½Ì󤵤줿¥Ò¡¼¥×¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€äºˆç´„ã•ã‚ŒãŸãƒ’ープを20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1976,9 +1976,9 @@
 .PP
 \-XX:InitialHeapSize=\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢0¡¢¤Þ¤¿¤Ï1MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Î¤¤¤º¤ì¤«¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€0ã€ã¾ãŸã¯1MBより大ãã„1024ã®å€æ•°ã®ã„ãšã‚Œã‹ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ6MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦6MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1991,14 +1991,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò0¤ËÀßÄꤷ¤¿¾ì¹ç¡¢½é´ü¥µ¥¤¥º¤Ï¡¢¸Å¤¤À¤Âå¤È¼ã¤¤À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥µ¥¤¥º¤Î¹ç·×¤È¤·¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î¥µ¥¤¥º¤Ï¡¢\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを0ã«è¨­å®šã—ãŸå ´åˆã€åˆæœŸã‚µã‚¤ã‚ºã¯ã€å¤ã„世代ã¨è‹¥ã„世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚µã‚¤ã‚ºã®åˆè¨ˆã¨ã—ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ãƒ’ープã®ã‚µã‚¤ã‚ºã¯ã€\fI\-XX:NewSize\fRオプションを使用ã—ã¦è¨­å®šã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:InitialSurvivorRatio=\fIratio\fR
 .RS 4
-¥¹¥ë¡¼¥×¥Ã¥È¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤¬»ÈÍѤ¹¤ë¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤òÀßÄꤷ¤Þ¤¹(\fI\-XX:+UseParallelGC\fR¤ª¤è¤Ó/¤Þ¤¿¤Ï\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹)¡£\fI\-XX:+UseParallelGC\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¹¥ë¡¼¥×¥Ã¥È¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ÇŬ±þ¥µ¥¤¥º»ØÄê¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤·¤Þ¤¹¡£½é´üÃͤ«¤é»Ï¤á¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÆ°ºî¤Ë½¾¤Ã¤Æ¡¢¥µ¥Ð¥¤¥ÐÎΰ褬¥µ¥¤¥ºÊѹ¹¤µ¤ì¤Þ¤¹¡£(\fI\-XX:\-UseAdaptiveSizePolicy\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ)Ŭ±þ¥µ¥¤¥º»ØÄê¤ò̵¸ú¤Ë¤·¤¿¾ì¹ç¡¢\fI\-XX:SurvivorRatio\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹ÔÁ´ÂΤΥµ¥Ð¥¤¥ÐÎΰè¤Î¥µ¥¤¥º¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+スループット・ガベージ・コレクタãŒä½¿ç”¨ã™ã‚‹ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”を設定ã—ã¾ã™(\fI\-XX:+UseParallelGC\fRãŠã‚ˆã³/ã¾ãŸã¯\fI\-XX:+UseParallelOldGC\fRオプションã«ã‚ˆã£ã¦æœ‰åŠ¹ã«ãªã‚Šã¾ã™)。\fI\-XX:+UseParallelGC\fRオプションãŠã‚ˆã³\fI\-XX:+UseParallelOldGC\fRオプションを使用ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¹ãƒ«ãƒ¼ãƒ—ット・ガベージ・コレクタã§é©å¿œã‚µã‚¤ã‚ºæŒ‡å®šã‚’デフォルトã§æœ‰åŠ¹ã«ã—ã¾ã™ã€‚åˆæœŸå€¤ã‹ã‚‰å§‹ã‚ã¦ã€ã‚¢ãƒ—リケーションã®å‹•ä½œã«å¾“ã£ã¦ã€ã‚µãƒã‚¤ãƒé ˜åŸŸãŒã‚µã‚¤ã‚ºå¤‰æ›´ã•ã‚Œã¾ã™ã€‚(\fI\-XX:\-UseAdaptiveSizePolicy\fRオプションを使用ã—ã¦)é©å¿œã‚µã‚¤ã‚ºæŒ‡å®šã‚’無効ã«ã—ãŸå ´åˆã€\fI\-XX:SurvivorRatio\fRオプションを使用ã—ã¦ã€ã‚¢ãƒ—リケーションã®å®Ÿè¡Œå…¨ä½“ã®ã‚µãƒã‚¤ãƒé ˜åŸŸã®ã‚µã‚¤ã‚ºã‚’設定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¼¡¤Î¼°¤ò»ÈÍѤ·¤Æ¡¢¼ã¤¤À¤Âå¤Î¥µ¥¤¥º(Y)¤ª¤è¤Ó¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ(R)¤Ë´ð¤Å¤¤¤Æ¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º(S)¤ò·×»»¤Ç¤­¤Þ¤¹¡£
+次ã®å¼ã‚’使用ã—ã¦ã€è‹¥ã„世代ã®ã‚µã‚¤ã‚º(Y)ãŠã‚ˆã³ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”(R)ã«åŸºã¥ã„ã¦ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚º(S)を計算ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2009,11 +2009,11 @@
 .if n \{\
 .RE
 .\}
-Åù¼°Æâ¤Î2¤Ï¡¢2¤Ä¤Î¥µ¥Ð¥¤¥ÐÎΰè¤ò¼¨¤·¤Þ¤¹¡£¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤Ë»ØÄꤹ¤ëÃͤòÂ礭¤¯¤¹¤ë¤È¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¡£
+ç­‰å¼å†…ã®2ã¯ã€2ã¤ã®ã‚µãƒã‚¤ãƒé ˜åŸŸã‚’示ã—ã¾ã™ã€‚サãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã«æŒ‡å®šã™ã‚‹å€¤ã‚’大ããã™ã‚‹ã¨ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚ºã¯å°ã•ããªã‚Šã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤Ï8¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼ã¤¤À¤Âå¤ÎÎΰ襵¥¤¥º¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ(2MB)¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º¤Ï0\&.2MB¤Ë¤Ê¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã¯8ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚è‹¥ã„世代ã®é ˜åŸŸã‚µã‚¤ã‚ºã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤(2MB)を使用ã—ãŸå ´åˆã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚ºã¯0\&.2MBã«ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤ò4¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã‚’4ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2028,9 +2028,9 @@
 .PP
 \-XX:InitiatingHeapOccupancyPercent=\fIpercent\fR
 .RS 4
-ʹÔGC¥µ¥¤¥¯¥ë¤ò³«»Ï¤¹¤ë¥Ò¡¼¥×ÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢1¤Ä¤ÎÀ¤Âå¤Î¤ß(¤¿¤È¤¨¤ÐG1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ê¤É)¤Ç¤Ï¤Ê¤¯¡¢¥Ò¡¼¥×Á´ÂΤÎÀêÍ­¤Ë´ð¤Å¤¤¤ÆʹÔGC¥µ¥¤¥¯¥ë¤ò¥È¥ê¥¬¡¼¤¹¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£
+並行GCサイクルを開始ã™ã‚‹ãƒ’ープå æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€1ã¤ã®ä¸–代ã®ã¿(ãŸã¨ãˆã°G1ガベージ・コレクタãªã©)ã§ã¯ãªãã€ãƒ’ープ全体ã®å æœ‰ã«åŸºã¥ã„ã¦ä¸¦è¡ŒGCサイクルをトリガーã™ã‚‹ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢³«»ÏÃͤÏ45%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£ÃÍ0¤Ï¡¢GC¥µ¥¤¥¯¥ë¤¬Ää»ß¤·¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢³«»Ï¥Ò¡¼¥×ÀêͭΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デフォルトã§ã¯ã€é–‹å§‹å€¤ã¯45%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚値0ã¯ã€GCサイクルãŒåœæ­¢ã—ãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€é–‹å§‹ãƒ’ープå æœ‰çŽ‡ã‚’75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2045,9 +2045,9 @@
 .PP
 \-XX:MaxGCPauseMillis=\fItime\fR
 .RS 4
-ºÇÂçGCµÙ»ß»þ´Ö(¥ß¥êÉÃñ°Ì)¤Î¥¿¡¼¥²¥Ã¥È¤òÀßÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¥½¥Õ¥È¡¦¥´¡¼¥ë¤Î¤¿¤á¡¢JVM¤Ï¼Â¸½¤Î¤¿¤á¤ËºÇÁ±¤ÎÅØÎϤò¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢µÙ»ß»þ´Ö¤ÎºÇÂçÃͤϤ¢¤ê¤Þ¤»¤ó¡£
+最大GC休止時間(ミリ秒å˜ä½)ã®ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚’設定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã‚½ãƒ•ãƒˆãƒ»ã‚´ãƒ¼ãƒ«ã®ãŸã‚ã€JVMã¯å®Ÿç¾ã®ãŸã‚ã«æœ€å–„ã®åŠªåŠ›ã‚’ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ä¼‘止時間ã®æœ€å¤§å€¤ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇÂ祿¡¼¥²¥Ã¥ÈµÙ»ß»þ´Ö¤ò500¥ß¥êÉäËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€æœ€å¤§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¼‘止時間を500ミリ秒ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2062,9 +2062,9 @@
 .PP
 \-XX:MaxHeapSize=\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢2MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Ç¥×¥í¥¤¥á¥ó¥È¤Ç¤Ï¡¢\fI\-XX:InitialHeapSize\fR¤ª¤è¤Ó\fI\-XX:MaxHeapSize\fR¤ÏÄ̾ïƱ¤¸ÃͤËÀßÄꤵ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€2MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚サーãƒãƒ¼ãƒ»ãƒ‡ãƒ—ロイメントã§ã¯ã€\fI\-XX:InitialHeapSize\fRãŠã‚ˆã³\fI\-XX:MaxHeapSize\fRã¯é€šå¸¸åŒã˜å€¤ã«è¨­å®šã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Îµö²Ä¤µ¤ì¤ëºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ80MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®è¨±å¯ã•ã‚Œã‚‹æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦80MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2077,16 +2077,16 @@
 .if n \{\
 .RE
 .\}
-Oracle Solaris 7¤ª¤è¤ÓOracle Solaris 8 SPARC¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¤³¤ÎÃͤξå¸Â¤Ï¡¢¤ª¤è¤½4,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£Oracle Solaris 2\&.6¤ª¤è¤Óx86¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¾å¸Â¤Ï¡¢¤ª¤è¤½2,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£Linux¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¾å¸Â¤Ï¡¢¤ª¤è¤½2,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£
+Oracle Solaris 7ãŠã‚ˆã³Oracle Solaris 8 SPARCプラットフォームã®å ´åˆã®ã“ã®å€¤ã®ä¸Šé™ã¯ã€ãŠã‚ˆã4,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚Oracle Solaris 2\&.6ãŠã‚ˆã³x86プラットフォームã®å ´åˆã®ä¸Šé™ã¯ã€ãŠã‚ˆã2,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚Linuxプラットフォームã®å ´åˆã®ä¸Šé™ã¯ã€ãŠã‚ˆã2,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚
 .sp
-\fI\-XX:MaxHeapSize\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmx\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-XX:MaxHeapSize\fRオプションã¯\fI\-Xmx\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:MaxHeapFreeRatio=\fIpercent\fR
 .RS 4
-GC¥¤¥Ù¥ó¥È¸å¤Î¶õ¤­¥Ò¡¼¥×Îΰè¤Îµö²Ä¤µ¤ì¤Æ¤¤¤ëºÇÂç¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¶õ¤­¥Ò¡¼¥×Îΰ褬¤³¤ÎÃͤòĶ¤¨¤Æ³ÈÂ礷¤¿¾ì¹ç¡¢¤½¤Î¥Ò¡¼¥×¤Ï½Ì¾®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ70%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+GCイベント後ã®ç©ºãヒープ領域ã®è¨±å¯ã•ã‚Œã¦ã„る最大ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚空ãヒープ領域ãŒã“ã®å€¤ã‚’超ãˆã¦æ‹¡å¤§ã—ãŸå ´åˆã€ãã®ãƒ’ープã¯ç¸®å°ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯70%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¶õ¤­¥Ò¡¼¥×¤ÎºÇÂçÈæΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç©ºãヒープã®æœ€å¤§æ¯”率を75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2101,9 +2101,9 @@
 .PP
 \-XX:MaxMetaspaceSize=\fIsize\fR
 .RS 4
-¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿¤Ë³ä¤êÅö¤Æ¤ë¤³¤È¤¬¤Ç¤­¤ë¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤ÎºÇÂçÎ̤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥µ¥¤¥º¤ÏÀ©¸Â¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¿¥Ç¡¼¥¿¤ÎÎ̤ϡ¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¼«ÂΡ¢Â¾¤Î¼Â¹ÔÃ楢¥×¥ê¥±¡¼¥·¥ç¥ó¡¢¤ª¤è¤Ó¥·¥¹¥Æ¥à¤Ç»ÈÍѲÄǽ¤Ê¥á¥â¥ê¡¼¤ÎÎ̤ˤè¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+クラス・メタデータã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ãŒã§ãã‚‹ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®æœ€å¤§é‡ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚µã‚¤ã‚ºã¯åˆ¶é™ã•ã‚Œã¦ã„ã¾ã›ã‚“。アプリケーションã®ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®é‡ã¯ã€ã‚¢ãƒ—リケーション自体ã€ä»–ã®å®Ÿè¡Œä¸­ã‚¢ãƒ—リケーションã€ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ã§ä½¿ç”¨å¯èƒ½ãªãƒ¡ãƒ¢ãƒªãƒ¼ã®é‡ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿¤ÎºÇÂ祵¥¤¥º¤ò256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®æœ€å¤§ã‚µã‚¤ã‚ºã‚’256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2118,14 +2118,14 @@
 .PP
 \-XX:MaxNewSize=\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϿʹֹ©³ØŪ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚デフォルト値ã¯äººé–“工学的ã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:MaxTenuringThreshold=\fIthreshold\fR
 .RS 4
-Ŭ±þGC¥µ¥¤¥º»ØÄê¤Ç»ÈÍѤ¹¤ëºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤ÃͤòÀßÄꤷ¤Þ¤¹¡£ºÇÂçÃͤÏ15¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¥Ñ¥é¥ì¥ë(¥¹¥ë¡¼¥×¥Ã¥È)¥³¥ì¥¯¥¿¤Î¾ì¹ç¤Ï15¡¢CMS¥³¥ì¥¯¥¿¤Î¾ì¹ç¤Ï6¤Ç¤¹¡£
+é©å¿œGCサイズ指定ã§ä½¿ç”¨ã™ã‚‹æœ€å¤§æ®¿å ‚入りã—ãã„値を設定ã—ã¾ã™ã€‚最大値ã¯15ã§ã™ã€‚デフォルト値ã¯ã€ãƒ‘ラレル(スループット)コレクタã®å ´åˆã¯15ã€CMSコレクタã®å ´åˆã¯6ã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤Ãͤò10¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€æœ€å¤§æ®¿å ‚入りã—ãã„値を10ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2140,14 +2140,14 @@
 .PP
 \-XX:MetaspaceSize=\fIsize\fR
 .RS 4
-ºÇ½é¤ËĶ¤¨¤¿¤È¤­¤Ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤ò¥È¥ê¥¬¡¼¤¹¤ë¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿Îΰè¤Î¥µ¥¤¥º¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¤·¤­¤¤Ãͤϡ¢»ÈÍѤµ¤ì¤ë¥á¥¿¥Ç¡¼¥¿¤ÎÎ̤ˤè¤Ã¤ÆÁý²Ã¤Þ¤¿¤Ï¸º¾¯¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥µ¥¤¥º¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+最åˆã«è¶…ãˆãŸã¨ãã«ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’トリガーã™ã‚‹ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚¯ãƒ©ã‚¹ãƒ»ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿é ˜åŸŸã®ã‚µã‚¤ã‚ºã‚’設定ã—ã¾ã™ã€‚ã“ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®ã—ãã„値ã¯ã€ä½¿ç”¨ã•ã‚Œã‚‹ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®é‡ã«ã‚ˆã£ã¦å¢—加ã¾ãŸã¯æ¸›å°‘ã—ã¾ã™ã€‚デフォルトã®ã‚µã‚¤ã‚ºã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:MinHeapFreeRatio=\fIpercent\fR
 .RS 4
-GC¥¤¥Ù¥ó¥È¸å¤Î¶õ¤­¥Ò¡¼¥×Îΰè¤Îµö²Ä¤µ¤ì¤Æ¤¤¤ëºÇ¾®¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¶õ¤­¥Ò¡¼¥×Îΰ褬¤³¤ÎÃͤò²¼²ó¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥Ò¡¼¥×¤Ï³ÈÂ礷¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ40%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+GCイベント後ã®ç©ºãヒープ領域ã®è¨±å¯ã•ã‚Œã¦ã„る最å°ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚空ãヒープ領域ãŒã“ã®å€¤ã‚’下回ã£ãŸå ´åˆã€ãã®ãƒ’ープã¯æ‹¡å¤§ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯40%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¶õ¤­¥Ò¡¼¥×¤ÎºÇ¾®ÈæΨ¤ò25%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç©ºãヒープã®æœ€å°æ¯”率を25%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2162,7 +2162,7 @@
 .PP
 \-XX:NewRatio=\fIratio\fR
 .RS 4
-¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤È¸Å¤¤À¤Âå¤Î¥µ¥¤¥º¤È¤ÎÈæΨ¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï2¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤/¸Å¤¤¤ÎÈæΨ¤ò1¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¨å¤ã„世代ã®ã‚µã‚¤ã‚ºã¨ã®æ¯”率を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯2ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€è‹¥ã„/å¤ã„ã®æ¯”率を1ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2177,11 +2177,11 @@
 .PP
 \-XX:NewSize=\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×¤Î¼ã¤¤À¤Âå¥ê¡¼¥¸¥ç¥ó¤Ï¿·¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£GC¤Ï¡¢Â¾¤Î¥ê¡¼¥¸¥ç¥ó¤è¤ê¤³¤Î¥ê¡¼¥¸¥ç¥ó¤Ç¡¢¤è¤êÉÑÈˤ˼¹Ԥµ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤¬¾®¤µ¤¹¤®¤ë¾ì¹ç¡¢Â¿¿ô¤Î¥Þ¥¤¥Ê¡¼GC¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥µ¥¤¥º¤¬Â礭¤¹¤®¤ë¾ì¹ç¡¢¥Õ¥ëGC¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢´°Î»¤Þ¤Ç¤Ë»þ´Ö¤¬¤«¤«¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤Ï¡¢Á´ÂΤΥҡ¼¥×¡¦¥µ¥¤¥º¤ÎȾʬ¤«¤é4ʬ¤Î1¤Î´Ö¤Ë¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ヒープã®è‹¥ã„世代リージョンã¯æ–°ã—ã„オブジェクトã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚GCã¯ã€ä»–ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚ˆã‚Šã“ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã§ã€ã‚ˆã‚Šé »ç¹ã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºãŒå°ã•ã™ãŽã‚‹å ´åˆã€å¤šæ•°ã®ãƒžã‚¤ãƒŠãƒ¼GCãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚サイズãŒå¤§ãã™ãŽã‚‹å ´åˆã€ãƒ•ãƒ«GCã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ãŒã€å®Œäº†ã¾ã§ã«æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¯ã€å…¨ä½“ã®ãƒ’ープ・サイズã®åŠåˆ†ã‹ã‚‰4分ã®1ã®é–“ã«ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤À¤Âå¤Î½é´ü¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€è‹¥ã„世代ã®åˆæœŸã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2194,14 +2194,14 @@
 .if n \{\
 .RE
 .\}
-\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmn\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-XX:NewSize\fRオプションã¯\fI\-Xmn\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:ParallelGCThreads=\fIthreads\fR
 .RS 4
-¼ã¤¤À¤Âå¤È¸Å¤¤À¤Âå¤Ç¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Ë»ÈÍѤ¹¤ë¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢JVM¤Ë»ÈÍѤǤ­¤ëCPU¤Î¿ô¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+è‹¥ã„世代ã¨å¤ã„世代ã§ãƒ‘ラレル・ガベージ・コレクションã«ä½¿ç”¨ã™ã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€JVMã«ä½¿ç”¨ã§ãã‚‹CPUã®æ•°ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¥Ñ¥é¥ì¥ëGC¤Î¥¹¥ì¥Ã¥É¿ô¤ò2¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ãƒ‘ラレルGCã®ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã‚’2ã«è¨­å®šã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2216,52 +2216,52 @@
 .PP
 \-XX:+ParallelRefProcEnabled
 .RS 4
-¥Ñ¥é¥ì¥ë»²¾È½èÍý¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+パラレルå‚照処ç†ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintAdaptiveSizePolicy
 .RS 4
-Ŭ±þÀ¤Â奵¥¤¥º»ØÄê¤Ë´Ø¤¹¤ë¾ðÊó¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+é©å¿œä¸–代サイズ指定ã«é–¢ã™ã‚‹æƒ…å ±ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGC
 .RS 4
-GC¤´¤È¤Î¥á¥Ã¥»¡¼¥¸¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCApplicationConcurrentTime
 .RS 4
-ºÇ¸å¤ÎµÙ»ß(¤¿¤È¤¨¤ÐGCµÙ»ß¤Ê¤É)°Ê¹ß¤Ë·Ð²á¤·¤¿»þ´Ö¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+最後ã®ä¼‘æ­¢(ãŸã¨ãˆã°GC休止ãªã©)以é™ã«çµŒéŽã—ãŸæ™‚é–“ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCApplicationStoppedTime
 .RS 4
-µÙ»ß(¤¿¤È¤¨¤ÐGCµÙ»ß¤Ê¤É)¤¬·Ñ³¤·¤¿»þ´Ö¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+休止(ãŸã¨ãˆã°GC休止ãªã©)ãŒç¶™ç¶šã—ãŸæ™‚é–“ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX+PrintGCDateStamp
 .RS 4
-GC¤´¤È¤ÎÆüÉÕ¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®æ—¥ä»˜ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCDetails
 .RS 4
-GC¤´¤È¤Î¾ÜºÙ¥á¥Ã¥»¡¼¥¸¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®è©³ç´°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCTaskTimeStamps
 .RS 4
-¸Ä¡¹¤ÎGC¥ï¡¼¥«¡¼¡¦¥¹¥ì¥Ã¥É¡¦¥¿¥¹¥¯¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+個々ã®GCワーカー・スレッド・タスクã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCTimeStamp
 .RS 4
-GC¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintTenuringDistribution
 .RS 4
-ÅÂƲÆþ¤ê´ü´Ö¾ðÊó¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¼¡¤Ë¡¢½ÐÎϤÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+殿堂入り期間情報ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚次ã«ã€å‡ºåŠ›ã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2276,23 +2276,23 @@
 .if n \{\
 .RE
 .\}
-´ü´Ö1¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢ºÇ¤â¼ã¤¤¥µ¥Ð¥¤¥Ð¤Ç¤¹(Á°¤Î¥¹¥«¥Ù¥ó¥¸¤Î¸å¤ËºîÀ®¤µ¤ì¡¢ºÇ¿·¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¡¢EdenÎΰ褫¤é¥µ¥Ð¥¤¥ÐÎΰè¤Ë°ÜÆ°¤·¤Þ¤·¤¿)¡£´ü´Ö2¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢2¤Ä¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¤Þ¤¹(2ÈÖÌܤΥ¹¥«¥Ù¥ó¥¸Ãæ¤Ë¡¢¤¢¤ë¥µ¥Ð¥¤¥ÐÎΰ褫¤é¼¡¤ÎÎΰè¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤·¤¿)¡£¤³¤Î¤è¤¦¤Ë³¤­¤Þ¤¹¡£
+期間1オブジェクトã¯ã€æœ€ã‚‚è‹¥ã„サãƒã‚¤ãƒã§ã™(å‰ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã®å¾Œã«ä½œæˆã•ã‚Œã€æœ€æ–°ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã€Eden領域ã‹ã‚‰ã‚µãƒã‚¤ãƒé ˜åŸŸã«ç§»å‹•ã—ã¾ã—ãŸ)。期間2オブジェクトã¯ã€2ã¤ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã¾ã™(2番目ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ä¸­ã«ã€ã‚るサãƒã‚¤ãƒé ˜åŸŸã‹ã‚‰æ¬¡ã®é ˜åŸŸã«ã‚³ãƒ”ーã•ã‚Œã¾ã—ãŸ)。ã“ã®ã‚ˆã†ã«ç¶šãã¾ã™ã€‚
 .sp
-Á°½Ò¤ÎÎã¤Ç¤Ï¡¢28,992,024¥Ð¥¤¥È¤¬1¤Ä¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¡¢EdenÎΰ褫¤é¥µ¥Ð¥¤¥ÐÎΰè¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤·¤¿¡£1,366,864¥Ð¥¤¥È¤Ï´ü´Ö2¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤É¤Ë¤è¤êÀêÍ­¤µ¤ì¤Æ¤¤¤Þ¤¹¡£³Æ¹Ô¤Î3ÈÖÌܤÎÃͤϡ¢´ü´Ön°Ê²¼¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ÎÎßÀÑ¥µ¥¤¥º¤Ç¤¹¡£
+å‰è¿°ã®ä¾‹ã§ã¯ã€28,992,024ãƒã‚¤ãƒˆãŒ1ã¤ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã€Eden領域ã‹ã‚‰ã‚µãƒã‚¤ãƒé ˜åŸŸã«ã‚³ãƒ”ーã•ã‚Œã¾ã—ãŸã€‚1,366,864ãƒã‚¤ãƒˆã¯æœŸé–“2オブジェクトãªã©ã«ã‚ˆã‚Šå æœ‰ã•ã‚Œã¦ã„ã¾ã™ã€‚å„è¡Œã®3番目ã®å€¤ã¯ã€æœŸé–“n以下ã®ã‚ªãƒ–ジェクトã®ç´¯ç©ã‚µã‚¤ã‚ºã§ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+ScavengeBeforeFullGC
 .RS 4
-¤½¤ì¤¾¤ì¤Î¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤ÎGC¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤Î¥¹¥«¥Ù¥ó¥¸¤ò¹Ô¤¦¤È¡¢¸Å¤¤À¤ÂåÎΰ褫¤é¼ã¤¤À¤ÂåÎΰè¤Ø¤Î¥¢¥¯¥»¥¹¤¬²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¿ô¤ò¸º¤é¤¹¤³¤È¤¬¤Ç¤­¤ë¤¿¤á¡¢¤³¤ì¤ò̵¸ú¤Ë\fI¤·¤Ê¤¤\fR¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£³Æ¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤ÎGC¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-ScavengeBeforeFullGC\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+ãã‚Œãžã‚Œã®ãƒ•ãƒ«GCã®å‰ã«è‹¥ã„世代ã®GCを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚フルGCã®å‰ã«è‹¥ã„世代ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã‚’è¡Œã†ã¨ã€å¤ã„世代領域ã‹ã‚‰è‹¥ã„世代領域ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒå¯èƒ½ãªã‚ªãƒ–ジェクトã®æ•°ã‚’減らã™ã“ã¨ãŒã§ãã‚‹ãŸã‚ã€ã“れを無効ã«\fIã—ãªã„\fRã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚å„フルGCã®å‰ã«è‹¥ã„世代ã®GCを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-ScavengeBeforeFullGC\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:SoftRefLRUPolicyMSPerMB=\fItime\fR
 .RS 4
-¥½¥Õ¥È¡¦¥¢¥¯¥»¥¹¤¬²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤¬ºÇ¸å¤Ë»²¾È¤µ¤ì¤Æ¤«¤é¥Ò¡¼¥×¾å¤Ç¥¢¥¯¥Æ¥£¥Ö¤Ê¤Þ¤Þ¤Ë¤Ê¤Ã¤Æ¤¤¤ë»þ´Ö(¥ß¥êÉÃñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¥Ò¡¼¥×Æâ¤Î¶õ¤­¥á¥¬¥Ð¥¤¥ÈÅö¤¿¤ê¤Ç1Éäθ³´ü´Ö¤Ç¤¹¡£\fI\-XX:SoftRefLRUPolicyMSPerMB\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¸½ºß¤Î¥Ò¡¼¥×¡¦¥µ¥¤¥º(Java HotSpot Client VMÍÑ)¤Þ¤¿¤ÏºÇÂç²Äǽ¥Ò¡¼¥×¡¦¥µ¥¤¥º(Java HotSpot Server VMÍÑ)¤Î1¥á¥¬¥Ð¥¤¥ÈÅö¤¿¤ê¤Î¥ß¥êÉäòɽ¤¹À°¿ôÃͤò¼õ¤±Æþ¤ì¤Þ¤¹¡£¤³¤Î°ã¤¤¤Ï¡¢Client VM¤Ï¡¢¥Ò¡¼¥×¤òÂ礭¤¯¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥½¥Õ¥È»²¾È¤ò¥Õ¥é¥Ã¥·¥å¤¹¤ë·¹¸þ¤¬¤¢¤ë¤Î¤ËÂФ·¡¢Server VM¤Ï¡¢¥½¥Õ¥È»²¾È¤ò¥Õ¥é¥Ã¥·¥å¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Ò¡¼¥×¤òÂ礭¤¯¤¹¤ë·¹¸þ¤¬¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¡¢\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¥½¥Õ¥È»²¾È¤¬¤É¤Î¤¯¤é¤¤¿×®¤Ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤µ¤ì¤ë¤«¤Ë½ÅÍפʱƶÁ¤òµÚ¤Ü¤·¤Þ¤¹¡£
+ソフト・アクセスãŒå¯èƒ½ãªã‚ªãƒ–ジェクトãŒæœ€å¾Œã«å‚ç…§ã•ã‚Œã¦ã‹ã‚‰ãƒ’ープ上ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã¾ã¾ã«ãªã£ã¦ã„る時間(ミリ秒å˜ä½)を設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€ãƒ’ープ内ã®ç©ºãメガãƒã‚¤ãƒˆå½“ãŸã‚Šã§1秒ã®å­˜ç¶šæœŸé–“ã§ã™ã€‚\fI\-XX:SoftRefLRUPolicyMSPerMB\fRオプションã¯ã€ç¾åœ¨ã®ãƒ’ープ・サイズ(Java HotSpot Client VM用)ã¾ãŸã¯æœ€å¤§å¯èƒ½ãƒ’ープ・サイズ(Java HotSpot Server VM用)ã®1メガãƒã‚¤ãƒˆå½“ãŸã‚Šã®ãƒŸãƒªç§’を表ã™æ•´æ•°å€¤ã‚’å—ã‘入れã¾ã™ã€‚ã“ã®é•ã„ã¯ã€Client VMã¯ã€ãƒ’ープを大ããã™ã‚‹ã®ã§ã¯ãªãã€ã‚½ãƒ•ãƒˆå‚照をフラッシュã™ã‚‹å‚¾å‘ãŒã‚ã‚‹ã®ã«å¯¾ã—ã€Server VMã¯ã€ã‚½ãƒ•ãƒˆå‚照をフラッシュã™ã‚‹ã®ã§ã¯ãªãã€ãƒ’ープを大ããã™ã‚‹å‚¾å‘ãŒã‚ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚後者ã®å ´åˆã€\fI\-Xmx\fRオプションã®å€¤ã¯ã€ã‚½ãƒ•ãƒˆå‚ç…§ãŒã©ã®ãらã„迅速ã«ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã•ã‚Œã‚‹ã‹ã«é‡è¦ãªå½±éŸ¿ã‚’åŠã¼ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Ãͤò2\&.5ÉäËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å€¤ã‚’2\&.5秒ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2307,7 +2307,7 @@
 .PP
 \-XX:SurvivorRatio=\fIratio\fR
 .RS 4
-EdenÎΰè¤Î¥µ¥¤¥º¤È¥µ¥Ð¥¤¥ÐÎΰè¤Î¥µ¥¤¥º¤È¤ÎÈæΨ¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï8¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢Eden/¥µ¥Ð¥¤¥ÐÎΰè¤ÎÈæΨ¤ò4¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+Eden領域ã®ã‚µã‚¤ã‚ºã¨ã‚µãƒã‚¤ãƒé ˜åŸŸã®ã‚µã‚¤ã‚ºã¨ã®æ¯”率を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯8ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€Eden/サãƒã‚¤ãƒé ˜åŸŸã®æ¯”率を4ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2322,9 +2322,9 @@
 .PP
 \-XX:TargetSurvivorRatio=\fIpercent\fR
 .RS 4
-¼ã¤¤¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸å¤Ë»ÈÍѤµ¤ì¤ë¥µ¥Ð¥¤¥ÐÎΰè¤ÎÌÜŪ¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï50%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+è‹¥ã„ガベージ・コレクションã®å¾Œã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚µãƒã‚¤ãƒé ˜åŸŸã®ç›®çš„ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯50%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¤Î¥µ¥Ð¥¤¥ÐÎΰè¤ÎÈæΨ¤ò30%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã®ã‚µãƒã‚¤ãƒé ˜åŸŸã®æ¯”率を30%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2339,9 +2339,9 @@
 .PP
 \-XX:TLABSize=\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ð¥Ã¥Õ¥¡(TLAB)¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬0¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢JVM¤Ç¤Ï½é´ü¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+スレッド・ローカルãªå‰²å½“ã¦ãƒãƒƒãƒ•ã‚¡(TLAB)ã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒ0ã«è¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€JVMã§ã¯åˆæœŸã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢TLAB¤Î½é´ü¥µ¥¤¥º¤ò512KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€TLABã®åˆæœŸã‚µã‚¤ã‚ºã‚’512KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2356,102 +2356,102 @@
 .PP
 \-XX:+UseAdaptiveSizePolicy
 .RS 4
-Ŭ±þÀ¤Â奵¥¤¥º»ØÄê¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Å¬±þÀ¤Â奵¥¤¥º»ØÄê¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseAdaptiveSizePolicy\fR¤ò»ØÄꤷ¡¢¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤Î¥µ¥¤¥º¤òÌÀ¼¨Åª¤ËÀßÄꤷ¤Þ¤¹(\fI\-XX:SurvivorRatio\fR¥ª¥×¥·¥ç¥ó¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤)¡£
+é©å¿œä¸–代サイズ指定ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚é©å¿œä¸–代サイズ指定を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseAdaptiveSizePolicy\fRを指定ã—ã€ãƒ¡ãƒ¢ãƒªãƒ¼å‰²å½“ã¦ãƒ—ールã®ã‚µã‚¤ã‚ºã‚’明示的ã«è¨­å®šã—ã¾ã™(\fI\-XX:SurvivorRatio\fRオプションをå‚考ã«ã—ã¦ãã ã•ã„)。
 .RE
 .PP
 \-XX:+UseCMSInitiatingOccupancyOnly
 .RS 4
-CMS¥³¥ì¥¯¥¿¤Î³«»Ï¤Î¤¿¤á¤ÎÍ£°ì¤Î´ð½à¤È¤·¤Æ¤ÎÀêÍ­ÃͤλÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢Â¾¤Î´ð½à¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+CMSコレクタã®é–‹å§‹ã®ãŸã‚ã®å”¯ä¸€ã®åŸºæº–ã¨ã—ã¦ã®å æœ‰å€¤ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ä»–ã®åŸºæº–ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseConcMarkSweepGC
 .RS 4
-¸Å¤¤À¤Âå¤Ø¤ÎCMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÂÔµ¡»þ´Ö¤ÎÍ×·ï¤ò¡¢¥¹¥ë¡¼¥×¥Ã¥È(\fI\-XX:+UseParallelGC\fR)¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤ÆËþ¤¿¤¹¤³¤È¤¬¤Ç¤­¤Ê¤¤¾ì¹ç¡¢CMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£G1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(\fI\-XX:+UseG1GC\fR)¤ÏÊ̤ÎÂåÂؤȤʤê¤Þ¤¹¡£
+å¤ã„世代ã¸ã®CMSガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚アプリケーションã®å¾…機時間ã®è¦ä»¶ã‚’ã€ã‚¹ãƒ«ãƒ¼ãƒ—ット(\fI\-XX:+UseParallelGC\fR)ガベージ・コレクタã«ã‚ˆã£ã¦æº€ãŸã™ã“ã¨ãŒã§ããªã„å ´åˆã€CMSガベージ・コレクタを使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚G1ガベージ・コレクタ(\fI\-XX:+UseG1GC\fR)ã¯åˆ¥ã®ä»£æ›¿ã¨ãªã‚Šã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fI\-XX:+UseParNewGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€\fI\-XX:+UseParNewGC\fRオプションãŒè‡ªå‹•çš„ã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseG1GC
 .RS 4
-G1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ï¥µ¡¼¥Ð¡¼·Á¼°¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ç¡¢ÂçÎ̤ÎRAM¤ò»ý¤Ä¥Þ¥ë¥Á¥×¥í¥»¥Ã¥µ¡¦¥Þ¥·¥ó¤òÂоݤȤ·¤Æ¤¤¤Þ¤¹¡£¹â¤¤³ÎΨ¤ÇGCµÙ»ß»þ´Ö¤ÎÌÜɸ¤òãÀ®¤·¡¢Æ±»þ¤ËŬÀڤʥ¹¥ë¡¼¥×¥Ã¥È¤â°Ý»ý¤·¤Þ¤¹¡£G1¥³¥ì¥¯¥¿¤Ï¡¢GCÂÔµ¡»þ´Ö¤Î¸ÂÄꤵ¤ì¤¿Í×·ï(°ÂÄꤷ¤¿Í½Â¬²Äǽ¤Ê0\&.5ÉÃ̤Ëþ¤ÎµÙ»ß»þ´Ö)¤ò»ý¤Ä¡¢Â礭¤¤¥Ò¡¼¥×(Ìó6GB°Ê¾å¤Î¥µ¥¤¥º)¤¬É¬Íפʥ¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¿ä¾©¤µ¤ì¤Þ¤¹¡£
+G1ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ã‚µãƒ¼ãƒãƒ¼å½¢å¼ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ã§ã€å¤§é‡ã®RAMã‚’æŒã¤ãƒžãƒ«ãƒãƒ—ロセッサ・マシンを対象ã¨ã—ã¦ã„ã¾ã™ã€‚高ã„確率ã§GC休止時間ã®ç›®æ¨™ã‚’é”æˆã—ã€åŒæ™‚ã«é©åˆ‡ãªã‚¹ãƒ«ãƒ¼ãƒ—ットも維æŒã—ã¾ã™ã€‚G1コレクタã¯ã€GC待機時間ã®é™å®šã•ã‚ŒãŸè¦ä»¶(安定ã—ãŸäºˆæ¸¬å¯èƒ½ãª0\&.5秒未満ã®ä¼‘止時間)ã‚’æŒã¤ã€å¤§ãã„ヒープ(ç´„6GB以上ã®ã‚µã‚¤ã‚º)ãŒå¿…è¦ãªã‚¢ãƒ—リケーションã«æŽ¨å¥¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseGCOverheadLimit
 .RS 4
-\fIOutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤ë¤Þ¤Ç¤Ë¡¢GC¤ÇJVM¤Ë¤è¤Ã¤ÆÍפ·¤¿»þ´Ö¤Î³ä¹ç¤òÀ©¸Â¤¹¤ë¥Ý¥ê¥·¡¼¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Ë¹ç·×»þ´Ö¤Î98%¤è¤ê¿¤¯Èñ¤ä¤µ¤ì¡¢¥Ò¡¼¥×¤Î¥ê¥«¥Ð¥ê¤¬2%̤Ëþ¤Ç¤¢¤ë¾ì¹ç¡¢¥Ñ¥é¥ì¥ëGC¤Ë¤è¤Ã¤Æ\fIOutOfMemoryError\fR¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£¥Ò¡¼¥×¤¬¾®¤µ¤¤¾ì¹ç¡¢¤³¤Îµ¡Ç½¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬Ä¹´ü´Ö¤Û¤È¤ó¤É¤Þ¤¿¤Ï¤Þ¤Ã¤¿¤¯¿ÊĽ¤Ê¤¯¼Â¹Ô¤·¤Æ¤¤¤ë¾õÂÖ¤ò²óÈò¤¹¤ë¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseGCOverheadLimit\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIOutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã‚‹ã¾ã§ã«ã€GCã§JVMã«ã‚ˆã£ã¦è¦ã—ãŸæ™‚é–“ã®å‰²åˆã‚’制é™ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã«åˆè¨ˆæ™‚é–“ã®98%より多ã費やã•ã‚Œã€ãƒ’ープã®ãƒªã‚«ãƒãƒªãŒ2%未満ã§ã‚ã‚‹å ´åˆã€ãƒ‘ラレルGCã«ã‚ˆã£ã¦\fIOutOfMemoryError\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚ヒープãŒå°ã•ã„å ´åˆã€ã“ã®æ©Ÿèƒ½ã¯ã€ã‚¢ãƒ—リケーションãŒé•·æœŸé–“ã»ã¨ã‚“ã©ã¾ãŸã¯ã¾ã£ãŸã進æ—ãªã実行ã—ã¦ã„る状態を回é¿ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseGCOverheadLimit\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseNUMA
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Çû¤¤ÂÔµ¡»þ´Ö¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤòÁý²Ã¤µ¤»¤ë¤³¤È¤Ç¡¢ÉԶѰì¤Ê¥á¥â¥ê¡¼¡¦¥¢¡¼¥­¥Æ¥¯¥Á¥ã(NUMA)¤ò»ÈÍѤ·¤¿¥Þ¥·¥ó¾å¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹ºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢NUMA¤ËÂФ¹¤ëºÇŬ²½¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(\fI\-XX:+UseParallelGC\fR)¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤Î¤ß»ÈÍѲÄǽ¤Ç¤¹¡£
+アプリケーションã§çŸ­ã„待機時間ã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’増加ã•ã›ã‚‹ã“ã¨ã§ã€ä¸å‡ä¸€ãªãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ã‚¢ãƒ¼ã‚­ãƒ†ã‚¯ãƒãƒ£(NUMA)を使用ã—ãŸãƒžã‚·ãƒ³ä¸Šã®ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンス最é©åŒ–を有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€NUMAã«å¯¾ã™ã‚‹æœ€é©åŒ–ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‘ラレル・ガベージ・コレクタ(\fI\-XX:+UseParallelGC\fR)ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã®ã¿ä½¿ç”¨å¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-XX:+UseParallelGC
 .RS 4
-Ê£¿ô¤Î¥×¥í¥»¥Ã¥µ¤òÍøÍѤ·¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¡¢¥Ñ¥é¥ì¥ë¡¦¥¹¥«¥Ù¥ó¥¸¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(¥¹¥ë¡¼¥×¥Ã¥È¡¦¥³¥ì¥¯¥¿¤È¤â¸Æ¤Ð¤ì¤ë)¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+複数ã®ãƒ—ロセッサを利用ã—ã¦ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ã€ãƒ‘ラレル・スカベンジ・ガベージ・コレクタ(スループット・コレクタã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤ì¤òÍ­¸ú¤Ë¤·¤¿¾ì¹ç¡¢ÌÀ¼¨Åª¤Ë̵¸ú¤Ë¤·¤Ê¤¤¤«¤®¤ê¡¢\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚ã“れを有効ã«ã—ãŸå ´åˆã€æ˜Žç¤ºçš„ã«ç„¡åŠ¹ã«ã—ãªã„ã‹ãŽã‚Šã€\fI\-XX:+UseParallelOldGC\fRオプションãŒè‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseParallelOldGC
 .RS 4
-¥Õ¥ëGC¤Ø¤Î¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£¤³¤ì¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fI\-XX:+UseParallelGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+フルGCã¸ã®ãƒ‘ラレル・ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚ã“れを有効ã«ã™ã‚‹ã¨ã€\fI\-XX:+UseParallelGC\fRオプションãŒè‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseParNewGC
 .RS 4
-¼ã¤¤À¤Âå¤Ç¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ø¤Î¥Ñ¥é¥ì¥ë¡¦¥¹¥ì¥Ã¥É¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢¤³¤ì¤Ï¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+è‹¥ã„世代ã§ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã¸ã®ãƒ‘ラレル・スレッドã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚\fI\-XX:+UseConcMarkSweepGC\fRオプションを設定ã™ã‚‹ã¨ã€ã“ã‚Œã¯è‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseSerialGC
 .RS 4
-¥·¥ê¥¢¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤«¤éÆÃÊ̤ʵ¡Ç½¤òɬÍפȤ·¤Ê¤¤¡¢¾®µ¬ÌϤÇñ½ã¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¾ì¹ç¤Ë¤Ï¡¢¤³¤ì¤Ï°ìÈ̤˺ÇŬ¤ÊÁªÂò¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+シリアル・ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ガベージ・コレクションã‹ã‚‰ç‰¹åˆ¥ãªæ©Ÿèƒ½ã‚’å¿…è¦ã¨ã—ãªã„ã€å°è¦æ¨¡ã§å˜ç´”ãªã‚¢ãƒ—リケーションã®å ´åˆã«ã¯ã€ã“ã‚Œã¯ä¸€èˆ¬ã«æœ€é©ãªé¸æŠžã§ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseTLAB
 .RS 4
-¼ã¤¤À¤Âå¤ÎÎΰè¤Ç¤Î¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ö¥í¥Ã¥¯(TLAB)¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£TLAB¤Î»ÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseTLAB\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+è‹¥ã„世代ã®é ˜åŸŸã§ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ­ãƒ¼ã‚«ãƒ«ãªå‰²å½“ã¦ãƒ–ロック(TLAB)ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚TLABã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseTLAB\fRを指定ã—ã¾ã™ã€‚
 .RE
-.SS "Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó"
+.SS "éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ë¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢°Ê¹ß¤ÏÉÔÍפȤߤʤµ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã«ã¯å«ã¾ã‚Œã¦ã„ã¾ã—ãŸãŒã€ä»¥é™ã¯ä¸è¦ã¨ã¿ãªã•ã‚Œã¦ã„ã¾ã™ã€‚
 .PP
 \-Xrun\fIlibname\fR
 .RS 4
-»ØÄꤷ¤¿¥Ç¥Ð¥Ã¥°/¥×¥í¥Õ¥¡¥¤¥ë¤Î¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-agentlib\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+指定ã—ãŸãƒ‡ãƒãƒƒã‚°/プロファイルã®ãƒ©ã‚¤ãƒ–ラリをロードã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-agentlib\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:CMSInitiatingPermOccupancyFraction=\fIpercent\fR
 .RS 4
-GC¤ò³«»Ï¤¹¤ë±Êµ×À¤ÂåÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤Ç¤ÏÈó¿ä¾©¤Ç¡¢¤½¤ì¤ËÂå¤ï¤ë¤â¤Î¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+GCを開始ã™ã‚‹æ°¸ä¹…世代å æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã§ã¯éžæŽ¨å¥¨ã§ã€ãã‚Œã«ä»£ã‚ã‚‹ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-XX:MaxPermSize=\fIsize\fR
 .RS 4
-±Êµ×À¤ÂåÎΰè¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢JDK 8¤ÇÈó¿ä¾©¤Ë¤Ê¤ê¡¢\fI\-XX:MaxMetaspaceSize\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+永久世代領域ã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€JDK 8ã§éžæŽ¨å¥¨ã«ãªã‚Šã€\fI\-XX:MaxMetaspaceSize\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:PermSize=\fIsize\fR
 .RS 4
-Ķ¤¨¤¿¾ì¹ç¤Ë¤Ï¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤ò¥È¥ê¥¬¡¼¤¹¤ë¡¢±Êµ×À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿Îΰè(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢JDK 8¤ÇÈó¿ä¾©¤Ë¤Ê¤ê¡¢\fI\-XX:MetaspaceSize\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+超ãˆãŸå ´åˆã«ã¯ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’トリガーã™ã‚‹ã€æ°¸ä¹…世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸé ˜åŸŸ(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€JDK 8ã§éžæŽ¨å¥¨ã«ãªã‚Šã€\fI\-XX:MetaspaceSize\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:+UseSplitVerifier
 .RS 4
-¸¡¾Ú¥×¥í¥»¥¹¤Îʬ³ä¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¸¡¾Ú¤Ï¡¢¥¿¥¤¥×»²¾È(¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼Â¹Ô)¤È¡¢¥¿¥¤¥×¡¦¥Á¥§¥Ã¥¯(JVM¥é¥ó¥¿¥¤¥à¤Ë¤è¤Ã¤Æ¼Â¹Ô)¤Î2¤Ä¤Î¥Õ¥§¡¼¥º¤Ëʬ³ä¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤ÇÈó¿ä¾©¤È¤Ê¤ê¡¢¸¡¾Ú¤Ï¥Ç¥Õ¥©¥ë¥È¤Çʬ³ä¤µ¤ì¡¢Ìµ¸ú¤Ë¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+検証プロセスã®åˆ†å‰²ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æ¤œè¨¼ã¯ã€ã‚¿ã‚¤ãƒ—å‚ç…§(コンパイラã«ã‚ˆã£ã¦å®Ÿè¡Œ)ã¨ã€ã‚¿ã‚¤ãƒ—・ãƒã‚§ãƒƒã‚¯(JVMランタイムã«ã‚ˆã£ã¦å®Ÿè¡Œ)ã®2ã¤ã®ãƒ•ã‚§ãƒ¼ã‚ºã«åˆ†å‰²ã•ã‚Œã¦ã„ã¾ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã§éžæŽ¨å¥¨ã¨ãªã‚Šã€æ¤œè¨¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§åˆ†å‰²ã•ã‚Œã€ç„¡åŠ¹ã«ã™ã‚‹æ–¹æ³•ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseStringCache
 .RS 4
-°ìÈ̤˳ä¤êÅö¤Æ¤é¤ì¤¿Ê¸»úÎó¤Î¥­¥ã¥Ã¥·¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤«¤éºï½ü¤µ¤ì¡¢¤½¤ì¤ËÂå¤ï¤ë¤â¤Î¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+一般ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸæ–‡å­—列ã®ã‚­ãƒ£ãƒƒã‚·ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã‹ã‚‰å‰Šé™¤ã•ã‚Œã€ãã‚Œã«ä»£ã‚ã‚‹ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
-.SH "¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥Á¥å¡¼¥Ë¥ó¥°¤ÎÎã"
+.SH "パフォーマンス・ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ã®ä¾‹"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ë¡¼¥×¥Ã¥È¤ÎºÇŬ²½¤Þ¤¿¤Ï¥ì¥¹¥Ý¥ó¥¹»þ´Ö¤Îû½Ì²½¤Î¤¤¤º¤ì¤«¤ò¹Ô¤¦¤¿¤á¤Î¡¢»î¸³Åª¤Ê¥Á¥å¡¼¥Ë¥ó¥°¡¦¥Õ¥é¥°¤Î»ÈÍÑÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ«ãƒ¼ãƒ—ットã®æœ€é©åŒ–ã¾ãŸã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹æ™‚é–“ã®çŸ­ç¸®åŒ–ã®ã„ãšã‚Œã‹ã‚’è¡Œã†ãŸã‚ã®ã€è©¦é¨“çš„ãªãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ãƒ»ãƒ•ãƒ©ã‚°ã®ä½¿ç”¨æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ¥¹¥ë¡¼¥×¥Ã¥È¤ò¸þ¾å¤¹¤ë¤¿¤á¤Î¥Á¥å¡¼¥Ë¥ó¥°
+\fBExample 1\fR, スループットをå‘上ã™ã‚‹ãŸã‚ã®ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°
 .RS 4
 .sp
 .if n \{\
@@ -2465,7 +2465,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥ì¥¹¥Ý¥ó¥¹»þ´Ö¤ò®¤¯¤¹¤ë¤¿¤á¤Î¥Á¥å¡¼¥Ë¥ó¥°
+\fBExample 2\fR, レスãƒãƒ³ã‚¹æ™‚間を速ãã™ã‚‹ãŸã‚ã®ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°
 .RS 4
 .sp
 .if n \{\
@@ -2478,9 +2478,9 @@
 .RE
 .\}
 .RE
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+.SH "終了ステータス"
 .PP
-Ä̾¼¡¤Î½ªÎ»Ãͤ¬µ¯Æ°¥Ä¡¼¥ë¤«¤éÊÖ¤µ¤ì¤ë¤Î¤Ï¡¢µ¯Æ°¸µ¤¬ÉÔÀµ¤Ê°ú¿ô¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¤«¡¢¿¼¹ï¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤«¡¢¤¢¤ë¤¤¤ÏJVM¤Ë¤è¤êÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ç¤¹¡£¤¿¤À¤·¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢API¸Æ½Ð¤·\fISystem\&.exit(exitValue)\fR¤ò»ÈÍѤ·¤ÆǤ°Õ¤ÎÃͤòÊÖ¤¹¤³¤È¤òÁªÂò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Ãͤϼ¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+通常ã€æ¬¡ã®çµ‚了値ãŒèµ·å‹•ãƒ„ールã‹ã‚‰è¿”ã•ã‚Œã‚‹ã®ã¯ã€èµ·å‹•å…ƒãŒä¸æ­£ãªå¼•æ•°ã§å‘¼ã³å‡ºã•ã‚ŒãŸã‹ã€æ·±åˆ»ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸã‹ã€ã‚ã‚‹ã„ã¯JVMã«ã‚ˆã‚Šä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã§ã™ã€‚ãŸã ã—ã€Javaアプリケーションã¯ã€API呼出ã—\fISystem\&.exit(exitValue)\fRを使用ã—ã¦ä»»æ„ã®å€¤ã‚’è¿”ã™ã“ã¨ã‚’é¸æŠžã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚値ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2490,7 +2490,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI0\fR: Àµ¾ï½ªÎ»
+\fI0\fR: 正常終了
 .RE
 .sp
 .RS 4
@@ -2501,9 +2501,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI>0\fR: ¥¨¥é¡¼È¯À¸
+\fI>0\fR: エラー発生
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/javac.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/javac.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javac
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javac" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javac" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javac \- Java¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤òÆɤ߼è¤ê¡¢¥Ð¥¤¥È¥³¡¼¥É¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javac \- JavaクラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’読ã¿å–ã‚Šã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -62,32 +62,32 @@
 .RE
 .\}
 .PP
-°ú¿ô¤ò»ØÄꤹ¤ë½ç½ø¤ÏǤ°Õ¤Ç¤¹¡£
+引数を指定ã™ã‚‹é †åºã¯ä»»æ„ã§ã™ã€‚
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIsourcefiles\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(\fIMyClass\&.java\fR¤Ê¤É)¡£
+コンパイルã•ã‚Œã‚‹1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(\fIMyClass\&.java\fRãªã©)。
 .RE
 .PP
 \fIclasses\fR
 .RS 4
-Ãí¼á¤Î½èÍýÂоݤȤʤë1¤Ä°Ê¾å¤Î¥¯¥é¥¹(\fIMyPackage\&.MyClass\fR¤Ê¤É)¡£
+注釈ã®å‡¦ç†å¯¾è±¡ã¨ãªã‚‹1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹(\fIMyPackage\&.MyClass\fRãªã©)。
 .RE
 .PP
 \fI@argfiles\fR
 .RS 4
-¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò°ìÍ÷ɽ¼¨¤¹¤ë1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ç¤Ï\fI\-J\fR¥ª¥×¥·¥ç¥ó¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+オプションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’一覧表示ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§ã¯\fI\-J\fRオプションã¯æŒ‡å®šã§ãã¾ã›ã‚“。コマンドライン引数ファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤òÆɤ߼è¤ê¡¢¥Ð¥¤¥È¥³¡¼¥É¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹Æâ¤ÎÃí¼á¤Î½èÍý¤â¤Ç¤­¤Þ¤¹¡£
+\fIjavac\fRコマンドã¯ã€Javaプログラミング言語ã§è¨˜è¿°ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’読ã¿å–ã‚Šã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚\fIjavac\fRコマンドã§ã¯ã€Javaソース・ファイルãŠã‚ˆã³ã‚¯ãƒ©ã‚¹å†…ã®æ³¨é‡ˆã®å‡¦ç†ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Õ¥¡¥¤¥ë̾¤ò\fIjavac\fR¤ËÅϤ¹¤Ë¤Ï¡¢2¤Ä¤ÎÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+ソース・コードã®ãƒ•ã‚¡ã‚¤ãƒ«åã‚’\fIjavac\fRã«æ¸¡ã™ã«ã¯ã€2ã¤ã®æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -97,7 +97,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¿ô¤¬¾¯¤Ê¤¤¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Þ¤¹¡£
+ソース・ファイルã®æ•°ãŒå°‘ãªã„å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«åをコマンドラインã§æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -108,19 +108,19 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¿ô¤¬Â¿¤¤¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤ò¶õÇò¤Þ¤¿¤Ï²þ¹Ô¤Ç¶èÀڤäƻØÄꤷ¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¡¢¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë̾¤ÎÀèƬ¤Ë¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤Þ¤¹¡£
+ソース・ファイルã®æ•°ãŒå¤šã„å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ•ã‚¡ã‚¤ãƒ«åを空白ã¾ãŸã¯æ”¹è¡Œã§åŒºåˆ‡ã£ã¦æŒ‡å®šã—ã¾ã™ã€‚\fIjavac\fRコマンドã§ã€ãƒªã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®å…ˆé ­ã«ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)を使用ã—ã¾ã™ã€‚
 .RE
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Õ¥¡¥¤¥ë̾¤Ï\&.java³ÈÄ¥»Ò¤ò¡¢¥¯¥é¥¹¤Î¥Õ¥¡¥¤¥ë̾¤Ï\&.class³ÈÄ¥»Ò¤ò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤É¤Á¤é¤â¡¢³ºÅö¤¹¤ë¥¯¥é¥¹¤ËÂбþ¤¹¤ë¥ë¡¼¥È̾¤ò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMyClass\fR¤È¤¤¤¦Ì¾Á°¤Î¥¯¥é¥¹¤Ï¡¢\fIMyClass\&.java\fR¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ëµ­½Ò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢\fIMyClass\&.class\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£
+ソース・コードã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯\&.javaæ‹¡å¼µå­ã‚’ã€ã‚¯ãƒ©ã‚¹ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯\&.classæ‹¡å¼µå­ã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã©ã¡ã‚‰ã‚‚ã€è©²å½“ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«å¯¾å¿œã™ã‚‹ãƒ«ãƒ¼ãƒˆåã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMyClass\fRã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ã¯ã€\fIMyClass\&.java\fRã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«è¨˜è¿°ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€\fIMyClass\&.class\fRã¨ã„ã†åå‰ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚
 .PP
-ÆâÉô¥¯¥é¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤È¡¢ÄɲäΥ¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢\fIMyClass$MyInnerClass\&.class\fR¤Î¤è¤¦¤Ë¡¢ÆâÉô¥¯¥é¥¹Ì¾¤È³°Éô¥¯¥é¥¹Ì¾¤òÁȤ߹礻¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
+内部クラスãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹ã¨ã€è¿½åŠ ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã¯ã€\fIMyClass$MyInnerClass\&.class\fRã®ã‚ˆã†ã«ã€å†…部クラスåã¨å¤–部クラスåを組ã¿åˆã›ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤òÈ¿±Ç¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¡¦¥Ä¥ê¡¼¤ËÇÛÃÖ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fI/workspace\fR¤Ë¤¢¤ë¾ì¹ç¡¢\fIcom\&.mysoft\&.mypack\&.MyClass\fR¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¡¢\fI/workspace/com/mysoft/mypack/MyClass\&.java\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£
+ソース・ファイルã¯ã€ãƒ‘ッケージ・ツリーをå映ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ»ãƒ„リーã«é…ç½®ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fI/workspace\fRã«ã‚ã‚‹å ´åˆã€\fIcom\&.mysoft\&.mypack\&.MyClass\fRã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’ã€\fI/workspace/com/mysoft/mypack/MyClass\&.java\fRã«æ ¼ç´ã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢³Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÂбþ¤¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤·¤Þ¤¹¡£\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê̤νÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯ã€å„クラス・ファイルを対応ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã—ã¾ã™ã€‚\fI\-d\fRオプションを使用ã—ã¦ã€åˆ¥ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ë¤Ï¡¢¸½ºß¤Î³«È¯´Ä¶­¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëɸ½à¥ª¥×¥·¥ç¥ó¤Î¥»¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì°Ê³°¤ÎÈóɸ½à¥ª¥×¥·¥ç¥ó¤Ï¡¢¸½ºß¤Î²¾ÁÛ¥Þ¥·¥ó¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤Ë¸ÇÍ­¤Î¥ª¥×¥·¥ç¥ó¤Ç¡¢¾­Íè¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£Èóɸ½à¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-X\fR¥ª¥×¥·¥ç¥ó¤Ç»Ï¤Þ¤ê¤Þ¤¹¡£
+コンパイラã«ã¯ã€ç¾åœ¨ã®é–‹ç™ºç’°å¢ƒã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æ¨™æº–オプションã®ã‚»ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚ã“れ以外ã®éžæ¨™æº–オプションã¯ã€ç¾åœ¨ã®ä»®æƒ³ãƒžã‚·ãƒ³ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…ã«å›ºæœ‰ã®ã‚ªãƒ—ションã§ã€å°†æ¥ã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚éžæ¨™æº–オプションã¯ã€\fI\-X\fRオプションã§å§‹ã¾ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -130,7 +130,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -141,230 +141,230 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+éžæ¨™æº–オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "ɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "標準オプション"
 .PP
 \-A\fIkey\fR[\fI=value\fR]
 .RS 4
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ËÅϤ¹¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¤¬Ä¾Àܲò¼á¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¤½¤ì¤¾¤ì¤Î¥×¥í¥»¥Ã¥µ¤Ç»ÈÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£\fIkey\fR¤ÎÃͤϡ¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¼±Ê̻Ҥò¥É¥Ã¥È(\&.)¤Ç¶èÀÚ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+注釈プロセッサã«æ¸¡ã™ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã¯ã€\fIjavac\fRãŒç›´æŽ¥è§£é‡ˆã™ã‚‹ã®ã§ã¯ãªãã€ãã‚Œãžã‚Œã®ãƒ—ロセッサã§ä½¿ç”¨ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚\fIkey\fRã®å€¤ã¯ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®è­˜åˆ¥å­ã‚’ドット(\&.)ã§åŒºåˆ‡ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR or \-classpath \fIpath\fR
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó(¥ª¥×¥·¥ç¥ó¤Ç)Ãí¼á¥×¥í¥»¥Ã¥µ¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fICLASSPATH\fR¡¢\fI\-cp\fR¡¢\fI\-classpath\fR¤Î¤¤¤º¤ì¤â»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Î\fI¥¯¥é¥¹¡¦¥Ñ¥¹\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ê¤ê¤Þ¤¹¡£Setting the Class Path ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ユーザー・クラス・ファイルã€ãŠã‚ˆã³(オプションã§)注釈プロセッサã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã¯\fICLASSPATH\fR環境変数ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fICLASSPATH\fRã€\fI\-cp\fRã€\fI\-classpath\fRã®ã„ãšã‚Œã‚‚指定ã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®\fIクラス・パス\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãªã‚Šã¾ã™ã€‚Setting the Class Path ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤â¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£
+\fI\-sourcepath\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ユーザー・クラス・パスã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-processorpath\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢Ãí¼á¥×¥í¥»¥Ã¥µ¤â¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£
+\fI\-processorpath\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€æ³¨é‡ˆãƒ—ロセッサもクラス・パスã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Djava\&.ext\&.dirs=\fIdirectories\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+インストール済拡張機能ã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Djava\&.endorsed\&.dirs=\fIdirectories\fR
 .RS 4
-¾µÇ§¤µ¤ì¤¿É¸½à¥Ñ¥¹¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+承èªã•ã‚ŒãŸæ¨™æº–パスã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½ÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fIjavac\fR¤Ç¤ÏºîÀ®¤µ¤ì¤Ê¤¤¤¿¤á¡¢¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤Ç¤¢¤ë¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤¿¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤·¡¢É¬Íפ˱þ¤¸¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£
+クラス・ファイルã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯\fIjavac\fRã§ã¯ä½œæˆã•ã‚Œãªã„ãŸã‚ã€ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスãŒãƒ‘ッケージã®ä¸€éƒ¨ã§ã‚ã‚‹å ´åˆã€\fIjavac\fRã¯ã€ãƒ‘ッケージåã‚’å映ã—ãŸã‚µãƒ–ディレクトリ内ã«ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã—ã€å¿…è¦ã«å¿œã˜ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’作æˆã—ã¾ã™ã€‚
 .sp
 \fI\-d\fR
-\fI/home/myclasses\fR¤È»ØÄꤷ¡¢¥¯¥é¥¹¤Î̾Á°¤¬\fIcom\&.mypackage\&.MyClass\fR¤Ç¤¢¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï\fI/home/myclasses/com/mypackage/MyClass\&.class\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI/home/myclasses\fRã¨æŒ‡å®šã—ã€ã‚¯ãƒ©ã‚¹ã®åå‰ãŒ\fIcom\&.mypackage\&.MyClass\fRã§ã‚ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI/home/myclasses/com/mypackage/MyClass\&.class\fRã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢³Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¤½¤ÎÀ¸À®¸µ¤È¤Ê¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë³ÊǼ¤·¤Þ¤¹¡£
+\fI\-d\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIjavac\fRã¯ã€å„クラス・ファイルをã€ãã®ç”Ÿæˆå…ƒã¨ãªã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ë¼«Æ°Åª¤ËÄɲ䵤ì¤Þ¤»¤ó¡£
+\fB注æ„:\fR
+\fI\-d\fRオプションã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«è‡ªå‹•çš„ã«è¿½åŠ ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-deprecation
 .RS 4
-Èó¿ä¾©¤Î¥á¥ó¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¹¤¬»ÈÍѤޤ¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤ë¤¿¤Ó¤Ë¡¢ÀâÌÀ¤òɽ¼¨¤·¤Þ¤¹¡£\fI\-deprecation\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢Èó¿ä¾©¤Î¥á¥ó¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¹¤ò»ÈÍѤޤ¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¡£\fI\-deprecation\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-Xlint:deprecation\fR¤Î¾Êάɽµ­¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®ãƒ¡ãƒ³ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãŒä½¿ç”¨ã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã‚‹ãŸã³ã«ã€èª¬æ˜Žã‚’表示ã—ã¾ã™ã€‚\fI\-deprecation\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavac\fRã¯ã€éžæŽ¨å¥¨ã®ãƒ¡ãƒ³ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã‚’使用ã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るソース・ファイルã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ã€‚\fI\-deprecation\fRオプションã¯ã€\fI\-Xlint:deprecation\fRã®çœç•¥è¡¨è¨˜ã§ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Ì¾(EUC\-JP¤äUTF\-8¤Ê¤É)¤òÀßÄꤷ¤Þ¤¹¡£\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥Ð¡¼¥¿¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+ソース・ファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å(EUC\-JPã‚„UTF\-8ãªã©)を設定ã—ã¾ã™ã€‚\fI\-encoding\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ—ラットフォームã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ãƒãƒ¼ã‚¿ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-endorseddirs \fIdirectories\fR
 .RS 4
-¾µÇ§¤µ¤ì¤¿É¸½à¥Ñ¥¹¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+承èªã•ã‚ŒãŸæ¨™æº–パスã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-extdirs \fIdirectories\fR
 .RS 4
-\fIext\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£directoriesÊÑ¿ô¤Ë¤Ï¡¢¥³¥í¥ó¤Ç¶èÀڤ俥ǥ£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î³ÆJAR¥Õ¥¡¥¤¥ë¤«¤é¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£¸¡½Ð¤µ¤ì¤¿¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î°ìÉô¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIext\fRディレクトリã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚directories変数ã«ã¯ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã£ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚指定ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®å„JARファイルã‹ã‚‰ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚検出ã•ã‚ŒãŸã™ã¹ã¦ã®JARファイルã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ä¸€éƒ¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë(°Û¤Ê¤ëJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¼ÂÁõ¤µ¤ì¤¿¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ä³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¾ÜºÙ¤Ï¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+クロスコンパイル(ç•°ãªã‚‹Javaプラットフォームã«å®Ÿè£…ã•ã‚ŒãŸãƒ–ートストラップ・クラスや拡張機能クラスã«å¯¾ã—ã¦ã‚³ãƒ³ãƒ‘イルを行ã†)を実行ã™ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã«ã¯æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚’å«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚詳細ã¯ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-g
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤ò´Þ¤à¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¹ÔÈֹ椪¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊó¤Î¤ß¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+ローカル変数をå«ã‚€ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€è¡Œç•ªå·ãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«æƒ…å ±ã®ã¿ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-g:none
 .RS 4
-¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+デãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã›ã‚“。
 .RE
 .PP
 \-g:[\fIkeyword list\fR]
 .RS 4
-¥«¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥­¡¼¥ï¡¼¥É¡¦¥ê¥¹¥È¤Ë¤è¤ê»ØÄꤵ¤ì¤¿¡¢ÆÃÄê¤Î¼ïÎà¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£¼¡¤Î¥­¡¼¥ï¡¼¥É¤¬Í­¸ú¤Ç¤¹¡£
+カンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ãƒ»ãƒªã‚¹ãƒˆã«ã‚ˆã‚ŠæŒ‡å®šã•ã‚ŒãŸã€ç‰¹å®šã®ç¨®é¡žã®ãƒ‡ãƒãƒƒã‚°æƒ…å ±ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚次ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ãŒæœ‰åŠ¹ã§ã™ã€‚
 .PP
 source
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+ソース・ファイルã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .PP
 lines
 .RS 4
-¹ÔÈÖ¹æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+行番å·ã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .PP
 vars
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+ローカル変数ã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .RE
 .PP
 \-help
 .RS 4
-ɸ½à¥ª¥×¥·¥ç¥ó¤Î³µÍפò½ÐÎϤ·¤Þ¤¹¡£
+標準オプションã®æ¦‚è¦ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-implicit:[\fIclass, none\fR]
 .RS 4
-°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤òÀ©¸æ¤·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¼«Æ°À¸À®¤¹¤ë¤Ë¤Ï¡¢\fI\-implicit:class\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤òÍÞÀ©¤¹¤ë¤Ë¤Ï¡¢\fI\-implicit:none\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¼«Æ°À¸À®¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤Î¾ì¹ç¡¢¤½¤Î¤è¤¦¤Ê¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿»þ¤ËÃí¼á½èÍý¤â¼Â¹Ô¤µ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤«¤é·Ù¹ð¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤¬ÌÀ¼¨Åª¤ËÀßÄꤵ¤ì¤¿¾ì¹ç¡¢·Ù¹ð¤Ïȯ¹Ô¤µ¤ì¤Þ¤»¤ó¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ç”Ÿæˆã‚’制御ã—ã¾ã™ã€‚クラス・ファイルを自動生æˆã™ã‚‹ã«ã¯ã€\fI\-implicit:class\fRを使用ã—ã¾ã™ã€‚クラス・ファイルã®ç”Ÿæˆã‚’抑制ã™ã‚‹ã«ã¯ã€\fI\-implicit:none\fRを使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå‹•ä½œã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è‡ªå‹•ç”Ÿæˆã«ãªã‚Šã¾ã™ã€‚ãã®å ´åˆã€ãã®ã‚ˆã†ãªã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚ŒãŸæ™‚ã«æ³¨é‡ˆå‡¦ç†ã‚‚実行ã•ã‚Œã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã‹ã‚‰è­¦å‘ŠãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚\fI\-implicit\fRオプションãŒæ˜Žç¤ºçš„ã«è¨­å®šã•ã‚ŒãŸå ´åˆã€è­¦å‘Šã¯ç™ºè¡Œã•ã‚Œã¾ã›ã‚“。型ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Javaµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシン(JVM)ã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Java起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fBÃí°Õ:\fR
-\fICLASSPATH\fR¡¢\fI\-classpath\fR¡¢\fI\-bootclasspath\fR¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¤Î¼Â¹Ô¤Ë»ÈÍѤµ¤ì¤ë¥¯¥é¥¹¤ò»ØÄꤷ¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ª¤è¤ÓÊÑ¿ô¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤è¤¦¤È¤¹¤ë¤È¡¢¥ê¥¹¥¯¤¬¹â¤¯¡¢Â¿¤¯¤Î¾ì¹ç¡¢É¬ÍפʽèÍý¤¬¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤ò¥«¥¹¥¿¥Þ¥¤¥º¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢´ðÁäȤʤëJavaµ¯Æ°¥Ä¡¼¥ë¤Ë¥ª¥×¥·¥ç¥ó¤òÅϤ·¤Þ¤¹¡£
+\fB注æ„:\fR
+\fICLASSPATH\fRã€\fI\-classpath\fRã€\fI\-bootclasspath\fRãŠã‚ˆã³\fI\-extdirs\fRオプションã¯ã€\fIjavac\fRã®å®Ÿè¡Œã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã‚’指定ã—ã¾ã›ã‚“。ã“れらã®ã‚ªãƒ—ションãŠã‚ˆã³å¤‰æ•°ã‚’使用ã—ã¦ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…をカスタマイズã—よã†ã¨ã™ã‚‹ã¨ã€ãƒªã‚¹ã‚¯ãŒé«˜ãã€å¤šãã®å ´åˆã€å¿…è¦ãªå‡¦ç†ãŒå®Ÿè¡Œã•ã‚Œã¾ã›ã‚“。コンパイラã®å®Ÿè£…をカスタマイズã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€\fI\-J\fRオプションを使用ã—ã¦ã€åŸºç¤Žã¨ãªã‚‹Java起動ツールã«ã‚ªãƒ—ションを渡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-nowarn
 .RS 4
-·Ù¹ð¥á¥Ã¥»¡¼¥¸¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-Xlint:none\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£
+警告メッセージを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-Xlint:none\fRオプションã¨åŒã˜ã‚ˆã†ã«å‹•ä½œã—ã¾ã™ã€‚
 .RE
 .PP
 \-parameters
 .RS 4
-¥ê¥Õ¥ì¥¯¥·¥ç¥óAPI¤Î¥á¥½¥Ã¥É\fIjava\&.lang\&.reflect\&.Executable\&.getParameters\fR¤¬¼èÆÀ¤Ç¤­¤ë¤è¤¦¤Ë¡¢À¸À®¤µ¤ì¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤È¥á¥½¥Ã¥É¤Î²¾¥Ñ¥é¥á¡¼¥¿Ì¾¤ò³ÊǼ¤·¤Þ¤¹¡£
+リフレクションAPIã®ãƒ¡ã‚½ãƒƒãƒ‰\fIjava\&.lang\&.reflect\&.Executable\&.getParameters\fRãŒå–å¾—ã§ãるよã†ã«ã€ç”Ÿæˆã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¨ãƒ¡ã‚½ãƒƒãƒ‰ã®ä»®ãƒ‘ラメータåã‚’æ ¼ç´ã—ã¾ã™ã€‚
 .RE
 .PP
 \-proc: [\fInone\fR, \fIonly\fR]
 .RS 4
-Ãí¼á½èÍý¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¤ò¼Â¹Ô¤¹¤ë¤«¤òÀ©¸æ¤·¤Þ¤¹¡£\fI\-proc:none\fR¤Ï¡¢Ãí¼á½èÍý¤Ê¤·¤Ç¥³¥ó¥Ñ¥¤¥ë¤¬¼Â¹Ô¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fI\-proc:only\fR¤Ï¡¢Ãí¼á½èÍý¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¡¢¸å³¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï¤Þ¤Ã¤¿¤¯¼Â¹Ô¤µ¤ì¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+注釈処ç†ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イルを実行ã™ã‚‹ã‹ã‚’制御ã—ã¾ã™ã€‚\fI\-proc:none\fRã¯ã€æ³¨é‡ˆå‡¦ç†ãªã—ã§ã‚³ãƒ³ãƒ‘イルãŒå®Ÿè¡Œã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fI\-proc:only\fRã¯ã€æ³¨é‡ˆå‡¦ç†ã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã€å¾Œç¶šã®ã‚³ãƒ³ãƒ‘イルã¯ã¾ã£ãŸã実行ã•ã‚Œãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .RE
 .PP
 \-processor \fIclass1\fR [,\fIclass2\fR,\fIclass3\fR\&.\&.\&.]
 .RS 4
-¼Â¹Ô¤¹¤ëÃí¼á¥×¥í¥»¥Ã¥µ¤Î̾Á°¡£¤³¤ì¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷½èÍý¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£
+実行ã™ã‚‹æ³¨é‡ˆãƒ—ロセッサã®åå‰ã€‚ã“れを指定ã—ãŸå ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¤œç´¢å‡¦ç†ã¯çœç•¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-processorpath \fIpath\fR
 .RS 4
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤¤¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥×¥í¥»¥Ã¥µ¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£
+注釈プロセッサを検索ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒä½¿ç”¨ã•ã‚Œãªã„å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ãƒ—ロセッサãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdir\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î³ÊǼÀè¤È¤Ê¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fIjavac\fR¤Ç¤ÏºîÀ®¤µ¤ì¤Ê¤¤¤¿¤á¡¢¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤Ç¤¢¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤¿¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤·¡¢É¬Íפ˱þ¤¸¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ ¼ç´å…ˆã¨ãªã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯\fIjavac\fRã§ã¯ä½œæˆã•ã‚Œãªã„ãŸã‚ã€ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスãŒãƒ‘ッケージã®ä¸€éƒ¨ã§ã‚ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€ãƒ‘ッケージåã‚’å映ã—ãŸã‚µãƒ–ディレクトリ内ã«ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã—ã€å¿…è¦ã«å¿œã˜ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’作æˆã—ã¾ã™ã€‚
 .sp
-\fI\-s /home/mysrc\fR¤È»ØÄꤷ¡¢¥¯¥é¥¹¤Î̾Á°¤¬\fIcom\&.mypackage\&.MyClass\fR¤Ç¤¢¤ë¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï\fI/home/mysrc/com/mypackage/MyClass\&.java\fR¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fI\-s /home/mysrc\fRã¨æŒ‡å®šã—ã€ã‚¯ãƒ©ã‚¹ã®åå‰ãŒ\fIcom\&.mypackage\&.MyClass\fRã§ã‚ã‚‹å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI/home/mysrc/com/mypackage/MyClass\&.java\fRã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-source \fIrelease\fR
 .RS 4
-¼õ¤±ÉÕ¤±¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fIrelease\fR¤Ë¤Ï¼¡¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£
+å—ã‘付ã‘るソース・コードã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’指定ã—ã¾ã™ã€‚\fIrelease\fRã«ã¯æ¬¡ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚
 .PP
 1\&.3
 .RS 4
-¤³¤Î¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¡¢Java SE 1\&.3°Ê¹ß¤ËƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¡¢Áí¾Î¤Þ¤¿¤Ï¾¤Î¸À¸ìµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó¡£
+ã“ã®ã‚³ãƒ³ãƒ‘イラã§ã¯ã€Java SE 1\&.3以é™ã«å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã€ç·ç§°ã¾ãŸã¯ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¾ã›ã‚“。
 .RE
 .PP
 1\&.4
 .RS 4
-Java SE 1\&.4¤ÇƳÆþ¤µ¤ì¤¿¡¢¥¢¥µ¡¼¥·¥ç¥ó¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+Java SE 1\&.4ã§å°Žå…¥ã•ã‚ŒãŸã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 1\&.5
 .RS 4
-Java SE 5¤ÇƳÆþ¤µ¤ì¤¿Áí¾Î¤ª¤è¤Ó¾¤Î¸À¸ìµ¡Ç½¤ò´Þ¤ó¤À¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+Java SE 5ã§å°Žå…¥ã•ã‚ŒãŸç·ç§°ãŠã‚ˆã³ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’å«ã‚“ã ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 5
 .RS 4
-1\&.5¤ÈƱµÁ¤Ç¤¹¡£
+1\&.5ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .PP
 1\&.6
 .RS 4
-Java SE 6¤Ç¤Ï¸À¸ì¤ËÂФ¹¤ëÊѹ¹¤ÏƳÆþ¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£¤·¤«¤·¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¡¦¥¨¥é¡¼¤¬¡¢Java Platform, Standard Edition¤Î°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤è¤¦¤Ê·Ù¹ð¤Ç¤Ï¤Ê¤¯¡¢¥¨¥é¡¼¤È¤·¤ÆÊó¹ð¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
+Java SE 6ã§ã¯è¨€èªžã«å¯¾ã™ã‚‹å¤‰æ›´ã¯å°Žå…¥ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ã—ã‹ã—ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¨ãƒ©ãƒ¼ãŒã€Java Platform, Standard Editionã®ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã‚ˆã†ãªè­¦å‘Šã§ã¯ãªãã€ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å ±å‘Šã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚
 .RE
 .PP
 6
 .RS 4
-1\&.6¤ÈƱµÁ¤Ç¤¹¡£
+1\&.6ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .PP
 1\&.7
 .RS 4
-¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£Java SE 7¤ÇƳÆþ¤µ¤ì¤¿µ¡Ç½¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚Java SE 7ã§å°Žå…¥ã•ã‚ŒãŸæ©Ÿèƒ½ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 7
 .RS 4
-1\&.7¤ÈƱµÁ¤Ç¤¹¡£
+1\&.7ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .RE
 .PP
 \-sourcepath \fIsourcepath\fR
 .RS 4
-¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤ò¸¡º÷¤¹¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÈƱÍͤˡ¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤Ï¡¢Oracle Solaris¤Ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Ç¤Ï¥»¥ß¥³¥í¥ó¤Ç¶èÀڤꡢ¤³¤³¤Ë¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥¢¡¼¥«¥¤¥Ö¤Þ¤¿¤ÏZIP¥¢¡¼¥«¥¤¥Ö¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤Ï¥¢¡¼¥«¥¤¥ÖÆâ¤Î¥í¡¼¥«¥ë¡¦¥Ñ¥¹Ì¾¤¬¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+クラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’検索ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ‘スを指定ã—ã¾ã™ã€‚ユーザー・クラス・パスã¨åŒæ§˜ã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€Oracle Solarisã§ã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã§ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚Šã€ã“ã“ã«ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARアーカイブã¾ãŸã¯ZIPアーカイブを指定ã§ãã¾ã™ã€‚パッケージを使用ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ‘スåãŒãƒ‘ッケージåã‚’å映ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤â¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Ë¤è¤ê¸«¤Ä¤«¤Ã¤¿¥¯¥é¥¹¤ÏºÆ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+ソース・ファイルも見ã¤ã‹ã£ãŸå ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«ã‚ˆã‚Šè¦‹ã¤ã‹ã£ãŸã‚¯ãƒ©ã‚¹ã¯å†ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥í¡¼¥É¤µ¤ì¤ë¥¯¥é¥¹¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Î¾ðÊ󤬽ÐÎϤµ¤ì¤ë¡¢¾ÜºÙ½ÐÎϤò»ÈÍѤ·¤Þ¤¹¡£
+ロードã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã”ã¨ã®æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ã€è©³ç´°å‡ºåŠ›ã‚’使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-werror
 .RS 4
-·Ù¹ð¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¥³¥ó¥Ñ¥¤¥ë¤ò½ªÎ»¤·¤Þ¤¹¡£
+警告ãŒç™ºç”Ÿã—ãŸå ´åˆã«ã‚³ãƒ³ãƒ‘イルを終了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-X
 .RS 4
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+éžæ¨™æº–オプションã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SS "¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó"
+.SS "クロスコンパイル・オプション"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¯¥é¥¹¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï¡¢\fIjavac\fR¤¬ÅºÉÕ¤µ¤ì¤Æ¤¤¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ª¤è¤Ó³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢\fIjavac\fR¤Ï¡¢°Û¤Ê¤ëJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¼ÂÁõ¤µ¤ì¤¿¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ª¤è¤Ó³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤â¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦¾ì¹ç¤Ï¡¢\fI\-bootclasspath\fR¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤³¤È¤¬½ÅÍפǤ¹¡£
+デフォルトã§ã¯ã€ã‚¯ãƒ©ã‚¹ã®ã‚³ãƒ³ãƒ‘イルã¯ã€\fIjavac\fRãŒæ·»ä»˜ã•ã‚Œã¦ã„るプラットフォームã®ãƒ–ートストラップ・クラスãŠã‚ˆã³æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦è¡Œã‚ã‚Œã¾ã™ã€‚ãŸã ã—ã€\fIjavac\fRã¯ã€ç•°ãªã‚‹Javaプラットフォームã«å®Ÿè£…ã•ã‚ŒãŸãƒ–ートストラップ・クラスãŠã‚ˆã³æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã‚³ãƒ³ãƒ‘イルを行ã†ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イルもサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚クロスコンパイルを行ã†å ´åˆã¯ã€\fI\-bootclasspath\fRãŠã‚ˆã³\fI\-extdirs\fRオプションを使用ã™ã‚‹ã“ã¨ãŒé‡è¦ã§ã™ã€‚
 .PP
 \-target \fIversion\fR
 .RS 4
-²¾ÁÛ¥Þ¥·¥ó¤Î»ØÄꤵ¤ì¤¿¥ê¥ê¡¼¥¹¤òÂоݤȤ¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢»ØÄꤵ¤ì¤¿¥¿¡¼¥²¥Ã¥È°Ê¹ß¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÆ°ºî¤·¤Þ¤¹¤¬¡¢¤½¤ì¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJVM¤Ç¤ÏÆ°ºî¤·¤Þ¤»¤ó¡£Í­¸ú¤Ê¥¿¡¼¥²¥Ã¥È¤Ï¡¢1\&.1¡¢1\&.2¡¢1\&.3¡¢1\&.4¡¢1\&.5 (5¤â²Ä)¡¢1\&.6 (6¤â²Ä)¤ª¤è¤Ó1\&.7 (7¤â²Ä)¤Ç¤¹¡£
+仮想マシンã®æŒ‡å®šã•ã‚ŒãŸãƒªãƒªãƒ¼ã‚¹ã‚’対象ã¨ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚クラス・ファイルã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¿ãƒ¼ã‚²ãƒƒãƒˆä»¥é™ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯å‹•ä½œã—ã¾ã™ãŒã€ãれよりå‰ã®ãƒªãƒªãƒ¼ã‚¹ã®JVMã§ã¯å‹•ä½œã—ã¾ã›ã‚“。有効ãªã‚¿ãƒ¼ã‚²ãƒƒãƒˆã¯ã€1\&.1ã€1\&.2ã€1\&.3ã€1\&.4ã€1\&.5 (5ã‚‚å¯)ã€1\&.6 (6ã‚‚å¯)ãŠã‚ˆã³1\&.7 (7ã‚‚å¯)ã§ã™ã€‚
 .sp
-\fI\-target\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥È¤Ï¡¢\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤè¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+\fI\-target\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã¯ã€\fI\-source\fRオプションã®å€¤ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -374,7 +374,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -385,7 +385,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.2¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.4¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.2ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.4ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -396,7 +396,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.3¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.4¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.3ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.4ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -407,7 +407,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.5¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.5ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -418,7 +418,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.6¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.6ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -429,23 +429,23 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤Î¾¤Î¤¹¤Ù¤Æ¤ÎÃͤξì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤʤê¤Þ¤¹¡£
+\fI\-source\fRオプションã®ä»–ã®ã™ã¹ã¦ã®å€¤ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯ã€\fI\-source\fRオプションã®å€¤ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-bootclasspath \fIbootclasspath\fR
 .RS 4
-»ØÄꤵ¤ì¤¿°ìÏ¢¤Î¥Ö¡¼¥È¡¦¥¯¥é¥¹¤ËÂФ·¤Æ¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¤¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÈƱÍͤˡ¢¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤Ï¥³¥í¥ó(:)¤Ç¶èÀڤꡢ¤³¤³¤Ë¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥¢¡¼¥«¥¤¥Ö¤Þ¤¿¤ÏZIP¥¢¡¼¥«¥¤¥Ö¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+指定ã•ã‚ŒãŸä¸€é€£ã®ãƒ–ート・クラスã«å¯¾ã—ã¦ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イルを行ã„ã¾ã™ã€‚ユーザー・クラス・パスã¨åŒæ§˜ã«ã€ãƒ–ート・クラス・パスã®ã‚¨ãƒ³ãƒˆãƒªã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã€ã“ã“ã«ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARアーカイブã¾ãŸã¯ZIPアーカイブを指定ã§ãã¾ã™ã€‚
 .RE
-.SS "¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó"
+.SS "コンパクト・プロファイル・オプション"
 .PP
-JDK 8°Ê¹ß¤«¤é¡¢\fIjavac\fR¥³¥ó¥Ñ¥¤¥é¤Ï¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¤È¡¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÁ´ÂΤòɬÍפȤ·¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¥Ç¥×¥í¥¤²Äǽ¤Ç¡¢¾®¤µ¤¤¥Õ¥Ã¥È¥×¥ê¥ó¥È¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ëµ¡Ç½¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¹¥È¥¢¤«¤é¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤òû½Ì¤¹¤ë¤Î¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Îµ¡Ç½¤Ï¡¢JRE¤ò¥Ð¥ó¥É¥ë¤¹¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¡¢¤è¤ê¥³¥ó¥Ñ¥¯¥È¤Ê¥Ç¥×¥í¥¤¥á¥ó¥È¤ËÌòΩ¤Á¤Þ¤¹¡£¤³¤Îµ¡Ç½¤Ï¡¢¾®¤µ¤¤¥Ç¥Ð¥¤¥¹¤Ç¤âÌòΩ¤Á¤Þ¤¹¡£
+JDK 8以é™ã‹ã‚‰ã€\fIjavac\fRコンパイラã¯ã‚³ãƒ³ãƒ‘クト・プロファイルをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚コンパクト・プロファイルを使用ã™ã‚‹ã¨ã€Javaプラットフォーム全体を必è¦ã¨ã—ãªã„アプリケーションã¯ã€ãƒ‡ãƒ—ロイå¯èƒ½ã§ã€å°ã•ã„フットプリントã§å®Ÿè¡Œã§ãã¾ã™ã€‚コンパクト・プロファイル機能ã¯ã€ã‚¢ãƒ—リケーション・ストアã‹ã‚‰ã®ã‚¢ãƒ—リケーションã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚間を短縮ã™ã‚‹ã®ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯ã€JREã‚’ãƒãƒ³ãƒ‰ãƒ«ã™ã‚‹Javaアプリケーションã®ã€ã‚ˆã‚Šã‚³ãƒ³ãƒ‘クトãªãƒ‡ãƒ—ロイメントã«å½¹ç«‹ã¡ã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯ã€å°ã•ã„デãƒã‚¤ã‚¹ã§ã‚‚役立ã¡ã¾ã™ã€‚
 .PP
-¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥×¥í¥Õ¥¡¥¤¥ëÃͤϡ¢\fIcompact1\fR¡¢\fIcompact2\fR¤ª¤è¤Ó\fIcompact3\fR¤Ç¤¹¡£¤³¤ì¤é¤Ï¡¢ÄɲäΥ쥤¥ä¡¼¤Ç¤¹¡£Â礭¤¤ÈÖ¹æ¤Î³Æ¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¾®¤µ¤¤ÈÖ¹æ¤Î̾Á°¤Î¥×¥í¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎAPI¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るプロファイル値ã¯ã€\fIcompact1\fRã€\fIcompact2\fRãŠã‚ˆã³\fIcompact3\fRã§ã™ã€‚ã“れらã¯ã€è¿½åŠ ã®ãƒ¬ã‚¤ãƒ¤ãƒ¼ã§ã™ã€‚大ãã„番å·ã®å„コンパクト・プロファイルã«ã¯ã€å°ã•ã„番å·ã®åå‰ã®ãƒ—ロファイル内ã®ã™ã¹ã¦ã®APIãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
 \-profile
 .RS 4
-¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥×¥í¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+コンパクト・プロファイルを使用ã™ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«ãƒ—ロファイルåを指定ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -456,7 +456,7 @@
 .if n \{\
 .RE
 .\}
-javac¤Ï¡¢»ØÄꤵ¤ì¤¿¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤Ê¤¤Ç¤°Õ¤ÎJava SE API¤ò»ÈÍѤ¹¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¤½¤Î¤è¤¦¤Ê¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤è¤¦¤È¤¹¤ë¤³¤È¤Ë¤è¤Ã¤ÆÀ¸¤¸¤ë¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤ÎÎã¤Ç¤¹¡£
+javacã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロファイルã«ãªã„ä»»æ„ã®Java SE APIを使用ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€ãã®ã‚ˆã†ãªã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—よã†ã¨ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ç”Ÿã˜ã‚‹ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -470,32 +470,32 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIApplet\fR¥¯¥é¥¹¤ò»ÈÍѤ·¤Ê¤¤¤è¤¦¤Ë¥½¡¼¥¹¤òÊѹ¹¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¨¥é¡¼¤ò½¤Àµ¤Ç¤­¤Þ¤¹¡£\-profile¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¨¥é¡¼¤ò½¤Àµ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¤Ï¡¢Java SE API¤Î´°Á´¤Ê¥»¥Ã¥È¤ËÂФ·¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£(¤É¤Î¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤â¡¢\fIApplet\fR¥¯¥é¥¹¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£)
+ã“ã®ä¾‹ã§ã¯ã€\fIApplet\fRクラスを使用ã—ãªã„よã†ã«ã‚½ãƒ¼ã‚¹ã‚’変更ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¨ãƒ©ãƒ¼ã‚’修正ã§ãã¾ã™ã€‚\-profileオプションを指定ã›ãšã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¨ãƒ©ãƒ¼ã‚’修正ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚コンパイルã¯ã€Java SE APIã®å®Œå…¨ãªã‚»ãƒƒãƒˆã«å¯¾ã—ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚(ã©ã®ã‚³ãƒ³ãƒ‘クト・プロファイルã«ã‚‚ã€\fIApplet\fRクラスã¯å«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。)
 .sp
-¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤ÎÊ̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥×¥í¥Õ¥¡¥¤¥ë¤Î¥¤¥á¡¼¥¸¤ò»ØÄꤹ¤ë\fIrt\&.jar\fR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤«¤ï¤ê¤Ë\fI\-profile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥×¥í¥Õ¥¡¥¤¥ë¡¦¥¤¥á¡¼¥¸¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥·¥¹¥Æ¥à¾å¤Ë¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë»þ¤ËÌòΩ¤Á¤Þ¤¹¡£
+コンパクト・プロファイルを使用ã—ã¦ã‚³ãƒ³ãƒ‘イルã™ã‚‹ãŸã‚ã®åˆ¥ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€ãƒ—ロファイルã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’指定ã™ã‚‹\fIrt\&.jar\fRファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã‹ã‚ã‚Šã«\fI\-profile\fRオプションを使用ã™ã‚‹ã¨ã€ãƒ—ロファイル・イメージã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«ã‚·ã‚¹ãƒ†ãƒ ä¸Šã«å­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。ã“ã‚Œã¯ã€ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イル時ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
 \-Xbootclasspath/p:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÀÜÈø¼­¤òÄɲä·¤Þ¤¹¡£
+ブートストラップ・クラス・パスã«æŽ¥å°¾è¾žã‚’追加ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath/a:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÀÜƬ¼­¤òÄɲä·¤Þ¤¹¡£
+ブートストラップ・クラス・パスã«æŽ¥é ­è¾žã‚’追加ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath/:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ブートストラップ・クラス・ファイルã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:[\-]\fIgroup\fR [\fI/access\fR]
 .RS 4
-\fIgroup\fR¤ÎÃͤ¬\fIaccessibility\fR¡¢\fIsyntax\fR¡¢\fIreference\fR¡¢\fIhtml\fR¤Þ¤¿¤Ï\fImissing\fR¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ëÆÃÄê¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Þ¤¿¤Ï̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤Î¾ÜºÙ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIgroup\fRã®å€¤ãŒ\fIaccessibility\fRã€\fIsyntax\fRã€\fIreference\fRã€\fIhtml\fRã¾ãŸã¯\fImissing\fRã®ã„ãšã‚Œã‹ã§ã‚る特定ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã¾ãŸã¯ç„¡åŠ¹ã«ã—ã¾ã™ã€‚ã“れらã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã®è©³ç´°ã¯ã€\fIjavadoc\fRコマンドã®\fI\-Xdoclint\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。\fI\-Xdoclint\fRオプションã¯ã€\fIjavac\fRコマンドã§ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
-ÊÑ¿ô\fIaccess\fR¤Ï¡¢\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤¬¥Á¥§¥Ã¥¯¤¹¤ë¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤ÎºÇ¾®¤Î²Ä»ëÀ­¥ì¥Ù¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fIpublic\fR¡¢\fIprotected\fR¡¢\fIpackage\fR¤ª¤è¤Ó\fIprivate\fR¤ÎÃÍ(²Ä»ëÀ­¤Î¹â¤¤½ç)¤Î1¤Ä¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢(protected¡¢package¡¢public¤ò´Þ¤à) protected°Ê¾å¤Î¥¢¥¯¥»¥¹¡¦¥ì¥Ù¥ë¤ò»ý¤Ä¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ò(¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤Ç)¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
+変数\fIaccess\fRã¯ã€\fI\-Xdoclint\fRオプションãŒãƒã‚§ãƒƒã‚¯ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®æœ€å°ã®å¯è¦–性レベルを指定ã—ã¾ã™ã€‚\fIpublic\fRã€\fIprotected\fRã€\fIpackage\fRãŠã‚ˆã³\fIprivate\fRã®å€¤(å¯è¦–性ã®é«˜ã„é †)ã®1ã¤ã‚’æŒã¤ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ªãƒ—ションã¯ã€(protectedã€packageã€publicã‚’å«ã‚€) protected以上ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’æŒã¤ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã‚’(ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã§)ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -506,7 +506,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢package°Ê¾å¤Î¥¢¥¯¥»¥¹¸¢(package¤ª¤è¤Ópublic¤ò´Þ¤à)¤ò»ý¤Ä¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ËÂФ¹¤ëHTML¥¨¥é¡¼¤ò¥Á¥§¥Ã¥¯¤·¤Ê¤¤¤³¤È¤ò½ü¤­¡¢¤¹¤Ù¤Æ¤Î¥¢¥¯¥»¥¹¡¦¥ì¥Ù¥ë¤ËÂФ·¤Æ¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€package以上ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©(packageãŠã‚ˆã³publicã‚’å«ã‚€)ã‚’æŒã¤ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹HTMLエラーをãƒã‚§ãƒƒã‚¯ã—ãªã„ã“ã¨ã‚’除ãã€ã™ã¹ã¦ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒ»ãƒ¬ãƒ™ãƒ«ã«å¯¾ã—ã¦ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -521,103 +521,103 @@
 .PP
 \-Xdoclint:none
 .RS 4
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:all[\fI/access\fR]
 .RS 4
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint
 .RS 4
-¿ä¾©¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+推奨ã•ã‚Œã‚‹ã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€åˆ©ç”¨å¯èƒ½ãªã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:all
 .RS 4
-¿ä¾©¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+推奨ã•ã‚Œã‚‹ã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€åˆ©ç”¨å¯èƒ½ãªã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:none
 .RS 4
-¤¹¤Ù¤Æ¤Î·Ù¹ð¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®è­¦å‘Šã‚’無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:\fIname\fR
 .RS 4
-·Ù¹ð̾¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤ë·Ù¹ð¤Î¥ê¥¹¥È¤Ï¡¢\-Xlint¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+警告åを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ç„¡åŠ¹ã«ã§ãる警告ã®ãƒªã‚¹ãƒˆã¯ã€\-Xlintオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xlint:\fI\-name\fR
 .RS 4
-·Ù¹ð̾¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤ë·Ù¹ð¤Î¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢\-Xlint¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½\-Xlint\fI¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+警告åを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ç„¡åŠ¹ã«ã§ãる警告ã®ãƒªã‚¹ãƒˆã‚’å–å¾—ã™ã‚‹ã«ã¯ã€\-Xlintオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–\-Xlint\fIオプションを使用ã—ãŸ\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xmaxerrs \fInumber\fR
 .RS 4
-°õºþ¤¹¤ë¥¨¥é¡¼¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£
+å°åˆ·ã™ã‚‹ã‚¨ãƒ©ãƒ¼ã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xmaxwarns \fInumber\fR
 .RS 4
-°õºþ¤¹¤ë·Ù¹ð¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£
+å°åˆ·ã™ã‚‹è­¦å‘Šã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xstdout \fIfilename\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤Î¥á¥Ã¥»¡¼¥¸¤ò¡¢»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÁ÷¿®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¥á¥Ã¥»¡¼¥¸¤Ï\fISystem\&.err\fR¤ËÁ÷¤é¤ì¤Þ¤¹¡£
+コンパイラã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’ã€æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«é€ä¿¡ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯\fISystem\&.err\fRã«é€ã‚‰ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xprefer:[\fInewer,source\fR]
 .RS 4
-¤¢¤ë·¿¤ËÂФ·¤Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¤É¤Á¤é¤Î¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ë¤«¤ò»ØÄꤷ¤Þ¤¹¡£(·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£\fI\-Xprefer:newer\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¤¢¤ë·¿¤ËÂФ¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¿·¤·¤¤Êý¤¬Æɤ߼è¤é¤ì¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È)¡£\fI\-Xprefer:source\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Æɤ߼è¤é¤ì¤Þ¤¹¡£\fISOURCE\fR¤ÎÊݸ¥Ý¥ê¥·¡¼¤ò»ÈÍѤ·¤ÆÀë¸À¤µ¤ì¤¿Ãí¼á¤ËǤ°Õ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤¬¥¢¥¯¥»¥¹¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-Xprefer:source\fR¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+ã‚ã‚‹åž‹ã«å¯¾ã—ã¦ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ã©ã¡ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚‹ã‹ã‚’指定ã—ã¾ã™ã€‚(åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„)。\fI\-Xprefer:newer\fRオプションを使用ã—ãŸå ´åˆã€ã‚ã‚‹åž‹ã«å¯¾ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡æ–°ã—ã„æ–¹ãŒèª­ã¿å–られã¾ã™(デフォルト)。\fI\-Xprefer:source\fRオプションを使用ã—ãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒèª­ã¿å–られã¾ã™ã€‚\fISOURCE\fRã®ä¿å­˜ãƒãƒªã‚·ãƒ¼ã‚’使用ã—ã¦å®£è¨€ã•ã‚ŒãŸæ³¨é‡ˆã«ä»»æ„ã®æ³¨é‡ˆãƒ—ロセッサãŒã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ã™ã‚‹å ´åˆã¯ã€\fI\-Xprefer:source\fRを使用ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xpkginfo:[\fIalways\fR,\fIlegacy\fR,\fInonempty\fR]
 .RS 4
-javac¤¬package\-info\&.java¥Õ¥¡¥¤¥ë¤«¤é\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤«¤É¤¦¤«¤òÀ©¸æ¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Êmode°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+javacãŒpackage\-info\&.javaファイルã‹ã‚‰\fIpackage\-info\&.class\fRファイルを生æˆã™ã‚‹ã‹ã©ã†ã‹ã‚’制御ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãªmode引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 always
 .RS 4
-¤¹¤Ù¤Æ¤Î\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Î\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤ò¾ï¤ËÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢³Æ\fI\&.java\fR¥Õ¥¡¥¤¥ë¤ËÂбþ¤¹¤ë\fI\&.class\fR¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤³¤È¤ò³Îǧ¤¹¤ëAnt¤Ê¤É¤Î¥Ó¥ë¥É¡¦¥·¥¹¥Æ¥à¤ò»ÈÍѤ¹¤ë¾ì¹ç¤ËÌòΩ¤Ä¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®\fIpackage\-info\&.java\fRファイルã®\fIpackage\-info\&.class\fRファイルを常ã«ç”Ÿæˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€å„\fI\&.java\fRファイルã«å¯¾å¿œã™ã‚‹\fI\&.class\fRファイルãŒã‚ã‚‹ã“ã¨ã‚’確èªã™ã‚‹Antãªã©ã®ãƒ“ルド・システムを使用ã™ã‚‹å ´åˆã«å½¹ç«‹ã¤ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 legacy
 .RS 4
-package\-info\&.java¤ËÃí¼á¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Î¤ß\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£package\-info\&.java¤Ë¥³¥á¥ó¥È¤Î¤ß´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+package\-info\&.javaã«æ³¨é‡ˆãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã®ã¿\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã™ã€‚package\-info\&.javaã«ã‚³ãƒ¡ãƒ³ãƒˆã®ã¿å«ã¾ã‚Œã‚‹å ´åˆã«\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã›ã‚“。
 .sp
-\fBÃí°Õ:\fR
-\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤ÏÀ¸À®¤Ç¤­¤Þ¤¹¤¬¡¢package\-info\&.java¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎÃí¼á¤Ë\fIRetentionPolicy\&.SOURCE\fR¤¬¤¢¤ë¾ì¹ç¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIpackage\-info\&.class\fRファイルã¯ç”Ÿæˆã§ãã¾ã™ãŒã€package\-info\&.javaファイル内ã®ã™ã¹ã¦ã®æ³¨é‡ˆã«\fIRetentionPolicy\&.SOURCE\fRãŒã‚ã‚‹å ´åˆã¯ç©ºã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 nonempty
 .RS 4
-package\-info\&.java¤Ë\fIRetentionPolicy\&.CLASS\fR¤Þ¤¿¤Ï\fIRetentionPolicy\&.RUNTIME\fR¤È¤È¤â¤ËÃí¼á¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Î¤ß\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+package\-info\&.javaã«\fIRetentionPolicy\&.CLASS\fRã¾ãŸã¯\fIRetentionPolicy\&.RUNTIME\fRã¨ã¨ã‚‚ã«æ³¨é‡ˆãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã®ã¿\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xprint
 .RS 4
-¥Ç¥Ð¥Ã¥°ÌÜŪ¤Ç»ØÄꤷ¤¿·¿¤Î¥Æ¥­¥¹¥Èɽ¼¨¤ò½ÐÎϤ·¤Þ¤¹¡£Ãí¼á½èÍý¤â¥³¥ó¥Ñ¥¤¥ë¤â¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£½ÐÎÏ·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+デãƒãƒƒã‚°ç›®çš„ã§æŒ‡å®šã—ãŸåž‹ã®ãƒ†ã‚­ã‚¹ãƒˆè¡¨ç¤ºã‚’出力ã—ã¾ã™ã€‚注釈処ç†ã‚‚コンパイルも実行ã•ã‚Œã¾ã›ã‚“。出力形å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XprintProcessorInfo
 .RS 4
-¤¢¤ëÆÃÄê¤Î¥×¥í¥»¥Ã¥µ¤¬½èÍý¤ò°ÍÍꤵ¤ì¤Æ¤¤¤ëÃí¼á¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã‚る特定ã®ãƒ—ロセッサãŒå‡¦ç†ã‚’ä¾é ¼ã•ã‚Œã¦ã„る注釈ã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XprintRounds
 .RS 4
-½é²ó¤ª¤è¤Ó¸å³¤ÎÃí¼á½èÍý¥é¥¦¥ó¥É¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+åˆå›žãŠã‚ˆã³å¾Œç¶šã®æ³¨é‡ˆå‡¦ç†ãƒ©ã‚¦ãƒ³ãƒ‰ã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
-.SH "-XLINT¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½"
+.SH "-XLINTオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–"
 .PP
-\fI\-Xlint:name\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ·Ù¹ð\fIname\fR¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIname\fR¤Ï¼¡¤Î·Ù¹ð̾¤Î¤¤¤º¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\-Xlint:\-name:\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢·Ù¹ð¤ò̵¸ú²½¤Ç¤­¤Þ¤¹¡£
+\fI\-Xlint:name\fRオプションを使用ã—ã¦è­¦å‘Š\fIname\fRを有効ã«ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIname\fRã¯æ¬¡ã®è­¦å‘Šåã®ã„ãšã‚Œã‹ã«ãªã‚Šã¾ã™ã€‚\fI\-Xlint:\-name:\fRオプションを使用ã—ã¦ã€è­¦å‘Šã‚’無効化ã§ãã¾ã™ã€‚
 .PP
 cast
 .RS 4
-ÉÔÍפǾéĹ¤Ê¥­¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+ä¸è¦ã§å†—é•·ãªã‚­ãƒ£ã‚¹ãƒˆã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -632,12 +632,12 @@
 .PP
 classfile
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤ˴ØÏ¢¤·¤¿ÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£
+クラス・ファイルã®å†…容ã«é–¢é€£ã—ãŸå•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚
 .RE
 .PP
 deprecation
 .RS 4
-Èó¿ä¾©¤Î¹àÌܤλÈÍѤˤĤ¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+éžæŽ¨å¥¨ã®é …ç›®ã®ä½¿ç”¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -649,13 +649,13 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É\fIjava\&.util\&.Date\&.getDay\fR¤ÏJDK 1\&.1°Ê¹ß¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
+メソッド\fIjava\&.util\&.Date\&.getDay\fRã¯JDK 1\&.1以é™ã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚
 .RE
 .PP
 dep\-ann
 .RS 4
 \fI@deprecated\fR
-Javadoc¥³¥á¥ó¥È¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Æ¤¤¤ë¤¬¡¢\fI@Deprecated\fRÃí¼á¤¬ÉÕ¤¤¤Æ¤¤¤Ê¤¤¹àÌܤˤĤ¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+Javadocコメントã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã¦ã„ã‚‹ãŒã€\fI@Deprecated\fR注釈ãŒä»˜ã„ã¦ã„ãªã„é …ç›®ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -674,7 +674,7 @@
 .PP
 divzero
 .RS 4
-ÄêÀ°¿ô0¤Ç½ü»»¤µ¤ì¤ë¤³¤È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+定整数0ã§é™¤ç®—ã•ã‚Œã‚‹ã“ã¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -689,7 +689,7 @@
 .PP
 empty
 .RS 4
-\fIif \fRʸ°Ê¹ß¤¬¶õ¤Îʸ¤Ç¤¢¤ë¤³¤È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIif \fR文以é™ãŒç©ºã®æ–‡ã§ã‚ã‚‹ã“ã¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -708,7 +708,7 @@
 .PP
 fallthrough
 .RS 4
-fall\-through¥±¡¼¥¹¤Îswitch¥Ö¥í¥Ã¥¯¤ò¥Á¥§¥Ã¥¯¤·¡¢¸¡½Ð¤µ¤ì¤¿¤â¤Î¤ËÂФ·¤Æ·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£Fall\-through¥±¡¼¥¹¤Ï¡¢switch¥Ö¥í¥Ã¥¯Æâ¤ÎºÇ¸å¤Î¥±¡¼¥¹¤ò½ü¤¯¥±¡¼¥¹¤Ç¤¹¡£¤³¤Î¥³¡¼¥É¤Ë¤Ïbreakʸ¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¥³¡¼¥É¤Î¼Â¹Ô¤ò¤½¤Î¥±¡¼¥¹¤«¤é¼¡¤Î¥±¡¼¥¹¤Ø°ÜÆ°¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤³¤Îswitch¥Ö¥í¥Ã¥¯Æâ¤Îcase 1¥é¥Ù¥ë¤Ë³¤¯¥³¡¼¥É¤Ï¡¢breakʸ¤Ç½ª¤ï¤Ã¤Æ¤¤¤Þ¤»¤ó¡£
+fall\-throughケースã®switchブロックをãƒã‚§ãƒƒã‚¯ã—ã€æ¤œå‡ºã•ã‚ŒãŸã‚‚ã®ã«å¯¾ã—ã¦è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚Fall\-throughケースã¯ã€switchブロック内ã®æœ€å¾Œã®ã‚±ãƒ¼ã‚¹ã‚’除ãケースã§ã™ã€‚ã“ã®ã‚³ãƒ¼ãƒ‰ã«ã¯breakæ–‡ã¯å«ã¾ã‚Œã¾ã›ã‚“。コードã®å®Ÿè¡Œã‚’ãã®ã‚±ãƒ¼ã‚¹ã‹ã‚‰æ¬¡ã®ã‚±ãƒ¼ã‚¹ã¸ç§»å‹•ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã“ã®switchブロック内ã®case 1ラベルã«ç¶šãコードã¯ã€breakæ–‡ã§çµ‚ã‚ã£ã¦ã„ã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -725,12 +725,12 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥³¡¼¥É¤Î¥³¥ó¥Ñ¥¤¥ë»þ¤Ë\fI\-Xlint:fallthrough\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢ÌäÂê¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥±¡¼¥¹¤Î¹ÔÈÖ¹æ¤È¤È¤â¤Ë¡¢case¤Ëfall\-through¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤³¤È¤ò¼¨¤¹·Ù¹ð¤òȯ¹Ô¤·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒ¼ãƒ‰ã®ã‚³ãƒ³ãƒ‘イル時ã«\fI\-Xlint:fallthrough\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€å•é¡Œã«ãªã£ã¦ã„るケースã®è¡Œç•ªå·ã¨ã¨ã‚‚ã«ã€caseã«fall\-throughã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã“ã¨ã‚’示ã™è­¦å‘Šã‚’発行ã—ã¾ã™ã€‚
 .RE
 .PP
 finally
 .RS 4
-Àµ¾ï¤Ë´°Î»¤Ç¤­¤Ê¤¤\fIfinally\fR¶ç¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+正常ã«å®Œäº†ã§ããªã„\fIfinally\fRå¥ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -750,17 +750,17 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ë´Ø¤¹¤ë·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£\fIint\fR¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤È¡¢ÃÍ0¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ï¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤¬½ªÎ»¤¹¤ë¤È¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢À©¸æ¤¬\fIcatch\fR¥Ö¥í¥Ã¥¯¤Ë°Ü¤µ¤ì¤¿¾ì¹ç¡¢\fIint\fR¥á¥½¥Ã¥É¤Ï½ªÎ»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ï¼Â¹Ô¤µ¤ì¤ëɬÍפ¬¤¢¤ë¤¿¤á¡¢À©¸æ¤¬¥á¥½¥Ã¥É¤Î³°Éô¤Ë°Ü¤µ¤ì¤Æ¤¤¤Æ¤â¡¢¤³¤Î¥Ö¥í¥Ã¥¯¤Ï¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIfinally\fRブロックã«é–¢ã™ã‚‹è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚\fIint\fRメソッドãŒå‘¼ã³å‡ºã•ã‚Œã‚‹ã¨ã€å€¤0ãŒè¿”ã•ã‚Œã¾ã™ã€‚\fIfinally\fRブロックã¯ã€\fItry\fRブロックãŒçµ‚了ã™ã‚‹ã¨å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€åˆ¶å¾¡ãŒ\fIcatch\fRブロックã«ç§»ã•ã‚ŒãŸå ´åˆã€\fIint\fRメソッドã¯çµ‚了ã—ã¾ã™ã€‚ãŸã ã—ã€\fIfinally\fRブロックã¯å®Ÿè¡Œã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚‹ãŸã‚ã€åˆ¶å¾¡ãŒãƒ¡ã‚½ãƒƒãƒ‰ã®å¤–部ã«ç§»ã•ã‚Œã¦ã„ã¦ã‚‚ã€ã“ã®ãƒ–ロックã¯å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 options
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプションã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 overrides
 .RS 4
-¥á¥½¥Ã¥É¤Î¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ë´Ø¤¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î2¤Ä¤Î¥¯¥é¥¹¤¬¤¢¤ë¤È¤·¤Þ¤¹¡£
+メソッドã®ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®2ã¤ã®ã‚¯ãƒ©ã‚¹ãŒã‚ã‚‹ã¨ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -778,7 +778,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¼¡¤Î¤è¤¦¤Ê·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯ã€æ¬¡ã®ã‚ˆã†ãªè­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -791,12 +791,12 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢\fIvarargs\fR¥á¥½¥Ã¥É¤ò¸¡½Ð¤¹¤ë¤È¡¢\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤òÇÛÎó¤ËÊÑ´¹¤·¤Þ¤¹¡£¥á¥½¥Ã¥É\fIClassWithVarargsMethod\&.varargsMethod\fR¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿\fIString\&.\&.\&. s\fR¤ò²¾¥Ñ¥é¥á¡¼¥¿\fIString[] s\fR¤ËÊÑ´¹¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥á¥½¥Ã¥É\fIClassWithOverridingMethod\&.varargsMethod\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤ËÂбþ¤¹¤ëÇÛÎó¤Ç¤¹¡£¤½¤Î·ë²Ì¡¢¤³¤ÎÎã¤Ç¤Ï¥³¥ó¥Ñ¥¤¥ë¤¬¹Ô¤ï¤ì¤Þ¤¹¡£
+コンパイラã¯ã€\fIvarargs\fRメソッドを検出ã™ã‚‹ã¨ã€\fIvarargs\fRã®ä»®ãƒ‘ラメータをé…列ã«å¤‰æ›ã—ã¾ã™ã€‚メソッド\fIClassWithVarargsMethod\&.varargsMethod\fRã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータ\fIString\&.\&.\&. s\fRを仮パラメータ\fIString[] s\fRã«å¤‰æ›ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIClassWithOverridingMethod\&.varargsMethod\fRã®ä»®ãƒ‘ラメータã«å¯¾å¿œã™ã‚‹é…列ã§ã™ã€‚ãã®çµæžœã€ã“ã®ä¾‹ã§ã¯ã‚³ãƒ³ãƒ‘イルãŒè¡Œã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 path
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¤Î̵¸ú¤Ê¥Ñ¥¹Í×ÁǤȸºß¤·¤Ê¤¤¥Ñ¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹(¥¯¥é¥¹¡¦¥Ñ¥¹¡¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Ê¤É¤Î¥Ñ¥¹´ØÏ¢)¡£¤³¤Î¤è¤¦¤Ê·Ù¹ð¤ò\fI@SuppressWarnings\fRÃí¼á¤ÇÍÞÀ©¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+コマンドラインã§ã®ç„¡åŠ¹ãªãƒ‘スè¦ç´ ã¨å­˜åœ¨ã—ãªã„パス・ディレクトリã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™(クラス・パスã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スãªã©ã®ãƒ‘ス関連)。ã“ã®ã‚ˆã†ãªè­¦å‘Šã‚’\fI@SuppressWarnings\fR注釈ã§æŠ‘制ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -811,9 +811,9 @@
 .PP
 processing
 .RS 4
-Ãí¼á½èÍý¤Ë´Ø¤¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤¬¤³¤Î·Ù¹ð¤òÀ¸À®¤¹¤ë¤Î¤Ï¡¢Ãí¼á¤ò´Þ¤à¥¯¥é¥¹¤¬¤¢¤ë¤È¤­¤Ë¡¢»ÈÍѤ·¤Æ¤¤¤ëÃí¼á¥×¥í¥»¥Ã¥µ¤Ç¤½¤Î¥¿¥¤¥×¤ÎÎã³°¤ò½èÍý¤Ç¤­¤Ê¤¤¾ì¹ç¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢Ã±½ã¤ÊÃí¼á¥×¥í¥»¥Ã¥µ¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+注釈処ç†ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚コンパイラãŒã“ã®è­¦å‘Šã‚’生æˆã™ã‚‹ã®ã¯ã€æ³¨é‡ˆã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãŒã‚ã‚‹ã¨ãã«ã€ä½¿ç”¨ã—ã¦ã„る注釈プロセッサã§ãã®ã‚¿ã‚¤ãƒ—ã®ä¾‹å¤–を処ç†ã§ããªã„å ´åˆã§ã™ã€‚ãŸã¨ãˆã°ã€å˜ç´”ãªæ³¨é‡ˆãƒ—ロセッサを次ã«ç¤ºã—ã¾ã™ã€‚
 .sp
-\fB¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëAnnocProc\&.java\fR:
+\fBソース・ファイルAnnocProc\&.java\fR:
 .sp
 .if n \{\
 .RS 4
@@ -838,7 +838,7 @@
 .if n \{\
 .RE
 .\}
-\fB¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëAnnosWithoutProcessors\&.java\fR:
+\fBソース・ファイルAnnosWithoutProcessors\&.java\fR:
 .sp
 .if n \{\
 .RS 4
@@ -852,7 +852,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Ãí¼á¥×¥í¥»¥Ã¥µ\fIAnnoProc\fR¤ò¥³¥ó¥Ñ¥¤¥ë¤·¡¢¤³¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAnnosWithoutProcessors\&.java\fR¤ËÂФ·¤Æ¼Â¹Ô¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ³¨é‡ˆãƒ—ロセッサ\fIAnnoProc\fRをコンパイルã—ã€ã“ã®æ³¨é‡ˆãƒ—ロセッサをソース・ファイル\fIAnnosWithoutProcessors\&.java\fRã«å¯¾ã—ã¦å®Ÿè¡Œã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -864,7 +864,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAnnosWithoutProcessors\&.java\fR¤ËÂФ·¤ÆÃí¼á¥×¥í¥»¥Ã¥µ¤ò¼Â¹Ô¤¹¤ë¤È¡¢¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+コンパイラãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fIAnnosWithoutProcessors\&.java\fRã«å¯¾ã—ã¦æ³¨é‡ˆãƒ—ロセッサを実行ã™ã‚‹ã¨ã€æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -876,12 +876,12 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¡¢¥¯¥é¥¹\fIAnnosWithoutProcessors\fR¤ÇÄêµÁ¤ª¤è¤Ó»ÈÍѤµ¤ì¤ëÃí¼á¤Î̾Á°¤ò¡¢\fIAnno\fR¤«¤é\fINotAnno\fR¤ËÊѹ¹¤Ç¤­¤Þ¤¹¡£
+ã“ã®å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«ã€ã‚¯ãƒ©ã‚¹\fIAnnosWithoutProcessors\fRã§å®šç¾©ãŠã‚ˆã³ä½¿ç”¨ã•ã‚Œã‚‹æ³¨é‡ˆã®åå‰ã‚’ã€\fIAnno\fRã‹ã‚‰\fINotAnno\fRã«å¤‰æ›´ã§ãã¾ã™ã€‚
 .RE
 .PP
 rawtypes
 .RS 4
-raw·¿¤ËÂФ¹¤ë̤¸¡ººÁàºî¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¼¡¤Îʸ¤Ç¤Ï¡¢\fIrawtypes\fR·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+rawåž‹ã«å¯¾ã™ã‚‹æœªæ¤œæŸ»æ“作ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚次ã®æ–‡ã§ã¯ã€\fIrawtypes\fR警告ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -892,7 +892,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIrawtypes\fR·Ù¹ð¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£
+次ã®ä¾‹ã§ã¯ã€\fIrawtypes\fR警告ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -903,12 +903,12 @@
 .if n \{\
 .RE
 .\}
-\fIList\fR¤Ïraw·¿¤Ç¤¹¡£¤¿¤À¤·¡¢\fIList<?>\fR¤Ï¡¢¥¢¥ó¥Ð¥¦¥ó¥É·Á¼°¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤Î¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿¤Ç¤¹¡£\fIList\fR¤Ï¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¢¤ë¤¿¤á¡¢¾ï¤Ë¤½¤Î·¿°ú¿ô¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fIList\fR¤Î²¾°ú¿ô¤Ï¥¢¥ó¥Ð¥¦¥ó¥É·Á¼°¤Î¥ï¥¤¥ë¥É¥«¡¼¥É(\fI?\fR)¤ò»ÈÍѤ·¤Æ¤½¤Î²¾·¿¥Ñ¥é¥á¡¼¥¿¤È¤·¤Æ»ØÄꤵ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢\fIcountElements\fR¥á¥½¥Ã¥É¤Ï\fIList\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤É¤Î¥¤¥ó¥¹¥¿¥ó¥¹²½¤â¼õ¤±ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIList\fRã¯rawåž‹ã§ã™ã€‚ãŸã ã—ã€\fIList<?>\fRã¯ã€ã‚¢ãƒ³ãƒã‚¦ãƒ³ãƒ‰å½¢å¼ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹ã§ã™ã€‚\fIList\fRã¯ãƒ‘ラメータ化ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã‚ã‚‹ãŸã‚ã€å¸¸ã«ãã®åž‹å¼•æ•°ã‚’指定ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fIList\fRã®ä»®å¼•æ•°ã¯ã‚¢ãƒ³ãƒã‚¦ãƒ³ãƒ‰å½¢å¼ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(\fI?\fR)を使用ã—ã¦ãã®ä»®åž‹ãƒ‘ラメータã¨ã—ã¦æŒ‡å®šã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€\fIcountElements\fRメソッドã¯\fIList\fRインタフェースã®ã©ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹åŒ–ã‚‚å—ã‘付ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 Serial
 .RS 4
-ľÎó²½²Äǽ¥¯¥é¥¹¤Ë\fIserialVersionUID\fRÄêµÁ¤¬¤Ê¤¤¤³¤È¤ò·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+直列化å¯èƒ½ã‚¯ãƒ©ã‚¹ã«\fIserialVersionUID\fR定義ãŒãªã„ã“ã¨ã‚’警告ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -930,7 +930,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -942,12 +942,12 @@
 .if n \{\
 .RE
 .\}
-ľÎó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥£¡¼¥ë¥É¤òÌÀ¼¨Åª¤ËÀë¸À¤·¤Ê¤¤¾ì¹ç¡¢Ä¾Îó²½¥é¥ó¥¿¥¤¥à´Ä¶­¤Ç¤Ï¡¢¡ÖJava¥ª¥Ö¥¸¥§¥¯¥ÈľÎó²½»ÅÍ͡פÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¹¤ÎÍÍ¡¹¤Ê¦Ì̤˴ð¤Å¤¤¤Æ¡¢¥¯¥é¥¹¤Î\fIserialVersionUID\fR¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò·×»»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢¤¹¤Ù¤Æ¤ÎľÎó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fRÃͤòÌÀ¼¨Åª¤ËÀë¸À¤¹¤ë¤³¤È¤ò¶¯¤¯¤ªÁ¦¤á¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢\fIserialVersionUID\fRÃͤò·×»»¤¹¤ë¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥»¥¹¤¬¡¢¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë²ÄǽÀ­¤Î¤¢¤ë¥¯¥é¥¹¤Î¾ÜºÙ¤Ë¤­¤ï¤á¤Æ±Æ¶Á¤ò¼õ¤±¤ä¤¹¤¯¡¢¤½¤Î·ë²Ì¡¢Ä¾Îó²½Éü¸µÃæ¤Ëͽ´ü¤·¤Ê¤¤\fIInvalidClassExceptions\fR¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¤Ç¤¹¡£Java¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤¬°Û¤Ê¤Ã¤Æ¤â\fIserialVersionUID\fRÃͤΰì´ÓÀ­¤ò³ÎÊݤˤ¹¤ë¤Ë¤Ï¡¢Ä¾Îó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fRÃͤòÌÀ¼¨Åª¤ËÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+直列化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fRã¨ã„ã†åå‰ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’明示的ã«å®£è¨€ã—ãªã„å ´åˆã€ç›´åˆ—化ランタイム環境ã§ã¯ã€ã€ŒJavaオブジェクト直列化仕様ã€ã§èª¬æ˜Žã•ã‚Œã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¹ã®æ§˜ã€…ãªå´é¢ã«åŸºã¥ã„ã¦ã€ã‚¯ãƒ©ã‚¹ã®\fIserialVersionUID\fRã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’計算ã—ã¾ã™ã€‚ãŸã ã—ã€ã™ã¹ã¦ã®ç›´åˆ—化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fR値を明示的ã«å®£è¨€ã™ã‚‹ã“ã¨ã‚’å¼·ããŠè–¦ã‚ã—ã¾ã™ã€‚ ã“ã‚Œã¯ã€\fIserialVersionUID\fR値を計算ã™ã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロセスãŒã€ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚‹å¯èƒ½æ€§ã®ã‚るクラスã®è©³ç´°ã«ãã‚ã‚ã¦å½±éŸ¿ã‚’å—ã‘ã‚„ã™ãã€ãã®çµæžœã€ç›´åˆ—化復元中ã«äºˆæœŸã—ãªã„\fIInvalidClassExceptions\fRãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã§ã™ã€‚Javaコンパイラã®å®Ÿè£…ãŒç•°ãªã£ã¦ã‚‚\fIserialVersionUID\fR値ã®ä¸€è²«æ€§ã‚’確ä¿ã«ã™ã‚‹ã«ã¯ã€ç›´åˆ—化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fR値を明示的ã«å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 static
 .RS 4
-static¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+staticã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -961,7 +961,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -973,7 +973,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¡¢¼¡¤Î¤è¤¦¤Ë\fIstatic\fR¥á¥½¥Ã¥É\fIm1\fR¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ã‚ˆã†ã«\fIstatic\fRメソッド\fIm1\fRを呼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -984,12 +984,12 @@
 .if n \{\
 .RE
 .\}
-¤¢¤ë¤¤¤Ï¡¢\fIstatic\fR¥­¡¼¥ï¡¼¥É¤ò¥á¥½¥Ã¥É\fIm1\fR¤ÎÀë¸À¤«¤éºï½ü¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ã‚ã‚‹ã„ã¯ã€\fIstatic\fRキーワードをメソッド\fIm1\fRã®å®£è¨€ã‹ã‚‰å‰Šé™¤ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 try
 .RS 4
-try\-with\-resourcesʸ¤ò´Þ¤à¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤ÇÀë¸À¤µ¤ì¤¿¥ê¥½¡¼¥¹\fIac\fR¤¬»ÈÍѤµ¤ì¤Ê¤¤¤¿¤á¤Ë¡¢¼¡¤Îʸ¤ËÂФ·¤Æ·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+try\-with\-resources文をå«ã‚€ã€\fItry\fRブロックã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fItry\fRブロックã§å®£è¨€ã•ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹\fIac\fRãŒä½¿ç”¨ã•ã‚Œãªã„ãŸã‚ã«ã€æ¬¡ã®æ–‡ã«å¯¾ã—ã¦è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1004,7 +1004,7 @@
 .PP
 unchecked
 .RS 4
-Java¸À¸ì»ÅÍͤǻØÄꤵ¤ì¤Æ¤¤¤ë̤¸¡ººÊÑ´¹·Ù¹ð¤Î¾ÜºÙ¤ò¼¨¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+Java言語仕様ã§æŒ‡å®šã•ã‚Œã¦ã„る未検査変æ›è­¦å‘Šã®è©³ç´°ã‚’示ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1016,19 +1016,19 @@
 .if n \{\
 .RE
 .\}
-·¿¤Î¾ÃµîÃæ¤Ë¡¢·¿\fIArrayList<Number>\fR¤ª¤è¤Ó\fIList<String>\fR¤Ï¡¢¤½¤ì¤¾¤ì\fIArrayList\fR¤ª¤è¤Ó\fIList\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+åž‹ã®æ¶ˆåŽ»ä¸­ã«ã€åž‹\fIArrayList<Number>\fRãŠã‚ˆã³\fIList<String>\fRã¯ã€ãã‚Œãžã‚Œ\fIArrayList\fRãŠã‚ˆã³\fIList\fRã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fIls\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿\fIList<String>\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£\fIl\fR¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë\fIList\fR¤¬\fIls\fR¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï̤¸¡ºº·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤ª¤è¤ÓJVM¤Ï¡¢\fIl\fR¤¬\fIList<String>\fR·¿¤ò»²¾È¤¹¤ë¤«¤É¤¦¤«¤òȽÊ̤Ǥ­¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIl\fR¤Ï¡¢\fIList<String>\fR·¿¤ò»²¾È¤·¤Þ¤»¤ó¡£¤½¤Î·ë²Ì¡¢¥Ò¡¼¥×±øÀ÷¤¬È¯À¸¤·¤Þ¤¹¡£
+\fIls\fRコマンドã«ã¯ã€ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹\fIList<String>\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚\fIl\fRã«ã‚ˆã£ã¦å‚ç…§ã•ã‚Œã‚‹\fIList\fRãŒ\fIls\fRã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯æœªæ¤œæŸ»è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚コンパイル時ã«ã€ã‚³ãƒ³ãƒ‘イラãŠã‚ˆã³JVMã¯ã€\fIl\fRãŒ\fIList<String>\fRåž‹ã‚’å‚ç…§ã™ã‚‹ã‹ã©ã†ã‹ã‚’判別ã§ãã¾ã›ã‚“。ã“ã®å ´åˆã€\fIl\fRã¯ã€\fIList<String>\fRåž‹ã‚’å‚ç…§ã—ã¾ã›ã‚“。ãã®çµæžœã€ãƒ’ープ汚染ãŒç™ºç”Ÿã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×±øÀ÷¾õÂÖ¤¬È¯À¸¤¹¤ë¤Î¤Ï¡¢\fIList\fR¥ª¥Ö¥¸¥§¥¯¥È\fIl\fR
-(¤½¤Îstatic·¿¤Ï\fIList<Number>\fR)¤¬Ê̤Î\fIList\fR¥ª¥Ö¥¸¥§¥¯¥È\fIls\fR
-(°Û¤Ê¤ëstatic·¿\fIList<String>\fR¤ò»ý¤Ä)¤ËÂåÆþ¤µ¤ì¤ë¾ì¹ç¤Ç¤¹¡£¤·¤«¤·¡¢¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¤³¤ÎÂåÆþ¤ò¤¤¤Þ¤À¤Ëµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£Áí¾Î¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤Java SE¤Î¥ê¥ê¡¼¥¹¤È¤Î²¼°Ì¸ß´¹À­¤ò³ÎÊݤ¹¤ë¤¿¤á¤Ë¡¢¤³¤ÎÂåÆþ¤òµö²Ä¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£·¿¾Ãµî¤Ë¤è¤ê¡¢\fIList<Number>\fR¤ª¤è¤Ó\fIList<String>\fR¤Ï¡¢Î¾Êý¤È¤â\fIList\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥ª¥Ö¥¸¥§¥¯¥È\fIl\fR
-(\fIList\fR¤È¤¤¤¦raw·¿¤ò»ý¤Ä)¤ò¥ª¥Ö¥¸¥§¥¯¥È\fIls\fR¤ËÂåÆþ¤¹¤ë¤³¤È¤òµö²Ä¤·¤Þ¤¹¡£
+ヒープ汚染状態ãŒç™ºç”Ÿã™ã‚‹ã®ã¯ã€\fIList\fRオブジェクト\fIl\fR
+(ãã®staticåž‹ã¯\fIList<Number>\fR)ãŒåˆ¥ã®\fIList\fRオブジェクト\fIls\fR
+(ç•°ãªã‚‹staticåž‹\fIList<String>\fRã‚’æŒã¤)ã«ä»£å…¥ã•ã‚Œã‚‹å ´åˆã§ã™ã€‚ã—ã‹ã—ã€ã‚³ãƒ³ãƒ‘イラã§ã¯ã“ã®ä»£å…¥ã‚’ã„ã¾ã ã«è¨±å¯ã—ã¦ã„ã¾ã™ã€‚ç·ç§°ã‚’サãƒãƒ¼ãƒˆã—ãªã„Java SEã®ãƒªãƒªãƒ¼ã‚¹ã¨ã®ä¸‹ä½äº’æ›æ€§ã‚’確ä¿ã™ã‚‹ãŸã‚ã«ã€ã“ã®ä»£å…¥ã‚’許å¯ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚型消去ã«ã‚ˆã‚Šã€\fIList<Number>\fRãŠã‚ˆã³\fIList<String>\fRã¯ã€ä¸¡æ–¹ã¨ã‚‚\fIList\fRã«ãªã‚Šã¾ã™ã€‚ãã®çµæžœã€ã‚³ãƒ³ãƒ‘イラã¯ã‚ªãƒ–ジェクト\fIl\fR
+(\fIList\fRã¨ã„ã†rawåž‹ã‚’æŒã¤)をオブジェクト\fIls\fRã«ä»£å…¥ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¾ã™ã€‚
 .RE
 .PP
 varargs
 .RS 4
-²ÄÊÑ°ú¿ô(\fIvarargs\fR)¥á¥½¥Ã¥É¡¢ÆäËÈó¶ñ¾Ý²½²Äǽ°ú¿ô¤ò´Þ¤à¤â¤Î¤Î»ÈÍѤ¬°ÂÁ´¤Ç¤Ê¤¤¤³¤È¤ò·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+å¯å¤‰å¼•æ•°(\fIvarargs\fR)メソッドã€ç‰¹ã«éžå…·è±¡åŒ–å¯èƒ½å¼•æ•°ã‚’å«ã‚€ã‚‚ã®ã®ä½¿ç”¨ãŒå®‰å…¨ã§ãªã„ã“ã¨ã‚’警告ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1045,10 +1045,10 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-Èó¶ñ¾Ý²½²Äǽ·¿¤Ï¡¢·¿¾ðÊ󤬼¹Իþ¤Ë´°Á´¤Ë»ÈÍÑÉÔ²Äǽ¤Ê·¿¤Ç¤¹¡£
+\fB注æ„:\fR
+éžå…·è±¡åŒ–å¯èƒ½åž‹ã¯ã€åž‹æƒ…å ±ãŒå®Ÿè¡Œæ™‚ã«å®Œå…¨ã«ä½¿ç”¨ä¸å¯èƒ½ãªåž‹ã§ã™ã€‚
 .sp
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥á¥½¥Ã¥É\fIArrayBuilder\&.addToList\fR¤ÎÄêµÁ¤Ë´Ø¤¹¤ë¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIArrayBuilder\&.addToList\fRã®å®šç¾©ã«é–¢ã™ã‚‹æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1059,21 +1059,21 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢varargs¥á¥½¥Ã¥É¤ò¸¡½Ð¤¹¤ë¤È¡¢\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤òÇÛÎó¤ËÊÑ´¹¤·¤Þ¤¹¡£¤·¤«¤·¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿¤ÎÇÛÎó¤ÎºîÀ®¤òµö²Ä¤·¤Æ¤¤¤Þ¤»¤ó¡£¥á¥½¥Ã¥É\fIArrayBuilder\&.addToList\fR¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿\fIT\&.\&.\&.\fRÍ×ÁǤò²¾¥Ñ¥é¥á¡¼¥¿\fIT[]\fRÍ×ÁÇ(ÇÛÎó)¤ËÊÑ´¹¤·¤Þ¤¹¡£¤·¤«¤·¡¢·¿¾Ãµî¤Ë¤è¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤ò\fIObject[]\fRÍ×ÁǤËÊÑ´¹¤·¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢¥Ò¡¼¥×±øÀ÷¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+コンパイラã¯ã€varargsメソッドを検出ã™ã‚‹ã¨ã€\fIvarargs\fRã®ä»®ãƒ‘ラメータをé…列ã«å¤‰æ›ã—ã¾ã™ã€‚ã—ã‹ã—ã€Javaプログラミング言語ã§ã¯ã€ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹ã®é…列ã®ä½œæˆã‚’許å¯ã—ã¦ã„ã¾ã›ã‚“。メソッド\fIArrayBuilder\&.addToList\fRã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータ\fIT\&.\&.\&.\fRè¦ç´ ã‚’仮パラメータ\fIT[]\fRè¦ç´ (é…列)ã«å¤‰æ›ã—ã¾ã™ã€‚ã—ã‹ã—ã€åž‹æ¶ˆåŽ»ã«ã‚ˆã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータを\fIObject[]\fRè¦ç´ ã«å¤‰æ›ã—ã¾ã™ã€‚ãã®çµæžœã€ãƒ’ープ汚染ãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë"
+.SH "コマンドライン引数ファイル"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤òû¤¯¤·¤¿¤ê´Ê·é¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ë¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ú¿ô(\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤ò´Þ¤à1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¾å¤Ç¤â¡¢Ç¤°Õ¤ÎŤµ¤Î\fIjavac\fR¥³¥Þ¥ó¥É¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavac\fRコマンドを短ãã—ãŸã‚Šç°¡æ½”ã«ã—ãŸã‚Šã™ã‚‹ãŸã‚ã«ã€\fIjavac\fRコマンドã«å¯¾ã™ã‚‹å¼•æ•°(\fI\-J\fRオプションを除ã)ã‚’å«ã‚€1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§ã‚‚ã€ä»»æ„ã®é•·ã•ã®\fIjavac\fRコマンドを作æˆã§ãã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavac\fR¤Î¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò¼«Í³¤ËÁȤ߹礻¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤Ï¡¢¶õÇò¤Þ¤¿¤Ï²þ¹Ôʸ»ú¤Ç¶èÀڤ뤳¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤ËËä¤á¹þ¤Þ¤ì¤¿¶õÇò¤¬¤¢¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾Á´ÂΤòÆó½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£
+引数ファイルã«ã¯ã€\fIjavac\fRã®ã‚ªãƒ—ションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを自由ã«çµ„ã¿åˆã›ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ファイル内ã®å¼•æ•°ã¯ã€ç©ºç™½ã¾ãŸã¯æ”¹è¡Œæ–‡å­—ã§åŒºåˆ‡ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ファイルåã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç©ºç™½ãŒã‚ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«å全体を二é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ǤϤʤ¯¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ê¥¹¥È¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É(*)¤Ï»ÈÍѤǤ­¤Þ¤»¤ó(¤¿¤È¤¨¤Ð¡¢\fI*\&.java\fR¤È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó)¡£¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤¿¥Õ¥¡¥¤¥ë¤ÎºÆµ¢Åª¤Ê²ò¼á¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤â¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïµ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤Þ¤¹¤¬¡¢µ¯Æ°¥Ä¡¼¥ë¤Ç¤Ï°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¤«¤é¤Ç¤¹¡£
+引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã§ã¯ãªãã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ã“れらã®ãƒªã‚¹ãƒˆã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(*)ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“(ãŸã¨ãˆã°ã€\fI*\&.java\fRã¨ã¯æŒ‡å®šã§ãã¾ã›ã‚“)。アットマーク(@)を使用ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã®å†å¸°çš„ãªè§£é‡ˆã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã¾ãŸã€\fI\-J\fRオプションもサãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯èµ·å‹•ãƒ„ールã«æ¸¡ã•ã‚Œã¾ã™ãŒã€èµ·å‹•ãƒ„ールã§ã¯å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ãªã„ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢³Æ°ú¿ô¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È̾Á°¤ÎÀèƬ¤Ë¥¢¥Ã¥È¥Þ¡¼¥¯(@)ʸ»ú¤òÉÕ¤±¤ÆÅϤ·¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjavac\fRコマンドを実行ã™ã‚‹ã¨ãã«ã€å„引数ファイルã®ãƒ‘スã¨åå‰ã®å…ˆé ­ã«ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)文字を付ã‘ã¦æ¸¡ã—ã¾ã™ã€‚\fIjavac\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 1\fR, å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-\fIargfile\fR¤È¤¤¤¦Ì¾Á°¤Îñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¤¹¤Ù¤Æ¤Î\fIjavac\fR°ú¿ô¤ò³ÊǼ¤¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fIargfile\fRã¨ã„ã†åå‰ã®å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ã™ã¹ã¦ã®\fIjavac\fR引数を格ç´ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1084,14 +1084,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Îã2¤Ç¼¨¤µ¤ì¤Æ¤¤¤ëξÊý¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòÆþ¤ì¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ä¾‹2ã§ç¤ºã•ã‚Œã¦ã„る両方ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を入れるã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
-\fBExample 2\fR, 2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 2\fR, 2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-\fIjavac\fR¥ª¥×¥·¥ç¥óÍѤȥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾ÍѤˡ¢2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥ê¥¹¥È¤Ë¤Ï¡¢¹Ô¤Î·Ñ³ʸ»ú¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+\fIjavac\fRオプション用ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å用ã«ã€2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚次ã®ãƒªã‚¹ãƒˆã«ã¯ã€è¡Œã®ç¶™ç¶šæ–‡å­—ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¼¡¤ò´Þ¤àoptions¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次をå«ã‚€optionsã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1113,7 +1113,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ò´Þ¤àclasses¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次をå«ã‚€classesã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1126,7 +1126,7 @@
 .if n \{\
 .RE
 .\}
-¤½¤ì¤«¤é¡¢¼¡¤Î¤è¤¦¤Ë\fIjavac\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ãã‚Œã‹ã‚‰ã€æ¬¡ã®ã‚ˆã†ã«\fIjavac\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1139,9 +1139,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥Ñ¥¹¤ò»ÈÍѤ·¤¿°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 3\fR, パスを使用ã—ãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢(\fIpath1\fR¤ä\fIpath2\fR¤Ç¤Ï¤Ê¤¯)¼¡¤Î¤è¤¦¤Ë¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€(\fIpath1\fRã‚„\fIpath2\fRã§ã¯ãªã)次ã®ã‚ˆã†ã«ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1153,46 +1153,46 @@
 .RE
 .\}
 .RE
-.SH "Ãí¼á½èÍý"
+.SH "注釈処ç†"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤¬Ãí¼á½èÍý¤òľÀÜ¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢ÆÈΩ¤·¤¿Ãí¼á½èÍý¥³¥Þ¥ó¥É¤Ç¤¢¤ë\fIapt\fR¤ò»ÈÍѤ¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£
+\fIjavac\fRコマンドãŒæ³¨é‡ˆå‡¦ç†ã‚’直接サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€ç‹¬ç«‹ã—ãŸæ³¨é‡ˆå‡¦ç†ã‚³ãƒžãƒ³ãƒ‰ã§ã‚ã‚‹\fIapt\fRを使用ã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã—ãŸã€‚
 .PP
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ÎAPI¤Ï¡¢\fIjavax\&.annotation\&.processing\fR¤ª¤è¤Ó\fIjavax\&.lang\&.model\fR¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.SS "Ãí¼á½èÍý¤ò¹Ô¤¦ÊýË¡"
+注釈プロセッサã®APIã¯ã€\fIjavax\&.annotation\&.processing\fRãŠã‚ˆã³\fIjavax\&.lang\&.model\fRパッケージã¨ãã®ã‚µãƒ–パッケージ内ã«å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.SS "注釈処ç†ã‚’è¡Œã†æ–¹æ³•"
 .PP
-\fI\-proc:none\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÃí¼á½èÍý¤¬Ìµ¸ú²½¤µ¤ì¤Ê¤¤¸Â¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤ò¸¡º÷¤·¤Þ¤¹¡£¸¡º÷¥Ñ¥¹¤Ï¡¢\fI\-processorpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥×¥í¥»¥Ã¥µ¤Î¸¡º÷¤Ï¡¢¸¡º÷¥Ñ¥¹¾å¤Î\fIMETA\-INF/services/javax\&.annotation\&.processing\fR\&.Processor¤È¤¤¤¦Ì¾Á°¤Î¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¹½À®¥Õ¥¡¥¤¥ë¤Ë´ð¤Å¤¤¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢»ÈÍѤ¹¤ë¤¹¤Ù¤Æ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤Î̾Á°¤ò¡¢1¹Ô¤Ë1¤Ä¤º¤Ä´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢Ê̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-processor\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥×¥í¥»¥Ã¥µ¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-proc:none\fRオプションã«ã‚ˆã£ã¦æ³¨é‡ˆå‡¦ç†ãŒç„¡åŠ¹åŒ–ã•ã‚Œãªã„é™ã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®æ³¨é‡ˆãƒ—ロセッサを検索ã—ã¾ã™ã€‚検索パスã¯ã€\fI\-processorpath\fRオプションを使用ã—ã¦æŒ‡å®šã§ãã¾ã™ã€‚パスを指定ã—ãªã„å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚プロセッサã®æ¤œç´¢ã¯ã€æ¤œç´¢ãƒ‘ス上ã®\fIMETA\-INF/services/javax\&.annotation\&.processing\fR\&.Processorã¨ã„ã†åå‰ã®ã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã«åŸºã¥ã„ã¦è¡Œã‚ã‚Œã¾ã™ã€‚ã“ã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ä½¿ç”¨ã™ã‚‹ã™ã¹ã¦ã®æ³¨é‡ˆãƒ—ロセッサã®åå‰ã‚’ã€1è¡Œã«1ã¤ãšã¤å«ã‚ã¦ãã ã•ã„。ã¾ãŸã€åˆ¥ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-processor\fRオプションを使用ã—ã¦ãƒ—ロセッサを明示的ã«æŒ‡å®šã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ä¥¯¥é¥¹¤òÁöºº¤¹¤ë¤³¤È¤Ç¡¢¤É¤Î¤è¤¦¤ÊÃí¼á¤¬Â¸ºß¤·¤Æ¤¤¤ë¤«¤ò³Îǧ¤·½ª¤ï¤ë¤È¡¢¥×¥í¥»¥Ã¥µ¤ËÂФ·¤ÆÌä¹ç¤»¤ò¹Ô¤¤¡¢¤½¤ì¤é¤Î¥×¥í¥»¥Ã¥µ¤¬¤É¤ÎÃí¼á¤ò½èÍý¤Ç¤­¤ë¤Î¤«¤ò³Îǧ¤·¤Þ¤¹¡£°ìÃפ¹¤ë¤â¤Î¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥×¥í¥»¥Ã¥µ¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£³Æ¥×¥í¥»¥Ã¥µ¤Ï¡¢¼«¿È¤¬½èÍý¤¹¤ëÃí¼á¤òÍ×µá¤Ç¤­¤Þ¤¹¡£¤½¤Î¾ì¹ç¡¢¤½¤ì¤é¤ÎÃí¼á¤ËÂФ¹¤ëÊÌ¤Î¥×¥í¥»¥Ã¥µ¤ò¸«¤Ä¤±¤ë»î¤ß¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£¤¹¤Ù¤Æ¤ÎÃí¼á¤¬Í׵ᤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤½¤ì°Ê¾å¥×¥í¥»¥Ã¥µ¤Î¸¡º÷¤ò¹Ô¤¤¤Þ¤»¤ó¡£
+コンパイラã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚„クラスを走査ã™ã‚‹ã“ã¨ã§ã€ã©ã®ã‚ˆã†ãªæ³¨é‡ˆãŒå­˜åœ¨ã—ã¦ã„ã‚‹ã‹ã‚’確èªã—終ã‚ã‚‹ã¨ã€ãƒ—ロセッサã«å¯¾ã—ã¦å•åˆã›ã‚’è¡Œã„ã€ãれらã®ãƒ—ロセッサãŒã©ã®æ³¨é‡ˆã‚’処ç†ã§ãã‚‹ã®ã‹ã‚’確èªã—ã¾ã™ã€‚一致ã™ã‚‹ã‚‚ã®ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ãƒ—ロセッサãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚å„プロセッサã¯ã€è‡ªèº«ãŒå‡¦ç†ã™ã‚‹æ³¨é‡ˆã‚’è¦æ±‚ã§ãã¾ã™ã€‚ãã®å ´åˆã€ãれらã®æ³¨é‡ˆã«å¯¾ã™ã‚‹åˆ¥ã®ãƒ—ロセッサを見ã¤ã‘る試ã¿ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。ã™ã¹ã¦ã®æ³¨é‡ˆãŒè¦æ±‚ã•ã‚Œã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã¯ãれ以上プロセッサã®æ¤œç´¢ã‚’è¡Œã„ã¾ã›ã‚“。
 .PP
-¤¤¤º¤ì¤«¤Î¥×¥í¥»¥Ã¥µ¤Ë¤è¤Ã¤Æ¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤ë¤È¡¢Ãí¼á½èÍý¤Î2²óÌܤΥ饦¥ó¥É¤¬³«»Ï¤µ¤ì¤Þ¤¹¡£¿·¤·¤¯À¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥¹¥­¥ã¥ó¤µ¤ì¡¢Á°²ó¤ÈƱÍͤËÃí¼á¤¬½èÍý¤µ¤ì¤Þ¤¹¡£°ÊÁ°¤Î¥é¥¦¥ó¥É¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¥×¥í¥»¥Ã¥µ¤Ï¤¹¤Ù¤Æ¡¢¸å³¤Î¤É¤Î¥é¥¦¥ó¥É¤Ç¤â¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬¡¢¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤¯¤Ê¤ë¤Þ¤Ç³¤­¤Þ¤¹¡£
+ã„ãšã‚Œã‹ã®ãƒ—ロセッサã«ã‚ˆã£ã¦æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œã‚‹ã¨ã€æ³¨é‡ˆå‡¦ç†ã®2回目ã®ãƒ©ã‚¦ãƒ³ãƒ‰ãŒé–‹å§‹ã•ã‚Œã¾ã™ã€‚æ–°ã—ã生æˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚¹ã‚­ãƒ£ãƒ³ã•ã‚Œã€å‰å›žã¨åŒæ§˜ã«æ³¨é‡ˆãŒå‡¦ç†ã•ã‚Œã¾ã™ã€‚以å‰ã®ãƒ©ã‚¦ãƒ³ãƒ‰ã§å‘¼ã³å‡ºã•ã‚ŒãŸãƒ—ロセッサã¯ã™ã¹ã¦ã€å¾Œç¶šã®ã©ã®ãƒ©ã‚¦ãƒ³ãƒ‰ã§ã‚‚呼ã³å‡ºã•ã‚Œã¾ã™ã€‚ã“ã‚ŒãŒã€æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œãªããªã‚‹ã¾ã§ç¶šãã¾ã™ã€‚
 .PP
-¤¢¤ë¥é¥¦¥ó¥É¤Ç¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢Ãí¼á¥×¥í¥»¥Ã¥µ¤¬¤¢¤È1²ó¤Î¤ß¸Æ¤Ó½Ð¤µ¤ì¡¢»Ä¤ê¤Î½èÍý¤ò¼Â¹Ô¤¹¤ëµ¡²ñ¤¬Í¿¤¨¤é¤ì¤Þ¤¹¡£ºÇ¸å¤Ë¡¢\fI\-proc:only\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤¤¤«¤®¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¸µ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈÀ¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SS "°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+ã‚るラウンドã§æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œãªã‹ã£ãŸå ´åˆã€æ³¨é‡ˆãƒ—ロセッサãŒã‚ã¨1回ã®ã¿å‘¼ã³å‡ºã•ã‚Œã€æ®‹ã‚Šã®å‡¦ç†ã‚’実行ã™ã‚‹æ©Ÿä¼šãŒä¸Žãˆã‚‰ã‚Œã¾ã™ã€‚最後ã«ã€\fI\-proc:only\fRオプションãŒä½¿ç”¨ã•ã‚Œãªã„ã‹ãŽã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯ã€å…ƒã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ç”Ÿæˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コンパイルã—ã¾ã™ã€‚
+.SS "暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢°ìÏ¢¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ëºÝ¤Ë¡¢Ê̤Υ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò°ÅÌÛŪ¤Ë¥í¡¼¥É¤¹¤ë¤³¤È¤¬É¬Íפʾì¹ç¤¬¤¢¤ê¤Þ¤¹¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤½¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ï¡¢¸½»þÅÀ¤Ç¤ÏÃí¼á½èÍý¤ÎÂоݤˤʤê¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Ãí¼á½èÍý¤¬¼Â¹Ô¤µ¤ì¡¢¤«¤Ä°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿Ç¤°Õ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï·Ù¹ð¤òȯ¹Ô¤·¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢·Ù¹ð¤òÍÞÀ©¤¹¤ëÊýË¡¤¬Ä󶡤µ¤ì¤Þ¤¹¡£
-.SH "·¿¤Î¸¡º÷"
+コンパイラã¯ã€ä¸€é€£ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コンパイルã™ã‚‹éš›ã«ã€åˆ¥ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã“ã¨ãŒå¿…è¦ãªå ´åˆãŒã‚ã‚Šã¾ã™ã€‚åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ãã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾æ™‚点ã§ã¯æ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã«ãªã‚Šã¾ã›ã‚“。デフォルトã§ã¯ã€æ³¨é‡ˆå‡¦ç†ãŒå®Ÿè¡Œã•ã‚Œã€ã‹ã¤æš—黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸä»»æ„ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯è­¦å‘Šã‚’発行ã—ã¾ã™ã€‚\fI\-implicit\fRオプションã§ã¯ã€è­¦å‘Šã‚’抑制ã™ã‚‹æ–¹æ³•ãŒæä¾›ã•ã‚Œã¾ã™ã€‚
+.SH "åž‹ã®æ¤œç´¢"
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤ÏÄ̾·¿¤Ë´Ø¤¹¤ë¾ðÊó¤òɬÍפȤ·¤Þ¤¹¤¬¡¢¤½¤Î·¿¤ÎÄêµÁ¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ê¤Þ¤»¤ó¡£¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤¢¤ë¤¤¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¹¤Ù¤Æ¤Ë¤Ä¤¤¤Æ¡¢·¿¤Î¾ðÊó¤òɬÍפȤ·¤Þ¤¹¡£¤³¤ì¤Ë¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÇÌÀ¼¨Åª¤Ë¤Ï¸ÀµÚ¤µ¤ì¤Æ¤¤¤Ê¤¯¤Æ¤â¡¢·Ñ¾µ¤òÄ̤¸¤Æ¾ðÊó¤òÄ󶡤¹¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤â´Þ¤Þ¤ì¤Þ¤¹¡£
+ソース・ファイルをコンパイルã™ã‚‹ãŸã‚ã«ã€ã‚³ãƒ³ãƒ‘イラã¯é€šå¸¸ã€åž‹ã«é–¢ã™ã‚‹æƒ…報を必è¦ã¨ã—ã¾ã™ãŒã€ãã®åž‹ã®å®šç¾©ã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã—ãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚ã‚Šã¾ã›ã‚“。コンパイラã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ä½¿ç”¨ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€æ‹¡å¼µã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚ã‚‹ã„ã¯å®Ÿè£…ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã™ã¹ã¦ã«ã¤ã„ã¦ã€åž‹ã®æƒ…報を必è¦ã¨ã—ã¾ã™ã€‚ã“ã‚Œã«ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§æ˜Žç¤ºçš„ã«ã¯è¨€åŠã•ã‚Œã¦ã„ãªãã¦ã‚‚ã€ç¶™æ‰¿ã‚’通ã˜ã¦æƒ…報をæä¾›ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚‚å«ã¾ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥µ¥Ö¥¯¥é¥¹\fIjava\&.applet\&.Applet\fR¤òºîÀ®¤¹¤ë¤È¡¢\fI¥¢¥×¥ì¥Ã¥È\fR¤ÎÁÄÀè¤Î¥¯¥é¥¹(\fIjava\&.awt\&.Panel\fR¡¢\fIjava\&.awt\&.Container\fR¡¢\fIjava\&.awt\&.Component\fR¤ª¤è¤Ó\fIjava\&.lang\&.Object\fR)¤ò»ÈÍѤ·¤Æ¤¤¤ë¤³¤È¤Ë¤â¤Ê¤ê¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚µãƒ–クラス\fIjava\&.applet\&.Applet\fRを作æˆã™ã‚‹ã¨ã€\fIアプレット\fRã®ç¥–å…ˆã®ã‚¯ãƒ©ã‚¹(\fIjava\&.awt\&.Panel\fRã€\fIjava\&.awt\&.Container\fRã€\fIjava\&.awt\&.Component\fRãŠã‚ˆã³\fIjava\&.lang\&.Object\fR)を使用ã—ã¦ã„ã‚‹ã“ã¨ã«ã‚‚ãªã‚Šã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢·¿¤Î¾ðÊó¤¬É¬Íפˤʤë¤È¡¢¤½¤Î·¿¤òÄêµÁ¤·¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤Þ¤º¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤È³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò¸¡º÷¤·¡¢Â³¤¤¤Æ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹(¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê)¤ò¸¡º÷¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï¡¢\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤òÀßÄꤷ¤ÆÄêµÁ¤¹¤ë¤«¡¢¤Þ¤¿¤Ï\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÄêµÁ¤·¤Þ¤¹¡£
+コンパイラã¯ã€åž‹ã®æƒ…å ±ãŒå¿…è¦ã«ãªã‚‹ã¨ã€ãã®åž‹ã‚’定義ã—ã¦ã„るソース・ファイルã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ã¾ãšã€ãƒ–ートストラップ・クラスã¨æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã€ç¶šã„ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス(デフォルトã§ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª)を検索ã—ã¾ã™ã€‚ユーザー・クラス・パスã¯ã€\fICLASSPATH\fR環境変数を設定ã—ã¦å®šç¾©ã™ã‚‹ã‹ã€ã¾ãŸã¯\fI\-classpath\fRオプションを使用ã—ã¦å®šç¾©ã—ã¾ã™ã€‚
 .PP
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤ò¸¡º÷¤·¤Þ¤¹¡£
+\fI\-sourcepath\fRオプションãŒè¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘スã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã‹ã‚‰ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ã‚’検索ã—ã¾ã™ã€‚
 .PP
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê̤Υ֡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ä³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-bootclasspath\fRオプションãŠã‚ˆã³\fI\-extdirs\fRオプションを使用ã—ã¦ã€åˆ¥ã®ãƒ–ートストラップ・クラスや拡張機能クラスを指定ã§ãã¾ã™ã€‚クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-·¿¤Î¸¡º÷¤ËÀ®¸ù¤·¤¿¤È¤­¤ËÆÀ¤é¤ì¤ë·ë²Ì¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤½¤ÎξÊý¤Ç¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£Î¾Êý¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¤É¤Á¤é¤ò»ÈÍѤ¹¤ë¤«¤ò\fI\-Xprefer\fR¥ª¥×¥·¥ç¥ó¤Ç¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤Ç¤­¤Þ¤¹¡£\fInewer\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¿·¤·¤¤Êý¤ò»ÈÍѤ·¤Þ¤¹¡£\fIsource\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fInewer\fR¤Ç¤¹¡£
+åž‹ã®æ¤œç´¢ã«æˆåŠŸã—ãŸã¨ãã«å¾—られるçµæžœã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã¾ãŸã¯ãã®ä¸¡æ–¹ã§ã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚両方ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ã©ã¡ã‚‰ã‚’使用ã™ã‚‹ã‹ã‚’\fI\-Xprefer\fRオプションã§ã‚³ãƒ³ãƒ‘イラã«æŒ‡ç¤ºã§ãã¾ã™ã€‚\fInewer\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡æ–°ã—ã„方を使用ã—ã¾ã™ã€‚\fIsource\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¾ã™ã€‚デフォルトã¯\fInewer\fRã§ã™ã€‚
 .PP
-·¿¤Î¸¡º÷¼«ÂΤˤè¤Ã¤Æ¡¢¤Þ¤¿¤Ï\fI\-Xprefer\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤¿·ë²Ì¤È¤·¤ÆɬÍפʷ¿¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¡¢É¬ÍפʾðÊó¤ò¼èÆÀ¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¤â¹Ô¤¤¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤ÎÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fInone\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£\fIclass\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+åž‹ã®æ¤œç´¢è‡ªä½“ã«ã‚ˆã£ã¦ã€ã¾ãŸã¯\fI\-Xprefer\fRオプションãŒè¨­å®šã•ã‚ŒãŸçµæžœã¨ã—ã¦å¿…è¦ãªåž‹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚Šã€å¿…è¦ãªæƒ…報をå–å¾—ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ³ãƒ‘イルも行ã„ã¾ã™ã€‚\fI\-implicit\fRオプションを使用ã—ã¦ãã®å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚\fInone\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。\fIclass\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Ãí¼á½èÍý¤¬´°Î»¤¹¤ë¤Þ¤Ç¡¢¤¢¤ë·¿¾ðÊó¤ÎɬÍ×À­¤òǧ¼±¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£·¿¾ðÊ󤬥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¸«¤Ä¤«¤ê¡¢¤«¤Ä\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬Ãí¼á½èÍý¤ÎÂоݤȤʤ餺¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¤³¤È¤¬·Ù¹ð¤µ¤ì¤Þ¤¹¡£¤³¤Î·Ù¹ð¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢(¤½¤Î¥Õ¥¡¥¤¥ë¤¬Ãí¼á½èÍý¤ÎÂоݤȤʤë¤è¤¦¤Ë)¤½¤Î¥Õ¥¡¥¤¥ë¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤«¡¢¤¢¤ë¤¤¤Ï¤½¤Î¤è¤¦¤Ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¤«¤É¤¦¤«¤ò\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄꤷ¤Þ¤¹¡£
-.SH "¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+コンパイラã¯ã€æ³¨é‡ˆå‡¦ç†ãŒå®Œäº†ã™ã‚‹ã¾ã§ã€ã‚る型情報ã®å¿…è¦æ€§ã‚’èªè­˜ã—ãªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚型情報ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«è¦‹ã¤ã‹ã‚Šã€ã‹ã¤\fI\-implicit\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã¨ãªã‚‰ãšã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ã“ã¨ãŒè­¦å‘Šã•ã‚Œã¾ã™ã€‚ã“ã®è­¦å‘Šã‚’無効ã«ã™ã‚‹ã«ã¯ã€(ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã¨ãªã‚‹ã‚ˆã†ã«)ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コマンドラインã«æŒ‡å®šã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ãã®ã‚ˆã†ãªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã‹ã©ã†ã‹ã‚’\fI\-implicit\fRオプションを使用ã—ã¦æŒ‡å®šã—ã¾ã™ã€‚
+.SH "プログラマティック・インタフェース"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavax\&.tools\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤ë¿·¤·¤¤Java Compiler API¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.SS "Îã"
+\fIjavac\fRコマンドã¯ã€\fIjavax\&.tools\fRパッケージ内ã®ã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã‚‹æ–°ã—ã„Java Compiler APIをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.SS "例"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»ØÄꤹ¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¹½Ê¸¤ò»ÈÍѤ·¤Þ¤¹¡£
+コマンドライン引数を指定ã™ã‚‹ã‚ˆã†ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã«ã¯ã€æ¬¡ã®æ§‹æ–‡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1205,15 +1205,15 @@
 .RE
 .\}
 .PP
-Îã¤Ç¤Ï¡¢¿ÇÃǤòɸ½à½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë½ñ¤­¹þ¤ß¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¤Î¸Æ½Ð¤·»þ¤Ë\fIjavac\fR¤¬»ØÄꤹ¤ë½ªÎ»¥³¡¼¥É¤òÊÖ¤·¤Þ¤¹¡£
+例ã§ã¯ã€è¨ºæ–­ã‚’標準出力ストリームã«æ›¸ãè¾¼ã¿ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰ã®å‘¼å‡ºã—時ã«\fIjavac\fRãŒæŒ‡å®šã™ã‚‹çµ‚了コードを返ã—ã¾ã™ã€‚
 .PP
-\fIjavax\&.tools\&.JavaCompiler\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾¤Î¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¿ÇÃǤνèÍý¤ä¥Õ¥¡¥¤¥ë¤ÎÆɼè¤ê¸µ/½ñ¹þ¤ßÀè¤ÎÀ©¸æ¤Ê¤É¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.SS "µì¼°¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+\fIjavax\&.tools\&.JavaCompiler\fRインタフェースã®ä»–ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’使用ã™ã‚‹ã¨ã€è¨ºæ–­ã®å‡¦ç†ã‚„ファイルã®èª­å–ã‚Šå…ƒ/書込ã¿å…ˆã®åˆ¶å¾¡ãªã©ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚
+.SS "æ—§å¼ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹"
 .PP
-\fBÃí°Õ:\fR
-¤³¤ÎAPI¤Ï¡¢²¼°Ì¸ß´¹À­¤Î¤¿¤á¤Ë¤Î¤ßÊÝ»ý¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¿·¤·¤¤¥³¡¼¥É¤Ï¡¢¿·¤·¤¤Java Compiler API¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®APIã¯ã€ä¸‹ä½äº’æ›æ€§ã®ãŸã‚ã«ã®ã¿ä¿æŒã•ã‚Œã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®æ–°ã—ã„コードã¯ã€æ–°ã—ã„Java Compiler APIを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¼¡¤Î¤è¤¦¤Ë¡¢\fIcom\&.sun\&.tools\&.javac\&.Main\fR¥¯¥é¥¹¤Ë¤Ï¡¢¥×¥í¥°¥é¥à¤«¤é¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤¹¤¿¤á¤Îstatic¥á¥½¥Ã¥É¤¬2¤ÄÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIcom\&.sun\&.tools\&.javac\&.Main\fRクラスã«ã¯ã€ãƒ—ログラムã‹ã‚‰ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã™ãŸã‚ã®staticメソッドãŒ2ã¤ç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1226,21 +1226,21 @@
 .RE
 .\}
 .PP
-\fIargs\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢Ä̾拾¥ó¥Ñ¥¤¥é¤ËÅϤµ¤ì¤ëǤ°Õ¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIargs\fRパラメータã¯ã€é€šå¸¸ã‚³ãƒ³ãƒ‘イラã«æ¸¡ã•ã‚Œã‚‹ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã‚’表ã—ã¦ã„ã¾ã™ã€‚
 .PP
-\fIout\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¿ÇÃǽÐÎϤΰ¸Àè¤ò¼¨¤·¤Þ¤¹¡£
+\fIout\fRパラメータã¯ã€ã‚³ãƒ³ãƒ‘イラã®è¨ºæ–­å‡ºåŠ›ã®å®›å…ˆã‚’示ã—ã¾ã™ã€‚
 .PP
-\fIreturn\fRÃͤϡ¢\fIjavac\fR¤Î\fIexit\fRÃͤÈƱ¤¸¤Ç¤¹¡£
+\fIreturn\fR値ã¯ã€\fIjavac\fRã®\fIexit\fR値ã¨åŒã˜ã§ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-̾Á°¤¬\fIcom\&.sun\&.tools\&.javac\fR¤Ç»Ï¤Þ¤ë¥Ñ¥Ã¥±¡¼¥¸(\fIcom\&.sun\&.tools\&.javac\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¸¡½Ð¤µ¤ì¤ë¾¤Î¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ª¤è¤Ó¥á¥½¥Ã¥É¤Ï¡¢´°Á´¤ËÆâÉôÍѤǤ¢¤ê¡¢¤¤¤Ä¤Ç¤âÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SH "Îã"
+\fB注æ„:\fR
+åå‰ãŒ\fIcom\&.sun\&.tools\&.javac\fRã§å§‹ã¾ã‚‹ãƒ‘ッケージ(\fIcom\&.sun\&.tools\&.javac\fRã®ã‚µãƒ–パッケージ)ã§æ¤œå‡ºã•ã‚Œã‚‹ä»–ã®ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€å®Œå…¨ã«å†…部用ã§ã‚ã‚Šã€ã„ã¤ã§ã‚‚変更ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "例"
 .PP
-\fBExample 1\fR, ´Êñ¤Ê¥×¥í¥°¥é¥à¤Î¥³¥ó¥Ñ¥¤¥ë
+\fBExample 1\fR, ç°¡å˜ãªãƒ—ログラムã®ã‚³ãƒ³ãƒ‘イル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢greetings¥Ç¥£¥ì¥¯¥È¥ê¤Ç\fIHello\&.java\fR¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ëÊýË¡¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£\fIHello\&.java\fR¤ÇÄêµÁ¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢\fIgreetings\&.Hello\fR¤È¸Æ¤Ð¤ì¤Þ¤¹¡£greetings¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤¬¤¢¤ë¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î¤¹¤°²¼¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ò»ÈÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤Þ¤¿¡¢\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ̤νÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ëɬÍפ⤢¤ê¤Þ¤»¤ó¡£
+ã“ã®ä¾‹ã§ã¯ã€greetingsディレクトリã§\fIHello\&.java\fRソース・ファイルをコンパイルã™ã‚‹æ–¹æ³•ã‚’示ã—ã¦ã„ã¾ã™ã€‚\fIHello\&.java\fRã§å®šç¾©ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€\fIgreetings\&.Hello\fRã¨å‘¼ã°ã‚Œã¾ã™ã€‚greetingsディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ãŒã‚るパッケージ・ディレクトリã§ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ã™ã下ã«ã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スを使用ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ã¾ãŸã€\fI\-d\fRオプションを使用ã—ã¦åˆ¥ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã™ã‚‹å¿…è¦ã‚‚ã‚ã‚Šã¾ã›ã‚“。
 .sp
-\fIHello\&.java\fRÆâ¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+\fIHello\&.java\fR内ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1259,7 +1259,7 @@
 .if n \{\
 .RE
 .\}
-greetings\&.Hello¤Î¥³¥ó¥Ñ¥¤¥ë:
+greetings\&.Helloã®ã‚³ãƒ³ãƒ‘イル:
 .sp
 .if n \{\
 .RS 4
@@ -1270,7 +1270,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hello\fR¤Î¼Â¹Ô:
+\fIgreetings\&.Hello\fRã®å®Ÿè¡Œ:
 .sp
 .if n \{\
 .RS 4
@@ -1286,9 +1286,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, Ê£¿ô¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë
+\fBExample 2\fR, 複数ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ³ãƒ‘イル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAloha\&.java\fR¡¢\fIGutenTag\&.java\fR¡¢\fIHello\&.java\fR¤ª¤è¤Ó\fIHi\&.java\fR¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIgreetings\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fIAloha\&.java\fRã€\fIGutenTag\&.java\fRã€\fIHello\&.java\fRãŠã‚ˆã³\fIHi\&.java\fRをコンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1304,9 +1304,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Î»ØÄê
+\fBExample 3\fR, ユーザー・クラス・パスã®æŒ‡å®š
 .RS 4
-Á°½Ò¤ÎÎã¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¦¤Á1¤Ä¤òÊѹ¹¤·¤¿¸å¤Ë¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤òºÆ¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+å‰è¿°ã®ä¾‹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡1ã¤ã‚’変更ã—ãŸå¾Œã«ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1319,7 +1319,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hi\fR¤Ï\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¾¤Î¥¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤³¤ì¤é¤Î¾¤Î¥¯¥é¥¹¤òõ¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ë¤¿¤á¡¢Á°½Ò¤ÎÎã¤ÏÆ°ºî¤·¤Þ¤¹¡£¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òµ¤¤Ë¤»¤º¤Ë¤³¤Î¥Õ¥¡¥¤¥ë¤òºÆ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¡¢\fICLASSPATH\fR¤òÀßÄꤷ¤Æ¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÎã¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲä·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£
+\fIgreetings\&.Hi\fRã¯\fIgreetings\fRパッケージ内ã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚³ãƒ³ãƒ‘イラã¯ã“れらã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‚’探ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚デフォルトã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã¯ãƒ‘ッケージ・ディレクトリをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã‚ã‚‹ãŸã‚ã€å‰è¿°ã®ä¾‹ã¯å‹•ä½œã—ã¾ã™ã€‚ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’æ°—ã«ã›ãšã«ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†ã‚³ãƒ³ãƒ‘イルã™ã‚‹å ´åˆã€\fICLASSPATH\fRを設定ã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«ä¾‹ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’追加ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-classpath\fRオプションを使用ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1330,7 +1330,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hi\fR¤òÊѹ¹¤·¤Æ¥Ð¥Ê¡¼¡¦¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¤·¤¿¾ì¹ç¡¢ ¤½¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤â¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤òÄ̤¸¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIgreetings\&.Hi\fRを変更ã—ã¦ãƒãƒŠãƒ¼ãƒ»ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚’使用ã™ã‚‹ã‚ˆã†ã«ã—ãŸå ´åˆã€ ãã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚‚ユーザー・クラス・パスを通ã˜ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1342,7 +1342,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¤Ç¥¯¥é¥¹¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¥×¥í¥°¥é¥à¤Ï\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó\fIgreetings\fR¥¯¥é¥¹¤¬»ÈÍѤ¹¤ë¥¯¥é¥¹¤Ë¥¢¥¯¥»¥¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIgreetings\fRパッケージã§ã‚¯ãƒ©ã‚¹ã‚’実行ã™ã‚‹ã«ã¯ã€ãƒ—ログラムã¯\fIgreetings\fRパッケージã€ãŠã‚ˆã³\fIgreetings\fRクラスãŒä½¿ç”¨ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1355,9 +1355,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎʬΥ
+\fBExample 4\fR, ソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åˆ†é›¢
 .RS 4
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjavac\fR¤ò»ÈÍѤ·¤Æ¡¢JVM 1\&.6¾å¤Ç¼Â¹Ô¤¹¤ë¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€\fIjavac\fRを使用ã—ã¦ã€JVM 1\&.6上ã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1369,9 +1369,9 @@
 .if n \{\
 .RE
 .\}
-\fI\-source 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIOldCode\&.java\fR¤Î¥³¥ó¥Ñ¥¤¥ë¤Ë¤Ï¥ê¥ê¡¼¥¹1\&.6(¤Þ¤¿¤Ï6)¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-target 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢JVM 1\&.6¤È¸ß´¹À­¤Î¤¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤Û¤È¤ó¤É¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤʤê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤Ç¤­¤Þ¤¹¡£
+\fI\-source 1\&.6\fRオプションã«ã‚ˆã‚Šã€\fIOldCode\&.java\fRã®ã‚³ãƒ³ãƒ‘イルã«ã¯ãƒªãƒªãƒ¼ã‚¹1\&.6(ã¾ãŸã¯6)ã®Javaプログラミング言語ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-target 1\&.6\fRオプションã«ã‚ˆã‚Šã€JVM 1\&.6ã¨äº’æ›æ€§ã®ã‚るクラス・ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã»ã¨ã‚“ã©ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯\fI\-source\fRオプションã®å€¤ã«ãªã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-target\fRオプションをçœç•¥ã§ãã¾ã™ã€‚
 .sp
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Å¬ÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹(\fIrt\&.jar\fR¥é¥¤¥Ö¥é¥ê)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラス(\fIrt\&.jar\fRライブラリ)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1384,12 +1384,12 @@
 .if n \{\
 .RE
 .\}
-ŬÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¸Å¤¤¸À¸ì»ÅÍÍ(¤³¤ÎÎã¤Ç¤Ï¡¢¥Ð¡¼¥¸¥ç¥ó1\&.6¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì)¤ò¿·¤·¤¤¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ÈÁȤ߹礻¤Æ»ÈÍѤ·¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢Â¸ºß¤·¤Ê¤¤¥á¥½¥Ã¥É¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ë¤¿¤á¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸Å¤¤¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤³¤Î¾ì¹ç¤ÏJava SE 6)¤ÇÆ°ºî¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラスを指定ã—ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯å¤ã„言語仕様(ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³1\&.6ã®Javaプログラミング言語)ã‚’æ–°ã—ã„ブートストラップ・クラスã¨çµ„ã¿åˆã›ã¦ä½¿ç”¨ã—ã¾ã™ã€‚ãã®çµæžœã€å­˜åœ¨ã—ãªã„メソッドã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã“ã¨ãŒã‚ã‚‹ãŸã‚ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤ã„プラットフォーム(ã“ã®å ´åˆã¯Java SE 6)ã§å‹•ä½œã—ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fBExample 5\fR, ¥¯¥í¥¹¡¦¥³¥ó¥Ñ¥¤¥ë
+\fBExample 5\fR, クロス・コンパイル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIjavac\fR¤ò»ÈÍѤ·¤Æ¡¢JVM 1\&.6¾å¤Ç¼Â¹Ô¤¹¤ë¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIjavac\fRを使用ã—ã¦ã€JVM 1\&.6上ã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1401,9 +1401,9 @@
 .if n \{\
 .RE
 .\}
-The\fI \-source 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢OldCode\&.java¤Î¥³¥ó¥Ñ¥¤¥ë¤Ë¤Ï¥ê¥ê¡¼¥¹1\&.6(¤Þ¤¿¤Ï6)¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-target 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢JVM 1\&.6¤È¸ß´¹À­¤Î¤¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤Û¤È¤ó¤É¤Î¾ì¹ç¡¢\fI\-target\fR¤ÎÃͤÏ\fI\-source\fR¤ÎÃͤˤʤê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£
+The\fI \-source 1\&.6\fRオプションã«ã‚ˆã‚Šã€OldCode\&.javaã®ã‚³ãƒ³ãƒ‘イルã«ã¯ãƒªãƒªãƒ¼ã‚¹1\&.6(ã¾ãŸã¯6)ã®Javaプログラミング言語ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-target 1\&.6\fRオプションã«ã‚ˆã‚Šã€JVM 1\&.6ã¨äº’æ›æ€§ã®ã‚るクラス・ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã»ã¨ã‚“ã©ã®å ´åˆã€\fI\-target\fRã®å€¤ã¯\fI\-source\fRã®å€¤ã«ãªã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-target\fRオプションã¯çœç•¥ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Å¬ÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹(\fIrt\&.jar\fR¥é¥¤¥Ö¥é¥ê)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラス(\fIrt\&.jar\fRライブラリ)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1415,9 +1415,9 @@
 .if n \{\
 .RE
 .\}
-ŬÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¸Å¤¤¸À¸ì»ÅÍͤò¿·¤·¤¤¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ÈÁȤ߹礻¤Æ»ÈÍѤ·¤Þ¤¹¡£¤³¤ÎÁȹ礻¤Ï¡¢Â¸ºß¤·¤Ê¤¤¥á¥½¥Ã¥É¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ë¤¿¤á¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸Å¤¤¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤³¤Î¾ì¹ç¤ÏJava SE 6)¤ÇÆ°ºî¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤ÏJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥ê¥ê¡¼¥¹1\&.6¤ò»ÈÍѤ·¤Þ¤¹¡£
+é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラスを指定ã—ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯å¤ã„言語仕様を新ã—ã„ブートストラップ・クラスã¨çµ„ã¿åˆã›ã¦ä½¿ç”¨ã—ã¾ã™ã€‚ã“ã®çµ„åˆã›ã¯ã€å­˜åœ¨ã—ãªã„メソッドã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã“ã¨ãŒã‚ã‚‹ãŸã‚ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤ã„プラットフォーム(ã“ã®å ´åˆã¯Java SE 6)ã§å‹•ä½œã—ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯Javaプログラミング言語ã®ãƒªãƒªãƒ¼ã‚¹1\&.6を使用ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/javadoc.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/javadoc.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javadoc
 .\" Language: English
-.\" Date: 2011ǯ5·î10Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2011年5月10日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javadoc" "1" "2011ǯ5·î10Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javadoc" "1" "2011年5月10日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javadoc \- Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é¡¢API¥É¥­¥å¥á¥ó¥È¤ÎHTML¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javadoc \- Javaソース・ファイルã‹ã‚‰ã€APIドキュメントã®HTMLページを生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,33 +64,33 @@
 .PP
 \fIpackages\fR
 .RS 4
-\fIjava\&.lang java\&.lang\&.reflect java\&.awt\fR¤Ê¤É¡¢¶õÇò¤Ç¶èÀڤäƥɥ­¥å¥á¥ó¥È²½¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¡£¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤â¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤Þ¤¹¡£
-.sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ª¤è¤Ó¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤òõ¤·¤Þ¤¹¡£\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸¤òõ¤¹¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjava\&.lang java\&.lang\&.reflect java\&.awt\fRãªã©ã€ç©ºç™½ã§åŒºåˆ‡ã£ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ãƒ‘ッケージã®åå‰ã€‚サブパッケージもドキュメント化ã™ã‚‹å ´åˆã¯ã€\fI\-subpackages\fRオプションを使用ã—ã¦ãƒ‘ッケージを指定ã—ã¾ã™ã€‚
+.sp
+デフォルトã§ã¯ã€\fIjavadoc\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŠã‚ˆã³ã‚µãƒ–ディレクトリã§æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージを探ã—ã¾ã™ã€‚\fI\-sourcepath\fRオプションを使用ã—ã¦ã€ãƒ‘ッケージを探ã™ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIsource\-files\fR
 .RS 4
-\fIClass\&.java Object\&.java Button\&.java\fR¤Î¤è¤¦¤Ë¶õÇò¤Ç¶èÀڤä¿¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ëJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤òõ¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fI/home/src/java/awt/Graphics*\&.java\fR¤Î¤è¤¦¤Ë¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Õ¥ë¥Ñ¥¹¤ò»ØÄꤷ¡¢¥ï¥¤¥ë¥É¥«¡¼¥Éʸ»ú¤ò»ÈÍѤǤ­¤Þ¤¹¡£¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIClass\&.java Object\&.java Button\&.java\fRã®ã‚ˆã†ã«ç©ºç™½ã§åŒºåˆ‡ã£ãŸã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹Javaソース・ファイルã®åå‰ã€‚デフォルトã§ã¯ã€\fIjavadoc\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’探ã—ã¾ã™ã€‚ãŸã ã—ã€\fI/home/src/java/awt/Graphics*\&.java\fRã®ã‚ˆã†ã«ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ•ãƒ«ãƒ‘スを指定ã—ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰æ–‡å­—を使用ã§ãã¾ã™ã€‚ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スも指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fI@argfiles\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¡¦¥ª¥×¥·¥ç¥ó¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ª¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¥ê¥¹¥È¤òǤ°Õ¤Î½ç½ø¤Ç´Þ¤à¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
-.RE
-.SH "ÀâÌÀ"
+\fIjavadoc\fRコマンド・オプションã€ãƒ‘ッケージåãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®ãƒªã‚¹ãƒˆã‚’ä»»æ„ã®é †åºã§å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
+.RE
+.SH "説明"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢°ìÏ¢¤ÎJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ëÀë¸À¤ª¤è¤Ó¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò²òÀϤ·¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢public¥¯¥é¥¹¡¢protected¥¯¥é¥¹¡¢¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹(ƿ̾¤ÎÆâÉô¥¯¥é¥¹¤Ï½ü¤¯)¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤¿°ìÏ¢¤ÎHTML¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢API¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤ä¡¢°ìÏ¢¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¼ÂÁõ¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ä¸€é€£ã®Javaソース・ファイルã«ã‚る宣言ãŠã‚ˆã³ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’解æžã—ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã€publicクラスã€protectedクラスã€ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹(匿åã®å†…部クラスã¯é™¤ã)ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ã¤ã„ã¦è¨˜è¿°ã—ãŸä¸€é€£ã®HTMLページを生æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€APIドキュメントã®ç”Ÿæˆã‚„ã€ä¸€é€£ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å®Ÿè£…ドキュメントã®ç”Ÿæˆã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Á´ÂΡ¢¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤½¤ÎξÊý¤ËÂФ·¤Æ¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤΥɥ­¥å¥á¥ó¥È²½¤ò¹Ô¤¦¤Ë¤Ï¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤òºÆµ¢Åª¤Ë¤¿¤É¤ë¤«¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ÎÌÀ¼¨Åª¤Ê¥ê¥¹¥È¤òÅϤ·¤Þ¤¹¡£¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¥ê¥¹¥È¤òÅϤ·¤Þ¤¹¡£´Êñ¤ÊÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý"
+\fIjavadoc\fRコマンドã¯ã€ãƒ‘ッケージ全体ã€å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã¾ãŸã¯ãã®ä¸¡æ–¹ã«å¯¾ã—ã¦å®Ÿè¡Œã§ãã¾ã™ã€‚パッケージ全体ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã‚’è¡Œã†ã«ã¯ã€\fI\-subpackages\fRオプションを使用ã—ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŠã‚ˆã³ãã®ã‚µãƒ–ディレクトリをå†å¸°çš„ã«ãŸã©ã‚‹ã‹ã€ãƒ‘ッケージåã®æ˜Žç¤ºçš„ãªãƒªã‚¹ãƒˆã‚’渡ã—ã¾ã™ã€‚個々ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ドキュメント化ã™ã‚‹ã«ã¯ã€Javaソース・ファイルåã®ãƒªã‚¹ãƒˆã‚’渡ã—ã¾ã™ã€‚ç°¡å˜ãªä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "ソース・ファイルã®å‡¦ç†"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¤Ç½ª¤ï¤ë¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤ò½èÍý¤·¤Þ¤¹¡£¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÅϤ·¤Æ\fIjavadoc\fR¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¤É¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½èÍý¤¹¤ë¤«¤òÀµ³Î¤Ë»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢Â¿¤¯¤Î³«È¯¼Ô¤Ï¤³¤ÎÊýË¡¤Ç¤Ïºî¶È¤·¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ¹¤Û¤¦¤¬´Êñ¤À¤«¤é¤Ç¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤¯¤Æ¤â¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï3¤Ä¤ÎÊýË¡¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤«¡¢¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ë¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò¹Ô¤¦¤Î¤Ï¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬¼¡¤Î¤¹¤Ù¤Æ¤ÎÍ×·ï¤òËþ¤¿¤¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ã§çµ‚ã‚るファイルã€ãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§èª¬æ˜Žã—ã¦ã„ã‚‹ãã®ä»–ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’処ç†ã—ã¾ã™ã€‚個々ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを渡ã—ã¦\fIjavadoc\fRを実行ã™ã‚‹å ´åˆã€ã©ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’処ç†ã™ã‚‹ã‹ã‚’正確ã«æŒ‡å®šã§ãã¾ã™ã€‚ãŸã ã—ã€å¤šãã®é–‹ç™ºè€…ã¯ã“ã®æ–¹æ³•ã§ã¯ä½œæ¥­ã—ã¾ã›ã‚“。パッケージåを渡ã™ã»ã†ãŒç°¡å˜ã ã‹ã‚‰ã§ã™ã€‚ソース・ファイルåを明示的ã«æŒ‡å®šã—ãªãã¦ã‚‚ã€\fIjavadoc\fRコマンドã¯3ã¤ã®æ–¹æ³•ã§å®Ÿè¡Œã§ãã¾ã™ã€‚パッケージåを渡ã—ã€\fI\-subpackages\fRオプションを使用ã™ã‚‹ã‹ã€ã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã«ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“れらã®å ´åˆã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ã‚’è¡Œã†ã®ã¯ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ¬¡ã®ã™ã¹ã¦ã®è¦ä»¶ã‚’満ãŸã™å ´åˆã®ã¿ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -100,7 +100,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Õ¥¡¥¤¥ë̾¤ÎÀÜƬ¼­(\fI\&.java\fR¤òºï½ü)¤¬Í­¸ú¤Ê¥¯¥é¥¹Ì¾¤Ç¤¢¤ë¡£
+ファイルåã®æŽ¥é ­è¾ž(\fI\&.java\fRを削除)ãŒæœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã§ã‚る。
 .RE
 .sp
 .RS 4
@@ -111,7 +111,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥ë¡¼¥È¤«¤é¤ÎÁêÂÐŪ¤Ê¥Ñ¥¹Ì¾¤¬¡¢¶èÀÚ¤êʸ»ú¤ò¥É¥Ã¥È¤ËÊÑ´¹¤¹¤ë¤È¡¢Í­¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë¤Ê¤ë¡£
+ソース・ツリーã®ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®ç›¸å¯¾çš„ãªãƒ‘スåãŒã€åŒºåˆ‡ã‚Šæ–‡å­—をドットã«å¤‰æ›ã™ã‚‹ã¨ã€æœ‰åŠ¹ãªãƒ‘ッケージåã«ãªã‚‹ã€‚
 .RE
 .sp
 .RS 4
@@ -122,10 +122,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸Ê¸¤ËÍ­¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¡£
-.RE
-¥ê¥ó¥¯¤Î½èÍý.PP
-½èÍý¤Î¼Â¹ÔÃæ¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¼Â¹Ô¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î̾Á°¤ËÂФ·¤Æ¡¢Áê¸ß»²¾È¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤Ï¡¢¼¡¤Î¾ì½ê¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£@¥¿¥°¤ÎÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢javadoc¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+パッケージ文ã«æœ‰åŠ¹ãªãƒ‘ッケージåãŒå«ã¾ã‚Œã¦ã„る。
+.RE
+リンクã®å‡¦ç†.PP
+処ç†ã®å®Ÿè¡Œä¸­ã«ã€\fIjavadoc\fRコマンドã¯ã€ãã®å®Ÿè¡Œã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®åå‰ã«å¯¾ã—ã¦ã€ç›¸äº’å‚照リンクを追加ã—ã¾ã™ã€‚リンクã¯ã€æ¬¡ã®å ´æ‰€ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚@ã‚¿ã‚°ã®èª¬æ˜Žã«ã¤ã„ã¦ã¯ã€javadocã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Àë¸À(Ìá¤êÃͤη¿¡¢°ú¿ô¤Î·¿¡¢¥Õ¥£¡¼¥ë¥É¤Î·¿)¡£
+宣言(戻り値ã®åž‹ã€å¼•æ•°ã®åž‹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®åž‹)。
 .RE
 .sp
 .RS 4
@@ -146,7 +146,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI@see\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿¡Ö\fI´ØÏ¢¹àÌÜ\fR¡×¥»¥¯¥·¥ç¥ó¡£
+\fI@see\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸã€Œ\fI関連項目\fRã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã€‚
 .RE
 .sp
 .RS 4
@@ -157,7 +157,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI{@link}\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿¥¤¥ó¥é¥¤¥ó¡¦¥Æ¥­¥¹¥È¡£
+\fI{@link}\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã€‚
 .RE
 .sp
 .RS 4
@@ -168,7 +168,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI@throws\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿Îã³°¤Î̾Á°¡£
+\fI@throws\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸä¾‹å¤–ã®åå‰ã€‚
 .RE
 .sp
 .RS 4
@@ -179,7 +179,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¡Ö\fIÄêµÁ\fR¡×¥ê¥ó¥¯¤È¡¢¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¡Ö\fI¥ª¡¼¥Ð¡¼¥é¥¤¥É\fR¡×¥ê¥ó¥¯¡£¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+インタフェースã®ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã€Œ\fI定義\fRã€ãƒªãƒ³ã‚¯ã¨ã€ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã€Œ\fIオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰\fRã€ãƒªãƒ³ã‚¯ã€‚メソッド・コメントã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -190,7 +190,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ò¥ê¥¹¥È¤·¤Æ¤¤¤ë¥µ¥Þ¥ê¡¼É½¡£
+パッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã‚’リストã—ã¦ã„るサマリー表。
 .RE
 .sp
 .RS 4
@@ -201,7 +201,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Î·Ñ¾µ¥Ä¥ê¡¼¡£
+パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã®ç¶™æ‰¿ãƒ„リー。
 .RE
 .sp
 .RS 4
@@ -212,42 +212,42 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-º÷°ú¡£
+索引。
 .RE
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¤Î´û¸¤Î¥Æ¥­¥¹¥È(Ê̤ËÀ¸À®¤·¤¿¥Æ¥­¥¹¥È)¤ËÂФ·¤Æ¥ê¥ó¥¯¤òÄɲ乤ë¤Ë¤Ï¡¢\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤òÍøÍѤǤ­¤Þ¤¹¡£
-½èÍý¤Î¾ÜºÙ.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼Â¹Ô¤¹¤ë¤¿¤Ó¤Ë1¤Ä¤Î´°Á´¤Ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£Á°¤Î¼Â¹Ô¤Î·ë²Ì¤òÊѹ¹¤Þ¤¿¤ÏľÀܼè¤ê¹þ¤à¡¢Áýʬ¥Ó¥ë¥É¤ò¹Ô¤¤¤Þ¤»¤ó¡£¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Â¾¤Î¼Â¹Ô¤Î·ë²Ì¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤¹¡£
+コマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸã‚¯ãƒ©ã‚¹ã«ã¤ã„ã¦ã®æ—¢å­˜ã®ãƒ†ã‚­ã‚¹ãƒˆ(別ã«ç”Ÿæˆã—ãŸãƒ†ã‚­ã‚¹ãƒˆ)ã«å¯¾ã—ã¦ãƒªãƒ³ã‚¯ã‚’追加ã™ã‚‹ã«ã¯ã€\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションを利用ã§ãã¾ã™ã€‚
+処ç†ã®è©³ç´°.PP
+\fIjavadoc\fRコマンドã¯å®Ÿè¡Œã™ã‚‹ãŸã³ã«1ã¤ã®å®Œå…¨ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚å‰ã®å®Ÿè¡Œã®çµæžœã‚’変更ã¾ãŸã¯ç›´æŽ¥å–り込むã€å¢—分ビルドを行ã„ã¾ã›ã‚“。ãŸã ã—ã€\fIjavadoc\fRコマンドã¯ã€ä»–ã®å®Ÿè¡Œã®çµæžœã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼ÂÁõ¤Ë¤ÏJava¥³¥ó¥Ñ¥¤¥é¤¬É¬Íפǡ¢Java¥³¥ó¥Ñ¥¤¥é¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï\fIjavac\fR¥³¥Þ¥ó¥É¤Î°ìÉô¤ò¸Æ¤Ó½Ð¤·¡¢Àë¸À¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¡¢¥á¥ó¥Ð¡¼¤Î¼ÂÁõ¤ò̵»ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¹³¬Áؤò´Þ¤à¥¯¥é¥¹¤ÎË­ÉÙ¤ÊÆâÉôɽ¸½¤È¥¯¥é¥¹¤Î¡Ö»ÈÍѡ״ط¸¤ò¹½ÃÛ¤·¡¢HTML¤òÀ¸À®¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢J\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤«¤é¡¢¥æ¡¼¥¶¡¼¤ÎÄ󶡤·¤¿¥É¥­¥å¥á¥ó¥È¤â¼èÆÀ¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã®å®Ÿè£…ã«ã¯JavaコンパイラãŒå¿…è¦ã§ã€Javaコンパイラã«ä¾å­˜ã—ã¦ã„ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯\fIjavac\fRコマンドã®ä¸€éƒ¨ã‚’呼ã³å‡ºã—ã€å®£è¨€ã‚’コンパイルã—ã¦ã€ãƒ¡ãƒ³ãƒãƒ¼ã®å®Ÿè£…を無視ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¹éšŽå±¤ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ã®è±Šå¯Œãªå†…部表ç¾ã¨ã‚¯ãƒ©ã‚¹ã®ã€Œä½¿ç”¨ã€é–¢ä¿‚を構築ã—ã€HTMLを生æˆã—ã¾ã™ã€‚ã•ã‚‰ã«ã€J\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æä¾›ã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚‚å–å¾—ã—ã¾ã™ã€‚ドキュメンテーション・コメントをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥á¥½¥Ã¥ÉËÜÂΤò»ý¤¿¤Ê¤¤½ã¿è¤Ê¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢API¤Î¼ÂÁõÁ°¤ÎÀ߷פÎÁᤤÃʳ¬¤Ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤·¤Æ\fIjavadoc\fR¥³¥á¥ó¥È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰æœ¬ä½“ã‚’æŒãŸãªã„純粋ãªã‚¹ã‚¿ãƒ–・ファイルã§ã‚るソース・ファイルã«å¯¾ã—ã¦å®Ÿè¡Œã§ãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€APIã®å®Ÿè£…å‰ã®è¨­è¨ˆã®æ—©ã„段階ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¦\fIjavadoc\fRコメントを実行ã§ãã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ë°Í¸¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢HTML½ÐÎϤϡ¢¼ÂºÝ¤Î¼ÂÁõ¤ËÀµ³Î¤ËÂбþ¤·¤Þ¤¹¡£¼ÂºÝ¤Î¼ÂÁõ¤Ï¡¢ÌÀ¼¨Åª¤Ê¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤Ç¤Ï¤Ê¤¯¡¢°ÅÌۤΥ½¡¼¥¹¡¦¥³¡¼¥É¤Ë°Í¸¤¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥ó¥Ñ¥¤¥ëºÑ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï¸ºß¤¹¤ë¤¬¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤Ï¸ºß¤·¤Ê¤¤¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥¹¥È¥é¥¯¥¿¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£
+コンパイラã«ä¾å­˜ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€HTML出力ã¯ã€å®Ÿéš›ã®å®Ÿè£…ã«æ­£ç¢ºã«å¯¾å¿œã—ã¾ã™ã€‚実際ã®å®Ÿè£…ã¯ã€æ˜Žç¤ºçš„ãªã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã§ã¯ãªãã€æš—é»™ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ä¾å­˜ã™ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc\fRコマンドã¯ã€ã‚³ãƒ³ãƒ‘イル済クラス・ファイルã«ã¯å­˜åœ¨ã™ã‚‹ãŒã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã¯å­˜åœ¨ã—ãªã„デフォルト・コンストラクタをドキュメント化ã—ã¾ã™ã€‚
 .PP
-¿¤¯¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¡¼¥É¤¬ÉÔ´°Á´¤Þ¤¿¤Ï¥¨¥é¡¼¤ò´Þ¤ó¤Ç¤¤¤ë¾ì¹ç¤Ç¤â¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¤ä¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ò´°Î»¤¹¤ëÁ°¤Ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î´ðËÜŪ¤Ê¥Á¥§¥Ã¥¯¤ò¹Ô¤¤¤Þ¤¹¡£
+多ãã®å ´åˆã€\fIjavadoc\fRコマンドã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ¼ãƒ‰ãŒä¸å®Œå…¨ã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã‚’å«ã‚“ã§ã„ã‚‹å ´åˆã§ã‚‚ドキュメントを生æˆã§ãã¾ã™ã€‚ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°ã‚„トラブルシューティングを完了ã™ã‚‹å‰ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®åŸºæœ¬çš„ãªãƒã‚§ãƒƒã‚¯ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥É¥­¥å¥á¥ó¥È¤ÎÆâÉô¹½Â¤¤ò¹½ÃÛ¤¹¤ëºÝ¡¢»²¾È¥¯¥é¥¹¤ò¤¹¤Ù¤Æ¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¢³ÈÄ¥µ¡Ç½¡¢¤Þ¤¿¤Ï¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤Ë¤«¤«¤ï¤é¤º¡¢¤¹¤Ù¤Æ¤Î»²¾È¥¯¥é¥¹¤ò¸¡º÷¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIjavadoc\fRコマンドã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å†…部構造を構築ã™ã‚‹éš›ã€å‚照クラスをã™ã¹ã¦ãƒ­ãƒ¼ãƒ‰ã—ã¾ã™ã€‚ã“ã®ãŸã‚ã€
+\fIjavadoc\fRコマンドã¯ã€ãƒ–ートストラップ・クラスã€æ‹¡å¼µæ©Ÿèƒ½ã€ã¾ãŸã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã«ã‹ã‹ã‚らãšã€ã™ã¹ã¦ã®å‚照クラスを検索ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスã®æ¤œå‡ºæ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-Ä̾ºîÀ®¤¹¤ë¥¯¥é¥¹¤Ï¡¢³ÈÄ¥¥¯¥é¥¹¤È¤·¤Æ¡¢¤Þ¤¿¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¥í¡¼¥É¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SS "Javadoc¤Î¥É¥Ã¥¯¥ì¥Ã¥È"
+通常ã€ä½œæˆã™ã‚‹ã‚¯ãƒ©ã‚¹ã¯ã€æ‹¡å¼µã‚¯ãƒ©ã‚¹ã¨ã—ã¦ã€ã¾ãŸã¯\fIjavadoc\fRコマンドã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã§ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "Javadocã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆ"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤÎÆâÍƤȷÁ¼°¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤È¸Æ¤Ð¤ì¤ë¥Ç¥Õ¥©¥ë¥È¤ÎÁȹþ¤ß¥É¥Ã¥¯¥ì¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢HTML·Á¼°¤ÎAPI¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò½¤Àµ¤Þ¤¿¤Ï¥µ¥Ö¥¯¥é¥¹¤òºîÀ®¤¹¤ë¤³¤È¤ä¡¢HTML¡¢XML¡¢MIF¡¢RTF¤Ê¤É¤Î¹¥¤ß¤Î½ÐÎÏ·Á¼°¤òÀ¸À®¤¹¤ëÆȼ«¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤òµ­½Ò¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã®å‡ºåŠ›ã®å†…容ã¨å½¢å¼ã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’使用ã—ã¦ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€æ¨™æº–ドックレットã¨å‘¼ã°ã‚Œã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®çµ„è¾¼ã¿ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚標準ドックレットã¯ã€HTMLå½¢å¼ã®APIドキュメントを生æˆã—ã¾ã™ã€‚標準ドックレットを修正ã¾ãŸã¯ã‚µãƒ–クラスを作æˆã™ã‚‹ã“ã¨ã‚„ã€HTMLã€XMLã€MIFã€RTFãªã©ã®å¥½ã¿ã®å‡ºåŠ›å½¢å¼ã‚’生æˆã™ã‚‹ç‹¬è‡ªã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’記述ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚
 .PP
-\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢»ÈÍѤµ¤ì¤Æ¤¤¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤Ë´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤ë¤¤¤¯¤Ä¤«¤Î¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤ì¤é¤Î¾¤Ë¡¢¤¤¤¯¤Ä¤«¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+\fI\-doclet\fRオプションã§ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€ä½¿ç”¨ã•ã‚Œã¦ã„るドックレットã«é–¢ä¿‚ãªã使用ã§ãã‚‹ã„ãã¤ã‹ã®ã‚ªãƒ—ションãŒã‚ã‚Šã¾ã™ã€‚標準ドックレットã§ã¯ã€ã“れらã®ä»–ã«ã€ã„ãã¤ã‹ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
+.SH "ソース・ファイル"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥¿¥¤¥×¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£¤½¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¥¯¥é¥¹¤ÎJava¸À¸ì¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(\fI\&.java\fR)¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¤½¤Î¾¤Î̤½èÍý¤Î¥Õ¥¡¥¤¥ë¤Ç¤¹¡£¤³¤³¤Ç¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤·¤Ê¤¤¤¬¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Ë¸ºß¤¹¤ë¾ì¹ç¤¬¤¢¤ë¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ä¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤âÀâÌÀ¤·¤Þ¤¹¡£
-.SS "¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+\fIjavadoc\fRコマンドã¯ã€æ¬¡ã®ã‚¿ã‚¤ãƒ—ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã‚¯ãƒ©ã‚¹ã®Java言語ソース・ファイル(\fI\&.java\fR)ã€ãƒ‘ッケージ・コメント・ファイルã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãŠã‚ˆã³ãã®ä»–ã®æœªå‡¦ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚ã“ã“ã§ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã—ãªã„ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã«å­˜åœ¨ã™ã‚‹å ´åˆãŒã‚るテスト・ファイルやテンプレート・ファイルã«ã¤ã„ã¦ã‚‚説明ã—ã¾ã™ã€‚
+.SS "クラスã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤ª¤è¤Ó¤½¤Î¥á¥ó¥Ð¡¼¤Ï¡¢Æȼ«¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤ËÊÝ»ý¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë"
+ãã‚Œãžã‚Œã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãŠã‚ˆã³ãã®ãƒ¡ãƒ³ãƒãƒ¼ã¯ã€ç‹¬è‡ªã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãれをソース・ファイル内ã«ä¿æŒã—ã¾ã™ã€‚ドキュメンテーション・コメントをå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "パッケージ・コメント・ファイル"
 .PP
-¤½¤ì¤¾¤ì¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢Æȼ«¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤òÀìÍѤΥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÝ»ý¤·¤Þ¤¹¡£¤½¤ÎÆâÍƤϡ¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ËÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£¤³¤Î¥³¥á¥ó¥È¤Ë¤Ï¡¢Ä̾¤½¤Î¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤËÅö¤Æ¤Ï¤Þ¤ë¥É¥­¥å¥á¥ó¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+ãã‚Œãžã‚Œã®ãƒ‘ッケージã¯ã€ç‹¬è‡ªã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãれを専用ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿æŒã—ã¾ã™ã€‚ãã®å†…容ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ‘ッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã«çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€é€šå¸¸ã€ãã®ãƒ‘ッケージ全体ã«å½“ã¦ã¯ã¾ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¾ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤¤¤º¤ì¤«¤Î¥Õ¥¡¥¤¥ë¤Ë¥³¥á¥ó¥È¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£
+パッケージ・コメント・ファイルを作æˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã„ãšã‚Œã‹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’æ ¼ç´ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -257,7 +257,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¡¢¥Ñ¥Ã¥±¡¼¥¸Ãí¼á¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¢¤ª¤è¤ÓJavadoc¥¿¥°¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤¬Í¥À褵¤ì¤Þ¤¹¡£
+\fIpackage\-info\&.java\fRファイルã«ã¯ã€ãƒ‘ッケージ宣言ã€ãƒ‘ッケージ注釈ã€ãƒ‘ッケージ・コメントã€ãŠã‚ˆã³Javadocã‚¿ã‚°ã‚’æ ¼ç´ã§ãã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -268,15 +268,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÈJavadoc¥¿¥°¤Î¤ß¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ãí¼á¤Ï³ÊǼ¤Ç¤­¤Þ¤»¤ó¡£
+\fIpackage\&.html\fRファイルã«ã¯ã€ãƒ‘ッケージ・コメントã¨Javadocã‚¿ã‚°ã®ã¿ã‚’æ ¼ç´ã§ãã¾ã™ã€‚パッケージ注釈ã¯æ ¼ç´ã§ãã¾ã›ã‚“。
 .RE
 .PP
-³Æ¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Î¤¤¤º¤ì¤«¤ò1¤Ä»ý¤Ä¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤ÎξÊý¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¤É¤Á¤é¤«¤Î¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¤È¤â¤Ë¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Î¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤ËÇÛÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡£
-package\-info\&.java¥Õ¥¡¥¤¥ë.PP
-\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î¹½Â¤¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥á¥ó¥È¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¤ÎÁ°¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+å„パッケージã¯ã€\fIpackage\&.html\fRファイルã¾ãŸã¯\fIpackage\-info\&.java\fRファイルã®ã„ãšã‚Œã‹ã‚’1ã¤æŒã¤ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®ä¸¡æ–¹ã‚’æŒã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã©ã¡ã‚‰ã‹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ソース・ファイルã¨ã¨ã‚‚ã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã®ãã®ãƒ‘ッケージ・ディレクトリ内ã«é…ç½®ã—ã¦ãã ã•ã„。
+package\-info\&.javaファイル.PP
+\fIpackage\-info\&.java\fRファイルã«ã¯ã€æ¬¡ã®æ§‹é€ ã®ãƒ‘ッケージ・コメントをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コメントã¯ã€ãƒ‘ッケージ宣言ã®å‰ã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤Ç¤¢¤ë\fI/**\fR¤ª¤è¤Ó\fI*/\fR¤¬Â¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢Ãæ´Ö¤Î¹Ô¤ÎÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤Ï¾Êά²Äǽ¤Ç¤¹¡£
+\fB注æ„:\fR
+コメント区切り文字ã§ã‚ã‚‹\fI/**\fRãŠã‚ˆã³\fI*/\fRãŒå­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ä¸­é–“ã®è¡Œã®å…ˆé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã¯çœç•¥å¯èƒ½ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -302,10 +302,10 @@
 .if n \{\
 .RE
 .\}
-package\&.html¥Õ¥¡¥¤¥ë.PP
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î¹½Â¤¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥á¥ó¥È¤Ï¡¢\fI<body>\fRÍ×ÁǤËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+package\&.htmlファイル.PP
+\fIpackage\&.html\fRファイルã«ã¯ã€æ¬¡ã®æ§‹é€ ã®ãƒ‘ッケージ・コメントをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コメントã¯ã€\fI<body>\fRè¦ç´ ã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .PP
-¥Õ¥¡¥¤¥ë:
+ファイル:
 \fIjava/applet/package\&.html\fR
 .sp
 .if n \{\
@@ -332,9 +332,9 @@
 .RE
 .\}
 .PP
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤ÏÄ̾ï¤ÎHTML¥Õ¥¡¥¤¥ë¤Ç¤¢¤ê¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¤ò´Þ¤ó¤Ç¤¤¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÏHTML¤Çµ­½Ò¤·¤Þ¤¹¤¬¡¢Îã³°¤¬1¤Ä¤¢¤ê¤Þ¤¹¡£¤³¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤Ç¤¢¤ë\fI/**\fR¤È\fI*/\fR¡¢¤Þ¤¿¤Ï¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤ò´Þ¤á¤Ê¤¤¡¢¤È¤¤¤¦ÅÀ¤Ç¤¹¡£¥³¥á¥ó¥È¤ò½ñ¤¯¾ì¹ç¤Ï¡¢ºÇ½é¤Îʸ¤ò¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¤È¤·¡¢\fI<body>\fR¥¿¥°¤ÈºÇ½é¤Îʸ¤Î´Ö¤Ë¥¿¥¤¥È¥ë¤ä¤½¤Î¾¤Î¥Æ¥­¥¹¥È¤ò´Þ¤á¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤ËÇÛÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI@see\fR¥¿¥°¤ò¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ËÄɲ乤ë¾ì¹ç¤Ë¤Ï¡¢´°Á´½¤¾þ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý.PP
-\fIjavadoc\fR¥³¥á¥ó¥È¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¼ê½ç¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIpackage\&.html\fRファイルã¯é€šå¸¸ã®HTMLファイルã§ã‚ã‚Šã€ãƒ‘ッケージ宣言をå«ã‚“ã§ã„ã¾ã›ã‚“。パッケージ・コメント・ファイルã®å†…容ã¯HTMLã§è¨˜è¿°ã—ã¾ã™ãŒã€ä¾‹å¤–ãŒ1ã¤ã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€ã‚³ãƒ¡ãƒ³ãƒˆåŒºåˆ‡ã‚Šæ–‡å­—ã§ã‚ã‚‹\fI/**\fRã¨\fI*/\fRã€ã¾ãŸã¯è¡Œé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’å«ã‚ãªã„ã€ã¨ã„ã†ç‚¹ã§ã™ã€‚コメントを書ãå ´åˆã¯ã€æœ€åˆã®æ–‡ã‚’パッケージã®ã‚µãƒžãƒªãƒ¼ã¨ã—ã€\fI<body>\fRã‚¿ã‚°ã¨æœ€åˆã®æ–‡ã®é–“ã«ã‚¿ã‚¤ãƒˆãƒ«ã‚„ãã®ä»–ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å«ã‚ãªã„よã†ã«ã—ã¾ã™ã€‚パッケージ・タグをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã™ã¹ã¦ã®ãƒ–ロック・タグã¯ã€ä¸»èª¬æ˜Žã®å¾Œã«é…ç½®ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI@see\fRタグをパッケージ・コメント・ファイルã«è¿½åŠ ã™ã‚‹å ´åˆã«ã¯ã€å®Œå…¨ä¿®é£¾åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+コメント・ファイルã®å‡¦ç†.PP
+\fIjavadoc\fRコメントを実行ã™ã‚‹ã¨ã€ãƒ‘ッケージ・コメント・ファイルãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚パッケージ・コメント・ファイルãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã¯ã€\fIjavadoc\fRコマンドã¯æ¬¡ã®æ‰‹é †ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -344,8 +344,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤Ç¤­¤ë¤è¤¦¤Ë¥³¥á¥ó¥È¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£package\&.html¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI<body>\fR¤È\fI</body>\fR
-HTML¥¿¥°´Ö¤Î¤¹¤Ù¤Æ¤ÎÆâÍƤò¥³¥Ô¡¼¤·¤Þ¤¹¡£\fI<head>\fR¥»¥¯¥·¥ç¥ó¤ò´Þ¤á¡¢¤½¤³¤Ë\fI<title>\fR¥¿¥°¤ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÃøºî¸¢µ­½Ò¤Ê¤É¤Î¾ðÊó¤òÇÛÃÖ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¤¬¡¢À¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¤½¤ì¤é¤Ï°ìÀÚɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+処ç†ã§ãるよã†ã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’コピーã—ã¾ã™ã€‚package\&.htmlã®å ´åˆã€\fIjavadoc\fRコマンドã¯ã€\fI<body>\fRã¨\fI</body>\fR
+HTMLã‚¿ã‚°é–“ã®ã™ã¹ã¦ã®å†…容をコピーã—ã¾ã™ã€‚\fI<head>\fRセクションをå«ã‚ã€ãã“ã«\fI<title>\fRタグやソース・ファイルã®è‘—作権記述ãªã©ã®æƒ…報をé…ç½®ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ãŒã€ç”Ÿæˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ãれらã¯ä¸€åˆ‡è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -356,7 +356,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò½èÍý¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+パッケージ・タグを処ç†ã—ã¾ã™ã€‚パッケージ・タグをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -367,8 +367,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤·¤¿¥Æ¥­¥¹¥È¤òÀ¸À®¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤Î²¼Éô¤ËÁÞÆþ¤·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¢Standard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+処ç†ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã•ã‚ŒãŸãƒ‘ッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®ä¸‹éƒ¨ã«æŒ¿å…¥ã—ã¾ã™ã€‚Javaプラットフォームã€Standard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -379,24 +379,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢³µÍ×¥Ú¡¼¥¸¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤È¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤òÄɲä·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¢Standard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-ʸ¤Î½ª¤ï¤ê¤Ï¡¢¥¯¥é¥¹¤ä¥á¥ó¥Ð¡¼¤Î¼çÀâÌÀ¤ÎºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤ÈƱ¤¸¥ë¡¼¥ë¤Ë¤è¤Ã¤ÆȽÃǤµ¤ì¤Þ¤¹¡£
-.RE
-.SS "³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë"
+パッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®å…ˆé ­ã«ã€ãƒ‘ッケージ・コメントã®æœ€åˆã®æ–‡ã‚’コピーã—ã¾ã™ã€‚ã•ã‚‰ã«ã€\fIjavadoc\fRコマンドã¯ã€æ¦‚è¦ãƒšãƒ¼ã‚¸ã®ãƒ‘ッケージ・リストã«ã€ãƒ‘ッケージåã¨ãƒ‘ッケージ・コメントã®æœ€åˆã®æ–‡ã‚’追加ã—ã¾ã™ã€‚Javaプラットフォームã€Standard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+æ–‡ã®çµ‚ã‚ã‚Šã¯ã€ã‚¯ãƒ©ã‚¹ã‚„メンãƒãƒ¼ã®ä¸»èª¬æ˜Žã®æœ€åˆã®æ–‡ã®çµ‚ã‚ã‚Šã¨åŒã˜ãƒ«ãƒ¼ãƒ«ã«ã‚ˆã£ã¦åˆ¤æ–­ã•ã‚Œã¾ã™ã€‚
+.RE
+.SS "概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥É¥­¥å¥á¥ó¥È²½¤¹¤ë³Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤Ï¡¢Æȼ«¤Î³µÍץɥ­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤ÏÀìÍѤΥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÝ»ý¤µ¤ì¤Þ¤¹¡£¤½¤ÎÆâÍƤϡ¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë³µÍ×¥Ú¡¼¥¸¤ËÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£¤³¤Î¥³¥á¥ó¥È¤Ë¤Ï¡¢Ä̾¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥ÈÁ´ÂΤËÅö¤Æ¤Ï¤Þ¤ë¥É¥­¥å¥á¥ó¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+ドキュメント化ã™ã‚‹å„アプリケーションã¾ãŸã¯ãƒ‘ッケージ・セットã¯ã€ç‹¬è‡ªã®æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãã‚Œã¯å°‚用ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿æŒã•ã‚Œã¾ã™ã€‚ãã®å†…容ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹æ¦‚è¦ãƒšãƒ¼ã‚¸ã«çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€é€šå¸¸ã€ã‚¢ãƒ—リケーションã¾ãŸã¯ãƒ‘ッケージ・セット全体ã«å½“ã¦ã¯ã¾ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¾ã™ã€‚
 .PP
-¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ïoverview\&.html¤Ê¤É¤Î̾Á°¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¡¢¤É¤³¤ËÇÛÃÖ¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£°ìÈÌŪ¤Ê¾ì½ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤ÎºÇ¾åÉô¤Ç¤¹¡£
+ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯overview\&.htmlãªã©ã®åå‰ã‚’付ã‘ã‚‹ã“ã¨ãŒã§ãã€ã©ã“ã«é…ç½®ã—ã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。一般的ãªå ´æ‰€ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®æœ€ä¸Šéƒ¨ã§ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.applet\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬/home/user/src/java/applet¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Ï/home/user/src/overview\&.html¤ËºîÀ®¤Ç¤­¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIjava\&.applet\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ/home/user/src/java/appletディレクトリã«æ ¼ç´ã•ã‚Œã¦ã„ã‚‹å ´åˆã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯/home/user/src/overview\&.htmlã«ä½œæˆã§ãã¾ã™ã€‚
 .PP
-°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÊ£¿ô²ó¼Â¹Ô¤¹¤ë¾ì¹ç¤Ï¡¢Æ±¤¸1¤Ä¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥»¥Ã¥È¤ËÂФ·¤ÆÊ£¿ô¤Î³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ÆâÉô¥É¥­¥å¥á¥ó¥ÈÍѤË\fI\-private\fR¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò1²ó¼Â¹Ô¤·¤¿¸å¡¢¸ø³«¥É¥­¥å¥á¥ó¥ÈÍѤˤ½¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤ÇºÆÅټ¹Ԥ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢³Æ³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Î1ʸÌܤǡ¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤ò¸ø³«ÍѤޤ¿¤ÏÆâÉôÍѤȤ·¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£
+ç•°ãªã‚‹ãƒ‘ッケージã®ã‚»ãƒƒãƒˆã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを複数回実行ã™ã‚‹å ´åˆã¯ã€åŒã˜1ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚»ãƒƒãƒˆã«å¯¾ã—ã¦è¤‡æ•°ã®æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€å†…部ドキュメント用ã«\fI\-private\fRを指定ã—ã¦\fIjavadoc\fRコマンドを1回実行ã—ãŸå¾Œã€å…¬é–‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã«ãã®ã‚ªãƒ—ションを指定ã—ãªã„ã§å†åº¦å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®å ´åˆã€å„概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®1文目ã§ã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’公開用ã¾ãŸã¯å†…部用ã¨ã—ã¦è¨˜è¿°ã§ãã¾ã™ã€‚
 .PP
-³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤϡ¢HTML¤Çµ­½Ò¤µ¤ì¤¿1¤Ä¤ÎÂ礭¤Ê¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤¹¡£ºÇ½é¤Îʸ¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥È¤Î¥µ¥Þ¥ê¡¼¤È¤·¤Þ¤¹¡£\fI<body>\fR¥¿¥°¤ÈºÇ½é¤Îʸ¤Î´Ö¤Ë¥¿¥¤¥È¥ë¤ä¤½¤Î¾¤Î¥Æ¥­¥¹¥È¤ò´Þ¤á¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£{\fI@link}\fR¤Ê¤É¤Î¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤ËÇÛÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI@see\fR¥¿¥°¤òÄɲ乤ë¾ì¹ç¤Ë¤Ï¡¢´°Á´½¤¾þ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ã¯ã€HTMLã§è¨˜è¿°ã•ã‚ŒãŸ1ã¤ã®å¤§ããªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã™ã€‚最åˆã®æ–‡ã¯ã‚¢ãƒ—リケーションã¾ãŸã¯ãƒ‘ッケージã®ã‚»ãƒƒãƒˆã®ã‚µãƒžãƒªãƒ¼ã¨ã—ã¾ã™ã€‚\fI<body>\fRã‚¿ã‚°ã¨æœ€åˆã®æ–‡ã®é–“ã«ã‚¿ã‚¤ãƒˆãƒ«ã‚„ãã®ä»–ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å«ã‚ãªã„よã†ã«ã—ã¾ã™ã€‚{\fI@link}\fRãªã©ã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚’除ãã™ã¹ã¦ã®ã‚¿ã‚°ã¯ã€ä¸»èª¬æ˜Žã®å¾Œã«é…ç½®ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI@see\fRタグを追加ã™ã‚‹å ´åˆã«ã¯ã€å®Œå…¨ä¿®é£¾åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¡¢\fI\-overview\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤è¤¦¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¼ê½ç¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã€\fI\-overview\fRオプションを使用ã—ã¦æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ãƒ‘ッケージ・コメント・ファイルã¨åŒã˜ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯æ¬¡ã®æ‰‹é †ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -406,7 +406,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI<body>\fR¤È\fI</body>\fR¥¿¥°¤Î´Ö¤Ë¤¢¤ëÆâÍƤò¤¹¤Ù¤Æ½èÍýÂоݤȤ·¤Æ¥³¥Ô¡¼¤·¤Þ¤¹¡£
+\fI<body>\fRã¨\fI</body>\fRã‚¿ã‚°ã®é–“ã«ã‚る内容をã™ã¹ã¦å‡¦ç†å¯¾è±¡ã¨ã—ã¦ã‚³ãƒ”ーã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -417,7 +417,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³µÍ×¥¿¥°¤¬¤¢¤ì¤Ð½èÍý¤·¤Þ¤¹¡£³µÍ×¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+概è¦ã‚¿ã‚°ãŒã‚ã‚Œã°å‡¦ç†ã—ã¾ã™ã€‚概è¦ã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -428,8 +428,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤·¤¿¥Æ¥­¥¹¥È¤òÀ¸À®¤µ¤ì¤¿³µÍ×¥Ú¡¼¥¸¤Î²¼Éô¤ËÁÞÆþ¤·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àStandard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+処ç†ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã•ã‚ŒãŸæ¦‚è¦ãƒšãƒ¼ã‚¸ã®ä¸‹éƒ¨ã«æŒ¿å…¥ã—ã¾ã™ã€‚JavaプラットフォームStandard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -440,17 +440,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³µÍ×¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¡¢³µÍ×¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£
-.RE
-.SS "̤½èÍý¤Î¥Õ¥¡¥¤¥ë"
+概è¦ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®å…ˆé ­ã«ã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆã®æœ€åˆã®æ–‡ã‚’コピーã—ã¾ã™ã€‚
+.RE
+.SS "未処ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ°¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤µ¤ì¤ë¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Ä̾¥°¥é¥Õ¥£¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¡¢¥µ¥ó¥×¥ë¤ÎJava¥½¡¼¥¹¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢°ìÈÌŪ¤ÊJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î±Æ¶Á¤ò¼õ¤±¤Ê¤¤Â¿¤¯¤ÎÆâÍƤò´Þ¤àÆÈΩ¤·¤¿HTML¥Õ¥¡¥¤¥ë¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£
+ソース・ファイルã«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚³ãƒ”ーã•ã‚Œã‚‹ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€é€šå¸¸ã€ã‚°ãƒ©ãƒ•ã‚£ãƒƒã‚¯ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚µãƒ³ãƒ—ルã®JavaソースãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ä¸€èˆ¬çš„ãªJavaソース・ファイルã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®å½±éŸ¿ã‚’å—ã‘ãªã„多ãã®å†…容をå«ã‚€ç‹¬ç«‹ã—ãŸHTMLファイルãªã©ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-̤½èÍý¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤Ë¤Ï¡¢doc\-files¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤·¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àǤ°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ê¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£doc\-files¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤ÄÍѰդǤ­¤Þ¤¹¡£
+未処ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚ã‚‹ã«ã¯ã€doc\-filesã¨ã„ã†ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã—ã¾ã™ã€‚doc\-filesディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€ä»»æ„ã®ãƒ‘ッケージ・ディレクトリã®ã‚µãƒ–ディレクトリã«ãªã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚doc\-filesサブディレクトリã¯ã€ãƒ‘ッケージã”ã¨ã«1ã¤ç”¨æ„ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥Ü¥¿¥ó¤Î¥¤¥á¡¼¥¸¤ò\fIjava\&.awt\&.Button\fR¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ë´Þ¤á¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¥¤¥á¡¼¥¸¡¦¥Õ¥¡¥¤¥ë¤ò/home/user/src/java/awt/doc\-files/¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤­¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤ò/home/user/src/java/doc\-files¤ËÃÖ¤«¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£java¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Ç¤Ï¤Ê¤¤¤«¤é¤Ç¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤³¤È¤â¤Ç¤­¤Þ¤»¤ó¡£
+ãŸã¨ãˆã°ã€ãƒœã‚¿ãƒ³ã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’\fIjava\&.awt\&.Button\fRクラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å«ã‚ã‚‹å ´åˆã«ã¯ã€ãã®ã‚¤ãƒ¡ãƒ¼ã‚¸ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’/home/user/src/java/awt/doc\-files/ディレクトリã«ç½®ãã¾ã™ã€‚doc\-filesディレクトリを/home/user/src/java/doc\-filesã«ç½®ã‹ãªã„ã§ãã ã•ã„。javaã¯ãƒ‘ッケージã§ã¯ãªã„ã‹ã‚‰ã§ã™ã€‚ソース・ファイルをå«ã‚ã‚‹ã“ã¨ã‚‚ã§ãã¾ã›ã‚“。
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Ê¤¤¤Î¤Ç¡¢Ì¤½èÍý¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î¤¹¤Ù¤Æ¤Î¥ê¥ó¥¯¤Ï¡¢¥³¡¼¥É¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤È¤½¤Î¤¹¤Ù¤Æ¤ÎÆâÍƤò°¸Àè¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢Button\&.java¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥ê¥ó¥¯¤¬¤É¤Î¤è¤¦¤Ë¸«¤¨¤ë¤«¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ãªã„ã®ã§ã€æœªå‡¦ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ã™ã¹ã¦ã®ãƒªãƒ³ã‚¯ã¯ã€ã‚³ãƒ¼ãƒ‰ã«å«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨ãã®ã™ã¹ã¦ã®å†…容を宛先ã«ã‚³ãƒ”ーã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€Button\&.javaドキュメンテーション・コメントã®ãƒªãƒ³ã‚¯ãŒã©ã®ã‚ˆã†ã«è¦‹ãˆã‚‹ã‹ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -464,13 +464,13 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë"
+.SS "テストãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイル"
 .PP
-¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤Ï¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤Ç¤­¤Þ¤¹¡£¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤¬½èÍý¤µ¤ì¤ë¤Î¤òËɤ°¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢ÌÀ¼¨Åª¤Ë¸ÄÊ̤Υ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÅϤ·¤Þ¤¹¡£
+ソース・ツリーã®ãƒ†ã‚¹ãƒˆãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイルをã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå­˜åœ¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯ã‚µãƒ–ディレクトリã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã§ãã¾ã™ã€‚テストãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイルãŒå‡¦ç†ã•ã‚Œã‚‹ã®ã‚’防ãã«ã¯ã€\fIjavadoc\fRコマンドを実行ã—ã€æ˜Žç¤ºçš„ã«å€‹åˆ¥ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを渡ã—ã¾ã™ã€‚
 .PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Í­¸ú¤Ê¡¢¥³¥ó¥Ñ¥¤¥ë²Äǽ¤Ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Í­¸ú¤Ê¡¢¸ß´¹À­¤Î¤¢¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢Â¿¤¯¤Î¾ì¹ç¡¢\fI\&.java\fRÀÜÈø¼­¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë.PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¡¢Ì¾Á°¤Ê¤·¥Ñ¥Ã¥±¡¼¥¸¤ä¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤È¤ÏÊ̤Υѥ屡¼¥¸¤Ë°¤¹¤ë¤è¤¦¤Ë¤¹¤ë¾ì¹ç¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î²¼¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë̵¸ú¤Ê̾Á°¤òÉÕ¤±¤Þ¤¹¡£¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¼¨¤¹¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï·Ù¹ð¤Þ¤¿¤Ï¥¨¥é¡¼¤ò°ú¤­µ¯¤³¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬Ìµ¸ú¤Ê̾Á°¤ò»ý¤Ä¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥¹¥­¥Ã¥×¤µ¤ì¡¢¥¨¥é¡¼¤Þ¤¿¤Ï·Ù¹ð¤Ïȯ¹Ô¤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤òcom\&.package1¤ËÄɲ乤ë¤Ë¤Ï¡¢Ìµ¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¼¡¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤Ë¤Ï¥Ï¥¤¥Õ¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤¿¤á̵¸ú¤Ç¤¹¡£
+テスト・ファイルã¯ã€æœ‰åŠ¹ãªã€ã‚³ãƒ³ãƒ‘イルå¯èƒ½ãªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚テンプレート・ファイルã¯ã€æœ‰åŠ¹ãªã€äº’æ›æ€§ã®ã‚るソース・ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€å¤šãã®å ´åˆã€\fI\&.java\fR接尾辞をæŒã£ã¦ã„ã¾ã™ã€‚
+テスト・ファイル.PP
+テスト・ファイルをã€åå‰ãªã—パッケージやã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå­˜åœ¨ã™ã‚‹ãƒ‘ッケージã¨ã¯åˆ¥ã®ãƒ‘ッケージã«å±žã™ã‚‹ã‚ˆã†ã«ã™ã‚‹å ´åˆã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ソース・ファイルã®ä¸‹ã®ã‚µãƒ–ディレクトリã«é…ç½®ã—ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç„¡åŠ¹ãªåå‰ã‚’付ã‘ã¾ã™ã€‚テスト・ファイルをソースã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«é…ç½®ã—ã€ãƒ‘ッケージåを示ã™ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを呼ã³å‡ºã™ã¨ã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯è­¦å‘Šã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã‚’引ãèµ·ã“ã—ã¾ã™ã€‚ファイルãŒç„¡åŠ¹ãªåå‰ã‚’æŒã¤ã‚µãƒ–ディレクトリ内ã«å­˜åœ¨ã™ã‚‹å ´åˆã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã‚¹ã‚­ãƒƒãƒ—ã•ã‚Œã€ã‚¨ãƒ©ãƒ¼ã¾ãŸã¯è­¦å‘Šã¯ç™ºè¡Œã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’com\&.package1ã«è¿½åŠ ã™ã‚‹ã«ã¯ã€ç„¡åŠ¹ãªãƒ‘ッケージåã®ã‚µãƒ–ディレクトリã«é…ç½®ã—ã¾ã™ã€‚次ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã«ã¯ãƒã‚¤ãƒ•ãƒ³ãŒå«ã¾ã‚Œã¦ã„ã‚‹ãŸã‚無効ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -482,13 +482,13 @@
 .RE
 .\}
 .PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¸ÄÊ̤μ¹Ԥǡ¢¥ï¥¤¥ë¥É¥«¡¼¥É¤ò´Þ¤ó¤À¥Æ¥¹¥È¡¦¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾(\fIcom/package1/test\-files/*\&.java\fR¤Ê¤É)¤òÅϤ·¤Æ¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤è¤¦¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£
-¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë.PP
-¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤¹¤ë¤¬¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¥¨¥é¡¼¤òÀ¸À®¤·¤Ê¤¤¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ë\fIBuffer\-Template\&.java\fR¤Ê¤É¤Î̵¸ú¤Ê̾Á°¤òÉÕ¤±¤Æ¡¢½èÍý¤µ¤»¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ÀÜÈø¼­¤Î\fI\&.java\fR¤¬ºï½ü¤µ¤ì¤ë¤ÈÍ­¸ú¤Ê¥¯¥é¥¹Ì¾¤Ë¤Ê¤ë̾Á°¤ò»ý¤Ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤ß¤ò½èÍý¤·¤Þ¤¹¡£
-.SH "À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë"
+テスト・ファイルã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒå«ã¾ã‚Œã‚‹å ´åˆã€\fIjavadoc\fRコマンドã®å€‹åˆ¥ã®å®Ÿè¡Œã§ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’å«ã‚“ã ãƒ†ã‚¹ãƒˆãƒ»ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å(\fIcom/package1/test\-files/*\&.java\fRãªã©)を渡ã—ã¦ã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã‚ˆã†ã«è¨­å®šã§ãã¾ã™ã€‚
+テンプレート・ファイル.PP
+テンプレート・ファイルをソース・ディレクトリã«é…ç½®ã™ã‚‹ãŒã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã¨ãã«ã‚¨ãƒ©ãƒ¼ã‚’生æˆã—ãªã„å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã«\fIBuffer\-Template\&.java\fRãªã©ã®ç„¡åŠ¹ãªåå‰ã‚’付ã‘ã¦ã€å‡¦ç†ã•ã›ãªã„よã†ã«ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŽ¥å°¾è¾žã®\fI\&.java\fRãŒå‰Šé™¤ã•ã‚Œã‚‹ã¨æœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã«ãªã‚‹åå‰ã‚’æŒã¤ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚’処ç†ã—ã¾ã™ã€‚
+.SH "生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ëɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¤³¤³¤ÇÀâÌÀ¤¹¤ë¡¢´ðËÜÆâÍÆ¥Ú¡¼¥¸¡¢Áê¸ß»²¾È¥Ú¡¼¥¸¡¢¥µ¥Ý¡¼¥È¡¦¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£³ÆHTML¥Ú¡¼¥¸¤Ï¸ÄÊ̤Υե¡¥¤¥ë¤ËÂбþ¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢2¤Ä¤Î¥¿¥¤¥×¤Î¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£ºÇ½é¤Î¥¿¥¤¥×¤Ë¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë±þ¤¸¤¿Ì¾Á°¤¬ÉÕ¤±¤é¤ì¤Þ¤¹¡£2ÈÖÌܤΥ¿¥¤¥×¤Ë¤Ï¡¢ºÇ½é¤Î¥¿¥¤¥×¤Î¥Õ¥¡¥¤¥ë¤È¤Î¶¥¹ç¤òËɤ°¤¿¤á¤Ë¡¢¥Ï¥¤¥Õ¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹(package\-summary\&.html¤Ê¤É)¡£
-.SS "´ðËÜÆâÍÆ¥Ú¡¼¥¸"
+デフォルトã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚標準ドックレットã¯ã€ã“ã“ã§èª¬æ˜Žã™ã‚‹ã€åŸºæœ¬å†…容ページã€ç›¸äº’å‚照ページã€ã‚µãƒãƒ¼ãƒˆãƒ»ãƒšãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚å„HTMLページã¯å€‹åˆ¥ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾å¿œã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€2ã¤ã®ã‚¿ã‚¤ãƒ—ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚最åˆã®ã‚¿ã‚¤ãƒ—ã«ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«å¿œã˜ãŸåå‰ãŒä»˜ã‘られã¾ã™ã€‚2番目ã®ã‚¿ã‚¤ãƒ—ã«ã¯ã€æœ€åˆã®ã‚¿ã‚¤ãƒ—ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã®ç«¶åˆã‚’防ããŸã‚ã«ã€ãƒã‚¤ãƒ•ãƒ³ãŒå«ã¾ã‚Œã¾ã™(package\-summary\&.htmlãªã©)。
+.SS "基本内容ページ"
 .sp
 .RS 4
 .ie n \{\
@@ -498,7 +498,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-µ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤´¤È¤Ë1¤Ä¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥Ú¡¼¥¸(classname\&.html)¡£
+記載ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã”ã¨ã«1ã¤ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ãƒšãƒ¼ã‚¸(classname\&.html)。
 .RE
 .sp
 .RS 4
@@ -509,7 +509,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-µ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ú¡¼¥¸(package\-summary\&.html)¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¤¢¤ëpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.java¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¥Æ¥­¥¹¥È¤ò¤¹¤Ù¤ÆÁȤßÆþ¤ì¤Þ¤¹¡£
+記載ã•ã‚Œã¦ã„るパッケージã”ã¨ã«1ã¤ã®ãƒ‘ッケージ・ページ(package\-summary\&.html)。\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ãƒ‘ッケージ・ディレクトリ内ã«ã‚ã‚‹package\&.htmlã¾ãŸã¯package\-info\&.javaã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®HTMLテキストをã™ã¹ã¦çµ„ã¿å…¥ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -520,9 +520,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ1¤Ä¤Î³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¡£³µÍ×¥Ú¡¼¥¸¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤ÎÀèƬ¥Ú¡¼¥¸¤Ë¤Ê¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-overview\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¥Æ¥­¥¹¥È¤ò¤¹¤Ù¤ÆÁȤßÆþ¤ì¤Þ¤¹¡£³µÍ×¥Ú¡¼¥¸¤¬ºîÀ®¤µ¤ì¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£HTML¥Õ¥ì¡¼¥à¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.RE
-.SS "Áê¸ß»²¾È¥Ú¡¼¥¸"
+パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦1ã¤ã®æ¦‚è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)。概è¦ãƒšãƒ¼ã‚¸ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å…ˆé ­ãƒšãƒ¼ã‚¸ã«ãªã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fI\-overview\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«å†…ã®HTMLテキストをã™ã¹ã¦çµ„ã¿å…¥ã‚Œã¾ã™ã€‚概è¦ãƒšãƒ¼ã‚¸ãŒä½œæˆã•ã‚Œã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«è¤‡æ•°ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚HTMLフレームãŠã‚ˆã³ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+.RE
+.SS "相互å‚照ページ"
 .sp
 .RS 4
 .ie n \{\
@@ -532,7 +532,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ1¤Ä¤Î¥¯¥é¥¹³¬ÁØ¥Ú¡¼¥¸(overview\-tree\&.html)¡£³¬ÁØ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö³µÍספò¥¯¥ê¥Ã¥¯¤·¤Æ¤«¤é¡¢¡Ö³¬Áإĥ꡼¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦1ã¤ã®ã‚¯ãƒ©ã‚¹éšŽå±¤ãƒšãƒ¼ã‚¸(overview\-tree\&.html)。階層ページを表示ã™ã‚‹ã«ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œæ¦‚è¦ã€ã‚’クリックã—ã¦ã‹ã‚‰ã€ã€ŒéšŽå±¤ãƒ„リーã€ã‚’クリックã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -543,7 +543,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î¥¯¥é¥¹³¬ÁØ¥Ú¡¼¥¸(package\-tree\&.html)¡£³¬ÁØ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥Ú¡¼¥¸¤Ë°ÜÆ°¤·¡¢¡Ö³¬Áإĥ꡼¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Æ¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î³¬Áؤòɽ¼¨¤·¤Þ¤¹¡£
+パッケージã”ã¨ã«1ã¤ã®ã‚¯ãƒ©ã‚¹éšŽå±¤ãƒšãƒ¼ã‚¸(package\-tree\&.html)。階層ページを表示ã™ã‚‹ã«ã¯ã€ç‰¹å®šã®ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒšãƒ¼ã‚¸ã«ç§»å‹•ã—ã€ã€ŒéšŽå±¤ãƒ„リーã€ã‚’クリックã—ã¦ãã®ãƒ‘ッケージã®éšŽå±¤ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -554,7 +554,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸(package\-use\&.html)¤È¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤´¤È¤Ë1¤Ä¤º¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸(class\-use/classname\&.html)¡£»ÈÍÑ¥Ú¡¼¥¸¤Ç¤Ï¡¢»ØÄꤷ¤¿¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤ò»ÈÍѤ·¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤Ë¤Ä¤¤¤Æµ­½Ò¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹A¤òÎã¤Ë¤¹¤ë¤È¡¢¤½¤Î»ÈÍÑ¥Ú¡¼¥¸¤Ë¤Ï¡¢A¤Î¥µ¥Ö¥¯¥é¥¹¡¢A¤È¤·¤ÆÀë¸À¤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¡¢A¤òÊÖ¤¹¥á¥½¥Ã¥É¡¢A·¿¤Î¥Ñ¥é¥á¡¼¥¿¤ò»ý¤Ä¥á¥½¥Ã¥É¤ª¤è¤Ó¥³¥ó¥¹¥È¥é¥¯¥¿¤¬ÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£»ÈÍÑ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë°ÜÆ°¤·¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö»ÈÍѡץê¥ó¥¯¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+パッケージã”ã¨ã«1ã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸(package\-use\&.html)ã¨ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã”ã¨ã«1ã¤ãšã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸(class\-use/classname\&.html)。使用ページã§ã¯ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã¾ãŸã¯ãƒ‘ッケージã®ä¸€éƒ¨ã‚’使用ã—ã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ã¤ã„ã¦è¨˜è¿°ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹Aを例ã«ã™ã‚‹ã¨ã€ãã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã«ã¯ã€Aã®ã‚µãƒ–クラスã€Aã¨ã—ã¦å®£è¨€ã•ã‚ŒãŸãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€Aã‚’è¿”ã™ãƒ¡ã‚½ãƒƒãƒ‰ã€Aåž‹ã®ãƒ‘ラメータをæŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒçµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚使用ページを表示ã™ã‚‹ã«ã¯ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ç§»å‹•ã—ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œä½¿ç”¨ã€ãƒªãƒ³ã‚¯ã‚’クリックã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -565,7 +565,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤¹¤Ù¤Æ¤ÎÈó¿ä¾©API¤È¤½¤Î¿ä¾©¤¹¤ëÂåÂؤò¥ê¥¹¥È¤¹¤ëÈó¿ä¾©API¥Ú¡¼¥¸(deprecated\-list\&.html)¡£Èó¿ä¾©API¤Ï¾­Íè¤Î¼ÂÁõ¤Çºï½ü¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤Î¤Ç»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+ã™ã¹ã¦ã®éžæŽ¨å¥¨APIã¨ãã®æŽ¨å¥¨ã™ã‚‹ä»£æ›¿ã‚’リストã™ã‚‹éžæŽ¨å¥¨APIページ(deprecated\-list\&.html)。éžæŽ¨å¥¨APIã¯å°†æ¥ã®å®Ÿè£…ã§å‰Šé™¤ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã®ã§ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -576,7 +576,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Äê¿ô¥Õ¥£¡¼¥ë¥É¤ÎÃÍÍѤÎÄê¿ô¥Õ¥£¡¼¥ë¥ÉÃÍ¥Ú¡¼¥¸(constant\-values\&.html)¡£
+定数フィールドã®å€¤ç”¨ã®å®šæ•°ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å€¤ãƒšãƒ¼ã‚¸(constant\-values\&.html)。
 .RE
 .sp
 .RS 4
@@ -587,9 +587,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ľÎ󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸(serialized\-form\&.html)¡£¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥á¥½¥Ã¥É¤ÎÀâÌÀ¤ò´Þ¤à¡¢Ä¾Îó²½²Äǽ¤«¤Ä³°Éô²½²Äǽ¤Ê¥¯¥é¥¹¤Ë´Ø¤¹¤ë¾ðÊóÍѤΥڡ¼¥¸¤Ç¤¹¡£¤³¤Î¥Ú¡¼¥¸Æâ¤Î¾ðÊó¤Ï¡¢API¤ò»ÈÍѤ¹¤ë³«È¯¼Ô¤Ç¤Ï¤Ê¤¯¡¢ºÆ¼ÂÁõ¼Ô¤ËɬÍפʾðÊó¤Ç¤¹¡£Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤Ø¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢Ä¾Î󲽤µ¤ì¤¿¥¯¥é¥¹¤Ë°ÜÆ°¤·¤Æ¡¢¤½¤Î¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤Ë¤¢¤ë¡Ö´ØÏ¢¹àÌܡץ»¥¯¥·¥ç¥ó¤Ç¡ÖľÎ󲽤µ¤ì¤¿·Á¼°¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ÏľÎ󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢Serializable¤ò¼ÂÁõ¤¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹(public¤Þ¤¿¤ÏÈópublic)¤¬¡¢¤½¤Î\fIreadObject\fR¤ä\fIwriteObject\fR¥á¥½¥Ã¥É¡¢Ä¾Î󲽤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¡¢¤ª¤è¤Ó\fI@serial\fR¡¢\fI@serialField\fR¡¢\fI@serialData\fR¥¿¥°¤«¤é¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤È¤È¤â¤Ë¥ê¥¹¥È¤µ¤ì¤Þ¤¹¡£Ä¾Îó²½²Äǽ¤Êpublic¥¯¥é¥¹¤ò½ü³°¤¹¤ë¤Ë¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸)¤ò\fI@serial\fR
-exclude¤Ç¥Þ¡¼¥¯¤·¤Þ¤¹¡£Ä¾Îó²½²Äǽ¤Êpackage\-private¥¯¥é¥¹¤ò´Þ¤á¤ë¤Ë¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸)¤ò\fI@serial\fR
-include¤Ç¥Þ¡¼¥¯¤·¤Þ¤¹¡£¥ê¥ê¡¼¥¹1\&.4¤Ç¤Ï¡¢\fI\-private\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢public¥¯¥é¥¹¤ª¤è¤Óprivate¥¯¥é¥¹¤Î´°Á´¤ËľÎ󲽤µ¤ì¤¿·Á¼°¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+直列化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸(serialized\-form\&.html)。フィールドãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®èª¬æ˜Žã‚’å«ã‚€ã€ç›´åˆ—化å¯èƒ½ã‹ã¤å¤–部化å¯èƒ½ãªã‚¯ãƒ©ã‚¹ã«é–¢ã™ã‚‹æƒ…報用ã®ãƒšãƒ¼ã‚¸ã§ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸å†…ã®æƒ…å ±ã¯ã€APIを使用ã™ã‚‹é–‹ç™ºè€…ã§ã¯ãªãã€å†å®Ÿè£…者ã«å¿…è¦ãªæƒ…å ±ã§ã™ã€‚直列化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã¸ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€ç›´åˆ—化ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«ç§»å‹•ã—ã¦ã€ãã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã‚る「関連項目ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã€Œç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã€ã‚’クリックã—ã¾ã™ã€‚標準ドックレットã¯ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸ã«ã¯ã€Serializableを実装ã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹(publicã¾ãŸã¯éžpublic)ãŒã€ãã®\fIreadObject\fRã‚„\fIwriteObject\fRメソッドã€ç›´åˆ—化ã•ã‚ŒãŸãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ãŠã‚ˆã³\fI@serial\fRã€\fI@serialField\fRã€\fI@serialData\fRã‚¿ã‚°ã‹ã‚‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¨ã¨ã‚‚ã«ãƒªã‚¹ãƒˆã•ã‚Œã¾ã™ã€‚直列化å¯èƒ½ãªpublicクラスを除外ã™ã‚‹ã«ã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ãƒ‘ッケージ)ã‚’\fI@serial\fR
+excludeã§ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚直列化å¯èƒ½ãªpackage\-privateクラスをå«ã‚ã‚‹ã«ã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ãƒ‘ッケージ)ã‚’\fI@serial\fR
+includeã§ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚リリース1\&.4ã§ã¯ã€\fI\-private\fRオプションを指定ã›ãšã«\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€publicクラスãŠã‚ˆã³privateクラスã®å®Œå…¨ã«ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã‚’生æˆã§ãã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -600,9 +600,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-º÷°ú¥Ú¡¼¥¸(\fIindex\-*\&.html\fR)¡£¤¹¤Ù¤Æ¤Î¥¯¥é¥¹Ì¾¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¡¢¥³¥ó¥¹¥È¥é¥¯¥¿Ì¾¡¢¥Õ¥£¡¼¥ë¥É̾¡¢¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤¬¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ëʤó¤Ç¤¤¤Þ¤¹¡£º÷°ú¥Ú¡¼¥¸¤Ï¡¢Unicode¤ò°·¤¨¤ë¤è¤¦¤Ë¹ñºÝ²½¤µ¤ì¤Æ¤¤¤Þ¤¹¡£1¤Ä¤Î¥Õ¥¡¥¤¥ë¤È¤·¤ÆÀ¸À®¤¹¤ë¤³¤È¤â¡¢ÀèƬʸ»ú(±Ñ¸ì¤Î¾ì¹çA\(enZ)¤´¤È¤ËÊÌ¡¹¤Î¥Õ¥¡¥¤¥ë¤È¤·¤ÆÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
-.RE
-.SS "¥µ¥Ý¡¼¥È¡¦¥Ú¡¼¥¸"
+索引ページ(\fIindex\-*\&.html\fR)。ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹åã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹åã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿åã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰åã€ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åãŒã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ä¸¦ã‚“ã§ã„ã¾ã™ã€‚索引ページã¯ã€Unicodeを扱ãˆã‚‹ã‚ˆã†ã«å›½éš›åŒ–ã•ã‚Œã¦ã„ã¾ã™ã€‚1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ç”Ÿæˆã™ã‚‹ã“ã¨ã‚‚ã€å…ˆé ­æ–‡å­—(英語ã®å ´åˆA\(enZ)ã”ã¨ã«åˆ¥ã€…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ç”Ÿæˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
+.RE
+.SS "サãƒãƒ¼ãƒˆãƒ»ãƒšãƒ¼ã‚¸"
 .sp
 .RS 4
 .ie n \{\
@@ -612,7 +612,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ø¥ë¥×¡¦¥Ú¡¼¥¸(help\-doc\&.html)¡£¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤äÁ°½Ò¤Î³Æ¥Ú¡¼¥¸¤Ë´Ø¤¹¤ëÀâÌÀ¤¬µ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤òÆȼ«¤Î¥«¥¹¥¿¥à¡¦¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤Ç¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ë¤Ë¤Ï¡¢\fI\-helpfile\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+ヘルプ・ページ(help\-doc\&.html)。ナビゲーション・ãƒãƒ¼ã‚„å‰è¿°ã®å„ページã«é–¢ã™ã‚‹èª¬æ˜ŽãŒè¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã®ãƒ˜ãƒ«ãƒ—・ファイルを独自ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ˜ãƒ«ãƒ—・ファイルã§ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ã«ã¯ã€\fI\-helpfile\fRを使用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -623,7 +623,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɽ¼¨ÍѤÎHTML¥Õ¥ì¡¼¥à¤òºîÀ®¤¹¤ë1¤Ä¤Îindex\&.html¥Õ¥¡¥¤¥ë¡£¥Õ¥ì¡¼¥àÉÕ¤­¤ÎÀèƬ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤Þ¤¹¡£index\&.html¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Æ¥­¥¹¥È¡¦¥³¥ó¥Æ¥ó¥Ä¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+表示用ã®HTMLフレームを作æˆã™ã‚‹1ã¤ã®index\&.htmlファイル。フレーム付ãã®å…ˆé ­ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ã«ã¯ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã—ã¾ã™ã€‚index\&.htmlファイルã«ã¯ã€ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã¯å«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -634,7 +634,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Ê£¿ô¤Î¥Õ¥ì¡¼¥à¡¦¥Õ¥¡¥¤¥ë(\fI*\-frame\&.html\fR)¡£¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥ê¥¹¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Õ¥ì¡¼¥à¡¦¥Õ¥¡¥¤¥ë¤ÏHTML¥Õ¥ì¡¼¥à¤òɽ¼¨¤·¤Þ¤¹¡£
+複数ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(\fI*\-frame\&.html\fR)。パッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹ãƒˆãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚フレーム・ファイルã¯HTMLフレームを表示ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -645,7 +645,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë(package\-list)¡£\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¢¤ê¡¢¤É¤Î¥ê¥ó¥¯¤«¤é¤â¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£
+パッケージ・リスト・ファイル(package\-list)。\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚パッケージ・リスト・ファイルã¯ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã‚ã‚Šã€ã©ã®ãƒªãƒ³ã‚¯ã‹ã‚‰ã‚‚アクセスã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -656,7 +656,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ë(stylesheet\&.css)¡£À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤Î°ìÉô¤ÎÍ×ÁǤˤĤ¤¤Æ¿§¡¢¥Õ¥©¥ó¥È¡¦¥Õ¥¡¥ß¥ê¡¢¥Õ¥©¥ó¥È¡¦¥µ¥¤¥º¡¢¥Õ¥©¥ó¥È¡¦¥¹¥¿¥¤¥ë¡¢¤ª¤è¤ÓÇÛÃÖ¤òÀ©¸æ¤·¤Þ¤¹¡£
+スタイルシート・ファイル(stylesheet\&.css)。生æˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®ä¸€éƒ¨ã®è¦ç´ ã«ã¤ã„ã¦è‰²ã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ãƒŸãƒªã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ã‚µã‚¤ã‚ºã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã€ãŠã‚ˆã³é…置を制御ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -667,22 +667,22 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-doc\-files¥Ç¥£¥ì¥¯¥È¥ê¡£°¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤¹¤ë¥¤¥á¡¼¥¸¡¢¥µ¥ó¥×¥ë¡¦¥³¡¼¥É¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ê¤É¤Î¥Õ¥¡¥¤¥ë¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ½èÍý¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤ÎÃæ¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ë¤Î¤ß½èÍý¤µ¤ì¤Þ¤¹¡£
+doc\-filesディレクトリ。宛先ディレクトリã«ã‚³ãƒ”ーã™ã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ã‚µãƒ³ãƒ—ル・コードã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãªã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦å‡¦ç†ã•ã‚Œã¾ã›ã‚“。ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ä¸­ã«å­˜åœ¨ã™ã‚‹å ´åˆã«ã®ã¿å‡¦ç†ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "HTML¥Õ¥ì¡¼¥à"
+オプションをå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "HTMLフレーム"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤¿Ãͤ˴ð¤Å¤­¡¢ºÇ¾®¸ÂɬÍפʿô(2¤Þ¤¿¤Ï3)¤Î¥Õ¥ì¡¼¥à¤òÀ¸À®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë°ú¿ô¤È¤·¤Æ1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ¹¾ì¹ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥ê¥¹¥È¤¬¾Êά¤µ¤ì¤Þ¤¹¡£¤½¤Î¤«¤ï¤ê¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ïº¸Â¦¤ÎÎó¤Ë1¤Ä¤Î¥Õ¥ì¡¼¥à¤òºîÀ®¤·¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¤òɽ¼¨¤·¤Þ¤¹¡£Ê£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¥ê¥¹¥È¤¹¤ëÂè3¤Î¥Õ¥ì¡¼¥à¤È³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¤òºîÀ®¤·¤Þ¤¹¡£¥Õ¥ì¡¼¥à¤ò¾Êά¤¹¤ë¤Ë¤Ï¡¢¡Ö¥Õ¥ì¡¼¥à¤Ê¤·¡×¥ê¥ó¥¯¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤«¡¢overview\-summary\&.html¥Ú¡¼¥¸¤«¤é¥Ú¡¼¥¸¡¦¥»¥Ã¥È¤òɽ¼¨¤·¤Þ¤¹¡£
-.SS "À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î¹½Â¤"
+\fIjavadoc\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã«æ¸¡ã•ã‚ŒãŸå€¤ã«åŸºã¥ãã€æœ€å°é™å¿…è¦ãªæ•°(2ã¾ãŸã¯3)ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’生æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«å¼•æ•°ã¨ã—ã¦1ã¤ã®ãƒ‘ッケージåã¾ãŸã¯1ã¤ã®ãƒ‘ッケージã«å«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’渡ã™å ´åˆã¯ã€ãƒ‘ッケージã®ãƒªã‚¹ãƒˆãŒçœç•¥ã•ã‚Œã¾ã™ã€‚ãã®ã‹ã‚ã‚Šã«ã€\fIjavadoc\fRコマンドã¯å·¦å´ã®åˆ—ã«1ã¤ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’作æˆã—ã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚複数ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã¯ã€\fIjavadoc\fRコマンドã¯ã€ã™ã¹ã¦ã®ãƒ‘ッケージをリストã™ã‚‹ç¬¬3ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¨æ¦‚è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)を作æˆã—ã¾ã™ã€‚フレームをçœç•¥ã™ã‚‹ã«ã¯ã€ã€Œãƒ•ãƒ¬ãƒ¼ãƒ ãªã—ã€ãƒªãƒ³ã‚¯ã‚’クリックã™ã‚‹ã‹ã€overview\-summary\&.htmlページã‹ã‚‰ãƒšãƒ¼ã‚¸ãƒ»ã‚»ãƒƒãƒˆã‚’表示ã—ã¾ã™ã€‚
+.SS "生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹é€ "
 .PP
-À¸À®¤µ¤ì¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê³¬ÁؤËÊÔÀ®¤µ¤ì¤Þ¤¹¡£1¤Ä¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ë¤Ä¤­1¤Ä¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¢¤È¤¤¤¦¹½Â¤¤Ë¤Ê¤ê¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Javaソース・ファイルãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªéšŽå±¤ã«ç·¨æˆã•ã‚Œã¾ã™ã€‚1ã¤ã®ã‚µãƒ–パッケージã«ã¤ã1ã¤ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€ã¨ã„ã†æ§‹é€ ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.applet\&.Applet\fR¥¯¥é¥¹ÍѤËÀ¸À®¤µ¤ì¤ë¥É¥­¥å¥á¥ó¥È¤Ï¡¢java/applet/Applet\&.html¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIjava\&.applet\&.Applet\fRクラス用ã«ç”Ÿæˆã•ã‚Œã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€java/applet/Applet\&.htmlã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .PP
-À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤¬\fIapidocs\fR¤À¤È¤¹¤ë¤È¡¢\fIjava\&.applet\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥Õ¥¡¥¤¥ë¤Î¹½Â¤¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£Á°½Ò¤Î¤è¤¦¤Ë¡¢\fIframe\fR¤È¤¤¤¦¸ì¤ò̾Á°¤Ë´Þ¤à¥Õ¥¡¥¤¥ë¤Ï¡¢¤¹¤Ù¤Æº¸¾å¤Þ¤¿¤Ïº¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤ÎHTML¥Õ¥¡¥¤¥ë¤Ï¡¢¤¹¤Ù¤Æ±¦Â¦¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ãŒ\fIapidocs\fRã ã¨ã™ã‚‹ã¨ã€\fIjava\&.applet\fRパッケージã®ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹é€ ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚å‰è¿°ã®ã‚ˆã†ã«ã€\fIframe\fRã¨ã„ã†èªžã‚’åå‰ã«å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã™ã¹ã¦å·¦ä¸Šã¾ãŸã¯å·¦ä¸‹ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãれ以外ã®HTMLファイルã¯ã€ã™ã¹ã¦å³å´ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥£¥ì¥¯¥È¥ê¤ÏÂÀ»ú¤Ç¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ø¤Î°ú¿ô¤¬¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤Ï¤Ê¤¯¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ç¤¢¤ë¾ì¹ç¤Ë¾Êά¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£°ú¿ô¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¾ì¹ç¡¢¶õ¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ë¤Î¤ß¡¢À¸À®Àè¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ディレクトリã¯å¤ªå­—ã§ã™ã€‚アスタリスク(*)ã¯ã€\fIjavadoc\fRコマンドã¸ã®å¼•æ•°ãŒãƒ‘ッケージåã§ã¯ãªãソース・ファイルåã§ã‚ã‚‹å ´åˆã«çœç•¥ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’示ã—ã¦ã„ã¾ã™ã€‚引数ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®å ´åˆã€ç©ºã®ãƒ‘ッケージ・リストãŒä½œæˆã•ã‚Œã¾ã™ã€‚doc\-filesディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã«å­˜åœ¨ã™ã‚‹å ´åˆã«ã®ã¿ã€ç”Ÿæˆå…ˆã«ä½œæˆã•ã‚Œã¾ã™ã€‚生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -692,7 +692,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapidocs\fR: ºÇ¾å°Ì¥ì¥Ù¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBapidocs\fR: 最上ä½ãƒ¬ãƒ™ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .sp
 .RS 4
 .ie n \{\
@@ -702,7 +702,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-index\&.html: HTML¥Õ¥ì¡¼¥à¤òÀßÄꤹ¤ë½é´ü¥Ú¡¼¥¸
+index\&.html: HTMLフレームを設定ã™ã‚‹åˆæœŸãƒšãƒ¼ã‚¸
 .RE
 .sp
 .RS 4
@@ -713,7 +713,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-*overview\-summary\&.html: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤È¥µ¥Þ¥ê¡¼
+*overview\-summary\&.html: パッケージ・リストã¨ã‚µãƒžãƒªãƒ¼
 .RE
 .sp
 .RS 4
@@ -724,7 +724,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-overview\-tree\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥¯¥é¥¹³¬ÁØ
+overview\-tree\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹éšŽå±¤
 .RE
 .sp
 .RS 4
@@ -735,7 +735,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-deprecated\-list\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎÈó¿ä¾©API
+deprecated\-list\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®éžæŽ¨å¥¨API
 .RE
 .sp
 .RS 4
@@ -746,7 +746,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-constant\-values\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎÀÅŪ¥Õ¥£¡¼¥ë¥ÉÃÍ
+constant\-values\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®é™çš„フィールド値
 .RE
 .sp
 .RS 4
@@ -757,7 +757,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-serialized\-form\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎľÎ󲽤µ¤ì¤¿¥Õ¥©¡¼¥à
+serialized\-form\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®ç›´åˆ—化ã•ã‚ŒãŸãƒ•ã‚©ãƒ¼ãƒ 
 .RE
 .sp
 .RS 4
@@ -768,7 +768,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-*overview\-frame\&.html: º¸¾å¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸
+*overview\-frame\&.html: 左上ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ã™ã¹ã¦ã®ãƒ‘ッケージ
 .RE
 .sp
 .RS 4
@@ -779,7 +779,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-allclasses\-frame\&.html: º¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹
+allclasses\-frame\&.html: 左下ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹
 .RE
 .sp
 .RS 4
@@ -790,7 +790,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-help\-doc\&.html: Javadoc¥Ú¡¼¥¸¤ÎÊÔÀ®¤Ë´Ø¤¹¤ë¥Ø¥ë¥×
+help\-doc\&.html: Javadocページã®ç·¨æˆã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—
 .RE
 .sp
 .RS 4
@@ -802,7 +802,7 @@
 .IP \(bu 2.3
 .\}
 index\-all\&.html:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤Ê¤·¤ÇºîÀ®¤µ¤ì¤¿¥Ç¥Õ¥©¥ë¥È¤Îº÷°ú
+\fI\-splitindex\fRオプションãªã—ã§ä½œæˆã•ã‚ŒãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç´¢å¼•
 .RE
 .sp
 .RS 4
@@ -814,7 +814,7 @@
 .IP \(bu 2.3
 .\}
 \fBindex\-files\fR:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆºîÀ®¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê
+\fI\-splitindex\fRオプションを指定ã—ã¦ä½œæˆã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .sp
 .RS 4
 .ie n \{\
@@ -825,7 +825,7 @@
 .IP \(bu 2.3
 .\}
 index\-<number>\&.html:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆºîÀ®¤µ¤ì¤¿º÷°ú¥Õ¥¡¥¤¥ë
+\fI\-splitindex\fRオプションを指定ã—ã¦ä½œæˆã•ã‚ŒãŸç´¢å¼•ãƒ•ã‚¡ã‚¤ãƒ«
 .RE
 .RE
 .sp
@@ -837,7 +837,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-list: ³°Éô»²¾È¤ò²ò·è¤¹¤ë¤¿¤á¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾
+package\-list: 外部å‚照を解決ã™ã‚‹ãŸã‚ã®ãƒ‘ッケージå
 .RE
 .sp
 .RS 4
@@ -848,7 +848,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-stylesheet\&.css: ¥Õ¥©¥ó¥È¡¢¿§¡¢°ÌÃ֤ʤɤòÄêµÁ¤·¤Þ¤¹
+stylesheet\&.css: フォントã€è‰²ã€ä½ç½®ãªã©ã‚’定義ã—ã¾ã™
 .RE
 .RE
 .sp
@@ -860,7 +860,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBjava\fR: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBjava\fR: パッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -870,7 +870,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapplet\fR: ¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBapplet\fR: サブパッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -881,7 +881,7 @@
 .IP \(bu 2.3
 .\}
 Applet\&.html:
-\fIApplet\fR¥¯¥é¥¹¡¦¥Ú¡¼¥¸
+\fIApplet\fRクラス・ページ
 .RE
 .sp
 .RS 4
@@ -893,7 +893,7 @@
 .IP \(bu 2.3
 .\}
 AppletContext\&.html:
-\fIAppletContext\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAppletContext\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -905,7 +905,7 @@
 .IP \(bu 2.3
 .\}
 AppletStub\&.html:
-\fIAppletStub\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAppletStub\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -917,7 +917,7 @@
 .IP \(bu 2.3
 .\}
 AudioClip\&.html:
-\fIAudioClip\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAudioClip\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -928,7 +928,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-summary\&.html: ¥¯¥é¥¹¤È¥µ¥Þ¥ê¡¼
+package\-summary\&.html: クラスã¨ã‚µãƒžãƒªãƒ¼
 .RE
 .sp
 .RS 4
@@ -939,7 +939,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-frame\&.html: º¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¡¦¥¯¥é¥¹
+package\-frame\&.html: 左下ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ãƒ‘ッケージ・クラス
 .RE
 .sp
 .RS 4
@@ -950,7 +950,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-tree\&.html: ¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥¯¥é¥¹³¬ÁØ
+package\-tree\&.html: ã“ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹éšŽå±¤
 .RE
 .sp
 .RS 4
@@ -961,7 +961,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-use\&.html: ¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬»ÈÍѤµ¤ì¤ë¾ì½ê
+package\-use\&.html: ã“ã®ãƒ‘ッケージãŒä½¿ç”¨ã•ã‚Œã‚‹å ´æ‰€
 .RE
 .sp
 .RS 4
@@ -972,7 +972,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBdoc\-files\fR: ¥¤¥á¡¼¥¸¤ª¤è¤Ó¥µ¥ó¥×¥ë¡¦¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê
+\fBdoc\-files\fR: イメージãŠã‚ˆã³ã‚µãƒ³ãƒ—ル・ファイルã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .RE
 .sp
 .RS 4
@@ -983,18 +983,18 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBclass\-use\fR: ¥¤¥á¡¼¥¸¤ª¤è¤Ó¥µ¥ó¥×¥ë¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê
-.sp
-\- Applet\&.html: Applet¥¯¥é¥¹¤Î»ÈÍÑ
+\fBclass\-use\fR: イメージãŠã‚ˆã³ã‚µãƒ³ãƒ—ル・ファイルã®å ´æ‰€
+.sp
+\- Applet\&.html: Appletクラスã®ä½¿ç”¨
 .sp
 \- AppletContext\&.html:
-\fIAppletContext\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAppletContext\fRインタフェースã®ä½¿ç”¨
 .sp
 \- AppletStub\&.html:
-\fIAppletStub\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAppletStub\fRインタフェースã®ä½¿ç”¨
 .sp
 \- AudioClip\&.html:
-\fIAudioClip\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAudioClip\fRインタフェースã®ä½¿ç”¨
 .RE
 .RE
 .RE
@@ -1007,7 +1007,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBsrc\-html\fR: ¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBsrc\-html\fR: ソース・コード・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -1017,7 +1017,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBjava\fR: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBjava\fR: パッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -1027,24 +1027,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapplet\fR: ¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
-.sp
-\- Applet\&.html: Applet¥½¡¼¥¹¡¦¥³¡¼¥É
+\fBapplet\fR: サブパッケージ・ディレクトリ
+.sp
+\- Applet\&.html: Appletソース・コード
 .sp
 \- AppletContext\&.html:
-\fIAppletContext\fR¥½¡¼¥¹¡¦¥³¡¼¥É
+\fIAppletContext\fRソース・コード
 .sp
 \- AppletStub\&.html:
-\fIAppletStub\fR¥½¡¼¥¹¡¦¥³¡¼¥É
+\fIAppletStub\fRソース・コード
 .sp
 \- AudioClip\&.html:
-\fIAudioClip\fR¥½¡¼¥¹¡¦¥³¡¼¥É
-.RE
-.RE
-.RE
-.SS "À¸À®¤µ¤ì¤ëAPIÀë¸À"
+\fIAudioClip\fRソース・コード
+.RE
+.RE
+.RE
+.SS "生æˆã•ã‚Œã‚‹API宣言"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥Õ¥£¡¼¥ë¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥á¥½¥Ã¥É¤Îµ­½Ò¤ÎºÇ½é¤Ë¡¢¤½¤ÎAPIÍѤÎÀë¸À¤òÀ¸À®¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIBoolean\fR¥¯¥é¥¹¤ÎÀë¸À¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãã‚Œãžã‚Œã®ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®è¨˜è¿°ã®æœ€åˆã«ã€ãã®API用ã®å®£è¨€ã‚’生æˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIBoolean\fRクラスã®å®£è¨€ã¯ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1058,7 +1058,7 @@
 .RE
 .\}
 .PP
-\fIBoolean\&.valueOf\fR¥á¥½¥Ã¥É¤ÎÀë¸À¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+\fIBoolean\&.valueOf\fRメソッドã®å®£è¨€ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1070,15 +1070,15 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢½¤¾þ»Ò\fIpublic\fR¡¢\fIprotected\fR¡¢\fIprivate\fR¡¢\fIabstract\fR¡¢\fIfinal\fR¡¢\fIstatic\fR¡¢\fItransient\fR¡¢¤ª¤è¤Ó\fIvolatile\fR¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢\fIsynchronized\fR¤ª¤è¤Ó\fInative\fR¤Ï¤Ç¤­¤Þ¤»¤ó¡£\fIsynchronized\fR¤ª¤è¤Ó\fInative\fR½¤¾þ»Ò¤Ï¡¢¼ÂÁõ¤Î¾ÜºÙ¤È¤ß¤Ê¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢API»ÅÍͤˤϴޤޤì¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドã¯ã€ä¿®é£¾å­\fIpublic\fRã€\fIprotected\fRã€\fIprivate\fRã€\fIabstract\fRã€\fIfinal\fRã€\fIstatic\fRã€\fItransient\fRã€ãŠã‚ˆã³\fIvolatile\fRã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€\fIsynchronized\fRãŠã‚ˆã³\fInative\fRã¯ã§ãã¾ã›ã‚“。\fIsynchronized\fRãŠã‚ˆã³\fInative\fR修飾å­ã¯ã€å®Ÿè£…ã®è©³ç´°ã¨ã¿ãªã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€API仕様ã«ã¯å«ã¾ã‚Œã¾ã›ã‚“。
 .PP
-API¤Ç¤Ï¡¢Ê¹ÔÀ­¥»¥Þ¥ó¥Æ¥£¥¯¥¹¤Ë¤Ä¤¤¤Æ¡¢¥­¡¼¥ï¡¼¥É\fIsynchronized\fR¤Ë°Í¸¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥³¥á¥ó¥È¤Î¼çÀâÌÀ¤È¤·¤Æ¥É¥­¥å¥á¥ó¥È²½¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¡Ö1¤Ä¤Îenumeration¤òÊ£¿ô¤Î¥¹¥ì¥Ã¥É¤«¤éʹԤ·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡×¤Î¤è¤¦¤Ëµ­½Ò¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤³¤ì¤é¤Î¥»¥Þ¥ó¥Æ¥£¥¯¥¹¤ò¼Â¸½¤¹¤ëÊýË¡¤òµ­½Ò¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fIHashtable\fR¥ª¥×¥·¥ç¥ó¤Ï¥¹¥ì¥Ã¥É¥»¡¼¥Õ¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¡Ö¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤òƱ´ü²½¤·¤Æ¤½¤ì¤ò¼Â¸½¤¹¤ë¡×¤Î¤è¤¦¤Ë»ØÄꤹ¤ëº¬µò¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤è¤ê¹âÅÙ¤ÊʹÔÀ­¤Î¤¿¤á¤Ë¡¢¥Ð¥±¥Ã¥È¡¦¥ì¥Ù¥ë¤ÇÆâÉôŪ¤ËƱ´ü²½¤¹¤ë¸¢¸Â¤òÊÝÍ­¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
-.SH "¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È"
+APIã§ã¯ã€ä¸¦è¡Œæ€§ã‚»ãƒžãƒ³ãƒ†ã‚£ã‚¯ã‚¹ã«ã¤ã„ã¦ã€ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰\fIsynchronized\fRã«ä¾å­˜ã™ã‚‹ã®ã§ã¯ãªãã€ã‚³ãƒ¡ãƒ³ãƒˆã®ä¸»èª¬æ˜Žã¨ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ã€Œ1ã¤ã®enumerationを複数ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‹ã‚‰ä¸¦è¡Œã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ããªã„ã€ã®ã‚ˆã†ã«è¨˜è¿°ã—ã¾ã™ã€‚ドキュメントã«ã¯ã€ã“れらã®ã‚»ãƒžãƒ³ãƒ†ã‚£ã‚¯ã‚¹ã‚’実ç¾ã™ã‚‹æ–¹æ³•ã‚’記述ã—ãªã„ã§ãã ã•ã„。ãŸã¨ãˆã°ã€\fIHashtable\fRオプションã¯ã‚¹ãƒ¬ãƒƒãƒ‰ã‚»ãƒ¼ãƒ•ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ã€Œã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’åŒæœŸåŒ–ã—ã¦ãれを実ç¾ã™ã‚‹ã€ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹æ ¹æ‹ ã¯ã‚ã‚Šã¾ã›ã‚“。より高度ãªä¸¦è¡Œæ€§ã®ãŸã‚ã«ã€ãƒã‚±ãƒƒãƒˆãƒ»ãƒ¬ãƒ™ãƒ«ã§å†…部的ã«åŒæœŸåŒ–ã™ã‚‹æ¨©é™ã‚’ä¿æœ‰ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
+.SH "ドキュメンテーション・コメント"
 .PP
-¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥³¥á¥ó¥È¤È¥³¥á¥ó¥È¤Î·Ñ¾µ¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£
-.SS "¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥³¥á¥ó¥È"
+ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®ã‚³ãƒ¡ãƒ³ãƒˆã¨ã‚³ãƒ¡ãƒ³ãƒˆã®ç¶™æ‰¿ã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚
+.SS "ソース・コード・コメント"
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤ÎǤ°Õ¤Î¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÎÀë¸À¤ÎÁ°¤Ë¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£³Æ¥Ñ¥Ã¥±¡¼¥¸¤Ë¤â¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¹½Ê¸¤Ï¼ã´³°Û¤Ê¤ê¤Þ¤¹¤¬¡¢³µÍפˤâ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢\fI/**\fR¤È¡¢½ª¤ï¤ê¤òɽ¤¹\fI*/\fR¤Î´Ö¤Ë¤¢¤ëʸ»ú¤«¤é¹½À®¤µ¤ì¤Þ¤¹¡£ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤Ï³Æ¹Ô¤Ç»ÈÍѤǤ­¡¢¼¡¤Î¹à¤Ç¾Ü¤·¤¯ÀâÌÀ¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£
+ソース・コードã®ä»»æ„ã®ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å®£è¨€ã®å‰ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚å„パッケージã«ã‚‚ドキュメンテーション・コメントを作æˆã§ãã¾ã™ã€‚構文ã¯è‹¥å¹²ç•°ãªã‚Šã¾ã™ãŒã€æ¦‚è¦ã«ã‚‚ドキュメンテーション・コメントを作æˆã§ãã¾ã™ã€‚ドキュメンテーション・コメントã¯ã€\fI/**\fRã¨ã€çµ‚ã‚りを表ã™\fI*/\fRã®é–“ã«ã‚る文字ã‹ã‚‰æ§‹æˆã•ã‚Œã¾ã™ã€‚先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã¯å„è¡Œã§ä½¿ç”¨ã§ãã€æ¬¡ã®é …ã§è©³ã—ã説明ã—ã¾ã™ã€‚コメントã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1093,7 +1093,7 @@
 .RE
 .\}
 .PP
-¥¹¥Ú¡¼¥¹¤òÀáÌ󤹤ë¤Ë¤Ï¡¢¥³¥á¥ó¥È¤ò1¹Ô¤ËÆþ¤ì¤Þ¤¹¡£
+スペースを節約ã™ã‚‹ã«ã¯ã€ã‚³ãƒ¡ãƒ³ãƒˆã‚’1è¡Œã«å…¥ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1104,10 +1104,10 @@
 .if n \{\
 .RE
 .\}
-¥³¥á¥ó¥È¤ÎÇÛÃÖ.PP
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥ÉÀë¸À¤ÎľÁ°¤ËÇÛÃÖ¤µ¤ì¤ë¾ì¹ç¤Ë¤Î¤ßǧ¼±¤µ¤ì¤Þ¤¹¡£¥á¥½¥Ã¥É¤ÎËÜÂΤËÃÖ¤«¤ì¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Àë¸Àʸ¤´¤È¤Ë1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤·¤«Ç§¼±¤·¤Þ¤»¤ó¡£¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コメントã®é…ç½®.PP
+ドキュメンテーション・コメントã¯ã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å®£è¨€ã®ç›´å‰ã«é…ç½®ã•ã‚Œã‚‹å ´åˆã«ã®ã¿èªè­˜ã•ã‚Œã¾ã™ã€‚メソッドã®æœ¬ä½“ã«ç½®ã‹ã‚Œã¦ã„るドキュメンテーション・コメントã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€å®£è¨€æ–‡ã”ã¨ã«1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã—ã‹èªè­˜ã—ã¾ã›ã‚“。タグを使用ã§ãる場所をå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¤è¤¯¤¢¤ë´Ö°ã¤¤¤Ï¡¢¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤È¥¯¥é¥¹Àë¸À¤Î´Ö¤Ë\fIimport\fRʸ¤òÃÖ¤¤¤Æ¤·¤Þ¤¦¤³¤È¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤ò̵»ë¤¹¤ë¤Î¤Ç¡¢\fIimport\fRʸ¤ò¤³¤Î¾ì½ê¤ËÇÛÃÖ¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+よãã‚ã‚‹é–“é•ã„ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¨ã‚¯ãƒ©ã‚¹å®£è¨€ã®é–“ã«\fIimport\fR文を置ã„ã¦ã—ã¾ã†ã“ã¨ã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’無視ã™ã‚‹ã®ã§ã€\fIimport\fR文をã“ã®å ´æ‰€ã«é…ç½®ã—ãªã„ã§ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1124,8 +1124,8 @@
 .if n \{\
 .RE
 .\}
-¥³¥á¥ó¥È¤Î¥Ñ¡¼¥Ä.PP
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢¼çÀâÌÀ¤È¤½¤Î¸å¤Ë³¤¯¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¼çÀâÌÀ¤Ï¡¢³«»Ï¶èÀÚ¤êʸ»ú\fI/**\fR¤Ç»Ï¤Þ¤ê¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Þ¤Ç³¤­¤Þ¤¹¡£¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Ï¡¢ÀèƬʸ»ú¤¬\fI@\fR¤Î¹Ô¤ÇÄêµÁ¤µ¤ì¤ëºÇ½é¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤«¤é»Ï¤Þ¤ê¤Þ¤¹(ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¡¢¶õÇòʸ»ú¡¢ÀèƬ¤Î¶èÀÚ¤êʸ»ú\fI/**\fR¤Ï½ü¤¯)¡£¼çÀâÌÀ¤òµ­½Ò¤»¤º¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Î¤ß¤Î¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¼çÀâÌÀ¤Ï¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó°Ê¹ß¤Ë³¤±¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¥¿¥°¤Î°ú¿ô¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥¿¥°¤Î¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¡£²¿²ó¤âµ­½Ò¤Ç¤­¤ë¥¿¥°¤È¡¢1²ó¤·¤«µ­½Ò¤Ç¤­¤Ê¤¤¥¿¥°¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î\fI@see\fR¥¿¥°¤«¤é¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Ï»Ï¤Þ¤ê¤Þ¤¹¡£
+コメントã®ãƒ‘ーツ.PP
+ドキュメンテーション・コメントã«ã¯ã€ä¸»èª¬æ˜Žã¨ãã®å¾Œã«ç¶šãタグ・セクションãŒå«ã¾ã‚Œã¾ã™ã€‚主説明ã¯ã€é–‹å§‹åŒºåˆ‡ã‚Šæ–‡å­—\fI/**\fRã§å§‹ã¾ã‚Šã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¾ã§ç¶šãã¾ã™ã€‚タグ・セクションã¯ã€å…ˆé ­æ–‡å­—ãŒ\fI@\fRã®è¡Œã§å®šç¾©ã•ã‚Œã‚‹æœ€åˆã®ãƒ–ロック・タグã‹ã‚‰å§‹ã¾ã‚Šã¾ã™(先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã€ç©ºç™½æ–‡å­—ã€å…ˆé ­ã®åŒºåˆ‡ã‚Šæ–‡å­—\fI/**\fRã¯é™¤ã)。主説明を記述ã›ãšã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ã¿ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚主説明ã¯ã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ä»¥é™ã«ç¶šã‘ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。タグã®å¼•æ•°ã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ã‚¿ã‚°ã®æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“。何回も記述ã§ãã‚‹ã‚¿ã‚°ã¨ã€1回ã—ã‹è¨˜è¿°ã§ããªã„ã‚¿ã‚°ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®\fI@see\fRã‚¿ã‚°ã‹ã‚‰ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¯å§‹ã¾ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1139,8 +1139,8 @@
 .if n \{\
 .RE
 .\}
-¥Ö¥í¥Ã¥¯¤ª¤è¤Ó¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°.PP
-¥¿¥°¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬½èÍý¤¹¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ÎÆüì¤Ê¥­¡¼¥ï¡¼¥É¤Ç¤¹¡£¥¿¥°¤Ë¤Ï2¤Ä¤Î¥¿¥¤¥×¤¬¤¢¤ê¤Þ¤¹¡£1¤Ä¤Ï\fI@tag\fR¥¿¥°¤Î¤è¤¦¤Ëɽµ­¤µ¤ì¤ë¥Ö¥í¥Ã¥¯¡¦¥¿¥°(¥¹¥¿¥ó¥É¥¢¥í¥ó¡¦¥¿¥°¤È¤â¸Æ¤Ð¤ì¤ë)¡¢¤â¤¦1¤Ä¤Ï\fI{@tag}\fR¥¿¥°¤Î¤è¤¦¤ËÃ楫¥Ã¥³¤Ç°Ï¤ó¤Çɽµ­¤µ¤ì¤ë¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ç¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤¬²ò¼á¤µ¤ì¤ë¤Ë¤Ï¡¢¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¡¢¶õÇòʸ»ú¡¢¶èÀÚ¤êʸ»ú(\fI/**\fR)¤ò½ü¤¤¤Æ¡¢¹Ô¤ÎÀèƬ¤ËÃÖ¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI@\fRʸ»ú¤ò¥Æ¥­¥¹¥ÈÆâ¤ÎÊ̤ξì½ê¤Ç»ÈÍѤ·¤Æ¤â¡¢¥¿¥°¤Î³«»Ï¤È¤·¤Æ²ò¼á¤µ¤ì¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£\fI@\fRʸ»ú¤ò»ÈÍѤ·¤Æ¹Ô¤ò³«»Ï¤·¤Æ¤â¡¢¤½¤ì¤¬²ò¼á¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢HTML¥¨¥ó¥Æ¥£¥Æ¥£\fI&#064;\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤½¤ì¤¾¤ì¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ë¤Ï¡¢´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥Æ¥­¥¹¥È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢¥¿¥°¤Î¸å¤«¤é¡¢¼¡¤Î¥¿¥°¤ÎÁ°¡¢¤Þ¤¿¤Ï¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ÎºÇ¸å¤Þ¤Ç¤Î´Ö¤Ëµ­½Ò¤µ¤ì¤¿¥Æ¥­¥¹¥È¤Ç¤¹(¥¿¥°¤Þ¤¿¤Ï¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤ò½ü¤¯)¡£¤³¤Î´ØÏ¢¥Æ¥­¥¹¥È¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï¡¢¥Æ¥­¥¹¥È¤òµ­½Ò¤Ç¤­¤ë¾ì½ê¤Ç¤¢¤ì¤Ð¤É¤³¤Ë¤Ç¤âÃÖ¤¯¤³¤È¤¬¤Ç¤­¡¢²ò¼á¤µ¤ì¤Þ¤¹¡£¼¡¤ÎÎã¤Ë¤Ï¥Ö¥í¥Ã¥¯¡¦¥¿¥°\fI@deprecated\fR¤È¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°\fI{@link}\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£javadoc¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ブロックãŠã‚ˆã³ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°.PP
+ã‚¿ã‚°ã¯ã€\fIjavadoc\fRコマンドãŒå‡¦ç†ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®ç‰¹æ®Šãªã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§ã™ã€‚ã‚¿ã‚°ã«ã¯2ã¤ã®ã‚¿ã‚¤ãƒ—ãŒã‚ã‚Šã¾ã™ã€‚1ã¤ã¯\fI@tag\fRã‚¿ã‚°ã®ã‚ˆã†ã«è¡¨è¨˜ã•ã‚Œã‚‹ãƒ–ロック・タグ(スタンドアロン・タグã¨ã‚‚呼ã°ã‚Œã‚‹)ã€ã‚‚ã†1ã¤ã¯\fI{@tag}\fRã‚¿ã‚°ã®ã‚ˆã†ã«ä¸­ã‚«ãƒƒã‚³ã§å›²ã‚“ã§è¡¨è¨˜ã•ã‚Œã‚‹ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã§ã™ã€‚ブロック・タグãŒè§£é‡ˆã•ã‚Œã‚‹ã«ã¯ã€è¡Œé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã€ç©ºç™½æ–‡å­—ã€åŒºåˆ‡ã‚Šæ–‡å­—(\fI/**\fR)を除ã„ã¦ã€è¡Œã®å…ˆé ­ã«ç½®ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€\fI@\fR文字をテキスト内ã®åˆ¥ã®å ´æ‰€ã§ä½¿ç”¨ã—ã¦ã‚‚ã€ã‚¿ã‚°ã®é–‹å§‹ã¨ã—ã¦è§£é‡ˆã•ã‚Œãªã„ã“ã¨ã‚’æ„味ã—ã¦ã„ã¾ã™ã€‚\fI@\fR文字を使用ã—ã¦è¡Œã‚’開始ã—ã¦ã‚‚ã€ãã‚ŒãŒè§£é‡ˆã•ã‚Œãªã„よã†ã«ã™ã‚‹ã«ã¯ã€HTMLエンティティ\fI&#064;\fRを使用ã—ã¾ã™ã€‚ãã‚Œãžã‚Œã®ãƒ–ロック・タグã«ã¯ã€é–¢é€£ä»˜ã‘られãŸãƒ†ã‚­ã‚¹ãƒˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚¿ã‚°ã®å¾Œã‹ã‚‰ã€æ¬¡ã®ã‚¿ã‚°ã®å‰ã€ã¾ãŸã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®æœ€å¾Œã¾ã§ã®é–“ã«è¨˜è¿°ã•ã‚ŒãŸãƒ†ã‚­ã‚¹ãƒˆã§ã™(ã‚¿ã‚°ã¾ãŸã¯ã‚³ãƒ¡ãƒ³ãƒˆåŒºåˆ‡ã‚Šæ–‡å­—を除ã)。ã“ã®é–¢é€£ãƒ†ã‚­ã‚¹ãƒˆã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚インライン・タグã¯ã€ãƒ†ã‚­ã‚¹ãƒˆã‚’記述ã§ãる場所ã§ã‚ã‚Œã°ã©ã“ã«ã§ã‚‚ç½®ãã“ã¨ãŒã§ãã€è§£é‡ˆã•ã‚Œã¾ã™ã€‚次ã®ä¾‹ã«ã¯ãƒ–ロック・タグ\fI@deprecated\fRã¨ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°\fI{@link}\fRãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚javadocã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1153,10 +1153,10 @@
 .if n \{\
 .RE
 .\}
-HTML¤Ç¤Î¥³¥á¥ó¥È¤Îµ­½Ò.PP
-¥Æ¥­¥¹¥È¤ÏHTML¥¨¥ó¥Æ¥£¥Æ¥£¤ÈHTML¥¿¥°¤ò»ÈÍѤ·¤ÆHTML¤Çµ­½Ò¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ÈÍѤ¹¤ë¥Ö¥é¥¦¥¶¤¬¥µ¥Ý¡¼¥È¤¹¤ëǤ°Õ¤ÎHTML¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¥«¥¹¥±¡¼¥Ç¥£¥ó¥°¡¦¥¹¥¿¥¤¥ë¡¦¥·¡¼¥È¤ª¤è¤Ó¥Õ¥ì¡¼¥à¤ò´Þ¤á¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È°Ê³°¤ÎÉôʬ¤ÇHTML 3\&.2¤Ë½àµò¤·¤¿¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£¥Õ¥ì¡¼¥à¡¦¥»¥Ã¥È¤Î¤¿¤á¡¢À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¤ÏHTML 4\&.0¤¬¿ä¾©¤µ¤ì¤Þ¤¹¡£
+HTMLã§ã®ã‚³ãƒ¡ãƒ³ãƒˆã®è¨˜è¿°.PP
+テキストã¯HTMLエンティティã¨HTMLタグを使用ã—ã¦HTMLã§è¨˜è¿°ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚使用ã™ã‚‹ãƒ–ラウザãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹ä»»æ„ã®HTMLã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã§ãã¾ã™ã€‚標準ドックレットã¯ã€ã‚«ã‚¹ã‚±ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ãƒ»ã‚·ãƒ¼ãƒˆãŠã‚ˆã³ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’å«ã‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆä»¥å¤–ã®éƒ¨åˆ†ã§HTML 3\&.2ã«æº–æ‹ ã—ãŸã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚フレーム・セットã®ãŸã‚ã€ç”Ÿæˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯HTML 4\&.0ãŒæŽ¨å¥¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¤è¤ê¾®¤µ¤¤µ­¹æ(<)¤ª¤è¤Ó¤è¤êÂ礭¤¤µ­¹æ(>)¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR¤Èµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Æ±Íͤˡ¢¥¢¥ó¥Ñ¥µ¥ó¥É(&)¤Ï\fI&amp;\fR¤Èµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢ÂÀ»ú¤ÎHTML¥¿¥°\fI<b>\fR¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚ˆã‚Šå°ã•ã„記å·(<)ãŠã‚ˆã³ã‚ˆã‚Šå¤§ãã„記å·(>)ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fRã¨è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åŒæ§˜ã«ã€ã‚¢ãƒ³ãƒ‘サンド(&)ã¯\fI&amp;\fRã¨è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€å¤ªå­—ã®HTMLã‚¿ã‚°\fI<b>\fRを使用ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1170,12 +1170,12 @@
 .if n \{\
 .RE
 .\}
-ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î²òÀÏ»þ¤Ë¡¢³Æ¹Ô¤ÎÀèƬ¤Ë¤¢¤ë¥¢¥¹¥¿¥ê¥¹¥¯(*)ʸ»ú¤ÏÇË´þ¤µ¤ì¤Þ¤¹¡£ºÇ½é¤Î¥¢¥¹¥¿¥ê¥¹¥¯(*)ʸ»ú¤è¤êÁ°¤Ë¤¢¤ë¶õÇò¤ä¥¿¥Ö¤âÇË´þ¤µ¤ì¤Þ¤¹¡£¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥¤¥ó¥Ç¥ó¥È¤òÊÝ»ý¤·¤¿¤Þ¤Þ¤Ç¥µ¥ó¥×¥ë¡¦¥³¡¼¥É¤ò\fI<PRE>\fR¥¿¥°Æâ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËľÀÜŽ¤êÉÕ¤±¤é¤ì¤ë¤è¤¦¤Ë¡¢ÀèƬ¤Î¶õÇòʸ»ú¤Ïºï½ü¤µ¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£¥Ö¥é¥¦¥¶¤Ï¡¢¶õÇòʸ»ú¤ò¥¿¥Ö¤è¤ê¤â°ìΧ¤Ë²ò¼á¤·¤Þ¤¹¡£¥¤¥ó¥Ç¥ó¥È¤Îµ¯ÅÀ¤Ï(¶èÀÚ¤êʸ»ú\fI/**\fR¤Þ¤¿¤Ï\fI<PRE>\fR¥¿¥°¤Ç¤Ï¤Ê¤¯)º¸¥Þ¡¼¥¸¥ó¤Ë¤Ê¤ê¤Þ¤¹¡£
-ºÇ½é¤Îʸ.PP
-³Æ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤Ï¡¢Àë¸À¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´Ø¤¹¤ë´Ê·é¤«¤Ä´°Á´¤Ê¥µ¥Þ¥ê¡¼Ê¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Îʸ¤Ï¡¢¶õÇò¡¢¥¿¥Ö¡¢¤Þ¤¿¤Ï¹Ô½ªÎ»Ê¸»ú¤¬Â³¤¯ºÇ½é¤Î¥Ô¥ê¥ª¥É¡¢¤Þ¤¿¤ÏºÇ½é¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤¬¤¢¤ë°ÌÃ֤ǽª¤ï¤ê¤Þ¤¹¡£ºÇ½é¤Îʸ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆHTML¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¤¢¤ë¥á¥ó¥Ð¡¼¤Î¥µ¥Þ¥ê¡¼¤ÎÉôʬ¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-Ê£¿ô¥Õ¥£¡¼¥ë¥É¤ÎÀë¸À.PP
-Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢1¤Ä¤Îʸ¤ÇÊ£¿ô¤Î¥Õ¥£¡¼¥ë¥É¤òÀë¸À¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Îʸ¤Ë¤Ï¡¢1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤·¤«µ­½Ò¤Ç¤­¤Þ¤»¤ó¡£¤½¤Î¥³¥á¥ó¥È¤¬¡¢¤¹¤Ù¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤Æ¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¥Õ¥£¡¼¥ë¥É¤´¤È¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢³Æ¥Õ¥£¡¼¥ë¥É¤òÊÌ¡¹¤Îʸ¤ÇÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢1¤Ä¤ÎÀë¸À¤È¤·¤Æµ­½Ò¤¹¤ë¤ÈÉÔŬÀڤǤ¹¡£¤³¤Î¾ì¹ç¤Ï¡¢Àë¸À¤ò2¤Ä¤Ëʬ¤±¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯.PP
+\fIjavadoc\fRコマンドã«ã‚ˆã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®è§£æžæ™‚ã«ã€å„è¡Œã®å…ˆé ­ã«ã‚るアスタリスク(*)文字ã¯ç ´æ£„ã•ã‚Œã¾ã™ã€‚最åˆã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)文字よりå‰ã«ã‚る空白やタブも破棄ã•ã‚Œã¾ã™ã€‚行頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’çœç•¥ã—ãŸå ´åˆã€ã‚¤ãƒ³ãƒ‡ãƒ³ãƒˆã‚’ä¿æŒã—ãŸã¾ã¾ã§ã‚µãƒ³ãƒ—ル・コードを\fI<PRE>\fRタグ内ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ç›´æŽ¥è²¼ã‚Šä»˜ã‘られるよã†ã«ã€å…ˆé ­ã®ç©ºç™½æ–‡å­—ã¯å‰Šé™¤ã•ã‚Œãªããªã‚Šã¾ã™ã€‚ブラウザã¯ã€ç©ºç™½æ–‡å­—をタブよりも一律ã«è§£é‡ˆã—ã¾ã™ã€‚インデントã®èµ·ç‚¹ã¯(区切り文字\fI/**\fRã¾ãŸã¯\fI<PRE>\fRã‚¿ã‚°ã§ã¯ãªã)左マージンã«ãªã‚Šã¾ã™ã€‚
+最åˆã®æ–‡.PP
+å„ドキュメンテーション・コメントã®æœ€åˆã®æ–‡ã¯ã€å®£è¨€ã•ã‚Œã¦ã„るエンティティã«é–¢ã™ã‚‹ç°¡æ½”ã‹ã¤å®Œå…¨ãªã‚µãƒžãƒªãƒ¼æ–‡ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®æ–‡ã¯ã€ç©ºç™½ã€ã‚¿ãƒ–ã€ã¾ãŸã¯è¡Œçµ‚了文字ãŒç¶šã最åˆã®ãƒ”リオドã€ã¾ãŸã¯æœ€åˆã®ãƒ–ロック・タグãŒã‚ã‚‹ä½ç½®ã§çµ‚ã‚ã‚Šã¾ã™ã€‚最åˆã®æ–‡ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦HTMLページã®å…ˆé ­ã«ã‚るメンãƒãƒ¼ã®ã‚µãƒžãƒªãƒ¼ã®éƒ¨åˆ†ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+複数フィールドã®å®£è¨€.PP
+Javaプラットフォームã§ã¯ã€1ã¤ã®æ–‡ã§è¤‡æ•°ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’宣言ã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®æ–‡ã«ã¯ã€1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã—ã‹è¨˜è¿°ã§ãã¾ã›ã‚“。ãã®ã‚³ãƒ¡ãƒ³ãƒˆãŒã€ã™ã¹ã¦ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¯¾ã—ã¦ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚フィールドã”ã¨ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€å„フィールドを別々ã®æ–‡ã§å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€1ã¤ã®å®£è¨€ã¨ã—ã¦è¨˜è¿°ã™ã‚‹ã¨ä¸é©åˆ‡ã§ã™ã€‚ã“ã®å ´åˆã¯ã€å®£è¨€ã‚’2ã¤ã«åˆ†ã‘ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1191,7 +1191,7 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¾å¤Î¥³¡¼¥É¤«¤é¼¡¤Î¤è¤¦¤Ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ä¸Šã®ã‚³ãƒ¼ãƒ‰ã‹ã‚‰æ¬¡ã®ã‚ˆã†ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1216,27 +1216,27 @@
 .\}
 .PP
 The horizontal and vertical distances of point (x, y)\&.
-¥Ø¥Ã¥À¡¼¡¦¥¿¥°¤Î»ÈÍÑ.PP
-¥á¥ó¥Ð¡¼¤ËÂФ·¤Æ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤È¤­¤Ë¤Ï¡¢\fI<H1>\fR¤ä\fI<H2>\fR¤Ê¤É¤ÎHTML¸«½Ð¤·¥¿¥°¤ò»ÈÍѤ·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´°Á´¤Ê¹½Â¤²½¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤¹¤ë¤Î¤Ç¡¢¤³¤Î¤è¤¦¤Ê¹½Â¤²½¥¿¥°¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤È¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Î·Á¼°¤¬°­±Æ¶Á¤ò¼õ¤±¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥¯¥é¥¹¤ä¥Ñ¥Ã¥±¡¼¥¸¤Î¥³¥á¥ó¥È¤Ç¤Ï¡¢¤³¤ì¤é¤Î¸«½Ð¤·¤ò»ÈÍѤ·¤ÆÆȼ«¤Î¹½Â¤¤ò»ØÄꤷ¤Æ¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.SS "¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ"
+ヘッダー・タグã®ä½¿ç”¨.PP
+メンãƒãƒ¼ã«å¯¾ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã¨ãã«ã¯ã€\fI<H1>\fRã‚„\fI<H2>\fRãªã©ã®HTML見出ã—タグを使用ã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€å®Œå…¨ãªæ§‹é€ åŒ–ドキュメントを作æˆã™ã‚‹ã®ã§ã€ã“ã®ã‚ˆã†ãªæ§‹é€ åŒ–ã‚¿ã‚°ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ã¨ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å½¢å¼ãŒæ‚ªå½±éŸ¿ã‚’å—ã‘ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ã‚¯ãƒ©ã‚¹ã‚„パッケージã®ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ã“れらã®è¦‹å‡ºã—を使用ã—ã¦ç‹¬è‡ªã®æ§‹é€ ã‚’指定ã—ã¦ã‹ã¾ã„ã¾ã›ã‚“。
+.SS "メソッド・コメントã®ç¶™æ‰¿"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤·¤Æ¡¢·çÍ¤¿¥Æ¥­¥¹¥È¤òÆþÎϤ·¤¿¤ê¡¢ÌÀ¼¨Åª¤Ë¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥Õ¥£¡¼¥ë¥É¡¢¤ª¤è¤Ó¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤·¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドã§ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã—ã¦ã€æ¬ è½ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’入力ã—ãŸã‚Šã€æ˜Žç¤ºçš„ã«ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コンストラクタã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ãŠã‚ˆã³ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã—ã¾ã›ã‚“。
 .PP
-\fBÃí°Õ:\fR
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò¥³¥Ô¡¼¤ËÍøÍѤ¹¤ë¤Ë¤Ï¡¢·Ñ¾µ¤·¤¿¥á¥½¥Ã¥É¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤¿¥Ñ¥¹¤Î¤ß¤ËÃÖ¤«¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢¥¯¥é¥¹¤â¥Ñ¥Ã¥±¡¼¥¸¤âÅϤ¹É¬ÍפϤ¢¤ê¤Þ¤»¤ó¡£¤³¤ÎÅÀ¤Ï¥ê¥ê¡¼¥¹1\&.3\&.\fIn\fR°ÊÁ°¤È¤ÏÂоÈŪ¤Ç¤¹¡£¤³¤ì¤Þ¤Ç¤Ï¡¢¥¯¥é¥¹¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¤¬É¬ÍפǤ·¤¿¡£
-·çÍî¥Æ¥­¥¹¥È¤ÎÆþÎÏ.PP
-¼çÀâÌÀ¡¢¤Þ¤¿¤Ï\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¤¬¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤«¤é·çÍ¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Âбþ¤¹¤ë¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¡¦¥³¥á¥ó¥È¤ò¡¢¤½¤ì¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Þ¤¿¤Ï¼ÂÁõ¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É(¤¢¤ë¾ì¹ç)¤«¤é¥³¥Ô¡¼¤·¤Þ¤¹¡£¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+ドキュメンテーション・コメントをコピーã«åˆ©ç”¨ã™ã‚‹ã«ã¯ã€ç¶™æ‰¿ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fI\-sourcepath\fRオプションã§æŒ‡å®šã—ãŸãƒ‘スã®ã¿ã«ç½®ã‹ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ã€ã‚¯ãƒ©ã‚¹ã‚‚パッケージも渡ã™å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ç‚¹ã¯ãƒªãƒªãƒ¼ã‚¹1\&.3\&.\fIn\fR以å‰ã¨ã¯å¯¾ç…§çš„ã§ã™ã€‚ã“ã‚Œã¾ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã§ã‚ã‚‹ã“ã¨ãŒå¿…è¦ã§ã—ãŸã€‚
+欠è½ãƒ†ã‚­ã‚¹ãƒˆã®å…¥åŠ›.PP
+主説明ã€ã¾ãŸã¯\fI@return\fRã€\fI@param\fRã€\fI@throws\fRã‚¿ã‚°ãŒãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‹ã‚‰æ¬ è½ã—ã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€å¯¾å¿œã™ã‚‹ä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’ã€ãã‚ŒãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã¾ãŸã¯å®Ÿè£…ã—ã¦ã„るメソッド(ã‚ã‚‹å ´åˆ)ã‹ã‚‰ã‚³ãƒ”ーã—ã¾ã™ã€‚メソッド・コメントã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-ÆÃÄê¤Î¥Ñ¥é¥á¡¼¥¿¤Î\fI@param\fR¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¤½¤Î¥Ñ¥é¥á¡¼¥¿¤Î¥³¥á¥ó¥È¤¬¡¢¾å°Ì¤Î·Ñ¾µ³¬ÁؤΥ᥽¥Ã¥É¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£ÆÃÄê¤ÎÎã³°¤Î\fI@throws\fR¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¤½¤ÎÎã³°¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤«¤®¤ê¡¢\fI@throws\fR¥¿¥°¤¬¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+特定ã®ãƒ‘ラメータã®\fI@param\fRã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ãã®ãƒ‘ラメータã®ã‚³ãƒ¡ãƒ³ãƒˆãŒã€ä¸Šä½ã®ç¶™æ‰¿éšŽå±¤ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚特定ã®ä¾‹å¤–ã®\fI@throws\fRã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ãã®ä¾‹å¤–ãŒå®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ã‹ãŽã‚Šã€\fI@throws\fRã‚¿ã‚°ãŒã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .PP
-¤³¤ÎÆ°ºî¤Ï¥ê¥ê¡¼¥¹1\&.3°ÊÁ°¤ÎÆ°ºî¤È¤ÏÂоÈŪ¤Ç¤¹¡£¤³¤ì¤Þ¤Ç¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï¡¢¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¤¬Â¸ºß¤¹¤ì¤Ð¡¢¥³¥á¥ó¥È¤Ï°ìÀڷѾµ¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£
+ã“ã®å‹•ä½œã¯ãƒªãƒªãƒ¼ã‚¹1\&.3以å‰ã®å‹•ä½œã¨ã¯å¯¾ç…§çš„ã§ã™ã€‚ã“ã‚Œã¾ã§ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ã€ä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãŒå­˜åœ¨ã™ã‚Œã°ã€ã‚³ãƒ¡ãƒ³ãƒˆã¯ä¸€åˆ‡ç¶™æ‰¿ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚
 .PP
-javadoc¥¿¥°¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-ÌÀ¼¨Åª¤Ê·Ñ¾µ.PP
-\fI{@inheritDoc}\fR¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò¥á¥½¥Ã¥É¤Î¼çÀâÌÀ¤Þ¤¿¤Ï\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¡¦¥³¥á¥ó¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£Âбþ¤¹¤ë·Ñ¾µ¤µ¤ì¤¿¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¡¦¥³¥á¥ó¥È¤Ï¡¢¤½¤Î¾ì½ê¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-.SS "¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î·Ñ¾µ"
+javadocã‚¿ã‚°ãŠã‚ˆã³ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+明示的ãªç¶™æ‰¿.PP
+\fI{@inheritDoc}\fRインライン・タグをメソッドã®ä¸»èª¬æ˜Žã¾ãŸã¯\fI@return\fRã€\fI@param\fRã€\fI@throws\fRタグ・コメントã«æŒ¿å…¥ã—ã¾ã™ã€‚対応ã™ã‚‹ç¶™æ‰¿ã•ã‚ŒãŸä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€ãã®å ´æ‰€ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+.SS "クラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ç¶™æ‰¿"
 .PP
-¥³¥á¥ó¥È¤Î·Ñ¾µ¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¤Î·Ñ¾µ¤Î¡¢¹Í¤¨¤é¤ì¤ë¤¹¤Ù¤Æ¤Î¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£
+コメントã®ç¶™æ‰¿ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã®ç¶™æ‰¿ã®ã€è€ƒãˆã‚‰ã‚Œã‚‹ã™ã¹ã¦ã®å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1246,7 +1246,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¾ì¹ç
+クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¹ãƒ¼ãƒ‘ークラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .sp
 .RS 4
@@ -1257,7 +1257,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤¬¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¾ì¹ç
+インタフェースã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¹ãƒ¼ãƒ‘ーインタフェースã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .sp
 .RS 4
@@ -1268,15 +1268,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¾ì¹ç
+クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実装ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .PP
-ºÇ½é¤Î2¤Ä¤Î¥±¡¼¥¹¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥ÈÆâ¤Ë\fI¡Ö¥ª¡¼¥Ð¡¼¥é¥¤¥É¡×\fR¤È¤¤¤¦¾®¸«½Ð¤·¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤¬·Ñ¾µ¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+最åˆã®2ã¤ã®ã‚±ãƒ¼ã‚¹ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã«\fI「オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã€\fRã¨ã„ã†å°è¦‹å‡ºã—を生æˆã—ã¾ã™ã€‚コメントãŒç¶™æ‰¿ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¦ã„るメソッドã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
-3¤ÄÌܤΥ±¡¼¥¹(ÆÃÄê¤Î¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¾ì¹ç)¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥ÈÆâ¤Ë\fI¡ÖÄêµÁ¡×\fR¤È¤¤¤¦¾®¸«½Ð¤·¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤¬·Ñ¾µ¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
-.SS "¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î¥¢¥ë¥´¥ê¥º¥à"
+3ã¤ç›®ã®ã‚±ãƒ¼ã‚¹(特定ã®ã‚¯ãƒ©ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実装ã—ã¦ã„ã‚‹å ´åˆ)ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã«\fI「定義ã€\fRã¨ã„ã†å°è¦‹å‡ºã—を生æˆã—ã¾ã™ã€‚コメントãŒç¶™æ‰¿ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€å®Ÿè£…ã•ã‚Œã¦ã„るメソッドã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¾ã™ã€‚
+.SS "メソッド・コメントã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ "
 .PP
-¥á¥½¥Ã¥É¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¤Ê¤¤¡¢¤Þ¤¿¤Ï\fI{@inheritDoc}\fR¥¿¥°¤¬¤¢¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆŬÍѤǤ­¤ë¥³¥á¥ó¥È¤ò¸¡º÷¤·¤Þ¤¹¡£¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢ºÇ¤âÆÃÄꤵ¤ì¤ëŬÍѲÄǽ¤Ê¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òõ¤·¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤è¤ê¤â¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÍ¥À褹¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤Þ¤¹¡£
+メソッドã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒãªã„ã€ã¾ãŸã¯\fI{@inheritDoc}\fRã‚¿ã‚°ãŒã‚ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯æ¬¡ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¦é©ç”¨ã§ãるコメントを検索ã—ã¾ã™ã€‚アルゴリズムã¯ã€æœ€ã‚‚特定ã•ã‚Œã‚‹é©ç”¨å¯èƒ½ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’探ã—ã€ã‚¹ãƒ¼ãƒ‘ークラスよりもインタフェースを優先ã™ã‚‹ã‚ˆã†ã«è¨­è¨ˆã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1286,7 +1286,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-ľÀܤ˼ÂÁõ¤µ¤ì¤Æ¤¤¤ë(¤Þ¤¿¤Ï¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë)¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¡¢¥á¥½¥Ã¥É¤ÎÀë¸À¤Ç\fIimplements\fR(¤Þ¤¿¤Ï\fIextends\fR)¤È¤¤¤¦¸ì¤Î¸å¤Ë½Ð¸½¤¹¤ë½ç½ø¤Ç¡¢1¤Ä¤º¤ÄÄ´¤Ù¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤ÆºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºÎÍѤ·¤Þ¤¹¡£
+直接ã«å®Ÿè£…ã•ã‚Œã¦ã„ã‚‹(ã¾ãŸã¯ã€æ‹¡å¼µã•ã‚Œã¦ã„ã‚‹)インタフェースをã€ãƒ¡ã‚½ãƒƒãƒ‰ã®å®£è¨€ã§\fIimplements\fR(ã¾ãŸã¯\fIextends\fR)ã¨ã„ã†èªžã®å¾Œã«å‡ºç¾ã™ã‚‹é †åºã§ã€1ã¤ãšã¤èª¿ã¹ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¤ã„ã¦æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’採用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1297,7 +1297,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¼ê½ç1¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢Ä¾ÀܼÂÁõ¤µ¤ì¤Æ¤¤¤ë(¤Þ¤¿¤Ï¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë)¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤½¤ì¤¾¤ì¤ËÂФ·¤Æ¡¢¤³¤Î¥¢¥ë¥´¥ê¥º¥àÁ´ÂΤòºÆµ¢Åª¤ËŬÍѤ·¤Þ¤¹(¤½¤ÎºÝ¤Î½ç½ø¤Ï¡¢¼ê½ç1¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ´¤Ù¤¿¤È¤­¤Î½ç½ø¤ÈƱ¤¸)¡£
+手順1ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã¯ã€ç›´æŽ¥å®Ÿè£…ã•ã‚Œã¦ã„ã‚‹(ã¾ãŸã¯ã€æ‹¡å¼µã•ã‚Œã¦ã„ã‚‹)インタフェースã®ãã‚Œãžã‚Œã«å¯¾ã—ã¦ã€ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ å…¨ä½“ã‚’å†å¸°çš„ã«é©ç”¨ã—ã¾ã™(ãã®éš›ã®é †åºã¯ã€æ‰‹é †1ã§ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’調ã¹ãŸã¨ãã®é †åºã¨åŒã˜)。
 .RE
 .sp
 .RS 4
@@ -1308,7 +1308,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¼ê½ç2¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ç¡¢¤³¤Î¥¯¥é¥¹¤¬\fIObject\fR°Ê³°¤Î¥¯¥é¥¹¤Ç¤¢¤ë¤¬¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë½èÍý¤·¤Þ¤¹¡£
+手順2ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã§ã€ã“ã®ã‚¯ãƒ©ã‚¹ãŒ\fIObject\fR以外ã®ã‚¯ãƒ©ã‚¹ã§ã‚ã‚‹ãŒã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«å‡¦ç†ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1318,7 +1318,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ë¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥³¥á¥ó¥È¤òºÎÍѤ·¤Þ¤¹¡£
+スーパークラスã«ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¤ã„ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¨˜è¿°ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’採用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1329,14 +1329,14 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¼ê½ç3a¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤ËÂФ·¤Æ¡¢¤³¤Î¥¢¥ë¥´¥ê¥º¥àÁ´ÂΤòºÆµ¢Åª¤ËŬÍѤ·¤Þ¤¹¡£
-.RE
-.RE
-.SH "JAVADOC¥¿¥°"
+手順3aã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã¯ã€ã‚¹ãƒ¼ãƒ‘ークラスã«å¯¾ã—ã¦ã€ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ å…¨ä½“ã‚’å†å¸°çš„ã«é©ç”¨ã—ã¾ã™ã€‚
+.RE
+.RE
+.SH "JAVADOCã‚¿ã‚°"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ËËä¤á¹þ¤Þ¤ì¤¿ÆÃÊ̤ʥ¿¥°¤ò²òÀϤ·¤Þ¤¹¡£\fIjavadoc\fR¥¿¥°¤ò»ÈÍѤ¹¤ë¤È¡¢´°Á´¤ÊÀ°·Á¼°¤ÎAPI¤ò¥½¡¼¥¹¡¦¥³¡¼¥É¤«¤é¼«Æ°Åª¤ËÀ¸À®¤Ç¤­¤Þ¤¹¡£¥¿¥°¤Ï¥¢¥Ã¥È¥Þ¡¼¥¯µ­¹æ(\fI@\fR)¤Ç»Ï¤Þ¤ê¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢É½¼¨¤µ¤ì¤Æ¤¤¤ë¤È¤ª¤ê¤ËÂçʸ»ú¤È¾®Ê¸»ú¤ò»ÈÍѤ·¤ÆÆþÎϤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¿¥°¤Ï¡¢¹Ô¤ÎÀèƬ(ÀèƬ¤Î¶õÇòʸ»ú¤È¾Êά²Äǽ¤Ê¥¢¥¹¥¿¥ê¥¹¥¯¤Î¸å)¤ËÃÖ¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤·¤Ê¤¤¤È¡¢¥Æ¥­¥¹¥È¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£´·Îã¤È¤·¤Æ¡¢Æ±¤¸Ì¾Á°¤Î¥¿¥°¤Ï1²Õ½ê¤Ë¤Þ¤È¤á¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see\fR¥¿¥°¤¬Ê£¿ô¤¢¤ë¾ì¹ç¤Ï¡¢¤¹¤Ù¤ÆƱ¤¸¾ì½ê¤Ë¤Þ¤È¤á¤ÆÇÛÃÖ¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯ã€Javaã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç‰¹åˆ¥ãªã‚¿ã‚°ã‚’解æžã—ã¾ã™ã€‚\fIjavadoc\fRタグを使用ã™ã‚‹ã¨ã€å®Œå…¨ãªæ•´å½¢å¼ã®APIをソース・コードã‹ã‚‰è‡ªå‹•çš„ã«ç”Ÿæˆã§ãã¾ã™ã€‚ã‚¿ã‚°ã¯ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯è¨˜å·(\fI@\fR)ã§å§‹ã¾ã‚Šã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚¿ã‚°ã¯ã€è¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã¨ãŠã‚Šã«å¤§æ–‡å­—ã¨å°æ–‡å­—を使用ã—ã¦å…¥åŠ›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã‚¿ã‚°ã¯ã€è¡Œã®å…ˆé ­(先頭ã®ç©ºç™½æ–‡å­—ã¨çœç•¥å¯èƒ½ãªã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã®å¾Œ)ã«ç½®ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã—ãªã„ã¨ã€ãƒ†ã‚­ã‚¹ãƒˆã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚慣例ã¨ã—ã¦ã€åŒã˜åå‰ã®ã‚¿ã‚°ã¯1箇所ã«ã¾ã¨ã‚ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see\fRã‚¿ã‚°ãŒè¤‡æ•°ã‚ã‚‹å ´åˆã¯ã€ã™ã¹ã¦åŒã˜å ´æ‰€ã«ã¾ã¨ã‚ã¦é…ç½®ã—ã¾ã™ã€‚詳細ã¯ã€ã‚¿ã‚°ã‚’使用ã§ãる場所をå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¥¿¥°¤Ë¤Ï¡¢¼¡¤Î¥¿¥¤¥×¤¬¤¢¤ê¤Þ¤¹¡£
+ã‚¿ã‚°ã«ã¯ã€æ¬¡ã®ã‚¿ã‚¤ãƒ—ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1346,7 +1346,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ö¥í¥Ã¥¯¡¦¥¿¥°: ¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¼çÀâÌÀ¤Ë³¤¯¥¿¥°¡¦¥»¥¯¥·¥ç¥óÆâ¤Ë¤Î¤ßÇÛÃÖ¤·¤Þ¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¡¢\fI@tag\fR¤Î·Á¼°¤ò¤È¤ê¤Þ¤¹¡£
+ブロック・タグ: ブロック・タグã¯ä¸»èª¬æ˜Žã«ç¶šãタグ・セクション内ã«ã®ã¿é…ç½®ã—ã¾ã™ã€‚ブロック・タグã¯ã€\fI@tag\fRã®å½¢å¼ã‚’ã¨ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1357,52 +1357,52 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°: ¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï¼çÀâÌÀÆâ¤Þ¤¿¤Ï¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Î¥³¥á¥ó¥ÈÆâ¤ÎǤ°Õ¤Î¾ì½ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï\fI{@tag}\fR¤Î¤è¤¦¤ËÃ楫¥Ã¥³¤Ç°Ï¤ß¤Þ¤¹¡£
+インライン・タグ: インライン・タグã¯ä¸»èª¬æ˜Žå†…ã¾ãŸã¯ãƒ–ロック・タグã®ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®ä»»æ„ã®å ´æ‰€ã«é…ç½®ã—ã¾ã™ã€‚インライン・タグã¯\fI{@tag}\fRã®ã‚ˆã†ã«ä¸­ã‚«ãƒƒã‚³ã§å›²ã¿ã¾ã™ã€‚
 .RE
 .PP
-¥«¥¹¥¿¥à¡¦¥¿¥°¤Ë¤Ä¤¤¤Æ¤Ï¡¢\-tag tagname:Xaoptcmf:"taghead"¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥¿¥°¤ÎÀâÌÀ"
+カスタム・タグã«ã¤ã„ã¦ã¯ã€\-tag tagname:Xaoptcmf:"taghead"ã‚’å‚ç…§ã—ã¦ãã ã•ã„。タグを使用ã§ãる場所もå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "ã‚¿ã‚°ã®èª¬æ˜Ž"
 .PP
 @author \fIname\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI\-author\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢»ØÄꤷ¤¿Ì¾Á°¤Î¥Æ¥­¥¹¥È¤ÎºîÀ®¼Ô¥¨¥ó¥È¥ê¤òÀ¸À®¤µ¤ì¤ë¥É¥­¥å¥á¥ó¥È¤ËÄɲä·¤Þ¤¹¡£1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËÊ£¿ô¤Î\fI@author\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£1¤Ä¤Î\fI@author\fR¥¿¥°¤Ë1¤Ä¤Î̾Á°¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ê£¿ô¤Î̾Á°¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Á°¼Ô¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ̾Á°¤È̾Á°¤Î´Ö¤Ë¥«¥ó¥Þ(,)¤È¶õÇòʸ»ú¤¬ÁÞÆþ¤µ¤ì¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¤Ï¡¢¥Æ¥­¥¹¥ÈÁ´ÂΤ¬²òÀϤµ¤ì¤ë¤³¤È¤Ê¤¯¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥«¥ó¥Þ¤Ç¤Ï¤Ê¤¯¡¢³Æ¸À¸ì¤ËÂбþ¤·¤¿Ì¾Á°¶èÀÚ¤êʸ»ú¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¡¢1¹Ô¤ËÊ£¿ô¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@author¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@author)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI\-author\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€æŒ‡å®šã—ãŸåå‰ã®ãƒ†ã‚­ã‚¹ãƒˆã®ä½œæˆè€…エントリを生æˆã•ã‚Œã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«è¿½åŠ ã—ã¾ã™ã€‚1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«è¤‡æ•°ã®\fI@author\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚1ã¤ã®\fI@author\fRã‚¿ã‚°ã«1ã¤ã®åå‰ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã€è¤‡æ•°ã®åå‰ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å‰è€…ã®å ´åˆã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦åå‰ã¨åå‰ã®é–“ã«ã‚«ãƒ³ãƒž(,)ã¨ç©ºç™½æ–‡å­—ãŒæŒ¿å…¥ã•ã‚Œã¾ã™ã€‚後者ã®å ´åˆã¯ã€ãƒ†ã‚­ã‚¹ãƒˆå…¨ä½“ãŒè§£æžã•ã‚Œã‚‹ã“ã¨ãªãã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚«ãƒ³ãƒžã§ã¯ãªãã€å„言語ã«å¯¾å¿œã—ãŸåå‰åŒºåˆ‡ã‚Šæ–‡å­—を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ãã«ã€1è¡Œã«è¤‡æ•°ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@authorã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@author)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@code \fItext\fR}
 .RS 4
-JDK 1\&.5¤ÇƳÆþ
-.sp
-\fI<code>{@literal}</code>\fR¤ÈƱÅù¤Ç¤¹¡£
-.sp
-¥Æ¥­¥¹¥È¤òHTML¥Þ¡¼¥¯¥¢¥Ã¥×¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿Javadoc¥¿¥°¤È¤·¤Æ²ò¼á¤»¤º¤Ë¡¢text¤ò¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Çɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤Î·¿(\fI<Object>\fR)¡¢ÉÔÅù¹æ(\fI3 < 4\fR)¡¢Ìð°õ(\fI<\-\fR)¤Ê¤É¤Ç¡¢Ä̾ï¤Î»³¥«¥Ã¥³(<¤ª¤è¤Ó>)¤òHTML¥¨¥ó¥Æ¥£¥Æ¥£(\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR)¤Î¤«¤ï¤ê¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È\fI{@code A<B>C}\fR¤Ï\fIA<B>C\fR¤È¤·¤ÆÊѹ¹¤µ¤ì¤º¤ËÀ¸À®¤µ¤ì¤¿HTML¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢\fI<B>\fR¤¬ÂÀ»ú¤È¤·¤Æ²ò¼á¤µ¤ì¤º¡¢¤½¤Î¥Õ¥©¥ó¥È¤Ï¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ë¤Ê¤ê¤Þ¤¹¡£¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ê¤·¤ÇƱ¤¸µ¡Ç½¤ò¼Â¸½¤¹¤ë¤Ë¤Ï¡¢\fI{@literal}\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.5ã§å°Žå…¥
+.sp
+\fI<code>{@literal}</code>\fRã¨åŒç­‰ã§ã™ã€‚
+.sp
+テキストをHTMLマークアップã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸJavadocã‚¿ã‚°ã¨ã—ã¦è§£é‡ˆã›ãšã«ã€textをコード・フォントã§è¡¨ç¤ºã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ãƒ‘ラメータã®åž‹(\fI<Object>\fR)ã€ä¸ç­‰å·(\fI3 < 4\fR)ã€çŸ¢å°(\fI<\-\fR)ãªã©ã§ã€é€šå¸¸ã®å±±ã‚«ãƒƒã‚³(<ãŠã‚ˆã³>)ã‚’HTMLエンティティ(\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fR)ã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆ\fI{@code A<B>C}\fRã¯\fIA<B>C\fRã¨ã—ã¦å¤‰æ›´ã•ã‚Œãšã«ç”Ÿæˆã•ã‚ŒãŸHTMLページã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€\fI<B>\fRãŒå¤ªå­—ã¨ã—ã¦è§£é‡ˆã•ã‚Œãšã€ãã®ãƒ•ã‚©ãƒ³ãƒˆã¯ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚©ãƒ³ãƒˆã«ãªã‚Šã¾ã™ã€‚コード・フォントãªã—ã§åŒã˜æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ã«ã¯ã€\fI{@literal}\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @deprecated \fIdeprecated\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¤³¤ÎAPI¤ÏÆ°ºî¤·Â³¤±¤Þ¤¹¤¬¡¢¤³¤ÎAPI¤ò»ÈÍѤ·¤Ê¤¤¤³¤È¤òÁ¦¤á¤ë¥³¥á¥ó¥È¤òÄɲä·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIdeprecated\-text\fR¤ò¼çÀâÌÀ¤ÎÁ°¤Ë°ÜÆ°¤·¤Æ¥¤¥¿¥ê¥Ã¥¯¤Ë¤·¡¢¤½¤ÎÁ°¤ËÂÀ»ú¤Î·Ù¹ð¡Ö¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¡×¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£
-.sp
-Èó¿ä¾©¥Æ¥­¥¹¥È¤ÎºÇ½é¤Îʸ¤Ç¤Ï¡¢¤½¤ÎAPI¤¬¿ä¾©¤µ¤ì¤Ê¤¯¤Ê¤Ã¤¿»þ´ü¤È¡¢ÂåÂؤȤ·¤Æ»ÈÍѤ¹¤ëAPI¤ò¥æ¡¼¥¶¡¼¤ËÄ󼨤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤³¤ÎºÇ½é¤Îʸ¤ò¡¢¥µ¥Þ¥ê¡¼¡¦¥»¥¯¥·¥ç¥ó¤Èº÷°ú¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¤½¤Î¸å¤Îʸ¤ÇÈó¿ä¾©¤Ë¤Ê¤Ã¤¿Íýͳ¤òÀâÌÀ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ÂåÂØAPI¤ò»Ø¤·¼¨¤¹\fI{@link}\fR¥¿¥°(Javadoc 1\&.2°Ê¹ß¤Î¾ì¹ç)¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fI@deprecated annotation\fR¥¿¥°¤ò»ÈÍѤ·¤Æ¥×¥í¥°¥é¥àÍ×ÁǤòÈó¿ä¾©¤Ë¤·¤Þ¤¹¡£API¤òÈó¿ä¾©¤Ë¤¹¤ëÊýË¡¤È»þ´ü
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/deprecation/deprecation\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@deprecated¤Ë´Ø¤¹¤ë¹à
+JDK 1\&.0ã§å°Žå…¥
+.sp
+ã“ã®APIã¯å‹•ä½œã—続ã‘ã¾ã™ãŒã€ã“ã®APIを使用ã—ãªã„ã“ã¨ã‚’è–¦ã‚るコメントを追加ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fIdeprecated\-text\fRを主説明ã®å‰ã«ç§»å‹•ã—ã¦ã‚¤ã‚¿ãƒªãƒƒã‚¯ã«ã—ã€ãã®å‰ã«å¤ªå­—ã®è­¦å‘Šã€ŒæŽ¨å¥¨ã•ã‚Œã¦ã„ã¾ã›ã‚“。ã€ã‚’追加ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚
+.sp
+éžæŽ¨å¥¨ãƒ†ã‚­ã‚¹ãƒˆã®æœ€åˆã®æ–‡ã§ã¯ã€ãã®APIãŒæŽ¨å¥¨ã•ã‚Œãªããªã£ãŸæ™‚期ã¨ã€ä»£æ›¿ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹APIをユーザーã«æ示ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã“ã®æœ€åˆã®æ–‡ã‚’ã€ã‚µãƒžãƒªãƒ¼ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¨ç´¢å¼•ã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ãã®å¾Œã®æ–‡ã§éžæŽ¨å¥¨ã«ãªã£ãŸç†ç”±ã‚’説明ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚代替APIを指ã—示ã™\fI{@link}\fRã‚¿ã‚°(Javadoc 1\&.2以é™ã®å ´åˆ)ã‚’å«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fI@deprecated annotation\fRタグを使用ã—ã¦ãƒ—ログラムè¦ç´ ã‚’éžæŽ¨å¥¨ã«ã—ã¾ã™ã€‚APIã‚’éžæŽ¨å¥¨ã«ã™ã‚‹æ–¹æ³•ã¨æ™‚期
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/deprecation/deprecation\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@deprecatedã«é–¢ã™ã‚‹é …
 
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@deprecated)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@deprecated)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@docRoot}
 .RS 4
-JDK 1\&.3¤ÇƳÆþ
-.sp
-À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤«¤é¤Î¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Î(À¸À®Àè)¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎÁêÂХѥ¹¤òɽ¤·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢Ãøºî¸¢¤Î¥Ú¡¼¥¸¤ä²ñ¼Ò¤Î¥í¥´¤Ê¤É¡¢À¸À®¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤«¤é»²¾È¤¹¤ë¥Õ¥¡¥¤¥ë¤òÁȤ߹þ¤à¤È¤­¤ËÊØÍø¤Ç¤¹¡£Ä̾ï¤Ï¡¢³Æ¥Ú¡¼¥¸¤ÎºÇ²¼Éô¤«¤éÃøºî¸¢¤Î¥Ú¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£
-.sp
-¤³¤Î\fI{@docRoot}\fR¥¿¥°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¤â¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤â»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢Ç¤°Õ¤Î¥¿¥°(\fI@return\fR¡¢\fI@param\fR¤ª¤è¤Ó\fI@deprecated\fR¥¿¥°¤Ê¤É)¤Î¥Æ¥­¥¹¥ÈÉôʬ¤ò´Þ¤à¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£
+JDK 1\&.3ã§å°Žå…¥
+.sp
+生æˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã‹ã‚‰ã®ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®(生æˆå…ˆ)ルート・ディレクトリã¸ã®ç›¸å¯¾ãƒ‘スを表ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€è‘—作権ã®ãƒšãƒ¼ã‚¸ã‚„会社ã®ãƒ­ã‚´ãªã©ã€ç”Ÿæˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã‹ã‚‰å‚ç…§ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’組ã¿è¾¼ã‚€ã¨ãã«ä¾¿åˆ©ã§ã™ã€‚通常ã¯ã€å„ページã®æœ€ä¸‹éƒ¨ã‹ã‚‰è‘—作権ã®ãƒšãƒ¼ã‚¸ã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚
+.sp
+ã“ã®\fI{@docRoot}\fRã‚¿ã‚°ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚‚ドキュメンテーション・コメント内ã§ã‚‚使用ã§ãã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ä»»æ„ã®ã‚¿ã‚°(\fI@return\fRã€\fI@param\fRãŠã‚ˆã³\fI@deprecated\fRã‚¿ã‚°ãªã©)ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã‚’å«ã‚€ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1412,9 +1412,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢¥Ø¥Ã¥À¡¼¡¢¥Õ¥Ã¥¿¡¼¤Þ¤¿¤ÏºÇ²¼Éô¤¬¼¡¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£\fIjavadoc \-bottom \*(Aq<a href="{@docRoot}/copyright\&.html">Copyright</a>\*(Aq\fR
-.sp
-\fI{@docRoot}\fR¥¿¥°¤òmakefileÆâ¤Ç¤³¤Î¤è¤¦¤ËÍøÍѤ¹¤ë¾ì¹ç¡¢°ìÉô¤Î\fImakefile\fR¥×¥í¥°¥é¥à¤Ç¤Ï¡¢Ã楫¥Ã¥³\fI{}\fRʸ»ú¤òÆÃÊ̤˥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢Inprise MAKE¥Ð¡¼¥¸¥ç¥ó5\&.2¤òWindows¾å¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç¤Ï¡¢\fI{{@docRoot}}\fR¤Î¤è¤¦¤Ë¡¢Ã楫¥Ã¥³¤òÆó½Å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤Ê¤É¤Î¥ª¥×¥·¥ç¥ó¤Ø¤Î°ú¿ô¤ò°Ï¤à¤Î¤Ë¡¢Æó½Å(°ì½Å¤Ç¤Ï¤Ê¤¯)°úÍÑÉä¤âɬÍפǤ¹(\fIhref\fR°ú¿ô¤ò°Ï¤à°úÍÑÉä¤Ï¾Êά)¡£
+コマンドラインã§ã€ãƒ˜ãƒƒãƒ€ãƒ¼ã€ãƒ•ãƒƒã‚¿ãƒ¼ã¾ãŸã¯æœ€ä¸‹éƒ¨ãŒæ¬¡ã®ã‚ˆã†ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚\fIjavadoc \-bottom \*(Aq<a href="{@docRoot}/copyright\&.html">Copyright</a>\*(Aq\fR
+.sp
+\fI{@docRoot}\fRã‚¿ã‚°ã‚’makefile内ã§ã“ã®ã‚ˆã†ã«åˆ©ç”¨ã™ã‚‹å ´åˆã€ä¸€éƒ¨ã®\fImakefile\fRプログラムã§ã¯ã€ä¸­ã‚«ãƒƒã‚³\fI{}\fR文字を特別ã«ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€Inprise MAKEãƒãƒ¼ã‚¸ãƒ§ãƒ³5\&.2ã‚’Windows上ã§å®Ÿè¡Œã™ã‚‹å ´åˆã¯ã€\fI{{@docRoot}}\fRã®ã‚ˆã†ã«ã€ä¸­ã‚«ãƒƒã‚³ã‚’二é‡ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-bottom\fRオプションãªã©ã®ã‚ªãƒ—ションã¸ã®å¼•æ•°ã‚’囲むã®ã«ã€äºŒé‡(一é‡ã§ã¯ãªã)引用符も必è¦ã§ã™(\fIhref\fR引数を囲む引用符ã¯çœç•¥)。
 .RE
 .sp
 .RS 4
@@ -1425,7 +1425,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï
+ドキュメンテーション・コメントã§ã¯
 .sp
 .if n \{\
 .RS 4
@@ -1438,24 +1438,24 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥¿¥°¤¬É¬ÍפÊÍýͳ¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤¬¡¢¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ÈƱ¤¸¿¼¤µ¤ò»ý¤Ä³¬Áع½Â¤¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£¼°\fI<a href="{@docRoot}/copyright\&.html">\fR¤Ï¡¢\fIjava/lang/Object\&.java\fR¤ËÂФ·¤Æ¤Ï\fI<a href="\&.\&./\&.\&./copyright\&.html">\fR¤Ë²ò·è¤µ¤ì¡¢\fIjava/lang/ref/Reference\&.java\fR¤ËÂФ·¤Æ¤Ï\fI<a href="\&.\&./\&.\&./\&.\&./copyright\&.html">\fR¤Ë²ò·è¤µ¤ì¤Þ¤¹¡£
+ã“ã®ã‚¿ã‚°ãŒå¿…è¦ãªç†ç”±ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€ã‚µãƒ–パッケージã¨åŒã˜æ·±ã•ã‚’æŒã¤éšŽå±¤æ§‹é€ ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚å¼\fI<a href="{@docRoot}/copyright\&.html">\fRã¯ã€\fIjava/lang/Object\&.java\fRã«å¯¾ã—ã¦ã¯\fI<a href="\&.\&./\&.\&./copyright\&.html">\fRã«è§£æ±ºã•ã‚Œã€\fIjava/lang/ref/Reference\&.java\fRã«å¯¾ã—ã¦ã¯\fI<a href="\&.\&./\&.\&./\&.\&./copyright\&.html">\fRã«è§£æ±ºã•ã‚Œã¾ã™ã€‚
 .RE
 .RE
 .PP
 @exception \fIclass\-name description\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI@throws\fR¥¿¥°¤ÈƱ¤¸¤Ç¤¹¡£@throws class\-name description¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI@throws\fRã‚¿ã‚°ã¨åŒã˜ã§ã™ã€‚@throws class\-name descriptionã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@inheritDoc}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-ºÇ¤â¶á¤¤·Ñ¾µ²Äǽ¤Ê¥¯¥é¥¹¤Þ¤¿¤Ï¼ÂÁõ²Äǽ¤Ê¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¡¢¤³¤Î¥¿¥°¤Î°ÌÃ֤ˤ¢¤ë¸½ºß¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¡¢¥É¥­¥å¥á¥ó¥È¤ò·Ñ¾µ(¥³¥Ô¡¼)¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤è¤êÈÆÍÑŪ¤Ê¥³¥á¥ó¥È¤ò·Ñ¾µ¥Ä¥ê¡¼¤Î¾å°Ì¤Ëµ­½Ò¤·¡¢¥³¥Ô¡¼¤·¤¿¥Æ¥­¥¹¥È¤ò»ÈÍѤ·¤Æµ­½Ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.sp
-¤³¤Î¥¿¥°¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¼¡¤Î°ÌÃ֤ǤΤßÍ­¸ú¤Ç¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+最も近ã„継承å¯èƒ½ãªã‚¯ãƒ©ã‚¹ã¾ãŸã¯å®Ÿè£…å¯èƒ½ãªã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã€ã“ã®ã‚¿ã‚°ã®ä½ç½®ã«ã‚ã‚‹ç¾åœ¨ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’継承(コピー)ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚ˆã‚Šæ±Žç”¨çš„ãªã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ツリーã®ä¸Šä½ã«è¨˜è¿°ã—ã€ã‚³ãƒ”ーã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’使用ã—ã¦è¨˜è¿°ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
+.sp
+ã“ã®ã‚¿ã‚°ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®æ¬¡ã®ä½ç½®ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1465,7 +1465,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Î¼çÀâÌÀ¥Ö¥í¥Ã¥¯Æâ¡£¤³¤Î¾ì¹ç¡¢¼çÀâÌÀ¤Ï¡¢¾å°Ì³¬ÁؤΥ¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+メソッドã®ä¸»èª¬æ˜Žãƒ–ロック内。ã“ã®å ´åˆã€ä¸»èª¬æ˜Žã¯ã€ä¸Šä½éšŽå±¤ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1476,24 +1476,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Î\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¤Î¥Æ¥­¥¹¥È°ú¿ôÆâ¡£¤³¤Î¾ì¹ç¡¢¥¿¥°¡¦¥Æ¥­¥¹¥È¤Ï¡¢¾å°Ì³¬ÁؤÎÂбþ¤¹¤ë¥¿¥°¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-.RE
-.sp
-·Ñ¾µ³¬Áؤǥ³¥á¥ó¥È¤ò¸«¤Ä¤±¤ëÊýË¡¤Ë´Ø¤¹¤ëÀâÌÀ¤Ï¡¢¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¥³¥á¥ó¥È¤Ï¡¢¤³¤Î¹à¤ÇÀâÌÀ¤¹¤ë¥ë¡¼¥ë¤Ë±þ¤¸¤Æ¡¢¼«Æ°Åª¤Ë·Ñ¾µ¤µ¤ì¤ë¤«¤É¤¦¤«¤¬·è¤Þ¤ê¤Þ¤¹¡£
+メソッドã®\fI@return\fRã€\fI@param\fRã€\fI@throws\fRã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°å†…。ã“ã®å ´åˆã€ã‚¿ã‚°ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ä¸Šä½éšŽå±¤ã®å¯¾å¿œã™ã‚‹ã‚¿ã‚°ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+.RE
+.sp
+継承階層ã§ã‚³ãƒ¡ãƒ³ãƒˆã‚’見ã¤ã‘る方法ã«é–¢ã™ã‚‹èª¬æ˜Žã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ã“ã®ã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€ã“ã®é …ã§èª¬æ˜Žã™ã‚‹ãƒ«ãƒ¼ãƒ«ã«å¿œã˜ã¦ã€è‡ªå‹•çš„ã«ç¶™æ‰¿ã•ã‚Œã‚‹ã‹ã©ã†ã‹ãŒæ±ºã¾ã‚Šã¾ã™ã€‚
 .RE
 .PP
 {@link \fIpackage\&.class#member label\fR}
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-ɽ¼¨¥Æ¥­¥¹¥Èlabel¤È¤È¤â¤Ë¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤òÁÞÆþ¤·¤Þ¤¹¡£label¤Ï¡¢»²¾È¥¯¥é¥¹¤Î»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î̾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»Ø¤·¼¨¤·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢\fI@return\fR¡¢\fI@param\fR¤ª¤è¤Ó\fI@deprecated\fR¥¿¥°¤Ê¤É¤ÎǤ°Õ¤Î¥¿¥°¤Î¥Æ¥­¥¹¥ÈÉôʬ¤ò´Þ¤à¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@link¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#{@link)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤³¤Î¥¿¥°¤Ï\fI@see\fR¥¿¥°¤Ë»÷¤Æ¤¤¤Þ¤¹¡£¤É¤Á¤é¤Î¥¿¥°¤â¡¢\fIpackage\&.class#member\fR¤È\fIlabel\fR¤Î»²¾ÈÊýË¡¤È¡¢Í­¸ú¤Ê¹½Ê¸¤¬Æ±¤¸¤Ç¤¹¡£¼ç¤Ê°ã¤¤¤Ï¡¢\fI{@link}\fR¥¿¥°¤Ç¤Ï¡¢¡Ö´ØÏ¢¹àÌܡץ»¥¯¥·¥ç¥ó¤Ë¥ê¥ó¥¯¤¬ÇÛÃÖ¤µ¤ì¤ë¤«¤ï¤ê¤Ë¡¢¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤¬À¸À®¤µ¤ì¤ë¤È¤¤¤¦ÅÀ¤Ç¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥Æ¥­¥¹¥È¤Î¾¤ÎÉôʬ¤È¶èÊ̤¹¤ë¤¿¤á¤Ë¡¢\fI{@link}\fR¥¿¥°¤ÎºÇ½é¤ÈºÇ¸å¤ËÃ楫¥Ã¥³¤òµ­½Ò¤·¤Þ¤¹¡£¥é¥Ù¥ëÆâ¤Ç±¦Ã楫¥Ã¥³(\fI}\fR)¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢HTML¥¨¥ó¥Æ¥£¥Æ¥£µ­Ë¡\fI&#125;\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-1¤Äʸ¤ÎÃæ¤Ç»ÈÍѤǤ­¤ë\fI{@link}\fR¥¿¥°¤Î¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥¿¥°¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¼çÀâÌÀÉôʬ¡¢¤Þ¤¿¤Ï\fI@deprecated\fR¡¢\fI@return\fR¡¢\fI@param\fR¥¿¥°¤Ê¤É¤ÎǤ°Õ¤Î¥¿¥°¤Î¥Æ¥­¥¹¥ÈÉôʬ¤Ç»ÈÍѤǤ­¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥á¥ó¥È¤Ç¤Ï\fIgetComponentAt(int,int)\fR¥á¥½¥Ã¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+表示テキストlabelã¨ã¨ã‚‚ã«ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ã‚’挿入ã—ã¾ã™ã€‚labelã¯ã€å‚照クラスã®æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®åå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’指ã—示ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€\fI@return\fRã€\fI@param\fRãŠã‚ˆã³\fI@deprecated\fRã‚¿ã‚°ãªã©ã®ä»»æ„ã®ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã‚’å«ã‚€ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@linkã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#{@link)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ã“ã®ã‚¿ã‚°ã¯\fI@see\fRã‚¿ã‚°ã«ä¼¼ã¦ã„ã¾ã™ã€‚ã©ã¡ã‚‰ã®ã‚¿ã‚°ã‚‚ã€\fIpackage\&.class#member\fRã¨\fIlabel\fRã®å‚照方法ã¨ã€æœ‰åŠ¹ãªæ§‹æ–‡ãŒåŒã˜ã§ã™ã€‚主ãªé•ã„ã¯ã€\fI{@link}\fRã‚¿ã‚°ã§ã¯ã€ã€Œé–¢é€£é …ç›®ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã«ãƒªãƒ³ã‚¯ãŒé…ç½®ã•ã‚Œã‚‹ã‹ã‚ã‚Šã«ã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ãŒç”Ÿæˆã•ã‚Œã‚‹ã¨ã„ã†ç‚¹ã§ã™ã€‚インライン・テキストã®ä»–ã®éƒ¨åˆ†ã¨åŒºåˆ¥ã™ã‚‹ãŸã‚ã«ã€\fI{@link}\fRã‚¿ã‚°ã®æœ€åˆã¨æœ€å¾Œã«ä¸­ã‚«ãƒƒã‚³ã‚’記述ã—ã¾ã™ã€‚ラベル内ã§å³ä¸­ã‚«ãƒƒã‚³(\fI}\fR)を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€HTMLエンティティ記法\fI&#125;\fRを使用ã—ã¾ã™ã€‚
+.sp
+1ã¤æ–‡ã®ä¸­ã§ä½¿ç”¨ã§ãã‚‹\fI{@link}\fRã‚¿ã‚°ã®æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚¿ã‚°ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ä¸»èª¬æ˜Žéƒ¨åˆ†ã€ã¾ãŸã¯\fI@deprecated\fRã€\fI@return\fRã€\fI@param\fRã‚¿ã‚°ãªã©ã®ä»»æ„ã®ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã§ä½¿ç”¨ã§ãã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯\fIgetComponentAt(int,int)\fRメソッドをå‚ç…§ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1504,7 +1504,7 @@
 .if n \{\
 .RE
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤Î¥³¡¼¥É¤«¤é¼¡¤ÎHTML¤¬À¸À®¤µ¤ì¤Þ¤¹(¤³¤Î¥³¥á¥ó¥È¤¬Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤ÎÊ̤Υ¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç)¡£
+標準ドックレットã§ã¯ã€ã“ã®ã‚³ãƒ¼ãƒ‰ã‹ã‚‰æ¬¡ã®HTMLãŒç”Ÿæˆã•ã‚Œã¾ã™(ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆãŒåŒã˜ãƒ‘ッケージã®åˆ¥ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹å ´åˆ)。
 .sp
 .if n \{\
 .RS 4
@@ -1515,7 +1515,7 @@
 .if n \{\
 .RE
 .\}
-Á°¤Î¹Ô¤Ï¡¢¼¡¤Î¤è¤¦¤ËWeb¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+å‰ã®è¡Œã¯ã€æ¬¡ã®ã‚ˆã†ã«Webページã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1530,28 +1530,28 @@
 .PP
 {@linkplain \fIpackage\&.class#member label\fR}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-\fI{@link}\fR¥¿¥°¤ÈƱ¤¸Æ°ºî¤ò¤·¤Þ¤¹¤¬¡¢¥ê¥ó¥¯¡¦¥é¥Ù¥ë¤¬¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ç¤Ï¤Ê¤¯¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Çɽ¼¨¤µ¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£¥é¥Ù¥ë¤¬¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤ÈÊØÍø¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¡Ö\fIRefer to {@linkplain add() the overridden method}\fR\&.¡×¤Ï¡ÖRefer to the overridden method¡×¤Èɽ¼¨¤µ¤ì¤Þ¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+\fI{@link}\fRã‚¿ã‚°ã¨åŒã˜å‹•ä½œã‚’ã—ã¾ã™ãŒã€ãƒªãƒ³ã‚¯ãƒ»ãƒ©ãƒ™ãƒ«ãŒã‚³ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚©ãƒ³ãƒˆã§ã¯ãªãプレーン・テキストã§è¡¨ç¤ºã•ã‚Œã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚ラベルãŒãƒ—レーン・テキストã§è¨˜è¿°ã•ã‚Œã¦ã„ã‚‹ã¨ä¾¿åˆ©ã§ã™ã€‚ãŸã¨ãˆã°ã€ã€Œ\fIRefer to {@linkplain add() the overridden method}\fR\&.ã€ã¯ã€ŒRefer to the overridden methodã€ã¨è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 {@literal \fItext\fR}
 .RS 4
-JDK 1\&.5¤ÇƳÆþ
-.sp
-¥Æ¥­¥¹¥È¤òHTML¥Þ¡¼¥¯¥¢¥Ã¥×¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿Javadoc¥¿¥°¤È¤·¤Æ²ò¼á¤»¤º¤Ë¡¢text¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤Î·¿(\fI<Object>\fR)¡¢ÉÔÅù¹æ(\fI3 < 4\fR)¡¢Ìð°õ(<\-)¤Ê¤É¤Ç¡¢»³¥«¥Ã¥³(\fI<¤ª¤è¤Ó>\fR)¤òHTML¥¨¥ó¥Æ¥£¥Æ¥£(\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR)¤Î¤«¤ï¤ê¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È\fI{@literal A<B>C}\fR¤Ï\fIA<B>C\fR¤È¤·¤Æ¡¢¥Ö¥é¥¦¥¶¤ÎÀ¸À®¤µ¤ì¤¿HTML¥Ú¡¼¥¸¤ËÊѹ¹¤µ¤ì¤º¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI<B>\fR¤ÏÂÀ»ú¤È¤·¤Æ²ò¼á¤µ¤ì¤Þ¤»¤ó(¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ë¤Ê¤ê¤Þ¤»¤ó)¡£¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤ÇƱ¤¸µ¡Ç½¤ò¼Â¸½¤¹¤ë¤Ë¤Ï¡¢\fI{@code}\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.5ã§å°Žå…¥
+.sp
+テキストをHTMLマークアップã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸJavadocã‚¿ã‚°ã¨ã—ã¦è§£é‡ˆã›ãšã«ã€textを表示ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ãƒ‘ラメータã®åž‹(\fI<Object>\fR)ã€ä¸ç­‰å·(\fI3 < 4\fR)ã€çŸ¢å°(<\-)ãªã©ã§ã€å±±ã‚«ãƒƒã‚³(\fI<ãŠã‚ˆã³>\fR)ã‚’HTMLエンティティ(\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fR)ã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ãƒ†ã‚­ã‚¹ãƒˆ\fI{@literal A<B>C}\fRã¯\fIA<B>C\fRã¨ã—ã¦ã€ãƒ–ラウザã®ç”Ÿæˆã•ã‚ŒãŸHTMLページã«å¤‰æ›´ã•ã‚Œãšã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI<B>\fRã¯å¤ªå­—ã¨ã—ã¦è§£é‡ˆã•ã‚Œã¾ã›ã‚“(コード・フォントã«ãªã‚Šã¾ã›ã‚“)。コード・フォントã§åŒã˜æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ã«ã¯ã€\fI{@code}\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @param \fIparameter\-name description\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¡Ö¥Ñ¥é¥á¡¼¥¿¡×¥»¥¯¥·¥ç¥ó¤Ë¡¢»ØÄꤵ¤ì¤¿\fIparameter\-name\fR¤Î¸å¤Ë»ØÄꤵ¤ì¤¿description¤ò³¤±¤Æ¥Ñ¥é¥á¡¼¥¿¤òÄɲä·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤È¤­¤Ë¤Ï¡¢description¤òÊ£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤Þ¤¿¤Ï¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@param¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@param)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fIparameter\-name\fR¤Ï¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤Î¥Ñ¥é¥á¡¼¥¿¤Î̾Á°¤«¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Î·¿¥Ñ¥é¥á¡¼¥¿¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£»³¥«¥Ã¥³¤Ç¤³¤Î¥Ñ¥é¥á¡¼¥¿Ì¾¤ò°Ï¤ß¡¢·¿¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ¹¤ë¤³¤È¤ò»ØÄꤷ¤Þ¤¹¡£
-.sp
-¥¯¥é¥¹¤Î·¿¥Ñ¥é¥á¡¼¥¿¤ÎÎã:
+JDK 1\&.0ã§å°Žå…¥
+.sp
+「パラメータã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã«ã€æŒ‡å®šã•ã‚ŒãŸ\fIparameter\-name\fRã®å¾Œã«æŒ‡å®šã•ã‚ŒãŸdescriptionを続ã‘ã¦ãƒ‘ラメータを追加ã—ã¾ã™ã€‚ドキュメンテーション・コメントを記述ã™ã‚‹ã¨ãã«ã¯ã€descriptionを複数行ã«ã‚ãŸã£ã¦è¨˜è¿°ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@paramã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@param)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fIparameter\-name\fRã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã§ã®ãƒ‘ラメータã®åå‰ã‹ã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®åž‹ãƒ‘ラメータã®åå‰ã«ãªã‚Šã¾ã™ã€‚山カッコã§ã“ã®ãƒ‘ラメータåを囲ã¿ã€åž‹ãƒ‘ラメータを使用ã™ã‚‹ã“ã¨ã‚’指定ã—ã¾ã™ã€‚
+.sp
+クラスã®åž‹ãƒ‘ラメータã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -1566,7 +1566,7 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É¤Î·¿¥Ñ¥é¥á¡¼¥¿¤ÎÎã:
+メソッドã®åž‹ãƒ‘ラメータã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -1588,35 +1588,35 @@
 .PP
 @return \fIdescription\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¡ÖÌá¤êÃ͡ץ»¥¯¥·¥ç¥ó¤òÄɲ䷤ơ¢description¤Î¥Æ¥­¥¹¥È¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ç¤Ï¡¢Ìá¤êÃͤη¿¤È¡¢¼è¤êÆÀ¤ëÃͤÎÈϰϤˤĤ¤¤Æµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@return¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@return)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+「戻り値ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚’追加ã—ã¦ã€descriptionã®ãƒ†ã‚­ã‚¹ãƒˆã‚’書ãè¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã§ã¯ã€æˆ»ã‚Šå€¤ã®åž‹ã¨ã€å–り得る値ã®ç¯„囲ã«ã¤ã„ã¦è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@returnã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@return)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 @see \fIreference\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI¡Ö´ØÏ¢¹àÌÜ¡×\fR¸«½Ð¤·¤òÄɲ䷤ơ¢reference¤ò»Ø¤¹¥ê¥ó¥¯¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥È¡¦¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤ÏǤ°Õ¤Î¿ô¤Î\fI@see\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤ì¤é¤Ï¤¹¤Ù¤ÆƱ¤¸¸«½Ð¤·¤Î²¼¤Ë¥°¥ë¡¼¥×²½¤µ¤ì¤Þ¤¹¡£\fI@see\fR¥¿¥°¤Ë¤Ï¡¢3¤Ä¤Î¥¿¥¤¥×¤Î·Á¼°¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î·Á¼°¤¬ºÇ¤â°ìÈÌŪ¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤òʸÃæ¤ËÁÞÆþ¤¹¤ëÊýË¡¤Ï¡¢\fI{@link}\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fB·Á¼°1\fR¡£@see
-\fIstring\fR¥¿¥°·Á¼°¤Ï¡¢\fIstring\fR¤Î¥Æ¥­¥¹¥È¡¦¥¨¥ó¥È¥ê¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£string¤Ï¡¢½ñÀÒ¤Þ¤¿¤ÏURL¤Ç¤Ï¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¾ðÊó¤Î»²¾ÈÀè¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ºÇ½é¤Îʸ»ú¤È¤·¤ÆÆó½Å°úÍÑÉä(")¤ò¸¡º÷¤·¤Æ¡¢¤³¤Î·Á¼°¤òÁ°½Ò¤Î·Á¼°¤È¶èÊ̤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see "The Java Programming Language"\fR¤Ï¼¡¤Î¥Æ¥­¥¹¥È¤òÀ¸À®¤·¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI「関連項目ã€\fR見出ã—を追加ã—ã¦ã€referenceを指ã™ãƒªãƒ³ã‚¯ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’書ãè¾¼ã¿ã¾ã™ã€‚1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ä»»æ„ã®æ•°ã®\fI@see\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãれらã¯ã™ã¹ã¦åŒã˜è¦‹å‡ºã—ã®ä¸‹ã«ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¾ã™ã€‚\fI@see\fRã‚¿ã‚°ã«ã¯ã€3ã¤ã®ã‚¿ã‚¤ãƒ—ã®å½¢å¼ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®å½¢å¼ãŒæœ€ã‚‚一般的ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚パッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ã‚’文中ã«æŒ¿å…¥ã™ã‚‹æ–¹æ³•ã¯ã€\fI{@link}\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fBå½¢å¼1\fR。@see
+\fIstring\fRã‚¿ã‚°å½¢å¼ã¯ã€\fIstring\fRã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’追加ã—ã¾ã™ã€‚リンクã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。stringã¯ã€æ›¸ç±ã¾ãŸã¯URLã§ã¯ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„情報ã®å‚照先ã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æœ€åˆã®æ–‡å­—ã¨ã—ã¦äºŒé‡å¼•ç”¨ç¬¦(")を検索ã—ã¦ã€ã“ã®å½¢å¼ã‚’å‰è¿°ã®å½¢å¼ã¨åŒºåˆ¥ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see "The Java Programming Language"\fRã¯æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã—ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 "The Java Programming Language"
 .sp
-\fB·Á¼°2\fR¡£\fI@see <a href="URL#value">label</a>\fR·Á¼°¤Ï¡¢\fIURL#value\fR¤Ë¤è¤êÄêµÁ¤µ¤ì¤¿¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£\fIURL#value\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢ÁêÂÐURL¤Þ¤¿¤ÏÀäÂÐURL¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ºÇ½é¤Îʸ»ú¤È¤·¤Æ¡Ö¤è¤ê¾®¤µ¤¤¡×µ­¹æ(\fI<\fR)¤ò¸¡º÷¤·¤Æ¡¢¤³¤Î·Á¼°¤ò¾¤Î·Á¼°¤È¶èÊ̤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see <a href="spec\&.html#section">Java Spec</a>\fR¤Ï¼¡¤Î¥ê¥ó¥¯¤òÀ¸À®¤·¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+\fBå½¢å¼2\fR。\fI@see <a href="URL#value">label</a>\fRå½¢å¼ã¯ã€\fIURL#value\fRã«ã‚ˆã‚Šå®šç¾©ã•ã‚ŒãŸãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚\fIURL#value\fRパラメータã¯ã€ç›¸å¯¾URLã¾ãŸã¯çµ¶å¯¾URLã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æœ€åˆã®æ–‡å­—ã¨ã—ã¦ã€Œã‚ˆã‚Šå°ã•ã„ã€è¨˜å·(\fI<\fR)を検索ã—ã¦ã€ã“ã®å½¢å¼ã‚’ä»–ã®å½¢å¼ã¨åŒºåˆ¥ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see <a href="spec\&.html#section">Java Spec</a>\fRã¯æ¬¡ã®ãƒªãƒ³ã‚¯ã‚’生æˆã—ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 Java Spec
 .sp
-\fB·Á¼°3\fR¡£\fI@see package\&.class#member label\fR·Á¼°¤Ï¡¢É½¼¨¥Æ¥­¥¹¥È¡¦¥é¥Ù¥ë¤È¤È¤â¤Ë¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥é¥Ù¥ë¤Ï»²¾È¤µ¤ì¤Æ¤¤¤ëJava¸À¸ì¤Î»ØÄꤵ¤ì¤¿Ì¾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»Ø¤·¼¨¤·¤Þ¤¹¡£¥é¥Ù¥ë¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£¥é¥Ù¥ë¤ò¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É½¼¨¥Æ¥­¥¹¥È¤Î¤«¤ï¤ê¤Ë¡¢Ì¾Á°¤¬Å¬ÀÚ¤Ëû½Ì¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤³¤Îɽ¼¨¥Æ¥­¥¹¥È¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬Á´ÂÎŪ¤Ëºï½ü¤µ¤ì¤Þ¤¹¡£¥é¥Ù¥ë¤Ï¡¢¼«Æ°À¸À®¤µ¤ì¤ëɽ¼¨¥Æ¥­¥¹¥È¤È¤Ï°Û¤Ê¤ëɽ¼¨¥Æ¥­¥¹¥È¤Ë¤¹¤ë¾ì¹ç¤Ë»ÈÍѤ·¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-Java SE 1\&.2¤À¤±¤Ï¡¢¥é¥Ù¥ë¤Ç¤Ï¤Ê¤¯Ì¾Á°¤¬\fI<code>\fR
-HTML¥¿¥°Æâ¤Ë¼«Æ°Åª¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£Java SE 1\&.2\&.2¤«¤é¤Ï¡¢¥é¥Ù¥ë¤ò»ÈÍѤ¹¤ë¤«¤·¤Ê¤¤¤«¤Ë¤«¤«¤ï¤é¤º¡¢\fI<code>\fR¥¿¥°¤Ï¾ï¤Ëɽ¼¨¥Æ¥­¥¹¥È¤ò°Ï¤à¤«¤¿¤Á¤Ç´Þ¤Þ¤ì¤Þ¤¹¡£
+\fBå½¢å¼3\fR。\fI@see package\&.class#member label\fRå½¢å¼ã¯ã€è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ©ãƒ™ãƒ«ã¨ã¨ã‚‚ã«ãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚ã“ã®ãƒ©ãƒ™ãƒ«ã¯å‚ç…§ã•ã‚Œã¦ã„ã‚‹Java言語ã®æŒ‡å®šã•ã‚ŒãŸåå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’指ã—示ã—ã¾ã™ã€‚ラベルã¯ã‚ªãƒ—ションã§ã™ã€‚ラベルをçœç•¥ã—ãŸå ´åˆã¯ã€è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã®ã‹ã‚ã‚Šã«ã€åå‰ãŒé©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-noqualifier\fRオプションを使用ã™ã‚‹ã¨ã€ã“ã®è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã‹ã‚‰ãƒ‘ッケージåãŒå…¨ä½“çš„ã«å‰Šé™¤ã•ã‚Œã¾ã™ã€‚ラベルã¯ã€è‡ªå‹•ç”Ÿæˆã•ã‚Œã‚‹è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã¨ã¯ç•°ãªã‚‹è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã«ã™ã‚‹å ´åˆã«ä½¿ç”¨ã—ã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+Java SE 1\&.2ã ã‘ã¯ã€ãƒ©ãƒ™ãƒ«ã§ã¯ãªãåå‰ãŒ\fI<code>\fR
+HTMLタグ内ã«è‡ªå‹•çš„ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚Java SE 1\&.2\&.2ã‹ã‚‰ã¯ã€ãƒ©ãƒ™ãƒ«ã‚’使用ã™ã‚‹ã‹ã—ãªã„ã‹ã«ã‹ã‹ã‚らãšã€\fI<code>\fRã‚¿ã‚°ã¯å¸¸ã«è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã‚’囲むã‹ãŸã¡ã§å«ã¾ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1626,10 +1626,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\&.class#member\fR¤Ë¤Ï¡¢»²¾È¤µ¤ì¤Æ¤¤¤ëǤ°Õ¤ÎÍ­¸ú¤Ê¥×¥í¥°¥é¥àÍ×ÁǤÎ̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤Î̾Á°¤Ç¤¹¡£¤¿¤À¤·¡¢¥á¥ó¥Ð¡¼Ì¾¤ÎÁ°¤Îʸ»ú¤Ï¡¢¥·¥ã¡¼¥×µ­¹æ(\fI#\fR)¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£class¤Ï¡¢Ç¤°Õ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤«¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òɽ¤·¤Þ¤¹¡£member¤Ï¡¢Ç¤°Õ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤òɽ¤·¤Þ¤¹(¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î̾Á°¤¬¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î̾Á°¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£³°Éô»²¾È¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£»²¾È¥¯¥é¥¹¤Ë°¤·¤Æ¤¤¤Ê¤¤Ì¾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢Â¾¤Î2¤Ä¤Î\fI@see\fR¥¿¥°·Á¼°¤Î¤É¤Á¤é¤«¤ò»ÈÍѤ·¤Þ¤¹¡£¡Ö̾Á°¤Î»ØÄê¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fBÃí°Õ:\fR
-³°Éô»²¾È¥¯¥é¥¹¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤Ê¤¤¥¯¥é¥¹¤Ç¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥ÈÆâ¤Ç³°Éô»²¾È¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤·¤Æ¤¤¤ë²Õ½ê¤Ï¡¢³°Éô»²¾È¤Þ¤¿¤Ï³°Éô¥ê¥ó¥¯¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjava\&.awt package\fR¤ËÂФ·¤Æ¤Î¤ß\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢\fIObject\fR¤Ê¤É¤Î\fIjava\&.lang\fRÆâ¤Î¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤¬³°Éô»²¾È¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢³°Éô»²¾È¥¯¥é¥¹¤Ø¥ê¥ó¥¯¤·¤Þ¤¹¡£³°Éô»²¾È¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥³¥á¥ó¥È¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ë¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+\fIpackage\&.class#member\fRã«ã¯ã€å‚ç…§ã•ã‚Œã¦ã„ã‚‹ä»»æ„ã®æœ‰åŠ¹ãªãƒ—ログラムè¦ç´ ã®åå‰ã‚’指定ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®åå‰ã§ã™ã€‚ãŸã ã—ã€ãƒ¡ãƒ³ãƒãƒ¼åã®å‰ã®æ–‡å­—ã¯ã€ã‚·ãƒ£ãƒ¼ãƒ—記å·(\fI#\fR)ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚classã¯ã€ä»»æ„ã®ãƒˆãƒƒãƒ—レベルã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’表ã—ã¾ã™ã€‚memberã¯ã€ä»»æ„ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’表ã—ã¾ã™(ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®åå‰ãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ãã®åå‰ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚外部å‚照クラスã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã™ã‚‹ã«ã¯ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚å‚照クラスã«å±žã—ã¦ã„ãªã„åå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’å‚ç…§ã™ã‚‹ã«ã¯ã€ä»–ã®2ã¤ã®\fI@see\fRã‚¿ã‚°å½¢å¼ã®ã©ã¡ã‚‰ã‹ã‚’使用ã—ã¾ã™ã€‚「åå‰ã®æŒ‡å®šã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fB注æ„:\fR
+外部å‚照クラスã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjavadoc\fRコマンドã«æ¸¡ã•ã‚Œãªã„クラスã§ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã§å¤–部å‚照クラスã«ãƒªãƒ³ã‚¯ã—ã¦ã„る箇所ã¯ã€å¤–部å‚ç…§ã¾ãŸã¯å¤–部リンクã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjava\&.awt package\fRã«å¯¾ã—ã¦ã®ã¿\fIjavadoc\fRコマンドを実行ã—ãŸå ´åˆã€\fIObject\fRãªã©ã®\fIjava\&.lang\fR内ã®ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãŒå¤–部å‚照クラスã«ãªã‚Šã¾ã™ã€‚\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションを使用ã—ã¦ã€å¤–部å‚照クラスã¸ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚外部å‚照クラスã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯\fIjavadoc\fRコマンドã®å®Ÿè¡Œã«ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -1640,7 +1640,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIlabel\fR¤Ï¡¢¾Êά²Äǽ¤Ê¥Æ¥­¥¹¥È¤Ç¡¢¥ê¥ó¥¯¤Î¥é¥Ù¥ë¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£¥é¥Ù¥ë¤Ë¤Ï¶õÇò¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIlabel\fR¤ò¾Êά¤¹¤ë¤È¡¢\fIpackage\&.class\&.member\fR¤¬¡¢¸½ºß¤Î¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤Ë±þ¤¸¤ÆŬÀÚ¤Ëû½Ì¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIlabel\fRã¯ã€çœç•¥å¯èƒ½ãªãƒ†ã‚­ã‚¹ãƒˆã§ã€ãƒªãƒ³ã‚¯ã®ãƒ©ãƒ™ãƒ«ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ラベルã«ã¯ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIlabel\fRã‚’çœç•¥ã™ã‚‹ã¨ã€\fIpackage\&.class\&.member\fRãŒã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã«å¿œã˜ã¦é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1651,10 +1651,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¶õÇòʸ»ú¤¬¡¢\fIpackage\&.class#member\fR¤È\fIlabel\fR¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤Ë¤Ê¤ê¤Þ¤¹¡£¥«¥Ã¥³¤ÎÆ⦤ζõÇòʸ»ú¤Ï¥é¥Ù¥ë¤ÎÀèƬ¤È¤Ï²ò¼á¤µ¤ì¤Ê¤¤¤¿¤á¡¢¥á¥½¥Ã¥É¤Î¥Ñ¥é¥á¡¼¥¿´Ö¤Ë¶õÇòʸ»ú¤òÆþ¤ì¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.RE
-.sp
-¤³¤ÎÎã¤Ç¤Ï¡¢\fI@see\fR¥¿¥°(\fICharacter\fR¥¯¥é¥¹Æâ)¤¬¡¢\fIString\fR¥¯¥é¥¹¤Îequals¥á¥½¥Ã¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£¥¿¥°¤Ë¤Ï¡¢Ì¾Á°\fIString#equals(Object)\fR¤È¥é¥Ù¥ë\fIequals\fR¤ÎξÊý¤Î°ú¿ô¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+空白文字ãŒã€\fIpackage\&.class#member\fRã¨\fIlabel\fRã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã«ãªã‚Šã¾ã™ã€‚カッコã®å†…å´ã®ç©ºç™½æ–‡å­—ã¯ãƒ©ãƒ™ãƒ«ã®å…ˆé ­ã¨ã¯è§£é‡ˆã•ã‚Œãªã„ãŸã‚ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‘ラメータ間ã«ç©ºç™½æ–‡å­—を入れã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。
+.RE
+.sp
+ã“ã®ä¾‹ã§ã¯ã€\fI@see\fRã‚¿ã‚°(\fICharacter\fRクラス内)ãŒã€\fIString\fRクラスã®equalsメソッドをå‚ç…§ã—ã¦ã„ã¾ã™ã€‚ã‚¿ã‚°ã«ã¯ã€åå‰\fIString#equals(Object)\fRã¨ãƒ©ãƒ™ãƒ«\fIequals\fRã®ä¸¡æ–¹ã®å¼•æ•°ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1667,7 +1667,7 @@
 .if n \{\
 .RE
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¼¡¤Î¤è¤¦¤ÊHTML¤òÀ¸À®¤·¤Þ¤¹¡£
+標準ドックレットã¯ã€æ¬¡ã®ã‚ˆã†ãªHTMLを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1681,14 +1681,14 @@
 .if n \{\
 .RE
 .\}
-Á°½Ò¤Î¥³¡¼¥É¤Ï¡¢¥Ö¥é¥¦¥¶¤Ë¼¡¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¡¢¥é¥Ù¥ë¤Ïɽ¼¨¥ê¥ó¥¯¡¦¥Æ¥­¥¹¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+å‰è¿°ã®ã‚³ãƒ¼ãƒ‰ã¯ã€ãƒ–ラウザã«æ¬¡ã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã€ãƒ©ãƒ™ãƒ«ã¯è¡¨ç¤ºãƒªãƒ³ã‚¯ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã«ãªã£ã¦ã„ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 equals
 .RE
-̾Á°¤Î»ØÄê.PP
-¤³¤Î\fIpackage\&.class#member\fR¤È¤¤¤¦Ì¾Á°¤Ï¡¢\fIjava\&.lang\&.String#toUpperCase()\fR¤Î¤è¤¦¤Ê´°Á´½¤¾þ̾¤Ë¤¹¤ë¤³¤È¤â¡¢\fIString#toUpperCase()\fR¤ä\fI#toUpperCase()\fR¤Î¤è¤¦¤ÊÈó´°Á´½¤¾þ̾¤Ë¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Ì¾Á°¤¬´°Á´½¤¾þ¤è¤êû¤¤¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¸½à¤ÎJava¥³¥ó¥Ñ¥¤¥é¤Î¸¡º÷½ç½ø¤ò»ÈÍѤ·¤Æõ¤·¤Þ¤¹¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ì¾Á°¤Ï¡¢¥á¥½¥Ã¥É°ú¿ô¤Î´Ö¤Ê¤É¡¢¥«¥Ã¥³Æâ¤Î¥¹¥Ú¡¼¥¹¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ÉôʬŪ¤Ë½¤¾þ¤·¤¿Ã»¤¤Ì¾Á°¤ò»ØÄꤹ¤ë¤³¤È¤ÎÍøÅÀ¤Ï¡¢ÆþÎϤ¹¤ëʸ»ú¿ô¤¬¸º¤ë¤³¤È¤ä¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤¬Æɤߤ䤹¤¯¤Ê¤ë¤³¤È¤Ç¤¹¡£¼¡¤Î¥ê¥¹¥È¤ËÍÍ¡¹¤Ê·Á¼°¤Î̾Á°¤ò¼¨¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIClass\fR¤Ë¤Ï¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¡¢Type¤Ë¤Ï¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢ÇÛÎ󡢤ޤ¿¤Ï¥×¥ê¥ß¥Æ¥£¥Ö¤ò¡¢method¤Ë¤Ï¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤ò¡¢¤½¤ì¤¾¤ì»ØÄê¤Ç¤­¤Þ¤¹¡£
+åå‰ã®æŒ‡å®š.PP
+ã“ã®\fIpackage\&.class#member\fRã¨ã„ã†åå‰ã¯ã€\fIjava\&.lang\&.String#toUpperCase()\fRã®ã‚ˆã†ãªå®Œå…¨ä¿®é£¾åã«ã™ã‚‹ã“ã¨ã‚‚ã€\fIString#toUpperCase()\fRã‚„\fI#toUpperCase()\fRã®ã‚ˆã†ãªéžå®Œå…¨ä¿®é£¾åã«ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚åå‰ãŒå®Œå…¨ä¿®é£¾ã‚ˆã‚ŠçŸ­ã„å ´åˆã¯ã€\fIjavadoc\fRコマンドã¯ã€æ¨™æº–ã®Javaコンパイラã®æ¤œç´¢é †åºã‚’使用ã—ã¦æŽ¢ã—ã¾ã™ã€‚「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。åå‰ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰å¼•æ•°ã®é–“ãªã©ã€ã‚«ãƒƒã‚³å†…ã®ã‚¹ãƒšãƒ¼ã‚¹ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚部分的ã«ä¿®é£¾ã—ãŸçŸ­ã„åå‰ã‚’指定ã™ã‚‹ã“ã¨ã®åˆ©ç‚¹ã¯ã€å…¥åŠ›ã™ã‚‹æ–‡å­—æ•°ãŒæ¸›ã‚‹ã“ã¨ã‚„ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãŒèª­ã¿ã‚„ã™ããªã‚‹ã“ã¨ã§ã™ã€‚次ã®ãƒªã‚¹ãƒˆã«æ§˜ã€…ãªå½¢å¼ã®åå‰ã‚’示ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIClass\fRã«ã¯ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’ã€Typeã«ã¯ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€é…列ã€ã¾ãŸã¯ãƒ—リミティブをã€methodã«ã¯ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1725,7 +1725,7 @@
 .RE
 .\}
 .PP
-Á°¤Î¥ê¥¹¥È¤Ë´Ø¤¹¤ë¥á¥â:
+å‰ã®ãƒªã‚¹ãƒˆã«é–¢ã™ã‚‹ãƒ¡ãƒ¢:
 .sp
 .RS 4
 .ie n \{\
@@ -1735,7 +1735,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ºÇ½é¤Î¥¿¥¤¥×¤Î·Á¼°(¥Ñ¥Ã¥±¡¼¥¸¤È¥¯¥é¥¹¤ò¾Êά)¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¯¥é¥¹¤Î³¬ÁؤΤߤò¸¡º÷¤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¸½ºß¤Î¥¯¥é¥¹¤«¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤½¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤«¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤Þ¤¿¤Ï¤½¤Î³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤«¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¥á¥ó¥Ð¡¼¤ò¸¡º÷¤·¤Þ¤¹(¸¡º÷¹àÌÜ1\(en3)¡£¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¾¤ÎÉôʬ¤ä¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¸¡º÷¤·¤Þ¤»¤ó(¸¡º÷¹àÌÜ4\(en5)¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+最åˆã®ã‚¿ã‚¤ãƒ—ã®å½¢å¼(パッケージã¨ã‚¯ãƒ©ã‚¹ã‚’çœç•¥)ã®å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã®éšŽå±¤ã®ã¿ã‚’検索ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãã®ã‚¹ãƒ¼ãƒ‘ークラスã‹ã‚¹ãƒ¼ãƒ‘ーインタフェースã€ã¾ãŸã¯ãã®å¤–å´ã‚’囲んã§ã„るクラスã‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ãƒ¡ãƒ³ãƒãƒ¼ã‚’検索ã—ã¾ã™(検索項目1\(en3)。ç¾åœ¨ã®ãƒ‘ッケージã®ä»–ã®éƒ¨åˆ†ã‚„ã€ä»–ã®ãƒ‘ッケージã¯æ¤œç´¢ã—ã¾ã›ã‚“(検索項目4\(en5)。「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1746,7 +1746,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤ÎÆþÎÏ»þ¤Ë¡¢\fIgetValue\fR¤Î¤è¤¦¤Ë¥«¥Ã¥³¤Ê¤·¤Î̾Á°¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢Æ±¤¸Ì¾Á°¤Î¥Õ¥£¡¼¥ë¥É¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤¬¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡º÷¤ÇºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¥á¥½¥Ã¥É¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£·ë²Ì¤ÏÁ°¤â¤Ã¤ÆÆÃÄê¤Ç¤­¤Þ¤»¤ó¡£
+メソッドã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®å…¥åŠ›æ™‚ã«ã€\fIgetValue\fRã®ã‚ˆã†ã«ã‚«ãƒƒã‚³ãªã—ã®åå‰ã‚’使用ã—ãŸå ´åˆã€åŒã˜åå‰ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŒå­˜åœ¨ã—ã¦ã„ãªã‘ã‚Œã°ã€\fIjavadoc\fRコマンドã¯ãã®ãƒ¡ã‚½ãƒƒãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¤œç´¢ã§æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ¡ã‚½ãƒƒãƒ‰ã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚çµæžœã¯å‰ã‚‚ã£ã¦ç‰¹å®šã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -1757,7 +1757,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢¤¹¤Ù¤Æ¤Î·Á¼°¤Ë¤Ä¤¤¤Æ¡¢\fIouter\&.inner\fR¤È¤·¤Æ»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Ã±½ã¤Ë\fIinner\fR¤È¤Ï¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€ã™ã¹ã¦ã®å½¢å¼ã«ã¤ã„ã¦ã€\fIouter\&.inner\fRã¨ã—ã¦æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å˜ç´”ã«\fIinner\fRã¨ã¯ã—ãªã„ã§ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1768,12 +1768,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤¹¤Ç¤Ë½Ò¤Ù¤¿¤è¤¦¤Ë¡¢¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤È¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ¤Ï¡¢¥É¥Ã¥È(\fI\&.\fR)¤Ç¤Ï¤Ê¤¯¥·¥ã¡¼¥×µ­¹æ(\fI#\fR)¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ë»ØÄꤹ¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¢¤¤¤Þ¤¤¤µ¤ò²ò·è¤Ç¤­¤Þ¤¹¡£¥É¥Ã¥È¤Ï¡¢¥¯¥é¥¹¡¢¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¶èÀڤ뤿¤á¤Ë¤â»ÈÍѤµ¤ì¤ë¤«¤é¤Ç¤¹¡£¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤¢¤¤¤Þ¤¤¤µ¤¬¤Ê¤±¤ì¤Ð¥É¥Ã¥È¤ÏÀµ¤·¤¯²òÀϤµ¤ì¤Þ¤¹¤¬¡¢·Ù¹ð¤Ïɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.RE
-@see¥¿¥°¤Î¸¡º÷½ç½ø.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Õ¥¡¥¤¥ë¡¢³µÍ×¥Õ¥¡¥¤¥ë¤Ëɽ¼¨¤µ¤ì¤ë\fI@see\fR¥¿¥°¤ò½èÍý¤·¤Þ¤¹¡£¸å¼Ô¤Î2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢´°Á´½¤¾þ¤Î̾Á°¤ò\fI@see\fR¥¿¥°¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢´°Á´½¤¾þ¤Î̾Á°¡¢¤Þ¤¿¤ÏÉôʬ½¤¾þ¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã™ã§ã«è¿°ã¹ãŸã‚ˆã†ã«ã€ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã¨ã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã¯ã€ãƒ‰ãƒƒãƒˆ(\fI\&.\fR)ã§ã¯ãªãシャープ記å·(\fI#\fR)を使用ã—ã¾ã™ã€‚ã“ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã¯ã€ã‚ã„ã¾ã„ã•ã‚’解決ã§ãã¾ã™ã€‚ドットã¯ã€ã‚¯ãƒ©ã‚¹ã€ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã€ãƒ‘ッケージã€ãŠã‚ˆã³ã‚µãƒ–パッケージを区切るãŸã‚ã«ã‚‚使用ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚ãŸã ã—ã€\fIjavadoc\fRコマンドã§ã¯ã€ã‚ã„ã¾ã„ã•ãŒãªã‘ã‚Œã°ãƒ‰ãƒƒãƒˆã¯æ­£ã—ã解æžã•ã‚Œã¾ã™ãŒã€è­¦å‘Šã¯è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.RE
+@seeã‚¿ã‚°ã®æ¤œç´¢é †åº.PP
+\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãƒ‘ッケージ・ファイルã€æ¦‚è¦ãƒ•ã‚¡ã‚¤ãƒ«ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI@see\fRタグを処ç†ã—ã¾ã™ã€‚後者ã®2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã€å®Œå…¨ä¿®é£¾ã®åå‰ã‚’\fI@see\fRã‚¿ã‚°ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ソース・ファイルã§ã¯ã€å®Œå…¨ä¿®é£¾ã®åå‰ã€ã¾ãŸã¯éƒ¨åˆ†ä¿®é£¾ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚
 .PP
-¼¡¤Ë¡¢\fI@see\fR¥¿¥°¤Î¸¡º÷½ç½ø¤ò¼¨¤·¤Þ¤¹¡£
+次ã«ã€\fI@see\fRã‚¿ã‚°ã®æ¤œç´¢é †åºã‚’示ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1783,7 +1783,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¸½ºß¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡£
+ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€‚
 .RE
 .sp
 .RS 4
@@ -1794,7 +1794,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+外å´ã‚’囲んã§ã„るクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1805,7 +1805,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+スーパークラスã¨ã‚¹ãƒ¼ãƒ‘ーインタフェース(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1816,7 +1816,7 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¡£
+ç¾åœ¨ã®ãƒ‘ッケージ。
 .RE
 .sp
 .RS 4
@@ -1827,12 +1827,12 @@
 .sp -1
 .IP "  5." 4.2
 .\}
-¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹(\fIimport\fRʸ¤Î½ç½ø¤Ë½¾¤Ã¤Æ¸¡º÷)¡£
+インãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(\fIimport\fRæ–‡ã®é †åºã«å¾“ã£ã¦æ¤œç´¢)。
 .RE
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢³Æ¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¹àÌÜ1\-3¤òºÆµ¢Åª¤ËŬÍѤ·¤Ê¤¬¤é¡¢°ìÃפ¹¤ë̾Á°¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¸¡º÷¤ò³¤±¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¤Þ¤º¸½ºß¤Î¥¯¥é¥¹¤ò¸¡º÷¤·¡¢¼¡¤Ë¤½¤Î³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹E¤ò¸¡º÷¤·¤¿¸å¡¢E¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤ò¸¡º÷¤·¤Æ¤«¤é¡¢E¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤ò¸¡º÷¤·¤Þ¤¹¡£¹àÌÜ4¤È5¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¸¡º÷¤¹¤ë½ç½ø¤Ï·è¤Þ¤Ã¤Æ¤¤¤Þ¤»¤ó(¤½¤Î½ç½ø¤Ï¡¢¸Ä¡¹¤Î¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹)¡£¹àÌÜ5¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjava\&.lang\fR¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢¤¹¤Ù¤Æ¤Î¥×¥í¥°¥é¥à¤Ë¼«Æ°Åª¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€å„クラスã«ã¤ã„ã¦é …ç›®1\-3ã‚’å†å¸°çš„ã«é©ç”¨ã—ãªãŒã‚‰ã€ä¸€è‡´ã™ã‚‹åå‰ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§æ¤œç´¢ã‚’続ã‘ã¾ã™ã€‚ã¤ã¾ã‚Šã€ã¾ãšç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã€æ¬¡ã«ãã®å¤–å´ã‚’囲んã§ã„るクラスEを検索ã—ãŸå¾Œã€Eã®ã‚¹ãƒ¼ãƒ‘ークラスを検索ã—ã¦ã‹ã‚‰ã€Eを囲んã§ã„るクラスを検索ã—ã¾ã™ã€‚é …ç›®4ã¨5ã§ã¯ã€\fIjavadoc\fRコマンドãŒ1ã¤ã®ãƒ‘ッケージ内ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’検索ã™ã‚‹é †åºã¯æ±ºã¾ã£ã¦ã„ã¾ã›ã‚“(ãã®é †åºã¯ã€å€‹ã€…ã®ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™)。項目5ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€\fIjava\&.lang\fRを検索ã—ã¾ã™ã€‚ã“ã®ãƒ‘ッケージã¯ã€ã™ã¹ã¦ã®ãƒ—ログラムã«è‡ªå‹•çš„ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´°Á´½¤¾þ¤Ç¤Ê¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç\fI@see\fR¥¿¥°¤ò¸«¤Ä¤±¤ë¤È¡¢Java¥³¥ó¥Ñ¥¤¥é¤ÈƱ¤¸½ç½ø¤Ç»ØÄꤵ¤ì¤¿Ì¾Á°¤ò¸¡º÷¤·¤Þ¤¹(¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ÆÃÄê¤Î̾Á°¶õ´Ö¤Î¤¢¤¤¤Þ¤¤¤µ¤ò¸¡½Ð¤·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤³¤ì¤é¤Î¥¨¥é¡¼¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤ë¤¿¤á¤Ç¤¹)¡£¤³¤Î¸¡º÷½ç½ø¤Ï¡¢Java¸À¸ì»ÅÍͤÇÀµ¼°¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´ØÏ¢¤¹¤ë¥¯¥é¥¹¤È¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤¿¥¯¥é¥¹¤È¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤«¤é¤½¤Î̾Á°¤ò¸¡º÷¤·¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢¼¡¤Î½ç½ø¤Ç¸¡º÷¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€å®Œå…¨ä¿®é£¾ã§ãªã„ソース・ファイルã§\fI@see\fRタグを見ã¤ã‘ã‚‹ã¨ã€Javaコンパイラã¨åŒã˜é †åºã§æŒ‡å®šã•ã‚ŒãŸåå‰ã‚’検索ã—ã¾ã™(ãŸã ã—ã€\fIjavadoc\fRコマンドã¯ã€ç‰¹å®šã®åå‰ç©ºé–“ã®ã‚ã„ã¾ã„ã•ã‚’検出ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã“れらã®ã‚¨ãƒ©ãƒ¼ãŒå­˜åœ¨ã—ã¦ã„ãªã„ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã‚‹ãŸã‚ã§ã™)。ã“ã®æ¤œç´¢é †åºã¯ã€Java言語仕様ã§æ­£å¼ã«å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€é–¢é€£ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ãƒ‘ッケージã€ãŠã‚ˆã³ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¨ãƒ‘ッケージã®ã™ã¹ã¦ã‹ã‚‰ãã®åå‰ã‚’検索ã—ã¾ã™ã€‚具体的ã«ã¯ã€æ¬¡ã®é †åºã§æ¤œç´¢ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1842,7 +1842,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¸½ºß¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡£
+ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€‚
 .RE
 .sp
 .RS 4
@@ -1853,7 +1853,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+外å´ã‚’囲んã§ã„るクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1864,7 +1864,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+スーパークラスã¨ã‚¹ãƒ¼ãƒ‘ーインタフェース(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1875,7 +1875,7 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¡£
+ç¾åœ¨ã®ãƒ‘ッケージ。
 .RE
 .sp
 .RS 4
@@ -1886,48 +1886,48 @@
 .sp -1
 .IP "  5." 4.2
 .\}
-¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹(\fIimport\fRʸ¤Î½ç½ø¤Ë½¾¤Ã¤Æ¸¡º÷)¡£
+インãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(\fIimport\fRæ–‡ã®é †åºã«å¾“ã£ã¦æ¤œç´¢)。
 .RE
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¬¤º¤·¤â¥µ¥Ö¥¯¥é¥¹¤ò¸¡º÷¤¹¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£¤Þ¤¿¡¢¼Â¹ÔÃæ¤Ë¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¤ë¾ì¹ç¤Ç¤â¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤·¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fI@see\fR¥¿¥°¤¬\fIjava\&.awt\&.event\&.KeyEvent\fR¥¯¥é¥¹Æâ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Æ¡¢\fIjava\&.awt package\fRÆâ¤Î¤¢¤ë̾Á°¤ò»²¾È¤·¤Æ¤¤¤Æ¤â¡¢¤½¤Î¥¯¥é¥¹¤¬¥¤¥ó¥Ý¡¼¥È¤·¤Ê¤¤¤«¤®¤ê\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤·¤Þ¤»¤ó¡£
-̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡.PP
-\fIlabel\fR¤ò¾Êά¤¹¤ë¤È¡¢\fIpackage\&.class\&.member\fR¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£°ìÈ̤ˡ¢¤³¤ì¤Ï¸½ºß¤Î¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤Ë±þ¤¸¤ÆŬÀÚ¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£Ã»½Ì¤µ¤ì¤ë¤È¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤êɬÍ׺Ǿ®¸Â¤Î̾Á°¤Î¤ß¤¬É½¼¨¤µ¤ì¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\&.toUpperCase()\fR¥á¥½¥Ã¥É¤Ë¡¢Æ±¤¸¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤Ø¤Î»²¾È¤È¾¤Î¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹Ì¾¤¬É½¼¨¤µ¤ì¤ë¤Î¤Ï¸å¼Ô¤Î¥±¡¼¥¹¤Î¤ß¤Ç¤¹(¼¡¤Î¥ê¥¹¥È¤ò»²¾È)¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÁ´ÂÎŪ¤Ëºï½ü¤¹¤ë¤Ë¤Ï¡¢\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤ÏƱ¤¸¥¯¥é¥¹¡¢Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see String#toLowerCase()\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fItoLowerCase()\fR \- ¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹Ì¾¤ò¾Êά¤·¤Þ¤¹
-.RE
-.RS 4
-.RE
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤ÏÊ̤Υ¯¥é¥¹¡¢Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see Character#toLowerCase(char)\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fICharacter\&.toLowerCase(char)\fR \- ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¾Êά¤·¡¢¥¯¥é¥¹Ì¾¤ò´Þ¤ß¤Þ¤¹
-.RE
-.RS 4
-.RE
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤Ï°Û¤Ê¤ë¥¯¥é¥¹¡¢°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see java\&.io\&.File#exists()\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fIjava\&.io\&.File\&.exists()\fR \- ¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹Ì¾¤ò´Þ¤ß¤Þ¤¹
-.RE
-.RS 4
-.RE
-@see¥¿¥°¤ÎÎã.PP
-±¦Â¦¤Î¥³¥á¥ó¥È¤Ï¡¢\fI@see\fR¥¿¥°¤¬\fIjava\&.applet\&.Applet\fR¤Ê¤É¤ÎÊ̤Υѥ屡¼¥¸¤Î¥¯¥é¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ë¡¢Ì¾Á°¤¬¤É¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤ë¤«¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@see¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@see)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯ã€å¿…ãšã—もサブクラスを検索ã™ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。ã¾ãŸã€å®Ÿè¡Œä¸­ã«ä»–ã®ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã‚‹å ´åˆã§ã‚‚ã€ä»–ã®ãƒ‘ッケージを検索ã—ã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fI@see\fRã‚¿ã‚°ãŒ\fIjava\&.awt\&.event\&.KeyEvent\fRクラス内ã«å«ã¾ã‚Œã¦ã„ã¦ã€\fIjava\&.awt package\fR内ã®ã‚ã‚‹åå‰ã‚’å‚ç…§ã—ã¦ã„ã¦ã‚‚ã€ãã®ã‚¯ãƒ©ã‚¹ãŒã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ãªã„ã‹ãŽã‚Š\fIjavadoc\fRコマンドã¯ãã®ãƒ‘ッケージを検索ã—ã¾ã›ã‚“。
+åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•.PP
+\fIlabel\fRã‚’çœç•¥ã™ã‚‹ã¨ã€\fIpackage\&.class\&.member\fRãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚一般ã«ã€ã“ã‚Œã¯ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã«å¿œã˜ã¦é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚短縮ã•ã‚Œã‚‹ã¨ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã‚Šå¿…è¦æœ€å°é™ã®åå‰ã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚ãŸã¨ãˆã°ã€\fIString\&.toUpperCase()\fRメソッドã«ã€åŒã˜ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã¸ã®å‚ç…§ã¨ä»–ã®ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹åãŒè¡¨ç¤ºã•ã‚Œã‚‹ã®ã¯å¾Œè€…ã®ã‚±ãƒ¼ã‚¹ã®ã¿ã§ã™(次ã®ãƒªã‚¹ãƒˆã‚’å‚ç…§)。パッケージåを全体的ã«å‰Šé™¤ã™ã‚‹ã«ã¯ã€\fI\-noqualifier\fRオプションを使用ã—ã¾ã™ã€‚
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯åŒã˜ã‚¯ãƒ©ã‚¹ã€åŒã˜ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see String#toLowerCase()\fR
+.RE
+.RS 4
+\fB表示\fR: \fItoLowerCase()\fR \- パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹åã‚’çœç•¥ã—ã¾ã™
+.RE
+.RS 4
+.RE
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯åˆ¥ã®ã‚¯ãƒ©ã‚¹ã€åŒã˜ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see Character#toLowerCase(char)\fR
+.RE
+.RS 4
+\fB表示\fR: \fICharacter\&.toLowerCase(char)\fR \- パッケージåã‚’çœç•¥ã—ã€ã‚¯ãƒ©ã‚¹åã‚’å«ã¿ã¾ã™
+.RE
+.RS 4
+.RE
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯ç•°ãªã‚‹ã‚¯ãƒ©ã‚¹ã€ç•°ãªã‚‹ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see java\&.io\&.File#exists()\fR
+.RE
+.RS 4
+\fB表示\fR: \fIjava\&.io\&.File\&.exists()\fR \- パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹åã‚’å«ã¿ã¾ã™
+.RE
+.RS 4
+.RE
+@seeã‚¿ã‚°ã®ä¾‹.PP
+å³å´ã®ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€\fI@see\fRã‚¿ã‚°ãŒ\fIjava\&.applet\&.Applet\fRãªã©ã®åˆ¥ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹å†…ã«ã‚ã‚‹å ´åˆã«ã€åå‰ãŒã©ã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã‚‹ã‹ã‚’示ã—ã¦ã„ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@seeã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@see)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1948,24 +1948,24 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-\fI@se\fR\fIe\fR¥¿¥°¤ò³ÈÄ¥¤·¤Æ¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI@se\fR\fIe\fRã‚¿ã‚°ã‚’æ‹¡å¼µã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„クラスã«ãƒªãƒ³ã‚¯ã™ã‚‹ã«ã¯ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚
 .PP
 @serial \fIfield\-description\fR | include | exclude
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-¥Ç¥Õ¥©¥ë¥È¤ÎľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤ·¤Þ¤¹¡£¥¯¥é¥¹¤ÎľÎó²½²Äǽ¤Ê¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤Îʸ½ñ²½
-(http://docs\&.oracle\&.com/javase/8/docs/platform/serialization/spec/serial\-arch\&.html#5251)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-Oracle¤ÎľÎ󲽤µ¤ì¤¿·Á¼°¤Î»ÅÍͤ˥¯¥é¥¹¤ò´Þ¤á¤ë´ð½à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/serialized\-criteria\-137781\&.html)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fIfield\-description\fR(¾Êά²Äǽ)¤Ç¤Ï¡¢¥Õ¥£¡¼¥ë¥É¤Î°ÕÌ£¤òÀâÌÀ¤·¡¢¼è¤êÆÀ¤ëÃͤΥꥹ¥È¤ò¼¨¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£É¬Íפʾì¹ç¤Ï¡¢Ê£¿ô¤Î¹Ô¤ËÅϤäÆÀâÌÀ¤òµ­½Ò¤Ç¤­¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¤³¤Î¾ðÊó¤ò¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤ËÄɲä·¤Þ¤¹¡£Áê¸ß»²¾È¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥¯¥é¥¹¤òľÎ󲽤·¤¿¸å¤ËľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤ò¥¯¥é¥¹¤ËÄɲä·¤¿¾ì¹ç¡¢¼çÀâÌÀ¤Ë¡¢Äɲä·¤¿¥Ð¡¼¥¸¥ç¥ó¤ò¼±Ê̤¹¤ëʸ¤òÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fIinclude\fR¤ª¤è¤Ó\fIexclude\fR°ú¿ô¤Ï¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤Ë¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤á¤ë¤«½ü³°¤¹¤ë¤«¤ò¼¨¤·¤Þ¤¹¡£¼¡¤Î¤è¤¦¤Ëµ¡Ç½¤·¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+デフォルトã®ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã—ã¾ã™ã€‚クラスã®ç›´åˆ—化å¯èƒ½ãªãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®æ–‡æ›¸åŒ–
+(http://docs\&.oracle\&.com/javase/8/docs/platform/serialization/spec/serial\-arch\&.html#5251)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+Oracleã®ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã®ä»•æ§˜ã«ã‚¯ãƒ©ã‚¹ã‚’å«ã‚る基準
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/serialized\-criteria\-137781\&.html)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fIfield\-description\fR(çœç•¥å¯èƒ½)ã§ã¯ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®æ„味を説明ã—ã€å–り得る値ã®ãƒªã‚¹ãƒˆã‚’示ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å¿…è¦ãªå ´åˆã¯ã€è¤‡æ•°ã®è¡Œã«æ¸¡ã£ã¦èª¬æ˜Žã‚’記述ã§ãã¾ã™ã€‚標準ドックレットã¯ã€ã“ã®æƒ…報をã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã«è¿½åŠ ã—ã¾ã™ã€‚相互å‚照ページをå‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+クラスを直列化ã—ãŸå¾Œã«ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’クラスã«è¿½åŠ ã—ãŸå ´åˆã€ä¸»èª¬æ˜Žã«ã€è¿½åŠ ã—ãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’識別ã™ã‚‹æ–‡ã‚’追加ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fIinclude\fRãŠã‚ˆã³\fIexclude\fR引数ã¯ã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã«ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージをå«ã‚ã‚‹ã‹é™¤å¤–ã™ã‚‹ã‹ã‚’示ã—ã¾ã™ã€‚次ã®ã‚ˆã†ã«æ©Ÿèƒ½ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1975,7 +1975,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISerializable\fR¤ò¼ÂÁõ¤·¤Æ¤¤¤ëpublic¤Þ¤¿¤Ïprotected¥¯¥é¥¹¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥¯¥é¥¹¤¬Â°¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸)¤¬\fI@serial exclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤®¤ê¡¢´Þ¤á¤é¤ì¤Þ¤¹¡£
+\fISerializable\fRを実装ã—ã¦ã„ã‚‹publicã¾ãŸã¯protectedクラスã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ã‚¯ãƒ©ã‚¹ãŒå±žã™ã‚‹ãƒ‘ッケージ)ãŒ\fI@serial exclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ãªã„ã‹ãŽã‚Šã€å«ã‚られã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1986,59 +1986,59 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISerializable\fR¤ò¼ÂÁõ¤·¤Æ¤¤¤ëprivate¤Þ¤¿¤Ïpackage\-private¥¯¥é¥¹¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥¯¥é¥¹¤¬Â°¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸)¤¬\fI@serial include\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤®¤ê¡¢½ü³°¤µ¤ì¤Þ¤¹¡£
-.RE
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjavax\&.swing\fR¥Ñ¥Ã¥±¡¼¥¸¤Ïpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.javaÆâ¤Ç\fI@serial\fR
-\fIexclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£public¥¯¥é¥¹\fIjava\&.security\&.BasicPermission\fR¤Ï\fI@serial exclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£package\-private¥¯¥é¥¹\fIjava\&.util\&.PropertyPermissionCollection\fR¤Ï\fI@serial include\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.sp
-¥¯¥é¥¹¡¦¥ì¥Ù¥ë¤Î\fI@serial\fR¥¿¥°¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥ì¥Ù¥ë¤Î\fI@serial\fR¥¿¥°¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+\fISerializable\fRを実装ã—ã¦ã„ã‚‹privateã¾ãŸã¯package\-privateクラスã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ã‚¯ãƒ©ã‚¹ãŒå±žã™ã‚‹ãƒ‘ッケージ)ãŒ\fI@serial include\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ãªã„ã‹ãŽã‚Šã€é™¤å¤–ã•ã‚Œã¾ã™ã€‚
+.RE
+.sp
+ãŸã¨ãˆã°ã€\fIjavax\&.swing\fRパッケージã¯package\&.htmlã¾ãŸã¯package\-info\&.java内ã§\fI@serial\fR
+\fIexclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚publicクラス\fIjava\&.security\&.BasicPermission\fRã¯\fI@serial exclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚package\-privateクラス\fIjava\&.util\&.PropertyPermissionCollection\fRã¯\fI@serial include\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.sp
+クラス・レベルã®\fI@serial\fRã‚¿ã‚°ã¯ãƒ‘ッケージ・レベルã®\fI@serial\fRタグをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 @serialData \fIdata\-description\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-¥Ç¡¼¥¿¤ÎÀâÌÀÃͤò»ÈÍѤ·¤Æ¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¤Ç¤Î¥Ç¡¼¥¿¤Î·¿¤È½ç½ø¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£¤³¤Î¥Ç¡¼¥¿¤Ë¤Ï¡¢\fIwriteObject\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ½ñ¤­¹þ¤Þ¤ì¤ë¾Êά²Äǽ¤Ê¥Ç¡¼¥¿¡¢¤ª¤è¤Ó\fIExternalizable\&.writeExternal\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ½ñ¤­¹þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Ç¡¼¥¿(¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤ò´Þ¤à)¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
-.sp
-\fI@serialData\fR¥¿¥°¤Ï¡¢\fIwriteObject\fR¡¢\fIreadObject\fR¡¢\fIwriteExternal\fR¡¢\fIreadExternal\fR¡¢\fIwriteReplace\fR¤ª¤è¤Ó\fIreadResolve\fR¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+データã®èª¬æ˜Žå€¤ã‚’使用ã—ã¦ã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã§ã®ãƒ‡ãƒ¼ã‚¿ã®åž‹ã¨é †åºã‚’ドキュメント化ã—ã¾ã™ã€‚ã“ã®ãƒ‡ãƒ¼ã‚¿ã«ã¯ã€\fIwriteObject\fRメソッドã«ã‚ˆã£ã¦æ›¸ãè¾¼ã¾ã‚Œã‚‹çœç•¥å¯èƒ½ãªãƒ‡ãƒ¼ã‚¿ã€ãŠã‚ˆã³\fIExternalizable\&.writeExternal\fRメソッドã«ã‚ˆã£ã¦æ›¸ãè¾¼ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿(ベース・クラスをå«ã‚€)ãŒå«ã¾ã‚Œã¾ã™ã€‚
+.sp
+\fI@serialData\fRã‚¿ã‚°ã¯ã€\fIwriteObject\fRã€\fIreadObject\fRã€\fIwriteExternal\fRã€\fIreadExternal\fRã€\fIwriteReplace\fRãŠã‚ˆã³\fIreadResolve\fRメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 @serialField \fIfield\-name\fR \fIfield\-type\fR \fIfield\-description\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-\fISerializable\fR¥¯¥é¥¹¤Î\fIserialPersistentFields\fR¥á¥ó¥Ð¡¼¤Î\fIObjectStreamField\fR¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£\fIObjectStreamField\fR¥³¥ó¥Ý¡¼¥Í¥ó¥È¤´¤È¤Ë1¤Ä¤Î\fI@serialField\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+\fISerializable\fRクラスã®\fIserialPersistentFields\fRメンãƒãƒ¼ã®\fIObjectStreamField\fRコンãƒãƒ¼ãƒãƒ³ãƒˆã‚’ドキュメント化ã—ã¾ã™ã€‚\fIObjectStreamField\fRコンãƒãƒ¼ãƒãƒ³ãƒˆã”ã¨ã«1ã¤ã®\fI@serialField\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @since \fIsince\-text\fR
 .RS 4
-JDK 1\&.1¤ÇƳÆþ
-.sp
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢»ØÄꤵ¤ì¤¿\fIsince\-text\fR¤ÎÃͤÎ\fI¡ÖƳÆþ¤µ¤ì¤¿¥Ð¡¼¥¸¥ç¥ó¡×\fR¸«½Ð¤·¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ë¤Ï¡¢ÆÃÊ̤ÊÆâÉô¹½Â¤¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢ÆÃÄê¤ÎÊѹ¹¤Þ¤¿¤Ïµ¡Ç½¤¬¡¢\fIsince\-text\fR¤ÎÃͤˤè¤Ã¤Æ»ØÄꤵ¤ì¤¿¥½¥Õ¥È¥¦¥§¥¢¡¦¥ê¥ê¡¼¥¹°Ê¹ß¡¢Â¸ºß¤·¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@since 1\&.5\fR¤Ç¤¹¡£
-.sp
-Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¾ì¹ç¡¢\fI@since\fR¥¿¥°¤Ï¡¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àAPI»ÅÍͤΥС¼¥¸¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤¬¥ê¥Õ¥¡¥ì¥ó¥¹¼ÂÁõ¤ËÄɲ䵤줿»þ´ü¤ò¼¨¤¹¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£Ê£¿ô¤Î\fI@since\fR¥¿¥°¤ò»ÈÍѤǤ­¡¢Ê£¿ô¤Î\fI@author\fR¥¿¥°¤Î¤è¤¦¤Ë°·¤ï¤ì¤Þ¤¹¡£¥×¥í¥°¥é¥àÍ×ÁǤ¬Ê£¿ô¤ÎAPI¤Ç»ÈÍѤµ¤ì¤ë¾ì¹ç¡¢Ê£¿ô¤Î¥¿¥°¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+JDK 1\&.1ã§å°Žå…¥
+.sp
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€æŒ‡å®šã•ã‚ŒãŸ\fIsince\-text\fRã®å€¤ã®\fI「導入ã•ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fR見出ã—を追加ã—ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã«ã¯ã€ç‰¹åˆ¥ãªå†…部構造ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ç‰¹å®šã®å¤‰æ›´ã¾ãŸã¯æ©Ÿèƒ½ãŒã€\fIsince\-text\fRã®å€¤ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ãƒ»ãƒªãƒªãƒ¼ã‚¹ä»¥é™ã€å­˜åœ¨ã—ã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@since 1\&.5\fRã§ã™ã€‚
+.sp
+Javaプラットフォームã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®å ´åˆã€\fI@since\fRã‚¿ã‚°ã¯ã€JavaプラットフォームAPI仕様ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’示ã—ã¾ã™ã€‚ソース・コードãŒãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹å®Ÿè£…ã«è¿½åŠ ã•ã‚ŒãŸæ™‚期を示ã™ã¨ã¯é™ã‚Šã¾ã›ã‚“。複数ã®\fI@since\fRタグを使用ã§ãã€è¤‡æ•°ã®\fI@author\fRã‚¿ã‚°ã®ã‚ˆã†ã«æ‰±ã‚ã‚Œã¾ã™ã€‚プログラムè¦ç´ ãŒè¤‡æ•°ã®APIã§ä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€è¤‡æ•°ã®ã‚¿ã‚°ã‚’使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 @throws \fIclass\-name\fR \fIdescription\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-\fI@exception\fR¥¿¥°¤ÈƱ¤¸Æ°ºî¤ò¤·¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@throws¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@exception)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fI@throws\fR¥¿¥°¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë\fIThrows\fR¾®¸«½Ð¤·¤òÄɲ䷤ơ¢\fIclass\-name\fR¤ª¤è¤Ó\fIdescription\fR¥Æ¥­¥¹¥È¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£\fIclass\-name\fR¤Ï¡¢¤½¤Î¥á¥½¥Ã¥É¤«¤é¥¹¥í¡¼¤µ¤ì¤ë²ÄǽÀ­¤Î¤¢¤ëÎã³°¤Î̾Á°¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£¤³¤Î¥¯¥é¥¹¤¬´°Á´»ØÄê¤Î̾Á°¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡º÷½ç½ø¤Ë½¾¤Ã¤Æ¥¯¥é¥¹¤òõ¤·¤Þ¤¹¡£Ê£¿ô¤Î\fI@throws\fR¥¿¥°¤ò¡¢Æ±¤¸Îã³°¤Þ¤¿¤Ï°ã¤¦Îã³°¤Î»ØÄꤷ¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯ºÑÎã³°¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢\fI@throws\fR¥¿¥°¤¬throwsÀáÆâ¤ÎÎã³°ÍѤ˸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fI@throws\fR¥¿¥°¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¤«¤Î¤è¤¦¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÎã³°¤¬HTML½ÐÎϤËÀâÌÀ¤Ê¤·¤ÇÄɲ䵤ì¤Þ¤¹¡£
-.sp
-¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤ë¥á¥½¥Ã¥ÉÆâ¤ÇÎã³°¤¬ÌÀ¼¨Åª¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Î¤ß¡¢\fI@throws\fR¤Î¥É¥­¥å¥á¥ó¥È¤¬¤½¤Î¥á¥½¥Ã¥É¤«¤é¥µ¥Ö¥¯¥é¥¹¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥á¥½¥Ã¥É¤«¤é¼ÂÁõ¥á¥½¥Ã¥É¤Ë¥³¥Ô¡¼¤µ¤ì¤ë¾ì¹ç¤âƱÍͤǤ¹¡£\fI{@inheritDoc}\fR¥¿¥°¤ò»ÈÍѤ·¤Æ¡¢\fI@throws\fR¥¿¥°¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤ò·Ñ¾µ¤¹¤ë¤è¤¦¤Ë¶¯À©¤Ç¤­¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+\fI@exception\fRã‚¿ã‚°ã¨åŒã˜å‹•ä½œã‚’ã—ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@throwsã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@exception)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fI@throws\fRã‚¿ã‚°ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«\fIThrows\fRå°è¦‹å‡ºã—を追加ã—ã¦ã€\fIclass\-name\fRãŠã‚ˆã³\fIdescription\fRテキストを書ãè¾¼ã¿ã¾ã™ã€‚\fIclass\-name\fRã¯ã€ãã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚¹ãƒ­ãƒ¼ã•ã‚Œã‚‹å¯èƒ½æ€§ã®ã‚る例外ã®åå‰ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãŒå®Œå…¨æŒ‡å®šã®åå‰ã§è¨˜è¿°ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¤œç´¢é †åºã«å¾“ã£ã¦ã‚¯ãƒ©ã‚¹ã‚’探ã—ã¾ã™ã€‚複数ã®\fI@throws\fRã‚¿ã‚°ã‚’ã€åŒã˜ä¾‹å¤–ã¾ãŸã¯é•ã†ä¾‹å¤–ã®æŒ‡å®šã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯æ¸ˆä¾‹å¤–ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚ˆã†ã«ã™ã‚‹ãŸã‚ã«ã€\fI@throws\fRã‚¿ã‚°ãŒthrows節内ã®ä¾‹å¤–用ã«å­˜åœ¨ã—ãªã„å ´åˆã¯ã€\fI@throws\fRã‚¿ã‚°ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚ŒãŸã‹ã®ã‚ˆã†ã«ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ä¾‹å¤–ãŒHTML出力ã«èª¬æ˜Žãªã—ã§è¿½åŠ ã•ã‚Œã¾ã™ã€‚
+.sp
+オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰å†…ã§ä¾‹å¤–ãŒæ˜Žç¤ºçš„ã«å®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã®ã¿ã€\fI@throws\fRã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒãã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚µãƒ–クラスã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚インタフェース・メソッドã‹ã‚‰å®Ÿè£…メソッドã«ã‚³ãƒ”ーã•ã‚Œã‚‹å ´åˆã‚‚åŒæ§˜ã§ã™ã€‚\fI{@inheritDoc}\fRタグを使用ã—ã¦ã€\fI@throws\fRã‚¿ã‚°ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã‚’継承ã™ã‚‹ã‚ˆã†ã«å¼·åˆ¶ã§ãã¾ã™ã€‚
 .RE
 .PP
 {@value \fIpackage\&.class#field\fR}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-Äê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£\fI{@value}\fR¥¿¥°¤¬ÀÅŪ¥Õ¥£¡¼¥ë¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç°ú¿ô¤Ê¤·¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎÄê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+定数ã®å€¤ã‚’表示ã—ã¾ã™ã€‚\fI{@value}\fRã‚¿ã‚°ãŒé™çš„フィールドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§å¼•æ•°ãªã—ã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãã®å®šæ•°ã®å€¤ã‚’表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2052,7 +2052,7 @@
 .if n \{\
 .RE
 .\}
-Ǥ°Õ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç°ú¿ô\fIpackage\&.class#field\fR¤¢¤ê¤Ç»ÈÍѤµ¤ì¤¿¾ì¹ç¡¢\fI{@value}\fR¥¿¥°¤Ï»ØÄꤵ¤ì¤¿Äê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£
+ä»»æ„ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§å¼•æ•°\fIpackage\&.class#field\fRã‚ã‚Šã§ä½¿ç”¨ã•ã‚ŒãŸå ´åˆã€\fI{@value}\fRã‚¿ã‚°ã¯æŒ‡å®šã•ã‚ŒãŸå®šæ•°ã®å€¤ã‚’表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2066,48 +2066,48 @@
 .if n \{\
 .RE
 .\}
-°ú¿ô\fIpackage\&.class#field\fR¤Ï¡¢\fI@see\fR¥¿¥°°ú¿ô¤ÈƱ°ì¤Î·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥á¥ó¥Ð¡¼¤ÏÀÅŪ¥Õ¥£¡¼¥ë¥É¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-¤³¤ì¤é¤ÎÄê¿ô¤ÎÃͤϡÖÄê¿ô¥Õ¥£¡¼¥ë¥ÉÃÍ¡×
-(http://docs\&.oracle\&.com/javase/8/docs/api/constant\-values\&.html)¤Ë¤âɽ¼¨¤µ¤ì¤Þ¤¹
+引数\fIpackage\&.class#field\fRã¯ã€\fI@see\fRタグ引数ã¨åŒä¸€ã®å½¢å¼ã«ãªã‚Šã¾ã™ã€‚ãŸã ã—ã€ãƒ¡ãƒ³ãƒãƒ¼ã¯é™çš„フィールドã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+ã“れらã®å®šæ•°ã®å€¤ã¯ã€Œå®šæ•°ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å€¤ã€
+(http://docs\&.oracle\&.com/javase/8/docs/api/constant\-values\&.html)ã«ã‚‚表示ã•ã‚Œã¾ã™
 .RE
 .PP
 @version \fIversion\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI\-version\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë\fI¡Ö¥Ð¡¼¥¸¥ç¥ó¡×\fR¾®¸«½Ð¤·¤òÄɲ䷤ơ¢»ØÄꤵ¤ì¤¿\fIversion\-text\fR¤ÎÃͤò½ñ¤­¹þ¤ß¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¤³¤Î¥³¡¼¥É¤¬´Þ¤Þ¤ì¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¸½ºß¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤òÊÝ»ý¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¤Î¤ËÂФ·¡¢\fI@since\fR¥¿¥°¤Ï¡¢¤³¤Î¥³¡¼¥É¤¬Æ³Æþ¤µ¤ì¤¿¥ê¥ê¡¼¥¹ÈÖ¹æ¤òÊÝ»ý¤·¤Þ¤¹¡£\fIversion\-text\fR¤ÎÃͤˤϡ¢ÆÃÊ̤ÊÆâÉô¹½Â¤¤Ï¤¢¤ê¤Þ¤»¤ó¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@version¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@version)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËÊ£¿ô¤Î\fI@version\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£É¬Íפ˱þ¤¸¤Æ¡¢1¤Ä¤Î\fI@version\fR¥¿¥°¤Ë1¤Ä¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ê£¿ô¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Á°¼Ô¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ̾Á°¤È̾Á°¤Î´Ö¤Ë¥«¥ó¥Þ(,)¤È¶õÇòʸ»ú¤¬ÁÞÆþ¤µ¤ì¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¤Ï¡¢¥Æ¥­¥¹¥ÈÁ´ÂΤ¬²òÀϤµ¤ì¤ë¤³¤È¤Ê¤¯¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥«¥ó¥Þ¤Ç¤Ï¤Ê¤¯¡¢³Æ¸À¸ì¤ËÂбþ¤·¤¿Ì¾Á°¶èÀÚ¤êʸ»ú¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¡¢1¹Ô¤ËÊ£¿ô¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
-.RE
-.SH "¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê"
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI\-version\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«\fI「ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fRå°è¦‹å‡ºã—を追加ã—ã¦ã€æŒ‡å®šã•ã‚ŒãŸ\fIversion\-text\fRã®å€¤ã‚’書ãè¾¼ã¿ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã“ã®ã‚³ãƒ¼ãƒ‰ãŒå«ã¾ã‚Œã‚‹ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ç¾åœ¨ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’ä¿æŒã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã‚ã‚‹ã®ã«å¯¾ã—ã€\fI@since\fRã‚¿ã‚°ã¯ã€ã“ã®ã‚³ãƒ¼ãƒ‰ãŒå°Žå…¥ã•ã‚ŒãŸãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’ä¿æŒã—ã¾ã™ã€‚\fIversion\-text\fRã®å€¤ã«ã¯ã€ç‰¹åˆ¥ãªå†…部構造ã¯ã‚ã‚Šã¾ã›ã‚“。Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@versionã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@version)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«è¤‡æ•°ã®\fI@version\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚å¿…è¦ã«å¿œã˜ã¦ã€1ã¤ã®\fI@version\fRã‚¿ã‚°ã«1ã¤ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã€è¤‡æ•°ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å‰è€…ã®å ´åˆã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦åå‰ã¨åå‰ã®é–“ã«ã‚«ãƒ³ãƒž(,)ã¨ç©ºç™½æ–‡å­—ãŒæŒ¿å…¥ã•ã‚Œã¾ã™ã€‚後者ã®å ´åˆã¯ã€ãƒ†ã‚­ã‚¹ãƒˆå…¨ä½“ãŒè§£æžã•ã‚Œã‚‹ã“ã¨ãªãã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚«ãƒ³ãƒžã§ã¯ãªãã€å„言語ã«å¯¾å¿œã—ãŸåå‰åŒºåˆ‡ã‚Šæ–‡å­—を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ãã«ã€1è¡Œã«è¤‡æ•°ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚
+.RE
+.SH "タグを使用ã§ãる場所"
 .PP
-¤³¤³¤Ç¤Ï¡¢¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¼¡¤Î¥¿¥°¤¬¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£\fI@see\fR¡¢\fI@since\fR¡¢\fI@deprecated\fR¡¢\fI{@link}\fR¡¢\fI{@linkplain}\fR¤ª¤è¤Ó\fI{@docroot}\fR¡£
-.SS "³µÍ×¥¿¥°"
+ã“ã“ã§ã¯ã€ã‚¿ã‚°ã‚’使用ã§ãる場所ã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚次ã®ã‚¿ã‚°ãŒã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚\fI@see\fRã€\fI@since\fRã€\fI@deprecated\fRã€\fI{@link}\fRã€\fI{@linkplain}\fRãŠã‚ˆã³\fI{@docroot}\fR。
+.SS "概è¦ã‚¿ã‚°"
 .PP
-³µÍ×¥¿¥°¤Ï¡¢³µÍ×¥Ú¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤Ç¤¹(¤³¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢Ä̾ïoverview\&.html¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ê¤Þ¤¹)¡£Â¾¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¾ì¹ç¤ÈƱÍͤˡ¢¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤Ç»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+概è¦ã‚¿ã‚°ã¯ã€æ¦‚è¦ãƒšãƒ¼ã‚¸ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã§ã™(ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€é€šå¸¸overview\&.htmlã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«ã‚ã‚Šã¾ã™)。他ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®å ´åˆã¨åŒæ§˜ã«ã€ã“れらã®ã‚¿ã‚°ã¯ã€ä¸»èª¬æ˜Žã®å¾Œã§ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-Java SE 1\&.2¤Ç¤Ï¡¢³µÍץɥ­¥å¥á¥ó¥ÈÆâ¤Î\fI{@link}\fR¥¿¥°¤ËÉÔ¶ñ¹ç¤¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥È¤ÏÀµ¤·¤¯É½¼¨¤µ¤ì¤Þ¤¹¤¬¡¢¥ê¥ó¥¯¤¬ÀßÄꤵ¤ì¤Þ¤»¤ó¡£¸½ºß¤Î¤È¤³¤í¡¢\fI{@docRoot}\fR¥¿¥°¤Ï¡¢³µÍץɥ­¥å¥á¥ó¥ÈÆâ¤Ç¤Ïµ¡Ç½¤·¤Þ¤»¤ó¡£
+\fB注æ„:\fR
+Java SE 1\&.2ã§ã¯ã€æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã®\fI{@link}\fRã‚¿ã‚°ã«ä¸å…·åˆãŒã‚ã‚Šã¾ã™ã€‚テキストã¯æ­£ã—ã表示ã•ã‚Œã¾ã™ãŒã€ãƒªãƒ³ã‚¯ãŒè¨­å®šã•ã‚Œã¾ã›ã‚“。ç¾åœ¨ã®ã¨ã“ã‚ã€\fI{@docRoot}\fRã‚¿ã‚°ã¯ã€æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。
 .PP
-³µÍ×¥¿¥°¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+概è¦ã‚¿ã‚°ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 @see reference || @since since\-text || @serialField field\-name field\-type field\-description || @author name\-text || @version version\-text || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
-.SS "¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°"
+.SS "パッケージ・タグ"
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤Ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ïpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.java¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤³¤Ç»ÈÍѤǤ­¤ë\fI@serial\fR¥¿¥°¤Ï¡¢\fIinclude\fR¤Þ¤¿¤Ï\fIexclude\fR°ú¿ô¤ò»ØÄꤷ¤¿¤â¤Î¤Î¤ß¤Ç¤¹¡£
+パッケージ・タグã¯ã€ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯package\&.htmlã¾ãŸã¯package\-info\&.javaã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«ã‚ã‚Šã¾ã™ã€‚ã“ã“ã§ä½¿ç”¨ã§ãã‚‹\fI@serial\fRã‚¿ã‚°ã¯ã€\fIinclude\fRã¾ãŸã¯\fIexclude\fR引数を指定ã—ãŸã‚‚ã®ã®ã¿ã§ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+パッケージ・タグã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 @see reference || @since since\-text || @serial field\-description | include | exclude || @author name\-text || @version version\-text || {@linkplain package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
-.SS "¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥¿¥°"
+.SS "クラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ã‚¿ã‚°"
 .PP
-¼¡¤Ë¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤ò¼¨¤·¤Þ¤¹¡£\fI@serial\fR¥¿¥°¤Ï¡¢\fIinclude\fR¤Þ¤¿¤Ï\fIexclude\fR°ú¿ô¤ò»ØÄꤷ¤Æ¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤Ç¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+次ã«ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãるタグを示ã—ã¾ã™ã€‚\fI@serial\fRã‚¿ã‚°ã¯ã€\fIinclude\fRã¾ãŸã¯\fIexclude\fR引数を指定ã—ã¦ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³å†…ã§ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @serial field\-description | include | exclude || @author name\-text || @version version\-text || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
 .PP
-¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤ÎÎã:
+クラス・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2133,13 +2133,13 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Õ¥£¡¼¥ë¥É¡¦¥¿¥°"
+.SS "フィールド・タグ"
 .PP
-¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢¥Õ¥£¡¼¥ë¥É¤Ëɽ¼¨¤Ç¤­¤Þ¤¹¡£
+ã“れらã®ã‚¿ã‚°ã¯ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«è¡¨ç¤ºã§ãã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @serial field\-description | include | exclude || @serialField field\-name field\-type field\-description || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} || {@value package\&.class#field}
 .PP
-¥Õ¥£¡¼¥ë¥É¡¦¥³¥á¥ó¥È¤ÎÎã:
+フィールド・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2155,17 +2155,17 @@
 .if n \{\
 .RE
 .\}
-.SS "¥³¥ó¥¹¥È¥é¥¯¥¿¤È¥á¥½¥Ã¥É¡¦¥¿¥°"
+.SS "コンストラクタã¨ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚¿ã‚°"
 .PP
-¼¡¤Ë¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Þ¤¿¤Ï¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤ò¼¨¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fI@return\fR¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤Ï»ÈÍѤǤ­¤º¡¢
-\fI{@inheritDoc}\fR¤Ë¤ÏÀ©¸Â¤¬¤¢¤ê¤Þ¤¹¡£
+次ã«ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¾ãŸã¯ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãるタグを示ã—ã¾ã™ã€‚ãŸã ã—ã€\fI@return\fRã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã§ã¯ä½¿ç”¨ã§ããšã€
+\fI{@inheritDoc}\fRã«ã¯åˆ¶é™ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @param parameter\-name description || @return description || @throws class\-name description || @exception class\-name description || @serialData data\-description || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@inheritDoc} || {@docRoot}
 .PP
-\fBÃí°Õ:\fR
-\fI@serialData\fR¥¿¥°¤Ï¡¢\fIwriteObject\fR¡¢\fIreadObject\fR¡¢\fIwriteExternal\fR¡¢\fIreadExternal\fR¡¢\fIwriteReplace\fR¤ª¤è¤Ó\fIreadResolve\fR¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI@serialData\fRã‚¿ã‚°ã¯ã€\fIwriteObject\fRã€\fIreadObject\fRã€\fIwriteExternal\fRã€\fIreadExternal\fRã€\fIwriteReplace\fRãŠã‚ˆã³\fIreadResolve\fRメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ÎÎã:
+メソッド・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2189,9 +2189,9 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ½ÐÎϤò·èÄꤷ¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢Ç¤°Õ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤È¤È¤â¤Ë»ÈÍѤǤ­¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc¥ª¥×¥·¥ç¥ó¤ÇÀâÌÀ¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤Î¾¤Ë¡¢¤¤¤¯¤Ä¤«¤ÎÄɲäΥ³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬Ä󶡤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤ÇÀâÌÀ¤·¤Þ¤¹¡£¤É¤Î¥ª¥×¥·¥ç¥ó̾¤â¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’使用ã—ã¦å‡ºåŠ›ã‚’決定ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fI\-doclet\fRオプションã§ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€ä»»æ„ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãるコマンドライン・オプションãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã«ã¤ã„ã¦ã¯ã€Javadocオプションã§èª¬æ˜Žã—ã¾ã™ã€‚標準ドックレットã§ã¯ã€ã“ã®ä»–ã«ã€ã„ãã¤ã‹ã®è¿½åŠ ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒæä¾›ã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã«ã¤ã„ã¦ã¯ã€æ¨™æº–ドックレットã®ã‚ªãƒ—ションã§èª¬æ˜Žã—ã¾ã™ã€‚ã©ã®ã‚ªãƒ—ションåã‚‚ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã ã—ã€ã‚ªãƒ—ションã®å¼•æ•°ã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2201,7 +2201,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+Javadocオプションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -2212,45 +2212,45 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+標準ドックレットã®ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
-¥ª¥×¥·¥ç¥ó¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+オプションã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 \-1\&.1 || \-author || \-bootclasspath classpathlist || \-bottom text || \-breakiterator || \-charset name || \-classpath classpathlist || \-d directory || \-docencoding name || \-docfilesubdirs || \-doclet class || \-docletpath classpathlist || \-doctitle title || \-encoding || \-exclude packagename1:packagename2:\&.\&.\&. || \-excludedocfilessubdir name1:name2 || \-extdirs dirist || \-footer footer || \-group groupheading packagepattern:packagepattern || \-header header || \-help || \-helpfile path\efilename || \-Jflag || \-keywords || \-link extdocURL || \-linkoffline extdocURL packagelistLoc || \-linksource || \-locale language_country_variant || \-nocomment || \-nodeprecated || \-nodeprecatedlist || \-nohelp || \-noindex || \-nonavbar || \-noqualifier all | packagename1:packagename2\&.\&.\&. || \-nosince || \-notimestamp || \-notree ||
 \fI\-overview path/filename || \fR\-package || \-private || \-protected || \-public || \-quiet || \-serialwarn || \-source release || \-sourcepath sourcepathlist || \-sourcetab tablength || \-splitindex ||
 \fI\-stylesheet path/filename || \fR\-subpackages package1:package2:\&.\&.\&. || \-tag tagname:Xaoptcmf:"taghead" || \-taglet class || \-tagletpath tagletpathlist || \-title title || \-top || \-use || \-verbose || \-version || \-windowtitle title
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤Ë»ÈÍѲÄǽ¤Ê¥³¥¢¤ÎJavadoc¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤Î¾¤ÎÉôʬ¤òÄ󶡤·¤Þ¤¹¡£\fI\-bootclasspath\fR¡¢\fI\-breakiterator\fR¡¢\fI\-classpath\fR¡¢\fI\-doclet\fR¡¢\fI\-docletpath\fR¡¢\fI\-encoding\fR¡¢\-\fIexclude\fR¡¢\fI\-extdirs\fR¡¢\fI\-help\fR¡¢\fI\-locale\fR¡¢\fI\-\fR\fIoverview\fR¡¢\fI\-package\fR¡¢\fI\-private\fR¡¢\fI\-protected\fR¡¢\fI\-public\fR¡¢\fI\-quiet\fR¡¢\fI\-source\fR¡¢\fI\-sourcepath\fR¡¢\fI\-subpackages\fR¤ª¤è¤Ó\fI\-verbose\fR¡£
-.SS "Javadoc¥ª¥×¥·¥ç¥ó"
+次ã®ã‚ªãƒ—ションã¯ã€ã™ã¹ã¦ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ä½¿ç”¨å¯èƒ½ãªã‚³ã‚¢ã®Javadocオプションã§ã™ã€‚標準ドックレットã§ã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã®ä»–ã®éƒ¨åˆ†ã‚’æä¾›ã—ã¾ã™ã€‚\fI\-bootclasspath\fRã€\fI\-breakiterator\fRã€\fI\-classpath\fRã€\fI\-doclet\fRã€\fI\-docletpath\fRã€\fI\-encoding\fRã€\-\fIexclude\fRã€\fI\-extdirs\fRã€\fI\-help\fRã€\fI\-locale\fRã€\fI\-\fR\fIoverview\fRã€\fI\-package\fRã€\fI\-private\fRã€\fI\-protected\fRã€\fI\-public\fRã€\fI\-quiet\fRã€\fI\-source\fRã€\fI\-sourcepath\fRã€\fI\-subpackages\fRãŠã‚ˆã³\fI\-verbose\fR。
+.SS "Javadocオプション"
 .PP
 \-overview \fIpath/filename \fR
 .RS 4
 
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢\fIpath/filename \fR¤Ç»ØÄꤵ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é³µÍץɥ­¥å¥á¥ó¥ÈÍѤΥƥ­¥¹¥È¤ò¼èÆÀ¤·¡¢¤½¤Î¥Æ¥­¥¹¥È¤ò³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¤ËÇÛÃÖ¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£\fIpath/filename\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£
-.sp
-\fIfilename\fR¤ÎÃͤÇǤ°Õ¤Î̾Á°¤ò»ÈÍѤ·¡¢path¤ÇǤ°Õ¤ÎÇÛÃÖÀè¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢Ä̾ï¤Ïoverview\&.html¤È¤¤¤¦Ì¾Á°¤òÉÕ¤±¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤ÎºÇ¾å°Ì¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¤³¤Î¾ì½ê¤ËÇÛÃÖ¤¹¤ë¤È¡¢¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤È¤­¤Ëpath¤ò»ØÄꤹ¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤¬»Ø¤·¼¨¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.lang\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤¬/src/classes/java/lang/¤Î¾ì¹ç¡¢³µÍ×¥Õ¥¡¥¤¥ë¤ò/src/classes/overview\&.html¤ËÇÛÃ֤Ǥ­¤Þ¤¹
-.sp
-¼ÂºÝ¤ÎÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fIpath/filename\fR¤Ç»ØÄꤹ¤ë¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤Ï¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-³µÍ×¥Ú¡¼¥¸¤¬ºîÀ®¤µ¤ì¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢HTML¥Õ¥ì¡¼¥à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£³µÍ×¥Ú¡¼¥¸¤Î¥¿¥¤¥È¥ë¤Ï¡¢\fI\-doctitle\fR¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã«å¯¾ã—ã¦ã€\fIpath/filename \fRã§æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã€ãã®ãƒ†ã‚­ã‚¹ãƒˆã‚’概è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)ã«é…ç½®ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚\fIpath/filename\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã§ã™ã€‚
+.sp
+\fIfilename\fRã®å€¤ã§ä»»æ„ã®åå‰ã‚’使用ã—ã€pathã§ä»»æ„ã®é…置先を指定ã§ãã¾ã™ãŒã€é€šå¸¸ã¯overview\&.htmlã¨ã„ã†åå‰ã‚’付ã‘ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã®æœ€ä¸Šä½ãƒ‘ッケージ・ディレクトリをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«é…ç½®ã—ã¾ã™ã€‚ã“ã®å ´æ‰€ã«é…ç½®ã™ã‚‹ã¨ã€ãƒ‘ッケージをドキュメント化ã™ã‚‹ã¨ãã«pathを指定ã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-sourcepath\fRオプションã«ã‚ˆã£ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡ã—示ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIjava\&.lang\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーãŒ/src/classes/java/lang/ã®å ´åˆã€æ¦‚è¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚’/src/classes/overview\&.htmlã«é…ç½®ã§ãã¾ã™
+.sp
+実際ã®ä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fIpath/filename\fRã§æŒ‡å®šã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã¯ã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+概è¦ãƒšãƒ¼ã‚¸ãŒä½œæˆã•ã‚Œã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«è¤‡æ•°ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚詳細ã¯ã€HTMLフレームをå‚ç…§ã—ã¦ãã ã•ã„。概è¦ãƒšãƒ¼ã‚¸ã®ã‚¿ã‚¤ãƒˆãƒ«ã¯ã€\fI\-doctitle\fRã«ã‚ˆã£ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:(all|none|[\-]\fI<group>\fR)
 .RS 4
-ÉÔÀµ¤Ê»²¾È¡¢¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¤Î·çÍ¤è¤ÓJavadoc¥³¥á¥ó¥È¤ÎÉÔ­¤Î·Ù¹ð¤ò¥ì¥Ý¡¼¥È¤·¡¢Ìµ¸ú¤ÊJavadoc¹½Ê¸¤ª¤è¤ÓÉÔ­¤·¤Æ¤¤¤ëHTML¥¿¥°¤Î¥¨¥é¡¼¤ò¥ì¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏÀ¸À®¤µ¤ì¤¿½ÐÎϤ˴ޤޤì¤ë¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È¡¦¥³¥á¥ó¥È¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£Ä̾ï¤É¤ª¤ê¡¢É¸½à¥ª¥×¥·¥ç¥ó\fI\-public\fR¡¢\fI\-protected\fR¡¢\fI\-package\fR¤ª¤è¤Ó\fI\-private\fR¤ÇÀ¸À®¤µ¤ì¤¿½ÐÎϤ˴ޤà¹àÌܤòÁªÂò¤Ç¤­¤Þ¤¹¡£
-.sp
-\fI\-Xdoclint\fR¤¬Í­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤ÈƱÍͤ˥á¥Ã¥»¡¼¥¸¤ÇÌäÂ꤬¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥á¥Ã¥»¡¼¥¸¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤ª¤è¤Ó¥¨¥é¡¼¤¬¸¡½Ð¤µ¤ì¤¿Àµ³Î¤Ê°ÌÃÖ¤ò»Ø¤¹¥­¥ã¥ì¥Ã¥È¤ò½ÐÎϤ·¤Þ¤¹¡£¥á¥Ã¥»¡¼¥¸¤Ï¡¢½ÅÂçÅÙ¡¢¤ª¤è¤ÓÀ¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¬¥Ð¥ê¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Æ¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¤Ë¥¨¥é¡¼¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤Ë±þ¤¸¤Æ¡¢·Ù¹ð¤Þ¤¿¤Ï¥¨¥é¡¼¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ÉÔÀµ¤Ê»²¾È¤Þ¤¿¤ÏJavadoc¥³¥á¥ó¥È¤Î·çÍî¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ìµ¸ú¤ÊHTML¤òÀ¸À®¤¹¤ë¸¶°ø¤Ë¤Ê¤é¤Ê¤¤¤¿¤á¡¢¤³¤ì¤é¤ÎÌäÂê¤Ï·Ù¹ð¤È¤·¤Æ¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£¹½Ê¸¥¨¥é¡¼¤Þ¤¿¤ÏHTML½ªÎ»¥¿¥°¤Î·çÍî¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ìµ¸ú¤ÊHTML¤òÀ¸À®¤¹¤ë¸¶°ø¤Ë¤Ê¤ë¤¿¤á¡¢¤³¤ì¤é¤ÎÌäÂê¤Ï¥¨¥é¡¼¤È¤·¤Æ¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£
-.sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó\fI\-Xdoclint:none\fR¤Ç̵¸ú¤Ë¤·¤Þ¤¹¡£
-.sp
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤Ç¥ì¥Ý¡¼¥È¤µ¤ì¤ëÆâÍƤϼ¡¤Î¥ª¥×¥·¥ç¥ó¤ÇÊѹ¹¤·¤Þ¤¹¡£
+ä¸æ­£ãªå‚ç…§ã€ã‚¢ã‚¯ã‚»ã‚·ãƒ“リティã®æ¬ è½ãŠã‚ˆã³Javadocコメントã®ä¸è¶³ã®è­¦å‘Šã‚’レãƒãƒ¼ãƒˆã—ã€ç„¡åŠ¹ãªJavadoc構文ãŠã‚ˆã³ä¸è¶³ã—ã¦ã„ã‚‹HTMLã‚¿ã‚°ã®ã‚¨ãƒ©ãƒ¼ã‚’レãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.sp
+ã“ã®ã‚ªãƒ—ションã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ç”Ÿæˆã•ã‚ŒãŸå‡ºåŠ›ã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚通常ã©ãŠã‚Šã€æ¨™æº–オプション\fI\-public\fRã€\fI\-protected\fRã€\fI\-package\fRãŠã‚ˆã³\fI\-private\fRã§ç”Ÿæˆã•ã‚ŒãŸå‡ºåŠ›ã«å«ã‚€é …目をé¸æŠžã§ãã¾ã™ã€‚
+.sp
+\fI\-Xdoclint\fRãŒæœ‰åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆã¯ã€\fIjavac\fRコマンドã¨åŒæ§˜ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã§å•é¡ŒãŒãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ”ーãŠã‚ˆã³ã‚¨ãƒ©ãƒ¼ãŒæ¤œå‡ºã•ã‚ŒãŸæ­£ç¢ºãªä½ç½®ã‚’指ã™ã‚­ãƒ£ãƒ¬ãƒƒãƒˆã‚’出力ã—ã¾ã™ã€‚メッセージã¯ã€é‡å¤§åº¦ã€ãŠã‚ˆã³ç”Ÿæˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒãƒãƒªãƒ‡ãƒ¼ã‚¿ã‚’使用ã—ã¦å®Ÿè¡Œã•ã‚ŒãŸå ´åˆã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ã«å¿œã˜ã¦ã€è­¦å‘Šã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ä¸æ­£ãªå‚ç…§ã¾ãŸã¯Javadocコメントã®æ¬ è½ã¯ã€\fIjavadoc\fRコマンドãŒç„¡åŠ¹ãªHTMLを生æˆã™ã‚‹åŽŸå› ã«ãªã‚‰ãªã„ãŸã‚ã€ã“れらã®å•é¡Œã¯è­¦å‘Šã¨ã—ã¦ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚構文エラーã¾ãŸã¯HTML終了タグã®æ¬ è½ã¯ã€\fIjavadoc\fRコマンドãŒç„¡åŠ¹ãªHTMLを生æˆã™ã‚‹åŽŸå› ã«ãªã‚‹ãŸã‚ã€ã“れらã®å•é¡Œã¯ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚
+.sp
+デフォルトã§ã¯ã€\fI\-Xdoclint\fRオプションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚オプション\fI\-Xdoclint:none\fRã§ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
+.sp
+\fI\-Xdoclint\fRオプションã§ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã‚‹å†…容ã¯æ¬¡ã®ã‚ªãƒ—ションã§å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2261,7 +2261,7 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI none\fR:
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+\fI\-Xdoclint\fRオプションを無効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2273,7 +2273,7 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI \fR\fIgroup\fR:
-\fIgroup\fR¥Á¥§¥Ã¥¯¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+\fIgroup\fRãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2284,7 +2284,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-Xdoclint\fR\fI\fR\fI all\fR: ¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+\fI\-Xdoclint\fR\fI\fR\fI all\fR: ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2296,10 +2296,10 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI all,\fR\fI\-group\fR:
-\fIgroup\fR¥Á¥§¥Ã¥¯°Ê³°¤Î¤¹¤Ù¤Æ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
-.RE
-.sp
-ÊÑ¿ô\fIgroup\fR¤Ï¼¡¤Î¤¤¤º¤ì¤«¤ÎÃͤò»ý¤Á¤Þ¤¹¡£
+\fIgroup\fRãƒã‚§ãƒƒã‚¯ä»¥å¤–ã®ã™ã¹ã¦ã‚’有効ã«ã—ã¾ã™ã€‚
+.RE
+.sp
+変数\fIgroup\fRã¯æ¬¡ã®ã„ãšã‚Œã‹ã®å€¤ã‚’æŒã¡ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2309,7 +2309,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIaccessibility\fR: ¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¡¦¥Á¥§¥Ã¥«¤Ç¸¡½Ð¤¹¤ëÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢\fI<table>\fR¥¿¥°¤Ç»ØÄꤵ¤ì¤ëno caption¤Þ¤¿¤Ïsummary°À­)¡£
+\fIaccessibility\fR: アクセシビリティ・ãƒã‚§ãƒƒã‚«ã§æ¤œå‡ºã™ã‚‹å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€\fI<table>\fRã‚¿ã‚°ã§æŒ‡å®šã•ã‚Œã‚‹no captionã¾ãŸã¯summary属性)。
 .RE
 .sp
 .RS 4
@@ -2320,7 +2320,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIhtml\fR: ¥¤¥ó¥é¥¤¥óÍ×ÁǤؤΥ֥í¥Ã¥¯Í×ÁǤÎÁÞÆþ¤ä½ªÎ»¥¿¥°¤òɬÍפȤ¹¤ëÍ×ÁǤò½ªÎ»¤·¤Ê¤¤¤Ê¤É¡¢¾å°Ì¥ì¥Ù¥ëHTML¤ÎÌäÂê¤ò¸¡½Ð¤·¤Þ¤¹¡£¥ë¡¼¥ë¤Ï¡¢HTML 4\&.01»ÅÍͤ«¤éƳ½Ð¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¿¥¤¥×¤Î¥Á¥§¥Ã¥¯¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥Ö¥é¥¦¥¶¤¬¼õ¤±Æþ¤ì¤ë²ÄǽÀ­¤Î¤¢¤ëHTML¤ÎÌäÂê¤ò¸¡½Ð¤·¤Þ¤¹¡£
+\fIhtml\fR: インラインè¦ç´ ã¸ã®ãƒ–ロックè¦ç´ ã®æŒ¿å…¥ã‚„終了タグを必è¦ã¨ã™ã‚‹è¦ç´ ã‚’終了ã—ãªã„ãªã©ã€ä¸Šä½ãƒ¬ãƒ™ãƒ«HTMLã®å•é¡Œã‚’検出ã—ã¾ã™ã€‚ルールã¯ã€HTML 4\&.01仕様ã‹ã‚‰å°Žå‡ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒ—ã®ãƒã‚§ãƒƒã‚¯ã¯ã€\fIjavadoc\fRコマンドを有効ã«ã—ã¦ã€ãƒ–ラウザãŒå—ã‘入れるå¯èƒ½æ€§ã®ã‚ã‚‹HTMLã®å•é¡Œã‚’検出ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2331,7 +2331,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fImissing\fR: ·çÍ¤Æ¤¤¤ëJavadoc¥³¥á¥ó¥È¤Þ¤¿¤Ï¥¿¥°¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢·çÍ¤Æ¤¤¤ë¥³¥á¥ó¥È¤ä¥¯¥é¥¹¡¢¤Þ¤¿¤Ï·çÍ¤Æ¤¤¤ë\fI@return\fR¥¿¥°¤ä¥á¥½¥Ã¥É¾å¤ÎƱÍͤΥ¿¥°)¡£
+\fImissing\fR: 欠è½ã—ã¦ã„ã‚‹Javadocコメントã¾ãŸã¯ã‚¿ã‚°ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€æ¬ è½ã—ã¦ã„るコメントやクラスã€ã¾ãŸã¯æ¬ è½ã—ã¦ã„ã‚‹\fI@return\fRタグやメソッド上ã®åŒæ§˜ã®ã‚¿ã‚°)。
 .RE
 .sp
 .RS 4
@@ -2342,7 +2342,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIreference\fR: Javadoc¥¿¥°¤ÎJava APIÍ×ÁǤλ²¾È¤Ë´ØÏ¢¤¹¤ëÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢\fI@see\fR¤Ç¸«¤Ä¤«¤é¤Ê¤¤¹àÌÜ¡¢¤Þ¤¿¤Ï\fI@param\fR¤Î¸å¤ÎÉÔÀµ¤Ê̾Á°)¡£
+\fIreference\fR: Javadocã‚¿ã‚°ã®Java APIè¦ç´ ã®å‚ç…§ã«é–¢é€£ã™ã‚‹å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€\fI@see\fRã§è¦‹ã¤ã‹ã‚‰ãªã„é …ç›®ã€ã¾ãŸã¯\fI@param\fRã®å¾Œã®ä¸æ­£ãªåå‰)。
 .RE
 .sp
 .RS 4
@@ -2353,10 +2353,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIsyntax\fR: ¥¨¥¹¥±¡¼¥×¤µ¤ì¤Æ¤¤¤Ê¤¤»³¥«¥Ã¥³(\fI<\fR¤ª¤è¤Ó\fI>\fR)¤ä¥¢¥ó¥Ñ¥µ¥ó¥É(\fI&\fR)¡¢Ìµ¸ú¤ÊJavadoc¥¿¥°¤Ê¤É¤Î²¼°Ì¥ì¥Ù¥ë¤ÎÌäÂê¤ò³Îǧ¤·¤Þ¤¹¡£
-.RE
-.sp
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄꤷ¤Æ¡¢Ê£¿ô¤Î¥«¥Æ¥´¥ê¤Î¥¨¥é¡¼¤È·Ù¹ð¤ò¥Á¥§¥Ã¥¯¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢Á°¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¥«¥Æ¥´¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Î¤¤¤º¤ì¤«¤ò»ÈÍѤ·¤Æ¡¢\fIfilename\fR¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¡¢¹½Ê¸¤ª¤è¤Ó¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¤ÎÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
+\fIsyntax\fR: エスケープã•ã‚Œã¦ã„ãªã„山カッコ(\fI<\fRãŠã‚ˆã³\fI>\fR)やアンパサンド(\fI&\fR)ã€ç„¡åŠ¹ãªJavadocã‚¿ã‚°ãªã©ã®ä¸‹ä½ãƒ¬ãƒ™ãƒ«ã®å•é¡Œã‚’確èªã—ã¾ã™ã€‚
+.RE
+.sp
+\fI\-Xdoclint\fRオプションを複数回指定ã—ã¦ã€è¤‡æ•°ã®ã‚«ãƒ†ã‚´ãƒªã®ã‚¨ãƒ©ãƒ¼ã¨è­¦å‘Šã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã§ãã¾ã™ã€‚ã¾ãŸã¯ã€å‰ã®ã‚ªãƒ—ションを使用ã—ã¦ã€è¤‡æ•°ã®ã‚¨ãƒ©ãƒ¼ãŠã‚ˆã³è­¦å‘Šã‚«ãƒ†ã‚´ãƒªã‚’指定ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã®ã„ãšã‚Œã‹ã‚’使用ã—ã¦ã€\fIfilename\fRファイル内ã®HTMLã€æ§‹æ–‡ãŠã‚ˆã³ã‚¢ã‚¯ã‚»ã‚·ãƒ“リティã®å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2368,57 +2368,57 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤ì¤é¤Î¥Á¥§¥Ã¥¯¤Î´°Á´À­¤ÏÊݾڤµ¤ì¤Þ¤»¤ó¡£¶ñÂÎŪ¤Ë¤Ï¡¢´°Á´¤ÊHTML¥³¥ó¥×¥é¥¤¥¢¥ó¥¹¡¦¥Á¥§¥Ã¥«¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\-\fIXdoclint\fR¥ª¥×¥·¥ç¥ó¤ÎÌÜŪ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÍ­¸ú¤Ë¤·¤Æ°ìÈÌŪ¤Ê¥¨¥é¡¼¤ÎÂçȾ¤ò¥ì¥Ý¡¼¥È¤¹¤ë¤³¤È¤Ç¤¹¡£
-.sp
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Ìµ¸ú¤ÊÆþÎϤν¤Àµ¤ò»î¹Ô¤»¤º¡¢¥ì¥Ý¡¼¥È¤Î¤ß¹Ô¤¤¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIjavadoc\fRコマンドã§ã¯ã€ã“れらã®ãƒã‚§ãƒƒã‚¯ã®å®Œå…¨æ€§ã¯ä¿è¨¼ã•ã‚Œã¾ã›ã‚“。具体的ã«ã¯ã€å®Œå…¨ãªHTMLコンプライアンス・ãƒã‚§ãƒƒã‚«ã§ã¯ã‚ã‚Šã¾ã›ã‚“。\-\fIXdoclint\fRオプションã®ç›®çš„ã¯ã€\fIjavadoc\fRコマンドを有効ã«ã—ã¦ä¸€èˆ¬çš„ãªã‚¨ãƒ©ãƒ¼ã®å¤§åŠã‚’レãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã§ã™ã€‚
+.sp
+\fIjavadoc\fRコマンドã¯ã€ç„¡åŠ¹ãªå…¥åŠ›ã®ä¿®æ­£ã‚’試行ã›ãšã€ãƒ¬ãƒãƒ¼ãƒˆã®ã¿è¡Œã„ã¾ã™ã€‚
 .RE
 .PP
 \-public
 .RS 4
-public¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+publicクラスãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-protected¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ß¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+protectedãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿ã‚’表示ã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-package
 .RS 4
-package¡¢protected¡¢¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+packageã€protectedã€ãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-private
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥ª¥ó¥é¥¤¥ó¡¦¥Ø¥ë¥×¤òɽ¼¨¤·¤Þ¤¹¡£\fIjavadoc\fR¤È\fI¥É¥Ã¥¯¥ì¥Ã¥È\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬¥ê¥¹¥È¤µ¤ì¤Þ¤¹¡£
+オンライン・ヘルプを表示ã—ã¾ã™ã€‚\fIjavadoc\fRã¨\fIドックレット\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒãƒªã‚¹ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-doclet \fIclass\fR
 .RS 4
-¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤òµ¯Æ°¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£´°Á´½¤¾þ̾¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤Ë¤è¤ê¡¢½ÐÎϤÎÆâÍƤȷÁ¼°¤¬ÄêµÁ¤µ¤ì¤Þ¤¹¡£\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¥Ç¥Õ¥©¥ë¥È¤ÎHTML·Á¼°¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤Ë¤Ï\fIstart(Root)\fR¥á¥½¥Ã¥É¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Îµ¯Æ°¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤Ï\fI\-docletpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+ドキュメントã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚完全修飾åを使用ã—ã¾ã™ã€‚ã“ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ã‚ˆã‚Šã€å‡ºåŠ›ã®å†…容ã¨å½¢å¼ãŒå®šç¾©ã•ã‚Œã¾ã™ã€‚\fI\-doclet\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¨™æº–ドックレットを使用ã—ã¦ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®HTMLå½¢å¼ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ã«ã¯\fIstart(Root)\fRメソッドãŒå«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®èµ·å‹•ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スã¯\fI\-docletpath\fRオプションã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚ドックレットã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-docletpath \fIclasspathlist\fR
 .RS 4
-\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥É¥Ã¥¯¥ì¥Ã¥È³«»Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¤½¤Î¥¯¥é¥¹¤¬°Í¸¤¹¤ë¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£³«»Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÇJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ÀäÂХѥ¹¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIclasspathlist\fR¤ËÊ£¿ô¤Î¥Ñ¥¹¤äJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤é¤òSolaris¤Î¾ì¹ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó(;)¤Ç¤½¤ì¤¾¤ì¶èÀÚ¤ê¤Þ¤¹¡£ÌÜŪ¤Î¥É¥Ã¥¯¥ì¥Ã¥È³«»Ï¥¯¥é¥¹¤¬¤¹¤Ç¤Ë¸¡º÷¥Ñ¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fI\-doclet\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆé–‹å§‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãŠã‚ˆã³ãã®ã‚¯ãƒ©ã‚¹ãŒä¾å­˜ã™ã‚‹ã™ã¹ã¦ã®JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚開始クラス・ファイルãŒJARファイル内ã«ã‚ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã§JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚絶対パスã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スを指定ã§ãã¾ã™ã€‚\fIclasspathlist\fRã«è¤‡æ•°ã®ãƒ‘スやJARファイルãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã¯ã€ãれらをSolarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§ãã‚Œãžã‚ŒåŒºåˆ‡ã‚Šã¾ã™ã€‚目的ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆé–‹å§‹ã‚¯ãƒ©ã‚¹ãŒã™ã§ã«æ¤œç´¢ãƒ‘ス内ã«ã‚ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚ドックレットã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-1\&.1
 .RS 4
-Javadoc 1\&.4¤«¤éºï½ü¤µ¤ì¡¢ÂåÂؤϤ¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Javadoc 1\&.1¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¤Î¤ÈƱ¤¸³°¸«¤Èµ¡Ç½¤ò»ý¤Ä¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤·¤¿(¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó)¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬É¬Íפʾì¹ç¤Ï¡¢Javadoc 1\&.2¤Þ¤¿¤Ï1\&.3¤ò¤«¤ï¤ê¤Ë»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+Javadoc 1\&.4ã‹ã‚‰å‰Šé™¤ã•ã‚Œã€ä»£æ›¿ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€Javadoc 1\&.1ã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ã®ã¨åŒã˜å¤–見ã¨æ©Ÿèƒ½ã‚’æŒã¤ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’作æˆã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã—ãŸ(ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“)。ã“ã®ã‚ªãƒ—ションãŒå¿…è¦ãªå ´åˆã¯ã€Javadoc 1\&.2ã¾ãŸã¯1\&.3ã‚’ã‹ã‚ã‚Šã«ä½¿ç”¨ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-source \fIrelease\fR
 .RS 4
-¼õ¤±ÉÕ¤±¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥ê¥ê¡¼¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fIrelease\fR¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¼¡¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤ëÃͤËÂбþ¤¹¤ë\fI¥ê¥ê¡¼¥¹\fR¤ÎÃͤò»ÈÍѤ·¤Þ¤¹¡£
+å—ã‘付ã‘るソース・コードã®ãƒªãƒªãƒ¼ã‚¹ã‚’指定ã—ã¾ã™ã€‚\fIrelease\fRパラメータã«ã¯æ¬¡ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚\fIjavac\fRコマンドã§ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã™ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹å€¤ã«å¯¾å¿œã™ã‚‹\fIリリース\fRã®å€¤ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2428,7 +2428,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.5\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.5¤ÇƳÆþ¤µ¤ì¤¿Áí¾Î¤ª¤è¤Ó¾¤Î¸À¸ìµ¡Ç½¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Î¥³¥ó¥Ñ¥¤¥é¤Î¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤Ï¡¢1\&.5¤Î¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBリリース値: 1\&.5\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.5ã§å°Žå…¥ã•ã‚ŒãŸç·ç§°ãŠã‚ˆã³ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚\fI\-source\fRオプションãŒä½¿ç”¨ã•ã‚Œãªã‹ã£ãŸå ´åˆã®ã‚³ãƒ³ãƒ‘イラã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå‹•ä½œã¯ã€1\&.5ã®ã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2439,7 +2439,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.4\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.4¤ÇƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+\fBリリース値: 1\&.4\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.4ã§å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2450,20 +2450,20 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.3\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.3°Ê¹ß¤ËƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¡¢Áí¾Î¡¢¤Þ¤¿¤Ï¾¤Î¸À¸ìµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó¡£
+\fBリリース値: 1\&.3\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.3以é™ã«å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã€ç·ç§°ã€ã¾ãŸã¯ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¾ã›ã‚“。
 .RE
 .RE
 .PP
 \-sourcepath \fIsourcepathlist\fR
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤È¤­¤Ë¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸«¤Ä¤±¤ë¤¿¤á¤Î¸¡º÷¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
-\fIÊ£¿ô¤Î¥Ñ¥¹¤Ï¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fR\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ΤߤǤʤ¯¡¢¤½¤ì¼«ÂΤϥɥ­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é·Ñ¾µ¤µ¤ì¤¿¥³¥á¥ó¥È¤ò»ý¤Ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤â³Îǧ¤Ç¤­¤Þ¤¹¡£
-.sp
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¸¡º÷¤µ¤ì¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÆÃÄꤹ¤ë¤Ë¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤¹¤ë¤«¡¢¡Ö1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½¡×¤Ë¼¨¤¹¤è¤¦¤Ë³Æ¥Õ¥¡¥¤¥ë¤ÎÁ°¤Ë¥Ñ¥¹¤ò´Þ¤á¤Þ¤¹¡£\fI\-sourcepath\fR¤¬¾Êά¤µ¤ì¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ò»ÈÍѤ·¤Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹(\fI\-classpath\fR¤ò»²¾È)¡£¥Ç¥Õ¥©¥ë¥È¤Î\fI\-sourcepath\fR¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÃͤǤ¹¡£\fI\-classpath\fR¤ò¾Êά¤·¤Æ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê)¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£
-.sp
-\fIsourcepathlist\fR¤Ë¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.mypackage\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ë¡¢¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬/home/user/src/com/mypackage/*\&.java¤Ë¤¢¤ë¤È¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Ñ¥¹¤òcom\emypackage¤¬´Þ¤Þ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê/home/user/src¤Ë»ØÄꤷ¤Æ¤«¤é¡¢¼¡¤Î¤è¤¦¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+パッケージåã¾ãŸã¯\fI\-subpackages\fRオプションを\fIjavadoc\fRコマンドã«æ¸¡ã™ã¨ãã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’見ã¤ã‘ã‚‹ãŸã‚ã®æ¤œç´¢ãƒ‘スを指定ã—ã¾ã™ã€‚
+\fI複数ã®ãƒ‘スã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fR\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã—ã¦ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã®ã¿ã§ãªãã€ãれ自体ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ç¶™æ‰¿ã•ã‚ŒãŸã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã‚‚確èªã§ãã¾ã™ã€‚
+.sp
+\fI\-sourcepath\fRオプションを使用ã§ãã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«ãƒ‘ッケージåを渡ã™å ´åˆã®ã¿ã§ã™ã€‚\fIjavadoc\fRコマンドã«æ¸¡ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ¤œç´¢ã•ã‚Œã¾ã›ã‚“。ソース・ファイルを特定ã™ã‚‹ã«ã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã™ã‚‹ã‹ã€ã€Œ1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã€ã«ç¤ºã™ã‚ˆã†ã«å„ファイルã®å‰ã«ãƒ‘スをå«ã‚ã¾ã™ã€‚\fI\-sourcepath\fRãŒçœç•¥ã•ã‚ŒãŸå ´åˆã€\fIjavadoc\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スを使用ã—ã¦ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™(\fI\-classpath\fRã‚’å‚ç…§)。デフォルトã®\fI\-sourcepath\fRã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®å€¤ã§ã™ã€‚\fI\-classpath\fRã‚’çœç•¥ã—ã¦ãƒ‘ッケージåã‚’\fIjavadoc\fRコマンドã«æ¸¡ã™ã¨ã€\fIjavadoc\fRコマンドã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(ãŠã‚ˆã³ãã®ã‚µãƒ–ディレクトリ)ã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚
+.sp
+\fIsourcepathlist\fRã«ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ãƒ‘ッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIcom\&.mypackage\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージをドキュメント化ã™ã‚‹å ´åˆã«ã€ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ/home/user/src/com/mypackage/*\&.javaã«ã‚ã‚‹ã¨ã—ã¾ã™ã€‚ソース・パスをcom\emypackageãŒå«ã¾ã‚Œã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª/home/user/srcã«æŒ‡å®šã—ã¦ã‹ã‚‰ã€æ¬¡ã®ã‚ˆã†ã«ã€ãƒ‘ッケージåを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2474,11 +2474,11 @@
 .if n \{\
 .RE
 .\}
-¥½¡¼¥¹¡¦¥Ñ¥¹¤ÎÃͤȥѥ屡¼¥¸Ì¾¤òÏ¢·ë¤·¤Æ¡¢¥É¥Ã¥È¤ò¥¹¥é¥Ã¥·¥å(/)¤ËÊѹ¹¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥Õ¥ë¥Ñ¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
+ソース・パスã®å€¤ã¨ãƒ‘ッケージåを連çµã—ã¦ã€ãƒ‰ãƒƒãƒˆã‚’スラッシュ(/)ã«å¤‰æ›´ã™ã‚‹ã¨ã€æ¬¡ã®ã‚ˆã†ã«ã€ãƒ‘ッケージã®ãƒ•ãƒ«ãƒ‘スã«ãªã‚Šã¾ã™ã€‚
 .sp
 /home/user/src/com/mypackage
 .sp
-2¤Ä¤Î¥½¡¼¥¹¡¦¥Ñ¥¹¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+2ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スを設定ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2493,12 +2493,12 @@
 .PP
 \-classpath \fIclasspathlist\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬»²¾È¥¯¥é¥¹¤Î¸¡º÷¤ò¹Ô¤¦¤È¤­¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£»²¾È¥¯¥é¥¹¤È¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤È¡¢¤½¤ì¤é¤Î¥¯¥é¥¹¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¤³¤È¤Ç¤¹¡£
-\fIÊ£¿ô¤Î¥Ñ¥¹¤Ï¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fR\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£\fIclasspathlist\fR¤ÎÃͤò»ØÄꤹ¤ë¤È¤­¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ë¤¢¤ë»Ø¼¨¤Ë½¾¤Ã¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fI\-sourcepath\fR¤¬¾Êά¤µ¤ì¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï\fI\-classpath\fR¤ò»ÈÍѤ·¤Æ¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹(²¼°Ì¸ß´¹À­¤Î¤¿¤á)¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÊÌ¡¹¤Î¥Ñ¥¹¤«¤é¸¡º÷¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sourcepath\fR¤È\fI\-classpath\fR¤ÎξÊý¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.mypackage\fR¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ë¡¢¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥Ç¥£¥ì¥¯¥È¥ê/home/user/src/com/mypackage¤Ë¤¢¤ê¡¢¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬/home/user/libthenÆâ¤Î¥é¥¤¥Ö¥é¥ê¤Ë°Í¸¤·¤Æ¤¤¤ë¤È¤­¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fIjavadoc\fRコマンドãŒå‚照クラスã®æ¤œç´¢ã‚’è¡Œã†ã¨ãã«ä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚å‚照クラスã¨ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã¨ã€ãれらã®ã‚¯ãƒ©ã‚¹ã«ã‚ˆã£ã¦å‚ç…§ã•ã‚Œã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ã“ã¨ã§ã™ã€‚
+\fI複数ã®ãƒ‘スã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fR\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚\fIclasspathlist\fRã®å€¤ã‚’指定ã™ã‚‹ã¨ãã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚る指示ã«å¾“ã£ã¦ãã ã•ã„。
+.sp
+\fI\-sourcepath\fRãŒçœç•¥ã•ã‚ŒãŸå ´åˆã€\fIjavadoc\fRコマンドã¯\fI\-classpath\fRを使用ã—ã¦ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™(下ä½äº’æ›æ€§ã®ãŸã‚)。ソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’別々ã®ãƒ‘スã‹ã‚‰æ¤œç´¢ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€\fI\-sourcepath\fRã¨\fI\-classpath\fRã®ä¸¡æ–¹ã‚’使用ã—ã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIcom\&.mypackage\fRをドキュメント化ã™ã‚‹å ´åˆã«ã€ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª/home/user/src/com/mypackageã«ã‚ã‚Šã€ã“ã®ãƒ‘ッケージãŒ/home/user/libthen内ã®ãƒ©ã‚¤ãƒ–ラリã«ä¾å­˜ã—ã¦ã„ã‚‹ã¨ãã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2509,21 +2509,21 @@
 .if n \{\
 .RE
 .\}
-¾¤Î¥Ä¡¼¥ë¤ÈƱÍͤˡ¢\fI\-classpath\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î´Ä¶­ÊÑ¿ô¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Á¤é¤âÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¥¯¥é¥¹¤ò¸¡º÷¤·¤Þ¤¹¡£
-.sp
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬\fI\-classpath\fR¤ò»ÈÍѤ·¤Æ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤ò¸¡º÷¤¹¤ëÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¡¢³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ä¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ë´ØÏ¢¤·¤¿¾ÜºÙ¤Ï¡¢¥¯¥é¥¹¤Î¸¡º÷ÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-*¤Î¥Ù¡¼¥¹Ì¾¤ò´Þ¤à¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁǤϡ¢\fI\&.jar\fR¤Þ¤¿¤Ï\fI\&.JAR\fR¤ò³ÈÄ¥»Ò¤Ë»ý¤Ä¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê\fImydir\fR¤Ë\fIa\&.jar\fR¤È\fIb\&.JA\fRR¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁÇ\fIfoo/*\fR¤Ï\fIA\&.jar:b\&.JAR\fR¤ËŸ³«¤µ¤ì¤Þ¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Î½çÈÖ¤Ï̤»ØÄê¤È¤Ê¤ê¤Þ¤¹¡£Èóɽ¼¨¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤à¡¢»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤¬¥ê¥¹¥È¤Ë´Þ¤Þ¤ì¤Þ¤¹¡£*¤«¤é¤Ê¤ë¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥¨¥ó¥È¥ê¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ËŸ³«¤µ¤ì¤Þ¤¹¡£\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤âƱÍͤËŸ³«¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÎŸ³«¤Ï¡¢Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î³«»ÏÁ°¤Ë¹Ô¤ï¤ì¤Þ¤¹¡£Java¥×¥í¥°¥é¥à¤Ï¡¢System\&.getenv(\fI"CLASSPATH"\fR)¤Î¸Æ¤Ó½Ð¤·¤Ë¤è¤Ã¤Æ¤Ê¤É¡¢´Ä¶­¤òÌ䤤¹ç¤»¤ë¾ì¹ç¤ò½ü¤­¡¢Å¸³«¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»²¾È¤·¤Þ¤»¤ó¡£
+ä»–ã®ãƒ„ールã¨åŒæ§˜ã«ã€\fI\-classpath\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fICLASSPATH\fR環境変数ãŒè¨­å®šã•ã‚Œã¦ã„ã‚Œã°ã€\fIjavadoc\fRコマンドã¯ãã®ç’°å¢ƒå¤‰æ•°ã‚’使用ã—ã¾ã™ã€‚ã©ã¡ã‚‰ã‚‚設定ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã¾ã™ã€‚
+.sp
+\fIjavadoc\fRコマンドãŒ\fI\-classpath\fRを使用ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã‚’検索ã™ã‚‹æ–¹æ³•ã«ã¤ã„ã¦ã®ã€æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚„ブートストラップ・クラスã«é–¢é€£ã—ãŸè©³ç´°ã¯ã€ã‚¯ãƒ©ã‚¹ã®æ¤œç´¢æ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+*ã®ãƒ™ãƒ¼ã‚¹åã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ ã¯ã€\fI\&.jar\fRã¾ãŸã¯\fI\&.JAR\fRã‚’æ‹¡å¼µå­ã«æŒã¤ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹ã®ã¨åŒç­‰ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fImydir\fRã«\fIa\&.jar\fRã¨\fIb\&.JA\fRRãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ \fIfoo/*\fRã¯\fIA\&.jar:b\&.JAR\fRã«å±•é–‹ã•ã‚Œã¾ã™ãŒã€JARファイルã®é †ç•ªã¯æœªæŒ‡å®šã¨ãªã‚Šã¾ã™ã€‚éžè¡¨ç¤ºã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€ã€æŒ‡å®šã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルãŒãƒªã‚¹ãƒˆã«å«ã¾ã‚Œã¾ã™ã€‚*ã‹ã‚‰ãªã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・エントリã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルã®ãƒªã‚¹ãƒˆã«å±•é–‹ã•ã‚Œã¾ã™ã€‚\fICLASSPATH\fR環境変数もåŒæ§˜ã«å±•é–‹ã•ã‚Œã¾ã™ã€‚クラス・パスã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®å±•é–‹ã¯ã€Java仮想マシン(JVM)ã®é–‹å§‹å‰ã«è¡Œã‚ã‚Œã¾ã™ã€‚Javaプログラムã¯ã€System\&.getenv(\fI"CLASSPATH"\fR)ã®å‘¼ã³å‡ºã—ã«ã‚ˆã£ã¦ãªã©ã€ç’°å¢ƒã‚’å•ã„åˆã›ã‚‹å ´åˆã‚’除ãã€å±•é–‹ã•ã‚Œã¦ã„ãªã„ワイルドカードをå‚ç…§ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-subpackages \fIpackage1:package2:\&.\&.\&.\fR
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËºÆµ¢Åª¤Ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¿·¤·¤¤¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤òÄɲ乤ëºÝ¤ËÊØÍø¤Ç¤¹¡£¿·¤·¤¤¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤¬¼«Æ°Åª¤ËÁȤ߹þ¤Þ¤ì¤ë¤«¤é¤Ç¤¹¡£³Æpackage°ú¿ô¤Ï¡¢Ç¤°Õ¤ÎºÇ¾å°Ì¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸(\fIjava\fR¤Ê¤É)¤Þ¤¿¤Ï´°Á´½¤¾þ¥Ñ¥Ã¥±¡¼¥¸(\fIjavax\&.swing\fR¤Ê¤É)¤Ë¤Ê¤ê¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£°ú¿ô¤Ï¡¢¤¹¤Ù¤Æ¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¡¢¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¸¡º÷¾ì½ê¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fI\-sourcepath\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Ë¸ºß¤¹¤ë¤¬¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Ê¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½èÍý¤·¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIjava\fR¤ª¤è¤Ó\fIjavax\&.swing\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤È¤³¤ì¤é¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Á´Éô¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£
+ソース・ファイルã‹ã‚‰æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ内ã«å†å¸°çš„ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«æ–°ã—ã„サブパッケージを追加ã™ã‚‹éš›ã«ä¾¿åˆ©ã§ã™ã€‚æ–°ã—ã„サブパッケージãŒè‡ªå‹•çš„ã«çµ„ã¿è¾¼ã¾ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚å„package引数ã¯ã€ä»»æ„ã®æœ€ä¸Šä½ã‚µãƒ–パッケージ(\fIjava\fRãªã©)ã¾ãŸã¯å®Œå…¨ä¿®é£¾ãƒ‘ッケージ(\fIjavax\&.swing\fRãªã©)ã«ãªã‚Šã¾ã™ã€‚ソース・ファイルをå«ã‚ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。引数ã¯ã€ã™ã¹ã¦ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚ワイルドカードã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。パッケージã®æ¤œç´¢å ´æ‰€ã‚’指定ã™ã‚‹ã«ã¯ã€\fI\-sourcepath\fRを使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã«å­˜åœ¨ã™ã‚‹ãŒãƒ‘ッケージã«å«ã¾ã‚Œãªã„ソース・ファイルを処ç†ã—ã¾ã›ã‚“。ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIjava\fRãŠã‚ˆã³\fIjavax\&.swing\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージã¨ã“れらã®ã‚µãƒ–パッケージ全部ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2538,9 +2538,9 @@
 .PP
 \-exclude \fIpackagename1:packagename2:\&.\&.\&.\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò\fI\-subpackages\fR¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿¥ê¥¹¥È¤«¤é̵¾ò·ï¤Ë½ü³°¤·¤Þ¤¹¡£²áµî¤Þ¤¿¤Ï¾­Íè¤Î\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤Î»ØÄê¤Ë¤è¤Ã¤ÆÁȤ߹þ¤Þ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¤â½ü³°¤ÎÂоݤȤʤê¤Þ¤¹¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\&.io\fR¡¢\fIjava\&.util\fR¡¢\fIjava\&.math\fR¤Ê¤É¤ÏÁȤ߹þ¤Þ¤ì¤Þ¤¹¤¬¡¢\fIjava\&.net\fR¤È\fIjava\&.lang\fR¤ò¥ë¡¼¥È¤Ë»ý¤Ä¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤Þ¤¹¡£\fIjava\&.lang\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ç¤¢¤ë\fIjava\&.lang\&.ref\fR¤¬½ü³°¤µ¤ì¤ëÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã•ã‚ŒãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージを\fI\-subpackages\fRã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸãƒªã‚¹ãƒˆã‹ã‚‰ç„¡æ¡ä»¶ã«é™¤å¤–ã—ã¾ã™ã€‚éŽåŽ»ã¾ãŸã¯å°†æ¥ã®\fI\-subpackages\fRオプションã®æŒ‡å®šã«ã‚ˆã£ã¦çµ„ã¿è¾¼ã¾ã‚Œã‚‹ãƒ‘ッケージも除外ã®å¯¾è±¡ã¨ãªã‚Šã¾ã™ã€‚
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\&.io\fRã€\fIjava\&.util\fRã€\fIjava\&.math\fRãªã©ã¯çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ãŒã€\fIjava\&.net\fRã¨\fIjava\&.lang\fRをルートã«æŒã¤ãƒ‘ッケージã¯é™¤å¤–ã•ã‚Œã¾ã™ã€‚\fIjava\&.lang\fRã®ã‚µãƒ–パッケージã§ã‚ã‚‹\fIjava\&.lang\&.ref\fRãŒé™¤å¤–ã•ã‚Œã‚‹ç‚¹ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -2556,30 +2556,30 @@
 .PP
 \-bootclasspath \fIclasspathlist\fR
 .RS 4
-¥Ö¡¼¥È¡¦¥¯¥é¥¹¤¬Â¸ºß¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¡¦¥¯¥é¥¹¤È¤Ï¡¢Ä̾Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥¯¥é¥¹¤Î¤³¤È¤Ç¤¹¡£\fIbootclasspath\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òõ¤¹¤È¤­¤Ë»ÈÍѤ¹¤ë¸¡º÷¥Ñ¥¹¤Î°ìÉô¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fIclasspathlist\fR¥Ñ¥é¥á¡¼¥¿Æâ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥»¥ß¥³¥í¥ó(;)¤Ç¶èÀÚ¤ë(Windows¤Î¾ì¹ç)¤«¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹(Oracle Solaris¤Î¾ì¹ç)¡£
+ブート・クラスãŒå­˜åœ¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブート・クラスã¨ã¯ã€é€šå¸¸ã€Javaプラットフォーム・クラスã®ã“ã¨ã§ã™ã€‚\fIbootclasspath\fRã¯ã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã™ã¨ãã«ä½¿ç”¨ã™ã‚‹æ¤œç´¢ãƒ‘スã®ä¸€éƒ¨ã§ã™ã€‚詳細ã¯ã€ã‚¯ãƒ©ã‚¹ã®æ¤œå‡ºæ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fIclasspathlist\fRパラメータ内ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§åŒºåˆ‡ã‚‹(Windowsã®å ´åˆ)ã‹ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™(Oracle Solarisã®å ´åˆ)。
 .RE
 .PP
 \-extdirs \fIdirist\fR
 .RS 4
-³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤È¤Ï¡¢Java³ÈÄ¥µ¡Ç½µ¡¹½¤ò»ÈÍѤ¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¤¹¡£\fIextdirs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òõ¤¹¤È¤­¤Ë»ÈÍѤ¹¤ë¸¡º÷¥Ñ¥¹¤Î°ìÉô¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fIdirlist\fRÆâ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥»¥ß¥³¥í¥ó(;)¤Ç¶èÀÚ¤ë(Windows¤Î¾ì¹ç)¤«¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹(Oracle Solaris¤Î¾ì¹ç)¡£
+拡張機能クラスãŒå­˜åœ¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚拡張機能クラスã¨ã¯ã€Java拡張機能機構を使用ã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã™ã€‚\fIextdirs\fRオプションã¯ã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã™ã¨ãã«ä½¿ç”¨ã™ã‚‹æ¤œç´¢ãƒ‘スã®ä¸€éƒ¨ã§ã™ã€‚詳細ã¯ã€\fI\-classpath\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。\fIdirlist\fR内ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§åŒºåˆ‡ã‚‹(Windowsã®å ´åˆ)ã‹ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™(Oracle Solarisã®å ´åˆ)。
 .RE
 .PP
 \-verbose
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹ÔÃæ¤Ë¾ÜºÙ¤Ê¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£\fIverbose\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥í¡¼¥É»þ¡¢¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®»þ(¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë1¤Ä¤Î¥á¥Ã¥»¡¼¥¸)¡¢¤ª¤è¤Ó¥½¡¼¥È»þ¤Ë¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£verbose¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢³ÆJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î²òÀϤËÍפ·¤¿»þ´Ö(¥ß¥êÉÃñ°Ì)¤ò¼¨¤¹ÄɲäΥá¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®å®Ÿè¡Œä¸­ã«è©³ç´°ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚\fIverbose\fRオプションを指定ã—ãªã„ã¨ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ­ãƒ¼ãƒ‰æ™‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆæ™‚(ソース・ファイルã”ã¨ã«1ã¤ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸)ã€ãŠã‚ˆã³ã‚½ãƒ¼ãƒˆæ™‚ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚verboseオプションを指定ã™ã‚‹ã¨ã€å„Javaソース・ファイルã®è§£æžã«è¦ã—ãŸæ™‚é–“(ミリ秒å˜ä½)を示ã™è¿½åŠ ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òÍÞÀ©¤·¡¢·Ù¹ð¤È¥¨¥é¡¼¤Î¤ß¤¬É½¼¨¤µ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¡¢¤³¤ì¤é¤ò³Îǧ¤·¤ä¤¹¤¯¤·¤Þ¤¹¡£\fIversion\fRʸ»úÎó¤âÍ޻ߤ·¤Þ¤¹¡£
+メッセージを抑制ã—ã€è­¦å‘Šã¨ã‚¨ãƒ©ãƒ¼ã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ã€ã“れらを確èªã—ã‚„ã™ãã—ã¾ã™ã€‚\fIversion\fR文字列も抑止ã—ã¾ã™ã€‚
 .RE
 .PP
 \-breakiterator
 .RS 4
-±Ñ¸ì¤Î¾ì¹ç¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î¼çÀâÌÀ¤ÎºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ëºÝ¤Ë¡¢\fIjava\&.text\&.BreakIterator\fR¤Î¹ñºÝ²½¤µ¤ì¤¿Ê¸¶­³¦¤ò»ÈÍѤ·¤Þ¤¹¡£Â¾¤Î¤¹¤Ù¤Æ¤Î¥í¥±¡¼¥ë¤Ï¡¢±Ñ¸ì¸À¸ì¤È¤¤¤¦¥í¥±¡¼¥ë¸ÇÍ­¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤Ï¤Ê¤¯¡¢¤¹¤Ç¤Ë\fIBreakIterator\fR¥¯¥é¥¹¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£ºÇ½é¤Îʸ¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î¥µ¥Þ¥ê¡¼¤Ë¥³¥Ô¡¼¤µ¤ì¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Îº÷°ú¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£JDK 1\&.2°Ê¹ß¡¢\fIBreakIterator\fR¥¯¥é¥¹¤Ï¡¢±Ñ¸ì¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¸À¸ì¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ë¤¿¤á¤Ë¡¢¤¹¤Ç¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢1\&.2°Ê¹ß¤Ç¤Ï±Ñʸ°Ê³°¤Ë¤Ï¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£±Ñʸ¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ÊÆȼ«¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥¢¥ë¥´¥ê¥º¥à¤¬¤¢¤ê¤Þ¤¹¡£
+英語ã®å ´åˆã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®ä¸»èª¬æ˜Žã®æœ€åˆã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹éš›ã«ã€\fIjava\&.text\&.BreakIterator\fRã®å›½éš›åŒ–ã•ã‚ŒãŸæ–‡å¢ƒç•Œã‚’使用ã—ã¾ã™ã€‚ä»–ã®ã™ã¹ã¦ã®ãƒ­ã‚±ãƒ¼ãƒ«ã¯ã€è‹±èªžè¨€èªžã¨ã„ã†ãƒ­ã‚±ãƒ¼ãƒ«å›ºæœ‰ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã¯ãªãã€ã™ã§ã«\fIBreakIterator\fRクラスを使用ã—ã¦ã„ã¾ã™ã€‚最åˆã®æ–‡ã¯ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®ã‚µãƒžãƒªãƒ¼ã«ã‚³ãƒ”ーã•ã‚Œã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã®ç´¢å¼•ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚JDK 1\&.2以é™ã€\fIBreakIterator\fRクラスã¯ã€è‹±èªžã‚’除ãã™ã¹ã¦ã®è¨€èªžã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹ãŸã‚ã«ã€ã™ã§ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fI\-breakiterator\fRオプションã¯ã€1\&.2以é™ã§ã¯è‹±æ–‡ä»¥å¤–ã«ã¯åŠ¹æžœãŒã‚ã‚Šã¾ã›ã‚“。英文ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªç‹¬è‡ªã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2589,7 +2589,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-±Ñʸ¤Î¥Ç¥Õ¥©¥ë¥È¤Îʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¡£¶õÇòʸ»ú¤Þ¤¿¤ÏHTML¥Ö¥í¥Ã¥¯¡¦¥¿¥°(\fI<P>\fR¤Ê¤É)¤¬Â³¤¯¥Ô¥ê¥ª¥É¤ÇÄä»ß¤·¤Þ¤¹¡£
+英文ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡åŒºåˆ‡ã‚Šã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã€‚空白文字ã¾ãŸã¯HTMLブロック・タグ(\fI<P>\fRãªã©)ãŒç¶šãピリオドã§åœæ­¢ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2600,36 +2600,36 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-breakiteratorʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¡£¼¡¤Î¸ì¤¬Âçʸ»ú¤Ç»Ï¤Þ¤ë¾ì¹ç¡¢¶õÇòʸ»ú¤¬Â³¤¯¥Ô¥ê¥ª¥É¡¢µ¿ÌäÉä¡¢¤Þ¤¿¤Ï´¶Ã²Éä¤ÇÄä»ß¤·¤Þ¤¹¡£¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤Ï¡ÖThe serial no\&. is valid¡×¤Ê¤É¡¢¤Û¤È¤ó¤É¤Î¾Êάɽµ­¤¬½èÍý¤µ¤ì¤Þ¤¹¤¬¡¢¡ÖMr\&. Smith¡×¤Ï½èÍý¤µ¤ì¤Þ¤»¤ó¡£\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢HTML¥¿¥°¤ä¡¢¿ô»ú¤Þ¤¿¤Ïµ­¹æ¤Ç»Ï¤Þ¤ëʸ¤Ç¤ÏÄä»ß¤·¤Þ¤»¤ó¡£HTML¥¿¥°¤ËËä¤á¹þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¤â¡¢¡Ö\&.\&./filename¡×¤ÎºÇ¸å¤Î¥Ô¥ê¥ª¥É¤ÇÄä»ß¤·¤Þ¤¹¡£
-.RE
-.sp
-Java SE 1\&.5¤Ç¤Ï\fI\-breakiterator\fR·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬ºï½ü¤µ¤ì¡¢¥Ç¥Õ¥©¥ë¥È¤Îʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¤ÏÊѹ¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤òÊѹ¹¤»¤º¡¢SE 1\&.4\&.x¤Ç¤Î\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Î·Ù¹ð¤ò½üµî¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤â¡¢²¿¤â¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£Java SE 1\&.5\&.0¤«¤é¤Ï·Ù¹ð¤Ï¾ÃÌǤ·¤Æ¤¤¤Þ¤¹¡£
+breakiterator文区切りアルゴリズム。次ã®èªžãŒå¤§æ–‡å­—ã§å§‹ã¾ã‚‹å ´åˆã€ç©ºç™½æ–‡å­—ãŒç¶šãピリオドã€ç–‘å•ç¬¦ã€ã¾ãŸã¯æ„Ÿå˜†ç¬¦ã§åœæ­¢ã—ã¾ã™ã€‚ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã¯ã€ŒThe serial no\&. is validã€ãªã©ã€ã»ã¨ã‚“ã©ã®çœç•¥è¡¨è¨˜ãŒå‡¦ç†ã•ã‚Œã¾ã™ãŒã€ã€ŒMr\&. Smithã€ã¯å‡¦ç†ã•ã‚Œã¾ã›ã‚“。\fI\-breakiterator\fRオプションã§ã¯ã€HTMLã‚¿ã‚°ã‚„ã€æ•°å­—ã¾ãŸã¯è¨˜å·ã§å§‹ã¾ã‚‹æ–‡ã§ã¯åœæ­¢ã—ã¾ã›ã‚“。HTMLã‚¿ã‚°ã«åŸ‹ã‚è¾¼ã¾ã‚Œã¦ã„ã‚‹å ´åˆã§ã‚‚ã€ã€Œ\&.\&./filenameã€ã®æœ€å¾Œã®ãƒ”リオドã§åœæ­¢ã—ã¾ã™ã€‚
+.RE
+.sp
+Java SE 1\&.5ã§ã¯\fI\-breakiterator\fR警告メッセージãŒå‰Šé™¤ã•ã‚Œã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡åŒºåˆ‡ã‚Šã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã¯å¤‰æ›´ã•ã‚Œã¦ã„ã¾ã›ã‚“。ソース・コードを変更ã›ãšã€SE 1\&.4\&.xã§ã®\fI\-breakiterator\fRオプションã®è­¦å‘Šã‚’除去ã—ã¦ã„ãªã„å ´åˆã§ã‚‚ã€ä½•ã‚‚ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。Java SE 1\&.5\&.0ã‹ã‚‰ã¯è­¦å‘Šã¯æ¶ˆæ»…ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-locale \fIlanguage_country_variant\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥í¥±¡¼¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î°ú¿ô¤Ï¡¢\fIj\fR\fIava\&.util\&.Locale\fR¥É¥­¥å¥á¥ó¥È¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢\fIen_US\fR
-(±Ñ¸ì¡¢Êƹñ)¤Þ¤¿¤Ï\fIen_US_WIN\fR
-(Windows¥Ð¥ê¥¢¥ó¥È)¤Ê¤É¤Î¥í¥±¡¼¥ë¤Î̾Á°¤Ç¤¹¡£
-.sp
-\fBÃí°Õ:\fR
-\fI\-locale\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤¬Ä󶡤¹¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¡¢¤Þ¤¿¤Ï¤½¤Î¾¤ÎǤ°Õ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤¬Ä󶡤¹¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤è¤êÁ°(º¸Â¦)¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤·¤Ê¤¤¤È¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤¬±Ñ¸ì¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î¤ß¡¢»ØÄꤹ¤ë½ç½ø¤Ë°Í¸¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥í¥±¡¼¥ë¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥í¥±¡¼¥ë¤Î¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÁªÂò¤µ¤ì¤Æ¡¢¥á¥Ã¥»¡¼¥¸(¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¡¢¥ê¥¹¥È¤Èɽ¤Î¸«½Ð¤·¡¢¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤ÎÌܼ¡¡¢stylesheet\&.css¤Î¥³¥á¥ó¥È¤Ê¤É¤Îʸ»úÎó)¤Î¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ë¥½¡¼¥È¤µ¤ì¤ë¥ê¥¹¥È¤Î¥½¡¼¥È½ç¡¢¤ª¤è¤ÓºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ë¤¿¤á¤Îʸ¤Î¶èÀÚ¤êʸ»ú¤â¡¢»ØÄꤷ¤¿¥í¥±¡¼¥ë¤Ë¤è¤Ã¤Æ·è¤Þ¤ê¤Þ¤¹¡£\fI\-locale\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È¤Î¥í¥±¡¼¥ë¤ò·èÄꤹ¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ãƒ­ã‚±ãƒ¼ãƒ«ã‚’指定ã—ã¾ã™ã€‚ã“ã®å¼•æ•°ã¯ã€\fIj\fR\fIava\&.util\&.Locale\fRドキュメントã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€\fIen_US\fR
+(英語ã€ç±³å›½)ã¾ãŸã¯\fIen_US_WIN\fR
+(Windowsãƒãƒªã‚¢ãƒ³ãƒˆ)ãªã©ã®ãƒ­ã‚±ãƒ¼ãƒ«ã®åå‰ã§ã™ã€‚
+.sp
+\fB注æ„:\fR
+\fI\-locale\fRオプションã¯ã€æ¨™æº–ドックレットãŒæä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションã€ã¾ãŸã¯ãã®ä»–ã®ä»»æ„ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションよりå‰(å·¦å´)ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã—ãªã„ã¨ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ãŒè‹±èªžã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®ã¿ã€æŒ‡å®šã™ã‚‹é †åºã«ä¾å­˜ã—ã¾ã™ã€‚標準ドックレットã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ロケールを指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ­ã‚±ãƒ¼ãƒ«ã®ãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦é¸æŠžã•ã‚Œã¦ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸(ナビゲーション・ãƒãƒ¼ã€ãƒªã‚¹ãƒˆã¨è¡¨ã®è¦‹å‡ºã—ã€ãƒ˜ãƒ«ãƒ—・ファイルã®ç›®æ¬¡ã€stylesheet\&.cssã®ã‚³ãƒ¡ãƒ³ãƒˆãªã©ã®æ–‡å­—列)ã®ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ã‚½ãƒ¼ãƒˆã•ã‚Œã‚‹ãƒªã‚¹ãƒˆã®ã‚½ãƒ¼ãƒˆé †ã€ãŠã‚ˆã³æœ€åˆã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹ãŸã‚ã®æ–‡ã®åŒºåˆ‡ã‚Šæ–‡å­—ã‚‚ã€æŒ‡å®šã—ãŸãƒ­ã‚±ãƒ¼ãƒ«ã«ã‚ˆã£ã¦æ±ºã¾ã‚Šã¾ã™ã€‚\fI\-locale\fRオプションã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã§æŒ‡å®šã•ã‚Œã¦ã„るドキュメンテーション・コメントã®ãƒ†ã‚­ã‚¹ãƒˆã®ãƒ­ã‚±ãƒ¼ãƒ«ã‚’決定ã™ã‚‹ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-encoding
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°(\fIEUCJIS/SJIS\fR¤Ê¤É)¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥Ð¡¼¥¿¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ソース・ファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã®åå‰(\fIEUCJIS/SJIS\fRãªã©)を指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ—ラットフォームã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ãƒãƒ¼ã‚¿ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëJava Runtime Environment (JRE)¤Ë¡¢\fIflag\fR¤òľÀÜÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤ò½èÍý¤¹¤ë¤¿¤á¤Ë¥·¥¹¥Æ¥à¤Ç32MB¤Î¥á¥â¥ê¡¼¤ò³ÎÊݤ·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤ò¼¡¤Î¤è¤¦¤Ë¸Æ¤Ó½Ð¤·¤Þ¤¹¡£\fIjavadoc \-J\-Xmx32m \-J\-Xms32m com\&.mypackage\fR¡£\fI\-Xms\fR¤Ï¾Êά²Äǽ¤Ç¡¢¤³¤ì¤Ï½é´ü¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÀßÄꤹ¤ë¤Î¤ß¤Î¥ª¥×¥·¥ç¥ó¤Ç¡¢É¬Íפʥá¥â¥ê¡¼¤ÎºÇ¾®Î̤¬¤ï¤«¤Ã¤Æ¤¤¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
-.sp
-\fIJ\fR¤È\fIflag\fR¤Î´Ö¤Ë¶õÇòʸ»ú¤Ï¤¢¤ê¤Þ¤»¤ó¡£
-.sp
-»ÈÍѤ·¤Æ¤¤¤ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò³Îǧ¤¹¤ë¤Ë¤Ï\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë¤Ïɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£Javadoc¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドを実行ã™ã‚‹Java Runtime Environment (JRE)ã«ã€\fIflag\fRを直接渡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’処ç†ã™ã‚‹ãŸã‚ã«ã‚·ã‚¹ãƒ†ãƒ ã§32MBã®ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’確ä¿ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€\fI\-Xmx\fRオプションを次ã®ã‚ˆã†ã«å‘¼ã³å‡ºã—ã¾ã™ã€‚\fIjavadoc \-J\-Xmx32m \-J\-Xms32m com\&.mypackage\fR。\fI\-Xms\fRã¯çœç•¥å¯èƒ½ã§ã€ã“ã‚Œã¯åˆæœŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’設定ã™ã‚‹ã®ã¿ã®ã‚ªãƒ—ションã§ã€å¿…è¦ãªãƒ¡ãƒ¢ãƒªãƒ¼ã®æœ€å°é‡ãŒã‚ã‹ã£ã¦ã„ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
+.sp
+\fIJ\fRã¨\fIflag\fRã®é–“ã«ç©ºç™½æ–‡å­—ã¯ã‚ã‚Šã¾ã›ã‚“。
+.sp
+使用ã—ã¦ã„ã‚‹\fIjavadoc\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’確èªã™ã‚‹ã«ã¯\fI\-version\fRオプションを使用ã—ã¾ã™ã€‚出力ストリームã«ã¯æ¨™æº–ドックレットã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚Javadocコマンドã®å®Ÿè¡Œã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -2644,76 +2644,76 @@
 .RE
 .\}
 .RE
-.SS "ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó"
+.SS "標準ドックレットã®ã‚ªãƒ—ション"
 .PP
 \-d \fIdirectory\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬À¸À®¤µ¤ì¤¿HTML¥Õ¥¡¥¤¥ë¤òÊݸ¤¹¤ëÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤µ¤ì¤Þ¤¹¡£\fIdirectory\fR¤ÎÃͤˤϡ¢ÀäÂХǥ£¥ì¥¯¥È¥ê¡¢¤Þ¤¿¤Ï¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХǥ£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Java SE 1\&.4¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤ÈÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤¬¼«Æ°Åª¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤ÎÎã¤Ç¤Ï¡¢\fIcom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢¤½¤Î·ë²Ì¤¬\fI/user/doc/ \fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤µ¤ì¤Þ¤¹¡£\fIjavadoc \-d \fR\fI/user/doc/ \fR\fIcom\&.mypackage\fR
+\fIjavadoc\fRコマンドãŒç”Ÿæˆã•ã‚ŒãŸHTMLファイルをä¿å­˜ã™ã‚‹ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚\fI\-d\fRオプションをçœç•¥ã™ã‚‹ã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚\fIdirectory\fRã®å€¤ã«ã¯ã€çµ¶å¯¾ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€ã¾ãŸã¯ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚Java SE 1\&.4ã§ã¯ã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã¨ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒè‡ªå‹•çš„ã«ä½œæˆã•ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ä¾‹ã§ã¯ã€\fIcom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€ãã®çµæžœãŒ\fI/user/doc/ \fRディレクトリã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚\fIjavadoc \-d \fR\fI/user/doc/ \fR\fIcom\&.mypackage\fR
 .RE
 .PP
 \-use
 .RS 4
-¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸¤òÁȤ߹þ¤ß¤Þ¤¹¡£¤³¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢¤½¤ÎÆÃÄê¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤ÎAPI¤ò»ÈÍѤ·¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤¬µ­½Ò¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹C¤òÎã¤Ë¤È¤ë¤È¡¢¥¯¥é¥¹C¤ò»ÈÍѤ·¤Æ¤¤¤ë¤â¤Î¤È¤·¤Æ¤Ï¡¢C¤Î¥µ¥Ö¥¯¥é¥¹¡¢C¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤ë¥Õ¥£¡¼¥ë¥É¡¢C¤òÊÖ¤¹¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó·¿C¤Î¥Ñ¥é¥á¡¼¥¿¤ò»ý¤Ä¥á¥½¥Ã¥É¤È¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR·¿ÍѤλÈÍÑ¥Ú¡¼¥¸¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£\fIjava\&.awt\&.Font\fR¥¯¥é¥¹¤Î\fIgetName\fR¥á¥½¥Ã¥É¤Ï\fIString\fR·¿¤òÌ᤹¤Î¤Ç¡¢\fIgetName\fR¥á¥½¥Ã¥É¤Ï\fIString\fR¤ò»ÈÍѤ·¡¢\fIgetName\fR¥á¥½¥Ã¥É¤¬\fIString\fRÍѤλÈÍÑ¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¼ÂÁõ¤Ç¤Ï¤Ê¤¯API¤Î»ÈÍѤΤߤò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£¥á¥½¥Ã¥É¤¬¤½¤Î¼ÂÁõ¤Ç\fIString\fR¤ò»ÈÍѤ¹¤ë¤¬¡¢°ú¿ô¤È¤·¤Æʸ»úÎó¤ò¼è¤é¤Ê¤¤¡¢¤Þ¤¿¤Ïʸ»úÎó¤òÊÖ¤µ¤Ê¤¤¾ì¹ç¡¢¤½¤ì¤Ï\fIString\fR¤Î»ÈÍѤȤϤߤʤµ¤ì¤Þ¤»¤ó¡£À¸À®¤µ¤ì¤¿»ÈÍÑ¥Ú¡¼¥¸¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Ë°ÜÆ°¤·¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î\fB¥ê¥ó¥¯¤Î»ÈÍÑ\fR¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+ドキュメント化ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã”ã¨ã«1ã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸ã«ã¯ã€ãã®ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã®APIを使用ã—ã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŒè¨˜è¿°ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹Cを例ã«ã¨ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹Cを使用ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã—ã¦ã¯ã€Cã®ã‚µãƒ–クラスã€Cã¨ã—ã¦å®£è¨€ã•ã‚Œã¦ã„るフィールドã€Cã‚’è¿”ã™ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³åž‹Cã®ãƒ‘ラメータをæŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ã¨ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fR型用ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã‚’表示ã§ãã¾ã™ã€‚\fIjava\&.awt\&.Font\fRクラスã®\fIgetName\fRメソッドã¯\fIString\fR型を戻ã™ã®ã§ã€\fIgetName\fRメソッドã¯\fIString\fRを使用ã—ã€\fIgetName\fRメソッドãŒ\fIString\fR用ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯å®Ÿè£…ã§ã¯ãªãAPIã®ä½¿ç”¨ã®ã¿ã‚’ドキュメント化ã—ã¾ã™ã€‚メソッドãŒãã®å®Ÿè£…ã§\fIString\fRを使用ã™ã‚‹ãŒã€å¼•æ•°ã¨ã—ã¦æ–‡å­—列をå–らãªã„ã€ã¾ãŸã¯æ–‡å­—列を返ã•ãªã„å ´åˆã€ãã‚Œã¯\fIString\fRã®ä½¿ç”¨ã¨ã¯ã¿ãªã•ã‚Œã¾ã›ã‚“。生æˆã•ã‚ŒãŸä½¿ç”¨ãƒšãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã«ç§»å‹•ã—ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®\fBリンクã®ä½¿ç”¨\fRをクリックã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢@version¤Î¥Æ¥­¥¹¥È¤òÁȤ߹þ¤ß¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£»ÈÍѤ·¤Æ¤¤¤ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò³Îǧ¤¹¤ë¤Ë¤Ï\fI\-J\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€@versionã®ãƒ†ã‚­ã‚¹ãƒˆã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯çœç•¥ã•ã‚Œã¾ã™ã€‚使用ã—ã¦ã„ã‚‹\fIjavadoc\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’確èªã™ã‚‹ã«ã¯\fI\-J\-version\fRオプションを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-author
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢\fI@author\fR¤Î¥Æ¥­¥¹¥È¤òÁȤ߹þ¤ß¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€\fI@author\fRã®ãƒ†ã‚­ã‚¹ãƒˆã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚
 .RE
 .PP
 \-splitindex
 .RS 4
-º÷°ú¥Õ¥¡¥¤¥ë¤ò¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤´¤È¤ËÊ£¿ô¤Î¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤·¡¢Ê¸»ú¤´¤È¤Ë1¤Ä¤Î¥Õ¥¡¥¤¥ë¤È¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È°Ê³°¤Îµ­¹æ¤Ç»Ï¤Þ¤ëº÷°ú¥¨¥ó¥È¥êÍѤË1¤Ä¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+索引ファイルをアルファベットã”ã¨ã«è¤‡æ•°ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«åˆ†å‰²ã—ã€æ–‡å­—ã”ã¨ã«1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆä»¥å¤–ã®è¨˜å·ã§å§‹ã¾ã‚‹ç´¢å¼•ã‚¨ãƒ³ãƒˆãƒªç”¨ã«1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-windowtitle \fItitle\fR
 .RS 4
-HTML¤Î\fI<title>\fR¥¿¥°¤ËÇÛÃÖ¤¹¤ë¥¿¥¤¥È¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤Ï¡¢¥¦¥£¥ó¥É¥¦¤Î¥¿¥¤¥È¥ë¤ä¡¢¤³¤Î¥Ú¡¼¥¸¤ËÂФ·¤ÆºîÀ®¤µ¤ì¤¿¥Ö¥é¥¦¥¶¤Î¥Ö¥Ã¥¯¥Þ¡¼¥¯(¤ªµ¤¤ËÆþ¤ê)¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¿¥¤¥È¥ë¤Ë¤ÏHTML¥¿¥°¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¥¿¥¤¥È¥ë¤ËHTML¥¿¥°¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤È¡¢¥Ö¥é¥¦¥¶¤¬¥¿¥°¤òÀµ¤·¤¯²ò¼á¤Ç¤­¤Þ¤»¤ó¡£\fItitle\fR¥¿¥°Æâ¤ÎÆâÉô¤ÎÆó½Å°úÍÑÉä¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Æ¥Þ¡¼¥¯¤·¤Þ¤¹¡£\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë¡¢\fI\-doctitle\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-windowtitle "Java SE Platform" com\&.mypackage\fR¤Ç¤¹¡£
+HTMLã®\fI<title>\fRã‚¿ã‚°ã«é…ç½®ã™ã‚‹ã‚¿ã‚¤ãƒˆãƒ«ã‚’指定ã—ã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã‚¿ã‚¤ãƒˆãƒ«ã‚„ã€ã“ã®ãƒšãƒ¼ã‚¸ã«å¯¾ã—ã¦ä½œæˆã•ã‚ŒãŸãƒ–ラウザã®ãƒ–ックマーク(ãŠæ°—ã«å…¥ã‚Š)ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒˆãƒ«ã«ã¯HTMLã‚¿ã‚°ã‚’å«ã‚ãªã„ã§ãã ã•ã„。タイトルã«HTMLã‚¿ã‚°ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã¨ã€ãƒ–ラウザãŒã‚¿ã‚°ã‚’æ­£ã—ã解釈ã§ãã¾ã›ã‚“。\fItitle\fRタグ内ã®å†…部ã®äºŒé‡å¼•ç”¨ç¬¦ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¦ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚\fI\-windowtitle\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fI\-windowtitle\fRオプションã®ã‹ã‚ã‚Šã«ã€\fI\-doctitle\fRオプションã®å€¤ã‚’使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-windowtitle "Java SE Platform" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-doctitle \fItitle\fR
 .RS 4
-³µÍ×¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤Î¶á¤¯¤ËÇÛÃÖ¤¹¤ë¥¿¥¤¥È¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤ÏÃæ±û·¤¨¤Ë¤Ê¤ê¡¢¥ì¥Ù¥ë1¤Î¸«½Ð¤·¤È¤·¤Æ¡¢¾åÉô¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¤¹¤°²¼¤ËÃÖ¤«¤ì¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢¥¿¥¤¥È¥ë¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fItitle\fR¥¿¥°¤ÎÆâÉô¤Ç°úÍÑÉä¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fR¤Ç¤¹¡£
+概è¦ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æœ€ä¸Šéƒ¨ã®è¿‘ãã«é…ç½®ã™ã‚‹ã‚¿ã‚¤ãƒˆãƒ«ã‚’指定ã—ã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ä¸­å¤®æƒãˆã«ãªã‚Šã€ãƒ¬ãƒ™ãƒ«1ã®è¦‹å‡ºã—ã¨ã—ã¦ã€ä¸Šéƒ¨ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã™ã下ã«ç½®ã‹ã‚Œã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€ã‚¿ã‚¤ãƒˆãƒ«ã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã®å†…部ã§å¼•ç”¨ç¬¦ã‚’使用ã™ã‚‹å ´åˆã¯ã€ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-title \fItitle\fR
 .RS 4
-¤¹¤Ç¤Ë¸ºß¤·¤Þ¤»¤ó¡£Javadoc 1\&.2¤Î¥Ù¡¼¥¿ÈǤˤ·¤«Â¸ºß¤·¤Æ¤¤¤Þ¤»¤ó¤Ç¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-doctitle\fR¤È¤¤¤¦Ì¾Á°¤ËÊѹ¹¤µ¤ì¤Þ¤·¤¿¡£Ì¾Á°¤òÊѹ¹¤·¤¿Íýͳ¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤¬¡¢¥¦¥£¥ó¥É¥¦¤Î¥¿¥¤¥È¥ë¤Ç¤Ï¤Ê¤¯¥É¥­¥å¥á¥ó¥È¤Î¥¿¥¤¥È¥ë¤òÄêµÁ¤¹¤ë¤³¤È¤òÌÀ³Î¤Ë¤¹¤ë¤¿¤á¤Ç¤¹¡£
+ã™ã§ã«å­˜åœ¨ã—ã¾ã›ã‚“。Javadoc 1\&.2ã®ãƒ™ãƒ¼ã‚¿ç‰ˆã«ã—ã‹å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“ã§ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-doctitle\fRã¨ã„ã†åå‰ã«å¤‰æ›´ã•ã‚Œã¾ã—ãŸã€‚åå‰ã‚’変更ã—ãŸç†ç”±ã¯ã€ã“ã®ã‚ªãƒ—ションãŒã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã‚¿ã‚¤ãƒˆãƒ«ã§ã¯ãªãドキュメントã®ã‚¿ã‚¤ãƒˆãƒ«ã‚’定義ã™ã‚‹ã“ã¨ã‚’明確ã«ã™ã‚‹ãŸã‚ã§ã™ã€‚
 .RE
 .PP
 \-header \fIheader\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤ËÇÛÃÖ¤¹¤ë¥Ø¥Ã¥À¡¼¡¦¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î±¦¾å¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£\fIheader\fR¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢\fIheader\fR¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ø¥Ã¥À¡¼ÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fR¤Ç¤¹¡£
+å„出力ファイルã®æœ€ä¸Šéƒ¨ã«é…ç½®ã™ã‚‹ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ヘッダーã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®å³ä¸Šã«é…ç½®ã•ã‚Œã¾ã™ã€‚\fIheader\fRã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€\fIheader\fRを引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ヘッダー内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-footer \fIfooter\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤¹¤ë¥Õ¥Ã¥¿¡¼¡¦¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fIfooter\fR¤ÎÃͤϡ¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î±¦²¼¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£\fIfooter\fR¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢\fIfooter\fR¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Õ¥Ã¥¿¡¼ÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸‹éƒ¨ã«é…ç½®ã™ã‚‹ãƒ•ãƒƒã‚¿ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIfooter\fRã®å€¤ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®å³ä¸‹ã«é…ç½®ã•ã‚Œã¾ã™ã€‚\fIfooter\fRã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€\fIfooter\fRを引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚フッター内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-top
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤ËÇÛÃÖ¤¹¤ë¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸Šéƒ¨ã«é…ç½®ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-bottom \fItext\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤¹¤ë¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢²¼Éô¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤è¤ê²¼¤Î¡¢¥Ú¡¼¥¸¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£¥Æ¥­¥¹¥È¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢¥Æ¥­¥¹¥È¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥ÈÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸‹éƒ¨ã«é…ç½®ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ä¸‹éƒ¨ãƒŠãƒ“ゲーション・ãƒãƒ¼ã‚ˆã‚Šä¸‹ã®ã€ãƒšãƒ¼ã‚¸ã®æœ€ä¸‹éƒ¨ã«é…ç½®ã•ã‚Œã¾ã™ã€‚テキストã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€ãƒ†ã‚­ã‚¹ãƒˆã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚テキスト内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-link \fIextdocURL\fR
 .RS 4
-´û¸¤ÎJavadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô»²¾È¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£\fIextdocURL\fR°ú¿ô¤Ï¡¢¥ê¥ó¥¯Àè¤È¤·¤Æ»ØÄꤹ¤ë¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô¥É¥­¥å¥á¥ó¥È¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀäÂÐURL¤Þ¤¿¤ÏÁêÂÐURL¤Ç¤¹¡£»ØÄꤷ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ç¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆÊ£¿ô¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
-.sp
-¤³¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ëpackage\-list¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹)¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢package\-list¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÆɤ߼è¤Ã¤¿¸å¡¢¤½¤ÎURL¤Ç¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¡¢\fIextdocURL\fR¤ÎÃͤ¬¡¢ºîÀ®¤µ¤ì¤¿\fI<A HREF>\fR¥ê¥ó¥¯Æâ¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fIextdocURL\fR¤Ï¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎURL¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIextdocURL\fR¤ËÀäÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Î¥É¥­¥å¥á¥ó¥È¤òǤ°Õ¤ÎWeb¥µ¥¤¥È¾å¤Î¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤¹¡£ÁêÂаÌÃ֤إê¥ó¥¯¤¹¤ë¤Î¤ß¤Î¾ì¹ç¤ÏÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤǤ­¤Þ¤¹¡£ÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢ÅϤ¹Ãͤϰ¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¡¢¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄê)¡£ÀäÂÐ¥ê¥ó¥¯¤ò»ØÄꤹ¤ë¾ì¹ç¡¢Ä̾HTTP¥ê¥ó¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤À¤·¡¢Web¥µ¡¼¥Ð¡¼¤ò»ý¤¿¤Ê¤¤¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë¡¦¥ê¥ó¥¯¤ò»ÈÍѤǤ­¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ë¥¢¥¯¥»¥¹¤¹¤ëÁ´°÷¤¬Æ±¤¸¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤ò¶¦Í­¤¹¤ë¾ì¹ç¤Ë¤Î¤ß¥Õ¥¡¥¤¥ë¡¦¥ê¥ó¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Î¾ì¹ç¤â¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¤â¡¢URL¤¬ÀäÂФޤ¿¤ÏÁêÂФΤ¤¤º¤ì¤Ç¤â¡¢¤Þ¤¿\fIh\fR\fIttp:\fR¤Þ¤¿¤Ï\fIf\fR\fIile:\fR¤Î¤¤¤º¤ì¤Ç¤â¡¢URL¥á¥â: Uniform Resource Locators
-(http://www\&.ietf\&.org/rfc/rfc1738\&.txt)¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ë¤È¤ª¤ê¡¢¶èÀÚ¤êʸ»ú¤È¤·¤Æ¥¹¥é¥Ã¥·¥å¤ò»ÈÍѤ·¤Þ¤¹¡£
+既存ã®Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部å‚照クラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚\fIextdocURL\fR引数ã¯ã€ãƒªãƒ³ã‚¯å…ˆã¨ã—ã¦æŒ‡å®šã™ã‚‹ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部ドキュメントをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®çµ¶å¯¾URLã¾ãŸã¯ç›¸å¯¾URLã§ã™ã€‚指定ã—ãŸ\fIjavadoc\fRコマンドã®å®Ÿè¡Œã§ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã—ã¦è¤‡æ•°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚
+.sp
+ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«package\-listファイルãŒå­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(存在ã—ãªã„å ´åˆã¯ã€\fI\-linkoffline\fRオプションを使用ã—ã¾ã™)。\fIjavadoc\fRコマンドã¯ã€package\-listファイルã‹ã‚‰ãƒ‘ッケージåを読ã¿å–ã£ãŸå¾Œã€ãã®URLã§ã“れらã®ãƒ‘ッケージã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã€\fIextdocURL\fRã®å€¤ãŒã€ä½œæˆã•ã‚ŒãŸ\fI<A HREF>\fRリンク内ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fIextdocURL\fRã¯ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ãªãディレクトリã¸ã®URLã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIextdocURL\fRã«çµ¶å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’ä»»æ„ã®Webサイト上ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚相対ä½ç½®ã¸ãƒªãƒ³ã‚¯ã™ã‚‹ã®ã¿ã®å ´åˆã¯ç›¸å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã§ãã¾ã™ã€‚相対リンクを使用ã™ã‚‹å ´åˆã€æ¸¡ã™å€¤ã¯å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã€ãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„るパッケージをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(\fI\-d\fRオプションã§æŒ‡å®š)。絶対リンクを指定ã™ã‚‹å ´åˆã€é€šå¸¸ã€HTTPリンクを使用ã—ã¾ã™ã€‚ãŸã ã—ã€Webサーãƒãƒ¼ã‚’æŒãŸãªã„ファイル・システムã«ãƒªãƒ³ã‚¯ã™ã‚‹å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒªãƒ³ã‚¯ã‚’使用ã§ãã¾ã™ã€‚生æˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å…¨å“¡ãŒåŒã˜ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚’共有ã™ã‚‹å ´åˆã«ã®ã¿ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒªãƒ³ã‚¯ã‚’使用ã—ã¾ã™ã€‚ã©ã®å ´åˆã‚‚ã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã‚‚ã€URLãŒçµ¶å¯¾ã¾ãŸã¯ç›¸å¯¾ã®ã„ãšã‚Œã§ã‚‚ã€ã¾ãŸ\fIh\fR\fIttp:\fRã¾ãŸã¯\fIf\fR\fIile:\fRã®ã„ãšã‚Œã§ã‚‚ã€URLメモ: Uniform Resource Locators
+(http://www\&.ietf\&.org/rfc/rfc1738\&.txt)ã«æŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã¨ãŠã‚Šã€åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2727,8 +2727,8 @@
 .RE
 .\}
 .RE
-\-linkoffline¤ª¤è¤Ó\-link¥ª¥×¥·¥ç¥ó¤Î°ã¤¤.PP
-¼¡¤Î¾ì¹ç¤Ë¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\-linkofflineãŠã‚ˆã³\-linkオプションã®é•ã„.PP
+次ã®å ´åˆã«ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2738,7 +2738,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂХѥ¹¤ò»ÈÍѤ¹¤ë¾ì¹ç¡£
+外部APIドキュメントã¸ã®ç›¸å¯¾ãƒ‘スを使用ã™ã‚‹å ´åˆã€‚
 .RE
 .sp
 .RS 4
@@ -2749,14 +2749,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐURL¤ò»ÈÍѤ¹¤ë¾ì¹ç(¤½¤ÎURL¤ËÀܳ¤·¡¢Æɼè¤ê¤ò¹Ô¤¦¤³¤È¤¬¥·¥§¥ë¤Ë¤è¤Ã¤Æµö²Ä¤µ¤ì¤Æ¤¤¤ë¾ì¹ç)¡£
+外部APIドキュメントã¸ã®çµ¶å¯¾URLを使用ã™ã‚‹å ´åˆ(ãã®URLã«æŽ¥ç¶šã—ã€èª­å–ã‚Šã‚’è¡Œã†ã“ã¨ãŒã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦è¨±å¯ã•ã‚Œã¦ã„ã‚‹å ´åˆ)。
 .RE
 .PP
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐURL¤ò»ÈÍѤ¹¤ë¾ì¹ç(¤½¤ÎURL¤ËÀܳ¤·¡¢Æɼè¤ê¤ò¹Ô¤¦¤³¤È¤¬¥·¥§¥ë¤Ë¤è¤Ã¤Æµö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç)¤Ï\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¾õ¶·¤Ï¡¢¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤ÎÆ⦤«¤é¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤Î³°Â¦¤Ë¤¢¤ë¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤·¤è¤¦¤È¤¹¤ë¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£
+外部APIドキュメントã¸ã®çµ¶å¯¾URLを使用ã™ã‚‹å ´åˆ(ãã®URLã«æŽ¥ç¶šã—ã€èª­å–ã‚Šã‚’è¡Œã†ã“ã¨ãŒã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦è¨±å¯ã•ã‚Œã¦ã„ãªã„å ´åˆ)ã¯\fI\-linkoffline\fRオプションを使用ã—ã¾ã™ã€‚ã“ã®ã‚ˆã†ãªçŠ¶æ³ã¯ã€ãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®å†…å´ã‹ã‚‰ãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®å¤–å´ã«ã‚るドキュメントã«ãƒªãƒ³ã‚¯ã—よã†ã¨ã™ã‚‹å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐ¥ê¥ó¥¯
-.RS 4
-http://docs\&.oracle\&.com/javase/8/docs/api/index\&.html¤Ë¼¨¤¹¤è¤¦¤Ê¡¢\fIjava\&.lang\fR¡¢\fIjava\&.io\fR¤ª¤è¤Ó¤½¤Î¾¤ÎJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹
+\fBExample 1\fR, 外部ドキュメントã¸ã®çµ¶å¯¾ãƒªãƒ³ã‚¯
+.RS 4
+http://docs\&.oracle\&.com/javase/8/docs/api/index\&.htmlã«ç¤ºã™ã‚ˆã†ãªã€\fIjava\&.lang\fRã€\fIjava\&.io\fRãŠã‚ˆã³ãã®ä»–ã®Javaプラットフォーム・パッケージã«ãƒªãƒ³ã‚¯ã™ã‚‹å ´åˆã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™
 .sp
 .if n \{\
 .RS 4
@@ -2767,37 +2767,37 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢Java SE¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥ê¥ó¥¯»ý¤Ä\fIcom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¥¯¥é¥¹\fItrees\fRÆâ¤Î\fIObject\fR¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-sourcepath\fR¤ä\fI\-d\fR¤Ê¤É¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Java SEプラットフォーム・パッケージã¸ã®ãƒªãƒ³ã‚¯æŒã¤\fIcom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ã€ãŸã¨ãˆã°ã‚¯ãƒ©ã‚¹\fItrees\fR内ã®\fIObject\fRクラスã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fI\-sourcepath\fRã‚„\fI\-d\fRãªã©ã®ä»–ã®ã‚ªãƒ—ションã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
-\fBExample 2\fR, ³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂÐ¥ê¥ó¥¯
-.RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢2¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ê¡¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÊ£¿ô²ó¼Â¹Ô¤·¤¿·ë²ÌÀ¸À®¤µ¤ì¤¿¤â¤Î¤Ç¤¹¡£¤µ¤é¤Ë¡¢¤³¤ì¤é¤Î¥É¥­¥å¥á¥ó¥È¤ÏÁêÂХѥ¹¤Çʬ³ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢API¤Ç¤¢¤ë\fIcom\&.apipackage\fR¤È¡¢SPI(¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹)¤Ç¤¢¤ëc\fIom\&.spipackage\fR¤Ç¤¹¡£¥É¥­¥å¥á¥ó¥È¤Î³ÊǼÀè¤Ï¡¢docs/api/com/apipackage¤Èdocs/spi/com/spipackage¤Ç¤¹¡£API¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤Ï¤¹¤Ç¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Æ¡¢docs¤¬¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ë¾ì¹ç¡¢API¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤ò»ý¤ÄSPI¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fIjavadoc \-d \&./spi \-link \&.\&./api com\&.spipackage\fR
-.sp
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢°¸Àè¥Ç¥£¥ì¥¯¥È¥ê(docs/spi)¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£
-.RE
-Ãí°Õ.PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¡¼¥É¤«¤é¤Ï»²¾È¤µ¤ì¤Æ¤¤¤Æ¤â¡¢º£²ó¤Î\fIjavadoc\fR¤Î¼Â¹Ô¤Ç¤Ï¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥ê¥ó¥¯¤«¤éÍ­¸ú¤Ê¥Ú¡¼¥¸¤Ë°ÜÆ°¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢¤½¤ì¤é¤ÎHTML¥Ú¡¼¥¸¤¬¤¢¤ë¾ì½ê¤òÄ´¤Ù¡¢¤½¤Î¾ì½ê¤ò\fIextdocURL\fR¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤¬java\&.*¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó(http://docs\&.oracle\&.com)¤Ø¥ê¥ó¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¡¢¸½ºß¤Î¼Â¹Ô¤ÇÀ¸À®¤·¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤ÎAPI¤Ø¤Î¥ê¥ó¥¯¤Î¤ß¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤·¤Þ¤¹¡£\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï³°Éô»²¾È¤Î¤¿¤á¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤»¤ó¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¤Î¤«¤É¤¦¤«¡¢¤Þ¤¿¤Ï¤É¤³¤Ë¸ºß¤¹¤ë¤Î¤«¤¬¤ï¤«¤é¤Ê¤¤¤«¤é¤Ç¤¹¡£\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤ÎÊ£¿ô¤Î¾ì½ê¤Ë¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤â¤¦1¤Ä¤ÎÍÑÅӤϡ¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤Î´Ö¤Ë¥¯¥í¥¹¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤³¤È¤Ç¤¹¡£°ìÊý¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢Â¾Êý¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆÅټ¹Ԥ¹¤ë¤È¡¢Î¾¥»¥Ã¥È´Ö¤ËÁÐÊý¸þ¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
-¥¯¥é¥¹¤Î»²¾ÈÊýË¡.PP
-ɽ¼¨¤µ¤ì¤ë³°Éô»²¾È¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤Î¾ì¹ç(¤ª¤è¤Ó¤½¤Î¥Æ¥­¥¹¥È¡¦¥é¥Ù¥ë¤À¤±¤Ç¤Ï¤Ê¤¯)¡¢¥¯¥é¥¹¤Ï¼¡¤ÎÊýË¡¤Ç»²¾È¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥É¤ÎËÜÂΤǥ¯¥é¥¹¤ò»²¾È¤¹¤ë¤Î¤ß¤Ç¤Ï½½Ê¬¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fIimport\fRʸ¡¢Àë¸À¤Î¤¤¤º¤ì¤«¤Ç»²¾È¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤Ë¡¢¥¯¥é¥¹\fIjava\&.io\&.File\fR¤ò»²¾È¤¹¤ëÊýË¡¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fBExample 2\fR, 外部ドキュメントã¸ã®ç›¸å¯¾ãƒªãƒ³ã‚¯
+.RS 4
+ã“ã®ä¾‹ã§ã¯ã€2ã¤ã®ãƒ‘ッケージãŒã‚ã‚Šã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯\fIjavadoc\fRコマンドを複数回実行ã—ãŸçµæžœç”Ÿæˆã•ã‚ŒãŸã‚‚ã®ã§ã™ã€‚ã•ã‚‰ã«ã€ã“れらã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ç›¸å¯¾ãƒ‘スã§åˆ†å‰²ã•ã‚Œã¦ã„ã¾ã™ã€‚パッケージã¯ã€APIã§ã‚ã‚‹\fIcom\&.apipackage\fRã¨ã€SPI(サービス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹)ã§ã‚ã‚‹c\fIom\&.spipackage\fRã§ã™ã€‚ドキュメントã®æ ¼ç´å…ˆã¯ã€docs/api/com/apipackageã¨docs/spi/com/spipackageã§ã™ã€‚APIパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã™ã§ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¦ã€docsãŒç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã‚ã‚‹å ´åˆã€APIドキュメントã¸ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤SPIパッケージをドキュメント化ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚\fIjavadoc \-d \&./spi \-link \&.\&./api com\&.spipackage\fR
+.sp
+\fI\-link\fRオプションã¯ã€å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(docs/spi)ã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã§ã™ã€‚
+.RE
+注æ„.PP
+\fI\-link\fRオプションを使用ã™ã‚‹ã¨ã€ã‚³ãƒ¼ãƒ‰ã‹ã‚‰ã¯å‚ç…§ã•ã‚Œã¦ã„ã¦ã‚‚ã€ä»Šå›žã®\fIjavadoc\fRã®å®Ÿè¡Œã§ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„クラスã«ãƒªãƒ³ã‚¯ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚リンクã‹ã‚‰æœ‰åŠ¹ãªãƒšãƒ¼ã‚¸ã«ç§»å‹•ã§ãるよã†ã«ã™ã‚‹ã«ã¯ã€ãれらã®HTMLページãŒã‚る場所を調ã¹ã€ãã®å ´æ‰€ã‚’\fIextdocURL\fRã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãŒjava\&.*ドキュメンテーション(http://docs\&.oracle\&.com)ã¸ãƒªãƒ³ã‚¯ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã§ã€ç¾åœ¨ã®å®Ÿè¡Œã§ç”Ÿæˆã—ã¦ã„るドキュメンテーション内ã®APIã¸ã®ãƒªãƒ³ã‚¯ã®ã¿ã‚’作æˆã™ã‚‹å ´åˆã«ã¯ã€\fI\-link\fRオプションをçœç•¥ã—ã¾ã™ã€‚\fI\-link\fRオプションを指定ã—ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯å¤–部å‚ç…§ã®ãŸã‚ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã›ã‚“。ドキュメンテーションãŒå­˜åœ¨ã™ã‚‹ã®ã‹ã©ã†ã‹ã€ã¾ãŸã¯ã©ã“ã«å­˜åœ¨ã™ã‚‹ã®ã‹ãŒã‚ã‹ã‚‰ãªã„ã‹ã‚‰ã§ã™ã€‚\fI\-link\fRオプションã§ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³å†…ã®è¤‡æ•°ã®å ´æ‰€ã«ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。もã†1ã¤ã®ç”¨é€”ã¯ã€ãƒ‘ッケージ・セットã®é–“ã«ã‚¯ãƒ­ã‚¹ãƒªãƒ³ã‚¯ã‚’作æˆã™ã‚‹ã“ã¨ã§ã™ã€‚一方ã®ãƒ‘ッケージ・セットã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã—ãŸå¾Œã€ä»–æ–¹ã®ãƒ‘ッケージ・セットã«å¯¾ã—ã¦\fIjavadoc\fRコマンドをå†åº¦å®Ÿè¡Œã™ã‚‹ã¨ã€ä¸¡ã‚»ãƒƒãƒˆé–“ã«åŒæ–¹å‘ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚
+クラスã®å‚照方法.PP
+表示ã•ã‚Œã‚‹å¤–部å‚照クラスã¸ã®ãƒªãƒ³ã‚¯ã®å ´åˆ(ãŠã‚ˆã³ãã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ©ãƒ™ãƒ«ã ã‘ã§ã¯ãªã)ã€ã‚¯ãƒ©ã‚¹ã¯æ¬¡ã®æ–¹æ³•ã§å‚ç…§ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚メソッドã®æœ¬ä½“ã§ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã™ã‚‹ã®ã¿ã§ã¯å分ã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fIimport\fRæ–‡ã€å®£è¨€ã®ã„ãšã‚Œã‹ã§å‚ç…§ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã«ã€ã‚¯ãƒ©ã‚¹\fIjava\&.io\&.File\fRã‚’å‚ç…§ã™ã‚‹æ–¹æ³•ã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥¿¥¤¥×¤Îimportʸ¤Î¾ì¹ç¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ë¤è¤ë¥¤¥ó¥Ý¡¼¥È¡¢Ì¾Á°¤Ë¤è¤ëÌÀ¼¨Åª¤Ê¥¤¥ó¥Ý¡¼¥È¡¢¤Þ¤¿¤Ï\fIjava\&.lang\&.*\fR¤ËÂФ¹¤ë¼«Æ°¥¤¥ó¥Ý¡¼¥È¡£
+ã™ã¹ã¦ã®ã‚¿ã‚¤ãƒ—ã®importæ–‡ã®å ´åˆã€‚ワイルドカードã«ã‚ˆã‚‹ã‚¤ãƒ³ãƒãƒ¼ãƒˆã€åå‰ã«ã‚ˆã‚‹æ˜Žç¤ºçš„ãªã‚¤ãƒ³ãƒãƒ¼ãƒˆã€ã¾ãŸã¯\fIjava\&.lang\&.*\fRã«å¯¾ã™ã‚‹è‡ªå‹•ã‚¤ãƒ³ãƒãƒ¼ãƒˆã€‚
 .PP
-Java SE 1\&.3\&.\fIn\fR¤ª¤è¤Ó1\&.2\&.\fIn\fR¤Ç¤Ï¡¢Ì¾Á°¤Ë¤è¤ëÌÀ¼¨Åª¤Ê¥¤¥ó¥Ý¡¼¥È¤Î¤ßµ¡Ç½¤·¤Þ¤¹¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ë¤è¤ë\fIimport\fRʸ¤â¡¢\fIimport java\&.lang\&.*\fR¤Î¼«Æ°¥¤¥ó¥Ý¡¼¥È¤âµ¡Ç½¤·¤Þ¤»¤ó¡£
+Java SE 1\&.3\&.\fIn\fRãŠã‚ˆã³1\&.2\&.\fIn\fRã§ã¯ã€åå‰ã«ã‚ˆã‚‹æ˜Žç¤ºçš„ãªã‚¤ãƒ³ãƒãƒ¼ãƒˆã®ã¿æ©Ÿèƒ½ã—ã¾ã™ã€‚ワイルドカードã«ã‚ˆã‚‹\fIimport\fR文もã€\fIimport java\&.lang\&.*\fRã®è‡ªå‹•ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚‚機能ã—ã¾ã›ã‚“。
 .PP
-Àë¸À¤Î¾ì¹ç:
+宣言ã®å ´åˆ:
 \fIvoid mymethod(File f) {}\fR
 .PP
-»²¾È¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥Õ¥£¡¼¥ë¥É¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÌá¤ê·¿¤Þ¤¿¤Ï¥Ñ¥é¥á¡¼¥¿¡¦¥¿¥¤¥×¡¢¤¢¤ë¤¤¤Ï¼ÂÁõ¡¢³ÈÄ¥¤Þ¤¿¤Ï¥¹¥í¡¼Ê¸¤Ë¤¢¤ê¤Þ¤¹¡£
+å‚ç…§ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®æˆ»ã‚Šåž‹ã¾ãŸã¯ãƒ‘ラメータ・タイプã€ã‚ã‚‹ã„ã¯å®Ÿè£…ã€æ‹¡å¼µã¾ãŸã¯ã‚¹ãƒ­ãƒ¼æ–‡ã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-½ÅÍפʷë²Ì¤È¤·¤Æ¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤â¡¢¤³¤ÎÀ©¸Â¤Î¤¿¤á¤Ë¸í¤Ã¤Æɽ¼¨¤µ¤ì¤Ê¤¤¥ê¥ó¥¯¤¬Â¿¿ôȯÀ¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥È¤Ï¥Ï¥¤¥Ñ¡¼¥Æ¥­¥¹¥È¡¦¥ê¥ó¥¯¤¬ÉÕ¤±¤é¤ì¤º¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¥ê¥ó¥¯¤¬É½¼¨¤¹¤ë·Ù¹ð¤«¤é¡¢¤³¤ì¤é¤Î¥ê¥ó¥¯¤òǧ¼±¤Ç¤­¤Þ¤¹¡£¥¯¥é¥¹¤òÀµ¤·¤¯»²¾È¤·¡¢¤½¤ì¤Ë¤è¤Ã¤Æ¥ê¥ó¥¯¤òÄɲ乤뤿¤á¤ÎºÇ¤â´Êñ¤ÊÊýË¡¤Ï¤½¤Î¥¯¥é¥¹¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤Ç¤¹¡£
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È.PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ëpackage\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ë»ØÄꤷ¤¿URL¤Ë¸ºß¤·¤Æ¤¤¤ë¤³¤È¤¬É¬ÍפǤ¹¡£package\-list¥Õ¥¡¥¤¥ë¤Ï¡¢¤½¤Î¾ì½ê¤Ë¤¢¤ë¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤Î¥ê¥¹¥È¤¬Æþ¤Ã¤¿Ã±½ã¤Ê¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£Á°½Ò¤ÎÎã¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤷ¤¿URL¤Çpackage\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÆɤ߼è¤Ã¤Æ¡¢¤½¤ÎURL¤Ç¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£
+é‡è¦ãªçµæžœã¨ã—ã¦ã€\fI\-link\fRオプションを使用ã—ã¦ã‚‚ã€ã“ã®åˆ¶é™ã®ãŸã‚ã«èª¤ã£ã¦è¡¨ç¤ºã•ã‚Œãªã„リンクãŒå¤šæ•°ç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚テキストã¯ãƒã‚¤ãƒ‘ーテキスト・リンクãŒä»˜ã‘られãšã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚リンクãŒè¡¨ç¤ºã™ã‚‹è­¦å‘Šã‹ã‚‰ã€ã“れらã®ãƒªãƒ³ã‚¯ã‚’èªè­˜ã§ãã¾ã™ã€‚クラスを正ã—ãå‚ç…§ã—ã€ãã‚Œã«ã‚ˆã£ã¦ãƒªãƒ³ã‚¯ã‚’追加ã™ã‚‹ãŸã‚ã®æœ€ã‚‚ç°¡å˜ãªæ–¹æ³•ã¯ãã®ã‚¯ãƒ©ã‚¹ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã§ã™ã€‚
+パッケージ・リスト.PP
+\fI\-link\fRオプションã«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€\fI\-link\fRオプションã«æŒ‡å®šã—ãŸURLã«å­˜åœ¨ã—ã¦ã„ã‚‹ã“ã¨ãŒå¿…è¦ã§ã™ã€‚package\-listファイルã¯ã€ãã®å ´æ‰€ã«ã‚るドキュメント化ã•ã‚ŒãŸãƒ‘ッケージã®åå‰ã®ãƒªã‚¹ãƒˆãŒå…¥ã£ãŸå˜ç´”ãªãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚å‰è¿°ã®ä¾‹ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã—ãŸURLã§package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã€ãƒ‘ッケージåを読ã¿å–ã£ã¦ã€ãã®URLã§ã“れらã®ãƒ‘ッケージã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢Java SE API¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ï
-http://docs\&.oracle\&.com/javase/8/docs/api/package\-list¤Ë¤¢¤ê¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€Java SE APIã®ãƒ‘ッケージ・リストã¯
+http://docs\&.oracle\&.com/javase/8/docs/api/package\-listã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ï¼¡¤Î¤è¤¦¤ÊÆâÍƤǻϤޤäƤ¤¤Þ¤¹¡£
+ã“ã®ãƒ‘ッケージ・リストã¯æ¬¡ã®ã‚ˆã†ãªå†…容ã§å§‹ã¾ã£ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2816,20 +2816,20 @@
 .RE
 .\}
 .PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fIjavadoc\fR¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢³°Éô»²¾È¥¯¥é¥¹¤Ë°¤¹¤ë̾Á°¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î̾Á°¤ò¥ê¥ó¥¯¤Ê¤·¤Ç½ÐÎϤ·¤Þ¤¹¡£°ìÊý¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿\fIextdocURL\fR¤Î¾ì½ê¤Ë¤¢¤ëpackage\-list¥Õ¥¡¥¤¥ë¤Ç¤½¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¸¡º÷¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬¸«¤Ä¤«¤ë¤È¡¢\fIextdocURL\fR¤¬Ì¾Á°¤ÎÁ°¤ËÉղ䵤ì¤Þ¤¹¡£
+\fI\-link\fRオプションを指定ã›ãšã«\fIjavadoc\fRを実行ã—ãŸå ´åˆã€å¤–部å‚照クラスã«å±žã™ã‚‹åå‰ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®åå‰ã‚’リンクãªã—ã§å‡ºåŠ›ã—ã¾ã™ã€‚一方ã€\fI\-link\fRオプションを指定ã—ãŸå ´åˆã€\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸ\fIextdocURL\fRã®å ´æ‰€ã«ã‚ã‚‹package\-listファイルã§ãã®ãƒ‘ッケージåを検索ã—ã¾ã™ã€‚パッケージåãŒè¦‹ã¤ã‹ã‚‹ã¨ã€\fIextdocURL\fRãŒåå‰ã®å‰ã«ä»˜åŠ ã•ã‚Œã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥ê¥ó¥¯¤¬Àµ¤·¤¯µ¡Ç½¤¹¤ë¤¿¤á¤Ë¤Ï¡¢³°Éô»²¾È¤Î¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È¤¬¡¢»ØÄꤷ¤¿URL¤Ë¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿package\-list¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¤Î¤ß¤ò¥Á¥§¥Ã¥¯¤·¡¢¤³¤ì¤é¤Î¥Ú¡¼¥¸¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¤Ï¥Á¥§¥Ã¥¯¤·¤Þ¤»¤ó¡£
-Ê£¿ô¤Î¥ê¥ó¥¯.PP
-Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢Ç¤°Õ¤Î¿ô¤Î³°ÉôÀ¸À®¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£Javadoc 1\&.2¤Ë¤Ï¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Ê¤¤¤È¤¤¤¦´ûÃΤÎÉÔ¶ñ¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ÏJavadoc 1\&.2\&.2¤Ç½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£¥ê¥ó¥¯¤¹¤ë³°Éô¥É¥­¥å¥á¥ó¥È¤´¤È¤Ë¡¢¼¡¤Î¤è¤¦¤ËÊÌ¡¹¤Î¥ê¥ó¥¯¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fIjavadoc \-link extdocURL1 \-link extdocURL2 \&.\&.\&. \-link extdocURLn com\&.mypackage\fR
-\fIextdocURL1\fR¡¢\fIextdocURL2\fR¡¢\&.\fI\&.\&. extdocURLn\fR¤Ï¡¢¤½¤ì¤¾¤ì³°Éô¥É¥­¥å¥á¥ó¥È¤Î¥ë¡¼¥È¤ò»Ø¤·¡¢³Æ¥ë¡¼¥È¤Ë¤Ï¡¢package\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬Æþ¤Ã¤Æ¤¤¤Þ¤¹¡£
-¥¯¥í¥¹¥ê¥ó¥¯.PP
-°ÊÁ°¤ËºîÀ®¤µ¤ì¤¿Ê£¿ô¤Î¥É¥­¥å¥á¥ó¥È¤ò¥¯¥í¥¹¥ê¥ó¥¯¤¹¤ë¾ì¹ç¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¤¬É¬Íפˤʤ뤳¤È¤¬¤¢¤ê¤Þ¤¹¡£¤É¤Î¥É¥­¥å¥á¥ó¥È¤Ë¤Ä¤¤¤Æ¤âpackage\-list¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë»þÅÀ¤Ç¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤Îpackage\-list¤Ï¤Þ¤À¸ºß¤·¤Æ¤¤¤Þ¤»¤ó¡£¤·¤¿¤¬¤Ã¤Æ¡¢³°Éô¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤òÀ¸À®¤·¤¿¸å¤Ç¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Ê¤ª¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒªãƒ³ã‚¯ãŒæ­£ã—ã機能ã™ã‚‹ãŸã‚ã«ã¯ã€å¤–部å‚ç…§ã®ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€æŒ‡å®šã—ãŸURLã«å­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸpackage\-listãŒå­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã®ã¿ã‚’ãƒã‚§ãƒƒã‚¯ã—ã€ã“れらã®ãƒšãƒ¼ã‚¸ãŒå­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã¯ãƒã‚§ãƒƒã‚¯ã—ã¾ã›ã‚“。
+複数ã®ãƒªãƒ³ã‚¯.PP
+複数ã®\fI\-link\fRオプションを指定ã™ã‚‹ã¨ã€ä»»æ„ã®æ•°ã®å¤–部生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚Javadoc 1\&.2ã«ã¯ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã§ããªã„ã¨ã„ã†æ—¢çŸ¥ã®ä¸å…·åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯Javadoc 1\&.2\&.2ã§ä¿®æ­£ã•ã‚Œã¾ã—ãŸã€‚リンクã™ã‚‹å¤–部ドキュメントã”ã¨ã«ã€æ¬¡ã®ã‚ˆã†ã«åˆ¥ã€…ã®ãƒªãƒ³ã‚¯ãƒ»ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚\fIjavadoc \-link extdocURL1 \-link extdocURL2 \&.\&.\&. \-link extdocURLn com\&.mypackage\fR
+\fIextdocURL1\fRã€\fIextdocURL2\fRã€\&.\fI\&.\&. extdocURLn\fRã¯ã€ãã‚Œãžã‚Œå¤–部ドキュメントã®ãƒ«ãƒ¼ãƒˆã‚’指ã—ã€å„ルートã«ã¯ã€package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå…¥ã£ã¦ã„ã¾ã™ã€‚
+クロスリンク.PP
+以å‰ã«ä½œæˆã•ã‚ŒãŸè¤‡æ•°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’クロスリンクã™ã‚‹å ´åˆã€ãƒ–ートストラップãŒå¿…è¦ã«ãªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ã©ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¤ã„ã¦ã‚‚package\-listãŒå­˜åœ¨ã—ã¦ã„ãªã„å ´åˆã¯ã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã™ã‚‹æ™‚点ã§ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®package\-listã¯ã¾ã å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“。ã—ãŸãŒã£ã¦ã€å¤–部リンクを作æˆã™ã‚‹ã«ã¯ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãŸå¾Œã§ã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãªãŠã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤³¤Î¾ì¹ç¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥ÈÀ¸À®¤ÎÌÜŪ¤Ï¡¢package\-list¤òºîÀ®¤¹¤ë¤³¤È¤Ç¤¹(¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÇÄ°®¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¼êÆ°¤ÇºîÀ®¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó)¡£¼¡¤Ë¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤È¤½¤Î³°Éô¥ê¥ó¥¯¤òÀ¸À®¤·¤Þ¤¹¡£É¬Íפʳ°Éô¤Îpackage\-list¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤«¤é·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ã“ã®å ´åˆã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”Ÿæˆã®ç›®çš„ã¯ã€package\-listを作æˆã™ã‚‹ã“ã¨ã§ã™(パッケージåを把æ¡ã—ã¦ã„ã‚‹å ´åˆã¯æ‰‹å‹•ã§ä½œæˆã—ã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“)。次ã«ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¨ãã®å¤–部リンクを生æˆã—ã¾ã™ã€‚å¿…è¦ãªå¤–部ã®package\-listファイルãŒå­˜åœ¨ã—ãªã„å ´åˆã¯ã€\fIjavadoc\fRコマンドã‹ã‚‰è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
 \-linkoffline \fIextdocURL packagelistLoc\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Î¥Ð¥ê¥¨¡¼¥·¥ç¥ó¤Ç¤¹¡£Î¾Êý¤È¤â¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô»²¾È¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬WebÀܳ¤ò»ÈÍѤ·¤Æ¥É¥­¥å¥á¥ó¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤È¤­¡¢Web¾å¤Î¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fRo\fIffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£³°Éô¥É¥­¥å¥á¥ó¥È¤Îpackage\-list¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤È¤­¡¢¤Þ¤¿¤Ï¤³¤Î¥Õ¥¡¥¤¥ë¤¬\fIextdocURL\fR¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Ë¤Ï¸ºß¤»¤º¡¢\fIpackageListLoc\fR¤Ç»ØÄê¤Ç¤­¤ëÊ̤ξì½ê(Ä̾ï¥í¡¼¥«¥ë)¤Ë¸ºß¤¹¤ë¤È¤­¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fIextdocURL\fR¤ËWorld Wide Web¾å¤Ç¤·¤«¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®»þ¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Web¤ËÀܳ¤¹¤ëɬÍפ¬¤¢¤ë¤È¤¤¤¦À©Ì󤬤ʤ¯¤Ê¤ê¤Þ¤¹¡£¤â¤¦1¤Ä¤ÎÍÑÅӤϡ¢¥É¥­¥å¥á¥ó¥È¤ò¹¹¿·¤¹¤ë¤¿¤á¤Î²óÈòºö¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢Êѹ¹¤·¤¿°ìÉô¤Î¥Ñ¥Ã¥±¡¼¥¸¤ËÂФ·¤Æ¤Î¤ß\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆÅټ¹Ԥ·¤Æ¡¢¹¹¿·¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢¥ª¥ê¥¸¥Ê¥ë¤Î¥»¥Ã¥È¤ËÁÞÆþ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Ï°ú¿ô¤ò2¤Ä¼è¤ê¤Þ¤¹¡£Âè1°ú¿ô¤Ï\fI<a href>\fR¥ê¥ó¥¯¤ËÁȤ߹þ¤Þ¤ì¤ëʸ»úÎó¤ò»ØÄꤷ¡¢Âè2°ú¿ô¤Ïpackage\-list¤Î¸¡º÷¾ì½ê¤ò\fI\-linkoffline\fR¤ËÅÁ¤¨¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-link\fRオプションã®ãƒãƒªã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã§ã™ã€‚両方ã¨ã‚‚ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部å‚照クラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドãŒWeb接続を使用ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã¨ãã€Web上ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ãƒªãƒ³ã‚¯ã™ã‚‹ã«ã¯ã€\fI\-link\fRo\fIffline\fRオプションを使用ã—ã¾ã™ã€‚外部ドキュメントã®package\-listファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã¨ãã€ã¾ãŸã¯ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIextdocURL\fRã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã«ã¯å­˜åœ¨ã›ãšã€\fIpackageListLoc\fRã§æŒ‡å®šã§ãる別ã®å ´æ‰€(通常ローカル)ã«å­˜åœ¨ã™ã‚‹ã¨ãã€\fI\-linkoffline\fRオプションを使用ã—ã¾ã™ã€‚\fIextdocURL\fRã«World Wide Web上ã§ã—ã‹ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„å ´åˆã¯ã€\fI\-linkoffline\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆæ™‚ã«\fIjavadoc\fRコマンドãŒWebã«æŽ¥ç¶šã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ã„ã†åˆ¶ç´„ãŒãªããªã‚Šã¾ã™ã€‚ã‚‚ã†1ã¤ã®ç”¨é€”ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’æ›´æ–°ã™ã‚‹ãŸã‚ã®å›žé¿ç­–ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã§ã™ã€‚パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã—ãŸå¾Œã€å¤‰æ›´ã—ãŸä¸€éƒ¨ã®ãƒ‘ッケージã«å¯¾ã—ã¦ã®ã¿\fIjavadoc\fRコマンドをå†åº¦å®Ÿè¡Œã—ã¦ã€æ›´æ–°ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ã‚ªãƒªã‚¸ãƒŠãƒ«ã®ã‚»ãƒƒãƒˆã«æŒ¿å…¥ã§ãるよã†ã«ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-linkoffline\fRオプションã¯å¼•æ•°ã‚’2ã¤å–ã‚Šã¾ã™ã€‚第1引数ã¯\fI<a href>\fRリンクã«çµ„ã¿è¾¼ã¾ã‚Œã‚‹æ–‡å­—列を指定ã—ã€ç¬¬2引数ã¯package\-listã®æ¤œç´¢å ´æ‰€ã‚’\fI\-linkoffline\fRã«ä¼ãˆã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2839,7 +2839,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIextdocURL\fR¤ÎÃͤϡ¢¥ê¥ó¥¯Àè¤È¤·¤Æ»ØÄꤹ¤ë¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô¥É¥­¥å¥á¥ó¥È¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀäÂÐURL¤Þ¤¿¤ÏÁêÂÐURL¤Ç¤¹¡£ÁêÂÐURL¤Î¾ì¹ç¡¢Ãͤϡ¢À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê(\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄê)¤«¤é¥ê¥ó¥¯Àè¤È¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¤Ø¤ÎÁêÂХѥ¹¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Î\fIextdocURL\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIextdocURL\fRã®å€¤ã¯ã€ãƒªãƒ³ã‚¯å…ˆã¨ã—ã¦æŒ‡å®šã™ã‚‹ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部ドキュメントをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®çµ¶å¯¾URLã¾ãŸã¯ç›¸å¯¾URLã§ã™ã€‚相対URLã®å ´åˆã€å€¤ã¯ã€ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\fI\-d\fRオプションã§æŒ‡å®š)ã‹ã‚‰ãƒªãƒ³ã‚¯å…ˆã¨ãªã‚‹ãƒ‘ッケージã®ãƒ«ãƒ¼ãƒˆã¸ã®ç›¸å¯¾ãƒ‘スã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚詳細ã¯ã€\fI\-link\fRオプションã®\fIextdocURL\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -2850,16 +2850,16 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackagelistLoc\fR¤ÎÃͤϡ¢³°Éô¥É¥­¥å¥á¥ó¥È¤Îpackage\-list¥Õ¥¡¥¤¥ë¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Î¥Ñ¥¹¤Þ¤¿¤ÏURL¤Ç¤¹¡£¤³¤ì¤Ï¡¢URL (http:¤Þ¤¿¤Ïfile:)¤Ç¤â¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢ÀäÂХѥ¹¤ÈÁêÂХѥ¹¤Î¤É¤Á¤é¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£ÁêÂХѥ¹¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤È¤·¤Æ»ØÄꤷ¤Þ¤¹¡£package\-list¥Õ¥¡¥¤¥ë̾¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
-.sp
-»ØÄꤷ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ç¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Javadoc 1\&.2\&.2¤è¤êÁ°¤Ç¤Ï¡¢\fI\-linkfile\fR¥ª¥×¥·¥ç¥ó¤Ï1²ó¤·¤«»ØÄê¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£
-.RE
-.RE
-³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐ¥ê¥ó¥¯.PP
-http://docs\&.oracle\&.com/javase/8/docs/api/index\&.html¤Ë¼¨¤¹¤è¤¦¤Ê¡¢\fIjava\&.lang\fR¡¢
-\fIjava\&.io\fR¤ª¤è¤Ó¤½¤Î¾¤ÎJava SE¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+\fIpackagelistLoc\fRã®å€¤ã¯ã€å¤–部ドキュメントã®package\-listファイルをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ãƒ‘スã¾ãŸã¯URLã§ã™ã€‚ã“ã‚Œã¯ã€URL (http:ã¾ãŸã¯file:)ã§ã‚‚ファイル・パスã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。ã¾ãŸã€çµ¶å¯¾ãƒ‘スã¨ç›¸å¯¾ãƒ‘スã®ã©ã¡ã‚‰ã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。相対パスã®å ´åˆã¯ã€\fIjavadoc\fRコマンドãŒå®Ÿè¡Œã•ã‚Œã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã¨ã—ã¦æŒ‡å®šã—ã¾ã™ã€‚package\-listファイルåã‚’å«ã‚ãªã„ã§ãã ã•ã„。
+.sp
+指定ã—ãŸ\fIjavadoc\fRコマンドã®å®Ÿè¡Œã§ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã§ãã¾ã™ã€‚Javadoc 1\&.2\&.2よりå‰ã§ã¯ã€\fI\-linkfile\fRオプションã¯1回ã—ã‹æŒ‡å®šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
+.RE
+.RE
+外部ドキュメントã¸ã®çµ¶å¯¾ãƒªãƒ³ã‚¯.PP
+http://docs\&.oracle\&.com/javase/8/docs/api/index\&.htmlã«ç¤ºã™ã‚ˆã†ãªã€\fIjava\&.lang\fRã€
+\fIjava\&.io\fRãŠã‚ˆã³ãã®ä»–ã®Java SEパッケージã«ãƒªãƒ³ã‚¯ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤¿¤À¤·¡¢¥·¥§¥ë¤Ë¤ÏWeb¥¢¥¯¥»¥¹¸¢¤¬¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+ãŸã ã—ã€ã‚·ã‚§ãƒ«ã«ã¯Webアクセス権ãŒã‚ã‚Šã¾ã›ã‚“。ã“ã®å ´åˆã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2869,7 +2869,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¥Ö¥é¥¦¥¶¤Çpackage\-list¥Õ¥¡¥¤¥ë¤ò³«¤­¤Þ¤¹(http://docs\&.oracle\&.com/javase/8/docs/api/package\-list)
+ブラウザã§package\-listファイルを開ãã¾ã™(http://docs\&.oracle\&.com/javase/8/docs/api/package\-list)
 .RE
 .sp
 .RS 4
@@ -2880,10 +2880,10 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥«¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤·¡¢¤³¤Î¥í¡¼¥«¥ë¡¦¥³¥Ô¡¼¤òÂè2°ú¿ô\fIpackagelistLoc\fR¤Ç»ØÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¥«¥ì¥ó¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê(\&.)¤ËÊݸ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ファイルをローカル・ディレクトリã«ä¿å­˜ã—ã€ã“ã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚³ãƒ”ーを第2引数\fIpackagelistLoc\fRã§æŒ‡å®šã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‘ッケージ・リスト・ファイルã¯ã‚«ãƒ¬ãƒ³ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\&.)ã«ä¿å­˜ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Java SE¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥ê¥ó¥¯¤ò»ý¤Äc\fIom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¥¯¥é¥¹\fItrees\fRÆâ¤Î\fIObject\fR¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-sourcepath\fR¤Ê¤É¡¢Â¾¤ÎɬÍפʥª¥×¥·¥ç¥ó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Java SEプラットフォーム・パッケージã¸ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤c\fIom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ã€ãŸã¨ãˆã°ã‚¯ãƒ©ã‚¹\fItrees\fR内ã®\fIObject\fRクラスã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fI\-sourcepath\fRãªã©ã€ä»–ã®å¿…è¦ãªã‚ªãƒ—ションã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -2894,12 +2894,12 @@
 .if n \{\
 .RE
 .\}
-³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂÐ¥ê¥ó¥¯.PP
-\fI\-linkoffline\fR¤òÁêÂХѥ¹¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¤³¤È¤Ï¤¢¤Þ¤ê¤¢¤ê¤Þ¤»¤ó¡£Íýͳ¤Ïñ½ã¤Ç¡¢Ä̾ï¤Ï\fI\-link\fR¤Ç´Ö¤Ë¹ç¤¦¤«¤é¤Ç¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢Ä̾package\-list¥Õ¥¡¥¤¥ë¤Ï¥í¡¼¥«¥ë¤Ç¡¢ÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¥ê¥ó¥¯Àè¤Î¥Õ¥¡¥¤¥ë¤â¥í¡¼¥«¥ë¤Ê¤Î¤Ç¡¢Ä̾ï¤Ï\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Î2¤Ä¤Î°ú¿ô¤Ë¡¢°Û¤Ê¤ë¥Ñ¥¹¤ò»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£2¤Ä¤Î°ú¿ô¤¬Æ±°ì¤Î¾ì¹ç¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£
-package\-list¥Õ¥¡¥¤¥ë¤Î¼êÆ°¤Ç¤ÎºîÀ®.PP
-package\-list¥Õ¥¡¥¤¥ë¤¬¤Þ¤À¸ºß¤·¤Ê¤¯¤Æ¤â¡¢¥É¥­¥å¥á¥ó¥È¤Î¥ê¥ó¥¯Àè¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤ò¼êÆ°¤ÇºîÀ®¤·¡¢\fIpackagelistLoc\fR¤Ç¤½¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIcom\&.apipackage\fR¤¬ºÇ½é¤ËÀ¸À®¤µ¤ì¤¿»þÅÀ¤Ç\fIcom\&.spipackage\fR¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤¬Â¸ºß¤·¤Ê¤¤¤È¤¤¤¦Á°½Ð¤Î¥±¡¼¥¹¤¬°ìÎã¤È¤·¤Æµó¤²¤é¤ì¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¤ï¤«¤Ã¤Æ¤¤¤ë¤â¤Î¤Î¡¢¤Þ¤À¸ø³«¤µ¤ì¤Æ¤¤¤Ê¤¤¡¢¿·¤·¤¤³°Éô¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤¹¤ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¤Þ¤¿¡¢package\-list¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤¤Javadoc 1\&.0¤Þ¤¿¤Ï1\&.1¤ÇÀ¸À®¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸ÍѤËpackage\-list¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤â¡¢¤³¤ÎÊýË¡¤¬»ÈÍѤǤ­¤Þ¤¹¡£Æ±Íͤˡ¢2¤Ä¤Î´ë¶È¤¬Ì¤¸ø³«¤Îpackage\-list¥Õ¥¡¥¤¥ë¤ò¶¦Í­¤Ç¤­¤ë¤¿¤á¡¢¥¯¥í¥¹¥ê¥ó¥¯¤òÀßÄꤷ¤¿¥É¥­¥å¥á¥ó¥È¤òƱ»þ¤Ë¥ê¥ê¡¼¥¹¤¹¤ë¤³¤È¤â²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
-Ê£¿ô¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯.PP
-»²¾ÈÀè¤ÎÀ¸À®¥É¥­¥å¥á¥ó¥È¤´¤È¤Ë1²ó¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+外部ドキュメントã¸ã®ç›¸å¯¾ãƒªãƒ³ã‚¯.PP
+\fI\-linkoffline\fRを相対パスã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã‚ã¾ã‚Šã‚ã‚Šã¾ã›ã‚“。ç†ç”±ã¯å˜ç´”ã§ã€é€šå¸¸ã¯\fI\-link\fRã§é–“ã«åˆã†ã‹ã‚‰ã§ã™ã€‚\fI\-linkoffline\fRオプションを使用ã™ã‚‹å ´åˆã€é€šå¸¸ã€package\-listファイルã¯ãƒ­ãƒ¼ã‚«ãƒ«ã§ã€ç›¸å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã™ã‚‹å ´åˆã¯ãƒªãƒ³ã‚¯å…ˆã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ローカルãªã®ã§ã€é€šå¸¸ã¯\fI\-linkoffline\fRオプションã®2ã¤ã®å¼•æ•°ã«ã€ç•°ãªã‚‹ãƒ‘スを指定ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。2ã¤ã®å¼•æ•°ãŒåŒä¸€ã®å ´åˆã€\fI\-link\fRオプションを使用ã§ãã¾ã™ã€‚
+package\-listファイルã®æ‰‹å‹•ã§ã®ä½œæˆ.PP
+package\-listファイルãŒã¾ã å­˜åœ¨ã—ãªãã¦ã‚‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ãƒªãƒ³ã‚¯å…ˆã®ãƒ‘ッケージåãŒã‚ã‹ã£ã¦ã„ã‚‹å ´åˆã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ”ーを手動ã§ä½œæˆã—ã€\fIpackagelistLoc\fRã§ãã®ãƒ‘スを指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIcom\&.apipackage\fRãŒæœ€åˆã«ç”Ÿæˆã•ã‚ŒãŸæ™‚点ã§\fIcom\&.spipackage\fRã®ãƒ‘ッケージ・リストãŒå­˜åœ¨ã—ãªã„ã¨ã„ã†å‰å‡ºã®ã‚±ãƒ¼ã‚¹ãŒä¸€ä¾‹ã¨ã—ã¦æŒ™ã’られã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ãƒ‘ッケージåã¯ã‚ã‹ã£ã¦ã„ã‚‹ã‚‚ã®ã®ã€ã¾ã å…¬é–‹ã•ã‚Œã¦ã„ãªã„ã€æ–°ã—ã„外部ドキュメントã«ãƒªãƒ³ã‚¯ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚ã¾ãŸã€package\-listファイルãŒç”Ÿæˆã•ã‚Œãªã„Javadoc 1\&.0ã¾ãŸã¯1\&.1ã§ç”Ÿæˆã•ã‚ŒãŸãƒ‘ッケージ用ã«package\-listファイルを作æˆã™ã‚‹å ´åˆã«ã‚‚ã€ã“ã®æ–¹æ³•ãŒä½¿ç”¨ã§ãã¾ã™ã€‚åŒæ§˜ã«ã€2ã¤ã®ä¼æ¥­ãŒæœªå…¬é–‹ã®package\-listファイルを共有ã§ãã‚‹ãŸã‚ã€ã‚¯ãƒ­ã‚¹ãƒªãƒ³ã‚¯ã‚’設定ã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’åŒæ™‚ã«ãƒªãƒªãƒ¼ã‚¹ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
+複数ドキュメントã¸ã®ãƒªãƒ³ã‚¯.PP
+å‚照先ã®ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã”ã¨ã«1回ã€\fI\-linkoffline\fRオプションをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2911,10 +2911,10 @@
 .if n \{\
 .RE
 .\}
-¥É¥­¥å¥á¥ó¥È¤Î¹¹¿·.PP
-¥×¥í¥¸¥§¥¯¥È¤Ë²¿½½¤Þ¤¿¤Ï²¿É´¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤â¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Ä¥ê¡¼Á´ÂΤǤ¹¤Ç¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¤³¤È¤¬¤¢¤ë¾ì¹ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤ï¤º¤«¤ÊÊѹ¹¤ò¿×®¤Ë²Ã¤¨¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î°ìÉô¤Ç\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆ¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£2²óÌܤμ¹Ԥϡ¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òÊѹ¹¤·¡¢Àë¸À¤ÏÊѹ¹¤·¤Ê¤¤¾ì¹ç¤Ë¤Î¤ßÀµ¤·¤¯½èÍý¤µ¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤ËÂФ·¤ÆÀë¸À¤òÄɲᢺï½ü¡¢¤Þ¤¿¤ÏÊѹ¹¤·¤¿¾ì¹ç¤Ï¡¢º÷°ú¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¡¢·Ñ¾µ¤µ¤ì¤ë¥á¥ó¥Ð¡¼¤Î¥ê¥¹¥È¡¢»ÈÍÑ¥Ú¡¼¥¸¤Ê¤É¤Î¾ì½ê¤Ç¡¢¥ê¥ó¥¯¤¬²õ¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+ドキュメントã®æ›´æ–°.PP
+プロジェクトã«ä½•åã¾ãŸã¯ä½•ç™¾ã®ãƒ‘ッケージãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã‚‚ã€\fI\-linkoffline\fRオプションを使用ã§ãã¾ã™ã€‚ソース・ツリー全体ã§ã™ã§ã«\fIjavadoc\fRコマンドを実行ã—ãŸã“ã¨ãŒã‚ã‚‹å ´åˆã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã‚ãšã‹ãªå¤‰æ›´ã‚’迅速ã«åŠ ãˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ä¸€éƒ¨ã§\fIjavadoc\fRコマンドをå†å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚2回目ã®å®Ÿè¡Œã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’変更ã—ã€å®£è¨€ã¯å¤‰æ›´ã—ãªã„å ´åˆã«ã®ã¿æ­£ã—ã処ç†ã•ã‚Œã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。ソース・コードã«å¯¾ã—ã¦å®£è¨€ã‚’追加ã€å‰Šé™¤ã€ã¾ãŸã¯å¤‰æ›´ã—ãŸå ´åˆã¯ã€ç´¢å¼•ã€ãƒ‘ッケージ・ツリーã€ç¶™æ‰¿ã•ã‚Œã‚‹ãƒ¡ãƒ³ãƒãƒ¼ã®ãƒªã‚¹ãƒˆã€ä½¿ç”¨ãƒšãƒ¼ã‚¸ãªã©ã®å ´æ‰€ã§ã€ãƒªãƒ³ã‚¯ãŒå£Šã‚Œã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤Þ¤º¡¢¤³¤Î¿·¤·¤¤¾®µ¬ÌϤʼ¹ԤǻÈÍѤ¹¤ë¡¢¿·¤·¤¤À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê(update¤Ê¤É)¤òºîÀ®¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¸µ¤ÎÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤Ïhtml¤Ç¤¹¡£ºÇ¤âñ½ã¤ÊÎã¤Ç¤Ï¡¢html¥Ç¥£¥ì¥¯¥È¥ê¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤Þ¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ÎÂè1°ú¿ô¤Ë¥«¥ì¥ó¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê(\&.)¤òÀßÄꤷ¡¢Âè2°ú¿ô¤Ëpackage\-list¤¬¸¡º÷¤µ¤ì¤ëhtml¤Ø¤ÎÁêÂХѥ¹¤òÀßÄꤷ¡¢¹¹¿·¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¤ß¤òÅϤ·¤Þ¤¹¡£
+ã¾ãšã€ã“ã®æ–°ã—ã„å°è¦æ¨¡ãªå®Ÿè¡Œã§ä½¿ç”¨ã™ã‚‹ã€æ–°ã—ã„生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(updateãªã©)を作æˆã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€å…ƒã®ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ã¯htmlã§ã™ã€‚最もå˜ç´”ãªä¾‹ã§ã¯ã€htmlディレクトリã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã—ã¾ã™ã€‚\fI\-linkoffline\fRオプションã®ç¬¬1引数ã«ã‚«ãƒ¬ãƒ³ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\&.)を設定ã—ã€ç¬¬2引数ã«package\-listãŒæ¤œç´¢ã•ã‚Œã‚‹htmlã¸ã®ç›¸å¯¾ãƒ‘スを設定ã—ã€æ›´æ–°ã™ã‚‹ãƒ‘ッケージã®ãƒ‘ッケージåã®ã¿ã‚’渡ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2926,15 +2926,15 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î½ªÎ»¸å¡¢update/com/packageÆâ¤ÎÀ¸À®¤µ¤ì¤¿¥¯¥é¥¹¤Î¥Ú¡¼¥¸¤ò¥³¥Ô¡¼¤·(³µÍפäº÷°ú¤Ï½ü¤¯)¡¢html/com/packageÆâ¤Î¸µ¤Î¥Õ¥¡¥¤¥ë¤Ë¾å½ñ¤­¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®çµ‚了後ã€update/com/package内ã®ç”Ÿæˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®ãƒšãƒ¼ã‚¸ã‚’コピーã—(概è¦ã‚„索引ã¯é™¤ã)ã€html/com/package内ã®å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¸Šæ›¸ãã—ã¾ã™ã€‚
 .PP
 \-linksource
 .RS 4
-³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(¹ÔÈÖ¹æÉÕ¤­)¤ÎHTML¥Ð¡¼¥¸¥ç¥ó¤òºîÀ®¤·¡¢É¸½àHTML¥É¥­¥å¥á¥ó¥È¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¤¿¤È¤¨¤Ð¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥¹¥È¥é¥¯¥¿¤äÀ¸À®¤µ¤ì¤¿¥¯¥é¥¹¤ËÂФ·¤Æ¤Ï¡¢¥ê¥ó¥¯¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
-.sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-public\fR¡¢\fI\-package\fR¡¢\fI\-protected\fR¤ª¤è¤Ó\fI\-private\fR¤Î³Æ¥ª¥×¥·¥ç¥ó¤È¤Ï´Ø·¸¤Ê¤¯¡¢Èó¸ø³«¤Î¥¯¥é¥¹¡¢¥Õ¥£¡¼¥ë¥É¡¢Èó¸ø³«¤Î¥á¥½¥Ã¥É¤ÎËÜÂΤò¤Ï¤¸¤á¤È¤¹¤ëÁȤ߹þ¤Þ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎÈó¸ø³«¼ÂÁõ¤Î¾ÜºÙ¤ò¸ø³«¤·¤Þ¤¹¡£\fI\-private\fR¥ª¥×¥·¥ç¥ó¤â¤¢¤ï¤»¤Æ»ØÄꤷ¤Ê¤¤¤«¤®¤ê¡¢Èó¸ø³«¤Î¥¯¥é¥¹¤ä¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î°ìÉô¤Ë¤Ï¡¢¥ê¥ó¥¯¤ò²ð¤·¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
-.sp
-³Æ¥ê¥ó¥¯¤Ï¡¢¤½¤ÎÀë¸ÀÆâ¤Î¼±ÊÌ»Ò̾¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIButton\fR¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ø¤Î¥ê¥ó¥¯¤Ï¡¢\fIButton\fR¤È¤¤¤¦¸ì¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+å„ソース・ファイル(行番å·ä»˜ã)ã®HTMLãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’作æˆã—ã€æ¨™æº–HTMLドキュメントã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚リンクã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«å®£è¨€ã•ã‚Œã¦ã„るクラスã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¯¾ã—ã¦ä½œæˆã•ã‚Œã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ãŸã¨ãˆã°ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚„生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã¯ã€ãƒªãƒ³ã‚¯ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
+.sp
+ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-public\fRã€\fI\-package\fRã€\fI\-protected\fRãŠã‚ˆã³\fI\-private\fRã®å„オプションã¨ã¯é–¢ä¿‚ãªãã€éžå…¬é–‹ã®ã‚¯ãƒ©ã‚¹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€éžå…¬é–‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ¬ä½“ã‚’ã¯ã˜ã‚ã¨ã™ã‚‹çµ„ã¿è¾¼ã¾ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®éžå…¬é–‹å®Ÿè£…ã®è©³ç´°ã‚’公開ã—ã¾ã™ã€‚\fI\-private\fRオプションもã‚ã‚ã›ã¦æŒ‡å®šã—ãªã„ã‹ãŽã‚Šã€éžå…¬é–‹ã®ã‚¯ãƒ©ã‚¹ã‚„インタフェースã®ä¸€éƒ¨ã«ã¯ã€ãƒªãƒ³ã‚¯ã‚’介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+å„リンクã¯ã€ãã®å®£è¨€å†…ã®è­˜åˆ¥å­åã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIButton\fRクラスã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã¯ã€\fIButton\fRã¨ã„ã†èªžã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2945,7 +2945,7 @@
 .if n \{\
 .RE
 .\}
-\fIButton\fR¥¯¥é¥¹¤Î\fIgetLabel\fR¥á¥½¥Ã¥É¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ø¤Î¥ê¥ó¥¯¤Ï¡¢\fIgetLabel\fR¤È¤¤¤¦¸ì¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIButton\fRクラスã®\fIgetLabel\fRメソッドã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã¯ã€\fIgetLabel\fRã¨ã„ã†èªžã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2960,7 +2960,7 @@
 .PP
 \-group groupheading \fIpackagepattern:packagepattern\fR
 .RS 4
-³µÍ×¥Ú¡¼¥¸¤ÎÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¡¢»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Ëʬ¤±¤Æ¡¢¥°¥ë¡¼¥×¤´¤È¤Ëɽ¤òºîÀ®¤·¤Þ¤¹¡£³Æ¥°¥ë¡¼¥×¤Ï¡¢¤½¤ì¤¾¤ìÊ̤Î\fI\-group\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤Þ¤¹¡£¥°¥ë¡¼¥×¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤵ¤ì¤¿½ç½ø¤Ç¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢¥°¥ë¡¼¥×Æâ¤Ç¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£»ØÄꤷ¤¿\fI\-group\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢\fIpackagepattern\fR¼°¤Î¥ê¥¹¥È¤Ë°ìÃפ¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤¬¡¢¸«½Ð¤·¤È¤·¤Æ\fIgroupheading\fR¤ò»ý¤Ä1¤Ä¤Îɽ¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+概è¦ãƒšãƒ¼ã‚¸ã®è¤‡æ•°ã®ãƒ‘ッケージをã€æŒ‡å®šã—ãŸã‚°ãƒ«ãƒ¼ãƒ—ã«åˆ†ã‘ã¦ã€ã‚°ãƒ«ãƒ¼ãƒ—ã”ã¨ã«è¡¨ã‚’作æˆã—ã¾ã™ã€‚å„グループã¯ã€ãã‚Œãžã‚Œåˆ¥ã®\fI\-group\fRオプションã§æŒ‡å®šã—ã¾ã™ã€‚グループã¯ã€ã‚³ãƒžãƒ³ãƒ‰è¡Œã§æŒ‡å®šã•ã‚ŒãŸé †åºã§ãƒšãƒ¼ã‚¸ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚パッケージã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã§ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ãªã£ã¦ã„ã¾ã™ã€‚指定ã—ãŸ\fI\-group\fRオプションã§ã¯ã€\fIpackagepattern\fRå¼ã®ãƒªã‚¹ãƒˆã«ä¸€è‡´ã™ã‚‹ãƒ‘ッケージãŒã€è¦‹å‡ºã—ã¨ã—ã¦\fIgroupheading\fRã‚’æŒã¤1ã¤ã®è¡¨ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2970,7 +2970,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIgroupheading\fR¤Ë¤Ï¡¢Ç¤°Õ¤Î¥Æ¥­¥¹¥È¤ò»ØÄê¤Ç¤­¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤Ï¡¢¥°¥ë¡¼¥×¤Îɽ¸«½Ð¤·¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIgroupheading\fRã«ã¯ã€ä»»æ„ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã§ãã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚指定ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—ã®è¡¨è¦‹å‡ºã—ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2981,12 +2981,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackagepattern\fR¤ÎÃͤˤϡ¢Ç¤°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ÎÀèƬÉôʬ¤È¤½¤ì¤Ë³¤¯1¤Ä¤Î¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ÇǤ°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯¤Ï»ÈÍѤǤ­¤ëÍ£°ì¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤Ç¡¢Ç¤°Õ¤Îʸ»ú¤Ë°ìÃפ¹¤ë¡¢¤È¤¤¤¦°ÕÌ£¤Ç¤¹¡£1¤Ä¤Î¥°¥ë¡¼¥×¤Ë¤Ï¡¢¥³¥í¥ó(:)¤Ç¶èÀڤäÆÊ£¿ô¤Î¥Ñ¥¿¡¼¥ó¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Ñ¥¿¡¼¥ó¤Þ¤¿¤Ï¥Ñ¥¿¡¼¥ó¡¦¥ê¥¹¥È¤Ç¥¢¥¹¥¿¥ê¥¹¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥Ñ¥¿¡¼¥ó¡¦¥ê¥¹¥È¤Ï\fI"java\&.lang*:java\&.util"\fR¤Î¤è¤¦¤Ë°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.RE
-.sp
-\fI\-group\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¸«½Ð¤·\fIPackages\fR¤ª¤è¤ÓŬÀڤʾ®¸«½Ð¤·¤ò»ý¤Ä1¤Ä¤Î¥°¥ë¡¼¥×¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£¾®¸«½Ð¤·¤Ë¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸(¤¹¤Ù¤Æ¤Î¥°¥ë¡¼¥×)¤¬´Þ¤Þ¤ì¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢»Ä¤ê¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡Ö¤½¤Î¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡×¤È¤¤¤¦¥µ¥Ö¸«½Ð¤·¤ò»ý¤ÄÆÈΩ¤·¤¿¥°¥ë¡¼¥×¤ËÆþ¤ì¤é¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢3¤Ä¤Î¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤¬\fI¡Ö¥³¥¢¡×\fR¡¢\fI¡Ö³ÈÄ¥¡×\fR¤ª¤è¤Ó\fI¡Ö¤½¤Î¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡×\fR¤Ëʬ¤±¤é¤ì¤Þ¤¹¡£\fIjava\&.lang*\fR¤Ç¤Ï¡¢ºÇ¸å¤Î¥É¥Ã¥È(\&.)¤ò»ØÄꤷ¤Æ¤¤¤Þ¤»¤ó¡£\fIjava\&.lang\&.*\fR¤Î¤è¤¦¤Ë¥É¥Ã¥È¤òÆþ¤ì¤ë¤È¡¢\fI java\&.lang\fR¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIpackagepattern\fRã®å€¤ã«ã¯ã€ä»»æ„ã®ãƒ‘ッケージåã®å…ˆé ­éƒ¨åˆ†ã¨ãã‚Œã«ç¶šã1ã¤ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã§ä»»æ„ã®ãƒ‘ッケージåを指定ã§ãã¾ã™ã€‚アスタリスクã¯ä½¿ç”¨ã§ãる唯一ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã§ã€ä»»æ„ã®æ–‡å­—ã«ä¸€è‡´ã™ã‚‹ã€ã¨ã„ã†æ„味ã§ã™ã€‚1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ã«ã¯ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ãƒ‘ターンをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚パターンã¾ãŸã¯ãƒ‘ターン・リストã§ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’使用ã™ã‚‹å ´åˆã€ãƒ‘ターン・リストã¯\fI"java\&.lang*:java\&.util"\fRã®ã‚ˆã†ã«å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.RE
+.sp
+\fI\-group\fRオプションを指定ã—ãªã„å ´åˆã¯ã€è¦‹å‡ºã—\fIPackages\fRãŠã‚ˆã³é©åˆ‡ãªå°è¦‹å‡ºã—ã‚’æŒã¤1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ã«é…ç½®ã•ã‚Œã¾ã™ã€‚å°è¦‹å‡ºã—ã«ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ãƒ‘ッケージ(ã™ã¹ã¦ã®ã‚°ãƒ«ãƒ¼ãƒ—)ãŒå«ã¾ã‚Œã‚‹ã‚ã‘ã§ã¯ãªã„å ´åˆã€æ®‹ã‚Šã®ãƒ‘ッケージã¯ã€Œãã®ä»–ã®ãƒ‘ッケージã€ã¨ã„ã†ã‚µãƒ–見出ã—ã‚’æŒã¤ç‹¬ç«‹ã—ãŸã‚°ãƒ«ãƒ¼ãƒ—ã«å…¥ã‚Œã‚‰ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®\fIjavadoc\fRコマンドã§ã¯ã€3ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚ŒãŸãƒ‘ッケージãŒ\fI「コアã€\fRã€\fI「拡張ã€\fRãŠã‚ˆã³\fI「ãã®ä»–ã®ãƒ‘ッケージã€\fRã«åˆ†ã‘られã¾ã™ã€‚\fIjava\&.lang*\fRã§ã¯ã€æœ€å¾Œã®ãƒ‰ãƒƒãƒˆ(\&.)を指定ã—ã¦ã„ã¾ã›ã‚“。\fIjava\&.lang\&.*\fRã®ã‚ˆã†ã«ãƒ‰ãƒƒãƒˆã‚’入れるã¨ã€\fI java\&.lang\fRパッケージã¯é™¤å¤–ã•ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2999,7 +2999,7 @@
 .if n \{\
 .RE
 .\}
-\fB¥³¥¢¡¦¥Ñ¥Ã¥±¡¼¥¸\fR
+\fBコア・パッケージ\fR
 .sp
 \fIjava\&.lang\fR
 .sp
@@ -3007,7 +3007,7 @@
 .sp
 \fIjava\&.util\fR
 .sp
-\fB³ÈÄ¥µ¡Ç½¥Ñ¥Ã¥±¡¼¥¸\fR
+\fB拡張機能パッケージ\fR
 .sp
 \fIjavax\&.servlet\fR
 .sp
@@ -3018,42 +3018,42 @@
 .PP
 \-nodeprecated
 .RS 4
-Èó¿ä¾©¤ÎAPI¤ò¥É¥­¥å¥á¥ó¥È¤ËÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢\fI\-nodeprecatedlist\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸¸ú²Ì¤¬¤¢¤ê¡¢¥É¥­¥å¥á¥ó¥È¤Î¾¤ÎÉôʬÁ´ÂΤǤ⡢Èó¿ä¾©¤ÎAPI¤¬À¸À®¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¡¼¥É¤òµ­½Ò¤·¤Æ¤¤¤ë¤È¤­¡¢Èó¿ä¾©¤Î¥³¡¼¥É¤Ë¤è¤Ã¤Æµ¤¤ò»¶¤é¤µ¤ì¤¿¤¯¤Ê¤¤¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®APIをドキュメントã«ç”Ÿæˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€\fI\-nodeprecatedlist\fRオプションを指定ã—ãŸå ´åˆã¨åŒã˜åŠ¹æžœãŒã‚ã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä»–ã®éƒ¨åˆ†å…¨ä½“ã§ã‚‚ã€éžæŽ¨å¥¨ã®APIãŒç”Ÿæˆã•ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ¼ãƒ‰ã‚’記述ã—ã¦ã„ã‚‹ã¨ãã€éžæŽ¨å¥¨ã®ã‚³ãƒ¼ãƒ‰ã«ã‚ˆã£ã¦æ°—を散らã•ã‚ŒãŸããªã„å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-nodeprecatedlist
 .RS 4
-Èó¿ä¾©¤ÎAPI¤Î¥ê¥¹¥È¤ò´Þ¤à¥Õ¥¡¥¤¥ë(deprecated\-list\&.html)¡¢¤ª¤è¤Ó¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¤½¤Î¥Ú¡¼¥¸¤Ø¤Î¥ê¥ó¥¯¤¬À¸À®¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢°ú¤­Â³¤­¡¢¥É¥­¥å¥á¥ó¥È¤Î¾¤ÎÉôʬ¤Ç¤Ï¡¢Èó¿ä¾©¤ÎAPI¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Èó¿ä¾©¤ÎAPI¤¬¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë´Þ¤Þ¤ì¤Æ¤ª¤é¤º¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤ò¤¹¤Ã¤­¤ê¤È¸«¤»¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®APIã®ãƒªã‚¹ãƒˆã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«(deprecated\-list\&.html)ã€ãŠã‚ˆã³ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ãã®ãƒšãƒ¼ã‚¸ã¸ã®ãƒªãƒ³ã‚¯ãŒç”Ÿæˆã•ã‚Œãªã„よã†ã«ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã§ã¯ã€å¼•ã続ãã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä»–ã®éƒ¨åˆ†ã§ã¯ã€éžæŽ¨å¥¨ã®APIãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€éžæŽ¨å¥¨ã®APIãŒã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«å«ã¾ã‚Œã¦ãŠã‚‰ãšã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã‚’ã™ã£ãã‚Šã¨è¦‹ã›ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-nosince
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢\fI@since\fR¥¿¥°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿\fI¡ÖƳÆþ¤µ¤ì¤¿¥Ð¡¼¥¸¥ç¥ó¡×\fR¥»¥¯¥·¥ç¥ó¤ò¾Êά¤·¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€\fI@since\fRã‚¿ã‚°ã«é–¢é€£ä»˜ã‘られãŸ\fI「導入ã•ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fRセクションをçœç•¥ã—ã¾ã™ã€‚
 .RE
 .PP
 \-notree
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î³¬ÁØ¥Ú¡¼¥¸¤ò¾Êά¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö³¬Áإĥ꡼¡×¥Ü¥¿¥ó¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢³¬Áؤ¬À¸À®¤µ¤ì¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®éšŽå±¤ãƒšãƒ¼ã‚¸ã‚’çœç•¥ã—ã¾ã™ã€‚ã“れらã®ãƒšãƒ¼ã‚¸ã«ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€ŒéšŽå±¤ãƒ„リーã€ãƒœã‚¿ãƒ³ã‹ã‚‰ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€éšŽå±¤ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-noindex
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢º÷°ú¤ò¾Êά¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢º÷°ú¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ç´¢å¼•ã‚’çœç•¥ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ç´¢å¼•ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-nohelp
 .RS 4
-½ÐÎϤγƥڡ¼¥¸¤ÎºÇ¾åÉô¤ÈºÇ²¼Éô¤Ë¤¢¤ë¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤«¤é¡Ö¥Ø¥ë¥×¡×¥ê¥ó¥¯¤ò¾Êά¤·¤Þ¤¹¡£
+出力ã®å„ページã®æœ€ä¸Šéƒ¨ã¨æœ€ä¸‹éƒ¨ã«ã‚るナビゲーション・ãƒãƒ¼ã‹ã‚‰ã€Œãƒ˜ãƒ«ãƒ—ã€ãƒªãƒ³ã‚¯ã‚’çœç•¥ã—ã¾ã™ã€‚
 .RE
 .PP
 \-nonavbar
 .RS 4
-Ä̾À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤ÎºÇ¾åÉô¤ÈºÇ²¼Éô¤Ëɽ¼¨¤µ¤ì¤ë¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¡¢¥Ø¥Ã¥À¡¼¡¢¤ª¤è¤Ó¥Õ¥Ã¥¿¡¼¤òÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fI\-nonavbar\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤Ë±Æ¶Á¤òÍ¿¤¨¤Þ¤»¤ó¡£\fI\-nonavbar\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢°õºþ¤¹¤ë¤¿¤á¤Ë¤Î¤ß¥Õ¥¡¥¤¥ë¤òPostScript¤äPDF¤ËÊÑ´¹¤¹¤ë¾ì¹ç¤Ê¤É¡¢ÆâÍƤΤߤ¬½ÅÍפǡ¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¤ÎɬÍפ¬¤Ê¤¤¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+通常ã€ç”Ÿæˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®æœ€ä¸Šéƒ¨ã¨æœ€ä¸‹éƒ¨ã«è¡¨ç¤ºã•ã‚Œã‚‹ãƒŠãƒ“ゲーション・ãƒãƒ¼ã€ãƒ˜ãƒƒãƒ€ãƒ¼ã€ãŠã‚ˆã³ãƒ•ãƒƒã‚¿ãƒ¼ã‚’生æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚\fI\-nonavbar\fRオプションã¯\fI\-bottom\fRオプションã«å½±éŸ¿ã‚’与ãˆã¾ã›ã‚“。\fI\-nonavbar\fRオプションã¯ã€å°åˆ·ã™ã‚‹ãŸã‚ã«ã®ã¿ãƒ•ã‚¡ã‚¤ãƒ«ã‚’PostScriptã‚„PDFã«å¤‰æ›ã™ã‚‹å ´åˆãªã©ã€å†…容ã®ã¿ãŒé‡è¦ã§ã€ãƒŠãƒ“ゲーションã®å¿…è¦ãŒãªã„å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-helpfile \fIpath\efilename\fR
 .RS 4
-ºÇ¾åÉô¤ª¤è¤ÓºÇ²¼Éô¤Î¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö¥Ø¥ë¥×¡×¥ê¥ó¥¯¤Î¥ê¥ó¥¯Àè¤È¤Ê¤ëÂåÂإإë¥×¡¦¥Õ¥¡¥¤¥ëpath\efilename¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥ÉÆâ¤Ç¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ëhelp\-doc\&.html¤ò¼«Æ°ºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤Ë¤Ï¤É¤ó¤Ê̾Á°¤Ç¤â»ØÄê¤Ç¤­¡¢help\-doc\&.html¤Ë¸ÂÄꤵ¤ì¤Þ¤»¤ó¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤ÎÎã¤Î¤è¤¦¤Ë¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼Æâ¤Î¥ê¥ó¥¯¤òɬÍפ˱þ¤¸¤ÆÄ´À°¤·¤Þ¤¹¡£
+最上部ãŠã‚ˆã³æœ€ä¸‹éƒ¨ã®ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œãƒ˜ãƒ«ãƒ—ã€ãƒªãƒ³ã‚¯ã®ãƒªãƒ³ã‚¯å…ˆã¨ãªã‚‹ä»£æ›¿ãƒ˜ãƒ«ãƒ—・ファイルpath\efilenameã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fIjavadoc\fRコマンド内ã§ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦ã„るヘルプ・ファイルhelp\-doc\&.htmlを自動作æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚ファイルåã«ã¯ã©ã‚“ãªåå‰ã§ã‚‚指定ã§ãã€help\-doc\&.htmlã«é™å®šã•ã‚Œã¾ã›ã‚“。\fIjavadoc\fRコマンドã¯ã€æ¬¡ã®ä¾‹ã®ã‚ˆã†ã«ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼å†…ã®ãƒªãƒ³ã‚¯ã‚’å¿…è¦ã«å¿œã˜ã¦èª¿æ•´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3068,7 +3068,7 @@
 .PP
 \-stylesheet \fIpath/filename \fR
 .RS 4
-ÂåÂØHTML¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥ÉÆâ¤Ç¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ëstylesheet\&.css¤ò¼«Æ°ºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤Ë¤Ï¤É¤ó¤Ê̾Á°¤Ç¤â»ØÄê¤Ç¤­¡¢stylesheet\&.css¤Ë¸ÂÄꤵ¤ì¤Þ¤»¤ó¡£
+代替HTMLスタイルシート・ファイルã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fIjavadoc\fRコマンド内ã§ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦ã„るスタイルシート・ファイルstylesheet\&.cssを自動作æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚ファイルåã«ã¯ã©ã‚“ãªåå‰ã§ã‚‚指定ã§ãã€stylesheet\&.cssã«é™å®šã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -3083,15 +3083,15 @@
 .PP
 \-serialwarn
 .RS 4
-\fI@serial\fR¥¿¥°¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Javadoc 1\&.2\&.2°Ê¹ß¤Ç¤Ï¡¢Ä¾Î󲽤ηٹð¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤È¤ÏµÕ¤ÎÆ°ºî¤Ç¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Ä¾Î󲽤ηٹð¤¬É½¼¨¤µ¤ì¤ë¤Î¤Ç¡¢¥Ç¥Õ¥©¥ë¥È¤ÎľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤È\fIwriteExternal\fR¥á¥½¥Ã¥É¤òŬÀڤ˥ɥ­¥å¥á¥ó¥È²½¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£
+\fI@serial\fRã‚¿ã‚°ãŒãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€Javadoc 1\&.2\&.2以é™ã§ã¯ã€ç›´åˆ—化ã®è­¦å‘Šã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã¨ã¯é€†ã®å‹•ä½œã§ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ç›´åˆ—化ã®è­¦å‘ŠãŒè¡¨ç¤ºã•ã‚Œã‚‹ã®ã§ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨\fIwriteExternal\fRメソッドをé©åˆ‡ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
 .PP
 \-charset \fIname\fR
 .RS 4
-¤³¤Î¥É¥­¥å¥á¥ó¥ÈÍѤÎHTMLʸ»ú¥»¥Ã¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î̾Á°¤Ï¡¢IANA Registry¤ÎCharacter Sets
-(http://www\&.iana\&.org/assignments/character\-sets)¤Ë¼¨¤µ¤ì¤¿¡¢Í¥ÀèMIME̾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-charset "iso\-8859\-1" mypackage\fR¤Ï¼¡¤Î¹Ô¤òÀ¸À®¤µ¤ì¤¿³Æ¥Ú¡¼¥¸¤Î¥Ø¥Ã¥À¡¼¤ËÁÞÆþ¤·¤Þ¤¹¡£
+ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã®HTML文字セットを指定ã—ã¾ã™ã€‚ã“ã®åå‰ã¯ã€IANA Registryã®Character Sets
+(http://www\&.iana\&.org/assignments/character\-sets)ã«ç¤ºã•ã‚ŒãŸã€å„ªå…ˆMIMEåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIjavadoc \-charset "iso\-8859\-1" mypackage\fRã¯æ¬¡ã®è¡Œã‚’生æˆã•ã‚ŒãŸå„ページã®ãƒ˜ãƒƒãƒ€ãƒ¼ã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3102,24 +3102,24 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î\fIMETA\fR¥¿¥°¤Ï¡¢HTMLɸ½à(4197265¤ª¤è¤Ó4137321)¤ÎHTML Document Representation
-(http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.sp
-¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®\fIMETA\fRã‚¿ã‚°ã¯ã€HTML標準(4197265ãŠã‚ˆã³4137321)ã®HTML Document Representation
+(http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.sp
+ãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-docencoding \fIname\fR
 .RS 4
-À¸À®¤µ¤ì¤ëHTML¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î̾Á°¤Ï¡¢IANA Registry¤ÎCharacter Sets
-(http://www\&.iana\&.org/assignments/character\-sets)¤Ë¼¨¤µ¤ì¤¿¡¢Í¥ÀèMIME̾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fI\-docencoding\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤·¡¢\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢À¸À®¤µ¤ì¤¿HTML¥Õ¥¡¥¤¥ë¤Î°Å¹æ²½¤Ï\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤ÇÆÃÄꤵ¤ì¤Þ¤¹¡£Îã:
-\fIjavadoc \-docencoding"iso\-8859\-1" mypackage\fR¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+生æˆã•ã‚Œã‚‹HTMLファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¾ã™ã€‚ã“ã®åå‰ã¯ã€IANA Registryã®Character Sets
+(http://www\&.iana\&.org/assignments/character\-sets)ã«ç¤ºã•ã‚ŒãŸã€å„ªå…ˆMIMEåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fI\-docencoding\fRオプションをçœç•¥ã—ã€\fI\-encoding\fRオプションを使用ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚ŒãŸHTMLファイルã®æš—å·åŒ–ã¯\fI\-encoding\fRオプションã§ç‰¹å®šã•ã‚Œã¾ã™ã€‚例:
+\fIjavadoc \-docencoding"iso\-8859\-1" mypackage\fRãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-keywords
 .RS 4
-HTML¥­¡¼¥ï¡¼¥É<META>¥¿¥°¤ò¡¢¥¯¥é¥¹¤´¤È¤ËÀ¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ËÄɲä·¤Þ¤¹¡£¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢<META>¥¿¥°¤ò¸¡º÷¤¹¤ë¥µ¡¼¥Á¡¦¥¨¥ó¥¸¥ó¤¬¥Ú¡¼¥¸¤ò¸«¤Ä¤±¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈÁ´ÂΤò¸¡º÷¤¹¤ë¸¡º÷¥¨¥ó¥¸¥ó¤Î¤Û¤È¤ó¤É¤Ï<META>¥¿¥°¤ò»²¾È¤·¤Þ¤»¤ó¡£¥Ú¡¼¥¸¤¬¸íÍѤ·¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¤«¤é¤Ç¤¹¡£¼«¿È¤ÎWeb¥µ¥¤¥È¤Ø¤Î¸¡º÷¤òÀ©¸Â¤¹¤ë¡¢´ë¶È¤Ë¤è¤êÄ󶡤µ¤ì¤ë¸¡º÷¥¨¥ó¥¸¥ó¤Ï¡¢<META>¥¿¥°¤ò»²¾È¤¹¤ë¤³¤È¤Ç²¸·Ã¤ò¼õ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£<META>¥¿¥°¤Ë¤Ï¡¢¥¯¥é¥¹¤Î´°Á´½¤¾þ̾¤È¡¢¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥á¥½¥Ã¥É¤Î½¤¾þ¤µ¤ì¤Æ¤¤¤Ê¤¤Ì¾Á°¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢¥¯¥é¥¹Ì¾¤ÈƱ¤¸¤Ç¤¢¤ë¤¿¤á´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹\fIString\fR¤Ï¼¡¤Î¥­¡¼¥ï¡¼¥É¤Ç³«»Ï¤·¤Þ¤¹¡£
+HTMLキーワード<META>ã‚¿ã‚°ã‚’ã€ã‚¯ãƒ©ã‚¹ã”ã¨ã«ç”Ÿæˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«è¿½åŠ ã—ã¾ã™ã€‚ã“れらã®ã‚¿ã‚°ã¯ã€<META>タグを検索ã™ã‚‹ã‚µãƒ¼ãƒãƒ»ã‚¨ãƒ³ã‚¸ãƒ³ãŒãƒšãƒ¼ã‚¸ã‚’見ã¤ã‘ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚インターãƒãƒƒãƒˆå…¨ä½“を検索ã™ã‚‹æ¤œç´¢ã‚¨ãƒ³ã‚¸ãƒ³ã®ã»ã¨ã‚“ã©ã¯<META>ã‚¿ã‚°ã‚’å‚ç…§ã—ã¾ã›ã‚“。ページãŒèª¤ç”¨ã—ã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã‹ã‚‰ã§ã™ã€‚自身ã®Webサイトã¸ã®æ¤œç´¢ã‚’制é™ã™ã‚‹ã€ä¼æ¥­ã«ã‚ˆã‚Šæä¾›ã•ã‚Œã‚‹æ¤œç´¢ã‚¨ãƒ³ã‚¸ãƒ³ã¯ã€<META>ã‚¿ã‚°ã‚’å‚ç…§ã™ã‚‹ã“ã¨ã§æ©æµã‚’å—ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚<META>ã‚¿ã‚°ã«ã¯ã€ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾åã¨ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®ä¿®é£¾ã•ã‚Œã¦ã„ãªã„åå‰ãŒå«ã¾ã‚Œã¾ã™ã€‚コンストラクタã¯ã€ã‚¯ãƒ©ã‚¹åã¨åŒã˜ã§ã‚ã‚‹ãŸã‚å«ã¾ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹\fIString\fRã¯æ¬¡ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§é–‹å§‹ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3137,42 +3137,42 @@
 .PP
 \-tag \fItagname\fR:Xaoptcmf:"\fItaghead\fR"
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Î°ú¿ô¤ò1¤Ä¼è¤ëñ½ã¤Ê¥«¥¹¥¿¥à¡¦¥Ö¥í¥Ã¥¯¡¦¥¿¥°\fI@tagname\fR¤ò²ò¼á¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥¿¥°Ì¾¤Î¥¹¥Ú¥ë¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë¤Î¤Ç¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Ë¸ºß¤¹¤ë¤¹¤Ù¤Æ¤Î¥«¥¹¥¿¥à¡¦¥¿¥°¤Ë¤Ä¤¤¤Æ¡¢\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤òÁȤ߹þ¤à¤³¤È¤¬½ÅÍפǤ¹¡£º£²ó¤Î¼Â¹Ô¤Ç¤Ï½ÐÎϤµ¤ì¤Ê¤¤¥¿¥°¤Ï¡¢\fIX\fR¤òÉÕ¤±¤Æ̵¸ú¤Ë¤·¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¿¥°¤Î¸«½Ð¤·\fItaghead\fR¤òÂÀ»ú¤Ç½ÐÎϤ·¤Þ¤¹¡£¤½¤Î¼¡¤Î¹Ô¤Ë¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Î1¤Ä¤Î°ú¿ô¤Ç»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤¬Â³¤­¤Þ¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤ÈƱÍÍ¡¢¤³¤Î°ú¿ô¤Î¥Æ¥­¥¹¥È¤Ë¤Ï¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤â²ò¼á¤µ¤ì¤Þ¤¹¡£½ÐÎϤϡ¢°ú¿ô¤ò1¤Ä¼è¤ëɸ½à¤Î¥¿¥°(\fI@return\fR¤ä\fI@author\fR¤Ê¤É)¤Î½ÐÎϤȤ褯»÷¤Æ¤¤¤Þ¤¹¡£\fItaghead\fR¤ÎÃͤò¾Êά¤¹¤ë¤È¡¢\fItagname\fR¤¬¸«½Ð¤·¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤ÎÇÛÃÖ\fR:
-\fIXaoptcmf\fR°ú¿ô¤Ë¤è¤ê¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Ç¥¿¥°¤òÇÛÃ֤Ǥ­¤ë¾ì½ê¤¬·è¤Þ¤ê¡¢¥¿¥°¤ò̵¸ú¤Ë¤Ç¤­¤ë¤«¤É¤¦¤«(\fIX\fR¤ò»ÈÍѤ·¤Æ)¤¬·è¤Þ¤ê¤Þ¤¹¡£¥¿¥°¤ÎÇÛÃÖ°ÌÃÖ¤òÀ©¸Â¤·¤Ê¤¤¾ì¹ç¤Ï\fIa\fR¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤ì°Ê³°¤Îʸ»ú¤ÎÁȹ礻¤â²Äǽ¤Ç¤¹¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®å¼•æ•°ã‚’1ã¤å–ã‚‹å˜ç´”ãªã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ–ロック・タグ\fI@tagname\fRを解釈ã§ãるよã†ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ã‚¿ã‚°åã®ã‚¹ãƒšãƒ«ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã“ã¨ãŒã§ãã‚‹ã®ã§ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã«å­˜åœ¨ã™ã‚‹ã™ã¹ã¦ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã«ã¤ã„ã¦ã€\fI\-tag\fRオプションを組ã¿è¾¼ã‚€ã“ã¨ãŒé‡è¦ã§ã™ã€‚今回ã®å®Ÿè¡Œã§ã¯å‡ºåŠ›ã•ã‚Œãªã„ã‚¿ã‚°ã¯ã€\fIX\fRを付ã‘ã¦ç„¡åŠ¹ã«ã—ã¾ã™ã€‚\fI\-tag\fRオプションã¯ã€ã‚¿ã‚°ã®è¦‹å‡ºã—\fItaghead\fRを太字ã§å‡ºåŠ›ã—ã¾ã™ã€‚ãã®æ¬¡ã®è¡Œã«ã¯ã€ã“ã®ã‚ªãƒ—ションã®1ã¤ã®å¼•æ•°ã§æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆãŒç¶šãã¾ã™ã€‚ブロック・タグã¨åŒæ§˜ã€ã“ã®å¼•æ•°ã®ãƒ†ã‚­ã‚¹ãƒˆã«ã¯ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚‚解釈ã•ã‚Œã¾ã™ã€‚出力ã¯ã€å¼•æ•°ã‚’1ã¤å–る標準ã®ã‚¿ã‚°(\fI@return\fRã‚„\fI@author\fRãªã©)ã®å‡ºåŠ›ã¨ã‚ˆãä¼¼ã¦ã„ã¾ã™ã€‚\fItaghead\fRã®å€¤ã‚’çœç•¥ã™ã‚‹ã¨ã€\fItagname\fRãŒè¦‹å‡ºã—ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®é…ç½®\fR:
+\fIXaoptcmf\fR引数ã«ã‚ˆã‚Šã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã§ã‚¿ã‚°ã‚’é…ç½®ã§ãる場所ãŒæ±ºã¾ã‚Šã€ã‚¿ã‚°ã‚’無効ã«ã§ãã‚‹ã‹ã©ã†ã‹(\fIX\fRを使用ã—ã¦)ãŒæ±ºã¾ã‚Šã¾ã™ã€‚ã‚¿ã‚°ã®é…ç½®ä½ç½®ã‚’制é™ã—ãªã„å ´åˆã¯\fIa\fRを指定ã—ã¾ã™ã€‚ãれ以外ã®æ–‡å­—ã®çµ„åˆã›ã‚‚å¯èƒ½ã§ã™ã€‚
 .sp
 \fIX\fR
-(¥¿¥°¤Î̵¸ú²½)
+(ã‚¿ã‚°ã®ç„¡åŠ¹åŒ–)
 .sp
 \fIa\fR
-(¤¹¤Ù¤Æ)
+(ã™ã¹ã¦)
 .sp
 \fIo\fR
-(³µÍ×)
+(概è¦)
 .sp
 \fIp\fR
-(¥Ñ¥Ã¥±¡¼¥¸)
+(パッケージ)
 .sp
 \fIt\fR
-(¥¿¥¤¥×¡¢¤Ä¤Þ¤ê¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹)
+(タイプã€ã¤ã¾ã‚Šã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹)
 .sp
 \fIc\fR
-(¥³¥ó¥¹¥È¥é¥¯¥¿)
+(コンストラクタ)
 .sp
 \fIm\fR
-(¥á¥½¥Ã¥É)
+(メソッド)
 .sp
 \fIf\fR
-(¥Õ¥£¡¼¥ë¥É)
-.sp
-\fB¥·¥ó¥°¥ë¡¦¥¿¥°¤ÎÎã\fR: ¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤ÎǤ°Õ¤Î°ÌÃ֤ǻÈÍѤǤ­¤ë¥¿¥°¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fI\-tag todo:a:"To Do:"\fR
-.sp
-\fI@todo\fR¥¿¥°¤ò¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤È¤Î¤ß»ÈÍѤ¹¤ë¾ì¹ç¡¢\fI\-tag todo:cmf:"To Do:"\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-ºÇ¸å¤Î¥³¥í¥ó(:)¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¶èÀÚ¤êʸ»ú¤Ç¤Ï¤Ê¤¯¡¢¸«½Ð¤·¥Æ¥­¥¹¥È¤Î°ìÉô¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£\fI@todo\fR¥¿¥°¤ò´Þ¤à¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÍѤΤ¤¤º¤ì¤«¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@todo The documentation for this method needs work\fR¤Ç¤¹¡£
-.sp
-\fB¥¿¥°Ì¾Æâ¤Î¥³¥í¥ó\fR: ¥¿¥°Ì¾Æâ¤Ç¥³¥í¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤ò»ÈÍѤ·¤Æ¥¨¥¹¥±¡¼¥×¤·¤Þ¤¹¡£¼¡¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢\fI\-tag ejb\e\e:bean:a:"EJB Bean:"\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+(フィールド)
+.sp
+\fBシングル・タグã®ä¾‹\fR: ソース・コード内ã®ä»»æ„ã®ä½ç½®ã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-tag todo:a:"To Do:"\fR
+.sp
+\fI@todo\fRタグをコンストラクタã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨ã®ã¿ä½¿ç”¨ã™ã‚‹å ´åˆã€\fI\-tag todo:cmf:"To Do:"\fRを使用ã—ã¾ã™ã€‚
+.sp
+最後ã®ã‚³ãƒ­ãƒ³(:)ã¯ã€ãƒ‘ラメータ区切り文字ã§ã¯ãªãã€è¦‹å‡ºã—テキストã®ä¸€éƒ¨ã«ãªã£ã¦ã„ã¾ã™ã€‚\fI@todo\fRã‚¿ã‚°ã‚’å«ã‚€ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ç”¨ã®ã„ãšã‚Œã‹ã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションを使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@todo The documentation for this method needs work\fRã§ã™ã€‚
+.sp
+\fBã‚¿ã‚°å内ã®ã‚³ãƒ­ãƒ³\fR: ã‚¿ã‚°å内ã§ã‚³ãƒ­ãƒ³ã‚’使用ã™ã‚‹å ´åˆã¯ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’使用ã—ã¦ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã—ã¾ã™ã€‚次ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€\fI\-tag ejb\e\e:bean:a:"EJB Bean:"\fRオプションを使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3185,12 +3185,12 @@
 .if n \{\
 .RE
 .\}
-\fB¥¿¥°Ì¾¤Î¥¹¥Ú¥ë¥Á¥§¥Ã¥¯\fR: °ìÉô¤Î³«È¯¼Ô¤¬É¬¤º¤·¤â½ÐÎϤ·¤Ê¤¤¥«¥¹¥¿¥à¡¦¥¿¥°¤ò¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤ËÇÛÃÖ¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Î¤¹¤Ù¤Æ¤Î¥¿¥°¤ò¥ê¥¹¥È¤·¡¢½ÐÎϤ¹¤ë¥¿¥°¤òÍ­¸ú¤Ë¤·¡¢½ÐÎϤ·¤Ê¤¤¥¿¥°¤ò̵¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIX\fR¤ò»ØÄꤹ¤ë¤È¥¿¥°¤Ï̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¤È¡¢¥¿¥°¤ÏÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡½Ð¤·¤¿¥¿¥°¤¬ÆþÎϥߥ¹¤Ê¤É¤Ë¤è¤ëÉÔÌÀ¥¿¥°¤Ç¤¢¤ë¤«¤É¤¦¤«¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤«¤é·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¹¤Ç¤ËÇÛÃÖ¤µ¤ì¤Æ¤¤¤ëÃͤË\fIX\fR¤òÄɲäǤ­¤Þ¤¹¡£¤³¤¦¤·¤Æ¤ª¤±¤Ð¡¢\fIX\fR¤òºï½ü¤¹¤ë¤Î¤ß¤Ç¥¿¥°¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@todo\fR¥¿¥°¤ò½ÐÎϤÇÍÞÀ©¤¹¤ë¾ì¹ç¡¢\fI\-tag todo:Xcmf:"To Do:"\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤µ¤é¤Ë´Êñ¤Ë¤¹¤ë¾ì¹ç¡¢\fI\-tag todo:X\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¹½Ê¸\fI\-tag todo:X\fR¤Ï¡¢\fI@todo\fR¥¿¥°¤¬¥¿¥°¥ì¥Ã¥È¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Æ¤âµ¡Ç½¤·¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤Î½ç½ø\fR:
-\fI\-ta\fR\fIg\fR¤ª¤è¤Ó\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤Î½ç½ø¤Ë¤è¤Ã¤Æ¡¢¥¿¥°¤Î½ÐÎϽ礬·è¤Þ¤ê¤Þ¤¹¡£¥«¥¹¥¿¥à¡¦¥¿¥°¤Èɸ½à¥¿¥°¤òÁȤ߹礻¤Æ»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£É¸½à¥¿¥°¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢½ç½ø¤ò·èÄꤹ¤ë¤¿¤á¤À¤±¤Î¥×¥ì¡¼¥¹¥Û¥ë¥À¤Ç¤¹¡£É¸½à¥¿¥°¤Î̾Á°¤Î¤ß¤ò¼è¤ê¤Þ¤¹¡£É¸½à¥¿¥°¤Î¾®¸«½Ð¤·¤ÏÊѹ¹¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤ò¼¡¤ÎÎã¤Ë¼¨¤·¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢\fI\-tagle\fR\fIt\fR¥ª¥×¥·¥ç¥ó¤Î°ÌÃ֤ˤè¤ê¡¢½ç½ø¤¬·è¤Þ¤ê¤Þ¤¹¡£¥¿¥°¤¬Î¾Êý¤È¤â¸ºß¤¹¤ë¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÎºÇ¸å¤Ë¤¢¤ëÊý¤¬¤½¤Î½ç½ø¤ò·èÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¿¥°¤ä¥¿¥°¥ì¥Ã¥È¤¬¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤵ¤ì¤¿½çÈ֤˽èÍý¤µ¤ì¤ë¤¿¤á¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-taglet\fR¤ª¤è¤Ó\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤¬Ì¾Á°\fItodo\fRÃͤò»ý¤Ä¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ËºÇ¸å¤Ë»ØÄꤵ¤ì¤¿¤â¤Î¤¬½ç½ø¤ò·èÄꤷ¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤Î´°Á´¥»¥Ã¥È¤ÎÎã\fR: ¤³¤ÎÎã¤Ç¤Ï¡¢½ÐÎϤÎParameters¤ÈThrows¤Î´Ö¤ËTo Do¤òÁÞÆþ¤·¤Þ¤¹¡£\fIX\fR¤ò»ÈÍѤ·¤Æ¡¢\fI@example\fR¥¿¥°¤¬¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Îº£²ó¤Î¼Â¹Ô¤Ç¤Ï½ÐÎϤµ¤ì¤Ê¤¤¥¿¥°¤Ç¤¢¤ë¤³¤È¤â»ØÄꤷ¤Þ¤¹¡£\fI@argfile\fR¥¿¥°¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¡¢°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤ÎÊÌ¡¹¤Î¹Ô¤Ë¥¿¥°¤òÇÛÃ֤Ǥ­¤Þ¤¹(¹Ô¤Î·Ñ³¤ò¼¨¤¹Ê¸»ú¤ÏÉÔÍ×)¡£
+\fBã‚¿ã‚°åã®ã‚¹ãƒšãƒ«ãƒã‚§ãƒƒã‚¯\fR: 一部ã®é–‹ç™ºè€…ãŒå¿…ãšã—も出力ã—ãªã„カスタム・タグをソース・コード内ã«é…ç½®ã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã®ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’リストã—ã€å‡ºåŠ›ã™ã‚‹ã‚¿ã‚°ã‚’有効ã«ã—ã€å‡ºåŠ›ã—ãªã„タグを無効ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIX\fRを指定ã™ã‚‹ã¨ã‚¿ã‚°ã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚指定ã—ãªã„ã¨ã€ã‚¿ã‚°ã¯æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ã€æ¤œå‡ºã—ãŸã‚¿ã‚°ãŒå…¥åŠ›ãƒŸã‚¹ãªã©ã«ã‚ˆã‚‹ä¸æ˜Žã‚¿ã‚°ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’特定ã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªå ´åˆã«ã€\fIjavadoc\fRコマンドã‹ã‚‰è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã™ã§ã«é…ç½®ã•ã‚Œã¦ã„る値ã«\fIX\fRを追加ã§ãã¾ã™ã€‚ã“ã†ã—ã¦ãŠã‘ã°ã€\fIX\fRを削除ã™ã‚‹ã®ã¿ã§ã‚¿ã‚°ã‚’有効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@todo\fRタグを出力ã§æŠ‘制ã™ã‚‹å ´åˆã€\fI\-tag todo:Xcmf:"To Do:"\fRを使用ã—ã¾ã™ã€‚ã•ã‚‰ã«ç°¡å˜ã«ã™ã‚‹å ´åˆã€\fI\-tag todo:X\fRを使用ã—ã¾ã™ã€‚構文\fI\-tag todo:X\fRã¯ã€\fI@todo\fRã‚¿ã‚°ãŒã‚¿ã‚°ãƒ¬ãƒƒãƒˆã§å®šç¾©ã•ã‚Œã¦ã„ã¦ã‚‚機能ã—ã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®é †åº\fR:
+\fI\-ta\fR\fIg\fRãŠã‚ˆã³\fI\-taglet\fRオプションã®é †åºã«ã‚ˆã£ã¦ã€ã‚¿ã‚°ã®å‡ºåŠ›é †ãŒæ±ºã¾ã‚Šã¾ã™ã€‚カスタム・タグã¨æ¨™æº–タグを組ã¿åˆã›ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚標準タグã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションã¯ã€é †åºã‚’決定ã™ã‚‹ãŸã‚ã ã‘ã®ãƒ—レースホルダã§ã™ã€‚標準タグã®åå‰ã®ã¿ã‚’å–ã‚Šã¾ã™ã€‚標準タグã®å°è¦‹å‡ºã—ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。ã“れを次ã®ä¾‹ã«ç¤ºã—ã¾ã™ã€‚\fI\-tag\fRオプションを指定ã—ãªã„ã¨ã€\fI\-tagle\fR\fIt\fRオプションã®ä½ç½®ã«ã‚ˆã‚Šã€é †åºãŒæ±ºã¾ã‚Šã¾ã™ã€‚ã‚¿ã‚°ãŒä¸¡æ–¹ã¨ã‚‚存在ã™ã‚‹å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã®æœ€å¾Œã«ã‚ã‚‹æ–¹ãŒãã®é †åºã‚’決定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¿ã‚°ã‚„タグレットãŒã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æŒ‡å®šã•ã‚ŒãŸé †ç•ªã«å‡¦ç†ã•ã‚Œã‚‹ãŸã‚ã§ã™ã€‚ãŸã¨ãˆã°ã€\fI\-taglet\fRãŠã‚ˆã³\fI\-tag\fRオプションãŒåå‰\fItodo\fR値をæŒã¤å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æœ€å¾Œã«æŒ‡å®šã•ã‚ŒãŸã‚‚ã®ãŒé †åºã‚’決定ã—ã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®å®Œå…¨ã‚»ãƒƒãƒˆã®ä¾‹\fR: ã“ã®ä¾‹ã§ã¯ã€å‡ºåŠ›ã®Parametersã¨Throwsã®é–“ã«To Doを挿入ã—ã¾ã™ã€‚\fIX\fRを使用ã—ã¦ã€\fI@example\fRã‚¿ã‚°ãŒã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã®ä»Šå›žã®å®Ÿè¡Œã§ã¯å‡ºåŠ›ã•ã‚Œãªã„ã‚¿ã‚°ã§ã‚ã‚‹ã“ã¨ã‚‚指定ã—ã¾ã™ã€‚\fI@argfile\fRタグを使用ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®åˆ¥ã€…ã®è¡Œã«ã‚¿ã‚°ã‚’é…ç½®ã§ãã¾ã™(è¡Œã®ç¶™ç¶šã‚’示ã™æ–‡å­—ã¯ä¸è¦)。
 .sp
 .if n \{\
 .RS 4
@@ -3206,24 +3206,24 @@
 .if n \{\
 .RE
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò²òÀϤ¹¤ëºÝ¤Ë¸¡º÷¤µ¤ì¤¿¥¿¥°¤Î¤¦¤Á¡¢É¸½à¥¿¥°¤Ç¤â¡¢\fI\-tag\fR¤ä\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ÇÅϤµ¤ì¤¿¥¿¥°¤Ç¤â¤Ê¤¤¤â¤Î¤Ï¤¹¤Ù¤ÆÉÔÌÀ¥¿¥°¤È¤ß¤Ê¤µ¤ì¡¢·Ù¹ð¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
-.sp
-ɸ½à¥¿¥°¤Ï¡¢ºÇ½é¡¢¥Ç¥Õ¥©¥ë¥È¤Î½ç½ø¤Ç¥ê¥¹¥ÈÆâ¤ËÆâÉôŪ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤½¤ì¤é¤Î¥¿¥°¤Ï¤³¤Î¥ê¥¹¥È¤ËÄɲ䵤ì¤Þ¤¹¡£É¸½à¥¿¥°¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ÌÃÖ¤«¤é°ÜÆ°¤µ¤ì¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢É¸½à¥¿¥°¤Î\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢¤½¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Î°ÌÃÖ¤ËÇÛÃÖ¤µ¤ì¤¿¤Þ¤Þ¤Ë¤Ê¤ê¤Þ¤¹¡£
-.sp
-\fB¶¥¹ç¤Î²óÈò\fR: ¸ÇÍ­¤Î̾Á°¶õ´Ö¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤ë\fIcom\&.mycompany\&.todo\fR¤È¤¤¤¦Ì¾Á°¤Î¤è¤¦¤Ë¡¢¥É¥Ã¥È¤Ç¶èÀÚ¤é¤ì¤¿Ì¾Á°¤ò»ÈÍѤ·¤Þ¤¹¡£Oracle¤Ï¡¢º£¸å¤â̾Á°¤Ë¥É¥Ã¥È¤ò´Þ¤Þ¤Ê¤¤É¸½à¥¿¥°¤òºîÀ®¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤¬ºîÀ®¤·¤¿¥¿¥°¤Ï¡¢Oracle¤¬ÄêµÁ¤¹¤ëƱ¤¸Ì¾Á°¤Î¥¿¥°¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fI@todo\fR¤È¤¤¤¦Ì¾Á°¤Î¥¿¥°¤Þ¤¿¤Ï¥¿¥°¥ì¥Ã¥È¤ò¥æ¡¼¥¶¡¼¤¬ºîÀ®¤·¤¿¾ì¹ç¡¢¤½¤Î¸å¤ËOracle¤¬Æ±¤¸Ì¾Á°¤Îɸ½à¥¿¥°¤òºîÀ®¤·¤Æ¤â¡¢¤½¤Î¥¿¥°¤Þ¤¿¤Ï¥¿¥°¥ì¥Ã¥È¤Ï¾ï¤Ë¥æ¡¼¥¶¡¼¤¬ÄêµÁ¤·¤¿¤Î¤ÈƱ¤¸Æ°ºî¤òÊÝ»ý¤·¤Þ¤¹¡£
-.sp
-\fBÃí¼ávs\&. Javadoc¥¿¥°\fR: °ìÈ̤ˡ¢Äɲ乤ëɬÍפΤ¢¤ë¥Þ¡¼¥¯¥¢¥Ã¥×¤¬¡¢¥É¥­¥å¥á¥ó¥È¤Ë±Æ¶Á¤òÍ¿¤¨¤¿¤ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤¿¤ê¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¾ì¹ç¡¢¤½¤Î¥Þ¡¼¥¯¥¢¥Ã¥×¤ÏJavadoc¥¿¥°¤Ë¤·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤ÏÃí¼á¤Ë¤·¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î¥«¥¹¥¿¥à¡¦¥¿¥°¤ÈÃí¼á¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#annotations)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¤è¤êÊ£»¨¤Ê¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤ä¥«¥¹¥¿¥à¡¦¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤âºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’解æžã™ã‚‹éš›ã«æ¤œç´¢ã•ã‚ŒãŸã‚¿ã‚°ã®ã†ã¡ã€æ¨™æº–ã‚¿ã‚°ã§ã‚‚ã€\fI\-tag\fRã‚„\fI\-taglet\fRオプションã§æ¸¡ã•ã‚ŒãŸã‚¿ã‚°ã§ã‚‚ãªã„ã‚‚ã®ã¯ã™ã¹ã¦ä¸æ˜Žã‚¿ã‚°ã¨ã¿ãªã•ã‚Œã€è­¦å‘ŠãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
+.sp
+標準タグã¯ã€æœ€åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®é †åºã§ãƒªã‚¹ãƒˆå†…ã«å†…部的ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚\fI\-tag\fRオプションを使用ã™ã‚‹ã¨ã€ãれらã®ã‚¿ã‚°ã¯ã“ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚標準タグã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ä½ç½®ã‹ã‚‰ç§»å‹•ã•ã‚Œã¾ã™ã€‚ãã®ãŸã‚ã€æ¨™æº–ã‚¿ã‚°ã®\fI\-tag\fRオプションをçœç•¥ã™ã‚‹ã¨ã€ãã‚Œã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ä½ç½®ã«é…ç½®ã•ã‚ŒãŸã¾ã¾ã«ãªã‚Šã¾ã™ã€‚
+.sp
+\fB競åˆã®å›žé¿\fR: 固有ã®åå‰ç©ºé–“を作æˆã™ã‚‹ã«ã¯ã€ãƒ‘ッケージã«ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹\fIcom\&.mycompany\&.todo\fRã¨ã„ã†åå‰ã®ã‚ˆã†ã«ã€ãƒ‰ãƒƒãƒˆã§åŒºåˆ‡ã‚‰ã‚ŒãŸåå‰ã‚’使用ã—ã¾ã™ã€‚Oracleã¯ã€ä»Šå¾Œã‚‚åå‰ã«ãƒ‰ãƒƒãƒˆã‚’å«ã¾ãªã„標準タグを作æˆã—ã¾ã™ã€‚ユーザーãŒä½œæˆã—ãŸã‚¿ã‚°ã¯ã€OracleãŒå®šç¾©ã™ã‚‹åŒã˜åå‰ã®ã‚¿ã‚°ã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fI@todo\fRã¨ã„ã†åå‰ã®ã‚¿ã‚°ã¾ãŸã¯ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã‚’ユーザーãŒä½œæˆã—ãŸå ´åˆã€ãã®å¾Œã«OracleãŒåŒã˜åå‰ã®æ¨™æº–タグを作æˆã—ã¦ã‚‚ã€ãã®ã‚¿ã‚°ã¾ãŸã¯ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã¯å¸¸ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒå®šç¾©ã—ãŸã®ã¨åŒã˜å‹•ä½œã‚’ä¿æŒã—ã¾ã™ã€‚
+.sp
+\fB注釈vs\&. Javadocã‚¿ã‚°\fR: 一般ã«ã€è¿½åŠ ã™ã‚‹å¿…è¦ã®ã‚るマークアップãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å½±éŸ¿ã‚’与ãˆãŸã‚Šãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãŸã‚Šã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã‚ã‚‹å ´åˆã€ãã®ãƒžãƒ¼ã‚¯ã‚¢ãƒƒãƒ—ã¯Javadocã‚¿ã‚°ã«ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã¯æ³¨é‡ˆã«ã—ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã¨æ³¨é‡ˆã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#annotations)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fI\-taglet\fRオプションを使用ã—ã¦ã€ã‚ˆã‚Šè¤‡é›‘ãªãƒ–ロック・タグやカスタム・インライン・タグも作æˆã§ãã¾ã™ã€‚
 .RE
 .PP
 \-taglet \fIclass\fR
 .RS 4
-¤½¤Î¥¿¥°¤Î¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤òµ¯Æ°¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fIclass\fRÃͤδ°Á´½¤¾þ̾¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥¿¥°¥ì¥Ã¥È¤Ï¡¢¥«¥¹¥¿¥à¡¦¥¿¥°¤Î¥Æ¥­¥¹¥È°ú¿ô¤Î¿ô¤âÄêµÁ¤·¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ï¡¢¤³¤ì¤é¤Î°ú¿ô¤ò¼õ¤±ÉÕ¤±¡¢½èÍý¤·¡¢½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤ÎÎã¤ò»ÈÍѤ·¤¿Ë­É٤ʥɥ­¥å¥á¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥¿¥°¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/taglet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥¿¥°¥ì¥Ã¥È¤Ï¡¢¥Ö¥í¥Ã¥¯¥¿¥°¤Þ¤¿¤Ï¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ÇÊØÍø¤Ç¤¹¡£¥¿¥°¥ì¥Ã¥È¤ÏǤ°Õ¤Î¿ô¤Î°ú¿ô¤ò¤È¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¥Æ¥­¥¹¥È¤òÂÀ»ú¤Ë¤¹¤ë¡¢²Õ¾ò½ñ¤­¤òºîÀ®¤¹¤ë¡¢¥Æ¥­¥¹¥È¤ò¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹¡¢¤½¤Î¾¤Î¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ê¤É¤Î¥«¥¹¥¿¥àÆ°ºî¤ò¼ÂÁõ¤Ç¤­¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ç»ØÄê¤Ç¤­¤ë¤Î¤Ï¡¢¥¿¥°¤ÎÇÛÃÖ¾ì½ê¤ÈÇÛÃÖ·Á¼°¤Î¤ß¤Ç¤¹¡£¤½¤Î¾¤Î¤¹¤Ù¤Æ¤Î·èÄê¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤Ë¤è¤Ã¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¤â¡¢Êñ´Þ¥¯¥é¥¹¤Î¥ê¥¹¥È¤«¤é¥¯¥é¥¹Ì¾¤òºï½ü¤¹¤ë¤Ê¤É¤Î½èÍý¤Ï¼Â¹Ô¤Ç¤­¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥¿¥°¤Î¥Æ¥­¥¹¥È¤ò¥Õ¥¡¥¤¥ë¤Ë½ÐÎϤ·¤¿¤ê¡¢ÊÌ¤Î¥×¥í¥»¥¹¤ò¥È¥ê¥¬¡¼¤¹¤ë¤Ê¤É¤ÎÉûºîÍѤÏÆÀ¤é¤ì¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fI\-tagletpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤Ë¡¢À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤ÎParameters¤ÈThrows¤Î´Ö¤ËTo Do¥¿¥°¥ì¥Ã¥È¤òÁÞÆþ¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ò¤½¤Î\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢Æɤ߼è¤ê¤¬º¤Æñ¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ãã®ã‚¿ã‚°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fIclass\fR値ã®å®Œå…¨ä¿®é£¾åを使用ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã¯ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°ã®æ•°ã‚‚定義ã—ã¾ã™ã€‚タグレットã¯ã€ã“れらã®å¼•æ•°ã‚’å—ã‘付ã‘ã€å‡¦ç†ã—ã€å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚タグレットã®ä¾‹ã‚’使用ã—ãŸè±Šå¯Œãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¤ã„ã¦ã¯ã€ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/taglet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+タグレットã¯ã€ãƒ–ロックタグã¾ãŸã¯ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã§ä¾¿åˆ©ã§ã™ã€‚タグレットã¯ä»»æ„ã®æ•°ã®å¼•æ•°ã‚’ã¨ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ãƒ†ã‚­ã‚¹ãƒˆã‚’太字ã«ã™ã‚‹ã€ç®‡æ¡æ›¸ãを作æˆã™ã‚‹ã€ãƒ†ã‚­ã‚¹ãƒˆã‚’ファイルã«æ›¸ã出ã™ã€ãã®ä»–ã®ãƒ—ロセスを開始ã™ã‚‹ãªã©ã®ã‚«ã‚¹ã‚¿ãƒ å‹•ä½œã‚’実装ã§ãã¾ã™ã€‚タグレットã§æŒ‡å®šã§ãã‚‹ã®ã¯ã€ã‚¿ã‚°ã®é…置場所ã¨é…置形å¼ã®ã¿ã§ã™ã€‚ãã®ä»–ã®ã™ã¹ã¦ã®æ±ºå®šã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ã‚ˆã£ã¦è¡Œã‚ã‚Œã¾ã™ã€‚タグレットを使用ã—ã¦ã‚‚ã€åŒ…å«ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‹ã‚‰ã‚¯ãƒ©ã‚¹åを削除ã™ã‚‹ãªã©ã®å‡¦ç†ã¯å®Ÿè¡Œã§ãã¾ã›ã‚“。ãŸã ã—ã€ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’ファイルã«å‡ºåŠ›ã—ãŸã‚Šã€åˆ¥ã®ãƒ—ロセスをトリガーã™ã‚‹ãªã©ã®å‰¯ä½œç”¨ã¯å¾—られã¾ã™ã€‚タグレットã¸ã®ãƒ‘スを指定ã™ã‚‹ã«ã¯ã€\fI\-tagletpath\fRオプションを使用ã—ã¾ã™ã€‚次ã«ã€ç”Ÿæˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®Parametersã¨Throwsã®é–“ã«To Doタグレットを挿入ã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚ã¾ãŸã¯ã€\fI\-taglet\fRオプションをãã®\fI\-tag\fRオプションã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€èª­ã¿å–ã‚ŠãŒå›°é›£ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3244,67 +3244,67 @@
 .PP
 \-tagletpath \fItagletpathlist\fR
 .RS 4
-taglet¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¤¿¤á¤Î¸¡º÷¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fItagletpathlist\fR¤Ë¤Ï¡¢¥³¥í¥ó(:)¤Ç¶èÀڤäÆÊ£¿ô¤Î¥Ñ¥¹¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£
+tagletクラス・ファイルを検索ã™ã‚‹ãŸã‚ã®æ¤œç´¢ãƒ‘スを指定ã—ã¾ã™ã€‚\fItagletpathlist\fRã«ã¯ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ãƒ‘スをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚
 .RE
 .PP
 \-docfilesubdirs
 .RS 4
-doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ç¥£¡¼¥×¡¦¥³¥Ô¡¼¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£°¸Àè¤Ë¤Ï¡¢¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤È¤½¤Î¤¹¤Ù¤ÆÆâÍƤ¬ºÆµ¢Åª¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥êoc\-files/example/images¤È¤½¤ÎÆâÍƤ¬¤¹¤Ù¤Æ¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤³¤³¤Ç¤â¡¢¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü³°¤¹¤ë»ØÄ꤬²Äǽ¤Ç¤¹¡£
+doc\-filesディレクトリã®ãƒ‡ã‚£ãƒ¼ãƒ—・コピーを有効ã«ã—ã¾ã™ã€‚宛先ã«ã¯ã€ã‚µãƒ–ディレクトリã¨ãã®ã™ã¹ã¦å†…容ãŒå†å¸°çš„ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªoc\-files/example/imagesã¨ãã®å†…容ãŒã™ã¹ã¦ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã“ã“ã§ã‚‚ã€ã‚µãƒ–ディレクトリを除外ã™ã‚‹æŒ‡å®šãŒå¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-excludedocfilessubdir \fIname1:name2\fR
 .RS 4
-»ØÄꤵ¤ì¤¿Ì¾Á°¤Îdoc\-files¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¤¹¤Ù¤Æ½ü³°¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢SCCS¤È¤½¤Î¾¤Î¥½¡¼¥¹¡¦¥³¡¼¥ÉÀ©¸æ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Î¥³¥Ô¡¼¤òËɤ®¤Þ¤¹¡£
+指定ã•ã‚ŒãŸåå‰ã®doc\-filesサブディレクトリをã™ã¹ã¦é™¤å¤–ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€SCCSã¨ãã®ä»–ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰åˆ¶å¾¡ã‚µãƒ–ディレクトリã®ã‚³ãƒ”ーを防ãŽã¾ã™ã€‚
 .RE
 .PP
 \-noqualifier all | \fIpackagename1\fR:\fIpackagename2\&.\&.\&.\fR
 .RS 4
-½ÐÎϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤«¤é½¤¾þ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¾Êά¤·¤Þ¤¹¡£\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ï¡¢\fIall\fR(¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά)¡¢¤Þ¤¿¤Ï½¤¾þ»Ò¤È¤·¤Æºï½ü¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥³¥í¥ó¶èÀÚ¤ê¥ê¥¹¥È(¥ï¥¤¥ë¥É¥«¡¼¥É¤â²Ä)¡¢¤Î¤¤¤º¤ì¤«¤È¤Ê¤ê¤Þ¤¹¡£¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤¬É½¼¨¤µ¤ì¤ë°ÌÃÖ¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬ºï½ü¤µ¤ì¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά¤·¤Þ¤¹¡£\fI\-noqualifier all\fR
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\&.lang\fR¤ª¤è¤Ó\fIjava\&.io\fR¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά¤·¤Þ¤¹:
-\fI\-noqualifier java\&.lang:java\&.io\fR¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\fR¤Ç»Ï¤Þ¤ë¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ª¤è¤Ó\fIcom\&.sun\fR¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¾Êά¤·¤Þ¤¹¤¬¡¢\fIjavax\fR¤Ï¾Êά¤·¤Þ¤»¤ó¡£\fI\-noqualifier java\&.*:com\&.sun\&.*\fR
-.sp
-¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤¬Á°½Ò¤ÎÆ°ºî¤Ë½¾¤Ã¤Æɽ¼¨¤µ¤ì¤ë¾ì¹ç¡¢Ì¾Á°¤ÏŬÀÚ¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥ë¡¼¥ë¤Ï¡¢\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤ºÍ­¸ú¤Ç¤¹¡£
+出力ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã‹ã‚‰ä¿®é£¾ãƒ‘ッケージåã‚’çœç•¥ã—ã¾ã™ã€‚\fI\-noqualifier\fRオプションã®å¼•æ•°ã¯ã€\fIall\fR(ã™ã¹ã¦ã®ãƒ‘ッケージ修飾å­ã‚’çœç•¥)ã€ã¾ãŸã¯ä¿®é£¾å­ã¨ã—ã¦å‰Šé™¤ã™ã‚‹ãƒ‘ッケージã®ã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆ(ワイルドカードもå¯)ã€ã®ã„ãšã‚Œã‹ã¨ãªã‚Šã¾ã™ã€‚クラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹åãŒè¡¨ç¤ºã•ã‚Œã‚‹ä½ç½®ã‹ã‚‰ãƒ‘ッケージåãŒå‰Šé™¤ã•ã‚Œã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+次ã®ä¾‹ã§ã¯ã€ã™ã¹ã¦ã®ãƒ‘ッケージ修飾å­ã‚’çœç•¥ã—ã¾ã™ã€‚\fI\-noqualifier all\fR
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\&.lang\fRãŠã‚ˆã³\fIjava\&.io\fRパッケージ修飾å­ã‚’çœç•¥ã—ã¾ã™:
+\fI\-noqualifier java\&.lang:java\&.io\fR。
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\fRã§å§‹ã¾ã‚‹ãƒ‘ッケージ修飾å­ãŠã‚ˆã³\fIcom\&.sun\fRサブパッケージをçœç•¥ã—ã¾ã™ãŒã€\fIjavax\fRã¯çœç•¥ã—ã¾ã›ã‚“。\fI\-noqualifier java\&.*:com\&.sun\&.*\fR
+.sp
+パッケージ修飾å­ãŒå‰è¿°ã®å‹•ä½œã«å¾“ã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹å ´åˆã€åå‰ã¯é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ã“ã®ãƒ«ãƒ¼ãƒ«ã¯ã€\fI\-noqualifier\fRオプションを使用ã™ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšæœ‰åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-notimestamp
 .RS 4
-¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬ÍÞÀ©¤µ¤ì¤Þ¤¹¡£³Æ¥Ú¡¼¥¸¤ÎÀèƬ¶á¤¯¤Ë¤¢¤ë¡¢À¸À®¤µ¤ì¤¿HTMLÆâ¤ÎHTML¥³¥á¥ó¥È¤Ç¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬±£¤µ¤ì¤Þ¤¹¡£\fI\-notimestamp\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò2¤Ä¤Î¥½¡¼¥¹¡¦¥Ù¡¼¥¹¤Ç¼Â¹Ô¤·¡¢¤½¤ì¤é¤Î´Ö¤Îº¹Ê¬\fIdiff\fR¤ò¼èÆÀ¤¹¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ë¤è¤ë\fIdiff\fR¤ÎȯÀ¸¤òËɤ°¤«¤é¤Ç¤¹(¤½¤¦¤Ç¤Ê¤¤¤È¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤Ç\fIdiff\fR¤Ë¤Ê¤ê¤Þ¤¹)¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ë¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹Èֹ椬´Þ¤Þ¤ì¡¢¸½ºß¤Ç¤Ï¡¢\fI<!\-\- Generated by javadoc (build 1\&.5\&.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\->\fR¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+タイムスタンプãŒæŠ‘制ã•ã‚Œã¾ã™ã€‚å„ページã®å…ˆé ­è¿‘ãã«ã‚ã‚‹ã€ç”Ÿæˆã•ã‚ŒãŸHTML内ã®HTMLコメントã§ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒéš ã•ã‚Œã¾ã™ã€‚\fI\-notimestamp\fRオプションã¯ã€\fIjavadoc\fRコマンドを2ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ™ãƒ¼ã‚¹ã§å®Ÿè¡Œã—ã€ãれらã®é–“ã®å·®åˆ†\fIdiff\fRã‚’å–å¾—ã™ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚タイムスタンプã«ã‚ˆã‚‹\fIdiff\fRã®ç™ºç”Ÿã‚’防ãã‹ã‚‰ã§ã™(ãã†ã§ãªã„ã¨ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã§\fIdiff\fRã«ãªã‚Šã¾ã™)。タイムスタンプã«ã¯\fIjavadoc\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ãŒå«ã¾ã‚Œã€ç¾åœ¨ã§ã¯ã€\fI<!\-\- Generated by javadoc (build 1\&.5\&.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\->\fRã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-nocomment
 .RS 4
-¼çÀâÌÀ¤ª¤è¤Ó¤¹¤Ù¤Æ¤Î¥¿¥°¤ò´Þ¤à¥³¥á¥ó¥ÈËÜʸÁ´ÂΤòÍÞÀ©¤·¡¢Àë¸À¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢¸µ¤Ï°Û¤Ê¤ëÌÜŪ¤Î¤¿¤á¤À¤Ã¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òºÆÍøÍѤ·¡¢¿·¤·¤¤¥×¥í¥¸¥§¥¯¥È¤ÎÁᤤÃʳ¬¤Ç¥¹¥±¥ë¥È¥óHTML¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+主説明ãŠã‚ˆã³ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’å«ã‚€ã‚³ãƒ¡ãƒ³ãƒˆæœ¬æ–‡å…¨ä½“を抑制ã—ã€å®£è¨€ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã‚ˆã‚Šã€å…ƒã¯ç•°ãªã‚‹ç›®çš„ã®ãŸã‚ã ã£ãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†åˆ©ç”¨ã—ã€æ–°ã—ã„プロジェクトã®æ—©ã„段階ã§ã‚¹ã‚±ãƒ«ãƒˆãƒ³HTMLドキュメントを作æˆã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-sourcetab \fItablength\fR
 .RS 4
-¥½¡¼¥¹Æâ¤Ç³Æ¥¿¥Ö¤¬»ÈÍѤ¹¤ë¶õÇòʸ»ú¤Î¿ô¤ò»ØÄꤷ¤Þ¤¹¡£
-.RE
-.SH "¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë"
+ソース内ã§å„タブãŒä½¿ç”¨ã™ã‚‹ç©ºç™½æ–‡å­—ã®æ•°ã‚’指定ã—ã¾ã™ã€‚
+.RE
+.SH "コマンドライン引数ファイル"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤òû¤¯¤·¤¿¤ê´Ê·é¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ú¿ô(\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤¬Æþ¤Ã¤¿1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤³¤È¤òÍøÍѤ¹¤ì¤Ð¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¾å¤Ç¤â¡¢Ç¤°Õ¤ÎŤµ¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドを短ãã—ãŸã‚Šç°¡æ½”ã«ã—ãŸã‚Šã™ã‚‹ãŸã‚ã«ã€\fIjavadoc\fRコマンドã«å¯¾ã™ã‚‹å¼•æ•°(\fI\-J\fRオプションを除ã)ãŒå…¥ã£ãŸ1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã“ã¨ã‚’利用ã™ã‚Œã°ã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§ã‚‚ã€ä»»æ„ã®é•·ã•ã®\fIjavadoc\fRコマンドを作æˆã§ãã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavac\fR¤Î¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò¼«Í³¤ËÁȤ߹礻¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ°ú¿ô¤Ï¡¢¥¹¥Ú¡¼¥¹¤Þ¤¿¤Ï²þ¹Ô¤Ç¶èÀÚ¤ê¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤ËËä¤á¹þ¤Þ¤ì¤¿¶õÇò¤¬¤¢¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾Á´ÂΤòÆó½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£
+引数ファイルã«ã¯ã€\fIjavac\fRã®ã‚ªãƒ—ションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを自由ã«çµ„ã¿åˆã›ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ファイル内ã®å„引数ã¯ã€ã‚¹ãƒšãƒ¼ã‚¹ã¾ãŸã¯æ”¹è¡Œã§åŒºåˆ‡ã‚Šã¾ã™ã€‚ファイルåã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç©ºç™½ãŒã‚ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«å全体を二é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ǤϤʤ¯¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ê¥¹¥È¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É(\fI*\fR)¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢*\&.java¤È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤Æ¡¢¥Õ¥¡¥¤¥ë¤òºÆµ¢Åª¤Ë²ò¼á¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤â¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïµ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤Þ¤¹¤¬¡¢µ¯Æ°¥Ä¡¼¥ë¤Ç¤Ï°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¤«¤é¤Ç¤¹¡£
+引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã§ã¯ãªãã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ã“れらã®ãƒªã‚¹ãƒˆã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(\fI*\fR)ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€*\&.javaã¨ã¯æŒ‡å®šã§ãã¾ã›ã‚“。アットマーク(@)を使用ã—ã¦ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†å¸°çš„ã«è§£é‡ˆã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã¾ãŸã€\fI\-J\fRオプションもサãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯èµ·å‹•ãƒ„ールã«æ¸¡ã•ã‚Œã¾ã™ãŒã€èµ·å‹•ãƒ„ールã§ã¯å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ãªã„ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavadoc\fR¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢³Æ°ú¿ô¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È¥Õ¥¡¥¤¥ë̾¤ÎÀèƬ¤Ë@ʸ»ú¤òÉÕ¤±¤ÆÅϤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯(@)ʸ»ú¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjavadoc\fRを実行ã™ã‚‹ã¨ãã«ã€å„引数ファイルã®ãƒ‘スã¨ãƒ•ã‚¡ã‚¤ãƒ«åã®å…ˆé ­ã«@文字を付ã‘ã¦æ¸¡ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)文字ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-\fIargfile\fR¤È¤¤¤¦Ì¾Á°¤Î1¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¤¹¤Ù¤Æ¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É°ú¿ô¤òÊÝ»ý¤Ç¤­¤Þ¤¹¡£\fIjavadoc @argfile\fR¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë¡¢¤³¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤ÏξÊý¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤ¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fBExample 1\fR, å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+\fIargfile\fRã¨ã„ã†åå‰ã®1ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ã™ã¹ã¦ã®\fIjavadoc\fRコマンド引数をä¿æŒã§ãã¾ã™ã€‚\fIjavadoc @argfile\fR次ã®ä¾‹ã«ç¤ºã™ã‚ˆã†ã«ã€ã“ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ä¸¡æ–¹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-\fBExample 2\fR, 2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-¼¡¤Î¤è¤¦¤Ë¡¢2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥óÍѤË1¤Ä¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾ÍѤË1¤Ä¤Ç¤¹¡£¼¡¤Î¥ê¥¹¥È¤Ç¤Ï¹Ô·Ñ³ʸ»ú¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤»¤ó¡£
-.sp
-¼¡¤ÎÆâÍƤò´Þ¤à¡¢options¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+\fBExample 2\fR, 2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+次ã®ã‚ˆã†ã«ã€2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã®ã‚ªãƒ—ション用ã«1ã¤ã€ãƒ‘ッケージåã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å用ã«1ã¤ã§ã™ã€‚次ã®ãƒªã‚¹ãƒˆã§ã¯è¡Œç¶™ç¶šæ–‡å­—を使用ã—ã¦ã„ã¾ã›ã‚“。
+.sp
+次ã®å†…容をå«ã‚€ã€optionsã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3324,7 +3324,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÆâÍƤò´Þ¤à¡¢packages¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次ã®å†…容をå«ã‚€ã€packagesã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3337,7 +3337,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¤è¤¦¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3350,9 +3350,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥Ñ¥¹¤ò»ÈÍѤ·¤¿°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢(\fIpath1\fR¤ä\fIpath2\fR¤Ç¤Ï¤Ê¤¯)¼¡¤Î¤è¤¦¤Ë¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£
+\fBExample 3\fR, パスを使用ã—ãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€(\fIpath1\fRã‚„\fIpath2\fRã§ã¯ãªã)次ã®ã‚ˆã†ã«ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3365,9 +3365,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, ¥ª¥×¥·¥ç¥ó°ú¿ô
-.RS 4
-¼¡¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤ò°ú¿ô¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£Ä¹¤¤°ú¿ô¤ò»ØÄê¤Ç¤­¤ë¤Î¤Ç¡¢\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤Î¤è¤¦¤Ê¥Æ¥­¥¹¥È°ú¿ô¤ò´Þ¤à¡¢bottom¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fBExample 4\fR, オプション引数
+.RS 4
+次ã«ã€\fIjavadoc\fRコマンドã®ã‚ªãƒ—ションã«å¯¾ã™ã‚‹å¼•æ•°ã‚’引数ファイルã«æ ¼ç´ã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚é•·ã„引数を指定ã§ãã‚‹ã®ã§ã€\fI\-bottom\fRオプションを使用ã—ã¾ã™ã€‚次ã®ã‚ˆã†ãªãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°ã‚’å«ã‚€ã€bottomã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3382,37 +3382,37 @@
 .if n \{\
 .RE
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼¡¤Î¤è¤¦¤Ë¼Â¹Ô¤·¤Þ¤¹¡£\fI javadoc \-bottom @bottom @packages\fR
-.sp
-\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤ò°ú¿ô¥Õ¥¡¥¤¥ë¤ÎºÇ½é¤Ë´Þ¤á¤Æ¡¢¼¡¤Î¤è¤¦¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£\fIjavadoc @bottom @packages\fR
-.RE
-.SH "JAVADOC¥³¥Þ¥ó¥É¤Î¼Â¹Ô"
+\fIjavadoc\fRコマンドを次ã®ã‚ˆã†ã«å®Ÿè¡Œã—ã¾ã™ã€‚\fI javadoc \-bottom @bottom @packages\fR
+.sp
+\fI\-bottom\fRオプションを引数ファイルã®æœ€åˆã«å«ã‚ã¦ã€æ¬¡ã®ã‚ˆã†ã«\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚\fIjavadoc @bottom @packages\fR
+.RE
+.SH "JAVADOCコマンドã®å®Ÿè¡Œ"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤Ï\fIjavadoc \-J\-version\fR¥ª¥×¥·¥ç¥ó¤ÇÆÃÄê¤Ç¤­¤Þ¤¹¡£½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë¤Ïɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ê¥ê¡¼¥¹Èֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£\fI\-quiet\fR¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã¯\fIjavadoc \-J\-version\fRオプションã§ç‰¹å®šã§ãã¾ã™ã€‚出力ストリームã«ã¯æ¨™æº–ドックレットã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚\fI\-quiet\fRオプションã§ç„¡åŠ¹ã«ã§ãã¾ã™ã€‚
 .PP
-Java¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤«¤é\fIjavadoc\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¸ø³«¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fIcom\&.sun\&.tools\&.javadoc\&.Main\fR¤Ë¤¢¤ê¤Þ¤¹(¤Þ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏºÆÆþ²Äǽ¤Ç¤¹)¡£¾ÜºÙ¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/standard\-doclet\&.html#runningprogrammatically)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java言語ã§è¨˜è¿°ã•ã‚ŒãŸãƒ—ログラムã‹ã‚‰\fIjavadoc\fRコマンドを起動ã™ã‚‹ã«ã¯å…¬é–‹ãƒ—ログラマティック・インタフェースを使用ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯\fIcom\&.sun\&.tools\&.javadoc\&.Main\fRã«ã‚ã‚Šã¾ã™(ã¾ãŸ\fIjavadoc\fRコマンドã¯å†å…¥å¯èƒ½ã§ã™)。詳細ã¯ã€æ¨™æº–ドックレット
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/standard\-doclet\&.html#runningprogrammatically)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¼¡¤Î¼ê½ç¤Ç¤Ï¡¢É¸½àHTML¥É¥Ã¥¯¥ì¥Ã¥È¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤ò¸Æ¤Ó½Ð¤¹¤Ë¤Ï¡¢\fI\-doclet\fR¤ª¤è¤Ó\fI\-docletpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SS "´Êñ¤ÊÎã"
+次ã®æ‰‹é †ã§ã¯ã€æ¨™æº–HTMLドックレットを呼ã³å‡ºã—ã¾ã™ã€‚カスタム・ドックレットを呼ã³å‡ºã™ã«ã¯ã€\fI\-doclet\fRãŠã‚ˆã³\fI\-docletpath\fRオプションを使用ã—ã¾ã™ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SS "ç°¡å˜ãªä¾‹"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤËÂФ·¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤â¡¢¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£³Æ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÂбþ¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê̾¤ò»ý¤Á¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ‘ッケージ全体ã«å¯¾ã—ã¦å®Ÿè¡Œã™ã‚‹ã“ã¨ã‚‚ã€å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦å®Ÿè¡Œã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å„パッケージåã¯ã€ãã‚Œãžã‚Œã®ãƒ‘ッケージåã«å¯¾å¿œã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã‚’æŒã¡ã¾ã™ã€‚
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï/home/src/java/awt/*\&.java¤Ë¤¢¤ê¤Þ¤¹¡£À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ï/home/html¤Ç¤¹¡£
-1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÈƱ¤¸Ì¾Á°¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë³ÊǼ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯/home/src/java/awt/*\&.javaã«ã‚ã‚Šã¾ã™ã€‚生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯/home/htmlã§ã™ã€‚
+1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+パッケージをドキュメント化ã™ã‚‹ã«ã¯ã€ãã®ãƒ‘ッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ãã®ãƒ‘ッケージã¨åŒã˜åå‰ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«æ ¼ç´ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬(\fIjava\&.awt\&.color\fR¤Î¤è¤¦¤Ë¥É¥Ã¥È¤Ç¶èÀÚ¤é¤ì¤¿)Ê£¿ô¤Î¼±Ê̻Ҥ«¤é¹½À®¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¸å³¤Î³Æ¼±Ê̻Ҥ¬²¼°Ì¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(ava/awt/color¤Ê¤É)¤ËÂбþ¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+パッケージåãŒ(\fIjava\&.awt\&.color\fRã®ã‚ˆã†ã«ãƒ‰ãƒƒãƒˆã§åŒºåˆ‡ã‚‰ã‚ŒãŸ)複数ã®è­˜åˆ¥å­ã‹ã‚‰æ§‹æˆã•ã‚Œã¦ã„ã‚‹å ´åˆã€å¾Œç¶šã®å„識別å­ãŒä¸‹ä½ã®ã‚µãƒ–ディレクトリ(ava/awt/colorãªã©)ã«å¯¾å¿œã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¤¿¤á¤ÎÊ£¿ô¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢°Û¤Ê¤ë¾ì½ê¤Ë¤¢¤ë¤½¤Î¤è¤¦¤Ê2¤Ä¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¦¥Ä¥ê¡¼¤Ëʬ¤±¤Æ³ÊǼ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤½¤Î¾ì¹ç¤Ï\fI\-sourcepath\fR¤Ë¤è¤Ã¤Æ¤½¤ÎξÊý¤Î¾ì½ê¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢src1/java/awt/color¤Èsrc2/java/awt/color¡£
+1ã¤ã®ãƒ‘ッケージã®ãŸã‚ã®è¤‡æ•°ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ç•°ãªã‚‹å ´æ‰€ã«ã‚ã‚‹ãã®ã‚ˆã†ãª2ã¤ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ»ãƒ„リーã«åˆ†ã‘ã¦æ ¼ç´ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ãã®å ´åˆã¯\fI\-sourcepath\fRã«ã‚ˆã£ã¦ãã®ä¸¡æ–¹ã®å ´æ‰€ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€src1/java/awt/colorã¨src2/java/awt/color。
 .PP
-¥Ç¥£¥ì¥¯¥È¥ê¤ÎÊѹ¹(\fIcd\fR¥³¥Þ¥ó¥É¤ò»ÈÍÑ)¤Þ¤¿¤Ï\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¼¡¤ÎÎã¤ÇξÊý¤ÎÁªÂò»è¤ò¼¨¤·¤Þ¤¹¡£
+ディレクトリã®å¤‰æ›´(\fIcd\fRコマンドを使用)ã¾ãŸã¯\fI\-sourcepath\fRオプションã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドを実行ã§ãã¾ã™ã€‚次ã®ä¾‹ã§ä¸¡æ–¹ã®é¸æŠžè‚¢ã‚’示ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, 1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤«¤éºÆµ¢Åª¤Ë¼Â¹Ô
-.RS 4
-¤³¤ÎÎã¤Ç¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ç¤°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¡¢\fI\-sourcepath\fR¤ò»ÈÍѤ·¡¢ºÆµ¢Åª½èÍý¤Î¤¿¤á¤Ë\fI\-subpackages\fR
-(1\&.4¤Î¿·¥ª¥×¥·¥ç¥ó)¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢java¥Ç¥£¥ì¥¯¥È¥ê¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¤¿¤É¤ê¤Þ¤¹¤¬¡¢\fIjava\&.net\fR¤È\fIjava\&.lang\fR¤ò¥ë¡¼¥È¤Ë»ý¤Ä¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤Þ¤¹¡£\fIjava\&.lang\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ç¤¢¤ë\fIjava\&.lang\&.ref\fR¤¬½ü³°¤µ¤ì¤ëÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤ò²¼Êý¤Ë¤¿¤É¤ë¤Ë¤Ï¡¢\fIjava:javax:org\&.xml\&.sax\fR¤Î¤è¤¦¤Ë¡¢¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò\fI\-subpackages\fR¤Î°ú¿ô¤ËÄɲä·¤Þ¤¹¡£
+\fBExample 1\fR, 1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã‹ã‚‰å†å¸°çš„ã«å®Ÿè¡Œ
+.RS 4
+ã“ã®ä¾‹ã§ã¯\fIjavadoc\fRコマンドãŒä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œã§ãるよã†ã«ã€\fI\-sourcepath\fRを使用ã—ã€å†å¸°çš„処ç†ã®ãŸã‚ã«\fI\-subpackages\fR
+(1\&.4ã®æ–°ã‚ªãƒ—ション)を使用ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€javaディレクトリã®ã‚µãƒ–パッケージをãŸã©ã‚Šã¾ã™ãŒã€\fIjava\&.net\fRã¨\fIjava\&.lang\fRをルートã«æŒã¤ãƒ‘ッケージã¯é™¤å¤–ã•ã‚Œã¾ã™ã€‚\fIjava\&.lang\fRã®ã‚µãƒ–パッケージã§ã‚ã‚‹\fIjava\&.lang\&.ref\fRãŒé™¤å¤–ã•ã‚Œã‚‹ç‚¹ã«æ³¨æ„ã—ã¦ãã ã•ã„。ã¾ãŸã€ä»–ã®ãƒ‘ッケージ・ツリーを下方ã«ãŸã©ã‚‹ã«ã¯ã€\fIjava:javax:org\&.xml\&.sax\fRã®ã‚ˆã†ã«ã€ãれらã®ãƒ‘ッケージã®åå‰ã‚’\fI\-subpackages\fRã®å¼•æ•°ã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3425,9 +3425,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥ë¡¼¥È¤Ø¤Î°ÜÆ°¤ª¤è¤ÓÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤Î¼Â¹Ô
-.RS 4
-´°Á´½¤¾þ¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤Þ¤¹¡£¼¡¤Ë¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fBExample 2\fR, ルートã¸ã®ç§»å‹•ãŠã‚ˆã³æ˜Žç¤ºçš„ãªãƒ‘ッケージã®å®Ÿè¡Œ
+.RS 4
+完全修飾ã•ã‚ŒãŸãƒ‘ッケージã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã—ã¾ã™ã€‚次ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3439,12 +3439,12 @@
 .if n \{\
 .RE
 .\}
-¤Þ¤¿¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤ò²¼Êý¤Ë¤¿¤É¤ë¤Ë¤Ï¡¢j\fIava:javax:org\&.xml\&.sax\fR¤Î¤è¤¦¤Ë¡¢¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò\fI\-subpackages\fR¤Î°ú¿ô¤ËÄɲä·¤Þ¤¹¡£
+ã¾ãŸã€ä»–ã®ãƒ‘ッケージ・ツリーを下方ã«ãŸã©ã‚‹ã«ã¯ã€j\fIava:javax:org\&.xml\&.sax\fRã®ã‚ˆã†ã«ã€ãれらã®ãƒ‘ッケージã®åå‰ã‚’\fI\-subpackages\fRã®å¼•æ•°ã«è¿½åŠ ã—ã¾ã™ã€‚
 .RE
 .PP
-\fBExample 3\fR, 1¤Ä¤Î¥Ä¥ê¡¼¤ÎÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤ÎǤ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô
-.RS 4
-¤³¤Î¾ì¹ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬¤É¤³¤«¤ÏÌäÂê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢ºÇ¾å°Ì¥Ñ¥Ã¥±¡¼¥¸¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Æ\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+\fBExample 3\fR, 1ã¤ã®ãƒ„リーã®æ˜Žç¤ºçš„ãªãƒ‘ッケージã®ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œ
+.RS 4
+ã“ã®å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒã©ã“ã‹ã¯å•é¡Œã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fIjavadoc\fRコマンドを実行ã—ã€æœ€ä¸Šä½ãƒ‘ッケージã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¦\fI\-sourcepath\fRオプションを使用ã—ã¾ã™ã€‚ドキュメント化ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3457,9 +3457,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, Ê£¿ô¤Î¥Ä¥ê¡¼¤ÎÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤ÎǤ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô
-.RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢³Æ¥Ä¥ê¡¼¤Î¥ë¡¼¥È¤Ø¤Î¥Ñ¥¹¤Î¥³¥í¥ó¶èÀÚ¤ê¥ê¥¹¥È¤ò»ØÄꤷ¤Æ\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¡¢1¤Ä¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ë¸ºß¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¤¬¡¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Î¤É¤³¤«¤Ç¸«¤Ä¤«¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fBExample 4\fR, 複数ã®ãƒ„リーã®æ˜Žç¤ºçš„ãªãƒ‘ッケージã®ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œ
+.RS 4
+\fIjavadoc\fRコマンドを実行ã—ã€å„ツリーã®ãƒ«ãƒ¼ãƒˆã¸ã®ãƒ‘スã®ã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã‚’指定ã—ã¦\fI\-sourcepath\fRオプションを使用ã—ã¾ã™ã€‚ドキュメント化ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¾ã™ã€‚指定ã—ãŸãƒ‘ッケージã®ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€1ã¤ã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ä¸‹ã«å­˜åœ¨ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã®ã©ã“ã‹ã§è¦‹ã¤ã‹ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3470,16 +3470,16 @@
 .if n \{\
 .RE
 .\}
-¤¹¤Ù¤Æ¤Î¥±¡¼¥¹¤Çj\fIava\&.awt\fR¤ª¤è¤Ó\fIjava\&.awt\&.even\fRt¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î\fIpublic\fR¤ª¤è¤Ó\fIprotected\fR¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤Ä¤¤¤Æ¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢»ØÄꤵ¤ì¤¿À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤ËHTML¥Õ¥¡¥¤¥ë¤¬Êݸ¤µ¤ì¤Þ¤¹¡£2¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬À¸À®¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥É¥­¥å¥á¥ó¥È¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥ê¥¹¥È¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¡¢¤ª¤è¤Ó¥á¥¤¥ó¤Î¥¯¥é¥¹¡¦¥Ú¡¼¥¸¤È¤¤¤¦3¤Ä¤ÎHTML¥Õ¥ì¡¼¥à¤ò»ý¤Ä¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
-.RE
-1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¤Þ¤¿¡¢1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ·¤Æ¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¤Ï¡¢¼¡¤Î2¤Ä¤ÎÊýË¡¤Î¤¤¤º¤ì¤«¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£1¤Ä¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤òÊѹ¹¤¹¤ëÊýË¡(\fIcd\fR¤ò»ÈÍÑ)¡¢¤â¤¦1¤Ä¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò´°Á´¤Ë»ØÄꤹ¤ëÊýË¡¤Ç¤¹¡£ÁêÂХѥ¹¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òµ¯ÅÀ¤È¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ¹¤È¤­¤Ï¡¢\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¹¤Î¥°¥ë¡¼¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚±ãƒ¼ã‚¹ã§j\fIava\&.awt\fRãŠã‚ˆã³\fIjava\&.awt\&.even\fRtパッケージ内ã®\fIpublic\fRãŠã‚ˆã³\fIprotected\fRクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ã¤ã„ã¦ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€æŒ‡å®šã•ã‚ŒãŸç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«HTMLファイルãŒä¿å­˜ã•ã‚Œã¾ã™ã€‚2ã¤ä»¥ä¸Šã®ãƒ‘ッケージãŒç”Ÿæˆã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€ãƒ‘ッケージã®ãƒªã‚¹ãƒˆã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã€ãŠã‚ˆã³ãƒ¡ã‚¤ãƒ³ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã¨ã„ã†3ã¤ã®HTMLフレームをæŒã¤ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
+.RE
+1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+ã¾ãŸã€1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’渡ã—ã¦ã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚\fIjavadoc\fRã¯ã€æ¬¡ã®2ã¤ã®æ–¹æ³•ã®ã„ãšã‚Œã‹ã§å®Ÿè¡Œã§ãã¾ã™ã€‚1ã¤ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’変更ã™ã‚‹æ–¹æ³•(\fIcd\fRを使用)ã€ã‚‚ã†1ã¤ã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スを完全ã«æŒ‡å®šã™ã‚‹æ–¹æ³•ã§ã™ã€‚相対パスã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’起点ã¨ã—ã¾ã™ã€‚ソース・ファイルを渡ã™ã¨ãã¯ã€\fI\-sourcepath\fRオプションã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚アスタリスク(*)ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ã®ã‚°ãƒ«ãƒ¼ãƒ—を指定ã§ãã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ¥½¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹
-.RS 4
-¥½¡¼¥¹¤òÊÝ»ý¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹¤·¤Þ¤¹¡£¼¡¤Ë¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.sp
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIButton\fR¥¯¥é¥¹¤È\fICanvas\fR¥¯¥é¥¹¡¢¤ª¤è¤Ó̾Á°¤¬\fIGraphics\fR¤Ç»Ï¤Þ¤ë¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤Ï¤Ê¤¯¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥É¥­¥å¥á¥ó¥È¤Ï¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¤È¥á¥¤¥ó¡¦¥Ú¡¼¥¸¤È¤¤¤¦2¤Ä¤Î¥Õ¥ì¡¼¥à¤ò»ý¤Ä¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBExample 1\fR, ソース・ディレクトリã«å¤‰æ›´
+.RS 4
+ソースをä¿æŒã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¤‰æ›´ã—ã¾ã™ã€‚次ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
+.sp
+ã“ã®ä¾‹ã§ã¯ã€\fIButton\fRクラスã¨\fICanvas\fRクラスã€ãŠã‚ˆã³åå‰ãŒ\fIGraphics\fRã§å§‹ã¾ã‚‹ã‚¯ãƒ©ã‚¹ã«ã¤ã„ã¦ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚パッケージåã§ã¯ãªãソース・ファイルãŒ\fIjavadoc\fRコマンドã«å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã¨ãƒ¡ã‚¤ãƒ³ãƒ»ãƒšãƒ¼ã‚¸ã¨ã„ã†2ã¤ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’æŒã¤ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3493,9 +3493,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹
-.RS 4
-¤³¤ì¤Ï¡¢Æ±¤¸¥ë¡¼¥È¤«¤é¤ÎÊ̤Υµ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Î¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤ê¡¢³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¥ë¡¼¥È¤«¤é¤Î¥Ñ¥¹¤È¤È¤â¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fBExample 2\fR, パッケージã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¤‰æ›´
+.RS 4
+ã“ã‚Œã¯ã€åŒã˜ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®åˆ¥ã®ã‚µãƒ–パッケージã®å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ドキュメント化ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚パッケージã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»ã‚Šã€å„ソース・ファイルをã€ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®ãƒ‘スã¨ã¨ã‚‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3509,9 +3509,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, Ǥ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥È²½
-.RS 4
-¤³¤Î¾ì¹ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬¤É¤³¤«¤ÏÌäÂê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤ÎÀäÂХѥ¹(¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹)¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fBExample 3\fR, ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–
+.RS 4
+ã“ã®å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒã©ã“ã‹ã¯å•é¡Œã§ã¯ã‚ã‚Šã¾ã›ã‚“。ドキュメント化ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®çµ¶å¯¾ãƒ‘ス(ã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘ス)を指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3524,8 +3524,8 @@
 .RE
 .\}
 .RE
-¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤȸġ¹¤Î¥¯¥é¥¹¤òƱ»þ¤Ë»ØÄꤷ¤Æ¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¼¡¤Ë¡¢Á°½Ò¤Î2¤Ä¤ÎÎã¤òÁȤ߹礻¤¿Îã¤ò¼¨¤·¤Þ¤¹¡£\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥Ñ¥¹¤ËÂФ·¤Æ¤Ï»ÈÍѤǤ­¤Þ¤¹¤¬¡¢¸Ä¡¹¤Î¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ËÂФ·¤Æ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+パッケージ全体ã¨å€‹ã€…ã®ã‚¯ãƒ©ã‚¹ã‚’åŒæ™‚ã«æŒ‡å®šã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚次ã«ã€å‰è¿°ã®2ã¤ã®ä¾‹ã‚’組ã¿åˆã›ãŸä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-sourcepath\fRオプションã¯ã€ãƒ‘ッケージã¸ã®ãƒ‘スã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã™ãŒã€å€‹ã€…ã®ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -3537,14 +3537,14 @@
 .if n \{\
 .RE
 .\}
-.SS "¼ÂºÝ¤ÎÎã"
+.SS "実際ã®ä¾‹"
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤ª¤è¤Ó\fImakefile\fR¥Ð¡¼¥¸¥ç¥ó¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤òJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥àAPI¤Ç¼Â¹Ô¤·¤Þ¤¹¡£Java SE 1\&.2¤ÇÌó1500¸Ä¤Îpublic¤ª¤è¤Óprotected¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢180MB¤Î¥á¥â¥ê¡¼¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Á¤é¤ÎÎã¤â¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤ÇÀäÂХѥ¹¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤¿¤á¡¢Ç¤°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤éƱ¤¸\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÎÎã.PP
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ìÉô¤Î¥·¥§¥ë¤ËÂФ·¤ÆŤ¹¤®¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÀ©¸Â¤ò²óÈò¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãŠã‚ˆã³\fImakefile\fRãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®\fIjavadoc\fRコマンドをJavaプラットフォームAPIã§å®Ÿè¡Œã—ã¾ã™ã€‚Java SE 1\&.2ã§ç´„1500個ã®publicãŠã‚ˆã³protectedクラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã«ã¯ã€180MBã®ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’使用ã—ã¾ã™ã€‚ã©ã¡ã‚‰ã®ä¾‹ã‚‚オプションã®å¼•æ•°ã§çµ¶å¯¾ãƒ‘スãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰åŒã˜\fIjavadoc\fRコマンドを実行ã§ãã¾ã™ã€‚
+コマンドラインã®ä¾‹.PP
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä¸€éƒ¨ã®ã‚·ã‚§ãƒ«ã«å¯¾ã—ã¦é•·ã™ãŽã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®åˆ¶é™ã‚’回é¿ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¾ã™ã€‚ã¾ãŸã¯ã€ã‚·ã‚§ãƒ«ãƒ»ã‚¹ã‚¯ãƒªãƒ—トを記述ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIpackages\fR¤Ï½èÍý¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à̾Á°¤Ç¡¢\fIjava\&.applet\fR
-\fIjava\&.lang\fR¤Ê¤É¤Ç¤¹¡£³Æ¥ª¥×¥·¥ç¥ó¤Î¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤Þ¤ì¤¿°ú¿ô¤ÎÆ⦤ˤϡ¢²þ¹Ôʸ»ú¤òÁÞÆþ¤Ç¤­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¤³¤ÎÎã¤ò¥³¥Ô¡¼¡¦¥¢¥ó¥É¡¦¥Ú¡¼¥¹¥È¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤«¤é²þ¹Ôʸ»ú¤òºï½ü¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIpackages\fRã¯å‡¦ç†ã™ã‚‹ãƒ‘ッケージをå«ã‚€åå‰ã§ã€\fIjava\&.applet\fR
+\fIjava\&.lang\fRãªã©ã§ã™ã€‚å„オプションã®ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã¾ã‚ŒãŸå¼•æ•°ã®å†…å´ã«ã¯ã€æ”¹è¡Œæ–‡å­—を挿入ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã“ã®ä¾‹ã‚’コピー・アンド・ペーストã™ã‚‹å ´åˆã¯ã€\fI\-bottom\fRオプションã‹ã‚‰æ”¹è¡Œæ–‡å­—を削除ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -3571,10 +3571,10 @@
 .if n \{\
 .RE
 .\}
-¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹.PP
-Javadoc Access API¤Ç¤Ï¡¢¿·¤·¤¤¥×¥í¥»¥¹¤ò¼Â¹Ô¤·¤Ê¤¯¤Æ¤â¡¢Javadoc¥Ä¡¼¥ë¤òJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤«¤éľÀܵ¯Æ°¤Ç¤­¤Þ¤¹¡£
+プログラマティック・インタフェース.PP
+Javadoc Access APIã§ã¯ã€æ–°ã—ã„プロセスを実行ã—ãªãã¦ã‚‚ã€JavadocツールをJavaアプリケーションã‹ã‚‰ç›´æŽ¥èµ·å‹•ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¼¡¤Îʸ¤Ï¥³¥Þ¥ó¥É\fIjavadoc \-d /home/html \-sourcepath /home/src \-subpackages java \-exclude java\&.net:java\&.lang com\&.example\fR¤ÈƱÅù¤Ç¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®æ–‡ã¯ã‚³ãƒžãƒ³ãƒ‰\fIjavadoc \-d /home/html \-sourcepath /home/src \-subpackages java \-exclude java\&.net:java\&.lang com\&.example\fRã¨åŒç­‰ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3599,13 +3599,13 @@
 .RE
 .\}
 .PP
-\fIrun\fR¥á¥½¥Ã¥É¤ÎºÇ½é¤Î3¤Ä¤Î°ú¿ô¤Ï¡¢ÆþÎÏ¡¢É¸½à½ÐÎÏ¡¢¤ª¤è¤Óɸ½à¥¨¥é¡¼¡¦¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤Þ¤¹¡£\fINull\fR¤Ï\fISystem\&.in\fR¡¢\fISystem\&.out\fR¤ª¤è¤Ó\fISystem\&.err\fR¤½¤ì¤¾¤ì¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
-.SS "makefile¤ÎÎã"
+\fIrun\fRメソッドã®æœ€åˆã®3ã¤ã®å¼•æ•°ã¯ã€å…¥åŠ›ã€æ¨™æº–出力ã€ãŠã‚ˆã³æ¨™æº–エラー・ストリームを指定ã—ã¾ã™ã€‚\fINull\fRã¯\fISystem\&.in\fRã€\fISystem\&.out\fRãŠã‚ˆã³\fISystem\&.err\fRãã‚Œãžã‚Œã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
+.SS "makefileã®ä¾‹"
 .PP
-¤³¤³¤Ç¤Ï¡¢GNU
-\fImakefile\fR¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fImakefile\fR¤Î°ú¿ô¤Ï¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£Windows
-\fImakefile\fR¤ÎÎã¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc FAQ¤Î\fImakefiles\fR¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html#makefiles)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+ã“ã“ã§ã¯ã€GNU
+\fImakefile\fRã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fImakefile\fRã®å¼•æ•°ã¯ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚Windows
+\fImakefile\fRã®ä¾‹ã«ã¤ã„ã¦ã¯ã€Javadoc FAQã®\fImakefiles\fRã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html#makefiles)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
 .if n \{\
 .RS 4
@@ -3642,7 +3642,7 @@
 .if n \{\
 .RE
 .\}
-.SS "Ãí°Õ"
+.SS "注æ„"
 .sp
 .RS 4
 .ie n \{\
@@ -3652,7 +3652,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¥É¥­¥å¥á¥ó¥È¡¦¥¿¥¤¥È¥ë¤¬¥¦¥£¥ó¥É¥¦¡¦¥¿¥¤¥È¥ë¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤Î¥Æ¥­¥¹¥È¤Ï¡¢\fI\-doctitle\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤Ç¤¹¤¬¡¢HTML¥¿¥°¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢HTML¥¿¥°¤¬¡¢¥¦¥£¥ó¥É¥¦¡¦¥¿¥¤¥È¥ëÆâ¤Ë¤½¤Î¤Þ¤Þ¤Î¥Æ¥­¥¹¥È¤È¤·¤Æɽ¼¨¤µ¤ì¤ë¤Î¤òËɤ°¤¿¤á¤Ç¤¹¡£
+\fI\-windowtitle\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ»ã‚¿ã‚¤ãƒˆãƒ«ãŒã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ»ã‚¿ã‚¤ãƒˆãƒ«ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚\fI\-windowtitle\fRオプションã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€\fI\-doctitle\fRオプションã¨åŒã˜ã§ã™ãŒã€HTMLã‚¿ã‚°ã¯å«ã¾ã‚Œã¾ã›ã‚“。ã“ã‚Œã¯ã€HTMLã‚¿ã‚°ãŒã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ»ã‚¿ã‚¤ãƒˆãƒ«å†…ã«ãã®ã¾ã¾ã®ãƒ†ã‚­ã‚¹ãƒˆã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã‚‹ã®ã‚’防ããŸã‚ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -3663,7 +3663,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-footer\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¥Ø¥Ã¥À¡¼¡¦¥Æ¥­¥¹¥È¤¬¥Õ¥Ã¥¿¡¼¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+\fI\-footer\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆãŒãƒ•ãƒƒã‚¿ãƒ¼ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -3674,9 +3674,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤³¤ÎÎã¤Ç¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¤¬¡¢\fI\-classpath\fR¤È\fI\-link\fR¤â½ÅÍפʥª¥×¥·¥ç¥ó¤Ç¤¹¡£
-.RE
-.SH "°ìÈÌŪ¤Ê¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°"
+ã“ã®ä¾‹ã§ã¯å¿…è¦ã‚ã‚Šã¾ã›ã‚“ãŒã€\fI\-classpath\fRã¨\fI\-link\fRã‚‚é‡è¦ãªã‚ªãƒ—ションã§ã™ã€‚
+.RE
+.SH "一般的ãªãƒˆãƒ©ãƒ–ルシューティング"
 .sp
 .RS 4
 .ie n \{\
@@ -3686,7 +3686,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏÍ­¸ú¤Ê¥¯¥é¥¹Ì¾¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤Î¤ß¤òÆɤ߼è¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòÀµ¤·¤¯Æɤ߼è¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¯¥é¥¹Ì¾¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯æœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚’読ã¿å–ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドãŒãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を正ã—ã読ã¿å–ã£ã¦ã„ãªã„å ´åˆã¯ã€ã‚¯ãƒ©ã‚¹åãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -3697,27 +3697,27 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¶¦Ä̤ÎÉÔ¶ñ¹ç¤ª¤è¤Ó¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤Î¥Ò¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc FAQ
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.RE
-.SH "¥¨¥é¡¼¤È·Ù¹ð"
+共通ã®ä¸å…·åˆãŠã‚ˆã³ãƒˆãƒ©ãƒ–ルシューティングã®ãƒ’ントã«ã¤ã„ã¦ã¯ã€Javadoc FAQ
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.RE
+.SH "エラーã¨è­¦å‘Š"
 .PP
-¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¥á¥Ã¥»¡¼¥¸¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤ÈÀë¸À¹Ô(¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ÎÆÃÄê¤Î¹Ô¤Ç¤Ï¤Ê¤¤)¤Î¹ÔÈֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£
+エラーãŠã‚ˆã³è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«åã¨å®£è¨€è¡Œ(ドキュメンテーション・コメント内ã®ç‰¹å®šã®è¡Œã§ã¯ãªã„)ã®è¡Œç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥á¥Ã¥»¡¼¥¸\fI¡Ö¥¨¥é¡¼: Class1\&.java¤òÆɤ߹þ¤á¤Þ¤»¤ó¡×\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬\fIClass1\&.jav\fR\fIa\fR¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥í¡¼¥É¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥¯¥é¥¹Ì¾¤Ï¤½¤Î¥Ñ¥¹(ÀäÂФޤ¿¤ÏÁêÂÐ)¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "´Ä¶­"
+ãŸã¨ãˆã°ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸\fI「エラー: Class1\&.javaを読ã¿è¾¼ã‚ã¾ã›ã‚“ã€\fRã¯ã€\fIjavadoc\fRコマンドãŒ\fIClass1\&.jav\fR\fIa\fRã‚’ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ­ãƒ¼ãƒ‰ã—よã†ã¨ã—ã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚クラスåã¯ãã®ãƒ‘ス(絶対ã¾ãŸã¯ç›¸å¯¾)ã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "環境"
 .PP
 CLASSPATH
 .RS 4
-\fICLASSPATH\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡½Ð¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¤òÄ󶡤¹¤ë´Ä¶­ÊÑ¿ô¤Ç¤¹¡£¤³¤Î´Ä¶­ÊÑ¿ô¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥»¥ß¥³¥í¥ó(Windows¤Î¾ì¹ç)¤Þ¤¿¤Ï¥³¥í¥ó(Oracle Solaris¤Î¾ì¹ç)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
-.sp
-\fBWindows¤ÎÎã\fR:
+\fICLASSPATH\fRã¯ã€\fIjavadoc\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ¤œå‡ºã«ä½¿ç”¨ã™ã‚‹ãƒ‘スをæä¾›ã™ã‚‹ç’°å¢ƒå¤‰æ•°ã§ã™ã€‚ã“ã®ç’°å¢ƒå¤‰æ•°ã¯ã€\fI\-classpath\fRオプションã«ã‚ˆã£ã¦ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¾ã™ã€‚ディレクトリã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(Windowsã®å ´åˆ)ã¾ãŸã¯ã‚³ãƒ­ãƒ³(Oracle Solarisã®å ´åˆ)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
+.sp
+\fBWindowsã®ä¾‹\fR:
 \fI\&.;C:\eclasses;C:\ehome\ejava\eclasses\fR
 .sp
-\fBOracle Solaris¤ÎÎã\fR:
+\fBOracle Solarisã®ä¾‹\fR:
 \fI\&.:/home/classes:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -3773,7 +3773,7 @@
 .\}
 javap(1)
 .RE
-.SH "´ØÏ¢¥É¥­¥å¥á¥ó¥È"
+.SH "関連ドキュメント"
 .sp
 .RS 4
 .ie n \{\
@@ -3783,7 +3783,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥Æ¥¯¥Î¥í¥¸
+Javadocテクノロジ
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/index\&.html)
 .RE
 .sp
@@ -3795,7 +3795,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
+クラスã®æ¤œå‡ºæ–¹æ³•
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)
 .RE
 .sp
@@ -3807,7 +3807,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡
+Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•
 (http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html)
 .RE
 .sp
@@ -3819,7 +3819,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-URL¥á¥â¡¢Uniform Resource Locators
+URLメモã€Uniform Resource Locators
 (http://www\&.ietf\&.org/rfc/rfc1738\&.txt)
 .RE
 .sp
@@ -3831,7 +3831,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-HTMLɸ½à¡¢HTML Document Representation (4197265¤ª¤è¤Ó4137321)
+HTML標準ã€HTML Document Representation (4197265ãŠã‚ˆã³4137321)
 (http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/javah.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/javah.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javah
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javah" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javah" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javah \- Java¥¯¥é¥¹¤«¤éC¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javah \- Javaクラスã‹ã‚‰Cヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,102 +64,102 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIfully\-qualified\-class\-name\fR
 .RS 4
-C¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤µ¤ì¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ¤µ¤ì¤¿¾ì½ê¡£
+Cヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾ã•ã‚ŒãŸå ´æ‰€ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤ò¼ÂÁõ¤¹¤ë¤¿¤á¤ËɬÍפÊC¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£ºîÀ®¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥½¡¼¥¹¡¦¥³¡¼¥É¤«¤é¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ò»²¾È¤¹¤ë¤¿¤á¤ËC¥×¥í¥°¥é¥à¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\&.h\fR¥Õ¥¡¥¤¥ë¤Ï¡¢Âбþ¤¹¤ë¥¯¥é¥¹¤È°ìÃפ¹¤ëÇÛÃÖ¤ò»ý¤Ä\fIstruct\fRÄêµÁ¤ò´Þ¤ß¤Þ¤¹¡£\fIstruct\fR¤Î¥Õ¥£¡¼¥ë¥É¤Ï¡¢¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ËÂбþ¤·¤Þ¤¹¡£
+\fIjavah\fRコマンドã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドを実装ã™ã‚‹ãŸã‚ã«å¿…è¦ãªCヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚作æˆã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・ソース・コードã‹ã‚‰ã‚ªãƒ–ジェクトã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å¤‰æ•°ã‚’å‚ç…§ã™ã‚‹ãŸã‚ã«Cプログラムã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\&.h\fRファイルã¯ã€å¯¾å¿œã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ä¸€è‡´ã™ã‚‹é…置をæŒã¤\fIstruct\fR定義をå«ã¿ã¾ã™ã€‚\fIstruct\fRã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ã€ã‚¯ãƒ©ã‚¹ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å¤‰æ•°ã«å¯¾å¿œã—ã¾ã™ã€‚
 .PP
-¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤È¤½¤ÎÃæ¤ÇÀë¸À¤µ¤ì¤ë¹½Â¤ÂΤÎ̾Á°¤Ï¥¯¥é¥¹¤Î̾Á°¤«¤éÇÉÀ¸¤·¤Þ¤¹¡£\fIjavah\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤ÎÃæ¤Ë¤¢¤ë¾ì¹ç¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë̾¤È¹½Â¤ÂÎ̾¤ÎξÊý¤ÎÀèƬ¤ËÉղ䵤ì¤Þ¤¹¡£²¼Àþ(_)¤¬Ì¾Á°¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£
+ヘッダー・ファイルã¨ãã®ä¸­ã§å®£è¨€ã•ã‚Œã‚‹æ§‹é€ ä½“ã®åå‰ã¯ã‚¯ãƒ©ã‚¹ã®åå‰ã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™ã€‚\fIjavah\fRコマンドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŒãƒ‘ッケージã®ä¸­ã«ã‚ã‚‹å ´åˆã€ãƒ‘ッケージåã¯ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¨æ§‹é€ ä½“åã®ä¸¡æ–¹ã®å…ˆé ­ã«ä»˜åŠ ã•ã‚Œã¾ã™ã€‚下線(_)ãŒåå‰ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ê¥¹¥È¤µ¤ì¤ë³Æ¥¯¥é¥¹¤Î¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÃÖ¤­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢\fI\-stubs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£1¤Ä¤Î¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ë¡¢¥ê¥¹¥È¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î·ë²Ì¤òÏ¢·ë¤¹¤ë¤Ë¤Ï¡¢\fI\-o\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§ã¯\fIjavah\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ãƒªã‚¹ãƒˆã•ã‚Œã‚‹å„クラスã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç½®ãã¾ã™ã€‚ソース・ファイルを作æˆã™ã‚‹ã«ã¯ã€\fI\-stubs\fRオプションを使用ã—ã¦ãã ã•ã„。1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã«ã€ãƒªã‚¹ãƒˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®çµæžœã‚’連çµã™ã‚‹ã«ã¯ã€\fI\-o\fRオプションを使用ã—ã¦ãã ã•ã„。
 .PP
-Java Native Interface (JNI)¤Ï¥Ø¥Ã¥À¡¼¾ðÊó¤Þ¤¿¤Ï¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤òɬÍפȤ·¤Þ¤»¤ó¡£\fIjavah\fR¥³¥Þ¥ó¥É¤Ï°ú¤­Â³¤­JNI·Á¼°¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤ËɬÍפʥͥ¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É´Ø¿ô¥×¥í¥È¥¿¥¤¥×¤ÎÀ¸À®¤Ë»ÈÍѤǤ­¤Þ¤¹¡£\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇJNI·Á¼°¤Î½ÐÎϤòÀ¸À®¤·¡¢¤½¤Î·ë²Ì¤ò\fI\&.h\fR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Java Native Interface (JNI)ã¯ãƒ˜ãƒƒãƒ€ãƒ¼æƒ…å ±ã¾ãŸã¯ã‚¹ã‚¿ãƒ–・ファイルを必è¦ã¨ã—ã¾ã›ã‚“。\fIjavah\fRコマンドã¯å¼•ã続ãJNIå½¢å¼ã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドã«å¿…è¦ãªãƒã‚¤ãƒ†ã‚£ãƒ–・メソッド関数プロトタイプã®ç”Ÿæˆã«ä½¿ç”¨ã§ãã¾ã™ã€‚\fIjavah\fRコマンドã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§JNIå½¢å¼ã®å‡ºåŠ›ã‚’生æˆã—ã€ãã®çµæžœã‚’\fI\&.h\fRファイルã«æ ¼ç´ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-o \fIoutputfile\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ê¥¹¥È¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ËÂФ·¤Æ¡¢·ë²Ì¤Î¥Ø¥Ã¥À¡¼¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÏ¢·ë¤·¤Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Þ¤¹¡£\fI\-o\fR¤Þ¤¿¤Ï\fI\-d\fR¤Î¤É¤Á¤é¤«¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+コマンドラインã«ãƒªã‚¹ãƒˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã€çµæžœã®ãƒ˜ãƒƒãƒ€ãƒ¼ã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’連çµã—ã¦å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¾ã™ã€‚\fI\-o\fRã¾ãŸã¯\fI\-d\fRã®ã©ã¡ã‚‰ã‹ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-\fIjavah\fR¤¬¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤òÊݸ¤¹¤ë¡¢¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£\fI\-d\fR¤Þ¤¿¤Ï\fI\-o\fR¤Î¤É¤Á¤é¤«¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjavah\fRãŒãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ã‚¹ã‚¿ãƒ–・ファイルをä¿å­˜ã™ã‚‹ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚\fI\-d\fRã¾ãŸã¯\fI\-o\fRã®ã©ã¡ã‚‰ã‹ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-stubs
 .RS 4
-\fIjavah\fR¥³¥Þ¥ó¥É¤¬¡¢Java¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Õ¥¡¥¤¥ë¤«¤éCÀë¸À¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavah\fRコマンドãŒã€Javaオブジェクト・ファイルã‹ã‚‰C宣言を生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¾ÜºÙ½ÐÎϤò»ØÄꤷ¡¢ºîÀ®¥Õ¥¡¥¤¥ë¤Î¾õÂ֤˴ؤ¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¡¢\fIjavah\fR¥³¥Þ¥ó¥É¤¬\fIɸ½à½ÐÎÏ\fR¤Ë½ÐÎϤ·¤Þ¤¹¡£
+詳細出力を指定ã—ã€ä½œæˆãƒ•ã‚¡ã‚¤ãƒ«ã®çŠ¶æ…‹ã«é–¢ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’ã€\fIjavah\fRコマンドãŒ\fI標準出力\fRã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIjavah\fR¤Î»ÈÍÑÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavah\fRã®ä½¿ç”¨æ–¹æ³•ã«ã¤ã„ã¦ã®ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-\fIjavah\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavah\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-jni
 .RS 4
-JNI·Á¼°¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥Éµ¡Ç½¥×¥í¥È¥¿¥¤¥×¤ò´Þ¤à½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò¡¢\fIjavah\fR¥³¥Þ¥ó¥É¤¬ºîÀ®¤·¤Þ¤¹¡£¤³¤ì¤Ïɸ½à½ÐÎϤǤ¢¤ë¤¿¤á¡¢\fI\-jni\fR¤Î»ÈÍѤϥª¥×¥·¥ç¥ó¤Ç¤¹¡£
+JNIå½¢å¼ã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッド機能プロトタイプをå«ã‚€å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€\fIjavah\fRコマンドãŒä½œæˆã—ã¾ã™ã€‚ã“ã‚Œã¯æ¨™æº–出力ã§ã‚ã‚‹ãŸã‚ã€\fI\-jni\fRã®ä½¿ç”¨ã¯ã‚ªãƒ—ションã§ã™ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Ë\fIjavah\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Þ¤¿¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤ÎÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ÏOracle Solaris¤Î¾ì¹ç¤Ï¥³¥í¥ó¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£¥Ñ¥¹¤Î°ìÈÌŪ¤Ê·Á¼°¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+クラスを探ã™ãŸã‚ã«\fIjavah\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚デフォルトã¾ãŸã¯\fICLASSPATH\fR環境変数ã®è¨­å®šã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ディレクトリã¯Oracle Solarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚パスã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fBOracle Solaris\fR¤Î¾ì¹ç:
+\fBOracle Solaris\fRã®å ´åˆ:
 .sp
 \&.:\fIyour\-path\fR
 .sp
-Îã:
+例:
 \fI\&.:/home/avh/classes:/usr/local/java/classes\fR
 .sp
-\fBWindows\fR¤Î¾ì¹ç:
+\fBWindows\fRã®å ´åˆ:
 .sp
 \&.;\fIyour\-path\fR
 .sp
-Îã:
+例:
 \fI\&.;C:\eusers\edac\eclasses;C:\etools\ejava\eclasses\fR
 .sp
-Êص¹¾å¡¢*¤Î¥Ù¡¼¥¹Ì¾¤ò´Þ¤à¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁǤϡ¢\fI\&.jar\fR¤Þ¤¿¤Ï\fI\&.JAR\fR¤ò³ÈÄ¥»Ò¤Ë»ý¤Ä¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
+便宜上ã€*ã®ãƒ™ãƒ¼ã‚¹åã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ ã¯ã€\fI\&.jar\fRã¾ãŸã¯\fI\&.JAR\fRã‚’æ‹¡å¼µå­ã«æŒã¤ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹ã®ã¨åŒç­‰ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê\fImydir\fR¤Ë\fIa\&.jar\fR¤È\fIb\&.JAR\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁÇ\fImydir/*\fR¤Ï\fIA\fR\fI\&.jar:b\&.JAR\fR¤ËŸ³«¤µ¤ì¤Þ¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Î½çÈÖ¤Ï̤»ØÄê¤È¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥ê¥¹¥È¤Ë¤Ï¡¢±£¤·¥Õ¥¡¥¤¥ë¤â´Þ¤á¡¢»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Þ¤¹¡£*¤«¤é¤Ê¤ë¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥¨¥ó¥È¥ê¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ËŸ³«¤µ¤ì¤Þ¤¹¡£\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤â¡¢ÄêµÁ»þ¤Ë¤ÏƱÍͤËŸ³«¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÎŸ³«¤Ï¡¢Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î³«»ÏÁ°¤Ë¹Ô¤ï¤ì¤Þ¤¹¡£Java¥×¥í¥°¥é¥à¤Ï¡¢´Ä¶­¤òÌ䤤¹ç¤»¤ë¾ì¹ç¤ò½ü¤­¡¢Å¸³«¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»²¾È¤·¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fISystem\&.getenv("CLASSPATH")\fR¤ò¥³¡¼¥ë¤·¤ÆÌ䤤¹ç¤»¤ë¾ì¹ç¤Ç¤¹¡£
+ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fImydir\fRã«\fIa\&.jar\fRã¨\fIb\&.JAR\fRãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ \fImydir/*\fRã¯\fIA\fR\fI\&.jar:b\&.JAR\fRã«å±•é–‹ã•ã‚Œã¾ã™ãŒã€JARファイルã®é †ç•ªã¯æœªæŒ‡å®šã¨ãªã‚Šã¾ã™ã€‚ã“ã®ãƒªã‚¹ãƒˆã«ã¯ã€éš ã—ファイルもå«ã‚ã€æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルãŒå«ã¾ã‚Œã¾ã™ã€‚*ã‹ã‚‰ãªã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・エントリã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルã®ãƒªã‚¹ãƒˆã«å±•é–‹ã•ã‚Œã¾ã™ã€‚\fICLASSPATH\fR環境変数もã€å®šç¾©æ™‚ã«ã¯åŒæ§˜ã«å±•é–‹ã•ã‚Œã¾ã™ã€‚クラス・パスã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®å±•é–‹ã¯ã€Java仮想マシン(JVM)ã®é–‹å§‹å‰ã«è¡Œã‚ã‚Œã¾ã™ã€‚Javaプログラムã¯ã€ç’°å¢ƒã‚’å•ã„åˆã›ã‚‹å ´åˆã‚’除ãã€å±•é–‹ã•ã‚Œã¦ã„ãªã„ワイルドカードをå‚ç…§ã—ã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fISystem\&.getenv("CLASSPATH")\fRをコールã—ã¦å•ã„åˆã›ã‚‹å ´åˆã§ã™ã€‚
 .RE
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjre\elib\ert\&.jar\fR¤ª¤è¤Ó¾¤Î¤¤¤¯¤Ä¤«¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¡¢¥³¥¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£
+ブートストラップ・クラスをロードã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブートストラップ・クラスã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fIjre\elib\ert\&.jar\fRãŠã‚ˆã³ä»–ã®ã„ãã¤ã‹ã®JARファイルã«ã‚ã‚‹ã€ã‚³ã‚¢Javaプラットフォームを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
 .PP
 \-old
 .RS 4
-¸Å¤¤JDK 1\&.0·Á¼°¤Î¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+å¤ã„JDK 1\&.0å½¢å¼ã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-force
 .RS 4
-½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬¾ï¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+出力ファイルãŒå¸¸ã«æ›¸ãè¾¼ã¾ã‚Œã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/javap.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/javap.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javap
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javap" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javap" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javap \- 1¤Ä°Ê¾å¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òµÕ¥¢¥»¥ó¥Ö¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javap \- 1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’逆アセンブルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,51 +64,51 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassfile\fR
 .RS 4
-Ãí¼á¤Î½èÍýÂоݤȤʤ롢¶õÇò¤Ç¶èÀڤä¿1¤Ä°Ê¾å¤Î¥¯¥é¥¹(DocFooter\&.class¤Ê¤É)¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¸¡½Ð¤Ç¤­¤ë¥¯¥é¥¹¤ò¡¢¥Õ¥¡¥¤¥ë̾¤Þ¤¿¤ÏURL(\fIfile:///home/user/myproject/src/DocFooter\&.class\fR¤Ê¤É)¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+注釈ã®å‡¦ç†å¯¾è±¡ã¨ãªã‚‹ã€ç©ºç™½ã§åŒºåˆ‡ã£ãŸ1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹(DocFooter\&.classãªã©)。クラス・パスã§æ¤œå‡ºã§ãるクラスをã€ãƒ•ã‚¡ã‚¤ãƒ«åã¾ãŸã¯URL(\fIfile:///home/user/myproject/src/DocFooter\&.class\fRãªã©)ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¡¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òµÕ¥¢¥»¥ó¥Ö¥ë¤·¤Þ¤¹¡£¤½¤Î½ÐÎϤϻØÄꤹ¤ë¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê°Û¤Ê¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¡¢ÅϤµ¤ì¤¿¥¯¥é¥¹¤Îprotected¤ª¤è¤Ópublic¤Î¥Õ¥£¡¼¥ë¥É¤È¥á¥½¥Ã¥É¤ò½ÐÎϤ·¤Þ¤¹¡£\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î½ÐÎϤò\fIɸ½à½ÐÎÏ\fR¤Ëɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjavap\fRコマンドã¯ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’逆アセンブルã—ã¾ã™ã€‚ãã®å‡ºåŠ›ã¯æŒ‡å®šã™ã‚‹ã‚ªãƒ—ションã«ã‚ˆã‚Šç•°ãªã‚Šã¾ã™ã€‚オプションを指定ã—ãªã„å ´åˆã€\fIjavap\fRコマンドã¯ã€ãã®ãƒ‘ッケージã€æ¸¡ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®protectedãŠã‚ˆã³publicã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨ãƒ¡ã‚½ãƒƒãƒ‰ã‚’出力ã—ã¾ã™ã€‚\fIjavap\fRコマンドã¯ãã®å‡ºåŠ›ã‚’\fI標準出力\fRã«è¡¨ç¤ºã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-help, \-\-help, \-?
 .RS 4
-\fIjavap\fR¥³¥Þ¥ó¥É¤Ë¤Ä¤¤¤Æ¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavap\fRコマンドã«ã¤ã„ã¦ã®ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¹ÔÈÖ¹æ¤È¥í¡¼¥«¥ëÊÑ¿ôɽ¤ò½ÐÎϤ·¤Þ¤¹¡£
+行番å·ã¨ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°è¡¨ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-public
 .RS 4
-public¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+publicクラスãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-protected¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ß¤òɽ¼¨¤·¤Þ¤¹¡£
+protectedãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-private, \-p
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤òJVM¤ËÅϤ·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚ªãƒ—ションをJVMã«æ¸¡ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,51 +120,51 @@
 .if n \{\
 .RE
 .\}
-JVM¥ª¥×¥·¥ç¥ó¤Î¾ÜºÙ¤Ï¡¢¥³¥Þ¥ó¥É¤Î¥Þ¥Ë¥å¥¢¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMオプションã®è©³ç´°ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-s
 .RS 4
-ÆâÉô¤Î·¿¥·¥°¥Ë¥Á¥ã¤ò½ÐÎϤ·¤Þ¤¹¡£
+内部ã®åž‹ã‚·ã‚°ãƒ‹ãƒãƒ£ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sysinfo
 .RS 4
-½èÍýÃæ¤Î¥¯¥é¥¹¤Î¥·¥¹¥Æ¥à¾ðÊó(¥Ñ¥¹¡¢¥µ¥¤¥º¡¢ÆüÉÕ¡¢MD5¥Ï¥Ã¥·¥å)¤òɽ¼¨¤·¤Þ¤¹¡£
+処ç†ä¸­ã®ã‚¯ãƒ©ã‚¹ã®ã‚·ã‚¹ãƒ†ãƒ æƒ…å ±(パスã€ã‚µã‚¤ã‚ºã€æ—¥ä»˜ã€MD5ãƒãƒƒã‚·ãƒ¥)を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-constants
 .RS 4
-\fIstatic final\fRÄê¿ô¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIstatic final\fR定数を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-c
 .RS 4
-¥¯¥é¥¹¤Î³Æ¥á¥½¥Ã¥É¤Î¤¿¤á¤ËµÕ¥¢¥»¥ó¥Ö¥ë¤µ¤ì¤ë¥³¡¼¥É¡¢¤¹¤Ê¤ï¤ÁJava¥Ð¥¤¥È¥³¡¼¥É¤«¤é¤Ê¤ëÌ¿Îá¤òɽ¼¨¤·¤Þ¤¹¡£
+クラスã®å„メソッドã®ãŸã‚ã«é€†ã‚¢ã‚»ãƒ³ãƒ–ルã•ã‚Œã‚‹ã‚³ãƒ¼ãƒ‰ã€ã™ãªã‚ã¡Javaãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‹ã‚‰ãªã‚‹å‘½ä»¤ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¥á¥½¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¡¢locals¤Èarguments¤Î¿ô¤ò½ÐÎϤ·¤Þ¤¹¡£
+メソッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã€localsã¨argumentsã®æ•°ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Ë\fIjavap\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Þ¤¿¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤ÎÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+クラスを探ã™ãŸã‚ã«\fIjavap\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚デフォルトã¾ãŸã¯\fICLASSPATH\fR環境変数ã®è¨­å®šã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjre/lib/rt\&.jar\fR¤ª¤è¤Ó¾¤Î¤¤¤¯¤Ä¤«¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¡¢¥³¥¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£
+ブートストラップ・クラスをロードã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブートストラップ・クラスã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fIjre/lib/rt\&.jar\fRãŠã‚ˆã³ä»–ã®ã„ãã¤ã‹ã®JARファイルã«ã‚ã‚‹ã€ã‚³ã‚¢Javaプラットフォームを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
 .PP
 \-extdir \fIdirs\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿³ÈÄ¥µ¡Ç½¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£³ÈÄ¥µ¡Ç½¤Î¥Ç¥Õ¥©¥ë¥È°ÌÃÖ¤Ï\fIjava\&.ext\&.dirs\fR¤Ç¤¹¡£
+インストールã•ã‚ŒãŸæ‹¡å¼µæ©Ÿèƒ½ã‚’検索ã™ã‚‹å ´æ‰€ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚拡張機能ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä½ç½®ã¯\fIjava\&.ext\&.dirs\fRã§ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤Î\fIDocFooter\fR¥¯¥é¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®\fIDocFooter\fRクラスをコンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -193,7 +193,7 @@
 .RE
 .\}
 .PP
-\fIjavap DocFooter\&.class\fR¥³¥Þ¥ó¥É¤«¤é¤Î½ÐÎϤϼ¡¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavap DocFooter\&.class\fRコマンドã‹ã‚‰ã®å‡ºåŠ›ã¯æ¬¡ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -212,7 +212,7 @@
 .RE
 .\}
 .PP
-\fIjavap \-c DocFooter\&.class\fR¥³¥Þ¥ó¥É¤«¤é¤Î½ÐÎϤϼ¡¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavap \-c DocFooter\&.class\fRコマンドã‹ã‚‰ã®å‡ºåŠ›ã¯æ¬¡ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -283,7 +283,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/javaws.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/javaws.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javaws
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web Start¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Web Startツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javaws" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web Start¥Ä¡¼¥ë"
+.TH "javaws" "1" "2013年11月21日" "JDK 8" "Java Web Startツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javaws \- Java Web Start¤òµ¯Æ°¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javaws \- Java Web Startã‚’èµ·å‹•ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,147 +74,147 @@
 .PP
 \fIrun\-options\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó\fI¼Â¹Ô¥ª¥×¥·¥ç¥ó\fR¡£\fI¼Â¹Ô¥ª¥×¥·¥ç¥ó\fR¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£¼Â¹Ô¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン\fI実行オプション\fR。\fI実行オプション\fRã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚実行オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIjnlp\fR
 .RS 4
-JNLP (Java Network Launching Protocol)¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤Þ¤¿¤ÏURL (Uniform Resource Locator)¤Î¤É¤Á¤é¤«¡£
+JNLP (Java Network Launching Protocol)ファイルã®ãƒ‘スã¾ãŸã¯URL (Uniform Resource Locator)ã®ã©ã¡ã‚‰ã‹ã€‚
 .RE
 .PP
-\fIÀ©¸æ¥ª¥×¥·¥ç¥ó\fR
+\fI制御オプション\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó\fIÀ©¸æ¥ª¥×¥·¥ç¥ó\fR¡£\fIÀ©¸æ¥ª¥×¥·¥ç¥ó\fR¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£À©¸æ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン\fI制御オプション\fR。\fI制御オプション\fRã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚制御オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fBÃí°Õ:\fR
-\fIjavaws\fR¥³¥Þ¥ó¥É¤Ï¡¢Oracle Solaris¤Ç¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+\fB注æ„:\fR
+\fIjavaws\fRコマンドã¯ã€Oracle Solarisã§ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .PP
-\fIjavaws\fR¥³¥Þ¥ó¥É¤Ï¡¢JNLP¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¼ÂÁõ¤Ç¤¢¤ëJava Web Start¤òµ¯Æ°¤·¤Þ¤¹¡£Java Web Start¤Ï¡¢¥Í¥Ã¥È¥ï¡¼¥¯¾å¤ÇÆ°ºî¤¹¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ª¤è¤Ó¥¢¥×¥ì¥Ã¥È¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIjavaws\fRコマンドã¯ã€JNLPã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹å®Ÿè£…ã§ã‚ã‚‹Java Web Startã‚’èµ·å‹•ã—ã¾ã™ã€‚Java Web Startã¯ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ä¸Šã§å‹•ä½œã™ã‚‹JavaアプリケーションãŠã‚ˆã³ã‚¢ãƒ—レットを起動ã—ã¾ã™ã€‚
 .PP
-JNLP¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤ë¤È¡¢\fIjavaws\fR¥³¥Þ¥ó¥É¤ÏJNLP¥Õ¥¡¥¤¥ë¤Ç»ØÄꤷ¤¿Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥¢¥×¥ì¥Ã¥È¤òµ¯Æ°¤·¤Þ¤¹¡£
+JNLPファイルãŒæŒ‡å®šã•ã‚Œã‚‹ã¨ã€\fIjavaws\fRコマンドã¯JNLPファイルã§æŒ‡å®šã—ãŸJavaアプリケーションã¾ãŸã¯ã‚¢ãƒ—レットを起動ã—ã¾ã™ã€‚
 .PP
-\fIjavaws\fRµ¯Æ°¥Ä¡¼¥ë¤Ë¤Ï¡¢¸½ºß¤Î¥ê¥ê¡¼¥¹¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë1ÁȤΥª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤Ïºï½ü¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SH "¼Â¹Ô¥ª¥×¥·¥ç¥ó"
+\fIjavaws\fR起動ツールã«ã¯ã€ç¾åœ¨ã®ãƒªãƒªãƒ¼ã‚¹ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã‚‹1組ã®ã‚ªãƒ—ションãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ã“れらã®ã‚ªãƒ—ションã¯å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯å‰Šé™¤ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "実行オプション"
 .PP
 \-offline
 .RS 4
-Java Web Start¤ò¥ª¥Õ¥é¥¤¥ó¡¦¥â¡¼¥É¤Ç¼Â¹Ô¤·¤Þ¤¹¡£
+Java Web Startをオフライン・モードã§å®Ÿè¡Œã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xnosplash
 .RS 4
-½é´ü¥¹¥×¥é¥Ã¥·¥å²èÌ̤òɽ¼¨¤·¤Þ¤»¤ó¡£
+åˆæœŸã‚¹ãƒ—ラッシュ画é¢ã‚’表示ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-open \fIarguments\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢JNLP¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤¬\fI\-open\fR
-\fIarguments\fR¤ËÃÖ¤­´¹¤ï¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€JNLPファイル内ã®å¼•æ•°ãŒ\fI\-open\fR
+\fIarguments\fRã«ç½®ãæ›ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-print \fIarguments\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢JNLP¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤¬\fI\-print\fR
-\fIarguments\fR¤ËÃÖ¤­´¹¤ï¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€JNLPファイル内ã®å¼•æ•°ãŒ\fI\-print\fR
+\fIarguments\fRã«ç½®ãæ›ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-online
 .RS 4
-¥ª¥ó¥é¥¤¥ó¡¦¥â¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+オンライン・モードを使用ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 \-wait
 .RS 4
-\fIjavaws\fR¥×¥í¥»¥¹¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬½ªÎ»¤¹¤ë¤Þ¤Ç½ªÎ»¤·¤Þ¤»¤ó¡£Windows¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¾å¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÀâÌÀ¤·¤¿¤È¤ª¤ê¤Ëµ¡Ç½¤·¤Þ¤»¤ó¡£
+\fIjavaws\fRプロセスã¯ã€ã‚¢ãƒ—リケーションãŒçµ‚了ã™ã‚‹ã¾ã§çµ‚了ã—ã¾ã›ã‚“。Windowsプラットフォーム上ã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯èª¬æ˜Žã—ãŸã¨ãŠã‚Šã«æ©Ÿèƒ½ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-verbose
 .RS 4
-ÄɲäνÐÎϤòɽ¼¨¤·¤Þ¤¹¡£
+追加ã®å‡ºåŠ›ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ëoption¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«optionを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-system
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥·¥¹¥Æ¥à¡¦¥­¥ã¥Ã¥·¥å¤Î¤ß¤«¤é¼Â¹Ô¤·¤Þ¤¹¡£
+アプリケーションをシステム・キャッシュã®ã¿ã‹ã‚‰å®Ÿè¡Œã—ã¾ã™ã€‚
 .RE
-.SH "À©¸æ¥ª¥×¥·¥ç¥ó"
+.SH "制御オプション"
 .PP
 \-viewer
 .RS 4
-Java¥³¥ó¥È¥í¡¼¥ë¡¦¥Ñ¥Í¥ë¤Ç¥­¥ã¥Ã¥·¥å¡¦¥Ó¥å¡¼¥¢¤òɽ¼¨¤·¤Þ¤¹¡£
+Javaコントロール・パãƒãƒ«ã§ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ãƒ“ューアを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-clearcache
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤¹¤Ù¤Æ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥­¥ã¥Ã¥·¥å¤«¤éºï½ü¤·¤Þ¤¹¡£
+インストールã•ã‚Œã¦ã„ãªã„ã™ã¹ã¦ã®ã‚¢ãƒ—リケーションをキャッシュã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã€‚
 .RE
 .PP
 \-userConfig \fIproperty\-name\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥×¥í¥Ñ¥Æ¥£¤ò¥¯¥ê¥¢¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ‡ãƒ—ロイメント・プロパティをクリアã—ã¾ã™ã€‚
 .RE
 .PP
 \-userConfig \fIproperty\-name property\-value\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤵ¤ì¤¿ÃͤËÀßÄꤷ¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ‡ãƒ—ロイメント・プロパティを指定ã•ã‚ŒãŸå€¤ã«è¨­å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-uninstall
 .RS 4
-¥­¥ã¥Ã¥·¥å¤«¤é¤¹¤Ù¤Æ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºï½ü¤·¤Þ¤¹¡£
+キャッシュã‹ã‚‰ã™ã¹ã¦ã®ã‚¢ãƒ—リケーションを削除ã—ã¾ã™ã€‚
 .RE
 .PP
 \-uninstall \fIjnlp\fR
 .RS 4
-¥­¥ã¥Ã¥·¥å¤«¤é¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºï½ü¤·¤Þ¤¹¡£
+キャッシュã‹ã‚‰ã‚¢ãƒ—リケーションを削除ã—ã¾ã™ã€‚
 .RE
 .PP
 \-print \fIimport\-options \fRjnlp
 .RS 4
-¥­¥ã¥Ã¥·¥å¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+キャッシュã«ã‚¢ãƒ—リケーションをインãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .RE
-.SH "¥¤¥ó¥Ý¡¼¥È¡¦¥ª¥×¥·¥ç¥ó"
+.SH "インãƒãƒ¼ãƒˆãƒ»ã‚ªãƒ—ション"
 .PP
 \-silent
 .RS 4
-¥µ¥¤¥ì¥ó¥È¡¦¥â¡¼¥É¤Ç¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹(¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó)¡£
+サイレント・モードã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™(ユーザー・インタフェースã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“)。
 .RE
 .PP
 \-system
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥­¥ã¥Ã¥·¥å¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+システム・キャッシュã«ã‚¢ãƒ—リケーションをインãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-codebase \fIurl\fR
 .RS 4
-»ØÄꤷ¤¿¥³¡¼¥É¥Ù¡¼¥¹¤«¤é¥ê¥½¡¼¥¹¤ò¼èÆÀ¤·¤Þ¤¹¡£
+指定ã—ãŸã‚³ãƒ¼ãƒ‰ãƒ™ãƒ¼ã‚¹ã‹ã‚‰ãƒªã‚½ãƒ¼ã‚¹ã‚’å–å¾—ã—ã¾ã™ã€‚
 .RE
 .PP
 \-shortcut
 .RS 4
-¥æ¡¼¥¶¡¼¤¬¥×¥í¥ó¥×¥È¤ò¼õ¤±Æþ¤ì¤ì¤Ð¥·¥ç¡¼¥È¥«¥Ã¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢
-\fI\-silent\fR¥ª¥×¥·¥ç¥ó¤â»ÈÍѤ·¤Ê¤¤¤È¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£
+ユーザーãŒãƒ—ロンプトをå—ã‘入れれã°ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆã‚’インストールã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€
+\fI\-silent\fRオプションも使用ã—ãªã„ã¨åŠ¹æžœãŒã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-association
 .RS 4
-¥æ¡¼¥¶¡¼¤¬¥×¥í¥ó¥×¥È¤ò¼õ¤±Æþ¤ì¤ì¤Ð¥¢¥½¥·¥¨¡¼¥·¥ç¥ó¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢
-\fI\-silent\fR¥ª¥×¥·¥ç¥ó¤â»ÈÍѤ·¤Ê¤¤¤È¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£
+ユーザーãŒãƒ—ロンプトをå—ã‘入れれã°ã‚¢ã‚½ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã‚’インストールã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€
+\fI\-silent\fRオプションも使用ã—ãªã„ã¨åŠ¹æžœãŒã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
-\fBÃí°Õ:\fR\fIjavaws \-shortcut \-uninstall\fR
-.SH "¥Õ¥¡¥¤¥ë"
+\fB注æ„:\fR\fIjavaws \-shortcut \-uninstall\fR
+.SH "ファイル"
 .PP
-¥æ¡¼¥¶¡¼¤ª¤è¤Ó¥·¥¹¥Æ¥à¡¦¥­¥ã¥Ã¥·¥å¤Ê¤é¤Ó¤Ëdeployment\&.properties¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢¹½À®¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥×¥í¥Ñ¥Æ¥£¤Î¥Ç¥×¥í¥¤¥á¥ó¥È
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/deployment/deployment\-guide/properties\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "´ØÏ¢¹àÌÜ"
+ユーザーãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãªã‚‰ã³ã«deployment\&.propertiesファイルã®è©³ç´°ã¯ã€æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ãƒ—ロパティã®ãƒ‡ãƒ—ロイメント
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/deployment/deployment\-guide/properties\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jcmd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jcmd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jcmd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jcmd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jcmd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jcmd \- ¼Â¹ÔÃæ¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jcmd \- 実行中ã®Java仮想マシン(JVM)ã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -91,53 +91,53 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjcmd\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¡¢JVM¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤ì¤ÏJVM¤¬²ÔƯ¤·¤Æ¤¤¤ë¤Î¤ÈƱ¤¸¥Þ¥·¥ó¤Ç»ÈÍѤ·¡¢JVM¤Îµ¯Æ°¤Ë»ÈÍѤ·¤¿¤â¤Î¤ÈƱ¤¸Í­¸ú¥æ¡¼¥¶¡¼¤ª¤è¤Ó¥°¥ë¡¼¥×¼±Ê̻Ҥò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIjcmd\fRユーティリティã¯ã€JVMã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯JVMãŒç¨¼åƒã—ã¦ã„ã‚‹ã®ã¨åŒã˜ãƒžã‚·ãƒ³ã§ä½¿ç”¨ã—ã€JVMã®èµ·å‹•ã«ä½¿ç”¨ã—ãŸã‚‚ã®ã¨åŒã˜æœ‰åŠ¹ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŠã‚ˆã³ã‚°ãƒ«ãƒ¼ãƒ—識別å­ã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥ê¥â¡¼¥È¡¦¥Þ¥·¥ó¤«¤é¡¢¤Þ¤¿¤ÏÊ̤μ±Ê̻ҤǿÇÃÇ¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢\fIcom\&.sun\&.management\&.DiagnosticCommandMBean\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ÈÍѤǤ­¤Þ¤¹¡£\fIDiagnosticCommandMBean\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ÜºÙ¤Ï¡¢http://download\&.java\&.net/jdk8/docs/jre/api/management/extension/com/sun/management/DiagnosticCommandMBean\&.html¤Ë¤¢¤ëAPI¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+リモート・マシンã‹ã‚‰ã€ã¾ãŸã¯åˆ¥ã®è­˜åˆ¥å­ã§è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€\fIcom\&.sun\&.management\&.DiagnosticCommandMBean\fRインタフェースを使用ã§ãã¾ã™ã€‚\fIDiagnosticCommandMBean\fRインタフェースã®è©³ç´°ã¯ã€http://download\&.java\&.net/jdk8/docs/jre/api/management/extension/com/sun/management/DiagnosticCommandMBean\&.htmlã«ã‚ã‚‹APIドキュメントをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIjcmd\fR¤ò°ú¿ô¤Ê¤·¤Þ¤¿¤Ï\fI\- l\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¼Â¹Ô¤·¤¿¾ì¹ç¤Ï¡¢¼Â¹ÔÃæ¤ÎJava¥×¥í¥»¥¹¼±Ê̻ҤΥꥹ¥È¤¬¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤ª¤è¤Ó¥×¥í¥»¥¹¤Îµ¯Æ°¤Ë»ÈÍѤµ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤È¤â¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-h\fR¤Þ¤¿¤Ï\fI\-help\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ\fIjcmd\fR¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ä¡¼¥ë¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fIjcmd\fRを引数ãªã—ã¾ãŸã¯\fI\- l\fRオプションを指定ã—ã¦å®Ÿè¡Œã—ãŸå ´åˆã¯ã€å®Ÿè¡Œä¸­ã®Javaプロセス識別å­ã®ãƒªã‚¹ãƒˆãŒã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ—ロセスã®èµ·å‹•ã«ä½¿ç”¨ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã¨ã‚‚ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-h\fRã¾ãŸã¯\fI\-help\fRオプションを指定ã—ã¦\fIjcmd\fRを実行ã™ã‚‹ã¨ã€ãƒ„ールã®ãƒ˜ãƒ«ãƒ—・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
-¥×¥í¥»¥¹¼±ÊÌ»Ò(\fIpid\fR)¤Þ¤¿¤Ï¥á¥¤¥ó¡¦¥¯¥é¥¹(\fImain\-class\fR)¤òºÇ½é¤Î°ú¿ô¤È¤·¤Æ»ØÄꤷ¤¿¾ì¹ç¡¢\fIjcmd\fR¤Ï¡¢¼±Ê̻Ҥò»ØÄꤷ¤¿¾ì¹ç¤ÏJava¥×¥í¥»¥¹¤Ë¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î̾Á°¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¤¹¤Ù¤Æ¤ÎJava¥×¥í¥»¥¹¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤¹¡£¥×¥í¥»¥¹¼±Ê̻ҤȤ·¤Æ\fI0\fR¤ò»ØÄꤷ¤Æ¡¢¤¹¤Ù¤Æ¤Î»ÈÍѲÄǽ¤ÊJava¥×¥í¥»¥¹¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤È¤·¤Æ¡¢¼¡¤Î¤¤¤º¤ì¤«¤ò»ÈÍѤ·¤Þ¤¹¡£
+プロセス識別å­(\fIpid\fR)ã¾ãŸã¯ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹(\fImain\-class\fR)を最åˆã®å¼•æ•°ã¨ã—ã¦æŒ‡å®šã—ãŸå ´åˆã€\fIjcmd\fRã¯ã€è­˜åˆ¥å­ã‚’指定ã—ãŸå ´åˆã¯Javaプロセスã«ã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’指定ã—ãŸå ´åˆã¯ã™ã¹ã¦ã®Javaプロセスã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã—ã¾ã™ã€‚プロセス識別å­ã¨ã—ã¦\fI0\fRを指定ã—ã¦ã€ã™ã¹ã¦ã®ä½¿ç”¨å¯èƒ½ãªJavaプロセスã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚診断コマンド・リクエストã¨ã—ã¦ã€æ¬¡ã®ã„ãšã‚Œã‹ã‚’使用ã—ã¾ã™ã€‚
 .PP
 Perfcounter\&.print
 .RS 4
-»ØÄꤷ¤¿Java¥×¥í¥»¥¹¤Ç»ÈÍѲÄǽ¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥«¥¦¥ó¥¿¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥«¥¦¥ó¥¿¤Î¥ê¥¹¥È¤ÏJava¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+指定ã—ãŸJavaプロセスã§ä½¿ç”¨å¯èƒ½ãªãƒ‘フォーマンス・カウンタãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚パフォーマンス・カウンタã®ãƒªã‚¹ãƒˆã¯Javaプロセスã«ã‚ˆã£ã¦ç•°ãªã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-f \fIfilename\fR
 .RS 4
-¿ÇÃÇ¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¡¢»ØÄꤷ¤¿Java¥×¥í¥»¥¹¤ËÁ÷¿®¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£\fI\-f\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î¤ß»ÈÍѤ·¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥³¥Þ¥ó¥É¤Ï¡¢1¹Ô¤Çµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Èֹ浭¹æ(\fI#\fR)¤Ç»Ï¤Þ¤ë¹Ô¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤«¡¢\fIstop\fR¥­¡¼¥ï¡¼¥É¤ò´Þ¤à¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Î½èÍý¤¬½ªÎ»¤·¤Þ¤¹¡£
+診断コマンドを読ã¿å–ã‚Šã€æŒ‡å®šã—ãŸJavaプロセスã«é€ä¿¡ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚\fI\-f\fRオプションã§ã®ã¿ä½¿ç”¨ã—ã¾ã™ã€‚ファイル内ã®å„コマンドã¯ã€1è¡Œã§è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚番å·è¨˜å·(\fI#\fR)ã§å§‹ã¾ã‚‹è¡Œã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã™ã¹ã¦ã®è¡ŒãŒèª­ã¿å–られるã‹ã€\fIstop\fRキーワードをå«ã‚€è¡ŒãŒèª­ã¿å–られるã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ãŒçµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIcommand\fR [\fIarguments\fR]
 .RS 4
-»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¤ËÁ÷¿®¤¹¤ë¥³¥Þ¥ó¥É¡£»ØÄꤷ¤¿¥×¥í¥»¥¹¤Ç»ÈÍѤǤ­¤ë¿ÇÃÇ¥³¥Þ¥ó¥É¤Î¥ê¥¹¥È¤Ï¡¢¤³¤Î¥×¥í¥»¥¹¤ËÂФ·¤Æ\fIhelp\fR¥³¥Þ¥ó¥É¤òÁ÷¿®¤¹¤ì¤Ðɽ¼¨¤µ¤ì¤Þ¤¹¡£³Æ¿ÇÃÇ¥³¥Þ¥ó¥É¤ËÆȼ«¤Î°ú¿ô¥»¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¤ÎÀâÌÀ¡¢¹½Ê¸¤ª¤è¤Ó»ÈÍѲÄǽ¤Ê°ú¿ô¤Î¥ê¥¹¥È¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢\fIhelp\fR¥³¥Þ¥ó¥É¤Î°ú¿ô¤È¤·¤Æ¥³¥Þ¥ó¥É̾¤ò»ÈÍѤ·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸJavaプロセスã«é€ä¿¡ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã€‚指定ã—ãŸãƒ—ロセスã§ä½¿ç”¨ã§ãる診断コマンドã®ãƒªã‚¹ãƒˆã¯ã€ã“ã®ãƒ—ロセスã«å¯¾ã—ã¦\fIhelp\fRコマンドをé€ä¿¡ã™ã‚Œã°è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚å„診断コマンドã«ç‹¬è‡ªã®å¼•æ•°ã‚»ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚コマンドã®èª¬æ˜Žã€æ§‹æ–‡ãŠã‚ˆã³ä½¿ç”¨å¯èƒ½ãªå¼•æ•°ã®ãƒªã‚¹ãƒˆã‚’表示ã™ã‚‹ã«ã¯ã€\fIhelp\fRコマンドã®å¼•æ•°ã¨ã—ã¦ã‚³ãƒžãƒ³ãƒ‰åを使用ã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-°ú¿ô¤Ë¥¹¥Ú¡¼¥¹¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°ì½Å°úÍÑÉä¤Þ¤¿¤ÏÆó½Å°úÍÑÉä(\fI\*(Aq\fR¤Þ¤¿¤Ï\fI"\fR)¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£²Ã¤¨¤Æ¡¢¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥§¥ë¤¬°úÍÑÉä¤ò½èÍý¤·¤Ê¤¤¤è¤¦¤Ë¡¢¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å(\fI\e\fR)¤Ç°ì½Å°úÍÑÉä¤Þ¤¿¤ÏÆó½Å°úÍÑÉä¤ò¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¤³¤ì¤é¤Î°ú¿ô¤ò°ì½Å°úÍÑÉä¤Ç°Ï¤ó¤Ç¤«¤é¡¢Æó½Å°úÍÑÉä¤Ç°Ï¤à¤³¤È¤â¤Ç¤­¤Þ¤¹(¤Þ¤¿¤ÏÆó½Å°úÍÑÉä¤Ç°Ï¤ó¤Ç¤«¤é¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤à)¡£
+\fB注æ„:\fR
+引数ã«ã‚¹ãƒšãƒ¼ã‚¹ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ä¸€é‡å¼•ç”¨ç¬¦ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦(\fI\*(Aq\fRã¾ãŸã¯\fI"\fR)ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚加ãˆã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚§ãƒ«ãŒå¼•ç”¨ç¬¦ã‚’処ç†ã—ãªã„よã†ã«ã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(\fI\e\fR)ã§ä¸€é‡å¼•ç”¨ç¬¦ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦ã‚’エスケープã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã¯ã€ã“れらã®å¼•æ•°ã‚’一é‡å¼•ç”¨ç¬¦ã§å›²ã‚“ã§ã‹ã‚‰ã€äºŒé‡å¼•ç”¨ç¬¦ã§å›²ã‚€ã“ã¨ã‚‚ã§ãã¾ã™(ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦ã§å›²ã‚“ã§ã‹ã‚‰ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã‚€)。
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-³Æ¥ª¥×¥·¥ç¥ó¤Ï¸ß¤¤¤ËÇÓ¾Ū¤Ç¤¹¡£
+å„オプションã¯äº’ã„ã«æŽ’ä»–çš„ã§ã™ã€‚
 .PP
 \-f \fIfilename\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤«¤é¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ºÇ½é¤Î°ú¿ô¤È¤·¤Æ¥×¥í¥»¥¹¼±Ê̻Ҥޤ¿¤Ï¥á¥¤¥ó¡¦¥¯¥é¥¹¤ò»ØÄꤹ¤ë¾ì¹ç¤Ë¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥³¥Þ¥ó¥É¤Ï¡¢1¹Ô¤Çµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Èֹ浭¹æ(\fI#\fR)¤Ç»Ï¤Þ¤ë¹Ô¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤«¡¢\fIstop\fR¥­¡¼¥ï¡¼¥É¤ò´Þ¤à¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Î½èÍý¤¬½ªÎ»¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ã‚³ãƒžãƒ³ãƒ‰ã‚’読ã¿å–ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€æœ€åˆã®å¼•æ•°ã¨ã—ã¦ãƒ—ロセス識別å­ã¾ãŸã¯ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’指定ã™ã‚‹å ´åˆã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ファイル内ã®å„コマンドã¯ã€1è¡Œã§è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚番å·è¨˜å·(\fI#\fR)ã§å§‹ã¾ã‚‹è¡Œã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã™ã¹ã¦ã®è¡ŒãŒèª­ã¿å–られるã‹ã€\fIstop\fRキーワードをå«ã‚€è¡ŒãŒèª­ã¿å–られるã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ãŒçµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¼Â¹ÔÃæ¤ÎJava¥×¥í¥»¥¹¼±Ê̻ҤΥꥹ¥È¤ò¥á¥¤¥ó¡¦¥¯¥é¥¹¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£
+実行中ã®Javaプロセス識別å­ã®ãƒªã‚¹ãƒˆã‚’メイン・クラスãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jconsole.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jconsole.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jconsole
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†ãƒ„ール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jconsole" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó"
+.TH "jconsole" "1" "2013å¹´11月21æ—¥" "JDK 8" "Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jconsole \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò´Æ»ë¤ª¤è¤Ó´ÉÍý¤¹¤ë¤¿¤á¤Î¥°¥é¥Õ¥£¥«¥ë¡¦¥³¥ó¥½¡¼¥ë¤ò³«»Ï¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jconsole \- Javaアプリケーションを監視ãŠã‚ˆã³ç®¡ç†ã™ã‚‹ãŸã‚ã®ã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã‚’開始ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,56 +64,56 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 connection = \fIpid\fR | \fIhost\fR:\fIport\fR | \fIjmxURL\fR
 .RS 4
-\fIpid\fRÃÍ¤Ï¥í¡¼¥«¥ë¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£JVM¤Ï\fIjconsole\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶¡¼ID¤ÈƱ¤¸¥æ¡¼¥¶¡¼ID¤Ç¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIhost:port\fRÃͤÏJVM¤¬Æ°ºî¤·¤Æ¤¤¤ë¥Û¥¹¥È¡¦¥·¥¹¥Æ¥à¤Î̾Á°¤È¡¢JVM¤¬³«»Ï¤·¤¿¤È¤­¤Ë¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£\fIcom\&.sun\&.management\&.jmxremote\&.port\fR¤Ç»ØÄꤷ¤¿¥Ý¡¼¥ÈÈÖ¹æ¤Ç¤¹¡£\fIjmxUrl\fRÃͤϡ¢JMXServiceURL¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¡¢Àܳ¤µ¤ì¤ëJMX¥¨¡¼¥¸¥§¥ó¥È¤Î¥¢¥É¥ì¥¹¤Ç¤¹¡£
+\fIpid\fR値ã¯ãƒ­ãƒ¼ã‚«ãƒ«ã®Java仮想マシン(JVM)ã®ãƒ—ロセスIDã§ã™ã€‚JVMã¯\fIjconsole\fRコマンドを実行ã—ã¦ã„るユーザーIDã¨åŒã˜ãƒ¦ãƒ¼ã‚¶ãƒ¼IDã§å®Ÿè¡Œã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIhost:port\fR値ã¯JVMãŒå‹•ä½œã—ã¦ã„るホスト・システムã®åå‰ã¨ã€JVMãŒé–‹å§‹ã—ãŸã¨ãã«ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティ\fIcom\&.sun\&.management\&.jmxremote\&.port\fRã§æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆç•ªå·ã§ã™ã€‚\fIjmxUrl\fR値ã¯ã€JMXServiceURLã§è¨˜è¿°ã•ã‚Œã¦ã„ã‚‹ã€æŽ¥ç¶šã•ã‚Œã‚‹JMXエージェントã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™ã€‚
 .sp
-\fIconnection\fR¥Ñ¥é¥á¡¼¥¿¤Î¾ÜºÙ¤Ï¡¢JMX¥Æ¥¯¥Î¥í¥¸¤ò»ÈÍѤ·¤¿¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIconnection\fRパラメータã®è©³ç´°ã¯ã€JMXテクノロジを使用ã—ãŸãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fIJMXServiceURL\fR¥¯¥é¥¹¤ÎÀâÌÀ(
-http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIJMXServiceURL\fRクラスã®èª¬æ˜Ž(
+http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjconsole\fR¥³¥Þ¥ó¥É¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Þ¥·¥ó¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Þ¥·¥ó¾å¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È²¾ÁÛ¥Þ¥·¥ó¤Î´Æ»ë¤È´ÉÍý¤ò¹Ô¤¦¥°¥é¥Õ¥£¥«¥ë¡¦¥³¥ó¥½¡¼¥ë¡¦¥Ä¡¼¥ë¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIjconsole\fRコマンドã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒžã‚·ãƒ³ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒžã‚·ãƒ³ä¸Šã®Javaアプリケーションã¨ä»®æƒ³ãƒžã‚·ãƒ³ã®ç›£è¦–ã¨ç®¡ç†ã‚’è¡Œã†ã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ãƒ»ãƒ„ールを起動ã—ã¾ã™ã€‚
 .PP
-Windows¾å¤Ç¤Ï¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤Ï¥³¥ó¥½¡¼¥ë¡¦¥¦¥£¥ó¥É¥¦¤È´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤¿¤À¤·¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤¬¼ºÇÔ¤¹¤ë¤È¡¢¥¨¥é¡¼¾ðÊó¤ò¼¨¤¹¥À¥¤¥¢¥í¥°¡¦¥Ü¥Ã¥¯¥¹¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Windows上ã§ã¯ã€\fIjconsole\fRコマンドã¯ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ãƒ»ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¨é–¢é€£ä»˜ã‘られã¦ã„ã¾ã›ã‚“。ãŸã ã—ã€\fIjconsole\fRコマンドãŒå¤±æ•—ã™ã‚‹ã¨ã€ã‚¨ãƒ©ãƒ¼æƒ…報を示ã™ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãƒ»ãƒœãƒƒã‚¯ã‚¹ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-interval\fI=n\fR
 .RS 4
-¹¹¿·´Ö³Ö¤ò\fIn\fRÉäËÀßÄꤷ¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È¤Ï4ÉÃ)¡£
+更新間隔を\fIn\fR秒ã«è¨­å®šã—ã¾ã™(デフォルトã¯4秒)。
 .RE
 .PP
 \-notile
 .RS 4
-ºÇ½é¤Ë¥¦¥£¥ó¥É¥¦¤ò¥¿¥¤¥ê¥ó¥°¤·¤Þ¤»¤ó(Ê£¿ôÀܳ¤Î¾ì¹ç)¡£
+最åˆã«ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’タイリングã—ã¾ã›ã‚“(複数接続ã®å ´åˆ)。
 .RE
 .PP
 \-pluginpath \fIplugins\fR
 .RS 4
-\fIJConsole\fR¥×¥é¥°¥¤¥ó¤ò¸¡º÷¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fIplugins\fR¥Ñ¥¹¤Ë¤Ï\fIMETA\-INF/services/com\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fR¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥Ð¥¤¥À¹½À®¥Õ¥¡¥¤¥ë¤ò´Þ¤ó¤Ç¤¤¤ëɬÍפ¬¤¢¤ê¡¢¤³¤ì¤Ë¤Ï¥×¥é¥°¥¤¥ó¤´¤È¤Ë1¹Ô¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤½¤Î¹Ô¤Ï\fIcom\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fR¥¯¥é¥¹¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIJConsole\fRプラグインを検索ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯JARファイルã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIplugins\fRパスã«ã¯\fIMETA\-INF/services/com\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fRã¨ã„ã†åå‰ã®ãƒ—ロãƒã‚¤ãƒ€æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚“ã§ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã€ã“ã‚Œã«ã¯ãƒ—ラグインã”ã¨ã«1è¡ŒãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ãã®è¡Œã¯\fIcom\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fRクラスを実装ã—ã¦ã„るクラスã®å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjconsole\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿JVM¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£
+\fIjconsole\fRコマンドを実行ã—ãŸJVMã«\fIflag\fRを渡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -123,7 +123,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JConsole¤Î»ÈÍÑ
+JConsoleã®ä½¿ç”¨
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/jconsole\&.html)
 .RE
 .sp
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JMX¥Æ¥¯¥Î¥í¥¸¤ò»ÈÍѤ·¤¿¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý
+JMXテクノロジを使用ã—ãŸãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†
 
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)
 .RE
@@ -148,7 +148,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIJMXServiceURL\fR¥¯¥é¥¹¤ÎÀâÌÀ(
+\fIJMXServiceURL\fRクラスã®èª¬æ˜Ž(
 http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/jdb.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jdb.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jdb
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jdb" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jdb" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jdb \- Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥×¥í¥°¥é¥à¤ÎÉÔ¶ñ¹ç¤ò¸¡½Ð¤ª¤è¤Ó½¤Àµ¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jdb \- Javaプラットフォーム・プログラムã®ä¸å…·åˆã‚’検出ãŠã‚ˆã³ä¿®æ­£ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,25 +64,25 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclass\fRname
 .RS 4
-¥Ç¥Ð¥Ã¥°¤¹¤ë¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î̾Á°¡£
+デãƒãƒƒã‚°ã™ã‚‹ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-class¤Î\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤ¹°ú¿ô¡£
+classã®\fImain()\fRメソッドã«æ¸¡ã™å¼•æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java¥Ç¥Ð¥Ã¥¬(JDB)¤Ï¡¢Java¥¯¥é¥¹ÍѤδÊñ¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ç¥Ð¥Ã¥¬¤Ç¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤È¤½¤Î¥ª¥×¥·¥ç¥ó¤ÏJDB¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢JDBA (Java Platform Debugger Architecture)¤ò»ë³ÐŪ¤Ë¼Â¹Ô¤·¡¢¥í¡¼¥«¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¸¡ºº¤È¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£Java Platform Debugger Architecture (JDBA)
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "JDB¥»¥Ã¥·¥ç¥ó¤Î³«»Ï"
+Javaデãƒãƒƒã‚¬(JDB)ã¯ã€Javaクラス用ã®ç°¡å˜ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ‡ãƒãƒƒã‚¬ã§ã™ã€‚\fIjdb\fRコマンドã¨ãã®ã‚ªãƒ—ションã¯JDBを呼ã³å‡ºã—ã¾ã™ã€‚\fIjdb\fRコマンドã¯ã€JDBA (Java Platform Debugger Architecture)を視覚的ã«å®Ÿè¡Œã—ã€ãƒ­ãƒ¼ã‚«ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆã®Java仮想マシン(JVM)ã®æ¤œæŸ»ã¨ãƒ‡ãƒãƒƒã‚°ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚Java Platform Debugger Architecture (JDBA)
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "JDBセッションã®é–‹å§‹"
 .PP
-JDB¥»¥Ã¥·¥ç¥ó¤ò³«»Ï¤¹¤ë¤Ë¤ÏÍÍ¡¹¤ÊÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£ºÇ¤âÉÑÈˤ˻ÈÍѤµ¤ì¤ë¤Î¤Ï¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¤¥ó¡¦¥¯¥é¥¹¤ò»ÈÍѤ·¤Æ¡¢JDB¤«¤é¿·¤·¤¤JVM¤òµ¯Æ°¤¹¤ëÊýË¡¤Ç¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î¤«¤ï¤ê¤Ë\fIjdb\fR¥³¥Þ¥ó¥É¤òÆþÎϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¤¥ó¡¦¥¯¥é¥¹¤¬\fIMyClass\fR¤Î¾ì¹ç¤Ï¡¢JDB´Ä¶­¤Ç¥Ç¥Ð¥Ã¥°¤¹¤ë¤È¤­¤Ë¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDBセッションを開始ã™ã‚‹ã«ã¯æ§˜ã€…ãªæ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚最も頻ç¹ã«ä½¿ç”¨ã•ã‚Œã‚‹ã®ã¯ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’使用ã—ã¦ã€JDBã‹ã‚‰æ–°ã—ã„JVMã‚’èµ·å‹•ã™ã‚‹æ–¹æ³•ã§ã™ã€‚コマンドラインã§ã€\fIjava\fRコマンドã®ã‹ã‚ã‚Šã«\fIjdb\fRコマンドを入力ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¢ãƒ—リケーションã®ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãŒ\fIMyClass\fRã®å ´åˆã¯ã€JDB環境ã§ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã¨ãã«æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -94,9 +94,9 @@
 .RE
 .\}
 .PP
-¤³¤ÎÊýË¡¤Çµ¯Æ°¤¹¤ë¤È¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ·¤Æ2¤ÄÌܤÎJVM¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¼¡¤Ë¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤ò¥í¡¼¥É¤·¤Æ¡¢¥¯¥é¥¹¤ÎºÇ½é¤ÎÌ¿Îá¤ò¼Â¹Ô¤¹¤ëÁ°¤ËJVM¤òÄä»ß¤µ¤»¤Þ¤¹¡£
+ã“ã®æ–¹æ³•ã§èµ·å‹•ã™ã‚‹ã¨ã€\fIjdb\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ラメータを使用ã—ã¦2ã¤ç›®ã®JVMを呼ã³å‡ºã—ã¾ã™ã€‚次ã«ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’ロードã—ã¦ã€ã‚¯ãƒ©ã‚¹ã®æœ€åˆã®å‘½ä»¤ã‚’実行ã™ã‚‹å‰ã«JVMã‚’åœæ­¢ã•ã›ã¾ã™ã€‚
 .PP
-\fIjdb\fR¥³¥Þ¥ó¥É¤Î¤â¤¦1¤Ä¤Î»ÈÍÑÊýË¡¤Ï¡¢¤¹¤Ç¤Ë¼Â¹ÔÃæ¤ÎJVM¤Ëjdb¤òÀܳ¤¹¤ë¤³¤È¤Ç¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤¬Àܳ¤¹¤ëVM¤ò¡¢¤½¤Î¼Â¹ÔÃæ¤Ëµ¯Æ°¤¹¤ë¤¿¤á¤Î¹½Ê¸¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¤¥ó¥×¥í¥»¥¹¡¦¥Ç¥Ð¥Ã¥°Íѥ饤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¡¢Àܳ¤Î¼ïÎà¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjdb\fRコマンドã®ã‚‚ã†1ã¤ã®ä½¿ç”¨æ–¹æ³•ã¯ã€ã™ã§ã«å®Ÿè¡Œä¸­ã®JVMã«jdbを接続ã™ã‚‹ã“ã¨ã§ã™ã€‚\fIjdb\fRコマンドãŒæŽ¥ç¶šã™ã‚‹VMã‚’ã€ãã®å®Ÿè¡Œä¸­ã«èµ·å‹•ã™ã‚‹ãŸã‚ã®æ§‹æ–‡ã‚’次ã«ç¤ºã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¤ãƒ³ãƒ—ロセス・デãƒãƒƒã‚°ç”¨ãƒ©ã‚¤ãƒ–ラリをロードã—ã€æŽ¥ç¶šã®ç¨®é¡žã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -108,7 +108,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤òJVM¤ËÀܳ¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€\fIjdb\fRコマンドをJVMã«æŽ¥ç¶šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,36 +120,36 @@
 .RE
 .\}
 .PP
-¤³¤Î¾ì¹ç¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¿·¤·¤¤JVM¤òµ¯Æ°¤¹¤ë¤«¤ï¤ê¤Ë´û¸¤ÎJVM¤ËÀܳ¤µ¤ì¤ë¤¿¤á¡¢\fIjdb\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë\fIMyClass\fR°ú¿ô¤Ï»ØÄꤷ¤Þ¤»¤ó¡£
+ã“ã®å ´åˆã€\fIjdb\fRコマンドã¯æ–°ã—ã„JVMã‚’èµ·å‹•ã™ã‚‹ã‹ã‚ã‚Šã«æ—¢å­˜ã®JVMã«æŽ¥ç¶šã•ã‚Œã‚‹ãŸã‚ã€\fIjdb\fRコマンドラインã«\fIMyClass\fR引数ã¯æŒ‡å®šã—ã¾ã›ã‚“。
 .PP
-¥Ç¥Ð¥Ã¥¬¤òJVM¤ËÀܳ¤¹¤ë¤Ë¤Ï¾¤Ë¤âÍÍ¡¹¤ÊÊýË¡¤¬¤¢¤ê¡¢¤¹¤Ù¤Æ\fIjdb\fR¥³¥Þ¥ó¥É¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Àܳ¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Java Platform Debugger Architecture¤Î¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "´ðËÜjdb¥³¥Þ¥ó¥É"
+デãƒãƒƒã‚¬ã‚’JVMã«æŽ¥ç¶šã™ã‚‹ã«ã¯ä»–ã«ã‚‚様々ãªæ–¹æ³•ãŒã‚ã‚Šã€ã™ã¹ã¦\fIjdb\fRコマンドã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚接続オプションã«ã¤ã„ã¦ã¯ã€Java Platform Debugger Architectureã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "基本jdbコマンド"
 .PP
-´ðËÜŪ¤Ê\fIjdb\fR¥³¥Þ¥ó¥É¤Î°ìÍ÷¤ò¼¨¤·¤Þ¤¹¡£JDB¤¬¥µ¥Ý¡¼¥È¤¹¤ë¥³¥Þ¥ó¥É¤Ï¤³¤ì°Ê³°¤Ë¤â¤¢¤ê¡¢¤½¤ì¤é¤Ï\fI\-help\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æɽ¼¨¤Ç¤­¤Þ¤¹¡£
+基本的ãª\fIjdb\fRコマンドã®ä¸€è¦§ã‚’示ã—ã¾ã™ã€‚JDBãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã¯ã“れ以外ã«ã‚‚ã‚ã‚Šã€ãれらã¯\fI\-help\fRオプションを使用ã—ã¦è¡¨ç¤ºã§ãã¾ã™ã€‚
 .PP
-help¤Þ¤¿¤Ï?
+helpã¾ãŸã¯?
 .RS 4
-\fIhelp\fR¤Þ¤¿¤Ï\fI?\fR¥³¥Þ¥ó¥É¤Ï¡¢Ç§¼±¤µ¤ì¤¿¥³¥Þ¥ó¥É¤Î¥ê¥¹¥È¤Ë´Ê·é¤ÊÀâÌÀ¤òÉÕ¤±¤Æɽ¼¨¤·¤Þ¤¹¡£
+\fIhelp\fRã¾ãŸã¯\fI?\fRコマンドã¯ã€èªè­˜ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã®ãƒªã‚¹ãƒˆã«ç°¡æ½”ãªèª¬æ˜Žã‚’付ã‘ã¦è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 run
 .RS 4
-JDB¤òµ¯Æ°¤·¤Æ¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤¿¤¢¤È¤Ë¡¢\fIrun\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò³«»Ï¤Ç¤­¤Þ¤¹¡£\fIrun\fR¥³¥Þ¥ó¥É¤Ï¡¢´û¸¤ÎVM¤ËÀܳ¤·¤Æ¤¤¤ë¾ì¹ç¤È¤Ï°Û¤Ê¤ê¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬\fIjdb\fR¤«¤éµ¯Æ°¤·¤¿¤È¤­¤Ë¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+JDBã‚’èµ·å‹•ã—ã¦ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ãŸã‚ã¨ã«ã€\fIrun\fRコマンドを使用ã—ã¦ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’開始ã§ãã¾ã™ã€‚\fIrun\fRコマンドã¯ã€æ—¢å­˜ã®VMã«æŽ¥ç¶šã—ã¦ã„ã‚‹å ´åˆã¨ã¯ç•°ãªã‚Šã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションãŒ\fIjdb\fRã‹ã‚‰èµ·å‹•ã—ãŸã¨ãã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 cont
 .RS 4
-¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¡¢Îã³°¡¢¤Þ¤¿¤Ï¥¹¥Æ¥Ã¥×¼Â¹Ô¤Î¸å¤Ç¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò·Ñ³¤·¤Þ¤¹¡£
+ブレークãƒã‚¤ãƒ³ãƒˆã€ä¾‹å¤–ã€ã¾ãŸã¯ã‚¹ãƒ†ãƒƒãƒ—実行ã®å¾Œã§ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’継続ã—ã¾ã™ã€‚
 .RE
 .PP
 print
 .RS 4
-Java¥ª¥Ö¥¸¥§¥¯¥È¤ª¤è¤Ó¥×¥ê¥ß¥Æ¥£¥ÖÃͤòɽ¼¨¤·¤Þ¤¹¡£¥×¥ê¥ß¥Æ¥£¥Ö·¿¤ÎÊÑ¿ô¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤Î¾ì¹ç¤Ë¤Ï¡¢¼ÂºÝ¤ÎÃͤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ì¹ç¤Ë¤Ï¡¢Ã»¤¤ÀâÌÀ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ÜºÙ¤ò¼èÆÀ¤¹¤ëÊýË¡¤òõ¤¹¤Ë¤Ï¡¢dump¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JavaオブジェクトãŠã‚ˆã³ãƒ—リミティブ値を表示ã—ã¾ã™ã€‚プリミティブ型ã®å¤‰æ•°ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å ´åˆã«ã¯ã€å®Ÿéš›ã®å€¤ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚オブジェクトã®å ´åˆã«ã¯ã€çŸ­ã„説明ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚オブジェクトã®è©³ç´°ã‚’å–å¾—ã™ã‚‹æ–¹æ³•ã‚’探ã™ã«ã¯ã€dumpコマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fBÃí°Õ:\fR
-¥í¡¼¥«¥ëÊÑ¿ô¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢´Þ¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤¬\fIjavac \-g\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+ローカル変数を表示ã™ã‚‹ã«ã¯ã€å«ã‚“ã§ã„るクラスãŒ\fIjavac \-g\fRオプションを使用ã—ã¦ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIprint\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Ë¼¨¤¹¤è¤¦¤Ê¡¢¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò»ÈÍѤ·¤¿¤â¤Î¤Ê¤É¡¢Â¿¤¯¤Î´Êñ¤ÊJava¼°¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
+\fIprint\fRコマンドã¯ã€æ¬¡ã«ç¤ºã™ã‚ˆã†ãªã€ãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を使用ã—ãŸã‚‚ã®ãªã©ã€å¤šãã®ç°¡å˜ãªJavaå¼ã‚’サãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -168,12 +168,12 @@
 .PP
 dump
 .RS 4
-¥×¥ê¥ß¥Æ¥£¥ÖÃͤξì¹ç¡¢\fIdump\fR¥³¥Þ¥ó¥É¤Ï\fIprint\fR¥³¥Þ¥ó¥É¤ÈƱ°ì¤Ç¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ì¹ç¡¢\fIdump\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë³Æ¥Õ¥£¡¼¥ë¥É¤Î¸½ºß¤ÎÃͤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£static¥Õ¥£¡¼¥ë¥É¤Èinstance¥Õ¥£¡¼¥ë¥É¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fIdump\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIprint\fR¥³¥Þ¥ó¥É¤ÈƱ¤¸¼°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£
+プリミティブ値ã®å ´åˆã€\fIdump\fRコマンドã¯\fIprint\fRコマンドã¨åŒä¸€ã§ã™ã€‚オブジェクトã®å ´åˆã€\fIdump\fRコマンドã§ã¯ã€ã‚ªãƒ–ジェクト内ã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹å„フィールドã®ç¾åœ¨ã®å€¤ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚staticフィールドã¨instanceフィールドãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fIdump\fRコマンドã§ã¯ã€\fIprint\fRコマンドã¨åŒã˜å¼ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 threads
 .RS 4
-¸½ºß¼Â¹ÔÃæ¤Î¥¹¥ì¥Ã¥É¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¥¹¥ì¥Ã¥É¤´¤È¤Ë¡¢Ì¾Á°¤È¸½ºß¤Î¾õÂÖ¡¢¤ª¤è¤Ó¾¤Î¥³¥Þ¥ó¥É¤Ë»ÈÍѤǤ­¤ë¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï4¤Ç¤¢¤ê¡¢¥¹¥ì¥Ã¥É¤Ï\fIjava\&.lang\&.Thread\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¡¢¥¹¥ì¥Ã¥É¤Î̾Á°¤Ï\fImain\fR¤Ç¤¢¤ê¡¢¸½ºß¼Â¹ÔÃæ¤Ç¤¹¡£
+ç¾åœ¨å®Ÿè¡Œä¸­ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’一覧表示ã—ã¾ã™ã€‚スレッドã”ã¨ã«ã€åå‰ã¨ç¾åœ¨ã®çŠ¶æ…‹ã€ãŠã‚ˆã³ä»–ã®ã‚³ãƒžãƒ³ãƒ‰ã«ä½¿ç”¨ã§ãるインデックスãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã¯4ã§ã‚ã‚Šã€ã‚¹ãƒ¬ãƒƒãƒ‰ã¯\fIjava\&.lang\&.Thread\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ã€ã‚¹ãƒ¬ãƒƒãƒ‰ã®åå‰ã¯\fImain\fRã§ã‚ã‚Šã€ç¾åœ¨å®Ÿè¡Œä¸­ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -188,20 +188,20 @@
 .PP
 thread
 .RS 4
-¸½ºß¤Î¥¹¥ì¥Ã¥É¤Ë¤¹¤ë¥¹¥ì¥Ã¥É¤òÁªÂò¤·¤Þ¤¹¡£Â¿¤¯¤Î\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¤ÎÀßÄê¤Ë´ð¤Å¤¤¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥¹¥ì¥Ã¥É¤Ï¡¢threads¥³¥Þ¥ó¥É¤ÇÀâÌÀ¤·¤¿¥¹¥ì¥Ã¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹¤È¤È¤â¤Ë»ØÄꤷ¤Þ¤¹¡£
+ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã«ã™ã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’é¸æŠžã—ã¾ã™ã€‚多ãã®\fIjdb\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®è¨­å®šã«åŸºã¥ã„ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚スレッドã¯ã€threadsコマンドã§èª¬æ˜Žã—ãŸã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã¨ã¨ã‚‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 where
 .RS 4
-°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIwhere\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤¬¥À¥ó¥×¤µ¤ì¤Þ¤¹¡£\fIwhere\fR
-\fIall\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¡¦¥°¥ë¡¼¥×¤Ë¤¢¤ë¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤ò¤¹¤Ù¤Æ¥À¥ó¥×¤·¤Þ¤¹¡£\fIwhere\fR
-\fIthreadindex\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤ò¥À¥ó¥×¤·¤Þ¤¹¡£
+引数を指定ã—ãªã„ã§\fIwhere\fRコマンドを実行ã™ã‚‹ã¨ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãŒãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã™ã€‚\fIwhere\fR
+\fIall\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã«ã‚るスレッドã®ã‚¹ã‚¿ãƒƒã‚¯ã‚’ã™ã¹ã¦ãƒ€ãƒ³ãƒ—ã—ã¾ã™ã€‚\fIwhere\fR
+\fIthreadindex\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¹ãƒ¬ãƒƒãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ã‚’ダンプã—ã¾ã™ã€‚
 .sp
-¸½ºß¤Î¥¹¥ì¥Ã¥É¤¬(¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤«\fIsuspend\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ)ÃæÃǤ·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥í¡¼¥«¥ëÊÑ¿ô¤È¥Õ¥£¡¼¥ë¥É¤Ï\fIprint\fR¥³¥Þ¥ó¥É¤È\fIdump\fR¥³¥Þ¥ó¥É¤Çɽ¼¨¤Ç¤­¤Þ¤¹¡£\fIup\fR¥³¥Þ¥ó¥É¤È\fIdown\fR¥³¥Þ¥ó¥É¤Ç¡¢¤É¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤ò¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Ë¤¹¤ë¤«¤òÁª¤Ö¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãŒ(ブレークãƒã‚¤ãƒ³ãƒˆã‹\fIsuspend\fRコマンドã«ã‚ˆã£ã¦)中断ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°ã¨ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯\fIprint\fRコマンドã¨\fIdump\fRコマンドã§è¡¨ç¤ºã§ãã¾ã™ã€‚\fIup\fRコマンドã¨\fIdown\fRコマンドã§ã€ã©ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã«ã™ã‚‹ã‹ã‚’é¸ã¶ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
-.SS "¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È"
+.SS "ブレークãƒã‚¤ãƒ³ãƒˆ"
 .PP
-¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤Ï¡¢¹ÔÈÖ¹æ¤Þ¤¿¤Ï¥á¥½¥Ã¥É¤ÎºÇ½é¤ÎÌ¿Îá¤ÇJDB¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+ブレークãƒã‚¤ãƒ³ãƒˆã¯ã€è¡Œç•ªå·ã¾ãŸã¯ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€åˆã®å‘½ä»¤ã§JDBã«è¨­å®šã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -211,7 +211,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop at MyClass:22\fR¤Ï¡¢\fIMyClass\fR¤¬´Þ¤Þ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î22¹ÔÌܤκǽé¤ÎÌ¿Îá¤Ë¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+コマンド\fIstop at MyClass:22\fRã¯ã€\fIMyClass\fRãŒå«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®22行目ã®æœ€åˆã®å‘½ä»¤ã«ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -222,7 +222,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop in java\&.lang\&.String\&.length\fR¤Ï¡¢¥á¥½¥Ã¥É\fIjava\&.lang\&.String\&.length\fR¤ÎÀèƬ¤Ë¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+コマンド\fIstop in java\&.lang\&.String\&.length\fRã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIjava\&.lang\&.String\&.length\fRã®å…ˆé ­ã«ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -233,106 +233,106 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop in MyClass\&.<clinit>\fR¤Ï¡¢\fI<clinit>\fR¤ò»ÈÍѤ·¤Æ\fIMyClass\fR¤ÎÀÅŪ½é´ü²½¥³¡¼¥É¤òÆÃÄꤷ¤Þ¤¹¡£
+コマンド\fIstop in MyClass\&.<clinit>\fRã¯ã€\fI<clinit>\fRを使用ã—ã¦\fIMyClass\fRã®é™çš„åˆæœŸåŒ–コードを特定ã—ã¾ã™ã€‚
 .RE
 .PP
-¥á¥½¥Ã¥É¤¬¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¥á¥½¥Ã¥É¤Î°ú¿ô¤Î·¿¤â»ØÄꤷ¤Æ¡¢¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤ËÂФ·¤ÆŬÀڤʥ᥽¥Ã¥É¤¬ÁªÂò¤µ¤ì¤ë¤è¤¦¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMyClass\&.myMethod(int,java\&.lang\&.String)\fR¤Þ¤¿¤Ï\fIMyClass\&.myMethod()\fR¤È»ØÄꤷ¤Þ¤¹¡£
+メソッドãŒã‚ªãƒ¼ãƒãƒ¼ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®å¼•æ•°ã®åž‹ã‚‚指定ã—ã¦ã€ãƒ–レークãƒã‚¤ãƒ³ãƒˆã«å¯¾ã—ã¦é©åˆ‡ãªãƒ¡ã‚½ãƒƒãƒ‰ãŒé¸æŠžã•ã‚Œã‚‹ã‚ˆã†ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMyClass\&.myMethod(int,java\&.lang\&.String)\fRã¾ãŸã¯\fIMyClass\&.myMethod()\fRã¨æŒ‡å®šã—ã¾ã™ã€‚
 .PP
-\fIclear\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIclear MyClass:45\fR¤Î¤è¤¦¤Ê¹½Ê¸¤ò»ÈÍѤ·¤Æ¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òºï½ü¤·¤Þ¤¹¡£\fIclear\fR¤ò»ÈÍѤ¹¤ë¤«¡¢°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIstop\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¸½ºßÀßÄꤵ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fIcont\fR¥³¥Þ¥ó¥É¤Ï¼Â¹Ô¤ò·Ñ³¤·¤Þ¤¹¡£
-.SS "¥¹¥Æ¥Ã¥×¼Â¹Ô"
+\fIclear\fRコマンドã¯ã€\fIclear MyClass:45\fRã®ã‚ˆã†ãªæ§‹æ–‡ã‚’使用ã—ã¦ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’削除ã—ã¾ã™ã€‚\fIclear\fRを使用ã™ã‚‹ã‹ã€å¼•æ•°ã‚’指定ã—ãªã„ã§\fIstop\fRコマンドを使用ã™ã‚‹ã¨ã€ç¾åœ¨è¨­å®šã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ–レークãƒã‚¤ãƒ³ãƒˆãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fIcont\fRコマンドã¯å®Ÿè¡Œã‚’継続ã—ã¾ã™ã€‚
+.SS "ステップ実行"
 .PP
-\fIstep\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Þ¤¿¤Ï¸Æ¤Ó½Ð¤µ¤ì¤¿¥á¥½¥Ã¥ÉÆâ¤Ç¡¢¼¡¤Î¹Ô¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fInext\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Î¼¡¤Î¹Ô¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.SS "Îã³°"
+\fIstep\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã¾ãŸã¯å‘¼ã³å‡ºã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å†…ã§ã€æ¬¡ã®è¡Œã‚’実行ã—ã¾ã™ã€‚\fInext\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã®æ¬¡ã®è¡Œã‚’実行ã—ã¾ã™ã€‚
+.SS "例外"
 .PP
-¥¹¥í¡¼¤·¤Æ¤¤¤ë¥¹¥ì¥Ã¥É¤Î¸Æ½Ð¤·¥¹¥¿¥Ã¥¯¾å¤Î¤É¤³¤Ë¤â\fIcatch\fRʸ¤¬¤Ê¤¤¾ì¹ç¤ËÎã³°¤¬È¯À¸¤¹¤ë¤È¡¢JVM¤ÏÄ̾Îã³°¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Æ½ªÎ»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢JDB´Ä¶­¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°ãÈ¿¤Î¥¹¥í¡¼»þ¤ËJDB¤ËÀ©¸æ¤¬Ìá¤ê¤Þ¤¹¡£¼¡¤Ë¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÎã³°¤Î¸¶°ø¤ò¿ÇÃǤ·¤Þ¤¹¡£
+スローã—ã¦ã„るスレッドã®å‘¼å‡ºã—スタック上ã®ã©ã“ã«ã‚‚\fIcatch\fRæ–‡ãŒãªã„å ´åˆã«ä¾‹å¤–ãŒç™ºç”Ÿã™ã‚‹ã¨ã€JVMã¯é€šå¸¸ã€ä¾‹å¤–トレースを出力ã—ã¦çµ‚了ã—ã¾ã™ã€‚ãŸã ã—ã€JDB環境ã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã¯ã€é•åã®ã‚¹ãƒ­ãƒ¼æ™‚ã«JDBã«åˆ¶å¾¡ãŒæˆ»ã‚Šã¾ã™ã€‚次ã«ã€\fIjdb\fRコマンドを使用ã—ã¦ä¾‹å¤–ã®åŽŸå› ã‚’診断ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIcatch java\&.io\&.FileNotFoundException\fR¤Þ¤¿¤Ï\fIcatch\fR
-\fImypackage\&.BigTroubleException\fR¤Î¤è¤¦¤Ë\fIcatch\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Ð¥Ã¥°¤µ¤ì¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢Â¾¤ÎÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤ËÄä»ß¤·¤Þ¤¹¡£Îã³°¤¬ÆÃÄê¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Î¾ì¹ç¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÏÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì½ê¤ÇÄä»ß¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIcatch java\&.io\&.FileNotFoundException\fRã¾ãŸã¯\fIcatch\fR
+\fImypackage\&.BigTroubleException\fRã®ã‚ˆã†ã«\fIcatch\fRコマンドを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒãƒƒã‚°ã•ã‚ŒãŸã‚¢ãƒ—リケーションã¯ã€ä»–ã®ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«åœæ­¢ã—ã¾ã™ã€‚例外ãŒç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚µãƒ–クラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å ´åˆã¯ã€ã‚¢ãƒ—リケーションã¯ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´æ‰€ã§åœæ­¢ã—ã¾ã™ã€‚
 .PP
-\fIignore\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢°ÊÁ°¤Î\fIcatch\fR¥³¥Þ¥ó¥É¤Î¸ú²Ì¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIignore\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Ð¥Ã¥°¤µ¤ì¤ëJVM¤ÏÆÃÄê¤ÎÎã³°¤ò̵»ë¤»¤º¡¢¥Ç¥Ð¥Ã¥¬¤Î¤ß¤ò̵»ë¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIignore\fRコマンドを使用ã™ã‚‹ã¨ã€ä»¥å‰ã®\fIcatch\fRコマンドã®åŠ¹æžœãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIignore\fRコマンドã§ã¯ã€ãƒ‡ãƒãƒƒã‚°ã•ã‚Œã‚‹JVMã¯ç‰¹å®šã®ä¾‹å¤–を無視ã›ãšã€ãƒ‡ãƒãƒƒã‚¬ã®ã¿ã‚’無視ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava\fR¥³¥Þ¥ó¥É¤Î¤«¤ï¤ê¤Ë\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-D\fR¡¢\fI\-classpath\fR¡¢\fI\-X\fR¤Ê¤É¡¢\fIjava\fR¥³¥Þ¥ó¥É¤ÈƱ¤¸¿ô¤Î¥ª¥×¥·¥ç¥ó¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¾¤Ë¼¡¤Î¥ê¥¹¥È¤Ë¤¢¤ë¥ª¥×¥·¥ç¥ó¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£
+コマンドラインã§\fIjava\fRコマンドã®ã‹ã‚ã‚Šã«\fIjdb\fRコマンドを使用ã™ã‚‹å ´åˆã€\fIjdb\fRコマンドã¯ã€\fI\-D\fRã€\fI\-classpath\fRã€\fI\-X\fRãªã©ã€\fIjava\fRコマンドã¨åŒã˜æ•°ã®ã‚ªãƒ—ションをå—ã‘入れã¾ã™ã€‚\fIjdb\fRコマンドã¯ã€ãã®ä»–ã«æ¬¡ã®ãƒªã‚¹ãƒˆã«ã‚るオプションをå—ã‘入れã¾ã™ã€‚
 .PP
-¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦JVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤¹¤ë¤¿¤á¤ÎÂåÂص¡¹½¤òÄ󶡤¹¤ë¤¿¤á¤Ë¡¢¤½¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤ÎÀܳ¤ÎÂåÂؤ˴ؤ¹¤ë¾ÜºÙ¤Ê¥É¥­¥å¥á¥ó¥È¤Ï¡¢Java Platform Debugger Architecture (JPDA)
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+デãƒãƒƒã‚°ã‚’è¡Œã†JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã™ã‚‹ãŸã‚ã®ä»£æ›¿æ©Ÿæ§‹ã‚’æä¾›ã™ã‚‹ãŸã‚ã«ã€ãã®ä»–ã®ã‚ªãƒ—ションãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ã“れらã®æŽ¥ç¶šã®ä»£æ›¿ã«é–¢ã™ã‚‹è©³ç´°ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€Java Platform Debugger Architecture (JPDA)
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sourcepath \fIdir1:dir2: \&. \&. \&.\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ñ¥¹¤ò»ÈÍѤ·¤Æ¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥Ñ¥¹¤Î¥É¥Ã¥È(\&.)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ‘スを使用ã—ã¦ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ‘スã®ãƒ‰ãƒƒãƒˆ(\&.)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-attach \fIaddress\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤ÎÀܳµ¡¹½¤ò»ÈÍѤ·¤Æ¡¢¼Â¹ÔÃæ¤ÎJVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤·¤Þ¤¹¡£
+デフォルトã®æŽ¥ç¶šæ©Ÿæ§‹ã‚’使用ã—ã¦ã€å®Ÿè¡Œä¸­ã®JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã—ã¾ã™ã€‚
 .RE
 .PP
 \-listen \fIaddress\fR
 .RS 4
-¼Â¹ÔÃæ¤ÎJVM¤¬É¸½à¤Î¥³¥Í¥¯¥¿¤ò»ÈÍѤ·¤Æ»ØÄꤵ¤ì¤¿¥¢¥É¥ì¥¹¤ËÀܳ¤¹¤ë¤Î¤òÂÔµ¡¤·¤Þ¤¹¡£
+実行中ã®JVMãŒæ¨™æº–ã®ã‚³ãƒã‚¯ã‚¿ã‚’使用ã—ã¦æŒ‡å®šã•ã‚ŒãŸã‚¢ãƒ‰ãƒ¬ã‚¹ã«æŽ¥ç¶šã™ã‚‹ã®ã‚’å¾…æ©Ÿã—ã¾ã™ã€‚
 .RE
 .PP
 \-launch
 .RS 4
-¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òJDB¤Îµ¯Æ°¸å¤¿¤À¤Á¤Ëµ¯Æ°¤·¤Þ¤¹¡£\fI\-launch\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIrun\fR¥³¥Þ¥ó¥É¤¬É¬Íפʤ¯¤Ê¤ê¤Þ¤¹¡£¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢µ¯Æ°¸å¡¢½é´ü¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤ëľÁ°¤ËÄä»ß¤·¤Þ¤¹¡£¤½¤Î»þÅÀ¤Ç¡¢É¬Íפʥ֥졼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¡¢\fIcont\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¼Â¹Ô¤ò·Ñ³¤Ç¤­¤Þ¤¹¡£
+デãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションをJDBã®èµ·å‹•å¾ŒãŸã ã¡ã«èµ·å‹•ã—ã¾ã™ã€‚\fI\-launch\fRオプションã«ã‚ˆã‚Šã€\fIrun\fRコマンドãŒå¿…è¦ãªããªã‚Šã¾ã™ã€‚デãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã¯ã€èµ·å‹•å¾Œã€åˆæœŸã‚¢ãƒ—リケーション・クラスãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ç›´å‰ã«åœæ­¢ã—ã¾ã™ã€‚ãã®æ™‚点ã§ã€å¿…è¦ãªãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã€\fIcont\fRコマンドを使用ã—ã¦å®Ÿè¡Œã‚’継続ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-listconnectors
 .RS 4
-¤³¤ÎJVM¤ÇÍøÍѤǤ­¤ë¥³¥Í¥¯¥¿¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ã“ã®JVMã§åˆ©ç”¨ã§ãるコãƒã‚¯ã‚¿ã‚’一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-connect connector\-name:\fIname1=value1\fR
 .RS 4
-°ìÍ÷ɽ¼¨¤µ¤ì¤¿°ú¿ô¤ÎÃͤȻØÄê¤Î¥³¥Í¥¯¥¿¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥ÈJVM¤ËÀܳ¤·¤Þ¤¹¡£
+一覧表示ã•ã‚ŒãŸå¼•æ•°ã®å€¤ã¨æŒ‡å®šã®ã‚³ãƒã‚¯ã‚¿ã‚’使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã«æŽ¥ç¶šã—ã¾ã™ã€‚
 .RE
 .PP
 \-dbgtrace [\fIflags\fR]
 .RS 4
-\fIjdb\fR¥³¥Þ¥ó¥É¤Î¥Ç¥Ð¥Ã¥°¤Î¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjdb\fRコマンドã®ãƒ‡ãƒãƒƒã‚°ã®æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-tclient
 .RS 4
-Java HotSpot VM¥¯¥é¥¤¥¢¥ó¥ÈÆâ¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java HotSpot VMクライアント内ã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-tserver
 .RS 4
-Java HotSpot VM¥µ¡¼¥Ð¡¼Æâ¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java HotSpot VMサーãƒãƒ¼å†…ã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥Ç¥Ð¥Ã¥°ÂÐ¾Ý¤Î¥×¥í¥»¥¹¤ËžÁ÷¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó"
+.SH "デãƒãƒƒã‚°å¯¾è±¡ã®ãƒ—ロセスã«è»¢é€ã•ã‚Œã‚‹ã‚ªãƒ—ション"
 .PP
 \-v \-verbose[:\fIclass\fR|gc|jni]
 .RS 4
-¾éĹ¥â¡¼¥É¤Ë¤·¤Þ¤¹¡£
+冗長モードã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£
+システム・プロパティを設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath \fIdir\fR
 .RS 4
-¥¯¥é¥¹¤ò¸¡º÷¤¹¤ë¤¿¤á¤Î¡¢¥³¥í¥ó¤Ç¶èÀڤäƻØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¡£
+クラスを検索ã™ã‚‹ãŸã‚ã®ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã€‚
 .RE
 .PP
 \-X\fIoption\fR
 .RS 4
-Èóɸ½à¥¿¡¼¥²¥Ã¥ÈJVM¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+éžæ¨™æº–ターゲットJVMオプションã§ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jdeps.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jdeps.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jdeps
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jdeps" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jdeps" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jdeps \- Java¥¯¥é¥¹°Í¸À­¥¢¥Ê¥é¥¤¥¶¡£
-.SH "³µÍ×"
+jdeps \- Javaクラスä¾å­˜æ€§ã‚¢ãƒŠãƒ©ã‚¤ã‚¶ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,99 +64,99 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclasses\fR
 .RS 4
-ʬÀϤ¹¤ë¥¯¥é¥¹¤Î̾Á°¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¸¡½Ð¤Ç¤­¤ë¥¯¥é¥¹¤ò¡¢¥Õ¥¡¥¤¥ë̾¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+分æžã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚クラス・パスã§æ¤œå‡ºã§ãるクラスをã€ãƒ•ã‚¡ã‚¤ãƒ«åã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯JARファイルã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjdeps\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥Ã¥±¡¼¥¸¥ì¥Ù¥ë¤Þ¤¿¤Ï¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸À­¤ò¼¨¤·¤Þ¤¹¡£ÆþÎÏ¥¯¥é¥¹¤Ë¤Ï¡¢\fI\&.class\fR¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òʬÀϤ¹¤ë¤¿¤á¤Î´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê½ÐÎϤ¬·èÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjdeps\fR¤Ï¥·¥¹¥Æ¥à½ÐÎϤ˰͸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£DOT¸À¸ì¤Ç°Í¸´Ø·¸¤òÀ¸À®¤Ç¤­¤Þ¤¹(\fI\-dotoutput\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È)¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjdeps\fRコマンドã¯ã€Javaクラス・ファイルã®ãƒ‘ッケージレベルã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜æ€§ã‚’示ã—ã¾ã™ã€‚入力クラスã«ã¯ã€\fI\&.class\fRファイルã®ãƒ‘スåã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルã€ã¾ãŸã¯ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’分æžã™ã‚‹ãŸã‚ã®å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åを指定ã§ãã¾ã™ã€‚オプションã«ã‚ˆã‚Šå‡ºåŠ›ãŒæ±ºå®šã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIjdeps\fRã¯ã‚·ã‚¹ãƒ†ãƒ å‡ºåŠ›ã«ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚DOT言語ã§ä¾å­˜é–¢ä¿‚を生æˆã§ãã¾ã™(\fI\-dotoutput\fRオプションをå‚ç…§)。
+.SH "オプション"
 .PP
 \-dotoutput <\fIdir\fR>
 .RS 4
-DOT¥Õ¥¡¥¤¥ë½ÐÎϤΰ¸Àè¥Ç¥£¥ì¥¯¥È¥ê¡£»ØÄꤷ¤¿¾ì¹ç¤Ï\fIjdeps\fR¤Ï<\fIarchive\-file\-name\fR>\&.dot¤È¤¤¤¦Ì¾Á°¤ÎʬÀϺѤߥ¢¡¼¥«¥¤¥Ö¤´¤È¤Ë°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ë1¤Ä¤Îdot¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¡¢¥¢¡¼¥«¥¤¥Ö´Ö¤Î°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ësummary\&.dot¤È¤¤¤¦Ì¾Á°¤Î¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤âÀ¸À®¤·¤Þ¤¹¡£
+DOTファイル出力ã®å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€‚指定ã—ãŸå ´åˆã¯\fIjdeps\fRã¯<\fIarchive\-file\-name\fR>\&.dotã¨ã„ã†åå‰ã®åˆ†æžæ¸ˆã¿ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã”ã¨ã«ä¾å­˜é–¢ä¿‚をリストã™ã‚‹1ã¤ã®dotファイルを生æˆã—ã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–é–“ã®ä¾å­˜é–¢ä¿‚をリストã™ã‚‹summary\&.dotã¨ã„ã†åå‰ã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-s, \-summary
 .RS 4
-°Í¸´Ø·¸¤Î¥µ¥Þ¥ê¡¼¤Î¤ß¤ò½ÐÎϤ·¤Þ¤¹¡£
+ä¾å­˜é–¢ä¿‚ã®ã‚µãƒžãƒªãƒ¼ã®ã¿ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v, \-verbose
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:package
 .RS 4
-Ʊ¤¸¥¢¡¼¥«¥¤¥ÖÆâ¤Î°Í¸´Ø·¸¤ò½ü¤­¡¢¥Ñ¥Ã¥±¡¼¥¸¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+åŒã˜ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ä¾å­˜é–¢ä¿‚を除ãã€ãƒ‘ッケージレベルã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:class
 .RS 4
-Ʊ¤¸¥¢¡¼¥«¥¤¥ÖÆâ¤Î°Í¸´Ø·¸¤ò½ü¤­¡¢¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+åŒã˜ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ä¾å­˜é–¢ä¿‚を除ãã€ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp <\fIpath\fR>, \-classpath <\fIpath\fR>
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡º÷¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルã®æ¤œç´¢å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .sp
-Setting the Class Path ¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Setting the Class Path ã‚‚å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-p <\fIpkg name\fR>, \-package <\fIpkg name\fR>
 .RS 4
-»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤ËÂФ·¤Æ¤³¤Î¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-p\fR¥ª¥×¥·¥ç¥ó¤È\fI\-e\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+指定ã—ãŸãƒ‘ッケージã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚ç•°ãªã‚‹ãƒ‘ッケージã«å¯¾ã—ã¦ã“ã®ã‚ªãƒ—ションを複数回指定ã§ãã¾ã™ã€‚\fI\-p\fRオプションã¨\fI\-e\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-e <\fIregex\fR>, \-regex <\fIregex\fR>
 .RS 4
-»ØÄꤷ¤¿Àµµ¬É½¸½¥Ñ¥¿¡¼¥ó¤È°ìÃפ¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£\fI\-p\fR¥ª¥×¥·¥ç¥ó¤È\fI\-e\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+指定ã—ãŸæ­£è¦è¡¨ç¾ãƒ‘ターンã¨ä¸€è‡´ã™ã‚‹ãƒ‘ッケージã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚\fI\-p\fRオプションã¨\fI\-e\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-include <\fIregex\fR>
 .RS 4
-ʬÀϤò¥Ñ¥¿¡¼¥ó¤Ë°ìÃפ¹¤ë¥¯¥é¥¹¤ËÀ©¸Â¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Ê¬ÀϤ¹¤ë¥¯¥é¥¹¤Î¥ê¥¹¥È¤ò¥Õ¥£¥ë¥¿¤·¤Þ¤¹¡£°Í¸´Ø·¸¤Ë¥Ñ¥¿¡¼¥ó¤òŬÍѤ¹¤ë\fI\-p\fR¤ª¤è¤Ó\fI\-e\fR¤È¤È¤â¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+分æžã‚’パターンã«ä¸€è‡´ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«åˆ¶é™ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€åˆ†æžã™ã‚‹ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‚’フィルタã—ã¾ã™ã€‚ä¾å­˜é–¢ä¿‚ã«ãƒ‘ターンをé©ç”¨ã™ã‚‹\fI\-p\fRãŠã‚ˆã³\fI\-e\fRã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-jdkinternals
 .RS 4
-JDK¤ÎÆâÉôAPI¤Î¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-include\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤«¤®¤ê¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤ÓÆþÎÏ¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤òʬÀϤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-p\fR¥ª¥×¥·¥ç¥ó¡¢\fI\-e\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-s\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£
+JDKã®å†…部APIã®ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fI\-include\fRオプションを指定ã—ãªã„ã‹ãŽã‚Šã€\fI\-classpath\fRオプションãŠã‚ˆã³å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã«æŒ‡å®šã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã‚’分æžã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-p\fRオプションã€\fI\-e\fRオプションãŠã‚ˆã³\fI\-s\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .sp
-\fB·Ù¹ð\fR: JDK¤ÎÆâÉôAPI¤Ï¡¢º£¸å¤Î¥ê¥ê¡¼¥¹¤Ç¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+\fB警告\fR: JDKã®å†…部APIã¯ã€ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-P, \-profile
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥×¥í¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤òɽ¼¨¤·¤Þ¤¹¡£
+パッケージをå«ã‚€ãƒ—ロファイルã¾ãŸã¯ãƒ•ã‚¡ã‚¤ãƒ«ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-apionly
 .RS 4
-¥Õ¥£¡¼¥ë¥É¡¦¥¿¥¤¥×¡¢¥á¥½¥Ã¥É¡¦¥Ñ¥é¥á¡¼¥¿¡¦¥¿¥¤¥×¡¢Ìá¤ê¥¿¥¤¥×¡¢¥Á¥§¥Ã¥¯¤µ¤ì¤¿Îã³°¥¿¥¤¥×¤ò´Þ¤à¥Ñ¥Ö¥ê¥Ã¥¯¡¦¥¯¥é¥¹¤Î\fIpublic\fR¤ª¤è¤Ó\fIprotected\fR¥á¥ó¥Ð¡¼¤Î½ð̾¤«¤é¤Î°Í¸´Ø·¸¤Ê¤É¡¢Ê¬ÀϤòAPI¤ËÀ©¸Â¤·¤Þ¤¹¡£
+フィールド・タイプã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ãƒ‘ラメータ・タイプã€æˆ»ã‚Šã‚¿ã‚¤ãƒ—ã€ãƒã‚§ãƒƒã‚¯ã•ã‚ŒãŸä¾‹å¤–タイプをå«ã‚€ãƒ‘ブリック・クラスã®\fIpublic\fRãŠã‚ˆã³\fIprotected\fRメンãƒãƒ¼ã®ç½²åã‹ã‚‰ã®ä¾å­˜é–¢ä¿‚ãªã©ã€åˆ†æžã‚’APIã«åˆ¶é™ã—ã¾ã™ã€‚
 .RE
 .PP
 \-R, \-recursive
 .RS 4
-¤¹¤Ù¤Æ¤Î°Í¸´Ø·¸¤òºÆµ¢Åª¤ËÁöºº¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ä¾å­˜é–¢ä¿‚ã‚’å†å¸°çš„ã«èµ°æŸ»ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-?, \-help
 .RS 4
-\fIjdeps\fR¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjdeps\fRã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-Notepad\&.jar¤Î°Í¸´Ø·¸¤ÎʬÀÏ¡£
+Notepad\&.jarã®ä¾å­˜é–¢ä¿‚ã®åˆ†æžã€‚
 .sp
 .if n \{\
 .RS 4
@@ -185,7 +185,7 @@
 .RE
 .\}
 .PP
-\-P¤Þ¤¿¤Ï\-profile¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥á¥âÄ¢¤¬°Í¸¤¹¤ë¥×¥í¥Õ¥¡¥¤¥ë¤òɽ¼¨¤·¤Þ¤¹¡£
+\-Pã¾ãŸã¯\-profileオプションを使用ã—ã¦ã€ãƒ¡ãƒ¢å¸³ãŒä¾å­˜ã™ã‚‹ãƒ—ロファイルを表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -213,7 +213,7 @@
 .RE
 .\}
 .PP
-tools\&.jar¥Õ¥¡¥¤¥ëÆâ¤Î\fIcom\&.sun\&.tools\&.jdeps\&.Main\fR¥¯¥é¥¹¤Ê¤É¡¢ÆÃÄê¤Î¥¯¥é¥¹¥Ñ¥¹Æâ¤ÎÆÃÄê¤Î¥¯¥é¥¹¤ÎľÀܰ͸´Ø·¸¤ÎʬÀÏ¡£
+tools\&.jarファイル内ã®\fIcom\&.sun\&.tools\&.jdeps\&.Main\fRクラスãªã©ã€ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ãƒ‘ス内ã®ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã®ç›´æŽ¥ä¾å­˜é–¢ä¿‚ã®åˆ†æžã€‚
 .sp
 .if n \{\
 .RS 4
@@ -229,7 +229,7 @@
 .RE
 .\}
 .PP
-\fI\-verbose:class\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¹¥ì¥Ù¥ë°Í¸´Ø·¸¤ò¸¡º÷¤¹¤ë¤«\fI\-v\fR¤Þ¤¿¤Ï\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆƱ¤¸JAR¥Õ¥¡¥¤¥ë¤«¤é¤Î°Í¸´Ø·¸¤ò´Þ¤á¤Þ¤¹¡£
+\fI\-verbose:class\fRオプションを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ä¾å­˜é–¢ä¿‚を検索ã™ã‚‹ã‹\fI\-v\fRã¾ãŸã¯\fI\-verbose\fRオプションを使用ã—ã¦åŒã˜JARファイルã‹ã‚‰ã®ä¾å­˜é–¢ä¿‚ã‚’å«ã‚ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -249,7 +249,7 @@
 .RE
 .\}
 .PP
-\fI\-R\fR¤Þ¤¿¤Ï\fI\-recursive\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIcom\&.sun\&.tools\&.jdeps\&.Main\fR¥¯¥é¥¹¤Î¿ä°ÜŪ¤Ê°Í¸´Ø·¸¤òʬÀϤ·¤Þ¤¹¡£
+\fI\-R\fRã¾ãŸã¯\fI\-recursive\fRオプションを使用ã—ã¦ã€\fIcom\&.sun\&.tools\&.jdeps\&.Main\fRクラスã®æŽ¨ç§»çš„ãªä¾å­˜é–¢ä¿‚を分æžã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -305,7 +305,7 @@
 .RE
 .\}
 .PP
-¥á¥âÄ¢¥Ç¥â¤Î°Í¸´Ø·¸¤Îdot¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+メモ帳デモã®ä¾å­˜é–¢ä¿‚ã®dotファイルを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -317,7 +317,7 @@
 .RE
 .\}
 .PP
-\fIjdeps\fR¤Ï¡¢\fI\-dotoutput\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿dot¥Ç¥£¥ì¥¯¥È¥ê¤Ë<\fIfilename\fR>\&.dot¤È¤¤¤¦Ì¾Á°¤Îdot¥Õ¥¡¥¤¥ë¤òÆÃÄê¤ÎJAR¥Õ¥¡¥¤¥ë¤´¤È¤ËºîÀ®¤·¡¢JAR¥Õ¥¡¥¤¥ë´Ö¤Î°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ësummary\&.dot¤È¤¤¤¦Ì¾Á°¤Î¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤âºîÀ®¤·¤Þ¤¹
+\fIjdeps\fRã¯ã€\fI\-dotoutput\fRオプションã§æŒ‡å®šã•ã‚ŒãŸdotディレクトリã«<\fIfilename\fR>\&.dotã¨ã„ã†åå‰ã®dotファイルを特定ã®JARファイルã”ã¨ã«ä½œæˆã—ã€JARファイル間ã®ä¾å­˜é–¢ä¿‚をリストã™ã‚‹summary\&.dotã¨ã„ã†åå‰ã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚作æˆã—ã¾ã™
 .sp
 .if n \{\
 .RS 4
@@ -350,7 +350,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jhat.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jhat.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jhat
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jhat" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jhat" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jhat \- Java¥Ò¡¼¥×¤òʬÀϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jhat \- Javaヒープを分æžã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,18 +64,18 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIheap\-dump\-file\fR
 .RS 4
-¥Ö¥é¥¦¥ºÂоݤȤʤëJava¥Ð¥¤¥Ê¥ê¡¦¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¡£Ê£¿ô¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò´Þ¤à¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¡¢\fImyfile\&.hprof#3\fR¤Î¤è¤¦¤Ë¥Õ¥¡¥¤¥ë̾¤Î¸å¤Ë\fI#<number>\fR¤òÉղ乤뤳¤È¤Ç¡¢¥Õ¥¡¥¤¥ëÆâ¤ÎÆÃÄê¤Î¥À¥ó¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ブラウズ対象ã¨ãªã‚‹Javaãƒã‚¤ãƒŠãƒªãƒ»ãƒ’ープ・ダンプ・ファイル。複数ã®ãƒ’ープ・ダンプをå«ã‚€ãƒ€ãƒ³ãƒ—・ファイルã®å ´åˆã€\fImyfile\&.hprof#3\fRã®ã‚ˆã†ã«ãƒ•ã‚¡ã‚¤ãƒ«åã®å¾Œã«\fI#<number>\fRを付加ã™ã‚‹ã“ã¨ã§ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ç‰¹å®šã®ãƒ€ãƒ³ãƒ—を指定ã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjhat\fR¥³¥Þ¥ó¥É¤ÏJava¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤ò²òÀϤ·¡¢Web¥µ¡¼¥Ð¡¼¤ò³«»Ï¤·¤Þ¤¹¡£\fIjhat\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¤ªµ¤¤ËÆþ¤ê¤Î¥Ö¥é¥¦¥¶¤Ç¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»²¾È¤Ç¤­¤Þ¤¹¡£\fIjhat\fR¥³¥Þ¥ó¥É¤Ï¡¢´ûÃΤΥ¯¥é¥¹\fIMyClass\fR¤Î¤¹¤Ù¤Æ¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òɽ¼¨¤¹¤ë¤Ê¤É¤Î»öÁ°À߷׺ѤÎÌä¹ç¤»¤äObject Query Language (OQL)¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×¤ÎÌä¹ç¤»¤ò½ü¤­¡¢OQL¤ÏSQL¤Ë»÷¤Æ¤¤¤Þ¤¹¡£OQL¤Î¥Ø¥ë¥×¤Ë¤Ï¡¢\fIjhat\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æɽ¼¨¤µ¤ì¤ëOQL¥Ø¥ë¥×¡¦¥Ú¡¼¥¸¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢OQL¤Î¥Ø¥ë¥×¤Ïhttp://localhost:7000/oqlhelp/¤ÇÍøÍѲÄǽ¤Ç¤¹¡£
+\fIjhat\fRコマンドã¯Javaヒープ・ダンプ・ファイルを解æžã—ã€Webサーãƒãƒ¼ã‚’開始ã—ã¾ã™ã€‚\fIjhat\fRコマンドを使用ã—ã¦ã€ãŠæ°—ã«å…¥ã‚Šã®ãƒ–ラウザã§ãƒ’ープ・ダンプをå‚ç…§ã§ãã¾ã™ã€‚\fIjhat\fRコマンドã¯ã€æ—¢çŸ¥ã®ã‚¯ãƒ©ã‚¹\fIMyClass\fRã®ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’表示ã™ã‚‹ãªã©ã®äº‹å‰è¨­è¨ˆæ¸ˆã®å•åˆã›ã‚„Object Query Language (OQL)をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ヒープ・ダンプã®å•åˆã›ã‚’除ãã€OQLã¯SQLã«ä¼¼ã¦ã„ã¾ã™ã€‚OQLã®ãƒ˜ãƒ«ãƒ—ã«ã¯ã€\fIjhat\fRコマンドã«ã‚ˆã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹OQLヘルプ・ページã‹ã‚‰ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚デフォルト・ãƒãƒ¼ãƒˆã‚’使用ã™ã‚‹å ´åˆã€OQLã®ãƒ˜ãƒ«ãƒ—ã¯http://localhost:7000/oqlhelp/ã§åˆ©ç”¨å¯èƒ½ã§ã™ã€‚
 .PP
-Java¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤¤¤¯¤Ä¤«¤ÎÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+Javaã®ãƒ’ープ・ダンプを生æˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã„ãã¤ã‹ã®æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -85,7 +85,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjmap \-dump\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¼Â¹Ô»þ¤Ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò¼èÆÀ¤·¤Þ¤¹¡£jmap(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjmap \-dump\fRオプションを使用ã—ã¦å®Ÿè¡Œæ™‚ã«ãƒ’ープ・ダンプをå–å¾—ã—ã¾ã™ã€‚jmap(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -96,8 +96,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjconsole\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ\fIHotSpotDiagnosticMXBean\fR·Ðͳ¤Ç¼Â¹Ô»þ¤Ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò¼èÆÀ¤·¤Þ¤¹¡£jconsole(1)¤ª¤è¤Ó\fIHotSpotDiagnosticMXBean\fR¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÀâÌÀ(
-http://docs\&.oracle\&.com/javase/8/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjconsole\fRオプションを使用ã—ã¦\fIHotSpotDiagnosticMXBean\fR経由ã§å®Ÿè¡Œæ™‚ã«ãƒ’ープ・ダンプをå–å¾—ã—ã¾ã™ã€‚jconsole(1)ãŠã‚ˆã³\fIHotSpotDiagnosticMXBean\fRã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®èª¬æ˜Ž(
+http://docs\&.oracle\&.com/javase/8/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -108,8 +108,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ò¡¼¥×¡¦¥À¥ó¥×¤Ï¡¢\fI\-XX:+HeapDumpOnOutOfMemoryError\fR
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢\fIOutOfMemoryError\fR¤¬¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£
+ヒープ・ダンプã¯ã€\fI\-XX:+HeapDumpOnOutOfMemoryError\fR
+Java仮想マシン(JVM)オプションを指定ã™ã‚‹ã“ã¨ã§ã€\fIOutOfMemoryError\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«ç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -120,61 +120,61 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIhprof\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£HPROF: Heap/CPU¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIhprof\fRコマンドを使用ã—ã¾ã™ã€‚HPROF: Heap/CPUプロファイリング・ツール
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-stack false|true
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È³äÅö¸Æ½Ð¤·¥¹¥¿¥Ã¥¯¤ÎÄÉÀפò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×Æâ¤Ç³äÅö¥µ¥¤¥È¾ðÊ󤬻ÈÍѤǤ­¤Ê¤¤¾ì¹ç¡¢¤³¤Î¥Õ¥é¥°¤ò\fIfalse\fR¤ËÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fItrue\fR¤Ç¤¹¡£
+オブジェクト割当呼出ã—スタックã®è¿½è·¡ã‚’無効ã«ã—ã¾ã™ã€‚ヒープ・ダンプ内ã§å‰²å½“サイト情報ãŒä½¿ç”¨ã§ããªã„å ´åˆã€ã“ã®ãƒ•ãƒ©ã‚°ã‚’\fIfalse\fRã«è¨­å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚デフォルトã¯\fItrue\fRã§ã™ã€‚
 .RE
 .PP
 \-refs false|true
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤ÎÄÉÀפò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fItrue\fR¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ò¡¼¥×Æâ¤Î¤¹¤Ù¤Æ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¡¢¥Ð¥Ã¥¯¥Ý¥¤¥ó¥¿(»ØÄꤵ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ò¥Ý¥¤¥ó¥È¤·¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¡£»²¾È¼Ô¤Þ¤¿¤Ï¼õ¿®»²¾È¤È¤â¸Æ¤Ð¤ì¤ë)¤¬·×»»¤µ¤ì¤Þ¤¹¡£
+オブジェクトã¸ã®å‚ç…§ã®è¿½è·¡ã‚’無効ã«ã—ã¾ã™ã€‚デフォルトã¯\fItrue\fRã§ã™ã€‚デフォルトã§ã¯ã€ãƒ’ープ内ã®ã™ã¹ã¦ã®ã‚ªãƒ–ジェクトã«ã¤ã„ã¦ã€ãƒãƒƒã‚¯ãƒã‚¤ãƒ³ã‚¿(指定ã•ã‚ŒãŸã‚ªãƒ–ジェクトをãƒã‚¤ãƒ³ãƒˆã—ã¦ã„るオブジェクト。å‚照者ã¾ãŸã¯å—ä¿¡å‚ç…§ã¨ã‚‚呼ã°ã‚Œã‚‹)ãŒè¨ˆç®—ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-port \fIport\-number\fR
 .RS 4
-\fIjhat\fR¤ÎHTTP¥µ¡¼¥Ð¡¼¤Î¥Ý¡¼¥È¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï7000¤Ç¤¹¡£
+\fIjhat\fRã®HTTPサーãƒãƒ¼ã®ãƒãƒ¼ãƒˆã‚’設定ã—ã¾ã™ã€‚デフォルトã¯7000ã§ã™ã€‚
 .RE
 .PP
 \-exclude \fIexclude\-file\fR
 .RS 4
-Åþã²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ÎÌä¹ç¤»¤«¤é½ü³°¤¹¤ëɬÍפ¬¤¢¤ë¥Ç¡¼¥¿¡¦¥á¥ó¥Ð¡¼¤Î°ìÍ÷¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ë\fIjava\&.lang\&.String\&.value\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢ÆÃÄê¤Î¥ª¥Ö¥¸¥§¥¯¥È\fIo\fR¤«¤éÅþã²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ê¥¹¥È¤ò·×»»¤¹¤ëºÝ¤Ë¡¢\fIjava\&.lang\&.String\&.value\fR¥Õ¥£¡¼¥ë¥É¤Ë´ØÏ¢¤¹¤ë»²¾È¥Ñ¥¹¤¬¹Í褵¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
+到é”å¯èƒ½ãªã‚ªãƒ–ジェクトã®å•åˆã›ã‹ã‚‰é™¤å¤–ã™ã‚‹å¿…è¦ãŒã‚るデータ・メンãƒãƒ¼ã®ä¸€è¦§ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«\fIjava\&.lang\&.String\&.value\fRãŒå«ã¾ã‚Œã¦ã„ãŸå ´åˆã€ç‰¹å®šã®ã‚ªãƒ–ジェクト\fIo\fRã‹ã‚‰åˆ°é”å¯èƒ½ãªã‚ªãƒ–ジェクトã®ãƒªã‚¹ãƒˆã‚’計算ã™ã‚‹éš›ã«ã€\fIjava\&.lang\&.String\&.value\fRフィールドã«é–¢é€£ã™ã‚‹å‚照パスãŒè€ƒæ…®ã•ã‚Œãªããªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-baseline \fIexclude\-file\fR
 .RS 4
-¥Ù¡¼¥¹¥é¥¤¥ó¤È¤Ê¤ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»ØÄꤷ¤Þ¤¹¡£Î¾Êý¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×Æâ¤ÇƱ¤¸¥ª¥Ö¥¸¥§¥¯¥ÈID¤ò»ý¤Ä¥ª¥Ö¥¸¥§¥¯¥È¤Ï¿·µ¬¤Ç¤Ï¤Ê¤¤¤È¤·¤Æ¥Þ¡¼¥¯¤µ¤ì¤Þ¤¹¡£Â¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï¿·µ¬¤È¤·¤Æ¥Þ¡¼¥¯¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢°Û¤Ê¤ë2¤Ä¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤òÈæ³Ó¤¹¤ëºÝ¤ËÌòΩ¤Á¤Þ¤¹¡£
+ベースラインã¨ãªã‚‹ãƒ’ープ・ダンプを指定ã—ã¾ã™ã€‚両方ã®ãƒ’ープ・ダンプ内ã§åŒã˜ã‚ªãƒ–ジェクトIDã‚’æŒã¤ã‚ªãƒ–ジェクトã¯æ–°è¦ã§ã¯ãªã„ã¨ã—ã¦ãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã™ã€‚ä»–ã®ã‚ªãƒ–ジェクトã¯æ–°è¦ã¨ã—ã¦ãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ç•°ãªã‚‹2ã¤ã®ãƒ’ープ・ダンプを比較ã™ã‚‹éš›ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
 .PP
 \-debug \fIint\fR
 .RS 4
-¤³¤Î¥Ä¡¼¥ë¤Î¥Ç¥Ð¥Ã¥°¡¦¥ì¥Ù¥ë¤òÀßÄꤷ¤Þ¤¹¡£¥ì¥Ù¥ë0¤Ï¥Ç¥Ð¥Ã¥°½ÐÎϤ¬¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤è¤êÂ礭¤ÊÃͤòÀßÄꤹ¤ë¤È¡¢¤è¤ê¾éĹ¤Ê¥â¡¼¥É¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ãƒ„ールã®ãƒ‡ãƒãƒƒã‚°ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’設定ã—ã¾ã™ã€‚レベル0ã¯ãƒ‡ãƒãƒƒã‚°å‡ºåŠ›ãŒãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚より大ããªå€¤ã‚’設定ã™ã‚‹ã¨ã€ã‚ˆã‚Šå†—é•·ãªãƒ¢ãƒ¼ãƒ‰ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò¥ì¥Ý¡¼¥È¤·¤Æ½ªÎ»¤·¤Þ¤¹
+リリース番å·ã‚’レãƒãƒ¼ãƒˆã—ã¦çµ‚了ã—ã¾ã™
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjhat\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢512M¥Ð¥¤¥È¤ÎºÇÂç¥Ò¡¼¥×¡¦¥µ¥¤¥º¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fI\-J\-Xmx512m\fR¤È¤·¤Þ¤¹¡£
+\fIjhat\fRコマンドを実行ã—ã¦ã„ã‚‹Java仮想マシンã«\fIflag\fRを渡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€512Mãƒã‚¤ãƒˆã®æœ€å¤§ãƒ’ープ・サイズを使用ã™ã‚‹ã«ã¯ã€\fI\-J\-Xmx512m\fRã¨ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -206,7 +206,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-HPROF: Heap/CPU¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+HPROF: Heap/CPUプロファイリング・ツール
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/jinfo.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jinfo.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jinfo
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jinfo" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jinfo" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jinfo \- ¹½À®¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jinfo \- 構æˆæƒ…報を生æˆã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -82,83 +82,83 @@
 .RE
 .\}
 .PP
-\fI¥ª¥×¥·¥ç¥ó\fR
+\fIオプション\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-¹½À®¾ðÊ󤬽ÐÎϤµ¤ì¤ë¥×¥í¥»¥¹ID¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+構æˆæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ãƒ—ロセスID。プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-¹½À®¾ðÊ󤬽ÐÎϤµ¤ì¤ë¥³¥¢¡¦¥Õ¥¡¥¤¥ë¡£
+構æˆæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjinfo\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ÎJava¹½À®¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£¹½À®¾ðÊó¤Ë¤Ï¡¢Java¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ÈJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJVM¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjinfo\fR
-\fI\-J\-d64 \-sysprops pid\fR¡£
+\fIjinfo\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸJavaプロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®Java構æˆæƒ…報を出力ã—ã¾ã™ã€‚構æˆæƒ…å ±ã«ã¯ã€Javaシステム・プロパティã¨Java仮想マシン(JVM)ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJVM上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjinfo\fR
+\fI\-J\-d64 \-sysprops pid\fR。
 .PP
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR¤Ç¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fRã§ã™ã€‚
+.SH "オプション"
 .PP
 no\-option
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò¡¢¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£Ì¾¤ÈÃͤΥڥ¢¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£
+コマンドライン・フラグをã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティåã¨å€¤ã®ãƒšã‚¢ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fIname\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤Î̾Á°¤ÈÃͤò½ÐÎϤ·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã®åå‰ã¨å€¤ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fI[+|\-]name\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ö¡¼¥ë·¿¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤òÍ­¸ú¤Þ¤¿¤Ï̵¸ú¤Ë¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ–ール型ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’有効ã¾ãŸã¯ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fIname=value\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò»ØÄꤵ¤ì¤¿ÃͤËÀßÄꤷ¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’指定ã•ã‚ŒãŸå€¤ã«è¨­å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-flags
 .RS 4
-JVM¤ËÅϤµ¤ì¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò½ÐÎϤ·¤Þ¤¹¡£
+JVMã«æ¸¡ã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sysprops
 .RS 4
-Java¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ò̾Á°¤ÈÃͤΥڥ¢¤È¤·¤Æ½ÐÎϤ·¤Þ¤¹¡£
+Javaシステム・プロパティをåå‰ã¨å€¤ã®ãƒšã‚¢ã¨ã—ã¦å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jjs.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jjs.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jjs
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jjs" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jjs" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jjs \- Nashorn¥¨¥ó¥¸¥ó¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jjs \- Nashornエンジンを呼ã³å‡ºã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,28 +64,28 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤¿¡¢\fIjjs\fR¥³¥Þ¥ó¥É¤Î1¤Ä°Ê¾å¤Î¥ª¥×¥·¥ç¥ó¡£¾ÜºÙ¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白文字ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã€\fIjjs\fRコマンドã®1ã¤ä»¥ä¸Šã®ã‚ªãƒ—ション。詳細ã¯ã€ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIscript\-files\fR
 .RS 4
-¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤¿¡¢Nashorn¤ò»ÈÍѤ·¤Æ²ò¼á¤¹¤ë1¤Ä°Ê¾å¤Î¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Ê¤¤¾ì¹ç¤Ï¡¢ÂÐÏ÷¿¥·¥§¥ë¤¬µ¯Æ°¤µ¤ì¤Þ¤¹¡£
+空白文字ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã€Nashornを使用ã—ã¦è§£é‡ˆã™ã‚‹1ã¤ä»¥ä¸Šã®ã‚¹ã‚¯ãƒªãƒ—ト・ファイル。ファイルãŒæŒ‡å®šã•ã‚Œãªã„å ´åˆã¯ã€å¯¾è©±åž‹ã‚·ã‚§ãƒ«ãŒèµ·å‹•ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-Æó½Å¥Ï¥¤¥Õ¥ó¡¦¥Þ¡¼¥«¡¼(\fI\-\-\fR)¤Î¸å¤Î¤¹¤Ù¤Æ¤ÎÃͤ¬¡¢°ú¿ô¤È¤·¤Æ¥¹¥¯¥ê¥×¥È¤Þ¤¿¤ÏÂÐÏ÷¿¥·¥§¥ë¤ËÅϤµ¤ì¤Þ¤¹¡£¤³¤ì¤é¤ÎÃͤˤÏ\fIarguments\fR¥×¥í¥Ñ¥Æ¥£¤ò»ÈÍѤ·¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹(Example 3¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£
+二é‡ãƒã‚¤ãƒ•ãƒ³ãƒ»ãƒžãƒ¼ã‚«ãƒ¼(\fI\-\-\fR)ã®å¾Œã®ã™ã¹ã¦ã®å€¤ãŒã€å¼•æ•°ã¨ã—ã¦ã‚¹ã‚¯ãƒªãƒ—トã¾ãŸã¯å¯¾è©±åž‹ã‚·ã‚§ãƒ«ã«æ¸¡ã•ã‚Œã¾ã™ã€‚ã“れらã®å€¤ã«ã¯\fIarguments\fRプロパティを使用ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™(Example 3ã‚’å‚ç…§ã—ã¦ãã ã•ã„)。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjjs\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤ò»ÈÍѤ·¤ÆNashorn¥¨¥ó¥¸¥ó¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ·¤Æ¡¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤ò²ò¼á¤·¤¿¤ê¡¢ÂÐÏ÷¿¥·¥§¥ë¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjjs\fRコマンドライン・ツールを使用ã—ã¦Nashornエンジンを呼ã³å‡ºã—ã¾ã™ã€‚ã“れを使用ã—ã¦ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¹ã‚¯ãƒªãƒ—ト・ファイルを解釈ã—ãŸã‚Šã€å¯¾è©±åž‹ã‚·ã‚§ãƒ«ã‚’実行ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjjs\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤Ï¥¹¥¯¥ê¥×¥È¤¬Nashorn¤Ë¤è¤Ã¤Æ²ò¼á¤µ¤ì¤ë¾ò·ï¤òÀ©¸æ¤·¤Þ¤¹¡£
+\fIjjs\fRコマンドã®ã‚ªãƒ—ションã¯ã‚¹ã‚¯ãƒªãƒ—トãŒNashornã«ã‚ˆã£ã¦è§£é‡ˆã•ã‚Œã‚‹æ¡ä»¶ã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-ccs=\fIsize\fR, \-\-class\-cache\-size=\fIsize\fR
 .RS 4
-¥¯¥é¥¹¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤ò¥Ð¥¤¥Èñ°Ì¤ÇÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È(KB)¤ò¼¨¤¹¤¿¤á¤Ë\fIk\fR¤Þ¤¿¤Ï\fIK\fR¤Îʸ»ú¤òÄɲä·¡¢¥á¥¬¥Ð¥¤¥È(MB)¤ò¼¨¤¹¤¿¤á¤Ë\fIm\fR¤Þ¤¿¤Ï\fIM\fR¤Îʸ»ú¤òÄɲä·¡¢¥®¥¬¥Ð¥¤¥È(GB)¤ò¼¨¤¹¤¿¤á¤Ë\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤Ï50¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢1024¥Ð¥¤¥È(1 KB)¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+クラス・キャッシュ・サイズをãƒã‚¤ãƒˆå˜ä½ã§è¨­å®šã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆ(KB)を示ã™ãŸã‚ã«\fIk\fRã¾ãŸã¯\fIK\fRã®æ–‡å­—を追加ã—ã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆ(MB)を示ã™ãŸã‚ã«\fIm\fRã¾ãŸã¯\fIM\fRã®æ–‡å­—を追加ã—ã€ã‚®ã‚¬ãƒã‚¤ãƒˆ(GB)を示ã™ãŸã‚ã«\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚ºã¯50ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¾ã™ã€‚次ã®ä¾‹ã¯ã€1024ãƒã‚¤ãƒˆ(1 KB)ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -101,17 +101,17 @@
 .PP
 \-co, \-\-compile\-only
 .RS 4
-¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤»¤º¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+スクリプトを実行ã›ãšã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR, \-\-classpath \fIpath\fR
 .RS 4
-¥µ¥Ý¡¼¥È¤¹¤ë¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£Ê£¿ô¤Î¥Ñ¥¹¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤¹¤«¡¢¤Þ¤¿¤Ï³Æ¥Ñ¥¹¤ò¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
+サãƒãƒ¼ãƒˆã™ã‚‹ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚複数ã®ãƒ‘スを設定ã™ã‚‹ã«ã¯ã€ã“ã®ã‚ªãƒ—ションを繰り返ã™ã‹ã€ã¾ãŸã¯å„パスをコロン(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-¥×¥í¥Ñ¥Æ¥£Ì¾¤ËÃͤò³ä¤êÅö¤Æ¤ë¤³¤È¤Ç¡¢¥¹¥¯¥ê¥×¥È¤ËÅϤ¹¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¡¢ÂÐÏ÷¿¥â¡¼¥É¤ÇNashorn¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢\fImyValue\fR¤ò\fImyKey\fR¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥Ñ¥Æ¥£¤Ë³ä¤êÅö¤Æ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+プロパティåã«å€¤ã‚’割り当ã¦ã‚‹ã“ã¨ã§ã€ã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã™ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティを設定ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ã§Nashornを呼ã³å‡ºã—ã¦ã€\fImyValue\fRã‚’\fImyKey\fRã¨ã„ã†åå‰ã®ãƒ—ロパティã«å‰²ã‚Šå½“ã¦ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -125,67 +125,67 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤·»ÈÍѤ¹¤ë¤È¡¢Ê£¿ô¤Î¥×¥í¥Ñ¥Æ¥£¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを繰り返ã—使用ã™ã‚‹ã¨ã€è¤‡æ•°ã®ãƒ—ロパティを設定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-d=\fIpath\fR, \-\-dump\-debug\-dir=\fIpath\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥À¥ó¥×¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルをダンプã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-debug\-lines
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¹ÔÈÖ¹æɽ¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-debug\-lines=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイル内ã®è¡Œç•ªå·è¡¨ã‚’生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-debug\-lines=false\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-debug\-locals
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥í¡¼¥«¥ëÊÑ¿ô¤òÀ¸À®¤·¤Þ¤¹¡£
+クラス・ファイル内ã®ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-doe, \-\-dump\-on\-error
 .RS 4
-¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤È¤­¤Ë¡¢¥Õ¥ë¡¦¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢´Êñ¤Ê¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤Î¤ß¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+エラーãŒç™ºç”Ÿã—ãŸã¨ãã«ã€ãƒ•ãƒ«ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ç°¡å˜ãªã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ã¿ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-early\-lvalue\-error
 .RS 4
-̵¸ú¤Êº¸ÊÕÃͼ°¤¬Áá´ü¥¨¥é¡¼¤È¤·¤Æ(¤Ä¤Þ¤ê¡¢¥³¡¼¥É¤¬²òÀϤµ¤ì¤ë¤È¤­¤Ë)Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-early\-lvalue\-error=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£Ìµ¸ú¤Ê¾ì¹ç¡¢Ìµ¸ú¤Êº¸ÊÕÃͼ°¤Ï¥³¡¼¥É¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤ÇÊó¹ð¤µ¤ì¤Þ¤»¤ó¡£
+無効ãªå·¦è¾ºå€¤å¼ãŒæ—©æœŸã‚¨ãƒ©ãƒ¼ã¨ã—ã¦(ã¤ã¾ã‚Šã€ã‚³ãƒ¼ãƒ‰ãŒè§£æžã•ã‚Œã‚‹ã¨ãã«)報告ã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-early\-lvalue\-error=false\fRを指定ã—ã¾ã™ã€‚無効ãªå ´åˆã€ç„¡åŠ¹ãªå·¦è¾ºå€¤å¼ã¯ã‚³ãƒ¼ãƒ‰ãŒå®Ÿè¡Œã•ã‚Œã‚‹ã¾ã§å ±å‘Šã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-\-empty\-statements
 .RS 4
-¶õ¤Îʸ¤òJava¤ÎÃê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ËÊݸ¤·¤Þ¤¹¡£
+空ã®æ–‡ã‚’Javaã®æŠ½è±¡æ§‹æ–‡ãƒ„リーã«ä¿å­˜ã—ã¾ã™ã€‚
 .RE
 .PP
 \-fv, \-\-fullversion
 .RS 4
-´°Á´¤ÊNashorn¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò½ÐÎϤ·¤Þ¤¹¡£
+完全ãªNashornãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-function\-statement\-error
 .RS 4
-´Ø¿ô¤ÎÀë¸À¤¬Ê¸¤È¤·¤Æ»ÈÍѤµ¤ì¤ë¤È¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+関数ã®å®£è¨€ãŒæ–‡ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ã¨ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-function\-statement\-warning
 .RS 4
-´Ø¿ô¤ÎÀë¸À¤¬Ê¸¤È¤·¤Æ»ÈÍѤµ¤ì¤ë¤È·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+関数ã®å®£è¨€ãŒæ–‡ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ã¨è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-fx
 .RS 4
-¥¹¥¯¥ê¥×¥È¤òJavaFX¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤·¤Æµ¯Æ°¤·¤Þ¤¹¡£
+スクリプトをJavaFXアプリケーションã¨ã—ã¦èµ·å‹•ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-help
 .RS 4
-¥ª¥×¥·¥ç¥ó¤Î¥ê¥¹¥È¤È¤½¤ÎÀâÌÀ¤ò½ÐÎϤ·¤Þ¤¹¡£
+オプションã®ãƒªã‚¹ãƒˆã¨ãã®èª¬æ˜Žã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤷ¤¿\fIjava\fRµ¯Æ°¥ª¥×¥·¥ç¥ó¤òJVM¤ËÅϤ·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¡¢ÂÐÏ÷¿¥â¡¼¥É¤ÇNashorn¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢JVM¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëºÇÂç¥á¥â¥ê¡¼¤ò4 GB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+指定ã—ãŸ\fIjava\fR起動オプションをJVMã«æ¸¡ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ã§Nashornを呼ã³å‡ºã—ã¦ã€JVMã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹æœ€å¤§ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’4 GBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -199,22 +199,22 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤·»ÈÍѤ¹¤ë¤È¡¢Ê£¿ô¤Î\fIjava\fR¥³¥Þ¥ó¥É¡¦¥ª¥×¥·¥ç¥ó¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを繰り返ã—使用ã™ã‚‹ã¨ã€è¤‡æ•°ã®\fIjava\fRコマンド・オプションを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-\-lazy\-compilation
 .RS 4
-¥ì¥¤¥¸¡¼¡¦¥³¡¼¥ÉÀ¸À®Àïά(¤Ä¤Þ¤ê¡¢¥¹¥¯¥ê¥×¥ÈÁ´ÂΤ¬°ìÅ٤˥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Ê¤¤)¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¤¹¡£
+レイジー・コード生æˆæˆ¦ç•¥(ã¤ã¾ã‚Šã€ã‚¹ã‚¯ãƒªãƒ—ト全体ãŒä¸€åº¦ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œãªã„)を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã™ã€‚
 .RE
 .PP
 \-\-loader\-per\-compile
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë¿·¤·¤¤¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤òºîÀ®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-loader\-per\-compile=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+コンパイルã”ã¨ã«æ–°ã—ã„クラス・ローダーを作æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-loader\-per\-compile=false\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-log=\fIsubsystem\fR:\fIlevel\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥µ¥Ö¥·¥¹¥Æ¥à¤ËÂФ·¤Æ¡¢ÆÃÄê¤Î¥ì¥Ù¥ë¤Ç¥í¥®¥ó¥°¤ò¼Â¹Ô¤·¤Þ¤¹¡£¥«¥ó¥Þ¤Ç¶èÀڤäÆÊ£¿ô¤Î¥µ¥Ö¥·¥¹¥Æ¥à¤Î¥í¥®¥ó¥°¡¦¥ì¥Ù¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚µãƒ–システムã«å¯¾ã—ã¦ã€ç‰¹å®šã®ãƒ¬ãƒ™ãƒ«ã§ãƒ­ã‚®ãƒ³ã‚°ã‚’実行ã—ã¾ã™ã€‚カンマã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ã‚µãƒ–システムã®ãƒ­ã‚®ãƒ³ã‚°ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’指定ã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -229,116 +229,116 @@
 .PP
 \-\-package=\fIname\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÄɲ乤ë¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’追加ã™ã‚‹ãƒ‘ッケージを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-parse\-only
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤»¤º¤Ë¥³¡¼¥É¤ò²òÀϤ·¤Þ¤¹¡£
+コンパイルã›ãšã«ã‚³ãƒ¼ãƒ‰ã‚’解æžã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-ast
 .RS 4
-Ãê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+抽象構文ツリーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-code
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-lower\-ast
 .RS 4
-·¡¤ê²¼¤²¤¿Ãê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+掘り下ã’ãŸæŠ½è±¡æ§‹æ–‡ãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-lower\-parse
 .RS 4
-·¡¤ê²¼¤²¤¿²òÀϥĥ꡼¤ò½ÐÎϤ·¤Þ¤¹¡£
+掘り下ã’ãŸè§£æžãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-no\-newline
 .RS 4
-¤½¤Î¾¤Î\fI\-\-print*\fR¥ª¥×¥·¥ç¥ó¤Ç¶¯À©Åª¤Ë1¹Ô¤Ç½ÐÎϤ·¤Þ¤¹¡£
+ãã®ä»–ã®\fI\-\-print*\fRオプションã§å¼·åˆ¶çš„ã«1è¡Œã§å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-parse
 .RS 4
-²òÀϥĥ꡼¤ò½ÐÎϤ·¤Þ¤¹¡£
+解æžãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-symbols
 .RS 4
-µ­¹æɽ¤ò½ÐÎϤ·¤Þ¤¹¡£
+記å·è¡¨ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-pcs, \-\-profile\-callsites
 .RS 4
-¸Æ¤Ó½Ð¤·¥µ¥¤¥È¤Î¥×¥í¥Õ¥¡¥¤¥ë¡¦¥Ç¡¼¥¿¤ò¥À¥ó¥×¤·¤Þ¤¹¡£
+呼ã³å‡ºã—サイトã®ãƒ—ロファイル・データをダンプã—ã¾ã™ã€‚
 .RE
 .PP
 \-scripting
 .RS 4
-¥·¥§¥ë¤Î¥¹¥¯¥ê¥×¥Èµ¡Ç½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+シェルã®ã‚¹ã‚¯ãƒªãƒ—ト機能を有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-stderr=\fIfilename\fR|\fIstream\fR|\fItty\fR
 .RS 4
-ɸ½à¥¨¥é¡¼¡¦¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¡¢¥¹¥È¥ê¡¼¥à(¤¿¤È¤¨¤Ð\fIstdout\fR)¤Ë¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥ÈüËö¤Ë¥ê¥À¥¤¥ì¥¯¥È¤·¤Þ¤¹¡£
+標準エラー・ストリームを指定ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¹ãƒˆãƒªãƒ¼ãƒ (ãŸã¨ãˆã°\fIstdout\fR)ã«ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆç«¯æœ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-stdout=\fIfilename\fR|\fIstream\fR|\fItty\fR
 .RS 4
-ɸ½à½ÐÎÏ¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¡¢¥¹¥È¥ê¡¼¥à(¤¿¤È¤¨¤Ð\fIstderr\fR)¤Ë¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥ÈüËö¤Ë¥ê¥À¥¤¥ì¥¯¥È¤·¤Þ¤¹¡£
+標準出力ストリームを指定ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¹ãƒˆãƒªãƒ¼ãƒ (ãŸã¨ãˆã°\fIstderr\fR)ã«ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆç«¯æœ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-strict
 .RS 4
-ɸ½à(ECMAScript Edition 5\&.1)¤Ø¤Î½àµò¤ò¶¯²½¤¹¤ëstrict¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¡¢¤³¤ì¤Ë¤è¤ê¶¦Ä̤Υ³¡¼¥Ç¥£¥ó¥°¡¦¥¨¥é¡¼¤ò´Êñ¤Ë¸¡½Ð¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+標準(ECMAScript Edition 5\&.1)ã¸ã®æº–拠を強化ã™ã‚‹strictモードを有効ã«ã—ã€ã“ã‚Œã«ã‚ˆã‚Šå…±é€šã®ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¨ãƒ©ãƒ¼ã‚’ç°¡å˜ã«æ¤œå‡ºã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-t=\fIzone\fR, \-timezone=\fIzone\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô¤ËÂФ·»ØÄꤷ¤¿¥¿¥¤¥à¥¾¡¼¥ó¤òÀßÄꤷ¤Þ¤¹¡£OS¤ÇÀßÄꤵ¤ì¤¿¥¿¥¤¥à¥¾¡¼¥ó¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¡¢\fIDate\fR¥ª¥Ö¥¸¥§¥¯¥È¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£
+スクリプトã®å®Ÿè¡Œã«å¯¾ã—指定ã—ãŸã‚¿ã‚¤ãƒ ã‚¾ãƒ¼ãƒ³ã‚’設定ã—ã¾ã™ã€‚OSã§è¨­å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ ã‚¾ãƒ¼ãƒ³ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã€\fIDate\fRオブジェクトã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tcs=\fIparameter\fR, \-\-trace\-callsites=\fIparameter\fR
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Î¥È¥ì¡¼¥¹¤Î¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£»ÈÍѲÄǽ¤Ê¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+呼出ã—サイトã®ãƒˆãƒ¬ãƒ¼ã‚¹ã®ãƒ¢ãƒ¼ãƒ‰ã‚’有効ã«ã—ã¾ã™ã€‚使用å¯èƒ½ãªãƒ‘ラメータã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 miss
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Î¥ß¥¹¤ò¥È¥ì¡¼¥¹¤·¤Þ¤¹¡£
+呼出ã—サイトã®ãƒŸã‚¹ã‚’トレースã—ã¾ã™ã€‚
 .RE
 .PP
 enterexit
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Ø¤Î½ÐÆþ¤ê¤ò¥È¥ì¡¼¥¹¤·¤Þ¤¹¡£
+呼出ã—サイトã¸ã®å‡ºå…¥ã‚Šã‚’トレースã—ã¾ã™ã€‚
 .RE
 .PP
 objects
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È¤Î¥×¥í¥Ñ¥Æ¥£¤ò½ÐÎϤ·¤Þ¤¹¡£
+オブジェクトã®ãƒ—ロパティを出力ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-\-verify\-code
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë¸¡¾Ú¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’実行ã™ã‚‹å‰ã«æ¤œè¨¼ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v, \-version
 .RS 4
-Nashorn¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò½ÐÎϤ·¤Þ¤¹¡£
+Nashornãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-xhelp
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î³ÈÄ¥¥Ø¥ë¥×¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンドライン・オプションã®æ‹¡å¼µãƒ˜ãƒ«ãƒ—を出力ã—ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-\fBExample 1\fR, Nashorn¤ò»ÈÍѤ·¤¿¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô
+\fBExample 1\fR, Nashornを使用ã—ãŸã‚¹ã‚¯ãƒªãƒ—トã®å®Ÿè¡Œ
 .RS 4
 .sp
 .if n \{\
@@ -352,7 +352,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ÂÐÏ÷¿¥â¡¼¥É¤Ç¤ÎNashorn¤Î¼Â¹Ô
+\fBExample 2\fR, 対話型モードã§ã®Nashornã®å®Ÿè¡Œ
 .RS 4
 .sp
 .if n \{\
@@ -370,7 +370,7 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, Nashorn¤Ø¤Î°ú¿ô¤ÎÅϤ·
+\fBExample 3\fR, Nashornã¸ã®å¼•æ•°ã®æ¸¡ã—
 .RS 4
 .sp
 .if n \{\
@@ -386,7 +386,7 @@
 .RE
 .\}
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .PP
 \fIjrunscript\fR
 .br
--- a/jdk/src/linux/doc/man/ja/jmap.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jmap.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jmap
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jmap" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jmap" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jmap \- ¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¡¢¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Þ¤¿¤Ï¥Ò¡¼¥×¡¦¥á¥â¥ê¡¼¤Î¾ÜºÙ¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jmap \- プロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã€å…±ç”¨ã‚ªãƒ–ジェクト・メモリー・マップã¾ãŸã¯ãƒ’ープ・メモリーã®è©³ç´°ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -84,93 +84,93 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-½ÐÎϤ¹¤ë¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Î¥×¥í¥»¥¹ID¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+出力ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒžãƒƒãƒ—ã®ãƒ—ロセスID。プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-½ÐÎϤ¹¤ë¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Î¥³¥¢¡¦¥Õ¥¡¥¤¥ë¡£
+出力ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒžãƒƒãƒ—ã®ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjmap\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¡¢¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Þ¤¿¤Ï¥Ò¡¼¥×¡¦¥á¥â¥ê¡¼¤Î¾ÜºÙ¤ò½ÐÎϤ·¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJava²¾ÁÛ¥Þ¥·¥ó(JVM)¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjmap\fR
-\fI\-J\-d64 \-heap pid\fR¡£
+\fIjmap\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã€å…±ç”¨ã‚ªãƒ–ジェクト・メモリー・マップã¾ãŸã¯ãƒ’ープ・メモリーã®è©³ç´°ã‚’出力ã—ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJava仮想マシン(JVM)上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjmap\fR
+\fI\-J\-d64 \-heap pid\fR。
 .PP
-\fBÃí°Õ:\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ë\fIjvm\&.dll\fR¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fB注æ„:\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRファイルãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹\fIjvm\&.dll\fRã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR。
+.SH "オプション"
 .PP
-<¥ª¥×¥·¥ç¥ó¤Ê¤·>
+<オプションãªã—>
 .RS 4
-¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç¡¢\fIjmap\fR¥³¥Þ¥ó¥É¤Ï¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Þ¥Ã¥Ô¥ó¥°¤ò½ÐÎϤ·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈJVM¤Ë¥í¡¼¥É¤µ¤ì¤¿¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¤´¤È¤Ë¡¢³«»Ï¥¢¥É¥ì¥¹¡¢¥Þ¥Ã¥Ô¥ó¥°¤Î¥µ¥¤¥º¤ª¤è¤Ó¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Õ¥ë¥Ñ¥¹¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤³¤ÎÆ°ºî¤Ï¡¢Oracle Solaris
-\fIpmap\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ÈÎà»÷¤·¤Æ¤¤¤Þ¤¹¡£
+オプションを使用ã—ãªã„å ´åˆã€\fIjmap\fRコマンドã¯å…±ç”¨ã‚ªãƒ–ジェクト・マッピングを出力ã—ã¾ã™ã€‚ターゲットJVMã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸå…±ç”¨ã‚ªãƒ–ジェクトã”ã¨ã«ã€é–‹å§‹ã‚¢ãƒ‰ãƒ¬ã‚¹ã€ãƒžãƒƒãƒ”ングã®ã‚µã‚¤ã‚ºãŠã‚ˆã³å…±ç”¨ã‚ªãƒ–ジェクト・ファイルã®ãƒ•ãƒ«ãƒ‘スãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã“ã®å‹•ä½œã¯ã€Oracle Solaris
+\fIpmap\fRユーティリティã¨é¡žä¼¼ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-dump:[live,] format=b, file=\fIfilename\fR
 .RS 4
-Java¥Ò¡¼¥×¤ò\fIhprof\fR¥Ð¥¤¥Ê¥ê·Á¼°¤Ç\fIfilename\fR¤Ë¥À¥ó¥×¤·¤Þ¤¹¡£\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¤¬¡¢»ØÄꤷ¤¿¾ì¹ç¡¢¥Ò¡¼¥×Æâ¤Î¥¢¥¯¥Æ¥£¥Ö¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¤ß¤¬¥À¥ó¥×¤µ¤ì¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢jhat(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÀ¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¤Þ¤¹¡£
+Javaヒープを\fIhprof\fRãƒã‚¤ãƒŠãƒªå½¢å¼ã§\fIfilename\fRã«ãƒ€ãƒ³ãƒ—ã—ã¾ã™ã€‚\fIlive\fRサブオプションã¯ã‚ªãƒ—ションã§ã™ãŒã€æŒ‡å®šã—ãŸå ´åˆã€ãƒ’ープ内ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚ªãƒ–ジェクトã®ã¿ãŒãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã™ã€‚ヒープ・ダンプをå‚ç…§ã™ã‚‹ã«ã¯ã€jhat(1)コマンドを使用ã—ã¦ç”Ÿæˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-finalizerinfo
 .RS 4
-¥Õ¥¡¥¤¥Ê¥é¥¤¥º¤òÂԤäƤ¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ファイナライズを待ã£ã¦ã„るオブジェクトã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-heap
 .RS 4
-»ÈÍѤµ¤ì¤Æ¤¤¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¥Ò¡¼¥×¡¦¥µ¥Þ¥ê¡¼¡¢¥Ø¥Ã¥À¡¼¹½À®¡¢¤ª¤è¤ÓÀ¤Âå´ØÏ¢¤Î¥Ò¡¼¥×»ÈÍѾõ¶·¤ò½ÐÎϤ·¤Þ¤¹¡£¤µ¤é¤Ë¡¢intern¤µ¤ì¤¿Ê¸»úÎó¤Î¿ô¤È¥µ¥¤¥º¤â½ÐÎϤµ¤ì¤Þ¤¹¡£
+使用ã•ã‚Œã¦ã„るガベージ・コレクションã®ãƒ’ープ・サマリーã€ãƒ˜ãƒƒãƒ€ãƒ¼æ§‹æˆã€ãŠã‚ˆã³ä¸–代関連ã®ãƒ’ープ使用状æ³ã‚’出力ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€internã•ã‚ŒãŸæ–‡å­—列ã®æ•°ã¨ã‚µã‚¤ã‚ºã‚‚出力ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-histo[:live]
 .RS 4
-¥Ò¡¼¥×¤Î¥Ò¥¹¥È¥°¥é¥à¤ò½ÐÎϤ·¤Þ¤¹¡£Java¥¯¥é¥¹¤´¤È¤Ë¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¿ô¡¢¥Ð¥¤¥Èñ°Ì¤Ç¤Î¥á¥â¥ê¡¼¡¦¥µ¥¤¥º¡¢¤ª¤è¤Ó´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£JVM¤ÎÆâÉô¥¯¥é¥¹Ì¾¤Ï¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ÎÀÜƬ¼­¤òÉÕ¤±¤Æ½ÐÎϤµ¤ì¤Þ¤¹¡£\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¤ß¤¬¥«¥¦¥ó¥È¤µ¤ì¤Þ¤¹¡£
+ヒープã®ãƒ’ストグラムを出力ã—ã¾ã™ã€‚Javaクラスã”ã¨ã«ã€ã‚ªãƒ–ジェクトã®æ•°ã€ãƒã‚¤ãƒˆå˜ä½ã§ã®ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ã‚µã‚¤ã‚ºã€ãŠã‚ˆã³å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚JVMã®å†…部クラスåã¯ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã®æŽ¥é ­è¾žã‚’付ã‘ã¦å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fIlive\fRサブオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚ªãƒ–ジェクトã®ã¿ãŒã‚«ã‚¦ãƒ³ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-clstats
 .RS 4
-Java¥Ò¡¼¥×¤Î¡¢¥¯¥é¥¹¡¦¥í¡¼¥À¡¼´ØÏ¢¤ÎÅý·×¥Ç¡¼¥¿¤ò½ÐÎϤ·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤´¤È¤Ë¡¢¤½¤Î̾Á°¡¢¾õÂÖ¡¢¥¢¥É¥ì¥¹¡¢¿Æ¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¡¢¤ª¤è¤Ó¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤¬¥í¡¼¥É¤·¤¿¥¯¥é¥¹¤Î¿ô¤È¥µ¥¤¥º¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+Javaヒープã®ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼é–¢é€£ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’出力ã—ã¾ã™ã€‚クラス・ローダーã”ã¨ã«ã€ãã®åå‰ã€çŠ¶æ…‹ã€ã‚¢ãƒ‰ãƒ¬ã‚¹ã€è¦ªã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã€ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŒãƒ­ãƒ¼ãƒ‰ã—ãŸã‚¯ãƒ©ã‚¹ã®æ•°ã¨ã‚µã‚¤ã‚ºãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-F
 .RS 4
-¶¯À©¤·¤Þ¤¹¡£PID¤¬±þÅú¤·¤Ê¤¤¤È¤­¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fIjmap \-dump\fR¤Þ¤¿¤Ï\fIjmap \-histo\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó¡£
+強制ã—ã¾ã™ã€‚PIDãŒå¿œç­”ã—ãªã„ã¨ãã«ã€ã“ã®ã‚ªãƒ—ションを\fIjmap \-dump\fRã¾ãŸã¯\fIjmap \-histo\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¾ã™ã€‚ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€\fIlive\fRサブオプションã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjmap\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£
+\fIjmap\fRコマンドを実行ã—ã¦ã„ã‚‹Java仮想マシンã«\fIflag\fRを渡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jps.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jps.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jps
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jps" "1" "2013ǯ11·î21Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jps" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jps \- ¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¾å¤Ç·×¬¤µ¤ì¤¿Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jps \- ターゲット・システム上ã§è¨ˆæ¸¬ã•ã‚ŒãŸJava仮想マシン(JVM)を一覧表示ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,60 +64,60 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIhostid\fR
 .RS 4
-¥×¥í¥»¥¹¡¦¥ì¥Ý¡¼¥È¤òÀ¸À®¤¹¤ë¥Û¥¹¥È¤Î¼±Ê̻ҡ£\fIhostid\fR¤Ë¤Ï¡¢ÄÌ¿®¥×¥í¥È¥³¥ë¡¢¥Ý¡¼¥ÈÈֹ桢¼ÂÁõ¤Ë¸ÇÍ­¤Ê¾¤Î¥Ç¡¼¥¿¤ò»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¡¦¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Û¥¹¥È¼±Ê̻Ҥò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+プロセス・レãƒãƒ¼ãƒˆã‚’生æˆã™ã‚‹ãƒ›ã‚¹ãƒˆã®è­˜åˆ¥å­ã€‚\fIhostid\fRã«ã¯ã€é€šä¿¡ãƒ—ロトコルã€ãƒãƒ¼ãƒˆç•ªå·ã€å®Ÿè£…ã«å›ºæœ‰ãªä»–ã®ãƒ‡ãƒ¼ã‚¿ã‚’指定ã—ãŸã‚ªãƒ—ション・コンãƒãƒ¼ãƒãƒ³ãƒˆã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ホスト識別å­ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¾å¤Ç·×¬¤µ¤ì¤¿Java HotSpot VM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤Ç¤­¤ë¥ì¥Ý¡¼¥È¾ðÊó¤Ï¡¢¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤¿JVM¤Ë´Ø¤¹¤ë¤â¤Î¤Ë¸ÂÄꤵ¤ì¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJava HotSpot VMを一覧表示ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã§ãるレãƒãƒ¼ãƒˆæƒ…å ±ã¯ã€ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ãŸJVMã«é–¢ã™ã‚‹ã‚‚ã®ã«é™å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fIhostid\fR¤ò»ØÄꤻ¤º¤Ë\fIjps\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ç·×¬¤µ¤ì¤¿JVM¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£\fIhostid\fR¤ò»ØÄꤷ¤Æµ¯Æ°¤·¤¿¾ì¹ç¡¢»ØÄꤵ¤ì¤¿¥×¥í¥È¥³¥ë¤È¥Ý¡¼¥È¤ò»ÈÍѤ·¤Æ¡¢»ØÄꤵ¤ì¤¿¥Û¥¹¥È¾å¤ÎJVM¤ò¸¡º÷¤·¤Þ¤¹¡£\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤵ¤ì¤Þ¤¹¡£
+\fIhostid\fRを指定ã›ãšã«\fIjps\fRコマンドを実行ã—ãŸå ´åˆã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚\fIhostid\fRを指定ã—ã¦èµ·å‹•ã—ãŸå ´åˆã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロトコルã¨ãƒãƒ¼ãƒˆã‚’使用ã—ã¦ã€æŒ‡å®šã•ã‚ŒãŸãƒ›ã‚¹ãƒˆä¸Šã®JVMを検索ã—ã¾ã™ã€‚\fIjstatd\fRプロセスãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤Ç·×¬¤µ¤ì¤¿³ÆJVM¤Ë¤Ä¤¤¤Æ¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҡ¢¤Ä¤Þ¤ê\fIlvmid\fR¤ò¥ì¥Ý¡¼¥È¤·¤Þ¤¹¡£\fIlvmid\fR¤Ï¡¢°ìÈÌŪ¤Ë¤ÏJVM¥×¥í¥»¥¹¤ËÂФ¹¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥×¥í¥»¥¹¼±Ê̻ҤǤ¹¤¬¡¢É¬¤º¤·¤â¤½¤¦¤Ç¤¢¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIjps\fR¤Ë¤è¤Ã¤Æ¡¢³ÆJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fIlvmid\fR¤¬°ìÍ÷ɽ¼¨¤µ¤ì¡¢¤½¤ì¤¾¤ì¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤¬´Êñ¤Ê·Á¼°¤Ç¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î´Êñ¤Ê·Á¼°¤Î¥¯¥é¥¹Ì¾¤ÈJAR¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¡¢¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸¾ðÊó¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¾ðÊ󤬾Êά¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§è¨ˆæ¸¬ã•ã‚ŒãŸå„JVMã«ã¤ã„ã¦ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã€ã¤ã¾ã‚Š\fIlvmid\fRをレãƒãƒ¼ãƒˆã—ã¾ã™ã€‚\fIlvmid\fRã¯ã€ä¸€èˆ¬çš„ã«ã¯JVMプロセスã«å¯¾ã™ã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ãƒ—ロセス識別å­ã§ã™ãŒã€å¿…ãšã—ã‚‚ãã†ã§ã‚ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。オプションを指定ã—ãªã„å ´åˆã€\fIjps\fRã«ã‚ˆã£ã¦ã€å„Javaアプリケーションã®\fIlvmid\fRãŒä¸€è¦§è¡¨ç¤ºã•ã‚Œã€ãã‚Œãžã‚Œã«ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåãŒç°¡å˜ãªå½¢å¼ã§ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ç°¡å˜ãªå½¢å¼ã®ã‚¯ãƒ©ã‚¹åã¨JARファイルåã§ã¯ã€ã‚¯ãƒ©ã‚¹ã®ãƒ‘ッケージ情報ã¾ãŸã¯JARファイル・パス情報ãŒçœç•¥ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢Javaµ¯Æ°¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æmain¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤È°ú¿ô¤ò¸¡º÷¤·¤Þ¤¹¡£Æȼ«¤Îµ¯Æ°¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥ÈJVM¤òµ¯Æ°¤·¤¿¾ì¹ç¤Ï¡¢\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤È°ú¿ô¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤È°ú¿ô¤ËÂФ·¤Æ¡¢Ê¸»úÎó\fIUnknown\fR¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€Java起動ツールを使用ã—ã¦mainメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¨å¼•æ•°ã‚’検索ã—ã¾ã™ã€‚独自ã®èµ·å‹•ãƒ„ールを使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã‚’èµ·å‹•ã—ãŸå ´åˆã¯ã€\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåã¨å¼•æ•°ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。ã“ã®å ´åˆã€\fIjps\fRコマンドã¯ã€\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåã¨å¼•æ•°ã«å¯¾ã—ã¦ã€æ–‡å­—列\fIUnknown\fRを出力ã—ã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¤ëJVM¤Î¥ê¥¹¥È¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¥×¥ê¥ó¥·¥Ñ¥ë¤ËÍ¿¤¨¤é¤ì¤¿¥¢¥¯¥»¥¹¸¢¤Ë´ð¤Å¤­¡¢À©¸Â¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥àÆȼ«¤Î¥¢¥¯¥»¥¹À©¸æµ¡¹½¤Ë¤è¤ë·èÄê¤Ë´ð¤Å¤¤¤Æ¡¢¥×¥ê¥ó¥·¥Ñ¥ë¤Ë¥¢¥¯¥»¥¹¸¢¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤ëJVM¤Î¤ß¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjps\fRコマンドã§ç”Ÿæˆã•ã‚Œã‚‹JVMã®ãƒªã‚¹ãƒˆã¯ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ãƒ—リンシパルã«ä¸Žãˆã‚‰ã‚ŒãŸã‚¢ã‚¯ã‚»ã‚¹æ¨©ã«åŸºã¥ãã€åˆ¶é™ã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ç‹¬è‡ªã®ã‚¢ã‚¯ã‚»ã‚¹åˆ¶å¾¡æ©Ÿæ§‹ã«ã‚ˆã‚‹æ±ºå®šã«åŸºã¥ã„ã¦ã€ãƒ—リンシパルã«ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã‚‹JVMã®ã¿ã‚’一覧表示ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥³¥Þ¥ó¥É¤Î½ÐÎϤòÊѹ¹¤¹¤ë¥ª¥×¥·¥ç¥ó¤¬Â¿¿ô¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾­Íè¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Êѹ¹¤Þ¤¿¤ÏÇѻߤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjps\fRコマンドã§ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã®å‡ºåŠ›ã‚’変更ã™ã‚‹ã‚ªãƒ—ションãŒå¤šæ•°ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚å°†æ¥ã€ã“れらã®ã‚ªãƒ—ションã¯ã€å¤‰æ›´ã¾ãŸã¯å»ƒæ­¢ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
 \-q
 .RS 4
-¥¯¥é¥¹Ì¾¡¢JAR¥Õ¥¡¥¤¥ë̾¡¢¤ª¤è¤Ó\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤¿°ú¿ô¤Î½ÐÎϤòÍÞÀ©¤·¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҤΰìÍ÷¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£
+クラスåã€JARファイルåã€ãŠã‚ˆã³\fImain\fRメソッドã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã®å‡ºåŠ›ã‚’抑制ã—ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã®ä¸€è¦§ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-m
 .RS 4
-\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î½ÐÎϤϡ¢ÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ëJVM¤ËÂФ·¤Æ\fInull\fR¤Ë¤Ê¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£
+\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’出力ã—ã¾ã™ã€‚ã“ã®å‡ºåŠ›ã¯ã€çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã‚‹JVMã«å¯¾ã—ã¦\fInull\fRã«ãªã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fImain\fR¥¯¥é¥¹¤Î¥Õ¥ë¡¦¥Ñ¥Ã¥±¡¼¥¸Ì¾¡¢¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Õ¥ë¥Ñ¥¹Ì¾¤ò½ÐÎϤ·¤Þ¤¹¡£
+アプリケーションã®\fImain\fRクラスã®ãƒ•ãƒ«ãƒ»ãƒ‘ッケージåã€ã¾ãŸã¯ã‚¢ãƒ—リケーションã®JARファイルã¸ã®ãƒ•ãƒ«ãƒ‘スåを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v
 .RS 4
-JVM¤ËÅϤµ¤ì¤ë°ú¿ô¤òɽ¼¨¤·¤Þ¤¹¡£
+JVMã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V
 .RS 4
-¥¯¥é¥¹Ì¾¡¢JAR¥Õ¥¡¥¤¥ë̾¡¢¤ª¤è¤Ómai¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤¿°ú¿ô¤Î½ÐÎϤòÍÞÀ©¤·¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҤΰìÍ÷¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£
+クラスåã€JARファイルåã€ãŠã‚ˆã³maiメソッドã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã®å‡ºåŠ›ã‚’抑制ã—ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã®ä¸€è¦§ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë\fI¥ª¥×¥·¥ç¥ó\fR¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã‚‹\fIオプション\fRã‚’1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥Û¥¹¥È¼±ÊÌ»Ò"
+.SH "ホスト識別å­"
 .PP
-¥Û¥¹¥È¼±Ê̻ҡ¢¤Ä¤Þ¤ê\fIhostid\fR¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤ò¼¨¤¹Ê¸»úÎó¤Ç¤¹¡£\fIhostid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+ホスト識別å­ã€ã¤ã¾ã‚Š\fIhostid\fRã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚’示ã™æ–‡å­—列ã§ã™ã€‚\fIhostid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -131,27 +131,27 @@
 .PP
 \fIprotocol\fR
 .RS 4
-ÄÌ¿®¥×¥í¥È¥³¥ë¤Ç¤¹¡£\fIprotocol\fR¤¬¾Êά¤µ¤ì¡¢\fIhostname\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥È¥³¥ë¤¬¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Ë¤Ê¤ê¤Þ¤¹¡£¥×¥í¥È¥³¥ë¤¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥×¥í¥È¥³¥ë¤Ï\fIrmi\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+通信プロトコルã§ã™ã€‚\fIprotocol\fRãŒçœç•¥ã•ã‚Œã€\fIhostname\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロトコルãŒã€ãƒ—ラットフォーム固有ã®æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã«ãªã‚Šã¾ã™ã€‚プロトコルãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ—ロトコルã¯\fIrmi\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 hostname
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤ò¼¨¤¹¥Û¥¹¥È̾¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤Ç¤¹¡£\fIhostname\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
+ターゲット・ホストを示ã™ãƒ›ã‚¹ãƒˆåã¾ãŸã¯IPアドレスã§ã™ã€‚\fIhostname\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 port
 .RS 4
-¥ê¥â¡¼¥È¡¦¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ë¤¿¤á¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¤¹¡£\fIhostname\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fIprotocol\fR¥Ñ¥é¥á¡¼¥¿¤¬¡¢ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤ò»ØÄꤷ¤Æ¤¤¤ë¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î
-\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Îrmiregistry¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¼¨¤·¤Þ¤¹¡£\fIport\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fIprotocol\fR¥Ñ¥é¥á¡¼¥¿¤¬\fIrmi\fR¤ò¼¨¤·¤Æ¤¤¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(1099)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+リモート・サーãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã™ã€‚\fIhostname\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fIprotocol\fRパラメータãŒã€æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルを指定ã—ã¦ã„ã‚‹å ´åˆã€\fIport\fRパラメータã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIport\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã®
+\fIrmi\fRプロトコルã®å ´åˆã€\fIport\fRパラメータã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®rmiregistryã®ãƒãƒ¼ãƒˆç•ªå·ã‚’示ã—ã¾ã™ã€‚\fIport\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fIprotocol\fRパラメータãŒ\fIrmi\fRを示ã—ã¦ã„ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(1099)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 servername
 .RS 4
-¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤ÎRMI¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤ò¼¨¤¹Ê¸»úÎó¤Ë¤Ê¤ê¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fIjstatd\fR¥³¥Þ¥ó¥É¤Î\fI\-n\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®ãƒ‘ラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚最é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã®å ´åˆã€ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIrmi\fRプロトコルã®å ´åˆã€ã“ã®ãƒ‘ラメータã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®RMIリモート・オブジェクトã®åå‰ã‚’示ã™æ–‡å­—列ã«ãªã‚Šã¾ã™ã€‚詳細ã¯ã€\fIjstatd\fRコマンドã®\fI\-n\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "½ÐÎÏ¥Õ¥©¡¼¥Þ¥Ã¥È"
+.SH "出力フォーマット"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤϡ¢¼¡¤Î¥Ñ¥¿¡¼¥ó¤Ë½¾¤¤¤Þ¤¹¡£
+\fIjps\fRコマンドã®å‡ºåŠ›ã¯ã€æ¬¡ã®ãƒ‘ターンã«å¾“ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -163,15 +163,15 @@
 .RE
 .\}
 .PP
-¤¹¤Ù¤Æ¤Î½ÐÎϥȡ¼¥¯¥ó¤Ï¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£\fIarg\fRÃͤÎÃæ¤Ç¶õÇò¤ò»ÈÍѤ¹¤ë¤È¡¢¼ÂºÝ¤ÎÄê°ÌÃ֥ѥé¥á¡¼¥¿¤Ë°ú¿ô¤ò¥Þ¥Ã¥Ô¥ó¥°¤·¤è¤¦¤È¤¹¤ë¤È¤­¤Ë¡¢¤¢¤¤¤Þ¤¤¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®å‡ºåŠ›ãƒˆãƒ¼ã‚¯ãƒ³ã¯ç©ºç™½æ–‡å­—ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚\fIarg\fR値ã®ä¸­ã§ç©ºç™½ã‚’使用ã™ã‚‹ã¨ã€å®Ÿéš›ã®å®šä½ç½®ãƒ‘ラメータã«å¼•æ•°ã‚’マッピングã—よã†ã¨ã™ã‚‹ã¨ãã«ã€ã‚ã„ã¾ã„ã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤³¤Î·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¡¢\fIjps\fR¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤ÏºîÀ®¤·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£\fIjps\fR½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë¤È¡¢¤³¤Î¥Ä¡¼¥ë¤Î¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¡¢ºîÀ®¤·¤¿¥¹¥¯¥ê¥×¥È¤ÎÊѹ¹¤¬É¬Íפˤʤë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SH "Îã"
+\fB注æ„:\fR
+å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã“ã®å½¢å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã€\fIjps\fRã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トã¯ä½œæˆã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚\fIjps\fR出力を解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トを作æˆã™ã‚‹ã¨ã€ã“ã®ãƒ„ールã®å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã€ä½œæˆã—ãŸã‚¹ã‚¯ãƒªãƒ—トã®å¤‰æ›´ãŒå¿…è¦ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "例"
 .PP
-¤³¤Î¹à¤Ç¤Ï¡¢\fIjps\fR¥³¥Þ¥ó¥É¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+ã“ã®é …ã§ã¯ã€\fIjps\fRコマンドã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .PP
-¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤¹¤ë¾ì¹ç:
+ローカル・ホスト上ã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã™ã‚‹å ´åˆ:
 .sp
 .if n \{\
 .RS 4
@@ -186,7 +186,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fIjstat\fR¥µ¡¼¥Ð¡¼¤È¡¢¤½¤ÎÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤Þ¤¿¤ÏÊ̤γ°Éôrmiregistry¥×¥í¥»¥¹¤Î¤¤¤º¤ì¤«¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤Þ¤¿¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ø¤ÎÍ­¸ú¤Ê¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤âÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÎã¤Ë¤Ï¡¢\fI\-l\fR¥ª¥×¥·¥ç¥ó¤â´Þ¤Þ¤ì¡¢¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤ò¾ÜºÙ¤Ê·Á¼°¤Ç½ÐÎϤ·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fIjstat\fRサーãƒãƒ¼ã¨ã€ãã®å†…部RMIレジストリã¾ãŸã¯åˆ¥ã®å¤–部rmiregistryプロセスã®ã„ãšã‚Œã‹ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚ã¾ãŸã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¸ã®æœ‰åŠ¹ãªã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ã‚‚想定ã—ã¦ã„ã¾ã™ã€‚ã“ã®ä¾‹ã«ã¯ã€\fI\-l\fRオプションもå«ã¾ã‚Œã€ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåを詳細ãªå½¢å¼ã§å‡ºåŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -200,7 +200,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢RMI¥ì¥¸¥¹¥È¥ê¤Ë¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¤Ê¤¤¥Ý¡¼¥È¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤¬¥Ý¡¼¥È2002¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIjstatd\fR¥µ¡¼¥Ð¡¼¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤Þ¤¿¡¢\fI\-m\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢°ìÍ÷ɽ¼¨¤µ¤ì¤¿¤½¤ì¤¾¤ì¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¤òÁȤ߹þ¤ó¤Ç¤¤¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€RMIレジストリã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ãªã„ãƒãƒ¼ãƒˆã‚’使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€å†…部RMIレジストリãŒãƒãƒ¼ãƒˆ2002ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIjstatd\fRサーãƒãƒ¼ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚ã¾ãŸã€\fI\-m\fRオプションを使用ã—ã¦ã€ä¸€è¦§è¡¨ç¤ºã•ã‚ŒãŸãã‚Œãžã‚Œã®Javaアプリケーションã®\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’組ã¿è¾¼ã‚“ã§ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -213,7 +213,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jrunscript.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jrunscript.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jrunscript
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: スクリプティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jrunscript" "1" "2013ǯ11·î21Æü" "JDK 8" "¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jrunscript" "1" "2013年11月21日" "JDK 8" "スクリプティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jrunscript \- ÂÐÏ÷¿¥â¡¼¥É¤È¥Ð¥Ã¥Á¡¦¥â¡¼¥É¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¡¦¥·¥§¥ë¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jrunscript \- 対話型モードã¨ãƒãƒƒãƒãƒ»ãƒ¢ãƒ¼ãƒ‰ã‚’サãƒãƒ¼ãƒˆã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¹ã‚¯ãƒªãƒ—ト・シェルを実行ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,83 +64,83 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-°ú¿ô¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï¥³¥Þ¥ó¥É̾¤Îľ¸å¤Ëµ­½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£°ú¿ô¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+引数を使用ã™ã‚‹å ´åˆã€ã‚ªãƒ—ションã¾ãŸã¯ã‚³ãƒžãƒ³ãƒ‰åã®ç›´å¾Œã«è¨˜è¿°ã—ã¦ãã ã•ã„。引数をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¡¢¸À¸ì¤Ë°Í¸¤·¤Ê¤¤¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¡¦¥·¥§¥ë¤Ç¤¹¡£\fIjrunscript\fR¤Ï¡¢ÂÐÏ÷¿(read\-eval\-print)¥â¡¼¥É¤È¥Ð¥Ã¥Á(\fI\-f\fR¥ª¥×¥·¥ç¥ó)¡¦¥â¡¼¥É¤ÎξÊý¤Î¥¹¥¯¥ê¥×¥È¼Â¹Ô¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î»ÈÍѸÀ¸ì¤ÏJavaScript¤Ç¤¹¤¬¡¢\fI\-l\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ì¤Ð¾¤Î¸À¸ì¤â»ØÄê¤Ç¤­¤Þ¤¹¡£\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¤È¥¹¥¯¥ê¥×¥È¸À¸ì¤È¤ÎÄÌ¿®¤ò»ÈÍѤ·¤ÆõµáŪ¤Ê¥×¥í¥°¥é¥ß¥ó¥°¡¦¥¹¥¿¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjrunscript\fRコマンドã¯ã€è¨€èªžã«ä¾å­˜ã—ãªã„コマンドライン・スクリプト・シェルã§ã™ã€‚\fIjrunscript\fRã¯ã€å¯¾è©±åž‹(read\-eval\-print)モードã¨ãƒãƒƒãƒ(\fI\-f\fRオプション)・モードã®ä¸¡æ–¹ã®ã‚¹ã‚¯ãƒªãƒ—ト実行をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚デフォルトã®ä½¿ç”¨è¨€èªžã¯JavaScriptã§ã™ãŒã€\fI\-l\fRオプションを使用ã™ã‚Œã°ä»–ã®è¨€èªžã‚‚指定ã§ãã¾ã™ã€‚\fIjrunscript\fRコマンドã¯ã€Javaã¨ã‚¹ã‚¯ãƒªãƒ—ト言語ã¨ã®é€šä¿¡ã‚’使用ã—ã¦æŽ¢æ±‚çš„ãªãƒ—ログラミング・スタイルをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¤¬¥¢¥¯¥»¥¹¤¹¤ëɬÍפΤ¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¤ò¼¨¤·¤Þ¤¹¡£
+スクリプトãŒã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ã®ã‚るクラス・ファイルã®å ´æ‰€ã‚’示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
 \fI\-classpath\fR
-\fIpath\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fIpath\fRã¨åŒã˜ã§ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-Java¤Î¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£
+Javaã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティを設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIflag\fR¤ò¡¢\fIjrunscript\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤ËľÀÜÅϤ·¤Þ¤¹¡£
+\fIflag\fRã‚’ã€\fIjrunscript\fRコマンドãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹Java仮想マシンã«ç›´æŽ¥æ¸¡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-I \fIlanguage\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¸À¸ì¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤ÏJavaScript¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£Â¾¤Î¥¹¥¯¥ê¥×¥È¸À¸ì¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fI\-cp\fR¤Þ¤¿¤Ï\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Âбþ¤¹¤ë¥¹¥¯¥ê¥×¥È¡¦¥¨¥ó¥¸¥ó¤ÎJAR¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—ト言語を使用ã—ã¾ã™ã€‚デフォルトã§ã¯JavaScriptãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ä»–ã®ã‚¹ã‚¯ãƒªãƒ—ト言語を使用ã™ã‚‹ã«ã¯ã€\fI\-cp\fRã¾ãŸã¯\fI\-classpath\fRオプションを使用ã—ã¦ã€å¯¾å¿œã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—ト・エンジンã®JARファイルを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-e \fIscript\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¤òɾ²Á¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ì¤Ð¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¹¤Ù¤Æ¤¬»ØÄꤵ¤ì¤¿1¹Ô¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—トを評価ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚Œã°ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã™ã¹ã¦ãŒæŒ‡å®šã•ã‚ŒãŸ1行スクリプトを実行ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆɼè¤ê»þ¤Ë»ÈÍѤ¹¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£
+スクリプト・ファイルã®èª­å–り時ã«ä½¿ç”¨ã™ã‚‹æ–‡å­—エンコーディングを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-f \fIscript\-file\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë(¥Ð¥Ã¥Á¡¦¥â¡¼¥É)¤òɾ²Á¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—ト・ファイル(ãƒãƒƒãƒãƒ»ãƒ¢ãƒ¼ãƒ‰)を評価ã—ã¾ã™ã€‚
 .RE
 .PP
 \-f \-
 .RS 4
-ɸ½àÆþÎϤ«¤é¥¹¥¯¥ê¥×¥È¤òÆɤ߼è¤ê¡¢¤½¤ì¤òɾ²Á¤·¤Þ¤¹(ÂÐÏ÷¿¥â¡¼¥É)¡£
+標準入力ã‹ã‚‰ã‚¹ã‚¯ãƒªãƒ—トを読ã¿å–ã‚Šã€ãれを評価ã—ã¾ã™(対話型モード)。
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-?
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-q
 .RS 4
-ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¹¥¯¥ê¥×¥È¡¦¥¨¥ó¥¸¥ó¤ò°ìÍ÷ɽ¼¨¤·¤¿¤¢¤È¡¢½ªÎ»¤·¤Þ¤¹¡£
+利用å¯èƒ½ãªã™ã¹ã¦ã®ã‚¹ã‚¯ãƒªãƒ—ト・エンジンを一覧表示ã—ãŸã‚ã¨ã€çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SH "°ú¿ô"
+.SH "引数"
 .PP
-arguments¤¬Â¸ºß¤·¤Æ¤¤¤Æ¡¢¤«¤Ä\fI\-e\fR¡¢\fI\-f\fR¤Î¤¤¤º¤ì¤Î¥ª¥×¥·¥ç¥ó¤â»ÈÍѤµ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ºÇ½é¤Î°ú¿ô¤¬¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤È¤Ê¤ê¡¢Â¾¤Î°ú¿ô¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£arguments¤È¡¢\fI\-e\fR¤Þ¤¿¤Ï\fI\-f\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤¹¤Ù¤Æ¤Îarguments¤¬¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£arguments¡¢\fI\-e\fR¡¢\fI\-f\fR¤¬¤É¤ì¤â¸ºß¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ÂÐÏ÷¿¥â¡¼¥É¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥¹¥¯¥ê¥×¥È¤«¤é¥¹¥¯¥ê¥×¥È°ú¿ô¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fIarguments\fR¤È¤¤¤¦Ì¾Á°¤Î\fIString\fRÇÛÎ󷿤Υ¨¥ó¥¸¥óÊÑ¿ô¤ò»ÈÍѤ·¤Þ¤¹¡£
-.SH "Îã"
-.SS "¥¤¥ó¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô"
+argumentsãŒå­˜åœ¨ã—ã¦ã„ã¦ã€ã‹ã¤\fI\-e\fRã€\fI\-f\fRã®ã„ãšã‚Œã®ã‚ªãƒ—ションも使用ã•ã‚Œãªã‹ã£ãŸå ´åˆã€æœ€åˆã®å¼•æ•°ãŒã‚¹ã‚¯ãƒªãƒ—ト・ファイルã¨ãªã‚Šã€ä»–ã®å¼•æ•°ãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯ã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚argumentsã¨ã€\fI\-e\fRã¾ãŸã¯\fI\-f\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã™ã¹ã¦ã®argumentsãŒã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚argumentsã€\fI\-e\fRã€\fI\-f\fRãŒã©ã‚Œã‚‚存在ã—ãªã‹ã£ãŸå ´åˆã¯ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚スクリプトã‹ã‚‰ã‚¹ã‚¯ãƒªãƒ—ト引数を使用ã™ã‚‹ã«ã¯ã€\fIarguments\fRã¨ã„ã†åå‰ã®\fIString\fRé…列型ã®ã‚¨ãƒ³ã‚¸ãƒ³å¤‰æ•°ã‚’使用ã—ã¾ã™ã€‚
+.SH "例"
+.SS "インライン・スクリプトã®å®Ÿè¡Œ"
 .sp
 .if n \{\
 .RS 4
@@ -152,7 +152,7 @@
 .if n \{\
 .RE
 .\}
-.SS "»ØÄꤵ¤ì¤¿¸À¸ì¤Î»ÈÍѤª¤è¤Ó¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Îɾ²Á"
+.SS "指定ã•ã‚ŒãŸè¨€èªžã®ä½¿ç”¨ãŠã‚ˆã³ã‚¹ã‚¯ãƒªãƒ—ト・ファイルã®è©•ä¾¡"
 .sp
 .if n \{\
 .RS 4
@@ -163,7 +163,7 @@
 .if n \{\
 .RE
 .\}
-.SS "ÂÐÏ÷¿¥â¡¼¥É"
+.SS "対話型モード"
 .sp
 .if n \{\
 .RS 4
@@ -184,9 +184,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥¹¥¯¥ê¥×¥È°ú¿ô¤ò»ØÄꤷ¤¿¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Î¼Â¹Ô"
+.SS "スクリプト引数を指定ã—ãŸã‚¹ã‚¯ãƒªãƒ—ト・ファイルã®å®Ÿè¡Œ"
 .PP
-test\&.js¥Õ¥¡¥¤¥ë¤Ï¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£\fIarg1\fR¡¢\fIarg2\fR¤ª¤è¤Ó\fIarg3\fR¤Î³Æ°ú¿ô¤¬¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£¥¹¥¯¥ê¥×¥È¤ÏargumentsÇÛÎó¤ò»ÈÍѤ·¤Æ¤³¤ì¤é¤Î°ú¿ô¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£
+test\&.jsファイルã¯ã‚¹ã‚¯ãƒªãƒ—ト・ファイルã§ã™ã€‚\fIarg1\fRã€\fIarg2\fRãŠã‚ˆã³\fIarg3\fRã®å„引数ãŒã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚スクリプトã¯argumentsé…列を使用ã—ã¦ã“れらã®å¼•æ•°ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,10 +197,10 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .PP
-JavaScript¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼ÄêµÁ¥¹¥¯¥ê¥×¥È¤òɾ²Á¤¹¤ëÁ°¤Ë¡¢\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¤¤¤¯¤Ä¤«¤ÎÁȹþ¤ß´Ø¿ô¤äÁȹþ¤ß¥ª¥Ö¥¸¥§¥¯¥È¤ò½é´ü²½¤·¤Þ¤¹¡£¤³¤ì¤é¤ÎJavaScript¤ÎÁȹþ¤ß¤Ë¤Ä¤¤¤Æ¤Ï¡¢http://code\&.google\&.com/p/jsdoc\-toolkit/¤Ë¤¢¤ë
-JsDoc\-Toolkit¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JavaScriptãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼å®šç¾©ã‚¹ã‚¯ãƒªãƒ—トを評価ã™ã‚‹å‰ã«ã€\fIjrunscript\fRコマンドã¯ã„ãã¤ã‹ã®çµ„è¾¼ã¿é–¢æ•°ã‚„組込ã¿ã‚ªãƒ–ジェクトをåˆæœŸåŒ–ã—ã¾ã™ã€‚ã“れらã®JavaScriptã®çµ„è¾¼ã¿ã«ã¤ã„ã¦ã¯ã€http://code\&.google\&.com/p/jsdoc\-toolkit/ã«ã‚ã‚‹
+JsDoc\-Toolkitã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .br
 'pl 8.5i
 'bp
--- a/jdk/src/linux/doc/man/ja/jsadebugd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jsadebugd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jsadebugd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jsadebugd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jsadebugd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jsadebugd \- Java¥×¥í¥»¥¹¤Þ¤¿¤Ï¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤ËÀܳ¤·¡¢¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jsadebugd \- Javaプロセスã¾ãŸã¯ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«æŽ¥ç¶šã—ã€ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,26 +74,26 @@
 .PP
 \fIpid\fR
 .RS 4
-¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Àܳ¤¹¤ë¥×¥í¥»¥¹¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£Ã±°ì¤Î¥×¥í¥»¥¹¤ËÀܳ¤Ç¤­¤ë¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ï¡¢1¤Ä¤ËÀ©¸Â¤µ¤ì¤Þ¤¹¡£
+デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒæŽ¥ç¶šã™ã‚‹ãƒ—ロセスã®ãƒ—ロセスIDã§ã™ã€‚プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚å˜ä¸€ã®ãƒ—ロセスã«æŽ¥ç¶šã§ãるデãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã¯ã€1ã¤ã«åˆ¶é™ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤òÀܳ¤¹¤ë¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’接続ã™ã‚‹ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤ËɬÍפˤʤ롢¥ª¥×¥·¥ç¥ó¤Î°ì°Õ¤ÎID¤Ç¤¹¡£¤³¤ÎID¤Ï¡¢¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢ÀܳÀè¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎID¤Ï¡¢Ã±°ì¤Î¥Þ¥·¥óÆâ¤Ç°ì°Õ¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã«å¿…è¦ã«ãªã‚‹ã€ã‚ªãƒ—ションã®ä¸€æ„ã®IDã§ã™ã€‚ã“ã®IDã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒã€æŽ¥ç¶šå…ˆã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®IDã¯ã€å˜ä¸€ã®ãƒžã‚·ãƒ³å†…ã§ä¸€æ„ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjsadebugd\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥×¥í¥»¥¹¤Þ¤¿¤Ï¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤ËÀܳ¤·¡¢¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£\fIjstack\fR¡¢\fIjmap\fR¤ª¤è¤Ó\fIjinfo\fR¤Ê¤É¤Î¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Java Remote Method Invocation (RMI)¤ò»ÈÍѤ·¤Æ¤¤¤ë¥µ¡¼¥Ð¡¼¤ËÀܳ¤Ç¤­¤Þ¤¹¡£\fIjsadebugd\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ëÁ°¤Ë¡¢\fIrmiregistry\fR¥³¥Þ¥ó¥É¤ÇRMI¥ì¥¸¥¹¥È¥ê¤ò¼¡¤Î¤è¤¦¤Ëµ¯Æ°¤·¤Þ¤¹¡£\fI$JAVA_HOME\fR¤ÏJDK¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£
+\fIjsadebugd\fRコマンドã¯ã€Javaプロセスã¾ãŸã¯ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«æŽ¥ç¶šã—ã€ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚\fIjstack\fRã€\fIjmap\fRãŠã‚ˆã³\fIjinfo\fRãªã©ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€Java Remote Method Invocation (RMI)を使用ã—ã¦ã„るサーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã™ã€‚\fIjsadebugd\fRコマンドを起動ã™ã‚‹å‰ã«ã€\fIrmiregistry\fRコマンドã§RMIレジストリを次ã®ã‚ˆã†ã«èµ·å‹•ã—ã¾ã™ã€‚\fI$JAVA_HOME\fRã¯JDKã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -105,12 +105,12 @@
 .RE
 .\}
 .PP
-RMI¥ì¥¸¥¹¥È¥ê¤¬µ¯Æ°¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjsadebugd\fR¥³¥Þ¥ó¥É¤ÏRMI¥ì¥¸¥¹¥È¥ê¤òɸ½à(1099)¥Ý¡¼¥È¤ÇÆâÉô¤Çµ¯Æ°¤·¤Þ¤¹¡£¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Ï¡¢\fISIGINT\fR¤òÁ÷¿®¤¹¤ë¤³¤È¤Ë¤è¤êÄä»ß¤Ç¤­¤Þ¤¹¡£SIGINT¤òÁ÷¿®¤¹¤ë¤Ë¤Ï¡¢\fB[Ctrl] + [C]\fR¤ò²¡¤·¤Þ¤¹¡£
+RMIレジストリãŒèµ·å‹•ã—ã¦ã„ãªã„å ´åˆã€\fIjsadebugd\fRコマンドã¯RMIレジストリを標準(1099)ãƒãƒ¼ãƒˆã§å†…部ã§èµ·å‹•ã—ã¾ã™ã€‚デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¯ã€\fISIGINT\fRã‚’é€ä¿¡ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šåœæ­¢ã§ãã¾ã™ã€‚SIGINTã‚’é€ä¿¡ã™ã‚‹ã«ã¯ã€\fB[Ctrl] + [C]\fRを押ã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£Îã:
+\fB注æ„:\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。例:
 \fIs\fR\fIet PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jstack.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jstack.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstack
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstack" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstack" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstack \- Java¥×¥í¥»¥¹¡¢¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ËÂФ¹¤ëJava¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstack \- Javaプロセスã€ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã™ã‚‹Javaスレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -84,40 +84,40 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-½ÐÎϤ¹¤ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+出力ã™ã‚‹ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã®ãƒ—ロセスIDã§ã™ã€‚プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-½ÐÎϤ¹¤ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Î¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+出力ã™ã‚‹ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã®ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstack\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¡¢¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ËÂФ¹¤ëJava¥¹¥ì¥Ã¥É¤ÎJava¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£Java¥Õ¥ì¡¼¥à¤´¤È¤Ë¡¢¥Õ¥ë¥¯¥é¥¹Ì¾¡¢¥á¥½¥Ã¥É̾¡¢¥Ð¥¤¥È¥³¡¼¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹(bci)¡¢¤ª¤è¤Ó¹ÔÈÖ¹æ(ÍøÍѲÄǽ¤Ê¾ì¹ç)¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-m\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢\fIjstack\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¹¥ì¥Ã¥É¤ÎJava¥Õ¥ì¡¼¥à¤È¥Í¥¤¥Æ¥£¥Ö¡¦¥Õ¥ì¡¼¥à¤ÎξÊý¤ò¡¢¥×¥í¥°¥é¥à¡¦¥«¥¦¥ó¥¿(PC)¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£¥Í¥¤¥Æ¥£¥Ö¡¦¥Õ¥ì¡¼¥à¤´¤È¤Ë¡¢PC¤ËºÇ¤â¶á¤¤¥Í¥¤¥Æ¥£¥Ö¡¦¥·¥ó¥Ü¥ë(ÍøÍѲÄǽ¤Ê¾ì¹ç)¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£C++ʬ²ò̾¤Ïʬ²ò²ò½ü¤µ¤ì¤Þ¤»¤ó¡£C++̾¤òʬ²ò²ò½ü¤¹¤ë¤Ë¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤Î½ÐÎϤò\fIc++filt\fR¤Ë¥Ñ¥¤¥×¤·¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJava²¾ÁÛ¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(Îã:
-\fIjstack \-J\-d64 \-m pid\fR)¡£
+\fIjstack\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸJavaプロセスã€ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã™ã‚‹Javaスレッドã®Javaスタック・トレースを出力ã—ã¾ã™ã€‚Javaフレームã”ã¨ã«ã€ãƒ•ãƒ«ã‚¯ãƒ©ã‚¹åã€ãƒ¡ã‚½ãƒƒãƒ‰åã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹(bci)ã€ãŠã‚ˆã³è¡Œç•ªå·(利用å¯èƒ½ãªå ´åˆ)ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-m\fRオプションを使用ã™ã‚‹ã¨ã€\fIjstack\fRコマンドã¯ã€ã™ã¹ã¦ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®Javaフレームã¨ãƒã‚¤ãƒ†ã‚£ãƒ–・フレームã®ä¸¡æ–¹ã‚’ã€ãƒ—ログラム・カウンタ(PC)ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚ãƒã‚¤ãƒ†ã‚£ãƒ–・フレームã”ã¨ã«ã€PCã«æœ€ã‚‚è¿‘ã„ãƒã‚¤ãƒ†ã‚£ãƒ–・シンボル(利用å¯èƒ½ãªå ´åˆ)ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚C++分解åã¯åˆ†è§£è§£é™¤ã•ã‚Œã¾ã›ã‚“。C++åを分解解除ã™ã‚‹ã«ã¯ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®å‡ºåŠ›ã‚’\fIc++filt\fRã«ãƒ‘イプã—ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJava仮想マシン上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(例:
+\fIjstack \-J\-d64 \-m pid\fR)。
 .PP
-\fBÃí°Õ\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£dbgeng\&.dll¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fB注æ„\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚dbgeng\&.dllファイルãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。ã¾ãŸã€\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -128,39 +128,39 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-F
 .RS 4
 \fIjstack\fR
 [\fI\-l\fR]
-\fIpid\fR¤¬±þÅú¤·¤Ê¤¤¾ì¹ç¤Ë¥¹¥¿¥Ã¥¯¡¦¥À¥ó¥×¤ò¶¯À©¤·¤Þ¤¹¡£
+\fIpid\fRãŒå¿œç­”ã—ãªã„å ´åˆã«ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ€ãƒ³ãƒ—を強制ã—ã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-Ĺ·Á¼°¤Î¥ê¥¹¥È¡£½êÍ­\fIjava\&.util\&.concurrent\fR¤Î½êÍ­¤Ç¤­¤ë¥·¥ó¥¯¥í¥Ê¥¤¥¶¤Î°ìÍ÷¤Ê¤É¡¢¥í¥Ã¥¯¤Ë¤Ä¤¤¤Æ¤ÎÄɲþðÊó¤ò°õºþ¤·¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer\&.html¤Ë¤¢¤ë
-\fIAbstractOwnableSynchronizer\fR¥¯¥é¥¹µ­½Ò¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+é•·å½¢å¼ã®ãƒªã‚¹ãƒˆã€‚所有\fIjava\&.util\&.concurrent\fRã®æ‰€æœ‰ã§ãるシンクロナイザã®ä¸€è¦§ãªã©ã€ãƒ­ãƒƒã‚¯ã«ã¤ã„ã¦ã®è¿½åŠ æƒ…報をå°åˆ·ã—ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer\&.htmlã«ã‚ã‚‹
+\fIAbstractOwnableSynchronizer\fRクラス記述をå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-m
 .RS 4
-Java¤ª¤è¤Ó¥Í¥¤¥Æ¥£¥ÖC/C++¥Õ¥ì¡¼¥à¤ÎξÊý¤ò»ý¤Äº®¹ç¥â¡¼¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£
+JavaãŠã‚ˆã³ãƒã‚¤ãƒ†ã‚£ãƒ–C/C++フレームã®ä¸¡æ–¹ã‚’æŒã¤æ··åˆãƒ¢ãƒ¼ãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "´ûÃΤÎÉÔ¶ñ¹ç"
+.SH "既知ã®ä¸å…·åˆ"
 .PP
-º®¹ç¥â¡¼¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Ç¤Ï¡¢\fI\-m\fR¥ª¥×¥·¥ç¥ó¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Ç¤Ïµ¡Ç½¤·¤Þ¤»¤ó¡£
-.SH "´ØÏ¢¹àÌÜ"
+æ··åˆãƒ¢ãƒ¼ãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã§ã¯ã€\fI\-m\fRオプションã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jstat.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jstat.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstat
 .\" Language: English
-.\" Date: 2011ǯ5·î10Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2011年5月10日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstat" "1" "2011ǯ5·î10Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstat" "1" "2011年5月10日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstat \- Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ÎÅý·×¤ò´Æ»ë¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstat \- Java仮想マシン(JVM)ã®çµ±è¨ˆã‚’監視ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \fIgeneralOption\fR
 .RS 4
-ñÆȤǻÈÍѤ¹¤ë°ìÈÌŪ¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ç¤¹(\fI\-help\fR¤Þ¤¿¤Ï\fI\-options\fR)¡£°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+å˜ç‹¬ã§ä½¿ç”¨ã™ã‚‹ä¸€èˆ¬çš„ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã§ã™(\fI\-help\fRã¾ãŸã¯\fI\-options\fR)。一般的ãªã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIoutputOptions\fR
 .RS 4
-ñ°ì¤Î\fIstatOption\fR¤È\fI\-t\fR¡¢\fI\-h\fR¤ª¤è¤Ó\fI\-J\fR¤Î¤¤¤º¤ì¤«¤Î¥ª¥×¥·¥ç¥ó¤Ç¹½À®¤µ¤ì¤ë1¤Ä°Ê¾å¤Î½ÐÎÏ¥ª¥×¥·¥ç¥ó¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+å˜ä¸€ã®\fIstatOption\fRã¨\fI\-t\fRã€\fI\-h\fRãŠã‚ˆã³\fI\-J\fRã®ã„ãšã‚Œã‹ã®ã‚ªãƒ—ションã§æ§‹æˆã•ã‚Œã‚‹1ã¤ä»¥ä¸Šã®å‡ºåŠ›ã‚ªãƒ—ション。出力オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIvmid\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥ÈJVM¤ò¼¨¤¹Ê¸»úÎó¤Ç¤¢¤ë²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤǤ¹¡£°ìÈÌŪ¤Ê¹½Ê¸¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+ターゲットJVMを示ã™æ–‡å­—列ã§ã‚る仮想マシン識別å­ã§ã™ã€‚一般的ãªæ§‹æ–‡ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -85,24 +85,24 @@
 .if n \{\
 .RE
 .\}
-\fIvmid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£\fIvmid\fRʸ»úÎó¤Ï¡¢¥í¡¼¥«¥ëJVM¤òɽ¤¹Ã±½ã¤ÊÀ°¿ô¤«¤é¡¢ÄÌ¿®¥×¥í¥È¥³¥ë¡¢¥Ý¡¼¥ÈÈֹ桢¤ª¤è¤Ó¾¤Î¼ÂÁõ¸ÇÍ­¤ÎÃͤò¼¨¤¹Ê£»¨¤Ê¹½Â¤¤Þ¤Ç¡¢ÍÍ¡¹¤Ë°Û¤Ê¤ê¤Þ¤¹¡£²¾ÁÛ¥Þ¥·¥ó¼±Ê̻Ҥò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIvmid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚\fIvmid\fR文字列ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«JVMを表ã™å˜ç´”ãªæ•´æ•°ã‹ã‚‰ã€é€šä¿¡ãƒ—ロトコルã€ãƒãƒ¼ãƒˆç•ªå·ã€ãŠã‚ˆã³ä»–ã®å®Ÿè£…固有ã®å€¤ã‚’示ã™è¤‡é›‘ãªæ§‹é€ ã¾ã§ã€æ§˜ã€…ã«ç•°ãªã‚Šã¾ã™ã€‚仮想マシン識別å­ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIinterval\fR [s|ms]
 .RS 4
-ÉÃ(s)¤Þ¤¿¤Ï¥ß¥êÉÃ(ms)¤Î¤¦¤Á»ØÄꤷ¤¿Ã±°Ì¤Ç¤Î¥µ¥ó¥×¥ê¥ó¥°´Ö³Ö¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Îñ°Ì¤Ï¥ß¥êÉäǤ¹¡£Àµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤¿¾ì¹ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Ï³Æ´Ö³Ö¤Ç½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£
+秒(s)ã¾ãŸã¯ãƒŸãƒªç§’(ms)ã®ã†ã¡æŒ‡å®šã—ãŸå˜ä½ã§ã®ã‚µãƒ³ãƒ—リング間隔ã§ã™ã€‚デフォルトã®å˜ä½ã¯ãƒŸãƒªç§’ã§ã™ã€‚æ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãŸå ´åˆã€\fIjstat\fRコマンドã¯å„é–“éš”ã§å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \fIcount\fR
 .RS 4
-ɽ¼¨¤¹¤ë¥µ¥ó¥×¥ë¿ô¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ̵¸Â¤Ç¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢¤Þ¤¿¤Ï\fIjstat\fR¥³¥Þ¥ó¥É¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤ÏÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÃͤϡ¢Àµ¤ÎÀ°¿ô¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+表示ã™ã‚‹ã‚µãƒ³ãƒ—ル数ã§ã™ã€‚デフォルト値ã¯ç„¡é™ã§ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMãŒçµ‚了ã™ã‚‹ã¾ã§ã€ã¾ãŸã¯\fIjstat\fRコマンドãŒçµ‚了ã™ã‚‹ã¾ã§ã€\fIjstat\fRコマンドã¯çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚ã“ã®å€¤ã¯ã€æ­£ã®æ•´æ•°ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstat\fR¥³¥Þ¥ó¥É¤Ï¡¢ÀßÃÖ¤µ¤ì¤Æ¤¤¤ëJava HotSpot VM¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹Åý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈJVM¤Ï¡¢²¾ÁÛ¥Þ¥·¥ó¼±Ê̻Ҥޤ¿¤Ï\fIvmid\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¼±Ê̤µ¤ì¤Þ¤¹¡£
-.SH "²¾ÁÛ¥Þ¥·¥ó¼±ÊÌ»Ò"
+\fIjstat\fRコマンドã¯ã€è¨­ç½®ã•ã‚Œã¦ã„ã‚‹Java HotSpot VMã®ãƒ‘フォーマンス統計データを表示ã—ã¾ã™ã€‚ターゲットJVMã¯ã€ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã¾ãŸã¯\fIvmid\fRオプションã«ã‚ˆã£ã¦è­˜åˆ¥ã•ã‚Œã¾ã™ã€‚
+.SH "仮想マシン識別å­"
 .PP
-\fIvmid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIvmid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -116,380 +116,380 @@
 .PP
 \fIprotocol\fR
 .RS 4
-ÄÌ¿®¥×¥í¥È¥³¥ë¤Ç¤¹¡£\fIprotocol\fRÃͤ¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥È¥³¥ë¤¬¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Ë¤Ê¤ê¤Þ¤¹¡£\fIprotocol\fRÃͤ¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥×¥í¥È¥³¥ë¤Ï\fIrmi\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+通信プロトコルã§ã™ã€‚\fIprotocol\fR値ãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロトコルãŒã€ãƒ—ラットフォーム固有ã®æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã«ãªã‚Šã¾ã™ã€‚\fIprotocol\fR値ãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ—ロトコルã¯\fIrmi\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIlvmid\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥ÈJVM¤Î¥í¡¼¥«¥ë²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤǤ¹¡£\fIlvmid\fR¤Ï¡¢¥·¥¹¥Æ¥à¾å¤ÎJVM¤ò°ì°Õ¤Ë¼±Ê̤¹¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎÃͤǤ¹¡£\fIlvmid\fR¤Ï¡¢²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤÎÍ£°ì¤Îɬ¿ÜÍ×ÁǤǤ¹¡£\fIlvmid\fR¤Ï¡¢°ìÈÌŪ¤Ë¤Ï¥¿¡¼¥²¥Ã¥ÈJVM¥×¥í¥»¥¹¤ËÂФ¹¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥×¥í¥»¥¹¼±Ê̻ҤǤ¹¤¬¡¢É¬¤º¤·¤â¤½¤¦¤Ç¤¢¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£\fIjps\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fIlvmid\fR¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢UNIX¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï\fIps\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢Windows¤Ç¤ÏWindows¥¿¥¹¥¯¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»ÈÍѤ·¤Æ¡¢\fIlvmid\fR¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£
+ターゲットJVMã®ãƒ­ãƒ¼ã‚«ãƒ«ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã§ã™ã€‚\fIlvmid\fRã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®JVMを一æ„ã«è­˜åˆ¥ã™ã‚‹ãƒ—ラットフォーム固有ã®å€¤ã§ã™ã€‚\fIlvmid\fRã¯ã€ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã®å”¯ä¸€ã®å¿…é ˆè¦ç´ ã§ã™ã€‚\fIlvmid\fRã¯ã€ä¸€èˆ¬çš„ã«ã¯ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMプロセスã«å¯¾ã™ã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ãƒ—ロセス識別å­ã§ã™ãŒã€å¿…ãšã—ã‚‚ãã†ã§ã‚ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。\fIjps\fRコマンドを使用ã—ã¦ã€\fIlvmid\fRを特定ã§ãã¾ã™ã€‚ã¾ãŸã€UNIXプラットフォームã§ã¯\fIps\fRコマンドを使用ã—ã¦ã€Windowsã§ã¯Windowsタスク・マãƒãƒ¼ã‚¸ãƒ£ã‚’使用ã—ã¦ã€\fIlvmid\fRを特定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \fIhostname\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤ò¼¨¤¹¥Û¥¹¥È̾¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤Ç¤¹¡£\fIhostname\fRÃͤ¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
+ターゲット・ホストを示ã™ãƒ›ã‚¹ãƒˆåã¾ãŸã¯IPアドレスã§ã™ã€‚\fIhostname\fR値ãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIport\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ë¤¿¤á¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¤¹¡£\fIhostname\fRÃͤ¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤¬\fIprotocol\fRÃͤ˻ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIport\fRÃͤÏ̵»ë¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¥Ý¡¼¥ÈÃͤϡ¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Îrmiregistry¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¼¨¤·¤Þ¤¹¡£\fIport\fRÃͤ¬¾Êά¤µ¤ì¡¢\fIprotocol\fRÃͤÇ\fIrmi\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(1099)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+リモート・サーãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã™ã€‚\fIhostname\fR値ãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルãŒ\fIprotocol\fR値ã«æŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIport\fR値ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIport\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã®\fIrmi\fRプロトコルã®å ´åˆã€ãƒãƒ¼ãƒˆå€¤ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®rmiregistryã®ãƒãƒ¼ãƒˆç•ªå·ã‚’示ã—ã¾ã™ã€‚\fIport\fR値ãŒçœç•¥ã•ã‚Œã€\fIprotocol\fR値ã§\fIrmi\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(1099)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIservername\fR
 .RS 4
-\fIservername\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤ì¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤ÎRMI¥ê¥½¡¼¥¹¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤òɽ¤·¤Þ¤¹¡£
+\fIservername\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚最é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã®å ´åˆã€ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIrmi\fRプロトコルã®å ´åˆã€ã“ã‚Œã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®RMIリソース・オブジェクトã®åå‰ã‚’表ã—ã¾ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-\fIjstat\fR¥³¥Þ¥ó¥É¤Ï¡¢°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤È½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Î2¤Ä¤Î¥¿¥¤¥×¤Î¥ª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Ï´Êñ¤Ê»ÈÍÑΨ¤ª¤è¤Ó¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢Åý·×¥Ç¡¼¥¿½ÐÎϤÎÆâÍƤȷÁ¼°¤¬·è¤Þ¤ê¤Þ¤¹¡£
+\fIjstat\fRコマンドã¯ã€ä¸€èˆ¬çš„ãªã‚ªãƒ—ションã¨å‡ºåŠ›ã‚ªãƒ—ションã®2ã¤ã®ã‚¿ã‚¤ãƒ—ã®ã‚ªãƒ—ションをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚一般的ãªã‚ªãƒ—ションを使用ã—ãŸå ´åˆã€\fIjstat\fRコマンドã¯ç°¡å˜ãªä½¿ç”¨çŽ‡ãŠã‚ˆã³ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¾ã™ã€‚出力オプションã«ã‚ˆã£ã¦ã€çµ±è¨ˆãƒ‡ãƒ¼ã‚¿å‡ºåŠ›ã®å†…容ã¨å½¢å¼ãŒæ±ºã¾ã‚Šã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤È¤½¤Îµ¡Ç½¤Ï¡¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤ÇÊѹ¹¤Þ¤¿¤ÏÇѻߤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SS "°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó"
+ã™ã¹ã¦ã®ã‚ªãƒ—ションã¨ãã®æ©Ÿèƒ½ã¯ã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§å¤‰æ›´ã¾ãŸã¯å»ƒæ­¢ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "一般的ãªã‚ªãƒ—ション"
 .PP
-¤¤¤º¤ì¤«¤Î°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥é¥á¡¼¥¿¤Ï°ìÀÚ»ØÄê¤Ç¤­¤Þ¤»¤ó¡£
+ã„ãšã‚Œã‹ã®ä¸€èˆ¬çš„ãªã‚ªãƒ—ションを指定ã—ãŸå ´åˆã€ä»–ã®ã‚ªãƒ—ションã¾ãŸã¯ãƒ‘ラメータã¯ä¸€åˆ‡æŒ‡å®šã§ãã¾ã›ã‚“。
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-options
 .RS 4
-Static¥ª¥×¥·¥ç¥ó¤Î¥ê¥¹¥È¤òɽ¼¨¤·¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Staticオプションã®ãƒªã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚出力オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "½ÐÎÏ¥ª¥×¥·¥ç¥ó"
+.SS "出力オプション"
 .PP
-°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ë¡¢½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤÎÆâÍƤȷÁ¼°¤ò·èÄꤷ¡¢Ã±°ì¤Î\fIstatOption\fR¤È¤¤¤º¤ì¤«¤Î½ÐÎÏ¥ª¥×¥·¥ç¥ó(\fI\-h\fR¡¢\fI\-t\fR¤ª¤è¤Ó\fI\-J\fR)¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£\fIstatOption\fR¤ÏºÇ½é¤Ëµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+一般的ãªã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã«ã€å‡ºåŠ›ã‚ªãƒ—ションを指定ã§ãã¾ã™ã€‚出力オプションã¯ã€\fIjstat\fRコマンドã®å‡ºåŠ›ã®å†…容ã¨å½¢å¼ã‚’決定ã—ã€å˜ä¸€ã®\fIstatOption\fRã¨ã„ãšã‚Œã‹ã®å‡ºåŠ›ã‚ªãƒ—ション(\fI\-h\fRã€\fI\-t\fRãŠã‚ˆã³\fI\-J\fR)ã§æ§‹æˆã•ã‚Œã¾ã™ã€‚\fIstatOption\fRã¯æœ€åˆã«è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-½ÐÎϤϡ¢³ÆÎ󤬶õÇò¤Ç¶èÀÚ¤é¤ì¤¿É½¤Î·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¥¿¥¤¥È¥ë¤ò´Þ¤à¥Ø¥Ã¥À¡¼¹Ô¤Ë¤è¤Ã¤Æ¡¢³ÆÎó¤Î°ÕÌ£¤¬¤ï¤«¤ê¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Îɽ¼¨ÉÑÅÙ¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢\fI\-h\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Îó¤Î¥Ø¥Ã¥À¡¼Ì¾¤Ï¡¢ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥ó´Ö¤Ç°ì´ÓÀ­¤¬Êݤ¿¤ì¤Æ¤¤¤Þ¤¹¡£°ìÈ̤ˡ¢2¤Ä¤Î¥ª¥×¥·¥ç¥ó¤ÇƱ¤¸Ì¾Á°¤ÎÎ󤬻ÈÍѤµ¤ì¤Æ¤¤¤ì¤Ð¡¢2¤Ä¤ÎÎó¤Î¥Ç¡¼¥¿¡¦¥½¡¼¥¹¤ÏƱ¤¸¤Ç¤¹¡£
+出力ã¯ã€å„列ãŒç©ºç™½ã§åŒºåˆ‡ã‚‰ã‚ŒãŸè¡¨ã®å½¢å¼ã«ãªã‚Šã¾ã™ã€‚タイトルをå«ã‚€ãƒ˜ãƒƒãƒ€ãƒ¼è¡Œã«ã‚ˆã£ã¦ã€å„列ã®æ„味ãŒã‚ã‹ã‚Šã¾ã™ã€‚ヘッダーã®è¡¨ç¤ºé »åº¦ã‚’設定ã™ã‚‹ã«ã¯ã€\fI\-h\fRオプションを使用ã—ã¾ã™ã€‚列ã®ãƒ˜ãƒƒãƒ€ãƒ¼åã¯ã€æ§˜ã€…ãªã‚ªãƒ—ション間ã§ä¸€è²«æ€§ãŒä¿ãŸã‚Œã¦ã„ã¾ã™ã€‚一般ã«ã€2ã¤ã®ã‚ªãƒ—ションã§åŒã˜åå‰ã®åˆ—ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚Œã°ã€2ã¤ã®åˆ—ã®ãƒ‡ãƒ¼ã‚¿ãƒ»ã‚½ãƒ¼ã‚¹ã¯åŒã˜ã§ã™ã€‚
 .PP
-\fI\-t\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Timestamp¤È¤¤¤¦¥é¥Ù¥ë¤ÎÉÕ¤¤¤¿¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÎ󤬡¢½ÐÎϤκǽé¤ÎÎó¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£TimestampÎó¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°¤«¤é¤Î·Ð²á»þ´Ö¤¬¡¢ÉÃñ°Ì¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÀºÅ٤ϡ¢ÍÍ¡¹¤ÊÍ×°ø¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¡¢ÂçÎ̤ÎÉé²Ù¤Î¤«¤«¤Ã¤¿¥·¥¹¥Æ¥à¤Ç¤Î¥¹¥ì¥Ã¥É¡¦¥¹¥±¥¸¥å¡¼¥ë¤ÎÃÙ±ä¤Ë¤è¤êÊÑÆ°¤·¤Þ¤¹¡£
+\fI\-t\fRオプションを使用ã™ã‚‹ã¨ã€Timestampã¨ã„ã†ãƒ©ãƒ™ãƒ«ã®ä»˜ã„ãŸã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®åˆ—ãŒã€å‡ºåŠ›ã®æœ€åˆã®åˆ—ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚Timestamp列ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•ã‹ã‚‰ã®çµŒéŽæ™‚é–“ãŒã€ç§’å˜ä½ã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚タイムスタンプã®ç²¾åº¦ã¯ã€æ§˜ã€…ãªè¦å› ã«ã‚ˆã£ã¦ç•°ãªã‚Šã€å¤§é‡ã®è² è·ã®ã‹ã‹ã£ãŸã‚·ã‚¹ãƒ†ãƒ ã§ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã®é…延ã«ã‚ˆã‚Šå¤‰å‹•ã—ã¾ã™ã€‚
 .PP
-interval¤ª¤è¤Ócount¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ·¤Æ¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤¬¤½¤Î½ÐÎϤòɽ¼¨¤¹¤ëÉÑÅ٤Ȳó¿ô¤ò¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£
+intervalãŠã‚ˆã³countパラメータを使用ã—ã¦ã€\fIjstat\fRコマンドãŒãã®å‡ºåŠ›ã‚’表示ã™ã‚‹é »åº¦ã¨å›žæ•°ã‚’ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤³¤Î·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤ÏºîÀ®¤·¤Ê¤Ç¤¯¤À¤µ¤¤¡£\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥Ä¡¼¥ë¤Î¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¡¢¤½¤Î¥¹¥¯¥ê¥×¥È¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ë¤³¤È¤Ëα°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã“ã®å½¢å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã€\fIjstat\fRコマンドã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トã¯ä½œæˆã—ãªã§ãã ã•ã„。\fIjstat\fRコマンドã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トを作æˆã™ã‚‹å ´åˆã¯ã€ã“ã®ãƒ„ールã®å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã€ãã®ã‚¹ã‚¯ãƒªãƒ—トを変更ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã“ã¨ã«ç•™æ„ã—ã¦ãã ã•ã„。
 .PP
 \-\fIstatOption\fR
 .RS 4
-\fIjstat\fR¥³¥Þ¥ó¥É¤¬É½¼¨¤¹¤ëÅý·×¥Ç¡¼¥¿¾ðÊó¤ò»ØÄꤷ¤Þ¤¹¡£¼¡¤Ë¡¢ÍøÍѲÄǽ¤Ê¥ª¥×¥·¥ç¥ó¤Î°ìÍ÷¤ò¼¨¤·¤Þ¤¹¡£ÆÃÄê¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥¤¥ó¥¹¥È¡¼¥ë¤Î¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤Î\fI\-options\fR¤ò»ÈÍѤ·¤Þ¤¹¡£Stat¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó½ÐÎϤò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjstat\fRコマンドãŒè¡¨ç¤ºã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿æƒ…報を指定ã—ã¾ã™ã€‚次ã«ã€åˆ©ç”¨å¯èƒ½ãªã‚ªãƒ—ションã®ä¸€è¦§ã‚’示ã—ã¾ã™ã€‚特定ã®ãƒ—ラットフォーム・インストールã®ã‚ªãƒ—ションを一覧表示ã™ã‚‹ã«ã¯ã€ä¸€èˆ¬çš„ãªã‚ªãƒ—ションã®\fI\-options\fRを使用ã—ã¾ã™ã€‚StatオプションãŠã‚ˆã³å‡ºåŠ›ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fIclass\fR: ¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIclass\fR: クラス・ローダーã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIcompiler\fR: Java HotSpot VM Just\-in\-Time¥³¥ó¥Ñ¥¤¥é¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIcompiler\fR: Java HotSpot VM Just\-in\-Timeコンパイラã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgc\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥È¤µ¤ì¤¿¥Ò¡¼¥×¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgc\fR: ガベージ・コレクトã•ã‚ŒãŸãƒ’ープã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgccapacity\fR: À¤Â头¤È¤ÎÍÆÎ̤ÈÂбþ¤¹¤ëÎΰè¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgccapacity\fR: 世代ã”ã¨ã®å®¹é‡ã¨å¯¾å¿œã™ã‚‹é ˜åŸŸã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgccause\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼(\fI\-gcutil\fR¤ÈƱ¤¸)¤È¡¢Ä¾Á°¤ª¤è¤Ó¸½ºß(ŬÍѲÄǽ¤Ê¾ì¹ç)¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¸¶°ø¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgccause\fR: ガベージ・コレクション統計データã®ã‚µãƒžãƒªãƒ¼(\fI\-gcutil\fRã¨åŒã˜)ã¨ã€ç›´å‰ãŠã‚ˆã³ç¾åœ¨(é©ç”¨å¯èƒ½ãªå ´åˆ)ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®åŽŸå› ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcnew\fR: NewÀ¤Âå¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcnew\fR: New世代ã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcnewcapacity\fR: NewÀ¤Âå¤Î¥µ¥¤¥º¤ÈÂбþ¤¹¤ëÎΰè¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcnewcapacity\fR: New世代ã®ã‚µã‚¤ã‚ºã¨å¯¾å¿œã™ã‚‹é ˜åŸŸã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcold\fR: OldÀ¤Âå¤ÎÆ°ºî¤È¥á¥¿¥¹¥Ú¡¼¥¹¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcold\fR: Old世代ã®å‹•ä½œã¨ãƒ¡ã‚¿ã‚¹ãƒšãƒ¼ã‚¹ã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcoldcapacity\fR: OldÀ¤Âå¤Î¥µ¥¤¥º¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcoldcapacity\fR: Old世代ã®ã‚µã‚¤ã‚ºã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcmetacapacity\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î¥µ¥¤¥º¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcmetacapacity\fR: メタスペースã®ã‚µã‚¤ã‚ºã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcutil\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¥µ¥Þ¥ê¡¼¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcutil\fR: ガベージ・コレクションã®ã‚µãƒžãƒªãƒ¼ã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIprintcompilation\fR: Java HotSpot VM¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤ÎÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIprintcompilation\fR: Java HotSpot VMコンパイル・メソッドã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h \fIn\fR
 .RS 4
-\fIn\fR¥µ¥ó¥×¥ë(½ÐÎϹÔ)¤´¤È¤ËÎó¥Ø¥Ã¥À¡¼¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIn\fR¤ÏÀµ¤ÎÀ°¿ôÃͤǤ¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ0¤Ç¤¹¡£¤³¤Î¾ì¹ç¡¢¥Ç¡¼¥¿¤ÎºÇ½é¤Î¹Ô¤Î¾å¤ËÎó¥Ø¥Ã¥À¡¼¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIn\fRサンプル(出力行)ã”ã¨ã«åˆ—ヘッダーを表示ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIn\fRã¯æ­£ã®æ•´æ•°å€¤ã§ã™ã€‚デフォルト値ã¯0ã§ã™ã€‚ã“ã®å ´åˆã€ãƒ‡ãƒ¼ã‚¿ã®æœ€åˆã®è¡Œã®ä¸Šã«åˆ—ヘッダーãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-t
 .RS 4
-¥¿¥¤¥à¥¹¥¿¥ó¥×Îó¤ò½ÐÎϤκǽé¤ÎÎó¤È¤·¤Æɽ¼¨¤·¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°»þ¤«¤é¤Î·Ð²á»þ´Ö¤Ç¤¹¡£
+タイムスタンプ列を出力ã®æœ€åˆã®åˆ—ã¨ã—ã¦è¡¨ç¤ºã—ã¾ã™ã€‚タイムスタンプã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•æ™‚ã‹ã‚‰ã®çµŒéŽæ™‚é–“ã§ã™ã€‚
 .RE
 .PP
 \-J\fIjavaOption\fR
 .RS 4
-\fIjavaOption\fR¤òJava¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤ËÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î´°Á´¤Ê¥ê¥¹¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavaOption\fRã‚’Javaアプリケーション起動ツールã«æ¸¡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚オプションã®å®Œå…¨ãªãƒªã‚¹ãƒˆã«ã¤ã„ã¦ã¯ã€java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "Stat¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó½ÐÎÏ"
+.SS "StatオプションãŠã‚ˆã³å‡ºåŠ›"
 .PP
-¼¡¤Î¾ðÊó¤Ï¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤¬³Æ\fIstatOption\fR¤Ë¤Ä¤¤¤Æ½ÐÎϤ¹¤ëÎó¤ò¤Þ¤È¤á¤¿¤â¤Î¤Ç¤¹¡£
+次ã®æƒ…å ±ã¯ã€\fIjstat\fRコマンドãŒå„\fIstatOption\fRã«ã¤ã„ã¦å‡ºåŠ›ã™ã‚‹åˆ—ã‚’ã¾ã¨ã‚ãŸã‚‚ã®ã§ã™ã€‚
 .PP
 \-class \fIoption\fR
 .RS 4
-¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ÎÅý·×¥Ç¡¼¥¿¡£
+クラス・ローダーã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fILoaded\fR: ¥í¡¼¥É¤µ¤ì¤¿¥¯¥é¥¹¤Î¿ô¡£
+\fILoaded\fR: ロードã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®æ•°ã€‚
 .sp
-\fIBytes\fR: ¥í¡¼¥É¤µ¤ì¤¿KB¤Î¿ô¡£
+\fIBytes\fR: ロードã•ã‚ŒãŸKBã®æ•°ã€‚
 .sp
-\fIUnloaded\fR: ¥¢¥ó¥í¡¼¥É¤µ¤ì¤¿¥¯¥é¥¹¤Î¿ô¡£
+\fIUnloaded\fR: アンロードã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®æ•°ã€‚
 .sp
-\fIBytes\fR: ¥¢¥ó¥í¡¼¥É¤µ¤ì¤¿KB¤Î¿ô¡£
+\fIBytes\fR: アンロードã•ã‚ŒãŸKBã®æ•°ã€‚
 .sp
-\fITime\fR: ¥¯¥é¥¹¤Î¥í¡¼¥É¤ä¥¢¥ó¥í¡¼¥É½èÍý¤ËÍפ·¤¿»þ´Ö¡£
+\fITime\fR: クラスã®ãƒ­ãƒ¼ãƒ‰ã‚„アンロード処ç†ã«è¦ã—ãŸæ™‚間。
 .RE
 .PP
 \-compiler \fIoption\fR
 .RS 4
-Java HotSpot VM Just\-in\-Time¥³¥ó¥Ñ¥¤¥é¤ÎÅý·×¥Ç¡¼¥¿¡£
+Java HotSpot VM Just\-in\-Timeコンパイラã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fICompiled\fR: ¼Â¹Ô¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fICompiled\fR: 実行ã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fIFailed\fR: ¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fIFailed\fR: 失敗ã—ãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fIInvalid\fR: ̵¸ú¤Ë¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fIInvalid\fR: 無効ã«ã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fITime\fR: ¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¼Â¹Ô¤ËÍפ·¤¿»þ´Ö¡£
+\fITime\fR: コンパイル・タスクã®å®Ÿè¡Œã«è¦ã—ãŸæ™‚間。
 .sp
-\fIFailedType\fR: ºÇ¸å¤Ë¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¤¥×¡£
+\fIFailedType\fR: 最後ã«å¤±æ•—ã—ãŸã‚³ãƒ³ãƒ‘イルã®ã‚³ãƒ³ãƒ‘イル・タイプ。
 .sp
-\fIFailedMethod\fR: ºÇ¸å¤Ë¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¤Î¥¯¥é¥¹Ì¾¤È¥á¥½¥Ã¥É¡£
+\fIFailedMethod\fR: 最後ã«å¤±æ•—ã—ãŸã‚³ãƒ³ãƒ‘イルã®ã‚¯ãƒ©ã‚¹åã¨ãƒ¡ã‚½ãƒƒãƒ‰ã€‚
 .RE
 .PP
 \-gc \fIoption\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥È¤µ¤ì¤¿¥Ò¡¼¥×¤ÎÅý·×¥Ç¡¼¥¿¡£
+ガベージ・コレクトã•ã‚ŒãŸãƒ’ープã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0U\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(KB)¡£
+\fIS0U\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIS1U\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(KB)¡£
+\fIS1U\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEU\fR: EdenÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIEU\fR: Eden領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOU\fR: OldÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIOU\fR: Old領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIMU\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(KB)¡£
+\fIMU\fR: メタスペースã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®æ•°ã€‚
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gccapacity \fIoption\fR
 .RS 4
-¥á¥â¥ê¡¼¡¦¥×¡¼¥ëÀ¤Â太¤è¤ÓÎΰèÍÆÎÌ¡£
+メモリー・プール世代ãŠã‚ˆã³é ˜åŸŸå®¹é‡ã€‚
 .sp
-\fINGCMN\fR: NewÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fINGCMN\fR: New世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fINGCMX\fR: NewÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fINGCMX\fR: New世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fINGC\fR: NewÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fINGC\fR: New世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOGCMN\fR: OldÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIOGCMN\fR: Old世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIOGCMX\fR: OldÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIOGCMX\fR: Old世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIOGC\fR: OldÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOGC\fR: Old世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIMCMN\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIMCMN\fR: メタスペースã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIMCMX\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIMCMX\fR: メタスペースã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .RE
 .PP
 \-gccause \fIoption\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¤¬¡¢ºÇ¸å¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤È(ŬÍѲÄǽ¤Ê¾ì¹ç¤Ï)¸½ºß¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¸¶°ø¤¬´Þ¤Þ¤ì¤Þ¤¹¡£\fI\-gcutil\fR¤Ç°ìÍ÷ɽ¼¨¤µ¤ì¤ëÎó¤Î¤Û¤«¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¼¡¤ÎÎó¤¬Äɲ䵤ì¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-gcutil\fRオプションã¨åŒã˜ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ãŒã€æœ€å¾Œã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã¨(é©ç”¨å¯èƒ½ãªå ´åˆã¯)ç¾åœ¨ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®åŽŸå› ãŒå«ã¾ã‚Œã¾ã™ã€‚\fI\-gcutil\fRã§ä¸€è¦§è¡¨ç¤ºã•ã‚Œã‚‹åˆ—ã®ã»ã‹ã€ã“ã®ã‚ªãƒ—ションã§ã¯æ¬¡ã®åˆ—ãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .sp
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤ò´Þ¤à¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¡£
+ガベージ・コレクション・イベントをå«ã‚€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fILGCC\fR: ºÇ¸å¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸¶°ø¡£
+\fILGCC\fR: 最後ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®åŽŸå› ã€‚
 .sp
-\fIGCC\fR: ¸½ºß¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸¶°ø¡£
+\fIGCC\fR: ç¾åœ¨ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®åŽŸå› ã€‚
 .RE
 .PP
 \-gcnew \fIoption\fR
 .RS 4
-NewÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+New世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0U\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(KB)¡£
+\fIS0U\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIS1U\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(KB)¡£
+\fIS1U\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fITT\fR: ÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ¡£
+\fITT\fR: 殿堂入りã—ãã„値。
 .sp
-\fIMTT\fR: ºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ¡£
+\fIMTT\fR: 最大殿堂入りã—ãã„値。
 .sp
-\fIDSS\fR: ŬÀÚ¤ÊSurvivor¥µ¥¤¥º(KB)¡£
+\fIDSS\fR: é©åˆ‡ãªSurvivorサイズ(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEU\fR: EdenÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIEU\fR: Eden領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .RE
 .PP
 \-gcnewcapacity \fIoption\fR
 .RS 4
-NewÀ¤ÂåÎΰ襵¥¤¥º¤ÎÅý·×¥Ç¡¼¥¿¡£
+New世代領域サイズã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-NGCMN: NewÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+NGCMN: New世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fINGCMX\fR: NewÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fINGCMX\fR: New世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fINGC\fR: NewÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fINGC\fR: New世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0CMX\fR: SurvivorÎΰè0¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIS0CMX\fR: Survivor領域0ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1CMX\fR: SurvivorÎΰè1¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIS1CMX\fR: Survivor領域1ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIECMX\fR: EdenÎΰè¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIECMX\fR: Eden領域ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .RE
 .PP
 \-gcold \fIoption\fR
 .RS 4
-Old¤ª¤è¤ÓPermanentÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+OldãŠã‚ˆã³Permanent世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIMU\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(KB)¡£
+\fIMU\fR: メタスペースã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOU\fR: OldÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIOU\fR: Old領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcoldcapacity \fIoption\fR
 .RS 4
-OldÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+Old世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIOGCMN\fR: OldÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIOGCMN\fR: Old世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIOGCMX\fR: OldÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIOGCMX\fR: Old世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIOGC\fR: OldÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOGC\fR: Old世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcmetacapacity \fIoption\fR
 .RS 4
-PermanentÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+Permanent世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIMCMN\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIMCMN\fR: メタスペースã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIMCMX\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIMCMX\fR: メタスペースã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcutil \fIoption\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼
+ガベージ・コレクション統計データã®ã‚µãƒžãƒªãƒ¼
 .sp
-\fIS0\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIS0\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIS1\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIS1\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIE\fR: EdenÎΰè¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIE\fR: Eden領域ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIO\fR: OldÎΰè¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIO\fR: Old領域ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIM\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(Îΰè¤Î¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIM\fR: メタスペースã®ä½¿ç”¨çŽ‡(領域ã®ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-printcompilation \fIoption\fR
 .RS 4
-Java HotSpot VM¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤ÎÅý·×¥Ç¡¼¥¿¡£
+Java HotSpot VMコンパイル・メソッドã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fICompiled\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fICompiled\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã§å®Ÿè¡Œã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fISize\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¥Ð¥¤¥È¡¦¥³¡¼¥É¤Î¥Ð¥¤¥È¿ô¡£
+\fISize\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒã‚¤ãƒˆãƒ»ã‚³ãƒ¼ãƒ‰ã®ãƒã‚¤ãƒˆæ•°ã€‚
 .sp
-\fIType\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¤¥×¡£
+\fIType\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル・タイプ。
 .sp
-\fIMethod\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤òÆÃÄꤹ¤ë¥¯¥é¥¹Ì¾¤È¥á¥½¥Ã¥É̾¡£¥¯¥é¥¹Ì¾¤Ç¤Ï¡¢Ì¾Á°¶õ´Ö¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ¡¢¥É¥Ã¥È(\&.)¤Î¤«¤ï¤ê¤Ë¥¹¥é¥Ã¥·¥å(/)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥á¥½¥Ã¥É̾¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹Æâ¤Î¥á¥½¥Ã¥É¤Ç¤¹¡£¤³¤ì¤é¤Î2¤Ä¤Î¥Õ¥£¡¼¥ë¥É¤Î·Á¼°¤Ï¡¢HotSpot
-\fI\-XX:+PrintComplation\fR¥ª¥×¥·¥ç¥ó¤ÈÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIMethod\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’特定ã™ã‚‹ã‚¯ãƒ©ã‚¹åã¨ãƒ¡ã‚½ãƒƒãƒ‰å。クラスåã§ã¯ã€åå‰ç©ºé–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã€ãƒ‰ãƒƒãƒˆ(\&.)ã®ã‹ã‚ã‚Šã«ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚メソッドåã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹å†…ã®ãƒ¡ã‚½ãƒƒãƒ‰ã§ã™ã€‚ã“れらã®2ã¤ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å½¢å¼ã¯ã€HotSpot
+\fI\-XX:+PrintComplation\fRオプションã¨å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¤³¤Î¹à¤Ç¤Ï¡¢21891¤Î\fIlvmid\fR¤ò»ý¤Ä¥í¡¼¥«¥ëJVM¤ò¥â¥Ë¥¿¥ê¥ó¥°¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£
-.SS "gcutil¥ª¥×¥·¥ç¥ó"
+ã“ã®é …ã§ã¯ã€21891ã®\fIlvmid\fRã‚’æŒã¤ãƒ­ãƒ¼ã‚«ãƒ«JVMをモニタリングã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚
+.SS "gcutilオプション"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid 21891¤ËÀܳ¤·¤Æ¡¢250¥ß¥êÉôֳ֤Ç7¤Ä¤Î¥µ¥ó¥×¥ë¤ò¼èÆÀ¤·¡¢\-\fIgcutil\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î»ØÄê¤Ë½¾¤Ã¤Æ½ÐÎϤòɽ¼¨¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid 21891ã«æŽ¥ç¶šã—ã¦ã€250ミリ秒間隔ã§7ã¤ã®ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã€\-\fIgcutil\fRオプションã§ã®æŒ‡å®šã«å¾“ã£ã¦å‡ºåŠ›ã‚’表示ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Î½ÐÎϤϡ¢¼ã¤¤À¤Âå¤Î¥³¥ì¥¯¥·¥ç¥ó¤¬3ÈÖÌܤÈ4ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤Ç¹Ô¤ï¤ì¤¿¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ï0\&.001É䫤«¤Ã¤Æ¤ª¤ê¡¢¥ª¥Ö¥¸¥§¥¯¥È¤¬EdenÎΰè(E)¤«¤éOldÎΰè(O)¤Ë¾º³Ê¤·¤¿¤¿¤á¡¢OldÎΰè¤Î»ÈÍÑΨ¤Ï9\&.49%¤«¤é9\&.51%¤ËÁý²Ã¤·¤Æ¤¤¤Þ¤¹¡£SurvivorÎΰè¤Ï¡¢¥³¥ì¥¯¥·¥ç¥óÁ°¤Ï12\&.44%¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢¥³¥ì¥¯¥·¥ç¥ó¸å¤Î»ÈÍѤÏ7\&.74%¤Î¤ß¤Ç¤¹¡£
+ã“ã®ä¾‹ã®å‡ºåŠ›ã¯ã€è‹¥ã„世代ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒ3番目ã¨4番目ã®ã‚µãƒ³ãƒ—ル間ã§è¡Œã‚ã‚ŒãŸã“ã¨ã‚’示ã—ã¦ã„ã¾ã™ã€‚コレクションã«ã¯0\&.001秒ã‹ã‹ã£ã¦ãŠã‚Šã€ã‚ªãƒ–ジェクトãŒEden領域(E)ã‹ã‚‰Old領域(O)ã«æ˜‡æ ¼ã—ãŸãŸã‚ã€Old領域ã®ä½¿ç”¨çŽ‡ã¯9\&.49%ã‹ã‚‰9\&.51%ã«å¢—加ã—ã¦ã„ã¾ã™ã€‚Survivor領域ã¯ã€ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å‰ã¯12\&.44%ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã—ãŸãŒã€ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å¾Œã®ä½¿ç”¨ã¯7\&.74%ã®ã¿ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -508,13 +508,13 @@
 .if n \{\
 .RE
 .\}
-.SS "Îó¥Ø¥Ã¥À¡¼Ê¸»úÎó¤Î·«ÊÖ¤·"
+.SS "列ヘッダー文字列ã®ç¹°è¿”ã—"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid 21891¤ËÀܳ¤·¤Æ¡¢250¥ß¥êÉôֳ֤ǥµ¥ó¥×¥ë¤ò¼èÆÀ¤·¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î»ØÄê¤Ë½¾¤Ã¤Æ½ÐÎϤòɽ¼¨¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fI\-h3\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ç¡¼¥¿¤¬3¹Ôɽ¼¨¤µ¤ì¤ë¤´¤È¤ËÎó¥Ø¥Ã¥À¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid 21891ã«æŽ¥ç¶šã—ã¦ã€250ミリ秒間隔ã§ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã€\fI\-gcutil\fRオプションã§ã®æŒ‡å®šã«å¾“ã£ã¦å‡ºåŠ›ã‚’表示ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€\fI\-h3\fRオプションを使用ã—ã¦ã€ãƒ‡ãƒ¼ã‚¿ãŒ3行表示ã•ã‚Œã‚‹ã”ã¨ã«åˆ—ヘッダーを出力ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ø¥Ã¥À¡¼Ê¸»úÎó¤Î·«ÊÖ¤·¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ë¤Û¤«¡¢2ÈÖÌܤÈ3ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤ÇYoung GC¤¬¹Ô¤ï¤ì¤¿¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£¤³¤Î·Ñ³»þ´Ö¤Ï0\&.001ÉäǤ·¤¿¡£¤³¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¡¢SurvivorÎΰè0¤Î»ÈÍÑΨ(S0U)¤¬Å¬ÀÚ¤ÊSurvivor¥µ¥¤¥º(DSS)¤òĶ²á¤¹¤ë¤³¤È¤Ë¤Ê¤ë¥¢¥¯¥Æ¥£¥Ö¡¦¥Ç¡¼¥¿¤¬¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£¤³¤Î·ë²Ì¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢OldÀ¤Âå(¤³¤Î½ÐÎϤˤÏÈóɽ¼¨)¤Ø¾º³Ê¤µ¤ì¡¢ÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ(TT)¤¬¡¢31¤«¤é2¤Ø¹ß³Ê¤µ¤ì¤Þ¤·¤¿¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒ˜ãƒƒãƒ€ãƒ¼æ–‡å­—列ã®ç¹°è¿”ã—ãŒè¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã»ã‹ã€2番目ã¨3番目ã®ã‚µãƒ³ãƒ—ル間ã§Young GCãŒè¡Œã‚ã‚ŒãŸã“ã¨ãŒã‚ã‹ã‚Šã¾ã™ã€‚ã“ã®ç¶™ç¶šæ™‚é–“ã¯0\&.001秒ã§ã—ãŸã€‚ã“ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€Survivor領域0ã®ä½¿ç”¨çŽ‡(S0U)ãŒé©åˆ‡ãªSurvivorサイズ(DSS)を超éŽã™ã‚‹ã“ã¨ã«ãªã‚‹ã‚¢ã‚¯ãƒ†ã‚£ãƒ–・データãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚ã“ã®çµæžœã€ã‚ªãƒ–ジェクトã¯ã€Old世代(ã“ã®å‡ºåŠ›ã«ã¯éžè¡¨ç¤º)ã¸æ˜‡æ ¼ã•ã‚Œã€æ®¿å ‚入りã—ãã„値(TT)ãŒã€31ã‹ã‚‰2ã¸é™æ ¼ã•ã‚Œã¾ã—ãŸã€‚
 .PP
-Ê̤Υ³¥ì¥¯¥·¥ç¥ó¤¬¡¢5ÈÖÌܤÈ6ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤Ç¹Ô¤ï¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¡¢Survivor¤¬¤Û¤È¤ó¤É¸«¤é¤ì¤º¡¢ÅÂƲÆþ¤ê¤·¤­¤¤Ãͤò31¤ËÌᤷ¤Þ¤·¤¿¡£
+別ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒã€5番目ã¨6番目ã®ã‚µãƒ³ãƒ—ル間ã§è¡Œã‚ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€SurvivorãŒã»ã¨ã‚“ã©è¦‹ã‚‰ã‚Œãšã€æ®¿å ‚入りã—ãã„値を31ã«æˆ»ã—ã¾ã—ãŸã€‚
 .sp
 .if n \{\
 .RS 4
@@ -535,11 +535,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¥µ¥ó¥×¥ë¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÁÞÆþ"
+.SS "サンプルã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®æŒ¿å…¥"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid21891¤ØÀܳ¤·¡¢250¥ß¥êÉôֳ֤Ç3¤Ä¤Î¥µ¥ó¥×¥ë¤ò¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£\fI\-t\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢ºÇ½é¤ÎÎó¤Ë¥µ¥ó¥×¥ë¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤òɽ¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid21891ã¸æŽ¥ç¶šã—ã€250ミリ秒間隔ã§3ã¤ã®ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã¦ã„ã¾ã™ã€‚\fI\-t\fRオプションを使用ã—ã¦ã€æœ€åˆã®åˆ—ã«ã‚µãƒ³ãƒ—ルã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—を表示ã—ã¦ã„ã¾ã™ã€‚
 .PP
-TimestampÎó¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°»þ¤«¤é¤Î·Ð²á»þ´Ö¤¬¡¢ÉÃñ°Ì¤Ç¥ì¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fI\-gcoldcapacity\fR½ÐÎϤǤϡ¢³äÅö¥ê¥¯¥¨¥¹¥È¤Þ¤¿¤Ï¾º³Ê¥ê¥¯¥¨¥¹¥È¤¢¤ë¤¤¤Ï¤½¤ÎξÊý¤òËþ¤¿¤¹¤¿¤á¤Ë¥Ò¡¼¥×¤¬³ÈÄ¥¤¹¤ë¤¿¤Ó¤Ë¡¢OldÀ¤Âå¤ÎÍÆÎÌ(OGC)¤ÈOldÎΰè¤ÎÍÆÎÌ(OC)¤È¤¬Áý²Ã¤·¤Æ¤¤¤ë¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£81ÈÖÌܤΥե롦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(FGC)¤Î¸å¡¢OldÀ¤Âå¤ÎÍÆÎÌ(OGC)¤Ï11,696 KB¤«¤é13820 KB¤ËÁý²Ã¤·¤Þ¤·¤¿¡£¤³¤ÎÀ¤Âå(¤ª¤è¤ÓÎΰè)¤ÎºÇÂçÍÆÎ̤ϡ¢60,544 KB (OGCMX)¤Ê¤Î¤Ç¡¢¤Þ¤À³ÈÄ¥¤Ç¤­¤ë;͵¤¬»Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+Timestamp列ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•æ™‚ã‹ã‚‰ã®çµŒéŽæ™‚é–“ãŒã€ç§’å˜ä½ã§ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ã•ã‚‰ã«ã€\fI\-gcoldcapacity\fR出力ã§ã¯ã€å‰²å½“リクエストã¾ãŸã¯æ˜‡æ ¼ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚ã‚‹ã„ã¯ãã®ä¸¡æ–¹ã‚’満ãŸã™ãŸã‚ã«ãƒ’ープãŒæ‹¡å¼µã™ã‚‹ãŸã³ã«ã€Old世代ã®å®¹é‡(OGC)ã¨Old領域ã®å®¹é‡(OC)ã¨ãŒå¢—加ã—ã¦ã„ã‚‹ã“ã¨ãŒã‚ã‹ã‚Šã¾ã™ã€‚81番目ã®ãƒ•ãƒ«ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(FGC)ã®å¾Œã€Old世代ã®å®¹é‡(OGC)ã¯11,696 KBã‹ã‚‰13820 KBã«å¢—加ã—ã¾ã—ãŸã€‚ã“ã®ä¸–代(ãŠã‚ˆã³é ˜åŸŸ)ã®æœ€å¤§å®¹é‡ã¯ã€60,544 KB (OGCMX)ãªã®ã§ã€ã¾ã æ‹¡å¼µã§ãる余裕ãŒæ®‹ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -553,11 +553,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¥ê¥â¡¼¥ÈJVM¤Î¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Î´Æ»ë"
+.SS "リモートJVMã®ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã®ç›£è¦–"
 .PP
-¤³¤ÎÎã¤Ï¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢remote\&.domain¤È¤¤¤¦¥·¥¹¥Æ¥à¾å¤Îlvmid 40496¤ËÀܳ¤·¡¢¥µ¥ó¥×¥ë¤òÉÃñ°Ì¤Ç̵´ü¸Â¤Ë¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€\fI\-gcutil\fRオプションを使用ã—ã¦ã€remote\&.domainã¨ã„ã†ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®lvmid 40496ã«æŽ¥ç¶šã—ã€ã‚µãƒ³ãƒ—ルを秒å˜ä½ã§ç„¡æœŸé™ã«å–å¾—ã—ã¦ã„ã¾ã™ã€‚
 .PP
-lvmid¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î̾Á°¤È·ë¹ç¤µ¤ì¤Æ¡¢\fI40496@remote\&.domain\fR¤Î\fIvmid\fR¤ò¹½À®¤·¤Æ¤¤¤Þ¤¹¡£·ë²Ì¤È¤·¤Æ¡¢¤³¤Îvmid¤Ï¡¢\fIrmi\fR¥×¥í¥È¥³¥ë¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Î¥Ç¥Õ¥©¥ë¥È¤Î\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤·¤Þ¤¹¡£\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢rmiregistry¤ò»ÈÍѤ·¤Æ¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIremote\&.domain\fR¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+lvmidã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®åå‰ã¨çµåˆã•ã‚Œã¦ã€\fI40496@remote\&.domain\fRã®\fIvmid\fRを構æˆã—ã¦ã„ã¾ã™ã€‚çµæžœã¨ã—ã¦ã€ã“ã®vmidã¯ã€\fIrmi\fRプロトコルを使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIjstatd\fRサーãƒãƒ¼ã¨é€šä¿¡ã—ã¾ã™ã€‚\fIjstatd\fRサーãƒãƒ¼ã¯ã€rmiregistryを使用ã—ã¦ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIremote\&.domain\fRã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -569,7 +569,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jstatd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jstatd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstatd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstatd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstatd" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstatd \- Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ò¥â¥Ë¥¿¡¼¤·¡¢¥ê¥â¡¼¥È¡¦¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë¤¬JVM¤ËÀܳ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstatd \- Java仮想マシン(JVM)をモニターã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ãƒ„ールãŒJVMã«æŽ¥ç¶šã§ãるよã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,47 +64,47 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstatd\fR¥³¥Þ¥ó¥É¤Ï¡¢·×¬¤µ¤ì¤¿Java HotSpot VM¤ÎºîÀ®¤È½ªÎ»¤ò¥â¥Ë¥¿¡¼¤·¡¢¥í¡¼¥«¥ë¡¦¥·¥¹¥Æ¥à¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëJVM¤Ë¡¢¥ê¥â¡¼¥È¡¦¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë¤¬Àܳ¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤¹¤ëRMI¥µ¡¼¥Ð¡¼¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤¹¡£
+\fIjstatd\fRコマンドã¯ã€è¨ˆæ¸¬ã•ã‚ŒãŸJava HotSpot VMã®ä½œæˆã¨çµ‚了をモニターã—ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹JVMã«ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ãƒ„ールãŒæŽ¥ç¶šã§ãるよã†ã«ã™ã‚‹ãŸã‚ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã™ã‚‹RMIサーãƒãƒ¼ãƒ»ã‚¢ãƒ—リケーションã§ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ç¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤ËRMI¥ì¥¸¥¹¥È¥ê¤¬É¬Íפˤʤê¤Þ¤¹¡£\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¡¢¤Þ¤¿¤Ï\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤¿¥Ý¡¼¥È¤Ç¡¢RMI¥ì¥¸¥¹¥È¥ê¤ËÀܳ¤·¤è¤¦¤È¤·¤Þ¤¹¡£RMI¥ì¥¸¥¹¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Ý¡¼¥È¡¢¤Þ¤¿¤Ï\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥ÈRMI¥ì¥¸¥¹¥È¥ê¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIjstatd\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Ë¡¢1¤Ä¤ÎRMI¥ì¥¸¥¹¥È¥ê¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤ÎºîÀ®¤Ï¡¢\fI\-nr\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤ÆÃæ»ß¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjstatd\fRサーãƒãƒ¼ã§ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«RMIレジストリãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚\fIjstatd\fRサーãƒãƒ¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã€ã¾ãŸã¯\fI\-p\fR
+\fIport\fRオプションã§æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆã§ã€RMIレジストリã«æŽ¥ç¶šã—よã†ã¨ã—ã¾ã™ã€‚RMIレジストリãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€\fI\-p\fR
+\fIport\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒãƒ¼ãƒˆã€ã¾ãŸã¯\fI\-p\fR
+\fIport\fRオプションãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆRMIレジストリã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIjstatd\fRアプリケーション内ã«ã€1ã¤ã®RMIレジストリãŒä½œæˆã•ã‚Œã¾ã™ã€‚内部RMIレジストリã®ä½œæˆã¯ã€\fI\-nr\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ä¸­æ­¢ã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-nr
 .RS 4
-´û¸¤ÎRMI¥ì¥¸¥¹¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢\fIjstatd\fR¥×¥í¥»¥¹Æâ¤ËÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤òºîÀ®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+既存ã®RMIレジストリãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€\fIjstatd\fRプロセス内ã«å†…部RMIレジストリを作æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-p \fIport\fR
 .RS 4
-RMI¥ì¥¸¥¹¥È¥ê¤¬¤¢¤ë¤ÈͽÁÛ¤µ¤ì¤ë¥Ý¡¼¥ÈÈÖ¹æ¤Ç¤¹¡£¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-nr\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤µ¤ì¤Þ¤¹¡£
+RMIレジストリãŒã‚ã‚‹ã¨äºˆæƒ³ã•ã‚Œã‚‹ãƒãƒ¼ãƒˆç•ªå·ã§ã™ã€‚見ã¤ã‹ã‚‰ãªã„å ´åˆã¯ã€\fI\-nr\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã‘ã‚Œã°ä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-n \fIrminame\fR
 .RS 4
-RMI¥ì¥¸¥¹¥È¥ê¤Ë¤ª¤¤¤Æ¡¢¥ê¥â¡¼¥ÈRMI¥ª¥Ö¥¸¥§¥¯¥È¤¬¥Ð¥¤¥ó¥É¤µ¤ì¤ë̾Á°¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È̾¤Ï\fIJStatRemoteHost\fR¤Ç¤¹¡£Ê£¿ô¤Î\fIjstatd\fR¥µ¡¼¥Ð¡¼¤¬Æ±¤¸¥Û¥¹¥È¾å¤Çµ¯Æ°¤·¤Æ¤¤¤ë¾ì¹ç¡¢³Æ¥µ¡¼¥Ð¡¼¤Î¥¨¥¯¥¹¥Ý¡¼¥È¤·¤¿RMI¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢°ì°Õ¤Î̾Á°¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥â¥Ë¥¿¥ê¥ó¥°¡¦¥¯¥é¥¤¥¢¥ó¥È¤Î\fIhostid\fR¤ª¤è¤Ó\fIvmid\fRʸ»úÎó¤Ë¡¢¤½¤Î°ì°Õ¤Î¥µ¡¼¥Ð¡¼Ì¾¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+RMIレジストリã«ãŠã„ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆRMIオブジェクトãŒãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã‚‹åå‰ã§ã™ã€‚デフォルトåã¯\fIJStatRemoteHost\fRã§ã™ã€‚複数ã®\fIjstatd\fRサーãƒãƒ¼ãŒåŒã˜ãƒ›ã‚¹ãƒˆä¸Šã§èµ·å‹•ã—ã¦ã„ã‚‹å ´åˆã€å„サーãƒãƒ¼ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ãŸRMIオブジェクトã®åå‰ã¯ã€ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸€æ„ã®åå‰ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹å ´åˆã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®\fIhostid\fRãŠã‚ˆã³\fIvmid\fR文字列ã«ã€ãã®ä¸€æ„ã®ã‚µãƒ¼ãƒãƒ¼åã‚’å«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë\fI¥ª¥×¥·¥ç¥ó\fR¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã‚‹\fIオプション\fRã‚’1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥»¥­¥å¥ê¥Æ¥£"
+.SH "セキュリティ"
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢Å¬Àڤʥͥ¤¥Æ¥£¥Ö¡¦¥¢¥¯¥»¥¹¸¢¤ò»ý¤ÄJVM¤Î¤ß¤ò´Æ»ë¤Ç¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fIjstatd\fR¥×¥í¥»¥¹¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤ÈƱ¤¸¥æ¡¼¥¶¡¼»ñ³Ê¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£UNIX¥Ù¡¼¥¹¤Î¥·¥¹¥Æ¥à¤Ë¤ª¤±¤ëroot¥æ¡¼¥¶¡¼¤Ê¤É¤Î°ìÉô¤Î¥æ¡¼¥¶¡¼»ñ³Ê¤Ï¡¢¥·¥¹¥Æ¥à¾å¤ÎǤ°Õ¤ÎJVM¤Ë¤è¤Ã¤Æ¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤¿¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ø¤Î¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê»ñ³Ê¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë\fIjstatd\fR¥×¥í¥»¥¹¤Ï¡¢¥·¥¹¥Æ¥à¾å¤Î¤¹¤Ù¤Æ¤ÎJVM¤ò´Æ»ë¤Ç¤­¤Þ¤¹¤¬¡¢¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÊ̤ÎÌäÂ꤬µ¯¤³¤ê¤Þ¤¹¡£
+\fIjstatd\fRサーãƒãƒ¼ã¯ã€é©åˆ‡ãªãƒã‚¤ãƒ†ã‚£ãƒ–・アクセス権をæŒã¤JVMã®ã¿ã‚’監視ã§ãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fIjstatd\fRプロセスã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã¨åŒã˜ãƒ¦ãƒ¼ã‚¶ãƒ¼è³‡æ ¼ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚UNIXベースã®ã‚·ã‚¹ãƒ†ãƒ ã«ãŠã‘ã‚‹rootユーザーãªã©ã®ä¸€éƒ¨ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼è³‡æ ¼ã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®ä»»æ„ã®JVMã«ã‚ˆã£ã¦ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•ã‚ŒãŸã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ã¦ã„ã¾ã™ã€‚ã“ã®ã‚ˆã†ãªè³‡æ ¼ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹\fIjstatd\fRプロセスã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®ã™ã¹ã¦ã®JVMを監視ã§ãã¾ã™ãŒã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¸Šã®åˆ¥ã®å•é¡ŒãŒèµ·ã“ã‚Šã¾ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ë¤Ï¡¢¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤Îǧ¾Úµ¡Ç½¤¬¤¢¤ê¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¡¦¥×¥í¥»¥¹¤ò¼Â¹Ô¤¹¤ë¤È¡¢\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ä¤¹¤Ù¤Æ¤ÎJVM¤Ë¤è¤ë¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Î¥¨¥¯¥¹¥Ý¡¼¥È¤ò¡¢¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Î¤¹¤Ù¤Æ¤Î¥æ¡¼¥¶¡¼¤Ë¸ø³«¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î̵ËÉÈ÷¤Ê¾õÂ֤ϡ¢´Ä¶­¤Ë¤è¤Ã¤Æ¤Ï˾¤Þ¤·¤¯¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤Î¤Ç¡¢Æä˼²ÔƯ´Ä¶­¤Þ¤¿¤Ï°ÂÁ´¤Ç¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Ç¤Ï¡¢\fIjstatd\fR¥×¥í¥»¥¹¤òµ¯Æ°¤¹¤ëÁ°¤Ë¡¢¥í¡¼¥«¥ë¡¦¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¤ò¸¡Æ¤¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIjstatd\fRサーãƒãƒ¼ã«ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®èªè¨¼æ©Ÿèƒ½ãŒã‚ã‚Šã¾ã›ã‚“。ãã®ãŸã‚ã€\fIjstatd\fRサーãƒãƒ¼ãƒ»ãƒ—ロセスを実行ã™ã‚‹ã¨ã€\fIjstatd\fRプロセスãŒã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã¤ã™ã¹ã¦ã®JVMã«ã‚ˆã‚‹ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ä¸Šã®ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å…¬é–‹ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚ã“ã®ç„¡é˜²å‚™ãªçŠ¶æ…‹ã¯ã€ç’°å¢ƒã«ã‚ˆã£ã¦ã¯æœ›ã¾ã—ããªã„å ´åˆãŒã‚ã‚‹ã®ã§ã€ç‰¹ã«å®Ÿç¨¼åƒç’°å¢ƒã¾ãŸã¯å®‰å…¨ã§ãªã„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§ã¯ã€\fIjstatd\fRプロセスを起動ã™ã‚‹å‰ã«ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ã‚’検討ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢Â¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢\fIRMISecurityPolicy\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html¤Ë¤¢¤ë
-¡Ö¥Ç¥Õ¥©¥ë¥È¤ÎPolicy¤Î¼ÂÁõ¤È¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Î¹½Ê¸¡×¤Ë½àµò¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹
+\fIjstatd\fRサーãƒãƒ¼ã¯ã€ä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„å ´åˆã«ã¯ã€\fIRMISecurityPolicy\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’インストールã—ã¾ã™ã€‚ãã®ãŸã‚ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.htmlã«ã‚ã‚‹
+「デフォルトã®Policyã®å®Ÿè£…ã¨ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æ–‡ã€ã«æº–æ‹ ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™
 .PP
-¼¡¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£Îã³°¤òȯÀ¸¤»¤º¤Ë\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Ý¥ê¥·¡¼¤Ï¡¢¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥Ù¡¼¥¹¤Ø¤Î¤¢¤é¤æ¤ë¥¢¥¯¥»¥¹¸¢¤òǧ¤á¤ë¥Ý¥ê¥·¡¼¤è¤ê¤â¼«Í³ÅÙ¤¬Ä㤤¤Ç¤¹¤¬¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤ËºÇÄã¸ÂɬÍפʥ¢¥¯¥»¥¹¸¢¤Î¤ß¤òǧ¤á¤ë¥Ý¥ê¥·¡¼¤è¤ê¤â¼«Í³ÅÙ¤¬¹â¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+次ã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¾‹å¤–を発生ã›ãšã«\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã§ãã¾ã™ã€‚ã“ã®ãƒãƒªã‚·ãƒ¼ã¯ã€ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ™ãƒ¼ã‚¹ã¸ã®ã‚らゆるアクセス権をèªã‚ã‚‹ãƒãƒªã‚·ãƒ¼ã‚ˆã‚Šã‚‚自由度ãŒä½Žã„ã§ã™ãŒã€\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã™ã‚‹ãŸã‚ã«æœ€ä½Žé™å¿…è¦ãªã‚¢ã‚¯ã‚»ã‚¹æ¨©ã®ã¿ã‚’èªã‚ã‚‹ãƒãƒªã‚·ãƒ¼ã‚ˆã‚Šã‚‚自由度ãŒé«˜ããªã£ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -118,7 +118,7 @@
 .RE
 .\}
 .PP
-¤³¤Î¥Ý¥ê¥·¡¼ÀßÄê¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤³¤Î¥Æ¥­¥¹¥È¤ò\fIjstatd\&.all\&.policy\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤Ë¥³¥Ô¡¼¤·¡¢¼¡¤Î¤è¤¦¤Ë\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ãƒãƒªã‚·ãƒ¼è¨­å®šã‚’使用ã™ã‚‹ã«ã¯ã€ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’\fIjstatd\&.all\&.policy\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ”ーã—ã€æ¬¡ã®ã‚ˆã†ã«\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -130,16 +130,16 @@
 .RE
 .\}
 .PP
-¤è¤ê¸·¤·¤¤¥»¥­¥å¥ê¥Æ¥£¤ò¼Â»Ü¤¹¤ë¥µ¥¤¥È¤Î¾ì¹ç¡¢¥«¥¹¥¿¥à¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢ÆÃÄê¤Î¿®Íê¤Ç¤­¤ë¥Û¥¹¥È¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¤Ë¥¢¥¯¥»¥¹¤òÀ©¸Â¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î¤è¤¦¤ÊÊýË¡¤Ï¡¢IP¥¢¥É¥ì¥¹¤ÎÅðÄ°¹¶·â¤ò¼õ¤±¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡£¥»¥­¥å¥ê¥Æ¥£¤ÎÌäÂê¤Ë¤Ä¤¤¤Æ¡¢¥«¥¹¥¿¥Þ¥¤¥º¤·¤¿¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç¤âÂнè¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤»¤º¤Ë¡¢\fIjstat\fR¤È\fIjps\fR¥Ä¡¼¥ë¤ò¥í¡¼¥«¥ë¤Ç»ÈÍѤ¹¤ë¤³¤È¤¬ºÇ¤â°ÂÁ´¤ÊÊýË¡¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SH "¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+より厳ã—ã„セキュリティを実施ã™ã‚‹ã‚µã‚¤ãƒˆã®å ´åˆã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ç‰¹å®šã®ä¿¡é ¼ã§ãるホストã¾ãŸã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«ã‚¢ã‚¯ã‚»ã‚¹ã‚’制é™ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®ã‚ˆã†ãªæ–¹æ³•ã¯ã€IPアドレスã®ç›—è´æ”»æ’ƒã‚’å—ã‘ã‚„ã™ããªã‚Šã¾ã™ã€‚セキュリティã®å•é¡Œã«ã¤ã„ã¦ã€ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã—ãŸãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã‚‚対処ã§ããªã„å ´åˆã¯ã€\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã›ãšã«ã€\fIjstat\fRã¨\fIjps\fRツールをローカルã§ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒæœ€ã‚‚安全ãªæ–¹æ³•ã«ãªã‚Šã¾ã™ã€‚
+.SH "リモート・インタフェース"
 .PP
-\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¨¥¯¥¹¥Ý¡¼¥È¤¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢Æȼ«¤Ë³«È¯¤·¤¿¤â¤Î¤Ç¤¢¤êÊѹ¹¤µ¤ì¤ëͽÄê¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤ª¤è¤Ó³«È¯¼Ô¤Ï¡¢¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ø¤Î½ñ¹þ¤ß¤ò¹Ô¤ï¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
-.SH "Îã"
+\fIjstatd\fRプロセスãŒã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯ã€ç‹¬è‡ªã«é–‹ç™ºã—ãŸã‚‚ã®ã§ã‚り変更ã•ã‚Œã‚‹äºˆå®šã§ã™ã€‚ユーザーãŠã‚ˆã³é–‹ç™ºè€…ã¯ã€ã“ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¸ã®æ›¸è¾¼ã¿ã‚’è¡Œã‚ãªã„ã§ãã ã•ã„。
+.SH "例"
 .PP
-¼¡¤Ë¡¢\fIjstatd\fR¥³¥Þ¥ó¥É¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjstatd\fR¥¹¥¯¥ê¥×¥È¤Ë¤è¤Ã¤Æ¡¢¥µ¡¼¥Ð¡¼¤Ï¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼«Æ°Åª¤Ëµ¯Æ°¤·¤Þ¤¹¡£
-.SS "ÆâÉôRMI¥ì¥¸¥¹¥È¥ê"
+次ã«ã€\fIjstatd\fRコマンドã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjstatd\fRスクリプトã«ã‚ˆã£ã¦ã€ã‚µãƒ¼ãƒãƒ¼ã¯ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§è‡ªå‹•çš„ã«èµ·å‹•ã—ã¾ã™ã€‚
+.SS "内部RMIレジストリ"
 .PP
-¤³¤ÎÎã¤Ï¡¢ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤¿¥Û¥¹¥È¤Ë¤è¤ë\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤Îµ¯Æ°¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎRMI¥ì¥¸¥¹¥È¥ê¡¦¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ë¤Ï¡¢Â¾¤Î¥µ¡¼¥Ð¡¼¤Ï¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤Ê¤¤¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€å†…部RMIレジストリを使用ã—ãŸãƒ›ã‚¹ãƒˆã«ã‚ˆã‚‹\fIjstatd\fRセッションã®èµ·å‹•ã‚’表ã—ã¦ã„ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®RMIレジストリ・ãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã«ã¯ã€ä»–ã®ã‚µãƒ¼ãƒãƒ¼ã¯ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ãªã„ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -150,9 +150,9 @@
 .if n \{\
 .RE
 .\}
-.SS "³°ÉôRMI¥ì¥¸¥¹¥È¥ê"
+.SS "外部RMIレジストリ"
 .PP
-¤³¤ÎÎã¤Ï¡¢³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤¿\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤Îµ¯Æ°¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€å¤–部RMIレジストリを使用ã—ãŸ\fIjstatd\fRセッションã®èµ·å‹•ã‚’表ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -165,7 +165,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ý¡¼¥È2020¤Î³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤Æ\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒˆ2020ã®å¤–部RMIレジストリを使用ã—ã¦\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -178,7 +178,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ý¡¼¥È2020¤Î³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤Æ¡¢\fIAlternateJstatdServerName\fR¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒˆ2020ã®å¤–部RMIレジストリを使用ã—ã¦ã€\fIAlternateJstatdServerName\fRã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã‚‹\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -191,9 +191,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥¤¥ó¥×¥í¥»¥¹RMI¥ì¥¸¥¹¥È¥ê¤ÎºîÀ®¤ÎÄä»ß"
+.SS "インプロセスRMIレジストリã®ä½œæˆã®åœæ­¢"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤¬¤Ê¤¤¾ì¹ç¤ËºîÀ®¤·¤Ê¤¤\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢RMI¥ì¥¸¥¹¥È¥ê¤¬¤¹¤Ç¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£RMI¥ì¥¸¥¹¥È¥ê¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€å¤–部RMIレジストリãŒãªã„å ´åˆã«ä½œæˆã—ãªã„\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€RMIレジストリãŒã™ã§ã«å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚RMIレジストリãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -204,9 +204,9 @@
 .if n \{\
 .RE
 .\}
-.SS "RMI¥í¥®¥ó¥°¤ÎÍ­¸ú²½"
+.SS "RMIロギングã®æœ‰åŠ¹åŒ–"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢RMI¥í¥®¥ó¥°µ¡Ç½¤òÍ­¸ú²½¤·¤Æ\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤Þ¤¿¤Ï¥µ¡¼¥Ð¡¼³èÆ°¤Î¥â¥Ë¥¿¥ê¥ó¥°¤ËÌòΩ¤Á¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€RMIロギング機能を有効化ã—ã¦\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ãƒˆãƒ©ãƒ–ルシューティングã¾ãŸã¯ã‚µãƒ¼ãƒãƒ¼æ´»å‹•ã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -218,7 +218,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/jvisualvm.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/jvisualvm.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jvisualvm
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†ãƒ„ール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jvisualvm" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó"
+.TH "jvisualvm" "1" "2013å¹´11月21æ—¥" "JDK 8" "Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jvisualvm \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò»ë³ÐŪ¤Ë´Æ»ë¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥È¤ª¤è¤Ó¥×¥í¥Õ¥¡¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jvisualvm \- Javaアプリケーションを視覚的ã«ç›£è¦–ã€ãƒˆãƒ©ãƒ–ルシュートãŠã‚ˆã³ãƒ—ロファイルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java VisualVM¤Ï¡¢»ØÄꤵ¤ì¤¿Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ÇJava¥Æ¥¯¥Î¥í¥¸¡¦¥Ù¡¼¥¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó(Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó)¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤­¤Ë¡¢¤½¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë´Ø¤¹¤ë¾ÜºÙ¤Ê¾ðÊó¤òÄ󶡤¹¤ëľ´¶Åª¤Ê¥°¥é¥Õ¥£¥«¥ë¡¦¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£Java VisualVM¤È¤¤¤¦Ì¾Á°¤Ï¡¢Java VisualVM¤¬JVM¥½¥Õ¥È¥¦¥§¥¢¤Ë´Ø¤¹¤ë¾ðÊó¤ò»ë³ÐŪ¤ËÄ󶡤¹¤ë¤È¤¤¤¦»ö¼Â¤ËͳÍ褷¤Æ¤¤¤Þ¤¹¡£
+Java VisualVMã¯ã€æŒ‡å®šã•ã‚ŒãŸJava仮想マシン(JVM)ã§Javaテクノロジ・ベースã®ã‚¢ãƒ—リケーション(Javaアプリケーション)ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ãã«ã€ãã®Javaアプリケーションã«é–¢ã™ã‚‹è©³ç´°ãªæƒ…報をæä¾›ã™ã‚‹ç›´æ„Ÿçš„ãªã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚Java VisualVMã¨ã„ã†åå‰ã¯ã€Java VisualVMãŒJVMソフトウェアã«é–¢ã™ã‚‹æƒ…報を視覚的ã«æä¾›ã™ã‚‹ã¨ã„ã†äº‹å®Ÿã«ç”±æ¥ã—ã¦ã„ã¾ã™ã€‚
 .PP
-Java VisualVM¤Ï¡¢¤¤¤¯¤Ä¤«¤Î¥â¥Ë¥¿¥ê¥ó¥°¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ª¤è¤Ó¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò1¤Ä¤Î¥Ä¡¼¥ë¤ËÅý¹ç¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¹¥¿¥ó¥É¥¢¥í¥ó¡¦¥Ä¡¼¥ë\fIjmap\fR¡¢\fIjinfo\fR¡¢\fIjstat\fR¤ª¤è¤Ó\fIjstack\fR¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ëµ¡Ç½¤Î¤Û¤È¤ó¤É¤¬¡¢Java VisualVM¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fIjconsole\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë°ìÉô¤Îµ¡Ç½¤Ê¤É¡¢Â¾¤Îµ¡Ç½¤Ï¥ª¥×¥·¥ç¥ó¤Î¥×¥é¥°¥¤¥ó¤È¤·¤ÆÄɲäǤ­¤Þ¤¹¡£
+Java VisualVMã¯ã€ã„ãã¤ã‹ã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ã€ãƒˆãƒ©ãƒ–ルシューティングãŠã‚ˆã³ãƒ—ロファイリング・ユーティリティを1ã¤ã®ãƒ„ールã«çµ±åˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ³ãƒ»ãƒ„ール\fIjmap\fRã€\fIjinfo\fRã€\fIjstat\fRãŠã‚ˆã³\fIjstack\fRã§æä¾›ã•ã‚Œã¦ã„る機能ã®ã»ã¨ã‚“ã©ãŒã€Java VisualVMã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fIjconsole\fRコマンドã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ä¸€éƒ¨ã®æ©Ÿèƒ½ãªã©ã€ä»–ã®æ©Ÿèƒ½ã¯ã‚ªãƒ—ションã®ãƒ—ラグインã¨ã—ã¦è¿½åŠ ã§ãã¾ã™ã€‚
 .PP
-Java VisualVM¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«È¯¼Ô¤¬¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ò¹Ô¤Ã¤¿¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò´Æ»ë¤ª¤è¤Ó²þÁ±¤·¤¿¤ê¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£Java VisualVM¤ò»ÈÍѤ¹¤ë¤È¡¢³«È¯¼Ô¤Ï¥Ò¡¼¥×¡¦¥À¥ó¥×¤ÎÀ¸À®¤ª¤è¤Ó²òÀÏ¡¢¥á¥â¥ê¡¼¡¦¥ê¡¼¥¯¤ÎÆÃÄê¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¼Â¹Ô¤ª¤è¤Ó´Æ»ë¡¢¤ª¤è¤Ó¥á¥â¥ê¡¼¤ÈCPU¤Î´Ê°×¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Î¼Â¹Ô¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¥×¥é¥°¥¤¥ó¤ÇJava VisualVM¤Îµ¡Ç½¤ò³ÈÄ¥¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤Î¤Û¤È¤ó¤É¤Îµ¡Ç½¤Ï¡¢¡ÖMBean¡×¥¿¥Ö¤ª¤è¤ÓJConsole Plug\-in Wrapper¥×¥é¥°¥¤¥ó¤ò²ð¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£É¸½à¤ÎJava VisualVM¥×¥é¥°¥¤¥ó¤Î¥«¥¿¥í¥°¤«¤éÁªÂò¤¹¤ë¤Ë¤Ï¡¢Java VisualVM¥á¥Ë¥å¡¼¤Î\fB¡Ö¥Ä¡¼¥ë¡×\fR¡¢\fB¡Ö¥×¥é¥°¥¤¥ó¡×\fR¤òÁªÂò¤·¤Þ¤¹¡£
+Java VisualVMã¯ã€Javaアプリケーションã®é–‹ç™ºè€…ãŒã‚¢ãƒ—リケーションã®ãƒˆãƒ©ãƒ–ルシューティングを行ã£ãŸã‚Šã€ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンスを監視ãŠã‚ˆã³æ”¹å–„ã—ãŸã‚Šã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚Java VisualVMを使用ã™ã‚‹ã¨ã€é–‹ç™ºè€…ã¯ãƒ’ープ・ダンプã®ç”ŸæˆãŠã‚ˆã³è§£æžã€ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒªãƒ¼ã‚¯ã®ç‰¹å®šã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®å®Ÿè¡ŒãŠã‚ˆã³ç›£è¦–ã€ãŠã‚ˆã³ãƒ¡ãƒ¢ãƒªãƒ¼ã¨CPUã®ç°¡æ˜“プロファイリングã®å®Ÿè¡ŒãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚プラグインã§Java VisualVMã®æ©Ÿèƒ½ã‚’æ‹¡å¼µã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjconsole\fRコマンドã®ã»ã¨ã‚“ã©ã®æ©Ÿèƒ½ã¯ã€ã€ŒMBeanã€ã‚¿ãƒ–ãŠã‚ˆã³JConsole Plug\-in Wrapperプラグインを介ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚標準ã®Java VisualVMプラグインã®ã‚«ã‚¿ãƒ­ã‚°ã‹ã‚‰é¸æŠžã™ã‚‹ã«ã¯ã€Java VisualVMメニューã®\fB「ツールã€\fRã€\fB「プラグインã€\fRã‚’é¸æŠžã—ã¾ã™ã€‚
 .PP
-Java VisualVM¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java VisualVMã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -85,15 +85,15 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java VisualVM¤òµ¯Æ°¤·¤¿¤È¤­¤Ë¼Â¹Ô²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€Java VisualVMã‚’èµ·å‹•ã—ãŸã¨ãã«å®Ÿè¡Œå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
 .PP
 \-J\fIjvm_option\fR
 .RS 4
-¤³¤Î\fIjvm_option\fR¤òJVM¥½¥Õ¥È¥¦¥§¥¢¤ËÅϤ·¤Þ¤¹¡£
+ã“ã®\fIjvm_option\fRã‚’JVMソフトウェアã«æ¸¡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -103,7 +103,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java VisualVM³«È¯¼Ô¤Î¥µ¥¤¥È
+Java VisualVM開発者ã®ã‚µã‚¤ãƒˆ
 http://visualvm\&.java\&.net/
 .RE
 .sp
@@ -115,7 +115,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java SE¥É¥­¥å¥á¥ó¥È¤ÎJava VisualVM
+Java SEドキュメントã®Java VisualVM
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/visualvm/index\&.html)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/keytool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/keytool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: keytool
 .\" Language: English
-.\" Date: 2013ǯ8·î6Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年8月6日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "keytool" "1" "2013ǯ8·î6Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "keytool" "1" "2013年8月6日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-keytool \- °Å¹æ²½¸°¡¢X\&.509¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò´Þ¤à¥­¡¼¥¹¥È¥¢(¥Ç¡¼¥¿¥Ù¡¼¥¹)¤ò´ÉÍý¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+keytool \- æš—å·åŒ–éµã€X\&.509証明書ãƒã‚§ãƒ¼ãƒ³ãŠã‚ˆã³ä¿¡é ¼ã§ãる証明書をå«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢(データベース)を管ç†ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,7 +64,7 @@
 .PP
 \fIcommands\fR
 .RS 4
-¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤Î¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¥¿¥¹¥¯Ê̤ËʬÎव¤ì¤Þ¤¹¡£
+コマンドをå‚ç…§ã—ã¦ãã ã•ã„。ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã‚¿ã‚¹ã‚¯åˆ¥ã«åˆ†é¡žã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -74,7 +74,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥­¡¼¥¹¥È¥¢¤Ø¤Î¥Ç¡¼¥¿¤ÎºîÀ®¤Þ¤¿¤ÏÄɲÃ
+キーストアã¸ã®ãƒ‡ãƒ¼ã‚¿ã®ä½œæˆã¾ãŸã¯è¿½åŠ 
 .sp
 .RS 4
 .ie n \{\
@@ -140,7 +140,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Ê̤Υ­¡¼¥¹¥È¥¢¤ÎÆâÍƤΥ¤¥ó¥Ý¡¼¥È
+別ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å†…容ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ
 .sp
 .RS 4
 .ie n \{\
@@ -162,7 +162,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤ÎÀ¸À®
+証明書リクエストã®ç”Ÿæˆ
 .sp
 .RS 4
 .ie n \{\
@@ -184,7 +184,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¡¼¥¿¤Î¥¨¥¯¥¹¥Ý¡¼¥È
+データã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ
 .sp
 .RS 4
 .ie n \{\
@@ -206,7 +206,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¡¼¥¿¤Îɽ¼¨
+データã®è¡¨ç¤º
 .sp
 .RS 4
 .ie n \{\
@@ -261,7 +261,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥­¡¼¥¹¥È¥¢¤Î´ÉÍý
+キーストアã®ç®¡ç†
 .sp
 .RS 4
 .ie n \{\
@@ -316,7 +316,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ø¥ë¥×¤Îɽ¼¨
+ヘルプã®è¡¨ç¤º
 .sp
 .RS 4
 .ie n \{\
@@ -330,18 +330,18 @@
 .RE
 .RE
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¸°¤È¾ÚÌÀ½ñ¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ç¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥æ¡¼¥¶¡¼¤Ï¼«Ê¬¤Î¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤ª¤è¤Ó´ØÏ¢¤¹¤ë¾ÚÌÀ½ñ¤ò´ÉÍý¤·¡¢¥Ç¥¸¥¿¥ë½ð̾¤ò»ÈÍѤ·¤¿¼«¸Êǧ¾Ú(¾¤Î¥æ¡¼¥¶¡¼¤Þ¤¿¤Ï¥µ¡¼¥Ó¥¹¤ËÂФ·¤Æ¼«Ê¬¼«¿È¤òǧ¾Ú¤¹¤ë¤³¤È)¤ä¡¢¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤È¾ÚÌÀ½ñ¤Ë´Ø¤¹¤ë¥µ¡¼¥Ó¥¹¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÄÌ¿®¤·¤Æ¤¤¤ë¥Ô¥¢¤Î¸ø³«¸°¤ò¥­¥ã¥Ã¥·¥å¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹(¾ÚÌÀ½ñ¤Î¥Õ¥©¡¼¥à¤Ç)¡£
+\fIkeytool\fRコマンドã¯ã€éµã¨è¨¼æ˜Žæ›¸ã‚’管ç†ã™ã‚‹ãŸã‚ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã§ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯è‡ªåˆ†ã®å…¬é–‹éµã¨ç§˜å¯†éµã®ãƒšã‚¢ãŠã‚ˆã³é–¢é€£ã™ã‚‹è¨¼æ˜Žæ›¸ã‚’管ç†ã—ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを使用ã—ãŸè‡ªå·±èªè¨¼(ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¾ãŸã¯ã‚µãƒ¼ãƒ“スã«å¯¾ã—ã¦è‡ªåˆ†è‡ªèº«ã‚’èªè¨¼ã™ã‚‹ã“ã¨)ã‚„ã€ãƒ‡ãƒ¼ã‚¿ã®æ•´åˆæ€§ã¨è¨¼æ˜Žæ›¸ã«é–¢ã™ã‚‹ã‚µãƒ¼ãƒ“スを利用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€é€šä¿¡ã—ã¦ã„るピアã®å…¬é–‹éµã‚’キャッシュã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™(証明書ã®ãƒ•ã‚©ãƒ¼ãƒ ã§)。
 .PP
-¾ÚÌÀ½ñ¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(¿Íʪ¡¢²ñ¼Ò¤Ê¤É)¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Î¤³¤È¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ë¤Ï¡¢Â¾¤Î¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°(¤ª¤è¤Ó¤½¤Î¾¤Î¾ðÊó)¤¬ÆÃÊ̤ÊÃͤò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£(¾ÚÌÀ½ñ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£)¥Ç¡¼¥¿¤Ë¥Ç¥¸¥¿¥ë½ð̾¤¬ÉÕ¤¤¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥¸¥¿¥ë½ð̾¤ò¸¡¾Ú¤¹¤ë¤³¤È¤Ç¡¢¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤ª¤è¤Ó¥Ç¡¼¥¿¤¬ËÜʪ¤Ç¤¢¤ë¤³¤È¤ò¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤È¤Ï¡¢¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿¤ê¡¢²þÊѤµ¤ì¤¿¤ê¤·¤Æ¤¤¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤Þ¤¿¡¢¥Ç¡¼¥¿¤¬ËÜʪ¤Ç¤¢¤ë¤È¤Ï¡¢¤½¤Î¥Ç¡¼¥¿¤¬¡¢¥Ç¡¼¥¿¤òºîÀ®¤·¤Æ½ð̾¤·¤¿¤È¾Î¤¹¤ë¿Íʪ¤«¤éÅϤµ¤ì¤¿¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+証明書ã¨ã¯ã€ã‚るエンティティ(人物ã€ä¼šç¤¾ãªã©)ã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã®ã“ã¨ã§ã™ã€‚証明書ã«ã¯ã€ä»–ã®ã‚るエンティティã®å…¬é–‹éµ(ãŠã‚ˆã³ãã®ä»–ã®æƒ…å ±)ãŒç‰¹åˆ¥ãªå€¤ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã™ã€‚(証明書をå‚ç…§ã—ã¦ãã ã•ã„。)データã«ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åãŒä»˜ã„ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを検証ã™ã‚‹ã“ã¨ã§ã€ãƒ‡ãƒ¼ã‚¿ã®æ•´åˆæ€§ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ãŒæœ¬ç‰©ã§ã‚ã‚‹ã“ã¨ã‚’ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚データã®æ•´åˆæ€§ã¨ã¯ã€ãƒ‡ãƒ¼ã‚¿ãŒå¤‰æ›´ã•ã‚ŒãŸã‚Šã€æ”¹å¤‰ã•ã‚ŒãŸã‚Šã—ã¦ã„ãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ã¾ãŸã€ãƒ‡ãƒ¼ã‚¿ãŒæœ¬ç‰©ã§ã‚ã‚‹ã¨ã¯ã€ãã®ãƒ‡ãƒ¼ã‚¿ãŒã€ãƒ‡ãƒ¼ã‚¿ã‚’作æˆã—ã¦ç½²åã—ãŸã¨ç§°ã™ã‚‹äººç‰©ã‹ã‚‰æ¸¡ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã§ã‚ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .PP
-¤Þ¤¿¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢ÂоΰŹ沽/Éü¹æ²½(DES)¤Ç»ÈÍѤµ¤ì¤ëÈëÌ©¸°¤ª¤è¤Ó¥Ñ¥¹¥Õ¥ì¡¼¥º¤ò´ÉÍý¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ã¾ãŸã€\fIkeytool\fRコマンドを使用ã™ã‚Œã°ã€å¯¾ç§°æš—å·åŒ–/復å·åŒ–(DES)ã§ä½¿ç”¨ã•ã‚Œã‚‹ç§˜å¯†éµãŠã‚ˆã³ãƒ‘スフレーズを管ç†ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¸°¤È¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥³¥Þ¥ó¥É¤È¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ëÃí°Õ"
+\fIkeytool\fRコマンドã¯ã€éµã¨è¨¼æ˜Žæ›¸ã‚’キーストアã«æ ¼ç´ã—ã¾ã™ã€‚キーストアã®åˆ¥åã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "コマンドã¨ã‚ªãƒ—ションã«é–¢ã™ã‚‹æ³¨æ„"
 .PP
-ÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤È¤½¤ÎÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+様々ãªã‚³ãƒžãƒ³ãƒ‰ã¨ãã®èª¬æ˜Žã«ã¤ã„ã¦ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -351,7 +351,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤É¤Î¥³¥Þ¥ó¥É̾¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó̾¤Ë¤âÀèƬ¤Ë¥Þ¥¤¥Ê¥¹µ­¹æ(\-)¤¬ÉÕ¤­¤Þ¤¹¡£
+ã©ã®ã‚³ãƒžãƒ³ãƒ‰åãŠã‚ˆã³ã‚ªãƒ—ションåã«ã‚‚先頭ã«ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\-)ãŒä»˜ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -362,7 +362,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³Æ¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+å„コマンドã®ã‚ªãƒ—ションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -373,7 +373,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤˤʤäƤ¤¤Ê¤¤¤¹¤Ù¤Æ¤Î¹àÌÜ¡¢¤Þ¤¿¤ÏÃ楫¥Ã¥³¤«³Ñ¥«¥Ã¥³¤Ç°Ï¤Þ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¹àÌܤϡ¢¤½¤Î¤È¤ª¤ê¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+イタリック体ã«ãªã£ã¦ã„ãªã„ã™ã¹ã¦ã®é …ç›®ã€ã¾ãŸã¯ä¸­ã‚«ãƒƒã‚³ã‹è§’カッコã§å›²ã¾ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®é …ç›®ã¯ã€ãã®ã¨ãŠã‚Šã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -384,7 +384,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ò°Ï¤àÃ楫¥Ã¥³¤Ï¡¢¤½¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤ¬»ÈÍѤµ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ã楫¥Ã¥³¤Ï¡¢\fI\-v\fR¡¢\fI\-rfc\fR¤ª¤è¤Ó\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò°Ï¤à¤¿¤á¤Ë¤â»ÈÍѤµ¤ì¤Þ¤¹¤¬¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç¤Ë¤Î¤ß°ÕÌ£¤ò»ý¤Á¤Þ¤¹¡£»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç°Ê³°¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤϤ¢¤ê¤Þ¤»¤ó¡£
+オプションを囲む中カッコã¯ã€ãã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã«ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ãŒä½¿ç”¨ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’å‚ç…§ã—ã¦ãã ã•ã„。中カッコã¯ã€\fI\-v\fRã€\fI\-rfc\fRãŠã‚ˆã³\fI\-J\fRオプションを囲むãŸã‚ã«ã‚‚使用ã•ã‚Œã¾ã™ãŒã€ã“れらã®ã‚ªãƒ—ションã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸå ´åˆã«ã®ã¿æ„味をæŒã¡ã¾ã™ã€‚指定ã•ã‚Œã¦ã„ãªã„å ´åˆä»¥å¤–ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -395,7 +395,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ò°Ï¤à³Ñ¥«¥Ã¥³¤Ï¡¢¤½¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¡¢ÃͤÎÆþÎϤòµá¤á¤é¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤Î¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¤Þ¤º¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ÈÍѤ·¤ÆÈó¸ø³«/ÈëÌ©¸°¤ÎÉü¸µ¤ò»î¤ß¤Þ¤¹¡£¤³¤Î»î¤ß¤¬¼ºÇÔ¤·¤¿¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê¡¢Èó¸ø³«/ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+オプションを囲む角カッコã¯ã€ãã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã«ã€å€¤ã®å…¥åŠ›ã‚’求ã‚られるã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fI\-keypass\fRオプションã®å ´åˆã€ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€\fIkeytool\fRコマンドãŒã¾ãšã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードを使用ã—ã¦éžå…¬é–‹/秘密éµã®å¾©å…ƒã‚’試ã¿ã¾ã™ã€‚ã“ã®è©¦ã¿ãŒå¤±æ•—ã—ãŸå ´åˆã€\fIkeytool\fRコマンドã«ã‚ˆã‚Šã€éžå…¬é–‹/秘密éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -406,11 +406,11 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤιàÌܤμºݤÎÃÍ(¥ª¥×¥·¥ç¥ó¤ÎÃÍ)¤Ï¡¢»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤Î·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+イタリック体ã®é …ç›®ã®å®Ÿéš›ã®å€¤(オプションã®å€¤)ã¯ã€æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-printcert\fRコマンドã®å½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 \fIkeytool \-printcert {\-file cert_file} {\-v}\fR
 .sp
-\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò»ØÄꤹ¤ë¾ì¹ç¤Ï¡¢\fIcert_file\fR¤ò¼ÂºÝ¤Î¥Õ¥¡¥¤¥ë̾¤ÇÃÖ¤­´¹¤¨¤Þ¤¹¡£Îã:
+\fI\-printcert\fRコマンドを指定ã™ã‚‹å ´åˆã¯ã€\fIcert_file\fRを実際ã®ãƒ•ã‚¡ã‚¤ãƒ«åã§ç½®ãæ›ãˆã¾ã™ã€‚例:
 \fIkeytool \-printcert \-file VScert\&.cer\fR
 .RE
 .sp
@@ -422,7 +422,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ÎÃͤ˶õÇò(¥¹¥Ú¡¼¥¹)¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Ãͤò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+オプションã®å€¤ã«ç©ºç™½(スペース)ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å€¤ã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -433,11 +433,11 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-help\fR¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIkeytool \-help\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fI\-help\fRオプションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚\fIkeytool\fRコマンドã¯ã€\fIkeytool \-help\fRã¨åŒã˜ã§ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ"
+.SH "オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤"
 .PP
-¼¡¤ÎÎã¤Ç¡¢ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥óÃͤΥǥե©¥ë¥ÈÃͤò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã€æ§˜ã€…ãªã‚ªãƒ—ション値ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -474,7 +474,7 @@
 .RE
 .\}
 .PP
-¸ø³«/ÈëÌ©¸°¥Ú¥¢¤ÎÀ¸À®¤Ë¤ª¤¤¤Æ¡¢½ð̾¥¢¥ë¥´¥ê¥º¥à(\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó)¤Ï¡¢´ð¤Ë¤Ê¤ëÈëÌ©¸°¤Î¥¢¥ë¥´¥ê¥º¥à¤«¤éÇÉÀ¸¤·¤Þ¤¹¡£
+公開/秘密éµãƒšã‚¢ã®ç”Ÿæˆã«ãŠã„ã¦ã€ç½²åアルゴリズム(\fI\-sigalg\fRオプション)ã¯ã€åŸºã«ãªã‚‹ç§˜å¯†éµã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -484,7 +484,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬DSA¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA1withDSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒDSAタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA1withDSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -495,7 +495,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬RSA¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA256withRSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒRSAタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA256withRSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -506,40 +506,40 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬EC¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA256withECDSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒECタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA256withECDSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fI\-keyalg\fR¤ª¤è¤Ó\fI\-sigalg\fR°ú¿ô¤Î´°Á´¤Ê¥ê¥¹¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Î¡ÖJava Cryptography Architecture (JCA) Reference Guide¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "°ìÈÌ¥ª¥×¥·¥ç¥ó"
+\fI\-keyalg\fRãŠã‚ˆã³\fI\-sigalg\fR引数ã®å®Œå…¨ãªãƒªã‚¹ãƒˆã«ã¤ã„ã¦ã¯ã€
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã®ã€ŒJava Cryptography Architecture (JCA) Reference Guideã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "一般オプション"
 .PP
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-help\fR¥³¥Þ¥ó¥É¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ÈÍѤǤ­¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¾éĹ¥â¡¼¥É¤Ç¼Â¹Ô¤µ¤ì¡¢¾ÜºÙ¤Ê¾ðÊ󤬽ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-v\fRオプションã¯ã€\fI\-help\fRコマンドを除ãã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§ä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-v\fRオプションを指定ã—ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å†—長モードã§å®Ÿè¡Œã•ã‚Œã€è©³ç´°ãªæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
-Ǥ°Õ¤Î¥³¥Þ¥ó¥É¤Ç»ØÄê¤Ç¤­¤ë\fI\-Jjavaoption\fR°ú¿ô¤â¤¢¤ê¤Þ¤¹¡£\fI\-Jjavaoption\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢»ØÄꤵ¤ì¤¿\fIjavaoption\fRʸ»úÎó¤¬Java¥¤¥ó¥¿¥×¥ê¥¿¤ËľÀÜÅϤµ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤòÄ´À°¤¹¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£»ØÄê¤Ç¤­¤ë¥¤¥ó¥¿¥×¥ê¥¿¡¦¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava \-h\fR¤Þ¤¿¤Ï\fIjava \-X\fR¤ÈÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
+ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ã§æŒ‡å®šã§ãã‚‹\fI\-Jjavaoption\fR引数もã‚ã‚Šã¾ã™ã€‚\fI\-Jjavaoption\fRを指定ã—ãŸå ´åˆã€æŒ‡å®šã•ã‚ŒãŸ\fIjavaoption\fR文字列ãŒJavaインタプリタã«ç›´æŽ¥æ¸¡ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã¯ã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã‚’調整ã™ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚指定ã§ãるインタプリタ・オプションを一覧表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava \-h\fRã¾ãŸã¯\fIjava \-X\fRã¨å…¥åŠ›ã—ã¦ãã ã•ã„。
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥­¡¼¥¹¥È¥¢¤ËÂФ¹¤ëÁàºî¤ò¹Ô¤¦¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«å¯¾ã™ã‚‹æ“作を行ã†ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .PP
 \-storetype \fIstoretype\fR
 .RS 4
-¤³¤Î½¤¾þ»Ò¤Ï¡¢¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£
+ã“ã®ä¿®é£¾å­ã¯ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’生æˆã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-keystore \fIkeystore\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+キーストアã®å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î\fIkeytool\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëºÝ¤Ë¡¢JKS
-\fIstoretype\fR¤¬»ÈÍѤµ¤ì¡¢¤«¤Ä¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¿·¤·¤¤¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIkeytool \-genkeypair\fR¤Î¸Æ½Ð¤·»þ¤Ë\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¤½¤³¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£Æ±Íͤˡ¢\fI\-keystore ks_file\fR¤È¤¤¤¦¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤â¤½¤Îks_file¤¬Â¸ºß¤·¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£JKS
-\fIstoretype\fR¤Î¾ÜºÙ¤Ï¡¢\fI¤Î\fRKeyStore¤Î¼ÂÁõ¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤Ë´Ø¤¹¤ë¹à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+特定ã®\fIkeytool\fRコマンドを実行ã™ã‚‹éš›ã«ã€JKS
+\fIstoretype\fRãŒä½¿ç”¨ã•ã‚Œã€ã‹ã¤ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã¾ã å­˜åœ¨ã—ã¦ã„ãªã‹ã£ãŸå ´åˆã€æ–°ã—ã„キーストア・ファイルãŒä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIkeytool \-genkeypair\fRã®å‘¼å‡ºã—時ã«\fI\-keystore\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fI\&.keystore\fRã¨ã„ã†åå‰ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«ã¾ã å­˜åœ¨ã—ã¦ã„ãªã‘ã‚Œã°ã€ãã“ã«ä½œæˆã•ã‚Œã¾ã™ã€‚åŒæ§˜ã«ã€\fI\-keystore ks_file\fRã¨ã„ã†ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã‚‚ãã®ks_fileãŒå­˜åœ¨ã—ãªã‹ã£ãŸå ´åˆã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒä½œæˆã•ã‚Œã¾ã™ã€‚JKS
+\fIstoretype\fRã®è©³ç´°ã¯ã€\fIã®\fRKeyStoreã®å®Ÿè£…キーストアã®åˆ¥åã«é–¢ã™ã‚‹é …ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤«¤é¤ÎÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ï¡¢\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£URL¤È¤·¤Æ\fINONE\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢null¤Î¥¹¥È¥ê¡¼¥à¤¬\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£\fINONE\fR¤Ï¡¢KeyStore¤¬¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ë»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¡¦¥Ç¥Ð¥¤¥¹¾å¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ê¤É¤Ç¤¹¡£
+\fI\-keystore\fRオプションã‹ã‚‰ã®å…¥åŠ›ã‚¹ãƒˆãƒªãƒ¼ãƒ ã¯ã€\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚URLã¨ã—ã¦\fINONE\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€nullã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ãŒ\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚\fINONE\fRã¯ã€KeyStoreãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã«æŒ‡å®šã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ãƒ»ãƒ‡ãƒã‚¤ã‚¹ä¸Šã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆãªã©ã§ã™ã€‚
 .RE
 .PP
 \-storepass[:\fIenv\fR| :\fIfile\fR] argument
 .RS 4
-¥­¡¼¥¹¥È¥¢¤ÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£
+キーストアã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ÎÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRを指定ã—ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ã“ã®å€¤ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -550,7 +550,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -561,119 +561,119 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIfile\fR: argument¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIfile\fR: argumentã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-\fI\-keypass\fR¡¢\fI\-srckeypass\fR¡¢\-\fIdestkeypass\fR¡¢\fI\-srcstorepass\fR¡¢\fI\-deststorepass\fR¤Ê¤É¤Î¥Ñ¥¹¥ï¡¼¥É¤òɬÍפȤ¹¤ë¤½¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¡¢\fIenv\fR¤ª¤è¤Ó\fIfile\fR½¤¾þ»Ò¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¡¦¥ª¥×¥·¥ç¥ó¤È½¤¾þ»Ò¤Ï¡¢É¬¤º¥³¥í¥ó(:)¤Ç¶èÀڤäƤ¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+\fI\-keypass\fRã€\fI\-srckeypass\fRã€\-\fIdestkeypass\fRã€\fI\-srcstorepass\fRã€\fI\-deststorepass\fRãªã©ã®ãƒ‘スワードを必è¦ã¨ã™ã‚‹ãã®ä»–ã®ã‚ªãƒ—ションã¯ã™ã¹ã¦ã€\fIenv\fRãŠã‚ˆã³\fIfile\fR修飾å­ã‚’å—ã‘付ã‘ã¾ã™ã€‚パスワード・オプションã¨ä¿®é£¾å­ã¯ã€å¿…ãšã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦ãã ã•ã„。
 .sp
-¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤ÎÆâÍƤ˥¢¥¯¥»¥¹¤¹¤ë¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¼ï¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+パスワードã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å†…容ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®ç¨®ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fI\-storepass\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤«¤é¾ðÊó¤ò¼èÆÀ¤¹¤ë¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¾Êά²Äǽ¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¼èÆÀ¤·¤¿¾ðÊó¤ÎÀ°¹çÀ­¤ò¸¡¾Ú¤Ç¤­¤º¡¢·Ù¹ð¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+キーストアã‹ã‚‰æƒ…報をå–å¾—ã™ã‚‹å ´åˆã€ãƒ‘スワードã¯çœç•¥å¯èƒ½ã§ã™ã€‚パスワードãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€å–å¾—ã—ãŸæƒ…å ±ã®æ•´åˆæ€§ã‚’検証ã§ããšã€è­¦å‘ŠãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerName \fIprovider_name\fR
 .RS 4
-¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë´Þ¤Þ¤ì¤ë°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À̾¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+セキュリティ・プロパティ・ファイル内ã«å«ã¾ã‚Œã‚‹æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€åを特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerClass \fIprovider_class_name\fR
 .RS 4
-°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¤¬¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¡¢¤½¤Î¥Þ¥¹¥¿¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤹ¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€ãŒã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã«æŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ãã¯ã€ãã®ãƒžã‚¹ã‚¿ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerArg \fIprovider_arg\fR
 .RS 4
-\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤµ¤ì¡¢\fIprovider_class_name\fR¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¥ª¥×¥·¥ç¥ó¤Îʸ»úÎóÆþÎÏ°ú¿ô¤òɽ¤·¤Þ¤¹¡£
+\fI\-providerClass\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã•ã‚Œã€\fIprovider_class_name\fRã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®ã‚ªãƒ—ションã®æ–‡å­—列入力引数を表ã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¤Î¤¤¤º¤ì¤«¡£¥Ñ¥¹¥ï¡¼¥É¤òÀìÍÑPIN¥ê¡¼¥À¡¼¤Ê¤É¤ÎÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹·Ðͳ¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤ÎÃͤò\fItrue\fR¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-importkeystore\fR¥³¥Þ¥ó¥É¤Ë¤Ï2¤Ä¤Î¥­¡¼¥¹¥È¥¢¤¬´ØÏ¢¤·¤Æ¤¤¤ë¤¿¤á¡¢¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢¤È°¸À襭¡¼¥¹¥È¥¢¤Ë¤½¤ì¤¾¤ì¼¡¤Î2¤Ä¤Î¥ª¥×¥·¥ç¥ó¡¢\fI\-srcprotected\fR¤È\-\fIdestprotected\fR¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fItrue\fRã¾ãŸã¯\fIfalse\fRã®ã„ãšã‚Œã‹ã€‚パスワードを専用PINリーダーãªã©ã®ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘ス経由ã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€ã“ã®å€¤ã‚’\fItrue\fRã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-importkeystore\fRコマンドã«ã¯2ã¤ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒé–¢é€£ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨å®›å…ˆã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ãã‚Œãžã‚Œæ¬¡ã®2ã¤ã®ã‚ªãƒ—ションã€\fI\-srcprotected\fRã¨\-\fIdestprotected\fRãŒç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-ext \fI{name{:critical} {=value}}\fR
 .RS 4
-X\&.509¾ÚÌÀ½ñ¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fI\-genkeypair\fR¤ª¤è¤Ó\fI\-gencert\fR¤Ç»ÈÍѤ·¤Æ¡¢À¸À®¤µ¤ì¤ë¾ÚÌÀ½ñ¤Þ¤¿¤Ï\fI\-certreq\fR¤Ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤òËä¤á¹þ¤ß¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤Ç¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÊ£¿ô²ó»ØÄê¤Ç¤­¤Þ¤¹¡£\fIname\fR°ú¿ô¤Ë¤Ï¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó̾(̾Á°ÉÕ¤­¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò»²¾È)¤Þ¤¿¤ÏǤ°Õ¤ÎOIDÈÖ¹æ¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIvalue\fR°ú¿ô¤Ï¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î°ú¿ô¤ò»Ø¤·¤Þ¤¹¡£\fIvalue\fR¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤޤ¿¤Ï¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬°ú¿ô¤òɬÍפȤ·¤Ê¤¤¤³¤È¤ò¼¨¤·¤Þ¤¹¡£\fI:critical\fR½¤¾þ»Ò¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î\fIisCritical\fR°À­¤Ï\fItrue\fR¤Ç¡¢»ØÄꤵ¤ì¤Ê¤¤¾ì¹ç¤Ï\fIfalse\fR¤Ç¤¹¡£\fI:critical\fR¤Î¤«¤ï¤ê¤Ë\fI:c\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+X\&.509証明書エクステンションを示ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを\fI\-genkeypair\fRãŠã‚ˆã³\fI\-gencert\fRã§ä½¿ç”¨ã—ã¦ã€ç”Ÿæˆã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã¾ãŸã¯\fI\-certreq\fRã«ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’埋ã‚è¾¼ã¿ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’示ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯è¤‡æ•°å›žæŒ‡å®šã§ãã¾ã™ã€‚\fIname\fR引数ã«ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエクステンションå(åå‰ä»˜ãエクステンションをå‚ç…§)ã¾ãŸã¯ä»»æ„ã®OID番å·ã‚’指定ã§ãã¾ã™ã€‚指定ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIvalue\fR引数ã¯ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®å¼•æ•°ã‚’指ã—ã¾ã™ã€‚\fIvalue\fRã‚’çœç•¥ã—ãŸå ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¾ãŸã¯ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå¼•æ•°ã‚’å¿…è¦ã¨ã—ãªã„ã“ã¨ã‚’示ã—ã¾ã™ã€‚\fI:critical\fR修飾å­ãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®\fIisCritical\fR属性ã¯\fItrue\fRã§ã€æŒ‡å®šã•ã‚Œãªã„å ´åˆã¯\fIfalse\fRã§ã™ã€‚\fI:critical\fRã®ã‹ã‚ã‚Šã«\fI:c\fRを使用ã§ãã¾ã™ã€‚
 .RE
-.SH "̾Á°ÉÕ¤­¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó"
+.SH "åå‰ä»˜ãエクステンション"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î̾Á°¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£Ì¾Á°¤ÎÂç/¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£
+\fIkeytool\fRコマンドã¯ã€æ¬¡ã®åå‰ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚åå‰ã®å¤§/å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。
 .PP
-BC¤Þ¤¿¤ÏBasicContraints
+BCã¾ãŸã¯BasicContraints
 .RS 4
-\fBÃÍ\fR: ´°Á´¤Ê·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹:
-\fIca:{true|false}[,pathlen:<len>]\fR¤Þ¤¿¤Ï\fI<len>\fR(¤³¤ì¤Ï¡¢\fIca:true,pathlen:<len>\fR¤Îû½Ì·Á¤Ç¤¹)¡£<\fIlen\fR>¤ò¾Êά¤¹¤ë¤È¡¢\fIca:true\fR¤Î°ÕÌ£¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fB値\fR: 完全ãªå½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™:
+\fIca:{true|false}[,pathlen:<len>]\fRã¾ãŸã¯\fI<len>\fR(ã“ã‚Œã¯ã€\fIca:true,pathlen:<len>\fRã®çŸ­ç¸®å½¢ã§ã™)。<\fIlen\fR>ã‚’çœç•¥ã™ã‚‹ã¨ã€\fIca:true\fRã®æ„味ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-KU¤Þ¤¿¤ÏKeyUsage
+KUã¾ãŸã¯KeyUsage
 .RS 4
-\fBÃÍ\fR:
-\fIusage\fR(\fIusage\fR)*¡¢\fIusage\fR¤Ë¤Ï\fIdigitalSignature\fR¡¢\fInonRepudiation\fR
-(contentCommitment)¡¢\fIkeyEncipherment\fR¡¢\fIdataEncipherment\fR¡¢\fIkeyAgreement\fR¡¢\fIkeyCertSign\fR¡¢\fIcRLSign\fR¡¢\fIencipherOnly\fR¡¢\fIdecipherOnly\fR¤Î¤¤¤º¤ì¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIusage\fR°ú¿ô¤Ï¡¢ÉÔÌÀ³Î¤Ë¤Ê¤é¤Ê¤¤¤«¤®¤ê¡¢ºÇ½é¤Î¿ôʸ»ú(\fIdigitalSignature\fR¤Î¾ì¹ç¤Ï\fIdig\fR)¤Þ¤¿¤Ï¥­¥ã¥á¥ë¥±¡¼¥¹¡¦¥¹¥¿¥¤¥ë(\fIdigitalSignature\fR¤Î¾ì¹ç¤Ï\fIdS\fR¡¢\fIcRLSign\fR¤Î¾ì¹ç¤Ï\fIcRLS\fR)¤Ç¾Êάɽµ­¤Ç¤­¤Þ¤¹¡£\fIusage\fRÃͤϡ¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fB値\fR:
+\fIusage\fR(\fIusage\fR)*ã€\fIusage\fRã«ã¯\fIdigitalSignature\fRã€\fInonRepudiation\fR
+(contentCommitment)ã€\fIkeyEncipherment\fRã€\fIdataEncipherment\fRã€\fIkeyAgreement\fRã€\fIkeyCertSign\fRã€\fIcRLSign\fRã€\fIencipherOnly\fRã€\fIdecipherOnly\fRã®ã„ãšã‚Œã‹ã‚’指定ã§ãã¾ã™ã€‚\fIusage\fR引数ã¯ã€ä¸æ˜Žç¢ºã«ãªã‚‰ãªã„ã‹ãŽã‚Šã€æœ€åˆã®æ•°æ–‡å­—(\fIdigitalSignature\fRã®å ´åˆã¯\fIdig\fR)ã¾ãŸã¯ã‚­ãƒ£ãƒ¡ãƒ«ã‚±ãƒ¼ã‚¹ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«(\fIdigitalSignature\fRã®å ´åˆã¯\fIdS\fRã€\fIcRLSign\fRã®å ´åˆã¯\fIcRLS\fR)ã§çœç•¥è¡¨è¨˜ã§ãã¾ã™ã€‚\fIusage\fR値ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-EKU¤Þ¤¿¤ÏExtendedKeyUsage
+EKUã¾ãŸã¯ExtendedKeyUsage
 .RS 4
-\fBÃÍ\fR:
-\fIusage\fR(\fIusage\fR)*¡¢\fIusage\fR¤Ë¤Ï\fIanyExtendedKeyUsage\fR¡¢\fIserverAuth\fR¡¢\fIclientAuth\fR¡¢\fIcodeSigning\fR¡¢\fIemailProtection\fR¡¢\fItimeStamping\fR¡¢\fIOCSPSigning\fR¤Þ¤¿¤ÏǤ°Õ¤Î\fIOIDʸ»úÎó\fR¤Î¤¤¤º¤ì¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIusage\fR°ú¿ô¤Ï¡¢ÉÔÌÀ³Î¤Ë¤Ê¤é¤Ê¤¤¤«¤®¤ê¡¢ºÇ½é¤Î¿ôʸ»ú¤Þ¤¿¤Ï¥­¥ã¥á¥ë¥±¡¼¥¹¡¦¥¹¥¿¥¤¥ë¤Ç¾Êάɽµ­¤Ç¤­¤Þ¤¹¡£\fIusage\fRÃͤϡ¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fB値\fR:
+\fIusage\fR(\fIusage\fR)*ã€\fIusage\fRã«ã¯\fIanyExtendedKeyUsage\fRã€\fIserverAuth\fRã€\fIclientAuth\fRã€\fIcodeSigning\fRã€\fIemailProtection\fRã€\fItimeStamping\fRã€\fIOCSPSigning\fRã¾ãŸã¯ä»»æ„ã®\fIOID文字列\fRã®ã„ãšã‚Œã‹ã‚’指定ã§ãã¾ã™ã€‚\fIusage\fR引数ã¯ã€ä¸æ˜Žç¢ºã«ãªã‚‰ãªã„ã‹ãŽã‚Šã€æœ€åˆã®æ•°æ–‡å­—ã¾ãŸã¯ã‚­ãƒ£ãƒ¡ãƒ«ã‚±ãƒ¼ã‚¹ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã§çœç•¥è¡¨è¨˜ã§ãã¾ã™ã€‚\fIusage\fR値ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-SAN¤Þ¤¿¤ÏSubjectAlternativeName
+SANã¾ãŸã¯SubjectAlternativeName
 .RS 4
-\fBÃÍ\fR:
+\fB値\fR:
 \fItype\fR:\fIvalue\fR
-(t\fIype:value\fR)*¡¢\fItype\fR¤Ë¤Ï\fIEMAIL\fR¡¢\fIURI\fR¡¢\fIDNS\fR¡¢\fIIP\fR¤Þ¤¿¤Ï\fIOID\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIvalue\fR°ú¿ô¤Ï¡¢\fItype\fR¤Îʸ»úÎó·Á¼°¤ÎÃͤǤ¹¡£
+(t\fIype:value\fR)*ã€\fItype\fRã«ã¯\fIEMAIL\fRã€\fIURI\fRã€\fIDNS\fRã€\fIIP\fRã¾ãŸã¯\fIOID\fRを指定ã§ãã¾ã™ã€‚\fIvalue\fR引数ã¯ã€\fItype\fRã®æ–‡å­—列形å¼ã®å€¤ã§ã™ã€‚
 .RE
 .PP
-IAN¤Þ¤¿¤ÏIssuerAlternativeName
+IANã¾ãŸã¯IssuerAlternativeName
 .RS 4
-\fBÃÍ\fR:
-\fISubjectAlternativeName\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fB値\fR:
+\fISubjectAlternativeName\fRã¨åŒã˜ã§ã™ã€‚
 .RE
 .PP
-SIA¤Þ¤¿¤ÏSubjectInfoAccess
+SIAã¾ãŸã¯SubjectInfoAccess
 .RS 4
-\fBÃÍ\fR:
+\fB値\fR:
 \fImethod\fR:\fIlocation\-type\fR:\fIlocation\-value\fR
-(\fImethod:location\-type\fR:\fIlocation\-value\fR)*¡¢\fImethod\fR¤Ë¤Ï\fItimeStamping\fR¡¢\fIcaRepository\fR¤Þ¤¿¤ÏǤ°Õ¤ÎOID¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIlocation\-type\fR¤ª¤è¤Ó\fIlocation\-value\fR°ú¿ô¤Ë¤Ï¡¢\fISubjectAlternativeName\fR¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëǤ°Õ¤Î\fItype\fR:\fIvalue\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+(\fImethod:location\-type\fR:\fIlocation\-value\fR)*ã€\fImethod\fRã«ã¯\fItimeStamping\fRã€\fIcaRepository\fRã¾ãŸã¯ä»»æ„ã®OIDを指定ã§ãã¾ã™ã€‚\fIlocation\-type\fRãŠã‚ˆã³\fIlocation\-value\fR引数ã«ã¯ã€\fISubjectAlternativeName\fRエクステンションã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ä»»æ„ã®\fItype\fR:\fIvalue\fRを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
-AIA¤Þ¤¿¤ÏAuthorityInfoAccess
+AIAã¾ãŸã¯AuthorityInfoAccess
 .RS 4
-\fBÃÍ\fR:
-\fISubjectInfoAccess\fR¤ÈƱ¤¸¤Ç¤¹¡£\fImethod\fR°ú¿ô¤Ë¤Ï¡¢\fIocsp\fR¡¢\fIcaIssuers\fR¤Þ¤¿¤ÏǤ°Õ¤ÎOID¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fB値\fR:
+\fISubjectInfoAccess\fRã¨åŒã˜ã§ã™ã€‚\fImethod\fR引数ã«ã¯ã€\fIocsp\fRã€\fIcaIssuers\fRã¾ãŸã¯ä»»æ„ã®OIDを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
-\fIname\fR¤¬OID¤Î¾ì¹ç¡¢OCTET STRING¥¿¥¤¥×¤ÈŤµ¤Î¥Ð¥¤¥È¤ò½ü³°¤·¤¿¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢ÃͤÏ\fIextnValue\fR¤Î16¿Ê¥À¥ó¥×¤ÎDER¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Ç¤¹¡£HEXʸ»úÎó¤Ç¤Ï¡¢É¸½à¤Î16¿Ê¿ô(0\-9¡¢a\-f¡¢A\-F)°Ê³°¤Îʸ»ú¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢01:02:03:04¤È01020304¤ÎξÊý¤È¤âƱ°ì¤ÎÃͤȤ·¤Æ¼õ¤±ÉÕ¤±¤é¤ì¤Þ¤¹¡£Ãͤ¬¤Ê¤¤¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ÎÃÍ¥Õ¥£¡¼¥ë¥É¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIname\fRãŒOIDã®å ´åˆã€OCTET STRINGタイプã¨é•·ã•ã®ãƒã‚¤ãƒˆã‚’除外ã—ãŸã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«ã¤ã„ã¦ã¯ã€å€¤ã¯\fIextnValue\fRã®16進ダンプã®DERエンコーディングã§ã™ã€‚HEX文字列ã§ã¯ã€æ¨™æº–ã®16進数(0\-9ã€a\-fã€A\-F)以外ã®æ–‡å­—ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€01:02:03:04ã¨01020304ã®ä¸¡æ–¹ã¨ã‚‚åŒä¸€ã®å€¤ã¨ã—ã¦å—ã‘付ã‘られã¾ã™ã€‚値ãŒãªã„å ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®å€¤ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç©ºã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fI\-gencert\fR¤Ç¤Î¤ß»ÈÍѤ¹¤ë\fIhonored\fR¤È¤¤¤¦ÆÃÊ̤Ê̾Á°¤Ï¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤Ë´Þ¤Þ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤òÍ¥À褹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î̾Á°¤ÎÃͤϡ¢\fIall\fR(¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬Í¥À褵¤ì¤ë)¡¢\fIname{:[critical|non\-critical]}\fR(̾Á°ÉÕ¤­¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬Í¥À褵¤ì¤ë¤¬¡¢Ê̤Î\fIisCritical\fR°À­¤ò»ÈÍѤ¹¤ë)¡¢¤ª¤è¤Ó\fI\-name\fR(\fIall\fR¤È¤È¤â¤Ë»ÈÍѤ·¡¢Îã³°¤ò¼¨¤¹)¤Î¥«¥ó¥Þ¶èÀÚ¤ê¥ê¥¹¥È¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ÏÍ¥À褵¤ì¤Þ¤»¤ó¡£
+\fI\-gencert\fRã§ã®ã¿ä½¿ç”¨ã™ã‚‹\fIhonored\fRã¨ã„ã†ç‰¹åˆ¥ãªåå‰ã¯ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å«ã¾ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’優先ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚ã“ã®åå‰ã®å€¤ã¯ã€\fIall\fR(リクエストã•ã‚Œã‚‹ã™ã¹ã¦ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå„ªå…ˆã•ã‚Œã‚‹)ã€\fIname{:[critical|non\-critical]}\fR(åå‰ä»˜ãã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå„ªå…ˆã•ã‚Œã‚‹ãŒã€åˆ¥ã®\fIisCritical\fR属性を使用ã™ã‚‹)ã€ãŠã‚ˆã³\fI\-name\fR(\fIall\fRã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã€ä¾‹å¤–を示ã™)ã®ã‚«ãƒ³ãƒžåŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã§ã™ã€‚デフォルトã§ã¯ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã¯å„ªå…ˆã•ã‚Œã¾ã›ã‚“。
 .PP
-\fI\-ext honored\fR¥ª¥×¥·¥ç¥ó¤Ë²Ã¤¨¡¢Ê̤Î̾Á°¤Î¡¢¤Þ¤¿¤ÏOID
-\fI\-ext\fR¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¤³¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬¡¢¤¹¤Ç¤ËÍ¥À褵¤ì¤Æ¤¤¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ËÄɲ䵤ì¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î̾Á°(¤Þ¤¿¤ÏOID)¤òÍ¥À褵¤ì¤ëÃͤǤâ»ÈÍѤ·¤¿¾ì¹ç¤Ï¡¢¤½¤ÎÃͤȽÅÍ×À­¤¬¥ê¥¯¥¨¥¹¥È¤Ë´Þ¤Þ¤ì¤ë¤â¤Î¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+\fI\-ext honored\fRオプションã«åŠ ãˆã€åˆ¥ã®åå‰ã®ã€ã¾ãŸã¯OID
+\fI\-ext\fRã®ã‚ªãƒ—ションを指定ã—ãŸå ´åˆã¯ã€ã“ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒã€ã™ã§ã«å„ªå…ˆã•ã‚Œã¦ã„るエクステンションã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€ã“ã®åå‰(ã¾ãŸã¯OID)を優先ã•ã‚Œã‚‹å€¤ã§ã‚‚使用ã—ãŸå ´åˆã¯ã€ãã®å€¤ã¨é‡è¦æ€§ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å«ã¾ã‚Œã‚‹ã‚‚ã®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .PP
-\fIsubjectKeyIdentifier\fR¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ï¾ï¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¼«¸Ê½ð̾¤Ç¤Ê¤¤¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢\fIauthorityKeyIdentifier\fR¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIsubjectKeyIdentifier\fRエクステンションã¯å¸¸ã«ä½œæˆã•ã‚Œã¾ã™ã€‚自己署åã§ãªã„証明書ã®å ´åˆã¯ã€\fIauthorityKeyIdentifier\fRãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥æ¡¼¥¶¡¼¤Ï¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó(¤ª¤è¤Ó¾ÚÌÀ½ñ¤Î¾¤Î¥Õ¥£¡¼¥ë¥É)¤ÎÁȹ礻¤Ë¤è¤Ã¤Æ¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Îɸ½à¤Ë½àµò¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥³¥Þ¥ó¥É"
+\fB注æ„:\fR
+ユーザーã¯ã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³(ãŠã‚ˆã³è¨¼æ˜Žæ›¸ã®ä»–ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰)ã®çµ„åˆã›ã«ã‚ˆã£ã¦ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã®æ¨™æº–ã«æº–æ‹ ã—ãªã„å ´åˆãŒã‚ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "コマンド"
 .PP
 \-gencert
 .RS 4
 \fI{\-rfc} {\-infile infile} {\-outfile outfile} {\-alias alias} {\-sigalg sigalg} {\-dname dname} {\-startdate startdate {\-ext ext}* {\-validity valDays} [\-keypass keypass] {\-keystore keystore} [\-storepass storepass] {\-storetype storetype} {\-providername provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¡¦¥Õ¥¡¥¤¥ë(\fIkeytool\fR
-\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇºîÀ®²Äǽ)¤ËÂФ¹¤ë¥ì¥¹¥Ý¥ó¥¹¤È¤·¤Æ¾ÚÌÀ½ñ¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIinfile\fR¤«¤é(¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É¸½àÆþÎϤ«¤é)¥ê¥¯¥¨¥¹¥È¤òÆɤ߹þ¤ß¡¢ÊÌ̾¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¤½¤Î¥ê¥¯¥¨¥¹¥È¤Ë½ð̾¤·¤Æ¡¢X\&.509¾ÚÌÀ½ñ¤ò\fIoutfile\fR¤Ë(¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É¸½à½ÐÎϤË)½ÐÎϤ·¤Þ¤¹¡£\fI\-rfc\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢½ÐÎÏ·Á¼°¤ÏBASE64Éä¹æ²½¤ÎPEM¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢¥Ð¥¤¥Ê¥êDER¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+証明書リクエスト・ファイル(\fIkeytool\fR
+\fI\-certreq\fRコマンドã§ä½œæˆå¯èƒ½)ã«å¯¾ã™ã‚‹ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIinfile\fRã‹ã‚‰(çœç•¥ã—ãŸå ´åˆã¯ã€æ¨™æº–入力ã‹ã‚‰)リクエストを読ã¿è¾¼ã¿ã€åˆ¥åã®ç§˜å¯†éµã‚’使用ã—ã¦ãã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«ç½²åã—ã¦ã€X\&.509証明書を\fIoutfile\fRã«(çœç•¥ã—ãŸå ´åˆã¯ã€æ¨™æº–出力ã«)出力ã—ã¾ã™ã€‚\fI\-rfc\fRを指定ã—ãŸå ´åˆã€å‡ºåŠ›å½¢å¼ã¯BASE64符å·åŒ–ã®PEMã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€ãƒã‚¤ãƒŠãƒªDERãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
-\fIsigalg\fRÃͤˤϡ¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£\fIstartdate\fR°ú¿ô¤Ï¡¢¾ÚÌÀ½ñ¤ÎÍ­¸ú³«»ÏÆü»þ¤Ç¤¹¡£\fIvalDays\fR°ú¿ô¤Ï¡¢¾ÚÌÀ½ñ¤ÎÍ­¸úÆü¿ô¤ò¼¨¤·¤Þ¤¹¡£
+\fIsigalg\fR値ã«ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚\fIstartdate\fR引数ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹é–‹å§‹æ—¥æ™‚ã§ã™ã€‚\fIvalDays\fR引数ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹æ—¥æ•°ã‚’示ã—ã¾ã™ã€‚
 .sp
-\fIdname\fR¤ò»ØÄꤹ¤ë¤È¡¢À¸À®¤µ¤ì¤ë¾ÚÌÀ½ñ¤Î¼çÂΤȤ·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤«¤é¤Î̾Á°¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fIdname\fRを指定ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®ä¸»ä½“ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‹ã‚‰ã®åå‰ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIext\fRÃͤϡ¢¾ÚÌÀ½ñ¤ËËä¤á¹þ¤Þ¤ì¤ëX\&.509¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£\fI\-ext\fR¤Î¹½Ê¸¤Ë¤Ä¤¤¤Æ¤Ï¡¢°ìÈÌ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIext\fR値ã¯ã€è¨¼æ˜Žæ›¸ã«åŸ‹ã‚è¾¼ã¾ã‚Œã‚‹X\&.509エクステンションを示ã—ã¾ã™ã€‚\fI\-ext\fRã®æ§‹æ–‡ã«ã¤ã„ã¦ã¯ã€ä¸€èˆ¬ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-gencert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢\fIe1\fR¤È¤¤¤¦¾ÚÌÀ½ñ¤òºîÀ®¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤Ï¡¢3¤Ä¤Î¾ÚÌÀ½ñ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fI\-gencert\fRオプションを使用ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’作æˆã§ãã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€\fIe1\fRã¨ã„ã†è¨¼æ˜Žæ›¸ã‚’作æˆã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã¯ã€3ã¤ã®è¨¼æ˜Žæ›¸ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIca\fR¡¢\fIca1\fR¡¢\fIca2\fR¤ª¤è¤Ó\fIe1\fR¤Î4¤Ä¤Î¸°¥Ú¥¢¤òºîÀ®¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIca\fRã€\fIca1\fRã€\fIca2\fRãŠã‚ˆã³\fIe1\fRã®4ã¤ã®éµãƒšã‚¢ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -687,7 +687,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î2¤Ä¤Î¥³¥Þ¥ó¥É¤Ï¡¢½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òºîÀ®¤·¤Þ¤¹¡£\fIca\fR¤Ï\fIca1\fR¤Ë½ð̾¤·¡¢\fIca1\fR¤Ï\fIca2\fR¤Ë½ð̾¤·¤Þ¤¹¡£¤¹¤Ù¤Æ¼«¸Êȯ¹Ô¤Ç¤¹¡£
+次ã®2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ç½²å付ã証明書ã®ãƒã‚§ãƒ¼ãƒ³ã‚’作æˆã—ã¾ã™ã€‚\fIca\fRã¯\fIca1\fRã«ç½²åã—ã€\fIca1\fRã¯\fIca2\fRã«ç½²åã—ã¾ã™ã€‚ã™ã¹ã¦è‡ªå·±ç™ºè¡Œã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -704,7 +704,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¾ÚÌÀ½ñ\fIe1\fR¤òºîÀ®¤·¤Æ¥Õ¥¡¥¤¥ë\fIe1\&.cert\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Ï\fIca2\fR¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢\fIe1\fR¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤Ï\fIca\fR¡¢\fIca1\fR¤ª¤è¤Ó\fIca2\fR¤¬´Þ¤Þ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€è¨¼æ˜Žæ›¸\fIe1\fRを作æˆã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«\fIe1\&.cert\fRã«æ ¼ç´ã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¯\fIca2\fRã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¾ã™ã€‚ãã®çµæžœã€\fIe1\fRã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã¯\fIca\fRã€\fIca1\fRãŠã‚ˆã³\fIca2\fRãŒå«ã¾ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -721,23 +721,23 @@
 .RS 4
 \fI{\-alias alias} {\-keyalg keyalg} {\-keysize keysize} {\-sigalg sigalg} [\-dname dname] [\-keypass keypass] {\-startdate value} {\-ext ext}* {\-validity valDays} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¸°¤Î¥Ú¥¢(¸ø³«¸°¤ª¤è¤Ó´ØÏ¢¤¹¤ëÈëÌ©¸°)¤òÀ¸À®¤·¤Þ¤¹¡£¸ø³«¸°¤ÏX\&.509 v3¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤µ¤ì¤Þ¤¹¡£¾ÚÌÀ½ñ¤Ï¡¢Ã±°ì¤ÎÍ×ÁǤò»ý¤Ä¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤È¤·¤Æ³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÈÈëÌ©¸°¤Ï¡¢alias¤ÇÆÃÄꤵ¤ì¤ë¿·¤·¤¤¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+éµã®ãƒšã‚¢(公開éµãŠã‚ˆã³é–¢é€£ã™ã‚‹ç§˜å¯†éµ)を生æˆã—ã¾ã™ã€‚公開éµã¯X\&.509 v3自己署å証明書ã§ãƒ©ãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚証明書ã¯ã€å˜ä¸€ã®è¦ç´ ã‚’æŒã¤è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¨ã—ã¦æ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¨ç§˜å¯†éµã¯ã€aliasã§ç‰¹å®šã•ã‚Œã‚‹æ–°ã—ã„キーストア・エントリã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIkeyalg\fRÃͤϸ°¥Ú¥¢¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò¡¢\fIkeysize\fRÃͤÏÀ¸À®¤¹¤ë³Æ¸°¤Î¥µ¥¤¥º¤ò¡¢¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£\fIsigalg\fRÃͤϡ¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ï\fIkeyalg\fRÃͤȸߴ¹À­¤¬¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeyalg\fR値ã¯éµãƒšã‚¢ã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’ã€\fIkeysize\fR値ã¯ç”Ÿæˆã™ã‚‹å„éµã®ã‚µã‚¤ã‚ºã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚\fIsigalg\fR値ã¯ã€è‡ªå·±ç½²å証明書ã«ç½²åを付ã‘ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã¯\fIkeyalg\fR値ã¨äº’æ›æ€§ãŒã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIdname\fRÃͤˤϡ¢\fIalias\fRÃͤ˴ØÏ¢ÉÕ¤±¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Îissuer¥Õ¥£¡¼¥ë¥É¤Èsubject¥Õ¥£¡¼¥ë¥É¤È¤·¤Æ»ÈÍѤ¹¤ëX\&.500¼±ÊÌ̾¤ò»ØÄꤷ¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¼±ÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¼±ÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+\fIdname\fR値ã«ã¯ã€\fIalias\fR値ã«é–¢é€£ä»˜ã‘ã€è‡ªå·±ç½²å証明書ã®issuerフィールドã¨subjectフィールドã¨ã—ã¦ä½¿ç”¨ã™ã‚‹X\&.500識別åを指定ã—ã¾ã™ã€‚コマンドラインã§è­˜åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€è­˜åˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-\fIkeypass\fRÃͤˤϡ¢À¸À®¤µ¤ì¤ë¸°¤Î¥Ú¥¢¤Î¤¦¤Á¡¢ÈëÌ©¸°¤òÊݸ¤ë¤Î¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢\fI[Return]¥­¡¼\fR¤ò²¡¤¹¤È¡¢¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeypass\fR値ã«ã¯ã€ç”Ÿæˆã•ã‚Œã‚‹éµã®ãƒšã‚¢ã®ã†ã¡ã€ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€\fI[Return]キー\fRを押ã™ã¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fR値ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIstartdate\fRÃͤˤϡ¢¾ÚÌÀ½ñ¤Îȯ¹Ô»þ¹ï¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢X\&.509¾ÚÌÀ½ñ¤Î¡ÖValidity¡×¥Õ¥£¡¼¥ë¥É¤Î¡ÖNot Before¡×ÃͤȤâ¸Æ¤Ð¤ì¤Þ¤¹¡£
+\fIstartdate\fR値ã«ã¯ã€è¨¼æ˜Žæ›¸ã®ç™ºè¡Œæ™‚刻を指定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€X\&.509証明書ã®ã€ŒValidityã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®ã€ŒNot Beforeã€å€¤ã¨ã‚‚呼ã°ã‚Œã¾ã™ã€‚
 .sp
-¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¼¡¤Î2¤Ä¤Î·Á¼°¤Î¤¤¤º¤ì¤«¤ÇÀßÄê¤Ç¤­¤Þ¤¹¡£
+オプションã®å€¤ã¯ã€æ¬¡ã®2ã¤ã®å½¢å¼ã®ã„ãšã‚Œã‹ã§è¨­å®šã§ãã¾ã™ã€‚
 .sp
 \fI([+\-]nnn[ymdHMS])+\fR
 .sp
 \fI[yyyy/mm/dd] [HH:MM:SS]\fR
 .sp
-ºÇ½é¤Î·Á¼°¤Ç¤Ï¡¢È¯¹Ô»þ¹ï¤Ï¡¢»ØÄꤵ¤ì¤ëÃͤÎʬ¡¢¸½ºß¤Î»þ¹ï¤«¤é°Ü¤ê¤Þ¤¹¡£»ØÄꤵ¤ì¤ëÃͤϡ¢°ìÏ¢¤Î²¼°Ì¤ÎÃͤòÏ¢·ë¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£²¼°Ì¤Î³ÆÃͤǡ¢¥×¥é¥¹µ­¹æ(¡Ö+¡×)¤Ï»þ´Ö¤¬¿Ê¤à¤³¤È¤ò¡¢¥Þ¥¤¥Ê¥¹µ­¹æ(¡Ö\-¡×)¤Ï»þ´Ö¤¬Ìá¤ë¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£°Ü¤ë»þ´Ö¤Ï\fInnn\fR¤Ç¡¢Ã±°Ì¤Ïǯ¡¢·î¡¢Æü¡¢»þ´Ö¡¢Ê¬¤Þ¤¿¤ÏÉäǤ¹(¤½¤ì¤¾¤ì¡¢1ʸ»ú¤Î\fIy\fR¡¢\fIm\fR¡¢\fId\fR¡¢\fIH\fR¡¢\fIM\fR¤Þ¤¿¤Ï\fIS\fR¡×¤Ç¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹)¡£²¼°Ì¤Î³ÆÃͤÇ\fIjava\&.util\&.GregorianCalendar\&.add(int field, int amount)\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¡¢È¯¹Ô»þ¹ï¤ÎÄɲäÎÃͤ¬º¸¤«¤é±¦¤Ø·×»»¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢»ØÄꤹ¤ë¤È¡¢È¯¹Ô»þ¹ï¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+最åˆã®å½¢å¼ã§ã¯ã€ç™ºè¡Œæ™‚刻ã¯ã€æŒ‡å®šã•ã‚Œã‚‹å€¤ã®åˆ†ã€ç¾åœ¨ã®æ™‚刻ã‹ã‚‰ç§»ã‚Šã¾ã™ã€‚指定ã•ã‚Œã‚‹å€¤ã¯ã€ä¸€é€£ã®ä¸‹ä½ã®å€¤ã‚’連çµã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚下ä½ã®å„値ã§ã€ãƒ—ラス記å·(「+ã€)ã¯æ™‚é–“ãŒé€²ã‚€ã“ã¨ã‚’ã€ãƒžã‚¤ãƒŠã‚¹è¨˜å·(「\-ã€)ã¯æ™‚é–“ãŒæˆ»ã‚‹ã“ã¨ã‚’æ„味ã—ã¦ã„ã¾ã™ã€‚移る時間ã¯\fInnn\fRã§ã€å˜ä½ã¯å¹´ã€æœˆã€æ—¥ã€æ™‚é–“ã€åˆ†ã¾ãŸã¯ç§’ã§ã™(ãã‚Œãžã‚Œã€1文字ã®\fIy\fRã€\fIm\fRã€\fId\fRã€\fIH\fRã€\fIM\fRã¾ãŸã¯\fIS\fRã€ã§ç¤ºã•ã‚Œã¦ã„ã¾ã™)。下ä½ã®å„値ã§\fIjava\&.util\&.GregorianCalendar\&.add(int field, int amount)\fRメソッドを使用ã™ã‚‹ã“ã¨ã§ã€ç™ºè¡Œæ™‚刻ã®è¿½åŠ ã®å€¤ãŒå·¦ã‹ã‚‰å³ã¸è¨ˆç®—ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æŒ‡å®šã™ã‚‹ã¨ã€ç™ºè¡Œæ™‚刻ã¯æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -752,182 +752,182 @@
 .if n \{\
 .RE
 .\}
-2ÈÖÌܤηÁ¼°¤Ç¤Ï¡¢¥æ¡¼¥¶¡¼¤Ï¡¢Ç¯/·î/Æü¤È»þ´Ö:ʬ:ÉäÎ2¤Ä¤ÎÉôʬ¤Ç¸·Ì©¤Ê³«»Ï»þ¹ï¤òÀßÄꤷ¤Þ¤¹(Ãϸµ¤Î»þ´ÖÂÓ¤ò»ÈÍÑ)¡£¥æ¡¼¥¶¡¼¤Ï¡¢1¤Ä¤ÎÉôʬ¤Î¤ß¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤â¤¦1¤Ä¤ÎÉôʬ¤Ï¸½ºß¤ÎÆüÉÕ(¤Þ¤¿¤Ï»þ¹ï)¤ÈƱ¤¸¤Ë¤Ê¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢·Á¼°¤ÎÄêµÁ¤Ë¼¨¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢·å¿ô¤ò¸·Ì©¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(û¤¤¾ì¹ç¤Ï0¤ÇËä¤á¤Þ¤¹)¡£ÆüÉդȻþ¹ï¤ÎξÊý¤¬»ØÄꤵ¤ì¤¿¾õÂ֤ǡ¢2¤Ä¤ÎÉôʬ¤Î´Ö¤Ë¶õÇòʸ»ú¤¬1¤Ä(1¤Ä¤Î¤ß)¤¢¤ê¤Þ¤¹¡£»þ´Ö¤Ï¾ï¤Ë24»þ´Ö·Á¼°¤Ç»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
+2番目ã®å½¢å¼ã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã€å¹´/月/æ—¥ã¨æ™‚é–“:分:秒ã®2ã¤ã®éƒ¨åˆ†ã§åŽ³å¯†ãªé–‹å§‹æ™‚刻を設定ã—ã¾ã™(地元ã®æ™‚間帯を使用)。ユーザーã¯ã€1ã¤ã®éƒ¨åˆ†ã®ã¿ã‚’指定ã§ãã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚‚ã†1ã¤ã®éƒ¨åˆ†ã¯ç¾åœ¨ã®æ—¥ä»˜(ã¾ãŸã¯æ™‚刻)ã¨åŒã˜ã«ãªã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚ユーザーã¯ã€å½¢å¼ã®å®šç¾©ã«ç¤ºã•ã‚Œã¦ã„るよã†ã«ã€æ¡æ•°ã‚’厳密ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(短ã„å ´åˆã¯0ã§åŸ‹ã‚ã¾ã™)。日付ã¨æ™‚刻ã®ä¸¡æ–¹ãŒæŒ‡å®šã•ã‚ŒãŸçŠ¶æ…‹ã§ã€2ã¤ã®éƒ¨åˆ†ã®é–“ã«ç©ºç™½æ–‡å­—ãŒ1ã¤(1ã¤ã®ã¿)ã‚ã‚Šã¾ã™ã€‚時間ã¯å¸¸ã«24時間形å¼ã§æŒ‡å®šã—ã¦ãã ã•ã„。
 .sp
-¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢³«»ÏÆüÉդϸ½ºß¤Î»þ¹ï¤Ë¤Ê¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Ï¡¢ºÇÂç¤Ç1²ó»ØÄê¤Ç¤­¤Þ¤¹¡£
+オプションを指定ã—ãªã„ã¨ã€é–‹å§‹æ—¥ä»˜ã¯ç¾åœ¨ã®æ™‚刻ã«ãªã‚Šã¾ã™ã€‚オプションã¯ã€æœ€å¤§ã§1回指定ã§ãã¾ã™ã€‚
 .sp
-\fIvalDays\fR¤ÎÃͤˤϡ¢¾ÚÌÀ½ñ¤ÎÍ­¸úÆü¿ô¤ò»ØÄꤷ¤Þ¤¹(\fI\-startdate\fR¤Ç»ØÄꤵ¤ì¤¿ÆüÉÕ¡¢¤Þ¤¿¤Ï\fI\-startdate\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¸½ºß¤ÎÆüÉÕ¤«¤é»Ï¤Þ¤ê¤Þ¤¹)¡£
+\fIvalDays\fRã®å€¤ã«ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹æ—¥æ•°ã‚’指定ã—ã¾ã™(\fI\-startdate\fRã§æŒ‡å®šã•ã‚ŒãŸæ—¥ä»˜ã€ã¾ãŸã¯\fI\-startdate\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ç¾åœ¨ã®æ—¥ä»˜ã‹ã‚‰å§‹ã¾ã‚Šã¾ã™)。
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-genkey\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-genkeypair\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-genkey\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-genkeypair\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-genseckey
 .RS 4
 \fI\-genseckey {\-alias alias} {\-keyalg keyalg} {\-keysize keysize} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-ÈëÌ©¸°¤òÀ¸À®¤·¡¢¤½¤ì¤ò¿·¤·¤¤\fIKeyStore\&.SecretKeyEntry\fR(\fIalias\fR¤ÇÆÃÄꤵ¤ì¤ë)Æâ¤Ë³ÊǼ¤·¤Þ¤¹¡£
+秘密éµã‚’生æˆã—ã€ãれを新ã—ã„\fIKeyStore\&.SecretKeyEntry\fR(\fIalias\fRã§ç‰¹å®šã•ã‚Œã‚‹)内ã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
-\fIkeyalg\fRÃͤϸ°¥Ú¥¢¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò¡¢\fIkeysize\fRÃͤÏÀ¸À®¤¹¤ë³Æ¸°¤Î¥µ¥¤¥º¤ò¡¢¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢ÈëÌ©¸°¤òÊݸ¤ë¥Ñ¥¹¥ï¡¼¥É¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢[Return]¥­¡¼¤ò²¡¤¹¤È¡¢\fIkeystore\fR¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeyalg\fR値ã¯éµãƒšã‚¢ã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’ã€\fIkeysize\fR値ã¯ç”Ÿæˆã™ã‚‹å„éµã®ã‚µã‚¤ã‚ºã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚\fIkeypass\fR値ã¯ã€ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ãƒ‘スワードã§ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€[Return]キーを押ã™ã¨ã€\fIkeystore\fRã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fR値ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-importcert
 .RS 4
 \fI\-importcert {\-alias alias} {\-file cert_file} [\-keypass keypass] {\-noprompt} {\-trustcacerts} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥Õ¥¡¥¤¥ë\fIcert_file\fR¤«¤é¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó(¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ï¡¢PKCS#7·Á¼°¤Î±þÅú¤Þ¤¿¤Ï°ìÏ¢¤ÎX\&.509¾ÚÌÀ½ñ¤ÇÄ󶡤µ¤ì¤ë¤â¤Î)¤òÆɤ߹þ¤ß¡¢\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë\fIkeystore\fR¥¨¥ó¥È¥ê¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÆɤ߹þ¤ß¤Þ¤¹¡£
+ファイル\fIcert_file\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³(証明書ãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã¯ã€PKCS#7å½¢å¼ã®å¿œç­”ã¾ãŸã¯ä¸€é€£ã®X\&.509証明書ã§æä¾›ã•ã‚Œã‚‹ã‚‚ã®)を読ã¿è¾¼ã¿ã€\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹\fIkeystore\fRエントリã«æ ¼ç´ã—ã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚
 .sp
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢X\&.509 v1¡¢v2¡¢v3¤Î¾ÚÌÀ½ñ¡¢¤ª¤è¤ÓPKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¤«¤é¹½À®¤µ¤ì¤Æ¤¤¤ëPKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È¤¹¤ë¥Ç¡¼¥¿¤Ï¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½Êý¼°¡¢¤Þ¤¿¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°(Base64Éä¹æ²½¤È¤â¸Æ¤Ð¤ì¤ë)¤Î¤É¤Á¤é¤«¤ÇÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÉä¹æ²½Êý¼°¤Î¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï\fI\-\fR\fI\-\-\-\-BEGIN\fR¤Ç»Ï¤Þ¤ëʸ»úÎó¤Ç³«»Ï¤µ¤ì¡¢\fI\-\-\-\-\-END\fR¤Ç»Ï¤Þ¤ëʸ»úÎó¤Ç½ªÎ»¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeytool\fRコマンドã§ã¯ã€X\&.509 v1ã€v2ã€v3ã®è¨¼æ˜Žæ›¸ã€ãŠã‚ˆã³PKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ã‹ã‚‰æ§‹æˆã•ã‚Œã¦ã„ã‚‹PKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’インãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚インãƒãƒ¼ãƒˆã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã¯ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–æ–¹å¼ã€ã¾ãŸã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼(Base64符å·åŒ–ã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ã©ã¡ã‚‰ã‹ã§æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ç¬¦å·åŒ–æ–¹å¼ã®å ´åˆã€è¨¼æ˜Žæ›¸ã¯\fI\-\fR\fI\-\-\-\-BEGIN\fRã§å§‹ã¾ã‚‹æ–‡å­—列ã§é–‹å§‹ã•ã‚Œã€\fI\-\-\-\-\-END\fRã§å§‹ã¾ã‚‹æ–‡å­—列ã§çµ‚了ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¾ÚÌÀ½ñ¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤ËÄɲ乤뤿¤á¡¢¤ª¤è¤Óǧ¾Ú¶É(CA)¤Ë¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤¿·ë²Ì¤È¤·¤ÆCA¤«¤é¼õ¿®¤·¤¿¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤¿¤á(¥³¥Þ¥ó¥É¤Î\fI\-certreq\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È)¤È¤¤¤¦2¤Ä¤ÎÍýͳ¤Ç¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+証明書ã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã™ã‚‹ãŸã‚ã€ãŠã‚ˆã³èªè¨¼å±€(CA)ã«è¨¼æ˜Žæ›¸ç½²åリクエストをé€ä¿¡ã—ãŸçµæžœã¨ã—ã¦CAã‹ã‚‰å—ä¿¡ã—ãŸè¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã™ã‚‹ãŸã‚(コマンドã®\fI\-certreq\fRオプションをå‚ç…§)ã¨ã„ã†2ã¤ã®ç†ç”±ã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
-¤É¤Á¤é¤Î¥¿¥¤¥×¤Î¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¦¤«¤Ï¡¢\fI\-alias\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤè¤Ã¤Æ»ØÄꤷ¤Þ¤¹¡£ÊÌ̾¤¬¥­¡¼¡¦¥¨¥ó¥È¥ê¤ò¥Ý¥¤¥ó¥È¤·¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤¬¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¥¨¥ó¥È¥ê¤òÄɲ䷤褦¤È¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢ÊÌ̾¤¬¥­¡¼¥¹¥È¥¢Æâ¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤¬É¬ÍפǤ¹¡£ÊÌ̾¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎÊÌ̾¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¤³¤È¤Ë¤Ê¤ë¤Î¤Ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥¨¥é¡¼¤ò½ÐÎϤ·¡¢¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¤¤Þ¤»¤ó¡£ÊÌ̾¤¬¥­¡¼¡¦¥¨¥ó¥È¥ê¤ò¥Ý¥¤¥ó¥È¤¹¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤¬¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤·¤Þ¤¹¡£
+ã©ã¡ã‚‰ã®ã‚¿ã‚¤ãƒ—ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’è¡Œã†ã‹ã¯ã€\fI\-alias\fRオプションã®å€¤ã«ã‚ˆã£ã¦æŒ‡å®šã—ã¾ã™ã€‚別åãŒã‚­ãƒ¼ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’ãƒã‚¤ãƒ³ãƒˆã—ãªã„å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒä¿¡é ¼ã§ãる証明書エントリを追加ã—よã†ã¨ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã¿ãªã—ã¾ã™ã€‚ã“ã®å ´åˆã€åˆ¥åãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å­˜åœ¨ã—ã¦ã„ãªã„ã“ã¨ãŒå¿…è¦ã§ã™ã€‚別åãŒã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã€ãã®åˆ¥åã®ä¿¡é ¼ã§ãる証明書ãŒã™ã§ã«å­˜åœ¨ã™ã‚‹ã“ã¨ã«ãªã‚‹ã®ã§ã€\fIkeytool\fRコマンドã¯ã‚¨ãƒ©ãƒ¼ã‚’出力ã—ã€è¨¼æ˜Žæ›¸ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’è¡Œã„ã¾ã›ã‚“。別åãŒã‚­ãƒ¼ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’ãƒã‚¤ãƒ³ãƒˆã™ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã—よã†ã¨ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã¿ãªã—ã¾ã™ã€‚
 .RE
 .PP
 \-importpassword
 .RS 4
 \fI{\-alias alias} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥Ñ¥¹¥Õ¥ì¡¼¥º¤ò¥¤¥ó¥Ý¡¼¥È¤·¡¢\fIalias\fR¤Ç¼±Ê̤µ¤ì¤ë¿·µ¬\fIKeyStore\&.SecretKeyEntry\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Ñ¥¹¥Õ¥ì¡¼¥º¤Ï¡¢É¸½àÆþÎÏ¥¹¥È¥ê¡¼¥à¤ò²ð¤·¤ÆÄ󶡤Ǥ­¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥æ¡¼¥¶¡¼¤Ë¤½¤Î¥×¥í¥ó¥×¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fIkeypass\fR¤Ï¡¢¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¥Ñ¥¹¥Õ¥ì¡¼¥º¤ÎÊݸî¤Ë»ÈÍѤµ¤ì¤ë¥Ñ¥¹¥ï¡¼¥É¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢[Return]¥­¡¼¤ò²¡¤¹¤È¡¢\fIkeystore\fR¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fR¤Ï¡¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+パスフレーズをインãƒãƒ¼ãƒˆã—ã€\fIalias\fRã§è­˜åˆ¥ã•ã‚Œã‚‹æ–°è¦\fIKeyStore\&.SecretKeyEntry\fRã«æ ¼ç´ã—ã¾ã™ã€‚パスフレーズã¯ã€æ¨™æº–入力ストリームを介ã—ã¦æä¾›ã§ãã¾ã™ã€‚ã¾ãŸã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãã®ãƒ—ロンプトãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fIkeypass\fRã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ãƒ‘スフレーズã®ä¿è­·ã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒ‘スワードã§ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€[Return]キーを押ã™ã¨ã€\fIkeystore\fRã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fRã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-importkeystore
 .RS 4
 \fI{\-srcstoretype srcstoretype} {\-deststoretype deststoretype} [\-srcstorepass srcstorepass] [\-deststorepass deststorepass] {\-srcprotected} {\-destprotected} {\-srcalias srcalias {\-destalias destalias} [\-srckeypass srckeypass] } [\-destkeypass destkeypass] {\-noprompt} {\-srcProviderName src_provider_name} {\-destProviderName dest_provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢¤«¤é¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ø¡¢Ã±°ì¤Î¥¨¥ó¥È¥ê¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+ソース・キーストアã‹ã‚‰ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¸ã€å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã¾ãŸã¯ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã‚’インãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
-\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¤½¤ÎÊÌ̾¤ÇÆÃÄꤵ¤ì¤ëñ°ì¤Î¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£\fIdestalias\fR·Ðͳ¤Ç¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIsrcalias\fR¤¬¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¥½¡¼¥¹¤Î¥¨¥ó¥È¥ê¤¬¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fIsrckeypass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤¬²óÉü¤µ¤ì¤Þ¤¹¡£\fIsrckeypass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï\fIsrcstorepass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤ò²óÉü¤·¤è¤¦¤È¤·¤Þ¤¹¡£\fIsrcstorepass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¤«Àµ¤·¤¯¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥È¤Î¥¨¥ó¥È¥ê¤Ï\fIdestkeypass\fR¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£\fIdestkeypass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤Ï¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤Î¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤Û¤È¤ó¤É¤Î¥µ¡¼¥É¡¦¥Ñ¡¼¥Æ¥£¡¦¥Ä¡¼¥ë¤Ç¤Ï¡¢PKCS #12¥­¡¼¥¹¥È¥¢¤Ç\fIstorepass\fR¤È\fIkeypass\fR¤¬Æ±¤¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥Ä¡¼¥ë¤ÎPKCS #12¥­¡¼¥¹¥È¥¢¤òºîÀ®¤¹¤ë¾ì¹ç¤Ï¡¢¾ï¤Ë\fI\-destkeypass\fR¤È\fI\-deststorepass\fR¤¬Æ±¤¸¤Ë¤Ê¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fI\-srcalias\fRオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãã®åˆ¥åã§ç‰¹å®šã•ã‚Œã‚‹å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã‚’ターゲット・キーストアã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚\fIdestalias\fR経由ã§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIsrcalias\fRãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ソースã®ã‚¨ãƒ³ãƒˆãƒªãŒãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fIsrckeypass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªãŒå›žå¾©ã•ã‚Œã¾ã™ã€‚\fIsrckeypass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIkeytool\fRコマンドã¯\fIsrcstorepass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’回復ã—よã†ã¨ã—ã¾ã™ã€‚\fIsrcstorepass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸã‹æ­£ã—ããªã‹ã£ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ターゲットã®ã‚¨ãƒ³ãƒˆãƒªã¯\fIdestkeypass\fRã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚\fIdestkeypass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã¯ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ‰ãƒ»ãƒ‘ーティ・ツールã§ã¯ã€PKCS #12キーストアã§\fIstorepass\fRã¨\fIkeypass\fRãŒåŒã˜ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ãƒ„ールã®PKCS #12キーストアを作æˆã™ã‚‹å ´åˆã¯ã€å¸¸ã«\fI\-destkeypass\fRã¨\fI\-deststorepass\fRãŒåŒã˜ã«ãªã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
-\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£³Æ¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤ÏÂбþ¤¹¤ë¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤ÎÊÌ̾¤Î²¼¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥½¡¼¥¹¤Î¥¨¥ó¥È¥ê¤¬¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fIsrcstorepass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤¬²óÉü¤µ¤ì¤Þ¤¹¡£\fIsrcstorepass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¤«Àµ¤·¤¯¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¤¢¤ë¥¨¥ó¥È¥ê¡¦¥¿¥¤¥×¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤ä¡¢¤¢¤ë¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤¹¤ëºÝ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¤½¤Î¥¨¥ó¥È¥ê¤ò¥¹¥­¥Ã¥×¤·¤Æ½èÍý¤ò³¹Ô¤¹¤ë¤«¡¢¤¢¤ë¤¤¤Ï½èÍý¤òÃæÃǤ¹¤ë¤«¤ÎÁªÂò¤òµá¤á¤é¤ì¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤Ï¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤Î¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+\fI\-srcalias\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚å„ターゲット・エントリã¯å¯¾å¿œã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åã®ä¸‹ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ソースã®ã‚¨ãƒ³ãƒˆãƒªãŒãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fIsrcstorepass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªãŒå›žå¾©ã•ã‚Œã¾ã™ã€‚\fIsrcstorepass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸã‹æ­£ã—ããªã‹ã£ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ソース・キーストア内ã®ã‚るエントリ・タイプãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã‚„ã€ã‚るエントリをターゲット・キーストアã«æ ¼ç´ã™ã‚‹éš›ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’スキップã—ã¦å‡¦ç†ã‚’続行ã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯å‡¦ç†ã‚’中断ã™ã‚‹ã‹ã®é¸æŠžã‚’求ã‚られã¾ã™ã€‚ターゲット・エントリã¯ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .sp
-¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Ë¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¡¢¤½¤Î¥¨¥ó¥È¥ê¤ò¾å½ñ¤­¤¹¤ë¤«¡¢¤¢¤ë¤¤¤Ï°Û¤Ê¤ëÊÌ̾¤Î²¼¤Ç¿·¤·¤¤¥¨¥ó¥È¥ê¤òºîÀ®¤¹¤ë¤«¤ÎÁªÂò¤òµá¤á¤é¤ì¤Þ¤¹¡£
+ターゲット別åãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã™ã§ã«å­˜åœ¨ã—ã¦ã„ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã€ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’上書ãã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ç•°ãªã‚‹åˆ¥åã®ä¸‹ã§æ–°ã—ã„エントリを作æˆã™ã‚‹ã‹ã®é¸æŠžã‚’求ã‚られã¾ã™ã€‚
 .sp
 
-\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¿·¤·¤¤¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤»¤ó¡£´û¸¤Î¥¨¥ó¥È¥ê¤¬¤½¤Î¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤Ç¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Ê¤¤¥¨¥ó¥È¥ê¤Ï¥¹¥­¥Ã¥×¤µ¤ì¡¢·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-noprompt\fRオプションを指定ã—ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯æ–°ã—ã„ターゲット別åã®å…¥åŠ›ã‚’求ã‚られã¾ã›ã‚“。既存ã®ã‚¨ãƒ³ãƒˆãƒªãŒãã®ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã§ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚インãƒãƒ¼ãƒˆã§ããªã„エントリã¯ã‚¹ã‚­ãƒƒãƒ—ã•ã‚Œã€è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-printcertreq
 .RS 4
 \fI{\-file file}\fR
 .sp
-PKCS#10·Á¼°¤Î¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤ÎÆâÍƤò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥ê¥¯¥¨¥¹¥È¤Ï¡¢\fIkeytool\fR
-\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤Ç¤­¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Õ¥¡¥¤¥ë¤«¤é¥ê¥¯¥¨¥¹¥È¤òÆɤ߼è¤ê¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢¥ê¥¯¥¨¥¹¥È¤Ïɸ½àÆþÎϤ«¤éÆɤ߼è¤é¤ì¤Þ¤¹¡£
+PKCS#10å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®å†…容を出力ã—ã¾ã™ã€‚ã“ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã€\fIkeytool\fR
+\fI\-certreq\fRコマンドã§ç”Ÿæˆã§ãã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’読ã¿å–ã‚Šã¾ã™ã€‚ファイルãŒå­˜åœ¨ã—ãªã„å ´åˆã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯æ¨™æº–入力ã‹ã‚‰èª­ã¿å–られã¾ã™ã€‚
 .RE
 .PP
 \-certreq
 .RS 4
 \fI{\-alias alias} {\-dname dname} {\-sigalg sigalg} {\-file certreq_file} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-PKCS#10·Á¼°¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤òÀ¸À®¤·¤Þ¤¹¡£
+PKCS#10å½¢å¼ã‚’使用ã—ã¦è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)を生æˆã—ã¾ã™ã€‚
 .sp
-CSR¤Ï¡¢¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤ËÁ÷¿®¤¹¤ë¤³¤È¤òÌÜŪ¤È¤·¤¿¤â¤Î¤Ç¤¹¡£CA¤Ï¡¢¾ÚÌÀ½ñÍ×µá¼Ô¤ò(Ä̾ï¤Ï¥ª¥Õ¥é¥¤¥ó¤Ç)ǧ¾Ú¤·¡¢¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÁ÷¤êÊÖ¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î´û¸¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó(ºÇ½é¤Ï1¤Ä¤Î¼«¸Ê½ð̾¾ÚÌÀ½ñ¤«¤é¹½À®¤µ¤ì¤ë)¤ËÃÖ¤­´¹¤¨¤Æ»ÈÍѤ·¤Þ¤¹¡£
+CSRã¯ã€è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã«é€ä¿¡ã™ã‚‹ã“ã¨ã‚’目的ã¨ã—ãŸã‚‚ã®ã§ã™ã€‚CAã¯ã€è¨¼æ˜Žæ›¸è¦æ±‚者を(通常ã¯ã‚ªãƒ•ãƒ©ã‚¤ãƒ³ã§)èªè¨¼ã—ã€è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’é€ã‚Šè¿”ã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æ—¢å­˜ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³(最åˆã¯1ã¤ã®è‡ªå·±ç½²å証明書ã‹ã‚‰æ§‹æˆã•ã‚Œã‚‹)ã«ç½®ãæ›ãˆã¦ä½¿ç”¨ã—ã¾ã™ã€‚
 .sp
-alias¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤Ï¡¢PKCS#10¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤òºîÀ®¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ÈëÌ©¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢Àµ¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIkeypass\fR¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£\fIdname\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤ì¤¬CSR¤Ç¼çÂΤȤ·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿X\&.500¼±ÊÌ̾¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+aliasã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã¯ã€PKCS#10証明書リクエストを作æˆã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚秘密éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€æ­£ã—ã„パスワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§\fIkeypass\fRを指定ã—ã¦ãŠã‚‰ãšã€ç§˜å¯†éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚\fIdname\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãã‚ŒãŒCSRã§ä¸»ä½“ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€åˆ¥åã«é–¢é€£ä»˜ã‘られãŸX\&.500識別åãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIsigalg\fRÃͤˤϡ¢CSR¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIsigalg\fR値ã«ã¯ã€CSRã«ç½²åを付ã‘ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚
 .sp
-CSR¤Ï¡¢¥Õ¥¡¥¤¥ëcertreq_file¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdout\fR¤ËCSR¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+CSRã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«certreq_fileã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdout\fRã«CSRãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-CA¤«¤é¤Î¥ì¥¹¥Ý¥ó¥¹¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢\fIimportcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+CAã‹ã‚‰ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€\fIimportcert\fRコマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-exportcert
 .RS 4
 \fI{\-alias alias} {\-file cert_file} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-rfc} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤«¤éÆɤ߹þ¤ß¡¢¥Õ¥¡¥¤¥ëcert_file¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdout\fR¤Ë¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fIalias\fRã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ã‚’キーストアã‹ã‚‰èª­ã¿è¾¼ã¿ã€ãƒ•ã‚¡ã‚¤ãƒ«cert_fileã«æ ¼ç´ã—ã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdout\fRã«è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¾ÚÌÀ½ñ¤Ï¥Ð¥¤¥Ê¥êÉä¹æ²½¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Î½ÐÎϤϥ¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€è¨¼æ˜Žæ›¸ã¯ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã®å‡ºåŠ›ã¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIalias\fR¤¬¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ë¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIalias\fR¤Ï¡¢´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»ý¤Ä¸°¥¨¥ó¥È¥ê¤ò»²¾È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Ï¡¢\fIalias\fR¤Ë¤è¤Ã¤Æɽ¤µ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ç¤¹¡£
+\fIalias\fRãŒã€ä¿¡é ¼ã§ãる証明書をå‚ç…§ã—ã¦ã„ã‚‹å ´åˆã¯ã€è©²å½“ã™ã‚‹è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIalias\fRã¯ã€é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’æŒã¤éµã‚¨ãƒ³ãƒˆãƒªã‚’å‚ç…§ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€åˆã®è¨¼æ˜Žæ›¸ãŒè¿”ã•ã‚Œã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¯ã€\fIalias\fRã«ã‚ˆã£ã¦è¡¨ã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã§ã™ã€‚
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-export\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-exportcert\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-export\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-exportcert\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-list
 .RS 4
 \fI{\-alias alias} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v | \-rfc} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤ÇÆÃÄꤵ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÆâÍƤò\fIstdout\fR¤Ë½ÐÎϤ·¤Þ¤¹¡£\fIalias\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÆâÍƤ¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIalias\fRã§ç‰¹å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®å†…容を\fIstdout\fRã«å‡ºåŠ›ã—ã¾ã™ã€‚\fIalias\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®å†…容ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¾ÚÌÀ½ñ¤ÎSHA1¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤·¤Þ¤¹¡£
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢½êÍ­¼Ô¡¢È¯¹Ô¼Ô¡¢¥·¥ê¥¢¥ëÈֹ桢³ÈÄ¥µ¡Ç½¤Ê¤É¤ÎÉÕ²ÃŪ¤Ê¾ðÊó¤È¤È¤â¤Ë¡¢¿Í´Ö¤¬Æɤळ¤È¤Î¤Ç¤­¤ë·Á¼°¤Ç¾ÚÌÀ½ñ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ç¾ÚÌÀ½ñ¤ÎÆâÍƤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯è¨¼æ˜Žæ›¸ã®SHA1フィンガープリントを表示ã—ã¾ã™ã€‚
+\fI\-v\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€æ‰€æœ‰è€…ã€ç™ºè¡Œè€…ã€ã‚·ãƒªã‚¢ãƒ«ç•ªå·ã€æ‹¡å¼µæ©Ÿèƒ½ãªã©ã®ä»˜åŠ çš„ãªæƒ…å ±ã¨ã¨ã‚‚ã«ã€äººé–“ãŒèª­ã‚€ã“ã¨ã®ã§ãã‚‹å½¢å¼ã§è¨¼æ˜Žæ›¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§è¨¼æ˜Žæ›¸ã®å†…容ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤È\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+\fI\-v\fRオプションã¨\fI\-rfc\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-printcert
 .RS 4
 \fI{\-file cert_file | \-sslserver host[:port]} {\-jarfile JAR_file {\-rfc} {\-v} {\-Jjavaoption}\fR
 .sp
-¥Õ¥¡¥¤¥ëcert_file¡¢host:port¤Ë¤¢¤ëSSL¥µ¡¼¥Ð¡¼¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë\fIJAR_file\fR(\fI\-jarfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê)¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤ß¡¢¿Í´Ö¤¬Æɤळ¤È¤Î¤Ç¤­¤ë·Á¼°¤Ç¾ÚÌÀ½ñ¤ÎÆâÍƤòɽ¼¨¤·¤Þ¤¹¡£¥Ý¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢É¸½à¤ÎHTTPS¥Ý¡¼¥È443¤¬ÁÛÄꤵ¤ì¤Þ¤¹¡£\fI\-sslserver\fR¤ª¤è¤Ó\-file¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤ËÈ¿¤¹¤ë¾ì¹ç¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤ß¤Þ¤¹¡£
+ファイルcert_fileã€host:portã«ã‚ã‚‹SSLサーãƒãƒ¼ã€ã¾ãŸã¯ç½²å付ãJARファイル\fIJAR_file\fR(\fI\-jarfile\fRオプションを指定)ã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã¿ã€äººé–“ãŒèª­ã‚€ã“ã¨ã®ã§ãã‚‹å½¢å¼ã§è¨¼æ˜Žæ›¸ã®å†…容を表示ã—ã¾ã™ã€‚ãƒãƒ¼ãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€æ¨™æº–ã®HTTPSãƒãƒ¼ãƒˆ443ãŒæƒ³å®šã•ã‚Œã¾ã™ã€‚\fI\-sslserver\fRãŠã‚ˆã³\-fileオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã‚Œã«åã™ã‚‹å ´åˆã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚オプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚
 .sp
-\fI\-rfc\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½É¸½à¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢PEM¥â¡¼¥É¤Ç¾ÚÌÀ½ñ¤ò½ÐÎϤ·¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-rfc\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–標準ã§å®šç¾©ã•ã‚Œã¦ã„るよã†ã«ã€PEMモードã§è¨¼æ˜Žæ›¸ã‚’出力ã—ã¾ã™ã€‚インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤à¾ì¹ç¡¢¤½¤Î¾ÚÌÀ½ñ¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½É¸½à¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½Êý¼°¤Þ¤¿¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Çɽ¼¨¤Ç¤­¤Þ¤¹¡£
+ファイルã¾ãŸã¯\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã‚€å ´åˆã€ãã®è¨¼æ˜Žæ›¸ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–標準ã§å®šç¾©ã•ã‚Œã¦ã„るよã†ã«ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–æ–¹å¼ã¾ãŸã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§è¡¨ç¤ºã§ãã¾ã™ã€‚
 .sp
-SSL¥µ¡¼¥Ð¡¼¤¬¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤ÎÇظå¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-J\-Dhttps\&.proxyHost=proxyhost\fR¤ª¤è¤Ó\fI\-J\-Dhttps\&.proxyPort=proxyport\fR¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Æ¡¢¥×¥í¥­¥·¡¦¥È¥ó¥Í¥ê¥ó¥°¤ò»ÈÍѤǤ­¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide\&.html¤Î
-¡ÖJava Secure Socket Extension (JSSE) Reference Guide¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+SSLサーãƒãƒ¼ãŒãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®èƒŒå¾Œã«ã‚ã‚‹å ´åˆã¯ã€\fI\-J\-Dhttps\&.proxyHost=proxyhost\fRãŠã‚ˆã³\fI\-J\-Dhttps\&.proxyPort=proxyport\fRオプションをコマンドラインã§æŒ‡å®šã—ã¦ã€ãƒ—ロキシ・トンãƒãƒªãƒ³ã‚°ã‚’使用ã§ãã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide\&.htmlã®
+「Java Secure Socket Extension (JSSE) Reference Guideã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fBÃí°Õ:\fR
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥­¡¼¥¹¥È¥¢¤È¤Ï´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®ã‚ªãƒ—ションã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨ã¯é–¢ä¿‚ãªã使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-printcrl
 .RS 4
 \fI\-file crl_ {\-v}\fR
 .sp
-¥Õ¥¡¥¤¥ë\fIcrl_\fR¤«¤é¾ÚÌÀ½ñ¼º¸ú¥ê¥¹¥È(CRL)¤òÆɤ߹þ¤ß¤Þ¤¹¡£CRL¤Ï¡¢È¯¹Ô¤·¤¿CA¤Ë¤è¤Ã¤Æ¼º¸ú¤µ¤ì¤¿¥Ç¥¸¥¿¥ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ç¤¹¡£CA¤Ï¡¢\fIcrl_\fR¤òÀ¸À®¤·¤Þ¤¹¡£
+ファイル\fIcrl_\fRã‹ã‚‰è¨¼æ˜Žæ›¸å¤±åŠ¹ãƒªã‚¹ãƒˆ(CRL)を読ã¿è¾¼ã¿ã¾ã™ã€‚CRLã¯ã€ç™ºè¡Œã—ãŸCAã«ã‚ˆã£ã¦å¤±åŠ¹ã•ã‚ŒãŸãƒ‡ã‚¸ã‚¿ãƒ«è¨¼æ˜Žæ›¸ã®ãƒªã‚¹ãƒˆã§ã™ã€‚CAã¯ã€\fIcrl_\fRを生æˆã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥­¡¼¥¹¥È¥¢¤È¤Ï´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®ã‚ªãƒ—ションã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨ã¯é–¢ä¿‚ãªã使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-storepasswd
 .RS 4
 \fI[\-new new_storepass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption}\fR
 .sp
-¥­¡¼¥¹¥È¥¢¤ÎÆâÍƤÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Þ¤¹¡£\fInew_storepass\fR¤Ë¤Ï¡¢¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£new_storepass¤Ï¡¢6ʸ»ú°Ê¾å¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å†…容ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを変更ã—ã¾ã™ã€‚\fInew_storepass\fRã«ã¯ã€æ–°ã—ã„パスワードを指定ã—ã¾ã™ã€‚new_storepassã¯ã€6文字以上ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-keypasswd
 .RS 4
 \fI{\-alias alias} [\-keypass old_keypass] [\-new new_keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ëÈó¸ø³«/ÈëÌ©¸°¤òÊݸ¤ë¤¿¤á¤Î¥Ñ¥¹¥ï¡¼¥É¤ò¡¢\fIold_keypass\fR¤«¤é\fInew_keypass\fR¤ËÊѹ¹¤·¤Þ¤¹¡£new_keypass¤Ï¡¢6ʸ»ú°Ê¾å¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹éžå…¬é–‹/秘密éµã‚’ä¿è­·ã™ã‚‹ãŸã‚ã®ãƒ‘スワードをã€\fIold_keypass\fRã‹ã‚‰\fInew_keypass\fRã«å¤‰æ›´ã—ã¾ã™ã€‚new_keypassã¯ã€6文字以上ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-keypass\fRオプションを指定ã—ã¦ãŠã‚‰ãšã€éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-new\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-new\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€æ–°ã—ã„パスワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-delete
 .RS 4
 \fI[\-alias alias] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¨¥ó¥È¥ê¤ò¥­¡¼¥¹¥È¥¢¤«¤éºï½ü¤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÇÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’キーストアã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã€‚コマンドラインã§åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€åˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-changealias
 .RS 4
 \fI{\-alias alias} [\-destalias destalias] [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-»ØÄꤵ¤ì¤¿\fIalias\fR¤«¤é¿·¤·¤¤ÊÌ̾\fIdestalias\fR¤Ø¡¢´û¸¤Î¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ò°ÜÆ°¤·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¸µ¤Î¥¨¥ó¥È¥ê¤¬¥¨¥ó¥È¥ê¡¦¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤Ç¤½¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¸°¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIstorepass\fR(»ØÄꤵ¤ì¤¿¾ì¹ç)¤¬¤Þ¤º»î¤ß¤é¤ì¤Þ¤¹¡£¤½¤Î»î¤ß¤¬¼ºÇÔ¤¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸ\fIalias\fRã‹ã‚‰æ–°ã—ã„別å\fIdestalias\fRã¸ã€æ—¢å­˜ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’移動ã—ã¾ã™ã€‚ターゲット別åを指定ã—ãªã‹ã£ãŸå ´åˆã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚å…ƒã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fI\-keypass\fRオプションã§ãã®ãƒ‘スワードを指定ã§ãã¾ã™ã€‚éµãƒ‘スワードãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIstorepass\fR(指定ã•ã‚ŒãŸå ´åˆ)ãŒã¾ãšè©¦ã¿ã‚‰ã‚Œã¾ã™ã€‚ãã®è©¦ã¿ãŒå¤±æ•—ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-´ðËÜŪ¤Ê¥³¥Þ¥ó¥É¤È¤½¤Î¥ª¥×¥·¥ç¥ó¤Î°ìÍ÷¤òɽ¼¨¤·¤Þ¤¹¡£
+基本的ãªã‚³ãƒžãƒ³ãƒ‰ã¨ãã®ã‚ªãƒ—ションã®ä¸€è¦§ã‚’表示ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥³¥Þ¥ó¥É¤Î¾ÜºÙ¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Æ¤¯¤À¤µ¤¤:
-\fIkeytool \-command_name \-help\fR¡£\fIcommand_name\fR¤Ï¥³¥Þ¥ó¥É¤Î̾Á°¤Ç¤¹¡£
+特定ã®ã‚³ãƒžãƒ³ãƒ‰ã®è©³ç´°ã‚’å‚ç…§ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¦ãã ã•ã„:
+\fIkeytool \-command_name \-help\fR。\fIcommand_name\fRã¯ã‚³ãƒžãƒ³ãƒ‰ã®åå‰ã§ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¸ø³«/ÈëÌ©¸°¤Î¥Ú¥¢¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤«¤é¤Î¾ÚÌÀ½ñ¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥­¡¼¥¹¥È¥¢¤òºîÀ®¤¹¤ë¼ê½ç¤ò¼¨¤·¤Þ¤¹¡£
-.SS "¸°¤Î¥Ú¥¢¤ÎÀ¸À®"
+ã“ã®ä¾‹ã§ã¯ã€å…¬é–‹/秘密éµã®ãƒšã‚¢ãŠã‚ˆã³ä¿¡é ¼ã§ãるエンティティã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã‚’管ç†ã™ã‚‹ãŸã‚ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã™ã‚‹æ‰‹é †ã‚’示ã—ã¾ã™ã€‚
+.SS "éµã®ãƒšã‚¢ã®ç”Ÿæˆ"
 .PP
-¤Þ¤º¡¢¥­¡¼¥¹¥È¥¢¤òºîÀ®¤·¤Æ¸°¤Î¥Ú¥¢¤òÀ¸À®¤·¤Þ¤¹¡£Ã±°ì¹Ô¤ËÆþÎϤ¹¤ë¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+ã¾ãšã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã—ã¦éµã®ãƒšã‚¢ã‚’生æˆã—ã¾ã™ã€‚å˜ä¸€è¡Œã«å…¥åŠ›ã™ã‚‹ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -942,11 +942,11 @@
 .RE
 .\}
 .PP
-¥³¥Þ¥ó¥É¤Ï¡¢working¥Ç¥£¥ì¥¯¥È¥ê¤Ë\fImykeystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤òºîÀ®¤·(¥­¡¼¥¹¥È¥¢¤Ï¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤¤¤È²¾Äê)¡¢ºîÀ®¤·¤¿¥­¡¼¥¹¥È¥¢¤Ë¡¢\fI<new password for keystore>\fR¤Ç»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥É¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£À¸À®¤¹¤ë¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤ËÂбþ¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¡Ö¼±ÊÌ̾¡×¤Ï¡¢Ä̾Τ¬Mark Jones¡¢ÁÈ¿¥Ã±°Ì¤¬Java¡¢ÁÈ¿¥¤¬Oracle¡¢2ʸ»ú¤Î¹ñÈֹ椬US¤Ç¤¹¡£¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥µ¥¤¥º¤Ï¤É¤Á¤é¤â1024¥Ó¥Ã¥È¤Ç¡¢¸°¤ÎºîÀ®¤Ë¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎDSA¸°À¸À®¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£
+コマンドã¯ã€workingディレクトリã«\fImykeystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã—(キーストアã¯ã¾ã å­˜åœ¨ã—ã¦ã„ãªã„ã¨ä»®å®š)ã€ä½œæˆã—ãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã€\fI<new password for keystore>\fRã§æŒ‡å®šã—ãŸãƒ‘スワードを割り当ã¦ã¾ã™ã€‚生æˆã™ã‚‹å…¬é–‹éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã«å¯¾å¿œã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã€Œè­˜åˆ¥åã€ã¯ã€é€šç§°ãŒMark Jonesã€çµ„ç¹”å˜ä½ãŒJavaã€çµ„ç¹”ãŒOracleã€2文字ã®å›½ç•ªå·ãŒUSã§ã™ã€‚公開éµã¨ç§˜å¯†éµã®ã‚µã‚¤ã‚ºã¯ã©ã¡ã‚‰ã‚‚1024ビットã§ã€éµã®ä½œæˆã«ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®DSAéµç”Ÿæˆã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¾ã™ã€‚
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎSHA1withDSA½ð̾¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤Æ¡¢¸ø³«¸°¤È¼±ÊÌ̾¾ðÊó¤ò´Þ¤à¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òºîÀ®¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü´Ö¤Ï180Æü¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ï¡¢ÊÌ̾\fIbusiness\fR¤ÇÆÃÄꤵ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥êÆâ¤ÎÈëÌ©¸°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Þ¤¹¡£ÈëÌ©¸°¤Ë¤Ï¡¢\fI<new password for private key>\fR¤Ç»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥É¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®SHA1withDSAç½²åアルゴリズムを使用ã—ã¦ã€å…¬é–‹éµã¨è­˜åˆ¥å情報をå«ã‚€è‡ªå·±ç½²å証明書を作æˆã—ã¾ã™ã€‚証明書ã®æœ‰åŠ¹æœŸé–“ã¯180æ—¥ã§ã™ã€‚証明書ã¯ã€åˆ¥å\fIbusiness\fRã§ç‰¹å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªå†…ã®ç§˜å¯†éµã«é–¢é€£ä»˜ã‘られã¾ã™ã€‚秘密éµã«ã¯ã€\fI<new password for private key>\fRã§æŒ‡å®šã—ãŸãƒ‘スワードãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚
 .PP
-¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥³¥Þ¥ó¥É¤ÏÂçÉý¤Ëû¤¯¤Ê¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤò»ý¤Ä¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¥Ç¥Õ¥©¥ë¥ÈÃͤ¬»ÈÍѤµ¤ì¤Þ¤¹¡£É¬¿ÜÃͤÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£»ÈÍѲÄǽ¤ÊÃͤϼ¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’使用ã™ã‚‹å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤§å¹…ã«çŸ­ããªã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚デフォルト値をæŒã¤ã‚ªãƒ—ションã§ã¯ã€ã‚ªãƒ—ションを指定ã—ãªã‘ã‚Œã°ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚必須値ã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚使用å¯èƒ½ãªå€¤ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -958,12 +958,12 @@
 .RE
 .\}
 .PP
-¤³¤Î¾ì¹ç¤Ï¡¢\fImykey\fR¤È¤¤¤¦ÊÌ̾¤Ç¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤¬ºîÀ®¤µ¤ì¡¢¿·¤·¤¯À¸À®¤µ¤ì¤¿¸°¤Î¥Ú¥¢¡¢¤ª¤è¤Ó90Æü´ÖÍ­¸ú¤Ê¾ÚÌÀ½ñ¤¬¤³¤Î¥¨¥ó¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¨¥ó¥È¥ê¤Ï¡¢¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤ËÃÖ¤«¤ì¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¼±ÊÌ̾¾ðÊó¡¢¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ª¤è¤ÓÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+ã“ã®å ´åˆã¯ã€\fImykey\fRã¨ã„ã†åˆ¥åã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªãŒä½œæˆã•ã‚Œã€æ–°ã—ã生æˆã•ã‚ŒãŸéµã®ãƒšã‚¢ã€ãŠã‚ˆã³90日間有効ãªè¨¼æ˜Žæ›¸ãŒã“ã®ã‚¨ãƒ³ãƒˆãƒªã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®\fI\&.keystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ç½®ã‹ã‚Œã¾ã™ã€‚キーストアã¯ã€ã¾ã å­˜åœ¨ã—ã¦ã„ãªã„å ´åˆã«ä½œæˆã•ã‚Œã¾ã™ã€‚識別å情報ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードãŠã‚ˆã³ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .PP
-°Ê¹ß¤Ç¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤Ç\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¤â¤Î¤È¤·¤ÆÎã¤ò¼¨¤·¤Þ¤¹¡£¾ðÊó¤ÎÆþÎϤòµá¤á¤é¤ì¤¿¾ì¹ç¤Ï¡¢ºÇ½é¤Ë¼¨¤·¤¿\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ÎÃͤòÆþÎϤ·¤¿¤â¤Î¤È¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¼±ÊÌ̾¤Ë¤Ï\fIcn=Mark Jones\fR¡¢\fIou=Java\fR¡¢\fIo=Oracle\fR¡¢\fIc=US\fR¤È»ØÄꤷ¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤Î¥ê¥¯¥¨¥¹¥È"
+以é™ã§ã¯ã€ã‚ªãƒ—ションを指定ã—ãªã„ã§\fI\-genkeypair\fRコマンドを実行ã—ãŸã‚‚ã®ã¨ã—ã¦ä¾‹ã‚’示ã—ã¾ã™ã€‚情報ã®å…¥åŠ›ã‚’求ã‚られãŸå ´åˆã¯ã€æœ€åˆã«ç¤ºã—ãŸ\fI\-genkeypair\fRコマンドã®å€¤ã‚’入力ã—ãŸã‚‚ã®ã¨ã—ã¾ã™ã€‚ãŸã¨ãˆã°è­˜åˆ¥åã«ã¯\fIcn=Mark Jones\fRã€\fIou=Java\fRã€\fIo=Oracle\fRã€\fIc=US\fRã¨æŒ‡å®šã—ã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®ç½²å付ã証明書ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ"
 .PP
-¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òºîÀ®¤¹¤ë¸°¤Î¥Ú¥¢¤ÎÀ¸À®¡£¾ÚÌÀ½ñ¤Ë¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤Î½ð̾¤¬ÉÕ¤¤¤Æ¤¤¤ì¤Ð¡¢Â¾¤Î¥æ¡¼¥¶¡¼¤«¤é¾ÚÌÀ½ñ¤¬¿®Íꤵ¤ì¤ë²ÄǽÀ­¤â¹â¤¯¤Ê¤ê¤Þ¤¹¡£CA¤Î½ð̾¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢¤Þ¤º¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤òÀ¸À®¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+自己署å証明書を作æˆã™ã‚‹éµã®ãƒšã‚¢ã®ç”Ÿæˆã€‚証明書ã«è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã®ç½²åãŒä»˜ã„ã¦ã„ã‚Œã°ã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‹ã‚‰è¨¼æ˜Žæ›¸ãŒä¿¡é ¼ã•ã‚Œã‚‹å¯èƒ½æ€§ã‚‚高ããªã‚Šã¾ã™ã€‚CAã®ç½²åã‚’å–å¾—ã™ã‚‹ã«ã¯ã€ã¾ãšã€è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)を生æˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -975,12 +975,12 @@
 .RE
 .\}
 .PP
-CSR(¥Ç¥Õ¥©¥ë¥ÈÊÌ̾\fImykey\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤ÎCSR)¤¬ºîÀ®¤µ¤ì¡¢MarkJ\&.csr¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ËÃÖ¤«¤ì¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤òCA (VeriSign¤Ê¤É)¤ËÄó½Ð¤·¤Þ¤¹¡£CA¤ÏÍ×µá¼Ô¤ò(Ä̾ï¤Ï¥ª¥Õ¥é¥¤¥ó¤Ç)ǧ¾Ú¤·¡¢Í×µá¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿½ð̾ÉÕ¤­¤Î¾ÚÌÀ½ñ¤òÁ÷¤êÊÖ¤·¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢CA¤¬¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òÊÖ¤¹¤³¤È¤â¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤Ç¤Ï¡¢³Æ¾ÚÌÀ½ñ¤¬¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î½ð̾¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È"
+CSR(デフォルト別å\fImykey\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®CSR)ãŒä½œæˆã•ã‚Œã€MarkJ\&.csrã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ç½®ã‹ã‚Œã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’CA (VeriSignãªã©)ã«æ出ã—ã¾ã™ã€‚CAã¯è¦æ±‚者を(通常ã¯ã‚ªãƒ•ãƒ©ã‚¤ãƒ³ã§)èªè¨¼ã—ã€è¦æ±‚者ã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸç½²å付ãã®è¨¼æ˜Žæ›¸ã‚’é€ã‚Šè¿”ã—ã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€CAãŒè¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã‚’è¿”ã™ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚証明書ã®ãƒã‚§ãƒ¼ãƒ³ã§ã¯ã€å„証明書ãŒãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®ç½²å者ã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-ºîÀ®¤·¤¿¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤Ï¡¢³Æ¾ÚÌÀ½ñ¤¬¡¢¡Ö¥ë¡¼¥È¡×CA¤òµ¯ÅÀ¤È¤¹¤ë¥Á¥§¡¼¥óÆâ¤Î¼¡¤Î¾ÚÌÀ½ñ¤Î½ð̾¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹¡£
+作æˆã—ãŸè‡ªå·±ç½²å証明書ã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã§ã¯ã€å„証明書ãŒã€ã€Œãƒ«ãƒ¼ãƒˆã€CAを起点ã¨ã™ã‚‹ãƒã‚§ãƒ¼ãƒ³å†…ã®æ¬¡ã®è¨¼æ˜Žæ›¸ã®ç½²å者ã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™ã€‚
 .PP
-CA¤«¤é¤Î¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢¥­¡¼¥¹¥È¥¢¤«¡¢\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë1¤Ä°Ê¾å¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤¬¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI¤Î\fR\-importcert¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã€\fIcacerts\fRキーストア・ファイル内ã«1ã¤ä»¥ä¸Šã®ä¿¡é ¼ã§ãる証明書ãŒã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIã®\fR\-importcertコマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -990,7 +990,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ±þÅú¤¬¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥ó¤ÎºÇ¾å°Ì¾ÚÌÀ½ñ¤¬É¬ÍפǤ¹¡£CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¡£
+証明応答ãŒè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³ã®æœ€ä¸Šä½è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã™ã€‚CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ãƒ«ãƒ¼ãƒˆCA証明書。
 .RE
 .sp
 .RS 4
@@ -1001,14 +1001,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬Ã±°ì¤Î¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢È¯¹ÔCA(½ð̾¤·¤¿)¤Î¾ÚÌÀ½ñ¤¬É¬ÍפǤ¹¡£¤½¤Î¾ÚÌÀ½ñ¤¬¼«¸Ê½ð̾¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¤½¤Î½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤¬É¬ÍפǤ¢¤ê¡¢¤³¤Î¤è¤¦¤Ë¤·¤Æ¼«¸Ê½ð̾¥ë¡¼¥È¾ÚÌÀ½ñ¤¬É¬Íפˤʤê¤Þ¤¹¡£
+証明書応答ãŒå˜ä¸€ã®è¨¼æ˜Žæ›¸ã®å ´åˆã¯ã€ç™ºè¡ŒCA(ç½²åã—ãŸ)ã®è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã™ã€‚ãã®è¨¼æ˜Žæ›¸ãŒè‡ªå·±ç½²åã§ãªã„å ´åˆã¯ã€ãã®ç½²å者ã®è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã‚ã‚Šã€ã“ã®ã‚ˆã†ã«ã—ã¦è‡ªå·±ç½²åルート証明書ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¤¤¤¯¤Ä¤«¤ÎVeriSign¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò´Þ¤ó¤À¾õÂ֤ǽв٤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢VeriSign¤Î¾ÚÌÀ½ñ¤ò¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ëɬÍפ¬¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢Â¾¤ÎCA¤ËÂФ·¤Æ½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤ò¥ê¥¯¥¨¥¹¥È¤·¤Æ¤¤¤Æ¡¢¤³¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤¬¡¢\fIcacerts\fR¤Ë¤Þ¤ÀÄɲ䵤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ëCA¤«¤é¤Î¾ÚÌÀ½ñ¤ò¡¢¡Ö¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¡×¤È¤·¤Æ¥¤¥ó¥Ý¡¼¥È¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIcacerts\fRキーストア・ファイルã¯ã€ã„ãã¤ã‹ã®VeriSignルートCA証明書をå«ã‚“ã çŠ¶æ…‹ã§å‡ºè·ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€VeriSignã®è¨¼æ˜Žæ›¸ã‚’ã€ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒãªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ä»–ã®CAã«å¯¾ã—ã¦ç½²å付ã証明書をリクエストã—ã¦ã„ã¦ã€ã“ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ãŒã€\fIcacerts\fRã«ã¾ã è¿½åŠ ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€è©²å½“ã™ã‚‹CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã‚’ã€ã€Œä¿¡é ¼ã§ãる証明書ã€ã¨ã—ã¦ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-Ä̾CA¤«¤é¤Î¾ÚÌÀ½ñ¤Ï¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¡¢¤Þ¤¿¤Ï¾¤ÎCA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¾ÚÌÀ½ñ¤Ç¤¹(¸å¼Ô¤Î¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ë¾¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤¬É¬Í×)¡£ABC, Inc\&.,¤¬CA¤Ç¡¢ABC¤«¤é¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¤¢¤ëA\fIBCCA\&.cer\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ò¼èÆÀ¤·¤¿¤È¤·¤Þ¤¹(¤³¤Î¾ÚÌÀ½ñ¤ÏCA¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹)¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤º¡¢\fIkeytool \-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤Ê¤·¤Î\fIkeytool \-importcert\fR¥³¥Þ¥ó¥É¤Ç¤½¤ì¤òɽ¼¨¤·¡¢É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬´üÂÔ¤µ¤ì¤ë¤â¤Î¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¤òÁ÷¿®¤·¤¿¿Íʪ¤ËÏ¢Íí¤·¡¢¤³¤Î¿Íʪ¤¬Ä󼨤·¤¿(¤Þ¤¿¤Ï°ÂÁ´¤Ê¸ø³«¸°¤Î¥ê¥Ý¥¸¥È¥ê¤Ë¤è¤Ã¤ÆÄ󼨤µ¤ì¤ë)¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¾å¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬°ìÃפ¹¤ì¤Ð¡¢Á÷¿®ÅÓÃæ¤Ç¾¤Î²¿¼Ô¤«(¹¶·â¼Ô¤Ê¤É)¤Ë¤è¤ë¾ÚÌÀ½ñ¤Î¤¹¤êÂؤ¨¤¬¹Ô¤ï¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£Á÷¿®ÅÓÃæ¤Ç¤³¤Î¼ï¤Î¹¶·â¤¬¹Ô¤ï¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥Á¥§¥Ã¥¯¤ò¹Ô¤ï¤º¤Ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¡¢¹¶·â¼Ô¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¤â¤Î¤ò¿®Íꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+通常ã€CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã¯ã€è‡ªå·±ç½²å証明書ã€ã¾ãŸã¯ä»–ã®CAã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã§ã™(後者ã®å ´åˆã¯ã€è©²å½“ã™ã‚‹ä»–ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ãŒå¿…è¦)。ABC, Inc\&.,ãŒCAã§ã€ABCã‹ã‚‰è‡ªå·±ç½²å証明書ã§ã‚ã‚‹A\fIBCCA\&.cer\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å–å¾—ã—ãŸã¨ã—ã¾ã™(ã“ã®è¨¼æ˜Žæ›¸ã¯CAã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™)。信頼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€è¨¼æ˜Žæ›¸ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’確èªã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãšã€\fIkeytool \-printcert\fRコマンドã¾ãŸã¯\fI\-noprompt\fRオプションãªã—ã®\fIkeytool \-importcert\fRコマンドã§ãれを表示ã—ã€è¡¨ç¤ºã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒæœŸå¾…ã•ã‚Œã‚‹ã‚‚ã®ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã—ã¾ã™ã€‚証明書をé€ä¿¡ã—ãŸäººç‰©ã«é€£çµ¡ã—ã€ã“ã®äººç‰©ãŒæ示ã—ãŸ(ã¾ãŸã¯å®‰å…¨ãªå…¬é–‹éµã®ãƒªãƒã‚¸ãƒˆãƒªã«ã‚ˆã£ã¦æ示ã•ã‚Œã‚‹)フィンガープリントã¨ã€ä¸Šã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚フィンガープリントãŒä¸€è‡´ã™ã‚Œã°ã€é€ä¿¡é€”中ã§ä»–ã®ä½•è€…ã‹(攻撃者ãªã©)ã«ã‚ˆã‚‹è¨¼æ˜Žæ›¸ã®ã™ã‚Šæ›¿ãˆãŒè¡Œã‚ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã§ãã¾ã™ã€‚é€ä¿¡é€”中ã§ã“ã®ç¨®ã®æ”»æ’ƒãŒè¡Œã‚ã‚Œã¦ã„ãŸå ´åˆã€ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã‚ãšã«è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€æ”»æ’ƒè€…ã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸã™ã¹ã¦ã®ã‚‚ã®ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤È¿®Íꤹ¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¥­¡¼¥¹¥È¥¢¤ËÄɲäǤ­¤Þ¤¹¡£
+証明書ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã¨ä¿¡é ¼ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«è¿½åŠ ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1020,12 +1020,12 @@
 .RE
 .\}
 .PP
-ABCCA\&.cer¥Õ¥¡¥¤¥ë¤Î¥Ç¡¼¥¿¤ò´Þ¤à¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¨¥ó¥È¥ê¤¬¥­¡¼¥¹¥È¥¢Æâ¤ËºîÀ®¤µ¤ì¡¢³ºÅö¤¹¤ë¥¨¥ó¥È¥ê¤Ë\fIabc\fR¤È¤¤¤¦ÊÌ̾¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î¾ÚÌÀ½ñ±þÅú¤Î¥¤¥ó¥Ý¡¼¥È"
+ABCCA\&.cerファイルã®ãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚€ä¿¡é ¼ã§ãる証明書ã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ä½œæˆã•ã‚Œã€è©²å½“ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªã«\fIabc\fRã¨ã„ã†åˆ¥åãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸å¿œç­”ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤ÎÄó½ÐÀè¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤·¤¿¸å¤Ï(¤Þ¤¿¤ÏƱ¼ï¤Î¾ÚÌÀ½ñ¤¬¤¹¤Ç¤Ëcacerts¥Õ¥¡¥¤¥ëÆâ¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ï)¡¢¾ÚÌÀ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤·¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤ò¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Á¥§¡¼¥ó¤Ï¡¢CA¤Î±þÅú¤¬¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ë¡¢¥ê¥¯¥¨¥¹¥È¤ËÂФ¹¤ë¥ì¥¹¥Ý¥ó¥¹¤È¤·¤ÆCA¤«¤éÁ÷¤êÊÖ¤µ¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤¹¡£¤Þ¤¿¡¢CA¤Î±þÅú¤¬Ã±°ì¤Î¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢¤³¤Î¾ÚÌÀ±þÅú¤È¡¢¥¤¥ó¥Ý¡¼¥ÈÀè¤Î¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¥Õ¥¡¥¤¥ëÆâ¤Ë¤¹¤Ç¤Ë¸ºß¤¹¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤ò»ÈÍѤ·¤Æ¹½ÃÛ¤·¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤¹¡£
+証明書署åリクエストã®æ出先ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã—ãŸå¾Œã¯(ã¾ãŸã¯åŒç¨®ã®è¨¼æ˜Žæ›¸ãŒã™ã§ã«cacertsファイル内ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã¯)ã€è¨¼æ˜Žå¿œç­”をインãƒãƒ¼ãƒˆã—ã€è‡ªå·±ç½²å証明書を証明書ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ãƒã‚§ãƒ¼ãƒ³ã¯ã€CAã®å¿œç­”ãŒãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã«ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å¯¾ã™ã‚‹ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã¨ã—ã¦CAã‹ã‚‰é€ã‚Šè¿”ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ã™ã€‚ã¾ãŸã€CAã®å¿œç­”ãŒå˜ä¸€ã®è¨¼æ˜Žæ›¸ã®å ´åˆã¯ã€ã“ã®è¨¼æ˜Žå¿œç­”ã¨ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆå…ˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストアファイル内ã«ã™ã§ã«å­˜åœ¨ã™ã‚‹ä¿¡é ¼ã§ãる証明書ã¨ã‚’使用ã—ã¦æ§‹ç¯‰ã—ãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤òVeriSign¤ËÁ÷¿®¤¹¤ë¾ì¹ç¡¢Á÷¤êÊÖ¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î̾Á°¤¬VSMarkJ\&.cer¤À¤È¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Æ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ç½²åリクエストをVeriSignã«é€ä¿¡ã™ã‚‹å ´åˆã€é€ã‚Šè¿”ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®åå‰ãŒVSMarkJ\&.cerã ã¨ã™ã‚‹ã¨ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¦å¿œç­”をインãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1036,11 +1036,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Î¥¨¥¯¥¹¥Ý¡¼¥È"
+.SS "公開éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJava Archive (JAR)¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ï½ð̾¤òǧ¾Ú¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤¬½ð̾¤òǧ¾Ú¤¹¤ëÊýË¡¤Î1¤Ä¤Ë¡¢¤Þ¤º¼«Ê¬¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤ò¿®Íê¤Ç¤­¤ë¥¨¥ó¥È¥ê¤È¤·¤Æ¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ëÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦Java Archive (JAR)ファイルã«ç½²åã™ã‚‹å ´åˆã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã™ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ç½²åã‚’èªè¨¼ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クライアントãŒç½²åã‚’èªè¨¼ã™ã‚‹æ–¹æ³•ã®1ã¤ã«ã€ã¾ãšè‡ªåˆ†ã®å…¬é–‹éµã®è¨¼æ˜Žæ›¸ã‚’ä¿¡é ¼ã§ãるエントリã¨ã—ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤½¤Î¤¿¤á¤Ë¤Ï¡¢¾ÚÌÀ½ñ¤ò¥¨¥¯¥¹¥Ý¡¼¥È¤·¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤ËÄ󶡤·¤Þ¤¹¡£Îã¤È¤·¤Æ¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢MJ\&.cer¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ë¾ÚÌÀ½ñ¤ò¥³¥Ô¡¼¤Ç¤­¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¨¥ó¥È¥ê¤ËÊÌ̾\fImykey\fR¤¬¤¢¤ë¤È²¾Äꤷ¤Æ¤¤¤Þ¤¹¡£
+ãã®ãŸã‚ã«ã¯ã€è¨¼æ˜Žæ›¸ã‚’エクスãƒãƒ¼ãƒˆã—ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«æä¾›ã—ã¾ã™ã€‚例ã¨ã—ã¦ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€MJ\&.cerã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«è¨¼æ˜Žæ›¸ã‚’コピーã§ãã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã‚¨ãƒ³ãƒˆãƒªã«åˆ¥å\fImykey\fRãŒã‚ã‚‹ã¨ä»®å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1052,12 +1052,12 @@
 .RE
 .\}
 .PP
-¾ÚÌÀ½ñ¤È½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤òÆþ¼ê¤·¤¿¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ½ð̾¤òǧ¾Ú¤Ç¤­¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¥¤¥ó¥Ý¡¼¥È"
+証明書ã¨ç½²å付ãJARファイルを入手ã—ãŸã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€\fIjarsigner\fRコマンドを使用ã—ã¦ç½²åã‚’èªè¨¼ã§ãã¾ã™ã€‚
+.SS "キーストアã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¥³¥Þ¥ó¥É\fIimportkeystore\fR¤ò»ÈÍѤ¹¤ì¤Ð¡¢¤¢¤ë¥­¡¼¥¹¥È¥¢¤ÎÁ´ÂΤòÊ̤Υ­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ï¡¢¸°¤ä¾ÚÌÀ½ñ¤È¤¤¤Ã¤¿¥½¡¼¥¹¥­¡¼¥¹¥È¥¢Æâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤¬¡¢Ã±°ì¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥È¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢Æâ¤Ë´Þ¤Þ¤ì¤ë¥¨¥ó¥È¥ê¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È»þ¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¿·¤·¤¤¥¨¥ó¥È¥ê¤Ï¤¹¤Ù¤Æ¡¢¸µ¤ÈƱ¤¸ÊÌ̾¤ª¤è¤Ó(ÈëÌ©¸°¤äÈëÌ©¸°¤Î¾ì¹ç¤Ï)ÊݸîÍѥѥ¹¥ï¡¼¥É¤ò»ý¤Á¤Þ¤¹¡£¥½¡¼¥¹¥­¡¼¥¹¥È¥¢Æâ¤ÎÈó¸ø³«/ÈëÌ©¸°¤ò¥ê¥«¥Ð¥ê¤Ç¤­¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤Ë¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢ÊÌ̾¤Î½ÅÊ£¤ò¸¡½Ð¤¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Ë¿·¤·¤¤ÊÌ̾¤ÎÆþÎϤòµá¤á¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢¿·¤·¤¤ÊÌ̾¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ã±½ã¤Ë´û¸¤ÎÊÌ̾¤Î¾å½ñ¤­¤ò\fIkeytool\fR¥³¥Þ¥ó¥É¤Ëµö²Ä¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+コマンド\fIimportkeystore\fRを使用ã™ã‚Œã°ã€ã‚るキーストアã®å…¨ä½“を別ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚ã“ã‚Œã¯ã€éµã‚„証明書ã¨ã„ã£ãŸã‚½ãƒ¼ã‚¹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãŒã€å˜ä¸€ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã™ã‚Œã°ã€ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å«ã¾ã‚Œã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚インãƒãƒ¼ãƒˆæ™‚ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æ–°ã—ã„エントリã¯ã™ã¹ã¦ã€å…ƒã¨åŒã˜åˆ¥åãŠã‚ˆã³(秘密éµã‚„秘密éµã®å ´åˆã¯)ä¿è­·ç”¨ãƒ‘スワードをæŒã¡ã¾ã™ã€‚ソースキーストア内ã®éžå…¬é–‹/秘密éµã‚’リカãƒãƒªã§ããªã„å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€åˆ¥åã®é‡è¤‡ã‚’検出ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ–°ã—ã„別åã®å…¥åŠ›ã‚’求ã‚ã¾ã™ã€‚ユーザーã¯ã€æ–°ã—ã„別åを指定ã™ã‚‹ã“ã¨ã‚‚ã€å˜ç´”ã«æ—¢å­˜ã®åˆ¥åã®ä¸Šæ›¸ãã‚’\fIkeytool\fRコマンドã«è¨±å¯ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢Ä̾ï¤ÎJKS¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢key\&.jksÆâ¤Î¥¨¥ó¥È¥ê¤òPKCS#11¥¿¥¤¥×¤Î¥Ï¡¼¥É¥¦¥§¥¢¡¦¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€é€šå¸¸ã®JKSタイプã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢key\&.jks内ã®ã‚¨ãƒ³ãƒˆãƒªã‚’PKCS#11タイプã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1073,7 +1073,7 @@
 .RE
 .\}
 .PP
-¤Þ¤¿¡¢\fIimportkeystore\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢¤¢¤ë¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Îñ°ì¤Î¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢Á°Îã¤Î¥ª¥×¥·¥ç¥ó¤Ë²Ã¤¨¤Æ¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ëÊÌ̾¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¾ì¹ç¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤â¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é»ØÄê¤Ç¤­¤ë¤Û¤«¡¢ÈëÌ©/ÈëÌ©¸°¤ÎÊݸîÍѥѥ¹¥ï¡¼¥É¤ä¥¿¡¼¥²¥Ã¥ÈÊݸîÍѥѥ¹¥ï¡¼¥É¤â»ØÄê¤Ç¤­¤Þ¤¹¡£¤½¤ÎÊýË¡¤ò¼¨¤¹¥³¥Þ¥ó¥É¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+ã¾ãŸã€\fIimportkeystore\fRコマンドを使用ã™ã‚Œã°ã€ã‚るソース・キーストア内ã®å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã‚’ターゲット・キーストアã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ã“ã®å ´åˆã¯ã€å‰ä¾‹ã®ã‚ªãƒ—ションã«åŠ ãˆã¦ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹åˆ¥åを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-srcalias\fRオプションを指定ã™ã‚‹å ´åˆã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åもコマンドラインã‹ã‚‰æŒ‡å®šã§ãã‚‹ã»ã‹ã€ç§˜å¯†/秘密éµã®ä¿è­·ç”¨ãƒ‘スワードやターゲットä¿è­·ç”¨ãƒ‘スワードも指定ã§ãã¾ã™ã€‚ãã®æ–¹æ³•ã‚’示ã™ã‚³ãƒžãƒ³ãƒ‰ã‚’次ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1092,9 +1092,9 @@
 .if n \{\
 .RE
 .\}
-.SS "SSL¥µ¡¼¥Ð¡¼¤Î¾ÚÌÀ½ñ¤ÎÀ¸À®"
+.SS "SSLサーãƒãƒ¼ã®è¨¼æ˜Žæ›¸ã®ç”Ÿæˆ"
 .PP
-¼¡¤Ë¡¢3¤Ä¤Î¥¨¥ó¥Æ¥£¥Æ¥£¡¢¤Ä¤Þ¤ê¥ë¡¼¥ÈCA(\fIroot\fR)¡¢Ãæ´ÖCA(\fIca\fR)¤ª¤è¤ÓSSL¥µ¡¼¥Ð¡¼(\fIserver\fR)ÍѤθ°¥Ú¥¢¤È¾ÚÌÀ½ñ¤òÀ¸À®¤¹¤ë\fIkeytool\fR¥³¥Þ¥ó¥É¤ò¼¨¤·¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¾ÚÌÀ½ñ¤òƱ¤¸¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÎÎã¤Ç¤Ï¡¢RSA¤¬¿ä¾©¤µ¤ì¤ë¸°¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤¹¡£
+次ã«ã€3ã¤ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã€ã¤ã¾ã‚Šãƒ«ãƒ¼ãƒˆCA(\fIroot\fR)ã€ä¸­é–“CA(\fIca\fR)ãŠã‚ˆã³SSLサーãƒãƒ¼(\fIserver\fR)用ã®éµãƒšã‚¢ã¨è¨¼æ˜Žæ›¸ã‚’生æˆã™ã‚‹\fIkeytool\fRコマンドを示ã—ã¾ã™ã€‚ã™ã¹ã¦ã®è¨¼æ˜Žæ›¸ã‚’åŒã˜ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«æ ¼ç´ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。ã“れらã®ä¾‹ã§ã¯ã€RSAãŒæŽ¨å¥¨ã•ã‚Œã‚‹éµã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1120,30 +1120,30 @@
 .if n \{\
 .RE
 .\}
-.SH "ÍѸì"
+.SH "用語"
 .PP
-¥­¡¼¥¹¥È¥¢
+キーストア
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ï¡¢°Å¹æ²½¤Î¸°¤È¾ÚÌÀ½ñ¤ò³ÊǼ¤¹¤ë¤¿¤á¤Îµ¡Ç½¤Ç¤¹¡£
+キーストアã¯ã€æš—å·åŒ–ã®éµã¨è¨¼æ˜Žæ›¸ã‚’æ ¼ç´ã™ã‚‹ãŸã‚ã®æ©Ÿèƒ½ã§ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¥¨¥ó¥È¥ê
+キーストアã®ã‚¨ãƒ³ãƒˆãƒª
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ë¤Ï°Û¤Ê¤ë¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ÇºÇ¤âŬÍÑÈϰϤι­¤¤¥¨¥ó¥È¥ê¡¦¥¿¥¤¥×¤Ï¡¢¼¡¤Î2¤Ä¤Ç¤¹¡£
+キーストアã«ã¯ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIkeytool\fRコマンドã§æœ€ã‚‚é©ç”¨ç¯„囲ã®åºƒã„エントリ・タイプã¯ã€æ¬¡ã®2ã¤ã§ã™ã€‚
 .sp
-\fB¸°¤Î¥¨¥ó¥È¥ê\fR
-\- ³Æ¥¨¥ó¥È¥ê¤Ï¡¢Èó¾ï¤Ë½ÅÍפʰŹ沽¤Î¸°¤Î¾ðÊó¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ï¡¢µö²Ä¤·¤Æ¤¤¤Ê¤¤¥¢¥¯¥»¥¹¤òËɤ°¤¿¤á¤Ë¡¢Êݸ¤ì¤¿·Á¤Ç³ÊǼ¤µ¤ì¤Þ¤¹¡£°ìÈ̤ˡ¢¤³¤Î¼ï¤Î¥¨¥ó¥È¥ê¤È¤·¤Æ³ÊǼ¤µ¤ì¤ë¸°¤Ï¡¢ÈëÌ©¸°¤«¡¢Âбþ¤¹¤ë¸ø³«¸°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òȼ¤¦ÈëÌ©¸°¤Ç¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¤³¤ÎξÊý¤Î¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¤ò½èÍý¤Ç¤­¤ë¤Î¤ËÂФ·¡¢\fIjarsigner\fR¥Ä¡¼¥ë¤Ï¸å¼Ô¤Î¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¡¢¤Ä¤Þ¤êÈëÌ©¸°¤È¤½¤ì¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¤ß¤ò½èÍý¤·¤Þ¤¹¡£
+\fBéµã®ã‚¨ãƒ³ãƒˆãƒª\fR
+\- å„エントリã¯ã€éžå¸¸ã«é‡è¦ãªæš—å·åŒ–ã®éµã®æƒ…報をä¿æŒã—ã¾ã™ã€‚ã“ã®æƒ…å ±ã¯ã€è¨±å¯ã—ã¦ã„ãªã„アクセスを防ããŸã‚ã«ã€ä¿è­·ã•ã‚ŒãŸå½¢ã§æ ¼ç´ã•ã‚Œã¾ã™ã€‚一般ã«ã€ã“ã®ç¨®ã®ã‚¨ãƒ³ãƒˆãƒªã¨ã—ã¦æ ¼ç´ã•ã‚Œã‚‹éµã¯ã€ç§˜å¯†éµã‹ã€å¯¾å¿œã™ã‚‹å…¬é–‹éµã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’ä¼´ã†ç§˜å¯†éµã§ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å‚ç…§ã—ã¦ãã ã•ã„。\fIkeytool\fRコマンドãŒã“ã®ä¸¡æ–¹ã®ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã‚’処ç†ã§ãã‚‹ã®ã«å¯¾ã—ã€\fIjarsigner\fRツールã¯å¾Œè€…ã®ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã€ã¤ã¾ã‚Šç§˜å¯†éµã¨ãã‚Œã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®ã¿ã‚’処ç†ã—ã¾ã™ã€‚
 .sp
-\fB¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¨¥ó¥È¥ê\fR: ³Æ¥¨¥ó¥È¥ê¤Ï¡¢Âè»°¼Ô¤«¤é¤Î¸ø³«¸°¾ÚÌÀ½ñ¤ò1¤Ä´Þ¤ó¤Ç¤¤¤Þ¤¹¡£¤³¤Î¥¨¥ó¥È¥ê¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¤½¤ì¤Ï¡¢¾ÚÌÀ½ñÆâ¤Î¸ø³«¸°¤¬¡¢¾ÚÌÀ½ñ¤ÎSubject(½êÍ­¼Ô)¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤ËͳÍ褹¤ë¤â¤Î¤Ç¤¢¤ë¤³¤È¤ò¡¢¥­¡¼¥¹¥È¥¢¤Î½êÍ­¼Ô¤¬¿®Íꤹ¤ë¤«¤é¤Ç¤¹¡£¾ÚÌÀ½ñ¤Îȯ¹Ô¼Ô¤Ï¡¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤½¤ÎÆâÍƤòÊݾڤ·¤Þ¤¹¡£
+\fBä¿¡é ¼ã§ãる証明書ã®ã‚¨ãƒ³ãƒˆãƒª\fR: å„エントリã¯ã€ç¬¬ä¸‰è€…ã‹ã‚‰ã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’1ã¤å«ã‚“ã§ã„ã¾ã™ã€‚ã“ã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€ä¿¡é ¼ã§ãる証明書ã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãã‚Œã¯ã€è¨¼æ˜Žæ›¸å†…ã®å…¬é–‹éµãŒã€è¨¼æ˜Žæ›¸ã®Subject(所有者)ã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«ç”±æ¥ã™ã‚‹ã‚‚ã®ã§ã‚ã‚‹ã“ã¨ã‚’ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®æ‰€æœ‰è€…ãŒä¿¡é ¼ã™ã‚‹ã‹ã‚‰ã§ã™ã€‚証明書ã®ç™ºè¡Œè€…ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ãã®å†…容をä¿è¨¼ã—ã¾ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾
+キーストアã®åˆ¥å
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê(¸°¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¥¨¥ó¥È¥ê)¤Ï¡¢°ì°Õ¤ÎÊÌ̾¤ò²ð¤·¤Æ¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤¹¡£
+キーストアã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒª(éµãŠã‚ˆã³ä¿¡é ¼ã§ãる証明書エントリ)ã¯ã€ä¸€æ„ã®åˆ¥åを介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•ã‚Œã¾ã™ã€‚
 .sp
-ÊÌ̾¤ò»ØÄꤹ¤ë¤Î¤Ï¡¢\fI\-genseckey\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÈëÌ©¸°¤òÀ¸À®¤·¤¿¤ê¡¢\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¸°¥Ú¥¢(¸ø³«¸°¤ÈÈëÌ©¸°)¤òÀ¸À®¤·¤¿¤ê¡¢\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤ËÄɲ乤ë¤Ê¤É¡¢ÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤ò¥­¡¼¥¹¥È¥¢¤ËÄɲ乤ë¾ì¹ç¤Ç¤¹¡£¤³¤ì°Ê¸å¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¥¨¥ó¥Æ¥£¥Æ¥£¤ò»²¾È¤¹¤ë¾ì¹ç¤Ï¡¢¤³¤Î¤È¤­¤Ë»ØÄꤷ¤¿ÊÌ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+別åを指定ã™ã‚‹ã®ã¯ã€\fI\-genseckey\fRコマンドを使用ã—ã¦ç§˜å¯†éµã‚’生æˆã—ãŸã‚Šã€\fI\-genkeypair\fRコマンドを使用ã—ã¦éµãƒšã‚¢(公開éµã¨ç§˜å¯†éµ)を生æˆã—ãŸã‚Šã€\fI\-importcert\fRコマンドを使用ã—ã¦è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã™ã‚‹ãªã©ã€ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’キーストアã«è¿½åŠ ã™ã‚‹å ´åˆã§ã™ã€‚ã“れ以後ã€\fIkeytool\fRコマンドã§ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’å‚ç…§ã™ã‚‹å ´åˆã¯ã€ã“ã®ã¨ãã«æŒ‡å®šã—ãŸåˆ¥åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢\fIduke\fR¤È¤¤¤¦ÊÌ̾¤ò»ÈÍѤ·¤Æ¿·¤·¤¤¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤òÀ¸À®¤·¡¢¸ø³«¸°¤ò¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤¹¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãŸã¨ãˆã°ã€\fIduke\fRã¨ã„ã†åˆ¥åを使用ã—ã¦æ–°ã—ã„公開éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã‚’生æˆã—ã€å…¬é–‹éµã‚’自己署å証明書ã§ãƒ©ãƒƒãƒ—ã™ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1154,7 +1154,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢½é´ü¥Ñ¥¹¥ï¡¼¥É¤È¤·¤Æ\fIdukekeypasswd\fR¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£°Ê¸å¡¢ÊÌ̾\fIduke\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ï¡¢¤³¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬Íפˤʤê¤Þ¤¹¡£Duke¤ÎÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò¤¢¤È¤«¤éÊѹ¹¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€åˆæœŸãƒ‘スワードã¨ã—ã¦\fIdukekeypasswd\fRを指定ã—ã¦ã„ã¾ã™ã€‚以後ã€åˆ¥å\fIduke\fRã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã¯ã€ã“ã®ãƒ‘スワードãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚Dukeã®ç§˜å¯†éµã®ãƒ‘スワードをã‚ã¨ã‹ã‚‰å¤‰æ›´ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1165,29 +1165,29 @@
 .if n \{\
 .RE
 .\}
-¥Ñ¥¹¥ï¡¼¥É¤¬¡¢\fIdukekeypasswd\fR¤«¤é\fInewpass\fR¤ËÊѹ¹¤µ¤ì¤Þ¤¹¡£¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£É¬Íפʥѥ¹¥ï¡¼¥É¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+パスワードãŒã€\fIdukekeypasswd\fRã‹ã‚‰\fInewpass\fRã«å¤‰æ›´ã•ã‚Œã¾ã™ã€‚テストを目的ã¨ã™ã‚‹å ´åˆã€ã¾ãŸã¯å®‰å…¨ã§ã‚ã‚‹ã“ã¨ãŒã‚ã‹ã£ã¦ã„るシステムã§å®Ÿè¡Œã™ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。必è¦ãªãƒ‘スワードã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ
+キーストアã®å®Ÿè£…
 .RS 4
-\fIjava\&.security\fR¥Ñ¥Ã¥±¡¼¥¸¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë\fIKeyStore\fR¥¯¥é¥¹¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤ª¤è¤Ó¾ðÊó¤ÎÊѹ¹¤ò¹Ô¤¦¤¿¤á¤Î¡¢ÌÀ³Î¤ËÄêµÁ¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¸ÇÄê¼ÂÁõ¤È¤·¤Æ¤Ï¡¢¤½¤ì¤¾¤ì¤¬ÆÃÄê¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤òÂоݤȤ¹¤ëÊ£¿ô¤Î°Û¤Ê¤ë¼ÂÁõ¤¬Â¸ºß²Äǽ¤Ç¤¹¡£
+\fIjava\&.security\fRパッケージã§æä¾›ã•ã‚Œã¦ã„ã‚‹\fIKeyStore\fRクラスã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æƒ…å ±ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŠã‚ˆã³æƒ…å ±ã®å¤‰æ›´ã‚’è¡Œã†ãŸã‚ã®ã€æ˜Žç¢ºã«å®šç¾©ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚キーストアã®å›ºå®šå®Ÿè£…ã¨ã—ã¦ã¯ã€ãã‚Œãžã‚ŒãŒç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’対象ã¨ã™ã‚‹è¤‡æ•°ã®ç•°ãªã‚‹å®Ÿè£…ãŒå­˜åœ¨å¯èƒ½ã§ã™ã€‚
 .sp
-¸½ºß¡¢\fIkeytool\fR¤È\fIjarsigner\fR¤Î2¤Ä¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤È¡¢Policy Tool¤È¤¤¤¦Ì¾Á°¤ÎGUI¥Ù¡¼¥¹¤Î¥Ä¡¼¥ë¤¬¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤Ï\fIpublic\fR¤Ç¤¢¤ë¤¿¤á¡¢¥æ¡¼¥¶¡¼¤ÏKeyStore¤ò»ÈÍѤ·¤¿Â¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤âºîÀ®¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã€\fIkeytool\fRã¨\fIjarsigner\fRã®2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ールã¨ã€Policy Toolã¨ã„ã†åå‰ã®GUIベースã®ãƒ„ールãŒã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¦ã„ã¾ã™ã€‚\fIKeyStore\fRクラスã¯\fIpublic\fRã§ã‚ã‚‹ãŸã‚ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯KeyStoreを使用ã—ãŸä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ã‚¢ãƒ—リケーションも作æˆã§ãã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Ë¤Ï¡¢Oracle¤¬Ä󶡤¹¤ëÁȹþ¤ß¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢JKS¤È¤¤¤¦Ì¾Á°¤ÎÆȼ«¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(·Á¼°)¤òÍøÍѤ¹¤ë¤â¤Î¤Ç¡¢¥­¡¼¥¹¥È¥¢¤ò¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤Î¼ÂÁõ¤Ç¤Ï¡¢¸Ä¡¹¤ÎÈëÌ©¸°¤Ï¸ÄÊ̤Υѥ¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÀ°¹çÀ­¤â(ÈëÌ©¸°¤È¤ÏÊ̤Î)¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+キーストアã«ã¯ã€OracleãŒæä¾›ã™ã‚‹çµ„è¾¼ã¿ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å®Ÿè£…ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€JKSã¨ã„ã†åå‰ã®ç‹¬è‡ªã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(å½¢å¼)を利用ã™ã‚‹ã‚‚ã®ã§ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’ファイルã¨ã—ã¦å®Ÿè£…ã—ã¦ã„ã¾ã™ã€‚ã“ã®å®Ÿè£…ã§ã¯ã€å€‹ã€…ã®ç§˜å¯†éµã¯å€‹åˆ¥ã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®æ•´åˆæ€§ã‚‚(秘密éµã¨ã¯åˆ¥ã®)パスワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ï¡¢¥×¥í¥Ð¥¤¥À¥Ù¡¼¥¹¤Ç¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢\fIKeyStore\fR¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SPI)¤Ë´ð¤Å¤¤¤Æ¼ÂÁõ¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢Âбþ¤¹¤ë\fIKeystoreSpi\fRÃê¾Ý¥¯¥é¥¹(¤³¤ì¤â\fIjava\&.security\fR¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹)¤¬¤¢¤ê¡¢¤³¤Î¥¯¥é¥¹¤¬¡¢¥×¥í¥Ð¥¤¥À¤¬¼ÂÁõ¤¹¤ëɬÍפΤ¢¤ëService Provider Interface¤Î¥á¥½¥Ã¥É¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢\fI¥×¥í¥Ð¥¤¥À\fR¤È¤Ï¡¢Java Security API¤Ë¤è¤Ã¤Æ¥¢¥¯¥»¥¹²Äǽ¤Ê¥µ¡¼¥Ó¥¹¤Î¥µ¥Ö¥»¥Ã¥È¤ËÂФ·¡¢¤½¤Î¸ÇÄê¼ÂÁõ¤òÄ󶡤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î½¸¹ç¤Î¤³¤È¤Ç¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¤Ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.html¤Ë¤¢¤ë
-Java°Å¹æ²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î¥×¥í¥Ð¥¤¥À¤Î¼ÂÁõÊýË¡¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥×¥í¥Ð¥¤¥À¤ò¼ÂÁõ¤·¡¢\fIKeystoreSpi\fR¥µ¥Ö¥¯¥é¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å®Ÿè£…ã¯ã€ãƒ—ロãƒã‚¤ãƒ€ãƒ™ãƒ¼ã‚¹ã§ã™ã€‚具体的ã«ã¯ã€\fIKeyStore\fRã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ã‚¢ãƒ—リケーション・インタフェースãŒã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SPI)ã«åŸºã¥ã„ã¦å®Ÿè£…ã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€å¯¾å¿œã™ã‚‹\fIKeystoreSpi\fR抽象クラス(ã“れも\fIjava\&.security\fRパッケージã«å«ã¾ã‚Œã¦ã„ã¾ã™)ãŒã‚ã‚Šã€ã“ã®ã‚¯ãƒ©ã‚¹ãŒã€ãƒ—ロãƒã‚¤ãƒ€ãŒå®Ÿè£…ã™ã‚‹å¿…è¦ã®ã‚ã‚‹Service Provider Interfaceã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’定義ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€\fIプロãƒã‚¤ãƒ€\fRã¨ã¯ã€Java Security APIã«ã‚ˆã£ã¦ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãªã‚µãƒ¼ãƒ“スã®ã‚µãƒ–セットã«å¯¾ã—ã€ãã®å›ºå®šå®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ‘ッケージã¾ãŸã¯ãƒ‘ッケージã®é›†åˆã®ã“ã¨ã§ã™ã€‚キーストアã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ã«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.htmlã«ã‚ã‚‹
+Javaæš—å·åŒ–アーキテクãƒãƒ£ã®ãƒ—ロãƒã‚¤ãƒ€ã®å®Ÿè£…方法ã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒ—ロãƒã‚¤ãƒ€ã‚’実装ã—ã€\fIKeystoreSpi\fRサブクラスã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤¬Ä󶡤¹¤ë\fIgetInstance\fR¥Õ¥¡¥¯¥È¥ê¡¦¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¡¢ÍÍ¡¹¤Ê¥×¥í¥Ð¥¤¥À¤«¤é°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Ï¡¢¥­¡¼¥¹¥È¥¢¾ðÊó¤Î³ÊǼ·Á¼°¤È¥Ç¡¼¥¿·Á¼°¤òÄêµÁ¤¹¤ë¤È¤È¤â¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÈó¸ø³«/ÈëÌ©¸°¤È¥­¡¼¥¹¥È¥¢¤ÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à¤òÄêµÁ¤·¤Þ¤¹¡£°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ë¤Ï¡¢¸ß´¹À­¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+アプリケーションã§ã¯ã€\fIKeyStore\fRクラスãŒæä¾›ã™ã‚‹\fIgetInstance\fRファクトリ・メソッドを使用ã™ã‚‹ã“ã¨ã§ã€æ§˜ã€…ãªãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’é¸æŠžã§ãã¾ã™ã€‚キーストアã®ã‚¿ã‚¤ãƒ—ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…å ±ã®æ ¼ç´å½¢å¼ã¨ãƒ‡ãƒ¼ã‚¿å½¢å¼ã‚’定義ã™ã‚‹ã¨ã¨ã‚‚ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®éžå…¬é–‹/秘密éµã¨ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’定義ã—ã¾ã™ã€‚ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã«ã¯ã€äº’æ›æ€§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¼ÂÁõ¤ÇÆ°ºî¤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¡¦¥é¥¤¥ó¤ÇÅϤµ¤ì¤¿¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ°·¤Ã¤Æ¡¢\fIFileInputStream\fR¤ËÊÑ´¹¤·¡¢¤³¤³¤«¤é¥­¡¼¥¹¥È¥¢¾ðÊó¤ò¥í¡¼¥É¤·¤Þ¤¹¡£\fIjarsigner\fR¤ª¤è¤Ó\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢URL¤Ç»ØÄê¤Ç¤­¤ëǤ°Õ¤Î¾ì½ê¤«¤é¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIkeytool\fRコマンドã¯ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å®Ÿè£…ã§å‹•ä½œã—ã¾ã™ã€‚コマンド・ラインã§æ¸¡ã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å ´æ‰€ã‚’ファイルåã¨ã—ã¦æ‰±ã£ã¦ã€\fIFileInputStream\fRã«å¤‰æ›ã—ã€ã“ã“ã‹ã‚‰ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…報をロードã—ã¾ã™ã€‚\fIjarsigner\fRãŠã‚ˆã³\fIpolicytool\fRコマンドã¯ã€URLã§æŒ‡å®šã§ãã‚‹ä»»æ„ã®å ´æ‰€ã‹ã‚‰ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fIkeytool\fR¤È\fIjarsigner\fR¤Î¾ì¹ç¡¢\fI\-storetype\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Policy Tool¤Î¾ì¹ç¤Ï¡¢¡Ö¥­¡¼¥¹¥È¥¢¡×¥á¥Ë¥å¡¼¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIkeytool\fRã¨\fIjarsigner\fRã®å ´åˆã€\fI\-storetype\fRオプションを使用ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚Policy Toolã®å ´åˆã¯ã€ã€Œã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã€ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚
 .sp
-¥æ¡¼¥¶¡¼¤¬¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤵ¤ì¤¿\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ˴ð¤Å¤¤¤Æ¡¢¥Ä¡¼¥ë¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤¬ÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.security\fR¤È¸Æ¤Ð¤ì¡¢Windows¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home\elib\esecurity\fR¡¢Oracle Solaris¤Ç¤Ï\fIjava\&.home/lib/security\fR¤Ë¤¢¤ê¤Þ¤¹¡£\fIjava\&.home\fR¤Ï¡¢¼Â¹Ô»þ´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢SDK¤Þ¤¿¤ÏJava Runtime Environment (JRE)¤ÎºÇ¾å°Ì¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£
+ユーザーãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を明示的ã«æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã§æŒ‡å®šã•ã‚ŒãŸ\fIkeystore\&.type\fRプロパティã®å€¤ã«åŸºã¥ã„ã¦ã€ãƒ„ールã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã¯\fIjava\&.security\fRã¨å‘¼ã°ã‚Œã€Windowsã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ディレクトリ\fIjava\&.home\elib\esecurity\fRã€Oracle Solarisã§ã¯\fIjava\&.home/lib/security\fRã«ã‚ã‚Šã¾ã™ã€‚\fIjava\&.home\fRã¯ã€å®Ÿè¡Œæ™‚環境ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚\fIjre\fRディレクトリã¯ã€SDKã¾ãŸã¯Java Runtime Environment (JRE)ã®æœ€ä¸Šä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚
 .sp
-³Æ¥Ä¡¼¥ë¤Ï¡¢\fIkeystore\&.type\fR¤ÎÃͤò¼èÆÀ¤·¡¢¤³¤ÎÃͤǻØÄꤵ¤ì¤¿¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¡¢¸½ºß¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥Ð¥¤¥À¤òÄ´¤Ù¤Þ¤¹¡£¤½¤Î¥×¥í¥Ð¥¤¥À¤«¤é¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ëstatic¥á¥½¥Ã¥É\fIgetDefaultType\fR¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥¢¥×¥ì¥Ã¥È¤«¤é\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥³¡¼¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤Ç»ØÄꤵ¤ì¤¿¥¿¥¤¥×)¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
+å„ツールã¯ã€\fIkeystore\&.type\fRã®å€¤ã‚’å–å¾—ã—ã€ã“ã®å€¤ã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’実装ã—ã¦ã„るプロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§ã€ç¾åœ¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ—ロãƒã‚¤ãƒ€ã‚’調ã¹ã¾ã™ã€‚ãã®ãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¾ã™ã€‚\fIKeyStore\fRクラスã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹staticメソッド\fIgetDefaultType\fRを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションやアプレットã‹ã‚‰\fIkeystore\&.type\fRプロパティã®å€¤ã‚’å–å¾—ã§ãã¾ã™ã€‚次ã®ã‚³ãƒ¼ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(\fIkeystore\&.type\fRプロパティã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—)ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1198,7 +1198,7 @@
 .if n \{\
 .RE
 .\}
-¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï\fIjks\fR¤Ç¡¢¤³¤ì¤ÏOracle¤¬Ä󶡤¹¤ëÆȼ«¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¼¡¤Î¹Ô¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯\fIjks\fRã§ã€ã“ã‚Œã¯OracleãŒæä¾›ã™ã‚‹ç‹¬è‡ªã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã§ã™ã€‚ã“ã‚Œã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®æ¬¡ã®è¡Œã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1209,7 +1209,7 @@
 .if n \{\
 .RE
 .\}
-³Æ¥Ä¡¼¥ë¤Ç¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¾å¤Î¹Ô¤òÊѹ¹¤·¤ÆÊ̤Υ­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIpkcs12\fR¤È¸Æ¤Ð¤ì¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ë¾ì¹ç¡¢¹Ô¤ò¼¡¤Î¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
+å„ツールã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹ã«ã¯ã€ä¸Šã®è¡Œã‚’変更ã—ã¦åˆ¥ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIpkcs12\fRã¨å‘¼ã°ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージãŒã‚ã‚‹å ´åˆã€è¡Œã‚’次ã®ã‚ˆã†ã«å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1220,56 +1220,56 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î»ØÄê¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢JKS¤Èjks¤ÏƱ¤¸¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+キーストアã®ã‚¿ã‚¤ãƒ—ã®æŒ‡å®šã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€JKSã¨jksã¯åŒã˜ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ
+証明書
 .RS 4
-¾ÚÌÀ½ñ(¸ø³«¸°¾ÚÌÀ½ñ)¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(ȯ¹Ô¼Ô)¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Î¤³¤È¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ë¤Ï¡¢Â¾¤Î¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(½ð̾¼Ô)¤Î¸ø³«¸°(¤ª¤è¤Ó¤½¤Î¾¤Î¾ðÊó)¤¬ÆÃÊ̤ÊÃͤò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÍѸì¤Ï¡¢¾ÚÌÀ½ñ¤Ë´ØÏ¢¤·¤Æ¤¤¤Þ¤¹¡£
+証明書(公開éµè¨¼æ˜Žæ›¸)ã¨ã¯ã€ã‚るエンティティ(発行者)ã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã®ã“ã¨ã§ã™ã€‚証明書ã«ã¯ã€ä»–ã®ã‚るエンティティ(ç½²å者)ã®å…¬é–‹éµ(ãŠã‚ˆã³ãã®ä»–ã®æƒ…å ±)ãŒç‰¹åˆ¥ãªå€¤ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã™ã€‚次ã®ç”¨èªžã¯ã€è¨¼æ˜Žæ›¸ã«é–¢é€£ã—ã¦ã„ã¾ã™ã€‚
 .sp
-\fB¸ø³«¸°\fR: ¸ø³«¸°¤Ï¡¢ÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¿ô¤Ç¤¹¡£¸ø³«¸°¤Ï¡¢³ºÅö¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤È¤Î´Ö¤Ë¿®Íê¤Ç¤­¤ë´Ø·¸¤ò»ý¤ÄɬÍפ¬¤¢¤ë¤¹¤Ù¤Æ¤Î¿Í¤ËÂФ·¤Æ¸ø³«¤¹¤ë¤³¤È¤ò°Õ¿Þ¤·¤¿¤â¤Î¤Ç¤¹¡£¸ø³«¸°¤Ï¡¢½ð̾¤ò¸¡¾Ú¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fB公開éµ\fR: 公開éµã¯ã€ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«é–¢é€£ä»˜ã‘られãŸæ•°ã§ã™ã€‚公開éµã¯ã€è©²å½“ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã®é–“ã«ä¿¡é ¼ã§ãる関係をæŒã¤å¿…è¦ãŒã‚ã‚‹ã™ã¹ã¦ã®äººã«å¯¾ã—ã¦å…¬é–‹ã™ã‚‹ã“ã¨ã‚’æ„図ã—ãŸã‚‚ã®ã§ã™ã€‚公開éµã¯ã€ç½²åを検証ã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥Ç¥¸¥¿¥ë½ð̾\fR: ¥Ç¡¼¥¿¤¬¥Ç¥¸¥¿¥ë½ð̾¤µ¤ì¤ë¤È¡¢¤½¤Î¥Ç¡¼¥¿¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤È¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤¬¥Ç¡¼¥¿¤ÎÆâÍƤˤĤ¤¤ÆÃΤäƤ¤¤ë¤³¤È¤ò¾ÚÌÀ½ñ¤¹¤ë½ð̾¤È¤È¤â¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¥Ç¡¼¥¿¤Ë½ð̾¤òÉÕ¤±¤ë¤È¡¢¥Ç¡¼¥¿¤Îµ¶Â¤¤ÏÉÔ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBデジタル署å\fR: データãŒãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã•ã‚Œã‚‹ã¨ã€ãã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒãƒ‡ãƒ¼ã‚¿ã®å†…容ã«ã¤ã„ã¦çŸ¥ã£ã¦ã„ã‚‹ã“ã¨ã‚’証明書ã™ã‚‹ç½²åã¨ã¨ã‚‚ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚エンティティã®ç§˜å¯†éµã‚’使用ã—ã¦ãƒ‡ãƒ¼ã‚¿ã«ç½²åを付ã‘ã‚‹ã¨ã€ãƒ‡ãƒ¼ã‚¿ã®å½é€ ã¯ä¸å¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fB¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£\fR: ¥¨¥ó¥Æ¥£¥Æ¥£¤ò¥¢¥É¥ì¥¹»ØÄꤹ¤ë´ûÃΤÎÊýË¡¡£¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¤Ï¡¢¸ø³«¸°¤ò¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤Ë¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£¸ø³«¸°¤Î¾¤Ë¤â¡¢Oracle Solaris UID¤äÅŻҥ᡼¥ë¡¦¥¢¥É¥ì¥¹¡¢X\&.509¼±ÊÌ̾¤Ê¤É¡¢ÍÍ¡¹¤Ê¤â¤Î¤ò¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤È¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fBアイデンティティ\fR: エンティティをアドレス指定ã™ã‚‹æ—¢çŸ¥ã®æ–¹æ³•ã€‚システムã«ã‚ˆã£ã¦ã¯ã€å…¬é–‹éµã‚’アイデンティティã«ã™ã‚‹ã‚‚ã®ãŒã‚ã‚Šã¾ã™ã€‚公開éµã®ä»–ã«ã‚‚ã€Oracle Solaris UIDã‚„é›»å­ãƒ¡ãƒ¼ãƒ«ãƒ»ã‚¢ãƒ‰ãƒ¬ã‚¹ã€X\&.509識別åãªã©ã€æ§˜ã€…ãªã‚‚ã®ã‚’アイデンティティã¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fB½ð̾\fR: ½ð̾¤Ï¡¢¤Ê¤ó¤é¤«¤Î¥Ç¡¼¥¿¤ò´ð¤Ë¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ·×»»¤µ¤ì¤Þ¤¹¡£½ð̾¼Ô¡¢¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ïȯ¹Ô¼Ô¤È¤â¸Æ¤Ð¤ì¤Þ¤¹¡£
+\fBç½²å\fR: ç½²åã¯ã€ãªã‚“らã‹ã®ãƒ‡ãƒ¼ã‚¿ã‚’基ã«ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã‚’使用ã—ã¦è¨ˆç®—ã•ã‚Œã¾ã™ã€‚ç½²å者ã€è¨¼æ˜Žæ›¸ã®å ´åˆã¯ç™ºè¡Œè€…ã¨ã‚‚呼ã°ã‚Œã¾ã™ã€‚
 .sp
-\fBÈëÌ©¸°\fR: ÈëÌ©¸°¤ÏÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Î¤ß¤¬ÃΤäƤ¤¤ë¿ô¤Î¤³¤È¤Ç¡¢¤³¤Î¿ô¤Î¤³¤È¤ò¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤È¤¤¤¤¤Þ¤¹¡£ÈëÌ©¸°¤Ï¡¢Â¾¤ËÃΤé¤ì¤Ê¤¤¤è¤¦¤ËÈëÌ©¤Ë¤·¤Æ¤ª¤¯¤³¤È¤¬Á°Äó¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ÈëÌ©¸°¤È¸ø³«¸°¤Ï¡¢¤¹¤Ù¤Æ¤Î¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤ÇÂФˤʤäƸºß¤·¤Æ¤¤¤Þ¤¹¡£DSA¤Ê¤É¤Îŵ·¿Åª¤Ê¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢1¤Ä¤ÎÈëÌ©¸°¤ÏÀµ³Î¤Ë1¤Ä¤Î¸ø³«¸°¤ËÂбþ¤·¤Þ¤¹¡£ÈëÌ©¸°¤Ï¡¢½ð̾¤ò·×»»¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fB秘密éµ\fR: 秘密éµã¯ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã¿ãŒçŸ¥ã£ã¦ã„ã‚‹æ•°ã®ã“ã¨ã§ã€ã“ã®æ•°ã®ã“ã¨ã‚’ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã¨ã„ã„ã¾ã™ã€‚秘密éµã¯ã€ä»–ã«çŸ¥ã‚‰ã‚Œãªã„よã†ã«ç§˜å¯†ã«ã—ã¦ãŠãã“ã¨ãŒå‰æã«ãªã£ã¦ã„ã¾ã™ã€‚秘密éµã¨å…¬é–‹éµã¯ã€ã™ã¹ã¦ã®å…¬é–‹éµæš—å·åŒ–システムã§å¯¾ã«ãªã£ã¦å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚DSAãªã©ã®å…¸åž‹çš„ãªå…¬é–‹éµæš—å·åŒ–システムã®å ´åˆã€1ã¤ã®ç§˜å¯†éµã¯æ­£ç¢ºã«1ã¤ã®å…¬é–‹éµã«å¯¾å¿œã—ã¾ã™ã€‚秘密éµã¯ã€ç½²åを計算ã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥¨¥ó¥Æ¥£¥Æ¥£\fR: ¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¿Í¡¢ÁÈ¿¥¡¢¥×¥í¥°¥é¥à¡¢¥³¥ó¥Ô¥å¡¼¥¿¡¢´ë¶È¡¢¶ä¹Ô¤Ê¤É¡¢°ìÄê¤ÎÅٹ礤¤Ç¿®Íê¤ÎÂоݤȤʤëÍÍ¡¹¤Ê¤â¤Î¤ò»Ø¤·¤Þ¤¹¡£
+\fBエンティティ\fR: エンティティã¯ã€äººã€çµ„ç¹”ã€ãƒ—ログラムã€ã‚³ãƒ³ãƒ”ュータã€ä¼æ¥­ã€éŠ€è¡Œãªã©ã€ä¸€å®šã®åº¦åˆã„ã§ä¿¡é ¼ã®å¯¾è±¡ã¨ãªã‚‹æ§˜ã€…ãªã‚‚ã®ã‚’指ã—ã¾ã™ã€‚
 .sp
-¸ø³«¸°°Å¹æ²½¤Ç¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¸ø³«¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Â絬ÌϤʥͥåȥ¥¯´Ä¶­¤Ç¤Ï¡¢¸ß¤¤¤ËÄÌ¿®¤·¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£´Ö¤Ç°ÊÁ°¤Î´Ø·¸¤¬°ú³¤­³ÎΩ¤µ¤ì¤Æ¤¤¤ë¤È²¾Äꤷ¤¿¤ê¡¢»ÈÍѤµ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¸ø³«¸°¤ò¼ý¤á¤¿¿®Íê¤Ç¤­¤ë¥ê¥Ý¥¸¥È¥ê¤¬Â¸ºß¤¹¤ë¤È²¾Äꤷ¤¿¤ê¤¹¤ë¤³¤È¤ÏÉÔ²Äǽ¤Ç¤¹¡£¤³¤Î¤è¤¦¤Ê¸ø³«¸°¤ÎÇÛÉۤ˴ؤ¹¤ëÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¾ÚÌÀ½ñ¤¬¹Í°Æ¤µ¤ì¤Þ¤·¤¿¡£¸½ºß¤Ç¤Ï¡¢¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤¬¿®Íê¤Ç¤­¤ëÂè»°¼Ô¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£CA¤Ï¡¢Â¾¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Î¾ÚÌÀ½ñ¤Ë½ð̾¤¹¤ë(ȯ¹Ô¤¹¤ë)¹Ô°Ù¤ò¡¢¿®Íꤷ¤ÆǤ¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£(´ë¶È¤Ê¤É)¤Ç¤¹¡£CA¤ÏˡΧ¾å¤Î·ÀÌó¤Ë¹´Â«¤µ¤ì¤ë¤Î¤Ç¡¢Í­¸ú¤«¤Ä¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¤ß¤òºîÀ®¤¹¤ë¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£VeriSign¡¢Thawte¡¢Entrust¤ò¤Ï¤¸¤á¡¢Â¿¤¯¤Î¸øŪ¤Ê¾ÚÌÀ½ñȯ¹Ô¶É¤¬Â¸ºß¤·¤Þ¤¹¡£
+公開éµæš—å·åŒ–ã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®å…¬é–‹éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚大è¦æ¨¡ãªãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ç’°å¢ƒã§ã¯ã€äº’ã„ã«é€šä¿¡ã—ã¦ã„るエンティティ間ã§ä»¥å‰ã®é–¢ä¿‚ãŒå¼•ç¶šã確立ã•ã‚Œã¦ã„ã‚‹ã¨ä»®å®šã—ãŸã‚Šã€ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®å…¬é–‹éµã‚’åŽã‚ãŸä¿¡é ¼ã§ãるリãƒã‚¸ãƒˆãƒªãŒå­˜åœ¨ã™ã‚‹ã¨ä»®å®šã—ãŸã‚Šã™ã‚‹ã“ã¨ã¯ä¸å¯èƒ½ã§ã™ã€‚ã“ã®ã‚ˆã†ãªå…¬é–‹éµã®é…布ã«é–¢ã™ã‚‹å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«è¨¼æ˜Žæ›¸ãŒè€ƒæ¡ˆã•ã‚Œã¾ã—ãŸã€‚ç¾åœ¨ã§ã¯ã€è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ãŒä¿¡é ¼ã§ãる第三者ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚CAã¯ã€ä»–ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®è¨¼æ˜Žæ›¸ã«ç½²åã™ã‚‹(発行ã™ã‚‹)行為をã€ä¿¡é ¼ã—ã¦ä»»ã•ã‚Œã¦ã„るエンティティ(ä¼æ¥­ãªã©)ã§ã™ã€‚CAã¯æ³•å¾‹ä¸Šã®å¥‘ç´„ã«æ‹˜æŸã•ã‚Œã‚‹ã®ã§ã€æœ‰åŠ¹ã‹ã¤ä¿¡é ¼ã§ãる証明書ã®ã¿ã‚’作æˆã™ã‚‹ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚VeriSignã€Thawteã€Entrustã‚’ã¯ã˜ã‚ã€å¤šãã®å…¬çš„ãªè¨¼æ˜Žæ›¸ç™ºè¡Œå±€ãŒå­˜åœ¨ã—ã¾ã™ã€‚
 .sp
-Microsoft¤Îǧ¾Ú¥µ¡¼¥Ð¡¼¡¢Entrust¤ÎCAÀ½Éʤʤɤò½ê°ÁÈ¿¥Æâ¤ÇÍøÍѤ¹¤ì¤Ð¡¢Æȼ«¤Î¾ÚÌÀ½ñȯ¹Ô¶É¤ò±¿±Ä¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÚÌÀ½ñ¤Îɽ¼¨¡¢¥¤¥ó¥Ý¡¼¥È¤ª¤è¤Ó¥¨¥¯¥¹¥Ý¡¼¥È¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+Microsoftã®èªè¨¼ã‚µãƒ¼ãƒãƒ¼ã€Entrustã®CA製å“ãªã©ã‚’所属組織内ã§åˆ©ç”¨ã™ã‚Œã°ã€ç‹¬è‡ªã®è¨¼æ˜Žæ›¸ç™ºè¡Œå±€ã‚’é‹å–¶ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚\fIkeytool\fRコマンドを使用ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ã®è¡¨ç¤ºã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€è‡ªå·±ç½²å証明書を生æˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
-¸½ºß¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ÏX\&.509¾ÚÌÀ½ñ¤òÂоݤˤ·¤Æ¤¤¤Þ¤¹¡£
+ç¾åœ¨ã€\fIkeytool\fRコマンドã¯X\&.509証明書を対象ã«ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-X\&.509¾ÚÌÀ½ñ
+X\&.509証明書
 .RS 4
-X\&.509µ¬³Ê¤Ç¤Ï¡¢¾ÚÌÀ½ñ¤Ë´Þ¤á¤ë¾ðÊó¤¬ÄêµÁ¤µ¤ì¤Æ¤ª¤ê¡¢¤³¤Î¾ðÊó¤ò¾ÚÌÀ½ñ¤Ë½ñ¤­¹þ¤àÊýË¡(¥Ç¡¼¥¿·Á¼°)¤Ë¤Ä¤¤¤Æ¤âµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾ÚÌÀ½ñ¤Î¤¹¤Ù¤Æ¤Î¥Ç¡¼¥¿¤Ï¡¢ASN\&.1/DER¤È¸Æ¤Ð¤ì¤ë2¤Ä¤Î´ØÏ¢µ¬³Ê¤ò»ÈÍѤ·¤ÆÉä¹æ²½¤µ¤ì¤Þ¤¹¡£Abstract Syntax Notation 1¤Ï¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£Definite Encoding Rules¤Ï¡¢¥Ç¡¼¥¿¤ÎÊݸ¤ª¤è¤ÓžÁ÷¤ÎÊýË¡¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£
+X\&.509è¦æ ¼ã§ã¯ã€è¨¼æ˜Žæ›¸ã«å«ã‚る情報ãŒå®šç¾©ã•ã‚Œã¦ãŠã‚Šã€ã“ã®æƒ…報を証明書ã«æ›¸ã込む方法(データ形å¼)ã«ã¤ã„ã¦ã‚‚記述ã•ã‚Œã¦ã„ã¾ã™ã€‚証明書ã®ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ASN\&.1/DERã¨å‘¼ã°ã‚Œã‚‹2ã¤ã®é–¢é€£è¦æ ¼ã‚’使用ã—ã¦ç¬¦å·åŒ–ã•ã‚Œã¾ã™ã€‚Abstract Syntax Notation 1ã¯ãƒ‡ãƒ¼ã‚¿ã«ã¤ã„ã¦è¨˜è¿°ã—ã¦ã„ã¾ã™ã€‚Definite Encoding Rulesã¯ã€ãƒ‡ãƒ¼ã‚¿ã®ä¿å­˜ãŠã‚ˆã³è»¢é€ã®æ–¹æ³•ã«ã¤ã„ã¦è¨˜è¿°ã—ã¦ã„ã¾ã™ã€‚
 .sp
-¤¹¤Ù¤Æ¤ÎX\&.509¾ÚÌÀ½ñ¤Ï¡¢½ð̾¤Î¾¤Ë¼¡¤Î¥Ç¡¼¥¿¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£
+ã™ã¹ã¦ã®X\&.509証明書ã¯ã€ç½²åã®ä»–ã«æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚
 .sp
-\fB¥Ð¡¼¥¸¥ç¥ó\fR: ¾ÚÌÀ½ñ¤ËŬÍѤµ¤ì¤ëX\&.509µ¬³Ê¤Î¥Ð¡¼¥¸¥ç¥ó¤òÆÃÄꤷ¤Þ¤¹¡£¾ÚÌÀ½ñ¤Ë»ØÄê¤Ç¤­¤ë¾ðÊó¤Ï¡¢¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£º£¤Î¤È¤³¤í¡¢3¤Ä¤Î¥Ð¡¼¥¸¥ç¥ó¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢v1¡¢v2¡¢v3¤Î¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤ª¤è¤Ó¥¨¥¯¥¹¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£v3¤Î¾ÚÌÀ½ñ¤òÀ¸À®¤·¤Þ¤¹¡£
+\fBãƒãƒ¼ã‚¸ãƒ§ãƒ³\fR: 証明書ã«é©ç”¨ã•ã‚Œã‚‹X\&.509è¦æ ¼ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’特定ã—ã¾ã™ã€‚証明書ã«æŒ‡å®šã§ãる情報ã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚今ã®ã¨ã“ã‚ã€3ã¤ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€v1ã€v2ã€v3ã®è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚v3ã®è¨¼æ˜Žæ›¸ã‚’生æˆã—ã¾ã™ã€‚
 .sp
-X\&.509 Version 1¤Ï¡¢1988ǯ¤«¤éÍøÍѤµ¤ì¤Æ¹­¤¯ÉáµÚ¤·¤Æ¤ª¤ê¡¢ºÇ¤â°ìÈÌŪ¤Ç¤¹¡£
+X\&.509 Version 1ã¯ã€1988å¹´ã‹ã‚‰åˆ©ç”¨ã•ã‚Œã¦åºƒãæ™®åŠã—ã¦ãŠã‚Šã€æœ€ã‚‚一般的ã§ã™ã€‚
 .sp
-X\&.509 Version 2¤Ç¤Ï¡¢Subject¤äȯ¹Ô¼Ô¤Î̾Á°¤ò¤¢¤È¤ÇºÆÍøÍѤǤ­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢Subject¤Èȯ¹Ô¼Ô¤Î°ì°Õ¼±Ê̻ҤγµÇ°¤¬Æ³Æþ¤µ¤ì¤Þ¤·¤¿¡£¤Û¤È¤ó¤É¤Î¾ÚÌÀ½ñ¥×¥í¥Õ¥¡¥¤¥ëʸ½ñ¤Ç¤Ï¡¢Ì¾Á°¤òºÆ»ÈÍѤ·¤Ê¤¤¤³¤È¤È¡¢¾ÚÌÀ½ñ¤Ç°ì°Õ¤Î¼±Ê̻Ҥò»ÈÍѤ·¤Ê¤¤¤³¤È¤¬¡¢¶¯¤¯¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Version 2¤Î¾ÚÌÀ½ñ¤Ï¡¢¹­¤¯¤Ï»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+X\&.509 Version 2ã§ã¯ã€Subjectや発行者ã®åå‰ã‚’ã‚ã¨ã§å†åˆ©ç”¨ã§ãるよã†ã«ã™ã‚‹ãŸã‚ã«ã€Subjectã¨ç™ºè¡Œè€…ã®ä¸€æ„識別å­ã®æ¦‚念ãŒå°Žå…¥ã•ã‚Œã¾ã—ãŸã€‚ã»ã¨ã‚“ã©ã®è¨¼æ˜Žæ›¸ãƒ—ロファイル文書ã§ã¯ã€åå‰ã‚’å†ä½¿ç”¨ã—ãªã„ã“ã¨ã¨ã€è¨¼æ˜Žæ›¸ã§ä¸€æ„ã®è­˜åˆ¥å­ã‚’使用ã—ãªã„ã“ã¨ãŒã€å¼·ã推奨ã•ã‚Œã¦ã„ã¾ã™ã€‚Version 2ã®è¨¼æ˜Žæ›¸ã¯ã€åºƒãã¯ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã›ã‚“。
 .sp
-X\&.509 Version 3¤ÏºÇ¤â¿·¤·¤¤(1996ǯ)µ¬³Ê¤Ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î³µÇ°¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ïï¤Ç¤âÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¾ÚÌÀ½ñ¤Ë´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£°ìÈÌŪ¤Ê¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤È¤·¤Æ¤Ï¡¢KeyUsage(\fI½ð̾ÀìÍÑ\fR¤Ê¤É¡¢¸°¤Î»ÈÍѤòÆÃÄê¤ÎÌÜŪ¤ËÀ©¸Â¤¹¤ë)¡¢AlternativeNames(DNS̾¡¢ÅŻҥ᡼¥ë¡¦¥¢¥É¥ì¥¹¡¢IP¥¢¥É¥ì¥¹¤Ê¤É¡¢Â¾¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤ò¸ø³«¸°¤Ë´ØÏ¢ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤ë)¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤Ï¡¢critical¤È¤¤¤¦¥Þ¡¼¥¯¤òÉÕ¤±¤Æ¡¢¤½¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î¥Á¥§¥Ã¥¯¤È»ÈÍѤòµÁ̳¤Å¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢critical¤È¥Þ¡¼¥¯¤µ¤ì¡¢\fIkeyCertSign\fR¤¬ÀßÄꤵ¤ì¤¿KeyUsage¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬¾ÚÌÀ½ñ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤³¤Î¾ÚÌÀ½ñ¤òSSLÄÌ¿®Ãæ¤ËÄ󼨤¹¤ë¤È¡¢¾ÚÌÀ½ñ¤¬µñÈݤµ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¾ÚÌÀ½ñ¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢´ØÏ¢¤¹¤ëÈëÌ©¸°¤¬¾ÚÌÀ½ñ¤Î½ð̾ÀìÍѤȤ·¤Æ»ØÄꤵ¤ì¤Æ¤ª¤ê¡¢SSL¤Ç¤Ï»ÈÍѤǤ­¤Ê¤¤¤¿¤á¤Ç¤¹¡£
+X\&.509 Version 3ã¯æœ€ã‚‚æ–°ã—ã„(1996å¹´)è¦æ ¼ã§ã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®æ¦‚念をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚エクステンションã¯èª°ã§ã‚‚定義ã™ã‚‹ã“ã¨ãŒã§ãã€è¨¼æ˜Žæ›¸ã«å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚一般的ãªã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã¨ã—ã¦ã¯ã€KeyUsage(\fIç½²å専用\fRãªã©ã€éµã®ä½¿ç”¨ã‚’特定ã®ç›®çš„ã«åˆ¶é™ã™ã‚‹)ã€AlternativeNames(DNSåã€é›»å­ãƒ¡ãƒ¼ãƒ«ãƒ»ã‚¢ãƒ‰ãƒ¬ã‚¹ã€IPアドレスãªã©ã€ä»–ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’公開éµã«é–¢é€£ä»˜ã‘ã‚‹ã“ã¨ãŒã§ãã‚‹)ãªã©ãŒã‚ã‚Šã¾ã™ã€‚エクステンションã«ã¯ã€criticalã¨ã„ã†ãƒžãƒ¼ã‚¯ã‚’付ã‘ã¦ã€ãã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®ãƒã‚§ãƒƒã‚¯ã¨ä½¿ç”¨ã‚’義務ã¥ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€criticalã¨ãƒžãƒ¼ã‚¯ã•ã‚Œã€\fIkeyCertSign\fRãŒè¨­å®šã•ã‚ŒãŸKeyUsageエクステンションãŒè¨¼æ˜Žæ›¸ã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã“ã®è¨¼æ˜Žæ›¸ã‚’SSL通信中ã«æ示ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ãŒæ‹’å¦ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€è¨¼æ˜Žæ›¸ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«ã‚ˆã£ã¦ã€é–¢é€£ã™ã‚‹ç§˜å¯†éµãŒè¨¼æ˜Žæ›¸ã®ç½²å専用ã¨ã—ã¦æŒ‡å®šã•ã‚Œã¦ãŠã‚Šã€SSLã§ã¯ä½¿ç”¨ã§ããªã„ãŸã‚ã§ã™ã€‚
 .sp
-\fB¥·¥ê¥¢¥ëÈÖ¹æ\fR: ¾ÚÌÀ½ñ¤òºîÀ®¤·¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤¬È¯¹Ô¤¹¤ë¾¤Î¾ÚÌÀ½ñ¤È¶èÊ̤¹¤ë¤¿¤á¤Ë¡¢¾ÚÌÀ½ñ¤Ë¥·¥ê¥¢¥ëÈÖ¹æ¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ï¡¢ÍÍ¡¹¤ÊÊýË¡¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬¼è¤ê¾Ã¤µ¤ì¤ë¤È¡¢¥·¥ê¥¢¥ëÈֹ椬¾ÚÌÀ½ñ¼º¸ú¥ê¥¹¥È(CRL)¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fBシリアル番å·\fR: 証明書を作æˆã—ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒç™ºè¡Œã™ã‚‹ä»–ã®è¨¼æ˜Žæ›¸ã¨åŒºåˆ¥ã™ã‚‹ãŸã‚ã«ã€è¨¼æ˜Žæ›¸ã«ã‚·ãƒªã‚¢ãƒ«ç•ªå·ã‚’割り当ã¦ã¾ã™ã€‚ã“ã®æƒ…å ±ã¯ã€æ§˜ã€…ãªæ–¹æ³•ã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒå–り消ã•ã‚Œã‚‹ã¨ã€ã‚·ãƒªã‚¢ãƒ«ç•ªå·ãŒè¨¼æ˜Žæ›¸å¤±åŠ¹ãƒªã‚¹ãƒˆ(CRL)ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¾ÚÌÀ½ñ¥¢¥ë¥´¥ê¥º¥à¼±ÊÌ»Ò\fR: ¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤ËCA¤¬»ÈÍѤ·¤¿¥¢¥ë¥´¥ê¥º¥à¤òÆÃÄꤷ¤Þ¤¹¡£
+\fB証明書アルゴリズム識別å­\fR: 証明書ã«ç½²åを付ã‘ã‚‹ã¨ãã«CAãŒä½¿ç”¨ã—ãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’特定ã—ã¾ã™ã€‚
 .sp
-\fBȯ¹Ô¼Ô̾\fR: ¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤ÎX\&.500¼±ÊÌ̾¤Ç¤¹¡£X\&.500¼±ÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ä̾ï¤ÏCA¤Ç¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¡¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤ò¿®Íꤹ¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥ë¡¼¥È¤Ä¤Þ¤ê¥È¥Ã¥×¥ì¥Ù¥ë¤ÎCA¤Î¾ÚÌÀ½ñ¤Ê¤É¡¢¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ïȯ¹Ô¼Ô¤¬¼«¿È¤Î¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+\fB発行者å\fR: 証明書ã«ç½²åを付ã‘ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®X\&.500識別åã§ã™ã€‚X\&.500識別åã‚’å‚ç…§ã—ã¦ãã ã•ã„。通常ã¯CAã§ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã‚’使用ã™ã‚‹ã“ã¨ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ルートã¤ã¾ã‚Šãƒˆãƒƒãƒ—レベルã®CAã®è¨¼æ˜Žæ›¸ãªã©ã€å ´åˆã«ã‚ˆã£ã¦ã¯ç™ºè¡Œè€…ãŒè‡ªèº«ã®è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÍ­¸ú´ü´Ö\fR: ³Æ¾ÚÌÀ½ñ¤Ï¸Â¤é¤ì¤¿´ü´Ö¤Î¤ßÍ­¸ú¤Ç¤¹¡£¤³¤Î´ü´Ö¤Ï³«»Ï¤ÎÆü»þ¤È½ªÎ»¤ÎÆü»þ¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¡¢¿ôÉäÎû¤¤´ü´Ö¤«¤é100ǯ¤È¤¤¤¦Ä¹´ü¤Ë¤ï¤¿¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ÁªÂò¤µ¤ì¤ëÍ­¸ú´ü´Ö¤Ï¡¢¾ÚÌÀ½ñ¤Ø¤Î½ð̾¤Ë»ÈÍѤµ¤ì¤ëÈëÌ©¸°¤Î¶¯ÅÙ¤ä¾ÚÌÀ½ñ¤Ë»Ùʧ¤¦¶â³Û¤Ê¤É¡¢ÍÍ¡¹¤ÊÍ×°ø¤Ç°Û¤Ê¤ê¤Þ¤¹¡£Í­¸ú´ü´Ö¤Ï¡¢´ØÏ¢¤¹¤ëÈëÌ©¸°¤¬Â»¤ï¤ì¤Ê¤¤¾ì¹ç¤Ë¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤¬¸ø³«¸°¤ò¿®Íê¤Ç¤­¤ë¤È´üÂÔ¤µ¤ì¤ë´ü´Ö¤Ç¤¹¡£
+\fB有効期間\fR: å„証明書ã¯é™ã‚‰ã‚ŒãŸæœŸé–“ã®ã¿æœ‰åŠ¹ã§ã™ã€‚ã“ã®æœŸé–“ã¯é–‹å§‹ã®æ—¥æ™‚ã¨çµ‚了ã®æ—¥æ™‚ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã€æ•°ç§’ã®çŸ­ã„期間ã‹ã‚‰100å¹´ã¨ã„ã†é•·æœŸã«ã‚ãŸã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚é¸æŠžã•ã‚Œã‚‹æœ‰åŠ¹æœŸé–“ã¯ã€è¨¼æ˜Žæ›¸ã¸ã®ç½²åã«ä½¿ç”¨ã•ã‚Œã‚‹ç§˜å¯†éµã®å¼·åº¦ã‚„証明書ã«æ”¯æ‰•ã†é‡‘é¡ãªã©ã€æ§˜ã€…ãªè¦å› ã§ç•°ãªã‚Šã¾ã™ã€‚有効期間ã¯ã€é–¢é€£ã™ã‚‹ç§˜å¯†éµãŒæã‚ã‚Œãªã„å ´åˆã«ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒå…¬é–‹éµã‚’ä¿¡é ¼ã§ãã‚‹ã¨æœŸå¾…ã•ã‚Œã‚‹æœŸé–“ã§ã™ã€‚
 .sp
-\fB¼çÂÎ̾\fR: ¾ÚÌÀ½ñ¤Ç¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î̾Á°¡£¤³¤Î̾Á°¤ÏX\&.500ɸ½à¤ò»ÈÍѤ¹¤ë¤Î¤Ç¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈÁ´ÂΤǰì°Õ¤Ê¤â¤Î¤ÈÁÛÄꤵ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤ÎX\&.500¼±ÊÌ̾(DN)¤Ç¤¹¡£X\&.500¼±ÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fB主体å\fR: 証明書ã§å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®åå‰ã€‚ã“ã®åå‰ã¯X\&.500標準を使用ã™ã‚‹ã®ã§ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆå…¨ä½“ã§ä¸€æ„ãªã‚‚ã®ã¨æƒ³å®šã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®X\&.500識別å(DN)ã§ã™ã€‚X\&.500識別åã‚’å‚ç…§ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1280,33 +1280,33 @@
 .if n \{\
 .RE
 .\}
-¤³¤ì¤é¤Ï¤½¤ì¤¾¤ì¼çÂΤÎÄ̾Î(CN)¡¢ÁÈ¿¥Ã±°Ì(OU)¡¢ÁÈ¿¥(O)¡¢¹ñ(C)¤òɽ¤·¤Þ¤¹¡£
+ã“れらã¯ãã‚Œãžã‚Œä¸»ä½“ã®é€šç§°(CN)ã€çµ„ç¹”å˜ä½(OU)ã€çµ„ç¹”(O)ã€å›½(C)を表ã—ã¾ã™ã€‚
 .sp
-\fB¼çÂΤθø³«¸°¾ðÊó\fR: ̾Á°¤òÉÕ¤±¤é¤ì¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤È¥¢¥ë¥´¥ê¥º¥à¼±Ê̻ҤǤ¹¡£¥¢¥ë¥´¥ê¥º¥à¼±Ê̻ҤǤϡ¢¸ø³«¸°¤ËÂФ·¤Æ»ÈÍѤµ¤ì¤Æ¤¤¤ë¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤ª¤è¤Ó´ØÏ¢¤¹¤ë¸°¥Ñ¥é¥á¡¼¥¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fB主体ã®å…¬é–‹éµæƒ…å ±\fR: åå‰ã‚’付ã‘られãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµã¨ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ è­˜åˆ¥å­ã§ã™ã€‚アルゴリズム識別å­ã§ã¯ã€å…¬é–‹éµã«å¯¾ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„る公開éµæš—å·åŒ–システムãŠã‚ˆã³é–¢é€£ã™ã‚‹éµãƒ‘ラメータãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ¥Á¥§¡¼¥ó
+証明書ãƒã‚§ãƒ¼ãƒ³
 .RS 4
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÈëÌ©¸°¤ª¤è¤Ó´ØÏ¢¤¹¤ë¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò´Þ¤à¥­¡¼¥¹¥È¥¢¤Î¸°¥¨¥ó¥È¥ê¤òºîÀ®¤·¡¢´ÉÍý¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥¨¥ó¥È¥ê¤Ç¤Ï¡¢ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤Ï¡¢¥Á¥§¡¼¥ó¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fIkeytool\fRコマンドã§ã¯ã€ç§˜å¯†éµãŠã‚ˆã³é–¢é€£ã™ã‚‹è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’å«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®éµã‚¨ãƒ³ãƒˆãƒªã‚’作æˆã—ã€ç®¡ç†ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªã‚¨ãƒ³ãƒˆãƒªã§ã¯ã€ç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã¯ã€ãƒã‚§ãƒ¼ãƒ³ã®æœ€åˆã®è¨¼æ˜Žæ›¸ã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¸°¤ò½é¤á¤ÆºîÀ®¤¹¤ë¤È¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤È¤¤¤¦1¤Ä¤ÎÍ×ÁǤΤߤò´Þ¤à¥Á¥§¡¼¥ó¤¬³«»Ï¤µ¤ì¤Þ¤¹¡£\fI¤Î\fR\-genkeypair¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ïȯ¹Ô¼Ô(½ð̾¼Ô)¤¬¼çÂΤÈƱ¤¸¤Ç¤¹¡£¼çÂΤϡ¢¤½¤Î¸ø³«¸°¤¬¾ÚÌÀ½ñ¤Ë¤è¤Ã¤Æǧ¾Ú¤µ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¤¹¡£\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¿·¤·¤¤¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤òºîÀ®¤¹¤ë¤È¡¢¸ø³«¸°¤Ï¾ï¤Ë¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤µ¤ì¤Þ¤¹¡£
+éµã‚’åˆã‚ã¦ä½œæˆã™ã‚‹ã¨ã€è‡ªå·±ç½²å証明書ã¨ã„ã†1ã¤ã®è¦ç´ ã®ã¿ã‚’å«ã‚€ãƒã‚§ãƒ¼ãƒ³ãŒé–‹å§‹ã•ã‚Œã¾ã™ã€‚\fIã®\fR\-genkeypairコマンドをå‚ç…§ã—ã¦ãã ã•ã„。自己署å証明書ã¯ç™ºè¡Œè€…(ç½²å者)ãŒä¸»ä½“ã¨åŒã˜ã§ã™ã€‚主体ã¯ã€ãã®å…¬é–‹éµãŒè¨¼æ˜Žæ›¸ã«ã‚ˆã£ã¦èªè¨¼ã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã™ã€‚\fI\-genkeypair\fRコマンドを呼ã³å‡ºã—ã¦æ–°ã—ã„公開éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã‚’作æˆã™ã‚‹ã¨ã€å…¬é–‹éµã¯å¸¸ã«è‡ªå·±ç½²å証明書ã§ãƒ©ãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¸å¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤¬\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¤Æ¡¢CSR¤¬¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤ËÁ÷¿®¤µ¤ì¤ë¤È¡¢CA¤«¤é¤Î¥ì¥¹¥Ý¥ó¥¹¤¬\fI\-importcert\fR¤Ç¥¤¥ó¥Ý¡¼¥È¤µ¤ì¡¢¸µ¤Î¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤è¤Ã¤ÆÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£¥³¥Þ¥ó¥É¤Î\fI\-certreq\fR¤ª¤è¤Ó\fI\-importcert\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥Á¥§¡¼¥ó¤ÎºÇ¸å¤Ë¤¢¤ë¤Î¤Ï¡¢Subject¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿CA¤¬È¯¹Ô¤·¤¿¾ÚÌÀ½ñ(±þÅú)¤Ç¤¹¡£¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ç¤¹¡£
+ã“ã®å¾Œã€è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)ãŒ\fI\-certreq\fRコマンドã§ç”Ÿæˆã•ã‚Œã¦ã€CSRãŒè¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã«é€ä¿¡ã•ã‚Œã‚‹ã¨ã€CAã‹ã‚‰ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ãŒ\fI\-importcert\fRã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã€å…ƒã®è‡ªå·±ç½²å証明書ã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã‚ˆã£ã¦ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚コマンドã®\fI\-certreq\fRãŠã‚ˆã³\fI\-importcert\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。ãƒã‚§ãƒ¼ãƒ³ã®æœ€å¾Œã«ã‚ã‚‹ã®ã¯ã€Subjectã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸCAãŒç™ºè¡Œã—ãŸè¨¼æ˜Žæ›¸(応答)ã§ã™ã€‚ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã§ã™ã€‚
 .sp
-CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ï¡¢Â¿¤¯¤Î¾ì¹ç¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ(¤Ä¤Þ¤êCA¤¬¼«¿È¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿¾ÚÌÀ½ñ)¤Ç¤¢¤ê¡¢¤³¤ì¤Ï¥Á¥§¡¼¥ó¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢CA¤¬¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òÊÖ¤¹¤³¤È¤â¤¢¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ¸å¤Î¾ÚÌÀ½ñ(CA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¡¢¸°¥¨¥ó¥È¥ê¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ)¤ËÊѤï¤ê¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢CSR¤ÎÁ÷¿®Àè¤ÎCA¤È¤ÏÊ̤ÎCA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¡¢CSR¤ÎÁ÷¿®Àè¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢¼¡¤ÎCA¤Î¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£°Ê²¼Æ±Íͤˡ¢¼«¸Ê½ð̾¤µ¤ì¤¿¡Ö¥ë¡¼¥È¡×¾ÚÌÀ½ñ¤Ë㤹¤ë¤Þ¤Ç¥Á¥§¡¼¥ó¤¬Â³¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥Á¥§¡¼¥óÆâ¤Î(ºÇ½é¤Î¾ÚÌÀ½ñ°Ê¸å¤Î)³Æ¾ÚÌÀ½ñ¤Ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤Î¼¡¤Î¾ÚÌÀ½ñ¤Î½ð̾¼Ô¤Î¸ø³«¸°¤¬Ç§¾Ú¤µ¤ì¤Æ¤¤¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã¯ã€å¤šãã®å ´åˆã€è‡ªå·±ç½²å証明書(ã¤ã¾ã‚ŠCAãŒè‡ªèº«ã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸè¨¼æ˜Žæ›¸)ã§ã‚ã‚Šã€ã“ã‚Œã¯ãƒã‚§ãƒ¼ãƒ³ã®æœ€åˆã®è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€CAãŒè¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã‚’è¿”ã™ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€å¾Œã®è¨¼æ˜Žæ›¸(CAã«ã‚ˆã£ã¦ç½²åã•ã‚Œã€éµã‚¨ãƒ³ãƒˆãƒªã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸)ã«å¤‰ã‚ã‚Šã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€CSRã®é€ä¿¡å…ˆã®CAã¨ã¯åˆ¥ã®CAã«ã‚ˆã£ã¦ç½²åã•ã‚Œã€CSRã®é€ä¿¡å…ˆã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€æ¬¡ã®CAã®éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚以下åŒæ§˜ã«ã€è‡ªå·±ç½²åã•ã‚ŒãŸã€Œãƒ«ãƒ¼ãƒˆã€è¨¼æ˜Žæ›¸ã«é”ã™ã‚‹ã¾ã§ãƒã‚§ãƒ¼ãƒ³ãŒç¶šãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®(最åˆã®è¨¼æ˜Žæ›¸ä»¥å¾Œã®)å„証明書ã§ã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æ¬¡ã®è¨¼æ˜Žæ›¸ã®ç½²å者ã®å…¬é–‹éµãŒèªè¨¼ã•ã‚Œã¦ã„ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¿¤¯¤ÎCA¤Ï¡¢¥Á¥§¡¼¥ó¤ò¥µ¥Ý¡¼¥È¤»¤º¤Ëȯ¹ÔºÑ¤Î¾ÚÌÀ½ñ¤Î¤ß¤òÊÖ¤·¤Þ¤¹¡£Æäˡ¢Ãæ´Ö¤ÎCA¤¬Â¸ºß¤·¤Ê¤¤¥Õ¥é¥Ã¥È¤Ê³¬Áع½Â¤¤Î¾ì¹ç¤Ï¡¢¤½¤Î·¹¸þ¤¬¸²Ãø¤Ç¤¹¡£¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢¤Ë¤¹¤Ç¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¾ðÊ󤫤顢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò³ÎΩ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+多ãã®CAã¯ã€ãƒã‚§ãƒ¼ãƒ³ã‚’サãƒãƒ¼ãƒˆã›ãšã«ç™ºè¡Œæ¸ˆã®è¨¼æ˜Žæ›¸ã®ã¿ã‚’è¿”ã—ã¾ã™ã€‚特ã«ã€ä¸­é–“ã®CAãŒå­˜åœ¨ã—ãªã„フラットãªéšŽå±¤æ§‹é€ ã®å ´åˆã¯ã€ãã®å‚¾å‘ãŒé¡•è‘—ã§ã™ã€‚ã“ã®ã‚ˆã†ãªå ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã™ã§ã«æ ¼ç´ã•ã‚Œã¦ã„ã‚‹ä¿¡é ¼ã§ãる証明書情報ã‹ã‚‰ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’確立ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ê̤αþÅú·Á¼°(PKCS#7¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë·Á¼°)¤Ç¤Ï¡¢È¯¹ÔºÑ¾ÚÌÀ½ñ¤Ë²Ã¤¨¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¥µ¥Ý¡¼¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤É¤Á¤é¤Î±þÅú·Á¼°¤â°·¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+別ã®å¿œç­”å½¢å¼(PKCS#7ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹å½¢å¼)ã§ã¯ã€ç™ºè¡Œæ¸ˆè¨¼æ˜Žæ›¸ã«åŠ ãˆã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®ã‚µãƒãƒ¼ãƒˆãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€ã©ã¡ã‚‰ã®å¿œç­”å½¢å¼ã‚‚扱ã†ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-¥È¥Ã¥×¥ì¥Ù¥ë(¥ë¡¼¥È)CA¤Î¾ÚÌÀ½ñ¤Ï¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¤¹¡£¤¿¤À¤·¡¢¥ë¡¼¥È¤Î¸ø³«¸°¤Ø¤Î¿®Íê¤Ï¡¢¥ë¡¼¥È¾ÚÌÀ½ñ¼«ÂΤ«¤é¤Ç¤Ï¤Ê¤¯¡¢¿·Ê¹¤Ê¤É¾¤Î¥½¡¼¥¹¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢VeriSign¥ë¡¼¥ÈCA¤Ê¤É¤Î¼±ÊÌ̾¤ò»ÈÍѤ·¤Æ¡¢Ã¯¤Ç¤â¼«¸Ê½ð̾·¿¾ÚÌÀ½ñ¤òÀ¸À®¤Ç¤­¤ë¤¿¤á¤Ç¤¹¡£¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤Ï¹­¤¯ÃΤé¤ì¤Æ¤¤¤Þ¤¹¡£¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤ò¾ÚÌÀ½ñ¤Ë³ÊǼ¤¹¤ëÍýͳ¤Ï¡¢¾ÚÌÀ½ñ¤È¤¤¤¦·Á¼°¤Ë¤¹¤ë¤³¤È¤Ç¿¤¯¤Î¥Ä¡¼¥ë¤«¤éÍøÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ë¤«¤é¤Ë¤¹¤®¤Þ¤»¤ó¡£¤Ä¤Þ¤ê¡¢¾ÚÌÀ½ñ¤Ï¡¢¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤ò±¿¤Ö¡ÖÇÞÂΡפȤ·¤ÆÍøÍѤµ¤ì¤ë¤Î¤ß¤Ç¤¹¡£¥ë¡¼¥ÈCA¤Î¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤ËÄɲ乤ë¤È¤­¤Ï¡¢\fI\-printcert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¤½¤ÎÁ°¤Ë¾ÚÌÀ½ñ¤ÎÆâÍƤòɽ¼¨¤·¡¢É½¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¿·Ê¹¤ä¥ë¡¼¥ÈCA¤ÎWeb¥Ú¡¼¥¸¤Ê¤É¤«¤éÆþ¼ê¤·¤¿´ûÃΤΥե£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+トップレベル(ルート)CAã®è¨¼æ˜Žæ›¸ã¯ã€è‡ªå·±ç½²å証明書ã§ã™ã€‚ãŸã ã—ã€ãƒ«ãƒ¼ãƒˆã®å…¬é–‹éµã¸ã®ä¿¡é ¼ã¯ã€ãƒ«ãƒ¼ãƒˆè¨¼æ˜Žæ›¸è‡ªä½“ã‹ã‚‰ã§ã¯ãªãã€æ–°èžãªã©ä»–ã®ã‚½ãƒ¼ã‚¹ã‹ã‚‰å–å¾—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€VeriSignルートCAãªã©ã®è­˜åˆ¥åを使用ã—ã¦ã€èª°ã§ã‚‚自己署å型証明書を生æˆã§ãã‚‹ãŸã‚ã§ã™ã€‚ルートCAã®å…¬é–‹éµã¯åºƒã知られã¦ã„ã¾ã™ã€‚ルートCAã®å…¬é–‹éµã‚’証明書ã«æ ¼ç´ã™ã‚‹ç†ç”±ã¯ã€è¨¼æ˜Žæ›¸ã¨ã„ã†å½¢å¼ã«ã™ã‚‹ã“ã¨ã§å¤šãã®ãƒ„ールã‹ã‚‰åˆ©ç”¨ã§ãるよã†ã«ãªã‚‹ã‹ã‚‰ã«ã™ãŽã¾ã›ã‚“。ã¤ã¾ã‚Šã€è¨¼æ˜Žæ›¸ã¯ã€ãƒ«ãƒ¼ãƒˆCAã®å…¬é–‹éµã‚’é‹ã¶ã€Œåª’体ã€ã¨ã—ã¦åˆ©ç”¨ã•ã‚Œã‚‹ã®ã¿ã§ã™ã€‚ルートCAã®è¨¼æ˜Žæ›¸ã‚’キーストアã«è¿½åŠ ã™ã‚‹ã¨ãã¯ã€\fI\-printcert\fRオプションを使用ã—ã¦ã€ãã®å‰ã«è¨¼æ˜Žæ›¸ã®å†…容を表示ã—ã€è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€æ–°èžã‚„ルートCAã®Webページãªã©ã‹ã‚‰å…¥æ‰‹ã—ãŸæ—¢çŸ¥ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
-cacerts¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë
+cacerts証明書ファイル
 .RS 4
-\fIcacerts\fR¤È¤¤¤¦Ì¾Á°¤Î¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë¤Ï¡¢Windows¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home\elib\esecurity\fR¡¢Oracle Solaris¤Ç¤Ï\fIjava\&.home/lib/security\fR¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¡£\fIjava\&.home\fR¤Ï¡¢¼Â¹Ô´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê(SDK¤Î\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJRE¤ÎºÇ¾å°Ì¥Ç¥£¥ì¥¯¥È¥ê)¤Ç¤¹¡£
+\fIcacerts\fRã¨ã„ã†åå‰ã®è¨¼æ˜Žæ›¸ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Windowsã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ディレクトリ\fIjava\&.home\elib\esecurity\fRã€Oracle Solarisã§ã¯\fIjava\&.home/lib/security\fRã«ç½®ã‹ã‚Œã¦ã„ã¾ã™ã€‚\fIjava\&.home\fRã¯ã€å®Ÿè¡Œç’°å¢ƒã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(SDKã®\fIjre\fRディレクトリã¾ãŸã¯JREã®æœ€ä¸Šä½ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª)ã§ã™ã€‚
 .sp
-\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ï¡¢CA¤Î¾ÚÌÀ½ñ¤ò´Þ¤à¡¢¥·¥¹¥Æ¥àÁ´ÂΤΥ­¡¼¥¹¥È¥¢¤Ç¤¹¡£¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¡¢¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ë\fIjks\fR¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤Î¹½À®¤È´ÉÍý¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥»¥Ã¥È¤ò´Þ¤ó¤À¾õÂ֤ǽв٤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¾ÚÌÀ½ñ¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fIcacerts\fRファイルã¯ã€CAã®è¨¼æ˜Žæ›¸ã‚’å«ã‚€ã€ã‚·ã‚¹ãƒ†ãƒ å…¨ä½“ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã§ã™ã€‚システム管ç†è€…ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã«\fIjks\fRを指定ã™ã‚‹ã“ã¨ã§ã€\fIkeytool\fRコマンドを使用ã—ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æˆã¨ç®¡ç†ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚\fIcacerts\fRキーストア・ファイルã¯ã€ãƒ«ãƒ¼ãƒˆCA証明書ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚»ãƒƒãƒˆã‚’å«ã‚“ã çŠ¶æ…‹ã§å‡ºè·ã•ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã®è¨¼æ˜Žæ›¸ã‚’一覧表示ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1317,23 +1317,23 @@
 .if n \{\
 .RE
 .\}
-\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Î½é´ü¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢\fIchangeit\fR¤Ç¤¹¡£¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¡¢SDK¤Î¥¤¥ó¥¹¥È¡¼¥ë¸å¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¥ï¡¼¥É¤È¥Ç¥Õ¥©¥ë¥È¡¦¥¢¥¯¥»¥¹¸¢¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIcacerts\fRキーストア・ファイルã®åˆæœŸãƒ‘スワードã¯ã€\fIchangeit\fRã§ã™ã€‚システム管ç†è€…ã¯ã€SDKã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¾Œã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘スワードã¨ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’変更ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-\fIcacerts\fR¥Õ¥¡¥¤¥ë¤ò³Îǧ¤¹¤ë¤³¤È¤¬½ÅÍפǤ¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ëÆâ¤ÎCA¤Ï¡¢½ð̾¤ª¤è¤Ó¾¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ø¤Î¾ÚÌÀ½ñȯ¹Ô¤Î¤¿¤á¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤È¤·¤Æ¿®Íꤵ¤ì¤ë¤¿¤á¡¢\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Î´ÉÍý¤Ï¿µ½Å¤Ë¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¿®Íꤹ¤ëCA¤Î¾ÚÌÀ½ñ¤Î¤ß¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢¼«¿È¤ÎÀÕǤ¤Ë¤ª¤¤¤Æ¡¢\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤Æ¤¤¤ë¿®Íê¤Ç¤­¤ë¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò¸¡¾Ú¤·¡¢¿®ÍêÀ­¤Ë´Ø¤¹¤ëÆȼ«¤Î·èÄê¤ò¹Ô¤¤¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIcacerts\fRファイルを確èªã™ã‚‹ã“ã¨ãŒé‡è¦ã§ã™ã€‚\fIcacerts\fRファイル内ã®CAã¯ã€ç½²åãŠã‚ˆã³ä»–ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¸ã®è¨¼æ˜Žæ›¸ç™ºè¡Œã®ãŸã‚ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã—ã¦ä¿¡é ¼ã•ã‚Œã‚‹ãŸã‚ã€\fIcacerts\fRファイルã®ç®¡ç†ã¯æ…Žé‡ã«è¡Œã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIcacerts\fRファイルã«ã¯ã€ä¿¡é ¼ã™ã‚‹CAã®è¨¼æ˜Žæ›¸ã®ã¿ãŒå«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ユーザーã¯ã€è‡ªèº«ã®è²¬ä»»ã«ãŠã„ã¦ã€\fIcacerts\fRファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã¦ã„ã‚‹ä¿¡é ¼ã§ãるルートCA証明書を検証ã—ã€ä¿¡é ¼æ€§ã«é–¢ã™ã‚‹ç‹¬è‡ªã®æ±ºå®šã‚’è¡Œã„ã¾ã™ã€‚
 .sp
-¿®Íê¤Ç¤­¤Ê¤¤CA¾ÚÌÀ½ñ¤ò\fIcacerts\fR¥Õ¥¡¥¤¥ë¤«¤éºï½ü¤¹¤ë¤Ë¤Ï¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Î\fIdelete\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ë¤ÏJRE¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤¹¤ë¥¢¥¯¥»¥¹¸¢¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤
+ä¿¡é ¼ã§ããªã„CA証明書を\fIcacerts\fRファイルã‹ã‚‰å‰Šé™¤ã™ã‚‹ã«ã¯ã€\fIkeytool\fRコマンドã®\fIdelete\fRオプションを使用ã—ã¾ã™ã€‚\fIcacerts\fRファイルã¯JREã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’編集ã™ã‚‹ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ç®¡ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•ã„
 .RE
 .PP
-¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê
+インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼
 .RS 4
-¿¤¯¤Î¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½¤Ç¤Ï¤Ê¤¯¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë½ÐÎϲÄǽÉä¹æ²½Êý¼°¤ò»ÈÍѤ·¤Æ³ÊǼ¤µ¤ì¤Þ¤¹¡£Base 64Éä¹æ²½¤È¤â¸Æ¤Ð¤ì¤ë¤³¤Î¾ÚÌÀ½ñ·Á¼°¤Ç¤Ï¡¢ÅŻҥ᡼¥ë¤ä¤½¤Î¾¤Îµ¡¹½¤òÄ̤¸¤Æ¡¢Â¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¾ÚÌÀ½ñ¤òÍưפ˥¨¥¯¥¹¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£
+多ãã®å ´åˆã€è¨¼æ˜Žæ›¸ã¯ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã§ã¯ãªãã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„る出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã‚’使用ã—ã¦æ ¼ç´ã•ã‚Œã¾ã™ã€‚Base 64符å·åŒ–ã¨ã‚‚呼ã°ã‚Œã‚‹ã“ã®è¨¼æ˜Žæ›¸å½¢å¼ã§ã¯ã€é›»å­ãƒ¡ãƒ¼ãƒ«ã‚„ãã®ä»–ã®æ©Ÿæ§‹ã‚’通ã˜ã¦ã€ä»–ã®ã‚¢ãƒ—リケーションã«è¨¼æ˜Žæ›¸ã‚’容易ã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚
 .sp
-\fI\-importcert\fR¤È\fI\-printcert\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤Î·Á¼°¤Î¾ÚÌÀ½ñ¤È¥Ð¥¤¥Ê¥êÉä¹æ²½¤Î¾ÚÌÀ½ñ¤òÆɤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-exportcert\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¥Ð¥¤¥Ê¥êÉä¹æ²½¤Î¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Î¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-importcert\fRã¨\fI\-printcert\fRコマンドã§ã¯ã€ã“ã®å½¢å¼ã®è¨¼æ˜Žæ›¸ã¨ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã®è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-exportcert\fRコマンドã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã®è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€\fI\-rfc\fRオプションを指定ã—ãŸå ´åˆã¯ã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã®è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-list\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¾ÚÌÀ½ñ¤ÎSHA1¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï¿Í¤¬Íý²ò¤Ç¤­¤ë·Á¼°¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-list\fRコマンドã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§è¨¼æ˜Žæ›¸ã®SHA1フィンガープリントãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-v\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€è¨¼æ˜Žæ›¸ã¯äººãŒç†è§£ã§ãã‚‹å½¢å¼ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€è¨¼æ˜Žæ›¸ã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-½ÐÎϲÄǽÉä¹æ²½Êý¼°¤ÇÉä¹æ²½¤µ¤ì¤¿¾ÚÌÀ½ñ¤Ï¡¢¼¡¤Î¥Æ¥­¥¹¥È¤Ç»Ï¤Þ¤ê¡¢¼¡¤Î¥Æ¥­¥¹¥È¤Ç½ªÎ»¤·¤Þ¤¹¡£
+出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§ç¬¦å·åŒ–ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã¯ã€æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã§å§‹ã¾ã‚Šã€æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã§çµ‚了ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1350,21 +1350,21 @@
 .\}
 .RE
 .PP
-X\&.500¼±ÊÌ̾
+X\&.500識別å
 .RS 4
-X\&.500¼±ÊÌ̾¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢X\&.509¾ÚÌÀ½ñ¤Î\fIsubject\fR¥Õ¥£¡¼¥ë¥É¤È\fIissuer\fR(½ð̾¼Ô)¥Õ¥£¡¼¥ë¥É¤Ç»ØÄꤵ¤ì¤ë̾Á°¤Ï¡¢X\&.500¼±ÊÌ̾¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥µ¥Ö¥Ñ¡¼¥È¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
+X\&.500識別åã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€X\&.509証明書ã®\fIsubject\fRフィールドã¨\fIissuer\fR(ç½²å者)フィールドã§æŒ‡å®šã•ã‚Œã‚‹åå‰ã¯ã€X\&.500識別åã§ã™ã€‚\fIkeytool\fRコマンドã¯ã€æ¬¡ã®ã‚µãƒ–パートをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚
 .sp
-\fBcommonName\fR: Susan Jones¤Ê¤É¡¢¿Í¤ÎÄ̾Ρ£
+\fBcommonName\fR: Susan Jonesãªã©ã€äººã®é€šç§°ã€‚
 .sp
-\fBorganizationUnit\fR: ¾®¤µ¤ÊÁÈ¿¥(Éô¡¢²Ý¤Ê¤É)¤Î̾¾Î¡£Purchasing¤Ê¤É¤Ç¤¹¡£
+\fBorganizationUnit\fR: å°ã•ãªçµ„ç¹”(部ã€èª²ãªã©)ã®å称。Purchasingãªã©ã§ã™ã€‚
 .sp
-\fBlocalityName\fR: ÃÏ°è(ÅÔ»Ô)̾¡£Palo Alto¤Ê¤É¡£
+\fBlocalityName\fR: 地域(都市)å。Palo Altoãªã©ã€‚
 .sp
-\fBstateName\fR: ½£Ì¾¤Þ¤¿¤ÏÃÏÊý̾¡£California¤Ê¤É¡£
+\fBstateName\fR: å·žåã¾ãŸã¯åœ°æ–¹å。Californiaãªã©ã€‚
 .sp
-\fBcountry\fR: 2ʸ»ú¤Î¹ñ¥³¡¼¥É¡£CH¤Ê¤É¡£
+\fBcountry\fR: 2文字ã®å›½ã‚³ãƒ¼ãƒ‰ã€‚CHãªã©ã€‚
 .sp
-¼±ÊÌ̾ʸ»úÎó¤ò\fI\-dname\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤȤ·¤Æ»ØÄꤹ¤ë¾ì¹ç(¤¿¤È¤¨¤Ð\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤Ë)¡¢Ê¸»úÎó¤Ï¼¡¤Î·Á¼°¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å文字列を\fI\-dname\fRオプションã®å€¤ã¨ã—ã¦æŒ‡å®šã™ã‚‹å ´åˆ(ãŸã¨ãˆã°\fI\-genkeypair\fRコマンドã«)ã€æ–‡å­—列ã¯æ¬¡ã®å½¢å¼ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1375,7 +1375,7 @@
 .if n \{\
 .RE
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤιàÌܤϡ¢¼ÂºÝ¤Ë»ØÄꤹ¤ëÃͤòɽ¤·¤Þ¤¹¡£Ã»½Ì·Á¤Î¥­¡¼¥ï¡¼¥É¤Î°ÕÌ£¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+イタリック体ã®é …ç›®ã¯ã€å®Ÿéš›ã«æŒ‡å®šã™ã‚‹å€¤ã‚’表ã—ã¾ã™ã€‚短縮形ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã®æ„味ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1391,7 +1391,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Ë¼¨¤¹¤Î¤Ï¡¢¼±ÊÌ̾ʸ»úÎó¤ÎÎã¤Ç¤¹¡£
+次ã«ç¤ºã™ã®ã¯ã€è­˜åˆ¥å文字列ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1402,7 +1402,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤Îʸ»úÎó¤ò»ÈÍѤ·¤¿¥³¥Þ¥ó¥É¤ÎÎã¤Ç¤¹¡£
+ã“ã®æ–‡å­—列を使用ã—ãŸã‚³ãƒžãƒ³ãƒ‰ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1414,9 +1414,9 @@
 .if n \{\
 .RE
 .\}
-¥­¡¼¥ï¡¼¥É¤Îû½Ì·Á¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢CN¡¢cn¤ª¤è¤ÓCn¤Ï¡¢¤É¤ì¤âƱ¤¸¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+キーワードã®çŸ­ç¸®å½¢ã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€CNã€cnãŠã‚ˆã³Cnã¯ã€ã©ã‚Œã‚‚åŒã˜ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .sp
-°ìÊý¡¢¥­¡¼¥ï¡¼¥É¤Î»ØÄê½ç½ø¤Ë¤Ï°ÕÌ£¤¬¤¢¤ê¡¢³Æ¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¾å¤Ë¼¨¤·¤¿½ç½ø¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¤¹¤Ù¤Æ»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë°ìÉô¤Î¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤ß¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+一方ã€ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã®æŒ‡å®šé †åºã«ã¯æ„味ãŒã‚ã‚Šã€å„サブコンãƒãƒ¼ãƒãƒ³ãƒˆã¯ä¸Šã«ç¤ºã—ãŸé †åºã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ã‚µãƒ–コンãƒãƒ¼ãƒãƒ³ãƒˆã‚’ã™ã¹ã¦æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ä¸€éƒ¨ã®ã‚µãƒ–コンãƒãƒ¼ãƒãƒ³ãƒˆã®ã¿ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1427,7 +1427,7 @@
 .if n \{\
 .RE
 .\}
-¼±ÊÌ̾ʸ»úÎó¤ÎÃͤ˥«¥ó¥Þ¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Çʸ»úÎó¤ò»ØÄꤹ¤ë¤È¤­¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¥«¥ó¥Þ¤ò¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥åʸ»ú(\e)¤Ç¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å文字列ã®å€¤ã«ã‚«ãƒ³ãƒžãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æ–‡å­—列を指定ã™ã‚‹ã¨ãã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã‚«ãƒ³ãƒžã‚’ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥æ–‡å­—(\e)ã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1438,14 +1438,14 @@
 .if n \{\
 .RE
 .\}
-¼±ÊÌ̾ʸ»úÎó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¼±ÊÌ̾¤òɬÍפȤ¹¤ë¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¼±ÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢³Æ¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¥«¥ó¥Þ¤ò¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å(\e)¤Ç¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+識別å文字列をコマンドラインã§æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。識別åã‚’å¿…è¦ã¨ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§è­˜åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€å„サブコンãƒãƒ¼ãƒãƒ³ãƒˆã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ã‚«ãƒ³ãƒžã‚’ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(\e)ã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
-.SH "·Ù¹ð"
-.SS "¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È·Ù¹ð"
+.SH "警告"
+.SS "ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆè­¦å‘Š"
 .PP
-\fB½ÅÍ×\fR: ¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ëÁ°¤Ë¡¢¾ÚÌÀ½ñ¤ÎÆâÍƤò¿µ½Å¤ËÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£
-Windows¤ÎÎã:.PP
-¤Þ¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¾ÚÌÀ½ñ¤òɽ¼¨¤·¤Þ¤¹¡£É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬¡¢´üÂÔ¤µ¤ì¤ë¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬Á÷¤é¤ì¤Æ¤­¤Æ¡¢¤³¤Î¾ÚÌÀ½ñ¤ò\fI\etmp\ecert\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¤³¤Î¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+\fBé‡è¦\fR: ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹å‰ã«ã€è¨¼æ˜Žæ›¸ã®å†…容を慎é‡ã«èª¿ã¹ã¦ãã ã•ã„。
+Windowsã®ä¾‹:.PP
+ã¾ãšã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-printcert\fRコマンドã¾ãŸã¯\fI\-importcert\fRコマンドを使用ã—ã¦ã€è¨¼æ˜Žæ›¸ã‚’表示ã—ã¾ã™ã€‚表示ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒã€æœŸå¾…ã•ã‚Œã‚‹ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒé€ã‚‰ã‚Œã¦ãã¦ã€ã“ã®è¨¼æ˜Žæ›¸ã‚’\fI\etmp\ecert\fRã¨ã„ã†åå‰ã§ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«ã“ã®è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-printcert\fRコマンドを実行ã—ã¦ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントを表示ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1465,8 +1465,8 @@
 .if n \{\
 .RE
 .\}
-Oracle Solaris¤ÎÎã:.PP
-¤Þ¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¾ÚÌÀ½ñ¤òɽ¼¨¤·¤Þ¤¹¡£É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬¡¢´üÂÔ¤µ¤ì¤ë¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤¢¤ë¥æ¡¼¥¶¡¼¤«¤é¾ÚÌÀ½ñ¤¬Á÷¤é¤ì¤Æ¤­¤Æ¡¢¤³¤Î¾ÚÌÀ½ñ¤ò\fI/tmp/cert\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¤³¤Î¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+Oracle Solarisã®ä¾‹:.PP
+ã¾ãšã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-printcert\fRコマンドã¾ãŸã¯\fI\-importcert\fRコマンドを使用ã—ã¦ã€è¨¼æ˜Žæ›¸ã‚’表示ã—ã¾ã™ã€‚表示ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒã€æœŸå¾…ã•ã‚Œã‚‹ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚るユーザーã‹ã‚‰è¨¼æ˜Žæ›¸ãŒé€ã‚‰ã‚Œã¦ãã¦ã€ã“ã®è¨¼æ˜Žæ›¸ã‚’\fI/tmp/cert\fRã¨ã„ã†åå‰ã§ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«ã“ã®è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-printcert\fRコマンドを実行ã—ã¦ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントを表示ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1487,32 +1487,32 @@
 .RE
 .\}
 .PP
-¼¡¤Ë¡¢¾ÚÌÀ½ñ¤òÁ÷¿®¤·¤¿¿Íʪ¤ËÏ¢Íí¤·¡¢¤³¤Î¿Íʪ¤¬Ä󼨤·¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¾å¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬°ìÃפ¹¤ì¤Ð¡¢Á÷¿®ÅÓÃæ¤Ç¾¤Î²¿¼Ô¤«(¹¶·â¼Ô¤Ê¤É)¤Ë¤è¤ë¾ÚÌÀ½ñ¤Î¤¹¤êÂؤ¨¤¬¹Ô¤ï¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£Á÷¿®ÅÓÃæ¤Ç¤³¤Î¼ï¤Î¹¶·â¤¬¹Ô¤ï¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥Á¥§¥Ã¥¯¤ò¹Ô¤ï¤º¤Ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¡¢¹¶·â¼Ô¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¤â¤Î(¹¶·âŪ°Õ¿Þ¤ò»ý¤Ä¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤ó¤ÀJAR¥Õ¥¡¥¤¥ë¤Ê¤É)¤ò¿®Íꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã«ã€è¨¼æ˜Žæ›¸ã‚’é€ä¿¡ã—ãŸäººç‰©ã«é€£çµ¡ã—ã€ã“ã®äººç‰©ãŒæ示ã—ãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€ä¸Šã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚フィンガープリントãŒä¸€è‡´ã™ã‚Œã°ã€é€ä¿¡é€”中ã§ä»–ã®ä½•è€…ã‹(攻撃者ãªã©)ã«ã‚ˆã‚‹è¨¼æ˜Žæ›¸ã®ã™ã‚Šæ›¿ãˆãŒè¡Œã‚ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã§ãã¾ã™ã€‚é€ä¿¡é€”中ã§ã“ã®ç¨®ã®æ”»æ’ƒãŒè¡Œã‚ã‚Œã¦ã„ãŸå ´åˆã€ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã‚ãšã«è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€æ”»æ’ƒè€…ã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸã™ã¹ã¦ã®ã‚‚ã®(攻撃的æ„図をæŒã¤ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚“ã JARファイルãªã©)ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ëÁ°¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¥­¡¼¥¹¥È¥¢Æâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-importcert\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¾ÚÌÀ½ñ¤Î¾ðÊó¤¬É½¼¨¤µ¤ì¡¢³Îǧ¤òµá¤á¤ë¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤ë¤¿¤á¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤Ï¥¤¥ó¥Ý¡¼¥ÈÁàºî¤òÄä»ß¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤ì¤ò¼Â¹Ô¤Ç¤­¤ë¤Î¤Ï¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤È¤ÎÂÐÏäϹԤï¤ì¤Þ¤»¤ó¡£
-.SS "¥Ñ¥¹¥ï¡¼¥É·Ù¹ð"
+\fB注æ„:\fR
+証明書をインãƒãƒ¼ãƒˆã™ã‚‹å‰ã«\fI\-printcert\fRコマンドを実行ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。キーストア内ã®ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-importcert\fRコマンドã«ã‚ˆã£ã¦è¨¼æ˜Žæ›¸ã®æƒ…å ±ãŒè¡¨ç¤ºã•ã‚Œã€ç¢ºèªã‚’求ã‚るメッセージãŒè¡¨ç¤ºã•ã‚Œã‚‹ãŸã‚ã§ã™ã€‚ユーザーã¯ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ“作をåœæ­¢ã§ãã¾ã™ã€‚ãŸã ã—ã€ã“れを実行ã§ãã‚‹ã®ã¯ã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-importcert\fRコマンドを呼ã³å‡ºã™å ´åˆã®ã¿ã§ã™ã€‚\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ã®å¯¾è©±ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。
+.SS "パスワード警告"
 .PP
-¥­¡¼¥¹¥È¥¢¤ËÂФ¹¤ëÁàºî¤ò¹Ô¤¦¤Û¤È¤ó¤É¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹¡£¤Þ¤¿¡¢°ìÉô¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Èó¸ø³«/ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬Íפˤʤ뤳¤È¤¬¤¢¤ê¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄê¤Ç¤­¤Þ¤¹(\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤È\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍÑ)¡£¤¿¤À¤·¡¢¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£É¬Íפʥѥ¹¥ï¡¼¥É¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
-.SS "¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë·Ù¹ð"
+キーストアã«å¯¾ã™ã‚‹æ“作を行ã†ã»ã¨ã‚“ã©ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚ã¾ãŸã€ä¸€éƒ¨ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€éžå…¬é–‹/秘密éµã®ãƒ‘スワードãŒå¿…è¦ã«ãªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚パスワードã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã§ãã¾ã™(\fI\-storepass\fRオプションã¨\fI\-keypass\fRオプションを使用)。ãŸã ã—ã€ãƒ†ã‚¹ãƒˆã‚’目的ã¨ã™ã‚‹å ´åˆã€ã¾ãŸã¯å®‰å…¨ã§ã‚ã‚‹ã“ã¨ãŒã‚ã‹ã£ã¦ã„るシステムã§å®Ÿè¡Œã™ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。必è¦ãªãƒ‘スワードã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
+.SS "証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹è­¦å‘Š"
 .PP
-¥¤¥ó¥¿¡¼¥Í¥Ã¥Èɸ½àRFC 5280¤Ç¤Ï¡¢X\&.509¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë¥×¥í¥Õ¥¡¥¤¥ë¤¬ÄêµÁ¤µ¤ì¤Æ¤ª¤ê¡¢¾ÚÌÀ½ñ¤Î¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ËÍ­¸ú¤ÊÃͤª¤è¤ÓÃͤÎÁȹ礻¤¬µ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£É¸½à¤Ë¤Ä¤¤¤Æ¤Ï¡¢
-http://tools\&.ietf\&.org/rfc/rfc5280\&.txt¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+インターãƒãƒƒãƒˆæ¨™æº–RFC 5280ã§ã¯ã€X\&.509証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹ãƒ—ロファイルãŒå®šç¾©ã•ã‚Œã¦ãŠã‚Šã€è¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«æœ‰åŠ¹ãªå€¤ãŠã‚ˆã³å€¤ã®çµ„åˆã›ãŒè¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚標準ã«ã¤ã„ã¦ã¯ã€
+http://tools\&.ietf\&.org/rfc/rfc5280\&.txtã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤ì¤é¤Î¥ë¡¼¥ë¤¹¤Ù¤Æ¤¬Å¬ÍѤµ¤ì¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢É¸½à¤Ë½àµò¤·¤Ê¤¤¾ÚÌÀ½ñ¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£É¸½à¤Ë½àµò¤·¤Ê¤¤¾ÚÌÀ½ñ¤Ï¡¢JRE¤ä¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÇµñÈݤµ¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢\fI\-dname\fR¤ä\fI\-ext\fR¤Ê¤É¤ÇŬÀµ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "Ãí°Õ"
-.SS "¿·¤·¤¤¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È"
+\fIkeytool\fRコマンドã§ã¯ã€ã“れらã®ãƒ«ãƒ¼ãƒ«ã™ã¹ã¦ãŒé©ç”¨ã•ã‚Œã‚‹ã‚ã‘ã§ã¯ãªã„ãŸã‚ã€æ¨™æº–ã«æº–æ‹ ã—ãªã„証明書を生æˆã§ãã¾ã™ã€‚標準ã«æº–æ‹ ã—ãªã„証明書ã¯ã€JREã‚„ä»–ã®ã‚¢ãƒ—リケーションã§æ‹’å¦ã•ã‚Œã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ユーザーã¯ã€\fI\-dname\fRã‚„\fI\-ext\fRãªã©ã§é©æ­£ãªã‚ªãƒ—ションを指定ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。
+.SH "注æ„"
+.SS "æ–°ã—ã„ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤Ë¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤Ë¤¹¤Ç¤Ë¸ºß¤¹¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤«¤é(¥ë¡¼¥ÈCA¤Î)¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¤Î¥Á¥§¡¼¥ó¤Î¹½ÃÛ¤ò»î¤ß¤Þ¤¹¡£
+\fIkeytool\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã™ã§ã«å­˜åœ¨ã™ã‚‹ä¿¡é ¼ã§ãる証明書を使用ã—ã¦ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã‹ã‚‰(ルートCAã®)自己署å証明書ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ã®ãƒã‚§ãƒ¼ãƒ³ã®æ§‹ç¯‰ã‚’試ã¿ã¾ã™ã€‚
 .PP
-\fI\-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢ÄɲäξÚÌÀ½ñ¤Ï¿®Íê¤Ç¤­¤ë¤¹¤Ê¤ï¤Á\fIcacerts\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤ë¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
+\fI\-trustcacerts\fRオプションを指定ã—ãŸå ´åˆã€è¿½åŠ ã®è¨¼æ˜Žæ›¸ã¯ä¿¡é ¼ã§ãã‚‹ã™ãªã‚ã¡\fIcacerts\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å«ã¾ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤«¤é¼«¸Ê½ð̾¾ÚÌÀ½ñ(¥­¡¼¥¹¥È¥¢¤Þ¤¿¤Ï\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¼«¸Ê½ð̾¾ÚÌÀ½ñ)¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¤Î¥Ñ¥¹¤Î¹½Ãۤ˼ºÇÔ¤·¤¿¾ì¹ç¤Ï¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤Î¾ðÊó¤òɽ¼¨¤·¡¢¥æ¡¼¥¶¡¼¤Ë³Îǧ¤òµá¤á¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢Â¾¤Î¤Ê¤ó¤é¤«¤Î(¿®Íê¤Ç¤­¤ë)¾ðÊó¸»(¾ÚÌÀ½ñ¤Î½êÍ­¼Ô¤Ê¤É)¤«¤éÆþ¼ê¤·¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò¿µ½Å¤Ë³Îǧ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥¤¥ó¥Ý¡¼¥ÈÁàºî¤Ï¡¢¾ÚÌÀ½ñ¤ò³Îǧ¤¹¤ë»þÅÀ¤ÇÃæ»ß¤Ç¤­¤Þ¤¹¡£\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤È¤ÎÂÐÏäϹԤï¤ì¤Þ¤»¤ó¡£
-.SS "¾ÚÌÀ½ñ±þÅú¤Î¥¤¥ó¥Ý¡¼¥È"
+\fIkeytool\fRコマンドãŒã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã‹ã‚‰è‡ªå·±ç½²å証明書(キーストアã¾ãŸã¯\fIcacerts\fRファイルã«å«ã¾ã‚Œã¦ã„る自己署å証明書)ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ã®ãƒ‘スã®æ§‹ç¯‰ã«å¤±æ•—ã—ãŸå ´åˆã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã®æƒ…報を表示ã—ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ç¢ºèªã‚’求ã‚ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€è¡¨ç¤ºã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€ä»–ã®ãªã‚“らã‹ã®(ä¿¡é ¼ã§ãã‚‹)情報æº(証明書ã®æ‰€æœ‰è€…ãªã©)ã‹ã‚‰å…¥æ‰‹ã—ãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€è¨¼æ˜Žæ›¸ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’æ…Žé‡ã«ç¢ºèªã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆè­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。インãƒãƒ¼ãƒˆæ“作ã¯ã€è¨¼æ˜Žæ›¸ã‚’確èªã™ã‚‹æ™‚点ã§ä¸­æ­¢ã§ãã¾ã™ã€‚\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ã®å¯¾è©±ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。
+.SS "証明書応答ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¡¢¤ª¤è¤Ó(\fI\-trustcacert\fR\fIs\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï)\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤¿¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ±þÅú¤¬¸¡ºº¤µ¤ì¤Þ¤¹¡£cacerts¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+証明書応答をインãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ä¿¡é ¼ã§ãる証明書ã€ãŠã‚ˆã³(\fI\-trustcacert\fR\fIs\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯)\fIcacerts\fRキーストア・ファイルã§æ§‹æˆã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã‚’使用ã—ã¦è¨¼æ˜Žæ›¸å¿œç­”ãŒæ¤œæŸ»ã•ã‚Œã¾ã™ã€‚cacerts証明書ファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¾ÚÌÀ½ñ±þÅú¤¬¿®Íê¤Ç¤­¤ë¤«¤É¤¦¤«¤ò·èÄꤹ¤ëÊýË¡¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+証明書応答ãŒä¿¡é ¼ã§ãã‚‹ã‹ã©ã†ã‹ã‚’決定ã™ã‚‹æ–¹æ³•ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1522,7 +1522,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬Ã±°ì¤ÎX\&.509¾ÚÌÀ½ñ¤Ç¤¢¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¾ÚÌÀ½ñ±þÅú¤«¤é(¥ë¡¼¥ÈCA¤Î)¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¥Á¥§¡¼¥ó¤Î³ÎΩ¤ò»î¤ß¤Þ¤¹¡£¾ÚÌÀ½ñ±þÅú¤È¡¢¾ÚÌÀ½ñ±þÅú¤Îǧ¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤Î³¬Áع½Â¤¤Ï¡¢alias¤Î¿·¤·¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò·ÁÀ®¤·¤Þ¤¹¡£¿®Íê¥Á¥§¡¼¥ó¤¬³ÎΩ¤µ¤ì¤Ê¤¤¾ì¹ç¡¢¾ÚÌÀ½ñ±þÅú¤Ï¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¾ÚÌÀ½ñ¤ò½ÐÎϤ»¤º¡¢¥æ¡¼¥¶¡¼¤Ë¸¡¾Ú¤òµá¤á¤ë¥×¥í¥ó¥×¥È¤òɽ¼¨¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤¬¾ÚÌÀ½ñ±þÅú¤Î¿®ÍêÀ­¤òȽÃǤ¹¤ë¤Î¤ÏÈó¾ï¤ËÆñ¤·¤¤¤¿¤á¤Ç¤¹¡£
+証明書応答ãŒå˜ä¸€ã®X\&.509証明書ã§ã‚ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€è¨¼æ˜Žæ›¸å¿œç­”ã‹ã‚‰(ルートCAã®)自己署å証明書ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ãƒã‚§ãƒ¼ãƒ³ã®ç¢ºç«‹ã‚’試ã¿ã¾ã™ã€‚証明書応答ã¨ã€è¨¼æ˜Žæ›¸å¿œç­”ã®èªè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®éšŽå±¤æ§‹é€ ã¯ã€aliasã®æ–°ã—ã„証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å½¢æˆã—ã¾ã™ã€‚ä¿¡é ¼ãƒã‚§ãƒ¼ãƒ³ãŒç¢ºç«‹ã•ã‚Œãªã„å ´åˆã€è¨¼æ˜Žæ›¸å¿œç­”ã¯ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã¾ã›ã‚“。ã“ã®å ´åˆã€\fIkeytool\fRコマンドã¯è¨¼æ˜Žæ›¸ã‚’出力ã›ãšã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ¤œè¨¼ã‚’求ã‚るプロンプトを表示ã—ã¾ã™ã€‚ユーザーãŒè¨¼æ˜Žæ›¸å¿œç­”ã®ä¿¡é ¼æ€§ã‚’判断ã™ã‚‹ã®ã¯éžå¸¸ã«é›£ã—ã„ãŸã‚ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1533,13 +1533,13 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬PKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Þ¤¿¤Ï°ìÏ¢¤ÎX\&.509¾ÚÌÀ½ñ¤Ç¤¢¤ë¾ì¹ç¡¢¥Á¥§¡¼¥ó¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¾ÚÌÀ½ñ¤¬ºÇ½é¤Ë¡¢0°Ê¾å¤ÎCA¾ÚÌÀ½ñ¤¬¤½¤Î¼¡¤Ë¤¯¤ë¤è¤¦¤Ëʤ٤é¤ì¤Þ¤¹¡£¥Á¥§¡¼¥ó¤¬¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Ç½ª¤ï¤ê¡¢\fI \-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¾ÚÌÀ½ñ¤È¡¢¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¿®Íê¤Ç¤­¤ë¤¹¤Ù¤Æ¤Î¾ÚÌÀ½ñ¤ò¾È¹ç¤·¤è¤¦¤È¤·¤Þ¤¹¡£¥Á¥§¡¼¥ó¤¬¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Ç½ª¤ï¤Ã¤Æ¤ª¤é¤º¡¢\fI\-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤«¤é¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò¸«¤Ä¤±¤Æ¤½¤ì¤ò¥Á¥§¡¼¥ó¤ÎËöÈø¤ËÄɲ䷤褦¤È¤·¤Þ¤¹¡£¤½¤Î¾ÚÌÀ½ñ¤¬¸«¤Ä¤«¤é¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ¸å¤Î¾ÚÌÀ½ñ¤Î¾ðÊ󤬽ÐÎϤµ¤ì¡¢¥æ¡¼¥¶¡¼¤Ï³Îǧ¤òµá¤á¤é¤ì¤Þ¤¹¡£
+証明書応答ãŒPKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¾ãŸã¯ä¸€é€£ã®X\&.509証明書ã§ã‚ã‚‹å ´åˆã€ãƒã‚§ãƒ¼ãƒ³ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è¨¼æ˜Žæ›¸ãŒæœ€åˆã«ã€0以上ã®CA証明書ãŒãã®æ¬¡ã«ãるよã†ã«ä¸¦ã¹ã‚‰ã‚Œã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³ãŒè‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書ã§çµ‚ã‚ã‚Šã€\fI \-trustcacerts\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ãã®è¨¼æ˜Žæ›¸ã¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストア・ファイル内ã®ä¿¡é ¼ã§ãã‚‹ã™ã¹ã¦ã®è¨¼æ˜Žæ›¸ã‚’ç…§åˆã—よã†ã¨ã—ã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³ãŒè‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書ã§çµ‚ã‚ã£ã¦ãŠã‚‰ãšã€\fI\-trustcacerts\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストア・ファイル内ã®ä¿¡é ¼ã§ãる証明書ã‹ã‚‰è‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書を見ã¤ã‘ã¦ãれをãƒã‚§ãƒ¼ãƒ³ã®æœ«å°¾ã«è¿½åŠ ã—よã†ã¨ã—ã¾ã™ã€‚ãã®è¨¼æ˜Žæ›¸ãŒè¦‹ã¤ã‹ã‚‰ãšã€\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€å¾Œã®è¨¼æ˜Žæ›¸ã®æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ç¢ºèªã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ±þÅúÆâ¤Î¸ø³«¸°¤¬\fIalias\fR¤Ç¤¹¤Ç¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¥æ¡¼¥¶¡¼¤Î¸ø³«¸°¤Ë°ìÃפ·¤¿¾ì¹ç¡¢¸Å¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬±þÅúÆâ¤Î¿·¤·¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£°ÊÁ°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÍ­¸ú¤Ê\fIkeypass\fR¤ÇÃÖ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤ë¤Î¤Ï¡¢¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤òÊݸ¤ë¤¿¤á¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+証明書応答内ã®å…¬é–‹éµãŒ\fIalias\fRã§ã™ã§ã«æ ¼ç´ã•ã‚Œã¦ã„るユーザーã®å…¬é–‹éµã«ä¸€è‡´ã—ãŸå ´åˆã€å¤ã„証明書ãƒã‚§ãƒ¼ãƒ³ãŒå¿œç­”内ã®æ–°ã—ã„証明書ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚以å‰ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’有効ãª\fIkeypass\fRã§ç½®ãæ›ãˆã‚‹ã“ã¨ãŒã§ãã‚‹ã®ã¯ã€ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ãŸã‚ã®ãƒ‘スワードを指定ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚パスワードを指定ã—ã¦ãŠã‚‰ãšã€ç§˜å¯†éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-import\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-importcert\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-import\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-importcert\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -1571,8 +1571,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/security/index\&.html¤Ë¤¢¤ë
-¡Ö¥³¡¼¥¹: Java SE¤Î¥»¥­¥å¥ê¥Æ¥£µ¡Ç½¡×
+http://docs\&.oracle\&.com/javase/tutorial/security/index\&.htmlã«ã‚ã‚‹
+「コース: Java SEã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£æ©Ÿèƒ½ã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/native2ascii.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/native2ascii.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: native2ascii
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¹ñºÝ²½¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 国際化ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "native2ascii" "1" "2013ǯ11·î21Æü" "JDK 8" "¹ñºÝ²½¥Ä¡¼¥ë"
+.TH "native2ascii" "1" "2013年11月21日" "JDK 8" "国際化ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-native2ascii \- ¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ëǤ°Õ¤Îʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Îʸ»ú¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò¡¢ASCII¤ª¤è¤ÓUnicode¤Ç¥¨¥¹¥±¡¼¥×¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Æ(¤Þ¤¿¤Ï¤½¤ÎµÕ)¡¢¥í¡¼¥«¥é¥¤¥º²Äǽ¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºîÀ®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+native2ascii \- サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã‚‹ä»»æ„ã®æ–‡å­—エンコーディングã®æ–‡å­—ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ASCIIãŠã‚ˆã³Unicodeã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¦(ã¾ãŸã¯ãã®é€†)ã€ãƒ­ãƒ¼ã‚«ãƒ©ã‚¤ã‚ºå¯èƒ½ãªã‚¢ãƒ—リケーションを作æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,34 +64,34 @@
 .PP
 \fIinputfile\fR
 .RS 4
-ASCII¤ËÊÑ´¹¤¹¤ë¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡£
+ASCIIã«å¤‰æ›ã™ã‚‹ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIoutputfile\fR
 .RS 4
-ÊÑ´¹¤µ¤ì¤¿ASCII¥Õ¥¡¥¤¥ë¡£
+変æ›ã•ã‚ŒãŸASCIIファイル。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fInative2ascii\fR¥³¥Þ¥ó¥É¤Ï¡¢ASCII¥­¥ã¥é¥¯¥¿¡¦¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Ê¤¤¤¹¤Ù¤Æ¤Îʸ»ú¤ËUnicode¥¨¥¹¥±¡¼¥×(\fI\eu\fR\fIxxxx\fR)ɽµ­Ë¡¤ò»ÈÍѤ·¤Æ¡¢Java Runtime Environment (JRE)¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢ASCII¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£¤³¤Î¥×¥í¥»¥¹¤Ï¡¢ISO\-8859\-1ʸ»ú¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤ÇɬÍפǤ¹¡£¤³¤Î¥Ä¡¼¥ë¤Ï¡¢¤½¤ÎµÕ¤ÎÊÑ´¹¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fInative2ascii\fRコマンドã¯ã€ASCIIキャラクタ・セットã«å«ã¾ã‚Œãªã„ã™ã¹ã¦ã®æ–‡å­—ã«Unicodeエスケープ(\fI\eu\fR\fIxxxx\fR)表記法を使用ã—ã¦ã€Java Runtime Environment (JRE)ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエンコードã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ASCIIã§ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¾ã™ã€‚ã“ã®ãƒ—ロセスã¯ã€ISO\-8859\-1文字セットã«å«ã¾ã‚Œãªã„文字ãŒå«ã¾ã‚Œã¦ã„るプロパティ・ファイルã§å¿…è¦ã§ã™ã€‚ã“ã®ãƒ„ールã¯ã€ãã®é€†ã®å¤‰æ›ã‚’実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-\fIoutputfile\fRÃͤò¾Êά¤·¤¿¾ì¹ç¡¢É¸½à½ÐÎϤ˽ÐÎϤµ¤ì¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIinputfile\fRÃͤò¾Êά¤·¤¿¾ì¹ç¡¢É¸½àÆþÎϤ«¤éÆþÎϤµ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIoutputfile\fR値をçœç•¥ã—ãŸå ´åˆã€æ¨™æº–出力ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã•ã‚‰ã«ã€\fIinputfile\fR値をçœç•¥ã—ãŸå ´åˆã€æ¨™æº–入力ã‹ã‚‰å…¥åŠ›ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-reverse
 .RS 4
-µÕ¤Î½èÍý¤ò¹Ô¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ISO\-8859\-1¤ÇUnicode¥¨¥¹¥±¡¼¥×¤ò»ÈÍѤ·¤Æ¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢JRE¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£
+逆ã®å‡¦ç†ã‚’è¡Œã„ã¾ã™ã€‚ã¤ã¾ã‚Šã€ISO\-8859\-1ã§Unicodeエスケープを使用ã—ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€JREã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æ–‡å­—エンコーディングã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding_name\fR
 .RS 4
-ÊÑ´¹½èÍý¤Ç»ÈÍѤ¹¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°(\fIjava\&.nio\&.charset\&.Charset\&.defaultCharset\fR¥á¥½¥Ã¥É¤ÇÄêµÁ¤µ¤ì¤¿)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fIencoding_name\fRʸ»úÎó¤Ï¡¢JRE¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/intl/encoding\&.doc\&.html¤Ë¤¢¤ë
-¡Ö¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+変æ›å‡¦ç†ã§ä½¿ç”¨ã™ã‚‹æ–‡å­—エンコーディングã®åå‰ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒå­˜åœ¨ã—ãªã„å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡å­—エンコーディング(\fIjava\&.nio\&.charset\&.Charset\&.defaultCharset\fRメソッドã§å®šç¾©ã•ã‚ŒãŸ)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fIencoding_name\fR文字列ã¯ã€JREã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る文字エンコーディングã®åå‰ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/intl/encoding\&.doc\&.htmlã«ã‚ã‚‹
+「サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエンコーディングã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシン(JVM)ã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/orbd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/orbd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: orbd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "orbd" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "orbd" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-orbd \- CORBA´Ä¶­¤Î¥µ¡¼¥Ð¡¼¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¯¥é¥¤¥¢¥ó¥È¤«¤é¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+orbd \- CORBA環境ã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚る永続オブジェクトをクライアントã‹ã‚‰æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã›ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,11 +64,11 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIorbd\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢CORBA´Ä¶­¤Î¥µ¡¼¥Ð¡¼¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¯¥é¥¤¥¢¥ó¥È¤«¤éÆ©²áŪ¤Ë¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£orbd¥Ä¡¼¥ë¤Ë´Þ¤Þ¤ì¤ë¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤ÏCORBA´Ä¶­¤Ç¥µ¡¼¥Ð¡¼¾å¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤òÆ©²áŪ¤Ë¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£±Ê³¥µ¡¼¥Ð¡¼¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤òȯ¹Ô¤¹¤ëºÝ¡¢¥µ¡¼¥Ð¡¼¤Î¥Ý¡¼¥ÈÈÖ¹æ¤Î¤«¤ï¤ê¤ËORBD¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë´Þ¤á¤Þ¤¹¡£±Ê³¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ËORBD¥Ý¡¼¥ÈÈÖ¹æ¤ò´Þ¤á¤ë¤³¤È¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ÊÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
+\fIorbd\fRコマンドを使用ã™ã‚‹ã¨ã€CORBA環境ã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚る永続オブジェクトをクライアントã‹ã‚‰é€éŽçš„ã«æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚orbdツールã«å«ã¾ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯CORBA環境ã§ã‚µãƒ¼ãƒãƒ¼ä¸Šã«ã‚る永続オブジェクトをé€éŽçš„ã«æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚永続サーãƒãƒ¼ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«æ°¸ç¶šã‚ªãƒ–ジェクトå‚照を発行ã™ã‚‹éš›ã€ã‚µãƒ¼ãƒãƒ¼ã®ãƒãƒ¼ãƒˆç•ªå·ã®ã‹ã‚ã‚Šã«ORBDã®ãƒãƒ¼ãƒˆç•ªå·ã‚’オブジェクトå‚ç…§ã«å«ã‚ã¾ã™ã€‚永続オブジェクトå‚ç…§ã®ã‚ªãƒ–ジェクトå‚ç…§ã«ORBDãƒãƒ¼ãƒˆç•ªå·ã‚’å«ã‚ã‚‹ã“ã¨ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªåˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -78,7 +78,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤¬¡¢¥µ¡¼¥Ð¡¼¤Î¥é¥¤¥Õ¡¦¥µ¥¤¥¯¥ë¤È̵´Ø·¸¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¡¢½é¤á¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¤È¤­¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¥µ¡¼¥Ð¡¼¤Ë¤è¤Ã¤Æ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ëȯ¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢¤½¤Î¸å¤Ï¡¢¥µ¡¼¥Ð¡¼¤Î³«»Ï¤Þ¤¿¤Ï¥·¥ã¥Ã¥È¥À¥¦¥ó¤Î²ó¿ô¤Ë¤«¤«¤ï¤é¤º¡¢¸Æ¤Ó½Ð¤·¤¿¥¯¥é¥¤¥¢¥ó¥È¤ËORBD¤¬Àµ¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤òÊÖ¤·¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ã‚るオブジェクトå‚ç…§ãŒã€ã‚µãƒ¼ãƒãƒ¼ã®ãƒ©ã‚¤ãƒ•ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã¨ç„¡é–¢ä¿‚ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚ªãƒ–ジェクトå‚ç…§ã¯ã€åˆã‚ã¦ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚ŒãŸã¨ãã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚ˆã£ã¦ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ç™ºè¡Œã•ã‚Œã¾ã™ãŒã€ãã®å¾Œã¯ã€ã‚µãƒ¼ãƒãƒ¼ã®é–‹å§‹ã¾ãŸã¯ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã®å›žæ•°ã«ã‹ã‹ã‚らãšã€å‘¼ã³å‡ºã—ãŸã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ORBDãŒæ­£ã—ã„オブジェクトå‚照を返ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -89,57 +89,57 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¤¥¢¥ó¥È¤Ï°ìÅ٤Τߥ͡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò¥ë¥Ã¥¯¥¢¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤Î¸å¤Ï¥µ¡¼¥Ð¡¼¤Î¥é¥¤¥Õ¡¦¥µ¥¤¥¯¥ë¤Ë¤è¤ëÊѹ¹¤È¤Ï̵´Ø·¸¤Ë¤³¤Î»²¾È¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+クライアントã¯ä¸€åº¦ã®ã¿ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®ã‚ªãƒ–ジェクトå‚照をルックアップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãã®å¾Œã¯ã‚µãƒ¼ãƒãƒ¼ã®ãƒ©ã‚¤ãƒ•ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã«ã‚ˆã‚‹å¤‰æ›´ã¨ã¯ç„¡é–¢ä¿‚ã«ã“ã®å‚照を利用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
-ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£servertool¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¡¢±Ê³¥µ¡¼¥Ð¡¼¤ÎÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¤ª¤è¤ÓÄä»ß¤ò¹Ô¤¦¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Î¾ÜºÙ¤Ï¡¢¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚servertoolã¯ã€ã‚¢ãƒ—リケーション・プログラマãŒã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ç™»éŒ²ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ãŠã‚ˆã³åœæ­¢ã‚’è¡Œã†ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚サーãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®è©³ç´°ã¯ã€ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIorbd\fR¤òµ¯Æ°¤¹¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤âµ¯Æ°¤µ¤ì¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ÜºÙ¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤ÈÄä»ß¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIorbd\fRã‚’èµ·å‹•ã™ã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スも起動ã•ã‚Œã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®è©³ç´°ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã¨åœæ­¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-ORBInitialPort \fInameserverport\fR
 .RS 4
-ɬ¿Ü¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹¡£\fIorbd\fR¤Ï¡¢µ¯Æ°¤µ¤ì¤ë¤È¡¢¤³¤Î¥Ý¡¼¥È¾å¤ÇÃå¿®¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤·¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¾ì¹ç¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+必須。ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã‚’指定ã—ã¾ã™ã€‚\fIorbd\fRã¯ã€èµ·å‹•ã•ã‚Œã‚‹ã¨ã€ã“ã®ãƒãƒ¼ãƒˆä¸Šã§ç€ä¿¡ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã—ã¾ã™ã€‚Oracle Solarisソフトウェアã§ã¯ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹å ´åˆã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
-.SS "ɬ¿Ü¤Ç¤Ê¤¤¥ª¥×¥·¥ç¥ó"
+.SS "å¿…é ˆã§ãªã„オプション"
 .PP
 \-port \fIport\fR
 .RS 4
-ORBD¤òµ¯Æ°¤¹¤ë¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Ý¡¼¥È¤Ç¡¢±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ¹¤ë¥ê¥¯¥¨¥¹¥È¤òORBD¤¬¼õ¤±¼è¤ê¤Þ¤¹¡£¤³¤Î¥Ý¡¼¥È¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1049¤Ç¤¹¡£¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤Ï¡¢±Ê³Interoperable Object References (IOR)¤Î¥Ý¡¼¥È¡¦¥Õ¥£¡¼¥ë¥É¤ËÄɲ䵤ì¤Þ¤¹¡£
+ORBDã‚’èµ·å‹•ã™ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆã§ã€æ°¸ç¶šã‚ªãƒ–ジェクトã«å¯¾ã™ã‚‹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ORBDãŒå—ã‘å–ã‚Šã¾ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯1049ã§ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã¯ã€æ°¸ç¶šInteroperable Object References (IOR)ã®ãƒãƒ¼ãƒˆãƒ»ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-defaultdb \fIdirectory\fR
 .RS 4
-ORBD±Ê³³ÊǼ¥Ç¥£¥ì¥¯¥È¥ê\fIorb\&.db\fR¤¬ºîÀ®¤µ¤ì¤ë¥Ù¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\fI\&./orb\&.db\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+ORBD永続格ç´ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fIorb\&.db\fRãŒä½œæˆã•ã‚Œã‚‹ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯\fI\&./orb\&.db\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-serverPollingTime \fImilliseconds\fR
 .RS 4
-\fIservertool\fR¤ò»ÈÍѤ·¤ÆÅÐÏ¿¤µ¤ì¤¿±Ê³¥µ¡¼¥Ð¡¼¤Î¥Ø¥ë¥¹¾õÂÖ¤òORBD¤¬¥Á¥§¥Ã¥¯¤¹¤ë´Ö³Ö¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1000¥ß¥êÉäǤ¹¡£\fImilliseconds\fR¤Ë»ØÄꤹ¤ëÃͤϡ¢Í­¸ú¤ÊÀµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIservertool\fRを使用ã—ã¦ç™»éŒ²ã•ã‚ŒãŸæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ãƒ˜ãƒ«ã‚¹çŠ¶æ…‹ã‚’ORBDãŒãƒã‚§ãƒƒã‚¯ã™ã‚‹é–“隔を指定ã—ã¾ã™ã€‚デフォルト値ã¯1000ミリ秒ã§ã™ã€‚\fImilliseconds\fRã«æŒ‡å®šã™ã‚‹å€¤ã¯ã€æœ‰åŠ¹ãªæ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-serverStartupDelay milliseconds
 .RS 4
-\fIservertool\fR¤ò»ÈÍѤ·¤ÆÅÐÏ¿¤µ¤ì¤¿±Ê³¥µ¡¼¥Ð¡¼¤òºÆµ¯Æ°¤·¤Æ¤«¤é¡¢°ÌÃÖžÁ÷¤ÎÎã³°¤òÁ÷¿®¤¹¤ë¤Þ¤Ç¤ÎORBD¤ÎÂÔµ¡»þ´Ö¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1000¥ß¥êÉäǤ¹¡£\fImilliseconds\fR¤Ë»ØÄꤹ¤ëÃͤϡ¢Í­¸ú¤ÊÀµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIservertool\fRを使用ã—ã¦ç™»éŒ²ã•ã‚ŒãŸæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’å†èµ·å‹•ã—ã¦ã‹ã‚‰ã€ä½ç½®è»¢é€ã®ä¾‹å¤–ã‚’é€ä¿¡ã™ã‚‹ã¾ã§ã®ORBDã®å¾…機時間を指定ã—ã¾ã™ã€‚デフォルト値ã¯1000ミリ秒ã§ã™ã€‚\fImilliseconds\fRã«æŒ‡å®šã™ã‚‹å€¤ã¯ã€æœ‰åŠ¹ãªæ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤ÈÄä»ß"
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã¨åœæ­¢"
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢CORBA¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Í¡¼¥ß¥ó¥°¤ò²Äǽ¤Ë¤¹¤ëCORBA¥µ¡¼¥Ó¥¹¤Ç¤¹¡£¥Í¡¼¥ß¥ó¥°¤Ï̾Á°¤ò¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë¥Ð¥¤¥ó¥É¤¹¤ë¤³¤È¤Ë¤è¤ê²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë³ÊǼ¤¹¤ì¤Ð¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Ì¾Á°¤ò»ØÄꤷ¤ÆÌÜŪ¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò¼èÆÀ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€CORBAオブジェクトã«ãƒãƒ¼ãƒŸãƒ³ã‚°ã‚’å¯èƒ½ã«ã™ã‚‹CORBAサービスã§ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ã¯åå‰ã‚’オブジェクトå‚ç…§ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«æ ¼ç´ã™ã‚Œã°ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒåå‰ã‚’指定ã—ã¦ç›®çš„ã®ã‚ªãƒ–ジェクトå‚照をå–å¾—ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¤Þ¤¿¤Ï¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë¡¢ORBD¤òµ¯Æ°¤·¤Þ¤¹¡£ORBD¤Ë¤Ï¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ª¤è¤Ó°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬ÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Ï¤É¤Á¤é¤âCOS¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¼ÂÁõ¤Ç¤¹¡£
+クライアントã¾ãŸã¯ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹å‰ã«ã€ORBDã‚’èµ·å‹•ã—ã¾ã™ã€‚ORBDã«ã¯ã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŠã‚ˆã³ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒçµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“れらã¯ã©ã¡ã‚‰ã‚‚COSãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®å®Ÿè£…ã§ã™ã€‚
 .PP
-±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÂФ·¤Æ±Ê³À­¤òÄ󶡤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¤³¤Î¾ðÊó¤Ï¡¢¥µ¡¼¥Ó¥¹¤ÎÄä»ß¤äµ¯Æ°¸å¤Ë¤â°Ý»ý¤µ¤ì¡¢¥µ¡¼¥Ó¥¹¤Ë¾ã³²¤¬È¯À¸¤·¤¿¾ì¹ç¤Ç¤â²óÉü¤Ç¤­¤Þ¤¹¡£ORBD¤òºÆµ¯Æ°¤¹¤ë¤È¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î¥°¥é¥Õ¤òÉü¸µ¤·¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î̾Á°¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬¤½¤Î¤Þ¤Þ(±Ê³Ū¤Ë)ÊÝ»ý¤µ¤ì¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
+永続ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«å¯¾ã—ã¦æ°¸ç¶šæ€§ã‚’æä¾›ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ã“ã®æƒ…å ±ã¯ã€ã‚µãƒ¼ãƒ“スã®åœæ­¢ã‚„起動後ã«ã‚‚維æŒã•ã‚Œã€ã‚µãƒ¼ãƒ“スã«éšœå®³ãŒç™ºç”Ÿã—ãŸå ´åˆã§ã‚‚回復ã§ãã¾ã™ã€‚ORBDã‚’å†èµ·å‹•ã™ã‚‹ã¨ã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ã‚°ãƒ©ãƒ•ã‚’復元ã—ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã®åå‰ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒãã®ã¾ã¾(永続的ã«)ä¿æŒã•ã‚Œã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .PP
-²¼°Ì¸ß´¹À­¤Î¤¿¤á¡¢µì¥ê¥ê¡¼¥¹¤ÎJDK¤ËƱº­¤µ¤ì¤Æ¤¤¤¿°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹\fItnameserv\fR¤¬¡¢º£²ó¤Î¥ê¥ê¡¼¥¹¤ÎJava SE¤Ë¤âƱº­¤µ¤ì¤Æ¤¤¤Þ¤¹¡£°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Î¼Â¹ÔÃæ¤Ë¤Î¤ß¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤¬ÊÝ»ý¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ó¥¹¤¬ÃæÃǤµ¤ì¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¡¦¥°¥é¥Õ¤Ï¼º¤ï¤ì¤Þ¤¹¡£
+下ä½äº’æ›æ€§ã®ãŸã‚ã€æ—§ãƒªãƒªãƒ¼ã‚¹ã®JDKã«åŒæ¢±ã•ã‚Œã¦ã„ãŸä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“ス\fItnameserv\fRãŒã€ä»Šå›žã®ãƒªãƒªãƒ¼ã‚¹ã®Java SEã«ã‚‚åŒæ¢±ã•ã‚Œã¦ã„ã¾ã™ã€‚一時ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã®å®Ÿè¡Œä¸­ã«ã®ã¿ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãŒä¿æŒã•ã‚Œã¾ã™ã€‚サービスãŒä¸­æ–­ã•ã‚Œã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚°ãƒ©ãƒ•ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
 .PP
-\fI\-ORBInitialPort\fR°ú¿ô¤Ï¡¢\fIorbd\fR¤Îɬ¿Ü¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤Ç¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤òÀßÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¼¡¤Î¼ê½ç¤Ç¤Ï¡¢Java IDL Object Request Broker DaemonÍѤ˥ݡ¼¥È1050¤ò»ÈÍѤǤ­¤ë¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£É¬ÍפǤ¢¤ì¤ÐÊ̤Υݡ¼¥È¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-ORBInitialPort\fR引数ã¯ã€\fIorbd\fRã®å¿…é ˆã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã§ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã‚’設定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚次ã®æ‰‹é †ã§ã¯ã€Java IDL Object Request Broker Daemon用ã«ãƒãƒ¼ãƒˆ1050を使用ã§ãã‚‹ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã¾ã™ã€‚Oracle Solarisソフトウェアを使用ã™ã‚‹å ´åˆã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚å¿…è¦ã§ã‚ã‚Œã°åˆ¥ã®ãƒãƒ¼ãƒˆã«å¤‰æ›´ã—ã¦ãã ã•ã„。
 .PP
-UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç\fIorbd\fR¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+UNIXコマンド・シェルã§\fIorbd\fRã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -151,7 +151,7 @@
 .RE
 .\}
 .PP
-Windows¤ÎMS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È¤Ç¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+Windowsã®MS\-DOSシステム・プロンプトã§ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -163,7 +163,7 @@
 .RE
 .\}
 .PP
-¤³¤ì¤ÇORBD¤¬¼Â¹Ô¤µ¤ì¡¢¥µ¡¼¥Ð¡¼¤È¥¯¥é¥¤¥¢¥ó¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¼Â¹Ô»þ¤Ë¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ(ɬÍפʾì¹ç¤Ï¤µ¤é¤Ë¥Þ¥·¥ó̾)¤òǧ¼±¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ò¼Â¸½¤¹¤ë1¤Ä¤ÎÊýË¡¤Ï¡¢¼¡¤Î¥³¡¼¥É¤ò¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ËÄɲ乤뤳¤È¤Ç¤¹¡£
+ã“ã‚Œã§ORBDãŒå®Ÿè¡Œã•ã‚Œã€ã‚µãƒ¼ãƒãƒ¼ã¨ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚¢ãƒ—リケーションを実行ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚クライアントã¨ã‚µãƒ¼ãƒãƒ¼ã®ã‚¢ãƒ—リケーションã¯ã€å®Ÿè¡Œæ™‚ã«ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·(å¿…è¦ãªå ´åˆã¯ã•ã‚‰ã«ãƒžã‚·ãƒ³å)ã‚’èªè­˜ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れを実ç¾ã™ã‚‹1ã¤ã®æ–¹æ³•ã¯ã€æ¬¡ã®ã‚³ãƒ¼ãƒ‰ã‚’アプリケーションã«è¿½åŠ ã™ã‚‹ã“ã¨ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -178,7 +178,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Û¥¹¥È\fIMyHost\fR¤Î¥Ý¡¼¥È1050¾å¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£Ê̤ÎÊýË¡¤È¤·¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¥µ¡¼¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¤¥¢¥ó¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥Ý¡¼¥ÈÈÖ¹æ¤Þ¤¿¤Ï¥Þ¥·¥ó̾¤¢¤ë¤¤¤Ï¤½¤ÎξÊý¤ò»ØÄꤹ¤ëÊýË¡¤â¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIHelloApplication\fR¤òµ¯Æ°¤Ç¤­¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒ›ã‚¹ãƒˆ\fIMyHost\fRã®ãƒãƒ¼ãƒˆ1050上ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚別ã®æ–¹æ³•ã¨ã—ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰ã‚µãƒ¼ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚¢ãƒ—リケーションを実行ã™ã‚‹ã¨ãã«ã€ãƒãƒ¼ãƒˆç•ªå·ã¾ãŸã¯ãƒžã‚·ãƒ³åã‚ã‚‹ã„ã¯ãã®ä¸¡æ–¹ã‚’指定ã™ã‚‹æ–¹æ³•ã‚‚ã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションを使用ã—ã¦ã€\fIHelloApplication\fRã‚’èµ·å‹•ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -190,36 +190,36 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÄä»ß¤¹¤ë¤Ë¤Ï¡¢Å¬Àڤʥª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢Oracle Solaris¾å¤Ç\fIpkill\fR
-\fIorbd\fR¤ò¼Â¹Ô¤·¤¿¤ê¡¢\fIorbd\fR¤¬Æ°ºîÃæ¤ÎDOS¥¦¥£¥ó¥É¥¦¤Ç\fB[Ctrl]+[C]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ì¹ç¤Ï¡¢¥µ¡¼¥Ó¥¹¤¬½ªÎ»¤µ¤ì¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ËÅÐÏ¿¤µ¤ì¤¿Ì¾Á°¤¬¾Ãµî¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢ÌÀ¼¨Åª¤ËÄä»ß¤µ¤ì¤ë¤Þ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スをåœæ­¢ã™ã‚‹ã«ã¯ã€é©åˆ‡ãªã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€Oracle Solaris上ã§\fIpkill\fR
+\fIorbd\fRを実行ã—ãŸã‚Šã€\fIorbd\fRãŒå‹•ä½œä¸­ã®DOSウィンドウã§\fB[Ctrl]+[C]\fRキーを押ã—ã¾ã™ã€‚一時ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®å ´åˆã¯ã€ã‚µãƒ¼ãƒ“スãŒçµ‚了ã•ã‚Œã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ç™»éŒ²ã•ã‚ŒãŸåå‰ãŒæ¶ˆåŽ»ã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€æ˜Žç¤ºçš„ã«åœæ­¢ã•ã‚Œã‚‹ã¾ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .PP
-ORBD¤ËÉÕ°¤¹¤ë¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ÜºÙ¤Ï¡¢
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Î¡ÖNaming Service¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã"
+ORBDã«ä»˜å±žã™ã‚‹ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®è©³ç´°ã¯ã€
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã®ã€ŒNaming Serviceã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "サーãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£"
 .PP
-ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Ë¥¢¥¯¥»¥¹¤·¤Æ¡¢±Ê³¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£servertool¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¡¢±Ê³¥µ¡¼¥Ð¡¼¤ÎÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¤ª¤è¤ÓÄä»ß¤ò¹Ô¤¦¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ë¾ì¹ç¤Ï¡¢\fIorbd\fR¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì½ê¤ÈƱ¤¸¥Ý¡¼¥È¤È¥Û¥¹¥È¤Çµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤ò°Û¤Ê¤ë¥Ý¡¼¥È¤Ç¼Â¹Ô¤¹¤ë¤È¡¢¥í¡¼¥«¥ë¡¦¥³¥ó¥Æ¥­¥¹¥ÈÍѤ˥ǡ¼¥¿¥Ù¡¼¥¹¤ËÊݸ¤µ¤ì¤Æ¤¤¤ë¾ðÊó¤¬Ìµ¸ú¤Ë¤Ê¤ê¡¢¥µ¡¼¥Ó¥¹¤¬Àµ¤·¤¯Æ°ºî¤·¤Þ¤»¤ó¡£
+ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¦ã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹ã«ã¯ã€\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚servertoolã¯ã€ã‚¢ãƒ—リケーション・プログラマãŒã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ç™»éŒ²ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ãŠã‚ˆã³åœæ­¢ã‚’è¡Œã†ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å ´åˆã¯ã€\fIorbd\fRãŒå®Ÿè¡Œã•ã‚Œã¦ã„る場所ã¨åŒã˜ãƒãƒ¼ãƒˆã¨ãƒ›ã‚¹ãƒˆã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚サーãƒãƒ¼ã‚’ç•°ãªã‚‹ãƒãƒ¼ãƒˆã§å®Ÿè¡Œã™ã‚‹ã¨ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆç”¨ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¿å­˜ã•ã‚Œã¦ã„る情報ãŒç„¡åŠ¹ã«ãªã‚Šã€ã‚µãƒ¼ãƒ“スãŒæ­£ã—ã動作ã—ã¾ã›ã‚“。
 .PP
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlExample\&.html¤Î
-¡ÖJava IDL: The "Hello World" Example¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlExample\&.htmlã®
+「Java IDL: The "Hello World" Exampleã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Á¥å¡¼¥È¥ê¥¢¥ë¤Î¼ê½ç¤Ë½¾¤Ã¤Æ\fIidlj\fR¥³¥ó¥Ñ¥¤¥é¤È\fIjavac\fR¥³¥ó¥Ñ¥¤¥é¤ò¼Â¹Ô¤·¤Þ¤¹¡£ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¼ê½ç¤Ë½¾¤Ã¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã®æ‰‹é †ã«å¾“ã£ã¦\fIidlj\fRコンパイラã¨\fIjavac\fRコンパイラを実行ã—ã¾ã™ã€‚ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®æ‰‹é †ã«å¾“ã£ã¦ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .PP
-\fIorbd\fR¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIorbd\fRã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .PP
-UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹:
-\fIorbd \-ORBInitialPort 1050\fR¡£
+UNIXコマンド・シェルã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™:
+\fIorbd \-ORBInitialPort 1050\fR。
 .PP
-MS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È(Windows)¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹:
+MS\-DOSシステム・プロンプト(Windows)ã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™:
 \fIs\fR\fItart orbd \-ORBInitialPort 105\fR\fI0\fR
 .PP
-¥Ý¡¼¥È1050¤Ï¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¥Ý¡¼¥È¤Ç¤¹¡£\fI\-ORBInitialPort\fR¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤Ç¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ãƒãƒ¼ãƒˆ1050ã¯ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹ãƒãƒ¼ãƒˆã§ã™ã€‚\fI\-ORBInitialPort\fRオプションã¯å¿…須コマンドライン引数ã§ã™ã€‚Oracle Solarisソフトウェアを使用ã™ã‚‹å ´åˆã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .PP
-\fIservertool\fR¤òµ¯Æ°¤·¤Þ¤¹:
-\fIservertool \-ORBInitialPort 1050\fR¡£
+\fIservertool\fRã‚’èµ·å‹•ã—ã¾ã™:
+\fIservertool \-ORBInitialPort 1050\fR。
 .PP
-Á°²ó¤Î¼ê½ç¤È¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¤Î¥Ý¡¼¥È¤¬Æ±¤¸¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð\fI\-ORBInitialPort 1050\&.\fR¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£\fIservertool\fR¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤ÈƱ¤¸¥Ý¡¼¥È¾å¤Çµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+å‰å›žã®æ‰‹é †ã¨ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ã®ãƒãƒ¼ãƒˆãŒåŒã˜ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°\fI\-ORBInitialPort 1050\&.\fRã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚\fIservertool\fRã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨åŒã˜ãƒãƒ¼ãƒˆä¸Šã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¡¢\fIservertool\fR¥×¥í¥ó¥×¥È¤«¤é\fIHello\fR¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドライン・インタフェースã§ã€\fIservertool\fRプロンプトã‹ã‚‰\fIHello\fRサーãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -232,7 +232,7 @@
 .RE
 .\}
 .PP
-\fIservertool\fR¤Ë¤è¤Ã¤Æ¥µ¡¼¥Ð¡¼¤¬ÅÐÏ¿¤µ¤ì¤Æ¡¢\fIHelloServerApName\fR¤È¤¤¤¦Ì¾Á°¤¬¥µ¡¼¥Ð¡¼¤Ë³ä¤êÅö¤Æ¤é¤ì¡¢ÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¡¼°ìÍ÷¤È¤È¤â¤Ë¥µ¡¼¥Ð¡¼ID¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£Â¾¤ÎüËö¥¦¥£¥ó¥É¥¦¤Þ¤¿¤Ï¥×¥í¥ó¥×¥È¤«¤é¥¯¥é¥¤¥¢¥ó¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIservertool\fRã«ã‚ˆã£ã¦ã‚µãƒ¼ãƒãƒ¼ãŒç™»éŒ²ã•ã‚Œã¦ã€\fIHelloServerApName\fRã¨ã„ã†åå‰ãŒã‚µãƒ¼ãƒãƒ¼ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã€ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒãƒ¼ä¸€è¦§ã¨ã¨ã‚‚ã«ã‚µãƒ¼ãƒãƒ¼IDãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ä»–ã®ç«¯æœ«ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¾ãŸã¯ãƒ—ロンプトã‹ã‚‰ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãƒ»ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -244,11 +244,11 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Î\fI\-ORBInitialHost localhost\fR¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬\fIHello\fR¥¯¥é¥¤¥¢¥ó¥È¤È¤·¤ÆƱ°ì¥Û¥¹¥È¾å¤ÇÆ°ºî¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬Ê̤Υۥ¹¥È¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\-\fIORBInitialHost nameserverhost\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆIDL¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Û¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£Á°¤Î¼ê½ç¤Ç¹Ô¤ï¤ì¤¿¤È¤ª¤ê¤Ë¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹(Îã:
-\fI\-ORBInitialPort 1050\fR)¡£ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ÎÁàºî¤¬½ªÎ»¤·¤¿¤é¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¤È\fIservertool\fR¤òÄä»ß¤¹¤ë¤«½ªÎ»¤·¤Æ¤¯¤À¤µ¤¤¡£MS\-DOS¥×¥í¥ó¥×¥È¤Ç\fIorbd\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥¦¥£¥ó¥É¥¦¤òÁªÂò¤·¤Æ\fB[Ctrl]+[C]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã®\fI\-ORBInitialHost localhost\fRã¯çœç•¥ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒ\fIHello\fRクライアントã¨ã—ã¦åŒä¸€ãƒ›ã‚¹ãƒˆä¸Šã§å‹•ä½œã—ã¦ã„ã‚‹ã‹ã‚‰ã§ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåˆ¥ã®ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\-\fIORBInitialHost nameserverhost\fRオプションを使用ã—ã¦IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„るホストを指定ã—ã¾ã™ã€‚å‰ã®æ‰‹é †ã§è¡Œã‚ã‚ŒãŸã¨ãŠã‚Šã«ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™(例:
+\fI\-ORBInitialPort 1050\fR)。ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®æ“作ãŒçµ‚了ã—ãŸã‚‰ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ã¨\fIservertool\fRã‚’åœæ­¢ã™ã‚‹ã‹çµ‚了ã—ã¦ãã ã•ã„。MS\-DOSプロンプトã§\fIorbd\fRをシャットダウンã™ã‚‹ã«ã¯ã€ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã—ã¦ã„るウィンドウをé¸æŠžã—ã¦\fB[Ctrl]+[C]\fRキーを押ã—ã¾ã™ã€‚
 .PP
-Oracle Solaris¤«¤é\fIorbd\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢¥×¥í¥»¥¹¤ò¸¡º÷¤·¤Æ¡¢\fIkill\fR¥³¥Þ¥ó¥É¤Ç½ªÎ»¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤òÌÀ¼¨Åª¤ËÄä»ß¤¹¤ë¤Þ¤Ç¤Ï¡¢¸Æ½Ð¤·ÂÔµ¡¾õÂÖ¤¬Â³¤­¤Þ¤¹¡£\fIservertool\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢\fBquit\fR¤ÈÆþÎϤ·¤Æ¥­¡¼¥Ü¡¼¥É¤Î\fB[Enter]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+Oracle Solarisã‹ã‚‰\fIorbd\fRをシャットダウンã™ã‚‹ã«ã¯ã€ãƒ—ロセスを検索ã—ã¦ã€\fIkill\fRコマンドã§çµ‚了ã—ã¾ã™ã€‚サーãƒãƒ¼ã‚’明示的ã«åœæ­¢ã™ã‚‹ã¾ã§ã¯ã€å‘¼å‡ºã—待機状態ãŒç¶šãã¾ã™ã€‚\fIservertool\fRをシャットダウンã™ã‚‹ã«ã¯ã€\fBquit\fRã¨å…¥åŠ›ã—ã¦ã‚­ãƒ¼ãƒœãƒ¼ãƒ‰ã®\fB[Enter]\fRキーを押ã—ã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -269,8 +269,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Î
-¡ÖNaming Service¡×
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã®
+「Naming Serviceã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/pack200.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/pack200.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: pack200
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaデプロイメント・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "pack200" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë"
+.TH "pack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-pack200 \- Web¥Ç¥×¥í¥¤¥á¥ó¥È¤Î¤¿¤á¤ËJAR¥Õ¥¡¥¤¥ë¤òpack200°µ½Ì¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+pack200 \- Webデプロイメントã®ãŸã‚ã«JARファイルをpack200圧縮ファイルã«ãƒ‘ッケージã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -62,27 +62,27 @@
 .RE
 .\}
 .PP
-¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Þ¤¿¤Ïproperties¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤¿ºÇ¸å¤Î¥ª¥×¥·¥ç¥ó¤¬¡¢¤½¤ì°ÊÁ°¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤è¤êÍ¥À褵¤ì¤Þ¤¹¡£
+オプションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚コマンドラインã¾ãŸã¯propertiesファイルã«æŒ‡å®šã•ã‚ŒãŸæœ€å¾Œã®ã‚ªãƒ—ションãŒã€ãれ以å‰ã«æŒ‡å®šã•ã‚ŒãŸã™ã¹ã¦ã®ã‚ªãƒ—ションより優先ã•ã‚Œã¾ã™ã€‚
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIoutput\-file\fR
 .RS 4
-½ÐÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+出力ファイルã®åå‰ã€‚
 .RE
 .PP
 \fIJAR\-file\fR
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+入力ファイルã®åå‰ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢Java gzip¥³¥ó¥×¥ì¥Ã¥µ¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤òpack200°µ½Ì¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤¹¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤¹¡£pack200¥Õ¥¡¥¤¥ë¤Ï¹â°µ½Ì¤Î¥Õ¥¡¥¤¥ë¤Ç¡¢Ä¾ÀÜ¥Ç¥×¥í¥¤¤Ç¤­¡¢ÂÓ°èÉý¤ÎÀáÌó¤ä¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤Îû½Ì¤¬²Äǽ¤Ç¤¹¡£
+\fIpack200\fRコマンドã¯ã€Java gzipコンプレッサを使用ã—ã¦JARファイルをpack200圧縮ファイルã«å¤‰æ›ã™ã‚‹Javaアプリケーションã§ã™ã€‚pack200ファイルã¯é«˜åœ§ç¸®ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã€ç›´æŽ¥ãƒ‡ãƒ—ロイã§ãã€å¸¯åŸŸå¹…ã®ç¯€ç´„やダウンロード時間ã®çŸ­ç¸®ãŒå¯èƒ½ã§ã™ã€‚
 .PP
-\fIpack200\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢°µ½Ì¥¨¥ó¥¸¥ó¤ÎÀßÄê¤äÈùÄ´À°¤ò¹Ô¤¦¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£°ìÈÌŪ¤Ê»ÈÍÑÊýË¡¤ò¼¡¤ÎÎã¤Ë¼¨¤·¤Þ¤¹¡£\fImyarchive\&.pack\&.gz\fR¤¬¥Ç¥Õ¥©¥ë¥È¤Î\fIpack200\fR¥³¥Þ¥ó¥ÉÀßÄê¤ÇºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIpack200\fRコマンドã«ã¯ã€åœ§ç¸®ã‚¨ãƒ³ã‚¸ãƒ³ã®è¨­å®šã‚„微調整を行ã†ã‚ªãƒ—ションãŒã‚ã‚Šã¾ã™ã€‚一般的ãªä½¿ç”¨æ–¹æ³•ã‚’次ã®ä¾‹ã«ç¤ºã—ã¾ã™ã€‚\fImyarchive\&.pack\&.gz\fRãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIpack200\fRコマンド設定ã§ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -93,11 +93,11 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-r, \-\-repack
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ò¥Ñ¥Ã¥¯¤·¤¿¸å¥¢¥ó¥Ñ¥Ã¥¯¤·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï\fIjarsigner\fR(1)¥Ä¡¼¥ë¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢myarchive\&.jar¥Õ¥¡¥¤¥ë¤ò¥Ñ¥Ã¥¯¤·¤¿¸å¡¢¥¢¥ó¥Ñ¥Ã¥¯¤·¤Þ¤¹¡£
+JARファイルをパックã—ãŸå¾Œã‚¢ãƒ³ãƒ‘ックã—ã¦ã€JARファイルを生æˆã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIjarsigner\fR(1)ツールã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€myarchive\&.jarファイルをパックã—ãŸå¾Œã€ã‚¢ãƒ³ãƒ‘ックã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -109,12 +109,12 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë¤Î½ç½ø¤òÊÝ»ý¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®é †åºã‚’ä¿æŒã—ã¾ã™ã€‚
 .RE
 .PP
 \-g, \-\-no\-gzip
 .RS 4
-\fIpack200\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¤­¤Ï¡¢Å¬Àڤʰµ½Ì¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Âбþ¤¹¤ë°µ½Ì²ò½ü¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIpack200\fRファイルを生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ãã¯ã€é©åˆ‡ãªåœ§ç¸®ãƒ„ールを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã¯ã€å¯¾å¿œã™ã‚‹åœ§ç¸®è§£é™¤ãƒ„ールを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -129,104 +129,104 @@
 .PP
 \-G, \-\-strip\-debug
 .RS 4
-½ÐÎϤ«¤é¥Ç¥Ð¥Ã¥°Â°À­¤òºï½ü¤·¤Þ¤¹¡£¤³¤ì¤Ë¤Ï¡¢\fISourceFile\fR¡¢\fILineNumberTable\fR¡¢\fILocalVariableTable\fR¡¢\fILocalVariableTypeTable\fR¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î°À­¤òºï½ü¤¹¤ì¤Ð¡¢¥À¥¦¥ó¥í¡¼¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤Î¥µ¥¤¥º¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¤¬¡¢¥Ç¥Ð¥Ã¥¬¤Îµ¡Ç½¤ÏÀ©¸Â¤µ¤ì¤Þ¤¹¡£
+出力ã‹ã‚‰ãƒ‡ãƒãƒƒã‚°å±žæ€§ã‚’削除ã—ã¾ã™ã€‚ã“ã‚Œã«ã¯ã€\fISourceFile\fRã€\fILineNumberTable\fRã€\fILocalVariableTable\fRã€\fILocalVariableTypeTable\fRãŒå«ã¾ã‚Œã¾ã™ã€‚ã“れらã®å±žæ€§ã‚’削除ã™ã‚Œã°ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã®ã‚µã‚¤ã‚ºã¯å°ã•ããªã‚Šã¾ã™ãŒã€ãƒ‡ãƒãƒƒã‚¬ã®æ©Ÿèƒ½ã¯åˆ¶é™ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-keep\-file\-order
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë¤Î½ç½ø¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+入力ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®é †åºã‚’ä¿æŒã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 \-O, \-\-no\-keep\-file\-order
 .RS 4
-¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¤¹¤Ù¤Æ¤ÎÍ×ÁǤòʤÙÂؤ¨¤ÆÁ÷¿®¤·¤Þ¤¹¡£¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢JAR¥Ç¥£¥ì¥¯¥È¥ê̾¤òºï½ü¤·¤Æ¥À¥¦¥ó¥í¡¼¥É¡¦¥µ¥¤¥º¤òºï¸º¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ê¤É¡¢ÆÃÄê¤ÎJAR¥Õ¥¡¥¤¥ë¤ÎºÇŬ²½µ¡Ç½¤¬Àµ¾ï¤ËÆ°ºî¤·¤Ê¤¯¤Ê¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+パック・ツールã¯ã€ã™ã¹ã¦ã®è¦ç´ ã‚’並ã¹æ›¿ãˆã¦é€ä¿¡ã—ã¾ã™ã€‚パック・ツールã¯ã€JARディレクトリåを削除ã—ã¦ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã‚’削減ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ãªã©ã€ç‰¹å®šã®JARファイルã®æœ€é©åŒ–機能ãŒæ­£å¸¸ã«å‹•ä½œã—ãªããªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-S\fIvalue\fR, \-\-segment\-limit=\fIvalue\fR
 .RS 4
-¤³¤ÎÃͤϡ¢³Æ¥¢¡¼¥«¥¤¥Ö¡¦¥»¥°¥á¥ó¥È¤ÎͽÁÛ¥¿¡¼¥²¥Ã¥È¡¦¥µ¥¤¥º\fIN\fR
-(¥Ð¥¤¥Èñ°Ì)¤Ç¤¹¡£Ã±°ì¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤ÎɬÍ×¥µ¥¤¥º¤¬\fIN\fR¥Ð¥¤¥È¤òĶ¤¨¤ë¤È¡¢ÆÈΩ¤·¤¿¥»¥°¥á¥ó¥È¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£Æüì¤Ê¥±¡¼¥¹¤È¤·¤Æ¡¢Ãͤ¬\fI\-1\fR¤Î¾ì¹ç¤Ï¡¢¤¹¤Ù¤Æ¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤ò´Þ¤àÂ礭¤Êñ°ì¤Î¥»¥°¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢Ãͤ¬0¤Î¾ì¹ç¤Ï¡¢¥¯¥é¥¹¤´¤È¤Ë¥»¥°¥á¥ó¥È¤¬1¤Ä¤º¤ÄÀ¸À®¤µ¤ì¤Þ¤¹¡£¥¢¡¼¥«¥¤¥Ö¡¦¥»¥°¥á¥ó¥È¤¬Â礭¤¯¤Ê¤ë¤È¡¢ÃÇÊÒ²½¤¬¾¯¤Ê¤¯¤Ê¤ê°µ½ÌΨ¤¬¹â¤¯¤Ê¤ê¤Þ¤¹¤¬¡¢¤½¤Î½èÍý¤Ë¤Ï¿¤¯¤Î¥á¥â¥ê¡¼¤¬É¬ÍפǤ¹¡£
+ã“ã®å€¤ã¯ã€å„アーカイブ・セグメントã®äºˆæƒ³ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚µã‚¤ã‚º\fIN\fR
+(ãƒã‚¤ãƒˆå˜ä½)ã§ã™ã€‚å˜ä¸€ã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®å¿…è¦ã‚µã‚¤ã‚ºãŒ\fIN\fRãƒã‚¤ãƒˆã‚’超ãˆã‚‹ã¨ã€ç‹¬ç«‹ã—ãŸã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚特殊ãªã‚±ãƒ¼ã‚¹ã¨ã—ã¦ã€å€¤ãŒ\fI\-1\fRã®å ´åˆã¯ã€ã™ã¹ã¦ã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€å¤§ããªå˜ä¸€ã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€å€¤ãŒ0ã®å ´åˆã¯ã€ã‚¯ãƒ©ã‚¹ã”ã¨ã«ã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒ1ã¤ãšã¤ç”Ÿæˆã•ã‚Œã¾ã™ã€‚アーカイブ・セグメントãŒå¤§ãããªã‚‹ã¨ã€æ–­ç‰‡åŒ–ãŒå°‘ãªããªã‚Šåœ§ç¸®çŽ‡ãŒé«˜ããªã‚Šã¾ã™ãŒã€ãã®å‡¦ç†ã«ã¯å¤šãã®ãƒ¡ãƒ¢ãƒªãƒ¼ãŒå¿…è¦ã§ã™ã€‚
 .sp
-³Æ¥»¥°¥á¥ó¥È¤Î¥µ¥¤¥º¤Ï¡¢¥»¥°¥á¥ó¥È¤ËÊÑ´¹¤µ¤ì¤ë¤½¤ì¤¾¤ì¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Î¤Û¤«¡¢¤½¤Î̾Á°¤È¾¤ÎÁ÷¿®¤µ¤ì¤ë¥×¥í¥Ñ¥Æ¥£¤Î¥µ¥¤¥º¤ò·×»»¤·¤Æ¿ä¬¤µ¤ì¤Þ¤¹¡£
+å„セグメントã®ã‚µã‚¤ã‚ºã¯ã€ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã«å¤‰æ›ã•ã‚Œã‚‹ãã‚Œãžã‚Œã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚µã‚¤ã‚ºã®ã»ã‹ã€ãã®åå‰ã¨ä»–ã®é€ä¿¡ã•ã‚Œã‚‹ãƒ—ロパティã®ã‚µã‚¤ã‚ºã‚’計算ã—ã¦æŽ¨æ¸¬ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ï\-1¤Ç¤¹¡£¤Ä¤Þ¤ê¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ïñ°ì¤Î¥»¥°¥á¥ó¥È½ÐÎÏ¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¶Ëü¤ËÂ礭¤Ê½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤ò¥»¥°¥á¥ó¥È²½(ʬ³ä)¤·¤Æ¤è¤ê¾®¤µ¤ÊJAR¤Ë¤¹¤ë¤³¤È¤ò¶¯¤¯¤ªÁ¦¤á¤·¤Þ¤¹¡£
+デフォルトã¯\-1ã§ã™ã€‚ã¤ã¾ã‚Šã€ãƒ‘ック・ツールã¯å˜ä¸€ã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚極端ã«å¤§ããªå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã‚‹å ´åˆã«ã¯ã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’セグメント化(分割)ã—ã¦ã‚ˆã‚Šå°ã•ãªJARã«ã™ã‚‹ã“ã¨ã‚’å¼·ããŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¤³¤ÎÀ©¸Â¤¬²Ý¤µ¤ì¤Æ¤¤¤Ê¤¤10 MB¤ÎJAR¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ÏÄ̾Ìó10%¾®¤µ¤¯¥Ñ¥Ã¥¯¤µ¤ì¤Þ¤¹¡£¤·¤«¤·¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ç¤è¤êÂ礭¤ÊJava¥Ò¡¼¥×(¥»¥°¥á¥ó¥È¤ÎÀ©¸Â¤ÎÌó10ÇÜ)¤òɬÍפȤ¹¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£
+ã“ã®åˆ¶é™ãŒèª²ã•ã‚Œã¦ã„ãªã„10 MBã®JARパック・ファイルã¯é€šå¸¸ã€ç´„10%å°ã•ãパックã•ã‚Œã¾ã™ã€‚ã—ã‹ã—ã€ãƒ‘ック・ツールã§ã‚ˆã‚Šå¤§ããªJavaヒープ(セグメントã®åˆ¶é™ã®ç´„10å€)ã‚’å¿…è¦ã¨ã™ã‚‹å ´åˆã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-E\fIvalue\fR, \-\-effort=\fIvalue\fR
 .RS 4
-ñ°ì¤Î10¿Ê¿ôÃͤò»ØÄꤷ¤¿¾ì¹ç¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢»ØÄꤵ¤ì¤¿°µ½ÌΨ¤Ç¥¢¡¼¥«¥¤¥Ö¤ò°µ½Ì¤·¤Þ¤¹¡£¥ì¥Ù¥ë1¤Î¾ì¹ç¤Ï¡¢Èæ³ÓŪû¤¤°µ½Ì»þ´Ö¤Ç¿¾¯Â礭¤á¤Î¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¤¬¡¢¥ì¥Ù¥ë9¤Î¾ì¹ç¤Ï¡¢Èó¾ï¤ËŤ¤»þ´Ö¤¬¤«¤«¤ë¤â¤Î¤Î¡¢¤è¤ê°µ½ÌΨ¤Î¹â¤¤¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£Æüì¤ÊÃÍ0¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¸µ¤ÎJAR¥Õ¥¡¥¤¥ë¤ò°µ½Ì¤Ê¤·¤ÇľÀÜ¥³¥Ô¡¼¤·¤Þ¤¹¡£JSR 200ɸ½à¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î²òÅà¥×¥í¥°¥é¥à¤¬¡¢¤³¤ÎÆÃÊ̤ʾì¹ç¤ò¥¢¡¼¥«¥¤¥ÖÁ´ÂΤΥѥ¹¥¹¥ë¡¼¤È²ò¼á¤¹¤ë¤è¤¦¤Ëµ¬Äꤷ¤Æ¤¤¤Þ¤¹¡£
+å˜ä¸€ã®10進数値を指定ã—ãŸå ´åˆã€ãƒ‘ック・ツールã¯ã€æŒ‡å®šã•ã‚ŒãŸåœ§ç¸®çŽ‡ã§ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–を圧縮ã—ã¾ã™ã€‚レベル1ã®å ´åˆã¯ã€æ¯”較的短ã„圧縮時間ã§å¤šå°‘大ãã‚ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ãŒã€ãƒ¬ãƒ™ãƒ«9ã®å ´åˆã¯ã€éžå¸¸ã«é•·ã„時間ãŒã‹ã‹ã‚‹ã‚‚ã®ã®ã€ã‚ˆã‚Šåœ§ç¸®çŽ‡ã®é«˜ã„ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚特殊ãªå€¤0を指定ã—ãŸå ´åˆã¯ã€\fIpack200\fRコマンドã¯å…ƒã®JARファイルを圧縮ãªã—ã§ç›´æŽ¥ã‚³ãƒ”ーã—ã¾ã™ã€‚JSR 200標準ã§ã¯ã€ã™ã¹ã¦ã®è§£å‡ãƒ—ログラムãŒã€ã“ã®ç‰¹åˆ¥ãªå ´åˆã‚’アーカイブ全体ã®ãƒ‘ススルーã¨è§£é‡ˆã™ã‚‹ã‚ˆã†ã«è¦å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ï5¤Ç¤¹¡£¤³¤Î¾ì¹ç¡¢É¸½àŪ¤Ê»þ´Ö¤ÇŬÀڤʰµ½Ì¤¬¹Ô¤ï¤ì¤Þ¤¹¡£
+デフォルトã¯5ã§ã™ã€‚ã“ã®å ´åˆã€æ¨™æº–çš„ãªæ™‚é–“ã§é©åˆ‡ãªåœ§ç¸®ãŒè¡Œã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-H\fIvalue\fR, \-\-deflate\-hint=\fIvalue\fR
 .RS 4
-ÆþÎϾðÊó¤òÊݸ¤¹¤ë¤È¤¤¤¦¥Ç¥Õ¥©¥ë¥ÈÃͤò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£Å¾Á÷¤µ¤ì¤ë¥¢¡¼¥«¥¤¥Ö¤Î¥µ¥¤¥º¤ÏÂ礭¤¯¤Ê¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£»ØÄê²Äǽ¤ÊÃͤϡ¢\fItrue\fR¡¢\fIfalse\fR¤Þ¤¿¤Ï\fIkeep\fR¤Ç¤¹¡£
+入力情報をä¿å­˜ã™ã‚‹ã¨ã„ã†ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚転é€ã•ã‚Œã‚‹ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ã‚µã‚¤ã‚ºã¯å¤§ãããªã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚指定å¯èƒ½ãªå€¤ã¯ã€\fItrue\fRã€\fIfalse\fRã¾ãŸã¯\fIkeep\fRã§ã™ã€‚
 .sp
-\fIvalue\fR¤¬\fItrue\fR¤Þ¤¿¤Ïfalse¤Î¾ì¹ç¡¢\fIpacker200\fR¥³¥Þ¥ó¥É¤Ï»ØÄê¤Ë½¾¤Ã¤Æ¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤ò½ÐÎÏ¥¢¡¼¥«¥¤¥Ö¤ËÀßÄꤷ¤Þ¤¹¡£¥¢¡¼¥«¥¤¥ÖÍ×ÁǤθġ¹¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤ÏžÁ÷¤µ¤ì¤Þ¤»¤ó¡£
+\fIvalue\fRãŒ\fItrue\fRã¾ãŸã¯falseã®å ´åˆã€\fIpacker200\fRコマンドã¯æŒ‡å®šã«å¾“ã£ã¦ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントを出力アーカイブã«è¨­å®šã—ã¾ã™ã€‚アーカイブè¦ç´ ã®å€‹ã€…ã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントã¯è»¢é€ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fIkeep\fRÃͤϡ¢ÆþÎÏJAR¤Ç³Îǧ¤µ¤ì¤¿¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+\fIkeep\fR値ã¯ã€å…¥åŠ›JARã§ç¢ºèªã•ã‚ŒãŸãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントをä¿æŒã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-m\fIvalue\fR, \-\-modification\-time=\fIvalue\fR
 .RS 4
-»ØÄê²Äǽ¤ÊÃͤÏ\fIlatest\fR¤È\fIkeep\fR¤Ç¤¹¡£
+指定å¯èƒ½ãªå€¤ã¯\fIlatest\fRã¨\fIkeep\fRã§ã™ã€‚
 .sp
-Ãͤ¬ºÇ¿·¤Î¾ì¹ç¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¸µ¤Î¥¢¡¼¥«¥¤¥Ö¤Î»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Î¤¦¤Á¤ÎºÇ½ª¹¹¿·»þ¹ï¤«¡¢¤½¤Î¥»¥°¥á¥ó¥È¤Î»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤ÎºÇ½ª¹¹¿·»þ¹ï¤òÆÃÄꤷ¤è¤¦¤È¤·¤Þ¤¹¡£¤³¤Îñ°ì¤ÎÃͤϥ»¥°¥á¥ó¥È¤Î°ìÉô¤È¤·¤ÆžÁ÷¤µ¤ì¡¢³Æ¥»¥°¥á¥ó¥È¤ÎÁ´¥¨¥ó¥È¥ê¤ËŬÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¤¹¤Ù¤Æ¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Õ¥¡¥¤¥ë¤Ëñ°ì¤ÎÆüÉÕ¤¬ÀßÄꤵ¤ì¤ë¤È¤¤¤¦ÌäÂê¤Ï¤¢¤ê¤Þ¤¹¤¬¡¢¥¢¡¼¥«¥¤¥Ö¤ÎžÁ÷¥µ¥¤¥º¤ò¾¯¤·¾®¤µ¤¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+値ãŒæœ€æ–°ã®å ´åˆã€ãƒ‘ック・ツールã¯ã€å…ƒã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®ã†ã¡ã®æœ€çµ‚更新時刻ã‹ã€ãã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã®ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®æœ€çµ‚更新時刻を特定ã—よã†ã¨ã—ã¾ã™ã€‚ã“ã®å˜ä¸€ã®å€¤ã¯ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã®ä¸€éƒ¨ã¨ã—ã¦è»¢é€ã•ã‚Œã€å„セグメントã®å…¨ã‚¨ãƒ³ãƒˆãƒªã«é©ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®å ´åˆã€ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å˜ä¸€ã®æ—¥ä»˜ãŒè¨­å®šã•ã‚Œã‚‹ã¨ã„ã†å•é¡Œã¯ã‚ã‚Šã¾ã™ãŒã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®è»¢é€ã‚µã‚¤ã‚ºã‚’å°‘ã—å°ã•ãã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-Ãͤ¬\fIkeep\fR¤Î¾ì¹ç¡¢ÆþÎÏJAR¤Ç³Îǧ¤µ¤ì¤¿Êѹ¹»þ´Ö¤¬ÊÝ»ý¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+値ãŒ\fIkeep\fRã®å ´åˆã€å…¥åŠ›JARã§ç¢ºèªã•ã‚ŒãŸå¤‰æ›´æ™‚é–“ãŒä¿æŒã•ã‚Œã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-P\fIfile\fR, \-\-pass\-file=\fIfile\fR
 .RS 4
-¥Õ¥¡¥¤¥ë¤ò°µ½Ì¤»¤º¡¢¥Ð¥¤¥Èñ°Ì¤ÇžÁ÷¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«ÊÖ¤·»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥·¥¹¥Æ¥à¡¦¥Õ¥¡¥¤¥ë¡¦¥»¥Ñ¥ì¡¼¥¿¤¬JAR¥Õ¥¡¥¤¥ë¡¦¥»¥Ñ¥ì¡¼¥¿¤Î¥¹¥é¥Ã¥·¥å(/)¤ËÃÖ¤­´¹¤¨¤é¤ì¤ëÅÀ¤ò½ü¤­¡¢¥Ñ¥¹Ì¾¤ÎÊÑ´¹¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£·ë²Ì¤È¤·¤ÆÆÀ¤é¤ì¤ë¥Õ¥¡¥¤¥ë̾¤Ï¡¢Ê¸»úÎó¤È¤·¤ÆÀµ³Î¤ËJAR¥Õ¥¡¥¤¥ë¤Ç¤Î½Ð¸½¤È°ìÃפ·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIfile\fR¤Ë¥Ç¥£¥ì¥¯¥È¥ê̾¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤¬Å¾Á÷¤µ¤ì¤Þ¤¹¡£
+ファイルを圧縮ã›ãšã€ãƒã‚¤ãƒˆå˜ä½ã§è»¢é€ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを繰返ã—使用ã—ã¦ã€è¤‡æ•°ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚システム・ファイル・セパレータãŒJARファイル・セパレータã®ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ã«ç½®ãæ›ãˆã‚‰ã‚Œã‚‹ç‚¹ã‚’除ãã€ãƒ‘スåã®å¤‰æ›ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。çµæžœã¨ã—ã¦å¾—られるファイルåã¯ã€æ–‡å­—列ã¨ã—ã¦æ­£ç¢ºã«JARファイルã§ã®å‡ºç¾ã¨ä¸€è‡´ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIfile\fRã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåを指定ã—ãŸå ´åˆã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒè»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-U\fIaction\fR, \-\-unknown\-attribute=\fIaction\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ÉÔÌÀ¤Ê°À­¤ò´Þ¤à¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¡¢»ØÄꤷ¤¿\fIaction\fR¤Ë¤è¤Ã¤ÆÅϤµ¤ì¤Þ¤¹¡£¥¢¥¯¥·¥ç¥ó¤È¤·¤Æ»ØÄê²Äǽ¤ÊÃͤϡ¢\fIerror\fR¡¢\fIstrip\fR¤Þ¤¿¤Ï\fIpass\fR¤Ç¤¹¡£
+デフォルトã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ä¸æ˜Žãªå±žæ€§ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€æŒ‡å®šã—ãŸ\fIaction\fRã«ã‚ˆã£ã¦æ¸¡ã•ã‚Œã¾ã™ã€‚アクションã¨ã—ã¦æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIerror\fRã€\fIstrip\fRã¾ãŸã¯\fIpass\fRã§ã™ã€‚
 .sp
-Ãͤ¬\fIerror\fR¤Î¾ì¹ç¡¢\fIpack200\fR¥³¥Þ¥ó¥ÉÁàºîÁ´ÂΤ¬¼ºÇÔ¤·¤ÆŬÀÚ¤ÊÀâÌÀ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIerror\fRã®å ´åˆã€\fIpack200\fRコマンドæ“作全体ãŒå¤±æ•—ã—ã¦é©åˆ‡ãªèª¬æ˜ŽãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-Ãͤ¬\fIstrip\fR¤Î¾ì¹ç¡¢Â°À­¤Ïºï½ü¤µ¤ì¤Þ¤¹¡£Java²¾ÁÛ¥Þ¥·¥ó(JVM)ɬ¿Ü°À­¤òºï½ü¤¹¤ë¤È¡¢¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Î¾ã³²¤¬È¯À¸¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+値ãŒ\fIstrip\fRã®å ´åˆã€å±žæ€§ã¯å‰Šé™¤ã•ã‚Œã¾ã™ã€‚Java仮想マシン(JVM)必須属性を削除ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã®éšœå®³ãŒç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ãͤ¬\fIpass\fR¤Î¾ì¹ç¡¢¥¯¥é¥¹Á´ÂΤ¬1¤Ä¤Î¥ê¥½¡¼¥¹¤È¤·¤ÆžÁ÷¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIpass\fRã®å ´åˆã€ã‚¯ãƒ©ã‚¹å…¨ä½“ãŒ1ã¤ã®ãƒªã‚½ãƒ¼ã‚¹ã¨ã—ã¦è»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-C\fIattribute\-name\fR=\fIlayout\fR, \-\-class\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-F\fIattribute\-name\fR=\fIlayout\fR, \-\-field\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-M\fIattribute\-name\fR=\fIlayout\fR, \-\-method\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-D\fIattribute\-name\fR=\fIlayout\fR, \-\-code\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-Á°½Ò¤Î4¤Ä¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥¨¥ó¥Æ¥£¥Æ¥£¤Ë\fIclass\-attribute\fR¡¢\fIfield\-attribute\fR¡¢\fImethod\-attribute\fR¤ª¤è¤Ó\fIcode\-attribute\fR¤Ê¤É¤Î°À­¤Î¥ì¥¤¥¢¥¦¥È¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIattribute\-name\fR¤Ë¤Ï¡¢¤³¤ì¤«¤é¥ì¥¤¥¢¥¦¥È¤Þ¤¿¤Ï¥¢¥¯¥·¥ç¥ó¤òÄêµÁ¤¹¤ë°À­¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£\fIaction\fR¤È¤·¤Æ»ØÄê²Äǽ¤ÊÃͤϡ¢\fIsome\-layout\-string\fR¡¢\fIerror\fR¡¢\fIstrip\fR¡¢\fIpass\fR¤Ç¤¹¡£
+å‰è¿°ã®4ã¤ã®ã‚ªãƒ—ションã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«\fIclass\-attribute\fRã€\fIfield\-attribute\fRã€\fImethod\-attribute\fRãŠã‚ˆã³\fIcode\-attribute\fRãªã©ã®å±žæ€§ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’指定ã§ãã¾ã™ã€‚\fIattribute\-name\fRã«ã¯ã€ã“ã‚Œã‹ã‚‰ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã¾ãŸã¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’定義ã™ã‚‹å±žæ€§ã®åå‰ã‚’指定ã—ã¾ã™ã€‚\fIaction\fRã¨ã—ã¦æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIsome\-layout\-string\fRã€\fIerror\fRã€\fIstrip\fRã€\fIpass\fRã§ã™ã€‚
 .sp
-\fIsome\-layout\-string\fR: ¥ì¥¤¥¢¥¦¥È¸À¸ì¤ÏJSR 200»ÅÍͤÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Îã:
-\fI\-\-class\-attribute=SourceFile=RUH\fR¡£
+\fIsome\-layout\-string\fR: レイアウト言語ã¯JSR 200仕様ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚例:
+\fI\-\-class\-attribute=SourceFile=RUH\fR。
 .sp
-Ãͤ¬\fIerror\fR¤Î¾ì¹ç¡¢\fIpack200\fRÁàºî¤¬¼ºÇÔ¤·¤ÆÀâÌÀ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIerror\fRã®å ´åˆã€\fIpack200\fRæ“作ãŒå¤±æ•—ã—ã¦èª¬æ˜ŽãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-Ãͤ¬\fIstrip\fR¤Î¾ì¹ç¡¢Â°À­¤¬½ÐÎϤ«¤éºï½ü¤µ¤ì¤Þ¤¹¡£VMɬ¿Ü°À­¤òºï½ü¤¹¤ë¤È¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Î¾ã³²¤¬È¯À¸¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-\-class\-attribute=CompilationID=pass\fR¤È¤¤¤¦¤³¤Î°À­¤ò´Þ¤à¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òžÁ÷¤·¤Þ¤¹¡£¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¤½¤Î¾¤Î¥¢¥¯¥·¥ç¥ó¤ò¹Ô¤¤¤Þ¤»¤ó¡£
+値ãŒ\fIstrip\fRã®å ´åˆã€å±žæ€§ãŒå‡ºåŠ›ã‹ã‚‰å‰Šé™¤ã•ã‚Œã¾ã™ã€‚VM必須属性を削除ã™ã‚‹ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã®éšœå®³ãŒç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-\-class\-attribute=CompilationID=pass\fRã¨ã„ã†ã“ã®å±žæ€§ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’転é€ã—ã¾ã™ã€‚パック・ツールã¯ã€ãã®ä»–ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’è¡Œã„ã¾ã›ã‚“。
 .sp
-Ãͤ¬\fIpass\fR¤Î¾ì¹ç¡¢¥¯¥é¥¹Á´ÂΤ¬1¤Ä¤Î¥ê¥½¡¼¥¹¤È¤·¤ÆžÁ÷¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIpass\fRã®å ´åˆã€ã‚¯ãƒ©ã‚¹å…¨ä½“ãŒ1ã¤ã®ãƒªã‚½ãƒ¼ã‚¹ã¨ã—ã¦è»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-f \fIpack\&.properties\fR, \-\-config\-file=\fIpack\&.properties\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤ò½é´ü²½¤¹¤ë¤¿¤á¤ÎJava¥×¥í¥Ñ¥Æ¥£¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¹½À®¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+コマンドラインã«ã€ãƒ‘ック・ツールをåˆæœŸåŒ–ã™ã‚‹ãŸã‚ã®JavaプロパティãŒå«ã¾ã‚Œã¦ã„る構æˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -251,42 +251,42 @@
 .PP
 \-v, \-\-verbose
 .RS 4
-ºÇ¾®¸Â¤Î¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÊ£¿ô»ØÄꤹ¤ë¤È¡¢¤è¤êŤ¤¥á¥Ã¥»¡¼¥¸¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+最å°é™ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを複数指定ã™ã‚‹ã¨ã€ã‚ˆã‚Šé•·ã„メッセージãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-q, \-\-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤»¤º¤ËÆ°ºî¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+メッセージを表示ã›ãšã«å‹•ä½œã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-l\fIfilename\fR, \-\-log\-file=\fIfilename\fR
 .RS 4
-½ÐÎÏ¥á¥Ã¥»¡¼¥¸¤Î¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£
+出力メッセージã®ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-?, \-h, \-\-help
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V, \-\-version
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«é–¢ã™ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤òJava²¾ÁÛ¥Þ¥·¥ó¤ËÅϤ·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢java(1)¥³¥Þ¥ó¥É¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚ªãƒ—ションをJava仮想マシンã«æ¸¡ã—ã¾ã™ã€‚詳細ã¯ã€java(1)コマンドã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+.SH "終了ステータス"
 .PP
-¼¡¤Î½ªÎ»Ãͤ¬ÊÖ¤µ¤ì¤Þ¤¹: Àµ¾ï½ªÎ»¤Î¾ì¹ç¤Ï0¡¢¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ï0¤è¤êÂ礭¤¤ÃÍ¡£
-.SH "Ãí°Õ"
+次ã®çµ‚了値ãŒè¿”ã•ã‚Œã¾ã™: 正常終了ã®å ´åˆã¯0ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã¯0より大ãã„値。
+.SH "注æ„"
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤È\fIpack\fR(1)¤òº®Æ±¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£\fIpack\fR¤ª¤è¤Ó\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢ÊÌ¡¹¤ÎÀ½ÉʤǤ¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¨\fIpack\fR(1)ã‚’æ··åŒã—ãªã„ã§ãã ã•ã„。\fIpack\fRãŠã‚ˆã³\fIpack200\fRコマンドã¯ã€åˆ¥ã€…ã®è£½å“ã§ã™ã€‚
 .PP
-JDK¤ËÉÕ°¤¹¤ëJava SE API»ÅÍͤȤÎÁê°ã¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢»ÅÍͤòÍ¥À褷¤Æ¤¯¤À¤µ¤¤¡£
-.SH "´ØÏ¢¹àÌÜ"
+JDKã«ä»˜å±žã™ã‚‹Java SE API仕様ã¨ã®ç›¸é•ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ä»•æ§˜ã‚’優先ã—ã¦ãã ã•ã„。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/policytool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/policytool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: policytool
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "policytool" "1" "2013ǯ11·î21Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "policytool" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-policytool \- ¥æ¡¼¥Æ¥£¥ê¥Æ¥£GUI·Ðͳ¤Ç¼èÆÀ¤·¤¿¥æ¡¼¥¶¡¼ÆþÎϤ˴ð¤Å¤¤¤Æ¡¢¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߽ñ¤­¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+policytool \- ユーティリティGUI経由ã§å–å¾—ã—ãŸãƒ¦ãƒ¼ã‚¶ãƒ¼å…¥åŠ›ã«åŸºã¥ã„ã¦ã€ãƒ—レーン・テキストã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿æ›¸ãã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \-file
 .RS 4
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¤è¤¦¤Ë\fIpolicytool\fR¤Ë»Ø¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿è¾¼ã‚€ã‚ˆã†ã«\fIpolicytool\fRã«æŒ‡ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \fIfilename\fR
 .RS 4
-¥í¡¼¥É¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+ロードã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
 .RE
 .PP
-\fBÎã\fR:
+\fB例\fR:
 .PP
-¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë´ÉÍý¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò¼Â¹Ô¤·¤Þ¤¹:
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ール管ç†ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚’実行ã—ã¾ã™:
 .sp
 .if n \{\
 .RS 4
@@ -86,7 +86,7 @@
 .RE
 .\}
 .PP
-\fIpolicytool\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤Þ¤¹:
+\fIpolicytool\fRコマンドを実行ã—ã€æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã—ã¾ã™:
 .sp
 .if n \{\
 .RS 4
@@ -97,17 +97,17 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢´ÉÍý¼Ô¤ÎGUI¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¥í¡¼¥«¥ë¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò´ÉÍý¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ï\fI\&.policy\fR³ÈÄ¥»Ò¤ò»ý¤Ä¥×¥ì¡¼¥ó¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¡¢¥É¥á¥¤¥óÊ̤˥ê¥â¡¼¥È¡¦¥ê¥¯¥¨¥¹¥¿¤ò¸¢¸Â¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Þ¥Ã¥×¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html¤Ë¤¢¤ë
-¡ÖDefault Policy Implementation and Policy File Syntax¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIpolicytool\fRコマンドã¯ã€ç®¡ç†è€…ã®GUIを呼ã³å‡ºã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ç®¡ç†è€…ã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を管ç†ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI\&.policy\fRæ‹¡å¼µå­ã‚’æŒã¤ãƒ—レーンテキスト・ファイルã§ã€ãƒ‰ãƒ¡ã‚¤ãƒ³åˆ¥ã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒªã‚¯ã‚¨ã‚¹ã‚¿ã‚’権é™ã‚ªãƒ–ジェクトã«ãƒžãƒƒãƒ—ã—ã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.htmlã«ã‚ã‚‹
+「Default Policy Implementation and Policy File Syntaxã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "オプション"
 .PP
 \-file
 .RS 4
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¤è¤¦¤Ë\fIpolicytool\fR¤Ë»Ø¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿è¾¼ã‚€ã‚ˆã†ã«\fIpolicytool\fRã«æŒ‡ç¤ºã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -117,7 +117,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖDefault Policy Implementation and Policy File Syntax¡×
+「Default Policy Implementation and Policy File Syntaxã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html)
 .RE
 .sp
@@ -129,7 +129,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPolicy File Creation and Management¡×
+「Policy File Creation and Managementã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyGuide\&.html)
 .RE
 .sp
@@ -141,7 +141,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPermissions in Java SE Development Kit (JDK)¡×
+「Permissions in Java SE Development Kit (JDK)ã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/permissions\&.html)
 .RE
 .sp
@@ -153,7 +153,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava Security Overview¡×
+「Java Security Overviewã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/overview/jsoverview\&.html)
 .RE
 .sp
@@ -165,7 +165,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava Cryptography Architecture (JCA) Reference Guide¡×
+「Java Cryptography Architecture (JCA) Reference Guideã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/rmic.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/rmic.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmic
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmic" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmic" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmic \- Java Remote Method Protocol (JRMP)¤Þ¤¿¤ÏInternet Inter\-Orb protocol (IIOP)¤ò»ÈÍѤ¹¤ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¤ª¤è¤ÓTie¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£Object Management Group (OMG)¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¤âÀ¸À®¤·¤Þ¤¹
-.SH "³µÍ×"
+rmic \- Java Remote Method Protocol (JRMP)ã¾ãŸã¯Internet Inter\-Orb protocol (IIOP)を使用ã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¹ã‚¿ãƒ–ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãŠã‚ˆã³Tieクラスを生æˆã—ã¾ã™ã€‚Object Management Group (OMG)インタフェース定義言語(IDL)も生æˆã—ã¾ã™
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,20 +64,20 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦\fI¥ª¥×¥·¥ç¥ó\fR¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・\fIオプション\fR。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpackage\-qualified\-class\-names\fR
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥¯¥é¥¹Ì¾¡£Îã:
-\fIjava\&.awt\&.Color\fR¡£
+パッケージをå«ã‚€ã‚¯ãƒ©ã‚¹å。例:
+\fIjava\&.awt\&.Color\fR。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fBÈó¿ä¾©¤Ë´Ø¤¹¤ëÃí°Õ:\fR
-Java Remote Method Protocol (JRMP)¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¤ÎÀÅŪ¤ÊÀ¸À®¤Î¥µ¥Ý¡¼¥È¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£Æ°Åª¤ËÀ¸À®¤µ¤ì¤ëJRMP¥¹¥¿¥Ö¤ò¤«¤ï¤ê¤Ë»ÈÍѤ·¤Æ¡¢JRMP¥Ù¡¼¥¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤³¤Î¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍ×À­¤ò¤Ê¤¯¤¹¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fIjava\&.rmi\&.server\&.UnicastRemoteObject\fR»ÅÍÍ(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/server/UnicastRemoteObject\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fBéžæŽ¨å¥¨ã«é–¢ã™ã‚‹æ³¨æ„:\fR
+Java Remote Method Protocol (JRMP)スタブãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã®é™çš„ãªç”Ÿæˆã®ã‚µãƒãƒ¼ãƒˆã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚å‹•çš„ã«ç”Ÿæˆã•ã‚Œã‚‹JRMPスタブをã‹ã‚ã‚Šã«ä½¿ç”¨ã—ã¦ã€JRMPベースã®ã‚¢ãƒ—リケーションã«ã“ã®ãƒ„ールを使用ã™ã‚‹å¿…è¦æ€§ã‚’ãªãã™ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚詳細ã¯ã€\fIjava\&.rmi\&.server\&.UnicastRemoteObject\fR仕様(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/server/UnicastRemoteObject\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIrmic\fR¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Java Remote Method Protocol (JRMP)¤È¥¹¥¿¥Ö¤ª¤è¤ÓTie¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë(IIOP¥×¥í¥È¥³¥ë)¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¼ÂÁõ¥¯¥é¥¹¤Ç¤¢¤ë¤³¤ì¤é¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥¯¥é¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£¥ê¥â¡¼¥È¼ÂÁõ¥¯¥é¥¹¤Ï¡¢\fIjava\&.rmi\&.Remote\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£\fIrmic\fR¥³¥Þ¥ó¥É¤Ç¤Î¥¯¥é¥¹Ì¾¤Ï¡¢¤½¤Î¥¯¥é¥¹¤¬\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥ë¤¬À®¸ù¤·¤Æ¤¤¤Æ¡¢¤«¤Ä´°Á´½¤¾þ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Ë¼¨¤¹¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾\fIHelloImpl\fR¤Ç\fIrmic\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢hello¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ÎÉÕ¤¤¤¿)¤Ë\fIHelloImpl_Stub\&.class \fR¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIrmic\fRコンパイラã¯ã€Java Remote Method Protocol (JRMP)ã¨ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³Tieクラス・ファイル(IIOPプロトコル)を使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚リモート・オブジェクトã®å®Ÿè£…クラスã§ã‚ã‚‹ã“れらã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Javaプログラミング言語ã®ã‚¯ãƒ©ã‚¹ã‚’コンパイルã—ãŸã¨ãã«ç”Ÿæˆã•ã‚Œã¾ã™ã€‚リモート実装クラスã¯ã€\fIjava\&.rmi\&.Remote\fRインタフェースを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚\fIrmic\fRコマンドã§ã®ã‚¯ãƒ©ã‚¹åã¯ã€ãã®ã‚¯ãƒ©ã‚¹ãŒ\fIjavac\fRコマンドã§ã‚³ãƒ³ãƒ‘イルãŒæˆåŠŸã—ã¦ã„ã¦ã€ã‹ã¤å®Œå…¨ä¿®é£¾ãƒ‘ッケージåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã«ç¤ºã™ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å\fIHelloImpl\fRã§\fIrmic\fRコマンドを実行ã™ã‚‹ã¨ã€helloサブディレクトリ(クラスã®ãƒ‘ッケージã®åå‰ã®ä»˜ã„ãŸ)ã«\fIHelloImpl_Stub\&.class \fRファイルãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,31 +89,31 @@
 .RE
 .\}
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥±¥ë¥È¥ó¤ÏJRMP¥×¥í¥È¥³¥ë¡¦¥µ¡¼¥Ð¡¼Â¦¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¼ÂÁõ¤ò¸Æ¤Ó½Ð¤¹¥á¥½¥Ã¥É¤ò´Þ¤ß¤Þ¤¹¡£
+リモート・オブジェクトã®ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã¯JRMPプロトコル・サーãƒãƒ¼å´ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト実装を呼ã³å‡ºã™ãƒ¡ã‚½ãƒƒãƒ‰ã‚’å«ã¿ã¾ã™ã€‚
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎTie¤Ï¡¢¥¹¥±¥ë¥È¥ó¤ÈƱÍͤ˥µ¡¼¥Ð¡¼Â¦¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¤¹¤¬¡¢IIOP¥×¥í¥È¥³¥ë¤ò»ÈÍѤ·¤Æ¥¯¥é¥¤¥¢¥ó¥È¤ÈÄÌ¿®¤·¤Þ¤¹¡£
+リモート・オブジェクトã®Tieã¯ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã¨åŒæ§˜ã«ã‚µãƒ¼ãƒãƒ¼å´ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã™ãŒã€IIOPプロトコルを使用ã—ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨é€šä¿¡ã—ã¾ã™ã€‚
 .PP
-¥¹¥¿¥Ö¤È¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¤¥¢¥ó¥È¦¤Ç¤ÎÂåÍý¤Ç¤¹¡£¥¹¥¿¥Ö¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¡¢¼Âʪ¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¾ïÃ󤹤륵¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ëÌò³ä¤ò»ý¤Á¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤Ï¡¢¼ÂºÝ¤Ï¥í¡¼¥«¥ë¡¦¥¹¥¿¥Ö¤Ø¤Î»²¾È¤È¤Ê¤ê¤Þ¤¹¡£
+スタブã¨ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ã§ã®ä»£ç†ã§ã™ã€‚スタブã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã‚’ã€å®Ÿç‰©ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå¸¸é§ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹å½¹å‰²ã‚’æŒã¡ã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã¸ã®å‚ç…§ã¯ã€å®Ÿéš›ã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚¹ã‚¿ãƒ–ã¸ã®å‚ç…§ã¨ãªã‚Šã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç\fIrmic\fR¥³¥Þ¥ó¥É¤Ï¡¢1\&.2 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤ò»ÈÍѤ¹¤ë¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-v1\&.2\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸Æ°ºî¤Ç¤¹¡£¥ê¥ê¡¼¥¹5\&.0°ÊÁ°¤Ç¤Ï\fI\-vcompat\fR¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤·¤¿¡£IIOP¥×¥í¥È¥³¥ëÍѤΥ¹¥¿¥Ö¤ª¤è¤ÓTie¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¤Ë¤Ï\fI\-iiop\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§\fIrmic\fRコマンドã¯ã€1\&.2 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã‚’使用ã™ã‚‹ã‚¹ã‚¿ãƒ–・クラスを生æˆã—ã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-v1\&.2\fRオプションを指定ã—ãŸå ´åˆã¨åŒã˜å‹•ä½œã§ã™ã€‚リリース5\&.0以å‰ã§ã¯\fI\-vcompat\fRオプションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã—ãŸã€‚IIOPプロトコル用ã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³Tieクラスを生æˆã™ã‚‹ã«ã¯\fI\-iiop\fRオプションを使用ã—ã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¥¹¥¿¥Ö¤Ï¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤ß¤ò¼ÂÁõ¤·¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¼ÂÁõ¤¹¤ë¥í¡¼¥«¥ë¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó¡£JRMP¥¹¥¿¥Ö¤Ï¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¼ÂÁõ¤¹¤ë¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÈƱ¤¸¤â¤Î¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¤Î¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥­¥ã¥¹¥È¤ä·¿¥Á¥§¥Ã¥¯¤ËJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤ËÁȤ߹þ¤Þ¤ì¤¿±é»»»Ò¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£IIOP¤Î¾ì¹ç¤Ï¡¢\fIPortableRemoteObject\&.narrow\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+スタブã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ã¿ã‚’実装ã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå®Ÿè£…ã™ã‚‹ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯å®Ÿè£…ã—ã¦ã„ã¾ã›ã‚“。JRMPスタブã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå®Ÿè£…ã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¨åŒã˜ã‚‚ã®ã‚’実装ã—ã¦ã„ã‚‹ã®ã§ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€ã‚­ãƒ£ã‚¹ãƒˆã‚„åž‹ãƒã‚§ãƒƒã‚¯ã«Javaプログラミング言語ã«çµ„ã¿è¾¼ã¾ã‚ŒãŸæ¼”ç®—å­ã‚’使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚IIOPã®å ´åˆã¯ã€\fIPortableRemoteObject\&.narrow\fRメソッドを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ブートストラップ・クラス・ファイルã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath path
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤¬¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ä\fICLASSPATH\fR´Ä¶­ÊÑ¿ôÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Çʬ³ä¤·¤Þ¤¹¡£¥Ñ¥¹¤Î°ìÈÌŪ¤Ê·Á¼°¤Ï\fI\&.;<your_path>\fR¤Ç¤¹¡£Îã:
+\fIrmic\fRコマンドãŒã‚¯ãƒ©ã‚¹ã‚’探ã™ãŸã‚ã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚„\fICLASSPATH\fR環境変数設定をオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åˆ†å‰²ã—ã¾ã™ã€‚パスã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯\fI\&.;<your_path>\fRã§ã™ã€‚例:
 \fI\&.;/usr/local/java/classes\fR
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥¯¥é¥¹³¬ÁؤνÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ë¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¡¢¤ª¤è¤ÓTie¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ÏMyClass¤«¤éƳ½Ð¤µ¤ì¤¿¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤ò¥Ç¥£¥ì¥¯¥È¥ê/java/classes/exampleclass¤Ë³ÊǼ¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹éšŽå±¤ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒ«ãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ–ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã€ãŠã‚ˆã³Tieファイルを格ç´ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯MyClassã‹ã‚‰å°Žå‡ºã•ã‚ŒãŸã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’ディレクトリ/java/classes/exampleclassã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -124,25 +124,25 @@
 .if n \{\
 .RE
 .\}
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ï\fI\-d\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¤ÈƱ¤¸¤Ç¤¹¡£¥¿¡¼¥²¥Ã¥È¡¦¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸³¬Áؤ¬¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢stub/tie/skeleton¥Õ¥¡¥¤¥ë¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Î\fIrmic\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fI\-d\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸³¬ÁؤϺîÀ®¤µ¤ì¤º¡¢½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï¤¹¤Ù¤Æ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËľÀܳÊǼ¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¡£
+\fI\-d\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã¯\fI\-d\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãŸå ´åˆã¨åŒã˜ã§ã™ã€‚ターゲット・クラスã®ãƒ‘ッケージ階層ãŒç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€stub/tie/skeletonファイルãŒæ ¼ç´ã•ã‚Œã¾ã™ã€‚以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®\fIrmic\fRコマンドã§ã¯ã€\fI\-d\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ‘ッケージ階層ã¯ä½œæˆã•ã‚Œãšã€å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã™ã¹ã¦ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›´æŽ¥æ ¼ç´ã•ã‚Œã¦ã„ã¾ã—ãŸã€‚
 .RE
 .PP
 \-extdirs \fIpath\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+インストール済拡張機能ã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-g
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤ò´Þ¤à¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¹ÔÈÖ¹æ¾ðÊó¤Î¤ßÀ¸À®¤µ¤ì¤Þ¤¹¡£
+ローカル変数をå«ã‚€ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€è¡Œç•ªå·æƒ…å ±ã®ã¿ç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-idl
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹¤ª¤è¤Ó»²¾È¤µ¤ì¤¿¥¯¥é¥¹¤ÎOMG IDL¤¬À¸À®¤µ¤ì¤Þ¤¹¡£IDL¤Ç¤Ï¡¢¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ë°Í¸¤»¤º¤Ë¡¢Àë¸À¤¹¤ë¤À¤±¤Ç¥ª¥Ö¥¸¥§¥¯¥È¤ÎAPI¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£IDL¤Ï¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤Î»ÅÍͤȤ·¤Æ»ÈÍѤ·¤Þ¤¹¡£CORBA¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÄ󶡤¹¤ëǤ°Õ¤Î¸À¸ì¤Ç¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤ÎºîÀ®¤ª¤è¤Ó¸Æ½Ð¤·¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¸À¸ì¤Ë¤Ï¡¢Java¤ª¤è¤ÓC++¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.html¤Î
-¡ÖJava IDL: IDL to Java Language Mapping¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIrmic\fRコマンドã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ãŠã‚ˆã³å‚ç…§ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®OMG IDLãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚IDLã§ã¯ã€ãƒ—ログラミング言語ã«ä¾å­˜ã›ãšã«ã€å®£è¨€ã™ã‚‹ã ã‘ã§ã‚ªãƒ–ジェクトã®APIを指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚IDLã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®ä»•æ§˜ã¨ã—ã¦ä½¿ç”¨ã—ã¾ã™ã€‚CORBAãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’æä¾›ã™ã‚‹ä»»æ„ã®è¨€èªžã§ã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®ä½œæˆãŠã‚ˆã³å‘¼å‡ºã—ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚ã“れらã®è¨€èªžã«ã¯ã€JavaãŠã‚ˆã³C++ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.htmlã®
+「Java IDL: IDL to Java Language Mappingã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¤­¤Ë¤Ï¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fI\-idl\fRオプションを使用ã™ã‚‹ã¨ãã«ã¯ã€ä»–ã®ã‚ªãƒ—ションも指定ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -152,7 +152,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´û¸¤Î¥¹¥¿¥Ö/Tie/IDL¤¬ÆþÎÏ¥¯¥é¥¹¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤Ç¤â¡¢\fI\-always\fR¤Þ¤¿¤Ï\fI\-alwaysgenerate\fR¥ª¥×¥·¥ç¥ó¤ÏºÆÀ¸À®¤ò¶¯À©¤·¤Þ¤¹¡£
+既存ã®ã‚¹ã‚¿ãƒ–/Tie/IDLãŒå…¥åŠ›ã‚¯ãƒ©ã‚¹ã‚ˆã‚Šã‚‚æ–°ã—ã„å ´åˆã§ã‚‚ã€\fI\-always\fRã¾ãŸã¯\fI\-alwaysgenerate\fRオプションã¯å†ç”Ÿæˆã‚’強制ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -163,7 +163,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-factory\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢À¸À®¤µ¤ì¤¿IDL¤Ç\fIfactory\fR¥­¡¼¥ï¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fI\-factory\fRオプションã¯ã€ç”Ÿæˆã•ã‚ŒãŸIDLã§\fIfactory\fRキーワードを使用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -204,9 +204,9 @@
 .PP
 \-iiop
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢JRMP¤Î¥¹¥¿¥Ö¤È¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Î¤«¤ï¤ê¤Ë¡¢IIOP¤Î¥¹¥¿¥Ö¤ÈTie¥¯¥é¥¹¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥í¡¼¥«¥ë¡¦¥×¥í¥­¥·¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¡¼¤Ë¸Æ½Ð¤·¤òÁ÷¿®¤¹¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£³Æ¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤Ï¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤¬É¬ÍפǤ¹¡£¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ë¤è¤Ã¤Æ¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¼ÂÁõ¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤Ç¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò»²¾È¤¹¤ë¤È¤­¤Ï¡¢¥¹¥¿¥Ö¤ò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¥¿¥¤¡¦¥¯¥é¥¹¤Ï¡¢¥µ¡¼¥Ð¡¼Â¦¤ÇÃå¸Æ¤ò½èÍý¤·¡¢¤½¤Î¸Æ½Ð¤·¤òŬÀڤʼÂÁõ¥¯¥é¥¹¤Ë¥Ç¥£¥¹¥Ñ¥Ã¥Á¤¹¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£³Æ¼ÂÁõ¥¯¥é¥¹¤Ë¤Ï¡¢¥¿¥¤¡¦¥¯¥é¥¹¤¬É¬ÍפǤ¹¡£
+\fIrmic\fRコマンドã«ã‚ˆã£ã¦ã€JRMPã®ã‚¹ã‚¿ãƒ–ã¨ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®ã‹ã‚ã‚Šã«ã€IIOPã®ã‚¹ã‚¿ãƒ–ã¨TieクラスãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚スタブ・クラスã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロキシã§ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‹ã‚‰ã‚µãƒ¼ãƒãƒ¼ã«å‘¼å‡ºã—ã‚’é€ä¿¡ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚å„リモート・インタフェースã«ã¯ã‚¹ã‚¿ãƒ–・クラスãŒå¿…è¦ã§ã™ã€‚スタブ・クラスã«ã‚ˆã£ã¦ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãŒå®Ÿè£…ã•ã‚Œã¾ã™ã€‚クライアントã§ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをå‚ç…§ã™ã‚‹ã¨ãã¯ã€ã‚¹ã‚¿ãƒ–ã‚’å‚ç…§ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚タイ・クラスã¯ã€ã‚µãƒ¼ãƒãƒ¼å´ã§ç€å‘¼ã‚’処ç†ã—ã€ãã®å‘¼å‡ºã—ã‚’é©åˆ‡ãªå®Ÿè£…クラスã«ãƒ‡ã‚£ã‚¹ãƒ‘ッãƒã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚å„実装クラスã«ã¯ã€ã‚¿ã‚¤ãƒ»ã‚¯ãƒ©ã‚¹ãŒå¿…è¦ã§ã™ã€‚
 .sp
-\fI\-iiop\fR¤ò»ÈÍѤ·¤Æ\fIrmic\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¼¡¤Î̿̾µ¬Â§¤Ë½àµò¤·¤¿¥¹¥¿¥Ö¤ÈTie¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-iiop\fRを使用ã—ã¦\fIrmic\fRコマンドを呼ã³å‡ºã™ã¨ã€æ¬¡ã®å‘½åè¦å‰‡ã«æº–æ‹ ã—ãŸã‚¹ã‚¿ãƒ–ã¨TieãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -227,7 +227,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-iiop\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¤­¤Ë¤Ï¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fI\-iiop\fRオプションを使用ã™ã‚‹ã¨ãã«ã¯ã€ä»–ã®ã‚ªãƒ—ションも指定ã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -238,7 +238,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´û¸¤Î¥¹¥¿¥Ö/Tie/IDL¤¬ÆþÎÏ¥¯¥é¥¹¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤Ç¤â¡¢\fI\-always\fR¤Þ¤¿¤Ï\fI\-alwaysgenerate\fR¥ª¥×¥·¥ç¥ó¤ÏºÆÀ¸À®¤ò¶¯À©¤·¤Þ¤¹¡£
+既存ã®ã‚¹ã‚¿ãƒ–/Tie/IDLãŒå…¥åŠ›ã‚¯ãƒ©ã‚¹ã‚ˆã‚Šã‚‚æ–°ã—ã„å ´åˆã§ã‚‚ã€\fI\-always\fRã¾ãŸã¯\fI\-alwaysgenerate\fRオプションã¯å†ç”Ÿæˆã‚’強制ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -249,7 +249,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-nolocalstubs\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢Æ±¤¸¥×¥í¥»¥¹¤Î¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ËºÇŬ²½¤µ¤ì¤¿¥¹¥¿¥Ö¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
+\fI\-nolocalstubs\fRオプションã§ã¯ã€åŒã˜ãƒ—ロセスã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã«æœ€é©åŒ–ã•ã‚ŒãŸã‚¹ã‚¿ãƒ–ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -260,7 +260,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢Á÷¿®¤µ¤ì¤ëIDL¤Ë\fIvaluetype\fR¥á¥½¥Ã¥É¤ª¤è¤Ó½é´ü²½»Ò¤òÄɲäǤ­¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤ª¤è¤Ó½é´ü²½»Ò¤Ï¡¢valuetype¤Î¾ì¹ç¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤«¤®¤êÀ¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-noValueMethods\fRオプションã¯\fI\-idl\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-noValueMethods\fRオプションã¯ã€é€ä¿¡ã•ã‚Œã‚‹IDLã«\fIvaluetype\fRメソッドãŠã‚ˆã³åˆæœŸåŒ–å­ã‚’追加ã§ããªã„よã†ã«ã—ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³åˆæœŸåŒ–å­ã¯ã€valuetypeã®å ´åˆã¯ã‚ªãƒ—ションã§ã™ã€‚\fI\-idl\fRオプションã¨ã¨ã‚‚ã«\fI\-noValueMethods\fRオプションを指定ã—ãªã„ã‹ãŽã‚Šç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -271,57 +271,57 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-poa\fR¥ª¥×¥·¥ç¥ó¤Ï·Ñ¾µ¤ò\fIorg\&.omg\&.CORBA_2_3\&.portable\&.ObjectImpl\fR¤«¤é\fIorg\&.omg\&.PortableServer\&.Servant\fR¤ËÊѹ¹¤·¤Þ¤¹¡£¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤Î\fIPortableServer\fR¥â¥¸¥å¡¼¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¤Î\fIServant\fR·¿¤òÄêµÁ¤·¤Þ¤¹¡£Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢\fIServant\fR·¿¤ÏJava¤Î\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¹¤Ù¤Æ¤ÎPOA¥µ¡¼¥Ð¥ó¥È¼ÂÁõ¤Î¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤È¤·¤Æµ¡Ç½¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¸Æ¤Ó½Ð¤¹¤³¤È¤Î¤Ç¤­¤ë¤¤¤¯¤Ä¤«¤Î¥á¥½¥Ã¥É¡¢¤ª¤è¤ÓPOA¤Ë¤è¤Ã¤Æ¸Æ¤Ó½Ð¤µ¤ì¡¢¥µ¡¼¥Ð¥ó¥È¤ÎÆ°ºî¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë¥æ¡¼¥¶¡¼¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤ë¥á¥½¥Ã¥É¤òÄ󶡤·¤Þ¤¹¡£OMG IDL to Java Language Mapping Specification¡¢CORBA V 2\&.3\&.1 ptc/00\-01\-08\&.pdf¤Ë½àµò¤·¤Æ¤¤¤Þ¤¹¡£
+\fI\-poa\fRオプションã¯ç¶™æ‰¿ã‚’\fIorg\&.omg\&.CORBA_2_3\&.portable\&.ObjectImpl\fRã‹ã‚‰\fIorg\&.omg\&.PortableServer\&.Servant\fRã«å¤‰æ›´ã—ã¾ã™ã€‚ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã®\fIPortableServer\fRモジュールã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–ã®\fIServant\fR型を定義ã—ã¾ã™ã€‚Javaプログラミング言語ã§ã¯ã€\fIServant\fRåž‹ã¯Javaã®\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスã«ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã™ã¹ã¦ã®POAサーãƒãƒ³ãƒˆå®Ÿè£…ã®ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¯ãƒ©ã‚¹ã¨ã—ã¦æ©Ÿèƒ½ã—ã€ã‚¢ãƒ—リケーション・プログラマãŒå‘¼ã³å‡ºã™ã“ã¨ã®ã§ãã‚‹ã„ãã¤ã‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³POAã«ã‚ˆã£ã¦å‘¼ã³å‡ºã•ã‚Œã€ã‚µãƒ¼ãƒãƒ³ãƒˆã®å‹•ä½œã‚’制御ã™ã‚‹ãŸã‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãるメソッドをæä¾›ã—ã¾ã™ã€‚OMG IDL to Java Language Mapping Specificationã€CORBA V 2\&.3\&.1 ptc/00\-01\-08\&.pdfã«æº–æ‹ ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-J
 .RS 4
-Java¥³¥Þ¥ó¥É¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-J\fR¤Î¸å¤í¤Ë³¤¯°ú¿ô¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤ËÅϤ·¤Þ¤¹(\fI\-J\fR¤È°ú¿ô¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤ÏÆþ¤ì¤Þ¤»¤ó)¡£
+Javaコマンドã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€\fI\-J\fRオプションã¯\fI\-J\fRã®å¾Œã‚ã«ç¶šã引数をJavaインタプリタã«æ¸¡ã—ã¾ã™(\fI\-J\fRã¨å¼•æ•°ã®é–“ã«ã‚¹ãƒšãƒ¼ã‚¹ã¯å…¥ã‚Œã¾ã›ã‚“)。
 .RE
 .PP
 \-keep or \-keepgenerated
 .RS 4
-¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¡¢¤Þ¤¿¤ÏTie¥¯¥é¥¹¤Î¤¿¤á¤ËÀ¸À®¤µ¤ì¤¿\fI\&.java\fR¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÊÝ»ý¤·¡¢\fI\&.class\fR¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë½ñ¤­¹þ¤ß¤Þ¤¹¡£
+スタブã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã€ã¾ãŸã¯Tieクラスã®ãŸã‚ã«ç”Ÿæˆã•ã‚ŒãŸ\fI\&.java\fRソース・ファイルをä¿æŒã—ã€\fI\&.class\fRファイルã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã¾ã™ã€‚
 .RE
 .PP
 \-nowarn
 .RS 4
-·Ù¹ð¤ò¥ª¥Õ¤Ë¤·¤Þ¤¹¡£\fI\-nowarn\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¡£¥³¥ó¥Ñ¥¤¥é¤Ï·Ù¹ð¤òɽ¼¨¤·¤Þ¤»¤ó¡£
+警告をオフã«ã—ã¾ã™ã€‚\fI\-nowarn\fRオプションãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€‚コンパイラã¯è­¦å‘Šã‚’表示ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-nowrite
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤·¤¿¥¯¥é¥¹¤ò¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë½ñ¤­¹þ¤ß¤Þ¤»¤ó¡£
+コンパイルã—ãŸã‚¯ãƒ©ã‚¹ã‚’ファイル・システムã«æ›¸ãè¾¼ã¿ã¾ã›ã‚“。
 .RE
 .PP
-\-vcompat (Èó¿ä¾©)
+\-vcompat (éžæŽ¨å¥¨)
 .RS 4
-1\&.1¤È1\&.2¤ÎξÊý¤ÎJRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤È¸ß´¹À­¤Î¤¢¤ë¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£5\&.0°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¤³¤Î¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤·¤¿¡£À¸À®¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢JDK 1\&.1²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤ë¤È1\&.1¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¡¢JDK 1\&.2°Ê¹ß¤Î²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤ë¤È1\&.2¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Ç¤Ï¡¢1\&.1¤È1\&.2¤ÎξÊý¤Î¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥¯¥é¥¹¤ÏξÊý¤ÎÁàºî¥â¡¼¥É¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Ë¡¢¥µ¥¤¥º¤¬Â礭¤¯¤Ê¤ê¤Þ¤¹¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+1\&.1ã¨1\&.2ã®ä¸¡æ–¹ã®JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨äº’æ›æ€§ã®ã‚るスタブãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’作æˆã—ã¾ã™ã€‚5\&.0以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã“ã®ã‚ªãƒ—ションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã—ãŸã€‚生æˆã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã¯ã€JDK 1\&.1仮想マシンã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨1\&.1スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ã€JDK 1\&.2以é™ã®ä»®æƒ³ãƒžã‚·ãƒ³ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨1\&.2スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã§ã¯ã€1\&.1ã¨1\&.2ã®ä¸¡æ–¹ã®ã‚¹ã‚¿ãƒ–・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’サãƒãƒ¼ãƒˆã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ä¸¡æ–¹ã®æ“作モードをサãƒãƒ¼ãƒˆã™ã‚‹ãŸã‚ã«ã€ã‚µã‚¤ã‚ºãŒå¤§ãããªã‚Šã¾ã™ã€‚注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤ä¥ê¥ó¥«¡¼¤¬¡¢¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤ä¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤Î¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
+コンパイラやリンカーãŒã€ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¦ã„るクラスやロードã•ã‚Œã¦ã„るクラス・ファイルã«ã¤ã„ã¦ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
-\-v1\&.1 (Èó¿ä¾©)
+\-v1\&.1 (éžæŽ¨å¥¨)
 .RS 4
-1\&.1 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤Î¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£\fI\-v1\&.1\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢JDK 1\&.1¤«¤é\fIrmic\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¡¢¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ç¤­¤Ê¤¤(¤µ¤é¤Ë¥À¥¤¥Ê¥ß¥Ã¥¯¡¦¥¯¥é¥¹¡¦¥í¡¼¥Ç¥£¥ó¥°¤ò»ÈÍѤ·¤Æ¤¤¤Ê¤¤)¡¢´û¸¤ÎÀÅŪ¥Ç¥×¥í¥¤¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤ËÂФ·¡¢Ä¾Î󲽸ߴ¹À­¤Î¤¢¤ë¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+1\&.1 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’生æˆã—ã¾ã™ã€‚\fI\-v1\&.1\fRオプションを使用ã§ãã‚‹ã®ã¯ã€JDK 1\&.1ã‹ã‚‰\fIrmic\fRコマンドã§ç”Ÿæˆã•ã‚Œã€ã‚¢ãƒƒãƒ—グレードã§ããªã„(ã•ã‚‰ã«ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’使用ã—ã¦ã„ãªã„)ã€æ—¢å­˜ã®é™çš„デプロイã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã«å¯¾ã—ã€ç›´åˆ—化互æ›æ€§ã®ã‚るスタブ・クラスを生æˆã™ã‚‹å ´åˆã®ã¿ã§ã™ã€‚注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
-\-v1\&.2 (Èó¿ä¾©)
+\-v1\&.2 (éžæŽ¨å¥¨)
 .RS 4
-(¥Ç¥Õ¥©¥ë¥È)1\&.2 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤Î¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Ï1\&.2¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Ç»ÈÍѤǤ­¤Ê¤¤¤¿¤á¡¢¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£À¸À®¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢JDK 1\&.1²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤Æ¤âÆ°ºî¤·¤Þ¤»¤ó¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+(デフォルト)1\&.2 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã®ã‚¹ã‚¿ãƒ–・クラスを生æˆã—ã¾ã™ã€‚スケルトン・クラスã¯1\&.2スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ä½¿ç”¨ã§ããªã„ãŸã‚ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。生æˆã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã¯ã€JDK 1\&.1仮想マシンã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã‚‚動作ã—ã¾ã›ã‚“。注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "´Ä¶­ÊÑ¿ô"
+.SH "環境変数"
 .PP
 CLASSPATH
 .RS 4
-¥æ¡¼¥¶¡¼ÄêµÁ¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò¥·¥¹¥Æ¥à¤Ë»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£Îã:
+ユーザー定義クラスã¸ã®ãƒ‘スをシステムã«æŒ‡å®šã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚例:
 \fI\&.:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/rmid.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/rmid.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmid
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmid" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmid" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmid \- µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤¹¤ë¤È¡¢¥ª¥Ö¥¸¥§¥¯¥È¤òJava²¾ÁÛ¥Þ¥·¥ó(VM)¤ËÅÐÏ¿¤·¤Æ¥¢¥¯¥Æ¥£¥Ö²½¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SH "³µÍ×"
+rmid \- 起動システム・デーモンを開始ã™ã‚‹ã¨ã€ã‚ªãƒ–ジェクトをJava仮想マシン(VM)ã«ç™»éŒ²ã—ã¦ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,13 +64,13 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤·¤Þ¤¹¡£µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤·¤Æ¤«¤é¤Ç¤Ê¤¤¤È¡¢¥¢¥¯¥Æ¥£¥Ö²½²Äǽ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥¯¥Æ¥£¥Ö²½¥·¥¹¥Æ¥à¤ËÅÐÏ¿¤·¤¿¤ê¡¢JVMÆâ¤Ç¥¢¥¯¥Æ¥£¥Ö²½¤·¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£¥¢¥¯¥Æ¥£¥Ö²½²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò»ÈÍѤ¹¤ë¥×¥í¥°¥é¥à¤ÎºîÀ®ÊýË¡¤Î¾ÜºÙ¤Ï¡¢\fI¥¢¥¯¥Æ¥£¥Ö²½¤Î»ÈÍÑ\fR¤Ë´Ø¤¹¤ë¥Á¥å¡¼¥È¥ê¥¢¥ë(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi/activation/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’開始ã—ã¾ã™ã€‚起動システム・デーモンを開始ã—ã¦ã‹ã‚‰ã§ãªã„ã¨ã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化å¯èƒ½ã‚ªãƒ–ジェクトをアクティブ化システムã«ç™»éŒ²ã—ãŸã‚Šã€JVM内ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ãŸã‚Šã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。アクティブ化å¯èƒ½ãªã‚ªãƒ–ジェクトを使用ã™ã‚‹ãƒ—ログラムã®ä½œæˆæ–¹æ³•ã®è©³ç´°ã¯ã€\fIアクティブ化ã®ä½¿ç”¨\fRã«é–¢ã™ã‚‹ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi/activation/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢¼¡¤Î¤è¤¦¤Ë¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Æ¡¢¥Ç¡¼¥â¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIrmid\fRコマンドを実行ã—ã€æ¬¡ã®ã‚ˆã†ã«ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¦ã€ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -82,11 +82,11 @@
 .RE
 .\}
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ÎOracle¤Î¼ÂÁõ¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬µ¯Æ°¥°¥ë¡¼¥×ÍѤËJVM¤òµ¯Æ°¤¹¤ë¤¿¤á¤Ë³Æ\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤǤ­¤ë¤«¤É¤¦¤«¤ò¸¡¾Ú¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¹Æäˡ¢\fIActivationGroupDesc\fR¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÅϤµ¤ì¤ë\fICommandEnvironment\fR¤äǤ°Õ¤Î¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÃæ¤ÇÌÀ¼¨Åª¤Ëµö²Ä¤¹¤ë¤³¤È¤¬É¬Íפˤʤê¤Þ¤·¤¿¡£\fIsun\&.rmi\&.activation\&.execPolicy\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤϡ¢µ¯Æ°¥°¥ë¡¼¥×ÍѤËJVM¤òµ¯Æ°¤¹¤ë¤¿¤á¤Ë\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤǤ­¤ë¤«¤É¤¦¤«¤òȽÃǤ¹¤ë¤È¤­¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ý¥ê¥·¡¼¤ò·èÄꤷ¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\-J\-Dsun\&.rmi\&.activation\&.execPolicy=policy¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIrmid\fRコマンドã®Oracleã®å®Ÿè£…を実行ã™ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã‚Œã¯ã€\fIrmid\fRコマンドãŒèµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã«JVMã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã«å„\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã§ãã‚‹ã‹ã©ã†ã‹ã‚’検証ã§ãるよã†ã«ã™ã‚‹ãŸã‚ã§ã™ç‰¹ã«ã€\fIActivationGroupDesc\fRコンストラクタã«æ¸¡ã•ã‚Œã‚‹\fICommandEnvironment\fRã‚„ä»»æ„ã®ãƒ—ロパティã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションã¯ã€\fIrmid\fRコマンドã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§æ˜Žç¤ºçš„ã«è¨±å¯ã™ã‚‹ã“ã¨ãŒå¿…è¦ã«ãªã‚Šã¾ã—ãŸã€‚\fIsun\&.rmi\&.activation\&.execPolicy\fRプロパティã®å€¤ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã«JVMã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã«\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã§ãã‚‹ã‹ã©ã†ã‹ã‚’判断ã™ã‚‹ã¨ãã«\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã‚’決定ã—ã¾ã™ã€‚詳細ã¯ã€\-J\-Dsun\&.rmi\&.activation\&.execPolicy=policyオプションã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È1098¤Ç¥¢¥¯¥Æ¥£¥Ù¡¼¥¿¤ÈÆâÉô¥ì¥¸¥¹¥È¥ê¤¬µ¯Æ°¤µ¤ì¡¢\fIActivationSystem\fR¤¬¤³¤ÎÆâÉô¥ì¥¸¥¹¥È¥êÆâ¤Î̾Á°\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Þ¤¹¡£
+\fIrmid\fRコマンドを実行ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ1098ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚¿ã¨å†…部レジストリãŒèµ·å‹•ã•ã‚Œã€\fIActivationSystem\fRãŒã“ã®å†…部レジストリ内ã®åå‰\fIjava\&.rmi\&.activation\&.ActivationSystem\fRã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¾ã™ã€‚
 .PP
-¥ì¥¸¥¹¥È¥ê¤Ë¾¤Î¥Ý¡¼¥È¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë\fI\-port\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥ì¥¸¥¹¥È¥ê¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È1099¤Ç¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤È¥ì¥¸¥¹¥È¥ê¤òµ¯Æ°¤·¤Þ¤¹¡£
+レジストリã«ä»–ã®ãƒãƒ¼ãƒˆã‚’指定ã™ã‚‹ã«ã¯ã€\fIrmid\fRコマンドã®å®Ÿè¡Œæ™‚ã«\fI\-port\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ1099ã§ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -97,15 +97,15 @@
 .if n \{\
 .RE
 .\}
-.SH "ɬÍפ˱þ¤¸¤ÆRMID¤ò³«»Ï"
+.SH "å¿…è¦ã«å¿œã˜ã¦RMIDを開始"
 .PP
-\fIrmid\fR¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é³«»Ï¤¹¤ë¤Ë¤Ï¡¢\fIinetd\fR
-(Oracle Solaris¤Î¾ì¹ç)¡¢¤Þ¤¿¤Ï\fIxinetd\fR
-(Linux¤Î¾ì¹ç)¤ò¹½À®¤·¤Æ\fIrmid\fR¤òɬÍפ˱þ¤¸¤Æ³«»Ï¤¹¤ëÊýË¡¤â¤¢¤ê¤Þ¤¹¡£
+\fIrmid\fRをコマンドラインã‹ã‚‰é–‹å§‹ã™ã‚‹ã«ã¯ã€\fIinetd\fR
+(Oracle Solarisã®å ´åˆ)ã€ã¾ãŸã¯\fIxinetd\fR
+(Linuxã®å ´åˆ)を構æˆã—ã¦\fIrmid\fRã‚’å¿…è¦ã«å¿œã˜ã¦é–‹å§‹ã™ã‚‹æ–¹æ³•ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .PP
-RMID¤ò³«»Ï¤¹¤ë¤È¡¢\fISystem\&.inheritedChannel\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë(\fIinetd\fR/\fIxinetd\fR¤«¤é·Ñ¾µ)¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Þ¤¹¡£·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë¤¬null¤Ç¤¢¤ë¤«¡¢\fIjava\&.nio\&.channels\&.ServerSocketChannel\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¤Ê¤«¤Ã¤¿¾ì¹ç¡¢RMID¤Ï¤½¤Î¥Á¥ã¥ó¥Í¥ë¤Ï\fIinetd\fR/\fIxinetd\fR¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¤¿¤â¤Î¤Ç¤Ï¤Ê¤¤¤ÈȽÃǤ·¡¢Á°½Ò¤Î¤è¤¦¤Ëµ¯Æ°¤·¤Þ¤¹¡£
+RMIDを開始ã™ã‚‹ã¨ã€\fISystem\&.inheritedChannel\fRメソッドを呼ã³å‡ºã—ã¦ã€ç¶™æ‰¿ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«(\fIinetd\fR/\fIxinetd\fRã‹ã‚‰ç¶™æ‰¿)ã‚’å–å¾—ã—よã†ã¨ã—ã¾ã™ã€‚継承ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«ãŒnullã§ã‚ã‚‹ã‹ã€\fIjava\&.nio\&.channels\&.ServerSocketChannel\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ãªã‹ã£ãŸå ´åˆã€RMIDã¯ãã®ãƒãƒ£ãƒ³ãƒãƒ«ã¯\fIinetd\fR/\fIxinetd\fRã«ã‚ˆã£ã¦èµ·å‹•ã•ã‚ŒãŸã‚‚ã®ã§ã¯ãªã„ã¨åˆ¤æ–­ã—ã€å‰è¿°ã®ã‚ˆã†ã«èµ·å‹•ã—ã¾ã™ã€‚
 .PP
-·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë¤¬\fIServerSocketChannel\fR¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢RMID¤Ï¥¨¥¯¥¹¥Ý¡¼¥È¤¹¤ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¢¤Ä¤Þ¤ê\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤¬¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë¥ì¥¸¥¹¥È¥ê¤È\fIjava\&.rmi\&.activation\&.Activator\fR¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ¹¤ë¥ê¥¯¥¨¥¹¥È¤ò¼õ¿®¤¹¤ë¥µ¡¼¥Ð¡¼¡¦¥½¥±¥Ã¥È¤È¤·¤Æ¡¢\fIServerSocketChannel\fR¤«¤é¼èÆÀ¤·¤¿\fIjava\&.net\&.ServerSocket\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢RMID¤ÎÆ°ºî¤Ï¡¢¼¡¤Î¤³¤È¤ò½ü¤¤¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤éµ¯Æ°¤·¤¿¾ì¹ç¤ÈƱ¤¸¤Ç¤¹¡£
+継承ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«ãŒ\fIServerSocketChannel\fRインスタンスã§ã‚ã‚‹å ´åˆã¯ã€RMIDã¯ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã€ã¤ã¾ã‚Š\fIjava\&.rmi\&.activation\&.ActivationSystem\fRãŒãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„るレジストリã¨\fIjava\&.rmi\&.activation\&.Activator\fRリモート・オブジェクトã«å¯¾ã™ã‚‹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ä¿¡ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚½ã‚±ãƒƒãƒˆã¨ã—ã¦ã€\fIServerSocketChannel\fRã‹ã‚‰å–å¾—ã—ãŸ\fIjava\&.net\&.ServerSocket\fRを使用ã—ã¾ã™ã€‚ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€RMIDã®å‹•ä½œã¯ã€æ¬¡ã®ã“ã¨ã‚’除ã„ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰èµ·å‹•ã—ãŸå ´åˆã¨åŒã˜ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -115,7 +115,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISystem\&.err\fR¤ËÂФ¹¤ë½ÐÎϤϡ¢¥Õ¥¡¥¤¥ë¤Ë¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.io\&.tmpdir\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç»ØÄꤵ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê(Ä̾ï¤Ï\fI/var/tmp\fR¤Þ¤¿¤Ï\fI/tmp\fR)¤Ë¤¢¤ë¡£¥Õ¥¡¥¤¥ë̾¤ÎÀÜƬ¼­¤Ï\fIrmid\-err\fR¤Ç¡¢ÀÜÈø¼­¤Ï\fItmp\fR¤Ç¤¢¤ë¡£
+\fISystem\&.err\fRã«å¯¾ã™ã‚‹å‡ºåŠ›ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã•ã‚Œã‚‹ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIjava\&.io\&.tmpdir\fRシステム・プロパティã§æŒ‡å®šã•ã‚Œã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(通常ã¯\fI/var/tmp\fRã¾ãŸã¯\fI/tmp\fR)ã«ã‚る。ファイルåã®æŽ¥é ­è¾žã¯\fIrmid\-err\fRã§ã€æŽ¥å°¾è¾žã¯\fItmp\fRã§ã‚る。
 .RE
 .sp
 .RS 4
@@ -126,7 +126,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢RMID¤Ï¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Æ½ªÎ»¤·¤Þ¤¹¡£
+\fI\-port\fRオプションã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€RMIDã¯ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -137,17 +137,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-log\fR¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢RMID¤Ï¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Æ½ªÎ»¤·¤Þ¤¹¡£
+\fI\-log\fRオプションã¯å¿…須。ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€RMIDã¯ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
-ɬÍפ˱þ¤¸¤Æ¥µ¡¼¥Ó¥¹¤ò³«»Ï¤¹¤ë¤è¤¦¤Ë¹½À®¤¹¤ëÊýË¡¤Î¾ÜºÙ¤Ï¡¢\fIinetd\fR
-(Oracle Solaris¤Î¾ì¹ç)¡¢¤Þ¤¿¤Ï\fIxinetd\fR
-(Linux)¤Î¥Þ¥Ë¥å¥¢¥ë¡¦¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+å¿…è¦ã«å¿œã˜ã¦ã‚µãƒ¼ãƒ“スを開始ã™ã‚‹ã‚ˆã†ã«æ§‹æˆã™ã‚‹æ–¹æ³•ã®è©³ç´°ã¯ã€\fIinetd\fR
+(Oracle Solarisã®å ´åˆ)ã€ã¾ãŸã¯\fIxinetd\fR
+(Linux)ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãƒ»ãƒšãƒ¼ã‚¸ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
-\-C\fI¥ª¥×¥·¥ç¥ó\fR
+\-C\fIオプション\fR
 .RS 4
-\fIrmid\fR¥³¥Þ¥ó¥É¤Î»Ò¥×¥í¥»¥¹(µ¯Æ°¥°¥ë¡¼¥×)¤¬ºîÀ®¤µ¤ì¤¿¤È¤­¤Ë¡¢¤½¤ì¤¾¤ì¤Î»Ò¥×¥í¥»¥¹¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤ë¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤹ¤ë¤È¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë³Æ²¾ÁÛ¥Þ¥·¥ó¤Ë¥×¥í¥Ñ¥Æ¥£¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIrmid\fRコマンドã®å­ãƒ—ロセス(起動グループ)ãŒä½œæˆã•ã‚ŒãŸã¨ãã«ã€ãã‚Œãžã‚Œã®å­ãƒ—ロセスã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã‚‹ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹å„仮想マシンã«ãƒ—ロパティを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»Ò¥×¥í¥»¥¹¤ËÅϤ¹µ¡Ç½¤Ï¡¢¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î»ÒJVM¤Çserver\-call¥í¥®¥ó¥°¤¬²Äǽ¤Ç¤¹¡£
+コマンドライン引数をå­ãƒ—ロセスã«æ¸¡ã™æ©Ÿèƒ½ã¯ã€ãƒ‡ãƒãƒƒã‚°ã‚’è¡Œã†å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã™ã¹ã¦ã®å­JVMã§server\-callロギングãŒå¯èƒ½ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -173,7 +173,7 @@
 .PP
 \-J\fIoption\fR
 .RS 4
-RMID¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava¥¤¥ó¥¿¥×¥ê¥¿¤ËÅϤ¹¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬\fIrmid\&.policy\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë»ØÄꤹ¤ë¤Ë¤Ï¡¢\fIrmid\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIjava\&.security\&.policy\fR¥×¥í¥Ñ¥Æ¥£¤òÄêµÁ¤·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+RMIDを実行ã—ã¦ã„ã‚‹Javaインタプリタã«æ¸¡ã™ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIrmid\fRコマンドãŒ\fIrmid\&.policy\fRã¨ã„ã†åå‰ã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã«ã¯ã€\fIrmid\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fI\-J\fRオプションを使用ã—ã¦ã€\fIjava\&.security\&.policy\fRプロパティを定義ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -188,7 +188,7 @@
 .PP
 \-J\-Dsun\&.rmi\&.activation\&.execPolicy=\fIpolicy\fR
 .RS 4
-µ¯Æ°¥°¥ë¡¼¥×¤¬¼Â¹Ô¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ëJVM¤Îµ¯Æ°¤Ë»ÈÍѤ¹¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤¿¤á¤Ë¡¢RMID¤¬ºÎÍѤ¹¤ë¥Ý¥ê¥·¡¼¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java RMIµ¯Æ°¥Ç¡¼¥â¥ó¤ÎOracle¤Î¼ÂÁõ¤Î¤ß¤Ë¸ºß¤¹¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤³¤Î¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢·ë²Ì¤Ï\fI\-J\-Dsun\&.rmi\&.activation\&.execPolicy=default\fR¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£\fIpolicy\fR¤Ë»ØÄê²Äǽ¤ÊÃͤϡ¢\fIdefault\fR¡¢\fIpolicyClassName\fR¤Þ¤¿¤Ï\fInone\fR¤Ç¤¹¡£
+起動グループãŒå®Ÿè¡Œã•ã‚Œã‚‹ã“ã¨ã«ãªã‚‹JVMã®èµ·å‹•ã«ä½¿ç”¨ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã™ã‚‹ãŸã‚ã«ã€RMIDãŒæŽ¡ç”¨ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€Java RMI起動デーモンã®Oracleã®å®Ÿè£…ã®ã¿ã«å­˜åœ¨ã™ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。コマンドラインã«ã“ã®ãƒ—ロパティを指定ã—ãªã„å ´åˆã€çµæžœã¯\fI\-J\-Dsun\&.rmi\&.activation\&.execPolicy=default\fRを指定ã—ãŸå ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚\fIpolicy\fRã«æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIdefault\fRã€\fIpolicyClassName\fRã¾ãŸã¯\fInone\fRã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -198,35 +198,35 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¥Õ¥©¥ë¥È
+デフォルト
 .sp
-\fIdefault\fR¤Þ¤¿¤Ï̤»ØÄêÃͤÎ\fIexecPolicy\fR¤Î¾ì¹ç¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤Ç¤­¤ë¤Î¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ç¡¢¼Â¹Ô¤¹¤ë¸¢¸Â¤¬\fIrmid\fR¤ËÍ¿¤¨¤é¤ì¤Æ¤¤¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î¤ß¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¼Â¹Ô¥Ý¥ê¥·¡¼¤Ç»ÈÍѤǤ­¤ë¤Î¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îµ¯Æ°¥°¥ë¡¼¥×¼ÂÁõ¤Î¤ß¤Ç¤¹¡£
+\fIdefault\fRã¾ãŸã¯æœªæŒ‡å®šå€¤ã®\fIexecPolicy\fRã®å ´åˆã€\fIrmid\fRコマンドãŒå®Ÿè¡Œã§ãã‚‹ã®ã¯ã€\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§ã€å®Ÿè¡Œã™ã‚‹æ¨©é™ãŒ\fIrmid\fRã«ä¸Žãˆã‚‰ã‚Œã¦ã„るコマンドãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®ã¿ã§ã™ã€‚デフォルトã®å®Ÿè¡Œãƒãƒªã‚·ãƒ¼ã§ä½¿ç”¨ã§ãã‚‹ã®ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—実装ã®ã¿ã§ã™ã€‚
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×ÍѤÎJVM¤òµ¯Æ°¤¹¤ë¤È¤­¤Ë¡¢¤½¤Î¥°¥ë¡¼¥×¤Ë¤Ä¤¤¤ÆÅÐÏ¿¤µ¤ì¤¿µ¯Æ°¥°¥ë¡¼¥×µ­½Ò»Ò¤Ç¤¢¤ë\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤ·¤Þ¤¹¡£¥°¥ë¡¼¥×µ­½Ò»Ò¤Ï¡¢\fIActivationGroupDesc\&.CommandEnvironment\fR¤ò»ØÄꤷ¤Þ¤¹(¾Êά²Äǽ)¡£¤³¤ì¤Ë¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¥³¥Þ¥ó¥É¤È¡¢¤½¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤ËÄɲäǤ­¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï\fIjava\&.home\fR¤Ë¤¢¤ë\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£¥°¥ë¡¼¥×µ­½Ò»Ò¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ª¥×¥·¥ç¥ó¤È¤·¤ÆÄɲ䵤ì¤ë¥×¥í¥Ñ¥Æ¥£¡¦¥ª¡¼¥Ð¡¼¥é¥¤¥É¤â´Þ¤Þ¤ì¤Þ¤¹(\fI\-D<property>=<value>\fR¤È¤·¤ÆÄêµÁ¤µ¤ì¤Þ¤¹)¡£\fIcom\&.sun\&.rmi\&.rmid\&.ExecPermission\fR¸¢¸Â¤Ï\fIrmid\fR¥³¥Þ¥ó¥É¤Ë¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Ë¥°¥ë¡¼¥×µ­½Ò»Ò¤Î\fICommandEnvironment\fR¤Ç»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òÉÕÍ¿¤·¤Þ¤¹¡£\fIcom\&.sun\&.rmi\&.rmid\&.ExecOptionPermission\fR¸¢¸Â¤Ïµ¯Æ°¥°¥ë¡¼¥×¤Î³«»Ï»þ¤Ë¡¢¥°¥ë¡¼¥×µ­½Ò»Ò¤Ç¥×¥í¥Ñ¥Æ¥£¡¦¥ª¡¼¥Ð¡¼¥é¥¤¥É¤È¤·¤Æ¡¢¤Þ¤¿¤Ï\fICommandEnvironment\fR¤Ç¥ª¥×¥·¥ç¥ó¤È¤·¤Æ»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Þ¤¹¡£\fIrmid\fR¥³¥Þ¥ó¥É¤ËÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òÉÕÍ¿¤¹¤ë¾ì¹ç¡¢¸¢¸Â\fIExecPermission\fR¤ª¤è¤Ó\fIExecOptionPermission\fR¤ò¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥½¡¼¥¹¤ËÉÕÍ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã®JVMã‚’èµ·å‹•ã™ã‚‹ã¨ãã«ã€ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã«ã¤ã„ã¦ç™»éŒ²ã•ã‚ŒãŸèµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã§ã‚ã‚‹\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã—ã¾ã™ã€‚グループ記述å­ã¯ã€\fIActivationGroupDesc\&.CommandEnvironment\fRを指定ã—ã¾ã™(çœç•¥å¯èƒ½)。ã“ã‚Œã«ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã¨ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«è¿½åŠ ã§ãるコマンドライン・オプションãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã§ã¯ã€\fIrmid\fRコマンドã¯\fIjava\&.home\fRã«ã‚ã‚‹\fIjava\fRコマンドを使用ã—ã¾ã™ã€‚グループ記述å­ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ªãƒ—ションã¨ã—ã¦è¿½åŠ ã•ã‚Œã‚‹ãƒ—ロパティ・オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã‚‚å«ã¾ã‚Œã¾ã™(\fI\-D<property>=<value>\fRã¨ã—ã¦å®šç¾©ã•ã‚Œã¾ã™)。\fIcom\&.sun\&.rmi\&.rmid\&.ExecPermission\fR権é™ã¯\fIrmid\fRコマンドã«ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã«ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã®\fICommandEnvironment\fRã§æŒ‡å®šã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹æ¨©é™ã‚’付与ã—ã¾ã™ã€‚\fIcom\&.sun\&.rmi\&.rmid\&.ExecOptionPermission\fR権é™ã¯èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ã®é–‹å§‹æ™‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã§ãƒ—ロパティ・オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã¨ã—ã¦ã€ã¾ãŸã¯\fICommandEnvironment\fRã§ã‚ªãƒ—ションã¨ã—ã¦æŒ‡å®šã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションをã€\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¾ã™ã€‚\fIrmid\fRコマンドã«æ§˜ã€…ãªã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションを実行ã™ã‚‹æ¨©é™ã‚’付与ã™ã‚‹å ´åˆã€æ¨©é™\fIExecPermission\fRãŠã‚ˆã³\fIExecOptionPermission\fRã‚’ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ã‚½ãƒ¼ã‚¹ã«ä»˜ä¸Žã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 \fBExecPermission\fR
 .sp
-\fIExecPermission\fR¥¯¥é¥¹¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤¬ÆÃÄê¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òɽ¤·¤Þ¤¹¡£
+\fIExecPermission\fRクラスã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã«\fIrmid\fRコマンドãŒç‰¹å®šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹æ¨©é™ã‚’表ã—ã¾ã™ã€‚
 .sp
-\fB¹½Ê¸\fR:
-\fIExecPermission\fR¤Î̾Á°¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ë¼Â¹Ô¤òµö²Ä¤¹¤ë¥³¥Þ¥ó¥É¤Î¥Ñ¥¹Ì¾¤Ç¤¹¡£¥¹¥é¥Ã¥·¥å(/)¤ª¤è¤Ó¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ç½ª¤ï¤ë¥Ñ¥¹Ì¾¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£¥¹¥é¥Ã¥·¥å¤Ï¥Õ¥¡¥¤¥ë¶èÀÚ¤êʸ»ú\fIFile\&.separatorChar\fR¤Ç¤¹¡£¥¹¥é¥Ã¥·¥å(/)¤ª¤è¤Ó¥Þ¥¤¥Ê¥¹Éä¹æ(\-)¤Ç½ª¤ï¤ë¥Ñ¥¹Ì¾¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(ºÆµ¢Åª¤Ë)¤ò¼¨¤·¤Þ¤¹¡£¥Ñ¥¹Ì¾¤ËÆÃÊ̤ʥȡ¼¥¯¥ó\fI<<ALL FILES>>\fR¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£
+\fB構文\fR:
+\fIExecPermission\fRã®åå‰ã¯ã€\fIrmid\fRコマンドã«å®Ÿè¡Œã‚’許å¯ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã®ãƒ‘スåã§ã™ã€‚スラッシュ(/)ãŠã‚ˆã³ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã§çµ‚ã‚るパスåã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚スラッシュã¯ãƒ•ã‚¡ã‚¤ãƒ«åŒºåˆ‡ã‚Šæ–‡å­—\fIFile\&.separatorChar\fRã§ã™ã€‚スラッシュ(/)ãŠã‚ˆã³ãƒžã‚¤ãƒŠã‚¹ç¬¦å·(\-)ã§çµ‚ã‚るパスåã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚µãƒ–ディレクトリ(å†å¸°çš„ã«)を示ã—ã¾ã™ã€‚パスåã«ç‰¹åˆ¥ãªãƒˆãƒ¼ã‚¯ãƒ³\fI<<ALL FILES>>\fRを指定ã—ãŸå ´åˆã¯ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚
 .sp
-¥Ñ¥¹Ì¾¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£¥Ñ¥¹Ì¾¤Ë¥Þ¥¤¥Ê¥¹Éä¹æ(\-)¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ª¤è¤Ó(ºÆµ¢Åª¤Ë)¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¨¤·¤Þ¤¹¡£
+パスåã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を指定ã—ãŸå ´åˆã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚パスåã«ãƒžã‚¤ãƒŠã‚¹ç¬¦å·(\-)を指定ã—ãŸå ´åˆã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³(å†å¸°çš„ã«)ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚µãƒ–ディレクトリを示ã—ã¾ã™ã€‚
 .sp
 \fBExecOptionPermission\fR
 .sp
-\fIExecOptionPermission\fR¥¯¥é¥¹¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤È¤­¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤ÇÆÃÄê¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¸¢¸Â¤òɽ¤·¤Þ¤¹¡£\fIExecOptionPermission\fR¤Î̾Á°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ÎÃͤǤ¹¡£
+\fIExecOptionPermission\fRクラスã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã¨ãã«\fIrmid\fRコマンドã§ç‰¹å®šã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションを使用ã§ãる権é™ã‚’表ã—ã¾ã™ã€‚\fIExecOptionPermission\fRã®åå‰ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®å€¤ã§ã™ã€‚
 .sp
-\fB¹½Ê¸\fR: ¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É¤¬¸ÂÄêŪ¤Ë¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É¡¦¥Þ¥Ã¥Á¤òɽ¤·¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ï¡¢¥ª¥×¥·¥ç¥ó̾¤½¤Î¤â¤Î¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢Ç¤°Õ¤Î¥ª¥×¥·¥ç¥ó¤òɽ¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¥ª¥×¥·¥ç¥ó̾¤ÎËöÈø¤Ë»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¥É¥Ã¥È(\&.)¤«Åù¹æ(=)¤Îľ¸å¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB構文\fR: オプションã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ãŒé™å®šçš„ã«ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚アスタリスクã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ãƒ»ãƒžãƒƒãƒã‚’表ã—ã¾ã™ã€‚アスタリスク(*)ã¯ã€ã‚ªãƒ—ションåãã®ã‚‚ã®ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚ã¤ã¾ã‚Šã€ä»»æ„ã®ã‚ªãƒ—ションを表ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ã‚ªãƒ—ションåã®æœ«å°¾ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ãƒ‰ãƒƒãƒˆ(\&.)ã‹ç­‰å·(=)ã®ç›´å¾Œã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Îã:
-\fI*\fR¤ä\fI\-Dmydir\&.*\fR¤ä\fI\-Da\&.b\&.c=*\fR¤ÏÍ­¸ú¤Ç¤¹¤¬¡¢\fI*mydir\fR¤ä\fI\-Da*b\fR¤ä\fIab*\fR¤Ï̵¸ú¤Ç¤¹¡£
+例:
+\fI*\fRã‚„\fI\-Dmydir\&.*\fRã‚„\fI\-Da\&.b\&.c=*\fRã¯æœ‰åŠ¹ã§ã™ãŒã€\fI*mydir\fRã‚„\fI\-Da*b\fRã‚„\fIab*\fRã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-\fBrmid¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë\fR
+\fBrmidã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤ËÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òµö²Ä¤¹¤ë¾ì¹ç¤Ï¡¢¸¢¸Â\fIExecPermission\fR¤ª¤è¤Ó\fIExecOptionPermission\fR¤ò¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥½¡¼¥¹¤ËÉÕÍ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(ÈÆÍÑŪ¤Ë)¡£¤³¤ì¤é¤Î¸¢¸Â¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤Î¤Ï\fIrmid\fR¥³¥Þ¥ó¥É¤Î¤ß¤Ê¤Î¤Ç¡¢¤³¤ì¤é¤Î¸¢¸Â¤òÈÆÍÑŪ¤ËÉÕÍ¿¤·¤Æ¤â°ÂÁ´¤Ç¤¹¡£
+\fIrmid\fRコマンドã«æ§˜ã€…ãªã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションを実行ã™ã‚‹æ¨©é™ã‚’許å¯ã™ã‚‹å ´åˆã¯ã€æ¨©é™\fIExecPermission\fRãŠã‚ˆã³\fIExecOptionPermission\fRã‚’ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ã‚½ãƒ¼ã‚¹ã«ä»˜ä¸Žã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(汎用的ã«)。ã“れらã®æ¨©é™ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã®ã¯\fIrmid\fRコマンドã®ã¿ãªã®ã§ã€ã“れらã®æ¨©é™ã‚’汎用的ã«ä»˜ä¸Žã—ã¦ã‚‚安全ã§ã™ã€‚
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ë³Æ¼ï¤Î¼Â¹Ô¸¢¸Â¤òÉÕÍ¿¤¹¤ë¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÎã¤ò¡¢¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+\fIrmid\fRコマンドã«å„種ã®å®Ÿè¡Œæ¨©é™ã‚’付与ã™ã‚‹ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¾‹ã‚’ã€æ¬¡ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -252,11 +252,11 @@
 .if n \{\
 .RE
 .\}
-ºÇ½é¤ËÉÕÍ¿¤µ¤ì¤Æ¤¤¤ë¸¢¸Â¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¡¢¥Ñ¥¹Ì¾¤Ë¤è¤êÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤ë\fIjava\fR¥³¥Þ¥ó¥É¤Î1\&.7\&.0¥ê¥ê¡¼¥¹¤Î¼Â¹Ô¤òµö²Ä¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjava\&.home\fR¤Ë¤¢¤ë¥Ð¡¼¥¸¥ç¥ó¤Î\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¤Î¤ÈƱ¤¸¥Ð¡¼¥¸¥ç¥ó¤¬»ÈÍѤµ¤ì¤ë¤¿¤á¡¢¤½¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£2ÈÖÌܤθ¢¸Â¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢¥Ç¥£¥ì¥¯¥È¥ê\fI/files/apps/rmidcmds\fRÆâ¤ÎǤ°Õ¤Î¥³¥Þ¥ó¥É¤Î¼Â¹Ô¸¢¸Â¤òµö²Ä¤·¤Þ¤¹¡£
+最åˆã«ä»˜ä¸Žã•ã‚Œã¦ã„る権é™ã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã€ãƒ‘スåã«ã‚ˆã‚Šæ˜Žç¤ºçš„ã«æŒ‡å®šã•ã‚Œã‚‹\fIjava\fRコマンドã®1\&.7\&.0リリースã®å®Ÿè¡Œã‚’許å¯ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIjava\&.home\fRã«ã‚ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®\fIjava\fRコマンドを使用ã—ã¾ã™ã€‚\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã®ã¨åŒã˜ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒä½¿ç”¨ã•ã‚Œã‚‹ãŸã‚ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。2番目ã®æ¨©é™ã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã¦ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fI/files/apps/rmidcmds\fR内ã®ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ã®å®Ÿè¡Œæ¨©é™ã‚’許å¯ã—ã¾ã™ã€‚
 .sp
-3ÈÖÌܤËÉÕÍ¿¤µ¤ì¤Æ¤¤¤ë¸¢¸Â\fIExecOptionPermission\fR¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò\fI/files/policies/group\&.policy\fR¤È¤·¤ÆÄêµÁ¤·¤Æ¤¤¤ëµ¯Æ°¥°¥ë¡¼¥×¤Î³«»Ï¤òµö²Ä¤·¤Þ¤¹¡£¼¡¤Î¸¢¸Â¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤¬\fIjava\&.security\&.debug property\fR¤ò»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£ºÇ¸å¤Î¸¢¸Â¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤¬\fIsun\&.rmi property\fR̾¤Î³¬ÁØÆâ¤ÎǤ°Õ¤Î¥×¥í¥Ñ¥Æ¥£¤ò»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£
+3番目ã«ä»˜ä¸Žã•ã‚Œã¦ã„る権é™\fIExecOptionPermission\fRã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã¦ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fI/files/policies/group\&.policy\fRã¨ã—ã¦å®šç¾©ã—ã¦ã„る起動グループã®é–‹å§‹ã‚’許å¯ã—ã¾ã™ã€‚次ã®æ¨©é™ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ãŒ\fIjava\&.security\&.debug property\fRを使用ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¦ã„ã¾ã™ã€‚最後ã®æ¨©é™ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ãŒ\fIsun\&.rmi property\fRåã®éšŽå±¤å†…ã®ä»»æ„ã®ãƒ—ロパティを使用ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¦ã„ã¾ã™ã€‚
 .sp
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Æ\fIrmid\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢\fIrmid\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava\&.security\&.policy\fR¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¦\fIrmid\fRコマンドを起動ã™ã‚‹ã«ã¯ã€\fIrmid\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava\&.security\&.policy\fRプロパティを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 \fIrmid \-J\-Djava\&.security\&.policy=rmid\&.policy\fR\&.
 .RE
@@ -271,9 +271,9 @@
 .\}
 <policyClassName>
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤Ï½½Ê¬¤Ê½ÀÆðÀ­¤¬ÆÀ¤é¤ì¤Ê¤¤¾ì¹ç¡¢´ÉÍý¼Ô¤Ï¡¢\fIrmid\fR¤Îµ¯Æ°»þ¤Ë¡¢\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤¬½ê°¤¹¤ë¥¯¥é¥¹¤Î̾Á°¤ò»ØÄꤷ¤Æ¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+デフォルトã®å‹•ä½œã§ã¯å分ãªæŸ”軟性ãŒå¾—られãªã„å ´åˆã€ç®¡ç†è€…ã¯ã€\fIrmid\fRã®èµ·å‹•æ™‚ã«ã€\fIcheckExecCommand\fRメソッドãŒæ‰€å±žã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’指定ã—ã¦ã€\fIrmid\fRコマンドãŒå®Ÿè¡Œã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fIpolicyClassName\fR¤Ë¤Ï¡¢°ú¿ô¤Ê¤·¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤ò»ý¤Á¡¢¼¡¤Î¤è¤¦¤Ê\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ëpublic¥¯¥é¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIpolicyClassName\fRã«ã¯ã€å¼•æ•°ãªã—ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’æŒã¡ã€æ¬¡ã®ã‚ˆã†ãª\fIcheckExecCommand\fRメソッドを実装ã—ã¦ã„ã‚‹publicクラスを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -285,7 +285,7 @@
 .if n \{\
 .RE
 .\}
-µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ëÁ°¤Ë¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ý¥ê¥·¡¼¤Î\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤Î¤È¤­¡¢µ¯Æ°¥°¥ë¡¼¥×¤Îµ­½Ò»Ò¤È¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Î´°Á´¤Ê¥³¥Þ¥ó¥É¤ò´Þ¤àÇÛÎó¤ò¤½¤Î¥á¥½¥Ã¥É¤ËÅϤ·¤Þ¤¹¡£\fIcheckExecCommand\fR¤¬\fISecurityException\fR¤ò¥¹¥í¡¼¤¹¤ë¤È¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¤½¤Îµ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤»¤º¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Îµ¯Æ°¤ò»î¹Ô¤·¤Æ¤¤¤ë¸Æ½Ð¤·Â¦¤Ë¤Ï\fIActivationException\fR¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
+起動グループを開始ã™ã‚‹å‰ã«ã€\fIrmid\fRコマンドã¯ã€ãƒãƒªã‚·ãƒ¼ã®\fIcheckExecCommand\fRメソッドを呼ã³å‡ºã—ã¾ã™ã€‚ã“ã®ã¨ãã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ã®è¨˜è¿°å­ã¨ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã®å®Œå…¨ãªã‚³ãƒžãƒ³ãƒ‰ã‚’å«ã‚€é…列をãã®ãƒ¡ã‚½ãƒƒãƒ‰ã«æ¸¡ã—ã¾ã™ã€‚\fIcheckExecCommand\fRãŒ\fISecurityException\fRをスローã™ã‚‹ã¨ã€\fIrmid\fRコマンドã¯ãã®èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã›ãšã€ã‚ªãƒ–ジェクトã®èµ·å‹•ã‚’試行ã—ã¦ã„る呼出ã—å´ã«ã¯\fIActivationException\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -298,18 +298,18 @@
 .\}
 none
 .sp
-\fIsun\&.rmi\&.activation\&.execPolicy\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ¬\fInone\fR¤Î¾ì¹ç¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¥³¥Þ¥ó¥É¤ò¤Þ¤Ã¤¿¤¯¸¡¾Ú¤·¤Þ¤»¤ó¡£
+\fIsun\&.rmi\&.activation\&.execPolicy\fRプロパティã®å€¤ãŒ\fInone\fRã®å ´åˆã€\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’ã¾ã£ãŸã検証ã—ã¾ã›ã‚“。
 .RE
 .RE
 .PP
 \-log \fIdir\fR
 .RS 4
-µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤ª¤è¤Ó´ØÏ¢¾ðÊó¤ò½ñ¤­¹þ¤à¤Î¤Ë»ÈÍѤ¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ë¡¢log¤È¤¤¤¦¥í¥°¡¦¥Ç¥£¥ì¥¯¥È¥ê¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+起動システム・デーモンãŒãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãŠã‚ˆã³é–¢é€£æƒ…報を書ã込むã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ã‚’指定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIrmid\fRコマンドを実行ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã€logã¨ã„ã†ãƒ­ã‚°ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-port \fIport\fR
 .RS 4
-¥ì¥¸¥¹¥È¥ê¤¬»ÈÍѤ¹¤ë¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤Ï¡¢¤³¤Î¥ì¥¸¥¹¥È¥ê¤ÎÃæ¤Ç¡¢\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤È¤¤¤¦Ì¾Á°¤Ç\fIActivationSystem\fR¤ò¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£¥í¡¼¥«¥ë¡¦¥Þ¥·¥ó¾å¤Î\fIActivationSystem\fR¤Ï¡¢¼¡¤Î¤è¤¦¤Ë\fINaming\&.lookup\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ë¤è¤Ã¤Æ¼èÆÀ¤Ç¤­¤Þ¤¹¡£
+レジストリãŒä½¿ç”¨ã™ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚起動システム・デーモンã¯ã€ã“ã®ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã®ä¸­ã§ã€\fIjava\&.rmi\&.activation\&.ActivationSystem\fRã¨ã„ã†åå‰ã§\fIActivationSystem\fRã‚’ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚ローカル・マシン上ã®\fIActivationSystem\fRã¯ã€æ¬¡ã®ã‚ˆã†ã«\fINaming\&.lookup\fRメソッドを呼ã³å‡ºã™ã“ã¨ã«ã‚ˆã£ã¦å–å¾—ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -328,16 +328,16 @@
 .PP
 \-stop
 .RS 4
-\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿¥Ý¡¼¥È¤Î¡¢¸½ºß¤Î\fIrmid\fR¥³¥Þ¥ó¥É¤Î¸Æ½Ð¤·¤òÄä»ß¤·¤Þ¤¹¡£¥Ý¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ý¡¼¥È1098¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë\fIrmid\fR¤Î¸Æ½Ð¤·¤òÄä»ß¤·¤Þ¤¹¡£
+\fI\-port\fRオプションã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒãƒ¼ãƒˆã®ã€ç¾åœ¨ã®\fIrmid\fRコマンドã®å‘¼å‡ºã—ã‚’åœæ­¢ã—ã¾ã™ã€‚ãƒãƒ¼ãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ãƒãƒ¼ãƒˆ1098ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹\fIrmid\fRã®å‘¼å‡ºã—ã‚’åœæ­¢ã—ã¾ã™ã€‚
 .RE
-.SH "´Ä¶­ÊÑ¿ô"
+.SH "環境変数"
 .PP
 CLASSPATH
 .RS 4
-¥æ¡¼¥¶¡¼ÄêµÁ¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò¥·¥¹¥Æ¥à¤Ë»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£Îã:
+ユーザー定義クラスã¸ã®ãƒ‘スをシステムã«æŒ‡å®šã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚例:
 \fI\&.:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/rmiregistry.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/rmiregistry.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmiregistry
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmiregistry" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmiregistry" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmiregistry \- ¸½ºß¤Î¥Û¥¹¥È¤Î»ØÄꤷ¤¿¥Ý¡¼¥È¾å¤Ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤ò³«»Ï¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+rmiregistry \- ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆã®æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆä¸Šã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト・レジストリを開始ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,11 +64,11 @@
 .PP
 \fIport\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤ò³«»Ï¤¹¤ë¸½ºß¤Î¥Û¥¹¥È¾å¤Î\fIport\fR¤Î¿ô¡£
+リモート・オブジェクト・レジストリを開始ã™ã‚‹ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆä¸Šã®\fIport\fRã®æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIrmiregistry\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥Û¥¹¥È¤Î»ØÄꤷ¤¿¥Ý¡¼¥È¾å¤Ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤òºîÀ®¤·¡¢³«»Ï¤·¤Þ¤¹¡£port¤Î»ØÄê¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥ì¥¸¥¹¥È¥ê¤Ï¥Ý¡¼¥È1099¤Ç³«»Ï¤·¤Þ¤¹¡£\fIrmiregistry\fR¥³¥Þ¥ó¥É¤Ë¡¢½ÐÎϵ¡Ç½¤Ï¤¢¤ê¤Þ¤»¤ó¡£Ä̾¤³¤ì¤Ï¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fIrmiregistry\fRコマンドã¯ã€ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆã®æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆä¸Šã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト・レジストリを作æˆã—ã€é–‹å§‹ã—ã¾ã™ã€‚portã®æŒ‡å®šã‚’çœç•¥ã—ãŸå ´åˆã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã¯ãƒãƒ¼ãƒˆ1099ã§é–‹å§‹ã—ã¾ã™ã€‚\fIrmiregistry\fRコマンドã«ã€å‡ºåŠ›æ©Ÿèƒ½ã¯ã‚ã‚Šã¾ã›ã‚“。通常ã€ã“ã‚Œã¯ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -80,20 +80,20 @@
 .RE
 .\}
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤¹¡£Æ±°ì¥Û¥¹¥È¤ÎRMI¥µ¡¼¥Ð¡¼¤¬¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò̾Á°¤Ë¥Ð¥¤¥ó¥É¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¼¡¤Ë¡¢¥í¡¼¥«¥ë¤ª¤è¤Ó¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¸¡º÷¤·¡¢¥ê¥â¡¼¥È¡¦¥á¥½¥Ã¥É¤Î¸Æ½Ð¤·¤ò¹Ô¤¤¤Þ¤¹¡£
+リモート・オブジェクト・レジストリã¯ã€ãƒ–ートストラップã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã™ã€‚åŒä¸€ãƒ›ã‚¹ãƒˆã®RMIサーãƒãƒ¼ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをåå‰ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚次ã«ã€ãƒ­ãƒ¼ã‚«ãƒ«ãŠã‚ˆã³ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトを検索ã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã®å‘¼å‡ºã—ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
-¥ì¥¸¥¹¥È¥ê¤Ï¡¢°ìÈÌŪ¤Ë¡¢ºÇ½é¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃÖ¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤³¤Ç¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤½¤Î¸å¡¢¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó»ØÄê¤Î¥µ¥Ý¡¼¥È¤òÄ󶡤·¡¢Â¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òõ¤·¤Þ¤¹¡£
+レジストリã¯ã€ä¸€èˆ¬çš„ã«ã€æœ€åˆã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ä½ç½®ã‚’指定ã—ã¾ã™ã€‚ãã“ã§ã€ã‚¢ãƒ—リケーションã¯ãƒ¡ã‚½ãƒƒãƒ‰ã‚’呼ã³å‡ºã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã®å¾Œã€ãã®ã‚ªãƒ–ジェクトã¯ã‚¢ãƒ—リケーション指定ã®ã‚µãƒãƒ¼ãƒˆã‚’æä¾›ã—ã€ä»–ã®ã‚ªãƒ–ジェクトを探ã—ã¾ã™ã€‚
 .PP
-\fIjava\&.rmi\&.registry\&.LocateRegistry\fR¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¡¢¤Þ¤¿¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤È¥Ý¡¼¥È¤ÇÆ°ºî¤¹¤ë¥ì¥¸¥¹¥È¥ê¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fIjava\&.rmi\&.registry\&.LocateRegistry\fRクラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã€ã¾ãŸã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã¨ãƒãƒ¼ãƒˆã§å‹•ä½œã™ã‚‹ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã‚’å–å¾—ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjava\&.rmi\&.Naming\fR¥¯¥é¥¹¤ÎURL¥Ù¡¼¥¹¡¦¥á¥½¥Ã¥É¤Ï¥ì¥¸¥¹¥È¥ê¤ËÂФ·¤ÆÁàºî¤ò¼Â¹Ô¤·¡¢Ç¤°Õ¤Î¥Û¥¹¥È¤ª¤è¤Ó¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ç¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¸¡º÷¤Ë»ÈÍѤǤ­¤Þ¤¹¡£Ã±½ã̾(ʸ»úÎó)¤ò¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Ð¥¤¥ó¥É¤·¡¢¿·¤·¤¤Ì¾Á°¤ò¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËºÆ¥Ð¥¤¥ó¥É¤·(¸Å¤¤¥Ð¥¤¥ó¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É)¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥ó¥Ð¥¤¥ó¥É¤·¡¢¥ì¥¸¥¹¥È¥ê¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ëURL¤ò¥ê¥¹¥Èɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjava\&.rmi\&.Naming\fRクラスã®URLベース・メソッドã¯ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã«å¯¾ã—ã¦æ“作を実行ã—ã€ä»»æ„ã®ãƒ›ã‚¹ãƒˆãŠã‚ˆã³ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã§ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®æ¤œç´¢ã«ä½¿ç”¨ã§ãã¾ã™ã€‚å˜ç´”å(文字列)をリモート・オブジェクトã«ãƒã‚¤ãƒ³ãƒ‰ã—ã€æ–°ã—ã„åå‰ã‚’リモート・オブジェクトã«å†ãƒã‚¤ãƒ³ãƒ‰ã—(å¤ã„ãƒã‚¤ãƒ³ãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰)ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをアンãƒã‚¤ãƒ³ãƒ‰ã—ã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã‚‹URLをリスト表示ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-J
 .RS 4
-Java¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢\fI\-J\fR¤Î¸å¤í¤Ë³¤¯¥ª¥×¥·¥ç¥ó¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤Ë°ú¤­ÅϤ·¤Þ¤¹(\fI\-J\fR¤È¥ª¥×¥·¥ç¥ó¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤ÏÆþ¤ì¤Þ¤»¤ó)¡£
+Javaオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€\fI\-J\fRã®å¾Œã‚ã«ç¶šãオプションをJavaインタプリタã«å¼•ã渡ã—ã¾ã™(\fI\-J\fRã¨ã‚ªãƒ—ションã®é–“ã«ã‚¹ãƒšãƒ¼ã‚¹ã¯å…¥ã‚Œã¾ã›ã‚“)。
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -114,7 +114,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI¡Öjava\&.rmi\&.registry\&.LocateRegistry¡×\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/registry/LocateRegistry\&.html)
+\fI「java\&.rmi\&.registry\&.LocateRegistryã€\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/registry/LocateRegistry\&.html)
 .RE
 .sp
 .RS 4
@@ -125,7 +125,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI¡Öjava\&.rmi\&.Naming class description¡×\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/Naming\&.html)
+\fI「java\&.rmi\&.Naming class descriptionã€\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/Naming\&.html)
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/schemagen.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/schemagen.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: schemagen
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "schemagen" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "schemagen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-schemagen \- Java¥¯¥é¥¹Æâ¤Ç»²¾È¤µ¤ì¤Æ¤¤¤ë¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤´¤È¤Ë¥¹¥­¡¼¥Þ¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+schemagen \- Javaクラス内ã§å‚ç…§ã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã”ã¨ã«ã‚¹ã‚­ãƒ¼ãƒžã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,19 +64,19 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIjava\-files\fR
 .RS 4
-½èÍý¤¹¤ëJava¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡£
+処ç†ã™ã‚‹Javaクラス・ファイル。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤Ï¡¢Java¥¯¥é¥¹Æâ¤Ç»²¾È¤µ¤ì¤Æ¤¤¤ë¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤´¤È¤Ë1¤Ä¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¸½ºß¡¢À¸À®¤µ¤ì¤ë¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ÏÀ©¸æ¤Ç¤­¤Þ¤»¤ó¡£¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë̾¤òÀ©¸æ¤¹¤ë¾ì¹ç¤Ï¡¢http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/schemagenTask\&.html¤Ë¤¢¤ë
-¡ÖUsing SchemaGen with Ant¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+スキーマ・ジェãƒãƒ¬ãƒ¼ã‚¿ã¯ã€Javaクラス内ã§å‚ç…§ã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã”ã¨ã«1ã¤ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚ç¾åœ¨ã€ç”Ÿæˆã•ã‚Œã‚‹ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã¯åˆ¶å¾¡ã§ãã¾ã›ã‚“。スキーマ・ファイルåを制御ã™ã‚‹å ´åˆã¯ã€http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/schemagenTask\&.htmlã«ã‚ã‚‹
+「Using SchemaGen with Antã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Îbin¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ëŬÀÚ¤Ê\fIschemagen\fR¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤ò»ÈÍѤ·¤Æ¡¢¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤òµ¯Æ°¤·¤Þ¤¹¡£¸½ºß¤Î¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¤¤º¤ì¤â½èÍý¤Ç¤­¤Þ¤¹¡£
+プラットフォームã®binディレクトリã«ã‚ã‚‹é©åˆ‡ãª\fIschemagen\fRシェル・スクリプトを使用ã—ã¦ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ã‚¸ã‚§ãƒãƒ¬ãƒ¼ã‚¿ã‚’èµ·å‹•ã—ã¾ã™ã€‚ç¾åœ¨ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ã‚¸ã‚§ãƒãƒ¬ãƒ¼ã‚¿ã¯ã€Javaソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã„ãšã‚Œã‚‚処ç†ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,44 +89,44 @@
 .RE
 .\}
 .PP
-java¥Õ¥¡¥¤¥ë¤¬Â¾¤Î¥¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ì¤é¤Î¥¯¥é¥¹¤Ë¥·¥¹¥Æ¥à\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤Ç¥¢¥¯¥»¥¹¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ\fIschemagen\fR¥³¥Þ¥ó¥É¡¦¥é¥¤¥ó¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¡¢¤Þ¤¿¤Ï»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¹¥­¡¼¥Þ¤ÎÀ¸À®»þ¤Ë¥¨¥é¡¼¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+javaファイルãŒä»–ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹å ´åˆã€ãれらã®ã‚¯ãƒ©ã‚¹ã«ã‚·ã‚¹ãƒ†ãƒ \fICLASSPATH\fR環境変数ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・オプションを指定ã—ã¦\fIschemagen\fRコマンド・ラインã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。å‚ç…§ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã€ã¾ãŸã¯å‚ç…§ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¹ã‚­ãƒ¼ãƒžã®ç”Ÿæˆæ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-d \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥×¥í¥»¥Ã¥µÀ¸À®¤ª¤è¤Ó\fIjavac\fRÀ¸À®¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ—ロセッサ生æˆãŠã‚ˆã³\fIjavac\fR生æˆã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼»ØÄê¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼æŒ‡å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼»ØÄê¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼æŒ‡å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-\fIapt\fR¤Þ¤¿¤Ï\fIjavac\fR¥³¥Þ¥ó¥É¤Î¸Æ½Ð¤·¤Ë»ÈÍѤ¹¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIapt\fRã¾ãŸã¯\fIjavac\fRコマンドã®å‘¼å‡ºã—ã«ä½¿ç”¨ã™ã‚‹ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-episode \fIfile\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë¥¨¥Ô¥½¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイルã”ã¨ã«ã‚¨ãƒ”ソード・ファイルを生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/serialver.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/serialver.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: serialver
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "serialver" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "serialver" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-serialver \- »ØÄꤷ¤¿¥¯¥é¥¹¤Î¥·¥ê¥¢¥ë¡¦¥Ð¡¼¥¸¥ç¥óUID¤òÌᤷ¤Þ¤¹¡£
-.SH "³µÍ×"
+serialver \- 指定ã—ãŸã‚¯ãƒ©ã‚¹ã®ã‚·ãƒªã‚¢ãƒ«ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³UIDを戻ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,35 +64,35 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassnames\fR
 .RS 4
-\fIserialVersionUID\fR¤òÌ᤹¥¯¥é¥¹¤Ç¤¹¡£
+\fIserialVersionUID\fRを戻ã™ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIserialver\fR¥³¥Þ¥ó¥É¤Ï¡¢1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î\fIserialVersionUID\fR¤ò¡¢Å¸³«¤·¤Æ¤¤¤ë¥¯¥é¥¹¤Ø¥³¥Ô¡¼¤¹¤ë¤Î¤ËŬ¤·¤¿·Á¼°¤ÇÊÖ¤·¤Þ¤¹¡£°ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¾ì¹ç¡¢\fIserialver\fR¥³¥Þ¥ó¥É¤Ï»ÈÍÑΨ¹Ô¤ò½ÐÎϤ·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIserialver\fRコマンドã¯ã€1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®\fIserialVersionUID\fRã‚’ã€å±•é–‹ã—ã¦ã„るクラスã¸ã‚³ãƒ”ーã™ã‚‹ã®ã«é©ã—ãŸå½¢å¼ã§è¿”ã—ã¾ã™ã€‚引数ãªã—ã§å‘¼ã³å‡ºã•ã‚ŒãŸå ´åˆã€\fIserialver\fRコマンドã¯ä½¿ç”¨çŽ‡è¡Œã‚’出力ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-classpath \fIpath\-files\fR
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¤ª¤è¤Ó¥ê¥½¡¼¥¹¤Î¸¡º÷¥Ñ¥¹¤òÀßÄꤷ¤Þ¤¹¡£¥¯¥é¥¹¤È¥ê¥½¡¼¥¹¤ò¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
+アプリケーションã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒªã‚½ãƒ¼ã‚¹ã®æ¤œç´¢ãƒ‘スを設定ã—ã¾ã™ã€‚クラスã¨ãƒªã‚½ãƒ¼ã‚¹ã‚’コロン(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-show
 .RS 4
-´Êñ¤Ê¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òɽ¼¨¤·¤Þ¤¹¡£´°Á´»ØÄê¤Î¥¯¥é¥¹Ì¾¤òÆþÎϤ·¤Æ¡¢Enter¥­¡¼¤«¡Öɽ¼¨¡×¥Ü¥¿¥ó¤ò²¡¤·¡¢\fIserialVersionUID\fR¤òɽ¼¨¤·¤Þ¤¹¡£
+ç°¡å˜ãªãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’表示ã—ã¾ã™ã€‚完全指定ã®ã‚¯ãƒ©ã‚¹åを入力ã—ã¦ã€Enterキーã‹ã€Œè¡¨ç¤ºã€ãƒœã‚¿ãƒ³ã‚’押ã—ã€\fIserialVersionUID\fRを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-\fIserialver\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤ò¤½¤Î²¾ÁÛ¥Þ¥·¥óÆâ¤ËÆɤ߹þ¤ó¤Ç½é´ü²½¤·¤Þ¤¹¤¬¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤ÎÀßÄê¤Ï¹Ô¤¤¤Þ¤»¤ó¡£¿®Íê¤Ç¤­¤Ê¤¤¥¯¥é¥¹¤È¤È¤â¤Ë\fIserialver\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
+\fIserialver\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’ãã®ä»®æƒ³ãƒžã‚·ãƒ³å†…ã«èª­ã¿è¾¼ã‚“ã§åˆæœŸåŒ–ã—ã¾ã™ãŒã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®è¨­å®šã¯è¡Œã„ã¾ã›ã‚“。信頼ã§ããªã„クラスã¨ã¨ã‚‚ã«\fIserialver\fRコマンドを実行ã™ã‚‹å ´åˆã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¦ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’設定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -104,7 +104,7 @@
 .RE
 .\}
 .PP
-ɬÍפǤ¢¤ì¤Ð¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+å¿…è¦ã§ã‚ã‚Œã°ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¦ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -115,7 +115,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -136,8 +136,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/api/java/io/ObjectStreamClass\&.html¤Ë¤¢¤ë
-\fIjava\&.io\&.ObjectStream\fR¥¯¥é¥¹µ­½Ò
+http://docs\&.oracle\&.com/javase/8/docs/api/java/io/ObjectStreamClass\&.htmlã«ã‚ã‚‹
+\fIjava\&.io\&.ObjectStream\fRクラス記述
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/servertool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/servertool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: servertool
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "servertool" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "servertool" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-servertool \- ³«È¯¼Ô¤¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¡¢Ää»ß¤¹¤ë¤¿¤á¤Î»È¤¤¤ä¤¹¤¤¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£
-.SH "³µÍ×"
+servertool \- 開発者ãŒæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ã€åœæ­¢ã™ã‚‹ãŸã‚ã®ä½¿ã„ã‚„ã™ã„ユーザー・インタフェースをæä¾›ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,35 +64,35 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 commands
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¡£¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・コマンド。コマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIservertool\fR\fIservertool >\fR\fIservertool >\fR
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¤Ï¡¢³«È¯¼Ô¤¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¡¢Ää»ß¤¹¤ë¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ëÍÍ¡¹¤ÊÅý·×¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIservertool\fRコマンドã¯ã€é–‹ç™ºè€…ãŒæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ã€åœæ­¢ã™ã‚‹ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚コマンドライン・コマンドを使用ã™ã‚‹ã¨ã€ã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æ§˜ã€…ãªçµ±è¨ˆæƒ…報をå–å¾—ã§ãã¾ã™ã€‚コマンドをå‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-ORBInitialHost \fInameserverhost\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¤Ç¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¡¢Ãå¿®¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤¹¤ë¥Û¥¹¥È¡¦¥Þ¥·¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fInameserverhost\fRÃͤϡ¢\fIorb\fR¤¬¼Â¹Ô¤µ¤ì¡¢¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤·¤Æ¤¤¤ë¥Ý¡¼¥È¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢Ãͤϥǥե©¥ë¥È¤Ç\fIlocalhost\fR¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIorbd\fR¤È\fIservertool\fR¤¬°Û¤Ê¤ë¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIorbd\fR¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Û¥¹¥È¤Î̾Á°¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯å¿…é ˆã§ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã€ç€ä¿¡ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã™ã‚‹ãƒ›ã‚¹ãƒˆãƒ»ãƒžã‚·ãƒ³ã‚’指定ã—ã¾ã™ã€‚\fInameserverhost\fR値ã¯ã€\fIorb\fRãŒå®Ÿè¡Œã•ã‚Œã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã—ã¦ã„ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€å€¤ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§\fIlocalhost\fRã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIorbd\fRã¨\fIservertool\fRãŒç•°ãªã‚‹ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIorbd\fRãŒå®Ÿè¡Œã•ã‚Œã¦ã„るホストã®åå‰ã¾ãŸã¯IPアドレスを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-Oracle Solaris¤Ç¤Ï¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¾å¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fInameserverport\fRÃͤˤϡ¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+\fB注æ„:\fR
+Oracle Solarisã§ã¯ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆä¸Šã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fInameserverport\fR値ã«ã¯ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥³¥Þ¥ó¥É"
+.SH "コマンド"
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¤Þ¤¿¤Ï»ÈÍѤ»¤º¤Ëµ¯Æ°¤Ç¤­¤Þ¤¹¡£
+\fIservertool\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€ã¾ãŸã¯ä½¿ç”¨ã›ãšã«èµ·å‹•ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -102,8 +102,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIservertool\fR¤Îµ¯Æ°»þ¤Ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤Ë¥³¥Þ¥ó¥ÉÆþÎϤòµá¤á¤ë\fIservertool\fR¥×¥í¥ó¥×¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹:
-\fIservertool >\fR¡£
+\fIservertool\fRã®èµ·å‹•æ™‚ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ãªã‹ã£ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ールã«ã‚³ãƒžãƒ³ãƒ‰å…¥åŠ›ã‚’求ã‚ã‚‹\fIservertool\fRプロンプトãŒè¡¨ç¤ºã•ã‚Œã¾ã™:
+\fIservertool >\fR。
 .RE
 .sp
 .RS 4
@@ -114,75 +114,75 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIservertool\fR¤Îµ¯Æ°»þ¤Ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Java IDL Server Tool¤¬µ¯Æ°¤·¤Æ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢½ªÎ»¤·¤Þ¤¹¡£
+\fIservertool\fRã®èµ·å‹•æ™‚ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ãŸå ´åˆã€Java IDL Server ToolãŒèµ·å‹•ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã€çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 register \-server \fIserver\-class\-name\fR \-classpath \fIclasspath\-to\-server\fR [ \-applicationName \fIapplication\-name\fR \-args \fIargs\-to\-server\fR \-vmargs \fIflags\-for\-JVM\fR ]
 .RS 4
-Object Request Broker Daemon (ORBD)¤Ë¿·µ¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬Ì¤ÅÐÏ¿¤Î¾ì¹ç¡¢ÅÐÏ¿¤·¤Æ¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fI\-server\fR¥ª¥×¥·¥ç¥ó¤Ç¼±Ê̤µ¤ì¤ë¥µ¡¼¥Ð¡¼¤Î\fI¥á¥¤¥ó\fR¡¦¥¯¥é¥¹Æâ¤Ç¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤Ï¡¢\fIpublic static void install(org\&.omg\&.CORBA\&.ORB)\fR¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ê¡¢³«È¯¼Ô¤Ï¥Ç¡¼¥¿¥Ù¡¼¥¹¡¦¥¹¥­¡¼¥Þ¤ÎºîÀ®¤Ê¤ÉÆȼ«¤Î¥µ¡¼¥Ð¡¼¡¦¥¤¥ó¥¹¥È¡¼¥ëÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+Object Request Broker Daemon (ORBD)ã«æ–°è¦æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒæœªç™»éŒ²ã®å ´åˆã€ç™»éŒ²ã—ã¦ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fI\-server\fRオプションã§è­˜åˆ¥ã•ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ã®\fIメイン\fR・クラス内ã§ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€\fIpublic static void install(org\&.omg\&.CORBA\&.ORB)\fRã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚インストール・メソッドã¯ã‚ªãƒ—ションã§ã‚ã‚Šã€é–‹ç™ºè€…ã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¹ã‚­ãƒ¼ãƒžã®ä½œæˆãªã©ç‹¬è‡ªã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 unregister \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR
 .RS 4
-¥µ¡¼¥Ð¡¼ID¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó̾¤Ç¡¢¥µ¡¼¥Ð¡¼¤òORBD¤«¤éÅÐÏ¿²ò½ü¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fI\-server\fR¥ª¥×¥·¥ç¥ó¤Ç¼±Ê̤µ¤ì¤ë¥µ¡¼¥Ð¡¼¤Î\fI¥á¥¤¥ó\fR¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥ó¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£
-\fIuninstall\fR¥á¥½¥Ã¥É¤Ï¡¢\fIpublic static void uninstall(org\&.omg\&.CORBA\&.ORB)\fR¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIuninstall\fR¥á¥½¥Ã¥É¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ê¡¢³«È¯¼Ô¤Ï\fIinstall\fR¥á¥½¥Ã¥É¤ÎÆ°ºî¤Î¼è¾Ã¤Ê¤É¡¢Æȼ«¤Î¥µ¡¼¥Ð¡¼¡¦¥¢¥ó¥¤¥ó¥¹¥È¡¼¥ëÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+サーãƒãƒ¼IDã¾ãŸã¯ã‚¢ãƒ—リケーションåã§ã€ã‚µãƒ¼ãƒãƒ¼ã‚’ORBDã‹ã‚‰ç™»éŒ²è§£é™¤ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fI\-server\fRオプションã§è­˜åˆ¥ã•ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ã®\fIメイン\fR・クラス内ã§ã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚
+\fIuninstall\fRメソッドã¯ã€\fIpublic static void uninstall(org\&.omg\&.CORBA\&.ORB)\fRã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIuninstall\fRメソッドã¯ã‚ªãƒ—ションã§ã‚ã‚Šã€é–‹ç™ºè€…ã¯\fIinstall\fRメソッドã®å‹•ä½œã®å–消ãªã©ã€ç‹¬è‡ªã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 getserverid \-applicationName \fIapplication\-name\fR
 .RS 4
-\fIapplication\-name\fRÃͤËÂбþ¤¹¤ë¥µ¡¼¥Ð¡¼ID¤òÊÖ¤·¤Þ¤¹¡£
+\fIapplication\-name\fR値ã«å¯¾å¿œã™ã‚‹ã‚µãƒ¼ãƒãƒ¼IDã‚’è¿”ã—ã¾ã™ã€‚
 .RE
 .PP
 list
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î±Ê³¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ë¾ðÊó¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æƒ…報を一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 listappnames
 .RS 4
-¸½ºßORBD¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¡¼¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó̾¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ç¾åœ¨ORBDã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒãƒ¼ã®ã‚¢ãƒ—リケーションåを一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 listactive
 .RS 4
-ORBD¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¡¢¸½ºß¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î±Ê³¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ë¾ðÊó¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ORBDã«ã‚ˆã£ã¦èµ·å‹•ã•ã‚Œã€ç¾åœ¨å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æƒ…報を一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 locate \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR [ \-endpointType \fIendpointType\fR ]
 .RS 4
-ÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤ÇºîÀ®¤·¤¿¤¹¤Ù¤Æ¤ÎORB¤ÎÆÃÄê¤Î¥¿¥¤¥×¤Ë¤Ä¤¤¤Æ¥¨¥ó¥É¥Ý¥¤¥ó¥È(¥Ý¡¼¥È)¤ò¸¡½Ð¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£\fIendpointType\fRÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥µ¡¼¥Ð¡¼¤ÎORB¤´¤È¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤ëplain¥¿¥¤¥×¤Þ¤¿¤Ïnon\-protected¥¿¥¤¥×¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£
+登録ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã§ä½œæˆã—ãŸã™ã¹ã¦ã®ORBã®ç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã«ã¤ã„ã¦ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ(ãƒãƒ¼ãƒˆ)を検出ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚\fIendpointType\fR値ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚µãƒ¼ãƒãƒ¼ã®ORBã”ã¨ã«é–¢é€£ä»˜ã‘られã¦ã„ã‚‹plainタイプã¾ãŸã¯non\-protectedタイプã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãŒè¿”ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 locateperorb \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR [ \-orbid \fIORB\-name\fR ]
 .RS 4
-ÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤ÎÆÃÄê¤ÎObject Request Broker (ORB)¤ÇÅÐÏ¿¤µ¤ì¤¿¥¨¥ó¥É¥Ý¥¤¥ó¥È(¥Ý¡¼¥È)¤ò¸¡½Ð¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£\fIorbid\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÎ\fI""\fR¤¬\fIorbid\fR¤Ë³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£ORB¤¬¶õʸ»úÎó¤Î\fIorbid\fR¤ÇºîÀ®¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ÅÐÏ¿¤·¤¿¥Ý¡¼¥È¤¬¤¹¤Ù¤ÆÊÖ¤µ¤ì¤Þ¤¹¡£
+登録ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã®ç‰¹å®šã®Object Request Broker (ORB)ã§ç™»éŒ²ã•ã‚ŒãŸã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ(ãƒãƒ¼ãƒˆ)を検出ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚\fIorbid\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã®\fI""\fRãŒ\fIorbid\fRã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚ORBãŒç©ºæ–‡å­—列ã®\fIorbid\fRã§ä½œæˆã•ã‚Œã¦ã„ã‚‹å ´åˆã€ç™»éŒ²ã—ãŸãƒãƒ¼ãƒˆãŒã™ã¹ã¦è¿”ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 orblist \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR
 .RS 4
-¥µ¡¼¥Ð¡¼¾å¤ËÄêµÁ¤µ¤ì¤¿ORB¤Î\fIORBId\fR¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£\fIORBId\fR¤Ï¥µ¡¼¥Ð¡¼¤ÇºîÀ®¤µ¤ì¤¿ORB¤Îʸ»úÎó̾¤Ç¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£
+サーãƒãƒ¼ä¸Šã«å®šç¾©ã•ã‚ŒãŸORBã®\fIORBId\fRを一覧表示ã—ã¾ã™ã€‚\fIORBId\fRã¯ã‚µãƒ¼ãƒãƒ¼ã§ä½œæˆã•ã‚ŒãŸORBã®æ–‡å­—列åã§ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 shutdown \-serverid \fIserver\-id\fR | \-applicationName application\-name
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤¿¥¢¥¯¥Æ¥£¥Ö¤Ê¥µ¡¼¥Ð¡¼¤òÄä»ß¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Î¼Â¹ÔÃæ¤Ë¡¢\fI\-serverid\fR¥Ñ¥é¥á¡¼¥¿¤Þ¤¿¤Ï\fI\-applicationName\fR¥Ñ¥é¥á¡¼¥¿¤Ç»ØÄꤵ¤ì¤¿¥¯¥é¥¹Æâ¤ËÄêµÁ¤µ¤ì¤¿\fIshutdown\fR¥á¥½¥Ã¥É¤â¸Æ¤Ó½Ð¤µ¤ì¤Æ¥µ¡¼¥Ð¡¼¡¦¥×¥í¥»¥¹¤òÄä»ß¤·¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚ŒãŸã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚µãƒ¼ãƒãƒ¼ã‚’åœæ­¢ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®å®Ÿè¡Œä¸­ã«ã€\fI\-serverid\fRパラメータã¾ãŸã¯\fI\-applicationName\fRパラメータã§æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹å†…ã«å®šç¾©ã•ã‚ŒãŸ\fIshutdown\fRメソッドも呼ã³å‡ºã•ã‚Œã¦ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒ—ロセスをåœæ­¢ã—ã¾ã™ã€‚
 .RE
 .PP
 startup \-serverid \fIserver\-id\fR | \-applicationName application\-name
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤Þ¤¿¤Ï¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤¬¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¤¹¤Ç¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã¾ãŸã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãŒã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒã™ã§ã«å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 help
 .RS 4
-\fIservertool\fR¥³¥Þ¥ó¥É¤ò²ð¤·¤Æ¥µ¡¼¥Ð¡¼¤¬ÍøÍѤǤ­¤ë¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドを介ã—ã¦ã‚µãƒ¼ãƒãƒ¼ãŒåˆ©ç”¨ã§ãã‚‹ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’リストã—ã¾ã™ã€‚
 .RE
 .PP
 quit
 .RS 4
-\fIservertool\fR¥³¥Þ¥ó¥É¤ò½ªÎ»¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドを終了ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/tnameserv.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/tnameserv.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: tnameserv
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "tnameserv" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "tnameserv" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-tnameserv \- ¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¡£
-.SH "³µÍ×"
+tnameserv \- インタフェース定義言語(IDL)。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,27 +64,27 @@
 .PP
 \-ORBInitialPort \fInameserverport\fR
 .RS 4
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬ORB¤Î\fIresolve_initial_references\fR¥á¥½¥Ã¥É¤È\fIlist_initial_references\fR¥á¥½¥Ã¥É¤Î¼ÂÁõ¤Ë»ÈÍѤ¹¤ë¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥×¥í¥È¥³¥ë¤ò¥ê¥¹¥Ë¥ó¥°¤¹¤ë½é´ü¥Ý¡¼¥È¤Ç¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒORBã®\fIresolve_initial_references\fRメソッドã¨\fIlist_initial_references\fRメソッドã®å®Ÿè£…ã«ä½¿ç”¨ã™ã‚‹ãƒ–ートストラップ・プロトコルをリスニングã™ã‚‹åˆæœŸãƒãƒ¼ãƒˆã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java IDL¤Ë¤Ï¡¢Object Request Broker Daemon (ORBD)¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ORBD¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥µ¡¼¥Ó¥¹¡¢°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ª¤è¤Ó¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò´Þ¤à¥Ç¡¼¥â¥ó¡¦¥×¥í¥»¥¹¤Ç¤¹¡£Java IDL¤Î¤¹¤Ù¤Æ¤Î¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ç¤ÏORBD¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¤¬¡¢°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ëÎã¤Ç¤Ï¡¢\fIorbd\fR¤Î¤«¤ï¤ê¤Ë\fItnameserv\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+Java IDLã«ã¯ã€Object Request Broker Daemon (ORBD)ãŒå«ã¾ã‚Œã¾ã™ã€‚ORBDã¯ã€ãƒ–ートストラップ・サービスã€ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŠã‚ˆã³ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’å«ã‚€ãƒ‡ãƒ¼ãƒ¢ãƒ³ãƒ»ãƒ—ロセスã§ã™ã€‚Java IDLã®ã™ã¹ã¦ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã§ã¯ORBDを使用ã—ã¦ã„ã¾ã™ãŒã€ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ä¾‹ã§ã¯ã€\fIorbd\fRã®ã‹ã‚ã‚Šã«\fItnameserv\fRを使用ã§ãã¾ã™ã€‚
 .PP
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Ë¤¢¤ë
-orbd(1)¤Þ¤¿¤Ï¡ÖNaming Service¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã«ã‚ã‚‹
+orbd(1)ã¾ãŸã¯ã€ŒNaming Serviceã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-CORBA¤ÎCOS (Common Object Services)¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤¬¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥Ç¥£¥ì¥¯¥È¥ê¹½Â¤¤òÄ󶡤·¤Æ¤¤¤ë¤Î¤ÈƱ¤¸¤è¤¦¤Ë¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ËÂФ·¤Æ¥Ä¥ê¡¼¹½Â¤¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄ󶡤·¤Þ¤¹¡£Java IDL¤Î°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤¢¤ë\fItnameserv\fR¤Ï¡¢COS¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Î»ÅÍͤòñ½ã¤Ê·Á¤Ç¼ÂÁõ¤·¤¿¤â¤Î¤Ç¤¹¡£
+CORBAã®COS (Common Object Services)ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãŒãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªæ§‹é€ ã‚’æä¾›ã—ã¦ã„ã‚‹ã®ã¨åŒã˜ã‚ˆã†ã«ã€ã‚ªãƒ–ジェクトå‚ç…§ã«å¯¾ã—ã¦ãƒ„リー構造ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’æä¾›ã—ã¾ã™ã€‚Java IDLã®ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚ã‚‹\fItnameserv\fRã¯ã€COSãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã®ä»•æ§˜ã‚’å˜ç´”ãªå½¢ã§å®Ÿè£…ã—ãŸã‚‚ã®ã§ã™ã€‚
 .PP
-¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ë̾Á°¤Ç³ÊǼ¤µ¤ì¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤È̾Á°¤Î¥Ú¥¢¤Ï¡¢¤½¤ì¤¾¤ì¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÁȤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ï¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¢¤ê¡¢¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ÈƱ¤¸ÊÔÀ®µ¡Ç½¤ò»ý¤Á¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î²¼¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ÎÍ£°ì¤Î±Ê³¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¹¡£Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¦¥×¥í¥»¥¹¤òÄä»ß¤·¤ÆºÆµ¯Æ°¤¹¤ë¤È¡¢»Ä¤ê¤Î¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ï¼º¤ï¤ì¤Þ¤¹¡£
+オブジェクトå‚ç…§ã¯ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«åå‰ã§æ ¼ç´ã•ã‚Œã€ã‚ªãƒ–ジェクトå‚ç…§ã¨åå‰ã®ãƒšã‚¢ã¯ã€ãã‚Œãžã‚Œãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«çµ„ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã¯ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã‚ã‚Šã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ã‚µãƒ–ディレクトリã¨åŒã˜ç·¨æˆæ©Ÿèƒ½ã‚’æŒã¡ã¾ã™ã€‚ã™ã¹ã¦ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ä¸‹ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®å”¯ä¸€ã®æ°¸ç¶šãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã™ã€‚Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“ス・プロセスをåœæ­¢ã—ã¦å†èµ·å‹•ã™ã‚‹ã¨ã€æ®‹ã‚Šã®ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
 .PP
-¥¢¥×¥ì¥Ã¥È¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤«¤éCOS¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ë¤¿¤á¤Ë¤Ï¡¢¤½¤ÎORB¤¬¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬Æ°ºî¤·¤Æ¤¤¤ë¥Û¥¹¥È¤Î¥Ý¡¼¥È¤òÃΤäƤ¤¤ë¤«¡¢¤½¤Î¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥Èʸ»úÎó¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢Java IDL¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤â¤½¤Î¾¤ÎCOS½àµò¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°"
+アプレットã¾ãŸã¯ã‚¢ãƒ—リケーションã‹ã‚‰COSãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ãŸã‚ã«ã¯ã€ãã®ORBãŒãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå‹•ä½œã—ã¦ã„るホストã®ãƒãƒ¼ãƒˆã‚’知ã£ã¦ã„ã‚‹ã‹ã€ãã®ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆæ–‡å­—列ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€Java IDLã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚‚ãã®ä»–ã®COS準拠ã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•"
 .PP
-Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥¢¥×¥ì¥Ã¥È¤è¤êÁ°¤Ëµ¯Æ°¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£Java IDLÀ½Éʤò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤È¡¢Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òµ¯Æ°¤¹¤ë¥¹¥¯¥ê¥×¥È(Oracle Solaris:
-\fItnameserv\fR)¤Þ¤¿¤Ï¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë(Windows:
-\fItnameserv\&.exe\fR)¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤ÇÆ°ºî¤¹¤ë¤è¤¦¤Ë¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤òµ¯Æ°¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ã‚¢ãƒ—リケーションã¾ãŸã¯ã‚¢ãƒ—レットよりå‰ã«èµ·å‹•ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚Java IDL製å“をインストールã™ã‚‹ã¨ã€Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを起動ã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—ト(Oracle Solaris:
+\fItnameserv\fR)ã¾ãŸã¯å®Ÿè¡Œå¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«(Windows:
+\fItnameserv\&.exe\fR)ãŒä½œæˆã•ã‚Œã¾ã™ã€‚ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å‹•ä½œã™ã‚‹ã‚ˆã†ã«ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを起動ã—ã¦ãã ã•ã„。
 .PP
-Æä˻ØÄꤷ¤Ê¤¤¾ì¹ç¡¢Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢ORB¤Î\fIresolve_initial_references\fR¥á¥½¥Ã¥É¤È\fIlist_initial_references methods\fR¥á¥½¥Ã¥É¤Î¼ÂÁõ¤Ë»ÈÍѤ¹¤ë¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥×¥í¥È¥³¥ë¤ËÂФ·¤Æ¥Ý¡¼¥È900¤Ç¥ê¥¹¥Ë¥ó¥°¤·¤Þ¤¹¡£
+特ã«æŒ‡å®šã—ãªã„å ´åˆã€Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ORBã®\fIresolve_initial_references\fRメソッドã¨\fIlist_initial_references methods\fRメソッドã®å®Ÿè£…ã«ä½¿ç”¨ã™ã‚‹ãƒ–ートストラップ・プロトコルã«å¯¾ã—ã¦ãƒãƒ¼ãƒˆ900ã§ãƒªã‚¹ãƒ‹ãƒ³ã‚°ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -96,7 +96,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¡¦¥Ý¡¼¥È¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¥Ý¡¼¥È900¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤Î¼Â¹Ô»þ¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¾ì¹ç¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£1050¤Î¤è¤¦¤ËÊ̤Υݡ¼¥È¤ò»ØÄꤷ¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒãƒ¼ãƒˆã‚’指定ã—ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ãƒãƒ¼ãƒˆ900ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚Oracle Solarisソフトウェアã®å®Ÿè¡Œæ™‚ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹å ´åˆã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚1050ã®ã‚ˆã†ã«åˆ¥ã®ãƒãƒ¼ãƒˆã‚’指定ã—ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スをãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å®Ÿè¡Œã™ã‚‹ã«ã¯ã€UNIXコマンド・シェルã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -108,7 +108,7 @@
 .RE
 .\}
 .PP
-Windows¤ÎMS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È¤Ç¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+Windowsã®MS\-DOSシステム・プロンプトã§ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,20 +120,20 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ï¡¢¿·¤·¤¤¥Ý¡¼¥ÈÈÖ¹æ¤òÃΤ餻¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ò¹Ô¤¦¤Ë¤Ï¡¢ORB¥ª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®»þ¤Ë\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fR¥×¥í¥Ñ¥Æ¥£¤Ë¿·¤·¤¤¥Ý¡¼¥ÈÈÖ¹æ¤òÀßÄꤷ¤Þ¤¹¡£
-.SS "°Û¤Ê¤ë¥Û¥¹¥È¾å¤Ç¤Î¥µ¡¼¥Ð¡¼¤È¥¯¥é¥¤¥¢¥ó¥È¤Î¼Â¹Ô"
+ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ã¯ã€æ–°ã—ã„ãƒãƒ¼ãƒˆç•ªå·ã‚’知らã›ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れを行ã†ã«ã¯ã€ORBオブジェクトã®ä½œæˆæ™‚ã«\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fRプロパティã«æ–°ã—ã„ãƒãƒ¼ãƒˆç•ªå·ã‚’設定ã—ã¾ã™ã€‚
+.SS "ç•°ãªã‚‹ãƒ›ã‚¹ãƒˆä¸Šã§ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®å®Ÿè¡Œ"
 .PP
-Java IDL¤ÈRMI\-IIOP¤Î¤Û¤È¤ó¤É¤Î¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ç¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¢¥µ¡¼¥Ð¡¼¤ª¤è¤Ó¥¯¥é¥¤¥¢¥ó¥È¤Ï¤¹¤Ù¤Æ³«È¯ÍѤΥޥ·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¼ÂºÝ¤Ë¥Ç¥×¥í¥¤¥á¥ó¥È¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ò¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤È¤Ï°Û¤Ê¤ë¥Û¥¹¥È¡¦¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤¹¤ë¤³¤È¤¬Â¿¤¯¤Ê¤ê¤Þ¤¹¡£
+Java IDLã¨RMI\-IIOPã®ã»ã¨ã‚“ã©ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã§ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã€ã‚µãƒ¼ãƒãƒ¼ãŠã‚ˆã³ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã™ã¹ã¦é–‹ç™ºç”¨ã®ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚実際ã«ãƒ‡ãƒ—ロイメントã™ã‚‹å ´åˆã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã‚’ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¨ã¯ç•°ãªã‚‹ãƒ›ã‚¹ãƒˆãƒ»ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒå¤šããªã‚Šã¾ã™ã€‚
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤¬¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò¸«¤Ä¤±¤ë¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤¬¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤È¥Û¥¹¥È¤òǧ¼±¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤Î¤¿¤á¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î¥Õ¥¡¥¤¥ëÆâ¤Î\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fR¥×¥í¥Ñ¥Æ¥£¤È\fIorg\&.omg\&.CORBA\&.ORBInitialHost\fR¥×¥í¥Ñ¥Æ¥£¤ò¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤È¥Þ¥·¥ó¤Î̾Á°¤ËÀßÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ï¡¢¡ÖGetting Started Using RMI\-IIOP¡×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi\-iiop/rmiiiopexample\&.html)¤Ë¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹
+クライアントã¨ã‚µãƒ¼ãƒãƒ¼ãŒãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを見ã¤ã‘ã‚‹ã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ãŒã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã¨ãƒ›ã‚¹ãƒˆã‚’èªè­˜ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã®ãŸã‚ã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fRプロパティã¨\fIorg\&.omg\&.CORBA\&.ORBInitialHost\fRプロパティをãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã¨ãƒžã‚·ãƒ³ã®åå‰ã«è¨­å®šã—ã¾ã™ã€‚ã“ã®ä¾‹ã¯ã€ã€ŒGetting Started Using RMI\-IIOPã€
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi\-iiop/rmiiiopexample\&.html)ã«ç¤ºã•ã‚Œã¦ã„ã¾ã™
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó\fI\-ORBInitialPort nameserverport#\fR¤È\fI\-ORBInitialHost nameserverhostname\fR¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ËÂФ·¤Æ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òõ¤¹¾ì½ê¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤³¤ì¤ò¹Ô¤¦ÊýË¡¤Î1¤Ä¤ÎÎã¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/tutorial/jidl2machines\&.html¤Î¡ÖJava IDL: The Hello World Example on Two Machines¡×
-¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+コマンドライン・オプション\fI\-ORBInitialPort nameserverport#\fRã¨\fI\-ORBInitialHost nameserverhostname\fRを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã—ã¦ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを探ã™å ´æ‰€ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚コマンドライン・オプションを使用ã—ã¦ã“れを行ã†æ–¹æ³•ã®1ã¤ã®ä¾‹ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/tutorial/jidl2machines\&.htmlã®ã€ŒJava IDL: The Hello World Example on Two Machinesã€
+ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¤¿¤È¤¨¤Ð¡¢°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹\fItnameserv\fR¤¬¡¢¥Û¥¹¥È\fInameserverhost\fR¤Î¥Ý¡¼¥È1050¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥Û¥¹¥È\fIclienthost\fR¾å¤Ç¼Â¹Ô¤µ¤ì¡¢¥µ¡¼¥Ð¡¼¤Ï¥Û¥¹¥È\fIserverhost\fR¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“ス\fItnameserv\fRãŒã€ãƒ›ã‚¹ãƒˆ\fInameserverhost\fRã®ãƒãƒ¼ãƒˆ1050上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒãƒ›ã‚¹ãƒˆ\fIclienthost\fR上ã§å®Ÿè¡Œã•ã‚Œã€ã‚µãƒ¼ãƒãƒ¼ã¯ãƒ›ã‚¹ãƒˆ\fIserverhost\fR上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚
 .PP
-¥Û¥¹¥È\fInameserverhost\fR¾å¤Ç\fItnameserv\fR¤òµ¯Æ°¤·¤Þ¤¹¡£
+ホスト\fInameserverhost\fR上ã§\fItnameserv\fRã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -145,7 +145,7 @@
 .RE
 .\}
 .PP
-\fIserverhost\fR¾å¤Ç¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIserverhost\fR上ã§ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .\}
 .PP
 
-\fIclienthost\fR¾å¤Ç¥¯¥é¥¤¥¢¥ó¥È¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIclienthost\fR上ã§ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -169,19 +169,19 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ÎÄä»ß"
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®åœæ­¢"
 .PP
-Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÄä»ß¤¹¤ë¤Ë¤Ï¡¢Unix¤Î¾ì¹ç¤Ï¡¢\fIkill\fR¤Ê¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¡¢Windows¤Î¾ì¹ç¤Ï¡¢\fI[Ctrl]+[C]\fR¥­¡¼¤ò»ÈÍѤ·¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÌÀ¼¨Åª¤ËÄä»ß¤¹¤ë¤Þ¤Ç¤Ï¡¢¸Æ½Ð¤·ÂÔµ¡¾õÂÖ¤¬Â³¤­¤Þ¤¹¡£¥µ¡¼¥Ó¥¹¤ò½ªÎ»¤µ¤»¤ë¤È¡¢Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë̾Á°¤Ï¼º¤ï¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スをåœæ­¢ã™ã‚‹ã«ã¯ã€Unixã®å ´åˆã¯ã€\fIkill\fRãªã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã€Windowsã®å ´åˆã¯ã€\fI[Ctrl]+[C]\fRキーを使用ã—ã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを明示的ã«åœæ­¢ã™ã‚‹ã¾ã§ã¯ã€å‘¼å‡ºã—待機状態ãŒç¶šãã¾ã™ã€‚サービスを終了ã•ã›ã‚‹ã¨ã€Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹åå‰ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Îã"
-.SS "¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ø¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ÎÄɲÃ"
+.SH "例"
+.SS "ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¸ã®ã‚ªãƒ–ジェクトã®è¿½åŠ "
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ë̾Á°¤òÄɲ乤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î¥µ¥ó¥×¥ë¡¦¥×¥í¥°¥é¥à¤Ï¡¢¤³¤Î¤Þ¤Þ¤Î¾õÂ֤Ǵ°Á´¤ËÆ°ºî¤¹¤ë°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¡¦¥¯¥é¥¤¥¢¥ó¥È¤Ç¡¢¼¡¤Î¤è¤¦¤Êñ½ã¤Ê¥Ä¥ê¡¼¤òºîÀ®¤¹¤ë¤â¤Î¤Ç¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«åå‰ã‚’追加ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚ã“ã®ã‚µãƒ³ãƒ—ル・プログラムã¯ã€ã“ã®ã¾ã¾ã®çŠ¶æ…‹ã§å®Œå…¨ã«å‹•ä½œã™ã‚‹ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“ス・クライアントã§ã€æ¬¡ã®ã‚ˆã†ãªå˜ç´”ãªãƒ„リーを作æˆã™ã‚‹ã‚‚ã®ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,7 +197,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¡¢\fIplans\fR¤Ï¥ª¥Ö¥¸¥§¥¯¥È»²¾È¡¢\fIPersonal\fR¤Ï\fIcalendar\fR¤È\fIschedule\fR¤Î2¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò´Þ¤à¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ç¤¹¡£
+ã“ã®ä¾‹ã§ã€\fIplans\fRã¯ã‚ªãƒ–ジェクトå‚ç…§ã€\fIPersonal\fRã¯\fIcalendar\fRã¨\fIschedule\fRã®2ã¤ã®ã‚ªãƒ–ジェクトå‚照をå«ã‚€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -217,7 +217,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤Ç¡¢\fInameserver\fR¤Ï¥Ý¡¼¥È1050¤Çµ¯Æ°¤µ¤ì¤Þ¤·¤¿¡£¼¡¤Î¥³¡¼¥É¤Ç¡¢¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥¯¥é¥¤¥¢¥ó¥È¡¦¥·¥¹¥Æ¥à¤ËÃΤ餻¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã§ã€\fInameserver\fRã¯ãƒãƒ¼ãƒˆ1050ã§èµ·å‹•ã•ã‚Œã¾ã—ãŸã€‚次ã®ã‚³ãƒ¼ãƒ‰ã§ã€ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’クライアント・システムã«çŸ¥ã‚‰ã›ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -231,7 +231,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ò¼èÆÀ¤·¡¢¤½¤ì¤ò\fIctx\fR¤ËÂåÆþ¤·¤Þ¤¹¡£2¹ÔÌܤǤϡ¢\fIctx\fR¤ò¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È\fIobjref\fR¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¤³¤Îobjref¤Ë¤Ï¡¢¤¢¤È¤ÇÍÍ¡¹¤Ê̾Á°¤ò³ä¤êÅö¤Æ¤Æ¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã€ãれを\fIctx\fRã«ä»£å…¥ã—ã¾ã™ã€‚2行目ã§ã¯ã€\fIctx\fRをダミーã®ã‚ªãƒ–ジェクトå‚ç…§\fIobjref\fRã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ã“ã®objrefã«ã¯ã€ã‚ã¨ã§æ§˜ã€…ãªåå‰ã‚’割り当ã¦ã¦ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -246,7 +246,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢\fItext\fR¥¿¥¤¥×¤Î̾Á°\fIplans\fR¤òºîÀ®¤·¡¢¤½¤ì¤ò¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£¤½¤Î¸å¡¢\fIrebind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤Æ½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î²¼¤Ë\fIplans\fR¤òÄɲ䷤Ƥ¤¤Þ¤¹¡£\fIrebind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢\fIbind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤¿¾ì¹ç¤ËȯÀ¸¤¹¤ëÎã³°¤òȯÀ¸¤µ¤»¤º¤Ë¡¢¤³¤Î¥×¥í¥°¥é¥à¤ò²¿Å٤ⷫÊÖ¤·¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€\fItext\fRタイプã®åå‰\fIplans\fRを作æˆã—ã€ãれをダミーã®ã‚ªãƒ–ジェクトå‚ç…§ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚ãã®å¾Œã€\fIrebind\fRメソッドを使用ã—ã¦åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ä¸‹ã«\fIplans\fRを追加ã—ã¦ã„ã¾ã™ã€‚\fIrebind\fRメソッドを使用ã™ã‚Œã°ã€\fIbind\fRメソッドを使用ã—ãŸå ´åˆã«ç™ºç”Ÿã™ã‚‹ä¾‹å¤–を発生ã•ã›ãšã«ã€ã“ã®ãƒ—ログラムを何度も繰返ã—実行ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -261,7 +261,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢\fIdirectory\fR¥¿¥¤¥×¤Î\fIPersonal\fR¤È¤¤¤¦¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤òºîÀ®¤·¤Þ¤¹¡£¤½¤Î·ë²ÌÆÀ¤é¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È»²¾È\fIctx2\fR¤ò\fIname\fR¤Ë¥Ð¥¤¥ó¥É¤·¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€\fIdirectory\fRタイプã®\fIPersonal\fRã¨ã„ã†ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’作æˆã—ã¾ã™ã€‚ãã®çµæžœå¾—られるオブジェクトå‚ç…§\fIctx2\fRã‚’\fIname\fRã«ãƒã‚¤ãƒ³ãƒ‰ã—ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -276,7 +276,7 @@
 .RE
 .\}
 .PP
-»Ä¤ê¤Î¥³¡¼¥É¤Ç¤Ï¡¢¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò\fIschedule\fR¤È\fIcalendar\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È\fIPersonal\fR(\fIctx2\fR)¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£
+残りã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ãƒ€ãƒŸãƒ¼ã®ã‚ªãƒ–ジェクトå‚照を\fIschedule\fRã¨\fIcalendar\fRã¨ã„ã†åå‰ã§ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆ\fIPersonal\fR(\fIctx2\fR)ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -300,9 +300,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Î»²¾È"
+.SS "ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®å‚ç…§"
 .PP
-¼¡¤Î¥µ¥ó¥×¥ë¡¦¥×¥í¥°¥é¥à¤Ç¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ò¥Ö¥é¥¦¥º¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ã‚µãƒ³ãƒ—ル・プログラムã§ã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã‚’ブラウズã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -322,7 +322,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤Ç¡¢\fInameserver\fR¤Ï¥Ý¡¼¥È1050¤Çµ¯Æ°¤µ¤ì¤Þ¤·¤¿¡£¼¡¤Î¥³¡¼¥É¤Ç¡¢¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥¯¥é¥¤¥¢¥ó¥È¡¦¥·¥¹¥Æ¥à¤ËÃΤ餻¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã§ã€\fInameserver\fRã¯ãƒãƒ¼ãƒˆ1050ã§èµ·å‹•ã•ã‚Œã¾ã—ãŸã€‚次ã®ã‚³ãƒ¼ãƒ‰ã§ã€ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’クライアント・システムã«çŸ¥ã‚‰ã›ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -336,7 +336,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ò¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -350,7 +350,7 @@
 .RE
 .\}
 .PP
-\fIlist\fR¥á¥½¥Ã¥É¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢ºÇÂç1000¸Ä¤Þ¤Ç¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤«¤é\fIBindingListHolder\fR¤ËÊÖ¤µ¤ì¤Þ¤¹¡£»Ä¤ê¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fIBindingIteratorHolder\fR¤ËÊÖ¤µ¤ì¤Þ¤¹¡£
+\fIlist\fRメソッドã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’リストã—ã¾ã™ã€‚ã“ã®å ´åˆã€æœ€å¤§1000個ã¾ã§ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒåˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‹ã‚‰\fIBindingListHolder\fRã«è¿”ã•ã‚Œã¾ã™ã€‚残りã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fIBindingIteratorHolder\fRã«è¿”ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -364,7 +364,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢ÊÖ¤µ¤ì¤¿\fIBindingListHolder\fR¤«¤é¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ÎÇÛÎó¤ò¼èÆÀ¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥í¥°¥é¥à¤¬½ªÎ»¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€è¿”ã•ã‚ŒãŸ\fIBindingListHolder\fRã‹ã‚‰ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®é…列をå–å¾—ã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒãªã„å ´åˆã¯ã€ãƒ—ログラムãŒçµ‚了ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -377,7 +377,7 @@
 .RE
 .\}
 .PP
-»Ä¤ê¤Î¥³¡¼¥É¤Ç¤Ï¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ËÂФ·¤Æ¥ë¡¼¥×½èÍý¤ò¹Ô¤¤¡¢Ì¾Á°¤ò½ÐÎϤ·¤Þ¤¹¡£
+残りã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã«å¯¾ã—ã¦ãƒ«ãƒ¼ãƒ—処ç†ã‚’è¡Œã„ã€åå‰ã‚’出力ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -408,7 +408,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/linux/doc/man/ja/unpack200.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/unpack200.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: unpack200
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaデプロイメント・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "unpack200" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë"
+.TH "unpack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-unpack200 \- pack200(1)¤ÇºîÀ®¤µ¤ì¤¿¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ò¡¢Web¥Ç¥×¥í¥¤¥á¥ó¥È¤Î¤¿¤á¤ËJAR¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+unpack200 \- pack200(1)ã§ä½œæˆã•ã‚ŒãŸãƒ‘ック・ファイルをã€Webデプロイメントã®ãŸã‚ã«JARファイルã«å¤‰æ›ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,21 +64,21 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIinput\-file\fR
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£pack200 gzip¥Õ¥¡¥¤¥ë¤«pack200¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£ÆþÎÏ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIpack200\fR(1)¤ÇºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹(¼ê´Ö¤Ï\fI0\fR¤Ç¤¹)¡£¤³¤Î¾ì¹ç¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÏPack2000¥Þ¡¼¥«¡¼¤Ç½ÐÎÏJAR¥Õ¥¡¥¤¥ë¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+入力ファイルã®åå‰ã€‚pack200 gzipファイルã‹pack200ファイルを指定ã§ãã¾ã™ã€‚入力ファイルã«ã¯ã€\fIpack200\fR(1)ã§ä½œæˆã•ã‚ŒãŸJARファイルを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™(手間ã¯\fI0\fRã§ã™)。ã“ã®å ´åˆã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ã¯Pack2000マーカーã§å‡ºåŠ›JARファイルã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIJAR\-file\fR
 .RS 4
-½ÐÎÏJAR¥Õ¥¡¥¤¥ë̾¡£
+出力JARファイルå。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIpack200\fR\fI(1)\fR¤ÇºîÀ®¤µ¤ì¤¿¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤òJAR¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤¹¤ë¥Í¥¤¥Æ¥£¥Ö¼ÂÁõ¤Ç¤¹¡£°ìÈÌŪ¤Ê»ÈÍÑÊýË¡¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î\fIunpack200\fR¥³¥Þ¥ó¥ÉÀßÄê¤Ç¡¢\fImyarchive\&.jar\fR¥Õ¥¡¥¤¥ë¤¬\fImyarchive\&.pack\&.gz\fR¤«¤éºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIunpack200\fRコマンドã¯ã€\fIpack200\fR\fI(1)\fRã§ä½œæˆã•ã‚ŒãŸãƒ‘ック・ファイルをJARファイルã«å¤‰æ›ã™ã‚‹ãƒã‚¤ãƒ†ã‚£ãƒ–実装ã§ã™ã€‚一般的ãªä½¿ç”¨æ–¹æ³•ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIunpack200\fRコマンド設定ã§ã€\fImyarchive\&.jar\fRファイルãŒ\fImyarchive\&.pack\&.gz\fRã‹ã‚‰ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,56 +89,56 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-Hvalue \-\-deflate\-hint=\fIvalue\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Ë\fItrue\fR¡¢\fIfalse\fR¤Þ¤¿¤Ï\fIkeep\fR¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¡¦¥â¡¼¥É¤Ï\fIkeep\fR¤Ç¤¹¡£Ãͤ¬\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¾ì¹ç¡¢\fI\-\-deflate=hint\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¡¢½ÐÎÏJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤¹¡£
+JARファイル内ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã«\fItrue\fRã€\fIfalse\fRã¾ãŸã¯\fIkeep\fRã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’設定ã—ã¾ã™ã€‚デフォルト・モードã¯\fIkeep\fRã§ã™ã€‚値ãŒ\fItrue\fRã¾ãŸã¯\fIfalse\fRå ´åˆã€\fI\-\-deflate=hint\fRオプションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã€å‡ºåŠ›JARファイル内ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ¢ãƒ¼ãƒ‰ãŒè¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-r \-\-remove\-pack\-file
 .RS 4
-ÆþÎϥѥ寡¦¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Þ¤¹¡£
+入力パック・ファイルを削除ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v \-\-verbose
 .RS 4
-ºÇ¾®¸Â¤Î¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÊ£¿ô¤Î»ÅÍͤˤϡ¢¤è¤ê¾ÜºÙ¤Ê¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+最å°é™ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã®è¤‡æ•°ã®ä»•æ§˜ã«ã¯ã€ã‚ˆã‚Šè©³ç´°ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-q \-\-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤»¤º¤ËÆ°ºî¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+メッセージを表示ã›ãšã«å‹•ä½œã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-lfilename \-\-log\-file=\fIfilename\fR
 .RS 4
-½ÐÎÏ¥á¥Ã¥»¡¼¥¸¤¬µ­Ï¿¤µ¤ì¤ë¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£
+出力メッセージãŒè¨˜éŒ²ã•ã‚Œã‚‹ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-? \-h \-\-help
 .RS 4
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIunpack200\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V \-\-version
 .RS 4
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIunpack200\fRコマンドã«é–¢ã™ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ëoption¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«optionを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤È\fIunpack\fR¥³¥Þ¥ó¥É¤òº®Æ±¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÏÊÌÀ½ÉʤǤ¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¨\fIunpack\fRコマンドを混åŒã—ãªã„ã§ãã ã•ã„。ã“れらã¯åˆ¥è£½å“ã§ã™ã€‚
 .PP
-JDK¤ËÉÕ°¤¹¤ëJava SE API»ÅÍͤȤÎÁê°ã¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢»ÅÍͤòÍ¥À褷¤Æ¤¯¤À¤µ¤¤¡£
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+JDKã«ä»˜å±žã™ã‚‹Java SE API仕様ã¨ã®ç›¸é•ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ä»•æ§˜ã‚’優先ã—ã¦ãã ã•ã„。
+.SH "終了ステータス"
 .PP
-¼¡¤Î½ªÎ»Ãͤ¬ÊÖ¤µ¤ì¤Þ¤¹: Àµ¾ï½ªÎ»¤Î¾ì¹ç¤Ï0¡¢¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ï0¤è¤êÂ礭¤¤ÃÍ¡£
-.SH "´ØÏ¢¹àÌÜ"
+次ã®çµ‚了値ãŒè¿”ã•ã‚Œã¾ã™: 正常終了ã®å ´åˆã¯0ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã¯0より大ãã„値。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -181,7 +181,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPack200 and Compression¡×
+「Pack200 and Compressionã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/deployment/deployment\-guide/pack200\&.html)
 .RE
 .sp
@@ -193,7 +193,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava SE Technical Documentation¡×
+「Java SE Technical Documentationã€
 (http://docs\&.oracle\&.com/javase/)
 .RE
 .br
--- a/jdk/src/linux/doc/man/ja/wsgen.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/wsgen.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: wsgen
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "wsgen" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "wsgen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-wsgen \- Web¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ(SEI)¥¯¥é¥¹¤òÆɼè¤ê¡¢Web¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤¥á¥ó¥È¤È¸Æ½Ð¤·¤ËɬÍפʤ¹¤Ù¤Æ¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+wsgen \- Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…(SEI)クラスを読å–ã‚Šã€Webサービスã®ãƒ‡ãƒ—ロイメントã¨å‘¼å‡ºã—ã«å¿…è¦ãªã™ã¹ã¦ã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,20 +64,20 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fISEI\fR
 .RS 4
-Æɤ߼è¤ëWeb¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ¥¯¥é¥¹(SEI)¤Ç¤¹¡£
+読ã¿å–ã‚‹Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…クラス(SEI)ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤Ï¡¢JAX\-WS Web¥µ¡¼¥Ó¥¹¤Ç»ÈÍѤµ¤ì¤ëJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥Ä¡¼¥ë¤Ï¡¢Web¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¡¦¥¯¥é¥¹¤òÆɼè¤ê¡¢Web¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤¥á¥ó¥È¤È¸Æ½Ð¤·¤ËɬÍפʤ¹¤Ù¤Æ¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£JAXWS 2\&.1\&.1 RI¤Ç¤Ï\fIwsgen\fR
-Ant¥¿¥¹¥¯¤âÄ󶡤µ¤ì¤Þ¤¹¡£
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.html¤ÎJAX\-WS (wsgen)¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIwsgen\fRコマンドã¯ã€JAX\-WS Webサービスã§ä½¿ç”¨ã•ã‚Œã‚‹JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¾ã™ã€‚ã“ã®ãƒ„ールã¯ã€Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãƒ»ã‚¯ãƒ©ã‚¹ã‚’読å–ã‚Šã€Webサービスã®ãƒ‡ãƒ—ロイメントã¨å‘¼å‡ºã—ã«å¿…è¦ãªã™ã¹ã¦ã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’生æˆã—ã¾ã™ã€‚JAXWS 2\&.1\&.1 RIã§ã¯\fIwsgen\fR
+Antタスクもæä¾›ã•ã‚Œã¾ã™ã€‚
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.htmlã®JAX\-WS (wsgen)ページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+\fIwsgen\fRコマンドを起動ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,79 +89,79 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-classpath \fIpath\fR
 .RS 4
-ÆþÎÏ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+入力クラス・ファイルã®å ´æ‰€ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
-ÆþÎÏ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+入力クラス・ファイルã®å ´æ‰€ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¡£
+生æˆã•ã‚ŒãŸå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-extension
 .RS 4
-¥Ù¥ó¥À¡¼³ÈÄ¥¤ò»ÈÍѲÄǽ¤Ë¤·¤Þ¤¹¡£³ÈÄ¥¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î°Ü¿¢À­¤¬¼º¤ï¤ì¤¿¤ê¡¢Â¾¤Î¼ÂÁõ¤ÈÏ¢·È¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ベンダー拡張を使用å¯èƒ½ã«ã—ã¾ã™ã€‚拡張を使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã®ç§»æ¤æ€§ãŒå¤±ã‚ã‚ŒãŸã‚Šã€ä»–ã®å®Ÿè£…ã¨é€£æºã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIwsgen\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIwsgen\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-keep
 .RS 4
-À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÊݸ¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å­˜ã—ã¾ã™ã€‚
 .RE
 .PP
 \-r \fIdirectory\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢WSDL¤Ê¤ÉÀ¸À®¤µ¤ì¤¿¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€WSDLãªã©ç”Ÿæˆã•ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¡£
+生æˆã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-wsdl [ :protocol ]
 .RS 4
-¥¨¥ó¥É¥Ý¥¤¥ó¥È¤ò¥Ç¥×¥í¥¤¤¹¤ëÁ°¤Ë³Îǧ¤¹¤ëWSDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¥ª¥×¥·¥ç¥ó¡¦¥³¥Þ¥ó¥É¡£WSDL¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥µ¡¼¥Ó¥¹¤ò¸Æ¤Ó½Ð¤¹ÊýË¡¡¢¥Ñ¥é¥á¡¼¥¿¤ËɬÍפÊÃÍ¡¢ÊÖ¤µ¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤Æ¤Î¥³¥ó¥Ô¥å¡¼¥¿¤ÇÆɼè¤ê²Äǽ¤Êµ­½Ò¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+エンドãƒã‚¤ãƒ³ãƒˆã‚’デプロイã™ã‚‹å‰ã«ç¢ºèªã™ã‚‹WSDLファイルを生æˆã™ã‚‹ã‚ªãƒ—ション・コマンド。WSDLファイルã«ã¯ã€ã‚µãƒ¼ãƒ“スを呼ã³å‡ºã™æ–¹æ³•ã€ãƒ‘ラメータã«å¿…è¦ãªå€¤ã€è¿”ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿æ§‹é€ ã«ã¤ã„ã¦ã®ã‚³ãƒ³ãƒ”ュータã§èª­å–ã‚Šå¯èƒ½ãªè¨˜è¿°ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIwsgen\fR¥³¥Þ¥ó¥É¤ÏWSDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤»¤ó¡£\fIprotocol\fRÃͤϾÊά²Äǽ¤Ç¤¢¤ê¡¢WSDL¥Ð¥¤¥ó¥Ç¥£¥ó¥°(\fIwsdl:binding\fR)¤Ç»ÈÍѤ¹¤ë¥×¥í¥È¥³¥ë¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£Í­¸ú¤Ê¥×¥í¥È¥³¥ë¤Ï¡¢\fIsoap1\&.1\fR¤È\fIXsoap1\&.2\fR¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fIsoap1\&.1\fR¤Ç¤¹¡£\fIXsoap1\&.2\fR¥×¥í¥È¥³¥ë¤Ïɸ½à¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢\fI\-extension\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѲÄǽ¤Ç¤¹¡£
+デフォルトã§ã¯\fIwsgen\fRコマンドã¯WSDLファイルを生æˆã—ã¾ã›ã‚“。\fIprotocol\fR値ã¯çœç•¥å¯èƒ½ã§ã‚ã‚Šã€WSDLãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°(\fIwsdl:binding\fR)ã§ä½¿ç”¨ã™ã‚‹ãƒ—ロトコルを指定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚有効ãªãƒ—ロトコルã¯ã€\fIsoap1\&.1\fRã¨\fIXsoap1\&.2\fRã§ã™ã€‚デフォルトã¯\fIsoap1\&.1\fRã§ã™ã€‚\fIXsoap1\&.2\fRプロトコルã¯æ¨™æº–ã§ã¯ãªã„ãŸã‚ã€\fI\-extension\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨å¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-servicename \fIname\fR
 .RS 4
-\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѤ·¤Æ¡¢WSDL¤ÇÀ¸À®¤µ¤ì¤ëÆÃÄê¤ÎWSDL¥µ¡¼¥Ó¥¹(\fIwsdl:service\fR)̾¤ò»ØÄꤷ¤Þ¤¹¡£Îã:
-\fI\-servicename "{http://mynamespace/}MyService"\fR¡£
+\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨ã—ã¦ã€WSDLã§ç”Ÿæˆã•ã‚Œã‚‹ç‰¹å®šã®WSDLサービス(\fIwsdl:service\fR)åを指定ã—ã¾ã™ã€‚例:
+\fI\-servicename "{http://mynamespace/}MyService"\fR。
 .RE
 .PP
 \-portname \fIname\fR
 .RS 4
-\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѤ·¤Æ¡¢WSDL¤ÇÀ¸À®¤µ¤ì¤ëÆÃÄê¤ÎWSDL¥Ý¡¼¥È(\fIwsdl:port\fR)̾¤ò»ØÄꤷ¤Þ¤¹¡£Îã:
-\fI\-portname "{http://mynamespace/}MyPort"\fR¡£
+\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨ã—ã¦ã€WSDLã§ç”Ÿæˆã•ã‚Œã‚‹ç‰¹å®šã®WSDLãƒãƒ¼ãƒˆ(\fIwsdl:port\fR)åを指定ã—ã¾ã™ã€‚例:
+\fI\-portname "{http://mynamespace/}MyPort"\fR。
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢Stock¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë\fI@WebService\fRÃí¼á¤ò»ý¤Ä\fIStockService\fR¤Î¥é¥Ã¥Ñ¡¼¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€Stockディレクトリ内ã«\fI@WebService\fR注釈をæŒã¤\fIStockService\fRã®ãƒ©ãƒƒãƒ‘ー・クラスを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -173,7 +173,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢SOAP 1\&.1 WSDL¤ª¤è¤Ó\fI@WebService\fRÃí¼á¤ò»ý¤Ä\fIstock\&.StockService\fR¥¯¥é¥¹¤Î¥¹¥­¡¼¥Þ¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€SOAP 1\&.1 WSDLãŠã‚ˆã³\fI@WebService\fR注釈をæŒã¤\fIstock\&.StockService\fRクラスã®ã‚¹ã‚­ãƒ¼ãƒžã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -185,7 +185,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢SOAP 1\&.2 WSDL¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€SOAP 1\&.2 WSDLを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,9 +197,9 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤»þ¤ËJAXWS¼Â¹Ô»þ´Ä¶­¤ÇWSDL¤¬À¸À®¤µ¤ì¤ë¤¿¤á¡¢³«È¯»þ¤ËWSDL¤òÀ¸À®¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
-.SH "´ØÏ¢¹àÌÜ"
+\fB注æ„:\fR
+サービスã®ãƒ‡ãƒ—ロイ時ã«JAXWS実行時環境ã§WSDLãŒç”Ÿæˆã•ã‚Œã‚‹ãŸã‚ã€é–‹ç™ºæ™‚ã«WSDLを生æˆã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -220,8 +220,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.html¤Î
-JAX\-WS (wsgen)¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.htmlã®
+JAX\-WS (wsgen)ページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/wsimport.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/wsimport.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: wsimport
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "wsimport" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "wsimport" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-wsimport \- Web¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¢¡¼¥«¥¤¥Ö(WAR)¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤Ç¤­¤ëJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Æ¡¢Ant¥¿¥¹¥¯¤ò»ØÄꤷ¤Þ¤¹¡£
-.SH "³µÍ×"
+wsimport \- Webアプリケーション・アーカイブ(WAR)ファイルã«ãƒ‘ッケージã§ãã‚‹JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¦ã€Antタスクを指定ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,18 +64,18 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIwsdl\fR
 .RS 4
-Web¥µ¡¼¥Ó¥¹¤ò¸Æ¤Ó½Ð¤¹ÊýË¡¡¢¥Ñ¥é¥á¡¼¥¿¤ËɬÍפÊÃÍ¡¢ÊÖ¤µ¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤Æ¤Î¥³¥ó¥Ô¥å¡¼¥¿¤ÇÆɼè¤ê²Äǽ¤Êµ­½Ò¤¬´Þ¤Þ¤ì¤Þ¤ë¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+Webサービスを呼ã³å‡ºã™æ–¹æ³•ã€ãƒ‘ラメータã«å¿…è¦ãªå€¤ã€è¿”ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿æ§‹é€ ã«ã¤ã„ã¦ã®ã‚³ãƒ³ãƒ”ュータã§èª­å–ã‚Šå¯èƒ½ãªè¨˜è¿°ãŒå«ã¾ã‚Œã¾ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIwsimport\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤ÎJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ï¡¢¥Ç¥×¥í¥¤¤¹¤ëWSDL¤ª¤è¤Ó¥¹¥­¡¼¥Þ¡¦¥É¥­¥å¥á¥ó¥È¤ª¤è¤Ó¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ¤È¤È¤â¤Ë¡¢WAR¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤Ç¤­¤Þ¤¹¡£\fIwsimport\fR¥³¥Þ¥ó¥É¤Ç¤Ï\fIwsimport\fR
-Ant¥¿¥¹¥¯¤âÄ󶡤µ¤ì¤Þ¤¹¡£
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤ÎWsimport Ant Task¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIwsimport\fRコマンドã¯ã€æ¬¡ã®JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¾ã™ã€‚ã“れらã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã¯ã€ãƒ‡ãƒ—ロイã™ã‚‹WSDLãŠã‚ˆã³ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŠã‚ˆã³ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…ã¨ã¨ã‚‚ã«ã€WARファイルã«ãƒ‘ッケージã§ãã¾ã™ã€‚\fIwsimport\fRコマンドã§ã¯\fIwsimport\fR
+Antタスクもæä¾›ã•ã‚Œã¾ã™ã€‚
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®Wsimport Ant Taskページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -85,7 +85,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥µ¡¼¥Ó¥¹¡¦¥¨¥ó¥É¥Ý¥¤¥ó¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SEI)
+サービス・エンドãƒã‚¤ãƒ³ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SEI)
 .RE
 .sp
 .RS 4
@@ -96,7 +96,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥µ¡¼¥Ó¥¹
+サービス
 .RE
 .sp
 .RS 4
@@ -107,7 +107,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Îã³°¥¯¥é¥¹¤Ï\fIwsdl:fault\fR¤«¤é¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹(¸ºß¤¹¤ë¾ì¹ç)
+例外クラスã¯\fIwsdl:fault\fRã‹ã‚‰ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™(存在ã™ã‚‹å ´åˆ)
 .RE
 .sp
 .RS 4
@@ -118,7 +118,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ÈóƱ´ü¥ì¥¹¥Ý¥ó¥¹Bean¤Ï¥ì¥¹¥Ý¥ó¥¹\fIwsdl:message\fR¤«¤éÇÉÀ¸¤·¤Þ¤¹(¸ºß¤¹¤ë¾ì¹ç)
+éžåŒæœŸãƒ¬ã‚¹ãƒãƒ³ã‚¹Beanã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹\fIwsdl:message\fRã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™(存在ã™ã‚‹å ´åˆ)
 .RE
 .sp
 .RS 4
@@ -129,10 +129,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JAXB¤¬À¸À®¤¹¤ëÃÍ¥¿¥¤¥×(¥¹¥­¡¼¥Þ¤Î¥¿¥¤¥×¤«¤é¥Þ¥Ã¥×¤µ¤ì¤¿Java¥¯¥é¥¹)
+JAXBãŒç”Ÿæˆã™ã‚‹å€¤ã‚¿ã‚¤ãƒ—(スキーマã®ã‚¿ã‚¤ãƒ—ã‹ã‚‰ãƒžãƒƒãƒ—ã•ã‚ŒãŸJavaクラス)
 .RE
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+\fIwsgen\fRコマンドを起動ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
 \fBOracle Solaris/Linux\fR:
 .sp
@@ -146,7 +146,7 @@
 .RE
 .\}
 .PP
-\fBWindows\fR¤Î¾ì¹ç:
+\fBWindows\fRã®å ´åˆ:
 .sp
 .if n \{\
 .RS 4
@@ -157,118 +157,118 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤ë½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-b \fIpath\fR
 .RS 4
-³°ÉôJAX\-WS¤Þ¤¿¤ÏJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-b\fR¥ª¥×¥·¥ç¥ó¤ÇÊ£¿ô¤ÎJAX\-WS¤ª¤è¤ÓJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¡¢Bean̾¤Ê¤É¤ò¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£JAX\-WS¤ª¤è¤ÓJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤ÎWSDL Customization¤ÎUsers Guide¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+外部JAX\-WSã¾ãŸã¯JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fI\-b\fRオプションã§è¤‡æ•°ã®JAX\-WSãŠã‚ˆã³JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ãƒ‘ッケージåã€Beanåãªã©ã‚’カスタマイズã§ãã¾ã™ã€‚JAX\-WSãŠã‚ˆã³JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è©³ç´°ã¯ã€
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®WSDL Customizationã®Users Guideタブをå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-B \fIjaxbOption\fR
 .RS 4
-JAXB¥¹¥­¡¼¥Þ¡¦¥³¥ó¥Ñ¥¤¥é¤Ë\fIjaxbOption\fR¥ª¥×¥·¥ç¥ó¤òÅϤ·¤Þ¤¹¡£
+JAXBスキーマ・コンパイラã«\fIjaxbOption\fRオプションを渡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-catalog
 .RS 4
-³°Éô¥¨¥ó¥Æ¥£¥Æ¥£»²¾È¤ò²ò·è¤¹¤ë¥«¥¿¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-catalog\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢TR9401¡¢XCatalog¡¢OASIS XML Catalog¤Î³Æ·Á¼°¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.html¤Î
-Catalog Support¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+外部エンティティå‚照を解決ã™ã‚‹ã‚«ã‚¿ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fI\-catalog\fRオプションã¯ã€TR9401ã€XCatalogã€OASIS XML Catalogã®å„å½¢å¼ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.htmlã®
+Catalog Supportページã®Users Guideタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-extension
 .RS 4
-¥Ù¥ó¥À¡¼³ÈÄ¥¤ò»ÈÍѲÄǽ¤Ë¤·¤Þ¤¹¡£³ÈÄ¥¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î°Ü¿¢À­¤¬¼º¤ï¤ì¤¿¤ê¡¢Â¾¤Î¼ÂÁõ¤ÈÏ¢·È¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ベンダー拡張を使用å¯èƒ½ã«ã—ã¾ã™ã€‚拡張を使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã®ç§»æ¤æ€§ãŒå¤±ã‚ã‚ŒãŸã‚Šã€ä»–ã®å®Ÿè£…ã¨é€£æºã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIwsimport\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIwsimport\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-httpproxy: \fIhost\fR:\fIport\fR
 .RS 4
-HTTP¥×¥í¥­¥·¡¦¥µ¡¼¥Ð¡¼¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï8080¤Ç¤¹¡£
+HTTPプロキシ・サーãƒãƒ¼ã‚’指定ã—ã¾ã™ã€‚デフォルトã¯8080ã§ã™ã€‚
 .RE
 .PP
 \-keep
 .RS 4
-À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÊÝ»ý¤·¤Þ¤¹
+生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿æŒã—ã¾ã™
 .RE
 .PP
 \-p \fIname\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Ñ¥Ã¥±¡¼¥¸\fIname\fR¤ò»ØÄꤷ¤Æ¡¢WSDL¤ª¤è¤Ó¥¹¥­¡¼¥Þ¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î¥«¥¹¥¿¥Þ¥¤¥º¡¢¤ª¤è¤Ó»ÅÍÍÉô¤ÇÄêµÁ¤µ¤ì¤¿¥Ç¥Õ¥©¥ë¥È¤Î¥¢¥ë¥´¥ê¥º¥à¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ターゲット・パッケージ\fIname\fRを指定ã—ã¦ã€WSDLãŠã‚ˆã³ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã€ãŠã‚ˆã³ä»•æ§˜éƒ¨ã§å®šç¾©ã•ã‚ŒãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹
+生æˆã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-wsdllocation \fIlocation\fR
 .RS 4
-\fI@WebServiceClient\&.wsdlLocation\fR¤ÎÃͤò»ØÄꤷ¤Þ¤¹¡£
+\fI@WebServiceClient\&.wsdlLocation\fRã®å€¤ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-target
 .RS 4
-»ØÄꤵ¤ì¤¿JAX\-WS»ÅÍͥС¼¥¸¥ç¥ó¤Ë½¾¤Ã¤Æ¡¢¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£¥Ð¡¼¥¸¥ç¥ó2\&.0¤Ç¤Ï¡¢JAX\-WS 2\&.0»ÅÍͤ˽àµò¤·¤¿¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸJAX\-WS仕様ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã«å¾“ã£ã¦ã€ã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚ãƒãƒ¼ã‚¸ãƒ§ãƒ³2\&.0ã§ã¯ã€JAX\-WS 2\&.0仕様ã«æº–æ‹ ã—ãŸã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-quiet
 .RS 4
-\fIwsimport\fR¥³¥Þ¥ó¥É½ÐÎϤòÍÞÀ©¤·¤Þ¤¹¡£
+\fIwsimport\fRコマンド出力を抑制ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI\-b\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î\fIJAX\-WS\fR¤ª¤è¤Ó\fIJAXB\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤äBean̾¤Ê¤É¡¢ÍÍ¡¹¤Ê¤â¤Î¤ò¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£\fIJAX\-WS\fR¤ª¤è¤Ó\fIJAXB\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢
-https://jax\-ws\&.dev\&.java\&.net/nonav/2\&.1\&.1/docs/customizations\&.html¤ÎJAXB¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+\fI\-b\fRオプションを使用ã—ã¦ã€è¤‡æ•°ã®\fIJAX\-WS\fRãŠã‚ˆã³\fIJAXB\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ãƒ‘ッケージåã‚„Beanåãªã©ã€æ§˜ã€…ãªã‚‚ã®ã‚’カスタマイズã§ãã¾ã™ã€‚\fIJAX\-WS\fRãŠã‚ˆã³\fIJAXB\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è©³ç´°ã¯ã€
+https://jax\-ws\&.dev\&.java\&.net/nonav/2\&.1\&.1/docs/customizations\&.htmlã®JAXBタブをå‚ç…§ã—ã¦ãã ã•ã„
+.SH "éžæ¨™æº–オプション"
 .PP
 \-XadditionalHeaders
 .RS 4
-¥ê¥¯¥¨¥¹¥È¤Þ¤¿¤Ï¥ì¥¹¥Ý¥ó¥¹¡¦¥á¥Ã¥»¡¼¥¸¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Ê¤¤¥Ø¥Ã¥À¡¼¤òJava¥á¥½¥Ã¥É¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¥Þ¥Ã¥×¤·¤Þ¤¹
+リクエストã¾ãŸã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œãªã„ヘッダーをJavaメソッドã®ãƒ‘ラメータã«ãƒžãƒƒãƒ—ã—ã¾ã™
 .RE
 .PP
 \-Xauthfile \fIfile\fR
 .RS 4
-ǧ¾Ú¾ðÊó¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëWSDL URI¤Ç¤¹¡£¤³¤ÎURI¤Î·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+èªè¨¼æƒ…報をå«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹WSDL URIã§ã™ã€‚ã“ã®URIã®å½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 http://\fIuser\-name\fR:\fIpassword\fR@\fIhost\-name\fR/\fIweb\-service\-name\fR>?wsdl
 .RE
 .PP
 \-Xdebug
 .RS 4
-¥Ç¥Ð¥Ã¥°¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹
+デãƒãƒƒã‚°æƒ…報を出力ã—ã¾ã™
 .RE
 .PP
 \-Xno\-addressing\-databinding
 .RS 4
-W3C EndpointReferenceType¤ÈJava¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+W3C EndpointReferenceTypeã¨Javaã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xnocompile
 .RS 4
-À¸À®¤µ¤ì¤¿Java¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤»¤ó
+生æˆã•ã‚ŒãŸJavaファイルをコンパイルã—ã¾ã›ã‚“
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢Java¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¡¢\fIhttp://stockquote\&.example\&.com/quote?wsdl\fR¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Æ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€Javaアーティファクトを生æˆã—ã€\fIhttp://stockquote\&.example\&.com/quote?wsdl\fRをインãƒãƒ¼ãƒˆã—ã¦ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -279,7 +279,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -300,8 +300,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤Î
-Wsimport Ant Task¥Ú¡¼¥¸¤ÎTools¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®
+Wsimport Ant Taskページã®Toolsタブ
 .RE
 .sp
 .RS 4
@@ -312,8 +312,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.html¤Î
-Catalog Support¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.htmlã®
+Catalog Supportページã®Users Guideタブ
 .RE
 .sp
 .RS 4
@@ -324,8 +324,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤Î
-WSDL Customization¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®
+WSDL Customizationページã®Users Guideタブ
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/linux/doc/man/ja/xjc.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/linux/doc/man/ja/xjc.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: xjc
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "xjc" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "xjc" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-xjc \- XML¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò´°Á´Ãí¼áÉÕ¤­¤ÎJava¥¯¥é¥¹¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+xjc \- XMLスキーマ・ファイルを完全注釈付ãã®Javaクラスã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,23 +64,23 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 schema \fIfile/URL/dir/jar \&.\&.\&.\fR
 .RS 4
-XML¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£\fIdir\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£\fIjar\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI/META\-INF/sun\-jaxb\&.episode\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£
+XMLスキーマ・ファイルã®å ´æ‰€ã€‚\fIdir\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚\fIjar\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI/META\-INF/sun\-jaxb\&.episode\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-b \fIbindinfo\fR
 .RS 4
-¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å ´æ‰€ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Îbin¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ëŬÀÚ¤Ê\fIxjc\fR¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤ò»ÈÍѤ·¤Æ¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤òµ¯Æ°¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ò¼Â¹Ô¤¹¤ëAnt¥¿¥¹¥¯¤â¤¢¤ê¤Þ¤¹¡£http://jaxb\&.java\&.net/nonav/2\&.1\&.3/docs/xjcTask\&.html¤Î
-Using the XJC with Ant¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥ª¥×¥·¥ç¥ó"
+プラットフォームã®binディレクトリã«ã‚ã‚‹é©åˆ‡ãª\fIxjc\fRシェル・スクリプトを使用ã—ã¦ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラを起動ã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラを実行ã™ã‚‹Antタスクもã‚ã‚Šã¾ã™ã€‚http://jaxb\&.java\&.net/nonav/2\&.1\&.3/docs/xjcTask\&.htmlã®
+Using the XJC with Antã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "オプション"
 .sp
 .RS 4
 .ie n \{\
@@ -90,7 +90,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+éžæ¨™æº–オプションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -101,167 +101,167 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-nv
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥½¡¼¥¹¡¦¥¹¥­¡¼¥Þ¤ò½èÍý¤¹¤ëÁ°¤Ë¸·Ì©¤Ê¸¡¾Ú¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¸·Ì©¤Ê¥¹¥­¡¼¥Þ¸¡¾Ú¤«Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤¬¸¡¾Ú¤ò°ìÀڼ¹Ԥ·¤Ê¤¤¤È¤¤¤¦¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤è¤ê¸·Ì©¤Ç¤Ê¤¤¸¡¾Ú¤ò¼Â¹Ô¤¹¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚¹ã‚­ãƒ¼ãƒžã‚’処ç†ã™ã‚‹å‰ã«åŽ³å¯†ãªæ¤œè¨¼ã‚’実行ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€åŽ³å¯†ãªã‚¹ã‚­ãƒ¼ãƒžæ¤œè¨¼ã‹ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラãŒæ¤œè¨¼ã‚’一切実行ã—ãªã„ã¨ã„ã†ã“ã¨ã§ã¯ã‚ã‚Šã¾ã›ã‚“。より厳密ã§ãªã„検証を実行ã™ã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚
 .RE
 .PP
 \-extension
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢JAXB»ÅÍͤÎCompatibility¤Î¾Ï¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¥ë¡¼¥ë¤ò¸·Ì©¤Ë¶¯À©¤·¤Þ¤¹¡£ÉÕÏ¿E\&.2¤Ë¤Ï¡¢JAXB v1\&.0¤Ç´°Á´¤Ë¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤°ìÏ¢¤ÎW3C XML¥¹¥­¡¼¥Þµ¡Ç½¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢¤³¤Î¥¹¥¤¥Ã¥Á¤ÇÍ­¸ú¤Ë¤Ê¤ë\fI\-extension\fR¥â¡¼¥É¤Ç¤½¤ì¤é¤Îµ¡Ç½¤¬»ÈÍѤǤ­¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸·Ì©¤Ê¥â¡¼¥É¤Ç¤Ï¡¢»ÅÍͤËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥«¥¹¥¿¥Þ¥¤¥º¤Î¤ß¤¬»ÈÍѤǤ­¤Þ¤¹¡£\fI\-extension\fR¥¹¥¤¥Ã¥Á¤ò»ØÄꤹ¤ì¤Ð¡¢JAXB Vendor Extension¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€JAXB仕様ã®Compatibilityã®ç« ã§èª¬æ˜Žã•ã‚Œã¦ã„るルールを厳密ã«å¼·åˆ¶ã—ã¾ã™ã€‚付録E\&.2ã«ã¯ã€JAXB v1\&.0ã§å®Œå…¨ã«ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„一連ã®W3C XMLスキーマ機能ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€ã“ã®ã‚¹ã‚¤ãƒƒãƒã§æœ‰åŠ¹ã«ãªã‚‹\fI\-extension\fRモードã§ãれらã®æ©Ÿèƒ½ãŒä½¿ç”¨ã§ãã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åŽ³å¯†ãªãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€ä»•æ§˜ã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã®ã¿ãŒä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-extension\fRスイッãƒã‚’指定ã™ã‚Œã°ã€JAXB Vendor Extensionを使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-b \fIfile\fR
 .RS 4
-½èÍý¤¹¤ë³°Éô¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò1¤Ä¤Þ¤¿¤ÏÊ£¿ô»ØÄꤷ¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë\fI\-b\fR¥¹¥¤¥Ã¥Á¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£³°Éô¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¹½Ê¸¤Ï½ÀÆð¤Ç¤¹¡£Ê£¿ô¤Î¥¹¥­¡¼¥Þ¤Î¥«¥¹¥¿¥Þ¥¤¥º¤¬´Þ¤Þ¤ì¤ë1¤Ä¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤¿¤ê¡¢¤½¤ì¤é¤Î¥«¥¹¥¿¥Þ¥¤¥º¤òÊ£¿ô¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤·¤¿¤ê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings123\&.xjb\fR
-\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings1\&.xjb \-b bindings2\&.xjb \-b bindings3\&.xjb\fR¤Þ¤¿¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤È¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë½çÈÖ¤ÏǤ°Õ¤Ç¤¹¡£
+処ç†ã™ã‚‹å¤–部ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’1ã¤ã¾ãŸã¯è¤‡æ•°æŒ‡å®šã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã”ã¨ã«\fI\-b\fRスイッãƒã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚外部ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æ–‡ã¯æŸ”軟ã§ã™ã€‚複数ã®ã‚¹ã‚­ãƒ¼ãƒžã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºãŒå«ã¾ã‚Œã‚‹1ã¤ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ãŸã‚Šã€ãれらã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã‚’複数ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«åˆ†å‰²ã—ãŸã‚Šã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings123\&.xjb\fR
+\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings1\&.xjb \-b bindings2\&.xjb \-b bindings3\&.xjb\fRã¾ãŸã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹é †ç•ªã¯ä»»æ„ã§ã™ã€‚
 .RE
 .PP
 \-d \fIdir\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Java¥³¥ó¥Æ¥ó¥Ä¡¦¥¯¥é¥¹¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢ÂåÂؽÐÎϥǥ£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£½ÐÎϥǥ£¥ì¥¯¥È¥ê¤Ï¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ç¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€Javaコンテンツ・クラスをç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç”Ÿæˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ä»£æ›¿å‡ºåŠ›ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚出力ディレクトリã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã§ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-p \fIpkg\fR
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ç¥¿¡¼¥²¥Ã¥È¡¦¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î»ØÄêÆâÍƤϡ¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÂФ¹¤ë¤¹¤Ù¤Æ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥«¥¹¥¿¥Þ¥¤¥º¤ä¡¢»ÅÍͤǵ¬Äꤵ¤ì¤Æ¤¤¤ë¥Ç¥Õ¥©¥ë¥È¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¥¢¥ë¥´¥ê¥º¥à¤è¤ê¤âÍ¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ‘ッケージを指定ã—ãŸå ´åˆã€ãã®æŒ‡å®šå†…容ã¯ã€ãƒ‘ッケージåã«å¯¾ã™ã‚‹ã™ã¹ã¦ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã‚„ã€ä»•æ§˜ã§è¦å®šã•ã‚Œã¦ã„るデフォルトã®ãƒ‘ッケージåアルゴリズムよりも優先ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-httpproxy \fIproxy\fR
 .RS 4
-\fI[user[:password]@]proxyHost[:proxyPort]\fR·Á¼°¤ÇHTTP¤Þ¤¿¤ÏHTTPS¥×¥í¥­¥·¤ò»ØÄꤷ¤Þ¤¹¡£¸Å¤¤\fI\-host\fR¤ª¤è¤Ó\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢²¼°Ì¸ß´¹À­¤Î¤¿¤á¤Ë°ú¤­Â³¤­RI¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¤¬¡¢Èó¿ä¾©¤È¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢top¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾¤Î¥æ¡¼¥¶¡¼¤¬É½¼¨¤Ç¤­¤ë°ú¿ô¤Ç¤¹¡£¥»¥­¥å¥ê¥Æ¥£¤ò¹â¤á¤ë¤Ë¤Ï¡¢\fI\-httpproxyfile\fR¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+\fI[user[:password]@]proxyHost[:proxyPort]\fRå½¢å¼ã§HTTPã¾ãŸã¯HTTPSプロキシを指定ã—ã¾ã™ã€‚å¤ã„\fI\-host\fRãŠã‚ˆã³\fI\-port\fRオプションã¯ã€ä¸‹ä½äº’æ›æ€§ã®ãŸã‚ã«å¼•ã続ãRIã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ãŒã€éžæŽ¨å¥¨ã¨ãªã‚Šã¾ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸãƒ‘スワードã¯ã€topコマンドを使用ã™ã‚‹ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¡¨ç¤ºã§ãる引数ã§ã™ã€‚セキュリティを高ã‚ã‚‹ã«ã¯ã€\fI\-httpproxyfile\fRを使用ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-httpproxyfile file
 .RS 4
-¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢HTTP¤Þ¤¿¤ÏHTTPS¥×¥í¥­¥·¤ò»ØÄꤷ¤Þ¤¹¡£·Á¼°¤Ï\fI\-httpproxy\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤Ç¤¹¤¬¡¢¤³¤Î¥Õ¥¡¥¤¥ëÆâ¤Ë»ØÄꤵ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ò¾¤Î¥æ¡¼¥¶¡¼¤¬É½¼¨¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+ファイルを使用ã—ã¦ã€HTTPã¾ãŸã¯HTTPSプロキシを指定ã—ã¾ã™ã€‚å½¢å¼ã¯\fI\-httpproxy\fRオプションã¨åŒã˜ã§ã™ãŒã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«æŒ‡å®šã•ã‚ŒãŸãƒ‘スワードを他ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¡¨ç¤ºã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-classpath arg
 .RS 4
-\fIjxb:javaType\fR¤ª¤è¤Óxjc:\fIsuperClass\fR¥«¥¹¥¿¥Þ¥¤¥º¤¬»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡º÷¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjxb:javaType\fRãŠã‚ˆã³xjc:\fIsuperClass\fRカスタマイズãŒä½¿ç”¨ã™ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãƒ»ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ¤œç´¢å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-catalog file
 .RS 4
-³°Éô¥¨¥ó¥Æ¥£¥Æ¥£»²¾È¤ò²ò·è¤¹¤ë¥«¥¿¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£TR9401¡¢XCatalog¤ª¤è¤ÓOASIS XML Catalog¤Î³Æ·Á¼°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£http://xerces\&.apache\&.org/xml\-commons/components/resolver/resolver\-article\&.html¤Î
-XML Entity and URI Resolvers¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+外部エンティティå‚照を解決ã™ã‚‹ã‚«ã‚¿ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚TR9401ã€XCatalogãŠã‚ˆã³OASIS XML Catalogã®å„å½¢å¼ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚http://xerces\&.apache\&.org/xml\-commons/components/resolver/resolver\-article\&.htmlã®
+XML Entity and URI Resolversã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-readOnly
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢À¸À®¤¹¤ëJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½ñ¹þ¤ß¤«¤éÊݸ¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ÏÀ¸À®¤µ¤ì¤ëJava¥½¡¼¥¹¤ò¶¯À©Åª¤ËÆɼè¤êÀìÍѤˤ·¤Þ¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€ç”Ÿæˆã™ã‚‹Javaソース・ファイルを書込ã¿ã‹ã‚‰ä¿è­·ã—ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ç”Ÿæˆã•ã‚Œã‚‹Javaソースを強制的ã«èª­å–り専用ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-npa
 .RS 4
-\fI**/package\-info\&.java\fR¤Ø¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ì¥Ù¥ë¤ÎÃí¼á¤ÎÀ¸À®¤òÍÞÀ©¤·¤Þ¤¹¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ò»ÈÍѤ·¤ÆÀ¸À®¤¹¤ë¥³¡¼¥É¤Ç¤Ï¡¢¤³¤ì¤é¤ÎÃí¼á¤¬Â¾¤ÎÀ¸À®ºÑ¥¯¥é¥¹¤ËÆâÉô²½¤µ¤ì¤Þ¤¹¡£
+\fI**/package\-info\&.java\fRã¸ã®ãƒ‘ッケージ・レベルã®æ³¨é‡ˆã®ç”Ÿæˆã‚’抑制ã—ã¾ã™ã€‚ã“ã®ã‚¹ã‚¤ãƒƒãƒã‚’使用ã—ã¦ç”Ÿæˆã™ã‚‹ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ã“れらã®æ³¨é‡ˆãŒä»–ã®ç”Ÿæˆæ¸ˆã‚¯ãƒ©ã‚¹ã«å†…部化ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-no\-header
 .RS 4
-¿¾¯¤Î¥á¥â¤È¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤à¥Õ¥¡¥¤¥ë¡¦¥Ø¥Ã¥À¡¼¡¦¥³¥á¥ó¥È¤ÎÀ¸À®¤òÍÞÀ©¤·¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ¹¤ë¤È¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤È\fIdiff\fR¥³¥Þ¥ó¥É¤È¤Î¸ß´¹À­¤¬¤è¤ê¶¯¤¯¤Ê¤ê¤Þ¤¹¡£
+多少ã®ãƒ¡ãƒ¢ã¨ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆã‚’抑制ã—ã¾ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã¨\fIdiff\fRコマンドã¨ã®äº’æ›æ€§ãŒã‚ˆã‚Šå¼·ããªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-target 2\&.0
 .RS 4
-JAXB 2\&.1µ¡Ç½¤Ë°Í¸¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤òJAXB 2\&.0¥é¥ó¥¿¥¤¥à´Ä¶­(Java SE 6¤Ê¤É)¤Ç¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+JAXB 2\&.1機能ã«ä¾å­˜ã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã‚’JAXB 2\&.0ランタイム環境(Java SE 6ãªã©)ã§å®Ÿè¡Œã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-xmlschema
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òW3C XML¥¹¥­¡¼¥Þ¤È¤·¤Æ°·¤¤¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È)¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢ÆþÎÏ¥¹¥­¡¼¥Þ¤ÏW3C XML¥¹¥­¡¼¥Þ¤ÈƱ¤¸¤è¤¦¤Ë°·¤ï¤ì¤Þ¤¹¡£
+入力スキーマをW3C XMLスキーマã¨ã—ã¦æ‰±ã„ã¾ã™(デフォルト)。ã“ã®ã‚¹ã‚¤ãƒƒãƒã‚’指定ã—ãªã„å ´åˆã€å…¥åŠ›ã‚¹ã‚­ãƒ¼ãƒžã¯W3C XMLスキーマã¨åŒã˜ã‚ˆã†ã«æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-relaxing
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òRELAX NG¤È¤·¤Æ°·¤¤¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをRELAX NGã¨ã—ã¦æ‰±ã„ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-relaxing\-compact
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òRELAX NG°µ½Ì¹½Ê¸¤È¤·¤Æ½èÍý¤·¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをRELAX NG圧縮構文ã¨ã—ã¦å‡¦ç†ã—ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-dtd
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òXML DTD¤È¤·¤Æ°·¤¤¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをXML DTDã¨ã—ã¦æ‰±ã„ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-wsdl
 .RS 4
-ÆþÎϤòWSDL¤È¤·¤Æ°·¤¤¡¢¤½¤ÎÆâÉô¤Î¥¹¥­¡¼¥Þ¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£
+入力をWSDLã¨ã—ã¦æ‰±ã„ã€ãã®å†…部ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’コンパイルã—ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。
 .RE
 .PP
 \-quiet
 .RS 4
-¿ÊĽ¾ðÊó¤ä·Ù¹ð¤Ê¤É¡¢¥³¥ó¥Ñ¥¤¥é¤Î½ÐÎϤòÍÞÀ©¤·¤Þ¤¹¡£
+進æ—情報や警告ãªã©ã€ã‚³ãƒ³ãƒ‘イラã®å‡ºåŠ›ã‚’抑制ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¾ðÊó¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤¿¤êÆÃÄê¤Î¥¨¥é¡¼È¯À¸»þ¤Ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤òɽ¼¨¤·¤¿¤ê¤¹¤ë¤Ê¤É¡¢¤­¤ï¤á¤Æ¾éĹ¤Ë¤Ê¤ê¤Þ¤¹¡£
+情報メッセージを出力ã—ãŸã‚Šç‰¹å®šã®ã‚¨ãƒ©ãƒ¼ç™ºç”Ÿæ™‚ã«ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’表示ã—ãŸã‚Šã™ã‚‹ãªã©ã€ãã‚ã‚ã¦å†—é•·ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥¤¥Ã¥Á¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・スイッãƒã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIschema file/URL/dir\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ëÂоݤȤʤë1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ë¾ì¹ç¡¢\fIxjc\fR¥³¥Þ¥ó¥É¤Ï¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò¥¹¥­¥ã¥ó¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+コンパイル対象ã¨ãªã‚‹1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚ディレクトリを指定ã™ã‚‹å ´åˆã€\fIxjc\fRコマンドã¯ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’スキャンã—ã¦ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
 \-XLocator
 .RS 4
-À¸À®¤µ¤ì¤¿¥³¡¼¥É¤Ç¤Ï¡¢ÈóÀ°Î󲽤θå¤ËJava Bean¥¤¥ó¥¹¥¿¥ó¥¹¤Ë´Þ¤Þ¤ì¤ë¥½¡¼¥¹XML¤Ë´Ø¤¹¤ëSAX Locator¾ðÊ󤬸ø³«¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã§ã¯ã€éžæ•´åˆ—化ã®å¾Œã«Java Beanインスタンスã«å«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹XMLã«é–¢ã™ã‚‹SAX Locator情報ãŒå…¬é–‹ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xsync\-methods
 .RS 4
-À¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¡¦¥·¥°¥Ë¥Á¥ã¤Ë\fIsynchronized\fR¥­¡¼¥ï¡¼¥É¤¬´Þ¤á¤é¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚·ã‚°ãƒ‹ãƒãƒ£ã«\fIsynchronized\fRキーワードãŒå«ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-mark\-generated
 .RS 4
-À¸À®¤µ¤ì¤¿¥³¡¼¥É¤ËÃí¼á\fI@javax\&.annotation\&.Generated\fR¤òÉÕ¤±¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã«æ³¨é‡ˆ\fI@javax\&.annotation\&.Generated\fRを付ã‘ã¾ã™ã€‚
 .RE
 .PP
 \-episode file
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë»ØÄꤵ¤ì¤¿¥¨¥Ô¥½¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイルã”ã¨ã«æŒ‡å®šã•ã‚ŒãŸã‚¨ãƒ”ソード・ファイルを生æˆã—ã¾ã™ã€‚
 .RE
-.SS "Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó"
+.SS "éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ション"
 .PP
 \-host & \-port
 .RS 4
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-httpproxy\fR¥ª¥×¥·¥ç¥ó¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤·¤¿¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢²¼°Ì¸ß´¹À­¤ò³ÎÊݤ¹¤ë¤¿¤á¤Ë¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¤¬¡¢¥É¥­¥å¥á¥ó¥È¤Ë¤Ïµ­ºÜ¤µ¤ì¤º¡¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤Çºï½ü¤µ¤ì¤ë²ÄǽÀ­¤â¤¢¤ê¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯\fI\-httpproxy\fRオプションã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã—ãŸã€‚ã“れらã®ã‚ªãƒ—ションã¯ã€ä¸‹ä½äº’æ›æ€§ã‚’確ä¿ã™ã‚‹ãŸã‚ã«ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯è¨˜è¼‰ã•ã‚Œãšã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§å‰Šé™¤ã•ã‚Œã‚‹å¯èƒ½æ€§ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-use\-runtime
 .RS 4
-JAXB 2\&.0»ÅÍͤǤϡ¢°Ü¿¢À­¤Î¤¢¤ë¥é¥ó¥¿¥¤¥à´Ä¶­¤¬ÄêµÁ¤µ¤ì¤¿¤¿¤á¡¢JAXB RI¤¬\fI**/impl/runtime \fR¥Ñ¥Ã¥±¡¼¥¸¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¤¿¤á¡¢¤³¤Î¥¹¥¤¥Ã¥Á¤ÏÉÔÍפȤʤꡢºï½ü¤µ¤ì¤Þ¤·¤¿¡£
+JAXB 2\&.0仕様ã§ã¯ã€ç§»æ¤æ€§ã®ã‚るランタイム環境ãŒå®šç¾©ã•ã‚ŒãŸãŸã‚ã€JAXB RIãŒ\fI**/impl/runtime \fRパッケージを生æˆã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã—ãŸã€‚ã“ã®ãŸã‚ã€ã“ã®ã‚¹ã‚¤ãƒƒãƒã¯ä¸è¦ã¨ãªã‚Šã€å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚
 .RE
 .PP
 \-source
 .RS 4
-\fI\-source\fR¸ß´¹À­¥¹¥¤¥Ã¥Á¤Ï¡¢JAXB 2\&.0¤ÎºÇ½é¤ÎEarly AccessÈǤÇƳÆþ¤µ¤ì¤Þ¤·¤¿¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ÏJAXB 2\&.0¤Îº£¸å¤Î¥ê¥ê¡¼¥¹¤«¤éºï½ü¤µ¤ì¤Þ¤¹¡£1\&.0\&.x¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢1\&.0\&.x¥³¡¼¥É¡¦¥Ù¡¼¥¹¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-source\fR互æ›æ€§ã‚¹ã‚¤ãƒƒãƒã¯ã€JAXB 2\&.0ã®æœ€åˆã®Early Access版ã§å°Žå…¥ã•ã‚Œã¾ã—ãŸã€‚ã“ã®ã‚¹ã‚¤ãƒƒãƒã¯JAXB 2\&.0ã®ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã‹ã‚‰å‰Šé™¤ã•ã‚Œã¾ã™ã€‚1\&.0\&.xコードを生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€1\&.0\&.xコード・ベースã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’使用ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥³¥ó¥Ñ¥¤¥é¤ÎÀ©¸Â"
+.SH "コンパイラã®åˆ¶é™"
 .PP
-Ä̾ï¤Ï¡¢´ØÏ¢¤¹¤ë¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¤ò¡¢Æ±¤¸¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥¤¥Ã¥Á¤ò»ØÄꤷ¤Æ1¤Ä¤Îñ°Ì¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Î¤¬ºÇ¤â°ÂÁ´¤Ç¤¹¡£\fIxjc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¤Ï¡¢¼¡¤ÎÀ©¸Â¥ê¥¹¥È¤Ëα°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÎÌäÂê¤Î¤Û¤È¤ó¤É¤Ï¡¢\fIxjc\fR¥³¥Þ¥ó¥É¤ò²¿ÅÙ¤«¸Æ¤Ó½Ð¤·¤ÆÊ£¿ô¤Î¥¹¥­¡¼¥Þ¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ë¤Î¤ßÅö¤Æ¤Ï¤Þ¤ê¤Þ¤¹¡£
+通常ã¯ã€é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’ã€åŒã˜ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラ・スイッãƒã‚’指定ã—ã¦1ã¤ã®å˜ä½ã¨ã—ã¦ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã®ãŒæœ€ã‚‚安全ã§ã™ã€‚\fIxjc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã¯ã€æ¬¡ã®åˆ¶é™ãƒªã‚¹ãƒˆã«ç•™æ„ã—ã¦ãã ã•ã„。ã“れらã®å•é¡Œã®ã»ã¨ã‚“ã©ã¯ã€\fIxjc\fRコマンドを何度ã‹å‘¼ã³å‡ºã—ã¦è¤‡æ•°ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’コンパイルã™ã‚‹å ´åˆã«ã®ã¿å½“ã¦ã¯ã¾ã‚Šã¾ã™ã€‚
 .PP
-Ê£¿ô¤Î¥¹¥­¡¼¥Þ¤òƱ»þ¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¤ÎJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë¼¡¤ÎÍ¥Àè½ç°Ì¤Î¥ë¡¼¥ë¤¬Å¬ÍѤµ¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+複数ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’åŒæ™‚ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã®Javaパッケージåã«æ¬¡ã®å„ªå…ˆé †ä½ã®ãƒ«ãƒ¼ãƒ«ãŒé©ç”¨ã•ã‚Œã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -271,7 +271,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-\fI\-p\fR¥ª¥×¥·¥ç¥ó¤¬ºÇ¤âÍ¥À褵¤ì¤Þ¤¹¡£
+\fI\-p\fRオプションãŒæœ€ã‚‚優先ã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -282,7 +282,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-\fIjaxb:package\fR¤Î¥«¥¹¥¿¥Þ¥¤¥º¡£
+\fIjaxb:package\fRã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã€‚
 .RE
 .sp
 .RS 4
@@ -293,7 +293,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-\fItargetNamespace\fR¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIt\fR\fIargetNamespace\fR¤ò»ÅÍͤÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¥¢¥ë¥´¥ê¥º¥à¤ËŬÍѤ·¤Þ¤¹¡£
+\fItargetNamespace\fRãŒå®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIt\fR\fIargetNamespace\fRを仕様ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹Javaパッケージåã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«é©ç”¨ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -304,15 +304,15 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-\fItargetNamespace\fR¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIgenerated\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fItargetNamespace\fRãŒå®£è¨€ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIgenerated\fRã¨ã„ã†åå‰ã®ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ‘ッケージを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-1¤Ä¤Î¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤¬Ê£¿ô¤Î\fIjaxb:schemaBindings\fR¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤¿¤á¡¢°Û¤Ê¤ëJava¥Ñ¥Ã¥±¡¼¥¸¤Ë¥³¥ó¥Ñ¥¤¥é¤µ¤ì¤ëƱ°ì¥¿¡¼¥²¥Ã¥È¡¦¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤¬2¤Ä¤Î¥¹¥­¡¼¥Þ¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+1ã¤ã®ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒè¤‡æ•°ã®\fIjaxb:schemaBindings\fRã‚’æŒã¤ã“ã¨ã¯ã§ããªã„ãŸã‚ã€ç•°ãªã‚‹Javaパッケージã«ã‚³ãƒ³ãƒ‘イラã•ã‚Œã‚‹åŒä¸€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒ2ã¤ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’æŒã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .PP
-Ʊ¤¸Java¥Ñ¥Ã¥±¡¼¥¸¤Ë¥³¥ó¥Ñ¥¤¥é¤µ¤ì¤ë¥¹¥­¡¼¥Þ¤Ï¤¹¤Ù¤Æ¡¢Æ±»þ¤ËXJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ËÁ÷¿®¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ÊÌ¡¹¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢Í½Áۤɤª¤ê¤Ëµ¡Ç½¤·¤Þ¤»¤ó¡£
+åŒã˜Javaパッケージã«ã‚³ãƒ³ãƒ‘イラã•ã‚Œã‚‹ã‚¹ã‚­ãƒ¼ãƒžã¯ã™ã¹ã¦ã€åŒæ™‚ã«XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã«é€ä¿¡ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚別々ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã¨ã€äºˆæƒ³ã©ãŠã‚Šã«æ©Ÿèƒ½ã—ã¾ã›ã‚“。
 .PP
-Ê£¿ô¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Ë¤Þ¤¿¤¬¤ëÍ×ÁÇÃÖ´¹¥°¥ë¡¼¥×¤Ï¡¢Æ±»þ¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+複数ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¾ãŸãŒã‚‹è¦ç´ ç½®æ›ã‚°ãƒ«ãƒ¼ãƒ—ã¯ã€åŒæ™‚ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -322,7 +322,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/xjc\&.html¤Î
+http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/xjc\&.htmlã®
 Binding Compiler (xjc)
 .RE
 .sp
@@ -334,7 +334,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://www\&.oracle\&.com/technetwork/articles/javase/index\-140168\&.html¤Î
+http://www\&.oracle\&.com/technetwork/articles/javase/index\-140168\&.htmlã®
 Java Architecture for XML Binding (JAXB)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/appletviewer.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/appletviewer.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: appletviewer
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "appletviewer" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "appletviewer" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-appletviewer \- Web¥Ö¥é¥¦¥¶¤Î³°Â¦¤Ç¥¢¥×¥ì¥Ã¥È¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+appletviewer \- Webブラウザã®å¤–å´ã§ã‚¢ãƒ—レットを実行ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,39 +64,39 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIurl\fR
 .RS 4
-ɽ¼¨¤¹¤ë¥É¥­¥å¥á¥ó¥È¤Þ¤¿¤Ï¥ê¥½¡¼¥¹¤Î¾ì½ê¡£¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿Ê£¿ô¤ÎURL¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+表示ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¾ãŸã¯ãƒªã‚½ãƒ¼ã‚¹ã®å ´æ‰€ã€‚空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸè¤‡æ•°ã®URLを指定ã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï\fIurls\fR¤Ë»ØÄꤵ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¢¤ë¤¤¤Ï¥ê¥½¡¼¥¹¤ÈÀܳ¤·¤Æ¡¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤¬»²¾È¤¹¤ë¤½¤ì¤¾¤ì¤Î¥¢¥×¥ì¥Ã¥È¤òÆȼ«¤Î¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤·¤Þ¤¹¡£urls¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¬¡¢\fIOBJECT\fR¡¢\fIEMBED\fR¤Þ¤¿¤Ï\fIAPPLET\fR¥¿¥°¤Ç¤É¤Î¥¢¥×¥ì¥Ã¥È¤â»²¾È¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï²¿¤â¹Ô¤¤¤Þ¤»¤ó¡£\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëHTML¥¿¥°¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/appletviewertags\&.html¤Ë¤¢¤ë
-¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¡¦¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIappletviewer\fRコマンドã¯\fIurls\fRã«æŒ‡å®šã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚ã‚‹ã„ã¯ãƒªã‚½ãƒ¼ã‚¹ã¨æŽ¥ç¶šã—ã¦ã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒå‚ç…§ã™ã‚‹ãã‚Œãžã‚Œã®ã‚¢ãƒ—レットを独自ã®ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã§è¡¨ç¤ºã—ã¾ã™ã€‚urlsã«ã‚ˆã£ã¦å‚ç…§ã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€\fIOBJECT\fRã€\fIEMBED\fRã¾ãŸã¯\fIAPPLET\fRã‚¿ã‚°ã§ã©ã®ã‚¢ãƒ—レットもå‚ç…§ã—ã¦ã„ãªã„å ´åˆã€\fIappletviewer\fRコマンドã¯ä½•ã‚‚è¡Œã„ã¾ã›ã‚“。\fIappletviewer\fRコマンドã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹HTMLã‚¿ã‚°ã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/appletviewertags\&.htmlã«ã‚ã‚‹
+アプレット・ビューア・タグをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï¡¢RFC2396¤ÇÄêµÁ¤µ¤ì¤¿¥¨¥¹¥±¡¼¥×¡¦¥á¥«¥Ë¥º¥à¤Ë½¾¤Ã¤Æ¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿URL¤òɬÍפȤ·¤Þ¤¹¡£¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤Î¤Ï¡¢¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿URL¤Î¤ß¤Ç¤¹¡£¤¿¤À¤·¡¢¥Õ¥¡¥¤¥ë̾¤Ë¤Ä¤¤¤Æ¤Ï¡¢RFC2396¤Î»ÅÍͤ˽¾¤Ã¤Æ¥¨¥ó¥³¡¼¥É¤ò²ò½ü¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+\fIappletviewer\fRコマンドã¯ã€RFC2396ã§å®šç¾©ã•ã‚ŒãŸã‚¨ã‚¹ã‚±ãƒ¼ãƒ—・メカニズムã«å¾“ã£ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸURLã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚サãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã®ã¯ã€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸURLã®ã¿ã§ã™ã€‚ãŸã ã—ã€ãƒ•ã‚¡ã‚¤ãƒ«åã«ã¤ã„ã¦ã¯ã€RFC2396ã®ä»•æ§˜ã«å¾“ã£ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’解除ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
+\fB注æ„:\fR
 The
-\fIappletviewer\fR¥³¥Þ¥ó¥É¤Ï³«È¯ÀìÍѤǤ¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/aboutCodeSamples\&.html¤Ë¤¢¤ë
-¥µ¥ó¥×¥ë/¥Æ¥¹¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ª¤è¤Ó¥³¡¼¥É¤Ë¤Ä¤¤¤Æ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIappletviewer\fRコマンドã¯é–‹ç™ºå°‚用ã§ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/aboutCodeSamples\&.htmlã«ã‚ã‚‹
+サンプル/テスト・アプリケーションãŠã‚ˆã³ã‚³ãƒ¼ãƒ‰ã«ã¤ã„ã¦ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-debug
 .RS 4
-\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJava¥Ç¥Ð¥Ã¥¬¤Ç¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¤ò³«»Ï¤·¤Æ¡¢¥É¥­¥å¥á¥ó¥ÈÃæ¤Î¥¢¥×¥ì¥Ã¥È¤ò¥Ç¥Ð¥Ã¥°¤·¤Þ¤¹¡£
+\fIjdb\fRコマンドを使用ã—ã¦Javaデãƒãƒƒã‚¬ã§ã‚¢ãƒ—レット・ビューアを開始ã—ã¦ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆä¸­ã®ã‚¢ãƒ—レットをデãƒãƒƒã‚°ã—ã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\-name\fR
 .RS 4
-ÆþÎÏHTML¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+入力HTMLファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°åを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIjavaoption\fR
 .RS 4
-ʸ»úÎó\fIjavaoption\fR¤Ï¡¢¥¢¥×¥ì¥Ã¥È¡¦¥Ó¥å¡¼¥¢¤ò¼Â¹Ô¤¹¤ëJava¥¤¥ó¥¿¥×¥ê¥¿¤Ë1¤Ä¤Î°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤Þ¤¹¡£°ú¿ô¤Ë¥¹¥Ú¡¼¥¹¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£Ê£¿ô¤Î°ú¿ô¤Ï¡¢¤¹¤Ù¤Æ¤¬ÀÜƬ¼­\fI\-J\fR¤Ç»Ï¤Þ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤÎÄ´À°¤ËÍ­¸ú¤Ç¤¹¡£
+文字列\fIjavaoption\fRã¯ã€ã‚¢ãƒ—レット・ビューアを実行ã™ã‚‹Javaインタプリタã«1ã¤ã®å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã¾ã™ã€‚引数ã«ã‚¹ãƒšãƒ¼ã‚¹ã‚’å«ã‚ãªã„ã§ãã ã•ã„。複数ã®å¼•æ•°ã¯ã€ã™ã¹ã¦ãŒæŽ¥é ­è¾ž\fI\-J\fRã§å§‹ã¾ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚³ãƒ³ãƒ‘イラã®å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã®èª¿æ•´ã«æœ‰åŠ¹ã§ã™ã€‚
 .RE
 .PP
 
--- a/jdk/src/solaris/doc/sun/man/man1/ja/idlj.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/idlj.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: idlj
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "idlj" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "idlj" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-idlj \- »ØÄꤵ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+idlj \- 指定ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹å®šç¾©è¨€èªž(IDL)ファイルã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,22 +64,22 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£options¤Î½çÈÖ¤ÏǤ°Õ¤Ç¤¹¤¬¡¢\fIidlfile\fR¤è¤ê¤âÁ°¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。optionsã®é †ç•ªã¯ä»»æ„ã§ã™ãŒã€\fIidlfile\fRよりもå‰ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIidlfile\fR
 .RS 4
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¤Ë¤è¤ëÄêµÁ¤¬´Þ¤Þ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+インタフェース定義言語(IDL)ã«ã‚ˆã‚‹å®šç¾©ãŒå«ã¾ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Ï¡¢»ØÄꤵ¤ì¤¿IDL¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.html¤Ë¤¢¤ë
-Java IDL: Java¸À¸ì¥Þ¥Ã¥Ô¥ó¥°¤Ø¤ÎIDL¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+IDL\-to\-Javaコンパイラã¯ã€æŒ‡å®šã•ã‚ŒãŸIDLファイルã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.htmlã«ã‚ã‚‹
+Java IDL: Java言語マッピングã¸ã®IDLã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Î°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤ÎÃæ¤Ë¤Ï¡¢\fIidltojava\fR¤È¤¤¤¦Ì¾Á°¤À¤Ã¤¿¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£
-.SS "¥¯¥é¥¤¥¢¥ó¥È¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ª¤è¤Ó¥µ¡¼¥Ð¡¼¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Îȯ¹Ô"
+IDL\-to\-Javaコンパイラã®ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®ä¸­ã«ã¯ã€\fIidltojava\fRã¨ã„ã†åå‰ã ã£ãŸã‚‚ã®ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "クライアント・ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŠã‚ˆã³ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ç™ºè¡Œ"
 .PP
-¼¡¤Î\fIidlj\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò´Þ¤à\fIMy\&.idl\fR¤È¤¤¤¦Ì¾Á°¤ÎIDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®\fIidlj\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’å«ã‚€\fIMy\&.idl\fRã¨ã„ã†åå‰ã®IDLファイルを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -91,7 +91,7 @@
 .RE
 .\}
 .PP
-Á°¤Î¹½Ê¸¤Ï¼¡¤ÈƱÅù¤Ç¤¹¡£
+å‰ã®æ§‹æ–‡ã¯æ¬¡ã¨åŒç­‰ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -103,7 +103,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤·¡¢¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¤ò´Þ¤á¤Æ¤ª¤ê¡¢¤³¤ì¤é¤Ï¤¹¤Ù¤Æ¡¢POA (·Ñ¾µ¥â¥Ç¥ë)¤Ç¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚µãƒ¼ãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã—ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã‚’å«ã‚ã¦ãŠã‚Šã€ã“れらã¯ã™ã¹ã¦ã€POA (継承モデル)ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -115,7 +115,7 @@
 .RE
 .\}
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¦¤È¥µ¡¼¥Ð¡¼Â¦¤ÎξÊý¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É(¤É¤ì¤âÅù²Á)¤Î¤¦¤Á¤Î1¤Ä¤ò»ÈÍѤ·¤Þ¤¹¡£
+クライアントå´ã¨ã‚µãƒ¼ãƒãƒ¼å´ã®ä¸¡æ–¹ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰(ã©ã‚Œã‚‚等価)ã®ã†ã¡ã®1ã¤ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -128,7 +128,7 @@
 .RE
 .\}
 .PP
-¥µ¡¼¥Ð¡¼Â¦¤Ç²Äǽ¤Ê¥â¥Ç¥ë¤Ï2¤Ä¤¢¤ê¤Þ¤¹¡£°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë¤ÈTie¥â¥Ç¥ë¤Ç¤¹¡£Tie°Ñ¾ù¥â¥Ç¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+サーãƒãƒ¼å´ã§å¯èƒ½ãªãƒ¢ãƒ‡ãƒ«ã¯2ã¤ã‚ã‚Šã¾ã™ã€‚移殖å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã¨Tieモデルã§ã™ã€‚Tie委譲モデルをå‚ç…§ã—ã¦ãã ã•ã„。
 .if n \{\
 .sp
 .\}
@@ -138,21 +138,21 @@
 .nr an-break-flag 1
 .br
 .ps +1
-\fB°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë\fR
+\fB移殖å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«\fR
 .ps -1
 .br
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥µ¡¼¥Ð¡¼Â¦¤Î¥â¥Ç¥ë¤Ï¡¢°Ü¿£²Äǽ¥µ¡¼¥Ð¥ó¥È·Ñ¾µ¥â¥Ç¥ë¤Ç¤¹¡£\fIMy\&.idl\fRÆâ¤Ç\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIMyPOA\&.java\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¡¢\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fIMyPOA\fR¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIMyPOA\&.java\fR¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/api/org/omg/PortableServer/Servant\&.html¤Ë¤¢¤ë
-\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤ò³ÈÄ¥¤¹¤ë¥¹¥È¥ê¡¼¥à¥Ù¡¼¥¹¤Î¥¹¥±¥ë¥È¥ó¤Ç¤¹¡£
+デフォルトã®ã‚µãƒ¼ãƒãƒ¼å´ã®ãƒ¢ãƒ‡ãƒ«ã¯ã€ç§»æ®–å¯èƒ½ã‚µãƒ¼ãƒãƒ³ãƒˆç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã§ã™ã€‚\fIMy\&.idl\fR内ã§\fIMy\fRインタフェースãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIMyPOA\&.java\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy\fRインタフェースã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€\fIMy\fRインタフェースã¯\fIMyPOA\fRクラスã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIMyPOA\&.java\fRã¯ã€http://docs\&.oracle\&.com/javase/8/docs/api/org/omg/PortableServer/Servant\&.htmlã«ã‚ã‚‹
+\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスを拡張ã™ã‚‹ã‚¹ãƒˆãƒªãƒ¼ãƒ ãƒ™ãƒ¼ã‚¹ã®ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã§ã™ã€‚
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¥¹¥±¥ë¥È¥ó¤¬¼ÂÁõ¤¹¤ëIDL¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤ë\fIcallHandler\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÈÁàºî¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤·¤Þ¤¹¡£
+\fIMy\fRインタフェースã¯ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãŒå®Ÿè£…ã™ã‚‹IDLインタフェースã«é–¢é€£ä»˜ã‘られã¦ã„ã‚‹\fIcallHandler\fRインタフェースã¨æ“作インタフェースを実装ã—ã¾ã™ã€‚
 .PP
-¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤Î\fIPortableServer\fR¥â¥¸¥å¡¼¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¤Î\fIServant\fR·¿¤òÄêµÁ¤·¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/POA\&.html¤Ë¤¢¤ë
-¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã®\fIPortableServer\fRモジュールã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–ã®\fIServant\fR型を定義ã—ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/POA\&.htmlã«ã‚ã‚‹
+ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢\fIServant\fR·¿¤ÏJava¤Î\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¹¤Ù¤Æ¤ÎPOA¥µ¡¼¥Ð¥ó¥È¼ÂÁõ¤Î¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤È¤·¤Æµ¡Ç½¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¸Æ¤Ó½Ð¤¹¤³¤È¤Î¤Ç¤­¤ë¤¤¤¯¤Ä¤«¤Î¥á¥½¥Ã¥É¡¢¤ª¤è¤ÓPOA¤Ë¤è¤Ã¤Æ¸Æ¤Ó½Ð¤µ¤ì¡¢¥µ¡¼¥Ð¥ó¥È¤ÎÆ°ºî¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë¥æ¡¼¥¶¡¼¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤ë¥á¥½¥Ã¥É¤òÄ󶡤·¤Þ¤¹¡£
+Javaプログラミング言語ã§ã¯ã€\fIServant\fRåž‹ã¯Javaã®\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスã«ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã™ã¹ã¦ã®POAサーãƒãƒ³ãƒˆå®Ÿè£…ã®ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¯ãƒ©ã‚¹ã¨ã—ã¦æ©Ÿèƒ½ã—ã€ã‚¢ãƒ—リケーション・プログラマãŒå‘¼ã³å‡ºã™ã“ã¨ã®ã§ãã‚‹ã„ãã¤ã‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³POAã«ã‚ˆã£ã¦å‘¼ã³å‡ºã•ã‚Œã€ã‚µãƒ¼ãƒãƒ³ãƒˆã®å‹•ä½œã‚’制御ã™ã‚‹ãŸã‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãるメソッドをæä¾›ã—ã¾ã™ã€‚
 .PP
-·Ñ¾µ¥â¥Ç¥ë¤Î¤â¤¦1¤Ä¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-oldImplBase\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤Æ¡¢Java SE 1\&.4¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤È¸ß´¹À­¤Î¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¤³¤È¤Ç¤¹¡£\-\fIoldImplBase\fR¥Õ¥é¥°¤ÏÈóɸ½à¤Ç¡¢¤³¤ì¤é¤ÎAPI¤ÏÈó¿ä¾©¤Ç¤¹¡£¤³¤Î¥Õ¥é¥°¤ò»ÈÍѤ¹¤ë¤Î¤Ï¡¢Java SE 1\&.3¤Çµ­½Ò¤µ¤ì¤¿´û¸¤Î¥µ¡¼¥Ð¡¼¤È¤Î¸ß´¹À­¤¬É¬Íפʾì¹ç¤Î¤ß¤Ç¤¹¡£¤½¤Î¾ì¹ç¡¢´û¸¤Îmake¥Õ¥¡¥¤¥ë¤òÊѹ¹¤·¤Æ¡¢\fI\-oldImplBase\fR¥Õ¥é¥°¤ò\fIidlj\fR¥³¥ó¥Ñ¥¤¥é¤ËÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢POA¥Ù¡¼¥¹¤Î¥µ¡¼¥Ð¡¼Â¦¥Þ¥Ã¥Ô¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£²¼°Ì¸ß´¹À­¤Î¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+継承モデルã®ã‚‚ã†1ã¤ã®ã‚ªãƒ—ションã¯ã€\fI\-oldImplBase\fRフラグを使用ã—ã¦ã€Java SE 1\&.4よりå‰ã®ãƒªãƒªãƒ¼ã‚¹ã®Javaプログラミング言語ã¨äº’æ›æ€§ã®ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹ã“ã¨ã§ã™ã€‚\-\fIoldImplBase\fRフラグã¯éžæ¨™æº–ã§ã€ã“れらã®APIã¯éžæŽ¨å¥¨ã§ã™ã€‚ã“ã®ãƒ•ãƒ©ã‚°ã‚’使用ã™ã‚‹ã®ã¯ã€Java SE 1\&.3ã§è¨˜è¿°ã•ã‚ŒãŸæ—¢å­˜ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã®äº’æ›æ€§ãŒå¿…è¦ãªå ´åˆã®ã¿ã§ã™ã€‚ãã®å ´åˆã€æ—¢å­˜ã®makeファイルを変更ã—ã¦ã€\fI\-oldImplBase\fRフラグを\fIidlj\fRコンパイラã«è¿½åŠ ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€POAベースã®ã‚µãƒ¼ãƒãƒ¼å´ãƒžãƒƒãƒ”ングãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚下ä½äº’æ›æ€§ã®ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’生æˆã™ã‚‹ã«ã¯ã€æ¬¡ã‚’実行ã—ã¾ã™ã€‚
 .sp .5v
 .RE
 .sp
@@ -167,7 +167,7 @@
 .RE
 .\}
 .PP
-\fIMy\&.idl\fRÆâ¤Ç\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI_MyImplBase\&.java\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¡¢\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fI_MyImplBase\fR¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\&.idl\fR内ã§\fIMy\fRインタフェースãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI_MyImplBase\&.java\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy\fRインタフェースã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€\fIMy\fRインタフェースã¯\fI_MyImplBase\fRクラスã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .if n \{\
 .sp
 .\}
@@ -177,11 +177,11 @@
 .nr an-break-flag 1
 .br
 .ps +1
-\fBTie°Ñ¾ù¥â¥Ç¥ë\fR
+\fBTie委譲モデル\fR
 .ps -1
 .br
 .PP
-¤â¤¦1¤Ä¤Î¥µ¡¼¥Ð¡¼Â¦¥â¥Ç¥ë¤Ï¡¢Tie¥â¥Ç¥ë¤È¸Æ¤Ð¤ì¤ë¤â¤Î¤Ç¤¹¡£¤³¤Î¥µ¡¼¥Ð¡¼Â¦¥â¥Ç¥ë¤Ï¡¢°Ñ¾ù¥â¥Ç¥ë¤Ç¤¹¡£Tie¤È¥¹¥±¥ë¥È¥ó¤òƱ»þ¤ËÀ¸À®¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤¿¤á¡¢¤½¤ì¤é¤ÏÊÌ¡¹¤ËÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢Tie¥â¥Ç¥ëÍѤΥХ¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+ã‚‚ã†1ã¤ã®ã‚µãƒ¼ãƒãƒ¼å´ãƒ¢ãƒ‡ãƒ«ã¯ã€Tieモデルã¨å‘¼ã°ã‚Œã‚‹ã‚‚ã®ã§ã™ã€‚ã“ã®ã‚µãƒ¼ãƒãƒ¼å´ãƒ¢ãƒ‡ãƒ«ã¯ã€å§”譲モデルã§ã™ã€‚Tieã¨ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã‚’åŒæ™‚ã«ç”Ÿæˆã™ã‚‹ã“ã¨ã¯ã§ããªã„ãŸã‚ã€ãれらã¯åˆ¥ã€…ã«ç”Ÿæˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€Tieモデル用ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp .5v
 .RE
 .sp
@@ -196,7 +196,7 @@
 .RE
 .\}
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢2ÈÖÌܤΥ³¥Þ¥ó¥É¤Ë¤è¤ê¡¢\fIMyPOATie\&.java\fR¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMyPOATie\fR¥¯¥é¥¹¤Ø¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢delegate¤ò¼è¤ê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎPOA¥â¥Ç¥ë¤ò»ÈÍѤ·¤Æ¤¤¤ë¤¿¤á¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Ë¤âPOA¤¬É¬ÍפǤ¹¡£delegate¤ËÂФ·¤Æ¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤³¤Î¼ÂÁõ¤Ï\fIMyOperations\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤ß¤Ç¡¢¤½¤Î¾¤Î¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤òORB¤È°ì½ï¤Ë»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¼¡¤Î¤è¤¦¤Ë\fIMyPOATie\fR¥¯¥é¥¹Æâ¤Ç¼ÂÁõ¤ò¥é¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\fRインタフェースã®å ´åˆã€2番目ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šã€\fIMyPOATie\&.java\fRãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMyPOATie\fRクラスã¸ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¯ã€delegateã‚’å–ã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®POAモデルを使用ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã«ã‚‚POAãŒå¿…è¦ã§ã™ã€‚delegateã«å¯¾ã—ã¦å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ã“ã®å®Ÿè£…ã¯\fIMyOperations\fRインタフェースã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã¿ã§ã€ãã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã“れをORBã¨ä¸€ç·’ã«ä½¿ç”¨ã™ã‚‹ã«ã¯ã€ãŸã¨ãˆã°æ¬¡ã®ã‚ˆã†ã«\fIMyPOATie\fRクラス内ã§å®Ÿè£…をラップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -222,9 +222,9 @@
 .RE
 .\}
 .PP
-¾¤Î¼ÂÁõ¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢É¸½à¤Î·Ñ¾µ¥â¥Ç¥ë¤Ç¤Ï¤Ê¤¯Tie¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Java¤Î¾ì¹ç¤Ï¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î·Ñ¾µ¤Î¸Ä¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢¥¯¥é¥¹¤Î·Ñ¾µ¤Ë»ÈÍѤǤ­¤ë¥¹¥í¥Ã¥È¤Ï1¤Ä¤Î¤ß¤Ç¤¹¡£·Ñ¾µ¥â¥Ç¥ë¤ò»ÈÍѤ·¤¿¾ì¹ç¤Ï¡¢¤½¤Î¥¹¥í¥Ã¥È¤¬ÀêÍ­¤µ¤ì¤Þ¤¹¡£Tie¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë¤È¡¢¤½¤Î¥¹¥í¥Ã¥È¤¬»ÈÍѤµ¤ì¤º¡¢¥æ¡¼¥¶¡¼¤¬Æȼ«¤ÎÌÜŪ¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ë¤Ï¡¢´ÖÀÜÀ­¤Î¥ì¥Ù¥ë¤¬1¤ÄƳÆþ¤µ¤ì¤ë¤È¤¤¤¦Ã»½ê¤¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤È¤­¤Ë¡¢Í¾Ê¬¤Ê¥á¥½¥Ã¥É¸Æ½Ð¤·¤¬1²óȯÀ¸¤·¤Þ¤¹¡£
+ä»–ã®å®Ÿè£…ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€æ¨™æº–ã®ç¶™æ‰¿ãƒ¢ãƒ‡ãƒ«ã§ã¯ãªãTieモデルを使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚Javaã®å ´åˆã¯ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ç¶™æ‰¿ã®å€‹æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ã‚¯ãƒ©ã‚¹ã®ç¶™æ‰¿ã«ä½¿ç”¨ã§ãるスロットã¯1ã¤ã®ã¿ã§ã™ã€‚継承モデルを使用ã—ãŸå ´åˆã¯ã€ãã®ã‚¹ãƒ­ãƒƒãƒˆãŒå æœ‰ã•ã‚Œã¾ã™ã€‚Tieモデルを使用ã™ã‚‹ã¨ã€ãã®ã‚¹ãƒ­ãƒƒãƒˆãŒä½¿ç”¨ã•ã‚Œãšã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒç‹¬è‡ªã®ç›®çš„ã§ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®æ–¹æ³•ã«ã¯ã€é–“接性ã®ãƒ¬ãƒ™ãƒ«ãŒ1ã¤å°Žå…¥ã•ã‚Œã‚‹ã¨ã„ã†çŸ­æ‰€ãŒã‚ã‚Šã¾ã™ã€‚メソッドを呼ã³å‡ºã™ã¨ãã«ã€ä½™åˆ†ãªãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ãŒ1回発生ã—ã¾ã™ã€‚
 .PP
-¥µ¡¼¥Ð¡¼Â¦¤ÎÀ¸À®¤Î¾ì¹ç¡¢Java SE 1\&.4¤è¤êÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤ÎJava¸À¸ì¤Ë¥Þ¥Ã¥Ô¥ó¥°¤¹¤ëIDL¤Î¥Ð¡¼¥¸¥ç¥ó¤È¸ß´¹À­¤Î¤¢¤ë¡¢Tie¥â¥Ç¥ë¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¹¡£
+サーãƒãƒ¼å´ã®ç”Ÿæˆã®å ´åˆã€Java SE 1\&.4よりå‰ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®Java言語ã«ãƒžãƒƒãƒ”ングã™ã‚‹IDLã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨äº’æ›æ€§ã®ã‚ã‚‹ã€Tieモデルã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -237,7 +237,7 @@
 .RE
 .\}
 .PP
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢¤³¤ì¤Ë¤è¤ê¡¢\fIMy_Tie\&.java\fR¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fIMy_Tie\fR¥¯¥é¥¹¤Ø¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢\fIimpl\fR¥ª¥Ö¥¸¥§¥¯¥È¤ò¼è¤ê¤Þ¤¹¡£\fIimpl\fR¤ËÂФ·¤Æ¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤Î¼ÂÁõ¤Ï\fIHelloOperations\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤ß¤Ç¡¢¤½¤Î¾¤Î¥¯¥é¥¹¤«¤é·Ñ¾µ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤·¤«¤·¡¢¤³¤ì¤òORB¤È°ì½ï¤Ë»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¼¡¤Î¤è¤¦¤Ë\fIMy_Tie\fRÆâ¤Ç¼ÂÁõ¤ò¥é¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIMy\fRインタフェースã®å ´åˆã€ã“ã‚Œã«ã‚ˆã‚Šã€\fIMy_Tie\&.java\fRãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fIMy_Tie\fRクラスã¸ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¯ã€\fIimpl\fRオブジェクトをå–ã‚Šã¾ã™ã€‚\fIimpl\fRã«å¯¾ã—ã¦å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãã®å®Ÿè£…ã¯\fIHelloOperations\fRインタフェースã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã¿ã§ã€ãã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‹ã‚‰ç¶™æ‰¿ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã—ã‹ã—ã€ã“れをORBã¨ä¸€ç·’ã«ä½¿ç”¨ã™ã‚‹ã«ã¯ã€ãŸã¨ãˆã°æ¬¡ã®ã‚ˆã†ã«\fIMy_Tie\fR内ã§å®Ÿè£…をラップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -258,15 +258,15 @@
 .if n \{\
 .RE
 .\}
-.SS "ȯ¹Ô¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÎÂåÂØ°ÌÃ֤λØÄê"
+.SS "発行ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®ä»£æ›¿ä½ç½®ã®æŒ‡å®š"
 .PP
-ȯ¹Ô¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤¯¤Ë¤Ï¡¢\fIi\fR\fIdlj \-td /altdir My\&.idl\fR¤Î¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+発行ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªä»¥å¤–ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç½®ãã«ã¯ã€\fIi\fR\fIdlj \-td /altdir My\&.idl\fRã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .PP
 
-\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ì¹ç¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fI\&./My\&.java\fR¤Ç¤Ï¤Ê¤¯¡¢\fI/altdir/My\&.java\fR¤Ê¤É¤Ëȯ¹Ô¤µ¤ì¤Þ¤¹¡£
-.SS "¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ÎÂåÂØ°ÌÃ֤λØÄê"
+\fIMy\fRインタフェースã®å ´åˆã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fI\&./My\&.java\fRã§ã¯ãªãã€\fI/altdir/My\&.java\fRãªã©ã«ç™ºè¡Œã•ã‚Œã¾ã™ã€‚
+.SS "インクルード・ファイルã®ä»£æ›¿ä½ç½®ã®æŒ‡å®š"
 .PP
-\fIMy\&.idl\fR¥Õ¥¡¥¤¥ë¤¬Ê̤Î\fIidl\fR¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë\fIMyOther\&.idl\fR¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¡¢\fIMyOther\&.idl\fR¥Õ¥¡¥¤¥ë¤¬¥í¡¼¥«¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¸ºß¤¹¤ë¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤½¤ì¤¬\fI/includes\fR¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+\fIMy\&.idl\fRファイルãŒåˆ¥ã®\fIidl\fRファイルã§ã‚ã‚‹\fIMyOther\&.idl\fRをインクルードã™ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã§ã¯ã€\fIMyOther\&.idl\fRファイルãŒãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å­˜åœ¨ã™ã‚‹ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€ãã‚ŒãŒ\fI/includes\fRã«ã‚ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -278,7 +278,7 @@
 .RE
 .\}
 .PP
-¤¿¤È¤¨¤Ð¡¢\fI/moreIncludes\fR¤Ë¤¢¤ë\fIAnother\&.idl\fR¤â\fIMy\&.idl\fR¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fI/moreIncludes\fRã«ã‚ã‚‹\fIAnother\&.idl\fRã‚‚\fIMy\&.idl\fRã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹ã®ã§ã‚ã‚Œã°ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã§ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -290,7 +290,7 @@
 .RE
 .\}
 .PP
-¤³¤Î¤è¤¦¤Ê·Á¼°¤Î\fIinclude\fR¤ÏŤ¯¤Ê¤ë¤¿¤á¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤¹¤ë¤¿¤á¤ÎÊ̤ÎÊýË¡¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢´Ä¶­ÊÑ¿ô¤Î¹Í¤¨Êý¤È»÷¤Æ¤¤¤Þ¤¹¡£\fICLASSPATH\fRÊÑ¿ô¤Ë°ìÍ÷ɽ¼¨¤µ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ëidl\&.config¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¤½¤Î\fIidl\&.config\fR¤ÎÃæ¤Ë¡¢¼¡¤Î¤è¤¦¤Ê·Á¼°¤Î¹Ô¤òÆþ¤ì¤Þ¤¹¡£
+ã“ã®ã‚ˆã†ãªå½¢å¼ã®\fIinclude\fRã¯é•·ããªã‚‹ãŸã‚ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã™ã‚‹å ´æ‰€ã‚’コンパイラã«æŒ‡ç¤ºã™ã‚‹ãŸã‚ã®åˆ¥ã®æ–¹æ³•ãŒç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ç’°å¢ƒå¤‰æ•°ã®è€ƒãˆæ–¹ã¨ä¼¼ã¦ã„ã¾ã™ã€‚\fICLASSPATH\fR変数ã«ä¸€è¦§è¡¨ç¤ºã•ã‚Œã¦ã„るディレクトリ内ã«idl\&.configã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚ãã®\fIidl\&.config\fRã®ä¸­ã«ã€æ¬¡ã®ã‚ˆã†ãªå½¢å¼ã®è¡Œã‚’入れã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -302,10 +302,10 @@
 .RE
 .\}
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥ê¥¹¥È¤òÆɤ߹þ¤ß¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤Ï¥»¥ß¥³¥í¥ó(;)¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î¶èÀÚ¤êʸ»ú¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£Windows¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥»¥ß¥³¥í¥ó¤ò»ÈÍѤ·¡¢UNIX¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥³¥í¥ó¤ò»ÈÍѤ¹¤ë¤Ê¤É¤Ç¤¹¡£
-.SS "¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Îȯ¹Ô"
+コンパイラã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒªã‚¹ãƒˆã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã«ãªã£ã¦ã„ã¾ã™ã€‚ã“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¯ã€ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚Windowsプラットフォームã§ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã‚’使用ã—ã€UNIXプラットフォームã§ã¯ã‚³ãƒ­ãƒ³ã‚’使用ã™ã‚‹ãªã©ã§ã™ã€‚
+.SS "インクルード・ファイルã«å¯¾ã™ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ç™ºè¡Œ"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤷ¤¿\fIidl\fR¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ä¹½Â¤ÂΤʤɤˤĤ¤¤Æ¤Î¤ß¡¢Java¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë·¿¤Ë¤Ä¤¤¤Æ¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î2¤Ä¤Î\fIidl\fR¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¹Í¤¨¤Æ¤ß¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æŒ‡å®šã—ãŸ\fIidl\fRファイルã§å®šç¾©ã•ã‚Œã¦ã„るインタフェースや構造体ãªã©ã«ã¤ã„ã¦ã®ã¿ã€Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚インクルードã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹åž‹ã«ã¤ã„ã¦ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®2ã¤ã®\fIidl\fRファイルã«ã¤ã„ã¦è€ƒãˆã¦ã¿ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -328,7 +328,7 @@
 .RE
 .\}
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥ë¡¼¥ë¤Ë´Ø¤·¤Æ·Ù¹ð¤¬¤¢¤ê¤Þ¤¹¡£¥°¥í¡¼¥Ð¥ë¡¦¥¹¥³¡¼¥×¤Ëɽ¼¨¤µ¤ì¤ë\fI#include\fRʸ¤Ï¡¢Á°½Ò¤Î¤È¤ª¤ê¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î\fI#include\fRʸ¤Ï¡¢¥¤¥ó¥Ý¡¼¥Èʸ¤È¸«¤Ê¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£°Ï¤Þ¤ì¤¿¥¹¥³¡¼¥×Æâ¤Ëɽ¼¨¤µ¤ì¤ë\fI#include\fRʸ¤Ï¡¢ËÜÅö¤Î°ÕÌ£¤Ç¤Î\fI#include\fRʸ¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¥³¡¼¥É¤¬¡¢¸µ¤Î¥Õ¥¡¥¤¥ë¤Ë¤½¤Î¤Þ¤Þɽ¼¨¤µ¤ì¤Æ¤¤¤ë¤«¤Î¤è¤¦¤Ë½èÍý¤µ¤ì¡¢¤½¤ì¤ËÂФ·¤ÆJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£¼¡¤Ï¤½¤ÎÎã¤Ç¤¹¡£
+デフォルトã®ãƒ«ãƒ¼ãƒ«ã«é–¢ã—ã¦è­¦å‘ŠãŒã‚ã‚Šã¾ã™ã€‚グローãƒãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI#include\fRæ–‡ã¯ã€å‰è¿°ã®ã¨ãŠã‚Šã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚ã“れらã®\fI#include\fRæ–‡ã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ–‡ã¨è¦‹ãªã™ã“ã¨ãŒã§ãã¾ã™ã€‚囲ã¾ã‚ŒãŸã‚¹ã‚³ãƒ¼ãƒ—内ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI#include\fRæ–‡ã¯ã€æœ¬å½“ã®æ„味ã§ã®\fI#include\fRæ–‡ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚るコードãŒã€å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ãã®ã¾ã¾è¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã‹ã®ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã€ãã‚Œã«å¯¾ã—ã¦Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚次ã¯ãã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -356,7 +356,7 @@
 .RE
 .\}
 .PP
-\fI idlj My\&.idl \fR¤ò¼Â¹Ô¤·¤Æ¡¢Java¥Õ¥¡¥¤¥ë¤Î¼¡¤Î¥ê¥¹¥È¤òÀ¸À®¤·¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥Èʸ¤È¤ß¤Ê¤µ¤ì¤ë\fI#include\fR¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤¿¤¿¤á¡¢\fIMyOther\&.java\fR¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£¤¿¤À¤·¡¢ËÜÅö¤Î°ÕÌ£¤Ç¤Î\fI#include\fR¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤¿¤¿¤á¡¢\fIE\&.java\fR¤ÏÀ¸À®¤µ¤ì¤Þ¤·¤¿¡£\fIEmbedded\&.idl\fR¥Õ¥¡¥¤¥ë¤¬\fIMy\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥¹¥³¡¼¥×Æâ¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢\fIMy\fR¤Î¥¹¥³¡¼¥×Æâ(¤Ä¤Þ¤ê¡¢\fIMyPackage\fRÆâ)¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-emitAll\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¤¹¤Ù¤Æ¤Î·¿¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£
+\fI idlj My\&.idl \fRを実行ã—ã¦ã€Javaファイルã®æ¬¡ã®ãƒªã‚¹ãƒˆã‚’生æˆã—ã¾ã™ã€‚インãƒãƒ¼ãƒˆæ–‡ã¨ã¿ãªã•ã‚Œã‚‹\fI#include\fRã«å®šç¾©ã•ã‚Œã¦ã„ãŸãŸã‚ã€\fIMyOther\&.java\fRã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ãŸã ã—ã€æœ¬å½“ã®æ„味ã§ã®\fI#include\fRã§å®šç¾©ã•ã‚Œã¦ã„ãŸãŸã‚ã€\fIE\&.java\fRã¯ç”Ÿæˆã•ã‚Œã¾ã—ãŸã€‚\fIEmbedded\&.idl\fRファイルãŒ\fIMy\fRインタフェースã®ã‚¹ã‚³ãƒ¼ãƒ—内ã«ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€\fIMy\fRã®ã‚¹ã‚³ãƒ¼ãƒ—内(ã¤ã¾ã‚Šã€\fIMyPackage\fR内)ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¾ã™ã€‚\fI\-emitAll\fRフラグを使用ã—ãŸå ´åˆã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚ã‚‹ã™ã¹ã¦ã®åž‹ãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -374,9 +374,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Ñ¥Ã¥±¡¼¥¸¤ÎÀÜƬ¼­¤ÎÁÞÆþ"
+.SS "パッケージã®æŽ¥é ­è¾žã®æŒ¿å…¥"
 .PP
-ABC¤È¤¤¤¦Ì¾Á°¤Î²ñ¼Ò¤Î¤¿¤á¤Ëºî¶È¤·¤Æ¤¤¤Æ¡¢¼¡¤Î¤è¤¦¤ÊIDL¥Õ¥¡¥¤¥ë¤ò¹½ÃÛ¤·¤¿¤È¤·¤Þ¤·¤ç¤¦¡£
+ABCã¨ã„ã†åå‰ã®ä¼šç¤¾ã®ãŸã‚ã«ä½œæ¥­ã—ã¦ã„ã¦ã€æ¬¡ã®ã‚ˆã†ãªIDLファイルを構築ã—ãŸã¨ã—ã¾ã—ょã†ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -394,7 +394,7 @@
 .RE
 .\}
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤ò²ð¤·¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢W1¤ª¤è¤ÓW2¤ËÂФ¹¤ëJava¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fIWidgets\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¶È³¦¤Î´·Îã¤Ë¤è¤ë¤È¡¢²ñ¼Ò¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢\fIcom\&.<company name>\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËÃÖ¤¯¤³¤È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î´·Îã¤Ë½¾¤¦¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò\fIcom\&.abc\&.Widgets\fR¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Ñ¥Ã¥±¡¼¥¸ÀÜƬ¼­¤òWidgets¥â¥¸¥å¡¼¥ë¤ËÉղ乤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラを介ã—ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’実行ã—ãŸå ´åˆã€W1ãŠã‚ˆã³W2ã«å¯¾ã™ã‚‹Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fIWidgets\fRパッケージ内ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚業界ã®æ…£ä¾‹ã«ã‚ˆã‚‹ã¨ã€ä¼šç¤¾ã®ãƒ‘ッケージã¯ã€\fIcom\&.<company name>\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージ内ã«ç½®ãã“ã¨ã«ãªã£ã¦ã„ã¾ã™ã€‚ã“ã®æ…£ä¾‹ã«å¾“ã†ã«ã¯ã€ãƒ‘ッケージåã‚’\fIcom\&.abc\&.Widgets\fRã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ‘ッケージ接頭辞をWidgetsモジュールã«ä»˜åŠ ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -406,30 +406,30 @@
 .RE
 .\}
 .PP
-Widgets\&.idl¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ëIDL¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥³¥Þ¥ó¥É¤Ë¤â\fI\-pkgPrefix\fR¥Õ¥é¥°¤¬É¬ÍפǤ¹¡£¤³¤Î¥Õ¥é¥°¤ò»ØÄꤷ¤Ê¤¤¤È¡¢¤½¤ÎIDL¥Õ¥¡¥¤¥ë¤Ï¡¢\fIcom\&.abc\&.Widgets\fR¥Ñ¥Ã¥±¡¼¥¸¤Ç¤Ï¤Ê¤¯¡¢\fIWidgets\fR¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+Widgets\&.idlをインクルードã—ã¦ã„ã‚‹IDLファイルãŒã‚ã‚‹å ´åˆã¯ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚‚\fI\-pkgPrefix\fRフラグãŒå¿…è¦ã§ã™ã€‚ã“ã®ãƒ•ãƒ©ã‚°ã‚’指定ã—ãªã„ã¨ã€ãã®IDLファイルã¯ã€\fIcom\&.abc\&.Widgets\fRパッケージã§ã¯ãªãã€\fIWidgets\fRパッケージを検索ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-ÀÜƬ¼­¤¬É¬Íפʥѥ屡¼¥¸¤¬¤¤¤¯¤Ä¤â¤¢¤ë¾ì¹ç¤Ï¡¢Á°½Ò¤Îidl\&.config¥Õ¥¡¥¤¥ë¤ÇÀÜƬ¼­¤ò»ØÄꤹ¤ë¤Î¤¬´Êñ¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸ÀÜƬ¼­¤Î³Æ¹Ô¤Ï¡¢\fIPkgPrefix\&.<type>=<prefix>\fR¤Î·Á¼°¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Á°½Ò¤ÎÎã¤Î¹Ô¤Ç¤Ï¡¢\fIPkgPrefix\&.Widgets=com\&.abc\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥ê¥Ý¥¸¥È¥êID¤Ë¤Ï±Æ¶Á¤·¤Þ¤»¤ó¡£
-.SS "¥³¥ó¥Ñ¥¤¥ëÁ°¤Î¥·¥ó¥Ü¥ë¤ÎÄêµÁ"
+接頭辞ãŒå¿…è¦ãªãƒ‘ッケージãŒã„ãã¤ã‚‚ã‚ã‚‹å ´åˆã¯ã€å‰è¿°ã®idl\&.configファイルã§æŽ¥é ­è¾žã‚’指定ã™ã‚‹ã®ãŒç°¡å˜ã§ã™ã€‚パッケージ接頭辞ã®å„è¡Œã¯ã€\fIPkgPrefix\&.<type>=<prefix>\fRã®å½¢å¼ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å‰è¿°ã®ä¾‹ã®è¡Œã§ã¯ã€\fIPkgPrefix\&.Widgets=com\&.abc\fRã«ãªã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒªãƒã‚¸ãƒˆãƒªIDã«ã¯å½±éŸ¿ã—ã¾ã›ã‚“。
+.SS "コンパイルå‰ã®ã‚·ãƒ³ãƒœãƒ«ã®å®šç¾©"
 .PP
-¥³¥ó¥Ñ¥¤¥ëÍѤΥ·¥ó¥Ü¥ë¤¬IDL¥Õ¥¡¥¤¥ëÆâ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¤½¤Î¥·¥ó¥Ü¥ë¤òÄêµÁ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¿¤È¤¨¤Ð¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°Æâ¤Ë¥Ç¥Ð¥Ã¥°¡¦¥³¡¼¥É¤òÁȤßÆþ¤ì¤ë¤È¤­¤Ë»ÈÍѤ·¤Þ¤¹¡£¥³¥Þ¥ó¥É\fIidlj \-d MYDEF My\&.idl \fR¤Ï¡¢My\&.idlÆâ¤Ë¹Ô\fI#define MYDEF\fR¤òÇÛÃÖ¤·¤¿¾ì¹ç¤ÈƱÅù¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SS "´û¸¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ÎÊÝ»ý"
+コンパイル用ã®ã‚·ãƒ³ãƒœãƒ«ãŒIDLファイル内ã§å®šç¾©ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãã®ã‚·ãƒ³ãƒœãƒ«ã‚’定義ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ãŸã¨ãˆã°ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°å†…ã«ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’組ã¿å…¥ã‚Œã‚‹ã¨ãã«ä½¿ç”¨ã—ã¾ã™ã€‚コマンド\fIidlj \-d MYDEF My\&.idl \fRã¯ã€My\&.idl内ã«è¡Œ\fI#define MYDEF\fRã‚’é…ç½®ã—ãŸå ´åˆã¨åŒç­‰ã«ãªã‚Šã¾ã™ã€‚
+.SS "既存ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ä¿æŒ"
 .PP
-Java¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-keep\fR¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤ë¾å½ñ¤­¤ò²óÈò¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤¹¤Ç¤Ë¸ºß¤¹¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤¿¾ì¹ç(¤¿¤À¤·¡¢¤½¤ì¤é¤ÎÆâÍƤ¬Àµ³Î¤Ç¤¢¤ë¤È¤­°Ê³°¤Ï¥«¥¹¥¿¥Þ¥¤¥º¤ÏÈò¤±¤ë)¡¢\fI\-keep\fR¥ª¥×¥·¥ç¥ó¤ÏÍ­ÍѤǤ¹¡£¥³¥Þ¥ó¥É\fIidlj \-keep My\&.idl\fR¤Ï¡¢¤¹¤Ç¤Ë¸ºß¤·¤Ê¤¤¤¹¤Ù¤Æ¤Î¥¯¥é¥¤¥¢¥ó¥È¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òȯ¹Ô¤·¤Þ¤¹¡£
-.SS "¥³¥ó¥Ñ¥¤¥ë¤Î¿ÊĽ¾õ¶·¤Îɽ¼¨"
+Javaãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã¯ã€\fI\-keep\fRフラグを指定ã™ã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã‚‹ä¸Šæ›¸ãを回é¿ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã™ã§ã«å­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’カスタマイズã—ãŸå ´åˆ(ãŸã ã—ã€ãれらã®å†…容ãŒæ­£ç¢ºã§ã‚ã‚‹ã¨ã以外ã¯ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã¯é¿ã‘ã‚‹)ã€\fI\-keep\fRオプションã¯æœ‰ç”¨ã§ã™ã€‚コマンド\fIidlj \-keep My\&.idl\fRã¯ã€ã™ã§ã«å­˜åœ¨ã—ãªã„ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’発行ã—ã¾ã™ã€‚
+.SS "コンパイルã®é€²æ—状æ³ã®è¡¨ç¤º"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¼Â¹Ô¤Î³ÆÃʳ¬¤Ç¾õÂÖ¥á¥Ã¥»¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIidlj \-v My\&.idl\fR¤Î¤è¤¦¤Ê¾éĹ¥â¡¼¥É¤ò¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラã¯ã€å®Ÿè¡Œã®å„段階ã§çŠ¶æ…‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚\fI\-v\fRオプションを使用ã—ã¦ã€\fIidlj \-v My\&.idl\fRã®ã‚ˆã†ãªå†—長モードをアクティブ化ã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¾éĹ¥â¡¼¥É¤Ç¤Ï¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£
-.SS "¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨"
+デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯å†—長モードã§ã¯å®Ÿè¡Œã•ã‚Œã¾ã›ã‚“。
+.SS "ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤º"
 .PP
-IDL\-to\-Java¥³¥ó¥Ñ¥¤¥é¤Î¥Ó¥ë¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó\fIidlj \-version\fR¤Ç\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+IDL\-to\-Javaコンパイラã®ãƒ“ルド・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³\fIidlj \-version\fRã§\fI\-version\fRオプションを指定ã—ã¾ã™ã€‚
 .PP
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°Æâ¤Ë¤â½ñ¤­¹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤È¡¢¤½¤ì°Ê³°¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¤â¡¢¤¹¤Ù¤Æ̵»ë¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚ŒãŸãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°å†…ã«ã‚‚書ãè¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションをコマンドラインã«æŒ‡å®šã™ã‚‹ã¨ã€ãれ以外ã®ã‚ªãƒ—ションを指定ã—ã¦ã‚‚ã€ã™ã¹ã¦ç„¡è¦–ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-d \fIsymbol\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢IDL¥Õ¥¡¥¤¥ë¤Ë¼¡¤Î¤è¤¦¤Ê¹Ô¤òÄɲä·¤¿¾ì¹ç¤ÈÅù²Á¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€IDLファイルã«æ¬¡ã®ã‚ˆã†ãªè¡Œã‚’追加ã—ãŸå ´åˆã¨ç­‰ä¾¡ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -444,46 +444,46 @@
 .PP
 \-demitAll
 .RS 4
-\fI#include\fR¥Õ¥¡¥¤¥ëÆâ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤â´Þ¤á¤Æ¡¢¤¹¤Ù¤Æ¤Î·¿¤òȯ¹Ô¤·¤Þ¤¹¡£
+\fI#include\fRファイル内ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹ã‚‚ã®ã‚‚å«ã‚ã¦ã€ã™ã¹ã¦ã®åž‹ã‚’発行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-fside
 .RS 4
-ȯ¹Ô¤¹¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÄêµÁ¤·¤Þ¤¹¡£\fIside\fR¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¡¢\fIclient\fR¡¢\fIserver\fR¡¢\fIserverTIE\fR¡¢\fIall\fR¤Þ¤¿¤Ï\fIallTIE\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-fserverTIE\fR¤Þ¤¿¤Ï\fI\-fallTIE\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢°Ñ¾ù¥â¥Ç¥ë¡¦¥¹¥±¥ë¥È¥ó¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£¥Õ¥é¥°¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fI\-fclient\fR¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+発行ã™ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’定義ã—ã¾ã™ã€‚\fIside\fRパラメータã«ã¯ã€\fIclient\fRã€\fIserver\fRã€\fIserverTIE\fRã€\fIall\fRã¾ãŸã¯\fIallTIE\fRを指定ã§ãã¾ã™ã€‚\fI\-fserverTIE\fRã¾ãŸã¯\fI\-fallTIE\fRオプションを指定ã™ã‚‹ã¨ã€å§”譲モデル・スケルトンãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚フラグを指定ã—ãªã„å ´åˆã€\fI\-fclient\fRã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-i \fIinclude\-path\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¤¥ó¥¯¥ë¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢Â¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲäǤ­¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€ä»–ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’追加ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-i \fIkeep\fR
 .RS 4
-À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬¾å½ñ¤­¤µ¤ì¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŒã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒä¸Šæ›¸ãã•ã‚Œã¾ã›ã‚“。デフォルトã§ã¯ã€ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-noWarn
 .RS 4
-·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+警告メッセージを表示ã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-oldImplBase
 .RS 4
-1\&.4¤è¤êÁ°¤ÎJDK ORB¤È¸ß´¹À­¤Î¤¢¤ë¥¹¥±¥ë¥È¥ó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢POA·Ñ¾µ¥â¥Ç¥ë¤Î¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢\fIImplBase\fR·Ñ¾µ¥â¥Ç¥ë¤Î¥¯¥é¥¹¤Ç¤¢¤ë¥µ¡¼¥Ð¡¼Â¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬À¸À®¤µ¤ì¤ë¤Î¤Ç¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤È¤Î²¼°Ì¸ß´¹À­¤¬ÆÀ¤é¤ì¤Þ¤¹¡£
+1\&.4よりå‰ã®JDK ORBã¨äº’æ›æ€§ã®ã‚るスケルトンを生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€POA継承モデルã®ã‚µãƒ¼ãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€\fIImplBase\fR継承モデルã®ã‚¯ãƒ©ã‚¹ã§ã‚るサーãƒãƒ¼å´ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒç”Ÿæˆã•ã‚Œã‚‹ã®ã§ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®Javaプログラミング言語ã¨ã®ä¸‹ä½äº’æ›æ€§ãŒå¾—られã¾ã™ã€‚
 .RE
 .PP
 \-pkgPrefix \fItype\fR \fIprefix\fR
 .RS 4
-\fItype\fR¤¬¥Õ¥¡¥¤¥ë¡¦¥¹¥³¡¼¥×¤Ç¸¡½Ð¤µ¤ì¤¿¾ì¹ç¤Ï¡¢¤½¤Î·¿¤ËÂФ·¤ÆÀ¸À®¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢À¸À®¤µ¤ì¤ëJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë\fIprefix\fR¤È¤¤¤¦ÀÜƬ¼­¤¬Éղ䵤ì¤Þ¤¹¡£type¤Ï¡¢¥È¥Ã¥×¥ì¥Ù¥ë¡¦¥â¥¸¥å¡¼¥ë¤Îñ½ã̾¤«¡¢¤É¤Î¥â¥¸¥å¡¼¥ë¤è¤ê¤â³°Â¦¤ÇÄêµÁ¤µ¤ì¤¿IDL·¿¤Îñ½ã̾¤Î¤É¤Á¤é¤«¤Ç¤¹¡£
+\fItype\fRãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—ã§æ¤œå‡ºã•ã‚ŒãŸå ´åˆã¯ã€ãã®åž‹ã«å¯¾ã—ã¦ç”Ÿæˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã€ç”Ÿæˆã•ã‚Œã‚‹Javaパッケージåã«\fIprefix\fRã¨ã„ã†æŽ¥é ­è¾žãŒä»˜åŠ ã•ã‚Œã¾ã™ã€‚typeã¯ã€ãƒˆãƒƒãƒ—レベル・モジュールã®å˜ç´”åã‹ã€ã©ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚ˆã‚Šã‚‚外å´ã§å®šç¾©ã•ã‚ŒãŸIDLåž‹ã®å˜ç´”åã®ã©ã¡ã‚‰ã‹ã§ã™ã€‚
 .RE
 .PP
 \-pkgTranslate \fItype\fR \fIpackage\fR
 .RS 4
-¼±Ê̻ҤÎÃæ¤Ë¥â¥¸¥å¡¼¥ë̾type¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢À¸À®¤µ¤ì¤ëJava¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢¼±Ê̻ҤÎÃæ¤Î¤½¤Î̾Á°¤¬package¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£ºÇ½é¤Ë\fIpkgPrefix\fR¤ÎÊѹ¹¤¬¹Ô¤ï¤ì¤Þ¤¹¡£type¤ÎÃͤϡ¢¥È¥Ã¥×¥ì¥Ù¥ë¤Î¥â¥¸¥å¡¼¥ë¤Îñ½ã̾¡¢¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥â¥¸¥å¡¼¥ë¤Î³°Éô¤ÇÄêµÁ¤µ¤ì¤¿IDL·¿¤Îñ½ã̾¤Ç¡¢´°Á´¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÀµ³Î¤Ë°ìÃפ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å­ã®ä¸­ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«åtypeãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ç”Ÿæˆã•ã‚Œã‚‹Javaパッケージ内ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã€è­˜åˆ¥å­ã®ä¸­ã®ãã®åå‰ãŒpackageã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚最åˆã«\fIpkgPrefix\fRã®å¤‰æ›´ãŒè¡Œã‚ã‚Œã¾ã™ã€‚typeã®å€¤ã¯ã€ãƒˆãƒƒãƒ—レベルã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®å˜ç´”åã€ã¾ãŸã¯ã™ã¹ã¦ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã®å¤–部ã§å®šç¾©ã•ã‚ŒãŸIDLåž‹ã®å˜ç´”åã§ã€å®Œå…¨ãªãƒ‘ッケージåã«æ­£ç¢ºã«ä¸€è‡´ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ê£¿ô¤ÎÊÑ´¹¤¬¼±Ê̻Ҥ˰ìÃפ¹¤ë¾ì¹ç¡¢¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë¡¢ºÇ¤âŤ¤°ìÃפ¬ÁªÂò¤µ¤ì¤Þ¤¹¡£
+複数ã®å¤‰æ›ãŒè­˜åˆ¥å­ã«ä¸€è‡´ã™ã‚‹å ´åˆã€æ¬¡ã®ä¾‹ã«ç¤ºã™ã‚ˆã†ã«ã€æœ€ã‚‚é•·ã„一致ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥³¥Þ¥ó¥É\fR:
+\fBコマンド\fR:
 .sp
 .if n \{\
 .RS 4
@@ -494,7 +494,7 @@
 .if n \{\
 .RE
 .\}
-\fB·ë²Ì¤ÎÊÑ´¹\fR:
+\fBçµæžœã®å¤‰æ›\fR:
 .sp
 .if n \{\
 .RS 4
@@ -508,47 +508,47 @@
 .if n \{\
 .RE
 .\}
-¥Ñ¥Ã¥±¡¼¥¸Ì¾\fIorg\fR¡¢\fIorg\fR\&.o\fImg\fR¡¢¤Þ¤¿¤Ï\fIorg\&.omg\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢ÊÑ´¹¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÊÑ´¹¤·¤è¤¦¤È¤¹¤ë¤È¡¢¸ß´¹À­¤Î¤Ê¤¤¥³¡¼¥É¤¬À¸À®¤µ¤ì¡¢\fI\-pkgTranslate\fR¤Î¸å¤ÎºÇ½é¤Î°ú¿ô¤È¤·¤Æ¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¤È¡¢¥¨¥é¡¼¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+パッケージå\fIorg\fRã€\fIorg\fR\&.o\fImg\fRã€ã¾ãŸã¯\fIorg\&.omg\fRã®ã‚µãƒ–パッケージã¯ã€å¤‰æ›ã§ãã¾ã›ã‚“。ã“れらã®ãƒ‘ッケージåを変æ›ã—よã†ã¨ã™ã‚‹ã¨ã€äº’æ›æ€§ã®ãªã„コードãŒç”Ÿæˆã•ã‚Œã€\fI\-pkgTranslate\fRã®å¾Œã®æœ€åˆã®å¼•æ•°ã¨ã—ã¦ãれらã®ãƒ‘ッケージを使用ã™ã‚‹ã¨ã€ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-skeletonName \fIxxx%yyy\fR
 .RS 4
-\fIxxx%yyy\fR¤¬¡¢¥¹¥±¥ë¥È¥ó¤Ë̾Á°¤òÉÕ¤±¤ë¥Ñ¥¿¡¼¥ó¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£\fIPOA\fR¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI%POA\fR
-(\fI\-fserver\fR¤Þ¤¿¤Ï\fI\-fall\fR)¡¢\fIoldImplBase\fR¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI_%ImplBase\fR
-(\-\fIoldImplBase\fR)¤ª¤è¤Ó(\fI\-fserver\fR¤Þ¤¿¤Ï\fI\-fall\fR))¡£
+\fIxxx%yyy\fRãŒã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã«åå‰ã‚’付ã‘るパターンã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚デフォルトã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚\fIPOA\fRベース・クラスã®å ´åˆã¯\fI%POA\fR
+(\fI\-fserver\fRã¾ãŸã¯\fI\-fall\fR)ã€\fIoldImplBase\fRクラスã®å ´åˆã¯\fI_%ImplBase\fR
+(\-\fIoldImplBase\fR)ãŠã‚ˆã³(\fI\-fserver\fRã¾ãŸã¯\fI\-fall\fR))。
 .RE
 .PP
 \-td \fIdir\fR
 .RS 4
-½ÐÎϥǥ£¥ì¥¯¥È¥ê¤È¤·¤Æ¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤Ê¤¯¡¢\fIdir\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+出力ディレクトリã¨ã—ã¦ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ãªãã€\fIdir\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tieName \fIxxx%yyy\fR
 .RS 4
-¥Ñ¥¿¡¼¥ó¤Ë½¾¤Ã¤Æ¡¢\fIxxx%yyy\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£\fIPOA\fR¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI%POA\fR
-(\fI\-fserverTie¤Þ¤¿¤Ï\-fallTie\fR)¡¢\fIoldImplBase\fR
-tie¥¯¥é¥¹¤Î¾ì¹ç¤Ï\fI_%Tie\fR
-(\-\fIoldImplBase\fR)¤ª¤è¤Ó(\fI\-fserverTie\fR¤Þ¤¿¤Ï\fI\-fallTie\fR))¡£
+パターンã«å¾“ã£ã¦ã€\fIxxx%yyy\fRを使用ã—ã¾ã™ã€‚デフォルトã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚\fIPOA\fRベース・クラスã®å ´åˆã¯\fI%POA\fR
+(\fI\-fserverTieã¾ãŸã¯\-fallTie\fR)ã€\fIoldImplBase\fR
+tieクラスã®å ´åˆã¯\fI_%Tie\fR
+(\-\fIoldImplBase\fR)ãŠã‚ˆã³(\fI\-fserverTie\fRã¾ãŸã¯\fI\-fallTie\fR))。
 .RE
 .PP
-\-nowarn¡¢\-verbose
+\-nowarnã€\-verbose
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SH "À©¸Â»ö¹à"
+.SH "制é™äº‹é …"
 .PP
-¥°¥í¡¼¥Ð¥ë¡¦¥¹¥³¡¼¥×Æâ¤Î¥¨¥¹¥±¡¼¥×¤µ¤ì¤¿¼±Ê̻Ҥϡ¢IDL¥×¥ê¥ß¥Æ¥£¥Ö·¿¤Î\fIObject\fR¤Þ¤¿¤Ï\fIValueBase\fR¤ÈƱ¤¸ÄÖ¤ê¤Ë¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤³¤ì¤Ï¡¢¥·¥ó¥Ü¥ëɽ¤¬¤³¤ì¤é¤Î¼±Ê̻Ҥǥץê¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£¤³¤ì¤é¤ÎºÆÄêµÁ¤òµö²Ä¤¹¤ë¤È¡¢¸µ¤ÎÄêµÁ¤¬¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤ª¤½¤é¤¯¹±µ×Ū¤ÊÀ©Ìó¤Ç¤¹¡£
+グローãƒãƒ«ãƒ»ã‚¹ã‚³ãƒ¼ãƒ—内ã®ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã•ã‚ŒãŸè­˜åˆ¥å­ã¯ã€IDLプリミティブ型ã®\fIObject\fRã¾ãŸã¯\fIValueBase\fRã¨åŒã˜ç¶´ã‚Šã«ã—ãªã„ã§ãã ã•ã„。ã“ã‚Œã¯ã€ã‚·ãƒ³ãƒœãƒ«è¡¨ãŒã“れらã®è­˜åˆ¥å­ã§ãƒ—リロードã•ã‚Œã¦ã„ã‚‹ãŸã‚ã§ã™ã€‚ã“れらã®å†å®šç¾©ã‚’許å¯ã™ã‚‹ã¨ã€å…ƒã®å®šç¾©ãŒä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ãŠãらãæ’ä¹…çš„ãªåˆ¶ç´„ã§ã™ã€‚
 .PP
-\fIfixed\fR¤È¤¤¤¦IDL·¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "´ûÃΤÎÌäÂê"
+\fIfixed\fRã¨ã„ã†IDLåž‹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "既知ã®å•é¡Œ"
 .PP
-¥°¥í¡¼¥Ð¥ë¼±Ê̻ҤˤĤ¤¤Æ¥¤¥ó¥Ý¡¼¥È¤¬À¸À®¤µ¤ì¤Þ¤»¤ó¡£Í½´ü¤µ¤ì¤Ê¤¤¥í¡¼¥«¥ë\fIimpl\fR¥ª¥Ö¥¸¥§¥¯¥È¤ò¸Æ¤Ó½Ð¤¹¤È¡¢Îã³°¤ò¼õ¤±¼è¤ê¤Þ¤¹¡£¤·¤«¤·¡¢¤½¤Î¸¶°ø¤Ï¡¢\fIServerDelegate\fR
-DSI¥³¡¼¥ÉÆâ¤Î\fINullPointerException\fR¤Ë¤¢¤ë¤è¤¦¤Ç¤¹¡£
+グローãƒãƒ«è­˜åˆ¥å­ã«ã¤ã„ã¦ã‚¤ãƒ³ãƒãƒ¼ãƒˆãŒç”Ÿæˆã•ã‚Œã¾ã›ã‚“。予期ã•ã‚Œãªã„ローカル\fIimpl\fRオブジェクトを呼ã³å‡ºã™ã¨ã€ä¾‹å¤–ã‚’å—ã‘å–ã‚Šã¾ã™ã€‚ã—ã‹ã—ã€ãã®åŽŸå› ã¯ã€\fIServerDelegate\fR
+DSIコード内ã®\fINullPointerException\fRã«ã‚るよã†ã§ã™ã€‚
 .br
 'pl 8.5i
 'bp
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jar.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jar.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jar
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jar" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jar" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,9 +49,9 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jar \- Java Archive (JAR)¥Õ¥¡¥¤¥ë¤òÁàºî¤·¤Þ¤¹¡£
-.SH "³µÍ×"
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®
+jar \- Java Archive (JAR)ファイルをæ“作ã—ã¾ã™ã€‚
+.SH "概è¦"
+JARファイルã®ä½œæˆ
 .sp
 .if n \{\
 .RS 4
@@ -62,7 +62,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Î¹¹¿·
+JARファイルã®æ›´æ–°
 .sp
 .if n \{\
 .RS 4
@@ -73,7 +73,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤ÎÃê½Ð
+JARファイルã®æŠ½å‡º
 .sp
 .if n \{\
 .RS 4
@@ -84,7 +84,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È
+JARファイルã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ
 .sp
 .if n \{\
 .RS 4
@@ -95,7 +95,7 @@
 .if n \{\
 .RE
 .\}
-JAR¥Õ¥¡¥¤¥ë¤Ø¤Îº÷°ú¤ÎÄɲÃ
+JARファイルã¸ã®ç´¢å¼•ã®è¿½åŠ 
 .sp
 .if n \{\
 .RS 4
@@ -106,48 +106,48 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢ZIP¤ª¤è¤ÓZLIB°µ½Ì·Á¼°¤Ë´ð¤Å¤¯ÈÆÍѤΥ¢¡¼¥«¥¤¥Ö¤ª¤è¤Ó°µ½Ì¥Ä¡¼¥ë¤Ç¤¹¡£¤¿¤À¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢¼ç¤Ë¤¤¤¯¤Ä¤«¤ÎJava¥¢¥×¥ì¥Ã¥È¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òñ°ì¤Î¥¢¡¼¥«¥¤¥Ö¤Ë¥Ñ¥Ã¥±¡¼¥¸²½¤¹¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Þ¤·¤¿¡£¥¢¥×¥ì¥Ã¥È¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È(¥Õ¥¡¥¤¥ë¡¢¥¤¥á¡¼¥¸¡¢¤ª¤è¤Ó¥µ¥¦¥ó¥É)¤¬1¤Ä¤Î¥¢¡¼¥«¥¤¥Ö¤Ë·ë¹ç¤µ¤ì¤Æ¤¤¤ë¤È¡¢Java¥¨¡¼¥¸¥§¥ó¥È(¥Ö¥é¥¦¥¶¤Ê¤É)¤Ï¡¢¤½¤ì¤é¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò1²ó¤ÎHTTP¥È¥é¥ó¥¶¥¯¥·¥ç¥ó¤Ç¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤´¤È¤Ë¿·¤·¤¤Àܳ¤¬ÉÔÍפˤʤê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤¬ÂçÉý¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤Î°µ½Ì¤â¹Ô¤¦¤¿¤á¡¢¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤¬¤µ¤é¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¸Ä¡¹¤Î¥¨¥ó¥È¥ê¤Ë¥¢¥×¥ì¥Ã¥ÈºîÀ®¼Ô¤Ë¤è¤ë½ð̾¤ò½ñ¤­¹þ¤á¤ë¤¿¤á¡¢ÇÛÉÛ¸µ¤Îǧ¾Ú¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Ï¡¢°µ½Ì¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjar\fRコマンドã¯ã€ZIPãŠã‚ˆã³ZLIB圧縮形å¼ã«åŸºã¥ã汎用ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ãŠã‚ˆã³åœ§ç¸®ãƒ„ールã§ã™ã€‚ãŸã ã—ã€\fIjar\fRコマンドã¯ã€ä¸»ã«ã„ãã¤ã‹ã®Javaアプレットやアプリケーションをå˜ä¸€ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«ãƒ‘ッケージ化ã™ã‚‹ã‚ˆã†ã«è¨­è¨ˆã•ã‚Œã¾ã—ãŸã€‚アプレットやアプリケーションã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆ(ファイルã€ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ãŠã‚ˆã³ã‚µã‚¦ãƒ³ãƒ‰)ãŒ1ã¤ã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«çµåˆã•ã‚Œã¦ã„ã‚‹ã¨ã€Javaエージェント(ブラウザãªã©)ã¯ã€ãれらã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã‚’1回ã®HTTPトランザクションã§ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã“ã¨ãŒã§ãã€ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã”ã¨ã«æ–°ã—ã„接続ãŒä¸è¦ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚é–“ãŒå¤§å¹…ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€\fIjar\fRコマンドã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®åœ§ç¸®ã‚‚è¡Œã†ãŸã‚ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚é–“ãŒã•ã‚‰ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€\fIjar\fRコマンドã«ã‚ˆã£ã¦ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å€‹ã€…ã®ã‚¨ãƒ³ãƒˆãƒªã«ã‚¢ãƒ—レット作æˆè€…ã«ã‚ˆã‚‹ç½²åを書ãè¾¼ã‚ã‚‹ãŸã‚ã€é…布元ã®èªè¨¼ãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚JARファイルã¯ã€åœ§ç¸®ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ã‚¨ãƒ³ãƒˆãƒªã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ï¡¢\fItar\fR¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ë»÷¤Æ¤¤¤Þ¤¹¡£É¬¿Ü¤Î\fIÁàºî¤Î°ú¿ô\fR¤Î1¤Ä¤ÇÄêµÁ¤µ¤ì¤¿Ê£¿ô¤ÎÁàºî¥â¡¼¥É¤¬¤¢¤ê¤Þ¤¹¡£Â¾¤Î°ú¿ô¤Ï¡¢Áàºî¤ÎÆ°ºî¤òÊѹ¹¤¹¤ë\fI¥ª¥×¥·¥ç¥ó\fR¡¢¤Þ¤¿¤ÏÁàºî¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤ËɬÍפÊ\fI¥ª¥Ú¥é¥ó¥É\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.SH "Áàºî¤Î°ú¿ô"
+\fIjar\fRコマンドã®æ§‹æ–‡ã¯ã€\fItar\fRコマンドã®æ§‹æ–‡ã«ä¼¼ã¦ã„ã¾ã™ã€‚å¿…é ˆã®\fIæ“作ã®å¼•æ•°\fRã®1ã¤ã§å®šç¾©ã•ã‚ŒãŸè¤‡æ•°ã®æ“作モードãŒã‚ã‚Šã¾ã™ã€‚ä»–ã®å¼•æ•°ã¯ã€æ“作ã®å‹•ä½œã‚’変更ã™ã‚‹\fIオプション\fRã€ã¾ãŸã¯æ“作を実行ã™ã‚‹ãŸã‚ã«å¿…è¦ãª\fIオペランド\fRを使用ã—ã¾ã™ã€‚
+.SH "æ“作ã®å¼•æ•°"
 .PP
-\fIjar\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¼¡¤ÎÁàºî¤Î°ú¿ô¤Î¤¤¤º¤ì¤«¤ò»ØÄꤷ¤Æ¼Â¹Ô¤µ¤ì¤ëÁàºî¤òÁªÂò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¾¤Î1ʸ»ú¤Î¥ª¥×¥·¥ç¥ó¤Èº®ºß¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢Ä̾Áàºî¤Î°ú¿ô¤Ï»ØÄꤵ¤ì¤ëºÇ½é¤Î°ú¿ô¤Ç¤¹¡£
+\fIjar\fRコマンドを使用ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®æ“作ã®å¼•æ•°ã®ã„ãšã‚Œã‹ã‚’指定ã—ã¦å®Ÿè¡Œã•ã‚Œã‚‹æ“作をé¸æŠžã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ä»–ã®1文字ã®ã‚ªãƒ—ションã¨æ··åœ¨ã•ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€é€šå¸¸ã€æ“作ã®å¼•æ•°ã¯æŒ‡å®šã•ã‚Œã‚‹æœ€åˆã®å¼•æ•°ã§ã™ã€‚
 .PP
 c
 .RS 4
-¿·¤·¤¤JAR¥¢¡¼¥«¥¤¥Ö¤òºîÀ®¤·¤Þ¤¹¡£
+æ–°ã—ã„JARアーカイブを作æˆã—ã¾ã™ã€‚
 .RE
 .PP
 i
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤Îº÷°ú¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£
+JARアーカイブã®ç´¢å¼•æƒ…報を生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 t
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤Î¥³¥ó¥Æ¥ó¥Ä¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£
+JARアーカイブã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„をリストã—ã¾ã™ã€‚
 .RE
 .PP
 u
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤ò¹¹¿·¤·¤Þ¤¹¡£
+JARアーカイブを更新ã—ã¾ã™ã€‚
 .RE
 .PP
 x
 .RS 4
-JAR¥¢¡¼¥«¥¤¥Ö¤«¤é¥Õ¥¡¥¤¥ë¤òÃê½Ð¤·¤Þ¤¹¡£
+JARアーカイブã‹ã‚‰ãƒ•ã‚¡ã‚¤ãƒ«ã‚’抽出ã—ã¾ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤òºîÀ®¡¢¹¹¿·¡¢Ãê½Ð¤Þ¤¿¤Ïɽ¼¨¤¹¤ëÊýË¡¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションを使用ã—ã¦ã€JARファイルを作æˆã€æ›´æ–°ã€æŠ½å‡ºã¾ãŸã¯è¡¨ç¤ºã™ã‚‹æ–¹æ³•ã‚’カスタマイズã—ã¾ã™ã€‚
 .PP
 e
 .RS 4
-\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤ë¥¯¥é¥¹¤ò¡¢¼Â¹Ô²ÄǽJAR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤ë¥¹¥¿¥ó¥É¥¢¥í¥óJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤ËÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î\fIMain\-Class\fR°À­Ãͤ¬ºîÀ®¤Þ¤¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Þ¤¹¡£\fIe\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+\fIentrypoint\fRオペランドã§æŒ‡å®šã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã‚’ã€å®Ÿè¡Œå¯èƒ½JARファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã‚‹ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ³Javaアプリケーションã®ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã«è¨­å®šã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®\fIMain\-Class\fR属性値ãŒä½œæˆã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¾ã™ã€‚\fIe\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIMain\&.jar\fR¥¢¡¼¥«¥¤¥Ö¤¬\fIMain\&.class\fR¥Õ¥¡¥¤¥ë¤È¤È¤â¤ËºîÀ®¤µ¤ì¤Þ¤¹¤¬¡¢¤½¤ÎºÝ¡¢¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Î\fIMain\-Class\fR°À­ÃͤÏ\fIMain\fR¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIMain\&.jar\fRアーカイブãŒ\fIMain\&.class\fRファイルã¨ã¨ã‚‚ã«ä½œæˆã•ã‚Œã¾ã™ãŒã€ãã®éš›ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã®\fIMain\-Class\fR属性値ã¯\fIMain\fRã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .if n \{\
 .RE
 .\}
-Java Runtime Environment (JRE)¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¡¢¤³¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òľÀܸƤӽФ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+Java Runtime Environment (JRE)ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¦ã€ã“ã®ã‚¢ãƒ—リケーションを直接呼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -169,7 +169,7 @@
 .if n \{\
 .RE
 .\}
-¤¢¤ë¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ë¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤Î¥¯¥é¥¹Ì¾¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥É¥Ã¥È(\&.)¤Þ¤¿¤Ï¥¹¥é¥Ã¥·¥å(/)¤Î¤¤¤º¤ì¤«¤ò¶èÀÚ¤êʸ»ú¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMain\&.class\fR¤¬\fImydir\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤Ï¼¡¤Î¤¤¤º¤ì¤«¤ÎÊýË¡¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã‚るパッケージ内ã«ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã®ã‚¯ãƒ©ã‚¹åãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ‰ãƒƒãƒˆ(\&.)ã¾ãŸã¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ã®ã„ãšã‚Œã‹ã‚’区切り文字ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMain\&.class\fRãŒ\fImydir\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã¯æ¬¡ã®ã„ãšã‚Œã‹ã®æ–¹æ³•ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,8 +197,8 @@
 allbox tab(:);
 l.
 T{
-Ãí°Õ
-ÆÃÄê¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¤Ë¤â\fIMain\-Class\fR°À­¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë\fIm\fR¥ª¥×¥·¥ç¥ó¤È\fIe\fR¥ª¥×¥·¥ç¥ó¤ÎξÊý¤òƱ»þ¤Ë»ØÄꤹ¤ë¤È¡¢\fIMain\-Class\fR¤Î»ØÄ꤬¤¢¤¤¤Þ¤¤¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¤¢¤¤¤Þ¤¤¤µ¤Ë¤è¤Ã¤Æ¥¨¥é¡¼¤¬È¯À¸¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤ÎºîÀ®¤ä¹¹¿·¤ÎÁàºî¤¬½ªÎ»¤·¤Þ¤¹¡£
+注æ„
+特定ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆã«ã‚‚\fIMain\-Class\fR属性ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã«\fIm\fRオプションã¨\fIe\fRオプションã®ä¸¡æ–¹ã‚’åŒæ™‚ã«æŒ‡å®šã™ã‚‹ã¨ã€\fIMain\-Class\fRã®æŒ‡å®šãŒã‚ã„ã¾ã„ã«ãªã‚Šã¾ã™ã€‚ã“ã®ã‚ã„ã¾ã„ã•ã«ã‚ˆã£ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã€\fIjar\fRコマンドã®ä½œæˆã‚„æ›´æ–°ã®æ“作ãŒçµ‚了ã—ã¾ã™ã€‚
 T}
 .TE
 .sp 1
@@ -208,42 +208,42 @@
 .PP
 f
 .RS 4
-\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢ºîÀ®(\fIc\fR)¡¢¹¹¿·(\fIu\fR)¡¢Ãê½Ð(\fIx\fR)¤Þ¤¿¤Ïɽ¼¨(\fIt\fR)¤µ¤ì¤ëJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤ËÀßÄꤷ¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò¾Êά¤¹¤ë¤È¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¡¢\fIstdin\fR¤«¤é¤ÎJAR¥Õ¥¡¥¤¥ë̾¤ò¼õ¤±Æþ¤ì¤ë¤«(\fIx\fR¤ª¤è¤Ó\fIt\fR¤Î¾ì¹ç)¡¢JAR¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤ËÁ÷¿®¤¹¤ë¤³¤È(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤¬»Ø¼¨¤µ¤ì¤Þ¤¹¡£
+\fIjarfile\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ä½œæˆ(\fIc\fR)ã€æ›´æ–°(\fIu\fR)ã€æŠ½å‡º(\fIx\fR)ã¾ãŸã¯è¡¨ç¤º(\fIt\fR)ã•ã‚Œã‚‹JARファイルã®åå‰ã«è¨­å®šã—ã¾ã™ã€‚\fIf\fRオプションãŠã‚ˆã³\fIjarfile\fRオペランドをçœç•¥ã™ã‚‹ã¨ã€\fIjar\fRコマンドã«ã€\fIstdin\fRã‹ã‚‰ã®JARファイルåã‚’å—ã‘入れるã‹(\fIx\fRãŠã‚ˆã³\fIt\fRã®å ´åˆ)ã€JARファイルを\fIstdout\fRã«é€ä¿¡ã™ã‚‹ã“ã¨(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ãŒæŒ‡ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 m
 .RS 4
-(\fIMETA\-INF/MANIFEST\&.MF\fR¤Î¥¢¡¼¥«¥¤¥Ö¤Ë¤¢¤ë)
-\fIjar\fR¥³¥Þ¥ó¥É¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤«¤é¡¢Â°À­¤Î̾Á°¤ÈÃͤΥڥ¢¤ò´Þ¤á¤Þ¤¹¡£\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢Æ±¤¸Ì¾Á°¤Î¥¨¥ó¥È¥ê¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¤ò½ü¤­¡¢Â°À­¤Î̾Á°¤ÈÃͤòJAR¥Õ¥¡¥¤¥ë¤ËÄɲä·¤Þ¤¹¡£Æ±¤¸Ì¾Á°¤Î¥¨¥ó¥È¥ê¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ï°À­¤ÎÃͤò¹¹¿·¤·¤Þ¤¹¡£\fIm\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+(\fIMETA\-INF/MANIFEST\&.MF\fRã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«ã‚ã‚‹)
+\fIjar\fRコマンドã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®\fImanifest\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ã€å±žæ€§ã®åå‰ã¨å€¤ã®ãƒšã‚¢ã‚’å«ã‚ã¾ã™ã€‚\fIjar\fRコマンドã¯ã€åŒã˜åå‰ã®ã‚¨ãƒ³ãƒˆãƒªãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã‚’除ãã€å±žæ€§ã®åå‰ã¨å€¤ã‚’JARファイルã«è¿½åŠ ã—ã¾ã™ã€‚åŒã˜åå‰ã®ã‚¨ãƒ³ãƒˆãƒªãŒã™ã§ã«å­˜åœ¨ã™ã‚‹å ´åˆã€\fIjar\fRコマンドã¯å±žæ€§ã®å€¤ã‚’æ›´æ–°ã—ã¾ã™ã€‚\fIm\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï´Þ¤Þ¤ì¤Ê¤¤¥Þ¥Ë¥Õ¥§¥¹¥È¤Ë¡¢ÆÃÊ̤ÊÌÜŪ¤Î̾Á°\-ÃͤΰÀ­¥Ú¥¢¤òÄɲäǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ù¥ó¥À¡¼¾ðÊó¡¢¥ê¥ê¡¼¥¹¾ðÊ󡢥ѥ屡¼¥¸¡¦¥·¡¼¥ê¥ó¥°¤ò»ØÄꤹ¤ë°À­¡¢¤Þ¤¿¤ÏJAR¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô²Äǽ¤Ë¤¹¤ë¤¿¤á¤Î°À­¤òÄɲäǤ­¤Þ¤¹¡£\fIm\fR¥ª¥×¥·¥ç¥ó¤Î»ÈÍÑÎã¤Ï¡¢http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-¥×¥í¥°¥é¥à¤Î¥Ñ¥Ã¥±¡¼¥¸²½¤Ë´Ø¤¹¤ë¹à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯å«ã¾ã‚Œãªã„マニフェストã«ã€ç‰¹åˆ¥ãªç›®çš„ã®åå‰\-値ã®å±žæ€§ãƒšã‚¢ã‚’追加ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ™ãƒ³ãƒ€ãƒ¼æƒ…å ±ã€ãƒªãƒªãƒ¼ã‚¹æƒ…å ±ã€ãƒ‘ッケージ・シーリングを指定ã™ã‚‹å±žæ€§ã€ã¾ãŸã¯JARã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚ŒãŸã‚¢ãƒ—リケーションを実行å¯èƒ½ã«ã™ã‚‹ãŸã‚ã®å±žæ€§ã‚’追加ã§ãã¾ã™ã€‚\fIm\fRオプションã®ä½¿ç”¨ä¾‹ã¯ã€http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+プログラムã®ãƒ‘ッケージ化ã«é–¢ã™ã‚‹é …ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 M
 .RS 4
-¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥¨¥ó¥È¥ê¤òºîÀ®¤·¤Ê¤¤(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤«¡¢¤Þ¤¿¤Ï¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥¨¥ó¥È¥ê¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ïºï½ü¤·¤Þ¤¹(\fIu\fR¤Î¾ì¹ç)¡£\fIM\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®»þ(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·»þ(\fIu\fR)¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+マニフェスト・ファイル・エントリを作æˆã—ãªã„(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ã‹ã€ã¾ãŸã¯ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚¨ãƒ³ãƒˆãƒªãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯å‰Šé™¤ã—ã¾ã™(\fIu\fRã®å ´åˆ)。\fIM\fRオプションã¯ã€JARファイルã®ä½œæˆæ™‚(\fIc\fR)ã¾ãŸã¯æ›´æ–°æ™‚(\fIu\fR)ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 n
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)»þ¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Æ¥ó¥Ä¤¬pack200(1)¥³¥Þ¥ó¥É¤Î¥Ñ¥Ã¥¯¤ª¤è¤Ó¥¢¥ó¥Ñ¥Ã¥¯Áàºî¤Î±Æ¶Á¤ò¼õ¤±¤Ê¤¤¤è¤¦¤Ë¥¢¡¼¥«¥¤¥Ö¤òÀµµ¬²½¤·¤Þ¤¹¡£¤³¤ÎÀµµ¬²½¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç¡¢½ð̾ÉÕ¤­JAR¤Î½ð̾¤Ï̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)時ã«ã€ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒpack200(1)コマンドã®ãƒ‘ックãŠã‚ˆã³ã‚¢ãƒ³ãƒ‘ックæ“作ã®å½±éŸ¿ã‚’å—ã‘ãªã„よã†ã«ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã‚’æ­£è¦åŒ–ã—ã¾ã™ã€‚ã“ã®æ­£è¦åŒ–を使用ã—ãªã„å ´åˆã€ç½²å付ãJARã®ç½²åã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 v
 .RS 4
-¾ÜºÙ¤Ê½ÐÎϤòɸ½à½ÐÎϤËÀ¸À®¤·¤Þ¤¹¡£Îã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+詳細ãªå‡ºåŠ›ã‚’標準出力ã«ç”Ÿæˆã—ã¾ã™ã€‚例をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 0
 .RS 4
-(¥¼¥í) ZIP°µ½Ì¤ò»ÈÍѤ·¤Ê¤¤¤ÇJAR¥Õ¥¡¥¤¥ë¤òºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)¤·¤Þ¤¹¡£
+(ゼロ) ZIP圧縮を使用ã—ãªã„ã§JARファイルを作æˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)ã—ã¾ã™ã€‚
 .RE
 .PP
 \-C \fIdir\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fIfile\fR¥ª¥Ú¥é¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î½èÍýÃæ¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤ò°ì»þŪ¤ËÊѹ¹¤·¤Þ¤¹¡£¤³¤ÎÁàºî¤Ï¡¢UNIX
-\fItar\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Î\fI\-C\fR¥ª¥×¥·¥ç¥ó¤ÈƱÍͤˤʤ뤳¤È¤òÌÜŪ¤È¤·¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹¤µ¤ì¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é\fImy\&.jar\fR¤Ë\fIBar\&.class\fR¥Õ¥¡¥¤¥ë¤¬Äɲ䵤ì¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€ã“ã®ã‚ªãƒ—ションã¯\fIfile\fRオペランドã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ä¸­ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’一時的ã«å¤‰æ›´ã—ã¾ã™ã€‚ã“ã®æ“作ã¯ã€UNIX
+\fItar\fRユーティリティã®\fI\-C\fRオプションã¨åŒæ§˜ã«ãªã‚‹ã“ã¨ã‚’目的ã¨ã—ã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fIclasses\fRディレクトリã«å¤‰æ›´ã•ã‚Œã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰\fImy\&.jar\fRã«\fIBar\&.class\fRファイルãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -254,7 +254,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¡¢classes¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò\fImy\&.jar\fR¤ËÄɲä·¤Þ¤¹(JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fIclasses\fR¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤»¤ó)¡£¼¡¤Ë¸µ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÌá¤Ã¤Æ¤«¤é¡¢\fIbin\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¡¢\fIXyz\&.class\fR¤ò\fImy\&.jar\fR¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIclasses\fRディレクトリã«ç§»å‹•ã—ã€classesディレクトリ内ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fImy\&.jar\fRã«è¿½åŠ ã—ã¾ã™(JARファイルã«ã¯\fIclasses\fRディレクトリを作æˆã—ã¾ã›ã‚“)。次ã«å…ƒã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æˆ»ã£ã¦ã‹ã‚‰ã€\fIbin\fRディレクトリã«ç§»å‹•ã—ã€\fIXyz\&.class\fRã‚’\fImy\&.jar\fRã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -265,7 +265,7 @@
 .if n \{\
 .RE
 .\}
-\fIclasses\fR¤Ë\fIbar1\fR¥Õ¥¡¥¤¥ë¤È\fIbar2\fR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢Á°½Ò¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¼¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+\fIclasses\fRã«\fIbar1\fRファイルã¨\fIbar2\fRファイルãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ãŸå¾Œã€JARファイルã«ã¯æ¬¡ã®ã‚‚ã®ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -285,41 +285,41 @@
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤷ¤¿JVM¥ª¥×¥·¥ç¥ó¤ò¡¢JRE¤¬JAR¥Õ¥¡¥¤¥ë¤ò¼Â¹Ô¤¹¤ëºÝ¤Ë»ÈÍѤ¹¤ë¤è¤¦¤ËÀßÄꤷ¤Þ¤¹¡£JVM¥ª¥×¥·¥ç¥ó¤Ï¡¢java(1)¥³¥Þ¥ó¥É¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+指定ã—ãŸJVMオプションをã€JREãŒJARファイルを実行ã™ã‚‹éš›ã«ä½¿ç”¨ã™ã‚‹ã‚ˆã†ã«è¨­å®šã—ã¾ã™ã€‚JVMオプションã¯ã€java(1)コマンドã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã§èª¬æ˜Žã•ã‚Œã¦ã„ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "¥ª¥Ú¥é¥ó¥É"
+.SH "オペランド"
 .PP
-¼¡¤Î¥ª¥Ú¥é¥ó¥É¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Çǧ¼±¤µ¤ì¤Þ¤¹¡£
+次ã®ã‚ªãƒšãƒ©ãƒ³ãƒ‰ã¯ã€\fIjar\fRコマンドã§èªè­˜ã•ã‚Œã¾ã™ã€‚
 .PP
 \fIfile\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fIfile\fR¥ª¥Ú¥é¥ó¥É¤Ï¡¢¥¢¡¼¥«¥¤¥Ö¤ËÄɲ乤ëɬÍפΤ¢¤ë¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ñ¥¹¤È̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤ÎÃê½Ð(\fIx\fR)¤Þ¤¿¤Ï¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È(\fIt\fR)»þ¤Ë¡¢\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ÏÃê½Ð¤Þ¤¿¤Ï¥ê¥¹¥È¤¹¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£¾¯¤Ê¤¯¤È¤â1¤Ä¤ÎÍ­¸ú¤Ê¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Ê£¿ô¤Î\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ò¶õÇò¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fIentrypoint\fR¡¢\fIjarfile\fR¤Þ¤¿¤Ï\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¤Ï¡¢¤½¤Î¸å¤Ë\fIfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fIfile\fRオペランドã¯ã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«è¿½åŠ ã™ã‚‹å¿…è¦ã®ã‚るファイルã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒ‘スã¨åå‰ã‚’定義ã—ã¾ã™ã€‚JARファイルã®æŠ½å‡º(\fIx\fR)ã¾ãŸã¯ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ(\fIt\fR)時ã«ã€\fIfile\fRオペランドã¯æŠ½å‡ºã¾ãŸã¯ãƒªã‚¹ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘スã¨åå‰ã‚’定義ã—ã¾ã™ã€‚å°‘ãªãã¨ã‚‚1ã¤ã®æœ‰åŠ¹ãªãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚複数ã®\fIfile\fRオペランドを空白ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fIentrypoint\fRã€\fIjarfile\fRã¾ãŸã¯\fImanifest\fRオペランドãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã¯ã€ãã®å¾Œã«\fIfile\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIentrypoint\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤Ï¡¢¼Â¹Ô²ÄǽJAR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤Æ¤¤¤ë¥¹¥¿¥ó¥É¥¢¥í¥óJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¨¥ó¥È¥ê¡¦¥Ý¥¤¥ó¥È¤È¤Ê¤ë¥¯¥é¥¹¤Î̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£\fIe\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fIentrypoint\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fIentrypoint\fRオペランドã¯ã€å®Ÿè¡Œå¯èƒ½JARファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã¦ã„るスタンドアロンJavaアプリケーションã®ã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒã‚¤ãƒ³ãƒˆã¨ãªã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’定義ã—ã¾ã™ã€‚\fIe\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fIentrypoint\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIjarfile\fR
 .RS 4
-ºîÀ®(\fIc\fR)¡¢¹¹¿·(\fIu\fR)¡¢Ãê½Ð(\fIx\fR)¤Þ¤¿¤Ïɽ¼¨(\fIt\fR)¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¤òÄêµÁ¤·¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò¾Êά¤¹¤ë¤È¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¡¢\fIstdin\fR¤«¤é¤ÎJAR¥Õ¥¡¥¤¥ë̾¤ò¼õ¤±Æþ¤ì¤ë¤«(\fIx\fR¤ª¤è¤Ó\fIt\fR¤Î¾ì¹ç)¡¢JAR¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤ËÁ÷¿®¤¹¤ë¤³¤È(\fIc\fR¤ª¤è¤Ó\fIu\fR¤Î¾ì¹ç)¤¬»Ø¼¨¤µ¤ì¤Þ¤¹¡£
+作æˆ(\fIc\fR)ã€æ›´æ–°(\fIu\fR)ã€æŠ½å‡º(\fIx\fR)ã¾ãŸã¯è¡¨ç¤º(\fIt\fR)ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’定義ã—ã¾ã™ã€‚\fIf\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fIjarfile\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIf\fRオプションãŠã‚ˆã³\fIjarfile\fRオペランドをçœç•¥ã™ã‚‹ã¨ã€\fIjar\fRコマンドã«ã€\fIstdin\fRã‹ã‚‰ã®JARファイルåã‚’å—ã‘入れるã‹(\fIx\fRãŠã‚ˆã³\fIt\fRã®å ´åˆ)ã€JARファイルを\fIstdout\fRã«é€ä¿¡ã™ã‚‹ã“ã¨(\fIc\fRãŠã‚ˆã³\fIu\fRã®å ´åˆ)ãŒæŒ‡ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤òº÷°úÉÕ¤±(\fIi\fR)¤¹¤ë¾ì¹ç¤Ï¡¢\fIf\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIjarfile\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルを索引付ã‘(\fIi\fR)ã™ã‚‹å ´åˆã¯ã€\fIf\fRオプションを指定ã—ãªã„ã§\fIjarfile\fRオペランドを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \fImanifest\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ÎºîÀ®(\fIc\fR)¤Þ¤¿¤Ï¹¹¿·(\fIu\fR)»þ¤Ë¡¢\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ÏJAR¥Õ¥¡¥¤¥ë¤Î\fIMANIFEST\&.MF\fR¤Ë´Þ¤á¤ë°À­¤Î̾Á°¤ÈÃͤò»ý¤Ä´û¸¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤òÄêµÁ¤·¤Þ¤¹¡£\fIf\fR¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+JARファイルã®ä½œæˆ(\fIc\fR)ã¾ãŸã¯æ›´æ–°(\fIu\fR)時ã«ã€\fImanifest\fRオペランドã¯JARファイルã®\fIMANIFEST\&.MF\fRã«å«ã‚る属性ã®åå‰ã¨å€¤ã‚’æŒã¤æ—¢å­˜ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’定義ã—ã¾ã™ã€‚\fIf\fRオプションãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯\fImanifest\fRオペランドを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fI@arg\-file\fR
 .RS 4
-\fIjar\fR¥³¥Þ¥ó¥É¤òû½Ì¤Þ¤¿¤Ï´ÊÁDz½¤¹¤ë¤Ë¤Ï¡¢Ê̤Υƥ­¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤ò»ØÄꤷ¡¢ÀÜƬ¼­¤È¤·¤Æ¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤òÉÕ¤±¤Æ\fIjar\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjar\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯Ê¸»ú¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjar\fRコマンドを短縮ã¾ãŸã¯ç°¡ç´ åŒ–ã™ã‚‹ã«ã¯ã€åˆ¥ã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¼•æ•°ã‚’指定ã—ã€æŽ¥é ­è¾žã¨ã—ã¦ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)を付ã‘ã¦\fIjar\fRコマンドã«æ¸¡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjar\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯æ–‡å­—ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .sp
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤È°ú¿ô(°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤µ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤ë\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤Ï¡¢¶õÇò¤Þ¤¿¤Ï²þ¹Ôʸ»ú¤Ç¶èÀڤ뤳¤È¤¬¤Ç¤­¤Þ¤¹¡£°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ·¤ÆÁêÂÐŪ¤Ç¤¢¤ê¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î¾ì½ê¤ËÂФ·¤Æ¤ÏÁêÂÐŪ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£Ä̾ï¤Ï¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥§¥ë¤Ë¤è¤Ã¤ÆŸ³«¤µ¤ì¤ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ê¤É¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÏŸ³«¤µ¤ì¤Þ¤»¤ó¡£
+引数ファイルã«ã¯ã€\fIjar\fRコマンドã®ã‚ªãƒ—ションã¨å¼•æ•°(引数ファイルをサãƒãƒ¼ãƒˆã—ãªã„起動ツールã«æ¸¡ã•ã‚Œã‚‹\fI\-J\fRオプションを除ã)ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ファイル内ã®å¼•æ•°ã¯ã€ç©ºç™½ã¾ãŸã¯æ”¹è¡Œæ–‡å­—ã§åŒºåˆ‡ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€\fIjar\fRコマンドを実行ã§ãã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¯¾ã—ã¦ç›¸å¯¾çš„ã§ã‚ã‚Šã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®å ´æ‰€ã«å¯¾ã—ã¦ã¯ç›¸å¯¾çš„ã§ã¯ã‚ã‚Šã¾ã›ã‚“。通常ã¯ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦å±•é–‹ã•ã‚Œã‚‹ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ãªã©ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã¯å±•é–‹ã•ã‚Œã¾ã›ã‚“。
 .sp
-¼¡¤ÎÎã¤Ï¡¢\fIfind\fR¥³¥Þ¥ó¥É¤Ë¤è¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê½ÐÎϤ«¤é¤Î¥Õ¥¡¥¤¥ë̾¤Ç\fIclasses\&.list\fR¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã¯ã€\fIfind\fRコマンドã«ã‚ˆã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå‡ºåŠ›ã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«åã§\fIclasses\&.list\fRファイルを作æˆã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -330,7 +330,7 @@
 .if n \{\
 .RE
 .\}
-\fIjar\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢\fI@arg\-file\fR¹½Ê¸¤ò»ÈÍѤ·¤Æ\fIclasses\&.list\fR¥Õ¥¡¥¤¥ë¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIjar\fRコマンドを実行ã—ã€\fI@arg\-file\fR構文を使用ã—ã¦\fIclasses\&.list\fRファイルを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -341,7 +341,7 @@
 .if n \{\
 .RE
 .\}
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢ÁêÂХѥ¹¤¬µ­½Ò¤µ¤ì¤¿°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢ÅϤµ¤ì¤¿¥Ñ¥¹¤ËÂФ·¤ÆÁêÂÐŪ¤Ç¤Ï¤Ê¤¯¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Î¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ç›¸å¯¾ãƒ‘スãŒè¨˜è¿°ã•ã‚ŒãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€æ¸¡ã•ã‚ŒãŸãƒ‘スã«å¯¾ã—ã¦ç›¸å¯¾çš„ã§ã¯ãªãã€\fIjar\fRコマンドã®ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -353,9 +353,9 @@
 .RE
 .\}
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-\fIe\fR¡¢\fIf\fR¤ª¤è¤Ó\fIm\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIentrypoint\fR¡¢\fIjarfile\fR¤ª¤è¤Ó\fImanifest\fR¥ª¥Ú¥é¥ó¥É¤ÈƱ¤¸½ç½ø¤Ç¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë½Ð¸½¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIe\fRã€\fIf\fRãŠã‚ˆã³\fIm\fRオプションã¯ã€\fIentrypoint\fRã€\fIjarfile\fRãŠã‚ˆã³\fImanifest\fRオペランドã¨åŒã˜é †åºã§ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«å‡ºç¾ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -366,9 +366,9 @@
 .if n \{\
 .RE
 .\}
-.SH "Îã"
+.SH "例"
 .PP
-\fBExample 1\fR, ¾éĹ¤Ê½ÐÎϤˤè¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ÎÄɲÃ
+\fBExample 1\fR, 冗長ãªå‡ºåŠ›ã«ã‚ˆã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®è¿½åŠ 
 .RS 4
 .sp
 .if n \{\
@@ -396,7 +396,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¥Õ¥¡¥¤¥ë¤ÎÄɲÃ
+\fBExample 2\fR, サブディレクトリã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®è¿½åŠ 
 .RS 4
 .sp
 .if n \{\
@@ -427,7 +427,7 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, JAR¤Î¥³¥ó¥Æ¥ó¥Ä¤Î¥ê¥¹¥È
+\fBExample 3\fR, JARã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ãƒªã‚¹ãƒˆ
 .RS 4
 .sp
 .if n \{\
@@ -460,9 +460,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, º÷°ú¤ÎÄɲÃ
+\fBExample 4\fR, 索引ã®è¿½åŠ 
 .RS 4
-³ô¼°¼è°ú¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÁê¸ß°Í¸¥¯¥é¥¹¤ò¡¢\fImain\&.jar\fR¡¢\fIbuy\&.jar\fR¤ª¤è¤Ó\fIsell\&.jar\fR¤Î3¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤¹¤ë¾ì¹ç¡¢\fIi\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fImain\&.jar\fR¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Î\fIClass\-Path\fR°À­¤ò»ØÄꤹ¤ë¾ì¹ç¡¢\fIi\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥É¤Î®ÅÙ¤ò¸þ¾å¤Ç¤­¤Þ¤¹¡£
+æ ªå¼å–引ã®ã‚¢ãƒ—リケーションã®ç›¸äº’ä¾å­˜ã‚¯ãƒ©ã‚¹ã‚’ã€\fImain\&.jar\fRã€\fIbuy\&.jar\fRãŠã‚ˆã³\fIsell\&.jar\fRã®3ã¤ã®JARファイルã«åˆ†å‰²ã™ã‚‹å ´åˆã€\fIi\fRオプションを使用ã—ã¾ã™ã€‚\fImain\&.jar\fRマニフェスト内ã®\fIClass\-Path\fR属性を指定ã™ã‚‹å ´åˆã€\fIi\fRオプションを使用ã—ã¦ã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ‰ã®é€Ÿåº¦ã‚’å‘上ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -474,9 +474,9 @@
 .if n \{\
 .RE
 .\}
-\fIINDEX\&.LIST\fR¥Õ¥¡¥¤¥ë¤¬\fIMETA\-INF\fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÁÞÆþ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ë¤è¤Ã¤Æ¥¯¥é¥¹¤Þ¤¿¤Ï¥ê¥½¡¼¥¹¤Î¸¡º÷¤¬¹Ô¤ï¤ì¤ë¤È¤­¤Ë¡¢»ØÄꤷ¤¿JAR¥Õ¥¡¥¤¥ë¤¬¥À¥¦¥ó¥í¡¼¥É¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIINDEX\&.LIST\fRファイルãŒ\fIMETA\-INF\fRディレクトリã«æŒ¿å…¥ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã«ã‚ˆã£ã¦ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒªã‚½ãƒ¼ã‚¹ã®æ¤œç´¢ãŒè¡Œã‚れるã¨ãã«ã€æŒ‡å®šã—ãŸJARファイルãŒãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ðÊó¤ò»ÈÍѤ·¤Æ¡¢¸úΨŪ¤Ë¥¯¥é¥¹¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ò¥³¥Ô¡¼¤¹¤ë¤Ë¤Ï¡¢ºÇ½é¤Ë\fIdir1\fRÆâ¤Î¥Õ¥¡¥¤¥ë¤ò\fIstdout\fR¤Ë°µ½Ì¤·¤Æ¤«¤é¡¢\fIstdin\fR¤«¤é\fIdir2\fR¤Ë¥Ñ¥¤¥×¥é¥¤¥ó¤òºîÀ®¤·¤ÆÃê½Ð¤·¤Þ¤¹(\fI\-f\fR¥ª¥×¥·¥ç¥ó¤ÏξÊý¤Î\fIjar\fR¥³¥Þ¥ó¥É¤Ç¾Êά¤·¤Þ¤¹)¡£
+アプリケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã•ã‚Œã¦ã„る情報を使用ã—ã¦ã€åŠ¹çŽ‡çš„ã«ã‚¯ãƒ©ã‚¹ã‚’ロードã—ã¾ã™ã€‚ディレクトリをコピーã™ã‚‹ã«ã¯ã€æœ€åˆã«\fIdir1\fR内ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fIstdout\fRã«åœ§ç¸®ã—ã¦ã‹ã‚‰ã€\fIstdin\fRã‹ã‚‰\fIdir2\fRã«ãƒ‘イプラインを作æˆã—ã¦æŠ½å‡ºã—ã¾ã™(\fI\-f\fRオプションã¯ä¸¡æ–¹ã®\fIjar\fRコマンドã§çœç•¥ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -488,7 +488,7 @@
 .RE
 .\}
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -509,8 +509,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-Java¥Á¥å¡¼¥È¥ê¥¢¥ë¤ÎJAR¤Ë´Ø¤¹¤ë¹à
+http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+Javaãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã®JARã«é–¢ã™ã‚‹é …
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jarsigner.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jarsigner.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jarsigner
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jarsigner" "1" "2013ǯ11·î21Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "jarsigner" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jarsigner \- Java¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ½ð̾¤ª¤è¤Ó¸¡¾Ú¤ò¹Ô¤¤¤Þ¤¹¡£
-.SH "³µÍ×"
+jarsigner \- Javaアーカイブ(JAR)ファイルã«å¯¾ã—ã¦ç½²åãŠã‚ˆã³æ¤œè¨¼ã‚’è¡Œã„ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,30 +74,30 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verify
 .RS 4
-\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ë̾¤Î¸å¤Ë0¸Ä°Ê¾å¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ½ð̾ÉÕ¤­¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸¡¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬¡¢¤¤¤º¤ì¤«¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤Ë°ìÃפ¹¤ë¤³¤È¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ÊÌ̾¤Ï¡¢\fI\-keystore\fR¤Ç»ØÄꤵ¤ì¤¿¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢Æâ¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£
+\fI\-verify\fRオプションã§ã¯ã€JARファイルåã®å¾Œã«0個以上ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åを指定ã§ãã¾ã™ã€‚\fI\-verify\fRオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€\fIjarsigner\fRコマンドã§ã¯ã€JARファイル内ã®å„ç½²å付ãエンティティã®æ¤œè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒã€ã„ãšã‚Œã‹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åã«ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚別åã¯ã€\fI\-keystore\fRã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢¥á¥Ã¥»¡¼¥¸¡Öjar¤¬¸¡¾Ú¤µ¤ì¤Þ¤·¤¿¡£½ð̾¼Ô¥¨¥é¡¼¡×¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fI\-strict\fRオプションも指定ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€ŒjarãŒæ¤œè¨¼ã•ã‚Œã¾ã—ãŸã€‚ç½²å者エラーã€ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIjar\-file\fR
 .RS 4
-½ð̾¤µ¤ì¤ëJAR¥Õ¥¡¥¤¥ë¡£
+ç½²åã•ã‚Œã‚‹JARファイル。
 .sp
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¸¡½Ð¤µ¤ì¤ë¤È¡¢¥á¥Ã¥»¡¼¥¸¡Öjar¤Ï½ð̾¤µ¤ì¤Þ¤·¤¿ \- ½ð̾¼Ô¥¨¥é¡¼¤¬¤¢¤ê¤Þ¤¹¡£¡×¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fI\-strict\fRオプションも指定ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒæ¤œå‡ºã•ã‚Œã‚‹ã¨ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€Œjarã¯ç½²åã•ã‚Œã¾ã—㟠\- ç½²å者エラーãŒã‚ã‚Šã¾ã™ã€‚ã€ã¨ã„ã†ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIalias\fR
 .RS 4
-ÊÌ̾¤Ï¡¢\fI\-keystore\fR¤Ç»ØÄꤵ¤ì¤¿¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢Æâ¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£
+別åã¯ã€\fI\-keystore\fRã§æŒ‡å®šã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjarsigner\fR¥Ä¡¼¥ë¤Ë¤Ï¡¢¼¡¤Î2¤Ä¤ÎÌÜŪ¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjarsigner\fRツールã«ã¯ã€æ¬¡ã®2ã¤ã®ç›®çš„ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -107,7 +107,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëÌÜŪ¡£
+Javaアーカイブ(JAR)ファイルã«ç½²åã™ã‚‹ç›®çš„。
 .RE
 .sp
 .RS 4
@@ -118,12 +118,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ÈÀ°¹çÀ­¤ò¸¡¾Ú¤¹¤ëÌÜŪ¡£
+ç½²å付ãJARファイルã®ç½²åã¨æ•´åˆæ€§ã‚’検証ã™ã‚‹ç›®çš„。
 .RE
 .PP
-JARµ¡Ç½¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥¤¥á¡¼¥¸¡¢¥µ¥¦¥ó¥É¤ª¤è¤Ó¤½¤Î¾¤Î¥Ç¥¸¥¿¥ë¡¦¥Ç¡¼¥¿¤òñ°ì¤Î¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸²½¤Ç¤­¤ë¤Î¤Ç¡¢¥Õ¥¡¥¤¥ë¤ò¿×®¤«¤ÄÍưפËÇÛÉۤǤ­¤Þ¤¹¡£\fIjar\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¡¢³«È¯¼Ô¤ÏJAR¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£(µ»½ÑŪ¤Ê´ÑÅÀ¤«¤é¸À¤¨¤Ð¡¢¤¹¤Ù¤Æ¤ÎZIP¥Õ¥¡¥¤¥ë¤âJAR¥Õ¥¡¥¤¥ë¤È¤ß¤Ê¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ½èÍý¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£)
+JAR機能を使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ã‚µã‚¦ãƒ³ãƒ‰ãŠã‚ˆã³ãã®ä»–ã®ãƒ‡ã‚¸ã‚¿ãƒ«ãƒ»ãƒ‡ãƒ¼ã‚¿ã‚’å˜ä¸€ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ãƒ‘ッケージ化ã§ãã‚‹ã®ã§ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’迅速ã‹ã¤å®¹æ˜“ã«é…布ã§ãã¾ã™ã€‚\fIjar\fRã¨ã„ã†åå‰ã®ãƒ„ールを使用ã—ã¦ã€é–‹ç™ºè€…ã¯JARファイルを作æˆã§ãã¾ã™ã€‚(技術的ãªè¦³ç‚¹ã‹ã‚‰è¨€ãˆã°ã€ã™ã¹ã¦ã®ZIPファイルもJARファイルã¨ã¿ãªã™ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€\fIjar\fRコマンドã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸJARファイルã€ã¾ãŸã¯\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦å‡¦ç†ã•ã‚ŒãŸJARファイルã«ã¯ã€\fIMETA\-INF/MANIFEST\&.MF\fRファイルもå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚)
 .PP
-¥Ç¥¸¥¿¥ë½ð̾¤Ï¡¢¤Ê¤ó¤é¤«¤Î¥Ç¡¼¥¿(½ð̾¤ÎÂоݤȤʤë¥Ç¡¼¥¿)¡¢¤ª¤è¤Ó¥¨¥ó¥Æ¥£¥Æ¥£(¿Í¡¢²ñ¼Ò¤Ê¤É)¤ÎÈëÌ©¸°¤«¤é·×»»¤µ¤ì¤ë¥Ó¥Ã¥È¤Îʸ»úÎó¤Ç¤¹¡£¼ê½ñ¤­¤Î½ð̾ƱÍÍ¡¢¥Ç¥¸¥¿¥ë½ð̾¤Ë¤Ï¿¤¯¤ÎÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
+デジタル署åã¯ã€ãªã‚“らã‹ã®ãƒ‡ãƒ¼ã‚¿(ç½²åã®å¯¾è±¡ã¨ãªã‚‹ãƒ‡ãƒ¼ã‚¿)ã€ãŠã‚ˆã³ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£(人ã€ä¼šç¤¾ãªã©)ã®ç§˜å¯†éµã‹ã‚‰è¨ˆç®—ã•ã‚Œã‚‹ãƒ“ットã®æ–‡å­—列ã§ã™ã€‚手書ãã®ç½²ååŒæ§˜ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã«ã¯å¤šãã®åˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -133,7 +133,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾¤ÎÀ¸À®¤Ë»ÈÍѤµ¤ì¤¿ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤ò»ÈÍѤ¹¤ë·×»»¤Ë¤è¤Ã¤Æ¡¢¤½¤ì¤¬ËÜʪ¤Ç¤¢¤ë¤³¤È¤ò¸¡¾Ú¤Ç¤­¤Þ¤¹¡£
+ç½²åã®ç”Ÿæˆã«ä½¿ç”¨ã•ã‚ŒãŸç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’使用ã™ã‚‹è¨ˆç®—ã«ã‚ˆã£ã¦ã€ãã‚ŒãŒæœ¬ç‰©ã§ã‚ã‚‹ã“ã¨ã‚’検証ã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -144,7 +144,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ÈëÌ©¸°¤¬Â¾¿Í¤ËÃΤé¤ì¤Ê¤¤¸Â¤ê¡¢¥Ç¥¸¥¿¥ë½ð̾¤Îµ¶Â¤¤ÏÉÔ²Äǽ¤Ç¤¹¡£
+秘密éµãŒä»–人ã«çŸ¥ã‚‰ã‚Œãªã„é™ã‚Šã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã®å½é€ ã¯ä¸å¯èƒ½ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -155,7 +155,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤³¤ì¤Ï¡¢½ð̾¤¬ÉÕ¤¤¤¿¥Ç¡¼¥¿¤Îµ¡Ç½¤Ç¤¢¤ê¡¢Â¾¤Î¥Ç¡¼¥¿¤Î½ð̾¤È¤Ê¤ë¤è¤¦¤ËÍ×µá¤Ç¤­¤Þ¤»¤ó¡£
+ã“ã‚Œã¯ã€ç½²åãŒä»˜ã„ãŸãƒ‡ãƒ¼ã‚¿ã®æ©Ÿèƒ½ã§ã‚ã‚Šã€ä»–ã®ãƒ‡ãƒ¼ã‚¿ã®ç½²åã¨ãªã‚‹ã‚ˆã†ã«è¦æ±‚ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -166,27 +166,27 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½ð̾ÉÕ¤­¥Ç¡¼¥¿¤ÏÊѹ¹¤Ç¤­¤Þ¤»¤ó¡£¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç¡¢½ð̾¤Ë¤è¤Ã¤ÆËÜʪ¤Ç¤¢¤ë¤È¸¡¾Ú¤Ç¤­¤Þ¤»¤ó¡£
+ç½²å付ãデータã¯å¤‰æ›´ã§ãã¾ã›ã‚“。データãŒå¤‰æ›´ã•ã‚ŒãŸå ´åˆã€ç½²åã«ã‚ˆã£ã¦æœ¬ç‰©ã§ã‚ã‚‹ã¨æ¤œè¨¼ã§ãã¾ã›ã‚“。
 .RE
 .PP
-¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¨¥ó¥Æ¥£¥Æ¥£¤Î½ð̾¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¤Þ¤º¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´ØÏ¢¤¹¤ë¸ø³«¸°/ÈëÌ©¸°¤Î¥Ú¥¢¤È¡¢¸ø³«¸°¤òǧ¾Ú¤¹¤ë1¤Ä°Ê¾å¤Î¾ÚÌÀ½ñ¤ò»ý¤ÄɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Ç¡¢Ê̤Υ¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤¬ÆÃÄê¤ÎÃͤò»ý¤Ä¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+ファイルã«å¯¾ã—ã¦ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç½²åを生æˆã™ã‚‹ã«ã¯ã€ã¾ãšã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«é–¢é€£ã™ã‚‹å…¬é–‹éµ/秘密éµã®ãƒšã‚¢ã¨ã€å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹1ã¤ä»¥ä¸Šã®è¨¼æ˜Žæ›¸ã‚’æŒã¤å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚証明書ã¨ã¯ã€ã‚るエンティティã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã§ã€åˆ¥ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµãŒç‰¹å®šã®å€¤ã‚’æŒã¤ã“ã¨ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤«¤é¤Î¸°¤È¾ÚÌÀ½ñ¾ðÊó¤ò»ÈÍѤ·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤òÀ¸À®¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢ÈëÌ©¸°¡¢¤ª¤è¤ÓÂбþ¤¹¤ë¸ø³«¸°¤òǧ¾Ú¤¹¤ë¡¢ÈëÌ©¸°¤Ë´ØÏ¢¤·¤¿X\&.509¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢¤òºîÀ®¤ª¤è¤Ó´ÉÍý¤·¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®éµã¨è¨¼æ˜Žæ›¸æƒ…報を使用ã—ã¦ã€JARファイルã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを生æˆã—ã¾ã™ã€‚キーストアã¯ã€ç§˜å¯†éµã€ãŠã‚ˆã³å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã€ç§˜å¯†éµã«é–¢é€£ã—ãŸX\&.509証明書ãƒã‚§ãƒ¼ãƒ³ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã§ã™ã€‚\fIkeytool\fRコマンドを使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆãŠã‚ˆã³ç®¡ç†ã—ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ½ð̾¤òÀ¸À®¤·¤Þ¤¹¡£½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Æäˡ¢¥Õ¥¡¥¤¥ë¤Ø¤Î½ð̾¤Ë»ÈÍѤ¹¤ëÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤Î¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Î¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÆâÉô(½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ëÆâ)¤Î¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤ò¸¡¾Ú¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã§ã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã‚’使用ã—ã¦ç½²åを生æˆã—ã¾ã™ã€‚ç½²å付ãJARファイルã«ã¯ã€ç‰¹ã«ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã®ã‚³ãƒ”ーãŒå«ã¾ã‚Œã¾ã™ã€‚\fIjarsigner\fRコマンドã§ã¯ã€å†…部(ç½²åブロック・ファイル内)ã®è¨¼æ˜Žæ›¸ã‚’使用ã—ã¦ã€ç½²å付ãJARファイルã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを検証ã§ãã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢½ð̾¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü´ÖÃæ¤ËJAR¥Õ¥¡¥¤¥ë¤¬½ð̾¤µ¤ì¤¿¤µ¤ì¤¿¤«¤É¤¦¤«¤ò¥·¥¹¥Æ¥à¤ä¥Ç¥×¥í¥¤¥ä(Java Plug\-in¤ò´Þ¤à)¤¬¥Á¥§¥Ã¥¯¤Ç¤­¤ë¡¢¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤à½ð̾¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¤µ¤é¤Ë¡¢API¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¥¿¥¤¥à¥¹¥¿¥ó¥×¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã§ã¯ã€ç½²å証明書ã®æœ‰åŠ¹æœŸé–“中ã«JARファイルãŒç½²åã•ã‚ŒãŸã•ã‚ŒãŸã‹ã©ã†ã‹ã‚’システムやデプロイヤ(Java Plug\-inã‚’å«ã‚€)ãŒãƒã‚§ãƒƒã‚¯ã§ãã‚‹ã€ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã‚€ç½²åを生æˆã§ãã¾ã™ã€‚ã•ã‚‰ã«ã€APIを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã§ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—情報をå–å¾—ã§ãã¾ã™ã€‚
 .PP
-¸½»þÅÀ¤Ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIjar\fR¥³¥Þ¥ó¥É¤Þ¤¿¤ÏZIP¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤Î¤ß¤Ë½ð̾¤Ç¤­¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤ÏZIP¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤â´Þ¤Þ¤ì¤Æ¤¤¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£\fIMETA\-INF/MANIFEST\&.MF\fR¥Õ¥¡¥¤¥ë¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆZIP¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëºÝ¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+ç¾æ™‚点ã§ã¯ã€\fIjarsigner\fRコマンドã§ã¯ã€\fIjar\fRコマンドã¾ãŸã¯ZIPファイルã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸJARファイルã®ã¿ã«ç½²åã§ãã¾ã™ã€‚JARファイルã¯ZIPファイルã¨åŒã˜ã§ã™ãŒã€JARファイルã«ã¯\fIMETA\-INF/MANIFEST\&.MF\fRファイルもå«ã¾ã‚Œã¦ã„る点ãŒç•°ãªã‚Šã¾ã™ã€‚\fIMETA\-INF/MANIFEST\&.MF\fRファイルã¯ã€\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦ZIPファイルã«ç½²åã™ã‚‹éš›ã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î\fIjarsigner\fR¥³¥Þ¥ó¥É¤ÎÆ°ºî¤Ç¤Ï¡¢JAR¤Þ¤¿¤ÏZIP¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£\fI\-verify\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+デフォルトã®\fIjarsigner\fRコマンドã®å‹•ä½œã§ã¯ã€JARã¾ãŸã¯ZIPファイルã«ç½²åã—ã¾ã™ã€‚\fI\-verify\fRオプションを使用ã—ã¦ã€ç½²å付ãJARファイルを検証ã—ã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤Î¸å¤Ë½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤Î¸¡¾Ú¤â»î¹Ô¤·¤Þ¤¹¡£¸¡¾Ú¥¨¥é¡¼¤Þ¤¿¤Ï¤½¤Î¾¤ÎÌäÂ꤬ȯÀ¸¤¹¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê½ÅÂç¤Ê·Ù¹ð¤¬¥¨¥é¡¼¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£¥¨¥é¡¼¤È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾"
+\fIjarsigner\fRコマンドã¯ã€ç½²åã¾ãŸã¯æ¤œè¨¼ã®å¾Œã«ç½²å者ã®è¨¼æ˜Žæ›¸ã®æ¤œè¨¼ã‚‚試行ã—ã¾ã™ã€‚検証エラーã¾ãŸã¯ãã®ä»–ã®å•é¡ŒãŒç™ºç”Ÿã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šé‡å¤§ãªè­¦å‘ŠãŒã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚エラーã¨è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "キーストアã®åˆ¥å"
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢°ì°Õ¤ÎÊÌ̾¤ò»ÈÍѤ·¤Æ¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤¹¡£
+キーストアã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ä¸€æ„ã®åˆ¥åを使用ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¤È¤­¤Ï¡¢½ð̾¤ÎÀ¸À®¤ËɬÍפÊÈëÌ©¸°¤ò´Þ¤à¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÊÌ̾¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIworking\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fImystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤Ë´Þ¤Þ¤ì¤ëÊÌ̾\fIduke\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¡¢\fIMyJARFile\&.jar\fR¤È¤¤¤¦Ì¾Á°¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢\fIMyJARFile\&.jar\fR¤Ï½ð̾ÉÕ¤­¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦JARファイルã«ç½²åã™ã‚‹ã¨ãã¯ã€ç½²åã®ç”Ÿæˆã«å¿…è¦ãªç§˜å¯†éµã‚’å«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€\fIworking\fRディレクトリã®\fImystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«å«ã¾ã‚Œã‚‹åˆ¥å\fIduke\fRã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã‚’使用ã—ã¦ã€\fIMyJARFile\&.jar\fRã¨ã„ã†åå‰ã®JARファイルã«ç½²åã—ã¾ã™ã€‚出力ファイルã¯æŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€\fIMyJARFile\&.jar\fRã¯ç½²å付ãã®JARファイルã«ã‚ˆã£ã¦ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -199,36 +199,36 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤¤¤È¡¢ÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£Æ±Íͤˡ¢ÈëÌ©¸°¤â¥­¡¼¥¹¥È¥¢Æâ¤Ç¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Æ¤¤¤ë¤¿¤á¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤Þ¤¿¤Ï»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥È¤¬Êݸ¤µ¤ì¤Æ¤¤¤ë¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¾ì½ê"
+キーストアã¯ãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§æŒ‡å®šã—ãªã„ã¨ã€å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚åŒæ§˜ã«ã€ç§˜å¯†éµã‚‚キーストア内ã§ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€ç§˜å¯†éµã®ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ãƒ‘スワードを指定ã—ã¦ã„ãªã„å ´åˆã€ã¾ãŸã¯æŒ‡å®šã—ãŸãƒ‘スワートãŒä¿å­˜ã•ã‚Œã¦ã„るパスワードã¨åŒã˜ã§ã¯ãªã„å ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
+.SS "キーストアã®å ´æ‰€"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢»ÈÍѤ¹¤ë¥­¡¼¥¹¥È¥¢¤ÎURL¤ò»ØÄꤹ¤ë\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç¡¢\fIuser\&.home\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç·è¤Þ¤ë¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ëÆâ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fIjarsigner\fRコマンドã«ã¯ã€ä½¿ç”¨ã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®URLを指定ã™ã‚‹\fI\-keystore\fRオプションãŒã‚ã‚Šã¾ã™ã€‚キーストアã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã€\fIuser\&.home\fRシステム・プロパティã§æ±ºã¾ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®\fI\&.keystore\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .PP
-Oracle Solaris¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢\fIuser\&.home\fR¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+Oracle Solarisシステムã®å ´åˆã€\fIuser\&.home\fRã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤«¤é¤ÎÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ï¡¢\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£URL¤È¤·¤Æ\fINONE\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢null¤Î¥¹¥È¥ê¡¼¥à¤¬\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£\fINONE\fR¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤¬¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢¤¿¤È¤¨¤Ð¡¢¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¡¦¥Ç¥Ð¥¤¥¹¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë»ØÄꤷ¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ"
+\fI\-keystore\fRオプションã‹ã‚‰ã®å…¥åŠ›ã‚¹ãƒˆãƒªãƒ¼ãƒ ã¯ã€\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚URLã¨ã—ã¦\fINONE\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€nullã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ãŒ\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚\fINONE\fRã¯ã€\fIKeyStore\fRクラスãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã€ãŸã¨ãˆã°ã€ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ãƒ»ãƒ‡ãƒã‚¤ã‚¹ã«ç½®ã‹ã‚Œã¦ã„ã‚‹å ´åˆã«æŒ‡å®šã—ã¾ã™ã€‚
+.SS "キーストアã®å®Ÿè£…"
 .PP
-\fIjava\&.security package\fR¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë\fIKeyStore\fR¥¯¥é¥¹¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤ª¤è¤Ó¾ðÊó¤ÎÊѹ¹¤ò¹Ô¤¦¤¿¤á¤Î¡¢ÌÀ³Î¤ËÄêµÁ¤µ¤ì¤¿Â¿¤¯¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£Ê£¿ô¤Î°Û¤Ê¤ë¸ÇÄê¼ÂÁõ¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¡¢³Æ¼ÂÁõ¤ÏÆÃÄê¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤òÂоݤȤ·¤Þ¤¹¡£
+\fIjava\&.security package\fRã§æä¾›ã•ã‚Œã¦ã„ã‚‹\fIKeyStore\fRクラスã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æƒ…å ±ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŠã‚ˆã³æƒ…å ±ã®å¤‰æ›´ã‚’è¡Œã†ãŸã‚ã®ã€æ˜Žç¢ºã«å®šç¾©ã•ã‚ŒãŸå¤šãã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚複数ã®ç•°ãªã‚‹å›ºå®šå®Ÿè£…を指定ã™ã‚‹ã“ã¨ãŒã§ãã€å„実装ã¯ç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’対象ã¨ã—ã¾ã™ã€‚
 .PP
-¸½ºß¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë2¤Ä¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë(\fIkeytool\fR¤È\fIjarsigner\fR)¡¢¤ª¤è¤Ó¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë¤È¤¤¤¦Ì¾Á°¤Î1¤Ä¤ÎGUI¥Ù¡¼¥¹¤Î¥Ä¡¼¥ë¤¬¤¢¤ê¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤Ï¸ø³«¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢JDK¥æ¡¼¥¶¡¼¤Ï¡¢¤½¤ì¤ò»ÈÍѤ¹¤ë¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò½ñ¤­¹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ール(\fIkeytool\fRã¨\fIjarsigner\fR)ã€ãŠã‚ˆã³ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ールã¨ã„ã†åå‰ã®1ã¤ã®GUIベースã®ãƒ„ールãŒã‚ã‚Šã¾ã™ã€‚\fIKeyStore\fRクラスã¯å…¬é–‹ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€JDKユーザーã¯ã€ãれを使用ã™ã‚‹ä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ã‚¢ãƒ—リケーションを書ã込むã“ã¨ãŒã§ãã¾ã™ã€‚
 .PP
-Oracle¤¬Ä󶡤¹¤ëÁȹþ¤ß¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢JKS¤È¤¤¤¦Ì¾Á°¤ÎÆȼ«¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(·Á¼°)¤ò»ÈÍѤ¹¤ë¤â¤Î¤Ç¡¢¥­¡¼¥¹¥È¥¢¤ò¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£Áȹþ¤ß¤Î¼ÂÁõ¤Ç¤Ï¡¢³ÆÈëÌ©¸°¤Ï¸ÄÊ̤Υѥ¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÀ°¹çÀ­¤Ï(ÈëÌ©¸°¤È¤ÏÊ̤Î)¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+OracleãŒæä¾›ã™ã‚‹çµ„è¾¼ã¿ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å®Ÿè£…ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€JKSã¨ã„ã†åå‰ã®ç‹¬è‡ªã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(å½¢å¼)を使用ã™ã‚‹ã‚‚ã®ã§ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’ファイルã¨ã—ã¦å®Ÿè£…ã—ã¦ã„ã¾ã™ã€‚組込ã¿ã®å®Ÿè£…ã§ã¯ã€å„秘密éµã¯å€‹åˆ¥ã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®æ•´åˆæ€§ã¯(秘密éµã¨ã¯åˆ¥ã®)パスワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ï¥×¥í¥Ð¥¤¥À¥Ù¡¼¥¹¤Ç¡¢¤Ä¤Þ¤ê¡¢\fIKeyStore\fR¥¯¥é¥¹¤Ë¤è¤êÄ󶡤µ¤ì¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SPI)¤Ë´Ø¤·¤Æ¼ÂÁõ¤µ¤ì¤Þ¤¹¡£Âбþ¤¹¤ë\fIKeystoreSpi\fRÃê¾Ý¥¯¥é¥¹¤¬¤¢¤ê¡¢¤³¤ì¤â\fIjava\&.security package\fR¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤¬¡¢¥×¥í¥Ð¥¤¥À¤¬¼ÂÁõ¤¹¤ëɬÍפΤ¢¤ë¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢¥×¥í¥Ð¥¤¥À¤È¤Ï¡¢Java Security API¤Ë¤è¤Ã¤Æ¥¢¥¯¥»¥¹²Äǽ¤Ê¥µ¡¼¥Ó¥¹¤Î¥µ¥Ö¥»¥Ã¥È¤ËÂФ·¡¢¤½¤Î¸ÇÄê¼ÂÁõ¤òÄ󶡤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î½¸¹ç¤Î¤³¤È¤Ç¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¤Ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.html¤Ë¤¢¤ë
-Java°Å¹æ²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î¥×¥í¥Ð¥¤¥À¤Î¼ÂÁõÊýË¡¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥×¥í¥Ð¥¤¥À¤ò¼ÂÁõ¤·¡¢\fIKeystoreSpi\fR¥µ¥Ö¥¯¥é¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å®Ÿè£…ã¯ãƒ—ロãƒã‚¤ãƒ€ãƒ™ãƒ¼ã‚¹ã§ã€ã¤ã¾ã‚Šã€\fIKeyStore\fRクラスã«ã‚ˆã‚Šæä¾›ã•ã‚Œã‚‹ã‚¢ãƒ—リケーション・インタフェースã¯ã€ã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SPI)ã«é–¢ã—ã¦å®Ÿè£…ã•ã‚Œã¾ã™ã€‚対応ã™ã‚‹\fIKeystoreSpi\fR抽象クラスãŒã‚ã‚Šã€ã“れも\fIjava\&.security package\fRã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãŒã€ãƒ—ロãƒã‚¤ãƒ€ãŒå®Ÿè£…ã™ã‚‹å¿…è¦ã®ã‚るサービス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’定義ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€ãƒ—ロãƒã‚¤ãƒ€ã¨ã¯ã€Java Security APIã«ã‚ˆã£ã¦ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãªã‚µãƒ¼ãƒ“スã®ã‚µãƒ–セットã«å¯¾ã—ã€ãã®å›ºå®šå®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ‘ッケージã¾ãŸã¯ãƒ‘ッケージã®é›†åˆã®ã“ã¨ã§ã™ã€‚キーストアã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ã«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.htmlã«ã‚ã‚‹
+Javaæš—å·åŒ–アーキテクãƒãƒ£ã®ãƒ—ロãƒã‚¤ãƒ€ã®å®Ÿè£…方法ã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒ—ロãƒã‚¤ãƒ€ã‚’実装ã—ã€\fIKeystoreSpi\fRサブクラスã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤Î\fIgetInstance\fR¥Õ¥¡¥¯¥È¥ê¡¦¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤Æ¡¢ÍÍ¡¹¤Ê¥×¥í¥Ð¥¤¥À¤«¤é°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Ï¡¢¥­¡¼¥¹¥È¥¢¾ðÊó¤Î³ÊǼ·Á¼°¤È¥Ç¡¼¥¿·Á¼°¤òÄêµÁ¤¹¤ë¤È¤È¤â¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÈëÌ©¸°¤È¥­¡¼¥¹¥È¥¢¼«ÂΤÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à¤òÄêµÁ¤·¤Þ¤¹¡£°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ë¤Ï¡¢¸ß´¹À­¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+アプリケーションã§ã¯ã€\fIKeyStore\fRクラスã®\fIgetInstance\fRファクトリ・メソッドを使用ã—ã¦ã€æ§˜ã€…ãªãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’é¸æŠžã§ãã¾ã™ã€‚キーストアã®ã‚¿ã‚¤ãƒ—ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…å ±ã®æ ¼ç´å½¢å¼ã¨ãƒ‡ãƒ¼ã‚¿å½¢å¼ã‚’定義ã™ã‚‹ã¨ã¨ã‚‚ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ç§˜å¯†éµã¨ã‚­ãƒ¼ã‚¹ãƒˆã‚¢è‡ªä½“ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’定義ã—ã¾ã™ã€‚ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã«ã¯ã€äº’æ›æ€§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .PP
-\fIjarsigner\fR¤ª¤è¤Ó\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢URL¤ò»ÈÍѤ·¤Æ»ØÄê¤Ç¤­¤ëǤ°Õ¤Î¾ì½ê¤«¤é¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¤³¤ì¤é¤Î¥³¥Þ¥ó¥É¤Ï¡¢Windows¾å¤ÎMSCAPI¤ª¤è¤Ó¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¾å¤ÎPKCS11¤ÇÄ󶡤µ¤ì¤ë¤è¤¦¤ÊÈó¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRãŠã‚ˆã³\fIpolicytool\fRコマンドã¯ã€URLを使用ã—ã¦æŒ‡å®šã§ãã‚‹ä»»æ„ã®å ´æ‰€ã‹ã‚‰ãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Windows上ã®MSCAPIãŠã‚ˆã³ã™ã¹ã¦ã®ãƒ—ラットフォーム上ã®PKCS11ã§æä¾›ã•ã‚Œã‚‹ã‚ˆã†ãªéžãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ª¤è¤Ó\fIkeytool\fR¥³¥Þ¥ó¥É¤Î¾ì¹ç¡¢\fI\-storetype\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë¤Î¾ì¹ç¡¢\fB¡Ö¥­¡¼¥¹¥È¥¢¡×\fR¥á¥Ë¥å¡¼¤Î\fB¡ÖÊÔ½¸¡×\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIjarsigner\fRコマンドãŠã‚ˆã³\fIkeytool\fRコマンドã®å ´åˆã€\fI\-storetype\fRオプションを使用ã—ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ールã®å ´åˆã€\fB「キーストアã€\fRメニューã®\fB「編集ã€\fRコマンドを使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚
 .PP
-¥æ¡¼¥¶¡¼¤¬¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤵ¤ì¤¿\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ˴ð¤Å¤¤¤Æ¡¢¥Ä¡¼¥ë¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤¬ÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.security\fR¤È¸Æ¤Ð¤ì¡¢JDK¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home/lib/security\fRÆâ¤Ë¸ºß¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIjava\&.home\fR¤Ï¼Â¹Ô»þ´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢JDK¤Þ¤¿¤ÏJava Runtime Environment (JRE)¤ÎºÇ¾å°Ì¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£
+ユーザーãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を明示的ã«æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã§æŒ‡å®šã•ã‚ŒãŸ\fIkeystore\&.type\fRプロパティã®å€¤ã«åŸºã¥ã„ã¦ã€ãƒ„ールã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã¯\fIjava\&.security\fRã¨å‘¼ã°ã‚Œã€JDKセキュリティ・プロパティ・ディレクトリ\fIjava\&.home/lib/security\fR内ã«å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€\fIjava\&.home\fRã¯å®Ÿè¡Œæ™‚環境ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚\fIjre\fRディレクトリã¯ã€JDKã¾ãŸã¯Java Runtime Environment (JRE)ã®æœ€ä¸Šä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-³Æ¥Ä¡¼¥ë¤Ï¡¢\fIkeystore\&.type\fR¤ÎÃͤò¼èÆÀ¤·¡¢¤½¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¡¢¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥Ð¥¤¥À¤òÄ´¤Ù¤Þ¤¹¡£ÌÜŪ¤Î¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤È¡¢¤½¤Î¥×¥í¥Ð¥¤¥À¤«¤é¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„ツールã¯ã€\fIkeystore\&.type\fRã®å€¤ã‚’å–å¾—ã—ã€ãã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’実装ã—ã¦ã„るプロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§ã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ—ロãƒã‚¤ãƒ€ã‚’調ã¹ã¾ã™ã€‚目的ã®ãƒ—ロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¨ã€ãã®ãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¾ã™ã€‚
 .PP
-\fIKeyStore\fR¥¯¥é¥¹¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ëstatic¥á¥½¥Ã¥É\fIgetDefaultType\fR¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥¢¥×¥ì¥Ã¥È¤«¤é\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥³¡¼¥É¤Î¹Ô¤Ç¤Ï¡¢\fIkeystore\&.type property\fR¤Ç»ØÄꤵ¤ì¤¿¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òºîÀ®¤·¤Þ¤¹¡£
+\fIKeyStore\fRクラスã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹staticメソッド\fIgetDefaultType\fRを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションやアプレットã‹ã‚‰\fIkeystore\&.type\fRプロパティã®å€¤ã‚’å–å¾—ã§ãã¾ã™ã€‚次ã®ã‚³ãƒ¼ãƒ‰ã®è¡Œã§ã¯ã€\fIkeystore\&.type property\fRã§æŒ‡å®šã•ã‚ŒãŸã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -240,8 +240,8 @@
 .RE
 .\}
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï¡¢\fIjks\fR
-(Oracle¤¬Ä󶡤¹¤ëÆȼ«¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ)¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¼¡¤Î¹Ô¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯ã€\fIjks\fR
+(OracleãŒæä¾›ã™ã‚‹ç‹¬è‡ªã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…)ã§ã™ã€‚ã“ã‚Œã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®æ¬¡ã®è¡Œã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -253,9 +253,9 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î»ØÄê¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fIJKS\fR¤Ï\fIjks\fR¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+キーストアã®ã‚¿ã‚¤ãƒ—ã®æŒ‡å®šã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fIJKS\fRã¯\fIjks\fRã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥Ä¡¼¥ë¤Ç¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤½¤Î¹Ô¤òÊѹ¹¤·¤ÆÊ̤Υ­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIpkcs12\fR¤È¸Æ¤Ð¤ì¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ë¾ì¹ç¡¢¹Ô¤ò¼¡¤Î¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
+ツールã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹ã«ã¯ã€ãã®è¡Œã‚’変更ã—ã¦åˆ¥ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIpkcs12\fRã¨å‘¼ã°ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージãŒã‚ã‚‹å ´åˆã€è¡Œã‚’次ã®ã‚ˆã†ã«å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -267,12 +267,12 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-PKCS 11¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/p11guide\&.html¤Ë¤¢¤ë
-Java PKCS #11¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖKeyTool¡×¤ª¤è¤Ó¡ÖJarSigner¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥µ¥Ý¡¼¥È¤µ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à"
+\fB注æ„:\fR
+PKCS 11プロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージを使用ã™ã‚‹å ´åˆã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/p11guide\&.htmlã«ã‚ã‚‹
+Java PKCS #11リファレンス・ガイドã®ã€ŒKeyToolã€ãŠã‚ˆã³ã€ŒJarSignerã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "サãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ "
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¼¡¤Î¤¤¤º¤ì¤«¤Î¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£
+デフォルトã§ã€\fIjarsigner\fRコマンドã§ã¯æ¬¡ã®ã„ãšã‚Œã‹ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -282,7 +282,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA1¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤¿¥Ç¥¸¥¿¥ë½ð̾¥¢¥ë¥´¥ê¥º¥à(DSA)
+SHA1ダイジェスト・アルゴリズムを使用ã—ãŸãƒ‡ã‚¸ã‚¿ãƒ«ç½²åアルゴリズム(DSA)
 .RE
 .sp
 .RS 4
@@ -293,7 +293,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA256¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤¿RSA¥¢¥ë¥´¥ê¥º¥à¡£
+SHA256ダイジェスト・アルゴリズムを使用ã—ãŸRSAアルゴリズム。
 .RE
 .sp
 .RS 4
@@ -304,15 +304,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA256¤ÈÂʱ߶ÊÀþ¥Ç¥¸¥¿¥ë½ð̾¥¢¥ë¥´¥ê¥º¥à(ECDSA)¤ò»ÈÍѤ·¤¿Âʱ߶ÊÀþ(EC)°Å¹æÊý¼°¥¢¥ë¥´¥ê¥º¥à
+SHA256ã¨æ¥•å††æ›²ç·šãƒ‡ã‚¸ã‚¿ãƒ«ç½²åアルゴリズム(ECDSA)を使用ã—ãŸæ¥•å††æ›²ç·š(EC)æš—å·æ–¹å¼ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ 
 .RE
 .PP
-½ð̾¼Ô¤Î¸ø³«¸°¤ÈÈëÌ©¸°¤¬DSA¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA1withDSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£½ð̾¼Ô¤Î¸°¤¬RSA¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA256withRSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤è¤¦¤È¤·¤Þ¤¹¡£½ð̾¼Ô¤Î¸°¤¬EC¸°¤Ç¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¤Ï\fISHA256withECDSA\fR¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£
+ç½²å者ã®å…¬é–‹éµã¨ç§˜å¯†éµãŒDSAéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA1withDSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚ç½²å者ã®éµãŒRSAéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA256withRSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—よã†ã¨ã—ã¾ã™ã€‚ç½²å者ã®éµãŒECéµã§ã‚ã‚‹å ´åˆã€\fIjarsigner\fRã¯\fISHA256withECDSA\fRアルゴリズムを使用ã—ã¦JARファイルã«ç½²åã—ã¾ã™ã€‚
 .PP
-¤³¤ì¤é¤Î¥Ç¥Õ¥©¥ë¥È¤Î½ð̾¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£
-.SS "½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë"
+ã“れらã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç½²åアルゴリズムã¯ã€\fI\-sigalg\fRオプションを使用ã—ã¦ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚
+.SS "ç½²å付ãJARファイル"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¡¢½ÐÎϤµ¤ì¤ë½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ÏÆþÎÏJAR¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢¼¡¤Î2¤Ä¤ÎÄɲåե¡¥¤¥ë¤¬META\-INF¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦JARファイルã«ç½²åã™ã‚‹å ´åˆã€å‡ºåŠ›ã•ã‚Œã‚‹ç½²å付ãJARファイルã¯å…¥åŠ›JARファイルã¨åŒã˜ã§ã™ãŒã€æ¬¡ã®2ã¤ã®è¿½åŠ ãƒ•ã‚¡ã‚¤ãƒ«ãŒMETA\-INFディレクトリã«ç½®ã‹ã‚Œã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -322,7 +322,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\&.SF\fR³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Õ¥¡¥¤¥ë
+\fI\&.SF\fRæ‹¡å¼µå­ã®ä»˜ã„ãŸç½²åファイル
 .RE
 .sp
 .RS 4
@@ -333,14 +333,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\&.DSA\fR¡¢\fI\&.RSA\fR¤Þ¤¿¤Ï\fI\&.EC\fR³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë
+\fI\&.DSA\fRã€\fI\&.RSA\fRã¾ãŸã¯\fI\&.EC\fRæ‹¡å¼µå­ã®ä»˜ã„ãŸç½²åブロック・ファイル
 .RE
 .PP
-¤³¤ì¤é2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢\fI\-sigFile\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤ«¤éºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥ª¥×¥·¥ç¥ó¤¬\fI\-sigFile MKSIGN\fR¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï\fIMKSIGN\&.SF\fR¤ª¤è¤Ó\fIMKSIGN\&.DSA\fR¤È¤¤¤¦Ì¾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“れら2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€\fI\-sigFile\fRオプションã®å€¤ã‹ã‚‰ä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚ªãƒ—ションãŒ\fI\-sigFile MKSIGN\fRã®å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIMKSIGN\&.SF\fRãŠã‚ˆã³\fIMKSIGN\&.DSA\fRã¨ã„ã†åå‰ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sigfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î8ʸ»ú¤ò¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬8ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬¤½¤Î¤Þ¤Þ»ÈÍѤµ¤ì¤Þ¤¹¡£ÊÌ̾¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ç»ÈÍѤǤ­¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾¤ÎºîÀ®»þ¤Ë¡¢³ºÅö¤¹¤ëʸ»ú¤¬²¼Àþ(_)ʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£Í­¸ú¤Êʸ»ú¤Ï¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢¿ô»ú¡¢²¼Àþ¤ª¤è¤Ó¥Ï¥¤¥Õ¥ó¤Ç¤¹¡£
-½ð̾¥Õ¥¡¥¤¥ë.PP
-½ð̾¥Õ¥¡¥¤¥ë(\fI\&.SF\fR¥Õ¥¡¥¤¥ë)¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ëºÝ¤ËJAR¥Õ¥¡¥¤¥ë¤Ë¾ï¤Ë´Þ¤Þ¤ì¤ë¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤È»÷¤Æ¤¤¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¤è¤¦¤Ê¡¢¼¡¤Ë¼¨¤¹3¤Ä¤Î¹Ô¤¬¤¢¤ê¤Þ¤¹¡£
+コマンドラインã§\fI\-sigfile\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã€\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã®å…ˆé ­ã®8文字をã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚別åãŒ8文字未満ã®å ´åˆã¯ã€åˆ¥åãŒãã®ã¾ã¾ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚別åã«ã€ç½²åファイルåã§ä½¿ç”¨ã§ããªã„文字ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«åã®ä½œæˆæ™‚ã«ã€è©²å½“ã™ã‚‹æ–‡å­—ãŒä¸‹ç·š(_)文字ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚有効ãªæ–‡å­—ã¯ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã€æ•°å­—ã€ä¸‹ç·šãŠã‚ˆã³ãƒã‚¤ãƒ•ãƒ³ã§ã™ã€‚
+ç½²åファイル.PP
+ç½²åファイル(\fI\&.SF\fRファイル)ã¯ã€\fIjarsigner\fRコマンドを使用ã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã«ç½²åã™ã‚‹éš›ã«JARファイルã«å¸¸ã«å«ã¾ã‚Œã‚‹ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ä¼¼ã¦ã„ã¾ã™ã€‚JARファイルã«å«ã¾ã‚Œã¦ã„るソース・ファイルã”ã¨ã«ã€\fI\&.SF\fRファイルã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚るよã†ãªã€æ¬¡ã«ç¤ºã™3ã¤ã®è¡ŒãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -350,7 +350,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Õ¥¡¥¤¥ë̾
+ファイルå
 .RE
 .sp
 .RS 4
@@ -361,7 +361,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à(SHA)¤Î̾Á°
+ダイジェスト・アルゴリズム(SHA)ã®åå‰
 .RE
 .sp
 .RS 4
@@ -372,17 +372,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-SHA¥À¥¤¥¸¥§¥¹¥È¤ÎÃÍ
+SHAダイジェストã®å€¤
 .RE
 .PP
-¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎSHA¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ð¥¤¥Ê¥ê¡¦¥Ç¡¼¥¿¤Î¥À¥¤¥¸¥§¥¹¥È(¥Ï¥Ã¥·¥å)¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢»ØÄꤵ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¤½¤Î3¹Ô¤Î¥Ï¥Ã¥·¥å¤Ë¤Ê¤ê¤Þ¤¹¡£
+マニフェスト・ファイルã§ã¯ã€å„ソース・ファイルã®SHAダイジェストã®å€¤ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ»ãƒ‡ãƒ¼ã‚¿ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆ(ãƒãƒƒã‚·ãƒ¥)ã«ãªã‚Šã¾ã™ã€‚\fI\&.SF\fRファイルã§ã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã®å€¤ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãã®3è¡Œã®ãƒãƒƒã‚·ãƒ¥ã«ãªã‚Šã¾ã™ã€‚
 .PP
-½ð̾¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥ工夬³ÊǼ¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Ë¤Ï¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Ø¥Ã¥À¡¼¤Î¥Ï¥Ã¥·¥å¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¤È¡¢¸¡¾Ú¤ÎºÇŬ²½¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë.PP
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï½ð̾¤¬ÉÕ¤±¤é¤ì¡¢½ð̾¤Ï½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ËÃÖ¤«¤ì¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢½ð̾¤Ë»ÈÍѤµ¤ì¤¿ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤â¡¢ÆâÉô¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤Æ´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤Î³ÈÄ¥»Ò¤Ï¡¢»ÈÍѤµ¤ì¤ë¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤Ë±þ¤¸¤Æ¡¢\fI\&.DSA\fR¡¢\fI\&.RSA\fR¤Þ¤¿¤Ï\fI\&.EC\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SS "½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×"
+ç½²åファイルã«ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ãŒæ ¼ç´ã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーã«ã¯ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ˜ãƒƒãƒ€ãƒ¼ã®ãƒãƒƒã‚·ãƒ¥ã‚‚å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹ã¨ã€æ¤œè¨¼ã®æœ€é©åŒ–ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚JARファイルã®æ¤œè¨¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+ç½²åブロック・ファイル.PP
+\fI\&.SF\fRファイルã«ã¯ç½²åãŒä»˜ã‘られã€ç½²åã¯ç½²åブロック・ファイルã«ç½®ã‹ã‚Œã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ç½²åã«ä½¿ç”¨ã•ã‚ŒãŸç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚‚ã€å†…部ã§ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ファイルã®æ‹¡å¼µå­ã¯ã€ä½¿ç”¨ã•ã‚Œã‚‹ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«å¿œã˜ã¦ã€\fI\&.DSA\fRã€\fI\&.RSA\fRã¾ãŸã¯\fI\&.EC\fRã«ãªã‚Šã¾ã™ã€‚
+.SS "ç½²åタイムスタンプ"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤ª¤è¤ÓÊݸ¤Ç¤­¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIjarsigner\fR¤ÏÂåÂؽð̾µ¡¹½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¤³¤ÎÆ°ºî¤Ï¾Êά²Äǽ¤Ç¡¢½ð̾»þ¤Ë¼¡¤Î³Æ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ©¸æ¤µ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjarsigner\fRコマンドã§ã¯ã€JARファイルã®ç½²å時ã«ç½²åタイムスタンプを生æˆãŠã‚ˆã³ä¿å­˜ã§ãã¾ã™ã€‚ã•ã‚‰ã«ã€\fIjarsigner\fRã¯ä»£æ›¿ç½²å機構をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ã“ã®å‹•ä½œã¯çœç•¥å¯èƒ½ã§ã€ç½²å時ã«æ¬¡ã®å„オプションã«ã‚ˆã£ã¦åˆ¶å¾¡ã•ã‚Œã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -397,9 +397,9 @@
 .if n \{\
 .RE
 .\}
-.SS "JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú"
+.SS "JARファイルã®æ¤œè¨¼"
 .PP
-JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤¬À®¸ù¤¹¤ë¤Î¤Ï¡¢½ð̾¤¬Í­¸ú¤Ç¤¢¤ê¡¢¤«¤Ä½ð̾¤ÎÀ¸À®°Ê¹ß¤ËJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ï¡¢¼¡¤Î¼ê½ç¤Ç¹Ô¤ï¤ì¤Þ¤¹¡£
+JARファイルã®æ¤œè¨¼ãŒæˆåŠŸã™ã‚‹ã®ã¯ã€ç½²åãŒæœ‰åŠ¹ã§ã‚ã‚Šã€ã‹ã¤ç½²åã®ç”Ÿæˆä»¥é™ã«JARファイル内ã®ã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚変更ã•ã‚Œã¦ã„ãªã„å ´åˆã§ã™ã€‚JARファイルã®æ¤œè¨¼ã¯ã€æ¬¡ã®æ‰‹é †ã§è¡Œã‚ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -409,9 +409,9 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイルã®ç½²åを検証ã—ã¾ã™ã€‚
 .sp
-¸¡¾Ú¤Ç¤Ï¡¢³Æ½ð̾¥Ö¥í¥Ã¥¯(\fI\&.DSA\fR)¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤¿½ð̾¤¬¡¢¾ÚÌÀ½ñ(¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó)¤â\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë¼¨¤µ¤ì¤ë¸ø³«¸°¤ËÂбþ¤¹¤ëÈëÌ©¸°¤ò»ÈÍѤ·¤ÆÀ¸À®¤µ¤ì¤¿¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤Þ¤¿¡¢½ð̾¤¬Âбþ¤¹¤ë½ð̾(\fI\&.SF\fR)¥Õ¥¡¥¤¥ë¤ÎÍ­¸ú¤Ê½ð̾¤Ç¤¢¤ë¤³¤È¤¬³Îǧ¤µ¤ì¡¢¤½¤ì¤Ë¤è¤ê¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤¬²þ¤¶¤ó¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â³Îǧ¤µ¤ì¤Þ¤¹¡£
+検証ã§ã¯ã€å„ç½²åブロック(\fI\&.DSA\fR)ファイルã«æ ¼ç´ã•ã‚ŒãŸç½²åãŒã€è¨¼æ˜Žæ›¸(ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³)ã‚‚\fI\&.DSA\fRファイルã«ç¤ºã•ã‚Œã‚‹å…¬é–‹éµã«å¯¾å¿œã™ã‚‹ç§˜å¯†éµã‚’使用ã—ã¦ç”Ÿæˆã•ã‚ŒãŸã“ã¨ã‚’確èªã—ã¾ã™ã€‚ã¾ãŸã€ç½²åãŒå¯¾å¿œã™ã‚‹ç½²å(\fI\&.SF\fR)ファイルã®æœ‰åŠ¹ãªç½²åã§ã‚ã‚‹ã“ã¨ãŒç¢ºèªã•ã‚Œã€ãã‚Œã«ã‚ˆã‚Šã€\fI\&.SF\fRファイルãŒæ”¹ã–ã‚“ã•ã‚Œã¦ã„ãªã„ã“ã¨ã‚‚確èªã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -422,13 +422,13 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥¨¥ó¥È¥ê¤Ë¼¨¤µ¤ì¤ë¥À¥¤¥¸¥§¥¹¥È¤ò¡¢¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤ÎÂбþ¤¹¤ë³Æ¥»¥¯¥·¥ç¥ó¤ÈÆͤ­¤¢¤ï¤»¤Æ¸¡¾Ú¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイル内ã®å„エントリã«ç¤ºã•ã‚Œã‚‹ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã‚’ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã®å¯¾å¿œã™ã‚‹å„セクションã¨çªãã‚ã‚ã›ã¦æ¤œè¨¼ã—ã¾ã™ã€‚
 .sp
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥ工夬³ÊǼ¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤¬¥Ç¥Õ¥©¥ë¥È¤Ç´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ç¤Ï¡¢¥Ø¥Ã¥À¡¼Æâ¤Î¥Ï¥Ã¥·¥å¤¬¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£°ìÃפ¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ï¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£
+\fI\&.SF\fRファイルã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ãŒæ ¼ç´ã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹å ´åˆã€æ¤œè¨¼ã§ã¯ã€ãƒ˜ãƒƒãƒ€ãƒ¼å†…ã®ãƒãƒƒã‚·ãƒ¥ãŒãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚一致ã™ã‚‹å ´åˆã€æ¤œè¨¼ã¯æ¬¡ã®æ‰‹é †ã«é€²ã¿ã¾ã™ã€‚
 .sp
-°ìÃפ·¤Ê¤¤¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¡¢¤¢¤Þ¤êºÇŬ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¸¡¾Ú¤¬É¬Íפˤʤê¤Þ¤¹¡£½ð̾¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+一致ã—ãªã„å ´åˆã€\fI\&.SF\fRファイル内ã®å„ソース・ファイル情報セクションã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã™ã‚‹ãŸã‚ã«ã€ã‚ã¾ã‚Šæœ€é©åŒ–ã•ã‚Œã¦ã„ãªã„検証ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚ç½²åファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À¡¼¤Ë³ÊǼ¤µ¤ì¤¿¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤¬¡¢¸½ºß¤Î¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤Ë°ìÃפ·¤Ê¤¤Íýͳ¤Î1¤Ä¤Ï¡¢½ð̾¤ª¤è¤Ó\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¸å¤Ë¡¢(\fIjar\fR¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ)1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ë¤ËÄɲ䵤줿¤³¤È¤Ç¤¹¡£\fIjar\fR¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¥Õ¥¡¥¤¥ë¤òÄɲä·¤¿¾ì¹ç¡¢¿·¤·¤¤¥Õ¥¡¥¤¥ëÍѤΥ»¥¯¥·¥ç¥ó¤¬Äɲ䵤ì¤ë¤³¤È¤Ë¤è¤ê¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤¹¤¬¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤»¤ó¡£¸¡¾Ú¤¬¤Þ¤ÀÀ®¸ù¤·¤Æ¤¤¤ë¤È¤ß¤Ê¤µ¤ì¤ë¤Î¤Ï¡¢½ð̾¤ÎÀ¸À®°Ê¹ß¤ËJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¹¡£¤³¤ì¤¬È¯À¸¤¹¤ë¤Î¤Ï¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À¡¼°Ê³°¤Î¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¾ì¹ç¤Ç¤¹¡£
+\fI\&.SF\fRファイルã®ãƒ˜ãƒƒãƒ€ãƒ¼ã«æ ¼ç´ã•ã‚ŒãŸãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ãŒã€ç¾åœ¨ã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒãƒƒã‚·ãƒ¥ã«ä¸€è‡´ã—ãªã„ç†ç”±ã®1ã¤ã¯ã€ç½²åãŠã‚ˆã³\fI\&.SF\fRファイルã®ç”Ÿæˆå¾Œã«ã€(\fIjar\fRツールを使用ã—ã¦)1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒJARファイルã«è¿½åŠ ã•ã‚ŒãŸã“ã¨ã§ã™ã€‚\fIjar\fRツールを使用ã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚’追加ã—ãŸå ´åˆã€æ–°ã—ã„ファイル用ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãŒè¿½åŠ ã•ã‚Œã‚‹ã“ã¨ã«ã‚ˆã‚Šã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯å¤‰æ›´ã•ã‚Œã¾ã™ãŒã€\fI\&.SF\fRファイルã¯å¤‰æ›´ã•ã‚Œã¾ã›ã‚“。検証ãŒã¾ã æˆåŠŸã—ã¦ã„ã‚‹ã¨ã¿ãªã•ã‚Œã‚‹ã®ã¯ã€ç½²åã®ç”Ÿæˆä»¥é™ã«JARファイル内ã®ã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚変更ã•ã‚Œã¦ã„ãªã„å ´åˆã§ã™ã€‚ã“ã‚ŒãŒç™ºç”Ÿã™ã‚‹ã®ã¯ã€\fI\&.SF\fRファイルã®ãƒ˜ãƒƒãƒ€ãƒ¼ä»¥å¤–ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹å ´åˆã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -439,16 +439,16 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Ë¥¨¥ó¥È¥ê¤ò»ý¤ÄJAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¤Þ¤¹¡£Æɼè¤êÃæ¤Ë¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ò·×»»¤·¡¢·ë²Ì¤ò¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥»¥¯¥·¥ç¥óÆâ¤Î¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ÈÈæ³Ó¤·¤Þ¤¹¡£¥À¥¤¥¸¥§¥¹¥È¤ÏƱ¤¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¡¢¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¸¡¾Ú¤¬¼ºÇÔ¤·¤Þ¤¹¡£
+\fI\&.SF\fRファイル内ã«ã‚¨ãƒ³ãƒˆãƒªã‚’æŒã¤JARファイル内ã®å„ファイルを読ã¿å–ã‚Šã¾ã™ã€‚読å–り中ã«ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã‚’計算ã—ã€çµæžœã‚’マニフェスト・セクション内ã®ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã¨æ¯”較ã—ã¾ã™ã€‚ダイジェストã¯åŒã˜ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã€ãã†ã§ãªã„å ´åˆã¯æ¤œè¨¼ãŒå¤±æ•—ã—ã¾ã™ã€‚
 .sp
-¸¡¾Ú¥×¥í¥»¥¹Ãæ¤Ë¤Ê¤ó¤é¤«¤Î½ÅÂç¤Ê¸¡¾Ú¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¤½¤Î¥×¥í¥»¥¹¤ÏÄä»ß¤µ¤ì¡¢¥»¥­¥å¥ê¥Æ¥£Îã³°¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Îã³°¤òÊ᪤ª¤è¤Óɽ¼¨¤·¤Þ¤¹¡£
+検証プロセス中ã«ãªã‚“らã‹ã®é‡å¤§ãªæ¤œè¨¼ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãã®ãƒ—ロセスã¯åœæ­¢ã•ã‚Œã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚\fIjarsigner\fRコマンドã§ã¯ã€ä¾‹å¤–ã‚’æ•æ‰ãŠã‚ˆã³è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
-\fBÃí°Õ:\fR
-Äɲäηٹð(¤Þ¤¿¤Ï¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¥¨¥é¡¼)¤Ï¤¹¤Ù¤ÆÆɤàɬÍפ¬¤¢¤ê¤Þ¤¹¡£Æ±Íͤˡ¢¾ÚÌÀ¤¬¿®Íê¤Ç¤­¤ë¤«¤ò·èÄꤹ¤ë¤¿¤á¤Ë¡¢(\fI\-verbose\fR¤ª¤è¤Ó\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ)¾ÚÌÀ½ñ¤ÎÆâÍƤâÆɤàɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SS "1¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤òÂоݤȤ¹¤ëÊ£¿ô¤Î½ð̾"
+\fB注æ„:\fR
+追加ã®è­¦å‘Š(ã¾ãŸã¯ã€\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã¯ã‚¨ãƒ©ãƒ¼)ã¯ã™ã¹ã¦èª­ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åŒæ§˜ã«ã€è¨¼æ˜ŽãŒä¿¡é ¼ã§ãã‚‹ã‹ã‚’決定ã™ã‚‹ãŸã‚ã«ã€(\fI\-verbose\fRãŠã‚ˆã³\fI\-certs\fRオプションを指定ã—ã¦)証明書ã®å†…容も読む必è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "1ã¤ã®JARファイルを対象ã¨ã™ã‚‹è¤‡æ•°ã®ç½²å"
 .PP
-¼¡¤Î¤è¤¦¤Ë¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò¥Õ¥¡¥¤¥ë¤ÇÊ£¿ô²ó¼Â¹Ô¤·¡¢¼Â¹Ô¤Î¤¿¤Ó¤Ë°Û¤Ê¤ë¥æ¡¼¥¶¡¼¤ÎÊÌ̾¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢1¤Ä¤ÎJAR¥Õ¥¡¥¤¥ë¤ËÊ£¿ô¤Î¥æ¡¼¥¶¡¼¤Î½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIjarsigner\fRコマンドをファイルã§è¤‡æ•°å›žå®Ÿè¡Œã—ã€å®Ÿè¡Œã®ãŸã³ã«ç•°ãªã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®åˆ¥åを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€1ã¤ã®JARファイルã«è¤‡æ•°ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ç½²åを付ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -461,7 +461,7 @@
 .RE
 .\}
 .PP
-JAR¥Õ¥¡¥¤¥ë¤¬Ê£¿ô²ó½ð̾¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Ê£¿ô¤Î\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢1²ó¤Î½ð̾¤ËÂФ·¤Æ1¤Ä¤Î¥Ú¥¢¤È¤Ê¤ê¤Þ¤¹¡£Á°½Ò¤ÎÎã¤Ç¤Ï¡¢½ÐÎÏJAR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î̾Á°¤Î¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+JARファイルãŒè¤‡æ•°å›žç½²åã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãã®JARファイルã«ã¯ã€è¤‡æ•°ã®\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルãŒå«ã¾ã‚Œã¦ãŠã‚Šã€1回ã®ç½²åã«å¯¾ã—ã¦1ã¤ã®ãƒšã‚¢ã¨ãªã‚Šã¾ã™ã€‚å‰è¿°ã®ä¾‹ã§ã¯ã€å‡ºåŠ›JARファイルã«ã¯ã€æ¬¡ã®åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -475,9 +475,9 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î³Æ¹à¤Ç¤Ï¡¢ÍÍ¡¹¤Ê\fIjarsigner\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¼¡¤Îɸ½à¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®å„é …ã§ã¯ã€æ§˜ã€…ãª\fIjarsigner\fRオプションã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚次ã®æ¨™æº–ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -487,7 +487,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤É¤Î¥ª¥×¥·¥ç¥ó̾¤Ë¤âÀèƬ¤Ë¥Þ¥¤¥Ê¥¹µ­¹æ(\-)¤¬ÉÕ¤­¤Þ¤¹¡£
+ã©ã®ã‚ªãƒ—ションåã«ã‚‚先頭ã«ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\-)ãŒä»˜ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -498,7 +498,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+オプションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -509,7 +509,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤޤ¿¤Ï²¼ÀþÉÕ¤­¤Î¹àÌÜ(¥ª¥×¥·¥ç¥ó¤ÎÃÍ)¤Î¼ÂºÝ¤ÎÃͤϡ¢»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+イタリック体ã¾ãŸã¯ä¸‹ç·šä»˜ãã®é …ç›®(オプションã®å€¤)ã®å®Ÿéš›ã®å€¤ã¯ã€æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -520,18 +520,18 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-storepass\fR¡¢\fI\-keypass\fR¡¢\fI\-sigfile\fR¡¢\fI\-sigalg\fR¡¢\fI\-digestalg\fR¡¢\fI\-signedjar\fR¤ª¤è¤ÓTSA´ØÏ¢¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¾ì¹ç¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fI\-keystore \fR¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ª¤è¤Ó¸¡¾Ú¤Ë´ØÏ¢¤·¤Þ¤¹¡£¤Þ¤¿¡¢ÊÌ̾¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤ª¤è¤Ó¸¡¾Ú»þ¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fI\-storepass\fRã€\fI\-keypass\fRã€\fI\-sigfile\fRã€\fI\-sigalg\fRã€\fI\-digestalg\fRã€\fI\-signedjar\fRãŠã‚ˆã³TSA関連ã®ã‚ªãƒ—ションを使用ã§ãã‚‹ã®ã¯ã€JARファイルã«ç½²åã™ã‚‹å ´åˆã®ã¿ã§ã™ã€‚ç½²å付ãJARファイルを検証ã™ã‚‹å ´åˆã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fI\-keystore \fRオプションã¯ã€JARファイルã®ç½²åãŠã‚ˆã³æ¤œè¨¼ã«é–¢é€£ã—ã¾ã™ã€‚ã¾ãŸã€åˆ¥åã¯ã€JARファイルã®ç½²åãŠã‚ˆã³æ¤œè¨¼æ™‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-keystore \fIurl\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò¼¨¤¹URL¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIuser\&.home\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç·èÄꤵ¤ì¤¿¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¥Õ¥¡¥¤¥ë\fI\&.keystore\fR¤Ë¥Ç¥Õ¥©¥ë¥ÈÀßÄꤵ¤ì¤Þ¤¹¡£
+キーストアã®å ´æ‰€ã‚’示ã™URLを指定ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIuser\&.home\fRシステム・プロパティã§æ±ºå®šã•ã‚ŒãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ãƒ•ã‚¡ã‚¤ãƒ«\fI\&.keystore\fRã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã•ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Ï½ð̾»þ¤Ë¤ÏɬÍפǤ¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã¯ç½²å時ã«ã¯å¿…è¦ã§ã™ã€‚デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒå­˜åœ¨ã—ãªã„å ´åˆã€ã¾ãŸã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’使用ã™ã‚‹å ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’明示的ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¸¡¾Ú¤¹¤ë¤È¤­¤Ï¥­¡¼¥¹¥È¥¢¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥­¡¼¥¹¥È¥¢¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤«¡¢¤¢¤ë¤¤¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß¤·¤Æ¤¤¤Æ¡¢¤µ¤é¤Ë\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬¤½¤Î¥­¡¼¥¹¥È¥¢¤Ë1¤Ä¤Ç¤â´Þ¤Þ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë´Ø¤¹¤ëÄɲþðÊ󤬽ÐÎϤµ¤ì¤Þ¤¹¡£
+検証ã™ã‚‹ã¨ãã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¯å¿…è¦ã‚ã‚Šã¾ã›ã‚“。ãŸã ã—ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒå­˜åœ¨ã—ã¦ã„ã¦ã€ã•ã‚‰ã«\fI\-verbose\fRオプションも指定ã•ã‚Œã¦ã„ãŸå ´åˆã€JARファイルã®æ¤œè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒãã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«1ã¤ã§ã‚‚å«ã¾ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«é–¢ã™ã‚‹è¿½åŠ æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-keystore\fR°ú¿ô¤Ë¤Ï¡¢URL¤Ç¤Ï¤Ê¤¯¥Õ¥¡¥¤¥ë̾¤È¥Ñ¥¹¤ò»ØÄê¤Ç¤­¡¢¤³¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë: URL¤ÈƱ¤¸¤è¤¦¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Ë¤è¤¦¤Ë»ØÄꤹ¤ë¤ÈƱÅù¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI\-keystore\fR引数ã«ã¯ã€URLã§ã¯ãªãファイルåã¨ãƒ‘スを指定ã§ãã€ã“ã®å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«: URLã¨åŒã˜ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã«ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨åŒç­‰ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -543,8 +543,8 @@
 .if n \{\
 .RE
 .\}
-(JRE¤Î\fI$JAVA_HOME/lib/security directory\fR¤Ë¤¢¤ë)
-\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤ÇSun PKCS #11¥×¥í¥Ð¥¤¥À¤¬¹½À®¤µ¤ì¤¿¾ì¹ç¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥Ä¡¼¥ë¤ÏPKCS#11¥È¡¼¥¯¥ó¤Ë´ð¤Å¤¤¤ÆÆ°ºî¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+(JREã®\fI$JAVA_HOME/lib/security directory\fRã«ã‚ã‚‹)
+\fIjava\&.security\fRセキュリティ・プロパティ・ファイル内ã§Sun PKCS #11プロãƒã‚¤ãƒ€ãŒæ§‹æˆã•ã‚ŒãŸå ´åˆã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRツールã¯PKCS#11トークンã«åŸºã¥ã„ã¦å‹•ä½œã§ãã¾ã™ã€‚次ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -556,7 +556,7 @@
 .if n \{\
 .RE
 .\}
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¹½À®¤µ¤ì¤¿PKCS#11¥È¡¼¥¯¥ó¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ§‹æˆã•ã‚ŒãŸPKCS#11トークンã®å†…容を一覧表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -571,17 +571,17 @@
 .PP
 \-storetype \fIstoretype\fR
 .RS 4
-¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤǻØÄꤵ¤ì¤¿¥¿¥¤¥×¤Ç¤¹¡£¤³¤ÎÃͤϡ¢\fIjava\&.security\&.KeyStore\fR¤Îstatic
-\fIgetDefaultType\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤Þ¤¹¡£
+インスタンスを生æˆã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®\fIkeystore\&.type\fRプロパティã®å€¤ã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—ã§ã™ã€‚ã“ã®å€¤ã¯ã€\fIjava\&.security\&.KeyStore\fRã®static
+\fIgetDefaultType\fRメソッドã«ã‚ˆã£ã¦è¿”ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢PCKS #11¥È¡¼¥¯¥ó¤ÎPIN¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£²¿¤â»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢¥È¡¼¥¯¥óPIN¤Î»ØÄê¤òµá¤á¤é¤ì¤Þ¤¹¡£¥È¡¼¥¯¥ó¤ËÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹(ÀìÍѤÎPIN¥Ñ¥Ã¥É¤äÀ¸ÂÎÆɼè¤êµ¡¤Ê¤É)¤¬¤¢¤ë¾ì¹ç¡¢\fI\-protected\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¥Ñ¥¹¥ï¡¼¥É¡¦¥ª¥×¥·¥ç¥ó¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£
+\fI\-storepass\fRオプションを使用ã—ã¦ã€PCKS #11トークンã®PINを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚何も指定ã—ãªã„å ´åˆã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRコマンドã«ã‚ˆã£ã¦ã€ãƒˆãƒ¼ã‚¯ãƒ³PINã®æŒ‡å®šã‚’求ã‚られã¾ã™ã€‚トークンã«ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘ス(専用ã®PINパッドや生体読å–ã‚Šæ©Ÿãªã©)ãŒã‚ã‚‹å ´åˆã€\fI\-protected\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãƒ‘スワード・オプションã¯æŒ‡å®šã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-storepass[:env | :file] \fIargument\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Î¤ËɬÍפʥѥ¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤¬É¬ÍפʤΤϡ¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Î¤ß¤Ç¤¹(¸¡¾Ú¤¹¤ë¤È¤­¤Ë¤ÏÉÔÍפǤ¹)¡£¤½¤Î¾ì¹ç¡¢\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤¤¤È¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+キーストアã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã®ã«å¿…è¦ãªãƒ‘スワードを指定ã—ã¾ã™ã€‚ã“ã‚ŒãŒå¿…è¦ãªã®ã¯ã€JARファイルã«ç½²åを付ã‘ã‚‹ã¨ãã®ã¿ã§ã™(検証ã™ã‚‹ã¨ãã«ã¯ä¸è¦ã§ã™)。ãã®å ´åˆã€\fI\-storepass\fRオプションをコマンドラインã§æŒ‡å®šã—ãªã„ã¨ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -592,7 +592,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -604,18 +604,18 @@
 .IP \(bu 2.3
 .\}
 \fIfile\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¤Þ¤¿¤Ï¥»¥­¥å¥ê¥Æ¥£Êݸ¤ì¤¿¥·¥¹¥Æ¥à¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+テストを目的ã¨ã™ã‚‹å ´åˆã¾ãŸã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¿è­·ã•ã‚ŒãŸã‚·ã‚¹ãƒ†ãƒ ã‚’使用ã—ã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-keypass [:env | :file] \fIargument\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ËÂбþ¤¹¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤òÊݸ¤ë¤Î¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£\fIjarsigner\fR¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Æ¤ª¤é¤º¡¢É¬Íפʥѥ¹¥ï¡¼¥É¤¬¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã«å¯¾å¿œã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚\fIjarsigner\fRを使用ã—ã¦JARファイルã«ç½²åを付ã‘ã‚‹ã¨ãã¯ã€ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚コマンドラインã§ãƒ‘スワードãŒæŒ‡å®šã•ã‚Œã¦ãŠã‚‰ãšã€å¿…è¦ãªãƒ‘スワードãŒã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -626,7 +626,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -638,84 +638,84 @@
 .IP \(bu 2.3
 .\}
 \fIfile\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¤Þ¤¿¤Ï¥»¥­¥å¥ê¥Æ¥£Êݸ¤ì¤¿¥·¥¹¥Æ¥à¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+テストを目的ã¨ã™ã‚‹å ´åˆã¾ãŸã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¿è­·ã•ã‚ŒãŸã‚·ã‚¹ãƒ†ãƒ ã‚’使用ã—ã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-sigfile \fIfile\fR
 .RS 4
-À¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë»ÈÍѤ¹¤ë¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Õ¥¡¥¤¥ë¤¬\fIDUKESIGN\fR¤Î¾ì¹ç¡¢À¸À®¤µ¤ì¤ë\fI\&.SF\fR¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ï¡¢\fIDUKESIGN\&.SF\fR¤ª¤è¤Ó\fIDUKESIGN\&.DSA\fR¤È¤¤¤¦Ì¾Á°¤Ç¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î\fIMETA\-INF\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸ\fI\&.SF\fRファイルãŠã‚ˆã³\fI\&.DSA\fRファイルã«ä½¿ç”¨ã™ã‚‹ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIDUKESIGN\fRã®å ´åˆã€ç”Ÿæˆã•ã‚Œã‚‹\fI\&.SF\fRãŠã‚ˆã³\fI\&.DSA\fRファイルã¯ã€\fIDUKESIGN\&.SF\fRãŠã‚ˆã³\fIDUKESIGN\&.DSA\fRã¨ã„ã†åå‰ã§ã€ç½²å付ãJARファイルã®\fIMETA\-INF\fRディレクトリã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Õ¥¡¥¤¥ëÆâ¤Îʸ»ú¤Ï¡¢¥»¥Ã¥È\fIa\-zA\-Z0\-9_\-\fR¤«¤é»ØÄꤵ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢¿ô»ú¡¢²¼Àþ¤ª¤è¤Ó¥Ï¥¤¥Õ¥óʸ»ú¤Î¤ß¤ò»ÈÍѤǤ­¤Þ¤¹¡£\fI\&.SF\fR¤ª¤è¤Ó\fI\&.DSA\fR¤Î¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¡¢¾®Ê¸»ú¤Ï¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
+ファイル内ã®æ–‡å­—ã¯ã€ã‚»ãƒƒãƒˆ\fIa\-zA\-Z0\-9_\-\fRã‹ã‚‰æŒ‡å®šã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚アルファベットã€æ•°å­—ã€ä¸‹ç·šãŠã‚ˆã³ãƒã‚¤ãƒ•ãƒ³æ–‡å­—ã®ã¿ã‚’使用ã§ãã¾ã™ã€‚\fI\&.SF\fRãŠã‚ˆã³\fI\&.DSA\fRã®ãƒ•ã‚¡ã‚¤ãƒ«åã§ã¯ã€å°æ–‡å­—ã¯ã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sigfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤È\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î8ʸ»ú¤ò¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬8ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬¤½¤Î¤Þ¤Þ»ÈÍѤµ¤ì¤Þ¤¹¡£ÊÌ̾¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ç̵¸ú¤Êʸ»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾¤òºîÀ®¤¹¤ë¤¿¤á¤Ë¡¢³ºÅö¤¹¤ëʸ»ú¤¬²¼Àþ(_)ʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-sigfile\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã€\fI\&.SF\fRファイルã¨\fI\&.DSA\fRファイルã®ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸåˆ¥åã®å…ˆé ­ã®8文字をã™ã¹ã¦å¤§æ–‡å­—ã«å¤‰æ›ã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚別åãŒ8文字未満ã®å ´åˆã¯ã€åˆ¥åãŒãã®ã¾ã¾ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚別åã«ã€ç½²åファイルåã§ç„¡åŠ¹ãªæ–‡å­—ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«åを作æˆã™ã‚‹ãŸã‚ã«ã€è©²å½“ã™ã‚‹æ–‡å­—ãŒä¸‹ç·š(_)文字ã«å¤‰æ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-sigalg \fIalgorithm\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ë½ð̾¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç½²åアルゴリズムã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ɸ½àŪ¤Ê½ð̾¥¢¥ë¥´¥ê¥º¥à̾¤Î¥ê¥¹¥È¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Ë¤¢¤ë
-Java Cryptography Architecture (JCA)¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖÉÕÏ¿A: ɸ½à̾¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+標準的ãªç½²åアルゴリズムåã®ãƒªã‚¹ãƒˆã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã«ã‚ã‚‹
+Java Cryptography Architecture (JCA)リファレンス・ガイドã®ã€Œä»˜éŒ²A: 標準åã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ëÈëÌ©¸°¤È¤Î¸ß´¹À­¤¬É¬ÍפǤ¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢ÈëÌ©¸°¤Î¥¿¥¤¥×¤Ë±þ¤¸¤Æ¡¢\fISHA1withDSA\fR¡¢\fISHA256withRSA\fR¤Þ¤¿¤Ï\fISHA256withECDSA\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò¥æ¡¼¥¶¡¼¤¬»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¼ºÇÔ¤·¤Þ¤¹¡£
+ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«ã¯ã€JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹ç§˜å¯†éµã¨ã®äº’æ›æ€§ãŒå¿…è¦ã§ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€ç§˜å¯†éµã®ã‚¿ã‚¤ãƒ—ã«å¿œã˜ã¦ã€\fISHA1withDSA\fRã€\fISHA256withRSA\fRã¾ãŸã¯\fISHA256withECDSA\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãŒé™çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fI\-providerClass\fRオプションを使用ã—ã¦ãã®ã‚ˆã†ãªãƒ—ロãƒã‚¤ãƒ€ã‚’ユーザーãŒæŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤±æ•—ã—ã¾ã™ã€‚
 .RE
 .PP
 \-digestalg \fIalgorithm\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤ò¥À¥¤¥¸¥§¥¹¥È¤¹¤ëºÝ¤Ë»ÈÍѤ¹¤ë¥á¥Ã¥»¡¼¥¸¡¦¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+JARファイルã®ã‚¨ãƒ³ãƒˆãƒªã‚’ダイジェストã™ã‚‹éš›ã«ä½¿ç”¨ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ»ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ɸ½àŪ¤Ê¥á¥Ã¥»¡¼¥¸¡¦¥À¥¤¥¸¥§¥¹¥È¡¦¥¢¥ë¥´¥ê¥º¥à̾¤Î¥ê¥¹¥È¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Ë¤¢¤ë
-Java Cryptography Architecture (JCA)¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥¬¥¤¥É¤Î¡ÖÉÕÏ¿A: ɸ½à̾¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+標準的ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒ»ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆãƒ»ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ åã®ãƒªã‚¹ãƒˆã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã«ã‚ã‚‹
+Java Cryptography Architecture (JCA)リファレンス・ガイドã®ã€Œä»˜éŒ²A: 標準åã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fISHA256\fR¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò¥æ¡¼¥¶¡¼¤¬»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¼ºÇÔ¤·¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€\fISHA256\fRãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚指定ã•ã‚ŒãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãŒé™çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fI\-providerClass\fRオプションを使用ã—ã¦ãã®ã‚ˆã†ãªãƒ—ロãƒã‚¤ãƒ€ã‚’ユーザーãŒæŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤±æ•—ã—ã¾ã™ã€‚
 .RE
 .PP
 \-certs
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò\fI\-verify\fR¤ª¤è¤Ó\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊ󤬽ÐÎϤ˴ޤޤì¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ë¤Ï¡¢½ð̾¼Ô¤Î¸ø³«¸°¤ò¾ÚÌÀ¤¹¤ë¾ÚÌÀ½ñ(\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ)¤Î¥¿¥¤¥×¤Î̾Á°¤¬´Þ¤Þ¤ì¡¢¾ÚÌÀ½ñ¤¬X\&.509¾ÚÌÀ½ñ(\fIjava\&.security\&.cert\&.X509Certificate\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹)¤Î¾ì¹ç¡¢½ð̾¼Ô¤Î¼±ÊÌ̾¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+コマンドラインã§ã€\fI\-certs\fRオプションを\fI\-verify\fRãŠã‚ˆã³\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«æŒ‡å®šã—ãŸå ´åˆã€JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…å ±ãŒå‡ºåŠ›ã«å«ã¾ã‚Œã¾ã™ã€‚ã“ã®æƒ…å ±ã«ã¯ã€ç½²å者ã®å…¬é–‹éµã‚’証明ã™ã‚‹è¨¼æ˜Žæ›¸(\fI\&.DSA\fRファイルã«æ ¼ç´)ã®ã‚¿ã‚¤ãƒ—ã®åå‰ãŒå«ã¾ã‚Œã€è¨¼æ˜Žæ›¸ãŒX\&.509証明書(\fIjava\&.security\&.cert\&.X509Certificate\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹)ã®å ´åˆã€ç½²å者ã®è­˜åˆ¥åãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Î³Îǧ¤â¹Ô¤ï¤ì¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤ÎÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë(¤¢¤ë¾ì¹ç)¤¬¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£½ð̾¼Ô¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢Æâ¤Î¥¨¥ó¥È¥ê¤È°ìÃפ¹¤ë¾ì¹ç¡¢¤½¤Î½ð̾¼Ô¤Î¥­¡¼¥¹¥È¥¢¤Î¥¨¥ó¥È¥ê¤ÎÊÌ̾¤¬´Ý¥«¥Ã¥³Æâ¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+キーストアã®ç¢ºèªã‚‚è¡Œã‚ã‚Œã¾ã™ã€‚コマンドラインã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å€¤ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(ã‚ã‚‹å ´åˆ)ãŒãƒã‚§ãƒƒã‚¯ã•ã‚Œã¾ã™ã€‚ç½²å者ã®å…¬é–‹éµã®è¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã‚¨ãƒ³ãƒˆãƒªã¨ä¸€è‡´ã™ã‚‹å ´åˆã€ãã®ç½²å者ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åãŒä¸¸ã‚«ãƒƒã‚³å†…ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-certchain \fIfile\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤¿ÊÌ̾¤Ë¤è¤Ã¤Æɽ¤µ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬´°Á´¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ë¡¢»ÈÍѤ¹¤ë¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥óÁ´ÂΤòÊÝ»ý¤¹¤ë¤Î¤Ë½½Ê¬¤ÊÎΰ褬¤Ê¤¤¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¾å¤Ë¥­¡¼¥¹¥È¥¢¤¬³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï°ìÏ¢¤ÎÏ¢·ë¤µ¤ì¤¿X\&.509¾ÚÌÀ½ñ¡¢PKCS#7·Á¼°¤Îñ°ì¥Ç¡¼¥¿¡¦¥Ö¥í¥Ã¥¯¤Î¤¤¤º¤ì¤«¤È¤Ê¤ê¡¢¤½¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°¤Ï¥Ð¥¤¥Ê¥ê¡¦¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°¡¢Internet RFC 1421ɸ½à¤Çµ¬Äꤵ¤ì¤ë°õºþ²Äǽ¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°·Á¼°(Base64¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤È¤â¸Æ¤Ð¤ì¤ë)¤Î¤¤¤º¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ª¤è¤Óhttp://tools\&.ietf\&.org/html/rfc1421¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドラインã§æŒ‡å®šã—ãŸåˆ¥åã«ã‚ˆã£ã¦è¡¨ã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ãŒå®Œå…¨ã§ã¯ãªã„å ´åˆã«ã€ä½¿ç”¨ã™ã‚‹è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’指定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³å…¨ä½“ã‚’ä¿æŒã™ã‚‹ã®ã«å分ãªé ˜åŸŸãŒãªã„ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ä¸Šã«ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒæ ¼ç´ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ä¸€é€£ã®é€£çµã•ã‚ŒãŸX\&.509証明書ã€PKCS#7å½¢å¼ã®å˜ä¸€ãƒ‡ãƒ¼ã‚¿ãƒ»ãƒ–ロックã®ã„ãšã‚Œã‹ã¨ãªã‚Šã€ãã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼ã¯ãƒã‚¤ãƒŠãƒªãƒ»ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼ã€Internet RFC 1421標準ã§è¦å®šã•ã‚Œã‚‹å°åˆ·å¯èƒ½ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å½¢å¼(Base64エンコーディングã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ã„ãšã‚Œã‹ã«ãªã‚Šã¾ã™ã€‚インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ãŠã‚ˆã³http://tools\&.ietf\&.org/html/rfc1421ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¾éĹ¥â¡¼¥É¤ÇÆ°ºî¤·¡¢¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢\fIjarsigner\fR¤Ï¡¢JAR¤Î½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤Î¿Ê¹Ô¾õ¶·¤Ë´Ø¤¹¤ëÄɲþðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンドラインã§\fI\-verbose\fRオプションを指定ã—ãŸå ´åˆã€å†—長モードã§å‹•ä½œã—ã€ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€\fIjarsigner\fRã¯ã€JARã®ç½²åã¾ãŸã¯æ¤œè¨¼ã®é€²è¡ŒçŠ¶æ³ã«é–¢ã™ã‚‹è¿½åŠ æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-internalsf
 .RS 4
-°ÊÁ°¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤¿\fI\&.DSA\fR
-(½ð̾¥Ö¥í¥Ã¥¯)¥Õ¥¡¥¤¥ë¤Ë¡¢À¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë(½ð̾¥Õ¥¡¥¤¥ë)¤Î¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿´°Á´¤Ê¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤·¤¿¡£ ¤³¤ÎÆ°ºî¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿¡£½ÐÎÏJAR¥Õ¥¡¥¤¥ëÁ´ÂΤΥµ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë¤¿¤á¤Ë¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-internalsf\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢°ÊÁ°¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Æ¥¹¥È¤ò¹Ô¤¦¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¼ÂºÝ¤Ë¤Ï¡¢\fI\-internalsf\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤¬Â礭¤¯¤Ê¤ë¤¿¤á¡¢»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+以å‰ã¯ã€JARファイルã®ç½²å時ã«ç”Ÿæˆã•ã‚ŒãŸ\fI\&.DSA\fR
+(ç½²åブロック)ファイルã«ã€ç”Ÿæˆã•ã‚ŒãŸ\fI\&.SF\fRファイル(ç½²åファイル)ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸå®Œå…¨ãªã‚³ãƒ”ーãŒå«ã¾ã‚Œã¦ã„ã¾ã—ãŸã€‚ ã“ã®å‹•ä½œã¯å¤‰æ›´ã•ã‚Œã¾ã—ãŸã€‚出力JARファイル全体ã®ã‚µã‚¤ã‚ºã‚’å°ã•ãã™ã‚‹ãŸã‚ã«ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fI\&.DSA\fRファイルã«ã¯\fI\&.SF\fRファイルã®ã‚³ãƒ”ーãŒå«ã¾ã‚Œãªã„よã†ã«ãªã£ã¦ã„ã¾ã™ã€‚コマンドラインã§\fI\-internalsf\fRを指定ã—ãŸå ´åˆã€ä»¥å‰ã¨åŒã˜ã‚ˆã†ã«å‹•ä½œã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ†ã‚¹ãƒˆã‚’è¡Œã†å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚実際ã«ã¯ã€\fI\-internalsf\fRオプションã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ãŒå¤§ãããªã‚‹ãŸã‚ã€ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-sectionsonly
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-sectionsonly\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤ë\fI\&.SF\fR¥Õ¥¡¥¤¥ë(½ð̾¥Õ¥¡¥¤¥ë)¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤ò´Þ¤à¥Ø¥Ã¥À¡¼¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë´Þ¤Þ¤ì¤ë¤Î¤Ï¡¢JAR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë´ØÏ¢¤¹¤ë¾ðÊ󤪤è¤Ó¥Ï¥Ã¥·¥å¤Î¤ß¤Ç¤¹¡£½ð̾¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドラインã§\fI\-sectionsonly\fRオプションを指定ã—ãŸå ´åˆã€JARファイルã®ç½²å時ã«ç”Ÿæˆã•ã‚Œã‚‹\fI\&.SF\fRファイル(ç½²åファイル)ã«ã¯ã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ã‚’å«ã‚€ãƒ˜ãƒƒãƒ€ãƒ¼ã¯å«ã¾ã‚Œã¾ã›ã‚“。ã“ã‚Œã«å«ã¾ã‚Œã‚‹ã®ã¯ã€JARファイル内ã®å„ソース・ファイルã«é–¢é€£ã™ã‚‹æƒ…å ±ãŠã‚ˆã³ãƒãƒƒã‚·ãƒ¥ã®ã¿ã§ã™ã€‚ç½²åファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇŬ²½¤Î¤¿¤á¤Ë¡¢¤³¤Î¥Ø¥Ã¥À¡¼¤¬Äɲ䵤ì¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¤¿¤Ó¤Ë¡¢¸¡¾Ú¤Ç¤Ï¡¢¤Þ¤º¥Ø¥Ã¥À¡¼Æâ¤Î¥Ï¥Ã¥·¥å¤¬¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤¹¤ë¤¿¤á¤Ë¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£°ìÃפ¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ï¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£°ìÃפ·¤Ê¤¤¾ì¹ç¡¢\fI\&.SF\fR¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Õ¥¡¥¤¥ëÆâ¤ÎÂбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤È¤¤¤¦¡¢¤¢¤Þ¤êºÇŬ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¸¡¾Ú¤ò¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§ã¯ã€æœ€é©åŒ–ã®ãŸã‚ã«ã€ã“ã®ãƒ˜ãƒƒãƒ€ãƒ¼ãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚ヘッダーãŒå­˜åœ¨ã™ã‚‹å ´åˆã€JARファイルを検証ã™ã‚‹ãŸã³ã«ã€æ¤œè¨¼ã§ã¯ã€ã¾ãšãƒ˜ãƒƒãƒ€ãƒ¼å†…ã®ãƒãƒƒã‚·ãƒ¥ãŒãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å…¨ä½“ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚一致ã™ã‚‹å ´åˆã€æ¤œè¨¼ã¯æ¬¡ã®æ‰‹é †ã«é€²ã¿ã¾ã™ã€‚一致ã—ãªã„å ´åˆã€\fI\&.SF\fRファイル内ã®å„ソース・ファイル情報セクションã®ãƒãƒƒã‚·ãƒ¥ãŒã€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®å¯¾å¿œã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒãƒƒã‚·ãƒ¥ã¨ä¸€è‡´ã™ã‚‹ã¨ã„ã†ã€ã‚ã¾ã‚Šæœ€é©åŒ–ã•ã‚Œã¦ã„ãªã„検証を実行ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚JARファイルã®æ¤œè¨¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-sectionsonly\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¼ç¤Ë¥Æ¥¹¥ÈÍѤ˻ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ¹¤ë¤È¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤¬Â礭¤¯¤Ê¤ë¤¿¤á¡¢¥Æ¥¹¥ÈÍѰʳ°¤Ç¤Ï»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+\fI\-sectionsonly\fRオプションã¯ã€ä¸»ã«ãƒ†ã‚¹ãƒˆç”¨ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ãŒå¤§ãããªã‚‹ãŸã‚ã€ãƒ†ã‚¹ãƒˆç”¨ä»¥å¤–ã§ã¯ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-protected
 .RS 4
-\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¤Î¤¤¤º¤ì¤«¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£ÀìÍÑPIN¥ê¡¼¥À¡¼¤Ê¤É¤ÎÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹¤Ë¤è¤Ã¤Æ¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢\fItrue\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fItrue\fRã¾ãŸã¯\fIfalse\fRã®ã„ãšã‚Œã‹ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚専用PINリーダーãªã©ã®ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘スã«ã‚ˆã£ã¦ãƒ‘スワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€\fItrue\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-providerClass \fIprovider\-class\-name\fR
 .RS 4
-°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¤¬\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¡¢¤½¤Î¥Þ¥¹¥¿¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤹ¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€ãŒ\fIjava\&.security\fRセキュリティ・プロパティ・ファイルã«æŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ãã¯ã€ãã®ãƒžã‚¹ã‚¿ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-providerArg ConfigFilePath\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¡¢\fIkeytool\fR¤ª¤è¤Ó\fIjarsigner\fR¥Ä¡¼¥ë¤Ï¡¢¥×¥í¥Ð¥¤¥À¤òưŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¡¢¥È¡¼¥¯¥ó¹½À®¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ë\fIConfigFilePath\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢Oracle PKCS #11¥×¥í¥Ð¥¤¥À¤¬¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë¹½À®¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë\fIPKCS #11\fR¥­¡¼¥¹¥È¥¢¤ò°ìÍ÷ɽ¼¨¤¹¤ë¥³¥Þ¥ó¥É¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+\fI\-providerArg ConfigFilePath\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã€\fIkeytool\fRãŠã‚ˆã³\fIjarsigner\fRツールã¯ã€ãƒ—ロãƒã‚¤ãƒ€ã‚’å‹•çš„ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã€ãƒˆãƒ¼ã‚¯ãƒ³æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スã«\fIConfigFilePath\fRを使用ã—ã¾ã™ã€‚次ã®ä¾‹ã¯ã€Oracle PKCS #11プロãƒã‚¤ãƒ€ãŒã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã«æ§‹æˆã•ã‚Œã¦ã„ãªã‹ã£ãŸå ´åˆã«\fIPKCS #11\fRキーストアを一覧表示ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -733,9 +733,9 @@
 .PP
 \-providerName \fIproviderName\fR
 .RS 4
-\fIjava\&.security\fR¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Ç2¤Ä°Ê¾å¤Î¥×¥í¥Ð¥¤¥À¤¬¹½À®¤µ¤ì¤¿¾ì¹ç¡¢\fI\-providerName\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢ÆÃÄê¤Î¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤òÂоݤˤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ï¡¢¥×¥í¥Ð¥¤¥À¤Î̾Á°¤Ç¤¹¡£
+\fIjava\&.security\fRセキュリティ・プロパティ・ファイル内ã§2ã¤ä»¥ä¸Šã®ãƒ—ロãƒã‚¤ãƒ€ãŒæ§‹æˆã•ã‚ŒãŸå ´åˆã€\fI\-providerName\fRオプションを使用ã—ã¦ã€ç‰¹å®šã®ãƒ—ロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’対象ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã®å¼•æ•°ã¯ã€ãƒ—ロãƒã‚¤ãƒ€ã®åå‰ã§ã™ã€‚
 .sp
-Oracle PKCS #11¥×¥í¥Ð¥¤¥À¤Î¾ì¹ç¡¢\fIproviderName\fR¤Ï\fISunPKCS11\-\fR\fITokenName\fR¤È¤¤¤¦·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤³¤Ç¡¢¹½À®Â°À­¤Îɽ¤Ç¾ÜºÙ¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢\fITokenName\fR¤Ï¡¢¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤¬¹½À®¤µ¤ì¤¿Ì¾Á°¤ÎÀÜÈø¼­¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Ì¾Á°ÀÜÈø¼­\fISmartCard\fR¤Î\fIPKCS #11\fR¥­¡¼¥¹¥È¥¢¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+Oracle PKCS #11プロãƒã‚¤ãƒ€ã®å ´åˆã€\fIproviderName\fRã¯\fISunPKCS11\-\fR\fITokenName\fRã¨ã„ã†å½¢å¼ã«ãªã‚Šã¾ã™ã€‚ã“ã“ã§ã€æ§‹æˆå±žæ€§ã®è¡¨ã§è©³ç´°ã«èª¬æ˜Žã•ã‚Œã¦ã„るよã†ã«ã€\fITokenName\fRã¯ã€ãƒ—ロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ãŒæ§‹æˆã•ã‚ŒãŸåå‰ã®æŽ¥å°¾è¾žã§ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€åå‰æŽ¥å°¾è¾ž\fISmartCard\fRã®\fIPKCS #11\fRキーストア・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å†…容を一覧表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -752,45 +752,45 @@
 .PP
 \-J\fIjavaoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿\fIjavaoption\fRʸ»úÎó¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤ËľÀÜÅϤ·¤Þ¤¹¡£\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¤¥ó¥¿¥×¥ê¥¿¤ËÂФ¹¤ë¥é¥Ã¥Ñ¡¼¤Ç¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤòÄ´À°¤¹¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£»ØÄê¤Ç¤­¤ë¥¤¥ó¥¿¥×¥ê¥¿¡¦¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava \-h\fR¤Þ¤¿¤Ï\fIjava \-X\fR¤ÈÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã•ã‚ŒãŸ\fIjavaoption\fR文字列をJavaインタプリタã«ç›´æŽ¥æ¸¡ã—ã¾ã™ã€‚\fIjarsigner\fRコマンドã¯ã€ã‚¤ãƒ³ã‚¿ãƒ—リタã«å¯¾ã™ã‚‹ãƒ©ãƒƒãƒ‘ーã§ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã¯ã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã‚’調整ã™ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚指定ã§ãるインタプリタ・オプションを一覧表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava \-h\fRã¾ãŸã¯\fIjava \-X\fRã¨å…¥åŠ›ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-tsa \fIurl\fR
 .RS 4
-\fI\-tsa http://example\&.tsa\&.url\fR¤¬JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¢¤ë¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£URL
-\fIhttp://example\&.tsa\&.url\fR¤Ï¡¢Time Stamping Authority (TSA)¤Î¾ì½ê¤òÆÃÄꤷ¡¢\fI\-tsacert\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¸¡½Ð¤µ¤ì¤¿URL¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fI\-tsa\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢TSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤ËÇÛÃÖ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+\fI\-tsa http://example\&.tsa\&.url\fRãŒJARファイルã®ç½²å時ã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ã‚‹å ´åˆã€ç½²åã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚URL
+\fIhttp://example\&.tsa\&.url\fRã¯ã€Time Stamping Authority (TSA)ã®å ´æ‰€ã‚’特定ã—ã€\fI\-tsacert\fRオプションを指定ã—ã¦æ¤œå‡ºã•ã‚ŒãŸURLをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fI\-tsa\fRオプションã§ã¯ã€TSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’キーストアã«é…ç½®ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢\fIjarsigner\fR¤Ï¡¢RFC 3161¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥¿¥¤¥à¥¹¥¿¥ó¥×¡¦¥×¥í¥È¥³¥ë(TSP)¤ò»ÈÍѤ·¤ÆTSA¤ÈÄÌ¿®¤·¤Þ¤¹¡£À®¸ù¤¹¤ë¤È¡¢TSA¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤¿¥¿¥¤¥à¥¹¥¿¥ó¥×¡¦¥È¡¼¥¯¥ó¤Ï¡¢½ð̾¥Ö¥í¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤Î½ð̾¤È¤È¤â¤ËÊݸ¤µ¤ì¤Þ¤¹¡£
+タイムスタンプを生æˆã™ã‚‹ãŸã‚ã«ã€\fIjarsigner\fRã¯ã€RFC 3161ã§å®šç¾©ã•ã‚Œã¦ã„るタイムスタンプ・プロトコル(TSP)を使用ã—ã¦TSAã¨é€šä¿¡ã—ã¾ã™ã€‚æˆåŠŸã™ã‚‹ã¨ã€TSAã«ã‚ˆã£ã¦è¿”ã•ã‚ŒãŸã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—・トークンã¯ã€ç½²åブロック・ファイルã®ç½²åã¨ã¨ã‚‚ã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tsacert \fIalias\fR
 .RS 4
-\fI\-tsacert alias\fR¤¬JAR¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¢¤ë¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£ÊÌ̾¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÍ­¸ú¤ÊTSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤òÆÃÄꤷ¤Þ¤¹¡£¥¨¥ó¥È¥ê¤Î¾ÚÌÀ½ñ¤Ç¡¢TSA¤Î¾ì½ê¤òÆÃÄꤹ¤ëURL¤ò´Þ¤àSubject Information Access³ÈÄ¥µ¡Ç½¤¬³Îǧ¤µ¤ì¤Þ¤¹¡£
+\fI\-tsacert alias\fRãŒJARファイルã®ç½²å時ã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ã‚‹å ´åˆã€ç½²åã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚別åã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æœ‰åŠ¹ãªTSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’特定ã—ã¾ã™ã€‚エントリã®è¨¼æ˜Žæ›¸ã§ã€TSAã®å ´æ‰€ã‚’特定ã™ã‚‹URLã‚’å«ã‚€Subject Information Access拡張機能ãŒç¢ºèªã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-tsacert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢TSA¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢¤ËÇÛÃÖ¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fI\-tsacert\fRオプションを使用ã™ã‚‹å ´åˆã¯ã€TSAã®å…¬é–‹éµè¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«é…ç½®ã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-tsapolicyid \fIpolicyid\fR
 .RS 4
-TSA¥µ¡¼¥Ð¡¼¤ËÁ÷¿®¤¹¤ë¥Ý¥ê¥·¡¼ID¤ò¼±Ê̤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¼±ÊÌ»Ò(OID)¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ý¥ê¥·¡¼ID¤ÏÁ÷¿®¤µ¤ì¤º¡¢TSA¥µ¡¼¥Ð¡¼¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥Ý¥ê¥·¡¼ID¤òÁªÂò¤·¤Þ¤¹¡£
+TSAサーãƒãƒ¼ã«é€ä¿¡ã™ã‚‹ãƒãƒªã‚·ãƒ¼IDを識別ã™ã‚‹ã‚ªãƒ–ジェクト識別å­(OID)を指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€ãƒãƒªã‚·ãƒ¼IDã¯é€ä¿¡ã•ã‚Œãšã€TSAサーãƒãƒ¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒãƒªã‚·ãƒ¼IDã‚’é¸æŠžã—ã¾ã™ã€‚
 .sp
-¥ª¥Ö¥¸¥§¥¯¥È¼±Ê̻Ҥϡ¢ITU Telecommunication Standardization Sector (ITU\-T)ɸ½à¤Ç¤¢¤ëX\&.696¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¼±Ê̻Ҥϡ¢Ä̾\fI1\&.2\&.3\&.4\fR¤Ê¤É¤Î¡¢Éé¤Ç¤Ï¤Ê¤¤¿ô»ú¤Î¥Ô¥ê¥ª¥É¶èÀÚ¤ê¤Î¥»¥Ã¥È¤Ç¤¹¡£
+オブジェクト識別å­ã¯ã€ITU Telecommunication Standardization Sector (ITU\-T)標準ã§ã‚ã‚‹X\&.696ã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚ã“れらã®è­˜åˆ¥å­ã¯ã€é€šå¸¸ã€\fI1\&.2\&.3\&.4\fRãªã©ã®ã€è² ã§ã¯ãªã„æ•°å­—ã®ãƒ”リオド区切りã®ã‚»ãƒƒãƒˆã§ã™ã€‚
 .RE
 .PP
 \-altsigner \fIclass\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ÂåÂؽð̾¥á¥«¥Ë¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤Ï¡¢\fIcom\&.sun\&.jarsigner\&.ContentSigner\fRÃê¾Ý¥¯¥é¥¹¤ò³ÈÄ¥¤¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¼±Ê̤·¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ï¡¢\fI\-altsignerpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£\fI\-altsigner\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥Õ¥©¥ë¥È¤Î½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€ä»£æ›¿ç½²åメカニズムを指定ã—ã¾ã™ã€‚完全修飾クラスåã¯ã€\fIcom\&.sun\&.jarsigner\&.ContentSigner\fR抽象クラスを拡張ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’識別ã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スã¯ã€\fI\-altsignerpath\fRオプションã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚\fI\-altsigner\fRオプションを使用ã—ãŸå ´åˆã€\fIjarsigner\fRコマンドã§ã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ç½²åメカニズムを使用ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIjarsigner\fRコマンドã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç½²åメカニズムを使用ã—ã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.sun\&.sun\&.jarsigner\&.AuthSigner\fR¤È¤¤¤¦Ì¾Á°¤Î¥¯¥é¥¹¤¬Ä󶡤¹¤ë½ð̾¥á¥«¥Ë¥º¥à¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢jarsigner¤Î¥ª¥×¥·¥ç¥ó\fI\-altsigner com\&.sun\&.jarsigner\&.AuthSigner\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIcom\&.sun\&.sun\&.jarsigner\&.AuthSigner\fRã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ãŒæä¾›ã™ã‚‹ç½²åメカニズムを使用ã™ã‚‹ã«ã¯ã€jarsignerã®ã‚ªãƒ—ション\fI\-altsigner com\&.sun\&.jarsigner\&.AuthSigner\fRを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-altsignerpath \fIclasspathlist\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¤½¤ì¤¬°Í¸¤¹¤ëJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-altsigner\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¤½¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルãŠã‚ˆã³ãã‚ŒãŒä¾å­˜ã™ã‚‹JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚\fI\-altsigner\fRオプションを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚クラス・ファイルãŒJARファイル内ã«ã‚ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã§ã¯ã€ãã®JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚
 .sp
-ÀäÂХѥ¹¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎÁêÂХѥ¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIclasspathlist\fR¤ËÊ£¿ô¤Î¥Ñ¥¹¤äJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¡¢¤½¤ì¤é¤ò¡¢Oracle Solaris¤Î¾ì¹ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó(;)¤Ç¡¢¤½¤ì¤¾¤ì¶èÀÚ¤ê¤Þ¤¹¡£ÌÜŪ¤Î¥¯¥é¥¹¤¬¤¹¤Ç¤Ë¸¡º÷¥Ñ¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£
+絶対パスã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ç›¸å¯¾ãƒ‘スを指定ã§ãã¾ã™ã€‚\fIclasspathlist\fRã«è¤‡æ•°ã®ãƒ‘スやJARファイルãŒå«ã¾ã‚Œã‚‹å ´åˆã€ãれらをã€Oracle Solarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§ã€ãã‚Œãžã‚ŒåŒºåˆ‡ã‚Šã¾ã™ã€‚目的ã®ã‚¯ãƒ©ã‚¹ãŒã™ã§ã«æ¤œç´¢ãƒ‘ス内ã«ã‚ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë̾¤ò´Þ¤á¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã¸ã®ãƒ‘スを指定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚JARファイルåã‚’å«ã‚ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -801,7 +801,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£JAR¥Õ¥¡¥¤¥ë̾¤ò¾Êά¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã¸ã®ãƒ‘スを指定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚JARファイルåã‚’çœç•¥ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -816,101 +816,101 @@
 .PP
 \-strict
 .RS 4
-½ð̾¤Þ¤¿¤Ï¸¡¾Ú½èÍýÃæ¤Ë¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬È¯¹Ô¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ë¤è¤ê¸¡½Ð¤µ¤ì¤¿½ÅÂç¤Ê·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬¥Ä¡¼¥ë¤Î½ªÎ»¥³¡¼¥É¤ËÈ¿±Ç¤µ¤ì¤Þ¤¹¡£¥¨¥é¡¼¤È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ç½²åã¾ãŸã¯æ¤œè¨¼å‡¦ç†ä¸­ã«ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒç™ºè¡Œã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã‚Šæ¤œå‡ºã•ã‚ŒãŸé‡å¤§ãªè­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒãƒ„ールã®çµ‚了コードã«å映ã•ã‚Œã¾ã™ã€‚エラーã¨è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose \fIsuboptions\fR
 .RS 4
-¸¡¾Ú½èÍý¤Î¾ì¹ç¡¢\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢É½¼¨¤¹¤ë¾ðÊó¤ÎÎ̤ò·èÄꤹ¤ë¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤¿¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥â¡¼¥É(¤Þ¤¿¤Ï¥µ¥Ö¥ª¥×¥·¥ç¥ó\fIall\fR)¤Ç¤Ï¡¢¥¨¥ó¥È¥ê¤¬½èÍý¤µ¤ì¤ë¤¿¤Ó¤Ë³Æ¥¨¥ó¥È¥ê¤¬É½¼¨¤µ¤ì¡¢¤½¤Î¸å¤ËJAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊó¤âɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-certs\fR¤ª¤è¤Ó\fI\-verbose:grouped\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Æ±¤¸½ð̾¼Ô¾ðÊó¤ò»ý¤Ä¥¨¥ó¥È¥ê¤¬¡¢¤½¤Î¾ÚÌÀ½ñ¾ðÊó¤È¤È¤â¤Ë¡¢¥°¥ë¡¼¥×²½¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-certs\fR¤ª¤è¤Ó\fI\-verbose:summary\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Æ±¤¸½ð̾¼Ô¾ðÊó¤ò»ý¤Ä¥¨¥ó¥È¥ê¤¬¡¢¤½¤Î¾ÚÌÀ½ñ¾ðÊó¤È¤È¤â¤Ë¡¢¥°¥ë¡¼¥×²½¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£³Æ¥¨¥ó¥È¥ê¤Î¾ÜºÙ¤Ï¡¢\fI1¤Ä¤Î¥¨¥ó¥È¥ê(°Ê¾å)\fR¤Ë¤Þ¤È¤á¤é¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£Îã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+検証処ç†ã®å ´åˆã€\fI\-verbose\fRオプションã«ã¯ã€è¡¨ç¤ºã™ã‚‹æƒ…å ±ã®é‡ã‚’決定ã™ã‚‹ã‚µãƒ–オプションを指定ã—ã¾ã™ã€‚\fI\-certs\fRオプションも指定ã—ãŸå ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ¢ãƒ¼ãƒ‰(ã¾ãŸã¯ã‚µãƒ–オプション\fIall\fR)ã§ã¯ã€ã‚¨ãƒ³ãƒˆãƒªãŒå‡¦ç†ã•ã‚Œã‚‹ãŸã³ã«å„エントリãŒè¡¨ç¤ºã•ã‚Œã€ãã®å¾Œã«JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…報も表示ã•ã‚Œã¾ã™ã€‚\fI\-certs\fRãŠã‚ˆã³\fI\-verbose:grouped\fRサブオプションを指定ã—ãŸå ´åˆã€åŒã˜ç½²å者情報をæŒã¤ã‚¨ãƒ³ãƒˆãƒªãŒã€ãã®è¨¼æ˜Žæ›¸æƒ…å ±ã¨ã¨ã‚‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-certs\fRãŠã‚ˆã³\fI\-verbose:summary\fRサブオプションを指定ã—ãŸå ´åˆã€åŒã˜ç½²å者情報をæŒã¤ã‚¨ãƒ³ãƒˆãƒªãŒã€ãã®è¨¼æ˜Žæ›¸æƒ…å ±ã¨ã¨ã‚‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚å„エントリã®è©³ç´°ã¯ã€\fI1ã¤ã®ã‚¨ãƒ³ãƒˆãƒª(以上)\fRã«ã¾ã¨ã‚られã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚例をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥¨¥é¡¼¤È·Ù¹ð"
+.SH "エラーã¨è­¦å‘Š"
 .PP
-½ð̾¤Þ¤¿¤Ï¸¡¾Ú¥×¥í¥»¥¹Ãæ¤Ë¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ç¡¢ÍÍ¡¹¤Ê¥¨¥é¡¼¤Þ¤¿¤Ï·Ù¹ð¤¬È¯¹Ô¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ç½²åã¾ãŸã¯æ¤œè¨¼ãƒ—ロセス中ã«ã€\fIjarsigner\fRコマンドã§ã€æ§˜ã€…ãªã‚¨ãƒ©ãƒ¼ã¾ãŸã¯è­¦å‘ŠãŒç™ºè¡Œã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¾ã³²¤¬¤¢¤ë¾ì¹ç¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É1¤Ç½ªÎ»¤·¤Þ¤¹¡£¾ã³²¤Ï¤Ê¤¤¤¬¡¢1¤Ä°Ê¾å¤Î½ÅÂç¤Ê·Ù¹ð¤¬¤¢¤ë¾ì¹ç¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ\fB¤¤¤Ê¤¤\fR¾ì¹ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É0¤Ç½ªÎ»¤·¡¢\fI\-strict\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï·Ù¹ð¥³¡¼¥É¤ÎORÃͤǽªÎ»¤·¤Þ¤¹¡£¾ðÊó·Ù¹ð¤Î¤ß¤¬¤¢¤ë¡¢¤Þ¤¿¤Ï·Ù¹ð¤¬¤Þ¤Ã¤¿¤¯¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¾ï¤Ë¥³¡¼¥É0¤Ç½ªÎ»¤·¤Þ¤¹¡£
+障害ãŒã‚ã‚‹å ´åˆã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰1ã§çµ‚了ã—ã¾ã™ã€‚障害ã¯ãªã„ãŒã€1ã¤ä»¥ä¸Šã®é‡å¤§ãªè­¦å‘ŠãŒã‚ã‚‹å ´åˆã€\fI\-strict\fRオプションãŒæŒ‡å®šã•ã‚Œã¦\fBã„ãªã„\fRå ´åˆã¯ã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰0ã§çµ‚了ã—ã€\fI\-strict\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯è­¦å‘Šã‚³ãƒ¼ãƒ‰ã®OR値ã§çµ‚了ã—ã¾ã™ã€‚情報警告ã®ã¿ãŒã‚ã‚‹ã€ã¾ãŸã¯è­¦å‘ŠãŒã¾ã£ãŸããªã„å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¸¸ã«ã‚³ãƒ¼ãƒ‰0ã§çµ‚了ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥¨¥ó¥È¥ê¤Î½ð̾¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤¬´ü¸ÂÀÚ¤ì¤Ç¡¢¥Õ¥¡¥¤¥ë¤Î½ð̾¤òµö²Ä¤·¤Ê¤¤KeyUsage³ÈÄ¥µ¡Ç½¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤È¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ï¥³¡¼¥É12 (=4+8)¤Ç½ªÎ»¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚¨ãƒ³ãƒˆãƒªã®ç½²åã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ãŒæœŸé™åˆ‡ã‚Œã§ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®ç½²åを許å¯ã—ãªã„KeyUsage拡張機能を使用ã—ã¦ã„ã‚‹å ´åˆã€\fI\-strict\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã¨ã€\fIjarsigner\fRコマンドã¯ã‚³ãƒ¼ãƒ‰12 (=4+8)ã§çµ‚了ã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-UNIX¥Ù¡¼¥¹¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¤Ï0¤«¤é255¤Þ¤Ç¤ÎÃͤΤߤ¬Í­¸ú¤Î¤¿¤á¡¢½ªÎ»¥³¡¼¥É¤ÏºÆÍøÍѤµ¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+UNIXベースã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã¯0ã‹ã‚‰255ã¾ã§ã®å€¤ã®ã¿ãŒæœ‰åŠ¹ã®ãŸã‚ã€çµ‚了コードã¯å†åˆ©ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¼¡¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Ë¤è¤êȯ¹Ô¤Ç¤­¤ë¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¤Î̾Á°¡¢¥³¡¼¥É¡¢ÀâÌÀ¤òµ­½Ò¤·¤Þ¤¹¡£
-.SS "¾ã³²"
+次ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€\fIjarsigner\fRコマンドã«ã‚ˆã‚Šç™ºè¡Œã§ãるエラーãŠã‚ˆã³è­¦å‘Šã®åå‰ã€ã‚³ãƒ¼ãƒ‰ã€èª¬æ˜Žã‚’記述ã—ã¾ã™ã€‚
+.SS "障害"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó²òÀÏ¥¨¥é¡¼¡¢JAR¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¸°¥Ú¥¢¤ò¸¡º÷¤Ç¤­¤Ê¤¤¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¼ºÇԤʤÉ(¸ÂÄꤵ¤ì¤Þ¤»¤ó)¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤Î¼ºÇÔÍýͳ¡£
+コマンドライン解æžã‚¨ãƒ©ãƒ¼ã€JARファイルã«ç½²åã™ã‚‹éµãƒšã‚¢ã‚’検索ã§ããªã„ã€ã¾ãŸã¯ç½²å付ãJARファイルã®æ¤œè¨¼å¤±æ•—ãªã©(é™å®šã•ã‚Œã¾ã›ã‚“)ã€\fIjarsigner\fRコマンドã®å¤±æ•—ç†ç”±ã€‚
 .PP
 failure
 .RS 4
-¥³¡¼¥É1¡£½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤¬¼ºÇÔ¤·¤Þ¤¹¡£
+コード1。署åã¾ãŸã¯æ¤œè¨¼ãŒå¤±æ•—ã—ã¾ã™ã€‚
 .RE
-.SS "½ÅÂç¤Ê·Ù¹ð"
+.SS "é‡å¤§ãªè­¦å‘Š"
 .PP
-\fBÃí°Õ:\fR
-\fI\-strict\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢½ÅÂç¤Ê·Ù¹ð¤Ï¥¨¥é¡¼¤È¤·¤ÆÊó¹ð¤µ¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI\-strict\fRオプションを指定ã—ãŸå ´åˆã€é‡å¤§ãªè­¦å‘Šã¯ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å ±å‘Šã•ã‚Œã¾ã™ã€‚
 .PP
-JAR¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ë¾ÚÌÀ½ñ¤Ë¥¨¥é¡¼¤¬¤¢¤ë¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë¾¤ÎÌäÂ꤬¤¢¤ë¤Ê¤É¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤¬½ÅÂç¤Ê·Ù¹ð¤òȯ¹Ô¤¹¤ëÍýͳ¡£
+JARファイルã®ç½²åã«ä½¿ç”¨ã™ã‚‹è¨¼æ˜Žæ›¸ã«ã‚¨ãƒ©ãƒ¼ãŒã‚ã‚‹ã€ã¾ãŸã¯ç½²å付ãJARファイルã«ä»–ã®å•é¡ŒãŒã‚ã‚‹ãªã©ã€\fIjarsigner\fRコマンドãŒé‡å¤§ãªè­¦å‘Šã‚’発行ã™ã‚‹ç†ç”±ã€‚
 .PP
 hasExpiredCert
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬´ü¸ÂÀÚ¤ì¤Î¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒæœŸé™åˆ‡ã‚Œã®ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 notYetValidCert
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬¤Þ¤ÀÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒã¾ã æœ‰åŠ¹ã«ãªã£ã¦ã„ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 chainNotValidated
 .RS 4
-¥³¡¼¥É4¡£¤³¤Îjar¤Ë¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬Àµ¤·¤¯¸¡¾Ú¤Ç¤­¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード4。ã“ã®jarã«ã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ãŒæ­£ã—ã検証ã§ããªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badKeyUsage
 .RS 4
-¥³¡¼¥É8¡£¤³¤ÎJAR¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎKeyUsage³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®JARã«ã¯ã€ç½²å者証明書ã®KeyUsage拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badExtendedKeyUsage
 .RS 4
-¥³¡¼¥É8¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎExtendedKeyUsage³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®jarã«ã¯ã€ç½²å者証明書ã®ExtendedKeyUsage拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 badNetscapeCertType
 .RS 4
-¥³¡¼¥É8¡£¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎNetscapeCertType³ÈÄ¥µ¡Ç½¤¬¥³¡¼¥É½ð̾¤òµö²Ä¤·¤Ê¤¤¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード8。ã“ã®jarã«ã¯ã€ç½²å者証明書ã®NetscapeCertType拡張機能ãŒã‚³ãƒ¼ãƒ‰ç½²åを許å¯ã—ãªã„エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 hasUnsignedEntry
 .RS 4
-¥³¡¼¥É16¡£¤³¤Îjar¤Ë¤Ï¡¢À°¹çÀ­¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¤¤Ê¤¤Ì¤½ð̾¤Î¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード16。ã“ã®jarã«ã¯ã€æ•´åˆæ€§ãƒã‚§ãƒƒã‚¯ã‚’ã—ã¦ã„ãªã„未署åã®ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 notSignedByAlias
 .RS 4
-¥³¡¼¥É32¡£¤³¤Îjar¤Ë¤Ï¡¢»ØÄꤵ¤ì¤¿ÊÌ̾¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Æ¤¤¤Ê¤¤½ð̾ºÑ¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+コード32。ã“ã®jarã«ã¯ã€æŒ‡å®šã•ã‚ŒãŸåˆ¥åã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¦ã„ãªã„ç½²å済エントリãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 aliasNotInStore
 .RS 4
-¥³¡¼¥É32¡£¤³¤Îjar¤Ë¤Ï¡¢¤³¤Î¥­¡¼¥¹¥È¥¢Æâ¤ÎÊÌ̾¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Æ¤¤¤Ê¤¤½ð̾ºÑ¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+コード32。ã“ã®jarã«ã¯ã€ã“ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®åˆ¥åã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¦ã„ãªã„ç½²å済エントリãŒå«ã¾ã‚Œã¾ã™ã€‚
 .RE
-.SS "¾ðÊó·Ù¹ð"
+.SS "情報警告"
 .PP
-¾ðÊó·Ù¹ð¤Ë¤Ï¡¢¥¨¥é¡¼¤Ç¤Ï¤Ê¤¤¤¬ÉÔŬÀڤȤߤʤµ¤ì¤ë¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¥³¡¼¥É¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+情報警告ã«ã¯ã€ã‚¨ãƒ©ãƒ¼ã§ã¯ãªã„ãŒä¸é©åˆ‡ã¨ã¿ãªã•ã‚Œã‚‹ã‚‚ã®ãŒå«ã¾ã‚Œã¾ã™ã€‚コードã¯ã‚ã‚Šã¾ã›ã‚“。
 .PP
 hasExpiringCert
 .RS 4
-¤³¤Îjar¤Ë¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤¬6¤«·î°ÊÆâ¤Ë´ü¸ÂÀÚ¤ì¤È¤Ê¤ë¥¨¥ó¥È¥ê¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“ã®jarã«ã¯ã€ç½²å者証明書ãŒ6ã‹æœˆä»¥å†…ã«æœŸé™åˆ‡ã‚Œã¨ãªã‚‹ã‚¨ãƒ³ãƒˆãƒªãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 noTimestamp
 .RS 4
-¤³¤Îjar¤Ë¤Ï¡¢¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤Þ¤Ê¤¤½ð̾¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ê¤·¤Ç¤Ï¡¢½ð̾¼Ô¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü¸Â(\fIYYYY\-MM\-DD\fR)¸å¤Þ¤¿¤Ï¾­Íè¤Î¼è¾ÃÆü¸å¡¢¥æ¡¼¥¶¡¼¤Ï¤³¤ÎJAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤Ç¤­¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+ã“ã®jarã«ã¯ã€ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã¾ãªã„ç½²åãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚タイムスタンプãªã—ã§ã¯ã€ç½²å者証明書ã®æœ‰åŠ¹æœŸé™(\fIYYYY\-MM\-DD\fR)後ã¾ãŸã¯å°†æ¥ã®å–消日後ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã“ã®JARファイルを検証ã§ããªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "Îã"
-.SS "JAR¥Õ¥¡¥¤¥ë¤Î½ð̾"
+.SH "例"
+.SS "JARファイルã®ç½²å"
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥­¡¼¥¹¥È¥¢ÊÌ̾¤¬\fIworking\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fImystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤Ë¤¢¤ë\fIjane\fR¤Ç¤¢¤ë¥æ¡¼¥¶¡¼¤ÎÈëÌ©¸°¤Çbundle\&.jar¤Ë½ð̾¤·¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë\fIsbundle\&.jar\fR¤È¤¤¤¦Ì¾Á°¤òÉÕ¤±¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åãŒ\fIworking\fRディレクトリã®\fImystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã‚ã‚‹\fIjane\fRã§ã‚るユーザーã®ç§˜å¯†éµã§bundle\&.jarã«ç½²åã—ã€ç½²å付ãJARファイルã«\fIsbundle\&.jar\fRã¨ã„ã†åå‰ã‚’付ã‘ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -925,9 +925,9 @@
 .RE
 .\}
 .PP
-Á°½Ò¤Î¥³¥Þ¥ó¥É¤Ç¤Ï\fI\-sigfile\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤¿¤á¡¢½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤ëÀ¸À®¤µ¤ì¤¿\fI\&.SF\fR¥Õ¥¡¥¤¥ë¤ª¤è¤Ó\fI\&.DSA\fR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢ÊÌ̾¤Ë´ð¤Å¤¤¤¿¥Ç¥Õ¥©¥ë¥È¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢Ì¾Á°ÉÕ¤­¤Î\fIJANE\&.SF\fR¤ª¤è¤Ó\fIJANE\&.DSA\fR¤Ç¤¹¡£
+å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯\fI\-sigfile\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ãŸã‚ã€ç½²å付ãJARファイルã«æ ¼ç´ã•ã‚Œã‚‹ç”Ÿæˆã•ã‚ŒãŸ\fI\&.SF\fRファイルãŠã‚ˆã³\fI\&.DSA\fRファイルã®åå‰ã¯ã€åˆ¥åã«åŸºã¥ã„ãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åå‰ã«ãªã‚Šã¾ã™ã€‚ã“れらã¯ã€åå‰ä»˜ãã®\fIJANE\&.SF\fRãŠã‚ˆã³\fIJANE\&.DSA\fRã§ã™ã€‚
 .PP
-¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ª¤è¤ÓÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤òµá¤á¤é¤ì¤ë¾ì¹ç¡¢Á°½Ò¤Î¥³¥Þ¥ó¥É¤òû½Ì¤·¤Æ¡¢¼¡¤Î¤³¤È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+ストアã®ãƒ‘スワードãŠã‚ˆã³ç§˜å¯†éµã®ãƒ‘スワードを求ã‚られる場åˆã€å‰è¿°ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’短縮ã—ã¦ã€æ¬¡ã®ã“ã¨ã‚’実行ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -940,7 +940,7 @@
 .RE
 .\}
 .PP
-¥­¡¼¥¹¥È¥¢¤¬¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢(¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î\&.keystore)¤Ç¤¢¤ë¾ì¹ç¡¢¼¡¤Ë¼¨¤¹¤è¤¦¤Ë¡¢¥­¡¼¥¹¥È¥¢¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£
+キーストアãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢(ホーム・ディレクトリ内ã®\&.keystore)ã§ã‚ã‚‹å ´åˆã€æ¬¡ã«ç¤ºã™ã‚ˆã†ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -952,7 +952,7 @@
 .RE
 .\}
 .PP
-ÆþÎÏJAR¥Õ¥¡¥¤¥ë(bundle\&.jar)¤ò½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Ç¾å½ñ¤­¤¹¤ë¾ì¹ç¡¢¼¡¤Î¤è¤¦¤Ë\fI\-signedjar\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+入力JARファイル(bundle\&.jar)ã‚’ç½²å付ãJARファイルã§ä¸Šæ›¸ãã™ã‚‹å ´åˆã€æ¬¡ã®ã‚ˆã†ã«\fI\-signedjar\fRオプションを指定ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -963,9 +963,9 @@
 .if n \{\
 .RE
 .\}
-.SS "½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú"
+.SS "ç½²å付ãJARファイルã®æ¤œè¨¼"
 .PP
-½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¤Æ¡¢½ð̾¤¬Í­¸ú¤ÇJAR¥Õ¥¡¥¤¥ë¤¬²þ¤¶¤ó¤µ¤ì¤Ê¤«¤Ã¤¿¤³¤È¤ò³Îǧ¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+ç½²å付ãJARファイルを検証ã—ã¦ã€ç½²åãŒæœ‰åŠ¹ã§JARファイルãŒæ”¹ã–ã‚“ã•ã‚Œãªã‹ã£ãŸã“ã¨ã‚’確èªã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -977,7 +977,7 @@
 .RE
 .\}
 .PP
-¸¡¾Ú¤¬À®¸ù¤¹¤ë¤È¡¢\fIjar verified\fR¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÜºÙ¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£\fIjarsigner\fR¤ò\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¥µ¥ó¥×¥ë¤ò¡¢¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+検証ãŒæˆåŠŸã™ã‚‹ã¨ã€\fIjar verified\fRãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-verbose\fRオプションを使用ã™ã‚‹ã¨ã€è©³ç´°æƒ…報をå–å¾—ã§ãã¾ã™ã€‚\fIjarsigner\fRã‚’\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹ã‚µãƒ³ãƒ—ルをã€æ¬¡ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1000,9 +1000,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¾ÚÌÀ½ñ¾ðÊó¤ò»ÈÍѤ·¤¿¸¡¾Ú"
+.SS "証明書情報を使用ã—ãŸæ¤œè¨¼"
 .PP
-\fI\-certs\fR¥ª¥×¥·¥ç¥ó¤ò\fI\-verify\fR¤ª¤è¤Ó\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ØÄꤷ¤¿¾ì¹ç¡¢JAR¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊ󤬽ÐÎϤ˴ޤޤì¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ë¤Ï¡¢¾ÚÌÀ½ñ¥¿¥¤¥×¡¢½ð̾¼Ô¤Î¼±ÊÌ̾¾ðÊó(X\&.509¾ÚÌÀ½ñ¤Î¾ì¹ç)¤¬´Þ¤Þ¤ì¡¢´Ý¥«¥Ã¥³Æâ¤Ë¤Ï¡¢JAR¥Õ¥¡¥¤¥ë¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤Î¸ø³«¸°¾ÚÌÀ½ñ¤Ë°ìÃפ¹¤ë¾ì¹ç¤Î½ð̾¼Ô¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI\-certs\fRオプションを\fI\-verify\fRãŠã‚ˆã³\fI\-verbose\fRオプションã¨ã¨ã‚‚ã«æŒ‡å®šã—ãŸå ´åˆã€JARファイルã®å„ç½²å者ã®è¨¼æ˜Žæ›¸æƒ…å ±ãŒå‡ºåŠ›ã«å«ã¾ã‚Œã¾ã™ã€‚ã“ã®æƒ…å ±ã«ã¯ã€è¨¼æ˜Žæ›¸ã‚¿ã‚¤ãƒ—ã€ç½²å者ã®è­˜åˆ¥å情報(X\&.509証明書ã®å ´åˆ)ãŒå«ã¾ã‚Œã€ä¸¸ã‚«ãƒƒã‚³å†…ã«ã¯ã€JARファイルã®å…¬é–‹éµè¨¼æ˜Žæ›¸ãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã«ä¸€è‡´ã™ã‚‹å ´åˆã®ç½²å者ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢åˆ¥åãŒå«ã¾ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1030,8 +1030,8 @@
 .RE
 .\}
 .PP
-½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤¬X\&.509¾ÚÌÀ½ñ¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢¼±ÊÌ̾¾ðÊó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£¤½¤Î¾ì¹ç¤Ë¤Ï¡¢¾ÚÌÀ½ñ¤Î¥¿¥¤¥×¤ÈÊÌ̾¤Î¤ß¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬PGP¾ÚÌÀ½ñ¤Ç¡¢ÊÌ̾¤¬\fIbob\fR¤Ç¤¢¤ë¾ì¹ç¡¢\fIPGP, (bob)\fR¤ò¼èÆÀ¤·¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+ç½²å者ã®è¨¼æ˜Žæ›¸ãŒX\&.509証明書ã§ã¯ãªã„å ´åˆã€è­˜åˆ¥å情報ã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。ãã®å ´åˆã«ã¯ã€è¨¼æ˜Žæ›¸ã®ã‚¿ã‚¤ãƒ—ã¨åˆ¥åã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒPGP証明書ã§ã€åˆ¥åãŒ\fIbob\fRã§ã‚ã‚‹å ´åˆã€\fIPGP, (bob)\fRã‚’å–å¾—ã—ã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -1063,8 +1063,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/security/index\&.html¤Ë¤¢¤ë
-¡Ö¥³¡¼¥¹: Java SE¤Î¥»¥­¥å¥ê¥Æ¥£µ¡Ç½¡×
+http://docs\&.oracle\&.com/javase/tutorial/security/index\&.htmlã«ã‚ã‚‹
+「コース: Java SEã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£æ©Ÿèƒ½ã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/java.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/java.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: java
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "java" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "java" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-java \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+java \- Javaアプリケーションを起動ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,26 +74,26 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassname\fR
 .RS 4
-µ¯Æ°¤¹¤ë¥¯¥é¥¹¤Î̾Á°¡£
+èµ·å‹•ã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚
 .RE
 .PP
 \fIfilename\fR
 .RS 4
-¸Æ¤Ó½Ð¤µ¤ì¤ëJava¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Î̾Á°¡£\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤È°ì½ï¤Ë¤Î¤ß»ÈÍѤ·¤Þ¤¹¡£
+呼ã³å‡ºã•ã‚Œã‚‹Javaアーカイブ(JAR)ファイルã®åå‰ã€‚\fI\-jar\fRオプションã¨ä¸€ç·’ã«ã®ã¿ä½¿ç”¨ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIargs\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸ\fImain()\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤ÏJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò³«»Ï¤·¤Þ¤¹¡£Java Runtime Environment (JRE)¤òµ¯Æ°¤·¤¿¸å¡¢»ØÄꤷ¤¿¥¯¥é¥¹¤ò¥í¡¼¥É¤·¡¢¤½¤Î¥¯¥é¥¹¤Î\fImain()\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ë¤è¤ê¡¢¤³¤ì¤ò¹Ô¤¤¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ï¡¢\fIpublic\fR¤ª¤è¤Ó\fIstatic\fR¤È¤·¤ÆÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢ÃͤÏÊÖ¤»¤Þ¤»¤ó¡£¤µ¤é¤Ë¡¢\fIString\fRÇÛÎó¤ò¥Ñ¥é¥á¡¼¥¿¤È¤·¤Æ»ØÄê¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥ÉÀë¸À¤Ï¼¡¤Î·Á¼°¤ò´Þ¤ß¤Þ¤¹¡£
+\fIjava\fRコマンドã¯Javaアプリケーションを開始ã—ã¾ã™ã€‚Java Runtime Environment (JRE)ã‚’èµ·å‹•ã—ãŸå¾Œã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ã‚’ロードã—ã€ãã®ã‚¯ãƒ©ã‚¹ã®\fImain()\fRメソッドを呼ã³å‡ºã™ã“ã¨ã«ã‚ˆã‚Šã€ã“れを行ã„ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€\fIpublic\fRãŠã‚ˆã³\fIstatic\fRã¨ã—ã¦å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€å€¤ã¯è¿”ã›ã¾ã›ã‚“。ã•ã‚‰ã«ã€\fIString\fRé…列をパラメータã¨ã—ã¦æŒ‡å®šã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚メソッド宣言ã¯æ¬¡ã®å½¢å¼ã‚’å«ã¿ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -105,16 +105,16 @@
 .RE
 .\}
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fImain()\fR¥á¥½¥Ã¥É¤¬¤¢¤ë¤«\fIjavafx\&.application\&.Application\fR¤ò³ÈÄ¥¤¹¤ë¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¤³¤È¤Ç¡¢JavaFX¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òµ¯Æ°¤Ç¤­¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¡¢µ¯Æ°¥Ä¡¼¥ë¤Ï\fIApplication\fR¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¹½À®¤·¡¢¤½¤Î\fIinit()\fR¥á¥½¥Ã¥É¤ò¥³¡¼¥ë¤·¡¢\fIstart(javafx\&.stage\&.Stage)\fR¥á¥½¥Ã¥É¤ò¥³¡¼¥ë¤·¤Þ¤¹¡£
+\fIjava\fRコマンドを使用ã—ã¦ã€\fImain()\fRメソッドãŒã‚ã‚‹ã‹\fIjavafx\&.application\&.Application\fRã‚’æ‹¡å¼µã™ã‚‹ã‚¯ãƒ©ã‚¹ã‚’ロードã™ã‚‹ã“ã¨ã§ã€JavaFXアプリケーションを起動ã§ãã¾ã™ã€‚後者ã®å ´åˆã€èµ·å‹•ãƒ„ールã¯\fIApplication\fRクラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’構æˆã—ã€ãã®\fIinit()\fRメソッドをコールã—ã€\fIstart(javafx\&.stage\&.Stage)\fRメソッドをコールã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¤Ê¤¤ºÇ½é¤Î°ú¿ô¤Ï¡¢¸Æ¤Ó½Ð¤µ¤ì¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ̾¤Ç¤¹¡£\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î°ú¿ô¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£µ¯Æ°¥¯¥é¥¹¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î\fIMain\-Class\fR¥Þ¥Ë¥Õ¥§¥¹¥È¡¦¥Ø¥Ã¥À¡¼¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€\fIjava\fRコマンドã®ã‚ªãƒ—ションã§ã¯ãªã„最åˆã®å¼•æ•°ã¯ã€å‘¼ã³å‡ºã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾åã§ã™ã€‚\fI\-jar\fRオプションを指定ã—ãŸå ´åˆã€ãã®å¼•æ•°ã¯ã€ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€JARファイルã®åå‰ã«ãªã‚Šã¾ã™ã€‚起動クラスã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®\fIMain\-Class\fRマニフェスト・ヘッダーã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-JRE¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¡¢¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤ª¤è¤Ó¥æ¡¼¥¶¡¼¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Î3²Õ½ê¤«¤é¡¢µ¯Æ°¥¯¥é¥¹(¤ª¤è¤Ó¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¾¤Î¥¯¥é¥¹)¤ò¸¡º÷¤·¤Þ¤¹¡£
+JREã¯ã€ãƒ–ートストラップ・クラス・パスã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ¸ˆæ‹¡å¼µæ©Ÿèƒ½ãŠã‚ˆã³ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®3箇所ã‹ã‚‰ã€èµ·å‹•ã‚¯ãƒ©ã‚¹(ãŠã‚ˆã³ã‚¢ãƒ—リケーションã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ä»–ã®ã‚¯ãƒ©ã‚¹)を検索ã—ã¾ã™ã€‚
 .PP
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤Î¸å¤Î°ú¿ô¤Ï¡¢\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+クラス・ファイルåã¾ãŸã¯JARファイルåã®å¾Œã®å¼•æ•°ã¯ã€\fImain()\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjava\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥«¥Æ¥´¥ê¤ËʬÎà¤Ç¤­¤ë¹­ÈϤʥª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
+\fIjava\fRコマンドã¯ã€æ¬¡ã®ã‚«ãƒ†ã‚´ãƒªã«åˆ†é¡žã§ãる広範ãªã‚ªãƒ—ションをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -124,7 +124,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɸ½à¥ª¥×¥·¥ç¥ó
+標準オプション
 .RE
 .sp
 .RS 4
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó
+éžæ¨™æº–オプション
 .RE
 .sp
 .RS 4
@@ -146,7 +146,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥé¥ó¥¿¥¤¥à¡¦¥ª¥×¥·¥ç¥ó
+高度ãªãƒ©ãƒ³ã‚¿ã‚¤ãƒ ãƒ»ã‚ªãƒ—ション
 .RE
 .sp
 .RS 4
@@ -157,7 +157,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅÙ¤ÊJIT¥³¥ó¥Ñ¥¤¥é¡¦¥ª¥×¥·¥ç¥ó
+高度ãªJITコンパイラ・オプション
 .RE
 .sp
 .RS 4
@@ -168,7 +168,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥµ¡¼¥Ó¥¹¥¢¥Ó¥ê¥Æ¥£¡¦¥ª¥×¥·¥ç¥ó
+高度ãªã‚µãƒ¼ãƒ“スアビリティ・オプション
 .RE
 .sp
 .RS 4
@@ -179,31 +179,31 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¹âÅ٤ʥ¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥ª¥×¥·¥ç¥ó
+高度ãªã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚ªãƒ—ション
 .RE
 .PP
-ɸ½à¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java Virtual Machine (JVM)¤Î¤¹¤Ù¤Æ¤Î¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤¹¤ë¤³¤È¤¬Êݾڤµ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢JRE¤Î¥Ð¡¼¥¸¥ç¥ó¤Î³Îǧ¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÀßÄê¡¢¾éĹ¤Ê½ÐÎϤÎÍ­¸ú²½¤Ê¤É¤Î°ìÈÌŪ¤Ê¥¢¥¯¥·¥ç¥ó¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+標準ã®ã‚ªãƒ—ションã¯ã€Java Virtual Machine (JVM)ã®ã™ã¹ã¦ã®å®Ÿè£…ã§ã‚µãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ãŒä¿è¨¼ã•ã‚Œã¾ã™ã€‚ã“れらã¯ã€JREã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ç¢ºèªã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®è¨­å®šã€å†—é•·ãªå‡ºåŠ›ã®æœ‰åŠ¹åŒ–ãªã©ã®ä¸€èˆ¬çš„ãªã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-ɸ½à°Ê³°¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot²¾ÁÛ¥Þ¥·¥ó¤Ë¸ÇÍ­¤ÎÈÆÍÑ¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ë¤¿¤á¡¢¤¹¤Ù¤Æ¤ÎJVM¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ÏÊݾڤµ¤ì¤º¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-X\fR¤Ç³«»Ï¤·¤Þ¤¹¡£
+標準以外ã®ã‚ªãƒ—ションã¯ã€Java HotSpot仮想マシンã«å›ºæœ‰ã®æ±Žç”¨ã‚ªãƒ—ションã§ã‚ã‚‹ãŸã‚ã€ã™ã¹ã¦ã®JVM実装ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã¯ä¿è¨¼ã•ã‚Œãšã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã¯\fI\-X\fRã§é–‹å§‹ã—ã¾ã™ã€‚
 .PP
-³ÈÄ¥¥ª¥×¥·¥ç¥ó¤Ï¡¢ÉÔÍѰդ˻ÈÍѤ·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢ÆÃÄê¤Î¥·¥¹¥Æ¥àÍ×·ï¤ò»ý¤Ä¤³¤È¤¬Â¿¤¯¡¢¥·¥¹¥Æ¥à¹½À®¥Ñ¥é¥á¡¼¥¿¤Ø¤ÎÆø¢¥¢¥¯¥»¥¹¤¬É¬Íפʾì¹ç¤¬¤¢¤ëJava HotSpot²¾ÁÛ¥Þ¥·¥óÁàºî¤ÎÆÃÄê¤ÎÎΰè¤òÄ´À°¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë³«È¯¼Ô¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£¤³¤ì¤é¤Ï¡¢¤¹¤Ù¤Æ¤ÎJVM¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ÏÊݾڤµ¤ì¤º¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£³ÈÄ¥¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX\fR¤Ç»Ï¤Þ¤ê¤Þ¤¹¡£
+拡張オプションã¯ã€ä¸ç”¨æ„ã«ä½¿ç”¨ã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚ã“れらã¯ã€ç‰¹å®šã®ã‚·ã‚¹ãƒ†ãƒ è¦ä»¶ã‚’æŒã¤ã“ã¨ãŒå¤šãã€ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆãƒ‘ラメータã¸ã®ç‰¹æ¨©ã‚¢ã‚¯ã‚»ã‚¹ãŒå¿…è¦ãªå ´åˆãŒã‚ã‚‹Java HotSpot仮想マシンæ“作ã®ç‰¹å®šã®é ˜åŸŸã‚’調整ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹é–‹ç™ºè€…オプションã§ã™ã€‚ã“れらã¯ã€ã™ã¹ã¦ã®JVM実装ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã¯ä¿è¨¼ã•ã‚Œãšã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚拡張オプションã¯\fI\-XX\fRã§å§‹ã¾ã‚Šã¾ã™ã€‚
 .PP
-ºÇ¿·¥ê¥ê¡¼¥¹¤ÇÈó¿ä¾©¤Þ¤¿¤Ïºï½ü¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó¤òÄÉÀפ¹¤ë¤¿¤á¤Ë¡¢¥É¥­¥å¥á¥ó¥È¤ÎºÇ¸å¤ËÈó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤È¤¤¤¦Ì¾Á°¤Î¥»¥¯¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£
+最新リリースã§éžæŽ¨å¥¨ã¾ãŸã¯å‰Šé™¤ã•ã‚Œã‚‹ã‚ªãƒ—ションを追跡ã™ã‚‹ãŸã‚ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®æœ€å¾Œã«éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ションã¨ã„ã†åå‰ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥Ö¡¼¥ë¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëµ¡Ç½¤òÍ­¸ú¤Ë¤·¤¿¤ê¡¢¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëµ¡Ç½¤ò̵¸ú¤Ë¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤òɬÍפȤ·¤Þ¤»¤ó¡£¥Ö¡¼¥ëÃÍ\fI\-XX\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥×¥é¥¹µ­¹æ(\fI\-XX:+\fR\fIOptionName\fR)¤ò»ÈÍѤ·¤ÆÍ­¸ú¤Ë¤·¡¢¥Þ¥¤¥Ê¥¹µ­¹æ(\fI\-XX:\-\fR\fIOptionName\fR)¤ò»ÈÍѤ·¤Æ̵¸ú¤Ë¤·¤Þ¤¹¡£
+ブール・オプションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ã„る機能を有効ã«ã—ãŸã‚Šã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„る機能を無効ã«ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ˆã†ãªã‚ªãƒ—ションã¯ã€ãƒ‘ラメータを必è¦ã¨ã—ã¾ã›ã‚“。ブール値\fI\-XX\fRオプションã¯ã€ãƒ—ラス記å·(\fI\-XX:+\fR\fIOptionName\fR)を使用ã—ã¦æœ‰åŠ¹ã«ã—ã€ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\fI\-XX:\-\fR\fIOptionName\fR)を使用ã—ã¦ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
 .PP
-°ú¿ô¤¬É¬Íפʥª¥×¥·¥ç¥ó¤Î¾ì¹ç¡¢°ú¿ô¤Ï¡¢¥ª¥×¥·¥ç¥ó̾¤ò¶õÇò¡¢¥³¥í¥ó(:)¤Þ¤¿¤ÏÅù¹æ(=)¤Ç¶èÀڤ俤â¤Î¤Ë¤Ê¤ë¤«¡¢¤¢¤ë¤¤¤Ï°ú¿ô¤¬¥ª¥×¥·¥ç¥ó¤Î¸å¤ËľÀܳ¤¯¾ì¹ç¤â¤¢¤ê¤Þ¤¹(Àµ³Î¤Ê¹½Ê¸¤Ï³Æ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹)¡£¥µ¥¤¥º¤ò¥Ð¥¤¥Èñ°Ì¤Ç»ØÄꤹ¤ë¤è¤¦µá¤á¤é¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ÀÜÈø¼­¤ò»ÈÍѤ·¤Ê¤¤¤«¡¢¤¢¤ë¤¤¤Ï¥­¥í¥Ð¥¤¥È(KB)¤Ë¤ÏÀÜÈø¼­\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È(MB)¤Ë¤ÏÀÜÈø¼­\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È(GB)¤Ë¤ÏÀÜÈø¼­\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥µ¥¤¥º¤ò8GB¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢\fI8g\fR¡¢\fI8192m\fR¡¢\fI8388608k\fR¤Þ¤¿¤Ï\fI8589934592\fR¤Î¤¤¤º¤ì¤«¤ò°ú¿ô¤È¤·¤Æ»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¡¼¥»¥ó¥È¤Î»ØÄ꤬ɬÍפʾì¹ç¤Ï¡¢0¤«¤é1¤Î¿ôÃͤò»ÈÍѤ·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢25%¤Î¾ì¹ç¤Ï\fI0\&.25\fR¤ò»ØÄꤷ¤Þ¤¹)¡£
-.SS "ɸ½à¥ª¥×¥·¥ç¥ó"
+引数ãŒå¿…è¦ãªã‚ªãƒ—ションã®å ´åˆã€å¼•æ•°ã¯ã€ã‚ªãƒ—ションåを空白ã€ã‚³ãƒ­ãƒ³(:)ã¾ãŸã¯ç­‰å·(=)ã§åŒºåˆ‡ã£ãŸã‚‚ã®ã«ãªã‚‹ã‹ã€ã‚ã‚‹ã„ã¯å¼•æ•°ãŒã‚ªãƒ—ションã®å¾Œã«ç›´æŽ¥ç¶šãå ´åˆã‚‚ã‚ã‚Šã¾ã™(正確ãªæ§‹æ–‡ã¯å„オプションã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™)。サイズをãƒã‚¤ãƒˆå˜ä½ã§æŒ‡å®šã™ã‚‹ã‚ˆã†æ±‚ã‚られã¦ã„ã‚‹å ´åˆã€æŽ¥å°¾è¾žã‚’使用ã—ãªã„ã‹ã€ã‚ã‚‹ã„ã¯ã‚­ãƒ­ãƒã‚¤ãƒˆ(KB)ã«ã¯æŽ¥å°¾è¾ž\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆ(MB)ã«ã¯æŽ¥å°¾è¾ž\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆ(GB)ã«ã¯æŽ¥å°¾è¾ž\fIg\fRã¾ãŸã¯\fIG\fRを使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚µã‚¤ã‚ºã‚’8GBã«è¨­å®šã™ã‚‹ã«ã¯ã€\fI8g\fRã€\fI8192m\fRã€\fI8388608k\fRã¾ãŸã¯\fI8589934592\fRã®ã„ãšã‚Œã‹ã‚’引数ã¨ã—ã¦æŒ‡å®šã§ãã¾ã™ã€‚パーセントã®æŒ‡å®šãŒå¿…è¦ãªå ´åˆã¯ã€0ã‹ã‚‰1ã®æ•°å€¤ã‚’使用ã—ã¾ã™(ãŸã¨ãˆã°ã€25%ã®å ´åˆã¯\fI0\&.25\fRを指定ã—ã¾ã™)。
+.SS "標準オプション"
 .PP
-¤³¤ì¤é¤Ï¡¢JVM¤Î¤¹¤Ù¤Æ¤Î¼ÂÁõ¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëºÇ¤â°ìÈÌŪ¤Ë»ÈÍѤµ¤ì¤ë¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+ã“れらã¯ã€JVMã®ã™ã¹ã¦ã®å®Ÿè£…ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æœ€ã‚‚一般的ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚ªãƒ—ションã§ã™ã€‚
 .PP
 \-agentlib:\fIlibname\fR[=\fIoptions\fR]
 .RS 4
-»ØÄꤷ¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¥é¥¤¥Ö¥é¥ê̾¤Î¸å¤Ë¡¢¥é¥¤¥Ö¥é¥ê¤Ë¸ÇÍ­¤Î¥ª¥×¥·¥ç¥ó¤Î¥«¥ó¥Þ¶èÀÚ¤ê¥ê¥¹¥È¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+指定ã—ãŸãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリをロードã—ã¾ã™ã€‚ライブラリåã®å¾Œã«ã€ãƒ©ã‚¤ãƒ–ラリã«å›ºæœ‰ã®ã‚ªãƒ—ションã®ã‚«ãƒ³ãƒžåŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã‚’使用ã§ãã¾ã™ã€‚
 .sp
-¥ª¥×¥·¥ç¥ó\fI\-agentlib:foo\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢JVM¤Ï¡¢\fILD_LIBRARY_PATH\fR¥·¥¹¥Æ¥àÊÑ¿ô(OS X¤Ç¤Ï¡¢¤³¤ÎÊÑ¿ô¤Ï\fIDYLD_LIBRARY_PATH\fR¤Ë¤Ê¤ê¤Þ¤¹)¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Ë\fIlibfoo\&.so\fR¤È¤¤¤¦Ì¾Á°¤Î¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤è¤¦¤È¤·¤Þ¤¹¡£
+オプション\fI\-agentlib:foo\fRを指定ã—ãŸå ´åˆã€JVMã¯ã€\fILD_LIBRARY_PATH\fRシステム変数(OS Xã§ã¯ã€ã“ã®å¤‰æ•°ã¯\fIDYLD_LIBRARY_PATH\fRã«ãªã‚Šã¾ã™)ã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã«\fIlibfoo\&.so\fRã¨ã„ã†åå‰ã®ãƒ©ã‚¤ãƒ–ラリをロードã—よã†ã¨ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥¿¥Ã¥¯¤Î¿¼¤µ3¤Ç¡¢20¥ß¥êÉ䴤Ȥ˥ҡ¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë(HPROF)¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Æ¡¢¥µ¥ó¥×¥ë¤ÎCPU¾ðÊó¤ò¼èÆÀ¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ã‚¿ãƒƒã‚¯ã®æ·±ã•3ã§ã€20ミリ秒ã”ã¨ã«ãƒ’ープ・プロファイリング・ツール(HPROF)ライブラリをロードã—ã¦ã€ã‚µãƒ³ãƒ—ルã®CPU情報をå–å¾—ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -214,7 +214,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î¥í¡¼¥ÉÁ°¤ËJVM¤ò°ì»þÄä»ß¤·¤Æ¡¢Java¥Ç¥Ð¥Ã¥°¡¦¥ï¥¤¥ä¡¦¥×¥í¥È¥³¥ë(JDWP)¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Æ¡¢¥Ý¡¼¥È8000¤Ç¤Î¥½¥±¥Ã¥ÈÀܳÍѤ˥ꥹ¥Ë¥ó¥°¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®ãƒ­ãƒ¼ãƒ‰å‰ã«JVMを一時åœæ­¢ã—ã¦ã€Javaデãƒãƒƒã‚°ãƒ»ãƒ¯ã‚¤ãƒ¤ãƒ»ãƒ—ロトコル(JDWP)ライブラリをロードã—ã¦ã€ãƒãƒ¼ãƒˆ8000ã§ã®ã‚½ã‚±ãƒƒãƒˆæŽ¥ç¶šç”¨ã«ãƒªã‚¹ãƒ‹ãƒ³ã‚°ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -225,7 +225,7 @@
 .if n \{\
 .RE
 .\}
-¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤Î¾ÜºÙ¤Ï¡¢¼¡¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリã®è©³ç´°ã¯ã€æ¬¡ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -235,7 +235,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.html¤Ë¤¢¤ë\fIjava\&.lang\&.instrument\fR¥Ñ¥Ã¥±¡¼¥¸¤ÎÀâÌÀ
+http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.htmlã«ã‚ã‚‹\fIjava\&.lang\&.instrument\fRパッケージã®èª¬æ˜Ž
 .RE
 .sp
 .RS 4
@@ -246,54 +246,54 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/platform/jvmti/jvmti\&.html#starting¤Ë¤¢¤ëJVM¥Ä¡¼¥ë¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥¬¥¤¥É¤Î¥¨¡¼¥¸¥§¥ó¥È¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ë¹à
+http://docs\&.oracle\&.com/javase/8/docs/platform/jvmti/jvmti\&.html#startingã«ã‚ã‚‹JVMツール・インタフェース・ガイドã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã«é–¢ã™ã‚‹é …
 .RE
 .RE
 .PP
 \-agentpath:\fIpathname\fR[=\fIoptions\fR]
 .RS 4
-ÀäÂХѥ¹Ì¾¤Ç»ØÄꤵ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥¨¡¼¥¸¥§¥ó¥È¡¦¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-agentlib\fR¤ÈƱÅù¤Ç¤¹¤¬¡¢¥é¥¤¥Ö¥é¥ê¤Î¥Õ¥ë¡¦¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤ò»ÈÍѤ·¤Þ¤¹¡£
+絶対パスåã§æŒ‡å®šã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–・エージェント・ライブラリをロードã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-agentlib\fRã¨åŒç­‰ã§ã™ãŒã€ãƒ©ã‚¤ãƒ–ラリã®ãƒ•ãƒ«ãƒ»ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-client
 .RS 4
-Java HotSpot Client VM¤òÁªÂò¤·¤Þ¤¹¡£64¥Ó¥Ã¥È¡¦¥Ð¡¼¥¸¥ç¥ó¤ÎJava SE Development Kit (JDK)¤Ç¤Ï¡¢¸½ºß¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¡¢¤«¤ï¤ê¤ËServer JVM¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+Java HotSpot Client VMã‚’é¸æŠžã—ã¾ã™ã€‚64ビット・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®Java SE Development Kit (JDK)ã§ã¯ã€ç¾åœ¨ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡è¦–ã•ã‚Œã€ã‹ã‚ã‚Šã«Server JVMãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎJVMÁªÂò¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.html¤Ë¤¢¤ë
-¥µ¡¼¥Ð¡¼¥¯¥é¥¹¡¦¥Þ¥·¥ó¤Î¸¡½Ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®JVMé¸æŠžã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.htmlã«ã‚ã‚‹
+サーãƒãƒ¼ã‚¯ãƒ©ã‚¹ãƒ»ãƒžã‚·ãƒ³ã®æ¤œå‡ºã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-D\fIproperty\fR=\fIvalue\fR
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÀßÄꤷ¤Þ¤¹¡£\fIproperty\fRÊÑ¿ô¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¤Î̾Á°¤òɽ¤¹¡¢¶õÇò¤Î¤Ê¤¤Ê¸»úÎó¤Ç¤¹¡£\fIvalue\fRÊÑ¿ô¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòɽ¤¹Ê¸»úÎó¤Ç¤¹¡£\fIvalue\fR¤¬¶õÇò¤ò´Þ¤àʸ»úÎó¤Î¾ì¹ç¡¢¤½¤ì¤ò°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹(Îã:
-\fI\-Dfoo="foo bar"\fR)¡£
+システム・プロパティã®å€¤ã‚’設定ã—ã¾ã™ã€‚\fIproperty\fR変数ã¯ã€ãƒ—ロパティã®åå‰ã‚’表ã™ã€ç©ºç™½ã®ãªã„文字列ã§ã™ã€‚\fIvalue\fR変数ã¯ã€ãƒ—ロパティã®å€¤ã‚’表ã™æ–‡å­—列ã§ã™ã€‚\fIvalue\fRãŒç©ºç™½ã‚’å«ã‚€æ–‡å­—列ã®å ´åˆã€ãれを引用符ã§å›²ã¿ã¾ã™(例:
+\fI\-Dfoo="foo bar"\fR)。
 .RE
 .PP
 \-d32
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤·¤Þ¤¹¡£32¥Ó¥Ã¥È´Ä¶­¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢64¥Ó¥Ã¥È¡¦¥·¥¹¥Æ¥à¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤ò½ü¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+アプリケーションを32ビット環境ã§å®Ÿè¡Œã—ã¾ã™ã€‚32ビット環境ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„ã‹ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€64ビット・システムãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ãã€ã‚¢ãƒ—リケーションã¯32ビット環境ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-d64
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò64¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤·¤Þ¤¹¡£64¥Ó¥Ã¥È´Ä¶­¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢64¥Ó¥Ã¥È¡¦¥·¥¹¥Æ¥à¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤ò½ü¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï32¥Ó¥Ã¥È´Ä¶­¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+アプリケーションを64ビット環境ã§å®Ÿè¡Œã—ã¾ã™ã€‚64ビット環境ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„ã‹ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€64ビット・システムãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã‚’除ãã€ã‚¢ãƒ—リケーションã¯32ビット環境ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .sp
-¸½ºß¤Î¤È¤³¤í¡¢Java HotSpot Server VM¤Î¤ß¤¬64¥Ó¥Ã¥È¤ÎÁàºî¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢\fI\-d64\fR»ÈÍÑ»þ¤Ë¤Ï\fI\-server\fR¥ª¥×¥·¥ç¥ó¤¬°ÅÌÛŪ¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-d64\fR»ÈÍÑ»þ¤Ë¤Ï¡¢\fI\-client\fR¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤³¤Î»ÅÍͤϡ¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÊѹ¹¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ç¾åœ¨ã®ã¨ã“ã‚ã€Java HotSpot Server VMã®ã¿ãŒ64ビットã®æ“作をサãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€\fI\-d64\fR使用時ã«ã¯\fI\-server\fRオプションãŒæš—黙的ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-d64\fR使用時ã«ã¯ã€\fI\-client\fRオプションã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã“ã®ä»•æ§˜ã¯ã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯å¤‰æ›´ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-disableassertions[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR], \-da[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR]
 .RS 4
-¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¢¥µ¡¼¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+アサーションを無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã¯ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚
 .sp
-°ú¿ô¤Ê¤·¤Î\fI\-disableassertions\fR
-(\fI\-da\fR)¤ò»ØÄꤹ¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.\&.\&.\fR¤Ç½ª¤ï¤ë\fIpackagename\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£°ú¿ô¤È¤·¤Æ\fI\&.\&.\&.\fR¤Î¤ß¤ò»ØÄꤹ¤ë¤È¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë̾Á°¤Î¤Ê¤¤¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIclassname\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢ÀÚÂؤ¨¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ãªã—ã®\fI\-disableassertions\fR
+(\fI\-da\fR)を指定ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fI\&.\&.\&.\fRã§çµ‚ã‚ã‚‹\fIpackagename\fR引数を指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚引数ã¨ã—ã¦\fI\&.\&.\&.\fRã®ã¿ã‚’指定ã™ã‚‹ã¨ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹åå‰ã®ãªã„パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIclassname\fR引数を指定ã™ã‚‹ã¨ã€åˆ‡æ›¿ãˆã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
 \fI\-disableassertions\fR
-(\fI\-da\fR)¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ª¤è¤Ó¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤¹(¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ë¤Ï¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î¥ë¡¼¥ë¤Ë¤Ï1¤ÄÎã³°¤¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò´Êñ¤Ë̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-disablesystemassertions\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+(\fI\-da\fR)オプションã¯ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã™(システム・クラスã«ã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®ãƒ«ãƒ¼ãƒ«ã«ã¯1ã¤ä¾‹å¤–ãŒã‚ã‚Šã¾ã™ã€‚オプションã®å¼•æ•°ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã‚’除ãã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç°¡å˜ã«ç„¡åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-disablesystemassertions\fRオプションを使用ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¤ä¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÌÀ¼¨Åª¤ËÍ­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-enableassertions\fR
-(\fI\-ea\fR)¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Î¾Êý¤Î¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ñ¥Ã¥±¡¼¥¸\fIcom\&.wombat\&.fruitbat\fR
-(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥¯¥é¥¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fR¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Æ¡¢\fIMyClass\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+特定ã®ãƒ‘ッケージやクラスã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’明示的ã«æœ‰åŠ¹ã«ã™ã‚‹ã«ã¯ã€\fI\-enableassertions\fR
+(\fI\-ea\fR)オプションを使用ã—ã¾ã™ã€‚両方ã®ã‚ªãƒ—ションをåŒæ™‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‘ッケージ\fIcom\&.wombat\&.fruitbat\fR
+(ãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ)ã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¦ã€ã‚¯ãƒ©ã‚¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fRã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¦ã€\fIMyClass\fRアプリケーションを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -308,22 +308,22 @@
 .PP
 \-disablesystemassertions, \-dsa
 .RS 4
-¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-enableassertions[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR], \-ea[:[\fIpackagename\fR]\&.\&.\&.|:\fIclassname\fR]
 .RS 4
-¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¢¥µ¡¼¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+アサーションを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã¯ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚
 .sp
-°ú¿ô¤Ê¤·¤Î\fI\-enableassertions\fR
-(\fI\-ea\fR)¤ò»ØÄꤹ¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\&.\&.\&.\fR¤Ç½ª¤ï¤ë\fIpackagename\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£°ú¿ô¤È¤·¤Æ\fI\&.\&.\&.\fR¤Î¤ß¤ò»ØÄꤹ¤ë¤È¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë̾Á°¤Î¤Ê¤¤¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIclassname\fR°ú¿ô¤ò»ØÄꤹ¤ë¤È¡¢ÀÚÂؤ¨¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+引数ãªã—ã®\fI\-enableassertions\fR
+(\fI\-ea\fR)を指定ã™ã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fI\&.\&.\&.\fRã§çµ‚ã‚ã‚‹\fIpackagename\fR引数を指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚引数ã¨ã—ã¦\fI\&.\&.\&.\fRã®ã¿ã‚’指定ã™ã‚‹ã¨ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹åå‰ã®ãªã„パッケージ内ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIclassname\fR引数を指定ã™ã‚‹ã¨ã€åˆ‡æ›¿ãˆã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
 \fI\-enableassertions\fR
-(\fI\-ea\fR)¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ª¤è¤Ó¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤¹(¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ë¤Ï¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î¥ë¡¼¥ë¤Ë¤Ï1¤ÄÎã³°¤¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ËŬÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤ò´Êñ¤ËÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-enablesystemassertions\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ëÊ̤Υ¹¥¤¥Ã¥Á¤òÄ󶡤·¤Þ¤¹¡£
+(\fI\-ea\fR)オプションã¯ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã™(システム・クラスã«ã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®ãƒ«ãƒ¼ãƒ«ã«ã¯1ã¤ä¾‹å¤–ãŒã‚ã‚Šã¾ã™ã€‚オプションã®å¼•æ•°ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã«é©ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã‚’除ãã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç°¡å˜ã«æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-enablesystemassertions\fRオプションã¯ã€ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹åˆ¥ã®ã‚¹ã‚¤ãƒƒãƒã‚’æä¾›ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¤ä¥¯¥é¥¹¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÌÀ¼¨Åª¤Ë̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-disableassertions\fR
-(\fI\-da\fR)¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Ã±°ì¥³¥Þ¥ó¥É¤Ë¤³¤ì¤é¤Î¥¹¥¤¥Ã¥Á¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÊ£¿ô»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢»ØÄꤷ¤¿¥¹¥¤¥Ã¥Á¤¬½çÈ֤˽èÍý¤µ¤ì¤Æ¤«¤é¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ñ¥Ã¥±¡¼¥¸\fIcom\&.wombat\&.fruitbat\fR
-(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¤Î¤ß¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥¯¥é¥¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fR¤Ç¤Ï¥¢¥µ¡¼¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Æ¡¢\fIMyClass\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+特定ã®ãƒ‘ッケージやクラスã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’明示的ã«ç„¡åŠ¹ã«ã™ã‚‹ã«ã¯ã€\fI\-disableassertions\fR
+(\fI\-da\fR)オプションを使用ã—ã¾ã™ã€‚å˜ä¸€ã‚³ãƒžãƒ³ãƒ‰ã«ã“れらã®ã‚¹ã‚¤ãƒƒãƒã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’複数指定ã—ãŸå ´åˆã¯ã€æŒ‡å®šã—ãŸã‚¹ã‚¤ãƒƒãƒãŒé †ç•ªã«å‡¦ç†ã•ã‚Œã¦ã‹ã‚‰ã‚¯ãƒ©ã‚¹ãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‘ッケージ\fIcom\&.wombat\&.fruitbat\fR
+(ãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ)ã§ã®ã¿ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¦ã€ã‚¯ãƒ©ã‚¹\fIcom\&.wombat\&.fruitbat\&.Brickbat\fRã§ã¯ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’無効ã«ã—ã¦ã€\fIMyClass\fRアプリケーションを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -338,21 +338,21 @@
 .PP
 \-enablesystemassertions, \-esa
 .RS 4
-¤¹¤Ù¤Æ¤Î¥·¥¹¥Æ¥à¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥µ¡¼¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚¯ãƒ©ã‚¹å†…ã§ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help, \-?
 .RS 4
-¼ÂºÝ¤ËJVM¤ò¼Â¹Ô¤»¤º¤Ë¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î»ÈÍѾõ¶·¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+実際ã«JVMを実行ã›ãšã«ã€\fIjava\fRコマンドã®ä½¿ç”¨çŠ¶æ³æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-jar \fIfilename\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤Ë¥«¥×¥»¥ë²½¤µ¤ì¤¿¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fIfilename\fR°ú¿ô¤Ï¡¢»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«»ÏÅÀ¤È¤·¤Æµ¡Ç½¤¹¤ë\fIpublic static void main(String[] args)\fR¥á¥½¥Ã¥É¤òÄêµÁ¤¹¤ë¡¢\fIMain\-Class:\fR\fIclassname\fR¤È¤¤¤¦·Á¼°¤Î1¹Ô¤ò´Þ¤à¥Þ¥Ë¥Õ¥§¥¹¥È¤ò»ý¤ÄJAR¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ç¤¹¡£
+JARファイルã«ã‚«ãƒ—セル化ã•ã‚ŒãŸãƒ—ログラムを実行ã—ã¾ã™ã€‚\fIfilename\fR引数ã¯ã€ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ—リケーションã®é–‹å§‹ç‚¹ã¨ã—ã¦æ©Ÿèƒ½ã™ã‚‹\fIpublic static void main(String[] args)\fRメソッドを定義ã™ã‚‹ã€\fIMain\-Class:\fR\fIclassname\fRã¨ã„ã†å½¢å¼ã®1行をå«ã‚€ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆã‚’æŒã¤JARファイルã®åå‰ã§ã™ã€‚
 .sp
-\fI\-jar\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢»ØÄꤷ¤¿JAR¥Õ¥¡¥¤¥ë¤¬¤¹¤Ù¤Æ¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤Î¥½¡¼¥¹¤Ë¤Ê¤ê¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¾¤ÎÀßÄê¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£
+\fI\-jar\fRオプションを使用ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸJARファイルãŒã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã®ã‚½ãƒ¼ã‚¹ã«ãªã‚Šã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ä»–ã®è¨­å®šã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢¼¡¤Î¥ê¥½¡¼¥¹¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JARファイルã®è©³ç´°ã¯ã€æ¬¡ã®ãƒªã‚½ãƒ¼ã‚¹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -373,7 +373,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jar/index\&.html¤Ë¤¢¤ëJava¥¢¡¼¥«¥¤¥Ö(JAR)¥Õ¥¡¥¤¥ë¤Î¥¬¥¤¥É
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jar/index\&.htmlã«ã‚ã‚‹Javaアーカイブ(JAR)ファイルã®ã‚¬ã‚¤ãƒ‰
 .RE
 .sp
 .RS 4
@@ -384,42 +384,42 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.html¤Ë¤¢¤ë
-¡Ö¥ì¥Ã¥¹¥ó: JAR¥Õ¥¡¥¤¥ë¤Î¥×¥í¥°¥é¥à¤Î¥Ñ¥Ã¥±¡¼¥¸²½¡×
+http://docs\&.oracle\&.com/javase/tutorial/deployment/jar/index\&.htmlã«ã‚ã‚‹
+「レッスン: JARファイルã®ãƒ—ログラムã®ãƒ‘ッケージ化ã€
 .RE
 .RE
 .PP
 \-javaagent:\fIjarpath\fR[=\fIoptions\fR]
 .RS 4
-»ØÄꤷ¤¿Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¥¨¡¼¥¸¥§¥ó¥È¤ò¥í¡¼¥É¤·¤Þ¤¹¡£Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥È¤Î¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.html¤Ë¤¢¤ëJava API¥É¥­¥å¥á¥ó¥È¤Î\fIjava\&.lang\&.instrument\fR¥Ñ¥Ã¥±¡¼¥¸¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã—ãŸJavaプログラミング言語エージェントをロードã—ã¾ã™ã€‚Javaアプリケーションã®ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒˆã®è©³ç´°ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/api/java/lang/instrument/package\-summary\&.htmlã«ã‚ã‚‹Java APIドキュメントã®\fIjava\&.lang\&.instrument\fRパッケージã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-jre\-restrict\-search
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥×¥é¥¤¥Ù¡¼¥È¤ÊJRE¤ò¥Ð¡¼¥¸¥ç¥ó¸¡º÷¤Ë´Þ¤á¤Þ¤¹¡£
+ユーザー・プライベートãªJREã‚’ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ¤œç´¢ã«å«ã‚ã¾ã™ã€‚
 .RE
 .PP
 \-no\-jre\-restrict\-search
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥×¥é¥¤¥Ù¡¼¥È¤ÊJRE¤ò¥Ð¡¼¥¸¥ç¥ó¸¡º÷¤«¤é½ü³°¤·¤Þ¤¹¡£
+ユーザー・プライベートãªJREã‚’ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ¤œç´¢ã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚
 .RE
 .PP
 \-server
 .RS 4
-Java HotSpot Server VM¤òÁªÂò¤·¤Þ¤¹¡£64¥Ó¥Ã¥È¡¦¥Ð¡¼¥¸¥ç¥ó¤ÎJDK¤Ç¤Ï¡¢Server VM¤Î¤ß¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢¤½¤Î¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï°ÅÌÛŪ¤Ç¤¹¡£
+Java HotSpot Server VMã‚’é¸æŠžã—ã¾ã™ã€‚64ビット・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®JDKã§ã¯ã€Server VMã®ã¿ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€ãã®å ´åˆã€ã“ã®ã‚ªãƒ—ションã¯æš—黙的ã§ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎJVMÁªÂò¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.html¤Ë¤¢¤ë
-¥µ¡¼¥Ð¡¼¥¯¥é¥¹¡¦¥Þ¥·¥ó¤Î¸¡½Ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã®JVMé¸æŠžã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/server\-class\&.htmlã«ã‚ã‚‹
+サーãƒãƒ¼ã‚¯ãƒ©ã‚¹ãƒ»ãƒžã‚·ãƒ³ã®æ¤œå‡ºã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-showversion
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò³¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ÈƱÅù¤Ç¤¹¤¬¡¢\-version¤Ï¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨¸å¤ËJVM¤Ë½ªÎ»¤ò»Ø¼¨¤¹¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã€ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’続行ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-version\fRオプションã¨åŒç­‰ã§ã™ãŒã€\-versionã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤ºå¾Œã«JVMã«çµ‚了を指示ã™ã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-splash:\fIimgname\fR
 .RS 4
-\fIimgname\fR¤Ç»ØÄꤵ¤ì¤¿¥¤¥á¡¼¥¸¤ò´Þ¤à¥¹¥×¥é¥Ã¥·¥å²èÌ̤òɽ¼¨¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Îµ¯Æ°»þ¤Ë\fIimages\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î\fIsplash\&.gif\fR¥Õ¥¡¥¤¥ë¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fIimgname\fRã§æŒ‡å®šã•ã‚ŒãŸã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’å«ã‚€ã‚¹ãƒ—ラッシュ画é¢ã‚’表示ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¢ãƒ—リケーションã®èµ·å‹•æ™‚ã«\fIimages\fRディレクトリã®\fIsplash\&.gif\fRファイルを表示ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -434,31 +434,31 @@
 .PP
 \-verbose:class
 .RS 4
-¥í¡¼¥É¤µ¤ì¤¿³Æ¥¯¥é¥¹¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+ロードã•ã‚ŒãŸå„クラスã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:gc
 .RS 4
-³Æ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¥¤¥Ù¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+å„ガベージ・コレクション(GC)イベントã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:jni
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤Î»ÈÍѤª¤è¤Ó¤½¤Î¾¤ÎJava Native Interface (JNI)¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドã®ä½¿ç”¨ãŠã‚ˆã³ãã®ä»–ã®Java Native Interface (JNI)アクティビティã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Æ¤«¤é½ªÎ»¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-showversion\fR¥ª¥×¥·¥ç¥ó¤ÈƱÅù¤Ç¤¹¤¬¡¢\-showversion¤Ï¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤Îɽ¼¨¸å¤ËJVM¤Ë½ªÎ»¤ò»Ø¼¨¤·¤Ê¤¤ÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¦ã‹ã‚‰çµ‚了ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-showversion\fRオプションã¨åŒç­‰ã§ã™ãŒã€\-showversionã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…å ±ã®è¡¨ç¤ºå¾Œã«JVMã«çµ‚了を指示ã—ãªã„点ãŒç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-version:\fIrelease\fR
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤Ë»ÈÍѤ¹¤ë¥ê¥ê¡¼¥¹¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¥³¡¼¥ë¤µ¤ì¤¿\fIjava\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¤³¤Î»ØÄêÆâÍƤòËþ¤¿¤µ¤º¡¢¤«¤ÄŬÀڤʼÂÁõ¤¬¥·¥¹¥Æ¥à¾å¤Ç¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤ÎŬÀڤʼÂÁõ¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+アプリケーションã®å®Ÿè¡Œã«ä½¿ç”¨ã™ã‚‹ãƒªãƒªãƒ¼ã‚¹ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’指定ã—ã¾ã™ã€‚コールã•ã‚ŒãŸ\fIjava\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒã“ã®æŒ‡å®šå†…容を満ãŸã•ãšã€ã‹ã¤é©åˆ‡ãªå®Ÿè£…ãŒã‚·ã‚¹ãƒ†ãƒ ä¸Šã§è¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ãã®é©åˆ‡ãªå®Ÿè£…ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIrelease\fR°ú¿ô¤Ï¡¢Àµ³Î¤Ê¥Ð¡¼¥¸¥ç¥óʸ»úÎ󡢤ޤ¿¤Ï¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤È¥Ð¡¼¥¸¥ç¥óÈϰϤΥꥹ¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fI¥Ð¡¼¥¸¥ç¥óʸ»úÎó\fR¤Ï¡¢¼¡¤Î·Á¼°¤Ç¡¢³«È¯¼Ô¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹:
+\fIrelease\fR引数ã¯ã€æ­£ç¢ºãªãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã€ã¾ãŸã¯ç©ºç™½ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲ã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列\fRã¯ã€æ¬¡ã®å½¢å¼ã§ã€é–‹ç™ºè€…ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã‚’指定ã—ã¾ã™:
 \fI1\&.\fR\fIx\fR\fI\&.0_\fR\fIu\fR
-(\fIx\fR¤Ï¥á¥¸¥ã¡¼¡¦¥Ð¡¼¥¸¥ç¥óÈֹ桢\fIu\fR¤Ï¹¹¿·¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ç¤¹)¡£\fI¥Ð¡¼¥¸¥ç¥óÈÏ°Ï\fR¤Ï¡¢¤³¤Î¥Ð¡¼¥¸¥ç¥ó°Ê¹ß¤ò»ØÄꤹ¤ë¤Ë¤Ï¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤Î¸å¤Ë¥×¥é¥¹µ­¹æ(\fI+\fR)¤ò³¤±¤¿¤â¤Î¡¢¤Þ¤¿¤Ï°ìÃפ¹¤ëÀÜƬ¼­¤ò´Þ¤àǤ°Õ¤Î¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò»ØÄꤹ¤ë¤Ë¤Ï°ìÉô¤Î¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤Î¸å¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(\fI*\fR)¤ò³¤±¤¿¤â¤Î¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£ÏÀÍý\fIOR\fR¤ÎÁȹ礻¤Ë¤Ï¶õÇò¡¢2¤Ä¤Î¥Ð¡¼¥¸¥ç¥ó¤Îʸ»úÎó/ÈϰϤÎÏÀÍý\fIAND\fR¤ÎÁȹ礻¤Ë¤Ï¥¢¥ó¥Ñ¥µ¥ó¥É(\fI&\fR)¤ò»ÈÍѤ·¤Æ¡¢¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤È¥Ð¡¼¥¸¥ç¥óÈϰϤòÁȤ߹礻¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Î¼Â¹Ô¤ËJRE 6u13 (1\&.6\&.0_13)¤Þ¤¿¤Ï6u10 (1\&.6\&.0_10)°Ê¹ß¤ÎǤ°Õ¤ÎJRE 6¤Î¤¤¤º¤ì¤«¤òɬÍפȤ¹¤ë¾ì¹ç¡¢¼¡¤ò»ØÄꤷ¤Þ¤¹¡£
+(\fIx\fRã¯ãƒ¡ã‚¸ãƒ£ãƒ¼ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã€\fIu\fRã¯æ›´æ–°ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã§ã™)。\fIãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲\fRã¯ã€ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ä»¥é™ã‚’指定ã™ã‚‹ã«ã¯ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã®å¾Œã«ãƒ—ラス記å·(\fI+\fR)を続ã‘ãŸã‚‚ã®ã€ã¾ãŸã¯ä¸€è‡´ã™ã‚‹æŽ¥é ­è¾žã‚’å«ã‚€ä»»æ„ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を指定ã™ã‚‹ã«ã¯ä¸€éƒ¨ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã®å¾Œã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(\fI*\fR)を続ã‘ãŸã‚‚ã®ã§æ§‹æˆã•ã‚Œã¾ã™ã€‚è«–ç†\fIOR\fRã®çµ„åˆã›ã«ã¯ç©ºç™½ã€2ã¤ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®æ–‡å­—列/範囲ã®è«–ç†\fIAND\fRã®çµ„åˆã›ã«ã¯ã‚¢ãƒ³ãƒ‘サンド(\fI&\fR)を使用ã—ã¦ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列ã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç¯„囲を組ã¿åˆã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯JARファイルã®å®Ÿè¡Œã«JRE 6u13 (1\&.6\&.0_13)ã¾ãŸã¯6u10 (1\&.6\&.0_10)以é™ã®ä»»æ„ã®JRE 6ã®ã„ãšã‚Œã‹ã‚’å¿…è¦ã¨ã™ã‚‹å ´åˆã€æ¬¡ã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -469,99 +469,99 @@
 .if n \{\
 .RE
 .\}
-°úÍÑÉ䤬ɬÍפʤΤϡ¢\fIrelease\fR¥Ñ¥é¥á¡¼¥¿¤Ë¶õÇò¤¬¤¢¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£
+引用符ãŒå¿…è¦ãªã®ã¯ã€\fIrelease\fRパラメータã«ç©ºç™½ãŒã‚ã‚‹å ´åˆã®ã¿ã§ã™ã€‚
 .sp
-JAR¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¥Ð¡¼¥¸¥ç¥óÍ×·ï¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤è¤ê¤â¡¢JAR¥Õ¥¡¥¤¥ë¤Î¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤Ë»ØÄꤹ¤ë¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+JARファイルã®å ´åˆã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³è¦ä»¶ã‚’コマンドラインã«æŒ‡å®šã™ã‚‹ã‚ˆã‚Šã‚‚ã€JARファイルã®ãƒžãƒ‹ãƒ•ã‚§ã‚¹ãƒˆå†…ã«æŒ‡å®šã™ã‚‹ã“ã¨ãŒæŽ¨å¥¨ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot²¾ÁÛ¥Þ¥·¥ó¤Ë¸ÇÍ­¤ÎÈÆÍÑ¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot仮想マシンã«å›ºæœ‰ã®æ±Žç”¨ã‚ªãƒ—ションã§ã™ã€‚
 .PP
 \-X
 .RS 4
-»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î\fI\-X\fR¥ª¥×¥·¥ç¥ó¤Î¥Ø¥ë¥×¤òɽ¼¨¤·¤Þ¤¹¡£
+使用å¯èƒ½ãªã™ã¹ã¦ã®\fI\-X\fRオプションã®ãƒ˜ãƒ«ãƒ—を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbatch
 .RS 4
-¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JVM¤Ç¤Ï¡¢¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢¥á¥½¥Ã¥É¤ò¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥¿¥¹¥¯¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¡¢¥¤¥ó¥¿¥×¥ê¥¿¡¦¥â¡¼¥É¤Ç¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fI\-Xbatch\fR¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È¡¢¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤¬Ìµ¸ú¤Ë¤Ê¤ê¡¢¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤¬´°Î»¤¹¤ë¤Þ¤Ç¥Õ¥©¥¢¥°¥é¥¦¥ó¥É¡¦¥¿¥¹¥¯¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£
+ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JVMã§ã¯ã€ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルãŒçµ‚了ã™ã‚‹ã¾ã§ã€ãƒ¡ã‚½ãƒƒãƒ‰ã‚’ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚¿ã‚¹ã‚¯ã¨ã—ã¦ã‚³ãƒ³ãƒ‘イルã—ã€ã‚¤ãƒ³ã‚¿ãƒ—リタ・モードã§ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実行ã—ã¾ã™ã€‚\fI\-Xbatch\fRフラグを指定ã™ã‚‹ã¨ã€ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルãŒç„¡åŠ¹ã«ãªã‚Šã€ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イルãŒå®Œäº†ã™ã‚‹ã¾ã§ãƒ•ã‚©ã‚¢ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚¿ã‚¹ã‚¯ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:\-BackgroundCompilation\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:\-BackgroundCompilation\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤é¤Ï¡¢JDK¤Ë´Þ¤Þ¤ì¤ë¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤«¤ï¤ê¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+ブート・クラス・ファイルを検索ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“れらã¯ã€JDKã«å«ã¾ã‚Œã‚‹ãƒ–ート・クラス・ファイルã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xbootclasspath/a:\fIpath\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎºÇ¸å¤ËÄɲ乤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+デフォルトã®ãƒ–ートストラップ・クラス・パスã®æœ€å¾Œã«è¿½åŠ ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xbootclasspath/p:\fIpath\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÀèƬ¤ËÄɲ乤ë¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¤ª¤è¤ÓZIP¥¢¡¼¥«¥¤¥Ö¤Î¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+デフォルトã®ãƒ–ートストラップ・クラス・パスã®å…ˆé ­ã«è¿½åŠ ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルãŠã‚ˆã³ZIPアーカイブã®ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .sp
-JRE¥Ð¥¤¥Ê¥ê¡¦¥³¡¼¥É¡¦¥é¥¤¥»¥ó¥¹¤Ë°ãÈ¿¤¹¤ë¤¿¤á¡¢\fIrt\&.jar\fR¤Ç¥¯¥é¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ëÌÜŪ¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ç¥×¥í¥¤¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+JREãƒã‚¤ãƒŠãƒªãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã«é•åã™ã‚‹ãŸã‚ã€\fIrt\&.jar\fRã§ã‚¯ãƒ©ã‚¹ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ç›®çš„ã§ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã‚¢ãƒ—リケーションをデプロイã—ãªã„ã§ãã ã•ã„。
 .RE
 .PP
 \-Xboundthreads
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥ì¥Ù¥ë¤Î¥¹¥ì¥Ã¥É¤ò¥«¡¼¥Í¥ë¡¦¥¹¥ì¥Ã¥É¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£
+ユーザー・レベルã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’カーãƒãƒ«ãƒ»ã‚¹ãƒ¬ãƒƒãƒ‰ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xcheck:jni
 .RS 4
-Java Native Interface (JNI)µ¡Ç½¤ËÂФ·¤ÆÄɲåÁ¥§¥Ã¥¯¤ò¹Ô¤¤¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢¤³¤ì¤Ï¡¢JNI¥ê¥¯¥¨¥¹¥È¤ò½èÍý¤¹¤ëÁ°¤Ë¡¢JNI´Ø¿ô¤ËÅϤµ¤ì¤ë¥Ñ¥é¥á¡¼¥¿¤È¼Â¹Ô´Ä¶­¤Î¥Ç¡¼¥¿¤ò¸¡¾Ú¤·¤Þ¤¹¡£Ìµ¸ú¤Ê¥Ç¡¼¥¿¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤ËÌäÂ꤬¤¢¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤ë¤¿¤á¡¢JVM¤Ï¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤òȯÀ¸¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹Äã²¼¤¬Í½ÁÛ¤µ¤ì¤Þ¤¹¡£
+Java Native Interface (JNI)機能ã«å¯¾ã—ã¦è¿½åŠ ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã„ã¾ã™ã€‚具体的ã«ã¯ã€ã“ã‚Œã¯ã€JNIリクエストを処ç†ã™ã‚‹å‰ã«ã€JNI関数ã«æ¸¡ã•ã‚Œã‚‹ãƒ‘ラメータã¨å®Ÿè¡Œç’°å¢ƒã®ãƒ‡ãƒ¼ã‚¿ã‚’検証ã—ã¾ã™ã€‚無効ãªãƒ‡ãƒ¼ã‚¿ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã«å•é¡ŒãŒã‚ã‚‹ã“ã¨ã‚’示ã—ã¦ã„ã‚‹ãŸã‚ã€JVMã¯ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ã‚’発生ã—ã¦çµ‚了ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‘フォーマンス低下ãŒäºˆæƒ³ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xcomp
 .RS 4
-ºÇ½é¤Î¸Æ½Ð¤·¤ÇJava¥³¡¼¥É¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤Î²ò¼á¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï¡¢10,000¤Î²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¼Â¹Ô¤·¤Æ¡¢¸úΨŪ¤Ê¥³¥ó¥Ñ¥¤¥ë¤Î¤¿¤á¤Î¾ðÊó¤ò¼ý½¸¤·¤Þ¤¹¡£¸úΨ¤òµ¾À·¤Ë¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¤Ë¤Ï¡¢\fI\-Xcomp\fR¥Õ¥é¥°¤ò»ÈÍѤ·¤Æ¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+最åˆã®å‘¼å‡ºã—ã§JavaコードãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イル・メソッドã®è§£é‡ˆã‚’無効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JITコンパイラã¯ã€10,000ã®è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を実行ã—ã¦ã€åŠ¹çŽ‡çš„ãªã‚³ãƒ³ãƒ‘イルã®ãŸã‚ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚効率を犠牲ã«ã—ã¦ã‚³ãƒ³ãƒ‘イルã®ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ã«ã¯ã€\fI\-Xcomp\fRフラグを使用ã—ã¦ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を無効ã«ã—ã¾ã™ã€‚
 .sp
-\fI\-XX:CompileThreshold\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¤ÎÁ°¤Ë¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤òÊѹ¹¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:CompileThreshold\fRオプションを使用ã—ã¦ã€ã‚³ãƒ³ãƒ‘イルã®å‰ã«ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’変更ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xdebug
 .RS 4
-²¿¤â¹Ô¤¤¤Þ¤»¤ó¡£²¼°Ì¸ß´¹À­¤Î¤¿¤á¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+何も行ã„ã¾ã›ã‚“。下ä½äº’æ›æ€§ã®ãŸã‚ã«ç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-Xdiag
 .RS 4
-ÄɲäοÇÃÇ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+追加ã®è¨ºæ–­ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xfuture
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Î»ÅÍͤؤνàµò¤ò¶¯²½¤¹¤ë¡¢¸·Ì©¤Ê¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Î¥Á¥§¥Ã¥¯¤¬Í­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢¤è¤ê¸·Ì©¤Ê¥Á¥§¥Ã¥¯¤¬¥Ç¥Õ¥©¥ë¥È¤Ë¤Ê¤ë¤¿¤á¡¢¿·¤·¤¤¥³¡¼¥É¤ò³«È¯¤¹¤ë¤È¤­¤Ë¤Ï¡¢³«È¯¼Ô¤Ï¤³¤Î¥Õ¥é¥°¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+クラス・ファイル形å¼ã®ä»•æ§˜ã¸ã®æº–拠を強化ã™ã‚‹ã€åŽ³å¯†ãªã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼ã®ãƒã‚§ãƒƒã‚¯ãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€ã‚ˆã‚ŠåŽ³å¯†ãªãƒã‚§ãƒƒã‚¯ãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«ãªã‚‹ãŸã‚ã€æ–°ã—ã„コードを開発ã™ã‚‹ã¨ãã«ã¯ã€é–‹ç™ºè€…ã¯ã“ã®ãƒ•ãƒ©ã‚°ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xincgc
 .RS 4
-ÁýʬGC¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+増分GCを有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xint
 .RS 4
-¥¤¥ó¥¿¥×¥ê¥¿ÀìÍѥ⡼¥É¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤Ø¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï̵¸ú¤Ë¤Ê¤ê¡¢¤¹¤Ù¤Æ¤Î¥Ð¥¤¥È¥³¡¼¥É¤¬¥¤¥ó¥¿¥×¥ê¥¿¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥¸¥ã¥¹¥È¡¦¥¤¥ó¡¦¥¿¥¤¥à(JIT)¥³¥ó¥Ñ¥¤¥é¤¬Ä󶡤¹¤ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¾å¤ÎÍøÅÀ¤Ï¡¢¤³¤Î¥â¡¼¥É¤Ç¤Ï¼Â¸½¤µ¤ì¤Þ¤»¤ó¡£
+インタプリタ専用モードã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã¸ã®ã‚³ãƒ³ãƒ‘イルã¯ç„¡åŠ¹ã«ãªã‚Šã€ã™ã¹ã¦ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ—リタã«ã‚ˆã£ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚ジャスト・イン・タイム(JIT)コンパイラãŒæä¾›ã™ã‚‹ãƒ‘フォーマンス上ã®åˆ©ç‚¹ã¯ã€ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯å®Ÿç¾ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-Xinternalversion
 .RS 4
-\fI\-version\fR¥ª¥×¥·¥ç¥ó¤è¤ê¾ÜºÙ¤ÊJVM¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Æ¤«¤é½ªÎ»¤·¤Þ¤¹¡£
+\fI\-version\fRオプションより詳細ãªJVMãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¦ã‹ã‚‰çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xloggc:\fIfilename\fR
 .RS 4
-¾ÜºÙ¤ÊGC¥¤¥Ù¥ó¥È¾ðÊó¤ò¥í¥®¥ó¥°ÍѤ˥ê¥À¥¤¥ì¥¯¥È¤¹¤ë¥Õ¥¡¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¾ðÊó¤Ï¡¢µ­Ï¿¤µ¤ì¤¿³Æ¥¤¥Ù¥ó¥È¤ÎÁ°¤Ë¹Ô¤ï¤ì¤ëºÇ½é¤ÎGC¥¤¥Ù¥ó¥È°Ê¹ß¤Ë·Ð²á¤·¤¿»þ´Ö¤ò»ØÄꤷ¤¿\fI\-verbose:gc\fR¤Î½ÐÎϤÈÎà»÷¤·¤Æ¤¤¤Þ¤¹¡£\fI\-Xloggc\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-verbose:gc\fR¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹(¤³¤ì¤é¤ÎξÊý¤¬Æ±¤¸\fIjava\fR¥³¥Þ¥ó¥É¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç)¡£
+詳細ãªGCイベント情報をロギング用ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«æ›¸ãè¾¼ã¾ã‚Œã‚‹æƒ…å ±ã¯ã€è¨˜éŒ²ã•ã‚ŒãŸå„イベントã®å‰ã«è¡Œã‚れる最åˆã®GCイベント以é™ã«çµŒéŽã—ãŸæ™‚間を指定ã—ãŸ\fI\-verbose:gc\fRã®å‡ºåŠ›ã¨é¡žä¼¼ã—ã¦ã„ã¾ã™ã€‚\fI\-Xloggc\fRオプションã¯\fI\-verbose:gc\fRをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™(ã“れらã®ä¸¡æ–¹ãŒåŒã˜\fIjava\fRコマンドã§æŒ‡å®šã•ã‚ŒãŸå ´åˆ)。
 .sp
-Îã:
+例:
 .sp
 .if n \{\
 .RS 4
@@ -576,7 +576,7 @@
 .PP
 \-Xmaxjitcodesize=\fIsize\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÎºÇÂ祳¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤ò»ØÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ48MB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+JITコンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を指定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯48MBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -587,21 +587,21 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:ReservedCodeCacheSize\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:ReservedCodeCacheSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xmixed
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥³¡¼¥É¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥Û¥Ã¥È¡¦¥á¥½¥Ã¥É¤ò½ü¤­¡¢¥¤¥ó¥¿¥×¥ê¥¿¤Ë¤è¤Ã¤Æ¤¹¤Ù¤Æ¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・コードã«ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ›ãƒƒãƒˆãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ãã€ã‚¤ãƒ³ã‚¿ãƒ—リタã«ã‚ˆã£ã¦ã™ã¹ã¦ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xmn\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤ª¤è¤ÓºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºãŠã‚ˆã³æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×¤Î¼ã¤¤À¤Âå¥ê¡¼¥¸¥ç¥ó¤Ï¿·¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£GC¤Ï¡¢Â¾¤Î¥ê¡¼¥¸¥ç¥ó¤è¤ê¤³¤Î¥ê¡¼¥¸¥ç¥ó¤Ç¡¢¤è¤êÉÑÈˤ˼¹Ԥµ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤¬¾®¤µ¤¹¤®¤ë¾ì¹ç¡¢Â¿¿ô¤Î¥Þ¥¤¥Ê¡¼¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥µ¥¤¥º¤¬Â礭¤¹¤®¤ë¾ì¹ç¡¢¥Õ¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢´°Î»¤Þ¤Ç¤Ë»þ´Ö¤¬¤«¤«¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤Ï¡¢Á´ÂΤΥҡ¼¥×¡¦¥µ¥¤¥º¤ÎȾʬ¤«¤é4ʬ¤Î1¤Î´Ö¤Ë¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ヒープã®è‹¥ã„世代リージョンã¯æ–°ã—ã„オブジェクトã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚GCã¯ã€ä»–ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚ˆã‚Šã“ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã§ã€ã‚ˆã‚Šé »ç¹ã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºãŒå°ã•ã™ãŽã‚‹å ´åˆã€å¤šæ•°ã®ãƒžã‚¤ãƒŠãƒ¼ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚サイズãŒå¤§ãã™ãŽã‚‹å ´åˆã€ãƒ•ãƒ«ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ãŒã€å®Œäº†ã¾ã§ã«æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¯ã€å…¨ä½“ã®ãƒ’ープ・サイズã®åŠåˆ†ã‹ã‚‰4分ã®1ã®é–“ã«ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤À¤Âå¤Î½é´ü¥µ¥¤¥º¤ª¤è¤ÓºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€è‹¥ã„世代ã®åˆæœŸã‚µã‚¤ã‚ºãŠã‚ˆã³æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -614,14 +614,14 @@
 .if n \{\
 .RE
 .\}
-¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤ÈºÇÂ祵¥¤¥º¤ÎξÊý¤òÀßÄꤹ¤ë\fI\-Xmn\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë¡¢½é´ü¥µ¥¤¥º¤ÎÀßÄê¤Ë¤Ï\fI\-XX:NewSize\fR¤ò¡¢ºÇÂ祵¥¤¥º¤ÎÀßÄê¤Ë¤Ï\fI\-XX:MaxNewSize\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+è‹¥ã„世代ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºã¨æœ€å¤§ã‚µã‚¤ã‚ºã®ä¸¡æ–¹ã‚’設定ã™ã‚‹\fI\-Xmn\fRオプションã®ã‹ã‚ã‚Šã«ã€åˆæœŸã‚µã‚¤ã‚ºã®è¨­å®šã«ã¯\fI\-XX:NewSize\fRã‚’ã€æœ€å¤§ã‚µã‚¤ã‚ºã®è¨­å®šã«ã¯\fI\-XX:MaxNewSize\fRを使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xms\fIsize\fR
 .RS 4
-¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢1MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+ヒープã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€1MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ6MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦6MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -634,14 +634,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤷ¤Ê¤¤¾ì¹ç¡¢½é´ü¥µ¥¤¥º¤Ï¡¢¸Å¤¤À¤Âå¤È¼ã¤¤À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥µ¥¤¥º¤Î¹ç·×¤È¤·¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º¤Ï¡¢\fI\-Xmn\fR¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã—ãªã„å ´åˆã€åˆæœŸã‚µã‚¤ã‚ºã¯ã€å¤ã„世代ã¨è‹¥ã„世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚µã‚¤ã‚ºã®åˆè¨ˆã¨ã—ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚ºã¯ã€\fI\-Xmn\fRオプションã¾ãŸã¯\fI\-XX:NewSize\fRオプションを使用ã—ã¦è¨­å®šã§ãã¾ã™ã€‚
 .RE
 .PP
 \-Xmx\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢2MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Ç¥×¥í¥¤¥á¥ó¥È¤Ç¤Ï¡¢\fI\-Xms\fR¤ª¤è¤Ó\fI\-Xmx\fR¤ÏÄ̾ïƱ¤¸ÃͤËÀßÄꤵ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を指定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€2MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚サーãƒãƒ¼ãƒ»ãƒ‡ãƒ—ロイメントã§ã¯ã€\fI\-Xms\fRãŠã‚ˆã³\fI\-Xmx\fRã¯é€šå¸¸åŒã˜å€¤ã«è¨­å®šã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Îµö²Ä¤µ¤ì¤ëºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ80MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®è¨±å¯ã•ã‚Œã‚‹æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦80MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -654,34 +654,34 @@
 .if n \{\
 .RE
 .\}
-\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:MaxHeapSize\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-Xmx\fRオプションã¯\fI\-XX:MaxHeapSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xnoclassgc
 .RS 4
-¥¯¥é¥¹¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢GC»þ´Ö¤òÀáÌó¤Ç¤­¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¼Â¹ÔÃæ¤ÎÃæÃǤ¬Ã»½Ì¤µ¤ì¤Þ¤¹¡£
+クラスã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(GC)を無効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€GC時間を節約ã§ãã€ã‚¢ãƒ—リケーション実行中ã®ä¸­æ–­ãŒçŸ­ç¸®ã•ã‚Œã¾ã™ã€‚
 .sp
-µ¯Æ°»þ¤Ë\fI\-Xnoclassgc\fR¤ò»ØÄꤹ¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Î¥¯¥é¥¹¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢GC¤Î´Ö¤Ï¤½¤Î¤Þ¤Þ»Ä¤ê¡¢¾ï¤Ë¥é¥¤¥Ö¤Ç¤¢¤ë¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤è¤ê¿¤¯¤Î¥á¥â¥ê¡¼¤¬±Êµ×¤ËÀêÍ­¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¡¢Ãí°Õ¤·¤Æ»ÈÍѤ·¤Ê¤¤¤È¡¢¥á¥â¥ê¡¼ÉÔ­¤ÎÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
+起動時ã«\fI\-Xnoclassgc\fRを指定ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーション内ã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚ªãƒ–ジェクトã¯ã€GCã®é–“ã¯ãã®ã¾ã¾æ®‹ã‚Šã€å¸¸ã«ãƒ©ã‚¤ãƒ–ã§ã‚ã‚‹ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚ˆã‚Šå¤šãã®ãƒ¡ãƒ¢ãƒªãƒ¼ãŒæ°¸ä¹…ã«å æœ‰ã•ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã€æ³¨æ„ã—ã¦ä½¿ç”¨ã—ãªã„ã¨ã€ãƒ¡ãƒ¢ãƒªãƒ¼ä¸è¶³ã®ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xprof
 .RS 4
-¼Â¹ÔÃæ¤Î¥×¥í¥°¥é¥à¤Î¥×¥í¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¡¢¥×¥í¥Õ¥¡¥¤¥ë¡¦¥Ç¡¼¥¿¤òɸ½à½ÐÎϤËÁ÷¿®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥×¥í¥°¥é¥à³«È¯ÍѤΥ桼¥Æ¥£¥ê¥Æ¥£¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ËÜÈÖ²ÔƯ¥·¥¹¥Æ¥à¤Ç¤Î»ÈÍѤòÌÜŪ¤È¤·¤¿¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+実行中ã®ãƒ—ログラムã®ãƒ—ロファイルを生æˆã—ã€ãƒ—ロファイル・データを標準出力ã«é€ä¿¡ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ—ログラム開発用ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚本番稼åƒã‚·ã‚¹ãƒ†ãƒ ã§ã®ä½¿ç”¨ã‚’目的ã¨ã—ãŸã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-Xrs
 .RS 4
-JVM¤Ë¤è¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥°¥Ê¥ë¤Î»ÈÍѤò¸º¤é¤·¤Þ¤¹¡£
+JVMã«ã‚ˆã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’減らã—ã¾ã™ã€‚
 .sp
-¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤Ï¡¢JVM¤¬ÆÍÁ³½ªÎ»¤·¤¿¾ì¹ç¤Ç¤â¡¢¥·¥ã¥Ã¥È¥À¥¦¥ó»þ¤Ë¥æ¡¼¥¶¡¼¡¦¥¯¥ê¡¼¥ó¥¢¥Ã¥×¡¦¥³¡¼¥É(¥Ç¡¼¥¿¥Ù¡¼¥¹Àܳ¤Î¥¯¥í¡¼¥º¤Ê¤É)¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥·¥ã¥Ã¥È¥À¥¦¥ó¤ò½çÈÖ¤ËÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+シャットダウン・フックã¯ã€JVMãŒçªç„¶çµ‚了ã—ãŸå ´åˆã§ã‚‚ã€ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³æ™‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒªãƒ¼ãƒ³ã‚¢ãƒƒãƒ—・コード(データベース接続ã®ã‚¯ãƒ­ãƒ¼ã‚ºãªã©)を実行ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€Javaアプリケーションã®ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã‚’順番ã«æœ‰åŠ¹ã«ã—ã¾ã™ã€‚
 .sp
-JVM¤Ï¡¢Í½´ü¤·¤Ê¤¤½ªÎ»¤Î¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤ò¼ÂÁõ¤¹¤ë¤¿¤á¤Ë¥·¥°¥Ê¥ë¤ò¥­¥ã¥Ã¥Á¤·¤Þ¤¹¡£JVM¤Ï¡¢\fISIGHUP\fR¡¢\fISIGINT\fR¤ª¤è¤Ó\fISIGTERM\fR¤ò»ÈÍѤ·¤Æ¡¢¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯¤Î¼Â¹Ô¤ò³«»Ï¤·¤Þ¤¹¡£
+JVMã¯ã€äºˆæœŸã—ãªã„終了ã®ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ãƒ»ãƒ•ãƒƒã‚¯ã‚’実装ã™ã‚‹ãŸã‚ã«ã‚·ã‚°ãƒŠãƒ«ã‚’キャッãƒã—ã¾ã™ã€‚JVMã¯ã€\fISIGHUP\fRã€\fISIGINT\fRãŠã‚ˆã³\fISIGTERM\fRを使用ã—ã¦ã€ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ãƒ»ãƒ•ãƒƒã‚¯ã®å®Ÿè¡Œã‚’開始ã—ã¾ã™ã€‚
 .sp
-JVM¤Ï¡¢¥Ç¥Ð¥Ã¥°¤ÎÌÜŪ¤Ç¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¤ò¥À¥ó¥×¤¹¤ë¤È¤¤¤¦µ¡Ç½¤ò¼Â¸½¤¹¤ë¤¿¤á¤Ë¡¢Æ±ÍͤΥᥫ¥Ë¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£JVM¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥À¥ó¥×¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë\fISIGQUIT\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+JVMã¯ã€ãƒ‡ãƒãƒƒã‚°ã®ç›®çš„ã§ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ã‚’ダンプã™ã‚‹ã¨ã„ã†æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã€åŒæ§˜ã®ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’使用ã—ã¾ã™ã€‚JVMã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ€ãƒ³ãƒ—を実行ã™ã‚‹ãŸã‚ã«\fISIGQUIT\fRを使用ã—ã¾ã™ã€‚
 .sp
-JVM¤òËä¤á¹þ¤ó¤Ç¤¤¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢\fISIGINT\fR¤ä\fISIGTERM\fR¤Ê¤É¤Î¥·¥°¥Ê¥ë¤òÉÑÈˤ˥ȥé¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¡¢¤½¤Î·ë²Ì¡¢JVM¤Î¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤È¾×Æͤ¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fI\-Xrs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¤³¤ÎÌäÂê¤ËÂн褹¤ë¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£\fI\-Xrs\fR¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fISIGINT\fR¡¢\fISIGTERM\fR¡¢\fISIGHUP\fR¤ª¤è¤Ó\fISIGQUIT\fR¤Î¥·¥°¥Ê¥ë¡¦¥Þ¥¹¥¯¤ÏJVM¤Ë¤è¤Ã¤ÆÊѹ¹¤µ¤ì¤º¡¢¤³¤ì¤é¤Î¥·¥°¥Ê¥ë¤Î¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤»¤ó¡£
+JVMを埋ã‚込んã§ã„るアプリケーションã¯ã€\fISIGINT\fRã‚„\fISIGTERM\fRãªã©ã®ã‚·ã‚°ãƒŠãƒ«ã‚’é »ç¹ã«ãƒˆãƒ©ãƒƒãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã€ãã®çµæžœã€JVMã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã¨è¡çªã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fI\-Xrs\fRオプションã¯ã€ã“ã®å•é¡Œã«å¯¾å‡¦ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-Xrs\fRãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fISIGINT\fRã€\fISIGTERM\fRã€\fISIGHUP\fRãŠã‚ˆã³\fISIGQUIT\fRã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒžã‚¹ã‚¯ã¯JVMã«ã‚ˆã£ã¦å¤‰æ›´ã•ã‚Œãšã€ã“れらã®ã‚·ã‚°ãƒŠãƒ«ã®ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fI\-Xrs\fR¤ò»ØÄꤹ¤ë¤È¡¢¼¡¤Î2¤Ä¤Î·ë²Ì¤¬À¸¤¸¤Þ¤¹:
+\fI\-Xrs\fRを指定ã™ã‚‹ã¨ã€æ¬¡ã®2ã¤ã®çµæžœãŒç”Ÿã˜ã¾ã™:
 .sp
 .RS 4
 .ie n \{\
@@ -691,7 +691,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISIGQUIT\fR¤Ë¤è¤ë¥¹¥ì¥Ã¥É¡¦¥À¥ó¥×¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+\fISIGQUIT\fRã«ã‚ˆã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ€ãƒ³ãƒ—ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -702,63 +702,63 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥·¥ã¥Ã¥È¥À¥¦¥ó¡¦¥Õ¥Ã¥¯½èÍý¤Î¼Â¹Ô¤Ï¡¢JVM¤¬½ªÎ»¤·¤è¤¦¤È¤·¤Æ¤¤¤ë»þÅÀ¤Ç\fISystem\&.exit()\fR¤ò¸Æ¤Ó½Ð¤¹¤Ê¤É¤·¤Æ¡¢¥æ¡¼¥¶¡¼¡¦¥³¡¼¥É¦¤Ç¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+シャットダウン・フック処ç†ã®å®Ÿè¡Œã¯ã€JVMãŒçµ‚了ã—よã†ã¨ã—ã¦ã„る時点ã§\fISystem\&.exit()\fRを呼ã³å‡ºã™ãªã©ã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚³ãƒ¼ãƒ‰å´ã§è¡Œã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xshare:\fImode\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¥â¡¼¥É¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+クラス・データ共有モードを設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 auto
 .RS 4
-²Äǽ¤Ê¾ì¹ç¡¢¶¦Í­¥¯¥é¥¹¤Î¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢Java HotSpot 32\-Bit Client VM¤Î¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+å¯èƒ½ãªå ´åˆã€å…±æœ‰ã‚¯ãƒ©ã‚¹ã®ãƒ‡ãƒ¼ã‚¿ã‚’使用ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€Java HotSpot 32\-Bit Client VMã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 on
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¤Î»ÈÍѤ¬É¬ÍפǤ¹¡£¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¤ò»ÈÍѤǤ­¤Ê¤¤¾ì¹ç¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+クラス・データ共有ã®ä½¿ç”¨ãŒå¿…è¦ã§ã™ã€‚クラス・データ共有を使用ã§ããªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 off
 .RS 4
-¶¦Í­¥¯¥é¥¹¡¦¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢Java HotSpot 32\-Bit Server VM¡¢Java HotSpot 64\-Bit Client VM¤ª¤è¤ÓJava HotSpot 64\-Bit Server VM¤Î¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+共有クラス・データを使用ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€Java HotSpot 32\-Bit Server VMã€Java HotSpot 64\-Bit Client VMãŠã‚ˆã³Java HotSpot 64\-Bit Server VMã®å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 dump
 .RS 4
-¥¯¥é¥¹¡¦¥Ç¡¼¥¿¶¦Í­¥¢¡¼¥«¥¤¥Ö¤ò¼êÆ°¤ÇÀ¸À®¤·¤Þ¤¹¡£
+クラス・データ共有アーカイブを手動ã§ç”Ÿæˆã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XshowSettings:\fIcategory\fR
 .RS 4
-ÀßÄê¤òɽ¼¨¤·¤Æ³¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fIcategory\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+設定を表示ã—ã¦ç¶šè¡Œã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fIcategory\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 all
 .RS 4
-ÀßÄê¤Î¤¹¤Ù¤Æ¤Î¥«¥Æ¥´¥ê¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
+設定ã®ã™ã¹ã¦ã®ã‚«ãƒ†ã‚´ãƒªã‚’表示ã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
 .RE
 .PP
 locale
 .RS 4
-¥í¥±¡¼¥ë¤Ë´ØÏ¢¤¹¤ëÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+ロケールã«é–¢é€£ã™ã‚‹è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 properties
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ë´ØÏ¢¤¹¤ëÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+システム・プロパティã«é–¢é€£ã™ã‚‹è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 vm
 .RS 4
-JVM¤ÎÀßÄê¤òɽ¼¨¤·¤Þ¤¹¡£
+JVMã®è¨­å®šã‚’表示ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xss\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£KB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢MB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢GB¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϥץé¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+スレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚KBを示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€MBを示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€GBを示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -768,7 +768,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/ARM (32¥Ó¥Ã¥È): 320KB
+Linux/ARM (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -779,7 +779,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/i386 (32¥Ó¥Ã¥È): 320KB
+Linux/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -790,7 +790,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/x64 (64¥Ó¥Ã¥È): 1024KB
+Linux/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -801,7 +801,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-OS X (64¥Ó¥Ã¥È): 1024KB
+OS X (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -812,7 +812,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/i386 (32¥Ó¥Ã¥È): 320KB
+Oracle Solaris/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -823,7 +823,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/x64 (64¥Ó¥Ã¥È): 1024KB
+Oracle Solaris/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -834,10 +834,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Windows: ²¾ÁÛ¥á¥â¥ê¡¼¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+Windows: 仮想メモリーã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤷ¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã‚’ç•°ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -850,46 +850,46 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:ThreadStackSize\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:ThreadStackSize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xusealtsigs
 .RS 4
-JVMÆâÉô¥·¥°¥Ê¥ë¤Î\fISIGUSR1\fR¤ª¤è¤Ó\fISIGUSR2\fR¤Î¤«¤ï¤ê¤Ë¡¢ÂåÂØ¥·¥°¥Ê¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-XX:+UseAltSigs\fR¤ÈƱÅù¤Ç¤¹¡£
+JVM内部シグナルã®\fISIGUSR1\fRãŠã‚ˆã³\fISIGUSR2\fRã®ã‹ã‚ã‚Šã«ã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã‚’使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-XX:+UseAltSigs\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-Xverify:\fImode\fR
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ù¥ê¥Õ¥¡¥¤¥¢¤Î¥â¡¼¥É¤òÀßÄꤷ¤Þ¤¹¡£¥Ð¥¤¥È¥³¡¼¥É¤Î¸¡¾Ú¤Ï°ìÉô¤ÎÌäÂê¤Î¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ËÌòΩ¤Á¤Þ¤¹¤¬¡¢¼Â¹ÔÃæ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ø¤Î¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤òÁýÂ礵¤»¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒ™ãƒªãƒ•ã‚¡ã‚¤ã‚¢ã®ãƒ¢ãƒ¼ãƒ‰ã‚’設定ã—ã¾ã™ã€‚ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã®æ¤œè¨¼ã¯ä¸€éƒ¨ã®å•é¡Œã®ãƒˆãƒ©ãƒ–ルシューティングã«å½¹ç«‹ã¡ã¾ã™ãŒã€å®Ÿè¡Œä¸­ã®ã‚¢ãƒ—リケーションã¸ã®ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã‚’増大ã•ã›ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 none
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò¸¡¾Ú¤·¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê¡¢µ¯Æ°»þ´Ö¤¬Ã»½Ì¤µ¤ì¡¢Java¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ëÊݸî¤â·Ú¸º¤µ¤ì¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’検証ã—ã¾ã›ã‚“。ã“ã‚Œã«ã‚ˆã‚Šã€èµ·å‹•æ™‚é–“ãŒçŸ­ç¸®ã•ã‚Œã€Javaã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ä¿è­·ã‚‚軽減ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 remote
 .RS 4
-¥Í¥Ã¥È¥ï¡¼¥¯¤ò²ð¤·¤Æ¥ê¥â¡¼¥È¤Ç¥í¡¼¥É¤µ¤ì¤ë¥¯¥é¥¹¤Î¤ß¤ò¸¡¾Ú¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-Xverify\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’介ã—ã¦ãƒªãƒ¢ãƒ¼ãƒˆã§ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®ã¿ã‚’検証ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-Xverify\fRオプションを指定ã—ãªã„å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 all
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ò¸¡¾Ú¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã‚’検証ã—ã¾ã™ã€‚
 .RE
 .RE
-.SS "¹âÅ٤ʥé¥ó¥¿¥¤¥à¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªãƒ©ãƒ³ã‚¿ã‚¤ãƒ ãƒ»ã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot VM¤Î¼Â¹Ô»þ¤ÎÆ°ºî¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot VMã®å®Ÿè¡Œæ™‚ã®å‹•ä½œã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+DisableAttachMechanism
 .RS 4
-JVM¤Ë¥Ä¡¼¥ë¤ò¥¢¥¿¥Ã¥Á¤¹¤ë¥á¥«¥Ë¥º¥à¤ò̵¸ú¤Ë¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¤³¤ì¤Ï¡¢¥¢¥¿¥Ã¥Á¡¦¥á¥«¥Ë¥º¥à¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fIjcmd\fR¡¢\fIjstack\fR¡¢\fIjmap\fR¡¢\fIjinfo\fR¤Ê¤É¤Î¥Ä¡¼¥ë¤ò»ÈÍѤǤ­¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+JVMã«ãƒ„ールをアタッãƒã™ã‚‹ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’無効ã«ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã“ã‚Œã¯ã€ã‚¢ã‚¿ãƒƒãƒãƒ»ãƒ¡ã‚«ãƒ‹ã‚ºãƒ ã‚’有効ã«ã™ã‚‹ã¨ã€\fIjcmd\fRã€\fIjstack\fRã€\fIjmap\fRã€\fIjinfo\fRãªã©ã®ãƒ„ールを使用ã§ãã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:ErrorFile=\fIfilename\fR
 .RS 4
-¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¥¨¥é¡¼¡¦¥Ç¡¼¥¿¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIhs_err_pid\fR\fIpid\fR\fI\&.log\fR
-(\fIpid\fR¤Ï¥¨¥é¡¼¤Î¸¶°ø¤È¤Ê¤Ã¤¿¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤Ë¤Ê¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥í¥°¡¦¥Õ¥¡¥¤¥ë¤òÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(¥×¥í¥»¥¹¤Î¼±Ê̻ҤÏ\fI%p\fR¤È¤·¤Æ»ØÄꤵ¤ì¤Þ¤¹)¡£
+リカãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã«ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ‡ãƒ¼ã‚¿ãŒæ›¸ãè¾¼ã¾ã‚Œã‚‹ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIhs_err_pid\fR\fIpid\fR\fI\&.log\fR
+(\fIpid\fRã¯ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã¨ãªã£ãŸãƒ—ロセスã®è­˜åˆ¥å­)ã«ãªã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(プロセスã®è­˜åˆ¥å­ã¯\fI%p\fRã¨ã—ã¦æŒ‡å®šã•ã‚Œã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -900,7 +900,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¨¥é¡¼¡¦¥í¥°¤ò\fI/var/log/java/java_error\&.log\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ­ã‚°ã‚’\fI/var/log/java/java_error\&.log\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -911,14 +911,14 @@
 .if n \{\
 .RE
 .\}
-(ÎΰèÉÔ­¡¢¸¢¸Â¤ÎÌäÂê¤Þ¤¿¤ÏÊ̤ÎÌäÂê¤Ë¤è¤ê)»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Ê¤¤¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î°ì»þ¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£°ì»þ¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fI/tmp\fR¤Ç¤¹¡£
+(領域ä¸è¶³ã€æ¨©é™ã®å•é¡Œã¾ãŸã¯åˆ¥ã®å•é¡Œã«ã‚ˆã‚Š)指定ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ããªã„å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ä¸€æ™‚ディレクトリã«ä½œæˆã•ã‚Œã¾ã™ã€‚一時ディレクトリã¯\fI/tmp\fRã§ã™ã€‚
 .RE
 .PP
 \-XX:LargePageSizeInBytes=\fIsize\fR
 .RS 4
-Java¥Ò¡¼¥×¤Ë»ÈÍѤµ¤ì¤ëÂ礭¤¤¥Ú¡¼¥¸¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£\fIsize\fR°ú¿ô¤Ï¡¢2¤ÎÎß¾è(2¡¢4¡¢8¡¢16¡¢\&.\&.\&.)¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥¤¥º¤Ï0¤ËÀßÄꤵ¤ì¡¢¤³¤ì¤Ï¡¢JVM¤Ç¤ÏÂ礭¤¤¥Ú¡¼¥¸¤Î¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+Javaヒープã«ä½¿ç”¨ã•ã‚Œã‚‹å¤§ãã„ページã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚\fIsize\fR引数ã¯ã€2ã®ç´¯ä¹—(2ã€4ã€8ã€16ã€\&.\&.\&.)ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µã‚¤ã‚ºã¯0ã«è¨­å®šã•ã‚Œã€ã“ã‚Œã¯ã€JVMã§ã¯å¤§ãã„ページã®ã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Â礭¤¤¥Ú¡¼¥¸¤Î¥µ¥¤¥º¤ò4¥á¥¬¥Ð¥¤¥È(MB)¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å¤§ãã„ページã®ã‚µã‚¤ã‚ºã‚’4メガãƒã‚¤ãƒˆ(MB)ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -933,9 +933,9 @@
 .PP
 \-XX:MaxDirectMemorySize=\fIsize\fR
 .RS 4
-¿·µ¬I/O (\fIjava\&.nio\fR¥Ñ¥Ã¥±¡¼¥¸)¤ÎľÀܥХåե¡³äÅö¤Æ¤ÎºÇÂç¹ç·×¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥¤¥º¤Ï0¤ËÀßÄꤵ¤ì¡¢¤³¤ì¤Ï¡¢JVM¤Ç¤ÏNIO¤ÎľÀܥХåե¡³äÅö¤Æ¤Î¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+æ–°è¦I/O (\fIjava\&.nio\fRパッケージ)ã®ç›´æŽ¥ãƒãƒƒãƒ•ã‚¡å‰²å½“ã¦ã®æœ€å¤§åˆè¨ˆã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µã‚¤ã‚ºã¯0ã«è¨­å®šã•ã‚Œã€ã“ã‚Œã¯ã€JVMã§ã¯NIOã®ç›´æŽ¥ãƒãƒƒãƒ•ã‚¡å‰²å½“ã¦ã®ã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢NIO¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€NIOサイズを異ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -952,30 +952,30 @@
 .PP
 \-XX:NativeMemoryTracking=\fImode\fR
 .RS 4
-JVM¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¥È¥é¥Ã¥­¥ó¥°¤Î¥â¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Ê\fImode\fR°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+JVMã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリー使用状æ³ã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ã®ãƒ¢ãƒ¼ãƒ‰ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãª\fImode\fR引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 off
 .RS 4
-JVM¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼»ÈÍѾõ¶·¤òÄÉÀפ·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢\fI\-XX:NativeMemoryTracking\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+JVMã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリー使用状æ³ã‚’追跡ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€\fI\-XX:NativeMemoryTracking\fRオプションを指定ã—ãªã„å ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 summary
 .RS 4
-JVM¥µ¥Ö¥·¥¹¥Æ¥à(Java¥Ò¡¼¥×¡¢¥¯¥é¥¹¡¢¥³¡¼¥É¡¢¥¹¥ì¥Ã¥É¤Ê¤É)¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¤ßÄÉÀפ·¤Þ¤¹¡£
+JVMサブシステム(Javaヒープã€ã‚¯ãƒ©ã‚¹ã€ã‚³ãƒ¼ãƒ‰ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãªã©)ã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã®ã¿è¿½è·¡ã—ã¾ã™ã€‚
 .RE
 .PP
 detail
 .RS 4
-JVM¥µ¥Ö¥·¥¹¥Æ¥à¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤Î¥È¥é¥Ã¥­¥ó¥°¤Ë²Ã¤¨¤Æ¡¢¸Ä¡¹¤Î\fICallSite\fR
-(¸Ä¡¹¤Î²¾ÁÛ¥á¥â¥ê¡¼¡¦¥ê¡¼¥¸¥ç¥ó¤ª¤è¤Ó¤½¤Î¥³¥ß¥Ã¥ÈºÑ¥ê¡¼¥¸¥ç¥ó)¤Ë¤è¤ë¥á¥â¥ê¡¼»ÈÍѾõ¶·¤òÄÉÀפ·¤Þ¤¹¡£
+JVMサブシステムã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ã«åŠ ãˆã¦ã€å€‹ã€…ã®\fICallSite\fR
+(個々ã®ä»®æƒ³ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãŠã‚ˆã³ãã®ã‚³ãƒŸãƒƒãƒˆæ¸ˆãƒªãƒ¼ã‚¸ãƒ§ãƒ³)ã«ã‚ˆã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨çŠ¶æ³ã‚’追跡ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:OnError=\fIstring\fR
 .RS 4
-¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤È¤­¤Ë¼Â¹Ô¤¹¤ë¡¢¥«¥¹¥¿¥à¡¦¥³¥Þ¥ó¥É¤Þ¤¿¤Ï°ìÏ¢¤Î¥»¥ß¥³¥í¥ó¶èÀÚ¤ê¤Î¥³¥Þ¥ó¥É¤òÀßÄꤷ¤Þ¤¹¡£Ê¸»úÎó¤Ë¶õÇò¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+リカãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸã¨ãã«å®Ÿè¡Œã™ã‚‹ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã¾ãŸã¯ä¸€é€£ã®ã‚»ãƒŸã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’設定ã—ã¾ã™ã€‚文字列ã«ç©ºç™½ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fI\-XX:OnError\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥¢¡¦¥¤¥á¡¼¥¸¤òºîÀ®¤¹¤ë¤¿¤á¤Ë\fIgcore\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëÊýË¡¡¢¤ª¤è¤Ó¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤Î¾ì¹ç¤Ë¥Ç¥Ð¥Ã¥¬¤òµ¯Æ°¤·¤Æ¥×¥í¥»¥¹¤ËÀܳ¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(\fI%p\fR¤Ï¸½ºß¤Î¥×¥í¥»¥¹¤ò»ØÄꤷ¤Þ¤¹)¡£
+次ã®ä¾‹ã§ã¯ã€\fI\-XX:OnError\fRオプションを使用ã—ã¦ã‚³ã‚¢ãƒ»ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’作æˆã™ã‚‹ãŸã‚ã«\fIgcore\fRコマンドを実行ã™ã‚‹æ–¹æ³•ã€ãŠã‚ˆã³ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ã®å ´åˆã«ãƒ‡ãƒãƒƒã‚¬ã‚’èµ·å‹•ã—ã¦ãƒ—ロセスã«æŽ¥ç¶šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(\fI%p\fRã¯ç¾åœ¨ã®ãƒ—ロセスを指定ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -990,27 +990,27 @@
 .PP
 \-XX:OnOutOfMemoryError=\fIstring\fR
 .RS 4
-\fIOutOfMemoryError\fRÎã³°¤¬ºÇ½é¤Ë¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤Ë¼Â¹Ô¤¹¤ë¡¢¥«¥¹¥¿¥à¡¦¥³¥Þ¥ó¥É¤Þ¤¿¤Ï°ìÏ¢¤Î¥»¥ß¥³¥í¥ó¶èÀÚ¤ê¤Î¥³¥Þ¥ó¥É¤òÀßÄꤷ¤Þ¤¹¡£Ê¸»úÎó¤Ë¶õÇò¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥Éʸ»úÎó¤ÎÎã¤Ï¡¢\fI\-XX:OnError\fR¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIOutOfMemoryError\fR例外ãŒæœ€åˆã«ã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«å®Ÿè¡Œã™ã‚‹ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã¾ãŸã¯ä¸€é€£ã®ã‚»ãƒŸã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’設定ã—ã¾ã™ã€‚文字列ã«ç©ºç™½ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンド文字列ã®ä¾‹ã¯ã€\fI\-XX:OnError\fRオプションã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:+PrintCommandLineFlags
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ëɽ¼¨¤µ¤ì¤¿¡¢¿Í´Ö¹©³ØŪ¤ËÁªÂò¤·¤¿JVM¥Õ¥é¥°¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ò¡¼¥×Îΰ襵¥¤¥º¤äÁªÂò¤µ¤ì¤¿¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ê¤É¡¢JVM¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤¿¥¨¥ë¥´¥Î¥ß¥Ã¥¯Ãͤò³Îǧ¤¹¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Õ¥é¥°¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£
+コマンドラインã«è¡¨ç¤ºã•ã‚ŒãŸã€äººé–“工学的ã«é¸æŠžã—ãŸJVMフラグã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ’ープ領域サイズやé¸æŠžã•ã‚ŒãŸã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ãªã©ã€JVMã«ã‚ˆã£ã¦è¨­å®šã•ã‚ŒãŸã‚¨ãƒ«ã‚´ãƒŽãƒŸãƒƒã‚¯å€¤ã‚’確èªã™ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ•ãƒ©ã‚°ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+PrintNMTStatistics
 .RS 4
-¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¤¬Í­¸ú¤Ê¾ì¹ç¤Ë¡¢JVM¤Î½ªÎ»»þ¤Ë¼ý½¸¤µ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¡¦¥Ç¡¼¥¿¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹(\fI\-XX:NativeMemoryTracking\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤Î¥È¥é¥Ã¥­¥ó¥°¡¦¥Ç¡¼¥¿¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£
+ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãŒæœ‰åŠ¹ãªå ´åˆã«ã€JVMã®çµ‚了時ã«åŽé›†ã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãƒ»ãƒ‡ãƒ¼ã‚¿ã®å°åˆ·ã‚’有効ã«ã—ã¾ã™(\fI\-XX:NativeMemoryTracking\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„)。デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®ãƒˆãƒ©ãƒƒã‚­ãƒ³ã‚°ãƒ»ãƒ‡ãƒ¼ã‚¿ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+ShowMessageBoxOnError
 .RS 4
-JVM¤Ç¥ê¥«¥Ð¥êÉÔǽ¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥À¥¤¥¢¥í¥°¡¦¥Ü¥Ã¥¯¥¹¤Îɽ¼¨¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢JVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤·¤Æ¥¨¥é¡¼¤Î¸¶°ø¤òÄ´ºº¤Ç¤­¤ë¤è¤¦¤Ë¡¢JVM¤ò½ªÎ»¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¡¢¥×¥í¥»¥¹¤ò¥¢¥¯¥Æ¥£¥Ö¤Ê¤Þ¤Þ¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+JVMã§ãƒªã‚«ãƒãƒªä¸èƒ½ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãƒ»ãƒœãƒƒã‚¯ã‚¹ã®è¡¨ç¤ºã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã—ã¦ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã‚’調査ã§ãるよã†ã«ã€JVMを終了ã—ãªã„よã†ã«ã—ã¦ã€ãƒ—ロセスをアクティブãªã¾ã¾ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:ThreadStackSize=\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϥץé¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+スレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1020,7 +1020,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/ARM (32¥Ó¥Ã¥È): 320KB
+Linux/ARM (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1031,7 +1031,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/i386 (32¥Ó¥Ã¥È): 320KB
+Linux/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1042,7 +1042,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Linux/x64 (64¥Ó¥Ã¥È): 1024KB
+Linux/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1053,7 +1053,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-OS X (64¥Ó¥Ã¥È): 1024KB
+OS X (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1064,7 +1064,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/i386 (32¥Ó¥Ã¥È): 320KB
+Oracle Solaris/i386 (32ビット): 320KB
 .RE
 .sp
 .RS 4
@@ -1075,7 +1075,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Oracle Solaris/x64 (64¥Ó¥Ã¥È): 1024KB
+Oracle Solaris/x64 (64ビット): 1024KB
 .RE
 .sp
 .RS 4
@@ -1086,10 +1086,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Windows: ²¾ÁÛ¥á¥â¥ê¡¼¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+Windows: 仮想メモリーã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¤ò°Û¤Ê¤ëñ°Ì¤Ç1024KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã‚’ç•°ãªã‚‹å˜ä½ã§1024KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1102,86 +1102,86 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xss\fR¤ÈƱÅù¤Ç¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-Xss\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+TraceClassLoading
 .RS 4
-¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤ë¤È¤­¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨ãã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassLoadingPreorder
 .RS 4
-¥¯¥é¥¹¤¬»²¾È¤µ¤ì¤ë½ç½ø¤Ç¡¢¥í¡¼¥É¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒå‚ç…§ã•ã‚Œã‚‹é †åºã§ã€ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassResolution
 .RS 4
-Äê¿ô¥×¡¼¥ë¤Î²ò·è¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢Äê¿ô¥×¡¼¥ë¤Î²ò·è¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+定数プールã®è§£æ±ºã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€å®šæ•°ãƒ—ールã®è§£æ±ºã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceClassUnloading
 .RS 4
-¥¯¥é¥¹¤¬¥¢¥ó¥í¡¼¥É¤µ¤ì¤ë¤È¤­¤Î¥¯¥é¥¹¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¯¥é¥¹¤Ï¥È¥ì¡¼¥¹¤µ¤ì¤Þ¤»¤ó¡£
+クラスãŒã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨ãã®ã‚¯ãƒ©ã‚¹ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¯ãƒ©ã‚¹ã¯ãƒˆãƒ¬ãƒ¼ã‚¹ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+TraceLoaderConstraints
 .RS 4
-¥í¡¼¥À¡¼À©Ìó¤Îµ­Ï¿¤Î¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥í¡¼¥À¡¼À©Ìó¤Îµ­Ï¿¤ÏÄÉÀפµ¤ì¤Þ¤»¤ó¡£
+ローダー制約ã®è¨˜éŒ²ã®ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ­ãƒ¼ãƒ€ãƒ¼åˆ¶ç´„ã®è¨˜éŒ²ã¯è¿½è·¡ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseAltSigs
 .RS 4
-JVMÆâÉô¥·¥°¥Ê¥ë¤Î\fISIGUSR1\fR¤ª¤è¤Ó\fISIGUSR2\fR¤Î¤«¤ï¤ê¤Ë¡¢ÂåÂØ¥·¥°¥Ê¥ë¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢ÂåÂØ¥·¥°¥Ê¥ë¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xusealtsigs\fR¤ÈƱÅù¤Ç¤¹¡£
+JVM内部シグナルã®\fISIGUSR1\fRãŠã‚ˆã³\fISIGUSR2\fRã®ã‹ã‚ã‚Šã«ã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ä»£æ›¿ã‚·ã‚°ãƒŠãƒ«ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯\fI\-Xusealtsigs\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+UseBiasedLocking
 .RS 4
-¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤«¤Ê¤ê¤ÎÎ̤ÎÈ󶥹ç¤ÎƱ´ü²½¤¬¤¢¤ë°ìÉô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¤³¤Î¥Õ¥é¥°¤òÍ­¸ú¤Ë¤¹¤ë¤ÈÂçÉý¤Ê¹â®²½¤¬¼Â¸½¤·¤Þ¤¹¤¬¡¢ÆÃÄê¤Î¥Ñ¥¿¡¼¥ó¤Î¥í¥Ã¥¯¤¬¤¢¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢Â®ÅÙ¤¬Äã²¼¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤ÎÊýË¡¤Î¾ÜºÙ¤Ï¡¢http://www\&.oracle\&.com/technetwork/java/tuning\-139912\&.html#section4\&.2\&.5¤Ë¤¢¤ëJava¥Á¥å¡¼¥Ë¥ó¥°¤Î¥Û¥ï¥¤¥È¡¦¥Ú¡¼¥Ñ¡¼¤ÎÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã‹ãªã‚Šã®é‡ã®éžç«¶åˆã®åŒæœŸåŒ–ãŒã‚る一部ã®ã‚¢ãƒ—リケーションã¯ã€ã“ã®ãƒ•ãƒ©ã‚°ã‚’有効ã«ã™ã‚‹ã¨å¤§å¹…ãªé«˜é€ŸåŒ–ãŒå®Ÿç¾ã—ã¾ã™ãŒã€ç‰¹å®šã®ãƒ‘ターンã®ãƒ­ãƒƒã‚¯ãŒã‚るアプリケーションã¯ã€é€Ÿåº¦ãŒä½Žä¸‹ã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã®æ–¹æ³•ã®è©³ç´°ã¯ã€http://www\&.oracle\&.com/technetwork/java/tuning\-139912\&.html#section4\&.2\&.5ã«ã‚ã‚‹Javaãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ã®ãƒ›ãƒ¯ã‚¤ãƒˆãƒ»ãƒšãƒ¼ãƒ‘ーã®ä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Ð¥¤¥¢¥¹¡¦¥í¥Ã¥¯¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒã‚¤ã‚¢ã‚¹ãƒ»ãƒ­ãƒƒã‚¯ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseCompressedOops
 .RS 4
-°µ½Ì¤µ¤ì¤¿¥Ý¥¤¥ó¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¡¢64¥Ó¥Ã¥È¤Î¥Ý¥¤¥ó¥¿¤Ç¤Ï¤Ê¤¯32¥Ó¥Ã¥È¤Î¥ª¥Õ¥»¥Ã¥È¤È¤·¤Æɽ¤µ¤ì¡¢¤³¤ì¤Ë¤è¤ê¡¢32GB¤è¤ê¾®¤µ¤¤Java¥Ò¡¼¥×¡¦¥µ¥¤¥º¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô»þ¤Ë¡¢Ä̾¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬¸þ¾å¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢64¥Ó¥Ã¥È¤ÎJVM¤Ç¤Î¤ßµ¡Ç½¤·¤Þ¤¹¡£
+圧縮ã•ã‚ŒãŸãƒã‚¤ãƒ³ã‚¿ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€ã‚ªãƒ–ジェクトå‚ç…§ã¯ã€64ビットã®ãƒã‚¤ãƒ³ã‚¿ã§ã¯ãªã32ビットã®ã‚ªãƒ•ã‚»ãƒƒãƒˆã¨ã—ã¦è¡¨ã•ã‚Œã€ã“ã‚Œã«ã‚ˆã‚Šã€32GBよりå°ã•ã„Javaヒープ・サイズã®ã‚¢ãƒ—リケーションã®å®Ÿè¡Œæ™‚ã«ã€é€šå¸¸ã€ãƒ‘フォーマンスãŒå‘上ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€64ビットã®JVMã§ã®ã¿æ©Ÿèƒ½ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢°µ½Ì¥Ý¥¤¥ó¥¿¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€åœ§ç¸®ãƒã‚¤ãƒ³ã‚¿ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseLargePages
 .RS 4
-Â礭¤¤¥Ú¡¼¥¸¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Â礭¤¤¥Ú¡¼¥¸¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseLargePages\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+大ãã„ページã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚大ãã„ページã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseLargePages\fRを指定ã—ã¾ã™ã€‚
 .sp
-¾ÜºÙ¤Ï¡¢http://www\&.oracle\&.com/technetwork/java/javase/tech/largememory\-jsp\-137182\&.html¤Ë¤¢¤ëÂ礭¤¤¥á¥â¥ê¡¼¡¦¥Ú¡¼¥¸ÍѤÎJava¥µ¥Ý¡¼¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+詳細ã¯ã€http://www\&.oracle\&.com/technetwork/java/javase/tech/largememory\-jsp\-137182\&.htmlã«ã‚る大ãã„メモリー・ページ用ã®Javaサãƒãƒ¼ãƒˆã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:+UseMembar
 .RS 4
-¥¹¥ì¥Ã¥É¤Î¾õÂÖ¤ÎÁ«°Ü¤Ç¥á¥ó¥Ð¡¼¤Îȯ¹Ô¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Í­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ëPower PC¤ª¤è¤ÓARM¥µ¡¼¥Ð¡¼¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¾å¤Ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Power PC¤ÈARM¤Î¥¹¥ì¥Ã¥É¾õÂÖÁ«°Ü¤ËÂФ¹¤ë¥á¥ó¥Ð¡¼¤Îȯ¹Ô¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseMembar\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+スレッドã®çŠ¶æ…‹ã®é·ç§»ã§ãƒ¡ãƒ³ãƒãƒ¼ã®ç™ºè¡Œã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€æœ‰åŠ¹ã«ãªã£ã¦ã„ã‚‹Power PCãŠã‚ˆã³ARMサーãƒãƒ¼ã‚’除ãã™ã¹ã¦ã®ãƒ—ラットフォーム上ã§ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚Power PCã¨ARMã®ã‚¹ãƒ¬ãƒƒãƒ‰çŠ¶æ…‹é·ç§»ã«å¯¾ã™ã‚‹ãƒ¡ãƒ³ãƒãƒ¼ã®ç™ºè¡Œã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseMembar\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UsePerfData
 .RS 4
-\fIperfdata\fRµ¡Ç½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢JVM¤Î¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥Æ¥¹¥È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤ò̵¸ú¤Ë¤¹¤ë¤È¡¢\fIhsperfdata_userid\fR¥Ç¥£¥ì¥¯¥È¥ê¤ÎºîÀ®¤òÍÞÀ©¤·¤Þ¤¹¡£\fIperfdata\fRµ¡Ç½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UsePerfData\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIperfdata\fR機能を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€JVMã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ãƒ‘フォーマンス・テストãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚ã“れを無効ã«ã™ã‚‹ã¨ã€\fIhsperfdata_userid\fRディレクトリã®ä½œæˆã‚’抑制ã—ã¾ã™ã€‚\fIperfdata\fR機能を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UsePerfData\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+AllowUserSignalHandlers
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤è¤ë¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤Î¥¤¥ó¥¹¥È¡¼¥ë¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¥·¥°¥Ê¥ë¡¦¥Ï¥ó¥É¥é¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+アプリケーションã«ã‚ˆã‚‹ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¢ãƒ—リケーションã¯ã‚·ã‚°ãƒŠãƒ«ãƒ»ãƒãƒ³ãƒ‰ãƒ©ã‚’インストールã™ã‚‹ã“ã¨ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。
 .RE
-.SS "¹âÅÙ¤ÊJIT¥³¥ó¥Ñ¥¤¥é¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªJITコンパイラ・オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java HotSpot VM¤Ç¼Â¹Ô¤µ¤ì¤ëưŪ¤Êjust\-in\-time (JIT)¥³¥ó¥Ñ¥¤¥é¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€Java HotSpot VMã§å®Ÿè¡Œã•ã‚Œã‚‹å‹•çš„ãªjust\-in\-time (JIT)コンパイラを制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+AggressiveOpts
 .RS 4
-ÀѶËŪ¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹ºÇŬ²½µ¡Ç½¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ïº£¸å¤Î¥ê¥ê¡¼¥¹¤Ç¥Ç¥Õ¥©¥ë¥È¤Ë¤Ê¤ëͽÄê¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢»î¸³Åª¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹µ¡Ç½¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+ç©æ¥µçš„ãªãƒ‘フォーマンス最é©åŒ–機能ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã«ãªã‚‹äºˆå®šã§ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è©¦é¨“çš„ãªãƒ‘フォーマンス機能ã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:AllocateInstancePrefetchLines=\fIlines\fR
 .RS 4
-¥¤¥ó¥¹¥¿¥ó¥¹³äÅö¤Æ¥Ý¥¤¥ó¥¿¤ÎÁ°¤Ë¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¹Ô¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¹Ô¿ô¤Ï1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インスタンス割当ã¦ãƒã‚¤ãƒ³ã‚¿ã®å‰ã«ãƒ—リフェッãƒã™ã‚‹è¡Œæ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ—リフェッãƒã™ã‚‹è¡Œæ•°ã¯1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1196,7 +1196,7 @@
 .PP
 \-XX:AllocatePrefetchInstr=\fIinstruction\fR
 .RS 4
-³äÅö¤Æ¥Ý¥¤¥ó¥¿¤ÎÁ°¤Ë¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤òÀßÄꤷ¤Þ¤¹¡£»ÈÍѲÄǽ¤ÊÃͤÏ0¤«¤é3¤Þ¤Ç¤Ç¤¹¡£ÃͤÎÇظå¤Ë¤¢¤ë¼ÂºÝ¤ÎÌ¿Îá¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤Ï0¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+割当ã¦ãƒã‚¤ãƒ³ã‚¿ã®å‰ã«ãƒ—リフェッãƒã™ã‚‹ãƒ—リフェッãƒå‘½ä»¤ã‚’設定ã—ã¾ã™ã€‚使用å¯èƒ½ãªå€¤ã¯0ã‹ã‚‰3ã¾ã§ã§ã™ã€‚値ã®èƒŒå¾Œã«ã‚る実際ã®å‘½ä»¤ã¯ã€ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ—リフェッãƒå‘½ä»¤ã¯0ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1211,7 +1211,7 @@
 .PP
 \-XX:AllocatePrefetchStepSize=\fIsize\fR
 .RS 4
-½ç¼¡¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤Î¥¹¥Æ¥Ã¥×¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¹¥Æ¥Ã¥×¡¦¥µ¥¤¥º¤Ï16¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+順次プリフェッãƒå‘½ä»¤ã®ã‚¹ãƒ†ãƒƒãƒ—・サイズ(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¹ãƒ†ãƒƒãƒ—・サイズã¯16ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1226,12 +1226,12 @@
 .PP
 \-XX:+BackgroundCompilation
 .RS 4
-¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¡¦¥³¥ó¥Ñ¥¤¥ë¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-BackgroundCompilation\fR¤ò»ØÄꤷ¤Þ¤¹(¤³¤ì¤Ï\fI\-Xbatch\fR¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤Ç¤¹)¡£
+ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ»ã‚³ãƒ³ãƒ‘イルを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-BackgroundCompilation\fRを指定ã—ã¾ã™(ã“ã‚Œã¯\fI\-Xbatch\fRを指定ã™ã‚‹ã®ã¨åŒç­‰ã§ã™)。
 .RE
 .PP
 \-XX:CICompilerCount=\fIthreads\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤Ë»ÈÍѤ¹¤ë¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¿ô¤Ï¡¢¥µ¡¼¥Ð¡¼JVM¤Î¾ì¹ç¤Ï2¡¢¥¯¥é¥¤¥¢¥ó¥ÈJVM¤Î¾ì¹ç¤Ï1¤ËÀßÄꤵ¤ì¤Æ¤ª¤ê¡¢ÁØ¥³¥ó¥Ñ¥¤¥ë¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥³¥¢¿ô¤Ë¹ç¤»¤ÆÁý¸º¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¤Î¿ô¤ò2¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルã«ä½¿ç”¨ã™ã‚‹ã‚³ãƒ³ãƒ‘イラ・スレッドã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã¯ã€ã‚µãƒ¼ãƒãƒ¼JVMã®å ´åˆã¯2ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆJVMã®å ´åˆã¯1ã«è¨­å®šã•ã‚Œã¦ãŠã‚Šã€å±¤ã‚³ãƒ³ãƒ‘イルãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚³ã‚¢æ•°ã«åˆã›ã¦å¢—減ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’2ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1246,7 +1246,7 @@
 .PP
 \-XX:CodeCacheMinimumFreeSpace=\fIsize\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤ËɬÍפʺǾ®¶õ¤­Îΰè(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£ºÇ¾®¶õ¤­Îΰè¤è¤ê¾¯¤Ê¤¤Îΰ褷¤«»Ä¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥ë¤ÏÄä»ß¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï500KB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇ¾®¶õ¤­Îΰè¤ò1024MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルã«å¿…è¦ãªæœ€å°ç©ºã領域(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚最å°ç©ºã領域より少ãªã„領域ã—ã‹æ®‹ã£ã¦ã„ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イルã¯åœæ­¢ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯500KBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€æœ€å°ç©ºã領域を1024MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1261,7 +1261,7 @@
 .PP
 \-XX:CompileCommand=\fIcommand\fR,\fImethod\fR[,\fIoption\fR]
 .RS 4
-¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é\fIString\fR¥¯¥é¥¹¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+メソッドã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰\fIString\fRクラスã®\fIindexOf()\fRメソッドを実行ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1272,7 +1272,7 @@
 .if n \{\
 .RE
 .\}
-¥¹¥é¥Ã¥·¥å(\fI/\fR)¤Ç¶èÀÚ¤é¤ì¤¿¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¡¢´°Á´¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ÀÚ¼è¤ê¤ÈŽÉÕ¤±¤ÎÁàºî¤òÍưפˤ¹¤ë¤¿¤á¤Ë¡¢\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥á¥½¥Ã¥É̾¤Î·Á¼°¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+スラッシュ(\fI/\fR)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€ã€å®Œå…¨ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚切å–ã‚Šã¨è²¼ä»˜ã‘ã®æ“作を容易ã«ã™ã‚‹ãŸã‚ã«ã€\fI\-XX:+PrintCompilation\fRオプションãŠã‚ˆã³\fI\-XX:+LogCompilation\fRオプションã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰åã®å½¢å¼ã‚’使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1283,7 +1283,7 @@
 .if n \{\
 .RE
 .\}
-½ð̾¤Ê¤·¤Ç¥á¥½¥Ã¥É¤ò»ØÄꤹ¤ë¤È¡¢¥³¥Þ¥ó¥É¤Ï»ØÄꤷ¤¿Ì¾Á°¤ò»ý¤Ä¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ËŬÍѤµ¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë·Á¼°¤Ç¥á¥½¥Ã¥É¤Î½ð̾¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é\fIString\fR¥¯¥é¥¹¤Î\fIindexOf(String)\fR¥á¥½¥Ã¥É¤Î¤ß½ü³°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ç½²åãªã—ã§ãƒ¡ã‚½ãƒƒãƒ‰ã‚’指定ã™ã‚‹ã¨ã€ã‚³ãƒžãƒ³ãƒ‰ã¯æŒ‡å®šã—ãŸåå‰ã‚’æŒã¤ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«é©ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å½¢å¼ã§ãƒ¡ã‚½ãƒƒãƒ‰ã®ç½²åを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰\fIString\fRクラスã®\fIindexOf(String)\fRメソッドã®ã¿é™¤å¤–ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1294,7 +1294,7 @@
 .if n \{\
 .RE
 .\}
-¤Þ¤¿¡¢¥¯¥é¥¹Ì¾¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤Ë¥ï¥¤¥ë¥É¥«¡¼¥É¤È¤·¤Æ¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥³¥ó¥Ñ¥¤¥ë¸µ¤«¤é¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¤¹¤Ù¤Æ¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤ò½ü³°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã¾ãŸã€ã‚¯ãƒ©ã‚¹åãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åã«ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã¨ã—ã¦ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を使用ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚³ãƒ³ãƒ‘イル元ã‹ã‚‰ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ã™ã¹ã¦ã®\fIindexOf()\fRメソッドを除外ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1305,7 +1305,7 @@
 .if n \{\
 .RE
 .\}
-¥«¥ó¥Þ¤È¥Ô¥ê¥ª¥É¤Ï¶õÇò¤ÎÊÌ̾¤Ç¡¢¤³¤ì¤Ë¤è¤ê¡¢¥·¥§¥ë¤ò²ð¤·¤Æ¥³¥ó¥Ñ¥¤¥é¡¦¥³¥Þ¥ó¥É¤òÅϤ¹¤³¤È¤¬Íưפˤʤê¤Þ¤¹¡£°ú¿ô¤ò°úÍÑÉä¤Ç°Ï¤à¤³¤È¤Ç¡¢¶õÇò¤ò¥»¥Ñ¥ì¡¼¥¿¤È¤·¤Æ»ÈÍѤ·¤Æ\fI\-XX:CompileCommand\fR¤Ë°ú¿ô¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+カンマã¨ãƒ”リオドã¯ç©ºç™½ã®åˆ¥åã§ã€ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚§ãƒ«ã‚’介ã—ã¦ã‚³ãƒ³ãƒ‘イラ・コマンドを渡ã™ã“ã¨ãŒå®¹æ˜“ã«ãªã‚Šã¾ã™ã€‚引数を引用符ã§å›²ã‚€ã“ã¨ã§ã€ç©ºç™½ã‚’セパレータã¨ã—ã¦ä½¿ç”¨ã—ã¦\fI\-XX:CompileCommand\fRã«å¼•æ•°ã‚’渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1316,48 +1316,48 @@
 .if n \{\
 .RE
 .\}
-\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÇÅϤµ¤ì¤¿¥³¥Þ¥ó¥É¤ò²òÀϤ·¤¿¸å¤Ë¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï\fI\&.hotspot_compiler\fR¥Õ¥¡¥¤¥ë¤«¤é¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¥³¥Þ¥ó¥É¤òÄɲ乤뤫¡¢¤Þ¤¿¤Ï\fI\-XX:CompileCommandFile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ̤Υե¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:CompileCommand\fRオプションを使用ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æ¸¡ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã‚’解æžã—ãŸå¾Œã«ã€JITコンパイラã¯\fI\&.hotspot_compiler\fRファイルã‹ã‚‰ã‚³ãƒžãƒ³ãƒ‰ã‚’読ã¿å–ã‚Šã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’追加ã™ã‚‹ã‹ã€ã¾ãŸã¯\fI\-XX:CompileCommandFile\fRオプションを使用ã—ã¦åˆ¥ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-Ê£¿ô¤Î¥³¥Þ¥ó¥É¤òÄɲ乤ë¤Ë¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄꤹ¤ë¤«¡¢¤Þ¤¿¤Ï²þ¹Ô¥»¥Ñ¥ì¡¼¥¿(\fI\en\fR)¤ò»ÈÍѤ·¤Æ³Æ°ú¿ô¤ò¶èÀÚ¤ê¤Þ¤¹¡£¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+複数ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’追加ã™ã‚‹ã«ã¯ã€\fI\-XX:CompileCommand\fRオプションを複数回指定ã™ã‚‹ã‹ã€ã¾ãŸã¯æ”¹è¡Œã‚»ãƒ‘レータ(\fI\en\fR)を使用ã—ã¦å„引数を区切りã¾ã™ã€‚次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã§ãã¾ã™ã€‚
 .PP
 break
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤ÎºÇ½é¤ËÄä»ß¤¹¤ë¤¿¤á¤Ë¡¢JVM¤Î¥Ç¥Ð¥Ã¥°»þ¤Î¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イルã®æœ€åˆã«åœæ­¢ã™ã‚‹ãŸã‚ã«ã€JVMã®ãƒ‡ãƒãƒƒã‚°æ™‚ã®ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 compileonly
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò½ü¤¤¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ò¡¢¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤·¤Þ¤¹¡£Ê̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-XX:CompileOnly\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ£¿ô¤Î¥á¥½¥Ã¥É¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ã„ãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’ã€ã‚³ãƒ³ãƒ‘イルã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚別ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-XX:CompileOnly\fRオプションを使用ã—ã¦è¤‡æ•°ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 dontinline
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥¤¥ó¥é¥¤¥ó²½¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’インライン化ã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 exclude
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã‹ã‚‰é™¤å¤–ã—ã¾ã™ã€‚
 .RE
 .PP
 help
 .RS 4
-\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò°õºþ¤·¤Þ¤¹¡£
+\fI\-XX:CompileCommand\fRオプションã®ãƒ˜ãƒ«ãƒ—・メッセージをå°åˆ·ã—ã¾ã™ã€‚
 .RE
 .PP
 inline
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò¥¤¥ó¥é¥¤¥ó²½¤·¤è¤¦¤È¤·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’インライン化ã—よã†ã¨ã—ã¾ã™ã€‚
 .RE
 .PP
 log
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ËÂФ·¤Æ¡¢(\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ)¥³¥ó¥Ñ¥¤¥ë¡¦¥í¥®¥ó¥°¤ò½ü³°¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤Ë¥í¥®¥ó¥°¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’除ãã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«å¯¾ã—ã¦ã€(\fI\-XX:+LogCompilation\fRオプションを使用ã—ã¦)コンパイル・ロギングを除外ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ãƒ­ã‚®ãƒ³ã‚°ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 option
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢ºÇ¸å¤Î°ú¿ô(\fIoption\fR)¤Î¤«¤ï¤ê¤Ë¡¢»ØÄꤷ¤¿¥á¥½¥Ã¥É¤ËJIT¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤òÅϤ¹¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢¥á¥½¥Ã¥É̾¤Î¸å¤ÎËöÈø¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIStringBuffer\fR¥¯¥é¥¹¤Î\fIappend()\fR¥á¥½¥Ã¥É¤ËÂФ·¤Æ\fIBlockLayoutByFrequency\fR¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æœ€å¾Œã®å¼•æ•°(\fIoption\fR)ã®ã‹ã‚ã‚Šã«ã€æŒ‡å®šã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã«JITコンパイル・オプションを渡ã™ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚コンパイル・オプションã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰åã®å¾Œã®æœ«å°¾ã«è¨­å®šã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIStringBuffer\fRクラスã®\fIappend()\fRメソッドã«å¯¾ã—ã¦\fIBlockLayoutByFrequency\fRオプションを有効ã«ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1368,17 +1368,17 @@
 .if n \{\
 .RE
 .\}
-¥«¥ó¥Þ¤Þ¤¿¤Ï¶õÇò¤Ç¶èÀڤäơ¢Ê£¿ô¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+カンマã¾ãŸã¯ç©ºç™½ã§åŒºåˆ‡ã£ã¦ã€è¤‡æ•°ã®ã‚³ãƒ³ãƒ‘イル・オプションを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 print
 .RS 4
-»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¸å¤ËÀ¸À®¤µ¤ì¤¿¥¢¥»¥ó¥Ö¥é¡¦¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル後ã«ç”Ÿæˆã•ã‚ŒãŸã‚¢ã‚»ãƒ³ãƒ–ラ・コードを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 quiet
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¡¦¥³¥Þ¥ó¥É¤ò½ÐÎϤ·¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄꤷ¤¿¥³¥Þ¥ó¥É¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR¥¯¥é¥¹¤Î\fIindexOf()\fR¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤«¤é½ü³°¤¹¤ë¾ì¹ç¡¢¼¡¤¬É¸½à½ÐÎϤ˽ÐÎϤµ¤ì¤Þ¤¹¡£
+コンパイル・コマンドを出力ã—ã¾ã›ã‚“。デフォルトã§ã¯ã€\fI\-XX:CompileCommand\fRオプションを使用ã—ã¦æŒ‡å®šã—ãŸã‚³ãƒžãƒ³ãƒ‰ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fRクラスã®\fIindexOf()\fRメソッドã®ã‚³ãƒ³ãƒ‘イルã‹ã‚‰é™¤å¤–ã™ã‚‹å ´åˆã€æ¬¡ãŒæ¨™æº–出力ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1389,15 +1389,15 @@
 .if n \{\
 .RE
 .\}
-¾¤Î\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ÎÁ°¤Ë\fI\-XX:CompileCommand=quiet\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤³¤ì¤òÍÞÀ©¤Ç¤­¤Þ¤¹¡£
+ä»–ã®\fI\-XX:CompileCommand\fRオプションã®å‰ã«\fI\-XX:CompileCommand=quiet\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã“れを抑制ã§ãã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:CompileCommandFile=\fIfilename\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥é¡¦¥³¥Þ¥ó¥É¤ÎÆɼè¤ê¸µ¤Î¥Õ¥¡¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤ë¥³¥Þ¥ó¥É¤ò³ÊǼ¤¹¤ë¤¿¤á¤Ë¡¢\fI\&.hotspot_compiler\fR¥Õ¥¡¥¤¥ë¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+JITコンパイラ・コマンドã®èª­å–ã‚Šå…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€JITコンパイラã«ã‚ˆã£ã¦å®Ÿè¡Œã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’æ ¼ç´ã™ã‚‹ãŸã‚ã«ã€\fI\&.hotspot_compiler\fRファイルãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¡¦¥Õ¥¡¥¤¥ë¤Î³Æ¹Ô¤Ï¡¢¥³¥Þ¥ó¥É¤¬»ÈÍѤµ¤ì¤ë¥³¥Þ¥ó¥É¡¢¥¯¥é¥¹Ì¾¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤òɽ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¹Ô¤Ï¡¢\fIString\fR¥¯¥é¥¹¤Î\fItoString()\fR¥á¥½¥Ã¥É¤ËÂФ·¤Æ¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンド・ファイルã®å„è¡Œã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãŒä½¿ç”¨ã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ã€ã‚¯ãƒ©ã‚¹åãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åを表ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®è¡Œã¯ã€\fIString\fRクラスã®\fItoString()\fRメソッドã«å¯¾ã—ã¦ã‚¢ã‚»ãƒ³ãƒ–リ・コードを出力ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1408,12 +1408,12 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤¹¤ëJIT¥³¥ó¥Ñ¥¤¥é¤Î¥³¥Þ¥ó¥É¤Î»ØÄê¤Î¾ÜºÙ¤Ï¡¢\fI\-XX:CompileCommand\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メソッドã§å®Ÿè¡Œã™ã‚‹JITコンパイラã®ã‚³ãƒžãƒ³ãƒ‰ã®æŒ‡å®šã®è©³ç´°ã¯ã€\fI\-XX:CompileCommand\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-XX:CompileOnly=\fImethods\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤òÀ©¸Â¤¹¤ë(¥«¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿)¥á¥½¥Ã¥É¤Î¥ê¥¹¥È¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥á¥½¥Ã¥É¤Î¤ß¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£´°Á´¥¯¥é¥¹Ì¾(¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à)¤Ç³Æ¥á¥½¥Ã¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR¥¯¥é¥¹¤Î\fIlength()\fR¥á¥½¥Ã¥É¤ª¤è¤Ó\fIList\fR¥¯¥é¥¹¤Î\fIsize()\fR¥á¥½¥Ã¥É¤Î¤ß¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò»ÈÍѤ·¤Þ¤¹¡£
+コンパイルを制é™ã™ã‚‹(カンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸ)メソッドã®ãƒªã‚¹ãƒˆã‚’設定ã—ã¾ã™ã€‚指定ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã¿ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚完全クラスå(パッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€)ã§å„メソッドを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fRクラスã®\fIlength()\fRメソッドãŠã‚ˆã³\fIList\fRクラスã®\fIsize()\fRメソッドã®ã¿ã‚’コンパイルã™ã‚‹ã«ã¯ã€æ¬¡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1424,7 +1424,7 @@
 .if n \{\
 .RE
 .\}
-¥¹¥é¥Ã¥·¥å(\fI/\fR)¤Ç¶èÀÚ¤é¤ì¤¿¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¡¢´°Á´¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£ÀÚ¼è¤ê¤ÈŽÉÕ¤±¤ÎÁàºî¤òÍưפˤ¹¤ë¤¿¤á¤Ë¡¢\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥á¥½¥Ã¥É̾¤Î·Á¼°¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+スラッシュ(\fI/\fR)ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã™ã¹ã¦ã®ãƒ‘ッケージãŠã‚ˆã³ã‚µãƒ–パッケージをå«ã‚€ã€å®Œå…¨ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚切å–ã‚Šã¨è²¼ä»˜ã‘ã®æ“作を容易ã«ã™ã‚‹ãŸã‚ã«ã€\fI\-XX:+PrintCompilation\fRオプションãŠã‚ˆã³\fI\-XX:+LogCompilation\fRオプションã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰åã®å½¢å¼ã‚’使用ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1435,7 +1435,7 @@
 .if n \{\
 .RE
 .\}
-¥ï¥¤¥ë¥É¥«¡¼¥É¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¤¬¡¢¥¯¥é¥¹Ì¾¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸Ì¾¤À¤±¤ò»ØÄꤷ¤Æ¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤â¡¢¥á¥½¥Ã¥É¤À¤±¤ò»ØÄꤷ¤ÆǤ°Õ¤Î¥¯¥é¥¹¤Î¤³¤Î̾Á°¤ò»ý¤Ä¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ワイルドカードã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“ãŒã€ã‚¯ãƒ©ã‚¹åã¾ãŸã¯ãƒ‘ッケージåã ã‘を指定ã—ã¦ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã®ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ã“ã¨ã‚‚ã€ãƒ¡ã‚½ãƒƒãƒ‰ã ã‘を指定ã—ã¦ä»»æ„ã®ã‚¯ãƒ©ã‚¹ã®ã“ã®åå‰ã‚’æŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1452,7 +1452,7 @@
 .PP
 \-XX:CompileThreshold=\fIinvocations\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ëÁ°¤Ë²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¡¼¥Ð¡¼JVM¤Ç¤Ï¡¢JIT¥³¥ó¥Ñ¥¤¥é¤Ï¡¢10,000¤Î²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¼Â¹Ô¤·¤Æ¡¢¸úΨŪ¤Ê¥³¥ó¥Ñ¥¤¥ë¤Î¤¿¤á¤Î¾ðÊó¤ò¼ý½¸¤·¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥ÈJVM¤Î¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤Ï1,500¸Æ½Ð¤·¤Ç¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢²ò¼á¤µ¤ì¤¿¥á¥½¥Ã¥É¸Æ½Ð¤·¤Î¿ô¤ò5,000¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+コンパイルå‰ã«è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚µãƒ¼ãƒãƒ¼JVMã§ã¯ã€JITコンパイラã¯ã€10,000ã®è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を実行ã—ã¦ã€åŠ¹çŽ‡çš„ãªã‚³ãƒ³ãƒ‘イルã®ãŸã‚ã®æƒ…報をåŽé›†ã—ã¾ã™ã€‚クライアントJVMã®å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆè¨­å®šã¯1,500呼出ã—ã§ã™ã€‚次ã®ä¾‹ã§ã¯ã€è§£é‡ˆã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã®æ•°ã‚’5,000ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1463,22 +1463,22 @@
 .if n \{\
 .RE
 .\}
-\fI\-Xcomp\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¤ÎÁ°¤Ë¡¢Java¥á¥½¥Ã¥É¤Î²ò¼á¤ò´°Á´¤Ë̵¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fI\-Xcomp\fRオプションを指定ã—ã¦ã€ã‚³ãƒ³ãƒ‘イルã®å‰ã«ã€Javaメソッドã®è§£é‡ˆã‚’完全ã«ç„¡åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+DoEscapeAnalysis
 .RS 4
-¥¨¥¹¥±¡¼¥×ʬÀϤλÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥¨¥¹¥±¡¼¥×ʬÀϤλÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-DoEscapeAnalysis\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+エスケープ分æžã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚エスケープ分æžã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-DoEscapeAnalysis\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+FailOverToOldVerifier
 .RS 4
-¿·¤·¤¤¥¿¥¤¥×¡¦¥Á¥§¥Ã¥«¤¬¼ºÇÔ¤·¤¿¾ì¹ç¤Î¡¢¸Å¤¤¥Ù¥ê¥Õ¥¡¥¤¥¢¤Ø¤Î¼«Æ°¥Õ¥§¥¤¥ë¥ª¡¼¥Ð¡¼¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢ºÇ¶á¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤Ï̵»ë¤µ¤ì¤Þ¤¹(¤Ä¤Þ¤ê¡¢Ìµ¸ú¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹)¡£¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤òÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+æ–°ã—ã„タイプ・ãƒã‚§ãƒƒã‚«ãŒå¤±æ•—ã—ãŸå ´åˆã®ã€å¤ã„ベリファイアã¸ã®è‡ªå‹•ãƒ•ã‚§ã‚¤ãƒ«ã‚ªãƒ¼ãƒãƒ¼ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æœ€è¿‘ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“ã‚Œã¯ç„¡è¦–ã•ã‚Œã¾ã™(ã¤ã¾ã‚Šã€ç„¡åŠ¹ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™)。å¤ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“れを有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:InitialCodeCacheSize=\fIsize\fR
 .RS 4
-½é´ü¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ500KB¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢½é´ü¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤ò32KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+åˆæœŸã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯500KBã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€åˆæœŸã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚ºã‚’32KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1493,12 +1493,12 @@
 .PP
 \-XX:+Inline
 .RS 4
-¥á¥½¥Ã¥É¤Î¥¤¥ó¥é¥¤¥ó²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¤¿¤á¤Ë¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥á¥½¥Ã¥É¤Î¥¤¥ó¥é¥¤¥ó²½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-Inline\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+メソッドã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ãŸã‚ã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚メソッドã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-Inline\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:InlineSmallCode=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¬É¬Íפʥ³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤ÎºÇÂ祳¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£»ØÄꤷ¤¿¥µ¥¤¥º¤è¤ê¾®¤µ¤¤¥µ¥¤¥º¤Î¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¤ß¤¬¡¢¥¤¥ó¥é¥¤¥ó²½¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇÂ祳¡¼¥É¡¦¥µ¥¤¥º¤Ï1000¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ãŒå¿…è¦ãªã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚指定ã—ãŸã‚µã‚¤ã‚ºã‚ˆã‚Šå°ã•ã„サイズã®ã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã¿ãŒã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–ã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯1000ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1513,16 +1513,16 @@
 .PP
 \-XX:+LogCompilation
 .RS 4
-¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë\fIhotspot\&.log\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Î¥í¥®¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£\fI\-XX:LogFile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢°Û¤Ê¤ë¥í¥°¡¦¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¤È̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹\fIhotspot\&.log\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ã‚³ãƒ³ãƒ‘イル・アクティビティã®ãƒ­ã‚®ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚\fI\-XX:LogFile\fRオプションを使用ã—ã¦ã€ç•°ãªã‚‹ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ‘スã¨åå‰ã‚’指定ã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤Ïµ­Ï¿¤µ¤ì¤Þ¤»¤ó¡£\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚³ãƒ³ãƒ‘イル・アクティビティã¯è¨˜éŒ²ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+LogCompilation\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fI\-XX:+PrintCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤Ó¤Ë¡¢¥³¥ó¥½¡¼¥ë¤Ë½ÐÎϤµ¤ì¤¿¥á¥Ã¥»¡¼¥¸¤ò´Þ¤à¾ÜºÙ¤Ê¿ÇÃǽÐÎϤòÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:+PrintCompilation\fRオプションを使用ã—ã¦ã€ãƒ¡ã‚½ãƒƒãƒ‰ã‚’コンパイルã™ã‚‹ãŸã³ã«ã€ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã«å‡ºåŠ›ã•ã‚ŒãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’å«ã‚€è©³ç´°ãªè¨ºæ–­å‡ºåŠ›ã‚’有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:MaxInlineSize=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¹¤ë¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º¤Ï35¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ã™ã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯35ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1537,7 +1537,7 @@
 .PP
 \-XX:MaxNodeLimit=\fInodes\fR
 .RS 4
-ñ°ì¤Î¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë»þ¤Ë»ÈÍѤµ¤ì¤ë¥Î¡¼¥É¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Î¡¼¥É¤ÎºÇÂç¿ô¤Ï65,000¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+å˜ä¸€ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル時ã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒŽãƒ¼ãƒ‰ã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒŽãƒ¼ãƒ‰ã®æœ€å¤§æ•°ã¯65,000ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1552,7 +1552,7 @@
 .PP
 \-XX:MaxTrivialSize=\fIsize\fR
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤¹¤ëñ½ã¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Ã±½ã¥á¥½¥Ã¥É¤ÎºÇÂç¥Ð¥¤¥È¥³¡¼¥É¡¦¥µ¥¤¥º¤Ï6¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+インライン化ã™ã‚‹å˜ç´”メソッドã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€å˜ç´”メソッドã®æœ€å¤§ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã¯6ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1567,77 +1567,77 @@
 .PP
 \-XX:+OptimizeStringConcat
 .RS 4
-\fIString\fRÏ¢·ëÁàºî¤ÎºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£\fIString\fRÏ¢·ëÁàºî¤ÎºÇŬ²½¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-OptimizeStringConcat\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIString\fR連çµæ“作ã®æœ€é©åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚\fIString\fR連çµæ“作ã®æœ€é©åŒ–を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-OptimizeStringConcat\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintAssembly
 .RS 4
-³°Éô¤Î\fIdisassembler\&.so\fR¥é¥¤¥Ö¥é¥ê¤ò»ÈÍѤ·¤Æ¡¢¥Ð¥¤¥È¥³¡¼¥É²½¤µ¤ì¤¿¥Í¥¤¥Æ¥£¥Ö¤Î¥á¥½¥Ã¥É¤Î¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤òɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ÎÌäÂê¤Î¿ÇÃǤËÌòΩ¤Á¤Þ¤¹¡£
+外部ã®\fIdisassembler\&.so\fRライブラリを使用ã—ã¦ã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰åŒ–ã•ã‚ŒãŸãƒã‚¤ãƒ†ã‚£ãƒ–ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚¢ã‚»ãƒ³ãƒ–リ・コードã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã‚’表示ã™ã‚‹ã“ã¨ãŒã§ãã€ãƒ‘フォーマンスã®å•é¡Œã®è¨ºæ–­ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¢¥»¥ó¥Ö¥ê¡¦¥³¡¼¥É¤Ï°õºþ¤µ¤ì¤Þ¤»¤ó¡£\fI\-XX:+PrintAssembly\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¢ã‚»ãƒ³ãƒ–リ・コードã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+PrintAssembly\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintCompilation
 .RS 4
-¥á¥½¥Ã¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤Ó¤Ë¡¢¥³¥ó¥½¡¼¥ë¤Ë¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢JVM¤«¤é¤Î¾ÜºÙ¤Ê¿ÇÃǽÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¼ÂºÝ¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¥á¥½¥Ã¥É¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¿ÇÃǽÐÎϤϰõºþ¤µ¤ì¤Þ¤»¤ó¡£
+メソッドをコンパイルã™ã‚‹ãŸã³ã«ã€ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€JVMã‹ã‚‰ã®è©³ç´°ãªè¨ºæ–­å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€å®Ÿéš›ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã‚’確èªã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è¨ºæ–­å‡ºåŠ›ã¯å°åˆ·ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fI\-XX:+LogCompilation\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥³¥ó¥Ñ¥¤¥ë¡¦¥¢¥¯¥Æ¥£¥Ó¥Æ¥£¤ò¥Õ¥¡¥¤¥ë¤Ëµ­Ï¿¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-XX:+LogCompilation\fRオプションを使用ã—ã¦ã€ã‚³ãƒ³ãƒ‘イル・アクティビティをファイルã«è¨˜éŒ²ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintInlining
 .RS 4
-¥¤¥ó¥é¥¤¥ó²½¤Î·èÄêÆâÍƤνÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥¤¥ó¥é¥¤¥ó²½¤µ¤ì¤ë¥á¥½¥Ã¥É¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£
+インライン化ã®æ±ºå®šå†…容ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–ã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰ã‚’確èªã§ãã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥¤¥ó¥é¥¤¥ó²½¾ðÊó¤Ï½ÐÎϤµ¤ì¤Þ¤»¤ó¡£\fI\-XX:+PrintInlining\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¿ÇÃÇJVM¥ª¥×¥·¥ç¥ó¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë\fI\-XX:+UnlockDiagnosticVMOptions\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³åŒ–情報ã¯å‡ºåŠ›ã•ã‚Œã¾ã›ã‚“。\fI\-XX:+PrintInlining\fRオプションã¯ã€è¨ºæ–­JVMオプションã®ãƒ­ãƒƒã‚¯ã‚’解除ã™ã‚‹\fI\-XX:+UnlockDiagnosticVMOptions\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+RelaxAccessControlCheck
 .RS 4
-¥Ù¥ê¥Õ¥¡¥¤¥¢Æâ¤Î¥¢¥¯¥»¥¹À©¸æ¥Á¥§¥Ã¥¯¤ÎÎ̤ò¸º¤é¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢ºÇ¶á¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤Ï̵»ë¤µ¤ì¤Þ¤¹(¤Ä¤Þ¤ê¡¢Ìµ¸ú¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹)¡£¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥Ð¥¤¥È¥³¡¼¥É¤ò»ÈÍѤ·¤¿¥¯¥é¥¹¤Ë¤Ï¡¢¤³¤ì¤òÍ­¸ú²½¤Ç¤­¤Þ¤¹¡£
+ベリファイア内ã®ã‚¢ã‚¯ã‚»ã‚¹åˆ¶å¾¡ãƒã‚§ãƒƒã‚¯ã®é‡ã‚’減らã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æœ€è¿‘ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“ã‚Œã¯ç„¡è¦–ã•ã‚Œã¾ã™(ã¤ã¾ã‚Šã€ç„¡åŠ¹ã¨ã—ã¦å‡¦ç†ã•ã‚Œã¾ã™)。å¤ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’使用ã—ãŸã‚¯ãƒ©ã‚¹ã«ã¯ã€ã“れを有効化ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:ReservedCodeCacheSize=\fIsize\fR
 .RS 4
-JIT¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÎºÇÂ祳¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmaxjitcodesize\fR¤ÈƱÅù¤Ç¤¹¡£
+JITコンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã®æœ€å¤§ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯\fI\-Xmaxjitcodesize\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:+TieredCompilation
 .RS 4
-ÁØ¥³¥ó¥Ñ¥¤¥ë¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢ÁØ¥³¥ó¥Ñ¥¤¥ë¤Ï»ÈÍѤµ¤ì¤Þ¤»¤ó¡£
+層コンパイルã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€å±¤ã‚³ãƒ³ãƒ‘イルã¯ä½¿ç”¨ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseCodeCacheFlushing
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ëÁ°¤Ë¡¢¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¤Î¥Õ¥é¥Ã¥·¥å¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ëÁ°¤Ë¥³¡¼¥É¡¦¥­¥ã¥Ã¥·¥å¤Î¥Õ¥é¥Ã¥·¥å¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-XX:\-UseCodeCacheFlushing\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+コンパイラをシャットダウンã™ã‚‹å‰ã«ã€ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚コンパイラをシャットダウンã™ã‚‹å‰ã«ã‚³ãƒ¼ãƒ‰ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥ã‚’無効ã«ã™ã‚‹ã«ã¯\fI\-XX:\-UseCodeCacheFlushing\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseCondCardMark
 .RS 4
-¥«¡¼¥Éɽ¤Î¹¹¿·Á°¤Ë¡¢¥«¡¼¥É¤¬¤¹¤Ç¤Ë¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Î¥Á¥§¥Ã¥¯¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢Ê£¿ô¤Î¥½¥±¥Ã¥È¤ò»ý¤Ä¥Þ¥·¥ó¾å¤Ç¤Î¤ß»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢Æ±»þÁàºî¤Ë¤«¤Ê¤ê°Í¸¤·¤Æ¤¤¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬¸þ¾å¤·¤Þ¤¹¡£
+カード表ã®æ›´æ–°å‰ã«ã€ã‚«ãƒ¼ãƒ‰ãŒã™ã§ã«ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã®ãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€è¤‡æ•°ã®ã‚½ã‚±ãƒƒãƒˆã‚’æŒã¤ãƒžã‚·ãƒ³ä¸Šã§ã®ã¿ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€åŒæ™‚æ“作ã«ã‹ãªã‚Šä¾å­˜ã—ã¦ã„ã‚‹Javaアプリケーションã®ãƒ‘フォーマンスãŒå‘上ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseSuperWord
 .RS 4
-¥¹¥«¥é¡¼±é»»¤Î¥¹¡¼¥Ñ¡¼¥ï¡¼¥É±é»»¤Ø¤ÎÊÑ´¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥¹¥«¥é¡¼±é»»¤Î¥¹¡¼¥Ñ¡¼¥ï¡¼¥É±é»»¤Ø¤ÎÊÑ´¹¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseSuperWord\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+スカラー演算ã®ã‚¹ãƒ¼ãƒ‘ーワード演算ã¸ã®å¤‰æ›ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚スカラー演算ã®ã‚¹ãƒ¼ãƒ‘ーワード演算ã¸ã®å¤‰æ›ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseSuperWord\fRを指定ã—ã¾ã™ã€‚
 .RE
-.SS "¹âÅ٤ʥµ¡¼¥Ó¥¹¥¢¥Ó¥ê¥Æ¥£¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªã‚µãƒ¼ãƒ“スアビリティ・オプション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥·¥¹¥Æ¥à¾ðÊó¤ò¼ý½¸¤·¡¢¾ÜºÙ¤Ê¥Ç¥Ð¥Ã¥°¤ò¼Â¹Ô¤¹¤ëµ¡Ç½¤òÄ󶡤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ã‚·ã‚¹ãƒ†ãƒ æƒ…報をåŽé›†ã—ã€è©³ç´°ãªãƒ‡ãƒãƒƒã‚°ã‚’実行ã™ã‚‹æ©Ÿèƒ½ã‚’æä¾›ã—ã¾ã™ã€‚
 .PP
 \-XX:+ExtendedDTraceProbes
 .RS 4
-¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Ë±Æ¶Á¤òÍ¿¤¨¤ëÄɲäÎ\fIdtrace\fR¥Ä¡¼¥ë¡¦¥×¥í¡¼¥Ö¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fIdtrace\fR¤Ïɸ½à¥×¥í¡¼¥Ö¤Î¤ß¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+パフォーマンスã«å½±éŸ¿ã‚’与ãˆã‚‹è¿½åŠ ã®\fIdtrace\fRツール・プローブを有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fIdtrace\fRã¯æ¨™æº–プローブã®ã¿ã‚’実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+HeapDumpOnOutOfMemory
 .RS 4
-\fIjava\&.lang\&.OutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ë¡¢¥Ò¡¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥é(HPROF)¤ò»ÈÍѤ·¤Æ¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¥Õ¥¡¥¤¥ë¤Ø¤ÎJava¥Ò¡¼¥×¤Î¥À¥ó¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£\fI\-XX:HeapDumpPath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ª¤è¤Ó̾Á°¤òÌÀ¼¨Åª¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢\fIOutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ë¥Ò¡¼¥×¤Ï¥À¥ó¥×¤µ¤ì¤Þ¤»¤ó¡£
+\fIjava\&.lang\&.OutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã«ã€ãƒ’ープ・プロファイラ(HPROF)を使用ã—ã¦ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®Javaヒープã®ãƒ€ãƒ³ãƒ—を有効ã«ã—ã¾ã™ã€‚\fI\-XX:HeapDumpPath\fRオプションを使用ã—ã¦ã€ãƒ’ープ・ダンプ・ファイルã®ãƒ‘スãŠã‚ˆã³åå‰ã‚’明示的ã«è¨­å®šã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€\fIOutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã«ãƒ’ープã¯ãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:HeapDumpPath=\fIpath\fR
 .RS 4
-\fI\-XX:+HeapDumpOnOutOfMemoryError\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Ò¡¼¥×¡¦¥×¥í¥Õ¥¡¥¤¥é(HPROF)¤¬Ä󶡤¹¤ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò½ñ¤­¹þ¤à¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIjava_pid\fR\fIpid\fR\fI\&.hprof\fR
-(\fIpid\fR¤Ï¥¨¥é¡¼¤Î¸¶°ø¤È¤Ê¤Ã¤¿¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤Ë¤Ê¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥Õ¥¡¥¤¥ë¤òÌÀ¼¨Åª¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹(\fI%p\fR¤Ï¸½ºß¤Î¥×¥í¥»¥¹¤Î¼±Ê̻Ҥòɽ¤·¤Þ¤¹)¡£
+\fI\-XX:+HeapDumpOnOutOfMemoryError\fRオプションãŒè¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ’ープ・プロファイラ(HPROF)ãŒæä¾›ã™ã‚‹ãƒ’ープ・ダンプを書ã込むパスãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIjava_pid\fR\fIpid\fR\fI\&.hprof\fR
+(\fIpid\fRã¯ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã¨ãªã£ãŸãƒ—ロセスã®è­˜åˆ¥å­)ã«ãªã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’明示的ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™(\fI%p\fRã¯ç¾åœ¨ã®ãƒ—ロセスã®è­˜åˆ¥å­ã‚’表ã—ã¾ã™)。
 .sp
 .if n \{\
 .RS 4
@@ -1648,7 +1648,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤ò\fI/var/log/java/java_heapdump\&.hprof\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ’ープ・ダンプ・ファイルを\fI/var/log/java/java_heapdump\&.hprof\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1663,9 +1663,9 @@
 .PP
 \-XX:LogFile=\fIpath\fR
 .RS 4
-¥í¥°¡¦¥Ç¡¼¥¿¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ñ¥¹¤ª¤è¤Ó¥Õ¥¡¥¤¥ë̾¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢Ì¾Á°¤Ï\fIhotspot\&.log\fR¤Ç¤¹¡£
+ログ・データãŒæ›¸ãè¾¼ã¾ã‚Œã‚‹ãƒ‘スãŠã‚ˆã³ãƒ•ã‚¡ã‚¤ãƒ«åを設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€åå‰ã¯\fIhotspot\&.log\fRã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò\fI/var/log/java/hotspot\&.log\fR¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fI/var/log/java/hotspot\&.log\fRã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1680,39 +1680,39 @@
 .PP
 \-XX:+PrintClassHistogram
 .RS 4
-\fI[Control]+[C]\fR¥¤¥Ù¥ó¥È(\fISIGTERM\fR)¸å¤Ë¥¯¥é¥¹¡¦¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥Ò¥¹¥È¥°¥é¥à¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+\fI[Control]+[C]\fRイベント(\fISIGTERM\fR)後ã«ã‚¯ãƒ©ã‚¹ãƒ»ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ãƒ’ストグラムã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢\fIjmap \-histo\fR¥³¥Þ¥ó¥É¡¢¤Þ¤¿¤Ï\fIjcmd \fR\fIpid\fR\fI GC\&.class_histogram\fR¥³¥Þ¥ó¥É(\fIpid\fR¤Ï¸½ºß¤ÎJava¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã™ã‚‹ã¨ã€\fIjmap \-histo\fRコマンドã€ã¾ãŸã¯\fIjcmd \fR\fIpid\fR\fI GC\&.class_histogram\fRコマンド(\fIpid\fRã¯ç¾åœ¨ã®Javaプロセスã®è­˜åˆ¥å­)を実行ã™ã‚‹å ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+PrintConcurrentLocks
 .RS 4
 .sp
-\fI[Control]+[C]\fR¥¤¥Ù¥ó¥È(\fISIGTERM\fR)¸å¤Ë\fIjava\&.util\&.concurrent\fR¥í¥Ã¥¯¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+\fI[Control]+[C]\fRイベント(\fISIGTERM\fR)後ã«\fIjava\&.util\&.concurrent\fRロックã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢\fIjstack \-l\fR¥³¥Þ¥ó¥É¡¢¤Þ¤¿¤Ï\fIjcmd \fR\fIpid\fR\fI Thread\&.print \-l\fR¥³¥Þ¥ó¥É(\fIpid\fR¤Ï¸½ºß¤ÎJava¥×¥í¥»¥¹¤Î¼±ÊÌ»Ò)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを設定ã™ã‚‹ã¨ã€\fIjstack \-l\fRコマンドã€ã¾ãŸã¯\fIjcmd \fR\fIpid\fR\fI Thread\&.print \-l\fRコマンド(\fIpid\fRã¯ç¾åœ¨ã®Javaプロセスã®è­˜åˆ¥å­)を実行ã™ã‚‹å ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UnlockDiagnosticVMOptions
 .RS 4
-JVM¤Î¿ÇÃǤòÌÜŪ¤È¤·¤¿¥ª¥×¥·¥ç¥ó¤ò¥¢¥ó¥í¥Ã¥¯¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¿ÇÃÇ¥ª¥×¥·¥ç¥ó¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+JVMã®è¨ºæ–­ã‚’目的ã¨ã—ãŸã‚ªãƒ—ションをアンロックã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€è¨ºæ–­ã‚ªãƒ—ションã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
-.SS "¹âÅ٤ʥ¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥ª¥×¥·¥ç¥ó"
+.SS "高度ãªã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(GC)¤¬Java HotSpot VM¤Ë¤è¤Ã¤Æ¤É¤Î¤è¤¦¤Ë¼Â¹Ô¤µ¤ì¤ë¤«¤òÀ©¸æ¤·¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(GC)ãŒJava HotSpot VMã«ã‚ˆã£ã¦ã©ã®ã‚ˆã†ã«å®Ÿè¡Œã•ã‚Œã‚‹ã‹ã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-XX:+AggressiveHeap
 .RS 4
-Java¥Ò¡¼¥×¤ÎºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥³¥ó¥Ô¥å¡¼¥¿¤Î¹½À®(RAM¤ª¤è¤ÓCPU)¤Ë´ð¤Å¤¤¤Æ¡¢ÍÍ¡¹¤Ê¥Ñ¥é¥á¡¼¥¿¤¬¡¢¥á¥â¥ê¡¼³äÅö¤Æ¤¬½¸Ã椷¤¿Ä¹»þ´Ö¼Â¹Ô¥¸¥ç¥Ö¤ËºÇŬ¤Ë¤Ê¤ë¤è¤¦¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¢¤ê¡¢¥Ò¡¼¥×¤ÏºÇŬ²½¤µ¤ì¤Þ¤»¤ó¡£
+Javaヒープã®æœ€é©åŒ–を有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚³ãƒ³ãƒ”ュータã®æ§‹æˆ(RAMãŠã‚ˆã³CPU)ã«åŸºã¥ã„ã¦ã€æ§˜ã€…ãªãƒ‘ラメータãŒã€ãƒ¡ãƒ¢ãƒªãƒ¼å‰²å½“ã¦ãŒé›†ä¸­ã—ãŸé•·æ™‚間実行ジョブã«æœ€é©ã«ãªã‚‹ã‚ˆã†ã«è¨­å®šã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã‚ã‚Šã€ãƒ’ープã¯æœ€é©åŒ–ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-XX:AllocatePrefetchDistance=\fIsize\fR
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È³äÅö¤Æ¤Î¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤Î¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¿·µ¬¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃͤǽñ¤­¹þ¤â¤¦¤È¤¹¤ë¥á¥â¥ê¡¼¤Ï¡¢ºÇ¸å¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤«¤é¡¢¤³¤Îµ÷Î¥¤Þ¤Ç¥×¥ê¥Õ¥§¥Ã¥Á¤µ¤ì¤Þ¤¹¡£³ÆJava¥¹¥ì¥Ã¥É¤Ë¤ÏÆȼ«¤Î³äÅö¤Æ¥Ý¥¤¥ó¥È¤¬¤¢¤ê¤Þ¤¹¡£
+オブジェクト割当ã¦ã®ãƒ—リフェッãƒè·é›¢ã®ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚æ–°è¦ã‚ªãƒ–ジェクトã®å€¤ã§æ›¸ã込もã†ã¨ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ã¯ã€æœ€å¾Œã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚ªãƒ–ジェクトã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹ã‚‰ã€ã“ã®è·é›¢ã¾ã§ãƒ—リフェッãƒã•ã‚Œã¾ã™ã€‚å„Javaスレッドã«ã¯ç‹¬è‡ªã®å‰²å½“ã¦ãƒã‚¤ãƒ³ãƒˆãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Éé¤ÎÃͤϡ¢¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£Àµ¤ÎÃͤϡ¢¥×¥ê¥Õ¥§¥Ã¥Á¤¹¤ë¥Ð¥¤¥È¿ô¤Ç¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\-1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+è² ã®å€¤ã¯ã€ãƒ—リフェッãƒè·é›¢ã¯ãƒ—ラットフォームã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã‚‹ã“ã¨ã‚’示ã—ã¾ã™ã€‚æ­£ã®å€¤ã¯ã€ãƒ—リフェッãƒã™ã‚‹ãƒã‚¤ãƒˆæ•°ã§ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯\-1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥×¥ê¥Õ¥§¥Ã¥Áµ÷Î¥¤ò1024¥Ð¥¤¥È¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ—リフェッãƒè·é›¢ã‚’1024ãƒã‚¤ãƒˆã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1727,9 +1727,9 @@
 .PP
 \-XX:AllocatePrefetchLines=\fIlines\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥³¡¼¥É¤ÇÀ¸À®¤µ¤ì¤ë¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò»ÈÍѤ·¤Æ¡¢ºÇ¸å¤Î¥ª¥Ö¥¸¥§¥¯¥È³äÅö¤Æ¸å¤Ë¥í¡¼¥É¤¹¤ë¥­¥ã¥Ã¥·¥å¹Ô¿ô¤òÀßÄꤷ¤Þ¤¹¡£ºÇ¸å¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤¬¥¤¥ó¥¹¥¿¥ó¥¹¤Î¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1¤Ë¤Ê¤ê¡¢ÇÛÎó¤Î¾ì¹ç¤Ï3¤Ë¤Ê¤ê¤Þ¤¹¡£
+コンパイルã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã§ç”Ÿæˆã•ã‚Œã‚‹ãƒ—リフェッãƒå‘½ä»¤ã‚’使用ã—ã¦ã€æœ€å¾Œã®ã‚ªãƒ–ジェクト割当ã¦å¾Œã«ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã‚­ãƒ£ãƒƒã‚·ãƒ¥è¡Œæ•°ã‚’設定ã—ã¾ã™ã€‚最後ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚ªãƒ–ジェクトãŒã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯1ã«ãªã‚Šã€é…列ã®å ´åˆã¯3ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥í¡¼¥É¤µ¤ì¤ë¥­¥ã¥Ã¥·¥å¹Ô¿ô¤ò5¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã‚­ãƒ£ãƒƒã‚·ãƒ¥è¡Œæ•°ã‚’5ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1744,42 +1744,42 @@
 .PP
 \-XX:AllocatePrefetchStyle=\fIstyle\fR
 .RS 4
-¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ËÀ¸À®¤µ¤ì¤ë¥³¡¼¥É¡¦¥¹¥¿¥¤¥ë¤òÀßÄꤷ¤Þ¤¹¡£\fIstyle\fR°ú¿ô¤Ï¡¢0¤«¤é3¤Þ¤Ç¤ÎÀ°¿ô¤Ç¤¹¡£
+プリフェッãƒå‘½ä»¤ã«ç”Ÿæˆã•ã‚Œã‚‹ã‚³ãƒ¼ãƒ‰ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã‚’設定ã—ã¾ã™ã€‚\fIstyle\fR引数ã¯ã€0ã‹ã‚‰3ã¾ã§ã®æ•´æ•°ã§ã™ã€‚
 .PP
 0
 .RS 4
-¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+プリフェッãƒå‘½ä»¤ã‚’生æˆã—ã¾ã›ã‚“。
 .RE
 .PP
 1
 .RS 4
-³Æ³äÅö¤Æ¤Î¸å¤Ç¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥Ñ¥é¥á¡¼¥¿¤Ç¤¹¡£
+å„割当ã¦ã®å¾Œã§ã€ãƒ—リフェッãƒå‘½ä»¤ã‚’実行ã—ã¾ã™ã€‚ã“ã‚Œã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ‘ラメータã§ã™ã€‚
 .RE
 .PP
 2
 .RS 4
-¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ö¥í¥Ã¥¯(TLAB)¥¦¥©¡¼¥¿¡¼¥Þ¡¼¥¯¡¦¥Ý¥¤¥ó¥¿¤ò»ÈÍѤ·¤Æ¡¢¥×¥ê¥Õ¥§¥Ã¥ÁÌ¿Îá¤ò¼Â¹Ô¤¹¤ë¥¿¥¤¥ß¥ó¥°¤ò·èÄꤷ¤Þ¤¹¡£
+スレッド・ローカルãªå‰²å½“ã¦ãƒ–ロック(TLAB)ウォーターマーク・ãƒã‚¤ãƒ³ã‚¿ã‚’使用ã—ã¦ã€ãƒ—リフェッãƒå‘½ä»¤ã‚’実行ã™ã‚‹ã‚¿ã‚¤ãƒŸãƒ³ã‚°ã‚’決定ã—ã¾ã™ã€‚
 .RE
 .PP
 3
 .RS 4
-³äÅö¤Æ¥×¥ê¥Õ¥§¥Ã¥ÁÍѤÎSPARC¤ÇBISÌ¿Îá¤ò»ÈÍѤ·¤Þ¤¹¡£
+割当ã¦ãƒ—リフェッãƒç”¨ã®SPARCã§BIS命令を使用ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-XX:+AlwaysPreTouch
 .RS 4
-JVM¤Î½é´ü²½Ãæ¤ËJava¥Ò¡¼¥×¾å¤Î¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤Î¥¿¥Ã¥Á¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fImain()\fR¥á¥½¥Ã¥É¤ÎÆþÎÏÁ°¤Ë¡¢¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤¬¥á¥â¥ê¡¼¤Ë¼èÆÀ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ÊªÍý¥á¥â¥ê¡¼¤Ë¥Þ¥Ã¥×¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î²¾ÁÛ¥á¥â¥ê¡¼¤ò´Þ¤àĹ»þ´Ö¼Â¹Ô¤Î¥·¥¹¥Æ¥à¤ò¥·¥ß¥å¥ì¡¼¥È¤¹¤ë¥Æ¥¹¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢JVM¥Ò¡¼¥×Îΰ褬¤¤¤Ã¤Ñ¤¤¤Ë¤Ê¤ë¤È¡¢¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤¬¥³¥ß¥Ã¥È¤µ¤ì¤Þ¤¹¡£
+JVMã®åˆæœŸåŒ–中ã«Javaヒープ上ã®ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã®ã‚¿ãƒƒãƒã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fImain()\fRメソッドã®å…¥åŠ›å‰ã«ã€ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ãŒãƒ¡ãƒ¢ãƒªãƒ¼ã«å–å¾—ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ç‰©ç†ãƒ¡ãƒ¢ãƒªãƒ¼ã«ãƒžãƒƒãƒ—ã•ã‚ŒãŸã™ã¹ã¦ã®ä»®æƒ³ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’å«ã‚€é•·æ™‚間実行ã®ã‚·ã‚¹ãƒ†ãƒ ã‚’シミュレートã™ã‚‹ãƒ†ã‚¹ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€JVMヒープ領域ãŒã„ã£ã±ã„ã«ãªã‚‹ã¨ã€ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ãŒã‚³ãƒŸãƒƒãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+CMSClassUnloadingEnabled
 .RS 4
-ʹԥޡ¼¥¯¥¹¥¤¡¼¥×(CMS)¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ë¡¢¥¢¥ó¥í¡¼¥É¤¹¤ë¥¯¥é¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£CMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î¥¯¥é¥¹¡¦¥¢¥ó¥í¡¼¥É¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-CMSClassUnloadingEnabled\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+並行マークスイープ(CMS)ガベージ・コレクタを使用ã™ã‚‹å ´åˆã«ã€ã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã‚¯ãƒ©ã‚¹ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚CMSガベージ・コレクタã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚¢ãƒ³ãƒ­ãƒ¼ãƒ‰ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-CMSClassUnloadingEnabled\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSExpAvgFactor=\fIpercent\fR
 .RS 4
-ʹԥ³¥ì¥¯¥·¥ç¥óÅý·×¤Î»Ø¿ôÊ¿¶Ñ¤ò·×»»¤¹¤ëºÝ¤Ë¡¢¸½ºß¤Î¥µ¥ó¥×¥ë¤ò½Å¤ßÉÕ¤±¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢»Ø¿ôÊ¿¶Ñ·¸¿ô¤Ï25%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢·¸¿ô¤ò15%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+並行コレクション統計ã®æŒ‡æ•°å¹³å‡ã‚’計算ã™ã‚‹éš›ã«ã€ç¾åœ¨ã®ã‚µãƒ³ãƒ—ルをé‡ã¿ä»˜ã‘ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€æŒ‡æ•°å¹³å‡ä¿‚æ•°ã¯25%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ä¿‚æ•°ã‚’15%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1794,9 +1794,9 @@
 .PP
 \-XX:CMSIncrementalDutyCycle=\fIpercent\fR
 .RS 4
-ʹԥ³¥ì¥¯¥¿¤Î¼Â¹Ô¤¬µö²Ä¤µ¤ì¤Æ¤¤¤ë¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Î»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£\fI\-XX:+CMSIncrementalPacing\fR¤¬Í­¸ú¤Ê¾ì¹ç¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï½é´üÃͤΤߤòÀßÄꤷ¤Þ¤¹¡£
+並行コレクタã®å®Ÿè¡ŒãŒè¨±å¯ã•ã‚Œã¦ã„るマイナー・コレクション間ã®æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚\fI\-XX:+CMSIncrementalPacing\fRãŒæœ‰åŠ¹ãªå ´åˆã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ãŒè‡ªå‹•çš„ã«è¨­å®šã•ã‚Œã€ã“ã®ã‚ªãƒ—ションã¯åˆæœŸå€¤ã®ã¿ã‚’設定ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デフォルトã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã‚’20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1811,7 +1811,7 @@
 .PP
 \-XX:CMSIncrementalDutyCycleMin=\fIpercent\fR
 .RS 4
-\fI\-XX:+CMSIncrementalPacing\fR¤¬Í­¸ú¤Ê¾ì¹ç¤Ë¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î²¼¸Â¤Ç¤¢¤ë¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Î»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î²¼¸Â¤Ï0%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢²¼¸Â¤ò10%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+\fI\-XX:+CMSIncrementalPacing\fRãŒæœ‰åŠ¹ãªå ´åˆã«ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ä¸‹é™ã§ã‚るマイナー・コレクション間ã®æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ä¸‹é™ã¯0%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ä¸‹é™ã‚’10%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1826,12 +1826,12 @@
 .PP
 \-XX:+CMSIncrementalMode
 .RS 4
-CMS¥³¥ì¥¯¥¿¤ÎÁýʬ¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢2¤Ä°Ê²¼¤ÎGC¥¹¥ì¥Ã¥É¤ò»ý¤Ä¹½À®¤Ë¤Î¤ßÍ­¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fICMSIncremental\fR¤Ç»Ï¤Þ¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤¬Í­¸ú¤Ê¾ì¹ç¤Î¤ß¡¢Å¬ÍѤµ¤ì¤Þ¤¹¡£
+CMSコレクタã®å¢—分モードを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€2ã¤ä»¥ä¸‹ã®GCスレッドをæŒã¤æ§‹æˆã«ã®ã¿æœ‰åŠ¹ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fICMSIncremental\fRã§å§‹ã¾ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションã¯ã€ã“ã®ã‚ªãƒ—ションãŒæœ‰åŠ¹ãªå ´åˆã®ã¿ã€é©ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSIncrementalOffset=\fIpercent\fR
 .RS 4
-Áýʬ¥â¡¼¥É¤Î¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò¥Þ¥¤¥Ê¡¼¡¦¥³¥ì¥¯¥·¥ç¥ó´Ö¤Ç´ü´ÖÆâ¤Ë±¦¤Ë°ÜÆ°¤¹¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥ª¥Õ¥»¥Ã¥È¤Ï0%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¥ª¥Õ¥»¥Ã¥È¤ò25%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+増分モードã®ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã‚’マイナー・コレクション間ã§æœŸé–“内ã«å³ã«ç§»å‹•ã™ã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚ªãƒ•ã‚»ãƒƒãƒˆã¯0%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®ã‚ªãƒ•ã‚»ãƒƒãƒˆã‚’25%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1846,12 +1846,12 @@
 .PP
 \-XX:+CMSIncrementalPacing
 .RS 4
-JVM¤Î¼Â¹ÔÃæ¤Ë¼ý½¸¤µ¤ì¤¿Åý·×¤Ë´ð¤Å¤¤¤Æ¡¢Áýʬ¥â¡¼¥É¤Î¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¼«Æ°Ä´À°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Áýʬ¥â¡¼¥É¡¦¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤Î¼«Æ°Ä´À°¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-CMSIncrementalPacing\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+JVMã®å®Ÿè¡Œä¸­ã«åŽé›†ã•ã‚ŒãŸçµ±è¨ˆã«åŸºã¥ã„ã¦ã€å¢—分モードã®ãƒ‡ãƒ¥ãƒ¼ãƒ†ã‚£ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã®è‡ªå‹•èª¿æ•´ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚増分モード・デューティ・サイクルã®è‡ªå‹•èª¿æ•´ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-CMSIncrementalPacing\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:CMSIncrementalSafetyFactor=\fIpercent\fR
 .RS 4
-¥Ç¥å¡¼¥Æ¥£¡¦¥µ¥¤¥¯¥ë¤ò·×»»¤¹¤ëºÝ¤Ë¡¢Êݼé¤òÄɲ乤뤿¤á¤Ë»ÈÍѤµ¤ì¤ë»þ´Ö¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢°ÂÁ´·¸¿ô¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢°ÂÁ´·¸¿ô¤ò5%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デューティ・サイクルを計算ã™ã‚‹éš›ã«ã€ä¿å®ˆã‚’追加ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹æ™‚é–“ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€å®‰å…¨ä¿‚æ•°ã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€å®‰å…¨ä¿‚æ•°ã‚’5%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1866,9 +1866,9 @@
 .PP
 \-XX:CMSInitiatingOccupancyFraction=\fIpercent\fR
 .RS 4
-CMS¼ý½¸¥µ¥¤¥¯¥ë¤ò³«»Ï¤¹¤ë¸Å¤¤À¤Âå¤ÎÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\-1¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£Éé¤ÎÃÍ(¥Ç¥Õ¥©¥ë¥È¤ò´Þ¤à)¤Ï¡¢\fI\-XX:CMSTriggerRatio\fR¤¬³«»ÏÀêͭΨ¤ÎÃͤòÄêµÁ¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+CMSåŽé›†ã‚µã‚¤ã‚¯ãƒ«ã‚’開始ã™ã‚‹å¤ã„世代ã®å æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルト値ã¯\-1ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚è² ã®å€¤(デフォルトをå«ã‚€)ã¯ã€\fI\-XX:CMSTriggerRatio\fRãŒé–‹å§‹å æœ‰çŽ‡ã®å€¤ã‚’定義ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÀêͭΨ¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å æœ‰çŽ‡ã‚’20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1883,14 +1883,14 @@
 .PP
 \-XX:+CMSScavengeBeforeRemark
 .RS 4
-CMS¥³¥á¥ó¥È¡¦¥¹¥Æ¥Ã¥×¤ÎÁ°¤Ë¥¹¥«¥Ù¥ó¥¸¤Î»î¹Ô¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+CMSコメント・ステップã®å‰ã«ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã®è©¦è¡Œã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:CMSTriggerRatio=\fIpercent\fR
 .RS 4
-CMS¼ý½¸¥µ¥¤¥¯¥ë¤¬³«»Ï¤¹¤ëÁ°¤Ë³ä¤êÅö¤Æ¤é¤ì¤ë\fI\-XX:MinHeapFreeRatio\fR¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ëÃͤγä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ80%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+CMSåŽé›†ã‚µã‚¤ã‚¯ãƒ«ãŒé–‹å§‹ã™ã‚‹å‰ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã‚‹\fI\-XX:MinHeapFreeRatio\fRã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹å€¤ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルト値ã¯80%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÀêͭΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å æœ‰çŽ‡ã‚’75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1905,9 +1905,9 @@
 .PP
 \-XX:ConcGCThreads=\fIthreads\fR
 .RS 4
-ʹÔGC¤Ë»ÈÍѤµ¤ì¤ë¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢JVM¤Ë»ÈÍѤǤ­¤ëCPU¤Î¿ô¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+並行GCã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€JVMã«ä½¿ç”¨ã§ãã‚‹CPUã®æ•°ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢Ê¹ÔGC¤Î¥¹¥ì¥Ã¥É¿ô¤ò2¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ä¸¦è¡ŒGCã®ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã‚’2ã«è¨­å®šã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1922,24 +1922,24 @@
 .PP
 \-XX:+DisableExplicitGC
 .RS 4
-\fISystem\&.gc()\fR¤Î¸Æ½Ð¤·¤Î½èÍý¤ò̵¸ú¤Ë¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¤³¤ì¤Ï\fISystem\&.gc()\fR¤Ø¤Î¸Æ½Ð¤·¤¬½èÍý¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fISystem\&.gc()\fR¤Î¸Æ½Ð¤·¤Î½èÍý¤¬Ìµ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¡¢JVM¤ÏɬÍפ˱þ¤¸¤ÆGC¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fISystem\&.gc()\fRã®å‘¼å‡ºã—ã®å‡¦ç†ã‚’無効ã«ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã“ã‚Œã¯\fISystem\&.gc()\fRã¸ã®å‘¼å‡ºã—ãŒå‡¦ç†ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fISystem\&.gc()\fRã®å‘¼å‡ºã—ã®å‡¦ç†ãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆã€JVMã¯å¿…è¦ã«å¿œã˜ã¦GCを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+ExplicitGCInvokesConcurrent
 .RS 4
-\fISystem\&.gc()\fR¥ê¥¯¥¨¥¹¥È¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Ê¹ÔGC¤Î¸Æ½Ð¤·¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¾ì¹ç¤Î¤ß¡¢Í­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fISystem\&.gc()\fRリクエストを使用ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸¦è¡ŒGCã®å‘¼å‡ºã—を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fI\-XX:+UseConcMarkSweepGC\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å ´åˆã®ã¿ã€æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses
 .RS 4
-\fISystem\&.gc()\fR¥ê¥¯¥¨¥¹¥È¤ò»ÈÍѤ·¡¢Ê¹ÔGC¥µ¥¤¥¯¥ëÃæ¤Ë¥¯¥é¥¹¤ò¥¢¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Ê¹ÔGC¤Î¸Æ½Ð¤·¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¾ì¹ç¤Î¤ß¡¢Í­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fISystem\&.gc()\fRリクエストを使用ã—ã€ä¸¦è¡ŒGCサイクル中ã«ã‚¯ãƒ©ã‚¹ã‚’アンロードã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸¦è¡ŒGCã®å‘¼å‡ºã—を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€\fI\-XX:+UseConcMarkSweepGC\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å ´åˆã®ã¿ã€æœ‰åŠ¹ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:G1HeapRegionSize=\fIsize\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¥Õ¥¡¡¼¥¹¥È(G1)¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ëºÝ¤ËJava¥Ò¡¼¥×¤òºÙʬ²½¤¹¤ë¥ê¡¼¥¸¥ç¥ó¤Î¥µ¥¤¥º¤òÀßÄꤷ¤Þ¤¹¡£Ãͤˤϡ¢1MB¤«¤é32MB¤Þ¤Ç¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥ê¡¼¥¸¥ç¥ó¡¦¥µ¥¤¥º¤Ï¡¢¥Ò¡¼¥×¡¦¥µ¥¤¥º¤Ë´ð¤Å¤¤¤Æ¿Í´Ö¹©³ØŪ¤Ë·èÄꤵ¤ì¤Þ¤¹¡£
+ガベージファースト(G1)コレクタを使用ã™ã‚‹éš›ã«Javaヒープを細分化ã™ã‚‹ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã®ã‚µã‚¤ã‚ºã‚’設定ã—ã¾ã™ã€‚値ã«ã¯ã€1MBã‹ã‚‰32MBã¾ã§ã‚’指定ã§ãã¾ã™ã€‚デフォルトã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãƒ»ã‚µã‚¤ã‚ºã¯ã€ãƒ’ープ・サイズã«åŸºã¥ã„ã¦äººé–“工学的ã«æ±ºå®šã•ã‚Œã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÙʬ²½¤µ¤ì¤¿¥µ¥¤¥º¤ò16MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç´°åˆ†åŒ–ã•ã‚ŒãŸã‚µã‚¤ã‚ºã‚’16MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1954,14 +1954,14 @@
 .PP
 \-XX:+G1PrintHeapRegions
 .RS 4
-³ä¤êÅö¤Æ¤é¤ì¤¿¥ê¡¼¥¸¥ç¥ó¤ª¤è¤ÓG1¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤ÆºÆÍ׵ᤵ¤ì¤¿¤â¤Î¤Ë´Ø¤¹¤ë¾ðÊó¤Î°õºþ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+割り当ã¦ã‚‰ã‚ŒãŸãƒªãƒ¼ã‚¸ãƒ§ãƒ³ãŠã‚ˆã³G1コレクタã«ã‚ˆã£ã¦å†è¦æ±‚ã•ã‚ŒãŸã‚‚ã®ã«é–¢ã™ã‚‹æƒ…å ±ã®å°åˆ·ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:G1ReservePercent=\fIpercent\fR
 .RS 4
-G1¥³¥ì¥¯¥¿¤Î¾º³Ê¤¬¼ºÇÔ¤¹¤ë²ÄǽÀ­¤ò¸º¤é¤¹¤¿¤á¤Îfalse¤Î¾å¸Â¤È¤·¤ÆͽÌ󤵤줿¥Ò¡¼¥×¤Î³ä¹ç(0¤«¤é50¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï10%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+G1コレクタã®æ˜‡æ ¼ãŒå¤±æ•—ã™ã‚‹å¯èƒ½æ€§ã‚’減らã™ãŸã‚ã®falseã®ä¸Šé™ã¨ã—ã¦äºˆç´„ã•ã‚ŒãŸãƒ’ープã®å‰²åˆ(0ã‹ã‚‰50ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯10%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Í½Ì󤵤줿¥Ò¡¼¥×¤ò20%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€äºˆç´„ã•ã‚ŒãŸãƒ’ープを20%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1976,9 +1976,9 @@
 .PP
 \-XX:InitialHeapSize=\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢0¡¢¤Þ¤¿¤Ï1MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Î¤¤¤º¤ì¤«¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€0ã€ã¾ãŸã¯1MBより大ãã„1024ã®å€æ•°ã®ã„ãšã‚Œã‹ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ6MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦6MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1991,14 +1991,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò0¤ËÀßÄꤷ¤¿¾ì¹ç¡¢½é´ü¥µ¥¤¥º¤Ï¡¢¸Å¤¤À¤Âå¤È¼ã¤¤À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¥µ¥¤¥º¤Î¹ç·×¤È¤·¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥Ò¡¼¥×¤Î¥µ¥¤¥º¤Ï¡¢\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを0ã«è¨­å®šã—ãŸå ´åˆã€åˆæœŸã‚µã‚¤ã‚ºã¯ã€å¤ã„世代ã¨è‹¥ã„世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚µã‚¤ã‚ºã®åˆè¨ˆã¨ã—ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ãƒ’ープã®ã‚µã‚¤ã‚ºã¯ã€\fI\-XX:NewSize\fRオプションを使用ã—ã¦è¨­å®šã§ãã¾ã™ã€‚
 .RE
 .PP
 \-XX:InitialSurvivorRatio=\fIratio\fR
 .RS 4
-¥¹¥ë¡¼¥×¥Ã¥È¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤¬»ÈÍѤ¹¤ë¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤òÀßÄꤷ¤Þ¤¹(\fI\-XX:+UseParallelGC\fR¤ª¤è¤Ó/¤Þ¤¿¤Ï\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹)¡£\fI\-XX:+UseParallelGC\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¹¥ë¡¼¥×¥Ã¥È¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ÇŬ±þ¥µ¥¤¥º»ØÄê¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤·¤Þ¤¹¡£½é´üÃͤ«¤é»Ï¤á¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÆ°ºî¤Ë½¾¤Ã¤Æ¡¢¥µ¥Ð¥¤¥ÐÎΰ褬¥µ¥¤¥ºÊѹ¹¤µ¤ì¤Þ¤¹¡£(\fI\-XX:\-UseAdaptiveSizePolicy\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ)Ŭ±þ¥µ¥¤¥º»ØÄê¤ò̵¸ú¤Ë¤·¤¿¾ì¹ç¡¢\fI\-XX:SurvivorRatio\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹ÔÁ´ÂΤΥµ¥Ð¥¤¥ÐÎΰè¤Î¥µ¥¤¥º¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+スループット・ガベージ・コレクタãŒä½¿ç”¨ã™ã‚‹ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”を設定ã—ã¾ã™(\fI\-XX:+UseParallelGC\fRãŠã‚ˆã³/ã¾ãŸã¯\fI\-XX:+UseParallelOldGC\fRオプションã«ã‚ˆã£ã¦æœ‰åŠ¹ã«ãªã‚Šã¾ã™)。\fI\-XX:+UseParallelGC\fRオプションãŠã‚ˆã³\fI\-XX:+UseParallelOldGC\fRオプションを使用ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¹ãƒ«ãƒ¼ãƒ—ット・ガベージ・コレクタã§é©å¿œã‚µã‚¤ã‚ºæŒ‡å®šã‚’デフォルトã§æœ‰åŠ¹ã«ã—ã¾ã™ã€‚åˆæœŸå€¤ã‹ã‚‰å§‹ã‚ã¦ã€ã‚¢ãƒ—リケーションã®å‹•ä½œã«å¾“ã£ã¦ã€ã‚µãƒã‚¤ãƒé ˜åŸŸãŒã‚µã‚¤ã‚ºå¤‰æ›´ã•ã‚Œã¾ã™ã€‚(\fI\-XX:\-UseAdaptiveSizePolicy\fRオプションを使用ã—ã¦)é©å¿œã‚µã‚¤ã‚ºæŒ‡å®šã‚’無効ã«ã—ãŸå ´åˆã€\fI\-XX:SurvivorRatio\fRオプションを使用ã—ã¦ã€ã‚¢ãƒ—リケーションã®å®Ÿè¡Œå…¨ä½“ã®ã‚µãƒã‚¤ãƒé ˜åŸŸã®ã‚µã‚¤ã‚ºã‚’設定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¼¡¤Î¼°¤ò»ÈÍѤ·¤Æ¡¢¼ã¤¤À¤Âå¤Î¥µ¥¤¥º(Y)¤ª¤è¤Ó¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ(R)¤Ë´ð¤Å¤¤¤Æ¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º(S)¤ò·×»»¤Ç¤­¤Þ¤¹¡£
+次ã®å¼ã‚’使用ã—ã¦ã€è‹¥ã„世代ã®ã‚µã‚¤ã‚º(Y)ãŠã‚ˆã³ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”(R)ã«åŸºã¥ã„ã¦ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚º(S)を計算ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2009,11 +2009,11 @@
 .if n \{\
 .RE
 .\}
-Åù¼°Æâ¤Î2¤Ï¡¢2¤Ä¤Î¥µ¥Ð¥¤¥ÐÎΰè¤ò¼¨¤·¤Þ¤¹¡£¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤Ë»ØÄꤹ¤ëÃͤòÂ礭¤¯¤¹¤ë¤È¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¡£
+ç­‰å¼å†…ã®2ã¯ã€2ã¤ã®ã‚µãƒã‚¤ãƒé ˜åŸŸã‚’示ã—ã¾ã™ã€‚サãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã«æŒ‡å®šã™ã‚‹å€¤ã‚’大ããã™ã‚‹ã¨ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚ºã¯å°ã•ããªã‚Šã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤Ï8¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼ã¤¤À¤Âå¤ÎÎΰ襵¥¤¥º¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ(2MB)¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´ü¥µ¥¤¥º¤Ï0\&.2MB¤Ë¤Ê¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã¯8ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚è‹¥ã„世代ã®é ˜åŸŸã‚µã‚¤ã‚ºã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤(2MB)を使用ã—ãŸå ´åˆã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸã‚µã‚¤ã‚ºã¯0\&.2MBã«ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥µ¥Ð¥¤¥ÐÎΰè¤Î½é´üÈæ¤ò4¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚µãƒã‚¤ãƒé ˜åŸŸã®åˆæœŸæ¯”ã‚’4ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2028,9 +2028,9 @@
 .PP
 \-XX:InitiatingHeapOccupancyPercent=\fIpercent\fR
 .RS 4
-ʹÔGC¥µ¥¤¥¯¥ë¤ò³«»Ï¤¹¤ë¥Ò¡¼¥×ÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢1¤Ä¤ÎÀ¤Âå¤Î¤ß(¤¿¤È¤¨¤ÐG1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ê¤É)¤Ç¤Ï¤Ê¤¯¡¢¥Ò¡¼¥×Á´ÂΤÎÀêÍ­¤Ë´ð¤Å¤¤¤ÆʹÔGC¥µ¥¤¥¯¥ë¤ò¥È¥ê¥¬¡¼¤¹¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£
+並行GCサイクルを開始ã™ã‚‹ãƒ’ープå æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€1ã¤ã®ä¸–代ã®ã¿(ãŸã¨ãˆã°G1ガベージ・コレクタãªã©)ã§ã¯ãªãã€ãƒ’ープ全体ã®å æœ‰ã«åŸºã¥ã„ã¦ä¸¦è¡ŒGCサイクルをトリガーã™ã‚‹ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢³«»ÏÃͤÏ45%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£ÃÍ0¤Ï¡¢GC¥µ¥¤¥¯¥ë¤¬Ää»ß¤·¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢³«»Ï¥Ò¡¼¥×ÀêͭΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+デフォルトã§ã¯ã€é–‹å§‹å€¤ã¯45%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚値0ã¯ã€GCサイクルãŒåœæ­¢ã—ãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€é–‹å§‹ãƒ’ープå æœ‰çŽ‡ã‚’75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2045,9 +2045,9 @@
 .PP
 \-XX:MaxGCPauseMillis=\fItime\fR
 .RS 4
-ºÇÂçGCµÙ»ß»þ´Ö(¥ß¥êÉÃñ°Ì)¤Î¥¿¡¼¥²¥Ã¥È¤òÀßÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¥½¥Õ¥È¡¦¥´¡¼¥ë¤Î¤¿¤á¡¢JVM¤Ï¼Â¸½¤Î¤¿¤á¤ËºÇÁ±¤ÎÅØÎϤò¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢µÙ»ß»þ´Ö¤ÎºÇÂçÃͤϤ¢¤ê¤Þ¤»¤ó¡£
+最大GC休止時間(ミリ秒å˜ä½)ã®ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚’設定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã‚½ãƒ•ãƒˆãƒ»ã‚´ãƒ¼ãƒ«ã®ãŸã‚ã€JVMã¯å®Ÿç¾ã®ãŸã‚ã«æœ€å–„ã®åŠªåŠ›ã‚’ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ä¼‘止時間ã®æœ€å¤§å€¤ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇÂ祿¡¼¥²¥Ã¥ÈµÙ»ß»þ´Ö¤ò500¥ß¥êÉäËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€æœ€å¤§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¼‘止時間を500ミリ秒ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2062,9 +2062,9 @@
 .PP
 \-XX:MaxHeapSize=\fIsize\fR
 .RS 4
-¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ëÃͤϡ¢2MB¤è¤êÂ礭¤¤1024¤ÎÇÜ¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¹½À®¤Ë´ð¤Å¤¤¤ÆÁªÂò¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Ç¥×¥í¥¤¥á¥ó¥È¤Ç¤Ï¡¢\fI\-XX:InitialHeapSize\fR¤ª¤è¤Ó\fI\-XX:MaxHeapSize\fR¤ÏÄ̾ïƱ¤¸ÃͤËÀßÄꤵ¤ì¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.html¤Ë¤¢¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¡¦¥¨¥ë¥´¥Î¥ß¥Ã¥¯¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+メモリー割当ã¦ãƒ—ールã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚指定ã™ã‚‹å€¤ã¯ã€2MBより大ãã„1024ã®å€æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルト値ã¯ã€å®Ÿè¡Œæ™‚ã«ã‚·ã‚¹ãƒ†ãƒ æ§‹æˆã«åŸºã¥ã„ã¦é¸æŠžã•ã‚Œã¾ã™ã€‚サーãƒãƒ¼ãƒ»ãƒ‡ãƒ—ロイメントã§ã¯ã€\fI\-XX:InitialHeapSize\fRãŠã‚ˆã³\fI\-XX:MaxHeapSize\fRã¯é€šå¸¸åŒã˜å€¤ã«è¨­å®šã•ã‚Œã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/vm/gc\-ergonomics\&.htmlã«ã‚るガベージ・コレクタ・エルゴノミックをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¡¼¤Îµö²Ä¤µ¤ì¤ëºÇÂ祵¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ80MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸãƒ¡ãƒ¢ãƒªãƒ¼ã®è¨±å¯ã•ã‚Œã‚‹æœ€å¤§ã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦80MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2077,16 +2077,16 @@
 .if n \{\
 .RE
 .\}
-Oracle Solaris 7¤ª¤è¤ÓOracle Solaris 8 SPARC¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¤³¤ÎÃͤξå¸Â¤Ï¡¢¤ª¤è¤½4,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£Oracle Solaris 2\&.6¤ª¤è¤Óx86¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¾å¸Â¤Ï¡¢¤ª¤è¤½2,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£Linux¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¾ì¹ç¤Î¾å¸Â¤Ï¡¢¤ª¤è¤½2,000MB¤«¤é¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤ÎÎ̤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹¡£
+Oracle Solaris 7ãŠã‚ˆã³Oracle Solaris 8 SPARCプラットフォームã®å ´åˆã®ã“ã®å€¤ã®ä¸Šé™ã¯ã€ãŠã‚ˆã4,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚Oracle Solaris 2\&.6ãŠã‚ˆã³x86プラットフォームã®å ´åˆã®ä¸Šé™ã¯ã€ãŠã‚ˆã2,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚Linuxプラットフォームã®å ´åˆã®ä¸Šé™ã¯ã€ãŠã‚ˆã2,000MBã‹ã‚‰ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã®é‡ã‚’引ã„ãŸã‚‚ã®ã§ã™ã€‚
 .sp
-\fI\-XX:MaxHeapSize\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmx\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-XX:MaxHeapSize\fRオプションã¯\fI\-Xmx\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:MaxHeapFreeRatio=\fIpercent\fR
 .RS 4
-GC¥¤¥Ù¥ó¥È¸å¤Î¶õ¤­¥Ò¡¼¥×Îΰè¤Îµö²Ä¤µ¤ì¤Æ¤¤¤ëºÇÂç¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¶õ¤­¥Ò¡¼¥×Îΰ褬¤³¤ÎÃͤòĶ¤¨¤Æ³ÈÂ礷¤¿¾ì¹ç¡¢¤½¤Î¥Ò¡¼¥×¤Ï½Ì¾®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ70%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+GCイベント後ã®ç©ºãヒープ領域ã®è¨±å¯ã•ã‚Œã¦ã„る最大ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚空ãヒープ領域ãŒã“ã®å€¤ã‚’超ãˆã¦æ‹¡å¤§ã—ãŸå ´åˆã€ãã®ãƒ’ープã¯ç¸®å°ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯70%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¶õ¤­¥Ò¡¼¥×¤ÎºÇÂçÈæΨ¤ò75%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç©ºãヒープã®æœ€å¤§æ¯”率を75%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2101,9 +2101,9 @@
 .PP
 \-XX:MaxMetaspaceSize=\fIsize\fR
 .RS 4
-¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿¤Ë³ä¤êÅö¤Æ¤ë¤³¤È¤¬¤Ç¤­¤ë¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥â¥ê¡¼¤ÎºÇÂçÎ̤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥µ¥¤¥º¤ÏÀ©¸Â¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¿¥Ç¡¼¥¿¤ÎÎ̤ϡ¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¼«ÂΡ¢Â¾¤Î¼Â¹ÔÃ楢¥×¥ê¥±¡¼¥·¥ç¥ó¡¢¤ª¤è¤Ó¥·¥¹¥Æ¥à¤Ç»ÈÍѲÄǽ¤Ê¥á¥â¥ê¡¼¤ÎÎ̤ˤè¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+クラス・メタデータã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ãŒã§ãã‚‹ãƒã‚¤ãƒ†ã‚£ãƒ–・メモリーã®æœ€å¤§é‡ã‚’設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚µã‚¤ã‚ºã¯åˆ¶é™ã•ã‚Œã¦ã„ã¾ã›ã‚“。アプリケーションã®ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®é‡ã¯ã€ã‚¢ãƒ—リケーション自体ã€ä»–ã®å®Ÿè¡Œä¸­ã‚¢ãƒ—リケーションã€ãŠã‚ˆã³ã‚·ã‚¹ãƒ†ãƒ ã§ä½¿ç”¨å¯èƒ½ãªãƒ¡ãƒ¢ãƒªãƒ¼ã®é‡ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿¤ÎºÇÂ祵¥¤¥º¤ò256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®æœ€å¤§ã‚µã‚¤ã‚ºã‚’256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2118,14 +2118,14 @@
 .PP
 \-XX:MaxNewSize=\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϿʹֹ©³ØŪ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚デフォルト値ã¯äººé–“工学的ã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:MaxTenuringThreshold=\fIthreshold\fR
 .RS 4
-Ŭ±þGC¥µ¥¤¥º»ØÄê¤Ç»ÈÍѤ¹¤ëºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤ÃͤòÀßÄꤷ¤Þ¤¹¡£ºÇÂçÃͤÏ15¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¥Ñ¥é¥ì¥ë(¥¹¥ë¡¼¥×¥Ã¥È)¥³¥ì¥¯¥¿¤Î¾ì¹ç¤Ï15¡¢CMS¥³¥ì¥¯¥¿¤Î¾ì¹ç¤Ï6¤Ç¤¹¡£
+é©å¿œGCサイズ指定ã§ä½¿ç”¨ã™ã‚‹æœ€å¤§æ®¿å ‚入りã—ãã„値を設定ã—ã¾ã™ã€‚最大値ã¯15ã§ã™ã€‚デフォルト値ã¯ã€ãƒ‘ラレル(スループット)コレクタã®å ´åˆã¯15ã€CMSコレクタã®å ´åˆã¯6ã§ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢ºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤Ãͤò10¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€æœ€å¤§æ®¿å ‚入りã—ãã„値を10ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2140,14 +2140,14 @@
 .PP
 \-XX:MetaspaceSize=\fIsize\fR
 .RS 4
-ºÇ½é¤ËĶ¤¨¤¿¤È¤­¤Ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤ò¥È¥ê¥¬¡¼¤¹¤ë¡¢³ä¤êÅö¤Æ¤é¤ì¤¿¥¯¥é¥¹¡¦¥á¥¿¥Ç¡¼¥¿Îΰè¤Î¥µ¥¤¥º¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¤·¤­¤¤Ãͤϡ¢»ÈÍѤµ¤ì¤ë¥á¥¿¥Ç¡¼¥¿¤ÎÎ̤ˤè¤Ã¤ÆÁý²Ã¤Þ¤¿¤Ï¸º¾¯¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥µ¥¤¥º¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+最åˆã«è¶…ãˆãŸã¨ãã«ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’トリガーã™ã‚‹ã€å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸã‚¯ãƒ©ã‚¹ãƒ»ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿é ˜åŸŸã®ã‚µã‚¤ã‚ºã‚’設定ã—ã¾ã™ã€‚ã“ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®ã—ãã„値ã¯ã€ä½¿ç”¨ã•ã‚Œã‚‹ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿ã®é‡ã«ã‚ˆã£ã¦å¢—加ã¾ãŸã¯æ¸›å°‘ã—ã¾ã™ã€‚デフォルトã®ã‚µã‚¤ã‚ºã¯ãƒ—ラットフォームã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:MinHeapFreeRatio=\fIpercent\fR
 .RS 4
-GC¥¤¥Ù¥ó¥È¸å¤Î¶õ¤­¥Ò¡¼¥×Îΰè¤Îµö²Ä¤µ¤ì¤Æ¤¤¤ëºÇ¾®¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¶õ¤­¥Ò¡¼¥×Îΰ褬¤³¤ÎÃͤò²¼²ó¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥Ò¡¼¥×¤Ï³ÈÂ礷¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤ÎÃͤÏ40%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+GCイベント後ã®ç©ºãヒープ領域ã®è¨±å¯ã•ã‚Œã¦ã„る最å°ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚空ãヒープ領域ãŒã“ã®å€¤ã‚’下回ã£ãŸå ´åˆã€ãã®ãƒ’ープã¯æ‹¡å¤§ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®å€¤ã¯40%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¶õ¤­¥Ò¡¼¥×¤ÎºÇ¾®ÈæΨ¤ò25%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ç©ºãヒープã®æœ€å°æ¯”率を25%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2162,7 +2162,7 @@
 .PP
 \-XX:NewRatio=\fIratio\fR
 .RS 4
-¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤È¸Å¤¤À¤Âå¤Î¥µ¥¤¥º¤È¤ÎÈæΨ¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï2¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤/¸Å¤¤¤ÎÈæΨ¤ò1¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¨å¤ã„世代ã®ã‚µã‚¤ã‚ºã¨ã®æ¯”率を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯2ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€è‹¥ã„/å¤ã„ã®æ¯”率を1ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2177,11 +2177,11 @@
 .PP
 \-XX:NewSize=\fIsize\fR
 .RS 4
-¼ã¤¤À¤Âå(¥Ê¡¼¥µ¥ê)¤Î¥Ò¡¼¥×¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£
+è‹¥ã„世代(ナーサリ)ã®ãƒ’ープã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×¤Î¼ã¤¤À¤Âå¥ê¡¼¥¸¥ç¥ó¤Ï¿·¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£GC¤Ï¡¢Â¾¤Î¥ê¡¼¥¸¥ç¥ó¤è¤ê¤³¤Î¥ê¡¼¥¸¥ç¥ó¤Ç¡¢¤è¤êÉÑÈˤ˼¹Ԥµ¤ì¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤¬¾®¤µ¤¹¤®¤ë¾ì¹ç¡¢Â¿¿ô¤Î¥Þ¥¤¥Ê¡¼GC¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥µ¥¤¥º¤¬Â礭¤¹¤®¤ë¾ì¹ç¡¢¥Õ¥ëGC¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢´°Î»¤Þ¤Ç¤Ë»þ´Ö¤¬¤«¤«¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¼ã¤¤À¤Âå¤Î¥µ¥¤¥º¤Ï¡¢Á´ÂΤΥҡ¼¥×¡¦¥µ¥¤¥º¤ÎȾʬ¤«¤é4ʬ¤Î1¤Î´Ö¤Ë¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ヒープã®è‹¥ã„世代リージョンã¯æ–°ã—ã„オブジェクトã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚GCã¯ã€ä»–ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚ˆã‚Šã“ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã§ã€ã‚ˆã‚Šé »ç¹ã«å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºãŒå°ã•ã™ãŽã‚‹å ´åˆã€å¤šæ•°ã®ãƒžã‚¤ãƒŠãƒ¼GCãŒå®Ÿè¡Œã•ã‚Œã¾ã™ã€‚サイズãŒå¤§ãã™ãŽã‚‹å ´åˆã€ãƒ•ãƒ«GCã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã¾ã™ãŒã€å®Œäº†ã¾ã§ã«æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚è‹¥ã„世代ã®ã‚µã‚¤ã‚ºã¯ã€å…¨ä½“ã®ãƒ’ープ・サイズã®åŠåˆ†ã‹ã‚‰4分ã®1ã®é–“ã«ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¼ã¤¤À¤Âå¤Î½é´ü¥µ¥¤¥º¤òÍÍ¡¹¤Êñ°Ì¤ò»ÈÍѤ·¤Æ256MB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€è‹¥ã„世代ã®åˆæœŸã‚µã‚¤ã‚ºã‚’様々ãªå˜ä½ã‚’使用ã—ã¦256MBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2194,14 +2194,14 @@
 .if n \{\
 .RE
 .\}
-\fI\-XX:NewSize\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-Xmn\fR¤ÈƱÅù¤Ç¤¹¡£
+\fI\-XX:NewSize\fRオプションã¯\fI\-Xmn\fRã¨åŒç­‰ã§ã™ã€‚
 .RE
 .PP
 \-XX:ParallelGCThreads=\fIthreads\fR
 .RS 4
-¼ã¤¤À¤Âå¤È¸Å¤¤À¤Âå¤Ç¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Ë»ÈÍѤ¹¤ë¥¹¥ì¥Ã¥É¤Î¿ô¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢JVM¤Ë»ÈÍѤǤ­¤ëCPU¤Î¿ô¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+è‹¥ã„世代ã¨å¤ã„世代ã§ãƒ‘ラレル・ガベージ・コレクションã«ä½¿ç”¨ã™ã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã®æ•°ã‚’設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€JVMã«ä½¿ç”¨ã§ãã‚‹CPUã®æ•°ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¥Ñ¥é¥ì¥ëGC¤Î¥¹¥ì¥Ã¥É¿ô¤ò2¤ËÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ãƒ‘ラレルGCã®ã‚¹ãƒ¬ãƒƒãƒ‰æ•°ã‚’2ã«è¨­å®šã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2216,52 +2216,52 @@
 .PP
 \-XX:+ParallelRefProcEnabled
 .RS 4
-¥Ñ¥é¥ì¥ë»²¾È½èÍý¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+パラレルå‚照処ç†ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintAdaptiveSizePolicy
 .RS 4
-Ŭ±þÀ¤Â奵¥¤¥º»ØÄê¤Ë´Ø¤¹¤ë¾ðÊó¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+é©å¿œä¸–代サイズ指定ã«é–¢ã™ã‚‹æƒ…å ±ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGC
 .RS 4
-GC¤´¤È¤Î¥á¥Ã¥»¡¼¥¸¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCApplicationConcurrentTime
 .RS 4
-ºÇ¸å¤ÎµÙ»ß(¤¿¤È¤¨¤ÐGCµÙ»ß¤Ê¤É)°Ê¹ß¤Ë·Ð²á¤·¤¿»þ´Ö¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+最後ã®ä¼‘æ­¢(ãŸã¨ãˆã°GC休止ãªã©)以é™ã«çµŒéŽã—ãŸæ™‚é–“ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCApplicationStoppedTime
 .RS 4
-µÙ»ß(¤¿¤È¤¨¤ÐGCµÙ»ß¤Ê¤É)¤¬·Ñ³¤·¤¿»þ´Ö¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+休止(ãŸã¨ãˆã°GC休止ãªã©)ãŒç¶™ç¶šã—ãŸæ™‚é–“ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX+PrintGCDateStamp
 .RS 4
-GC¤´¤È¤ÎÆüÉÕ¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®æ—¥ä»˜ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCDetails
 .RS 4
-GC¤´¤È¤Î¾ÜºÙ¥á¥Ã¥»¡¼¥¸¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®è©³ç´°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCTaskTimeStamps
 .RS 4
-¸Ä¡¹¤ÎGC¥ï¡¼¥«¡¼¡¦¥¹¥ì¥Ã¥É¡¦¥¿¥¹¥¯¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+個々ã®GCワーカー・スレッド・タスクã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintGCTimeStamp
 .RS 4
-GC¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+GCã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+PrintTenuringDistribution
 .RS 4
-ÅÂƲÆþ¤ê´ü´Ö¾ðÊó¤Î½ÐÎϤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¼¡¤Ë¡¢½ÐÎϤÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+殿堂入り期間情報ã®å‡ºåŠ›ã‚’有効ã«ã—ã¾ã™ã€‚次ã«ã€å‡ºåŠ›ã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2276,23 +2276,23 @@
 .if n \{\
 .RE
 .\}
-´ü´Ö1¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢ºÇ¤â¼ã¤¤¥µ¥Ð¥¤¥Ð¤Ç¤¹(Á°¤Î¥¹¥«¥Ù¥ó¥¸¤Î¸å¤ËºîÀ®¤µ¤ì¡¢ºÇ¿·¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¡¢EdenÎΰ褫¤é¥µ¥Ð¥¤¥ÐÎΰè¤Ë°ÜÆ°¤·¤Þ¤·¤¿)¡£´ü´Ö2¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢2¤Ä¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¤Þ¤¹(2ÈÖÌܤΥ¹¥«¥Ù¥ó¥¸Ãæ¤Ë¡¢¤¢¤ë¥µ¥Ð¥¤¥ÐÎΰ褫¤é¼¡¤ÎÎΰè¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤·¤¿)¡£¤³¤Î¤è¤¦¤Ë³¤­¤Þ¤¹¡£
+期間1オブジェクトã¯ã€æœ€ã‚‚è‹¥ã„サãƒã‚¤ãƒã§ã™(å‰ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã®å¾Œã«ä½œæˆã•ã‚Œã€æœ€æ–°ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã€Eden領域ã‹ã‚‰ã‚µãƒã‚¤ãƒé ˜åŸŸã«ç§»å‹•ã—ã¾ã—ãŸ)。期間2オブジェクトã¯ã€2ã¤ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã¾ã™(2番目ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ä¸­ã«ã€ã‚るサãƒã‚¤ãƒé ˜åŸŸã‹ã‚‰æ¬¡ã®é ˜åŸŸã«ã‚³ãƒ”ーã•ã‚Œã¾ã—ãŸ)。ã“ã®ã‚ˆã†ã«ç¶šãã¾ã™ã€‚
 .sp
-Á°½Ò¤ÎÎã¤Ç¤Ï¡¢28,992,024¥Ð¥¤¥È¤¬1¤Ä¤Î¥¹¥«¥Ù¥ó¥¸¤Ç¸³¤·¡¢EdenÎΰ褫¤é¥µ¥Ð¥¤¥ÐÎΰè¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤·¤¿¡£1,366,864¥Ð¥¤¥È¤Ï´ü´Ö2¥ª¥Ö¥¸¥§¥¯¥È¤Ê¤É¤Ë¤è¤êÀêÍ­¤µ¤ì¤Æ¤¤¤Þ¤¹¡£³Æ¹Ô¤Î3ÈÖÌܤÎÃͤϡ¢´ü´Ön°Ê²¼¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ÎÎßÀÑ¥µ¥¤¥º¤Ç¤¹¡£
+å‰è¿°ã®ä¾‹ã§ã¯ã€28,992,024ãƒã‚¤ãƒˆãŒ1ã¤ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã§å­˜ç¶šã—ã€Eden領域ã‹ã‚‰ã‚µãƒã‚¤ãƒé ˜åŸŸã«ã‚³ãƒ”ーã•ã‚Œã¾ã—ãŸã€‚1,366,864ãƒã‚¤ãƒˆã¯æœŸé–“2オブジェクトãªã©ã«ã‚ˆã‚Šå æœ‰ã•ã‚Œã¦ã„ã¾ã™ã€‚å„è¡Œã®3番目ã®å€¤ã¯ã€æœŸé–“n以下ã®ã‚ªãƒ–ジェクトã®ç´¯ç©ã‚µã‚¤ã‚ºã§ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-XX:+ScavengeBeforeFullGC
 .RS 4
-¤½¤ì¤¾¤ì¤Î¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤ÎGC¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤Î¥¹¥«¥Ù¥ó¥¸¤ò¹Ô¤¦¤È¡¢¸Å¤¤À¤ÂåÎΰ褫¤é¼ã¤¤À¤ÂåÎΰè¤Ø¤Î¥¢¥¯¥»¥¹¤¬²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¿ô¤ò¸º¤é¤¹¤³¤È¤¬¤Ç¤­¤ë¤¿¤á¡¢¤³¤ì¤ò̵¸ú¤Ë\fI¤·¤Ê¤¤\fR¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£³Æ¥Õ¥ëGC¤ÎÁ°¤Ë¼ã¤¤À¤Âå¤ÎGC¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-ScavengeBeforeFullGC\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+ãã‚Œãžã‚Œã®ãƒ•ãƒ«GCã®å‰ã«è‹¥ã„世代ã®GCを有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚フルGCã®å‰ã«è‹¥ã„世代ã®ã‚¹ã‚«ãƒ™ãƒ³ã‚¸ã‚’è¡Œã†ã¨ã€å¤ã„世代領域ã‹ã‚‰è‹¥ã„世代領域ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒå¯èƒ½ãªã‚ªãƒ–ジェクトã®æ•°ã‚’減らã™ã“ã¨ãŒã§ãã‚‹ãŸã‚ã€ã“れを無効ã«\fIã—ãªã„\fRã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚å„フルGCã®å‰ã«è‹¥ã„世代ã®GCを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-ScavengeBeforeFullGC\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:SoftRefLRUPolicyMSPerMB=\fItime\fR
 .RS 4
-¥½¥Õ¥È¡¦¥¢¥¯¥»¥¹¤¬²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤¬ºÇ¸å¤Ë»²¾È¤µ¤ì¤Æ¤«¤é¥Ò¡¼¥×¾å¤Ç¥¢¥¯¥Æ¥£¥Ö¤Ê¤Þ¤Þ¤Ë¤Ê¤Ã¤Æ¤¤¤ë»þ´Ö(¥ß¥êÉÃñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¢¥Ò¡¼¥×Æâ¤Î¶õ¤­¥á¥¬¥Ð¥¤¥ÈÅö¤¿¤ê¤Ç1Éäθ³´ü´Ö¤Ç¤¹¡£\fI\-XX:SoftRefLRUPolicyMSPerMB\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¸½ºß¤Î¥Ò¡¼¥×¡¦¥µ¥¤¥º(Java HotSpot Client VMÍÑ)¤Þ¤¿¤ÏºÇÂç²Äǽ¥Ò¡¼¥×¡¦¥µ¥¤¥º(Java HotSpot Server VMÍÑ)¤Î1¥á¥¬¥Ð¥¤¥ÈÅö¤¿¤ê¤Î¥ß¥êÉäòɽ¤¹À°¿ôÃͤò¼õ¤±Æþ¤ì¤Þ¤¹¡£¤³¤Î°ã¤¤¤Ï¡¢Client VM¤Ï¡¢¥Ò¡¼¥×¤òÂ礭¤¯¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥½¥Õ¥È»²¾È¤ò¥Õ¥é¥Ã¥·¥å¤¹¤ë·¹¸þ¤¬¤¢¤ë¤Î¤ËÂФ·¡¢Server VM¤Ï¡¢¥½¥Õ¥È»²¾È¤ò¥Õ¥é¥Ã¥·¥å¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Ò¡¼¥×¤òÂ礭¤¯¤¹¤ë·¹¸þ¤¬¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¡¢\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¥½¥Õ¥È»²¾È¤¬¤É¤Î¤¯¤é¤¤¿×®¤Ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤µ¤ì¤ë¤«¤Ë½ÅÍפʱƶÁ¤òµÚ¤Ü¤·¤Þ¤¹¡£
+ソフト・アクセスãŒå¯èƒ½ãªã‚ªãƒ–ジェクトãŒæœ€å¾Œã«å‚ç…§ã•ã‚Œã¦ã‹ã‚‰ãƒ’ープ上ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã¾ã¾ã«ãªã£ã¦ã„る時間(ミリ秒å˜ä½)を設定ã—ã¾ã™ã€‚デフォルト値ã¯ã€ãƒ’ープ内ã®ç©ºãメガãƒã‚¤ãƒˆå½“ãŸã‚Šã§1秒ã®å­˜ç¶šæœŸé–“ã§ã™ã€‚\fI\-XX:SoftRefLRUPolicyMSPerMB\fRオプションã¯ã€ç¾åœ¨ã®ãƒ’ープ・サイズ(Java HotSpot Client VM用)ã¾ãŸã¯æœ€å¤§å¯èƒ½ãƒ’ープ・サイズ(Java HotSpot Server VM用)ã®1メガãƒã‚¤ãƒˆå½“ãŸã‚Šã®ãƒŸãƒªç§’を表ã™æ•´æ•°å€¤ã‚’å—ã‘入れã¾ã™ã€‚ã“ã®é•ã„ã¯ã€Client VMã¯ã€ãƒ’ープを大ããã™ã‚‹ã®ã§ã¯ãªãã€ã‚½ãƒ•ãƒˆå‚照をフラッシュã™ã‚‹å‚¾å‘ãŒã‚ã‚‹ã®ã«å¯¾ã—ã€Server VMã¯ã€ã‚½ãƒ•ãƒˆå‚照をフラッシュã™ã‚‹ã®ã§ã¯ãªãã€ãƒ’ープを大ããã™ã‚‹å‚¾å‘ãŒã‚ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚後者ã®å ´åˆã€\fI\-Xmx\fRオプションã®å€¤ã¯ã€ã‚½ãƒ•ãƒˆå‚ç…§ãŒã©ã®ãらã„迅速ã«ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã•ã‚Œã‚‹ã‹ã«é‡è¦ãªå½±éŸ¿ã‚’åŠã¼ã—ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢Ãͤò2\&.5ÉäËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å€¤ã‚’2\&.5秒ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2307,7 +2307,7 @@
 .PP
 \-XX:SurvivorRatio=\fIratio\fR
 .RS 4
-EdenÎΰè¤Î¥µ¥¤¥º¤È¥µ¥Ð¥¤¥ÐÎΰè¤Î¥µ¥¤¥º¤È¤ÎÈæΨ¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï8¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢Eden/¥µ¥Ð¥¤¥ÐÎΰè¤ÎÈæΨ¤ò4¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+Eden領域ã®ã‚µã‚¤ã‚ºã¨ã‚µãƒã‚¤ãƒé ˜åŸŸã®ã‚µã‚¤ã‚ºã¨ã®æ¯”率を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯8ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€Eden/サãƒã‚¤ãƒé ˜åŸŸã®æ¯”率を4ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2322,9 +2322,9 @@
 .PP
 \-XX:TargetSurvivorRatio=\fIpercent\fR
 .RS 4
-¼ã¤¤¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸å¤Ë»ÈÍѤµ¤ì¤ë¥µ¥Ð¥¤¥ÐÎΰè¤ÎÌÜŪ¤Î³ä¹ç(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï50%¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+è‹¥ã„ガベージ・コレクションã®å¾Œã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚µãƒã‚¤ãƒé ˜åŸŸã®ç›®çš„ã®å‰²åˆ(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯50%ã«è¨­å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¤Î¥µ¥Ð¥¤¥ÐÎΰè¤ÎÈæΨ¤ò30%¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã®ã‚µãƒã‚¤ãƒé ˜åŸŸã®æ¯”率を30%ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2339,9 +2339,9 @@
 .PP
 \-XX:TLABSize=\fIsize\fR
 .RS 4
-¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ð¥Ã¥Õ¥¡(TLAB)¤Î½é´ü¥µ¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIk\fR¤Þ¤¿¤Ï\fIK\fR¡¢¥á¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIm\fR¤Þ¤¿¤Ï\fIM\fR¡¢¥®¥¬¥Ð¥¤¥È¤ò¼¨¤¹¾ì¹ç¤Ïʸ»ú\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬0¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢JVM¤Ç¤Ï½é´ü¥µ¥¤¥º¤¬¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+スレッド・ローカルãªå‰²å½“ã¦ãƒãƒƒãƒ•ã‚¡(TLAB)ã®åˆæœŸã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIk\fRã¾ãŸã¯\fIK\fRã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIm\fRã¾ãŸã¯\fIM\fRã€ã‚®ã‚¬ãƒã‚¤ãƒˆã‚’示ã™å ´åˆã¯æ–‡å­—\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒ0ã«è¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€JVMã§ã¯åˆæœŸã‚µã‚¤ã‚ºãŒè‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢TLAB¤Î½é´ü¥µ¥¤¥º¤ò512KB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€TLABã®åˆæœŸã‚µã‚¤ã‚ºã‚’512KBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2356,102 +2356,102 @@
 .PP
 \-XX:+UseAdaptiveSizePolicy
 .RS 4
-Ŭ±þÀ¤Â奵¥¤¥º»ØÄê¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Å¬±þÀ¤Â奵¥¤¥º»ØÄê¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseAdaptiveSizePolicy\fR¤ò»ØÄꤷ¡¢¥á¥â¥ê¡¼³äÅö¤Æ¥×¡¼¥ë¤Î¥µ¥¤¥º¤òÌÀ¼¨Åª¤ËÀßÄꤷ¤Þ¤¹(\fI\-XX:SurvivorRatio\fR¥ª¥×¥·¥ç¥ó¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤)¡£
+é©å¿œä¸–代サイズ指定ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚é©å¿œä¸–代サイズ指定を無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseAdaptiveSizePolicy\fRを指定ã—ã€ãƒ¡ãƒ¢ãƒªãƒ¼å‰²å½“ã¦ãƒ—ールã®ã‚µã‚¤ã‚ºã‚’明示的ã«è¨­å®šã—ã¾ã™(\fI\-XX:SurvivorRatio\fRオプションをå‚考ã«ã—ã¦ãã ã•ã„)。
 .RE
 .PP
 \-XX:+UseCMSInitiatingOccupancyOnly
 .RS 4
-CMS¥³¥ì¥¯¥¿¤Î³«»Ï¤Î¤¿¤á¤ÎÍ£°ì¤Î´ð½à¤È¤·¤Æ¤ÎÀêÍ­ÃͤλÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢Â¾¤Î´ð½à¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+CMSコレクタã®é–‹å§‹ã®ãŸã‚ã®å”¯ä¸€ã®åŸºæº–ã¨ã—ã¦ã®å æœ‰å€¤ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ä»–ã®åŸºæº–ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseConcMarkSweepGC
 .RS 4
-¸Å¤¤À¤Âå¤Ø¤ÎCMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÂÔµ¡»þ´Ö¤ÎÍ×·ï¤ò¡¢¥¹¥ë¡¼¥×¥Ã¥È(\fI\-XX:+UseParallelGC\fR)¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ë¤è¤Ã¤ÆËþ¤¿¤¹¤³¤È¤¬¤Ç¤­¤Ê¤¤¾ì¹ç¡¢CMS¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£G1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(\fI\-XX:+UseG1GC\fR)¤ÏÊ̤ÎÂåÂؤȤʤê¤Þ¤¹¡£
+å¤ã„世代ã¸ã®CMSガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚アプリケーションã®å¾…機時間ã®è¦ä»¶ã‚’ã€ã‚¹ãƒ«ãƒ¼ãƒ—ット(\fI\-XX:+UseParallelGC\fR)ガベージ・コレクタã«ã‚ˆã£ã¦æº€ãŸã™ã“ã¨ãŒã§ããªã„å ´åˆã€CMSガベージ・コレクタを使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚G1ガベージ・コレクタ(\fI\-XX:+UseG1GC\fR)ã¯åˆ¥ã®ä»£æ›¿ã¨ãªã‚Šã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fI\-XX:+UseParNewGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを有効ã«ã™ã‚‹ã¨ã€\fI\-XX:+UseParNewGC\fRオプションãŒè‡ªå‹•çš„ã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseG1GC
 .RS 4
-G1¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ï¥µ¡¼¥Ð¡¼·Á¼°¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Ç¡¢ÂçÎ̤ÎRAM¤ò»ý¤Ä¥Þ¥ë¥Á¥×¥í¥»¥Ã¥µ¡¦¥Þ¥·¥ó¤òÂоݤȤ·¤Æ¤¤¤Þ¤¹¡£¹â¤¤³ÎΨ¤ÇGCµÙ»ß»þ´Ö¤ÎÌÜɸ¤òãÀ®¤·¡¢Æ±»þ¤ËŬÀڤʥ¹¥ë¡¼¥×¥Ã¥È¤â°Ý»ý¤·¤Þ¤¹¡£G1¥³¥ì¥¯¥¿¤Ï¡¢GCÂÔµ¡»þ´Ö¤Î¸ÂÄꤵ¤ì¤¿Í×·ï(°ÂÄꤷ¤¿Í½Â¬²Äǽ¤Ê0\&.5ÉÃ̤Ëþ¤ÎµÙ»ß»þ´Ö)¤ò»ý¤Ä¡¢Â礭¤¤¥Ò¡¼¥×(Ìó6GB°Ê¾å¤Î¥µ¥¤¥º)¤¬É¬Íפʥ¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¿ä¾©¤µ¤ì¤Þ¤¹¡£
+G1ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã‚Œã¯ã‚µãƒ¼ãƒãƒ¼å½¢å¼ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚¿ã§ã€å¤§é‡ã®RAMã‚’æŒã¤ãƒžãƒ«ãƒãƒ—ロセッサ・マシンを対象ã¨ã—ã¦ã„ã¾ã™ã€‚高ã„確率ã§GC休止時間ã®ç›®æ¨™ã‚’é”æˆã—ã€åŒæ™‚ã«é©åˆ‡ãªã‚¹ãƒ«ãƒ¼ãƒ—ットも維æŒã—ã¾ã™ã€‚G1コレクタã¯ã€GC待機時間ã®é™å®šã•ã‚ŒãŸè¦ä»¶(安定ã—ãŸäºˆæ¸¬å¯èƒ½ãª0\&.5秒未満ã®ä¼‘止時間)ã‚’æŒã¤ã€å¤§ãã„ヒープ(ç´„6GB以上ã®ã‚µã‚¤ã‚º)ãŒå¿…è¦ãªã‚¢ãƒ—リケーションã«æŽ¨å¥¨ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseGCOverheadLimit
 .RS 4
-\fIOutOfMemoryError\fRÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤ë¤Þ¤Ç¤Ë¡¢GC¤ÇJVM¤Ë¤è¤Ã¤ÆÍפ·¤¿»þ´Ö¤Î³ä¹ç¤òÀ©¸Â¤¹¤ë¥Ý¥ê¥·¡¼¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Ë¹ç·×»þ´Ö¤Î98%¤è¤ê¿¤¯Èñ¤ä¤µ¤ì¡¢¥Ò¡¼¥×¤Î¥ê¥«¥Ð¥ê¤¬2%̤Ëþ¤Ç¤¢¤ë¾ì¹ç¡¢¥Ñ¥é¥ì¥ëGC¤Ë¤è¤Ã¤Æ\fIOutOfMemoryError\fR¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£¥Ò¡¼¥×¤¬¾®¤µ¤¤¾ì¹ç¡¢¤³¤Îµ¡Ç½¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬Ä¹´ü´Ö¤Û¤È¤ó¤É¤Þ¤¿¤Ï¤Þ¤Ã¤¿¤¯¿ÊĽ¤Ê¤¯¼Â¹Ô¤·¤Æ¤¤¤ë¾õÂÖ¤ò²óÈò¤¹¤ë¤¿¤á¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseGCOverheadLimit\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIOutOfMemoryError\fR例外ãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã‚‹ã¾ã§ã«ã€GCã§JVMã«ã‚ˆã£ã¦è¦ã—ãŸæ™‚é–“ã®å‰²åˆã‚’制é™ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã«åˆè¨ˆæ™‚é–“ã®98%より多ã費やã•ã‚Œã€ãƒ’ープã®ãƒªã‚«ãƒãƒªãŒ2%未満ã§ã‚ã‚‹å ´åˆã€ãƒ‘ラレルGCã«ã‚ˆã£ã¦\fIOutOfMemoryError\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚ヒープãŒå°ã•ã„å ´åˆã€ã“ã®æ©Ÿèƒ½ã¯ã€ã‚¢ãƒ—リケーションãŒé•·æœŸé–“ã»ã¨ã‚“ã©ã¾ãŸã¯ã¾ã£ãŸã進æ—ãªã実行ã—ã¦ã„る状態を回é¿ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseGCOverheadLimit\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseNUMA
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Çû¤¤ÂÔµ¡»þ´Ö¤Î¥á¥â¥ê¡¼¤Î»ÈÍѤòÁý²Ã¤µ¤»¤ë¤³¤È¤Ç¡¢ÉԶѰì¤Ê¥á¥â¥ê¡¼¡¦¥¢¡¼¥­¥Æ¥¯¥Á¥ã(NUMA)¤ò»ÈÍѤ·¤¿¥Þ¥·¥ó¾å¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹ºÇŬ²½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢NUMA¤ËÂФ¹¤ëºÇŬ²½¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(\fI\-XX:+UseParallelGC\fR)¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤Î¤ß»ÈÍѲÄǽ¤Ç¤¹¡£
+アプリケーションã§çŸ­ã„待機時間ã®ãƒ¡ãƒ¢ãƒªãƒ¼ã®ä½¿ç”¨ã‚’増加ã•ã›ã‚‹ã“ã¨ã§ã€ä¸å‡ä¸€ãªãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ã‚¢ãƒ¼ã‚­ãƒ†ã‚¯ãƒãƒ£(NUMA)を使用ã—ãŸãƒžã‚·ãƒ³ä¸Šã®ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンス最é©åŒ–を有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€NUMAã«å¯¾ã™ã‚‹æœ€é©åŒ–ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‘ラレル・ガベージ・コレクタ(\fI\-XX:+UseParallelGC\fR)ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã®ã¿ä½¿ç”¨å¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-XX:+UseParallelGC
 .RS 4
-Ê£¿ô¤Î¥×¥í¥»¥Ã¥µ¤òÍøÍѤ·¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¡¢¥Ñ¥é¥ì¥ë¡¦¥¹¥«¥Ù¥ó¥¸¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿(¥¹¥ë¡¼¥×¥Ã¥È¡¦¥³¥ì¥¯¥¿¤È¤â¸Æ¤Ð¤ì¤ë)¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+複数ã®ãƒ—ロセッサを利用ã—ã¦ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ã€ãƒ‘ラレル・スカベンジ・ガベージ・コレクタ(スループット・コレクタã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤ì¤òÍ­¸ú¤Ë¤·¤¿¾ì¹ç¡¢ÌÀ¼¨Åª¤Ë̵¸ú¤Ë¤·¤Ê¤¤¤«¤®¤ê¡¢\fI\-XX:+UseParallelOldGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚ã“れを有効ã«ã—ãŸå ´åˆã€æ˜Žç¤ºçš„ã«ç„¡åŠ¹ã«ã—ãªã„ã‹ãŽã‚Šã€\fI\-XX:+UseParallelOldGC\fRオプションãŒè‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseParallelOldGC
 .RS 4
-¥Õ¥ëGC¤Ø¤Î¥Ñ¥é¥ì¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£¤³¤ì¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢\fI\-XX:+UseParallelGC\fR¥ª¥×¥·¥ç¥ó¤¬¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+フルGCã¸ã®ãƒ‘ラレル・ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚ã“れを有効ã«ã™ã‚‹ã¨ã€\fI\-XX:+UseParallelGC\fRオプションãŒè‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseParNewGC
 .RS 4
-¼ã¤¤À¤Âå¤Ç¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ø¤Î¥Ñ¥é¥ì¥ë¡¦¥¹¥ì¥Ã¥É¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ç¤¹¡£\fI\-XX:+UseConcMarkSweepGC\fR¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤È¡¢¤³¤ì¤Ï¼«Æ°Åª¤ËÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+è‹¥ã„世代ã§ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã¸ã®ãƒ‘ラレル・スレッドã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã§ã™ã€‚\fI\-XX:+UseConcMarkSweepGC\fRオプションを設定ã™ã‚‹ã¨ã€ã“ã‚Œã¯è‡ªå‹•çš„ã«æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseSerialGC
 .RS 4
-¥·¥ê¥¢¥ë¡¦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥¿¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤«¤éÆÃÊ̤ʵ¡Ç½¤òɬÍפȤ·¤Ê¤¤¡¢¾®µ¬ÌϤÇñ½ã¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¾ì¹ç¤Ë¤Ï¡¢¤³¤ì¤Ï°ìÈ̤˺ÇŬ¤ÊÁªÂò¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥³¥ì¥¯¥¿¤Ï¡¢¥Þ¥·¥ó¤Î¹½À®¤ª¤è¤ÓJVM¤Î¥¿¥¤¥×¤Ë´ð¤Å¤¤¤Æ¡¢¼«Æ°Åª¤ËÁªÂò¤µ¤ì¤Þ¤¹¡£
+シリアル・ガベージ・コレクタã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ガベージ・コレクションã‹ã‚‰ç‰¹åˆ¥ãªæ©Ÿèƒ½ã‚’å¿…è¦ã¨ã—ãªã„ã€å°è¦æ¨¡ã§å˜ç´”ãªã‚¢ãƒ—リケーションã®å ´åˆã«ã¯ã€ã“ã‚Œã¯ä¸€èˆ¬ã«æœ€é©ãªé¸æŠžã§ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ç„¡åŠ¹ã«ãªã£ã¦ãŠã‚Šã€ã‚³ãƒ¬ã‚¯ã‚¿ã¯ã€ãƒžã‚·ãƒ³ã®æ§‹æˆãŠã‚ˆã³JVMã®ã‚¿ã‚¤ãƒ—ã«åŸºã¥ã„ã¦ã€è‡ªå‹•çš„ã«é¸æŠžã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-XX:+UseTLAB
 .RS 4
-¼ã¤¤À¤Âå¤ÎÎΰè¤Ç¤Î¥¹¥ì¥Ã¥É¡¦¥í¡¼¥«¥ë¤Ê³äÅö¤Æ¥Ö¥í¥Ã¥¯(TLAB)¤Î»ÈÍѤòÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£TLAB¤Î»ÈÍѤò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢\fI\-XX:\-UseTLAB\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+è‹¥ã„世代ã®é ˜åŸŸã§ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ãƒ­ãƒ¼ã‚«ãƒ«ãªå‰²å½“ã¦ãƒ–ロック(TLAB)ã®ä½¿ç”¨ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚TLABã®ä½¿ç”¨ã‚’無効ã«ã™ã‚‹ã«ã¯ã€\fI\-XX:\-UseTLAB\fRを指定ã—ã¾ã™ã€‚
 .RE
-.SS "Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó"
+.SS "éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ション"
 .PP
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ë¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢°Ê¹ß¤ÏÉÔÍפȤߤʤµ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã«ã¯å«ã¾ã‚Œã¦ã„ã¾ã—ãŸãŒã€ä»¥é™ã¯ä¸è¦ã¨ã¿ãªã•ã‚Œã¦ã„ã¾ã™ã€‚
 .PP
 \-Xrun\fIlibname\fR
 .RS 4
-»ØÄꤷ¤¿¥Ç¥Ð¥Ã¥°/¥×¥í¥Õ¥¡¥¤¥ë¤Î¥é¥¤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-agentlib\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+指定ã—ãŸãƒ‡ãƒãƒƒã‚°/プロファイルã®ãƒ©ã‚¤ãƒ–ラリをロードã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-agentlib\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:CMSInitiatingPermOccupancyFraction=\fIpercent\fR
 .RS 4
-GC¤ò³«»Ï¤¹¤ë±Êµ×À¤ÂåÀêͭΨ(0¤«¤é100¤Þ¤Ç)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤Ç¤ÏÈó¿ä¾©¤Ç¡¢¤½¤ì¤ËÂå¤ï¤ë¤â¤Î¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+GCを開始ã™ã‚‹æ°¸ä¹…世代å æœ‰çŽ‡(0ã‹ã‚‰100ã¾ã§)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã§ã¯éžæŽ¨å¥¨ã§ã€ãã‚Œã«ä»£ã‚ã‚‹ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-XX:MaxPermSize=\fIsize\fR
 .RS 4
-±Êµ×À¤ÂåÎΰè¤ÎºÇÂ祵¥¤¥º(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢JDK 8¤ÇÈó¿ä¾©¤Ë¤Ê¤ê¡¢\fI\-XX:MaxMetaspaceSize\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+永久世代領域ã®æœ€å¤§ã‚µã‚¤ã‚º(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€JDK 8ã§éžæŽ¨å¥¨ã«ãªã‚Šã€\fI\-XX:MaxMetaspaceSize\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:PermSize=\fIsize\fR
 .RS 4
-Ķ¤¨¤¿¾ì¹ç¤Ë¤Ï¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤ò¥È¥ê¥¬¡¼¤¹¤ë¡¢±Êµ×À¤Âå¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿Îΰè(¥Ð¥¤¥Èñ°Ì)¤òÀßÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢JDK 8¤ÇÈó¿ä¾©¤Ë¤Ê¤ê¡¢\fI\-XX:MetaspaceSize\fR¥ª¥×¥·¥ç¥ó¤Ë¼è¤Ã¤ÆÂå¤ï¤é¤ì¤Þ¤·¤¿¡£
+超ãˆãŸå ´åˆã«ã¯ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’トリガーã™ã‚‹ã€æ°¸ä¹…世代ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸé ˜åŸŸ(ãƒã‚¤ãƒˆå˜ä½)を設定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€JDK 8ã§éžæŽ¨å¥¨ã«ãªã‚Šã€\fI\-XX:MetaspaceSize\fRオプションã«å–ã£ã¦ä»£ã‚られã¾ã—ãŸã€‚
 .RE
 .PP
 \-XX:+UseSplitVerifier
 .RS 4
-¸¡¾Ú¥×¥í¥»¥¹¤Îʬ³ä¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¸¡¾Ú¤Ï¡¢¥¿¥¤¥×»²¾È(¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼Â¹Ô)¤È¡¢¥¿¥¤¥×¡¦¥Á¥§¥Ã¥¯(JVM¥é¥ó¥¿¥¤¥à¤Ë¤è¤Ã¤Æ¼Â¹Ô)¤Î2¤Ä¤Î¥Õ¥§¡¼¥º¤Ëʬ³ä¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤ÇÈó¿ä¾©¤È¤Ê¤ê¡¢¸¡¾Ú¤Ï¥Ç¥Õ¥©¥ë¥È¤Çʬ³ä¤µ¤ì¡¢Ìµ¸ú¤Ë¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+検証プロセスã®åˆ†å‰²ã‚’有効ã«ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯æœ‰åŠ¹ã«ãªã£ã¦ãŠã‚Šã€æ¤œè¨¼ã¯ã€ã‚¿ã‚¤ãƒ—å‚ç…§(コンパイラã«ã‚ˆã£ã¦å®Ÿè¡Œ)ã¨ã€ã‚¿ã‚¤ãƒ—・ãƒã‚§ãƒƒã‚¯(JVMランタイムã«ã‚ˆã£ã¦å®Ÿè¡Œ)ã®2ã¤ã®ãƒ•ã‚§ãƒ¼ã‚ºã«åˆ†å‰²ã•ã‚Œã¦ã„ã¾ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã§éžæŽ¨å¥¨ã¨ãªã‚Šã€æ¤œè¨¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§åˆ†å‰²ã•ã‚Œã€ç„¡åŠ¹ã«ã™ã‚‹æ–¹æ³•ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-XX:+UseStringCache
 .RS 4
-°ìÈ̤˳ä¤êÅö¤Æ¤é¤ì¤¿Ê¸»úÎó¤Î¥­¥ã¥Ã¥·¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏJDK 8¤«¤éºï½ü¤µ¤ì¡¢¤½¤ì¤ËÂå¤ï¤ë¤â¤Î¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+一般ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸæ–‡å­—列ã®ã‚­ãƒ£ãƒƒã‚·ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯JDK 8ã‹ã‚‰å‰Šé™¤ã•ã‚Œã€ãã‚Œã«ä»£ã‚ã‚‹ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
-.SH "¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥Á¥å¡¼¥Ë¥ó¥°¤ÎÎã"
+.SH "パフォーマンス・ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ã®ä¾‹"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥¹¥ë¡¼¥×¥Ã¥È¤ÎºÇŬ²½¤Þ¤¿¤Ï¥ì¥¹¥Ý¥ó¥¹»þ´Ö¤Îû½Ì²½¤Î¤¤¤º¤ì¤«¤ò¹Ô¤¦¤¿¤á¤Î¡¢»î¸³Åª¤Ê¥Á¥å¡¼¥Ë¥ó¥°¡¦¥Õ¥é¥°¤Î»ÈÍÑÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ«ãƒ¼ãƒ—ットã®æœ€é©åŒ–ã¾ãŸã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹æ™‚é–“ã®çŸ­ç¸®åŒ–ã®ã„ãšã‚Œã‹ã‚’è¡Œã†ãŸã‚ã®ã€è©¦é¨“çš„ãªãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°ãƒ»ãƒ•ãƒ©ã‚°ã®ä½¿ç”¨æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ¥¹¥ë¡¼¥×¥Ã¥È¤ò¸þ¾å¤¹¤ë¤¿¤á¤Î¥Á¥å¡¼¥Ë¥ó¥°
+\fBExample 1\fR, スループットをå‘上ã™ã‚‹ãŸã‚ã®ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°
 .RS 4
 .sp
 .if n \{\
@@ -2465,7 +2465,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥ì¥¹¥Ý¥ó¥¹»þ´Ö¤ò®¤¯¤¹¤ë¤¿¤á¤Î¥Á¥å¡¼¥Ë¥ó¥°
+\fBExample 2\fR, レスãƒãƒ³ã‚¹æ™‚間を速ãã™ã‚‹ãŸã‚ã®ãƒãƒ¥ãƒ¼ãƒ‹ãƒ³ã‚°
 .RS 4
 .sp
 .if n \{\
@@ -2478,9 +2478,9 @@
 .RE
 .\}
 .RE
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+.SH "終了ステータス"
 .PP
-Ä̾¼¡¤Î½ªÎ»Ãͤ¬µ¯Æ°¥Ä¡¼¥ë¤«¤éÊÖ¤µ¤ì¤ë¤Î¤Ï¡¢µ¯Æ°¸µ¤¬ÉÔÀµ¤Ê°ú¿ô¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¤«¡¢¿¼¹ï¤Ê¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤«¡¢¤¢¤ë¤¤¤ÏJVM¤Ë¤è¤êÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì¹ç¤Ç¤¹¡£¤¿¤À¤·¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢API¸Æ½Ð¤·\fISystem\&.exit(exitValue)\fR¤ò»ÈÍѤ·¤ÆǤ°Õ¤ÎÃͤòÊÖ¤¹¤³¤È¤òÁªÂò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Ãͤϼ¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+通常ã€æ¬¡ã®çµ‚了値ãŒèµ·å‹•ãƒ„ールã‹ã‚‰è¿”ã•ã‚Œã‚‹ã®ã¯ã€èµ·å‹•å…ƒãŒä¸æ­£ãªå¼•æ•°ã§å‘¼ã³å‡ºã•ã‚ŒãŸã‹ã€æ·±åˆ»ãªã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸã‹ã€ã‚ã‚‹ã„ã¯JVMã«ã‚ˆã‚Šä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´åˆã§ã™ã€‚ãŸã ã—ã€Javaアプリケーションã¯ã€API呼出ã—\fISystem\&.exit(exitValue)\fRを使用ã—ã¦ä»»æ„ã®å€¤ã‚’è¿”ã™ã“ã¨ã‚’é¸æŠžã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚値ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2490,7 +2490,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI0\fR: Àµ¾ï½ªÎ»
+\fI0\fR: 正常終了
 .RE
 .sp
 .RS 4
@@ -2501,9 +2501,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI>0\fR: ¥¨¥é¡¼È¯À¸
+\fI>0\fR: エラー発生
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/javac.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/javac.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javac
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javac" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javac" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javac \- Java¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤òÆɤ߼è¤ê¡¢¥Ð¥¤¥È¥³¡¼¥É¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javac \- JavaクラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’読ã¿å–ã‚Šã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -62,32 +62,32 @@
 .RE
 .\}
 .PP
-°ú¿ô¤ò»ØÄꤹ¤ë½ç½ø¤ÏǤ°Õ¤Ç¤¹¡£
+引数を指定ã™ã‚‹é †åºã¯ä»»æ„ã§ã™ã€‚
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIsourcefiles\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(\fIMyClass\&.java\fR¤Ê¤É)¡£
+コンパイルã•ã‚Œã‚‹1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(\fIMyClass\&.java\fRãªã©)。
 .RE
 .PP
 \fIclasses\fR
 .RS 4
-Ãí¼á¤Î½èÍýÂоݤȤʤë1¤Ä°Ê¾å¤Î¥¯¥é¥¹(\fIMyPackage\&.MyClass\fR¤Ê¤É)¡£
+注釈ã®å‡¦ç†å¯¾è±¡ã¨ãªã‚‹1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹(\fIMyPackage\&.MyClass\fRãªã©)。
 .RE
 .PP
 \fI@argfiles\fR
 .RS 4
-¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò°ìÍ÷ɽ¼¨¤¹¤ë1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ç¤Ï\fI\-J\fR¥ª¥×¥·¥ç¥ó¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+オプションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’一覧表示ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§ã¯\fI\-J\fRオプションã¯æŒ‡å®šã§ãã¾ã›ã‚“。コマンドライン引数ファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤òÆɤ߼è¤ê¡¢¥Ð¥¤¥È¥³¡¼¥É¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹Æâ¤ÎÃí¼á¤Î½èÍý¤â¤Ç¤­¤Þ¤¹¡£
+\fIjavac\fRコマンドã¯ã€Javaプログラミング言語ã§è¨˜è¿°ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’読ã¿å–ã‚Šã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚\fIjavac\fRコマンドã§ã¯ã€Javaソース・ファイルãŠã‚ˆã³ã‚¯ãƒ©ã‚¹å†…ã®æ³¨é‡ˆã®å‡¦ç†ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Õ¥¡¥¤¥ë̾¤ò\fIjavac\fR¤ËÅϤ¹¤Ë¤Ï¡¢2¤Ä¤ÎÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+ソース・コードã®ãƒ•ã‚¡ã‚¤ãƒ«åã‚’\fIjavac\fRã«æ¸¡ã™ã«ã¯ã€2ã¤ã®æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -97,7 +97,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¿ô¤¬¾¯¤Ê¤¤¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Þ¤¹¡£
+ソース・ファイルã®æ•°ãŒå°‘ãªã„å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«åをコマンドラインã§æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -108,19 +108,19 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¿ô¤¬Â¿¤¤¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤ò¶õÇò¤Þ¤¿¤Ï²þ¹Ô¤Ç¶èÀڤäƻØÄꤷ¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¡¢¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë̾¤ÎÀèƬ¤Ë¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤Þ¤¹¡£
+ソース・ファイルã®æ•°ãŒå¤šã„å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ•ã‚¡ã‚¤ãƒ«åを空白ã¾ãŸã¯æ”¹è¡Œã§åŒºåˆ‡ã£ã¦æŒ‡å®šã—ã¾ã™ã€‚\fIjavac\fRコマンドã§ã€ãƒªã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®å…ˆé ­ã«ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)を使用ã—ã¾ã™ã€‚
 .RE
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Õ¥¡¥¤¥ë̾¤Ï\&.java³ÈÄ¥»Ò¤ò¡¢¥¯¥é¥¹¤Î¥Õ¥¡¥¤¥ë̾¤Ï\&.class³ÈÄ¥»Ò¤ò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤É¤Á¤é¤â¡¢³ºÅö¤¹¤ë¥¯¥é¥¹¤ËÂбþ¤¹¤ë¥ë¡¼¥È̾¤ò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMyClass\fR¤È¤¤¤¦Ì¾Á°¤Î¥¯¥é¥¹¤Ï¡¢\fIMyClass\&.java\fR¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ëµ­½Ò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢\fIMyClass\&.class\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ð¥¤¥È¥³¡¼¥É¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£
+ソース・コードã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯\&.javaæ‹¡å¼µå­ã‚’ã€ã‚¯ãƒ©ã‚¹ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯\&.classæ‹¡å¼µå­ã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã©ã¡ã‚‰ã‚‚ã€è©²å½“ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«å¯¾å¿œã™ã‚‹ãƒ«ãƒ¼ãƒˆåã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMyClass\fRã¨ã„ã†åå‰ã®ã‚¯ãƒ©ã‚¹ã¯ã€\fIMyClass\&.java\fRã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«è¨˜è¿°ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€\fIMyClass\&.class\fRã¨ã„ã†åå‰ã®ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚
 .PP
-ÆâÉô¥¯¥é¥¹¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤È¡¢ÄɲäΥ¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢\fIMyClass$MyInnerClass\&.class\fR¤Î¤è¤¦¤Ë¡¢ÆâÉô¥¯¥é¥¹Ì¾¤È³°Éô¥¯¥é¥¹Ì¾¤òÁȤ߹礻¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
+内部クラスãŒå®šç¾©ã•ã‚Œã¦ã„ã‚‹ã¨ã€è¿½åŠ ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã¯ã€\fIMyClass$MyInnerClass\&.class\fRã®ã‚ˆã†ã«ã€å†…部クラスåã¨å¤–部クラスåを組ã¿åˆã›ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤òÈ¿±Ç¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¡¦¥Ä¥ê¡¼¤ËÇÛÃÖ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fI/workspace\fR¤Ë¤¢¤ë¾ì¹ç¡¢\fIcom\&.mysoft\&.mypack\&.MyClass\fR¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¡¢\fI/workspace/com/mysoft/mypack/MyClass\&.java\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£
+ソース・ファイルã¯ã€ãƒ‘ッケージ・ツリーをå映ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ»ãƒ„リーã«é…ç½®ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fI/workspace\fRã«ã‚ã‚‹å ´åˆã€\fIcom\&.mysoft\&.mypack\&.MyClass\fRã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’ã€\fI/workspace/com/mysoft/mypack/MyClass\&.java\fRã«æ ¼ç´ã—ã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢³Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÂбþ¤¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤·¤Þ¤¹¡£\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê̤νÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯ã€å„クラス・ファイルを対応ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã—ã¾ã™ã€‚\fI\-d\fRオプションを使用ã—ã¦ã€åˆ¥ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ë¤Ï¡¢¸½ºß¤Î³«È¯´Ä¶­¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëɸ½à¥ª¥×¥·¥ç¥ó¤Î¥»¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì°Ê³°¤ÎÈóɸ½à¥ª¥×¥·¥ç¥ó¤Ï¡¢¸½ºß¤Î²¾ÁÛ¥Þ¥·¥ó¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤Ë¸ÇÍ­¤Î¥ª¥×¥·¥ç¥ó¤Ç¡¢¾­Íè¡¢Êѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£Èóɸ½à¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-X\fR¥ª¥×¥·¥ç¥ó¤Ç»Ï¤Þ¤ê¤Þ¤¹¡£
+コンパイラã«ã¯ã€ç¾åœ¨ã®é–‹ç™ºç’°å¢ƒã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æ¨™æº–オプションã®ã‚»ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚ã“れ以外ã®éžæ¨™æº–オプションã¯ã€ç¾åœ¨ã®ä»®æƒ³ãƒžã‚·ãƒ³ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…ã«å›ºæœ‰ã®ã‚ªãƒ—ションã§ã€å°†æ¥ã€å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚éžæ¨™æº–オプションã¯ã€\fI\-X\fRオプションã§å§‹ã¾ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -130,7 +130,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -141,230 +141,230 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+éžæ¨™æº–オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "ɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "標準オプション"
 .PP
 \-A\fIkey\fR[\fI=value\fR]
 .RS 4
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ËÅϤ¹¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¤¬Ä¾Àܲò¼á¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¤½¤ì¤¾¤ì¤Î¥×¥í¥»¥Ã¥µ¤Ç»ÈÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£\fIkey\fR¤ÎÃͤϡ¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¼±Ê̻Ҥò¥É¥Ã¥È(\&.)¤Ç¶èÀÚ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+注釈プロセッサã«æ¸¡ã™ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã¯ã€\fIjavac\fRãŒç›´æŽ¥è§£é‡ˆã™ã‚‹ã®ã§ã¯ãªãã€ãã‚Œãžã‚Œã®ãƒ—ロセッサã§ä½¿ç”¨ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚\fIkey\fRã®å€¤ã¯ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®è­˜åˆ¥å­ã‚’ドット(\&.)ã§åŒºåˆ‡ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR or \-classpath \fIpath\fR
 .RS 4
-¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó(¥ª¥×¥·¥ç¥ó¤Ç)Ãí¼á¥×¥í¥»¥Ã¥µ¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fICLASSPATH\fR¡¢\fI\-cp\fR¡¢\fI\-classpath\fR¤Î¤¤¤º¤ì¤â»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Î\fI¥¯¥é¥¹¡¦¥Ñ¥¹\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ê¤ê¤Þ¤¹¡£Setting the Class Path ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ユーザー・クラス・ファイルã€ãŠã‚ˆã³(オプションã§)注釈プロセッサã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã¯\fICLASSPATH\fR環境変数ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fICLASSPATH\fRã€\fI\-cp\fRã€\fI\-classpath\fRã®ã„ãšã‚Œã‚‚指定ã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®\fIクラス・パス\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãªã‚Šã¾ã™ã€‚Setting the Class Path ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤â¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£
+\fI\-sourcepath\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ユーザー・クラス・パスã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-processorpath\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢Ãí¼á¥×¥í¥»¥Ã¥µ¤â¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¸¡º÷¤µ¤ì¤Þ¤¹¡£
+\fI\-processorpath\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€æ³¨é‡ˆãƒ—ロセッサもクラス・パスã‹ã‚‰æ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Djava\&.ext\&.dirs=\fIdirectories\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+インストール済拡張機能ã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Djava\&.endorsed\&.dirs=\fIdirectories\fR
 .RS 4
-¾µÇ§¤µ¤ì¤¿É¸½à¥Ñ¥¹¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+承èªã•ã‚ŒãŸæ¨™æº–パスã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½ÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fIjavac\fR¤Ç¤ÏºîÀ®¤µ¤ì¤Ê¤¤¤¿¤á¡¢¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤Ç¤¢¤ë¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤¿¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤·¡¢É¬Íפ˱þ¤¸¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£
+クラス・ファイルã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯\fIjavac\fRã§ã¯ä½œæˆã•ã‚Œãªã„ãŸã‚ã€ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスãŒãƒ‘ッケージã®ä¸€éƒ¨ã§ã‚ã‚‹å ´åˆã€\fIjavac\fRã¯ã€ãƒ‘ッケージåã‚’å映ã—ãŸã‚µãƒ–ディレクトリ内ã«ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã—ã€å¿…è¦ã«å¿œã˜ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’作æˆã—ã¾ã™ã€‚
 .sp
 \fI\-d\fR
-\fI/home/myclasses\fR¤È»ØÄꤷ¡¢¥¯¥é¥¹¤Î̾Á°¤¬\fIcom\&.mypackage\&.MyClass\fR¤Ç¤¢¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï\fI/home/myclasses/com/mypackage/MyClass\&.class\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fI/home/myclasses\fRã¨æŒ‡å®šã—ã€ã‚¯ãƒ©ã‚¹ã®åå‰ãŒ\fIcom\&.mypackage\&.MyClass\fRã§ã‚ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI/home/myclasses/com/mypackage/MyClass\&.class\fRã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢³Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¤½¤ÎÀ¸À®¸µ¤È¤Ê¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë³ÊǼ¤·¤Þ¤¹¡£
+\fI\-d\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIjavac\fRã¯ã€å„クラス・ファイルをã€ãã®ç”Ÿæˆå…ƒã¨ãªã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ë¼«Æ°Åª¤ËÄɲ䵤ì¤Þ¤»¤ó¡£
+\fB注æ„:\fR
+\fI\-d\fRオプションã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«è‡ªå‹•çš„ã«è¿½åŠ ã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-deprecation
 .RS 4
-Èó¿ä¾©¤Î¥á¥ó¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¹¤¬»ÈÍѤޤ¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤ë¤¿¤Ó¤Ë¡¢ÀâÌÀ¤òɽ¼¨¤·¤Þ¤¹¡£\fI\-deprecation\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavac\fR¤Ï¡¢Èó¿ä¾©¤Î¥á¥ó¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¹¤ò»ÈÍѤޤ¿¤Ï¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¡£\fI\-deprecation\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-Xlint:deprecation\fR¤Î¾Êάɽµ­¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®ãƒ¡ãƒ³ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãŒä½¿ç”¨ã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã‚‹ãŸã³ã«ã€èª¬æ˜Žã‚’表示ã—ã¾ã™ã€‚\fI\-deprecation\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavac\fRã¯ã€éžæŽ¨å¥¨ã®ãƒ¡ãƒ³ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã‚’使用ã¾ãŸã¯ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るソース・ファイルã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ã€‚\fI\-deprecation\fRオプションã¯ã€\fI\-Xlint:deprecation\fRã®çœç•¥è¡¨è¨˜ã§ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Ì¾(EUC\-JP¤äUTF\-8¤Ê¤É)¤òÀßÄꤷ¤Þ¤¹¡£\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥Ð¡¼¥¿¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+ソース・ファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°å(EUC\-JPã‚„UTF\-8ãªã©)を設定ã—ã¾ã™ã€‚\fI\-encoding\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ—ラットフォームã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ãƒãƒ¼ã‚¿ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-endorseddirs \fIdirectories\fR
 .RS 4
-¾µÇ§¤µ¤ì¤¿É¸½à¥Ñ¥¹¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+承èªã•ã‚ŒãŸæ¨™æº–パスã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-extdirs \fIdirectories\fR
 .RS 4
-\fIext\fR¥Ç¥£¥ì¥¯¥È¥ê¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£directoriesÊÑ¿ô¤Ë¤Ï¡¢¥³¥í¥ó¤Ç¶èÀڤ俥ǥ£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î³ÆJAR¥Õ¥¡¥¤¥ë¤«¤é¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£¸¡½Ð¤µ¤ì¤¿¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î°ìÉô¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIext\fRディレクトリã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚directories変数ã«ã¯ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã£ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚指定ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®å„JARファイルã‹ã‚‰ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚検出ã•ã‚ŒãŸã™ã¹ã¦ã®JARファイルã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ä¸€éƒ¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë(°Û¤Ê¤ëJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¼ÂÁõ¤µ¤ì¤¿¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ä³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦)¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¾ÜºÙ¤Ï¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+クロスコンパイル(ç•°ãªã‚‹Javaプラットフォームã«å®Ÿè£…ã•ã‚ŒãŸãƒ–ートストラップ・クラスや拡張機能クラスã«å¯¾ã—ã¦ã‚³ãƒ³ãƒ‘イルを行ã†)を実行ã™ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã«ã¯æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚’å«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚詳細ã¯ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-g
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤ò´Þ¤à¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¹ÔÈֹ椪¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¾ðÊó¤Î¤ß¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+ローカル変数をå«ã‚€ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€è¡Œç•ªå·ãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«æƒ…å ±ã®ã¿ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-g:none
 .RS 4
-¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+デãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã›ã‚“。
 .RE
 .PP
 \-g:[\fIkeyword list\fR]
 .RS 4
-¥«¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥­¡¼¥ï¡¼¥É¡¦¥ê¥¹¥È¤Ë¤è¤ê»ØÄꤵ¤ì¤¿¡¢ÆÃÄê¤Î¼ïÎà¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£¼¡¤Î¥­¡¼¥ï¡¼¥É¤¬Í­¸ú¤Ç¤¹¡£
+カンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ãƒ»ãƒªã‚¹ãƒˆã«ã‚ˆã‚ŠæŒ‡å®šã•ã‚ŒãŸã€ç‰¹å®šã®ç¨®é¡žã®ãƒ‡ãƒãƒƒã‚°æƒ…å ±ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚次ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ãŒæœ‰åŠ¹ã§ã™ã€‚
 .PP
 source
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+ソース・ファイルã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .PP
 lines
 .RS 4
-¹ÔÈÖ¹æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+行番å·ã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .PP
 vars
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¡£
+ローカル変数ã®ãƒ‡ãƒãƒƒã‚°æƒ…報。
 .RE
 .RE
 .PP
 \-help
 .RS 4
-ɸ½à¥ª¥×¥·¥ç¥ó¤Î³µÍפò½ÐÎϤ·¤Þ¤¹¡£
+標準オプションã®æ¦‚è¦ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-implicit:[\fIclass, none\fR]
 .RS 4
-°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤òÀ©¸æ¤·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¼«Æ°À¸À®¤¹¤ë¤Ë¤Ï¡¢\fI\-implicit:class\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤òÍÞÀ©¤¹¤ë¤Ë¤Ï¡¢\fI\-implicit:none\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Î¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¼«Æ°À¸À®¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤Î¾ì¹ç¡¢¤½¤Î¤è¤¦¤Ê¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿»þ¤ËÃí¼á½èÍý¤â¼Â¹Ô¤µ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤«¤é·Ù¹ð¤¬È¯¹Ô¤µ¤ì¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤¬ÌÀ¼¨Åª¤ËÀßÄꤵ¤ì¤¿¾ì¹ç¡¢·Ù¹ð¤Ïȯ¹Ô¤µ¤ì¤Þ¤»¤ó¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ç”Ÿæˆã‚’制御ã—ã¾ã™ã€‚クラス・ファイルを自動生æˆã™ã‚‹ã«ã¯ã€\fI\-implicit:class\fRを使用ã—ã¾ã™ã€‚クラス・ファイルã®ç”Ÿæˆã‚’抑制ã™ã‚‹ã«ã¯ã€\fI\-implicit:none\fRを使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå‹•ä½œã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è‡ªå‹•ç”Ÿæˆã«ãªã‚Šã¾ã™ã€‚ãã®å ´åˆã€ãã®ã‚ˆã†ãªã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚ŒãŸæ™‚ã«æ³¨é‡ˆå‡¦ç†ã‚‚実行ã•ã‚Œã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã‹ã‚‰è­¦å‘ŠãŒç™ºè¡Œã•ã‚Œã¾ã™ã€‚\fI\-implicit\fRオプションãŒæ˜Žç¤ºçš„ã«è¨­å®šã•ã‚ŒãŸå ´åˆã€è­¦å‘Šã¯ç™ºè¡Œã•ã‚Œã¾ã›ã‚“。型ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Javaµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシン(JVM)ã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Java起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fBÃí°Õ:\fR
-\fICLASSPATH\fR¡¢\fI\-classpath\fR¡¢\fI\-bootclasspath\fR¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¤Î¼Â¹Ô¤Ë»ÈÍѤµ¤ì¤ë¥¯¥é¥¹¤ò»ØÄꤷ¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤ª¤è¤ÓÊÑ¿ô¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤ò¥«¥¹¥¿¥Þ¥¤¥º¤·¤è¤¦¤È¤¹¤ë¤È¡¢¥ê¥¹¥¯¤¬¹â¤¯¡¢Â¿¤¯¤Î¾ì¹ç¡¢É¬ÍפʽèÍý¤¬¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤ò¥«¥¹¥¿¥Þ¥¤¥º¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢´ðÁäȤʤëJavaµ¯Æ°¥Ä¡¼¥ë¤Ë¥ª¥×¥·¥ç¥ó¤òÅϤ·¤Þ¤¹¡£
+\fB注æ„:\fR
+\fICLASSPATH\fRã€\fI\-classpath\fRã€\fI\-bootclasspath\fRãŠã‚ˆã³\fI\-extdirs\fRオプションã¯ã€\fIjavac\fRã®å®Ÿè¡Œã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã‚’指定ã—ã¾ã›ã‚“。ã“れらã®ã‚ªãƒ—ションãŠã‚ˆã³å¤‰æ•°ã‚’使用ã—ã¦ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…をカスタマイズã—よã†ã¨ã™ã‚‹ã¨ã€ãƒªã‚¹ã‚¯ãŒé«˜ãã€å¤šãã®å ´åˆã€å¿…è¦ãªå‡¦ç†ãŒå®Ÿè¡Œã•ã‚Œã¾ã›ã‚“。コンパイラã®å®Ÿè£…をカスタマイズã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€\fI\-J\fRオプションを使用ã—ã¦ã€åŸºç¤Žã¨ãªã‚‹Java起動ツールã«ã‚ªãƒ—ションを渡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-nowarn
 .RS 4
-·Ù¹ð¥á¥Ã¥»¡¼¥¸¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-Xlint:none\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£
+警告メッセージを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-Xlint:none\fRオプションã¨åŒã˜ã‚ˆã†ã«å‹•ä½œã—ã¾ã™ã€‚
 .RE
 .PP
 \-parameters
 .RS 4
-¥ê¥Õ¥ì¥¯¥·¥ç¥óAPI¤Î¥á¥½¥Ã¥É\fIjava\&.lang\&.reflect\&.Executable\&.getParameters\fR¤¬¼èÆÀ¤Ç¤­¤ë¤è¤¦¤Ë¡¢À¸À®¤µ¤ì¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤È¥á¥½¥Ã¥É¤Î²¾¥Ñ¥é¥á¡¼¥¿Ì¾¤ò³ÊǼ¤·¤Þ¤¹¡£
+リフレクションAPIã®ãƒ¡ã‚½ãƒƒãƒ‰\fIjava\&.lang\&.reflect\&.Executable\&.getParameters\fRãŒå–å¾—ã§ãるよã†ã«ã€ç”Ÿæˆã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¨ãƒ¡ã‚½ãƒƒãƒ‰ã®ä»®ãƒ‘ラメータåã‚’æ ¼ç´ã—ã¾ã™ã€‚
 .RE
 .PP
 \-proc: [\fInone\fR, \fIonly\fR]
 .RS 4
-Ãí¼á½èÍý¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¤ò¼Â¹Ô¤¹¤ë¤«¤òÀ©¸æ¤·¤Þ¤¹¡£\fI\-proc:none\fR¤Ï¡¢Ãí¼á½èÍý¤Ê¤·¤Ç¥³¥ó¥Ñ¥¤¥ë¤¬¼Â¹Ô¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fI\-proc:only\fR¤Ï¡¢Ãí¼á½èÍý¤Î¤ß¤¬¼Â¹Ô¤µ¤ì¡¢¸å³¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï¤Þ¤Ã¤¿¤¯¼Â¹Ô¤µ¤ì¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+注釈処ç†ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イルを実行ã™ã‚‹ã‹ã‚’制御ã—ã¾ã™ã€‚\fI\-proc:none\fRã¯ã€æ³¨é‡ˆå‡¦ç†ãªã—ã§ã‚³ãƒ³ãƒ‘イルãŒå®Ÿè¡Œã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fI\-proc:only\fRã¯ã€æ³¨é‡ˆå‡¦ç†ã®ã¿ãŒå®Ÿè¡Œã•ã‚Œã€å¾Œç¶šã®ã‚³ãƒ³ãƒ‘イルã¯ã¾ã£ãŸã実行ã•ã‚Œãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .RE
 .PP
 \-processor \fIclass1\fR [,\fIclass2\fR,\fIclass3\fR\&.\&.\&.]
 .RS 4
-¼Â¹Ô¤¹¤ëÃí¼á¥×¥í¥»¥Ã¥µ¤Î̾Á°¡£¤³¤ì¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷½èÍý¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£
+実行ã™ã‚‹æ³¨é‡ˆãƒ—ロセッサã®åå‰ã€‚ã“れを指定ã—ãŸå ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¤œç´¢å‡¦ç†ã¯çœç•¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-processorpath \fIpath\fR
 .RS 4
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤¤¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥×¥í¥»¥Ã¥µ¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£
+注釈プロセッサを検索ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒä½¿ç”¨ã•ã‚Œãªã„å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ãƒ—ロセッサãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdir\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î³ÊǼÀè¤È¤Ê¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï\fIjavac\fR¤Ç¤ÏºîÀ®¤µ¤ì¤Ê¤¤¤¿¤á¡¢¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤Ç¤¢¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤¿¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤·¡¢É¬Íפ˱þ¤¸¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ ¼ç´å…ˆã¨ãªã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯\fIjavac\fRã§ã¯ä½œæˆã•ã‚Œãªã„ãŸã‚ã€ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスãŒãƒ‘ッケージã®ä¸€éƒ¨ã§ã‚ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€ãƒ‘ッケージåã‚’å映ã—ãŸã‚µãƒ–ディレクトリ内ã«ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã—ã€å¿…è¦ã«å¿œã˜ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’作æˆã—ã¾ã™ã€‚
 .sp
-\fI\-s /home/mysrc\fR¤È»ØÄꤷ¡¢¥¯¥é¥¹¤Î̾Á°¤¬\fIcom\&.mypackage\&.MyClass\fR¤Ç¤¢¤ë¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï\fI/home/mysrc/com/mypackage/MyClass\&.java\fR¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fI\-s /home/mysrc\fRã¨æŒ‡å®šã—ã€ã‚¯ãƒ©ã‚¹ã®åå‰ãŒ\fIcom\&.mypackage\&.MyClass\fRã§ã‚ã‚‹å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI/home/mysrc/com/mypackage/MyClass\&.java\fRã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-source \fIrelease\fR
 .RS 4
-¼õ¤±ÉÕ¤±¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fIrelease\fR¤Ë¤Ï¼¡¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£
+å—ã‘付ã‘るソース・コードã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’指定ã—ã¾ã™ã€‚\fIrelease\fRã«ã¯æ¬¡ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚
 .PP
 1\&.3
 .RS 4
-¤³¤Î¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¡¢Java SE 1\&.3°Ê¹ß¤ËƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¡¢Áí¾Î¤Þ¤¿¤Ï¾¤Î¸À¸ìµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó¡£
+ã“ã®ã‚³ãƒ³ãƒ‘イラã§ã¯ã€Java SE 1\&.3以é™ã«å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã€ç·ç§°ã¾ãŸã¯ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¾ã›ã‚“。
 .RE
 .PP
 1\&.4
 .RS 4
-Java SE 1\&.4¤ÇƳÆþ¤µ¤ì¤¿¡¢¥¢¥µ¡¼¥·¥ç¥ó¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+Java SE 1\&.4ã§å°Žå…¥ã•ã‚ŒãŸã€ã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 1\&.5
 .RS 4
-Java SE 5¤ÇƳÆþ¤µ¤ì¤¿Áí¾Î¤ª¤è¤Ó¾¤Î¸À¸ìµ¡Ç½¤ò´Þ¤ó¤À¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+Java SE 5ã§å°Žå…¥ã•ã‚ŒãŸç·ç§°ãŠã‚ˆã³ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’å«ã‚“ã ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 5
 .RS 4
-1\&.5¤ÈƱµÁ¤Ç¤¹¡£
+1\&.5ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .PP
 1\&.6
 .RS 4
-Java SE 6¤Ç¤Ï¸À¸ì¤ËÂФ¹¤ëÊѹ¹¤ÏƳÆþ¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£¤·¤«¤·¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¡¦¥¨¥é¡¼¤¬¡¢Java Platform, Standard Edition¤Î°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤è¤¦¤Ê·Ù¹ð¤Ç¤Ï¤Ê¤¯¡¢¥¨¥é¡¼¤È¤·¤ÆÊó¹ð¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
+Java SE 6ã§ã¯è¨€èªžã«å¯¾ã™ã‚‹å¤‰æ›´ã¯å°Žå…¥ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚ã—ã‹ã—ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¨ãƒ©ãƒ¼ãŒã€Java Platform, Standard Editionã®ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã‚ˆã†ãªè­¦å‘Šã§ã¯ãªãã€ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦å ±å‘Šã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚
 .RE
 .PP
 6
 .RS 4
-1\&.6¤ÈƱµÁ¤Ç¤¹¡£
+1\&.6ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .PP
 1\&.7
 .RS 4
-¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£Java SE 7¤ÇƳÆþ¤µ¤ì¤¿µ¡Ç½¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚Java SE 7ã§å°Žå…¥ã•ã‚ŒãŸæ©Ÿèƒ½ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .PP
 7
 .RS 4
-1\&.7¤ÈƱµÁ¤Ç¤¹¡£
+1\&.7ã¨åŒç¾©ã§ã™ã€‚
 .RE
 .RE
 .PP
 \-sourcepath \fIsourcepath\fR
 .RS 4
-¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÄêµÁ¤ò¸¡º÷¤¹¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÈƱÍͤˡ¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤Ï¡¢Oracle Solaris¤Ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Ç¤Ï¥»¥ß¥³¥í¥ó¤Ç¶èÀڤꡢ¤³¤³¤Ë¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥¢¡¼¥«¥¤¥Ö¤Þ¤¿¤ÏZIP¥¢¡¼¥«¥¤¥Ö¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤Ï¥¢¡¼¥«¥¤¥ÖÆâ¤Î¥í¡¼¥«¥ë¡¦¥Ñ¥¹Ì¾¤¬¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÈ¿±Ç¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+クラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®å®šç¾©ã‚’検索ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ‘スを指定ã—ã¾ã™ã€‚ユーザー・クラス・パスã¨åŒæ§˜ã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€Oracle Solarisã§ã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã§ã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚Šã€ã“ã“ã«ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARアーカイブã¾ãŸã¯ZIPアーカイブを指定ã§ãã¾ã™ã€‚パッケージを使用ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ‘スåãŒãƒ‘ッケージåã‚’å映ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤â¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Ë¤è¤ê¸«¤Ä¤«¤Ã¤¿¥¯¥é¥¹¤ÏºÆ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+ソース・ファイルも見ã¤ã‹ã£ãŸå ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«ã‚ˆã‚Šè¦‹ã¤ã‹ã£ãŸã‚¯ãƒ©ã‚¹ã¯å†ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥í¡¼¥É¤µ¤ì¤ë¥¯¥é¥¹¤ª¤è¤Ó¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Î¾ðÊ󤬽ÐÎϤµ¤ì¤ë¡¢¾ÜºÙ½ÐÎϤò»ÈÍѤ·¤Þ¤¹¡£
+ロードã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã”ã¨ã®æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ã€è©³ç´°å‡ºåŠ›ã‚’使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-werror
 .RS 4
-·Ù¹ð¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¥³¥ó¥Ñ¥¤¥ë¤ò½ªÎ»¤·¤Þ¤¹¡£
+警告ãŒç™ºç”Ÿã—ãŸå ´åˆã«ã‚³ãƒ³ãƒ‘イルを終了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-X
 .RS 4
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ë¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+éžæ¨™æº–オプションã«é–¢ã™ã‚‹æƒ…報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SS "¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó"
+.SS "クロスコンパイル・オプション"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¯¥é¥¹¤Î¥³¥ó¥Ñ¥¤¥ë¤Ï¡¢\fIjavac\fR¤¬ÅºÉÕ¤µ¤ì¤Æ¤¤¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ª¤è¤Ó³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢\fIjavac\fR¤Ï¡¢°Û¤Ê¤ëJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¼ÂÁõ¤µ¤ì¤¿¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ª¤è¤Ó³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ËÂФ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤â¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦¾ì¹ç¤Ï¡¢\fI\-bootclasspath\fR¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤³¤È¤¬½ÅÍפǤ¹¡£
+デフォルトã§ã¯ã€ã‚¯ãƒ©ã‚¹ã®ã‚³ãƒ³ãƒ‘イルã¯ã€\fIjavac\fRãŒæ·»ä»˜ã•ã‚Œã¦ã„るプラットフォームã®ãƒ–ートストラップ・クラスãŠã‚ˆã³æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦è¡Œã‚ã‚Œã¾ã™ã€‚ãŸã ã—ã€\fIjavac\fRã¯ã€ç•°ãªã‚‹Javaプラットフォームã«å®Ÿè£…ã•ã‚ŒãŸãƒ–ートストラップ・クラスãŠã‚ˆã³æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã‚³ãƒ³ãƒ‘イルを行ã†ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イルもサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚クロスコンパイルを行ã†å ´åˆã¯ã€\fI\-bootclasspath\fRãŠã‚ˆã³\fI\-extdirs\fRオプションを使用ã™ã‚‹ã“ã¨ãŒé‡è¦ã§ã™ã€‚
 .PP
 \-target \fIversion\fR
 .RS 4
-²¾ÁÛ¥Þ¥·¥ó¤Î»ØÄꤵ¤ì¤¿¥ê¥ê¡¼¥¹¤òÂоݤȤ¹¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢»ØÄꤵ¤ì¤¿¥¿¡¼¥²¥Ã¥È°Ê¹ß¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÆ°ºî¤·¤Þ¤¹¤¬¡¢¤½¤ì¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤ÎJVM¤Ç¤ÏÆ°ºî¤·¤Þ¤»¤ó¡£Í­¸ú¤Ê¥¿¡¼¥²¥Ã¥È¤Ï¡¢1\&.1¡¢1\&.2¡¢1\&.3¡¢1\&.4¡¢1\&.5 (5¤â²Ä)¡¢1\&.6 (6¤â²Ä)¤ª¤è¤Ó1\&.7 (7¤â²Ä)¤Ç¤¹¡£
+仮想マシンã®æŒ‡å®šã•ã‚ŒãŸãƒªãƒªãƒ¼ã‚¹ã‚’対象ã¨ã™ã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚クラス・ファイルã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¿ãƒ¼ã‚²ãƒƒãƒˆä»¥é™ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯å‹•ä½œã—ã¾ã™ãŒã€ãれよりå‰ã®ãƒªãƒªãƒ¼ã‚¹ã®JVMã§ã¯å‹•ä½œã—ã¾ã›ã‚“。有効ãªã‚¿ãƒ¼ã‚²ãƒƒãƒˆã¯ã€1\&.1ã€1\&.2ã€1\&.3ã€1\&.4ã€1\&.5 (5ã‚‚å¯)ã€1\&.6 (6ã‚‚å¯)ãŠã‚ˆã³1\&.7 (7ã‚‚å¯)ã§ã™ã€‚
 .sp
-\fI\-target\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥È¤Ï¡¢\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤè¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£
+\fI\-target\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã¯ã€\fI\-source\fRオプションã®å€¤ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -374,7 +374,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -385,7 +385,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.2¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.4¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.2ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.4ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -396,7 +396,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.3¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.4¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.3ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.4ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -407,7 +407,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.5¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.5ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -418,7 +418,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬1\&.6¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ1\&.7¤Ç¤¹¡£
+\fI\-source\fRオプションãŒ1\&.6ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯1\&.7ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -429,23 +429,23 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-source\fR¥ª¥×¥·¥ç¥ó¤Î¾¤Î¤¹¤Ù¤Æ¤ÎÃͤξì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤʤê¤Þ¤¹¡£
+\fI\-source\fRオプションã®ä»–ã®ã™ã¹ã¦ã®å€¤ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯ã€\fI\-source\fRオプションã®å€¤ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-bootclasspath \fIbootclasspath\fR
 .RS 4
-»ØÄꤵ¤ì¤¿°ìÏ¢¤Î¥Ö¡¼¥È¡¦¥¯¥é¥¹¤ËÂФ·¤Æ¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¤¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ÈƱÍͤˡ¢¥Ö¡¼¥È¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥¨¥ó¥È¥ê¤Ï¥³¥í¥ó(:)¤Ç¶èÀڤꡢ¤³¤³¤Ë¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥¢¡¼¥«¥¤¥Ö¤Þ¤¿¤ÏZIP¥¢¡¼¥«¥¤¥Ö¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+指定ã•ã‚ŒãŸä¸€é€£ã®ãƒ–ート・クラスã«å¯¾ã—ã¦ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イルを行ã„ã¾ã™ã€‚ユーザー・クラス・パスã¨åŒæ§˜ã«ã€ãƒ–ート・クラス・パスã®ã‚¨ãƒ³ãƒˆãƒªã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã€ã“ã“ã«ã¯ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARアーカイブã¾ãŸã¯ZIPアーカイブを指定ã§ãã¾ã™ã€‚
 .RE
-.SS "¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó"
+.SS "コンパクト・プロファイル・オプション"
 .PP
-JDK 8°Ê¹ß¤«¤é¡¢\fIjavac\fR¥³¥ó¥Ñ¥¤¥é¤Ï¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¤È¡¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÁ´ÂΤòɬÍפȤ·¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¥Ç¥×¥í¥¤²Äǽ¤Ç¡¢¾®¤µ¤¤¥Õ¥Ã¥È¥×¥ê¥ó¥È¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ëµ¡Ç½¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¹¥È¥¢¤«¤é¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤òû½Ì¤¹¤ë¤Î¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Îµ¡Ç½¤Ï¡¢JRE¤ò¥Ð¥ó¥É¥ë¤¹¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¡¢¤è¤ê¥³¥ó¥Ñ¥¯¥È¤Ê¥Ç¥×¥í¥¤¥á¥ó¥È¤ËÌòΩ¤Á¤Þ¤¹¡£¤³¤Îµ¡Ç½¤Ï¡¢¾®¤µ¤¤¥Ç¥Ð¥¤¥¹¤Ç¤âÌòΩ¤Á¤Þ¤¹¡£
+JDK 8以é™ã‹ã‚‰ã€\fIjavac\fRコンパイラã¯ã‚³ãƒ³ãƒ‘クト・プロファイルをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚コンパクト・プロファイルを使用ã™ã‚‹ã¨ã€Javaプラットフォーム全体を必è¦ã¨ã—ãªã„アプリケーションã¯ã€ãƒ‡ãƒ—ロイå¯èƒ½ã§ã€å°ã•ã„フットプリントã§å®Ÿè¡Œã§ãã¾ã™ã€‚コンパクト・プロファイル機能ã¯ã€ã‚¢ãƒ—リケーション・ストアã‹ã‚‰ã®ã‚¢ãƒ—リケーションã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰æ™‚間を短縮ã™ã‚‹ã®ã«ä½¿ç”¨ã§ãã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯ã€JREã‚’ãƒãƒ³ãƒ‰ãƒ«ã™ã‚‹Javaアプリケーションã®ã€ã‚ˆã‚Šã‚³ãƒ³ãƒ‘クトãªãƒ‡ãƒ—ロイメントã«å½¹ç«‹ã¡ã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯ã€å°ã•ã„デãƒã‚¤ã‚¹ã§ã‚‚役立ã¡ã¾ã™ã€‚
 .PP
-¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥×¥í¥Õ¥¡¥¤¥ëÃͤϡ¢\fIcompact1\fR¡¢\fIcompact2\fR¤ª¤è¤Ó\fIcompact3\fR¤Ç¤¹¡£¤³¤ì¤é¤Ï¡¢ÄɲäΥ쥤¥ä¡¼¤Ç¤¹¡£Â礭¤¤ÈÖ¹æ¤Î³Æ¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¾®¤µ¤¤ÈÖ¹æ¤Î̾Á°¤Î¥×¥í¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎAPI¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るプロファイル値ã¯ã€\fIcompact1\fRã€\fIcompact2\fRãŠã‚ˆã³\fIcompact3\fRã§ã™ã€‚ã“れらã¯ã€è¿½åŠ ã®ãƒ¬ã‚¤ãƒ¤ãƒ¼ã§ã™ã€‚大ãã„番å·ã®å„コンパクト・プロファイルã«ã¯ã€å°ã•ã„番å·ã®åå‰ã®ãƒ—ロファイル内ã®ã™ã¹ã¦ã®APIãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
 \-profile
 .RS 4
-¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥×¥í¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+コンパクト・プロファイルを使用ã™ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«ãƒ—ロファイルåを指定ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -456,7 +456,7 @@
 .if n \{\
 .RE
 .\}
-javac¤Ï¡¢»ØÄꤵ¤ì¤¿¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤Ê¤¤Ç¤°Õ¤ÎJava SE API¤ò»ÈÍѤ¹¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¤½¤Î¤è¤¦¤Ê¥½¡¼¥¹¡¦¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤è¤¦¤È¤¹¤ë¤³¤È¤Ë¤è¤Ã¤ÆÀ¸¤¸¤ë¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤ÎÎã¤Ç¤¹¡£
+javacã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロファイルã«ãªã„ä»»æ„ã®Java SE APIを使用ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€ãã®ã‚ˆã†ãªã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—よã†ã¨ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ç”Ÿã˜ã‚‹ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -470,32 +470,32 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIApplet\fR¥¯¥é¥¹¤ò»ÈÍѤ·¤Ê¤¤¤è¤¦¤Ë¥½¡¼¥¹¤òÊѹ¹¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¨¥é¡¼¤ò½¤Àµ¤Ç¤­¤Þ¤¹¡£\-profile¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¨¥é¡¼¤ò½¤Àµ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¤Ï¡¢Java SE API¤Î´°Á´¤Ê¥»¥Ã¥È¤ËÂФ·¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£(¤É¤Î¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤â¡¢\fIApplet\fR¥¯¥é¥¹¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£)
+ã“ã®ä¾‹ã§ã¯ã€\fIApplet\fRクラスを使用ã—ãªã„よã†ã«ã‚½ãƒ¼ã‚¹ã‚’変更ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¨ãƒ©ãƒ¼ã‚’修正ã§ãã¾ã™ã€‚\-profileオプションを指定ã›ãšã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ã‚¨ãƒ©ãƒ¼ã‚’修正ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚コンパイルã¯ã€Java SE APIã®å®Œå…¨ãªã‚»ãƒƒãƒˆã«å¯¾ã—ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚(ã©ã®ã‚³ãƒ³ãƒ‘クト・プロファイルã«ã‚‚ã€\fIApplet\fRクラスã¯å«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。)
 .sp
-¥³¥ó¥Ñ¥¯¥È¡¦¥×¥í¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤ÎÊ̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥×¥í¥Õ¥¡¥¤¥ë¤Î¥¤¥á¡¼¥¸¤ò»ØÄꤹ¤ë\fIrt\&.jar\fR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤«¤ï¤ê¤Ë\fI\-profile\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥×¥í¥Õ¥¡¥¤¥ë¡¦¥¤¥á¡¼¥¸¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥·¥¹¥Æ¥à¾å¤Ë¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë»þ¤ËÌòΩ¤Á¤Þ¤¹¡£
+コンパクト・プロファイルを使用ã—ã¦ã‚³ãƒ³ãƒ‘イルã™ã‚‹ãŸã‚ã®åˆ¥ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€ãƒ—ロファイルã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’指定ã™ã‚‹\fIrt\&.jar\fRファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã‹ã‚ã‚Šã«\fI\-profile\fRオプションを使用ã™ã‚‹ã¨ã€ãƒ—ロファイル・イメージã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«ã‚·ã‚¹ãƒ†ãƒ ä¸Šã«å­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。ã“ã‚Œã¯ã€ã‚¯ãƒ­ã‚¹ã‚³ãƒ³ãƒ‘イル時ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
 \-Xbootclasspath/p:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÀÜÈø¼­¤òÄɲä·¤Þ¤¹¡£
+ブートストラップ・クラス・パスã«æŽ¥å°¾è¾žã‚’追加ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath/a:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÀÜƬ¼­¤òÄɲä·¤Þ¤¹¡£
+ブートストラップ・クラス・パスã«æŽ¥é ­è¾žã‚’追加ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xbootclasspath/:\fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ブートストラップ・クラス・ファイルã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:[\-]\fIgroup\fR [\fI/access\fR]
 .RS 4
-\fIgroup\fR¤ÎÃͤ¬\fIaccessibility\fR¡¢\fIsyntax\fR¡¢\fIreference\fR¡¢\fIhtml\fR¤Þ¤¿¤Ï\fImissing\fR¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ëÆÃÄê¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Þ¤¿¤Ï̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤Î¾ÜºÙ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIgroup\fRã®å€¤ãŒ\fIaccessibility\fRã€\fIsyntax\fRã€\fIreference\fRã€\fIhtml\fRã¾ãŸã¯\fImissing\fRã®ã„ãšã‚Œã‹ã§ã‚る特定ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã¾ãŸã¯ç„¡åŠ¹ã«ã—ã¾ã™ã€‚ã“れらã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã®è©³ç´°ã¯ã€\fIjavadoc\fRコマンドã®\fI\-Xdoclint\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。\fI\-Xdoclint\fRオプションã¯ã€\fIjavac\fRコマンドã§ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚
 .sp
-ÊÑ¿ô\fIaccess\fR¤Ï¡¢\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤¬¥Á¥§¥Ã¥¯¤¹¤ë¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤ÎºÇ¾®¤Î²Ä»ëÀ­¥ì¥Ù¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fIpublic\fR¡¢\fIprotected\fR¡¢\fIpackage\fR¤ª¤è¤Ó\fIprivate\fR¤ÎÃÍ(²Ä»ëÀ­¤Î¹â¤¤½ç)¤Î1¤Ä¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢(protected¡¢package¡¢public¤ò´Þ¤à) protected°Ê¾å¤Î¥¢¥¯¥»¥¹¡¦¥ì¥Ù¥ë¤ò»ý¤Ä¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ò(¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤Ç)¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
+変数\fIaccess\fRã¯ã€\fI\-Xdoclint\fRオプションãŒãƒã‚§ãƒƒã‚¯ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®æœ€å°ã®å¯è¦–性レベルを指定ã—ã¾ã™ã€‚\fIpublic\fRã€\fIprotected\fRã€\fIpackage\fRãŠã‚ˆã³\fIprivate\fRã®å€¤(å¯è¦–性ã®é«˜ã„é †)ã®1ã¤ã‚’æŒã¤ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ªãƒ—ションã¯ã€(protectedã€packageã€publicã‚’å«ã‚€) protected以上ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’æŒã¤ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã‚’(ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã§)ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -506,7 +506,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢package°Ê¾å¤Î¥¢¥¯¥»¥¹¸¢(package¤ª¤è¤Ópublic¤ò´Þ¤à)¤ò»ý¤Ä¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ËÂФ¹¤ëHTML¥¨¥é¡¼¤ò¥Á¥§¥Ã¥¯¤·¤Ê¤¤¤³¤È¤ò½ü¤­¡¢¤¹¤Ù¤Æ¤Î¥¢¥¯¥»¥¹¡¦¥ì¥Ù¥ë¤ËÂФ·¤Æ¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€package以上ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©(packageãŠã‚ˆã³publicã‚’å«ã‚€)ã‚’æŒã¤ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹HTMLエラーをãƒã‚§ãƒƒã‚¯ã—ãªã„ã“ã¨ã‚’除ãã€ã™ã¹ã¦ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒ»ãƒ¬ãƒ™ãƒ«ã«å¯¾ã—ã¦ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -521,103 +521,103 @@
 .PP
 \-Xdoclint:none
 .RS 4
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:all[\fI/access\fR]
 .RS 4
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint
 .RS 4
-¿ä¾©¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+推奨ã•ã‚Œã‚‹ã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€åˆ©ç”¨å¯èƒ½ãªã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:all
 .RS 4
-¿ä¾©¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+推奨ã•ã‚Œã‚‹ã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã—ã¾ã™ã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€åˆ©ç”¨å¯èƒ½ãªã™ã¹ã¦ã®è­¦å‘Šã‚’有効ã«ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:none
 .RS 4
-¤¹¤Ù¤Æ¤Î·Ù¹ð¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®è­¦å‘Šã‚’無効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xlint:\fIname\fR
 .RS 4
-·Ù¹ð̾¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤ë·Ù¹ð¤Î¥ê¥¹¥È¤Ï¡¢\-Xlint¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+警告åを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ç„¡åŠ¹ã«ã§ãる警告ã®ãƒªã‚¹ãƒˆã¯ã€\-Xlintオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xlint:\fI\-name\fR
 .RS 4
-·Ù¹ð̾¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤ë·Ù¹ð¤Î¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢\-Xlint¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½\-Xlint\fI¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+警告åを無効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ç„¡åŠ¹ã«ã§ãる警告ã®ãƒªã‚¹ãƒˆã‚’å–å¾—ã™ã‚‹ã«ã¯ã€\-Xlintオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–\-Xlint\fIオプションを使用ã—ãŸ\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xmaxerrs \fInumber\fR
 .RS 4
-°õºþ¤¹¤ë¥¨¥é¡¼¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£
+å°åˆ·ã™ã‚‹ã‚¨ãƒ©ãƒ¼ã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xmaxwarns \fInumber\fR
 .RS 4
-°õºþ¤¹¤ë·Ù¹ð¤ÎºÇÂç¿ô¤òÀßÄꤷ¤Þ¤¹¡£
+å°åˆ·ã™ã‚‹è­¦å‘Šã®æœ€å¤§æ•°ã‚’設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xstdout \fIfilename\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤Î¥á¥Ã¥»¡¼¥¸¤ò¡¢»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÁ÷¿®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¥á¥Ã¥»¡¼¥¸¤Ï\fISystem\&.err\fR¤ËÁ÷¤é¤ì¤Þ¤¹¡£
+コンパイラã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’ã€æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«é€ä¿¡ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯\fISystem\&.err\fRã«é€ã‚‰ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xprefer:[\fInewer,source\fR]
 .RS 4
-¤¢¤ë·¿¤ËÂФ·¤Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¤É¤Á¤é¤Î¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ë¤«¤ò»ØÄꤷ¤Þ¤¹¡£(·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£\fI\-Xprefer:newer\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¤¢¤ë·¿¤ËÂФ¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¿·¤·¤¤Êý¤¬Æɤ߼è¤é¤ì¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È)¡£\fI\-Xprefer:source\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Æɤ߼è¤é¤ì¤Þ¤¹¡£\fISOURCE\fR¤ÎÊݸ¥Ý¥ê¥·¡¼¤ò»ÈÍѤ·¤ÆÀë¸À¤µ¤ì¤¿Ãí¼á¤ËǤ°Õ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤¬¥¢¥¯¥»¥¹¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-Xprefer:source\fR¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+ã‚ã‚‹åž‹ã«å¯¾ã—ã¦ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ã©ã¡ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚‹ã‹ã‚’指定ã—ã¾ã™ã€‚(åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„)。\fI\-Xprefer:newer\fRオプションを使用ã—ãŸå ´åˆã€ã‚ã‚‹åž‹ã«å¯¾ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡æ–°ã—ã„æ–¹ãŒèª­ã¿å–られã¾ã™(デフォルト)。\fI\-Xprefer:source\fRオプションを使用ã—ãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒèª­ã¿å–られã¾ã™ã€‚\fISOURCE\fRã®ä¿å­˜ãƒãƒªã‚·ãƒ¼ã‚’使用ã—ã¦å®£è¨€ã•ã‚ŒãŸæ³¨é‡ˆã«ä»»æ„ã®æ³¨é‡ˆãƒ—ロセッサãŒã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ã™ã‚‹å ´åˆã¯ã€\fI\-Xprefer:source\fRを使用ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-Xpkginfo:[\fIalways\fR,\fIlegacy\fR,\fInonempty\fR]
 .RS 4
-javac¤¬package\-info\&.java¥Õ¥¡¥¤¥ë¤«¤é\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤«¤É¤¦¤«¤òÀ©¸æ¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѲÄǽ¤Êmode°ú¿ô¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+javacãŒpackage\-info\&.javaファイルã‹ã‚‰\fIpackage\-info\&.class\fRファイルを生æˆã™ã‚‹ã‹ã©ã†ã‹ã‚’制御ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ä½¿ç”¨å¯èƒ½ãªmode引数ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 always
 .RS 4
-¤¹¤Ù¤Æ¤Î\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Î\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤ò¾ï¤ËÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢³Æ\fI\&.java\fR¥Õ¥¡¥¤¥ë¤ËÂбþ¤¹¤ë\fI\&.class\fR¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤³¤È¤ò³Îǧ¤¹¤ëAnt¤Ê¤É¤Î¥Ó¥ë¥É¡¦¥·¥¹¥Æ¥à¤ò»ÈÍѤ¹¤ë¾ì¹ç¤ËÌòΩ¤Ä¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®\fIpackage\-info\&.java\fRファイルã®\fIpackage\-info\&.class\fRファイルを常ã«ç”Ÿæˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€å„\fI\&.java\fRファイルã«å¯¾å¿œã™ã‚‹\fI\&.class\fRファイルãŒã‚ã‚‹ã“ã¨ã‚’確èªã™ã‚‹Antãªã©ã®ãƒ“ルド・システムを使用ã™ã‚‹å ´åˆã«å½¹ç«‹ã¤ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 legacy
 .RS 4
-package\-info\&.java¤ËÃí¼á¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Î¤ß\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£package\-info\&.java¤Ë¥³¥á¥ó¥È¤Î¤ß´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤»¤ó¡£
+package\-info\&.javaã«æ³¨é‡ˆãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã®ã¿\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã™ã€‚package\-info\&.javaã«ã‚³ãƒ¡ãƒ³ãƒˆã®ã¿å«ã¾ã‚Œã‚‹å ´åˆã«\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã›ã‚“。
 .sp
-\fBÃí°Õ:\fR
-\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤ÏÀ¸À®¤Ç¤­¤Þ¤¹¤¬¡¢package\-info\&.java¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎÃí¼á¤Ë\fIRetentionPolicy\&.SOURCE\fR¤¬¤¢¤ë¾ì¹ç¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIpackage\-info\&.class\fRファイルã¯ç”Ÿæˆã§ãã¾ã™ãŒã€package\-info\&.javaファイル内ã®ã™ã¹ã¦ã®æ³¨é‡ˆã«\fIRetentionPolicy\&.SOURCE\fRãŒã‚ã‚‹å ´åˆã¯ç©ºã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 nonempty
 .RS 4
-package\-info\&.java¤Ë\fIRetentionPolicy\&.CLASS\fR¤Þ¤¿¤Ï\fIRetentionPolicy\&.RUNTIME\fR¤È¤È¤â¤ËÃí¼á¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Î¤ß\fIpackage\-info\&.class\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+package\-info\&.javaã«\fIRetentionPolicy\&.CLASS\fRã¾ãŸã¯\fIRetentionPolicy\&.RUNTIME\fRã¨ã¨ã‚‚ã«æ³¨é‡ˆãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã®ã¿\fIpackage\-info\&.class\fRファイルを生æˆã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-Xprint
 .RS 4
-¥Ç¥Ð¥Ã¥°ÌÜŪ¤Ç»ØÄꤷ¤¿·¿¤Î¥Æ¥­¥¹¥Èɽ¼¨¤ò½ÐÎϤ·¤Þ¤¹¡£Ãí¼á½èÍý¤â¥³¥ó¥Ñ¥¤¥ë¤â¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£½ÐÎÏ·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+デãƒãƒƒã‚°ç›®çš„ã§æŒ‡å®šã—ãŸåž‹ã®ãƒ†ã‚­ã‚¹ãƒˆè¡¨ç¤ºã‚’出力ã—ã¾ã™ã€‚注釈処ç†ã‚‚コンパイルも実行ã•ã‚Œã¾ã›ã‚“。出力形å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-XprintProcessorInfo
 .RS 4
-¤¢¤ëÆÃÄê¤Î¥×¥í¥»¥Ã¥µ¤¬½èÍý¤ò°ÍÍꤵ¤ì¤Æ¤¤¤ëÃí¼á¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã‚る特定ã®ãƒ—ロセッサãŒå‡¦ç†ã‚’ä¾é ¼ã•ã‚Œã¦ã„る注釈ã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-XprintRounds
 .RS 4
-½é²ó¤ª¤è¤Ó¸å³¤ÎÃí¼á½èÍý¥é¥¦¥ó¥É¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+åˆå›žãŠã‚ˆã³å¾Œç¶šã®æ³¨é‡ˆå‡¦ç†ãƒ©ã‚¦ãƒ³ãƒ‰ã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
-.SH "-XLINT¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿·Ù¹ð¤ÎÍ­¸ú²½¤Þ¤¿¤Ï̵¸ú²½"
+.SH "-XLINTオプションを使用ã—ãŸè­¦å‘Šã®æœ‰åŠ¹åŒ–ã¾ãŸã¯ç„¡åŠ¹åŒ–"
 .PP
-\fI\-Xlint:name\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ·Ù¹ð\fIname\fR¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIname\fR¤Ï¼¡¤Î·Ù¹ð̾¤Î¤¤¤º¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\-Xlint:\-name:\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢·Ù¹ð¤ò̵¸ú²½¤Ç¤­¤Þ¤¹¡£
+\fI\-Xlint:name\fRオプションを使用ã—ã¦è­¦å‘Š\fIname\fRを有効ã«ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIname\fRã¯æ¬¡ã®è­¦å‘Šåã®ã„ãšã‚Œã‹ã«ãªã‚Šã¾ã™ã€‚\fI\-Xlint:\-name:\fRオプションを使用ã—ã¦ã€è­¦å‘Šã‚’無効化ã§ãã¾ã™ã€‚
 .PP
 cast
 .RS 4
-ÉÔÍפǾéĹ¤Ê¥­¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+ä¸è¦ã§å†—é•·ãªã‚­ãƒ£ã‚¹ãƒˆã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -632,12 +632,12 @@
 .PP
 classfile
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤ˴ØÏ¢¤·¤¿ÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£
+クラス・ファイルã®å†…容ã«é–¢é€£ã—ãŸå•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚
 .RE
 .PP
 deprecation
 .RS 4
-Èó¿ä¾©¤Î¹àÌܤλÈÍѤˤĤ¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+éžæŽ¨å¥¨ã®é …ç›®ã®ä½¿ç”¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -649,13 +649,13 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É\fIjava\&.util\&.Date\&.getDay\fR¤ÏJDK 1\&.1°Ê¹ß¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
+メソッド\fIjava\&.util\&.Date\&.getDay\fRã¯JDK 1\&.1以é™ã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚
 .RE
 .PP
 dep\-ann
 .RS 4
 \fI@deprecated\fR
-Javadoc¥³¥á¥ó¥È¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Æ¤¤¤ë¤¬¡¢\fI@Deprecated\fRÃí¼á¤¬ÉÕ¤¤¤Æ¤¤¤Ê¤¤¹àÌܤˤĤ¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+Javadocコメントã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã¦ã„ã‚‹ãŒã€\fI@Deprecated\fR注釈ãŒä»˜ã„ã¦ã„ãªã„é …ç›®ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -674,7 +674,7 @@
 .PP
 divzero
 .RS 4
-ÄêÀ°¿ô0¤Ç½ü»»¤µ¤ì¤ë¤³¤È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+定整数0ã§é™¤ç®—ã•ã‚Œã‚‹ã“ã¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -689,7 +689,7 @@
 .PP
 empty
 .RS 4
-\fIif \fRʸ°Ê¹ß¤¬¶õ¤Îʸ¤Ç¤¢¤ë¤³¤È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIif \fR文以é™ãŒç©ºã®æ–‡ã§ã‚ã‚‹ã“ã¨ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -708,7 +708,7 @@
 .PP
 fallthrough
 .RS 4
-fall\-through¥±¡¼¥¹¤Îswitch¥Ö¥í¥Ã¥¯¤ò¥Á¥§¥Ã¥¯¤·¡¢¸¡½Ð¤µ¤ì¤¿¤â¤Î¤ËÂФ·¤Æ·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£Fall\-through¥±¡¼¥¹¤Ï¡¢switch¥Ö¥í¥Ã¥¯Æâ¤ÎºÇ¸å¤Î¥±¡¼¥¹¤ò½ü¤¯¥±¡¼¥¹¤Ç¤¹¡£¤³¤Î¥³¡¼¥É¤Ë¤Ïbreakʸ¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¥³¡¼¥É¤Î¼Â¹Ô¤ò¤½¤Î¥±¡¼¥¹¤«¤é¼¡¤Î¥±¡¼¥¹¤Ø°ÜÆ°¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤³¤Îswitch¥Ö¥í¥Ã¥¯Æâ¤Îcase 1¥é¥Ù¥ë¤Ë³¤¯¥³¡¼¥É¤Ï¡¢breakʸ¤Ç½ª¤ï¤Ã¤Æ¤¤¤Þ¤»¤ó¡£
+fall\-throughケースã®switchブロックをãƒã‚§ãƒƒã‚¯ã—ã€æ¤œå‡ºã•ã‚ŒãŸã‚‚ã®ã«å¯¾ã—ã¦è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚Fall\-throughケースã¯ã€switchブロック内ã®æœ€å¾Œã®ã‚±ãƒ¼ã‚¹ã‚’除ãケースã§ã™ã€‚ã“ã®ã‚³ãƒ¼ãƒ‰ã«ã¯breakæ–‡ã¯å«ã¾ã‚Œã¾ã›ã‚“。コードã®å®Ÿè¡Œã‚’ãã®ã‚±ãƒ¼ã‚¹ã‹ã‚‰æ¬¡ã®ã‚±ãƒ¼ã‚¹ã¸ç§»å‹•ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã“ã®switchブロック内ã®case 1ラベルã«ç¶šãコードã¯ã€breakæ–‡ã§çµ‚ã‚ã£ã¦ã„ã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -725,12 +725,12 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥³¡¼¥É¤Î¥³¥ó¥Ñ¥¤¥ë»þ¤Ë\fI\-Xlint:fallthrough\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢ÌäÂê¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥±¡¼¥¹¤Î¹ÔÈÖ¹æ¤È¤È¤â¤Ë¡¢case¤Ëfall\-through¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤³¤È¤ò¼¨¤¹·Ù¹ð¤òȯ¹Ô¤·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒ¼ãƒ‰ã®ã‚³ãƒ³ãƒ‘イル時ã«\fI\-Xlint:fallthrough\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€å•é¡Œã«ãªã£ã¦ã„るケースã®è¡Œç•ªå·ã¨ã¨ã‚‚ã«ã€caseã«fall\-throughã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã“ã¨ã‚’示ã™è­¦å‘Šã‚’発行ã—ã¾ã™ã€‚
 .RE
 .PP
 finally
 .RS 4
-Àµ¾ï¤Ë´°Î»¤Ç¤­¤Ê¤¤\fIfinally\fR¶ç¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+正常ã«å®Œäº†ã§ããªã„\fIfinally\fRå¥ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -750,17 +750,17 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ë´Ø¤¹¤ë·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£\fIint\fR¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤È¡¢ÃÍ0¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ï¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤¬½ªÎ»¤¹¤ë¤È¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢À©¸æ¤¬\fIcatch\fR¥Ö¥í¥Ã¥¯¤Ë°Ü¤µ¤ì¤¿¾ì¹ç¡¢\fIint\fR¥á¥½¥Ã¥É¤Ï½ªÎ»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fIfinally\fR¥Ö¥í¥Ã¥¯¤Ï¼Â¹Ô¤µ¤ì¤ëɬÍפ¬¤¢¤ë¤¿¤á¡¢À©¸æ¤¬¥á¥½¥Ã¥É¤Î³°Éô¤Ë°Ü¤µ¤ì¤Æ¤¤¤Æ¤â¡¢¤³¤Î¥Ö¥í¥Ã¥¯¤Ï¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIfinally\fRブロックã«é–¢ã™ã‚‹è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚\fIint\fRメソッドãŒå‘¼ã³å‡ºã•ã‚Œã‚‹ã¨ã€å€¤0ãŒè¿”ã•ã‚Œã¾ã™ã€‚\fIfinally\fRブロックã¯ã€\fItry\fRブロックãŒçµ‚了ã™ã‚‹ã¨å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€åˆ¶å¾¡ãŒ\fIcatch\fRブロックã«ç§»ã•ã‚ŒãŸå ´åˆã€\fIint\fRメソッドã¯çµ‚了ã—ã¾ã™ã€‚ãŸã ã—ã€\fIfinally\fRブロックã¯å®Ÿè¡Œã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚‹ãŸã‚ã€åˆ¶å¾¡ãŒãƒ¡ã‚½ãƒƒãƒ‰ã®å¤–部ã«ç§»ã•ã‚Œã¦ã„ã¦ã‚‚ã€ã“ã®ãƒ–ロックã¯å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 options
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプションã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 overrides
 .RS 4
-¥á¥½¥Ã¥É¤Î¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ë´Ø¤¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î2¤Ä¤Î¥¯¥é¥¹¤¬¤¢¤ë¤È¤·¤Þ¤¹¡£
+メソッドã®ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®2ã¤ã®ã‚¯ãƒ©ã‚¹ãŒã‚ã‚‹ã¨ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -778,7 +778,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¼¡¤Î¤è¤¦¤Ê·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯ã€æ¬¡ã®ã‚ˆã†ãªè­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -791,12 +791,12 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢\fIvarargs\fR¥á¥½¥Ã¥É¤ò¸¡½Ð¤¹¤ë¤È¡¢\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤òÇÛÎó¤ËÊÑ´¹¤·¤Þ¤¹¡£¥á¥½¥Ã¥É\fIClassWithVarargsMethod\&.varargsMethod\fR¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿\fIString\&.\&.\&. s\fR¤ò²¾¥Ñ¥é¥á¡¼¥¿\fIString[] s\fR¤ËÊÑ´¹¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥á¥½¥Ã¥É\fIClassWithOverridingMethod\&.varargsMethod\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤ËÂбþ¤¹¤ëÇÛÎó¤Ç¤¹¡£¤½¤Î·ë²Ì¡¢¤³¤ÎÎã¤Ç¤Ï¥³¥ó¥Ñ¥¤¥ë¤¬¹Ô¤ï¤ì¤Þ¤¹¡£
+コンパイラã¯ã€\fIvarargs\fRメソッドを検出ã™ã‚‹ã¨ã€\fIvarargs\fRã®ä»®ãƒ‘ラメータをé…列ã«å¤‰æ›ã—ã¾ã™ã€‚メソッド\fIClassWithVarargsMethod\&.varargsMethod\fRã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータ\fIString\&.\&.\&. s\fRを仮パラメータ\fIString[] s\fRã«å¤‰æ›ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIClassWithOverridingMethod\&.varargsMethod\fRã®ä»®ãƒ‘ラメータã«å¯¾å¿œã™ã‚‹é…列ã§ã™ã€‚ãã®çµæžœã€ã“ã®ä¾‹ã§ã¯ã‚³ãƒ³ãƒ‘イルãŒè¡Œã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 path
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¤Î̵¸ú¤Ê¥Ñ¥¹Í×ÁǤȸºß¤·¤Ê¤¤¥Ñ¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹(¥¯¥é¥¹¡¦¥Ñ¥¹¡¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Ê¤É¤Î¥Ñ¥¹´ØÏ¢)¡£¤³¤Î¤è¤¦¤Ê·Ù¹ð¤ò\fI@SuppressWarnings\fRÃí¼á¤ÇÍÞÀ©¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+コマンドラインã§ã®ç„¡åŠ¹ãªãƒ‘スè¦ç´ ã¨å­˜åœ¨ã—ãªã„パス・ディレクトリã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™(クラス・パスã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スãªã©ã®ãƒ‘ス関連)。ã“ã®ã‚ˆã†ãªè­¦å‘Šã‚’\fI@SuppressWarnings\fR注釈ã§æŠ‘制ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -811,9 +811,9 @@
 .PP
 processing
 .RS 4
-Ãí¼á½èÍý¤Ë´Ø¤¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤¬¤³¤Î·Ù¹ð¤òÀ¸À®¤¹¤ë¤Î¤Ï¡¢Ãí¼á¤ò´Þ¤à¥¯¥é¥¹¤¬¤¢¤ë¤È¤­¤Ë¡¢»ÈÍѤ·¤Æ¤¤¤ëÃí¼á¥×¥í¥»¥Ã¥µ¤Ç¤½¤Î¥¿¥¤¥×¤ÎÎã³°¤ò½èÍý¤Ç¤­¤Ê¤¤¾ì¹ç¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢Ã±½ã¤ÊÃí¼á¥×¥í¥»¥Ã¥µ¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+注釈処ç†ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚コンパイラãŒã“ã®è­¦å‘Šã‚’生æˆã™ã‚‹ã®ã¯ã€æ³¨é‡ˆã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãŒã‚ã‚‹ã¨ãã«ã€ä½¿ç”¨ã—ã¦ã„る注釈プロセッサã§ãã®ã‚¿ã‚¤ãƒ—ã®ä¾‹å¤–を処ç†ã§ããªã„å ´åˆã§ã™ã€‚ãŸã¨ãˆã°ã€å˜ç´”ãªæ³¨é‡ˆãƒ—ロセッサを次ã«ç¤ºã—ã¾ã™ã€‚
 .sp
-\fB¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëAnnocProc\&.java\fR:
+\fBソース・ファイルAnnocProc\&.java\fR:
 .sp
 .if n \{\
 .RS 4
@@ -838,7 +838,7 @@
 .if n \{\
 .RE
 .\}
-\fB¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëAnnosWithoutProcessors\&.java\fR:
+\fBソース・ファイルAnnosWithoutProcessors\&.java\fR:
 .sp
 .if n \{\
 .RS 4
@@ -852,7 +852,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Ãí¼á¥×¥í¥»¥Ã¥µ\fIAnnoProc\fR¤ò¥³¥ó¥Ñ¥¤¥ë¤·¡¢¤³¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAnnosWithoutProcessors\&.java\fR¤ËÂФ·¤Æ¼Â¹Ô¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ³¨é‡ˆãƒ—ロセッサ\fIAnnoProc\fRをコンパイルã—ã€ã“ã®æ³¨é‡ˆãƒ—ロセッサをソース・ファイル\fIAnnosWithoutProcessors\&.java\fRã«å¯¾ã—ã¦å®Ÿè¡Œã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -864,7 +864,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAnnosWithoutProcessors\&.java\fR¤ËÂФ·¤ÆÃí¼á¥×¥í¥»¥Ã¥µ¤ò¼Â¹Ô¤¹¤ë¤È¡¢¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+コンパイラãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fIAnnosWithoutProcessors\&.java\fRã«å¯¾ã—ã¦æ³¨é‡ˆãƒ—ロセッサを実行ã™ã‚‹ã¨ã€æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -876,12 +876,12 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¡¢¥¯¥é¥¹\fIAnnosWithoutProcessors\fR¤ÇÄêµÁ¤ª¤è¤Ó»ÈÍѤµ¤ì¤ëÃí¼á¤Î̾Á°¤ò¡¢\fIAnno\fR¤«¤é\fINotAnno\fR¤ËÊѹ¹¤Ç¤­¤Þ¤¹¡£
+ã“ã®å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«ã€ã‚¯ãƒ©ã‚¹\fIAnnosWithoutProcessors\fRã§å®šç¾©ãŠã‚ˆã³ä½¿ç”¨ã•ã‚Œã‚‹æ³¨é‡ˆã®åå‰ã‚’ã€\fIAnno\fRã‹ã‚‰\fINotAnno\fRã«å¤‰æ›´ã§ãã¾ã™ã€‚
 .RE
 .PP
 rawtypes
 .RS 4
-raw·¿¤ËÂФ¹¤ë̤¸¡ººÁàºî¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¼¡¤Îʸ¤Ç¤Ï¡¢\fIrawtypes\fR·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+rawåž‹ã«å¯¾ã™ã‚‹æœªæ¤œæŸ»æ“作ã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚次ã®æ–‡ã§ã¯ã€\fIrawtypes\fR警告ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -892,7 +892,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIrawtypes\fR·Ù¹ð¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£
+次ã®ä¾‹ã§ã¯ã€\fIrawtypes\fR警告ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -903,12 +903,12 @@
 .if n \{\
 .RE
 .\}
-\fIList\fR¤Ïraw·¿¤Ç¤¹¡£¤¿¤À¤·¡¢\fIList<?>\fR¤Ï¡¢¥¢¥ó¥Ð¥¦¥ó¥É·Á¼°¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤Î¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿¤Ç¤¹¡£\fIList\fR¤Ï¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¢¤ë¤¿¤á¡¢¾ï¤Ë¤½¤Î·¿°ú¿ô¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fIList\fR¤Î²¾°ú¿ô¤Ï¥¢¥ó¥Ð¥¦¥ó¥É·Á¼°¤Î¥ï¥¤¥ë¥É¥«¡¼¥É(\fI?\fR)¤ò»ÈÍѤ·¤Æ¤½¤Î²¾·¿¥Ñ¥é¥á¡¼¥¿¤È¤·¤Æ»ØÄꤵ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢\fIcountElements\fR¥á¥½¥Ã¥É¤Ï\fIList\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤É¤Î¥¤¥ó¥¹¥¿¥ó¥¹²½¤â¼õ¤±ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIList\fRã¯rawåž‹ã§ã™ã€‚ãŸã ã—ã€\fIList<?>\fRã¯ã€ã‚¢ãƒ³ãƒã‚¦ãƒ³ãƒ‰å½¢å¼ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹ã§ã™ã€‚\fIList\fRã¯ãƒ‘ラメータ化ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã‚ã‚‹ãŸã‚ã€å¸¸ã«ãã®åž‹å¼•æ•°ã‚’指定ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fIList\fRã®ä»®å¼•æ•°ã¯ã‚¢ãƒ³ãƒã‚¦ãƒ³ãƒ‰å½¢å¼ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(\fI?\fR)を使用ã—ã¦ãã®ä»®åž‹ãƒ‘ラメータã¨ã—ã¦æŒ‡å®šã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€\fIcountElements\fRメソッドã¯\fIList\fRインタフェースã®ã©ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹åŒ–ã‚‚å—ã‘付ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 Serial
 .RS 4
-ľÎó²½²Äǽ¥¯¥é¥¹¤Ë\fIserialVersionUID\fRÄêµÁ¤¬¤Ê¤¤¤³¤È¤ò·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+直列化å¯èƒ½ã‚¯ãƒ©ã‚¹ã«\fIserialVersionUID\fR定義ãŒãªã„ã“ã¨ã‚’警告ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -930,7 +930,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -942,12 +942,12 @@
 .if n \{\
 .RE
 .\}
-ľÎó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥£¡¼¥ë¥É¤òÌÀ¼¨Åª¤ËÀë¸À¤·¤Ê¤¤¾ì¹ç¡¢Ä¾Îó²½¥é¥ó¥¿¥¤¥à´Ä¶­¤Ç¤Ï¡¢¡ÖJava¥ª¥Ö¥¸¥§¥¯¥ÈľÎó²½»ÅÍ͡פÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¹¤ÎÍÍ¡¹¤Ê¦Ì̤˴ð¤Å¤¤¤Æ¡¢¥¯¥é¥¹¤Î\fIserialVersionUID\fR¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò·×»»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢¤¹¤Ù¤Æ¤ÎľÎó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fRÃͤòÌÀ¼¨Åª¤ËÀë¸À¤¹¤ë¤³¤È¤ò¶¯¤¯¤ªÁ¦¤á¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢\fIserialVersionUID\fRÃͤò·×»»¤¹¤ë¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥»¥¹¤¬¡¢¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë²ÄǽÀ­¤Î¤¢¤ë¥¯¥é¥¹¤Î¾ÜºÙ¤Ë¤­¤ï¤á¤Æ±Æ¶Á¤ò¼õ¤±¤ä¤¹¤¯¡¢¤½¤Î·ë²Ì¡¢Ä¾Îó²½Éü¸µÃæ¤Ëͽ´ü¤·¤Ê¤¤\fIInvalidClassExceptions\fR¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¤Ç¤¹¡£Java¥³¥ó¥Ñ¥¤¥é¤Î¼ÂÁõ¤¬°Û¤Ê¤Ã¤Æ¤â\fIserialVersionUID\fRÃͤΰì´ÓÀ­¤ò³ÎÊݤˤ¹¤ë¤Ë¤Ï¡¢Ä¾Îó²½²Äǽ¥¯¥é¥¹¤¬\fIserialVersionUID\fRÃͤòÌÀ¼¨Åª¤ËÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+直列化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fRã¨ã„ã†åå‰ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’明示的ã«å®£è¨€ã—ãªã„å ´åˆã€ç›´åˆ—化ランタイム環境ã§ã¯ã€ã€ŒJavaオブジェクト直列化仕様ã€ã§èª¬æ˜Žã•ã‚Œã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¹ã®æ§˜ã€…ãªå´é¢ã«åŸºã¥ã„ã¦ã€ã‚¯ãƒ©ã‚¹ã®\fIserialVersionUID\fRã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’計算ã—ã¾ã™ã€‚ãŸã ã—ã€ã™ã¹ã¦ã®ç›´åˆ—化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fR値を明示的ã«å®£è¨€ã™ã‚‹ã“ã¨ã‚’å¼·ããŠè–¦ã‚ã—ã¾ã™ã€‚ ã“ã‚Œã¯ã€\fIserialVersionUID\fR値を計算ã™ã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロセスãŒã€ã‚³ãƒ³ãƒ‘イラã®å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚‹å¯èƒ½æ€§ã®ã‚るクラスã®è©³ç´°ã«ãã‚ã‚ã¦å½±éŸ¿ã‚’å—ã‘ã‚„ã™ãã€ãã®çµæžœã€ç›´åˆ—化復元中ã«äºˆæœŸã—ãªã„\fIInvalidClassExceptions\fRãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã§ã™ã€‚Javaコンパイラã®å®Ÿè£…ãŒç•°ãªã£ã¦ã‚‚\fIserialVersionUID\fR値ã®ä¸€è²«æ€§ã‚’確ä¿ã«ã™ã‚‹ã«ã¯ã€ç›´åˆ—化å¯èƒ½ã‚¯ãƒ©ã‚¹ãŒ\fIserialVersionUID\fR値を明示的ã«å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 static
 .RS 4
-static¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+staticã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -961,7 +961,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -973,7 +973,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¡¢¼¡¤Î¤è¤¦¤Ë\fIstatic\fR¥á¥½¥Ã¥É\fIm1\fR¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ã‚ˆã†ã«\fIstatic\fRメソッド\fIm1\fRを呼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -984,12 +984,12 @@
 .if n \{\
 .RE
 .\}
-¤¢¤ë¤¤¤Ï¡¢\fIstatic\fR¥­¡¼¥ï¡¼¥É¤ò¥á¥½¥Ã¥É\fIm1\fR¤ÎÀë¸À¤«¤éºï½ü¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ã‚ã‚‹ã„ã¯ã€\fIstatic\fRキーワードをメソッド\fIm1\fRã®å®£è¨€ã‹ã‚‰å‰Šé™¤ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .RE
 .PP
 try
 .RS 4
-try\-with\-resourcesʸ¤ò´Þ¤à¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤Î»ÈÍѤ˴ؤ¹¤ëÌäÂê¤Ë¤Ä¤¤¤Æ·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fItry\fR¥Ö¥í¥Ã¥¯¤ÇÀë¸À¤µ¤ì¤¿¥ê¥½¡¼¥¹\fIac\fR¤¬»ÈÍѤµ¤ì¤Ê¤¤¤¿¤á¤Ë¡¢¼¡¤Îʸ¤ËÂФ·¤Æ·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+try\-with\-resources文をå«ã‚€ã€\fItry\fRブロックã®ä½¿ç”¨ã«é–¢ã™ã‚‹å•é¡Œã«ã¤ã„ã¦è­¦å‘Šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fItry\fRブロックã§å®£è¨€ã•ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹\fIac\fRãŒä½¿ç”¨ã•ã‚Œãªã„ãŸã‚ã«ã€æ¬¡ã®æ–‡ã«å¯¾ã—ã¦è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1004,7 +1004,7 @@
 .PP
 unchecked
 .RS 4
-Java¸À¸ì»ÅÍͤǻØÄꤵ¤ì¤Æ¤¤¤ë̤¸¡ººÊÑ´¹·Ù¹ð¤Î¾ÜºÙ¤ò¼¨¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+Java言語仕様ã§æŒ‡å®šã•ã‚Œã¦ã„る未検査変æ›è­¦å‘Šã®è©³ç´°ã‚’示ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1016,19 +1016,19 @@
 .if n \{\
 .RE
 .\}
-·¿¤Î¾ÃµîÃæ¤Ë¡¢·¿\fIArrayList<Number>\fR¤ª¤è¤Ó\fIList<String>\fR¤Ï¡¢¤½¤ì¤¾¤ì\fIArrayList\fR¤ª¤è¤Ó\fIList\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+åž‹ã®æ¶ˆåŽ»ä¸­ã«ã€åž‹\fIArrayList<Number>\fRãŠã‚ˆã³\fIList<String>\fRã¯ã€ãã‚Œãžã‚Œ\fIArrayList\fRãŠã‚ˆã³\fIList\fRã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fIls\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿\fIList<String>\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£\fIl\fR¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë\fIList\fR¤¬\fIls\fR¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï̤¸¡ºº·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤ª¤è¤ÓJVM¤Ï¡¢\fIl\fR¤¬\fIList<String>\fR·¿¤ò»²¾È¤¹¤ë¤«¤É¤¦¤«¤òȽÊ̤Ǥ­¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIl\fR¤Ï¡¢\fIList<String>\fR·¿¤ò»²¾È¤·¤Þ¤»¤ó¡£¤½¤Î·ë²Ì¡¢¥Ò¡¼¥×±øÀ÷¤¬È¯À¸¤·¤Þ¤¹¡£
+\fIls\fRコマンドã«ã¯ã€ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹\fIList<String>\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚\fIl\fRã«ã‚ˆã£ã¦å‚ç…§ã•ã‚Œã‚‹\fIList\fRãŒ\fIls\fRã«å‰²ã‚Šå½“ã¦ã‚‰ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯æœªæ¤œæŸ»è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚コンパイル時ã«ã€ã‚³ãƒ³ãƒ‘イラãŠã‚ˆã³JVMã¯ã€\fIl\fRãŒ\fIList<String>\fRåž‹ã‚’å‚ç…§ã™ã‚‹ã‹ã©ã†ã‹ã‚’判別ã§ãã¾ã›ã‚“。ã“ã®å ´åˆã€\fIl\fRã¯ã€\fIList<String>\fRåž‹ã‚’å‚ç…§ã—ã¾ã›ã‚“。ãã®çµæžœã€ãƒ’ープ汚染ãŒç™ºç”Ÿã—ã¾ã™ã€‚
 .sp
-¥Ò¡¼¥×±øÀ÷¾õÂÖ¤¬È¯À¸¤¹¤ë¤Î¤Ï¡¢\fIList\fR¥ª¥Ö¥¸¥§¥¯¥È\fIl\fR
-(¤½¤Îstatic·¿¤Ï\fIList<Number>\fR)¤¬Ê̤Î\fIList\fR¥ª¥Ö¥¸¥§¥¯¥È\fIls\fR
-(°Û¤Ê¤ëstatic·¿\fIList<String>\fR¤ò»ý¤Ä)¤ËÂåÆþ¤µ¤ì¤ë¾ì¹ç¤Ç¤¹¡£¤·¤«¤·¡¢¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¤³¤ÎÂåÆþ¤ò¤¤¤Þ¤À¤Ëµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£Áí¾Î¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤Java SE¤Î¥ê¥ê¡¼¥¹¤È¤Î²¼°Ì¸ß´¹À­¤ò³ÎÊݤ¹¤ë¤¿¤á¤Ë¡¢¤³¤ÎÂåÆþ¤òµö²Ä¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£·¿¾Ãµî¤Ë¤è¤ê¡¢\fIList<Number>\fR¤ª¤è¤Ó\fIList<String>\fR¤Ï¡¢Î¾Êý¤È¤â\fIList\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥ª¥Ö¥¸¥§¥¯¥È\fIl\fR
-(\fIList\fR¤È¤¤¤¦raw·¿¤ò»ý¤Ä)¤ò¥ª¥Ö¥¸¥§¥¯¥È\fIls\fR¤ËÂåÆþ¤¹¤ë¤³¤È¤òµö²Ä¤·¤Þ¤¹¡£
+ヒープ汚染状態ãŒç™ºç”Ÿã™ã‚‹ã®ã¯ã€\fIList\fRオブジェクト\fIl\fR
+(ãã®staticåž‹ã¯\fIList<Number>\fR)ãŒåˆ¥ã®\fIList\fRオブジェクト\fIls\fR
+(ç•°ãªã‚‹staticåž‹\fIList<String>\fRã‚’æŒã¤)ã«ä»£å…¥ã•ã‚Œã‚‹å ´åˆã§ã™ã€‚ã—ã‹ã—ã€ã‚³ãƒ³ãƒ‘イラã§ã¯ã“ã®ä»£å…¥ã‚’ã„ã¾ã ã«è¨±å¯ã—ã¦ã„ã¾ã™ã€‚ç·ç§°ã‚’サãƒãƒ¼ãƒˆã—ãªã„Java SEã®ãƒªãƒªãƒ¼ã‚¹ã¨ã®ä¸‹ä½äº’æ›æ€§ã‚’確ä¿ã™ã‚‹ãŸã‚ã«ã€ã“ã®ä»£å…¥ã‚’許å¯ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚型消去ã«ã‚ˆã‚Šã€\fIList<Number>\fRãŠã‚ˆã³\fIList<String>\fRã¯ã€ä¸¡æ–¹ã¨ã‚‚\fIList\fRã«ãªã‚Šã¾ã™ã€‚ãã®çµæžœã€ã‚³ãƒ³ãƒ‘イラã¯ã‚ªãƒ–ジェクト\fIl\fR
+(\fIList\fRã¨ã„ã†rawåž‹ã‚’æŒã¤)をオブジェクト\fIls\fRã«ä»£å…¥ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¾ã™ã€‚
 .RE
 .PP
 varargs
 .RS 4
-²ÄÊÑ°ú¿ô(\fIvarargs\fR)¥á¥½¥Ã¥É¡¢ÆäËÈó¶ñ¾Ý²½²Äǽ°ú¿ô¤ò´Þ¤à¤â¤Î¤Î»ÈÍѤ¬°ÂÁ´¤Ç¤Ê¤¤¤³¤È¤ò·Ù¹ð¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+å¯å¤‰å¼•æ•°(\fIvarargs\fR)メソッドã€ç‰¹ã«éžå…·è±¡åŒ–å¯èƒ½å¼•æ•°ã‚’å«ã‚€ã‚‚ã®ã®ä½¿ç”¨ãŒå®‰å…¨ã§ãªã„ã“ã¨ã‚’警告ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1045,10 +1045,10 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-Èó¶ñ¾Ý²½²Äǽ·¿¤Ï¡¢·¿¾ðÊ󤬼¹Իþ¤Ë´°Á´¤Ë»ÈÍÑÉÔ²Äǽ¤Ê·¿¤Ç¤¹¡£
+\fB注æ„:\fR
+éžå…·è±¡åŒ–å¯èƒ½åž‹ã¯ã€åž‹æƒ…å ±ãŒå®Ÿè¡Œæ™‚ã«å®Œå…¨ã«ä½¿ç”¨ä¸å¯èƒ½ãªåž‹ã§ã™ã€‚
 .sp
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥á¥½¥Ã¥É\fIArrayBuilder\&.addToList\fR¤ÎÄêµÁ¤Ë´Ø¤¹¤ë¼¡¤Î·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイラã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIArrayBuilder\&.addToList\fRã®å®šç¾©ã«é–¢ã™ã‚‹æ¬¡ã®è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1059,21 +1059,21 @@
 .if n \{\
 .RE
 .\}
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢varargs¥á¥½¥Ã¥É¤ò¸¡½Ð¤¹¤ë¤È¡¢\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤òÇÛÎó¤ËÊÑ´¹¤·¤Þ¤¹¡£¤·¤«¤·¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿²½¤µ¤ì¤¿·¿¤ÎÇÛÎó¤ÎºîÀ®¤òµö²Ä¤·¤Æ¤¤¤Þ¤»¤ó¡£¥á¥½¥Ã¥É\fIArrayBuilder\&.addToList\fR¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿\fIT\&.\&.\&.\fRÍ×ÁǤò²¾¥Ñ¥é¥á¡¼¥¿\fIT[]\fRÍ×ÁÇ(ÇÛÎó)¤ËÊÑ´¹¤·¤Þ¤¹¡£¤·¤«¤·¡¢·¿¾Ãµî¤Ë¤è¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï\fIvarargs\fR¤Î²¾¥Ñ¥é¥á¡¼¥¿¤ò\fIObject[]\fRÍ×ÁǤËÊÑ´¹¤·¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢¥Ò¡¼¥×±øÀ÷¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+コンパイラã¯ã€varargsメソッドを検出ã™ã‚‹ã¨ã€\fIvarargs\fRã®ä»®ãƒ‘ラメータをé…列ã«å¤‰æ›ã—ã¾ã™ã€‚ã—ã‹ã—ã€Javaプログラミング言語ã§ã¯ã€ãƒ‘ラメータ化ã•ã‚ŒãŸåž‹ã®é…列ã®ä½œæˆã‚’許å¯ã—ã¦ã„ã¾ã›ã‚“。メソッド\fIArrayBuilder\&.addToList\fRã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータ\fIT\&.\&.\&.\fRè¦ç´ ã‚’仮パラメータ\fIT[]\fRè¦ç´ (é…列)ã«å¤‰æ›ã—ã¾ã™ã€‚ã—ã‹ã—ã€åž‹æ¶ˆåŽ»ã«ã‚ˆã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯\fIvarargs\fRã®ä»®ãƒ‘ラメータを\fIObject[]\fRè¦ç´ ã«å¤‰æ›ã—ã¾ã™ã€‚ãã®çµæžœã€ãƒ’ープ汚染ãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë"
+.SH "コマンドライン引数ファイル"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤òû¤¯¤·¤¿¤ê´Ê·é¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ë¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ú¿ô(\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤ò´Þ¤à1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¾å¤Ç¤â¡¢Ç¤°Õ¤ÎŤµ¤Î\fIjavac\fR¥³¥Þ¥ó¥É¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavac\fRコマンドを短ãã—ãŸã‚Šç°¡æ½”ã«ã—ãŸã‚Šã™ã‚‹ãŸã‚ã«ã€\fIjavac\fRコマンドã«å¯¾ã™ã‚‹å¼•æ•°(\fI\-J\fRオプションを除ã)ã‚’å«ã‚€1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§ã‚‚ã€ä»»æ„ã®é•·ã•ã®\fIjavac\fRコマンドを作æˆã§ãã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavac\fR¤Î¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò¼«Í³¤ËÁȤ߹礻¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î°ú¿ô¤Ï¡¢¶õÇò¤Þ¤¿¤Ï²þ¹Ôʸ»ú¤Ç¶èÀڤ뤳¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤ËËä¤á¹þ¤Þ¤ì¤¿¶õÇò¤¬¤¢¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾Á´ÂΤòÆó½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£
+引数ファイルã«ã¯ã€\fIjavac\fRã®ã‚ªãƒ—ションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを自由ã«çµ„ã¿åˆã›ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ファイル内ã®å¼•æ•°ã¯ã€ç©ºç™½ã¾ãŸã¯æ”¹è¡Œæ–‡å­—ã§åŒºåˆ‡ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ファイルåã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç©ºç™½ãŒã‚ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«å全体を二é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ǤϤʤ¯¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ê¥¹¥È¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É(*)¤Ï»ÈÍѤǤ­¤Þ¤»¤ó(¤¿¤È¤¨¤Ð¡¢\fI*\&.java\fR¤È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó)¡£¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤¿¥Õ¥¡¥¤¥ë¤ÎºÆµ¢Åª¤Ê²ò¼á¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤â¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïµ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤Þ¤¹¤¬¡¢µ¯Æ°¥Ä¡¼¥ë¤Ç¤Ï°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¤«¤é¤Ç¤¹¡£
+引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã§ã¯ãªãã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ã“れらã®ãƒªã‚¹ãƒˆã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(*)ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“(ãŸã¨ãˆã°ã€\fI*\&.java\fRã¨ã¯æŒ‡å®šã§ãã¾ã›ã‚“)。アットマーク(@)を使用ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã®å†å¸°çš„ãªè§£é‡ˆã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã¾ãŸã€\fI\-J\fRオプションもサãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯èµ·å‹•ãƒ„ールã«æ¸¡ã•ã‚Œã¾ã™ãŒã€èµ·å‹•ãƒ„ールã§ã¯å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ãªã„ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢³Æ°ú¿ô¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È̾Á°¤ÎÀèƬ¤Ë¥¢¥Ã¥È¥Þ¡¼¥¯(@)ʸ»ú¤òÉÕ¤±¤ÆÅϤ·¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjavac\fRコマンドを実行ã™ã‚‹ã¨ãã«ã€å„引数ファイルã®ãƒ‘スã¨åå‰ã®å…ˆé ­ã«ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)文字を付ã‘ã¦æ¸¡ã—ã¾ã™ã€‚\fIjavac\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 1\fR, å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-\fIargfile\fR¤È¤¤¤¦Ì¾Á°¤Îñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¤¹¤Ù¤Æ¤Î\fIjavac\fR°ú¿ô¤ò³ÊǼ¤¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fIargfile\fRã¨ã„ã†åå‰ã®å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ã™ã¹ã¦ã®\fIjavac\fR引数を格ç´ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1084,14 +1084,14 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Îã2¤Ç¼¨¤µ¤ì¤Æ¤¤¤ëξÊý¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòÆþ¤ì¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ä¾‹2ã§ç¤ºã•ã‚Œã¦ã„る両方ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を入れるã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
-\fBExample 2\fR, 2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 2\fR, 2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-\fIjavac\fR¥ª¥×¥·¥ç¥óÍѤȥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾ÍѤˡ¢2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥ê¥¹¥È¤Ë¤Ï¡¢¹Ô¤Î·Ñ³ʸ»ú¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+\fIjavac\fRオプション用ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å用ã«ã€2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚次ã®ãƒªã‚¹ãƒˆã«ã¯ã€è¡Œã®ç¶™ç¶šæ–‡å­—ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-¼¡¤ò´Þ¤àoptions¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次をå«ã‚€optionsã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1113,7 +1113,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ò´Þ¤àclasses¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次をå«ã‚€classesã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1126,7 +1126,7 @@
 .if n \{\
 .RE
 .\}
-¤½¤ì¤«¤é¡¢¼¡¤Î¤è¤¦¤Ë\fIjavac\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ãã‚Œã‹ã‚‰ã€æ¬¡ã®ã‚ˆã†ã«\fIjavac\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1139,9 +1139,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥Ñ¥¹¤ò»ÈÍѤ·¤¿°ú¿ô¥Õ¥¡¥¤¥ë
+\fBExample 3\fR, パスを使用ã—ãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
 .RS 4
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢(\fIpath1\fR¤ä\fIpath2\fR¤Ç¤Ï¤Ê¤¯)¼¡¤Î¤è¤¦¤Ë¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€(\fIpath1\fRã‚„\fIpath2\fRã§ã¯ãªã)次ã®ã‚ˆã†ã«ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1153,46 +1153,46 @@
 .RE
 .\}
 .RE
-.SH "Ãí¼á½èÍý"
+.SH "注釈処ç†"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤¬Ãí¼á½èÍý¤òľÀÜ¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤¿¤á¡¢ÆÈΩ¤·¤¿Ãí¼á½èÍý¥³¥Þ¥ó¥É¤Ç¤¢¤ë\fIapt\fR¤ò»ÈÍѤ¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£
+\fIjavac\fRコマンドãŒæ³¨é‡ˆå‡¦ç†ã‚’直接サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ãŸã‚ã€ç‹¬ç«‹ã—ãŸæ³¨é‡ˆå‡¦ç†ã‚³ãƒžãƒ³ãƒ‰ã§ã‚ã‚‹\fIapt\fRを使用ã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã—ãŸã€‚
 .PP
-Ãí¼á¥×¥í¥»¥Ã¥µ¤ÎAPI¤Ï¡¢\fIjavax\&.annotation\&.processing\fR¤ª¤è¤Ó\fIjavax\&.lang\&.model\fR¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.SS "Ãí¼á½èÍý¤ò¹Ô¤¦ÊýË¡"
+注釈プロセッサã®APIã¯ã€\fIjavax\&.annotation\&.processing\fRãŠã‚ˆã³\fIjavax\&.lang\&.model\fRパッケージã¨ãã®ã‚µãƒ–パッケージ内ã«å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.SS "注釈処ç†ã‚’è¡Œã†æ–¹æ³•"
 .PP
-\fI\-proc:none\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÃí¼á½èÍý¤¬Ìµ¸ú²½¤µ¤ì¤Ê¤¤¸Â¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤ò¸¡º÷¤·¤Þ¤¹¡£¸¡º÷¥Ñ¥¹¤Ï¡¢\fI\-processorpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄê¤Ç¤­¤Þ¤¹¡£¥Ñ¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥×¥í¥»¥Ã¥µ¤Î¸¡º÷¤Ï¡¢¸¡º÷¥Ñ¥¹¾å¤Î\fIMETA\-INF/services/javax\&.annotation\&.processing\fR\&.Processor¤È¤¤¤¦Ì¾Á°¤Î¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¹½À®¥Õ¥¡¥¤¥ë¤Ë´ð¤Å¤¤¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢»ÈÍѤ¹¤ë¤¹¤Ù¤Æ¤ÎÃí¼á¥×¥í¥»¥Ã¥µ¤Î̾Á°¤ò¡¢1¹Ô¤Ë1¤Ä¤º¤Ä´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢Ê̤ÎÊýË¡¤È¤·¤Æ¡¢\fI\-processor\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥×¥í¥»¥Ã¥µ¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fI\-proc:none\fRオプションã«ã‚ˆã£ã¦æ³¨é‡ˆå‡¦ç†ãŒç„¡åŠ¹åŒ–ã•ã‚Œãªã„é™ã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®æ³¨é‡ˆãƒ—ロセッサを検索ã—ã¾ã™ã€‚検索パスã¯ã€\fI\-processorpath\fRオプションを使用ã—ã¦æŒ‡å®šã§ãã¾ã™ã€‚パスを指定ã—ãªã„å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚プロセッサã®æ¤œç´¢ã¯ã€æ¤œç´¢ãƒ‘ス上ã®\fIMETA\-INF/services/javax\&.annotation\&.processing\fR\&.Processorã¨ã„ã†åå‰ã®ã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã«åŸºã¥ã„ã¦è¡Œã‚ã‚Œã¾ã™ã€‚ã“ã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€ä½¿ç”¨ã™ã‚‹ã™ã¹ã¦ã®æ³¨é‡ˆãƒ—ロセッサã®åå‰ã‚’ã€1è¡Œã«1ã¤ãšã¤å«ã‚ã¦ãã ã•ã„。ã¾ãŸã€åˆ¥ã®æ–¹æ³•ã¨ã—ã¦ã€\fI\-processor\fRオプションを使用ã—ã¦ãƒ—ロセッサを明示的ã«æŒ‡å®šã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ä¥¯¥é¥¹¤òÁöºº¤¹¤ë¤³¤È¤Ç¡¢¤É¤Î¤è¤¦¤ÊÃí¼á¤¬Â¸ºß¤·¤Æ¤¤¤ë¤«¤ò³Îǧ¤·½ª¤ï¤ë¤È¡¢¥×¥í¥»¥Ã¥µ¤ËÂФ·¤ÆÌä¹ç¤»¤ò¹Ô¤¤¡¢¤½¤ì¤é¤Î¥×¥í¥»¥Ã¥µ¤¬¤É¤ÎÃí¼á¤ò½èÍý¤Ç¤­¤ë¤Î¤«¤ò³Îǧ¤·¤Þ¤¹¡£°ìÃפ¹¤ë¤â¤Î¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥×¥í¥»¥Ã¥µ¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£³Æ¥×¥í¥»¥Ã¥µ¤Ï¡¢¼«¿È¤¬½èÍý¤¹¤ëÃí¼á¤òÍ×µá¤Ç¤­¤Þ¤¹¡£¤½¤Î¾ì¹ç¡¢¤½¤ì¤é¤ÎÃí¼á¤ËÂФ¹¤ëÊÌ¤Î¥×¥í¥»¥Ã¥µ¤ò¸«¤Ä¤±¤ë»î¤ß¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£¤¹¤Ù¤Æ¤ÎÃí¼á¤¬Í׵ᤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤½¤ì°Ê¾å¥×¥í¥»¥Ã¥µ¤Î¸¡º÷¤ò¹Ô¤¤¤Þ¤»¤ó¡£
+コンパイラã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚„クラスを走査ã™ã‚‹ã“ã¨ã§ã€ã©ã®ã‚ˆã†ãªæ³¨é‡ˆãŒå­˜åœ¨ã—ã¦ã„ã‚‹ã‹ã‚’確èªã—終ã‚ã‚‹ã¨ã€ãƒ—ロセッサã«å¯¾ã—ã¦å•åˆã›ã‚’è¡Œã„ã€ãれらã®ãƒ—ロセッサãŒã©ã®æ³¨é‡ˆã‚’処ç†ã§ãã‚‹ã®ã‹ã‚’確èªã—ã¾ã™ã€‚一致ã™ã‚‹ã‚‚ã®ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ãƒ—ロセッサãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚å„プロセッサã¯ã€è‡ªèº«ãŒå‡¦ç†ã™ã‚‹æ³¨é‡ˆã‚’è¦æ±‚ã§ãã¾ã™ã€‚ãã®å ´åˆã€ãれらã®æ³¨é‡ˆã«å¯¾ã™ã‚‹åˆ¥ã®ãƒ—ロセッサを見ã¤ã‘る試ã¿ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。ã™ã¹ã¦ã®æ³¨é‡ˆãŒè¦æ±‚ã•ã‚Œã‚‹ã¨ã€ã‚³ãƒ³ãƒ‘イラã¯ãれ以上プロセッサã®æ¤œç´¢ã‚’è¡Œã„ã¾ã›ã‚“。
 .PP
-¤¤¤º¤ì¤«¤Î¥×¥í¥»¥Ã¥µ¤Ë¤è¤Ã¤Æ¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤ë¤È¡¢Ãí¼á½èÍý¤Î2²óÌܤΥ饦¥ó¥É¤¬³«»Ï¤µ¤ì¤Þ¤¹¡£¿·¤·¤¯À¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥¹¥­¥ã¥ó¤µ¤ì¡¢Á°²ó¤ÈƱÍͤËÃí¼á¤¬½èÍý¤µ¤ì¤Þ¤¹¡£°ÊÁ°¤Î¥é¥¦¥ó¥É¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¥×¥í¥»¥Ã¥µ¤Ï¤¹¤Ù¤Æ¡¢¸å³¤Î¤É¤Î¥é¥¦¥ó¥É¤Ç¤â¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬¡¢¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤¯¤Ê¤ë¤Þ¤Ç³¤­¤Þ¤¹¡£
+ã„ãšã‚Œã‹ã®ãƒ—ロセッサã«ã‚ˆã£ã¦æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œã‚‹ã¨ã€æ³¨é‡ˆå‡¦ç†ã®2回目ã®ãƒ©ã‚¦ãƒ³ãƒ‰ãŒé–‹å§‹ã•ã‚Œã¾ã™ã€‚æ–°ã—ã生æˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚¹ã‚­ãƒ£ãƒ³ã•ã‚Œã€å‰å›žã¨åŒæ§˜ã«æ³¨é‡ˆãŒå‡¦ç†ã•ã‚Œã¾ã™ã€‚以å‰ã®ãƒ©ã‚¦ãƒ³ãƒ‰ã§å‘¼ã³å‡ºã•ã‚ŒãŸãƒ—ロセッサã¯ã™ã¹ã¦ã€å¾Œç¶šã®ã©ã®ãƒ©ã‚¦ãƒ³ãƒ‰ã§ã‚‚呼ã³å‡ºã•ã‚Œã¾ã™ã€‚ã“ã‚ŒãŒã€æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œãªããªã‚‹ã¾ã§ç¶šãã¾ã™ã€‚
 .PP
-¤¢¤ë¥é¥¦¥ó¥É¤Ç¿·¤·¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢Ãí¼á¥×¥í¥»¥Ã¥µ¤¬¤¢¤È1²ó¤Î¤ß¸Æ¤Ó½Ð¤µ¤ì¡¢»Ä¤ê¤Î½èÍý¤ò¼Â¹Ô¤¹¤ëµ¡²ñ¤¬Í¿¤¨¤é¤ì¤Þ¤¹¡£ºÇ¸å¤Ë¡¢\fI\-proc:only\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤¤¤«¤®¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¸µ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈÀ¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SS "°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+ã‚るラウンドã§æ–°ã—ã„ソース・ファイルãŒç”Ÿæˆã•ã‚Œãªã‹ã£ãŸå ´åˆã€æ³¨é‡ˆãƒ—ロセッサãŒã‚ã¨1回ã®ã¿å‘¼ã³å‡ºã•ã‚Œã€æ®‹ã‚Šã®å‡¦ç†ã‚’実行ã™ã‚‹æ©Ÿä¼šãŒä¸Žãˆã‚‰ã‚Œã¾ã™ã€‚最後ã«ã€\fI\-proc:only\fRオプションãŒä½¿ç”¨ã•ã‚Œãªã„ã‹ãŽã‚Šã€ã‚³ãƒ³ãƒ‘イラã¯ã€å…ƒã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ç”Ÿæˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コンパイルã—ã¾ã™ã€‚
+.SS "暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢°ìÏ¢¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ëºÝ¤Ë¡¢Ê̤Υ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò°ÅÌÛŪ¤Ë¥í¡¼¥É¤¹¤ë¤³¤È¤¬É¬Íפʾì¹ç¤¬¤¢¤ê¤Þ¤¹¡£·¿¤Î¸¡º÷¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤½¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ï¡¢¸½»þÅÀ¤Ç¤ÏÃí¼á½èÍý¤ÎÂоݤˤʤê¤Þ¤»¤ó¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Ãí¼á½èÍý¤¬¼Â¹Ô¤µ¤ì¡¢¤«¤Ä°ÅÌÛŪ¤Ë¥í¡¼¥É¤µ¤ì¤¿Ç¤°Õ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï·Ù¹ð¤òȯ¹Ô¤·¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢·Ù¹ð¤òÍÞÀ©¤¹¤ëÊýË¡¤¬Ä󶡤µ¤ì¤Þ¤¹¡£
-.SH "·¿¤Î¸¡º÷"
+コンパイラã¯ã€ä¸€é€£ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コンパイルã™ã‚‹éš›ã«ã€åˆ¥ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’暗黙的ã«ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã“ã¨ãŒå¿…è¦ãªå ´åˆãŒã‚ã‚Šã¾ã™ã€‚åž‹ã®æ¤œç´¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ãã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ç¾æ™‚点ã§ã¯æ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã«ãªã‚Šã¾ã›ã‚“。デフォルトã§ã¯ã€æ³¨é‡ˆå‡¦ç†ãŒå®Ÿè¡Œã•ã‚Œã€ã‹ã¤æš—黙的ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸä»»æ„ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯è­¦å‘Šã‚’発行ã—ã¾ã™ã€‚\fI\-implicit\fRオプションã§ã¯ã€è­¦å‘Šã‚’抑制ã™ã‚‹æ–¹æ³•ãŒæä¾›ã•ã‚Œã¾ã™ã€‚
+.SH "åž‹ã®æ¤œç´¢"
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤ÏÄ̾·¿¤Ë´Ø¤¹¤ë¾ðÊó¤òɬÍפȤ·¤Þ¤¹¤¬¡¢¤½¤Î·¿¤ÎÄêµÁ¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ê¤Þ¤»¤ó¡£¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤¢¤ë¤¤¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¹¤Ù¤Æ¤Ë¤Ä¤¤¤Æ¡¢·¿¤Î¾ðÊó¤òɬÍפȤ·¤Þ¤¹¡£¤³¤ì¤Ë¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÇÌÀ¼¨Åª¤Ë¤Ï¸ÀµÚ¤µ¤ì¤Æ¤¤¤Ê¤¯¤Æ¤â¡¢·Ñ¾µ¤òÄ̤¸¤Æ¾ðÊó¤òÄ󶡤¹¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤â´Þ¤Þ¤ì¤Þ¤¹¡£
+ソース・ファイルをコンパイルã™ã‚‹ãŸã‚ã«ã€ã‚³ãƒ³ãƒ‘イラã¯é€šå¸¸ã€åž‹ã«é–¢ã™ã‚‹æƒ…報を必è¦ã¨ã—ã¾ã™ãŒã€ãã®åž‹ã®å®šç¾©ã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã—ãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚ã‚Šã¾ã›ã‚“。コンパイラã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ä½¿ç”¨ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€æ‹¡å¼µã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚ã‚‹ã„ã¯å®Ÿè£…ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã™ã¹ã¦ã«ã¤ã„ã¦ã€åž‹ã®æƒ…報を必è¦ã¨ã—ã¾ã™ã€‚ã“ã‚Œã«ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§æ˜Žç¤ºçš„ã«ã¯è¨€åŠã•ã‚Œã¦ã„ãªãã¦ã‚‚ã€ç¶™æ‰¿ã‚’通ã˜ã¦æƒ…報をæä¾›ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚‚å«ã¾ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥µ¥Ö¥¯¥é¥¹\fIjava\&.applet\&.Applet\fR¤òºîÀ®¤¹¤ë¤È¡¢\fI¥¢¥×¥ì¥Ã¥È\fR¤ÎÁÄÀè¤Î¥¯¥é¥¹(\fIjava\&.awt\&.Panel\fR¡¢\fIjava\&.awt\&.Container\fR¡¢\fIjava\&.awt\&.Component\fR¤ª¤è¤Ó\fIjava\&.lang\&.Object\fR)¤ò»ÈÍѤ·¤Æ¤¤¤ë¤³¤È¤Ë¤â¤Ê¤ê¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚µãƒ–クラス\fIjava\&.applet\&.Applet\fRを作æˆã™ã‚‹ã¨ã€\fIアプレット\fRã®ç¥–å…ˆã®ã‚¯ãƒ©ã‚¹(\fIjava\&.awt\&.Panel\fRã€\fIjava\&.awt\&.Container\fRã€\fIjava\&.awt\&.Component\fRãŠã‚ˆã³\fIjava\&.lang\&.Object\fR)を使用ã—ã¦ã„ã‚‹ã“ã¨ã«ã‚‚ãªã‚Šã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢·¿¤Î¾ðÊó¤¬É¬Íפˤʤë¤È¡¢¤½¤Î·¿¤òÄêµÁ¤·¤Æ¤¤¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤Þ¤º¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤È³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò¸¡º÷¤·¡¢Â³¤¤¤Æ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹(¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê)¤ò¸¡º÷¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï¡¢\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤òÀßÄꤷ¤ÆÄêµÁ¤¹¤ë¤«¡¢¤Þ¤¿¤Ï\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÄêµÁ¤·¤Þ¤¹¡£
+コンパイラã¯ã€åž‹ã®æƒ…å ±ãŒå¿…è¦ã«ãªã‚‹ã¨ã€ãã®åž‹ã‚’定義ã—ã¦ã„るソース・ファイルã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ã¾ãšã€ãƒ–ートストラップ・クラスã¨æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã€ç¶šã„ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス(デフォルトã§ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª)を検索ã—ã¾ã™ã€‚ユーザー・クラス・パスã¯ã€\fICLASSPATH\fR環境変数を設定ã—ã¦å®šç¾©ã™ã‚‹ã‹ã€ã¾ãŸã¯\fI\-classpath\fRオプションを使用ã—ã¦å®šç¾©ã—ã¾ã™ã€‚
 .PP
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤«¤é¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤ò¸¡º÷¤·¤Þ¤¹¡£
+\fI\-sourcepath\fRオプションãŒè¨­å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘スã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã‹ã‚‰ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ã‚’検索ã—ã¾ã™ã€‚
 .PP
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-extdirs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê̤Υ֡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ä³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¡¦¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-bootclasspath\fRオプションãŠã‚ˆã³\fI\-extdirs\fRオプションを使用ã—ã¦ã€åˆ¥ã®ãƒ–ートストラップ・クラスや拡張機能クラスを指定ã§ãã¾ã™ã€‚クロスコンパイル・オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-·¿¤Î¸¡º÷¤ËÀ®¸ù¤·¤¿¤È¤­¤ËÆÀ¤é¤ì¤ë·ë²Ì¤Ï¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤½¤ÎξÊý¤Ç¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£Î¾Êý¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¤É¤Á¤é¤ò»ÈÍѤ¹¤ë¤«¤ò\fI\-Xprefer\fR¥ª¥×¥·¥ç¥ó¤Ç¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤Ç¤­¤Þ¤¹¡£\fInewer\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¿·¤·¤¤Êý¤ò»ÈÍѤ·¤Þ¤¹¡£\fIsource\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fInewer\fR¤Ç¤¹¡£
+åž‹ã®æ¤œç´¢ã«æˆåŠŸã—ãŸã¨ãã«å¾—られるçµæžœã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã¾ãŸã¯ãã®ä¸¡æ–¹ã§ã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚両方ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ãã®ã©ã¡ã‚‰ã‚’使用ã™ã‚‹ã‹ã‚’\fI\-Xprefer\fRオプションã§ã‚³ãƒ³ãƒ‘イラã«æŒ‡ç¤ºã§ãã¾ã™ã€‚\fInewer\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡æ–°ã—ã„方を使用ã—ã¾ã™ã€‚\fIsource\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¾ã™ã€‚デフォルトã¯\fInewer\fRã§ã™ã€‚
 .PP
-·¿¤Î¸¡º÷¼«ÂΤˤè¤Ã¤Æ¡¢¤Þ¤¿¤Ï\fI\-Xprefer\fR¥ª¥×¥·¥ç¥ó¤¬ÀßÄꤵ¤ì¤¿·ë²Ì¤È¤·¤ÆɬÍפʷ¿¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¡¢É¬ÍפʾðÊó¤ò¼èÆÀ¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¤â¹Ô¤¤¤Þ¤¹¡£\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤½¤ÎÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fInone\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£\fIclass\fR¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+åž‹ã®æ¤œç´¢è‡ªä½“ã«ã‚ˆã£ã¦ã€ã¾ãŸã¯\fI\-Xprefer\fRオプションãŒè¨­å®šã•ã‚ŒãŸçµæžœã¨ã—ã¦å¿…è¦ãªåž‹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚Šã€å¿…è¦ãªæƒ…報をå–å¾—ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ³ãƒ‘イルも行ã„ã¾ã™ã€‚\fI\-implicit\fRオプションを使用ã—ã¦ãã®å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚\fInone\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。\fIclass\fRãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Ãí¼á½èÍý¤¬´°Î»¤¹¤ë¤Þ¤Ç¡¢¤¢¤ë·¿¾ðÊó¤ÎɬÍ×À­¤òǧ¼±¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£·¿¾ðÊ󤬥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¸«¤Ä¤«¤ê¡¢¤«¤Ä\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬Ãí¼á½èÍý¤ÎÂоݤȤʤ餺¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¤³¤È¤¬·Ù¹ð¤µ¤ì¤Þ¤¹¡£¤³¤Î·Ù¹ð¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢(¤½¤Î¥Õ¥¡¥¤¥ë¤¬Ãí¼á½èÍý¤ÎÂоݤȤʤë¤è¤¦¤Ë)¤½¤Î¥Õ¥¡¥¤¥ë¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤹ¤ë¤«¡¢¤¢¤ë¤¤¤Ï¤½¤Î¤è¤¦¤Ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¤«¤É¤¦¤«¤ò\fI\-implicit\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ»ØÄꤷ¤Þ¤¹¡£
-.SH "¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+コンパイラã¯ã€æ³¨é‡ˆå‡¦ç†ãŒå®Œäº†ã™ã‚‹ã¾ã§ã€ã‚る型情報ã®å¿…è¦æ€§ã‚’èªè­˜ã—ãªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚型情報ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«è¦‹ã¤ã‹ã‚Šã€ã‹ã¤\fI\-implicit\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã¨ãªã‚‰ãšã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œã‚‹ã“ã¨ãŒè­¦å‘Šã•ã‚Œã¾ã™ã€‚ã“ã®è­¦å‘Šã‚’無効ã«ã™ã‚‹ã«ã¯ã€(ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ³¨é‡ˆå‡¦ç†ã®å¯¾è±¡ã¨ãªã‚‹ã‚ˆã†ã«)ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’コマンドラインã«æŒ‡å®šã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ãã®ã‚ˆã†ãªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã‹ã©ã†ã‹ã‚’\fI\-implicit\fRオプションを使用ã—ã¦æŒ‡å®šã—ã¾ã™ã€‚
+.SH "プログラマティック・インタフェース"
 .PP
-\fIjavac\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavax\&.tools\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤ë¿·¤·¤¤Java Compiler API¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.SS "Îã"
+\fIjavac\fRコマンドã¯ã€\fIjavax\&.tools\fRパッケージ内ã®ã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã‚‹æ–°ã—ã„Java Compiler APIをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.SS "例"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»ØÄꤹ¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¹½Ê¸¤ò»ÈÍѤ·¤Þ¤¹¡£
+コマンドライン引数を指定ã™ã‚‹ã‚ˆã†ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã«ã¯ã€æ¬¡ã®æ§‹æ–‡ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1205,15 +1205,15 @@
 .RE
 .\}
 .PP
-Îã¤Ç¤Ï¡¢¿ÇÃǤòɸ½à½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë½ñ¤­¹þ¤ß¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¤Î¸Æ½Ð¤·»þ¤Ë\fIjavac\fR¤¬»ØÄꤹ¤ë½ªÎ»¥³¡¼¥É¤òÊÖ¤·¤Þ¤¹¡£
+例ã§ã¯ã€è¨ºæ–­ã‚’標準出力ストリームã«æ›¸ãè¾¼ã¿ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰ã®å‘¼å‡ºã—時ã«\fIjavac\fRãŒæŒ‡å®šã™ã‚‹çµ‚了コードを返ã—ã¾ã™ã€‚
 .PP
-\fIjavax\&.tools\&.JavaCompiler\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾¤Î¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¿ÇÃǤνèÍý¤ä¥Õ¥¡¥¤¥ë¤ÎÆɼè¤ê¸µ/½ñ¹þ¤ßÀè¤ÎÀ©¸æ¤Ê¤É¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.SS "µì¼°¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+\fIjavax\&.tools\&.JavaCompiler\fRインタフェースã®ä»–ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’使用ã™ã‚‹ã¨ã€è¨ºæ–­ã®å‡¦ç†ã‚„ファイルã®èª­å–ã‚Šå…ƒ/書込ã¿å…ˆã®åˆ¶å¾¡ãªã©ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚
+.SS "æ—§å¼ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹"
 .PP
-\fBÃí°Õ:\fR
-¤³¤ÎAPI¤Ï¡¢²¼°Ì¸ß´¹À­¤Î¤¿¤á¤Ë¤Î¤ßÊÝ»ý¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¿·¤·¤¤¥³¡¼¥É¤Ï¡¢¿·¤·¤¤Java Compiler API¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®APIã¯ã€ä¸‹ä½äº’æ›æ€§ã®ãŸã‚ã«ã®ã¿ä¿æŒã•ã‚Œã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®æ–°ã—ã„コードã¯ã€æ–°ã—ã„Java Compiler APIを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¼¡¤Î¤è¤¦¤Ë¡¢\fIcom\&.sun\&.tools\&.javac\&.Main\fR¥¯¥é¥¹¤Ë¤Ï¡¢¥×¥í¥°¥é¥à¤«¤é¥³¥ó¥Ñ¥¤¥é¤ò¸Æ¤Ó½Ð¤¹¤¿¤á¤Îstatic¥á¥½¥Ã¥É¤¬2¤ÄÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIcom\&.sun\&.tools\&.javac\&.Main\fRクラスã«ã¯ã€ãƒ—ログラムã‹ã‚‰ã‚³ãƒ³ãƒ‘イラを呼ã³å‡ºã™ãŸã‚ã®staticメソッドãŒ2ã¤ç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1226,21 +1226,21 @@
 .RE
 .\}
 .PP
-\fIargs\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢Ä̾拾¥ó¥Ñ¥¤¥é¤ËÅϤµ¤ì¤ëǤ°Õ¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIargs\fRパラメータã¯ã€é€šå¸¸ã‚³ãƒ³ãƒ‘イラã«æ¸¡ã•ã‚Œã‚‹ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã‚’表ã—ã¦ã„ã¾ã™ã€‚
 .PP
-\fIout\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Î¿ÇÃǽÐÎϤΰ¸Àè¤ò¼¨¤·¤Þ¤¹¡£
+\fIout\fRパラメータã¯ã€ã‚³ãƒ³ãƒ‘イラã®è¨ºæ–­å‡ºåŠ›ã®å®›å…ˆã‚’示ã—ã¾ã™ã€‚
 .PP
-\fIreturn\fRÃͤϡ¢\fIjavac\fR¤Î\fIexit\fRÃͤÈƱ¤¸¤Ç¤¹¡£
+\fIreturn\fR値ã¯ã€\fIjavac\fRã®\fIexit\fR値ã¨åŒã˜ã§ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-̾Á°¤¬\fIcom\&.sun\&.tools\&.javac\fR¤Ç»Ï¤Þ¤ë¥Ñ¥Ã¥±¡¼¥¸(\fIcom\&.sun\&.tools\&.javac\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸)¤Ç¸¡½Ð¤µ¤ì¤ë¾¤Î¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ª¤è¤Ó¥á¥½¥Ã¥É¤Ï¡¢´°Á´¤ËÆâÉôÍѤǤ¢¤ê¡¢¤¤¤Ä¤Ç¤âÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SH "Îã"
+\fB注æ„:\fR
+åå‰ãŒ\fIcom\&.sun\&.tools\&.javac\fRã§å§‹ã¾ã‚‹ãƒ‘ッケージ(\fIcom\&.sun\&.tools\&.javac\fRã®ã‚µãƒ–パッケージ)ã§æ¤œå‡ºã•ã‚Œã‚‹ä»–ã®ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€å®Œå…¨ã«å†…部用ã§ã‚ã‚Šã€ã„ã¤ã§ã‚‚変更ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "例"
 .PP
-\fBExample 1\fR, ´Êñ¤Ê¥×¥í¥°¥é¥à¤Î¥³¥ó¥Ñ¥¤¥ë
+\fBExample 1\fR, ç°¡å˜ãªãƒ—ログラムã®ã‚³ãƒ³ãƒ‘イル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢greetings¥Ç¥£¥ì¥¯¥È¥ê¤Ç\fIHello\&.java\fR¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ëÊýË¡¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£\fIHello\&.java\fR¤ÇÄêµÁ¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢\fIgreetings\&.Hello\fR¤È¸Æ¤Ð¤ì¤Þ¤¹¡£greetings¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎξÊý¤¬¤¢¤ë¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î¤¹¤°²¼¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ò»ÈÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤Þ¤¿¡¢\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆÊ̤νÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ëɬÍפ⤢¤ê¤Þ¤»¤ó¡£
+ã“ã®ä¾‹ã§ã¯ã€greetingsディレクトリã§\fIHello\&.java\fRソース・ファイルをコンパイルã™ã‚‹æ–¹æ³•ã‚’示ã—ã¦ã„ã¾ã™ã€‚\fIHello\&.java\fRã§å®šç¾©ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€\fIgreetings\&.Hello\fRã¨å‘¼ã°ã‚Œã¾ã™ã€‚greetingsディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸¡æ–¹ãŒã‚るパッケージ・ディレクトリã§ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ã™ã下ã«ã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スを使用ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ã¾ãŸã€\fI\-d\fRオプションを使用ã—ã¦åˆ¥ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã™ã‚‹å¿…è¦ã‚‚ã‚ã‚Šã¾ã›ã‚“。
 .sp
-\fIHello\&.java\fRÆâ¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+\fIHello\&.java\fR内ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1259,7 +1259,7 @@
 .if n \{\
 .RE
 .\}
-greetings\&.Hello¤Î¥³¥ó¥Ñ¥¤¥ë:
+greetings\&.Helloã®ã‚³ãƒ³ãƒ‘イル:
 .sp
 .if n \{\
 .RS 4
@@ -1270,7 +1270,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hello\fR¤Î¼Â¹Ô:
+\fIgreetings\&.Hello\fRã®å®Ÿè¡Œ:
 .sp
 .if n \{\
 .RS 4
@@ -1286,9 +1286,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, Ê£¿ô¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë
+\fBExample 2\fR, 複数ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ³ãƒ‘イル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë\fIAloha\&.java\fR¡¢\fIGutenTag\&.java\fR¡¢\fIHello\&.java\fR¤ª¤è¤Ó\fIHi\&.java\fR¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIgreetings\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fIAloha\&.java\fRã€\fIGutenTag\&.java\fRã€\fIHello\&.java\fRãŠã‚ˆã³\fIHi\&.java\fRをコンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1304,9 +1304,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Î»ØÄê
+\fBExample 3\fR, ユーザー・クラス・パスã®æŒ‡å®š
 .RS 4
-Á°½Ò¤ÎÎã¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¦¤Á1¤Ä¤òÊѹ¹¤·¤¿¸å¤Ë¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤òºÆ¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+å‰è¿°ã®ä¾‹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã†ã¡1ã¤ã‚’変更ã—ãŸå¾Œã«ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1319,7 +1319,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hi\fR¤Ï\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¾¤Î¥¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¤¿¤á¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¤³¤ì¤é¤Î¾¤Î¥¯¥é¥¹¤òõ¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ë¤¿¤á¡¢Á°½Ò¤ÎÎã¤ÏÆ°ºî¤·¤Þ¤¹¡£¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òµ¤¤Ë¤»¤º¤Ë¤³¤Î¥Õ¥¡¥¤¥ë¤òºÆ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¡¢\fICLASSPATH\fR¤òÀßÄꤷ¤Æ¡¢¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤ËÎã¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲä·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£
+\fIgreetings\&.Hi\fRã¯\fIgreetings\fRパッケージ内ã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚³ãƒ³ãƒ‘イラã¯ã“れらã®ä»–ã®ã‚¯ãƒ©ã‚¹ã‚’探ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚デフォルトã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã¯ãƒ‘ッケージ・ディレクトリをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã‚ã‚‹ãŸã‚ã€å‰è¿°ã®ä¾‹ã¯å‹•ä½œã—ã¾ã™ã€‚ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’æ°—ã«ã›ãšã«ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†ã‚³ãƒ³ãƒ‘イルã™ã‚‹å ´åˆã€\fICLASSPATH\fRを設定ã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã«ä¾‹ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’追加ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-classpath\fRオプションを使用ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1330,7 +1330,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\&.Hi\fR¤òÊѹ¹¤·¤Æ¥Ð¥Ê¡¼¡¦¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¤·¤¿¾ì¹ç¡¢ ¤½¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤â¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Ñ¥¹¤òÄ̤¸¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIgreetings\&.Hi\fRを変更ã—ã¦ãƒãƒŠãƒ¼ãƒ»ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚’使用ã™ã‚‹ã‚ˆã†ã«ã—ãŸå ´åˆã€ ãã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚‚ユーザー・クラス・パスを通ã˜ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1342,7 +1342,7 @@
 .if n \{\
 .RE
 .\}
-\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¤Ç¥¯¥é¥¹¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¥×¥í¥°¥é¥à¤Ï\fIgreetings\fR¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó\fIgreetings\fR¥¯¥é¥¹¤¬»ÈÍѤ¹¤ë¥¯¥é¥¹¤Ë¥¢¥¯¥»¥¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIgreetings\fRパッケージã§ã‚¯ãƒ©ã‚¹ã‚’実行ã™ã‚‹ã«ã¯ã€ãƒ—ログラムã¯\fIgreetings\fRパッケージã€ãŠã‚ˆã³\fIgreetings\fRクラスãŒä½¿ç”¨ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1355,9 +1355,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎʬΥ
+\fBExample 4\fR, ソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åˆ†é›¢
 .RS 4
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjavac\fR¤ò»ÈÍѤ·¤Æ¡¢JVM 1\&.6¾å¤Ç¼Â¹Ô¤¹¤ë¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€\fIjavac\fRを使用ã—ã¦ã€JVM 1\&.6上ã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1369,9 +1369,9 @@
 .if n \{\
 .RE
 .\}
-\fI\-source 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIOldCode\&.java\fR¤Î¥³¥ó¥Ñ¥¤¥ë¤Ë¤Ï¥ê¥ê¡¼¥¹1\&.6(¤Þ¤¿¤Ï6)¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-target 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢JVM 1\&.6¤È¸ß´¹À­¤Î¤¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤Û¤È¤ó¤É¤Î¾ì¹ç¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤÏ\fI\-source\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤʤê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤Ç¤­¤Þ¤¹¡£
+\fI\-source 1\&.6\fRオプションã«ã‚ˆã‚Šã€\fIOldCode\&.java\fRã®ã‚³ãƒ³ãƒ‘イルã«ã¯ãƒªãƒªãƒ¼ã‚¹1\&.6(ã¾ãŸã¯6)ã®Javaプログラミング言語ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-target 1\&.6\fRオプションã«ã‚ˆã‚Šã€JVM 1\&.6ã¨äº’æ›æ€§ã®ã‚るクラス・ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã»ã¨ã‚“ã©ã®å ´åˆã€\fI\-target\fRオプションã®å€¤ã¯\fI\-source\fRオプションã®å€¤ã«ãªã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-target\fRオプションをçœç•¥ã§ãã¾ã™ã€‚
 .sp
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Å¬ÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹(\fIrt\&.jar\fR¥é¥¤¥Ö¥é¥ê)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラス(\fIrt\&.jar\fRライブラリ)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1384,12 +1384,12 @@
 .if n \{\
 .RE
 .\}
-ŬÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¸Å¤¤¸À¸ì»ÅÍÍ(¤³¤ÎÎã¤Ç¤Ï¡¢¥Ð¡¼¥¸¥ç¥ó1\&.6¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì)¤ò¿·¤·¤¤¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ÈÁȤ߹礻¤Æ»ÈÍѤ·¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢Â¸ºß¤·¤Ê¤¤¥á¥½¥Ã¥É¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ë¤¿¤á¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸Å¤¤¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤³¤Î¾ì¹ç¤ÏJava SE 6)¤ÇÆ°ºî¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラスを指定ã—ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯å¤ã„言語仕様(ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³1\&.6ã®Javaプログラミング言語)ã‚’æ–°ã—ã„ブートストラップ・クラスã¨çµ„ã¿åˆã›ã¦ä½¿ç”¨ã—ã¾ã™ã€‚ãã®çµæžœã€å­˜åœ¨ã—ãªã„メソッドã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã“ã¨ãŒã‚ã‚‹ãŸã‚ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤ã„プラットフォーム(ã“ã®å ´åˆã¯Java SE 6)ã§å‹•ä½œã—ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fBExample 5\fR, ¥¯¥í¥¹¡¦¥³¥ó¥Ñ¥¤¥ë
+\fBExample 5\fR, クロス・コンパイル
 .RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIjavac\fR¤ò»ÈÍѤ·¤Æ¡¢JVM 1\&.6¾å¤Ç¼Â¹Ô¤¹¤ë¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIjavac\fRを使用ã—ã¦ã€JVM 1\&.6上ã§å®Ÿè¡Œã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1401,9 +1401,9 @@
 .if n \{\
 .RE
 .\}
-The\fI \-source 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢OldCode\&.java¤Î¥³¥ó¥Ñ¥¤¥ë¤Ë¤Ï¥ê¥ê¡¼¥¹1\&.6(¤Þ¤¿¤Ï6)¤ÎJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\-target 1\&.6\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢JVM 1\&.6¤È¸ß´¹À­¤Î¤¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤Û¤È¤ó¤É¤Î¾ì¹ç¡¢\fI\-target\fR¤ÎÃͤÏ\fI\-source\fR¤ÎÃͤˤʤê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fI\-target\fR¥ª¥×¥·¥ç¥ó¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£
+The\fI \-source 1\&.6\fRオプションã«ã‚ˆã‚Šã€OldCode\&.javaã®ã‚³ãƒ³ãƒ‘イルã«ã¯ãƒªãƒªãƒ¼ã‚¹1\&.6(ã¾ãŸã¯6)ã®Javaプログラミング言語ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\-target 1\&.6\fRオプションã«ã‚ˆã‚Šã€JVM 1\&.6ã¨äº’æ›æ€§ã®ã‚るクラス・ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã»ã¨ã‚“ã©ã®å ´åˆã€\fI\-target\fRã®å€¤ã¯\fI\-source\fRã®å€¤ã«ãªã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fI\-target\fRオプションã¯çœç•¥ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-bootclasspath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Å¬ÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹(\fIrt\&.jar\fR¥é¥¤¥Ö¥é¥ê)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ¼¡¤Î·Ù¹ð¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-bootclasspath\fRオプションを使用ã—ã¦ã€é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラス(\fIrt\&.jar\fRライブラリ)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦æ¬¡ã®è­¦å‘ŠãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1415,9 +1415,9 @@
 .if n \{\
 .RE
 .\}
-ŬÀڤʥС¼¥¸¥ç¥ó¤Î¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¸Å¤¤¸À¸ì»ÅÍͤò¿·¤·¤¤¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ÈÁȤ߹礻¤Æ»ÈÍѤ·¤Þ¤¹¡£¤³¤ÎÁȹ礻¤Ï¡¢Â¸ºß¤·¤Ê¤¤¥á¥½¥Ã¥É¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ë¤¿¤á¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¸Å¤¤¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤³¤Î¾ì¹ç¤ÏJava SE 6)¤ÇÆ°ºî¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤ÏJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥ê¥ê¡¼¥¹1\&.6¤ò»ÈÍѤ·¤Þ¤¹¡£
+é©åˆ‡ãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ–ートストラップ・クラスを指定ã—ãªã„å ´åˆã€ã‚³ãƒ³ãƒ‘イラã¯å¤ã„言語仕様を新ã—ã„ブートストラップ・クラスã¨çµ„ã¿åˆã›ã¦ä½¿ç”¨ã—ã¾ã™ã€‚ã“ã®çµ„åˆã›ã¯ã€å­˜åœ¨ã—ãªã„メソッドã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã“ã¨ãŒã‚ã‚‹ãŸã‚ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå¤ã„プラットフォーム(ã“ã®å ´åˆã¯Java SE 6)ã§å‹•ä½œã—ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ã‚³ãƒ³ãƒ‘イラã¯Javaプログラミング言語ã®ãƒªãƒªãƒ¼ã‚¹1\&.6を使用ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/javadoc.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/javadoc.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javadoc
 .\" Language: English
-.\" Date: 2011ǯ5·î10Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2011年5月10日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javadoc" "1" "2011ǯ5·î10Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javadoc" "1" "2011年5月10日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javadoc \- Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é¡¢API¥É¥­¥å¥á¥ó¥È¤ÎHTML¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javadoc \- Javaソース・ファイルã‹ã‚‰ã€APIドキュメントã®HTMLページを生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,33 +64,33 @@
 .PP
 \fIpackages\fR
 .RS 4
-\fIjava\&.lang java\&.lang\&.reflect java\&.awt\fR¤Ê¤É¡¢¶õÇò¤Ç¶èÀڤäƥɥ­¥å¥á¥ó¥È²½¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¡£¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤â¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤Þ¤¹¡£
-.sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ª¤è¤Ó¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤òõ¤·¤Þ¤¹¡£\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸¤òõ¤¹¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjava\&.lang java\&.lang\&.reflect java\&.awt\fRãªã©ã€ç©ºç™½ã§åŒºåˆ‡ã£ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ãƒ‘ッケージã®åå‰ã€‚サブパッケージもドキュメント化ã™ã‚‹å ´åˆã¯ã€\fI\-subpackages\fRオプションを使用ã—ã¦ãƒ‘ッケージを指定ã—ã¾ã™ã€‚
+.sp
+デフォルトã§ã¯ã€\fIjavadoc\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŠã‚ˆã³ã‚µãƒ–ディレクトリã§æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージを探ã—ã¾ã™ã€‚\fI\-sourcepath\fRオプションを使用ã—ã¦ã€ãƒ‘ッケージを探ã™ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIsource\-files\fR
 .RS 4
-\fIClass\&.java Object\&.java Button\&.java\fR¤Î¤è¤¦¤Ë¶õÇò¤Ç¶èÀڤä¿¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ëJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤òõ¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fI/home/src/java/awt/Graphics*\&.java\fR¤Î¤è¤¦¤Ë¡¢¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Õ¥ë¥Ñ¥¹¤ò»ØÄꤷ¡¢¥ï¥¤¥ë¥É¥«¡¼¥Éʸ»ú¤ò»ÈÍѤǤ­¤Þ¤¹¡£¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIClass\&.java Object\&.java Button\&.java\fRã®ã‚ˆã†ã«ç©ºç™½ã§åŒºåˆ‡ã£ãŸã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹Javaソース・ファイルã®åå‰ã€‚デフォルトã§ã¯ã€\fIjavadoc\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’探ã—ã¾ã™ã€‚ãŸã ã—ã€\fI/home/src/java/awt/Graphics*\&.java\fRã®ã‚ˆã†ã«ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ•ãƒ«ãƒ‘スを指定ã—ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰æ–‡å­—を使用ã§ãã¾ã™ã€‚ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スも指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fI@argfiles\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¡¦¥ª¥×¥·¥ç¥ó¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ª¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¥ê¥¹¥È¤òǤ°Õ¤Î½ç½ø¤Ç´Þ¤à¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
-.RE
-.SH "ÀâÌÀ"
+\fIjavadoc\fRコマンド・オプションã€ãƒ‘ッケージåãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®ãƒªã‚¹ãƒˆã‚’ä»»æ„ã®é †åºã§å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
+.RE
+.SH "説明"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢°ìÏ¢¤ÎJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤¢¤ëÀë¸À¤ª¤è¤Ó¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò²òÀϤ·¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢public¥¯¥é¥¹¡¢protected¥¯¥é¥¹¡¢¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹(ƿ̾¤ÎÆâÉô¥¯¥é¥¹¤Ï½ü¤¯)¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤¿°ìÏ¢¤ÎHTML¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢API¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤ä¡¢°ìÏ¢¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¼ÂÁõ¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ä¸€é€£ã®Javaソース・ファイルã«ã‚る宣言ãŠã‚ˆã³ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’解æžã—ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã€publicクラスã€protectedクラスã€ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹(匿åã®å†…部クラスã¯é™¤ã)ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ã¤ã„ã¦è¨˜è¿°ã—ãŸä¸€é€£ã®HTMLページを生æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€APIドキュメントã®ç”Ÿæˆã‚„ã€ä¸€é€£ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å®Ÿè£…ドキュメントã®ç”Ÿæˆã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Á´ÂΡ¢¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤½¤ÎξÊý¤ËÂФ·¤Æ¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤΥɥ­¥å¥á¥ó¥È²½¤ò¹Ô¤¦¤Ë¤Ï¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥Ç¥£¥ì¥¯¥È¥ê¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤òºÆµ¢Åª¤Ë¤¿¤É¤ë¤«¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ÎÌÀ¼¨Åª¤Ê¥ê¥¹¥È¤òÅϤ·¤Þ¤¹¡£¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¥ê¥¹¥È¤òÅϤ·¤Þ¤¹¡£´Êñ¤ÊÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý"
+\fIjavadoc\fRコマンドã¯ã€ãƒ‘ッケージ全体ã€å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã¾ãŸã¯ãã®ä¸¡æ–¹ã«å¯¾ã—ã¦å®Ÿè¡Œã§ãã¾ã™ã€‚パッケージ全体ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã‚’è¡Œã†ã«ã¯ã€\fI\-subpackages\fRオプションを使用ã—ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŠã‚ˆã³ãã®ã‚µãƒ–ディレクトリをå†å¸°çš„ã«ãŸã©ã‚‹ã‹ã€ãƒ‘ッケージåã®æ˜Žç¤ºçš„ãªãƒªã‚¹ãƒˆã‚’渡ã—ã¾ã™ã€‚個々ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ドキュメント化ã™ã‚‹ã«ã¯ã€Javaソース・ファイルåã®ãƒªã‚¹ãƒˆã‚’渡ã—ã¾ã™ã€‚ç°¡å˜ãªä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "ソース・ファイルã®å‡¦ç†"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¤Ç½ª¤ï¤ë¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤ò½èÍý¤·¤Þ¤¹¡£¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÅϤ·¤Æ\fIjavadoc\fR¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¤É¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½èÍý¤¹¤ë¤«¤òÀµ³Î¤Ë»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢Â¿¤¯¤Î³«È¯¼Ô¤Ï¤³¤ÎÊýË¡¤Ç¤Ïºî¶È¤·¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ¹¤Û¤¦¤¬´Êñ¤À¤«¤é¤Ç¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤¯¤Æ¤â¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï3¤Ä¤ÎÊýË¡¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¡¢\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤«¡¢¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ë¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò¹Ô¤¦¤Î¤Ï¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬¼¡¤Î¤¹¤Ù¤Æ¤ÎÍ×·ï¤òËþ¤¿¤¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ã§çµ‚ã‚るファイルã€ãŠã‚ˆã³ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§èª¬æ˜Žã—ã¦ã„ã‚‹ãã®ä»–ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’処ç†ã—ã¾ã™ã€‚個々ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを渡ã—ã¦\fIjavadoc\fRを実行ã™ã‚‹å ´åˆã€ã©ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’処ç†ã™ã‚‹ã‹ã‚’正確ã«æŒ‡å®šã§ãã¾ã™ã€‚ãŸã ã—ã€å¤šãã®é–‹ç™ºè€…ã¯ã“ã®æ–¹æ³•ã§ã¯ä½œæ¥­ã—ã¾ã›ã‚“。パッケージåを渡ã™ã»ã†ãŒç°¡å˜ã ã‹ã‚‰ã§ã™ã€‚ソース・ファイルåを明示的ã«æŒ‡å®šã—ãªãã¦ã‚‚ã€\fIjavadoc\fRコマンドã¯3ã¤ã®æ–¹æ³•ã§å®Ÿè¡Œã§ãã¾ã™ã€‚パッケージåを渡ã—ã€\fI\-subpackages\fRオプションを使用ã™ã‚‹ã‹ã€ã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã«ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“れらã®å ´åˆã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ã‚’è¡Œã†ã®ã¯ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ¬¡ã®ã™ã¹ã¦ã®è¦ä»¶ã‚’満ãŸã™å ´åˆã®ã¿ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -100,7 +100,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Õ¥¡¥¤¥ë̾¤ÎÀÜƬ¼­(\fI\&.java\fR¤òºï½ü)¤¬Í­¸ú¤Ê¥¯¥é¥¹Ì¾¤Ç¤¢¤ë¡£
+ファイルåã®æŽ¥é ­è¾ž(\fI\&.java\fRを削除)ãŒæœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã§ã‚る。
 .RE
 .sp
 .RS 4
@@ -111,7 +111,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥ë¡¼¥È¤«¤é¤ÎÁêÂÐŪ¤Ê¥Ñ¥¹Ì¾¤¬¡¢¶èÀÚ¤êʸ»ú¤ò¥É¥Ã¥È¤ËÊÑ´¹¤¹¤ë¤È¡¢Í­¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë¤Ê¤ë¡£
+ソース・ツリーã®ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®ç›¸å¯¾çš„ãªãƒ‘スåãŒã€åŒºåˆ‡ã‚Šæ–‡å­—をドットã«å¤‰æ›ã™ã‚‹ã¨ã€æœ‰åŠ¹ãªãƒ‘ッケージåã«ãªã‚‹ã€‚
 .RE
 .sp
 .RS 4
@@ -122,10 +122,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸Ê¸¤ËÍ­¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¡£
-.RE
-¥ê¥ó¥¯¤Î½èÍý.PP
-½èÍý¤Î¼Â¹ÔÃæ¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¼Â¹Ô¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î̾Á°¤ËÂФ·¤Æ¡¢Áê¸ß»²¾È¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤Ï¡¢¼¡¤Î¾ì½ê¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£@¥¿¥°¤ÎÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢javadoc¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+パッケージ文ã«æœ‰åŠ¹ãªãƒ‘ッケージåãŒå«ã¾ã‚Œã¦ã„る。
+.RE
+リンクã®å‡¦ç†.PP
+処ç†ã®å®Ÿè¡Œä¸­ã«ã€\fIjavadoc\fRコマンドã¯ã€ãã®å®Ÿè¡Œã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®åå‰ã«å¯¾ã—ã¦ã€ç›¸äº’å‚照リンクを追加ã—ã¾ã™ã€‚リンクã¯ã€æ¬¡ã®å ´æ‰€ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚@ã‚¿ã‚°ã®èª¬æ˜Žã«ã¤ã„ã¦ã¯ã€javadocã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Àë¸À(Ìá¤êÃͤη¿¡¢°ú¿ô¤Î·¿¡¢¥Õ¥£¡¼¥ë¥É¤Î·¿)¡£
+宣言(戻り値ã®åž‹ã€å¼•æ•°ã®åž‹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®åž‹)。
 .RE
 .sp
 .RS 4
@@ -146,7 +146,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI@see\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿¡Ö\fI´ØÏ¢¹àÌÜ\fR¡×¥»¥¯¥·¥ç¥ó¡£
+\fI@see\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸã€Œ\fI関連項目\fRã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã€‚
 .RE
 .sp
 .RS 4
@@ -157,7 +157,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI{@link}\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿¥¤¥ó¥é¥¤¥ó¡¦¥Æ¥­¥¹¥È¡£
+\fI{@link}\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã€‚
 .RE
 .sp
 .RS 4
@@ -168,7 +168,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI@throws\fR¥¿¥°¤«¤éÀ¸À®¤µ¤ì¤¿Îã³°¤Î̾Á°¡£
+\fI@throws\fRã‚¿ã‚°ã‹ã‚‰ç”Ÿæˆã•ã‚ŒãŸä¾‹å¤–ã®åå‰ã€‚
 .RE
 .sp
 .RS 4
@@ -179,7 +179,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¡Ö\fIÄêµÁ\fR¡×¥ê¥ó¥¯¤È¡¢¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¡Ö\fI¥ª¡¼¥Ð¡¼¥é¥¤¥É\fR¡×¥ê¥ó¥¯¡£¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+インタフェースã®ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã€Œ\fI定義\fRã€ãƒªãƒ³ã‚¯ã¨ã€ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã€Œ\fIオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰\fRã€ãƒªãƒ³ã‚¯ã€‚メソッド・コメントã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -190,7 +190,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤ò¥ê¥¹¥È¤·¤Æ¤¤¤ë¥µ¥Þ¥ê¡¼É½¡£
+パッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã‚’リストã—ã¦ã„るサマリー表。
 .RE
 .sp
 .RS 4
@@ -201,7 +201,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Î·Ñ¾µ¥Ä¥ê¡¼¡£
+パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã®ç¶™æ‰¿ãƒ„リー。
 .RE
 .sp
 .RS 4
@@ -212,42 +212,42 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-º÷°ú¡£
+索引。
 .RE
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¤Î´û¸¤Î¥Æ¥­¥¹¥È(Ê̤ËÀ¸À®¤·¤¿¥Æ¥­¥¹¥È)¤ËÂФ·¤Æ¥ê¥ó¥¯¤òÄɲ乤ë¤Ë¤Ï¡¢\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤òÍøÍѤǤ­¤Þ¤¹¡£
-½èÍý¤Î¾ÜºÙ.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼Â¹Ô¤¹¤ë¤¿¤Ó¤Ë1¤Ä¤Î´°Á´¤Ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£Á°¤Î¼Â¹Ô¤Î·ë²Ì¤òÊѹ¹¤Þ¤¿¤ÏľÀܼè¤ê¹þ¤à¡¢Áýʬ¥Ó¥ë¥É¤ò¹Ô¤¤¤Þ¤»¤ó¡£¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Â¾¤Î¼Â¹Ô¤Î·ë²Ì¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤¹¡£
+コマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸã‚¯ãƒ©ã‚¹ã«ã¤ã„ã¦ã®æ—¢å­˜ã®ãƒ†ã‚­ã‚¹ãƒˆ(別ã«ç”Ÿæˆã—ãŸãƒ†ã‚­ã‚¹ãƒˆ)ã«å¯¾ã—ã¦ãƒªãƒ³ã‚¯ã‚’追加ã™ã‚‹ã«ã¯ã€\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションを利用ã§ãã¾ã™ã€‚
+処ç†ã®è©³ç´°.PP
+\fIjavadoc\fRコマンドã¯å®Ÿè¡Œã™ã‚‹ãŸã³ã«1ã¤ã®å®Œå…¨ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚å‰ã®å®Ÿè¡Œã®çµæžœã‚’変更ã¾ãŸã¯ç›´æŽ¥å–り込むã€å¢—分ビルドを行ã„ã¾ã›ã‚“。ãŸã ã—ã€\fIjavadoc\fRコマンドã¯ã€ä»–ã®å®Ÿè¡Œã®çµæžœã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼ÂÁõ¤Ë¤ÏJava¥³¥ó¥Ñ¥¤¥é¤¬É¬Íפǡ¢Java¥³¥ó¥Ñ¥¤¥é¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï\fIjavac\fR¥³¥Þ¥ó¥É¤Î°ìÉô¤ò¸Æ¤Ó½Ð¤·¡¢Àë¸À¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¡¢¥á¥ó¥Ð¡¼¤Î¼ÂÁõ¤ò̵»ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¹³¬Áؤò´Þ¤à¥¯¥é¥¹¤ÎË­ÉÙ¤ÊÆâÉôɽ¸½¤È¥¯¥é¥¹¤Î¡Ö»ÈÍѡ״ط¸¤ò¹½ÃÛ¤·¡¢HTML¤òÀ¸À®¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢J\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤«¤é¡¢¥æ¡¼¥¶¡¼¤ÎÄ󶡤·¤¿¥É¥­¥å¥á¥ó¥È¤â¼èÆÀ¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã®å®Ÿè£…ã«ã¯JavaコンパイラãŒå¿…è¦ã§ã€Javaコンパイラã«ä¾å­˜ã—ã¦ã„ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯\fIjavac\fRコマンドã®ä¸€éƒ¨ã‚’呼ã³å‡ºã—ã€å®£è¨€ã‚’コンパイルã—ã¦ã€ãƒ¡ãƒ³ãƒãƒ¼ã®å®Ÿè£…を無視ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¹éšŽå±¤ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ã®è±Šå¯Œãªå†…部表ç¾ã¨ã‚¯ãƒ©ã‚¹ã®ã€Œä½¿ç”¨ã€é–¢ä¿‚を構築ã—ã€HTMLを生æˆã—ã¾ã™ã€‚ã•ã‚‰ã«ã€J\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æä¾›ã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚‚å–å¾—ã—ã¾ã™ã€‚ドキュメンテーション・コメントをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥á¥½¥Ã¥ÉËÜÂΤò»ý¤¿¤Ê¤¤½ã¿è¤Ê¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢API¤Î¼ÂÁõÁ°¤ÎÀ߷פÎÁᤤÃʳ¬¤Ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤·¤Æ\fIjavadoc\fR¥³¥á¥ó¥È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰æœ¬ä½“ã‚’æŒãŸãªã„純粋ãªã‚¹ã‚¿ãƒ–・ファイルã§ã‚るソース・ファイルã«å¯¾ã—ã¦å®Ÿè¡Œã§ãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€APIã®å®Ÿè£…å‰ã®è¨­è¨ˆã®æ—©ã„段階ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¦\fIjavadoc\fRコメントを実行ã§ãã¾ã™ã€‚
 .PP
-¥³¥ó¥Ñ¥¤¥é¤Ë°Í¸¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢HTML½ÐÎϤϡ¢¼ÂºÝ¤Î¼ÂÁõ¤ËÀµ³Î¤ËÂбþ¤·¤Þ¤¹¡£¼ÂºÝ¤Î¼ÂÁõ¤Ï¡¢ÌÀ¼¨Åª¤Ê¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤Ç¤Ï¤Ê¤¯¡¢°ÅÌۤΥ½¡¼¥¹¡¦¥³¡¼¥É¤Ë°Í¸¤¹¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥ó¥Ñ¥¤¥ëºÑ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï¸ºß¤¹¤ë¤¬¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤Ï¸ºß¤·¤Ê¤¤¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥¹¥È¥é¥¯¥¿¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£
+コンパイラã«ä¾å­˜ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€HTML出力ã¯ã€å®Ÿéš›ã®å®Ÿè£…ã«æ­£ç¢ºã«å¯¾å¿œã—ã¾ã™ã€‚実際ã®å®Ÿè£…ã¯ã€æ˜Žç¤ºçš„ãªã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã§ã¯ãªãã€æš—é»™ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ä¾å­˜ã™ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc\fRコマンドã¯ã€ã‚³ãƒ³ãƒ‘イル済クラス・ファイルã«ã¯å­˜åœ¨ã™ã‚‹ãŒã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã¯å­˜åœ¨ã—ãªã„デフォルト・コンストラクタをドキュメント化ã—ã¾ã™ã€‚
 .PP
-¿¤¯¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¡¼¥É¤¬ÉÔ´°Á´¤Þ¤¿¤Ï¥¨¥é¡¼¤ò´Þ¤ó¤Ç¤¤¤ë¾ì¹ç¤Ç¤â¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¤ä¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ò´°Î»¤¹¤ëÁ°¤Ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î´ðËÜŪ¤Ê¥Á¥§¥Ã¥¯¤ò¹Ô¤¤¤Þ¤¹¡£
+多ãã®å ´åˆã€\fIjavadoc\fRコマンドã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ¼ãƒ‰ãŒä¸å®Œå…¨ã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã‚’å«ã‚“ã§ã„ã‚‹å ´åˆã§ã‚‚ドキュメントを生æˆã§ãã¾ã™ã€‚ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°ã‚„トラブルシューティングを完了ã™ã‚‹å‰ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®åŸºæœ¬çš„ãªãƒã‚§ãƒƒã‚¯ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥É¥­¥å¥á¥ó¥È¤ÎÆâÉô¹½Â¤¤ò¹½ÃÛ¤¹¤ëºÝ¡¢»²¾È¥¯¥é¥¹¤ò¤¹¤Ù¤Æ¥í¡¼¥É¤·¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¢³ÈÄ¥µ¡Ç½¡¢¤Þ¤¿¤Ï¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤Ë¤«¤«¤ï¤é¤º¡¢¤¹¤Ù¤Æ¤Î»²¾È¥¯¥é¥¹¤ò¸¡º÷¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIjavadoc\fRコマンドã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å†…部構造を構築ã™ã‚‹éš›ã€å‚照クラスをã™ã¹ã¦ãƒ­ãƒ¼ãƒ‰ã—ã¾ã™ã€‚ã“ã®ãŸã‚ã€
+\fIjavadoc\fRコマンドã¯ã€ãƒ–ートストラップ・クラスã€æ‹¡å¼µæ©Ÿèƒ½ã€ã¾ãŸã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã«ã‹ã‹ã‚らãšã€ã™ã¹ã¦ã®å‚照クラスを検索ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クラスã®æ¤œå‡ºæ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-Ä̾ºîÀ®¤¹¤ë¥¯¥é¥¹¤Ï¡¢³ÈÄ¥¥¯¥é¥¹¤È¤·¤Æ¡¢¤Þ¤¿¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¥í¡¼¥É¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SS "Javadoc¤Î¥É¥Ã¥¯¥ì¥Ã¥È"
+通常ã€ä½œæˆã™ã‚‹ã‚¯ãƒ©ã‚¹ã¯ã€æ‹¡å¼µã‚¯ãƒ©ã‚¹ã¨ã—ã¦ã€ã¾ãŸã¯\fIjavadoc\fRコマンドã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã§ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "Javadocã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆ"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤÎÆâÍƤȷÁ¼°¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤È¸Æ¤Ð¤ì¤ë¥Ç¥Õ¥©¥ë¥È¤ÎÁȹþ¤ß¥É¥Ã¥¯¥ì¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢HTML·Á¼°¤ÎAPI¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò½¤Àµ¤Þ¤¿¤Ï¥µ¥Ö¥¯¥é¥¹¤òºîÀ®¤¹¤ë¤³¤È¤ä¡¢HTML¡¢XML¡¢MIF¡¢RTF¤Ê¤É¤Î¹¥¤ß¤Î½ÐÎÏ·Á¼°¤òÀ¸À®¤¹¤ëÆȼ«¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤òµ­½Ò¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã®å‡ºåŠ›ã®å†…容ã¨å½¢å¼ã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’使用ã—ã¦ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€æ¨™æº–ドックレットã¨å‘¼ã°ã‚Œã‚‹ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®çµ„è¾¼ã¿ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚標準ドックレットã¯ã€HTMLå½¢å¼ã®APIドキュメントを生æˆã—ã¾ã™ã€‚標準ドックレットを修正ã¾ãŸã¯ã‚µãƒ–クラスを作æˆã™ã‚‹ã“ã¨ã‚„ã€HTMLã€XMLã€MIFã€RTFãªã©ã®å¥½ã¿ã®å‡ºåŠ›å½¢å¼ã‚’生æˆã™ã‚‹ç‹¬è‡ªã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’記述ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚
 .PP
-\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢»ÈÍѤµ¤ì¤Æ¤¤¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤Ë´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤ë¤¤¤¯¤Ä¤«¤Î¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤ì¤é¤Î¾¤Ë¡¢¤¤¤¯¤Ä¤«¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+\fI\-doclet\fRオプションã§ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€ä½¿ç”¨ã•ã‚Œã¦ã„るドックレットã«é–¢ä¿‚ãªã使用ã§ãã‚‹ã„ãã¤ã‹ã®ã‚ªãƒ—ションãŒã‚ã‚Šã¾ã™ã€‚標準ドックレットã§ã¯ã€ã“れらã®ä»–ã«ã€ã„ãã¤ã‹ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
+.SH "ソース・ファイル"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥¿¥¤¥×¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£¤½¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¥¯¥é¥¹¤ÎJava¸À¸ì¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(\fI\&.java\fR)¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¤½¤Î¾¤Î̤½èÍý¤Î¥Õ¥¡¥¤¥ë¤Ç¤¹¡£¤³¤³¤Ç¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤·¤Ê¤¤¤¬¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Ë¸ºß¤¹¤ë¾ì¹ç¤¬¤¢¤ë¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ä¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤âÀâÌÀ¤·¤Þ¤¹¡£
-.SS "¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë"
+\fIjavadoc\fRコマンドã¯ã€æ¬¡ã®ã‚¿ã‚¤ãƒ—ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã‚¯ãƒ©ã‚¹ã®Java言語ソース・ファイル(\fI\&.java\fR)ã€ãƒ‘ッケージ・コメント・ファイルã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãŠã‚ˆã³ãã®ä»–ã®æœªå‡¦ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚ã“ã“ã§ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã—ãªã„ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã«å­˜åœ¨ã™ã‚‹å ´åˆãŒã‚るテスト・ファイルやテンプレート・ファイルã«ã¤ã„ã¦ã‚‚説明ã—ã¾ã™ã€‚
+.SS "クラスã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤ª¤è¤Ó¤½¤Î¥á¥ó¥Ð¡¼¤Ï¡¢Æȼ«¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤ËÊÝ»ý¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë"
+ãã‚Œãžã‚Œã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãŠã‚ˆã³ãã®ãƒ¡ãƒ³ãƒãƒ¼ã¯ã€ç‹¬è‡ªã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãれをソース・ファイル内ã«ä¿æŒã—ã¾ã™ã€‚ドキュメンテーション・コメントをå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "パッケージ・コメント・ファイル"
 .PP
-¤½¤ì¤¾¤ì¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢Æȼ«¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤òÀìÍѤΥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÝ»ý¤·¤Þ¤¹¡£¤½¤ÎÆâÍƤϡ¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ËÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£¤³¤Î¥³¥á¥ó¥È¤Ë¤Ï¡¢Ä̾¤½¤Î¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤËÅö¤Æ¤Ï¤Þ¤ë¥É¥­¥å¥á¥ó¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+ãã‚Œãžã‚Œã®ãƒ‘ッケージã¯ã€ç‹¬è‡ªã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãれを専用ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿æŒã—ã¾ã™ã€‚ãã®å†…容ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ãƒ‘ッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã«çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€é€šå¸¸ã€ãã®ãƒ‘ッケージ全体ã«å½“ã¦ã¯ã¾ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¾ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤¤¤º¤ì¤«¤Î¥Õ¥¡¥¤¥ë¤Ë¥³¥á¥ó¥È¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£
+パッケージ・コメント・ファイルを作æˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã„ãšã‚Œã‹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’æ ¼ç´ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -257,7 +257,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¡¢¥Ñ¥Ã¥±¡¼¥¸Ãí¼á¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¢¤ª¤è¤ÓJavadoc¥¿¥°¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤¬Í¥À褵¤ì¤Þ¤¹¡£
+\fIpackage\-info\&.java\fRファイルã«ã¯ã€ãƒ‘ッケージ宣言ã€ãƒ‘ッケージ注釈ã€ãƒ‘ッケージ・コメントã€ãŠã‚ˆã³Javadocã‚¿ã‚°ã‚’æ ¼ç´ã§ãã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -268,15 +268,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÈJavadoc¥¿¥°¤Î¤ß¤ò³ÊǼ¤Ç¤­¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ãí¼á¤Ï³ÊǼ¤Ç¤­¤Þ¤»¤ó¡£
+\fIpackage\&.html\fRファイルã«ã¯ã€ãƒ‘ッケージ・コメントã¨Javadocã‚¿ã‚°ã®ã¿ã‚’æ ¼ç´ã§ãã¾ã™ã€‚パッケージ注釈ã¯æ ¼ç´ã§ãã¾ã›ã‚“。
 .RE
 .PP
-³Æ¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Î¤¤¤º¤ì¤«¤ò1¤Ä»ý¤Ä¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤ÎξÊý¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¤É¤Á¤é¤«¤Î¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¤È¤â¤Ë¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Î¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤ËÇÛÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡£
-package\-info\&.java¥Õ¥¡¥¤¥ë.PP
-\fIpackage\-info\&.java\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î¹½Â¤¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥á¥ó¥È¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¤ÎÁ°¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+å„パッケージã¯ã€\fIpackage\&.html\fRファイルã¾ãŸã¯\fIpackage\-info\&.java\fRファイルã®ã„ãšã‚Œã‹ã‚’1ã¤æŒã¤ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®ä¸¡æ–¹ã‚’æŒã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã©ã¡ã‚‰ã‹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ソース・ファイルã¨ã¨ã‚‚ã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã®ãã®ãƒ‘ッケージ・ディレクトリ内ã«é…ç½®ã—ã¦ãã ã•ã„。
+package\-info\&.javaファイル.PP
+\fIpackage\-info\&.java\fRファイルã«ã¯ã€æ¬¡ã®æ§‹é€ ã®ãƒ‘ッケージ・コメントをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コメントã¯ã€ãƒ‘ッケージ宣言ã®å‰ã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤Ç¤¢¤ë\fI/**\fR¤ª¤è¤Ó\fI*/\fR¤¬Â¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢Ãæ´Ö¤Î¹Ô¤ÎÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤Ï¾Êά²Äǽ¤Ç¤¹¡£
+\fB注æ„:\fR
+コメント区切り文字ã§ã‚ã‚‹\fI/**\fRãŠã‚ˆã³\fI*/\fRãŒå­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ä¸­é–“ã®è¡Œã®å…ˆé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã¯çœç•¥å¯èƒ½ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -302,10 +302,10 @@
 .if n \{\
 .RE
 .\}
-package\&.html¥Õ¥¡¥¤¥ë.PP
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î¹½Â¤¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥á¥ó¥È¤Ï¡¢\fI<body>\fRÍ×ÁǤËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+package\&.htmlファイル.PP
+\fIpackage\&.html\fRファイルã«ã¯ã€æ¬¡ã®æ§‹é€ ã®ãƒ‘ッケージ・コメントをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コメントã¯ã€\fI<body>\fRè¦ç´ ã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .PP
-¥Õ¥¡¥¤¥ë:
+ファイル:
 \fIjava/applet/package\&.html\fR
 .sp
 .if n \{\
@@ -332,9 +332,9 @@
 .RE
 .\}
 .PP
-\fIpackage\&.html\fR¥Õ¥¡¥¤¥ë¤ÏÄ̾ï¤ÎHTML¥Õ¥¡¥¤¥ë¤Ç¤¢¤ê¡¢¥Ñ¥Ã¥±¡¼¥¸Àë¸À¤ò´Þ¤ó¤Ç¤¤¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÏHTML¤Çµ­½Ò¤·¤Þ¤¹¤¬¡¢Îã³°¤¬1¤Ä¤¢¤ê¤Þ¤¹¡£¤³¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤Ç¤¢¤ë\fI/**\fR¤È\fI*/\fR¡¢¤Þ¤¿¤Ï¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤ò´Þ¤á¤Ê¤¤¡¢¤È¤¤¤¦ÅÀ¤Ç¤¹¡£¥³¥á¥ó¥È¤ò½ñ¤¯¾ì¹ç¤Ï¡¢ºÇ½é¤Îʸ¤ò¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¤È¤·¡¢\fI<body>\fR¥¿¥°¤ÈºÇ½é¤Îʸ¤Î´Ö¤Ë¥¿¥¤¥È¥ë¤ä¤½¤Î¾¤Î¥Æ¥­¥¹¥È¤ò´Þ¤á¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤ËÇÛÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI@see\fR¥¿¥°¤ò¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ËÄɲ乤ë¾ì¹ç¤Ë¤Ï¡¢´°Á´½¤¾þ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý.PP
-\fIjavadoc\fR¥³¥á¥ó¥È¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¼ê½ç¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIpackage\&.html\fRファイルã¯é€šå¸¸ã®HTMLファイルã§ã‚ã‚Šã€ãƒ‘ッケージ宣言をå«ã‚“ã§ã„ã¾ã›ã‚“。パッケージ・コメント・ファイルã®å†…容ã¯HTMLã§è¨˜è¿°ã—ã¾ã™ãŒã€ä¾‹å¤–ãŒ1ã¤ã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€ã‚³ãƒ¡ãƒ³ãƒˆåŒºåˆ‡ã‚Šæ–‡å­—ã§ã‚ã‚‹\fI/**\fRã¨\fI*/\fRã€ã¾ãŸã¯è¡Œé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’å«ã‚ãªã„ã€ã¨ã„ã†ç‚¹ã§ã™ã€‚コメントを書ãå ´åˆã¯ã€æœ€åˆã®æ–‡ã‚’パッケージã®ã‚µãƒžãƒªãƒ¼ã¨ã—ã€\fI<body>\fRã‚¿ã‚°ã¨æœ€åˆã®æ–‡ã®é–“ã«ã‚¿ã‚¤ãƒˆãƒ«ã‚„ãã®ä»–ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å«ã‚ãªã„よã†ã«ã—ã¾ã™ã€‚パッケージ・タグをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã™ã¹ã¦ã®ãƒ–ロック・タグã¯ã€ä¸»èª¬æ˜Žã®å¾Œã«é…ç½®ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI@see\fRタグをパッケージ・コメント・ファイルã«è¿½åŠ ã™ã‚‹å ´åˆã«ã¯ã€å®Œå…¨ä¿®é£¾åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+コメント・ファイルã®å‡¦ç†.PP
+\fIjavadoc\fRコメントを実行ã™ã‚‹ã¨ã€ãƒ‘ッケージ・コメント・ファイルãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚パッケージ・コメント・ファイルãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã¯ã€\fIjavadoc\fRコマンドã¯æ¬¡ã®æ‰‹é †ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -344,8 +344,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤Ç¤­¤ë¤è¤¦¤Ë¥³¥á¥ó¥È¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£package\&.html¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI<body>\fR¤È\fI</body>\fR
-HTML¥¿¥°´Ö¤Î¤¹¤Ù¤Æ¤ÎÆâÍƤò¥³¥Ô¡¼¤·¤Þ¤¹¡£\fI<head>\fR¥»¥¯¥·¥ç¥ó¤ò´Þ¤á¡¢¤½¤³¤Ë\fI<title>\fR¥¿¥°¤ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎÃøºî¸¢µ­½Ò¤Ê¤É¤Î¾ðÊó¤òÇÛÃÖ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¤¬¡¢À¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¤½¤ì¤é¤Ï°ìÀÚɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+処ç†ã§ãるよã†ã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’コピーã—ã¾ã™ã€‚package\&.htmlã®å ´åˆã€\fIjavadoc\fRコマンドã¯ã€\fI<body>\fRã¨\fI</body>\fR
+HTMLã‚¿ã‚°é–“ã®ã™ã¹ã¦ã®å†…容をコピーã—ã¾ã™ã€‚\fI<head>\fRセクションをå«ã‚ã€ãã“ã«\fI<title>\fRタグやソース・ファイルã®è‘—作権記述ãªã©ã®æƒ…報をé…ç½®ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ãŒã€ç”Ÿæˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ãれらã¯ä¸€åˆ‡è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -356,7 +356,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò½èÍý¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+パッケージ・タグを処ç†ã—ã¾ã™ã€‚パッケージ・タグをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -367,8 +367,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤·¤¿¥Æ¥­¥¹¥È¤òÀ¸À®¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤Î²¼Éô¤ËÁÞÆþ¤·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¢Standard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+処ç†ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã•ã‚ŒãŸãƒ‘ッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®ä¸‹éƒ¨ã«æŒ¿å…¥ã—ã¾ã™ã€‚Javaプラットフォームã€Standard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -379,24 +379,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢³µÍ×¥Ú¡¼¥¸¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤È¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤òÄɲä·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¢Standard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-ʸ¤Î½ª¤ï¤ê¤Ï¡¢¥¯¥é¥¹¤ä¥á¥ó¥Ð¡¼¤Î¼çÀâÌÀ¤ÎºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤ÈƱ¤¸¥ë¡¼¥ë¤Ë¤è¤Ã¤ÆȽÃǤµ¤ì¤Þ¤¹¡£
-.RE
-.SS "³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë"
+パッケージã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®å…ˆé ­ã«ã€ãƒ‘ッケージ・コメントã®æœ€åˆã®æ–‡ã‚’コピーã—ã¾ã™ã€‚ã•ã‚‰ã«ã€\fIjavadoc\fRコマンドã¯ã€æ¦‚è¦ãƒšãƒ¼ã‚¸ã®ãƒ‘ッケージ・リストã«ã€ãƒ‘ッケージåã¨ãƒ‘ッケージ・コメントã®æœ€åˆã®æ–‡ã‚’追加ã—ã¾ã™ã€‚Javaプラットフォームã€Standard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+æ–‡ã®çµ‚ã‚ã‚Šã¯ã€ã‚¯ãƒ©ã‚¹ã‚„メンãƒãƒ¼ã®ä¸»èª¬æ˜Žã®æœ€åˆã®æ–‡ã®çµ‚ã‚ã‚Šã¨åŒã˜ãƒ«ãƒ¼ãƒ«ã«ã‚ˆã£ã¦åˆ¤æ–­ã•ã‚Œã¾ã™ã€‚
+.RE
+.SS "概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥É¥­¥å¥á¥ó¥È²½¤¹¤ë³Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤Ï¡¢Æȼ«¤Î³µÍץɥ­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò»ý¤Ä¤³¤È¤¬¤Ç¤­¡¢¤½¤ì¤ÏÀìÍѤΥ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÝ»ý¤µ¤ì¤Þ¤¹¡£¤½¤ÎÆâÍƤϡ¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë³µÍ×¥Ú¡¼¥¸¤ËÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£¤³¤Î¥³¥á¥ó¥È¤Ë¤Ï¡¢Ä̾¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥ÈÁ´ÂΤËÅö¤Æ¤Ï¤Þ¤ë¥É¥­¥å¥á¥ó¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+ドキュメント化ã™ã‚‹å„アプリケーションã¾ãŸã¯ãƒ‘ッケージ・セットã¯ã€ç‹¬è‡ªã®æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã“ã¨ãŒã§ãã€ãã‚Œã¯å°‚用ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿æŒã•ã‚Œã¾ã™ã€‚ãã®å†…容ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹æ¦‚è¦ãƒšãƒ¼ã‚¸ã«çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€é€šå¸¸ã€ã‚¢ãƒ—リケーションã¾ãŸã¯ãƒ‘ッケージ・セット全体ã«å½“ã¦ã¯ã¾ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’記述ã—ã¾ã™ã€‚
 .PP
-¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ïoverview\&.html¤Ê¤É¤Î̾Á°¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¡¢¤É¤³¤ËÇÛÃÖ¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£°ìÈÌŪ¤Ê¾ì½ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤ÎºÇ¾åÉô¤Ç¤¹¡£
+ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯overview\&.htmlãªã©ã®åå‰ã‚’付ã‘ã‚‹ã“ã¨ãŒã§ãã€ã©ã“ã«é…ç½®ã—ã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。一般的ãªå ´æ‰€ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®æœ€ä¸Šéƒ¨ã§ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.applet\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬/home/user/src/java/applet¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Ï/home/user/src/overview\&.html¤ËºîÀ®¤Ç¤­¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIjava\&.applet\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ/home/user/src/java/appletディレクトリã«æ ¼ç´ã•ã‚Œã¦ã„ã‚‹å ´åˆã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯/home/user/src/overview\&.htmlã«ä½œæˆã§ãã¾ã™ã€‚
 .PP
-°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÊ£¿ô²ó¼Â¹Ô¤¹¤ë¾ì¹ç¤Ï¡¢Æ±¤¸1¤Ä¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥»¥Ã¥È¤ËÂФ·¤ÆÊ£¿ô¤Î³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ÆâÉô¥É¥­¥å¥á¥ó¥ÈÍѤË\fI\-private\fR¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò1²ó¼Â¹Ô¤·¤¿¸å¡¢¸ø³«¥É¥­¥å¥á¥ó¥ÈÍѤˤ½¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤ÇºÆÅټ¹Ԥ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢³Æ³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤Î1ʸÌܤǡ¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤ò¸ø³«ÍѤޤ¿¤ÏÆâÉôÍѤȤ·¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£
+ç•°ãªã‚‹ãƒ‘ッケージã®ã‚»ãƒƒãƒˆã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを複数回実行ã™ã‚‹å ´åˆã¯ã€åŒã˜1ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚»ãƒƒãƒˆã«å¯¾ã—ã¦è¤‡æ•°ã®æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€å†…部ドキュメント用ã«\fI\-private\fRを指定ã—ã¦\fIjavadoc\fRコマンドを1回実行ã—ãŸå¾Œã€å…¬é–‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã«ãã®ã‚ªãƒ—ションを指定ã—ãªã„ã§å†åº¦å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®å ´åˆã€å„概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®1文目ã§ã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’公開用ã¾ãŸã¯å†…部用ã¨ã—ã¦è¨˜è¿°ã§ãã¾ã™ã€‚
 .PP
-³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤϡ¢HTML¤Çµ­½Ò¤µ¤ì¤¿1¤Ä¤ÎÂ礭¤Ê¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤¹¡£ºÇ½é¤Îʸ¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥È¤Î¥µ¥Þ¥ê¡¼¤È¤·¤Þ¤¹¡£\fI<body>\fR¥¿¥°¤ÈºÇ½é¤Îʸ¤Î´Ö¤Ë¥¿¥¤¥È¥ë¤ä¤½¤Î¾¤Î¥Æ¥­¥¹¥È¤ò´Þ¤á¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£{\fI@link}\fR¤Ê¤É¤Î¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤ËÇÛÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI@see\fR¥¿¥°¤òÄɲ乤ë¾ì¹ç¤Ë¤Ï¡¢´°Á´½¤¾þ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+概è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ã¯ã€HTMLã§è¨˜è¿°ã•ã‚ŒãŸ1ã¤ã®å¤§ããªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã™ã€‚最åˆã®æ–‡ã¯ã‚¢ãƒ—リケーションã¾ãŸã¯ãƒ‘ッケージã®ã‚»ãƒƒãƒˆã®ã‚µãƒžãƒªãƒ¼ã¨ã—ã¾ã™ã€‚\fI<body>\fRã‚¿ã‚°ã¨æœ€åˆã®æ–‡ã®é–“ã«ã‚¿ã‚¤ãƒˆãƒ«ã‚„ãã®ä»–ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å«ã‚ãªã„よã†ã«ã—ã¾ã™ã€‚{\fI@link}\fRãªã©ã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚’除ãã™ã¹ã¦ã®ã‚¿ã‚°ã¯ã€ä¸»èª¬æ˜Žã®å¾Œã«é…ç½®ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI@see\fRタグを追加ã™ã‚‹å ´åˆã«ã¯ã€å®Œå…¨ä¿®é£¾åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¡¢\fI\-overview\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤è¤¦¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¼ê½ç¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã€\fI\-overview\fRオプションを使用ã—ã¦æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを指定ã—ã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ãƒ‘ッケージ・コメント・ファイルã¨åŒã˜ã‚ˆã†ã«å‡¦ç†ã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯æ¬¡ã®æ‰‹é †ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -406,7 +406,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI<body>\fR¤È\fI</body>\fR¥¿¥°¤Î´Ö¤Ë¤¢¤ëÆâÍƤò¤¹¤Ù¤Æ½èÍýÂоݤȤ·¤Æ¥³¥Ô¡¼¤·¤Þ¤¹¡£
+\fI<body>\fRã¨\fI</body>\fRã‚¿ã‚°ã®é–“ã«ã‚る内容をã™ã¹ã¦å‡¦ç†å¯¾è±¡ã¨ã—ã¦ã‚³ãƒ”ーã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -417,7 +417,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³µÍ×¥¿¥°¤¬¤¢¤ì¤Ð½èÍý¤·¤Þ¤¹¡£³µÍ×¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+概è¦ã‚¿ã‚°ãŒã‚ã‚Œã°å‡¦ç†ã—ã¾ã™ã€‚概è¦ã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -428,8 +428,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-½èÍý¤·¤¿¥Æ¥­¥¹¥È¤òÀ¸À®¤µ¤ì¤¿³µÍ×¥Ú¡¼¥¸¤Î²¼Éô¤ËÁÞÆþ¤·¤Þ¤¹¡£Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àStandard Edition API»ÅÍͤγµÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+処ç†ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã•ã‚ŒãŸæ¦‚è¦ãƒšãƒ¼ã‚¸ã®ä¸‹éƒ¨ã«æŒ¿å…¥ã—ã¾ã™ã€‚JavaプラットフォームStandard Edition API仕様ã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/api/overview\-summary\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -440,17 +440,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³µÍ×¥µ¥Þ¥ê¡¼¡¦¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¡¢³µÍ×¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£
-.RE
-.SS "̤½èÍý¤Î¥Õ¥¡¥¤¥ë"
+概è¦ã‚µãƒžãƒªãƒ¼ãƒ»ãƒšãƒ¼ã‚¸ã®å…ˆé ­ã«ã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆã®æœ€åˆã®æ–‡ã‚’コピーã—ã¾ã™ã€‚
+.RE
+.SS "未処ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ°¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤µ¤ì¤ë¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Ä̾¥°¥é¥Õ¥£¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¡¢¥µ¥ó¥×¥ë¤ÎJava¥½¡¼¥¹¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢°ìÈÌŪ¤ÊJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î±Æ¶Á¤ò¼õ¤±¤Ê¤¤Â¿¤¯¤ÎÆâÍƤò´Þ¤àÆÈΩ¤·¤¿HTML¥Õ¥¡¥¤¥ë¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£
+ソース・ファイルã«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚³ãƒ”ーã•ã‚Œã‚‹ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ã€é€šå¸¸ã€ã‚°ãƒ©ãƒ•ã‚£ãƒƒã‚¯ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚µãƒ³ãƒ—ルã®JavaソースãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ä¸€èˆ¬çš„ãªJavaソース・ファイルã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®å½±éŸ¿ã‚’å—ã‘ãªã„多ãã®å†…容をå«ã‚€ç‹¬ç«‹ã—ãŸHTMLファイルãªã©ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-̤½èÍý¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤Ë¤Ï¡¢doc\-files¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤·¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤àǤ°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ê¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£doc\-files¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤ÄÍѰդǤ­¤Þ¤¹¡£
+未処ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚ã‚‹ã«ã¯ã€doc\-filesã¨ã„ã†ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã—ã¾ã™ã€‚doc\-filesディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€ä»»æ„ã®ãƒ‘ッケージ・ディレクトリã®ã‚µãƒ–ディレクトリã«ãªã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚doc\-filesサブディレクトリã¯ã€ãƒ‘ッケージã”ã¨ã«1ã¤ç”¨æ„ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥Ü¥¿¥ó¤Î¥¤¥á¡¼¥¸¤ò\fIjava\&.awt\&.Button\fR¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ë´Þ¤á¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¥¤¥á¡¼¥¸¡¦¥Õ¥¡¥¤¥ë¤ò/home/user/src/java/awt/doc\-files/¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤­¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤ò/home/user/src/java/doc\-files¤ËÃÖ¤«¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£java¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Ç¤Ï¤Ê¤¤¤«¤é¤Ç¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ë¤³¤È¤â¤Ç¤­¤Þ¤»¤ó¡£
+ãŸã¨ãˆã°ã€ãƒœã‚¿ãƒ³ã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’\fIjava\&.awt\&.Button\fRクラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å«ã‚ã‚‹å ´åˆã«ã¯ã€ãã®ã‚¤ãƒ¡ãƒ¼ã‚¸ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’/home/user/src/java/awt/doc\-files/ディレクトリã«ç½®ãã¾ã™ã€‚doc\-filesディレクトリを/home/user/src/java/doc\-filesã«ç½®ã‹ãªã„ã§ãã ã•ã„。javaã¯ãƒ‘ッケージã§ã¯ãªã„ã‹ã‚‰ã§ã™ã€‚ソース・ファイルをå«ã‚ã‚‹ã“ã¨ã‚‚ã§ãã¾ã›ã‚“。
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Ê¤¤¤Î¤Ç¡¢Ì¤½èÍý¤Î¥Õ¥¡¥¤¥ë¤Ø¤Î¤¹¤Ù¤Æ¤Î¥ê¥ó¥¯¤Ï¡¢¥³¡¼¥É¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤È¤½¤Î¤¹¤Ù¤Æ¤ÎÆâÍƤò°¸Àè¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢Button\&.java¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥ê¥ó¥¯¤¬¤É¤Î¤è¤¦¤Ë¸«¤¨¤ë¤«¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ãªã„ã®ã§ã€æœªå‡¦ç†ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ã™ã¹ã¦ã®ãƒªãƒ³ã‚¯ã¯ã€ã‚³ãƒ¼ãƒ‰ã«å«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨ãã®ã™ã¹ã¦ã®å†…容を宛先ã«ã‚³ãƒ”ーã—ã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€Button\&.javaドキュメンテーション・コメントã®ãƒªãƒ³ã‚¯ãŒã©ã®ã‚ˆã†ã«è¦‹ãˆã‚‹ã‹ã‚’示ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -464,13 +464,13 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë"
+.SS "テストãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイル"
 .PP
-¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤Ï¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤Ç¤­¤Þ¤¹¡£¥Æ¥¹¥È¤ª¤è¤Ó¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤¬½èÍý¤µ¤ì¤ë¤Î¤òËɤ°¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢ÌÀ¼¨Åª¤Ë¸ÄÊ̤Υ½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤òÅϤ·¤Þ¤¹¡£
+ソース・ツリーã®ãƒ†ã‚¹ãƒˆãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイルをã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå­˜åœ¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯ã‚µãƒ–ディレクトリã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã§ãã¾ã™ã€‚テストãŠã‚ˆã³ãƒ†ãƒ³ãƒ—レート・ファイルãŒå‡¦ç†ã•ã‚Œã‚‹ã®ã‚’防ãã«ã¯ã€\fIjavadoc\fRコマンドを実行ã—ã€æ˜Žç¤ºçš„ã«å€‹åˆ¥ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを渡ã—ã¾ã™ã€‚
 .PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Í­¸ú¤Ê¡¢¥³¥ó¥Ñ¥¤¥ë²Äǽ¤Ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Í­¸ú¤Ê¡¢¸ß´¹À­¤Î¤¢¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢Â¿¤¯¤Î¾ì¹ç¡¢\fI\&.java\fRÀÜÈø¼­¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë.PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¡¢Ì¾Á°¤Ê¤·¥Ñ¥Ã¥±¡¼¥¸¤ä¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤È¤ÏÊ̤Υѥ屡¼¥¸¤Ë°¤¹¤ë¤è¤¦¤Ë¤¹¤ë¾ì¹ç¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î²¼¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë̵¸ú¤Ê̾Á°¤òÉÕ¤±¤Þ¤¹¡£¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¼¨¤¹¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï·Ù¹ð¤Þ¤¿¤Ï¥¨¥é¡¼¤ò°ú¤­µ¯¤³¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬Ìµ¸ú¤Ê̾Á°¤ò»ý¤Ä¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥¹¥­¥Ã¥×¤µ¤ì¡¢¥¨¥é¡¼¤Þ¤¿¤Ï·Ù¹ð¤Ïȯ¹Ô¤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤òcom\&.package1¤ËÄɲ乤ë¤Ë¤Ï¡¢Ìµ¸ú¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¼¡¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤Ë¤Ï¥Ï¥¤¥Õ¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤¿¤á̵¸ú¤Ç¤¹¡£
+テスト・ファイルã¯ã€æœ‰åŠ¹ãªã€ã‚³ãƒ³ãƒ‘イルå¯èƒ½ãªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚テンプレート・ファイルã¯ã€æœ‰åŠ¹ãªã€äº’æ›æ€§ã®ã‚るソース・ファイルã§ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€å¤šãã®å ´åˆã€\fI\&.java\fR接尾辞をæŒã£ã¦ã„ã¾ã™ã€‚
+テスト・ファイル.PP
+テスト・ファイルをã€åå‰ãªã—パッケージやã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒå­˜åœ¨ã™ã‚‹ãƒ‘ッケージã¨ã¯åˆ¥ã®ãƒ‘ッケージã«å±žã™ã‚‹ã‚ˆã†ã«ã™ã‚‹å ´åˆã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ソース・ファイルã®ä¸‹ã®ã‚µãƒ–ディレクトリã«é…ç½®ã—ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç„¡åŠ¹ãªåå‰ã‚’付ã‘ã¾ã™ã€‚テスト・ファイルをソースã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«é…ç½®ã—ã€ãƒ‘ッケージåを示ã™ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを呼ã³å‡ºã™ã¨ã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯è­¦å‘Šã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã‚’引ãèµ·ã“ã—ã¾ã™ã€‚ファイルãŒç„¡åŠ¹ãªåå‰ã‚’æŒã¤ã‚µãƒ–ディレクトリ内ã«å­˜åœ¨ã™ã‚‹å ´åˆã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã‚¹ã‚­ãƒƒãƒ—ã•ã‚Œã€ã‚¨ãƒ©ãƒ¼ã¾ãŸã¯è­¦å‘Šã¯ç™ºè¡Œã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’com\&.package1ã«è¿½åŠ ã™ã‚‹ã«ã¯ã€ç„¡åŠ¹ãªãƒ‘ッケージåã®ã‚µãƒ–ディレクトリã«é…ç½®ã—ã¾ã™ã€‚次ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã«ã¯ãƒã‚¤ãƒ•ãƒ³ãŒå«ã¾ã‚Œã¦ã„ã‚‹ãŸã‚無効ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -482,13 +482,13 @@
 .RE
 .\}
 .PP
-¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¸ÄÊ̤μ¹Ԥǡ¢¥ï¥¤¥ë¥É¥«¡¼¥É¤ò´Þ¤ó¤À¥Æ¥¹¥È¡¦¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾(\fIcom/package1/test\-files/*\&.java\fR¤Ê¤É)¤òÅϤ·¤Æ¡¢¥Æ¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤è¤¦¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£
-¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë.PP
-¥Æ¥ó¥×¥ì¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤ò¥½¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤¹¤ë¤¬¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¥¨¥é¡¼¤òÀ¸À®¤·¤Ê¤¤¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ë\fIBuffer\-Template\&.java\fR¤Ê¤É¤Î̵¸ú¤Ê̾Á°¤òÉÕ¤±¤Æ¡¢½èÍý¤µ¤»¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ÀÜÈø¼­¤Î\fI\&.java\fR¤¬ºï½ü¤µ¤ì¤ë¤ÈÍ­¸ú¤Ê¥¯¥é¥¹Ì¾¤Ë¤Ê¤ë̾Á°¤ò»ý¤Ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤ß¤ò½èÍý¤·¤Þ¤¹¡£
-.SH "À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë"
+テスト・ファイルã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒå«ã¾ã‚Œã‚‹å ´åˆã€\fIjavadoc\fRコマンドã®å€‹åˆ¥ã®å®Ÿè¡Œã§ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’å«ã‚“ã ãƒ†ã‚¹ãƒˆãƒ»ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å(\fIcom/package1/test\-files/*\&.java\fRãªã©)を渡ã—ã¦ã€ãƒ†ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã‚ˆã†ã«è¨­å®šã§ãã¾ã™ã€‚
+テンプレート・ファイル.PP
+テンプレート・ファイルをソース・ディレクトリã«é…ç½®ã™ã‚‹ãŒã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã¨ãã«ã‚¨ãƒ©ãƒ¼ã‚’生æˆã—ãªã„å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«ã«\fIBuffer\-Template\&.java\fRãªã©ã®ç„¡åŠ¹ãªåå‰ã‚’付ã‘ã¦ã€å‡¦ç†ã•ã›ãªã„よã†ã«ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŽ¥å°¾è¾žã®\fI\&.java\fRãŒå‰Šé™¤ã•ã‚Œã‚‹ã¨æœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã«ãªã‚‹åå‰ã‚’æŒã¤ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚’処ç†ã—ã¾ã™ã€‚
+.SH "生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«"
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ëɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¤³¤³¤ÇÀâÌÀ¤¹¤ë¡¢´ðËÜÆâÍÆ¥Ú¡¼¥¸¡¢Áê¸ß»²¾È¥Ú¡¼¥¸¡¢¥µ¥Ý¡¼¥È¡¦¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£³ÆHTML¥Ú¡¼¥¸¤Ï¸ÄÊ̤Υե¡¥¤¥ë¤ËÂбþ¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢2¤Ä¤Î¥¿¥¤¥×¤Î¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£ºÇ½é¤Î¥¿¥¤¥×¤Ë¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë±þ¤¸¤¿Ì¾Á°¤¬ÉÕ¤±¤é¤ì¤Þ¤¹¡£2ÈÖÌܤΥ¿¥¤¥×¤Ë¤Ï¡¢ºÇ½é¤Î¥¿¥¤¥×¤Î¥Õ¥¡¥¤¥ë¤È¤Î¶¥¹ç¤òËɤ°¤¿¤á¤Ë¡¢¥Ï¥¤¥Õ¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹(package\-summary\&.html¤Ê¤É)¡£
-.SS "´ðËÜÆâÍÆ¥Ú¡¼¥¸"
+デフォルトã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚標準ドックレットã¯ã€ã“ã“ã§èª¬æ˜Žã™ã‚‹ã€åŸºæœ¬å†…容ページã€ç›¸äº’å‚照ページã€ã‚µãƒãƒ¼ãƒˆãƒ»ãƒšãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚å„HTMLページã¯å€‹åˆ¥ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾å¿œã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€2ã¤ã®ã‚¿ã‚¤ãƒ—ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚最åˆã®ã‚¿ã‚¤ãƒ—ã«ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«å¿œã˜ãŸåå‰ãŒä»˜ã‘られã¾ã™ã€‚2番目ã®ã‚¿ã‚¤ãƒ—ã«ã¯ã€æœ€åˆã®ã‚¿ã‚¤ãƒ—ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã®ç«¶åˆã‚’防ããŸã‚ã«ã€ãƒã‚¤ãƒ•ãƒ³ãŒå«ã¾ã‚Œã¾ã™(package\-summary\&.htmlãªã©)。
+.SS "基本内容ページ"
 .sp
 .RS 4
 .ie n \{\
@@ -498,7 +498,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-µ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤´¤È¤Ë1¤Ä¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥Ú¡¼¥¸(classname\&.html)¡£
+記載ã•ã‚Œã¦ã„るクラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã”ã¨ã«1ã¤ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ãƒšãƒ¼ã‚¸(classname\&.html)。
 .RE
 .sp
 .RS 4
@@ -509,7 +509,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-µ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ú¡¼¥¸(package\-summary\&.html)¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¤¢¤ëpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.java¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¥Æ¥­¥¹¥È¤ò¤¹¤Ù¤ÆÁȤßÆþ¤ì¤Þ¤¹¡£
+記載ã•ã‚Œã¦ã„るパッケージã”ã¨ã«1ã¤ã®ãƒ‘ッケージ・ページ(package\-summary\&.html)。\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ãƒ‘ッケージ・ディレクトリ内ã«ã‚ã‚‹package\&.htmlã¾ãŸã¯package\-info\&.javaã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®HTMLテキストをã™ã¹ã¦çµ„ã¿å…¥ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -520,9 +520,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ1¤Ä¤Î³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¡£³µÍ×¥Ú¡¼¥¸¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤ÎÀèƬ¥Ú¡¼¥¸¤Ë¤Ê¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-overview\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¥Æ¥­¥¹¥È¤ò¤¹¤Ù¤ÆÁȤßÆþ¤ì¤Þ¤¹¡£³µÍ×¥Ú¡¼¥¸¤¬ºîÀ®¤µ¤ì¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£HTML¥Õ¥ì¡¼¥à¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.RE
-.SS "Áê¸ß»²¾È¥Ú¡¼¥¸"
+パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦1ã¤ã®æ¦‚è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)。概è¦ãƒšãƒ¼ã‚¸ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å…ˆé ­ãƒšãƒ¼ã‚¸ã«ãªã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fI\-overview\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«å†…ã®HTMLテキストをã™ã¹ã¦çµ„ã¿å…¥ã‚Œã¾ã™ã€‚概è¦ãƒšãƒ¼ã‚¸ãŒä½œæˆã•ã‚Œã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«è¤‡æ•°ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚HTMLフレームãŠã‚ˆã³ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+.RE
+.SS "相互å‚照ページ"
 .sp
 .RS 4
 .ie n \{\
@@ -532,7 +532,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ1¤Ä¤Î¥¯¥é¥¹³¬ÁØ¥Ú¡¼¥¸(overview\-tree\&.html)¡£³¬ÁØ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö³µÍספò¥¯¥ê¥Ã¥¯¤·¤Æ¤«¤é¡¢¡Ö³¬Áإĥ꡼¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦1ã¤ã®ã‚¯ãƒ©ã‚¹éšŽå±¤ãƒšãƒ¼ã‚¸(overview\-tree\&.html)。階層ページを表示ã™ã‚‹ã«ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œæ¦‚è¦ã€ã‚’クリックã—ã¦ã‹ã‚‰ã€ã€ŒéšŽå±¤ãƒ„リーã€ã‚’クリックã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -543,7 +543,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î¥¯¥é¥¹³¬ÁØ¥Ú¡¼¥¸(package\-tree\&.html)¡£³¬ÁØ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢ÆÃÄê¤Î¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥Ú¡¼¥¸¤Ë°ÜÆ°¤·¡¢¡Ö³¬Áإĥ꡼¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Æ¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î³¬Áؤòɽ¼¨¤·¤Þ¤¹¡£
+パッケージã”ã¨ã«1ã¤ã®ã‚¯ãƒ©ã‚¹éšŽå±¤ãƒšãƒ¼ã‚¸(package\-tree\&.html)。階層ページを表示ã™ã‚‹ã«ã¯ã€ç‰¹å®šã®ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒšãƒ¼ã‚¸ã«ç§»å‹•ã—ã€ã€ŒéšŽå±¤ãƒ„リーã€ã‚’クリックã—ã¦ãã®ãƒ‘ッケージã®éšŽå±¤ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -554,7 +554,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸(package\-use\&.html)¤È¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤´¤È¤Ë1¤Ä¤º¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸(class\-use/classname\&.html)¡£»ÈÍÑ¥Ú¡¼¥¸¤Ç¤Ï¡¢»ØÄꤷ¤¿¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÉô¤ò»ÈÍѤ·¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤Ë¤Ä¤¤¤Æµ­½Ò¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹A¤òÎã¤Ë¤¹¤ë¤È¡¢¤½¤Î»ÈÍÑ¥Ú¡¼¥¸¤Ë¤Ï¡¢A¤Î¥µ¥Ö¥¯¥é¥¹¡¢A¤È¤·¤ÆÀë¸À¤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¡¢A¤òÊÖ¤¹¥á¥½¥Ã¥É¡¢A·¿¤Î¥Ñ¥é¥á¡¼¥¿¤ò»ý¤Ä¥á¥½¥Ã¥É¤ª¤è¤Ó¥³¥ó¥¹¥È¥é¥¯¥¿¤¬ÁȤ߹þ¤Þ¤ì¤Þ¤¹¡£»ÈÍÑ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë°ÜÆ°¤·¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö»ÈÍѡץê¥ó¥¯¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+パッケージã”ã¨ã«1ã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸(package\-use\&.html)ã¨ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã”ã¨ã«1ã¤ãšã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸(class\-use/classname\&.html)。使用ページã§ã¯ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã¾ãŸã¯ãƒ‘ッケージã®ä¸€éƒ¨ã‚’使用ã—ã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«ã¤ã„ã¦è¨˜è¿°ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹Aを例ã«ã™ã‚‹ã¨ã€ãã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã«ã¯ã€Aã®ã‚µãƒ–クラスã€Aã¨ã—ã¦å®£è¨€ã•ã‚ŒãŸãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€Aã‚’è¿”ã™ãƒ¡ã‚½ãƒƒãƒ‰ã€Aåž‹ã®ãƒ‘ラメータをæŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒçµ„ã¿è¾¼ã¾ã‚Œã¾ã™ã€‚使用ページを表示ã™ã‚‹ã«ã¯ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ç§»å‹•ã—ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œä½¿ç”¨ã€ãƒªãƒ³ã‚¯ã‚’クリックã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -565,7 +565,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤¹¤Ù¤Æ¤ÎÈó¿ä¾©API¤È¤½¤Î¿ä¾©¤¹¤ëÂåÂؤò¥ê¥¹¥È¤¹¤ëÈó¿ä¾©API¥Ú¡¼¥¸(deprecated\-list\&.html)¡£Èó¿ä¾©API¤Ï¾­Íè¤Î¼ÂÁõ¤Çºï½ü¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤Î¤Ç»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+ã™ã¹ã¦ã®éžæŽ¨å¥¨APIã¨ãã®æŽ¨å¥¨ã™ã‚‹ä»£æ›¿ã‚’リストã™ã‚‹éžæŽ¨å¥¨APIページ(deprecated\-list\&.html)。éžæŽ¨å¥¨APIã¯å°†æ¥ã®å®Ÿè£…ã§å‰Šé™¤ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã®ã§ä½¿ç”¨ã—ãªã„ã§ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -576,7 +576,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Äê¿ô¥Õ¥£¡¼¥ë¥É¤ÎÃÍÍѤÎÄê¿ô¥Õ¥£¡¼¥ë¥ÉÃÍ¥Ú¡¼¥¸(constant\-values\&.html)¡£
+定数フィールドã®å€¤ç”¨ã®å®šæ•°ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å€¤ãƒšãƒ¼ã‚¸(constant\-values\&.html)。
 .RE
 .sp
 .RS 4
@@ -587,9 +587,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ľÎ󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸(serialized\-form\&.html)¡£¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥á¥½¥Ã¥É¤ÎÀâÌÀ¤ò´Þ¤à¡¢Ä¾Îó²½²Äǽ¤«¤Ä³°Éô²½²Äǽ¤Ê¥¯¥é¥¹¤Ë´Ø¤¹¤ë¾ðÊóÍѤΥڡ¼¥¸¤Ç¤¹¡£¤³¤Î¥Ú¡¼¥¸Æâ¤Î¾ðÊó¤Ï¡¢API¤ò»ÈÍѤ¹¤ë³«È¯¼Ô¤Ç¤Ï¤Ê¤¯¡¢ºÆ¼ÂÁõ¼Ô¤ËɬÍפʾðÊó¤Ç¤¹¡£Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤Ø¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢Ä¾Î󲽤µ¤ì¤¿¥¯¥é¥¹¤Ë°ÜÆ°¤·¤Æ¡¢¤½¤Î¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤Ë¤¢¤ë¡Ö´ØÏ¢¹àÌܡץ»¥¯¥·¥ç¥ó¤Ç¡ÖľÎ󲽤µ¤ì¤¿·Á¼°¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ÏľÎ󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢Serializable¤ò¼ÂÁõ¤¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹(public¤Þ¤¿¤ÏÈópublic)¤¬¡¢¤½¤Î\fIreadObject\fR¤ä\fIwriteObject\fR¥á¥½¥Ã¥É¡¢Ä¾Î󲽤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¡¢¤ª¤è¤Ó\fI@serial\fR¡¢\fI@serialField\fR¡¢\fI@serialData\fR¥¿¥°¤«¤é¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤È¤È¤â¤Ë¥ê¥¹¥È¤µ¤ì¤Þ¤¹¡£Ä¾Îó²½²Äǽ¤Êpublic¥¯¥é¥¹¤ò½ü³°¤¹¤ë¤Ë¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸)¤ò\fI@serial\fR
-exclude¤Ç¥Þ¡¼¥¯¤·¤Þ¤¹¡£Ä¾Îó²½²Äǽ¤Êpackage\-private¥¯¥é¥¹¤ò´Þ¤á¤ë¤Ë¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸)¤ò\fI@serial\fR
-include¤Ç¥Þ¡¼¥¯¤·¤Þ¤¹¡£¥ê¥ê¡¼¥¹1\&.4¤Ç¤Ï¡¢\fI\-private\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢public¥¯¥é¥¹¤ª¤è¤Óprivate¥¯¥é¥¹¤Î´°Á´¤ËľÎ󲽤µ¤ì¤¿·Á¼°¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+直列化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸(serialized\-form\&.html)。フィールドãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®èª¬æ˜Žã‚’å«ã‚€ã€ç›´åˆ—化å¯èƒ½ã‹ã¤å¤–部化å¯èƒ½ãªã‚¯ãƒ©ã‚¹ã«é–¢ã™ã‚‹æƒ…報用ã®ãƒšãƒ¼ã‚¸ã§ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸å†…ã®æƒ…å ±ã¯ã€APIを使用ã™ã‚‹é–‹ç™ºè€…ã§ã¯ãªãã€å†å®Ÿè£…者ã«å¿…è¦ãªæƒ…å ±ã§ã™ã€‚直列化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã¸ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€ç›´åˆ—化ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«ç§»å‹•ã—ã¦ã€ãã®ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã‚る「関連項目ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã€Œç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã€ã‚’クリックã—ã¾ã™ã€‚標準ドックレットã¯ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸ã«ã¯ã€Serializableを実装ã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹(publicã¾ãŸã¯éžpublic)ãŒã€ãã®\fIreadObject\fRã‚„\fIwriteObject\fRメソッドã€ç›´åˆ—化ã•ã‚ŒãŸãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ãŠã‚ˆã³\fI@serial\fRã€\fI@serialField\fRã€\fI@serialData\fRã‚¿ã‚°ã‹ã‚‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¨ã¨ã‚‚ã«ãƒªã‚¹ãƒˆã•ã‚Œã¾ã™ã€‚直列化å¯èƒ½ãªpublicクラスを除外ã™ã‚‹ã«ã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ãƒ‘ッケージ)ã‚’\fI@serial\fR
+excludeã§ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚直列化å¯èƒ½ãªpackage\-privateクラスをå«ã‚ã‚‹ã«ã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ãƒ‘ッケージ)ã‚’\fI@serial\fR
+includeã§ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚リリース1\&.4ã§ã¯ã€\fI\-private\fRオプションを指定ã›ãšã«\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€publicクラスãŠã‚ˆã³privateクラスã®å®Œå…¨ã«ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã‚’生æˆã§ãã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -600,9 +600,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-º÷°ú¥Ú¡¼¥¸(\fIindex\-*\&.html\fR)¡£¤¹¤Ù¤Æ¤Î¥¯¥é¥¹Ì¾¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¡¢¥³¥ó¥¹¥È¥é¥¯¥¿Ì¾¡¢¥Õ¥£¡¼¥ë¥É̾¡¢¤ª¤è¤Ó¥á¥½¥Ã¥É̾¤¬¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ëʤó¤Ç¤¤¤Þ¤¹¡£º÷°ú¥Ú¡¼¥¸¤Ï¡¢Unicode¤ò°·¤¨¤ë¤è¤¦¤Ë¹ñºÝ²½¤µ¤ì¤Æ¤¤¤Þ¤¹¡£1¤Ä¤Î¥Õ¥¡¥¤¥ë¤È¤·¤ÆÀ¸À®¤¹¤ë¤³¤È¤â¡¢ÀèƬʸ»ú(±Ñ¸ì¤Î¾ì¹çA\(enZ)¤´¤È¤ËÊÌ¡¹¤Î¥Õ¥¡¥¤¥ë¤È¤·¤ÆÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
-.RE
-.SS "¥µ¥Ý¡¼¥È¡¦¥Ú¡¼¥¸"
+索引ページ(\fIindex\-*\&.html\fR)。ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹åã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹åã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿åã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰åã€ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰åãŒã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ä¸¦ã‚“ã§ã„ã¾ã™ã€‚索引ページã¯ã€Unicodeを扱ãˆã‚‹ã‚ˆã†ã«å›½éš›åŒ–ã•ã‚Œã¦ã„ã¾ã™ã€‚1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ç”Ÿæˆã™ã‚‹ã“ã¨ã‚‚ã€å…ˆé ­æ–‡å­—(英語ã®å ´åˆA\(enZ)ã”ã¨ã«åˆ¥ã€…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ç”Ÿæˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
+.RE
+.SS "サãƒãƒ¼ãƒˆãƒ»ãƒšãƒ¼ã‚¸"
 .sp
 .RS 4
 .ie n \{\
@@ -612,7 +612,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ø¥ë¥×¡¦¥Ú¡¼¥¸(help\-doc\&.html)¡£¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤äÁ°½Ò¤Î³Æ¥Ú¡¼¥¸¤Ë´Ø¤¹¤ëÀâÌÀ¤¬µ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤òÆȼ«¤Î¥«¥¹¥¿¥à¡¦¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤Ç¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ë¤Ë¤Ï¡¢\fI\-helpfile\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
+ヘルプ・ページ(help\-doc\&.html)。ナビゲーション・ãƒãƒ¼ã‚„å‰è¿°ã®å„ページã«é–¢ã™ã‚‹èª¬æ˜ŽãŒè¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã®ãƒ˜ãƒ«ãƒ—・ファイルを独自ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ˜ãƒ«ãƒ—・ファイルã§ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã™ã‚‹ã«ã¯ã€\fI\-helpfile\fRを使用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -623,7 +623,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɽ¼¨ÍѤÎHTML¥Õ¥ì¡¼¥à¤òºîÀ®¤¹¤ë1¤Ä¤Îindex\&.html¥Õ¥¡¥¤¥ë¡£¥Õ¥ì¡¼¥àÉÕ¤­¤ÎÀèƬ¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤Ë¤Ï¤³¤Î¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤Þ¤¹¡£index\&.html¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Æ¥­¥¹¥È¡¦¥³¥ó¥Æ¥ó¥Ä¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+表示用ã®HTMLフレームを作æˆã™ã‚‹1ã¤ã®index\&.htmlファイル。フレーム付ãã®å…ˆé ­ãƒšãƒ¼ã‚¸ã‚’表示ã™ã‚‹ã«ã¯ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã—ã¾ã™ã€‚index\&.htmlファイルã«ã¯ã€ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã¯å«ã¾ã‚Œã¦ã„ã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -634,7 +634,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Ê£¿ô¤Î¥Õ¥ì¡¼¥à¡¦¥Õ¥¡¥¤¥ë(\fI*\-frame\&.html\fR)¡£¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥ê¥¹¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Õ¥ì¡¼¥à¡¦¥Õ¥¡¥¤¥ë¤ÏHTML¥Õ¥ì¡¼¥à¤òɽ¼¨¤·¤Þ¤¹¡£
+複数ã®ãƒ•ãƒ¬ãƒ¼ãƒ ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«(\fI*\-frame\&.html\fR)。パッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒªã‚¹ãƒˆãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚フレーム・ファイルã¯HTMLフレームを表示ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -645,7 +645,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë(package\-list)¡£\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¢¤ê¡¢¤É¤Î¥ê¥ó¥¯¤«¤é¤â¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£
+パッケージ・リスト・ファイル(package\-list)。\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚パッケージ・リスト・ファイルã¯ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã‚ã‚Šã€ã©ã®ãƒªãƒ³ã‚¯ã‹ã‚‰ã‚‚アクセスã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -656,7 +656,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ë(stylesheet\&.css)¡£À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤Î°ìÉô¤ÎÍ×ÁǤˤĤ¤¤Æ¿§¡¢¥Õ¥©¥ó¥È¡¦¥Õ¥¡¥ß¥ê¡¢¥Õ¥©¥ó¥È¡¦¥µ¥¤¥º¡¢¥Õ¥©¥ó¥È¡¦¥¹¥¿¥¤¥ë¡¢¤ª¤è¤ÓÇÛÃÖ¤òÀ©¸æ¤·¤Þ¤¹¡£
+スタイルシート・ファイル(stylesheet\&.css)。生æˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®ä¸€éƒ¨ã®è¦ç´ ã«ã¤ã„ã¦è‰²ã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ãƒŸãƒªã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ã‚µã‚¤ã‚ºã€ãƒ•ã‚©ãƒ³ãƒˆãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã€ãŠã‚ˆã³é…置を制御ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -667,22 +667,22 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-doc\-files¥Ç¥£¥ì¥¯¥È¥ê¡£°¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤¹¤ë¥¤¥á¡¼¥¸¡¢¥µ¥ó¥×¥ë¡¦¥³¡¼¥É¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ê¤É¤Î¥Õ¥¡¥¤¥ë¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ½èÍý¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤ÎÃæ¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ë¤Î¤ß½èÍý¤µ¤ì¤Þ¤¹¡£
+doc\-filesディレクトリ。宛先ディレクトリã«ã‚³ãƒ”ーã™ã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã€ã‚µãƒ³ãƒ—ル・コードã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãªã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦å‡¦ç†ã•ã‚Œã¾ã›ã‚“。ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ä¸­ã«å­˜åœ¨ã™ã‚‹å ´åˆã«ã®ã¿å‡¦ç†ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "HTML¥Õ¥ì¡¼¥à"
+オプションをå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "HTMLフレーム"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤¿Ãͤ˴ð¤Å¤­¡¢ºÇ¾®¸ÂɬÍפʿô(2¤Þ¤¿¤Ï3)¤Î¥Õ¥ì¡¼¥à¤òÀ¸À®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë°ú¿ô¤È¤·¤Æ1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ¹¾ì¹ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥ê¥¹¥È¤¬¾Êά¤µ¤ì¤Þ¤¹¡£¤½¤Î¤«¤ï¤ê¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ïº¸Â¦¤ÎÎó¤Ë1¤Ä¤Î¥Õ¥ì¡¼¥à¤òºîÀ®¤·¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¤òɽ¼¨¤·¤Þ¤¹¡£Ê£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¥ê¥¹¥È¤¹¤ëÂè3¤Î¥Õ¥ì¡¼¥à¤È³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¤òºîÀ®¤·¤Þ¤¹¡£¥Õ¥ì¡¼¥à¤ò¾Êά¤¹¤ë¤Ë¤Ï¡¢¡Ö¥Õ¥ì¡¼¥à¤Ê¤·¡×¥ê¥ó¥¯¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤«¡¢overview\-summary\&.html¥Ú¡¼¥¸¤«¤é¥Ú¡¼¥¸¡¦¥»¥Ã¥È¤òɽ¼¨¤·¤Þ¤¹¡£
-.SS "À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î¹½Â¤"
+\fIjavadoc\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã«æ¸¡ã•ã‚ŒãŸå€¤ã«åŸºã¥ãã€æœ€å°é™å¿…è¦ãªæ•°(2ã¾ãŸã¯3)ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’生æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«å¼•æ•°ã¨ã—ã¦1ã¤ã®ãƒ‘ッケージåã¾ãŸã¯1ã¤ã®ãƒ‘ッケージã«å«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’渡ã™å ´åˆã¯ã€ãƒ‘ッケージã®ãƒªã‚¹ãƒˆãŒçœç•¥ã•ã‚Œã¾ã™ã€‚ãã®ã‹ã‚ã‚Šã«ã€\fIjavadoc\fRコマンドã¯å·¦å´ã®åˆ—ã«1ã¤ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’作æˆã—ã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚複数ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã¯ã€\fIjavadoc\fRコマンドã¯ã€ã™ã¹ã¦ã®ãƒ‘ッケージをリストã™ã‚‹ç¬¬3ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã¨æ¦‚è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)を作æˆã—ã¾ã™ã€‚フレームをçœç•¥ã™ã‚‹ã«ã¯ã€ã€Œãƒ•ãƒ¬ãƒ¼ãƒ ãªã—ã€ãƒªãƒ³ã‚¯ã‚’クリックã™ã‚‹ã‹ã€overview\-summary\&.htmlページã‹ã‚‰ãƒšãƒ¼ã‚¸ãƒ»ã‚»ãƒƒãƒˆã‚’表示ã—ã¾ã™ã€‚
+.SS "生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹é€ "
 .PP
-À¸À®¤µ¤ì¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê³¬ÁؤËÊÔÀ®¤µ¤ì¤Þ¤¹¡£1¤Ä¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ë¤Ä¤­1¤Ä¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¢¤È¤¤¤¦¹½Â¤¤Ë¤Ê¤ê¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Javaソース・ファイルãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªéšŽå±¤ã«ç·¨æˆã•ã‚Œã¾ã™ã€‚1ã¤ã®ã‚µãƒ–パッケージã«ã¤ã1ã¤ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€ã¨ã„ã†æ§‹é€ ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.applet\&.Applet\fR¥¯¥é¥¹ÍѤËÀ¸À®¤µ¤ì¤ë¥É¥­¥å¥á¥ó¥È¤Ï¡¢java/applet/Applet\&.html¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIjava\&.applet\&.Applet\fRクラス用ã«ç”Ÿæˆã•ã‚Œã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€java/applet/Applet\&.htmlã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .PP
-À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤¬\fIapidocs\fR¤À¤È¤¹¤ë¤È¡¢\fIjava\&.applet\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥Õ¥¡¥¤¥ë¤Î¹½Â¤¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£Á°½Ò¤Î¤è¤¦¤Ë¡¢\fIframe\fR¤È¤¤¤¦¸ì¤ò̾Á°¤Ë´Þ¤à¥Õ¥¡¥¤¥ë¤Ï¡¢¤¹¤Ù¤Æº¸¾å¤Þ¤¿¤Ïº¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤ÎHTML¥Õ¥¡¥¤¥ë¤Ï¡¢¤¹¤Ù¤Æ±¦Â¦¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ãŒ\fIapidocs\fRã ã¨ã™ã‚‹ã¨ã€\fIjava\&.applet\fRパッケージã®ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹é€ ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚å‰è¿°ã®ã‚ˆã†ã«ã€\fIframe\fRã¨ã„ã†èªžã‚’åå‰ã«å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ã™ã¹ã¦å·¦ä¸Šã¾ãŸã¯å·¦ä¸‹ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ãれ以外ã®HTMLファイルã¯ã€ã™ã¹ã¦å³å´ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥£¥ì¥¯¥È¥ê¤ÏÂÀ»ú¤Ç¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ø¤Î°ú¿ô¤¬¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤Ï¤Ê¤¯¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Ç¤¢¤ë¾ì¹ç¤Ë¾Êά¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£°ú¿ô¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤Î¾ì¹ç¡¢¶õ¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ë¤Î¤ß¡¢À¸À®Àè¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£À¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ディレクトリã¯å¤ªå­—ã§ã™ã€‚アスタリスク(*)ã¯ã€\fIjavadoc\fRコマンドã¸ã®å¼•æ•°ãŒãƒ‘ッケージåã§ã¯ãªãソース・ファイルåã§ã‚ã‚‹å ´åˆã«çœç•¥ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’示ã—ã¦ã„ã¾ã™ã€‚引数ãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã®å ´åˆã€ç©ºã®ãƒ‘ッケージ・リストãŒä½œæˆã•ã‚Œã¾ã™ã€‚doc\-filesディレクトリã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã«å­˜åœ¨ã™ã‚‹å ´åˆã«ã®ã¿ã€ç”Ÿæˆå…ˆã«ä½œæˆã•ã‚Œã¾ã™ã€‚生æˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -692,7 +692,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapidocs\fR: ºÇ¾å°Ì¥ì¥Ù¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBapidocs\fR: 最上ä½ãƒ¬ãƒ™ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .sp
 .RS 4
 .ie n \{\
@@ -702,7 +702,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-index\&.html: HTML¥Õ¥ì¡¼¥à¤òÀßÄꤹ¤ë½é´ü¥Ú¡¼¥¸
+index\&.html: HTMLフレームを設定ã™ã‚‹åˆæœŸãƒšãƒ¼ã‚¸
 .RE
 .sp
 .RS 4
@@ -713,7 +713,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-*overview\-summary\&.html: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤È¥µ¥Þ¥ê¡¼
+*overview\-summary\&.html: パッケージ・リストã¨ã‚µãƒžãƒªãƒ¼
 .RE
 .sp
 .RS 4
@@ -724,7 +724,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-overview\-tree\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥¯¥é¥¹³¬ÁØ
+overview\-tree\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹éšŽå±¤
 .RE
 .sp
 .RS 4
@@ -735,7 +735,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-deprecated\-list\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎÈó¿ä¾©API
+deprecated\-list\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®éžæŽ¨å¥¨API
 .RE
 .sp
 .RS 4
@@ -746,7 +746,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-constant\-values\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎÀÅŪ¥Õ¥£¡¼¥ë¥ÉÃÍ
+constant\-values\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®é™çš„フィールド値
 .RE
 .sp
 .RS 4
@@ -757,7 +757,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-serialized\-form\&.html: ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÎľÎ󲽤µ¤ì¤¿¥Õ¥©¡¼¥à
+serialized\-form\&.html: ã™ã¹ã¦ã®ãƒ‘ッケージã®ç›´åˆ—化ã•ã‚ŒãŸãƒ•ã‚©ãƒ¼ãƒ 
 .RE
 .sp
 .RS 4
@@ -768,7 +768,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-*overview\-frame\&.html: º¸¾å¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸
+*overview\-frame\&.html: 左上ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ã™ã¹ã¦ã®ãƒ‘ッケージ
 .RE
 .sp
 .RS 4
@@ -779,7 +779,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-allclasses\-frame\&.html: º¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹
+allclasses\-frame\&.html: 左下ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹
 .RE
 .sp
 .RS 4
@@ -790,7 +790,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-help\-doc\&.html: Javadoc¥Ú¡¼¥¸¤ÎÊÔÀ®¤Ë´Ø¤¹¤ë¥Ø¥ë¥×
+help\-doc\&.html: Javadocページã®ç·¨æˆã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—
 .RE
 .sp
 .RS 4
@@ -802,7 +802,7 @@
 .IP \(bu 2.3
 .\}
 index\-all\&.html:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤Ê¤·¤ÇºîÀ®¤µ¤ì¤¿¥Ç¥Õ¥©¥ë¥È¤Îº÷°ú
+\fI\-splitindex\fRオプションãªã—ã§ä½œæˆã•ã‚ŒãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç´¢å¼•
 .RE
 .sp
 .RS 4
@@ -814,7 +814,7 @@
 .IP \(bu 2.3
 .\}
 \fBindex\-files\fR:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆºîÀ®¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê
+\fI\-splitindex\fRオプションを指定ã—ã¦ä½œæˆã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .sp
 .RS 4
 .ie n \{\
@@ -825,7 +825,7 @@
 .IP \(bu 2.3
 .\}
 index\-<number>\&.html:
-\fI\-splitindex\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆºîÀ®¤µ¤ì¤¿º÷°ú¥Õ¥¡¥¤¥ë
+\fI\-splitindex\fRオプションを指定ã—ã¦ä½œæˆã•ã‚ŒãŸç´¢å¼•ãƒ•ã‚¡ã‚¤ãƒ«
 .RE
 .RE
 .sp
@@ -837,7 +837,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-list: ³°Éô»²¾È¤ò²ò·è¤¹¤ë¤¿¤á¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾
+package\-list: 外部å‚照を解決ã™ã‚‹ãŸã‚ã®ãƒ‘ッケージå
 .RE
 .sp
 .RS 4
@@ -848,7 +848,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-stylesheet\&.css: ¥Õ¥©¥ó¥È¡¢¿§¡¢°ÌÃ֤ʤɤòÄêµÁ¤·¤Þ¤¹
+stylesheet\&.css: フォントã€è‰²ã€ä½ç½®ãªã©ã‚’定義ã—ã¾ã™
 .RE
 .RE
 .sp
@@ -860,7 +860,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBjava\fR: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBjava\fR: パッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -870,7 +870,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapplet\fR: ¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBapplet\fR: サブパッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -881,7 +881,7 @@
 .IP \(bu 2.3
 .\}
 Applet\&.html:
-\fIApplet\fR¥¯¥é¥¹¡¦¥Ú¡¼¥¸
+\fIApplet\fRクラス・ページ
 .RE
 .sp
 .RS 4
@@ -893,7 +893,7 @@
 .IP \(bu 2.3
 .\}
 AppletContext\&.html:
-\fIAppletContext\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAppletContext\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -905,7 +905,7 @@
 .IP \(bu 2.3
 .\}
 AppletStub\&.html:
-\fIAppletStub\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAppletStub\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -917,7 +917,7 @@
 .IP \(bu 2.3
 .\}
 AudioClip\&.html:
-\fIAudioClip\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+\fIAudioClip\fRインタフェース
 .RE
 .sp
 .RS 4
@@ -928,7 +928,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-summary\&.html: ¥¯¥é¥¹¤È¥µ¥Þ¥ê¡¼
+package\-summary\&.html: クラスã¨ã‚µãƒžãƒªãƒ¼
 .RE
 .sp
 .RS 4
@@ -939,7 +939,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-frame\&.html: º¸²¼¤Î¥Õ¥ì¡¼¥à¤Ëɽ¼¨¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¡¦¥¯¥é¥¹
+package\-frame\&.html: 左下ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã«è¡¨ç¤ºã™ã‚‹ãƒ‘ッケージ・クラス
 .RE
 .sp
 .RS 4
@@ -950,7 +950,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-tree\&.html: ¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥¯¥é¥¹³¬ÁØ
+package\-tree\&.html: ã“ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹éšŽå±¤
 .RE
 .sp
 .RS 4
@@ -961,7 +961,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-package\-use\&.html: ¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬»ÈÍѤµ¤ì¤ë¾ì½ê
+package\-use\&.html: ã“ã®ãƒ‘ッケージãŒä½¿ç”¨ã•ã‚Œã‚‹å ´æ‰€
 .RE
 .sp
 .RS 4
@@ -972,7 +972,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBdoc\-files\fR: ¥¤¥á¡¼¥¸¤ª¤è¤Ó¥µ¥ó¥×¥ë¡¦¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê
+\fBdoc\-files\fR: イメージãŠã‚ˆã³ã‚µãƒ³ãƒ—ル・ファイルã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª
 .RE
 .sp
 .RS 4
@@ -983,18 +983,18 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBclass\-use\fR: ¥¤¥á¡¼¥¸¤ª¤è¤Ó¥µ¥ó¥×¥ë¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê
-.sp
-\- Applet\&.html: Applet¥¯¥é¥¹¤Î»ÈÍÑ
+\fBclass\-use\fR: イメージãŠã‚ˆã³ã‚µãƒ³ãƒ—ル・ファイルã®å ´æ‰€
+.sp
+\- Applet\&.html: Appletクラスã®ä½¿ç”¨
 .sp
 \- AppletContext\&.html:
-\fIAppletContext\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAppletContext\fRインタフェースã®ä½¿ç”¨
 .sp
 \- AppletStub\&.html:
-\fIAppletStub\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAppletStub\fRインタフェースã®ä½¿ç”¨
 .sp
 \- AudioClip\&.html:
-\fIAudioClip\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î»ÈÍÑ
+\fIAudioClip\fRインタフェースã®ä½¿ç”¨
 .RE
 .RE
 .RE
@@ -1007,7 +1007,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBsrc\-html\fR: ¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBsrc\-html\fR: ソース・コード・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -1017,7 +1017,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBjava\fR: ¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
+\fBjava\fR: パッケージ・ディレクトリ
 .sp
 .RS 4
 .ie n \{\
@@ -1027,24 +1027,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fBapplet\fR: ¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê
-.sp
-\- Applet\&.html: Applet¥½¡¼¥¹¡¦¥³¡¼¥É
+\fBapplet\fR: サブパッケージ・ディレクトリ
+.sp
+\- Applet\&.html: Appletソース・コード
 .sp
 \- AppletContext\&.html:
-\fIAppletContext\fR¥½¡¼¥¹¡¦¥³¡¼¥É
+\fIAppletContext\fRソース・コード
 .sp
 \- AppletStub\&.html:
-\fIAppletStub\fR¥½¡¼¥¹¡¦¥³¡¼¥É
+\fIAppletStub\fRソース・コード
 .sp
 \- AudioClip\&.html:
-\fIAudioClip\fR¥½¡¼¥¹¡¦¥³¡¼¥É
-.RE
-.RE
-.RE
-.SS "À¸À®¤µ¤ì¤ëAPIÀë¸À"
+\fIAudioClip\fRソース・コード
+.RE
+.RE
+.RE
+.SS "生æˆã•ã‚Œã‚‹API宣言"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥Õ¥£¡¼¥ë¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥á¥½¥Ã¥É¤Îµ­½Ò¤ÎºÇ½é¤Ë¡¢¤½¤ÎAPIÍѤÎÀë¸À¤òÀ¸À®¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIBoolean\fR¥¯¥é¥¹¤ÎÀë¸À¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãã‚Œãžã‚Œã®ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®è¨˜è¿°ã®æœ€åˆã«ã€ãã®API用ã®å®£è¨€ã‚’生æˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIBoolean\fRクラスã®å®£è¨€ã¯ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1058,7 +1058,7 @@
 .RE
 .\}
 .PP
-\fIBoolean\&.valueOf\fR¥á¥½¥Ã¥É¤ÎÀë¸À¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+\fIBoolean\&.valueOf\fRメソッドã®å®£è¨€ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1070,15 +1070,15 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢½¤¾þ»Ò\fIpublic\fR¡¢\fIprotected\fR¡¢\fIprivate\fR¡¢\fIabstract\fR¡¢\fIfinal\fR¡¢\fIstatic\fR¡¢\fItransient\fR¡¢¤ª¤è¤Ó\fIvolatile\fR¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢\fIsynchronized\fR¤ª¤è¤Ó\fInative\fR¤Ï¤Ç¤­¤Þ¤»¤ó¡£\fIsynchronized\fR¤ª¤è¤Ó\fInative\fR½¤¾þ»Ò¤Ï¡¢¼ÂÁõ¤Î¾ÜºÙ¤È¤ß¤Ê¤µ¤ì¤Æ¤¤¤ë¤¿¤á¡¢API»ÅÍͤˤϴޤޤì¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドã¯ã€ä¿®é£¾å­\fIpublic\fRã€\fIprotected\fRã€\fIprivate\fRã€\fIabstract\fRã€\fIfinal\fRã€\fIstatic\fRã€\fItransient\fRã€ãŠã‚ˆã³\fIvolatile\fRã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€\fIsynchronized\fRãŠã‚ˆã³\fInative\fRã¯ã§ãã¾ã›ã‚“。\fIsynchronized\fRãŠã‚ˆã³\fInative\fR修飾å­ã¯ã€å®Ÿè£…ã®è©³ç´°ã¨ã¿ãªã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€API仕様ã«ã¯å«ã¾ã‚Œã¾ã›ã‚“。
 .PP
-API¤Ç¤Ï¡¢Ê¹ÔÀ­¥»¥Þ¥ó¥Æ¥£¥¯¥¹¤Ë¤Ä¤¤¤Æ¡¢¥­¡¼¥ï¡¼¥É\fIsynchronized\fR¤Ë°Í¸¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¥³¥á¥ó¥È¤Î¼çÀâÌÀ¤È¤·¤Æ¥É¥­¥å¥á¥ó¥È²½¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¡Ö1¤Ä¤Îenumeration¤òÊ£¿ô¤Î¥¹¥ì¥Ã¥É¤«¤éʹԤ·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡×¤Î¤è¤¦¤Ëµ­½Ò¤·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤³¤ì¤é¤Î¥»¥Þ¥ó¥Æ¥£¥¯¥¹¤ò¼Â¸½¤¹¤ëÊýË¡¤òµ­½Ò¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fIHashtable\fR¥ª¥×¥·¥ç¥ó¤Ï¥¹¥ì¥Ã¥É¥»¡¼¥Õ¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¡Ö¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¤òƱ´ü²½¤·¤Æ¤½¤ì¤ò¼Â¸½¤¹¤ë¡×¤Î¤è¤¦¤Ë»ØÄꤹ¤ëº¬µò¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤è¤ê¹âÅÙ¤ÊʹÔÀ­¤Î¤¿¤á¤Ë¡¢¥Ð¥±¥Ã¥È¡¦¥ì¥Ù¥ë¤ÇÆâÉôŪ¤ËƱ´ü²½¤¹¤ë¸¢¸Â¤òÊÝÍ­¤·¤Æ¤ª¤¯¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
-.SH "¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È"
+APIã§ã¯ã€ä¸¦è¡Œæ€§ã‚»ãƒžãƒ³ãƒ†ã‚£ã‚¯ã‚¹ã«ã¤ã„ã¦ã€ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰\fIsynchronized\fRã«ä¾å­˜ã™ã‚‹ã®ã§ã¯ãªãã€ã‚³ãƒ¡ãƒ³ãƒˆã®ä¸»èª¬æ˜Žã¨ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ã€Œ1ã¤ã®enumerationを複数ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‹ã‚‰ä¸¦è¡Œã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã§ããªã„ã€ã®ã‚ˆã†ã«è¨˜è¿°ã—ã¾ã™ã€‚ドキュメントã«ã¯ã€ã“れらã®ã‚»ãƒžãƒ³ãƒ†ã‚£ã‚¯ã‚¹ã‚’実ç¾ã™ã‚‹æ–¹æ³•ã‚’記述ã—ãªã„ã§ãã ã•ã„。ãŸã¨ãˆã°ã€\fIHashtable\fRオプションã¯ã‚¹ãƒ¬ãƒƒãƒ‰ã‚»ãƒ¼ãƒ•ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ã€Œã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’åŒæœŸåŒ–ã—ã¦ãれを実ç¾ã™ã‚‹ã€ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹æ ¹æ‹ ã¯ã‚ã‚Šã¾ã›ã‚“。より高度ãªä¸¦è¡Œæ€§ã®ãŸã‚ã«ã€ãƒã‚±ãƒƒãƒˆãƒ»ãƒ¬ãƒ™ãƒ«ã§å†…部的ã«åŒæœŸåŒ–ã™ã‚‹æ¨©é™ã‚’ä¿æœ‰ã—ã¦ãŠãã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
+.SH "ドキュメンテーション・コメント"
 .PP
-¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥³¥á¥ó¥È¤È¥³¥á¥ó¥È¤Î·Ñ¾µ¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£
-.SS "¥½¡¼¥¹¡¦¥³¡¼¥É¡¦¥³¥á¥ó¥È"
+ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®ã‚³ãƒ¡ãƒ³ãƒˆã¨ã‚³ãƒ¡ãƒ³ãƒˆã®ç¶™æ‰¿ã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚
+.SS "ソース・コード・コメント"
 .PP
-¥½¡¼¥¹¡¦¥³¡¼¥É¤ÎǤ°Õ¤Î¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÎÀë¸À¤ÎÁ°¤Ë¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£³Æ¥Ñ¥Ã¥±¡¼¥¸¤Ë¤â¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¹½Ê¸¤Ï¼ã´³°Û¤Ê¤ê¤Þ¤¹¤¬¡¢³µÍפˤâ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢\fI/**\fR¤È¡¢½ª¤ï¤ê¤òɽ¤¹\fI*/\fR¤Î´Ö¤Ë¤¢¤ëʸ»ú¤«¤é¹½À®¤µ¤ì¤Þ¤¹¡£ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤Ï³Æ¹Ô¤Ç»ÈÍѤǤ­¡¢¼¡¤Î¹à¤Ç¾Ü¤·¤¯ÀâÌÀ¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£
+ソース・コードã®ä»»æ„ã®ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å®£è¨€ã®å‰ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚å„パッケージã«ã‚‚ドキュメンテーション・コメントを作æˆã§ãã¾ã™ã€‚構文ã¯è‹¥å¹²ç•°ãªã‚Šã¾ã™ãŒã€æ¦‚è¦ã«ã‚‚ドキュメンテーション・コメントを作æˆã§ãã¾ã™ã€‚ドキュメンテーション・コメントã¯ã€\fI/**\fRã¨ã€çµ‚ã‚りを表ã™\fI*/\fRã®é–“ã«ã‚る文字ã‹ã‚‰æ§‹æˆã•ã‚Œã¾ã™ã€‚先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã¯å„è¡Œã§ä½¿ç”¨ã§ãã€æ¬¡ã®é …ã§è©³ã—ã説明ã—ã¾ã™ã€‚コメントã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1093,7 +1093,7 @@
 .RE
 .\}
 .PP
-¥¹¥Ú¡¼¥¹¤òÀáÌ󤹤ë¤Ë¤Ï¡¢¥³¥á¥ó¥È¤ò1¹Ô¤ËÆþ¤ì¤Þ¤¹¡£
+スペースを節約ã™ã‚‹ã«ã¯ã€ã‚³ãƒ¡ãƒ³ãƒˆã‚’1è¡Œã«å…¥ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1104,10 +1104,10 @@
 .if n \{\
 .RE
 .\}
-¥³¥á¥ó¥È¤ÎÇÛÃÖ.PP
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥ÉÀë¸À¤ÎľÁ°¤ËÇÛÃÖ¤µ¤ì¤ë¾ì¹ç¤Ë¤Î¤ßǧ¼±¤µ¤ì¤Þ¤¹¡£¥á¥½¥Ã¥É¤ÎËÜÂΤËÃÖ¤«¤ì¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Àë¸Àʸ¤´¤È¤Ë1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤·¤«Ç§¼±¤·¤Þ¤»¤ó¡£¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コメントã®é…ç½®.PP
+ドキュメンテーション・コメントã¯ã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å®£è¨€ã®ç›´å‰ã«é…ç½®ã•ã‚Œã‚‹å ´åˆã«ã®ã¿èªè­˜ã•ã‚Œã¾ã™ã€‚メソッドã®æœ¬ä½“ã«ç½®ã‹ã‚Œã¦ã„るドキュメンテーション・コメントã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€å®£è¨€æ–‡ã”ã¨ã«1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã—ã‹èªè­˜ã—ã¾ã›ã‚“。タグを使用ã§ãる場所をå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¤è¤¯¤¢¤ë´Ö°ã¤¤¤Ï¡¢¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤È¥¯¥é¥¹Àë¸À¤Î´Ö¤Ë\fIimport\fRʸ¤òÃÖ¤¤¤Æ¤·¤Þ¤¦¤³¤È¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤ò̵»ë¤¹¤ë¤Î¤Ç¡¢\fIimport\fRʸ¤ò¤³¤Î¾ì½ê¤ËÇÛÃÖ¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+よãã‚ã‚‹é–“é•ã„ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¨ã‚¯ãƒ©ã‚¹å®£è¨€ã®é–“ã«\fIimport\fR文を置ã„ã¦ã—ã¾ã†ã“ã¨ã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã‚¯ãƒ©ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’無視ã™ã‚‹ã®ã§ã€\fIimport\fR文をã“ã®å ´æ‰€ã«é…ç½®ã—ãªã„ã§ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1124,8 +1124,8 @@
 .if n \{\
 .RE
 .\}
-¥³¥á¥ó¥È¤Î¥Ñ¡¼¥Ä.PP
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢¼çÀâÌÀ¤È¤½¤Î¸å¤Ë³¤¯¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¼çÀâÌÀ¤Ï¡¢³«»Ï¶èÀÚ¤êʸ»ú\fI/**\fR¤Ç»Ï¤Þ¤ê¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Þ¤Ç³¤­¤Þ¤¹¡£¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Ï¡¢ÀèƬʸ»ú¤¬\fI@\fR¤Î¹Ô¤ÇÄêµÁ¤µ¤ì¤ëºÇ½é¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤«¤é»Ï¤Þ¤ê¤Þ¤¹(ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¡¢¶õÇòʸ»ú¡¢ÀèƬ¤Î¶èÀÚ¤êʸ»ú\fI/**\fR¤Ï½ü¤¯)¡£¼çÀâÌÀ¤òµ­½Ò¤»¤º¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Î¤ß¤Î¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¼çÀâÌÀ¤Ï¡¢¥¿¥°¡¦¥»¥¯¥·¥ç¥ó°Ê¹ß¤Ë³¤±¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¥¿¥°¤Î°ú¿ô¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥¿¥°¤Î¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¡£²¿²ó¤âµ­½Ò¤Ç¤­¤ë¥¿¥°¤È¡¢1²ó¤·¤«µ­½Ò¤Ç¤­¤Ê¤¤¥¿¥°¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î\fI@see\fR¥¿¥°¤«¤é¥¿¥°¡¦¥»¥¯¥·¥ç¥ó¤Ï»Ï¤Þ¤ê¤Þ¤¹¡£
+コメントã®ãƒ‘ーツ.PP
+ドキュメンテーション・コメントã«ã¯ã€ä¸»èª¬æ˜Žã¨ãã®å¾Œã«ç¶šãタグ・セクションãŒå«ã¾ã‚Œã¾ã™ã€‚主説明ã¯ã€é–‹å§‹åŒºåˆ‡ã‚Šæ–‡å­—\fI/**\fRã§å§‹ã¾ã‚Šã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¾ã§ç¶šãã¾ã™ã€‚タグ・セクションã¯ã€å…ˆé ­æ–‡å­—ãŒ\fI@\fRã®è¡Œã§å®šç¾©ã•ã‚Œã‚‹æœ€åˆã®ãƒ–ロック・タグã‹ã‚‰å§‹ã¾ã‚Šã¾ã™(先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã€ç©ºç™½æ–‡å­—ã€å…ˆé ­ã®åŒºåˆ‡ã‚Šæ–‡å­—\fI/**\fRã¯é™¤ã)。主説明を記述ã›ãšã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ã¿ã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚主説明ã¯ã€ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ä»¥é™ã«ç¶šã‘ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。タグã®å¼•æ•°ã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ã‚¿ã‚°ã®æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“。何回も記述ã§ãã‚‹ã‚¿ã‚°ã¨ã€1回ã—ã‹è¨˜è¿°ã§ããªã„ã‚¿ã‚°ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®\fI@see\fRã‚¿ã‚°ã‹ã‚‰ã‚¿ã‚°ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¯å§‹ã¾ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1139,8 +1139,8 @@
 .if n \{\
 .RE
 .\}
-¥Ö¥í¥Ã¥¯¤ª¤è¤Ó¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°.PP
-¥¿¥°¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬½èÍý¤¹¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ÎÆüì¤Ê¥­¡¼¥ï¡¼¥É¤Ç¤¹¡£¥¿¥°¤Ë¤Ï2¤Ä¤Î¥¿¥¤¥×¤¬¤¢¤ê¤Þ¤¹¡£1¤Ä¤Ï\fI@tag\fR¥¿¥°¤Î¤è¤¦¤Ëɽµ­¤µ¤ì¤ë¥Ö¥í¥Ã¥¯¡¦¥¿¥°(¥¹¥¿¥ó¥É¥¢¥í¥ó¡¦¥¿¥°¤È¤â¸Æ¤Ð¤ì¤ë)¡¢¤â¤¦1¤Ä¤Ï\fI{@tag}\fR¥¿¥°¤Î¤è¤¦¤ËÃ楫¥Ã¥³¤Ç°Ï¤ó¤Çɽµ­¤µ¤ì¤ë¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ç¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤¬²ò¼á¤µ¤ì¤ë¤Ë¤Ï¡¢¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¡¢¶õÇòʸ»ú¡¢¶èÀÚ¤êʸ»ú(\fI/**\fR)¤ò½ü¤¤¤Æ¡¢¹Ô¤ÎÀèƬ¤ËÃÖ¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI@\fRʸ»ú¤ò¥Æ¥­¥¹¥ÈÆâ¤ÎÊ̤ξì½ê¤Ç»ÈÍѤ·¤Æ¤â¡¢¥¿¥°¤Î³«»Ï¤È¤·¤Æ²ò¼á¤µ¤ì¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£\fI@\fRʸ»ú¤ò»ÈÍѤ·¤Æ¹Ô¤ò³«»Ï¤·¤Æ¤â¡¢¤½¤ì¤¬²ò¼á¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢HTML¥¨¥ó¥Æ¥£¥Æ¥£\fI&#064;\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤½¤ì¤¾¤ì¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ë¤Ï¡¢´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥Æ¥­¥¹¥È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢¥¿¥°¤Î¸å¤«¤é¡¢¼¡¤Î¥¿¥°¤ÎÁ°¡¢¤Þ¤¿¤Ï¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ÎºÇ¸å¤Þ¤Ç¤Î´Ö¤Ëµ­½Ò¤µ¤ì¤¿¥Æ¥­¥¹¥È¤Ç¤¹(¥¿¥°¤Þ¤¿¤Ï¥³¥á¥ó¥È¶èÀÚ¤êʸ»ú¤ò½ü¤¯)¡£¤³¤Î´ØÏ¢¥Æ¥­¥¹¥È¤Ï¡¢Ê£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï¡¢¥Æ¥­¥¹¥È¤òµ­½Ò¤Ç¤­¤ë¾ì½ê¤Ç¤¢¤ì¤Ð¤É¤³¤Ë¤Ç¤âÃÖ¤¯¤³¤È¤¬¤Ç¤­¡¢²ò¼á¤µ¤ì¤Þ¤¹¡£¼¡¤ÎÎã¤Ë¤Ï¥Ö¥í¥Ã¥¯¡¦¥¿¥°\fI@deprecated\fR¤È¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°\fI{@link}\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£javadoc¥¿¥°¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ブロックãŠã‚ˆã³ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°.PP
+ã‚¿ã‚°ã¯ã€\fIjavadoc\fRコマンドãŒå‡¦ç†ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®ç‰¹æ®Šãªã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§ã™ã€‚ã‚¿ã‚°ã«ã¯2ã¤ã®ã‚¿ã‚¤ãƒ—ãŒã‚ã‚Šã¾ã™ã€‚1ã¤ã¯\fI@tag\fRã‚¿ã‚°ã®ã‚ˆã†ã«è¡¨è¨˜ã•ã‚Œã‚‹ãƒ–ロック・タグ(スタンドアロン・タグã¨ã‚‚呼ã°ã‚Œã‚‹)ã€ã‚‚ã†1ã¤ã¯\fI{@tag}\fRã‚¿ã‚°ã®ã‚ˆã†ã«ä¸­ã‚«ãƒƒã‚³ã§å›²ã‚“ã§è¡¨è¨˜ã•ã‚Œã‚‹ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã§ã™ã€‚ブロック・タグãŒè§£é‡ˆã•ã‚Œã‚‹ã«ã¯ã€è¡Œé ­ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã€ç©ºç™½æ–‡å­—ã€åŒºåˆ‡ã‚Šæ–‡å­—(\fI/**\fR)を除ã„ã¦ã€è¡Œã®å…ˆé ­ã«ç½®ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€\fI@\fR文字をテキスト内ã®åˆ¥ã®å ´æ‰€ã§ä½¿ç”¨ã—ã¦ã‚‚ã€ã‚¿ã‚°ã®é–‹å§‹ã¨ã—ã¦è§£é‡ˆã•ã‚Œãªã„ã“ã¨ã‚’æ„味ã—ã¦ã„ã¾ã™ã€‚\fI@\fR文字を使用ã—ã¦è¡Œã‚’開始ã—ã¦ã‚‚ã€ãã‚ŒãŒè§£é‡ˆã•ã‚Œãªã„よã†ã«ã™ã‚‹ã«ã¯ã€HTMLエンティティ\fI&#064;\fRを使用ã—ã¾ã™ã€‚ãã‚Œãžã‚Œã®ãƒ–ロック・タグã«ã¯ã€é–¢é€£ä»˜ã‘られãŸãƒ†ã‚­ã‚¹ãƒˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚¿ã‚°ã®å¾Œã‹ã‚‰ã€æ¬¡ã®ã‚¿ã‚°ã®å‰ã€ã¾ãŸã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®æœ€å¾Œã¾ã§ã®é–“ã«è¨˜è¿°ã•ã‚ŒãŸãƒ†ã‚­ã‚¹ãƒˆã§ã™(ã‚¿ã‚°ã¾ãŸã¯ã‚³ãƒ¡ãƒ³ãƒˆåŒºåˆ‡ã‚Šæ–‡å­—を除ã)。ã“ã®é–¢é€£ãƒ†ã‚­ã‚¹ãƒˆã¯ã€è¤‡æ•°è¡Œã«ã‚ãŸã£ã¦è¨˜è¿°ã§ãã¾ã™ã€‚インライン・タグã¯ã€ãƒ†ã‚­ã‚¹ãƒˆã‚’記述ã§ãる場所ã§ã‚ã‚Œã°ã©ã“ã«ã§ã‚‚ç½®ãã“ã¨ãŒã§ãã€è§£é‡ˆã•ã‚Œã¾ã™ã€‚次ã®ä¾‹ã«ã¯ãƒ–ロック・タグ\fI@deprecated\fRã¨ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°\fI{@link}\fRãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚javadocã‚¿ã‚°ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1153,10 +1153,10 @@
 .if n \{\
 .RE
 .\}
-HTML¤Ç¤Î¥³¥á¥ó¥È¤Îµ­½Ò.PP
-¥Æ¥­¥¹¥È¤ÏHTML¥¨¥ó¥Æ¥£¥Æ¥£¤ÈHTML¥¿¥°¤ò»ÈÍѤ·¤ÆHTML¤Çµ­½Ò¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ÈÍѤ¹¤ë¥Ö¥é¥¦¥¶¤¬¥µ¥Ý¡¼¥È¤¹¤ëǤ°Õ¤ÎHTML¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¥«¥¹¥±¡¼¥Ç¥£¥ó¥°¡¦¥¹¥¿¥¤¥ë¡¦¥·¡¼¥È¤ª¤è¤Ó¥Õ¥ì¡¼¥à¤ò´Þ¤á¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È°Ê³°¤ÎÉôʬ¤ÇHTML 3\&.2¤Ë½àµò¤·¤¿¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£¥Õ¥ì¡¼¥à¡¦¥»¥Ã¥È¤Î¤¿¤á¡¢À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¤ÏHTML 4\&.0¤¬¿ä¾©¤µ¤ì¤Þ¤¹¡£
+HTMLã§ã®ã‚³ãƒ¡ãƒ³ãƒˆã®è¨˜è¿°.PP
+テキストã¯HTMLエンティティã¨HTMLタグを使用ã—ã¦HTMLã§è¨˜è¿°ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚使用ã™ã‚‹ãƒ–ラウザãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹ä»»æ„ã®HTMLã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã§ãã¾ã™ã€‚標準ドックレットã¯ã€ã‚«ã‚¹ã‚±ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ãƒ»ã‚·ãƒ¼ãƒˆãŠã‚ˆã³ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’å«ã‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆä»¥å¤–ã®éƒ¨åˆ†ã§HTML 3\&.2ã«æº–æ‹ ã—ãŸã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚フレーム・セットã®ãŸã‚ã€ç”Ÿæˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯HTML 4\&.0ãŒæŽ¨å¥¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¤è¤ê¾®¤µ¤¤µ­¹æ(<)¤ª¤è¤Ó¤è¤êÂ礭¤¤µ­¹æ(>)¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR¤Èµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Æ±Íͤˡ¢¥¢¥ó¥Ñ¥µ¥ó¥É(&)¤Ï\fI&amp;\fR¤Èµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢ÂÀ»ú¤ÎHTML¥¿¥°\fI<b>\fR¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ã‚ˆã‚Šå°ã•ã„記å·(<)ãŠã‚ˆã³ã‚ˆã‚Šå¤§ãã„記å·(>)ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fRã¨è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚åŒæ§˜ã«ã€ã‚¢ãƒ³ãƒ‘サンド(&)ã¯\fI&amp;\fRã¨è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€å¤ªå­—ã®HTMLã‚¿ã‚°\fI<b>\fRを使用ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1170,12 +1170,12 @@
 .if n \{\
 .RE
 .\}
-ÀèƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î²òÀÏ»þ¤Ë¡¢³Æ¹Ô¤ÎÀèƬ¤Ë¤¢¤ë¥¢¥¹¥¿¥ê¥¹¥¯(*)ʸ»ú¤ÏÇË´þ¤µ¤ì¤Þ¤¹¡£ºÇ½é¤Î¥¢¥¹¥¿¥ê¥¹¥¯(*)ʸ»ú¤è¤êÁ°¤Ë¤¢¤ë¶õÇò¤ä¥¿¥Ö¤âÇË´þ¤µ¤ì¤Þ¤¹¡£¹ÔƬ¤Î¥¢¥¹¥¿¥ê¥¹¥¯¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥¤¥ó¥Ç¥ó¥È¤òÊÝ»ý¤·¤¿¤Þ¤Þ¤Ç¥µ¥ó¥×¥ë¡¦¥³¡¼¥É¤ò\fI<PRE>\fR¥¿¥°Æâ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËľÀÜŽ¤êÉÕ¤±¤é¤ì¤ë¤è¤¦¤Ë¡¢ÀèƬ¤Î¶õÇòʸ»ú¤Ïºï½ü¤µ¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£¥Ö¥é¥¦¥¶¤Ï¡¢¶õÇòʸ»ú¤ò¥¿¥Ö¤è¤ê¤â°ìΧ¤Ë²ò¼á¤·¤Þ¤¹¡£¥¤¥ó¥Ç¥ó¥È¤Îµ¯ÅÀ¤Ï(¶èÀÚ¤êʸ»ú\fI/**\fR¤Þ¤¿¤Ï\fI<PRE>\fR¥¿¥°¤Ç¤Ï¤Ê¤¯)º¸¥Þ¡¼¥¸¥ó¤Ë¤Ê¤ê¤Þ¤¹¡£
-ºÇ½é¤Îʸ.PP
-³Æ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ÎºÇ½é¤Îʸ¤Ï¡¢Àë¸À¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´Ø¤¹¤ë´Ê·é¤«¤Ä´°Á´¤Ê¥µ¥Þ¥ê¡¼Ê¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Îʸ¤Ï¡¢¶õÇò¡¢¥¿¥Ö¡¢¤Þ¤¿¤Ï¹Ô½ªÎ»Ê¸»ú¤¬Â³¤¯ºÇ½é¤Î¥Ô¥ê¥ª¥É¡¢¤Þ¤¿¤ÏºÇ½é¤Î¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤¬¤¢¤ë°ÌÃ֤ǽª¤ï¤ê¤Þ¤¹¡£ºÇ½é¤Îʸ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆHTML¥Ú¡¼¥¸¤ÎÀèƬ¤Ë¤¢¤ë¥á¥ó¥Ð¡¼¤Î¥µ¥Þ¥ê¡¼¤ÎÉôʬ¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-Ê£¿ô¥Õ¥£¡¼¥ë¥É¤ÎÀë¸À.PP
-Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢1¤Ä¤Îʸ¤ÇÊ£¿ô¤Î¥Õ¥£¡¼¥ë¥É¤òÀë¸À¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Îʸ¤Ë¤Ï¡¢1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤·¤«µ­½Ò¤Ç¤­¤Þ¤»¤ó¡£¤½¤Î¥³¥á¥ó¥È¤¬¡¢¤¹¤Ù¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤Æ¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¥Õ¥£¡¼¥ë¥É¤´¤È¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢³Æ¥Õ¥£¡¼¥ë¥É¤òÊÌ¡¹¤Îʸ¤ÇÀë¸À¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢1¤Ä¤ÎÀë¸À¤È¤·¤Æµ­½Ò¤¹¤ë¤ÈÉÔŬÀڤǤ¹¡£¤³¤Î¾ì¹ç¤Ï¡¢Àë¸À¤ò2¤Ä¤Ëʬ¤±¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+先頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯.PP
+\fIjavadoc\fRコマンドã«ã‚ˆã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®è§£æžæ™‚ã«ã€å„è¡Œã®å…ˆé ­ã«ã‚るアスタリスク(*)文字ã¯ç ´æ£„ã•ã‚Œã¾ã™ã€‚最åˆã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)文字よりå‰ã«ã‚る空白やタブも破棄ã•ã‚Œã¾ã™ã€‚行頭ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’çœç•¥ã—ãŸå ´åˆã€ã‚¤ãƒ³ãƒ‡ãƒ³ãƒˆã‚’ä¿æŒã—ãŸã¾ã¾ã§ã‚µãƒ³ãƒ—ル・コードを\fI<PRE>\fRタグ内ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ç›´æŽ¥è²¼ã‚Šä»˜ã‘られるよã†ã«ã€å…ˆé ­ã®ç©ºç™½æ–‡å­—ã¯å‰Šé™¤ã•ã‚Œãªããªã‚Šã¾ã™ã€‚ブラウザã¯ã€ç©ºç™½æ–‡å­—をタブよりも一律ã«è§£é‡ˆã—ã¾ã™ã€‚インデントã®èµ·ç‚¹ã¯(区切り文字\fI/**\fRã¾ãŸã¯\fI<PRE>\fRã‚¿ã‚°ã§ã¯ãªã)左マージンã«ãªã‚Šã¾ã™ã€‚
+最åˆã®æ–‡.PP
+å„ドキュメンテーション・コメントã®æœ€åˆã®æ–‡ã¯ã€å®£è¨€ã•ã‚Œã¦ã„るエンティティã«é–¢ã™ã‚‹ç°¡æ½”ã‹ã¤å®Œå…¨ãªã‚µãƒžãƒªãƒ¼æ–‡ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®æ–‡ã¯ã€ç©ºç™½ã€ã‚¿ãƒ–ã€ã¾ãŸã¯è¡Œçµ‚了文字ãŒç¶šã最åˆã®ãƒ”リオドã€ã¾ãŸã¯æœ€åˆã®ãƒ–ロック・タグãŒã‚ã‚‹ä½ç½®ã§çµ‚ã‚ã‚Šã¾ã™ã€‚最åˆã®æ–‡ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦HTMLページã®å…ˆé ­ã«ã‚るメンãƒãƒ¼ã®ã‚µãƒžãƒªãƒ¼ã®éƒ¨åˆ†ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+複数フィールドã®å®£è¨€.PP
+Javaプラットフォームã§ã¯ã€1ã¤ã®æ–‡ã§è¤‡æ•°ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’宣言ã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®æ–‡ã«ã¯ã€1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã—ã‹è¨˜è¿°ã§ãã¾ã›ã‚“。ãã®ã‚³ãƒ¡ãƒ³ãƒˆãŒã€ã™ã¹ã¦ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¯¾ã—ã¦ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚フィールドã”ã¨ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€å„フィールドを別々ã®æ–‡ã§å®£è¨€ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€1ã¤ã®å®£è¨€ã¨ã—ã¦è¨˜è¿°ã™ã‚‹ã¨ä¸é©åˆ‡ã§ã™ã€‚ã“ã®å ´åˆã¯ã€å®£è¨€ã‚’2ã¤ã«åˆ†ã‘ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1191,7 +1191,7 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¾å¤Î¥³¡¼¥É¤«¤é¼¡¤Î¤è¤¦¤Ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ä¸Šã®ã‚³ãƒ¼ãƒ‰ã‹ã‚‰æ¬¡ã®ã‚ˆã†ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1216,27 +1216,27 @@
 .\}
 .PP
 The horizontal and vertical distances of point (x, y)\&.
-¥Ø¥Ã¥À¡¼¡¦¥¿¥°¤Î»ÈÍÑ.PP
-¥á¥ó¥Ð¡¼¤ËÂФ·¤Æ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤È¤­¤Ë¤Ï¡¢\fI<H1>\fR¤ä\fI<H2>\fR¤Ê¤É¤ÎHTML¸«½Ð¤·¥¿¥°¤ò»ÈÍѤ·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´°Á´¤Ê¹½Â¤²½¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤¹¤ë¤Î¤Ç¡¢¤³¤Î¤è¤¦¤Ê¹½Â¤²½¥¿¥°¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤È¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Î·Á¼°¤¬°­±Æ¶Á¤ò¼õ¤±¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥¯¥é¥¹¤ä¥Ñ¥Ã¥±¡¼¥¸¤Î¥³¥á¥ó¥È¤Ç¤Ï¡¢¤³¤ì¤é¤Î¸«½Ð¤·¤ò»ÈÍѤ·¤ÆÆȼ«¤Î¹½Â¤¤ò»ØÄꤷ¤Æ¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.SS "¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ"
+ヘッダー・タグã®ä½¿ç”¨.PP
+メンãƒãƒ¼ã«å¯¾ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’記述ã™ã‚‹ã¨ãã«ã¯ã€\fI<H1>\fRã‚„\fI<H2>\fRãªã©ã®HTML見出ã—タグを使用ã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€å®Œå…¨ãªæ§‹é€ åŒ–ドキュメントを作æˆã™ã‚‹ã®ã§ã€ã“ã®ã‚ˆã†ãªæ§‹é€ åŒ–ã‚¿ã‚°ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ã¨ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å½¢å¼ãŒæ‚ªå½±éŸ¿ã‚’å—ã‘ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ã‚¯ãƒ©ã‚¹ã‚„パッケージã®ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ã“れらã®è¦‹å‡ºã—を使用ã—ã¦ç‹¬è‡ªã®æ§‹é€ ã‚’指定ã—ã¦ã‹ã¾ã„ã¾ã›ã‚“。
+.SS "メソッド・コメントã®ç¶™æ‰¿"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤·¤Æ¡¢·çÍ¤¿¥Æ¥­¥¹¥È¤òÆþÎϤ·¤¿¤ê¡¢ÌÀ¼¨Åª¤Ë¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥Õ¥£¡¼¥ë¥É¡¢¤ª¤è¤Ó¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò·Ñ¾µ¤·¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドã§ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã—ã¦ã€æ¬ è½ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’入力ã—ãŸã‚Šã€æ˜Žç¤ºçš„ã«ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚コンストラクタã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ãŠã‚ˆã³ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ã—ã¾ã›ã‚“。
 .PP
-\fBÃí°Õ:\fR
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò¥³¥Ô¡¼¤ËÍøÍѤ¹¤ë¤Ë¤Ï¡¢·Ñ¾µ¤·¤¿¥á¥½¥Ã¥É¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤¿¥Ñ¥¹¤Î¤ß¤ËÃÖ¤«¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢¥¯¥é¥¹¤â¥Ñ¥Ã¥±¡¼¥¸¤âÅϤ¹É¬ÍפϤ¢¤ê¤Þ¤»¤ó¡£¤³¤ÎÅÀ¤Ï¥ê¥ê¡¼¥¹1\&.3\&.\fIn\fR°ÊÁ°¤È¤ÏÂоÈŪ¤Ç¤¹¡£¤³¤ì¤Þ¤Ç¤Ï¡¢¥¯¥é¥¹¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Ç¤¢¤ë¤³¤È¤¬É¬ÍפǤ·¤¿¡£
-·çÍî¥Æ¥­¥¹¥È¤ÎÆþÎÏ.PP
-¼çÀâÌÀ¡¢¤Þ¤¿¤Ï\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¤¬¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤«¤é·çÍ¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Âбþ¤¹¤ë¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¡¦¥³¥á¥ó¥È¤ò¡¢¤½¤ì¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Þ¤¿¤Ï¼ÂÁõ¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É(¤¢¤ë¾ì¹ç)¤«¤é¥³¥Ô¡¼¤·¤Þ¤¹¡£¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+ドキュメンテーション・コメントをコピーã«åˆ©ç”¨ã™ã‚‹ã«ã¯ã€ç¶™æ‰¿ã—ãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fI\-sourcepath\fRオプションã§æŒ‡å®šã—ãŸãƒ‘スã®ã¿ã«ç½®ã‹ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§ã€ã‚¯ãƒ©ã‚¹ã‚‚パッケージも渡ã™å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ç‚¹ã¯ãƒªãƒªãƒ¼ã‚¹1\&.3\&.\fIn\fR以å‰ã¨ã¯å¯¾ç…§çš„ã§ã™ã€‚ã“ã‚Œã¾ã§ã¯ã€ã‚¯ãƒ©ã‚¹ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã§ã‚ã‚‹ã“ã¨ãŒå¿…è¦ã§ã—ãŸã€‚
+欠è½ãƒ†ã‚­ã‚¹ãƒˆã®å…¥åŠ›.PP
+主説明ã€ã¾ãŸã¯\fI@return\fRã€\fI@param\fRã€\fI@throws\fRã‚¿ã‚°ãŒãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‹ã‚‰æ¬ è½ã—ã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€å¯¾å¿œã™ã‚‹ä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’ã€ãã‚ŒãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã¾ãŸã¯å®Ÿè£…ã—ã¦ã„るメソッド(ã‚ã‚‹å ´åˆ)ã‹ã‚‰ã‚³ãƒ”ーã—ã¾ã™ã€‚メソッド・コメントã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-ÆÃÄê¤Î¥Ñ¥é¥á¡¼¥¿¤Î\fI@param\fR¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¤½¤Î¥Ñ¥é¥á¡¼¥¿¤Î¥³¥á¥ó¥È¤¬¡¢¾å°Ì¤Î·Ñ¾µ³¬ÁؤΥ᥽¥Ã¥É¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£ÆÃÄê¤ÎÎã³°¤Î\fI@throws\fR¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¤½¤ÎÎã³°¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤«¤®¤ê¡¢\fI@throws\fR¥¿¥°¤¬¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+特定ã®ãƒ‘ラメータã®\fI@param\fRã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ãã®ãƒ‘ラメータã®ã‚³ãƒ¡ãƒ³ãƒˆãŒã€ä¸Šä½ã®ç¶™æ‰¿éšŽå±¤ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚特定ã®ä¾‹å¤–ã®\fI@throws\fRã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ãã®ä¾‹å¤–ãŒå®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ã‹ãŽã‚Šã€\fI@throws\fRã‚¿ã‚°ãŒã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .PP
-¤³¤ÎÆ°ºî¤Ï¥ê¥ê¡¼¥¹1\&.3°ÊÁ°¤ÎÆ°ºî¤È¤ÏÂоÈŪ¤Ç¤¹¡£¤³¤ì¤Þ¤Ç¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï¡¢¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¤¬Â¸ºß¤¹¤ì¤Ð¡¢¥³¥á¥ó¥È¤Ï°ìÀڷѾµ¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£
+ã“ã®å‹•ä½œã¯ãƒªãƒªãƒ¼ã‚¹1\&.3以å‰ã®å‹•ä½œã¨ã¯å¯¾ç…§çš„ã§ã™ã€‚ã“ã‚Œã¾ã§ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ã€ä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãŒå­˜åœ¨ã™ã‚Œã°ã€ã‚³ãƒ¡ãƒ³ãƒˆã¯ä¸€åˆ‡ç¶™æ‰¿ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚
 .PP
-javadoc¥¿¥°¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-ÌÀ¼¨Åª¤Ê·Ñ¾µ.PP
-\fI{@inheritDoc}\fR¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò¥á¥½¥Ã¥É¤Î¼çÀâÌÀ¤Þ¤¿¤Ï\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¡¦¥³¥á¥ó¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£Âбþ¤¹¤ë·Ñ¾µ¤µ¤ì¤¿¼çÀâÌÀ¤Þ¤¿¤Ï¥¿¥°¡¦¥³¥á¥ó¥È¤Ï¡¢¤½¤Î¾ì½ê¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-.SS "¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î·Ñ¾µ"
+javadocã‚¿ã‚°ãŠã‚ˆã³ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+明示的ãªç¶™æ‰¿.PP
+\fI{@inheritDoc}\fRインライン・タグをメソッドã®ä¸»èª¬æ˜Žã¾ãŸã¯\fI@return\fRã€\fI@param\fRã€\fI@throws\fRタグ・コメントã«æŒ¿å…¥ã—ã¾ã™ã€‚対応ã™ã‚‹ç¶™æ‰¿ã•ã‚ŒãŸä¸»èª¬æ˜Žã¾ãŸã¯ã‚¿ã‚°ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€ãã®å ´æ‰€ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+.SS "クラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ç¶™æ‰¿"
 .PP
-¥³¥á¥ó¥È¤Î·Ñ¾µ¤Ï¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¤Î·Ñ¾µ¤Î¡¢¹Í¤¨¤é¤ì¤ë¤¹¤Ù¤Æ¤Î¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£
+コメントã®ç¶™æ‰¿ã¯ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã®ç¶™æ‰¿ã®ã€è€ƒãˆã‚‰ã‚Œã‚‹ã™ã¹ã¦ã®å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1246,7 +1246,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¾ì¹ç
+クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¹ãƒ¼ãƒ‘ークラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .sp
 .RS 4
@@ -1257,7 +1257,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤¬¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¾ì¹ç
+インタフェースã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¹ãƒ¼ãƒ‘ーインタフェースã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .sp
 .RS 4
@@ -1268,15 +1268,15 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¾ì¹ç
+クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実装ã—ã¦ã„ã‚‹å ´åˆ
 .RE
 .PP
-ºÇ½é¤Î2¤Ä¤Î¥±¡¼¥¹¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥ÈÆâ¤Ë\fI¡Ö¥ª¡¼¥Ð¡¼¥é¥¤¥É¡×\fR¤È¤¤¤¦¾®¸«½Ð¤·¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤¬·Ñ¾µ¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+最åˆã®2ã¤ã®ã‚±ãƒ¼ã‚¹ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã«\fI「オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã€\fRã¨ã„ã†å°è¦‹å‡ºã—を生æˆã—ã¾ã™ã€‚コメントãŒç¶™æ‰¿ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¦ã„るメソッドã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
-3¤ÄÌܤΥ±¡¼¥¹(ÆÃÄê¤Î¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤¬¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¾ì¹ç)¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥ÈÆâ¤Ë\fI¡ÖÄêµÁ¡×\fR¤È¤¤¤¦¾®¸«½Ð¤·¤òÀ¸À®¤·¤Þ¤¹¡£¥³¥á¥ó¥È¤¬·Ñ¾µ¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤º¡¢¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
-.SS "¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î¥¢¥ë¥´¥ê¥º¥à"
+3ã¤ç›®ã®ã‚±ãƒ¼ã‚¹(特定ã®ã‚¯ãƒ©ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’実装ã—ã¦ã„ã‚‹å ´åˆ)ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã„るメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã«\fI「定義ã€\fRã¨ã„ã†å°è¦‹å‡ºã—を生æˆã—ã¾ã™ã€‚コメントãŒç¶™æ‰¿ã•ã‚Œã¦ã„ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšã€å®Ÿè£…ã•ã‚Œã¦ã„るメソッドã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¾ã™ã€‚
+.SS "メソッド・コメントã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ "
 .PP
-¥á¥½¥Ã¥É¤Ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¤Ê¤¤¡¢¤Þ¤¿¤Ï\fI{@inheritDoc}\fR¥¿¥°¤¬¤¢¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¼¡¤Î¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤ÆŬÍѤǤ­¤ë¥³¥á¥ó¥È¤ò¸¡º÷¤·¤Þ¤¹¡£¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢ºÇ¤âÆÃÄꤵ¤ì¤ëŬÍѲÄǽ¤Ê¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òõ¤·¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤è¤ê¤â¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÍ¥À褹¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤Þ¤¹¡£
+メソッドã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒãªã„ã€ã¾ãŸã¯\fI{@inheritDoc}\fRã‚¿ã‚°ãŒã‚ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯æ¬¡ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¦é©ç”¨ã§ãるコメントを検索ã—ã¾ã™ã€‚アルゴリズムã¯ã€æœ€ã‚‚特定ã•ã‚Œã‚‹é©ç”¨å¯èƒ½ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’探ã—ã€ã‚¹ãƒ¼ãƒ‘ークラスよりもインタフェースを優先ã™ã‚‹ã‚ˆã†ã«è¨­è¨ˆã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1286,7 +1286,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-ľÀܤ˼ÂÁõ¤µ¤ì¤Æ¤¤¤ë(¤Þ¤¿¤Ï¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë)¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¡¢¥á¥½¥Ã¥É¤ÎÀë¸À¤Ç\fIimplements\fR(¤Þ¤¿¤Ï\fIextends\fR)¤È¤¤¤¦¸ì¤Î¸å¤Ë½Ð¸½¤¹¤ë½ç½ø¤Ç¡¢1¤Ä¤º¤ÄÄ´¤Ù¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤ÆºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òºÎÍѤ·¤Þ¤¹¡£
+直接ã«å®Ÿè£…ã•ã‚Œã¦ã„ã‚‹(ã¾ãŸã¯ã€æ‹¡å¼µã•ã‚Œã¦ã„ã‚‹)インタフェースをã€ãƒ¡ã‚½ãƒƒãƒ‰ã®å®£è¨€ã§\fIimplements\fR(ã¾ãŸã¯\fIextends\fR)ã¨ã„ã†èªžã®å¾Œã«å‡ºç¾ã™ã‚‹é †åºã§ã€1ã¤ãšã¤èª¿ã¹ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¤ã„ã¦æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’採用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1297,7 +1297,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¼ê½ç1¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢Ä¾ÀܼÂÁõ¤µ¤ì¤Æ¤¤¤ë(¤Þ¤¿¤Ï¡¢³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë)¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤½¤ì¤¾¤ì¤ËÂФ·¤Æ¡¢¤³¤Î¥¢¥ë¥´¥ê¥º¥àÁ´ÂΤòºÆµ¢Åª¤ËŬÍѤ·¤Þ¤¹(¤½¤ÎºÝ¤Î½ç½ø¤Ï¡¢¼ê½ç1¤Ç¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ´¤Ù¤¿¤È¤­¤Î½ç½ø¤ÈƱ¤¸)¡£
+手順1ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã¯ã€ç›´æŽ¥å®Ÿè£…ã•ã‚Œã¦ã„ã‚‹(ã¾ãŸã¯ã€æ‹¡å¼µã•ã‚Œã¦ã„ã‚‹)インタフェースã®ãã‚Œãžã‚Œã«å¯¾ã—ã¦ã€ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ å…¨ä½“ã‚’å†å¸°çš„ã«é©ç”¨ã—ã¾ã™(ãã®éš›ã®é †åºã¯ã€æ‰‹é †1ã§ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’調ã¹ãŸã¨ãã®é †åºã¨åŒã˜)。
 .RE
 .sp
 .RS 4
@@ -1308,7 +1308,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¼ê½ç2¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ç¡¢¤³¤Î¥¯¥é¥¹¤¬\fIObject\fR°Ê³°¤Î¥¯¥é¥¹¤Ç¤¢¤ë¤¬¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë½èÍý¤·¤Þ¤¹¡£
+手順2ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã§ã€ã“ã®ã‚¯ãƒ©ã‚¹ãŒ\fIObject\fR以外ã®ã‚¯ãƒ©ã‚¹ã§ã‚ã‚‹ãŒã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«å‡¦ç†ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1318,7 +1318,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ë¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤Î¥³¥á¥ó¥È¤òºÎÍѤ·¤Þ¤¹¡£
+スーパークラスã«ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¤ã„ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¨˜è¿°ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’採用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1329,14 +1329,14 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¼ê½ç3a¤Ç¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤ËÂФ·¤Æ¡¢¤³¤Î¥¢¥ë¥´¥ê¥º¥àÁ´ÂΤòºÆµ¢Åª¤ËŬÍѤ·¤Þ¤¹¡£
-.RE
-.RE
-.SH "JAVADOC¥¿¥°"
+手順3aã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆãŒè¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸå ´åˆã¯ã€ã‚¹ãƒ¼ãƒ‘ークラスã«å¯¾ã—ã¦ã€ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ å…¨ä½“ã‚’å†å¸°çš„ã«é©ç”¨ã—ã¾ã™ã€‚
+.RE
+.RE
+.SH "JAVADOCã‚¿ã‚°"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ËËä¤á¹þ¤Þ¤ì¤¿ÆÃÊ̤ʥ¿¥°¤ò²òÀϤ·¤Þ¤¹¡£\fIjavadoc\fR¥¿¥°¤ò»ÈÍѤ¹¤ë¤È¡¢´°Á´¤ÊÀ°·Á¼°¤ÎAPI¤ò¥½¡¼¥¹¡¦¥³¡¼¥É¤«¤é¼«Æ°Åª¤ËÀ¸À®¤Ç¤­¤Þ¤¹¡£¥¿¥°¤Ï¥¢¥Ã¥È¥Þ¡¼¥¯µ­¹æ(\fI@\fR)¤Ç»Ï¤Þ¤ê¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢É½¼¨¤µ¤ì¤Æ¤¤¤ë¤È¤ª¤ê¤ËÂçʸ»ú¤È¾®Ê¸»ú¤ò»ÈÍѤ·¤ÆÆþÎϤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¿¥°¤Ï¡¢¹Ô¤ÎÀèƬ(ÀèƬ¤Î¶õÇòʸ»ú¤È¾Êά²Äǽ¤Ê¥¢¥¹¥¿¥ê¥¹¥¯¤Î¸å)¤ËÃÖ¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤·¤Ê¤¤¤È¡¢¥Æ¥­¥¹¥È¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£´·Îã¤È¤·¤Æ¡¢Æ±¤¸Ì¾Á°¤Î¥¿¥°¤Ï1²Õ½ê¤Ë¤Þ¤È¤á¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see\fR¥¿¥°¤¬Ê£¿ô¤¢¤ë¾ì¹ç¤Ï¡¢¤¹¤Ù¤ÆƱ¤¸¾ì½ê¤Ë¤Þ¤È¤á¤ÆÇÛÃÖ¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯ã€Javaã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç‰¹åˆ¥ãªã‚¿ã‚°ã‚’解æžã—ã¾ã™ã€‚\fIjavadoc\fRタグを使用ã™ã‚‹ã¨ã€å®Œå…¨ãªæ•´å½¢å¼ã®APIをソース・コードã‹ã‚‰è‡ªå‹•çš„ã«ç”Ÿæˆã§ãã¾ã™ã€‚ã‚¿ã‚°ã¯ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯è¨˜å·(\fI@\fR)ã§å§‹ã¾ã‚Šã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚¿ã‚°ã¯ã€è¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã¨ãŠã‚Šã«å¤§æ–‡å­—ã¨å°æ–‡å­—を使用ã—ã¦å…¥åŠ›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã‚¿ã‚°ã¯ã€è¡Œã®å…ˆé ­(先頭ã®ç©ºç™½æ–‡å­—ã¨çœç•¥å¯èƒ½ãªã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã®å¾Œ)ã«ç½®ãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã—ãªã„ã¨ã€ãƒ†ã‚­ã‚¹ãƒˆã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚慣例ã¨ã—ã¦ã€åŒã˜åå‰ã®ã‚¿ã‚°ã¯1箇所ã«ã¾ã¨ã‚ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see\fRã‚¿ã‚°ãŒè¤‡æ•°ã‚ã‚‹å ´åˆã¯ã€ã™ã¹ã¦åŒã˜å ´æ‰€ã«ã¾ã¨ã‚ã¦é…ç½®ã—ã¾ã™ã€‚詳細ã¯ã€ã‚¿ã‚°ã‚’使用ã§ãる場所をå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¥¿¥°¤Ë¤Ï¡¢¼¡¤Î¥¿¥¤¥×¤¬¤¢¤ê¤Þ¤¹¡£
+ã‚¿ã‚°ã«ã¯ã€æ¬¡ã®ã‚¿ã‚¤ãƒ—ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1346,7 +1346,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ö¥í¥Ã¥¯¡¦¥¿¥°: ¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¼çÀâÌÀ¤Ë³¤¯¥¿¥°¡¦¥»¥¯¥·¥ç¥óÆâ¤Ë¤Î¤ßÇÛÃÖ¤·¤Þ¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Ï¡¢\fI@tag\fR¤Î·Á¼°¤ò¤È¤ê¤Þ¤¹¡£
+ブロック・タグ: ブロック・タグã¯ä¸»èª¬æ˜Žã«ç¶šãタグ・セクション内ã«ã®ã¿é…ç½®ã—ã¾ã™ã€‚ブロック・タグã¯ã€\fI@tag\fRã®å½¢å¼ã‚’ã¨ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1357,52 +1357,52 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°: ¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï¼çÀâÌÀÆâ¤Þ¤¿¤Ï¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤Î¥³¥á¥ó¥ÈÆâ¤ÎǤ°Õ¤Î¾ì½ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤Ï\fI{@tag}\fR¤Î¤è¤¦¤ËÃ楫¥Ã¥³¤Ç°Ï¤ß¤Þ¤¹¡£
+インライン・タグ: インライン・タグã¯ä¸»èª¬æ˜Žå†…ã¾ãŸã¯ãƒ–ロック・タグã®ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®ä»»æ„ã®å ´æ‰€ã«é…ç½®ã—ã¾ã™ã€‚インライン・タグã¯\fI{@tag}\fRã®ã‚ˆã†ã«ä¸­ã‚«ãƒƒã‚³ã§å›²ã¿ã¾ã™ã€‚
 .RE
 .PP
-¥«¥¹¥¿¥à¡¦¥¿¥°¤Ë¤Ä¤¤¤Æ¤Ï¡¢\-tag tagname:Xaoptcmf:"taghead"¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "¥¿¥°¤ÎÀâÌÀ"
+カスタム・タグã«ã¤ã„ã¦ã¯ã€\-tag tagname:Xaoptcmf:"taghead"ã‚’å‚ç…§ã—ã¦ãã ã•ã„。タグを使用ã§ãる場所もå‚ç…§ã—ã¦ãã ã•ã„。
+.SS "ã‚¿ã‚°ã®èª¬æ˜Ž"
 .PP
 @author \fIname\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI\-author\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢»ØÄꤷ¤¿Ì¾Á°¤Î¥Æ¥­¥¹¥È¤ÎºîÀ®¼Ô¥¨¥ó¥È¥ê¤òÀ¸À®¤µ¤ì¤ë¥É¥­¥å¥á¥ó¥È¤ËÄɲä·¤Þ¤¹¡£1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËÊ£¿ô¤Î\fI@author\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£1¤Ä¤Î\fI@author\fR¥¿¥°¤Ë1¤Ä¤Î̾Á°¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ê£¿ô¤Î̾Á°¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Á°¼Ô¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ̾Á°¤È̾Á°¤Î´Ö¤Ë¥«¥ó¥Þ(,)¤È¶õÇòʸ»ú¤¬ÁÞÆþ¤µ¤ì¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¤Ï¡¢¥Æ¥­¥¹¥ÈÁ´ÂΤ¬²òÀϤµ¤ì¤ë¤³¤È¤Ê¤¯¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥«¥ó¥Þ¤Ç¤Ï¤Ê¤¯¡¢³Æ¸À¸ì¤ËÂбþ¤·¤¿Ì¾Á°¶èÀÚ¤êʸ»ú¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¡¢1¹Ô¤ËÊ£¿ô¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@author¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@author)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI\-author\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€æŒ‡å®šã—ãŸåå‰ã®ãƒ†ã‚­ã‚¹ãƒˆã®ä½œæˆè€…エントリを生æˆã•ã‚Œã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«è¿½åŠ ã—ã¾ã™ã€‚1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«è¤‡æ•°ã®\fI@author\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚1ã¤ã®\fI@author\fRã‚¿ã‚°ã«1ã¤ã®åå‰ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã€è¤‡æ•°ã®åå‰ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å‰è€…ã®å ´åˆã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦åå‰ã¨åå‰ã®é–“ã«ã‚«ãƒ³ãƒž(,)ã¨ç©ºç™½æ–‡å­—ãŒæŒ¿å…¥ã•ã‚Œã¾ã™ã€‚後者ã®å ´åˆã¯ã€ãƒ†ã‚­ã‚¹ãƒˆå…¨ä½“ãŒè§£æžã•ã‚Œã‚‹ã“ã¨ãªãã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚«ãƒ³ãƒžã§ã¯ãªãã€å„言語ã«å¯¾å¿œã—ãŸåå‰åŒºåˆ‡ã‚Šæ–‡å­—を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ãã«ã€1è¡Œã«è¤‡æ•°ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@authorã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@author)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@code \fItext\fR}
 .RS 4
-JDK 1\&.5¤ÇƳÆþ
-.sp
-\fI<code>{@literal}</code>\fR¤ÈƱÅù¤Ç¤¹¡£
-.sp
-¥Æ¥­¥¹¥È¤òHTML¥Þ¡¼¥¯¥¢¥Ã¥×¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿Javadoc¥¿¥°¤È¤·¤Æ²ò¼á¤»¤º¤Ë¡¢text¤ò¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Çɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤Î·¿(\fI<Object>\fR)¡¢ÉÔÅù¹æ(\fI3 < 4\fR)¡¢Ìð°õ(\fI<\-\fR)¤Ê¤É¤Ç¡¢Ä̾ï¤Î»³¥«¥Ã¥³(<¤ª¤è¤Ó>)¤òHTML¥¨¥ó¥Æ¥£¥Æ¥£(\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR)¤Î¤«¤ï¤ê¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È\fI{@code A<B>C}\fR¤Ï\fIA<B>C\fR¤È¤·¤ÆÊѹ¹¤µ¤ì¤º¤ËÀ¸À®¤µ¤ì¤¿HTML¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢\fI<B>\fR¤¬ÂÀ»ú¤È¤·¤Æ²ò¼á¤µ¤ì¤º¡¢¤½¤Î¥Õ¥©¥ó¥È¤Ï¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ë¤Ê¤ê¤Þ¤¹¡£¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ê¤·¤ÇƱ¤¸µ¡Ç½¤ò¼Â¸½¤¹¤ë¤Ë¤Ï¡¢\fI{@literal}\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.5ã§å°Žå…¥
+.sp
+\fI<code>{@literal}</code>\fRã¨åŒç­‰ã§ã™ã€‚
+.sp
+テキストをHTMLマークアップã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸJavadocã‚¿ã‚°ã¨ã—ã¦è§£é‡ˆã›ãšã«ã€textをコード・フォントã§è¡¨ç¤ºã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ãƒ‘ラメータã®åž‹(\fI<Object>\fR)ã€ä¸ç­‰å·(\fI3 < 4\fR)ã€çŸ¢å°(\fI<\-\fR)ãªã©ã§ã€é€šå¸¸ã®å±±ã‚«ãƒƒã‚³(<ãŠã‚ˆã³>)ã‚’HTMLエンティティ(\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fR)ã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆ\fI{@code A<B>C}\fRã¯\fIA<B>C\fRã¨ã—ã¦å¤‰æ›´ã•ã‚Œãšã«ç”Ÿæˆã•ã‚ŒãŸHTMLページã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€\fI<B>\fRãŒå¤ªå­—ã¨ã—ã¦è§£é‡ˆã•ã‚Œãšã€ãã®ãƒ•ã‚©ãƒ³ãƒˆã¯ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚©ãƒ³ãƒˆã«ãªã‚Šã¾ã™ã€‚コード・フォントãªã—ã§åŒã˜æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ã«ã¯ã€\fI{@literal}\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @deprecated \fIdeprecated\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¤³¤ÎAPI¤ÏÆ°ºî¤·Â³¤±¤Þ¤¹¤¬¡¢¤³¤ÎAPI¤ò»ÈÍѤ·¤Ê¤¤¤³¤È¤òÁ¦¤á¤ë¥³¥á¥ó¥È¤òÄɲä·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIdeprecated\-text\fR¤ò¼çÀâÌÀ¤ÎÁ°¤Ë°ÜÆ°¤·¤Æ¥¤¥¿¥ê¥Ã¥¯¤Ë¤·¡¢¤½¤ÎÁ°¤ËÂÀ»ú¤Î·Ù¹ð¡Ö¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¡×¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£
-.sp
-Èó¿ä¾©¥Æ¥­¥¹¥È¤ÎºÇ½é¤Îʸ¤Ç¤Ï¡¢¤½¤ÎAPI¤¬¿ä¾©¤µ¤ì¤Ê¤¯¤Ê¤Ã¤¿»þ´ü¤È¡¢ÂåÂؤȤ·¤Æ»ÈÍѤ¹¤ëAPI¤ò¥æ¡¼¥¶¡¼¤ËÄ󼨤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤³¤ÎºÇ½é¤Îʸ¤ò¡¢¥µ¥Þ¥ê¡¼¡¦¥»¥¯¥·¥ç¥ó¤Èº÷°ú¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¤½¤Î¸å¤Îʸ¤ÇÈó¿ä¾©¤Ë¤Ê¤Ã¤¿Íýͳ¤òÀâÌÀ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ÂåÂØAPI¤ò»Ø¤·¼¨¤¹\fI{@link}\fR¥¿¥°(Javadoc 1\&.2°Ê¹ß¤Î¾ì¹ç)¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fI@deprecated annotation\fR¥¿¥°¤ò»ÈÍѤ·¤Æ¥×¥í¥°¥é¥àÍ×ÁǤòÈó¿ä¾©¤Ë¤·¤Þ¤¹¡£API¤òÈó¿ä¾©¤Ë¤¹¤ëÊýË¡¤È»þ´ü
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/deprecation/deprecation\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@deprecated¤Ë´Ø¤¹¤ë¹à
+JDK 1\&.0ã§å°Žå…¥
+.sp
+ã“ã®APIã¯å‹•ä½œã—続ã‘ã¾ã™ãŒã€ã“ã®APIを使用ã—ãªã„ã“ã¨ã‚’è–¦ã‚るコメントを追加ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fIdeprecated\-text\fRを主説明ã®å‰ã«ç§»å‹•ã—ã¦ã‚¤ã‚¿ãƒªãƒƒã‚¯ã«ã—ã€ãã®å‰ã«å¤ªå­—ã®è­¦å‘Šã€ŒæŽ¨å¥¨ã•ã‚Œã¦ã„ã¾ã›ã‚“。ã€ã‚’追加ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚
+.sp
+éžæŽ¨å¥¨ãƒ†ã‚­ã‚¹ãƒˆã®æœ€åˆã®æ–‡ã§ã¯ã€ãã®APIãŒæŽ¨å¥¨ã•ã‚Œãªããªã£ãŸæ™‚期ã¨ã€ä»£æ›¿ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹APIをユーザーã«æ示ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã“ã®æœ€åˆã®æ–‡ã‚’ã€ã‚µãƒžãƒªãƒ¼ãƒ»ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¨ç´¢å¼•ã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ãã®å¾Œã®æ–‡ã§éžæŽ¨å¥¨ã«ãªã£ãŸç†ç”±ã‚’説明ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚代替APIを指ã—示ã™\fI{@link}\fRã‚¿ã‚°(Javadoc 1\&.2以é™ã®å ´åˆ)ã‚’å«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fI@deprecated annotation\fRタグを使用ã—ã¦ãƒ—ログラムè¦ç´ ã‚’éžæŽ¨å¥¨ã«ã—ã¾ã™ã€‚APIã‚’éžæŽ¨å¥¨ã«ã™ã‚‹æ–¹æ³•ã¨æ™‚期
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/deprecation/deprecation\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@deprecatedã«é–¢ã™ã‚‹é …
 
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@deprecated)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@deprecated)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@docRoot}
 .RS 4
-JDK 1\&.3¤ÇƳÆþ
-.sp
-À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤«¤é¤Î¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Î(À¸À®Àè)¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎÁêÂХѥ¹¤òɽ¤·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢Ãøºî¸¢¤Î¥Ú¡¼¥¸¤ä²ñ¼Ò¤Î¥í¥´¤Ê¤É¡¢À¸À®¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤«¤é»²¾È¤¹¤ë¥Õ¥¡¥¤¥ë¤òÁȤ߹þ¤à¤È¤­¤ËÊØÍø¤Ç¤¹¡£Ä̾ï¤Ï¡¢³Æ¥Ú¡¼¥¸¤ÎºÇ²¼Éô¤«¤éÃøºî¸¢¤Î¥Ú¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£
-.sp
-¤³¤Î\fI{@docRoot}\fR¥¿¥°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¤â¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤â»ÈÍѤǤ­¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢Ç¤°Õ¤Î¥¿¥°(\fI@return\fR¡¢\fI@param\fR¤ª¤è¤Ó\fI@deprecated\fR¥¿¥°¤Ê¤É)¤Î¥Æ¥­¥¹¥ÈÉôʬ¤ò´Þ¤à¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£
+JDK 1\&.3ã§å°Žå…¥
+.sp
+生æˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã‹ã‚‰ã®ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®(生æˆå…ˆ)ルート・ディレクトリã¸ã®ç›¸å¯¾ãƒ‘スを表ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€è‘—作権ã®ãƒšãƒ¼ã‚¸ã‚„会社ã®ãƒ­ã‚´ãªã©ã€ç”Ÿæˆã•ã‚Œã‚‹ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã‹ã‚‰å‚ç…§ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’組ã¿è¾¼ã‚€ã¨ãã«ä¾¿åˆ©ã§ã™ã€‚通常ã¯ã€å„ページã®æœ€ä¸‹éƒ¨ã‹ã‚‰è‘—作権ã®ãƒšãƒ¼ã‚¸ã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚
+.sp
+ã“ã®\fI{@docRoot}\fRã‚¿ã‚°ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚‚ドキュメンテーション・コメント内ã§ã‚‚使用ã§ãã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ä»»æ„ã®ã‚¿ã‚°(\fI@return\fRã€\fI@param\fRãŠã‚ˆã³\fI@deprecated\fRã‚¿ã‚°ãªã©)ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã‚’å«ã‚€ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1412,9 +1412,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢¥Ø¥Ã¥À¡¼¡¢¥Õ¥Ã¥¿¡¼¤Þ¤¿¤ÏºÇ²¼Éô¤¬¼¡¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Þ¤¹¡£\fIjavadoc \-bottom \*(Aq<a href="{@docRoot}/copyright\&.html">Copyright</a>\*(Aq\fR
-.sp
-\fI{@docRoot}\fR¥¿¥°¤òmakefileÆâ¤Ç¤³¤Î¤è¤¦¤ËÍøÍѤ¹¤ë¾ì¹ç¡¢°ìÉô¤Î\fImakefile\fR¥×¥í¥°¥é¥à¤Ç¤Ï¡¢Ã楫¥Ã¥³\fI{}\fRʸ»ú¤òÆÃÊ̤˥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢Inprise MAKE¥Ð¡¼¥¸¥ç¥ó5\&.2¤òWindows¾å¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç¤Ï¡¢\fI{{@docRoot}}\fR¤Î¤è¤¦¤Ë¡¢Ã楫¥Ã¥³¤òÆó½Å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤Ê¤É¤Î¥ª¥×¥·¥ç¥ó¤Ø¤Î°ú¿ô¤ò°Ï¤à¤Î¤Ë¡¢Æó½Å(°ì½Å¤Ç¤Ï¤Ê¤¯)°úÍÑÉä¤âɬÍפǤ¹(\fIhref\fR°ú¿ô¤ò°Ï¤à°úÍÑÉä¤Ï¾Êά)¡£
+コマンドラインã§ã€ãƒ˜ãƒƒãƒ€ãƒ¼ã€ãƒ•ãƒƒã‚¿ãƒ¼ã¾ãŸã¯æœ€ä¸‹éƒ¨ãŒæ¬¡ã®ã‚ˆã†ã«å®šç¾©ã•ã‚Œã¾ã™ã€‚\fIjavadoc \-bottom \*(Aq<a href="{@docRoot}/copyright\&.html">Copyright</a>\*(Aq\fR
+.sp
+\fI{@docRoot}\fRã‚¿ã‚°ã‚’makefile内ã§ã“ã®ã‚ˆã†ã«åˆ©ç”¨ã™ã‚‹å ´åˆã€ä¸€éƒ¨ã®\fImakefile\fRプログラムã§ã¯ã€ä¸­ã‚«ãƒƒã‚³\fI{}\fR文字を特別ã«ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€Inprise MAKEãƒãƒ¼ã‚¸ãƒ§ãƒ³5\&.2ã‚’Windows上ã§å®Ÿè¡Œã™ã‚‹å ´åˆã¯ã€\fI{{@docRoot}}\fRã®ã‚ˆã†ã«ã€ä¸­ã‚«ãƒƒã‚³ã‚’二é‡ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-bottom\fRオプションãªã©ã®ã‚ªãƒ—ションã¸ã®å¼•æ•°ã‚’囲むã®ã«ã€äºŒé‡(一é‡ã§ã¯ãªã)引用符も必è¦ã§ã™(\fIhref\fR引数を囲む引用符ã¯çœç•¥)。
 .RE
 .sp
 .RS 4
@@ -1425,7 +1425,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï
+ドキュメンテーション・コメントã§ã¯
 .sp
 .if n \{\
 .RS 4
@@ -1438,24 +1438,24 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥¿¥°¤¬É¬ÍפÊÍýͳ¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤¬¡¢¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ÈƱ¤¸¿¼¤µ¤ò»ý¤Ä³¬Áع½Â¤¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£¼°\fI<a href="{@docRoot}/copyright\&.html">\fR¤Ï¡¢\fIjava/lang/Object\&.java\fR¤ËÂФ·¤Æ¤Ï\fI<a href="\&.\&./\&.\&./copyright\&.html">\fR¤Ë²ò·è¤µ¤ì¡¢\fIjava/lang/ref/Reference\&.java\fR¤ËÂФ·¤Æ¤Ï\fI<a href="\&.\&./\&.\&./\&.\&./copyright\&.html">\fR¤Ë²ò·è¤µ¤ì¤Þ¤¹¡£
+ã“ã®ã‚¿ã‚°ãŒå¿…è¦ãªç†ç”±ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€ã‚µãƒ–パッケージã¨åŒã˜æ·±ã•ã‚’æŒã¤éšŽå±¤æ§‹é€ ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ ¼ç´ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚å¼\fI<a href="{@docRoot}/copyright\&.html">\fRã¯ã€\fIjava/lang/Object\&.java\fRã«å¯¾ã—ã¦ã¯\fI<a href="\&.\&./\&.\&./copyright\&.html">\fRã«è§£æ±ºã•ã‚Œã€\fIjava/lang/ref/Reference\&.java\fRã«å¯¾ã—ã¦ã¯\fI<a href="\&.\&./\&.\&./\&.\&./copyright\&.html">\fRã«è§£æ±ºã•ã‚Œã¾ã™ã€‚
 .RE
 .RE
 .PP
 @exception \fIclass\-name description\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI@throws\fR¥¿¥°¤ÈƱ¤¸¤Ç¤¹¡£@throws class\-name description¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI@throws\fRã‚¿ã‚°ã¨åŒã˜ã§ã™ã€‚@throws class\-name descriptionã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 {@inheritDoc}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-ºÇ¤â¶á¤¤·Ñ¾µ²Äǽ¤Ê¥¯¥é¥¹¤Þ¤¿¤Ï¼ÂÁõ²Äǽ¤Ê¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¡¢¤³¤Î¥¿¥°¤Î°ÌÃ֤ˤ¢¤ë¸½ºß¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¡¢¥É¥­¥å¥á¥ó¥È¤ò·Ñ¾µ(¥³¥Ô¡¼)¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¤è¤êÈÆÍÑŪ¤Ê¥³¥á¥ó¥È¤ò·Ñ¾µ¥Ä¥ê¡¼¤Î¾å°Ì¤Ëµ­½Ò¤·¡¢¥³¥Ô¡¼¤·¤¿¥Æ¥­¥¹¥È¤ò»ÈÍѤ·¤Æµ­½Ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.sp
-¤³¤Î¥¿¥°¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¼¡¤Î°ÌÃ֤ǤΤßÍ­¸ú¤Ç¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+最も近ã„継承å¯èƒ½ãªã‚¯ãƒ©ã‚¹ã¾ãŸã¯å®Ÿè£…å¯èƒ½ãªã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã€ã“ã®ã‚¿ã‚°ã®ä½ç½®ã«ã‚ã‚‹ç¾åœ¨ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’継承(コピー)ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚ˆã‚Šæ±Žç”¨çš„ãªã‚³ãƒ¡ãƒ³ãƒˆã‚’継承ツリーã®ä¸Šä½ã«è¨˜è¿°ã—ã€ã‚³ãƒ”ーã—ãŸãƒ†ã‚­ã‚¹ãƒˆã‚’使用ã—ã¦è¨˜è¿°ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
+.sp
+ã“ã®ã‚¿ã‚°ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®æ¬¡ã®ä½ç½®ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1465,7 +1465,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Î¼çÀâÌÀ¥Ö¥í¥Ã¥¯Æâ¡£¤³¤Î¾ì¹ç¡¢¼çÀâÌÀ¤Ï¡¢¾å°Ì³¬ÁؤΥ¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+メソッドã®ä¸»èª¬æ˜Žãƒ–ロック内。ã“ã®å ´åˆã€ä¸»èª¬æ˜Žã¯ã€ä¸Šä½éšŽå±¤ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1476,24 +1476,24 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Î\fI@return\fR¡¢\fI@param\fR¡¢\fI@throws\fR¥¿¥°¤Î¥Æ¥­¥¹¥È°ú¿ôÆâ¡£¤³¤Î¾ì¹ç¡¢¥¿¥°¡¦¥Æ¥­¥¹¥È¤Ï¡¢¾å°Ì³¬ÁؤÎÂбþ¤¹¤ë¥¿¥°¤«¤é¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
-.RE
-.sp
-·Ñ¾µ³¬Áؤǥ³¥á¥ó¥È¤ò¸«¤Ä¤±¤ëÊýË¡¤Ë´Ø¤¹¤ëÀâÌÀ¤Ï¡¢¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤Î·Ñ¾µ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥¿¥°¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢¥³¥á¥ó¥È¤Ï¡¢¤³¤Î¹à¤ÇÀâÌÀ¤¹¤ë¥ë¡¼¥ë¤Ë±þ¤¸¤Æ¡¢¼«Æ°Åª¤Ë·Ñ¾µ¤µ¤ì¤ë¤«¤É¤¦¤«¤¬·è¤Þ¤ê¤Þ¤¹¡£
+メソッドã®\fI@return\fRã€\fI@param\fRã€\fI@throws\fRã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°å†…。ã“ã®å ´åˆã€ã‚¿ã‚°ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ä¸Šä½éšŽå±¤ã®å¯¾å¿œã™ã‚‹ã‚¿ã‚°ã‹ã‚‰ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
+.RE
+.sp
+継承階層ã§ã‚³ãƒ¡ãƒ³ãƒˆã‚’見ã¤ã‘る方法ã«é–¢ã™ã‚‹èª¬æ˜Žã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ç¶™æ‰¿ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ã“ã®ã‚¿ã‚°ãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€ã“ã®é …ã§èª¬æ˜Žã™ã‚‹ãƒ«ãƒ¼ãƒ«ã«å¿œã˜ã¦ã€è‡ªå‹•çš„ã«ç¶™æ‰¿ã•ã‚Œã‚‹ã‹ã©ã†ã‹ãŒæ±ºã¾ã‚Šã¾ã™ã€‚
 .RE
 .PP
 {@link \fIpackage\&.class#member label\fR}
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-ɽ¼¨¥Æ¥­¥¹¥Èlabel¤È¤È¤â¤Ë¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤òÁÞÆþ¤·¤Þ¤¹¡£label¤Ï¡¢»²¾È¥¯¥é¥¹¤Î»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î̾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»Ø¤·¼¨¤·¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢\fI@return\fR¡¢\fI@param\fR¤ª¤è¤Ó\fI@deprecated\fR¥¿¥°¤Ê¤É¤ÎǤ°Õ¤Î¥¿¥°¤Î¥Æ¥­¥¹¥ÈÉôʬ¤ò´Þ¤à¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@link¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#{@link)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤³¤Î¥¿¥°¤Ï\fI@see\fR¥¿¥°¤Ë»÷¤Æ¤¤¤Þ¤¹¡£¤É¤Á¤é¤Î¥¿¥°¤â¡¢\fIpackage\&.class#member\fR¤È\fIlabel\fR¤Î»²¾ÈÊýË¡¤È¡¢Í­¸ú¤Ê¹½Ê¸¤¬Æ±¤¸¤Ç¤¹¡£¼ç¤Ê°ã¤¤¤Ï¡¢\fI{@link}\fR¥¿¥°¤Ç¤Ï¡¢¡Ö´ØÏ¢¹àÌܡץ»¥¯¥·¥ç¥ó¤Ë¥ê¥ó¥¯¤¬ÇÛÃÖ¤µ¤ì¤ë¤«¤ï¤ê¤Ë¡¢¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤¬À¸À®¤µ¤ì¤ë¤È¤¤¤¦ÅÀ¤Ç¤¹¡£¥¤¥ó¥é¥¤¥ó¡¦¥Æ¥­¥¹¥È¤Î¾¤ÎÉôʬ¤È¶èÊ̤¹¤ë¤¿¤á¤Ë¡¢\fI{@link}\fR¥¿¥°¤ÎºÇ½é¤ÈºÇ¸å¤ËÃ楫¥Ã¥³¤òµ­½Ò¤·¤Þ¤¹¡£¥é¥Ù¥ëÆâ¤Ç±¦Ã楫¥Ã¥³(\fI}\fR)¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¢HTML¥¨¥ó¥Æ¥£¥Æ¥£µ­Ë¡\fI&#125;\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-1¤Äʸ¤ÎÃæ¤Ç»ÈÍѤǤ­¤ë\fI{@link}\fR¥¿¥°¤Î¿ô¤ËÀ©¸Â¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥¿¥°¤Ï¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¼çÀâÌÀÉôʬ¡¢¤Þ¤¿¤Ï\fI@deprecated\fR¡¢\fI@return\fR¡¢\fI@param\fR¥¿¥°¤Ê¤É¤ÎǤ°Õ¤Î¥¿¥°¤Î¥Æ¥­¥¹¥ÈÉôʬ¤Ç»ÈÍѤǤ­¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥á¥ó¥È¤Ç¤Ï\fIgetComponentAt(int,int)\fR¥á¥½¥Ã¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+表示テキストlabelã¨ã¨ã‚‚ã«ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ã‚’挿入ã—ã¾ã™ã€‚labelã¯ã€å‚照クラスã®æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®åå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’指ã—示ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€\fI@return\fRã€\fI@param\fRãŠã‚ˆã³\fI@deprecated\fRã‚¿ã‚°ãªã©ã®ä»»æ„ã®ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã‚’å«ã‚€ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@linkã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#{@link)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ã“ã®ã‚¿ã‚°ã¯\fI@see\fRã‚¿ã‚°ã«ä¼¼ã¦ã„ã¾ã™ã€‚ã©ã¡ã‚‰ã®ã‚¿ã‚°ã‚‚ã€\fIpackage\&.class#member\fRã¨\fIlabel\fRã®å‚照方法ã¨ã€æœ‰åŠ¹ãªæ§‹æ–‡ãŒåŒã˜ã§ã™ã€‚主ãªé•ã„ã¯ã€\fI{@link}\fRã‚¿ã‚°ã§ã¯ã€ã€Œé–¢é€£é …ç›®ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã«ãƒªãƒ³ã‚¯ãŒé…ç½®ã•ã‚Œã‚‹ã‹ã‚ã‚Šã«ã€ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ãŒç”Ÿæˆã•ã‚Œã‚‹ã¨ã„ã†ç‚¹ã§ã™ã€‚インライン・テキストã®ä»–ã®éƒ¨åˆ†ã¨åŒºåˆ¥ã™ã‚‹ãŸã‚ã«ã€\fI{@link}\fRã‚¿ã‚°ã®æœ€åˆã¨æœ€å¾Œã«ä¸­ã‚«ãƒƒã‚³ã‚’記述ã—ã¾ã™ã€‚ラベル内ã§å³ä¸­ã‚«ãƒƒã‚³(\fI}\fR)を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã€HTMLエンティティ記法\fI&#125;\fRを使用ã—ã¾ã™ã€‚
+.sp
+1ã¤æ–‡ã®ä¸­ã§ä½¿ç”¨ã§ãã‚‹\fI{@link}\fRã‚¿ã‚°ã®æ•°ã«åˆ¶é™ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚¿ã‚°ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ä¸»èª¬æ˜Žéƒ¨åˆ†ã€ã¾ãŸã¯\fI@deprecated\fRã€\fI@return\fRã€\fI@param\fRã‚¿ã‚°ãªã©ã®ä»»æ„ã®ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆéƒ¨åˆ†ã§ä½¿ç”¨ã§ãã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯\fIgetComponentAt(int,int)\fRメソッドをå‚ç…§ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1504,7 +1504,7 @@
 .if n \{\
 .RE
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤Î¥³¡¼¥É¤«¤é¼¡¤ÎHTML¤¬À¸À®¤µ¤ì¤Þ¤¹(¤³¤Î¥³¥á¥ó¥È¤¬Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤ÎÊ̤Υ¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç)¡£
+標準ドックレットã§ã¯ã€ã“ã®ã‚³ãƒ¼ãƒ‰ã‹ã‚‰æ¬¡ã®HTMLãŒç”Ÿæˆã•ã‚Œã¾ã™(ã“ã®ã‚³ãƒ¡ãƒ³ãƒˆãŒåŒã˜ãƒ‘ッケージã®åˆ¥ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹å ´åˆ)。
 .sp
 .if n \{\
 .RS 4
@@ -1515,7 +1515,7 @@
 .if n \{\
 .RE
 .\}
-Á°¤Î¹Ô¤Ï¡¢¼¡¤Î¤è¤¦¤ËWeb¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+å‰ã®è¡Œã¯ã€æ¬¡ã®ã‚ˆã†ã«Webページã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1530,28 +1530,28 @@
 .PP
 {@linkplain \fIpackage\&.class#member label\fR}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-\fI{@link}\fR¥¿¥°¤ÈƱ¤¸Æ°ºî¤ò¤·¤Þ¤¹¤¬¡¢¥ê¥ó¥¯¡¦¥é¥Ù¥ë¤¬¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ç¤Ï¤Ê¤¯¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Çɽ¼¨¤µ¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£¥é¥Ù¥ë¤¬¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤ÈÊØÍø¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¡Ö\fIRefer to {@linkplain add() the overridden method}\fR\&.¡×¤Ï¡ÖRefer to the overridden method¡×¤Èɽ¼¨¤µ¤ì¤Þ¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+\fI{@link}\fRã‚¿ã‚°ã¨åŒã˜å‹•ä½œã‚’ã—ã¾ã™ãŒã€ãƒªãƒ³ã‚¯ãƒ»ãƒ©ãƒ™ãƒ«ãŒã‚³ãƒ¼ãƒ‰ãƒ»ãƒ•ã‚©ãƒ³ãƒˆã§ã¯ãªãプレーン・テキストã§è¡¨ç¤ºã•ã‚Œã‚‹ç‚¹ãŒç•°ãªã‚Šã¾ã™ã€‚ラベルãŒãƒ—レーン・テキストã§è¨˜è¿°ã•ã‚Œã¦ã„ã‚‹ã¨ä¾¿åˆ©ã§ã™ã€‚ãŸã¨ãˆã°ã€ã€Œ\fIRefer to {@linkplain add() the overridden method}\fR\&.ã€ã¯ã€ŒRefer to the overridden methodã€ã¨è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 {@literal \fItext\fR}
 .RS 4
-JDK 1\&.5¤ÇƳÆþ
-.sp
-¥Æ¥­¥¹¥È¤òHTML¥Þ¡¼¥¯¥¢¥Ã¥×¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿Javadoc¥¿¥°¤È¤·¤Æ²ò¼á¤»¤º¤Ë¡¢text¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¤Î·¿(\fI<Object>\fR)¡¢ÉÔÅù¹æ(\fI3 < 4\fR)¡¢Ìð°õ(<\-)¤Ê¤É¤Ç¡¢»³¥«¥Ã¥³(\fI<¤ª¤è¤Ó>\fR)¤òHTML¥¨¥ó¥Æ¥£¥Æ¥£(\fI&lt;\fR¤ª¤è¤Ó\fI&gt;\fR)¤Î¤«¤ï¤ê¤Ë»ÈÍѤǤ­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È\fI{@literal A<B>C}\fR¤Ï\fIA<B>C\fR¤È¤·¤Æ¡¢¥Ö¥é¥¦¥¶¤ÎÀ¸À®¤µ¤ì¤¿HTML¥Ú¡¼¥¸¤ËÊѹ¹¤µ¤ì¤º¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI<B>\fR¤ÏÂÀ»ú¤È¤·¤Æ²ò¼á¤µ¤ì¤Þ¤»¤ó(¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤Ë¤Ê¤ê¤Þ¤»¤ó)¡£¥³¡¼¥É¡¦¥Õ¥©¥ó¥È¤ÇƱ¤¸µ¡Ç½¤ò¼Â¸½¤¹¤ë¤Ë¤Ï¡¢\fI{@code}\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.5ã§å°Žå…¥
+.sp
+テキストをHTMLマークアップã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸJavadocã‚¿ã‚°ã¨ã—ã¦è§£é‡ˆã›ãšã«ã€textを表示ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã¯ã€ãƒ‘ラメータã®åž‹(\fI<Object>\fR)ã€ä¸ç­‰å·(\fI3 < 4\fR)ã€çŸ¢å°(<\-)ãªã©ã§ã€å±±ã‚«ãƒƒã‚³(\fI<ãŠã‚ˆã³>\fR)ã‚’HTMLエンティティ(\fI&lt;\fRãŠã‚ˆã³\fI&gt;\fR)ã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ãƒ†ã‚­ã‚¹ãƒˆ\fI{@literal A<B>C}\fRã¯\fIA<B>C\fRã¨ã—ã¦ã€ãƒ–ラウザã®ç”Ÿæˆã•ã‚ŒãŸHTMLページã«å¤‰æ›´ã•ã‚Œãšã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI<B>\fRã¯å¤ªå­—ã¨ã—ã¦è§£é‡ˆã•ã‚Œã¾ã›ã‚“(コード・フォントã«ãªã‚Šã¾ã›ã‚“)。コード・フォントã§åŒã˜æ©Ÿèƒ½ã‚’実ç¾ã™ã‚‹ã«ã¯ã€\fI{@code}\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @param \fIparameter\-name description\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¡Ö¥Ñ¥é¥á¡¼¥¿¡×¥»¥¯¥·¥ç¥ó¤Ë¡¢»ØÄꤵ¤ì¤¿\fIparameter\-name\fR¤Î¸å¤Ë»ØÄꤵ¤ì¤¿description¤ò³¤±¤Æ¥Ñ¥é¥á¡¼¥¿¤òÄɲä·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òµ­½Ò¤¹¤ë¤È¤­¤Ë¤Ï¡¢description¤òÊ£¿ô¹Ô¤Ë¤ï¤¿¤Ã¤Æµ­½Ò¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤Þ¤¿¤Ï¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@param¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@param)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fIparameter\-name\fR¤Ï¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤Î¥Ñ¥é¥á¡¼¥¿¤Î̾Á°¤«¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Î·¿¥Ñ¥é¥á¡¼¥¿¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£»³¥«¥Ã¥³¤Ç¤³¤Î¥Ñ¥é¥á¡¼¥¿Ì¾¤ò°Ï¤ß¡¢·¿¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ¹¤ë¤³¤È¤ò»ØÄꤷ¤Þ¤¹¡£
-.sp
-¥¯¥é¥¹¤Î·¿¥Ñ¥é¥á¡¼¥¿¤ÎÎã:
+JDK 1\&.0ã§å°Žå…¥
+.sp
+「パラメータã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã«ã€æŒ‡å®šã•ã‚ŒãŸ\fIparameter\-name\fRã®å¾Œã«æŒ‡å®šã•ã‚ŒãŸdescriptionを続ã‘ã¦ãƒ‘ラメータを追加ã—ã¾ã™ã€‚ドキュメンテーション・コメントを記述ã™ã‚‹ã¨ãã«ã¯ã€descriptionを複数行ã«ã‚ãŸã£ã¦è¨˜è¿°ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ã¾ãŸã¯ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@paramã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@param)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fIparameter\-name\fRã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã§ã®ãƒ‘ラメータã®åå‰ã‹ã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®åž‹ãƒ‘ラメータã®åå‰ã«ãªã‚Šã¾ã™ã€‚山カッコã§ã“ã®ãƒ‘ラメータåを囲ã¿ã€åž‹ãƒ‘ラメータを使用ã™ã‚‹ã“ã¨ã‚’指定ã—ã¾ã™ã€‚
+.sp
+クラスã®åž‹ãƒ‘ラメータã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -1566,7 +1566,7 @@
 .if n \{\
 .RE
 .\}
-¥á¥½¥Ã¥É¤Î·¿¥Ñ¥é¥á¡¼¥¿¤ÎÎã:
+メソッドã®åž‹ãƒ‘ラメータã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -1588,35 +1588,35 @@
 .PP
 @return \fIdescription\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-¡ÖÌá¤êÃ͡ץ»¥¯¥·¥ç¥ó¤òÄɲ䷤ơ¢description¤Î¥Æ¥­¥¹¥È¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ç¤Ï¡¢Ìá¤êÃͤη¿¤È¡¢¼è¤êÆÀ¤ëÃͤÎÈϰϤˤĤ¤¤Æµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@return¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@return)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JDK 1\&.0ã§å°Žå…¥
+.sp
+「戻り値ã€ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚’追加ã—ã¦ã€descriptionã®ãƒ†ã‚­ã‚¹ãƒˆã‚’書ãè¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã§ã¯ã€æˆ»ã‚Šå€¤ã®åž‹ã¨ã€å–り得る値ã®ç¯„囲ã«ã¤ã„ã¦è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@returnã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@return)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 @see \fIreference\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI¡Ö´ØÏ¢¹àÌÜ¡×\fR¸«½Ð¤·¤òÄɲ䷤ơ¢reference¤ò»Ø¤¹¥ê¥ó¥¯¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥È¡¦¥¨¥ó¥È¥ê¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤ÏǤ°Õ¤Î¿ô¤Î\fI@see\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤ì¤é¤Ï¤¹¤Ù¤ÆƱ¤¸¸«½Ð¤·¤Î²¼¤Ë¥°¥ë¡¼¥×²½¤µ¤ì¤Þ¤¹¡£\fI@see\fR¥¿¥°¤Ë¤Ï¡¢3¤Ä¤Î¥¿¥¤¥×¤Î·Á¼°¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î·Á¼°¤¬ºÇ¤â°ìÈÌŪ¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤ËÂФ¹¤ë¥¤¥ó¥é¥¤¥ó¡¦¥ê¥ó¥¯¤òʸÃæ¤ËÁÞÆþ¤¹¤ëÊýË¡¤Ï¡¢\fI{@link}\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fB·Á¼°1\fR¡£@see
-\fIstring\fR¥¿¥°·Á¼°¤Ï¡¢\fIstring\fR¤Î¥Æ¥­¥¹¥È¡¦¥¨¥ó¥È¥ê¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£string¤Ï¡¢½ñÀÒ¤Þ¤¿¤ÏURL¤Ç¤Ï¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¾ðÊó¤Î»²¾ÈÀè¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ºÇ½é¤Îʸ»ú¤È¤·¤ÆÆó½Å°úÍÑÉä(")¤ò¸¡º÷¤·¤Æ¡¢¤³¤Î·Á¼°¤òÁ°½Ò¤Î·Á¼°¤È¶èÊ̤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see "The Java Programming Language"\fR¤Ï¼¡¤Î¥Æ¥­¥¹¥È¤òÀ¸À®¤·¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI「関連項目ã€\fR見出ã—を追加ã—ã¦ã€referenceを指ã™ãƒªãƒ³ã‚¯ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’書ãè¾¼ã¿ã¾ã™ã€‚1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ä»»æ„ã®æ•°ã®\fI@see\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãれらã¯ã™ã¹ã¦åŒã˜è¦‹å‡ºã—ã®ä¸‹ã«ã‚°ãƒ«ãƒ¼ãƒ—化ã•ã‚Œã¾ã™ã€‚\fI@see\fRã‚¿ã‚°ã«ã¯ã€3ã¤ã®ã‚¿ã‚¤ãƒ—ã®å½¢å¼ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®å½¢å¼ãŒæœ€ã‚‚一般的ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚パッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã«å¯¾ã™ã‚‹ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ãƒªãƒ³ã‚¯ã‚’文中ã«æŒ¿å…¥ã™ã‚‹æ–¹æ³•ã¯ã€\fI{@link}\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fBå½¢å¼1\fR。@see
+\fIstring\fRã‚¿ã‚°å½¢å¼ã¯ã€\fIstring\fRã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’追加ã—ã¾ã™ã€‚リンクã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。stringã¯ã€æ›¸ç±ã¾ãŸã¯URLã§ã¯ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„情報ã®å‚照先ã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æœ€åˆã®æ–‡å­—ã¨ã—ã¦äºŒé‡å¼•ç”¨ç¬¦(")を検索ã—ã¦ã€ã“ã®å½¢å¼ã‚’å‰è¿°ã®å½¢å¼ã¨åŒºåˆ¥ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see "The Java Programming Language"\fRã¯æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’生æˆã—ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 "The Java Programming Language"
 .sp
-\fB·Á¼°2\fR¡£\fI@see <a href="URL#value">label</a>\fR·Á¼°¤Ï¡¢\fIURL#value\fR¤Ë¤è¤êÄêµÁ¤µ¤ì¤¿¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£\fIURL#value\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢ÁêÂÐURL¤Þ¤¿¤ÏÀäÂÐURL¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ºÇ½é¤Îʸ»ú¤È¤·¤Æ¡Ö¤è¤ê¾®¤µ¤¤¡×µ­¹æ(\fI<\fR)¤ò¸¡º÷¤·¤Æ¡¢¤³¤Î·Á¼°¤ò¾¤Î·Á¼°¤È¶èÊ̤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@see <a href="spec\&.html#section">Java Spec</a>\fR¤Ï¼¡¤Î¥ê¥ó¥¯¤òÀ¸À®¤·¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+\fBå½¢å¼2\fR。\fI@see <a href="URL#value">label</a>\fRå½¢å¼ã¯ã€\fIURL#value\fRã«ã‚ˆã‚Šå®šç¾©ã•ã‚ŒãŸãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚\fIURL#value\fRパラメータã¯ã€ç›¸å¯¾URLã¾ãŸã¯çµ¶å¯¾URLã§ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æœ€åˆã®æ–‡å­—ã¨ã—ã¦ã€Œã‚ˆã‚Šå°ã•ã„ã€è¨˜å·(\fI<\fR)を検索ã—ã¦ã€ã“ã®å½¢å¼ã‚’ä»–ã®å½¢å¼ã¨åŒºåˆ¥ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@see <a href="spec\&.html#section">Java Spec</a>\fRã¯æ¬¡ã®ãƒªãƒ³ã‚¯ã‚’生æˆã—ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 Java Spec
 .sp
-\fB·Á¼°3\fR¡£\fI@see package\&.class#member label\fR·Á¼°¤Ï¡¢É½¼¨¥Æ¥­¥¹¥È¡¦¥é¥Ù¥ë¤È¤È¤â¤Ë¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥é¥Ù¥ë¤Ï»²¾È¤µ¤ì¤Æ¤¤¤ëJava¸À¸ì¤Î»ØÄꤵ¤ì¤¿Ì¾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»Ø¤·¼¨¤·¤Þ¤¹¡£¥é¥Ù¥ë¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£¥é¥Ù¥ë¤ò¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É½¼¨¥Æ¥­¥¹¥È¤Î¤«¤ï¤ê¤Ë¡¢Ì¾Á°¤¬Å¬ÀÚ¤Ëû½Ì¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤³¤Îɽ¼¨¥Æ¥­¥¹¥È¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬Á´ÂÎŪ¤Ëºï½ü¤µ¤ì¤Þ¤¹¡£¥é¥Ù¥ë¤Ï¡¢¼«Æ°À¸À®¤µ¤ì¤ëɽ¼¨¥Æ¥­¥¹¥È¤È¤Ï°Û¤Ê¤ëɽ¼¨¥Æ¥­¥¹¥È¤Ë¤¹¤ë¾ì¹ç¤Ë»ÈÍѤ·¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-Java SE 1\&.2¤À¤±¤Ï¡¢¥é¥Ù¥ë¤Ç¤Ï¤Ê¤¯Ì¾Á°¤¬\fI<code>\fR
-HTML¥¿¥°Æâ¤Ë¼«Æ°Åª¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£Java SE 1\&.2\&.2¤«¤é¤Ï¡¢¥é¥Ù¥ë¤ò»ÈÍѤ¹¤ë¤«¤·¤Ê¤¤¤«¤Ë¤«¤«¤ï¤é¤º¡¢\fI<code>\fR¥¿¥°¤Ï¾ï¤Ëɽ¼¨¥Æ¥­¥¹¥È¤ò°Ï¤à¤«¤¿¤Á¤Ç´Þ¤Þ¤ì¤Þ¤¹¡£
+\fBå½¢å¼3\fR。\fI@see package\&.class#member label\fRå½¢å¼ã¯ã€è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ©ãƒ™ãƒ«ã¨ã¨ã‚‚ã«ãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚ã“ã®ãƒ©ãƒ™ãƒ«ã¯å‚ç…§ã•ã‚Œã¦ã„ã‚‹Java言語ã®æŒ‡å®šã•ã‚ŒãŸåå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’指ã—示ã—ã¾ã™ã€‚ラベルã¯ã‚ªãƒ—ションã§ã™ã€‚ラベルをçœç•¥ã—ãŸå ´åˆã¯ã€è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã®ã‹ã‚ã‚Šã«ã€åå‰ãŒé©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-noqualifier\fRオプションを使用ã™ã‚‹ã¨ã€ã“ã®è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã‹ã‚‰ãƒ‘ッケージåãŒå…¨ä½“çš„ã«å‰Šé™¤ã•ã‚Œã¾ã™ã€‚ラベルã¯ã€è‡ªå‹•ç”Ÿæˆã•ã‚Œã‚‹è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã¨ã¯ç•°ãªã‚‹è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã«ã™ã‚‹å ´åˆã«ä½¿ç”¨ã—ã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+Java SE 1\&.2ã ã‘ã¯ã€ãƒ©ãƒ™ãƒ«ã§ã¯ãªãåå‰ãŒ\fI<code>\fR
+HTMLタグ内ã«è‡ªå‹•çš„ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚Java SE 1\&.2\&.2ã‹ã‚‰ã¯ã€ãƒ©ãƒ™ãƒ«ã‚’使用ã™ã‚‹ã‹ã—ãªã„ã‹ã«ã‹ã‹ã‚らãšã€\fI<code>\fRã‚¿ã‚°ã¯å¸¸ã«è¡¨ç¤ºãƒ†ã‚­ã‚¹ãƒˆã‚’囲むã‹ãŸã¡ã§å«ã¾ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1626,10 +1626,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackage\&.class#member\fR¤Ë¤Ï¡¢»²¾È¤µ¤ì¤Æ¤¤¤ëǤ°Õ¤ÎÍ­¸ú¤Ê¥×¥í¥°¥é¥àÍ×ÁǤÎ̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤Î̾Á°¤Ç¤¹¡£¤¿¤À¤·¡¢¥á¥ó¥Ð¡¼Ì¾¤ÎÁ°¤Îʸ»ú¤Ï¡¢¥·¥ã¡¼¥×µ­¹æ(\fI#\fR)¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£class¤Ï¡¢Ç¤°Õ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Þ¤¿¤Ï¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤«¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òɽ¤·¤Þ¤¹¡£member¤Ï¡¢Ç¤°Õ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤òɽ¤·¤Þ¤¹(¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó)¡£¤³¤Î̾Á°¤¬¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î̾Á°¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£³°Éô»²¾È¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£»²¾È¥¯¥é¥¹¤Ë°¤·¤Æ¤¤¤Ê¤¤Ì¾Á°¤Î¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢Â¾¤Î2¤Ä¤Î\fI@see\fR¥¿¥°·Á¼°¤Î¤É¤Á¤é¤«¤ò»ÈÍѤ·¤Þ¤¹¡£¡Ö̾Á°¤Î»ØÄê¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fBÃí°Õ:\fR
-³°Éô»²¾È¥¯¥é¥¹¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤Ê¤¤¥¯¥é¥¹¤Ç¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥ÈÆâ¤Ç³°Éô»²¾È¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤·¤Æ¤¤¤ë²Õ½ê¤Ï¡¢³°Éô»²¾È¤Þ¤¿¤Ï³°Éô¥ê¥ó¥¯¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjava\&.awt package\fR¤ËÂФ·¤Æ¤Î¤ß\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢\fIObject\fR¤Ê¤É¤Î\fIjava\&.lang\fRÆâ¤Î¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤¬³°Éô»²¾È¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£\fI\-link\fR¤ª¤è¤Ó\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢³°Éô»²¾È¥¯¥é¥¹¤Ø¥ê¥ó¥¯¤·¤Þ¤¹¡£³°Éô»²¾È¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥³¥á¥ó¥È¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ë¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+\fIpackage\&.class#member\fRã«ã¯ã€å‚ç…§ã•ã‚Œã¦ã„ã‚‹ä»»æ„ã®æœ‰åŠ¹ãªãƒ—ログラムè¦ç´ ã®åå‰ã‚’指定ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®åå‰ã§ã™ã€‚ãŸã ã—ã€ãƒ¡ãƒ³ãƒãƒ¼åã®å‰ã®æ–‡å­—ã¯ã€ã‚·ãƒ£ãƒ¼ãƒ—記å·(\fI#\fR)ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚classã¯ã€ä»»æ„ã®ãƒˆãƒƒãƒ—レベルã¾ãŸã¯ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’表ã—ã¾ã™ã€‚memberã¯ã€ä»»æ„ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’表ã—ã¾ã™(ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“)。ã“ã®åå‰ãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ãã®åå‰ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚外部å‚照クラスã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã™ã‚‹ã«ã¯ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚å‚照クラスã«å±žã—ã¦ã„ãªã„åå‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’å‚ç…§ã™ã‚‹ã«ã¯ã€ä»–ã®2ã¤ã®\fI@see\fRã‚¿ã‚°å½¢å¼ã®ã©ã¡ã‚‰ã‹ã‚’使用ã—ã¾ã™ã€‚「åå‰ã®æŒ‡å®šã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fB注æ„:\fR
+外部å‚照クラスã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjavadoc\fRコマンドã«æ¸¡ã•ã‚Œãªã„クラスã§ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã§å¤–部å‚照クラスã«ãƒªãƒ³ã‚¯ã—ã¦ã„る箇所ã¯ã€å¤–部å‚ç…§ã¾ãŸã¯å¤–部リンクã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjava\&.awt package\fRã«å¯¾ã—ã¦ã®ã¿\fIjavadoc\fRコマンドを実行ã—ãŸå ´åˆã€\fIObject\fRãªã©ã®\fIjava\&.lang\fR内ã®ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãŒå¤–部å‚照クラスã«ãªã‚Šã¾ã™ã€‚\fI\-link\fRãŠã‚ˆã³\fI\-linkoffline\fRオプションを使用ã—ã¦ã€å¤–部å‚照クラスã¸ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚外部å‚照クラスã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯\fIjavadoc\fRコマンドã®å®Ÿè¡Œã«ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -1640,7 +1640,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIlabel\fR¤Ï¡¢¾Êά²Äǽ¤Ê¥Æ¥­¥¹¥È¤Ç¡¢¥ê¥ó¥¯¤Î¥é¥Ù¥ë¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£¥é¥Ù¥ë¤Ë¤Ï¶õÇò¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIlabel\fR¤ò¾Êά¤¹¤ë¤È¡¢\fIpackage\&.class\&.member\fR¤¬¡¢¸½ºß¤Î¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤Ë±þ¤¸¤ÆŬÀÚ¤Ëû½Ì¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIlabel\fRã¯ã€çœç•¥å¯èƒ½ãªãƒ†ã‚­ã‚¹ãƒˆã§ã€ãƒªãƒ³ã‚¯ã®ãƒ©ãƒ™ãƒ«ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ラベルã«ã¯ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIlabel\fRã‚’çœç•¥ã™ã‚‹ã¨ã€\fIpackage\&.class\&.member\fRãŒã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã«å¿œã˜ã¦é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1651,10 +1651,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¶õÇòʸ»ú¤¬¡¢\fIpackage\&.class#member\fR¤È\fIlabel\fR¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤Ë¤Ê¤ê¤Þ¤¹¡£¥«¥Ã¥³¤ÎÆ⦤ζõÇòʸ»ú¤Ï¥é¥Ù¥ë¤ÎÀèƬ¤È¤Ï²ò¼á¤µ¤ì¤Ê¤¤¤¿¤á¡¢¥á¥½¥Ã¥É¤Î¥Ñ¥é¥á¡¼¥¿´Ö¤Ë¶õÇòʸ»ú¤òÆþ¤ì¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.RE
-.sp
-¤³¤ÎÎã¤Ç¤Ï¡¢\fI@see\fR¥¿¥°(\fICharacter\fR¥¯¥é¥¹Æâ)¤¬¡¢\fIString\fR¥¯¥é¥¹¤Îequals¥á¥½¥Ã¥É¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹¡£¥¿¥°¤Ë¤Ï¡¢Ì¾Á°\fIString#equals(Object)\fR¤È¥é¥Ù¥ë\fIequals\fR¤ÎξÊý¤Î°ú¿ô¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+空白文字ãŒã€\fIpackage\&.class#member\fRã¨\fIlabel\fRã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã«ãªã‚Šã¾ã™ã€‚カッコã®å†…å´ã®ç©ºç™½æ–‡å­—ã¯ãƒ©ãƒ™ãƒ«ã®å…ˆé ­ã¨ã¯è§£é‡ˆã•ã‚Œãªã„ãŸã‚ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‘ラメータ間ã«ç©ºç™½æ–‡å­—を入れã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。
+.RE
+.sp
+ã“ã®ä¾‹ã§ã¯ã€\fI@see\fRã‚¿ã‚°(\fICharacter\fRクラス内)ãŒã€\fIString\fRクラスã®equalsメソッドをå‚ç…§ã—ã¦ã„ã¾ã™ã€‚ã‚¿ã‚°ã«ã¯ã€åå‰\fIString#equals(Object)\fRã¨ãƒ©ãƒ™ãƒ«\fIequals\fRã®ä¸¡æ–¹ã®å¼•æ•°ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1667,7 +1667,7 @@
 .if n \{\
 .RE
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¼¡¤Î¤è¤¦¤ÊHTML¤òÀ¸À®¤·¤Þ¤¹¡£
+標準ドックレットã¯ã€æ¬¡ã®ã‚ˆã†ãªHTMLを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1681,14 +1681,14 @@
 .if n \{\
 .RE
 .\}
-Á°½Ò¤Î¥³¡¼¥É¤Ï¡¢¥Ö¥é¥¦¥¶¤Ë¼¡¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¡¢¥é¥Ù¥ë¤Ïɽ¼¨¥ê¥ó¥¯¡¦¥Æ¥­¥¹¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
-.sp
-\fB´ØÏ¢¹àÌÜ\fR:
+å‰è¿°ã®ã‚³ãƒ¼ãƒ‰ã¯ã€ãƒ–ラウザã«æ¬¡ã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã€ãƒ©ãƒ™ãƒ«ã¯è¡¨ç¤ºãƒªãƒ³ã‚¯ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã«ãªã£ã¦ã„ã¾ã™ã€‚
+.sp
+\fB関連項目\fR:
 .sp
 equals
 .RE
-̾Á°¤Î»ØÄê.PP
-¤³¤Î\fIpackage\&.class#member\fR¤È¤¤¤¦Ì¾Á°¤Ï¡¢\fIjava\&.lang\&.String#toUpperCase()\fR¤Î¤è¤¦¤Ê´°Á´½¤¾þ̾¤Ë¤¹¤ë¤³¤È¤â¡¢\fIString#toUpperCase()\fR¤ä\fI#toUpperCase()\fR¤Î¤è¤¦¤ÊÈó´°Á´½¤¾þ̾¤Ë¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Ì¾Á°¤¬´°Á´½¤¾þ¤è¤êû¤¤¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¸½à¤ÎJava¥³¥ó¥Ñ¥¤¥é¤Î¸¡º÷½ç½ø¤ò»ÈÍѤ·¤Æõ¤·¤Þ¤¹¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ì¾Á°¤Ï¡¢¥á¥½¥Ã¥É°ú¿ô¤Î´Ö¤Ê¤É¡¢¥«¥Ã¥³Æâ¤Î¥¹¥Ú¡¼¥¹¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ÉôʬŪ¤Ë½¤¾þ¤·¤¿Ã»¤¤Ì¾Á°¤ò»ØÄꤹ¤ë¤³¤È¤ÎÍøÅÀ¤Ï¡¢ÆþÎϤ¹¤ëʸ»ú¿ô¤¬¸º¤ë¤³¤È¤ä¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤¬Æɤߤ䤹¤¯¤Ê¤ë¤³¤È¤Ç¤¹¡£¼¡¤Î¥ê¥¹¥È¤ËÍÍ¡¹¤Ê·Á¼°¤Î̾Á°¤ò¼¨¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIClass\fR¤Ë¤Ï¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¡¢Type¤Ë¤Ï¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢ÇÛÎ󡢤ޤ¿¤Ï¥×¥ê¥ß¥Æ¥£¥Ö¤ò¡¢method¤Ë¤Ï¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤ò¡¢¤½¤ì¤¾¤ì»ØÄê¤Ç¤­¤Þ¤¹¡£
+åå‰ã®æŒ‡å®š.PP
+ã“ã®\fIpackage\&.class#member\fRã¨ã„ã†åå‰ã¯ã€\fIjava\&.lang\&.String#toUpperCase()\fRã®ã‚ˆã†ãªå®Œå…¨ä¿®é£¾åã«ã™ã‚‹ã“ã¨ã‚‚ã€\fIString#toUpperCase()\fRã‚„\fI#toUpperCase()\fRã®ã‚ˆã†ãªéžå®Œå…¨ä¿®é£¾åã«ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚åå‰ãŒå®Œå…¨ä¿®é£¾ã‚ˆã‚ŠçŸ­ã„å ´åˆã¯ã€\fIjavadoc\fRコマンドã¯ã€æ¨™æº–ã®Javaコンパイラã®æ¤œç´¢é †åºã‚’使用ã—ã¦æŽ¢ã—ã¾ã™ã€‚「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。åå‰ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰å¼•æ•°ã®é–“ãªã©ã€ã‚«ãƒƒã‚³å†…ã®ã‚¹ãƒšãƒ¼ã‚¹ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚部分的ã«ä¿®é£¾ã—ãŸçŸ­ã„åå‰ã‚’指定ã™ã‚‹ã“ã¨ã®åˆ©ç‚¹ã¯ã€å…¥åŠ›ã™ã‚‹æ–‡å­—æ•°ãŒæ¸›ã‚‹ã“ã¨ã‚„ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ãŒèª­ã¿ã‚„ã™ããªã‚‹ã“ã¨ã§ã™ã€‚次ã®ãƒªã‚¹ãƒˆã«æ§˜ã€…ãªå½¢å¼ã®åå‰ã‚’示ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIClass\fRã«ã¯ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’ã€Typeã«ã¯ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€é…列ã€ã¾ãŸã¯ãƒ—リミティブをã€methodã«ã¯ãƒ¡ã‚½ãƒƒãƒ‰ã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1725,7 +1725,7 @@
 .RE
 .\}
 .PP
-Á°¤Î¥ê¥¹¥È¤Ë´Ø¤¹¤ë¥á¥â:
+å‰ã®ãƒªã‚¹ãƒˆã«é–¢ã™ã‚‹ãƒ¡ãƒ¢:
 .sp
 .RS 4
 .ie n \{\
@@ -1735,7 +1735,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ºÇ½é¤Î¥¿¥¤¥×¤Î·Á¼°(¥Ñ¥Ã¥±¡¼¥¸¤È¥¯¥é¥¹¤ò¾Êά)¤Î¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¯¥é¥¹¤Î³¬ÁؤΤߤò¸¡º÷¤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¸½ºß¤Î¥¯¥é¥¹¤«¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤½¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤«¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¤Þ¤¿¤Ï¤½¤Î³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤«¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤«¤é¥á¥ó¥Ð¡¼¤ò¸¡º÷¤·¤Þ¤¹(¸¡º÷¹àÌÜ1\(en3)¡£¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¾¤ÎÉôʬ¤ä¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¸¡º÷¤·¤Þ¤»¤ó(¸¡º÷¹àÌÜ4\(en5)¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+最åˆã®ã‚¿ã‚¤ãƒ—ã®å½¢å¼(パッケージã¨ã‚¯ãƒ©ã‚¹ã‚’çœç•¥)ã®å ´åˆã€\fIjavadoc\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã®éšŽå±¤ã®ã¿ã‚’検索ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ãã®ã‚¹ãƒ¼ãƒ‘ークラスã‹ã‚¹ãƒ¼ãƒ‘ーインタフェースã€ã¾ãŸã¯ãã®å¤–å´ã‚’囲んã§ã„るクラスã‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‹ã‚‰ãƒ¡ãƒ³ãƒãƒ¼ã‚’検索ã—ã¾ã™(検索項目1\(en3)。ç¾åœ¨ã®ãƒ‘ッケージã®ä»–ã®éƒ¨åˆ†ã‚„ã€ä»–ã®ãƒ‘ッケージã¯æ¤œç´¢ã—ã¾ã›ã‚“(検索項目4\(en5)。「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1746,7 +1746,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥á¥½¥Ã¥É¤Þ¤¿¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤ÎÆþÎÏ»þ¤Ë¡¢\fIgetValue\fR¤Î¤è¤¦¤Ë¥«¥Ã¥³¤Ê¤·¤Î̾Á°¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢Æ±¤¸Ì¾Á°¤Î¥Õ¥£¡¼¥ë¥É¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î¥á¥½¥Ã¥É¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤¬¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡º÷¤ÇºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¥á¥½¥Ã¥É¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£·ë²Ì¤ÏÁ°¤â¤Ã¤ÆÆÃÄê¤Ç¤­¤Þ¤»¤ó¡£
+メソッドã¾ãŸã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®å…¥åŠ›æ™‚ã«ã€\fIgetValue\fRã®ã‚ˆã†ã«ã‚«ãƒƒã‚³ãªã—ã®åå‰ã‚’使用ã—ãŸå ´åˆã€åŒã˜åå‰ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŒå­˜åœ¨ã—ã¦ã„ãªã‘ã‚Œã°ã€\fIjavadoc\fRコマンドã¯ãã®ãƒ¡ã‚½ãƒƒãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¤œç´¢ã§æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ¡ã‚½ãƒƒãƒ‰ã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚çµæžœã¯å‰ã‚‚ã£ã¦ç‰¹å®šã§ãã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -1757,7 +1757,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¡¢¤¹¤Ù¤Æ¤Î·Á¼°¤Ë¤Ä¤¤¤Æ¡¢\fIouter\&.inner\fR¤È¤·¤Æ»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Ã±½ã¤Ë\fIinner\fR¤È¤Ï¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã€ã™ã¹ã¦ã®å½¢å¼ã«ã¤ã„ã¦ã€\fIouter\&.inner\fRã¨ã—ã¦æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å˜ç´”ã«\fIinner\fRã¨ã¯ã—ãªã„ã§ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -1768,12 +1768,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤¹¤Ç¤Ë½Ò¤Ù¤¿¤è¤¦¤Ë¡¢¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤È¤Î´Ö¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ¤Ï¡¢¥É¥Ã¥È(\fI\&.\fR)¤Ç¤Ï¤Ê¤¯¥·¥ã¡¼¥×µ­¹æ(\fI#\fR)¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ë»ØÄꤹ¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¢¤¤¤Þ¤¤¤µ¤ò²ò·è¤Ç¤­¤Þ¤¹¡£¥É¥Ã¥È¤Ï¡¢¥¯¥é¥¹¡¢¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¶èÀڤ뤿¤á¤Ë¤â»ÈÍѤµ¤ì¤ë¤«¤é¤Ç¤¹¡£¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤¢¤¤¤Þ¤¤¤µ¤¬¤Ê¤±¤ì¤Ð¥É¥Ã¥È¤ÏÀµ¤·¤¯²òÀϤµ¤ì¤Þ¤¹¤¬¡¢·Ù¹ð¤Ïɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.RE
-@see¥¿¥°¤Î¸¡º÷½ç½ø.PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Õ¥¡¥¤¥ë¡¢³µÍ×¥Õ¥¡¥¤¥ë¤Ëɽ¼¨¤µ¤ì¤ë\fI@see\fR¥¿¥°¤ò½èÍý¤·¤Þ¤¹¡£¸å¼Ô¤Î2¤Ä¤Î¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢´°Á´½¤¾þ¤Î̾Á°¤ò\fI@see\fR¥¿¥°¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢´°Á´½¤¾þ¤Î̾Á°¡¢¤Þ¤¿¤ÏÉôʬ½¤¾þ¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã™ã§ã«è¿°ã¹ãŸã‚ˆã†ã«ã€ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã¨ã®é–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã¯ã€ãƒ‰ãƒƒãƒˆ(\fI\&.\fR)ã§ã¯ãªãシャープ記å·(\fI#\fR)を使用ã—ã¾ã™ã€‚ã“ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã¯ã€ã‚ã„ã¾ã„ã•ã‚’解決ã§ãã¾ã™ã€‚ドットã¯ã€ã‚¯ãƒ©ã‚¹ã€ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã€ãƒ‘ッケージã€ãŠã‚ˆã³ã‚µãƒ–パッケージを区切るãŸã‚ã«ã‚‚使用ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚ãŸã ã—ã€\fIjavadoc\fRコマンドã§ã¯ã€ã‚ã„ã¾ã„ã•ãŒãªã‘ã‚Œã°ãƒ‰ãƒƒãƒˆã¯æ­£ã—ã解æžã•ã‚Œã¾ã™ãŒã€è­¦å‘Šã¯è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.RE
+@seeã‚¿ã‚°ã®æ¤œç´¢é †åº.PP
+\fIjavadoc\fRコマンドã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãƒ‘ッケージ・ファイルã€æ¦‚è¦ãƒ•ã‚¡ã‚¤ãƒ«ã«è¡¨ç¤ºã•ã‚Œã‚‹\fI@see\fRタグを処ç†ã—ã¾ã™ã€‚後者ã®2ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã€å®Œå…¨ä¿®é£¾ã®åå‰ã‚’\fI@see\fRã‚¿ã‚°ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ソース・ファイルã§ã¯ã€å®Œå…¨ä¿®é£¾ã®åå‰ã€ã¾ãŸã¯éƒ¨åˆ†ä¿®é£¾ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚
 .PP
-¼¡¤Ë¡¢\fI@see\fR¥¿¥°¤Î¸¡º÷½ç½ø¤ò¼¨¤·¤Þ¤¹¡£
+次ã«ã€\fI@see\fRã‚¿ã‚°ã®æ¤œç´¢é †åºã‚’示ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1783,7 +1783,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¸½ºß¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡£
+ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€‚
 .RE
 .sp
 .RS 4
@@ -1794,7 +1794,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+外å´ã‚’囲んã§ã„るクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1805,7 +1805,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+スーパークラスã¨ã‚¹ãƒ¼ãƒ‘ーインタフェース(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1816,7 +1816,7 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¡£
+ç¾åœ¨ã®ãƒ‘ッケージ。
 .RE
 .sp
 .RS 4
@@ -1827,12 +1827,12 @@
 .sp -1
 .IP "  5." 4.2
 .\}
-¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹(\fIimport\fRʸ¤Î½ç½ø¤Ë½¾¤Ã¤Æ¸¡º÷)¡£
+インãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(\fIimport\fRæ–‡ã®é †åºã«å¾“ã£ã¦æ¤œç´¢)。
 .RE
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢³Æ¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¹àÌÜ1\-3¤òºÆµ¢Åª¤ËŬÍѤ·¤Ê¤¬¤é¡¢°ìÃפ¹¤ë̾Á°¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¸¡º÷¤ò³¤±¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¤Þ¤º¸½ºß¤Î¥¯¥é¥¹¤ò¸¡º÷¤·¡¢¼¡¤Ë¤½¤Î³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹E¤ò¸¡º÷¤·¤¿¸å¡¢E¤Î¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤ò¸¡º÷¤·¤Æ¤«¤é¡¢E¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤ò¸¡º÷¤·¤Þ¤¹¡£¹àÌÜ4¤È5¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¸¡º÷¤¹¤ë½ç½ø¤Ï·è¤Þ¤Ã¤Æ¤¤¤Þ¤»¤ó(¤½¤Î½ç½ø¤Ï¡¢¸Ä¡¹¤Î¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹)¡£¹àÌÜ5¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjava\&.lang\fR¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢¤¹¤Ù¤Æ¤Î¥×¥í¥°¥é¥à¤Ë¼«Æ°Åª¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€å„クラスã«ã¤ã„ã¦é …ç›®1\-3ã‚’å†å¸°çš„ã«é©ç”¨ã—ãªãŒã‚‰ã€ä¸€è‡´ã™ã‚‹åå‰ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§æ¤œç´¢ã‚’続ã‘ã¾ã™ã€‚ã¤ã¾ã‚Šã€ã¾ãšç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã€æ¬¡ã«ãã®å¤–å´ã‚’囲んã§ã„るクラスEを検索ã—ãŸå¾Œã€Eã®ã‚¹ãƒ¼ãƒ‘ークラスを検索ã—ã¦ã‹ã‚‰ã€Eを囲んã§ã„るクラスを検索ã—ã¾ã™ã€‚é …ç›®4ã¨5ã§ã¯ã€\fIjavadoc\fRコマンドãŒ1ã¤ã®ãƒ‘ッケージ内ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’検索ã™ã‚‹é †åºã¯æ±ºã¾ã£ã¦ã„ã¾ã›ã‚“(ãã®é †åºã¯ã€å€‹ã€…ã®ã‚³ãƒ³ãƒ‘イラã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™)。項目5ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€\fIjava\&.lang\fRを検索ã—ã¾ã™ã€‚ã“ã®ãƒ‘ッケージã¯ã€ã™ã¹ã¦ã®ãƒ—ログラムã«è‡ªå‹•çš„ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´°Á´½¤¾þ¤Ç¤Ê¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ç\fI@see\fR¥¿¥°¤ò¸«¤Ä¤±¤ë¤È¡¢Java¥³¥ó¥Ñ¥¤¥é¤ÈƱ¤¸½ç½ø¤Ç»ØÄꤵ¤ì¤¿Ì¾Á°¤ò¸¡º÷¤·¤Þ¤¹(¤¿¤À¤·¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢ÆÃÄê¤Î̾Á°¶õ´Ö¤Î¤¢¤¤¤Þ¤¤¤µ¤ò¸¡½Ð¤·¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¤³¤ì¤é¤Î¥¨¥é¡¼¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤ë¤¿¤á¤Ç¤¹)¡£¤³¤Î¸¡º÷½ç½ø¤Ï¡¢Java¸À¸ì»ÅÍͤÇÀµ¼°¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢´ØÏ¢¤¹¤ë¥¯¥é¥¹¤È¥Ñ¥Ã¥±¡¼¥¸¡¢¤ª¤è¤Ó¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤¿¥¯¥é¥¹¤È¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤«¤é¤½¤Î̾Á°¤ò¸¡º÷¤·¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢¼¡¤Î½ç½ø¤Ç¸¡º÷¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€å®Œå…¨ä¿®é£¾ã§ãªã„ソース・ファイルã§\fI@see\fRタグを見ã¤ã‘ã‚‹ã¨ã€Javaコンパイラã¨åŒã˜é †åºã§æŒ‡å®šã•ã‚ŒãŸåå‰ã‚’検索ã—ã¾ã™(ãŸã ã—ã€\fIjavadoc\fRコマンドã¯ã€ç‰¹å®šã®åå‰ç©ºé–“ã®ã‚ã„ã¾ã„ã•ã‚’検出ã—ã¾ã›ã‚“。ã“ã‚Œã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«ã“れらã®ã‚¨ãƒ©ãƒ¼ãŒå­˜åœ¨ã—ã¦ã„ãªã„ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã‚‹ãŸã‚ã§ã™)。ã“ã®æ¤œç´¢é †åºã¯ã€Java言語仕様ã§æ­£å¼ã«å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€é–¢é€£ã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ãƒ‘ッケージã€ãŠã‚ˆã³ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¨ãƒ‘ッケージã®ã™ã¹ã¦ã‹ã‚‰ãã®åå‰ã‚’検索ã—ã¾ã™ã€‚具体的ã«ã¯ã€æ¬¡ã®é †åºã§æ¤œç´¢ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1842,7 +1842,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¸½ºß¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡£
+ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€‚
 .RE
 .sp
 .RS 4
@@ -1853,7 +1853,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-³°Â¦¤ò°Ï¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+外å´ã‚’囲んã§ã„るクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1864,7 +1864,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤È¥¹¡¼¥Ñ¡¼¥¤¥ó¥¿¥Õ¥§¡¼¥¹(ºÇ¤â¶á¤¤¤â¤Î¤«¤é¸¡º÷)¡£
+スーパークラスã¨ã‚¹ãƒ¼ãƒ‘ーインタフェース(最も近ã„ã‚‚ã®ã‹ã‚‰æ¤œç´¢)。
 .RE
 .sp
 .RS 4
@@ -1875,7 +1875,7 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¡£
+ç¾åœ¨ã®ãƒ‘ッケージ。
 .RE
 .sp
 .RS 4
@@ -1886,48 +1886,48 @@
 .sp -1
 .IP "  5." 4.2
 .\}
-¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹(\fIimport\fRʸ¤Î½ç½ø¤Ë½¾¤Ã¤Æ¸¡º÷)¡£
+インãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(\fIimport\fRæ–‡ã®é †åºã«å¾“ã£ã¦æ¤œç´¢)。
 .RE
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¬¤º¤·¤â¥µ¥Ö¥¯¥é¥¹¤ò¸¡º÷¤¹¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£¤Þ¤¿¡¢¼Â¹ÔÃæ¤Ë¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¤ë¾ì¹ç¤Ç¤â¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤·¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fI@see\fR¥¿¥°¤¬\fIjava\&.awt\&.event\&.KeyEvent\fR¥¯¥é¥¹Æâ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Æ¡¢\fIjava\&.awt package\fRÆâ¤Î¤¢¤ë̾Á°¤ò»²¾È¤·¤Æ¤¤¤Æ¤â¡¢¤½¤Î¥¯¥é¥¹¤¬¥¤¥ó¥Ý¡¼¥È¤·¤Ê¤¤¤«¤®¤ê\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¸¡º÷¤·¤Þ¤»¤ó¡£
-̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡.PP
-\fIlabel\fR¤ò¾Êά¤¹¤ë¤È¡¢\fIpackage\&.class\&.member\fR¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£°ìÈ̤ˡ¢¤³¤ì¤Ï¸½ºß¤Î¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤Ë±þ¤¸¤ÆŬÀÚ¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£Ã»½Ì¤µ¤ì¤ë¤È¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤êɬÍ׺Ǿ®¸Â¤Î̾Á°¤Î¤ß¤¬É½¼¨¤µ¤ì¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\&.toUpperCase()\fR¥á¥½¥Ã¥É¤Ë¡¢Æ±¤¸¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤Ø¤Î»²¾È¤È¾¤Î¥¯¥é¥¹¤Î¥á¥ó¥Ð¡¼¤Ø¤Î»²¾È¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹Ì¾¤¬É½¼¨¤µ¤ì¤ë¤Î¤Ï¸å¼Ô¤Î¥±¡¼¥¹¤Î¤ß¤Ç¤¹(¼¡¤Î¥ê¥¹¥È¤ò»²¾È)¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÁ´ÂÎŪ¤Ëºï½ü¤¹¤ë¤Ë¤Ï¡¢\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤ÏƱ¤¸¥¯¥é¥¹¡¢Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see String#toLowerCase()\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fItoLowerCase()\fR \- ¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹Ì¾¤ò¾Êά¤·¤Þ¤¹
-.RE
-.RS 4
-.RE
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤ÏÊ̤Υ¯¥é¥¹¡¢Æ±¤¸¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see Character#toLowerCase(char)\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fICharacter\&.toLowerCase(char)\fR \- ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¾Êά¤·¡¢¥¯¥é¥¹Ì¾¤ò´Þ¤ß¤Þ¤¹
-.RE
-.RS 4
-.RE
-.RS 4
-\fB»²¾È¤Î¥¿¥¤¥×\fR: \fI@see\fR¥¿¥°¤Ï°Û¤Ê¤ë¥¯¥é¥¹¡¢°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥á¥ó¥Ð¡¼¤ò»²¾È¤·¤Þ¤¹
-.RE
-.RS 4
-\fBÎã\fR: \fI@see java\&.io\&.File#exists()\fR
-.RE
-.RS 4
-\fBɽ¼¨\fR: \fIjava\&.io\&.File\&.exists()\fR \- ¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹Ì¾¤ò´Þ¤ß¤Þ¤¹
-.RE
-.RS 4
-.RE
-@see¥¿¥°¤ÎÎã.PP
-±¦Â¦¤Î¥³¥á¥ó¥È¤Ï¡¢\fI@see\fR¥¿¥°¤¬\fIjava\&.applet\&.Applet\fR¤Ê¤É¤ÎÊ̤Υѥ屡¼¥¸¤Î¥¯¥é¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ë¡¢Ì¾Á°¤¬¤É¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤ë¤«¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@see¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@see)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯ã€å¿…ãšã—もサブクラスを検索ã™ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。ã¾ãŸã€å®Ÿè¡Œä¸­ã«ä»–ã®ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã‚‹å ´åˆã§ã‚‚ã€ä»–ã®ãƒ‘ッケージを検索ã—ã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fI@see\fRã‚¿ã‚°ãŒ\fIjava\&.awt\&.event\&.KeyEvent\fRクラス内ã«å«ã¾ã‚Œã¦ã„ã¦ã€\fIjava\&.awt package\fR内ã®ã‚ã‚‹åå‰ã‚’å‚ç…§ã—ã¦ã„ã¦ã‚‚ã€ãã®ã‚¯ãƒ©ã‚¹ãŒã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ãªã„ã‹ãŽã‚Š\fIjavadoc\fRコマンドã¯ãã®ãƒ‘ッケージを検索ã—ã¾ã›ã‚“。
+åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•.PP
+\fIlabel\fRã‚’çœç•¥ã™ã‚‹ã¨ã€\fIpackage\&.class\&.member\fRãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚一般ã«ã€ã“ã‚Œã¯ç¾åœ¨ã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã«å¿œã˜ã¦é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚短縮ã•ã‚Œã‚‹ã¨ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã‚Šå¿…è¦æœ€å°é™ã®åå‰ã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚ãŸã¨ãˆã°ã€\fIString\&.toUpperCase()\fRメソッドã«ã€åŒã˜ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã¸ã®å‚ç…§ã¨ä»–ã®ã‚¯ãƒ©ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã¸ã®å‚ç…§ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹åãŒè¡¨ç¤ºã•ã‚Œã‚‹ã®ã¯å¾Œè€…ã®ã‚±ãƒ¼ã‚¹ã®ã¿ã§ã™(次ã®ãƒªã‚¹ãƒˆã‚’å‚ç…§)。パッケージåを全体的ã«å‰Šé™¤ã™ã‚‹ã«ã¯ã€\fI\-noqualifier\fRオプションを使用ã—ã¾ã™ã€‚
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯åŒã˜ã‚¯ãƒ©ã‚¹ã€åŒã˜ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see String#toLowerCase()\fR
+.RE
+.RS 4
+\fB表示\fR: \fItoLowerCase()\fR \- パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹åã‚’çœç•¥ã—ã¾ã™
+.RE
+.RS 4
+.RE
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯åˆ¥ã®ã‚¯ãƒ©ã‚¹ã€åŒã˜ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see Character#toLowerCase(char)\fR
+.RE
+.RS 4
+\fB表示\fR: \fICharacter\&.toLowerCase(char)\fR \- パッケージåã‚’çœç•¥ã—ã€ã‚¯ãƒ©ã‚¹åã‚’å«ã¿ã¾ã™
+.RE
+.RS 4
+.RE
+.RS 4
+\fBå‚ç…§ã®ã‚¿ã‚¤ãƒ—\fR: \fI@see\fRã‚¿ã‚°ã¯ç•°ãªã‚‹ã‚¯ãƒ©ã‚¹ã€ç•°ãªã‚‹ãƒ‘ッケージã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’å‚ç…§ã—ã¾ã™
+.RE
+.RS 4
+\fB例\fR: \fI@see java\&.io\&.File#exists()\fR
+.RE
+.RS 4
+\fB表示\fR: \fIjava\&.io\&.File\&.exists()\fR \- パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹åã‚’å«ã¿ã¾ã™
+.RE
+.RS 4
+.RE
+@seeã‚¿ã‚°ã®ä¾‹.PP
+å³å´ã®ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€\fI@see\fRã‚¿ã‚°ãŒ\fIjava\&.applet\&.Applet\fRãªã©ã®åˆ¥ã®ãƒ‘ッケージã®ã‚¯ãƒ©ã‚¹å†…ã«ã‚ã‚‹å ´åˆã«ã€åå‰ãŒã©ã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã‚‹ã‹ã‚’示ã—ã¦ã„ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@seeã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@see)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1948,24 +1948,24 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-\fI@se\fR\fIe\fR¥¿¥°¤ò³ÈÄ¥¤·¤Æ¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI@se\fR\fIe\fRã‚¿ã‚°ã‚’æ‹¡å¼µã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„クラスã«ãƒªãƒ³ã‚¯ã™ã‚‹ã«ã¯ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚
 .PP
 @serial \fIfield\-description\fR | include | exclude
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-¥Ç¥Õ¥©¥ë¥È¤ÎľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤ·¤Þ¤¹¡£¥¯¥é¥¹¤ÎľÎó²½²Äǽ¤Ê¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤Îʸ½ñ²½
-(http://docs\&.oracle\&.com/javase/8/docs/platform/serialization/spec/serial\-arch\&.html#5251)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-Oracle¤ÎľÎ󲽤µ¤ì¤¿·Á¼°¤Î»ÅÍͤ˥¯¥é¥¹¤ò´Þ¤á¤ë´ð½à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/serialized\-criteria\-137781\&.html)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fIfield\-description\fR(¾Êά²Äǽ)¤Ç¤Ï¡¢¥Õ¥£¡¼¥ë¥É¤Î°ÕÌ£¤òÀâÌÀ¤·¡¢¼è¤êÆÀ¤ëÃͤΥꥹ¥È¤ò¼¨¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£É¬Íפʾì¹ç¤Ï¡¢Ê£¿ô¤Î¹Ô¤ËÅϤäÆÀâÌÀ¤òµ­½Ò¤Ç¤­¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ï¡¢¤³¤Î¾ðÊó¤ò¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤ËÄɲä·¤Þ¤¹¡£Áê¸ß»²¾È¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥¯¥é¥¹¤òľÎ󲽤·¤¿¸å¤ËľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤ò¥¯¥é¥¹¤ËÄɲä·¤¿¾ì¹ç¡¢¼çÀâÌÀ¤Ë¡¢Äɲä·¤¿¥Ð¡¼¥¸¥ç¥ó¤ò¼±Ê̤¹¤ëʸ¤òÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fIinclude\fR¤ª¤è¤Ó\fIexclude\fR°ú¿ô¤Ï¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¥Ú¡¼¥¸¤Ë¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤á¤ë¤«½ü³°¤¹¤ë¤«¤ò¼¨¤·¤Þ¤¹¡£¼¡¤Î¤è¤¦¤Ëµ¡Ç½¤·¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+デフォルトã®ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã—ã¾ã™ã€‚クラスã®ç›´åˆ—化å¯èƒ½ãªãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®æ–‡æ›¸åŒ–
+(http://docs\&.oracle\&.com/javase/8/docs/platform/serialization/spec/serial\-arch\&.html#5251)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+Oracleã®ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã®ä»•æ§˜ã«ã‚¯ãƒ©ã‚¹ã‚’å«ã‚る基準
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/serialized\-criteria\-137781\&.html)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fIfield\-description\fR(çœç•¥å¯èƒ½)ã§ã¯ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®æ„味を説明ã—ã€å–り得る値ã®ãƒªã‚¹ãƒˆã‚’示ã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚å¿…è¦ãªå ´åˆã¯ã€è¤‡æ•°ã®è¡Œã«æ¸¡ã£ã¦èª¬æ˜Žã‚’記述ã§ãã¾ã™ã€‚標準ドックレットã¯ã€ã“ã®æƒ…報をã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã«è¿½åŠ ã—ã¾ã™ã€‚相互å‚照ページをå‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+クラスを直列化ã—ãŸå¾Œã«ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’クラスã«è¿½åŠ ã—ãŸå ´åˆã€ä¸»èª¬æ˜Žã«ã€è¿½åŠ ã—ãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’識別ã™ã‚‹æ–‡ã‚’追加ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fIinclude\fRãŠã‚ˆã³\fIexclude\fR引数ã¯ã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ãƒšãƒ¼ã‚¸ã«ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージをå«ã‚ã‚‹ã‹é™¤å¤–ã™ã‚‹ã‹ã‚’示ã—ã¾ã™ã€‚次ã®ã‚ˆã†ã«æ©Ÿèƒ½ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1975,7 +1975,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISerializable\fR¤ò¼ÂÁõ¤·¤Æ¤¤¤ëpublic¤Þ¤¿¤Ïprotected¥¯¥é¥¹¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥¯¥é¥¹¤¬Â°¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸)¤¬\fI@serial exclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤®¤ê¡¢´Þ¤á¤é¤ì¤Þ¤¹¡£
+\fISerializable\fRを実装ã—ã¦ã„ã‚‹publicã¾ãŸã¯protectedクラスã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ã‚¯ãƒ©ã‚¹ãŒå±žã™ã‚‹ãƒ‘ッケージ)ãŒ\fI@serial exclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ãªã„ã‹ãŽã‚Šã€å«ã‚られã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1986,59 +1986,59 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISerializable\fR¤ò¼ÂÁõ¤·¤Æ¤¤¤ëprivate¤Þ¤¿¤Ïpackage\-private¥¯¥é¥¹¤Ï¡¢¤½¤Î¥¯¥é¥¹(¤Þ¤¿¤Ï¤½¤Î¥¯¥é¥¹¤¬Â°¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸)¤¬\fI@serial include\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤®¤ê¡¢½ü³°¤µ¤ì¤Þ¤¹¡£
-.RE
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjavax\&.swing\fR¥Ñ¥Ã¥±¡¼¥¸¤Ïpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.javaÆâ¤Ç\fI@serial\fR
-\fIexclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£public¥¯¥é¥¹\fIjava\&.security\&.BasicPermission\fR¤Ï\fI@serial exclude\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£package\-private¥¯¥é¥¹\fIjava\&.util\&.PropertyPermissionCollection\fR¤Ï\fI@serial include\fR¥¿¥°¤Ç¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.sp
-¥¯¥é¥¹¡¦¥ì¥Ù¥ë¤Î\fI@serial\fR¥¿¥°¤Ï¥Ñ¥Ã¥±¡¼¥¸¡¦¥ì¥Ù¥ë¤Î\fI@serial\fR¥¿¥°¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+\fISerializable\fRを実装ã—ã¦ã„ã‚‹privateã¾ãŸã¯package\-privateクラスã¯ã€ãã®ã‚¯ãƒ©ã‚¹(ã¾ãŸã¯ãã®ã‚¯ãƒ©ã‚¹ãŒå±žã™ã‚‹ãƒ‘ッケージ)ãŒ\fI@serial include\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ãªã„ã‹ãŽã‚Šã€é™¤å¤–ã•ã‚Œã¾ã™ã€‚
+.RE
+.sp
+ãŸã¨ãˆã°ã€\fIjavax\&.swing\fRパッケージã¯package\&.htmlã¾ãŸã¯package\-info\&.java内ã§\fI@serial\fR
+\fIexclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚publicクラス\fIjava\&.security\&.BasicPermission\fRã¯\fI@serial exclude\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚package\-privateクラス\fIjava\&.util\&.PropertyPermissionCollection\fRã¯\fI@serial include\fRã‚¿ã‚°ã§ãƒžãƒ¼ã‚¯ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.sp
+クラス・レベルã®\fI@serial\fRã‚¿ã‚°ã¯ãƒ‘ッケージ・レベルã®\fI@serial\fRタグをオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 @serialData \fIdata\-description\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-¥Ç¡¼¥¿¤ÎÀâÌÀÃͤò»ÈÍѤ·¤Æ¡¢Ä¾Î󲽤µ¤ì¤¿·Á¼°¤Ç¤Î¥Ç¡¼¥¿¤Î·¿¤È½ç½ø¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£¤³¤Î¥Ç¡¼¥¿¤Ë¤Ï¡¢\fIwriteObject\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ½ñ¤­¹þ¤Þ¤ì¤ë¾Êά²Äǽ¤Ê¥Ç¡¼¥¿¡¢¤ª¤è¤Ó\fIExternalizable\&.writeExternal\fR¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ½ñ¤­¹þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Ç¡¼¥¿(¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤ò´Þ¤à)¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
-.sp
-\fI@serialData\fR¥¿¥°¤Ï¡¢\fIwriteObject\fR¡¢\fIreadObject\fR¡¢\fIwriteExternal\fR¡¢\fIreadExternal\fR¡¢\fIwriteReplace\fR¤ª¤è¤Ó\fIreadResolve\fR¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+データã®èª¬æ˜Žå€¤ã‚’使用ã—ã¦ã€ç›´åˆ—化ã•ã‚ŒãŸå½¢å¼ã§ã®ãƒ‡ãƒ¼ã‚¿ã®åž‹ã¨é †åºã‚’ドキュメント化ã—ã¾ã™ã€‚ã“ã®ãƒ‡ãƒ¼ã‚¿ã«ã¯ã€\fIwriteObject\fRメソッドã«ã‚ˆã£ã¦æ›¸ãè¾¼ã¾ã‚Œã‚‹çœç•¥å¯èƒ½ãªãƒ‡ãƒ¼ã‚¿ã€ãŠã‚ˆã³\fIExternalizable\&.writeExternal\fRメソッドã«ã‚ˆã£ã¦æ›¸ãè¾¼ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿(ベース・クラスをå«ã‚€)ãŒå«ã¾ã‚Œã¾ã™ã€‚
+.sp
+\fI@serialData\fRã‚¿ã‚°ã¯ã€\fIwriteObject\fRã€\fIreadObject\fRã€\fIwriteExternal\fRã€\fIreadExternal\fRã€\fIwriteReplace\fRãŠã‚ˆã³\fIreadResolve\fRメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 @serialField \fIfield\-name\fR \fIfield\-type\fR \fIfield\-description\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-\fISerializable\fR¥¯¥é¥¹¤Î\fIserialPersistentFields\fR¥á¥ó¥Ð¡¼¤Î\fIObjectStreamField\fR¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£\fIObjectStreamField\fR¥³¥ó¥Ý¡¼¥Í¥ó¥È¤´¤È¤Ë1¤Ä¤Î\fI@serialField\fR¥¿¥°¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+\fISerializable\fRクラスã®\fIserialPersistentFields\fRメンãƒãƒ¼ã®\fIObjectStreamField\fRコンãƒãƒ¼ãƒãƒ³ãƒˆã‚’ドキュメント化ã—ã¾ã™ã€‚\fIObjectStreamField\fRコンãƒãƒ¼ãƒãƒ³ãƒˆã”ã¨ã«1ã¤ã®\fI@serialField\fRタグを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 @since \fIsince\-text\fR
 .RS 4
-JDK 1\&.1¤ÇƳÆþ
-.sp
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢»ØÄꤵ¤ì¤¿\fIsince\-text\fR¤ÎÃͤÎ\fI¡ÖƳÆþ¤µ¤ì¤¿¥Ð¡¼¥¸¥ç¥ó¡×\fR¸«½Ð¤·¤òÄɲä·¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ë¤Ï¡¢ÆÃÊ̤ÊÆâÉô¹½Â¤¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥¿¥°¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¡¢¤Ä¤Þ¤ê³µÍס¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤ÇÍ­¸ú¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢ÆÃÄê¤ÎÊѹ¹¤Þ¤¿¤Ïµ¡Ç½¤¬¡¢\fIsince\-text\fR¤ÎÃͤˤè¤Ã¤Æ»ØÄꤵ¤ì¤¿¥½¥Õ¥È¥¦¥§¥¢¡¦¥ê¥ê¡¼¥¹°Ê¹ß¡¢Â¸ºß¤·¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@since 1\&.5\fR¤Ç¤¹¡£
-.sp
-Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¾ì¹ç¡¢\fI@since\fR¥¿¥°¤Ï¡¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥àAPI»ÅÍͤΥС¼¥¸¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤¬¥ê¥Õ¥¡¥ì¥ó¥¹¼ÂÁõ¤ËÄɲ䵤줿»þ´ü¤ò¼¨¤¹¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£Ê£¿ô¤Î\fI@since\fR¥¿¥°¤ò»ÈÍѤǤ­¡¢Ê£¿ô¤Î\fI@author\fR¥¿¥°¤Î¤è¤¦¤Ë°·¤ï¤ì¤Þ¤¹¡£¥×¥í¥°¥é¥àÍ×ÁǤ¬Ê£¿ô¤ÎAPI¤Ç»ÈÍѤµ¤ì¤ë¾ì¹ç¡¢Ê£¿ô¤Î¥¿¥°¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+JDK 1\&.1ã§å°Žå…¥
+.sp
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€æŒ‡å®šã•ã‚ŒãŸ\fIsince\-text\fRã®å€¤ã®\fI「導入ã•ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fR見出ã—を追加ã—ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã«ã¯ã€ç‰¹åˆ¥ãªå†…部構造ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚¿ã‚°ã¯ã€ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã€ã¤ã¾ã‚Šæ¦‚è¦ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã§æœ‰åŠ¹ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ç‰¹å®šã®å¤‰æ›´ã¾ãŸã¯æ©Ÿèƒ½ãŒã€\fIsince\-text\fRã®å€¤ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ãƒ»ãƒªãƒªãƒ¼ã‚¹ä»¥é™ã€å­˜åœ¨ã—ã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@since 1\&.5\fRã§ã™ã€‚
+.sp
+Javaプラットフォームã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã®å ´åˆã€\fI@since\fRã‚¿ã‚°ã¯ã€JavaプラットフォームAPI仕様ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’示ã—ã¾ã™ã€‚ソース・コードãŒãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹å®Ÿè£…ã«è¿½åŠ ã•ã‚ŒãŸæ™‚期を示ã™ã¨ã¯é™ã‚Šã¾ã›ã‚“。複数ã®\fI@since\fRタグを使用ã§ãã€è¤‡æ•°ã®\fI@author\fRã‚¿ã‚°ã®ã‚ˆã†ã«æ‰±ã‚ã‚Œã¾ã™ã€‚プログラムè¦ç´ ãŒè¤‡æ•°ã®APIã§ä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€è¤‡æ•°ã®ã‚¿ã‚°ã‚’使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 @throws \fIclass\-name\fR \fIdescription\fR
 .RS 4
-JDK 1\&.2¤ÇƳÆþ
-.sp
-\fI@exception\fR¥¿¥°¤ÈƱ¤¸Æ°ºî¤ò¤·¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@throws¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@exception)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fI@throws\fR¥¿¥°¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë\fIThrows\fR¾®¸«½Ð¤·¤òÄɲ䷤ơ¢\fIclass\-name\fR¤ª¤è¤Ó\fIdescription\fR¥Æ¥­¥¹¥È¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£\fIclass\-name\fR¤Ï¡¢¤½¤Î¥á¥½¥Ã¥É¤«¤é¥¹¥í¡¼¤µ¤ì¤ë²ÄǽÀ­¤Î¤¢¤ëÎã³°¤Î̾Á°¤Ç¤¹¡£¤³¤Î¥¿¥°¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç¤Î¤ßÍ­¸ú¤Ç¤¹¡£¤³¤Î¥¯¥é¥¹¤¬´°Á´»ØÄê¤Î̾Á°¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡º÷½ç½ø¤Ë½¾¤Ã¤Æ¥¯¥é¥¹¤òõ¤·¤Þ¤¹¡£Ê£¿ô¤Î\fI@throws\fR¥¿¥°¤ò¡¢Æ±¤¸Îã³°¤Þ¤¿¤Ï°ã¤¦Îã³°¤Î»ØÄꤷ¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£¡Ö@see¥¿¥°¤Î¸¡º÷½ç½ø¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯ºÑÎã³°¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢\fI@throws\fR¥¿¥°¤¬throwsÀáÆâ¤ÎÎã³°ÍѤ˸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fI@throws\fR¥¿¥°¤Ç¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¤«¤Î¤è¤¦¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÎã³°¤¬HTML½ÐÎϤËÀâÌÀ¤Ê¤·¤ÇÄɲ䵤ì¤Þ¤¹¡£
-.sp
-¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤ë¥á¥½¥Ã¥ÉÆâ¤ÇÎã³°¤¬ÌÀ¼¨Åª¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Î¤ß¡¢\fI@throws\fR¤Î¥É¥­¥å¥á¥ó¥È¤¬¤½¤Î¥á¥½¥Ã¥É¤«¤é¥µ¥Ö¥¯¥é¥¹¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥á¥½¥Ã¥É¤«¤é¼ÂÁõ¥á¥½¥Ã¥É¤Ë¥³¥Ô¡¼¤µ¤ì¤ë¾ì¹ç¤âƱÍͤǤ¹¡£\fI{@inheritDoc}\fR¥¿¥°¤ò»ÈÍѤ·¤Æ¡¢\fI@throws\fR¥¿¥°¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤ò·Ñ¾µ¤¹¤ë¤è¤¦¤Ë¶¯À©¤Ç¤­¤Þ¤¹¡£
+JDK 1\&.2ã§å°Žå…¥
+.sp
+\fI@exception\fRã‚¿ã‚°ã¨åŒã˜å‹•ä½œã‚’ã—ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@throwsã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@exception)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fI@throws\fRã‚¿ã‚°ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«\fIThrows\fRå°è¦‹å‡ºã—を追加ã—ã¦ã€\fIclass\-name\fRãŠã‚ˆã³\fIdescription\fRテキストを書ãè¾¼ã¿ã¾ã™ã€‚\fIclass\-name\fRã¯ã€ãã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚¹ãƒ­ãƒ¼ã•ã‚Œã‚‹å¯èƒ½æ€§ã®ã‚る例外ã®åå‰ã§ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§ã®ã¿æœ‰åŠ¹ã§ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ãŒå®Œå…¨æŒ‡å®šã®åå‰ã§è¨˜è¿°ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¤œç´¢é †åºã«å¾“ã£ã¦ã‚¯ãƒ©ã‚¹ã‚’探ã—ã¾ã™ã€‚複数ã®\fI@throws\fRã‚¿ã‚°ã‚’ã€åŒã˜ä¾‹å¤–ã¾ãŸã¯é•ã†ä¾‹å¤–ã®æŒ‡å®šã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚「@seeã‚¿ã‚°ã®æ¤œç´¢é †åºã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯æ¸ˆä¾‹å¤–ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚ˆã†ã«ã™ã‚‹ãŸã‚ã«ã€\fI@throws\fRã‚¿ã‚°ãŒthrows節内ã®ä¾‹å¤–用ã«å­˜åœ¨ã—ãªã„å ´åˆã¯ã€\fI@throws\fRã‚¿ã‚°ã§ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚ŒãŸã‹ã®ã‚ˆã†ã«ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ä¾‹å¤–ãŒHTML出力ã«èª¬æ˜Žãªã—ã§è¿½åŠ ã•ã‚Œã¾ã™ã€‚
+.sp
+オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã‚‹ãƒ¡ã‚½ãƒƒãƒ‰å†…ã§ä¾‹å¤–ãŒæ˜Žç¤ºçš„ã«å®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã®ã¿ã€\fI@throws\fRã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒãã®ãƒ¡ã‚½ãƒƒãƒ‰ã‹ã‚‰ã‚µãƒ–クラスã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚インタフェース・メソッドã‹ã‚‰å®Ÿè£…メソッドã«ã‚³ãƒ”ーã•ã‚Œã‚‹å ´åˆã‚‚åŒæ§˜ã§ã™ã€‚\fI{@inheritDoc}\fRタグを使用ã—ã¦ã€\fI@throws\fRã‚¿ã‚°ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã‚’継承ã™ã‚‹ã‚ˆã†ã«å¼·åˆ¶ã§ãã¾ã™ã€‚
 .RE
 .PP
 {@value \fIpackage\&.class#field\fR}
 .RS 4
-JDK 1\&.4¤ÇƳÆþ
-.sp
-Äê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£\fI{@value}\fR¥¿¥°¤¬ÀÅŪ¥Õ¥£¡¼¥ë¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç°ú¿ô¤Ê¤·¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎÄê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£
+JDK 1\&.4ã§å°Žå…¥
+.sp
+定数ã®å€¤ã‚’表示ã—ã¾ã™ã€‚\fI{@value}\fRã‚¿ã‚°ãŒé™çš„フィールドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§å¼•æ•°ãªã—ã§ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãã®å®šæ•°ã®å€¤ã‚’表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2052,7 +2052,7 @@
 .if n \{\
 .RE
 .\}
-Ǥ°Õ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Ç°ú¿ô\fIpackage\&.class#field\fR¤¢¤ê¤Ç»ÈÍѤµ¤ì¤¿¾ì¹ç¡¢\fI{@value}\fR¥¿¥°¤Ï»ØÄꤵ¤ì¤¿Äê¿ô¤ÎÃͤòɽ¼¨¤·¤Þ¤¹¡£
+ä»»æ„ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã§å¼•æ•°\fIpackage\&.class#field\fRã‚ã‚Šã§ä½¿ç”¨ã•ã‚ŒãŸå ´åˆã€\fI{@value}\fRã‚¿ã‚°ã¯æŒ‡å®šã•ã‚ŒãŸå®šæ•°ã®å€¤ã‚’表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2066,48 +2066,48 @@
 .if n \{\
 .RE
 .\}
-°ú¿ô\fIpackage\&.class#field\fR¤Ï¡¢\fI@see\fR¥¿¥°°ú¿ô¤ÈƱ°ì¤Î·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥á¥ó¥Ð¡¼¤ÏÀÅŪ¥Õ¥£¡¼¥ë¥É¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-¤³¤ì¤é¤ÎÄê¿ô¤ÎÃͤϡÖÄê¿ô¥Õ¥£¡¼¥ë¥ÉÃÍ¡×
-(http://docs\&.oracle\&.com/javase/8/docs/api/constant\-values\&.html)¤Ë¤âɽ¼¨¤µ¤ì¤Þ¤¹
+引数\fIpackage\&.class#field\fRã¯ã€\fI@see\fRタグ引数ã¨åŒä¸€ã®å½¢å¼ã«ãªã‚Šã¾ã™ã€‚ãŸã ã—ã€ãƒ¡ãƒ³ãƒãƒ¼ã¯é™çš„フィールドã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+ã“れらã®å®šæ•°ã®å€¤ã¯ã€Œå®šæ•°ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰å€¤ã€
+(http://docs\&.oracle\&.com/javase/8/docs/api/constant\-values\&.html)ã«ã‚‚表示ã•ã‚Œã¾ã™
 .RE
 .PP
 @version \fIversion\-text\fR
 .RS 4
-JDK 1\&.0¤ÇƳÆþ
-.sp
-\fI\-version\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë\fI¡Ö¥Ð¡¼¥¸¥ç¥ó¡×\fR¾®¸«½Ð¤·¤òÄɲ䷤ơ¢»ØÄꤵ¤ì¤¿\fIversion\-text\fR¤ÎÃͤò½ñ¤­¹þ¤ß¤Þ¤¹¡£¤³¤Î¥¿¥°¤Ï¤³¤Î¥³¡¼¥É¤¬´Þ¤Þ¤ì¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¸½ºß¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤òÊÝ»ý¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¤Î¤ËÂФ·¡¢\fI@since\fR¥¿¥°¤Ï¡¢¤³¤Î¥³¡¼¥É¤¬Æ³Æþ¤µ¤ì¤¿¥ê¥ê¡¼¥¹ÈÖ¹æ¤òÊÝ»ý¤·¤Þ¤¹¡£\fIversion\-text\fR¤ÎÃͤˤϡ¢ÆÃÊ̤ÊÆâÉô¹½Â¤¤Ï¤¢¤ê¤Þ¤»¤ó¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î@version¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@version)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-1¤Ä¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ËÊ£¿ô¤Î\fI@version\fR¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£É¬Íפ˱þ¤¸¤Æ¡¢1¤Ä¤Î\fI@version\fR¥¿¥°¤Ë1¤Ä¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ê£¿ô¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£Á°¼Ô¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ̾Á°¤È̾Á°¤Î´Ö¤Ë¥«¥ó¥Þ(,)¤È¶õÇòʸ»ú¤¬ÁÞÆþ¤µ¤ì¤Þ¤¹¡£¸å¼Ô¤Î¾ì¹ç¤Ï¡¢¥Æ¥­¥¹¥ÈÁ´ÂΤ¬²òÀϤµ¤ì¤ë¤³¤È¤Ê¤¯¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥«¥ó¥Þ¤Ç¤Ï¤Ê¤¯¡¢³Æ¸À¸ì¤ËÂбþ¤·¤¿Ì¾Á°¶èÀÚ¤êʸ»ú¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¡¢1¹Ô¤ËÊ£¿ô¤Î̾Á°¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
-.RE
-.SH "¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê"
+JDK 1\&.0ã§å°Žå…¥
+.sp
+\fI\-version\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«\fI「ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fRå°è¦‹å‡ºã—を追加ã—ã¦ã€æŒ‡å®šã•ã‚ŒãŸ\fIversion\-text\fRã®å€¤ã‚’書ãè¾¼ã¿ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ã¯ã“ã®ã‚³ãƒ¼ãƒ‰ãŒå«ã¾ã‚Œã‚‹ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ç¾åœ¨ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’ä¿æŒã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã‚ã‚‹ã®ã«å¯¾ã—ã€\fI@since\fRã‚¿ã‚°ã¯ã€ã“ã®ã‚³ãƒ¼ãƒ‰ãŒå°Žå…¥ã•ã‚ŒãŸãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’ä¿æŒã—ã¾ã™ã€‚\fIversion\-text\fRã®å€¤ã«ã¯ã€ç‰¹åˆ¥ãªå†…部構造ã¯ã‚ã‚Šã¾ã›ã‚“。Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®@versionã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#@version)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+1ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«è¤‡æ•°ã®\fI@version\fRã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚å¿…è¦ã«å¿œã˜ã¦ã€1ã¤ã®\fI@version\fRã‚¿ã‚°ã«1ã¤ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã€è¤‡æ•°ã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å‰è€…ã®å ´åˆã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦åå‰ã¨åå‰ã®é–“ã«ã‚«ãƒ³ãƒž(,)ã¨ç©ºç™½æ–‡å­—ãŒæŒ¿å…¥ã•ã‚Œã¾ã™ã€‚後者ã®å ´åˆã¯ã€ãƒ†ã‚­ã‚¹ãƒˆå…¨ä½“ãŒè§£æžã•ã‚Œã‚‹ã“ã¨ãªãã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚«ãƒ³ãƒžã§ã¯ãªãã€å„言語ã«å¯¾å¿œã—ãŸåå‰åŒºåˆ‡ã‚Šæ–‡å­—を使用ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ãã«ã€1è¡Œã«è¤‡æ•°ã®åå‰ã‚’指定ã§ãã¾ã™ã€‚
+.RE
+.SH "タグを使用ã§ãる場所"
 .PP
-¤³¤³¤Ç¤Ï¡¢¥¿¥°¤ò»ÈÍѤǤ­¤ë¾ì½ê¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¼¡¤Î¥¿¥°¤¬¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤Þ¤¹¡£\fI@see\fR¡¢\fI@since\fR¡¢\fI@deprecated\fR¡¢\fI{@link}\fR¡¢\fI{@linkplain}\fR¤ª¤è¤Ó\fI{@docroot}\fR¡£
-.SS "³µÍ×¥¿¥°"
+ã“ã“ã§ã¯ã€ã‚¿ã‚°ã‚’使用ã§ãる場所ã«ã¤ã„ã¦èª¬æ˜Žã—ã¾ã™ã€‚次ã®ã‚¿ã‚°ãŒã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã¾ã™ã€‚\fI@see\fRã€\fI@since\fRã€\fI@deprecated\fRã€\fI{@link}\fRã€\fI{@linkplain}\fRãŠã‚ˆã³\fI{@docroot}\fR。
+.SS "概è¦ã‚¿ã‚°"
 .PP
-³µÍ×¥¿¥°¤Ï¡¢³µÍ×¥Ú¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤Ç¤¹(¤³¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ï¡¢Ä̾ïoverview\&.html¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ê¤Þ¤¹)¡£Â¾¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¾ì¹ç¤ÈƱÍͤˡ¢¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢¼çÀâÌÀ¤Î¸å¤Ç»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+概è¦ã‚¿ã‚°ã¯ã€æ¦‚è¦ãƒšãƒ¼ã‚¸ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã§ã™(ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯ã€é€šå¸¸overview\&.htmlã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«ã‚ã‚Šã¾ã™)。他ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®å ´åˆã¨åŒæ§˜ã«ã€ã“れらã®ã‚¿ã‚°ã¯ã€ä¸»èª¬æ˜Žã®å¾Œã§ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-Java SE 1\&.2¤Ç¤Ï¡¢³µÍץɥ­¥å¥á¥ó¥ÈÆâ¤Î\fI{@link}\fR¥¿¥°¤ËÉÔ¶ñ¹ç¤¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥È¤ÏÀµ¤·¤¯É½¼¨¤µ¤ì¤Þ¤¹¤¬¡¢¥ê¥ó¥¯¤¬ÀßÄꤵ¤ì¤Þ¤»¤ó¡£¸½ºß¤Î¤È¤³¤í¡¢\fI{@docRoot}\fR¥¿¥°¤Ï¡¢³µÍץɥ­¥å¥á¥ó¥ÈÆâ¤Ç¤Ïµ¡Ç½¤·¤Þ¤»¤ó¡£
+\fB注æ„:\fR
+Java SE 1\&.2ã§ã¯ã€æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã®\fI{@link}\fRã‚¿ã‚°ã«ä¸å…·åˆãŒã‚ã‚Šã¾ã™ã€‚テキストã¯æ­£ã—ã表示ã•ã‚Œã¾ã™ãŒã€ãƒªãƒ³ã‚¯ãŒè¨­å®šã•ã‚Œã¾ã›ã‚“。ç¾åœ¨ã®ã¨ã“ã‚ã€\fI{@docRoot}\fRã‚¿ã‚°ã¯ã€æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆå†…ã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。
 .PP
-³µÍ×¥¿¥°¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+概è¦ã‚¿ã‚°ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 @see reference || @since since\-text || @serialField field\-name field\-type field\-description || @author name\-text || @version version\-text || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
-.SS "¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°"
+.SS "パッケージ・タグ"
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤Ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ïpackage\&.html¤Þ¤¿¤Ïpackage\-info\&.java¤È¤¤¤¦Ì¾Á°¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤³¤Ç»ÈÍѤǤ­¤ë\fI@serial\fR¥¿¥°¤Ï¡¢\fIinclude\fR¤Þ¤¿¤Ï\fIexclude\fR°ú¿ô¤ò»ØÄꤷ¤¿¤â¤Î¤Î¤ß¤Ç¤¹¡£
+パッケージ・タグã¯ã€ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã¯package\&.htmlã¾ãŸã¯package\-info\&.javaã¨ã„ã†åå‰ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«ã‚ã‚Šã¾ã™ã€‚ã“ã“ã§ä½¿ç”¨ã§ãã‚‹\fI@serial\fRã‚¿ã‚°ã¯ã€\fIinclude\fRã¾ãŸã¯\fIexclude\fR引数を指定ã—ãŸã‚‚ã®ã®ã¿ã§ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥¿¥°¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+パッケージ・タグã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 @see reference || @since since\-text || @serial field\-description | include | exclude || @author name\-text || @version version\-text || {@linkplain package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
-.SS "¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¦¥¿¥°"
+.SS "クラスãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ»ã‚¿ã‚°"
 .PP
-¼¡¤Ë¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤ò¼¨¤·¤Þ¤¹¡£\fI@serial\fR¥¿¥°¤Ï¡¢\fIinclude\fR¤Þ¤¿¤Ï\fIexclude\fR°ú¿ô¤ò»ØÄꤷ¤Æ¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤Ç¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+次ã«ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãるタグを示ã—ã¾ã™ã€‚\fI@serial\fRã‚¿ã‚°ã¯ã€\fIinclude\fRã¾ãŸã¯\fIexclude\fR引数を指定ã—ã¦ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³å†…ã§ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @serial field\-description | include | exclude || @author name\-text || @version version\-text || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} ||
 .PP
-¥¯¥é¥¹¡¦¥³¥á¥ó¥È¤ÎÎã:
+クラス・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2133,13 +2133,13 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Õ¥£¡¼¥ë¥É¡¦¥¿¥°"
+.SS "フィールド・タグ"
 .PP
-¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢¥Õ¥£¡¼¥ë¥É¤Ëɽ¼¨¤Ç¤­¤Þ¤¹¡£
+ã“れらã®ã‚¿ã‚°ã¯ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«è¡¨ç¤ºã§ãã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @serial field\-description | include | exclude || @serialField field\-name field\-type field\-description || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@docRoot} || {@value package\&.class#field}
 .PP
-¥Õ¥£¡¼¥ë¥É¡¦¥³¥á¥ó¥È¤ÎÎã:
+フィールド・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2155,17 +2155,17 @@
 .if n \{\
 .RE
 .\}
-.SS "¥³¥ó¥¹¥È¥é¥¯¥¿¤È¥á¥½¥Ã¥É¡¦¥¿¥°"
+.SS "コンストラクタã¨ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚¿ã‚°"
 .PP
-¼¡¤Ë¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤Þ¤¿¤Ï¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç»ÈÍѤǤ­¤ë¥¿¥°¤ò¼¨¤·¤Þ¤¹¡£¤¿¤À¤·¡¢\fI@return\fR¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿¤Ç¤Ï»ÈÍѤǤ­¤º¡¢
-\fI{@inheritDoc}\fR¤Ë¤ÏÀ©¸Â¤¬¤¢¤ê¤Þ¤¹¡£
+次ã«ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¾ãŸã¯ãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ä½¿ç”¨ã§ãるタグを示ã—ã¾ã™ã€‚ãŸã ã—ã€\fI@return\fRã¯ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã§ã¯ä½¿ç”¨ã§ããšã€
+\fI{@inheritDoc}\fRã«ã¯åˆ¶é™ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
 @see reference || @since since\-text || @deprecated deprecated\-text || @param parameter\-name description || @return description || @throws class\-name description || @exception class\-name description || @serialData data\-description || {@link package\&.class#member label} || {@linkplain package\&.class#member label} || {@inheritDoc} || {@docRoot}
 .PP
-\fBÃí°Õ:\fR
-\fI@serialData\fR¥¿¥°¤Ï¡¢\fIwriteObject\fR¡¢\fIreadObject\fR¡¢\fIwriteExternal\fR¡¢\fIreadExternal\fR¡¢\fIwriteReplace\fR¤ª¤è¤Ó\fIreadResolve\fR¥á¥½¥Ã¥É¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ç¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+\fI@serialData\fRã‚¿ã‚°ã¯ã€\fIwriteObject\fRã€\fIreadObject\fRã€\fIwriteExternal\fRã€\fIreadExternal\fRã€\fIwriteReplace\fRãŠã‚ˆã³\fIreadResolve\fRメソッドã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã§ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .PP
-¥á¥½¥Ã¥É¡¦¥³¥á¥ó¥È¤ÎÎã:
+メソッド・コメントã®ä¾‹:
 .sp
 .if n \{\
 .RS 4
@@ -2189,9 +2189,9 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ½ÐÎϤò·èÄꤷ¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç°Ê³°¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢Ç¤°Õ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤È¤È¤â¤Ë»ÈÍѤǤ­¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc¥ª¥×¥·¥ç¥ó¤ÇÀâÌÀ¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¤³¤Î¾¤Ë¡¢¤¤¤¯¤Ä¤«¤ÎÄɲäΥ³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬Ä󶡤µ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤ÇÀâÌÀ¤·¤Þ¤¹¡£¤É¤Î¥ª¥×¥·¥ç¥ó̾¤â¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’使用ã—ã¦å‡ºåŠ›ã‚’決定ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€\fI\-doclet\fRオプションã§ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆä»¥å¤–ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ¨™æº–ドックレットを使用ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã«ã¯ã€ä»»æ„ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãるコマンドライン・オプションãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã«ã¤ã„ã¦ã¯ã€Javadocオプションã§èª¬æ˜Žã—ã¾ã™ã€‚標準ドックレットã§ã¯ã€ã“ã®ä»–ã«ã€ã„ãã¤ã‹ã®è¿½åŠ ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒæä¾›ã•ã‚Œã¾ã™ã€‚ã“れらã®ã‚ªãƒ—ションã«ã¤ã„ã¦ã¯ã€æ¨™æº–ドックレットã®ã‚ªãƒ—ションã§èª¬æ˜Žã—ã¾ã™ã€‚ã©ã®ã‚ªãƒ—ションåã‚‚ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã ã—ã€ã‚ªãƒ—ションã®å¼•æ•°ã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2201,7 +2201,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+Javadocオプションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -2212,45 +2212,45 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+標準ドックレットã®ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
-¥ª¥×¥·¥ç¥ó¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+オプションã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 \-1\&.1 || \-author || \-bootclasspath classpathlist || \-bottom text || \-breakiterator || \-charset name || \-classpath classpathlist || \-d directory || \-docencoding name || \-docfilesubdirs || \-doclet class || \-docletpath classpathlist || \-doctitle title || \-encoding || \-exclude packagename1:packagename2:\&.\&.\&. || \-excludedocfilessubdir name1:name2 || \-extdirs dirist || \-footer footer || \-group groupheading packagepattern:packagepattern || \-header header || \-help || \-helpfile path\efilename || \-Jflag || \-keywords || \-link extdocURL || \-linkoffline extdocURL packagelistLoc || \-linksource || \-locale language_country_variant || \-nocomment || \-nodeprecated || \-nodeprecatedlist || \-nohelp || \-noindex || \-nonavbar || \-noqualifier all | packagename1:packagename2\&.\&.\&. || \-nosince || \-notimestamp || \-notree ||
 \fI\-overview path/filename || \fR\-package || \-private || \-protected || \-public || \-quiet || \-serialwarn || \-source release || \-sourcepath sourcepathlist || \-sourcetab tablength || \-splitindex ||
 \fI\-stylesheet path/filename || \fR\-subpackages package1:package2:\&.\&.\&. || \-tag tagname:Xaoptcmf:"taghead" || \-taglet class || \-tagletpath tagletpathlist || \-title title || \-top || \-use || \-verbose || \-version || \-windowtitle title
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¤¹¤Ù¤Æ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤Ë»ÈÍѲÄǽ¤Ê¥³¥¢¤ÎJavadoc¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Ç¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤Î¾¤ÎÉôʬ¤òÄ󶡤·¤Þ¤¹¡£\fI\-bootclasspath\fR¡¢\fI\-breakiterator\fR¡¢\fI\-classpath\fR¡¢\fI\-doclet\fR¡¢\fI\-docletpath\fR¡¢\fI\-encoding\fR¡¢\-\fIexclude\fR¡¢\fI\-extdirs\fR¡¢\fI\-help\fR¡¢\fI\-locale\fR¡¢\fI\-\fR\fIoverview\fR¡¢\fI\-package\fR¡¢\fI\-private\fR¡¢\fI\-protected\fR¡¢\fI\-public\fR¡¢\fI\-quiet\fR¡¢\fI\-source\fR¡¢\fI\-sourcepath\fR¡¢\fI\-subpackages\fR¤ª¤è¤Ó\fI\-verbose\fR¡£
-.SS "Javadoc¥ª¥×¥·¥ç¥ó"
+次ã®ã‚ªãƒ—ションã¯ã€ã™ã¹ã¦ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ä½¿ç”¨å¯èƒ½ãªã‚³ã‚¢ã®Javadocオプションã§ã™ã€‚標準ドックレットã§ã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã®ä»–ã®éƒ¨åˆ†ã‚’æä¾›ã—ã¾ã™ã€‚\fI\-bootclasspath\fRã€\fI\-breakiterator\fRã€\fI\-classpath\fRã€\fI\-doclet\fRã€\fI\-docletpath\fRã€\fI\-encoding\fRã€\-\fIexclude\fRã€\fI\-extdirs\fRã€\fI\-help\fRã€\fI\-locale\fRã€\fI\-\fR\fIoverview\fRã€\fI\-package\fRã€\fI\-private\fRã€\fI\-protected\fRã€\fI\-public\fRã€\fI\-quiet\fRã€\fI\-source\fRã€\fI\-sourcepath\fRã€\fI\-subpackages\fRãŠã‚ˆã³\fI\-verbose\fR。
+.SS "Javadocオプション"
 .PP
 \-overview \fIpath/filename \fR
 .RS 4
 
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢\fIpath/filename \fR¤Ç»ØÄꤵ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é³µÍץɥ­¥å¥á¥ó¥ÈÍѤΥƥ­¥¹¥È¤ò¼èÆÀ¤·¡¢¤½¤Î¥Æ¥­¥¹¥È¤ò³µÍ×¥Ú¡¼¥¸(overview\-summary\&.html)¤ËÇÛÃÖ¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£\fIpath/filename\fR¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£
-.sp
-\fIfilename\fR¤ÎÃͤÇǤ°Õ¤Î̾Á°¤ò»ÈÍѤ·¡¢path¤ÇǤ°Õ¤ÎÇÛÃÖÀè¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢Ä̾ï¤Ïoverview\&.html¤È¤¤¤¦Ì¾Á°¤òÉÕ¤±¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤ÎºÇ¾å°Ì¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¤Þ¤¹¡£¤³¤Î¾ì½ê¤ËÇÛÃÖ¤¹¤ë¤È¡¢¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤È¤­¤Ëpath¤ò»ØÄꤹ¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤¬»Ø¤·¼¨¤µ¤ì¤ë¤«¤é¤Ç¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjava\&.lang\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤¬/src/classes/java/lang/¤Î¾ì¹ç¡¢³µÍ×¥Õ¥¡¥¤¥ë¤ò/src/classes/overview\&.html¤ËÇÛÃ֤Ǥ­¤Þ¤¹
-.sp
-¼ÂºÝ¤ÎÎã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fIpath/filename\fR¤Ç»ØÄꤹ¤ë¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤Ï¡¢³µÍ×¥³¥á¥ó¥È¡¦¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-³µÍ×¥Ú¡¼¥¸¤¬ºîÀ®¤µ¤ì¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ·¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢HTML¥Õ¥ì¡¼¥à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£³µÍ×¥Ú¡¼¥¸¤Î¥¿¥¤¥È¥ë¤Ï¡¢\fI\-doctitle\fR¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã«å¯¾ã—ã¦ã€\fIpath/filename \fRã§æŒ‡å®šã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰æ¦‚è¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã€ãã®ãƒ†ã‚­ã‚¹ãƒˆã‚’概è¦ãƒšãƒ¼ã‚¸(overview\-summary\&.html)ã«é…ç½®ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚\fIpath/filename\fRã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã§ã™ã€‚
+.sp
+\fIfilename\fRã®å€¤ã§ä»»æ„ã®åå‰ã‚’使用ã—ã€pathã§ä»»æ„ã®é…置先を指定ã§ãã¾ã™ãŒã€é€šå¸¸ã¯overview\&.htmlã¨ã„ã†åå‰ã‚’付ã‘ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã®æœ€ä¸Šä½ãƒ‘ッケージ・ディレクトリをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«é…ç½®ã—ã¾ã™ã€‚ã“ã®å ´æ‰€ã«é…ç½®ã™ã‚‹ã¨ã€ãƒ‘ッケージをドキュメント化ã™ã‚‹ã¨ãã«pathを指定ã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-sourcepath\fRオプションã«ã‚ˆã£ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡ã—示ã•ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIjava\&.lang\fRパッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーãŒ/src/classes/java/lang/ã®å ´åˆã€æ¦‚è¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚’/src/classes/overview\&.htmlã«é…ç½®ã§ãã¾ã™
+.sp
+実際ã®ä¾‹ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fIpath/filename\fRã§æŒ‡å®šã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¤ã„ã¦ã¯ã€æ¦‚è¦ã‚³ãƒ¡ãƒ³ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+概è¦ãƒšãƒ¼ã‚¸ãŒä½œæˆã•ã‚Œã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«è¤‡æ•°ã®ãƒ‘ッケージåを渡ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚詳細ã¯ã€HTMLフレームをå‚ç…§ã—ã¦ãã ã•ã„。概è¦ãƒšãƒ¼ã‚¸ã®ã‚¿ã‚¤ãƒˆãƒ«ã¯ã€\fI\-doctitle\fRã«ã‚ˆã£ã¦è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xdoclint:(all|none|[\-]\fI<group>\fR)
 .RS 4
-ÉÔÀµ¤Ê»²¾È¡¢¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¤Î·çÍ¤è¤ÓJavadoc¥³¥á¥ó¥È¤ÎÉÔ­¤Î·Ù¹ð¤ò¥ì¥Ý¡¼¥È¤·¡¢Ìµ¸ú¤ÊJavadoc¹½Ê¸¤ª¤è¤ÓÉÔ­¤·¤Æ¤¤¤ëHTML¥¿¥°¤Î¥¨¥é¡¼¤ò¥ì¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏÀ¸À®¤µ¤ì¤¿½ÐÎϤ˴ޤޤì¤ë¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È¡¦¥³¥á¥ó¥È¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£Ä̾ï¤É¤ª¤ê¡¢É¸½à¥ª¥×¥·¥ç¥ó\fI\-public\fR¡¢\fI\-protected\fR¡¢\fI\-package\fR¤ª¤è¤Ó\fI\-private\fR¤ÇÀ¸À®¤µ¤ì¤¿½ÐÎϤ˴ޤà¹àÌܤòÁªÂò¤Ç¤­¤Þ¤¹¡£
-.sp
-\fI\-Xdoclint\fR¤¬Í­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIjavac\fR¥³¥Þ¥ó¥É¤ÈƱÍͤ˥á¥Ã¥»¡¼¥¸¤ÇÌäÂ꤬¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥á¥Ã¥»¡¼¥¸¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤ª¤è¤Ó¥¨¥é¡¼¤¬¸¡½Ð¤µ¤ì¤¿Àµ³Î¤Ê°ÌÃÖ¤ò»Ø¤¹¥­¥ã¥ì¥Ã¥È¤ò½ÐÎϤ·¤Þ¤¹¡£¥á¥Ã¥»¡¼¥¸¤Ï¡¢½ÅÂçÅÙ¡¢¤ª¤è¤ÓÀ¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥È¤¬¥Ð¥ê¥Ç¡¼¥¿¤ò»ÈÍѤ·¤Æ¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¤Ë¥¨¥é¡¼¤¬È¯À¸¤¹¤ë²ÄǽÀ­¤Ë±þ¤¸¤Æ¡¢·Ù¹ð¤Þ¤¿¤Ï¥¨¥é¡¼¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ÉÔÀµ¤Ê»²¾È¤Þ¤¿¤ÏJavadoc¥³¥á¥ó¥È¤Î·çÍî¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ìµ¸ú¤ÊHTML¤òÀ¸À®¤¹¤ë¸¶°ø¤Ë¤Ê¤é¤Ê¤¤¤¿¤á¡¢¤³¤ì¤é¤ÎÌäÂê¤Ï·Ù¹ð¤È¤·¤Æ¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£¹½Ê¸¥¨¥é¡¼¤Þ¤¿¤ÏHTML½ªÎ»¥¿¥°¤Î·çÍî¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ìµ¸ú¤ÊHTML¤òÀ¸À®¤¹¤ë¸¶°ø¤Ë¤Ê¤ë¤¿¤á¡¢¤³¤ì¤é¤ÎÌäÂê¤Ï¥¨¥é¡¼¤È¤·¤Æ¥ì¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£
-.sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó\fI\-Xdoclint:none\fR¤Ç̵¸ú¤Ë¤·¤Þ¤¹¡£
-.sp
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤Ç¥ì¥Ý¡¼¥È¤µ¤ì¤ëÆâÍƤϼ¡¤Î¥ª¥×¥·¥ç¥ó¤ÇÊѹ¹¤·¤Þ¤¹¡£
+ä¸æ­£ãªå‚ç…§ã€ã‚¢ã‚¯ã‚»ã‚·ãƒ“リティã®æ¬ è½ãŠã‚ˆã³Javadocコメントã®ä¸è¶³ã®è­¦å‘Šã‚’レãƒãƒ¼ãƒˆã—ã€ç„¡åŠ¹ãªJavadoc構文ãŠã‚ˆã³ä¸è¶³ã—ã¦ã„ã‚‹HTMLã‚¿ã‚°ã®ã‚¨ãƒ©ãƒ¼ã‚’レãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.sp
+ã“ã®ã‚ªãƒ—ションã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ç”Ÿæˆã•ã‚ŒãŸå‡ºåŠ›ã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚通常ã©ãŠã‚Šã€æ¨™æº–オプション\fI\-public\fRã€\fI\-protected\fRã€\fI\-package\fRãŠã‚ˆã³\fI\-private\fRã§ç”Ÿæˆã•ã‚ŒãŸå‡ºåŠ›ã«å«ã‚€é …目をé¸æŠžã§ãã¾ã™ã€‚
+.sp
+\fI\-Xdoclint\fRãŒæœ‰åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆã¯ã€\fIjavac\fRコマンドã¨åŒæ§˜ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã§å•é¡ŒãŒãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ”ーãŠã‚ˆã³ã‚¨ãƒ©ãƒ¼ãŒæ¤œå‡ºã•ã‚ŒãŸæ­£ç¢ºãªä½ç½®ã‚’指ã™ã‚­ãƒ£ãƒ¬ãƒƒãƒˆã‚’出力ã—ã¾ã™ã€‚メッセージã¯ã€é‡å¤§åº¦ã€ãŠã‚ˆã³ç”Ÿæˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒãƒãƒªãƒ‡ãƒ¼ã‚¿ã‚’使用ã—ã¦å®Ÿè¡Œã•ã‚ŒãŸå ´åˆã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ã«å¿œã˜ã¦ã€è­¦å‘Šã¾ãŸã¯ã‚¨ãƒ©ãƒ¼ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ä¸æ­£ãªå‚ç…§ã¾ãŸã¯Javadocコメントã®æ¬ è½ã¯ã€\fIjavadoc\fRコマンドãŒç„¡åŠ¹ãªHTMLを生æˆã™ã‚‹åŽŸå› ã«ãªã‚‰ãªã„ãŸã‚ã€ã“れらã®å•é¡Œã¯è­¦å‘Šã¨ã—ã¦ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚構文エラーã¾ãŸã¯HTML終了タグã®æ¬ è½ã¯ã€\fIjavadoc\fRコマンドãŒç„¡åŠ¹ãªHTMLを生æˆã™ã‚‹åŽŸå› ã«ãªã‚‹ãŸã‚ã€ã“れらã®å•é¡Œã¯ã‚¨ãƒ©ãƒ¼ã¨ã—ã¦ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚
+.sp
+デフォルトã§ã¯ã€\fI\-Xdoclint\fRオプションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚オプション\fI\-Xdoclint:none\fRã§ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
+.sp
+\fI\-Xdoclint\fRオプションã§ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã‚‹å†…容ã¯æ¬¡ã®ã‚ªãƒ—ションã§å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2261,7 +2261,7 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI none\fR:
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£
+\fI\-Xdoclint\fRオプションを無効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2273,7 +2273,7 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI \fR\fIgroup\fR:
-\fIgroup\fR¥Á¥§¥Ã¥¯¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+\fIgroup\fRãƒã‚§ãƒƒã‚¯ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2284,7 +2284,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-Xdoclint\fR\fI\fR\fI all\fR: ¤¹¤Ù¤Æ¤Î¥Á¥§¥Ã¥¯¡¦¥°¥ë¡¼¥×¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+\fI\-Xdoclint\fR\fI\fR\fI all\fR: ã™ã¹ã¦ã®ãƒã‚§ãƒƒã‚¯ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—を有効ã«ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2296,10 +2296,10 @@
 .IP \(bu 2.3
 .\}
 \fI\-Xdoclint\fR\fI\fR\fI all,\fR\fI\-group\fR:
-\fIgroup\fR¥Á¥§¥Ã¥¯°Ê³°¤Î¤¹¤Ù¤Æ¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
-.RE
-.sp
-ÊÑ¿ô\fIgroup\fR¤Ï¼¡¤Î¤¤¤º¤ì¤«¤ÎÃͤò»ý¤Á¤Þ¤¹¡£
+\fIgroup\fRãƒã‚§ãƒƒã‚¯ä»¥å¤–ã®ã™ã¹ã¦ã‚’有効ã«ã—ã¾ã™ã€‚
+.RE
+.sp
+変数\fIgroup\fRã¯æ¬¡ã®ã„ãšã‚Œã‹ã®å€¤ã‚’æŒã¡ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2309,7 +2309,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIaccessibility\fR: ¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¡¦¥Á¥§¥Ã¥«¤Ç¸¡½Ð¤¹¤ëÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢\fI<table>\fR¥¿¥°¤Ç»ØÄꤵ¤ì¤ëno caption¤Þ¤¿¤Ïsummary°À­)¡£
+\fIaccessibility\fR: アクセシビリティ・ãƒã‚§ãƒƒã‚«ã§æ¤œå‡ºã™ã‚‹å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€\fI<table>\fRã‚¿ã‚°ã§æŒ‡å®šã•ã‚Œã‚‹no captionã¾ãŸã¯summary属性)。
 .RE
 .sp
 .RS 4
@@ -2320,7 +2320,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIhtml\fR: ¥¤¥ó¥é¥¤¥óÍ×ÁǤؤΥ֥í¥Ã¥¯Í×ÁǤÎÁÞÆþ¤ä½ªÎ»¥¿¥°¤òɬÍפȤ¹¤ëÍ×ÁǤò½ªÎ»¤·¤Ê¤¤¤Ê¤É¡¢¾å°Ì¥ì¥Ù¥ëHTML¤ÎÌäÂê¤ò¸¡½Ð¤·¤Þ¤¹¡£¥ë¡¼¥ë¤Ï¡¢HTML 4\&.01»ÅÍͤ«¤éƳ½Ð¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¿¥¤¥×¤Î¥Á¥§¥Ã¥¯¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÍ­¸ú¤Ë¤·¤Æ¡¢¥Ö¥é¥¦¥¶¤¬¼õ¤±Æþ¤ì¤ë²ÄǽÀ­¤Î¤¢¤ëHTML¤ÎÌäÂê¤ò¸¡½Ð¤·¤Þ¤¹¡£
+\fIhtml\fR: インラインè¦ç´ ã¸ã®ãƒ–ロックè¦ç´ ã®æŒ¿å…¥ã‚„終了タグを必è¦ã¨ã™ã‚‹è¦ç´ ã‚’終了ã—ãªã„ãªã©ã€ä¸Šä½ãƒ¬ãƒ™ãƒ«HTMLã®å•é¡Œã‚’検出ã—ã¾ã™ã€‚ルールã¯ã€HTML 4\&.01仕様ã‹ã‚‰å°Žå‡ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒ—ã®ãƒã‚§ãƒƒã‚¯ã¯ã€\fIjavadoc\fRコマンドを有効ã«ã—ã¦ã€ãƒ–ラウザãŒå—ã‘入れるå¯èƒ½æ€§ã®ã‚ã‚‹HTMLã®å•é¡Œã‚’検出ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2331,7 +2331,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fImissing\fR: ·çÍ¤Æ¤¤¤ëJavadoc¥³¥á¥ó¥È¤Þ¤¿¤Ï¥¿¥°¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢·çÍ¤Æ¤¤¤ë¥³¥á¥ó¥È¤ä¥¯¥é¥¹¡¢¤Þ¤¿¤Ï·çÍ¤Æ¤¤¤ë\fI@return\fR¥¿¥°¤ä¥á¥½¥Ã¥É¾å¤ÎƱÍͤΥ¿¥°)¡£
+\fImissing\fR: 欠è½ã—ã¦ã„ã‚‹Javadocコメントã¾ãŸã¯ã‚¿ã‚°ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€æ¬ è½ã—ã¦ã„るコメントやクラスã€ã¾ãŸã¯æ¬ è½ã—ã¦ã„ã‚‹\fI@return\fRタグやメソッド上ã®åŒæ§˜ã®ã‚¿ã‚°)。
 .RE
 .sp
 .RS 4
@@ -2342,7 +2342,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIreference\fR: Javadoc¥¿¥°¤ÎJava APIÍ×ÁǤλ²¾È¤Ë´ØÏ¢¤¹¤ëÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹(¤¿¤È¤¨¤Ð¡¢\fI@see\fR¤Ç¸«¤Ä¤«¤é¤Ê¤¤¹àÌÜ¡¢¤Þ¤¿¤Ï\fI@param\fR¤Î¸å¤ÎÉÔÀµ¤Ê̾Á°)¡£
+\fIreference\fR: Javadocã‚¿ã‚°ã®Java APIè¦ç´ ã®å‚ç…§ã«é–¢é€£ã™ã‚‹å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™(ãŸã¨ãˆã°ã€\fI@see\fRã§è¦‹ã¤ã‹ã‚‰ãªã„é …ç›®ã€ã¾ãŸã¯\fI@param\fRã®å¾Œã®ä¸æ­£ãªåå‰)。
 .RE
 .sp
 .RS 4
@@ -2353,10 +2353,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIsyntax\fR: ¥¨¥¹¥±¡¼¥×¤µ¤ì¤Æ¤¤¤Ê¤¤»³¥«¥Ã¥³(\fI<\fR¤ª¤è¤Ó\fI>\fR)¤ä¥¢¥ó¥Ñ¥µ¥ó¥É(\fI&\fR)¡¢Ìµ¸ú¤ÊJavadoc¥¿¥°¤Ê¤É¤Î²¼°Ì¥ì¥Ù¥ë¤ÎÌäÂê¤ò³Îǧ¤·¤Þ¤¹¡£
-.RE
-.sp
-\fI\-Xdoclint\fR¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄꤷ¤Æ¡¢Ê£¿ô¤Î¥«¥Æ¥´¥ê¤Î¥¨¥é¡¼¤È·Ù¹ð¤ò¥Á¥§¥Ã¥¯¤¹¤ë¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢Á°¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¥«¥Æ¥´¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Î¤¤¤º¤ì¤«¤ò»ÈÍѤ·¤Æ¡¢\fIfilename\fR¥Õ¥¡¥¤¥ëÆâ¤ÎHTML¡¢¹½Ê¸¤ª¤è¤Ó¥¢¥¯¥»¥·¥Ó¥ê¥Æ¥£¤ÎÌäÂê¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£
+\fIsyntax\fR: エスケープã•ã‚Œã¦ã„ãªã„山カッコ(\fI<\fRãŠã‚ˆã³\fI>\fR)やアンパサンド(\fI&\fR)ã€ç„¡åŠ¹ãªJavadocã‚¿ã‚°ãªã©ã®ä¸‹ä½ãƒ¬ãƒ™ãƒ«ã®å•é¡Œã‚’確èªã—ã¾ã™ã€‚
+.RE
+.sp
+\fI\-Xdoclint\fRオプションを複数回指定ã—ã¦ã€è¤‡æ•°ã®ã‚«ãƒ†ã‚´ãƒªã®ã‚¨ãƒ©ãƒ¼ã¨è­¦å‘Šã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã‚ªãƒ—ションを有効ã«ã§ãã¾ã™ã€‚ã¾ãŸã¯ã€å‰ã®ã‚ªãƒ—ションを使用ã—ã¦ã€è¤‡æ•°ã®ã‚¨ãƒ©ãƒ¼ãŠã‚ˆã³è­¦å‘Šã‚«ãƒ†ã‚´ãƒªã‚’指定ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã®ã„ãšã‚Œã‹ã‚’使用ã—ã¦ã€\fIfilename\fRファイル内ã®HTMLã€æ§‹æ–‡ãŠã‚ˆã³ã‚¢ã‚¯ã‚»ã‚·ãƒ“リティã®å•é¡Œã‚’ãƒã‚§ãƒƒã‚¯ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2368,57 +2368,57 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤ì¤é¤Î¥Á¥§¥Ã¥¯¤Î´°Á´À­¤ÏÊݾڤµ¤ì¤Þ¤»¤ó¡£¶ñÂÎŪ¤Ë¤Ï¡¢´°Á´¤ÊHTML¥³¥ó¥×¥é¥¤¥¢¥ó¥¹¡¦¥Á¥§¥Ã¥«¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\-\fIXdoclint\fR¥ª¥×¥·¥ç¥ó¤ÎÌÜŪ¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÍ­¸ú¤Ë¤·¤Æ°ìÈÌŪ¤Ê¥¨¥é¡¼¤ÎÂçȾ¤ò¥ì¥Ý¡¼¥È¤¹¤ë¤³¤È¤Ç¤¹¡£
-.sp
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢Ìµ¸ú¤ÊÆþÎϤν¤Àµ¤ò»î¹Ô¤»¤º¡¢¥ì¥Ý¡¼¥È¤Î¤ß¹Ô¤¤¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIjavadoc\fRコマンドã§ã¯ã€ã“れらã®ãƒã‚§ãƒƒã‚¯ã®å®Œå…¨æ€§ã¯ä¿è¨¼ã•ã‚Œã¾ã›ã‚“。具体的ã«ã¯ã€å®Œå…¨ãªHTMLコンプライアンス・ãƒã‚§ãƒƒã‚«ã§ã¯ã‚ã‚Šã¾ã›ã‚“。\-\fIXdoclint\fRオプションã®ç›®çš„ã¯ã€\fIjavadoc\fRコマンドを有効ã«ã—ã¦ä¸€èˆ¬çš„ãªã‚¨ãƒ©ãƒ¼ã®å¤§åŠã‚’レãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã§ã™ã€‚
+.sp
+\fIjavadoc\fRコマンドã¯ã€ç„¡åŠ¹ãªå…¥åŠ›ã®ä¿®æ­£ã‚’試行ã›ãšã€ãƒ¬ãƒãƒ¼ãƒˆã®ã¿è¡Œã„ã¾ã™ã€‚
 .RE
 .PP
 \-public
 .RS 4
-public¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+publicクラスãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-protected¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ß¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+protectedãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿ã‚’表示ã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-package
 .RS 4
-package¡¢protected¡¢¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+packageã€protectedã€ãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-private
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥ª¥ó¥é¥¤¥ó¡¦¥Ø¥ë¥×¤òɽ¼¨¤·¤Þ¤¹¡£\fIjavadoc\fR¤È\fI¥É¥Ã¥¯¥ì¥Ã¥È\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬¥ê¥¹¥È¤µ¤ì¤Þ¤¹¡£
+オンライン・ヘルプを表示ã—ã¾ã™ã€‚\fIjavadoc\fRã¨\fIドックレット\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションãŒãƒªã‚¹ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-doclet \fIclass\fR
 .RS 4
-¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤òµ¯Æ°¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£´°Á´½¤¾þ̾¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤Ë¤è¤ê¡¢½ÐÎϤÎÆâÍƤȷÁ¼°¤¬ÄêµÁ¤µ¤ì¤Þ¤¹¡£\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¥Ç¥Õ¥©¥ë¥È¤ÎHTML·Á¼°¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¤Ë¤Ï\fIstart(Root)\fR¥á¥½¥Ã¥É¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Îµ¯Æ°¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤Ï\fI\-docletpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÄêµÁ¤µ¤ì¤Þ¤¹¡£¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+ドキュメントã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚完全修飾åを使用ã—ã¾ã™ã€‚ã“ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ã‚ˆã‚Šã€å‡ºåŠ›ã®å†…容ã¨å½¢å¼ãŒå®šç¾©ã•ã‚Œã¾ã™ã€‚\fI\-doclet\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ã€æ¨™æº–ドックレットを使用ã—ã¦ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®HTMLå½¢å¼ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ã«ã¯\fIstart(Root)\fRメソッドãŒå«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®èµ·å‹•ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スã¯\fI\-docletpath\fRオプションã«ã‚ˆã£ã¦å®šç¾©ã•ã‚Œã¾ã™ã€‚ドックレットã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-docletpath \fIclasspathlist\fR
 .RS 4
-\fI\-doclet\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥É¥Ã¥¯¥ì¥Ã¥È³«»Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó¤½¤Î¥¯¥é¥¹¤¬°Í¸¤¹¤ë¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£³«»Ï¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬JAR¥Õ¥¡¥¤¥ëÆâ¤Ë¤¢¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÇJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£ÀäÂХѥ¹¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIclasspathlist\fR¤ËÊ£¿ô¤Î¥Ñ¥¹¤äJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤é¤òSolaris¤Î¾ì¹ç¤Ï¥³¥í¥ó(:)¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó(;)¤Ç¤½¤ì¤¾¤ì¶èÀÚ¤ê¤Þ¤¹¡£ÌÜŪ¤Î¥É¥Ã¥¯¥ì¥Ã¥È³«»Ï¥¯¥é¥¹¤¬¤¹¤Ç¤Ë¸¡º÷¥Ñ¥¹Æâ¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fI\-doclet\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆé–‹å§‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€ãŠã‚ˆã³ãã®ã‚¯ãƒ©ã‚¹ãŒä¾å­˜ã™ã‚‹ã™ã¹ã¦ã®JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚開始クラス・ファイルãŒJARファイル内ã«ã‚ã‚‹å ´åˆã€ã“ã®ã‚ªãƒ—ションã§JARファイルã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚絶対パスã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スを指定ã§ãã¾ã™ã€‚\fIclasspathlist\fRã«è¤‡æ•°ã®ãƒ‘スやJARファイルãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã¯ã€ãれらをSolarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³(:)ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§ãã‚Œãžã‚ŒåŒºåˆ‡ã‚Šã¾ã™ã€‚目的ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆé–‹å§‹ã‚¯ãƒ©ã‚¹ãŒã™ã§ã«æ¤œç´¢ãƒ‘ス内ã«ã‚ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚ドックレットã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-1\&.1
 .RS 4
-Javadoc 1\&.4¤«¤éºï½ü¤µ¤ì¡¢ÂåÂؤϤ¢¤ê¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Javadoc 1\&.1¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë¤Î¤ÈƱ¤¸³°¸«¤Èµ¡Ç½¤ò»ý¤Ä¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤·¤¿(¥Í¥¹¥È¤µ¤ì¤¿¥¯¥é¥¹¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó)¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬É¬Íפʾì¹ç¤Ï¡¢Javadoc 1\&.2¤Þ¤¿¤Ï1\&.3¤ò¤«¤ï¤ê¤Ë»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+Javadoc 1\&.4ã‹ã‚‰å‰Šé™¤ã•ã‚Œã€ä»£æ›¿ã¯ã‚ã‚Šã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€Javadoc 1\&.1ã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹ã®ã¨åŒã˜å¤–見ã¨æ©Ÿèƒ½ã‚’æŒã¤ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’作æˆã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã—ãŸ(ãƒã‚¹ãƒˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“)。ã“ã®ã‚ªãƒ—ションãŒå¿…è¦ãªå ´åˆã¯ã€Javadoc 1\&.2ã¾ãŸã¯1\&.3ã‚’ã‹ã‚ã‚Šã«ä½¿ç”¨ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-source \fIrelease\fR
 .RS 4
-¼õ¤±ÉÕ¤±¤ë¥½¡¼¥¹¡¦¥³¡¼¥É¤Î¥ê¥ê¡¼¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fIrelease\fR¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¼¡¤ÎÃͤò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤ëÃͤËÂбþ¤¹¤ë\fI¥ê¥ê¡¼¥¹\fR¤ÎÃͤò»ÈÍѤ·¤Þ¤¹¡£
+å—ã‘付ã‘るソース・コードã®ãƒªãƒªãƒ¼ã‚¹ã‚’指定ã—ã¾ã™ã€‚\fIrelease\fRパラメータã«ã¯æ¬¡ã®å€¤ã‚’指定ã§ãã¾ã™ã€‚\fIjavac\fRコマンドã§ã‚³ãƒ¼ãƒ‰ã‚’コンパイルã™ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹å€¤ã«å¯¾å¿œã™ã‚‹\fIリリース\fRã®å€¤ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2428,7 +2428,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.5\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.5¤ÇƳÆþ¤µ¤ì¤¿Áí¾Î¤ª¤è¤Ó¾¤Î¸À¸ìµ¡Ç½¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£\fI\-source\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Î¥³¥ó¥Ñ¥¤¥é¤Î¥Ç¥Õ¥©¥ë¥ÈÆ°ºî¤Ï¡¢1\&.5¤Î¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBリリース値: 1\&.5\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.5ã§å°Žå…¥ã•ã‚ŒãŸç·ç§°ãŠã‚ˆã³ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚\fI\-source\fRオプションãŒä½¿ç”¨ã•ã‚Œãªã‹ã£ãŸå ´åˆã®ã‚³ãƒ³ãƒ‘イラã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå‹•ä½œã¯ã€1\&.5ã®ã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2439,7 +2439,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.4\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.4¤ÇƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¤ò´Þ¤à¥³¡¼¥É¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£
+\fBリリース値: 1\&.4\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.4ã§å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã‚’å«ã‚€ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2450,20 +2450,20 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fB¥ê¥ê¡¼¥¹ÃÍ: 1\&.3\fR¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢JDK 1\&.3°Ê¹ß¤ËƳÆþ¤µ¤ì¤¿¥¢¥µ¡¼¥·¥ç¥ó¡¢Áí¾Î¡¢¤Þ¤¿¤Ï¾¤Î¸À¸ìµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó¡£
+\fBリリース値: 1\&.3\fR。\fIjavadoc\fRコマンドã¯ã€JDK 1\&.3以é™ã«å°Žå…¥ã•ã‚ŒãŸã‚¢ã‚µãƒ¼ã‚·ãƒ§ãƒ³ã€ç·ç§°ã€ã¾ãŸã¯ä»–ã®è¨€èªžæ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¾ã›ã‚“。
 .RE
 .RE
 .PP
 \-sourcepath \fIsourcepathlist\fR
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤ò\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤È¤­¤Ë¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸«¤Ä¤±¤ë¤¿¤á¤Î¸¡º÷¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
-\fIÊ£¿ô¤Î¥Ñ¥¹¤Ï¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fR\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ΤߤǤʤ¯¡¢¤½¤ì¼«ÂΤϥɥ­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¤¬¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é·Ñ¾µ¤µ¤ì¤¿¥³¥á¥ó¥È¤ò»ý¤Ä¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤â³Îǧ¤Ç¤­¤Þ¤¹¡£
-.sp
-\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÅϤ¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¸¡º÷¤µ¤ì¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÆÃÄꤹ¤ë¤Ë¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤¹¤ë¤«¡¢¡Ö1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½¡×¤Ë¼¨¤¹¤è¤¦¤Ë³Æ¥Õ¥¡¥¤¥ë¤ÎÁ°¤Ë¥Ñ¥¹¤ò´Þ¤á¤Þ¤¹¡£\fI\-sourcepath\fR¤¬¾Êά¤µ¤ì¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ò»ÈÍѤ·¤Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹(\fI\-classpath\fR¤ò»²¾È)¡£¥Ç¥Õ¥©¥ë¥È¤Î\fI\-sourcepath\fR¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤ÎÃͤǤ¹¡£\fI\-classpath\fR¤ò¾Êά¤·¤Æ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÅϤ¹¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê(¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê)¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£
-.sp
-\fIsourcepathlist\fR¤Ë¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.mypackage\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ë¡¢¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬/home/user/src/com/mypackage/*\&.java¤Ë¤¢¤ë¤È¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Ñ¥¹¤òcom\emypackage¤¬´Þ¤Þ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê/home/user/src¤Ë»ØÄꤷ¤Æ¤«¤é¡¢¼¡¤Î¤è¤¦¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+パッケージåã¾ãŸã¯\fI\-subpackages\fRオプションを\fIjavadoc\fRコマンドã«æ¸¡ã™ã¨ãã«ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’見ã¤ã‘ã‚‹ãŸã‚ã®æ¤œç´¢ãƒ‘スを指定ã—ã¾ã™ã€‚
+\fI複数ã®ãƒ‘スã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fR\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã—ã¦ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã®ã¿ã§ãªãã€ãれ自体ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„ãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ç¶™æ‰¿ã•ã‚ŒãŸã‚³ãƒ¡ãƒ³ãƒˆã‚’æŒã¤ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã‚‚確èªã§ãã¾ã™ã€‚
+.sp
+\fI\-sourcepath\fRオプションを使用ã§ãã‚‹ã®ã¯ã€\fIjavadoc\fRコマンドã«ãƒ‘ッケージåを渡ã™å ´åˆã®ã¿ã§ã™ã€‚\fIjavadoc\fRコマンドã«æ¸¡ã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯æ¤œç´¢ã•ã‚Œã¾ã›ã‚“。ソース・ファイルを特定ã™ã‚‹ã«ã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã™ã‚‹ã‹ã€ã€Œ1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã€ã«ç¤ºã™ã‚ˆã†ã«å„ファイルã®å‰ã«ãƒ‘スをå«ã‚ã¾ã™ã€‚\fI\-sourcepath\fRãŒçœç•¥ã•ã‚ŒãŸå ´åˆã€\fIjavadoc\fRコマンドã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スを使用ã—ã¦ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™(\fI\-classpath\fRã‚’å‚ç…§)。デフォルトã®\fI\-sourcepath\fRã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®å€¤ã§ã™ã€‚\fI\-classpath\fRã‚’çœç•¥ã—ã¦ãƒ‘ッケージåã‚’\fIjavadoc\fRコマンドã«æ¸¡ã™ã¨ã€\fIjavadoc\fRコマンドã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(ãŠã‚ˆã³ãã®ã‚µãƒ–ディレクトリ)ã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚
+.sp
+\fIsourcepathlist\fRã«ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ãƒ‘ッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIcom\&.mypackage\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージをドキュメント化ã™ã‚‹å ´åˆã«ã€ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ/home/user/src/com/mypackage/*\&.javaã«ã‚ã‚‹ã¨ã—ã¾ã™ã€‚ソース・パスをcom\emypackageãŒå«ã¾ã‚Œã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª/home/user/srcã«æŒ‡å®šã—ã¦ã‹ã‚‰ã€æ¬¡ã®ã‚ˆã†ã«ã€ãƒ‘ッケージåを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2474,11 +2474,11 @@
 .if n \{\
 .RE
 .\}
-¥½¡¼¥¹¡¦¥Ñ¥¹¤ÎÃͤȥѥ屡¼¥¸Ì¾¤òÏ¢·ë¤·¤Æ¡¢¥É¥Ã¥È¤ò¥¹¥é¥Ã¥·¥å(/)¤ËÊѹ¹¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥Õ¥ë¥Ñ¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
+ソース・パスã®å€¤ã¨ãƒ‘ッケージåを連çµã—ã¦ã€ãƒ‰ãƒƒãƒˆã‚’スラッシュ(/)ã«å¤‰æ›´ã™ã‚‹ã¨ã€æ¬¡ã®ã‚ˆã†ã«ã€ãƒ‘ッケージã®ãƒ•ãƒ«ãƒ‘スã«ãªã‚Šã¾ã™ã€‚
 .sp
 /home/user/src/com/mypackage
 .sp
-2¤Ä¤Î¥½¡¼¥¹¡¦¥Ñ¥¹¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+2ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スを設定ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2493,12 +2493,12 @@
 .PP
 \-classpath \fIclasspathlist\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬»²¾È¥¯¥é¥¹¤Î¸¡º÷¤ò¹Ô¤¦¤È¤­¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£»²¾È¥¯¥é¥¹¤È¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤È¡¢¤½¤ì¤é¤Î¥¯¥é¥¹¤Ë¤è¤Ã¤Æ»²¾È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î¤³¤È¤Ç¤¹¡£
-\fIÊ£¿ô¤Î¥Ñ¥¹¤Ï¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£\fR\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£\fIclasspathlist\fR¤ÎÃͤò»ØÄꤹ¤ë¤È¤­¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ë¤¢¤ë»Ø¼¨¤Ë½¾¤Ã¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fI\-sourcepath\fR¤¬¾Êά¤µ¤ì¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï\fI\-classpath\fR¤ò»ÈÍѤ·¤Æ¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹(²¼°Ì¸ß´¹À­¤Î¤¿¤á)¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÊÌ¡¹¤Î¥Ñ¥¹¤«¤é¸¡º÷¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sourcepath\fR¤È\fI\-classpath\fR¤ÎξÊý¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIcom\&.mypackage\fR¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¾ì¹ç¤Ë¡¢¤½¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¥Ç¥£¥ì¥¯¥È¥ê/home/user/src/com/mypackage¤Ë¤¢¤ê¡¢¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬/home/user/libthenÆâ¤Î¥é¥¤¥Ö¥é¥ê¤Ë°Í¸¤·¤Æ¤¤¤ë¤È¤­¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fIjavadoc\fRコマンドãŒå‚照クラスã®æ¤œç´¢ã‚’è¡Œã†ã¨ãã«ä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚å‚照クラスã¨ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã¨ã€ãれらã®ã‚¯ãƒ©ã‚¹ã«ã‚ˆã£ã¦å‚ç…§ã•ã‚Œã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®ã“ã¨ã§ã™ã€‚
+\fI複数ã®ãƒ‘スã¯ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚\fR\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚\fIclasspathlist\fRã®å€¤ã‚’指定ã™ã‚‹ã¨ãã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚る指示ã«å¾“ã£ã¦ãã ã•ã„。
+.sp
+\fI\-sourcepath\fRãŒçœç•¥ã•ã‚ŒãŸå ´åˆã€\fIjavadoc\fRコマンドã¯\fI\-classpath\fRを使用ã—ã¦ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™(下ä½äº’æ›æ€§ã®ãŸã‚)。ソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’別々ã®ãƒ‘スã‹ã‚‰æ¤œç´¢ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€\fI\-sourcepath\fRã¨\fI\-classpath\fRã®ä¸¡æ–¹ã‚’使用ã—ã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIcom\&.mypackage\fRをドキュメント化ã™ã‚‹å ´åˆã«ã€ãã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª/home/user/src/com/mypackageã«ã‚ã‚Šã€ã“ã®ãƒ‘ッケージãŒ/home/user/libthen内ã®ãƒ©ã‚¤ãƒ–ラリã«ä¾å­˜ã—ã¦ã„ã‚‹ã¨ãã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2509,21 +2509,21 @@
 .if n \{\
 .RE
 .\}
-¾¤Î¥Ä¡¼¥ë¤ÈƱÍͤˡ¢\fI\-classpath\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î´Ä¶­ÊÑ¿ô¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Á¤é¤âÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¥¯¥é¥¹¤ò¸¡º÷¤·¤Þ¤¹¡£
-.sp
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬\fI\-classpath\fR¤ò»ÈÍѤ·¤Æ¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¤ò¸¡º÷¤¹¤ëÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¡¢³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤ä¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ë´ØÏ¢¤·¤¿¾ÜºÙ¤Ï¡¢¥¯¥é¥¹¤Î¸¡º÷ÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-*¤Î¥Ù¡¼¥¹Ì¾¤ò´Þ¤à¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁǤϡ¢\fI\&.jar\fR¤Þ¤¿¤Ï\fI\&.JAR\fR¤ò³ÈÄ¥»Ò¤Ë»ý¤Ä¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê\fImydir\fR¤Ë\fIa\&.jar\fR¤È\fIb\&.JA\fRR¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁÇ\fIfoo/*\fR¤Ï\fIA\&.jar:b\&.JAR\fR¤ËŸ³«¤µ¤ì¤Þ¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Î½çÈÖ¤Ï̤»ØÄê¤È¤Ê¤ê¤Þ¤¹¡£Èóɽ¼¨¤Î¥Õ¥¡¥¤¥ë¤ò´Þ¤à¡¢»ØÄꤷ¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤¬¥ê¥¹¥È¤Ë´Þ¤Þ¤ì¤Þ¤¹¡£*¤«¤é¤Ê¤ë¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥¨¥ó¥È¥ê¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ËŸ³«¤µ¤ì¤Þ¤¹¡£\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤âƱÍͤËŸ³«¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÎŸ³«¤Ï¡¢Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î³«»ÏÁ°¤Ë¹Ô¤ï¤ì¤Þ¤¹¡£Java¥×¥í¥°¥é¥à¤Ï¡¢System\&.getenv(\fI"CLASSPATH"\fR)¤Î¸Æ¤Ó½Ð¤·¤Ë¤è¤Ã¤Æ¤Ê¤É¡¢´Ä¶­¤òÌ䤤¹ç¤»¤ë¾ì¹ç¤ò½ü¤­¡¢Å¸³«¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»²¾È¤·¤Þ¤»¤ó¡£
+ä»–ã®ãƒ„ールã¨åŒæ§˜ã«ã€\fI\-classpath\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€\fICLASSPATH\fR環境変数ãŒè¨­å®šã•ã‚Œã¦ã„ã‚Œã°ã€\fIjavadoc\fRコマンドã¯ãã®ç’°å¢ƒå¤‰æ•°ã‚’使用ã—ã¾ã™ã€‚ã©ã¡ã‚‰ã‚‚設定ã•ã‚Œã¦ã„ãªã„å ´åˆã€\fIjavadoc\fRコマンドã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã‚¯ãƒ©ã‚¹ã‚’検索ã—ã¾ã™ã€‚
+.sp
+\fIjavadoc\fRコマンドãŒ\fI\-classpath\fRを使用ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ã‚’検索ã™ã‚‹æ–¹æ³•ã«ã¤ã„ã¦ã®ã€æ‹¡å¼µæ©Ÿèƒ½ã‚¯ãƒ©ã‚¹ã‚„ブートストラップ・クラスã«é–¢é€£ã—ãŸè©³ç´°ã¯ã€ã‚¯ãƒ©ã‚¹ã®æ¤œç´¢æ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+*ã®ãƒ™ãƒ¼ã‚¹åã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ ã¯ã€\fI\&.jar\fRã¾ãŸã¯\fI\&.JAR\fRã‚’æ‹¡å¼µå­ã«æŒã¤ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹ã®ã¨åŒç­‰ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fImydir\fRã«\fIa\&.jar\fRã¨\fIb\&.JA\fRRãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ \fIfoo/*\fRã¯\fIA\&.jar:b\&.JAR\fRã«å±•é–‹ã•ã‚Œã¾ã™ãŒã€JARファイルã®é †ç•ªã¯æœªæŒ‡å®šã¨ãªã‚Šã¾ã™ã€‚éžè¡¨ç¤ºã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€ã€æŒ‡å®šã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルãŒãƒªã‚¹ãƒˆã«å«ã¾ã‚Œã¾ã™ã€‚*ã‹ã‚‰ãªã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・エントリã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルã®ãƒªã‚¹ãƒˆã«å±•é–‹ã•ã‚Œã¾ã™ã€‚\fICLASSPATH\fR環境変数もåŒæ§˜ã«å±•é–‹ã•ã‚Œã¾ã™ã€‚クラス・パスã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®å±•é–‹ã¯ã€Java仮想マシン(JVM)ã®é–‹å§‹å‰ã«è¡Œã‚ã‚Œã¾ã™ã€‚Javaプログラムã¯ã€System\&.getenv(\fI"CLASSPATH"\fR)ã®å‘¼ã³å‡ºã—ã«ã‚ˆã£ã¦ãªã©ã€ç’°å¢ƒã‚’å•ã„åˆã›ã‚‹å ´åˆã‚’除ãã€å±•é–‹ã•ã‚Œã¦ã„ãªã„ワイルドカードをå‚ç…§ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-subpackages \fIpackage1:package2:\&.\&.\&.\fR
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤«¤é»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Æâ¤ËºÆµ¢Åª¤Ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë¿·¤·¤¤¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤òÄɲ乤ëºÝ¤ËÊØÍø¤Ç¤¹¡£¿·¤·¤¤¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤¬¼«Æ°Åª¤ËÁȤ߹þ¤Þ¤ì¤ë¤«¤é¤Ç¤¹¡£³Æpackage°ú¿ô¤Ï¡¢Ç¤°Õ¤ÎºÇ¾å°Ì¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸(\fIjava\fR¤Ê¤É)¤Þ¤¿¤Ï´°Á´½¤¾þ¥Ñ¥Ã¥±¡¼¥¸(\fIjavax\&.swing\fR¤Ê¤É)¤Ë¤Ê¤ê¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£°ú¿ô¤Ï¡¢¤¹¤Ù¤Æ¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¡¢¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¸¡º÷¾ì½ê¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fI\-sourcepath\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼Æâ¤Ë¸ºß¤¹¤ë¤¬¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Ê¤¤¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½èÍý¤·¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIjava\fR¤ª¤è¤Ó\fIjavax\&.swing\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ñ¥Ã¥±¡¼¥¸¤È¤³¤ì¤é¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸Á´Éô¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£
+ソース・ファイルã‹ã‚‰æŒ‡å®šã•ã‚ŒãŸãƒ‘ッケージãŠã‚ˆã³ãã®ã‚µãƒ–パッケージ内ã«å†å¸°çš„ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«æ–°ã—ã„サブパッケージを追加ã™ã‚‹éš›ã«ä¾¿åˆ©ã§ã™ã€‚æ–°ã—ã„サブパッケージãŒè‡ªå‹•çš„ã«çµ„ã¿è¾¼ã¾ã‚Œã‚‹ã‹ã‚‰ã§ã™ã€‚å„package引数ã¯ã€ä»»æ„ã®æœ€ä¸Šä½ã‚µãƒ–パッケージ(\fIjava\fRãªã©)ã¾ãŸã¯å®Œå…¨ä¿®é£¾ãƒ‘ッケージ(\fIjavax\&.swing\fRãªã©)ã«ãªã‚Šã¾ã™ã€‚ソース・ファイルをå«ã‚ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。引数ã¯ã€ã™ã¹ã¦ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚ワイルドカードã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。パッケージã®æ¤œç´¢å ´æ‰€ã‚’指定ã™ã‚‹ã«ã¯ã€\fI\-sourcepath\fRを使用ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リー内ã«å­˜åœ¨ã™ã‚‹ãŒãƒ‘ッケージã«å«ã¾ã‚Œãªã„ソース・ファイルを処ç†ã—ã¾ã›ã‚“。ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIjava\fRãŠã‚ˆã³\fIjavax\&.swing\fRã¨ã„ã†åå‰ã®ãƒ‘ッケージã¨ã“れらã®ã‚µãƒ–パッケージ全部ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2538,9 +2538,9 @@
 .PP
 \-exclude \fIpackagename1:packagename2:\&.\&.\&.\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤È¤½¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò\fI\-subpackages\fR¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤¿¥ê¥¹¥È¤«¤é̵¾ò·ï¤Ë½ü³°¤·¤Þ¤¹¡£²áµî¤Þ¤¿¤Ï¾­Íè¤Î\fI\-subpackages\fR¥ª¥×¥·¥ç¥ó¤Î»ØÄê¤Ë¤è¤Ã¤ÆÁȤ߹þ¤Þ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸¤â½ü³°¤ÎÂоݤȤʤê¤Þ¤¹¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\&.io\fR¡¢\fIjava\&.util\fR¡¢\fIjava\&.math\fR¤Ê¤É¤ÏÁȤ߹þ¤Þ¤ì¤Þ¤¹¤¬¡¢\fIjava\&.net\fR¤È\fIjava\&.lang\fR¤ò¥ë¡¼¥È¤Ë»ý¤Ä¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤Þ¤¹¡£\fIjava\&.lang\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ç¤¢¤ë\fIjava\&.lang\&.ref\fR¤¬½ü³°¤µ¤ì¤ëÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+指定ã•ã‚ŒãŸãƒ‘ッケージã¨ãã®ã‚µãƒ–パッケージを\fI\-subpackages\fRã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸãƒªã‚¹ãƒˆã‹ã‚‰ç„¡æ¡ä»¶ã«é™¤å¤–ã—ã¾ã™ã€‚éŽåŽ»ã¾ãŸã¯å°†æ¥ã®\fI\-subpackages\fRオプションã®æŒ‡å®šã«ã‚ˆã£ã¦çµ„ã¿è¾¼ã¾ã‚Œã‚‹ãƒ‘ッケージも除外ã®å¯¾è±¡ã¨ãªã‚Šã¾ã™ã€‚
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\&.io\fRã€\fIjava\&.util\fRã€\fIjava\&.math\fRãªã©ã¯çµ„ã¿è¾¼ã¾ã‚Œã¾ã™ãŒã€\fIjava\&.net\fRã¨\fIjava\&.lang\fRをルートã«æŒã¤ãƒ‘ッケージã¯é™¤å¤–ã•ã‚Œã¾ã™ã€‚\fIjava\&.lang\fRã®ã‚µãƒ–パッケージã§ã‚ã‚‹\fIjava\&.lang\&.ref\fRãŒé™¤å¤–ã•ã‚Œã‚‹ç‚¹ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -2556,30 +2556,30 @@
 .PP
 \-bootclasspath \fIclasspathlist\fR
 .RS 4
-¥Ö¡¼¥È¡¦¥¯¥é¥¹¤¬Â¸ºß¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¡¦¥¯¥é¥¹¤È¤Ï¡¢Ä̾Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥¯¥é¥¹¤Î¤³¤È¤Ç¤¹¡£\fIbootclasspath\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òõ¤¹¤È¤­¤Ë»ÈÍѤ¹¤ë¸¡º÷¥Ñ¥¹¤Î°ìÉô¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.sp
-\fIclasspathlist\fR¥Ñ¥é¥á¡¼¥¿Æâ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥»¥ß¥³¥í¥ó(;)¤Ç¶èÀÚ¤ë(Windows¤Î¾ì¹ç)¤«¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹(Oracle Solaris¤Î¾ì¹ç)¡£
+ブート・クラスãŒå­˜åœ¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブート・クラスã¨ã¯ã€é€šå¸¸ã€Javaプラットフォーム・クラスã®ã“ã¨ã§ã™ã€‚\fIbootclasspath\fRã¯ã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã™ã¨ãã«ä½¿ç”¨ã™ã‚‹æ¤œç´¢ãƒ‘スã®ä¸€éƒ¨ã§ã™ã€‚詳細ã¯ã€ã‚¯ãƒ©ã‚¹ã®æ¤œå‡ºæ–¹æ³•
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.sp
+\fIclasspathlist\fRパラメータ内ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§åŒºåˆ‡ã‚‹(Windowsã®å ´åˆ)ã‹ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™(Oracle Solarisã®å ´åˆ)。
 .RE
 .PP
 \-extdirs \fIdirist\fR
 .RS 4
-³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£³ÈÄ¥µ¡Ç½¥¯¥é¥¹¤È¤Ï¡¢Java³ÈÄ¥µ¡Ç½µ¡¹½¤ò»ÈÍѤ¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Ç¤¹¡£\fIextdirs\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òõ¤¹¤È¤­¤Ë»ÈÍѤ¹¤ë¸¡º÷¥Ñ¥¹¤Î°ìÉô¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fIdirlist\fRÆâ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢¥»¥ß¥³¥í¥ó(;)¤Ç¶èÀÚ¤ë(Windows¤Î¾ì¹ç)¤«¡¢¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹(Oracle Solaris¤Î¾ì¹ç)¡£
+拡張機能クラスãŒå­˜åœ¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚拡張機能クラスã¨ã¯ã€Java拡張機能機構を使用ã™ã‚‹ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã§ã™ã€‚\fIextdirs\fRオプションã¯ã€\fIjavadoc\fRコマンドãŒã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã™ã¨ãã«ä½¿ç”¨ã™ã‚‹æ¤œç´¢ãƒ‘スã®ä¸€éƒ¨ã§ã™ã€‚詳細ã¯ã€\fI\-classpath\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。\fIdirlist\fR内ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯ã€ã‚»ãƒŸã‚³ãƒ­ãƒ³(;)ã§åŒºåˆ‡ã‚‹(Windowsã®å ´åˆ)ã‹ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã‚Šã¾ã™(Oracle Solarisã®å ´åˆ)。
 .RE
 .PP
 \-verbose
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹ÔÃæ¤Ë¾ÜºÙ¤Ê¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£\fIverbose\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥í¡¼¥É»þ¡¢¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®»þ(¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë1¤Ä¤Î¥á¥Ã¥»¡¼¥¸)¡¢¤ª¤è¤Ó¥½¡¼¥È»þ¤Ë¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£verbose¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢³ÆJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î²òÀϤËÍפ·¤¿»þ´Ö(¥ß¥êÉÃñ°Ì)¤ò¼¨¤¹ÄɲäΥá¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®å®Ÿè¡Œä¸­ã«è©³ç´°ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¾ã™ã€‚\fIverbose\fRオプションを指定ã—ãªã„ã¨ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ­ãƒ¼ãƒ‰æ™‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆæ™‚(ソース・ファイルã”ã¨ã«1ã¤ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸)ã€ãŠã‚ˆã³ã‚½ãƒ¼ãƒˆæ™‚ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚verboseオプションを指定ã™ã‚‹ã¨ã€å„Javaソース・ファイルã®è§£æžã«è¦ã—ãŸæ™‚é–“(ミリ秒å˜ä½)を示ã™è¿½åŠ ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òÍÞÀ©¤·¡¢·Ù¹ð¤È¥¨¥é¡¼¤Î¤ß¤¬É½¼¨¤µ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¡¢¤³¤ì¤é¤ò³Îǧ¤·¤ä¤¹¤¯¤·¤Þ¤¹¡£\fIversion\fRʸ»úÎó¤âÍ޻ߤ·¤Þ¤¹¡£
+メッセージを抑制ã—ã€è­¦å‘Šã¨ã‚¨ãƒ©ãƒ¼ã®ã¿ãŒè¡¨ç¤ºã•ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ã€ã“れらを確èªã—ã‚„ã™ãã—ã¾ã™ã€‚\fIversion\fR文字列も抑止ã—ã¾ã™ã€‚
 .RE
 .PP
 \-breakiterator
 .RS 4
-±Ñ¸ì¤Î¾ì¹ç¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î¼çÀâÌÀ¤ÎºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ëºÝ¤Ë¡¢\fIjava\&.text\&.BreakIterator\fR¤Î¹ñºÝ²½¤µ¤ì¤¿Ê¸¶­³¦¤ò»ÈÍѤ·¤Þ¤¹¡£Â¾¤Î¤¹¤Ù¤Æ¤Î¥í¥±¡¼¥ë¤Ï¡¢±Ñ¸ì¸À¸ì¤È¤¤¤¦¥í¥±¡¼¥ë¸ÇÍ­¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤Ï¤Ê¤¯¡¢¤¹¤Ç¤Ë\fIBreakIterator\fR¥¯¥é¥¹¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£ºÇ½é¤Îʸ¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¤Þ¤¿¤Ï¥á¥ó¥Ð¡¼¤Î¥µ¥Þ¥ê¡¼¤Ë¥³¥Ô¡¼¤µ¤ì¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Îº÷°ú¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£JDK 1\&.2°Ê¹ß¡¢\fIBreakIterator\fR¥¯¥é¥¹¤Ï¡¢±Ñ¸ì¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¸À¸ì¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ë¤¿¤á¤Ë¡¢¤¹¤Ç¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢1\&.2°Ê¹ß¤Ç¤Ï±Ñʸ°Ê³°¤Ë¤Ï¸ú²Ì¤¬¤¢¤ê¤Þ¤»¤ó¡£±Ñʸ¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ÊÆȼ«¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥¢¥ë¥´¥ê¥º¥à¤¬¤¢¤ê¤Þ¤¹¡£
+英語ã®å ´åˆã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®ä¸»èª¬æ˜Žã®æœ€åˆã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹éš›ã«ã€\fIjava\&.text\&.BreakIterator\fRã®å›½éš›åŒ–ã•ã‚ŒãŸæ–‡å¢ƒç•Œã‚’使用ã—ã¾ã™ã€‚ä»–ã®ã™ã¹ã¦ã®ãƒ­ã‚±ãƒ¼ãƒ«ã¯ã€è‹±èªžè¨€èªžã¨ã„ã†ãƒ­ã‚±ãƒ¼ãƒ«å›ºæœ‰ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã¯ãªãã€ã™ã§ã«\fIBreakIterator\fRクラスを使用ã—ã¦ã„ã¾ã™ã€‚最åˆã®æ–‡ã¯ã€ãƒ‘ッケージã€ã‚¯ãƒ©ã‚¹ã€ã¾ãŸã¯ãƒ¡ãƒ³ãƒãƒ¼ã®ã‚µãƒžãƒªãƒ¼ã«ã‚³ãƒ”ーã•ã‚Œã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã®ç´¢å¼•ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚JDK 1\&.2以é™ã€\fIBreakIterator\fRクラスã¯ã€è‹±èªžã‚’除ãã™ã¹ã¦ã®è¨€èªžã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹ãŸã‚ã«ã€ã™ã§ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fI\-breakiterator\fRオプションã¯ã€1\&.2以é™ã§ã¯è‹±æ–‡ä»¥å¤–ã«ã¯åŠ¹æžœãŒã‚ã‚Šã¾ã›ã‚“。英文ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªç‹¬è‡ªã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2589,7 +2589,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-±Ñʸ¤Î¥Ç¥Õ¥©¥ë¥È¤Îʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¡£¶õÇòʸ»ú¤Þ¤¿¤ÏHTML¥Ö¥í¥Ã¥¯¡¦¥¿¥°(\fI<P>\fR¤Ê¤É)¤¬Â³¤¯¥Ô¥ê¥ª¥É¤ÇÄä»ß¤·¤Þ¤¹¡£
+英文ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡åŒºåˆ‡ã‚Šã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã€‚空白文字ã¾ãŸã¯HTMLブロック・タグ(\fI<P>\fRãªã©)ãŒç¶šãピリオドã§åœæ­¢ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2600,36 +2600,36 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-breakiteratorʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¡£¼¡¤Î¸ì¤¬Âçʸ»ú¤Ç»Ï¤Þ¤ë¾ì¹ç¡¢¶õÇòʸ»ú¤¬Â³¤¯¥Ô¥ê¥ª¥É¡¢µ¿ÌäÉä¡¢¤Þ¤¿¤Ï´¶Ã²Éä¤ÇÄä»ß¤·¤Þ¤¹¡£¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤Ï¡ÖThe serial no\&. is valid¡×¤Ê¤É¡¢¤Û¤È¤ó¤É¤Î¾Êάɽµ­¤¬½èÍý¤µ¤ì¤Þ¤¹¤¬¡¢¡ÖMr\&. Smith¡×¤Ï½èÍý¤µ¤ì¤Þ¤»¤ó¡£\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢HTML¥¿¥°¤ä¡¢¿ô»ú¤Þ¤¿¤Ïµ­¹æ¤Ç»Ï¤Þ¤ëʸ¤Ç¤ÏÄä»ß¤·¤Þ¤»¤ó¡£HTML¥¿¥°¤ËËä¤á¹þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¤â¡¢¡Ö\&.\&./filename¡×¤ÎºÇ¸å¤Î¥Ô¥ê¥ª¥É¤ÇÄä»ß¤·¤Þ¤¹¡£
-.RE
-.sp
-Java SE 1\&.5¤Ç¤Ï\fI\-breakiterator\fR·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬ºï½ü¤µ¤ì¡¢¥Ç¥Õ¥©¥ë¥È¤Îʸ¶èÀڤꥢ¥ë¥´¥ê¥º¥à¤ÏÊѹ¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤òÊѹ¹¤»¤º¡¢SE 1\&.4\&.x¤Ç¤Î\fI\-breakiterator\fR¥ª¥×¥·¥ç¥ó¤Î·Ù¹ð¤ò½üµî¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤â¡¢²¿¤â¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£Java SE 1\&.5\&.0¤«¤é¤Ï·Ù¹ð¤Ï¾ÃÌǤ·¤Æ¤¤¤Þ¤¹¡£
+breakiterator文区切りアルゴリズム。次ã®èªžãŒå¤§æ–‡å­—ã§å§‹ã¾ã‚‹å ´åˆã€ç©ºç™½æ–‡å­—ãŒç¶šãピリオドã€ç–‘å•ç¬¦ã€ã¾ãŸã¯æ„Ÿå˜†ç¬¦ã§åœæ­¢ã—ã¾ã™ã€‚ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã¯ã€ŒThe serial no\&. is validã€ãªã©ã€ã»ã¨ã‚“ã©ã®çœç•¥è¡¨è¨˜ãŒå‡¦ç†ã•ã‚Œã¾ã™ãŒã€ã€ŒMr\&. Smithã€ã¯å‡¦ç†ã•ã‚Œã¾ã›ã‚“。\fI\-breakiterator\fRオプションã§ã¯ã€HTMLã‚¿ã‚°ã‚„ã€æ•°å­—ã¾ãŸã¯è¨˜å·ã§å§‹ã¾ã‚‹æ–‡ã§ã¯åœæ­¢ã—ã¾ã›ã‚“。HTMLã‚¿ã‚°ã«åŸ‹ã‚è¾¼ã¾ã‚Œã¦ã„ã‚‹å ´åˆã§ã‚‚ã€ã€Œ\&.\&./filenameã€ã®æœ€å¾Œã®ãƒ”リオドã§åœæ­¢ã—ã¾ã™ã€‚
+.RE
+.sp
+Java SE 1\&.5ã§ã¯\fI\-breakiterator\fR警告メッセージãŒå‰Šé™¤ã•ã‚Œã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡åŒºåˆ‡ã‚Šã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã¯å¤‰æ›´ã•ã‚Œã¦ã„ã¾ã›ã‚“。ソース・コードを変更ã›ãšã€SE 1\&.4\&.xã§ã®\fI\-breakiterator\fRオプションã®è­¦å‘Šã‚’除去ã—ã¦ã„ãªã„å ´åˆã§ã‚‚ã€ä½•ã‚‚ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。Java SE 1\&.5\&.0ã‹ã‚‰ã¯è­¦å‘Šã¯æ¶ˆæ»…ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-locale \fIlanguage_country_variant\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥í¥±¡¼¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î°ú¿ô¤Ï¡¢\fIj\fR\fIava\&.util\&.Locale\fR¥É¥­¥å¥á¥ó¥È¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢\fIen_US\fR
-(±Ñ¸ì¡¢Êƹñ)¤Þ¤¿¤Ï\fIen_US_WIN\fR
-(Windows¥Ð¥ê¥¢¥ó¥È)¤Ê¤É¤Î¥í¥±¡¼¥ë¤Î̾Á°¤Ç¤¹¡£
-.sp
-\fBÃí°Õ:\fR
-\fI\-locale\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤¬Ä󶡤¹¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¡¢¤Þ¤¿¤Ï¤½¤Î¾¤ÎǤ°Õ¤Î¥É¥Ã¥¯¥ì¥Ã¥È¤¬Ä󶡤¹¤ë¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤è¤êÁ°(º¸Â¦)¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤·¤Ê¤¤¤È¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤¬±Ñ¸ì¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î¤ß¡¢»ØÄꤹ¤ë½ç½ø¤Ë°Í¸¤·¤Þ¤¹¡£É¸½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥í¥±¡¼¥ë¤ò»ØÄꤹ¤ë¤È¡¢»ØÄꤷ¤¿¥í¥±¡¼¥ë¤Î¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÁªÂò¤µ¤ì¤Æ¡¢¥á¥Ã¥»¡¼¥¸(¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¡¢¥ê¥¹¥È¤Èɽ¤Î¸«½Ð¤·¡¢¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ë¤ÎÌܼ¡¡¢stylesheet\&.css¤Î¥³¥á¥ó¥È¤Ê¤É¤Îʸ»úÎó)¤Î¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤Þ¤¿¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ë¥½¡¼¥È¤µ¤ì¤ë¥ê¥¹¥È¤Î¥½¡¼¥È½ç¡¢¤ª¤è¤ÓºÇ½é¤Îʸ¤Î½ª¤ï¤ê¤òȽÃǤ¹¤ë¤¿¤á¤Îʸ¤Î¶èÀÚ¤êʸ»ú¤â¡¢»ØÄꤷ¤¿¥í¥±¡¼¥ë¤Ë¤è¤Ã¤Æ·è¤Þ¤ê¤Þ¤¹¡£\fI\-locale\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Î¥Æ¥­¥¹¥È¤Î¥í¥±¡¼¥ë¤ò·èÄꤹ¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ãƒ­ã‚±ãƒ¼ãƒ«ã‚’指定ã—ã¾ã™ã€‚ã“ã®å¼•æ•°ã¯ã€\fIj\fR\fIava\&.util\&.Locale\fRドキュメントã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€\fIen_US\fR
+(英語ã€ç±³å›½)ã¾ãŸã¯\fIen_US_WIN\fR
+(Windowsãƒãƒªã‚¢ãƒ³ãƒˆ)ãªã©ã®ãƒ­ã‚±ãƒ¼ãƒ«ã®åå‰ã§ã™ã€‚
+.sp
+\fB注æ„:\fR
+\fI\-locale\fRオプションã¯ã€æ¨™æº–ドックレットãŒæä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションã€ã¾ãŸã¯ãã®ä»–ã®ä»»æ„ã®ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆãŒæä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚ªãƒ—ションよりå‰(å·¦å´)ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã†ã—ãªã„ã¨ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ãŒè‹±èªžã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®ã¿ã€æŒ‡å®šã™ã‚‹é †åºã«ä¾å­˜ã—ã¾ã™ã€‚標準ドックレットã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+ロケールを指定ã™ã‚‹ã¨ã€æŒ‡å®šã—ãŸãƒ­ã‚±ãƒ¼ãƒ«ã®ãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦é¸æŠžã•ã‚Œã¦ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸(ナビゲーション・ãƒãƒ¼ã€ãƒªã‚¹ãƒˆã¨è¡¨ã®è¦‹å‡ºã—ã€ãƒ˜ãƒ«ãƒ—・ファイルã®ç›®æ¬¡ã€stylesheet\&.cssã®ã‚³ãƒ¡ãƒ³ãƒˆãªã©ã®æ–‡å­—列)ã®ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã¾ãŸã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ã‚½ãƒ¼ãƒˆã•ã‚Œã‚‹ãƒªã‚¹ãƒˆã®ã‚½ãƒ¼ãƒˆé †ã€ãŠã‚ˆã³æœ€åˆã®æ–‡ã®çµ‚ã‚りを判断ã™ã‚‹ãŸã‚ã®æ–‡ã®åŒºåˆ‡ã‚Šæ–‡å­—ã‚‚ã€æŒ‡å®šã—ãŸãƒ­ã‚±ãƒ¼ãƒ«ã«ã‚ˆã£ã¦æ±ºã¾ã‚Šã¾ã™ã€‚\fI\-locale\fRオプションã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã§æŒ‡å®šã•ã‚Œã¦ã„るドキュメンテーション・コメントã®ãƒ†ã‚­ã‚¹ãƒˆã®ãƒ­ã‚±ãƒ¼ãƒ«ã‚’決定ã™ã‚‹ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .PP
 \-encoding
 .RS 4
-¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°(\fIEUCJIS/SJIS\fR¤Ê¤É)¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥Ð¡¼¥¿¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ソース・ファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã®åå‰(\fIEUCJIS/SJIS\fRãªã©)を指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ—ラットフォームã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ãƒãƒ¼ã‚¿ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëJava Runtime Environment (JRE)¤Ë¡¢\fIflag\fR¤òľÀÜÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢À¸À®¥É¥­¥å¥á¥ó¥È¤ò½èÍý¤¹¤ë¤¿¤á¤Ë¥·¥¹¥Æ¥à¤Ç32MB¤Î¥á¥â¥ê¡¼¤ò³ÎÊݤ·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-Xmx\fR¥ª¥×¥·¥ç¥ó¤ò¼¡¤Î¤è¤¦¤Ë¸Æ¤Ó½Ð¤·¤Þ¤¹¡£\fIjavadoc \-J\-Xmx32m \-J\-Xms32m com\&.mypackage\fR¡£\fI\-Xms\fR¤Ï¾Êά²Äǽ¤Ç¡¢¤³¤ì¤Ï½é´ü¥á¥â¥ê¡¼¤Î¥µ¥¤¥º¤òÀßÄꤹ¤ë¤Î¤ß¤Î¥ª¥×¥·¥ç¥ó¤Ç¡¢É¬Íפʥá¥â¥ê¡¼¤ÎºÇ¾®Î̤¬¤ï¤«¤Ã¤Æ¤¤¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
-.sp
-\fIJ\fR¤È\fIflag\fR¤Î´Ö¤Ë¶õÇòʸ»ú¤Ï¤¢¤ê¤Þ¤»¤ó¡£
-.sp
-»ÈÍѤ·¤Æ¤¤¤ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò³Îǧ¤¹¤ë¤Ë¤Ï\fI\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë¤Ïɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£Javadoc¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドを実行ã™ã‚‹Java Runtime Environment (JRE)ã«ã€\fIflag\fRを直接渡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’処ç†ã™ã‚‹ãŸã‚ã«ã‚·ã‚¹ãƒ†ãƒ ã§32MBã®ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’確ä¿ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€\fI\-Xmx\fRオプションを次ã®ã‚ˆã†ã«å‘¼ã³å‡ºã—ã¾ã™ã€‚\fIjavadoc \-J\-Xmx32m \-J\-Xms32m com\&.mypackage\fR。\fI\-Xms\fRã¯çœç•¥å¯èƒ½ã§ã€ã“ã‚Œã¯åˆæœŸãƒ¡ãƒ¢ãƒªãƒ¼ã®ã‚µã‚¤ã‚ºã‚’設定ã™ã‚‹ã®ã¿ã®ã‚ªãƒ—ションã§ã€å¿…è¦ãªãƒ¡ãƒ¢ãƒªãƒ¼ã®æœ€å°é‡ãŒã‚ã‹ã£ã¦ã„ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
+.sp
+\fIJ\fRã¨\fIflag\fRã®é–“ã«ç©ºç™½æ–‡å­—ã¯ã‚ã‚Šã¾ã›ã‚“。
+.sp
+使用ã—ã¦ã„ã‚‹\fIjavadoc\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’確èªã™ã‚‹ã«ã¯\fI\-version\fRオプションを使用ã—ã¾ã™ã€‚出力ストリームã«ã¯æ¨™æº–ドックレットã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚Javadocコマンドã®å®Ÿè¡Œã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -2644,76 +2644,76 @@
 .RE
 .\}
 .RE
-.SS "ɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ª¥×¥·¥ç¥ó"
+.SS "標準ドックレットã®ã‚ªãƒ—ション"
 .PP
 \-d \fIdirectory\fR
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬À¸À®¤µ¤ì¤¿HTML¥Õ¥¡¥¤¥ë¤òÊݸ¤¹¤ëÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-d\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤µ¤ì¤Þ¤¹¡£\fIdirectory\fR¤ÎÃͤˤϡ¢ÀäÂХǥ£¥ì¥¯¥È¥ê¡¢¤Þ¤¿¤Ï¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХǥ£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Java SE 1\&.4¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤ÈÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤¬¼«Æ°Åª¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤ÎÎã¤Ç¤Ï¡¢\fIcom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢¤½¤Î·ë²Ì¤¬\fI/user/doc/ \fR¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤µ¤ì¤Þ¤¹¡£\fIjavadoc \-d \fR\fI/user/doc/ \fR\fIcom\&.mypackage\fR
+\fIjavadoc\fRコマンドãŒç”Ÿæˆã•ã‚ŒãŸHTMLファイルをä¿å­˜ã™ã‚‹ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚\fI\-d\fRオプションをçœç•¥ã™ã‚‹ã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚\fIdirectory\fRã®å€¤ã«ã¯ã€çµ¶å¯¾ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€ã¾ãŸã¯ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚Java SE 1\&.4ã§ã¯ã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã¨ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒè‡ªå‹•çš„ã«ä½œæˆã•ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®ä¾‹ã§ã¯ã€\fIcom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€ãã®çµæžœãŒ\fI/user/doc/ \fRディレクトリã«ä¿å­˜ã•ã‚Œã¾ã™ã€‚\fIjavadoc \-d \fR\fI/user/doc/ \fR\fIcom\&.mypackage\fR
 .RE
 .PP
 \-use
 .RS 4
-¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥¯¥é¥¹¤ª¤è¤Ó¥Ñ¥Ã¥±¡¼¥¸¤´¤È¤Ë1¤Ä¤Î»ÈÍÑ¥Ú¡¼¥¸¤òÁȤ߹þ¤ß¤Þ¤¹¡£¤³¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢¤½¤ÎÆÃÄê¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤ÎAPI¤ò»ÈÍѤ·¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¡¢¥¯¥é¥¹¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤¬µ­½Ò¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹C¤òÎã¤Ë¤È¤ë¤È¡¢¥¯¥é¥¹C¤ò»ÈÍѤ·¤Æ¤¤¤ë¤â¤Î¤È¤·¤Æ¤Ï¡¢C¤Î¥µ¥Ö¥¯¥é¥¹¡¢C¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤ë¥Õ¥£¡¼¥ë¥É¡¢C¤òÊÖ¤¹¥á¥½¥Ã¥É¡¢¤ª¤è¤Ó·¿C¤Î¥Ñ¥é¥á¡¼¥¿¤ò»ý¤Ä¥á¥½¥Ã¥É¤È¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIString\fR·¿ÍѤλÈÍÑ¥Ú¡¼¥¸¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£\fIjava\&.awt\&.Font\fR¥¯¥é¥¹¤Î\fIgetName\fR¥á¥½¥Ã¥É¤Ï\fIString\fR·¿¤òÌ᤹¤Î¤Ç¡¢\fIgetName\fR¥á¥½¥Ã¥É¤Ï\fIString\fR¤ò»ÈÍѤ·¡¢\fIgetName\fR¥á¥½¥Ã¥É¤¬\fIString\fRÍѤλÈÍÑ¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¼ÂÁõ¤Ç¤Ï¤Ê¤¯API¤Î»ÈÍѤΤߤò¥É¥­¥å¥á¥ó¥È²½¤·¤Þ¤¹¡£¥á¥½¥Ã¥É¤¬¤½¤Î¼ÂÁõ¤Ç\fIString\fR¤ò»ÈÍѤ¹¤ë¤¬¡¢°ú¿ô¤È¤·¤Æʸ»úÎó¤ò¼è¤é¤Ê¤¤¡¢¤Þ¤¿¤Ïʸ»úÎó¤òÊÖ¤µ¤Ê¤¤¾ì¹ç¡¢¤½¤ì¤Ï\fIString\fR¤Î»ÈÍѤȤϤߤʤµ¤ì¤Þ¤»¤ó¡£À¸À®¤µ¤ì¤¿»ÈÍÑ¥Ú¡¼¥¸¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Ë°ÜÆ°¤·¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î\fB¥ê¥ó¥¯¤Î»ÈÍÑ\fR¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£
+ドキュメント化ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ‘ッケージã”ã¨ã«1ã¤ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒšãƒ¼ã‚¸ã«ã¯ã€ãã®ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã®APIを使用ã—ã¦ã„るパッケージã€ã‚¯ãƒ©ã‚¹ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŒè¨˜è¿°ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹Cを例ã«ã¨ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹Cを使用ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã—ã¦ã¯ã€Cã®ã‚µãƒ–クラスã€Cã¨ã—ã¦å®£è¨€ã•ã‚Œã¦ã„るフィールドã€Cã‚’è¿”ã™ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³åž‹Cã®ãƒ‘ラメータをæŒã¤ãƒ¡ã‚½ãƒƒãƒ‰ã¨ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIString\fR型用ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã‚’表示ã§ãã¾ã™ã€‚\fIjava\&.awt\&.Font\fRクラスã®\fIgetName\fRメソッドã¯\fIString\fR型を戻ã™ã®ã§ã€\fIgetName\fRメソッドã¯\fIString\fRを使用ã—ã€\fIgetName\fRメソッドãŒ\fIString\fR用ã®ä½¿ç”¨ãƒšãƒ¼ã‚¸ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯å®Ÿè£…ã§ã¯ãªãAPIã®ä½¿ç”¨ã®ã¿ã‚’ドキュメント化ã—ã¾ã™ã€‚メソッドãŒãã®å®Ÿè£…ã§\fIString\fRを使用ã™ã‚‹ãŒã€å¼•æ•°ã¨ã—ã¦æ–‡å­—列をå–らãªã„ã€ã¾ãŸã¯æ–‡å­—列を返ã•ãªã„å ´åˆã€ãã‚Œã¯\fIString\fRã®ä½¿ç”¨ã¨ã¯ã¿ãªã•ã‚Œã¾ã›ã‚“。生æˆã•ã‚ŒãŸä½¿ç”¨ãƒšãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ãƒ‘ッケージã«ç§»å‹•ã—ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®\fBリンクã®ä½¿ç”¨\fRをクリックã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢@version¤Î¥Æ¥­¥¹¥È¤òÁȤ߹þ¤ß¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¾Êά¤µ¤ì¤Þ¤¹¡£»ÈÍѤ·¤Æ¤¤¤ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥Ð¡¼¥¸¥ç¥ó¤ò³Îǧ¤¹¤ë¤Ë¤Ï\fI\-J\-version\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€@versionã®ãƒ†ã‚­ã‚¹ãƒˆã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯çœç•¥ã•ã‚Œã¾ã™ã€‚使用ã—ã¦ã„ã‚‹\fIjavadoc\fRコマンドã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’確èªã™ã‚‹ã«ã¯\fI\-J\-version\fRオプションを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-author
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¡¢\fI@author\fR¤Î¥Æ¥­¥¹¥È¤òÁȤ߹þ¤ß¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã€\fI@author\fRã®ãƒ†ã‚­ã‚¹ãƒˆã‚’組ã¿è¾¼ã¿ã¾ã™ã€‚
 .RE
 .PP
 \-splitindex
 .RS 4
-º÷°ú¥Õ¥¡¥¤¥ë¤ò¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤´¤È¤ËÊ£¿ô¤Î¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤·¡¢Ê¸»ú¤´¤È¤Ë1¤Ä¤Î¥Õ¥¡¥¤¥ë¤È¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È°Ê³°¤Îµ­¹æ¤Ç»Ï¤Þ¤ëº÷°ú¥¨¥ó¥È¥êÍѤË1¤Ä¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+索引ファイルをアルファベットã”ã¨ã«è¤‡æ•°ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«åˆ†å‰²ã—ã€æ–‡å­—ã”ã¨ã«1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆä»¥å¤–ã®è¨˜å·ã§å§‹ã¾ã‚‹ç´¢å¼•ã‚¨ãƒ³ãƒˆãƒªç”¨ã«1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-windowtitle \fItitle\fR
 .RS 4
-HTML¤Î\fI<title>\fR¥¿¥°¤ËÇÛÃÖ¤¹¤ë¥¿¥¤¥È¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤Ï¡¢¥¦¥£¥ó¥É¥¦¤Î¥¿¥¤¥È¥ë¤ä¡¢¤³¤Î¥Ú¡¼¥¸¤ËÂФ·¤ÆºîÀ®¤µ¤ì¤¿¥Ö¥é¥¦¥¶¤Î¥Ö¥Ã¥¯¥Þ¡¼¥¯(¤ªµ¤¤ËÆþ¤ê)¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¿¥¤¥È¥ë¤Ë¤ÏHTML¥¿¥°¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¥¿¥¤¥È¥ë¤ËHTML¥¿¥°¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤È¡¢¥Ö¥é¥¦¥¶¤¬¥¿¥°¤òÀµ¤·¤¯²ò¼á¤Ç¤­¤Þ¤»¤ó¡£\fItitle\fR¥¿¥°Æâ¤ÎÆâÉô¤ÎÆó½Å°úÍÑÉä¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Æ¥Þ¡¼¥¯¤·¤Þ¤¹¡£\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë¡¢\fI\-doctitle\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-windowtitle "Java SE Platform" com\&.mypackage\fR¤Ç¤¹¡£
+HTMLã®\fI<title>\fRã‚¿ã‚°ã«é…ç½®ã™ã‚‹ã‚¿ã‚¤ãƒˆãƒ«ã‚’指定ã—ã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã‚¿ã‚¤ãƒˆãƒ«ã‚„ã€ã“ã®ãƒšãƒ¼ã‚¸ã«å¯¾ã—ã¦ä½œæˆã•ã‚ŒãŸãƒ–ラウザã®ãƒ–ックマーク(ãŠæ°—ã«å…¥ã‚Š)ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¿ã‚¤ãƒˆãƒ«ã«ã¯HTMLã‚¿ã‚°ã‚’å«ã‚ãªã„ã§ãã ã•ã„。タイトルã«HTMLã‚¿ã‚°ãŒå«ã¾ã‚Œã¦ã„ã‚‹ã¨ã€ãƒ–ラウザãŒã‚¿ã‚°ã‚’æ­£ã—ã解釈ã§ãã¾ã›ã‚“。\fItitle\fRタグ内ã®å†…部ã®äºŒé‡å¼•ç”¨ç¬¦ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¦ãƒžãƒ¼ã‚¯ã—ã¾ã™ã€‚\fI\-windowtitle\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fI\-windowtitle\fRオプションã®ã‹ã‚ã‚Šã«ã€\fI\-doctitle\fRオプションã®å€¤ã‚’使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-windowtitle "Java SE Platform" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-doctitle \fItitle\fR
 .RS 4
-³µÍ×¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤Î¶á¤¯¤ËÇÛÃÖ¤¹¤ë¥¿¥¤¥È¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤ÏÃæ±û·¤¨¤Ë¤Ê¤ê¡¢¥ì¥Ù¥ë1¤Î¸«½Ð¤·¤È¤·¤Æ¡¢¾åÉô¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¤¹¤°²¼¤ËÃÖ¤«¤ì¤Þ¤¹¡£\fItitle\fR¥¿¥°¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢¥¿¥¤¥È¥ë¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fItitle\fR¥¿¥°¤ÎÆâÉô¤Ç°úÍÑÉä¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fR¤Ç¤¹¡£
+概è¦ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æœ€ä¸Šéƒ¨ã®è¿‘ãã«é…ç½®ã™ã‚‹ã‚¿ã‚¤ãƒˆãƒ«ã‚’指定ã—ã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ä¸­å¤®æƒãˆã«ãªã‚Šã€ãƒ¬ãƒ™ãƒ«1ã®è¦‹å‡ºã—ã¨ã—ã¦ã€ä¸Šéƒ¨ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã™ã下ã«ç½®ã‹ã‚Œã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€ã‚¿ã‚¤ãƒˆãƒ«ã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fItitle\fRã‚¿ã‚°ã®å†…部ã§å¼•ç”¨ç¬¦ã‚’使用ã™ã‚‹å ´åˆã¯ã€ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-title \fItitle\fR
 .RS 4
-¤¹¤Ç¤Ë¸ºß¤·¤Þ¤»¤ó¡£Javadoc 1\&.2¤Î¥Ù¡¼¥¿ÈǤˤ·¤«Â¸ºß¤·¤Æ¤¤¤Þ¤»¤ó¤Ç¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-doctitle\fR¤È¤¤¤¦Ì¾Á°¤ËÊѹ¹¤µ¤ì¤Þ¤·¤¿¡£Ì¾Á°¤òÊѹ¹¤·¤¿Íýͳ¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤¬¡¢¥¦¥£¥ó¥É¥¦¤Î¥¿¥¤¥È¥ë¤Ç¤Ï¤Ê¤¯¥É¥­¥å¥á¥ó¥È¤Î¥¿¥¤¥È¥ë¤òÄêµÁ¤¹¤ë¤³¤È¤òÌÀ³Î¤Ë¤¹¤ë¤¿¤á¤Ç¤¹¡£
+ã™ã§ã«å­˜åœ¨ã—ã¾ã›ã‚“。Javadoc 1\&.2ã®ãƒ™ãƒ¼ã‚¿ç‰ˆã«ã—ã‹å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“ã§ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-doctitle\fRã¨ã„ã†åå‰ã«å¤‰æ›´ã•ã‚Œã¾ã—ãŸã€‚åå‰ã‚’変更ã—ãŸç†ç”±ã¯ã€ã“ã®ã‚ªãƒ—ションãŒã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®ã‚¿ã‚¤ãƒˆãƒ«ã§ã¯ãªãドキュメントã®ã‚¿ã‚¤ãƒˆãƒ«ã‚’定義ã™ã‚‹ã“ã¨ã‚’明確ã«ã™ã‚‹ãŸã‚ã§ã™ã€‚
 .RE
 .PP
 \-header \fIheader\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤ËÇÛÃÖ¤¹¤ë¥Ø¥Ã¥À¡¼¡¦¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î±¦¾å¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£\fIheader\fR¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢\fIheader\fR¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ø¥Ã¥À¡¼ÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fR¤Ç¤¹¡£
+å„出力ファイルã®æœ€ä¸Šéƒ¨ã«é…ç½®ã™ã‚‹ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ヘッダーã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®å³ä¸Šã«é…ç½®ã•ã‚Œã¾ã™ã€‚\fIheader\fRã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€\fIheader\fRを引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ヘッダー内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjavadoc \-header "<b>Java Platform </b><br>v1\&.4" com\&.mypackage\fRã§ã™ã€‚
 .RE
 .PP
 \-footer \fIfooter\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤¹¤ë¥Õ¥Ã¥¿¡¼¡¦¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fIfooter\fR¤ÎÃͤϡ¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î±¦²¼¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£\fIfooter\fR¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢\fIfooter\fR¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Õ¥Ã¥¿¡¼ÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸‹éƒ¨ã«é…ç½®ã™ã‚‹ãƒ•ãƒƒã‚¿ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIfooter\fRã®å€¤ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®å³ä¸‹ã«é…ç½®ã•ã‚Œã¾ã™ã€‚\fIfooter\fRã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€\fIfooter\fRを引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚フッター内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-top
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ¾åÉô¤ËÇÛÃÖ¤¹¤ë¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸Šéƒ¨ã«é…ç½®ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-bottom \fItext\fR
 .RS 4
-³Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤¹¤ë¥Æ¥­¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Æ¥­¥¹¥È¤Ï¡¢²¼Éô¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤è¤ê²¼¤Î¡¢¥Ú¡¼¥¸¤ÎºÇ²¼Éô¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£¥Æ¥­¥¹¥È¤Ë¤ÏHTML¥¿¥°¤ª¤è¤Ó¶õÇòʸ»ú¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢¤½¤Î¾ì¹ç¡¢¥Æ¥­¥¹¥È¤ò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥ÈÆâÉô¤Î°úÍÑÉä¤Ë¤Ï¥¨¥¹¥±¡¼¥×ʸ»ú¤ò»ÈÍѤ·¤Þ¤¹¡£
+å„出力ファイルã®æœ€ä¸‹éƒ¨ã«é…ç½®ã™ã‚‹ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ä¸‹éƒ¨ãƒŠãƒ“ゲーション・ãƒãƒ¼ã‚ˆã‚Šä¸‹ã®ã€ãƒšãƒ¼ã‚¸ã®æœ€ä¸‹éƒ¨ã«é…ç½®ã•ã‚Œã¾ã™ã€‚テキストã«ã¯HTMLã‚¿ã‚°ãŠã‚ˆã³ç©ºç™½æ–‡å­—ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€ãã®å ´åˆã€ãƒ†ã‚­ã‚¹ãƒˆã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚テキスト内部ã®å¼•ç”¨ç¬¦ã«ã¯ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—文字を使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-link \fIextdocURL\fR
 .RS 4
-´û¸¤ÎJavadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô»²¾È¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£\fIextdocURL\fR°ú¿ô¤Ï¡¢¥ê¥ó¥¯Àè¤È¤·¤Æ»ØÄꤹ¤ë¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô¥É¥­¥å¥á¥ó¥È¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀäÂÐURL¤Þ¤¿¤ÏÁêÂÐURL¤Ç¤¹¡£»ØÄꤷ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ç¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤ÆÊ£¿ô¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
-.sp
-¤³¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ëpackage\-list¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹)¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢package\-list¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÆɤ߼è¤Ã¤¿¸å¡¢¤½¤ÎURL¤Ç¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¡¢\fIextdocURL\fR¤ÎÃͤ¬¡¢ºîÀ®¤µ¤ì¤¿\fI<A HREF>\fR¥ê¥ó¥¯Æâ¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fIextdocURL\fR¤Ï¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤ÎURL¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIextdocURL\fR¤ËÀäÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Î¥É¥­¥å¥á¥ó¥È¤òǤ°Õ¤ÎWeb¥µ¥¤¥È¾å¤Î¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤¹¡£ÁêÂаÌÃ֤إê¥ó¥¯¤¹¤ë¤Î¤ß¤Î¾ì¹ç¤ÏÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤǤ­¤Þ¤¹¡£ÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢ÅϤ¹Ãͤϰ¸Àè¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¡¢¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄê)¡£ÀäÂÐ¥ê¥ó¥¯¤ò»ØÄꤹ¤ë¾ì¹ç¡¢Ä̾HTTP¥ê¥ó¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤À¤·¡¢Web¥µ¡¼¥Ð¡¼¤ò»ý¤¿¤Ê¤¤¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë¡¦¥ê¥ó¥¯¤ò»ÈÍѤǤ­¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ë¥¢¥¯¥»¥¹¤¹¤ëÁ´°÷¤¬Æ±¤¸¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤ò¶¦Í­¤¹¤ë¾ì¹ç¤Ë¤Î¤ß¥Õ¥¡¥¤¥ë¡¦¥ê¥ó¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Î¾ì¹ç¤â¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¤â¡¢URL¤¬ÀäÂФޤ¿¤ÏÁêÂФΤ¤¤º¤ì¤Ç¤â¡¢¤Þ¤¿\fIh\fR\fIttp:\fR¤Þ¤¿¤Ï\fIf\fR\fIile:\fR¤Î¤¤¤º¤ì¤Ç¤â¡¢URL¥á¥â: Uniform Resource Locators
-(http://www\&.ietf\&.org/rfc/rfc1738\&.txt)¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ë¤È¤ª¤ê¡¢¶èÀÚ¤êʸ»ú¤È¤·¤Æ¥¹¥é¥Ã¥·¥å¤ò»ÈÍѤ·¤Þ¤¹¡£
+既存ã®Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部å‚照クラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚\fIextdocURL\fR引数ã¯ã€ãƒªãƒ³ã‚¯å…ˆã¨ã—ã¦æŒ‡å®šã™ã‚‹ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部ドキュメントをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®çµ¶å¯¾URLã¾ãŸã¯ç›¸å¯¾URLã§ã™ã€‚指定ã—ãŸ\fIjavadoc\fRコマンドã®å®Ÿè¡Œã§ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã—ã¦è¤‡æ•°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚
+.sp
+ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«package\-listファイルãŒå­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(存在ã—ãªã„å ´åˆã¯ã€\fI\-linkoffline\fRオプションを使用ã—ã¾ã™)。\fIjavadoc\fRコマンドã¯ã€package\-listファイルã‹ã‚‰ãƒ‘ッケージåを読ã¿å–ã£ãŸå¾Œã€ãã®URLã§ã“れらã®ãƒ‘ッケージã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã€\fIextdocURL\fRã®å€¤ãŒã€ä½œæˆã•ã‚ŒãŸ\fI<A HREF>\fRリンク内ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fIextdocURL\fRã¯ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ãªãディレクトリã¸ã®URLã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIextdocURL\fRã«çµ¶å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’ä»»æ„ã®Webサイト上ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚相対ä½ç½®ã¸ãƒªãƒ³ã‚¯ã™ã‚‹ã®ã¿ã®å ´åˆã¯ç›¸å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã§ãã¾ã™ã€‚相対リンクを使用ã™ã‚‹å ´åˆã€æ¸¡ã™å€¤ã¯å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã€ãƒªãƒ³ã‚¯ã•ã‚Œã¦ã„るパッケージをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(\fI\-d\fRオプションã§æŒ‡å®š)。絶対リンクを指定ã™ã‚‹å ´åˆã€é€šå¸¸ã€HTTPリンクを使用ã—ã¾ã™ã€‚ãŸã ã—ã€Webサーãƒãƒ¼ã‚’æŒãŸãªã„ファイル・システムã«ãƒªãƒ³ã‚¯ã™ã‚‹å ´åˆã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒªãƒ³ã‚¯ã‚’使用ã§ãã¾ã™ã€‚生æˆã•ã‚ŒãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å…¨å“¡ãŒåŒã˜ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚’共有ã™ã‚‹å ´åˆã«ã®ã¿ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒªãƒ³ã‚¯ã‚’使用ã—ã¾ã™ã€‚ã©ã®å ´åˆã‚‚ã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã‚‚ã€URLãŒçµ¶å¯¾ã¾ãŸã¯ç›¸å¯¾ã®ã„ãšã‚Œã§ã‚‚ã€ã¾ãŸ\fIh\fR\fIttp:\fRã¾ãŸã¯\fIf\fR\fIile:\fRã®ã„ãšã‚Œã§ã‚‚ã€URLメモ: Uniform Resource Locators
+(http://www\&.ietf\&.org/rfc/rfc1738\&.txt)ã«æŒ‡å®šã•ã‚Œã¦ã„ã‚‹ã¨ãŠã‚Šã€åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2727,8 +2727,8 @@
 .RE
 .\}
 .RE
-\-linkoffline¤ª¤è¤Ó\-link¥ª¥×¥·¥ç¥ó¤Î°ã¤¤.PP
-¼¡¤Î¾ì¹ç¤Ë¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+\-linkofflineãŠã‚ˆã³\-linkオプションã®é•ã„.PP
+次ã®å ´åˆã«ã€\fI\-link\fRオプションを使用ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2738,7 +2738,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂХѥ¹¤ò»ÈÍѤ¹¤ë¾ì¹ç¡£
+外部APIドキュメントã¸ã®ç›¸å¯¾ãƒ‘スを使用ã™ã‚‹å ´åˆã€‚
 .RE
 .sp
 .RS 4
@@ -2749,14 +2749,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐURL¤ò»ÈÍѤ¹¤ë¾ì¹ç(¤½¤ÎURL¤ËÀܳ¤·¡¢Æɼè¤ê¤ò¹Ô¤¦¤³¤È¤¬¥·¥§¥ë¤Ë¤è¤Ã¤Æµö²Ä¤µ¤ì¤Æ¤¤¤ë¾ì¹ç)¡£
+外部APIドキュメントã¸ã®çµ¶å¯¾URLを使用ã™ã‚‹å ´åˆ(ãã®URLã«æŽ¥ç¶šã—ã€èª­å–ã‚Šã‚’è¡Œã†ã“ã¨ãŒã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦è¨±å¯ã•ã‚Œã¦ã„ã‚‹å ´åˆ)。
 .RE
 .PP
-³°ÉôAPI¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐURL¤ò»ÈÍѤ¹¤ë¾ì¹ç(¤½¤ÎURL¤ËÀܳ¤·¡¢Æɼè¤ê¤ò¹Ô¤¦¤³¤È¤¬¥·¥§¥ë¤Ë¤è¤Ã¤Æµö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç)¤Ï\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¾õ¶·¤Ï¡¢¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤ÎÆ⦤«¤é¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤Î³°Â¦¤Ë¤¢¤ë¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤·¤è¤¦¤È¤¹¤ë¾ì¹ç¤ËȯÀ¸¤·¤Þ¤¹¡£
+外部APIドキュメントã¸ã®çµ¶å¯¾URLを使用ã™ã‚‹å ´åˆ(ãã®URLã«æŽ¥ç¶šã—ã€èª­å–ã‚Šã‚’è¡Œã†ã“ã¨ãŒã‚·ã‚§ãƒ«ã«ã‚ˆã£ã¦è¨±å¯ã•ã‚Œã¦ã„ãªã„å ´åˆ)ã¯\fI\-linkoffline\fRオプションを使用ã—ã¾ã™ã€‚ã“ã®ã‚ˆã†ãªçŠ¶æ³ã¯ã€ãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®å†…å´ã‹ã‚‰ãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®å¤–å´ã«ã‚るドキュメントã«ãƒªãƒ³ã‚¯ã—よã†ã¨ã™ã‚‹å ´åˆã«ç™ºç”Ÿã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐ¥ê¥ó¥¯
-.RS 4
-http://docs\&.oracle\&.com/javase/8/docs/api/index\&.html¤Ë¼¨¤¹¤è¤¦¤Ê¡¢\fIjava\&.lang\fR¡¢\fIjava\&.io\fR¤ª¤è¤Ó¤½¤Î¾¤ÎJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹
+\fBExample 1\fR, 外部ドキュメントã¸ã®çµ¶å¯¾ãƒªãƒ³ã‚¯
+.RS 4
+http://docs\&.oracle\&.com/javase/8/docs/api/index\&.htmlã«ç¤ºã™ã‚ˆã†ãªã€\fIjava\&.lang\fRã€\fIjava\&.io\fRãŠã‚ˆã³ãã®ä»–ã®Javaプラットフォーム・パッケージã«ãƒªãƒ³ã‚¯ã™ã‚‹å ´åˆã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™
 .sp
 .if n \{\
 .RS 4
@@ -2767,37 +2767,37 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢Java SE¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥ê¥ó¥¯»ý¤Ä\fIcom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¥¯¥é¥¹\fItrees\fRÆâ¤Î\fIObject\fR¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-sourcepath\fR¤ä\fI\-d\fR¤Ê¤É¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Java SEプラットフォーム・パッケージã¸ã®ãƒªãƒ³ã‚¯æŒã¤\fIcom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ã€ãŸã¨ãˆã°ã‚¯ãƒ©ã‚¹\fItrees\fR内ã®\fIObject\fRクラスã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fI\-sourcepath\fRã‚„\fI\-d\fRãªã©ã®ä»–ã®ã‚ªãƒ—ションã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
-\fBExample 2\fR, ³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂÐ¥ê¥ó¥¯
-.RS 4
-¤³¤ÎÎã¤Ç¤Ï¡¢2¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ê¡¢¤½¤Î¥É¥­¥å¥á¥ó¥È¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤òÊ£¿ô²ó¼Â¹Ô¤·¤¿·ë²ÌÀ¸À®¤µ¤ì¤¿¤â¤Î¤Ç¤¹¡£¤µ¤é¤Ë¡¢¤³¤ì¤é¤Î¥É¥­¥å¥á¥ó¥È¤ÏÁêÂХѥ¹¤Çʬ³ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢API¤Ç¤¢¤ë\fIcom\&.apipackage\fR¤È¡¢SPI(¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹)¤Ç¤¢¤ëc\fIom\&.spipackage\fR¤Ç¤¹¡£¥É¥­¥å¥á¥ó¥È¤Î³ÊǼÀè¤Ï¡¢docs/api/com/apipackage¤Èdocs/spi/com/spipackage¤Ç¤¹¡£API¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤Ï¤¹¤Ç¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Æ¡¢docs¤¬¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ë¾ì¹ç¡¢API¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤ò»ý¤ÄSPI¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fIjavadoc \-d \&./spi \-link \&.\&./api com\&.spipackage\fR
-.sp
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢°¸Àè¥Ç¥£¥ì¥¯¥È¥ê(docs/spi)¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£
-.RE
-Ãí°Õ.PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¡¼¥É¤«¤é¤Ï»²¾È¤µ¤ì¤Æ¤¤¤Æ¤â¡¢º£²ó¤Î\fIjavadoc\fR¤Î¼Â¹Ô¤Ç¤Ï¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤Ê¤¤¥¯¥é¥¹¤Ë¥ê¥ó¥¯¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥ê¥ó¥¯¤«¤éÍ­¸ú¤Ê¥Ú¡¼¥¸¤Ë°ÜÆ°¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¡¢¤½¤ì¤é¤ÎHTML¥Ú¡¼¥¸¤¬¤¢¤ë¾ì½ê¤òÄ´¤Ù¡¢¤½¤Î¾ì½ê¤ò\fIextdocURL\fR¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤¬java\&.*¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó(http://docs\&.oracle\&.com)¤Ø¥ê¥ó¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¡¢¸½ºß¤Î¼Â¹Ô¤ÇÀ¸À®¤·¤Æ¤¤¤ë¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤ÎAPI¤Ø¤Î¥ê¥ó¥¯¤Î¤ß¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤·¤Þ¤¹¡£\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï³°Éô»²¾È¤Î¤¿¤á¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤»¤ó¡£¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¤¬Â¸ºß¤¹¤ë¤Î¤«¤É¤¦¤«¡¢¤Þ¤¿¤Ï¤É¤³¤Ë¸ºß¤¹¤ë¤Î¤«¤¬¤ï¤«¤é¤Ê¤¤¤«¤é¤Ç¤¹¡£\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢À¸À®¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥óÆâ¤ÎÊ£¿ô¤Î¾ì½ê¤Ë¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤â¤¦1¤Ä¤ÎÍÑÅӤϡ¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤Î´Ö¤Ë¥¯¥í¥¹¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤³¤È¤Ç¤¹¡£°ìÊý¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢Â¾Êý¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥»¥Ã¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆÅټ¹Ԥ¹¤ë¤È¡¢Î¾¥»¥Ã¥È´Ö¤ËÁÐÊý¸þ¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
-¥¯¥é¥¹¤Î»²¾ÈÊýË¡.PP
-ɽ¼¨¤µ¤ì¤ë³°Éô»²¾È¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤Î¾ì¹ç(¤ª¤è¤Ó¤½¤Î¥Æ¥­¥¹¥È¡¦¥é¥Ù¥ë¤À¤±¤Ç¤Ï¤Ê¤¯)¡¢¥¯¥é¥¹¤Ï¼¡¤ÎÊýË¡¤Ç»²¾È¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥á¥½¥Ã¥É¤ÎËÜÂΤǥ¯¥é¥¹¤ò»²¾È¤¹¤ë¤Î¤ß¤Ç¤Ï½½Ê¬¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fIimport\fRʸ¡¢Àë¸À¤Î¤¤¤º¤ì¤«¤Ç»²¾È¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤Ë¡¢¥¯¥é¥¹\fIjava\&.io\&.File\fR¤ò»²¾È¤¹¤ëÊýË¡¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fBExample 2\fR, 外部ドキュメントã¸ã®ç›¸å¯¾ãƒªãƒ³ã‚¯
+.RS 4
+ã“ã®ä¾‹ã§ã¯ã€2ã¤ã®ãƒ‘ッケージãŒã‚ã‚Šã€ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯\fIjavadoc\fRコマンドを複数回実行ã—ãŸçµæžœç”Ÿæˆã•ã‚ŒãŸã‚‚ã®ã§ã™ã€‚ã•ã‚‰ã«ã€ã“れらã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ç›¸å¯¾ãƒ‘スã§åˆ†å‰²ã•ã‚Œã¦ã„ã¾ã™ã€‚パッケージã¯ã€APIã§ã‚ã‚‹\fIcom\&.apipackage\fRã¨ã€SPI(サービス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹)ã§ã‚ã‚‹c\fIom\&.spipackage\fRã§ã™ã€‚ドキュメントã®æ ¼ç´å…ˆã¯ã€docs/api/com/apipackageã¨docs/spi/com/spipackageã§ã™ã€‚APIパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã™ã§ã«ç”Ÿæˆã•ã‚Œã¦ã„ã¦ã€docsãŒç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã‚ã‚‹å ´åˆã€APIドキュメントã¸ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤SPIパッケージをドキュメント化ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚\fIjavadoc \-d \&./spi \-link \&.\&./api com\&.spipackage\fR
+.sp
+\fI\-link\fRオプションã¯ã€å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(docs/spi)ã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã§ã™ã€‚
+.RE
+注æ„.PP
+\fI\-link\fRオプションを使用ã™ã‚‹ã¨ã€ã‚³ãƒ¼ãƒ‰ã‹ã‚‰ã¯å‚ç…§ã•ã‚Œã¦ã„ã¦ã‚‚ã€ä»Šå›žã®\fIjavadoc\fRã®å®Ÿè¡Œã§ã¯ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œãªã„クラスã«ãƒªãƒ³ã‚¯ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚リンクã‹ã‚‰æœ‰åŠ¹ãªãƒšãƒ¼ã‚¸ã«ç§»å‹•ã§ãるよã†ã«ã™ã‚‹ã«ã¯ã€ãれらã®HTMLページãŒã‚る場所を調ã¹ã€ãã®å ´æ‰€ã‚’\fIextdocURL\fRã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãŒjava\&.*ドキュメンテーション(http://docs\&.oracle\&.com)ã¸ãƒªãƒ³ã‚¯ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã§ã€ç¾åœ¨ã®å®Ÿè¡Œã§ç”Ÿæˆã—ã¦ã„るドキュメンテーション内ã®APIã¸ã®ãƒªãƒ³ã‚¯ã®ã¿ã‚’作æˆã™ã‚‹å ´åˆã«ã¯ã€\fI\-link\fRオプションをçœç•¥ã—ã¾ã™ã€‚\fI\-link\fRオプションを指定ã—ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯å¤–部å‚ç…§ã®ãŸã‚ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã›ã‚“。ドキュメンテーションãŒå­˜åœ¨ã™ã‚‹ã®ã‹ã©ã†ã‹ã€ã¾ãŸã¯ã©ã“ã«å­˜åœ¨ã™ã‚‹ã®ã‹ãŒã‚ã‹ã‚‰ãªã„ã‹ã‚‰ã§ã™ã€‚\fI\-link\fRオプションã§ã¯ã€ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³å†…ã®è¤‡æ•°ã®å ´æ‰€ã«ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。もã†1ã¤ã®ç”¨é€”ã¯ã€ãƒ‘ッケージ・セットã®é–“ã«ã‚¯ãƒ­ã‚¹ãƒªãƒ³ã‚¯ã‚’作æˆã™ã‚‹ã“ã¨ã§ã™ã€‚一方ã®ãƒ‘ッケージ・セットã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã—ãŸå¾Œã€ä»–æ–¹ã®ãƒ‘ッケージ・セットã«å¯¾ã—ã¦\fIjavadoc\fRコマンドをå†åº¦å®Ÿè¡Œã™ã‚‹ã¨ã€ä¸¡ã‚»ãƒƒãƒˆé–“ã«åŒæ–¹å‘ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚
+クラスã®å‚照方法.PP
+表示ã•ã‚Œã‚‹å¤–部å‚照クラスã¸ã®ãƒªãƒ³ã‚¯ã®å ´åˆ(ãŠã‚ˆã³ãã®ãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ©ãƒ™ãƒ«ã ã‘ã§ã¯ãªã)ã€ã‚¯ãƒ©ã‚¹ã¯æ¬¡ã®æ–¹æ³•ã§å‚ç…§ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚メソッドã®æœ¬ä½“ã§ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã™ã‚‹ã®ã¿ã§ã¯å分ã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fIimport\fRæ–‡ã€å®£è¨€ã®ã„ãšã‚Œã‹ã§å‚ç…§ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã«ã€ã‚¯ãƒ©ã‚¹\fIjava\&.io\&.File\fRã‚’å‚ç…§ã™ã‚‹æ–¹æ³•ã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥¿¥¤¥×¤Îimportʸ¤Î¾ì¹ç¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ë¤è¤ë¥¤¥ó¥Ý¡¼¥È¡¢Ì¾Á°¤Ë¤è¤ëÌÀ¼¨Åª¤Ê¥¤¥ó¥Ý¡¼¥È¡¢¤Þ¤¿¤Ï\fIjava\&.lang\&.*\fR¤ËÂФ¹¤ë¼«Æ°¥¤¥ó¥Ý¡¼¥È¡£
+ã™ã¹ã¦ã®ã‚¿ã‚¤ãƒ—ã®importæ–‡ã®å ´åˆã€‚ワイルドカードã«ã‚ˆã‚‹ã‚¤ãƒ³ãƒãƒ¼ãƒˆã€åå‰ã«ã‚ˆã‚‹æ˜Žç¤ºçš„ãªã‚¤ãƒ³ãƒãƒ¼ãƒˆã€ã¾ãŸã¯\fIjava\&.lang\&.*\fRã«å¯¾ã™ã‚‹è‡ªå‹•ã‚¤ãƒ³ãƒãƒ¼ãƒˆã€‚
 .PP
-Java SE 1\&.3\&.\fIn\fR¤ª¤è¤Ó1\&.2\&.\fIn\fR¤Ç¤Ï¡¢Ì¾Á°¤Ë¤è¤ëÌÀ¼¨Åª¤Ê¥¤¥ó¥Ý¡¼¥È¤Î¤ßµ¡Ç½¤·¤Þ¤¹¡£¥ï¥¤¥ë¥É¥«¡¼¥É¤Ë¤è¤ë\fIimport\fRʸ¤â¡¢\fIimport java\&.lang\&.*\fR¤Î¼«Æ°¥¤¥ó¥Ý¡¼¥È¤âµ¡Ç½¤·¤Þ¤»¤ó¡£
+Java SE 1\&.3\&.\fIn\fRãŠã‚ˆã³1\&.2\&.\fIn\fRã§ã¯ã€åå‰ã«ã‚ˆã‚‹æ˜Žç¤ºçš„ãªã‚¤ãƒ³ãƒãƒ¼ãƒˆã®ã¿æ©Ÿèƒ½ã—ã¾ã™ã€‚ワイルドカードã«ã‚ˆã‚‹\fIimport\fR文もã€\fIimport java\&.lang\&.*\fRã®è‡ªå‹•ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚‚機能ã—ã¾ã›ã‚“。
 .PP
-Àë¸À¤Î¾ì¹ç:
+宣言ã®å ´åˆ:
 \fIvoid mymethod(File f) {}\fR
 .PP
-»²¾È¤Ï¡¢¥á¥½¥Ã¥É¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥Õ¥£¡¼¥ë¥É¡¢¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÌá¤ê·¿¤Þ¤¿¤Ï¥Ñ¥é¥á¡¼¥¿¡¦¥¿¥¤¥×¡¢¤¢¤ë¤¤¤Ï¼ÂÁõ¡¢³ÈÄ¥¤Þ¤¿¤Ï¥¹¥í¡¼Ê¸¤Ë¤¢¤ê¤Þ¤¹¡£
+å‚ç…§ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®æˆ»ã‚Šåž‹ã¾ãŸã¯ãƒ‘ラメータ・タイプã€ã‚ã‚‹ã„ã¯å®Ÿè£…ã€æ‹¡å¼µã¾ãŸã¯ã‚¹ãƒ­ãƒ¼æ–‡ã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-½ÅÍפʷë²Ì¤È¤·¤Æ¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤â¡¢¤³¤ÎÀ©¸Â¤Î¤¿¤á¤Ë¸í¤Ã¤Æɽ¼¨¤µ¤ì¤Ê¤¤¥ê¥ó¥¯¤¬Â¿¿ôȯÀ¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¥Æ¥­¥¹¥È¤Ï¥Ï¥¤¥Ñ¡¼¥Æ¥­¥¹¥È¡¦¥ê¥ó¥¯¤¬ÉÕ¤±¤é¤ì¤º¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¥ê¥ó¥¯¤¬É½¼¨¤¹¤ë·Ù¹ð¤«¤é¡¢¤³¤ì¤é¤Î¥ê¥ó¥¯¤òǧ¼±¤Ç¤­¤Þ¤¹¡£¥¯¥é¥¹¤òÀµ¤·¤¯»²¾È¤·¡¢¤½¤ì¤Ë¤è¤Ã¤Æ¥ê¥ó¥¯¤òÄɲ乤뤿¤á¤ÎºÇ¤â´Êñ¤ÊÊýË¡¤Ï¤½¤Î¥¯¥é¥¹¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤Ç¤¹¡£
-¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È.PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ëpackage\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Ë»ØÄꤷ¤¿URL¤Ë¸ºß¤·¤Æ¤¤¤ë¤³¤È¤¬É¬ÍפǤ¹¡£package\-list¥Õ¥¡¥¤¥ë¤Ï¡¢¤½¤Î¾ì½ê¤Ë¤¢¤ë¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤Î¥ê¥¹¥È¤¬Æþ¤Ã¤¿Ã±½ã¤Ê¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£Á°½Ò¤ÎÎã¤Ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤷ¤¿URL¤Çpackage\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÆɤ߼è¤Ã¤Æ¡¢¤½¤ÎURL¤Ç¤³¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤·¤Þ¤¹¡£
+é‡è¦ãªçµæžœã¨ã—ã¦ã€\fI\-link\fRオプションを使用ã—ã¦ã‚‚ã€ã“ã®åˆ¶é™ã®ãŸã‚ã«èª¤ã£ã¦è¡¨ç¤ºã•ã‚Œãªã„リンクãŒå¤šæ•°ç™ºç”Ÿã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚テキストã¯ãƒã‚¤ãƒ‘ーテキスト・リンクãŒä»˜ã‘られãšã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚リンクãŒè¡¨ç¤ºã™ã‚‹è­¦å‘Šã‹ã‚‰ã€ã“れらã®ãƒªãƒ³ã‚¯ã‚’èªè­˜ã§ãã¾ã™ã€‚クラスを正ã—ãå‚ç…§ã—ã€ãã‚Œã«ã‚ˆã£ã¦ãƒªãƒ³ã‚¯ã‚’追加ã™ã‚‹ãŸã‚ã®æœ€ã‚‚ç°¡å˜ãªæ–¹æ³•ã¯ãã®ã‚¯ãƒ©ã‚¹ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã§ã™ã€‚
+パッケージ・リスト.PP
+\fI\-link\fRオプションã«ã¯ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€\fI\-link\fRオプションã«æŒ‡å®šã—ãŸURLã«å­˜åœ¨ã—ã¦ã„ã‚‹ã“ã¨ãŒå¿…è¦ã§ã™ã€‚package\-listファイルã¯ã€ãã®å ´æ‰€ã«ã‚るドキュメント化ã•ã‚ŒãŸãƒ‘ッケージã®åå‰ã®ãƒªã‚¹ãƒˆãŒå…¥ã£ãŸå˜ç´”ãªãƒ†ã‚­ã‚¹ãƒˆãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚å‰è¿°ã®ä¾‹ã§ã¯ã€\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã—ãŸURLã§package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã€ãƒ‘ッケージåを読ã¿å–ã£ã¦ã€ãã®URLã§ã“れらã®ãƒ‘ッケージã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢Java SE API¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ï
-http://docs\&.oracle\&.com/javase/8/docs/api/package\-list¤Ë¤¢¤ê¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€Java SE APIã®ãƒ‘ッケージ・リストã¯
+http://docs\&.oracle\&.com/javase/8/docs/api/package\-listã«ã‚ã‚Šã¾ã™ã€‚
 .PP
-¤³¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤Ï¼¡¤Î¤è¤¦¤ÊÆâÍƤǻϤޤäƤ¤¤Þ¤¹¡£
+ã“ã®ãƒ‘ッケージ・リストã¯æ¬¡ã®ã‚ˆã†ãªå†…容ã§å§‹ã¾ã£ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2816,20 +2816,20 @@
 .RE
 .\}
 .PP
-\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fIjavadoc\fR¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢³°Éô»²¾È¥¯¥é¥¹¤Ë°¤¹¤ë̾Á°¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î̾Á°¤ò¥ê¥ó¥¯¤Ê¤·¤Ç½ÐÎϤ·¤Þ¤¹¡£°ìÊý¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿\fIextdocURL\fR¤Î¾ì½ê¤Ë¤¢¤ëpackage\-list¥Õ¥¡¥¤¥ë¤Ç¤½¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¸¡º÷¤·¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬¸«¤Ä¤«¤ë¤È¡¢\fIextdocURL\fR¤¬Ì¾Á°¤ÎÁ°¤ËÉղ䵤ì¤Þ¤¹¡£
+\fI\-link\fRオプションを指定ã›ãšã«\fIjavadoc\fRを実行ã—ãŸå ´åˆã€å¤–部å‚照クラスã«å±žã™ã‚‹åå‰ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®åå‰ã‚’リンクãªã—ã§å‡ºåŠ›ã—ã¾ã™ã€‚一方ã€\fI\-link\fRオプションを指定ã—ãŸå ´åˆã€\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸ\fIextdocURL\fRã®å ´æ‰€ã«ã‚ã‚‹package\-listファイルã§ãã®ãƒ‘ッケージåを検索ã—ã¾ã™ã€‚パッケージåãŒè¦‹ã¤ã‹ã‚‹ã¨ã€\fIextdocURL\fRãŒåå‰ã®å‰ã«ä»˜åŠ ã•ã‚Œã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥ê¥ó¥¯¤¬Àµ¤·¤¯µ¡Ç½¤¹¤ë¤¿¤á¤Ë¤Ï¡¢³°Éô»²¾È¤Î¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È¤¬¡¢»ØÄꤷ¤¿URL¤Ë¸ºß¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿package\-list¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¤Î¤ß¤ò¥Á¥§¥Ã¥¯¤·¡¢¤³¤ì¤é¤Î¥Ú¡¼¥¸¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¤Ï¥Á¥§¥Ã¥¯¤·¤Þ¤»¤ó¡£
-Ê£¿ô¤Î¥ê¥ó¥¯.PP
-Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢Ç¤°Õ¤Î¿ô¤Î³°ÉôÀ¸À®¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤Ç¤­¤Þ¤¹¡£Javadoc 1\&.2¤Ë¤Ï¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Ê¤¤¤È¤¤¤¦´ûÃΤÎÉÔ¶ñ¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ÏJavadoc 1\&.2\&.2¤Ç½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£¥ê¥ó¥¯¤¹¤ë³°Éô¥É¥­¥å¥á¥ó¥È¤´¤È¤Ë¡¢¼¡¤Î¤è¤¦¤ËÊÌ¡¹¤Î¥ê¥ó¥¯¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fIjavadoc \-link extdocURL1 \-link extdocURL2 \&.\&.\&. \-link extdocURLn com\&.mypackage\fR
-\fIextdocURL1\fR¡¢\fIextdocURL2\fR¡¢\&.\fI\&.\&. extdocURLn\fR¤Ï¡¢¤½¤ì¤¾¤ì³°Éô¥É¥­¥å¥á¥ó¥È¤Î¥ë¡¼¥È¤ò»Ø¤·¡¢³Æ¥ë¡¼¥È¤Ë¤Ï¡¢package\-list¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬Æþ¤Ã¤Æ¤¤¤Þ¤¹¡£
-¥¯¥í¥¹¥ê¥ó¥¯.PP
-°ÊÁ°¤ËºîÀ®¤µ¤ì¤¿Ê£¿ô¤Î¥É¥­¥å¥á¥ó¥È¤ò¥¯¥í¥¹¥ê¥ó¥¯¤¹¤ë¾ì¹ç¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¤¬É¬Íפˤʤ뤳¤È¤¬¤¢¤ê¤Þ¤¹¡£¤É¤Î¥É¥­¥å¥á¥ó¥È¤Ë¤Ä¤¤¤Æ¤âpackage\-list¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥È¤ËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë»þÅÀ¤Ç¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤Îpackage\-list¤Ï¤Þ¤À¸ºß¤·¤Æ¤¤¤Þ¤»¤ó¡£¤·¤¿¤¬¤Ã¤Æ¡¢³°Éô¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤òÀ¸À®¤·¤¿¸å¤Ç¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Ê¤ª¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®ãƒªãƒ³ã‚¯ãŒæ­£ã—ã機能ã™ã‚‹ãŸã‚ã«ã¯ã€å¤–部å‚ç…§ã®ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒã€æŒ‡å®šã—ãŸURLã«å­˜åœ¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸpackage\-listãŒå­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã®ã¿ã‚’ãƒã‚§ãƒƒã‚¯ã—ã€ã“れらã®ãƒšãƒ¼ã‚¸ãŒå­˜åœ¨ã™ã‚‹ã‹ã©ã†ã‹ã¯ãƒã‚§ãƒƒã‚¯ã—ã¾ã›ã‚“。
+複数ã®ãƒªãƒ³ã‚¯.PP
+複数ã®\fI\-link\fRオプションを指定ã™ã‚‹ã¨ã€ä»»æ„ã®æ•°ã®å¤–部生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã§ãã¾ã™ã€‚Javadoc 1\&.2ã«ã¯ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã§ããªã„ã¨ã„ã†æ—¢çŸ¥ã®ä¸å…·åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯Javadoc 1\&.2\&.2ã§ä¿®æ­£ã•ã‚Œã¾ã—ãŸã€‚リンクã™ã‚‹å¤–部ドキュメントã”ã¨ã«ã€æ¬¡ã®ã‚ˆã†ã«åˆ¥ã€…ã®ãƒªãƒ³ã‚¯ãƒ»ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚\fIjavadoc \-link extdocURL1 \-link extdocURL2 \&.\&.\&. \-link extdocURLn com\&.mypackage\fR
+\fIextdocURL1\fRã€\fIextdocURL2\fRã€\&.\fI\&.\&. extdocURLn\fRã¯ã€ãã‚Œãžã‚Œå¤–部ドキュメントã®ãƒ«ãƒ¼ãƒˆã‚’指ã—ã€å„ルートã«ã¯ã€package\-listã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒå…¥ã£ã¦ã„ã¾ã™ã€‚
+クロスリンク.PP
+以å‰ã«ä½œæˆã•ã‚ŒãŸè¤‡æ•°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’クロスリンクã™ã‚‹å ´åˆã€ãƒ–ートストラップãŒå¿…è¦ã«ãªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ã©ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¤ã„ã¦ã‚‚package\-listãŒå­˜åœ¨ã—ã¦ã„ãªã„å ´åˆã¯ã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã™ã‚‹æ™‚点ã§ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®package\-listã¯ã¾ã å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“。ã—ãŸãŒã£ã¦ã€å¤–部リンクを作æˆã™ã‚‹ã«ã¯ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãŸå¾Œã§ã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãªãŠã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤³¤Î¾ì¹ç¡¢ºÇ½é¤Î¥É¥­¥å¥á¥ó¥ÈÀ¸À®¤ÎÌÜŪ¤Ï¡¢package\-list¤òºîÀ®¤¹¤ë¤³¤È¤Ç¤¹(¥Ñ¥Ã¥±¡¼¥¸Ì¾¤òÇÄ°®¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¼êÆ°¤ÇºîÀ®¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó)¡£¼¡¤Ë¡¢2ÈÖÌܤΥɥ­¥å¥á¥ó¥È¤È¤½¤Î³°Éô¥ê¥ó¥¯¤òÀ¸À®¤·¤Þ¤¹¡£É¬Íפʳ°Éô¤Îpackage\-list¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤«¤é·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ã“ã®å ´åˆã€æœ€åˆã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”Ÿæˆã®ç›®çš„ã¯ã€package\-listを作æˆã™ã‚‹ã“ã¨ã§ã™(パッケージåを把æ¡ã—ã¦ã„ã‚‹å ´åˆã¯æ‰‹å‹•ã§ä½œæˆã—ã¦ã‚‚ã‹ã¾ã„ã¾ã›ã‚“)。次ã«ã€2番目ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¨ãã®å¤–部リンクを生æˆã—ã¾ã™ã€‚å¿…è¦ãªå¤–部ã®package\-listファイルãŒå­˜åœ¨ã—ãªã„å ´åˆã¯ã€\fIjavadoc\fRコマンドã‹ã‚‰è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
 \-linkoffline \fIextdocURL packagelistLoc\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Î¥Ð¥ê¥¨¡¼¥·¥ç¥ó¤Ç¤¹¡£Î¾Êý¤È¤â¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô»²¾È¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯¤òºîÀ®¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬WebÀܳ¤ò»ÈÍѤ·¤Æ¥É¥­¥å¥á¥ó¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤È¤­¡¢Web¾å¤Î¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢\fI\-link\fRo\fIffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£³°Éô¥É¥­¥å¥á¥ó¥È¤Îpackage\-list¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤È¤­¡¢¤Þ¤¿¤Ï¤³¤Î¥Õ¥¡¥¤¥ë¤¬\fIextdocURL\fR¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Ë¤Ï¸ºß¤»¤º¡¢\fIpackageListLoc\fR¤Ç»ØÄê¤Ç¤­¤ëÊ̤ξì½ê(Ä̾ï¥í¡¼¥«¥ë)¤Ë¸ºß¤¹¤ë¤È¤­¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fIextdocURL\fR¤ËWorld Wide Web¾å¤Ç¤·¤«¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¡¢¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®»þ¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Web¤ËÀܳ¤¹¤ëɬÍפ¬¤¢¤ë¤È¤¤¤¦À©Ì󤬤ʤ¯¤Ê¤ê¤Þ¤¹¡£¤â¤¦1¤Ä¤ÎÍÑÅӤϡ¢¥É¥­¥å¥á¥ó¥È¤ò¹¹¿·¤¹¤ë¤¿¤á¤Î²óÈòºö¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ç¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¥»¥Ã¥ÈÁ´ÂΤËÂФ·¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¸å¡¢Êѹ¹¤·¤¿°ìÉô¤Î¥Ñ¥Ã¥±¡¼¥¸¤ËÂФ·¤Æ¤Î¤ß\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆÅټ¹Ԥ·¤Æ¡¢¹¹¿·¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢¥ª¥ê¥¸¥Ê¥ë¤Î¥»¥Ã¥È¤ËÁÞÆþ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Ï°ú¿ô¤ò2¤Ä¼è¤ê¤Þ¤¹¡£Âè1°ú¿ô¤Ï\fI<a href>\fR¥ê¥ó¥¯¤ËÁȤ߹þ¤Þ¤ì¤ëʸ»úÎó¤ò»ØÄꤷ¡¢Âè2°ú¿ô¤Ïpackage\-list¤Î¸¡º÷¾ì½ê¤ò\fI\-linkoffline\fR¤ËÅÁ¤¨¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯\fI\-link\fRオプションã®ãƒãƒªã‚¨ãƒ¼ã‚·ãƒ§ãƒ³ã§ã™ã€‚両方ã¨ã‚‚ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部å‚照クラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ãƒªãƒ³ã‚¯ã‚’作æˆã—ã¾ã™ã€‚\fIjavadoc\fRコマンドãŒWeb接続を使用ã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã¨ãã€Web上ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ãƒªãƒ³ã‚¯ã™ã‚‹ã«ã¯ã€\fI\-link\fRo\fIffline\fRオプションを使用ã—ã¾ã™ã€‚外部ドキュメントã®package\-listファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã¨ãã€ã¾ãŸã¯ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒ\fIextdocURL\fRã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã«ã¯å­˜åœ¨ã›ãšã€\fIpackageListLoc\fRã§æŒ‡å®šã§ãる別ã®å ´æ‰€(通常ローカル)ã«å­˜åœ¨ã™ã‚‹ã¨ãã€\fI\-linkoffline\fRオプションを使用ã—ã¾ã™ã€‚\fIextdocURL\fRã«World Wide Web上ã§ã—ã‹ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„å ´åˆã¯ã€\fI\-linkoffline\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆæ™‚ã«\fIjavadoc\fRコマンドãŒWebã«æŽ¥ç¶šã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã¨ã„ã†åˆ¶ç´„ãŒãªããªã‚Šã¾ã™ã€‚ã‚‚ã†1ã¤ã®ç”¨é€”ã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’æ›´æ–°ã™ã‚‹ãŸã‚ã®å›žé¿ç­–ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã§ã™ã€‚パッケージã®ã‚»ãƒƒãƒˆå…¨ä½“ã«å¯¾ã—ã¦\fIjavadoc\fRコマンドを実行ã—ãŸå¾Œã€å¤‰æ›´ã—ãŸä¸€éƒ¨ã®ãƒ‘ッケージã«å¯¾ã—ã¦ã®ã¿\fIjavadoc\fRコマンドをå†åº¦å®Ÿè¡Œã—ã¦ã€æ›´æ–°ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ã‚ªãƒªã‚¸ãƒŠãƒ«ã®ã‚»ãƒƒãƒˆã«æŒ¿å…¥ã§ãるよã†ã«ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-linkoffline\fRオプションã¯å¼•æ•°ã‚’2ã¤å–ã‚Šã¾ã™ã€‚第1引数ã¯\fI<a href>\fRリンクã«çµ„ã¿è¾¼ã¾ã‚Œã‚‹æ–‡å­—列を指定ã—ã€ç¬¬2引数ã¯package\-listã®æ¤œç´¢å ´æ‰€ã‚’\fI\-linkoffline\fRã«ä¼ãˆã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2839,7 +2839,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIextdocURL\fR¤ÎÃͤϡ¢¥ê¥ó¥¯Àè¤È¤·¤Æ»ØÄꤹ¤ë¡¢Javadoc¤Ë¤è¤êÀ¸À®¤µ¤ì¤¿³°Éô¥É¥­¥å¥á¥ó¥È¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀäÂÐURL¤Þ¤¿¤ÏÁêÂÐURL¤Ç¤¹¡£ÁêÂÐURL¤Î¾ì¹ç¡¢Ãͤϡ¢À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê(\fI\-d\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄê)¤«¤é¥ê¥ó¥¯Àè¤È¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¤Ø¤ÎÁêÂХѥ¹¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤Î\fIextdocURL\fR¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIextdocURL\fRã®å€¤ã¯ã€ãƒªãƒ³ã‚¯å…ˆã¨ã—ã¦æŒ‡å®šã™ã‚‹ã€Javadocã«ã‚ˆã‚Šç”Ÿæˆã•ã‚ŒãŸå¤–部ドキュメントをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®çµ¶å¯¾URLã¾ãŸã¯ç›¸å¯¾URLã§ã™ã€‚相対URLã®å ´åˆã€å€¤ã¯ã€ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\fI\-d\fRオプションã§æŒ‡å®š)ã‹ã‚‰ãƒªãƒ³ã‚¯å…ˆã¨ãªã‚‹ãƒ‘ッケージã®ãƒ«ãƒ¼ãƒˆã¸ã®ç›¸å¯¾ãƒ‘スã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚詳細ã¯ã€\fI\-link\fRオプションã®\fIextdocURL\fRã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -2850,16 +2850,16 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackagelistLoc\fR¤ÎÃͤϡ¢³°Éô¥É¥­¥å¥á¥ó¥È¤Îpackage\-list¥Õ¥¡¥¤¥ë¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Î¥Ñ¥¹¤Þ¤¿¤ÏURL¤Ç¤¹¡£¤³¤ì¤Ï¡¢URL (http:¤Þ¤¿¤Ïfile:)¤Ç¤â¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢ÀäÂХѥ¹¤ÈÁêÂХѥ¹¤Î¤É¤Á¤é¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£ÁêÂХѥ¹¤Î¾ì¹ç¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ë¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤È¤·¤Æ»ØÄꤷ¤Þ¤¹¡£package\-list¥Õ¥¡¥¤¥ë̾¤ò´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
-.sp
-»ØÄꤷ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Ç¡¢Ê£¿ô¤Î\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Javadoc 1\&.2\&.2¤è¤êÁ°¤Ç¤Ï¡¢\fI\-linkfile\fR¥ª¥×¥·¥ç¥ó¤Ï1²ó¤·¤«»ØÄê¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£
-.RE
-.RE
-³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÀäÂÐ¥ê¥ó¥¯.PP
-http://docs\&.oracle\&.com/javase/8/docs/api/index\&.html¤Ë¼¨¤¹¤è¤¦¤Ê¡¢\fIjava\&.lang\fR¡¢
-\fIjava\&.io\fR¤ª¤è¤Ó¤½¤Î¾¤ÎJava SE¥Ñ¥Ã¥±¡¼¥¸¤Ë¥ê¥ó¥¯¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+\fIpackagelistLoc\fRã®å€¤ã¯ã€å¤–部ドキュメントã®package\-listファイルをå«ã‚€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ãƒ‘スã¾ãŸã¯URLã§ã™ã€‚ã“ã‚Œã¯ã€URL (http:ã¾ãŸã¯file:)ã§ã‚‚ファイル・パスã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。ã¾ãŸã€çµ¶å¯¾ãƒ‘スã¨ç›¸å¯¾ãƒ‘スã®ã©ã¡ã‚‰ã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。相対パスã®å ´åˆã¯ã€\fIjavadoc\fRコマンドãŒå®Ÿè¡Œã•ã‚Œã‚‹ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘スã¨ã—ã¦æŒ‡å®šã—ã¾ã™ã€‚package\-listファイルåã‚’å«ã‚ãªã„ã§ãã ã•ã„。
+.sp
+指定ã—ãŸ\fIjavadoc\fRコマンドã®å®Ÿè¡Œã§ã€è¤‡æ•°ã®\fI\-link\fRオプションを指定ã§ãã¾ã™ã€‚Javadoc 1\&.2\&.2よりå‰ã§ã¯ã€\fI\-linkfile\fRオプションã¯1回ã—ã‹æŒ‡å®šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
+.RE
+.RE
+外部ドキュメントã¸ã®çµ¶å¯¾ãƒªãƒ³ã‚¯.PP
+http://docs\&.oracle\&.com/javase/8/docs/api/index\&.htmlã«ç¤ºã™ã‚ˆã†ãªã€\fIjava\&.lang\fRã€
+\fIjava\&.io\fRãŠã‚ˆã³ãã®ä»–ã®Java SEパッケージã«ãƒªãƒ³ã‚¯ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤¿¤À¤·¡¢¥·¥§¥ë¤Ë¤ÏWeb¥¢¥¯¥»¥¹¸¢¤¬¤¢¤ê¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+ãŸã ã—ã€ã‚·ã‚§ãƒ«ã«ã¯Webアクセス権ãŒã‚ã‚Šã¾ã›ã‚“。ã“ã®å ´åˆã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2869,7 +2869,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-¥Ö¥é¥¦¥¶¤Çpackage\-list¥Õ¥¡¥¤¥ë¤ò³«¤­¤Þ¤¹(http://docs\&.oracle\&.com/javase/8/docs/api/package\-list)
+ブラウザã§package\-listファイルを開ãã¾ã™(http://docs\&.oracle\&.com/javase/8/docs/api/package\-list)
 .RE
 .sp
 .RS 4
@@ -2880,10 +2880,10 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥«¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊݸ¤·¡¢¤³¤Î¥í¡¼¥«¥ë¡¦¥³¥Ô¡¼¤òÂè2°ú¿ô\fIpackagelistLoc\fR¤Ç»ØÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ï¥«¥ì¥ó¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê(\&.)¤ËÊݸ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ファイルをローカル・ディレクトリã«ä¿å­˜ã—ã€ã“ã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚³ãƒ”ーを第2引数\fIpackagelistLoc\fRã§æŒ‡å®šã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‘ッケージ・リスト・ファイルã¯ã‚«ãƒ¬ãƒ³ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\&.)ã«ä¿å­˜ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Java SE¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥ê¥ó¥¯¤ò»ý¤Äc\fIom\&.mypackage\fR¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¥É¥­¥å¥á¥ó¥È¤Ë¤Ï¡¢¤¿¤È¤¨¤Ð¥¯¥é¥¹\fItrees\fRÆâ¤Î\fIObject\fR¥¯¥é¥¹¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fI\-sourcepath\fR¤Ê¤É¡¢Â¾¤ÎɬÍפʥª¥×¥·¥ç¥ó¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€Java SEプラットフォーム・パッケージã¸ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤c\fIom\&.mypackage\fRパッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ã¾ã™ã€‚生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯ã€ãŸã¨ãˆã°ã‚¯ãƒ©ã‚¹\fItrees\fR内ã®\fIObject\fRクラスã¸ã®ãƒªãƒ³ã‚¯ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fI\-sourcepath\fRãªã©ã€ä»–ã®å¿…è¦ãªã‚ªãƒ—ションã¯è¡¨ç¤ºã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -2894,12 +2894,12 @@
 .if n \{\
 .RE
 .\}
-³°Éô¥É¥­¥å¥á¥ó¥È¤Ø¤ÎÁêÂÐ¥ê¥ó¥¯.PP
-\fI\-linkoffline\fR¤òÁêÂХѥ¹¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¤³¤È¤Ï¤¢¤Þ¤ê¤¢¤ê¤Þ¤»¤ó¡£Íýͳ¤Ïñ½ã¤Ç¡¢Ä̾ï¤Ï\fI\-link\fR¤Ç´Ö¤Ë¹ç¤¦¤«¤é¤Ç¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢Ä̾package\-list¥Õ¥¡¥¤¥ë¤Ï¥í¡¼¥«¥ë¤Ç¡¢ÁêÂÐ¥ê¥ó¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¥ê¥ó¥¯Àè¤Î¥Õ¥¡¥¤¥ë¤â¥í¡¼¥«¥ë¤Ê¤Î¤Ç¡¢Ä̾ï¤Ï\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤Î2¤Ä¤Î°ú¿ô¤Ë¡¢°Û¤Ê¤ë¥Ñ¥¹¤ò»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£2¤Ä¤Î°ú¿ô¤¬Æ±°ì¤Î¾ì¹ç¡¢\fI\-link\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£
-package\-list¥Õ¥¡¥¤¥ë¤Î¼êÆ°¤Ç¤ÎºîÀ®.PP
-package\-list¥Õ¥¡¥¤¥ë¤¬¤Þ¤À¸ºß¤·¤Ê¤¯¤Æ¤â¡¢¥É¥­¥å¥á¥ó¥È¤Î¥ê¥ó¥¯Àè¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼¤ò¼êÆ°¤ÇºîÀ®¤·¡¢\fIpackagelistLoc\fR¤Ç¤½¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIcom\&.apipackage\fR¤¬ºÇ½é¤ËÀ¸À®¤µ¤ì¤¿»þÅÀ¤Ç\fIcom\&.spipackage\fR¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ê¥¹¥È¤¬Â¸ºß¤·¤Ê¤¤¤È¤¤¤¦Á°½Ð¤Î¥±¡¼¥¹¤¬°ìÎã¤È¤·¤Æµó¤²¤é¤ì¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¤ï¤«¤Ã¤Æ¤¤¤ë¤â¤Î¤Î¡¢¤Þ¤À¸ø³«¤µ¤ì¤Æ¤¤¤Ê¤¤¡¢¿·¤·¤¤³°Éô¥É¥­¥å¥á¥ó¥È¤Ë¥ê¥ó¥¯¤¹¤ë¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¤Þ¤¿¡¢package\-list¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Ê¤¤Javadoc 1\&.0¤Þ¤¿¤Ï1\&.1¤ÇÀ¸À®¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸ÍѤËpackage\-list¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤â¡¢¤³¤ÎÊýË¡¤¬»ÈÍѤǤ­¤Þ¤¹¡£Æ±Íͤˡ¢2¤Ä¤Î´ë¶È¤¬Ì¤¸ø³«¤Îpackage\-list¥Õ¥¡¥¤¥ë¤ò¶¦Í­¤Ç¤­¤ë¤¿¤á¡¢¥¯¥í¥¹¥ê¥ó¥¯¤òÀßÄꤷ¤¿¥É¥­¥å¥á¥ó¥È¤òƱ»þ¤Ë¥ê¥ê¡¼¥¹¤¹¤ë¤³¤È¤â²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
-Ê£¿ô¥É¥­¥å¥á¥ó¥È¤Ø¤Î¥ê¥ó¥¯.PP
-»²¾ÈÀè¤ÎÀ¸À®¥É¥­¥å¥á¥ó¥È¤´¤È¤Ë1²ó¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+外部ドキュメントã¸ã®ç›¸å¯¾ãƒªãƒ³ã‚¯.PP
+\fI\-linkoffline\fRを相対パスã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯ã‚ã¾ã‚Šã‚ã‚Šã¾ã›ã‚“。ç†ç”±ã¯å˜ç´”ã§ã€é€šå¸¸ã¯\fI\-link\fRã§é–“ã«åˆã†ã‹ã‚‰ã§ã™ã€‚\fI\-linkoffline\fRオプションを使用ã™ã‚‹å ´åˆã€é€šå¸¸ã€package\-listファイルã¯ãƒ­ãƒ¼ã‚«ãƒ«ã§ã€ç›¸å¯¾ãƒªãƒ³ã‚¯ã‚’使用ã™ã‚‹å ´åˆã¯ãƒªãƒ³ã‚¯å…ˆã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ローカルãªã®ã§ã€é€šå¸¸ã¯\fI\-linkoffline\fRオプションã®2ã¤ã®å¼•æ•°ã«ã€ç•°ãªã‚‹ãƒ‘スを指定ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。2ã¤ã®å¼•æ•°ãŒåŒä¸€ã®å ´åˆã€\fI\-link\fRオプションを使用ã§ãã¾ã™ã€‚
+package\-listファイルã®æ‰‹å‹•ã§ã®ä½œæˆ.PP
+package\-listファイルãŒã¾ã å­˜åœ¨ã—ãªãã¦ã‚‚ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ãƒªãƒ³ã‚¯å…ˆã®ãƒ‘ッケージåãŒã‚ã‹ã£ã¦ã„ã‚‹å ´åˆã¯ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚³ãƒ”ーを手動ã§ä½œæˆã—ã€\fIpackagelistLoc\fRã§ãã®ãƒ‘スを指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIcom\&.apipackage\fRãŒæœ€åˆã«ç”Ÿæˆã•ã‚ŒãŸæ™‚点ã§\fIcom\&.spipackage\fRã®ãƒ‘ッケージ・リストãŒå­˜åœ¨ã—ãªã„ã¨ã„ã†å‰å‡ºã®ã‚±ãƒ¼ã‚¹ãŒä¸€ä¾‹ã¨ã—ã¦æŒ™ã’られã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ãƒ‘ッケージåã¯ã‚ã‹ã£ã¦ã„ã‚‹ã‚‚ã®ã®ã€ã¾ã å…¬é–‹ã•ã‚Œã¦ã„ãªã„ã€æ–°ã—ã„外部ドキュメントã«ãƒªãƒ³ã‚¯ã™ã‚‹ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚ã¾ãŸã€package\-listファイルãŒç”Ÿæˆã•ã‚Œãªã„Javadoc 1\&.0ã¾ãŸã¯1\&.1ã§ç”Ÿæˆã•ã‚ŒãŸãƒ‘ッケージ用ã«package\-listファイルを作æˆã™ã‚‹å ´åˆã«ã‚‚ã€ã“ã®æ–¹æ³•ãŒä½¿ç”¨ã§ãã¾ã™ã€‚åŒæ§˜ã«ã€2ã¤ã®ä¼æ¥­ãŒæœªå…¬é–‹ã®package\-listファイルを共有ã§ãã‚‹ãŸã‚ã€ã‚¯ãƒ­ã‚¹ãƒªãƒ³ã‚¯ã‚’設定ã—ãŸãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’åŒæ™‚ã«ãƒªãƒªãƒ¼ã‚¹ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
+複数ドキュメントã¸ã®ãƒªãƒ³ã‚¯.PP
+å‚照先ã®ç”Ÿæˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã”ã¨ã«1回ã€\fI\-linkoffline\fRオプションをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2911,10 +2911,10 @@
 .if n \{\
 .RE
 .\}
-¥É¥­¥å¥á¥ó¥È¤Î¹¹¿·.PP
-¥×¥í¥¸¥§¥¯¥È¤Ë²¿½½¤Þ¤¿¤Ï²¿É´¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤â¡¢\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Ä¥ê¡¼Á´ÂΤǤ¹¤Ç¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¤³¤È¤¬¤¢¤ë¾ì¹ç¡¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤ï¤º¤«¤ÊÊѹ¹¤ò¿×®¤Ë²Ã¤¨¡¢¥½¡¼¥¹¡¦¥Ä¥ê¡¼¤Î°ìÉô¤Ç\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºÆ¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£2²óÌܤμ¹Ԥϡ¢¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤òÊѹ¹¤·¡¢Àë¸À¤ÏÊѹ¹¤·¤Ê¤¤¾ì¹ç¤Ë¤Î¤ßÀµ¤·¤¯½èÍý¤µ¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¥½¡¼¥¹¡¦¥³¡¼¥É¤ËÂФ·¤ÆÀë¸À¤òÄɲᢺï½ü¡¢¤Þ¤¿¤ÏÊѹ¹¤·¤¿¾ì¹ç¤Ï¡¢º÷°ú¡¢¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¡¢·Ñ¾µ¤µ¤ì¤ë¥á¥ó¥Ð¡¼¤Î¥ê¥¹¥È¡¢»ÈÍÑ¥Ú¡¼¥¸¤Ê¤É¤Î¾ì½ê¤Ç¡¢¥ê¥ó¥¯¤¬²õ¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+ドキュメントã®æ›´æ–°.PP
+プロジェクトã«ä½•åã¾ãŸã¯ä½•ç™¾ã®ãƒ‘ッケージãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã‚‚ã€\fI\-linkoffline\fRオプションを使用ã§ãã¾ã™ã€‚ソース・ツリー全体ã§ã™ã§ã«\fIjavadoc\fRコマンドを実行ã—ãŸã“ã¨ãŒã‚ã‚‹å ´åˆã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã‚ãšã‹ãªå¤‰æ›´ã‚’迅速ã«åŠ ãˆã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ„リーã®ä¸€éƒ¨ã§\fIjavadoc\fRコマンドをå†å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚2回目ã®å®Ÿè¡Œã¯ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’変更ã—ã€å®£è¨€ã¯å¤‰æ›´ã—ãªã„å ´åˆã«ã®ã¿æ­£ã—ã処ç†ã•ã‚Œã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。ソース・コードã«å¯¾ã—ã¦å®£è¨€ã‚’追加ã€å‰Šé™¤ã€ã¾ãŸã¯å¤‰æ›´ã—ãŸå ´åˆã¯ã€ç´¢å¼•ã€ãƒ‘ッケージ・ツリーã€ç¶™æ‰¿ã•ã‚Œã‚‹ãƒ¡ãƒ³ãƒãƒ¼ã®ãƒªã‚¹ãƒˆã€ä½¿ç”¨ãƒšãƒ¼ã‚¸ãªã©ã®å ´æ‰€ã§ã€ãƒªãƒ³ã‚¯ãŒå£Šã‚Œã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤Þ¤º¡¢¤³¤Î¿·¤·¤¤¾®µ¬ÌϤʼ¹ԤǻÈÍѤ¹¤ë¡¢¿·¤·¤¤À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê(update¤Ê¤É)¤òºîÀ®¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¸µ¤ÎÀ¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤Ïhtml¤Ç¤¹¡£ºÇ¤âñ½ã¤ÊÎã¤Ç¤Ï¡¢html¥Ç¥£¥ì¥¯¥È¥ê¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤Þ¤¹¡£\fI\-linkoffline\fR¥ª¥×¥·¥ç¥ó¤ÎÂè1°ú¿ô¤Ë¥«¥ì¥ó¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê(\&.)¤òÀßÄꤷ¡¢Âè2°ú¿ô¤Ëpackage\-list¤¬¸¡º÷¤µ¤ì¤ëhtml¤Ø¤ÎÁêÂХѥ¹¤òÀßÄꤷ¡¢¹¹¿·¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¤ß¤òÅϤ·¤Þ¤¹¡£
+ã¾ãšã€ã“ã®æ–°ã—ã„å°è¦æ¨¡ãªå®Ÿè¡Œã§ä½¿ç”¨ã™ã‚‹ã€æ–°ã—ã„生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(updateãªã©)を作æˆã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€å…ƒã®ç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ã¯htmlã§ã™ã€‚最もå˜ç´”ãªä¾‹ã§ã¯ã€htmlディレクトリã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã—ã¾ã™ã€‚\fI\-linkoffline\fRオプションã®ç¬¬1引数ã«ã‚«ãƒ¬ãƒ³ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(\&.)を設定ã—ã€ç¬¬2引数ã«package\-listãŒæ¤œç´¢ã•ã‚Œã‚‹htmlã¸ã®ç›¸å¯¾ãƒ‘スを設定ã—ã€æ›´æ–°ã™ã‚‹ãƒ‘ッケージã®ãƒ‘ッケージåã®ã¿ã‚’渡ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2926,15 +2926,15 @@
 .RE
 .\}
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î½ªÎ»¸å¡¢update/com/packageÆâ¤ÎÀ¸À®¤µ¤ì¤¿¥¯¥é¥¹¤Î¥Ú¡¼¥¸¤ò¥³¥Ô¡¼¤·(³µÍפäº÷°ú¤Ï½ü¤¯)¡¢html/com/packageÆâ¤Î¸µ¤Î¥Õ¥¡¥¤¥ë¤Ë¾å½ñ¤­¤·¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®çµ‚了後ã€update/com/package内ã®ç”Ÿæˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®ãƒšãƒ¼ã‚¸ã‚’コピーã—(概è¦ã‚„索引ã¯é™¤ã)ã€html/com/package内ã®å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¸Šæ›¸ãã—ã¾ã™ã€‚
 .PP
 \-linksource
 .RS 4
-³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë(¹ÔÈÖ¹æÉÕ¤­)¤ÎHTML¥Ð¡¼¥¸¥ç¥ó¤òºîÀ®¤·¡¢É¸½àHTML¥É¥­¥å¥á¥ó¥È¤«¤é¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯¤òÄɲä·¤Þ¤¹¡£¥ê¥ó¥¯¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¡¢¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¡¢¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¤¿¤È¤¨¤Ð¥Ç¥Õ¥©¥ë¥È¡¦¥³¥ó¥¹¥È¥é¥¯¥¿¤äÀ¸À®¤µ¤ì¤¿¥¯¥é¥¹¤ËÂФ·¤Æ¤Ï¡¢¥ê¥ó¥¯¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
-.sp
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-public\fR¡¢\fI\-package\fR¡¢\fI\-protected\fR¤ª¤è¤Ó\fI\-private\fR¤Î³Æ¥ª¥×¥·¥ç¥ó¤È¤Ï´Ø·¸¤Ê¤¯¡¢Èó¸ø³«¤Î¥¯¥é¥¹¡¢¥Õ¥£¡¼¥ë¥É¡¢Èó¸ø³«¤Î¥á¥½¥Ã¥É¤ÎËÜÂΤò¤Ï¤¸¤á¤È¤¹¤ëÁȤ߹þ¤Þ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤ÎÈó¸ø³«¼ÂÁõ¤Î¾ÜºÙ¤ò¸ø³«¤·¤Þ¤¹¡£\fI\-private\fR¥ª¥×¥·¥ç¥ó¤â¤¢¤ï¤»¤Æ»ØÄꤷ¤Ê¤¤¤«¤®¤ê¡¢Èó¸ø³«¤Î¥¯¥é¥¹¤ä¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î°ìÉô¤Ë¤Ï¡¢¥ê¥ó¥¯¤ò²ð¤·¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
-.sp
-³Æ¥ê¥ó¥¯¤Ï¡¢¤½¤ÎÀë¸ÀÆâ¤Î¼±ÊÌ»Ò̾¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIButton\fR¥¯¥é¥¹¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ø¤Î¥ê¥ó¥¯¤Ï¡¢\fIButton\fR¤È¤¤¤¦¸ì¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+å„ソース・ファイル(行番å·ä»˜ã)ã®HTMLãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’作æˆã—ã€æ¨™æº–HTMLドキュメントã‹ã‚‰ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒªãƒ³ã‚¯ã‚’追加ã—ã¾ã™ã€‚リンクã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«å®£è¨€ã•ã‚Œã¦ã„るクラスã€ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã€ãƒ¡ã‚½ãƒƒãƒ‰ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¯¾ã—ã¦ä½œæˆã•ã‚Œã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã€ãŸã¨ãˆã°ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚„生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã¯ã€ãƒªãƒ³ã‚¯ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
+.sp
+ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-public\fRã€\fI\-package\fRã€\fI\-protected\fRãŠã‚ˆã³\fI\-private\fRã®å„オプションã¨ã¯é–¢ä¿‚ãªãã€éžå…¬é–‹ã®ã‚¯ãƒ©ã‚¹ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã€éžå…¬é–‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ¬ä½“ã‚’ã¯ã˜ã‚ã¨ã™ã‚‹çµ„ã¿è¾¼ã¾ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®éžå…¬é–‹å®Ÿè£…ã®è©³ç´°ã‚’公開ã—ã¾ã™ã€‚\fI\-private\fRオプションもã‚ã‚ã›ã¦æŒ‡å®šã—ãªã„ã‹ãŽã‚Šã€éžå…¬é–‹ã®ã‚¯ãƒ©ã‚¹ã‚„インタフェースã®ä¸€éƒ¨ã«ã¯ã€ãƒªãƒ³ã‚¯ã‚’介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+å„リンクã¯ã€ãã®å®£è¨€å†…ã®è­˜åˆ¥å­åã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIButton\fRクラスã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã¯ã€\fIButton\fRã¨ã„ã†èªžã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2945,7 +2945,7 @@
 .if n \{\
 .RE
 .\}
-\fIButton\fR¥¯¥é¥¹¤Î\fIgetLabel\fR¥á¥½¥Ã¥É¤Î¥½¡¼¥¹¡¦¥³¡¼¥É¤Ø¤Î¥ê¥ó¥¯¤Ï¡¢\fIgetLabel\fR¤È¤¤¤¦¸ì¤Î¾å¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIButton\fRクラスã®\fIgetLabel\fRメソッドã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã¸ã®ãƒªãƒ³ã‚¯ã¯ã€\fIgetLabel\fRã¨ã„ã†èªžã®ä¸Šã«ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2960,7 +2960,7 @@
 .PP
 \-group groupheading \fIpackagepattern:packagepattern\fR
 .RS 4
-³µÍ×¥Ú¡¼¥¸¤ÎÊ£¿ô¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¡¢»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Ëʬ¤±¤Æ¡¢¥°¥ë¡¼¥×¤´¤È¤Ëɽ¤òºîÀ®¤·¤Þ¤¹¡£³Æ¥°¥ë¡¼¥×¤Ï¡¢¤½¤ì¤¾¤ìÊ̤Î\fI\-group\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤Þ¤¹¡£¥°¥ë¡¼¥×¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤵ¤ì¤¿½ç½ø¤Ç¥Ú¡¼¥¸¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Ï¡¢¥°¥ë¡¼¥×Æâ¤Ç¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£»ØÄꤷ¤¿\fI\-group\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢\fIpackagepattern\fR¼°¤Î¥ê¥¹¥È¤Ë°ìÃפ¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤¬¡¢¸«½Ð¤·¤È¤·¤Æ\fIgroupheading\fR¤ò»ý¤Ä1¤Ä¤Îɽ¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+概è¦ãƒšãƒ¼ã‚¸ã®è¤‡æ•°ã®ãƒ‘ッケージをã€æŒ‡å®šã—ãŸã‚°ãƒ«ãƒ¼ãƒ—ã«åˆ†ã‘ã¦ã€ã‚°ãƒ«ãƒ¼ãƒ—ã”ã¨ã«è¡¨ã‚’作æˆã—ã¾ã™ã€‚å„グループã¯ã€ãã‚Œãžã‚Œåˆ¥ã®\fI\-group\fRオプションã§æŒ‡å®šã—ã¾ã™ã€‚グループã¯ã€ã‚³ãƒžãƒ³ãƒ‰è¡Œã§æŒ‡å®šã•ã‚ŒãŸé †åºã§ãƒšãƒ¼ã‚¸ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚パッケージã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—内ã§ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ãªã£ã¦ã„ã¾ã™ã€‚指定ã—ãŸ\fI\-group\fRオプションã§ã¯ã€\fIpackagepattern\fRå¼ã®ãƒªã‚¹ãƒˆã«ä¸€è‡´ã™ã‚‹ãƒ‘ッケージãŒã€è¦‹å‡ºã—ã¨ã—ã¦\fIgroupheading\fRã‚’æŒã¤1ã¤ã®è¡¨ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -2970,7 +2970,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIgroupheading\fR¤Ë¤Ï¡¢Ç¤°Õ¤Î¥Æ¥­¥¹¥È¤ò»ØÄê¤Ç¤­¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤Ï¡¢¥°¥ë¡¼¥×¤Îɽ¸«½Ð¤·¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIgroupheading\fRã«ã¯ã€ä»»æ„ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã§ãã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚指定ã—ãŸãƒ†ã‚­ã‚¹ãƒˆã¯ã€ã‚°ãƒ«ãƒ¼ãƒ—ã®è¡¨è¦‹å‡ºã—ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -2981,12 +2981,12 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIpackagepattern\fR¤ÎÃͤˤϡ¢Ç¤°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ÎÀèƬÉôʬ¤È¤½¤ì¤Ë³¤¯1¤Ä¤Î¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ÇǤ°Õ¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯¤Ï»ÈÍѤǤ­¤ëÍ£°ì¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤Ç¡¢Ç¤°Õ¤Îʸ»ú¤Ë°ìÃפ¹¤ë¡¢¤È¤¤¤¦°ÕÌ£¤Ç¤¹¡£1¤Ä¤Î¥°¥ë¡¼¥×¤Ë¤Ï¡¢¥³¥í¥ó(:)¤Ç¶èÀڤäÆÊ£¿ô¤Î¥Ñ¥¿¡¼¥ó¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Ñ¥¿¡¼¥ó¤Þ¤¿¤Ï¥Ñ¥¿¡¼¥ó¡¦¥ê¥¹¥È¤Ç¥¢¥¹¥¿¥ê¥¹¥¯¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥Ñ¥¿¡¼¥ó¡¦¥ê¥¹¥È¤Ï\fI"java\&.lang*:java\&.util"\fR¤Î¤è¤¦¤Ë°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.RE
-.sp
-\fI\-group\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ï¡¢¸«½Ð¤·\fIPackages\fR¤ª¤è¤ÓŬÀڤʾ®¸«½Ð¤·¤ò»ý¤Ä1¤Ä¤Î¥°¥ë¡¼¥×¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£¾®¸«½Ð¤·¤Ë¤¹¤Ù¤Æ¤Î¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤ë¥Ñ¥Ã¥±¡¼¥¸(¤¹¤Ù¤Æ¤Î¥°¥ë¡¼¥×)¤¬´Þ¤Þ¤ì¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¾ì¹ç¡¢»Ä¤ê¤Î¥Ñ¥Ã¥±¡¼¥¸¤Ï¡Ö¤½¤Î¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡×¤È¤¤¤¦¥µ¥Ö¸«½Ð¤·¤ò»ý¤ÄÆÈΩ¤·¤¿¥°¥ë¡¼¥×¤ËÆþ¤ì¤é¤ì¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢¼¡¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢3¤Ä¤Î¥É¥­¥å¥á¥ó¥È²½¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤¬\fI¡Ö¥³¥¢¡×\fR¡¢\fI¡Ö³ÈÄ¥¡×\fR¤ª¤è¤Ó\fI¡Ö¤½¤Î¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡×\fR¤Ëʬ¤±¤é¤ì¤Þ¤¹¡£\fIjava\&.lang*\fR¤Ç¤Ï¡¢ºÇ¸å¤Î¥É¥Ã¥È(\&.)¤ò»ØÄꤷ¤Æ¤¤¤Þ¤»¤ó¡£\fIjava\&.lang\&.*\fR¤Î¤è¤¦¤Ë¥É¥Ã¥È¤òÆþ¤ì¤ë¤È¡¢\fI java\&.lang\fR¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIpackagepattern\fRã®å€¤ã«ã¯ã€ä»»æ„ã®ãƒ‘ッケージåã®å…ˆé ­éƒ¨åˆ†ã¨ãã‚Œã«ç¶šã1ã¤ã®ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã§ä»»æ„ã®ãƒ‘ッケージåを指定ã§ãã¾ã™ã€‚アスタリスクã¯ä½¿ç”¨ã§ãる唯一ã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã§ã€ä»»æ„ã®æ–‡å­—ã«ä¸€è‡´ã™ã‚‹ã€ã¨ã„ã†æ„味ã§ã™ã€‚1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ã«ã¯ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ãƒ‘ターンをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚パターンã¾ãŸã¯ãƒ‘ターン・リストã§ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯ã‚’使用ã™ã‚‹å ´åˆã€ãƒ‘ターン・リストã¯\fI"java\&.lang*:java\&.util"\fRã®ã‚ˆã†ã«å¼•ç”¨ç¬¦ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.RE
+.sp
+\fI\-group\fRオプションを指定ã—ãªã„å ´åˆã¯ã€è¦‹å‡ºã—\fIPackages\fRãŠã‚ˆã³é©åˆ‡ãªå°è¦‹å‡ºã—ã‚’æŒã¤1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ã«é…ç½®ã•ã‚Œã¾ã™ã€‚å°è¦‹å‡ºã—ã«ã™ã¹ã¦ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚Œã‚‹ãƒ‘ッケージ(ã™ã¹ã¦ã®ã‚°ãƒ«ãƒ¼ãƒ—)ãŒå«ã¾ã‚Œã‚‹ã‚ã‘ã§ã¯ãªã„å ´åˆã€æ®‹ã‚Šã®ãƒ‘ッケージã¯ã€Œãã®ä»–ã®ãƒ‘ッケージã€ã¨ã„ã†ã‚µãƒ–見出ã—ã‚’æŒã¤ç‹¬ç«‹ã—ãŸã‚°ãƒ«ãƒ¼ãƒ—ã«å…¥ã‚Œã‚‰ã‚Œã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€æ¬¡ã®\fIjavadoc\fRコマンドã§ã¯ã€3ã¤ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã•ã‚ŒãŸãƒ‘ッケージãŒ\fI「コアã€\fRã€\fI「拡張ã€\fRãŠã‚ˆã³\fI「ãã®ä»–ã®ãƒ‘ッケージã€\fRã«åˆ†ã‘られã¾ã™ã€‚\fIjava\&.lang*\fRã§ã¯ã€æœ€å¾Œã®ãƒ‰ãƒƒãƒˆ(\&.)を指定ã—ã¦ã„ã¾ã›ã‚“。\fIjava\&.lang\&.*\fRã®ã‚ˆã†ã«ãƒ‰ãƒƒãƒˆã‚’入れるã¨ã€\fI java\&.lang\fRパッケージã¯é™¤å¤–ã•ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -2999,7 +2999,7 @@
 .if n \{\
 .RE
 .\}
-\fB¥³¥¢¡¦¥Ñ¥Ã¥±¡¼¥¸\fR
+\fBコア・パッケージ\fR
 .sp
 \fIjava\&.lang\fR
 .sp
@@ -3007,7 +3007,7 @@
 .sp
 \fIjava\&.util\fR
 .sp
-\fB³ÈÄ¥µ¡Ç½¥Ñ¥Ã¥±¡¼¥¸\fR
+\fB拡張機能パッケージ\fR
 .sp
 \fIjavax\&.servlet\fR
 .sp
@@ -3018,42 +3018,42 @@
 .PP
 \-nodeprecated
 .RS 4
-Èó¿ä¾©¤ÎAPI¤ò¥É¥­¥å¥á¥ó¥È¤ËÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢\fI\-nodeprecatedlist\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸¸ú²Ì¤¬¤¢¤ê¡¢¥É¥­¥å¥á¥ó¥È¤Î¾¤ÎÉôʬÁ´ÂΤǤ⡢Èó¿ä¾©¤ÎAPI¤¬À¸À®¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¡¼¥É¤òµ­½Ò¤·¤Æ¤¤¤ë¤È¤­¡¢Èó¿ä¾©¤Î¥³¡¼¥É¤Ë¤è¤Ã¤Æµ¤¤ò»¶¤é¤µ¤ì¤¿¤¯¤Ê¤¤¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®APIをドキュメントã«ç”Ÿæˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ã€\fI\-nodeprecatedlist\fRオプションを指定ã—ãŸå ´åˆã¨åŒã˜åŠ¹æžœãŒã‚ã‚Šã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä»–ã®éƒ¨åˆ†å…¨ä½“ã§ã‚‚ã€éžæŽ¨å¥¨ã®APIãŒç”Ÿæˆã•ã‚Œã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€ã‚³ãƒ¼ãƒ‰ã‚’記述ã—ã¦ã„ã‚‹ã¨ãã€éžæŽ¨å¥¨ã®ã‚³ãƒ¼ãƒ‰ã«ã‚ˆã£ã¦æ°—を散らã•ã‚ŒãŸããªã„å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-nodeprecatedlist
 .RS 4
-Èó¿ä¾©¤ÎAPI¤Î¥ê¥¹¥È¤ò´Þ¤à¥Õ¥¡¥¤¥ë(deprecated\-list\&.html)¡¢¤ª¤è¤Ó¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¤½¤Î¥Ú¡¼¥¸¤Ø¤Î¥ê¥ó¥¯¤¬À¸À®¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢°ú¤­Â³¤­¡¢¥É¥­¥å¥á¥ó¥È¤Î¾¤ÎÉôʬ¤Ç¤Ï¡¢Èó¿ä¾©¤ÎAPI¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Èó¿ä¾©¤ÎAPI¤¬¥½¡¼¥¹¡¦¥³¡¼¥É¤Ë´Þ¤Þ¤ì¤Æ¤ª¤é¤º¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤ò¤¹¤Ã¤­¤ê¤È¸«¤»¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+éžæŽ¨å¥¨ã®APIã®ãƒªã‚¹ãƒˆã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«(deprecated\-list\&.html)ã€ãŠã‚ˆã³ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ãã®ãƒšãƒ¼ã‚¸ã¸ã®ãƒªãƒ³ã‚¯ãŒç”Ÿæˆã•ã‚Œãªã„よã†ã«ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã§ã¯ã€å¼•ã続ãã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä»–ã®éƒ¨åˆ†ã§ã¯ã€éžæŽ¨å¥¨ã®APIãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€éžæŽ¨å¥¨ã®APIãŒã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ã«å«ã¾ã‚Œã¦ãŠã‚‰ãšã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã‚’ã™ã£ãã‚Šã¨è¦‹ã›ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-nosince
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢\fI@since\fR¥¿¥°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿\fI¡ÖƳÆþ¤µ¤ì¤¿¥Ð¡¼¥¸¥ç¥ó¡×\fR¥»¥¯¥·¥ç¥ó¤ò¾Êά¤·¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€\fI@since\fRã‚¿ã‚°ã«é–¢é€£ä»˜ã‘られãŸ\fI「導入ã•ã‚ŒãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€\fRセクションをçœç•¥ã—ã¾ã™ã€‚
 .RE
 .PP
 \-notree
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢¥¯¥é¥¹¤ª¤è¤Ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î³¬ÁØ¥Ú¡¼¥¸¤ò¾Êά¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥Ú¡¼¥¸¤Ë¤Ï¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö³¬Áإĥ꡼¡×¥Ü¥¿¥ó¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢³¬Áؤ¬À¸À®¤µ¤ì¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®éšŽå±¤ãƒšãƒ¼ã‚¸ã‚’çœç•¥ã—ã¾ã™ã€‚ã“れらã®ãƒšãƒ¼ã‚¸ã«ã¯ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€ŒéšŽå±¤ãƒ„リーã€ãƒœã‚¿ãƒ³ã‹ã‚‰ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚デフォルトã§ã¯ã€éšŽå±¤ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-noindex
 .RS 4
-À¸À®¥É¥­¥å¥á¥ó¥È¤«¤é¡¢º÷°ú¤ò¾Êά¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢º÷°ú¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+生æˆãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‹ã‚‰ã€ç´¢å¼•ã‚’çœç•¥ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ç´¢å¼•ãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-nohelp
 .RS 4
-½ÐÎϤγƥڡ¼¥¸¤ÎºÇ¾åÉô¤ÈºÇ²¼Éô¤Ë¤¢¤ë¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤«¤é¡Ö¥Ø¥ë¥×¡×¥ê¥ó¥¯¤ò¾Êά¤·¤Þ¤¹¡£
+出力ã®å„ページã®æœ€ä¸Šéƒ¨ã¨æœ€ä¸‹éƒ¨ã«ã‚るナビゲーション・ãƒãƒ¼ã‹ã‚‰ã€Œãƒ˜ãƒ«ãƒ—ã€ãƒªãƒ³ã‚¯ã‚’çœç•¥ã—ã¾ã™ã€‚
 .RE
 .PP
 \-nonavbar
 .RS 4
-Ä̾À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤ÎºÇ¾åÉô¤ÈºÇ²¼Éô¤Ëɽ¼¨¤µ¤ì¤ë¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¡¢¥Ø¥Ã¥À¡¼¡¢¤ª¤è¤Ó¥Õ¥Ã¥¿¡¼¤òÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£\fI\-nonavbar\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤Ë±Æ¶Á¤òÍ¿¤¨¤Þ¤»¤ó¡£\fI\-nonavbar\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢°õºþ¤¹¤ë¤¿¤á¤Ë¤Î¤ß¥Õ¥¡¥¤¥ë¤òPostScript¤äPDF¤ËÊÑ´¹¤¹¤ë¾ì¹ç¤Ê¤É¡¢ÆâÍƤΤߤ¬½ÅÍפǡ¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¤ÎɬÍפ¬¤Ê¤¤¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£
+通常ã€ç”Ÿæˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®æœ€ä¸Šéƒ¨ã¨æœ€ä¸‹éƒ¨ã«è¡¨ç¤ºã•ã‚Œã‚‹ãƒŠãƒ“ゲーション・ãƒãƒ¼ã€ãƒ˜ãƒƒãƒ€ãƒ¼ã€ãŠã‚ˆã³ãƒ•ãƒƒã‚¿ãƒ¼ã‚’生æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚\fI\-nonavbar\fRオプションã¯\fI\-bottom\fRオプションã«å½±éŸ¿ã‚’与ãˆã¾ã›ã‚“。\fI\-nonavbar\fRオプションã¯ã€å°åˆ·ã™ã‚‹ãŸã‚ã«ã®ã¿ãƒ•ã‚¡ã‚¤ãƒ«ã‚’PostScriptã‚„PDFã«å¤‰æ›ã™ã‚‹å ´åˆãªã©ã€å†…容ã®ã¿ãŒé‡è¦ã§ã€ãƒŠãƒ“ゲーションã®å¿…è¦ãŒãªã„å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚
 .RE
 .PP
 \-helpfile \fIpath\efilename\fR
 .RS 4
-ºÇ¾åÉô¤ª¤è¤ÓºÇ²¼Éô¤Î¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼¤Î¡Ö¥Ø¥ë¥×¡×¥ê¥ó¥¯¤Î¥ê¥ó¥¯Àè¤È¤Ê¤ëÂåÂإإë¥×¡¦¥Õ¥¡¥¤¥ëpath\efilename¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥ÉÆâ¤Ç¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥Ø¥ë¥×¡¦¥Õ¥¡¥¤¥ëhelp\-doc\&.html¤ò¼«Æ°ºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤Ë¤Ï¤É¤ó¤Ê̾Á°¤Ç¤â»ØÄê¤Ç¤­¡¢help\-doc\&.html¤Ë¸ÂÄꤵ¤ì¤Þ¤»¤ó¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤ÎÎã¤Î¤è¤¦¤Ë¡¢¥Ê¥Ó¥²¡¼¥·¥ç¥ó¡¦¥Ð¡¼Æâ¤Î¥ê¥ó¥¯¤òɬÍפ˱þ¤¸¤ÆÄ´À°¤·¤Þ¤¹¡£
+最上部ãŠã‚ˆã³æœ€ä¸‹éƒ¨ã®ãƒŠãƒ“ゲーション・ãƒãƒ¼ã®ã€Œãƒ˜ãƒ«ãƒ—ã€ãƒªãƒ³ã‚¯ã®ãƒªãƒ³ã‚¯å…ˆã¨ãªã‚‹ä»£æ›¿ãƒ˜ãƒ«ãƒ—・ファイルpath\efilenameã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fIjavadoc\fRコマンド内ã§ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦ã„るヘルプ・ファイルhelp\-doc\&.htmlを自動作æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚ファイルåã«ã¯ã©ã‚“ãªåå‰ã§ã‚‚指定ã§ãã€help\-doc\&.htmlã«é™å®šã•ã‚Œã¾ã›ã‚“。\fIjavadoc\fRコマンドã¯ã€æ¬¡ã®ä¾‹ã®ã‚ˆã†ã«ã€ãƒŠãƒ“ゲーション・ãƒãƒ¼å†…ã®ãƒªãƒ³ã‚¯ã‚’å¿…è¦ã«å¿œã˜ã¦èª¿æ•´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3068,7 +3068,7 @@
 .PP
 \-stylesheet \fIpath/filename \fR
 .RS 4
-ÂåÂØHTML¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥ÉÆâ¤Ç¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¹¥¿¥¤¥ë¥·¡¼¥È¡¦¥Õ¥¡¥¤¥ëstylesheet\&.css¤ò¼«Æ°ºîÀ®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤Ë¤Ï¤É¤ó¤Ê̾Á°¤Ç¤â»ØÄê¤Ç¤­¡¢stylesheet\&.css¤Ë¸ÂÄꤵ¤ì¤Þ¤»¤ó¡£
+代替HTMLスタイルシート・ファイルã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ã€\fIjavadoc\fRコマンドã¯ã€\fIjavadoc\fRコマンド内ã§ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚Œã¦ã„るスタイルシート・ファイルstylesheet\&.cssを自動作æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãã¾ã™ã€‚ファイルåã«ã¯ã©ã‚“ãªåå‰ã§ã‚‚指定ã§ãã€stylesheet\&.cssã«é™å®šã•ã‚Œã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -3083,15 +3083,15 @@
 .PP
 \-serialwarn
 .RS 4
-\fI@serial\fR¥¿¥°¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë»þ¤Ë·Ù¹ð¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢Javadoc 1\&.2\&.2°Ê¹ß¤Ç¤Ï¡¢Ä¾Î󲽤ηٹð¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤È¤ÏµÕ¤ÎÆ°ºî¤Ç¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Ä¾Î󲽤ηٹð¤¬É½¼¨¤µ¤ì¤ë¤Î¤Ç¡¢¥Ç¥Õ¥©¥ë¥È¤ÎľÎó²½²Äǽ¥Õ¥£¡¼¥ë¥É¤È\fIwriteExternal\fR¥á¥½¥Ã¥É¤òŬÀڤ˥ɥ­¥å¥á¥ó¥È²½¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£
+\fI@serial\fRã‚¿ã‚°ãŒãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ‘イル時ã«è­¦å‘Šã‚’生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€Javadoc 1\&.2\&.2以é™ã§ã¯ã€ç›´åˆ—化ã®è­¦å‘Šã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã¨ã¯é€†ã®å‹•ä½œã§ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ç›´åˆ—化ã®è­¦å‘ŠãŒè¡¨ç¤ºã•ã‚Œã‚‹ã®ã§ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ç›´åˆ—化å¯èƒ½ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨\fIwriteExternal\fRメソッドをé©åˆ‡ã«ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
 .PP
 \-charset \fIname\fR
 .RS 4
-¤³¤Î¥É¥­¥å¥á¥ó¥ÈÍѤÎHTMLʸ»ú¥»¥Ã¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î̾Á°¤Ï¡¢IANA Registry¤ÎCharacter Sets
-(http://www\&.iana\&.org/assignments/character\-sets)¤Ë¼¨¤µ¤ì¤¿¡¢Í¥ÀèMIME̾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-¤¿¤È¤¨¤Ð¡¢\fIjavadoc \-charset "iso\-8859\-1" mypackage\fR¤Ï¼¡¤Î¹Ô¤òÀ¸À®¤µ¤ì¤¿³Æ¥Ú¡¼¥¸¤Î¥Ø¥Ã¥À¡¼¤ËÁÞÆþ¤·¤Þ¤¹¡£
+ã“ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆç”¨ã®HTML文字セットを指定ã—ã¾ã™ã€‚ã“ã®åå‰ã¯ã€IANA Registryã®Character Sets
+(http://www\&.iana\&.org/assignments/character\-sets)ã«ç¤ºã•ã‚ŒãŸã€å„ªå…ˆMIMEåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+ãŸã¨ãˆã°ã€\fIjavadoc \-charset "iso\-8859\-1" mypackage\fRã¯æ¬¡ã®è¡Œã‚’生æˆã•ã‚ŒãŸå„ページã®ãƒ˜ãƒƒãƒ€ãƒ¼ã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3102,24 +3102,24 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î\fIMETA\fR¥¿¥°¤Ï¡¢HTMLɸ½à(4197265¤ª¤è¤Ó4137321)¤ÎHTML Document Representation
-(http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
-.sp
-¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®\fIMETA\fRã‚¿ã‚°ã¯ã€HTML標準(4197265ãŠã‚ˆã³4137321)ã®HTML Document Representation
+(http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚
+.sp
+ãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-docencoding \fIname\fR
 .RS 4
-À¸À®¤µ¤ì¤ëHTML¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î̾Á°¤Ï¡¢IANA Registry¤ÎCharacter Sets
-(http://www\&.iana\&.org/assignments/character\-sets)¤Ë¼¨¤µ¤ì¤¿¡¢Í¥ÀèMIME̾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.sp
-\fI\-docencoding\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤·¡¢\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢À¸À®¤µ¤ì¤¿HTML¥Õ¥¡¥¤¥ë¤Î°Å¹æ²½¤Ï\fI\-encoding\fR¥ª¥×¥·¥ç¥ó¤ÇÆÃÄꤵ¤ì¤Þ¤¹¡£Îã:
-\fIjavadoc \-docencoding"iso\-8859\-1" mypackage\fR¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+生æˆã•ã‚Œã‚‹HTMLファイルã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¾ã™ã€‚ã“ã®åå‰ã¯ã€IANA Registryã®Character Sets
+(http://www\&.iana\&.org/assignments/character\-sets)ã«ç¤ºã•ã‚ŒãŸã€å„ªå…ˆMIMEåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.sp
+\fI\-docencoding\fRオプションをçœç•¥ã—ã€\fI\-encoding\fRオプションを使用ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚ŒãŸHTMLファイルã®æš—å·åŒ–ã¯\fI\-encoding\fRオプションã§ç‰¹å®šã•ã‚Œã¾ã™ã€‚例:
+\fIjavadoc \-docencoding"iso\-8859\-1" mypackage\fRãŠã‚ˆã³ã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-keywords
 .RS 4
-HTML¥­¡¼¥ï¡¼¥É<META>¥¿¥°¤ò¡¢¥¯¥é¥¹¤´¤È¤ËÀ¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ËÄɲä·¤Þ¤¹¡£¤³¤ì¤é¤Î¥¿¥°¤Ï¡¢<META>¥¿¥°¤ò¸¡º÷¤¹¤ë¥µ¡¼¥Á¡¦¥¨¥ó¥¸¥ó¤¬¥Ú¡¼¥¸¤ò¸«¤Ä¤±¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈÁ´ÂΤò¸¡º÷¤¹¤ë¸¡º÷¥¨¥ó¥¸¥ó¤Î¤Û¤È¤ó¤É¤Ï<META>¥¿¥°¤ò»²¾È¤·¤Þ¤»¤ó¡£¥Ú¡¼¥¸¤¬¸íÍѤ·¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¤«¤é¤Ç¤¹¡£¼«¿È¤ÎWeb¥µ¥¤¥È¤Ø¤Î¸¡º÷¤òÀ©¸Â¤¹¤ë¡¢´ë¶È¤Ë¤è¤êÄ󶡤µ¤ì¤ë¸¡º÷¥¨¥ó¥¸¥ó¤Ï¡¢<META>¥¿¥°¤ò»²¾È¤¹¤ë¤³¤È¤Ç²¸·Ã¤ò¼õ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£<META>¥¿¥°¤Ë¤Ï¡¢¥¯¥é¥¹¤Î´°Á´½¤¾þ̾¤È¡¢¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥á¥½¥Ã¥É¤Î½¤¾þ¤µ¤ì¤Æ¤¤¤Ê¤¤Ì¾Á°¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï¡¢¥¯¥é¥¹Ì¾¤ÈƱ¤¸¤Ç¤¢¤ë¤¿¤á´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¥¯¥é¥¹\fIString\fR¤Ï¼¡¤Î¥­¡¼¥ï¡¼¥É¤Ç³«»Ï¤·¤Þ¤¹¡£
+HTMLキーワード<META>ã‚¿ã‚°ã‚’ã€ã‚¯ãƒ©ã‚¹ã”ã¨ã«ç”Ÿæˆã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«è¿½åŠ ã—ã¾ã™ã€‚ã“れらã®ã‚¿ã‚°ã¯ã€<META>タグを検索ã™ã‚‹ã‚µãƒ¼ãƒãƒ»ã‚¨ãƒ³ã‚¸ãƒ³ãŒãƒšãƒ¼ã‚¸ã‚’見ã¤ã‘ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚インターãƒãƒƒãƒˆå…¨ä½“を検索ã™ã‚‹æ¤œç´¢ã‚¨ãƒ³ã‚¸ãƒ³ã®ã»ã¨ã‚“ã©ã¯<META>ã‚¿ã‚°ã‚’å‚ç…§ã—ã¾ã›ã‚“。ページãŒèª¤ç”¨ã—ã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ã‹ã‚‰ã§ã™ã€‚自身ã®Webサイトã¸ã®æ¤œç´¢ã‚’制é™ã™ã‚‹ã€ä¼æ¥­ã«ã‚ˆã‚Šæä¾›ã•ã‚Œã‚‹æ¤œç´¢ã‚¨ãƒ³ã‚¸ãƒ³ã¯ã€<META>ã‚¿ã‚°ã‚’å‚ç…§ã™ã‚‹ã“ã¨ã§æ©æµã‚’å—ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚<META>ã‚¿ã‚°ã«ã¯ã€ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾åã¨ã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ãƒ¡ã‚½ãƒƒãƒ‰ã®ä¿®é£¾ã•ã‚Œã¦ã„ãªã„åå‰ãŒå«ã¾ã‚Œã¾ã™ã€‚コンストラクタã¯ã€ã‚¯ãƒ©ã‚¹åã¨åŒã˜ã§ã‚ã‚‹ãŸã‚å«ã¾ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¹\fIString\fRã¯æ¬¡ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§é–‹å§‹ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3137,42 +3137,42 @@
 .PP
 \-tag \fItagname\fR:Xaoptcmf:"\fItaghead\fR"
 .RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤Î°ú¿ô¤ò1¤Ä¼è¤ëñ½ã¤Ê¥«¥¹¥¿¥à¡¦¥Ö¥í¥Ã¥¯¡¦¥¿¥°\fI@tagname\fR¤ò²ò¼á¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¥¿¥°Ì¾¤Î¥¹¥Ú¥ë¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë¤Î¤Ç¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Ë¸ºß¤¹¤ë¤¹¤Ù¤Æ¤Î¥«¥¹¥¿¥à¡¦¥¿¥°¤Ë¤Ä¤¤¤Æ¡¢\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤òÁȤ߹þ¤à¤³¤È¤¬½ÅÍפǤ¹¡£º£²ó¤Î¼Â¹Ô¤Ç¤Ï½ÐÎϤµ¤ì¤Ê¤¤¥¿¥°¤Ï¡¢\fIX\fR¤òÉÕ¤±¤Æ̵¸ú¤Ë¤·¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¿¥°¤Î¸«½Ð¤·\fItaghead\fR¤òÂÀ»ú¤Ç½ÐÎϤ·¤Þ¤¹¡£¤½¤Î¼¡¤Î¹Ô¤Ë¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Î1¤Ä¤Î°ú¿ô¤Ç»ØÄꤷ¤¿¥Æ¥­¥¹¥È¤¬Â³¤­¤Þ¤¹¡£¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤ÈƱÍÍ¡¢¤³¤Î°ú¿ô¤Î¥Æ¥­¥¹¥È¤Ë¤Ï¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤â²ò¼á¤µ¤ì¤Þ¤¹¡£½ÐÎϤϡ¢°ú¿ô¤ò1¤Ä¼è¤ëɸ½à¤Î¥¿¥°(\fI@return\fR¤ä\fI@author\fR¤Ê¤É)¤Î½ÐÎϤȤ褯»÷¤Æ¤¤¤Þ¤¹¡£\fItaghead\fR¤ÎÃͤò¾Êά¤¹¤ë¤È¡¢\fItagname\fR¤¬¸«½Ð¤·¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤ÎÇÛÃÖ\fR:
-\fIXaoptcmf\fR°ú¿ô¤Ë¤è¤ê¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Ç¥¿¥°¤òÇÛÃ֤Ǥ­¤ë¾ì½ê¤¬·è¤Þ¤ê¡¢¥¿¥°¤ò̵¸ú¤Ë¤Ç¤­¤ë¤«¤É¤¦¤«(\fIX\fR¤ò»ÈÍѤ·¤Æ)¤¬·è¤Þ¤ê¤Þ¤¹¡£¥¿¥°¤ÎÇÛÃÖ°ÌÃÖ¤òÀ©¸Â¤·¤Ê¤¤¾ì¹ç¤Ï\fIa\fR¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤ì°Ê³°¤Îʸ»ú¤ÎÁȹ礻¤â²Äǽ¤Ç¤¹¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆå†…ã®å¼•æ•°ã‚’1ã¤å–ã‚‹å˜ç´”ãªã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒ–ロック・タグ\fI@tagname\fRを解釈ã§ãるよã†ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ã‚¿ã‚°åã®ã‚¹ãƒšãƒ«ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã“ã¨ãŒã§ãã‚‹ã®ã§ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã«å­˜åœ¨ã™ã‚‹ã™ã¹ã¦ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã«ã¤ã„ã¦ã€\fI\-tag\fRオプションを組ã¿è¾¼ã‚€ã“ã¨ãŒé‡è¦ã§ã™ã€‚今回ã®å®Ÿè¡Œã§ã¯å‡ºåŠ›ã•ã‚Œãªã„ã‚¿ã‚°ã¯ã€\fIX\fRを付ã‘ã¦ç„¡åŠ¹ã«ã—ã¾ã™ã€‚\fI\-tag\fRオプションã¯ã€ã‚¿ã‚°ã®è¦‹å‡ºã—\fItaghead\fRを太字ã§å‡ºåŠ›ã—ã¾ã™ã€‚ãã®æ¬¡ã®è¡Œã«ã¯ã€ã“ã®ã‚ªãƒ—ションã®1ã¤ã®å¼•æ•°ã§æŒ‡å®šã—ãŸãƒ†ã‚­ã‚¹ãƒˆãŒç¶šãã¾ã™ã€‚ブロック・タグã¨åŒæ§˜ã€ã“ã®å¼•æ•°ã®ãƒ†ã‚­ã‚¹ãƒˆã«ã¯ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã‚‚解釈ã•ã‚Œã¾ã™ã€‚出力ã¯ã€å¼•æ•°ã‚’1ã¤å–る標準ã®ã‚¿ã‚°(\fI@return\fRã‚„\fI@author\fRãªã©)ã®å‡ºåŠ›ã¨ã‚ˆãä¼¼ã¦ã„ã¾ã™ã€‚\fItaghead\fRã®å€¤ã‚’çœç•¥ã™ã‚‹ã¨ã€\fItagname\fRãŒè¦‹å‡ºã—ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®é…ç½®\fR:
+\fIXaoptcmf\fR引数ã«ã‚ˆã‚Šã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã§ã‚¿ã‚°ã‚’é…ç½®ã§ãる場所ãŒæ±ºã¾ã‚Šã€ã‚¿ã‚°ã‚’無効ã«ã§ãã‚‹ã‹ã©ã†ã‹(\fIX\fRを使用ã—ã¦)ãŒæ±ºã¾ã‚Šã¾ã™ã€‚ã‚¿ã‚°ã®é…ç½®ä½ç½®ã‚’制é™ã—ãªã„å ´åˆã¯\fIa\fRを指定ã—ã¾ã™ã€‚ãれ以外ã®æ–‡å­—ã®çµ„åˆã›ã‚‚å¯èƒ½ã§ã™ã€‚
 .sp
 \fIX\fR
-(¥¿¥°¤Î̵¸ú²½)
+(ã‚¿ã‚°ã®ç„¡åŠ¹åŒ–)
 .sp
 \fIa\fR
-(¤¹¤Ù¤Æ)
+(ã™ã¹ã¦)
 .sp
 \fIo\fR
-(³µÍ×)
+(概è¦)
 .sp
 \fIp\fR
-(¥Ñ¥Ã¥±¡¼¥¸)
+(パッケージ)
 .sp
 \fIt\fR
-(¥¿¥¤¥×¡¢¤Ä¤Þ¤ê¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹)
+(タイプã€ã¤ã¾ã‚Šã‚¯ãƒ©ã‚¹ã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹)
 .sp
 \fIc\fR
-(¥³¥ó¥¹¥È¥é¥¯¥¿)
+(コンストラクタ)
 .sp
 \fIm\fR
-(¥á¥½¥Ã¥É)
+(メソッド)
 .sp
 \fIf\fR
-(¥Õ¥£¡¼¥ë¥É)
-.sp
-\fB¥·¥ó¥°¥ë¡¦¥¿¥°¤ÎÎã\fR: ¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤ÎǤ°Õ¤Î°ÌÃ֤ǻÈÍѤǤ­¤ë¥¿¥°¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fI\-tag todo:a:"To Do:"\fR
-.sp
-\fI@todo\fR¥¿¥°¤ò¥³¥ó¥¹¥È¥é¥¯¥¿¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Õ¥£¡¼¥ë¥É¤È¤Î¤ß»ÈÍѤ¹¤ë¾ì¹ç¡¢\fI\-tag todo:cmf:"To Do:"\fR¤ò»ÈÍѤ·¤Þ¤¹¡£
-.sp
-ºÇ¸å¤Î¥³¥í¥ó(:)¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¶èÀÚ¤êʸ»ú¤Ç¤Ï¤Ê¤¯¡¢¸«½Ð¤·¥Æ¥­¥¹¥È¤Î°ìÉô¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£\fI@todo\fR¥¿¥°¤ò´Þ¤à¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÍѤΤ¤¤º¤ì¤«¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@todo The documentation for this method needs work\fR¤Ç¤¹¡£
-.sp
-\fB¥¿¥°Ì¾Æâ¤Î¥³¥í¥ó\fR: ¥¿¥°Ì¾Æâ¤Ç¥³¥í¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤ò»ÈÍѤ·¤Æ¥¨¥¹¥±¡¼¥×¤·¤Þ¤¹¡£¼¡¤Î¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤Ë¤Ï¡¢\fI\-tag ejb\e\e:bean:a:"EJB Bean:"\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£
+(フィールド)
+.sp
+\fBシングル・タグã®ä¾‹\fR: ソース・コード内ã®ä»»æ„ã®ä½ç½®ã§ä½¿ç”¨ã§ãã‚‹ã‚¿ã‚°ã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-tag todo:a:"To Do:"\fR
+.sp
+\fI@todo\fRタグをコンストラクタã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨ã®ã¿ä½¿ç”¨ã™ã‚‹å ´åˆã€\fI\-tag todo:cmf:"To Do:"\fRを使用ã—ã¾ã™ã€‚
+.sp
+最後ã®ã‚³ãƒ­ãƒ³(:)ã¯ã€ãƒ‘ラメータ区切り文字ã§ã¯ãªãã€è¦‹å‡ºã—テキストã®ä¸€éƒ¨ã«ãªã£ã¦ã„ã¾ã™ã€‚\fI@todo\fRã‚¿ã‚°ã‚’å«ã‚€ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰ç”¨ã®ã„ãšã‚Œã‹ã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションを使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@todo The documentation for this method needs work\fRã§ã™ã€‚
+.sp
+\fBã‚¿ã‚°å内ã®ã‚³ãƒ­ãƒ³\fR: ã‚¿ã‚°å内ã§ã‚³ãƒ­ãƒ³ã‚’使用ã™ã‚‹å ´åˆã¯ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚’使用ã—ã¦ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã—ã¾ã™ã€‚次ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã«ã¯ã€\fI\-tag ejb\e\e:bean:a:"EJB Bean:"\fRオプションを使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3185,12 +3185,12 @@
 .if n \{\
 .RE
 .\}
-\fB¥¿¥°Ì¾¤Î¥¹¥Ú¥ë¥Á¥§¥Ã¥¯\fR: °ìÉô¤Î³«È¯¼Ô¤¬É¬¤º¤·¤â½ÐÎϤ·¤Ê¤¤¥«¥¹¥¿¥à¡¦¥¿¥°¤ò¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤ËÇÛÃÖ¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Î¤¹¤Ù¤Æ¤Î¥¿¥°¤ò¥ê¥¹¥È¤·¡¢½ÐÎϤ¹¤ë¥¿¥°¤òÍ­¸ú¤Ë¤·¡¢½ÐÎϤ·¤Ê¤¤¥¿¥°¤ò̵¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIX\fR¤ò»ØÄꤹ¤ë¤È¥¿¥°¤Ï̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£»ØÄꤷ¤Ê¤¤¤È¡¢¥¿¥°¤ÏÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¸¡½Ð¤·¤¿¥¿¥°¤¬ÆþÎϥߥ¹¤Ê¤É¤Ë¤è¤ëÉÔÌÀ¥¿¥°¤Ç¤¢¤ë¤«¤É¤¦¤«¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤«¤é·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¹¤Ç¤ËÇÛÃÖ¤µ¤ì¤Æ¤¤¤ëÃͤË\fIX\fR¤òÄɲäǤ­¤Þ¤¹¡£¤³¤¦¤·¤Æ¤ª¤±¤Ð¡¢\fIX\fR¤òºï½ü¤¹¤ë¤Î¤ß¤Ç¥¿¥°¤òÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI@todo\fR¥¿¥°¤ò½ÐÎϤÇÍÞÀ©¤¹¤ë¾ì¹ç¡¢\fI\-tag todo:Xcmf:"To Do:"\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤µ¤é¤Ë´Êñ¤Ë¤¹¤ë¾ì¹ç¡¢\fI\-tag todo:X\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¹½Ê¸\fI\-tag todo:X\fR¤Ï¡¢\fI@todo\fR¥¿¥°¤¬¥¿¥°¥ì¥Ã¥È¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Æ¤âµ¡Ç½¤·¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤Î½ç½ø\fR:
-\fI\-ta\fR\fIg\fR¤ª¤è¤Ó\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤Î½ç½ø¤Ë¤è¤Ã¤Æ¡¢¥¿¥°¤Î½ÐÎϽ礬·è¤Þ¤ê¤Þ¤¹¡£¥«¥¹¥¿¥à¡¦¥¿¥°¤Èɸ½à¥¿¥°¤òÁȤ߹礻¤Æ»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£É¸½à¥¿¥°¤Î¥¿¥°¡¦¥ª¥×¥·¥ç¥ó¤Ï¡¢½ç½ø¤ò·èÄꤹ¤ë¤¿¤á¤À¤±¤Î¥×¥ì¡¼¥¹¥Û¥ë¥À¤Ç¤¹¡£É¸½à¥¿¥°¤Î̾Á°¤Î¤ß¤ò¼è¤ê¤Þ¤¹¡£É¸½à¥¿¥°¤Î¾®¸«½Ð¤·¤ÏÊѹ¹¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤ò¼¡¤ÎÎã¤Ë¼¨¤·¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢\fI\-tagle\fR\fIt\fR¥ª¥×¥·¥ç¥ó¤Î°ÌÃ֤ˤè¤ê¡¢½ç½ø¤¬·è¤Þ¤ê¤Þ¤¹¡£¥¿¥°¤¬Î¾Êý¤È¤â¸ºß¤¹¤ë¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÎºÇ¸å¤Ë¤¢¤ëÊý¤¬¤½¤Î½ç½ø¤ò·èÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¿¥°¤ä¥¿¥°¥ì¥Ã¥È¤¬¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë»ØÄꤵ¤ì¤¿½çÈ֤˽èÍý¤µ¤ì¤ë¤¿¤á¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-taglet\fR¤ª¤è¤Ó\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤¬Ì¾Á°\fItodo\fRÃͤò»ý¤Ä¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ËºÇ¸å¤Ë»ØÄꤵ¤ì¤¿¤â¤Î¤¬½ç½ø¤ò·èÄꤷ¤Þ¤¹¡£
-.sp
-\fB¥¿¥°¤Î´°Á´¥»¥Ã¥È¤ÎÎã\fR: ¤³¤ÎÎã¤Ç¤Ï¡¢½ÐÎϤÎParameters¤ÈThrows¤Î´Ö¤ËTo Do¤òÁÞÆþ¤·¤Þ¤¹¡£\fIX\fR¤ò»ÈÍѤ·¤Æ¡¢\fI@example\fR¥¿¥°¤¬¡¢¥½¡¼¥¹¡¦¥³¡¼¥ÉÆâ¤Îº£²ó¤Î¼Â¹Ô¤Ç¤Ï½ÐÎϤµ¤ì¤Ê¤¤¥¿¥°¤Ç¤¢¤ë¤³¤È¤â»ØÄꤷ¤Þ¤¹¡£\fI@argfile\fR¥¿¥°¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¡¢°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤ÎÊÌ¡¹¤Î¹Ô¤Ë¥¿¥°¤òÇÛÃ֤Ǥ­¤Þ¤¹(¹Ô¤Î·Ñ³¤ò¼¨¤¹Ê¸»ú¤ÏÉÔÍ×)¡£
+\fBã‚¿ã‚°åã®ã‚¹ãƒšãƒ«ãƒã‚§ãƒƒã‚¯\fR: 一部ã®é–‹ç™ºè€…ãŒå¿…ãšã—も出力ã—ãªã„カスタム・タグをソース・コード内ã«é…ç½®ã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã®ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’リストã—ã€å‡ºåŠ›ã™ã‚‹ã‚¿ã‚°ã‚’有効ã«ã—ã€å‡ºåŠ›ã—ãªã„タグを無効ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIX\fRを指定ã™ã‚‹ã¨ã‚¿ã‚°ã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚指定ã—ãªã„ã¨ã€ã‚¿ã‚°ã¯æœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドã¯ã€æ¤œå‡ºã—ãŸã‚¿ã‚°ãŒå…¥åŠ›ãƒŸã‚¹ãªã©ã«ã‚ˆã‚‹ä¸æ˜Žã‚¿ã‚°ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’特定ã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªå ´åˆã«ã€\fIjavadoc\fRコマンドã‹ã‚‰è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã™ã§ã«é…ç½®ã•ã‚Œã¦ã„る値ã«\fIX\fRを追加ã§ãã¾ã™ã€‚ã“ã†ã—ã¦ãŠã‘ã°ã€\fIX\fRを削除ã™ã‚‹ã®ã¿ã§ã‚¿ã‚°ã‚’有効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI@todo\fRタグを出力ã§æŠ‘制ã™ã‚‹å ´åˆã€\fI\-tag todo:Xcmf:"To Do:"\fRを使用ã—ã¾ã™ã€‚ã•ã‚‰ã«ç°¡å˜ã«ã™ã‚‹å ´åˆã€\fI\-tag todo:X\fRを使用ã—ã¾ã™ã€‚構文\fI\-tag todo:X\fRã¯ã€\fI@todo\fRã‚¿ã‚°ãŒã‚¿ã‚°ãƒ¬ãƒƒãƒˆã§å®šç¾©ã•ã‚Œã¦ã„ã¦ã‚‚機能ã—ã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®é †åº\fR:
+\fI\-ta\fR\fIg\fRãŠã‚ˆã³\fI\-taglet\fRオプションã®é †åºã«ã‚ˆã£ã¦ã€ã‚¿ã‚°ã®å‡ºåŠ›é †ãŒæ±ºã¾ã‚Šã¾ã™ã€‚カスタム・タグã¨æ¨™æº–タグを組ã¿åˆã›ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚標準タグã®ã‚¿ã‚°ãƒ»ã‚ªãƒ—ションã¯ã€é †åºã‚’決定ã™ã‚‹ãŸã‚ã ã‘ã®ãƒ—レースホルダã§ã™ã€‚標準タグã®åå‰ã®ã¿ã‚’å–ã‚Šã¾ã™ã€‚標準タグã®å°è¦‹å‡ºã—ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。ã“れを次ã®ä¾‹ã«ç¤ºã—ã¾ã™ã€‚\fI\-tag\fRオプションを指定ã—ãªã„ã¨ã€\fI\-tagle\fR\fIt\fRオプションã®ä½ç½®ã«ã‚ˆã‚Šã€é †åºãŒæ±ºã¾ã‚Šã¾ã™ã€‚ã‚¿ã‚°ãŒä¸¡æ–¹ã¨ã‚‚存在ã™ã‚‹å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã®æœ€å¾Œã«ã‚ã‚‹æ–¹ãŒãã®é †åºã‚’決定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¿ã‚°ã‚„タグレットãŒã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æŒ‡å®šã•ã‚ŒãŸé †ç•ªã«å‡¦ç†ã•ã‚Œã‚‹ãŸã‚ã§ã™ã€‚ãŸã¨ãˆã°ã€\fI\-taglet\fRãŠã‚ˆã³\fI\-tag\fRオプションãŒåå‰\fItodo\fR値をæŒã¤å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«æœ€å¾Œã«æŒ‡å®šã•ã‚ŒãŸã‚‚ã®ãŒé †åºã‚’決定ã—ã¾ã™ã€‚
+.sp
+\fBã‚¿ã‚°ã®å®Œå…¨ã‚»ãƒƒãƒˆã®ä¾‹\fR: ã“ã®ä¾‹ã§ã¯ã€å‡ºåŠ›ã®Parametersã¨Throwsã®é–“ã«To Doを挿入ã—ã¾ã™ã€‚\fIX\fRを使用ã—ã¦ã€\fI@example\fRã‚¿ã‚°ãŒã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰å†…ã®ä»Šå›žã®å®Ÿè¡Œã§ã¯å‡ºåŠ›ã•ã‚Œãªã„ã‚¿ã‚°ã§ã‚ã‚‹ã“ã¨ã‚‚指定ã—ã¾ã™ã€‚\fI@argfile\fRタグを使用ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚ˆã†ã«ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®åˆ¥ã€…ã®è¡Œã«ã‚¿ã‚°ã‚’é…ç½®ã§ãã¾ã™(è¡Œã®ç¶™ç¶šã‚’示ã™æ–‡å­—ã¯ä¸è¦)。
 .sp
 .if n \{\
 .RS 4
@@ -3206,24 +3206,24 @@
 .if n \{\
 .RE
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥È¤ò²òÀϤ¹¤ëºÝ¤Ë¸¡º÷¤µ¤ì¤¿¥¿¥°¤Î¤¦¤Á¡¢É¸½à¥¿¥°¤Ç¤â¡¢\fI\-tag\fR¤ä\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ÇÅϤµ¤ì¤¿¥¿¥°¤Ç¤â¤Ê¤¤¤â¤Î¤Ï¤¹¤Ù¤ÆÉÔÌÀ¥¿¥°¤È¤ß¤Ê¤µ¤ì¡¢·Ù¹ð¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
-.sp
-ɸ½à¥¿¥°¤Ï¡¢ºÇ½é¡¢¥Ç¥Õ¥©¥ë¥È¤Î½ç½ø¤Ç¥ê¥¹¥ÈÆâ¤ËÆâÉôŪ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¤½¤ì¤é¤Î¥¿¥°¤Ï¤³¤Î¥ê¥¹¥È¤ËÄɲ䵤ì¤Þ¤¹¡£É¸½à¥¿¥°¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î°ÌÃÖ¤«¤é°ÜÆ°¤µ¤ì¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢É¸½à¥¿¥°¤Î\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢¤½¤ì¤Ï¥Ç¥Õ¥©¥ë¥È¤Î°ÌÃÖ¤ËÇÛÃÖ¤µ¤ì¤¿¤Þ¤Þ¤Ë¤Ê¤ê¤Þ¤¹¡£
-.sp
-\fB¶¥¹ç¤Î²óÈò\fR: ¸ÇÍ­¤Î̾Á°¶õ´Ö¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤ë\fIcom\&.mycompany\&.todo\fR¤È¤¤¤¦Ì¾Á°¤Î¤è¤¦¤Ë¡¢¥É¥Ã¥È¤Ç¶èÀÚ¤é¤ì¤¿Ì¾Á°¤ò»ÈÍѤ·¤Þ¤¹¡£Oracle¤Ï¡¢º£¸å¤â̾Á°¤Ë¥É¥Ã¥È¤ò´Þ¤Þ¤Ê¤¤É¸½à¥¿¥°¤òºîÀ®¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤¬ºîÀ®¤·¤¿¥¿¥°¤Ï¡¢Oracle¤¬ÄêµÁ¤¹¤ëƱ¤¸Ì¾Á°¤Î¥¿¥°¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£\fI@todo\fR¤È¤¤¤¦Ì¾Á°¤Î¥¿¥°¤Þ¤¿¤Ï¥¿¥°¥ì¥Ã¥È¤ò¥æ¡¼¥¶¡¼¤¬ºîÀ®¤·¤¿¾ì¹ç¡¢¤½¤Î¸å¤ËOracle¤¬Æ±¤¸Ì¾Á°¤Îɸ½à¥¿¥°¤òºîÀ®¤·¤Æ¤â¡¢¤½¤Î¥¿¥°¤Þ¤¿¤Ï¥¿¥°¥ì¥Ã¥È¤Ï¾ï¤Ë¥æ¡¼¥¶¡¼¤¬ÄêµÁ¤·¤¿¤Î¤ÈƱ¤¸Æ°ºî¤òÊÝ»ý¤·¤Þ¤¹¡£
-.sp
-\fBÃí¼ávs\&. Javadoc¥¿¥°\fR: °ìÈ̤ˡ¢Äɲ乤ëɬÍפΤ¢¤ë¥Þ¡¼¥¯¥¢¥Ã¥×¤¬¡¢¥É¥­¥å¥á¥ó¥È¤Ë±Æ¶Á¤òÍ¿¤¨¤¿¤ê¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤·¤¿¤ê¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¾ì¹ç¡¢¤½¤Î¥Þ¡¼¥¯¥¢¥Ã¥×¤ÏJavadoc¥¿¥°¤Ë¤·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤ÏÃí¼á¤Ë¤·¤Þ¤¹¡£Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡¤Î¥«¥¹¥¿¥à¡¦¥¿¥°¤ÈÃí¼á¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#annotations)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¤è¤êÊ£»¨¤Ê¥Ö¥í¥Ã¥¯¡¦¥¿¥°¤ä¥«¥¹¥¿¥à¡¦¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤âºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドãŒãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã‚’解æžã™ã‚‹éš›ã«æ¤œç´¢ã•ã‚ŒãŸã‚¿ã‚°ã®ã†ã¡ã€æ¨™æº–ã‚¿ã‚°ã§ã‚‚ã€\fI\-tag\fRã‚„\fI\-taglet\fRオプションã§æ¸¡ã•ã‚ŒãŸã‚¿ã‚°ã§ã‚‚ãªã„ã‚‚ã®ã¯ã™ã¹ã¦ä¸æ˜Žã‚¿ã‚°ã¨ã¿ãªã•ã‚Œã€è­¦å‘ŠãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
+.sp
+標準タグã¯ã€æœ€åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®é †åºã§ãƒªã‚¹ãƒˆå†…ã«å†…部的ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚\fI\-tag\fRオプションを使用ã™ã‚‹ã¨ã€ãれらã®ã‚¿ã‚°ã¯ã“ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚標準タグã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ä½ç½®ã‹ã‚‰ç§»å‹•ã•ã‚Œã¾ã™ã€‚ãã®ãŸã‚ã€æ¨™æº–ã‚¿ã‚°ã®\fI\-tag\fRオプションをçœç•¥ã™ã‚‹ã¨ã€ãã‚Œã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ä½ç½®ã«é…ç½®ã•ã‚ŒãŸã¾ã¾ã«ãªã‚Šã¾ã™ã€‚
+.sp
+\fB競åˆã®å›žé¿\fR: 固有ã®åå‰ç©ºé–“を作æˆã™ã‚‹ã«ã¯ã€ãƒ‘ッケージã«ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹\fIcom\&.mycompany\&.todo\fRã¨ã„ã†åå‰ã®ã‚ˆã†ã«ã€ãƒ‰ãƒƒãƒˆã§åŒºåˆ‡ã‚‰ã‚ŒãŸåå‰ã‚’使用ã—ã¾ã™ã€‚Oracleã¯ã€ä»Šå¾Œã‚‚åå‰ã«ãƒ‰ãƒƒãƒˆã‚’å«ã¾ãªã„標準タグを作æˆã—ã¾ã™ã€‚ユーザーãŒä½œæˆã—ãŸã‚¿ã‚°ã¯ã€OracleãŒå®šç¾©ã™ã‚‹åŒã˜åå‰ã®ã‚¿ã‚°ã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚\fI@todo\fRã¨ã„ã†åå‰ã®ã‚¿ã‚°ã¾ãŸã¯ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã‚’ユーザーãŒä½œæˆã—ãŸå ´åˆã€ãã®å¾Œã«OracleãŒåŒã˜åå‰ã®æ¨™æº–タグを作æˆã—ã¦ã‚‚ã€ãã®ã‚¿ã‚°ã¾ãŸã¯ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã¯å¸¸ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒå®šç¾©ã—ãŸã®ã¨åŒã˜å‹•ä½œã‚’ä¿æŒã—ã¾ã™ã€‚
+.sp
+\fB注釈vs\&. Javadocã‚¿ã‚°\fR: 一般ã«ã€è¿½åŠ ã™ã‚‹å¿…è¦ã®ã‚るマークアップãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«å½±éŸ¿ã‚’与ãˆãŸã‚Šãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã—ãŸã‚Šã™ã‚‹ãŸã‚ã®ã‚‚ã®ã§ã‚ã‚‹å ´åˆã€ãã®ãƒžãƒ¼ã‚¯ã‚¢ãƒƒãƒ—ã¯Javadocã‚¿ã‚°ã«ã—ã¾ã™ã€‚ãれ以外ã®å ´åˆã¯æ³¨é‡ˆã«ã—ã¾ã™ã€‚Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã¨æ³¨é‡ˆã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html#annotations)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+\fI\-taglet\fRオプションを使用ã—ã¦ã€ã‚ˆã‚Šè¤‡é›‘ãªãƒ–ロック・タグやカスタム・インライン・タグも作æˆã§ãã¾ã™ã€‚
 .RE
 .PP
 \-taglet \fIclass\fR
 .RS 4
-¤½¤Î¥¿¥°¤Î¥É¥­¥å¥á¥ó¥È¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥É¥Ã¥¯¥ì¥Ã¥È¤òµ¯Æ°¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fIclass\fRÃͤδ°Á´½¤¾þ̾¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥¿¥°¥ì¥Ã¥È¤Ï¡¢¥«¥¹¥¿¥à¡¦¥¿¥°¤Î¥Æ¥­¥¹¥È°ú¿ô¤Î¿ô¤âÄêµÁ¤·¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ï¡¢¤³¤ì¤é¤Î°ú¿ô¤ò¼õ¤±ÉÕ¤±¡¢½èÍý¤·¡¢½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤ÎÎã¤ò»ÈÍѤ·¤¿Ë­É٤ʥɥ­¥å¥á¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥¿¥°¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/taglet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¥¿¥°¥ì¥Ã¥È¤Ï¡¢¥Ö¥í¥Ã¥¯¥¿¥°¤Þ¤¿¤Ï¥¤¥ó¥é¥¤¥ó¡¦¥¿¥°¤ÇÊØÍø¤Ç¤¹¡£¥¿¥°¥ì¥Ã¥È¤ÏǤ°Õ¤Î¿ô¤Î°ú¿ô¤ò¤È¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¥Æ¥­¥¹¥È¤òÂÀ»ú¤Ë¤¹¤ë¡¢²Õ¾ò½ñ¤­¤òºîÀ®¤¹¤ë¡¢¥Æ¥­¥¹¥È¤ò¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹¡¢¤½¤Î¾¤Î¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ê¤É¤Î¥«¥¹¥¿¥àÆ°ºî¤ò¼ÂÁõ¤Ç¤­¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ç»ØÄê¤Ç¤­¤ë¤Î¤Ï¡¢¥¿¥°¤ÎÇÛÃÖ¾ì½ê¤ÈÇÛÃÖ·Á¼°¤Î¤ß¤Ç¤¹¡£¤½¤Î¾¤Î¤¹¤Ù¤Æ¤Î·èÄê¤Ï¡¢¥É¥Ã¥¯¥ì¥Ã¥È¤Ë¤è¤Ã¤Æ¹Ô¤ï¤ì¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤ò»ÈÍѤ·¤Æ¤â¡¢Êñ´Þ¥¯¥é¥¹¤Î¥ê¥¹¥È¤«¤é¥¯¥é¥¹Ì¾¤òºï½ü¤¹¤ë¤Ê¤É¤Î½èÍý¤Ï¼Â¹Ô¤Ç¤­¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥¿¥°¤Î¥Æ¥­¥¹¥È¤ò¥Õ¥¡¥¤¥ë¤Ë½ÐÎϤ·¤¿¤ê¡¢ÊÌ¤Î¥×¥í¥»¥¹¤ò¥È¥ê¥¬¡¼¤¹¤ë¤Ê¤É¤ÎÉûºîÍѤÏÆÀ¤é¤ì¤Þ¤¹¡£¥¿¥°¥ì¥Ã¥È¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fI\-tagletpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤Ë¡¢À¸À®¤µ¤ì¤ë¥Ú¡¼¥¸¤ÎParameters¤ÈThrows¤Î´Ö¤ËTo Do¥¿¥°¥ì¥Ã¥È¤òÁÞÆþ¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢\fI\-taglet\fR¥ª¥×¥·¥ç¥ó¤ò¤½¤Î\fI\-tag\fR¥ª¥×¥·¥ç¥ó¤Î¤«¤ï¤ê¤Ë»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤¬¡¢Æɤ߼è¤ê¤¬º¤Æñ¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ãã®ã‚¿ã‚°ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fIclass\fR値ã®å®Œå…¨ä¿®é£¾åを使用ã—ã¾ã™ã€‚ã“ã®ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã¯ã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°ã®æ•°ã‚‚定義ã—ã¾ã™ã€‚タグレットã¯ã€ã“れらã®å¼•æ•°ã‚’å—ã‘付ã‘ã€å‡¦ç†ã—ã€å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚タグレットã®ä¾‹ã‚’使用ã—ãŸè±Šå¯Œãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¤ã„ã¦ã¯ã€ã‚¿ã‚°ãƒ¬ãƒƒãƒˆã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/taglet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+タグレットã¯ã€ãƒ–ロックタグã¾ãŸã¯ã‚¤ãƒ³ãƒ©ã‚¤ãƒ³ãƒ»ã‚¿ã‚°ã§ä¾¿åˆ©ã§ã™ã€‚タグレットã¯ä»»æ„ã®æ•°ã®å¼•æ•°ã‚’ã¨ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ãƒ†ã‚­ã‚¹ãƒˆã‚’太字ã«ã™ã‚‹ã€ç®‡æ¡æ›¸ãを作æˆã™ã‚‹ã€ãƒ†ã‚­ã‚¹ãƒˆã‚’ファイルã«æ›¸ã出ã™ã€ãã®ä»–ã®ãƒ—ロセスを開始ã™ã‚‹ãªã©ã®ã‚«ã‚¹ã‚¿ãƒ å‹•ä½œã‚’実装ã§ãã¾ã™ã€‚タグレットã§æŒ‡å®šã§ãã‚‹ã®ã¯ã€ã‚¿ã‚°ã®é…置場所ã¨é…置形å¼ã®ã¿ã§ã™ã€‚ãã®ä»–ã®ã™ã¹ã¦ã®æ±ºå®šã¯ã€ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã«ã‚ˆã£ã¦è¡Œã‚ã‚Œã¾ã™ã€‚タグレットを使用ã—ã¦ã‚‚ã€åŒ…å«ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‹ã‚‰ã‚¯ãƒ©ã‚¹åを削除ã™ã‚‹ãªã©ã®å‡¦ç†ã¯å®Ÿè¡Œã§ãã¾ã›ã‚“。ãŸã ã—ã€ã‚¿ã‚°ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’ファイルã«å‡ºåŠ›ã—ãŸã‚Šã€åˆ¥ã®ãƒ—ロセスをトリガーã™ã‚‹ãªã©ã®å‰¯ä½œç”¨ã¯å¾—られã¾ã™ã€‚タグレットã¸ã®ãƒ‘スを指定ã™ã‚‹ã«ã¯ã€\fI\-tagletpath\fRオプションを使用ã—ã¾ã™ã€‚次ã«ã€ç”Ÿæˆã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®Parametersã¨Throwsã®é–“ã«To Doタグレットを挿入ã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚ã¾ãŸã¯ã€\fI\-taglet\fRオプションをãã®\fI\-tag\fRオプションã®ã‹ã‚ã‚Šã«ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ãŒã€èª­ã¿å–ã‚ŠãŒå›°é›£ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3244,67 +3244,67 @@
 .PP
 \-tagletpath \fItagletpathlist\fR
 .RS 4
-taglet¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¤¿¤á¤Î¸¡º÷¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£\fItagletpathlist\fR¤Ë¤Ï¡¢¥³¥í¥ó(:)¤Ç¶èÀڤäÆÊ£¿ô¤Î¥Ñ¥¹¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥¹°Ê²¼¤Î¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤¹¡£
+tagletクラス・ファイルを検索ã™ã‚‹ãŸã‚ã®æ¤œç´¢ãƒ‘スを指定ã—ã¾ã™ã€‚\fItagletpathlist\fRã«ã¯ã€ã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ãƒ‘スをå«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ス以下ã®ã™ã¹ã¦ã®ã‚µãƒ–ディレクトリを検索ã—ã¾ã™ã€‚
 .RE
 .PP
 \-docfilesubdirs
 .RS 4
-doc\-files¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ç¥£¡¼¥×¡¦¥³¥Ô¡¼¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£°¸Àè¤Ë¤Ï¡¢¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤È¤½¤Î¤¹¤Ù¤ÆÆâÍƤ¬ºÆµ¢Åª¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥êoc\-files/example/images¤È¤½¤ÎÆâÍƤ¬¤¹¤Ù¤Æ¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£¤³¤³¤Ç¤â¡¢¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü³°¤¹¤ë»ØÄ꤬²Äǽ¤Ç¤¹¡£
+doc\-filesディレクトリã®ãƒ‡ã‚£ãƒ¼ãƒ—・コピーを有効ã«ã—ã¾ã™ã€‚宛先ã«ã¯ã€ã‚µãƒ–ディレクトリã¨ãã®ã™ã¹ã¦å†…容ãŒå†å¸°çš„ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªoc\-files/example/imagesã¨ãã®å†…容ãŒã™ã¹ã¦ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚ã“ã“ã§ã‚‚ã€ã‚µãƒ–ディレクトリを除外ã™ã‚‹æŒ‡å®šãŒå¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-excludedocfilessubdir \fIname1:name2\fR
 .RS 4
-»ØÄꤵ¤ì¤¿Ì¾Á°¤Îdoc\-files¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¤¹¤Ù¤Æ½ü³°¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢SCCS¤È¤½¤Î¾¤Î¥½¡¼¥¹¡¦¥³¡¼¥ÉÀ©¸æ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Î¥³¥Ô¡¼¤òËɤ®¤Þ¤¹¡£
+指定ã•ã‚ŒãŸåå‰ã®doc\-filesサブディレクトリをã™ã¹ã¦é™¤å¤–ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€SCCSã¨ãã®ä»–ã®ã‚½ãƒ¼ã‚¹ãƒ»ã‚³ãƒ¼ãƒ‰åˆ¶å¾¡ã‚µãƒ–ディレクトリã®ã‚³ãƒ”ーを防ãŽã¾ã™ã€‚
 .RE
 .PP
 \-noqualifier all | \fIpackagename1\fR:\fIpackagename2\&.\&.\&.\fR
 .RS 4
-½ÐÎϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤«¤é½¤¾þ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò¾Êά¤·¤Þ¤¹¡£\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ï¡¢\fIall\fR(¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά)¡¢¤Þ¤¿¤Ï½¤¾þ»Ò¤È¤·¤Æºï½ü¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î¥³¥í¥ó¶èÀÚ¤ê¥ê¥¹¥È(¥ï¥¤¥ë¥É¥«¡¼¥É¤â²Ä)¡¢¤Î¤¤¤º¤ì¤«¤È¤Ê¤ê¤Þ¤¹¡£¥¯¥é¥¹¤Þ¤¿¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹Ì¾¤¬É½¼¨¤µ¤ì¤ë°ÌÃÖ¤«¤é¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬ºï½ü¤µ¤ì¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά¤·¤Þ¤¹¡£\fI\-noqualifier all\fR
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\&.lang\fR¤ª¤è¤Ó\fIjava\&.io\fR¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ò¾Êά¤·¤Þ¤¹:
-\fI\-noqualifier java\&.lang:java\&.io\fR¡£
-.sp
-¼¡¤ÎÎã¤Ç¤Ï¡¢\fIjava\fR¤Ç»Ï¤Þ¤ë¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤ª¤è¤Ó\fIcom\&.sun\fR¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¾Êά¤·¤Þ¤¹¤¬¡¢\fIjavax\fR¤Ï¾Êά¤·¤Þ¤»¤ó¡£\fI\-noqualifier java\&.*:com\&.sun\&.*\fR
-.sp
-¥Ñ¥Ã¥±¡¼¥¸½¤¾þ»Ò¤¬Á°½Ò¤ÎÆ°ºî¤Ë½¾¤Ã¤Æɽ¼¨¤µ¤ì¤ë¾ì¹ç¡¢Ì¾Á°¤ÏŬÀÚ¤Ëû½Ì¤µ¤ì¤Þ¤¹¡£¡Ö̾Á°¤¬É½¼¨¤µ¤ì¤ëÊýË¡¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥ë¡¼¥ë¤Ï¡¢\fI\-noqualifier\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤«¤É¤¦¤«¤Ë¤«¤«¤ï¤é¤ºÍ­¸ú¤Ç¤¹¡£
+出力ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã‹ã‚‰ä¿®é£¾ãƒ‘ッケージåã‚’çœç•¥ã—ã¾ã™ã€‚\fI\-noqualifier\fRオプションã®å¼•æ•°ã¯ã€\fIall\fR(ã™ã¹ã¦ã®ãƒ‘ッケージ修飾å­ã‚’çœç•¥)ã€ã¾ãŸã¯ä¿®é£¾å­ã¨ã—ã¦å‰Šé™¤ã™ã‚‹ãƒ‘ッケージã®ã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆ(ワイルドカードもå¯)ã€ã®ã„ãšã‚Œã‹ã¨ãªã‚Šã¾ã™ã€‚クラスã¾ãŸã¯ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹åãŒè¡¨ç¤ºã•ã‚Œã‚‹ä½ç½®ã‹ã‚‰ãƒ‘ッケージåãŒå‰Šé™¤ã•ã‚Œã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.sp
+次ã®ä¾‹ã§ã¯ã€ã™ã¹ã¦ã®ãƒ‘ッケージ修飾å­ã‚’çœç•¥ã—ã¾ã™ã€‚\fI\-noqualifier all\fR
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\&.lang\fRãŠã‚ˆã³\fIjava\&.io\fRパッケージ修飾å­ã‚’çœç•¥ã—ã¾ã™:
+\fI\-noqualifier java\&.lang:java\&.io\fR。
+.sp
+次ã®ä¾‹ã§ã¯ã€\fIjava\fRã§å§‹ã¾ã‚‹ãƒ‘ッケージ修飾å­ãŠã‚ˆã³\fIcom\&.sun\fRサブパッケージをçœç•¥ã—ã¾ã™ãŒã€\fIjavax\fRã¯çœç•¥ã—ã¾ã›ã‚“。\fI\-noqualifier java\&.*:com\&.sun\&.*\fR
+.sp
+パッケージ修飾å­ãŒå‰è¿°ã®å‹•ä½œã«å¾“ã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹å ´åˆã€åå‰ã¯é©åˆ‡ã«çŸ­ç¸®ã•ã‚Œã¾ã™ã€‚「åå‰ãŒè¡¨ç¤ºã•ã‚Œã‚‹æ–¹æ³•ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ã“ã®ãƒ«ãƒ¼ãƒ«ã¯ã€\fI\-noqualifier\fRオプションを使用ã™ã‚‹ã‹ã©ã†ã‹ã«ã‹ã‹ã‚らãšæœ‰åŠ¹ã§ã™ã€‚
 .RE
 .PP
 \-notimestamp
 .RS 4
-¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬ÍÞÀ©¤µ¤ì¤Þ¤¹¡£³Æ¥Ú¡¼¥¸¤ÎÀèƬ¶á¤¯¤Ë¤¢¤ë¡¢À¸À®¤µ¤ì¤¿HTMLÆâ¤ÎHTML¥³¥á¥ó¥È¤Ç¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬±£¤µ¤ì¤Þ¤¹¡£\fI\-notimestamp\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò2¤Ä¤Î¥½¡¼¥¹¡¦¥Ù¡¼¥¹¤Ç¼Â¹Ô¤·¡¢¤½¤ì¤é¤Î´Ö¤Îº¹Ê¬\fIdiff\fR¤ò¼èÆÀ¤¹¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ë¤è¤ë\fIdiff\fR¤ÎȯÀ¸¤òËɤ°¤«¤é¤Ç¤¹(¤½¤¦¤Ç¤Ê¤¤¤È¤¹¤Ù¤Æ¤Î¥Ú¡¼¥¸¤Ç\fIdiff\fR¤Ë¤Ê¤ê¤Þ¤¹)¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ë¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹Èֹ椬´Þ¤Þ¤ì¡¢¸½ºß¤Ç¤Ï¡¢\fI<!\-\- Generated by javadoc (build 1\&.5\&.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\->\fR¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
+タイムスタンプãŒæŠ‘制ã•ã‚Œã¾ã™ã€‚å„ページã®å…ˆé ­è¿‘ãã«ã‚ã‚‹ã€ç”Ÿæˆã•ã‚ŒãŸHTML内ã®HTMLコメントã§ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ãŒéš ã•ã‚Œã¾ã™ã€‚\fI\-notimestamp\fRオプションã¯ã€\fIjavadoc\fRコマンドを2ã¤ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ™ãƒ¼ã‚¹ã§å®Ÿè¡Œã—ã€ãれらã®é–“ã®å·®åˆ†\fIdiff\fRã‚’å–å¾—ã™ã‚‹å ´åˆã«å½¹ç«‹ã¡ã¾ã™ã€‚タイムスタンプã«ã‚ˆã‚‹\fIdiff\fRã®ç™ºç”Ÿã‚’防ãã‹ã‚‰ã§ã™(ãã†ã§ãªã„ã¨ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã§\fIdiff\fRã«ãªã‚Šã¾ã™)。タイムスタンプã«ã¯\fIjavadoc\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ãŒå«ã¾ã‚Œã€ç¾åœ¨ã§ã¯ã€\fI<!\-\- Generated by javadoc (build 1\&.5\&.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\->\fRã®ã‚ˆã†ã«è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-nocomment
 .RS 4
-¼çÀâÌÀ¤ª¤è¤Ó¤¹¤Ù¤Æ¤Î¥¿¥°¤ò´Þ¤à¥³¥á¥ó¥ÈËÜʸÁ´ÂΤòÍÞÀ©¤·¡¢Àë¸À¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢¸µ¤Ï°Û¤Ê¤ëÌÜŪ¤Î¤¿¤á¤À¤Ã¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òºÆÍøÍѤ·¡¢¿·¤·¤¤¥×¥í¥¸¥§¥¯¥È¤ÎÁᤤÃʳ¬¤Ç¥¹¥±¥ë¥È¥óHTML¥É¥­¥å¥á¥ó¥È¤òºîÀ®¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+主説明ãŠã‚ˆã³ã™ã¹ã¦ã®ã‚¿ã‚°ã‚’å«ã‚€ã‚³ãƒ¡ãƒ³ãƒˆæœ¬æ–‡å…¨ä½“を抑制ã—ã€å®£è¨€ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã‚ˆã‚Šã€å…ƒã¯ç•°ãªã‚‹ç›®çš„ã®ãŸã‚ã ã£ãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†åˆ©ç”¨ã—ã€æ–°ã—ã„プロジェクトã®æ—©ã„段階ã§ã‚¹ã‚±ãƒ«ãƒˆãƒ³HTMLドキュメントを作æˆã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-sourcetab \fItablength\fR
 .RS 4
-¥½¡¼¥¹Æâ¤Ç³Æ¥¿¥Ö¤¬»ÈÍѤ¹¤ë¶õÇòʸ»ú¤Î¿ô¤ò»ØÄꤷ¤Þ¤¹¡£
-.RE
-.SH "¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë"
+ソース内ã§å„タブãŒä½¿ç”¨ã™ã‚‹ç©ºç™½æ–‡å­—ã®æ•°ã‚’指定ã—ã¾ã™ã€‚
+.RE
+.SH "コマンドライン引数ファイル"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤òû¤¯¤·¤¿¤ê´Ê·é¤Ë¤·¤¿¤ê¤¹¤ë¤¿¤á¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ú¿ô(\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò½ü¤¯)¤¬Æþ¤Ã¤¿1¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤³¤È¤òÍøÍѤ¹¤ì¤Ð¡¢¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¾å¤Ç¤â¡¢Ç¤°Õ¤ÎŤµ¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドを短ãã—ãŸã‚Šç°¡æ½”ã«ã—ãŸã‚Šã™ã‚‹ãŸã‚ã«ã€\fIjavadoc\fRコマンドã«å¯¾ã™ã‚‹å¼•æ•°(\fI\-J\fRオプションを除ã)ãŒå…¥ã£ãŸ1ã¤ä»¥ä¸Šã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã“ã¨ã‚’利用ã™ã‚Œã°ã€ã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§ã‚‚ã€ä»»æ„ã®é•·ã•ã®\fIjavadoc\fRコマンドを作æˆã§ãã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIjavac\fR¤Î¥ª¥×¥·¥ç¥ó¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾¤ò¼«Í³¤ËÁȤ߹礻¤Æµ­½Ò¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ°ú¿ô¤Ï¡¢¥¹¥Ú¡¼¥¹¤Þ¤¿¤Ï²þ¹Ô¤Ç¶èÀÚ¤ê¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾¤ËËä¤á¹þ¤Þ¤ì¤¿¶õÇò¤¬¤¢¤ë¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾Á´ÂΤòÆó½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£
+引数ファイルã«ã¯ã€\fIjavac\fRã®ã‚ªãƒ—ションã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åを自由ã«çµ„ã¿åˆã›ã¦è¨˜è¿°ã§ãã¾ã™ã€‚ファイル内ã®å„引数ã¯ã€ã‚¹ãƒšãƒ¼ã‚¹ã¾ãŸã¯æ”¹è¡Œã§åŒºåˆ‡ã‚Šã¾ã™ã€‚ファイルåã«åŸ‹ã‚è¾¼ã¾ã‚ŒãŸç©ºç™½ãŒã‚ã‚‹å ´åˆã€ãƒ•ã‚¡ã‚¤ãƒ«å全体を二é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚
 .PP
-°ú¿ô¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢°ú¿ô¥Õ¥¡¥¤¥ë¤Î°ÌÃ֤ǤϤʤ¯¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥ê¥¹¥È¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É(\fI*\fR)¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢*\&.java¤È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£¥¢¥Ã¥È¥Þ¡¼¥¯(@)¤ò»ÈÍѤ·¤Æ¡¢¥Õ¥¡¥¤¥ë¤òºÆµ¢Åª¤Ë²ò¼á¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤â¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïµ¯Æ°¥Ä¡¼¥ë¤ËÅϤµ¤ì¤Þ¤¹¤¬¡¢µ¯Æ°¥Ä¡¼¥ë¤Ç¤Ï°ú¿ô¥Õ¥¡¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¤«¤é¤Ç¤¹¡£
+引数ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã®ä½ç½®ã§ã¯ãªãã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚ã“れらã®ãƒªã‚¹ãƒˆã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰(\fI*\fR)ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€*\&.javaã¨ã¯æŒ‡å®šã§ãã¾ã›ã‚“。アットマーク(@)を使用ã—ã¦ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å†å¸°çš„ã«è§£é‡ˆã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã¾ãŸã€\fI\-J\fRオプションもサãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯èµ·å‹•ãƒ„ールã«æ¸¡ã•ã‚Œã¾ã™ãŒã€èµ·å‹•ãƒ„ールã§ã¯å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ãªã„ã‹ã‚‰ã§ã™ã€‚
 .PP
-\fIjavadoc\fR¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢³Æ°ú¿ô¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤È¥Õ¥¡¥¤¥ë̾¤ÎÀèƬ¤Ë@ʸ»ú¤òÉÕ¤±¤ÆÅϤ·¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¢¥Ã¥È¥Þ¡¼¥¯(@)ʸ»ú¤Ç»Ï¤Þ¤ë°ú¿ô¤ò¸«¤Ä¤±¤ë¤È¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòŸ³«¤·¤Æ°ú¿ô¥ê¥¹¥È¤ËÁÞÆþ¤·¤Þ¤¹¡£
+\fIjavadoc\fRを実行ã™ã‚‹ã¨ãã«ã€å„引数ファイルã®ãƒ‘スã¨ãƒ•ã‚¡ã‚¤ãƒ«åã®å…ˆé ­ã«@文字を付ã‘ã¦æ¸¡ã—ã¾ã™ã€‚\fIjavadoc\fRコマンドã¯ã€ã‚¢ãƒƒãƒˆãƒžãƒ¼ã‚¯(@)文字ã§å§‹ã¾ã‚‹å¼•æ•°ã‚’見ã¤ã‘ã‚‹ã¨ã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を展開ã—ã¦å¼•æ•°ãƒªã‚¹ãƒˆã«æŒ¿å…¥ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ñ°ì¤Î°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-\fIargfile\fR¤È¤¤¤¦Ì¾Á°¤Î1¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¤¹¤Ù¤Æ¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É°ú¿ô¤òÊÝ»ý¤Ç¤­¤Þ¤¹¡£\fIjavadoc @argfile\fR¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë¡¢¤³¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤Ë¤ÏξÊý¤Î¥Õ¥¡¥¤¥ë¤ÎÆâÍƤ¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fBExample 1\fR, å˜ä¸€ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+\fIargfile\fRã¨ã„ã†åå‰ã®1ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ã™ã¹ã¦ã®\fIjavadoc\fRコマンド引数をä¿æŒã§ãã¾ã™ã€‚\fIjavadoc @argfile\fR次ã®ä¾‹ã«ç¤ºã™ã‚ˆã†ã«ã€ã“ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¯ä¸¡æ–¹ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-\fBExample 2\fR, 2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-¼¡¤Î¤è¤¦¤Ë¡¢2¤Ä¤Î°ú¿ô¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥óÍѤË1¤Ä¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë̾ÍѤË1¤Ä¤Ç¤¹¡£¼¡¤Î¥ê¥¹¥È¤Ç¤Ï¹Ô·Ñ³ʸ»ú¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤»¤ó¡£
-.sp
-¼¡¤ÎÆâÍƤò´Þ¤à¡¢options¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+\fBExample 2\fR, 2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+次ã®ã‚ˆã†ã«ã€2ã¤ã®å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚\fIjavadoc\fRコマンドã®ã‚ªãƒ—ション用ã«1ã¤ã€ãƒ‘ッケージåã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å用ã«1ã¤ã§ã™ã€‚次ã®ãƒªã‚¹ãƒˆã§ã¯è¡Œç¶™ç¶šæ–‡å­—を使用ã—ã¦ã„ã¾ã›ã‚“。
+.sp
+次ã®å†…容をå«ã‚€ã€optionsã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3324,7 +3324,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÆâÍƤò´Þ¤à¡¢packages¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£
+次ã®å†…容をå«ã‚€ã€packagesã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3337,7 +3337,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¤è¤¦¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+次ã®ã‚ˆã†ã«ã€\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3350,9 +3350,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, ¥Ñ¥¹¤ò»ÈÍѤ·¤¿°ú¿ô¥Õ¥¡¥¤¥ë
-.RS 4
-°ú¿ô¥Õ¥¡¥¤¥ë¤Ï¥Ñ¥¹¤ò»ØÄê¤Ç¤­¤Þ¤¹¤¬¡¢¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤Ï¡¢(\fIpath1\fR¤ä\fIpath2\fR¤Ç¤Ï¤Ê¤¯)¼¡¤Î¤è¤¦¤Ë¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËÁêÂÐŪ¤È¤Ê¤ê¤Þ¤¹¡£
+\fBExample 3\fR, パスを使用ã—ãŸå¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«
+.RS 4
+引数ファイルã¯ãƒ‘スを指定ã§ãã¾ã™ãŒã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«åã¯ã€(\fIpath1\fRã‚„\fIpath2\fRã§ã¯ãªã)次ã®ã‚ˆã†ã«ç¾åœ¨ã®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›¸å¯¾çš„ã¨ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3365,9 +3365,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, ¥ª¥×¥·¥ç¥ó°ú¿ô
-.RS 4
-¼¡¤Ë¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤ò°ú¿ô¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£Ä¹¤¤°ú¿ô¤ò»ØÄê¤Ç¤­¤ë¤Î¤Ç¡¢\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¼¡¤Î¤è¤¦¤Ê¥Æ¥­¥¹¥È°ú¿ô¤ò´Þ¤à¡¢bottom¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
+\fBExample 4\fR, オプション引数
+.RS 4
+次ã«ã€\fIjavadoc\fRコマンドã®ã‚ªãƒ—ションã«å¯¾ã™ã‚‹å¼•æ•°ã‚’引数ファイルã«æ ¼ç´ã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚é•·ã„引数を指定ã§ãã‚‹ã®ã§ã€\fI\-bottom\fRオプションを使用ã—ã¾ã™ã€‚次ã®ã‚ˆã†ãªãƒ†ã‚­ã‚¹ãƒˆå¼•æ•°ã‚’å«ã‚€ã€bottomã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3382,37 +3382,37 @@
 .if n \{\
 .RE
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼¡¤Î¤è¤¦¤Ë¼Â¹Ô¤·¤Þ¤¹¡£\fI javadoc \-bottom @bottom @packages\fR
-.sp
-\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤ò°ú¿ô¥Õ¥¡¥¤¥ë¤ÎºÇ½é¤Ë´Þ¤á¤Æ¡¢¼¡¤Î¤è¤¦¤Ë\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£\fIjavadoc @bottom @packages\fR
-.RE
-.SH "JAVADOC¥³¥Þ¥ó¥É¤Î¼Â¹Ô"
+\fIjavadoc\fRコマンドを次ã®ã‚ˆã†ã«å®Ÿè¡Œã—ã¾ã™ã€‚\fI javadoc \-bottom @bottom @packages\fR
+.sp
+\fI\-bottom\fRオプションを引数ファイルã®æœ€åˆã«å«ã‚ã¦ã€æ¬¡ã®ã‚ˆã†ã«\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚\fIjavadoc @bottom @packages\fR
+.RE
+.SH "JAVADOCコマンドã®å®Ÿè¡Œ"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹ÈÖ¹æ¤Ï\fIjavadoc \-J\-version\fR¥ª¥×¥·¥ç¥ó¤ÇÆÃÄê¤Ç¤­¤Þ¤¹¡£½ÐÎÏ¥¹¥È¥ê¡¼¥à¤Ë¤Ïɸ½à¥É¥Ã¥¯¥ì¥Ã¥È¤Î¥ê¥ê¡¼¥¹Èֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£\fI\-quiet\fR¥ª¥×¥·¥ç¥ó¤Ç̵¸ú¤Ë¤Ç¤­¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ã¯\fIjavadoc \-J\-version\fRオプションã§ç‰¹å®šã§ãã¾ã™ã€‚出力ストリームã«ã¯æ¨™æº–ドックレットã®ãƒªãƒªãƒ¼ã‚¹ç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚\fI\-quiet\fRオプションã§ç„¡åŠ¹ã«ã§ãã¾ã™ã€‚
 .PP
-Java¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤«¤é\fIjavadoc\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¸ø³«¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï\fIcom\&.sun\&.tools\&.javadoc\&.Main\fR¤Ë¤¢¤ê¤Þ¤¹(¤Þ¤¿\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏºÆÆþ²Äǽ¤Ç¤¹)¡£¾ÜºÙ¤Ï¡¢É¸½à¥É¥Ã¥¯¥ì¥Ã¥È
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/standard\-doclet\&.html#runningprogrammatically)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java言語ã§è¨˜è¿°ã•ã‚ŒãŸãƒ—ログラムã‹ã‚‰\fIjavadoc\fRコマンドを起動ã™ã‚‹ã«ã¯å…¬é–‹ãƒ—ログラマティック・インタフェースを使用ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯\fIcom\&.sun\&.tools\&.javadoc\&.Main\fRã«ã‚ã‚Šã¾ã™(ã¾ãŸ\fIjavadoc\fRコマンドã¯å†å…¥å¯èƒ½ã§ã™)。詳細ã¯ã€æ¨™æº–ドックレット
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/standard\-doclet\&.html#runningprogrammatically)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¼¡¤Î¼ê½ç¤Ç¤Ï¡¢É¸½àHTML¥É¥Ã¥¯¥ì¥Ã¥È¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¥«¥¹¥¿¥à¡¦¥É¥Ã¥¯¥ì¥Ã¥È¤ò¸Æ¤Ó½Ð¤¹¤Ë¤Ï¡¢\fI\-doclet\fR¤ª¤è¤Ó\fI\-docletpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¥É¥Ã¥¯¥ì¥Ã¥È¤Î³µÍ×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SS "´Êñ¤ÊÎã"
+次ã®æ‰‹é †ã§ã¯ã€æ¨™æº–HTMLドックレットを呼ã³å‡ºã—ã¾ã™ã€‚カスタム・ドックレットを呼ã³å‡ºã™ã«ã¯ã€\fI\-doclet\fRãŠã‚ˆã³\fI\-docletpath\fRオプションを使用ã—ã¾ã™ãƒ‰ãƒƒã‚¯ãƒ¬ãƒƒãƒˆã®æ¦‚è¦
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/doclet/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SS "ç°¡å˜ãªä¾‹"
 .PP
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤËÂФ·¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤â¡¢¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£³Æ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÂбþ¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê̾¤ò»ý¤Á¤Þ¤¹¡£
+\fIjavadoc\fRコマンドã¯ã€ãƒ‘ッケージ全体ã«å¯¾ã—ã¦å®Ÿè¡Œã™ã‚‹ã“ã¨ã‚‚ã€å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦å®Ÿè¡Œã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚å„パッケージåã¯ã€ãã‚Œãžã‚Œã®ãƒ‘ッケージåã«å¯¾å¿œã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåã‚’æŒã¡ã¾ã™ã€‚
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï/home/src/java/awt/*\&.java¤Ë¤¢¤ê¤Þ¤¹¡£À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤Ï/home/html¤Ç¤¹¡£
-1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¥Ñ¥Ã¥±¡¼¥¸¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Ë¤Ï¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤ÈƱ¤¸Ì¾Á°¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë³ÊǼ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯/home/src/java/awt/*\&.javaã«ã‚ã‚Šã¾ã™ã€‚生æˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¯/home/htmlã§ã™ã€‚
+1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+パッケージをドキュメント化ã™ã‚‹ã«ã¯ã€ãã®ãƒ‘ッケージã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ãã®ãƒ‘ッケージã¨åŒã˜åå‰ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«æ ¼ç´ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¥Ñ¥Ã¥±¡¼¥¸Ì¾¤¬(\fIjava\&.awt\&.color\fR¤Î¤è¤¦¤Ë¥É¥Ã¥È¤Ç¶èÀÚ¤é¤ì¤¿)Ê£¿ô¤Î¼±Ê̻Ҥ«¤é¹½À®¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¸å³¤Î³Æ¼±Ê̻Ҥ¬²¼°Ì¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(ava/awt/color¤Ê¤É)¤ËÂбþ¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+パッケージåãŒ(\fIjava\&.awt\&.color\fRã®ã‚ˆã†ã«ãƒ‰ãƒƒãƒˆã§åŒºåˆ‡ã‚‰ã‚ŒãŸ)複数ã®è­˜åˆ¥å­ã‹ã‚‰æ§‹æˆã•ã‚Œã¦ã„ã‚‹å ´åˆã€å¾Œç¶šã®å„識別å­ãŒä¸‹ä½ã®ã‚µãƒ–ディレクトリ(ava/awt/colorãªã©)ã«å¯¾å¿œã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-1¤Ä¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¤¿¤á¤ÎÊ£¿ô¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢°Û¤Ê¤ë¾ì½ê¤Ë¤¢¤ë¤½¤Î¤è¤¦¤Ê2¤Ä¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¦¥Ä¥ê¡¼¤Ëʬ¤±¤Æ³ÊǼ¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤½¤Î¾ì¹ç¤Ï\fI\-sourcepath\fR¤Ë¤è¤Ã¤Æ¤½¤ÎξÊý¤Î¾ì½ê¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢src1/java/awt/color¤Èsrc2/java/awt/color¡£
+1ã¤ã®ãƒ‘ッケージã®ãŸã‚ã®è¤‡æ•°ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ç•°ãªã‚‹å ´æ‰€ã«ã‚ã‚‹ãã®ã‚ˆã†ãª2ã¤ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ»ãƒ„リーã«åˆ†ã‘ã¦æ ¼ç´ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ãã®å ´åˆã¯\fI\-sourcepath\fRã«ã‚ˆã£ã¦ãã®ä¸¡æ–¹ã®å ´æ‰€ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€src1/java/awt/colorã¨src2/java/awt/color。
 .PP
-¥Ç¥£¥ì¥¯¥È¥ê¤ÎÊѹ¹(\fIcd\fR¥³¥Þ¥ó¥É¤ò»ÈÍÑ)¤Þ¤¿¤Ï\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¼¡¤ÎÎã¤ÇξÊý¤ÎÁªÂò»è¤ò¼¨¤·¤Þ¤¹¡£
+ディレクトリã®å¤‰æ›´(\fIcd\fRコマンドを使用)ã¾ãŸã¯\fI\-sourcepath\fRオプションã«ã‚ˆã‚Šã€\fIjavadoc\fRコマンドを実行ã§ãã¾ã™ã€‚次ã®ä¾‹ã§ä¸¡æ–¹ã®é¸æŠžè‚¢ã‚’示ã—ã¾ã™ã€‚
 .PP
-\fBExample 1\fR, 1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤«¤éºÆµ¢Åª¤Ë¼Â¹Ô
-.RS 4
-¤³¤ÎÎã¤Ç¤Ï\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬Ç¤°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¡¢\fI\-sourcepath\fR¤ò»ÈÍѤ·¡¢ºÆµ¢Åª½èÍý¤Î¤¿¤á¤Ë\fI\-subpackages\fR
-(1\&.4¤Î¿·¥ª¥×¥·¥ç¥ó)¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ì¤Ï¡¢java¥Ç¥£¥ì¥¯¥È¥ê¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤ò¤¿¤É¤ê¤Þ¤¹¤¬¡¢\fIjava\&.net\fR¤È\fIjava\&.lang\fR¤ò¥ë¡¼¥È¤Ë»ý¤Ä¥Ñ¥Ã¥±¡¼¥¸¤Ï½ü³°¤µ¤ì¤Þ¤¹¡£\fIjava\&.lang\fR¤Î¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Ç¤¢¤ë\fIjava\&.lang\&.ref\fR¤¬½ü³°¤µ¤ì¤ëÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤ò²¼Êý¤Ë¤¿¤É¤ë¤Ë¤Ï¡¢\fIjava:javax:org\&.xml\&.sax\fR¤Î¤è¤¦¤Ë¡¢¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò\fI\-subpackages\fR¤Î°ú¿ô¤ËÄɲä·¤Þ¤¹¡£
+\fBExample 1\fR, 1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã‹ã‚‰å†å¸°çš„ã«å®Ÿè¡Œ
+.RS 4
+ã“ã®ä¾‹ã§ã¯\fIjavadoc\fRコマンドãŒä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œã§ãるよã†ã«ã€\fI\-sourcepath\fRを使用ã—ã€å†å¸°çš„処ç†ã®ãŸã‚ã«\fI\-subpackages\fR
+(1\&.4ã®æ–°ã‚ªãƒ—ション)を使用ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€javaディレクトリã®ã‚µãƒ–パッケージをãŸã©ã‚Šã¾ã™ãŒã€\fIjava\&.net\fRã¨\fIjava\&.lang\fRをルートã«æŒã¤ãƒ‘ッケージã¯é™¤å¤–ã•ã‚Œã¾ã™ã€‚\fIjava\&.lang\fRã®ã‚µãƒ–パッケージã§ã‚ã‚‹\fIjava\&.lang\&.ref\fRãŒé™¤å¤–ã•ã‚Œã‚‹ç‚¹ã«æ³¨æ„ã—ã¦ãã ã•ã„。ã¾ãŸã€ä»–ã®ãƒ‘ッケージ・ツリーを下方ã«ãŸã©ã‚‹ã«ã¯ã€\fIjava:javax:org\&.xml\&.sax\fRã®ã‚ˆã†ã«ã€ãれらã®ãƒ‘ッケージã®åå‰ã‚’\fI\-subpackages\fRã®å¼•æ•°ã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3425,9 +3425,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥ë¡¼¥È¤Ø¤Î°ÜÆ°¤ª¤è¤ÓÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤Î¼Â¹Ô
-.RS 4
-´°Á´½¤¾þ¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤·¤Þ¤¹¡£¼¡¤Ë¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fBExample 2\fR, ルートã¸ã®ç§»å‹•ãŠã‚ˆã³æ˜Žç¤ºçš„ãªãƒ‘ッケージã®å®Ÿè¡Œ
+.RS 4
+完全修飾ã•ã‚ŒãŸãƒ‘ッケージã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»å‹•ã—ã¾ã™ã€‚次ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3439,12 +3439,12 @@
 .if n \{\
 .RE
 .\}
-¤Þ¤¿¡¢Â¾¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥Ä¥ê¡¼¤ò²¼Êý¤Ë¤¿¤É¤ë¤Ë¤Ï¡¢j\fIava:javax:org\&.xml\&.sax\fR¤Î¤è¤¦¤Ë¡¢¤½¤ì¤é¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò\fI\-subpackages\fR¤Î°ú¿ô¤ËÄɲä·¤Þ¤¹¡£
+ã¾ãŸã€ä»–ã®ãƒ‘ッケージ・ツリーを下方ã«ãŸã©ã‚‹ã«ã¯ã€j\fIava:javax:org\&.xml\&.sax\fRã®ã‚ˆã†ã«ã€ãれらã®ãƒ‘ッケージã®åå‰ã‚’\fI\-subpackages\fRã®å¼•æ•°ã«è¿½åŠ ã—ã¾ã™ã€‚
 .RE
 .PP
-\fBExample 3\fR, 1¤Ä¤Î¥Ä¥ê¡¼¤ÎÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤ÎǤ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô
-.RS 4
-¤³¤Î¾ì¹ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬¤É¤³¤«¤ÏÌäÂê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢ºÇ¾å°Ì¥Ñ¥Ã¥±¡¼¥¸¤Î¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Æ\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
+\fBExample 3\fR, 1ã¤ã®ãƒ„リーã®æ˜Žç¤ºçš„ãªãƒ‘ッケージã®ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œ
+.RS 4
+ã“ã®å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒã©ã“ã‹ã¯å•é¡Œã§ã¯ã‚ã‚Šã¾ã›ã‚“。\fIjavadoc\fRコマンドを実行ã—ã€æœ€ä¸Šä½ãƒ‘ッケージã®è¦ªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¦\fI\-sourcepath\fRオプションを使用ã—ã¾ã™ã€‚ドキュメント化ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3457,9 +3457,9 @@
 .\}
 .RE
 .PP
-\fBExample 4\fR, Ê£¿ô¤Î¥Ä¥ê¡¼¤ÎÌÀ¼¨Åª¤Ê¥Ñ¥Ã¥±¡¼¥¸¤ÎǤ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¼Â¹Ô
-.RS 4
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢³Æ¥Ä¥ê¡¼¤Î¥ë¡¼¥È¤Ø¤Î¥Ñ¥¹¤Î¥³¥í¥ó¶èÀÚ¤ê¥ê¥¹¥È¤ò»ØÄꤷ¤Æ\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¡¢1¤Ä¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ë¸ºß¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¤¬¡¢¥½¡¼¥¹¡¦¥Ñ¥¹¤Ç»ØÄꤵ¤ì¤¿¾ì½ê¤Î¤É¤³¤«¤Ç¸«¤Ä¤«¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fBExample 4\fR, 複数ã®ãƒ„リーã®æ˜Žç¤ºçš„ãªãƒ‘ッケージã®ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰å®Ÿè¡Œ
+.RS 4
+\fIjavadoc\fRコマンドを実行ã—ã€å„ツリーã®ãƒ«ãƒ¼ãƒˆã¸ã®ãƒ‘スã®ã‚³ãƒ­ãƒ³åŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã‚’指定ã—ã¦\fI\-sourcepath\fRオプションを使用ã—ã¾ã™ã€‚ドキュメント化ã™ã‚‹1ã¤ä»¥ä¸Šã®ãƒ‘ッケージã®åå‰ã‚’指定ã—ã¾ã™ã€‚指定ã—ãŸãƒ‘ッケージã®ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€1ã¤ã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ä¸‹ã«å­˜åœ¨ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ‘スã§æŒ‡å®šã•ã‚ŒãŸå ´æ‰€ã®ã©ã“ã‹ã§è¦‹ã¤ã‹ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3470,16 +3470,16 @@
 .if n \{\
 .RE
 .\}
-¤¹¤Ù¤Æ¤Î¥±¡¼¥¹¤Çj\fIava\&.awt\fR¤ª¤è¤Ó\fIjava\&.awt\&.even\fRt¥Ñ¥Ã¥±¡¼¥¸Æâ¤Î\fIpublic\fR¤ª¤è¤Ó\fIprotected\fR¥¯¥é¥¹¤È¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤Ä¤¤¤Æ¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢»ØÄꤵ¤ì¤¿À¸À®Àè¥Ç¥£¥ì¥¯¥È¥ê¤ËHTML¥Õ¥¡¥¤¥ë¤¬Êݸ¤µ¤ì¤Þ¤¹¡£2¤Ä°Ê¾å¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬À¸À®¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥É¥­¥å¥á¥ó¥È¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Î¥ê¥¹¥È¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¡¢¤ª¤è¤Ó¥á¥¤¥ó¤Î¥¯¥é¥¹¡¦¥Ú¡¼¥¸¤È¤¤¤¦3¤Ä¤ÎHTML¥Õ¥ì¡¼¥à¤ò»ý¤Ä¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
-.RE
-1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¤Þ¤¿¡¢1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ·¤Æ¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£\fIjavadoc\fR¤Ï¡¢¼¡¤Î2¤Ä¤ÎÊýË¡¤Î¤¤¤º¤ì¤«¤Ç¼Â¹Ô¤Ç¤­¤Þ¤¹¡£1¤Ä¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤òÊѹ¹¤¹¤ëÊýË¡(\fIcd\fR¤ò»ÈÍÑ)¡¢¤â¤¦1¤Ä¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò´°Á´¤Ë»ØÄꤹ¤ëÊýË¡¤Ç¤¹¡£ÁêÂХѥ¹¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òµ¯ÅÀ¤È¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÅϤ¹¤È¤­¤Ï¡¢\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¹¤Î¥°¥ë¡¼¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚±ãƒ¼ã‚¹ã§j\fIava\&.awt\fRãŠã‚ˆã³\fIjava\&.awt\&.even\fRtパッケージ内ã®\fIpublic\fRãŠã‚ˆã³\fIprotected\fRクラスã¨ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã«ã¤ã„ã¦ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€æŒ‡å®šã•ã‚ŒãŸç”Ÿæˆå…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«HTMLファイルãŒä¿å­˜ã•ã‚Œã¾ã™ã€‚2ã¤ä»¥ä¸Šã®ãƒ‘ッケージãŒç”Ÿæˆã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€ãƒ‘ッケージã®ãƒªã‚¹ãƒˆã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã€ãŠã‚ˆã³ãƒ¡ã‚¤ãƒ³ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã¨ã„ã†3ã¤ã®HTMLフレームをæŒã¤ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
+.RE
+1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+ã¾ãŸã€1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’渡ã—ã¦ã€\fIjavadoc\fRコマンドを実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚\fIjavadoc\fRã¯ã€æ¬¡ã®2ã¤ã®æ–¹æ³•ã®ã„ãšã‚Œã‹ã§å®Ÿè¡Œã§ãã¾ã™ã€‚1ã¤ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’変更ã™ã‚‹æ–¹æ³•(\fIcd\fRを使用)ã€ã‚‚ã†1ã¤ã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®ãƒ‘スを完全ã«æŒ‡å®šã™ã‚‹æ–¹æ³•ã§ã™ã€‚相対パスã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’起点ã¨ã—ã¾ã™ã€‚ソース・ファイルを渡ã™ã¨ãã¯ã€\fI\-sourcepath\fRオプションã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚アスタリスク(*)ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã‚’使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ã®ã‚°ãƒ«ãƒ¼ãƒ—を指定ã§ãã¾ã™ã€‚
 .PP
-\fBExample 1\fR, ¥½¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹
-.RS 4
-¥½¡¼¥¹¤òÊÝ»ý¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹¤·¤Þ¤¹¡£¼¡¤Ë¡¢¥É¥­¥å¥á¥ó¥È²½¤¹¤ë1¤Ä°Ê¾å¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.sp
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIButton\fR¥¯¥é¥¹¤È\fICanvas\fR¥¯¥é¥¹¡¢¤ª¤è¤Ó̾Á°¤¬\fIGraphics\fR¤Ç»Ï¤Þ¤ë¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¡¢HTML·Á¼°¤Î¥É¥­¥å¥á¥ó¥È¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤Ï¤Ê¤¯¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤¬\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥É¥­¥å¥á¥ó¥È¤Ï¡¢¥¯¥é¥¹¤Î¥ê¥¹¥È¤È¥á¥¤¥ó¡¦¥Ú¡¼¥¸¤È¤¤¤¦2¤Ä¤Î¥Õ¥ì¡¼¥à¤ò»ý¤Ä¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBExample 1\fR, ソース・ディレクトリã«å¤‰æ›´
+.RS 4
+ソースをä¿æŒã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¤‰æ›´ã—ã¾ã™ã€‚次ã«ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹1ã¤ä»¥ä¸Šã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
+.sp
+ã“ã®ä¾‹ã§ã¯ã€\fIButton\fRクラスã¨\fICanvas\fRクラスã€ãŠã‚ˆã³åå‰ãŒ\fIGraphics\fRã§å§‹ã¾ã‚‹ã‚¯ãƒ©ã‚¹ã«ã¤ã„ã¦ã€HTMLå½¢å¼ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚パッケージåã§ã¯ãªãソース・ファイルãŒ\fIjavadoc\fRコマンドã«å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã¨ãƒ¡ã‚¤ãƒ³ãƒ»ãƒšãƒ¼ã‚¸ã¨ã„ã†2ã¤ã®ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’æŒã¤ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3493,9 +3493,9 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹
-.RS 4
-¤³¤ì¤Ï¡¢Æ±¤¸¥ë¡¼¥È¤«¤é¤ÎÊ̤Υµ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤Î¸Ä¡¹¤Î¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£¥Ñ¥Ã¥±¡¼¥¸¤Î¥ë¡¼¥È¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤ê¡¢³Æ¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¡¢¥ë¡¼¥È¤«¤é¤Î¥Ñ¥¹¤È¤È¤â¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fBExample 2\fR, パッケージã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¤‰æ›´
+.RS 4
+ã“ã‚Œã¯ã€åŒã˜ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®åˆ¥ã®ã‚µãƒ–パッケージã®å€‹ã€…ã®ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ドキュメント化ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚パッケージã®ãƒ«ãƒ¼ãƒˆãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç§»ã‚Šã€å„ソース・ファイルをã€ãƒ«ãƒ¼ãƒˆã‹ã‚‰ã®ãƒ‘スã¨ã¨ã‚‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3509,9 +3509,9 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, Ǥ°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤Î¥Õ¥¡¥¤¥ë¤Î¥É¥­¥å¥á¥ó¥È²½
-.RS 4
-¤³¤Î¾ì¹ç¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬¤É¤³¤«¤ÏÌäÂê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ø¤ÎÀäÂХѥ¹(¤Þ¤¿¤Ï¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹)¤ò»ØÄꤷ¤Æ\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fBExample 3\fR, ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–
+.RS 4
+ã“ã®å ´åˆã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒã©ã“ã‹ã¯å•é¡Œã§ã¯ã‚ã‚Šã¾ã›ã‚“。ドキュメント化ã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¸ã®çµ¶å¯¾ãƒ‘ス(ã¾ãŸã¯ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰ã®ç›¸å¯¾ãƒ‘ス)を指定ã—ã¦\fIjavadoc\fRコマンドを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3524,8 +3524,8 @@
 .RE
 .\}
 .RE
-¥Ñ¥Ã¥±¡¼¥¸¤ª¤è¤Ó¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È²½.PP
-¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤȸġ¹¤Î¥¯¥é¥¹¤òƱ»þ¤Ë»ØÄꤷ¤Æ¥É¥­¥å¥á¥ó¥È²½¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¼¡¤Ë¡¢Á°½Ò¤Î2¤Ä¤ÎÎã¤òÁȤ߹礻¤¿Îã¤ò¼¨¤·¤Þ¤¹¡£\fI\-sourcepath\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸¤Ø¤Î¥Ñ¥¹¤ËÂФ·¤Æ¤Ï»ÈÍѤǤ­¤Þ¤¹¤¬¡¢¸Ä¡¹¤Î¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ËÂФ·¤Æ¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£
+パッケージãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–.PP
+パッケージ全体ã¨å€‹ã€…ã®ã‚¯ãƒ©ã‚¹ã‚’åŒæ™‚ã«æŒ‡å®šã—ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆåŒ–ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚次ã«ã€å‰è¿°ã®2ã¤ã®ä¾‹ã‚’組ã¿åˆã›ãŸä¾‹ã‚’示ã—ã¾ã™ã€‚\fI\-sourcepath\fRオプションã¯ã€ãƒ‘ッケージã¸ã®ãƒ‘スã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã™ãŒã€å€‹ã€…ã®ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スã«å¯¾ã—ã¦ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .sp
 .if n \{\
 .RS 4
@@ -3537,14 +3537,14 @@
 .if n \{\
 .RE
 .\}
-.SS "¼ÂºÝ¤ÎÎã"
+.SS "実際ã®ä¾‹"
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤ª¤è¤Ó\fImakefile\fR¥Ð¡¼¥¸¥ç¥ó¤Î\fIjavadoc\fR¥³¥Þ¥ó¥É¤òJava¥×¥é¥Ã¥È¥Õ¥©¡¼¥àAPI¤Ç¼Â¹Ô¤·¤Þ¤¹¡£Java SE 1\&.2¤ÇÌó1500¸Ä¤Îpublic¤ª¤è¤Óprotected¥¯¥é¥¹¤Î¥É¥­¥å¥á¥ó¥È¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢180MB¤Î¥á¥â¥ê¡¼¤ò»ÈÍѤ·¤Þ¤¹¡£¤É¤Á¤é¤ÎÎã¤â¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤ÇÀäÂХѥ¹¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤¿¤á¡¢Ç¤°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤éƱ¤¸\fIjavadoc\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÎÎã.PP
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ìÉô¤Î¥·¥§¥ë¤ËÂФ·¤ÆŤ¹¤®¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÀ©¸Â¤ò²óÈò¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤òµ­½Ò¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãŠã‚ˆã³\fImakefile\fRãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®\fIjavadoc\fRコマンドをJavaプラットフォームAPIã§å®Ÿè¡Œã—ã¾ã™ã€‚Java SE 1\&.2ã§ç´„1500個ã®publicãŠã‚ˆã³protectedクラスã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’生æˆã™ã‚‹ã«ã¯ã€180MBã®ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’使用ã—ã¾ã™ã€‚ã©ã¡ã‚‰ã®ä¾‹ã‚‚オプションã®å¼•æ•°ã§çµ¶å¯¾ãƒ‘スãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€ä»»æ„ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‹ã‚‰åŒã˜\fIjavadoc\fRコマンドを実行ã§ãã¾ã™ã€‚
+コマンドラインã®ä¾‹.PP
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä¸€éƒ¨ã®ã‚·ã‚§ãƒ«ã«å¯¾ã—ã¦é•·ã™ãŽã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®åˆ¶é™ã‚’回é¿ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¾ã™ã€‚ã¾ãŸã¯ã€ã‚·ã‚§ãƒ«ãƒ»ã‚¹ã‚¯ãƒªãƒ—トを記述ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢\fIpackages\fR¤Ï½èÍý¤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à̾Á°¤Ç¡¢\fIjava\&.applet\fR
-\fIjava\&.lang\fR¤Ê¤É¤Ç¤¹¡£³Æ¥ª¥×¥·¥ç¥ó¤Î¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤Þ¤ì¤¿°ú¿ô¤ÎÆ⦤ˤϡ¢²þ¹Ôʸ»ú¤òÁÞÆþ¤Ç¤­¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¤³¤ÎÎã¤ò¥³¥Ô¡¼¡¦¥¢¥ó¥É¡¦¥Ú¡¼¥¹¥È¤¹¤ë¾ì¹ç¤Ï¡¢\fI\-bottom\fR¥ª¥×¥·¥ç¥ó¤«¤é²þ¹Ôʸ»ú¤òºï½ü¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®ä¾‹ã§ã¯ã€\fIpackages\fRã¯å‡¦ç†ã™ã‚‹ãƒ‘ッケージをå«ã‚€åå‰ã§ã€\fIjava\&.applet\fR
+\fIjava\&.lang\fRãªã©ã§ã™ã€‚å„オプションã®ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã¾ã‚ŒãŸå¼•æ•°ã®å†…å´ã«ã¯ã€æ”¹è¡Œæ–‡å­—を挿入ã§ãã¾ã›ã‚“。ãŸã¨ãˆã°ã€ã“ã®ä¾‹ã‚’コピー・アンド・ペーストã™ã‚‹å ´åˆã¯ã€\fI\-bottom\fRオプションã‹ã‚‰æ”¹è¡Œæ–‡å­—を削除ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -3571,10 +3571,10 @@
 .if n \{\
 .RE
 .\}
-¥×¥í¥°¥é¥Þ¥Æ¥£¥Ã¥¯¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹.PP
-Javadoc Access API¤Ç¤Ï¡¢¿·¤·¤¤¥×¥í¥»¥¹¤ò¼Â¹Ô¤·¤Ê¤¯¤Æ¤â¡¢Javadoc¥Ä¡¼¥ë¤òJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤«¤éľÀܵ¯Æ°¤Ç¤­¤Þ¤¹¡£
+プログラマティック・インタフェース.PP
+Javadoc Access APIã§ã¯ã€æ–°ã—ã„プロセスを実行ã—ãªãã¦ã‚‚ã€JavadocツールをJavaアプリケーションã‹ã‚‰ç›´æŽ¥èµ·å‹•ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¼¡¤Îʸ¤Ï¥³¥Þ¥ó¥É\fIjavadoc \-d /home/html \-sourcepath /home/src \-subpackages java \-exclude java\&.net:java\&.lang com\&.example\fR¤ÈƱÅù¤Ç¤¹¡£
+ãŸã¨ãˆã°ã€æ¬¡ã®æ–‡ã¯ã‚³ãƒžãƒ³ãƒ‰\fIjavadoc \-d /home/html \-sourcepath /home/src \-subpackages java \-exclude java\&.net:java\&.lang com\&.example\fRã¨åŒç­‰ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -3599,13 +3599,13 @@
 .RE
 .\}
 .PP
-\fIrun\fR¥á¥½¥Ã¥É¤ÎºÇ½é¤Î3¤Ä¤Î°ú¿ô¤Ï¡¢ÆþÎÏ¡¢É¸½à½ÐÎÏ¡¢¤ª¤è¤Óɸ½à¥¨¥é¡¼¡¦¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤Þ¤¹¡£\fINull\fR¤Ï\fISystem\&.in\fR¡¢\fISystem\&.out\fR¤ª¤è¤Ó\fISystem\&.err\fR¤½¤ì¤¾¤ì¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤǤ¹¡£
-.SS "makefile¤ÎÎã"
+\fIrun\fRメソッドã®æœ€åˆã®3ã¤ã®å¼•æ•°ã¯ã€å…¥åŠ›ã€æ¨™æº–出力ã€ãŠã‚ˆã³æ¨™æº–エラー・ストリームを指定ã—ã¾ã™ã€‚\fINull\fRã¯\fISystem\&.in\fRã€\fISystem\&.out\fRãŠã‚ˆã³\fISystem\&.err\fRãã‚Œãžã‚Œã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã§ã™ã€‚
+.SS "makefileã®ä¾‹"
 .PP
-¤³¤³¤Ç¤Ï¡¢GNU
-\fImakefile\fR¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fImakefile\fR¤Î°ú¿ô¤Ï¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤ß¤Þ¤¹¡£Windows
-\fImakefile\fR¤ÎÎã¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc FAQ¤Î\fImakefiles\fR¤Ë´Ø¤¹¤ë¹à
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html#makefiles)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+ã“ã“ã§ã¯ã€GNU
+\fImakefile\fRã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fImakefile\fRã®å¼•æ•°ã¯ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã¿ã¾ã™ã€‚Windows
+\fImakefile\fRã®ä¾‹ã«ã¤ã„ã¦ã¯ã€Javadoc FAQã®\fImakefiles\fRã«é–¢ã™ã‚‹é …
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html#makefiles)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
 .if n \{\
 .RS 4
@@ -3642,7 +3642,7 @@
 .if n \{\
 .RE
 .\}
-.SS "Ãí°Õ"
+.SS "注æ„"
 .sp
 .RS 4
 .ie n \{\
@@ -3652,7 +3652,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¥É¥­¥å¥á¥ó¥È¡¦¥¿¥¤¥È¥ë¤¬¥¦¥£¥ó¥É¥¦¡¦¥¿¥¤¥È¥ë¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£\fI\-windowtitle\fR¥ª¥×¥·¥ç¥ó¤Î¥Æ¥­¥¹¥È¤Ï¡¢\fI\-doctitle\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤Ç¤¹¤¬¡¢HTML¥¿¥°¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤³¤ì¤Ï¡¢HTML¥¿¥°¤¬¡¢¥¦¥£¥ó¥É¥¦¡¦¥¿¥¤¥È¥ëÆâ¤Ë¤½¤Î¤Þ¤Þ¤Î¥Æ¥­¥¹¥È¤È¤·¤Æɽ¼¨¤µ¤ì¤ë¤Î¤òËɤ°¤¿¤á¤Ç¤¹¡£
+\fI\-windowtitle\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãƒ»ã‚¿ã‚¤ãƒˆãƒ«ãŒã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ»ã‚¿ã‚¤ãƒˆãƒ«ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚\fI\-windowtitle\fRオプションã®ãƒ†ã‚­ã‚¹ãƒˆã¯ã€\fI\-doctitle\fRオプションã¨åŒã˜ã§ã™ãŒã€HTMLã‚¿ã‚°ã¯å«ã¾ã‚Œã¾ã›ã‚“。ã“ã‚Œã¯ã€HTMLã‚¿ã‚°ãŒã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ãƒ»ã‚¿ã‚¤ãƒˆãƒ«å†…ã«ãã®ã¾ã¾ã®ãƒ†ã‚­ã‚¹ãƒˆã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã‚‹ã®ã‚’防ããŸã‚ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -3663,7 +3663,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-footer\fR¥ª¥×¥·¥ç¥ó¤ò¾Êά¤¹¤ë¤È¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¥Ø¥Ã¥À¡¼¡¦¥Æ¥­¥¹¥È¤¬¥Õ¥Ã¥¿¡¼¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+\fI\-footer\fRオプションをçœç•¥ã™ã‚‹ã¨ã€\fIjavadoc\fRコマンドã«ã‚ˆã£ã¦ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ†ã‚­ã‚¹ãƒˆãŒãƒ•ãƒƒã‚¿ãƒ¼ã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -3674,9 +3674,9 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤³¤ÎÎã¤Ç¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¤¬¡¢\fI\-classpath\fR¤È\fI\-link\fR¤â½ÅÍפʥª¥×¥·¥ç¥ó¤Ç¤¹¡£
-.RE
-.SH "°ìÈÌŪ¤Ê¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°"
+ã“ã®ä¾‹ã§ã¯å¿…è¦ã‚ã‚Šã¾ã›ã‚“ãŒã€\fI\-classpath\fRã¨\fI\-link\fRã‚‚é‡è¦ãªã‚ªãƒ—ションã§ã™ã€‚
+.RE
+.SH "一般的ãªãƒˆãƒ©ãƒ–ルシューティング"
 .sp
 .RS 4
 .ie n \{\
@@ -3686,7 +3686,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjavadoc\fR¥³¥Þ¥ó¥É¤ÏÍ­¸ú¤Ê¥¯¥é¥¹Ì¾¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤Î¤ß¤òÆɤ߼è¤ê¤Þ¤¹¡£\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥Õ¥¡¥¤¥ë¤ÎÆâÍƤòÀµ¤·¤¯Æɤ߼è¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¯¥é¥¹Ì¾¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î½èÍý¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavadoc\fRコマンドã¯æœ‰åŠ¹ãªã‚¯ãƒ©ã‚¹åã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã®ã¿ã‚’読ã¿å–ã‚Šã¾ã™ã€‚\fIjavadoc\fRコマンドãŒãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を正ã—ã読ã¿å–ã£ã¦ã„ãªã„å ´åˆã¯ã€ã‚¯ãƒ©ã‚¹åãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ソース・ファイルã®å‡¦ç†ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -3697,27 +3697,27 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¶¦Ä̤ÎÉÔ¶ñ¹ç¤ª¤è¤Ó¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤Î¥Ò¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢Javadoc FAQ
-(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.RE
-.SH "¥¨¥é¡¼¤È·Ù¹ð"
+共通ã®ä¸å…·åˆãŠã‚ˆã³ãƒˆãƒ©ãƒ–ルシューティングã®ãƒ’ントã«ã¤ã„ã¦ã¯ã€Javadoc FAQ
+(http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137483\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.RE
+.SH "エラーã¨è­¦å‘Š"
 .PP
-¥¨¥é¡¼¤ª¤è¤Ó·Ù¹ð¥á¥Ã¥»¡¼¥¸¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤ÈÀë¸À¹Ô(¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¡¦¥³¥á¥ó¥ÈÆâ¤ÎÆÃÄê¤Î¹Ô¤Ç¤Ï¤Ê¤¤)¤Î¹ÔÈֹ椬´Þ¤Þ¤ì¤Þ¤¹¡£
+エラーãŠã‚ˆã³è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«åã¨å®£è¨€è¡Œ(ドキュメンテーション・コメント内ã®ç‰¹å®šã®è¡Œã§ã¯ãªã„)ã®è¡Œç•ªå·ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¥á¥Ã¥»¡¼¥¸\fI¡Ö¥¨¥é¡¼: Class1\&.java¤òÆɤ߹þ¤á¤Þ¤»¤ó¡×\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬\fIClass1\&.jav\fR\fIa\fR¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥í¡¼¥É¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥¯¥é¥¹Ì¾¤Ï¤½¤Î¥Ñ¥¹(ÀäÂФޤ¿¤ÏÁêÂÐ)¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "´Ä¶­"
+ãŸã¨ãˆã°ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸\fI「エラー: Class1\&.javaを読ã¿è¾¼ã‚ã¾ã›ã‚“ã€\fRã¯ã€\fIjavadoc\fRコマンドãŒ\fIClass1\&.jav\fR\fIa\fRã‚’ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ­ãƒ¼ãƒ‰ã—よã†ã¨ã—ã¦ã„ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚クラスåã¯ãã®ãƒ‘ス(絶対ã¾ãŸã¯ç›¸å¯¾)ã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "環境"
 .PP
 CLASSPATH
 .RS 4
-\fICLASSPATH\fR¤Ï¡¢\fIjavadoc\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡½Ð¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¤òÄ󶡤¹¤ë´Ä¶­ÊÑ¿ô¤Ç¤¹¡£¤³¤Î´Ä¶­ÊÑ¿ô¤Ï¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¥ª¡¼¥Ð¡¼¥é¥¤¥É¤µ¤ì¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥»¥ß¥³¥í¥ó(Windows¤Î¾ì¹ç)¤Þ¤¿¤Ï¥³¥í¥ó(Oracle Solaris¤Î¾ì¹ç)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
-.sp
-\fBWindows¤ÎÎã\fR:
+\fICLASSPATH\fRã¯ã€\fIjavadoc\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ¤œå‡ºã«ä½¿ç”¨ã™ã‚‹ãƒ‘スをæä¾›ã™ã‚‹ç’°å¢ƒå¤‰æ•°ã§ã™ã€‚ã“ã®ç’°å¢ƒå¤‰æ•°ã¯ã€\fI\-classpath\fRオプションã«ã‚ˆã£ã¦ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã•ã‚Œã¾ã™ã€‚ディレクトリã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³(Windowsã®å ´åˆ)ã¾ãŸã¯ã‚³ãƒ­ãƒ³(Oracle Solarisã®å ´åˆ)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
+.sp
+\fBWindowsã®ä¾‹\fR:
 \fI\&.;C:\eclasses;C:\ehome\ejava\eclasses\fR
 .sp
-\fBOracle Solaris¤ÎÎã\fR:
+\fBOracle Solarisã®ä¾‹\fR:
 \fI\&.:/home/classes:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -3773,7 +3773,7 @@
 .\}
 javap(1)
 .RE
-.SH "´ØÏ¢¥É¥­¥å¥á¥ó¥È"
+.SH "関連ドキュメント"
 .sp
 .RS 4
 .ie n \{\
@@ -3783,7 +3783,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥Æ¥¯¥Î¥í¥¸
+Javadocテクノロジ
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/javadoc/index\&.html)
 .RE
 .sp
@@ -3795,7 +3795,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¹¤Î¸¡½ÐÊýË¡
+クラスã®æ¤œå‡ºæ–¹æ³•
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/tools/findingclasses\&.html)
 .RE
 .sp
@@ -3807,7 +3807,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Javadoc¥Ä¡¼¥ë¤Ç¤ÎDoc¥³¥á¥ó¥È¤Îµ­½ÒÊýË¡
+Javadocツールã§ã®Docコメントã®è¨˜è¿°æ–¹æ³•
 (http://www\&.oracle\&.com/technetwork/java/javase/documentation/index\-137868\&.html)
 .RE
 .sp
@@ -3819,7 +3819,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-URL¥á¥â¡¢Uniform Resource Locators
+URLメモã€Uniform Resource Locators
 (http://www\&.ietf\&.org/rfc/rfc1738\&.txt)
 .RE
 .sp
@@ -3831,7 +3831,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-HTMLɸ½à¡¢HTML Document Representation (4197265¤ª¤è¤Ó4137321)
+HTML標準ã€HTML Document Representation (4197265ãŠã‚ˆã³4137321)
 (http://www\&.w3\&.org/TR/REC\-html40/charset\&.html#h\-5\&.2\&.2)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/javah.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/javah.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javah
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javah" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javah" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javah \- Java¥¯¥é¥¹¤«¤éC¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javah \- Javaクラスã‹ã‚‰Cヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,102 +64,102 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIfully\-qualified\-class\-name\fR
 .RS 4
-C¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤µ¤ì¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ¤µ¤ì¤¿¾ì½ê¡£
+Cヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ã®å®Œå…¨ä¿®é£¾ã•ã‚ŒãŸå ´æ‰€ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤ò¼ÂÁõ¤¹¤ë¤¿¤á¤ËɬÍפÊC¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£ºîÀ®¤µ¤ì¤¿¥Ø¥Ã¥À¡¼¤È¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¡¦¥½¡¼¥¹¡¦¥³¡¼¥É¤«¤é¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ò»²¾È¤¹¤ë¤¿¤á¤ËC¥×¥í¥°¥é¥à¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£\fI\&.h\fR¥Õ¥¡¥¤¥ë¤Ï¡¢Âбþ¤¹¤ë¥¯¥é¥¹¤È°ìÃפ¹¤ëÇÛÃÖ¤ò»ý¤Ä\fIstruct\fRÄêµÁ¤ò´Þ¤ß¤Þ¤¹¡£\fIstruct\fR¤Î¥Õ¥£¡¼¥ë¥É¤Ï¡¢¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤ËÂбþ¤·¤Þ¤¹¡£
+\fIjavah\fRコマンドã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドを実装ã™ã‚‹ãŸã‚ã«å¿…è¦ãªCヘッダーã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚作æˆã•ã‚ŒãŸãƒ˜ãƒƒãƒ€ãƒ¼ã¨ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–・ソース・コードã‹ã‚‰ã‚ªãƒ–ジェクトã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å¤‰æ•°ã‚’å‚ç…§ã™ã‚‹ãŸã‚ã«Cプログラムã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fI\&.h\fRファイルã¯ã€å¯¾å¿œã™ã‚‹ã‚¯ãƒ©ã‚¹ã¨ä¸€è‡´ã™ã‚‹é…置をæŒã¤\fIstruct\fR定義をå«ã¿ã¾ã™ã€‚\fIstruct\fRã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ã€ã‚¯ãƒ©ã‚¹ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å¤‰æ•°ã«å¯¾å¿œã—ã¾ã™ã€‚
 .PP
-¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤È¤½¤ÎÃæ¤ÇÀë¸À¤µ¤ì¤ë¹½Â¤ÂΤÎ̾Á°¤Ï¥¯¥é¥¹¤Î̾Á°¤«¤éÇÉÀ¸¤·¤Þ¤¹¡£\fIjavah\fR¥³¥Þ¥ó¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹¤¬¥Ñ¥Ã¥±¡¼¥¸¤ÎÃæ¤Ë¤¢¤ë¾ì¹ç¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ï¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë̾¤È¹½Â¤ÂÎ̾¤ÎξÊý¤ÎÀèƬ¤ËÉղ䵤ì¤Þ¤¹¡£²¼Àþ(_)¤¬Ì¾Á°¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£
+ヘッダー・ファイルã¨ãã®ä¸­ã§å®£è¨€ã•ã‚Œã‚‹æ§‹é€ ä½“ã®åå‰ã¯ã‚¯ãƒ©ã‚¹ã®åå‰ã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™ã€‚\fIjavah\fRコマンドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹ãŒãƒ‘ッケージã®ä¸­ã«ã‚ã‚‹å ´åˆã€ãƒ‘ッケージåã¯ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«åã¨æ§‹é€ ä½“åã®ä¸¡æ–¹ã®å…ˆé ­ã«ä»˜åŠ ã•ã‚Œã¾ã™ã€‚下線(_)ãŒåå‰ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ê¥¹¥È¤µ¤ì¤ë³Æ¥¯¥é¥¹¤Î¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÃÖ¤­¤Þ¤¹¡£¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë¤Ë¤Ï¡¢\fI\-stubs\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£1¤Ä¤Î¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ë¡¢¥ê¥¹¥È¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤Î·ë²Ì¤òÏ¢·ë¤¹¤ë¤Ë¤Ï¡¢\fI\-o\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§ã¯\fIjavah\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ãƒªã‚¹ãƒˆã•ã‚Œã‚‹å„クラスã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç½®ãã¾ã™ã€‚ソース・ファイルを作æˆã™ã‚‹ã«ã¯ã€\fI\-stubs\fRオプションを使用ã—ã¦ãã ã•ã„。1ã¤ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã«ã€ãƒªã‚¹ãƒˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã®çµæžœã‚’連çµã™ã‚‹ã«ã¯ã€\fI\-o\fRオプションを使用ã—ã¦ãã ã•ã„。
 .PP
-Java Native Interface (JNI)¤Ï¥Ø¥Ã¥À¡¼¾ðÊó¤Þ¤¿¤Ï¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤òɬÍפȤ·¤Þ¤»¤ó¡£\fIjavah\fR¥³¥Þ¥ó¥É¤Ï°ú¤­Â³¤­JNI·Á¼°¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É¤ËɬÍפʥͥ¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥É´Ø¿ô¥×¥í¥È¥¿¥¤¥×¤ÎÀ¸À®¤Ë»ÈÍѤǤ­¤Þ¤¹¡£\fIjavah\fR¥³¥Þ¥ó¥É¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇJNI·Á¼°¤Î½ÐÎϤòÀ¸À®¤·¡¢¤½¤Î·ë²Ì¤ò\fI\&.h\fR¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Java Native Interface (JNI)ã¯ãƒ˜ãƒƒãƒ€ãƒ¼æƒ…å ±ã¾ãŸã¯ã‚¹ã‚¿ãƒ–・ファイルを必è¦ã¨ã—ã¾ã›ã‚“。\fIjavah\fRコマンドã¯å¼•ã続ãJNIå½¢å¼ã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッドã«å¿…è¦ãªãƒã‚¤ãƒ†ã‚£ãƒ–・メソッド関数プロトタイプã®ç”Ÿæˆã«ä½¿ç”¨ã§ãã¾ã™ã€‚\fIjavah\fRコマンドã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§JNIå½¢å¼ã®å‡ºåŠ›ã‚’生æˆã—ã€ãã®çµæžœã‚’\fI\&.h\fRファイルã«æ ¼ç´ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-o \fIoutputfile\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ê¥¹¥È¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ËÂФ·¤Æ¡¢·ë²Ì¤Î¥Ø¥Ã¥À¡¼¤Þ¤¿¤Ï¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÏ¢·ë¤·¤Æ½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Þ¤¹¡£\fI\-o\fR¤Þ¤¿¤Ï\fI\-d\fR¤Î¤É¤Á¤é¤«¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+コマンドラインã«ãƒªã‚¹ãƒˆã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã«å¯¾ã—ã¦ã€çµæžœã®ãƒ˜ãƒƒãƒ€ãƒ¼ã¾ãŸã¯ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’連çµã—ã¦å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¾ã™ã€‚\fI\-o\fRã¾ãŸã¯\fI\-d\fRã®ã©ã¡ã‚‰ã‹ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-\fIjavah\fR¤¬¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥¹¥¿¥Ö¡¦¥Õ¥¡¥¤¥ë¤òÊݸ¤¹¤ë¡¢¥Ç¥£¥ì¥¯¥È¥ê¤òÀßÄꤷ¤Þ¤¹¡£\fI\-d\fR¤Þ¤¿¤Ï\fI\-o\fR¤Î¤É¤Á¤é¤«¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+\fIjavah\fRãŒãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ã‚¹ã‚¿ãƒ–・ファイルをä¿å­˜ã™ã‚‹ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’設定ã—ã¾ã™ã€‚\fI\-d\fRã¾ãŸã¯\fI\-o\fRã®ã©ã¡ã‚‰ã‹ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-stubs
 .RS 4
-\fIjavah\fR¥³¥Þ¥ó¥É¤¬¡¢Java¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Õ¥¡¥¤¥ë¤«¤éCÀë¸À¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavah\fRコマンドãŒã€Javaオブジェクト・ファイルã‹ã‚‰C宣言を生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¾ÜºÙ½ÐÎϤò»ØÄꤷ¡¢ºîÀ®¥Õ¥¡¥¤¥ë¤Î¾õÂ֤˴ؤ¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¡¢\fIjavah\fR¥³¥Þ¥ó¥É¤¬\fIɸ½à½ÐÎÏ\fR¤Ë½ÐÎϤ·¤Þ¤¹¡£
+詳細出力を指定ã—ã€ä½œæˆãƒ•ã‚¡ã‚¤ãƒ«ã®çŠ¶æ…‹ã«é–¢ã™ã‚‹ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’ã€\fIjavah\fRコマンドãŒ\fI標準出力\fRã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIjavah\fR¤Î»ÈÍÑÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavah\fRã®ä½¿ç”¨æ–¹æ³•ã«ã¤ã„ã¦ã®ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-\fIjavah\fR¥³¥Þ¥ó¥É¤Î¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavah\fRコマンドã®ãƒªãƒªãƒ¼ã‚¹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-jni
 .RS 4
-JNI·Á¼°¤Î¥Í¥¤¥Æ¥£¥Ö¡¦¥á¥½¥Ã¥Éµ¡Ç½¥×¥í¥È¥¿¥¤¥×¤ò´Þ¤à½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò¡¢\fIjavah\fR¥³¥Þ¥ó¥É¤¬ºîÀ®¤·¤Þ¤¹¡£¤³¤ì¤Ïɸ½à½ÐÎϤǤ¢¤ë¤¿¤á¡¢\fI\-jni\fR¤Î»ÈÍѤϥª¥×¥·¥ç¥ó¤Ç¤¹¡£
+JNIå½¢å¼ã®ãƒã‚¤ãƒ†ã‚£ãƒ–・メソッド機能プロトタイプをå«ã‚€å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€\fIjavah\fRコマンドãŒä½œæˆã—ã¾ã™ã€‚ã“ã‚Œã¯æ¨™æº–出力ã§ã‚ã‚‹ãŸã‚ã€\fI\-jni\fRã®ä½¿ç”¨ã¯ã‚ªãƒ—ションã§ã™ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Ë\fIjavah\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Þ¤¿¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤ÎÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ÏOracle Solaris¤Î¾ì¹ç¤Ï¥³¥í¥ó¤Ç¡¢Windows¤Î¾ì¹ç¤Ï¥»¥ß¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£¥Ñ¥¹¤Î°ìÈÌŪ¤Ê·Á¼°¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+クラスを探ã™ãŸã‚ã«\fIjavah\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚デフォルトã¾ãŸã¯\fICLASSPATH\fR環境変数ã®è¨­å®šã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ディレクトリã¯Oracle Solarisã®å ´åˆã¯ã‚³ãƒ­ãƒ³ã§ã€Windowsã®å ´åˆã¯ã‚»ãƒŸã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚パスã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fBOracle Solaris\fR¤Î¾ì¹ç:
+\fBOracle Solaris\fRã®å ´åˆ:
 .sp
 \&.:\fIyour\-path\fR
 .sp
-Îã:
+例:
 \fI\&.:/home/avh/classes:/usr/local/java/classes\fR
 .sp
-\fBWindows\fR¤Î¾ì¹ç:
+\fBWindows\fRã®å ´åˆ:
 .sp
 \&.;\fIyour\-path\fR
 .sp
-Îã:
+例:
 \fI\&.;C:\eusers\edac\eclasses;C:\etools\ejava\eclasses\fR
 .sp
-Êص¹¾å¡¢*¤Î¥Ù¡¼¥¹Ì¾¤ò´Þ¤à¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁǤϡ¢\fI\&.jar\fR¤Þ¤¿¤Ï\fI\&.JAR\fR¤ò³ÈÄ¥»Ò¤Ë»ý¤Ä¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤹ¤ë¤Î¤ÈƱÅù¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
+便宜上ã€*ã®ãƒ™ãƒ¼ã‚¹åã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ ã¯ã€\fI\&.jar\fRã¾ãŸã¯\fI\&.JAR\fRã‚’æ‹¡å¼µå­ã«æŒã¤ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒªã‚¹ãƒˆã‚’指定ã™ã‚‹ã®ã¨åŒç­‰ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê\fImydir\fR¤Ë\fIa\&.jar\fR¤È\fIb\&.JAR\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥¯¥é¥¹¡¦¥Ñ¥¹Í×ÁÇ\fImydir/*\fR¤Ï\fIA\fR\fI\&.jar:b\&.JAR\fR¤ËŸ³«¤µ¤ì¤Þ¤¹¤¬¡¢JAR¥Õ¥¡¥¤¥ë¤Î½çÈÖ¤Ï̤»ØÄê¤È¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥ê¥¹¥È¤Ë¤Ï¡¢±£¤·¥Õ¥¡¥¤¥ë¤â´Þ¤á¡¢»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Þ¤¹¡£*¤«¤é¤Ê¤ë¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥¨¥ó¥È¥ê¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤ÎJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ËŸ³«¤µ¤ì¤Þ¤¹¡£\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤â¡¢ÄêµÁ»þ¤Ë¤ÏƱÍͤËŸ³«¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Î¥ï¥¤¥ë¥É¥«¡¼¥É¤ÎŸ³«¤Ï¡¢Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î³«»ÏÁ°¤Ë¹Ô¤ï¤ì¤Þ¤¹¡£Java¥×¥í¥°¥é¥à¤Ï¡¢´Ä¶­¤òÌ䤤¹ç¤»¤ë¾ì¹ç¤ò½ü¤­¡¢Å¸³«¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»²¾È¤·¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢\fISystem\&.getenv("CLASSPATH")\fR¤ò¥³¡¼¥ë¤·¤ÆÌ䤤¹ç¤»¤ë¾ì¹ç¤Ç¤¹¡£
+ãŸã¨ãˆã°ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fImydir\fRã«\fIa\&.jar\fRã¨\fIb\&.JAR\fRãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘スè¦ç´ \fImydir/*\fRã¯\fIA\fR\fI\&.jar:b\&.JAR\fRã«å±•é–‹ã•ã‚Œã¾ã™ãŒã€JARファイルã®é †ç•ªã¯æœªæŒ‡å®šã¨ãªã‚Šã¾ã™ã€‚ã“ã®ãƒªã‚¹ãƒˆã«ã¯ã€éš ã—ファイルもå«ã‚ã€æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルãŒå«ã¾ã‚Œã¾ã™ã€‚*ã‹ã‚‰ãªã‚‹ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・エントリã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®JARファイルã®ãƒªã‚¹ãƒˆã«å±•é–‹ã•ã‚Œã¾ã™ã€‚\fICLASSPATH\fR環境変数もã€å®šç¾©æ™‚ã«ã¯åŒæ§˜ã«å±•é–‹ã•ã‚Œã¾ã™ã€‚クラス・パスã®ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ã®å±•é–‹ã¯ã€Java仮想マシン(JVM)ã®é–‹å§‹å‰ã«è¡Œã‚ã‚Œã¾ã™ã€‚Javaプログラムã¯ã€ç’°å¢ƒã‚’å•ã„åˆã›ã‚‹å ´åˆã‚’除ãã€å±•é–‹ã•ã‚Œã¦ã„ãªã„ワイルドカードをå‚ç…§ã—ã¾ã›ã‚“。ãŸã¨ãˆã°ã€\fISystem\&.getenv("CLASSPATH")\fRをコールã—ã¦å•ã„åˆã›ã‚‹å ´åˆã§ã™ã€‚
 .RE
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjre\elib\ert\&.jar\fR¤ª¤è¤Ó¾¤Î¤¤¤¯¤Ä¤«¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¡¢¥³¥¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£
+ブートストラップ・クラスをロードã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブートストラップ・クラスã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fIjre\elib\ert\&.jar\fRãŠã‚ˆã³ä»–ã®ã„ãã¤ã‹ã®JARファイルã«ã‚ã‚‹ã€ã‚³ã‚¢Javaプラットフォームを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
 .PP
 \-old
 .RS 4
-¸Å¤¤JDK 1\&.0·Á¼°¤Î¥Ø¥Ã¥À¡¼¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+å¤ã„JDK 1\&.0å½¢å¼ã®ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-force
 .RS 4
-½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬¾ï¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+出力ファイルãŒå¸¸ã«æ›¸ãè¾¼ã¾ã‚Œã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/javap.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/javap.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: javap
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "javap" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "javap" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-javap \- 1¤Ä°Ê¾å¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òµÕ¥¢¥»¥ó¥Ö¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+javap \- 1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’逆アセンブルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,51 +64,51 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassfile\fR
 .RS 4
-Ãí¼á¤Î½èÍýÂоݤȤʤ롢¶õÇò¤Ç¶èÀڤä¿1¤Ä°Ê¾å¤Î¥¯¥é¥¹(DocFooter\&.class¤Ê¤É)¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¸¡½Ð¤Ç¤­¤ë¥¯¥é¥¹¤ò¡¢¥Õ¥¡¥¤¥ë̾¤Þ¤¿¤ÏURL(\fIfile:///home/user/myproject/src/DocFooter\&.class\fR¤Ê¤É)¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+注釈ã®å‡¦ç†å¯¾è±¡ã¨ãªã‚‹ã€ç©ºç™½ã§åŒºåˆ‡ã£ãŸ1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹(DocFooter\&.classãªã©)。クラス・パスã§æ¤œå‡ºã§ãるクラスをã€ãƒ•ã‚¡ã‚¤ãƒ«åã¾ãŸã¯URL(\fIfile:///home/user/myproject/src/DocFooter\&.class\fRãªã©)ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¡¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òµÕ¥¢¥»¥ó¥Ö¥ë¤·¤Þ¤¹¡£¤½¤Î½ÐÎϤϻØÄꤹ¤ë¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê°Û¤Ê¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¡¢ÅϤµ¤ì¤¿¥¯¥é¥¹¤Îprotected¤ª¤è¤Ópublic¤Î¥Õ¥£¡¼¥ë¥É¤È¥á¥½¥Ã¥É¤ò½ÐÎϤ·¤Þ¤¹¡£\fIjavap\fR¥³¥Þ¥ó¥É¤Ï¤½¤Î½ÐÎϤò\fIɸ½à½ÐÎÏ\fR¤Ëɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjavap\fRコマンドã¯ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’逆アセンブルã—ã¾ã™ã€‚ãã®å‡ºåŠ›ã¯æŒ‡å®šã™ã‚‹ã‚ªãƒ—ションã«ã‚ˆã‚Šç•°ãªã‚Šã¾ã™ã€‚オプションを指定ã—ãªã„å ´åˆã€\fIjavap\fRコマンドã¯ã€ãã®ãƒ‘ッケージã€æ¸¡ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®protectedãŠã‚ˆã³publicã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¨ãƒ¡ã‚½ãƒƒãƒ‰ã‚’出力ã—ã¾ã™ã€‚\fIjavap\fRコマンドã¯ãã®å‡ºåŠ›ã‚’\fI標準出力\fRã«è¡¨ç¤ºã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-help, \-\-help, \-?
 .RS 4
-\fIjavap\fR¥³¥Þ¥ó¥É¤Ë¤Ä¤¤¤Æ¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjavap\fRコマンドã«ã¤ã„ã¦ã®ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¹ÔÈÖ¹æ¤È¥í¡¼¥«¥ëÊÑ¿ôɽ¤ò½ÐÎϤ·¤Þ¤¹¡£
+行番å·ã¨ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°è¡¨ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-public
 .RS 4
-public¥¯¥é¥¹¤ª¤è¤Ó¥á¥ó¥Ð¡¼¤Î¤ßɽ¼¨¤·¤Þ¤¹¡£
+publicクラスãŠã‚ˆã³ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-protected¤ª¤è¤Ópublic¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤Î¤ß¤òɽ¼¨¤·¤Þ¤¹¡£
+protectedãŠã‚ˆã³publicã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã®ã¿ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-private, \-p
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤È¥á¥ó¥Ð¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã¨ãƒ¡ãƒ³ãƒãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤òJVM¤ËÅϤ·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚ªãƒ—ションをJVMã«æ¸¡ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,51 +120,51 @@
 .if n \{\
 .RE
 .\}
-JVM¥ª¥×¥·¥ç¥ó¤Î¾ÜºÙ¤Ï¡¢¥³¥Þ¥ó¥É¤Î¥Þ¥Ë¥å¥¢¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMオプションã®è©³ç´°ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-s
 .RS 4
-ÆâÉô¤Î·¿¥·¥°¥Ë¥Á¥ã¤ò½ÐÎϤ·¤Þ¤¹¡£
+内部ã®åž‹ã‚·ã‚°ãƒ‹ãƒãƒ£ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sysinfo
 .RS 4
-½èÍýÃæ¤Î¥¯¥é¥¹¤Î¥·¥¹¥Æ¥à¾ðÊó(¥Ñ¥¹¡¢¥µ¥¤¥º¡¢ÆüÉÕ¡¢MD5¥Ï¥Ã¥·¥å)¤òɽ¼¨¤·¤Þ¤¹¡£
+処ç†ä¸­ã®ã‚¯ãƒ©ã‚¹ã®ã‚·ã‚¹ãƒ†ãƒ æƒ…å ±(パスã€ã‚µã‚¤ã‚ºã€æ—¥ä»˜ã€MD5ãƒãƒƒã‚·ãƒ¥)を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-constants
 .RS 4
-\fIstatic final\fRÄê¿ô¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIstatic final\fR定数を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-c
 .RS 4
-¥¯¥é¥¹¤Î³Æ¥á¥½¥Ã¥É¤Î¤¿¤á¤ËµÕ¥¢¥»¥ó¥Ö¥ë¤µ¤ì¤ë¥³¡¼¥É¡¢¤¹¤Ê¤ï¤ÁJava¥Ð¥¤¥È¥³¡¼¥É¤«¤é¤Ê¤ëÌ¿Îá¤òɽ¼¨¤·¤Þ¤¹¡£
+クラスã®å„メソッドã®ãŸã‚ã«é€†ã‚¢ã‚»ãƒ³ãƒ–ルã•ã‚Œã‚‹ã‚³ãƒ¼ãƒ‰ã€ã™ãªã‚ã¡Javaãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‹ã‚‰ãªã‚‹å‘½ä»¤ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¥á¥½¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥µ¥¤¥º¡¢locals¤Èarguments¤Î¿ô¤ò½ÐÎϤ·¤Þ¤¹¡£
+メソッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ã‚µã‚¤ã‚ºã€localsã¨argumentsã®æ•°ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Ë\fIjavap\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Þ¤¿¤Ï\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤ÎÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+クラスを探ã™ãŸã‚ã«\fIjavap\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚デフォルトã¾ãŸã¯\fICLASSPATH\fR環境変数ã®è¨­å®šã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤ò¥í¡¼¥É¤¹¤ë¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIjre/lib/rt\&.jar\fR¤ª¤è¤Ó¾¤Î¤¤¤¯¤Ä¤«¤ÎJAR¥Õ¥¡¥¤¥ë¤Ë¤¢¤ë¡¢¥³¥¢Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£
+ブートストラップ・クラスをロードã™ã‚‹ãƒ‘スを指定ã—ã¾ã™ã€‚ブートストラップ・クラスã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯\fIjre/lib/rt\&.jar\fRãŠã‚ˆã³ä»–ã®ã„ãã¤ã‹ã®JARファイルã«ã‚ã‚‹ã€ã‚³ã‚¢Javaプラットフォームを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
 .PP
 \-extdir \fIdirs\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿³ÈÄ¥µ¡Ç½¤ò¸¡º÷¤¹¤ë¾ì½ê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£³ÈÄ¥µ¡Ç½¤Î¥Ç¥Õ¥©¥ë¥È°ÌÃÖ¤Ï\fIjava\&.ext\&.dirs\fR¤Ç¤¹¡£
+インストールã•ã‚ŒãŸæ‹¡å¼µæ©Ÿèƒ½ã‚’検索ã™ã‚‹å ´æ‰€ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚拡張機能ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä½ç½®ã¯\fIjava\&.ext\&.dirs\fRã§ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤Î\fIDocFooter\fR¥¯¥é¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®\fIDocFooter\fRクラスをコンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -193,7 +193,7 @@
 .RE
 .\}
 .PP
-\fIjavap DocFooter\&.class\fR¥³¥Þ¥ó¥É¤«¤é¤Î½ÐÎϤϼ¡¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavap DocFooter\&.class\fRコマンドã‹ã‚‰ã®å‡ºåŠ›ã¯æ¬¡ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -212,7 +212,7 @@
 .RE
 .\}
 .PP
-\fIjavap \-c DocFooter\&.class\fR¥³¥Þ¥ó¥É¤«¤é¤Î½ÐÎϤϼ¡¤òÀ¸À®¤·¤Þ¤¹¡£
+\fIjavap \-c DocFooter\&.class\fRコマンドã‹ã‚‰ã®å‡ºåŠ›ã¯æ¬¡ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -283,7 +283,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jcmd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jcmd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jcmd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jcmd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jcmd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jcmd \- ¼Â¹ÔÃæ¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jcmd \- 実行中ã®Java仮想マシン(JVM)ã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -91,53 +91,53 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjcmd\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¡¢JVM¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤ì¤ÏJVM¤¬²ÔƯ¤·¤Æ¤¤¤ë¤Î¤ÈƱ¤¸¥Þ¥·¥ó¤Ç»ÈÍѤ·¡¢JVM¤Îµ¯Æ°¤Ë»ÈÍѤ·¤¿¤â¤Î¤ÈƱ¤¸Í­¸ú¥æ¡¼¥¶¡¼¤ª¤è¤Ó¥°¥ë¡¼¥×¼±Ê̻Ҥò»ý¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIjcmd\fRユーティリティã¯ã€JVMã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯JVMãŒç¨¼åƒã—ã¦ã„ã‚‹ã®ã¨åŒã˜ãƒžã‚·ãƒ³ã§ä½¿ç”¨ã—ã€JVMã®èµ·å‹•ã«ä½¿ç”¨ã—ãŸã‚‚ã®ã¨åŒã˜æœ‰åŠ¹ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŠã‚ˆã³ã‚°ãƒ«ãƒ¼ãƒ—識別å­ã‚’æŒã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥ê¥â¡¼¥È¡¦¥Þ¥·¥ó¤«¤é¡¢¤Þ¤¿¤ÏÊ̤μ±Ê̻ҤǿÇÃÇ¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢\fIcom\&.sun\&.management\&.DiagnosticCommandMBean\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ÈÍѤǤ­¤Þ¤¹¡£\fIDiagnosticCommandMBean\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¾ÜºÙ¤Ï¡¢http://download\&.java\&.net/jdk8/docs/jre/api/management/extension/com/sun/management/DiagnosticCommandMBean\&.html¤Ë¤¢¤ëAPI¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+リモート・マシンã‹ã‚‰ã€ã¾ãŸã¯åˆ¥ã®è­˜åˆ¥å­ã§è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€\fIcom\&.sun\&.management\&.DiagnosticCommandMBean\fRインタフェースを使用ã§ãã¾ã™ã€‚\fIDiagnosticCommandMBean\fRインタフェースã®è©³ç´°ã¯ã€http://download\&.java\&.net/jdk8/docs/jre/api/management/extension/com/sun/management/DiagnosticCommandMBean\&.htmlã«ã‚ã‚‹APIドキュメントをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIjcmd\fR¤ò°ú¿ô¤Ê¤·¤Þ¤¿¤Ï\fI\- l\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¼Â¹Ô¤·¤¿¾ì¹ç¤Ï¡¢¼Â¹ÔÃæ¤ÎJava¥×¥í¥»¥¹¼±Ê̻ҤΥꥹ¥È¤¬¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤ª¤è¤Ó¥×¥í¥»¥¹¤Îµ¯Æ°¤Ë»ÈÍѤµ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤È¤â¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-h\fR¤Þ¤¿¤Ï\fI\-help\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ\fIjcmd\fR¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ä¡¼¥ë¤Î¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fIjcmd\fRを引数ãªã—ã¾ãŸã¯\fI\- l\fRオプションを指定ã—ã¦å®Ÿè¡Œã—ãŸå ´åˆã¯ã€å®Ÿè¡Œä¸­ã®Javaプロセス識別å­ã®ãƒªã‚¹ãƒˆãŒã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒ—ロセスã®èµ·å‹•ã«ä½¿ç”¨ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã¨ã‚‚ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-h\fRã¾ãŸã¯\fI\-help\fRオプションを指定ã—ã¦\fIjcmd\fRを実行ã™ã‚‹ã¨ã€ãƒ„ールã®ãƒ˜ãƒ«ãƒ—・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
-¥×¥í¥»¥¹¼±ÊÌ»Ò(\fIpid\fR)¤Þ¤¿¤Ï¥á¥¤¥ó¡¦¥¯¥é¥¹(\fImain\-class\fR)¤òºÇ½é¤Î°ú¿ô¤È¤·¤Æ»ØÄꤷ¤¿¾ì¹ç¡¢\fIjcmd\fR¤Ï¡¢¼±Ê̻Ҥò»ØÄꤷ¤¿¾ì¹ç¤ÏJava¥×¥í¥»¥¹¤Ë¡¢¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î̾Á°¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¤¹¤Ù¤Æ¤ÎJava¥×¥í¥»¥¹¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤¹¡£¥×¥í¥»¥¹¼±Ê̻ҤȤ·¤Æ\fI0\fR¤ò»ØÄꤷ¤Æ¡¢¤¹¤Ù¤Æ¤Î»ÈÍѲÄǽ¤ÊJava¥×¥í¥»¥¹¤Ë¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¿ÇÃÇ¥³¥Þ¥ó¥É¡¦¥ê¥¯¥¨¥¹¥È¤È¤·¤Æ¡¢¼¡¤Î¤¤¤º¤ì¤«¤ò»ÈÍѤ·¤Þ¤¹¡£
+プロセス識別å­(\fIpid\fR)ã¾ãŸã¯ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹(\fImain\-class\fR)を最åˆã®å¼•æ•°ã¨ã—ã¦æŒ‡å®šã—ãŸå ´åˆã€\fIjcmd\fRã¯ã€è­˜åˆ¥å­ã‚’指定ã—ãŸå ´åˆã¯Javaプロセスã«ã€ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’指定ã—ãŸå ´åˆã¯ã™ã¹ã¦ã®Javaプロセスã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã—ã¾ã™ã€‚プロセス識別å­ã¨ã—ã¦\fI0\fRを指定ã—ã¦ã€ã™ã¹ã¦ã®ä½¿ç”¨å¯èƒ½ãªJavaプロセスã«è¨ºæ–­ã‚³ãƒžãƒ³ãƒ‰ãƒ»ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é€ä¿¡ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚診断コマンド・リクエストã¨ã—ã¦ã€æ¬¡ã®ã„ãšã‚Œã‹ã‚’使用ã—ã¾ã™ã€‚
 .PP
 Perfcounter\&.print
 .RS 4
-»ØÄꤷ¤¿Java¥×¥í¥»¥¹¤Ç»ÈÍѲÄǽ¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥«¥¦¥ó¥¿¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¡¦¥«¥¦¥ó¥¿¤Î¥ê¥¹¥È¤ÏJava¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ°Û¤Ê¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£
+指定ã—ãŸJavaプロセスã§ä½¿ç”¨å¯èƒ½ãªãƒ‘フォーマンス・カウンタãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚パフォーマンス・カウンタã®ãƒªã‚¹ãƒˆã¯Javaプロセスã«ã‚ˆã£ã¦ç•°ãªã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-f \fIfilename\fR
 .RS 4
-¿ÇÃÇ¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¡¢»ØÄꤷ¤¿Java¥×¥í¥»¥¹¤ËÁ÷¿®¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£\fI\-f\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î¤ß»ÈÍѤ·¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥³¥Þ¥ó¥É¤Ï¡¢1¹Ô¤Çµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Èֹ浭¹æ(\fI#\fR)¤Ç»Ï¤Þ¤ë¹Ô¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤«¡¢\fIstop\fR¥­¡¼¥ï¡¼¥É¤ò´Þ¤à¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Î½èÍý¤¬½ªÎ»¤·¤Þ¤¹¡£
+診断コマンドを読ã¿å–ã‚Šã€æŒ‡å®šã—ãŸJavaプロセスã«é€ä¿¡ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚\fI\-f\fRオプションã§ã®ã¿ä½¿ç”¨ã—ã¾ã™ã€‚ファイル内ã®å„コマンドã¯ã€1è¡Œã§è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚番å·è¨˜å·(\fI#\fR)ã§å§‹ã¾ã‚‹è¡Œã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã™ã¹ã¦ã®è¡ŒãŒèª­ã¿å–られるã‹ã€\fIstop\fRキーワードをå«ã‚€è¡ŒãŒèª­ã¿å–られるã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ãŒçµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIcommand\fR [\fIarguments\fR]
 .RS 4
-»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¤ËÁ÷¿®¤¹¤ë¥³¥Þ¥ó¥É¡£»ØÄꤷ¤¿¥×¥í¥»¥¹¤Ç»ÈÍѤǤ­¤ë¿ÇÃÇ¥³¥Þ¥ó¥É¤Î¥ê¥¹¥È¤Ï¡¢¤³¤Î¥×¥í¥»¥¹¤ËÂФ·¤Æ\fIhelp\fR¥³¥Þ¥ó¥É¤òÁ÷¿®¤¹¤ì¤Ðɽ¼¨¤µ¤ì¤Þ¤¹¡£³Æ¿ÇÃÇ¥³¥Þ¥ó¥É¤ËÆȼ«¤Î°ú¿ô¥»¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¤ÎÀâÌÀ¡¢¹½Ê¸¤ª¤è¤Ó»ÈÍѲÄǽ¤Ê°ú¿ô¤Î¥ê¥¹¥È¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢\fIhelp\fR¥³¥Þ¥ó¥É¤Î°ú¿ô¤È¤·¤Æ¥³¥Þ¥ó¥É̾¤ò»ÈÍѤ·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸJavaプロセスã«é€ä¿¡ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã€‚指定ã—ãŸãƒ—ロセスã§ä½¿ç”¨ã§ãる診断コマンドã®ãƒªã‚¹ãƒˆã¯ã€ã“ã®ãƒ—ロセスã«å¯¾ã—ã¦\fIhelp\fRコマンドをé€ä¿¡ã™ã‚Œã°è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚å„診断コマンドã«ç‹¬è‡ªã®å¼•æ•°ã‚»ãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚コマンドã®èª¬æ˜Žã€æ§‹æ–‡ãŠã‚ˆã³ä½¿ç”¨å¯èƒ½ãªå¼•æ•°ã®ãƒªã‚¹ãƒˆã‚’表示ã™ã‚‹ã«ã¯ã€\fIhelp\fRコマンドã®å¼•æ•°ã¨ã—ã¦ã‚³ãƒžãƒ³ãƒ‰åを使用ã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-°ú¿ô¤Ë¥¹¥Ú¡¼¥¹¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°ì½Å°úÍÑÉä¤Þ¤¿¤ÏÆó½Å°úÍÑÉä(\fI\*(Aq\fR¤Þ¤¿¤Ï\fI"\fR)¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£²Ã¤¨¤Æ¡¢¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥·¥§¥ë¤¬°úÍÑÉä¤ò½èÍý¤·¤Ê¤¤¤è¤¦¤Ë¡¢¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å(\fI\e\fR)¤Ç°ì½Å°úÍÑÉä¤Þ¤¿¤ÏÆó½Å°úÍÑÉä¤ò¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¤³¤ì¤é¤Î°ú¿ô¤ò°ì½Å°úÍÑÉä¤Ç°Ï¤ó¤Ç¤«¤é¡¢Æó½Å°úÍÑÉä¤Ç°Ï¤à¤³¤È¤â¤Ç¤­¤Þ¤¹(¤Þ¤¿¤ÏÆó½Å°úÍÑÉä¤Ç°Ï¤ó¤Ç¤«¤é¡¢°ì½Å°úÍÑÉä¤Ç°Ï¤à)¡£
+\fB注æ„:\fR
+引数ã«ã‚¹ãƒšãƒ¼ã‚¹ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ä¸€é‡å¼•ç”¨ç¬¦ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦(\fI\*(Aq\fRã¾ãŸã¯\fI"\fR)ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚加ãˆã¦ã€ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚·ã‚§ãƒ«ãŒå¼•ç”¨ç¬¦ã‚’処ç†ã—ãªã„よã†ã«ã€ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(\fI\e\fR)ã§ä¸€é‡å¼•ç”¨ç¬¦ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦ã‚’エスケープã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã¯ã€ã“れらã®å¼•æ•°ã‚’一é‡å¼•ç”¨ç¬¦ã§å›²ã‚“ã§ã‹ã‚‰ã€äºŒé‡å¼•ç”¨ç¬¦ã§å›²ã‚€ã“ã¨ã‚‚ã§ãã¾ã™(ã¾ãŸã¯äºŒé‡å¼•ç”¨ç¬¦ã§å›²ã‚“ã§ã‹ã‚‰ã€ä¸€é‡å¼•ç”¨ç¬¦ã§å›²ã‚€)。
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-³Æ¥ª¥×¥·¥ç¥ó¤Ï¸ß¤¤¤ËÇÓ¾Ū¤Ç¤¹¡£
+å„オプションã¯äº’ã„ã«æŽ’ä»–çš„ã§ã™ã€‚
 .PP
 \-f \fIfilename\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤«¤é¥³¥Þ¥ó¥É¤òÆɤ߼è¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ºÇ½é¤Î°ú¿ô¤È¤·¤Æ¥×¥í¥»¥¹¼±Ê̻Ҥޤ¿¤Ï¥á¥¤¥ó¡¦¥¯¥é¥¹¤ò»ØÄꤹ¤ë¾ì¹ç¤Ë¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥³¥Þ¥ó¥É¤Ï¡¢1¹Ô¤Çµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Èֹ浭¹æ(\fI#\fR)¤Ç»Ï¤Þ¤ë¹Ô¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤«¡¢\fIstop\fR¥­¡¼¥ï¡¼¥É¤ò´Þ¤à¹Ô¤¬Æɤ߼è¤é¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Î½èÍý¤¬½ªÎ»¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ã‚³ãƒžãƒ³ãƒ‰ã‚’読ã¿å–ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€æœ€åˆã®å¼•æ•°ã¨ã—ã¦ãƒ—ロセス識別å­ã¾ãŸã¯ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’指定ã™ã‚‹å ´åˆã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚ファイル内ã®å„コマンドã¯ã€1è¡Œã§è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚番å·è¨˜å·(\fI#\fR)ã§å§‹ã¾ã‚‹è¡Œã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã™ã¹ã¦ã®è¡ŒãŒèª­ã¿å–られるã‹ã€\fIstop\fRキーワードをå«ã‚€è¡ŒãŒèª­ã¿å–られるã¨ã€ãƒ•ã‚¡ã‚¤ãƒ«ã®å‡¦ç†ãŒçµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¼Â¹ÔÃæ¤ÎJava¥×¥í¥»¥¹¼±Ê̻ҤΥꥹ¥È¤ò¥á¥¤¥ó¡¦¥¯¥é¥¹¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£
+実行中ã®Javaプロセス識別å­ã®ãƒªã‚¹ãƒˆã‚’メイン・クラスãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jconsole.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jconsole.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jconsole
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†ãƒ„ール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jconsole" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó"
+.TH "jconsole" "1" "2013å¹´11月21æ—¥" "JDK 8" "Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jconsole \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò´Æ»ë¤ª¤è¤Ó´ÉÍý¤¹¤ë¤¿¤á¤Î¥°¥é¥Õ¥£¥«¥ë¡¦¥³¥ó¥½¡¼¥ë¤ò³«»Ï¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jconsole \- Javaアプリケーションを監視ãŠã‚ˆã³ç®¡ç†ã™ã‚‹ãŸã‚ã®ã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã‚’開始ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,56 +64,56 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 connection = \fIpid\fR | \fIhost\fR:\fIport\fR | \fIjmxURL\fR
 .RS 4
-\fIpid\fRÃÍ¤Ï¥í¡¼¥«¥ë¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£JVM¤Ï\fIjconsole\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶¡¼ID¤ÈƱ¤¸¥æ¡¼¥¶¡¼ID¤Ç¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIhost:port\fRÃͤÏJVM¤¬Æ°ºî¤·¤Æ¤¤¤ë¥Û¥¹¥È¡¦¥·¥¹¥Æ¥à¤Î̾Á°¤È¡¢JVM¤¬³«»Ï¤·¤¿¤È¤­¤Ë¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£\fIcom\&.sun\&.management\&.jmxremote\&.port\fR¤Ç»ØÄꤷ¤¿¥Ý¡¼¥ÈÈÖ¹æ¤Ç¤¹¡£\fIjmxUrl\fRÃͤϡ¢JMXServiceURL¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¡¢Àܳ¤µ¤ì¤ëJMX¥¨¡¼¥¸¥§¥ó¥È¤Î¥¢¥É¥ì¥¹¤Ç¤¹¡£
+\fIpid\fR値ã¯ãƒ­ãƒ¼ã‚«ãƒ«ã®Java仮想マシン(JVM)ã®ãƒ—ロセスIDã§ã™ã€‚JVMã¯\fIjconsole\fRコマンドを実行ã—ã¦ã„るユーザーIDã¨åŒã˜ãƒ¦ãƒ¼ã‚¶ãƒ¼IDã§å®Ÿè¡Œã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIhost:port\fR値ã¯JVMãŒå‹•ä½œã—ã¦ã„るホスト・システムã®åå‰ã¨ã€JVMãŒé–‹å§‹ã—ãŸã¨ãã«ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティ\fIcom\&.sun\&.management\&.jmxremote\&.port\fRã§æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆç•ªå·ã§ã™ã€‚\fIjmxUrl\fR値ã¯ã€JMXServiceURLã§è¨˜è¿°ã•ã‚Œã¦ã„ã‚‹ã€æŽ¥ç¶šã•ã‚Œã‚‹JMXエージェントã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™ã€‚
 .sp
-\fIconnection\fR¥Ñ¥é¥á¡¼¥¿¤Î¾ÜºÙ¤Ï¡¢JMX¥Æ¥¯¥Î¥í¥¸¤ò»ÈÍѤ·¤¿¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIconnection\fRパラメータã®è©³ç´°ã¯ã€JMXテクノロジを使用ã—ãŸãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fIJMXServiceURL\fR¥¯¥é¥¹¤ÎÀâÌÀ(
-http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIJMXServiceURL\fRクラスã®èª¬æ˜Ž(
+http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)ã‚‚å‚ç…§ã—ã¦ãã ã•ã„
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjconsole\fR¥³¥Þ¥ó¥É¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Þ¥·¥ó¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Þ¥·¥ó¾å¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È²¾ÁÛ¥Þ¥·¥ó¤Î´Æ»ë¤È´ÉÍý¤ò¹Ô¤¦¥°¥é¥Õ¥£¥«¥ë¡¦¥³¥ó¥½¡¼¥ë¡¦¥Ä¡¼¥ë¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIjconsole\fRコマンドã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒžã‚·ãƒ³ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒžã‚·ãƒ³ä¸Šã®Javaアプリケーションã¨ä»®æƒ³ãƒžã‚·ãƒ³ã®ç›£è¦–ã¨ç®¡ç†ã‚’è¡Œã†ã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ãƒ»ãƒ„ールを起動ã—ã¾ã™ã€‚
 .PP
-Windows¾å¤Ç¤Ï¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤Ï¥³¥ó¥½¡¼¥ë¡¦¥¦¥£¥ó¥É¥¦¤È´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£¤¿¤À¤·¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤¬¼ºÇÔ¤¹¤ë¤È¡¢¥¨¥é¡¼¾ðÊó¤ò¼¨¤¹¥À¥¤¥¢¥í¥°¡¦¥Ü¥Ã¥¯¥¹¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Windows上ã§ã¯ã€\fIjconsole\fRコマンドã¯ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ãƒ»ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¨é–¢é€£ä»˜ã‘られã¦ã„ã¾ã›ã‚“。ãŸã ã—ã€\fIjconsole\fRコマンドãŒå¤±æ•—ã™ã‚‹ã¨ã€ã‚¨ãƒ©ãƒ¼æƒ…報を示ã™ãƒ€ã‚¤ã‚¢ãƒ­ã‚°ãƒ»ãƒœãƒƒã‚¯ã‚¹ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-interval\fI=n\fR
 .RS 4
-¹¹¿·´Ö³Ö¤ò\fIn\fRÉäËÀßÄꤷ¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È¤Ï4ÉÃ)¡£
+更新間隔を\fIn\fR秒ã«è¨­å®šã—ã¾ã™(デフォルトã¯4秒)。
 .RE
 .PP
 \-notile
 .RS 4
-ºÇ½é¤Ë¥¦¥£¥ó¥É¥¦¤ò¥¿¥¤¥ê¥ó¥°¤·¤Þ¤»¤ó(Ê£¿ôÀܳ¤Î¾ì¹ç)¡£
+最åˆã«ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’タイリングã—ã¾ã›ã‚“(複数接続ã®å ´åˆ)。
 .RE
 .PP
 \-pluginpath \fIplugins\fR
 .RS 4
-\fIJConsole\fR¥×¥é¥°¥¤¥ó¤ò¸¡º÷¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£\fIplugins\fR¥Ñ¥¹¤Ë¤Ï\fIMETA\-INF/services/com\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fR¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥Ð¥¤¥À¹½À®¥Õ¥¡¥¤¥ë¤ò´Þ¤ó¤Ç¤¤¤ëɬÍפ¬¤¢¤ê¡¢¤³¤ì¤Ë¤Ï¥×¥é¥°¥¤¥ó¤´¤È¤Ë1¹Ô¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤½¤Î¹Ô¤Ï\fIcom\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fR¥¯¥é¥¹¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥¯¥é¥¹¤Î´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIJConsole\fRプラグインを検索ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯JARファイルã®ãƒªã‚¹ãƒˆã‚’指定ã—ã¾ã™ã€‚\fIplugins\fRパスã«ã¯\fIMETA\-INF/services/com\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fRã¨ã„ã†åå‰ã®ãƒ—ロãƒã‚¤ãƒ€æ§‹æˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚“ã§ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã€ã“ã‚Œã«ã¯ãƒ—ラグインã”ã¨ã«1è¡ŒãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚ãã®è¡Œã¯\fIcom\&.sun\&.tools\&.jconsole\&.JConsolePlugin\fRクラスを実装ã—ã¦ã„るクラスã®å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjconsole\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿JVM¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£
+\fIjconsole\fRコマンドを実行ã—ãŸJVMã«\fIflag\fRを渡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -123,7 +123,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JConsole¤Î»ÈÍÑ
+JConsoleã®ä½¿ç”¨
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/jconsole\&.html)
 .RE
 .sp
@@ -135,7 +135,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JMX¥Æ¥¯¥Î¥í¥¸¤ò»ÈÍѤ·¤¿¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý
+JMXテクノロジを使用ã—ãŸãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†
 
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/management/agent\&.html)
 .RE
@@ -148,7 +148,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIJMXServiceURL\fR¥¯¥é¥¹¤ÎÀâÌÀ(
+\fIJMXServiceURL\fRクラスã®èª¬æ˜Ž(
 http://docs\&.oracle\&.com/javase/8/docs/api/javax/management/remote/JMXServiceURL\&.html)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jdb.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jdb.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jdb
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jdb" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jdb" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jdb \- Java¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥×¥í¥°¥é¥à¤ÎÉÔ¶ñ¹ç¤ò¸¡½Ð¤ª¤è¤Ó½¤Àµ¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jdb \- Javaプラットフォーム・プログラムã®ä¸å…·åˆã‚’検出ãŠã‚ˆã³ä¿®æ­£ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,25 +64,25 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclass\fRname
 .RS 4
-¥Ç¥Ð¥Ã¥°¤¹¤ë¥á¥¤¥ó¡¦¥¯¥é¥¹¤Î̾Á°¡£
+デãƒãƒƒã‚°ã™ã‚‹ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-class¤Î\fImain()\fR¥á¥½¥Ã¥É¤ËÅϤ¹°ú¿ô¡£
+classã®\fImain()\fRメソッドã«æ¸¡ã™å¼•æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java¥Ç¥Ð¥Ã¥¬(JDB)¤Ï¡¢Java¥¯¥é¥¹ÍѤδÊñ¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ç¥Ð¥Ã¥¬¤Ç¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤È¤½¤Î¥ª¥×¥·¥ç¥ó¤ÏJDB¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢JDBA (Java Platform Debugger Architecture)¤ò»ë³ÐŪ¤Ë¼Â¹Ô¤·¡¢¥í¡¼¥«¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¤ÎJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¸¡ºº¤È¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£Java Platform Debugger Architecture (JDBA)
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "JDB¥»¥Ã¥·¥ç¥ó¤Î³«»Ï"
+Javaデãƒãƒƒã‚¬(JDB)ã¯ã€Javaクラス用ã®ç°¡å˜ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ‡ãƒãƒƒã‚¬ã§ã™ã€‚\fIjdb\fRコマンドã¨ãã®ã‚ªãƒ—ションã¯JDBを呼ã³å‡ºã—ã¾ã™ã€‚\fIjdb\fRコマンドã¯ã€JDBA (Java Platform Debugger Architecture)を視覚的ã«å®Ÿè¡Œã—ã€ãƒ­ãƒ¼ã‚«ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆã®Java仮想マシン(JVM)ã®æ¤œæŸ»ã¨ãƒ‡ãƒãƒƒã‚°ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚Java Platform Debugger Architecture (JDBA)
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "JDBセッションã®é–‹å§‹"
 .PP
-JDB¥»¥Ã¥·¥ç¥ó¤ò³«»Ï¤¹¤ë¤Ë¤ÏÍÍ¡¹¤ÊÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£ºÇ¤âÉÑÈˤ˻ÈÍѤµ¤ì¤ë¤Î¤Ï¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¤¥ó¡¦¥¯¥é¥¹¤ò»ÈÍѤ·¤Æ¡¢JDB¤«¤é¿·¤·¤¤JVM¤òµ¯Æ°¤¹¤ëÊýË¡¤Ç¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¡¢\fIjava\fR¥³¥Þ¥ó¥É¤Î¤«¤ï¤ê¤Ë\fIjdb\fR¥³¥Þ¥ó¥É¤òÆþÎϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥á¥¤¥ó¡¦¥¯¥é¥¹¤¬\fIMyClass\fR¤Î¾ì¹ç¤Ï¡¢JDB´Ä¶­¤Ç¥Ç¥Ð¥Ã¥°¤¹¤ë¤È¤­¤Ë¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+JDBセッションを開始ã™ã‚‹ã«ã¯æ§˜ã€…ãªæ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚最も頻ç¹ã«ä½¿ç”¨ã•ã‚Œã‚‹ã®ã¯ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’使用ã—ã¦ã€JDBã‹ã‚‰æ–°ã—ã„JVMã‚’èµ·å‹•ã™ã‚‹æ–¹æ³•ã§ã™ã€‚コマンドラインã§ã€\fIjava\fRコマンドã®ã‹ã‚ã‚Šã«\fIjdb\fRコマンドを入力ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¢ãƒ—リケーションã®ãƒ¡ã‚¤ãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãŒ\fIMyClass\fRã®å ´åˆã¯ã€JDB環境ã§ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã¨ãã«æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -94,9 +94,9 @@
 .RE
 .\}
 .PP
-¤³¤ÎÊýË¡¤Çµ¯Æ°¤¹¤ë¤È¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ·¤Æ2¤ÄÌܤÎJVM¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¼¡¤Ë¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤ò¥í¡¼¥É¤·¤Æ¡¢¥¯¥é¥¹¤ÎºÇ½é¤ÎÌ¿Îá¤ò¼Â¹Ô¤¹¤ëÁ°¤ËJVM¤òÄä»ß¤µ¤»¤Þ¤¹¡£
+ã“ã®æ–¹æ³•ã§èµ·å‹•ã™ã‚‹ã¨ã€\fIjdb\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ‘ラメータを使用ã—ã¦2ã¤ç›®ã®JVMを呼ã³å‡ºã—ã¾ã™ã€‚次ã«ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’ロードã—ã¦ã€ã‚¯ãƒ©ã‚¹ã®æœ€åˆã®å‘½ä»¤ã‚’実行ã™ã‚‹å‰ã«JVMã‚’åœæ­¢ã•ã›ã¾ã™ã€‚
 .PP
-\fIjdb\fR¥³¥Þ¥ó¥É¤Î¤â¤¦1¤Ä¤Î»ÈÍÑÊýË¡¤Ï¡¢¤¹¤Ç¤Ë¼Â¹ÔÃæ¤ÎJVM¤Ëjdb¤òÀܳ¤¹¤ë¤³¤È¤Ç¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤¬Àܳ¤¹¤ëVM¤ò¡¢¤½¤Î¼Â¹ÔÃæ¤Ëµ¯Æ°¤¹¤ë¤¿¤á¤Î¹½Ê¸¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¤¥ó¥×¥í¥»¥¹¡¦¥Ç¥Ð¥Ã¥°Íѥ饤¥Ö¥é¥ê¤ò¥í¡¼¥É¤·¡¢Àܳ¤Î¼ïÎà¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjdb\fRコマンドã®ã‚‚ã†1ã¤ã®ä½¿ç”¨æ–¹æ³•ã¯ã€ã™ã§ã«å®Ÿè¡Œä¸­ã®JVMã«jdbを接続ã™ã‚‹ã“ã¨ã§ã™ã€‚\fIjdb\fRコマンドãŒæŽ¥ç¶šã™ã‚‹VMã‚’ã€ãã®å®Ÿè¡Œä¸­ã«èµ·å‹•ã™ã‚‹ãŸã‚ã®æ§‹æ–‡ã‚’次ã«ç¤ºã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¤ãƒ³ãƒ—ロセス・デãƒãƒƒã‚°ç”¨ãƒ©ã‚¤ãƒ–ラリをロードã—ã€æŽ¥ç¶šã®ç¨®é¡žã‚’指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -108,7 +108,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤òJVM¤ËÀܳ¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€\fIjdb\fRコマンドをJVMã«æŽ¥ç¶šã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,36 +120,36 @@
 .RE
 .\}
 .PP
-¤³¤Î¾ì¹ç¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¿·¤·¤¤JVM¤òµ¯Æ°¤¹¤ë¤«¤ï¤ê¤Ë´û¸¤ÎJVM¤ËÀܳ¤µ¤ì¤ë¤¿¤á¡¢\fIjdb\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë\fIMyClass\fR°ú¿ô¤Ï»ØÄꤷ¤Þ¤»¤ó¡£
+ã“ã®å ´åˆã€\fIjdb\fRコマンドã¯æ–°ã—ã„JVMã‚’èµ·å‹•ã™ã‚‹ã‹ã‚ã‚Šã«æ—¢å­˜ã®JVMã«æŽ¥ç¶šã•ã‚Œã‚‹ãŸã‚ã€\fIjdb\fRコマンドラインã«\fIMyClass\fR引数ã¯æŒ‡å®šã—ã¾ã›ã‚“。
 .PP
-¥Ç¥Ð¥Ã¥¬¤òJVM¤ËÀܳ¤¹¤ë¤Ë¤Ï¾¤Ë¤âÍÍ¡¹¤ÊÊýË¡¤¬¤¢¤ê¡¢¤¹¤Ù¤Æ\fIjdb\fR¥³¥Þ¥ó¥É¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Àܳ¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Java Platform Debugger Architecture¤Î¥É¥­¥å¥á¥ó¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SS "´ðËÜjdb¥³¥Þ¥ó¥É"
+デãƒãƒƒã‚¬ã‚’JVMã«æŽ¥ç¶šã™ã‚‹ã«ã¯ä»–ã«ã‚‚様々ãªæ–¹æ³•ãŒã‚ã‚Šã€ã™ã¹ã¦\fIjdb\fRコマンドã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚接続オプションã«ã¤ã„ã¦ã¯ã€Java Platform Debugger Architectureã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SS "基本jdbコマンド"
 .PP
-´ðËÜŪ¤Ê\fIjdb\fR¥³¥Þ¥ó¥É¤Î°ìÍ÷¤ò¼¨¤·¤Þ¤¹¡£JDB¤¬¥µ¥Ý¡¼¥È¤¹¤ë¥³¥Þ¥ó¥É¤Ï¤³¤ì°Ê³°¤Ë¤â¤¢¤ê¡¢¤½¤ì¤é¤Ï\fI\-help\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æɽ¼¨¤Ç¤­¤Þ¤¹¡£
+基本的ãª\fIjdb\fRコマンドã®ä¸€è¦§ã‚’示ã—ã¾ã™ã€‚JDBãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã¯ã“れ以外ã«ã‚‚ã‚ã‚Šã€ãれらã¯\fI\-help\fRオプションを使用ã—ã¦è¡¨ç¤ºã§ãã¾ã™ã€‚
 .PP
-help¤Þ¤¿¤Ï?
+helpã¾ãŸã¯?
 .RS 4
-\fIhelp\fR¤Þ¤¿¤Ï\fI?\fR¥³¥Þ¥ó¥É¤Ï¡¢Ç§¼±¤µ¤ì¤¿¥³¥Þ¥ó¥É¤Î¥ê¥¹¥È¤Ë´Ê·é¤ÊÀâÌÀ¤òÉÕ¤±¤Æɽ¼¨¤·¤Þ¤¹¡£
+\fIhelp\fRã¾ãŸã¯\fI?\fRコマンドã¯ã€èªè­˜ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã®ãƒªã‚¹ãƒˆã«ç°¡æ½”ãªèª¬æ˜Žã‚’付ã‘ã¦è¡¨ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 run
 .RS 4
-JDB¤òµ¯Æ°¤·¤Æ¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤¿¤¢¤È¤Ë¡¢\fIrun\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò³«»Ï¤Ç¤­¤Þ¤¹¡£\fIrun\fR¥³¥Þ¥ó¥É¤Ï¡¢´û¸¤ÎVM¤ËÀܳ¤·¤Æ¤¤¤ë¾ì¹ç¤È¤Ï°Û¤Ê¤ê¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬\fIjdb\fR¤«¤éµ¯Æ°¤·¤¿¤È¤­¤Ë¤Î¤ß»ÈÍѤǤ­¤Þ¤¹¡£
+JDBã‚’èµ·å‹•ã—ã¦ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ãŸã‚ã¨ã«ã€\fIrun\fRコマンドを使用ã—ã¦ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’開始ã§ãã¾ã™ã€‚\fIrun\fRコマンドã¯ã€æ—¢å­˜ã®VMã«æŽ¥ç¶šã—ã¦ã„ã‚‹å ´åˆã¨ã¯ç•°ãªã‚Šã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションãŒ\fIjdb\fRã‹ã‚‰èµ·å‹•ã—ãŸã¨ãã«ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 cont
 .RS 4
-¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¡¢Îã³°¡¢¤Þ¤¿¤Ï¥¹¥Æ¥Ã¥×¼Â¹Ô¤Î¸å¤Ç¡¢¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¼Â¹Ô¤ò·Ñ³¤·¤Þ¤¹¡£
+ブレークãƒã‚¤ãƒ³ãƒˆã€ä¾‹å¤–ã€ã¾ãŸã¯ã‚¹ãƒ†ãƒƒãƒ—実行ã®å¾Œã§ã€ãƒ‡ãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã®å®Ÿè¡Œã‚’継続ã—ã¾ã™ã€‚
 .RE
 .PP
 print
 .RS 4
-Java¥ª¥Ö¥¸¥§¥¯¥È¤ª¤è¤Ó¥×¥ê¥ß¥Æ¥£¥ÖÃͤòɽ¼¨¤·¤Þ¤¹¡£¥×¥ê¥ß¥Æ¥£¥Ö·¿¤ÎÊÑ¿ô¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤Î¾ì¹ç¤Ë¤Ï¡¢¼ÂºÝ¤ÎÃͤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ì¹ç¤Ë¤Ï¡¢Ã»¤¤ÀâÌÀ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ÜºÙ¤ò¼èÆÀ¤¹¤ëÊýË¡¤òõ¤¹¤Ë¤Ï¡¢dump¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JavaオブジェクトãŠã‚ˆã³ãƒ—リミティブ値を表示ã—ã¾ã™ã€‚プリミティブ型ã®å¤‰æ•°ã¾ãŸã¯ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å ´åˆã«ã¯ã€å®Ÿéš›ã®å€¤ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚オブジェクトã®å ´åˆã«ã¯ã€çŸ­ã„説明ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚オブジェクトã®è©³ç´°ã‚’å–å¾—ã™ã‚‹æ–¹æ³•ã‚’探ã™ã«ã¯ã€dumpコマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fBÃí°Õ:\fR
-¥í¡¼¥«¥ëÊÑ¿ô¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢´Þ¤ó¤Ç¤¤¤ë¥¯¥é¥¹¤¬\fIjavac \-g\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB注æ„:\fR
+ローカル変数を表示ã™ã‚‹ã«ã¯ã€å«ã‚“ã§ã„るクラスãŒ\fIjavac \-g\fRオプションを使用ã—ã¦ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIprint\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Ë¼¨¤¹¤è¤¦¤Ê¡¢¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò»ÈÍѤ·¤¿¤â¤Î¤Ê¤É¡¢Â¿¤¯¤Î´Êñ¤ÊJava¼°¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
+\fIprint\fRコマンドã¯ã€æ¬¡ã«ç¤ºã™ã‚ˆã†ãªã€ãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—を使用ã—ãŸã‚‚ã®ãªã©ã€å¤šãã®ç°¡å˜ãªJavaå¼ã‚’サãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -168,12 +168,12 @@
 .PP
 dump
 .RS 4
-¥×¥ê¥ß¥Æ¥£¥ÖÃͤξì¹ç¡¢\fIdump\fR¥³¥Þ¥ó¥É¤Ï\fIprint\fR¥³¥Þ¥ó¥É¤ÈƱ°ì¤Ç¤¹¡£¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ì¹ç¡¢\fIdump\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë³Æ¥Õ¥£¡¼¥ë¥É¤Î¸½ºß¤ÎÃͤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£static¥Õ¥£¡¼¥ë¥É¤Èinstance¥Õ¥£¡¼¥ë¥É¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fIdump\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fIprint\fR¥³¥Þ¥ó¥É¤ÈƱ¤¸¼°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£
+プリミティブ値ã®å ´åˆã€\fIdump\fRコマンドã¯\fIprint\fRコマンドã¨åŒä¸€ã§ã™ã€‚オブジェクトã®å ´åˆã€\fIdump\fRコマンドã§ã¯ã€ã‚ªãƒ–ジェクト内ã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹å„フィールドã®ç¾åœ¨ã®å€¤ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚staticフィールドã¨instanceフィールドãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fIdump\fRコマンドã§ã¯ã€\fIprint\fRコマンドã¨åŒã˜å¼ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 threads
 .RS 4
-¸½ºß¼Â¹ÔÃæ¤Î¥¹¥ì¥Ã¥É¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¥¹¥ì¥Ã¥É¤´¤È¤Ë¡¢Ì¾Á°¤È¸½ºß¤Î¾õÂÖ¡¢¤ª¤è¤Ó¾¤Î¥³¥Þ¥ó¥É¤Ë»ÈÍѤǤ­¤ë¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥¹¥ì¥Ã¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï4¤Ç¤¢¤ê¡¢¥¹¥ì¥Ã¥É¤Ï\fIjava\&.lang\&.Thread\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¡¢¥¹¥ì¥Ã¥É¤Î̾Á°¤Ï\fImain\fR¤Ç¤¢¤ê¡¢¸½ºß¼Â¹ÔÃæ¤Ç¤¹¡£
+ç¾åœ¨å®Ÿè¡Œä¸­ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’一覧表示ã—ã¾ã™ã€‚スレッドã”ã¨ã«ã€åå‰ã¨ç¾åœ¨ã®çŠ¶æ…‹ã€ãŠã‚ˆã³ä»–ã®ã‚³ãƒžãƒ³ãƒ‰ã«ä½¿ç”¨ã§ãるインデックスãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã¯4ã§ã‚ã‚Šã€ã‚¹ãƒ¬ãƒƒãƒ‰ã¯\fIjava\&.lang\&.Thread\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ã€ã‚¹ãƒ¬ãƒƒãƒ‰ã®åå‰ã¯\fImain\fRã§ã‚ã‚Šã€ç¾åœ¨å®Ÿè¡Œä¸­ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -188,20 +188,20 @@
 .PP
 thread
 .RS 4
-¸½ºß¤Î¥¹¥ì¥Ã¥É¤Ë¤¹¤ë¥¹¥ì¥Ã¥É¤òÁªÂò¤·¤Þ¤¹¡£Â¿¤¯¤Î\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¤ÎÀßÄê¤Ë´ð¤Å¤¤¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¥¹¥ì¥Ã¥É¤Ï¡¢threads¥³¥Þ¥ó¥É¤ÇÀâÌÀ¤·¤¿¥¹¥ì¥Ã¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹¤È¤È¤â¤Ë»ØÄꤷ¤Þ¤¹¡£
+ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã«ã™ã‚‹ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’é¸æŠžã—ã¾ã™ã€‚多ãã®\fIjdb\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®è¨­å®šã«åŸºã¥ã„ã¦å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚スレッドã¯ã€threadsコマンドã§èª¬æ˜Žã—ãŸã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ã¨ã¨ã‚‚ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 where
 .RS 4
-°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIwhere\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤¬¥À¥ó¥×¤µ¤ì¤Þ¤¹¡£\fIwhere\fR
-\fIall\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥ì¥Ã¥É¡¦¥°¥ë¡¼¥×¤Ë¤¢¤ë¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤ò¤¹¤Ù¤Æ¥À¥ó¥×¤·¤Þ¤¹¡£\fIwhere\fR
-\fIthreadindex\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¤ò¥À¥ó¥×¤·¤Þ¤¹¡£
+引数を指定ã—ãªã„ã§\fIwhere\fRコマンドを実行ã™ã‚‹ã¨ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãŒãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã™ã€‚\fIwhere\fR
+\fIall\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚°ãƒ«ãƒ¼ãƒ—ã«ã‚るスレッドã®ã‚¹ã‚¿ãƒƒã‚¯ã‚’ã™ã¹ã¦ãƒ€ãƒ³ãƒ—ã—ã¾ã™ã€‚\fIwhere\fR
+\fIthreadindex\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¹ãƒ¬ãƒƒãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ã‚’ダンプã—ã¾ã™ã€‚
 .sp
-¸½ºß¤Î¥¹¥ì¥Ã¥É¤¬(¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤«\fIsuspend\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ)ÃæÃǤ·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥í¡¼¥«¥ëÊÑ¿ô¤È¥Õ¥£¡¼¥ë¥É¤Ï\fIprint\fR¥³¥Þ¥ó¥É¤È\fIdump\fR¥³¥Þ¥ó¥É¤Çɽ¼¨¤Ç¤­¤Þ¤¹¡£\fIup\fR¥³¥Þ¥ó¥É¤È\fIdown\fR¥³¥Þ¥ó¥É¤Ç¡¢¤É¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤ò¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Ë¤¹¤ë¤«¤òÁª¤Ö¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãŒ(ブレークãƒã‚¤ãƒ³ãƒˆã‹\fIsuspend\fRコマンドã«ã‚ˆã£ã¦)中断ã—ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°ã¨ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯\fIprint\fRコマンドã¨\fIdump\fRコマンドã§è¡¨ç¤ºã§ãã¾ã™ã€‚\fIup\fRコマンドã¨\fIdown\fRコマンドã§ã€ã©ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã‚’ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã«ã™ã‚‹ã‹ã‚’é¸ã¶ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
-.SS "¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È"
+.SS "ブレークãƒã‚¤ãƒ³ãƒˆ"
 .PP
-¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤Ï¡¢¹ÔÈÖ¹æ¤Þ¤¿¤Ï¥á¥½¥Ã¥É¤ÎºÇ½é¤ÎÌ¿Îá¤ÇJDB¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+ブレークãƒã‚¤ãƒ³ãƒˆã¯ã€è¡Œç•ªå·ã¾ãŸã¯ãƒ¡ã‚½ãƒƒãƒ‰ã®æœ€åˆã®å‘½ä»¤ã§JDBã«è¨­å®šã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -211,7 +211,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop at MyClass:22\fR¤Ï¡¢\fIMyClass\fR¤¬´Þ¤Þ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤Î22¹ÔÌܤκǽé¤ÎÌ¿Îá¤Ë¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+コマンド\fIstop at MyClass:22\fRã¯ã€\fIMyClass\fRãŒå«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®22行目ã®æœ€åˆã®å‘½ä»¤ã«ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -222,7 +222,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop in java\&.lang\&.String\&.length\fR¤Ï¡¢¥á¥½¥Ã¥É\fIjava\&.lang\&.String\&.length\fR¤ÎÀèƬ¤Ë¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¤Þ¤¹¡£
+コマンド\fIstop in java\&.lang\&.String\&.length\fRã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰\fIjava\&.lang\&.String\&.length\fRã®å…ˆé ­ã«ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -233,106 +233,106 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥³¥Þ¥ó¥É\fIstop in MyClass\&.<clinit>\fR¤Ï¡¢\fI<clinit>\fR¤ò»ÈÍѤ·¤Æ\fIMyClass\fR¤ÎÀÅŪ½é´ü²½¥³¡¼¥É¤òÆÃÄꤷ¤Þ¤¹¡£
+コマンド\fIstop in MyClass\&.<clinit>\fRã¯ã€\fI<clinit>\fRを使用ã—ã¦\fIMyClass\fRã®é™çš„åˆæœŸåŒ–コードを特定ã—ã¾ã™ã€‚
 .RE
 .PP
-¥á¥½¥Ã¥É¤¬¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¥á¥½¥Ã¥É¤Î°ú¿ô¤Î·¿¤â»ØÄꤷ¤Æ¡¢¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤ËÂФ·¤ÆŬÀڤʥ᥽¥Ã¥É¤¬ÁªÂò¤µ¤ì¤ë¤è¤¦¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIMyClass\&.myMethod(int,java\&.lang\&.String)\fR¤Þ¤¿¤Ï\fIMyClass\&.myMethod()\fR¤È»ØÄꤷ¤Þ¤¹¡£
+メソッドãŒã‚ªãƒ¼ãƒãƒ¼ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã„ã‚‹å ´åˆã«ã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ã®å¼•æ•°ã®åž‹ã‚‚指定ã—ã¦ã€ãƒ–レークãƒã‚¤ãƒ³ãƒˆã«å¯¾ã—ã¦é©åˆ‡ãªãƒ¡ã‚½ãƒƒãƒ‰ãŒé¸æŠžã•ã‚Œã‚‹ã‚ˆã†ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIMyClass\&.myMethod(int,java\&.lang\&.String)\fRã¾ãŸã¯\fIMyClass\&.myMethod()\fRã¨æŒ‡å®šã—ã¾ã™ã€‚
 .PP
-\fIclear\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIclear MyClass:45\fR¤Î¤è¤¦¤Ê¹½Ê¸¤ò»ÈÍѤ·¤Æ¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤òºï½ü¤·¤Þ¤¹¡£\fIclear\fR¤ò»ÈÍѤ¹¤ë¤«¡¢°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤Ç\fIstop\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¸½ºßÀßÄꤵ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥Ö¥ì¡¼¥¯¥Ý¥¤¥ó¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fIcont\fR¥³¥Þ¥ó¥É¤Ï¼Â¹Ô¤ò·Ñ³¤·¤Þ¤¹¡£
-.SS "¥¹¥Æ¥Ã¥×¼Â¹Ô"
+\fIclear\fRコマンドã¯ã€\fIclear MyClass:45\fRã®ã‚ˆã†ãªæ§‹æ–‡ã‚’使用ã—ã¦ãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’削除ã—ã¾ã™ã€‚\fIclear\fRを使用ã™ã‚‹ã‹ã€å¼•æ•°ã‚’指定ã—ãªã„ã§\fIstop\fRコマンドを使用ã™ã‚‹ã¨ã€ç¾åœ¨è¨­å®šã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ–レークãƒã‚¤ãƒ³ãƒˆãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fIcont\fRコマンドã¯å®Ÿè¡Œã‚’継続ã—ã¾ã™ã€‚
+.SS "ステップ実行"
 .PP
-\fIstep\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Þ¤¿¤Ï¸Æ¤Ó½Ð¤µ¤ì¤¿¥á¥½¥Ã¥ÉÆâ¤Ç¡¢¼¡¤Î¹Ô¤ò¼Â¹Ô¤·¤Þ¤¹¡£\fInext\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥¹¥¿¥Ã¥¯¡¦¥Õ¥ì¡¼¥à¤Î¼¡¤Î¹Ô¤ò¼Â¹Ô¤·¤Þ¤¹¡£
-.SS "Îã³°"
+\fIstep\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã¾ãŸã¯å‘¼ã³å‡ºã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰å†…ã§ã€æ¬¡ã®è¡Œã‚’実行ã—ã¾ã™ã€‚\fInext\fRコマンドã¯ã€ç¾åœ¨ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ•ãƒ¬ãƒ¼ãƒ ã®æ¬¡ã®è¡Œã‚’実行ã—ã¾ã™ã€‚
+.SS "例外"
 .PP
-¥¹¥í¡¼¤·¤Æ¤¤¤ë¥¹¥ì¥Ã¥É¤Î¸Æ½Ð¤·¥¹¥¿¥Ã¥¯¾å¤Î¤É¤³¤Ë¤â\fIcatch\fRʸ¤¬¤Ê¤¤¾ì¹ç¤ËÎã³°¤¬È¯À¸¤¹¤ë¤È¡¢JVM¤ÏÄ̾Îã³°¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Æ½ªÎ»¤·¤Þ¤¹¡£¤¿¤À¤·¡¢JDB´Ä¶­¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢°ãÈ¿¤Î¥¹¥í¡¼»þ¤ËJDB¤ËÀ©¸æ¤¬Ìá¤ê¤Þ¤¹¡£¼¡¤Ë¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÎã³°¤Î¸¶°ø¤ò¿ÇÃǤ·¤Þ¤¹¡£
+スローã—ã¦ã„るスレッドã®å‘¼å‡ºã—スタック上ã®ã©ã“ã«ã‚‚\fIcatch\fRæ–‡ãŒãªã„å ´åˆã«ä¾‹å¤–ãŒç™ºç”Ÿã™ã‚‹ã¨ã€JVMã¯é€šå¸¸ã€ä¾‹å¤–トレースを出力ã—ã¦çµ‚了ã—ã¾ã™ã€‚ãŸã ã—ã€JDB環境ã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã¯ã€é•åã®ã‚¹ãƒ­ãƒ¼æ™‚ã«JDBã«åˆ¶å¾¡ãŒæˆ»ã‚Šã¾ã™ã€‚次ã«ã€\fIjdb\fRコマンドを使用ã—ã¦ä¾‹å¤–ã®åŽŸå› ã‚’診断ã—ã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢\fIcatch java\&.io\&.FileNotFoundException\fR¤Þ¤¿¤Ï\fIcatch\fR
-\fImypackage\&.BigTroubleException\fR¤Î¤è¤¦¤Ë\fIcatch\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Ð¥Ã¥°¤µ¤ì¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢Â¾¤ÎÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤ËÄä»ß¤·¤Þ¤¹¡£Îã³°¤¬ÆÃÄê¤Î¥¯¥é¥¹¤Þ¤¿¤Ï¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Î¾ì¹ç¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÏÎã³°¤¬¥¹¥í¡¼¤µ¤ì¤¿¾ì½ê¤ÇÄä»ß¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€\fIcatch java\&.io\&.FileNotFoundException\fRã¾ãŸã¯\fIcatch\fR
+\fImypackage\&.BigTroubleException\fRã®ã‚ˆã†ã«\fIcatch\fRコマンドを使用ã™ã‚‹ã¨ã€ãƒ‡ãƒãƒƒã‚°ã•ã‚ŒãŸã‚¢ãƒ—リケーションã¯ã€ä»–ã®ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«åœæ­¢ã—ã¾ã™ã€‚例外ãŒç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã¾ãŸã¯ã‚µãƒ–クラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å ´åˆã¯ã€ã‚¢ãƒ—リケーションã¯ä¾‹å¤–ãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸå ´æ‰€ã§åœæ­¢ã—ã¾ã™ã€‚
 .PP
-\fIignore\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢°ÊÁ°¤Î\fIcatch\fR¥³¥Þ¥ó¥É¤Î¸ú²Ì¤¬Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£\fIignore\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Ð¥Ã¥°¤µ¤ì¤ëJVM¤ÏÆÃÄê¤ÎÎã³°¤ò̵»ë¤»¤º¡¢¥Ç¥Ð¥Ã¥¬¤Î¤ß¤ò̵»ë¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIignore\fRコマンドを使用ã™ã‚‹ã¨ã€ä»¥å‰ã®\fIcatch\fRコマンドã®åŠ¹æžœãŒç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚\fIignore\fRコマンドã§ã¯ã€ãƒ‡ãƒãƒƒã‚°ã•ã‚Œã‚‹JVMã¯ç‰¹å®šã®ä¾‹å¤–を無視ã›ãšã€ãƒ‡ãƒãƒƒã‚¬ã®ã¿ã‚’無視ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava\fR¥³¥Þ¥ó¥É¤Î¤«¤ï¤ê¤Ë\fIjdb\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢\fI\-D\fR¡¢\fI\-classpath\fR¡¢\fI\-X\fR¤Ê¤É¡¢\fIjava\fR¥³¥Þ¥ó¥É¤ÈƱ¤¸¿ô¤Î¥ª¥×¥·¥ç¥ó¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£\fIjdb\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¾¤Ë¼¡¤Î¥ê¥¹¥È¤Ë¤¢¤ë¥ª¥×¥·¥ç¥ó¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡£
+コマンドラインã§\fIjava\fRコマンドã®ã‹ã‚ã‚Šã«\fIjdb\fRコマンドを使用ã™ã‚‹å ´åˆã€\fIjdb\fRコマンドã¯ã€\fI\-D\fRã€\fI\-classpath\fRã€\fI\-X\fRãªã©ã€\fIjava\fRコマンドã¨åŒã˜æ•°ã®ã‚ªãƒ—ションをå—ã‘入れã¾ã™ã€‚\fIjdb\fRコマンドã¯ã€ãã®ä»–ã«æ¬¡ã®ãƒªã‚¹ãƒˆã«ã‚るオプションをå—ã‘入れã¾ã™ã€‚
 .PP
-¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦JVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤¹¤ë¤¿¤á¤ÎÂåÂص¡¹½¤òÄ󶡤¹¤ë¤¿¤á¤Ë¡¢¤½¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤ÎÀܳ¤ÎÂåÂؤ˴ؤ¹¤ë¾ÜºÙ¤Ê¥É¥­¥å¥á¥ó¥È¤Ï¡¢Java Platform Debugger Architecture (JPDA)
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+デãƒãƒƒã‚°ã‚’è¡Œã†JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã™ã‚‹ãŸã‚ã®ä»£æ›¿æ©Ÿæ§‹ã‚’æä¾›ã™ã‚‹ãŸã‚ã«ã€ãã®ä»–ã®ã‚ªãƒ—ションãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ã“れらã®æŽ¥ç¶šã®ä»£æ›¿ã«é–¢ã™ã‚‹è©³ç´°ãªãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¯ã€Java Platform Debugger Architecture (JPDA)
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sourcepath \fIdir1:dir2: \&. \&. \&.\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ñ¥¹¤ò»ÈÍѤ·¤Æ¡¢¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥Ñ¥¹¤Î¥É¥Ã¥È(\&.)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ‘スを使用ã—ã¦ã€ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’検索ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ‘スã®ãƒ‰ãƒƒãƒˆ(\&.)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-attach \fIaddress\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤ÎÀܳµ¡¹½¤ò»ÈÍѤ·¤Æ¡¢¼Â¹ÔÃæ¤ÎJVM¤Ë¥Ç¥Ð¥Ã¥¬¤òÀܳ¤·¤Þ¤¹¡£
+デフォルトã®æŽ¥ç¶šæ©Ÿæ§‹ã‚’使用ã—ã¦ã€å®Ÿè¡Œä¸­ã®JVMã«ãƒ‡ãƒãƒƒã‚¬ã‚’接続ã—ã¾ã™ã€‚
 .RE
 .PP
 \-listen \fIaddress\fR
 .RS 4
-¼Â¹ÔÃæ¤ÎJVM¤¬É¸½à¤Î¥³¥Í¥¯¥¿¤ò»ÈÍѤ·¤Æ»ØÄꤵ¤ì¤¿¥¢¥É¥ì¥¹¤ËÀܳ¤¹¤ë¤Î¤òÂÔµ¡¤·¤Þ¤¹¡£
+実行中ã®JVMãŒæ¨™æº–ã®ã‚³ãƒã‚¯ã‚¿ã‚’使用ã—ã¦æŒ‡å®šã•ã‚ŒãŸã‚¢ãƒ‰ãƒ¬ã‚¹ã«æŽ¥ç¶šã™ã‚‹ã®ã‚’å¾…æ©Ÿã—ã¾ã™ã€‚
 .RE
 .PP
 \-launch
 .RS 4
-¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òJDB¤Îµ¯Æ°¸å¤¿¤À¤Á¤Ëµ¯Æ°¤·¤Þ¤¹¡£\fI\-launch\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¡¢\fIrun\fR¥³¥Þ¥ó¥É¤¬É¬Íפʤ¯¤Ê¤ê¤Þ¤¹¡£¥Ç¥Ð¥Ã¥°¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢µ¯Æ°¸å¡¢½é´ü¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¯¥é¥¹¤¬¥í¡¼¥É¤µ¤ì¤ëľÁ°¤ËÄä»ß¤·¤Þ¤¹¡£¤½¤Î»þÅÀ¤Ç¡¢É¬Íפʥ֥졼¥¯¥Ý¥¤¥ó¥È¤òÀßÄꤷ¡¢\fIcont\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¼Â¹Ô¤ò·Ñ³¤Ç¤­¤Þ¤¹¡£
+デãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションをJDBã®èµ·å‹•å¾ŒãŸã ã¡ã«èµ·å‹•ã—ã¾ã™ã€‚\fI\-launch\fRオプションã«ã‚ˆã‚Šã€\fIrun\fRコマンドãŒå¿…è¦ãªããªã‚Šã¾ã™ã€‚デãƒãƒƒã‚°ã™ã‚‹ã‚¢ãƒ—リケーションã¯ã€èµ·å‹•å¾Œã€åˆæœŸã‚¢ãƒ—リケーション・クラスãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ç›´å‰ã«åœæ­¢ã—ã¾ã™ã€‚ãã®æ™‚点ã§ã€å¿…è¦ãªãƒ–レークãƒã‚¤ãƒ³ãƒˆã‚’設定ã—ã€\fIcont\fRコマンドを使用ã—ã¦å®Ÿè¡Œã‚’継続ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-listconnectors
 .RS 4
-¤³¤ÎJVM¤ÇÍøÍѤǤ­¤ë¥³¥Í¥¯¥¿¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ã“ã®JVMã§åˆ©ç”¨ã§ãるコãƒã‚¯ã‚¿ã‚’一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-connect connector\-name:\fIname1=value1\fR
 .RS 4
-°ìÍ÷ɽ¼¨¤µ¤ì¤¿°ú¿ô¤ÎÃͤȻØÄê¤Î¥³¥Í¥¯¥¿¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥ÈJVM¤ËÀܳ¤·¤Þ¤¹¡£
+一覧表示ã•ã‚ŒãŸå¼•æ•°ã®å€¤ã¨æŒ‡å®šã®ã‚³ãƒã‚¯ã‚¿ã‚’使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã«æŽ¥ç¶šã—ã¾ã™ã€‚
 .RE
 .PP
 \-dbgtrace [\fIflags\fR]
 .RS 4
-\fIjdb\fR¥³¥Þ¥ó¥É¤Î¥Ç¥Ð¥Ã¥°¤Î¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjdb\fRコマンドã®ãƒ‡ãƒãƒƒã‚°ã®æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-tclient
 .RS 4
-Java HotSpot VM¥¯¥é¥¤¥¢¥ó¥ÈÆâ¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java HotSpot VMクライアント内ã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-tserver
 .RS 4
-Java HotSpot VM¥µ¡¼¥Ð¡¼Æâ¤Ç¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java HotSpot VMサーãƒãƒ¼å†…ã§ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥Ç¥Ð¥Ã¥°ÂÐ¾Ý¤Î¥×¥í¥»¥¹¤ËžÁ÷¤µ¤ì¤ë¥ª¥×¥·¥ç¥ó"
+.SH "デãƒãƒƒã‚°å¯¾è±¡ã®ãƒ—ロセスã«è»¢é€ã•ã‚Œã‚‹ã‚ªãƒ—ション"
 .PP
 \-v \-verbose[:\fIclass\fR|gc|jni]
 .RS 4
-¾éĹ¥â¡¼¥É¤Ë¤·¤Þ¤¹¡£
+冗長モードã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£
+システム・プロパティを設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath \fIdir\fR
 .RS 4
-¥¯¥é¥¹¤ò¸¡º÷¤¹¤ë¤¿¤á¤Î¡¢¥³¥í¥ó¤Ç¶èÀڤäƻØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¡£
+クラスを検索ã™ã‚‹ãŸã‚ã®ã€ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚¹ãƒˆã€‚
 .RE
 .PP
 \-X\fIoption\fR
 .RS 4
-Èóɸ½à¥¿¡¼¥²¥Ã¥ÈJVM¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£
+éžæ¨™æº–ターゲットJVMオプションã§ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jdeps.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jdeps.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jdeps
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jdeps" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jdeps" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jdeps \- Java¥¯¥é¥¹°Í¸À­¥¢¥Ê¥é¥¤¥¶¡£
-.SH "³µÍ×"
+jdeps \- Javaクラスä¾å­˜æ€§ã‚¢ãƒŠãƒ©ã‚¤ã‚¶ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,99 +64,99 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclasses\fR
 .RS 4
-ʬÀϤ¹¤ë¥¯¥é¥¹¤Î̾Á°¡£¥¯¥é¥¹¡¦¥Ñ¥¹¤Ç¸¡½Ð¤Ç¤­¤ë¥¯¥é¥¹¤ò¡¢¥Õ¥¡¥¤¥ë̾¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+分æžã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã€‚クラス・パスã§æ¤œå‡ºã§ãるクラスをã€ãƒ•ã‚¡ã‚¤ãƒ«åã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¾ãŸã¯JARファイルã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjdeps\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¥Ñ¥Ã¥±¡¼¥¸¥ì¥Ù¥ë¤Þ¤¿¤Ï¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸À­¤ò¼¨¤·¤Þ¤¹¡£ÆþÎÏ¥¯¥é¥¹¤Ë¤Ï¡¢\fI\&.class\fR¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢JAR¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òʬÀϤ¹¤ë¤¿¤á¤Î´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê½ÐÎϤ¬·èÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjdeps\fR¤Ï¥·¥¹¥Æ¥à½ÐÎϤ˰͸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£DOT¸À¸ì¤Ç°Í¸´Ø·¸¤òÀ¸À®¤Ç¤­¤Þ¤¹(\fI\-dotoutput\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È)¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjdeps\fRコマンドã¯ã€Javaクラス・ファイルã®ãƒ‘ッケージレベルã¾ãŸã¯ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜æ€§ã‚’示ã—ã¾ã™ã€‚入力クラスã«ã¯ã€\fI\&.class\fRファイルã®ãƒ‘スåã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€JARファイルã€ã¾ãŸã¯ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’分æžã™ã‚‹ãŸã‚ã®å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åを指定ã§ãã¾ã™ã€‚オプションã«ã‚ˆã‚Šå‡ºåŠ›ãŒæ±ºå®šã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIjdeps\fRã¯ã‚·ã‚¹ãƒ†ãƒ å‡ºåŠ›ã«ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚DOT言語ã§ä¾å­˜é–¢ä¿‚を生æˆã§ãã¾ã™(\fI\-dotoutput\fRオプションをå‚ç…§)。
+.SH "オプション"
 .PP
 \-dotoutput <\fIdir\fR>
 .RS 4
-DOT¥Õ¥¡¥¤¥ë½ÐÎϤΰ¸Àè¥Ç¥£¥ì¥¯¥È¥ê¡£»ØÄꤷ¤¿¾ì¹ç¤Ï\fIjdeps\fR¤Ï<\fIarchive\-file\-name\fR>\&.dot¤È¤¤¤¦Ì¾Á°¤ÎʬÀϺѤߥ¢¡¼¥«¥¤¥Ö¤´¤È¤Ë°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ë1¤Ä¤Îdot¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¡¢¥¢¡¼¥«¥¤¥Ö´Ö¤Î°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ësummary\&.dot¤È¤¤¤¦Ì¾Á°¤Î¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤âÀ¸À®¤·¤Þ¤¹¡£
+DOTファイル出力ã®å®›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã€‚指定ã—ãŸå ´åˆã¯\fIjdeps\fRã¯<\fIarchive\-file\-name\fR>\&.dotã¨ã„ã†åå‰ã®åˆ†æžæ¸ˆã¿ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã”ã¨ã«ä¾å­˜é–¢ä¿‚をリストã™ã‚‹1ã¤ã®dotファイルを生æˆã—ã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–é–“ã®ä¾å­˜é–¢ä¿‚をリストã™ã‚‹summary\&.dotã¨ã„ã†åå‰ã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-s, \-summary
 .RS 4
-°Í¸´Ø·¸¤Î¥µ¥Þ¥ê¡¼¤Î¤ß¤ò½ÐÎϤ·¤Þ¤¹¡£
+ä¾å­˜é–¢ä¿‚ã®ã‚µãƒžãƒªãƒ¼ã®ã¿ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v, \-verbose
 .RS 4
-¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:package
 .RS 4
-Ʊ¤¸¥¢¡¼¥«¥¤¥ÖÆâ¤Î°Í¸´Ø·¸¤ò½ü¤­¡¢¥Ñ¥Ã¥±¡¼¥¸¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+åŒã˜ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ä¾å­˜é–¢ä¿‚を除ãã€ãƒ‘ッケージレベルã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose:class
 .RS 4
-Ʊ¤¸¥¢¡¼¥«¥¤¥ÖÆâ¤Î°Í¸´Ø·¸¤ò½ü¤­¡¢¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+åŒã˜ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–内ã®ä¾å­˜é–¢ä¿‚を除ãã€ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp <\fIpath\fR>, \-classpath <\fIpath\fR>
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡º÷¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルã®æ¤œç´¢å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .sp
-Setting the Class Path ¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Setting the Class Path ã‚‚å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-p <\fIpkg name\fR>, \-package <\fIpkg name\fR>
 .RS 4
-»ØÄꤷ¤¿¥Ñ¥Ã¥±¡¼¥¸¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£°Û¤Ê¤ë¥Ñ¥Ã¥±¡¼¥¸¤ËÂФ·¤Æ¤³¤Î¥ª¥×¥·¥ç¥ó¤òÊ£¿ô²ó»ØÄê¤Ç¤­¤Þ¤¹¡£\fI\-p\fR¥ª¥×¥·¥ç¥ó¤È\fI\-e\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+指定ã—ãŸãƒ‘ッケージã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚ç•°ãªã‚‹ãƒ‘ッケージã«å¯¾ã—ã¦ã“ã®ã‚ªãƒ—ションを複数回指定ã§ãã¾ã™ã€‚\fI\-p\fRオプションã¨\fI\-e\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-e <\fIregex\fR>, \-regex <\fIregex\fR>
 .RS 4
-»ØÄꤷ¤¿Àµµ¬É½¸½¥Ñ¥¿¡¼¥ó¤È°ìÃפ¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£\fI\-p\fR¥ª¥×¥·¥ç¥ó¤È\fI\-e\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+指定ã—ãŸæ­£è¦è¡¨ç¾ãƒ‘ターンã¨ä¸€è‡´ã™ã‚‹ãƒ‘ッケージã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚\fI\-p\fRオプションã¨\fI\-e\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-include <\fIregex\fR>
 .RS 4
-ʬÀϤò¥Ñ¥¿¡¼¥ó¤Ë°ìÃפ¹¤ë¥¯¥é¥¹¤ËÀ©¸Â¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Ê¬ÀϤ¹¤ë¥¯¥é¥¹¤Î¥ê¥¹¥È¤ò¥Õ¥£¥ë¥¿¤·¤Þ¤¹¡£°Í¸´Ø·¸¤Ë¥Ñ¥¿¡¼¥ó¤òŬÍѤ¹¤ë\fI\-p\fR¤ª¤è¤Ó\fI\-e\fR¤È¤È¤â¤Ë»ÈÍѤǤ­¤Þ¤¹¡£
+分æžã‚’パターンã«ä¸€è‡´ã™ã‚‹ã‚¯ãƒ©ã‚¹ã«åˆ¶é™ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€åˆ†æžã™ã‚‹ã‚¯ãƒ©ã‚¹ã®ãƒªã‚¹ãƒˆã‚’フィルタã—ã¾ã™ã€‚ä¾å­˜é–¢ä¿‚ã«ãƒ‘ターンをé©ç”¨ã™ã‚‹\fI\-p\fRãŠã‚ˆã³\fI\-e\fRã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-jdkinternals
 .RS 4
-JDK¤ÎÆâÉôAPI¤Î¥¯¥é¥¹¥ì¥Ù¥ë¤Î°Í¸´Ø·¸¤ò¸¡½Ð¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fI\-include\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤«¤®¤ê¡¢\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤ÓÆþÎÏ¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤òʬÀϤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-p\fR¥ª¥×¥·¥ç¥ó¡¢\fI\-e\fR¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó\fI\-s\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤǤ­¤Þ¤»¤ó¡£
+JDKã®å†…部APIã®ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã®ä¾å­˜é–¢ä¿‚を検出ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fI\-include\fRオプションを指定ã—ãªã„ã‹ãŽã‚Šã€\fI\-classpath\fRオプションãŠã‚ˆã³å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã«æŒ‡å®šã•ã‚ŒãŸã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¹ã‚’分æžã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-p\fRオプションã€\fI\-e\fRオプションãŠã‚ˆã³\fI\-s\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã§ãã¾ã›ã‚“。
 .sp
-\fB·Ù¹ð\fR: JDK¤ÎÆâÉôAPI¤Ï¡¢º£¸å¤Î¥ê¥ê¡¼¥¹¤Ç¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+\fB警告\fR: JDKã®å†…部APIã¯ã€ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-P, \-profile
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥×¥í¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤òɽ¼¨¤·¤Þ¤¹¡£
+パッケージをå«ã‚€ãƒ—ロファイルã¾ãŸã¯ãƒ•ã‚¡ã‚¤ãƒ«ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-apionly
 .RS 4
-¥Õ¥£¡¼¥ë¥É¡¦¥¿¥¤¥×¡¢¥á¥½¥Ã¥É¡¦¥Ñ¥é¥á¡¼¥¿¡¦¥¿¥¤¥×¡¢Ìá¤ê¥¿¥¤¥×¡¢¥Á¥§¥Ã¥¯¤µ¤ì¤¿Îã³°¥¿¥¤¥×¤ò´Þ¤à¥Ñ¥Ö¥ê¥Ã¥¯¡¦¥¯¥é¥¹¤Î\fIpublic\fR¤ª¤è¤Ó\fIprotected\fR¥á¥ó¥Ð¡¼¤Î½ð̾¤«¤é¤Î°Í¸´Ø·¸¤Ê¤É¡¢Ê¬ÀϤòAPI¤ËÀ©¸Â¤·¤Þ¤¹¡£
+フィールド・タイプã€ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ãƒ‘ラメータ・タイプã€æˆ»ã‚Šã‚¿ã‚¤ãƒ—ã€ãƒã‚§ãƒƒã‚¯ã•ã‚ŒãŸä¾‹å¤–タイプをå«ã‚€ãƒ‘ブリック・クラスã®\fIpublic\fRãŠã‚ˆã³\fIprotected\fRメンãƒãƒ¼ã®ç½²åã‹ã‚‰ã®ä¾å­˜é–¢ä¿‚ãªã©ã€åˆ†æžã‚’APIã«åˆ¶é™ã—ã¾ã™ã€‚
 .RE
 .PP
 \-R, \-recursive
 .RS 4
-¤¹¤Ù¤Æ¤Î°Í¸´Ø·¸¤òºÆµ¢Åª¤ËÁöºº¤·¤Þ¤¹¡£
+ã™ã¹ã¦ã®ä¾å­˜é–¢ä¿‚ã‚’å†å¸°çš„ã«èµ°æŸ»ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-?, \-help
 .RS 4
-\fIjdeps\fR¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjdeps\fRã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを出力ã—ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-Notepad\&.jar¤Î°Í¸´Ø·¸¤ÎʬÀÏ¡£
+Notepad\&.jarã®ä¾å­˜é–¢ä¿‚ã®åˆ†æžã€‚
 .sp
 .if n \{\
 .RS 4
@@ -185,7 +185,7 @@
 .RE
 .\}
 .PP
-\-P¤Þ¤¿¤Ï\-profile¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥á¥âÄ¢¤¬°Í¸¤¹¤ë¥×¥í¥Õ¥¡¥¤¥ë¤òɽ¼¨¤·¤Þ¤¹¡£
+\-Pã¾ãŸã¯\-profileオプションを使用ã—ã¦ã€ãƒ¡ãƒ¢å¸³ãŒä¾å­˜ã™ã‚‹ãƒ—ロファイルを表示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -213,7 +213,7 @@
 .RE
 .\}
 .PP
-tools\&.jar¥Õ¥¡¥¤¥ëÆâ¤Î\fIcom\&.sun\&.tools\&.jdeps\&.Main\fR¥¯¥é¥¹¤Ê¤É¡¢ÆÃÄê¤Î¥¯¥é¥¹¥Ñ¥¹Æâ¤ÎÆÃÄê¤Î¥¯¥é¥¹¤ÎľÀܰ͸´Ø·¸¤ÎʬÀÏ¡£
+tools\&.jarファイル内ã®\fIcom\&.sun\&.tools\&.jdeps\&.Main\fRクラスãªã©ã€ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ãƒ‘ス内ã®ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã®ç›´æŽ¥ä¾å­˜é–¢ä¿‚ã®åˆ†æžã€‚
 .sp
 .if n \{\
 .RS 4
@@ -229,7 +229,7 @@
 .RE
 .\}
 .PP
-\fI\-verbose:class\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¹¥ì¥Ù¥ë°Í¸´Ø·¸¤ò¸¡º÷¤¹¤ë¤«\fI\-v\fR¤Þ¤¿¤Ï\fI\-verbose\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆƱ¤¸JAR¥Õ¥¡¥¤¥ë¤«¤é¤Î°Í¸´Ø·¸¤ò´Þ¤á¤Þ¤¹¡£
+\fI\-verbose:class\fRオプションを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ä¾å­˜é–¢ä¿‚を検索ã™ã‚‹ã‹\fI\-v\fRã¾ãŸã¯\fI\-verbose\fRオプションを使用ã—ã¦åŒã˜JARファイルã‹ã‚‰ã®ä¾å­˜é–¢ä¿‚ã‚’å«ã‚ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -249,7 +249,7 @@
 .RE
 .\}
 .PP
-\fI\-R\fR¤Þ¤¿¤Ï\fI\-recursive\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIcom\&.sun\&.tools\&.jdeps\&.Main\fR¥¯¥é¥¹¤Î¿ä°ÜŪ¤Ê°Í¸´Ø·¸¤òʬÀϤ·¤Þ¤¹¡£
+\fI\-R\fRã¾ãŸã¯\fI\-recursive\fRオプションを使用ã—ã¦ã€\fIcom\&.sun\&.tools\&.jdeps\&.Main\fRクラスã®æŽ¨ç§»çš„ãªä¾å­˜é–¢ä¿‚を分æžã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -305,7 +305,7 @@
 .RE
 .\}
 .PP
-¥á¥âÄ¢¥Ç¥â¤Î°Í¸´Ø·¸¤Îdot¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+メモ帳デモã®ä¾å­˜é–¢ä¿‚ã®dotファイルを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -317,7 +317,7 @@
 .RE
 .\}
 .PP
-\fIjdeps\fR¤Ï¡¢\fI\-dotoutput\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿dot¥Ç¥£¥ì¥¯¥È¥ê¤Ë<\fIfilename\fR>\&.dot¤È¤¤¤¦Ì¾Á°¤Îdot¥Õ¥¡¥¤¥ë¤òÆÃÄê¤ÎJAR¥Õ¥¡¥¤¥ë¤´¤È¤ËºîÀ®¤·¡¢JAR¥Õ¥¡¥¤¥ë´Ö¤Î°Í¸´Ø·¸¤ò¥ê¥¹¥È¤¹¤ësummary\&.dot¤È¤¤¤¦Ì¾Á°¤Î¥µ¥Þ¥ê¡¼¡¦¥Õ¥¡¥¤¥ë¤âºîÀ®¤·¤Þ¤¹
+\fIjdeps\fRã¯ã€\fI\-dotoutput\fRオプションã§æŒ‡å®šã•ã‚ŒãŸdotディレクトリã«<\fIfilename\fR>\&.dotã¨ã„ã†åå‰ã®dotファイルを特定ã®JARファイルã”ã¨ã«ä½œæˆã—ã€JARファイル間ã®ä¾å­˜é–¢ä¿‚をリストã™ã‚‹summary\&.dotã¨ã„ã†åå‰ã®ã‚µãƒžãƒªãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚‚作æˆã—ã¾ã™
 .sp
 .if n \{\
 .RS 4
@@ -350,7 +350,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jhat.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jhat.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jhat
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jhat" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jhat" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jhat \- Java¥Ò¡¼¥×¤òʬÀϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jhat \- Javaヒープを分æžã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,18 +64,18 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIheap\-dump\-file\fR
 .RS 4
-¥Ö¥é¥¦¥ºÂоݤȤʤëJava¥Ð¥¤¥Ê¥ê¡¦¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¡£Ê£¿ô¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò´Þ¤à¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¡¢\fImyfile\&.hprof#3\fR¤Î¤è¤¦¤Ë¥Õ¥¡¥¤¥ë̾¤Î¸å¤Ë\fI#<number>\fR¤òÉղ乤뤳¤È¤Ç¡¢¥Õ¥¡¥¤¥ëÆâ¤ÎÆÃÄê¤Î¥À¥ó¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+ブラウズ対象ã¨ãªã‚‹Javaãƒã‚¤ãƒŠãƒªãƒ»ãƒ’ープ・ダンプ・ファイル。複数ã®ãƒ’ープ・ダンプをå«ã‚€ãƒ€ãƒ³ãƒ—・ファイルã®å ´åˆã€\fImyfile\&.hprof#3\fRã®ã‚ˆã†ã«ãƒ•ã‚¡ã‚¤ãƒ«åã®å¾Œã«\fI#<number>\fRを付加ã™ã‚‹ã“ã¨ã§ã€ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ç‰¹å®šã®ãƒ€ãƒ³ãƒ—を指定ã§ãã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjhat\fR¥³¥Þ¥ó¥É¤ÏJava¥Ò¡¼¥×¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤ò²òÀϤ·¡¢Web¥µ¡¼¥Ð¡¼¤ò³«»Ï¤·¤Þ¤¹¡£\fIjhat\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¤ªµ¤¤ËÆþ¤ê¤Î¥Ö¥é¥¦¥¶¤Ç¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»²¾È¤Ç¤­¤Þ¤¹¡£\fIjhat\fR¥³¥Þ¥ó¥É¤Ï¡¢´ûÃΤΥ¯¥é¥¹\fIMyClass\fR¤Î¤¹¤Ù¤Æ¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òɽ¼¨¤¹¤ë¤Ê¤É¤Î»öÁ°À߷׺ѤÎÌä¹ç¤»¤äObject Query Language (OQL)¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×¤ÎÌä¹ç¤»¤ò½ü¤­¡¢OQL¤ÏSQL¤Ë»÷¤Æ¤¤¤Þ¤¹¡£OQL¤Î¥Ø¥ë¥×¤Ë¤Ï¡¢\fIjhat\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æɽ¼¨¤µ¤ì¤ëOQL¥Ø¥ë¥×¡¦¥Ú¡¼¥¸¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢OQL¤Î¥Ø¥ë¥×¤Ïhttp://localhost:7000/oqlhelp/¤ÇÍøÍѲÄǽ¤Ç¤¹¡£
+\fIjhat\fRコマンドã¯Javaヒープ・ダンプ・ファイルを解æžã—ã€Webサーãƒãƒ¼ã‚’開始ã—ã¾ã™ã€‚\fIjhat\fRコマンドを使用ã—ã¦ã€ãŠæ°—ã«å…¥ã‚Šã®ãƒ–ラウザã§ãƒ’ープ・ダンプをå‚ç…§ã§ãã¾ã™ã€‚\fIjhat\fRコマンドã¯ã€æ—¢çŸ¥ã®ã‚¯ãƒ©ã‚¹\fIMyClass\fRã®ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’表示ã™ã‚‹ãªã©ã®äº‹å‰è¨­è¨ˆæ¸ˆã®å•åˆã›ã‚„Object Query Language (OQL)をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ヒープ・ダンプã®å•åˆã›ã‚’除ãã€OQLã¯SQLã«ä¼¼ã¦ã„ã¾ã™ã€‚OQLã®ãƒ˜ãƒ«ãƒ—ã«ã¯ã€\fIjhat\fRコマンドã«ã‚ˆã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹OQLヘルプ・ページã‹ã‚‰ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚デフォルト・ãƒãƒ¼ãƒˆã‚’使用ã™ã‚‹å ´åˆã€OQLã®ãƒ˜ãƒ«ãƒ—ã¯http://localhost:7000/oqlhelp/ã§åˆ©ç”¨å¯èƒ½ã§ã™ã€‚
 .PP
-Java¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤¤¤¯¤Ä¤«¤ÎÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+Javaã®ãƒ’ープ・ダンプを生æˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã„ãã¤ã‹ã®æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -85,7 +85,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjmap \-dump\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¼Â¹Ô»þ¤Ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò¼èÆÀ¤·¤Þ¤¹¡£jmap(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjmap \-dump\fRオプションを使用ã—ã¦å®Ÿè¡Œæ™‚ã«ãƒ’ープ・ダンプをå–å¾—ã—ã¾ã™ã€‚jmap(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -96,8 +96,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIjconsole\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ\fIHotSpotDiagnosticMXBean\fR·Ðͳ¤Ç¼Â¹Ô»þ¤Ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò¼èÆÀ¤·¤Þ¤¹¡£jconsole(1)¤ª¤è¤Ó\fIHotSpotDiagnosticMXBean\fR¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÀâÌÀ(
-http://docs\&.oracle\&.com/javase/8/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjconsole\fRオプションを使用ã—ã¦\fIHotSpotDiagnosticMXBean\fR経由ã§å®Ÿè¡Œæ™‚ã«ãƒ’ープ・ダンプをå–å¾—ã—ã¾ã™ã€‚jconsole(1)ãŠã‚ˆã³\fIHotSpotDiagnosticMXBean\fRã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®èª¬æ˜Ž(
+http://docs\&.oracle\&.com/javase/8/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .sp
 .RS 4
@@ -108,8 +108,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ò¡¼¥×¡¦¥À¥ó¥×¤Ï¡¢\fI\-XX:+HeapDumpOnOutOfMemoryError\fR
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢\fIOutOfMemoryError\fR¤¬¥¹¥í¡¼¤µ¤ì¤¿¤È¤­¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£
+ヒープ・ダンプã¯ã€\fI\-XX:+HeapDumpOnOutOfMemoryError\fR
+Java仮想マシン(JVM)オプションを指定ã™ã‚‹ã“ã¨ã§ã€\fIOutOfMemoryError\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚ŒãŸã¨ãã«ç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -120,61 +120,61 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIhprof\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£HPROF: Heap/CPU¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIhprof\fRコマンドを使用ã—ã¾ã™ã€‚HPROF: Heap/CPUプロファイリング・ツール
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-stack false|true
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È³äÅö¸Æ½Ð¤·¥¹¥¿¥Ã¥¯¤ÎÄÉÀפò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×Æâ¤Ç³äÅö¥µ¥¤¥È¾ðÊ󤬻ÈÍѤǤ­¤Ê¤¤¾ì¹ç¡¢¤³¤Î¥Õ¥é¥°¤ò\fIfalse\fR¤ËÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fItrue\fR¤Ç¤¹¡£
+オブジェクト割当呼出ã—スタックã®è¿½è·¡ã‚’無効ã«ã—ã¾ã™ã€‚ヒープ・ダンプ内ã§å‰²å½“サイト情報ãŒä½¿ç”¨ã§ããªã„å ´åˆã€ã“ã®ãƒ•ãƒ©ã‚°ã‚’\fIfalse\fRã«è¨­å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚デフォルトã¯\fItrue\fRã§ã™ã€‚
 .RE
 .PP
 \-refs false|true
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤ÎÄÉÀפò̵¸ú¤Ë¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fItrue\fR¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Ò¡¼¥×Æâ¤Î¤¹¤Ù¤Æ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¡¢¥Ð¥Ã¥¯¥Ý¥¤¥ó¥¿(»ØÄꤵ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ò¥Ý¥¤¥ó¥È¤·¤Æ¤¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¡£»²¾È¼Ô¤Þ¤¿¤Ï¼õ¿®»²¾È¤È¤â¸Æ¤Ð¤ì¤ë)¤¬·×»»¤µ¤ì¤Þ¤¹¡£
+オブジェクトã¸ã®å‚ç…§ã®è¿½è·¡ã‚’無効ã«ã—ã¾ã™ã€‚デフォルトã¯\fItrue\fRã§ã™ã€‚デフォルトã§ã¯ã€ãƒ’ープ内ã®ã™ã¹ã¦ã®ã‚ªãƒ–ジェクトã«ã¤ã„ã¦ã€ãƒãƒƒã‚¯ãƒã‚¤ãƒ³ã‚¿(指定ã•ã‚ŒãŸã‚ªãƒ–ジェクトをãƒã‚¤ãƒ³ãƒˆã—ã¦ã„るオブジェクト。å‚照者ã¾ãŸã¯å—ä¿¡å‚ç…§ã¨ã‚‚呼ã°ã‚Œã‚‹)ãŒè¨ˆç®—ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-port \fIport\-number\fR
 .RS 4
-\fIjhat\fR¤ÎHTTP¥µ¡¼¥Ð¡¼¤Î¥Ý¡¼¥È¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï7000¤Ç¤¹¡£
+\fIjhat\fRã®HTTPサーãƒãƒ¼ã®ãƒãƒ¼ãƒˆã‚’設定ã—ã¾ã™ã€‚デフォルトã¯7000ã§ã™ã€‚
 .RE
 .PP
 \-exclude \fIexclude\-file\fR
 .RS 4
-Åþã²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ÎÌä¹ç¤»¤«¤é½ü³°¤¹¤ëɬÍפ¬¤¢¤ë¥Ç¡¼¥¿¡¦¥á¥ó¥Ð¡¼¤Î°ìÍ÷¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ë\fIjava\&.lang\&.String\&.value\fR¤¬´Þ¤Þ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢ÆÃÄê¤Î¥ª¥Ö¥¸¥§¥¯¥È\fIo\fR¤«¤éÅþã²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ê¥¹¥È¤ò·×»»¤¹¤ëºÝ¤Ë¡¢\fIjava\&.lang\&.String\&.value\fR¥Õ¥£¡¼¥ë¥É¤Ë´ØÏ¢¤¹¤ë»²¾È¥Ñ¥¹¤¬¹Í褵¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
+到é”å¯èƒ½ãªã‚ªãƒ–ジェクトã®å•åˆã›ã‹ã‚‰é™¤å¤–ã™ã‚‹å¿…è¦ãŒã‚るデータ・メンãƒãƒ¼ã®ä¸€è¦§ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«\fIjava\&.lang\&.String\&.value\fRãŒå«ã¾ã‚Œã¦ã„ãŸå ´åˆã€ç‰¹å®šã®ã‚ªãƒ–ジェクト\fIo\fRã‹ã‚‰åˆ°é”å¯èƒ½ãªã‚ªãƒ–ジェクトã®ãƒªã‚¹ãƒˆã‚’計算ã™ã‚‹éš›ã«ã€\fIjava\&.lang\&.String\&.value\fRフィールドã«é–¢é€£ã™ã‚‹å‚照パスãŒè€ƒæ…®ã•ã‚Œãªããªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-baseline \fIexclude\-file\fR
 .RS 4
-¥Ù¡¼¥¹¥é¥¤¥ó¤È¤Ê¤ë¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»ØÄꤷ¤Þ¤¹¡£Î¾Êý¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×Æâ¤ÇƱ¤¸¥ª¥Ö¥¸¥§¥¯¥ÈID¤ò»ý¤Ä¥ª¥Ö¥¸¥§¥¯¥È¤Ï¿·µ¬¤Ç¤Ï¤Ê¤¤¤È¤·¤Æ¥Þ¡¼¥¯¤µ¤ì¤Þ¤¹¡£Â¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï¿·µ¬¤È¤·¤Æ¥Þ¡¼¥¯¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢°Û¤Ê¤ë2¤Ä¤Î¥Ò¡¼¥×¡¦¥À¥ó¥×¤òÈæ³Ó¤¹¤ëºÝ¤ËÌòΩ¤Á¤Þ¤¹¡£
+ベースラインã¨ãªã‚‹ãƒ’ープ・ダンプを指定ã—ã¾ã™ã€‚両方ã®ãƒ’ープ・ダンプ内ã§åŒã˜ã‚ªãƒ–ジェクトIDã‚’æŒã¤ã‚ªãƒ–ジェクトã¯æ–°è¦ã§ã¯ãªã„ã¨ã—ã¦ãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã™ã€‚ä»–ã®ã‚ªãƒ–ジェクトã¯æ–°è¦ã¨ã—ã¦ãƒžãƒ¼ã‚¯ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ç•°ãªã‚‹2ã¤ã®ãƒ’ープ・ダンプを比較ã™ã‚‹éš›ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .RE
 .PP
 \-debug \fIint\fR
 .RS 4
-¤³¤Î¥Ä¡¼¥ë¤Î¥Ç¥Ð¥Ã¥°¡¦¥ì¥Ù¥ë¤òÀßÄꤷ¤Þ¤¹¡£¥ì¥Ù¥ë0¤Ï¥Ç¥Ð¥Ã¥°½ÐÎϤ¬¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤è¤êÂ礭¤ÊÃͤòÀßÄꤹ¤ë¤È¡¢¤è¤ê¾éĹ¤Ê¥â¡¼¥É¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã“ã®ãƒ„ールã®ãƒ‡ãƒãƒƒã‚°ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’設定ã—ã¾ã™ã€‚レベル0ã¯ãƒ‡ãƒãƒƒã‚°å‡ºåŠ›ãŒãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚より大ããªå€¤ã‚’設定ã™ã‚‹ã¨ã€ã‚ˆã‚Šå†—é•·ãªãƒ¢ãƒ¼ãƒ‰ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹ÈÖ¹æ¤ò¥ì¥Ý¡¼¥È¤·¤Æ½ªÎ»¤·¤Þ¤¹
+リリース番å·ã‚’レãƒãƒ¼ãƒˆã—ã¦çµ‚了ã—ã¾ã™
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjhat\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢512M¥Ð¥¤¥È¤ÎºÇÂç¥Ò¡¼¥×¡¦¥µ¥¤¥º¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fI\-J\-Xmx512m\fR¤È¤·¤Þ¤¹¡£
+\fIjhat\fRコマンドを実行ã—ã¦ã„ã‚‹Java仮想マシンã«\fIflag\fRを渡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€512Mãƒã‚¤ãƒˆã®æœ€å¤§ãƒ’ープ・サイズを使用ã™ã‚‹ã«ã¯ã€\fI\-J\-Xmx512m\fRã¨ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -206,7 +206,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-HPROF: Heap/CPU¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+HPROF: Heap/CPUプロファイリング・ツール
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jinfo.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jinfo.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jinfo
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jinfo" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jinfo" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jinfo \- ¹½À®¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jinfo \- 構æˆæƒ…報を生æˆã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -82,83 +82,83 @@
 .RE
 .\}
 .PP
-\fI¥ª¥×¥·¥ç¥ó\fR
+\fIオプション\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-¹½À®¾ðÊ󤬽ÐÎϤµ¤ì¤ë¥×¥í¥»¥¹ID¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+構æˆæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ãƒ—ロセスID。プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-¹½À®¾ðÊ󤬽ÐÎϤµ¤ì¤ë¥³¥¢¡¦¥Õ¥¡¥¤¥ë¡£
+構æˆæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã‚‹ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjinfo\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ÎJava¹½À®¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£¹½À®¾ðÊó¤Ë¤Ï¡¢Java¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ÈJava²¾ÁÛ¥Þ¥·¥ó(JVM)¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJVM¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjinfo\fR
-\fI\-J\-d64 \-sysprops pid\fR¡£
+\fIjinfo\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸJavaプロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®Java構æˆæƒ…報を出力ã—ã¾ã™ã€‚構æˆæƒ…å ±ã«ã¯ã€Javaシステム・プロパティã¨Java仮想マシン(JVM)ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJVM上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjinfo\fR
+\fI\-J\-d64 \-sysprops pid\fR。
 .PP
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR¤Ç¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fRã§ã™ã€‚
+.SH "オプション"
 .PP
 no\-option
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò¡¢¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£Ì¾¤ÈÃͤΥڥ¢¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£
+コマンドライン・フラグをã€ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティåã¨å€¤ã®ãƒšã‚¢ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fIname\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤Î̾Á°¤ÈÃͤò½ÐÎϤ·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã®åå‰ã¨å€¤ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fI[+|\-]name\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥Ö¡¼¥ë·¿¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤òÍ­¸ú¤Þ¤¿¤Ï̵¸ú¤Ë¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸãƒ–ール型ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’有効ã¾ãŸã¯ç„¡åŠ¹ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-flag \fIname=value\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò»ØÄꤵ¤ì¤¿ÃͤËÀßÄꤷ¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’指定ã•ã‚ŒãŸå€¤ã«è¨­å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-flags
 .RS 4
-JVM¤ËÅϤµ¤ì¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Õ¥é¥°¤ò½ÐÎϤ·¤Þ¤¹¡£
+JVMã«æ¸¡ã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ•ãƒ©ã‚°ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-sysprops
 .RS 4
-Java¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤ò̾Á°¤ÈÃͤΥڥ¢¤È¤·¤Æ½ÐÎϤ·¤Þ¤¹¡£
+Javaシステム・プロパティをåå‰ã¨å€¤ã®ãƒšã‚¢ã¨ã—ã¦å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jjs.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jjs.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1994, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jjs
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ´ðËܥġ¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 基本ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jjs" "1" "2013ǯ11·î21Æü" "JDK 8" "´ðËܥġ¼¥ë"
+.TH "jjs" "1" "2013年11月21日" "JDK 8" "基本ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jjs \- Nashorn¥¨¥ó¥¸¥ó¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jjs \- Nashornエンジンを呼ã³å‡ºã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,28 +64,28 @@
 .PP
 \fIoptions\fR
 .RS 4
-¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤¿¡¢\fIjjs\fR¥³¥Þ¥ó¥É¤Î1¤Ä°Ê¾å¤Î¥ª¥×¥·¥ç¥ó¡£¾ÜºÙ¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+空白文字ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã€\fIjjs\fRコマンドã®1ã¤ä»¥ä¸Šã®ã‚ªãƒ—ション。詳細ã¯ã€ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIscript\-files\fR
 .RS 4
-¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤¿¡¢Nashorn¤ò»ÈÍѤ·¤Æ²ò¼á¤¹¤ë1¤Ä°Ê¾å¤Î¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Ê¤¤¾ì¹ç¤Ï¡¢ÂÐÏ÷¿¥·¥§¥ë¤¬µ¯Æ°¤µ¤ì¤Þ¤¹¡£
+空白文字ã§åŒºåˆ‡ã‚‰ã‚ŒãŸã€Nashornを使用ã—ã¦è§£é‡ˆã™ã‚‹1ã¤ä»¥ä¸Šã®ã‚¹ã‚¯ãƒªãƒ—ト・ファイル。ファイルãŒæŒ‡å®šã•ã‚Œãªã„å ´åˆã¯ã€å¯¾è©±åž‹ã‚·ã‚§ãƒ«ãŒèµ·å‹•ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-Æó½Å¥Ï¥¤¥Õ¥ó¡¦¥Þ¡¼¥«¡¼(\fI\-\-\fR)¤Î¸å¤Î¤¹¤Ù¤Æ¤ÎÃͤ¬¡¢°ú¿ô¤È¤·¤Æ¥¹¥¯¥ê¥×¥È¤Þ¤¿¤ÏÂÐÏ÷¿¥·¥§¥ë¤ËÅϤµ¤ì¤Þ¤¹¡£¤³¤ì¤é¤ÎÃͤˤÏ\fIarguments\fR¥×¥í¥Ñ¥Æ¥£¤ò»ÈÍѤ·¤Æ¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹(Example 3¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£
+二é‡ãƒã‚¤ãƒ•ãƒ³ãƒ»ãƒžãƒ¼ã‚«ãƒ¼(\fI\-\-\fR)ã®å¾Œã®ã™ã¹ã¦ã®å€¤ãŒã€å¼•æ•°ã¨ã—ã¦ã‚¹ã‚¯ãƒªãƒ—トã¾ãŸã¯å¯¾è©±åž‹ã‚·ã‚§ãƒ«ã«æ¸¡ã•ã‚Œã¾ã™ã€‚ã“れらã®å€¤ã«ã¯\fIarguments\fRプロパティを使用ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™(Example 3ã‚’å‚ç…§ã—ã¦ãã ã•ã„)。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjjs\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤ò»ÈÍѤ·¤ÆNashorn¥¨¥ó¥¸¥ó¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ·¤Æ¡¢1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤ò²ò¼á¤·¤¿¤ê¡¢ÂÐÏ÷¿¥·¥§¥ë¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjjs\fRコマンドライン・ツールを使用ã—ã¦Nashornエンジンを呼ã³å‡ºã—ã¾ã™ã€‚ã“れを使用ã—ã¦ã€1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¹ã‚¯ãƒªãƒ—ト・ファイルを解釈ã—ãŸã‚Šã€å¯¾è©±åž‹ã‚·ã‚§ãƒ«ã‚’実行ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjjs\fR¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤Ï¥¹¥¯¥ê¥×¥È¤¬Nashorn¤Ë¤è¤Ã¤Æ²ò¼á¤µ¤ì¤ë¾ò·ï¤òÀ©¸æ¤·¤Þ¤¹¡£
+\fIjjs\fRコマンドã®ã‚ªãƒ—ションã¯ã‚¹ã‚¯ãƒªãƒ—トãŒNashornã«ã‚ˆã£ã¦è§£é‡ˆã•ã‚Œã‚‹æ¡ä»¶ã‚’制御ã—ã¾ã™ã€‚
 .PP
 \-ccs=\fIsize\fR, \-\-class\-cache\-size=\fIsize\fR
 .RS 4
-¥¯¥é¥¹¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤ò¥Ð¥¤¥Èñ°Ì¤ÇÀßÄꤷ¤Þ¤¹¡£¥­¥í¥Ð¥¤¥È(KB)¤ò¼¨¤¹¤¿¤á¤Ë\fIk\fR¤Þ¤¿¤Ï\fIK\fR¤Îʸ»ú¤òÄɲä·¡¢¥á¥¬¥Ð¥¤¥È(MB)¤ò¼¨¤¹¤¿¤á¤Ë\fIm\fR¤Þ¤¿¤Ï\fIM\fR¤Îʸ»ú¤òÄɲä·¡¢¥®¥¬¥Ð¥¤¥È(GB)¤ò¼¨¤¹¤¿¤á¤Ë\fIg\fR¤Þ¤¿¤Ï\fIG\fR¤òÄɲä·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥­¥ã¥Ã¥·¥å¡¦¥µ¥¤¥º¤Ï50¥Ð¥¤¥È¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢1024¥Ð¥¤¥È(1 KB)¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+クラス・キャッシュ・サイズをãƒã‚¤ãƒˆå˜ä½ã§è¨­å®šã—ã¾ã™ã€‚キロãƒã‚¤ãƒˆ(KB)を示ã™ãŸã‚ã«\fIk\fRã¾ãŸã¯\fIK\fRã®æ–‡å­—を追加ã—ã€ãƒ¡ã‚¬ãƒã‚¤ãƒˆ(MB)を示ã™ãŸã‚ã«\fIm\fRã¾ãŸã¯\fIM\fRã®æ–‡å­—を追加ã—ã€ã‚®ã‚¬ãƒã‚¤ãƒˆ(GB)を示ã™ãŸã‚ã«\fIg\fRã¾ãŸã¯\fIG\fRを追加ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚­ãƒ£ãƒƒã‚·ãƒ¥ãƒ»ã‚µã‚¤ã‚ºã¯50ãƒã‚¤ãƒˆã«è¨­å®šã•ã‚Œã¾ã™ã€‚次ã®ä¾‹ã¯ã€1024ãƒã‚¤ãƒˆ(1 KB)ã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -101,17 +101,17 @@
 .PP
 \-co, \-\-compile\-only
 .RS 4
-¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤»¤º¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+スクリプトを実行ã›ãšã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR, \-\-classpath \fIpath\fR
 .RS 4
-¥µ¥Ý¡¼¥È¤¹¤ë¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£Ê£¿ô¤Î¥Ñ¥¹¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤¹¤«¡¢¤Þ¤¿¤Ï³Æ¥Ñ¥¹¤ò¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
+サãƒãƒ¼ãƒˆã™ã‚‹ã‚¯ãƒ©ã‚¹ã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚複数ã®ãƒ‘スを設定ã™ã‚‹ã«ã¯ã€ã“ã®ã‚ªãƒ—ションを繰り返ã™ã‹ã€ã¾ãŸã¯å„パスをコロン(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-¥×¥í¥Ñ¥Æ¥£Ì¾¤ËÃͤò³ä¤êÅö¤Æ¤ë¤³¤È¤Ç¡¢¥¹¥¯¥ê¥×¥È¤ËÅϤ¹¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¡¢ÂÐÏ÷¿¥â¡¼¥É¤ÇNashorn¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢\fImyValue\fR¤ò\fImyKey\fR¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥Ñ¥Æ¥£¤Ë³ä¤êÅö¤Æ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+プロパティåã«å€¤ã‚’割り当ã¦ã‚‹ã“ã¨ã§ã€ã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã™ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティを設定ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ã§Nashornを呼ã³å‡ºã—ã¦ã€\fImyValue\fRã‚’\fImyKey\fRã¨ã„ã†åå‰ã®ãƒ—ロパティã«å‰²ã‚Šå½“ã¦ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -125,67 +125,67 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤·»ÈÍѤ¹¤ë¤È¡¢Ê£¿ô¤Î¥×¥í¥Ñ¥Æ¥£¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを繰り返ã—使用ã™ã‚‹ã¨ã€è¤‡æ•°ã®ãƒ—ロパティを設定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-d=\fIpath\fR, \-\-dump\-debug\-dir=\fIpath\fR
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò¥À¥ó¥×¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイルをダンプã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¸ã®ãƒ‘スを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-debug\-lines
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¹ÔÈÖ¹æɽ¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-debug\-lines=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+クラス・ファイル内ã®è¡Œç•ªå·è¡¨ã‚’生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-debug\-lines=false\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-debug\-locals
 .RS 4
-¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¥í¡¼¥«¥ëÊÑ¿ô¤òÀ¸À®¤·¤Þ¤¹¡£
+クラス・ファイル内ã®ãƒ­ãƒ¼ã‚«ãƒ«å¤‰æ•°ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-doe, \-\-dump\-on\-error
 .RS 4
-¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤È¤­¤Ë¡¢¥Õ¥ë¡¦¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢´Êñ¤Ê¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤Î¤ß¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+エラーãŒç™ºç”Ÿã—ãŸã¨ãã«ã€ãƒ•ãƒ«ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚デフォルトã§ã¯ã€ç°¡å˜ãªã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ã¿ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-early\-lvalue\-error
 .RS 4
-̵¸ú¤Êº¸ÊÕÃͼ°¤¬Áá´ü¥¨¥é¡¼¤È¤·¤Æ(¤Ä¤Þ¤ê¡¢¥³¡¼¥É¤¬²òÀϤµ¤ì¤ë¤È¤­¤Ë)Êó¹ð¤µ¤ì¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-early\-lvalue\-error=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£Ìµ¸ú¤Ê¾ì¹ç¡¢Ìµ¸ú¤Êº¸ÊÕÃͼ°¤Ï¥³¡¼¥É¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤ÇÊó¹ð¤µ¤ì¤Þ¤»¤ó¡£
+無効ãªå·¦è¾ºå€¤å¼ãŒæ—©æœŸã‚¨ãƒ©ãƒ¼ã¨ã—ã¦(ã¤ã¾ã‚Šã€ã‚³ãƒ¼ãƒ‰ãŒè§£æžã•ã‚Œã‚‹ã¨ãã«)報告ã•ã‚Œã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-early\-lvalue\-error=false\fRを指定ã—ã¾ã™ã€‚無効ãªå ´åˆã€ç„¡åŠ¹ãªå·¦è¾ºå€¤å¼ã¯ã‚³ãƒ¼ãƒ‰ãŒå®Ÿè¡Œã•ã‚Œã‚‹ã¾ã§å ±å‘Šã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-\-empty\-statements
 .RS 4
-¶õ¤Îʸ¤òJava¤ÎÃê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ËÊݸ¤·¤Þ¤¹¡£
+空ã®æ–‡ã‚’Javaã®æŠ½è±¡æ§‹æ–‡ãƒ„リーã«ä¿å­˜ã—ã¾ã™ã€‚
 .RE
 .PP
 \-fv, \-\-fullversion
 .RS 4
-´°Á´¤ÊNashorn¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò½ÐÎϤ·¤Þ¤¹¡£
+完全ãªNashornãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-function\-statement\-error
 .RS 4
-´Ø¿ô¤ÎÀë¸À¤¬Ê¸¤È¤·¤Æ»ÈÍѤµ¤ì¤ë¤È¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+関数ã®å®£è¨€ãŒæ–‡ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ã¨ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-function\-statement\-warning
 .RS 4
-´Ø¿ô¤ÎÀë¸À¤¬Ê¸¤È¤·¤Æ»ÈÍѤµ¤ì¤ë¤È·Ù¹ð¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+関数ã®å®£è¨€ãŒæ–‡ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã‚‹ã¨è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-fx
 .RS 4
-¥¹¥¯¥ê¥×¥È¤òJavaFX¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤·¤Æµ¯Æ°¤·¤Þ¤¹¡£
+スクリプトをJavaFXアプリケーションã¨ã—ã¦èµ·å‹•ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h, \-help
 .RS 4
-¥ª¥×¥·¥ç¥ó¤Î¥ê¥¹¥È¤È¤½¤ÎÀâÌÀ¤ò½ÐÎϤ·¤Þ¤¹¡£
+オプションã®ãƒªã‚¹ãƒˆã¨ãã®èª¬æ˜Žã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤷ¤¿\fIjava\fRµ¯Æ°¥ª¥×¥·¥ç¥ó¤òJVM¤ËÅϤ·¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¡¢ÂÐÏ÷¿¥â¡¼¥É¤ÇNashorn¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢JVM¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëºÇÂç¥á¥â¥ê¡¼¤ò4 GB¤ËÀßÄꤹ¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+指定ã—ãŸ\fIjava\fR起動オプションをJVMã«æ¸¡ã—ã¾ã™ã€‚次ã®ä¾‹ã§ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ã§Nashornを呼ã³å‡ºã—ã¦ã€JVMã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹æœ€å¤§ãƒ¡ãƒ¢ãƒªãƒ¼ã‚’4 GBã«è¨­å®šã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -199,22 +199,22 @@
 .if n \{\
 .RE
 .\}
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«¤êÊÖ¤·»ÈÍѤ¹¤ë¤È¡¢Ê£¿ô¤Î\fIjava\fR¥³¥Þ¥ó¥É¡¦¥ª¥×¥·¥ç¥ó¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを繰り返ã—使用ã™ã‚‹ã¨ã€è¤‡æ•°ã®\fIjava\fRコマンド・オプションを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
 \-\-lazy\-compilation
 .RS 4
-¥ì¥¤¥¸¡¼¡¦¥³¡¼¥ÉÀ¸À®Àïά(¤Ä¤Þ¤ê¡¢¥¹¥¯¥ê¥×¥ÈÁ´ÂΤ¬°ìÅ٤˥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Ê¤¤)¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¤¹¡£
+レイジー・コード生æˆæˆ¦ç•¥(ã¤ã¾ã‚Šã€ã‚¹ã‚¯ãƒªãƒ—ト全体ãŒä¸€åº¦ã«ã‚³ãƒ³ãƒ‘イルã•ã‚Œãªã„)を有効ã«ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã™ã€‚
 .RE
 .PP
 \-\-loader\-per\-compile
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë¿·¤·¤¤¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤òºîÀ®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£Ìµ¸ú¤Ë¤¹¤ë¤Ë¤Ï\fI\-\-loader\-per\-compile=false\fR¤ò»ØÄꤷ¤Þ¤¹¡£
+コンパイルã”ã¨ã«æ–°ã—ã„クラス・ローダーを作æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€ã“ã®ã‚ªãƒ—ションã¯æœ‰åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚無効ã«ã™ã‚‹ã«ã¯\fI\-\-loader\-per\-compile=false\fRを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-log=\fIsubsystem\fR:\fIlevel\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥µ¥Ö¥·¥¹¥Æ¥à¤ËÂФ·¤Æ¡¢ÆÃÄê¤Î¥ì¥Ù¥ë¤Ç¥í¥®¥ó¥°¤ò¼Â¹Ô¤·¤Þ¤¹¡£¥«¥ó¥Þ¤Ç¶èÀڤäÆÊ£¿ô¤Î¥µ¥Ö¥·¥¹¥Æ¥à¤Î¥í¥®¥ó¥°¡¦¥ì¥Ù¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚µãƒ–システムã«å¯¾ã—ã¦ã€ç‰¹å®šã®ãƒ¬ãƒ™ãƒ«ã§ãƒ­ã‚®ãƒ³ã‚°ã‚’実行ã—ã¾ã™ã€‚カンマã§åŒºåˆ‡ã£ã¦è¤‡æ•°ã®ã‚µãƒ–システムã®ãƒ­ã‚®ãƒ³ã‚°ãƒ»ãƒ¬ãƒ™ãƒ«ã‚’指定ã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -229,116 +229,116 @@
 .PP
 \-\-package=\fIname\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÄɲ乤ë¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’追加ã™ã‚‹ãƒ‘ッケージを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-parse\-only
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤»¤º¤Ë¥³¡¼¥É¤ò²òÀϤ·¤Þ¤¹¡£
+コンパイルã›ãšã«ã‚³ãƒ¼ãƒ‰ã‚’解æžã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-ast
 .RS 4
-Ãê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+抽象構文ツリーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-code
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò½ÐÎϤ·¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-lower\-ast
 .RS 4
-·¡¤ê²¼¤²¤¿Ãê¾Ý¹½Ê¸¥Ä¥ê¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+掘り下ã’ãŸæŠ½è±¡æ§‹æ–‡ãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-lower\-parse
 .RS 4
-·¡¤ê²¼¤²¤¿²òÀϥĥ꡼¤ò½ÐÎϤ·¤Þ¤¹¡£
+掘り下ã’ãŸè§£æžãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-no\-newline
 .RS 4
-¤½¤Î¾¤Î\fI\-\-print*\fR¥ª¥×¥·¥ç¥ó¤Ç¶¯À©Åª¤Ë1¹Ô¤Ç½ÐÎϤ·¤Þ¤¹¡£
+ãã®ä»–ã®\fI\-\-print*\fRオプションã§å¼·åˆ¶çš„ã«1è¡Œã§å‡ºåŠ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-parse
 .RS 4
-²òÀϥĥ꡼¤ò½ÐÎϤ·¤Þ¤¹¡£
+解æžãƒ„リーを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-print\-symbols
 .RS 4
-µ­¹æɽ¤ò½ÐÎϤ·¤Þ¤¹¡£
+記å·è¡¨ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-pcs, \-\-profile\-callsites
 .RS 4
-¸Æ¤Ó½Ð¤·¥µ¥¤¥È¤Î¥×¥í¥Õ¥¡¥¤¥ë¡¦¥Ç¡¼¥¿¤ò¥À¥ó¥×¤·¤Þ¤¹¡£
+呼ã³å‡ºã—サイトã®ãƒ—ロファイル・データをダンプã—ã¾ã™ã€‚
 .RE
 .PP
 \-scripting
 .RS 4
-¥·¥§¥ë¤Î¥¹¥¯¥ê¥×¥Èµ¡Ç½¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+シェルã®ã‚¹ã‚¯ãƒªãƒ—ト機能を有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-stderr=\fIfilename\fR|\fIstream\fR|\fItty\fR
 .RS 4
-ɸ½à¥¨¥é¡¼¡¦¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¡¢¥¹¥È¥ê¡¼¥à(¤¿¤È¤¨¤Ð\fIstdout\fR)¤Ë¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥ÈüËö¤Ë¥ê¥À¥¤¥ì¥¯¥È¤·¤Þ¤¹¡£
+標準エラー・ストリームを指定ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¹ãƒˆãƒªãƒ¼ãƒ (ãŸã¨ãˆã°\fIstdout\fR)ã«ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆç«¯æœ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-\-stdout=\fIfilename\fR|\fIstream\fR|\fItty\fR
 .RS 4
-ɸ½à½ÐÎÏ¥¹¥È¥ê¡¼¥à¤ò»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¡¢¥¹¥È¥ê¡¼¥à(¤¿¤È¤¨¤Ð\fIstderr\fR)¤Ë¡¢¤Þ¤¿¤Ï¥Æ¥­¥¹¥ÈüËö¤Ë¥ê¥À¥¤¥ì¥¯¥È¤·¤Þ¤¹¡£
+標準出力ストリームを指定ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¹ãƒˆãƒªãƒ¼ãƒ (ãŸã¨ãˆã°\fIstderr\fR)ã«ã€ã¾ãŸã¯ãƒ†ã‚­ã‚¹ãƒˆç«¯æœ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-strict
 .RS 4
-ɸ½à(ECMAScript Edition 5\&.1)¤Ø¤Î½àµò¤ò¶¯²½¤¹¤ëstrict¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¡¢¤³¤ì¤Ë¤è¤ê¶¦Ä̤Υ³¡¼¥Ç¥£¥ó¥°¡¦¥¨¥é¡¼¤ò´Êñ¤Ë¸¡½Ð¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+標準(ECMAScript Edition 5\&.1)ã¸ã®æº–拠を強化ã™ã‚‹strictモードを有効ã«ã—ã€ã“ã‚Œã«ã‚ˆã‚Šå…±é€šã®ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚¨ãƒ©ãƒ¼ã‚’ç°¡å˜ã«æ¤œå‡ºã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-t=\fIzone\fR, \-timezone=\fIzone\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô¤ËÂФ·»ØÄꤷ¤¿¥¿¥¤¥à¥¾¡¼¥ó¤òÀßÄꤷ¤Þ¤¹¡£OS¤ÇÀßÄꤵ¤ì¤¿¥¿¥¤¥à¥¾¡¼¥ó¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¡¢\fIDate\fR¥ª¥Ö¥¸¥§¥¯¥È¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£
+スクリプトã®å®Ÿè¡Œã«å¯¾ã—指定ã—ãŸã‚¿ã‚¤ãƒ ã‚¾ãƒ¼ãƒ³ã‚’設定ã—ã¾ã™ã€‚OSã§è¨­å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ ã‚¾ãƒ¼ãƒ³ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã€\fIDate\fRオブジェクトã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-tcs=\fIparameter\fR, \-\-trace\-callsites=\fIparameter\fR
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Î¥È¥ì¡¼¥¹¤Î¥â¡¼¥É¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£»ÈÍѲÄǽ¤Ê¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+呼出ã—サイトã®ãƒˆãƒ¬ãƒ¼ã‚¹ã®ãƒ¢ãƒ¼ãƒ‰ã‚’有効ã«ã—ã¾ã™ã€‚使用å¯èƒ½ãªãƒ‘ラメータã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .PP
 miss
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Î¥ß¥¹¤ò¥È¥ì¡¼¥¹¤·¤Þ¤¹¡£
+呼出ã—サイトã®ãƒŸã‚¹ã‚’トレースã—ã¾ã™ã€‚
 .RE
 .PP
 enterexit
 .RS 4
-¸Æ½Ð¤·¥µ¥¤¥È¤Ø¤Î½ÐÆþ¤ê¤ò¥È¥ì¡¼¥¹¤·¤Þ¤¹¡£
+呼出ã—サイトã¸ã®å‡ºå…¥ã‚Šã‚’トレースã—ã¾ã™ã€‚
 .RE
 .PP
 objects
 .RS 4
-¥ª¥Ö¥¸¥§¥¯¥È¤Î¥×¥í¥Ñ¥Æ¥£¤ò½ÐÎϤ·¤Þ¤¹¡£
+オブジェクトã®ãƒ—ロパティを出力ã—ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-\-verify\-code
 .RS 4
-¥Ð¥¤¥È¥³¡¼¥É¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë¸¡¾Ú¤·¤Þ¤¹¡£
+ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ã‚’実行ã™ã‚‹å‰ã«æ¤œè¨¼ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v, \-version
 .RS 4
-Nashorn¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò½ÐÎϤ·¤Þ¤¹¡£
+Nashornãƒãƒ¼ã‚¸ãƒ§ãƒ³æ–‡å­—列を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-xhelp
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î³ÈÄ¥¥Ø¥ë¥×¤ò½ÐÎϤ·¤Þ¤¹¡£
+コマンドライン・オプションã®æ‹¡å¼µãƒ˜ãƒ«ãƒ—を出力ã—ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-\fBExample 1\fR, Nashorn¤ò»ÈÍѤ·¤¿¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô
+\fBExample 1\fR, Nashornを使用ã—ãŸã‚¹ã‚¯ãƒªãƒ—トã®å®Ÿè¡Œ
 .RS 4
 .sp
 .if n \{\
@@ -352,7 +352,7 @@
 .\}
 .RE
 .PP
-\fBExample 2\fR, ÂÐÏ÷¿¥â¡¼¥É¤Ç¤ÎNashorn¤Î¼Â¹Ô
+\fBExample 2\fR, 対話型モードã§ã®Nashornã®å®Ÿè¡Œ
 .RS 4
 .sp
 .if n \{\
@@ -370,7 +370,7 @@
 .\}
 .RE
 .PP
-\fBExample 3\fR, Nashorn¤Ø¤Î°ú¿ô¤ÎÅϤ·
+\fBExample 3\fR, Nashornã¸ã®å¼•æ•°ã®æ¸¡ã—
 .RS 4
 .sp
 .if n \{\
@@ -386,7 +386,7 @@
 .RE
 .\}
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .PP
 \fIjrunscript\fR
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jmap.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jmap.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jmap
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jmap" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jmap" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jmap \- ¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¡¢¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Þ¤¿¤Ï¥Ò¡¼¥×¡¦¥á¥â¥ê¡¼¤Î¾ÜºÙ¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jmap \- プロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã€å…±ç”¨ã‚ªãƒ–ジェクト・メモリー・マップã¾ãŸã¯ãƒ’ープ・メモリーã®è©³ç´°ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -84,93 +84,93 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-½ÐÎϤ¹¤ë¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Î¥×¥í¥»¥¹ID¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+出力ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒžãƒƒãƒ—ã®ãƒ—ロセスID。プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-½ÐÎϤ¹¤ë¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Î¥³¥¢¡¦¥Õ¥¡¥¤¥ë¡£
+出力ã™ã‚‹ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒžãƒƒãƒ—ã®ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjmap\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤ä¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¡¢¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥á¥â¥ê¡¼¡¦¥Þ¥Ã¥×¤Þ¤¿¤Ï¥Ò¡¼¥×¡¦¥á¥â¥ê¡¼¤Î¾ÜºÙ¤ò½ÐÎϤ·¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJava²¾ÁÛ¥Þ¥·¥ó(JVM)¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjmap\fR
-\fI\-J\-d64 \-heap pid\fR¡£
+\fIjmap\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロセスやコア・ファイルã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã€å…±ç”¨ã‚ªãƒ–ジェクト・メモリー・マップã¾ãŸã¯ãƒ’ープ・メモリーã®è©³ç´°ã‚’出力ã—ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJava仮想マシン(JVM)上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjmap\fR
+\fI\-J\-d64 \-heap pid\fR。
 .PP
-\fBÃí°Õ:\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ë\fIjvm\&.dll\fR¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fB注æ„:\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRファイルãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹\fIjvm\&.dll\fRã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIset PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR。
+.SH "オプション"
 .PP
-<¥ª¥×¥·¥ç¥ó¤Ê¤·>
+<オプションãªã—>
 .RS 4
-¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç¡¢\fIjmap\fR¥³¥Þ¥ó¥É¤Ï¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Þ¥Ã¥Ô¥ó¥°¤ò½ÐÎϤ·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈJVM¤Ë¥í¡¼¥É¤µ¤ì¤¿¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¤´¤È¤Ë¡¢³«»Ï¥¢¥É¥ì¥¹¡¢¥Þ¥Ã¥Ô¥ó¥°¤Î¥µ¥¤¥º¤ª¤è¤Ó¶¦ÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¦¥Õ¥¡¥¤¥ë¤Î¥Õ¥ë¥Ñ¥¹¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤³¤ÎÆ°ºî¤Ï¡¢Oracle Solaris
-\fIpmap\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ÈÎà»÷¤·¤Æ¤¤¤Þ¤¹¡£
+オプションを使用ã—ãªã„å ´åˆã€\fIjmap\fRコマンドã¯å…±ç”¨ã‚ªãƒ–ジェクト・マッピングを出力ã—ã¾ã™ã€‚ターゲットJVMã«ãƒ­ãƒ¼ãƒ‰ã•ã‚ŒãŸå…±ç”¨ã‚ªãƒ–ジェクトã”ã¨ã«ã€é–‹å§‹ã‚¢ãƒ‰ãƒ¬ã‚¹ã€ãƒžãƒƒãƒ”ングã®ã‚µã‚¤ã‚ºãŠã‚ˆã³å…±ç”¨ã‚ªãƒ–ジェクト・ファイルã®ãƒ•ãƒ«ãƒ‘スãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã“ã®å‹•ä½œã¯ã€Oracle Solaris
+\fIpmap\fRユーティリティã¨é¡žä¼¼ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-dump:[live,] format=b, file=\fIfilename\fR
 .RS 4
-Java¥Ò¡¼¥×¤ò\fIhprof\fR¥Ð¥¤¥Ê¥ê·Á¼°¤Ç\fIfilename\fR¤Ë¥À¥ó¥×¤·¤Þ¤¹¡£\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¤¬¡¢»ØÄꤷ¤¿¾ì¹ç¡¢¥Ò¡¼¥×Æâ¤Î¥¢¥¯¥Æ¥£¥Ö¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¤ß¤¬¥À¥ó¥×¤µ¤ì¤Þ¤¹¡£¥Ò¡¼¥×¡¦¥À¥ó¥×¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢jhat(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÀ¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÆɤ߼è¤ê¤Þ¤¹¡£
+Javaヒープを\fIhprof\fRãƒã‚¤ãƒŠãƒªå½¢å¼ã§\fIfilename\fRã«ãƒ€ãƒ³ãƒ—ã—ã¾ã™ã€‚\fIlive\fRサブオプションã¯ã‚ªãƒ—ションã§ã™ãŒã€æŒ‡å®šã—ãŸå ´åˆã€ãƒ’ープ内ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚ªãƒ–ジェクトã®ã¿ãŒãƒ€ãƒ³ãƒ—ã•ã‚Œã¾ã™ã€‚ヒープ・ダンプをå‚ç…§ã™ã‚‹ã«ã¯ã€jhat(1)コマンドを使用ã—ã¦ç”Ÿæˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿å–ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-finalizerinfo
 .RS 4
-¥Õ¥¡¥¤¥Ê¥é¥¤¥º¤òÂԤäƤ¤¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ë´Ø¤¹¤ë¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ファイナライズを待ã£ã¦ã„るオブジェクトã«é–¢ã™ã‚‹æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-heap
 .RS 4
-»ÈÍѤµ¤ì¤Æ¤¤¤ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¥Ò¡¼¥×¡¦¥µ¥Þ¥ê¡¼¡¢¥Ø¥Ã¥À¡¼¹½À®¡¢¤ª¤è¤ÓÀ¤Âå´ØÏ¢¤Î¥Ò¡¼¥×»ÈÍѾõ¶·¤ò½ÐÎϤ·¤Þ¤¹¡£¤µ¤é¤Ë¡¢intern¤µ¤ì¤¿Ê¸»úÎó¤Î¿ô¤È¥µ¥¤¥º¤â½ÐÎϤµ¤ì¤Þ¤¹¡£
+使用ã•ã‚Œã¦ã„るガベージ・コレクションã®ãƒ’ープ・サマリーã€ãƒ˜ãƒƒãƒ€ãƒ¼æ§‹æˆã€ãŠã‚ˆã³ä¸–代関連ã®ãƒ’ープ使用状æ³ã‚’出力ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€internã•ã‚ŒãŸæ–‡å­—列ã®æ•°ã¨ã‚µã‚¤ã‚ºã‚‚出力ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-histo[:live]
 .RS 4
-¥Ò¡¼¥×¤Î¥Ò¥¹¥È¥°¥é¥à¤ò½ÐÎϤ·¤Þ¤¹¡£Java¥¯¥é¥¹¤´¤È¤Ë¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¿ô¡¢¥Ð¥¤¥Èñ°Ì¤Ç¤Î¥á¥â¥ê¡¼¡¦¥µ¥¤¥º¡¢¤ª¤è¤Ó´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£JVM¤ÎÆâÉô¥¯¥é¥¹Ì¾¤Ï¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ÎÀÜƬ¼­¤òÉÕ¤±¤Æ½ÐÎϤµ¤ì¤Þ¤¹¡£\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¤ß¤¬¥«¥¦¥ó¥È¤µ¤ì¤Þ¤¹¡£
+ヒープã®ãƒ’ストグラムを出力ã—ã¾ã™ã€‚Javaクラスã”ã¨ã«ã€ã‚ªãƒ–ジェクトã®æ•°ã€ãƒã‚¤ãƒˆå˜ä½ã§ã®ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ã‚µã‚¤ã‚ºã€ãŠã‚ˆã³å®Œå…¨ä¿®é£¾ã‚¯ãƒ©ã‚¹åãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚JVMã®å†…部クラスåã¯ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã®æŽ¥é ­è¾žã‚’付ã‘ã¦å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fIlive\fRサブオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚ªãƒ–ジェクトã®ã¿ãŒã‚«ã‚¦ãƒ³ãƒˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-clstats
 .RS 4
-Java¥Ò¡¼¥×¤Î¡¢¥¯¥é¥¹¡¦¥í¡¼¥À¡¼´ØÏ¢¤ÎÅý·×¥Ç¡¼¥¿¤ò½ÐÎϤ·¤Þ¤¹¡£¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤´¤È¤Ë¡¢¤½¤Î̾Á°¡¢¾õÂÖ¡¢¥¢¥É¥ì¥¹¡¢¿Æ¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¡¢¤ª¤è¤Ó¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤¬¥í¡¼¥É¤·¤¿¥¯¥é¥¹¤Î¿ô¤È¥µ¥¤¥º¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+Javaヒープã®ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼é–¢é€£ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’出力ã—ã¾ã™ã€‚クラス・ローダーã”ã¨ã«ã€ãã®åå‰ã€çŠ¶æ…‹ã€ã‚¢ãƒ‰ãƒ¬ã‚¹ã€è¦ªã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã€ãŠã‚ˆã³ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ãŒãƒ­ãƒ¼ãƒ‰ã—ãŸã‚¯ãƒ©ã‚¹ã®æ•°ã¨ã‚µã‚¤ã‚ºãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-F
 .RS 4
-¶¯À©¤·¤Þ¤¹¡£PID¤¬±þÅú¤·¤Ê¤¤¤È¤­¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fIjmap \-dump\fR¤Þ¤¿¤Ï\fIjmap \-histo\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢\fIlive\fR¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó¡£
+強制ã—ã¾ã™ã€‚PIDãŒå¿œç­”ã—ãªã„ã¨ãã«ã€ã“ã®ã‚ªãƒ—ションを\fIjmap \-dump\fRã¾ãŸã¯\fIjmap \-histo\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¾ã™ã€‚ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€\fIlive\fRサブオプションã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIjmap\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤Ë\fIflag\fR¤òÅϤ·¤Þ¤¹¡£
+\fIjmap\fRコマンドを実行ã—ã¦ã„ã‚‹Java仮想マシンã«\fIflag\fRを渡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jps.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jps.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jps
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jps" "1" "2013ǯ11·î21Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jps" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jps \- ¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¾å¤Ç·×¬¤µ¤ì¤¿Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jps \- ターゲット・システム上ã§è¨ˆæ¸¬ã•ã‚ŒãŸJava仮想マシン(JVM)を一覧表示ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,60 +64,60 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIhostid\fR
 .RS 4
-¥×¥í¥»¥¹¡¦¥ì¥Ý¡¼¥È¤òÀ¸À®¤¹¤ë¥Û¥¹¥È¤Î¼±Ê̻ҡ£\fIhostid\fR¤Ë¤Ï¡¢ÄÌ¿®¥×¥í¥È¥³¥ë¡¢¥Ý¡¼¥ÈÈֹ桢¼ÂÁõ¤Ë¸ÇÍ­¤Ê¾¤Î¥Ç¡¼¥¿¤ò»ØÄꤷ¤¿¥ª¥×¥·¥ç¥ó¡¦¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Û¥¹¥È¼±Ê̻Ҥò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+プロセス・レãƒãƒ¼ãƒˆã‚’生æˆã™ã‚‹ãƒ›ã‚¹ãƒˆã®è­˜åˆ¥å­ã€‚\fIhostid\fRã«ã¯ã€é€šä¿¡ãƒ—ロトコルã€ãƒãƒ¼ãƒˆç•ªå·ã€å®Ÿè£…ã«å›ºæœ‰ãªä»–ã®ãƒ‡ãƒ¼ã‚¿ã‚’指定ã—ãŸã‚ªãƒ—ション・コンãƒãƒ¼ãƒãƒ³ãƒˆã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ホスト識別å­ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¾å¤Ç·×¬¤µ¤ì¤¿Java HotSpot VM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤Ç¤­¤ë¥ì¥Ý¡¼¥È¾ðÊó¤Ï¡¢¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤¿JVM¤Ë´Ø¤¹¤ë¤â¤Î¤Ë¸ÂÄꤵ¤ì¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJava HotSpot VMを一覧表示ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã§ãるレãƒãƒ¼ãƒˆæƒ…å ±ã¯ã€ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ãŸJVMã«é–¢ã™ã‚‹ã‚‚ã®ã«é™å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fIhostid\fR¤ò»ØÄꤻ¤º¤Ë\fIjps\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¾ì¹ç¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ç·×¬¤µ¤ì¤¿JVM¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£\fIhostid\fR¤ò»ØÄꤷ¤Æµ¯Æ°¤·¤¿¾ì¹ç¡¢»ØÄꤵ¤ì¤¿¥×¥í¥È¥³¥ë¤È¥Ý¡¼¥È¤ò»ÈÍѤ·¤Æ¡¢»ØÄꤵ¤ì¤¿¥Û¥¹¥È¾å¤ÎJVM¤ò¸¡º÷¤·¤Þ¤¹¡£\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤵ¤ì¤Þ¤¹¡£
+\fIhostid\fRを指定ã›ãšã«\fIjps\fRコマンドを実行ã—ãŸå ´åˆã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMãŒæ¤œç´¢ã•ã‚Œã¾ã™ã€‚\fIhostid\fRを指定ã—ã¦èµ·å‹•ã—ãŸå ´åˆã€æŒ‡å®šã•ã‚ŒãŸãƒ—ロトコルã¨ãƒãƒ¼ãƒˆã‚’使用ã—ã¦ã€æŒ‡å®šã•ã‚ŒãŸãƒ›ã‚¹ãƒˆä¸Šã®JVMを検索ã—ã¾ã™ã€‚\fIjstatd\fRプロセスãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤Ç·×¬¤µ¤ì¤¿³ÆJVM¤Ë¤Ä¤¤¤Æ¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҡ¢¤Ä¤Þ¤ê\fIlvmid\fR¤ò¥ì¥Ý¡¼¥È¤·¤Þ¤¹¡£\fIlvmid\fR¤Ï¡¢°ìÈÌŪ¤Ë¤ÏJVM¥×¥í¥»¥¹¤ËÂФ¹¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥×¥í¥»¥¹¼±Ê̻ҤǤ¹¤¬¡¢É¬¤º¤·¤â¤½¤¦¤Ç¤¢¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢\fIjps\fR¤Ë¤è¤Ã¤Æ¡¢³ÆJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fIlvmid\fR¤¬°ìÍ÷ɽ¼¨¤µ¤ì¡¢¤½¤ì¤¾¤ì¤Ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤¬´Êñ¤Ê·Á¼°¤Ç¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î´Êñ¤Ê·Á¼°¤Î¥¯¥é¥¹Ì¾¤ÈJAR¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¡¢¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸¾ðÊó¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë¡¦¥Ñ¥¹¾ðÊ󤬾Êά¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§è¨ˆæ¸¬ã•ã‚ŒãŸå„JVMã«ã¤ã„ã¦ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã€ã¤ã¾ã‚Š\fIlvmid\fRをレãƒãƒ¼ãƒˆã—ã¾ã™ã€‚\fIlvmid\fRã¯ã€ä¸€èˆ¬çš„ã«ã¯JVMプロセスã«å¯¾ã™ã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ãƒ—ロセス識別å­ã§ã™ãŒã€å¿…ãšã—ã‚‚ãã†ã§ã‚ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。オプションを指定ã—ãªã„å ´åˆã€\fIjps\fRã«ã‚ˆã£ã¦ã€å„Javaアプリケーションã®\fIlvmid\fRãŒä¸€è¦§è¡¨ç¤ºã•ã‚Œã€ãã‚Œãžã‚Œã«ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåãŒç°¡å˜ãªå½¢å¼ã§ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ç°¡å˜ãªå½¢å¼ã®ã‚¯ãƒ©ã‚¹åã¨JARファイルåã§ã¯ã€ã‚¯ãƒ©ã‚¹ã®ãƒ‘ッケージ情報ã¾ãŸã¯JARファイル・パス情報ãŒçœç•¥ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢Javaµ¯Æ°¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æmain¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤È°ú¿ô¤ò¸¡º÷¤·¤Þ¤¹¡£Æȼ«¤Îµ¯Æ°¥Ä¡¼¥ë¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥ÈJVM¤òµ¯Æ°¤·¤¿¾ì¹ç¤Ï¡¢\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤È°ú¿ô¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIjps\fR¥³¥Þ¥ó¥É¤Ï¡¢\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤È°ú¿ô¤ËÂФ·¤Æ¡¢Ê¸»úÎó\fIUnknown\fR¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIjps\fRコマンドã¯ã€Java起動ツールを使用ã—ã¦mainメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¨å¼•æ•°ã‚’検索ã—ã¾ã™ã€‚独自ã®èµ·å‹•ãƒ„ールを使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã‚’èµ·å‹•ã—ãŸå ´åˆã¯ã€\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåã¨å¼•æ•°ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。ã“ã®å ´åˆã€\fIjps\fRコマンドã¯ã€\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåã¨å¼•æ•°ã«å¯¾ã—ã¦ã€æ–‡å­—列\fIUnknown\fRを出力ã—ã¾ã™ã€‚
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¤ëJVM¤Î¥ê¥¹¥È¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¥×¥ê¥ó¥·¥Ñ¥ë¤ËÍ¿¤¨¤é¤ì¤¿¥¢¥¯¥»¥¹¸¢¤Ë´ð¤Å¤­¡¢À©¸Â¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥àÆȼ«¤Î¥¢¥¯¥»¥¹À©¸æµ¡¹½¤Ë¤è¤ë·èÄê¤Ë´ð¤Å¤¤¤Æ¡¢¥×¥ê¥ó¥·¥Ñ¥ë¤Ë¥¢¥¯¥»¥¹¸¢¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤ëJVM¤Î¤ß¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjps\fRコマンドã§ç”Ÿæˆã•ã‚Œã‚‹JVMã®ãƒªã‚¹ãƒˆã¯ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ãƒ—リンシパルã«ä¸Žãˆã‚‰ã‚ŒãŸã‚¢ã‚¯ã‚»ã‚¹æ¨©ã«åŸºã¥ãã€åˆ¶é™ã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ç‹¬è‡ªã®ã‚¢ã‚¯ã‚»ã‚¹åˆ¶å¾¡æ©Ÿæ§‹ã«ã‚ˆã‚‹æ±ºå®šã«åŸºã¥ã„ã¦ã€ãƒ—リンシパルã«ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã‚‹JVMã®ã¿ã‚’一覧表示ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥³¥Þ¥ó¥É¤Î½ÐÎϤòÊѹ¹¤¹¤ë¥ª¥×¥·¥ç¥ó¤¬Â¿¿ô¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾­Íè¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Êѹ¹¤Þ¤¿¤ÏÇѻߤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjps\fRコマンドã§ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã®å‡ºåŠ›ã‚’変更ã™ã‚‹ã‚ªãƒ—ションãŒå¤šæ•°ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚å°†æ¥ã€ã“れらã®ã‚ªãƒ—ションã¯ã€å¤‰æ›´ã¾ãŸã¯å»ƒæ­¢ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
 \-q
 .RS 4
-¥¯¥é¥¹Ì¾¡¢JAR¥Õ¥¡¥¤¥ë̾¡¢¤ª¤è¤Ó\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤¿°ú¿ô¤Î½ÐÎϤòÍÞÀ©¤·¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҤΰìÍ÷¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£
+クラスåã€JARファイルåã€ãŠã‚ˆã³\fImain\fRメソッドã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã®å‡ºåŠ›ã‚’抑制ã—ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã®ä¸€è¦§ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-m
 .RS 4
-\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î½ÐÎϤϡ¢ÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ëJVM¤ËÂФ·¤Æ\fInull\fR¤Ë¤Ê¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£
+\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’出力ã—ã¾ã™ã€‚ã“ã®å‡ºåŠ›ã¯ã€çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã‚‹JVMã«å¯¾ã—ã¦\fInull\fRã«ãªã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fImain\fR¥¯¥é¥¹¤Î¥Õ¥ë¡¦¥Ñ¥Ã¥±¡¼¥¸Ì¾¡¢¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎJAR¥Õ¥¡¥¤¥ë¤Ø¤Î¥Õ¥ë¥Ñ¥¹Ì¾¤ò½ÐÎϤ·¤Þ¤¹¡£
+アプリケーションã®\fImain\fRクラスã®ãƒ•ãƒ«ãƒ»ãƒ‘ッケージåã€ã¾ãŸã¯ã‚¢ãƒ—リケーションã®JARファイルã¸ã®ãƒ•ãƒ«ãƒ‘スåを出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v
 .RS 4
-JVM¤ËÅϤµ¤ì¤ë°ú¿ô¤òɽ¼¨¤·¤Þ¤¹¡£
+JVMã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V
 .RS 4
-¥¯¥é¥¹Ì¾¡¢JAR¥Õ¥¡¥¤¥ë̾¡¢¤ª¤è¤Ómai¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤¿°ú¿ô¤Î½ÐÎϤòÍÞÀ©¤·¡¢¥í¡¼¥«¥ëVM¼±Ê̻ҤΰìÍ÷¤Î¤ß¤òÀ¸À®¤·¤Þ¤¹¡£
+クラスåã€JARファイルåã€ãŠã‚ˆã³maiメソッドã«æ¸¡ã•ã‚ŒãŸå¼•æ•°ã®å‡ºåŠ›ã‚’抑制ã—ã€ãƒ­ãƒ¼ã‚«ãƒ«VM識別å­ã®ä¸€è¦§ã®ã¿ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë\fI¥ª¥×¥·¥ç¥ó\fR¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã‚‹\fIオプション\fRã‚’1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥Û¥¹¥È¼±ÊÌ»Ò"
+.SH "ホスト識別å­"
 .PP
-¥Û¥¹¥È¼±Ê̻ҡ¢¤Ä¤Þ¤ê\fIhostid\fR¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤ò¼¨¤¹Ê¸»úÎó¤Ç¤¹¡£\fIhostid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+ホスト識別å­ã€ã¤ã¾ã‚Š\fIhostid\fRã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚’示ã™æ–‡å­—列ã§ã™ã€‚\fIhostid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -131,27 +131,27 @@
 .PP
 \fIprotocol\fR
 .RS 4
-ÄÌ¿®¥×¥í¥È¥³¥ë¤Ç¤¹¡£\fIprotocol\fR¤¬¾Êά¤µ¤ì¡¢\fIhostname\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥È¥³¥ë¤¬¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Ë¤Ê¤ê¤Þ¤¹¡£¥×¥í¥È¥³¥ë¤¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥×¥í¥È¥³¥ë¤Ï\fIrmi\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+通信プロトコルã§ã™ã€‚\fIprotocol\fRãŒçœç•¥ã•ã‚Œã€\fIhostname\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロトコルãŒã€ãƒ—ラットフォーム固有ã®æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã«ãªã‚Šã¾ã™ã€‚プロトコルãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ—ロトコルã¯\fIrmi\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 hostname
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤ò¼¨¤¹¥Û¥¹¥È̾¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤Ç¤¹¡£\fIhostname\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
+ターゲット・ホストを示ã™ãƒ›ã‚¹ãƒˆåã¾ãŸã¯IPアドレスã§ã™ã€‚\fIhostname\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 port
 .RS 4
-¥ê¥â¡¼¥È¡¦¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ë¤¿¤á¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¤¹¡£\fIhostname\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fIprotocol\fR¥Ñ¥é¥á¡¼¥¿¤¬¡¢ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤ò»ØÄꤷ¤Æ¤¤¤ë¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î
-\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Îrmiregistry¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¼¨¤·¤Þ¤¹¡£\fIport\fR¥Ñ¥é¥á¡¼¥¿¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢\fIprotocol\fR¥Ñ¥é¥á¡¼¥¿¤¬\fIrmi\fR¤ò¼¨¤·¤Æ¤¤¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(1099)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+リモート・サーãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã™ã€‚\fIhostname\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fIprotocol\fRパラメータãŒã€æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルを指定ã—ã¦ã„ã‚‹å ´åˆã€\fIport\fRパラメータã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIport\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã®
+\fIrmi\fRプロトコルã®å ´åˆã€\fIport\fRパラメータã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®rmiregistryã®ãƒãƒ¼ãƒˆç•ªå·ã‚’示ã—ã¾ã™ã€‚\fIport\fRパラメータãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€\fIprotocol\fRパラメータãŒ\fIrmi\fRを示ã—ã¦ã„ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(1099)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 servername
 .RS 4
-¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤ÎRMI¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤ò¼¨¤¹Ê¸»úÎó¤Ë¤Ê¤ê¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fIjstatd\fR¥³¥Þ¥ó¥É¤Î\fI\-n\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ã“ã®ãƒ‘ラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚最é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã®å ´åˆã€ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIrmi\fRプロトコルã®å ´åˆã€ã“ã®ãƒ‘ラメータã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®RMIリモート・オブジェクトã®åå‰ã‚’示ã™æ–‡å­—列ã«ãªã‚Šã¾ã™ã€‚詳細ã¯ã€\fIjstatd\fRコマンドã®\fI\-n\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "½ÐÎÏ¥Õ¥©¡¼¥Þ¥Ã¥È"
+.SH "出力フォーマット"
 .PP
-\fIjps\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤϡ¢¼¡¤Î¥Ñ¥¿¡¼¥ó¤Ë½¾¤¤¤Þ¤¹¡£
+\fIjps\fRコマンドã®å‡ºåŠ›ã¯ã€æ¬¡ã®ãƒ‘ターンã«å¾“ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -163,15 +163,15 @@
 .RE
 .\}
 .PP
-¤¹¤Ù¤Æ¤Î½ÐÎϥȡ¼¥¯¥ó¤Ï¶õÇòʸ»ú¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£\fIarg\fRÃͤÎÃæ¤Ç¶õÇò¤ò»ÈÍѤ¹¤ë¤È¡¢¼ÂºÝ¤ÎÄê°ÌÃ֥ѥé¥á¡¼¥¿¤Ë°ú¿ô¤ò¥Þ¥Ã¥Ô¥ó¥°¤·¤è¤¦¤È¤¹¤ë¤È¤­¤Ë¡¢¤¢¤¤¤Þ¤¤¤Ë¤Ê¤ê¤Þ¤¹¡£
+ã™ã¹ã¦ã®å‡ºåŠ›ãƒˆãƒ¼ã‚¯ãƒ³ã¯ç©ºç™½æ–‡å­—ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚\fIarg\fR値ã®ä¸­ã§ç©ºç™½ã‚’使用ã™ã‚‹ã¨ã€å®Ÿéš›ã®å®šä½ç½®ãƒ‘ラメータã«å¼•æ•°ã‚’マッピングã—よã†ã¨ã™ã‚‹ã¨ãã«ã€ã‚ã„ã¾ã„ã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤³¤Î·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¡¢\fIjps\fR¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤ÏºîÀ®¤·¤Ê¤¤¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£\fIjps\fR½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë¤È¡¢¤³¤Î¥Ä¡¼¥ë¤Î¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¡¢ºîÀ®¤·¤¿¥¹¥¯¥ê¥×¥È¤ÎÊѹ¹¤¬É¬Íפˤʤë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SH "Îã"
+\fB注æ„:\fR
+å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã“ã®å½¢å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã€\fIjps\fRã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トã¯ä½œæˆã—ãªã„ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚\fIjps\fR出力を解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トを作æˆã™ã‚‹ã¨ã€ã“ã®ãƒ„ールã®å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã€ä½œæˆã—ãŸã‚¹ã‚¯ãƒªãƒ—トã®å¤‰æ›´ãŒå¿…è¦ã«ãªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "例"
 .PP
-¤³¤Î¹à¤Ç¤Ï¡¢\fIjps\fR¥³¥Þ¥ó¥É¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£
+ã“ã®é …ã§ã¯ã€\fIjps\fRコマンドã®ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .PP
-¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤¹¤ë¾ì¹ç:
+ローカル・ホスト上ã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã™ã‚‹å ´åˆ:
 .sp
 .if n \{\
 .RS 4
@@ -186,7 +186,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢\fIjstat\fR¥µ¡¼¥Ð¡¼¤È¡¢¤½¤ÎÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤Þ¤¿¤ÏÊ̤γ°Éôrmiregistry¥×¥í¥»¥¹¤Î¤¤¤º¤ì¤«¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤Þ¤¿¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ø¤ÎÍ­¸ú¤Ê¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤âÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÎã¤Ë¤Ï¡¢\fI\-l\fR¥ª¥×¥·¥ç¥ó¤â´Þ¤Þ¤ì¡¢¥¯¥é¥¹Ì¾¤Þ¤¿¤ÏJAR¥Õ¥¡¥¤¥ë̾¤ò¾ÜºÙ¤Ê·Á¼°¤Ç½ÐÎϤ·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€\fIjstat\fRサーãƒãƒ¼ã¨ã€ãã®å†…部RMIレジストリã¾ãŸã¯åˆ¥ã®å¤–部rmiregistryプロセスã®ã„ãšã‚Œã‹ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚ã¾ãŸã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¸ã®æœ‰åŠ¹ãªã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ã‚‚想定ã—ã¦ã„ã¾ã™ã€‚ã“ã®ä¾‹ã«ã¯ã€\fI\-l\fRオプションもå«ã¾ã‚Œã€ã‚¯ãƒ©ã‚¹åã¾ãŸã¯JARファイルåを詳細ãªå½¢å¼ã§å‡ºåŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -200,7 +200,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢RMI¥ì¥¸¥¹¥È¥ê¤Ë¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¤Ê¤¤¥Ý¡¼¥È¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç·×¬¤µ¤ì¤¿JVM¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤¬¥Ý¡¼¥È2002¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIjstatd\fR¥µ¡¼¥Ð¡¼¤¬¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£¤Þ¤¿¡¢\fI\-m\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢°ìÍ÷ɽ¼¨¤µ¤ì¤¿¤½¤ì¤¾¤ì¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î\fImain\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤ë°ú¿ô¤òÁȤ߹þ¤ó¤Ç¤¤¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€RMIレジストリã«ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ãªã„ãƒãƒ¼ãƒˆã‚’使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§è¨ˆæ¸¬ã•ã‚ŒãŸJVMを一覧表示ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€å†…部RMIレジストリãŒãƒãƒ¼ãƒˆ2002ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIjstatd\fRサーãƒãƒ¼ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚ã¾ãŸã€\fI\-m\fRオプションを使用ã—ã¦ã€ä¸€è¦§è¡¨ç¤ºã•ã‚ŒãŸãã‚Œãžã‚Œã®Javaアプリケーションã®\fImain\fRメソッドã«æ¸¡ã•ã‚Œã‚‹å¼•æ•°ã‚’組ã¿è¾¼ã‚“ã§ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -213,7 +213,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jrunscript.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jrunscript.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jrunscript
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: スクリプティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jrunscript" "1" "2013ǯ11·î21Æü" "JDK 8" "¥¹¥¯¥ê¥×¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jrunscript" "1" "2013年11月21日" "JDK 8" "スクリプティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jrunscript \- ÂÐÏ÷¿¥â¡¼¥É¤È¥Ð¥Ã¥Á¡¦¥â¡¼¥É¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¡¦¥·¥§¥ë¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jrunscript \- 対話型モードã¨ãƒãƒƒãƒãƒ»ãƒ¢ãƒ¼ãƒ‰ã‚’サãƒãƒ¼ãƒˆã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¹ã‚¯ãƒªãƒ—ト・シェルを実行ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,83 +64,83 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIarguments\fR
 .RS 4
-°ú¿ô¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï¥³¥Þ¥ó¥É̾¤Îľ¸å¤Ëµ­½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£°ú¿ô¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+引数を使用ã™ã‚‹å ´åˆã€ã‚ªãƒ—ションã¾ãŸã¯ã‚³ãƒžãƒ³ãƒ‰åã®ç›´å¾Œã«è¨˜è¿°ã—ã¦ãã ã•ã„。引数をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¡¢¸À¸ì¤Ë°Í¸¤·¤Ê¤¤¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¡¦¥·¥§¥ë¤Ç¤¹¡£\fIjrunscript\fR¤Ï¡¢ÂÐÏ÷¿(read\-eval\-print)¥â¡¼¥É¤È¥Ð¥Ã¥Á(\fI\-f\fR¥ª¥×¥·¥ç¥ó)¡¦¥â¡¼¥É¤ÎξÊý¤Î¥¹¥¯¥ê¥×¥È¼Â¹Ô¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î»ÈÍѸÀ¸ì¤ÏJavaScript¤Ç¤¹¤¬¡¢\fI\-l\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ì¤Ð¾¤Î¸À¸ì¤â»ØÄê¤Ç¤­¤Þ¤¹¡£\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¤È¥¹¥¯¥ê¥×¥È¸À¸ì¤È¤ÎÄÌ¿®¤ò»ÈÍѤ·¤ÆõµáŪ¤Ê¥×¥í¥°¥é¥ß¥ó¥°¡¦¥¹¥¿¥¤¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjrunscript\fRコマンドã¯ã€è¨€èªžã«ä¾å­˜ã—ãªã„コマンドライン・スクリプト・シェルã§ã™ã€‚\fIjrunscript\fRã¯ã€å¯¾è©±åž‹(read\-eval\-print)モードã¨ãƒãƒƒãƒ(\fI\-f\fRオプション)・モードã®ä¸¡æ–¹ã®ã‚¹ã‚¯ãƒªãƒ—ト実行をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚デフォルトã®ä½¿ç”¨è¨€èªžã¯JavaScriptã§ã™ãŒã€\fI\-l\fRオプションを使用ã™ã‚Œã°ä»–ã®è¨€èªžã‚‚指定ã§ãã¾ã™ã€‚\fIjrunscript\fRコマンドã¯ã€Javaã¨ã‚¹ã‚¯ãƒªãƒ—ト言語ã¨ã®é€šä¿¡ã‚’使用ã—ã¦æŽ¢æ±‚çš„ãªãƒ—ログラミング・スタイルをサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-classpath \fIpath\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¤¬¥¢¥¯¥»¥¹¤¹¤ëɬÍפΤ¢¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¤ò¼¨¤·¤Þ¤¹¡£
+スクリプトãŒã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ã®ã‚るクラス・ファイルã®å ´æ‰€ã‚’示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
 \fI\-classpath\fR
-\fIpath\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fIpath\fRã¨åŒã˜ã§ã™ã€‚
 .RE
 .PP
 \-D\fIname\fR=\fIvalue\fR
 .RS 4
-Java¤Î¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤷ¤Þ¤¹¡£
+Javaã®ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ—ロパティを設定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIflag\fR
 .RS 4
-\fIflag\fR¤ò¡¢\fIjrunscript\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëJava²¾ÁÛ¥Þ¥·¥ó¤ËľÀÜÅϤ·¤Þ¤¹¡£
+\fIflag\fRã‚’ã€\fIjrunscript\fRコマンドãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹Java仮想マシンã«ç›´æŽ¥æ¸¡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-I \fIlanguage\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¸À¸ì¤ò»ÈÍѤ·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤ÏJavaScript¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£Â¾¤Î¥¹¥¯¥ê¥×¥È¸À¸ì¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fI\-cp\fR¤Þ¤¿¤Ï\fI\-classpath\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Âбþ¤¹¤ë¥¹¥¯¥ê¥×¥È¡¦¥¨¥ó¥¸¥ó¤ÎJAR¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—ト言語を使用ã—ã¾ã™ã€‚デフォルトã§ã¯JavaScriptãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ä»–ã®ã‚¹ã‚¯ãƒªãƒ—ト言語を使用ã™ã‚‹ã«ã¯ã€\fI\-cp\fRã¾ãŸã¯\fI\-classpath\fRオプションを使用ã—ã¦ã€å¯¾å¿œã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—ト・エンジンã®JARファイルを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-e \fIscript\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¤òɾ²Á¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ì¤Ð¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤¹¤Ù¤Æ¤¬»ØÄꤵ¤ì¤¿1¹Ô¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—トを評価ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚Œã°ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã™ã¹ã¦ãŒæŒ‡å®šã•ã‚ŒãŸ1行スクリプトを実行ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤ÎÆɼè¤ê»þ¤Ë»ÈÍѤ¹¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£
+スクリプト・ファイルã®èª­å–り時ã«ä½¿ç”¨ã™ã‚‹æ–‡å­—エンコーディングを指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-f \fIscript\-file\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë(¥Ð¥Ã¥Á¡¦¥â¡¼¥É)¤òɾ²Á¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚¹ã‚¯ãƒªãƒ—ト・ファイル(ãƒãƒƒãƒãƒ»ãƒ¢ãƒ¼ãƒ‰)を評価ã—ã¾ã™ã€‚
 .RE
 .PP
 \-f \-
 .RS 4
-ɸ½àÆþÎϤ«¤é¥¹¥¯¥ê¥×¥È¤òÆɤ߼è¤ê¡¢¤½¤ì¤òɾ²Á¤·¤Þ¤¹(ÂÐÏ÷¿¥â¡¼¥É)¡£
+標準入力ã‹ã‚‰ã‚¹ã‚¯ãƒªãƒ—トを読ã¿å–ã‚Šã€ãれを評価ã—ã¾ã™(対話型モード)。
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-?
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 \-q
 .RS 4
-ÍøÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¹¥¯¥ê¥×¥È¡¦¥¨¥ó¥¸¥ó¤ò°ìÍ÷ɽ¼¨¤·¤¿¤¢¤È¡¢½ªÎ»¤·¤Þ¤¹¡£
+利用å¯èƒ½ãªã™ã¹ã¦ã®ã‚¹ã‚¯ãƒªãƒ—ト・エンジンを一覧表示ã—ãŸã‚ã¨ã€çµ‚了ã—ã¾ã™ã€‚
 .RE
-.SH "°ú¿ô"
+.SH "引数"
 .PP
-arguments¤¬Â¸ºß¤·¤Æ¤¤¤Æ¡¢¤«¤Ä\fI\-e\fR¡¢\fI\-f\fR¤Î¤¤¤º¤ì¤Î¥ª¥×¥·¥ç¥ó¤â»ÈÍѤµ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ºÇ½é¤Î°ú¿ô¤¬¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤È¤Ê¤ê¡¢Â¾¤Î°ú¿ô¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£arguments¤È¡¢\fI\-e\fR¤Þ¤¿¤Ï\fI\-f\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤¹¤Ù¤Æ¤Îarguments¤¬¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£arguments¡¢\fI\-e\fR¡¢\fI\-f\fR¤¬¤É¤ì¤â¸ºß¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ÂÐÏ÷¿¥â¡¼¥É¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥¹¥¯¥ê¥×¥È¤«¤é¥¹¥¯¥ê¥×¥È°ú¿ô¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\fIarguments\fR¤È¤¤¤¦Ì¾Á°¤Î\fIString\fRÇÛÎ󷿤Υ¨¥ó¥¸¥óÊÑ¿ô¤ò»ÈÍѤ·¤Þ¤¹¡£
-.SH "Îã"
-.SS "¥¤¥ó¥é¥¤¥ó¡¦¥¹¥¯¥ê¥×¥È¤Î¼Â¹Ô"
+argumentsãŒå­˜åœ¨ã—ã¦ã„ã¦ã€ã‹ã¤\fI\-e\fRã€\fI\-f\fRã®ã„ãšã‚Œã®ã‚ªãƒ—ションも使用ã•ã‚Œãªã‹ã£ãŸå ´åˆã€æœ€åˆã®å¼•æ•°ãŒã‚¹ã‚¯ãƒªãƒ—ト・ファイルã¨ãªã‚Šã€ä»–ã®å¼•æ•°ãŒå­˜åœ¨ã™ã‚‹å ´åˆã¯ã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚argumentsã¨ã€\fI\-e\fRã¾ãŸã¯\fI\-f\fRオプションãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹å ´åˆã€ã™ã¹ã¦ã®argumentsãŒã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚argumentsã€\fI\-e\fRã€\fI\-f\fRãŒã©ã‚Œã‚‚存在ã—ãªã‹ã£ãŸå ´åˆã¯ã€å¯¾è©±åž‹ãƒ¢ãƒ¼ãƒ‰ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚スクリプトã‹ã‚‰ã‚¹ã‚¯ãƒªãƒ—ト引数を使用ã™ã‚‹ã«ã¯ã€\fIarguments\fRã¨ã„ã†åå‰ã®\fIString\fRé…列型ã®ã‚¨ãƒ³ã‚¸ãƒ³å¤‰æ•°ã‚’使用ã—ã¾ã™ã€‚
+.SH "例"
+.SS "インライン・スクリプトã®å®Ÿè¡Œ"
 .sp
 .if n \{\
 .RS 4
@@ -152,7 +152,7 @@
 .if n \{\
 .RE
 .\}
-.SS "»ØÄꤵ¤ì¤¿¸À¸ì¤Î»ÈÍѤª¤è¤Ó¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Îɾ²Á"
+.SS "指定ã•ã‚ŒãŸè¨€èªžã®ä½¿ç”¨ãŠã‚ˆã³ã‚¹ã‚¯ãƒªãƒ—ト・ファイルã®è©•ä¾¡"
 .sp
 .if n \{\
 .RS 4
@@ -163,7 +163,7 @@
 .if n \{\
 .RE
 .\}
-.SS "ÂÐÏ÷¿¥â¡¼¥É"
+.SS "対話型モード"
 .sp
 .if n \{\
 .RS 4
@@ -184,9 +184,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥¹¥¯¥ê¥×¥È°ú¿ô¤ò»ØÄꤷ¤¿¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Î¼Â¹Ô"
+.SS "スクリプト引数を指定ã—ãŸã‚¹ã‚¯ãƒªãƒ—ト・ファイルã®å®Ÿè¡Œ"
 .PP
-test\&.js¥Õ¥¡¥¤¥ë¤Ï¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£\fIarg1\fR¡¢\fIarg2\fR¤ª¤è¤Ó\fIarg3\fR¤Î³Æ°ú¿ô¤¬¥¹¥¯¥ê¥×¥È¤ËÅϤµ¤ì¤Þ¤¹¡£¥¹¥¯¥ê¥×¥È¤ÏargumentsÇÛÎó¤ò»ÈÍѤ·¤Æ¤³¤ì¤é¤Î°ú¿ô¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£
+test\&.jsファイルã¯ã‚¹ã‚¯ãƒªãƒ—ト・ファイルã§ã™ã€‚\fIarg1\fRã€\fIarg2\fRãŠã‚ˆã³\fIarg3\fRã®å„引数ãŒã‚¹ã‚¯ãƒªãƒ—トã«æ¸¡ã•ã‚Œã¾ã™ã€‚スクリプトã¯argumentsé…列を使用ã—ã¦ã“れらã®å¼•æ•°ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,10 +197,10 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .PP
-JavaScript¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼ÄêµÁ¥¹¥¯¥ê¥×¥È¤òɾ²Á¤¹¤ëÁ°¤Ë¡¢\fIjrunscript\fR¥³¥Þ¥ó¥É¤Ï¤¤¤¯¤Ä¤«¤ÎÁȹþ¤ß´Ø¿ô¤äÁȹþ¤ß¥ª¥Ö¥¸¥§¥¯¥È¤ò½é´ü²½¤·¤Þ¤¹¡£¤³¤ì¤é¤ÎJavaScript¤ÎÁȹþ¤ß¤Ë¤Ä¤¤¤Æ¤Ï¡¢http://code\&.google\&.com/p/jsdoc\-toolkit/¤Ë¤¢¤ë
-JsDoc\-Toolkit¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JavaScriptãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼å®šç¾©ã‚¹ã‚¯ãƒªãƒ—トを評価ã™ã‚‹å‰ã«ã€\fIjrunscript\fRコマンドã¯ã„ãã¤ã‹ã®çµ„è¾¼ã¿é–¢æ•°ã‚„組込ã¿ã‚ªãƒ–ジェクトをåˆæœŸåŒ–ã—ã¾ã™ã€‚ã“れらã®JavaScriptã®çµ„è¾¼ã¿ã«ã¤ã„ã¦ã¯ã€http://code\&.google\&.com/p/jsdoc\-toolkit/ã«ã‚ã‚‹
+JsDoc\-Toolkitã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .br
 'pl 8.5i
 'bp
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jsadebugd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jsadebugd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jsadebugd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jsadebugd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jsadebugd" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jsadebugd \- Java¥×¥í¥»¥¹¤Þ¤¿¤Ï¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤ËÀܳ¤·¡¢¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jsadebugd \- Javaプロセスã¾ãŸã¯ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«æŽ¥ç¶šã—ã€ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -74,26 +74,26 @@
 .PP
 \fIpid\fR
 .RS 4
-¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Àܳ¤¹¤ë¥×¥í¥»¥¹¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£Ã±°ì¤Î¥×¥í¥»¥¹¤ËÀܳ¤Ç¤­¤ë¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ï¡¢1¤Ä¤ËÀ©¸Â¤µ¤ì¤Þ¤¹¡£
+デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒæŽ¥ç¶šã™ã‚‹ãƒ—ロセスã®ãƒ—ロセスIDã§ã™ã€‚プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚å˜ä¸€ã®ãƒ—ロセスã«æŽ¥ç¶šã§ãるデãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã¯ã€1ã¤ã«åˆ¶é™ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤òÀܳ¤¹¤ë¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’接続ã™ã‚‹ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤ËɬÍפˤʤ롢¥ª¥×¥·¥ç¥ó¤Î°ì°Õ¤ÎID¤Ç¤¹¡£¤³¤ÎID¤Ï¡¢¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤¬¡¢ÀܳÀè¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎID¤Ï¡¢Ã±°ì¤Î¥Þ¥·¥óÆâ¤Ç°ì°Õ¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã«å¿…è¦ã«ãªã‚‹ã€ã‚ªãƒ—ションã®ä¸€æ„ã®IDã§ã™ã€‚ã“ã®IDã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒã€æŽ¥ç¶šå…ˆã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®IDã¯ã€å˜ä¸€ã®ãƒžã‚·ãƒ³å†…ã§ä¸€æ„ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjsadebugd\fR¥³¥Þ¥ó¥É¤Ï¡¢Java¥×¥í¥»¥¹¤Þ¤¿¤Ï¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤ËÀܳ¤·¡¢¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£\fIjstack\fR¡¢\fIjmap\fR¤ª¤è¤Ó\fIjinfo\fR¤Ê¤É¤Î¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢Java Remote Method Invocation (RMI)¤ò»ÈÍѤ·¤Æ¤¤¤ë¥µ¡¼¥Ð¡¼¤ËÀܳ¤Ç¤­¤Þ¤¹¡£\fIjsadebugd\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ëÁ°¤Ë¡¢\fIrmiregistry\fR¥³¥Þ¥ó¥É¤ÇRMI¥ì¥¸¥¹¥È¥ê¤ò¼¡¤Î¤è¤¦¤Ëµ¯Æ°¤·¤Þ¤¹¡£\fI$JAVA_HOME\fR¤ÏJDK¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£
+\fIjsadebugd\fRコマンドã¯ã€Javaプロセスã¾ãŸã¯ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«æŽ¥ç¶šã—ã€ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚\fIjstack\fRã€\fIjmap\fRãŠã‚ˆã³\fIjinfo\fRãªã©ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€Java Remote Method Invocation (RMI)を使用ã—ã¦ã„るサーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã™ã€‚\fIjsadebugd\fRコマンドを起動ã™ã‚‹å‰ã«ã€\fIrmiregistry\fRコマンドã§RMIレジストリを次ã®ã‚ˆã†ã«èµ·å‹•ã—ã¾ã™ã€‚\fI$JAVA_HOME\fRã¯JDKã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -105,12 +105,12 @@
 .RE
 .\}
 .PP
-RMI¥ì¥¸¥¹¥È¥ê¤¬µ¯Æ°¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢\fIjsadebugd\fR¥³¥Þ¥ó¥É¤ÏRMI¥ì¥¸¥¹¥È¥ê¤òɸ½à(1099)¥Ý¡¼¥È¤ÇÆâÉô¤Çµ¯Æ°¤·¤Þ¤¹¡£¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Ï¡¢\fISIGINT\fR¤òÁ÷¿®¤¹¤ë¤³¤È¤Ë¤è¤êÄä»ß¤Ç¤­¤Þ¤¹¡£SIGINT¤òÁ÷¿®¤¹¤ë¤Ë¤Ï¡¢\fB[Ctrl] + [C]\fR¤ò²¡¤·¤Þ¤¹¡£
+RMIレジストリãŒèµ·å‹•ã—ã¦ã„ãªã„å ´åˆã€\fIjsadebugd\fRコマンドã¯RMIレジストリを標準(1099)ãƒãƒ¼ãƒˆã§å†…部ã§èµ·å‹•ã—ã¾ã™ã€‚デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¯ã€\fISIGINT\fRã‚’é€ä¿¡ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šåœæ­¢ã§ãã¾ã™ã€‚SIGINTã‚’é€ä¿¡ã™ã‚‹ã«ã¯ã€\fB[Ctrl] + [C]\fRを押ã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£\fIdbgeng\&.dll\fR¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£Îã:
+\fB注æ„:\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚\fIdbgeng\&.dll\fRãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。例:
 \fIs\fR\fIet PATH=%JDK_HOME%\ejre\ebin\eclient;%PATH%\fR
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jstack.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstack.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstack
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: トラブルシューティング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstack" "1" "2013ǯ11·î21Æü" "JDK 8" "¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstack" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstack \- Java¥×¥í¥»¥¹¡¢¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ËÂФ¹¤ëJava¥¹¥ì¥Ã¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstack \- Javaプロセスã€ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã™ã‚‹Javaスレッドã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -84,40 +84,40 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpid\fR
 .RS 4
-½ÐÎϤ¹¤ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Î¥×¥í¥»¥¹ID¤Ç¤¹¡£¥×¥í¥»¥¹¤ÏJava¥×¥í¥»¥¹¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤·¤Æ¤¤¤ëJava¥×¥í¥»¥¹¤Î°ìÍ÷¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢jps(1)¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+出力ã™ã‚‹ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã®ãƒ—ロセスIDã§ã™ã€‚プロセスã¯Javaプロセスã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚マシン上ã§å®Ÿè¡Œã—ã¦ã„ã‚‹Javaプロセスã®ä¸€è¦§ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€jps(1)コマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë\fR
+\fI実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .RS 4
-¥³¥¢¡¦¥À¥ó¥×¤ÎºîÀ®¸µ¤ÎJava¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¡£
+コア・ダンプã®ä½œæˆå…ƒã®Java実行å¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
-\fI¥³¥¢\fR
+\fIコア\fR
 .RS 4
-½ÐÎϤ¹¤ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Î¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+出力ã™ã‚‹ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã®ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
 .PP
 \fIremote\-hostname\-or\-IP\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Î\fI¥Û¥¹¥È̾\fR¤Þ¤¿¤Ï\fIIP\fR¥¢¥É¥ì¥¹¡£jsadebugd(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+リモート・デãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®\fIホストå\fRã¾ãŸã¯\fIIP\fRアドレス。jsadebugd(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIserver\-id\fR
 .RS 4
-Ê£¿ô¤Î¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤¬Æ±°ì¤Î¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Ç¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Î¡¢¥ª¥×¥·¥ç¥ó¸ÇÍ­¤ÎID¡£
+複数ã®ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåŒä¸€ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã—ã¦ã„ã‚‹å ´åˆã®ã€ã‚ªãƒ—ション固有ã®ID。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstack\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿Java¥×¥í¥»¥¹¡¢¥³¥¢¡¦¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤ËÂФ¹¤ëJava¥¹¥ì¥Ã¥É¤ÎJava¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£Java¥Õ¥ì¡¼¥à¤´¤È¤Ë¡¢¥Õ¥ë¥¯¥é¥¹Ì¾¡¢¥á¥½¥Ã¥É̾¡¢¥Ð¥¤¥È¥³¡¼¥É¡¦¥¤¥ó¥Ç¥Ã¥¯¥¹(bci)¡¢¤ª¤è¤Ó¹ÔÈÖ¹æ(ÍøÍѲÄǽ¤Ê¾ì¹ç)¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-m\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢\fIjstack\fR¥³¥Þ¥ó¥É¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¹¥ì¥Ã¥É¤ÎJava¥Õ¥ì¡¼¥à¤È¥Í¥¤¥Æ¥£¥Ö¡¦¥Õ¥ì¡¼¥à¤ÎξÊý¤ò¡¢¥×¥í¥°¥é¥à¡¦¥«¥¦¥ó¥¿(PC)¤È¤È¤â¤Ë½ÐÎϤ·¤Þ¤¹¡£¥Í¥¤¥Æ¥£¥Ö¡¦¥Õ¥ì¡¼¥à¤´¤È¤Ë¡¢PC¤ËºÇ¤â¶á¤¤¥Í¥¤¥Æ¥£¥Ö¡¦¥·¥ó¥Ü¥ë(ÍøÍѲÄǽ¤Ê¾ì¹ç)¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£C++ʬ²ò̾¤Ïʬ²ò²ò½ü¤µ¤ì¤Þ¤»¤ó¡£C++̾¤òʬ²ò²ò½ü¤¹¤ë¤Ë¤Ï¡¢¤³¤Î¥³¥Þ¥ó¥É¤Î½ÐÎϤò\fIc++filt\fR¤Ë¥Ñ¥¤¥×¤·¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥×¥í¥»¥¹¤¬64¥Ó¥Ã¥ÈJava²¾ÁÛ¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI\-J\-d64\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(Îã:
-\fIjstack \-J\-d64 \-m pid\fR)¡£
+\fIjstack\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸJavaプロセスã€ã‚³ã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¾ãŸã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã™ã‚‹Javaスレッドã®Javaスタック・トレースを出力ã—ã¾ã™ã€‚Javaフレームã”ã¨ã«ã€ãƒ•ãƒ«ã‚¯ãƒ©ã‚¹åã€ãƒ¡ã‚½ãƒƒãƒ‰åã€ãƒã‚¤ãƒˆã‚³ãƒ¼ãƒ‰ãƒ»ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹(bci)ã€ãŠã‚ˆã³è¡Œç•ªå·(利用å¯èƒ½ãªå ´åˆ)ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-m\fRオプションを使用ã™ã‚‹ã¨ã€\fIjstack\fRコマンドã¯ã€ã™ã¹ã¦ã®ã‚¹ãƒ¬ãƒƒãƒ‰ã®Javaフレームã¨ãƒã‚¤ãƒ†ã‚£ãƒ–・フレームã®ä¸¡æ–¹ã‚’ã€ãƒ—ログラム・カウンタ(PC)ã¨ã¨ã‚‚ã«å‡ºåŠ›ã—ã¾ã™ã€‚ãƒã‚¤ãƒ†ã‚£ãƒ–・フレームã”ã¨ã«ã€PCã«æœ€ã‚‚è¿‘ã„ãƒã‚¤ãƒ†ã‚£ãƒ–・シンボル(利用å¯èƒ½ãªå ´åˆ)ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚C++分解åã¯åˆ†è§£è§£é™¤ã•ã‚Œã¾ã›ã‚“。C++åを分解解除ã™ã‚‹ã«ã¯ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®å‡ºåŠ›ã‚’\fIc++filt\fRã«ãƒ‘イプã—ã¾ã™ã€‚指定ã•ã‚ŒãŸãƒ—ロセスãŒ64ビットJava仮想マシン上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI\-J\-d64\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(例:
+\fIjstack \-J\-d64 \-m pid\fR)。
 .PP
-\fBÃí°Õ\fR
-¤³¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¥µ¥Ý¡¼¥ÈÂоݳ°¤Ç¤¢¤ê¡¢¾­Íè¤ÎJDK¤Î¥ê¥ê¡¼¥¹¤Ç¤ÏÍøÍѤǤ­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£dbgeng\&.dll¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤¤Windows¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Debugging Tools For Windows¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤È¤³¤ì¤é¤Î¥Ä¡¼¥ë¤¬Àµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£¤Þ¤¿¡¢\fIPATH\fR´Ä¶­ÊÑ¿ô¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤ëjvm\&.dll¤Î¾ì½ê¡¢¤Þ¤¿¤Ï¥¯¥é¥Ã¥·¥å¡¦¥À¥ó¥×¡¦¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤¿¾ì½ê¤¬´Þ¤Þ¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fB注æ„\fR
+ã“ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã¯ã‚µãƒãƒ¼ãƒˆå¯¾è±¡å¤–ã§ã‚ã‚Šã€å°†æ¥ã®JDKã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚dbgeng\&.dllファイルãŒå­˜åœ¨ã—ã¦ã„ãªã„Windowsシステムã§ã¯ã€Debugging Tools For Windowsをインストールã—ãªã„ã¨ã“れらã®ãƒ„ールãŒæ­£å¸¸ã«å‹•ä½œã—ã¾ã›ã‚“。ã¾ãŸã€\fIPATH\fR環境変数ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ—ロセスã«ã‚ˆã£ã¦ä½¿ç”¨ã•ã‚Œã‚‹jvm\&.dllã®å ´æ‰€ã€ã¾ãŸã¯ã‚¯ãƒ©ãƒƒã‚·ãƒ¥ãƒ»ãƒ€ãƒ³ãƒ—・ファイルãŒç”Ÿæˆã•ã‚ŒãŸå ´æ‰€ãŒå«ã¾ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -128,39 +128,39 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-F
 .RS 4
 \fIjstack\fR
 [\fI\-l\fR]
-\fIpid\fR¤¬±þÅú¤·¤Ê¤¤¾ì¹ç¤Ë¥¹¥¿¥Ã¥¯¡¦¥À¥ó¥×¤ò¶¯À©¤·¤Þ¤¹¡£
+\fIpid\fRãŒå¿œç­”ã—ãªã„å ´åˆã«ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒ€ãƒ³ãƒ—を強制ã—ã¾ã™ã€‚
 .RE
 .PP
 \-l
 .RS 4
-Ĺ·Á¼°¤Î¥ê¥¹¥È¡£½êÍ­\fIjava\&.util\&.concurrent\fR¤Î½êÍ­¤Ç¤­¤ë¥·¥ó¥¯¥í¥Ê¥¤¥¶¤Î°ìÍ÷¤Ê¤É¡¢¥í¥Ã¥¯¤Ë¤Ä¤¤¤Æ¤ÎÄɲþðÊó¤ò°õºþ¤·¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer\&.html¤Ë¤¢¤ë
-\fIAbstractOwnableSynchronizer\fR¥¯¥é¥¹µ­½Ò¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+é•·å½¢å¼ã®ãƒªã‚¹ãƒˆã€‚所有\fIjava\&.util\&.concurrent\fRã®æ‰€æœ‰ã§ãるシンクロナイザã®ä¸€è¦§ãªã©ã€ãƒ­ãƒƒã‚¯ã«ã¤ã„ã¦ã®è¿½åŠ æƒ…報をå°åˆ·ã—ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer\&.htmlã«ã‚ã‚‹
+\fIAbstractOwnableSynchronizer\fRクラス記述をå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-m
 .RS 4
-Java¤ª¤è¤Ó¥Í¥¤¥Æ¥£¥ÖC/C++¥Õ¥ì¡¼¥à¤ÎξÊý¤ò»ý¤Äº®¹ç¥â¡¼¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤ò½ÐÎϤ·¤Þ¤¹¡£
+JavaãŠã‚ˆã³ãƒã‚¤ãƒ†ã‚£ãƒ–C/C++フレームã®ä¸¡æ–¹ã‚’æŒã¤æ··åˆãƒ¢ãƒ¼ãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+ヘルプ・メッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "´ûÃΤÎÉÔ¶ñ¹ç"
+.SH "既知ã®ä¸å…·åˆ"
 .PP
-º®¹ç¥â¡¼¥É¤Î¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤Ç¤Ï¡¢\fI\-m\fR¥ª¥×¥·¥ç¥ó¤Ï¥ê¥â¡¼¥È¡¦¥Ç¥Ð¥Ã¥°¡¦¥µ¡¼¥Ð¡¼¤Ç¤Ïµ¡Ç½¤·¤Þ¤»¤ó¡£
-.SH "´ØÏ¢¹àÌÜ"
+æ··åˆãƒ¢ãƒ¼ãƒ‰ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã§ã¯ã€\fI\-m\fRオプションã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ‡ãƒãƒƒã‚°ãƒ»ã‚µãƒ¼ãƒãƒ¼ã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jstat.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstat.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstat
 .\" Language: English
-.\" Date: 2011ǯ5·î10Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2011年5月10日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstat" "1" "2011ǯ5·î10Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstat" "1" "2011年5月10日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstat \- Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ÎÅý·×¤ò´Æ»ë¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstat \- Java仮想マシン(JVM)ã®çµ±è¨ˆã‚’監視ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \fIgeneralOption\fR
 .RS 4
-ñÆȤǻÈÍѤ¹¤ë°ìÈÌŪ¤Ê¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ç¤¹(\fI\-help\fR¤Þ¤¿¤Ï\fI\-options\fR)¡£°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+å˜ç‹¬ã§ä½¿ç”¨ã™ã‚‹ä¸€èˆ¬çš„ãªã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã§ã™(\fI\-help\fRã¾ãŸã¯\fI\-options\fR)。一般的ãªã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIoutputOptions\fR
 .RS 4
-ñ°ì¤Î\fIstatOption\fR¤È\fI\-t\fR¡¢\fI\-h\fR¤ª¤è¤Ó\fI\-J\fR¤Î¤¤¤º¤ì¤«¤Î¥ª¥×¥·¥ç¥ó¤Ç¹½À®¤µ¤ì¤ë1¤Ä°Ê¾å¤Î½ÐÎÏ¥ª¥×¥·¥ç¥ó¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+å˜ä¸€ã®\fIstatOption\fRã¨\fI\-t\fRã€\fI\-h\fRãŠã‚ˆã³\fI\-J\fRã®ã„ãšã‚Œã‹ã®ã‚ªãƒ—ションã§æ§‹æˆã•ã‚Œã‚‹1ã¤ä»¥ä¸Šã®å‡ºåŠ›ã‚ªãƒ—ション。出力オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIvmid\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥ÈJVM¤ò¼¨¤¹Ê¸»úÎó¤Ç¤¢¤ë²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤǤ¹¡£°ìÈÌŪ¤Ê¹½Ê¸¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+ターゲットJVMを示ã™æ–‡å­—列ã§ã‚る仮想マシン識別å­ã§ã™ã€‚一般的ãªæ§‹æ–‡ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -85,24 +85,24 @@
 .if n \{\
 .RE
 .\}
-\fIvmid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£\fIvmid\fRʸ»úÎó¤Ï¡¢¥í¡¼¥«¥ëJVM¤òɽ¤¹Ã±½ã¤ÊÀ°¿ô¤«¤é¡¢ÄÌ¿®¥×¥í¥È¥³¥ë¡¢¥Ý¡¼¥ÈÈֹ桢¤ª¤è¤Ó¾¤Î¼ÂÁõ¸ÇÍ­¤ÎÃͤò¼¨¤¹Ê£»¨¤Ê¹½Â¤¤Þ¤Ç¡¢ÍÍ¡¹¤Ë°Û¤Ê¤ê¤Þ¤¹¡£²¾ÁÛ¥Þ¥·¥ó¼±Ê̻Ҥò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIvmid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚\fIvmid\fR文字列ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«JVMを表ã™å˜ç´”ãªæ•´æ•°ã‹ã‚‰ã€é€šä¿¡ãƒ—ロトコルã€ãƒãƒ¼ãƒˆç•ªå·ã€ãŠã‚ˆã³ä»–ã®å®Ÿè£…固有ã®å€¤ã‚’示ã™è¤‡é›‘ãªæ§‹é€ ã¾ã§ã€æ§˜ã€…ã«ç•°ãªã‚Šã¾ã™ã€‚仮想マシン識別å­ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIinterval\fR [s|ms]
 .RS 4
-ÉÃ(s)¤Þ¤¿¤Ï¥ß¥êÉÃ(ms)¤Î¤¦¤Á»ØÄꤷ¤¿Ã±°Ì¤Ç¤Î¥µ¥ó¥×¥ê¥ó¥°´Ö³Ö¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Îñ°Ì¤Ï¥ß¥êÉäǤ¹¡£Àµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£»ØÄꤷ¤¿¾ì¹ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Ï³Æ´Ö³Ö¤Ç½ÐÎϤòÀ¸À®¤·¤Þ¤¹¡£
+秒(s)ã¾ãŸã¯ãƒŸãƒªç§’(ms)ã®ã†ã¡æŒ‡å®šã—ãŸå˜ä½ã§ã®ã‚µãƒ³ãƒ—リング間隔ã§ã™ã€‚デフォルトã®å˜ä½ã¯ãƒŸãƒªç§’ã§ã™ã€‚æ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚指定ã—ãŸå ´åˆã€\fIjstat\fRコマンドã¯å„é–“éš”ã§å‡ºåŠ›ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \fIcount\fR
 .RS 4
-ɽ¼¨¤¹¤ë¥µ¥ó¥×¥ë¿ô¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ̵¸Â¤Ç¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢¤Þ¤¿¤Ï\fIjstat\fR¥³¥Þ¥ó¥É¤¬½ªÎ»¤¹¤ë¤Þ¤Ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤ÏÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤ÎÃͤϡ¢Àµ¤ÎÀ°¿ô¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+表示ã™ã‚‹ã‚µãƒ³ãƒ—ル数ã§ã™ã€‚デフォルト値ã¯ç„¡é™ã§ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMãŒçµ‚了ã™ã‚‹ã¾ã§ã€ã¾ãŸã¯\fIjstat\fRコマンドãŒçµ‚了ã™ã‚‹ã¾ã§ã€\fIjstat\fRコマンドã¯çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚ã“ã®å€¤ã¯ã€æ­£ã®æ•´æ•°ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstat\fR¥³¥Þ¥ó¥É¤Ï¡¢ÀßÃÖ¤µ¤ì¤Æ¤¤¤ëJava HotSpot VM¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹Åý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈJVM¤Ï¡¢²¾ÁÛ¥Þ¥·¥ó¼±Ê̻Ҥޤ¿¤Ï\fIvmid\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¼±Ê̤µ¤ì¤Þ¤¹¡£
-.SH "²¾ÁÛ¥Þ¥·¥ó¼±ÊÌ»Ò"
+\fIjstat\fRコマンドã¯ã€è¨­ç½®ã•ã‚Œã¦ã„ã‚‹Java HotSpot VMã®ãƒ‘フォーマンス統計データを表示ã—ã¾ã™ã€‚ターゲットJVMã¯ã€ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã¾ãŸã¯\fIvmid\fRオプションã«ã‚ˆã£ã¦è­˜åˆ¥ã•ã‚Œã¾ã™ã€‚
+.SH "仮想マシン識別å­"
 .PP
-\fIvmid\fRʸ»úÎó¤Î¹½Ê¸¤Ï¡¢URI¤Î¹½Ê¸¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIvmid\fR文字列ã®æ§‹æ–‡ã¯ã€URIã®æ§‹æ–‡ã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -116,380 +116,380 @@
 .PP
 \fIprotocol\fR
 .RS 4
-ÄÌ¿®¥×¥í¥È¥³¥ë¤Ç¤¹¡£\fIprotocol\fRÃͤ¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥È¥³¥ë¤¬¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Ë¤Ê¤ê¤Þ¤¹¡£\fIprotocol\fRÃͤ¬¾Êά¤µ¤ì¡¢¥Û¥¹¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥×¥í¥È¥³¥ë¤Ï\fIrmi\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+通信プロトコルã§ã™ã€‚\fIprotocol\fR値ãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ—ロトコルãŒã€ãƒ—ラットフォーム固有ã®æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã«ãªã‚Šã¾ã™ã€‚\fIprotocol\fR値ãŒçœç•¥ã•ã‚Œã€ãƒ›ã‚¹ãƒˆåãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒ—ロトコルã¯\fIrmi\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIlvmid\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥ÈJVM¤Î¥í¡¼¥«¥ë²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤǤ¹¡£\fIlvmid\fR¤Ï¡¢¥·¥¹¥Æ¥à¾å¤ÎJVM¤ò°ì°Õ¤Ë¼±Ê̤¹¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤ÎÃͤǤ¹¡£\fIlvmid\fR¤Ï¡¢²¾ÁÛ¥Þ¥·¥ó¼±Ê̻ҤÎÍ£°ì¤Îɬ¿ÜÍ×ÁǤǤ¹¡£\fIlvmid\fR¤Ï¡¢°ìÈÌŪ¤Ë¤Ï¥¿¡¼¥²¥Ã¥ÈJVM¥×¥í¥»¥¹¤ËÂФ¹¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥×¥í¥»¥¹¼±Ê̻ҤǤ¹¤¬¡¢É¬¤º¤·¤â¤½¤¦¤Ç¤¢¤ë¤È¤Ï¸Â¤ê¤Þ¤»¤ó¡£\fIjps\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢\fIlvmid\fR¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢UNIX¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï\fIps\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢Windows¤Ç¤ÏWindows¥¿¥¹¥¯¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»ÈÍѤ·¤Æ¡¢\fIlvmid\fR¤òÆÃÄê¤Ç¤­¤Þ¤¹¡£
+ターゲットJVMã®ãƒ­ãƒ¼ã‚«ãƒ«ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã§ã™ã€‚\fIlvmid\fRã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®JVMを一æ„ã«è­˜åˆ¥ã™ã‚‹ãƒ—ラットフォーム固有ã®å€¤ã§ã™ã€‚\fIlvmid\fRã¯ã€ä»®æƒ³ãƒžã‚·ãƒ³è­˜åˆ¥å­ã®å”¯ä¸€ã®å¿…é ˆè¦ç´ ã§ã™ã€‚\fIlvmid\fRã¯ã€ä¸€èˆ¬çš„ã«ã¯ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMプロセスã«å¯¾ã™ã‚‹ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ãƒ—ロセス識別å­ã§ã™ãŒã€å¿…ãšã—ã‚‚ãã†ã§ã‚ã‚‹ã¨ã¯é™ã‚Šã¾ã›ã‚“。\fIjps\fRコマンドを使用ã—ã¦ã€\fIlvmid\fRを特定ã§ãã¾ã™ã€‚ã¾ãŸã€UNIXプラットフォームã§ã¯\fIps\fRコマンドを使用ã—ã¦ã€Windowsã§ã¯Windowsタスク・マãƒãƒ¼ã‚¸ãƒ£ã‚’使用ã—ã¦ã€\fIlvmid\fRを特定ã§ãã¾ã™ã€‚
 .RE
 .PP
 \fIhostname\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤ò¼¨¤¹¥Û¥¹¥È̾¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤Ç¤¹¡£\fIhostname\fRÃͤ¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥Û¥¹¥È¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
+ターゲット・ホストを示ã™ãƒ›ã‚¹ãƒˆåã¾ãŸã¯IPアドレスã§ã™ã€‚\fIhostname\fR値ãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ›ã‚¹ãƒˆã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \fIport\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ë¤¿¤á¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¤¹¡£\fIhostname\fRÃͤ¬¾Êά¤µ¤ì¤Æ¤¤¤ë¤«¡¢ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤¬\fIprotocol\fRÃͤ˻ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIport\fRÃͤÏ̵»ë¤µ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIport\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¥Ý¡¼¥ÈÃͤϡ¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Îrmiregistry¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¼¨¤·¤Þ¤¹¡£\fIport\fRÃͤ¬¾Êά¤µ¤ì¡¢\fIprotocol\fRÃͤÇ\fIrmi\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(1099)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+リモート・サーãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹ãŸã‚ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã™ã€‚\fIhostname\fR値ãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹ã‹ã€æœ€é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルãŒ\fIprotocol\fR値ã«æŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIport\fR値ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIport\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚デフォルトã®\fIrmi\fRプロトコルã®å ´åˆã€ãƒãƒ¼ãƒˆå€¤ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®rmiregistryã®ãƒãƒ¼ãƒˆç•ªå·ã‚’示ã—ã¾ã™ã€‚\fIport\fR値ãŒçœç•¥ã•ã‚Œã€\fIprotocol\fR値ã§\fIrmi\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(1099)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIservername\fR
 .RS 4
-\fIservername\fR¥Ñ¥é¥á¡¼¥¿¤Î°·¤¤¤Ï¡¢¼ÂÁõ¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£ºÇŬ²½¤µ¤ì¤¿¥í¡¼¥«¥ë¡¦¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£\fIrmi\fR¥×¥í¥È¥³¥ë¤Î¾ì¹ç¡¢¤³¤ì¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤ÎRMI¥ê¥½¡¼¥¹¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤òɽ¤·¤Þ¤¹¡£
+\fIservername\fRパラメータã®æ‰±ã„ã¯ã€å®Ÿè£…ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚最é©åŒ–ã•ã‚ŒãŸãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロトコルã®å ´åˆã€ã“ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚\fIrmi\fRプロトコルã®å ´åˆã€ã“ã‚Œã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®RMIリソース・オブジェクトã®åå‰ã‚’表ã—ã¾ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-\fIjstat\fR¥³¥Þ¥ó¥É¤Ï¡¢°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤È½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Î2¤Ä¤Î¥¿¥¤¥×¤Î¥ª¥×¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤¿¾ì¹ç¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Ï´Êñ¤Ê»ÈÍÑΨ¤ª¤è¤Ó¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢Åý·×¥Ç¡¼¥¿½ÐÎϤÎÆâÍƤȷÁ¼°¤¬·è¤Þ¤ê¤Þ¤¹¡£
+\fIjstat\fRコマンドã¯ã€ä¸€èˆ¬çš„ãªã‚ªãƒ—ションã¨å‡ºåŠ›ã‚ªãƒ—ションã®2ã¤ã®ã‚¿ã‚¤ãƒ—ã®ã‚ªãƒ—ションをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚一般的ãªã‚ªãƒ—ションを使用ã—ãŸå ´åˆã€\fIjstat\fRコマンドã¯ç°¡å˜ãªä½¿ç”¨çŽ‡ãŠã‚ˆã³ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¾ã™ã€‚出力オプションã«ã‚ˆã£ã¦ã€çµ±è¨ˆãƒ‡ãƒ¼ã‚¿å‡ºåŠ›ã®å†…容ã¨å½¢å¼ãŒæ±ºã¾ã‚Šã¾ã™ã€‚
 .PP
-¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤È¤½¤Îµ¡Ç½¤Ï¡¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤ÇÊѹ¹¤Þ¤¿¤ÏÇѻߤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
-.SS "°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó"
+ã™ã¹ã¦ã®ã‚ªãƒ—ションã¨ãã®æ©Ÿèƒ½ã¯ã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§å¤‰æ›´ã¾ãŸã¯å»ƒæ­¢ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
+.SS "一般的ãªã‚ªãƒ—ション"
 .PP
-¤¤¤º¤ì¤«¤Î°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤Þ¤¿¤Ï¥Ñ¥é¥á¡¼¥¿¤Ï°ìÀÚ»ØÄê¤Ç¤­¤Þ¤»¤ó¡£
+ã„ãšã‚Œã‹ã®ä¸€èˆ¬çš„ãªã‚ªãƒ—ションを指定ã—ãŸå ´åˆã€ä»–ã®ã‚ªãƒ—ションã¾ãŸã¯ãƒ‘ラメータã¯ä¸€åˆ‡æŒ‡å®šã§ãã¾ã›ã‚“。
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-options
 .RS 4
-Static¥ª¥×¥·¥ç¥ó¤Î¥ê¥¹¥È¤òɽ¼¨¤·¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Staticオプションã®ãƒªã‚¹ãƒˆã‚’表示ã—ã¾ã™ã€‚出力オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "½ÐÎÏ¥ª¥×¥·¥ç¥ó"
+.SS "出力オプション"
 .PP
-°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¤Ë¡¢½ÐÎÏ¥ª¥×¥·¥ç¥ó¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£½ÐÎÏ¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤÎÆâÍƤȷÁ¼°¤ò·èÄꤷ¡¢Ã±°ì¤Î\fIstatOption\fR¤È¤¤¤º¤ì¤«¤Î½ÐÎÏ¥ª¥×¥·¥ç¥ó(\fI\-h\fR¡¢\fI\-t\fR¤ª¤è¤Ó\fI\-J\fR)¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£\fIstatOption\fR¤ÏºÇ½é¤Ëµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+一般的ãªã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã«ã€å‡ºåŠ›ã‚ªãƒ—ションを指定ã§ãã¾ã™ã€‚出力オプションã¯ã€\fIjstat\fRコマンドã®å‡ºåŠ›ã®å†…容ã¨å½¢å¼ã‚’決定ã—ã€å˜ä¸€ã®\fIstatOption\fRã¨ã„ãšã‚Œã‹ã®å‡ºåŠ›ã‚ªãƒ—ション(\fI\-h\fRã€\fI\-t\fRãŠã‚ˆã³\fI\-J\fR)ã§æ§‹æˆã•ã‚Œã¾ã™ã€‚\fIstatOption\fRã¯æœ€åˆã«è¨˜è¿°ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-½ÐÎϤϡ¢³ÆÎ󤬶õÇò¤Ç¶èÀÚ¤é¤ì¤¿É½¤Î·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¥¿¥¤¥È¥ë¤ò´Þ¤à¥Ø¥Ã¥À¡¼¹Ô¤Ë¤è¤Ã¤Æ¡¢³ÆÎó¤Î°ÕÌ£¤¬¤ï¤«¤ê¤Þ¤¹¡£¥Ø¥Ã¥À¡¼¤Îɽ¼¨ÉÑÅÙ¤òÀßÄꤹ¤ë¤Ë¤Ï¡¢\fI\-h\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£Îó¤Î¥Ø¥Ã¥À¡¼Ì¾¤Ï¡¢ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥ó´Ö¤Ç°ì´ÓÀ­¤¬Êݤ¿¤ì¤Æ¤¤¤Þ¤¹¡£°ìÈ̤ˡ¢2¤Ä¤Î¥ª¥×¥·¥ç¥ó¤ÇƱ¤¸Ì¾Á°¤ÎÎ󤬻ÈÍѤµ¤ì¤Æ¤¤¤ì¤Ð¡¢2¤Ä¤ÎÎó¤Î¥Ç¡¼¥¿¡¦¥½¡¼¥¹¤ÏƱ¤¸¤Ç¤¹¡£
+出力ã¯ã€å„列ãŒç©ºç™½ã§åŒºåˆ‡ã‚‰ã‚ŒãŸè¡¨ã®å½¢å¼ã«ãªã‚Šã¾ã™ã€‚タイトルをå«ã‚€ãƒ˜ãƒƒãƒ€ãƒ¼è¡Œã«ã‚ˆã£ã¦ã€å„列ã®æ„味ãŒã‚ã‹ã‚Šã¾ã™ã€‚ヘッダーã®è¡¨ç¤ºé »åº¦ã‚’設定ã™ã‚‹ã«ã¯ã€\fI\-h\fRオプションを使用ã—ã¾ã™ã€‚列ã®ãƒ˜ãƒƒãƒ€ãƒ¼åã¯ã€æ§˜ã€…ãªã‚ªãƒ—ション間ã§ä¸€è²«æ€§ãŒä¿ãŸã‚Œã¦ã„ã¾ã™ã€‚一般ã«ã€2ã¤ã®ã‚ªãƒ—ションã§åŒã˜åå‰ã®åˆ—ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã‚Œã°ã€2ã¤ã®åˆ—ã®ãƒ‡ãƒ¼ã‚¿ãƒ»ã‚½ãƒ¼ã‚¹ã¯åŒã˜ã§ã™ã€‚
 .PP
-\fI\-t\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Timestamp¤È¤¤¤¦¥é¥Ù¥ë¤ÎÉÕ¤¤¤¿¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÎ󤬡¢½ÐÎϤκǽé¤ÎÎó¤È¤·¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£TimestampÎó¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°¤«¤é¤Î·Ð²á»þ´Ö¤¬¡¢ÉÃñ°Ì¤Çɽ¼¨¤µ¤ì¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÀºÅ٤ϡ¢ÍÍ¡¹¤ÊÍ×°ø¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¡¢ÂçÎ̤ÎÉé²Ù¤Î¤«¤«¤Ã¤¿¥·¥¹¥Æ¥à¤Ç¤Î¥¹¥ì¥Ã¥É¡¦¥¹¥±¥¸¥å¡¼¥ë¤ÎÃÙ±ä¤Ë¤è¤êÊÑÆ°¤·¤Þ¤¹¡£
+\fI\-t\fRオプションを使用ã™ã‚‹ã¨ã€Timestampã¨ã„ã†ãƒ©ãƒ™ãƒ«ã®ä»˜ã„ãŸã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®åˆ—ãŒã€å‡ºåŠ›ã®æœ€åˆã®åˆ—ã¨ã—ã¦è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚Timestamp列ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•ã‹ã‚‰ã®çµŒéŽæ™‚é–“ãŒã€ç§’å˜ä½ã§è¡¨ç¤ºã•ã‚Œã¾ã™ã€‚タイムスタンプã®ç²¾åº¦ã¯ã€æ§˜ã€…ãªè¦å› ã«ã‚ˆã£ã¦ç•°ãªã‚Šã€å¤§é‡ã®è² è·ã®ã‹ã‹ã£ãŸã‚·ã‚¹ãƒ†ãƒ ã§ã®ã‚¹ãƒ¬ãƒƒãƒ‰ãƒ»ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã®é…延ã«ã‚ˆã‚Šå¤‰å‹•ã—ã¾ã™ã€‚
 .PP
-interval¤ª¤è¤Ócount¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ·¤Æ¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤¬¤½¤Î½ÐÎϤòɽ¼¨¤¹¤ëÉÑÅ٤Ȳó¿ô¤ò¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£
+intervalãŠã‚ˆã³countパラメータを使用ã—ã¦ã€\fIjstat\fRコマンドãŒãã®å‡ºåŠ›ã‚’表示ã™ã‚‹é »åº¦ã¨å›žæ•°ã‚’ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¤³¤Î·Á¼°¤ÏÊѹ¹¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤¿¤á¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤ÏºîÀ®¤·¤Ê¤Ç¤¯¤À¤µ¤¤¡£\fIjstat\fR¥³¥Þ¥ó¥É¤Î½ÐÎϤò²òÀϤ¹¤ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥Ä¡¼¥ë¤Î¾­Íè¤Î¥ê¥ê¡¼¥¹¤Ç¡¢¤½¤Î¥¹¥¯¥ê¥×¥È¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ë¤³¤È¤Ëα°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã“ã®å½¢å¼ã¯å¤‰æ›´ã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹ãŸã‚ã€\fIjstat\fRコマンドã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トã¯ä½œæˆã—ãªã§ãã ã•ã„。\fIjstat\fRコマンドã®å‡ºåŠ›ã‚’解æžã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トを作æˆã™ã‚‹å ´åˆã¯ã€ã“ã®ãƒ„ールã®å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§ã€ãã®ã‚¹ã‚¯ãƒªãƒ—トを変更ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã“ã¨ã«ç•™æ„ã—ã¦ãã ã•ã„。
 .PP
 \-\fIstatOption\fR
 .RS 4
-\fIjstat\fR¥³¥Þ¥ó¥É¤¬É½¼¨¤¹¤ëÅý·×¥Ç¡¼¥¿¾ðÊó¤ò»ØÄꤷ¤Þ¤¹¡£¼¡¤Ë¡¢ÍøÍѲÄǽ¤Ê¥ª¥×¥·¥ç¥ó¤Î°ìÍ÷¤ò¼¨¤·¤Þ¤¹¡£ÆÃÄê¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¦¥¤¥ó¥¹¥È¡¼¥ë¤Î¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢°ìÈÌŪ¤Ê¥ª¥×¥·¥ç¥ó¤Î\fI\-options\fR¤ò»ÈÍѤ·¤Þ¤¹¡£Stat¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó½ÐÎϤò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjstat\fRコマンドãŒè¡¨ç¤ºã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿æƒ…報を指定ã—ã¾ã™ã€‚次ã«ã€åˆ©ç”¨å¯èƒ½ãªã‚ªãƒ—ションã®ä¸€è¦§ã‚’示ã—ã¾ã™ã€‚特定ã®ãƒ—ラットフォーム・インストールã®ã‚ªãƒ—ションを一覧表示ã™ã‚‹ã«ã¯ã€ä¸€èˆ¬çš„ãªã‚ªãƒ—ションã®\fI\-options\fRを使用ã—ã¾ã™ã€‚StatオプションãŠã‚ˆã³å‡ºåŠ›ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fIclass\fR: ¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIclass\fR: クラス・ローダーã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIcompiler\fR: Java HotSpot VM Just\-in\-Time¥³¥ó¥Ñ¥¤¥é¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIcompiler\fR: Java HotSpot VM Just\-in\-Timeコンパイラã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgc\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥È¤µ¤ì¤¿¥Ò¡¼¥×¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgc\fR: ガベージ・コレクトã•ã‚ŒãŸãƒ’ープã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgccapacity\fR: À¤Â头¤È¤ÎÍÆÎ̤ÈÂбþ¤¹¤ëÎΰè¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgccapacity\fR: 世代ã”ã¨ã®å®¹é‡ã¨å¯¾å¿œã™ã‚‹é ˜åŸŸã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgccause\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼(\fI\-gcutil\fR¤ÈƱ¤¸)¤È¡¢Ä¾Á°¤ª¤è¤Ó¸½ºß(ŬÍѲÄǽ¤Ê¾ì¹ç)¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¸¶°ø¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgccause\fR: ガベージ・コレクション統計データã®ã‚µãƒžãƒªãƒ¼(\fI\-gcutil\fRã¨åŒã˜)ã¨ã€ç›´å‰ãŠã‚ˆã³ç¾åœ¨(é©ç”¨å¯èƒ½ãªå ´åˆ)ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®åŽŸå› ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcnew\fR: NewÀ¤Âå¤ÎÆ°ºî¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcnew\fR: New世代ã®å‹•ä½œã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcnewcapacity\fR: NewÀ¤Âå¤Î¥µ¥¤¥º¤ÈÂбþ¤¹¤ëÎΰè¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcnewcapacity\fR: New世代ã®ã‚µã‚¤ã‚ºã¨å¯¾å¿œã™ã‚‹é ˜åŸŸã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcold\fR: OldÀ¤Âå¤ÎÆ°ºî¤È¥á¥¿¥¹¥Ú¡¼¥¹¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcold\fR: Old世代ã®å‹•ä½œã¨ãƒ¡ã‚¿ã‚¹ãƒšãƒ¼ã‚¹ã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcoldcapacity\fR: OldÀ¤Âå¤Î¥µ¥¤¥º¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcoldcapacity\fR: Old世代ã®ã‚µã‚¤ã‚ºã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcmetacapacity\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î¥µ¥¤¥º¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcmetacapacity\fR: メタスペースã®ã‚µã‚¤ã‚ºã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIgcutil\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¥µ¥Þ¥ê¡¼¤Ë´Ø¤¹¤ëÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIgcutil\fR: ガベージ・コレクションã®ã‚µãƒžãƒªãƒ¼ã«é–¢ã™ã‚‹çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .sp
-\fIprintcompilation\fR: Java HotSpot VM¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤ÎÅý·×¥Ç¡¼¥¿¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIprintcompilation\fR: Java HotSpot VMコンパイル・メソッドã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-h \fIn\fR
 .RS 4
-\fIn\fR¥µ¥ó¥×¥ë(½ÐÎϹÔ)¤´¤È¤ËÎó¥Ø¥Ã¥À¡¼¤òɽ¼¨¤·¤Þ¤¹¡£¤³¤³¤Ç¡¢\fIn\fR¤ÏÀµ¤ÎÀ°¿ôÃͤǤ¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ0¤Ç¤¹¡£¤³¤Î¾ì¹ç¡¢¥Ç¡¼¥¿¤ÎºÇ½é¤Î¹Ô¤Î¾å¤ËÎó¥Ø¥Ã¥À¡¼¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIn\fRサンプル(出力行)ã”ã¨ã«åˆ—ヘッダーを表示ã—ã¾ã™ã€‚ã“ã“ã§ã€\fIn\fRã¯æ­£ã®æ•´æ•°å€¤ã§ã™ã€‚デフォルト値ã¯0ã§ã™ã€‚ã“ã®å ´åˆã€ãƒ‡ãƒ¼ã‚¿ã®æœ€åˆã®è¡Œã®ä¸Šã«åˆ—ヘッダーãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-t
 .RS 4
-¥¿¥¤¥à¥¹¥¿¥ó¥×Îó¤ò½ÐÎϤκǽé¤ÎÎó¤È¤·¤Æɽ¼¨¤·¤Þ¤¹¡£¥¿¥¤¥à¥¹¥¿¥ó¥×¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°»þ¤«¤é¤Î·Ð²á»þ´Ö¤Ç¤¹¡£
+タイムスタンプ列を出力ã®æœ€åˆã®åˆ—ã¨ã—ã¦è¡¨ç¤ºã—ã¾ã™ã€‚タイムスタンプã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•æ™‚ã‹ã‚‰ã®çµŒéŽæ™‚é–“ã§ã™ã€‚
 .RE
 .PP
 \-J\fIjavaOption\fR
 .RS 4
-\fIjavaOption\fR¤òJava¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤ËÅϤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î´°Á´¤Ê¥ê¥¹¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIjavaOption\fRã‚’Javaアプリケーション起動ツールã«æ¸¡ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚オプションã®å®Œå…¨ãªãƒªã‚¹ãƒˆã«ã¤ã„ã¦ã¯ã€java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "Stat¥ª¥×¥·¥ç¥ó¤ª¤è¤Ó½ÐÎÏ"
+.SS "StatオプションãŠã‚ˆã³å‡ºåŠ›"
 .PP
-¼¡¤Î¾ðÊó¤Ï¡¢\fIjstat\fR¥³¥Þ¥ó¥É¤¬³Æ\fIstatOption\fR¤Ë¤Ä¤¤¤Æ½ÐÎϤ¹¤ëÎó¤ò¤Þ¤È¤á¤¿¤â¤Î¤Ç¤¹¡£
+次ã®æƒ…å ±ã¯ã€\fIjstat\fRコマンドãŒå„\fIstatOption\fRã«ã¤ã„ã¦å‡ºåŠ›ã™ã‚‹åˆ—ã‚’ã¾ã¨ã‚ãŸã‚‚ã®ã§ã™ã€‚
 .PP
 \-class \fIoption\fR
 .RS 4
-¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤ÎÅý·×¥Ç¡¼¥¿¡£
+クラス・ローダーã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fILoaded\fR: ¥í¡¼¥É¤µ¤ì¤¿¥¯¥é¥¹¤Î¿ô¡£
+\fILoaded\fR: ロードã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®æ•°ã€‚
 .sp
-\fIBytes\fR: ¥í¡¼¥É¤µ¤ì¤¿KB¤Î¿ô¡£
+\fIBytes\fR: ロードã•ã‚ŒãŸKBã®æ•°ã€‚
 .sp
-\fIUnloaded\fR: ¥¢¥ó¥í¡¼¥É¤µ¤ì¤¿¥¯¥é¥¹¤Î¿ô¡£
+\fIUnloaded\fR: アンロードã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®æ•°ã€‚
 .sp
-\fIBytes\fR: ¥¢¥ó¥í¡¼¥É¤µ¤ì¤¿KB¤Î¿ô¡£
+\fIBytes\fR: アンロードã•ã‚ŒãŸKBã®æ•°ã€‚
 .sp
-\fITime\fR: ¥¯¥é¥¹¤Î¥í¡¼¥É¤ä¥¢¥ó¥í¡¼¥É½èÍý¤ËÍפ·¤¿»þ´Ö¡£
+\fITime\fR: クラスã®ãƒ­ãƒ¼ãƒ‰ã‚„アンロード処ç†ã«è¦ã—ãŸæ™‚間。
 .RE
 .PP
 \-compiler \fIoption\fR
 .RS 4
-Java HotSpot VM Just\-in\-Time¥³¥ó¥Ñ¥¤¥é¤ÎÅý·×¥Ç¡¼¥¿¡£
+Java HotSpot VM Just\-in\-Timeコンパイラã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fICompiled\fR: ¼Â¹Ô¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fICompiled\fR: 実行ã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fIFailed\fR: ¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fIFailed\fR: 失敗ã—ãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fIInvalid\fR: ̵¸ú¤Ë¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fIInvalid\fR: 無効ã«ã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fITime\fR: ¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¼Â¹Ô¤ËÍפ·¤¿»þ´Ö¡£
+\fITime\fR: コンパイル・タスクã®å®Ÿè¡Œã«è¦ã—ãŸæ™‚間。
 .sp
-\fIFailedType\fR: ºÇ¸å¤Ë¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¤¥×¡£
+\fIFailedType\fR: 最後ã«å¤±æ•—ã—ãŸã‚³ãƒ³ãƒ‘イルã®ã‚³ãƒ³ãƒ‘イル・タイプ。
 .sp
-\fIFailedMethod\fR: ºÇ¸å¤Ë¼ºÇÔ¤·¤¿¥³¥ó¥Ñ¥¤¥ë¤Î¥¯¥é¥¹Ì¾¤È¥á¥½¥Ã¥É¡£
+\fIFailedMethod\fR: 最後ã«å¤±æ•—ã—ãŸã‚³ãƒ³ãƒ‘イルã®ã‚¯ãƒ©ã‚¹åã¨ãƒ¡ã‚½ãƒƒãƒ‰ã€‚
 .RE
 .PP
 \-gc \fIoption\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥È¤µ¤ì¤¿¥Ò¡¼¥×¤ÎÅý·×¥Ç¡¼¥¿¡£
+ガベージ・コレクトã•ã‚ŒãŸãƒ’ープã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0U\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(KB)¡£
+\fIS0U\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIS1U\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(KB)¡£
+\fIS1U\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEU\fR: EdenÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIEU\fR: Eden領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOU\fR: OldÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIOU\fR: Old領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIMU\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(KB)¡£
+\fIMU\fR: メタスペースã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®æ•°ã€‚
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gccapacity \fIoption\fR
 .RS 4
-¥á¥â¥ê¡¼¡¦¥×¡¼¥ëÀ¤Â太¤è¤ÓÎΰèÍÆÎÌ¡£
+メモリー・プール世代ãŠã‚ˆã³é ˜åŸŸå®¹é‡ã€‚
 .sp
-\fINGCMN\fR: NewÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fINGCMN\fR: New世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fINGCMX\fR: NewÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fINGCMX\fR: New世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fINGC\fR: NewÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fINGC\fR: New世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOGCMN\fR: OldÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIOGCMN\fR: Old世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIOGCMX\fR: OldÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIOGCMX\fR: Old世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIOGC\fR: OldÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOGC\fR: Old世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIMCMN\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIMCMN\fR: メタスペースã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIMCMX\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIMCMX\fR: メタスペースã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .RE
 .PP
 \-gccause \fIoption\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¤¬¡¢ºÇ¸å¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤È(ŬÍѲÄǽ¤Ê¾ì¹ç¤Ï)¸½ºß¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤Î¸¶°ø¤¬´Þ¤Þ¤ì¤Þ¤¹¡£\fI\-gcutil\fR¤Ç°ìÍ÷ɽ¼¨¤µ¤ì¤ëÎó¤Î¤Û¤«¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¼¡¤ÎÎó¤¬Äɲ䵤ì¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯ã€\fI\-gcutil\fRオプションã¨åŒã˜ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ãŒã€æœ€å¾Œã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã¨(é©ç”¨å¯èƒ½ãªå ´åˆã¯)ç¾åœ¨ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ»ã‚¤ãƒ™ãƒ³ãƒˆã®åŽŸå› ãŒå«ã¾ã‚Œã¾ã™ã€‚\fI\-gcutil\fRã§ä¸€è¦§è¡¨ç¤ºã•ã‚Œã‚‹åˆ—ã®ã»ã‹ã€ã“ã®ã‚ªãƒ—ションã§ã¯æ¬¡ã®åˆ—ãŒè¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .sp
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¡¦¥¤¥Ù¥ó¥È¤ò´Þ¤à¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¡£
+ガベージ・コレクション・イベントをå«ã‚€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fILGCC\fR: ºÇ¸å¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸¶°ø¡£
+\fILGCC\fR: 最後ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®åŽŸå› ã€‚
 .sp
-\fIGCC\fR: ¸½ºß¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¸¶°ø¡£
+\fIGCC\fR: ç¾åœ¨ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®åŽŸå› ã€‚
 .RE
 .PP
 \-gcnew \fIoption\fR
 .RS 4
-NewÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+New世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0U\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(KB)¡£
+\fIS0U\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIS1U\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(KB)¡£
+\fIS1U\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fITT\fR: ÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ¡£
+\fITT\fR: 殿堂入りã—ãã„値。
 .sp
-\fIMTT\fR: ºÇÂçÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ¡£
+\fIMTT\fR: 最大殿堂入りã—ãã„値。
 .sp
-\fIDSS\fR: ŬÀÚ¤ÊSurvivor¥µ¥¤¥º(KB)¡£
+\fIDSS\fR: é©åˆ‡ãªSurvivorサイズ(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIEU\fR: EdenÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIEU\fR: Eden領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .RE
 .PP
 \-gcnewcapacity \fIoption\fR
 .RS 4
-NewÀ¤ÂåÎΰ襵¥¤¥º¤ÎÅý·×¥Ç¡¼¥¿¡£
+New世代領域サイズã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-NGCMN: NewÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+NGCMN: New世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fINGCMX\fR: NewÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fINGCMX\fR: New世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fINGC\fR: NewÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fINGC\fR: New世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS0CMX\fR: SurvivorÎΰè0¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIS0CMX\fR: Survivor領域0ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIS0C\fR: SurvivorÎΰè0¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS0C\fR: Survivor領域0ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIS1CMX\fR: SurvivorÎΰè1¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIS1CMX\fR: Survivor領域1ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIS1C\fR: SurvivorÎΰè1¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIS1C\fR: Survivor領域1ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIECMX\fR: EdenÎΰè¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIECMX\fR: Eden領域ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIEC\fR: EdenÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIEC\fR: Eden領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .RE
 .PP
 \-gcold \fIoption\fR
 .RS 4
-Old¤ª¤è¤ÓPermanentÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+OldãŠã‚ˆã³Permanent世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIMU\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(KB)¡£
+\fIMU\fR: メタスペースã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOU\fR: OldÎΰè¤Î»ÈÍÑΨ(KB)¡£
+\fIOU\fR: Old領域ã®ä½¿ç”¨çŽ‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcoldcapacity \fIoption\fR
 .RS 4
-OldÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+Old世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIOGCMN\fR: OldÀ¤Âå¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIOGCMN\fR: Old世代ã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIOGCMX\fR: OldÀ¤Âå¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIOGCMX\fR: Old世代ã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIOGC\fR: OldÀ¤Âå¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOGC\fR: Old世代ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIOC\fR: OldÎΰè¤Î¸½ºß¤ÎÍÆÎÌ(KB)¡£
+\fIOC\fR: Old領域ã®ç¾åœ¨ã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcmetacapacity \fIoption\fR
 .RS 4
-PermanentÀ¤Âå¤ÎÅý·×¥Ç¡¼¥¿¡£
+Permanent世代ã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fIMCMN\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇ¾®ÍÆÎÌ(KB)¡£
+\fIMCMN\fR: メタスペースã®æœ€å°å®¹é‡(KB)。
 .sp
-\fIMCMX\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎºÇÂçÍÆÎÌ(KB)¡£
+\fIMCMX\fR: メタスペースã®æœ€å¤§å®¹é‡(KB)。
 .sp
-\fIMC\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤ÎÍÆÎÌ(KB)¡£
+\fIMC\fR: メタスペースã®å®¹é‡(KB)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-gcutil \fIoption\fR
 .RS 4
-¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÅý·×¥Ç¡¼¥¿¤Î¥µ¥Þ¥ê¡¼
+ガベージ・コレクション統計データã®ã‚µãƒžãƒªãƒ¼
 .sp
-\fIS0\fR: SurvivorÎΰè0¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIS0\fR: Survivor領域0ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIS1\fR: SurvivorÎΰè1¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIS1\fR: Survivor領域1ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIE\fR: EdenÎΰè¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIE\fR: Eden領域ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIO\fR: OldÎΰè¤Î»ÈÍÑΨ(¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIO\fR: Old領域ã®ä½¿ç”¨çŽ‡(ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIM\fR: ¥á¥¿¥¹¥Ú¡¼¥¹¤Î»ÈÍÑΨ(Îΰè¤Î¸½ºß¤ÎÍÆÎ̤ËÂФ¹¤ë¥Ñ¡¼¥»¥ó¥Æ¡¼¥¸)¡£
+\fIM\fR: メタスペースã®ä½¿ç”¨çŽ‡(領域ã®ç¾åœ¨ã®å®¹é‡ã«å¯¾ã™ã‚‹ãƒ‘ーセンテージ)。
 .sp
-\fIYGC\fR: ¼ã¤¤À¤Âå¤ÎGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIYGC\fR: è‹¥ã„世代ã®GCイベント数。
 .sp
-\fIYGCT\fR: ¼ã¤¤À¤Âå¤Î¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIYGCT\fR: è‹¥ã„世代ã®ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³æ™‚間。
 .sp
-\fIFGC\fR: ¥Õ¥ëGC¥¤¥Ù¥ó¥È¿ô¡£
+\fIFGC\fR: フルGCイベント数。
 .sp
-\fIFGCT\fR: ¥Õ¥ë¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó»þ´Ö¡£
+\fIFGCT\fR: フルガベージ・コレクション時間。
 .sp
-\fIGCT\fR: ¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥óÁí»þ´Ö¡£
+\fIGCT\fR: ガベージ・コレクションç·æ™‚間。
 .RE
 .PP
 \-printcompilation \fIoption\fR
 .RS 4
-Java HotSpot VM¥³¥ó¥Ñ¥¤¥ë¡¦¥á¥½¥Ã¥É¤ÎÅý·×¥Ç¡¼¥¿¡£
+Java HotSpot VMコンパイル・メソッドã®çµ±è¨ˆãƒ‡ãƒ¼ã‚¿ã€‚
 .sp
-\fICompiled\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Ç¼Â¹Ô¤µ¤ì¤¿¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¹¥¯¤Î¿ô¡£
+\fICompiled\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã§å®Ÿè¡Œã•ã‚ŒãŸã‚³ãƒ³ãƒ‘イル・タスクã®æ•°ã€‚
 .sp
-\fISize\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¥Ð¥¤¥È¡¦¥³¡¼¥É¤Î¥Ð¥¤¥È¿ô¡£
+\fISize\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ãƒã‚¤ãƒˆãƒ»ã‚³ãƒ¼ãƒ‰ã®ãƒã‚¤ãƒˆæ•°ã€‚
 .sp
-\fIType\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¿¥¤¥×¡£
+\fIType\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã®ã‚³ãƒ³ãƒ‘イル・タイプ。
 .sp
-\fIMethod\fR: ºÇ¶á¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥á¥½¥Ã¥É¤òÆÃÄꤹ¤ë¥¯¥é¥¹Ì¾¤È¥á¥½¥Ã¥É̾¡£¥¯¥é¥¹Ì¾¤Ç¤Ï¡¢Ì¾Á°¶õ´Ö¤Î¶èÀÚ¤êʸ»ú¤È¤·¤Æ¡¢¥É¥Ã¥È(\&.)¤Î¤«¤ï¤ê¤Ë¥¹¥é¥Ã¥·¥å(/)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£¥á¥½¥Ã¥É̾¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹Æâ¤Î¥á¥½¥Ã¥É¤Ç¤¹¡£¤³¤ì¤é¤Î2¤Ä¤Î¥Õ¥£¡¼¥ë¥É¤Î·Á¼°¤Ï¡¢HotSpot
-\fI\-XX:+PrintComplation\fR¥ª¥×¥·¥ç¥ó¤ÈÂбþ¤·¤Æ¤¤¤Þ¤¹¡£
+\fIMethod\fR: 最近コンパイルã•ã‚ŒãŸãƒ¡ã‚½ãƒƒãƒ‰ã‚’特定ã™ã‚‹ã‚¯ãƒ©ã‚¹åã¨ãƒ¡ã‚½ãƒƒãƒ‰å。クラスåã§ã¯ã€åå‰ç©ºé–“ã®åŒºåˆ‡ã‚Šæ–‡å­—ã¨ã—ã¦ã€ãƒ‰ãƒƒãƒˆ(\&.)ã®ã‹ã‚ã‚Šã«ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚メソッドåã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹å†…ã®ãƒ¡ã‚½ãƒƒãƒ‰ã§ã™ã€‚ã“れらã®2ã¤ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®å½¢å¼ã¯ã€HotSpot
+\fI\-XX:+PrintComplation\fRオプションã¨å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¤³¤Î¹à¤Ç¤Ï¡¢21891¤Î\fIlvmid\fR¤ò»ý¤Ä¥í¡¼¥«¥ëJVM¤ò¥â¥Ë¥¿¥ê¥ó¥°¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£
-.SS "gcutil¥ª¥×¥·¥ç¥ó"
+ã“ã®é …ã§ã¯ã€21891ã®\fIlvmid\fRã‚’æŒã¤ãƒ­ãƒ¼ã‚«ãƒ«JVMをモニタリングã™ã‚‹ä¾‹ã‚’示ã—ã¾ã™ã€‚
+.SS "gcutilオプション"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid 21891¤ËÀܳ¤·¤Æ¡¢250¥ß¥êÉôֳ֤Ç7¤Ä¤Î¥µ¥ó¥×¥ë¤ò¼èÆÀ¤·¡¢\-\fIgcutil\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î»ØÄê¤Ë½¾¤Ã¤Æ½ÐÎϤòɽ¼¨¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid 21891ã«æŽ¥ç¶šã—ã¦ã€250ミリ秒間隔ã§7ã¤ã®ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã€\-\fIgcutil\fRオプションã§ã®æŒ‡å®šã«å¾“ã£ã¦å‡ºåŠ›ã‚’表示ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Î½ÐÎϤϡ¢¼ã¤¤À¤Âå¤Î¥³¥ì¥¯¥·¥ç¥ó¤¬3ÈÖÌܤÈ4ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤Ç¹Ô¤ï¤ì¤¿¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ï0\&.001É䫤«¤Ã¤Æ¤ª¤ê¡¢¥ª¥Ö¥¸¥§¥¯¥È¤¬EdenÎΰè(E)¤«¤éOldÎΰè(O)¤Ë¾º³Ê¤·¤¿¤¿¤á¡¢OldÎΰè¤Î»ÈÍÑΨ¤Ï9\&.49%¤«¤é9\&.51%¤ËÁý²Ã¤·¤Æ¤¤¤Þ¤¹¡£SurvivorÎΰè¤Ï¡¢¥³¥ì¥¯¥·¥ç¥óÁ°¤Ï12\&.44%¤¬»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢¥³¥ì¥¯¥·¥ç¥ó¸å¤Î»ÈÍѤÏ7\&.74%¤Î¤ß¤Ç¤¹¡£
+ã“ã®ä¾‹ã®å‡ºåŠ›ã¯ã€è‹¥ã„世代ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒ3番目ã¨4番目ã®ã‚µãƒ³ãƒ—ル間ã§è¡Œã‚ã‚ŒãŸã“ã¨ã‚’示ã—ã¦ã„ã¾ã™ã€‚コレクションã«ã¯0\&.001秒ã‹ã‹ã£ã¦ãŠã‚Šã€ã‚ªãƒ–ジェクトãŒEden領域(E)ã‹ã‚‰Old領域(O)ã«æ˜‡æ ¼ã—ãŸãŸã‚ã€Old領域ã®ä½¿ç”¨çŽ‡ã¯9\&.49%ã‹ã‚‰9\&.51%ã«å¢—加ã—ã¦ã„ã¾ã™ã€‚Survivor領域ã¯ã€ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å‰ã¯12\&.44%ãŒä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã—ãŸãŒã€ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³å¾Œã®ä½¿ç”¨ã¯7\&.74%ã®ã¿ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -508,13 +508,13 @@
 .if n \{\
 .RE
 .\}
-.SS "Îó¥Ø¥Ã¥À¡¼Ê¸»úÎó¤Î·«ÊÖ¤·"
+.SS "列ヘッダー文字列ã®ç¹°è¿”ã—"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid 21891¤ËÀܳ¤·¤Æ¡¢250¥ß¥êÉôֳ֤ǥµ¥ó¥×¥ë¤ò¼èÆÀ¤·¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤Ç¤Î»ØÄê¤Ë½¾¤Ã¤Æ½ÐÎϤòɽ¼¨¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fI\-h3\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¥Ç¡¼¥¿¤¬3¹Ôɽ¼¨¤µ¤ì¤ë¤´¤È¤ËÎó¥Ø¥Ã¥À¡¼¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid 21891ã«æŽ¥ç¶šã—ã¦ã€250ミリ秒間隔ã§ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã€\fI\-gcutil\fRオプションã§ã®æŒ‡å®šã«å¾“ã£ã¦å‡ºåŠ›ã‚’表示ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€\fI\-h3\fRオプションを使用ã—ã¦ã€ãƒ‡ãƒ¼ã‚¿ãŒ3行表示ã•ã‚Œã‚‹ã”ã¨ã«åˆ—ヘッダーを出力ã—ã¾ã™ã€‚
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ø¥Ã¥À¡¼Ê¸»úÎó¤Î·«ÊÖ¤·¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ë¤Û¤«¡¢2ÈÖÌܤÈ3ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤ÇYoung GC¤¬¹Ô¤ï¤ì¤¿¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£¤³¤Î·Ñ³»þ´Ö¤Ï0\&.001ÉäǤ·¤¿¡£¤³¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¡¢SurvivorÎΰè0¤Î»ÈÍÑΨ(S0U)¤¬Å¬ÀÚ¤ÊSurvivor¥µ¥¤¥º(DSS)¤òĶ²á¤¹¤ë¤³¤È¤Ë¤Ê¤ë¥¢¥¯¥Æ¥£¥Ö¡¦¥Ç¡¼¥¿¤¬¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£¤³¤Î·ë²Ì¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢OldÀ¤Âå(¤³¤Î½ÐÎϤˤÏÈóɽ¼¨)¤Ø¾º³Ê¤µ¤ì¡¢ÅÂƲÆþ¤ê¤·¤­¤¤ÃÍ(TT)¤¬¡¢31¤«¤é2¤Ø¹ß³Ê¤µ¤ì¤Þ¤·¤¿¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒ˜ãƒƒãƒ€ãƒ¼æ–‡å­—列ã®ç¹°è¿”ã—ãŒè¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ã»ã‹ã€2番目ã¨3番目ã®ã‚µãƒ³ãƒ—ル間ã§Young GCãŒè¡Œã‚ã‚ŒãŸã“ã¨ãŒã‚ã‹ã‚Šã¾ã™ã€‚ã“ã®ç¶™ç¶šæ™‚é–“ã¯0\&.001秒ã§ã—ãŸã€‚ã“ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€Survivor領域0ã®ä½¿ç”¨çŽ‡(S0U)ãŒé©åˆ‡ãªSurvivorサイズ(DSS)を超éŽã™ã‚‹ã“ã¨ã«ãªã‚‹ã‚¢ã‚¯ãƒ†ã‚£ãƒ–・データãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚ã“ã®çµæžœã€ã‚ªãƒ–ジェクトã¯ã€Old世代(ã“ã®å‡ºåŠ›ã«ã¯éžè¡¨ç¤º)ã¸æ˜‡æ ¼ã•ã‚Œã€æ®¿å ‚入りã—ãã„値(TT)ãŒã€31ã‹ã‚‰2ã¸é™æ ¼ã•ã‚Œã¾ã—ãŸã€‚
 .PP
-Ê̤Υ³¥ì¥¯¥·¥ç¥ó¤¬¡¢5ÈÖÌܤÈ6ÈÖÌܤΥµ¥ó¥×¥ë´Ö¤Ç¹Ô¤ï¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¡¢Survivor¤¬¤Û¤È¤ó¤É¸«¤é¤ì¤º¡¢ÅÂƲÆþ¤ê¤·¤­¤¤Ãͤò31¤ËÌᤷ¤Þ¤·¤¿¡£
+別ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãŒã€5番目ã¨6番目ã®ã‚µãƒ³ãƒ—ル間ã§è¡Œã‚ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€SurvivorãŒã»ã¨ã‚“ã©è¦‹ã‚‰ã‚Œãšã€æ®¿å ‚入りã—ãã„値を31ã«æˆ»ã—ã¾ã—ãŸã€‚
 .sp
 .if n \{\
 .RS 4
@@ -535,11 +535,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¥µ¥ó¥×¥ë¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤ÎÁÞÆþ"
+.SS "サンプルã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã®æŒ¿å…¥"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢lvmid21891¤ØÀܳ¤·¡¢250¥ß¥êÉôֳ֤Ç3¤Ä¤Î¥µ¥ó¥×¥ë¤ò¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£\fI\-t\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢ºÇ½é¤ÎÎó¤Ë¥µ¥ó¥×¥ë¤´¤È¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤òɽ¼¨¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€lvmid21891ã¸æŽ¥ç¶šã—ã€250ミリ秒間隔ã§3ã¤ã®ã‚µãƒ³ãƒ—ルをå–å¾—ã—ã¦ã„ã¾ã™ã€‚\fI\-t\fRオプションを使用ã—ã¦ã€æœ€åˆã®åˆ—ã«ã‚µãƒ³ãƒ—ルã”ã¨ã®ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—を表示ã—ã¦ã„ã¾ã™ã€‚
 .PP
-TimestampÎó¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤Îµ¯Æ°»þ¤«¤é¤Î·Ð²á»þ´Ö¤¬¡¢ÉÃñ°Ì¤Ç¥ì¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fI\-gcoldcapacity\fR½ÐÎϤǤϡ¢³äÅö¥ê¥¯¥¨¥¹¥È¤Þ¤¿¤Ï¾º³Ê¥ê¥¯¥¨¥¹¥È¤¢¤ë¤¤¤Ï¤½¤ÎξÊý¤òËþ¤¿¤¹¤¿¤á¤Ë¥Ò¡¼¥×¤¬³ÈÄ¥¤¹¤ë¤¿¤Ó¤Ë¡¢OldÀ¤Âå¤ÎÍÆÎÌ(OGC)¤ÈOldÎΰè¤ÎÍÆÎÌ(OC)¤È¤¬Áý²Ã¤·¤Æ¤¤¤ë¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£81ÈÖÌܤΥե롦¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó(FGC)¤Î¸å¡¢OldÀ¤Âå¤ÎÍÆÎÌ(OGC)¤Ï11,696 KB¤«¤é13820 KB¤ËÁý²Ã¤·¤Þ¤·¤¿¡£¤³¤ÎÀ¤Âå(¤ª¤è¤ÓÎΰè)¤ÎºÇÂçÍÆÎ̤ϡ¢60,544 KB (OGCMX)¤Ê¤Î¤Ç¡¢¤Þ¤À³ÈÄ¥¤Ç¤­¤ë;͵¤¬»Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+Timestamp列ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã®èµ·å‹•æ™‚ã‹ã‚‰ã®çµŒéŽæ™‚é–“ãŒã€ç§’å˜ä½ã§ãƒ¬ãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ã•ã‚‰ã«ã€\fI\-gcoldcapacity\fR出力ã§ã¯ã€å‰²å½“リクエストã¾ãŸã¯æ˜‡æ ¼ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚ã‚‹ã„ã¯ãã®ä¸¡æ–¹ã‚’満ãŸã™ãŸã‚ã«ãƒ’ープãŒæ‹¡å¼µã™ã‚‹ãŸã³ã«ã€Old世代ã®å®¹é‡(OGC)ã¨Old領域ã®å®¹é‡(OC)ã¨ãŒå¢—加ã—ã¦ã„ã‚‹ã“ã¨ãŒã‚ã‹ã‚Šã¾ã™ã€‚81番目ã®ãƒ•ãƒ«ãƒ»ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³(FGC)ã®å¾Œã€Old世代ã®å®¹é‡(OGC)ã¯11,696 KBã‹ã‚‰13820 KBã«å¢—加ã—ã¾ã—ãŸã€‚ã“ã®ä¸–代(ãŠã‚ˆã³é ˜åŸŸ)ã®æœ€å¤§å®¹é‡ã¯ã€60,544 KB (OGCMX)ãªã®ã§ã€ã¾ã æ‹¡å¼µã§ãる余裕ãŒæ®‹ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -553,11 +553,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¥ê¥â¡¼¥ÈJVM¤Î¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Î´Æ»ë"
+.SS "リモートJVMã®ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã®ç›£è¦–"
 .PP
-¤³¤ÎÎã¤Ï¡¢\fI\-gcutil\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢remote\&.domain¤È¤¤¤¦¥·¥¹¥Æ¥à¾å¤Îlvmid 40496¤ËÀܳ¤·¡¢¥µ¥ó¥×¥ë¤òÉÃñ°Ì¤Ç̵´ü¸Â¤Ë¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€\fI\-gcutil\fRオプションを使用ã—ã¦ã€remote\&.domainã¨ã„ã†ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®lvmid 40496ã«æŽ¥ç¶šã—ã€ã‚µãƒ³ãƒ—ルを秒å˜ä½ã§ç„¡æœŸé™ã«å–å¾—ã—ã¦ã„ã¾ã™ã€‚
 .PP
-lvmid¤Ï¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î̾Á°¤È·ë¹ç¤µ¤ì¤Æ¡¢\fI40496@remote\&.domain\fR¤Î\fIvmid\fR¤ò¹½À®¤·¤Æ¤¤¤Þ¤¹¡£·ë²Ì¤È¤·¤Æ¡¢¤³¤Îvmid¤Ï¡¢\fIrmi\fR¥×¥í¥È¥³¥ë¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¾å¤Î¥Ç¥Õ¥©¥ë¥È¤Î\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ÈÄÌ¿®¤·¤Þ¤¹¡£\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢rmiregistry¤ò»ÈÍѤ·¤Æ¡¢¥Ç¥Õ¥©¥ë¥È¤Îrmiregistry¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIremote\&.domain\fR¤ËÇÛÃÖ¤µ¤ì¤Þ¤¹¡£
+lvmidã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®åå‰ã¨çµåˆã•ã‚Œã¦ã€\fI40496@remote\&.domain\fRã®\fIvmid\fRを構æˆã—ã¦ã„ã¾ã™ã€‚çµæžœã¨ã—ã¦ã€ã“ã®vmidã¯ã€\fIrmi\fRプロトコルを使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆä¸Šã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIjstatd\fRサーãƒãƒ¼ã¨é€šä¿¡ã—ã¾ã™ã€‚\fIjstatd\fRサーãƒãƒ¼ã¯ã€rmiregistryを使用ã—ã¦ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®rmiregistryãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIremote\&.domain\fRã«é…ç½®ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -569,7 +569,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jstatd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstatd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jstatd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: モニタリング・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jstatd" "1" "2013ǯ11·î21Æü" "JDK 8" "¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë"
+.TH "jstatd" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jstatd \- Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ò¥â¥Ë¥¿¡¼¤·¡¢¥ê¥â¡¼¥È¡¦¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë¤¬JVM¤ËÀܳ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï»î¸³Åª¤Ê¤â¤Î¤Ç¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
-.SH "³µÍ×"
+jstatd \- Java仮想マシン(JVM)をモニターã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ãƒ„ールãŒJVMã«æŽ¥ç¶šã§ãるよã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯è©¦é¨“çš„ãªã‚‚ã®ã§ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,47 +64,47 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIjstatd\fR¥³¥Þ¥ó¥É¤Ï¡¢·×¬¤µ¤ì¤¿Java HotSpot VM¤ÎºîÀ®¤È½ªÎ»¤ò¥â¥Ë¥¿¡¼¤·¡¢¥í¡¼¥«¥ë¡¦¥·¥¹¥Æ¥à¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëJVM¤Ë¡¢¥ê¥â¡¼¥È¡¦¥â¥Ë¥¿¥ê¥ó¥°¡¦¥Ä¡¼¥ë¤¬Àܳ¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤¹¤ëRMI¥µ¡¼¥Ð¡¼¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤¹¡£
+\fIjstatd\fRコマンドã¯ã€è¨ˆæ¸¬ã•ã‚ŒãŸJava HotSpot VMã®ä½œæˆã¨çµ‚了をモニターã—ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹JVMã«ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ãƒ„ールãŒæŽ¥ç¶šã§ãるよã†ã«ã™ã‚‹ãŸã‚ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã™ã‚‹RMIサーãƒãƒ¼ãƒ»ã‚¢ãƒ—リケーションã§ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ç¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤ËRMI¥ì¥¸¥¹¥È¥ê¤¬É¬Íפˤʤê¤Þ¤¹¡£\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Ç¡¢¤Þ¤¿¤Ï\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤¿¥Ý¡¼¥È¤Ç¡¢RMI¥ì¥¸¥¹¥È¥ê¤ËÀܳ¤·¤è¤¦¤È¤·¤Þ¤¹¡£RMI¥ì¥¸¥¹¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Ý¡¼¥È¡¢¤Þ¤¿¤Ï\fI\-p\fR
-\fIport\fR¥ª¥×¥·¥ç¥ó¤¬¾Êά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥ÈRMI¥ì¥¸¥¹¥È¥ê¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤¿\fIjstatd\fR¥¢¥×¥ê¥±¡¼¥·¥ç¥óÆâ¤Ë¡¢1¤Ä¤ÎRMI¥ì¥¸¥¹¥È¥ê¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤ÎºîÀ®¤Ï¡¢\fI\-nr\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤ÆÃæ»ß¤Ç¤­¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjstatd\fRサーãƒãƒ¼ã§ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã«RMIレジストリãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚\fIjstatd\fRサーãƒãƒ¼ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆã§ã€ã¾ãŸã¯\fI\-p\fR
+\fIport\fRオプションã§æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆã§ã€RMIレジストリã«æŽ¥ç¶šã—よã†ã¨ã—ã¾ã™ã€‚RMIレジストリãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€\fI\-p\fR
+\fIport\fRオプションã§æŒ‡å®šã•ã‚ŒãŸãƒãƒ¼ãƒˆã€ã¾ãŸã¯\fI\-p\fR
+\fIport\fRオプションãŒçœç•¥ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆRMIレジストリã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚ŒãŸ\fIjstatd\fRアプリケーション内ã«ã€1ã¤ã®RMIレジストリãŒä½œæˆã•ã‚Œã¾ã™ã€‚内部RMIレジストリã®ä½œæˆã¯ã€\fI\-nr\fRオプションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ä¸­æ­¢ã§ãã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-nr
 .RS 4
-´û¸¤ÎRMI¥ì¥¸¥¹¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢\fIjstatd\fR¥×¥í¥»¥¹Æâ¤ËÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤òºîÀ®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£
+既存ã®RMIレジストリãŒè¦‹ã¤ã‹ã‚‰ãªã„å ´åˆã€\fIjstatd\fRプロセス内ã«å†…部RMIレジストリを作æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-p \fIport\fR
 .RS 4
-RMI¥ì¥¸¥¹¥È¥ê¤¬¤¢¤ë¤ÈͽÁÛ¤µ¤ì¤ë¥Ý¡¼¥ÈÈÖ¹æ¤Ç¤¹¡£¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ï¡¢\fI\-nr\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤ÐºîÀ®¤µ¤ì¤Þ¤¹¡£
+RMIレジストリãŒã‚ã‚‹ã¨äºˆæƒ³ã•ã‚Œã‚‹ãƒãƒ¼ãƒˆç•ªå·ã§ã™ã€‚見ã¤ã‹ã‚‰ãªã„å ´åˆã¯ã€\fI\-nr\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã‘ã‚Œã°ä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-n \fIrminame\fR
 .RS 4
-RMI¥ì¥¸¥¹¥È¥ê¤Ë¤ª¤¤¤Æ¡¢¥ê¥â¡¼¥ÈRMI¥ª¥Ö¥¸¥§¥¯¥È¤¬¥Ð¥¤¥ó¥É¤µ¤ì¤ë̾Á°¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È̾¤Ï\fIJStatRemoteHost\fR¤Ç¤¹¡£Ê£¿ô¤Î\fIjstatd\fR¥µ¡¼¥Ð¡¼¤¬Æ±¤¸¥Û¥¹¥È¾å¤Çµ¯Æ°¤·¤Æ¤¤¤ë¾ì¹ç¡¢³Æ¥µ¡¼¥Ð¡¼¤Î¥¨¥¯¥¹¥Ý¡¼¥È¤·¤¿RMI¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢°ì°Õ¤Î̾Á°¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥â¥Ë¥¿¥ê¥ó¥°¡¦¥¯¥é¥¤¥¢¥ó¥È¤Î\fIhostid\fR¤ª¤è¤Ó\fIvmid\fRʸ»úÎó¤Ë¡¢¤½¤Î°ì°Õ¤Î¥µ¡¼¥Ð¡¼Ì¾¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+RMIレジストリã«ãŠã„ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆRMIオブジェクトãŒãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã‚‹åå‰ã§ã™ã€‚デフォルトåã¯\fIJStatRemoteHost\fRã§ã™ã€‚複数ã®\fIjstatd\fRサーãƒãƒ¼ãŒåŒã˜ãƒ›ã‚¹ãƒˆä¸Šã§èµ·å‹•ã—ã¦ã„ã‚‹å ´åˆã€å„サーãƒãƒ¼ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ãŸRMIオブジェクトã®åå‰ã¯ã€ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ä¸€æ„ã®åå‰ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹å ´åˆã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®\fIhostid\fRãŠã‚ˆã³\fIvmid\fR文字列ã«ã€ãã®ä¸€æ„ã®ã‚µãƒ¼ãƒãƒ¼åã‚’å«ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-JVM¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë\fI¥ª¥×¥·¥ç¥ó\fR¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+JVMã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„ã‚‹\fIオプション\fRã‚’1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥»¥­¥å¥ê¥Æ¥£"
+.SH "セキュリティ"
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢Å¬Àڤʥͥ¤¥Æ¥£¥Ö¡¦¥¢¥¯¥»¥¹¸¢¤ò»ý¤ÄJVM¤Î¤ß¤ò´Æ»ë¤Ç¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢\fIjstatd\fR¥×¥í¥»¥¹¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈJVM¤ÈƱ¤¸¥æ¡¼¥¶¡¼»ñ³Ê¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£UNIX¥Ù¡¼¥¹¤Î¥·¥¹¥Æ¥à¤Ë¤ª¤±¤ëroot¥æ¡¼¥¶¡¼¤Ê¤É¤Î°ìÉô¤Î¥æ¡¼¥¶¡¼»ñ³Ê¤Ï¡¢¥·¥¹¥Æ¥à¾å¤ÎǤ°Õ¤ÎJVM¤Ë¤è¤Ã¤Æ¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤¿¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Ø¤Î¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê»ñ³Ê¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë\fIjstatd\fR¥×¥í¥»¥¹¤Ï¡¢¥·¥¹¥Æ¥à¾å¤Î¤¹¤Ù¤Æ¤ÎJVM¤ò´Æ»ë¤Ç¤­¤Þ¤¹¤¬¡¢¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÊ̤ÎÌäÂ꤬µ¯¤³¤ê¤Þ¤¹¡£
+\fIjstatd\fRサーãƒãƒ¼ã¯ã€é©åˆ‡ãªãƒã‚¤ãƒ†ã‚£ãƒ–・アクセス権をæŒã¤JVMã®ã¿ã‚’監視ã§ãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€\fIjstatd\fRプロセスã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆJVMã¨åŒã˜ãƒ¦ãƒ¼ã‚¶ãƒ¼è³‡æ ¼ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚UNIXベースã®ã‚·ã‚¹ãƒ†ãƒ ã«ãŠã‘ã‚‹rootユーザーãªã©ã®ä¸€éƒ¨ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼è³‡æ ¼ã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®ä»»æ„ã®JVMã«ã‚ˆã£ã¦ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•ã‚ŒãŸã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã£ã¦ã„ã¾ã™ã€‚ã“ã®ã‚ˆã†ãªè³‡æ ¼ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹\fIjstatd\fRプロセスã¯ã€ã‚·ã‚¹ãƒ†ãƒ ä¸Šã®ã™ã¹ã¦ã®JVMを監視ã§ãã¾ã™ãŒã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¸Šã®åˆ¥ã®å•é¡ŒãŒèµ·ã“ã‚Šã¾ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ë¤Ï¡¢¥ê¥â¡¼¥È¡¦¥¯¥é¥¤¥¢¥ó¥È¤Îǧ¾Úµ¡Ç½¤¬¤¢¤ê¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¡¦¥×¥í¥»¥¹¤ò¼Â¹Ô¤¹¤ë¤È¡¢\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¢¥¯¥»¥¹¸¢¤ò»ý¤Ä¤¹¤Ù¤Æ¤ÎJVM¤Ë¤è¤ë¥¤¥ó¥¹¥È¥¥¥ë¥á¥ó¥Æ¡¼¥·¥ç¥ó¤Î¥¨¥¯¥¹¥Ý¡¼¥È¤ò¡¢¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Î¤¹¤Ù¤Æ¤Î¥æ¡¼¥¶¡¼¤Ë¸ø³«¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î̵ËÉÈ÷¤Ê¾õÂ֤ϡ¢´Ä¶­¤Ë¤è¤Ã¤Æ¤Ï˾¤Þ¤·¤¯¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤Î¤Ç¡¢Æä˼²ÔƯ´Ä¶­¤Þ¤¿¤Ï°ÂÁ´¤Ç¤Ê¤¤¥Í¥Ã¥È¥ï¡¼¥¯¤Ç¤Ï¡¢\fIjstatd\fR¥×¥í¥»¥¹¤òµ¯Æ°¤¹¤ëÁ°¤Ë¡¢¥í¡¼¥«¥ë¡¦¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¤ò¸¡Æ¤¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIjstatd\fRサーãƒãƒ¼ã«ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®èªè¨¼æ©Ÿèƒ½ãŒã‚ã‚Šã¾ã›ã‚“。ãã®ãŸã‚ã€\fIjstatd\fRサーãƒãƒ¼ãƒ»ãƒ—ロセスを実行ã™ã‚‹ã¨ã€\fIjstatd\fRプロセスãŒã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã¤ã™ã¹ã¦ã®JVMã«ã‚ˆã‚‹ã‚¤ãƒ³ã‚¹ãƒˆã‚¥ãƒ«ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ä¸Šã®ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å…¬é–‹ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚ã“ã®ç„¡é˜²å‚™ãªçŠ¶æ…‹ã¯ã€ç’°å¢ƒã«ã‚ˆã£ã¦ã¯æœ›ã¾ã—ããªã„å ´åˆãŒã‚ã‚‹ã®ã§ã€ç‰¹ã«å®Ÿç¨¼åƒç’°å¢ƒã¾ãŸã¯å®‰å…¨ã§ãªã„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§ã¯ã€\fIjstatd\fRプロセスを起動ã™ã‚‹å‰ã«ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ã‚’検討ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIjstatd\fR¥µ¡¼¥Ð¡¼¤Ï¡¢Â¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢\fIRMISecurityPolicy\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html¤Ë¤¢¤ë
-¡Ö¥Ç¥Õ¥©¥ë¥È¤ÎPolicy¤Î¼ÂÁõ¤È¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Î¹½Ê¸¡×¤Ë½àµò¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹
+\fIjstatd\fRサーãƒãƒ¼ã¯ã€ä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ãªã„å ´åˆã«ã¯ã€\fIRMISecurityPolicy\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’インストールã—ã¾ã™ã€‚ãã®ãŸã‚ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.htmlã«ã‚ã‚‹
+「デフォルトã®Policyã®å®Ÿè£…ã¨ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æ–‡ã€ã«æº–æ‹ ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™
 .PP
-¼¡¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£Îã³°¤òȯÀ¸¤»¤º¤Ë\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Ý¥ê¥·¡¼¤Ï¡¢¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥Ù¡¼¥¹¤Ø¤Î¤¢¤é¤æ¤ë¥¢¥¯¥»¥¹¸¢¤òǧ¤á¤ë¥Ý¥ê¥·¡¼¤è¤ê¤â¼«Í³ÅÙ¤¬Ä㤤¤Ç¤¹¤¬¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤ËºÇÄã¸ÂɬÍפʥ¢¥¯¥»¥¹¸¢¤Î¤ß¤òǧ¤á¤ë¥Ý¥ê¥·¡¼¤è¤ê¤â¼«Í³ÅÙ¤¬¹â¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
+次ã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ä¾‹å¤–を発生ã›ãšã«\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã§ãã¾ã™ã€‚ã“ã®ãƒãƒªã‚·ãƒ¼ã¯ã€ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ãƒ™ãƒ¼ã‚¹ã¸ã®ã‚らゆるアクセス権をèªã‚ã‚‹ãƒãƒªã‚·ãƒ¼ã‚ˆã‚Šã‚‚自由度ãŒä½Žã„ã§ã™ãŒã€\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã™ã‚‹ãŸã‚ã«æœ€ä½Žé™å¿…è¦ãªã‚¢ã‚¯ã‚»ã‚¹æ¨©ã®ã¿ã‚’èªã‚ã‚‹ãƒãƒªã‚·ãƒ¼ã‚ˆã‚Šã‚‚自由度ãŒé«˜ããªã£ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -118,7 +118,7 @@
 .RE
 .\}
 .PP
-¤³¤Î¥Ý¥ê¥·¡¼ÀßÄê¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¤³¤Î¥Æ¥­¥¹¥È¤ò\fIjstatd\&.all\&.policy\fR¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤Ë¥³¥Ô¡¼¤·¡¢¼¡¤Î¤è¤¦¤Ë\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ãƒãƒªã‚·ãƒ¼è¨­å®šã‚’使用ã™ã‚‹ã«ã¯ã€ã“ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’\fIjstatd\&.all\&.policy\fRã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚³ãƒ”ーã—ã€æ¬¡ã®ã‚ˆã†ã«\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -130,16 +130,16 @@
 .RE
 .\}
 .PP
-¤è¤ê¸·¤·¤¤¥»¥­¥å¥ê¥Æ¥£¤ò¼Â»Ü¤¹¤ë¥µ¥¤¥È¤Î¾ì¹ç¡¢¥«¥¹¥¿¥à¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢ÆÃÄê¤Î¿®Íê¤Ç¤­¤ë¥Û¥¹¥È¤Þ¤¿¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¤Ë¥¢¥¯¥»¥¹¤òÀ©¸Â¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î¤è¤¦¤ÊÊýË¡¤Ï¡¢IP¥¢¥É¥ì¥¹¤ÎÅðÄ°¹¶·â¤ò¼õ¤±¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡£¥»¥­¥å¥ê¥Æ¥£¤ÎÌäÂê¤Ë¤Ä¤¤¤Æ¡¢¥«¥¹¥¿¥Þ¥¤¥º¤·¤¿¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç¤âÂнè¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¡¢\fIjstatd\fR¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤»¤º¤Ë¡¢\fIjstat\fR¤È\fIjps\fR¥Ä¡¼¥ë¤ò¥í¡¼¥«¥ë¤Ç»ÈÍѤ¹¤ë¤³¤È¤¬ºÇ¤â°ÂÁ´¤ÊÊýË¡¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SH "¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹"
+より厳ã—ã„セキュリティを実施ã™ã‚‹ã‚µã‚¤ãƒˆã®å ´åˆã€ã‚«ã‚¹ã‚¿ãƒ ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ç‰¹å®šã®ä¿¡é ¼ã§ãるホストã¾ãŸã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«ã‚¢ã‚¯ã‚»ã‚¹ã‚’制é™ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã ã—ã€ã“ã®ã‚ˆã†ãªæ–¹æ³•ã¯ã€IPアドレスã®ç›—è´æ”»æ’ƒã‚’å—ã‘ã‚„ã™ããªã‚Šã¾ã™ã€‚セキュリティã®å•é¡Œã«ã¤ã„ã¦ã€ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã—ãŸãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§ã‚‚対処ã§ããªã„å ´åˆã¯ã€\fIjstatd\fRサーãƒãƒ¼ã‚’実行ã›ãšã«ã€\fIjstat\fRã¨\fIjps\fRツールをローカルã§ä½¿ç”¨ã™ã‚‹ã“ã¨ãŒæœ€ã‚‚安全ãªæ–¹æ³•ã«ãªã‚Šã¾ã™ã€‚
+.SH "リモート・インタフェース"
 .PP
-\fIjstatd\fR¥×¥í¥»¥¹¤¬¥¨¥¯¥¹¥Ý¡¼¥È¤¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢Æȼ«¤Ë³«È¯¤·¤¿¤â¤Î¤Ç¤¢¤êÊѹ¹¤µ¤ì¤ëͽÄê¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤ª¤è¤Ó³«È¯¼Ô¤Ï¡¢¤³¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ø¤Î½ñ¹þ¤ß¤ò¹Ô¤ï¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
-.SH "Îã"
+\fIjstatd\fRプロセスãŒã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯ã€ç‹¬è‡ªã«é–‹ç™ºã—ãŸã‚‚ã®ã§ã‚り変更ã•ã‚Œã‚‹äºˆå®šã§ã™ã€‚ユーザーãŠã‚ˆã³é–‹ç™ºè€…ã¯ã€ã“ã®ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¸ã®æ›¸è¾¼ã¿ã‚’è¡Œã‚ãªã„ã§ãã ã•ã„。
+.SH "例"
 .PP
-¼¡¤Ë¡¢\fIjstatd\fR¥³¥Þ¥ó¥É¤ÎÎã¤ò¼¨¤·¤Þ¤¹¡£\fIjstatd\fR¥¹¥¯¥ê¥×¥È¤Ë¤è¤Ã¤Æ¡¢¥µ¡¼¥Ð¡¼¤Ï¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼«Æ°Åª¤Ëµ¯Æ°¤·¤Þ¤¹¡£
-.SS "ÆâÉôRMI¥ì¥¸¥¹¥È¥ê"
+次ã«ã€\fIjstatd\fRコマンドã®ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIjstatd\fRスクリプトã«ã‚ˆã£ã¦ã€ã‚µãƒ¼ãƒãƒ¼ã¯ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§è‡ªå‹•çš„ã«èµ·å‹•ã—ã¾ã™ã€‚
+.SS "内部RMIレジストリ"
 .PP
-¤³¤ÎÎã¤Ï¡¢ÆâÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤¿¥Û¥¹¥È¤Ë¤è¤ë\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤Îµ¯Æ°¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎRMI¥ì¥¸¥¹¥È¥ê¡¦¥Ý¡¼¥È(¥Ý¡¼¥È1099)¤Ë¤Ï¡¢Â¾¤Î¥µ¡¼¥Ð¡¼¤Ï¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤Ê¤¤¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€å†…部RMIレジストリを使用ã—ãŸãƒ›ã‚¹ãƒˆã«ã‚ˆã‚‹\fIjstatd\fRセッションã®èµ·å‹•ã‚’表ã—ã¦ã„ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®RMIレジストリ・ãƒãƒ¼ãƒˆ(ãƒãƒ¼ãƒˆ1099)ã«ã¯ã€ä»–ã®ã‚µãƒ¼ãƒãƒ¼ã¯ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ãªã„ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -150,9 +150,9 @@
 .if n \{\
 .RE
 .\}
-.SS "³°ÉôRMI¥ì¥¸¥¹¥È¥ê"
+.SS "外部RMIレジストリ"
 .PP
-¤³¤ÎÎã¤Ï¡¢³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤¿\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤Îµ¯Æ°¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ä¾‹ã¯ã€å¤–部RMIレジストリを使用ã—ãŸ\fIjstatd\fRセッションã®èµ·å‹•ã‚’表ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -165,7 +165,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ý¡¼¥È2020¤Î³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤Æ\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒˆ2020ã®å¤–部RMIレジストリを使用ã—ã¦\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -178,7 +178,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Ý¡¼¥È2020¤Î³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤ò»ÈÍѤ·¤Æ¡¢\fIAlternateJstatdServerName\fR¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒˆ2020ã®å¤–部RMIレジストリを使用ã—ã¦ã€\fIAlternateJstatdServerName\fRã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã‚‹\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -191,9 +191,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥¤¥ó¥×¥í¥»¥¹RMI¥ì¥¸¥¹¥È¥ê¤ÎºîÀ®¤ÎÄä»ß"
+.SS "インプロセスRMIレジストリã®ä½œæˆã®åœæ­¢"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢³°ÉôRMI¥ì¥¸¥¹¥È¥ê¤¬¤Ê¤¤¾ì¹ç¤ËºîÀ®¤·¤Ê¤¤\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£¤³¤ÎÎã¤Ç¤Ï¡¢RMI¥ì¥¸¥¹¥È¥ê¤¬¤¹¤Ç¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤ÈÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£RMI¥ì¥¸¥¹¥È¥ê¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€å¤–部RMIレジストリãŒãªã„å ´åˆã«ä½œæˆã—ãªã„\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚ã“ã®ä¾‹ã§ã¯ã€RMIレジストリãŒã™ã§ã«å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨æƒ³å®šã—ã¦ã„ã¾ã™ã€‚RMIレジストリãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -204,9 +204,9 @@
 .if n \{\
 .RE
 .\}
-.SS "RMI¥í¥®¥ó¥°¤ÎÍ­¸ú²½"
+.SS "RMIロギングã®æœ‰åŠ¹åŒ–"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢RMI¥í¥®¥ó¥°µ¡Ç½¤òÍ­¸ú²½¤·¤Æ\fIjstatd\fR¥»¥Ã¥·¥ç¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£¤³¤ÎÊýË¡¤Ï¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤Þ¤¿¤Ï¥µ¡¼¥Ð¡¼³èÆ°¤Î¥â¥Ë¥¿¥ê¥ó¥°¤ËÌòΩ¤Á¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€RMIロギング機能を有効化ã—ã¦\fIjstatd\fRセッションを起動ã—ã¾ã™ã€‚ã“ã®æ–¹æ³•ã¯ã€ãƒˆãƒ©ãƒ–ルシューティングã¾ãŸã¯ã‚µãƒ¼ãƒãƒ¼æ´»å‹•ã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ã«å½¹ç«‹ã¡ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -218,7 +218,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/jvisualvm.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/jvisualvm.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: jvisualvm
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó¥°¤ª¤è¤Ó´ÉÍý¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ãŠã‚ˆã³ç®¡ç†ãƒ„ール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "jvisualvm" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¡¢¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¢¥â¥Ë¥¿¥ê¥ó"
+.TH "jvisualvm" "1" "2013å¹´11月21æ—¥" "JDK 8" "Javaトラブルシューティングã€ãƒ—ロファイリングã€ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-jvisualvm \- Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò»ë³ÐŪ¤Ë´Æ»ë¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥È¤ª¤è¤Ó¥×¥í¥Õ¥¡¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+jvisualvm \- Javaアプリケーションを視覚的ã«ç›£è¦–ã€ãƒˆãƒ©ãƒ–ルシュートãŠã‚ˆã³ãƒ—ロファイルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java VisualVM¤Ï¡¢»ØÄꤵ¤ì¤¿Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤ÇJava¥Æ¥¯¥Î¥í¥¸¡¦¥Ù¡¼¥¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó(Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó)¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤­¤Ë¡¢¤½¤ÎJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë´Ø¤¹¤ë¾ÜºÙ¤Ê¾ðÊó¤òÄ󶡤¹¤ëľ´¶Åª¤Ê¥°¥é¥Õ¥£¥«¥ë¡¦¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£Java VisualVM¤È¤¤¤¦Ì¾Á°¤Ï¡¢Java VisualVM¤¬JVM¥½¥Õ¥È¥¦¥§¥¢¤Ë´Ø¤¹¤ë¾ðÊó¤ò»ë³ÐŪ¤ËÄ󶡤¹¤ë¤È¤¤¤¦»ö¼Â¤ËͳÍ褷¤Æ¤¤¤Þ¤¹¡£
+Java VisualVMã¯ã€æŒ‡å®šã•ã‚ŒãŸJava仮想マシン(JVM)ã§Javaテクノロジ・ベースã®ã‚¢ãƒ—リケーション(Javaアプリケーション)ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ãã«ã€ãã®Javaアプリケーションã«é–¢ã™ã‚‹è©³ç´°ãªæƒ…報をæä¾›ã™ã‚‹ç›´æ„Ÿçš„ãªã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãƒ»ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚Java VisualVMã¨ã„ã†åå‰ã¯ã€Java VisualVMãŒJVMソフトウェアã«é–¢ã™ã‚‹æƒ…報を視覚的ã«æä¾›ã™ã‚‹ã¨ã„ã†äº‹å®Ÿã«ç”±æ¥ã—ã¦ã„ã¾ã™ã€‚
 .PP
-Java VisualVM¤Ï¡¢¤¤¤¯¤Ä¤«¤Î¥â¥Ë¥¿¥ê¥ó¥°¡¢¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ª¤è¤Ó¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¡¦¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò1¤Ä¤Î¥Ä¡¼¥ë¤ËÅý¹ç¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥¹¥¿¥ó¥É¥¢¥í¥ó¡¦¥Ä¡¼¥ë\fIjmap\fR¡¢\fIjinfo\fR¡¢\fIjstat\fR¤ª¤è¤Ó\fIjstack\fR¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ëµ¡Ç½¤Î¤Û¤È¤ó¤É¤¬¡¢Java VisualVM¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fIjconsole\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë°ìÉô¤Îµ¡Ç½¤Ê¤É¡¢Â¾¤Îµ¡Ç½¤Ï¥ª¥×¥·¥ç¥ó¤Î¥×¥é¥°¥¤¥ó¤È¤·¤ÆÄɲäǤ­¤Þ¤¹¡£
+Java VisualVMã¯ã€ã„ãã¤ã‹ã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ã€ãƒˆãƒ©ãƒ–ルシューティングãŠã‚ˆã³ãƒ—ロファイリング・ユーティリティを1ã¤ã®ãƒ„ールã«çµ±åˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒ­ãƒ³ãƒ»ãƒ„ール\fIjmap\fRã€\fIjinfo\fRã€\fIjstat\fRãŠã‚ˆã³\fIjstack\fRã§æä¾›ã•ã‚Œã¦ã„る機能ã®ã»ã¨ã‚“ã©ãŒã€Java VisualVMã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fIjconsole\fRコマンドã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ä¸€éƒ¨ã®æ©Ÿèƒ½ãªã©ã€ä»–ã®æ©Ÿèƒ½ã¯ã‚ªãƒ—ションã®ãƒ—ラグインã¨ã—ã¦è¿½åŠ ã§ãã¾ã™ã€‚
 .PP
-Java VisualVM¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«È¯¼Ô¤¬¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤ò¹Ô¤Ã¤¿¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò´Æ»ë¤ª¤è¤Ó²þÁ±¤·¤¿¤ê¤¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£Java VisualVM¤ò»ÈÍѤ¹¤ë¤È¡¢³«È¯¼Ô¤Ï¥Ò¡¼¥×¡¦¥À¥ó¥×¤ÎÀ¸À®¤ª¤è¤Ó²òÀÏ¡¢¥á¥â¥ê¡¼¡¦¥ê¡¼¥¯¤ÎÆÃÄê¡¢¥¬¥Ù¡¼¥¸¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¼Â¹Ô¤ª¤è¤Ó´Æ»ë¡¢¤ª¤è¤Ó¥á¥â¥ê¡¼¤ÈCPU¤Î´Ê°×¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Î¼Â¹Ô¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¥×¥é¥°¥¤¥ó¤ÇJava VisualVM¤Îµ¡Ç½¤ò³ÈÄ¥¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIjconsole\fR¥³¥Þ¥ó¥É¤Î¤Û¤È¤ó¤É¤Îµ¡Ç½¤Ï¡¢¡ÖMBean¡×¥¿¥Ö¤ª¤è¤ÓJConsole Plug\-in Wrapper¥×¥é¥°¥¤¥ó¤ò²ð¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£É¸½à¤ÎJava VisualVM¥×¥é¥°¥¤¥ó¤Î¥«¥¿¥í¥°¤«¤éÁªÂò¤¹¤ë¤Ë¤Ï¡¢Java VisualVM¥á¥Ë¥å¡¼¤Î\fB¡Ö¥Ä¡¼¥ë¡×\fR¡¢\fB¡Ö¥×¥é¥°¥¤¥ó¡×\fR¤òÁªÂò¤·¤Þ¤¹¡£
+Java VisualVMã¯ã€Javaアプリケーションã®é–‹ç™ºè€…ãŒã‚¢ãƒ—リケーションã®ãƒˆãƒ©ãƒ–ルシューティングを行ã£ãŸã‚Šã€ã‚¢ãƒ—リケーションã®ãƒ‘フォーマンスを監視ãŠã‚ˆã³æ”¹å–„ã—ãŸã‚Šã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚Java VisualVMを使用ã™ã‚‹ã¨ã€é–‹ç™ºè€…ã¯ãƒ’ープ・ダンプã®ç”ŸæˆãŠã‚ˆã³è§£æžã€ãƒ¡ãƒ¢ãƒªãƒ¼ãƒ»ãƒªãƒ¼ã‚¯ã®ç‰¹å®šã€ã‚¬ãƒ™ãƒ¼ã‚¸ãƒ»ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã®å®Ÿè¡ŒãŠã‚ˆã³ç›£è¦–ã€ãŠã‚ˆã³ãƒ¡ãƒ¢ãƒªãƒ¼ã¨CPUã®ç°¡æ˜“プロファイリングã®å®Ÿè¡ŒãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚プラグインã§Java VisualVMã®æ©Ÿèƒ½ã‚’æ‹¡å¼µã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIjconsole\fRコマンドã®ã»ã¨ã‚“ã©ã®æ©Ÿèƒ½ã¯ã€ã€ŒMBeanã€ã‚¿ãƒ–ãŠã‚ˆã³JConsole Plug\-in Wrapperプラグインを介ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚標準ã®Java VisualVMプラグインã®ã‚«ã‚¿ãƒ­ã‚°ã‹ã‚‰é¸æŠžã™ã‚‹ã«ã¯ã€Java VisualVMメニューã®\fB「ツールã€\fRã€\fB「プラグインã€\fRã‚’é¸æŠžã—ã¾ã™ã€‚
 .PP
-Java VisualVM¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+Java VisualVMã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -85,15 +85,15 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java VisualVM¤òµ¯Æ°¤·¤¿¤È¤­¤Ë¼Â¹Ô²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€Java VisualVMã‚’èµ·å‹•ã—ãŸã¨ãã«å®Ÿè¡Œå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
 .PP
 \-J\fIjvm_option\fR
 .RS 4
-¤³¤Î\fIjvm_option\fR¤òJVM¥½¥Õ¥È¥¦¥§¥¢¤ËÅϤ·¤Þ¤¹¡£
+ã“ã®\fIjvm_option\fRã‚’JVMソフトウェアã«æ¸¡ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -103,7 +103,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java VisualVM³«È¯¼Ô¤Î¥µ¥¤¥È
+Java VisualVM開発者ã®ã‚µã‚¤ãƒˆ
 http://visualvm\&.java\&.net/
 .RE
 .sp
@@ -115,7 +115,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Java SE¥É¥­¥å¥á¥ó¥È¤ÎJava VisualVM
+Java SEドキュメントã®Java VisualVM
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/visualvm/index\&.html)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/keytool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/keytool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: keytool
 .\" Language: English
-.\" Date: 2013ǯ8·î6Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年8月6日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "keytool" "1" "2013ǯ8·î6Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "keytool" "1" "2013年8月6日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-keytool \- °Å¹æ²½¸°¡¢X\&.509¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò´Þ¤à¥­¡¼¥¹¥È¥¢(¥Ç¡¼¥¿¥Ù¡¼¥¹)¤ò´ÉÍý¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+keytool \- æš—å·åŒ–éµã€X\&.509証明書ãƒã‚§ãƒ¼ãƒ³ãŠã‚ˆã³ä¿¡é ¼ã§ãる証明書をå«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢(データベース)を管ç†ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,7 +64,7 @@
 .PP
 \fIcommands\fR
 .RS 4
-¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤Î¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¥¿¥¹¥¯Ê̤ËʬÎव¤ì¤Þ¤¹¡£
+コマンドをå‚ç…§ã—ã¦ãã ã•ã„。ã“れらã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã‚¿ã‚¹ã‚¯åˆ¥ã«åˆ†é¡žã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -74,7 +74,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥­¡¼¥¹¥È¥¢¤Ø¤Î¥Ç¡¼¥¿¤ÎºîÀ®¤Þ¤¿¤ÏÄɲÃ
+キーストアã¸ã®ãƒ‡ãƒ¼ã‚¿ã®ä½œæˆã¾ãŸã¯è¿½åŠ 
 .sp
 .RS 4
 .ie n \{\
@@ -140,7 +140,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Ê̤Υ­¡¼¥¹¥È¥¢¤ÎÆâÍƤΥ¤¥ó¥Ý¡¼¥È
+別ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å†…容ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ
 .sp
 .RS 4
 .ie n \{\
@@ -162,7 +162,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤ÎÀ¸À®
+証明書リクエストã®ç”Ÿæˆ
 .sp
 .RS 4
 .ie n \{\
@@ -184,7 +184,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¡¼¥¿¤Î¥¨¥¯¥¹¥Ý¡¼¥È
+データã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ
 .sp
 .RS 4
 .ie n \{\
@@ -206,7 +206,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¡¼¥¿¤Îɽ¼¨
+データã®è¡¨ç¤º
 .sp
 .RS 4
 .ie n \{\
@@ -261,7 +261,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥­¡¼¥¹¥È¥¢¤Î´ÉÍý
+キーストアã®ç®¡ç†
 .sp
 .RS 4
 .ie n \{\
@@ -316,7 +316,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ø¥ë¥×¤Îɽ¼¨
+ヘルプã®è¡¨ç¤º
 .sp
 .RS 4
 .ie n \{\
@@ -330,18 +330,18 @@
 .RE
 .RE
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¸°¤È¾ÚÌÀ½ñ¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ç¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥æ¡¼¥¶¡¼¤Ï¼«Ê¬¤Î¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤ª¤è¤Ó´ØÏ¢¤¹¤ë¾ÚÌÀ½ñ¤ò´ÉÍý¤·¡¢¥Ç¥¸¥¿¥ë½ð̾¤ò»ÈÍѤ·¤¿¼«¸Êǧ¾Ú(¾¤Î¥æ¡¼¥¶¡¼¤Þ¤¿¤Ï¥µ¡¼¥Ó¥¹¤ËÂФ·¤Æ¼«Ê¬¼«¿È¤òǧ¾Ú¤¹¤ë¤³¤È)¤ä¡¢¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤È¾ÚÌÀ½ñ¤Ë´Ø¤¹¤ë¥µ¡¼¥Ó¥¹¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÄÌ¿®¤·¤Æ¤¤¤ë¥Ô¥¢¤Î¸ø³«¸°¤ò¥­¥ã¥Ã¥·¥å¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹(¾ÚÌÀ½ñ¤Î¥Õ¥©¡¼¥à¤Ç)¡£
+\fIkeytool\fRコマンドã¯ã€éµã¨è¨¼æ˜Žæ›¸ã‚’管ç†ã™ã‚‹ãŸã‚ã®ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã§ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯è‡ªåˆ†ã®å…¬é–‹éµã¨ç§˜å¯†éµã®ãƒšã‚¢ãŠã‚ˆã³é–¢é€£ã™ã‚‹è¨¼æ˜Žæ›¸ã‚’管ç†ã—ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを使用ã—ãŸè‡ªå·±èªè¨¼(ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¾ãŸã¯ã‚µãƒ¼ãƒ“スã«å¯¾ã—ã¦è‡ªåˆ†è‡ªèº«ã‚’èªè¨¼ã™ã‚‹ã“ã¨)ã‚„ã€ãƒ‡ãƒ¼ã‚¿ã®æ•´åˆæ€§ã¨è¨¼æ˜Žæ›¸ã«é–¢ã™ã‚‹ã‚µãƒ¼ãƒ“スを利用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€é€šä¿¡ã—ã¦ã„るピアã®å…¬é–‹éµã‚’キャッシュã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™(証明書ã®ãƒ•ã‚©ãƒ¼ãƒ ã§)。
 .PP
-¾ÚÌÀ½ñ¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(¿Íʪ¡¢²ñ¼Ò¤Ê¤É)¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Î¤³¤È¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ë¤Ï¡¢Â¾¤Î¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°(¤ª¤è¤Ó¤½¤Î¾¤Î¾ðÊó)¤¬ÆÃÊ̤ÊÃͤò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£(¾ÚÌÀ½ñ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£)¥Ç¡¼¥¿¤Ë¥Ç¥¸¥¿¥ë½ð̾¤¬ÉÕ¤¤¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ç¥¸¥¿¥ë½ð̾¤ò¸¡¾Ú¤¹¤ë¤³¤È¤Ç¡¢¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤ª¤è¤Ó¥Ç¡¼¥¿¤¬ËÜʪ¤Ç¤¢¤ë¤³¤È¤ò¥Á¥§¥Ã¥¯¤Ç¤­¤Þ¤¹¡£¥Ç¡¼¥¿¤ÎÀ°¹çÀ­¤È¤Ï¡¢¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿¤ê¡¢²þÊѤµ¤ì¤¿¤ê¤·¤Æ¤¤¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤Þ¤¿¡¢¥Ç¡¼¥¿¤¬ËÜʪ¤Ç¤¢¤ë¤È¤Ï¡¢¤½¤Î¥Ç¡¼¥¿¤¬¡¢¥Ç¡¼¥¿¤òºîÀ®¤·¤Æ½ð̾¤·¤¿¤È¾Î¤¹¤ë¿Íʪ¤«¤éÅϤµ¤ì¤¿¥Ç¡¼¥¿¤Ç¤¢¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
+証明書ã¨ã¯ã€ã‚るエンティティ(人物ã€ä¼šç¤¾ãªã©)ã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã®ã“ã¨ã§ã™ã€‚証明書ã«ã¯ã€ä»–ã®ã‚るエンティティã®å…¬é–‹éµ(ãŠã‚ˆã³ãã®ä»–ã®æƒ…å ±)ãŒç‰¹åˆ¥ãªå€¤ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã™ã€‚(証明書をå‚ç…§ã—ã¦ãã ã•ã„。)データã«ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åãŒä»˜ã„ã¦ã„ã‚‹å ´åˆã¯ã€ãƒ‡ã‚¸ã‚¿ãƒ«ç½²åを検証ã™ã‚‹ã“ã¨ã§ã€ãƒ‡ãƒ¼ã‚¿ã®æ•´åˆæ€§ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ãŒæœ¬ç‰©ã§ã‚ã‚‹ã“ã¨ã‚’ãƒã‚§ãƒƒã‚¯ã§ãã¾ã™ã€‚データã®æ•´åˆæ€§ã¨ã¯ã€ãƒ‡ãƒ¼ã‚¿ãŒå¤‰æ›´ã•ã‚ŒãŸã‚Šã€æ”¹å¤‰ã•ã‚ŒãŸã‚Šã—ã¦ã„ãªã„ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ã¾ãŸã€ãƒ‡ãƒ¼ã‚¿ãŒæœ¬ç‰©ã§ã‚ã‚‹ã¨ã¯ã€ãã®ãƒ‡ãƒ¼ã‚¿ãŒã€ãƒ‡ãƒ¼ã‚¿ã‚’作æˆã—ã¦ç½²åã—ãŸã¨ç§°ã™ã‚‹äººç‰©ã‹ã‚‰æ¸¡ã•ã‚ŒãŸãƒ‡ãƒ¼ã‚¿ã§ã‚ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
 .PP
-¤Þ¤¿¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢ÂоΰŹ沽/Éü¹æ²½(DES)¤Ç»ÈÍѤµ¤ì¤ëÈëÌ©¸°¤ª¤è¤Ó¥Ñ¥¹¥Õ¥ì¡¼¥º¤ò´ÉÍý¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ã¾ãŸã€\fIkeytool\fRコマンドを使用ã™ã‚Œã°ã€å¯¾ç§°æš—å·åŒ–/復å·åŒ–(DES)ã§ä½¿ç”¨ã•ã‚Œã‚‹ç§˜å¯†éµãŠã‚ˆã³ãƒ‘スフレーズを管ç†ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¸°¤È¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥³¥Þ¥ó¥É¤È¥ª¥×¥·¥ç¥ó¤Ë´Ø¤¹¤ëÃí°Õ"
+\fIkeytool\fRコマンドã¯ã€éµã¨è¨¼æ˜Žæ›¸ã‚’キーストアã«æ ¼ç´ã—ã¾ã™ã€‚キーストアã®åˆ¥åã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "コマンドã¨ã‚ªãƒ—ションã«é–¢ã™ã‚‹æ³¨æ„"
 .PP
-ÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤È¤½¤ÎÀâÌÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+様々ãªã‚³ãƒžãƒ³ãƒ‰ã¨ãã®èª¬æ˜Žã«ã¤ã„ã¦ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -351,7 +351,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¤É¤Î¥³¥Þ¥ó¥É̾¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó̾¤Ë¤âÀèƬ¤Ë¥Þ¥¤¥Ê¥¹µ­¹æ(\-)¤¬ÉÕ¤­¤Þ¤¹¡£
+ã©ã®ã‚³ãƒžãƒ³ãƒ‰åãŠã‚ˆã³ã‚ªãƒ—ションåã«ã‚‚先頭ã«ãƒžã‚¤ãƒŠã‚¹è¨˜å·(\-)ãŒä»˜ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -362,7 +362,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-³Æ¥³¥Þ¥ó¥É¤Î¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+å„コマンドã®ã‚ªãƒ—ションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -373,7 +373,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤˤʤäƤ¤¤Ê¤¤¤¹¤Ù¤Æ¤Î¹àÌÜ¡¢¤Þ¤¿¤ÏÃ楫¥Ã¥³¤«³Ñ¥«¥Ã¥³¤Ç°Ï¤Þ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¹àÌܤϡ¢¤½¤Î¤È¤ª¤ê¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+イタリック体ã«ãªã£ã¦ã„ãªã„ã™ã¹ã¦ã®é …ç›®ã€ã¾ãŸã¯ä¸­ã‚«ãƒƒã‚³ã‹è§’カッコã§å›²ã¾ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®é …ç›®ã¯ã€ãã®ã¨ãŠã‚Šã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -384,7 +384,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ò°Ï¤àÃ楫¥Ã¥³¤Ï¡¢¤½¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤ¬»ÈÍѤµ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ã楫¥Ã¥³¤Ï¡¢\fI\-v\fR¡¢\fI\-rfc\fR¤ª¤è¤Ó\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò°Ï¤à¤¿¤á¤Ë¤â»ÈÍѤµ¤ì¤Þ¤¹¤¬¡¢¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç¤Ë¤Î¤ß°ÕÌ£¤ò»ý¤Á¤Þ¤¹¡£»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç°Ê³°¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤϤ¢¤ê¤Þ¤»¤ó¡£
+オプションを囲む中カッコã¯ã€ãã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã«ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ãŒä½¿ç”¨ã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’å‚ç…§ã—ã¦ãã ã•ã„。中カッコã¯ã€\fI\-v\fRã€\fI\-rfc\fRãŠã‚ˆã³\fI\-J\fRオプションを囲むãŸã‚ã«ã‚‚使用ã•ã‚Œã¾ã™ãŒã€ã“れらã®ã‚ªãƒ—ションã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã•ã‚ŒãŸå ´åˆã«ã®ã¿æ„味をæŒã¡ã¾ã™ã€‚指定ã•ã‚Œã¦ã„ãªã„å ´åˆä»¥å¤–ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -395,7 +395,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ò°Ï¤à³Ñ¥«¥Ã¥³¤Ï¡¢¤½¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ë¡¢ÃͤÎÆþÎϤòµá¤á¤é¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤Î¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¤Þ¤º¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ÈÍѤ·¤ÆÈó¸ø³«/ÈëÌ©¸°¤ÎÉü¸µ¤ò»î¤ß¤Þ¤¹¡£¤³¤Î»î¤ß¤¬¼ºÇÔ¤·¤¿¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ë¤è¤ê¡¢Èó¸ø³«/ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+オプションを囲む角カッコã¯ã€ãã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã«ã€å€¤ã®å…¥åŠ›ã‚’求ã‚られるã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚\fI\-keypass\fRオプションã®å ´åˆã€ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€\fIkeytool\fRコマンドãŒã¾ãšã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードを使用ã—ã¦éžå…¬é–‹/秘密éµã®å¾©å…ƒã‚’試ã¿ã¾ã™ã€‚ã“ã®è©¦ã¿ãŒå¤±æ•—ã—ãŸå ´åˆã€\fIkeytool\fRコマンドã«ã‚ˆã‚Šã€éžå…¬é–‹/秘密éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -406,11 +406,11 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤιàÌܤμºݤÎÃÍ(¥ª¥×¥·¥ç¥ó¤ÎÃÍ)¤Ï¡¢»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤Î·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+イタリック体ã®é …ç›®ã®å®Ÿéš›ã®å€¤(オプションã®å€¤)ã¯ã€æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-printcert\fRコマンドã®å½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 \fIkeytool \-printcert {\-file cert_file} {\-v}\fR
 .sp
-\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò»ØÄꤹ¤ë¾ì¹ç¤Ï¡¢\fIcert_file\fR¤ò¼ÂºÝ¤Î¥Õ¥¡¥¤¥ë̾¤ÇÃÖ¤­´¹¤¨¤Þ¤¹¡£Îã:
+\fI\-printcert\fRコマンドを指定ã™ã‚‹å ´åˆã¯ã€\fIcert_file\fRを実際ã®ãƒ•ã‚¡ã‚¤ãƒ«åã§ç½®ãæ›ãˆã¾ã™ã€‚例:
 \fIkeytool \-printcert \-file VScert\&.cer\fR
 .RE
 .sp
@@ -422,7 +422,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥ª¥×¥·¥ç¥ó¤ÎÃͤ˶õÇò(¥¹¥Ú¡¼¥¹)¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Ãͤò°úÍÑÉä¤Ç°Ï¤àɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+オプションã®å€¤ã«ç©ºç™½(スペース)ãŒå«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å€¤ã‚’引用符ã§å›²ã‚€å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -433,11 +433,11 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-help\fR¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIkeytool \-help\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fI\-help\fRオプションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚\fIkeytool\fRコマンドã¯ã€\fIkeytool \-help\fRã¨åŒã˜ã§ã™ã€‚
 .RE
-.SH "¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ"
+.SH "オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤"
 .PP
-¼¡¤ÎÎã¤Ç¡¢ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥óÃͤΥǥե©¥ë¥ÈÃͤò¼¨¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã€æ§˜ã€…ãªã‚ªãƒ—ション値ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -474,7 +474,7 @@
 .RE
 .\}
 .PP
-¸ø³«/ÈëÌ©¸°¥Ú¥¢¤ÎÀ¸À®¤Ë¤ª¤¤¤Æ¡¢½ð̾¥¢¥ë¥´¥ê¥º¥à(\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó)¤Ï¡¢´ð¤Ë¤Ê¤ëÈëÌ©¸°¤Î¥¢¥ë¥´¥ê¥º¥à¤«¤éÇÉÀ¸¤·¤Þ¤¹¡£
+公開/秘密éµãƒšã‚¢ã®ç”Ÿæˆã«ãŠã„ã¦ã€ç½²åアルゴリズム(\fI\-sigalg\fRオプション)ã¯ã€åŸºã«ãªã‚‹ç§˜å¯†éµã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -484,7 +484,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬DSA¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA1withDSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒDSAタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA1withDSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -495,7 +495,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬RSA¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA256withRSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒRSAタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA256withRSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -506,40 +506,40 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´ð¤Ë¤Ê¤ëÈëÌ©¸°¤¬EC¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-sigalg\fR¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏSHA256withECDSA¤Ë¤Ê¤ê¤Þ¤¹¡£
+基ã«ãªã‚‹ç§˜å¯†éµãŒECタイプã§ã‚ã‚‹å ´åˆã¯ã€\fI\-sigalg\fRオプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯SHA256withECDSAã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fI\-keyalg\fR¤ª¤è¤Ó\fI\-sigalg\fR°ú¿ô¤Î´°Á´¤Ê¥ê¥¹¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppA¤Î¡ÖJava Cryptography Architecture (JCA) Reference Guide¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "°ìÈÌ¥ª¥×¥·¥ç¥ó"
+\fI\-keyalg\fRãŠã‚ˆã³\fI\-sigalg\fR引数ã®å®Œå…¨ãªãƒªã‚¹ãƒˆã«ã¤ã„ã¦ã¯ã€
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html#AppAã®ã€ŒJava Cryptography Architecture (JCA) Reference Guideã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "一般オプション"
 .PP
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢\fI\-help\fR¥³¥Þ¥ó¥É¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ÈÍѤǤ­¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Ï¾éĹ¥â¡¼¥É¤Ç¼Â¹Ô¤µ¤ì¡¢¾ÜºÙ¤Ê¾ðÊ󤬽ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-v\fRオプションã¯ã€\fI\-help\fRコマンドを除ãã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§ä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-v\fRオプションを指定ã—ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å†—長モードã§å®Ÿè¡Œã•ã‚Œã€è©³ç´°ãªæƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .PP
-Ǥ°Õ¤Î¥³¥Þ¥ó¥É¤Ç»ØÄê¤Ç¤­¤ë\fI\-Jjavaoption\fR°ú¿ô¤â¤¢¤ê¤Þ¤¹¡£\fI\-Jjavaoption\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢»ØÄꤵ¤ì¤¿\fIjavaoption\fRʸ»úÎó¤¬Java¥¤¥ó¥¿¥×¥ê¥¿¤ËľÀÜÅϤµ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê¡¼»ÈÍѤòÄ´À°¤¹¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£»ØÄê¤Ç¤­¤ë¥¤¥ó¥¿¥×¥ê¥¿¡¦¥ª¥×¥·¥ç¥ó¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava \-h\fR¤Þ¤¿¤Ï\fIjava \-X\fR¤ÈÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
+ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ã§æŒ‡å®šã§ãã‚‹\fI\-Jjavaoption\fR引数もã‚ã‚Šã¾ã™ã€‚\fI\-Jjavaoption\fRを指定ã—ãŸå ´åˆã€æŒ‡å®šã•ã‚ŒãŸ\fIjavaoption\fR文字列ãŒJavaインタプリタã«ç›´æŽ¥æ¸¡ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã«ã¯ã€ç©ºç™½ã‚’å«ã‚ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションã¯ã€å®Ÿè¡Œç’°å¢ƒã¾ãŸã¯ãƒ¡ãƒ¢ãƒªãƒ¼ä½¿ç”¨ã‚’調整ã™ã‚‹å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚指定ã§ãるインタプリタ・オプションを一覧表示ã™ã‚‹ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava \-h\fRã¾ãŸã¯\fIjava \-X\fRã¨å…¥åŠ›ã—ã¦ãã ã•ã„。
 .PP
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥­¡¼¥¹¥È¥¢¤ËÂФ¹¤ëÁàºî¤ò¹Ô¤¦¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚ªãƒ—ションã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«å¯¾ã™ã‚‹æ“作を行ã†ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§æŒ‡å®šã§ãã¾ã™ã€‚
 .PP
 \-storetype \fIstoretype\fR
 .RS 4
-¤³¤Î½¤¾þ»Ò¤Ï¡¢¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£
+ã“ã®ä¿®é£¾å­ã¯ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’生æˆã™ã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-keystore \fIkeystore\fR
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+キーストアã®å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î\fIkeytool\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëºÝ¤Ë¡¢JKS
-\fIstoretype\fR¤¬»ÈÍѤµ¤ì¡¢¤«¤Ä¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¿·¤·¤¤¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIkeytool \-genkeypair\fR¤Î¸Æ½Ð¤·»þ¤Ë\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤¬¥æ¡¼¥¶¡¼¤Î¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¤½¤³¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£Æ±Íͤˡ¢\fI\-keystore ks_file\fR¤È¤¤¤¦¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤â¤½¤Îks_file¤¬Â¸ºß¤·¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£JKS
-\fIstoretype\fR¤Î¾ÜºÙ¤Ï¡¢\fI¤Î\fRKeyStore¤Î¼ÂÁõ¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤Ë´Ø¤¹¤ë¹à¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+特定ã®\fIkeytool\fRコマンドを実行ã™ã‚‹éš›ã«ã€JKS
+\fIstoretype\fRãŒä½¿ç”¨ã•ã‚Œã€ã‹ã¤ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã¾ã å­˜åœ¨ã—ã¦ã„ãªã‹ã£ãŸå ´åˆã€æ–°ã—ã„キーストア・ファイルãŒä½œæˆã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIkeytool \-genkeypair\fRã®å‘¼å‡ºã—時ã«\fI\-keystore\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fI\&.keystore\fRã¨ã„ã†åå‰ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã«ã¾ã å­˜åœ¨ã—ã¦ã„ãªã‘ã‚Œã°ã€ãã“ã«ä½œæˆã•ã‚Œã¾ã™ã€‚åŒæ§˜ã«ã€\fI\-keystore ks_file\fRã¨ã„ã†ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã‚‚ãã®ks_fileãŒå­˜åœ¨ã—ãªã‹ã£ãŸå ´åˆã€ãã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒä½œæˆã•ã‚Œã¾ã™ã€‚JKS
+\fIstoretype\fRã®è©³ç´°ã¯ã€\fIã®\fRKeyStoreã®å®Ÿè£…キーストアã®åˆ¥åã«é–¢ã™ã‚‹é …ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-keystore\fR¥ª¥×¥·¥ç¥ó¤«¤é¤ÎÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ï¡¢\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£URL¤È¤·¤Æ\fINONE\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢null¤Î¥¹¥È¥ê¡¼¥à¤¬\fIKeyStore\&.load\fR¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£\fINONE\fR¤Ï¡¢KeyStore¤¬¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Ç¤Ï¤Ê¤¤¾ì¹ç¤Ë»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢¥Ï¡¼¥É¥¦¥§¥¢¡¦¥È¡¼¥¯¥ó¡¦¥Ç¥Ð¥¤¥¹¾å¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ê¤É¤Ç¤¹¡£
+\fI\-keystore\fRオプションã‹ã‚‰ã®å…¥åŠ›ã‚¹ãƒˆãƒªãƒ¼ãƒ ã¯ã€\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚URLã¨ã—ã¦\fINONE\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€nullã®ã‚¹ãƒˆãƒªãƒ¼ãƒ ãŒ\fIKeyStore\&.load\fRメソッドã«æ¸¡ã•ã‚Œã¾ã™ã€‚\fINONE\fRã¯ã€KeyStoreãŒãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã§ã¯ãªã„å ´åˆã«æŒ‡å®šã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ãƒ»ãƒ‡ãƒã‚¤ã‚¹ä¸Šã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆãªã©ã§ã™ã€‚
 .RE
 .PP
 \-storepass[:\fIenv\fR| :\fIfile\fR] argument
 .RS 4
-¥­¡¼¥¹¥È¥¢¤ÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£
+キーストアã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚
 .sp
-½¤¾þ»Ò\fIenv\fR¤Þ¤¿¤Ï\fIfile\fR¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÃͤÏ\fIargument\fR¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ÎÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼¡¤Î¤è¤¦¤Ë¤·¤Æ¼èÆÀ¤µ¤ì¤Þ¤¹¡£
+修飾å­\fIenv\fRã¾ãŸã¯\fIfile\fRを指定ã—ãªã„å ´åˆã€ãƒ‘スワードã®å€¤ã¯\fIargument\fRã«ãªã‚Šã¾ã™ã€‚ã“ã®å€¤ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã€ãƒ‘スワードã¯æ¬¡ã®ã‚ˆã†ã«ã—ã¦å–å¾—ã•ã‚Œã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -550,7 +550,7 @@
 .IP \(bu 2.3
 .\}
 \fIenv\fR:
-\fIargument\fR¤È¤¤¤¦Ì¾Á°¤Î´Ä¶­ÊÑ¿ô¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIargument\fRã¨ã„ã†åå‰ã®ç’°å¢ƒå¤‰æ•°ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -561,119 +561,119 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIfile\fR: argument¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤«¤é¥Ñ¥¹¥ï¡¼¥É¤ò¼èÆÀ¤·¤Þ¤¹¡£
+\fIfile\fR: argumentã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒ‘スワードをå–å¾—ã—ã¾ã™ã€‚
 .RE
 .sp
-\fBÃí°Õ:\fR
-\fI\-keypass\fR¡¢\fI\-srckeypass\fR¡¢\-\fIdestkeypass\fR¡¢\fI\-srcstorepass\fR¡¢\fI\-deststorepass\fR¤Ê¤É¤Î¥Ñ¥¹¥ï¡¼¥É¤òɬÍפȤ¹¤ë¤½¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤Ï¤¹¤Ù¤Æ¡¢\fIenv\fR¤ª¤è¤Ó\fIfile\fR½¤¾þ»Ò¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¡¦¥ª¥×¥·¥ç¥ó¤È½¤¾þ»Ò¤Ï¡¢É¬¤º¥³¥í¥ó(:)¤Ç¶èÀڤäƤ¯¤À¤µ¤¤¡£
+\fB注æ„:\fR
+\fI\-keypass\fRã€\fI\-srckeypass\fRã€\-\fIdestkeypass\fRã€\fI\-srcstorepass\fRã€\fI\-deststorepass\fRãªã©ã®ãƒ‘スワードを必è¦ã¨ã™ã‚‹ãã®ä»–ã®ã‚ªãƒ—ションã¯ã™ã¹ã¦ã€\fIenv\fRãŠã‚ˆã³\fIfile\fR修飾å­ã‚’å—ã‘付ã‘ã¾ã™ã€‚パスワード・オプションã¨ä¿®é£¾å­ã¯ã€å¿…ãšã‚³ãƒ­ãƒ³(:)ã§åŒºåˆ‡ã£ã¦ãã ã•ã„。
 .sp
-¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤ÎÆâÍƤ˥¢¥¯¥»¥¹¤¹¤ë¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¼ï¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+パスワードã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å†…容ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®ç¨®ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fI\-storepass\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤«¤é¾ðÊó¤ò¼èÆÀ¤¹¤ë¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¾Êά²Äǽ¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¼èÆÀ¤·¤¿¾ðÊó¤ÎÀ°¹çÀ­¤ò¸¡¾Ú¤Ç¤­¤º¡¢·Ù¹ð¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+キーストアã‹ã‚‰æƒ…報をå–å¾—ã™ã‚‹å ´åˆã€ãƒ‘スワードã¯çœç•¥å¯èƒ½ã§ã™ã€‚パスワードãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€å–å¾—ã—ãŸæƒ…å ±ã®æ•´åˆæ€§ã‚’検証ã§ããšã€è­¦å‘ŠãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerName \fIprovider_name\fR
 .RS 4
-¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë´Þ¤Þ¤ì¤ë°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À̾¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+セキュリティ・プロパティ・ファイル内ã«å«ã¾ã‚Œã‚‹æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€åを特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerClass \fIprovider_class_name\fR
 .RS 4
-°Å¹æ²½¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¤¬¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¡¢¤½¤Î¥Þ¥¹¥¿¡¼¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤹ¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+æš—å·åŒ–サービス・プロãƒã‚¤ãƒ€ãŒã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã«æŒ‡å®šã•ã‚Œã¦ã„ãªã„ã¨ãã¯ã€ãã®ãƒžã‚¹ã‚¿ãƒ¼ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã‚’指定ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-providerArg \fIprovider_arg\fR
 .RS 4
-\fI\-providerClass\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤµ¤ì¡¢\fIprovider_class_name\fR¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¥ª¥×¥·¥ç¥ó¤Îʸ»úÎóÆþÎÏ°ú¿ô¤òɽ¤·¤Þ¤¹¡£
+\fI\-providerClass\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã•ã‚Œã€\fIprovider_class_name\fRã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®ã‚ªãƒ—ションã®æ–‡å­—列入力引数を表ã—ã¾ã™ã€‚
 .RE
 .PP
 \-protected
 .RS 4
-\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¤Î¤¤¤º¤ì¤«¡£¥Ñ¥¹¥ï¡¼¥É¤òÀìÍÑPIN¥ê¡¼¥À¡¼¤Ê¤É¤ÎÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹·Ðͳ¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢¤³¤ÎÃͤò\fItrue\fR¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-importkeystore\fR¥³¥Þ¥ó¥É¤Ë¤Ï2¤Ä¤Î¥­¡¼¥¹¥È¥¢¤¬´ØÏ¢¤·¤Æ¤¤¤ë¤¿¤á¡¢¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢¤È°¸À襭¡¼¥¹¥È¥¢¤Ë¤½¤ì¤¾¤ì¼¡¤Î2¤Ä¤Î¥ª¥×¥·¥ç¥ó¡¢\fI\-srcprotected\fR¤È\-\fIdestprotected\fR¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fItrue\fRã¾ãŸã¯\fIfalse\fRã®ã„ãšã‚Œã‹ã€‚パスワードを専用PINリーダーãªã©ã®ä¿è­·ã•ã‚ŒãŸèªè¨¼ãƒ‘ス経由ã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€ã“ã®å€¤ã‚’\fItrue\fRã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-importkeystore\fRコマンドã«ã¯2ã¤ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãŒé–¢é€£ã—ã¦ã„ã‚‹ãŸã‚ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨å®›å…ˆã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ãã‚Œãžã‚Œæ¬¡ã®2ã¤ã®ã‚ªãƒ—ションã€\fI\-srcprotected\fRã¨\-\fIdestprotected\fRãŒç”¨æ„ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-ext \fI{name{:critical} {=value}}\fR
 .RS 4
-X\&.509¾ÚÌÀ½ñ¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fI\-genkeypair\fR¤ª¤è¤Ó\fI\-gencert\fR¤Ç»ÈÍѤ·¤Æ¡¢À¸À®¤µ¤ì¤ë¾ÚÌÀ½ñ¤Þ¤¿¤Ï\fI\-certreq\fR¤Ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤òËä¤á¹þ¤ß¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤Ç¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÊ£¿ô²ó»ØÄê¤Ç¤­¤Þ¤¹¡£\fIname\fR°ú¿ô¤Ë¤Ï¡¢¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó̾(̾Á°ÉÕ¤­¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò»²¾È)¤Þ¤¿¤ÏǤ°Õ¤ÎOIDÈÖ¹æ¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIvalue\fR°ú¿ô¤Ï¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î°ú¿ô¤ò»Ø¤·¤Þ¤¹¡£\fIvalue\fR¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤޤ¿¤Ï¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬°ú¿ô¤òɬÍפȤ·¤Ê¤¤¤³¤È¤ò¼¨¤·¤Þ¤¹¡£\fI:critical\fR½¤¾þ»Ò¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î\fIisCritical\fR°À­¤Ï\fItrue\fR¤Ç¡¢»ØÄꤵ¤ì¤Ê¤¤¾ì¹ç¤Ï\fIfalse\fR¤Ç¤¹¡£\fI:critical\fR¤Î¤«¤ï¤ê¤Ë\fI:c\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+X\&.509証明書エクステンションを示ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを\fI\-genkeypair\fRãŠã‚ˆã³\fI\-gencert\fRã§ä½¿ç”¨ã—ã¦ã€ç”Ÿæˆã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã¾ãŸã¯\fI\-certreq\fRã«ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’埋ã‚è¾¼ã¿ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’示ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯è¤‡æ•°å›žæŒ‡å®šã§ãã¾ã™ã€‚\fIname\fR引数ã«ã¯ã€ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエクステンションå(åå‰ä»˜ãエクステンションをå‚ç…§)ã¾ãŸã¯ä»»æ„ã®OID番å·ã‚’指定ã§ãã¾ã™ã€‚指定ã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIvalue\fR引数ã¯ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®å¼•æ•°ã‚’指ã—ã¾ã™ã€‚\fIvalue\fRã‚’çœç•¥ã—ãŸå ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¾ãŸã¯ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå¼•æ•°ã‚’å¿…è¦ã¨ã—ãªã„ã“ã¨ã‚’示ã—ã¾ã™ã€‚\fI:critical\fR修飾å­ãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®\fIisCritical\fR属性ã¯\fItrue\fRã§ã€æŒ‡å®šã•ã‚Œãªã„å ´åˆã¯\fIfalse\fRã§ã™ã€‚\fI:critical\fRã®ã‹ã‚ã‚Šã«\fI:c\fRを使用ã§ãã¾ã™ã€‚
 .RE
-.SH "̾Á°ÉÕ¤­¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó"
+.SH "åå‰ä»˜ãエクステンション"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î̾Á°¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£Ì¾Á°¤ÎÂç/¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£
+\fIkeytool\fRコマンドã¯ã€æ¬¡ã®åå‰ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚åå‰ã®å¤§/å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。
 .PP
-BC¤Þ¤¿¤ÏBasicContraints
+BCã¾ãŸã¯BasicContraints
 .RS 4
-\fBÃÍ\fR: ´°Á´¤Ê·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹:
-\fIca:{true|false}[,pathlen:<len>]\fR¤Þ¤¿¤Ï\fI<len>\fR(¤³¤ì¤Ï¡¢\fIca:true,pathlen:<len>\fR¤Îû½Ì·Á¤Ç¤¹)¡£<\fIlen\fR>¤ò¾Êά¤¹¤ë¤È¡¢\fIca:true\fR¤Î°ÕÌ£¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fB値\fR: 完全ãªå½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™:
+\fIca:{true|false}[,pathlen:<len>]\fRã¾ãŸã¯\fI<len>\fR(ã“ã‚Œã¯ã€\fIca:true,pathlen:<len>\fRã®çŸ­ç¸®å½¢ã§ã™)。<\fIlen\fR>ã‚’çœç•¥ã™ã‚‹ã¨ã€\fIca:true\fRã®æ„味ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-KU¤Þ¤¿¤ÏKeyUsage
+KUã¾ãŸã¯KeyUsage
 .RS 4
-\fBÃÍ\fR:
-\fIusage\fR(\fIusage\fR)*¡¢\fIusage\fR¤Ë¤Ï\fIdigitalSignature\fR¡¢\fInonRepudiation\fR
-(contentCommitment)¡¢\fIkeyEncipherment\fR¡¢\fIdataEncipherment\fR¡¢\fIkeyAgreement\fR¡¢\fIkeyCertSign\fR¡¢\fIcRLSign\fR¡¢\fIencipherOnly\fR¡¢\fIdecipherOnly\fR¤Î¤¤¤º¤ì¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIusage\fR°ú¿ô¤Ï¡¢ÉÔÌÀ³Î¤Ë¤Ê¤é¤Ê¤¤¤«¤®¤ê¡¢ºÇ½é¤Î¿ôʸ»ú(\fIdigitalSignature\fR¤Î¾ì¹ç¤Ï\fIdig\fR)¤Þ¤¿¤Ï¥­¥ã¥á¥ë¥±¡¼¥¹¡¦¥¹¥¿¥¤¥ë(\fIdigitalSignature\fR¤Î¾ì¹ç¤Ï\fIdS\fR¡¢\fIcRLSign\fR¤Î¾ì¹ç¤Ï\fIcRLS\fR)¤Ç¾Êάɽµ­¤Ç¤­¤Þ¤¹¡£\fIusage\fRÃͤϡ¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fB値\fR:
+\fIusage\fR(\fIusage\fR)*ã€\fIusage\fRã«ã¯\fIdigitalSignature\fRã€\fInonRepudiation\fR
+(contentCommitment)ã€\fIkeyEncipherment\fRã€\fIdataEncipherment\fRã€\fIkeyAgreement\fRã€\fIkeyCertSign\fRã€\fIcRLSign\fRã€\fIencipherOnly\fRã€\fIdecipherOnly\fRã®ã„ãšã‚Œã‹ã‚’指定ã§ãã¾ã™ã€‚\fIusage\fR引数ã¯ã€ä¸æ˜Žç¢ºã«ãªã‚‰ãªã„ã‹ãŽã‚Šã€æœ€åˆã®æ•°æ–‡å­—(\fIdigitalSignature\fRã®å ´åˆã¯\fIdig\fR)ã¾ãŸã¯ã‚­ãƒ£ãƒ¡ãƒ«ã‚±ãƒ¼ã‚¹ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«(\fIdigitalSignature\fRã®å ´åˆã¯\fIdS\fRã€\fIcRLSign\fRã®å ´åˆã¯\fIcRLS\fR)ã§çœç•¥è¡¨è¨˜ã§ãã¾ã™ã€‚\fIusage\fR値ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-EKU¤Þ¤¿¤ÏExtendedKeyUsage
+EKUã¾ãŸã¯ExtendedKeyUsage
 .RS 4
-\fBÃÍ\fR:
-\fIusage\fR(\fIusage\fR)*¡¢\fIusage\fR¤Ë¤Ï\fIanyExtendedKeyUsage\fR¡¢\fIserverAuth\fR¡¢\fIclientAuth\fR¡¢\fIcodeSigning\fR¡¢\fIemailProtection\fR¡¢\fItimeStamping\fR¡¢\fIOCSPSigning\fR¤Þ¤¿¤ÏǤ°Õ¤Î\fIOIDʸ»úÎó\fR¤Î¤¤¤º¤ì¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIusage\fR°ú¿ô¤Ï¡¢ÉÔÌÀ³Î¤Ë¤Ê¤é¤Ê¤¤¤«¤®¤ê¡¢ºÇ½é¤Î¿ôʸ»ú¤Þ¤¿¤Ï¥­¥ã¥á¥ë¥±¡¼¥¹¡¦¥¹¥¿¥¤¥ë¤Ç¾Êάɽµ­¤Ç¤­¤Þ¤¹¡£\fIusage\fRÃͤϡ¢Âçʸ»ú¤È¾®Ê¸»ú¤¬¶èÊ̤µ¤ì¤Þ¤¹¡£
+\fB値\fR:
+\fIusage\fR(\fIusage\fR)*ã€\fIusage\fRã«ã¯\fIanyExtendedKeyUsage\fRã€\fIserverAuth\fRã€\fIclientAuth\fRã€\fIcodeSigning\fRã€\fIemailProtection\fRã€\fItimeStamping\fRã€\fIOCSPSigning\fRã¾ãŸã¯ä»»æ„ã®\fIOID文字列\fRã®ã„ãšã‚Œã‹ã‚’指定ã§ãã¾ã™ã€‚\fIusage\fR引数ã¯ã€ä¸æ˜Žç¢ºã«ãªã‚‰ãªã„ã‹ãŽã‚Šã€æœ€åˆã®æ•°æ–‡å­—ã¾ãŸã¯ã‚­ãƒ£ãƒ¡ãƒ«ã‚±ãƒ¼ã‚¹ãƒ»ã‚¹ã‚¿ã‚¤ãƒ«ã§çœç•¥è¡¨è¨˜ã§ãã¾ã™ã€‚\fIusage\fR値ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ãŒåŒºåˆ¥ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
-SAN¤Þ¤¿¤ÏSubjectAlternativeName
+SANã¾ãŸã¯SubjectAlternativeName
 .RS 4
-\fBÃÍ\fR:
+\fB値\fR:
 \fItype\fR:\fIvalue\fR
-(t\fIype:value\fR)*¡¢\fItype\fR¤Ë¤Ï\fIEMAIL\fR¡¢\fIURI\fR¡¢\fIDNS\fR¡¢\fIIP\fR¤Þ¤¿¤Ï\fIOID\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIvalue\fR°ú¿ô¤Ï¡¢\fItype\fR¤Îʸ»úÎó·Á¼°¤ÎÃͤǤ¹¡£
+(t\fIype:value\fR)*ã€\fItype\fRã«ã¯\fIEMAIL\fRã€\fIURI\fRã€\fIDNS\fRã€\fIIP\fRã¾ãŸã¯\fIOID\fRを指定ã§ãã¾ã™ã€‚\fIvalue\fR引数ã¯ã€\fItype\fRã®æ–‡å­—列形å¼ã®å€¤ã§ã™ã€‚
 .RE
 .PP
-IAN¤Þ¤¿¤ÏIssuerAlternativeName
+IANã¾ãŸã¯IssuerAlternativeName
 .RS 4
-\fBÃÍ\fR:
-\fISubjectAlternativeName\fR¤ÈƱ¤¸¤Ç¤¹¡£
+\fB値\fR:
+\fISubjectAlternativeName\fRã¨åŒã˜ã§ã™ã€‚
 .RE
 .PP
-SIA¤Þ¤¿¤ÏSubjectInfoAccess
+SIAã¾ãŸã¯SubjectInfoAccess
 .RS 4
-\fBÃÍ\fR:
+\fB値\fR:
 \fImethod\fR:\fIlocation\-type\fR:\fIlocation\-value\fR
-(\fImethod:location\-type\fR:\fIlocation\-value\fR)*¡¢\fImethod\fR¤Ë¤Ï\fItimeStamping\fR¡¢\fIcaRepository\fR¤Þ¤¿¤ÏǤ°Õ¤ÎOID¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIlocation\-type\fR¤ª¤è¤Ó\fIlocation\-value\fR°ú¿ô¤Ë¤Ï¡¢\fISubjectAlternativeName\fR¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëǤ°Õ¤Î\fItype\fR:\fIvalue\fR¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+(\fImethod:location\-type\fR:\fIlocation\-value\fR)*ã€\fImethod\fRã«ã¯\fItimeStamping\fRã€\fIcaRepository\fRã¾ãŸã¯ä»»æ„ã®OIDを指定ã§ãã¾ã™ã€‚\fIlocation\-type\fRãŠã‚ˆã³\fIlocation\-value\fR引数ã«ã¯ã€\fISubjectAlternativeName\fRエクステンションã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ä»»æ„ã®\fItype\fR:\fIvalue\fRを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
-AIA¤Þ¤¿¤ÏAuthorityInfoAccess
+AIAã¾ãŸã¯AuthorityInfoAccess
 .RS 4
-\fBÃÍ\fR:
-\fISubjectInfoAccess\fR¤ÈƱ¤¸¤Ç¤¹¡£\fImethod\fR°ú¿ô¤Ë¤Ï¡¢\fIocsp\fR¡¢\fIcaIssuers\fR¤Þ¤¿¤ÏǤ°Õ¤ÎOID¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fB値\fR:
+\fISubjectInfoAccess\fRã¨åŒã˜ã§ã™ã€‚\fImethod\fR引数ã«ã¯ã€\fIocsp\fRã€\fIcaIssuers\fRã¾ãŸã¯ä»»æ„ã®OIDを指定ã§ãã¾ã™ã€‚
 .RE
 .PP
-\fIname\fR¤¬OID¤Î¾ì¹ç¡¢OCTET STRING¥¿¥¤¥×¤ÈŤµ¤Î¥Ð¥¤¥È¤ò½ü³°¤·¤¿¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢ÃͤÏ\fIextnValue\fR¤Î16¿Ê¥À¥ó¥×¤ÎDER¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Ç¤¹¡£HEXʸ»úÎó¤Ç¤Ï¡¢É¸½à¤Î16¿Ê¿ô(0\-9¡¢a\-f¡¢A\-F)°Ê³°¤Îʸ»ú¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢01:02:03:04¤È01020304¤ÎξÊý¤È¤âƱ°ì¤ÎÃͤȤ·¤Æ¼õ¤±ÉÕ¤±¤é¤ì¤Þ¤¹¡£Ãͤ¬¤Ê¤¤¾ì¹ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ÎÃÍ¥Õ¥£¡¼¥ë¥É¤Ï¶õ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fIname\fRãŒOIDã®å ´åˆã€OCTET STRINGタイプã¨é•·ã•ã®ãƒã‚¤ãƒˆã‚’除外ã—ãŸã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«ã¤ã„ã¦ã¯ã€å€¤ã¯\fIextnValue\fRã®16進ダンプã®DERエンコーディングã§ã™ã€‚HEX文字列ã§ã¯ã€æ¨™æº–ã®16進数(0\-9ã€a\-fã€A\-F)以外ã®æ–‡å­—ã¯ç„¡è¦–ã•ã‚Œã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€01:02:03:04ã¨01020304ã®ä¸¡æ–¹ã¨ã‚‚åŒä¸€ã®å€¤ã¨ã—ã¦å—ã‘付ã‘られã¾ã™ã€‚値ãŒãªã„å ´åˆã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®å€¤ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã¯ç©ºã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fI\-gencert\fR¤Ç¤Î¤ß»ÈÍѤ¹¤ë\fIhonored\fR¤È¤¤¤¦ÆÃÊ̤Ê̾Á°¤Ï¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤Ë´Þ¤Þ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤òÍ¥À褹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î̾Á°¤ÎÃͤϡ¢\fIall\fR(¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¤¹¤Ù¤Æ¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬Í¥À褵¤ì¤ë)¡¢\fIname{:[critical|non\-critical]}\fR(̾Á°ÉÕ¤­¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬Í¥À褵¤ì¤ë¤¬¡¢Ê̤Î\fIisCritical\fR°À­¤ò»ÈÍѤ¹¤ë)¡¢¤ª¤è¤Ó\fI\-name\fR(\fIall\fR¤È¤È¤â¤Ë»ÈÍѤ·¡¢Îã³°¤ò¼¨¤¹)¤Î¥«¥ó¥Þ¶èÀÚ¤ê¥ê¥¹¥È¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥ê¥¯¥¨¥¹¥È¤µ¤ì¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ÏÍ¥À褵¤ì¤Þ¤»¤ó¡£
+\fI\-gencert\fRã§ã®ã¿ä½¿ç”¨ã™ã‚‹\fIhonored\fRã¨ã„ã†ç‰¹åˆ¥ãªåå‰ã¯ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å«ã¾ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã‚’優先ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚ã“ã®åå‰ã®å€¤ã¯ã€\fIall\fR(リクエストã•ã‚Œã‚‹ã™ã¹ã¦ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå„ªå…ˆã•ã‚Œã‚‹)ã€\fIname{:[critical|non\-critical]}\fR(åå‰ä»˜ãã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒå„ªå…ˆã•ã‚Œã‚‹ãŒã€åˆ¥ã®\fIisCritical\fR属性を使用ã™ã‚‹)ã€ãŠã‚ˆã³\fI\-name\fR(\fIall\fRã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã€ä¾‹å¤–を示ã™)ã®ã‚«ãƒ³ãƒžåŒºåˆ‡ã‚Šãƒªã‚¹ãƒˆã§ã™ã€‚デフォルトã§ã¯ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã‚‹ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã¯å„ªå…ˆã•ã‚Œã¾ã›ã‚“。
 .PP
-\fI\-ext honored\fR¥ª¥×¥·¥ç¥ó¤Ë²Ã¤¨¡¢Ê̤Î̾Á°¤Î¡¢¤Þ¤¿¤ÏOID
-\fI\-ext\fR¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¤³¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬¡¢¤¹¤Ç¤ËÍ¥À褵¤ì¤Æ¤¤¤ë¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ËÄɲ䵤ì¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤Î̾Á°(¤Þ¤¿¤ÏOID)¤òÍ¥À褵¤ì¤ëÃͤǤâ»ÈÍѤ·¤¿¾ì¹ç¤Ï¡¢¤½¤ÎÃͤȽÅÍ×À­¤¬¥ê¥¯¥¨¥¹¥È¤Ë´Þ¤Þ¤ì¤ë¤â¤Î¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+\fI\-ext honored\fRオプションã«åŠ ãˆã€åˆ¥ã®åå‰ã®ã€ã¾ãŸã¯OID
+\fI\-ext\fRã®ã‚ªãƒ—ションを指定ã—ãŸå ´åˆã¯ã€ã“ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ãŒã€ã™ã§ã«å„ªå…ˆã•ã‚Œã¦ã„るエクステンションã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€ã“ã®åå‰(ã¾ãŸã¯OID)を優先ã•ã‚Œã‚‹å€¤ã§ã‚‚使用ã—ãŸå ´åˆã¯ã€ãã®å€¤ã¨é‡è¦æ€§ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å«ã¾ã‚Œã‚‹ã‚‚ã®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .PP
-\fIsubjectKeyIdentifier\fR¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ï¾ï¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¼«¸Ê½ð̾¤Ç¤Ê¤¤¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢\fIauthorityKeyIdentifier\fR¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIsubjectKeyIdentifier\fRエクステンションã¯å¸¸ã«ä½œæˆã•ã‚Œã¾ã™ã€‚自己署åã§ãªã„証明書ã®å ´åˆã¯ã€\fIauthorityKeyIdentifier\fRãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¥æ¡¼¥¶¡¼¤Ï¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó(¤ª¤è¤Ó¾ÚÌÀ½ñ¤Î¾¤Î¥Õ¥£¡¼¥ë¥É)¤ÎÁȹ礻¤Ë¤è¤Ã¤Æ¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Îɸ½à¤Ë½àµò¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥³¥Þ¥ó¥É"
+\fB注æ„:\fR
+ユーザーã¯ã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³(ãŠã‚ˆã³è¨¼æ˜Žæ›¸ã®ä»–ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰)ã®çµ„åˆã›ã«ã‚ˆã£ã¦ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã®æ¨™æº–ã«æº–æ‹ ã—ãªã„å ´åˆãŒã‚ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹è­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "コマンド"
 .PP
 \-gencert
 .RS 4
 \fI{\-rfc} {\-infile infile} {\-outfile outfile} {\-alias alias} {\-sigalg sigalg} {\-dname dname} {\-startdate startdate {\-ext ext}* {\-validity valDays} [\-keypass keypass] {\-keystore keystore} [\-storepass storepass] {\-storetype storetype} {\-providername provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¡¦¥Õ¥¡¥¤¥ë(\fIkeytool\fR
-\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇºîÀ®²Äǽ)¤ËÂФ¹¤ë¥ì¥¹¥Ý¥ó¥¹¤È¤·¤Æ¾ÚÌÀ½ñ¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIinfile\fR¤«¤é(¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É¸½àÆþÎϤ«¤é)¥ê¥¯¥¨¥¹¥È¤òÆɤ߹þ¤ß¡¢ÊÌ̾¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¤½¤Î¥ê¥¯¥¨¥¹¥È¤Ë½ð̾¤·¤Æ¡¢X\&.509¾ÚÌÀ½ñ¤ò\fIoutfile\fR¤Ë(¾Êά¤·¤¿¾ì¹ç¤Ï¡¢É¸½à½ÐÎϤË)½ÐÎϤ·¤Þ¤¹¡£\fI\-rfc\fR¤ò»ØÄꤷ¤¿¾ì¹ç¡¢½ÐÎÏ·Á¼°¤ÏBASE64Éä¹æ²½¤ÎPEM¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢¥Ð¥¤¥Ê¥êDER¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+証明書リクエスト・ファイル(\fIkeytool\fR
+\fI\-certreq\fRコマンドã§ä½œæˆå¯èƒ½)ã«å¯¾ã™ã‚‹ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIinfile\fRã‹ã‚‰(çœç•¥ã—ãŸå ´åˆã¯ã€æ¨™æº–入力ã‹ã‚‰)リクエストを読ã¿è¾¼ã¿ã€åˆ¥åã®ç§˜å¯†éµã‚’使用ã—ã¦ãã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«ç½²åã—ã¦ã€X\&.509証明書を\fIoutfile\fRã«(çœç•¥ã—ãŸå ´åˆã¯ã€æ¨™æº–出力ã«)出力ã—ã¾ã™ã€‚\fI\-rfc\fRを指定ã—ãŸå ´åˆã€å‡ºåŠ›å½¢å¼ã¯BASE64符å·åŒ–ã®PEMã«ãªã‚Šã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€ãƒã‚¤ãƒŠãƒªDERãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
-\fIsigalg\fRÃͤˤϡ¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£\fIstartdate\fR°ú¿ô¤Ï¡¢¾ÚÌÀ½ñ¤ÎÍ­¸ú³«»ÏÆü»þ¤Ç¤¹¡£\fIvalDays\fR°ú¿ô¤Ï¡¢¾ÚÌÀ½ñ¤ÎÍ­¸úÆü¿ô¤ò¼¨¤·¤Þ¤¹¡£
+\fIsigalg\fR値ã«ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚\fIstartdate\fR引数ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹é–‹å§‹æ—¥æ™‚ã§ã™ã€‚\fIvalDays\fR引数ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹æ—¥æ•°ã‚’示ã—ã¾ã™ã€‚
 .sp
-\fIdname\fR¤ò»ØÄꤹ¤ë¤È¡¢À¸À®¤µ¤ì¤ë¾ÚÌÀ½ñ¤Î¼çÂΤȤ·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤«¤é¤Î̾Á°¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fIdname\fRを指定ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®ä¸»ä½“ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‹ã‚‰ã®åå‰ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIext\fRÃͤϡ¢¾ÚÌÀ½ñ¤ËËä¤á¹þ¤Þ¤ì¤ëX\&.509¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£\fI\-ext\fR¤Î¹½Ê¸¤Ë¤Ä¤¤¤Æ¤Ï¡¢°ìÈÌ¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIext\fR値ã¯ã€è¨¼æ˜Žæ›¸ã«åŸ‹ã‚è¾¼ã¾ã‚Œã‚‹X\&.509エクステンションを示ã—ã¾ã™ã€‚\fI\-ext\fRã®æ§‹æ–‡ã«ã¤ã„ã¦ã¯ã€ä¸€èˆ¬ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-\fI\-gencert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òºîÀ®¤Ç¤­¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢\fIe1\fR¤È¤¤¤¦¾ÚÌÀ½ñ¤òºîÀ®¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤Ï¡¢3¤Ä¤Î¾ÚÌÀ½ñ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fI\-gencert\fRオプションを使用ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’作æˆã§ãã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€\fIe1\fRã¨ã„ã†è¨¼æ˜Žæ›¸ã‚’作æˆã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã¯ã€3ã¤ã®è¨¼æ˜Žæ›¸ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢\fIca\fR¡¢\fIca1\fR¡¢\fIca2\fR¤ª¤è¤Ó\fIe1\fR¤Î4¤Ä¤Î¸°¥Ú¥¢¤òºîÀ®¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€\fIca\fRã€\fIca1\fRã€\fIca2\fRãŠã‚ˆã³\fIe1\fRã®4ã¤ã®éµãƒšã‚¢ã‚’作æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -687,7 +687,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î2¤Ä¤Î¥³¥Þ¥ó¥É¤Ï¡¢½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òºîÀ®¤·¤Þ¤¹¡£\fIca\fR¤Ï\fIca1\fR¤Ë½ð̾¤·¡¢\fIca1\fR¤Ï\fIca2\fR¤Ë½ð̾¤·¤Þ¤¹¡£¤¹¤Ù¤Æ¼«¸Êȯ¹Ô¤Ç¤¹¡£
+次ã®2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ç½²å付ã証明書ã®ãƒã‚§ãƒ¼ãƒ³ã‚’作æˆã—ã¾ã™ã€‚\fIca\fRã¯\fIca1\fRã«ç½²åã—ã€\fIca1\fRã¯\fIca2\fRã«ç½²åã—ã¾ã™ã€‚ã™ã¹ã¦è‡ªå·±ç™ºè¡Œã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -704,7 +704,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¾ÚÌÀ½ñ\fIe1\fR¤òºîÀ®¤·¤Æ¥Õ¥¡¥¤¥ë\fIe1\&.cert\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Ï\fIca2\fR¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤Þ¤¹¡£¤½¤Î·ë²Ì¡¢\fIe1\fR¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤Ï\fIca\fR¡¢\fIca1\fR¤ª¤è¤Ó\fIca2\fR¤¬´Þ¤Þ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€è¨¼æ˜Žæ›¸\fIe1\fRを作æˆã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«\fIe1\&.cert\fRã«æ ¼ç´ã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¯\fIca2\fRã«ã‚ˆã£ã¦ç½²åã•ã‚Œã¾ã™ã€‚ãã®çµæžœã€\fIe1\fRã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã¯\fIca\fRã€\fIca1\fRãŠã‚ˆã³\fIca2\fRãŒå«ã¾ã‚Œã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -721,23 +721,23 @@
 .RS 4
 \fI{\-alias alias} {\-keyalg keyalg} {\-keysize keysize} {\-sigalg sigalg} [\-dname dname] [\-keypass keypass] {\-startdate value} {\-ext ext}* {\-validity valDays} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¸°¤Î¥Ú¥¢(¸ø³«¸°¤ª¤è¤Ó´ØÏ¢¤¹¤ëÈëÌ©¸°)¤òÀ¸À®¤·¤Þ¤¹¡£¸ø³«¸°¤ÏX\&.509 v3¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤µ¤ì¤Þ¤¹¡£¾ÚÌÀ½ñ¤Ï¡¢Ã±°ì¤ÎÍ×ÁǤò»ý¤Ä¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤È¤·¤Æ³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÈÈëÌ©¸°¤Ï¡¢alias¤ÇÆÃÄꤵ¤ì¤ë¿·¤·¤¤¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+éµã®ãƒšã‚¢(公開éµãŠã‚ˆã³é–¢é€£ã™ã‚‹ç§˜å¯†éµ)を生æˆã—ã¾ã™ã€‚公開éµã¯X\&.509 v3自己署å証明書ã§ãƒ©ãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚証明書ã¯ã€å˜ä¸€ã®è¦ç´ ã‚’æŒã¤è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¨ã—ã¦æ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¨ç§˜å¯†éµã¯ã€aliasã§ç‰¹å®šã•ã‚Œã‚‹æ–°ã—ã„キーストア・エントリã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIkeyalg\fRÃͤϸ°¥Ú¥¢¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò¡¢\fIkeysize\fRÃͤÏÀ¸À®¤¹¤ë³Æ¸°¤Î¥µ¥¤¥º¤ò¡¢¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£\fIsigalg\fRÃͤϡ¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ï\fIkeyalg\fRÃͤȸߴ¹À­¤¬¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeyalg\fR値ã¯éµãƒšã‚¢ã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’ã€\fIkeysize\fR値ã¯ç”Ÿæˆã™ã‚‹å„éµã®ã‚µã‚¤ã‚ºã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚\fIsigalg\fR値ã¯ã€è‡ªå·±ç½²å証明書ã«ç½²åを付ã‘ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã¯\fIkeyalg\fR値ã¨äº’æ›æ€§ãŒã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIdname\fRÃͤˤϡ¢\fIalias\fRÃͤ˴ØÏ¢ÉÕ¤±¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Îissuer¥Õ¥£¡¼¥ë¥É¤Èsubject¥Õ¥£¡¼¥ë¥É¤È¤·¤Æ»ÈÍѤ¹¤ëX\&.500¼±ÊÌ̾¤ò»ØÄꤷ¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¼±ÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¼±ÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+\fIdname\fR値ã«ã¯ã€\fIalias\fR値ã«é–¢é€£ä»˜ã‘ã€è‡ªå·±ç½²å証明書ã®issuerフィールドã¨subjectフィールドã¨ã—ã¦ä½¿ç”¨ã™ã‚‹X\&.500識別åを指定ã—ã¾ã™ã€‚コマンドラインã§è­˜åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€è­˜åˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-\fIkeypass\fRÃͤˤϡ¢À¸À®¤µ¤ì¤ë¸°¤Î¥Ú¥¢¤Î¤¦¤Á¡¢ÈëÌ©¸°¤òÊݸ¤ë¤Î¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢\fI[Return]¥­¡¼\fR¤ò²¡¤¹¤È¡¢¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeypass\fR値ã«ã¯ã€ç”Ÿæˆã•ã‚Œã‚‹éµã®ãƒšã‚¢ã®ã†ã¡ã€ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを指定ã—ã¾ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€\fI[Return]キー\fRを押ã™ã¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fR値ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fIstartdate\fRÃͤˤϡ¢¾ÚÌÀ½ñ¤Îȯ¹Ô»þ¹ï¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢X\&.509¾ÚÌÀ½ñ¤Î¡ÖValidity¡×¥Õ¥£¡¼¥ë¥É¤Î¡ÖNot Before¡×ÃͤȤâ¸Æ¤Ð¤ì¤Þ¤¹¡£
+\fIstartdate\fR値ã«ã¯ã€è¨¼æ˜Žæ›¸ã®ç™ºè¡Œæ™‚刻を指定ã—ã¾ã™ã€‚ã“ã‚Œã¯ã€X\&.509証明書ã®ã€ŒValidityã€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®ã€ŒNot Beforeã€å€¤ã¨ã‚‚呼ã°ã‚Œã¾ã™ã€‚
 .sp
-¥ª¥×¥·¥ç¥ó¤ÎÃͤϡ¢¼¡¤Î2¤Ä¤Î·Á¼°¤Î¤¤¤º¤ì¤«¤ÇÀßÄê¤Ç¤­¤Þ¤¹¡£
+オプションã®å€¤ã¯ã€æ¬¡ã®2ã¤ã®å½¢å¼ã®ã„ãšã‚Œã‹ã§è¨­å®šã§ãã¾ã™ã€‚
 .sp
 \fI([+\-]nnn[ymdHMS])+\fR
 .sp
 \fI[yyyy/mm/dd] [HH:MM:SS]\fR
 .sp
-ºÇ½é¤Î·Á¼°¤Ç¤Ï¡¢È¯¹Ô»þ¹ï¤Ï¡¢»ØÄꤵ¤ì¤ëÃͤÎʬ¡¢¸½ºß¤Î»þ¹ï¤«¤é°Ü¤ê¤Þ¤¹¡£»ØÄꤵ¤ì¤ëÃͤϡ¢°ìÏ¢¤Î²¼°Ì¤ÎÃͤòÏ¢·ë¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£²¼°Ì¤Î³ÆÃͤǡ¢¥×¥é¥¹µ­¹æ(¡Ö+¡×)¤Ï»þ´Ö¤¬¿Ê¤à¤³¤È¤ò¡¢¥Þ¥¤¥Ê¥¹µ­¹æ(¡Ö\-¡×)¤Ï»þ´Ö¤¬Ìá¤ë¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£°Ü¤ë»þ´Ö¤Ï\fInnn\fR¤Ç¡¢Ã±°Ì¤Ïǯ¡¢·î¡¢Æü¡¢»þ´Ö¡¢Ê¬¤Þ¤¿¤ÏÉäǤ¹(¤½¤ì¤¾¤ì¡¢1ʸ»ú¤Î\fIy\fR¡¢\fIm\fR¡¢\fId\fR¡¢\fIH\fR¡¢\fIM\fR¤Þ¤¿¤Ï\fIS\fR¡×¤Ç¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹)¡£²¼°Ì¤Î³ÆÃͤÇ\fIjava\&.util\&.GregorianCalendar\&.add(int field, int amount)\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¡¢È¯¹Ô»þ¹ï¤ÎÄɲäÎÃͤ¬º¸¤«¤é±¦¤Ø·×»»¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢»ØÄꤹ¤ë¤È¡¢È¯¹Ô»þ¹ï¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+最åˆã®å½¢å¼ã§ã¯ã€ç™ºè¡Œæ™‚刻ã¯ã€æŒ‡å®šã•ã‚Œã‚‹å€¤ã®åˆ†ã€ç¾åœ¨ã®æ™‚刻ã‹ã‚‰ç§»ã‚Šã¾ã™ã€‚指定ã•ã‚Œã‚‹å€¤ã¯ã€ä¸€é€£ã®ä¸‹ä½ã®å€¤ã‚’連çµã—ãŸã‚‚ã®ã«ãªã‚Šã¾ã™ã€‚下ä½ã®å„値ã§ã€ãƒ—ラス記å·(「+ã€)ã¯æ™‚é–“ãŒé€²ã‚€ã“ã¨ã‚’ã€ãƒžã‚¤ãƒŠã‚¹è¨˜å·(「\-ã€)ã¯æ™‚é–“ãŒæˆ»ã‚‹ã“ã¨ã‚’æ„味ã—ã¦ã„ã¾ã™ã€‚移る時間ã¯\fInnn\fRã§ã€å˜ä½ã¯å¹´ã€æœˆã€æ—¥ã€æ™‚é–“ã€åˆ†ã¾ãŸã¯ç§’ã§ã™(ãã‚Œãžã‚Œã€1文字ã®\fIy\fRã€\fIm\fRã€\fId\fRã€\fIH\fRã€\fIM\fRã¾ãŸã¯\fIS\fRã€ã§ç¤ºã•ã‚Œã¦ã„ã¾ã™)。下ä½ã®å„値ã§\fIjava\&.util\&.GregorianCalendar\&.add(int field, int amount)\fRメソッドを使用ã™ã‚‹ã“ã¨ã§ã€ç™ºè¡Œæ™‚刻ã®è¿½åŠ ã®å€¤ãŒå·¦ã‹ã‚‰å³ã¸è¨ˆç®—ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€æŒ‡å®šã™ã‚‹ã¨ã€ç™ºè¡Œæ™‚刻ã¯æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -752,182 +752,182 @@
 .if n \{\
 .RE
 .\}
-2ÈÖÌܤηÁ¼°¤Ç¤Ï¡¢¥æ¡¼¥¶¡¼¤Ï¡¢Ç¯/·î/Æü¤È»þ´Ö:ʬ:ÉäÎ2¤Ä¤ÎÉôʬ¤Ç¸·Ì©¤Ê³«»Ï»þ¹ï¤òÀßÄꤷ¤Þ¤¹(Ãϸµ¤Î»þ´ÖÂÓ¤ò»ÈÍÑ)¡£¥æ¡¼¥¶¡¼¤Ï¡¢1¤Ä¤ÎÉôʬ¤Î¤ß¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤â¤¦1¤Ä¤ÎÉôʬ¤Ï¸½ºß¤ÎÆüÉÕ(¤Þ¤¿¤Ï»þ¹ï)¤ÈƱ¤¸¤Ë¤Ê¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢·Á¼°¤ÎÄêµÁ¤Ë¼¨¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢·å¿ô¤ò¸·Ì©¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(û¤¤¾ì¹ç¤Ï0¤ÇËä¤á¤Þ¤¹)¡£ÆüÉդȻþ¹ï¤ÎξÊý¤¬»ØÄꤵ¤ì¤¿¾õÂ֤ǡ¢2¤Ä¤ÎÉôʬ¤Î´Ö¤Ë¶õÇòʸ»ú¤¬1¤Ä(1¤Ä¤Î¤ß)¤¢¤ê¤Þ¤¹¡£»þ´Ö¤Ï¾ï¤Ë24»þ´Ö·Á¼°¤Ç»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
+2番目ã®å½¢å¼ã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã€å¹´/月/æ—¥ã¨æ™‚é–“:分:秒ã®2ã¤ã®éƒ¨åˆ†ã§åŽ³å¯†ãªé–‹å§‹æ™‚刻を設定ã—ã¾ã™(地元ã®æ™‚間帯を使用)。ユーザーã¯ã€1ã¤ã®éƒ¨åˆ†ã®ã¿ã‚’指定ã§ãã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚‚ã†1ã¤ã®éƒ¨åˆ†ã¯ç¾åœ¨ã®æ—¥ä»˜(ã¾ãŸã¯æ™‚刻)ã¨åŒã˜ã«ãªã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚ユーザーã¯ã€å½¢å¼ã®å®šç¾©ã«ç¤ºã•ã‚Œã¦ã„るよã†ã«ã€æ¡æ•°ã‚’厳密ã«æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(短ã„å ´åˆã¯0ã§åŸ‹ã‚ã¾ã™)。日付ã¨æ™‚刻ã®ä¸¡æ–¹ãŒæŒ‡å®šã•ã‚ŒãŸçŠ¶æ…‹ã§ã€2ã¤ã®éƒ¨åˆ†ã®é–“ã«ç©ºç™½æ–‡å­—ãŒ1ã¤(1ã¤ã®ã¿)ã‚ã‚Šã¾ã™ã€‚時間ã¯å¸¸ã«24時間形å¼ã§æŒ‡å®šã—ã¦ãã ã•ã„。
 .sp
-¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤È¡¢³«»ÏÆüÉդϸ½ºß¤Î»þ¹ï¤Ë¤Ê¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤Ï¡¢ºÇÂç¤Ç1²ó»ØÄê¤Ç¤­¤Þ¤¹¡£
+オプションを指定ã—ãªã„ã¨ã€é–‹å§‹æ—¥ä»˜ã¯ç¾åœ¨ã®æ™‚刻ã«ãªã‚Šã¾ã™ã€‚オプションã¯ã€æœ€å¤§ã§1回指定ã§ãã¾ã™ã€‚
 .sp
-\fIvalDays\fR¤ÎÃͤˤϡ¢¾ÚÌÀ½ñ¤ÎÍ­¸úÆü¿ô¤ò»ØÄꤷ¤Þ¤¹(\fI\-startdate\fR¤Ç»ØÄꤵ¤ì¤¿ÆüÉÕ¡¢¤Þ¤¿¤Ï\fI\-startdate\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¸½ºß¤ÎÆüÉÕ¤«¤é»Ï¤Þ¤ê¤Þ¤¹)¡£
+\fIvalDays\fRã®å€¤ã«ã¯ã€è¨¼æ˜Žæ›¸ã®æœ‰åŠ¹æ—¥æ•°ã‚’指定ã—ã¾ã™(\fI\-startdate\fRã§æŒ‡å®šã•ã‚ŒãŸæ—¥ä»˜ã€ã¾ãŸã¯\fI\-startdate\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ç¾åœ¨ã®æ—¥ä»˜ã‹ã‚‰å§‹ã¾ã‚Šã¾ã™)。
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-genkey\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-genkeypair\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-genkey\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-genkeypair\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-genseckey
 .RS 4
 \fI\-genseckey {\-alias alias} {\-keyalg keyalg} {\-keysize keysize} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-ÈëÌ©¸°¤òÀ¸À®¤·¡¢¤½¤ì¤ò¿·¤·¤¤\fIKeyStore\&.SecretKeyEntry\fR(\fIalias\fR¤ÇÆÃÄꤵ¤ì¤ë)Æâ¤Ë³ÊǼ¤·¤Þ¤¹¡£
+秘密éµã‚’生æˆã—ã€ãれを新ã—ã„\fIKeyStore\&.SecretKeyEntry\fR(\fIalias\fRã§ç‰¹å®šã•ã‚Œã‚‹)内ã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
-\fIkeyalg\fRÃͤϸ°¥Ú¥¢¤ÎÀ¸À®¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò¡¢\fIkeysize\fRÃͤÏÀ¸À®¤¹¤ë³Æ¸°¤Î¥µ¥¤¥º¤ò¡¢¤½¤ì¤¾¤ì»ØÄꤷ¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢ÈëÌ©¸°¤òÊݸ¤ë¥Ñ¥¹¥ï¡¼¥É¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢[Return]¥­¡¼¤ò²¡¤¹¤È¡¢\fIkeystore\fR¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fRÃͤϡ¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeyalg\fR値ã¯éµãƒšã‚¢ã®ç”Ÿæˆã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’ã€\fIkeysize\fR値ã¯ç”Ÿæˆã™ã‚‹å„éµã®ã‚µã‚¤ã‚ºã‚’ã€ãã‚Œãžã‚ŒæŒ‡å®šã—ã¾ã™ã€‚\fIkeypass\fR値ã¯ã€ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ãƒ‘スワードã§ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€[Return]キーを押ã™ã¨ã€\fIkeystore\fRã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fR値ã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-importcert
 .RS 4
 \fI\-importcert {\-alias alias} {\-file cert_file} [\-keypass keypass] {\-noprompt} {\-trustcacerts} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥Õ¥¡¥¤¥ë\fIcert_file\fR¤«¤é¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó(¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ï¡¢PKCS#7·Á¼°¤Î±þÅú¤Þ¤¿¤Ï°ìÏ¢¤ÎX\&.509¾ÚÌÀ½ñ¤ÇÄ󶡤µ¤ì¤ë¤â¤Î)¤òÆɤ߹þ¤ß¡¢\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë\fIkeystore\fR¥¨¥ó¥È¥ê¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÆɤ߹þ¤ß¤Þ¤¹¡£
+ファイル\fIcert_file\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³(証明書ãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã¯ã€PKCS#7å½¢å¼ã®å¿œç­”ã¾ãŸã¯ä¸€é€£ã®X\&.509証明書ã§æä¾›ã•ã‚Œã‚‹ã‚‚ã®)を読ã¿è¾¼ã¿ã€\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹\fIkeystore\fRエントリã«æ ¼ç´ã—ã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚
 .sp
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢X\&.509 v1¡¢v2¡¢v3¤Î¾ÚÌÀ½ñ¡¢¤ª¤è¤ÓPKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¤«¤é¹½À®¤µ¤ì¤Æ¤¤¤ëPKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È¤¹¤ë¥Ç¡¼¥¿¤Ï¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½Êý¼°¡¢¤Þ¤¿¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°(Base64Éä¹æ²½¤È¤â¸Æ¤Ð¤ì¤ë)¤Î¤É¤Á¤é¤«¤ÇÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ÎÉä¹æ²½Êý¼°¤Î¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï\fI\-\fR\fI\-\-\-\-BEGIN\fR¤Ç»Ï¤Þ¤ëʸ»úÎó¤Ç³«»Ï¤µ¤ì¡¢\fI\-\-\-\-\-END\fR¤Ç»Ï¤Þ¤ëʸ»úÎó¤Ç½ªÎ»¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIkeytool\fRコマンドã§ã¯ã€X\&.509 v1ã€v2ã€v3ã®è¨¼æ˜Žæ›¸ã€ãŠã‚ˆã³PKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ã‹ã‚‰æ§‹æˆã•ã‚Œã¦ã„ã‚‹PKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’インãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚インãƒãƒ¼ãƒˆã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã¯ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–æ–¹å¼ã€ã¾ãŸã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼(Base64符å·åŒ–ã¨ã‚‚呼ã°ã‚Œã‚‹)ã®ã©ã¡ã‚‰ã‹ã§æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚ã“ã®ç¬¦å·åŒ–æ–¹å¼ã®å ´åˆã€è¨¼æ˜Žæ›¸ã¯\fI\-\fR\fI\-\-\-\-BEGIN\fRã§å§‹ã¾ã‚‹æ–‡å­—列ã§é–‹å§‹ã•ã‚Œã€\fI\-\-\-\-\-END\fRã§å§‹ã¾ã‚‹æ–‡å­—列ã§çµ‚了ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¾ÚÌÀ½ñ¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤ËÄɲ乤뤿¤á¡¢¤ª¤è¤Óǧ¾Ú¶É(CA)¤Ë¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤¿·ë²Ì¤È¤·¤ÆCA¤«¤é¼õ¿®¤·¤¿¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤¿¤á(¥³¥Þ¥ó¥É¤Î\fI\-certreq\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È)¤È¤¤¤¦2¤Ä¤ÎÍýͳ¤Ç¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+証明書ã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã™ã‚‹ãŸã‚ã€ãŠã‚ˆã³èªè¨¼å±€(CA)ã«è¨¼æ˜Žæ›¸ç½²åリクエストをé€ä¿¡ã—ãŸçµæžœã¨ã—ã¦CAã‹ã‚‰å—ä¿¡ã—ãŸè¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã™ã‚‹ãŸã‚(コマンドã®\fI\-certreq\fRオプションをå‚ç…§)ã¨ã„ã†2ã¤ã®ç†ç”±ã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
-¤É¤Á¤é¤Î¥¿¥¤¥×¤Î¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¦¤«¤Ï¡¢\fI\-alias\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤˤè¤Ã¤Æ»ØÄꤷ¤Þ¤¹¡£ÊÌ̾¤¬¥­¡¼¡¦¥¨¥ó¥È¥ê¤ò¥Ý¥¤¥ó¥È¤·¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤¬¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¥¨¥ó¥È¥ê¤òÄɲ䷤褦¤È¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢ÊÌ̾¤¬¥­¡¼¥¹¥È¥¢Æâ¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤¬É¬ÍפǤ¹¡£ÊÌ̾¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ÎÊÌ̾¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤¬¤¹¤Ç¤Ë¸ºß¤¹¤ë¤³¤È¤Ë¤Ê¤ë¤Î¤Ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥¨¥é¡¼¤ò½ÐÎϤ·¡¢¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È¤ò¹Ô¤¤¤Þ¤»¤ó¡£ÊÌ̾¤¬¥­¡¼¡¦¥¨¥ó¥È¥ê¤ò¥Ý¥¤¥ó¥È¤¹¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤¬¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤·¤Þ¤¹¡£
+ã©ã¡ã‚‰ã®ã‚¿ã‚¤ãƒ—ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’è¡Œã†ã‹ã¯ã€\fI\-alias\fRオプションã®å€¤ã«ã‚ˆã£ã¦æŒ‡å®šã—ã¾ã™ã€‚別åãŒã‚­ãƒ¼ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’ãƒã‚¤ãƒ³ãƒˆã—ãªã„å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒä¿¡é ¼ã§ãる証明書エントリを追加ã—よã†ã¨ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã¿ãªã—ã¾ã™ã€‚ã“ã®å ´åˆã€åˆ¥åãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å­˜åœ¨ã—ã¦ã„ãªã„ã“ã¨ãŒå¿…è¦ã§ã™ã€‚別åãŒã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã€ãã®åˆ¥åã®ä¿¡é ¼ã§ãる証明書ãŒã™ã§ã«å­˜åœ¨ã™ã‚‹ã“ã¨ã«ãªã‚‹ã®ã§ã€\fIkeytool\fRコマンドã¯ã‚¨ãƒ©ãƒ¼ã‚’出力ã—ã€è¨¼æ˜Žæ›¸ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã‚’è¡Œã„ã¾ã›ã‚“。別åãŒã‚­ãƒ¼ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’ãƒã‚¤ãƒ³ãƒˆã™ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã—よã†ã¨ã—ã¦ã„ã‚‹ã‚‚ã®ã¨ã¿ãªã—ã¾ã™ã€‚
 .RE
 .PP
 \-importpassword
 .RS 4
 \fI{\-alias alias} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥Ñ¥¹¥Õ¥ì¡¼¥º¤ò¥¤¥ó¥Ý¡¼¥È¤·¡¢\fIalias\fR¤Ç¼±Ê̤µ¤ì¤ë¿·µ¬\fIKeyStore\&.SecretKeyEntry\fR¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Ñ¥¹¥Õ¥ì¡¼¥º¤Ï¡¢É¸½àÆþÎÏ¥¹¥È¥ê¡¼¥à¤ò²ð¤·¤ÆÄ󶡤Ǥ­¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥æ¡¼¥¶¡¼¤Ë¤½¤Î¥×¥í¥ó¥×¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fIkeypass\fR¤Ï¡¢¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¥Ñ¥¹¥Õ¥ì¡¼¥º¤ÎÊݸî¤Ë»ÈÍѤµ¤ì¤ë¥Ñ¥¹¥ï¡¼¥É¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¤È¤­¡¢[Return]¥­¡¼¤ò²¡¤¹¤È¡¢\fIkeystore\fR¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈƱ¤¸¥Ñ¥¹¥ï¡¼¥É¤¬¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIkeypass\fR¤Ï¡¢6ʸ»ú°Ê¾å¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+パスフレーズをインãƒãƒ¼ãƒˆã—ã€\fIalias\fRã§è­˜åˆ¥ã•ã‚Œã‚‹æ–°è¦\fIKeyStore\&.SecretKeyEntry\fRã«æ ¼ç´ã—ã¾ã™ã€‚パスフレーズã¯ã€æ¨™æº–入力ストリームを介ã—ã¦æä¾›ã§ãã¾ã™ã€‚ã¾ãŸã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãã®ãƒ—ロンプトãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fIkeypass\fRã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ãƒ‘スフレーズã®ä¿è­·ã«ä½¿ç”¨ã•ã‚Œã‚‹ãƒ‘スワードã§ã™ã€‚パスワードを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®ã¨ãã€[Return]キーを押ã™ã¨ã€\fIkeystore\fRã®ãƒ‘スワードã¨åŒã˜ãƒ‘スワードãŒéµã®ãƒ‘スワードã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIkeypass\fRã¯ã€6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-importkeystore
 .RS 4
 \fI{\-srcstoretype srcstoretype} {\-deststoretype deststoretype} [\-srcstorepass srcstorepass] [\-deststorepass deststorepass] {\-srcprotected} {\-destprotected} {\-srcalias srcalias {\-destalias destalias} [\-srckeypass srckeypass] } [\-destkeypass destkeypass] {\-noprompt} {\-srcProviderName src_provider_name} {\-destProviderName dest_provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢¤«¤é¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ø¡¢Ã±°ì¤Î¥¨¥ó¥È¥ê¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£
+ソース・キーストアã‹ã‚‰ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¸ã€å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã¾ãŸã¯ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã‚’インãƒãƒ¼ãƒˆã—ã¾ã™ã€‚
 .sp
-\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¤½¤ÎÊÌ̾¤ÇÆÃÄꤵ¤ì¤ëñ°ì¤Î¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤Þ¤¹¡£\fIdestalias\fR·Ðͳ¤Ç¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIsrcalias\fR¤¬¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤È¤·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¥½¡¼¥¹¤Î¥¨¥ó¥È¥ê¤¬¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fIsrckeypass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤¬²óÉü¤µ¤ì¤Þ¤¹¡£\fIsrckeypass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï\fIsrcstorepass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤ò²óÉü¤·¤è¤¦¤È¤·¤Þ¤¹¡£\fIsrcstorepass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¤«Àµ¤·¤¯¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥È¤Î¥¨¥ó¥È¥ê¤Ï\fIdestkeypass\fR¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£\fIdestkeypass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤Ï¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤Î¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤Û¤È¤ó¤É¤Î¥µ¡¼¥É¡¦¥Ñ¡¼¥Æ¥£¡¦¥Ä¡¼¥ë¤Ç¤Ï¡¢PKCS #12¥­¡¼¥¹¥È¥¢¤Ç\fIstorepass\fR¤È\fIkeypass\fR¤¬Æ±¤¸¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥Ä¡¼¥ë¤ÎPKCS #12¥­¡¼¥¹¥È¥¢¤òºîÀ®¤¹¤ë¾ì¹ç¤Ï¡¢¾ï¤Ë\fI\-destkeypass\fR¤È\fI\-deststorepass\fR¤¬Æ±¤¸¤Ë¤Ê¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+\fI\-srcalias\fRオプションãŒæŒ‡å®šã•ã‚ŒãŸå ´åˆã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãã®åˆ¥åã§ç‰¹å®šã•ã‚Œã‚‹å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã‚’ターゲット・キーストアã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚\fIdestalias\fR経由ã§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIsrcalias\fRãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ソースã®ã‚¨ãƒ³ãƒˆãƒªãŒãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fIsrckeypass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªãŒå›žå¾©ã•ã‚Œã¾ã™ã€‚\fIsrckeypass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIkeytool\fRコマンドã¯\fIsrcstorepass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’回復ã—よã†ã¨ã—ã¾ã™ã€‚\fIsrcstorepass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸã‹æ­£ã—ããªã‹ã£ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ターゲットã®ã‚¨ãƒ³ãƒˆãƒªã¯\fIdestkeypass\fRã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚\fIdestkeypass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚¨ãƒ³ãƒˆãƒªã¯ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ‰ãƒ»ãƒ‘ーティ・ツールã§ã¯ã€PKCS #12キーストアã§\fIstorepass\fRã¨\fIkeypass\fRãŒåŒã˜ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れらã®ãƒ„ールã®PKCS #12キーストアを作æˆã™ã‚‹å ´åˆã¯ã€å¸¸ã«\fI\-destkeypass\fRã¨\fI\-deststorepass\fRãŒåŒã˜ã«ãªã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .sp
-\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£³Æ¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤ÏÂбþ¤¹¤ë¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤ÎÊÌ̾¤Î²¼¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥½¡¼¥¹¤Î¥¨¥ó¥È¥ê¤¬¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fIsrcstorepass\fR¤ò»ÈÍѤ·¤Æ¤½¤Î¥¨¥ó¥È¥ê¤¬²óÉü¤µ¤ì¤Þ¤¹¡£\fIsrcstorepass\fR¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¤«Àµ¤·¤¯¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¤¢¤ë¥¨¥ó¥È¥ê¡¦¥¿¥¤¥×¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤ä¡¢¤¢¤ë¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤¹¤ëºÝ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¤½¤Î¥¨¥ó¥È¥ê¤ò¥¹¥­¥Ã¥×¤·¤Æ½èÍý¤ò³¹Ô¤¹¤ë¤«¡¢¤¢¤ë¤¤¤Ï½èÍý¤òÃæÃǤ¹¤ë¤«¤ÎÁªÂò¤òµá¤á¤é¤ì¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥È¡¦¥¨¥ó¥È¥ê¤Ï¥½¡¼¥¹¡¦¥¨¥ó¥È¥ê¤Î¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+\fI\-srcalias\fRオプションãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚å„ターゲット・エントリã¯å¯¾å¿œã™ã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®åˆ¥åã®ä¸‹ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ソースã®ã‚¨ãƒ³ãƒˆãƒªãŒãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fIsrcstorepass\fRを使用ã—ã¦ãã®ã‚¨ãƒ³ãƒˆãƒªãŒå›žå¾©ã•ã‚Œã¾ã™ã€‚\fIsrcstorepass\fRãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸã‹æ­£ã—ããªã‹ã£ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ソース・キーストア内ã®ã‚るエントリ・タイプãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„å ´åˆã‚„ã€ã‚るエントリをターゲット・キーストアã«æ ¼ç´ã™ã‚‹éš›ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’スキップã—ã¦å‡¦ç†ã‚’続行ã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯å‡¦ç†ã‚’中断ã™ã‚‹ã‹ã®é¸æŠžã‚’求ã‚られã¾ã™ã€‚ターゲット・エントリã¯ã‚½ãƒ¼ã‚¹ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .sp
-¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤¬¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Ë¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¡¢¤½¤Î¥¨¥ó¥È¥ê¤ò¾å½ñ¤­¤¹¤ë¤«¡¢¤¢¤ë¤¤¤Ï°Û¤Ê¤ëÊÌ̾¤Î²¼¤Ç¿·¤·¤¤¥¨¥ó¥È¥ê¤òºîÀ®¤¹¤ë¤«¤ÎÁªÂò¤òµá¤á¤é¤ì¤Þ¤¹¡£
+ターゲット別åãŒã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã™ã§ã«å­˜åœ¨ã—ã¦ã„ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã€ãã®ã‚¨ãƒ³ãƒˆãƒªã‚’上書ãã™ã‚‹ã‹ã€ã‚ã‚‹ã„ã¯ç•°ãªã‚‹åˆ¥åã®ä¸‹ã§æ–°ã—ã„エントリを作æˆã™ã‚‹ã‹ã®é¸æŠžã‚’求ã‚られã¾ã™ã€‚
 .sp
 
-\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤Ï¿·¤·¤¤¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤»¤ó¡£´û¸¤Î¥¨¥ó¥È¥ê¤¬¤½¤Î¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤Ç¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Ê¤¤¥¨¥ó¥È¥ê¤Ï¥¹¥­¥Ã¥×¤µ¤ì¡¢·Ù¹ð¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-noprompt\fRオプションを指定ã—ãŸå ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯æ–°ã—ã„ターゲット別åã®å…¥åŠ›ã‚’求ã‚られã¾ã›ã‚“。既存ã®ã‚¨ãƒ³ãƒˆãƒªãŒãã®ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã§ä¸Šæ›¸ãã•ã‚Œã¾ã™ã€‚インãƒãƒ¼ãƒˆã§ããªã„エントリã¯ã‚¹ã‚­ãƒƒãƒ—ã•ã‚Œã€è­¦å‘ŠãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-printcertreq
 .RS 4
 \fI{\-file file}\fR
 .sp
-PKCS#10·Á¼°¤Î¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤ÎÆâÍƤò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥ê¥¯¥¨¥¹¥È¤Ï¡¢\fIkeytool\fR
-\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤Ç¤­¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Õ¥¡¥¤¥ë¤«¤é¥ê¥¯¥¨¥¹¥È¤òÆɤ߼è¤ê¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢¥ê¥¯¥¨¥¹¥È¤Ïɸ½àÆþÎϤ«¤éÆɤ߼è¤é¤ì¤Þ¤¹¡£
+PKCS#10å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®å†…容を出力ã—ã¾ã™ã€‚ã“ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã€\fIkeytool\fR
+\fI\-certreq\fRコマンドã§ç”Ÿæˆã§ãã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã‹ã‚‰ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’読ã¿å–ã‚Šã¾ã™ã€‚ファイルãŒå­˜åœ¨ã—ãªã„å ´åˆã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯æ¨™æº–入力ã‹ã‚‰èª­ã¿å–られã¾ã™ã€‚
 .RE
 .PP
 \-certreq
 .RS 4
 \fI{\-alias alias} {\-dname dname} {\-sigalg sigalg} {\-file certreq_file} [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-PKCS#10·Á¼°¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤òÀ¸À®¤·¤Þ¤¹¡£
+PKCS#10å½¢å¼ã‚’使用ã—ã¦è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)を生æˆã—ã¾ã™ã€‚
 .sp
-CSR¤Ï¡¢¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤ËÁ÷¿®¤¹¤ë¤³¤È¤òÌÜŪ¤È¤·¤¿¤â¤Î¤Ç¤¹¡£CA¤Ï¡¢¾ÚÌÀ½ñÍ×µá¼Ô¤ò(Ä̾ï¤Ï¥ª¥Õ¥é¥¤¥ó¤Ç)ǧ¾Ú¤·¡¢¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÁ÷¤êÊÖ¤·¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î´û¸¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó(ºÇ½é¤Ï1¤Ä¤Î¼«¸Ê½ð̾¾ÚÌÀ½ñ¤«¤é¹½À®¤µ¤ì¤ë)¤ËÃÖ¤­´¹¤¨¤Æ»ÈÍѤ·¤Þ¤¹¡£
+CSRã¯ã€è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã«é€ä¿¡ã™ã‚‹ã“ã¨ã‚’目的ã¨ã—ãŸã‚‚ã®ã§ã™ã€‚CAã¯ã€è¨¼æ˜Žæ›¸è¦æ±‚者を(通常ã¯ã‚ªãƒ•ãƒ©ã‚¤ãƒ³ã§)èªè¨¼ã—ã€è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’é€ã‚Šè¿”ã—ã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æ—¢å­˜ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³(最åˆã¯1ã¤ã®è‡ªå·±ç½²å証明書ã‹ã‚‰æ§‹æˆã•ã‚Œã‚‹)ã«ç½®ãæ›ãˆã¦ä½¿ç”¨ã—ã¾ã™ã€‚
 .sp
-alias¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤Ï¡¢PKCS#10¾ÚÌÀ½ñ¥ê¥¯¥¨¥¹¥È¤òºîÀ®¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£ÈëÌ©¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢Àµ¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIkeypass\fR¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£\fIdname\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤ì¤¬CSR¤Ç¼çÂΤȤ·¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿X\&.500¼±ÊÌ̾¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£
+aliasã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã¯ã€PKCS#10証明書リクエストを作æˆã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚秘密éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€æ­£ã—ã„パスワードを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚コマンドラインã§\fIkeypass\fRを指定ã—ã¦ãŠã‚‰ãšã€ç§˜å¯†éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚\fIdname\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ãã‚ŒãŒCSRã§ä¸»ä½“ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã¯ã€åˆ¥åã«é–¢é€£ä»˜ã‘られãŸX\&.500識別åãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIsigalg\fRÃͤˤϡ¢CSR¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIsigalg\fR値ã«ã¯ã€CSRã«ç½²åを付ã‘ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’指定ã—ã¾ã™ã€‚
 .sp
-CSR¤Ï¡¢¥Õ¥¡¥¤¥ëcertreq_file¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdout\fR¤ËCSR¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+CSRã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«certreq_fileã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdout\fRã«CSRãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-CA¤«¤é¤Î¥ì¥¹¥Ý¥ó¥¹¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢\fIimportcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+CAã‹ã‚‰ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€\fIimportcert\fRコマンドを使用ã—ã¾ã™ã€‚
 .RE
 .PP
 \-exportcert
 .RS 4
 \fI{\-alias alias} {\-file cert_file} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-rfc} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤«¤éÆɤ߹þ¤ß¡¢¥Õ¥¡¥¤¥ëcert_file¤Ë³ÊǼ¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdout\fR¤Ë¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fIalias\fRã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ã‚’キーストアã‹ã‚‰èª­ã¿è¾¼ã¿ã€ãƒ•ã‚¡ã‚¤ãƒ«cert_fileã«æ ¼ç´ã—ã¾ã™ã€‚ファイルãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdout\fRã«è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¾ÚÌÀ½ñ¤Ï¥Ð¥¤¥Ê¥êÉä¹æ²½¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Î½ÐÎϤϥ¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Þ¤¹¡£
+デフォルトã§ã¯ã€è¨¼æ˜Žæ›¸ã¯ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã®å‡ºåŠ›ã¯ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¾ã™ã€‚
 .sp
-\fIalias\fR¤¬¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ë¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢\fIalias\fR¤Ï¡¢´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»ý¤Ä¸°¥¨¥ó¥È¥ê¤ò»²¾È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤Ï¡¢\fIalias\fR¤Ë¤è¤Ã¤Æɽ¤µ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ç¤¹¡£
+\fIalias\fRãŒã€ä¿¡é ¼ã§ãる証明書をå‚ç…§ã—ã¦ã„ã‚‹å ´åˆã¯ã€è©²å½“ã™ã‚‹è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãれ以外ã®å ´åˆã€\fIalias\fRã¯ã€é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’æŒã¤éµã‚¨ãƒ³ãƒˆãƒªã‚’å‚ç…§ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€åˆã®è¨¼æ˜Žæ›¸ãŒè¿”ã•ã‚Œã¾ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã¯ã€\fIalias\fRã«ã‚ˆã£ã¦è¡¨ã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã§ã™ã€‚
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-export\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-exportcert\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-export\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-exportcert\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-list
 .RS 4
 \fI{\-alias alias} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v | \-rfc} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤ÇÆÃÄꤵ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ÎÆâÍƤò\fIstdout\fR¤Ë½ÐÎϤ·¤Þ¤¹¡£\fIalias\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÆâÍƤ¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+\fIalias\fRã§ç‰¹å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã®å†…容を\fIstdout\fRã«å‡ºåŠ›ã—ã¾ã™ã€‚\fIalias\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®å†…容ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¾ÚÌÀ½ñ¤ÎSHA1¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤·¤Þ¤¹¡£
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢½êÍ­¼Ô¡¢È¯¹Ô¼Ô¡¢¥·¥ê¥¢¥ëÈֹ桢³ÈÄ¥µ¡Ç½¤Ê¤É¤ÎÉÕ²ÃŪ¤Ê¾ðÊó¤È¤È¤â¤Ë¡¢¿Í´Ö¤¬Æɤळ¤È¤Î¤Ç¤­¤ë·Á¼°¤Ç¾ÚÌÀ½ñ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ç¾ÚÌÀ½ñ¤ÎÆâÍƤ¬½ÐÎϤµ¤ì¤Þ¤¹¡£½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯è¨¼æ˜Žæ›¸ã®SHA1フィンガープリントを表示ã—ã¾ã™ã€‚
+\fI\-v\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€æ‰€æœ‰è€…ã€ç™ºè¡Œè€…ã€ã‚·ãƒªã‚¢ãƒ«ç•ªå·ã€æ‹¡å¼µæ©Ÿèƒ½ãªã©ã®ä»˜åŠ çš„ãªæƒ…å ±ã¨ã¨ã‚‚ã«ã€äººé–“ãŒèª­ã‚€ã“ã¨ã®ã§ãã‚‹å½¢å¼ã§è¨¼æ˜Žæ›¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§è¨¼æ˜Žæ›¸ã®å†…容ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-\fI\-v\fR¥ª¥×¥·¥ç¥ó¤È\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+\fI\-v\fRオプションã¨\fI\-rfc\fRオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-printcert
 .RS 4
 \fI{\-file cert_file | \-sslserver host[:port]} {\-jarfile JAR_file {\-rfc} {\-v} {\-Jjavaoption}\fR
 .sp
-¥Õ¥¡¥¤¥ëcert_file¡¢host:port¤Ë¤¢¤ëSSL¥µ¡¼¥Ð¡¼¡¢¤Þ¤¿¤Ï½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë\fIJAR_file\fR(\fI\-jarfile\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄê)¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤ß¡¢¿Í´Ö¤¬Æɤळ¤È¤Î¤Ç¤­¤ë·Á¼°¤Ç¾ÚÌÀ½ñ¤ÎÆâÍƤòɽ¼¨¤·¤Þ¤¹¡£¥Ý¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢É¸½à¤ÎHTTPS¥Ý¡¼¥È443¤¬ÁÛÄꤵ¤ì¤Þ¤¹¡£\fI\-sslserver\fR¤ª¤è¤Ó\-file¥ª¥×¥·¥ç¥ó¤òƱ»þ¤Ë»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤ËÈ¿¤¹¤ë¾ì¹ç¡¢¥¨¥é¡¼¤¬Êó¹ð¤µ¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤ß¤Þ¤¹¡£
+ファイルcert_fileã€host:portã«ã‚ã‚‹SSLサーãƒãƒ¼ã€ã¾ãŸã¯ç½²å付ãJARファイル\fIJAR_file\fR(\fI\-jarfile\fRオプションを指定)ã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã¿ã€äººé–“ãŒèª­ã‚€ã“ã¨ã®ã§ãã‚‹å½¢å¼ã§è¨¼æ˜Žæ›¸ã®å†…容を表示ã—ã¾ã™ã€‚ãƒãƒ¼ãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€æ¨™æº–ã®HTTPSãƒãƒ¼ãƒˆ443ãŒæƒ³å®šã•ã‚Œã¾ã™ã€‚\fI\-sslserver\fRãŠã‚ˆã³\-fileオプションをåŒæ™‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。ã“ã‚Œã«åã™ã‚‹å ´åˆã€ã‚¨ãƒ©ãƒ¼ãŒå ±å‘Šã•ã‚Œã¾ã™ã€‚オプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã¿ã¾ã™ã€‚
 .sp
-\fI\-rfc\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½É¸½à¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢PEM¥â¡¼¥É¤Ç¾ÚÌÀ½ñ¤ò½ÐÎϤ·¤Þ¤¹¡£¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-rfc\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–標準ã§å®šç¾©ã•ã‚Œã¦ã„るよã†ã«ã€PEMモードã§è¨¼æ˜Žæ›¸ã‚’出力ã—ã¾ã™ã€‚インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
-¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï\fIstdin\fR¤«¤é¾ÚÌÀ½ñ¤òÆɤ߹þ¤à¾ì¹ç¡¢¤½¤Î¾ÚÌÀ½ñ¤Ï¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½É¸½à¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½Êý¼°¤Þ¤¿¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Çɽ¼¨¤Ç¤­¤Þ¤¹¡£
+ファイルã¾ãŸã¯\fIstdin\fRã‹ã‚‰è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã‚€å ´åˆã€ãã®è¨¼æ˜Žæ›¸ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–標準ã§å®šç¾©ã•ã‚Œã¦ã„るよã†ã«ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–æ–¹å¼ã¾ãŸã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§è¡¨ç¤ºã§ãã¾ã™ã€‚
 .sp
-SSL¥µ¡¼¥Ð¡¼¤¬¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ë¤ÎÇظå¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢\fI\-J\-Dhttps\&.proxyHost=proxyhost\fR¤ª¤è¤Ó\fI\-J\-Dhttps\&.proxyPort=proxyport\fR¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Æ¡¢¥×¥í¥­¥·¡¦¥È¥ó¥Í¥ê¥ó¥°¤ò»ÈÍѤǤ­¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide\&.html¤Î
-¡ÖJava Secure Socket Extension (JSSE) Reference Guide¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+SSLサーãƒãƒ¼ãŒãƒ•ã‚¡ã‚¤ã‚¢ã‚¦ã‚©ãƒ¼ãƒ«ã®èƒŒå¾Œã«ã‚ã‚‹å ´åˆã¯ã€\fI\-J\-Dhttps\&.proxyHost=proxyhost\fRãŠã‚ˆã³\fI\-J\-Dhttps\&.proxyPort=proxyport\fRオプションをコマンドラインã§æŒ‡å®šã—ã¦ã€ãƒ—ロキシ・トンãƒãƒªãƒ³ã‚°ã‚’使用ã§ãã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/jsse/JSSERefGuide\&.htmlã®
+「Java Secure Socket Extension (JSSE) Reference Guideã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fBÃí°Õ:\fR
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥­¡¼¥¹¥È¥¢¤È¤Ï´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®ã‚ªãƒ—ションã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨ã¯é–¢ä¿‚ãªã使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-printcrl
 .RS 4
 \fI\-file crl_ {\-v}\fR
 .sp
-¥Õ¥¡¥¤¥ë\fIcrl_\fR¤«¤é¾ÚÌÀ½ñ¼º¸ú¥ê¥¹¥È(CRL)¤òÆɤ߹þ¤ß¤Þ¤¹¡£CRL¤Ï¡¢È¯¹Ô¤·¤¿CA¤Ë¤è¤Ã¤Æ¼º¸ú¤µ¤ì¤¿¥Ç¥¸¥¿¥ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ç¤¹¡£CA¤Ï¡¢\fIcrl_\fR¤òÀ¸À®¤·¤Þ¤¹¡£
+ファイル\fIcrl_\fRã‹ã‚‰è¨¼æ˜Žæ›¸å¤±åŠ¹ãƒªã‚¹ãƒˆ(CRL)を読ã¿è¾¼ã¿ã¾ã™ã€‚CRLã¯ã€ç™ºè¡Œã—ãŸCAã«ã‚ˆã£ã¦å¤±åŠ¹ã•ã‚ŒãŸãƒ‡ã‚¸ã‚¿ãƒ«è¨¼æ˜Žæ›¸ã®ãƒªã‚¹ãƒˆã§ã™ã€‚CAã¯ã€\fIcrl_\fRを生æˆã—ã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥­¡¼¥¹¥È¥¢¤È¤Ï´Ø·¸¤Ê¤¯»ÈÍѤǤ­¤Þ¤¹¡£
+\fB注æ„:\fR
+ã“ã®ã‚ªãƒ—ションã¯ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã¨ã¯é–¢ä¿‚ãªã使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-storepasswd
 .RS 4
 \fI[\-new new_storepass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption}\fR
 .sp
-¥­¡¼¥¹¥È¥¢¤ÎÆâÍƤÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Þ¤¹¡£\fInew_storepass\fR¤Ë¤Ï¡¢¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£new_storepass¤Ï¡¢6ʸ»ú°Ê¾å¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å†…容ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã™ã‚‹ãƒ‘スワードを変更ã—ã¾ã™ã€‚\fInew_storepass\fRã«ã¯ã€æ–°ã—ã„パスワードを指定ã—ã¾ã™ã€‚new_storepassã¯ã€6文字以上ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-keypasswd
 .RS 4
 \fI{\-alias alias} [\-keypass old_keypass] [\-new new_keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ëÈó¸ø³«/ÈëÌ©¸°¤òÊݸ¤ë¤¿¤á¤Î¥Ñ¥¹¥ï¡¼¥É¤ò¡¢\fIold_keypass\fR¤«¤é\fInew_keypass\fR¤ËÊѹ¹¤·¤Þ¤¹¡£new_keypass¤Ï¡¢6ʸ»ú°Ê¾å¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹éžå…¬é–‹/秘密éµã‚’ä¿è­·ã™ã‚‹ãŸã‚ã®ãƒ‘スワードをã€\fIold_keypass\fRã‹ã‚‰\fInew_keypass\fRã«å¤‰æ›´ã—ã¾ã™ã€‚new_keypassã¯ã€6文字以上ã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-keypass\fRオプションを指定ã—ã¦ãŠã‚‰ãšã€éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .sp
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-new\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+コマンドラインã§\fI\-new\fRオプションを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€æ–°ã—ã„パスワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-delete
 .RS 4
 \fI[\-alias alias] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-\fIalias\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¨¥ó¥È¥ê¤ò¥­¡¼¥¹¥È¥¢¤«¤éºï½ü¤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤ÇÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+\fIalias\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’キーストアã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã€‚コマンドラインã§åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€åˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-changealias
 .RS 4
 \fI{\-alias alias} [\-destalias destalias] [\-keypass keypass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption}\fR
 .sp
-»ØÄꤵ¤ì¤¿\fIalias\fR¤«¤é¿·¤·¤¤ÊÌ̾\fIdestalias\fR¤Ø¡¢´û¸¤Î¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤ò°ÜÆ°¤·¤Þ¤¹¡£¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¸µ¤Î¥¨¥ó¥È¥ê¤¬¥¨¥ó¥È¥ê¡¦¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤Ç¤½¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¸°¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢\fIstorepass\fR(»ØÄꤵ¤ì¤¿¾ì¹ç)¤¬¤Þ¤º»î¤ß¤é¤ì¤Þ¤¹¡£¤½¤Î»î¤ß¤¬¼ºÇÔ¤¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸ\fIalias\fRã‹ã‚‰æ–°ã—ã„別å\fIdestalias\fRã¸ã€æ—¢å­˜ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªã‚’移動ã—ã¾ã™ã€‚ターゲット別åを指定ã—ãªã‹ã£ãŸå ´åˆã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚å…ƒã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚¨ãƒ³ãƒˆãƒªãƒ»ãƒ‘スワードã§ä¿è­·ã•ã‚Œã¦ã„ãŸå ´åˆã€\fI\-keypass\fRオプションã§ãã®ãƒ‘スワードを指定ã§ãã¾ã™ã€‚éµãƒ‘スワードãŒæŒ‡å®šã•ã‚Œãªã‹ã£ãŸå ´åˆã€\fIstorepass\fR(指定ã•ã‚ŒãŸå ´åˆ)ãŒã¾ãšè©¦ã¿ã‚‰ã‚Œã¾ã™ã€‚ãã®è©¦ã¿ãŒå¤±æ•—ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-´ðËÜŪ¤Ê¥³¥Þ¥ó¥É¤È¤½¤Î¥ª¥×¥·¥ç¥ó¤Î°ìÍ÷¤òɽ¼¨¤·¤Þ¤¹¡£
+基本的ãªã‚³ãƒžãƒ³ãƒ‰ã¨ãã®ã‚ªãƒ—ションã®ä¸€è¦§ã‚’表示ã—ã¾ã™ã€‚
 .sp
-ÆÃÄê¤Î¥³¥Þ¥ó¥É¤Î¾ÜºÙ¤ò»²¾È¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Æ¤¯¤À¤µ¤¤:
-\fIkeytool \-command_name \-help\fR¡£\fIcommand_name\fR¤Ï¥³¥Þ¥ó¥É¤Î̾Á°¤Ç¤¹¡£
+特定ã®ã‚³ãƒžãƒ³ãƒ‰ã®è©³ç´°ã‚’å‚ç…§ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¦ãã ã•ã„:
+\fIkeytool \-command_name \-help\fR。\fIcommand_name\fRã¯ã‚³ãƒžãƒ³ãƒ‰ã®åå‰ã§ã™ã€‚
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¸ø³«/ÈëÌ©¸°¤Î¥Ú¥¢¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤«¤é¤Î¾ÚÌÀ½ñ¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥­¡¼¥¹¥È¥¢¤òºîÀ®¤¹¤ë¼ê½ç¤ò¼¨¤·¤Þ¤¹¡£
-.SS "¸°¤Î¥Ú¥¢¤ÎÀ¸À®"
+ã“ã®ä¾‹ã§ã¯ã€å…¬é–‹/秘密éµã®ãƒšã‚¢ãŠã‚ˆã³ä¿¡é ¼ã§ãるエンティティã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã‚’管ç†ã™ã‚‹ãŸã‚ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã™ã‚‹æ‰‹é †ã‚’示ã—ã¾ã™ã€‚
+.SS "éµã®ãƒšã‚¢ã®ç”Ÿæˆ"
 .PP
-¤Þ¤º¡¢¥­¡¼¥¹¥È¥¢¤òºîÀ®¤·¤Æ¸°¤Î¥Ú¥¢¤òÀ¸À®¤·¤Þ¤¹¡£Ã±°ì¹Ô¤ËÆþÎϤ¹¤ë¡¢¼¡¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+ã¾ãšã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã—ã¦éµã®ãƒšã‚¢ã‚’生æˆã—ã¾ã™ã€‚å˜ä¸€è¡Œã«å…¥åŠ›ã™ã‚‹ã€æ¬¡ã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -942,11 +942,11 @@
 .RE
 .\}
 .PP
-¥³¥Þ¥ó¥É¤Ï¡¢working¥Ç¥£¥ì¥¯¥È¥ê¤Ë\fImykeystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤òºîÀ®¤·(¥­¡¼¥¹¥È¥¢¤Ï¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤¤¤È²¾Äê)¡¢ºîÀ®¤·¤¿¥­¡¼¥¹¥È¥¢¤Ë¡¢\fI<new password for keystore>\fR¤Ç»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥É¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£À¸À®¤¹¤ë¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤ËÂбþ¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¡Ö¼±ÊÌ̾¡×¤Ï¡¢Ä̾Τ¬Mark Jones¡¢ÁÈ¿¥Ã±°Ì¤¬Java¡¢ÁÈ¿¥¤¬Oracle¡¢2ʸ»ú¤Î¹ñÈֹ椬US¤Ç¤¹¡£¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥µ¥¤¥º¤Ï¤É¤Á¤é¤â1024¥Ó¥Ã¥È¤Ç¡¢¸°¤ÎºîÀ®¤Ë¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎDSA¸°À¸À®¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤Þ¤¹¡£
+コマンドã¯ã€workingディレクトリã«\fImykeystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’作æˆã—(キーストアã¯ã¾ã å­˜åœ¨ã—ã¦ã„ãªã„ã¨ä»®å®š)ã€ä½œæˆã—ãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã€\fI<new password for keystore>\fRã§æŒ‡å®šã—ãŸãƒ‘スワードを割り当ã¦ã¾ã™ã€‚生æˆã™ã‚‹å…¬é–‹éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã«å¯¾å¿œã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã€Œè­˜åˆ¥åã€ã¯ã€é€šç§°ãŒMark Jonesã€çµ„ç¹”å˜ä½ãŒJavaã€çµ„ç¹”ãŒOracleã€2文字ã®å›½ç•ªå·ãŒUSã§ã™ã€‚公開éµã¨ç§˜å¯†éµã®ã‚µã‚¤ã‚ºã¯ã©ã¡ã‚‰ã‚‚1024ビットã§ã€éµã®ä½œæˆã«ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®DSAéµç”Ÿæˆã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’使用ã—ã¾ã™ã€‚
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎSHA1withDSA½ð̾¥¢¥ë¥´¥ê¥º¥à¤ò»ÈÍѤ·¤Æ¡¢¸ø³«¸°¤È¼±ÊÌ̾¾ðÊó¤ò´Þ¤à¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òºîÀ®¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¤ÎÍ­¸ú´ü´Ö¤Ï180Æü¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ï¡¢ÊÌ̾\fIbusiness\fR¤ÇÆÃÄꤵ¤ì¤ë¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥êÆâ¤ÎÈëÌ©¸°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Þ¤¹¡£ÈëÌ©¸°¤Ë¤Ï¡¢\fI<new password for private key>\fR¤Ç»ØÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥É¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®SHA1withDSAç½²åアルゴリズムを使用ã—ã¦ã€å…¬é–‹éµã¨è­˜åˆ¥å情報をå«ã‚€è‡ªå·±ç½²å証明書を作æˆã—ã¾ã™ã€‚証明書ã®æœ‰åŠ¹æœŸé–“ã¯180æ—¥ã§ã™ã€‚証明書ã¯ã€åˆ¥å\fIbusiness\fRã§ç‰¹å®šã•ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªå†…ã®ç§˜å¯†éµã«é–¢é€£ä»˜ã‘られã¾ã™ã€‚秘密éµã«ã¯ã€\fI<new password for private key>\fRã§æŒ‡å®šã—ãŸãƒ‘スワードãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚
 .PP
-¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤò»ÈÍѤ¹¤ë¾ì¹ç¡¢¥³¥Þ¥ó¥É¤ÏÂçÉý¤Ëû¤¯¤Ê¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥ª¥×¥·¥ç¥ó¤ÏÉÔÍפǤ¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤò»ý¤Ä¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¥Ç¥Õ¥©¥ë¥ÈÃͤ¬»ÈÍѤµ¤ì¤Þ¤¹¡£É¬¿ÜÃͤÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£»ÈÍѲÄǽ¤ÊÃͤϼ¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+オプションã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’使用ã™ã‚‹å ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ã¯å¤§å¹…ã«çŸ­ããªã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ã‚ªãƒ—ションã¯ä¸è¦ã§ã™ã€‚デフォルト値をæŒã¤ã‚ªãƒ—ションã§ã¯ã€ã‚ªãƒ—ションを指定ã—ãªã‘ã‚Œã°ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚必須値ã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚使用å¯èƒ½ãªå€¤ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -958,12 +958,12 @@
 .RE
 .\}
 .PP
-¤³¤Î¾ì¹ç¤Ï¡¢\fImykey\fR¤È¤¤¤¦ÊÌ̾¤Ç¥­¡¼¥¹¥È¥¢¡¦¥¨¥ó¥È¥ê¤¬ºîÀ®¤µ¤ì¡¢¿·¤·¤¯À¸À®¤µ¤ì¤¿¸°¤Î¥Ú¥¢¡¢¤ª¤è¤Ó90Æü´ÖÍ­¸ú¤Ê¾ÚÌÀ½ñ¤¬¤³¤Î¥¨¥ó¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¨¥ó¥È¥ê¤Ï¡¢¥Û¡¼¥à¡¦¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î\fI\&.keystore\fR¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤ËÃÖ¤«¤ì¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢¤Þ¤À¸ºß¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£¼±ÊÌ̾¾ðÊó¡¢¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ª¤è¤ÓÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+ã“ã®å ´åˆã¯ã€\fImykey\fRã¨ã„ã†åˆ¥åã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¨ãƒ³ãƒˆãƒªãŒä½œæˆã•ã‚Œã€æ–°ã—ã生æˆã•ã‚ŒãŸéµã®ãƒšã‚¢ã€ãŠã‚ˆã³90日間有効ãªè¨¼æ˜Žæ›¸ãŒã“ã®ã‚¨ãƒ³ãƒˆãƒªã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€ãƒ›ãƒ¼ãƒ ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®\fI\&.keystore\fRã¨ã„ã†åå‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ç½®ã‹ã‚Œã¾ã™ã€‚キーストアã¯ã€ã¾ã å­˜åœ¨ã—ã¦ã„ãªã„å ´åˆã«ä½œæˆã•ã‚Œã¾ã™ã€‚識別å情報ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードãŠã‚ˆã³ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .PP
-°Ê¹ß¤Ç¤Ï¡¢¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤Ç\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¤â¤Î¤È¤·¤ÆÎã¤ò¼¨¤·¤Þ¤¹¡£¾ðÊó¤ÎÆþÎϤòµá¤á¤é¤ì¤¿¾ì¹ç¤Ï¡¢ºÇ½é¤Ë¼¨¤·¤¿\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ÎÃͤòÆþÎϤ·¤¿¤â¤Î¤È¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¼±ÊÌ̾¤Ë¤Ï\fIcn=Mark Jones\fR¡¢\fIou=Java\fR¡¢\fIo=Oracle\fR¡¢\fIc=US\fR¤È»ØÄꤷ¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤Î¥ê¥¯¥¨¥¹¥È"
+以é™ã§ã¯ã€ã‚ªãƒ—ションを指定ã—ãªã„ã§\fI\-genkeypair\fRコマンドを実行ã—ãŸã‚‚ã®ã¨ã—ã¦ä¾‹ã‚’示ã—ã¾ã™ã€‚情報ã®å…¥åŠ›ã‚’求ã‚られãŸå ´åˆã¯ã€æœ€åˆã«ç¤ºã—ãŸ\fI\-genkeypair\fRコマンドã®å€¤ã‚’入力ã—ãŸã‚‚ã®ã¨ã—ã¾ã™ã€‚ãŸã¨ãˆã°è­˜åˆ¥åã«ã¯\fIcn=Mark Jones\fRã€\fIou=Java\fRã€\fIo=Oracle\fRã€\fIc=US\fRã¨æŒ‡å®šã—ã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®ç½²å付ã証明書ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ"
 .PP
-¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òºîÀ®¤¹¤ë¸°¤Î¥Ú¥¢¤ÎÀ¸À®¡£¾ÚÌÀ½ñ¤Ë¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤Î½ð̾¤¬ÉÕ¤¤¤Æ¤¤¤ì¤Ð¡¢Â¾¤Î¥æ¡¼¥¶¡¼¤«¤é¾ÚÌÀ½ñ¤¬¿®Íꤵ¤ì¤ë²ÄǽÀ­¤â¹â¤¯¤Ê¤ê¤Þ¤¹¡£CA¤Î½ð̾¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï¡¢¤Þ¤º¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤òÀ¸À®¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+自己署å証明書を作æˆã™ã‚‹éµã®ãƒšã‚¢ã®ç”Ÿæˆã€‚証明書ã«è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã®ç½²åãŒä»˜ã„ã¦ã„ã‚Œã°ã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‹ã‚‰è¨¼æ˜Žæ›¸ãŒä¿¡é ¼ã•ã‚Œã‚‹å¯èƒ½æ€§ã‚‚高ããªã‚Šã¾ã™ã€‚CAã®ç½²åã‚’å–å¾—ã™ã‚‹ã«ã¯ã€ã¾ãšã€è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)を生æˆã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -975,12 +975,12 @@
 .RE
 .\}
 .PP
-CSR(¥Ç¥Õ¥©¥ë¥ÈÊÌ̾\fImykey\fR¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤ÎCSR)¤¬ºîÀ®¤µ¤ì¡¢MarkJ\&.csr¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ËÃÖ¤«¤ì¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤òCA (VeriSign¤Ê¤É)¤ËÄó½Ð¤·¤Þ¤¹¡£CA¤ÏÍ×µá¼Ô¤ò(Ä̾ï¤Ï¥ª¥Õ¥é¥¤¥ó¤Ç)ǧ¾Ú¤·¡¢Í×µá¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿½ð̾ÉÕ¤­¤Î¾ÚÌÀ½ñ¤òÁ÷¤êÊÖ¤·¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢CA¤¬¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òÊÖ¤¹¤³¤È¤â¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤Ç¤Ï¡¢³Æ¾ÚÌÀ½ñ¤¬¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î½ð̾¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È"
+CSR(デフォルト別å\fImykey\fRã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®CSR)ãŒä½œæˆã•ã‚Œã€MarkJ\&.csrã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«ç½®ã‹ã‚Œã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’CA (VeriSignãªã©)ã«æ出ã—ã¾ã™ã€‚CAã¯è¦æ±‚者を(通常ã¯ã‚ªãƒ•ãƒ©ã‚¤ãƒ³ã§)èªè¨¼ã—ã€è¦æ±‚者ã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸç½²å付ãã®è¨¼æ˜Žæ›¸ã‚’é€ã‚Šè¿”ã—ã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€CAãŒè¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã‚’è¿”ã™ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚証明書ã®ãƒã‚§ãƒ¼ãƒ³ã§ã¯ã€å„証明書ãŒãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®ç½²å者ã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-ºîÀ®¤·¤¿¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ï¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤Ï¡¢³Æ¾ÚÌÀ½ñ¤¬¡¢¡Ö¥ë¡¼¥È¡×CA¤òµ¯ÅÀ¤È¤¹¤ë¥Á¥§¡¼¥óÆâ¤Î¼¡¤Î¾ÚÌÀ½ñ¤Î½ð̾¼Ô¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹¡£
+作æˆã—ãŸè‡ªå·±ç½²å証明書ã¯ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã§ã¯ã€å„証明書ãŒã€ã€Œãƒ«ãƒ¼ãƒˆã€CAを起点ã¨ã™ã‚‹ãƒã‚§ãƒ¼ãƒ³å†…ã®æ¬¡ã®è¨¼æ˜Žæ›¸ã®ç½²å者ã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™ã€‚
 .PP
-CA¤«¤é¤Î¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢¥­¡¼¥¹¥È¥¢¤«¡¢\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Ë1¤Ä°Ê¾å¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤¬¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI¤Î\fR\-importcert¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸å¿œç­”をインãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‹ã€\fIcacerts\fRキーストア・ファイル内ã«1ã¤ä»¥ä¸Šã®ä¿¡é ¼ã§ãる証明書ãŒã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIã®\fR\-importcertコマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -990,7 +990,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ±þÅú¤¬¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥ó¤ÎºÇ¾å°Ì¾ÚÌÀ½ñ¤¬É¬ÍפǤ¹¡£CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¡£
+証明応答ãŒè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³ã®æœ€ä¸Šä½è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã™ã€‚CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ãƒ«ãƒ¼ãƒˆCA証明書。
 .RE
 .sp
 .RS 4
@@ -1001,14 +1001,14 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬Ã±°ì¤Î¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢È¯¹ÔCA(½ð̾¤·¤¿)¤Î¾ÚÌÀ½ñ¤¬É¬ÍפǤ¹¡£¤½¤Î¾ÚÌÀ½ñ¤¬¼«¸Ê½ð̾¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¤½¤Î½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤¬É¬ÍפǤ¢¤ê¡¢¤³¤Î¤è¤¦¤Ë¤·¤Æ¼«¸Ê½ð̾¥ë¡¼¥È¾ÚÌÀ½ñ¤¬É¬Íפˤʤê¤Þ¤¹¡£
+証明書応答ãŒå˜ä¸€ã®è¨¼æ˜Žæ›¸ã®å ´åˆã¯ã€ç™ºè¡ŒCA(ç½²åã—ãŸ)ã®è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã™ã€‚ãã®è¨¼æ˜Žæ›¸ãŒè‡ªå·±ç½²åã§ãªã„å ´åˆã¯ã€ãã®ç½²å者ã®è¨¼æ˜Žæ›¸ãŒå¿…è¦ã§ã‚ã‚Šã€ã“ã®ã‚ˆã†ã«ã—ã¦è‡ªå·±ç½²åルート証明書ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
-\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¤¤¤¯¤Ä¤«¤ÎVeriSign¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò´Þ¤ó¤À¾õÂ֤ǽв٤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢VeriSign¤Î¾ÚÌÀ½ñ¤ò¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ëɬÍפ¬¤Ê¤¤¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢Â¾¤ÎCA¤ËÂФ·¤Æ½ð̾ÉÕ¤­¾ÚÌÀ½ñ¤ò¥ê¥¯¥¨¥¹¥È¤·¤Æ¤¤¤Æ¡¢¤³¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤¬¡¢\fIcacerts\fR¤Ë¤Þ¤ÀÄɲ䵤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ëCA¤«¤é¤Î¾ÚÌÀ½ñ¤ò¡¢¡Ö¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¡×¤È¤·¤Æ¥¤¥ó¥Ý¡¼¥È¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIcacerts\fRキーストア・ファイルã¯ã€ã„ãã¤ã‹ã®VeriSignルートCA証明書をå«ã‚“ã çŠ¶æ…‹ã§å‡ºè·ã•ã‚Œã¦ã„ã‚‹ã®ã§ã€VeriSignã®è¨¼æ˜Žæ›¸ã‚’ã€ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒãªã„å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ä»–ã®CAã«å¯¾ã—ã¦ç½²å付ã証明書をリクエストã—ã¦ã„ã¦ã€ã“ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ãŒã€\fIcacerts\fRã«ã¾ã è¿½åŠ ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€è©²å½“ã™ã‚‹CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã‚’ã€ã€Œä¿¡é ¼ã§ãる証明書ã€ã¨ã—ã¦ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-Ä̾CA¤«¤é¤Î¾ÚÌÀ½ñ¤Ï¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¡¢¤Þ¤¿¤Ï¾¤ÎCA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¾ÚÌÀ½ñ¤Ç¤¹(¸å¼Ô¤Î¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ë¾¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤¬É¬Í×)¡£ABC, Inc\&.,¤¬CA¤Ç¡¢ABC¤«¤é¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¤¢¤ëA\fIBCCA\&.cer\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ò¼èÆÀ¤·¤¿¤È¤·¤Þ¤¹(¤³¤Î¾ÚÌÀ½ñ¤ÏCA¤Î¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹)¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤º¡¢\fIkeytool \-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤Ê¤·¤Î\fIkeytool \-importcert\fR¥³¥Þ¥ó¥É¤Ç¤½¤ì¤òɽ¼¨¤·¡¢É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬´üÂÔ¤µ¤ì¤ë¤â¤Î¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¤òÁ÷¿®¤·¤¿¿Íʪ¤ËÏ¢Íí¤·¡¢¤³¤Î¿Íʪ¤¬Ä󼨤·¤¿(¤Þ¤¿¤Ï°ÂÁ´¤Ê¸ø³«¸°¤Î¥ê¥Ý¥¸¥È¥ê¤Ë¤è¤Ã¤ÆÄ󼨤µ¤ì¤ë)¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¾å¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬°ìÃפ¹¤ì¤Ð¡¢Á÷¿®ÅÓÃæ¤Ç¾¤Î²¿¼Ô¤«(¹¶·â¼Ô¤Ê¤É)¤Ë¤è¤ë¾ÚÌÀ½ñ¤Î¤¹¤êÂؤ¨¤¬¹Ô¤ï¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£Á÷¿®ÅÓÃæ¤Ç¤³¤Î¼ï¤Î¹¶·â¤¬¹Ô¤ï¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥Á¥§¥Ã¥¯¤ò¹Ô¤ï¤º¤Ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¡¢¹¶·â¼Ô¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¤â¤Î¤ò¿®Íꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+通常ã€CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸ã¯ã€è‡ªå·±ç½²å証明書ã€ã¾ãŸã¯ä»–ã®CAã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã§ã™(後者ã®å ´åˆã¯ã€è©²å½“ã™ã‚‹ä»–ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ãŒå¿…è¦)。ABC, Inc\&.,ãŒCAã§ã€ABCã‹ã‚‰è‡ªå·±ç½²å証明書ã§ã‚ã‚‹A\fIBCCA\&.cer\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å–å¾—ã—ãŸã¨ã—ã¾ã™(ã“ã®è¨¼æ˜Žæ›¸ã¯CAã®å…¬é–‹éµã‚’èªè¨¼ã—ã¾ã™)。信頼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€è¨¼æ˜Žæ›¸ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’確èªã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãšã€\fIkeytool \-printcert\fRコマンドã¾ãŸã¯\fI\-noprompt\fRオプションãªã—ã®\fIkeytool \-importcert\fRコマンドã§ãれを表示ã—ã€è¡¨ç¤ºã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒæœŸå¾…ã•ã‚Œã‚‹ã‚‚ã®ã¨ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã‚’確èªã—ã¾ã™ã€‚証明書をé€ä¿¡ã—ãŸäººç‰©ã«é€£çµ¡ã—ã€ã“ã®äººç‰©ãŒæ示ã—ãŸ(ã¾ãŸã¯å®‰å…¨ãªå…¬é–‹éµã®ãƒªãƒã‚¸ãƒˆãƒªã«ã‚ˆã£ã¦æ示ã•ã‚Œã‚‹)フィンガープリントã¨ã€ä¸Šã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚フィンガープリントãŒä¸€è‡´ã™ã‚Œã°ã€é€ä¿¡é€”中ã§ä»–ã®ä½•è€…ã‹(攻撃者ãªã©)ã«ã‚ˆã‚‹è¨¼æ˜Žæ›¸ã®ã™ã‚Šæ›¿ãˆãŒè¡Œã‚ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã§ãã¾ã™ã€‚é€ä¿¡é€”中ã§ã“ã®ç¨®ã®æ”»æ’ƒãŒè¡Œã‚ã‚Œã¦ã„ãŸå ´åˆã€ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã‚ãšã«è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€æ”»æ’ƒè€…ã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸã™ã¹ã¦ã®ã‚‚ã®ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤È¿®Íꤹ¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¥­¡¼¥¹¥È¥¢¤ËÄɲäǤ­¤Þ¤¹¡£
+証明書ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã¨ä¿¡é ¼ã™ã‚‹å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«è¿½åŠ ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1020,12 +1020,12 @@
 .RE
 .\}
 .PP
-ABCCA\&.cer¥Õ¥¡¥¤¥ë¤Î¥Ç¡¼¥¿¤ò´Þ¤à¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¨¥ó¥È¥ê¤¬¥­¡¼¥¹¥È¥¢Æâ¤ËºîÀ®¤µ¤ì¡¢³ºÅö¤¹¤ë¥¨¥ó¥È¥ê¤Ë\fIabc\fR¤È¤¤¤¦ÊÌ̾¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£
-.SS "CA¤«¤é¤Î¾ÚÌÀ½ñ±þÅú¤Î¥¤¥ó¥Ý¡¼¥È"
+ABCCA\&.cerファイルã®ãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚€ä¿¡é ¼ã§ãる証明書ã®ã‚¨ãƒ³ãƒˆãƒªãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ä½œæˆã•ã‚Œã€è©²å½“ã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªã«\fIabc\fRã¨ã„ã†åˆ¥åãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚
+.SS "CAã‹ã‚‰ã®è¨¼æ˜Žæ›¸å¿œç­”ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤ÎÄó½ÐÀè¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤·¤¿¸å¤Ï(¤Þ¤¿¤ÏƱ¼ï¤Î¾ÚÌÀ½ñ¤¬¤¹¤Ç¤Ëcacerts¥Õ¥¡¥¤¥ëÆâ¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ï)¡¢¾ÚÌÀ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤·¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤ò¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¥Á¥§¡¼¥ó¤Ï¡¢CA¤Î±þÅú¤¬¥Á¥§¡¼¥ó¤Î¾ì¹ç¤Ë¡¢¥ê¥¯¥¨¥¹¥È¤ËÂФ¹¤ë¥ì¥¹¥Ý¥ó¥¹¤È¤·¤ÆCA¤«¤éÁ÷¤êÊÖ¤µ¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤¹¡£¤Þ¤¿¡¢CA¤Î±þÅú¤¬Ã±°ì¤Î¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ï¡¢¤³¤Î¾ÚÌÀ±þÅú¤È¡¢¥¤¥ó¥Ý¡¼¥ÈÀè¤Î¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¥Õ¥¡¥¤¥ëÆâ¤Ë¤¹¤Ç¤Ë¸ºß¤¹¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤ò»ÈÍѤ·¤Æ¹½ÃÛ¤·¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ç¤¹¡£
+証明書署åリクエストã®æ出先ã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã—ãŸå¾Œã¯(ã¾ãŸã¯åŒç¨®ã®è¨¼æ˜Žæ›¸ãŒã™ã§ã«cacertsファイル内ã«å­˜åœ¨ã—ã¦ã„ã‚‹å ´åˆã¯)ã€è¨¼æ˜Žå¿œç­”をインãƒãƒ¼ãƒˆã—ã€è‡ªå·±ç½²å証明書を証明書ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ãƒã‚§ãƒ¼ãƒ³ã¯ã€CAã®å¿œç­”ãŒãƒã‚§ãƒ¼ãƒ³ã®å ´åˆã«ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å¯¾ã™ã‚‹ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã¨ã—ã¦CAã‹ã‚‰é€ã‚Šè¿”ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ã™ã€‚ã¾ãŸã€CAã®å¿œç­”ãŒå˜ä¸€ã®è¨¼æ˜Žæ›¸ã®å ´åˆã¯ã€ã“ã®è¨¼æ˜Žå¿œç­”ã¨ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆå…ˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストアファイル内ã«ã™ã§ã«å­˜åœ¨ã™ã‚‹ä¿¡é ¼ã§ãる証明書ã¨ã‚’使用ã—ã¦æ§‹ç¯‰ã—ãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã§ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È¤òVeriSign¤ËÁ÷¿®¤¹¤ë¾ì¹ç¡¢Á÷¤êÊÖ¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î̾Á°¤¬VSMarkJ\&.cer¤À¤È¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Æ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ç½²åリクエストをVeriSignã«é€ä¿¡ã™ã‚‹å ´åˆã€é€ã‚Šè¿”ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®åå‰ãŒVSMarkJ\&.cerã ã¨ã™ã‚‹ã¨ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¦å¿œç­”をインãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1036,11 +1036,11 @@
 .if n \{\
 .RE
 .\}
-.SS "¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Î¥¨¥¯¥¹¥Ý¡¼¥È"
+.SS "公開éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ"
 .PP
-\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆJava Archive (JAR)¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¾ì¹ç¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¤Ï½ð̾¤òǧ¾Ú¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤¬½ð̾¤òǧ¾Ú¤¹¤ëÊýË¡¤Î1¤Ä¤Ë¡¢¤Þ¤º¼«Ê¬¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤ò¿®Íê¤Ç¤­¤ë¥¨¥ó¥È¥ê¤È¤·¤Æ¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ëÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
+\fIjarsigner\fRコマンドを使用ã—ã¦Java Archive (JAR)ファイルã«ç½²åã™ã‚‹å ´åˆã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã™ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ç½²åã‚’èªè¨¼ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚クライアントãŒç½²åã‚’èªè¨¼ã™ã‚‹æ–¹æ³•ã®1ã¤ã«ã€ã¾ãšè‡ªåˆ†ã®å…¬é–‹éµã®è¨¼æ˜Žæ›¸ã‚’ä¿¡é ¼ã§ãるエントリã¨ã—ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹æ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-¤½¤Î¤¿¤á¤Ë¤Ï¡¢¾ÚÌÀ½ñ¤ò¥¨¥¯¥¹¥Ý¡¼¥È¤·¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤ËÄ󶡤·¤Þ¤¹¡£Îã¤È¤·¤Æ¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢MJ\&.cer¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ë¾ÚÌÀ½ñ¤ò¥³¥Ô¡¼¤Ç¤­¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¨¥ó¥È¥ê¤ËÊÌ̾\fImykey\fR¤¬¤¢¤ë¤È²¾Äꤷ¤Æ¤¤¤Þ¤¹¡£
+ãã®ãŸã‚ã«ã¯ã€è¨¼æ˜Žæ›¸ã‚’エクスãƒãƒ¼ãƒˆã—ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«æä¾›ã—ã¾ã™ã€‚例ã¨ã—ã¦ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€MJ\&.cerã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«è¨¼æ˜Žæ›¸ã‚’コピーã§ãã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã‚¨ãƒ³ãƒˆãƒªã«åˆ¥å\fImykey\fRãŒã‚ã‚‹ã¨ä»®å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1052,12 +1052,12 @@
 .RE
 .\}
 .PP
-¾ÚÌÀ½ñ¤È½ð̾ÉÕ¤­JAR¥Õ¥¡¥¤¥ë¤òÆþ¼ê¤·¤¿¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢\fIjarsigner\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ½ð̾¤òǧ¾Ú¤Ç¤­¤Þ¤¹¡£
-.SS "¥­¡¼¥¹¥È¥¢¤Î¥¤¥ó¥Ý¡¼¥È"
+証明書ã¨ç½²å付ãJARファイルを入手ã—ãŸã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€\fIjarsigner\fRコマンドを使用ã—ã¦ç½²åã‚’èªè¨¼ã§ãã¾ã™ã€‚
+.SS "キーストアã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¥³¥Þ¥ó¥É\fIimportkeystore\fR¤ò»ÈÍѤ¹¤ì¤Ð¡¢¤¢¤ë¥­¡¼¥¹¥È¥¢¤ÎÁ´ÂΤòÊ̤Υ­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£¤³¤ì¤Ï¡¢¸°¤ä¾ÚÌÀ½ñ¤È¤¤¤Ã¤¿¥½¡¼¥¹¥­¡¼¥¹¥È¥¢Æâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤¬¡¢Ã±°ì¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¥¿¡¼¥²¥Ã¥È¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢Æâ¤Ë´Þ¤Þ¤ì¤ë¥¨¥ó¥È¥ê¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥¤¥ó¥Ý¡¼¥È»þ¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢Æâ¤Î¿·¤·¤¤¥¨¥ó¥È¥ê¤Ï¤¹¤Ù¤Æ¡¢¸µ¤ÈƱ¤¸ÊÌ̾¤ª¤è¤Ó(ÈëÌ©¸°¤äÈëÌ©¸°¤Î¾ì¹ç¤Ï)ÊݸîÍѥѥ¹¥ï¡¼¥É¤ò»ý¤Á¤Þ¤¹¡£¥½¡¼¥¹¥­¡¼¥¹¥È¥¢Æâ¤ÎÈó¸ø³«/ÈëÌ©¸°¤ò¥ê¥«¥Ð¥ê¤Ç¤­¤Ê¤¤¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¥æ¡¼¥¶¡¼¤Ë¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢ÊÌ̾¤Î½ÅÊ£¤ò¸¡½Ð¤¹¤ë¤È¡¢¥æ¡¼¥¶¡¼¤Ë¿·¤·¤¤ÊÌ̾¤ÎÆþÎϤòµá¤á¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢¿·¤·¤¤ÊÌ̾¤ò»ØÄꤹ¤ë¤³¤È¤â¡¢Ã±½ã¤Ë´û¸¤ÎÊÌ̾¤Î¾å½ñ¤­¤ò\fIkeytool\fR¥³¥Þ¥ó¥É¤Ëµö²Ä¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+コマンド\fIimportkeystore\fRを使用ã™ã‚Œã°ã€ã‚るキーストアã®å…¨ä½“を別ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚ã“ã‚Œã¯ã€éµã‚„証明書ã¨ã„ã£ãŸã‚½ãƒ¼ã‚¹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªãŒã€å˜ä¸€ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã™ã‚Œã°ã€ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«å«ã¾ã‚Œã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚インãƒãƒ¼ãƒˆæ™‚ã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æ–°ã—ã„エントリã¯ã™ã¹ã¦ã€å…ƒã¨åŒã˜åˆ¥åãŠã‚ˆã³(秘密éµã‚„秘密éµã®å ´åˆã¯)ä¿è­·ç”¨ãƒ‘スワードをæŒã¡ã¾ã™ã€‚ソースキーストア内ã®éžå…¬é–‹/秘密éµã‚’リカãƒãƒªã§ããªã„å ´åˆã€\fIkeytool\fRコマンドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€åˆ¥åã®é‡è¤‡ã‚’検出ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ–°ã—ã„別åã®å…¥åŠ›ã‚’求ã‚ã¾ã™ã€‚ユーザーã¯ã€æ–°ã—ã„別åを指定ã™ã‚‹ã“ã¨ã‚‚ã€å˜ç´”ã«æ—¢å­˜ã®åˆ¥åã®ä¸Šæ›¸ãã‚’\fIkeytool\fRコマンドã«è¨±å¯ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-¤¿¤È¤¨¤Ð¡¢Ä̾ï¤ÎJKS¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢key\&.jksÆâ¤Î¥¨¥ó¥È¥ê¤òPKCS#11¥¿¥¤¥×¤Î¥Ï¡¼¥É¥¦¥§¥¢¡¦¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢Æâ¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€é€šå¸¸ã®JKSタイプã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢key\&.jks内ã®ã‚¨ãƒ³ãƒˆãƒªã‚’PKCS#11タイプã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ãƒ»ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1073,7 +1073,7 @@
 .RE
 .\}
 .PP
-¤Þ¤¿¡¢\fIimportkeystore\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢¤¢¤ë¥½¡¼¥¹¡¦¥­¡¼¥¹¥È¥¢Æâ¤Îñ°ì¤Î¥¨¥ó¥È¥ê¤ò¥¿¡¼¥²¥Ã¥È¡¦¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢Á°Îã¤Î¥ª¥×¥·¥ç¥ó¤Ë²Ã¤¨¤Æ¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ëÊÌ̾¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-srcalias\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¾ì¹ç¤Ë¤Ï¡¢¥¿¡¼¥²¥Ã¥ÈÊÌ̾¤â¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é»ØÄê¤Ç¤­¤ë¤Û¤«¡¢ÈëÌ©/ÈëÌ©¸°¤ÎÊݸîÍѥѥ¹¥ï¡¼¥É¤ä¥¿¡¼¥²¥Ã¥ÈÊݸîÍѥѥ¹¥ï¡¼¥É¤â»ØÄê¤Ç¤­¤Þ¤¹¡£¤½¤ÎÊýË¡¤ò¼¨¤¹¥³¥Þ¥ó¥É¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+ã¾ãŸã€\fIimportkeystore\fRコマンドを使用ã™ã‚Œã°ã€ã‚るソース・キーストア内ã®å˜ä¸€ã®ã‚¨ãƒ³ãƒˆãƒªã‚’ターゲット・キーストアã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ã“ã®å ´åˆã¯ã€å‰ä¾‹ã®ã‚ªãƒ—ションã«åŠ ãˆã¦ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹åˆ¥åを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-srcalias\fRオプションを指定ã™ã‚‹å ´åˆã«ã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆåˆ¥åもコマンドラインã‹ã‚‰æŒ‡å®šã§ãã‚‹ã»ã‹ã€ç§˜å¯†/秘密éµã®ä¿è­·ç”¨ãƒ‘スワードやターゲットä¿è­·ç”¨ãƒ‘スワードも指定ã§ãã¾ã™ã€‚ãã®æ–¹æ³•ã‚’示ã™ã‚³ãƒžãƒ³ãƒ‰ã‚’次ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1092,9 +1092,9 @@
 .if n \{\
 .RE
 .\}
-.SS "SSL¥µ¡¼¥Ð¡¼¤Î¾ÚÌÀ½ñ¤ÎÀ¸À®"
+.SS "SSLサーãƒãƒ¼ã®è¨¼æ˜Žæ›¸ã®ç”Ÿæˆ"
 .PP
-¼¡¤Ë¡¢3¤Ä¤Î¥¨¥ó¥Æ¥£¥Æ¥£¡¢¤Ä¤Þ¤ê¥ë¡¼¥ÈCA(\fIroot\fR)¡¢Ãæ´ÖCA(\fIca\fR)¤ª¤è¤ÓSSL¥µ¡¼¥Ð¡¼(\fIserver\fR)ÍѤθ°¥Ú¥¢¤È¾ÚÌÀ½ñ¤òÀ¸À®¤¹¤ë\fIkeytool\fR¥³¥Þ¥ó¥É¤ò¼¨¤·¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¾ÚÌÀ½ñ¤òƱ¤¸¥­¡¼¥¹¥È¥¢¤Ë³ÊǼ¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÎÎã¤Ç¤Ï¡¢RSA¤¬¿ä¾©¤µ¤ì¤ë¸°¤Î¥¢¥ë¥´¥ê¥º¥à¤Ç¤¹¡£
+次ã«ã€3ã¤ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã€ã¤ã¾ã‚Šãƒ«ãƒ¼ãƒˆCA(\fIroot\fR)ã€ä¸­é–“CA(\fIca\fR)ãŠã‚ˆã³SSLサーãƒãƒ¼(\fIserver\fR)用ã®éµãƒšã‚¢ã¨è¨¼æ˜Žæ›¸ã‚’生æˆã™ã‚‹\fIkeytool\fRコマンドを示ã—ã¾ã™ã€‚ã™ã¹ã¦ã®è¨¼æ˜Žæ›¸ã‚’åŒã˜ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«æ ¼ç´ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。ã“れらã®ä¾‹ã§ã¯ã€RSAãŒæŽ¨å¥¨ã•ã‚Œã‚‹éµã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1120,30 +1120,30 @@
 .if n \{\
 .RE
 .\}
-.SH "ÍѸì"
+.SH "用語"
 .PP
-¥­¡¼¥¹¥È¥¢
+キーストア
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ï¡¢°Å¹æ²½¤Î¸°¤È¾ÚÌÀ½ñ¤ò³ÊǼ¤¹¤ë¤¿¤á¤Îµ¡Ç½¤Ç¤¹¡£
+キーストアã¯ã€æš—å·åŒ–ã®éµã¨è¨¼æ˜Žæ›¸ã‚’æ ¼ç´ã™ã‚‹ãŸã‚ã®æ©Ÿèƒ½ã§ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¥¨¥ó¥È¥ê
+キーストアã®ã‚¨ãƒ³ãƒˆãƒª
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Ë¤Ï°Û¤Ê¤ë¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¤ò´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ÇºÇ¤âŬÍÑÈϰϤι­¤¤¥¨¥ó¥È¥ê¡¦¥¿¥¤¥×¤Ï¡¢¼¡¤Î2¤Ä¤Ç¤¹¡£
+キーストアã«ã¯ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚\fIkeytool\fRコマンドã§æœ€ã‚‚é©ç”¨ç¯„囲ã®åºƒã„エントリ・タイプã¯ã€æ¬¡ã®2ã¤ã§ã™ã€‚
 .sp
-\fB¸°¤Î¥¨¥ó¥È¥ê\fR
-\- ³Æ¥¨¥ó¥È¥ê¤Ï¡¢Èó¾ï¤Ë½ÅÍפʰŹ沽¤Î¸°¤Î¾ðÊó¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ï¡¢µö²Ä¤·¤Æ¤¤¤Ê¤¤¥¢¥¯¥»¥¹¤òËɤ°¤¿¤á¤Ë¡¢Êݸ¤ì¤¿·Á¤Ç³ÊǼ¤µ¤ì¤Þ¤¹¡£°ìÈ̤ˡ¢¤³¤Î¼ï¤Î¥¨¥ó¥È¥ê¤È¤·¤Æ³ÊǼ¤µ¤ì¤ë¸°¤Ï¡¢ÈëÌ©¸°¤«¡¢Âбþ¤¹¤ë¸ø³«¸°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òȼ¤¦ÈëÌ©¸°¤Ç¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¤³¤ÎξÊý¤Î¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¤ò½èÍý¤Ç¤­¤ë¤Î¤ËÂФ·¡¢\fIjarsigner\fR¥Ä¡¼¥ë¤Ï¸å¼Ô¤Î¥¿¥¤¥×¤Î¥¨¥ó¥È¥ê¡¢¤Ä¤Þ¤êÈëÌ©¸°¤È¤½¤ì¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¤ß¤ò½èÍý¤·¤Þ¤¹¡£
+\fBéµã®ã‚¨ãƒ³ãƒˆãƒª\fR
+\- å„エントリã¯ã€éžå¸¸ã«é‡è¦ãªæš—å·åŒ–ã®éµã®æƒ…報をä¿æŒã—ã¾ã™ã€‚ã“ã®æƒ…å ±ã¯ã€è¨±å¯ã—ã¦ã„ãªã„アクセスを防ããŸã‚ã«ã€ä¿è­·ã•ã‚ŒãŸå½¢ã§æ ¼ç´ã•ã‚Œã¾ã™ã€‚一般ã«ã€ã“ã®ç¨®ã®ã‚¨ãƒ³ãƒˆãƒªã¨ã—ã¦æ ¼ç´ã•ã‚Œã‚‹éµã¯ã€ç§˜å¯†éµã‹ã€å¯¾å¿œã™ã‚‹å…¬é–‹éµã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’ä¼´ã†ç§˜å¯†éµã§ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å‚ç…§ã—ã¦ãã ã•ã„。\fIkeytool\fRコマンドãŒã“ã®ä¸¡æ–¹ã®ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã‚’処ç†ã§ãã‚‹ã®ã«å¯¾ã—ã€\fIjarsigner\fRツールã¯å¾Œè€…ã®ã‚¿ã‚¤ãƒ—ã®ã‚¨ãƒ³ãƒˆãƒªã€ã¤ã¾ã‚Šç§˜å¯†éµã¨ãã‚Œã«é–¢é€£ä»˜ã‘られãŸè¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®ã¿ã‚’処ç†ã—ã¾ã™ã€‚
 .sp
-\fB¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¨¥ó¥È¥ê\fR: ³Æ¥¨¥ó¥È¥ê¤Ï¡¢Âè»°¼Ô¤«¤é¤Î¸ø³«¸°¾ÚÌÀ½ñ¤ò1¤Ä´Þ¤ó¤Ç¤¤¤Þ¤¹¡£¤³¤Î¥¨¥ó¥È¥ê¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¤½¤ì¤Ï¡¢¾ÚÌÀ½ñÆâ¤Î¸ø³«¸°¤¬¡¢¾ÚÌÀ½ñ¤ÎSubject(½êÍ­¼Ô)¤Ë¤è¤Ã¤ÆÆÃÄꤵ¤ì¤ë¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤ËͳÍ褹¤ë¤â¤Î¤Ç¤¢¤ë¤³¤È¤ò¡¢¥­¡¼¥¹¥È¥¢¤Î½êÍ­¼Ô¤¬¿®Íꤹ¤ë¤«¤é¤Ç¤¹¡£¾ÚÌÀ½ñ¤Îȯ¹Ô¼Ô¤Ï¡¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤½¤ÎÆâÍƤòÊݾڤ·¤Þ¤¹¡£
+\fBä¿¡é ¼ã§ãる証明書ã®ã‚¨ãƒ³ãƒˆãƒª\fR: å„エントリã¯ã€ç¬¬ä¸‰è€…ã‹ã‚‰ã®å…¬é–‹éµè¨¼æ˜Žæ›¸ã‚’1ã¤å«ã‚“ã§ã„ã¾ã™ã€‚ã“ã®ã‚¨ãƒ³ãƒˆãƒªã¯ã€ä¿¡é ¼ã§ãる証明書ã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãã‚Œã¯ã€è¨¼æ˜Žæ›¸å†…ã®å…¬é–‹éµãŒã€è¨¼æ˜Žæ›¸ã®Subject(所有者)ã«ã‚ˆã£ã¦ç‰¹å®šã•ã‚Œã‚‹ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«ç”±æ¥ã™ã‚‹ã‚‚ã®ã§ã‚ã‚‹ã“ã¨ã‚’ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®æ‰€æœ‰è€…ãŒä¿¡é ¼ã™ã‚‹ã‹ã‚‰ã§ã™ã€‚証明書ã®ç™ºè¡Œè€…ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã“ã¨ã«ã‚ˆã£ã¦ã€ãã®å†…容をä¿è¨¼ã—ã¾ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾
+キーストアã®åˆ¥å
 .RS 4
-¥­¡¼¥¹¥È¥¢¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê(¸°¤ª¤è¤Ó¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¥¨¥ó¥È¥ê)¤Ï¡¢°ì°Õ¤ÎÊÌ̾¤ò²ð¤·¤Æ¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤¹¡£
+キーストアã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒª(éµãŠã‚ˆã³ä¿¡é ¼ã§ãる証明書エントリ)ã¯ã€ä¸€æ„ã®åˆ¥åを介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•ã‚Œã¾ã™ã€‚
 .sp
-ÊÌ̾¤ò»ØÄꤹ¤ë¤Î¤Ï¡¢\fI\-genseckey\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤ÆÈëÌ©¸°¤òÀ¸À®¤·¤¿¤ê¡¢\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¸°¥Ú¥¢(¸ø³«¸°¤ÈÈëÌ©¸°)¤òÀ¸À®¤·¤¿¤ê¡¢\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤ËÄɲ乤ë¤Ê¤É¡¢ÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤ò¥­¡¼¥¹¥È¥¢¤ËÄɲ乤ë¾ì¹ç¤Ç¤¹¡£¤³¤ì°Ê¸å¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¥¨¥ó¥Æ¥£¥Æ¥£¤ò»²¾È¤¹¤ë¾ì¹ç¤Ï¡¢¤³¤Î¤È¤­¤Ë»ØÄꤷ¤¿ÊÌ̾¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+別åを指定ã™ã‚‹ã®ã¯ã€\fI\-genseckey\fRコマンドを使用ã—ã¦ç§˜å¯†éµã‚’生æˆã—ãŸã‚Šã€\fI\-genkeypair\fRコマンドを使用ã—ã¦éµãƒšã‚¢(公開éµã¨ç§˜å¯†éµ)を生æˆã—ãŸã‚Šã€\fI\-importcert\fRコマンドを使用ã—ã¦è¨¼æ˜Žæ›¸ã¾ãŸã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¿½åŠ ã™ã‚‹ãªã©ã€ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’キーストアã«è¿½åŠ ã™ã‚‹å ´åˆã§ã™ã€‚ã“れ以後ã€\fIkeytool\fRコマンドã§ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’å‚ç…§ã™ã‚‹å ´åˆã¯ã€ã“ã®ã¨ãã«æŒ‡å®šã—ãŸåˆ¥åを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¤¿¤È¤¨¤Ð¡¢\fIduke\fR¤È¤¤¤¦ÊÌ̾¤ò»ÈÍѤ·¤Æ¿·¤·¤¤¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤òÀ¸À®¤·¡¢¸ø³«¸°¤ò¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤¹¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ãŸã¨ãˆã°ã€\fIduke\fRã¨ã„ã†åˆ¥åを使用ã—ã¦æ–°ã—ã„公開éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã‚’生æˆã—ã€å…¬é–‹éµã‚’自己署å証明書ã§ãƒ©ãƒƒãƒ—ã™ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .if n \{\
 .RS 4
@@ -1154,7 +1154,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤ÎÎã¤Ç¤Ï¡¢½é´ü¥Ñ¥¹¥ï¡¼¥É¤È¤·¤Æ\fIdukekeypasswd\fR¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£°Ê¸å¡¢ÊÌ̾\fIduke\fR¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ÈëÌ©¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ï¡¢¤³¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬Íפˤʤê¤Þ¤¹¡£Duke¤ÎÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò¤¢¤È¤«¤éÊѹ¹¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€åˆæœŸãƒ‘スワードã¨ã—ã¦\fIdukekeypasswd\fRを指定ã—ã¦ã„ã¾ã™ã€‚以後ã€åˆ¥å\fIduke\fRã«é–¢é€£ä»˜ã‘られãŸç§˜å¯†éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã¯ã€ã“ã®ãƒ‘スワードãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚Dukeã®ç§˜å¯†éµã®ãƒ‘スワードをã‚ã¨ã‹ã‚‰å¤‰æ›´ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1165,29 +1165,29 @@
 .if n \{\
 .RE
 .\}
-¥Ñ¥¹¥ï¡¼¥É¤¬¡¢\fIdukekeypasswd\fR¤«¤é\fInewpass\fR¤ËÊѹ¹¤µ¤ì¤Þ¤¹¡£¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£É¬Íפʥѥ¹¥ï¡¼¥É¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+パスワードãŒã€\fIdukekeypasswd\fRã‹ã‚‰\fInewpass\fRã«å¤‰æ›´ã•ã‚Œã¾ã™ã€‚テストを目的ã¨ã™ã‚‹å ´åˆã€ã¾ãŸã¯å®‰å…¨ã§ã‚ã‚‹ã“ã¨ãŒã‚ã‹ã£ã¦ã„るシステムã§å®Ÿè¡Œã™ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。必è¦ãªãƒ‘スワードã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ
+キーストアã®å®Ÿè£…
 .RS 4
-\fIjava\&.security\fR¥Ñ¥Ã¥±¡¼¥¸¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë\fIKeyStore\fR¥¯¥é¥¹¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤ª¤è¤Ó¾ðÊó¤ÎÊѹ¹¤ò¹Ô¤¦¤¿¤á¤Î¡¢ÌÀ³Î¤ËÄêµÁ¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¸ÇÄê¼ÂÁõ¤È¤·¤Æ¤Ï¡¢¤½¤ì¤¾¤ì¤¬ÆÃÄê¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤òÂоݤȤ¹¤ëÊ£¿ô¤Î°Û¤Ê¤ë¼ÂÁõ¤¬Â¸ºß²Äǽ¤Ç¤¹¡£
+\fIjava\&.security\fRパッケージã§æä¾›ã•ã‚Œã¦ã„ã‚‹\fIKeyStore\fRクラスã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®æƒ…å ±ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŠã‚ˆã³æƒ…å ±ã®å¤‰æ›´ã‚’è¡Œã†ãŸã‚ã®ã€æ˜Žç¢ºã«å®šç¾©ã•ã‚ŒãŸã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚キーストアã®å›ºå®šå®Ÿè£…ã¨ã—ã¦ã¯ã€ãã‚Œãžã‚ŒãŒç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’対象ã¨ã™ã‚‹è¤‡æ•°ã®ç•°ãªã‚‹å®Ÿè£…ãŒå­˜åœ¨å¯èƒ½ã§ã™ã€‚
 .sp
-¸½ºß¡¢\fIkeytool\fR¤È\fIjarsigner\fR¤Î2¤Ä¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤È¡¢Policy Tool¤È¤¤¤¦Ì¾Á°¤ÎGUI¥Ù¡¼¥¹¤Î¥Ä¡¼¥ë¤¬¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤Ï\fIpublic\fR¤Ç¤¢¤ë¤¿¤á¡¢¥æ¡¼¥¶¡¼¤ÏKeyStore¤ò»ÈÍѤ·¤¿Â¾¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤âºîÀ®¤Ç¤­¤Þ¤¹¡£
+ç¾åœ¨ã€\fIkeytool\fRã¨\fIjarsigner\fRã®2ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ールã¨ã€Policy Toolã¨ã„ã†åå‰ã®GUIベースã®ãƒ„ールãŒã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¦ã„ã¾ã™ã€‚\fIKeyStore\fRクラスã¯\fIpublic\fRã§ã‚ã‚‹ãŸã‚ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯KeyStoreを使用ã—ãŸä»–ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ã‚¢ãƒ—リケーションも作æˆã§ãã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Ë¤Ï¡¢Oracle¤¬Ä󶡤¹¤ëÁȹþ¤ß¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢JKS¤È¤¤¤¦Ì¾Á°¤ÎÆȼ«¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(·Á¼°)¤òÍøÍѤ¹¤ë¤â¤Î¤Ç¡¢¥­¡¼¥¹¥È¥¢¤ò¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤Î¼ÂÁõ¤Ç¤Ï¡¢¸Ä¡¹¤ÎÈëÌ©¸°¤Ï¸ÄÊ̤Υѥ¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤÎÀ°¹çÀ­¤â(ÈëÌ©¸°¤È¤ÏÊ̤Î)¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
+キーストアã«ã¯ã€OracleãŒæä¾›ã™ã‚‹çµ„è¾¼ã¿ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å®Ÿè£…ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€JKSã¨ã„ã†åå‰ã®ç‹¬è‡ªã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(å½¢å¼)を利用ã™ã‚‹ã‚‚ã®ã§ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’ファイルã¨ã—ã¦å®Ÿè£…ã—ã¦ã„ã¾ã™ã€‚ã“ã®å®Ÿè£…ã§ã¯ã€å€‹ã€…ã®ç§˜å¯†éµã¯å€‹åˆ¥ã®ãƒ‘スワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å…¨ä½“ã®æ•´åˆæ€§ã‚‚(秘密éµã¨ã¯åˆ¥ã®)パスワードã«ã‚ˆã£ã¦ä¿è­·ã•ã‚Œã¾ã™ã€‚
 .sp
-¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ï¡¢¥×¥í¥Ð¥¤¥À¥Ù¡¼¥¹¤Ç¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢\fIKeyStore\fR¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¥µ¡¼¥Ó¥¹¡¦¥×¥í¥Ð¥¤¥À¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SPI)¤Ë´ð¤Å¤¤¤Æ¼ÂÁõ¤µ¤ì¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢Âбþ¤¹¤ë\fIKeystoreSpi\fRÃê¾Ý¥¯¥é¥¹(¤³¤ì¤â\fIjava\&.security\fR¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹)¤¬¤¢¤ê¡¢¤³¤Î¥¯¥é¥¹¤¬¡¢¥×¥í¥Ð¥¤¥À¤¬¼ÂÁõ¤¹¤ëɬÍפΤ¢¤ëService Provider Interface¤Î¥á¥½¥Ã¥É¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤Ç¡¢\fI¥×¥í¥Ð¥¤¥À\fR¤È¤Ï¡¢Java Security API¤Ë¤è¤Ã¤Æ¥¢¥¯¥»¥¹²Äǽ¤Ê¥µ¡¼¥Ó¥¹¤Î¥µ¥Ö¥»¥Ã¥È¤ËÂФ·¡¢¤½¤Î¸ÇÄê¼ÂÁõ¤òÄ󶡤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î½¸¹ç¤Î¤³¤È¤Ç¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¤Ë¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.html¤Ë¤¢¤ë
-Java°Å¹æ²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î¥×¥í¥Ð¥¤¥À¤Î¼ÂÁõÊýË¡¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¥×¥í¥Ð¥¤¥À¤ò¼ÂÁõ¤·¡¢\fIKeystoreSpi\fR¥µ¥Ö¥¯¥é¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+キーストアã®å®Ÿè£…ã¯ã€ãƒ—ロãƒã‚¤ãƒ€ãƒ™ãƒ¼ã‚¹ã§ã™ã€‚具体的ã«ã¯ã€\fIKeyStore\fRã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã‚‹ã‚¢ãƒ—リケーション・インタフェースãŒã‚µãƒ¼ãƒ“ス・プロãƒã‚¤ãƒ€ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SPI)ã«åŸºã¥ã„ã¦å®Ÿè£…ã•ã‚Œã¾ã™ã€‚ã¤ã¾ã‚Šã€å¯¾å¿œã™ã‚‹\fIKeystoreSpi\fR抽象クラス(ã“れも\fIjava\&.security\fRパッケージã«å«ã¾ã‚Œã¦ã„ã¾ã™)ãŒã‚ã‚Šã€ã“ã®ã‚¯ãƒ©ã‚¹ãŒã€ãƒ—ロãƒã‚¤ãƒ€ãŒå®Ÿè£…ã™ã‚‹å¿…è¦ã®ã‚ã‚‹Service Provider Interfaceã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’定義ã—ã¦ã„ã¾ã™ã€‚ã“ã“ã§ã€\fIプロãƒã‚¤ãƒ€\fRã¨ã¯ã€Java Security APIã«ã‚ˆã£ã¦ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãªã‚µãƒ¼ãƒ“スã®ã‚µãƒ–セットã«å¯¾ã—ã€ãã®å›ºå®šå®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ‘ッケージã¾ãŸã¯ãƒ‘ッケージã®é›†åˆã®ã“ã¨ã§ã™ã€‚キーストアã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ã«ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider\&.htmlã«ã‚ã‚‹
+Javaæš—å·åŒ–アーキテクãƒãƒ£ã®ãƒ—ロãƒã‚¤ãƒ€ã®å®Ÿè£…方法ã§èª¬æ˜Žã—ã¦ã„るよã†ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒ—ロãƒã‚¤ãƒ€ã‚’実装ã—ã€\fIKeystoreSpi\fRサブクラスã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢\fIKeyStore\fR¥¯¥é¥¹¤¬Ä󶡤¹¤ë\fIgetInstance\fR¥Õ¥¡¥¯¥È¥ê¡¦¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¡¢ÍÍ¡¹¤Ê¥×¥í¥Ð¥¤¥À¤«¤é°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Ï¡¢¥­¡¼¥¹¥È¥¢¾ðÊó¤Î³ÊǼ·Á¼°¤È¥Ç¡¼¥¿·Á¼°¤òÄêµÁ¤¹¤ë¤È¤È¤â¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤ÎÈó¸ø³«/ÈëÌ©¸°¤È¥­¡¼¥¹¥È¥¢¤ÎÀ°¹çÀ­¤òÊݸ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à¤òÄêµÁ¤·¤Þ¤¹¡£°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ë¤Ï¡¢¸ß´¹À­¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+アプリケーションã§ã¯ã€\fIKeyStore\fRクラスãŒæä¾›ã™ã‚‹\fIgetInstance\fRファクトリ・メソッドを使用ã™ã‚‹ã“ã¨ã§ã€æ§˜ã€…ãªãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’é¸æŠžã§ãã¾ã™ã€‚キーストアã®ã‚¿ã‚¤ãƒ—ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…å ±ã®æ ¼ç´å½¢å¼ã¨ãƒ‡ãƒ¼ã‚¿å½¢å¼ã‚’定義ã™ã‚‹ã¨ã¨ã‚‚ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®éžå…¬é–‹/秘密éµã¨ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®æ•´åˆæ€§ã‚’ä¿è­·ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’定義ã—ã¾ã™ã€‚ç•°ãªã‚‹ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã«ã¯ã€äº’æ›æ€§ã¯ã‚ã‚Šã¾ã›ã‚“。
 .sp
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¼ÂÁõ¤ÇÆ°ºî¤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¡¦¥é¥¤¥ó¤ÇÅϤµ¤ì¤¿¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ°·¤Ã¤Æ¡¢\fIFileInputStream\fR¤ËÊÑ´¹¤·¡¢¤³¤³¤«¤é¥­¡¼¥¹¥È¥¢¾ðÊó¤ò¥í¡¼¥É¤·¤Þ¤¹¡£\fIjarsigner\fR¤ª¤è¤Ó\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢URL¤Ç»ØÄê¤Ç¤­¤ëǤ°Õ¤Î¾ì½ê¤«¤é¥­¡¼¥¹¥È¥¢¤òÆɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIkeytool\fRコマンドã¯ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ãƒ™ãƒ¼ã‚¹ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å®Ÿè£…ã§å‹•ä½œã—ã¾ã™ã€‚コマンド・ラインã§æ¸¡ã•ã‚ŒãŸã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å ´æ‰€ã‚’ファイルåã¨ã—ã¦æ‰±ã£ã¦ã€\fIFileInputStream\fRã«å¤‰æ›ã—ã€ã“ã“ã‹ã‚‰ã‚­ãƒ¼ã‚¹ãƒˆã‚¢æƒ…報をロードã—ã¾ã™ã€‚\fIjarsigner\fRãŠã‚ˆã³\fIpolicytool\fRコマンドã¯ã€URLã§æŒ‡å®šã§ãã‚‹ä»»æ„ã®å ´æ‰€ã‹ã‚‰ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’読ã¿å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fIkeytool\fR¤È\fIjarsigner\fR¤Î¾ì¹ç¡¢\fI\-storetype\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Policy Tool¤Î¾ì¹ç¤Ï¡¢¡Ö¥­¡¼¥¹¥È¥¢¡×¥á¥Ë¥å¡¼¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fIkeytool\fRã¨\fIjarsigner\fRã®å ´åˆã€\fI\-storetype\fRオプションを使用ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚Policy Toolã®å ´åˆã¯ã€ã€Œã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã€ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã§ãã¾ã™ã€‚
 .sp
-¥æ¡¼¥¶¡¼¤¬¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤵ¤ì¤¿\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ˴ð¤Å¤¤¤Æ¡¢¥Ä¡¼¥ë¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤¬ÁªÂò¤µ¤ì¤Þ¤¹¡£¤³¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.security\fR¤È¸Æ¤Ð¤ì¡¢Windows¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home\elib\esecurity\fR¡¢Oracle Solaris¤Ç¤Ï\fIjava\&.home/lib/security\fR¤Ë¤¢¤ê¤Þ¤¹¡£\fIjava\&.home\fR¤Ï¡¢¼Â¹Ô»þ´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢SDK¤Þ¤¿¤ÏJava Runtime Environment (JRE)¤ÎºÇ¾å°Ì¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£
+ユーザーãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を明示的ã«æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã§æŒ‡å®šã•ã‚ŒãŸ\fIkeystore\&.type\fRプロパティã®å€¤ã«åŸºã¥ã„ã¦ã€ãƒ„ールã«ã‚ˆã£ã¦ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ãŒé¸æŠžã•ã‚Œã¾ã™ã€‚ã“ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイルã¯\fIjava\&.security\fRã¨å‘¼ã°ã‚Œã€Windowsã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ディレクトリ\fIjava\&.home\elib\esecurity\fRã€Oracle Solarisã§ã¯\fIjava\&.home/lib/security\fRã«ã‚ã‚Šã¾ã™ã€‚\fIjava\&.home\fRã¯ã€å®Ÿè¡Œæ™‚環境ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚\fIjre\fRディレクトリã¯ã€SDKã¾ãŸã¯Java Runtime Environment (JRE)ã®æœ€ä¸Šä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚
 .sp
-³Æ¥Ä¡¼¥ë¤Ï¡¢\fIkeystore\&.type\fR¤ÎÃͤò¼èÆÀ¤·¡¢¤³¤ÎÃͤǻØÄꤵ¤ì¤¿¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¡¢¸½ºß¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥Ð¥¤¥À¤òÄ´¤Ù¤Þ¤¹¡£¤½¤Î¥×¥í¥Ð¥¤¥À¤«¤é¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ·¤Þ¤¹¡£\fIKeyStore\fR¥¯¥é¥¹¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ëstatic¥á¥½¥Ã¥É\fIgetDefaultType\fR¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ä¥¢¥×¥ì¥Ã¥È¤«¤é\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥³¡¼¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×(\fIkeystore\&.type\fR¥×¥í¥Ñ¥Æ¥£¤Ç»ØÄꤵ¤ì¤¿¥¿¥¤¥×)¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
+å„ツールã¯ã€\fIkeystore\&.type\fRã®å€¤ã‚’å–å¾—ã—ã€ã“ã®å€¤ã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã‚’実装ã—ã¦ã„るプロãƒã‚¤ãƒ€ãŒè¦‹ã¤ã‹ã‚‹ã¾ã§ã€ç¾åœ¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ—ロãƒã‚¤ãƒ€ã‚’調ã¹ã¾ã™ã€‚ãã®ãƒ—ロãƒã‚¤ãƒ€ã‹ã‚‰ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã—ã¾ã™ã€‚\fIKeyStore\fRクラスã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹staticメソッド\fIgetDefaultType\fRを使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションやアプレットã‹ã‚‰\fIkeystore\&.type\fRプロパティã®å€¤ã‚’å–å¾—ã§ãã¾ã™ã€‚次ã®ã‚³ãƒ¼ãƒ‰ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—(\fIkeystore\&.type\fRプロパティã§æŒ‡å®šã•ã‚ŒãŸã‚¿ã‚¤ãƒ—)ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1198,7 +1198,7 @@
 .if n \{\
 .RE
 .\}
-¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ï\fIjks\fR¤Ç¡¢¤³¤ì¤ÏOracle¤¬Ä󶡤¹¤ëÆȼ«¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¼¡¤Î¹Ô¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+デフォルトã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã¯\fIjks\fRã§ã€ã“ã‚Œã¯OracleãŒæä¾›ã™ã‚‹ç‹¬è‡ªã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã§ã™ã€‚ã“ã‚Œã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ファイル内ã®æ¬¡ã®è¡Œã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1209,7 +1209,7 @@
 .if n \{\
 .RE
 .\}
-³Æ¥Ä¡¼¥ë¤Ç¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¾å¤Î¹Ô¤òÊѹ¹¤·¤ÆÊ̤Υ­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIpkcs12\fR¤È¸Æ¤Ð¤ì¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¡¦¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ë¾ì¹ç¡¢¹Ô¤ò¼¡¤Î¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
+å„ツールã§ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆä»¥å¤–ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…を使用ã™ã‚‹ã«ã¯ã€ä¸Šã®è¡Œã‚’変更ã—ã¦åˆ¥ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—を指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIpkcs12\fRã¨å‘¼ã°ã‚Œã‚‹ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ã‚¿ã‚¤ãƒ—ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®å®Ÿè£…ã‚’æä¾›ã™ã‚‹ãƒ—ロãƒã‚¤ãƒ€ãƒ»ãƒ‘ッケージãŒã‚ã‚‹å ´åˆã€è¡Œã‚’次ã®ã‚ˆã†ã«å¤‰æ›´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1220,56 +1220,56 @@
 .if n \{\
 .RE
 .\}
-\fBÃí°Õ:\fR
-¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Î»ØÄê¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢JKS¤Èjks¤ÏƱ¤¸¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+\fB注æ„:\fR
+キーストアã®ã‚¿ã‚¤ãƒ—ã®æŒ‡å®šã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€JKSã¨jksã¯åŒã˜ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ
+証明書
 .RS 4
-¾ÚÌÀ½ñ(¸ø³«¸°¾ÚÌÀ½ñ)¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(ȯ¹Ô¼Ô)¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Î¤³¤È¤Ç¤¹¡£¾ÚÌÀ½ñ¤Ë¤Ï¡¢Â¾¤Î¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£(½ð̾¼Ô)¤Î¸ø³«¸°(¤ª¤è¤Ó¤½¤Î¾¤Î¾ðÊó)¤¬ÆÃÊ̤ÊÃͤò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£¼¡¤ÎÍѸì¤Ï¡¢¾ÚÌÀ½ñ¤Ë´ØÏ¢¤·¤Æ¤¤¤Þ¤¹¡£
+証明書(公開éµè¨¼æ˜Žæ›¸)ã¨ã¯ã€ã‚るエンティティ(発行者)ã‹ã‚‰ã®ãƒ‡ã‚¸ã‚¿ãƒ«ç½²å付ãã®æ–‡æ›¸ã®ã“ã¨ã§ã™ã€‚証明書ã«ã¯ã€ä»–ã®ã‚るエンティティ(ç½²å者)ã®å…¬é–‹éµ(ãŠã‚ˆã³ãã®ä»–ã®æƒ…å ±)ãŒç‰¹åˆ¥ãªå€¤ã‚’æŒã£ã¦ã„ã‚‹ã“ã¨ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã™ã€‚次ã®ç”¨èªžã¯ã€è¨¼æ˜Žæ›¸ã«é–¢é€£ã—ã¦ã„ã¾ã™ã€‚
 .sp
-\fB¸ø³«¸°\fR: ¸ø³«¸°¤Ï¡¢ÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¿ô¤Ç¤¹¡£¸ø³«¸°¤Ï¡¢³ºÅö¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤È¤Î´Ö¤Ë¿®Íê¤Ç¤­¤ë´Ø·¸¤ò»ý¤ÄɬÍפ¬¤¢¤ë¤¹¤Ù¤Æ¤Î¿Í¤ËÂФ·¤Æ¸ø³«¤¹¤ë¤³¤È¤ò°Õ¿Þ¤·¤¿¤â¤Î¤Ç¤¹¡£¸ø³«¸°¤Ï¡¢½ð̾¤ò¸¡¾Ú¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fB公開éµ\fR: 公開éµã¯ã€ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«é–¢é€£ä»˜ã‘られãŸæ•°ã§ã™ã€‚公開éµã¯ã€è©²å½“ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã®é–“ã«ä¿¡é ¼ã§ãる関係をæŒã¤å¿…è¦ãŒã‚ã‚‹ã™ã¹ã¦ã®äººã«å¯¾ã—ã¦å…¬é–‹ã™ã‚‹ã“ã¨ã‚’æ„図ã—ãŸã‚‚ã®ã§ã™ã€‚公開éµã¯ã€ç½²åを検証ã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥Ç¥¸¥¿¥ë½ð̾\fR: ¥Ç¡¼¥¿¤¬¥Ç¥¸¥¿¥ë½ð̾¤µ¤ì¤ë¤È¡¢¤½¤Î¥Ç¡¼¥¿¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤È¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤¬¥Ç¡¼¥¿¤ÎÆâÍƤˤĤ¤¤ÆÃΤäƤ¤¤ë¤³¤È¤ò¾ÚÌÀ½ñ¤¹¤ë½ð̾¤È¤È¤â¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ¥Ç¡¼¥¿¤Ë½ð̾¤òÉÕ¤±¤ë¤È¡¢¥Ç¡¼¥¿¤Îµ¶Â¤¤ÏÉÔ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
+\fBデジタル署å\fR: データãŒãƒ‡ã‚¸ã‚¿ãƒ«ç½²åã•ã‚Œã‚‹ã¨ã€ãã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒãƒ‡ãƒ¼ã‚¿ã®å†…容ã«ã¤ã„ã¦çŸ¥ã£ã¦ã„ã‚‹ã“ã¨ã‚’証明書ã™ã‚‹ç½²åã¨ã¨ã‚‚ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚エンティティã®ç§˜å¯†éµã‚’使用ã—ã¦ãƒ‡ãƒ¼ã‚¿ã«ç½²åを付ã‘ã‚‹ã¨ã€ãƒ‡ãƒ¼ã‚¿ã®å½é€ ã¯ä¸å¯èƒ½ã«ãªã‚Šã¾ã™ã€‚
 .sp
-\fB¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£\fR: ¥¨¥ó¥Æ¥£¥Æ¥£¤ò¥¢¥É¥ì¥¹»ØÄꤹ¤ë´ûÃΤÎÊýË¡¡£¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¤Ï¡¢¸ø³«¸°¤ò¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤Ë¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£¸ø³«¸°¤Î¾¤Ë¤â¡¢Oracle Solaris UID¤äÅŻҥ᡼¥ë¡¦¥¢¥É¥ì¥¹¡¢X\&.509¼±ÊÌ̾¤Ê¤É¡¢ÍÍ¡¹¤Ê¤â¤Î¤ò¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤È¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fBアイデンティティ\fR: エンティティをアドレス指定ã™ã‚‹æ—¢çŸ¥ã®æ–¹æ³•ã€‚システムã«ã‚ˆã£ã¦ã¯ã€å…¬é–‹éµã‚’アイデンティティã«ã™ã‚‹ã‚‚ã®ãŒã‚ã‚Šã¾ã™ã€‚公開éµã®ä»–ã«ã‚‚ã€Oracle Solaris UIDã‚„é›»å­ãƒ¡ãƒ¼ãƒ«ãƒ»ã‚¢ãƒ‰ãƒ¬ã‚¹ã€X\&.509識別åãªã©ã€æ§˜ã€…ãªã‚‚ã®ã‚’アイデンティティã¨ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fB½ð̾\fR: ½ð̾¤Ï¡¢¤Ê¤ó¤é¤«¤Î¥Ç¡¼¥¿¤ò´ð¤Ë¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤ò»ÈÍѤ·¤Æ·×»»¤µ¤ì¤Þ¤¹¡£½ð̾¼Ô¡¢¾ÚÌÀ½ñ¤Î¾ì¹ç¤Ïȯ¹Ô¼Ô¤È¤â¸Æ¤Ð¤ì¤Þ¤¹¡£
+\fBç½²å\fR: ç½²åã¯ã€ãªã‚“らã‹ã®ãƒ‡ãƒ¼ã‚¿ã‚’基ã«ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã‚’使用ã—ã¦è¨ˆç®—ã•ã‚Œã¾ã™ã€‚ç½²å者ã€è¨¼æ˜Žæ›¸ã®å ´åˆã¯ç™ºè¡Œè€…ã¨ã‚‚呼ã°ã‚Œã¾ã™ã€‚
 .sp
-\fBÈëÌ©¸°\fR: ÈëÌ©¸°¤ÏÆÃÄê¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Î¤ß¤¬ÃΤäƤ¤¤ë¿ô¤Î¤³¤È¤Ç¡¢¤³¤Î¿ô¤Î¤³¤È¤ò¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈëÌ©¸°¤È¤¤¤¤¤Þ¤¹¡£ÈëÌ©¸°¤Ï¡¢Â¾¤ËÃΤé¤ì¤Ê¤¤¤è¤¦¤ËÈëÌ©¤Ë¤·¤Æ¤ª¤¯¤³¤È¤¬Á°Äó¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ÈëÌ©¸°¤È¸ø³«¸°¤Ï¡¢¤¹¤Ù¤Æ¤Î¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤ÇÂФˤʤäƸºß¤·¤Æ¤¤¤Þ¤¹¡£DSA¤Ê¤É¤Îŵ·¿Åª¤Ê¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢1¤Ä¤ÎÈëÌ©¸°¤ÏÀµ³Î¤Ë1¤Ä¤Î¸ø³«¸°¤ËÂбþ¤·¤Þ¤¹¡£ÈëÌ©¸°¤Ï¡¢½ð̾¤ò·×»»¤¹¤ë¤Î¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fB秘密éµ\fR: 秘密éµã¯ç‰¹å®šã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã¿ãŒçŸ¥ã£ã¦ã„ã‚‹æ•°ã®ã“ã¨ã§ã€ã“ã®æ•°ã®ã“ã¨ã‚’ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ç§˜å¯†éµã¨ã„ã„ã¾ã™ã€‚秘密éµã¯ã€ä»–ã«çŸ¥ã‚‰ã‚Œãªã„よã†ã«ç§˜å¯†ã«ã—ã¦ãŠãã“ã¨ãŒå‰æã«ãªã£ã¦ã„ã¾ã™ã€‚秘密éµã¨å…¬é–‹éµã¯ã€ã™ã¹ã¦ã®å…¬é–‹éµæš—å·åŒ–システムã§å¯¾ã«ãªã£ã¦å­˜åœ¨ã—ã¦ã„ã¾ã™ã€‚DSAãªã©ã®å…¸åž‹çš„ãªå…¬é–‹éµæš—å·åŒ–システムã®å ´åˆã€1ã¤ã®ç§˜å¯†éµã¯æ­£ç¢ºã«1ã¤ã®å…¬é–‹éµã«å¯¾å¿œã—ã¾ã™ã€‚秘密éµã¯ã€ç½²åを計算ã™ã‚‹ã®ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¥¨¥ó¥Æ¥£¥Æ¥£\fR: ¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¿Í¡¢ÁÈ¿¥¡¢¥×¥í¥°¥é¥à¡¢¥³¥ó¥Ô¥å¡¼¥¿¡¢´ë¶È¡¢¶ä¹Ô¤Ê¤É¡¢°ìÄê¤ÎÅٹ礤¤Ç¿®Íê¤ÎÂоݤȤʤëÍÍ¡¹¤Ê¤â¤Î¤ò»Ø¤·¤Þ¤¹¡£
+\fBエンティティ\fR: エンティティã¯ã€äººã€çµ„ç¹”ã€ãƒ—ログラムã€ã‚³ãƒ³ãƒ”ュータã€ä¼æ¥­ã€éŠ€è¡Œãªã©ã€ä¸€å®šã®åº¦åˆã„ã§ä¿¡é ¼ã®å¯¾è±¡ã¨ãªã‚‹æ§˜ã€…ãªã‚‚ã®ã‚’指ã—ã¾ã™ã€‚
 .sp
-¸ø³«¸°°Å¹æ²½¤Ç¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¸ø³«¸°¤Ë¥¢¥¯¥»¥¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Â絬ÌϤʥͥåȥ¥¯´Ä¶­¤Ç¤Ï¡¢¸ß¤¤¤ËÄÌ¿®¤·¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£´Ö¤Ç°ÊÁ°¤Î´Ø·¸¤¬°ú³¤­³ÎΩ¤µ¤ì¤Æ¤¤¤ë¤È²¾Äꤷ¤¿¤ê¡¢»ÈÍѤµ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¸ø³«¸°¤ò¼ý¤á¤¿¿®Íê¤Ç¤­¤ë¥ê¥Ý¥¸¥È¥ê¤¬Â¸ºß¤¹¤ë¤È²¾Äꤷ¤¿¤ê¤¹¤ë¤³¤È¤ÏÉÔ²Äǽ¤Ç¤¹¡£¤³¤Î¤è¤¦¤Ê¸ø³«¸°¤ÎÇÛÉۤ˴ؤ¹¤ëÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¾ÚÌÀ½ñ¤¬¹Í°Æ¤µ¤ì¤Þ¤·¤¿¡£¸½ºß¤Ç¤Ï¡¢¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤¬¿®Íê¤Ç¤­¤ëÂè»°¼Ô¤È¤·¤Æµ¡Ç½¤·¤Þ¤¹¡£CA¤Ï¡¢Â¾¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Î¾ÚÌÀ½ñ¤Ë½ð̾¤¹¤ë(ȯ¹Ô¤¹¤ë)¹Ô°Ù¤ò¡¢¿®Íꤷ¤ÆǤ¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥Æ¥£¥Æ¥£(´ë¶È¤Ê¤É)¤Ç¤¹¡£CA¤ÏˡΧ¾å¤Î·ÀÌó¤Ë¹´Â«¤µ¤ì¤ë¤Î¤Ç¡¢Í­¸ú¤«¤Ä¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¤ß¤òºîÀ®¤¹¤ë¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£VeriSign¡¢Thawte¡¢Entrust¤ò¤Ï¤¸¤á¡¢Â¿¤¯¤Î¸øŪ¤Ê¾ÚÌÀ½ñȯ¹Ô¶É¤¬Â¸ºß¤·¤Þ¤¹¡£
+公開éµæš—å·åŒ–ã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®å…¬é–‹éµã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚大è¦æ¨¡ãªãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ç’°å¢ƒã§ã¯ã€äº’ã„ã«é€šä¿¡ã—ã¦ã„るエンティティ間ã§ä»¥å‰ã®é–¢ä¿‚ãŒå¼•ç¶šã確立ã•ã‚Œã¦ã„ã‚‹ã¨ä»®å®šã—ãŸã‚Šã€ä½¿ç”¨ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®å…¬é–‹éµã‚’åŽã‚ãŸä¿¡é ¼ã§ãるリãƒã‚¸ãƒˆãƒªãŒå­˜åœ¨ã™ã‚‹ã¨ä»®å®šã—ãŸã‚Šã™ã‚‹ã“ã¨ã¯ä¸å¯èƒ½ã§ã™ã€‚ã“ã®ã‚ˆã†ãªå…¬é–‹éµã®é…布ã«é–¢ã™ã‚‹å•é¡Œã‚’解決ã™ã‚‹ãŸã‚ã«è¨¼æ˜Žæ›¸ãŒè€ƒæ¡ˆã•ã‚Œã¾ã—ãŸã€‚ç¾åœ¨ã§ã¯ã€è¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ãŒä¿¡é ¼ã§ãる第三者ã¨ã—ã¦æ©Ÿèƒ½ã—ã¾ã™ã€‚CAã¯ã€ä»–ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®è¨¼æ˜Žæ›¸ã«ç½²åã™ã‚‹(発行ã™ã‚‹)行為をã€ä¿¡é ¼ã—ã¦ä»»ã•ã‚Œã¦ã„るエンティティ(ä¼æ¥­ãªã©)ã§ã™ã€‚CAã¯æ³•å¾‹ä¸Šã®å¥‘ç´„ã«æ‹˜æŸã•ã‚Œã‚‹ã®ã§ã€æœ‰åŠ¹ã‹ã¤ä¿¡é ¼ã§ãる証明書ã®ã¿ã‚’作æˆã™ã‚‹ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚VeriSignã€Thawteã€Entrustã‚’ã¯ã˜ã‚ã€å¤šãã®å…¬çš„ãªè¨¼æ˜Žæ›¸ç™ºè¡Œå±€ãŒå­˜åœ¨ã—ã¾ã™ã€‚
 .sp
-Microsoft¤Îǧ¾Ú¥µ¡¼¥Ð¡¼¡¢Entrust¤ÎCAÀ½Éʤʤɤò½ê°ÁÈ¿¥Æâ¤ÇÍøÍѤ¹¤ì¤Ð¡¢Æȼ«¤Î¾ÚÌÀ½ñȯ¹Ô¶É¤ò±¿±Ä¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¾ÚÌÀ½ñ¤Îɽ¼¨¡¢¥¤¥ó¥Ý¡¼¥È¤ª¤è¤Ó¥¨¥¯¥¹¥Ý¡¼¥È¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤òÀ¸À®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+Microsoftã®èªè¨¼ã‚µãƒ¼ãƒãƒ¼ã€Entrustã®CA製å“ãªã©ã‚’所属組織内ã§åˆ©ç”¨ã™ã‚Œã°ã€ç‹¬è‡ªã®è¨¼æ˜Žæ›¸ç™ºè¡Œå±€ã‚’é‹å–¶ã™ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚\fIkeytool\fRコマンドを使用ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ã®è¡¨ç¤ºã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€è‡ªå·±ç½²å証明書を生æˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .sp
-¸½ºß¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ÏX\&.509¾ÚÌÀ½ñ¤òÂоݤˤ·¤Æ¤¤¤Þ¤¹¡£
+ç¾åœ¨ã€\fIkeytool\fRコマンドã¯X\&.509証明書を対象ã«ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-X\&.509¾ÚÌÀ½ñ
+X\&.509証明書
 .RS 4
-X\&.509µ¬³Ê¤Ç¤Ï¡¢¾ÚÌÀ½ñ¤Ë´Þ¤á¤ë¾ðÊó¤¬ÄêµÁ¤µ¤ì¤Æ¤ª¤ê¡¢¤³¤Î¾ðÊó¤ò¾ÚÌÀ½ñ¤Ë½ñ¤­¹þ¤àÊýË¡(¥Ç¡¼¥¿·Á¼°)¤Ë¤Ä¤¤¤Æ¤âµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾ÚÌÀ½ñ¤Î¤¹¤Ù¤Æ¤Î¥Ç¡¼¥¿¤Ï¡¢ASN\&.1/DER¤È¸Æ¤Ð¤ì¤ë2¤Ä¤Î´ØÏ¢µ¬³Ê¤ò»ÈÍѤ·¤ÆÉä¹æ²½¤µ¤ì¤Þ¤¹¡£Abstract Syntax Notation 1¤Ï¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£Definite Encoding Rules¤Ï¡¢¥Ç¡¼¥¿¤ÎÊݸ¤ª¤è¤ÓžÁ÷¤ÎÊýË¡¤Ë¤Ä¤¤¤Æµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£
+X\&.509è¦æ ¼ã§ã¯ã€è¨¼æ˜Žæ›¸ã«å«ã‚る情報ãŒå®šç¾©ã•ã‚Œã¦ãŠã‚Šã€ã“ã®æƒ…報を証明書ã«æ›¸ã込む方法(データ形å¼)ã«ã¤ã„ã¦ã‚‚記述ã•ã‚Œã¦ã„ã¾ã™ã€‚証明書ã®ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã¯ã€ASN\&.1/DERã¨å‘¼ã°ã‚Œã‚‹2ã¤ã®é–¢é€£è¦æ ¼ã‚’使用ã—ã¦ç¬¦å·åŒ–ã•ã‚Œã¾ã™ã€‚Abstract Syntax Notation 1ã¯ãƒ‡ãƒ¼ã‚¿ã«ã¤ã„ã¦è¨˜è¿°ã—ã¦ã„ã¾ã™ã€‚Definite Encoding Rulesã¯ã€ãƒ‡ãƒ¼ã‚¿ã®ä¿å­˜ãŠã‚ˆã³è»¢é€ã®æ–¹æ³•ã«ã¤ã„ã¦è¨˜è¿°ã—ã¦ã„ã¾ã™ã€‚
 .sp
-¤¹¤Ù¤Æ¤ÎX\&.509¾ÚÌÀ½ñ¤Ï¡¢½ð̾¤Î¾¤Ë¼¡¤Î¥Ç¡¼¥¿¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£
+ã™ã¹ã¦ã®X\&.509証明書ã¯ã€ç½²åã®ä»–ã«æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚
 .sp
-\fB¥Ð¡¼¥¸¥ç¥ó\fR: ¾ÚÌÀ½ñ¤ËŬÍѤµ¤ì¤ëX\&.509µ¬³Ê¤Î¥Ð¡¼¥¸¥ç¥ó¤òÆÃÄꤷ¤Þ¤¹¡£¾ÚÌÀ½ñ¤Ë»ØÄê¤Ç¤­¤ë¾ðÊó¤Ï¡¢¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¤Þ¤¹¡£º£¤Î¤È¤³¤í¡¢3¤Ä¤Î¥Ð¡¼¥¸¥ç¥ó¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢v1¡¢v2¡¢v3¤Î¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤ª¤è¤Ó¥¨¥¯¥¹¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£v3¤Î¾ÚÌÀ½ñ¤òÀ¸À®¤·¤Þ¤¹¡£
+\fBãƒãƒ¼ã‚¸ãƒ§ãƒ³\fR: 証明書ã«é©ç”¨ã•ã‚Œã‚‹X\&.509è¦æ ¼ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’特定ã—ã¾ã™ã€‚証明書ã«æŒ‡å®šã§ãる情報ã¯ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã«ã‚ˆã£ã¦ç•°ãªã‚Šã¾ã™ã€‚今ã®ã¨ã“ã‚ã€3ã¤ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€v1ã€v2ã€v3ã®è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚v3ã®è¨¼æ˜Žæ›¸ã‚’生æˆã—ã¾ã™ã€‚
 .sp
-X\&.509 Version 1¤Ï¡¢1988ǯ¤«¤éÍøÍѤµ¤ì¤Æ¹­¤¯ÉáµÚ¤·¤Æ¤ª¤ê¡¢ºÇ¤â°ìÈÌŪ¤Ç¤¹¡£
+X\&.509 Version 1ã¯ã€1988å¹´ã‹ã‚‰åˆ©ç”¨ã•ã‚Œã¦åºƒãæ™®åŠã—ã¦ãŠã‚Šã€æœ€ã‚‚一般的ã§ã™ã€‚
 .sp
-X\&.509 Version 2¤Ç¤Ï¡¢Subject¤äȯ¹Ô¼Ô¤Î̾Á°¤ò¤¢¤È¤ÇºÆÍøÍѤǤ­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢Subject¤Èȯ¹Ô¼Ô¤Î°ì°Õ¼±Ê̻ҤγµÇ°¤¬Æ³Æþ¤µ¤ì¤Þ¤·¤¿¡£¤Û¤È¤ó¤É¤Î¾ÚÌÀ½ñ¥×¥í¥Õ¥¡¥¤¥ëʸ½ñ¤Ç¤Ï¡¢Ì¾Á°¤òºÆ»ÈÍѤ·¤Ê¤¤¤³¤È¤È¡¢¾ÚÌÀ½ñ¤Ç°ì°Õ¤Î¼±Ê̻Ҥò»ÈÍѤ·¤Ê¤¤¤³¤È¤¬¡¢¶¯¤¯¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Version 2¤Î¾ÚÌÀ½ñ¤Ï¡¢¹­¤¯¤Ï»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£
+X\&.509 Version 2ã§ã¯ã€Subjectや発行者ã®åå‰ã‚’ã‚ã¨ã§å†åˆ©ç”¨ã§ãるよã†ã«ã™ã‚‹ãŸã‚ã«ã€Subjectã¨ç™ºè¡Œè€…ã®ä¸€æ„識別å­ã®æ¦‚念ãŒå°Žå…¥ã•ã‚Œã¾ã—ãŸã€‚ã»ã¨ã‚“ã©ã®è¨¼æ˜Žæ›¸ãƒ—ロファイル文書ã§ã¯ã€åå‰ã‚’å†ä½¿ç”¨ã—ãªã„ã“ã¨ã¨ã€è¨¼æ˜Žæ›¸ã§ä¸€æ„ã®è­˜åˆ¥å­ã‚’使用ã—ãªã„ã“ã¨ãŒã€å¼·ã推奨ã•ã‚Œã¦ã„ã¾ã™ã€‚Version 2ã®è¨¼æ˜Žæ›¸ã¯ã€åºƒãã¯ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã›ã‚“。
 .sp
-X\&.509 Version 3¤ÏºÇ¤â¿·¤·¤¤(1996ǯ)µ¬³Ê¤Ç¡¢¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î³µÇ°¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ïï¤Ç¤âÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢¾ÚÌÀ½ñ¤Ë´Þ¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£°ìÈÌŪ¤Ê¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤È¤·¤Æ¤Ï¡¢KeyUsage(\fI½ð̾ÀìÍÑ\fR¤Ê¤É¡¢¸°¤Î»ÈÍѤòÆÃÄê¤ÎÌÜŪ¤ËÀ©¸Â¤¹¤ë)¡¢AlternativeNames(DNS̾¡¢ÅŻҥ᡼¥ë¡¦¥¢¥É¥ì¥¹¡¢IP¥¢¥É¥ì¥¹¤Ê¤É¡¢Â¾¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤ò¸ø³«¸°¤Ë´ØÏ¢ÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤ë)¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤Ï¡¢critical¤È¤¤¤¦¥Þ¡¼¥¯¤òÉÕ¤±¤Æ¡¢¤½¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Î¥Á¥§¥Ã¥¯¤È»ÈÍѤòµÁ̳¤Å¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢critical¤È¥Þ¡¼¥¯¤µ¤ì¡¢\fIkeyCertSign\fR¤¬ÀßÄꤵ¤ì¤¿KeyUsage¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤¬¾ÚÌÀ½ñ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤³¤Î¾ÚÌÀ½ñ¤òSSLÄÌ¿®Ãæ¤ËÄ󼨤¹¤ë¤È¡¢¾ÚÌÀ½ñ¤¬µñÈݤµ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¾ÚÌÀ½ñ¤Î¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢´ØÏ¢¤¹¤ëÈëÌ©¸°¤¬¾ÚÌÀ½ñ¤Î½ð̾ÀìÍѤȤ·¤Æ»ØÄꤵ¤ì¤Æ¤ª¤ê¡¢SSL¤Ç¤Ï»ÈÍѤǤ­¤Ê¤¤¤¿¤á¤Ç¤¹¡£
+X\&.509 Version 3ã¯æœ€ã‚‚æ–°ã—ã„(1996å¹´)è¦æ ¼ã§ã€ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®æ¦‚念をサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚エクステンションã¯èª°ã§ã‚‚定義ã™ã‚‹ã“ã¨ãŒã§ãã€è¨¼æ˜Žæ›¸ã«å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚一般的ãªã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã¨ã—ã¦ã¯ã€KeyUsage(\fIç½²å専用\fRãªã©ã€éµã®ä½¿ç”¨ã‚’特定ã®ç›®çš„ã«åˆ¶é™ã™ã‚‹)ã€AlternativeNames(DNSåã€é›»å­ãƒ¡ãƒ¼ãƒ«ãƒ»ã‚¢ãƒ‰ãƒ¬ã‚¹ã€IPアドレスãªã©ã€ä»–ã®ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’公開éµã«é–¢é€£ä»˜ã‘ã‚‹ã“ã¨ãŒã§ãã‚‹)ãªã©ãŒã‚ã‚Šã¾ã™ã€‚エクステンションã«ã¯ã€criticalã¨ã„ã†ãƒžãƒ¼ã‚¯ã‚’付ã‘ã¦ã€ãã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã®ãƒã‚§ãƒƒã‚¯ã¨ä½¿ç”¨ã‚’義務ã¥ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€criticalã¨ãƒžãƒ¼ã‚¯ã•ã‚Œã€\fIkeyCertSign\fRãŒè¨­å®šã•ã‚ŒãŸKeyUsageエクステンションãŒè¨¼æ˜Žæ›¸ã«å«ã¾ã‚Œã¦ã„ã‚‹å ´åˆã€ã“ã®è¨¼æ˜Žæ›¸ã‚’SSL通信中ã«æ示ã™ã‚‹ã¨ã€è¨¼æ˜Žæ›¸ãŒæ‹’å¦ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€è¨¼æ˜Žæ›¸ã®ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«ã‚ˆã£ã¦ã€é–¢é€£ã™ã‚‹ç§˜å¯†éµãŒè¨¼æ˜Žæ›¸ã®ç½²å専用ã¨ã—ã¦æŒ‡å®šã•ã‚Œã¦ãŠã‚Šã€SSLã§ã¯ä½¿ç”¨ã§ããªã„ãŸã‚ã§ã™ã€‚
 .sp
-\fB¥·¥ê¥¢¥ëÈÖ¹æ\fR: ¾ÚÌÀ½ñ¤òºîÀ®¤·¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤Ï¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤¬È¯¹Ô¤¹¤ë¾¤Î¾ÚÌÀ½ñ¤È¶èÊ̤¹¤ë¤¿¤á¤Ë¡¢¾ÚÌÀ½ñ¤Ë¥·¥ê¥¢¥ëÈÖ¹æ¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£¤³¤Î¾ðÊó¤Ï¡¢ÍÍ¡¹¤ÊÊýË¡¤Ç»ÈÍѤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬¼è¤ê¾Ã¤µ¤ì¤ë¤È¡¢¥·¥ê¥¢¥ëÈֹ椬¾ÚÌÀ½ñ¼º¸ú¥ê¥¹¥È(CRL)¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
+\fBシリアル番å·\fR: 証明書を作æˆã—ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¯ã€ãã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒç™ºè¡Œã™ã‚‹ä»–ã®è¨¼æ˜Žæ›¸ã¨åŒºåˆ¥ã™ã‚‹ãŸã‚ã«ã€è¨¼æ˜Žæ›¸ã«ã‚·ãƒªã‚¢ãƒ«ç•ªå·ã‚’割り当ã¦ã¾ã™ã€‚ã“ã®æƒ…å ±ã¯ã€æ§˜ã€…ãªæ–¹æ³•ã§ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒå–り消ã•ã‚Œã‚‹ã¨ã€ã‚·ãƒªã‚¢ãƒ«ç•ªå·ãŒè¨¼æ˜Žæ›¸å¤±åŠ¹ãƒªã‚¹ãƒˆ(CRL)ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚
 .sp
-\fB¾ÚÌÀ½ñ¥¢¥ë¥´¥ê¥º¥à¼±ÊÌ»Ò\fR: ¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤ËCA¤¬»ÈÍѤ·¤¿¥¢¥ë¥´¥ê¥º¥à¤òÆÃÄꤷ¤Þ¤¹¡£
+\fB証明書アルゴリズム識別å­\fR: 証明書ã«ç½²åを付ã‘ã‚‹ã¨ãã«CAãŒä½¿ç”¨ã—ãŸã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’特定ã—ã¾ã™ã€‚
 .sp
-\fBȯ¹Ô¼Ô̾\fR: ¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤ÎX\&.500¼±ÊÌ̾¤Ç¤¹¡£X\&.500¼±ÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ä̾ï¤ÏCA¤Ç¤¹¡£¤³¤Î¾ÚÌÀ½ñ¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¡¢¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤ò¿®Íꤹ¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£¥ë¡¼¥È¤Ä¤Þ¤ê¥È¥Ã¥×¥ì¥Ù¥ë¤ÎCA¤Î¾ÚÌÀ½ñ¤Ê¤É¡¢¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ïȯ¹Ô¼Ô¤¬¼«¿È¤Î¾ÚÌÀ½ñ¤Ë½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+\fB発行者å\fR: 証明書ã«ç½²åを付ã‘ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®X\&.500識別åã§ã™ã€‚X\&.500識別åã‚’å‚ç…§ã—ã¦ãã ã•ã„。通常ã¯CAã§ã™ã€‚ã“ã®è¨¼æ˜Žæ›¸ã‚’使用ã™ã‚‹ã“ã¨ã¯ã€è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚ルートã¤ã¾ã‚Šãƒˆãƒƒãƒ—レベルã®CAã®è¨¼æ˜Žæ›¸ãªã©ã€å ´åˆã«ã‚ˆã£ã¦ã¯ç™ºè¡Œè€…ãŒè‡ªèº«ã®è¨¼æ˜Žæ›¸ã«ç½²åを付ã‘ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÍ­¸ú´ü´Ö\fR: ³Æ¾ÚÌÀ½ñ¤Ï¸Â¤é¤ì¤¿´ü´Ö¤Î¤ßÍ­¸ú¤Ç¤¹¡£¤³¤Î´ü´Ö¤Ï³«»Ï¤ÎÆü»þ¤È½ªÎ»¤ÎÆü»þ¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¡¢¿ôÉäÎû¤¤´ü´Ö¤«¤é100ǯ¤È¤¤¤¦Ä¹´ü¤Ë¤ï¤¿¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ÁªÂò¤µ¤ì¤ëÍ­¸ú´ü´Ö¤Ï¡¢¾ÚÌÀ½ñ¤Ø¤Î½ð̾¤Ë»ÈÍѤµ¤ì¤ëÈëÌ©¸°¤Î¶¯ÅÙ¤ä¾ÚÌÀ½ñ¤Ë»Ùʧ¤¦¶â³Û¤Ê¤É¡¢ÍÍ¡¹¤ÊÍ×°ø¤Ç°Û¤Ê¤ê¤Þ¤¹¡£Í­¸ú´ü´Ö¤Ï¡¢´ØÏ¢¤¹¤ëÈëÌ©¸°¤¬Â»¤ï¤ì¤Ê¤¤¾ì¹ç¤Ë¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤¬¸ø³«¸°¤ò¿®Íê¤Ç¤­¤ë¤È´üÂÔ¤µ¤ì¤ë´ü´Ö¤Ç¤¹¡£
+\fB有効期間\fR: å„証明書ã¯é™ã‚‰ã‚ŒãŸæœŸé–“ã®ã¿æœ‰åŠ¹ã§ã™ã€‚ã“ã®æœŸé–“ã¯é–‹å§‹ã®æ—¥æ™‚ã¨çµ‚了ã®æ—¥æ™‚ã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã€æ•°ç§’ã®çŸ­ã„期間ã‹ã‚‰100å¹´ã¨ã„ã†é•·æœŸã«ã‚ãŸã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚é¸æŠžã•ã‚Œã‚‹æœ‰åŠ¹æœŸé–“ã¯ã€è¨¼æ˜Žæ›¸ã¸ã®ç½²åã«ä½¿ç”¨ã•ã‚Œã‚‹ç§˜å¯†éµã®å¼·åº¦ã‚„証明書ã«æ”¯æ‰•ã†é‡‘é¡ãªã©ã€æ§˜ã€…ãªè¦å› ã§ç•°ãªã‚Šã¾ã™ã€‚有効期間ã¯ã€é–¢é€£ã™ã‚‹ç§˜å¯†éµãŒæã‚ã‚Œãªã„å ´åˆã«ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãŒå…¬é–‹éµã‚’ä¿¡é ¼ã§ãã‚‹ã¨æœŸå¾…ã•ã‚Œã‚‹æœŸé–“ã§ã™ã€‚
 .sp
-\fB¼çÂÎ̾\fR: ¾ÚÌÀ½ñ¤Ç¸ø³«¸°¤òǧ¾Ú¤¹¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î̾Á°¡£¤³¤Î̾Á°¤ÏX\&.500ɸ½à¤ò»ÈÍѤ¹¤ë¤Î¤Ç¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈÁ´ÂΤǰì°Õ¤Ê¤â¤Î¤ÈÁÛÄꤵ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤ÎX\&.500¼±ÊÌ̾(DN)¤Ç¤¹¡£X\&.500¼±ÊÌ̾¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fB主体å\fR: 証明書ã§å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®åå‰ã€‚ã“ã®åå‰ã¯X\&.500標準を使用ã™ã‚‹ã®ã§ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆå…¨ä½“ã§ä¸€æ„ãªã‚‚ã®ã¨æƒ³å®šã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®X\&.500識別å(DN)ã§ã™ã€‚X\&.500識別åã‚’å‚ç…§ã—ã¦ãã ã•ã„。次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1280,33 +1280,33 @@
 .if n \{\
 .RE
 .\}
-¤³¤ì¤é¤Ï¤½¤ì¤¾¤ì¼çÂΤÎÄ̾Î(CN)¡¢ÁÈ¿¥Ã±°Ì(OU)¡¢ÁÈ¿¥(O)¡¢¹ñ(C)¤òɽ¤·¤Þ¤¹¡£
+ã“れらã¯ãã‚Œãžã‚Œä¸»ä½“ã®é€šç§°(CN)ã€çµ„ç¹”å˜ä½(OU)ã€çµ„ç¹”(O)ã€å›½(C)を表ã—ã¾ã™ã€‚
 .sp
-\fB¼çÂΤθø³«¸°¾ðÊó\fR: ̾Á°¤òÉÕ¤±¤é¤ì¤¿¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤È¥¢¥ë¥´¥ê¥º¥à¼±Ê̻ҤǤ¹¡£¥¢¥ë¥´¥ê¥º¥à¼±Ê̻ҤǤϡ¢¸ø³«¸°¤ËÂФ·¤Æ»ÈÍѤµ¤ì¤Æ¤¤¤ë¸ø³«¸°°Å¹æ²½¥·¥¹¥Æ¥à¤ª¤è¤Ó´ØÏ¢¤¹¤ë¸°¥Ñ¥é¥á¡¼¥¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fB主体ã®å…¬é–‹éµæƒ…å ±\fR: åå‰ã‚’付ã‘られãŸã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®å…¬é–‹éµã¨ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ è­˜åˆ¥å­ã§ã™ã€‚アルゴリズム識別å­ã§ã¯ã€å…¬é–‹éµã«å¯¾ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„る公開éµæš—å·åŒ–システムãŠã‚ˆã³é–¢é€£ã™ã‚‹éµãƒ‘ラメータãŒæŒ‡å®šã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ¥Á¥§¡¼¥ó
+証明書ãƒã‚§ãƒ¼ãƒ³
 .RS 4
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢ÈëÌ©¸°¤ª¤è¤Ó´ØÏ¢¤¹¤ë¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò´Þ¤à¥­¡¼¥¹¥È¥¢¤Î¸°¥¨¥ó¥È¥ê¤òºîÀ®¤·¡¢´ÉÍý¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤Î¤è¤¦¤Ê¥¨¥ó¥È¥ê¤Ç¤Ï¡¢ÈëÌ©¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤Ï¡¢¥Á¥§¡¼¥ó¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
+\fIkeytool\fRコマンドã§ã¯ã€ç§˜å¯†éµãŠã‚ˆã³é–¢é€£ã™ã‚‹è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’å«ã‚€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®éµã‚¨ãƒ³ãƒˆãƒªã‚’作æˆã—ã€ç®¡ç†ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã“ã®ã‚ˆã†ãªã‚¨ãƒ³ãƒˆãƒªã§ã¯ã€ç§˜å¯†éµã«å¯¾å¿œã™ã‚‹å…¬é–‹éµã¯ã€ãƒã‚§ãƒ¼ãƒ³ã®æœ€åˆã®è¨¼æ˜Žæ›¸ã«å«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 .sp
-¸°¤ò½é¤á¤ÆºîÀ®¤¹¤ë¤È¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤È¤¤¤¦1¤Ä¤ÎÍ×ÁǤΤߤò´Þ¤à¥Á¥§¡¼¥ó¤¬³«»Ï¤µ¤ì¤Þ¤¹¡£\fI¤Î\fR\-genkeypair¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ïȯ¹Ô¼Ô(½ð̾¼Ô)¤¬¼çÂΤÈƱ¤¸¤Ç¤¹¡£¼çÂΤϡ¢¤½¤Î¸ø³«¸°¤¬¾ÚÌÀ½ñ¤Ë¤è¤Ã¤Æǧ¾Ú¤µ¤ì¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¤¹¡£\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¿·¤·¤¤¸ø³«¸°¤ÈÈëÌ©¸°¤Î¥Ú¥¢¤òºîÀ®¤¹¤ë¤È¡¢¸ø³«¸°¤Ï¾ï¤Ë¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¥é¥Ã¥×¤µ¤ì¤Þ¤¹¡£
+éµã‚’åˆã‚ã¦ä½œæˆã™ã‚‹ã¨ã€è‡ªå·±ç½²å証明書ã¨ã„ã†1ã¤ã®è¦ç´ ã®ã¿ã‚’å«ã‚€ãƒã‚§ãƒ¼ãƒ³ãŒé–‹å§‹ã•ã‚Œã¾ã™ã€‚\fIã®\fR\-genkeypairコマンドをå‚ç…§ã—ã¦ãã ã•ã„。自己署å証明書ã¯ç™ºè¡Œè€…(ç½²å者)ãŒä¸»ä½“ã¨åŒã˜ã§ã™ã€‚主体ã¯ã€ãã®å…¬é–‹éµãŒè¨¼æ˜Žæ›¸ã«ã‚ˆã£ã¦èªè¨¼ã•ã‚Œã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã™ã€‚\fI\-genkeypair\fRコマンドを呼ã³å‡ºã—ã¦æ–°ã—ã„公開éµã¨ç§˜å¯†éµã®ãƒšã‚¢ã‚’作æˆã™ã‚‹ã¨ã€å…¬é–‹éµã¯å¸¸ã«è‡ªå·±ç½²å証明書ã§ãƒ©ãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚
 .sp
-¤³¤Î¸å¡¢¾ÚÌÀ½ñ½ð̾¥ê¥¯¥¨¥¹¥È(CSR)¤¬\fI\-certreq\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¤Æ¡¢CSR¤¬¾ÚÌÀ½ñȯ¹Ô¶É(CA)¤ËÁ÷¿®¤µ¤ì¤ë¤È¡¢CA¤«¤é¤Î¥ì¥¹¥Ý¥ó¥¹¤¬\fI\-importcert\fR¤Ç¥¤¥ó¥Ý¡¼¥È¤µ¤ì¡¢¸µ¤Î¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ï¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Ë¤è¤Ã¤ÆÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£¥³¥Þ¥ó¥É¤Î\fI\-certreq\fR¤ª¤è¤Ó\fI\-importcert\fR¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥Á¥§¡¼¥ó¤ÎºÇ¸å¤Ë¤¢¤ë¤Î¤Ï¡¢Subject¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿CA¤¬È¯¹Ô¤·¤¿¾ÚÌÀ½ñ(±þÅú)¤Ç¤¹¡£¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ç¤¹¡£
+ã“ã®å¾Œã€è¨¼æ˜Žæ›¸ç½²åリクエスト(CSR)ãŒ\fI\-certreq\fRコマンドã§ç”Ÿæˆã•ã‚Œã¦ã€CSRãŒè¨¼æ˜Žæ›¸ç™ºè¡Œå±€(CA)ã«é€ä¿¡ã•ã‚Œã‚‹ã¨ã€CAã‹ã‚‰ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ãŒ\fI\-importcert\fRã§ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã€å…ƒã®è‡ªå·±ç½²å証明書ã¯è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã«ã‚ˆã£ã¦ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚コマンドã®\fI\-certreq\fRãŠã‚ˆã³\fI\-importcert\fRオプションをå‚ç…§ã—ã¦ãã ã•ã„。ãƒã‚§ãƒ¼ãƒ³ã®æœ€å¾Œã«ã‚ã‚‹ã®ã¯ã€Subjectã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸCAãŒç™ºè¡Œã—ãŸè¨¼æ˜Žæ›¸(応答)ã§ã™ã€‚ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã§ã™ã€‚
 .sp
-CA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ï¡¢Â¿¤¯¤Î¾ì¹ç¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ(¤Ä¤Þ¤êCA¤¬¼«¿È¤Î¸ø³«¸°¤òǧ¾Ú¤·¤¿¾ÚÌÀ½ñ)¤Ç¤¢¤ê¡¢¤³¤ì¤Ï¥Á¥§¡¼¥ó¤ÎºÇ½é¤Î¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢CA¤¬¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤òÊÖ¤¹¤³¤È¤â¤¢¤ê¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ¸å¤Î¾ÚÌÀ½ñ(CA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¡¢¸°¥¨¥ó¥È¥ê¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ)¤ËÊѤï¤ê¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢CSR¤ÎÁ÷¿®Àè¤ÎCA¤È¤ÏÊ̤ÎCA¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¡¢CSR¤ÎÁ÷¿®Àè¤ÎCA¤Î¸ø³«¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£¥Á¥§¡¼¥óÆâ¤Î¤½¤ÎÁ°¤Î¾ÚÌÀ½ñ¤Ï¡¢¼¡¤ÎCA¤Î¸°¤òǧ¾Ú¤¹¤ë¾ÚÌÀ½ñ¤Ë¤Ê¤ê¤Þ¤¹¡£°Ê²¼Æ±Íͤˡ¢¼«¸Ê½ð̾¤µ¤ì¤¿¡Ö¥ë¡¼¥È¡×¾ÚÌÀ½ñ¤Ë㤹¤ë¤Þ¤Ç¥Á¥§¡¼¥ó¤¬Â³¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥Á¥§¡¼¥óÆâ¤Î(ºÇ½é¤Î¾ÚÌÀ½ñ°Ê¸å¤Î)³Æ¾ÚÌÀ½ñ¤Ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤Î¼¡¤Î¾ÚÌÀ½ñ¤Î½ð̾¼Ô¤Î¸ø³«¸°¤¬Ç§¾Ú¤µ¤ì¤Æ¤¤¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã¯ã€å¤šãã®å ´åˆã€è‡ªå·±ç½²å証明書(ã¤ã¾ã‚ŠCAãŒè‡ªèº«ã®å…¬é–‹éµã‚’èªè¨¼ã—ãŸè¨¼æ˜Žæ›¸)ã§ã‚ã‚Šã€ã“ã‚Œã¯ãƒã‚§ãƒ¼ãƒ³ã®æœ€åˆã®è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€CAãŒè¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã‚’è¿”ã™ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚ã“ã®å ´åˆã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€å¾Œã®è¨¼æ˜Žæ›¸(CAã«ã‚ˆã£ã¦ç½²åã•ã‚Œã€éµã‚¨ãƒ³ãƒˆãƒªã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸)ã«å¤‰ã‚ã‚Šã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€CSRã®é€ä¿¡å…ˆã®CAã¨ã¯åˆ¥ã®CAã«ã‚ˆã£ã¦ç½²åã•ã‚Œã€CSRã®é€ä¿¡å…ˆã®CAã®å…¬é–‹éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³å†…ã®ãã®å‰ã®è¨¼æ˜Žæ›¸ã¯ã€æ¬¡ã®CAã®éµã‚’èªè¨¼ã™ã‚‹è¨¼æ˜Žæ›¸ã«ãªã‚Šã¾ã™ã€‚以下åŒæ§˜ã«ã€è‡ªå·±ç½²åã•ã‚ŒãŸã€Œãƒ«ãƒ¼ãƒˆã€è¨¼æ˜Žæ›¸ã«é”ã™ã‚‹ã¾ã§ãƒã‚§ãƒ¼ãƒ³ãŒç¶šãã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®(最åˆã®è¨¼æ˜Žæ›¸ä»¥å¾Œã®)å„証明書ã§ã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æ¬¡ã®è¨¼æ˜Žæ›¸ã®ç½²å者ã®å…¬é–‹éµãŒèªè¨¼ã•ã‚Œã¦ã„ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .sp
-¿¤¯¤ÎCA¤Ï¡¢¥Á¥§¡¼¥ó¤ò¥µ¥Ý¡¼¥È¤»¤º¤Ëȯ¹ÔºÑ¤Î¾ÚÌÀ½ñ¤Î¤ß¤òÊÖ¤·¤Þ¤¹¡£Æäˡ¢Ãæ´Ö¤ÎCA¤¬Â¸ºß¤·¤Ê¤¤¥Õ¥é¥Ã¥È¤Ê³¬Áع½Â¤¤Î¾ì¹ç¤Ï¡¢¤½¤Î·¹¸þ¤¬¸²Ãø¤Ç¤¹¡£¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ï¡¢¥­¡¼¥¹¥È¥¢¤Ë¤¹¤Ç¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¾ðÊ󤫤顢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò³ÎΩ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+多ãã®CAã¯ã€ãƒã‚§ãƒ¼ãƒ³ã‚’サãƒãƒ¼ãƒˆã›ãšã«ç™ºè¡Œæ¸ˆã®è¨¼æ˜Žæ›¸ã®ã¿ã‚’è¿”ã—ã¾ã™ã€‚特ã«ã€ä¸­é–“ã®CAãŒå­˜åœ¨ã—ãªã„フラットãªéšŽå±¤æ§‹é€ ã®å ´åˆã¯ã€ãã®å‚¾å‘ãŒé¡•è‘—ã§ã™ã€‚ã“ã®ã‚ˆã†ãªå ´åˆã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«ã™ã§ã«æ ¼ç´ã•ã‚Œã¦ã„ã‚‹ä¿¡é ¼ã§ãる証明書情報ã‹ã‚‰ã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’確立ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ê̤αþÅú·Á¼°(PKCS#7¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë·Á¼°)¤Ç¤Ï¡¢È¯¹ÔºÑ¾ÚÌÀ½ñ¤Ë²Ã¤¨¡¢¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Î¥µ¥Ý¡¼¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤É¤Á¤é¤Î±þÅú·Á¼°¤â°·¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+別ã®å¿œç­”å½¢å¼(PKCS#7ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹å½¢å¼)ã§ã¯ã€ç™ºè¡Œæ¸ˆè¨¼æ˜Žæ›¸ã«åŠ ãˆã€è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã®ã‚µãƒãƒ¼ãƒˆãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚\fIkeytool\fRコマンドã§ã¯ã€ã©ã¡ã‚‰ã®å¿œç­”å½¢å¼ã‚‚扱ã†ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-¥È¥Ã¥×¥ì¥Ù¥ë(¥ë¡¼¥È)CA¤Î¾ÚÌÀ½ñ¤Ï¡¢¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ç¤¹¡£¤¿¤À¤·¡¢¥ë¡¼¥È¤Î¸ø³«¸°¤Ø¤Î¿®Íê¤Ï¡¢¥ë¡¼¥È¾ÚÌÀ½ñ¼«ÂΤ«¤é¤Ç¤Ï¤Ê¤¯¡¢¿·Ê¹¤Ê¤É¾¤Î¥½¡¼¥¹¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢VeriSign¥ë¡¼¥ÈCA¤Ê¤É¤Î¼±ÊÌ̾¤ò»ÈÍѤ·¤Æ¡¢Ã¯¤Ç¤â¼«¸Ê½ð̾·¿¾ÚÌÀ½ñ¤òÀ¸À®¤Ç¤­¤ë¤¿¤á¤Ç¤¹¡£¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤Ï¹­¤¯ÃΤé¤ì¤Æ¤¤¤Þ¤¹¡£¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤ò¾ÚÌÀ½ñ¤Ë³ÊǼ¤¹¤ëÍýͳ¤Ï¡¢¾ÚÌÀ½ñ¤È¤¤¤¦·Á¼°¤Ë¤¹¤ë¤³¤È¤Ç¿¤¯¤Î¥Ä¡¼¥ë¤«¤éÍøÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ë¤«¤é¤Ë¤¹¤®¤Þ¤»¤ó¡£¤Ä¤Þ¤ê¡¢¾ÚÌÀ½ñ¤Ï¡¢¥ë¡¼¥ÈCA¤Î¸ø³«¸°¤ò±¿¤Ö¡ÖÇÞÂΡפȤ·¤ÆÍøÍѤµ¤ì¤ë¤Î¤ß¤Ç¤¹¡£¥ë¡¼¥ÈCA¤Î¾ÚÌÀ½ñ¤ò¥­¡¼¥¹¥È¥¢¤ËÄɲ乤ë¤È¤­¤Ï¡¢\fI\-printcert\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢¤½¤ÎÁ°¤Ë¾ÚÌÀ½ñ¤ÎÆâÍƤòɽ¼¨¤·¡¢É½¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¿·Ê¹¤ä¥ë¡¼¥ÈCA¤ÎWeb¥Ú¡¼¥¸¤Ê¤É¤«¤éÆþ¼ê¤·¤¿´ûÃΤΥե£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+トップレベル(ルート)CAã®è¨¼æ˜Žæ›¸ã¯ã€è‡ªå·±ç½²å証明書ã§ã™ã€‚ãŸã ã—ã€ãƒ«ãƒ¼ãƒˆã®å…¬é–‹éµã¸ã®ä¿¡é ¼ã¯ã€ãƒ«ãƒ¼ãƒˆè¨¼æ˜Žæ›¸è‡ªä½“ã‹ã‚‰ã§ã¯ãªãã€æ–°èžãªã©ä»–ã®ã‚½ãƒ¼ã‚¹ã‹ã‚‰å–å¾—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€VeriSignルートCAãªã©ã®è­˜åˆ¥åを使用ã—ã¦ã€èª°ã§ã‚‚自己署å型証明書を生æˆã§ãã‚‹ãŸã‚ã§ã™ã€‚ルートCAã®å…¬é–‹éµã¯åºƒã知られã¦ã„ã¾ã™ã€‚ルートCAã®å…¬é–‹éµã‚’証明書ã«æ ¼ç´ã™ã‚‹ç†ç”±ã¯ã€è¨¼æ˜Žæ›¸ã¨ã„ã†å½¢å¼ã«ã™ã‚‹ã“ã¨ã§å¤šãã®ãƒ„ールã‹ã‚‰åˆ©ç”¨ã§ãるよã†ã«ãªã‚‹ã‹ã‚‰ã«ã™ãŽã¾ã›ã‚“。ã¤ã¾ã‚Šã€è¨¼æ˜Žæ›¸ã¯ã€ãƒ«ãƒ¼ãƒˆCAã®å…¬é–‹éµã‚’é‹ã¶ã€Œåª’体ã€ã¨ã—ã¦åˆ©ç”¨ã•ã‚Œã‚‹ã®ã¿ã§ã™ã€‚ルートCAã®è¨¼æ˜Žæ›¸ã‚’キーストアã«è¿½åŠ ã™ã‚‹ã¨ãã¯ã€\fI\-printcert\fRオプションを使用ã—ã¦ã€ãã®å‰ã«è¨¼æ˜Žæ›¸ã®å†…容を表示ã—ã€è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€æ–°èžã‚„ルートCAã®Webページãªã©ã‹ã‚‰å…¥æ‰‹ã—ãŸæ—¢çŸ¥ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
-cacerts¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë
+cacerts証明書ファイル
 .RS 4
-\fIcacerts\fR¤È¤¤¤¦Ì¾Á°¤Î¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë¤Ï¡¢Windows¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥×¥í¥Ñ¥Æ¥£¡¦¥Ç¥£¥ì¥¯¥È¥ê\fIjava\&.home\elib\esecurity\fR¡¢Oracle Solaris¤Ç¤Ï\fIjava\&.home/lib/security\fR¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¡£\fIjava\&.home\fR¤Ï¡¢¼Â¹Ô´Ä¶­¤Î¥Ç¥£¥ì¥¯¥È¥ê(SDK¤Î\fIjre\fR¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤ÏJRE¤ÎºÇ¾å°Ì¥Ç¥£¥ì¥¯¥È¥ê)¤Ç¤¹¡£
+\fIcacerts\fRã¨ã„ã†åå‰ã®è¨¼æ˜Žæ›¸ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Windowsã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒ—ロパティ・ディレクトリ\fIjava\&.home\elib\esecurity\fRã€Oracle Solarisã§ã¯\fIjava\&.home/lib/security\fRã«ç½®ã‹ã‚Œã¦ã„ã¾ã™ã€‚\fIjava\&.home\fRã¯ã€å®Ÿè¡Œç’°å¢ƒã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(SDKã®\fIjre\fRディレクトリã¾ãŸã¯JREã®æœ€ä¸Šä½ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª)ã§ã™ã€‚
 .sp
-\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ï¡¢CA¤Î¾ÚÌÀ½ñ¤ò´Þ¤à¡¢¥·¥¹¥Æ¥àÁ´ÂΤΥ­¡¼¥¹¥È¥¢¤Ç¤¹¡£¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¡¢¥­¡¼¥¹¥È¥¢¡¦¥¿¥¤¥×¤Ë\fIjks\fR¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤Î¹½À®¤È´ÉÍý¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥»¥Ã¥È¤ò´Þ¤ó¤À¾õÂ֤ǽв٤µ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¾ÚÌÀ½ñ¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fIcacerts\fRファイルã¯ã€CAã®è¨¼æ˜Žæ›¸ã‚’å«ã‚€ã€ã‚·ã‚¹ãƒ†ãƒ å…¨ä½“ã®ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã§ã™ã€‚システム管ç†è€…ã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ãƒ»ã‚¿ã‚¤ãƒ—ã«\fIjks\fRを指定ã™ã‚‹ã“ã¨ã§ã€\fIkeytool\fRコマンドを使用ã—ã¦ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æˆã¨ç®¡ç†ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚\fIcacerts\fRキーストア・ファイルã¯ã€ãƒ«ãƒ¼ãƒˆCA証明書ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚»ãƒƒãƒˆã‚’å«ã‚“ã çŠ¶æ…‹ã§å‡ºè·ã•ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã®è¨¼æ˜Žæ›¸ã‚’一覧表示ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1317,23 +1317,23 @@
 .if n \{\
 .RE
 .\}
-\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Î½é´ü¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢\fIchangeit\fR¤Ç¤¹¡£¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¡¢SDK¤Î¥¤¥ó¥¹¥È¡¼¥ë¸å¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¥ï¡¼¥É¤È¥Ç¥Õ¥©¥ë¥È¡¦¥¢¥¯¥»¥¹¸¢¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIcacerts\fRキーストア・ファイルã®åˆæœŸãƒ‘スワードã¯ã€\fIchangeit\fRã§ã™ã€‚システム管ç†è€…ã¯ã€SDKã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¾Œã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®ãƒ‘スワードã¨ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’変更ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-\fIcacerts\fR¥Õ¥¡¥¤¥ë¤ò³Îǧ¤¹¤ë¤³¤È¤¬½ÅÍפǤ¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ëÆâ¤ÎCA¤Ï¡¢½ð̾¤ª¤è¤Ó¾¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ø¤Î¾ÚÌÀ½ñȯ¹Ô¤Î¤¿¤á¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤È¤·¤Æ¿®Íꤵ¤ì¤ë¤¿¤á¡¢\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Î´ÉÍý¤Ï¿µ½Å¤Ë¹Ô¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¿®Íꤹ¤ëCA¤Î¾ÚÌÀ½ñ¤Î¤ß¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢¼«¿È¤ÎÀÕǤ¤Ë¤ª¤¤¤Æ¡¢\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë¥Ð¥ó¥É¥ë¤µ¤ì¤Æ¤¤¤ë¿®Íê¤Ç¤­¤ë¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò¸¡¾Ú¤·¡¢¿®ÍêÀ­¤Ë´Ø¤¹¤ëÆȼ«¤Î·èÄê¤ò¹Ô¤¤¤Þ¤¹¡£
+\fB注æ„:\fR
+\fIcacerts\fRファイルを確èªã™ã‚‹ã“ã¨ãŒé‡è¦ã§ã™ã€‚\fIcacerts\fRファイル内ã®CAã¯ã€ç½²åãŠã‚ˆã³ä»–ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¸ã®è¨¼æ˜Žæ›¸ç™ºè¡Œã®ãŸã‚ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ã—ã¦ä¿¡é ¼ã•ã‚Œã‚‹ãŸã‚ã€\fIcacerts\fRファイルã®ç®¡ç†ã¯æ…Žé‡ã«è¡Œã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIcacerts\fRファイルã«ã¯ã€ä¿¡é ¼ã™ã‚‹CAã®è¨¼æ˜Žæ›¸ã®ã¿ãŒå«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ユーザーã¯ã€è‡ªèº«ã®è²¬ä»»ã«ãŠã„ã¦ã€\fIcacerts\fRファイルã«ãƒãƒ³ãƒ‰ãƒ«ã•ã‚Œã¦ã„ã‚‹ä¿¡é ¼ã§ãるルートCA証明書を検証ã—ã€ä¿¡é ¼æ€§ã«é–¢ã™ã‚‹ç‹¬è‡ªã®æ±ºå®šã‚’è¡Œã„ã¾ã™ã€‚
 .sp
-¿®Íê¤Ç¤­¤Ê¤¤CA¾ÚÌÀ½ñ¤ò\fIcacerts\fR¥Õ¥¡¥¤¥ë¤«¤éºï½ü¤¹¤ë¤Ë¤Ï¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Î\fIdelete\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£\fIcacerts\fR¥Õ¥¡¥¤¥ë¤ÏJRE¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤¹¤ë¥¢¥¯¥»¥¹¸¢¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤
+ä¿¡é ¼ã§ããªã„CA証明書を\fIcacerts\fRファイルã‹ã‚‰å‰Šé™¤ã™ã‚‹ã«ã¯ã€\fIkeytool\fRコマンドã®\fIdelete\fRオプションを使用ã—ã¾ã™ã€‚\fIcacerts\fRファイルã¯JREã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚Šã¾ã™ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’編集ã™ã‚‹ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒãªã„å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ ç®¡ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•ã„
 .RE
 .PP
-¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421¾ÚÌÀ½ñÉä¹æ²½µ¬³Ê
+インターãƒãƒƒãƒˆRFC 1421証明書符å·åŒ–è¦æ ¼
 .RS 4
-¿¤¯¤Î¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï¡¢¥Ð¥¤¥Ê¥êÉä¹æ²½¤Ç¤Ï¤Ê¤¯¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥ÈRFC 1421µ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë½ÐÎϲÄǽÉä¹æ²½Êý¼°¤ò»ÈÍѤ·¤Æ³ÊǼ¤µ¤ì¤Þ¤¹¡£Base 64Éä¹æ²½¤È¤â¸Æ¤Ð¤ì¤ë¤³¤Î¾ÚÌÀ½ñ·Á¼°¤Ç¤Ï¡¢ÅŻҥ᡼¥ë¤ä¤½¤Î¾¤Îµ¡¹½¤òÄ̤¸¤Æ¡¢Â¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¾ÚÌÀ½ñ¤òÍưפ˥¨¥¯¥¹¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£
+多ãã®å ´åˆã€è¨¼æ˜Žæ›¸ã¯ã€ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã§ã¯ãªãã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆRFC 1421è¦æ ¼ã§å®šç¾©ã•ã‚Œã¦ã„る出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã‚’使用ã—ã¦æ ¼ç´ã•ã‚Œã¾ã™ã€‚Base 64符å·åŒ–ã¨ã‚‚呼ã°ã‚Œã‚‹ã“ã®è¨¼æ˜Žæ›¸å½¢å¼ã§ã¯ã€é›»å­ãƒ¡ãƒ¼ãƒ«ã‚„ãã®ä»–ã®æ©Ÿæ§‹ã‚’通ã˜ã¦ã€ä»–ã®ã‚¢ãƒ—リケーションã«è¨¼æ˜Žæ›¸ã‚’容易ã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã§ãã¾ã™ã€‚
 .sp
-\fI\-importcert\fR¤È\fI\-printcert\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤Î·Á¼°¤Î¾ÚÌÀ½ñ¤È¥Ð¥¤¥Ê¥êÉä¹æ²½¤Î¾ÚÌÀ½ñ¤òÆɤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£\fI\-exportcert\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¥Ð¥¤¥Ê¥êÉä¹æ²½¤Î¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Î¾ÚÌÀ½ñ¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-importcert\fRã¨\fI\-printcert\fRコマンドã§ã¯ã€ã“ã®å½¢å¼ã®è¨¼æ˜Žæ›¸ã¨ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã®è¨¼æ˜Žæ›¸ã‚’読ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚\fI\-exportcert\fRコマンドã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ãƒã‚¤ãƒŠãƒªç¬¦å·åŒ–ã®è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ãŸã ã—ã€\fI\-rfc\fRオプションを指定ã—ãŸå ´åˆã¯ã€å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã®è¨¼æ˜Žæ›¸ãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-\fI\-list\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¾ÚÌÀ½ñ¤ÎSHA1¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-v\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï¿Í¤¬Íý²ò¤Ç¤­¤ë·Á¼°¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£\fI\-rfc\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¾ÚÌÀ½ñ¤Ï½ÐÎϲÄǽÉä¹æ²½Êý¼°¤Ç½ÐÎϤµ¤ì¤Þ¤¹¡£
+\fI\-list\fRコマンドã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§è¨¼æ˜Žæ›¸ã®SHA1フィンガープリントãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-v\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€è¨¼æ˜Žæ›¸ã¯äººãŒç†è§£ã§ãã‚‹å½¢å¼ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\fI\-rfc\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€è¨¼æ˜Žæ›¸ã¯å‡ºåŠ›å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚
 .sp
-½ÐÎϲÄǽÉä¹æ²½Êý¼°¤ÇÉä¹æ²½¤µ¤ì¤¿¾ÚÌÀ½ñ¤Ï¡¢¼¡¤Î¥Æ¥­¥¹¥È¤Ç»Ï¤Þ¤ê¡¢¼¡¤Î¥Æ¥­¥¹¥È¤Ç½ªÎ»¤·¤Þ¤¹¡£
+出力å¯èƒ½ç¬¦å·åŒ–æ–¹å¼ã§ç¬¦å·åŒ–ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã¯ã€æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã§å§‹ã¾ã‚Šã€æ¬¡ã®ãƒ†ã‚­ã‚¹ãƒˆã§çµ‚了ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1350,21 +1350,21 @@
 .\}
 .RE
 .PP
-X\&.500¼±ÊÌ̾
+X\&.500識別å
 .RS 4
-X\&.500¼±ÊÌ̾¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤òÆÃÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢X\&.509¾ÚÌÀ½ñ¤Î\fIsubject\fR¥Õ¥£¡¼¥ë¥É¤È\fIissuer\fR(½ð̾¼Ô)¥Õ¥£¡¼¥ë¥É¤Ç»ØÄꤵ¤ì¤ë̾Á°¤Ï¡¢X\&.500¼±ÊÌ̾¤Ç¤¹¡£\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤Î¥µ¥Ö¥Ñ¡¼¥È¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
+X\&.500識別åã¯ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’特定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚ãŸã¨ãˆã°ã€X\&.509証明書ã®\fIsubject\fRフィールドã¨\fIissuer\fR(ç½²å者)フィールドã§æŒ‡å®šã•ã‚Œã‚‹åå‰ã¯ã€X\&.500識別åã§ã™ã€‚\fIkeytool\fRコマンドã¯ã€æ¬¡ã®ã‚µãƒ–パートをサãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚
 .sp
-\fBcommonName\fR: Susan Jones¤Ê¤É¡¢¿Í¤ÎÄ̾Ρ£
+\fBcommonName\fR: Susan Jonesãªã©ã€äººã®é€šç§°ã€‚
 .sp
-\fBorganizationUnit\fR: ¾®¤µ¤ÊÁÈ¿¥(Éô¡¢²Ý¤Ê¤É)¤Î̾¾Î¡£Purchasing¤Ê¤É¤Ç¤¹¡£
+\fBorganizationUnit\fR: å°ã•ãªçµ„ç¹”(部ã€èª²ãªã©)ã®å称。Purchasingãªã©ã§ã™ã€‚
 .sp
-\fBlocalityName\fR: ÃÏ°è(ÅÔ»Ô)̾¡£Palo Alto¤Ê¤É¡£
+\fBlocalityName\fR: 地域(都市)å。Palo Altoãªã©ã€‚
 .sp
-\fBstateName\fR: ½£Ì¾¤Þ¤¿¤ÏÃÏÊý̾¡£California¤Ê¤É¡£
+\fBstateName\fR: å·žåã¾ãŸã¯åœ°æ–¹å。Californiaãªã©ã€‚
 .sp
-\fBcountry\fR: 2ʸ»ú¤Î¹ñ¥³¡¼¥É¡£CH¤Ê¤É¡£
+\fBcountry\fR: 2文字ã®å›½ã‚³ãƒ¼ãƒ‰ã€‚CHãªã©ã€‚
 .sp
-¼±ÊÌ̾ʸ»úÎó¤ò\fI\-dname\fR¥ª¥×¥·¥ç¥ó¤ÎÃͤȤ·¤Æ»ØÄꤹ¤ë¾ì¹ç(¤¿¤È¤¨¤Ð\fI\-genkeypair\fR¥³¥Þ¥ó¥É¤Ë)¡¢Ê¸»úÎó¤Ï¼¡¤Î·Á¼°¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å文字列を\fI\-dname\fRオプションã®å€¤ã¨ã—ã¦æŒ‡å®šã™ã‚‹å ´åˆ(ãŸã¨ãˆã°\fI\-genkeypair\fRコマンドã«)ã€æ–‡å­—列ã¯æ¬¡ã®å½¢å¼ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1375,7 +1375,7 @@
 .if n \{\
 .RE
 .\}
-¥¤¥¿¥ê¥Ã¥¯ÂΤιàÌܤϡ¢¼ÂºÝ¤Ë»ØÄꤹ¤ëÃͤòɽ¤·¤Þ¤¹¡£Ã»½Ì·Á¤Î¥­¡¼¥ï¡¼¥É¤Î°ÕÌ£¤Ï¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+イタリック体ã®é …ç›®ã¯ã€å®Ÿéš›ã«æŒ‡å®šã™ã‚‹å€¤ã‚’表ã—ã¾ã™ã€‚短縮形ã®ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã®æ„味ã¯ã€æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1391,7 +1391,7 @@
 .if n \{\
 .RE
 .\}
-¼¡¤Ë¼¨¤¹¤Î¤Ï¡¢¼±ÊÌ̾ʸ»úÎó¤ÎÎã¤Ç¤¹¡£
+次ã«ç¤ºã™ã®ã¯ã€è­˜åˆ¥å文字列ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1402,7 +1402,7 @@
 .if n \{\
 .RE
 .\}
-¤³¤Îʸ»úÎó¤ò»ÈÍѤ·¤¿¥³¥Þ¥ó¥É¤ÎÎã¤Ç¤¹¡£
+ã“ã®æ–‡å­—列を使用ã—ãŸã‚³ãƒžãƒ³ãƒ‰ã®ä¾‹ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1414,9 +1414,9 @@
 .if n \{\
 .RE
 .\}
-¥­¡¼¥ï¡¼¥É¤Îû½Ì·Á¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢CN¡¢cn¤ª¤è¤ÓCn¤Ï¡¢¤É¤ì¤âƱ¤¸¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
+キーワードã®çŸ­ç¸®å½¢ã§ã¯ã€å¤§æ–‡å­—ã¨å°æ–‡å­—ã¯åŒºåˆ¥ã•ã‚Œã¾ã›ã‚“。ãŸã¨ãˆã°ã€CNã€cnãŠã‚ˆã³Cnã¯ã€ã©ã‚Œã‚‚åŒã˜ã‚‚ã®ã¨ã—ã¦æ‰±ã‚ã‚Œã¾ã™ã€‚
 .sp
-°ìÊý¡¢¥­¡¼¥ï¡¼¥É¤Î»ØÄê½ç½ø¤Ë¤Ï°ÕÌ£¤¬¤¢¤ê¡¢³Æ¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¾å¤Ë¼¨¤·¤¿½ç½ø¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤À¤·¡¢¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¤¹¤Ù¤Æ»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë°ìÉô¤Î¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤ß¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+一方ã€ã‚­ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã®æŒ‡å®šé †åºã«ã¯æ„味ãŒã‚ã‚Šã€å„サブコンãƒãƒ¼ãƒãƒ³ãƒˆã¯ä¸Šã«ç¤ºã—ãŸé †åºã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã ã—ã€ã‚µãƒ–コンãƒãƒ¼ãƒãƒ³ãƒˆã‚’ã™ã¹ã¦æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ä¸€éƒ¨ã®ã‚µãƒ–コンãƒãƒ¼ãƒãƒ³ãƒˆã®ã¿ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1427,7 +1427,7 @@
 .if n \{\
 .RE
 .\}
-¼±ÊÌ̾ʸ»úÎó¤ÎÃͤ˥«¥ó¥Þ¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Çʸ»úÎó¤ò»ØÄꤹ¤ë¤È¤­¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¥«¥ó¥Þ¤ò¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥åʸ»ú(\e)¤Ç¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+識別å文字列ã®å€¤ã«ã‚«ãƒ³ãƒžãŒå«ã¾ã‚Œã‚‹å ´åˆã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æ–‡å­—列を指定ã™ã‚‹ã¨ãã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«ã‚«ãƒ³ãƒžã‚’ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥æ–‡å­—(\e)ã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1438,14 +1438,14 @@
 .if n \{\
 .RE
 .\}
-¼±ÊÌ̾ʸ»úÎó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¼±ÊÌ̾¤òɬÍפȤ¹¤ë¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¼±ÊÌ̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢³Æ¥µ¥Ö¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¥«¥ó¥Þ¤ò¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å(\e)¤Ç¥¨¥¹¥±¡¼¥×¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+識別å文字列をコマンドラインã§æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。識別åã‚’å¿…è¦ã¨ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ãã«ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§è­˜åˆ¥åを指定ã—ãªã‹ã£ãŸå ´åˆã¯ã€å„サブコンãƒãƒ¼ãƒãƒ³ãƒˆã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ã‚«ãƒ³ãƒžã‚’ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(\e)ã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
 .RE
-.SH "·Ù¹ð"
-.SS "¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È·Ù¹ð"
+.SH "警告"
+.SS "ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆè­¦å‘Š"
 .PP
-\fB½ÅÍ×\fR: ¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ëÁ°¤Ë¡¢¾ÚÌÀ½ñ¤ÎÆâÍƤò¿µ½Å¤ËÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£
-Windows¤ÎÎã:.PP
-¤Þ¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¾ÚÌÀ½ñ¤òɽ¼¨¤·¤Þ¤¹¡£É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬¡¢´üÂÔ¤µ¤ì¤ë¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬Á÷¤é¤ì¤Æ¤­¤Æ¡¢¤³¤Î¾ÚÌÀ½ñ¤ò\fI\etmp\ecert\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¤³¤Î¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+\fBé‡è¦\fR: ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹å‰ã«ã€è¨¼æ˜Žæ›¸ã®å†…容を慎é‡ã«èª¿ã¹ã¦ãã ã•ã„。
+Windowsã®ä¾‹:.PP
+ã¾ãšã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-printcert\fRコマンドã¾ãŸã¯\fI\-importcert\fRコマンドを使用ã—ã¦ã€è¨¼æ˜Žæ›¸ã‚’表示ã—ã¾ã™ã€‚表示ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒã€æœŸå¾…ã•ã‚Œã‚‹ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€è¨¼æ˜Žæ›¸ãŒé€ã‚‰ã‚Œã¦ãã¦ã€ã“ã®è¨¼æ˜Žæ›¸ã‚’\fI\etmp\ecert\fRã¨ã„ã†åå‰ã§ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«ã“ã®è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-printcert\fRコマンドを実行ã—ã¦ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントを表示ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1465,8 +1465,8 @@
 .if n \{\
 .RE
 .\}
-Oracle Solaris¤ÎÎã:.PP
-¤Þ¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤Þ¤¿¤Ï\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¾ÚÌÀ½ñ¤òɽ¼¨¤·¤Þ¤¹¡£É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬¡¢´üÂÔ¤µ¤ì¤ë¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È°ìÃפ¹¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¤¢¤ë¥æ¡¼¥¶¡¼¤«¤é¾ÚÌÀ½ñ¤¬Á÷¤é¤ì¤Æ¤­¤Æ¡¢¤³¤Î¾ÚÌÀ½ñ¤ò\fI/tmp/cert\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤·¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¤³¤Î¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤òɽ¼¨¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
+Oracle Solarisã®ä¾‹:.PP
+ã¾ãšã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-printcert\fRコマンドã¾ãŸã¯\fI\-importcert\fRコマンドを使用ã—ã¦ã€è¨¼æ˜Žæ›¸ã‚’表示ã—ã¾ã™ã€‚表示ã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントãŒã€æœŸå¾…ã•ã‚Œã‚‹ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ä¸€è‡´ã™ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚るユーザーã‹ã‚‰è¨¼æ˜Žæ›¸ãŒé€ã‚‰ã‚Œã¦ãã¦ã€ã“ã®è¨¼æ˜Žæ›¸ã‚’\fI/tmp/cert\fRã¨ã„ã†åå‰ã§ãƒ•ã‚¡ã‚¤ãƒ«ã«æ ¼ç´ã—ã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«ã“ã®è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-printcert\fRコマンドを実行ã—ã¦ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントを表示ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -1487,32 +1487,32 @@
 .RE
 .\}
 .PP
-¼¡¤Ë¡¢¾ÚÌÀ½ñ¤òÁ÷¿®¤·¤¿¿Íʪ¤ËÏ¢Íí¤·¡¢¤³¤Î¿Íʪ¤¬Ä󼨤·¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢¾å¤Î¥³¥Þ¥ó¥É¤Çɽ¼¨¤µ¤ì¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤¬°ìÃפ¹¤ì¤Ð¡¢Á÷¿®ÅÓÃæ¤Ç¾¤Î²¿¼Ô¤«(¹¶·â¼Ô¤Ê¤É)¤Ë¤è¤ë¾ÚÌÀ½ñ¤Î¤¹¤êÂؤ¨¤¬¹Ô¤ï¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£Á÷¿®ÅÓÃæ¤Ç¤³¤Î¼ï¤Î¹¶·â¤¬¹Ô¤ï¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¥Á¥§¥Ã¥¯¤ò¹Ô¤ï¤º¤Ë¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¡¢¹¶·â¼Ô¤Ë¤è¤Ã¤Æ½ð̾¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¤â¤Î(¹¶·âŪ°Õ¿Þ¤ò»ý¤Ä¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤ò´Þ¤ó¤ÀJAR¥Õ¥¡¥¤¥ë¤Ê¤É)¤ò¿®Íꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
+次ã«ã€è¨¼æ˜Žæ›¸ã‚’é€ä¿¡ã—ãŸäººç‰©ã«é€£çµ¡ã—ã€ã“ã®äººç‰©ãŒæ示ã—ãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€ä¸Šã®ã‚³ãƒžãƒ³ãƒ‰ã§è¡¨ç¤ºã•ã‚ŒãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚フィンガープリントãŒä¸€è‡´ã™ã‚Œã°ã€é€ä¿¡é€”中ã§ä»–ã®ä½•è€…ã‹(攻撃者ãªã©)ã«ã‚ˆã‚‹è¨¼æ˜Žæ›¸ã®ã™ã‚Šæ›¿ãˆãŒè¡Œã‚ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã§ãã¾ã™ã€‚é€ä¿¡é€”中ã§ã“ã®ç¨®ã®æ”»æ’ƒãŒè¡Œã‚ã‚Œã¦ã„ãŸå ´åˆã€ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã‚ãšã«è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ã€æ”»æ’ƒè€…ã«ã‚ˆã£ã¦ç½²åã•ã‚ŒãŸã™ã¹ã¦ã®ã‚‚ã®(攻撃的æ„図をæŒã¤ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚“ã JARファイルãªã©)ã‚’ä¿¡é ¼ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚
 .PP
-\fBÃí°Õ:\fR
-¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ëÁ°¤Ë\fI\-printcert\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£¥­¡¼¥¹¥È¥¢Æâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥ê¥¹¥È¤Ë¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢\fI\-importcert\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¾ÚÌÀ½ñ¤Î¾ðÊó¤¬É½¼¨¤µ¤ì¡¢³Îǧ¤òµá¤á¤ë¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤ë¤¿¤á¤Ç¤¹¡£¥æ¡¼¥¶¡¼¤Ï¥¤¥ó¥Ý¡¼¥ÈÁàºî¤òÄä»ß¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¤³¤ì¤ò¼Â¹Ô¤Ç¤­¤ë¤Î¤Ï¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤻ¤º¤Ë\fI\-importcert\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¾ì¹ç¤Î¤ß¤Ç¤¹¡£\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤È¤ÎÂÐÏäϹԤï¤ì¤Þ¤»¤ó¡£
-.SS "¥Ñ¥¹¥ï¡¼¥É·Ù¹ð"
+\fB注æ„:\fR
+証明書をインãƒãƒ¼ãƒˆã™ã‚‹å‰ã«\fI\-printcert\fRコマンドを実行ã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。キーストア内ã®ä¿¡é ¼ã§ãる証明書ã®ãƒªã‚¹ãƒˆã«è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€\fI\-importcert\fRコマンドã«ã‚ˆã£ã¦è¨¼æ˜Žæ›¸ã®æƒ…å ±ãŒè¡¨ç¤ºã•ã‚Œã€ç¢ºèªã‚’求ã‚るメッセージãŒè¡¨ç¤ºã•ã‚Œã‚‹ãŸã‚ã§ã™ã€‚ユーザーã¯ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ“作をåœæ­¢ã§ãã¾ã™ã€‚ãŸã ã—ã€ã“れを実行ã§ãã‚‹ã®ã¯ã€\fI\-noprompt\fRオプションを指定ã›ãšã«\fI\-importcert\fRコマンドを呼ã³å‡ºã™å ´åˆã®ã¿ã§ã™ã€‚\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ã®å¯¾è©±ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。
+.SS "パスワード警告"
 .PP
-¥­¡¼¥¹¥È¥¢¤ËÂФ¹¤ëÁàºî¤ò¹Ô¤¦¤Û¤È¤ó¤É¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹¡£¤Þ¤¿¡¢°ìÉô¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢Èó¸ø³«/ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬É¬Íפˤʤ뤳¤È¤¬¤¢¤ê¤Þ¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄê¤Ç¤­¤Þ¤¹(\fI\-storepass\fR¥ª¥×¥·¥ç¥ó¤È\fI\-keypass\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍÑ)¡£¤¿¤À¤·¡¢¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£É¬Íפʥѥ¹¥ï¡¼¥É¤Î¥ª¥×¥·¥ç¥ó¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
-.SS "¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë·Ù¹ð"
+キーストアã«å¯¾ã™ã‚‹æ“作を行ã†ã»ã¨ã‚“ã©ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚ã¾ãŸã€ä¸€éƒ¨ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€éžå…¬é–‹/秘密éµã®ãƒ‘スワードãŒå¿…è¦ã«ãªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚パスワードã¯ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§æŒ‡å®šã§ãã¾ã™(\fI\-storepass\fRオプションã¨\fI\-keypass\fRオプションを使用)。ãŸã ã—ã€ãƒ†ã‚¹ãƒˆã‚’目的ã¨ã™ã‚‹å ´åˆã€ã¾ãŸã¯å®‰å…¨ã§ã‚ã‚‹ã“ã¨ãŒã‚ã‹ã£ã¦ã„るシステムã§å®Ÿè¡Œã™ã‚‹å ´åˆä»¥å¤–ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚„スクリプトã§ãƒ‘スワードを指定ã—ãªã„ã§ãã ã•ã„。必è¦ãªãƒ‘スワードã®ã‚ªãƒ—ションをコマンドラインã§æŒ‡å®šã—ãªã‹ã£ãŸå ´åˆã¯ã€ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
+.SS "証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹è­¦å‘Š"
 .PP
-¥¤¥ó¥¿¡¼¥Í¥Ã¥Èɸ½àRFC 5280¤Ç¤Ï¡¢X\&.509¾ÚÌÀ½ñ¤Î½àµò¤Ë´Ø¤¹¤ë¥×¥í¥Õ¥¡¥¤¥ë¤¬ÄêµÁ¤µ¤ì¤Æ¤ª¤ê¡¢¾ÚÌÀ½ñ¤Î¥Õ¥£¡¼¥ë¥É¤ª¤è¤Ó¥¨¥¯¥¹¥Æ¥ó¥·¥ç¥ó¤ËÍ­¸ú¤ÊÃͤª¤è¤ÓÃͤÎÁȹ礻¤¬µ­ºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£É¸½à¤Ë¤Ä¤¤¤Æ¤Ï¡¢
-http://tools\&.ietf\&.org/rfc/rfc5280\&.txt¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+インターãƒãƒƒãƒˆæ¨™æº–RFC 5280ã§ã¯ã€X\&.509証明書ã®æº–æ‹ ã«é–¢ã™ã‚‹ãƒ—ロファイルãŒå®šç¾©ã•ã‚Œã¦ãŠã‚Šã€è¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŠã‚ˆã³ã‚¨ã‚¯ã‚¹ãƒ†ãƒ³ã‚·ãƒ§ãƒ³ã«æœ‰åŠ¹ãªå€¤ãŠã‚ˆã³å€¤ã®çµ„åˆã›ãŒè¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚標準ã«ã¤ã„ã¦ã¯ã€
+http://tools\&.ietf\&.org/rfc/rfc5280\&.txtã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤³¤ì¤é¤Î¥ë¡¼¥ë¤¹¤Ù¤Æ¤¬Å¬ÍѤµ¤ì¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢É¸½à¤Ë½àµò¤·¤Ê¤¤¾ÚÌÀ½ñ¤òÀ¸À®¤Ç¤­¤Þ¤¹¡£É¸½à¤Ë½àµò¤·¤Ê¤¤¾ÚÌÀ½ñ¤Ï¡¢JRE¤ä¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÇµñÈݤµ¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤Ï¡¢\fI\-dname\fR¤ä\fI\-ext\fR¤Ê¤É¤ÇŬÀµ¤Ê¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "Ãí°Õ"
-.SS "¿·¤·¤¤¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È"
+\fIkeytool\fRコマンドã§ã¯ã€ã“れらã®ãƒ«ãƒ¼ãƒ«ã™ã¹ã¦ãŒé©ç”¨ã•ã‚Œã‚‹ã‚ã‘ã§ã¯ãªã„ãŸã‚ã€æ¨™æº–ã«æº–æ‹ ã—ãªã„証明書を生æˆã§ãã¾ã™ã€‚標準ã«æº–æ‹ ã—ãªã„証明書ã¯ã€JREã‚„ä»–ã®ã‚¢ãƒ—リケーションã§æ‹’å¦ã•ã‚Œã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ユーザーã¯ã€\fI\-dname\fRã‚„\fI\-ext\fRãªã©ã§é©æ­£ãªã‚ªãƒ—ションを指定ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。
+.SH "注æ„"
+.SS "æ–°ã—ã„ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢¤Ë¾ÚÌÀ½ñ¤òÄɲ乤ëÁ°¤Ë¡¢¥­¡¼¥¹¥È¥¢Æâ¤Ë¤¹¤Ç¤Ë¸ºß¤¹¤ë¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤«¤é(¥ë¡¼¥ÈCA¤Î)¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¤Î¥Á¥§¡¼¥ó¤Î¹½ÃÛ¤ò»î¤ß¤Þ¤¹¡£
+\fIkeytool\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã«è¨¼æ˜Žæ›¸ã‚’追加ã™ã‚‹å‰ã«ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã«ã™ã§ã«å­˜åœ¨ã™ã‚‹ä¿¡é ¼ã§ãる証明書を使用ã—ã¦ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã‹ã‚‰(ルートCAã®)自己署å証明書ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ã®ãƒã‚§ãƒ¼ãƒ³ã®æ§‹ç¯‰ã‚’試ã¿ã¾ã™ã€‚
 .PP
-\fI\-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢ÄɲäξÚÌÀ½ñ¤Ï¿®Íê¤Ç¤­¤ë¤¹¤Ê¤ï¤Á\fIcacerts\fR¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤ë¾ÚÌÀ½ñ¤Î¥Á¥§¡¼¥ó¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
+\fI\-trustcacerts\fRオプションを指定ã—ãŸå ´åˆã€è¿½åŠ ã®è¨¼æ˜Žæ›¸ã¯ä¿¡é ¼ã§ãã‚‹ã™ãªã‚ã¡\fIcacerts\fRã¨ã„ã†åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å«ã¾ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®ãƒã‚§ãƒ¼ãƒ³ã¨ã¿ãªã•ã‚Œã¾ã™ã€‚
 .PP
-\fIkeytool\fR¥³¥Þ¥ó¥É¤¬¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤«¤é¼«¸Ê½ð̾¾ÚÌÀ½ñ(¥­¡¼¥¹¥È¥¢¤Þ¤¿¤Ï\fIcacerts\fR¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¼«¸Ê½ð̾¾ÚÌÀ½ñ)¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¤Î¥Ñ¥¹¤Î¹½Ãۤ˼ºÇÔ¤·¤¿¾ì¹ç¤Ï¡¢¥¤¥ó¥Ý¡¼¥È¤¹¤ë¾ÚÌÀ½ñ¤Î¾ðÊó¤òɽ¼¨¤·¡¢¥æ¡¼¥¶¡¼¤Ë³Îǧ¤òµá¤á¤Þ¤¹¡£¤³¤Î¾ì¹ç¤Ï¡¢É½¼¨¤µ¤ì¤¿¾ÚÌÀ½ñ¤Î¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¡¢Â¾¤Î¤Ê¤ó¤é¤«¤Î(¿®Íê¤Ç¤­¤ë)¾ðÊó¸»(¾ÚÌÀ½ñ¤Î½êÍ­¼Ô¤Ê¤É)¤«¤éÆþ¼ê¤·¤¿¥Õ¥£¥ó¥¬¡¼¥×¥ê¥ó¥È¤È¤òÈæ³Ó¤·¤Þ¤¹¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤È¤·¤Æ¾ÚÌÀ½ñ¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¾ÚÌÀ½ñ¤¬Í­¸ú¤Ç¤¢¤ë¤³¤È¤ò¿µ½Å¤Ë³Îǧ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤Î¥¤¥ó¥Ý¡¼¥È·Ù¹ð¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥¤¥ó¥Ý¡¼¥ÈÁàºî¤Ï¡¢¾ÚÌÀ½ñ¤ò³Îǧ¤¹¤ë»þÅÀ¤ÇÃæ»ß¤Ç¤­¤Þ¤¹¡£\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥æ¡¼¥¶¡¼¤È¤ÎÂÐÏäϹԤï¤ì¤Þ¤»¤ó¡£
-.SS "¾ÚÌÀ½ñ±þÅú¤Î¥¤¥ó¥Ý¡¼¥È"
+\fIkeytool\fRコマンドãŒã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã‹ã‚‰è‡ªå·±ç½²å証明書(キーストアã¾ãŸã¯\fIcacerts\fRファイルã«å«ã¾ã‚Œã¦ã„る自己署å証明書)ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ã®ãƒ‘スã®æ§‹ç¯‰ã«å¤±æ•—ã—ãŸå ´åˆã¯ã€ã‚¤ãƒ³ãƒãƒ¼ãƒˆã™ã‚‹è¨¼æ˜Žæ›¸ã®æƒ…報を表示ã—ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ç¢ºèªã‚’求ã‚ã¾ã™ã€‚ã“ã®å ´åˆã¯ã€è¡¨ç¤ºã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã®ãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã€ä»–ã®ãªã‚“らã‹ã®(ä¿¡é ¼ã§ãã‚‹)情報æº(証明書ã®æ‰€æœ‰è€…ãªã©)ã‹ã‚‰å…¥æ‰‹ã—ãŸãƒ•ã‚£ãƒ³ã‚¬ãƒ¼ãƒ—リントã¨ã‚’比較ã—ã¾ã™ã€‚ä¿¡é ¼ã§ãる証明書ã¨ã—ã¦è¨¼æ˜Žæ›¸ã‚’インãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€è¨¼æ˜Žæ›¸ãŒæœ‰åŠ¹ã§ã‚ã‚‹ã“ã¨ã‚’æ…Žé‡ã«ç¢ºèªã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ä¿¡é ¼ã§ãる証明書ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆè­¦å‘Šã‚’å‚ç…§ã—ã¦ãã ã•ã„。インãƒãƒ¼ãƒˆæ“作ã¯ã€è¨¼æ˜Žæ›¸ã‚’確èªã™ã‚‹æ™‚点ã§ä¸­æ­¢ã§ãã¾ã™ã€‚\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ã®å¯¾è©±ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。
+.SS "証明書応答ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆ"
 .PP
-¾ÚÌÀ½ñ±þÅú¤ò¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È¤­¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¡¢¤ª¤è¤Ó(\fI\-trustcacert\fR\fIs\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï)\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤¿¾ÚÌÀ½ñ¤ò»ÈÍѤ·¤Æ¾ÚÌÀ½ñ±þÅú¤¬¸¡ºº¤µ¤ì¤Þ¤¹¡£cacerts¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+証明書応答をインãƒãƒ¼ãƒˆã™ã‚‹ã¨ãã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã®ä¿¡é ¼ã§ãる証明書ã€ãŠã‚ˆã³(\fI\-trustcacert\fR\fIs\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯)\fIcacerts\fRキーストア・ファイルã§æ§‹æˆã•ã‚ŒãŸè¨¼æ˜Žæ›¸ã‚’使用ã—ã¦è¨¼æ˜Žæ›¸å¿œç­”ãŒæ¤œæŸ»ã•ã‚Œã¾ã™ã€‚cacerts証明書ファイルをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¾ÚÌÀ½ñ±þÅú¤¬¿®Íê¤Ç¤­¤ë¤«¤É¤¦¤«¤ò·èÄꤹ¤ëÊýË¡¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+証明書応答ãŒä¿¡é ¼ã§ãã‚‹ã‹ã©ã†ã‹ã‚’決定ã™ã‚‹æ–¹æ³•ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -1522,7 +1522,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬Ã±°ì¤ÎX\&.509¾ÚÌÀ½ñ¤Ç¤¢¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¾ÚÌÀ½ñ±þÅú¤«¤é(¥ë¡¼¥ÈCA¤Î)¼«¸Ê½ð̾¾ÚÌÀ½ñ¤Ë»ê¤ë¤Þ¤Ç¤Î¿®Íê¥Á¥§¡¼¥ó¤Î³ÎΩ¤ò»î¤ß¤Þ¤¹¡£¾ÚÌÀ½ñ±þÅú¤È¡¢¾ÚÌÀ½ñ±þÅú¤Îǧ¾Ú¤Ë»ÈÍѤµ¤ì¤ë¾ÚÌÀ½ñ¤Î³¬Áع½Â¤¤Ï¡¢alias¤Î¿·¤·¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ò·ÁÀ®¤·¤Þ¤¹¡£¿®Íê¥Á¥§¡¼¥ó¤¬³ÎΩ¤µ¤ì¤Ê¤¤¾ì¹ç¡¢¾ÚÌÀ½ñ±þÅú¤Ï¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¾ÚÌÀ½ñ¤ò½ÐÎϤ»¤º¡¢¥æ¡¼¥¶¡¼¤Ë¸¡¾Ú¤òµá¤á¤ë¥×¥í¥ó¥×¥È¤òɽ¼¨¤·¤Þ¤¹¡£¥æ¡¼¥¶¡¼¤¬¾ÚÌÀ½ñ±þÅú¤Î¿®ÍêÀ­¤òȽÃǤ¹¤ë¤Î¤ÏÈó¾ï¤ËÆñ¤·¤¤¤¿¤á¤Ç¤¹¡£
+証明書応答ãŒå˜ä¸€ã®X\&.509証明書ã§ã‚ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€è¨¼æ˜Žæ›¸å¿œç­”ã‹ã‚‰(ルートCAã®)自己署å証明書ã«è‡³ã‚‹ã¾ã§ã®ä¿¡é ¼ãƒã‚§ãƒ¼ãƒ³ã®ç¢ºç«‹ã‚’試ã¿ã¾ã™ã€‚証明書応答ã¨ã€è¨¼æ˜Žæ›¸å¿œç­”ã®èªè¨¼ã«ä½¿ç”¨ã•ã‚Œã‚‹è¨¼æ˜Žæ›¸ã®éšŽå±¤æ§‹é€ ã¯ã€aliasã®æ–°ã—ã„証明書ãƒã‚§ãƒ¼ãƒ³ã‚’å½¢æˆã—ã¾ã™ã€‚ä¿¡é ¼ãƒã‚§ãƒ¼ãƒ³ãŒç¢ºç«‹ã•ã‚Œãªã„å ´åˆã€è¨¼æ˜Žæ›¸å¿œç­”ã¯ã‚¤ãƒ³ãƒãƒ¼ãƒˆã•ã‚Œã¾ã›ã‚“。ã“ã®å ´åˆã€\fIkeytool\fRコマンドã¯è¨¼æ˜Žæ›¸ã‚’出力ã›ãšã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ¤œè¨¼ã‚’求ã‚るプロンプトを表示ã—ã¾ã™ã€‚ユーザーãŒè¨¼æ˜Žæ›¸å¿œç­”ã®ä¿¡é ¼æ€§ã‚’判断ã™ã‚‹ã®ã¯éžå¸¸ã«é›£ã—ã„ãŸã‚ã§ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -1533,13 +1533,13 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¾ÚÌÀ½ñ±þÅú¤¬PKCS#7·Á¼°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤Þ¤¿¤Ï°ìÏ¢¤ÎX\&.509¾ÚÌÀ½ñ¤Ç¤¢¤ë¾ì¹ç¡¢¥Á¥§¡¼¥ó¤Ï¡¢¥æ¡¼¥¶¡¼¤Î¾ÚÌÀ½ñ¤¬ºÇ½é¤Ë¡¢0°Ê¾å¤ÎCA¾ÚÌÀ½ñ¤¬¤½¤Î¼¡¤Ë¤¯¤ë¤è¤¦¤Ëʤ٤é¤ì¤Þ¤¹¡£¥Á¥§¡¼¥ó¤¬¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Ç½ª¤ï¤ê¡¢\fI \-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¤½¤Î¾ÚÌÀ½ñ¤È¡¢¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¿®Íê¤Ç¤­¤ë¤¹¤Ù¤Æ¤Î¾ÚÌÀ½ñ¤ò¾È¹ç¤·¤è¤¦¤È¤·¤Þ¤¹¡£¥Á¥§¡¼¥ó¤¬¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤Ç½ª¤ï¤Ã¤Æ¤ª¤é¤º¡¢\fI\-trustcacerts\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\fIkeytool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Þ¤¿¤Ï\fIcacerts\fR¥­¡¼¥¹¥È¥¢¡¦¥Õ¥¡¥¤¥ëÆâ¤Î¿®Íê¤Ç¤­¤ë¾ÚÌÀ½ñ¤«¤é¼«¸Ê½ð̾¤Î¥ë¡¼¥ÈCA¾ÚÌÀ½ñ¤ò¸«¤Ä¤±¤Æ¤½¤ì¤ò¥Á¥§¡¼¥ó¤ÎËöÈø¤ËÄɲ䷤褦¤È¤·¤Þ¤¹¡£¤½¤Î¾ÚÌÀ½ñ¤¬¸«¤Ä¤«¤é¤º¡¢\fI\-noprompt\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Á¥§¡¼¥óÆâ¤ÎºÇ¸å¤Î¾ÚÌÀ½ñ¤Î¾ðÊ󤬽ÐÎϤµ¤ì¡¢¥æ¡¼¥¶¡¼¤Ï³Îǧ¤òµá¤á¤é¤ì¤Þ¤¹¡£
+証明書応答ãŒPKCS#7å½¢å¼ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã¾ãŸã¯ä¸€é€£ã®X\&.509証明書ã§ã‚ã‚‹å ´åˆã€ãƒã‚§ãƒ¼ãƒ³ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è¨¼æ˜Žæ›¸ãŒæœ€åˆã«ã€0以上ã®CA証明書ãŒãã®æ¬¡ã«ãるよã†ã«ä¸¦ã¹ã‚‰ã‚Œã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³ãŒè‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書ã§çµ‚ã‚ã‚Šã€\fI \-trustcacerts\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ãã®è¨¼æ˜Žæ›¸ã¨ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストア・ファイル内ã®ä¿¡é ¼ã§ãã‚‹ã™ã¹ã¦ã®è¨¼æ˜Žæ›¸ã‚’ç…§åˆã—よã†ã¨ã—ã¾ã™ã€‚ãƒã‚§ãƒ¼ãƒ³ãŒè‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書ã§çµ‚ã‚ã£ã¦ãŠã‚‰ãšã€\fI\-trustcacerts\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€\fIkeytool\fRコマンドã¯ã€ã‚­ãƒ¼ã‚¹ãƒˆã‚¢å†…ã¾ãŸã¯\fIcacerts\fRキーストア・ファイル内ã®ä¿¡é ¼ã§ãる証明書ã‹ã‚‰è‡ªå·±ç½²åã®ãƒ«ãƒ¼ãƒˆCA証明書を見ã¤ã‘ã¦ãれをãƒã‚§ãƒ¼ãƒ³ã®æœ«å°¾ã«è¿½åŠ ã—よã†ã¨ã—ã¾ã™ã€‚ãã®è¨¼æ˜Žæ›¸ãŒè¦‹ã¤ã‹ã‚‰ãšã€\fI\-noprompt\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒã‚§ãƒ¼ãƒ³å†…ã®æœ€å¾Œã®è¨¼æ˜Žæ›¸ã®æƒ…å ±ãŒå‡ºåŠ›ã•ã‚Œã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ç¢ºèªã‚’求ã‚られã¾ã™ã€‚
 .RE
 .PP
-¾ÚÌÀ½ñ±þÅúÆâ¤Î¸ø³«¸°¤¬\fIalias\fR¤Ç¤¹¤Ç¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¥æ¡¼¥¶¡¼¤Î¸ø³«¸°¤Ë°ìÃפ·¤¿¾ì¹ç¡¢¸Å¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤¬±þÅúÆâ¤Î¿·¤·¤¤¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£°ÊÁ°¤Î¾ÚÌÀ½ñ¥Á¥§¡¼¥ó¤òÍ­¸ú¤Ê\fIkeypass\fR¤ÇÃÖ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤ë¤Î¤Ï¡¢¥¨¥ó¥È¥ê¤ÎÈëÌ©¸°¤òÊݸ¤ë¤¿¤á¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤¿¾ì¹ç¤Î¤ß¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤¬¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢ÈëÌ©¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
+証明書応答内ã®å…¬é–‹éµãŒ\fIalias\fRã§ã™ã§ã«æ ¼ç´ã•ã‚Œã¦ã„るユーザーã®å…¬é–‹éµã«ä¸€è‡´ã—ãŸå ´åˆã€å¤ã„証明書ãƒã‚§ãƒ¼ãƒ³ãŒå¿œç­”内ã®æ–°ã—ã„証明書ãƒã‚§ãƒ¼ãƒ³ã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚以å‰ã®è¨¼æ˜Žæ›¸ãƒã‚§ãƒ¼ãƒ³ã‚’有効ãª\fIkeypass\fRã§ç½®ãæ›ãˆã‚‹ã“ã¨ãŒã§ãã‚‹ã®ã¯ã€ã‚¨ãƒ³ãƒˆãƒªã®ç§˜å¯†éµã‚’ä¿è­·ã™ã‚‹ãŸã‚ã®ãƒ‘スワードを指定ã—ãŸå ´åˆã®ã¿ã§ã™ã€‚パスワードを指定ã—ã¦ãŠã‚‰ãšã€ç§˜å¯†éµã®ãƒ‘スワードãŒã‚­ãƒ¼ã‚¹ãƒˆã‚¢ã®ãƒ‘スワードã¨ç•°ãªã‚‹å ´åˆã¯ã€ç§˜å¯†éµã®ãƒ‘スワードã®å…¥åŠ›ã‚’求ã‚られã¾ã™ã€‚
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï\fI\-import\fR¤È¤¤¤¦Ì¾Á°¤Ç¤·¤¿¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°ú¤­Â³¤­¸Å¤¤Ì¾Á°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£º£¸å¤Ï¡¢¿·¤·¤¤Ì¾Á°\fI\-importcert\fR¤¬Í¥À褵¤ì¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ä»¥å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯\fI\-import\fRã¨ã„ã†åå‰ã§ã—ãŸã€‚ã“ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã€å¼•ã続ãå¤ã„åå‰ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚今後ã¯ã€æ–°ã—ã„åå‰\fI\-importcert\fRãŒå„ªå…ˆã•ã‚Œã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -1571,8 +1571,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/tutorial/security/index\&.html¤Ë¤¢¤ë
-¡Ö¥³¡¼¥¹: Java SE¤Î¥»¥­¥å¥ê¥Æ¥£µ¡Ç½¡×
+http://docs\&.oracle\&.com/javase/tutorial/security/index\&.htmlã«ã‚ã‚‹
+「コース: Java SEã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£æ©Ÿèƒ½ã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/native2ascii.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/native2ascii.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: native2ascii
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¹ñºÝ²½¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: 国際化ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "native2ascii" "1" "2013ǯ11·î21Æü" "JDK 8" "¹ñºÝ²½¥Ä¡¼¥ë"
+.TH "native2ascii" "1" "2013年11月21日" "JDK 8" "国際化ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-native2ascii \- ¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ëǤ°Õ¤Îʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Îʸ»ú¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò¡¢ASCII¤ª¤è¤ÓUnicode¤Ç¥¨¥¹¥±¡¼¥×¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Æ(¤Þ¤¿¤Ï¤½¤ÎµÕ)¡¢¥í¡¼¥«¥é¥¤¥º²Äǽ¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºîÀ®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+native2ascii \- サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã‚‹ä»»æ„ã®æ–‡å­—エンコーディングã®æ–‡å­—ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ASCIIãŠã‚ˆã³Unicodeã§ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¦(ã¾ãŸã¯ãã®é€†)ã€ãƒ­ãƒ¼ã‚«ãƒ©ã‚¤ã‚ºå¯èƒ½ãªã‚¢ãƒ—リケーションを作æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,34 +64,34 @@
 .PP
 \fIinputfile\fR
 .RS 4
-ASCII¤ËÊÑ´¹¤¹¤ë¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡£
+ASCIIã«å¤‰æ›ã™ã‚‹ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã€‚
 .RE
 .PP
 \fIoutputfile\fR
 .RS 4
-ÊÑ´¹¤µ¤ì¤¿ASCII¥Õ¥¡¥¤¥ë¡£
+変æ›ã•ã‚ŒãŸASCIIファイル。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fInative2ascii\fR¥³¥Þ¥ó¥É¤Ï¡¢ASCII¥­¥ã¥é¥¯¥¿¡¦¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Ê¤¤¤¹¤Ù¤Æ¤Îʸ»ú¤ËUnicode¥¨¥¹¥±¡¼¥×(\fI\eu\fR\fIxxxx\fR)ɽµ­Ë¡¤ò»ÈÍѤ·¤Æ¡¢Java Runtime Environment (JRE)¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢ASCII¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£¤³¤Î¥×¥í¥»¥¹¤Ï¡¢ISO\-8859\-1ʸ»ú¥»¥Ã¥È¤Ë´Þ¤Þ¤ì¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¥×¥í¥Ñ¥Æ¥£¡¦¥Õ¥¡¥¤¥ë¤ÇɬÍפǤ¹¡£¤³¤Î¥Ä¡¼¥ë¤Ï¡¢¤½¤ÎµÕ¤ÎÊÑ´¹¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+\fInative2ascii\fRコマンドã¯ã€ASCIIキャラクタ・セットã«å«ã¾ã‚Œãªã„ã™ã¹ã¦ã®æ–‡å­—ã«Unicodeエスケープ(\fI\eu\fR\fIxxxx\fR)表記法を使用ã—ã¦ã€Java Runtime Environment (JRE)ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエンコードã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€ASCIIã§ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¾ã™ã€‚ã“ã®ãƒ—ロセスã¯ã€ISO\-8859\-1文字セットã«å«ã¾ã‚Œãªã„文字ãŒå«ã¾ã‚Œã¦ã„るプロパティ・ファイルã§å¿…è¦ã§ã™ã€‚ã“ã®ãƒ„ールã¯ã€ãã®é€†ã®å¤‰æ›ã‚’実行ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
 .PP
-\fIoutputfile\fRÃͤò¾Êά¤·¤¿¾ì¹ç¡¢É¸½à½ÐÎϤ˽ÐÎϤµ¤ì¤Þ¤¹¡£¤µ¤é¤Ë¡¢\fIinputfile\fRÃͤò¾Êά¤·¤¿¾ì¹ç¡¢É¸½àÆþÎϤ«¤éÆþÎϤµ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIoutputfile\fR値をçœç•¥ã—ãŸå ´åˆã€æ¨™æº–出力ã«å‡ºåŠ›ã•ã‚Œã¾ã™ã€‚ã•ã‚‰ã«ã€\fIinputfile\fR値をçœç•¥ã—ãŸå ´åˆã€æ¨™æº–入力ã‹ã‚‰å…¥åŠ›ã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-reverse
 .RS 4
-µÕ¤Î½èÍý¤ò¹Ô¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ISO\-8859\-1¤ÇUnicode¥¨¥¹¥±¡¼¥×¤ò»ÈÍѤ·¤Æ¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¡¢JRE¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£
+逆ã®å‡¦ç†ã‚’è¡Œã„ã¾ã™ã€‚ã¤ã¾ã‚Šã€ISO\-8859\-1ã§Unicodeエスケープを使用ã—ã¦ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã€JREã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹æ–‡å­—エンコーディングã®ãƒ•ã‚¡ã‚¤ãƒ«ã«å¤‰æ›ã—ã¾ã™ã€‚
 .RE
 .PP
 \-encoding \fIencoding_name\fR
 .RS 4
-ÊÑ´¹½èÍý¤Ç»ÈÍѤ¹¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°(\fIjava\&.nio\&.charset\&.Charset\&.defaultCharset\fR¥á¥½¥Ã¥É¤ÇÄêµÁ¤µ¤ì¤¿)¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£\fIencoding_name\fRʸ»úÎó¤Ï¡¢JRE¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ëʸ»ú¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Î̾Á°¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/intl/encoding\&.doc\&.html¤Ë¤¢¤ë
-¡Ö¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+変æ›å‡¦ç†ã§ä½¿ç”¨ã™ã‚‹æ–‡å­—エンコーディングã®åå‰ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒå­˜åœ¨ã—ãªã„å ´åˆã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æ–‡å­—エンコーディング(\fIjava\&.nio\&.charset\&.Charset\&.defaultCharset\fRメソッドã§å®šç¾©ã•ã‚ŒãŸ)ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚\fIencoding_name\fR文字列ã¯ã€JREã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„る文字エンコーディングã®åå‰ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/intl/encoding\&.doc\&.htmlã«ã‚ã‚‹
+「サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„るエンコーディングã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó(JVM)¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシン(JVM)ã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/orbd.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/orbd.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: orbd
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "orbd" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "orbd" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-orbd \- CORBA´Ä¶­¤Î¥µ¡¼¥Ð¡¼¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¯¥é¥¤¥¢¥ó¥È¤«¤é¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+orbd \- CORBA環境ã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚る永続オブジェクトをクライアントã‹ã‚‰æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã›ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,11 +64,11 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIorbd\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢CORBA´Ä¶­¤Î¥µ¡¼¥Ð¡¼¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¯¥é¥¤¥¢¥ó¥È¤«¤éÆ©²áŪ¤Ë¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£orbd¥Ä¡¼¥ë¤Ë´Þ¤Þ¤ì¤ë¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»ÈÍѤ¹¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤ÏCORBA´Ä¶­¤Ç¥µ¡¼¥Ð¡¼¾å¤Ë¤¢¤ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤òÆ©²áŪ¤Ë¸¡º÷¤·¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£±Ê³¥µ¡¼¥Ð¡¼¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë±Ê³¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤òȯ¹Ô¤¹¤ëºÝ¡¢¥µ¡¼¥Ð¡¼¤Î¥Ý¡¼¥ÈÈÖ¹æ¤Î¤«¤ï¤ê¤ËORBD¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë´Þ¤á¤Þ¤¹¡£±Ê³¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ËORBD¥Ý¡¼¥ÈÈÖ¹æ¤ò´Þ¤á¤ë¤³¤È¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ÊÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
+\fIorbd\fRコマンドを使用ã™ã‚‹ã¨ã€CORBA環境ã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚る永続オブジェクトをクライアントã‹ã‚‰é€éŽçš„ã«æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚orbdツールã«å«ã¾ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’使用ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯CORBA環境ã§ã‚µãƒ¼ãƒãƒ¼ä¸Šã«ã‚る永続オブジェクトをé€éŽçš„ã«æ¤œç´¢ã—ã¦å‘¼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚永続サーãƒãƒ¼ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«æ°¸ç¶šã‚ªãƒ–ジェクトå‚照を発行ã™ã‚‹éš›ã€ã‚µãƒ¼ãƒãƒ¼ã®ãƒãƒ¼ãƒˆç•ªå·ã®ã‹ã‚ã‚Šã«ORBDã®ãƒãƒ¼ãƒˆç•ªå·ã‚’オブジェクトå‚ç…§ã«å«ã‚ã¾ã™ã€‚永続オブジェクトå‚ç…§ã®ã‚ªãƒ–ジェクトå‚ç…§ã«ORBDãƒãƒ¼ãƒˆç•ªå·ã‚’å«ã‚ã‚‹ã“ã¨ã«ã¯ã€æ¬¡ã®ã‚ˆã†ãªåˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -78,7 +78,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤¬¡¢¥µ¡¼¥Ð¡¼¤Î¥é¥¤¥Õ¡¦¥µ¥¤¥¯¥ë¤È̵´Ø·¸¤Ë¤Ê¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¡¢½é¤á¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¤È¤­¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¥µ¡¼¥Ð¡¼¤Ë¤è¤Ã¤Æ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ëȯ¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢¤½¤Î¸å¤Ï¡¢¥µ¡¼¥Ð¡¼¤Î³«»Ï¤Þ¤¿¤Ï¥·¥ã¥Ã¥È¥À¥¦¥ó¤Î²ó¿ô¤Ë¤«¤«¤ï¤é¤º¡¢¸Æ¤Ó½Ð¤·¤¿¥¯¥é¥¤¥¢¥ó¥È¤ËORBD¤¬Àµ¤·¤¤¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤òÊÖ¤·¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ã‚るオブジェクトå‚ç…§ãŒã€ã‚µãƒ¼ãƒãƒ¼ã®ãƒ©ã‚¤ãƒ•ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã¨ç„¡é–¢ä¿‚ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€ã‚ªãƒ–ジェクトå‚ç…§ã¯ã€åˆã‚ã¦ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚ŒãŸã¨ãã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®ã‚µãƒ¼ãƒãƒ¼ã«ã‚ˆã£ã¦ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ç™ºè¡Œã•ã‚Œã¾ã™ãŒã€ãã®å¾Œã¯ã€ã‚µãƒ¼ãƒãƒ¼ã®é–‹å§‹ã¾ãŸã¯ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã®å›žæ•°ã«ã‹ã‹ã‚らãšã€å‘¼ã³å‡ºã—ãŸã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ORBDãŒæ­£ã—ã„オブジェクトå‚照を返ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -89,57 +89,57 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥¯¥é¥¤¥¢¥ó¥È¤Ï°ìÅ٤Τߥ͡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò¥ë¥Ã¥¯¥¢¥Ã¥×¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤Î¸å¤Ï¥µ¡¼¥Ð¡¼¤Î¥é¥¤¥Õ¡¦¥µ¥¤¥¯¥ë¤Ë¤è¤ëÊѹ¹¤È¤Ï̵´Ø·¸¤Ë¤³¤Î»²¾È¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+クライアントã¯ä¸€åº¦ã®ã¿ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®ã‚ªãƒ–ジェクトå‚照をルックアップã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ãŒã€ãã®å¾Œã¯ã‚µãƒ¼ãƒãƒ¼ã®ãƒ©ã‚¤ãƒ•ãƒ»ã‚µã‚¤ã‚¯ãƒ«ã«ã‚ˆã‚‹å¤‰æ›´ã¨ã¯ç„¡é–¢ä¿‚ã«ã“ã®å‚照を利用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .RE
 .PP
-ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£servertool¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¡¢±Ê³¥µ¡¼¥Ð¡¼¤ÎÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¤ª¤è¤ÓÄä»ß¤ò¹Ô¤¦¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Î¾ÜºÙ¤Ï¡¢¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚servertoolã¯ã€ã‚¢ãƒ—リケーション・プログラマãŒã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ç™»éŒ²ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ãŠã‚ˆã³åœæ­¢ã‚’è¡Œã†ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚サーãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®è©³ç´°ã¯ã€ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIorbd\fR¤òµ¯Æ°¤¹¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤âµ¯Æ°¤µ¤ì¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ÜºÙ¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤ÈÄä»ß¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIorbd\fRã‚’èµ·å‹•ã™ã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スも起動ã•ã‚Œã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®è©³ç´°ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã¨åœæ­¢ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-ORBInitialPort \fInameserverport\fR
 .RS 4
-ɬ¿Ü¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹¡£\fIorbd\fR¤Ï¡¢µ¯Æ°¤µ¤ì¤ë¤È¡¢¤³¤Î¥Ý¡¼¥È¾å¤ÇÃå¿®¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤·¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¾ì¹ç¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+必須。ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã‚’指定ã—ã¾ã™ã€‚\fIorbd\fRã¯ã€èµ·å‹•ã•ã‚Œã‚‹ã¨ã€ã“ã®ãƒãƒ¼ãƒˆä¸Šã§ç€ä¿¡ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã—ã¾ã™ã€‚Oracle Solarisソフトウェアã§ã¯ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹å ´åˆã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
-.SS "ɬ¿Ü¤Ç¤Ê¤¤¥ª¥×¥·¥ç¥ó"
+.SS "å¿…é ˆã§ãªã„オプション"
 .PP
 \-port \fIport\fR
 .RS 4
-ORBD¤òµ¯Æ°¤¹¤ë¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥Ý¡¼¥È¤Ç¡¢±Ê³¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ¹¤ë¥ê¥¯¥¨¥¹¥È¤òORBD¤¬¼õ¤±¼è¤ê¤Þ¤¹¡£¤³¤Î¥Ý¡¼¥È¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1049¤Ç¤¹¡£¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤Ï¡¢±Ê³Interoperable Object References (IOR)¤Î¥Ý¡¼¥È¡¦¥Õ¥£¡¼¥ë¥É¤ËÄɲ䵤ì¤Þ¤¹¡£
+ORBDã‚’èµ·å‹•ã™ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆã§ã€æ°¸ç¶šã‚ªãƒ–ジェクトã«å¯¾ã™ã‚‹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ORBDãŒå—ã‘å–ã‚Šã¾ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯1049ã§ã™ã€‚ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã¯ã€æ°¸ç¶šInteroperable Object References (IOR)ã®ãƒãƒ¼ãƒˆãƒ»ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«è¿½åŠ ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-defaultdb \fIdirectory\fR
 .RS 4
-ORBD±Ê³³ÊǼ¥Ç¥£¥ì¥¯¥È¥ê\fIorb\&.db\fR¤¬ºîÀ®¤µ¤ì¤ë¥Ù¡¼¥¹¡¦¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÏ\fI\&./orb\&.db\fR¤Ë¤Ê¤ê¤Þ¤¹¡£
+ORBD永続格ç´ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fIorb\&.db\fRãŒä½œæˆã•ã‚Œã‚‹ãƒ™ãƒ¼ã‚¹ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã¯\fI\&./orb\&.db\fRã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-serverPollingTime \fImilliseconds\fR
 .RS 4
-\fIservertool\fR¤ò»ÈÍѤ·¤ÆÅÐÏ¿¤µ¤ì¤¿±Ê³¥µ¡¼¥Ð¡¼¤Î¥Ø¥ë¥¹¾õÂÖ¤òORBD¤¬¥Á¥§¥Ã¥¯¤¹¤ë´Ö³Ö¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1000¥ß¥êÉäǤ¹¡£\fImilliseconds\fR¤Ë»ØÄꤹ¤ëÃͤϡ¢Í­¸ú¤ÊÀµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIservertool\fRを使用ã—ã¦ç™»éŒ²ã•ã‚ŒãŸæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ãƒ˜ãƒ«ã‚¹çŠ¶æ…‹ã‚’ORBDãŒãƒã‚§ãƒƒã‚¯ã™ã‚‹é–“隔を指定ã—ã¾ã™ã€‚デフォルト値ã¯1000ミリ秒ã§ã™ã€‚\fImilliseconds\fRã«æŒ‡å®šã™ã‚‹å€¤ã¯ã€æœ‰åŠ¹ãªæ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-serverStartupDelay milliseconds
 .RS 4
-\fIservertool\fR¤ò»ÈÍѤ·¤ÆÅÐÏ¿¤µ¤ì¤¿±Ê³¥µ¡¼¥Ð¡¼¤òºÆµ¯Æ°¤·¤Æ¤«¤é¡¢°ÌÃÖžÁ÷¤ÎÎã³°¤òÁ÷¿®¤¹¤ë¤Þ¤Ç¤ÎORBD¤ÎÂÔµ¡»þ´Ö¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃͤÏ1000¥ß¥êÉäǤ¹¡£\fImilliseconds\fR¤Ë»ØÄꤹ¤ëÃͤϡ¢Í­¸ú¤ÊÀµ¤ÎÀ°¿ô¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIservertool\fRを使用ã—ã¦ç™»éŒ²ã•ã‚ŒãŸæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’å†èµ·å‹•ã—ã¦ã‹ã‚‰ã€ä½ç½®è»¢é€ã®ä¾‹å¤–ã‚’é€ä¿¡ã™ã‚‹ã¾ã§ã®ORBDã®å¾…機時間を指定ã—ã¾ã™ã€‚デフォルト値ã¯1000ミリ秒ã§ã™ã€‚\fImilliseconds\fRã«æŒ‡å®šã™ã‚‹å€¤ã¯ã€æœ‰åŠ¹ãªæ­£ã®æ•´æ•°ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤ÈÄä»ß"
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã¨åœæ­¢"
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢CORBA¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Í¡¼¥ß¥ó¥°¤ò²Äǽ¤Ë¤¹¤ëCORBA¥µ¡¼¥Ó¥¹¤Ç¤¹¡£¥Í¡¼¥ß¥ó¥°¤Ï̾Á°¤ò¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë¥Ð¥¤¥ó¥É¤¹¤ë¤³¤È¤Ë¤è¤ê²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ë³ÊǼ¤¹¤ì¤Ð¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬Ì¾Á°¤ò»ØÄꤷ¤ÆÌÜŪ¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò¼èÆÀ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€CORBAオブジェクトã«ãƒãƒ¼ãƒŸãƒ³ã‚°ã‚’å¯èƒ½ã«ã™ã‚‹CORBAサービスã§ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ã¯åå‰ã‚’オブジェクトå‚ç…§ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«æ ¼ç´ã™ã‚Œã°ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒåå‰ã‚’指定ã—ã¦ç›®çš„ã®ã‚ªãƒ–ジェクトå‚照をå–å¾—ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¤Þ¤¿¤Ï¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë¡¢ORBD¤òµ¯Æ°¤·¤Þ¤¹¡£ORBD¤Ë¤Ï¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ª¤è¤Ó°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬ÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Ï¤É¤Á¤é¤âCOS¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¼ÂÁõ¤Ç¤¹¡£
+クライアントã¾ãŸã¯ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹å‰ã«ã€ORBDã‚’èµ·å‹•ã—ã¾ã™ã€‚ORBDã«ã¯ã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŠã‚ˆã³ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒçµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã™ã€‚ã“れらã¯ã©ã¡ã‚‰ã‚‚COSãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®å®Ÿè£…ã§ã™ã€‚
 .PP
-±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÂФ·¤Æ±Ê³À­¤òÄ󶡤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¤³¤Î¾ðÊó¤Ï¡¢¥µ¡¼¥Ó¥¹¤ÎÄä»ß¤äµ¯Æ°¸å¤Ë¤â°Ý»ý¤µ¤ì¡¢¥µ¡¼¥Ó¥¹¤Ë¾ã³²¤¬È¯À¸¤·¤¿¾ì¹ç¤Ç¤â²óÉü¤Ç¤­¤Þ¤¹¡£ORBD¤òºÆµ¯Æ°¤¹¤ë¤È¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î¥°¥é¥Õ¤òÉü¸µ¤·¡¢¤¹¤Ù¤Æ¤Î¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î̾Á°¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬¤½¤Î¤Þ¤Þ(±Ê³Ū¤Ë)ÊÝ»ý¤µ¤ì¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
+永続ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«å¯¾ã—ã¦æ°¸ç¶šæ€§ã‚’æä¾›ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ã“ã®æƒ…å ±ã¯ã€ã‚µãƒ¼ãƒ“スã®åœæ­¢ã‚„起動後ã«ã‚‚維æŒã•ã‚Œã€ã‚µãƒ¼ãƒ“スã«éšœå®³ãŒç™ºç”Ÿã—ãŸå ´åˆã§ã‚‚回復ã§ãã¾ã™ã€‚ORBDã‚’å†èµ·å‹•ã™ã‚‹ã¨ã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ã‚°ãƒ©ãƒ•ã‚’復元ã—ã€ã™ã¹ã¦ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã®åå‰ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒãã®ã¾ã¾(永続的ã«)ä¿æŒã•ã‚Œã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .PP
-²¼°Ì¸ß´¹À­¤Î¤¿¤á¡¢µì¥ê¥ê¡¼¥¹¤ÎJDK¤ËƱº­¤µ¤ì¤Æ¤¤¤¿°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹\fItnameserv\fR¤¬¡¢º£²ó¤Î¥ê¥ê¡¼¥¹¤ÎJava SE¤Ë¤âƱº­¤µ¤ì¤Æ¤¤¤Þ¤¹¡£°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Î¼Â¹ÔÃæ¤Ë¤Î¤ß¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤¬ÊÝ»ý¤µ¤ì¤Þ¤¹¡£¥µ¡¼¥Ó¥¹¤¬ÃæÃǤµ¤ì¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¡¦¥°¥é¥Õ¤Ï¼º¤ï¤ì¤Þ¤¹¡£
+下ä½äº’æ›æ€§ã®ãŸã‚ã€æ—§ãƒªãƒªãƒ¼ã‚¹ã®JDKã«åŒæ¢±ã•ã‚Œã¦ã„ãŸä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“ス\fItnameserv\fRãŒã€ä»Šå›žã®ãƒªãƒªãƒ¼ã‚¹ã®Java SEã«ã‚‚åŒæ¢±ã•ã‚Œã¦ã„ã¾ã™ã€‚一時ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã®å®Ÿè¡Œä¸­ã«ã®ã¿ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãŒä¿æŒã•ã‚Œã¾ã™ã€‚サービスãŒä¸­æ–­ã•ã‚Œã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ»ã‚°ãƒ©ãƒ•ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
 .PP
-\fI\-ORBInitialPort\fR°ú¿ô¤Ï¡¢\fIorbd\fR¤Îɬ¿Ü¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤Ç¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤òÀßÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¼¡¤Î¼ê½ç¤Ç¤Ï¡¢Java IDL Object Request Broker DaemonÍѤ˥ݡ¼¥È1050¤ò»ÈÍѤǤ­¤ë¤³¤È¤òÁ°Äó¤È¤·¤Æ¤¤¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£É¬ÍפǤ¢¤ì¤ÐÊ̤Υݡ¼¥È¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-ORBInitialPort\fR引数ã¯ã€\fIorbd\fRã®å¿…é ˆã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã§ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã‚’設定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚次ã®æ‰‹é †ã§ã¯ã€Java IDL Object Request Broker Daemon用ã«ãƒãƒ¼ãƒˆ1050を使用ã§ãã‚‹ã“ã¨ã‚’å‰æã¨ã—ã¦ã„ã¾ã™ã€‚Oracle Solarisソフトウェアを使用ã™ã‚‹å ´åˆã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚å¿…è¦ã§ã‚ã‚Œã°åˆ¥ã®ãƒãƒ¼ãƒˆã«å¤‰æ›´ã—ã¦ãã ã•ã„。
 .PP
-UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç\fIorbd\fR¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+UNIXコマンド・シェルã§\fIorbd\fRã‚’èµ·å‹•ã™ã‚‹ã«ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -151,7 +151,7 @@
 .RE
 .\}
 .PP
-Windows¤ÎMS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È¤Ç¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+Windowsã®MS\-DOSシステム・プロンプトã§ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -163,7 +163,7 @@
 .RE
 .\}
 .PP
-¤³¤ì¤ÇORBD¤¬¼Â¹Ô¤µ¤ì¡¢¥µ¡¼¥Ð¡¼¤È¥¯¥é¥¤¥¢¥ó¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢¼Â¹Ô»þ¤Ë¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ(ɬÍפʾì¹ç¤Ï¤µ¤é¤Ë¥Þ¥·¥ó̾)¤òǧ¼±¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ò¼Â¸½¤¹¤ë1¤Ä¤ÎÊýË¡¤Ï¡¢¼¡¤Î¥³¡¼¥É¤ò¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ËÄɲ乤뤳¤È¤Ç¤¹¡£
+ã“ã‚Œã§ORBDãŒå®Ÿè¡Œã•ã‚Œã€ã‚µãƒ¼ãƒãƒ¼ã¨ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚¢ãƒ—リケーションを実行ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚クライアントã¨ã‚µãƒ¼ãƒãƒ¼ã®ã‚¢ãƒ—リケーションã¯ã€å®Ÿè¡Œæ™‚ã«ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·(å¿…è¦ãªå ´åˆã¯ã•ã‚‰ã«ãƒžã‚·ãƒ³å)ã‚’èªè­˜ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れを実ç¾ã™ã‚‹1ã¤ã®æ–¹æ³•ã¯ã€æ¬¡ã®ã‚³ãƒ¼ãƒ‰ã‚’アプリケーションã«è¿½åŠ ã™ã‚‹ã“ã¨ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -178,7 +178,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Û¥¹¥È\fIMyHost\fR¤Î¥Ý¡¼¥È1050¾å¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£Ê̤ÎÊýË¡¤È¤·¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¥µ¡¼¥Ð¡¼¤Þ¤¿¤Ï¥¯¥é¥¤¥¢¥ó¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¤È¤­¤Ë¡¢¥Ý¡¼¥ÈÈÖ¹æ¤Þ¤¿¤Ï¥Þ¥·¥ó̾¤¢¤ë¤¤¤Ï¤½¤ÎξÊý¤ò»ØÄꤹ¤ëÊýË¡¤â¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIHelloApplication\fR¤òµ¯Æ°¤Ç¤­¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒ›ã‚¹ãƒˆ\fIMyHost\fRã®ãƒãƒ¼ãƒˆ1050上ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚別ã®æ–¹æ³•ã¨ã—ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰ã‚µãƒ¼ãƒãƒ¼ã¾ãŸã¯ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã‚¢ãƒ—リケーションを実行ã™ã‚‹ã¨ãã«ã€ãƒãƒ¼ãƒˆç•ªå·ã¾ãŸã¯ãƒžã‚·ãƒ³åã‚ã‚‹ã„ã¯ãã®ä¸¡æ–¹ã‚’指定ã™ã‚‹æ–¹æ³•ã‚‚ã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションを使用ã—ã¦ã€\fIHelloApplication\fRã‚’èµ·å‹•ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -190,36 +190,36 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÄä»ß¤¹¤ë¤Ë¤Ï¡¢Å¬Àڤʥª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢Oracle Solaris¾å¤Ç\fIpkill\fR
-\fIorbd\fR¤ò¼Â¹Ô¤·¤¿¤ê¡¢\fIorbd\fR¤¬Æ°ºîÃæ¤ÎDOS¥¦¥£¥ó¥É¥¦¤Ç\fB[Ctrl]+[C]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ì¹ç¤Ï¡¢¥µ¡¼¥Ó¥¹¤¬½ªÎ»¤µ¤ì¤ë¤È¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ËÅÐÏ¿¤µ¤ì¤¿Ì¾Á°¤¬¾Ãµî¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢ÌÀ¼¨Åª¤ËÄä»ß¤µ¤ì¤ë¤Þ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スをåœæ­¢ã™ã‚‹ã«ã¯ã€é©åˆ‡ãªã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€Oracle Solaris上ã§\fIpkill\fR
+\fIorbd\fRを実行ã—ãŸã‚Šã€\fIorbd\fRãŒå‹•ä½œä¸­ã®DOSウィンドウã§\fB[Ctrl]+[C]\fRキーを押ã—ã¾ã™ã€‚一時ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®å ´åˆã¯ã€ã‚µãƒ¼ãƒ“スãŒçµ‚了ã•ã‚Œã‚‹ã¨ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã«ç™»éŒ²ã•ã‚ŒãŸåå‰ãŒæ¶ˆåŽ»ã•ã‚Œã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€æ˜Žç¤ºçš„ã«åœæ­¢ã•ã‚Œã‚‹ã¾ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚
 .PP
-ORBD¤ËÉÕ°¤¹¤ë¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î¾ÜºÙ¤Ï¡¢
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Î¡ÖNaming Service¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã"
+ORBDã«ä»˜å±žã™ã‚‹ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®è©³ç´°ã¯ã€
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã®ã€ŒNaming Serviceã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "サーãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£"
 .PP
-ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤Ë¥¢¥¯¥»¥¹¤·¤Æ¡¢±Ê³¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£servertool¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¡¢±Ê³¥µ¡¼¥Ð¡¼¤ÎÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¤ª¤è¤ÓÄä»ß¤ò¹Ô¤¦¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¤¹¡£\fIservertool\fR¤ò»ÈÍѤ·¤Æ¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤¹¤ë¾ì¹ç¤Ï¡¢\fIorbd\fR¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì½ê¤ÈƱ¤¸¥Ý¡¼¥È¤È¥Û¥¹¥È¤Çµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤ò°Û¤Ê¤ë¥Ý¡¼¥È¤Ç¼Â¹Ô¤¹¤ë¤È¡¢¥í¡¼¥«¥ë¡¦¥³¥ó¥Æ¥­¥¹¥ÈÍѤ˥ǡ¼¥¿¥Ù¡¼¥¹¤ËÊݸ¤µ¤ì¤Æ¤¤¤ë¾ðÊó¤¬Ìµ¸ú¤Ë¤Ê¤ê¡¢¥µ¡¼¥Ó¥¹¤¬Àµ¤·¤¯Æ°ºî¤·¤Þ¤»¤ó¡£
+ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¦ã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹ã«ã¯ã€\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚servertoolã¯ã€ã‚¢ãƒ—リケーション・プログラマãŒã€æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã®ç™»éŒ²ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ãŠã‚ˆã³åœæ­¢ã‚’è¡Œã†ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã§ã™ã€‚\fIservertool\fRを使用ã—ã¦ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã™ã‚‹å ´åˆã¯ã€\fIorbd\fRãŒå®Ÿè¡Œã•ã‚Œã¦ã„る場所ã¨åŒã˜ãƒãƒ¼ãƒˆã¨ãƒ›ã‚¹ãƒˆã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚サーãƒãƒ¼ã‚’ç•°ãªã‚‹ãƒãƒ¼ãƒˆã§å®Ÿè¡Œã™ã‚‹ã¨ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆç”¨ã«ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¿å­˜ã•ã‚Œã¦ã„る情報ãŒç„¡åŠ¹ã«ãªã‚Šã€ã‚µãƒ¼ãƒ“スãŒæ­£ã—ã動作ã—ã¾ã›ã‚“。
 .PP
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlExample\&.html¤Î
-¡ÖJava IDL: The "Hello World" Example¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlExample\&.htmlã®
+「Java IDL: The "Hello World" Exampleã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¤³¤ÎÎã¤Ç¤Ï¡¢¥Á¥å¡¼¥È¥ê¥¢¥ë¤Î¼ê½ç¤Ë½¾¤Ã¤Æ\fIidlj\fR¥³¥ó¥Ñ¥¤¥é¤È\fIjavac\fR¥³¥ó¥Ñ¥¤¥é¤ò¼Â¹Ô¤·¤Þ¤¹¡£ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¼ê½ç¤Ë½¾¤Ã¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã§ã¯ã€ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã®æ‰‹é †ã«å¾“ã£ã¦\fIidlj\fRコンパイラã¨\fIjavac\fRコンパイラを実行ã—ã¾ã™ã€‚ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’実行ã™ã‚‹ã«ã¯ã€æ¬¡ã®æ‰‹é †ã«å¾“ã£ã¦ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .PP
-\fIorbd\fR¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIorbd\fRã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .PP
-UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹:
-\fIorbd \-ORBInitialPort 1050\fR¡£
+UNIXコマンド・シェルã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™:
+\fIorbd \-ORBInitialPort 1050\fR。
 .PP
-MS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È(Windows)¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹:
+MS\-DOSシステム・プロンプト(Windows)ã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™:
 \fIs\fR\fItart orbd \-ORBInitialPort 105\fR\fI0\fR
 .PP
-¥Ý¡¼¥È1050¤Ï¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤¹¤ë¥Ý¡¼¥È¤Ç¤¹¡£\fI\-ORBInitialPort\fR¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤Ç¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+ãƒãƒ¼ãƒˆ1050ã¯ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã™ã‚‹ãƒãƒ¼ãƒˆã§ã™ã€‚\fI\-ORBInitialPort\fRオプションã¯å¿…須コマンドライン引数ã§ã™ã€‚Oracle Solarisソフトウェアを使用ã™ã‚‹å ´åˆã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .PP
-\fIservertool\fR¤òµ¯Æ°¤·¤Þ¤¹:
-\fIservertool \-ORBInitialPort 1050\fR¡£
+\fIservertool\fRã‚’èµ·å‹•ã—ã¾ã™:
+\fIservertool \-ORBInitialPort 1050\fR。
 .PP
-Á°²ó¤Î¼ê½ç¤È¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¤Î¥Ý¡¼¥È¤¬Æ±¤¸¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð\fI\-ORBInitialPort 1050\&.\fR¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£\fIservertool\fR¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤ÈƱ¤¸¥Ý¡¼¥È¾å¤Çµ¯Æ°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+å‰å›žã®æ‰‹é †ã¨ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ã®ãƒãƒ¼ãƒˆãŒåŒã˜ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚ãŸã¨ãˆã°\fI\-ORBInitialPort 1050\&.\fRã®ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚\fIservertool\fRã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã¨åŒã˜ãƒãƒ¼ãƒˆä¸Šã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ç¡¢\fIservertool\fR¥×¥í¥ó¥×¥È¤«¤é\fIHello\fR¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドライン・インタフェースã§ã€\fIservertool\fRプロンプトã‹ã‚‰\fIHello\fRサーãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -232,7 +232,7 @@
 .RE
 .\}
 .PP
-\fIservertool\fR¤Ë¤è¤Ã¤Æ¥µ¡¼¥Ð¡¼¤¬ÅÐÏ¿¤µ¤ì¤Æ¡¢\fIHelloServerApName\fR¤È¤¤¤¦Ì¾Á°¤¬¥µ¡¼¥Ð¡¼¤Ë³ä¤êÅö¤Æ¤é¤ì¡¢ÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¡¼°ìÍ÷¤È¤È¤â¤Ë¥µ¡¼¥Ð¡¼ID¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£Â¾¤ÎüËö¥¦¥£¥ó¥É¥¦¤Þ¤¿¤Ï¥×¥í¥ó¥×¥È¤«¤é¥¯¥é¥¤¥¢¥ó¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤·¤Þ¤¹¡£
+\fIservertool\fRã«ã‚ˆã£ã¦ã‚µãƒ¼ãƒãƒ¼ãŒç™»éŒ²ã•ã‚Œã¦ã€\fIHelloServerApName\fRã¨ã„ã†åå‰ãŒã‚µãƒ¼ãƒãƒ¼ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã€ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒãƒ¼ä¸€è¦§ã¨ã¨ã‚‚ã«ã‚µãƒ¼ãƒãƒ¼IDãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ä»–ã®ç«¯æœ«ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã¾ãŸã¯ãƒ—ロンプトã‹ã‚‰ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãƒ»ã‚¢ãƒ—リケーションを実行ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -244,11 +244,11 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Î\fI\-ORBInitialHost localhost\fR¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬\fIHello\fR¥¯¥é¥¤¥¢¥ó¥È¤È¤·¤ÆƱ°ì¥Û¥¹¥È¾å¤ÇÆ°ºî¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬Ê̤Υۥ¹¥È¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\-\fIORBInitialHost nameserverhost\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤ÆIDL¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Û¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£Á°¤Î¼ê½ç¤Ç¹Ô¤ï¤ì¤¿¤È¤ª¤ê¤Ë¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹(Îã:
-\fI\-ORBInitialPort 1050\fR)¡£ORBD¤Î¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ÎÁàºî¤¬½ªÎ»¤·¤¿¤é¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼(\fIorbd\fR)¤È\fIservertool\fR¤òÄä»ß¤¹¤ë¤«½ªÎ»¤·¤Æ¤¯¤À¤µ¤¤¡£MS\-DOS¥×¥í¥ó¥×¥È¤Ç\fIorbd\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢¥µ¡¼¥Ð¡¼¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥¦¥£¥ó¥É¥¦¤òÁªÂò¤·¤Æ\fB[Ctrl]+[C]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£
+ã“ã®ä¾‹ã®\fI\-ORBInitialHost localhost\fRã¯çœç•¥ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒ\fIHello\fRクライアントã¨ã—ã¦åŒä¸€ãƒ›ã‚¹ãƒˆä¸Šã§å‹•ä½œã—ã¦ã„ã‚‹ã‹ã‚‰ã§ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒåˆ¥ã®ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\-\fIORBInitialHost nameserverhost\fRオプションを使用ã—ã¦IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„るホストを指定ã—ã¾ã™ã€‚å‰ã®æ‰‹é †ã§è¡Œã‚ã‚ŒãŸã¨ãŠã‚Šã«ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™(例:
+\fI\-ORBInitialPort 1050\fR)。ORBDã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®æ“作ãŒçµ‚了ã—ãŸã‚‰ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼(\fIorbd\fR)ã¨\fIservertool\fRã‚’åœæ­¢ã™ã‚‹ã‹çµ‚了ã—ã¦ãã ã•ã„。MS\-DOSプロンプトã§\fIorbd\fRをシャットダウンã™ã‚‹ã«ã¯ã€ã‚µãƒ¼ãƒãƒ¼ã‚’実行ã—ã¦ã„るウィンドウをé¸æŠžã—ã¦\fB[Ctrl]+[C]\fRキーを押ã—ã¾ã™ã€‚
 .PP
-Oracle Solaris¤«¤é\fIorbd\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢¥×¥í¥»¥¹¤ò¸¡º÷¤·¤Æ¡¢\fIkill\fR¥³¥Þ¥ó¥É¤Ç½ªÎ»¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤òÌÀ¼¨Åª¤ËÄä»ß¤¹¤ë¤Þ¤Ç¤Ï¡¢¸Æ½Ð¤·ÂÔµ¡¾õÂÖ¤¬Â³¤­¤Þ¤¹¡£\fIservertool\fR¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤¹¤ë¤Ë¤Ï¡¢\fBquit\fR¤ÈÆþÎϤ·¤Æ¥­¡¼¥Ü¡¼¥É¤Î\fB[Enter]\fR¥­¡¼¤ò²¡¤·¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+Oracle Solarisã‹ã‚‰\fIorbd\fRをシャットダウンã™ã‚‹ã«ã¯ã€ãƒ—ロセスを検索ã—ã¦ã€\fIkill\fRコマンドã§çµ‚了ã—ã¾ã™ã€‚サーãƒãƒ¼ã‚’明示的ã«åœæ­¢ã™ã‚‹ã¾ã§ã¯ã€å‘¼å‡ºã—待機状態ãŒç¶šãã¾ã™ã€‚\fIservertool\fRをシャットダウンã™ã‚‹ã«ã¯ã€\fBquit\fRã¨å…¥åŠ›ã—ã¦ã‚­ãƒ¼ãƒœãƒ¼ãƒ‰ã®\fB[Enter]\fRキーを押ã—ã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -269,8 +269,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Î
-¡ÖNaming Service¡×
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã®
+「Naming Serviceã€
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/pack200.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/pack200.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: pack200
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaデプロイメント・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "pack200" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë"
+.TH "pack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-pack200 \- Web¥Ç¥×¥í¥¤¥á¥ó¥È¤Î¤¿¤á¤ËJAR¥Õ¥¡¥¤¥ë¤òpack200°µ½Ì¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+pack200 \- Webデプロイメントã®ãŸã‚ã«JARファイルをpack200圧縮ファイルã«ãƒ‘ッケージã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -62,27 +62,27 @@
 .RE
 .\}
 .PP
-¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Þ¤¿¤Ïproperties¥Õ¥¡¥¤¥ë¤Ë»ØÄꤵ¤ì¤¿ºÇ¸å¤Î¥ª¥×¥·¥ç¥ó¤¬¡¢¤½¤ì°ÊÁ°¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥ª¥×¥·¥ç¥ó¤è¤êÍ¥À褵¤ì¤Þ¤¹¡£
+オプションã¯ä»»æ„ã®é †åºã§æŒ‡å®šã§ãã¾ã™ã€‚コマンドラインã¾ãŸã¯propertiesファイルã«æŒ‡å®šã•ã‚ŒãŸæœ€å¾Œã®ã‚ªãƒ—ションãŒã€ãれ以å‰ã«æŒ‡å®šã•ã‚ŒãŸã™ã¹ã¦ã®ã‚ªãƒ—ションより優先ã•ã‚Œã¾ã™ã€‚
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIoutput\-file\fR
 .RS 4
-½ÐÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+出力ファイルã®åå‰ã€‚
 .RE
 .PP
 \fIJAR\-file\fR
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+入力ファイルã®åå‰ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢Java gzip¥³¥ó¥×¥ì¥Ã¥µ¤ò»ÈÍѤ·¤ÆJAR¥Õ¥¡¥¤¥ë¤òpack200°µ½Ì¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤¹¤ëJava¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤¹¡£pack200¥Õ¥¡¥¤¥ë¤Ï¹â°µ½Ì¤Î¥Õ¥¡¥¤¥ë¤Ç¡¢Ä¾ÀÜ¥Ç¥×¥í¥¤¤Ç¤­¡¢ÂÓ°èÉý¤ÎÀáÌó¤ä¥À¥¦¥ó¥í¡¼¥É»þ´Ö¤Îû½Ì¤¬²Äǽ¤Ç¤¹¡£
+\fIpack200\fRコマンドã¯ã€Java gzipコンプレッサを使用ã—ã¦JARファイルをpack200圧縮ファイルã«å¤‰æ›ã™ã‚‹Javaアプリケーションã§ã™ã€‚pack200ファイルã¯é«˜åœ§ç¸®ã®ãƒ•ã‚¡ã‚¤ãƒ«ã§ã€ç›´æŽ¥ãƒ‡ãƒ—ロイã§ãã€å¸¯åŸŸå¹…ã®ç¯€ç´„やダウンロード時間ã®çŸ­ç¸®ãŒå¯èƒ½ã§ã™ã€‚
 .PP
-\fIpack200\fR¥³¥Þ¥ó¥É¤Ë¤Ï¡¢°µ½Ì¥¨¥ó¥¸¥ó¤ÎÀßÄê¤äÈùÄ´À°¤ò¹Ô¤¦¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£°ìÈÌŪ¤Ê»ÈÍÑÊýË¡¤ò¼¡¤ÎÎã¤Ë¼¨¤·¤Þ¤¹¡£\fImyarchive\&.pack\&.gz\fR¤¬¥Ç¥Õ¥©¥ë¥È¤Î\fIpack200\fR¥³¥Þ¥ó¥ÉÀßÄê¤ÇºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIpack200\fRコマンドã«ã¯ã€åœ§ç¸®ã‚¨ãƒ³ã‚¸ãƒ³ã®è¨­å®šã‚„微調整を行ã†ã‚ªãƒ—ションãŒã‚ã‚Šã¾ã™ã€‚一般的ãªä½¿ç”¨æ–¹æ³•ã‚’次ã®ä¾‹ã«ç¤ºã—ã¾ã™ã€‚\fImyarchive\&.pack\&.gz\fRãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIpack200\fRコマンド設定ã§ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -93,11 +93,11 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-r, \-\-repack
 .RS 4
-JAR¥Õ¥¡¥¤¥ë¤ò¥Ñ¥Ã¥¯¤·¤¿¸å¥¢¥ó¥Ñ¥Ã¥¯¤·¤Æ¡¢JAR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï\fIjarsigner\fR(1)¥Ä¡¼¥ë¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢myarchive\&.jar¥Õ¥¡¥¤¥ë¤ò¥Ñ¥Ã¥¯¤·¤¿¸å¡¢¥¢¥ó¥Ñ¥Ã¥¯¤·¤Þ¤¹¡£
+JARファイルをパックã—ãŸå¾Œã‚¢ãƒ³ãƒ‘ックã—ã¦ã€JARファイルを生æˆã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIjarsigner\fR(1)ツールã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚次ã®ä¾‹ã§ã¯ã€myarchive\&.jarファイルをパックã—ãŸå¾Œã€ã‚¢ãƒ³ãƒ‘ックã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -109,12 +109,12 @@
 .if n \{\
 .RE
 .\}
-¼¡¤ÎÎã¤Ç¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë¤Î½ç½ø¤òÊÝ»ý¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®é †åºã‚’ä¿æŒã—ã¾ã™ã€‚
 .RE
 .PP
 \-g, \-\-no\-gzip
 .RS 4
-\fIpack200\fR¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¤­¤Ï¡¢Å¬Àڤʰµ½Ì¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥¿¡¼¥²¥Ã¥È¡¦¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Âбþ¤¹¤ë°µ½Ì²ò½ü¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIpack200\fRファイルを生æˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã™ã‚‹ã¨ãã¯ã€é©åˆ‡ãªåœ§ç¸®ãƒ„ールを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚·ã‚¹ãƒ†ãƒ ã§ã¯ã€å¯¾å¿œã™ã‚‹åœ§ç¸®è§£é™¤ãƒ„ールを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -129,104 +129,104 @@
 .PP
 \-G, \-\-strip\-debug
 .RS 4
-½ÐÎϤ«¤é¥Ç¥Ð¥Ã¥°Â°À­¤òºï½ü¤·¤Þ¤¹¡£¤³¤ì¤Ë¤Ï¡¢\fISourceFile\fR¡¢\fILineNumberTable\fR¡¢\fILocalVariableTable\fR¡¢\fILocalVariableTypeTable\fR¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤³¤ì¤é¤Î°À­¤òºï½ü¤¹¤ì¤Ð¡¢¥À¥¦¥ó¥í¡¼¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤Î¥µ¥¤¥º¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¤¬¡¢¥Ç¥Ð¥Ã¥¬¤Îµ¡Ç½¤ÏÀ©¸Â¤µ¤ì¤Þ¤¹¡£
+出力ã‹ã‚‰ãƒ‡ãƒãƒƒã‚°å±žæ€§ã‚’削除ã—ã¾ã™ã€‚ã“ã‚Œã«ã¯ã€\fISourceFile\fRã€\fILineNumberTable\fRã€\fILocalVariableTable\fRã€\fILocalVariableTypeTable\fRãŒå«ã¾ã‚Œã¾ã™ã€‚ã“れらã®å±žæ€§ã‚’削除ã™ã‚Œã°ã€ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã®ã‚µã‚¤ã‚ºã¯å°ã•ããªã‚Šã¾ã™ãŒã€ãƒ‡ãƒãƒƒã‚¬ã®æ©Ÿèƒ½ã¯åˆ¶é™ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-\-keep\-file\-order
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë¤Î½ç½ø¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤¹¡£
+入力ファイル内ã®ãƒ•ã‚¡ã‚¤ãƒ«ã®é †åºã‚’ä¿æŒã—ã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã§ã™ã€‚
 .RE
 .PP
 \-O, \-\-no\-keep\-file\-order
 .RS 4
-¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¤¹¤Ù¤Æ¤ÎÍ×ÁǤòʤÙÂؤ¨¤ÆÁ÷¿®¤·¤Þ¤¹¡£¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢JAR¥Ç¥£¥ì¥¯¥È¥ê̾¤òºï½ü¤·¤Æ¥À¥¦¥ó¥í¡¼¥É¡¦¥µ¥¤¥º¤òºï¸º¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ê¤É¡¢ÆÃÄê¤ÎJAR¥Õ¥¡¥¤¥ë¤ÎºÇŬ²½µ¡Ç½¤¬Àµ¾ï¤ËÆ°ºî¤·¤Ê¤¯¤Ê¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+パック・ツールã¯ã€ã™ã¹ã¦ã®è¦ç´ ã‚’並ã¹æ›¿ãˆã¦é€ä¿¡ã—ã¾ã™ã€‚パック・ツールã¯ã€JARディレクトリåを削除ã—ã¦ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ãƒ»ã‚µã‚¤ã‚ºã‚’削減ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ãªã©ã€ç‰¹å®šã®JARファイルã®æœ€é©åŒ–機能ãŒæ­£å¸¸ã«å‹•ä½œã—ãªããªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-S\fIvalue\fR, \-\-segment\-limit=\fIvalue\fR
 .RS 4
-¤³¤ÎÃͤϡ¢³Æ¥¢¡¼¥«¥¤¥Ö¡¦¥»¥°¥á¥ó¥È¤ÎͽÁÛ¥¿¡¼¥²¥Ã¥È¡¦¥µ¥¤¥º\fIN\fR
-(¥Ð¥¤¥Èñ°Ì)¤Ç¤¹¡£Ã±°ì¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤ÎɬÍ×¥µ¥¤¥º¤¬\fIN\fR¥Ð¥¤¥È¤òĶ¤¨¤ë¤È¡¢ÆÈΩ¤·¤¿¥»¥°¥á¥ó¥È¤¬³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£Æüì¤Ê¥±¡¼¥¹¤È¤·¤Æ¡¢Ãͤ¬\fI\-1\fR¤Î¾ì¹ç¤Ï¡¢¤¹¤Ù¤Æ¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤ò´Þ¤àÂ礭¤Êñ°ì¤Î¥»¥°¥á¥ó¥È¤¬À¸À®¤µ¤ì¡¢Ãͤ¬0¤Î¾ì¹ç¤Ï¡¢¥¯¥é¥¹¤´¤È¤Ë¥»¥°¥á¥ó¥È¤¬1¤Ä¤º¤ÄÀ¸À®¤µ¤ì¤Þ¤¹¡£¥¢¡¼¥«¥¤¥Ö¡¦¥»¥°¥á¥ó¥È¤¬Â礭¤¯¤Ê¤ë¤È¡¢ÃÇÊÒ²½¤¬¾¯¤Ê¤¯¤Ê¤ê°µ½ÌΨ¤¬¹â¤¯¤Ê¤ê¤Þ¤¹¤¬¡¢¤½¤Î½èÍý¤Ë¤Ï¿¤¯¤Î¥á¥â¥ê¡¼¤¬É¬ÍפǤ¹¡£
+ã“ã®å€¤ã¯ã€å„アーカイブ・セグメントã®äºˆæƒ³ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ã‚µã‚¤ã‚º\fIN\fR
+(ãƒã‚¤ãƒˆå˜ä½)ã§ã™ã€‚å˜ä¸€ã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®å¿…è¦ã‚µã‚¤ã‚ºãŒ\fIN\fRãƒã‚¤ãƒˆã‚’超ãˆã‚‹ã¨ã€ç‹¬ç«‹ã—ãŸã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚特殊ãªã‚±ãƒ¼ã‚¹ã¨ã—ã¦ã€å€¤ãŒ\fI\-1\fRã®å ´åˆã¯ã€ã™ã¹ã¦ã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å«ã‚€å¤§ããªå˜ä¸€ã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒç”Ÿæˆã•ã‚Œã€å€¤ãŒ0ã®å ´åˆã¯ã€ã‚¯ãƒ©ã‚¹ã”ã¨ã«ã‚»ã‚°ãƒ¡ãƒ³ãƒˆãŒ1ã¤ãšã¤ç”Ÿæˆã•ã‚Œã¾ã™ã€‚アーカイブ・セグメントãŒå¤§ãããªã‚‹ã¨ã€æ–­ç‰‡åŒ–ãŒå°‘ãªããªã‚Šåœ§ç¸®çŽ‡ãŒé«˜ããªã‚Šã¾ã™ãŒã€ãã®å‡¦ç†ã«ã¯å¤šãã®ãƒ¡ãƒ¢ãƒªãƒ¼ãŒå¿…è¦ã§ã™ã€‚
 .sp
-³Æ¥»¥°¥á¥ó¥È¤Î¥µ¥¤¥º¤Ï¡¢¥»¥°¥á¥ó¥È¤ËÊÑ´¹¤µ¤ì¤ë¤½¤ì¤¾¤ì¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Î¤Û¤«¡¢¤½¤Î̾Á°¤È¾¤ÎÁ÷¿®¤µ¤ì¤ë¥×¥í¥Ñ¥Æ¥£¤Î¥µ¥¤¥º¤ò·×»»¤·¤Æ¿ä¬¤µ¤ì¤Þ¤¹¡£
+å„セグメントã®ã‚µã‚¤ã‚ºã¯ã€ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã«å¤‰æ›ã•ã‚Œã‚‹ãã‚Œãžã‚Œã®å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚µã‚¤ã‚ºã®ã»ã‹ã€ãã®åå‰ã¨ä»–ã®é€ä¿¡ã•ã‚Œã‚‹ãƒ—ロパティã®ã‚µã‚¤ã‚ºã‚’計算ã—ã¦æŽ¨æ¸¬ã•ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ï\-1¤Ç¤¹¡£¤Ä¤Þ¤ê¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ïñ°ì¤Î¥»¥°¥á¥ó¥È½ÐÎÏ¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¶Ëü¤ËÂ礭¤Ê½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤ò¥»¥°¥á¥ó¥È²½(ʬ³ä)¤·¤Æ¤è¤ê¾®¤µ¤ÊJAR¤Ë¤¹¤ë¤³¤È¤ò¶¯¤¯¤ªÁ¦¤á¤·¤Þ¤¹¡£
+デフォルトã¯\-1ã§ã™ã€‚ã¤ã¾ã‚Šã€ãƒ‘ック・ツールã¯å˜ä¸€ã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚極端ã«å¤§ããªå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã‚‹å ´åˆã«ã¯ã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’セグメント化(分割)ã—ã¦ã‚ˆã‚Šå°ã•ãªJARã«ã™ã‚‹ã“ã¨ã‚’å¼·ããŠè–¦ã‚ã—ã¾ã™ã€‚
 .sp
-¤³¤ÎÀ©¸Â¤¬²Ý¤µ¤ì¤Æ¤¤¤Ê¤¤10 MB¤ÎJAR¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ÏÄ̾Ìó10%¾®¤µ¤¯¥Ñ¥Ã¥¯¤µ¤ì¤Þ¤¹¡£¤·¤«¤·¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ç¤è¤êÂ礭¤ÊJava¥Ò¡¼¥×(¥»¥°¥á¥ó¥È¤ÎÀ©¸Â¤ÎÌó10ÇÜ)¤òɬÍפȤ¹¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£
+ã“ã®åˆ¶é™ãŒèª²ã•ã‚Œã¦ã„ãªã„10 MBã®JARパック・ファイルã¯é€šå¸¸ã€ç´„10%å°ã•ãパックã•ã‚Œã¾ã™ã€‚ã—ã‹ã—ã€ãƒ‘ック・ツールã§ã‚ˆã‚Šå¤§ããªJavaヒープ(セグメントã®åˆ¶é™ã®ç´„10å€)ã‚’å¿…è¦ã¨ã™ã‚‹å ´åˆã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-E\fIvalue\fR, \-\-effort=\fIvalue\fR
 .RS 4
-ñ°ì¤Î10¿Ê¿ôÃͤò»ØÄꤷ¤¿¾ì¹ç¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢»ØÄꤵ¤ì¤¿°µ½ÌΨ¤Ç¥¢¡¼¥«¥¤¥Ö¤ò°µ½Ì¤·¤Þ¤¹¡£¥ì¥Ù¥ë1¤Î¾ì¹ç¤Ï¡¢Èæ³ÓŪû¤¤°µ½Ì»þ´Ö¤Ç¿¾¯Â礭¤á¤Î¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¤¬¡¢¥ì¥Ù¥ë9¤Î¾ì¹ç¤Ï¡¢Èó¾ï¤ËŤ¤»þ´Ö¤¬¤«¤«¤ë¤â¤Î¤Î¡¢¤è¤ê°µ½ÌΨ¤Î¹â¤¤¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£Æüì¤ÊÃÍ0¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¸µ¤ÎJAR¥Õ¥¡¥¤¥ë¤ò°µ½Ì¤Ê¤·¤ÇľÀÜ¥³¥Ô¡¼¤·¤Þ¤¹¡£JSR 200ɸ½à¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î²òÅà¥×¥í¥°¥é¥à¤¬¡¢¤³¤ÎÆÃÊ̤ʾì¹ç¤ò¥¢¡¼¥«¥¤¥ÖÁ´ÂΤΥѥ¹¥¹¥ë¡¼¤È²ò¼á¤¹¤ë¤è¤¦¤Ëµ¬Äꤷ¤Æ¤¤¤Þ¤¹¡£
+å˜ä¸€ã®10進数値を指定ã—ãŸå ´åˆã€ãƒ‘ック・ツールã¯ã€æŒ‡å®šã•ã‚ŒãŸåœ§ç¸®çŽ‡ã§ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–を圧縮ã—ã¾ã™ã€‚レベル1ã®å ´åˆã¯ã€æ¯”較的短ã„圧縮時間ã§å¤šå°‘大ãã‚ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒç”Ÿæˆã•ã‚Œã¾ã™ãŒã€ãƒ¬ãƒ™ãƒ«9ã®å ´åˆã¯ã€éžå¸¸ã«é•·ã„時間ãŒã‹ã‹ã‚‹ã‚‚ã®ã®ã€ã‚ˆã‚Šåœ§ç¸®çŽ‡ã®é«˜ã„ファイルãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚特殊ãªå€¤0を指定ã—ãŸå ´åˆã¯ã€\fIpack200\fRコマンドã¯å…ƒã®JARファイルを圧縮ãªã—ã§ç›´æŽ¥ã‚³ãƒ”ーã—ã¾ã™ã€‚JSR 200標準ã§ã¯ã€ã™ã¹ã¦ã®è§£å‡ãƒ—ログラムãŒã€ã“ã®ç‰¹åˆ¥ãªå ´åˆã‚’アーカイブ全体ã®ãƒ‘ススルーã¨è§£é‡ˆã™ã‚‹ã‚ˆã†ã«è¦å®šã—ã¦ã„ã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ï5¤Ç¤¹¡£¤³¤Î¾ì¹ç¡¢É¸½àŪ¤Ê»þ´Ö¤ÇŬÀڤʰµ½Ì¤¬¹Ô¤ï¤ì¤Þ¤¹¡£
+デフォルトã¯5ã§ã™ã€‚ã“ã®å ´åˆã€æ¨™æº–çš„ãªæ™‚é–“ã§é©åˆ‡ãªåœ§ç¸®ãŒè¡Œã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-H\fIvalue\fR, \-\-deflate\-hint=\fIvalue\fR
 .RS 4
-ÆþÎϾðÊó¤òÊݸ¤¹¤ë¤È¤¤¤¦¥Ç¥Õ¥©¥ë¥ÈÃͤò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£Å¾Á÷¤µ¤ì¤ë¥¢¡¼¥«¥¤¥Ö¤Î¥µ¥¤¥º¤ÏÂ礭¤¯¤Ê¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£»ØÄê²Äǽ¤ÊÃͤϡ¢\fItrue\fR¡¢\fIfalse\fR¤Þ¤¿¤Ï\fIkeep\fR¤Ç¤¹¡£
+入力情報をä¿å­˜ã™ã‚‹ã¨ã„ã†ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚転é€ã•ã‚Œã‚‹ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ã‚µã‚¤ã‚ºã¯å¤§ãããªã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚指定å¯èƒ½ãªå€¤ã¯ã€\fItrue\fRã€\fIfalse\fRã¾ãŸã¯\fIkeep\fRã§ã™ã€‚
 .sp
-\fIvalue\fR¤¬\fItrue\fR¤Þ¤¿¤Ïfalse¤Î¾ì¹ç¡¢\fIpacker200\fR¥³¥Þ¥ó¥É¤Ï»ØÄê¤Ë½¾¤Ã¤Æ¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤ò½ÐÎÏ¥¢¡¼¥«¥¤¥Ö¤ËÀßÄꤷ¤Þ¤¹¡£¥¢¡¼¥«¥¤¥ÖÍ×ÁǤθġ¹¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤ÏžÁ÷¤µ¤ì¤Þ¤»¤ó¡£
+\fIvalue\fRãŒ\fItrue\fRã¾ãŸã¯falseã®å ´åˆã€\fIpacker200\fRコマンドã¯æŒ‡å®šã«å¾“ã£ã¦ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントを出力アーカイブã«è¨­å®šã—ã¾ã™ã€‚アーカイブè¦ç´ ã®å€‹ã€…ã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントã¯è»¢é€ã•ã‚Œã¾ã›ã‚“。
 .sp
-\fIkeep\fRÃͤϡ¢ÆþÎÏJAR¤Ç³Îǧ¤µ¤ì¤¿¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥Ò¥ó¥È¤òÊÝ»ý¤·¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+\fIkeep\fR値ã¯ã€å…¥åŠ›JARã§ç¢ºèªã•ã‚ŒãŸãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ’ントをä¿æŒã—ã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-m\fIvalue\fR, \-\-modification\-time=\fIvalue\fR
 .RS 4
-»ØÄê²Äǽ¤ÊÃͤÏ\fIlatest\fR¤È\fIkeep\fR¤Ç¤¹¡£
+指定å¯èƒ½ãªå€¤ã¯\fIlatest\fRã¨\fIkeep\fRã§ã™ã€‚
 .sp
-Ãͤ¬ºÇ¿·¤Î¾ì¹ç¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¸µ¤Î¥¢¡¼¥«¥¤¥Ö¤Î»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Î¤¦¤Á¤ÎºÇ½ª¹¹¿·»þ¹ï¤«¡¢¤½¤Î¥»¥°¥á¥ó¥È¤Î»ÈÍѲÄǽ¤Ê¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤ÎºÇ½ª¹¹¿·»þ¹ï¤òÆÃÄꤷ¤è¤¦¤È¤·¤Þ¤¹¡£¤³¤Îñ°ì¤ÎÃͤϥ»¥°¥á¥ó¥È¤Î°ìÉô¤È¤·¤ÆžÁ÷¤µ¤ì¡¢³Æ¥»¥°¥á¥ó¥È¤ÎÁ´¥¨¥ó¥È¥ê¤ËŬÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¤¹¤Ù¤Æ¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥Õ¥¡¥¤¥ë¤Ëñ°ì¤ÎÆüÉÕ¤¬ÀßÄꤵ¤ì¤ë¤È¤¤¤¦ÌäÂê¤Ï¤¢¤ê¤Þ¤¹¤¬¡¢¥¢¡¼¥«¥¤¥Ö¤ÎžÁ÷¥µ¥¤¥º¤ò¾¯¤·¾®¤µ¤¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+値ãŒæœ€æ–°ã®å ´åˆã€ãƒ‘ック・ツールã¯ã€å…ƒã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®ã†ã¡ã®æœ€çµ‚更新時刻ã‹ã€ãã®ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã®ä½¿ç”¨å¯èƒ½ãªã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®æœ€çµ‚更新時刻を特定ã—よã†ã¨ã—ã¾ã™ã€‚ã“ã®å˜ä¸€ã®å€¤ã¯ã‚»ã‚°ãƒ¡ãƒ³ãƒˆã®ä¸€éƒ¨ã¨ã—ã¦è»¢é€ã•ã‚Œã€å„セグメントã®å…¨ã‚¨ãƒ³ãƒˆãƒªã«é©ç”¨ã•ã‚Œã¾ã™ã€‚ã“ã®å ´åˆã€ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«å˜ä¸€ã®æ—¥ä»˜ãŒè¨­å®šã•ã‚Œã‚‹ã¨ã„ã†å•é¡Œã¯ã‚ã‚Šã¾ã™ãŒã€ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®è»¢é€ã‚µã‚¤ã‚ºã‚’å°‘ã—å°ã•ãã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-Ãͤ¬\fIkeep\fR¤Î¾ì¹ç¡¢ÆþÎÏJAR¤Ç³Îǧ¤µ¤ì¤¿Êѹ¹»þ´Ö¤¬ÊÝ»ý¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤¹¡£
+値ãŒ\fIkeep\fRã®å ´åˆã€å…¥åŠ›JARã§ç¢ºèªã•ã‚ŒãŸå¤‰æ›´æ™‚é–“ãŒä¿æŒã•ã‚Œã¾ã™ã€‚ã“ã‚ŒãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã™ã€‚
 .RE
 .PP
 \-P\fIfile\fR, \-\-pass\-file=\fIfile\fR
 .RS 4
-¥Õ¥¡¥¤¥ë¤ò°µ½Ì¤»¤º¡¢¥Ð¥¤¥Èñ°Ì¤ÇžÁ÷¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò·«ÊÖ¤·»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥·¥¹¥Æ¥à¡¦¥Õ¥¡¥¤¥ë¡¦¥»¥Ñ¥ì¡¼¥¿¤¬JAR¥Õ¥¡¥¤¥ë¡¦¥»¥Ñ¥ì¡¼¥¿¤Î¥¹¥é¥Ã¥·¥å(/)¤ËÃÖ¤­´¹¤¨¤é¤ì¤ëÅÀ¤ò½ü¤­¡¢¥Ñ¥¹Ì¾¤ÎÊÑ´¹¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£·ë²Ì¤È¤·¤ÆÆÀ¤é¤ì¤ë¥Õ¥¡¥¤¥ë̾¤Ï¡¢Ê¸»úÎó¤È¤·¤ÆÀµ³Î¤ËJAR¥Õ¥¡¥¤¥ë¤Ç¤Î½Ð¸½¤È°ìÃפ·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIfile\fR¤Ë¥Ç¥£¥ì¥¯¥È¥ê̾¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤¬Å¾Á÷¤µ¤ì¤Þ¤¹¡£
+ファイルを圧縮ã›ãšã€ãƒã‚¤ãƒˆå˜ä½ã§è»¢é€ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを繰返ã—使用ã—ã¦ã€è¤‡æ•°ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚システム・ファイル・セパレータãŒJARファイル・セパレータã®ã‚¹ãƒ©ãƒƒã‚·ãƒ¥(/)ã«ç½®ãæ›ãˆã‚‰ã‚Œã‚‹ç‚¹ã‚’除ãã€ãƒ‘スåã®å¤‰æ›ã¯è¡Œã‚ã‚Œã¾ã›ã‚“。çµæžœã¨ã—ã¦å¾—られるファイルåã¯ã€æ–‡å­—列ã¨ã—ã¦æ­£ç¢ºã«JARファイルã§ã®å‡ºç¾ã¨ä¸€è‡´ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIfile\fRã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªåを指定ã—ãŸå ´åˆã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒè»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-U\fIaction\fR, \-\-unknown\-attribute=\fIaction\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ÉÔÌÀ¤Ê°À­¤ò´Þ¤à¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤¬¡¢»ØÄꤷ¤¿\fIaction\fR¤Ë¤è¤Ã¤ÆÅϤµ¤ì¤Þ¤¹¡£¥¢¥¯¥·¥ç¥ó¤È¤·¤Æ»ØÄê²Äǽ¤ÊÃͤϡ¢\fIerror\fR¡¢\fIstrip\fR¤Þ¤¿¤Ï\fIpass\fR¤Ç¤¹¡£
+デフォルトã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€ä¸æ˜Žãªå±žæ€§ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã€æŒ‡å®šã—ãŸ\fIaction\fRã«ã‚ˆã£ã¦æ¸¡ã•ã‚Œã¾ã™ã€‚アクションã¨ã—ã¦æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIerror\fRã€\fIstrip\fRã¾ãŸã¯\fIpass\fRã§ã™ã€‚
 .sp
-Ãͤ¬\fIerror\fR¤Î¾ì¹ç¡¢\fIpack200\fR¥³¥Þ¥ó¥ÉÁàºîÁ´ÂΤ¬¼ºÇÔ¤·¤ÆŬÀÚ¤ÊÀâÌÀ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIerror\fRã®å ´åˆã€\fIpack200\fRコマンドæ“作全体ãŒå¤±æ•—ã—ã¦é©åˆ‡ãªèª¬æ˜ŽãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-Ãͤ¬\fIstrip\fR¤Î¾ì¹ç¡¢Â°À­¤Ïºï½ü¤µ¤ì¤Þ¤¹¡£Java²¾ÁÛ¥Þ¥·¥ó(JVM)ɬ¿Ü°À­¤òºï½ü¤¹¤ë¤È¡¢¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Î¾ã³²¤¬È¯À¸¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+値ãŒ\fIstrip\fRã®å ´åˆã€å±žæ€§ã¯å‰Šé™¤ã•ã‚Œã¾ã™ã€‚Java仮想マシン(JVM)必須属性を削除ã™ã‚‹ã¨ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã®éšœå®³ãŒç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Ãͤ¬\fIpass\fR¤Î¾ì¹ç¡¢¥¯¥é¥¹Á´ÂΤ¬1¤Ä¤Î¥ê¥½¡¼¥¹¤È¤·¤ÆžÁ÷¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIpass\fRã®å ´åˆã€ã‚¯ãƒ©ã‚¹å…¨ä½“ãŒ1ã¤ã®ãƒªã‚½ãƒ¼ã‚¹ã¨ã—ã¦è»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-C\fIattribute\-name\fR=\fIlayout\fR, \-\-class\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-F\fIattribute\-name\fR=\fIlayout\fR, \-\-field\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-M\fIattribute\-name\fR=\fIlayout\fR, \-\-method\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+次ã®ã‚ªãƒ—ションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-D\fIattribute\-name\fR=\fIlayout\fR, \-\-code\-attribute=\fIattribute\-name\fR=\fIaction\fR
 .RS 4
-Á°½Ò¤Î4¤Ä¤Î¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥¯¥é¥¹¡¦¥¨¥ó¥Æ¥£¥Æ¥£¤Ë\fIclass\-attribute\fR¡¢\fIfield\-attribute\fR¡¢\fImethod\-attribute\fR¤ª¤è¤Ó\fIcode\-attribute\fR¤Ê¤É¤Î°À­¤Î¥ì¥¤¥¢¥¦¥È¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£\fIattribute\-name\fR¤Ë¤Ï¡¢¤³¤ì¤«¤é¥ì¥¤¥¢¥¦¥È¤Þ¤¿¤Ï¥¢¥¯¥·¥ç¥ó¤òÄêµÁ¤¹¤ë°À­¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£\fIaction\fR¤È¤·¤Æ»ØÄê²Äǽ¤ÊÃͤϡ¢\fIsome\-layout\-string\fR¡¢\fIerror\fR¡¢\fIstrip\fR¡¢\fIpass\fR¤Ç¤¹¡£
+å‰è¿°ã®4ã¤ã®ã‚ªãƒ—ションã§ã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«\fIclass\-attribute\fRã€\fIfield\-attribute\fRã€\fImethod\-attribute\fRãŠã‚ˆã³\fIcode\-attribute\fRãªã©ã®å±žæ€§ã®ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’指定ã§ãã¾ã™ã€‚\fIattribute\-name\fRã«ã¯ã€ã“ã‚Œã‹ã‚‰ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã¾ãŸã¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’定義ã™ã‚‹å±žæ€§ã®åå‰ã‚’指定ã—ã¾ã™ã€‚\fIaction\fRã¨ã—ã¦æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIsome\-layout\-string\fRã€\fIerror\fRã€\fIstrip\fRã€\fIpass\fRã§ã™ã€‚
 .sp
-\fIsome\-layout\-string\fR: ¥ì¥¤¥¢¥¦¥È¸À¸ì¤ÏJSR 200»ÅÍͤÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Îã:
-\fI\-\-class\-attribute=SourceFile=RUH\fR¡£
+\fIsome\-layout\-string\fR: レイアウト言語ã¯JSR 200仕様ã§å®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚例:
+\fI\-\-class\-attribute=SourceFile=RUH\fR。
 .sp
-Ãͤ¬\fIerror\fR¤Î¾ì¹ç¡¢\fIpack200\fRÁàºî¤¬¼ºÇÔ¤·¤ÆÀâÌÀ¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIerror\fRã®å ´åˆã€\fIpack200\fRæ“作ãŒå¤±æ•—ã—ã¦èª¬æ˜ŽãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .sp
-Ãͤ¬\fIstrip\fR¤Î¾ì¹ç¡¢Â°À­¤¬½ÐÎϤ«¤éºï½ü¤µ¤ì¤Þ¤¹¡£VMɬ¿Ü°À­¤òºï½ü¤¹¤ë¤È¥¯¥é¥¹¡¦¥í¡¼¥À¡¼¤Î¾ã³²¤¬È¯À¸¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-\-class\-attribute=CompilationID=pass\fR¤È¤¤¤¦¤³¤Î°À­¤ò´Þ¤à¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òžÁ÷¤·¤Þ¤¹¡£¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤Ï¡¢¤½¤Î¾¤Î¥¢¥¯¥·¥ç¥ó¤ò¹Ô¤¤¤Þ¤»¤ó¡£
+値ãŒ\fIstrip\fRã®å ´åˆã€å±žæ€§ãŒå‡ºåŠ›ã‹ã‚‰å‰Šé™¤ã•ã‚Œã¾ã™ã€‚VM必須属性を削除ã™ã‚‹ã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ€ãƒ¼ã®éšœå®³ãŒç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-\-class\-attribute=CompilationID=pass\fRã¨ã„ã†ã“ã®å±žæ€§ã‚’å«ã‚€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’転é€ã—ã¾ã™ã€‚パック・ツールã¯ã€ãã®ä»–ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’è¡Œã„ã¾ã›ã‚“。
 .sp
-Ãͤ¬\fIpass\fR¤Î¾ì¹ç¡¢¥¯¥é¥¹Á´ÂΤ¬1¤Ä¤Î¥ê¥½¡¼¥¹¤È¤·¤ÆžÁ÷¤µ¤ì¤Þ¤¹¡£
+値ãŒ\fIpass\fRã®å ´åˆã€ã‚¯ãƒ©ã‚¹å…¨ä½“ãŒ1ã¤ã®ãƒªã‚½ãƒ¼ã‚¹ã¨ã—ã¦è»¢é€ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-f \fIpack\&.properties\fR, \-\-config\-file=\fIpack\&.properties\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¡¢¥Ñ¥Ã¥¯¡¦¥Ä¡¼¥ë¤ò½é´ü²½¤¹¤ë¤¿¤á¤ÎJava¥×¥í¥Ñ¥Æ¥£¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¹½À®¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+コマンドラインã«ã€ãƒ‘ック・ツールをåˆæœŸåŒ–ã™ã‚‹ãŸã‚ã®JavaプロパティãŒå«ã¾ã‚Œã¦ã„る構æˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -251,42 +251,42 @@
 .PP
 \-v, \-\-verbose
 .RS 4
-ºÇ¾®¸Â¤Î¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤òÊ£¿ô»ØÄꤹ¤ë¤È¡¢¤è¤êŤ¤¥á¥Ã¥»¡¼¥¸¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+最å°é™ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’出力ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを複数指定ã™ã‚‹ã¨ã€ã‚ˆã‚Šé•·ã„メッセージãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-q, \-\-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤»¤º¤ËÆ°ºî¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+メッセージを表示ã›ãšã«å‹•ä½œã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-l\fIfilename\fR, \-\-log\-file=\fIfilename\fR
 .RS 4
-½ÐÎÏ¥á¥Ã¥»¡¼¥¸¤Î¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£
+出力メッセージã®ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-?, \-h, \-\-help
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V, \-\-version
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«é–¢ã™ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-»ØÄꤵ¤ì¤¿¥ª¥×¥·¥ç¥ó¤òJava²¾ÁÛ¥Þ¥·¥ó¤ËÅϤ·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢java(1)¥³¥Þ¥ó¥É¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
+指定ã•ã‚ŒãŸã‚ªãƒ—ションをJava仮想マシンã«æ¸¡ã—ã¾ã™ã€‚詳細ã¯ã€java(1)コマンドã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã‚’å‚ç…§ã—ã¦ãã ã•ã„。ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+.SH "終了ステータス"
 .PP
-¼¡¤Î½ªÎ»Ãͤ¬ÊÖ¤µ¤ì¤Þ¤¹: Àµ¾ï½ªÎ»¤Î¾ì¹ç¤Ï0¡¢¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ï0¤è¤êÂ礭¤¤ÃÍ¡£
-.SH "Ãí°Õ"
+次ã®çµ‚了値ãŒè¿”ã•ã‚Œã¾ã™: 正常終了ã®å ´åˆã¯0ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã¯0より大ãã„値。
+.SH "注æ„"
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤È\fIpack\fR(1)¤òº®Æ±¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£\fIpack\fR¤ª¤è¤Ó\fIpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢ÊÌ¡¹¤ÎÀ½ÉʤǤ¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¨\fIpack\fR(1)ã‚’æ··åŒã—ãªã„ã§ãã ã•ã„。\fIpack\fRãŠã‚ˆã³\fIpack200\fRコマンドã¯ã€åˆ¥ã€…ã®è£½å“ã§ã™ã€‚
 .PP
-JDK¤ËÉÕ°¤¹¤ëJava SE API»ÅÍͤȤÎÁê°ã¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢»ÅÍͤòÍ¥À褷¤Æ¤¯¤À¤µ¤¤¡£
-.SH "´ØÏ¢¹àÌÜ"
+JDKã«ä»˜å±žã™ã‚‹Java SE API仕様ã¨ã®ç›¸é•ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ä»•æ§˜ã‚’優先ã—ã¦ãã ã•ã„。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/policytool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/policytool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: policytool
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: セキュリティ・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "policytool" "1" "2013ǯ11·î21Æü" "JDK 8" "¥»¥­¥å¥ê¥Æ¥£¡¦¥Ä¡¼¥ë"
+.TH "policytool" "1" "2013年11月21日" "JDK 8" "セキュリティ・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-policytool \- ¥æ¡¼¥Æ¥£¥ê¥Æ¥£GUI·Ðͳ¤Ç¼èÆÀ¤·¤¿¥æ¡¼¥¶¡¼ÆþÎϤ˴ð¤Å¤¤¤Æ¡¢¥×¥ì¡¼¥ó¡¦¥Æ¥­¥¹¥È¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߽ñ¤­¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+policytool \- ユーティリティGUI経由ã§å–å¾—ã—ãŸãƒ¦ãƒ¼ã‚¶ãƒ¼å…¥åŠ›ã«åŸºã¥ã„ã¦ã€ãƒ—レーン・テキストã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿æ›¸ãã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,17 +64,17 @@
 .PP
 \-file
 .RS 4
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¤è¤¦¤Ë\fIpolicytool\fR¤Ë»Ø¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿è¾¼ã‚€ã‚ˆã†ã«\fIpolicytool\fRã«æŒ‡ç¤ºã—ã¾ã™ã€‚
 .RE
 .PP
 \fIfilename\fR
 .RS 4
-¥í¡¼¥É¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¡£
+ロードã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã€‚
 .RE
 .PP
-\fBÎã\fR:
+\fB例\fR:
 .PP
-¥Ý¥ê¥·¡¼¡¦¥Ä¡¼¥ë´ÉÍý¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò¼Â¹Ô¤·¤Þ¤¹:
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ„ール管ç†ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã‚’実行ã—ã¾ã™:
 .sp
 .if n \{\
 .RS 4
@@ -86,7 +86,7 @@
 .RE
 .\}
 .PP
-\fIpolicytool\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤Þ¤¹:
+\fIpolicytool\fRコマンドを実行ã—ã€æŒ‡å®šã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ロードã—ã¾ã™:
 .sp
 .if n \{\
 .RS 4
@@ -97,17 +97,17 @@
 .if n \{\
 .RE
 .\}
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIpolicytool\fR¥³¥Þ¥ó¥É¤Ï¡¢´ÉÍý¼Ô¤ÎGUI¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¥í¡¼¥«¥ë¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò´ÉÍý¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ï\fI\&.policy\fR³ÈÄ¥»Ò¤ò»ý¤Ä¥×¥ì¡¼¥ó¥Æ¥­¥¹¥È¡¦¥Õ¥¡¥¤¥ë¤Ç¡¢¥É¥á¥¤¥óÊ̤˥ê¥â¡¼¥È¡¦¥ê¥¯¥¨¥¹¥¿¤ò¸¢¸Â¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Þ¥Ã¥×¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html¤Ë¤¢¤ë
-¡ÖDefault Policy Implementation and Policy File Syntax¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIpolicytool\fRコマンドã¯ã€ç®¡ç†è€…ã®GUIを呼ã³å‡ºã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ã‚·ã‚¹ãƒ†ãƒ ç®¡ç†è€…ã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容を管ç†ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fI\&.policy\fRæ‹¡å¼µå­ã‚’æŒã¤ãƒ—レーンテキスト・ファイルã§ã€ãƒ‰ãƒ¡ã‚¤ãƒ³åˆ¥ã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒªã‚¯ã‚¨ã‚¹ã‚¿ã‚’権é™ã‚ªãƒ–ジェクトã«ãƒžãƒƒãƒ—ã—ã¾ã™ã€‚詳細ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.htmlã«ã‚ã‚‹
+「Default Policy Implementation and Policy File Syntaxã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "オプション"
 .PP
 \-file
 .RS 4
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¤è¤¦¤Ë\fIpolicytool\fR¤Ë»Ø¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’読ã¿è¾¼ã‚€ã‚ˆã†ã«\fIpolicytool\fRã«æŒ‡ç¤ºã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -117,7 +117,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖDefault Policy Implementation and Policy File Syntax¡×
+「Default Policy Implementation and Policy File Syntaxã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.html)
 .RE
 .sp
@@ -129,7 +129,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPolicy File Creation and Management¡×
+「Policy File Creation and Managementã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyGuide\&.html)
 .RE
 .sp
@@ -141,7 +141,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPermissions in Java SE Development Kit (JDK)¡×
+「Permissions in Java SE Development Kit (JDK)ã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/permissions\&.html)
 .RE
 .sp
@@ -153,7 +153,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava Security Overview¡×
+「Java Security Overviewã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/overview/jsoverview\&.html)
 .RE
 .sp
@@ -165,7 +165,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava Cryptography Architecture (JCA) Reference Guide¡×
+「Java Cryptography Architecture (JCA) Reference Guideã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec\&.html)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/rmic.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmic.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmic
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmic" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmic" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmic \- Java Remote Method Protocol (JRMP)¤Þ¤¿¤ÏInternet Inter\-Orb protocol (IIOP)¤ò»ÈÍѤ¹¤ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¤ª¤è¤ÓTie¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£Object Management Group (OMG)¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¤âÀ¸À®¤·¤Þ¤¹
-.SH "³µÍ×"
+rmic \- Java Remote Method Protocol (JRMP)ã¾ãŸã¯Internet Inter\-Orb protocol (IIOP)を使用ã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¹ã‚¿ãƒ–ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãŠã‚ˆã³Tieクラスを生æˆã—ã¾ã™ã€‚Object Management Group (OMG)インタフェース定義言語(IDL)も生æˆã—ã¾ã™
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,20 +64,20 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦\fI¥ª¥×¥·¥ç¥ó\fR¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・\fIオプション\fR。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIpackage\-qualified\-class\-names\fR
 .RS 4
-¥Ñ¥Ã¥±¡¼¥¸¤ò´Þ¤à¥¯¥é¥¹Ì¾¡£Îã:
-\fIjava\&.awt\&.Color\fR¡£
+パッケージをå«ã‚€ã‚¯ãƒ©ã‚¹å。例:
+\fIjava\&.awt\&.Color\fR。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fBÈó¿ä¾©¤Ë´Ø¤¹¤ëÃí°Õ:\fR
-Java Remote Method Protocol (JRMP)¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¤ÎÀÅŪ¤ÊÀ¸À®¤Î¥µ¥Ý¡¼¥È¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£Æ°Åª¤ËÀ¸À®¤µ¤ì¤ëJRMP¥¹¥¿¥Ö¤ò¤«¤ï¤ê¤Ë»ÈÍѤ·¤Æ¡¢JRMP¥Ù¡¼¥¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤³¤Î¥Ä¡¼¥ë¤ò»ÈÍѤ¹¤ëɬÍ×À­¤ò¤Ê¤¯¤¹¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\fIjava\&.rmi\&.server\&.UnicastRemoteObject\fR»ÅÍÍ(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/server/UnicastRemoteObject\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fBéžæŽ¨å¥¨ã«é–¢ã™ã‚‹æ³¨æ„:\fR
+Java Remote Method Protocol (JRMP)スタブãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã®é™çš„ãªç”Ÿæˆã®ã‚µãƒãƒ¼ãƒˆã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚å‹•çš„ã«ç”Ÿæˆã•ã‚Œã‚‹JRMPスタブをã‹ã‚ã‚Šã«ä½¿ç”¨ã—ã¦ã€JRMPベースã®ã‚¢ãƒ—リケーションã«ã“ã®ãƒ„ールを使用ã™ã‚‹å¿…è¦æ€§ã‚’ãªãã™ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚詳細ã¯ã€\fIjava\&.rmi\&.server\&.UnicastRemoteObject\fR仕様(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/server/UnicastRemoteObject\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIrmic\fR¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Java Remote Method Protocol (JRMP)¤È¥¹¥¿¥Ö¤ª¤è¤ÓTie¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë(IIOP¥×¥í¥È¥³¥ë)¤ò»ÈÍѤ·¤Æ¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¼ÂÁõ¥¯¥é¥¹¤Ç¤¢¤ë¤³¤ì¤é¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ï¡¢Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥¯¥é¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£¥ê¥â¡¼¥È¼ÂÁõ¥¯¥é¥¹¤Ï¡¢\fIjava\&.rmi\&.Remote\fR¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£\fIrmic\fR¥³¥Þ¥ó¥É¤Ç¤Î¥¯¥é¥¹Ì¾¤Ï¡¢¤½¤Î¥¯¥é¥¹¤¬\fIjavac\fR¥³¥Þ¥ó¥É¤Ç¥³¥ó¥Ñ¥¤¥ë¤¬À®¸ù¤·¤Æ¤¤¤Æ¡¢¤«¤Ä´°Á´½¤¾þ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Ë¼¨¤¹¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë̾\fIHelloImpl\fR¤Ç\fIrmic\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢hello¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î̾Á°¤ÎÉÕ¤¤¤¿)¤Ë\fIHelloImpl_Stub\&.class \fR¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIrmic\fRコンパイラã¯ã€Java Remote Method Protocol (JRMP)ã¨ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³Tieクラス・ファイル(IIOPプロトコル)を使用ã—ã¦ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’生æˆã—ã¾ã™ã€‚リモート・オブジェクトã®å®Ÿè£…クラスã§ã‚ã‚‹ã“れらã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã€Javaプログラミング言語ã®ã‚¯ãƒ©ã‚¹ã‚’コンパイルã—ãŸã¨ãã«ç”Ÿæˆã•ã‚Œã¾ã™ã€‚リモート実装クラスã¯ã€\fIjava\&.rmi\&.Remote\fRインタフェースを実装ã™ã‚‹ã‚¯ãƒ©ã‚¹ã§ã™ã€‚\fIrmic\fRコマンドã§ã®ã‚¯ãƒ©ã‚¹åã¯ã€ãã®ã‚¯ãƒ©ã‚¹ãŒ\fIjavac\fRコマンドã§ã‚³ãƒ³ãƒ‘イルãŒæˆåŠŸã—ã¦ã„ã¦ã€ã‹ã¤å®Œå…¨ä¿®é£¾ãƒ‘ッケージåã§ã‚ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã«ç¤ºã™ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«å\fIHelloImpl\fRã§\fIrmic\fRコマンドを実行ã™ã‚‹ã¨ã€helloサブディレクトリ(クラスã®ãƒ‘ッケージã®åå‰ã®ä»˜ã„ãŸ)ã«\fIHelloImpl_Stub\&.class \fRファイルãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,31 +89,31 @@
 .RE
 .\}
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¹¥±¥ë¥È¥ó¤ÏJRMP¥×¥í¥È¥³¥ë¡¦¥µ¡¼¥Ð¡¼Â¦¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¼ÂÁõ¤ò¸Æ¤Ó½Ð¤¹¥á¥½¥Ã¥É¤ò´Þ¤ß¤Þ¤¹¡£
+リモート・オブジェクトã®ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã¯JRMPプロトコル・サーãƒãƒ¼å´ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト実装を呼ã³å‡ºã™ãƒ¡ã‚½ãƒƒãƒ‰ã‚’å«ã¿ã¾ã™ã€‚
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎTie¤Ï¡¢¥¹¥±¥ë¥È¥ó¤ÈƱÍͤ˥µ¡¼¥Ð¡¼Â¦¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Ç¤¹¤¬¡¢IIOP¥×¥í¥È¥³¥ë¤ò»ÈÍѤ·¤Æ¥¯¥é¥¤¥¢¥ó¥È¤ÈÄÌ¿®¤·¤Þ¤¹¡£
+リモート・オブジェクトã®Tieã¯ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã¨åŒæ§˜ã«ã‚µãƒ¼ãƒãƒ¼å´ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã§ã™ãŒã€IIOPプロトコルを使用ã—ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨é€šä¿¡ã—ã¾ã™ã€‚
 .PP
-¥¹¥¿¥Ö¤È¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¯¥é¥¤¥¢¥ó¥È¦¤Ç¤ÎÂåÍý¤Ç¤¹¡£¥¹¥¿¥Ö¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥½¥Ã¥É¸Æ½Ð¤·¤ò¡¢¼Âʪ¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¾ïÃ󤹤륵¡¼¥Ð¡¼¤ÈÄÌ¿®¤¹¤ëÌò³ä¤ò»ý¤Á¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤Ï¡¢¼ÂºÝ¤Ï¥í¡¼¥«¥ë¡¦¥¹¥¿¥Ö¤Ø¤Î»²¾È¤È¤Ê¤ê¤Þ¤¹¡£
+スタブã¨ã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆå´ã§ã®ä»£ç†ã§ã™ã€‚スタブã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ãƒ¡ã‚½ãƒƒãƒ‰å‘¼å‡ºã—ã‚’ã€å®Ÿç‰©ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå¸¸é§ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹å½¹å‰²ã‚’æŒã¡ã¾ã™ã€‚ã—ãŸãŒã£ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã¸ã®å‚ç…§ã¯ã€å®Ÿéš›ã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚¹ã‚¿ãƒ–ã¸ã®å‚ç…§ã¨ãªã‚Šã¾ã™ã€‚
 .PP
-¥Ç¥Õ¥©¥ë¥È¤Ç\fIrmic\fR¥³¥Þ¥ó¥É¤Ï¡¢1\&.2 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤ò»ÈÍѤ¹¤ë¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢\fI\-v1\&.2\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸Æ°ºî¤Ç¤¹¡£¥ê¥ê¡¼¥¹5\&.0°ÊÁ°¤Ç¤Ï\fI\-vcompat\fR¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤·¤¿¡£IIOP¥×¥í¥È¥³¥ëÍѤΥ¹¥¿¥Ö¤ª¤è¤ÓTie¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¤Ë¤Ï\fI\-iiop\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+デフォルトã§\fIrmic\fRコマンドã¯ã€1\&.2 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã‚’使用ã™ã‚‹ã‚¹ã‚¿ãƒ–・クラスを生æˆã—ã¾ã™ã€‚ã“ã‚Œã¯ã€\fI\-v1\&.2\fRオプションを指定ã—ãŸå ´åˆã¨åŒã˜å‹•ä½œã§ã™ã€‚リリース5\&.0以å‰ã§ã¯\fI\-vcompat\fRオプションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã—ãŸã€‚IIOPプロトコル用ã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³Tieクラスを生æˆã™ã‚‹ã«ã¯\fI\-iiop\fRオプションを使用ã—ã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-¥¹¥¿¥Ö¤Ï¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Î¤ß¤ò¼ÂÁõ¤·¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¼ÂÁõ¤¹¤ë¥í¡¼¥«¥ë¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó¡£JRMP¥¹¥¿¥Ö¤Ï¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤¬¼ÂÁõ¤¹¤ë¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÈƱ¤¸¤â¤Î¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¤Î¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤Ï¡¢¥­¥ã¥¹¥È¤ä·¿¥Á¥§¥Ã¥¯¤ËJava¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤ËÁȤ߹þ¤Þ¤ì¤¿±é»»»Ò¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£IIOP¤Î¾ì¹ç¤Ï¡¢\fIPortableRemoteObject\&.narrow\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+スタブã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã®ã¿ã‚’実装ã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå®Ÿè£…ã™ã‚‹ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¯å®Ÿè£…ã—ã¦ã„ã¾ã›ã‚“。JRMPスタブã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトãŒå®Ÿè£…ã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã¨åŒã˜ã‚‚ã®ã‚’実装ã—ã¦ã„ã‚‹ã®ã§ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã€ã‚­ãƒ£ã‚¹ãƒˆã‚„åž‹ãƒã‚§ãƒƒã‚¯ã«Javaプログラミング言語ã«çµ„ã¿è¾¼ã¾ã‚ŒãŸæ¼”ç®—å­ã‚’使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚IIOPã®å ´åˆã¯ã€\fIPortableRemoteObject\&.narrow\fRメソッドを使用ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-bootclasspath \fIpath\fR
 .RS 4
-¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ブートストラップ・クラス・ファイルã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-classpath path
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤¬¥¯¥é¥¹¤òõ¤¹¤¿¤á¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤ä\fICLASSPATH\fR´Ä¶­ÊÑ¿ôÀßÄê¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Çʬ³ä¤·¤Þ¤¹¡£¥Ñ¥¹¤Î°ìÈÌŪ¤Ê·Á¼°¤Ï\fI\&.;<your_path>\fR¤Ç¤¹¡£Îã:
+\fIrmic\fRコマンドãŒã‚¯ãƒ©ã‚¹ã‚’探ã™ãŸã‚ã®ãƒ‘スを指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚„\fICLASSPATH\fR環境変数設定をオーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åˆ†å‰²ã—ã¾ã™ã€‚パスã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯\fI\&.;<your_path>\fRã§ã™ã€‚例:
 \fI\&.;/usr/local/java/classes\fR
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥¯¥é¥¹³¬ÁؤνÐÎÏÀè¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ë¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¡¢¤ª¤è¤ÓTie¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ÏMyClass¤«¤éƳ½Ð¤µ¤ì¤¿¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤ò¥Ç¥£¥ì¥¯¥È¥ê/java/classes/exampleclass¤Ë³ÊǼ¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹éšŽå±¤ã®å‡ºåŠ›å…ˆãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒ«ãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ–ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã€ãŠã‚ˆã³Tieファイルを格ç´ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯MyClassã‹ã‚‰å°Žå‡ºã•ã‚ŒãŸã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’ディレクトリ/java/classes/exampleclassã«æ ¼ç´ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -124,25 +124,25 @@
 .if n \{\
 .RE
 .\}
-\fI\-d\fR¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ï\fI\-d\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¤ÈƱ¤¸¤Ç¤¹¡£¥¿¡¼¥²¥Ã¥È¡¦¥¯¥é¥¹¤Î¥Ñ¥Ã¥±¡¼¥¸³¬Áؤ¬¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤µ¤ì¡¢stub/tie/skeleton¥Õ¥¡¥¤¥ë¤¬³ÊǼ¤µ¤ì¤Þ¤¹¡£°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Î\fIrmic\fR¥³¥Þ¥ó¥É¤Ç¤Ï¡¢\fI\-d\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ñ¥Ã¥±¡¼¥¸³¬ÁؤϺîÀ®¤µ¤ì¤º¡¢½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï¤¹¤Ù¤Æ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËľÀܳÊǼ¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¡£
+\fI\-d\fRオプションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã¯\fI\-d\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãŸå ´åˆã¨åŒã˜ã§ã™ã€‚ターゲット・クラスã®ãƒ‘ッケージ階層ãŒç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ä½œæˆã•ã‚Œã€stub/tie/skeletonファイルãŒæ ¼ç´ã•ã‚Œã¾ã™ã€‚以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã®\fIrmic\fRコマンドã§ã¯ã€\fI\-d\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ãƒ‘ッケージ階層ã¯ä½œæˆã•ã‚Œãšã€å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã¯ã™ã¹ã¦ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç›´æŽ¥æ ¼ç´ã•ã‚Œã¦ã„ã¾ã—ãŸã€‚
 .RE
 .PP
 \-extdirs \fIpath\fR
 .RS 4
-¥¤¥ó¥¹¥È¡¼¥ëºÑ³ÈÄ¥µ¡Ç½¤Î°ÌÃÖ¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+インストール済拡張機能ã®ä½ç½®ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-g
 .RS 4
-¥í¡¼¥«¥ëÊÑ¿ô¤ò´Þ¤à¤¹¤Ù¤Æ¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¹ÔÈÖ¹æ¾ðÊó¤Î¤ßÀ¸À®¤µ¤ì¤Þ¤¹¡£
+ローカル変数をå«ã‚€ã™ã¹ã¦ã®ãƒ‡ãƒãƒƒã‚°æƒ…報を生æˆã—ã¾ã™ã€‚デフォルトã§ã¯ã€è¡Œç•ªå·æƒ…å ±ã®ã¿ç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-idl
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢»ØÄꤷ¤¿¥¯¥é¥¹¤ª¤è¤Ó»²¾È¤µ¤ì¤¿¥¯¥é¥¹¤ÎOMG IDL¤¬À¸À®¤µ¤ì¤Þ¤¹¡£IDL¤Ç¤Ï¡¢¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ë°Í¸¤»¤º¤Ë¡¢Àë¸À¤¹¤ë¤À¤±¤Ç¥ª¥Ö¥¸¥§¥¯¥È¤ÎAPI¤ò»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£IDL¤Ï¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤Î»ÅÍͤȤ·¤Æ»ÈÍѤ·¤Þ¤¹¡£CORBA¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÄ󶡤¹¤ëǤ°Õ¤Î¸À¸ì¤Ç¡¢¥á¥½¥Ã¥É¤ª¤è¤Ó¥Ç¡¼¥¿¤ÎºîÀ®¤ª¤è¤Ó¸Æ½Ð¤·¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¸À¸ì¤Ë¤Ï¡¢Java¤ª¤è¤ÓC++¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.html¤Î
-¡ÖJava IDL: IDL to Java Language Mapping¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIrmic\fRコマンドã«ã‚ˆã£ã¦ã€æŒ‡å®šã—ãŸã‚¯ãƒ©ã‚¹ãŠã‚ˆã³å‚ç…§ã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã®OMG IDLãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚IDLã§ã¯ã€ãƒ—ログラミング言語ã«ä¾å­˜ã›ãšã«ã€å®£è¨€ã™ã‚‹ã ã‘ã§ã‚ªãƒ–ジェクトã®APIを指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚IDLã¯ã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®ä»•æ§˜ã¨ã—ã¦ä½¿ç”¨ã—ã¾ã™ã€‚CORBAãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’æä¾›ã™ã‚‹ä»»æ„ã®è¨€èªžã§ã€ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³ãƒ‡ãƒ¼ã‚¿ã®ä½œæˆãŠã‚ˆã³å‘¼å‡ºã—ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã™ã€‚ã“れらã®è¨€èªžã«ã¯ã€JavaãŠã‚ˆã³C++ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/mapping/jidlMapping\&.htmlã®
+「Java IDL: IDL to Java Language Mappingã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .sp
-\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¤­¤Ë¤Ï¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fI\-idl\fRオプションを使用ã™ã‚‹ã¨ãã«ã¯ã€ä»–ã®ã‚ªãƒ—ションも指定ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -152,7 +152,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´û¸¤Î¥¹¥¿¥Ö/Tie/IDL¤¬ÆþÎÏ¥¯¥é¥¹¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤Ç¤â¡¢\fI\-always\fR¤Þ¤¿¤Ï\fI\-alwaysgenerate\fR¥ª¥×¥·¥ç¥ó¤ÏºÆÀ¸À®¤ò¶¯À©¤·¤Þ¤¹¡£
+既存ã®ã‚¹ã‚¿ãƒ–/Tie/IDLãŒå…¥åŠ›ã‚¯ãƒ©ã‚¹ã‚ˆã‚Šã‚‚æ–°ã—ã„å ´åˆã§ã‚‚ã€\fI\-always\fRã¾ãŸã¯\fI\-alwaysgenerate\fRオプションã¯å†ç”Ÿæˆã‚’強制ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -163,7 +163,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-factory\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢À¸À®¤µ¤ì¤¿IDL¤Ç\fIfactory\fR¥­¡¼¥ï¡¼¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fI\-factory\fRオプションã¯ã€ç”Ÿæˆã•ã‚ŒãŸIDLã§\fIfactory\fRキーワードを使用ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -204,9 +204,9 @@
 .PP
 \-iiop
 .RS 4
-\fIrmic\fR¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢JRMP¤Î¥¹¥¿¥Ö¤È¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Î¤«¤ï¤ê¤Ë¡¢IIOP¤Î¥¹¥¿¥Ö¤ÈTie¥¯¥é¥¹¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥í¡¼¥«¥ë¡¦¥×¥í¥­¥·¤Ç¡¢¥¯¥é¥¤¥¢¥ó¥È¤«¤é¥µ¡¼¥Ð¡¼¤Ë¸Æ½Ð¤·¤òÁ÷¿®¤¹¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£³Æ¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ë¤Ï¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤¬É¬ÍפǤ¹¡£¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ë¤è¤Ã¤Æ¥ê¥â¡¼¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬¼ÂÁõ¤µ¤ì¤Þ¤¹¡£¥¯¥é¥¤¥¢¥ó¥È¤Ç¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò»²¾È¤¹¤ë¤È¤­¤Ï¡¢¥¹¥¿¥Ö¤ò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¥¿¥¤¡¦¥¯¥é¥¹¤Ï¡¢¥µ¡¼¥Ð¡¼Â¦¤ÇÃå¸Æ¤ò½èÍý¤·¡¢¤½¤Î¸Æ½Ð¤·¤òŬÀڤʼÂÁõ¥¯¥é¥¹¤Ë¥Ç¥£¥¹¥Ñ¥Ã¥Á¤¹¤ë¤È¤­¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£³Æ¼ÂÁõ¥¯¥é¥¹¤Ë¤Ï¡¢¥¿¥¤¡¦¥¯¥é¥¹¤¬É¬ÍפǤ¹¡£
+\fIrmic\fRコマンドã«ã‚ˆã£ã¦ã€JRMPã®ã‚¹ã‚¿ãƒ–ã¨ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã®ã‹ã‚ã‚Šã«ã€IIOPã®ã‚¹ã‚¿ãƒ–ã¨TieクラスãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚スタブ・クラスã¯ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ—ロキシã§ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‹ã‚‰ã‚µãƒ¼ãƒãƒ¼ã«å‘¼å‡ºã—ã‚’é€ä¿¡ã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚å„リモート・インタフェースã«ã¯ã‚¹ã‚¿ãƒ–・クラスãŒå¿…è¦ã§ã™ã€‚スタブ・クラスã«ã‚ˆã£ã¦ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãŒå®Ÿè£…ã•ã‚Œã¾ã™ã€‚クライアントã§ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをå‚ç…§ã™ã‚‹ã¨ãã¯ã€ã‚¹ã‚¿ãƒ–ã‚’å‚ç…§ã™ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚タイ・クラスã¯ã€ã‚µãƒ¼ãƒãƒ¼å´ã§ç€å‘¼ã‚’処ç†ã—ã€ãã®å‘¼å‡ºã—ã‚’é©åˆ‡ãªå®Ÿè£…クラスã«ãƒ‡ã‚£ã‚¹ãƒ‘ッãƒã™ã‚‹ã¨ãã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚å„実装クラスã«ã¯ã€ã‚¿ã‚¤ãƒ»ã‚¯ãƒ©ã‚¹ãŒå¿…è¦ã§ã™ã€‚
 .sp
-\fI\-iiop\fR¤ò»ÈÍѤ·¤Æ\fIrmic\fR¥³¥Þ¥ó¥É¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¼¡¤Î̿̾µ¬Â§¤Ë½àµò¤·¤¿¥¹¥¿¥Ö¤ÈTie¤¬À¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-iiop\fRを使用ã—ã¦\fIrmic\fRコマンドを呼ã³å‡ºã™ã¨ã€æ¬¡ã®å‘½åè¦å‰‡ã«æº–æ‹ ã—ãŸã‚¹ã‚¿ãƒ–ã¨TieãŒç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -227,7 +227,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-iiop\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¤­¤Ë¤Ï¡¢Â¾¤Î¥ª¥×¥·¥ç¥ó¤â»ØÄê¤Ç¤­¤Þ¤¹¡£
+\fI\-iiop\fRオプションを使用ã™ã‚‹ã¨ãã«ã¯ã€ä»–ã®ã‚ªãƒ—ションも指定ã§ãã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -238,7 +238,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-´û¸¤Î¥¹¥¿¥Ö/Tie/IDL¤¬ÆþÎÏ¥¯¥é¥¹¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤Ç¤â¡¢\fI\-always\fR¤Þ¤¿¤Ï\fI\-alwaysgenerate\fR¥ª¥×¥·¥ç¥ó¤ÏºÆÀ¸À®¤ò¶¯À©¤·¤Þ¤¹¡£
+既存ã®ã‚¹ã‚¿ãƒ–/Tie/IDLãŒå…¥åŠ›ã‚¯ãƒ©ã‚¹ã‚ˆã‚Šã‚‚æ–°ã—ã„å ´åˆã§ã‚‚ã€\fI\-always\fRã¾ãŸã¯\fI\-alwaysgenerate\fRオプションã¯å†ç”Ÿæˆã‚’強制ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -249,7 +249,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-nolocalstubs\fR¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢Æ±¤¸¥×¥í¥»¥¹¤Î¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ËºÇŬ²½¤µ¤ì¤¿¥¹¥¿¥Ö¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
+\fI\-nolocalstubs\fRオプションã§ã¯ã€åŒã˜ãƒ—ロセスã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã«æœ€é©åŒ–ã•ã‚ŒãŸã‚¹ã‚¿ãƒ–ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .sp
 .RS 4
@@ -260,7 +260,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢Á÷¿®¤µ¤ì¤ëIDL¤Ë\fIvaluetype\fR¥á¥½¥Ã¥É¤ª¤è¤Ó½é´ü²½»Ò¤òÄɲäǤ­¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤ª¤è¤Ó½é´ü²½»Ò¤Ï¡¢valuetype¤Î¾ì¹ç¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£\fI\-idl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë\fI\-noValueMethods\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¤«¤®¤êÀ¸À®¤µ¤ì¤Þ¤¹¡£
+\fI\-noValueMethods\fRオプションã¯\fI\-idl\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fI\-noValueMethods\fRオプションã¯ã€é€ä¿¡ã•ã‚Œã‚‹IDLã«\fIvaluetype\fRメソッドãŠã‚ˆã³åˆæœŸåŒ–å­ã‚’追加ã§ããªã„よã†ã«ã—ã¾ã™ã€‚ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ãŠã‚ˆã³åˆæœŸåŒ–å­ã¯ã€valuetypeã®å ´åˆã¯ã‚ªãƒ—ションã§ã™ã€‚\fI\-idl\fRオプションã¨ã¨ã‚‚ã«\fI\-noValueMethods\fRオプションを指定ã—ãªã„ã‹ãŽã‚Šç”Ÿæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -271,57 +271,57 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-poa\fR¥ª¥×¥·¥ç¥ó¤Ï·Ñ¾µ¤ò\fIorg\&.omg\&.CORBA_2_3\&.portable\&.ObjectImpl\fR¤«¤é\fIorg\&.omg\&.PortableServer\&.Servant\fR¤ËÊѹ¹¤·¤Þ¤¹¡£¥Ý¡¼¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥¢¥À¥×¥¿(POA)¤Î\fIPortableServer\fR¥â¥¸¥å¡¼¥ë¤Ï¡¢¥Í¥¤¥Æ¥£¥Ö¤Î\fIServant\fR·¿¤òÄêµÁ¤·¤Þ¤¹¡£Java¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ç¤Ï¡¢\fIServant\fR·¿¤ÏJava¤Î\fIorg\&.omg\&.PortableServer\&.Servant\fR¥¯¥é¥¹¤Ë¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¤¹¤Ù¤Æ¤ÎPOA¥µ¡¼¥Ð¥ó¥È¼ÂÁõ¤Î¥Ù¡¼¥¹¡¦¥¯¥é¥¹¤È¤·¤Æµ¡Ç½¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥Þ¤¬¸Æ¤Ó½Ð¤¹¤³¤È¤Î¤Ç¤­¤ë¤¤¤¯¤Ä¤«¤Î¥á¥½¥Ã¥É¡¢¤ª¤è¤ÓPOA¤Ë¤è¤Ã¤Æ¸Æ¤Ó½Ð¤µ¤ì¡¢¥µ¡¼¥Ð¥ó¥È¤ÎÆ°ºî¤òÀ©¸æ¤¹¤ë¤¿¤á¤Ë¥æ¡¼¥¶¡¼¤¬¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤ë¥á¥½¥Ã¥É¤òÄ󶡤·¤Þ¤¹¡£OMG IDL to Java Language Mapping Specification¡¢CORBA V 2\&.3\&.1 ptc/00\-01\-08\&.pdf¤Ë½àµò¤·¤Æ¤¤¤Þ¤¹¡£
+\fI\-poa\fRオプションã¯ç¶™æ‰¿ã‚’\fIorg\&.omg\&.CORBA_2_3\&.portable\&.ObjectImpl\fRã‹ã‚‰\fIorg\&.omg\&.PortableServer\&.Servant\fRã«å¤‰æ›´ã—ã¾ã™ã€‚ãƒãƒ¼ã‚¿ãƒ–ル・オブジェクト・アダプタ(POA)ã®\fIPortableServer\fRモジュールã¯ã€ãƒã‚¤ãƒ†ã‚£ãƒ–ã®\fIServant\fR型を定義ã—ã¾ã™ã€‚Javaプログラミング言語ã§ã¯ã€\fIServant\fRåž‹ã¯Javaã®\fIorg\&.omg\&.PortableServer\&.Servant\fRクラスã«ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™ã€‚ã“ã‚Œã¯ã€ã™ã¹ã¦ã®POAサーãƒãƒ³ãƒˆå®Ÿè£…ã®ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¯ãƒ©ã‚¹ã¨ã—ã¦æ©Ÿèƒ½ã—ã€ã‚¢ãƒ—リケーション・プログラマãŒå‘¼ã³å‡ºã™ã“ã¨ã®ã§ãã‚‹ã„ãã¤ã‹ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€ãŠã‚ˆã³POAã«ã‚ˆã£ã¦å‘¼ã³å‡ºã•ã‚Œã€ã‚µãƒ¼ãƒãƒ³ãƒˆã®å‹•ä½œã‚’制御ã™ã‚‹ãŸã‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã§ãるメソッドをæä¾›ã—ã¾ã™ã€‚OMG IDL to Java Language Mapping Specificationã€CORBA V 2\&.3\&.1 ptc/00\-01\-08\&.pdfã«æº–æ‹ ã—ã¦ã„ã¾ã™ã€‚
 .RE
 .RE
 .PP
 \-J
 .RS 4
-Java¥³¥Þ¥ó¥É¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢\fI\-J\fR¥ª¥×¥·¥ç¥ó¤Ï\fI\-J\fR¤Î¸å¤í¤Ë³¤¯°ú¿ô¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤ËÅϤ·¤Þ¤¹(\fI\-J\fR¤È°ú¿ô¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤ÏÆþ¤ì¤Þ¤»¤ó)¡£
+Javaコマンドã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€\fI\-J\fRオプションã¯\fI\-J\fRã®å¾Œã‚ã«ç¶šã引数をJavaインタプリタã«æ¸¡ã—ã¾ã™(\fI\-J\fRã¨å¼•æ•°ã®é–“ã«ã‚¹ãƒšãƒ¼ã‚¹ã¯å…¥ã‚Œã¾ã›ã‚“)。
 .RE
 .PP
 \-keep or \-keepgenerated
 .RS 4
-¥¹¥¿¥Ö¡¢¥¹¥±¥ë¥È¥ó¡¢¤Þ¤¿¤ÏTie¥¯¥é¥¹¤Î¤¿¤á¤ËÀ¸À®¤µ¤ì¤¿\fI\&.java\fR¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÊÝ»ý¤·¡¢\fI\&.class\fR¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤Ë½ñ¤­¹þ¤ß¤Þ¤¹¡£
+スタブã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ã€ã¾ãŸã¯Tieクラスã®ãŸã‚ã«ç”Ÿæˆã•ã‚ŒãŸ\fI\&.java\fRソース・ファイルをä¿æŒã—ã€\fI\&.class\fRファイルã¨åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã¾ã™ã€‚
 .RE
 .PP
 \-nowarn
 .RS 4
-·Ù¹ð¤ò¥ª¥Õ¤Ë¤·¤Þ¤¹¡£\fI\-nowarn\fR¥ª¥×¥·¥ç¥ó¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¡£¥³¥ó¥Ñ¥¤¥é¤Ï·Ù¹ð¤òɽ¼¨¤·¤Þ¤»¤ó¡£
+警告をオフã«ã—ã¾ã™ã€‚\fI\-nowarn\fRオプションãŒä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€‚コンパイラã¯è­¦å‘Šã‚’表示ã—ã¾ã›ã‚“。
 .RE
 .PP
 \-nowrite
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤·¤¿¥¯¥é¥¹¤ò¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Ë½ñ¤­¹þ¤ß¤Þ¤»¤ó¡£
+コンパイルã—ãŸã‚¯ãƒ©ã‚¹ã‚’ファイル・システムã«æ›¸ãè¾¼ã¿ã¾ã›ã‚“。
 .RE
 .PP
-\-vcompat (Èó¿ä¾©)
+\-vcompat (éžæŽ¨å¥¨)
 .RS 4
-1\&.1¤È1\&.2¤ÎξÊý¤ÎJRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤È¸ß´¹À­¤Î¤¢¤ë¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£5\&.0°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¤³¤Î¥ª¥×¥·¥ç¥ó¤¬¥Ç¥Õ¥©¥ë¥È¤Ç¤·¤¿¡£À¸À®¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢JDK 1\&.1²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤ë¤È1\&.1¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¡¢JDK 1\&.2°Ê¹ß¤Î²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤ë¤È1\&.2¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Ç¤Ï¡¢1\&.1¤È1\&.2¤ÎξÊý¤Î¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£À¸À®¤µ¤ì¤¿¥¯¥é¥¹¤ÏξÊý¤ÎÁàºî¥â¡¼¥É¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Ë¡¢¥µ¥¤¥º¤¬Â礭¤¯¤Ê¤ê¤Þ¤¹¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+1\&.1ã¨1\&.2ã®ä¸¡æ–¹ã®JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨äº’æ›æ€§ã®ã‚るスタブãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’作æˆã—ã¾ã™ã€‚5\&.0以å‰ã®ãƒªãƒªãƒ¼ã‚¹ã§ã¯ã“ã®ã‚ªãƒ—ションãŒãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã—ãŸã€‚生æˆã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã¯ã€JDK 1\&.1仮想マシンã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨1\&.1スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ã€JDK 1\&.2以é™ã®ä»®æƒ³ãƒžã‚·ãƒ³ã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã‚‹ã¨1\&.2スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’使用ã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã§ã¯ã€1\&.1ã¨1\&.2ã®ä¸¡æ–¹ã®ã‚¹ã‚¿ãƒ–・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’サãƒãƒ¼ãƒˆã—ã¾ã™ã€‚生æˆã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã¯ä¸¡æ–¹ã®æ“作モードをサãƒãƒ¼ãƒˆã™ã‚‹ãŸã‚ã«ã€ã‚µã‚¤ã‚ºãŒå¤§ãããªã‚Šã¾ã™ã€‚注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤ä¥ê¥ó¥«¡¼¤¬¡¢¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤ä¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤Î¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
+コンパイラやリンカーãŒã€ã‚³ãƒ³ãƒ‘イルã•ã‚Œã¦ã„るクラスやロードã•ã‚Œã¦ã„るクラス・ファイルã«ã¤ã„ã¦ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
 .RE
 .PP
-\-v1\&.1 (Èó¿ä¾©)
+\-v1\&.1 (éžæŽ¨å¥¨)
 .RS 4
-1\&.1 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤Î¥¹¥¿¥Ö¤ª¤è¤Ó¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£\fI\-v1\&.1\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢JDK 1\&.1¤«¤é\fIrmic\fR¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¡¢¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ç¤­¤Ê¤¤(¤µ¤é¤Ë¥À¥¤¥Ê¥ß¥Ã¥¯¡¦¥¯¥é¥¹¡¦¥í¡¼¥Ç¥£¥ó¥°¤ò»ÈÍѤ·¤Æ¤¤¤Ê¤¤)¡¢´û¸¤ÎÀÅŪ¥Ç¥×¥í¥¤¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤ËÂФ·¡¢Ä¾Î󲽸ߴ¹À­¤Î¤¢¤ë¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¾ì¹ç¤Î¤ß¤Ç¤¹¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+1\&.1 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã®ã‚¹ã‚¿ãƒ–ãŠã‚ˆã³ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã‚’生æˆã—ã¾ã™ã€‚\fI\-v1\&.1\fRオプションを使用ã§ãã‚‹ã®ã¯ã€JDK 1\&.1ã‹ã‚‰\fIrmic\fRコマンドã§ç”Ÿæˆã•ã‚Œã€ã‚¢ãƒƒãƒ—グレードã§ããªã„(ã•ã‚‰ã«ãƒ€ã‚¤ãƒŠãƒŸãƒƒã‚¯ãƒ»ã‚¯ãƒ©ã‚¹ãƒ»ãƒ­ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’使用ã—ã¦ã„ãªã„)ã€æ—¢å­˜ã®é™çš„デプロイã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã«å¯¾ã—ã€ç›´åˆ—化互æ›æ€§ã®ã‚るスタブ・クラスを生æˆã™ã‚‹å ´åˆã®ã¿ã§ã™ã€‚注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
-\-v1\&.2 (Èó¿ä¾©)
+\-v1\&.2 (éžæŽ¨å¥¨)
 .RS 4
-(¥Ç¥Õ¥©¥ë¥È)1\&.2 JRMP¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Î¤ß¤Î¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤Ï1\&.2¥¹¥¿¥Ö¡¦¥×¥í¥È¥³¥ë¡¦¥Ð¡¼¥¸¥ç¥ó¤Ç»ÈÍѤǤ­¤Ê¤¤¤¿¤á¡¢¥¹¥±¥ë¥È¥ó¡¦¥¯¥é¥¹¤ÏÀ¸À®¤µ¤ì¤Þ¤»¤ó¡£À¸À®¤µ¤ì¤¿¥¹¥¿¥Ö¡¦¥¯¥é¥¹¤Ï¡¢JDK 1\&.1²¾ÁÛ¥Þ¥·¥ó¤Ë¥í¡¼¥É¤µ¤ì¤Æ¤âÆ°ºî¤·¤Þ¤»¤ó¡£Ãí°Õ:¤³¤Î¥ª¥×¥·¥ç¥ó¤ÏÈó¿ä¾©¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+(デフォルト)1\&.2 JRMPスタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã¿ã®ã‚¹ã‚¿ãƒ–・クラスを生æˆã—ã¾ã™ã€‚スケルトン・クラスã¯1\&.2スタブ・プロトコル・ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ä½¿ç”¨ã§ããªã„ãŸã‚ã€ã‚¹ã‚±ãƒ«ãƒˆãƒ³ãƒ»ã‚¯ãƒ©ã‚¹ã¯ç”Ÿæˆã•ã‚Œã¾ã›ã‚“。生æˆã•ã‚ŒãŸã‚¹ã‚¿ãƒ–・クラスã¯ã€JDK 1\&.1仮想マシンã«ãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¦ã‚‚動作ã—ã¾ã›ã‚“。注æ„:ã“ã®ã‚ªãƒ—ションã¯éžæŽ¨å¥¨ã«ãªã‚Šã¾ã—ãŸã€‚説明をå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "´Ä¶­ÊÑ¿ô"
+.SH "環境変数"
 .PP
 CLASSPATH
 .RS 4
-¥æ¡¼¥¶¡¼ÄêµÁ¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò¥·¥¹¥Æ¥à¤Ë»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£Îã:
+ユーザー定義クラスã¸ã®ãƒ‘スをシステムã«æŒ‡å®šã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚例:
 \fI\&.:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/rmid.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmid.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmid
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmid" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmid" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmid \- µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤¹¤ë¤È¡¢¥ª¥Ö¥¸¥§¥¯¥È¤òJava²¾ÁÛ¥Þ¥·¥ó(VM)¤ËÅÐÏ¿¤·¤Æ¥¢¥¯¥Æ¥£¥Ö²½¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-.SH "³µÍ×"
+rmid \- 起動システム・デーモンを開始ã™ã‚‹ã¨ã€ã‚ªãƒ–ジェクトをJava仮想マシン(VM)ã«ç™»éŒ²ã—ã¦ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,13 +64,13 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤·¤Þ¤¹¡£µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤ò³«»Ï¤·¤Æ¤«¤é¤Ç¤Ê¤¤¤È¡¢¥¢¥¯¥Æ¥£¥Ö²½²Äǽ¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥¯¥Æ¥£¥Ö²½¥·¥¹¥Æ¥à¤ËÅÐÏ¿¤·¤¿¤ê¡¢JVMÆâ¤Ç¥¢¥¯¥Æ¥£¥Ö²½¤·¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£¥¢¥¯¥Æ¥£¥Ö²½²Äǽ¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤ò»ÈÍѤ¹¤ë¥×¥í¥°¥é¥à¤ÎºîÀ®ÊýË¡¤Î¾ÜºÙ¤Ï¡¢\fI¥¢¥¯¥Æ¥£¥Ö²½¤Î»ÈÍÑ\fR¤Ë´Ø¤¹¤ë¥Á¥å¡¼¥È¥ê¥¢¥ë(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi/activation/overview\&.html)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’開始ã—ã¾ã™ã€‚起動システム・デーモンを開始ã—ã¦ã‹ã‚‰ã§ãªã„ã¨ã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化å¯èƒ½ã‚ªãƒ–ジェクトをアクティブ化システムã«ç™»éŒ²ã—ãŸã‚Šã€JVM内ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ãŸã‚Šã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。アクティブ化å¯èƒ½ãªã‚ªãƒ–ジェクトを使用ã™ã‚‹ãƒ—ログラムã®ä½œæˆæ–¹æ³•ã®è©³ç´°ã¯ã€\fIアクティブ化ã®ä½¿ç”¨\fRã«é–¢ã™ã‚‹ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi/activation/overview\&.html)ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢¼¡¤Î¤è¤¦¤Ë¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Æ¡¢¥Ç¡¼¥â¥ó¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIrmid\fRコマンドを実行ã—ã€æ¬¡ã®ã‚ˆã†ã«ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¦ã€ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -82,11 +82,11 @@
 .RE
 .\}
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ÎOracle¤Î¼ÂÁõ¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ì¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬µ¯Æ°¥°¥ë¡¼¥×ÍѤËJVM¤òµ¯Æ°¤¹¤ë¤¿¤á¤Ë³Æ\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤǤ­¤ë¤«¤É¤¦¤«¤ò¸¡¾Ú¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¹Æäˡ¢\fIActivationGroupDesc\fR¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÅϤµ¤ì¤ë\fICommandEnvironment\fR¤äǤ°Õ¤Î¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Î¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÃæ¤ÇÌÀ¼¨Åª¤Ëµö²Ä¤¹¤ë¤³¤È¤¬É¬Íפˤʤê¤Þ¤·¤¿¡£\fIsun\&.rmi\&.activation\&.execPolicy\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤϡ¢µ¯Æ°¥°¥ë¡¼¥×ÍѤËJVM¤òµ¯Æ°¤¹¤ë¤¿¤á¤Ë\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤǤ­¤ë¤«¤É¤¦¤«¤òȽÃǤ¹¤ë¤È¤­¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥Ý¥ê¥·¡¼¤ò·èÄꤷ¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢\-J\-Dsun\&.rmi\&.activation\&.execPolicy=policy¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIrmid\fRコマンドã®Oracleã®å®Ÿè£…を実行ã™ã‚‹å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã‚Œã¯ã€\fIrmid\fRコマンドãŒèµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã«JVMã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã«å„\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã§ãã‚‹ã‹ã©ã†ã‹ã‚’検証ã§ãるよã†ã«ã™ã‚‹ãŸã‚ã§ã™ç‰¹ã«ã€\fIActivationGroupDesc\fRコンストラクタã«æ¸¡ã•ã‚Œã‚‹\fICommandEnvironment\fRã‚„ä»»æ„ã®ãƒ—ロパティã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚Œã‚‹ã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションã¯ã€\fIrmid\fRコマンドã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§æ˜Žç¤ºçš„ã«è¨±å¯ã™ã‚‹ã“ã¨ãŒå¿…è¦ã«ãªã‚Šã¾ã—ãŸã€‚\fIsun\&.rmi\&.activation\&.execPolicy\fRプロパティã®å€¤ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã«JVMã‚’èµ·å‹•ã™ã‚‹ãŸã‚ã«\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã§ãã‚‹ã‹ã©ã†ã‹ã‚’判断ã™ã‚‹ã¨ãã«\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã‚’決定ã—ã¾ã™ã€‚詳細ã¯ã€\-J\-Dsun\&.rmi\&.activation\&.execPolicy=policyオプションã®èª¬æ˜Žã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È1098¤Ç¥¢¥¯¥Æ¥£¥Ù¡¼¥¿¤ÈÆâÉô¥ì¥¸¥¹¥È¥ê¤¬µ¯Æ°¤µ¤ì¡¢\fIActivationSystem\fR¤¬¤³¤ÎÆâÉô¥ì¥¸¥¹¥È¥êÆâ¤Î̾Á°\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Þ¤¹¡£
+\fIrmid\fRコマンドを実行ã™ã‚‹ã¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ1098ã§ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚¿ã¨å†…部レジストリãŒèµ·å‹•ã•ã‚Œã€\fIActivationSystem\fRãŒã“ã®å†…部レジストリ内ã®åå‰\fIjava\&.rmi\&.activation\&.ActivationSystem\fRã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¾ã™ã€‚
 .PP
-¥ì¥¸¥¹¥È¥ê¤Ë¾¤Î¥Ý¡¼¥È¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë\fI\-port\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥ì¥¸¥¹¥È¥ê¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È1099¤Ç¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤È¥ì¥¸¥¹¥È¥ê¤òµ¯Æ°¤·¤Þ¤¹¡£
+レジストリã«ä»–ã®ãƒãƒ¼ãƒˆã‚’指定ã™ã‚‹ã«ã¯ã€\fIrmid\fRコマンドã®å®Ÿè¡Œæ™‚ã«\fI\-port\fRオプションを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ»ãƒãƒ¼ãƒˆ1099ã§ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -97,15 +97,15 @@
 .if n \{\
 .RE
 .\}
-.SH "ɬÍפ˱þ¤¸¤ÆRMID¤ò³«»Ï"
+.SH "å¿…è¦ã«å¿œã˜ã¦RMIDを開始"
 .PP
-\fIrmid\fR¤ò¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é³«»Ï¤¹¤ë¤Ë¤Ï¡¢\fIinetd\fR
-(Oracle Solaris¤Î¾ì¹ç)¡¢¤Þ¤¿¤Ï\fIxinetd\fR
-(Linux¤Î¾ì¹ç)¤ò¹½À®¤·¤Æ\fIrmid\fR¤òɬÍפ˱þ¤¸¤Æ³«»Ï¤¹¤ëÊýË¡¤â¤¢¤ê¤Þ¤¹¡£
+\fIrmid\fRをコマンドラインã‹ã‚‰é–‹å§‹ã™ã‚‹ã«ã¯ã€\fIinetd\fR
+(Oracle Solarisã®å ´åˆ)ã€ã¾ãŸã¯\fIxinetd\fR
+(Linuxã®å ´åˆ)を構æˆã—ã¦\fIrmid\fRã‚’å¿…è¦ã«å¿œã˜ã¦é–‹å§‹ã™ã‚‹æ–¹æ³•ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .PP
-RMID¤ò³«»Ï¤¹¤ë¤È¡¢\fISystem\&.inheritedChannel\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë(\fIinetd\fR/\fIxinetd\fR¤«¤é·Ñ¾µ)¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Þ¤¹¡£·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë¤¬null¤Ç¤¢¤ë¤«¡¢\fIjava\&.nio\&.channels\&.ServerSocketChannel\fR¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¤Ê¤«¤Ã¤¿¾ì¹ç¡¢RMID¤Ï¤½¤Î¥Á¥ã¥ó¥Í¥ë¤Ï\fIinetd\fR/\fIxinetd\fR¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¤¿¤â¤Î¤Ç¤Ï¤Ê¤¤¤ÈȽÃǤ·¡¢Á°½Ò¤Î¤è¤¦¤Ëµ¯Æ°¤·¤Þ¤¹¡£
+RMIDを開始ã™ã‚‹ã¨ã€\fISystem\&.inheritedChannel\fRメソッドを呼ã³å‡ºã—ã¦ã€ç¶™æ‰¿ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«(\fIinetd\fR/\fIxinetd\fRã‹ã‚‰ç¶™æ‰¿)ã‚’å–å¾—ã—よã†ã¨ã—ã¾ã™ã€‚継承ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«ãŒnullã§ã‚ã‚‹ã‹ã€\fIjava\&.nio\&.channels\&.ServerSocketChannel\fRã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ãªã‹ã£ãŸå ´åˆã€RMIDã¯ãã®ãƒãƒ£ãƒ³ãƒãƒ«ã¯\fIinetd\fR/\fIxinetd\fRã«ã‚ˆã£ã¦èµ·å‹•ã•ã‚ŒãŸã‚‚ã®ã§ã¯ãªã„ã¨åˆ¤æ–­ã—ã€å‰è¿°ã®ã‚ˆã†ã«èµ·å‹•ã—ã¾ã™ã€‚
 .PP
-·Ñ¾µ¤µ¤ì¤¿¥Á¥ã¥ó¥Í¥ë¤¬\fIServerSocketChannel\fR¥¤¥ó¥¹¥¿¥ó¥¹¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢RMID¤Ï¥¨¥¯¥¹¥Ý¡¼¥È¤¹¤ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¢¤Ä¤Þ¤ê\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤¬¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ë¥ì¥¸¥¹¥È¥ê¤È\fIjava\&.rmi\&.activation\&.Activator\fR¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ¹¤ë¥ê¥¯¥¨¥¹¥È¤ò¼õ¿®¤¹¤ë¥µ¡¼¥Ð¡¼¡¦¥½¥±¥Ã¥È¤È¤·¤Æ¡¢\fIServerSocketChannel\fR¤«¤é¼èÆÀ¤·¤¿\fIjava\&.net\&.ServerSocket\fR¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥â¡¼¥É¤Ç¤Ï¡¢RMID¤ÎÆ°ºî¤Ï¡¢¼¡¤Î¤³¤È¤ò½ü¤¤¤Æ¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤éµ¯Æ°¤·¤¿¾ì¹ç¤ÈƱ¤¸¤Ç¤¹¡£
+継承ã•ã‚ŒãŸãƒãƒ£ãƒ³ãƒãƒ«ãŒ\fIServerSocketChannel\fRインスタンスã§ã‚ã‚‹å ´åˆã¯ã€RMIDã¯ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã€ã¤ã¾ã‚Š\fIjava\&.rmi\&.activation\&.ActivationSystem\fRãŒãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„るレジストリã¨\fIjava\&.rmi\&.activation\&.Activator\fRリモート・オブジェクトã«å¯¾ã™ã‚‹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’å—ä¿¡ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚½ã‚±ãƒƒãƒˆã¨ã—ã¦ã€\fIServerSocketChannel\fRã‹ã‚‰å–å¾—ã—ãŸ\fIjava\&.net\&.ServerSocket\fRを使用ã—ã¾ã™ã€‚ã“ã®ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€RMIDã®å‹•ä½œã¯ã€æ¬¡ã®ã“ã¨ã‚’除ã„ã¦ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‹ã‚‰èµ·å‹•ã—ãŸå ´åˆã¨åŒã˜ã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -115,7 +115,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fISystem\&.err\fR¤ËÂФ¹¤ë½ÐÎϤϡ¢¥Õ¥¡¥¤¥ë¤Ë¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï\fIjava\&.io\&.tmpdir\fR¥·¥¹¥Æ¥à¡¦¥×¥í¥Ñ¥Æ¥£¤Ç»ØÄꤵ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê(Ä̾ï¤Ï\fI/var/tmp\fR¤Þ¤¿¤Ï\fI/tmp\fR)¤Ë¤¢¤ë¡£¥Õ¥¡¥¤¥ë̾¤ÎÀÜƬ¼­¤Ï\fIrmid\-err\fR¤Ç¡¢ÀÜÈø¼­¤Ï\fItmp\fR¤Ç¤¢¤ë¡£
+\fISystem\&.err\fRã«å¯¾ã™ã‚‹å‡ºåŠ›ã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã•ã‚Œã‚‹ã€‚ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¯\fIjava\&.io\&.tmpdir\fRシステム・プロパティã§æŒ‡å®šã•ã‚Œã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª(通常ã¯\fI/var/tmp\fRã¾ãŸã¯\fI/tmp\fR)ã«ã‚る。ファイルåã®æŽ¥é ­è¾žã¯\fIrmid\-err\fRã§ã€æŽ¥å°¾è¾žã¯\fItmp\fRã§ã‚る。
 .RE
 .sp
 .RS 4
@@ -126,7 +126,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ï»ÈÍѤǤ­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢RMID¤Ï¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Æ½ªÎ»¤·¤Þ¤¹¡£
+\fI\-port\fRオプションã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã€RMIDã¯ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -137,17 +137,17 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI\-log\fR¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢RMID¤Ï¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Æ½ªÎ»¤·¤Þ¤¹¡£
+\fI\-log\fRオプションã¯å¿…須。ã“ã®ã‚ªãƒ—ションãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€RMIDã¯ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¦çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
-ɬÍפ˱þ¤¸¤Æ¥µ¡¼¥Ó¥¹¤ò³«»Ï¤¹¤ë¤è¤¦¤Ë¹½À®¤¹¤ëÊýË¡¤Î¾ÜºÙ¤Ï¡¢\fIinetd\fR
-(Oracle Solaris¤Î¾ì¹ç)¡¢¤Þ¤¿¤Ï\fIxinetd\fR
-(Linux)¤Î¥Þ¥Ë¥å¥¢¥ë¡¦¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+å¿…è¦ã«å¿œã˜ã¦ã‚µãƒ¼ãƒ“スを開始ã™ã‚‹ã‚ˆã†ã«æ§‹æˆã™ã‚‹æ–¹æ³•ã®è©³ç´°ã¯ã€\fIinetd\fR
+(Oracle Solarisã®å ´åˆ)ã€ã¾ãŸã¯\fIxinetd\fR
+(Linux)ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãƒ»ãƒšãƒ¼ã‚¸ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
-\-C\fI¥ª¥×¥·¥ç¥ó\fR
+\-C\fIオプション\fR
 .RS 4
-\fIrmid\fR¥³¥Þ¥ó¥É¤Î»Ò¥×¥í¥»¥¹(µ¯Æ°¥°¥ë¡¼¥×)¤¬ºîÀ®¤µ¤ì¤¿¤È¤­¤Ë¡¢¤½¤ì¤¾¤ì¤Î»Ò¥×¥í¥»¥¹¤Ë¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤È¤·¤ÆÅϤµ¤ì¤ë¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë»ØÄꤹ¤ë¤È¡¢µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤ë³Æ²¾ÁÛ¥Þ¥·¥ó¤Ë¥×¥í¥Ñ¥Æ¥£¤òÅϤ¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+\fIrmid\fRコマンドã®å­ãƒ—ロセス(起動グループ)ãŒä½œæˆã•ã‚ŒãŸã¨ãã«ã€ãã‚Œãžã‚Œã®å­ãƒ—ロセスã«ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³å¼•æ•°ã¨ã—ã¦æ¸¡ã•ã‚Œã‚‹ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã¨ã€èµ·å‹•ã‚·ã‚¹ãƒ†ãƒ ãƒ»ãƒ‡ãƒ¼ãƒ¢ãƒ³ã«ã‚ˆã£ã¦ç”Ÿæˆã•ã‚Œã‚‹å„仮想マシンã«ãƒ—ロパティを渡ã™ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .if n \{\
 .RE
 .\}
-¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤ò»Ò¥×¥í¥»¥¹¤ËÅϤ¹µ¡Ç½¤Ï¡¢¥Ç¥Ð¥Ã¥°¤ò¹Ô¤¦¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î»ÒJVM¤Çserver\-call¥í¥®¥ó¥°¤¬²Äǽ¤Ç¤¹¡£
+コマンドライン引数をå­ãƒ—ロセスã«æ¸¡ã™æ©Ÿèƒ½ã¯ã€ãƒ‡ãƒãƒƒã‚°ã‚’è¡Œã†å ´åˆã«ä¾¿åˆ©ã§ã™ã€‚ãŸã¨ãˆã°ã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã¯ã€ã™ã¹ã¦ã®å­JVMã§server\-callロギングãŒå¯èƒ½ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -173,7 +173,7 @@
 .PP
 \-J\fIoption\fR
 .RS 4
-RMID¤ò¼Â¹Ô¤·¤Æ¤¤¤ëJava¥¤¥ó¥¿¥×¥ê¥¿¤ËÅϤ¹¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬\fIrmid\&.policy\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë»ØÄꤹ¤ë¤Ë¤Ï¡¢\fIrmid\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fI\-J\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢\fIjava\&.security\&.policy\fR¥×¥í¥Ñ¥Æ¥£¤òÄêµÁ¤·¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+RMIDを実行ã—ã¦ã„ã‚‹Javaインタプリタã«æ¸¡ã™ã‚ªãƒ—ションを指定ã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fIrmid\fRコマンドãŒ\fIrmid\&.policy\fRã¨ã„ã†åå‰ã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã™ã‚‹ã«ã¯ã€\fIrmid\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fI\-J\fRオプションを使用ã—ã¦ã€\fIjava\&.security\&.policy\fRプロパティを定義ã—ã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -188,7 +188,7 @@
 .PP
 \-J\-Dsun\&.rmi\&.activation\&.execPolicy=\fIpolicy\fR
 .RS 4
-µ¯Æ°¥°¥ë¡¼¥×¤¬¼Â¹Ô¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ëJVM¤Îµ¯Æ°¤Ë»ÈÍѤ¹¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤¿¤á¤Ë¡¢RMID¤¬ºÎÍѤ¹¤ë¥Ý¥ê¥·¡¼¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢Java RMIµ¯Æ°¥Ç¡¼¥â¥ó¤ÎOracle¤Î¼ÂÁõ¤Î¤ß¤Ë¸ºß¤¹¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¤³¤Î¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢·ë²Ì¤Ï\fI\-J\-Dsun\&.rmi\&.activation\&.execPolicy=default\fR¤ò»ØÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£\fIpolicy\fR¤Ë»ØÄê²Äǽ¤ÊÃͤϡ¢\fIdefault\fR¡¢\fIpolicyClassName\fR¤Þ¤¿¤Ï\fInone\fR¤Ç¤¹¡£
+起動グループãŒå®Ÿè¡Œã•ã‚Œã‚‹ã“ã¨ã«ãªã‚‹JVMã®èµ·å‹•ã«ä½¿ç”¨ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションをãƒã‚§ãƒƒã‚¯ã™ã‚‹ãŸã‚ã«ã€RMIDãŒæŽ¡ç”¨ã™ã‚‹ãƒãƒªã‚·ãƒ¼ã‚’指定ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã¯ã€Java RMI起動デーモンã®Oracleã®å®Ÿè£…ã®ã¿ã«å­˜åœ¨ã™ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。コマンドラインã«ã“ã®ãƒ—ロパティを指定ã—ãªã„å ´åˆã€çµæžœã¯\fI\-J\-Dsun\&.rmi\&.activation\&.execPolicy=default\fRを指定ã—ãŸå ´åˆã¨åŒã˜ã«ãªã‚Šã¾ã™ã€‚\fIpolicy\fRã«æŒ‡å®šå¯èƒ½ãªå€¤ã¯ã€\fIdefault\fRã€\fIpolicyClassName\fRã¾ãŸã¯\fInone\fRã§ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -198,35 +198,35 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥Ç¥Õ¥©¥ë¥È
+デフォルト
 .sp
-\fIdefault\fR¤Þ¤¿¤Ï̤»ØÄêÃͤÎ\fIexecPolicy\fR¤Î¾ì¹ç¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤Ç¤­¤ë¤Î¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ç¡¢¼Â¹Ô¤¹¤ë¸¢¸Â¤¬\fIrmid\fR¤ËÍ¿¤¨¤é¤ì¤Æ¤¤¤ë¥³¥Þ¥ó¥É¤ª¤è¤Ó¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Î¤ß¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¼Â¹Ô¥Ý¥ê¥·¡¼¤Ç»ÈÍѤǤ­¤ë¤Î¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Îµ¯Æ°¥°¥ë¡¼¥×¼ÂÁõ¤Î¤ß¤Ç¤¹¡£
+\fIdefault\fRã¾ãŸã¯æœªæŒ‡å®šå€¤ã®\fIexecPolicy\fRã®å ´åˆã€\fIrmid\fRコマンドãŒå®Ÿè¡Œã§ãã‚‹ã®ã¯ã€\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¸­ã§ã€å®Ÿè¡Œã™ã‚‹æ¨©é™ãŒ\fIrmid\fRã«ä¸Žãˆã‚‰ã‚Œã¦ã„るコマンドãŠã‚ˆã³ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®ã¿ã§ã™ã€‚デフォルトã®å®Ÿè¡Œãƒãƒªã‚·ãƒ¼ã§ä½¿ç”¨ã§ãã‚‹ã®ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—実装ã®ã¿ã§ã™ã€‚
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×ÍѤÎJVM¤òµ¯Æ°¤¹¤ë¤È¤­¤Ë¡¢¤½¤Î¥°¥ë¡¼¥×¤Ë¤Ä¤¤¤ÆÅÐÏ¿¤µ¤ì¤¿µ¯Æ°¥°¥ë¡¼¥×µ­½Ò»Ò¤Ç¤¢¤ë\fIActivationGroupDesc\fRÆâ¤Î¾ðÊó¤ò»ÈÍѤ·¤Þ¤¹¡£¥°¥ë¡¼¥×µ­½Ò»Ò¤Ï¡¢\fIActivationGroupDesc\&.CommandEnvironment\fR¤ò»ØÄꤷ¤Þ¤¹(¾Êά²Äǽ)¡£¤³¤ì¤Ë¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¥³¥Þ¥ó¥É¤È¡¢¤½¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤ËÄɲäǤ­¤ë¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï\fIjava\&.home\fR¤Ë¤¢¤ë\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£¥°¥ë¡¼¥×µ­½Ò»Ò¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥ª¥×¥·¥ç¥ó¤È¤·¤ÆÄɲ䵤ì¤ë¥×¥í¥Ñ¥Æ¥£¡¦¥ª¡¼¥Ð¡¼¥é¥¤¥É¤â´Þ¤Þ¤ì¤Þ¤¹(\fI\-D<property>=<value>\fR¤È¤·¤ÆÄêµÁ¤µ¤ì¤Þ¤¹)¡£\fIcom\&.sun\&.rmi\&.rmid\&.ExecPermission\fR¸¢¸Â¤Ï\fIrmid\fR¥³¥Þ¥ó¥É¤Ë¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Ë¥°¥ë¡¼¥×µ­½Ò»Ò¤Î\fICommandEnvironment\fR¤Ç»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òÉÕÍ¿¤·¤Þ¤¹¡£\fIcom\&.sun\&.rmi\&.rmid\&.ExecOptionPermission\fR¸¢¸Â¤Ïµ¯Æ°¥°¥ë¡¼¥×¤Î³«»Ï»þ¤Ë¡¢¥°¥ë¡¼¥×µ­½Ò»Ò¤Ç¥×¥í¥Ñ¥Æ¥£¡¦¥ª¡¼¥Ð¡¼¥é¥¤¥É¤È¤·¤Æ¡¢¤Þ¤¿¤Ï\fICommandEnvironment\fR¤Ç¥ª¥×¥·¥ç¥ó¤È¤·¤Æ»ØÄꤵ¤ì¤¿¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Þ¤¹¡£\fIrmid\fR¥³¥Þ¥ó¥É¤ËÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òÉÕÍ¿¤¹¤ë¾ì¹ç¡¢¸¢¸Â\fIExecPermission\fR¤ª¤è¤Ó\fIExecOptionPermission\fR¤ò¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥½¡¼¥¹¤ËÉÕÍ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—用ã®JVMã‚’èµ·å‹•ã™ã‚‹ã¨ãã«ã€ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã«ã¤ã„ã¦ç™»éŒ²ã•ã‚ŒãŸèµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã§ã‚ã‚‹\fIActivationGroupDesc\fR内ã®æƒ…報を使用ã—ã¾ã™ã€‚グループ記述å­ã¯ã€\fIActivationGroupDesc\&.CommandEnvironment\fRを指定ã—ã¾ã™(çœç•¥å¯èƒ½)。ã“ã‚Œã«ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã¨ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«è¿½åŠ ã§ãるコマンドライン・オプションãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚デフォルトã§ã¯ã€\fIrmid\fRコマンドã¯\fIjava\&.home\fRã«ã‚ã‚‹\fIjava\fRコマンドを使用ã—ã¾ã™ã€‚グループ記述å­ã«ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚ªãƒ—ションã¨ã—ã¦è¿½åŠ ã•ã‚Œã‚‹ãƒ—ロパティ・オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã‚‚å«ã¾ã‚Œã¾ã™(\fI\-D<property>=<value>\fRã¨ã—ã¦å®šç¾©ã•ã‚Œã¾ã™)。\fIcom\&.sun\&.rmi\&.rmid\&.ExecPermission\fR権é™ã¯\fIrmid\fRコマンドã«ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã«ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã®\fICommandEnvironment\fRã§æŒ‡å®šã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹æ¨©é™ã‚’付与ã—ã¾ã™ã€‚\fIcom\&.sun\&.rmi\&.rmid\&.ExecOptionPermission\fR権é™ã¯èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ã®é–‹å§‹æ™‚ã«ã€ã‚°ãƒ«ãƒ¼ãƒ—記述å­ã§ãƒ—ロパティ・オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã¨ã—ã¦ã€ã¾ãŸã¯\fICommandEnvironment\fRã§ã‚ªãƒ—ションã¨ã—ã¦æŒ‡å®šã•ã‚ŒãŸã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションをã€\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¾ã™ã€‚\fIrmid\fRコマンドã«æ§˜ã€…ãªã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションを実行ã™ã‚‹æ¨©é™ã‚’付与ã™ã‚‹å ´åˆã€æ¨©é™\fIExecPermission\fRãŠã‚ˆã³\fIExecOptionPermission\fRã‚’ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ã‚½ãƒ¼ã‚¹ã«ä»˜ä¸Žã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
 \fBExecPermission\fR
 .sp
-\fIExecPermission\fR¥¯¥é¥¹¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤¬ÆÃÄê¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òɽ¤·¤Þ¤¹¡£
+\fIExecPermission\fRクラスã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã«\fIrmid\fRコマンドãŒç‰¹å®šã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹æ¨©é™ã‚’表ã—ã¾ã™ã€‚
 .sp
-\fB¹½Ê¸\fR:
-\fIExecPermission\fR¤Î̾Á°¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ë¼Â¹Ô¤òµö²Ä¤¹¤ë¥³¥Þ¥ó¥É¤Î¥Ñ¥¹Ì¾¤Ç¤¹¡£¥¹¥é¥Ã¥·¥å(/)¤ª¤è¤Ó¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ç½ª¤ï¤ë¥Ñ¥¹Ì¾¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£¥¹¥é¥Ã¥·¥å¤Ï¥Õ¥¡¥¤¥ë¶èÀÚ¤êʸ»ú\fIFile\&.separatorChar\fR¤Ç¤¹¡£¥¹¥é¥Ã¥·¥å(/)¤ª¤è¤Ó¥Þ¥¤¥Ê¥¹Éä¹æ(\-)¤Ç½ª¤ï¤ë¥Ñ¥¹Ì¾¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê(ºÆµ¢Åª¤Ë)¤ò¼¨¤·¤Þ¤¹¡£¥Ñ¥¹Ì¾¤ËÆÃÊ̤ʥȡ¼¥¯¥ó\fI<<ALL FILES>>\fR¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢Ç¤°Õ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£
+\fB構文\fR:
+\fIExecPermission\fRã®åå‰ã¯ã€\fIrmid\fRコマンドã«å®Ÿè¡Œã‚’許å¯ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã®ãƒ‘スåã§ã™ã€‚スラッシュ(/)ãŠã‚ˆã³ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)ã§çµ‚ã‚るパスåã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚スラッシュã¯ãƒ•ã‚¡ã‚¤ãƒ«åŒºåˆ‡ã‚Šæ–‡å­—\fIFile\&.separatorChar\fRã§ã™ã€‚スラッシュ(/)ãŠã‚ˆã³ãƒžã‚¤ãƒŠã‚¹ç¬¦å·(\-)ã§çµ‚ã‚るパスåã¯ã€ãã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚µãƒ–ディレクトリ(å†å¸°çš„ã«)を示ã—ã¾ã™ã€‚パスåã«ç‰¹åˆ¥ãªãƒˆãƒ¼ã‚¯ãƒ³\fI<<ALL FILES>>\fRを指定ã—ãŸå ´åˆã¯ã€ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚
 .sp
-¥Ñ¥¹Ì¾¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò¼¨¤·¤Þ¤¹¡£¥Ñ¥¹Ì¾¤Ë¥Þ¥¤¥Ê¥¹Éä¹æ(\-)¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤ª¤è¤Ó(ºÆµ¢Åª¤Ë)¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¨¤·¤Þ¤¹¡£
+パスåã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を指定ã—ãŸå ´åˆã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’示ã—ã¾ã™ã€‚パスåã«ãƒžã‚¤ãƒŠã‚¹ç¬¦å·(\-)を指定ã—ãŸå ´åˆã¯ã€ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªå†…ã®ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŠã‚ˆã³(å†å¸°çš„ã«)ç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å«ã¾ã‚Œã‚‹ã™ã¹ã¦ã®ãƒ•ã‚¡ã‚¤ãƒ«ã¨ã‚µãƒ–ディレクトリを示ã—ã¾ã™ã€‚
 .sp
 \fBExecOptionPermission\fR
 .sp
-\fIExecOptionPermission\fR¥¯¥é¥¹¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤È¤­¤Ë\fIrmid\fR¥³¥Þ¥ó¥É¤ÇÆÃÄê¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¸¢¸Â¤òɽ¤·¤Þ¤¹¡£\fIExecOptionPermission\fR¤Î̾Á°¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ÎÃͤǤ¹¡£
+\fIExecOptionPermission\fRクラスã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã¨ãã«\fIrmid\fRコマンドã§ç‰¹å®šã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションを使用ã§ãる権é™ã‚’表ã—ã¾ã™ã€‚\fIExecOptionPermission\fRã®åå‰ã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã®å€¤ã§ã™ã€‚
 .sp
-\fB¹½Ê¸\fR: ¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É¤¬¸ÂÄêŪ¤Ë¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯¤Ï¡¢¥ï¥¤¥ë¥É¥«¡¼¥É¡¦¥Þ¥Ã¥Á¤òɽ¤·¤Þ¤¹¡£¥¢¥¹¥¿¥ê¥¹¥¯(*)¤Ï¡¢¥ª¥×¥·¥ç¥ó̾¤½¤Î¤â¤Î¤È¤·¤Æ»ÈÍѤǤ­¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢Ç¤°Õ¤Î¥ª¥×¥·¥ç¥ó¤òɽ¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢¥ª¥×¥·¥ç¥ó̾¤ÎËöÈø¤Ë»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢¥É¥Ã¥È(\&.)¤«Åù¹æ(=)¤Îľ¸å¤Ë¥¢¥¹¥¿¥ê¥¹¥¯(*)¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+\fB構文\fR: オプションã§ã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ãŒé™å®šçš„ã«ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚アスタリスクã¯ã€ãƒ¯ã‚¤ãƒ«ãƒ‰ã‚«ãƒ¼ãƒ‰ãƒ»ãƒžãƒƒãƒã‚’表ã—ã¾ã™ã€‚アスタリスク(*)ã¯ã€ã‚ªãƒ—ションåãã®ã‚‚ã®ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚ã¤ã¾ã‚Šã€ä»»æ„ã®ã‚ªãƒ—ションを表ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€ã‚ªãƒ—ションåã®æœ«å°¾ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ãŸã ã—ã€ãƒ‰ãƒƒãƒˆ(\&.)ã‹ç­‰å·(=)ã®ç›´å¾Œã«ã‚¢ã‚¹ã‚¿ãƒªã‚¹ã‚¯(*)を指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-Îã:
-\fI*\fR¤ä\fI\-Dmydir\&.*\fR¤ä\fI\-Da\&.b\&.c=*\fR¤ÏÍ­¸ú¤Ç¤¹¤¬¡¢\fI*mydir\fR¤ä\fI\-Da*b\fR¤ä\fIab*\fR¤Ï̵¸ú¤Ç¤¹¡£
+例:
+\fI*\fRã‚„\fI\-Dmydir\&.*\fRã‚„\fI\-Da\&.b\&.c=*\fRã¯æœ‰åŠ¹ã§ã™ãŒã€\fI*mydir\fRã‚„\fI\-Da*b\fRã‚„\fIab*\fRã¯ç„¡åŠ¹ã§ã™ã€‚
 .sp
-\fBrmid¤Î¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë\fR
+\fBrmidã®ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«\fR
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤ËÍÍ¡¹¤Ê¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë¸¢¸Â¤òµö²Ä¤¹¤ë¾ì¹ç¤Ï¡¢¸¢¸Â\fIExecPermission\fR¤ª¤è¤Ó\fIExecOptionPermission\fR¤ò¤¹¤Ù¤Æ¤Î¥³¡¼¥É¡¦¥½¡¼¥¹¤ËÉÕÍ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(ÈÆÍÑŪ¤Ë)¡£¤³¤ì¤é¤Î¸¢¸Â¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤Î¤Ï\fIrmid\fR¥³¥Þ¥ó¥É¤Î¤ß¤Ê¤Î¤Ç¡¢¤³¤ì¤é¤Î¸¢¸Â¤òÈÆÍÑŪ¤ËÉÕÍ¿¤·¤Æ¤â°ÂÁ´¤Ç¤¹¡£
+\fIrmid\fRコマンドã«æ§˜ã€…ãªã‚³ãƒžãƒ³ãƒ‰ãŠã‚ˆã³ã‚ªãƒ—ションを実行ã™ã‚‹æ¨©é™ã‚’許å¯ã™ã‚‹å ´åˆã¯ã€æ¨©é™\fIExecPermission\fRãŠã‚ˆã³\fIExecOptionPermission\fRã‚’ã™ã¹ã¦ã®ã‚³ãƒ¼ãƒ‰ãƒ»ã‚½ãƒ¼ã‚¹ã«ä»˜ä¸Žã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™(汎用的ã«)。ã“れらã®æ¨©é™ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã®ã¯\fIrmid\fRコマンドã®ã¿ãªã®ã§ã€ã“れらã®æ¨©é™ã‚’汎用的ã«ä»˜ä¸Žã—ã¦ã‚‚安全ã§ã™ã€‚
 .sp
-\fIrmid\fR¥³¥Þ¥ó¥É¤Ë³Æ¼ï¤Î¼Â¹Ô¸¢¸Â¤òÉÕÍ¿¤¹¤ë¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ÎÎã¤ò¡¢¼¡¤Ë¼¨¤·¤Þ¤¹¡£
+\fIrmid\fRコマンドã«å„種ã®å®Ÿè¡Œæ¨©é™ã‚’付与ã™ã‚‹ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¾‹ã‚’ã€æ¬¡ã«ç¤ºã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -252,11 +252,11 @@
 .if n \{\
 .RE
 .\}
-ºÇ½é¤ËÉÕÍ¿¤µ¤ì¤Æ¤¤¤ë¸¢¸Â¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¡¢¥Ñ¥¹Ì¾¤Ë¤è¤êÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤ë\fIjava\fR¥³¥Þ¥ó¥É¤Î1\&.7\&.0¥ê¥ê¡¼¥¹¤Î¼Â¹Ô¤òµö²Ä¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIjava\&.home\fR¤Ë¤¢¤ë¥Ð¡¼¥¸¥ç¥ó¤Î\fIjava\fR¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£\fIrmid\fR¥³¥Þ¥ó¥É¤¬»ÈÍѤ¹¤ë¤Î¤ÈƱ¤¸¥Ð¡¼¥¸¥ç¥ó¤¬»ÈÍѤµ¤ì¤ë¤¿¤á¡¢¤½¤Î¥³¥Þ¥ó¥É¤Ï¡¢¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤Ç»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£2ÈÖÌܤθ¢¸Â¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢¥Ç¥£¥ì¥¯¥È¥ê\fI/files/apps/rmidcmds\fRÆâ¤ÎǤ°Õ¤Î¥³¥Þ¥ó¥É¤Î¼Â¹Ô¸¢¸Â¤òµö²Ä¤·¤Þ¤¹¡£
+最åˆã«ä»˜ä¸Žã•ã‚Œã¦ã„る権é™ã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã€ãƒ‘スåã«ã‚ˆã‚Šæ˜Žç¤ºçš„ã«æŒ‡å®šã•ã‚Œã‚‹\fIjava\fRコマンドã®1\&.7\&.0リリースã®å®Ÿè¡Œã‚’許å¯ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIjava\&.home\fRã«ã‚ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®\fIjava\fRコマンドを使用ã—ã¾ã™ã€‚\fIrmid\fRコマンドãŒä½¿ç”¨ã™ã‚‹ã®ã¨åŒã˜ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒä½¿ç”¨ã•ã‚Œã‚‹ãŸã‚ã€ãã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã€ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã§æŒ‡å®šã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。2番目ã®æ¨©é™ã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã¦ã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª\fI/files/apps/rmidcmds\fR内ã®ä»»æ„ã®ã‚³ãƒžãƒ³ãƒ‰ã®å®Ÿè¡Œæ¨©é™ã‚’許å¯ã—ã¾ã™ã€‚
 .sp
-3ÈÖÌܤËÉÕÍ¿¤µ¤ì¤Æ¤¤¤ë¸¢¸Â\fIExecOptionPermission\fR¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ËÂФ·¤Æ¡¢¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò\fI/files/policies/group\&.policy\fR¤È¤·¤ÆÄêµÁ¤·¤Æ¤¤¤ëµ¯Æ°¥°¥ë¡¼¥×¤Î³«»Ï¤òµö²Ä¤·¤Þ¤¹¡£¼¡¤Î¸¢¸Â¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤¬\fIjava\&.security\&.debug property\fR¤ò»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£ºÇ¸å¤Î¸¢¸Â¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤¬\fIsun\&.rmi property\fR̾¤Î³¬ÁØÆâ¤ÎǤ°Õ¤Î¥×¥í¥Ñ¥Æ¥£¤ò»ÈÍѤ¹¤ë¤³¤È¤òµö²Ä¤·¤Æ¤¤¤Þ¤¹¡£
+3番目ã«ä»˜ä¸Žã•ã‚Œã¦ã„る権é™\fIExecOptionPermission\fRã¯ã€\fIrmid\fRコマンドã«å¯¾ã—ã¦ã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’\fI/files/policies/group\&.policy\fRã¨ã—ã¦å®šç¾©ã—ã¦ã„る起動グループã®é–‹å§‹ã‚’許å¯ã—ã¾ã™ã€‚次ã®æ¨©é™ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ãŒ\fIjava\&.security\&.debug property\fRを使用ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¦ã„ã¾ã™ã€‚最後ã®æ¨©é™ã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ãŒ\fIsun\&.rmi property\fRåã®éšŽå±¤å†…ã®ä»»æ„ã®ãƒ—ロパティを使用ã™ã‚‹ã“ã¨ã‚’許å¯ã—ã¦ã„ã¾ã™ã€‚
 .sp
-¥Ý¥ê¥·¡¼¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Æ\fIrmid\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢\fIrmid\fR¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç\fIjava\&.security\&.policy\fR¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+ãƒãƒªã‚·ãƒ¼ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¦\fIrmid\fRコマンドを起動ã™ã‚‹ã«ã¯ã€\fIrmid\fRã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã§\fIjava\&.security\&.policy\fRプロパティを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 \fIrmid \-J\-Djava\&.security\&.policy=rmid\&.policy\fR\&.
 .RE
@@ -271,9 +271,9 @@
 .\}
 <policyClassName>
 .sp
-¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤Ç¤Ï½½Ê¬¤Ê½ÀÆðÀ­¤¬ÆÀ¤é¤ì¤Ê¤¤¾ì¹ç¡¢´ÉÍý¼Ô¤Ï¡¢\fIrmid\fR¤Îµ¯Æ°»þ¤Ë¡¢\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤¬½ê°¤¹¤ë¥¯¥é¥¹¤Î̾Á°¤ò»ØÄꤷ¤Æ¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+デフォルトã®å‹•ä½œã§ã¯å分ãªæŸ”軟性ãŒå¾—られãªã„å ´åˆã€ç®¡ç†è€…ã¯ã€\fIrmid\fRã®èµ·å‹•æ™‚ã«ã€\fIcheckExecCommand\fRメソッドãŒæ‰€å±žã™ã‚‹ã‚¯ãƒ©ã‚¹ã®åå‰ã‚’指定ã—ã¦ã€\fIrmid\fRコマンドãŒå®Ÿè¡Œã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
 .sp
-\fIpolicyClassName\fR¤Ë¤Ï¡¢°ú¿ô¤Ê¤·¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤ò»ý¤Á¡¢¼¡¤Î¤è¤¦¤Ê\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤ò¼ÂÁõ¤·¤Æ¤¤¤ëpublic¥¯¥é¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIpolicyClassName\fRã«ã¯ã€å¼•æ•°ãªã—ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’æŒã¡ã€æ¬¡ã®ã‚ˆã†ãª\fIcheckExecCommand\fRメソッドを実装ã—ã¦ã„ã‚‹publicクラスを指定ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -285,7 +285,7 @@
 .if n \{\
 .RE
 .\}
-µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ëÁ°¤Ë¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢¥Ý¥ê¥·¡¼¤Î\fIcheckExecCommand\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹¡£¤³¤Î¤È¤­¡¢µ¯Æ°¥°¥ë¡¼¥×¤Îµ­½Ò»Ò¤È¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¤¿¤á¤Î´°Á´¤Ê¥³¥Þ¥ó¥É¤ò´Þ¤àÇÛÎó¤ò¤½¤Î¥á¥½¥Ã¥É¤ËÅϤ·¤Þ¤¹¡£\fIcheckExecCommand\fR¤¬\fISecurityException\fR¤ò¥¹¥í¡¼¤¹¤ë¤È¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¤½¤Îµ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤»¤º¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Îµ¯Æ°¤ò»î¹Ô¤·¤Æ¤¤¤ë¸Æ½Ð¤·Â¦¤Ë¤Ï\fIActivationException\fR¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£
+起動グループを開始ã™ã‚‹å‰ã«ã€\fIrmid\fRコマンドã¯ã€ãƒãƒªã‚·ãƒ¼ã®\fIcheckExecCommand\fRメソッドを呼ã³å‡ºã—ã¾ã™ã€‚ã“ã®ã¨ãã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—ã®è¨˜è¿°å­ã¨ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ãŸã‚ã®å®Œå…¨ãªã‚³ãƒžãƒ³ãƒ‰ã‚’å«ã‚€é…列をãã®ãƒ¡ã‚½ãƒƒãƒ‰ã«æ¸¡ã—ã¾ã™ã€‚\fIcheckExecCommand\fRãŒ\fISecurityException\fRをスローã™ã‚‹ã¨ã€\fIrmid\fRコマンドã¯ãã®èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã›ãšã€ã‚ªãƒ–ジェクトã®èµ·å‹•ã‚’試行ã—ã¦ã„る呼出ã—å´ã«ã¯\fIActivationException\fRãŒã‚¹ãƒ­ãƒ¼ã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -298,18 +298,18 @@
 .\}
 none
 .sp
-\fIsun\&.rmi\&.activation\&.execPolicy\fR¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ¬\fInone\fR¤Î¾ì¹ç¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤Ï¡¢µ¯Æ°¥°¥ë¡¼¥×¤ò³«»Ï¤¹¤ë¥³¥Þ¥ó¥É¤ò¤Þ¤Ã¤¿¤¯¸¡¾Ú¤·¤Þ¤»¤ó¡£
+\fIsun\&.rmi\&.activation\&.execPolicy\fRプロパティã®å€¤ãŒ\fInone\fRã®å ´åˆã€\fIrmid\fRコマンドã¯ã€èµ·å‹•ã‚°ãƒ«ãƒ¼ãƒ—を開始ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’ã¾ã£ãŸã検証ã—ã¾ã›ã‚“。
 .RE
 .RE
 .PP
 \-log \fIdir\fR
 .RS 4
-µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤ª¤è¤Ó´ØÏ¢¾ðÊó¤ò½ñ¤­¹þ¤à¤Î¤Ë»ÈÍѤ¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fIrmid\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ë¡¢log¤È¤¤¤¦¥í¥°¡¦¥Ç¥£¥ì¥¯¥È¥ê¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
+起動システム・デーモンãŒãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãŠã‚ˆã³é–¢é€£æƒ…報を書ã込むã®ã«ä½¿ç”¨ã™ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®åå‰ã‚’指定ã—ã¾ã™ã€‚デフォルトã§ã¯ã€\fIrmid\fRコマンドを実行ã—ãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã€logã¨ã„ã†ãƒ­ã‚°ãƒ»ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒä½œæˆã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-port \fIport\fR
 .RS 4
-¥ì¥¸¥¹¥È¥ê¤¬»ÈÍѤ¹¤ë¥Ý¡¼¥È¤ò»ØÄꤷ¤Þ¤¹¡£µ¯Æ°¥·¥¹¥Æ¥à¡¦¥Ç¡¼¥â¥ó¤Ï¡¢¤³¤Î¥ì¥¸¥¹¥È¥ê¤ÎÃæ¤Ç¡¢\fIjava\&.rmi\&.activation\&.ActivationSystem\fR¤È¤¤¤¦Ì¾Á°¤Ç\fIActivationSystem\fR¤ò¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£¥í¡¼¥«¥ë¡¦¥Þ¥·¥ó¾å¤Î\fIActivationSystem\fR¤Ï¡¢¼¡¤Î¤è¤¦¤Ë\fINaming\&.lookup\fR¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ë¤è¤Ã¤Æ¼èÆÀ¤Ç¤­¤Þ¤¹¡£
+レジストリãŒä½¿ç”¨ã™ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã—ã¾ã™ã€‚起動システム・デーモンã¯ã€ã“ã®ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã®ä¸­ã§ã€\fIjava\&.rmi\&.activation\&.ActivationSystem\fRã¨ã„ã†åå‰ã§\fIActivationSystem\fRã‚’ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚ローカル・マシン上ã®\fIActivationSystem\fRã¯ã€æ¬¡ã®ã‚ˆã†ã«\fINaming\&.lookup\fRメソッドを呼ã³å‡ºã™ã“ã¨ã«ã‚ˆã£ã¦å–å¾—ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -328,16 +328,16 @@
 .PP
 \-stop
 .RS 4
-\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿¥Ý¡¼¥È¤Î¡¢¸½ºß¤Î\fIrmid\fR¥³¥Þ¥ó¥É¤Î¸Æ½Ð¤·¤òÄä»ß¤·¤Þ¤¹¡£¥Ý¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¥Ý¡¼¥È1098¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë\fIrmid\fR¤Î¸Æ½Ð¤·¤òÄä»ß¤·¤Þ¤¹¡£
+\fI\-port\fRオプションã«ã‚ˆã£ã¦æŒ‡å®šã•ã‚ŒãŸãƒãƒ¼ãƒˆã®ã€ç¾åœ¨ã®\fIrmid\fRコマンドã®å‘¼å‡ºã—ã‚’åœæ­¢ã—ã¾ã™ã€‚ãƒãƒ¼ãƒˆãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ションã¯ãƒãƒ¼ãƒˆ1098ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹\fIrmid\fRã®å‘¼å‡ºã—ã‚’åœæ­¢ã—ã¾ã™ã€‚
 .RE
-.SH "´Ä¶­ÊÑ¿ô"
+.SH "環境変数"
 .PP
 CLASSPATH
 .RS 4
-¥æ¡¼¥¶¡¼ÄêµÁ¥¯¥é¥¹¤Ø¤Î¥Ñ¥¹¤ò¥·¥¹¥Æ¥à¤Ë»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤Þ¤¹¡£Îã:
+ユーザー定義クラスã¸ã®ãƒ‘スをシステムã«æŒ‡å®šã—ã¾ã™ã€‚ディレクトリã¯ã‚³ãƒ­ãƒ³ã§åŒºåˆ‡ã‚‰ã‚Œã¾ã™ã€‚例:
 \fI\&.:/usr/local/java/classes\fR
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/rmiregistry.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmiregistry.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: rmiregistry
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "rmiregistry" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "rmiregistry" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-rmiregistry \- ¸½ºß¤Î¥Û¥¹¥È¤Î»ØÄꤷ¤¿¥Ý¡¼¥È¾å¤Ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤ò³«»Ï¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+rmiregistry \- ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆã®æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆä¸Šã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト・レジストリを開始ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,11 +64,11 @@
 .PP
 \fIport\fR
 .RS 4
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤ò³«»Ï¤¹¤ë¸½ºß¤Î¥Û¥¹¥È¾å¤Î\fIport\fR¤Î¿ô¡£
+リモート・オブジェクト・レジストリを開始ã™ã‚‹ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆä¸Šã®\fIport\fRã®æ•°ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIrmiregistry\fR¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥Û¥¹¥È¤Î»ØÄꤷ¤¿¥Ý¡¼¥È¾å¤Ë¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤òºîÀ®¤·¡¢³«»Ï¤·¤Þ¤¹¡£port¤Î»ØÄê¤ò¾Êά¤·¤¿¾ì¹ç¡¢¥ì¥¸¥¹¥È¥ê¤Ï¥Ý¡¼¥È1099¤Ç³«»Ï¤·¤Þ¤¹¡£\fIrmiregistry\fR¥³¥Þ¥ó¥É¤Ë¡¢½ÐÎϵ¡Ç½¤Ï¤¢¤ê¤Þ¤»¤ó¡£Ä̾¤³¤ì¤Ï¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£
+\fIrmiregistry\fRコマンドã¯ã€ç¾åœ¨ã®ãƒ›ã‚¹ãƒˆã®æŒ‡å®šã—ãŸãƒãƒ¼ãƒˆä¸Šã«ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクト・レジストリを作æˆã—ã€é–‹å§‹ã—ã¾ã™ã€‚portã®æŒ‡å®šã‚’çœç•¥ã—ãŸå ´åˆã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã¯ãƒãƒ¼ãƒˆ1099ã§é–‹å§‹ã—ã¾ã™ã€‚\fIrmiregistry\fRコマンドã«ã€å‡ºåŠ›æ©Ÿèƒ½ã¯ã‚ã‚Šã¾ã›ã‚“。通常ã€ã“ã‚Œã¯ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -80,20 +80,20 @@
 .RE
 .\}
 .PP
-¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥ì¥¸¥¹¥È¥ê¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤¹¡£Æ±°ì¥Û¥¹¥È¤ÎRMI¥µ¡¼¥Ð¡¼¤¬¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò̾Á°¤Ë¥Ð¥¤¥ó¥É¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£¼¡¤Ë¡¢¥í¡¼¥«¥ë¤ª¤è¤Ó¥ê¥â¡¼¥È¡¦¥Û¥¹¥È¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¸¡º÷¤·¡¢¥ê¥â¡¼¥È¡¦¥á¥½¥Ã¥É¤Î¸Æ½Ð¤·¤ò¹Ô¤¤¤Þ¤¹¡£
+リモート・オブジェクト・レジストリã¯ã€ãƒ–ートストラップã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã™ã€‚åŒä¸€ãƒ›ã‚¹ãƒˆã®RMIサーãƒãƒ¼ãŒã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをåå‰ã«ãƒã‚¤ãƒ³ãƒ‰ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚次ã«ã€ãƒ­ãƒ¼ã‚«ãƒ«ãŠã‚ˆã³ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ›ã‚¹ãƒˆã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトを検索ã—ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã®å‘¼å‡ºã—ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
-¥ì¥¸¥¹¥È¥ê¤Ï¡¢°ìÈÌŪ¤Ë¡¢ºÇ½é¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃÖ¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤³¤Ç¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£¤½¤Î¸å¡¢¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó»ØÄê¤Î¥µ¥Ý¡¼¥È¤òÄ󶡤·¡¢Â¾¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òõ¤·¤Þ¤¹¡£
+レジストリã¯ã€ä¸€èˆ¬çš„ã«ã€æœ€åˆã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®ä½ç½®ã‚’指定ã—ã¾ã™ã€‚ãã“ã§ã€ã‚¢ãƒ—リケーションã¯ãƒ¡ã‚½ãƒƒãƒ‰ã‚’呼ã³å‡ºã™å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã®å¾Œã€ãã®ã‚ªãƒ–ジェクトã¯ã‚¢ãƒ—リケーション指定ã®ã‚µãƒãƒ¼ãƒˆã‚’æä¾›ã—ã€ä»–ã®ã‚ªãƒ–ジェクトを探ã—ã¾ã™ã€‚
 .PP
-\fIjava\&.rmi\&.registry\&.LocateRegistry\fR¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤Ï¡¢¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¡¢¤Þ¤¿¤Ï¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤È¥Ý¡¼¥È¤ÇÆ°ºî¤¹¤ë¥ì¥¸¥¹¥È¥ê¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£
+\fIjava\&.rmi\&.registry\&.LocateRegistry\fRクラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã€ã¾ãŸã¯ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã¨ãƒãƒ¼ãƒˆã§å‹•ä½œã™ã‚‹ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã‚’å–å¾—ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚
 .PP
-\fIjava\&.rmi\&.Naming\fR¥¯¥é¥¹¤ÎURL¥Ù¡¼¥¹¡¦¥á¥½¥Ã¥É¤Ï¥ì¥¸¥¹¥È¥ê¤ËÂФ·¤ÆÁàºî¤ò¼Â¹Ô¤·¡¢Ç¤°Õ¤Î¥Û¥¹¥È¤ª¤è¤Ó¥í¡¼¥«¥ë¡¦¥Û¥¹¥È¤Ç¤Î¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¸¡º÷¤Ë»ÈÍѤǤ­¤Þ¤¹¡£Ã±½ã̾(ʸ»úÎó)¤ò¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Ð¥¤¥ó¥É¤·¡¢¿·¤·¤¤Ì¾Á°¤ò¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËºÆ¥Ð¥¤¥ó¥É¤·(¸Å¤¤¥Ð¥¤¥ó¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É)¡¢¥ê¥â¡¼¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥ó¥Ð¥¤¥ó¥É¤·¡¢¥ì¥¸¥¹¥È¥ê¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Æ¤¤¤ëURL¤ò¥ê¥¹¥Èɽ¼¨¤·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIjava\&.rmi\&.Naming\fRクラスã®URLベース・メソッドã¯ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã«å¯¾ã—ã¦æ“作を実行ã—ã€ä»»æ„ã®ãƒ›ã‚¹ãƒˆãŠã‚ˆã³ãƒ­ãƒ¼ã‚«ãƒ«ãƒ»ãƒ›ã‚¹ãƒˆã§ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトã®æ¤œç´¢ã«ä½¿ç”¨ã§ãã¾ã™ã€‚å˜ç´”å(文字列)をリモート・オブジェクトã«ãƒã‚¤ãƒ³ãƒ‰ã—ã€æ–°ã—ã„åå‰ã‚’リモート・オブジェクトã«å†ãƒã‚¤ãƒ³ãƒ‰ã—(å¤ã„ãƒã‚¤ãƒ³ãƒ‰ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰)ã€ãƒªãƒ¢ãƒ¼ãƒˆãƒ»ã‚ªãƒ–ジェクトをアンãƒã‚¤ãƒ³ãƒ‰ã—ã€ãƒ¬ã‚¸ã‚¹ãƒˆãƒªã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œã¦ã„ã‚‹URLをリスト表示ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-J
 .RS 4
-Java¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢\fI\-J\fR¤Î¸å¤í¤Ë³¤¯¥ª¥×¥·¥ç¥ó¤òJava¥¤¥ó¥¿¥×¥ê¥¿¤Ë°ú¤­ÅϤ·¤Þ¤¹(\fI\-J\fR¤È¥ª¥×¥·¥ç¥ó¤Î´Ö¤Ë¥¹¥Ú¡¼¥¹¤ÏÆþ¤ì¤Þ¤»¤ó)¡£
+Javaオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€\fI\-J\fRã®å¾Œã‚ã«ç¶šãオプションをJavaインタプリタã«å¼•ã渡ã—ã¾ã™(\fI\-J\fRã¨ã‚ªãƒ—ションã®é–“ã«ã‚¹ãƒšãƒ¼ã‚¹ã¯å…¥ã‚Œã¾ã›ã‚“)。
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -114,7 +114,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI¡Öjava\&.rmi\&.registry\&.LocateRegistry¡×\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/registry/LocateRegistry\&.html)
+\fI「java\&.rmi\&.registry\&.LocateRegistryã€\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/registry/LocateRegistry\&.html)
 .RE
 .sp
 .RS 4
@@ -125,7 +125,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fI¡Öjava\&.rmi\&.Naming class description¡×\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/Naming\&.html)
+\fI「java\&.rmi\&.Naming class descriptionã€\fR(http://docs\&.oracle\&.com/javase/8/docs/api/java/rmi/Naming\&.html)
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/schemagen.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/schemagen.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: schemagen
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "schemagen" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "schemagen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-schemagen \- Java¥¯¥é¥¹Æâ¤Ç»²¾È¤µ¤ì¤Æ¤¤¤ë¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤´¤È¤Ë¥¹¥­¡¼¥Þ¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+schemagen \- Javaクラス内ã§å‚ç…§ã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã”ã¨ã«ã‚¹ã‚­ãƒ¼ãƒžã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,19 +64,19 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIjava\-files\fR
 .RS 4
-½èÍý¤¹¤ëJava¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¡£
+処ç†ã™ã‚‹Javaクラス・ファイル。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤Ï¡¢Java¥¯¥é¥¹Æâ¤Ç»²¾È¤µ¤ì¤Æ¤¤¤ë¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤´¤È¤Ë1¤Ä¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¸½ºß¡¢À¸À®¤µ¤ì¤ë¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Î̾Á°¤ÏÀ©¸æ¤Ç¤­¤Þ¤»¤ó¡£¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë̾¤òÀ©¸æ¤¹¤ë¾ì¹ç¤Ï¡¢http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/schemagenTask\&.html¤Ë¤¢¤ë
-¡ÖUsing SchemaGen with Ant¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+スキーマ・ジェãƒãƒ¬ãƒ¼ã‚¿ã¯ã€Javaクラス内ã§å‚ç…§ã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã”ã¨ã«1ã¤ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’作æˆã—ã¾ã™ã€‚ç¾åœ¨ã€ç”Ÿæˆã•ã‚Œã‚‹ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®åå‰ã¯åˆ¶å¾¡ã§ãã¾ã›ã‚“。スキーマ・ファイルåを制御ã™ã‚‹å ´åˆã¯ã€http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/schemagenTask\&.htmlã«ã‚ã‚‹
+「Using SchemaGen with Antã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Îbin¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ëŬÀÚ¤Ê\fIschemagen\fR¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤ò»ÈÍѤ·¤Æ¡¢¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤òµ¯Æ°¤·¤Þ¤¹¡£¸½ºß¤Î¥¹¥­¡¼¥Þ¡¦¥¸¥§¥Í¥ì¡¼¥¿¤Ï¡¢Java¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤È¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¤¤¤º¤ì¤â½èÍý¤Ç¤­¤Þ¤¹¡£
+プラットフォームã®binディレクトリã«ã‚ã‚‹é©åˆ‡ãª\fIschemagen\fRシェル・スクリプトを使用ã—ã¦ã€ã‚¹ã‚­ãƒ¼ãƒžãƒ»ã‚¸ã‚§ãƒãƒ¬ãƒ¼ã‚¿ã‚’èµ·å‹•ã—ã¾ã™ã€‚ç¾åœ¨ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ã‚¸ã‚§ãƒãƒ¬ãƒ¼ã‚¿ã¯ã€Javaソース・ファイルã¨ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®ã„ãšã‚Œã‚‚処ç†ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,44 +89,44 @@
 .RE
 .\}
 .PP
-java¥Õ¥¡¥¤¥ë¤¬Â¾¤Î¥¯¥é¥¹¤ò»²¾È¤·¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤ì¤é¤Î¥¯¥é¥¹¤Ë¥·¥¹¥Æ¥à\fICLASSPATH\fR´Ä¶­ÊÑ¿ô¤Ç¥¢¥¯¥»¥¹¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¤Ï¡¢¥¯¥é¥¹¡¦¥Ñ¥¹¡¦¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ\fIschemagen\fR¥³¥Þ¥ó¥É¡¦¥é¥¤¥ó¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¡¢¤Þ¤¿¤Ï»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¹¥­¡¼¥Þ¤ÎÀ¸À®»þ¤Ë¥¨¥é¡¼¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+javaファイルãŒä»–ã®ã‚¯ãƒ©ã‚¹ã‚’å‚ç…§ã—ã¦ã„ã‚‹å ´åˆã€ãれらã®ã‚¯ãƒ©ã‚¹ã«ã‚·ã‚¹ãƒ†ãƒ \fICLASSPATH\fR環境変数ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã¯ã€ã‚¯ãƒ©ã‚¹ãƒ»ãƒ‘ス・オプションを指定ã—ã¦\fIschemagen\fRコマンド・ラインã§æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚オプションをå‚ç…§ã—ã¦ãã ã•ã„。å‚ç…§ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªã„ã€ã¾ãŸã¯å‚ç…§ã•ã‚Œã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¹ã‚­ãƒ¼ãƒžã®ç”Ÿæˆæ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-d \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥×¥í¥»¥Ã¥µÀ¸À®¤ª¤è¤Ó\fIjavac\fRÀ¸À®¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ—ロセッサ生æˆãŠã‚ˆã³\fIjavac\fR生æˆã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼»ØÄê¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼æŒ‡å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-classpath \fIpath\fR
 .RS 4
-\fIschemagen\fR¥³¥Þ¥ó¥É¤¬¥æ¡¼¥¶¡¼»ØÄê¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¡£
+\fIschemagen\fRコマンドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼æŒ‡å®šãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-encoding \fIencoding\fR
 .RS 4
-\fIapt\fR¤Þ¤¿¤Ï\fIjavac\fR¥³¥Þ¥ó¥É¤Î¸Æ½Ð¤·¤Ë»ÈÍѤ¹¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIapt\fRã¾ãŸã¯\fIjavac\fRコマンドã®å‘¼å‡ºã—ã«ä½¿ç”¨ã™ã‚‹ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-episode \fIfile\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë¥¨¥Ô¥½¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイルã”ã¨ã«ã‚¨ãƒ”ソード・ファイルを生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+リリース情報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+ヘルプ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/serialver.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/serialver.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: serialver
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Remote Method Invocation (RMI)¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Remote Method Invocation (RMI)ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "serialver" "1" "2013ǯ11·î21Æü" "JDK 8" "Remote Method Invocation (RMI)"
+.TH "serialver" "1" "2013年11月21日" "JDK 8" "Remote Method Invocation (RMI)"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-serialver \- »ØÄꤷ¤¿¥¯¥é¥¹¤Î¥·¥ê¥¢¥ë¡¦¥Ð¡¼¥¸¥ç¥óUID¤òÌᤷ¤Þ¤¹¡£
-.SH "³µÍ×"
+serialver \- 指定ã—ãŸã‚¯ãƒ©ã‚¹ã®ã‚·ãƒªã‚¢ãƒ«ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³UIDを戻ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,35 +64,35 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIclassnames\fR
 .RS 4
-\fIserialVersionUID\fR¤òÌ᤹¥¯¥é¥¹¤Ç¤¹¡£
+\fIserialVersionUID\fRを戻ã™ã‚¯ãƒ©ã‚¹ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIserialver\fR¥³¥Þ¥ó¥É¤Ï¡¢1¤Ä°Ê¾å¤Î¥¯¥é¥¹¤Î\fIserialVersionUID\fR¤ò¡¢Å¸³«¤·¤Æ¤¤¤ë¥¯¥é¥¹¤Ø¥³¥Ô¡¼¤¹¤ë¤Î¤ËŬ¤·¤¿·Á¼°¤ÇÊÖ¤·¤Þ¤¹¡£°ú¿ô¤Ê¤·¤Ç¸Æ¤Ó½Ð¤µ¤ì¤¿¾ì¹ç¡¢\fIserialver\fR¥³¥Þ¥ó¥É¤Ï»ÈÍÑΨ¹Ô¤ò½ÐÎϤ·¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIserialver\fRコマンドã¯ã€1ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã®\fIserialVersionUID\fRã‚’ã€å±•é–‹ã—ã¦ã„るクラスã¸ã‚³ãƒ”ーã™ã‚‹ã®ã«é©ã—ãŸå½¢å¼ã§è¿”ã—ã¾ã™ã€‚引数ãªã—ã§å‘¼ã³å‡ºã•ã‚ŒãŸå ´åˆã€\fIserialver\fRコマンドã¯ä½¿ç”¨çŽ‡è¡Œã‚’出力ã—ã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-classpath \fIpath\-files\fR
 .RS 4
-¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¤ª¤è¤Ó¥ê¥½¡¼¥¹¤Î¸¡º÷¥Ñ¥¹¤òÀßÄꤷ¤Þ¤¹¡£¥¯¥é¥¹¤È¥ê¥½¡¼¥¹¤ò¥³¥í¥ó(:)¤Ç¶èÀÚ¤ê¤Þ¤¹¡£
+アプリケーションã®ã‚¯ãƒ©ã‚¹ãŠã‚ˆã³ãƒªã‚½ãƒ¼ã‚¹ã®æ¤œç´¢ãƒ‘スを設定ã—ã¾ã™ã€‚クラスã¨ãƒªã‚½ãƒ¼ã‚¹ã‚’コロン(:)ã§åŒºåˆ‡ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-show
 .RS 4
-´Êñ¤Ê¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òɽ¼¨¤·¤Þ¤¹¡£´°Á´»ØÄê¤Î¥¯¥é¥¹Ì¾¤òÆþÎϤ·¤Æ¡¢Enter¥­¡¼¤«¡Öɽ¼¨¡×¥Ü¥¿¥ó¤ò²¡¤·¡¢\fIserialVersionUID\fR¤òɽ¼¨¤·¤Þ¤¹¡£
+ç°¡å˜ãªãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’表示ã—ã¾ã™ã€‚完全指定ã®ã‚¯ãƒ©ã‚¹åを入力ã—ã¦ã€Enterキーã‹ã€Œè¡¨ç¤ºã€ãƒœã‚¿ãƒ³ã‚’押ã—ã€\fIserialVersionUID\fRを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£option¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚optionã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-\fIserialver\fR¥³¥Þ¥ó¥É¤Ï¡¢»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤ò¤½¤Î²¾ÁÛ¥Þ¥·¥óÆâ¤ËÆɤ߹þ¤ó¤Ç½é´ü²½¤·¤Þ¤¹¤¬¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤ÎÀßÄê¤Ï¹Ô¤¤¤Þ¤»¤ó¡£¿®Íê¤Ç¤­¤Ê¤¤¥¯¥é¥¹¤È¤È¤â¤Ë\fIserialver\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥»¥­¥å¥ê¥Æ¥£¡¦¥Þ¥Í¡¼¥¸¥ã¤òÀßÄê¤Ç¤­¤Þ¤¹¡£
+\fIserialver\fRコマンドã¯ã€æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹ã‚’ãã®ä»®æƒ³ãƒžã‚·ãƒ³å†…ã«èª­ã¿è¾¼ã‚“ã§åˆæœŸåŒ–ã—ã¾ã™ãŒã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã®è¨­å®šã¯è¡Œã„ã¾ã›ã‚“。信頼ã§ããªã„クラスã¨ã¨ã‚‚ã«\fIserialver\fRコマンドを実行ã™ã‚‹å ´åˆã«ã¯ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¦ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’設定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -104,7 +104,7 @@
 .RE
 .\}
 .PP
-ɬÍפǤ¢¤ì¤Ð¡¢¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥»¥­¥å¥ê¥Æ¥£¡¦¥Ý¥ê¥·¡¼¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+å¿…è¦ã§ã‚ã‚Œã°ã€æ¬¡ã®ã‚ªãƒ—ションを使用ã—ã¦ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ãƒ»ãƒãƒªã‚·ãƒ¼ã‚’指定ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -115,7 +115,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -136,8 +136,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://docs\&.oracle\&.com/javase/8/docs/api/java/io/ObjectStreamClass\&.html¤Ë¤¢¤ë
-\fIjava\&.io\&.ObjectStream\fR¥¯¥é¥¹µ­½Ò
+http://docs\&.oracle\&.com/javase/8/docs/api/java/io/ObjectStreamClass\&.htmlã«ã‚ã‚‹
+\fIjava\&.io\&.ObjectStream\fRクラス記述
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/servertool.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/servertool.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: servertool
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "servertool" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "servertool" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-servertool \- ³«È¯¼Ô¤¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¡¢Ää»ß¤¹¤ë¤¿¤á¤Î»È¤¤¤ä¤¹¤¤¥æ¡¼¥¶¡¼¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£
-.SH "³µÍ×"
+servertool \- 開発者ãŒæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ã€åœæ­¢ã™ã‚‹ãŸã‚ã®ä½¿ã„ã‚„ã™ã„ユーザー・インタフェースをæä¾›ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,35 +64,35 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 commands
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¡£¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・コマンド。コマンドをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIservertool\fR\fIservertool >\fR\fIservertool >\fR
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¤Ï¡¢³«È¯¼Ô¤¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¡¢ÅÐÏ¿²ò½ü¡¢µ¯Æ°¡¢Ää»ß¤¹¤ë¤¿¤á¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¤È¡¢¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ëÍÍ¡¹¤ÊÅý·×¾ðÊó¤ò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+\fIservertool\fRコマンドã¯ã€é–‹ç™ºè€…ãŒæ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã€ç™»éŒ²è§£é™¤ã€èµ·å‹•ã€åœæ­¢ã™ã‚‹ãŸã‚ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚コマンドライン・コマンドを使用ã™ã‚‹ã¨ã€ã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æ§˜ã€…ãªçµ±è¨ˆæƒ…報をå–å¾—ã§ãã¾ã™ã€‚コマンドをå‚ç…§ã—ã¦ãã ã•ã„。
+.SH "オプション"
 .PP
 \-ORBInitialHost \fInameserverhost\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤Ïɬ¿Ü¤Ç¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¡¢Ãå¿®¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤¹¤ë¥Û¥¹¥È¡¦¥Þ¥·¥ó¤ò»ØÄꤷ¤Þ¤¹¡£\fInameserverhost\fRÃͤϡ¢\fIorb\fR¤¬¼Â¹Ô¤µ¤ì¡¢¥ê¥¯¥¨¥¹¥È¤ò¥ê¥¹¥Ë¥ó¥°¤·¤Æ¤¤¤ë¥Ý¡¼¥È¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢Ãͤϥǥե©¥ë¥È¤Ç\fIlocalhost\fR¤ËÀßÄꤵ¤ì¤Þ¤¹¡£\fIorbd\fR¤È\fIservertool\fR¤¬°Û¤Ê¤ë¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIorbd\fR¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Û¥¹¥È¤Î̾Á°¤Þ¤¿¤ÏIP¥¢¥É¥ì¥¹¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションã¯å¿…é ˆã§ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã€ç€ä¿¡ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã™ã‚‹ãƒ›ã‚¹ãƒˆãƒ»ãƒžã‚·ãƒ³ã‚’指定ã—ã¾ã™ã€‚\fInameserverhost\fR値ã¯ã€\fIorb\fRãŒå®Ÿè¡Œã•ã‚Œã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’リスニングã—ã¦ã„ã‚‹ãƒãƒ¼ãƒˆã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを指定ã—ãªã„å ´åˆã€å€¤ã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§\fIlocalhost\fRã«è¨­å®šã•ã‚Œã¾ã™ã€‚\fIorbd\fRã¨\fIservertool\fRãŒç•°ãªã‚‹ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIorbd\fRãŒå®Ÿè¡Œã•ã‚Œã¦ã„るホストã®åå‰ã¾ãŸã¯IPアドレスを指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
 .sp
-\fBÃí°Õ:\fR
-Oracle Solaris¤Ç¤Ï¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¾å¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¤Ë¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fInameserverport\fRÃͤˤϡ¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£
+\fB注æ„:\fR
+Oracle Solarisã§ã¯ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆä¸Šã§ãƒ—ロセスを開始ã™ã‚‹ã«ã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fInameserverport\fR値ã«ã¯ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥³¥Þ¥ó¥É"
+.SH "コマンド"
 .PP
-\fIservertool\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¡¢¤Þ¤¿¤Ï»ÈÍѤ»¤º¤Ëµ¯Æ°¤Ç¤­¤Þ¤¹¡£
+\fIservertool\fRコマンドã¯ã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã¦ã€ã¾ãŸã¯ä½¿ç”¨ã›ãšã«èµ·å‹•ã§ãã¾ã™ã€‚
 .sp
 .RS 4
 .ie n \{\
@@ -102,8 +102,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIservertool\fR¤Îµ¯Æ°»þ¤Ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥Ä¡¼¥ë¤Ë¥³¥Þ¥ó¥ÉÆþÎϤòµá¤á¤ë\fIservertool\fR¥×¥í¥ó¥×¥È¤¬É½¼¨¤µ¤ì¤Þ¤¹:
-\fIservertool >\fR¡£
+\fIservertool\fRã®èµ·å‹•æ™‚ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ãªã‹ã£ãŸå ´åˆã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ãƒ„ールã«ã‚³ãƒžãƒ³ãƒ‰å…¥åŠ›ã‚’求ã‚ã‚‹\fIservertool\fRプロンプトãŒè¡¨ç¤ºã•ã‚Œã¾ã™:
+\fIservertool >\fR。
 .RE
 .sp
 .RS 4
@@ -114,75 +114,75 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-\fIservertool\fR¤Îµ¯Æ°»þ¤Ë¥³¥Þ¥ó¥É¤ò»ØÄꤷ¤¿¾ì¹ç¡¢Java IDL Server Tool¤¬µ¯Æ°¤·¤Æ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¢½ªÎ»¤·¤Þ¤¹¡£
+\fIservertool\fRã®èµ·å‹•æ™‚ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’指定ã—ãŸå ´åˆã€Java IDL Server ToolãŒèµ·å‹•ã—ã¦ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã—ã€çµ‚了ã—ã¾ã™ã€‚
 .RE
 .PP
 register \-server \fIserver\-class\-name\fR \-classpath \fIclasspath\-to\-server\fR [ \-applicationName \fIapplication\-name\fR \-args \fIargs\-to\-server\fR \-vmargs \fIflags\-for\-JVM\fR ]
 .RS 4
-Object Request Broker Daemon (ORBD)¤Ë¿·µ¬±Ê³¥µ¡¼¥Ð¡¼¤òÅÐÏ¿¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬Ì¤ÅÐÏ¿¤Î¾ì¹ç¡¢ÅÐÏ¿¤·¤Æ¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fI\-server\fR¥ª¥×¥·¥ç¥ó¤Ç¼±Ê̤µ¤ì¤ë¥µ¡¼¥Ð¡¼¤Î\fI¥á¥¤¥ó\fR¡¦¥¯¥é¥¹Æâ¤Ç¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£¤³¤Î¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤Ï¡¢\fIpublic static void install(org\&.omg\&.CORBA\&.ORB)\fR¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ê¡¢³«È¯¼Ô¤Ï¥Ç¡¼¥¿¥Ù¡¼¥¹¡¦¥¹¥­¡¼¥Þ¤ÎºîÀ®¤Ê¤ÉÆȼ«¤Î¥µ¡¼¥Ð¡¼¡¦¥¤¥ó¥¹¥È¡¼¥ëÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+Object Request Broker Daemon (ORBD)ã«æ–°è¦æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã‚’登録ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒæœªç™»éŒ²ã®å ´åˆã€ç™»éŒ²ã—ã¦ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fI\-server\fRオプションã§è­˜åˆ¥ã•ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ã®\fIメイン\fR・クラス内ã§ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ã¯ã€\fIpublic static void install(org\&.omg\&.CORBA\&.ORB)\fRã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚インストール・メソッドã¯ã‚ªãƒ—ションã§ã‚ã‚Šã€é–‹ç™ºè€…ã¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ»ã‚¹ã‚­ãƒ¼ãƒžã®ä½œæˆãªã©ç‹¬è‡ªã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 unregister \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR
 .RS 4
-¥µ¡¼¥Ð¡¼ID¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó̾¤Ç¡¢¥µ¡¼¥Ð¡¼¤òORBD¤«¤éÅÐÏ¿²ò½ü¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¡¢\fI\-server\fR¥ª¥×¥·¥ç¥ó¤Ç¼±Ê̤µ¤ì¤ë¥µ¡¼¥Ð¡¼¤Î\fI¥á¥¤¥ó\fR¡¦¥¯¥é¥¹Æâ¤Ç¥¢¥ó¥¤¥ó¥¹¥È¡¼¥ë¡¦¥á¥½¥Ã¥É¤¬¸Æ¤Ó½Ð¤µ¤ì¤Þ¤¹¡£
-\fIuninstall\fR¥á¥½¥Ã¥É¤Ï¡¢\fIpublic static void uninstall(org\&.omg\&.CORBA\&.ORB)\fR¤Ë¤Ê¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£\fIuninstall\fR¥á¥½¥Ã¥É¤Ï¥ª¥×¥·¥ç¥ó¤Ç¤¢¤ê¡¢³«È¯¼Ô¤Ï\fIinstall\fR¥á¥½¥Ã¥É¤ÎÆ°ºî¤Î¼è¾Ã¤Ê¤É¡¢Æȼ«¤Î¥µ¡¼¥Ð¡¼¡¦¥¢¥ó¥¤¥ó¥¹¥È¡¼¥ëÆ°ºî¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
+サーãƒãƒ¼IDã¾ãŸã¯ã‚¢ãƒ—リケーションåã§ã€ã‚µãƒ¼ãƒãƒ¼ã‚’ORBDã‹ã‚‰ç™»éŒ²è§£é™¤ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã«ã‚ˆã£ã¦ã€\fI\-server\fRオプションã§è­˜åˆ¥ã•ã‚Œã‚‹ã‚µãƒ¼ãƒãƒ¼ã®\fIメイン\fR・クラス内ã§ã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ»ãƒ¡ã‚½ãƒƒãƒ‰ãŒå‘¼ã³å‡ºã•ã‚Œã¾ã™ã€‚
+\fIuninstall\fRメソッドã¯ã€\fIpublic static void uninstall(org\&.omg\&.CORBA\&.ORB)\fRã«ãªã£ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚\fIuninstall\fRメソッドã¯ã‚ªãƒ—ションã§ã‚ã‚Šã€é–‹ç™ºè€…ã¯\fIinstall\fRメソッドã®å‹•ä½œã®å–消ãªã©ã€ç‹¬è‡ªã®ã‚µãƒ¼ãƒãƒ¼ãƒ»ã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å‹•ä½œã‚’指定ã§ãã¾ã™ã€‚
 .RE
 .PP
 getserverid \-applicationName \fIapplication\-name\fR
 .RS 4
-\fIapplication\-name\fRÃͤËÂбþ¤¹¤ë¥µ¡¼¥Ð¡¼ID¤òÊÖ¤·¤Þ¤¹¡£
+\fIapplication\-name\fR値ã«å¯¾å¿œã™ã‚‹ã‚µãƒ¼ãƒãƒ¼IDã‚’è¿”ã—ã¾ã™ã€‚
 .RE
 .PP
 list
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î±Ê³¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ë¾ðÊó¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æƒ…報を一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 listappnames
 .RS 4
-¸½ºßORBD¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¡¼¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó̾¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ç¾åœ¨ORBDã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒãƒ¼ã®ã‚¢ãƒ—リケーションåを一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 listactive
 .RS 4
-ORBD¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¡¢¸½ºß¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î±Ê³¥µ¡¼¥Ð¡¼¤Ë´Ø¤¹¤ë¾ðÊó¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
+ORBDã«ã‚ˆã£ã¦èµ·å‹•ã•ã‚Œã€ç¾åœ¨å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã™ã¹ã¦ã®æ°¸ç¶šã‚µãƒ¼ãƒãƒ¼ã«é–¢ã™ã‚‹æƒ…報を一覧表示ã—ã¾ã™ã€‚
 .RE
 .PP
 locate \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR [ \-endpointType \fIendpointType\fR ]
 .RS 4
-ÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤ÇºîÀ®¤·¤¿¤¹¤Ù¤Æ¤ÎORB¤ÎÆÃÄê¤Î¥¿¥¤¥×¤Ë¤Ä¤¤¤Æ¥¨¥ó¥É¥Ý¥¤¥ó¥È(¥Ý¡¼¥È)¤ò¸¡½Ð¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£\fIendpointType\fRÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥µ¡¼¥Ð¡¼¤ÎORB¤´¤È¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤ëplain¥¿¥¤¥×¤Þ¤¿¤Ïnon\-protected¥¿¥¤¥×¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¤¬ÊÖ¤µ¤ì¤Þ¤¹¡£
+登録ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã§ä½œæˆã—ãŸã™ã¹ã¦ã®ORBã®ç‰¹å®šã®ã‚¿ã‚¤ãƒ—ã«ã¤ã„ã¦ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ(ãƒãƒ¼ãƒˆ)を検出ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚\fIendpointType\fR値ãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚µãƒ¼ãƒãƒ¼ã®ORBã”ã¨ã«é–¢é€£ä»˜ã‘られã¦ã„ã‚‹plainタイプã¾ãŸã¯non\-protectedタイプã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãŒè¿”ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 locateperorb \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR [ \-orbid \fIORB\-name\fR ]
 .RS 4
-ÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤ÎÆÃÄê¤ÎObject Request Broker (ORB)¤ÇÅÐÏ¿¤µ¤ì¤¿¥¨¥ó¥É¥Ý¥¤¥ó¥È(¥Ý¡¼¥È)¤ò¸¡½Ð¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£\fIorbid\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤÎ\fI""\fR¤¬\fIorbid\fR¤Ë³ä¤êÅö¤Æ¤é¤ì¤Þ¤¹¡£ORB¤¬¶õʸ»úÎó¤Î\fIorbid\fR¤ÇºîÀ®¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ÅÐÏ¿¤·¤¿¥Ý¡¼¥È¤¬¤¹¤Ù¤ÆÊÖ¤µ¤ì¤Þ¤¹¡£
+登録ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã®ç‰¹å®šã®Object Request Broker (ORB)ã§ç™»éŒ²ã•ã‚ŒãŸã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ(ãƒãƒ¼ãƒˆ)を検出ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚\fIorbid\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆå€¤ã®\fI""\fRãŒ\fIorbid\fRã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚ORBãŒç©ºæ–‡å­—列ã®\fIorbid\fRã§ä½œæˆã•ã‚Œã¦ã„ã‚‹å ´åˆã€ç™»éŒ²ã—ãŸãƒãƒ¼ãƒˆãŒã™ã¹ã¦è¿”ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 orblist \-serverid \fIserver\-id\fR | \-applicationName \fIapplication\-name\fR
 .RS 4
-¥µ¡¼¥Ð¡¼¾å¤ËÄêµÁ¤µ¤ì¤¿ORB¤Î\fIORBId\fR¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£\fIORBId\fR¤Ï¥µ¡¼¥Ð¡¼¤ÇºîÀ®¤µ¤ì¤¿ORB¤Îʸ»úÎó̾¤Ç¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥¢¥¯¥Æ¥£¥Ö²½¤µ¤ì¤Þ¤¹¡£
+サーãƒãƒ¼ä¸Šã«å®šç¾©ã•ã‚ŒãŸORBã®\fIORBId\fRを一覧表示ã—ã¾ã™ã€‚\fIORBId\fRã¯ã‚µãƒ¼ãƒãƒ¼ã§ä½œæˆã•ã‚ŒãŸORBã®æ–‡å­—列åã§ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 shutdown \-serverid \fIserver\-id\fR | \-applicationName application\-name
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤¿¥¢¥¯¥Æ¥£¥Ö¤Ê¥µ¡¼¥Ð¡¼¤òÄä»ß¤·¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Î¼Â¹ÔÃæ¤Ë¡¢\fI\-serverid\fR¥Ñ¥é¥á¡¼¥¿¤Þ¤¿¤Ï\fI\-applicationName\fR¥Ñ¥é¥á¡¼¥¿¤Ç»ØÄꤵ¤ì¤¿¥¯¥é¥¹Æâ¤ËÄêµÁ¤µ¤ì¤¿\fIshutdown\fR¥á¥½¥Ã¥É¤â¸Æ¤Ó½Ð¤µ¤ì¤Æ¥µ¡¼¥Ð¡¼¡¦¥×¥í¥»¥¹¤òÄä»ß¤·¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚ŒãŸã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚µãƒ¼ãƒãƒ¼ã‚’åœæ­¢ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®å®Ÿè¡Œä¸­ã«ã€\fI\-serverid\fRパラメータã¾ãŸã¯\fI\-applicationName\fRパラメータã§æŒ‡å®šã•ã‚ŒãŸã‚¯ãƒ©ã‚¹å†…ã«å®šç¾©ã•ã‚ŒãŸ\fIshutdown\fRメソッドも呼ã³å‡ºã•ã‚Œã¦ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒ—ロセスをåœæ­¢ã—ã¾ã™ã€‚
 .RE
 .PP
 startup \-serverid \fIserver\-id\fR | \-applicationName application\-name
 .RS 4
-ORBD¤ËÅÐÏ¿¤µ¤ì¤¿¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤Þ¤¿¤Ï¥¢¥¯¥Æ¥£¥Ö²½¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤¬¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤¬¤¹¤Ç¤Ë¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥¨¥é¡¼¡¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+ORBDã«ç™»éŒ²ã•ã‚ŒãŸã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã¾ãŸã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒå®Ÿè¡Œã•ã‚Œã¦ã„ãªã„å ´åˆã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãŒã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚サーãƒãƒ¼ãŒã™ã§ã«å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã‚¨ãƒ©ãƒ¼ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 help
 .RS 4
-\fIservertool\fR¥³¥Þ¥ó¥É¤ò²ð¤·¤Æ¥µ¡¼¥Ð¡¼¤¬ÍøÍѤǤ­¤ë¤¹¤Ù¤Æ¤Î¥³¥Þ¥ó¥É¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドを介ã—ã¦ã‚µãƒ¼ãƒãƒ¼ãŒåˆ©ç”¨ã§ãã‚‹ã™ã¹ã¦ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’リストã—ã¾ã™ã€‚
 .RE
 .PP
 quit
 .RS 4
-\fIservertool\fR¥³¥Þ¥ó¥É¤ò½ªÎ»¤·¤Þ¤¹¡£
+\fIservertool\fRコマンドを終了ã—ã¾ã™ã€‚
 .RE
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/tnameserv.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/tnameserv.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: tnameserv
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java IDLãŠã‚ˆã³RMI-IIOPツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "tnameserv" "1" "2013ǯ11·î21Æü" "JDK 8" "Java IDL¤ª¤è¤ÓRMI-IIOP¥Ä¡¼¥ë"
+.TH "tnameserv" "1" "2013å¹´11月21æ—¥" "JDK 8" "Java IDLãŠã‚ˆã³RMI-IIOPツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-tnameserv \- ¥¤¥ó¥¿¥Õ¥§¡¼¥¹ÄêµÁ¸À¸ì(IDL)¡£
-.SH "³µÍ×"
+tnameserv \- インタフェース定義言語(IDL)。
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,27 +64,27 @@
 .PP
 \-ORBInitialPort \fInameserverport\fR
 .RS 4
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬ORB¤Î\fIresolve_initial_references\fR¥á¥½¥Ã¥É¤È\fIlist_initial_references\fR¥á¥½¥Ã¥É¤Î¼ÂÁõ¤Ë»ÈÍѤ¹¤ë¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥×¥í¥È¥³¥ë¤ò¥ê¥¹¥Ë¥ó¥°¤¹¤ë½é´ü¥Ý¡¼¥È¤Ç¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒORBã®\fIresolve_initial_references\fRメソッドã¨\fIlist_initial_references\fRメソッドã®å®Ÿè£…ã«ä½¿ç”¨ã™ã‚‹ãƒ–ートストラップ・プロトコルをリスニングã™ã‚‹åˆæœŸãƒãƒ¼ãƒˆã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-Java IDL¤Ë¤Ï¡¢Object Request Broker Daemon (ORBD)¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ORBD¤Ï¡¢¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥µ¡¼¥Ó¥¹¡¢°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¢±Ê³¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ª¤è¤Ó¥µ¡¼¥Ð¡¼¡¦¥Þ¥Í¡¼¥¸¥ã¤ò´Þ¤à¥Ç¡¼¥â¥ó¡¦¥×¥í¥»¥¹¤Ç¤¹¡£Java IDL¤Î¤¹¤Ù¤Æ¤Î¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ç¤ÏORBD¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¤¬¡¢°ì»þ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ëÎã¤Ç¤Ï¡¢\fIorbd\fR¤Î¤«¤ï¤ê¤Ë\fItnameserv\fR¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+Java IDLã«ã¯ã€Object Request Broker Daemon (ORBD)ãŒå«ã¾ã‚Œã¾ã™ã€‚ORBDã¯ã€ãƒ–ートストラップ・サービスã€ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã€æ°¸ç¶šãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŠã‚ˆã³ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’å«ã‚€ãƒ‡ãƒ¼ãƒ¢ãƒ³ãƒ»ãƒ—ロセスã§ã™ã€‚Java IDLã®ã™ã¹ã¦ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã§ã¯ORBDを使用ã—ã¦ã„ã¾ã™ãŒã€ä¸€æ™‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ä¾‹ã§ã¯ã€\fIorbd\fRã®ã‹ã‚ã‚Šã«\fItnameserv\fRを使用ã§ãã¾ã™ã€‚
 .PP
-http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.html¤Ë¤¢¤ë
-orbd(1)¤Þ¤¿¤Ï¡ÖNaming Service¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/jidlNaming\&.htmlã«ã‚ã‚‹
+orbd(1)ã¾ãŸã¯ã€ŒNaming Serviceã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-CORBA¤ÎCOS (Common Object Services)¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤¬¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥Ç¥£¥ì¥¯¥È¥ê¹½Â¤¤òÄ󶡤·¤Æ¤¤¤ë¤Î¤ÈƱ¤¸¤è¤¦¤Ë¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ËÂФ·¤Æ¥Ä¥ê¡¼¹½Â¤¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òÄ󶡤·¤Þ¤¹¡£Java IDL¤Î°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤¢¤ë\fItnameserv\fR¤Ï¡¢COS¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Î»ÅÍͤòñ½ã¤Ê·Á¤Ç¼ÂÁõ¤·¤¿¤â¤Î¤Ç¤¹¡£
+CORBAã®COS (Common Object Services)ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãŒãƒ•ã‚¡ã‚¤ãƒ«ã«å¯¾ã—ã¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªæ§‹é€ ã‚’æä¾›ã—ã¦ã„ã‚‹ã®ã¨åŒã˜ã‚ˆã†ã«ã€ã‚ªãƒ–ジェクトå‚ç…§ã«å¯¾ã—ã¦ãƒ„リー構造ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’æä¾›ã—ã¾ã™ã€‚Java IDLã®ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚ã‚‹\fItnameserv\fRã¯ã€COSãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã®ä»•æ§˜ã‚’å˜ç´”ãªå½¢ã§å®Ÿè£…ã—ãŸã‚‚ã®ã§ã™ã€‚
 .PP
-¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ï¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ë̾Á°¤Ç³ÊǼ¤µ¤ì¡¢¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤È̾Á°¤Î¥Ú¥¢¤Ï¡¢¤½¤ì¤¾¤ì¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤È¸Æ¤Ð¤ì¤Þ¤¹¡£¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÁȤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ï¥Í¡¼¥à¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¢¤ê¡¢¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ÈƱ¤¸ÊÔÀ®µ¡Ç½¤ò»ý¤Á¤Þ¤¹¡£¤¹¤Ù¤Æ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î²¼¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ÎÍ£°ì¤Î±Ê³¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¤¹¡£Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¦¥×¥í¥»¥¹¤òÄä»ß¤·¤ÆºÆµ¯Æ°¤¹¤ë¤È¡¢»Ä¤ê¤Î¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ï¼º¤ï¤ì¤Þ¤¹¡£
+オブジェクトå‚ç…§ã¯ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«åå‰ã§æ ¼ç´ã•ã‚Œã€ã‚ªãƒ–ジェクトå‚ç…§ã¨åå‰ã®ãƒšã‚¢ã¯ã€ãã‚Œãžã‚Œãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¨å‘¼ã°ã‚Œã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«çµ„ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã¯ãƒãƒ¼ãƒ ãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã‚ã‚Šã€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ã‚µãƒ–ディレクトリã¨åŒã˜ç·¨æˆæ©Ÿèƒ½ã‚’æŒã¡ã¾ã™ã€‚ã™ã¹ã¦ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ä¸‹ã«æ ¼ç´ã•ã‚Œã¾ã™ã€‚åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®å”¯ä¸€ã®æ°¸ç¶šãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã§ã™ã€‚Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“ス・プロセスをåœæ­¢ã—ã¦å†èµ·å‹•ã™ã‚‹ã¨ã€æ®‹ã‚Šã®ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
 .PP
-¥¢¥×¥ì¥Ã¥È¤Þ¤¿¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤«¤éCOS¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ë¤¿¤á¤Ë¤Ï¡¢¤½¤ÎORB¤¬¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤¬Æ°ºî¤·¤Æ¤¤¤ë¥Û¥¹¥È¤Î¥Ý¡¼¥È¤òÃΤäƤ¤¤ë¤«¡¢¤½¤Î¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Î½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥Èʸ»úÎó¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢Java IDL¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤â¤½¤Î¾¤ÎCOS½àµò¤Î¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°"
+アプレットã¾ãŸã¯ã‚¢ãƒ—リケーションã‹ã‚‰COSãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ãŸã‚ã«ã¯ã€ãã®ORBãŒãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スãŒå‹•ä½œã—ã¦ã„るホストã®ãƒãƒ¼ãƒˆã‚’知ã£ã¦ã„ã‚‹ã‹ã€ãã®ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆæ–‡å­—列ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€Java IDLã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚‚ãã®ä»–ã®COS準拠ã®ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã§ã‚‚ã‹ã¾ã„ã¾ã›ã‚“。
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•"
 .PP
-Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò»ÈÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Þ¤¿¤Ï¥¢¥×¥ì¥Ã¥È¤è¤êÁ°¤Ëµ¯Æ°¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£Java IDLÀ½Éʤò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤È¡¢Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òµ¯Æ°¤¹¤ë¥¹¥¯¥ê¥×¥È(Oracle Solaris:
-\fItnameserv\fR)¤Þ¤¿¤Ï¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë(Windows:
-\fItnameserv\&.exe\fR)¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤ÇÆ°ºî¤¹¤ë¤è¤¦¤Ë¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤òµ¯Æ°¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを使用ã™ã‚‹ã‚¢ãƒ—リケーションã¾ãŸã¯ã‚¢ãƒ—レットよりå‰ã«èµ·å‹•ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚Java IDL製å“をインストールã™ã‚‹ã¨ã€Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを起動ã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—ト(Oracle Solaris:
+\fItnameserv\fR)ã¾ãŸã¯å®Ÿè¡Œå¯èƒ½ãƒ•ã‚¡ã‚¤ãƒ«(Windows:
+\fItnameserv\&.exe\fR)ãŒä½œæˆã•ã‚Œã¾ã™ã€‚ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å‹•ä½œã™ã‚‹ã‚ˆã†ã«ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを起動ã—ã¦ãã ã•ã„。
 .PP
-Æä˻ØÄꤷ¤Ê¤¤¾ì¹ç¡¢Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Ï¡¢ORB¤Î\fIresolve_initial_references\fR¥á¥½¥Ã¥É¤È\fIlist_initial_references methods\fR¥á¥½¥Ã¥É¤Î¼ÂÁõ¤Ë»ÈÍѤ¹¤ë¥Ö¡¼¥È¥¹¥È¥é¥Ã¥×¡¦¥×¥í¥È¥³¥ë¤ËÂФ·¤Æ¥Ý¡¼¥È900¤Ç¥ê¥¹¥Ë¥ó¥°¤·¤Þ¤¹¡£
+特ã«æŒ‡å®šã—ãªã„å ´åˆã€Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¯ã€ORBã®\fIresolve_initial_references\fRメソッドã¨\fIlist_initial_references methods\fRメソッドã®å®Ÿè£…ã«ä½¿ç”¨ã™ã‚‹ãƒ–ートストラップ・プロトコルã«å¯¾ã—ã¦ãƒãƒ¼ãƒˆ900ã§ãƒªã‚¹ãƒ‹ãƒ³ã‚°ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -96,7 +96,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¡¦¥Ý¡¼¥È¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¥Ý¡¼¥È900¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£Oracle Solaris¥½¥Õ¥È¥¦¥§¥¢¤Î¼Â¹Ô»þ¡¢1024¤è¤ê¾®¤µ¤¤¥Ý¡¼¥È¤Ç¥×¥í¥»¥¹¤ò³«»Ï¤¹¤ë¾ì¹ç¤Ï¡¢root¥æ¡¼¥¶¡¼¤Ë¤Ê¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢1024°Ê¾å¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ªÁ¦¤á¤·¤Þ¤¹¡£1050¤Î¤è¤¦¤ËÊ̤Υݡ¼¥È¤ò»ØÄꤷ¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò¥Ð¥Ã¥¯¥°¥é¥¦¥ó¥É¤Ç¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢UNIX¥³¥Þ¥ó¥É¡¦¥·¥§¥ë¤Ç¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ãƒ»ãƒãƒ¼ãƒˆã‚’指定ã—ãªã„å ´åˆã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ãƒãƒ¼ãƒˆ900ãŒä½¿ç”¨ã•ã‚Œã¾ã™ã€‚Oracle Solarisソフトウェアã®å®Ÿè¡Œæ™‚ã€1024よりå°ã•ã„ãƒãƒ¼ãƒˆã§ãƒ—ロセスを開始ã™ã‚‹å ´åˆã¯ã€rootユーザーã«ãªã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã®ãŸã‚ã€1024以上ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’使用ã™ã‚‹ã“ã¨ã‚’ãŠè–¦ã‚ã—ã¾ã™ã€‚1050ã®ã‚ˆã†ã«åˆ¥ã®ãƒãƒ¼ãƒˆã‚’指定ã—ã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スをãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§å®Ÿè¡Œã™ã‚‹ã«ã¯ã€UNIXコマンド・シェルã§æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -108,7 +108,7 @@
 .RE
 .\}
 .PP
-Windows¤ÎMS\-DOS¥·¥¹¥Æ¥à¡¦¥×¥í¥ó¥×¥È¤Ç¤Ï¡¢¼¡¤Î¤è¤¦¤ËÆþÎϤ·¤Þ¤¹¡£
+Windowsã®MS\-DOSシステム・プロンプトã§ã¯ã€æ¬¡ã®ã‚ˆã†ã«å…¥åŠ›ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -120,20 +120,20 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥à¡¦¥µ¡¼¥Ð¡¼¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ï¡¢¿·¤·¤¤¥Ý¡¼¥ÈÈÖ¹æ¤òÃΤ餻¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤ò¹Ô¤¦¤Ë¤Ï¡¢ORB¥ª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®»þ¤Ë\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fR¥×¥í¥Ñ¥Æ¥£¤Ë¿·¤·¤¤¥Ý¡¼¥ÈÈÖ¹æ¤òÀßÄꤷ¤Þ¤¹¡£
-.SS "°Û¤Ê¤ë¥Û¥¹¥È¾å¤Ç¤Î¥µ¡¼¥Ð¡¼¤È¥¯¥é¥¤¥¢¥ó¥È¤Î¼Â¹Ô"
+ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒãƒ¼ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ã¯ã€æ–°ã—ã„ãƒãƒ¼ãƒˆç•ªå·ã‚’知らã›ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“れを行ã†ã«ã¯ã€ORBオブジェクトã®ä½œæˆæ™‚ã«\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fRプロパティã«æ–°ã—ã„ãƒãƒ¼ãƒˆç•ªå·ã‚’設定ã—ã¾ã™ã€‚
+.SS "ç•°ãªã‚‹ãƒ›ã‚¹ãƒˆä¸Šã§ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®å®Ÿè¡Œ"
 .PP
-Java IDL¤ÈRMI\-IIOP¤Î¤Û¤È¤ó¤É¤Î¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ç¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¡¢¥µ¡¼¥Ð¡¼¤ª¤è¤Ó¥¯¥é¥¤¥¢¥ó¥È¤Ï¤¹¤Ù¤Æ³«È¯ÍѤΥޥ·¥ó¾å¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£¼ÂºÝ¤Ë¥Ç¥×¥í¥¤¥á¥ó¥È¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ò¡¢¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤È¤Ï°Û¤Ê¤ë¥Û¥¹¥È¡¦¥Þ¥·¥ó¾å¤Ç¼Â¹Ô¤¹¤ë¤³¤È¤¬Â¿¤¯¤Ê¤ê¤Þ¤¹¡£
+Java IDLã¨RMI\-IIOPã®ã»ã¨ã‚“ã©ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã§ã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã€ã‚µãƒ¼ãƒãƒ¼ãŠã‚ˆã³ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã™ã¹ã¦é–‹ç™ºç”¨ã®ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã•ã‚Œã¾ã™ã€‚実際ã«ãƒ‡ãƒ—ロイメントã™ã‚‹å ´åˆã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã‚’ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã¨ã¯ç•°ãªã‚‹ãƒ›ã‚¹ãƒˆãƒ»ãƒžã‚·ãƒ³ä¸Šã§å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒå¤šããªã‚Šã¾ã™ã€‚
 .PP
-¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤¬¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ò¸«¤Ä¤±¤ë¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤¬¡¢¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤È¥Û¥¹¥È¤òǧ¼±¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤Î¤¿¤á¤Ë¤Ï¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤Î¥Õ¥¡¥¤¥ëÆâ¤Î\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fR¥×¥í¥Ñ¥Æ¥£¤È\fIorg\&.omg\&.CORBA\&.ORBInitialHost\fR¥×¥í¥Ñ¥Æ¥£¤ò¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Ý¡¼¥È¤ÎÈÖ¹æ¤È¥Þ¥·¥ó¤Î̾Á°¤ËÀßÄꤷ¤Þ¤¹¡£¤³¤ÎÎã¤Ï¡¢¡ÖGetting Started Using RMI\-IIOP¡×
-(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi\-iiop/rmiiiopexample\&.html)¤Ë¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹
+クライアントã¨ã‚µãƒ¼ãƒãƒ¼ãŒãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スを見ã¤ã‘ã‚‹ã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ãŒã€ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã¨ãƒ›ã‚¹ãƒˆã‚’èªè­˜ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã®ãŸã‚ã«ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã®\fIorg\&.omg\&.CORBA\&.ORBInitialPort\fRプロパティã¨\fIorg\&.omg\&.CORBA\&.ORBInitialHost\fRプロパティをãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スãŒå®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ãƒãƒ¼ãƒˆã®ç•ªå·ã¨ãƒžã‚·ãƒ³ã®åå‰ã«è¨­å®šã—ã¾ã™ã€‚ã“ã®ä¾‹ã¯ã€ã€ŒGetting Started Using RMI\-IIOPã€
+(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/rmi\-iiop/rmiiiopexample\&.html)ã«ç¤ºã•ã‚Œã¦ã„ã¾ã™
 .PP
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó\fI\-ORBInitialPort nameserverport#\fR¤È\fI\-ORBInitialHost nameserverhostname\fR¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¡¼¤ËÂФ·¤Æ¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òõ¤¹¾ì½ê¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤³¤ì¤ò¹Ô¤¦ÊýË¡¤Î1¤Ä¤ÎÎã¤Ï¡¢http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/tutorial/jidl2machines\&.html¤Î¡ÖJava IDL: The Hello World Example on Two Machines¡×
-¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+コマンドライン・オプション\fI\-ORBInitialPort nameserverport#\fRã¨\fI\-ORBInitialHost nameserverhostname\fRを使用ã—ã¦ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã‚µãƒ¼ãƒãƒ¼ã«å¯¾ã—ã¦ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを探ã™å ´æ‰€ã‚’指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚コマンドライン・オプションを使用ã—ã¦ã“れを行ã†æ–¹æ³•ã®1ã¤ã®ä¾‹ã¯ã€http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/idl/tutorial/jidl2machines\&.htmlã®ã€ŒJava IDL: The Hello World Example on Two Machinesã€
+ã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .PP
-¤¿¤È¤¨¤Ð¡¢°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹\fItnameserv\fR¤¬¡¢¥Û¥¹¥È\fInameserverhost\fR¤Î¥Ý¡¼¥È1050¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£¤µ¤é¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥Û¥¹¥È\fIclienthost\fR¾å¤Ç¼Â¹Ô¤µ¤ì¡¢¥µ¡¼¥Ð¡¼¤Ï¥Û¥¹¥È\fIserverhost\fR¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤È¤·¤Þ¤¹¡£
+ãŸã¨ãˆã°ã€ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“ス\fItnameserv\fRãŒã€ãƒ›ã‚¹ãƒˆ\fInameserverhost\fRã®ãƒãƒ¼ãƒˆ1050上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚ã•ã‚‰ã«ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãŒãƒ›ã‚¹ãƒˆ\fIclienthost\fR上ã§å®Ÿè¡Œã•ã‚Œã€ã‚µãƒ¼ãƒãƒ¼ã¯ãƒ›ã‚¹ãƒˆ\fIserverhost\fR上ã§å®Ÿè¡Œã•ã‚Œã¦ã„ã‚‹ã¨ã—ã¾ã™ã€‚
 .PP
-¥Û¥¹¥È\fInameserverhost\fR¾å¤Ç\fItnameserv\fR¤òµ¯Æ°¤·¤Þ¤¹¡£
+ホスト\fInameserverhost\fR上ã§\fItnameserv\fRã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -145,7 +145,7 @@
 .RE
 .\}
 .PP
-\fIserverhost\fR¾å¤Ç¥µ¡¼¥Ð¡¼¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIserverhost\fR上ã§ã‚µãƒ¼ãƒãƒ¼ã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -158,7 +158,7 @@
 .\}
 .PP
 
-\fIclienthost\fR¾å¤Ç¥¯¥é¥¤¥¢¥ó¥È¤òµ¯Æ°¤·¤Þ¤¹¡£
+\fIclienthost\fR上ã§ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‚’èµ·å‹•ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -169,19 +169,19 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤ÎÄä»ß"
+.SS "ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®åœæ­¢"
 .PP
-Java IDL¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÄä»ß¤¹¤ë¤Ë¤Ï¡¢Unix¤Î¾ì¹ç¤Ï¡¢\fIkill\fR¤Ê¤É¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¡¢Windows¤Î¾ì¹ç¤Ï¡¢\fI[Ctrl]+[C]\fR¥­¡¼¤ò»ÈÍѤ·¤Þ¤¹¡£¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤òÌÀ¼¨Åª¤ËÄä»ß¤¹¤ë¤Þ¤Ç¤Ï¡¢¸Æ½Ð¤·ÂÔµ¡¾õÂÖ¤¬Â³¤­¤Þ¤¹¡£¥µ¡¼¥Ó¥¹¤ò½ªÎ»¤µ¤»¤ë¤È¡¢Java IDL¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë̾Á°¤Ï¼º¤ï¤ì¤Þ¤¹¡£
-.SH "¥ª¥×¥·¥ç¥ó"
+Java IDLãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スをåœæ­¢ã™ã‚‹ã«ã¯ã€Unixã®å ´åˆã¯ã€\fIkill\fRãªã©ã®ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’使用ã—ã€Windowsã®å ´åˆã¯ã€\fI[Ctrl]+[C]\fRキーを使用ã—ã¾ã™ã€‚ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スを明示的ã«åœæ­¢ã™ã‚‹ã¾ã§ã¯ã€å‘¼å‡ºã—待機状態ãŒç¶šãã¾ã™ã€‚サービスを終了ã•ã›ã‚‹ã¨ã€Java IDLãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“スã«ç™»éŒ²ã•ã‚Œã¦ã„ã‚‹åå‰ã¯å¤±ã‚ã‚Œã¾ã™ã€‚
+.SH "オプション"
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ë\fIoption\fR¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«\fIoption\fRを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Îã"
-.SS "¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ø¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ÎÄɲÃ"
+.SH "例"
+.SS "ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã¸ã®ã‚ªãƒ–ジェクトã®è¿½åŠ "
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Ë̾Á°¤òÄɲ乤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£¤³¤Î¥µ¥ó¥×¥ë¡¦¥×¥í¥°¥é¥à¤Ï¡¢¤³¤Î¤Þ¤Þ¤Î¾õÂ֤Ǵ°Á´¤ËÆ°ºî¤¹¤ë°ì»þ¥Í¡¼¥à¡¦¥µ¡¼¥Ó¥¹¡¦¥¯¥é¥¤¥¢¥ó¥È¤Ç¡¢¼¡¤Î¤è¤¦¤Êñ½ã¤Ê¥Ä¥ê¡¼¤òºîÀ®¤¹¤ë¤â¤Î¤Ç¤¹¡£
+次ã®ä¾‹ã§ã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«åå‰ã‚’追加ã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚ã“ã®ã‚µãƒ³ãƒ—ル・プログラムã¯ã€ã“ã®ã¾ã¾ã®çŠ¶æ…‹ã§å®Œå…¨ã«å‹•ä½œã™ã‚‹ä¸€æ™‚ãƒãƒ¼ãƒ ãƒ»ã‚µãƒ¼ãƒ“ス・クライアントã§ã€æ¬¡ã®ã‚ˆã†ãªå˜ç´”ãªãƒ„リーを作æˆã™ã‚‹ã‚‚ã®ã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,7 +197,7 @@
 .RE
 .\}
 .PP
-¤³¤ÎÎã¤Ç¡¢\fIplans\fR¤Ï¥ª¥Ö¥¸¥§¥¯¥È»²¾È¡¢\fIPersonal\fR¤Ï\fIcalendar\fR¤È\fIschedule\fR¤Î2¤Ä¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò´Þ¤à¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Ç¤¹¡£
+ã“ã®ä¾‹ã§ã€\fIplans\fRã¯ã‚ªãƒ–ジェクトå‚ç…§ã€\fIPersonal\fRã¯\fIcalendar\fRã¨\fIschedule\fRã®2ã¤ã®ã‚ªãƒ–ジェクトå‚照をå«ã‚€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã§ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -217,7 +217,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤Ç¡¢\fInameserver\fR¤Ï¥Ý¡¼¥È1050¤Çµ¯Æ°¤µ¤ì¤Þ¤·¤¿¡£¼¡¤Î¥³¡¼¥É¤Ç¡¢¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥¯¥é¥¤¥¢¥ó¥È¡¦¥·¥¹¥Æ¥à¤ËÃΤ餻¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã§ã€\fInameserver\fRã¯ãƒãƒ¼ãƒˆ1050ã§èµ·å‹•ã•ã‚Œã¾ã—ãŸã€‚次ã®ã‚³ãƒ¼ãƒ‰ã§ã€ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’クライアント・システムã«çŸ¥ã‚‰ã›ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -231,7 +231,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ò¼èÆÀ¤·¡¢¤½¤ì¤ò\fIctx\fR¤ËÂåÆþ¤·¤Þ¤¹¡£2¹ÔÌܤǤϡ¢\fIctx\fR¤ò¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È\fIobjref\fR¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£¤³¤Îobjref¤Ë¤Ï¡¢¤¢¤È¤ÇÍÍ¡¹¤Ê̾Á°¤ò³ä¤êÅö¤Æ¤Æ¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã€ãれを\fIctx\fRã«ä»£å…¥ã—ã¾ã™ã€‚2行目ã§ã¯ã€\fIctx\fRをダミーã®ã‚ªãƒ–ジェクトå‚ç…§\fIobjref\fRã«ã‚³ãƒ”ーã—ã¾ã™ã€‚ã“ã®objrefã«ã¯ã€ã‚ã¨ã§æ§˜ã€…ãªåå‰ã‚’割り当ã¦ã¦ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -246,7 +246,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢\fItext\fR¥¿¥¤¥×¤Î̾Á°\fIplans\fR¤òºîÀ®¤·¡¢¤½¤ì¤ò¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£¤½¤Î¸å¡¢\fIrebind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤Æ½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î²¼¤Ë\fIplans\fR¤òÄɲ䷤Ƥ¤¤Þ¤¹¡£\fIrebind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ¹¤ì¤Ð¡¢\fIbind\fR¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤¿¾ì¹ç¤ËȯÀ¸¤¹¤ëÎã³°¤òȯÀ¸¤µ¤»¤º¤Ë¡¢¤³¤Î¥×¥í¥°¥é¥à¤ò²¿Å٤ⷫÊÖ¤·¼Â¹Ô¤Ç¤­¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€\fItext\fRタイプã®åå‰\fIplans\fRを作æˆã—ã€ãれをダミーã®ã‚ªãƒ–ジェクトå‚ç…§ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚ãã®å¾Œã€\fIrebind\fRメソッドを使用ã—ã¦åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ä¸‹ã«\fIplans\fRを追加ã—ã¦ã„ã¾ã™ã€‚\fIrebind\fRメソッドを使用ã™ã‚Œã°ã€\fIbind\fRメソッドを使用ã—ãŸå ´åˆã«ç™ºç”Ÿã™ã‚‹ä¾‹å¤–を発生ã•ã›ãšã«ã€ã“ã®ãƒ—ログラムを何度も繰返ã—実行ã§ãã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -261,7 +261,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢\fIdirectory\fR¥¿¥¤¥×¤Î\fIPersonal\fR¤È¤¤¤¦¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤òºîÀ®¤·¤Þ¤¹¡£¤½¤Î·ë²ÌÆÀ¤é¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È»²¾È\fIctx2\fR¤ò\fIname\fR¤Ë¥Ð¥¤¥ó¥É¤·¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ËÄɲä·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€\fIdirectory\fRタイプã®\fIPersonal\fRã¨ã„ã†ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’作æˆã—ã¾ã™ã€‚ãã®çµæžœå¾—られるオブジェクトå‚ç…§\fIctx2\fRã‚’\fIname\fRã«ãƒã‚¤ãƒ³ãƒ‰ã—ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã«è¿½åŠ ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -276,7 +276,7 @@
 .RE
 .\}
 .PP
-»Ä¤ê¤Î¥³¡¼¥É¤Ç¤Ï¡¢¥À¥ß¡¼¤Î¥ª¥Ö¥¸¥§¥¯¥È»²¾È¤ò\fIschedule\fR¤È\fIcalendar\fR¤È¤¤¤¦Ì¾Á°¤Ç¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È\fIPersonal\fR(\fIctx2\fR)¤Ë¥Ð¥¤¥ó¥É¤·¤Þ¤¹¡£
+残りã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ãƒ€ãƒŸãƒ¼ã®ã‚ªãƒ–ジェクトå‚照を\fIschedule\fRã¨\fIcalendar\fRã¨ã„ã†åå‰ã§ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆ\fIPersonal\fR(\fIctx2\fR)ã«ãƒã‚¤ãƒ³ãƒ‰ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -300,9 +300,9 @@
 .if n \{\
 .RE
 .\}
-.SS "¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤Î»²¾È"
+.SS "ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã®å‚ç…§"
 .PP
-¼¡¤Î¥µ¥ó¥×¥ë¡¦¥×¥í¥°¥é¥à¤Ç¤Ï¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ò¥Ö¥é¥¦¥º¤¹¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡£
+次ã®ã‚µãƒ³ãƒ—ル・プログラムã§ã¯ã€ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ã‚’ブラウズã™ã‚‹æ–¹æ³•ã‚’示ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -322,7 +322,7 @@
 .RE
 .\}
 .PP
-¥Í¡¼¥ß¥ó¥°¡¦¥µ¡¼¥Ó¥¹¤Îµ¯Æ°¤Ç¡¢\fInameserver\fR¤Ï¥Ý¡¼¥È1050¤Çµ¯Æ°¤µ¤ì¤Þ¤·¤¿¡£¼¡¤Î¥³¡¼¥É¤Ç¡¢¤³¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ò¥¯¥é¥¤¥¢¥ó¥È¡¦¥·¥¹¥Æ¥à¤ËÃΤ餻¤Þ¤¹¡£
+ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚µãƒ¼ãƒ“スã®èµ·å‹•ã§ã€\fInameserver\fRã¯ãƒãƒ¼ãƒˆ1050ã§èµ·å‹•ã•ã‚Œã¾ã—ãŸã€‚次ã®ã‚³ãƒ¼ãƒ‰ã§ã€ã“ã®ãƒãƒ¼ãƒˆç•ªå·ã‚’クライアント・システムã«çŸ¥ã‚‰ã›ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -336,7 +336,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤ò¼èÆÀ¤·¤Æ¤¤¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€åˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‚’å–å¾—ã—ã¦ã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -350,7 +350,7 @@
 .RE
 .\}
 .PP
-\fIlist\fR¥á¥½¥Ã¥É¤Ï¡¢¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ò¥ê¥¹¥È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢ºÇÂç1000¸Ä¤Þ¤Ç¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬½é´ü¥Í¡¼¥ß¥ó¥°¡¦¥³¥ó¥Æ¥­¥¹¥È¤«¤é\fIBindingListHolder\fR¤ËÊÖ¤µ¤ì¤Þ¤¹¡£»Ä¤ê¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ï¡¢\fIBindingIteratorHolder\fR¤ËÊÖ¤µ¤ì¤Þ¤¹¡£
+\fIlist\fRメソッドã¯ã€ãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’リストã—ã¾ã™ã€‚ã“ã®å ´åˆã€æœ€å¤§1000個ã¾ã§ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒåˆæœŸãƒãƒ¼ãƒŸãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆã‹ã‚‰\fIBindingListHolder\fRã«è¿”ã•ã‚Œã¾ã™ã€‚残りã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã¯ã€\fIBindingIteratorHolder\fRã«è¿”ã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -364,7 +364,7 @@
 .RE
 .\}
 .PP
-¼¡¤Î¥³¡¼¥É¤Ç¤Ï¡¢ÊÖ¤µ¤ì¤¿\fIBindingListHolder\fR¤«¤é¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ÎÇÛÎó¤ò¼èÆÀ¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤¬¤Ê¤¤¾ì¹ç¤Ï¡¢¥×¥í¥°¥é¥à¤¬½ªÎ»¤·¤Þ¤¹¡£
+次ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€è¿”ã•ã‚ŒãŸ\fIBindingListHolder\fRã‹ã‚‰ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®é…列をå–å¾—ã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãŒãªã„å ´åˆã¯ã€ãƒ—ログラムãŒçµ‚了ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -377,7 +377,7 @@
 .RE
 .\}
 .PP
-»Ä¤ê¤Î¥³¡¼¥É¤Ç¤Ï¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤ËÂФ·¤Æ¥ë¡¼¥×½èÍý¤ò¹Ô¤¤¡¢Ì¾Á°¤ò½ÐÎϤ·¤Þ¤¹¡£
+残りã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã«å¯¾ã—ã¦ãƒ«ãƒ¼ãƒ—処ç†ã‚’è¡Œã„ã€åå‰ã‚’出力ã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -408,7 +408,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
--- a/jdk/src/solaris/doc/sun/man/man1/ja/unpack200.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/unpack200.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: unpack200
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Javaデプロイメント・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "unpack200" "1" "2013ǯ11·î21Æü" "JDK 8" "Java¥Ç¥×¥í¥¤¥á¥ó¥È¡¦¥Ä¡¼¥ë"
+.TH "unpack200" "1" "2013年11月21日" "JDK 8" "Javaデプロイメント・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-unpack200 \- pack200(1)¤ÇºîÀ®¤µ¤ì¤¿¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤ò¡¢Web¥Ç¥×¥í¥¤¥á¥ó¥È¤Î¤¿¤á¤ËJAR¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+unpack200 \- pack200(1)ã§ä½œæˆã•ã‚ŒãŸãƒ‘ック・ファイルをã€Webデプロイメントã®ãŸã‚ã«JARファイルã«å¤‰æ›ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,21 +64,21 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIinput\-file\fR
 .RS 4
-ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î̾Á°¡£pack200 gzip¥Õ¥¡¥¤¥ë¤«pack200¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£ÆþÎÏ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢\fIpack200\fR(1)¤ÇºîÀ®¤µ¤ì¤¿JAR¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹(¼ê´Ö¤Ï\fI0\fR¤Ç¤¹)¡£¤³¤Î¾ì¹ç¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÏPack2000¥Þ¡¼¥«¡¼¤Ç½ÐÎÏJAR¥Õ¥¡¥¤¥ë¤Ë¥³¥Ô¡¼¤µ¤ì¤Þ¤¹¡£
+入力ファイルã®åå‰ã€‚pack200 gzipファイルã‹pack200ファイルを指定ã§ãã¾ã™ã€‚入力ファイルã«ã¯ã€\fIpack200\fR(1)ã§ä½œæˆã•ã‚ŒãŸJARファイルを指定ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™(手間ã¯\fI0\fRã§ã™)。ã“ã®å ´åˆã€å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®å†…容ã¯Pack2000マーカーã§å‡ºåŠ›JARファイルã«ã‚³ãƒ”ーã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \fIJAR\-file\fR
 .RS 4
-½ÐÎÏJAR¥Õ¥¡¥¤¥ë̾¡£
+出力JARファイルå。
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ï¡¢\fIpack200\fR\fI(1)\fR¤ÇºîÀ®¤µ¤ì¤¿¥Ñ¥Ã¥¯¡¦¥Õ¥¡¥¤¥ë¤òJAR¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤¹¤ë¥Í¥¤¥Æ¥£¥Ö¼ÂÁõ¤Ç¤¹¡£°ìÈÌŪ¤Ê»ÈÍÑÊýË¡¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£¼¡¤ÎÎã¤Ç¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î\fIunpack200\fR¥³¥Þ¥ó¥ÉÀßÄê¤Ç¡¢\fImyarchive\&.jar\fR¥Õ¥¡¥¤¥ë¤¬\fImyarchive\&.pack\&.gz\fR¤«¤éºîÀ®¤µ¤ì¤Þ¤¹¡£
+\fIunpack200\fRコマンドã¯ã€\fIpack200\fR\fI(1)\fRã§ä½œæˆã•ã‚ŒãŸãƒ‘ック・ファイルをJARファイルã«å¤‰æ›ã™ã‚‹ãƒã‚¤ãƒ†ã‚£ãƒ–実装ã§ã™ã€‚一般的ãªä½¿ç”¨æ–¹æ³•ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚次ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®\fIunpack200\fRコマンド設定ã§ã€\fImyarchive\&.jar\fRファイルãŒ\fImyarchive\&.pack\&.gz\fRã‹ã‚‰ä½œæˆã•ã‚Œã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,56 +89,56 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-Hvalue \-\-deflate\-hint=\fIvalue\fR
 .RS 4
-JAR¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Ë\fItrue\fR¡¢\fIfalse\fR¤Þ¤¿¤Ï\fIkeep\fR¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¤òÀßÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¡¦¥â¡¼¥É¤Ï\fIkeep\fR¤Ç¤¹¡£Ãͤ¬\fItrue\fR¤Þ¤¿¤Ï\fIfalse\fR¾ì¹ç¡¢\fI\-\-deflate=hint\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¡¢½ÐÎÏJAR¥Õ¥¡¥¤¥ëÆâ¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Î¥Ç¥Õ¥ì¡¼¥·¥ç¥ó¡¦¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤¹¡£
+JARファイル内ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã«\fItrue\fRã€\fIfalse\fRã¾ãŸã¯\fIkeep\fRã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’設定ã—ã¾ã™ã€‚デフォルト・モードã¯\fIkeep\fRã§ã™ã€‚値ãŒ\fItrue\fRã¾ãŸã¯\fIfalse\fRå ´åˆã€\fI\-\-deflate=hint\fRオプションã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®å‹•ä½œã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¦ã€å‡ºåŠ›JARファイル内ã®ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒˆãƒªã®ãƒ‡ãƒ•ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ»ãƒ¢ãƒ¼ãƒ‰ãŒè¨­å®šã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-r \-\-remove\-pack\-file
 .RS 4
-ÆþÎϥѥ寡¦¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Þ¤¹¡£
+入力パック・ファイルを削除ã—ã¾ã™ã€‚
 .RE
 .PP
 \-v \-\-verbose
 .RS 4
-ºÇ¾®¸Â¤Î¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÊ£¿ô¤Î»ÅÍͤˤϡ¢¤è¤ê¾ÜºÙ¤Ê¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
+最å°é™ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションã®è¤‡æ•°ã®ä»•æ§˜ã«ã¯ã€ã‚ˆã‚Šè©³ç´°ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-q \-\-quiet
 .RS 4
-¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤»¤º¤ËÆ°ºî¤¹¤ë¤è¤¦¤Ë»ØÄꤷ¤Þ¤¹¡£
+メッセージを表示ã›ãšã«å‹•ä½œã™ã‚‹ã‚ˆã†ã«æŒ‡å®šã—ã¾ã™ã€‚
 .RE
 .PP
 \-lfilename \-\-log\-file=\fIfilename\fR
 .RS 4
-½ÐÎÏ¥á¥Ã¥»¡¼¥¸¤¬µ­Ï¿¤µ¤ì¤ë¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£
+出力メッセージãŒè¨˜éŒ²ã•ã‚Œã‚‹ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-? \-h \-\-help
 .RS 4
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIunpack200\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-V \-\-version
 .RS 4
-\fIunpack200\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+\fIunpack200\fRコマンドã«é–¢ã™ã‚‹ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-J\fIoption\fR
 .RS 4
-Java²¾ÁÛ¥Þ¥·¥ó¤Ëoption¤òÅϤ·¤Þ¤¹¡£\fIoption\fR¤Ë¤Ï¡¢Java¥¢¥×¥ê¥±¡¼¥·¥ç¥óµ¯Æ°¥Ä¡¼¥ë¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¥ª¥×¥·¥ç¥ó¤ò1¤Ä»ØÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢\fI\-J\-Xms48m\fR¤È»ØÄꤹ¤ë¤È¡¢¥¹¥¿¡¼¥È¥¢¥Ã¥×¡¦¥á¥â¥ê¡¼¤Ï48MB¤ËÀßÄꤵ¤ì¤Þ¤¹¡£java(1)¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+Java仮想マシンã«optionを渡ã—ã¾ã™ã€‚\fIoption\fRã«ã¯ã€Javaアプリケーション起動ツールã®ãƒªãƒ•ã‚¡ãƒ¬ãƒ³ã‚¹ãƒ»ãƒšãƒ¼ã‚¸ã«è¨˜è¼‰ã•ã‚Œã¦ã„るオプションを1ã¤æŒ‡å®šã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€\fI\-J\-Xms48m\fRã¨æŒ‡å®šã™ã‚‹ã¨ã€ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—・メモリーã¯48MBã«è¨­å®šã•ã‚Œã¾ã™ã€‚java(1)ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 .RE
-.SH "Ãí°Õ"
+.SH "注æ„"
 .PP
-¤³¤Î¥³¥Þ¥ó¥É¤È\fIunpack\fR¥³¥Þ¥ó¥É¤òº®Æ±¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÏÊÌÀ½ÉʤǤ¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¨\fIunpack\fRコマンドを混åŒã—ãªã„ã§ãã ã•ã„。ã“れらã¯åˆ¥è£½å“ã§ã™ã€‚
 .PP
-JDK¤ËÉÕ°¤¹¤ëJava SE API»ÅÍͤȤÎÁê°ã¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢»ÅÍͤòÍ¥À褷¤Æ¤¯¤À¤µ¤¤¡£
-.SH "½ªÎ»¥¹¥Æ¡¼¥¿¥¹"
+JDKã«ä»˜å±žã™ã‚‹Java SE API仕様ã¨ã®ç›¸é•ãŒè¦‹ã¤ã‹ã£ãŸå ´åˆã«ã¯ã€ä»•æ§˜ã‚’優先ã—ã¦ãã ã•ã„。
+.SH "終了ステータス"
 .PP
-¼¡¤Î½ªÎ»Ãͤ¬ÊÖ¤µ¤ì¤Þ¤¹: Àµ¾ï½ªÎ»¤Î¾ì¹ç¤Ï0¡¢¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ï0¤è¤êÂ礭¤¤ÃÍ¡£
-.SH "´ØÏ¢¹àÌÜ"
+次ã®çµ‚了値ãŒè¿”ã•ã‚Œã¾ã™: 正常終了ã®å ´åˆã¯0ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã¯0より大ãã„値。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -181,7 +181,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖPack200 and Compression¡×
+「Pack200 and Compressionã€
 (http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/deployment/deployment\-guide/pack200\&.html)
 .RE
 .sp
@@ -193,7 +193,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¡ÖJava SE Technical Documentation¡×
+「Java SE Technical Documentationã€
 (http://docs\&.oracle\&.com/javase/)
 .RE
 .br
--- a/jdk/src/solaris/doc/sun/man/man1/ja/wsgen.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/wsgen.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: wsgen
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "wsgen" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "wsgen" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-wsgen \- Web¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ(SEI)¥¯¥é¥¹¤òÆɼè¤ê¡¢Web¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤¥á¥ó¥È¤È¸Æ½Ð¤·¤ËɬÍפʤ¹¤Ù¤Æ¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+wsgen \- Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…(SEI)クラスを読å–ã‚Šã€Webサービスã®ãƒ‡ãƒ—ロイメントã¨å‘¼å‡ºã—ã«å¿…è¦ãªã™ã¹ã¦ã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’生æˆã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,20 +64,20 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fISEI\fR
 .RS 4
-Æɤ߼è¤ëWeb¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ¥¯¥é¥¹(SEI)¤Ç¤¹¡£
+読ã¿å–ã‚‹Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…クラス(SEI)ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤Ï¡¢JAX\-WS Web¥µ¡¼¥Ó¥¹¤Ç»ÈÍѤµ¤ì¤ëJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥Ä¡¼¥ë¤Ï¡¢Web¥µ¡¼¥Ó¥¹¤Î¥¨¥ó¥É¥Ý¥¤¥ó¥È¡¦¥¯¥é¥¹¤òÆɼè¤ê¡¢Web¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤¥á¥ó¥È¤È¸Æ½Ð¤·¤ËɬÍפʤ¹¤Ù¤Æ¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£JAXWS 2\&.1\&.1 RI¤Ç¤Ï\fIwsgen\fR
-Ant¥¿¥¹¥¯¤âÄ󶡤µ¤ì¤Þ¤¹¡£
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.html¤ÎJAX\-WS (wsgen)¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIwsgen\fRコマンドã¯ã€JAX\-WS Webサービスã§ä½¿ç”¨ã•ã‚Œã‚‹JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¾ã™ã€‚ã“ã®ãƒ„ールã¯ã€Webサービスã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãƒ»ã‚¯ãƒ©ã‚¹ã‚’読å–ã‚Šã€Webサービスã®ãƒ‡ãƒ—ロイメントã¨å‘¼å‡ºã—ã«å¿…è¦ãªã™ã¹ã¦ã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’生æˆã—ã¾ã™ã€‚JAXWS 2\&.1\&.1 RIã§ã¯\fIwsgen\fR
+Antタスクもæä¾›ã•ã‚Œã¾ã™ã€‚
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.htmlã®JAX\-WS (wsgen)ページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+\fIwsgen\fRコマンドを起動ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -89,79 +89,79 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-classpath \fIpath\fR
 .RS 4
-ÆþÎÏ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+入力クラス・ファイルã®å ´æ‰€ã€‚
 .RE
 .PP
 \-cp \fIpath\fR
 .RS 4
-ÆþÎÏ¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+入力クラス・ファイルã®å ´æ‰€ã€‚
 .RE
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¡£
+生æˆã•ã‚ŒãŸå‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-extension
 .RS 4
-¥Ù¥ó¥À¡¼³ÈÄ¥¤ò»ÈÍѲÄǽ¤Ë¤·¤Þ¤¹¡£³ÈÄ¥¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î°Ü¿¢À­¤¬¼º¤ï¤ì¤¿¤ê¡¢Â¾¤Î¼ÂÁõ¤ÈÏ¢·È¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ベンダー拡張を使用å¯èƒ½ã«ã—ã¾ã™ã€‚拡張を使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã®ç§»æ¤æ€§ãŒå¤±ã‚ã‚ŒãŸã‚Šã€ä»–ã®å®Ÿè£…ã¨é€£æºã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIwsgen\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIwsgen\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-keep
 .RS 4
-À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÊݸ¤·¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿å­˜ã—ã¾ã™ã€‚
 .RE
 .PP
 \-r \fIdirectory\fR
 .RS 4
-¤³¤Î¥ª¥×¥·¥ç¥ó¤ò\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë»ÈÍѤ·¤Æ¡¢WSDL¤Ê¤ÉÀ¸À®¤µ¤ì¤¿¥ê¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤òÇÛÃÖ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+ã“ã®ã‚ªãƒ—ションを\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ä½¿ç”¨ã—ã¦ã€WSDLãªã©ç”Ÿæˆã•ã‚ŒãŸãƒªã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é…ç½®ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤¿¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¡£
+生æˆã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-wsdl [ :protocol ]
 .RS 4
-¥¨¥ó¥É¥Ý¥¤¥ó¥È¤ò¥Ç¥×¥í¥¤¤¹¤ëÁ°¤Ë³Îǧ¤¹¤ëWSDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¥ª¥×¥·¥ç¥ó¡¦¥³¥Þ¥ó¥É¡£WSDL¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥µ¡¼¥Ó¥¹¤ò¸Æ¤Ó½Ð¤¹ÊýË¡¡¢¥Ñ¥é¥á¡¼¥¿¤ËɬÍפÊÃÍ¡¢ÊÖ¤µ¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤Æ¤Î¥³¥ó¥Ô¥å¡¼¥¿¤ÇÆɼè¤ê²Äǽ¤Êµ­½Ò¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
+エンドãƒã‚¤ãƒ³ãƒˆã‚’デプロイã™ã‚‹å‰ã«ç¢ºèªã™ã‚‹WSDLファイルを生æˆã™ã‚‹ã‚ªãƒ—ション・コマンド。WSDLファイルã«ã¯ã€ã‚µãƒ¼ãƒ“スを呼ã³å‡ºã™æ–¹æ³•ã€ãƒ‘ラメータã«å¿…è¦ãªå€¤ã€è¿”ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿æ§‹é€ ã«ã¤ã„ã¦ã®ã‚³ãƒ³ãƒ”ュータã§èª­å–ã‚Šå¯èƒ½ãªè¨˜è¿°ãŒå«ã¾ã‚Œã¾ã™ã€‚
 .sp
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï\fIwsgen\fR¥³¥Þ¥ó¥É¤ÏWSDL¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤»¤ó¡£\fIprotocol\fRÃͤϾÊά²Äǽ¤Ç¤¢¤ê¡¢WSDL¥Ð¥¤¥ó¥Ç¥£¥ó¥°(\fIwsdl:binding\fR)¤Ç»ÈÍѤ¹¤ë¥×¥í¥È¥³¥ë¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¤Þ¤¹¡£Í­¸ú¤Ê¥×¥í¥È¥³¥ë¤Ï¡¢\fIsoap1\&.1\fR¤È\fIXsoap1\&.2\fR¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï\fIsoap1\&.1\fR¤Ç¤¹¡£\fIXsoap1\&.2\fR¥×¥í¥È¥³¥ë¤Ïɸ½à¤Ç¤Ï¤Ê¤¤¤¿¤á¡¢\fI\-extension\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѲÄǽ¤Ç¤¹¡£
+デフォルトã§ã¯\fIwsgen\fRコマンドã¯WSDLファイルを生æˆã—ã¾ã›ã‚“。\fIprotocol\fR値ã¯çœç•¥å¯èƒ½ã§ã‚ã‚Šã€WSDLãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°(\fIwsdl:binding\fR)ã§ä½¿ç”¨ã™ã‚‹ãƒ—ロトコルを指定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚有効ãªãƒ—ロトコルã¯ã€\fIsoap1\&.1\fRã¨\fIXsoap1\&.2\fRã§ã™ã€‚デフォルトã¯\fIsoap1\&.1\fRã§ã™ã€‚\fIXsoap1\&.2\fRプロトコルã¯æ¨™æº–ã§ã¯ãªã„ãŸã‚ã€\fI\-extension\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨å¯èƒ½ã§ã™ã€‚
 .RE
 .PP
 \-servicename \fIname\fR
 .RS 4
-\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѤ·¤Æ¡¢WSDL¤ÇÀ¸À®¤µ¤ì¤ëÆÃÄê¤ÎWSDL¥µ¡¼¥Ó¥¹(\fIwsdl:service\fR)̾¤ò»ØÄꤷ¤Þ¤¹¡£Îã:
-\fI\-servicename "{http://mynamespace/}MyService"\fR¡£
+\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨ã—ã¦ã€WSDLã§ç”Ÿæˆã•ã‚Œã‚‹ç‰¹å®šã®WSDLサービス(\fIwsdl:service\fR)åを指定ã—ã¾ã™ã€‚例:
+\fI\-servicename "{http://mynamespace/}MyService"\fR。
 .RE
 .PP
 \-portname \fIname\fR
 .RS 4
-\fI\-wsdl\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤Î¤ß»ÈÍѤ·¤Æ¡¢WSDL¤ÇÀ¸À®¤µ¤ì¤ëÆÃÄê¤ÎWSDL¥Ý¡¼¥È(\fIwsdl:port\fR)̾¤ò»ØÄꤷ¤Þ¤¹¡£Îã:
-\fI\-portname "{http://mynamespace/}MyPort"\fR¡£
+\fI\-wsdl\fRオプションã¨ã¨ã‚‚ã«ã®ã¿ä½¿ç”¨ã—ã¦ã€WSDLã§ç”Ÿæˆã•ã‚Œã‚‹ç‰¹å®šã®WSDLãƒãƒ¼ãƒˆ(\fIwsdl:port\fR)åを指定ã—ã¾ã™ã€‚例:
+\fI\-portname "{http://mynamespace/}MyPort"\fR。
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢Stock¥Ç¥£¥ì¥¯¥È¥êÆâ¤Ë\fI@WebService\fRÃí¼á¤ò»ý¤Ä\fIStockService\fR¤Î¥é¥Ã¥Ñ¡¼¡¦¥¯¥é¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€Stockディレクトリ内ã«\fI@WebService\fR注釈をæŒã¤\fIStockService\fRã®ãƒ©ãƒƒãƒ‘ー・クラスを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -173,7 +173,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢SOAP 1\&.1 WSDL¤ª¤è¤Ó\fI@WebService\fRÃí¼á¤ò»ý¤Ä\fIstock\&.StockService\fR¥¯¥é¥¹¤Î¥¹¥­¡¼¥Þ¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€SOAP 1\&.1 WSDLãŠã‚ˆã³\fI@WebService\fR注釈をæŒã¤\fIstock\&.StockService\fRクラスã®ã‚¹ã‚­ãƒ¼ãƒžã‚’生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -185,7 +185,7 @@
 .RE
 .\}
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢SOAP 1\&.2 WSDL¤òÀ¸À®¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€SOAP 1\&.2 WSDLを生æˆã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -197,9 +197,9 @@
 .RE
 .\}
 .PP
-\fBÃí°Õ:\fR
-¥µ¡¼¥Ó¥¹¤Î¥Ç¥×¥í¥¤»þ¤ËJAXWS¼Â¹Ô»þ´Ä¶­¤ÇWSDL¤¬À¸À®¤µ¤ì¤ë¤¿¤á¡¢³«È¯»þ¤ËWSDL¤òÀ¸À®¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
-.SH "´ØÏ¢¹àÌÜ"
+\fB注æ„:\fR
+サービスã®ãƒ‡ãƒ—ロイ時ã«JAXWS実行時環境ã§WSDLãŒç”Ÿæˆã•ã‚Œã‚‹ãŸã‚ã€é–‹ç™ºæ™‚ã«WSDLを生æˆã™ã‚‹å¿…è¦ã¯ã‚ã‚Šã¾ã›ã‚“。
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -220,8 +220,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.html¤Î
-JAX\-WS (wsgen)¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsgenant\&.htmlã®
+JAX\-WS (wsgen)ページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/wsimport.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/wsimport.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: wsimport
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "wsimport" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "wsimport" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-wsimport \- Web¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥¢¡¼¥«¥¤¥Ö(WAR)¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤Ç¤­¤ëJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Æ¡¢Ant¥¿¥¹¥¯¤ò»ØÄꤷ¤Þ¤¹¡£
-.SH "³µÍ×"
+wsimport \- Webアプリケーション・アーカイブ(WAR)ファイルã«ãƒ‘ッケージã§ãã‚‹JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¦ã€Antタスクを指定ã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,18 +64,18 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \fIwsdl\fR
 .RS 4
-Web¥µ¡¼¥Ó¥¹¤ò¸Æ¤Ó½Ð¤¹ÊýË¡¡¢¥Ñ¥é¥á¡¼¥¿¤ËɬÍפÊÃÍ¡¢ÊÖ¤µ¤ì¤ë¥Ç¡¼¥¿¹½Â¤¤Ë¤Ä¤¤¤Æ¤Î¥³¥ó¥Ô¥å¡¼¥¿¤ÇÆɼè¤ê²Äǽ¤Êµ­½Ò¤¬´Þ¤Þ¤ì¤Þ¤ë¥Õ¥¡¥¤¥ë¤Ç¤¹¡£
+Webサービスを呼ã³å‡ºã™æ–¹æ³•ã€ãƒ‘ラメータã«å¿…è¦ãªå€¤ã€è¿”ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿æ§‹é€ ã«ã¤ã„ã¦ã®ã‚³ãƒ³ãƒ”ュータã§èª­å–ã‚Šå¯èƒ½ãªè¨˜è¿°ãŒå«ã¾ã‚Œã¾ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã§ã™ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-\fIwsimport\fR¥³¥Þ¥ó¥É¤Ï¡¢¼¡¤ÎJAX\-WS¥Ý¡¼¥¿¥Ö¥ë¡¦¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ï¡¢¥Ç¥×¥í¥¤¤¹¤ëWSDL¤ª¤è¤Ó¥¹¥­¡¼¥Þ¡¦¥É¥­¥å¥á¥ó¥È¤ª¤è¤Ó¥¨¥ó¥É¥Ý¥¤¥ó¥È¼ÂÁõ¤È¤È¤â¤Ë¡¢WAR¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸¤Ç¤­¤Þ¤¹¡£\fIwsimport\fR¥³¥Þ¥ó¥É¤Ç¤Ï\fIwsimport\fR
-Ant¥¿¥¹¥¯¤âÄ󶡤µ¤ì¤Þ¤¹¡£
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤ÎWsimport Ant Task¥Ú¡¼¥¸¤ÎTools¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+\fIwsimport\fRコマンドã¯ã€æ¬¡ã®JAX\-WSãƒãƒ¼ã‚¿ãƒ–ル・アーティファクトを生æˆã—ã¾ã™ã€‚ã“れらã®ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã¯ã€ãƒ‡ãƒ—ロイã™ã‚‹WSDLãŠã‚ˆã³ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŠã‚ˆã³ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆå®Ÿè£…ã¨ã¨ã‚‚ã«ã€WARファイルã«ãƒ‘ッケージã§ãã¾ã™ã€‚\fIwsimport\fRコマンドã§ã¯\fIwsimport\fR
+Antタスクもæä¾›ã•ã‚Œã¾ã™ã€‚
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®Wsimport Ant Taskページã®Toolsタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -85,7 +85,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥µ¡¼¥Ó¥¹¡¦¥¨¥ó¥É¥Ý¥¤¥ó¥È¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹(SEI)
+サービス・エンドãƒã‚¤ãƒ³ãƒˆãƒ»ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹(SEI)
 .RE
 .sp
 .RS 4
@@ -96,7 +96,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-¥µ¡¼¥Ó¥¹
+サービス
 .RE
 .sp
 .RS 4
@@ -107,7 +107,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Îã³°¥¯¥é¥¹¤Ï\fIwsdl:fault\fR¤«¤é¥Þ¥Ã¥×¤µ¤ì¤Þ¤¹(¸ºß¤¹¤ë¾ì¹ç)
+例外クラスã¯\fIwsdl:fault\fRã‹ã‚‰ãƒžãƒƒãƒ—ã•ã‚Œã¾ã™(存在ã™ã‚‹å ´åˆ)
 .RE
 .sp
 .RS 4
@@ -118,7 +118,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-ÈóƱ´ü¥ì¥¹¥Ý¥ó¥¹Bean¤Ï¥ì¥¹¥Ý¥ó¥¹\fIwsdl:message\fR¤«¤éÇÉÀ¸¤·¤Þ¤¹(¸ºß¤¹¤ë¾ì¹ç)
+éžåŒæœŸãƒ¬ã‚¹ãƒãƒ³ã‚¹Beanã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹\fIwsdl:message\fRã‹ã‚‰æ´¾ç”Ÿã—ã¾ã™(存在ã™ã‚‹å ´åˆ)
 .RE
 .sp
 .RS 4
@@ -129,10 +129,10 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-JAXB¤¬À¸À®¤¹¤ëÃÍ¥¿¥¤¥×(¥¹¥­¡¼¥Þ¤Î¥¿¥¤¥×¤«¤é¥Þ¥Ã¥×¤µ¤ì¤¿Java¥¯¥é¥¹)
+JAXBãŒç”Ÿæˆã™ã‚‹å€¤ã‚¿ã‚¤ãƒ—(スキーマã®ã‚¿ã‚¤ãƒ—ã‹ã‚‰ãƒžãƒƒãƒ—ã•ã‚ŒãŸJavaクラス)
 .RE
 .PP
-\fIwsgen\fR¥³¥Þ¥ó¥É¤òµ¯Æ°¤¹¤ë¤Ë¤Ï¡¢¼¡¤ò¹Ô¤¤¤Þ¤¹¡£
+\fIwsgen\fRコマンドを起動ã™ã‚‹ã«ã¯ã€æ¬¡ã‚’è¡Œã„ã¾ã™ã€‚
 .PP
 \fBOracle Solaris/Linux\fR:
 .sp
@@ -146,7 +146,7 @@
 .RE
 .\}
 .PP
-\fBWindows\fR¤Î¾ì¹ç:
+\fBWindows\fRã®å ´åˆ:
 .sp
 .if n \{\
 .RS 4
@@ -157,118 +157,118 @@
 .if n \{\
 .RE
 .\}
-.SH "¥ª¥×¥·¥ç¥ó"
+.SH "オプション"
 .PP
 \-d \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤ë½ÐÎÏ¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+生æˆã•ã‚Œã‚‹å‡ºåŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-b \fIpath\fR
 .RS 4
-³°ÉôJAX\-WS¤Þ¤¿¤ÏJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-b\fR¥ª¥×¥·¥ç¥ó¤ÇÊ£¿ô¤ÎJAX\-WS¤ª¤è¤ÓJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¡¢Bean̾¤Ê¤É¤ò¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£JAX\-WS¤ª¤è¤ÓJAXB¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤ÎWSDL Customization¤ÎUsers Guide¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+外部JAX\-WSã¾ãŸã¯JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fI\-b\fRオプションã§è¤‡æ•°ã®JAX\-WSãŠã‚ˆã³JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ãƒ‘ッケージåã€Beanåãªã©ã‚’カスタマイズã§ãã¾ã™ã€‚JAX\-WSãŠã‚ˆã³JAXBãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è©³ç´°ã¯ã€
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®WSDL Customizationã®Users Guideタブをå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-B \fIjaxbOption\fR
 .RS 4
-JAXB¥¹¥­¡¼¥Þ¡¦¥³¥ó¥Ñ¥¤¥é¤Ë\fIjaxbOption\fR¥ª¥×¥·¥ç¥ó¤òÅϤ·¤Þ¤¹¡£
+JAXBスキーマ・コンパイラã«\fIjaxbOption\fRオプションを渡ã—ã¾ã™ã€‚
 .RE
 .PP
 \-catalog
 .RS 4
-³°Éô¥¨¥ó¥Æ¥£¥Æ¥£»²¾È¤ò²ò·è¤¹¤ë¥«¥¿¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£\fI\-catalog\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢TR9401¡¢XCatalog¡¢OASIS XML Catalog¤Î³Æ·Á¼°¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.html¤Î
-Catalog Support¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+外部エンティティå‚照を解決ã™ã‚‹ã‚«ã‚¿ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚\fI\-catalog\fRオプションã¯ã€TR9401ã€XCatalogã€OASIS XML Catalogã®å„å½¢å¼ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.htmlã®
+Catalog Supportページã®Users Guideタブをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-extension
 .RS 4
-¥Ù¥ó¥À¡¼³ÈÄ¥¤ò»ÈÍѲÄǽ¤Ë¤·¤Þ¤¹¡£³ÈÄ¥¤ò»ÈÍѤ¹¤ë¤È¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î°Ü¿¢À­¤¬¼º¤ï¤ì¤¿¤ê¡¢Â¾¤Î¼ÂÁõ¤ÈÏ¢·È¤Ç¤­¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
+ベンダー拡張を使用å¯èƒ½ã«ã—ã¾ã™ã€‚拡張を使用ã™ã‚‹ã¨ã€ã‚¢ãƒ—リケーションã®ç§»æ¤æ€§ãŒå¤±ã‚ã‚ŒãŸã‚Šã€ä»–ã®å®Ÿè£…ã¨é€£æºã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-\fIwsimport\fR¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë¥Ø¥ë¥×¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+\fIwsimport\fRコマンドã«é–¢ã™ã‚‹ãƒ˜ãƒ«ãƒ—・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-httpproxy: \fIhost\fR:\fIport\fR
 .RS 4
-HTTP¥×¥í¥­¥·¡¦¥µ¡¼¥Ð¡¼¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï8080¤Ç¤¹¡£
+HTTPプロキシ・サーãƒãƒ¼ã‚’指定ã—ã¾ã™ã€‚デフォルトã¯8080ã§ã™ã€‚
 .RE
 .PP
 \-keep
 .RS 4
-À¸À®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤òÊÝ»ý¤·¤Þ¤¹
+生æˆã•ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿æŒã—ã¾ã™
 .RE
 .PP
 \-p \fIname\fR
 .RS 4
-¥¿¡¼¥²¥Ã¥È¡¦¥Ñ¥Ã¥±¡¼¥¸\fIname\fR¤ò»ØÄꤷ¤Æ¡¢WSDL¤ª¤è¤Ó¥¹¥­¡¼¥Þ¡¦¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Î¥«¥¹¥¿¥Þ¥¤¥º¡¢¤ª¤è¤Ó»ÅÍÍÉô¤ÇÄêµÁ¤µ¤ì¤¿¥Ç¥Õ¥©¥ë¥È¤Î¥¢¥ë¥´¥ê¥º¥à¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Þ¤¹¡£
+ターゲット・パッケージ\fIname\fRを指定ã—ã¦ã€WSDLãŠã‚ˆã³ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã€ãŠã‚ˆã³ä»•æ§˜éƒ¨ã§å®šç¾©ã•ã‚ŒãŸãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã‚’オーãƒãƒ¼ãƒ©ã‚¤ãƒ‰ã—ã¾ã™ã€‚
 .RE
 .PP
 \-s \fIdirectory\fR
 .RS 4
-À¸À®¤µ¤ì¤ë¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹
+生æˆã•ã‚Œã‚‹ã‚½ãƒ¼ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ ¼ç´ã™ã‚‹å ´æ‰€ã‚’指定ã—ã¾ã™
 .RE
 .PP
 \-verbose
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・メッセージを表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥ê¥ê¡¼¥¹¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹¡£
+リリース情報を出力ã—ã¾ã™ã€‚
 .RE
 .PP
 \-wsdllocation \fIlocation\fR
 .RS 4
-\fI@WebServiceClient\&.wsdlLocation\fR¤ÎÃͤò»ØÄꤷ¤Þ¤¹¡£
+\fI@WebServiceClient\&.wsdlLocation\fRã®å€¤ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-target
 .RS 4
-»ØÄꤵ¤ì¤¿JAX\-WS»ÅÍͥС¼¥¸¥ç¥ó¤Ë½¾¤Ã¤Æ¡¢¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£¥Ð¡¼¥¸¥ç¥ó2\&.0¤Ç¤Ï¡¢JAX\-WS 2\&.0»ÅÍͤ˽àµò¤·¤¿¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹¡£
+指定ã•ã‚ŒãŸJAX\-WS仕様ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã«å¾“ã£ã¦ã€ã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚ãƒãƒ¼ã‚¸ãƒ§ãƒ³2\&.0ã§ã¯ã€JAX\-WS 2\&.0仕様ã«æº–æ‹ ã—ãŸã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚
 .RE
 .PP
 \-quiet
 .RS 4
-\fIwsimport\fR¥³¥Þ¥ó¥É½ÐÎϤòÍÞÀ©¤·¤Þ¤¹¡£
+\fIwsimport\fRコマンド出力を抑制ã—ã¾ã™ã€‚
 .RE
 .PP
-\fI\-b\fR¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¡¢Ê£¿ô¤Î\fIJAX\-WS\fR¤ª¤è¤Ó\fIJAXB\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤äBean̾¤Ê¤É¡¢ÍÍ¡¹¤Ê¤â¤Î¤ò¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤Þ¤¹¡£\fIJAX\-WS\fR¤ª¤è¤Ó\fIJAXB\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï¡¢
-https://jax\-ws\&.dev\&.java\&.net/nonav/2\&.1\&.1/docs/customizations\&.html¤ÎJAXB¥¿¥Ö¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+\fI\-b\fRオプションを使用ã—ã¦ã€è¤‡æ•°ã®\fIJAX\-WS\fRãŠã‚ˆã³\fIJAXB\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã§ãã¾ã™ã€‚ã“れらã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ã¦ã€ãƒ‘ッケージåã‚„Beanåãªã©ã€æ§˜ã€…ãªã‚‚ã®ã‚’カスタマイズã§ãã¾ã™ã€‚\fIJAX\-WS\fRãŠã‚ˆã³\fIJAXB\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®è©³ç´°ã¯ã€
+https://jax\-ws\&.dev\&.java\&.net/nonav/2\&.1\&.1/docs/customizations\&.htmlã®JAXBタブをå‚ç…§ã—ã¦ãã ã•ã„
+.SH "éžæ¨™æº–オプション"
 .PP
 \-XadditionalHeaders
 .RS 4
-¥ê¥¯¥¨¥¹¥È¤Þ¤¿¤Ï¥ì¥¹¥Ý¥ó¥¹¡¦¥á¥Ã¥»¡¼¥¸¤Ë¥Ð¥¤¥ó¥É¤µ¤ì¤Ê¤¤¥Ø¥Ã¥À¡¼¤òJava¥á¥½¥Ã¥É¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¥Þ¥Ã¥×¤·¤Þ¤¹
+リクエストã¾ãŸã¯ãƒ¬ã‚¹ãƒãƒ³ã‚¹ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ãƒã‚¤ãƒ³ãƒ‰ã•ã‚Œãªã„ヘッダーをJavaメソッドã®ãƒ‘ラメータã«ãƒžãƒƒãƒ—ã—ã¾ã™
 .RE
 .PP
 \-Xauthfile \fIfile\fR
 .RS 4
-ǧ¾Ú¾ðÊó¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ëWSDL URI¤Ç¤¹¡£¤³¤ÎURI¤Î·Á¼°¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
+èªè¨¼æƒ…報をå«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹WSDL URIã§ã™ã€‚ã“ã®URIã®å½¢å¼ã¯æ¬¡ã®ã¨ãŠã‚Šã§ã™ã€‚
 .sp
 http://\fIuser\-name\fR:\fIpassword\fR@\fIhost\-name\fR/\fIweb\-service\-name\fR>?wsdl
 .RE
 .PP
 \-Xdebug
 .RS 4
-¥Ç¥Ð¥Ã¥°¾ðÊó¤ò½ÐÎϤ·¤Þ¤¹
+デãƒãƒƒã‚°æƒ…報を出力ã—ã¾ã™
 .RE
 .PP
 \-Xno\-addressing\-databinding
 .RS 4
-W3C EndpointReferenceType¤ÈJava¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+W3C EndpointReferenceTypeã¨Javaã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ã‚’有効ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-Xnocompile
 .RS 4
-À¸À®¤µ¤ì¤¿Java¥Õ¥¡¥¤¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤»¤ó
+生æˆã•ã‚ŒãŸJavaファイルをコンパイルã—ã¾ã›ã‚“
 .RE
-.SH "Îã"
+.SH "例"
 .PP
-¼¡¤ÎÎã¤Ç¤Ï¡¢Java¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÀ¸À®¤·¡¢\fIhttp://stockquote\&.example\&.com/quote?wsdl\fR¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Æ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+次ã®ä¾‹ã§ã¯ã€Javaアーティファクトを生æˆã—ã€\fIhttp://stockquote\&.example\&.com/quote?wsdl\fRをインãƒãƒ¼ãƒˆã—ã¦ã‚¢ãƒ¼ãƒ†ã‚£ãƒ•ã‚¡ã‚¯ãƒˆã‚’コンパイルã—ã¾ã™ã€‚
 .sp
 .if n \{\
 .RS 4
@@ -279,7 +279,7 @@
 .if n \{\
 .RE
 .\}
-.SH "´ØÏ¢¹àÌÜ"
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -300,8 +300,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤Î
-Wsimport Ant Task¥Ú¡¼¥¸¤ÎTools¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®
+Wsimport Ant Taskページã®Toolsタブ
 .RE
 .sp
 .RS 4
@@ -312,8 +312,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.html¤Î
-Catalog Support¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/catalog\-support\&.htmlã®
+Catalog Supportページã®Users Guideタブ
 .RE
 .sp
 .RS 4
@@ -324,8 +324,8 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.html¤Î
-WSDL Customization¥Ú¡¼¥¸¤ÎUsers Guide¥¿¥Ö
+http://jax\-ws\&.java\&.net/nonav/2\&.1\&.1/docs/wsimportant\&.htmlã®
+WSDL Customizationページã®Users Guideタブ
 .RE
 .br
 'pl 8.5i
--- a/jdk/src/solaris/doc/sun/man/man1/ja/xjc.1	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/src/solaris/doc/sun/man/man1/ja/xjc.1	Wed Jul 05 20:32:21 2017 +0200
@@ -2,10 +2,10 @@
 .\" Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
 .\" Title: xjc
 .\" Language: English
-.\" Date: 2013ǯ11·î21Æü
-.\" SectDesc: Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë
+.\" Date: 2013年11月21日
+.\" SectDesc: Java Webサービス・ツール
 .\" Software: JDK 8
-.\" Arch: ÈÆÍÑ
+.\" Arch: 汎用
 .\"
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
@@ -28,7 +28,7 @@
 .\" questions.
 .\"
 .pl 99999
-.TH "xjc" "1" "2013ǯ11·î21Æü" "JDK 8" "Java Web¥µ¡¼¥Ó¥¹¡¦¥Ä¡¼¥ë"
+.TH "xjc" "1" "2013年11月21日" "JDK 8" "Java Webサービス・ツール"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -49,8 +49,8 @@
 .\" * MAIN CONTENT STARTS HERE *
 .\" -----------------------------------------------------------------
 .SH "NAME"
-xjc \- XML¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò´°Á´Ãí¼áÉÕ¤­¤ÎJava¥¯¥é¥¹¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
-.SH "³µÍ×"
+xjc \- XMLスキーマ・ファイルを完全注釈付ãã®Javaクラスã«ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
+.SH "概è¦"
 .sp
 .if n \{\
 .RS 4
@@ -64,23 +64,23 @@
 .PP
 \fIoptions\fR
 .RS 4
-¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¡£¥ª¥×¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+コマンドライン・オプション。オプションをå‚ç…§ã—ã¦ãã ã•ã„。
 .RE
 .PP
 schema \fIfile/URL/dir/jar \&.\&.\&.\fR
 .RS 4
-XML¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£\fIdir\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£\fIjar\fR¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fI/META\-INF/sun\-jaxb\&.episode\fR¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡£
+XMLスキーマ・ファイルã®å ´æ‰€ã€‚\fIdir\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚\fIjar\fRãŒæŒ‡å®šã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fI/META\-INF/sun\-jaxb\&.episode\fRãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚³ãƒ³ãƒ‘イルã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-b \fIbindinfo\fR
 .RS 4
-¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¾ì½ê¡£
+ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®å ´æ‰€ã€‚
 .RE
-.SH "ÀâÌÀ"
+.SH "説明"
 .PP
-¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Îbin¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ëŬÀÚ¤Ê\fIxjc\fR¥·¥§¥ë¡¦¥¹¥¯¥ê¥×¥È¤ò»ÈÍѤ·¤Æ¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤òµ¯Æ°¤·¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ò¼Â¹Ô¤¹¤ëAnt¥¿¥¹¥¯¤â¤¢¤ê¤Þ¤¹¡£http://jaxb\&.java\&.net/nonav/2\&.1\&.3/docs/xjcTask\&.html¤Î
-Using the XJC with Ant¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
-.SH "¥ª¥×¥·¥ç¥ó"
+プラットフォームã®binディレクトリã«ã‚ã‚‹é©åˆ‡ãª\fIxjc\fRシェル・スクリプトを使用ã—ã¦ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラを起動ã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラを実行ã™ã‚‹Antタスクもã‚ã‚Šã¾ã™ã€‚http://jaxb\&.java\&.net/nonav/2\&.1\&.3/docs/xjcTask\&.htmlã®
+Using the XJC with Antã‚’å‚ç…§ã—ã¦ãã ã•ã„
+.SH "オプション"
 .sp
 .RS 4
 .ie n \{\
@@ -90,7 +90,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èóɸ½à¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+éžæ¨™æº–オプションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .sp
 .RS 4
@@ -101,167 +101,167 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ションもå‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-nv
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥½¡¼¥¹¡¦¥¹¥­¡¼¥Þ¤ò½èÍý¤¹¤ëÁ°¤Ë¸·Ì©¤Ê¸¡¾Ú¤ò¼Â¹Ô¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¸·Ì©¤Ê¥¹¥­¡¼¥Þ¸¡¾Ú¤«Ìµ¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤¬¸¡¾Ú¤ò°ìÀڼ¹Ԥ·¤Ê¤¤¤È¤¤¤¦¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤è¤ê¸·Ì©¤Ç¤Ê¤¤¸¡¾Ú¤ò¼Â¹Ô¤¹¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€ã‚½ãƒ¼ã‚¹ãƒ»ã‚¹ã‚­ãƒ¼ãƒžã‚’処ç†ã™ã‚‹å‰ã«åŽ³å¯†ãªæ¤œè¨¼ã‚’実行ã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€åŽ³å¯†ãªã‚¹ã‚­ãƒ¼ãƒžæ¤œè¨¼ã‹ç„¡åŠ¹ã«ãªã‚Šã¾ã™ã€‚ã“ã‚Œã¯ã€ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラãŒæ¤œè¨¼ã‚’一切実行ã—ãªã„ã¨ã„ã†ã“ã¨ã§ã¯ã‚ã‚Šã¾ã›ã‚“。より厳密ã§ãªã„検証を実行ã™ã‚‹ã¨ã„ã†ã“ã¨ã§ã™ã€‚
 .RE
 .PP
 \-extension
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢JAXB»ÅÍͤÎCompatibility¤Î¾Ï¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¥ë¡¼¥ë¤ò¸·Ì©¤Ë¶¯À©¤·¤Þ¤¹¡£ÉÕÏ¿E\&.2¤Ë¤Ï¡¢JAXB v1\&.0¤Ç´°Á´¤Ë¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤°ìÏ¢¤ÎW3C XML¥¹¥­¡¼¥Þµ¡Ç½¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¡¢¤³¤Î¥¹¥¤¥Ã¥Á¤ÇÍ­¸ú¤Ë¤Ê¤ë\fI\-extension\fR¥â¡¼¥É¤Ç¤½¤ì¤é¤Îµ¡Ç½¤¬»ÈÍѤǤ­¤ë¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸·Ì©¤Ê¥â¡¼¥É¤Ç¤Ï¡¢»ÅÍͤËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥«¥¹¥¿¥Þ¥¤¥º¤Î¤ß¤¬»ÈÍѤǤ­¤Þ¤¹¡£\fI\-extension\fR¥¹¥¤¥Ã¥Á¤ò»ØÄꤹ¤ì¤Ð¡¢JAXB Vendor Extension¤ò»ÈÍѤǤ­¤Þ¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€JAXB仕様ã®Compatibilityã®ç« ã§èª¬æ˜Žã•ã‚Œã¦ã„るルールを厳密ã«å¼·åˆ¶ã—ã¾ã™ã€‚付録E\&.2ã«ã¯ã€JAXB v1\&.0ã§å®Œå…¨ã«ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„一連ã®W3C XMLスキーマ機能ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã™ã€‚å ´åˆã«ã‚ˆã£ã¦ã¯ã€ã“ã®ã‚¹ã‚¤ãƒƒãƒã§æœ‰åŠ¹ã«ãªã‚‹\fI\-extension\fRモードã§ãれらã®æ©Ÿèƒ½ãŒä½¿ç”¨ã§ãã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ã¾ãŸã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®åŽ³å¯†ãªãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€ä»•æ§˜ã«å®šç¾©ã•ã‚Œã¦ã„ã‚‹ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã®ã¿ãŒä½¿ç”¨ã§ãã¾ã™ã€‚\fI\-extension\fRスイッãƒã‚’指定ã™ã‚Œã°ã€JAXB Vendor Extensionを使用ã§ãã¾ã™ã€‚
 .RE
 .PP
 \-b \fIfile\fR
 .RS 4
-½èÍý¤¹¤ë³°Éô¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò1¤Ä¤Þ¤¿¤ÏÊ£¿ô»ØÄꤷ¤Þ¤¹¡£¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤´¤È¤Ë\fI\-b\fR¥¹¥¤¥Ã¥Á¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£³°Éô¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Î¹½Ê¸¤Ï½ÀÆð¤Ç¤¹¡£Ê£¿ô¤Î¥¹¥­¡¼¥Þ¤Î¥«¥¹¥¿¥Þ¥¤¥º¤¬´Þ¤Þ¤ì¤ë1¤Ä¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤¿¤ê¡¢¤½¤ì¤é¤Î¥«¥¹¥¿¥Þ¥¤¥º¤òÊ£¿ô¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤·¤¿¤ê¤Ç¤­¤Þ¤¹¡£¼¡¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings123\&.xjb\fR
-\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings1\&.xjb \-b bindings2\&.xjb \-b bindings3\&.xjb\fR¤Þ¤¿¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ë¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤È¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë½çÈÖ¤ÏǤ°Õ¤Ç¤¹¡£
+処ç†ã™ã‚‹å¤–部ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’1ã¤ã¾ãŸã¯è¤‡æ•°æŒ‡å®šã—ã¾ã™ã€‚ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã”ã¨ã«\fI\-b\fRスイッãƒã‚’指定ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚外部ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æ–‡ã¯æŸ”軟ã§ã™ã€‚複数ã®ã‚¹ã‚­ãƒ¼ãƒžã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºãŒå«ã¾ã‚Œã‚‹1ã¤ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’使用ã—ãŸã‚Šã€ãれらã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã‚’複数ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«åˆ†å‰²ã—ãŸã‚Šã§ãã¾ã™ã€‚次ã«ä¾‹ã‚’示ã—ã¾ã™ã€‚\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings123\&.xjb\fR
+\fIxjc schema1\&.xsd schema2\&.xsd schema3\&.xsd \-b bindings1\&.xjb \-b bindings2\&.xjb \-b bindings3\&.xjb\fRã¾ãŸã€ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã«ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã¨ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã™ã‚‹é †ç•ªã¯ä»»æ„ã§ã™ã€‚
 .RE
 .PP
 \-d \fIdir\fR
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢Java¥³¥ó¥Æ¥ó¥Ä¡¦¥¯¥é¥¹¤ò¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÀ¸À®¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢ÂåÂؽÐÎϥǥ£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£½ÐÎϥǥ£¥ì¥¯¥È¥ê¤Ï¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ç¤ÏºîÀ®¤µ¤ì¤Þ¤»¤ó¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€Javaコンテンツ・クラスをç¾åœ¨ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ç”Ÿæˆã—ã¾ã™ã€‚ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€ä»£æ›¿å‡ºåŠ›ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’指定ã§ãã¾ã™ã€‚出力ディレクトリã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã§ã¯ä½œæˆã•ã‚Œã¾ã›ã‚“。
 .RE
 .PP
 \-p \fIpkg\fR
 .RS 4
-¤³¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¡¦¥ª¥×¥·¥ç¥ó¤Ç¥¿¡¼¥²¥Ã¥È¡¦¥Ñ¥Ã¥±¡¼¥¸¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¤½¤Î»ØÄêÆâÍƤϡ¢¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ËÂФ¹¤ë¤¹¤Ù¤Æ¤Î¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥«¥¹¥¿¥Þ¥¤¥º¤ä¡¢»ÅÍͤǵ¬Äꤵ¤ì¤Æ¤¤¤ë¥Ç¥Õ¥©¥ë¥È¤Î¥Ñ¥Ã¥±¡¼¥¸Ì¾¥¢¥ë¥´¥ê¥º¥à¤è¤ê¤âÍ¥À褵¤ì¤Þ¤¹¡£
+ã“ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ»ã‚ªãƒ—ションã§ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒ‘ッケージを指定ã—ãŸå ´åˆã€ãã®æŒ‡å®šå†…容ã¯ã€ãƒ‘ッケージåã«å¯¾ã™ã‚‹ã™ã¹ã¦ã®ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã‚„ã€ä»•æ§˜ã§è¦å®šã•ã‚Œã¦ã„るデフォルトã®ãƒ‘ッケージåアルゴリズムよりも優先ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-httpproxy \fIproxy\fR
 .RS 4
-\fI[user[:password]@]proxyHost[:proxyPort]\fR·Á¼°¤ÇHTTP¤Þ¤¿¤ÏHTTPS¥×¥í¥­¥·¤ò»ØÄꤷ¤Þ¤¹¡£¸Å¤¤\fI\-host\fR¤ª¤è¤Ó\fI\-port\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢²¼°Ì¸ß´¹À­¤Î¤¿¤á¤Ë°ú¤­Â³¤­RI¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¤¬¡¢Èó¿ä¾©¤È¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢top¥³¥Þ¥ó¥É¤ò»ÈÍѤ¹¤ë¾¤Î¥æ¡¼¥¶¡¼¤¬É½¼¨¤Ç¤­¤ë°ú¿ô¤Ç¤¹¡£¥»¥­¥å¥ê¥Æ¥£¤ò¹â¤á¤ë¤Ë¤Ï¡¢\fI\-httpproxyfile\fR¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+\fI[user[:password]@]proxyHost[:proxyPort]\fRå½¢å¼ã§HTTPã¾ãŸã¯HTTPSプロキシを指定ã—ã¾ã™ã€‚å¤ã„\fI\-host\fRãŠã‚ˆã³\fI\-port\fRオプションã¯ã€ä¸‹ä½äº’æ›æ€§ã®ãŸã‚ã«å¼•ã続ãRIã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ãŒã€éžæŽ¨å¥¨ã¨ãªã‚Šã¾ã—ãŸã€‚ã“ã®ã‚ªãƒ—ションã§æŒ‡å®šã•ã‚ŒãŸãƒ‘スワードã¯ã€topコマンドを使用ã™ã‚‹ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¡¨ç¤ºã§ãる引数ã§ã™ã€‚セキュリティを高ã‚ã‚‹ã«ã¯ã€\fI\-httpproxyfile\fRを使用ã—ã¦ãã ã•ã„。
 .RE
 .PP
 \-httpproxyfile file
 .RS 4
-¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢HTTP¤Þ¤¿¤ÏHTTPS¥×¥í¥­¥·¤ò»ØÄꤷ¤Þ¤¹¡£·Á¼°¤Ï\fI\-httpproxy\fR¥ª¥×¥·¥ç¥ó¤ÈƱ¤¸¤Ç¤¹¤¬¡¢¤³¤Î¥Õ¥¡¥¤¥ëÆâ¤Ë»ØÄꤵ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ò¾¤Î¥æ¡¼¥¶¡¼¤¬É½¼¨¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+ファイルを使用ã—ã¦ã€HTTPã¾ãŸã¯HTTPSプロキシを指定ã—ã¾ã™ã€‚å½¢å¼ã¯\fI\-httpproxy\fRオプションã¨åŒã˜ã§ã™ãŒã€ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«å†…ã«æŒ‡å®šã•ã‚ŒãŸãƒ‘スワードを他ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¡¨ç¤ºã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .RE
 .PP
 \-classpath arg
 .RS 4
-\fIjxb:javaType\fR¤ª¤è¤Óxjc:\fIsuperClass\fR¥«¥¹¥¿¥Þ¥¤¥º¤¬»ÈÍѤ¹¤ë¥¯¥é¥¤¥¢¥ó¥È¡¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¯¥é¥¹¡¦¥Õ¥¡¥¤¥ë¤Î¸¡º÷¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡£
+\fIjxb:javaType\fRãŠã‚ˆã³xjc:\fIsuperClass\fRカスタマイズãŒä½¿ç”¨ã™ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆãƒ»ã‚¢ãƒ—リケーションã®ã‚¯ãƒ©ã‚¹ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã®æ¤œç´¢å ´æ‰€ã‚’指定ã—ã¾ã™ã€‚
 .RE
 .PP
 \-catalog file
 .RS 4
-³°Éô¥¨¥ó¥Æ¥£¥Æ¥£»²¾È¤ò²ò·è¤¹¤ë¥«¥¿¥í¥°¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£TR9401¡¢XCatalog¤ª¤è¤ÓOASIS XML Catalog¤Î³Æ·Á¼°¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¡£http://xerces\&.apache\&.org/xml\-commons/components/resolver/resolver\-article\&.html¤Î
-XML Entity and URI Resolvers¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤
+外部エンティティå‚照を解決ã™ã‚‹ã‚«ã‚¿ãƒ­ã‚°ãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚TR9401ã€XCatalogãŠã‚ˆã³OASIS XML Catalogã®å„å½¢å¼ãŒã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ã€‚http://xerces\&.apache\&.org/xml\-commons/components/resolver/resolver\-article\&.htmlã®
+XML Entity and URI Resolversã‚’å‚ç…§ã—ã¦ãã ã•ã„
 .RE
 .PP
 \-readOnly
 .RS 4
-¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤Ï¡¢À¸À®¤¹¤ëJava¥½¡¼¥¹¡¦¥Õ¥¡¥¤¥ë¤ò½ñ¹þ¤ß¤«¤éÊݸ¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢XJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ÏÀ¸À®¤µ¤ì¤ëJava¥½¡¼¥¹¤ò¶¯À©Åª¤ËÆɼè¤êÀìÍѤˤ·¤Þ¤¹¡£
+デフォルトã§ã¯ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ã€ç”Ÿæˆã™ã‚‹Javaソース・ファイルを書込ã¿ã‹ã‚‰ä¿è­·ã—ã¾ã›ã‚“。ã“ã®ã‚ªãƒ—ションを使用ã™ã‚‹ã¨ã€XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã¯ç”Ÿæˆã•ã‚Œã‚‹Javaソースを強制的ã«èª­å–り専用ã«ã—ã¾ã™ã€‚
 .RE
 .PP
 \-npa
 .RS 4
-\fI**/package\-info\&.java\fR¤Ø¤Î¥Ñ¥Ã¥±¡¼¥¸¡¦¥ì¥Ù¥ë¤ÎÃí¼á¤ÎÀ¸À®¤òÍÞÀ©¤·¤Þ¤¹¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ò»ÈÍѤ·¤ÆÀ¸À®¤¹¤ë¥³¡¼¥É¤Ç¤Ï¡¢¤³¤ì¤é¤ÎÃí¼á¤¬Â¾¤ÎÀ¸À®ºÑ¥¯¥é¥¹¤ËÆâÉô²½¤µ¤ì¤Þ¤¹¡£
+\fI**/package\-info\&.java\fRã¸ã®ãƒ‘ッケージ・レベルã®æ³¨é‡ˆã®ç”Ÿæˆã‚’抑制ã—ã¾ã™ã€‚ã“ã®ã‚¹ã‚¤ãƒƒãƒã‚’使用ã—ã¦ç”Ÿæˆã™ã‚‹ã‚³ãƒ¼ãƒ‰ã§ã¯ã€ã“れらã®æ³¨é‡ˆãŒä»–ã®ç”Ÿæˆæ¸ˆã‚¯ãƒ©ã‚¹ã«å†…部化ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-no\-header
 .RS 4
-¿¾¯¤Î¥á¥â¤È¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤à¥Õ¥¡¥¤¥ë¡¦¥Ø¥Ã¥À¡¼¡¦¥³¥á¥ó¥È¤ÎÀ¸À®¤òÍÞÀ©¤·¤Þ¤¹¡£¤³¤ì¤ò»ÈÍѤ¹¤ë¤È¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤È\fIdiff\fR¥³¥Þ¥ó¥É¤È¤Î¸ß´¹À­¤¬¤è¤ê¶¯¤¯¤Ê¤ê¤Þ¤¹¡£
+多少ã®ãƒ¡ãƒ¢ã¨ã‚¿ã‚¤ãƒ ã‚¹ã‚¿ãƒ³ãƒ—ã‚’å«ã‚€ãƒ•ã‚¡ã‚¤ãƒ«ãƒ»ãƒ˜ãƒƒãƒ€ãƒ¼ãƒ»ã‚³ãƒ¡ãƒ³ãƒˆã®ç”Ÿæˆã‚’抑制ã—ã¾ã™ã€‚ã“れを使用ã™ã‚‹ã¨ã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã¨\fIdiff\fRコマンドã¨ã®äº’æ›æ€§ãŒã‚ˆã‚Šå¼·ããªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-target 2\&.0
 .RS 4
-JAXB 2\&.1µ¡Ç½¤Ë°Í¸¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¡¢À¸À®¤µ¤ì¤¿¥³¡¼¥É¤òJAXB 2\&.0¥é¥ó¥¿¥¤¥à´Ä¶­(Java SE 6¤Ê¤É)¤Ç¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+JAXB 2\&.1機能ã«ä¾å­˜ã™ã‚‹ã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ãªã„よã†ã«ã—ã¾ã™ã€‚ã“ã‚Œã«ã‚ˆã‚Šã€ç”Ÿæˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã‚’JAXB 2\&.0ランタイム環境(Java SE 6ãªã©)ã§å®Ÿè¡Œã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-xmlschema
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òW3C XML¥¹¥­¡¼¥Þ¤È¤·¤Æ°·¤¤¤Þ¤¹(¥Ç¥Õ¥©¥ë¥È)¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢ÆþÎÏ¥¹¥­¡¼¥Þ¤ÏW3C XML¥¹¥­¡¼¥Þ¤ÈƱ¤¸¤è¤¦¤Ë°·¤ï¤ì¤Þ¤¹¡£
+入力スキーマをW3C XMLスキーマã¨ã—ã¦æ‰±ã„ã¾ã™(デフォルト)。ã“ã®ã‚¹ã‚¤ãƒƒãƒã‚’指定ã—ãªã„å ´åˆã€å…¥åŠ›ã‚¹ã‚­ãƒ¼ãƒžã¯W3C XMLスキーマã¨åŒã˜ã‚ˆã†ã«æ‰±ã‚ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-relaxing
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òRELAX NG¤È¤·¤Æ°·¤¤¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをRELAX NGã¨ã—ã¦æ‰±ã„ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-relaxing\-compact
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òRELAX NG°µ½Ì¹½Ê¸¤È¤·¤Æ½èÍý¤·¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをRELAX NG圧縮構文ã¨ã—ã¦å‡¦ç†ã—ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-dtd
 .RS 4
-ÆþÎÏ¥¹¥­¡¼¥Þ¤òXML DTD¤È¤·¤Æ°·¤¤¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£RELAX NG¥¹¥­¡¼¥Þ¤Î¥µ¥Ý¡¼¥È¤ÏJAXB Vendor Extension¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+入力スキーマをXML DTDã¨ã—ã¦æ‰±ã„ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。RELAX NGスキーマã®ã‚µãƒãƒ¼ãƒˆã¯JAXB Vendor Extensionã¨ã—ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
 .RE
 .PP
 \-wsdl
 .RS 4
-ÆþÎϤòWSDL¤È¤·¤Æ°·¤¤¡¢¤½¤ÎÆâÉô¤Î¥¹¥­¡¼¥Þ¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹(»î¸³Åª¤ª¤è¤Ó̤¥µ¥Ý¡¼¥È)¡£
+入力をWSDLã¨ã—ã¦æ‰±ã„ã€ãã®å†…部ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’コンパイルã—ã¾ã™(試験的ãŠã‚ˆã³æœªã‚µãƒãƒ¼ãƒˆ)。
 .RE
 .PP
 \-quiet
 .RS 4
-¿ÊĽ¾ðÊó¤ä·Ù¹ð¤Ê¤É¡¢¥³¥ó¥Ñ¥¤¥é¤Î½ÐÎϤòÍÞÀ©¤·¤Þ¤¹¡£
+進æ—情報や警告ãªã©ã€ã‚³ãƒ³ãƒ‘イラã®å‡ºåŠ›ã‚’抑制ã—ã¾ã™ã€‚
 .RE
 .PP
 \-verbose
 .RS 4
-¾ðÊó¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤¿¤êÆÃÄê¤Î¥¨¥é¡¼È¯À¸»þ¤Ë¥¹¥¿¥Ã¥¯¡¦¥È¥ì¡¼¥¹¤òɽ¼¨¤·¤¿¤ê¤¹¤ë¤Ê¤É¡¢¤­¤ï¤á¤Æ¾éĹ¤Ë¤Ê¤ê¤Þ¤¹¡£
+情報メッセージを出力ã—ãŸã‚Šç‰¹å®šã®ã‚¨ãƒ©ãƒ¼ç™ºç”Ÿæ™‚ã«ã‚¹ã‚¿ãƒƒã‚¯ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’表示ã—ãŸã‚Šã™ã‚‹ãªã©ã€ãã‚ã‚ã¦å†—é•·ã«ãªã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-help
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥¤¥Ã¥Á¤Î¥µ¥Þ¥ê¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラ・スイッãƒã®ã‚µãƒžãƒªãƒ¼ã‚’表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \-version
 .RS 4
-¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£
+コンパイラã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³æƒ…報を表示ã—ã¾ã™ã€‚
 .RE
 .PP
 \fIschema file/URL/dir\fR
 .RS 4
-¥³¥ó¥Ñ¥¤¥ëÂоݤȤʤë1¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄꤹ¤ë¾ì¹ç¡¢\fIxjc\fR¥³¥Þ¥ó¥É¤Ï¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤ò¥¹¥­¥ã¥ó¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡£
+コンパイル対象ã¨ãªã‚‹1ã¤ã¾ãŸã¯è¤‡æ•°ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’指定ã—ã¾ã™ã€‚ディレクトリを指定ã™ã‚‹å ´åˆã€\fIxjc\fRコマンドã¯ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã‚’スキャンã—ã¦ã‚³ãƒ³ãƒ‘イルã—ã¾ã™ã€‚
 .RE
-.SS "Èóɸ½à¥ª¥×¥·¥ç¥ó"
+.SS "éžæ¨™æº–オプション"
 .PP
 \-XLocator
 .RS 4
-À¸À®¤µ¤ì¤¿¥³¡¼¥É¤Ç¤Ï¡¢ÈóÀ°Î󲽤θå¤ËJava Bean¥¤¥ó¥¹¥¿¥ó¥¹¤Ë´Þ¤Þ¤ì¤ë¥½¡¼¥¹XML¤Ë´Ø¤¹¤ëSAX Locator¾ðÊ󤬸ø³«¤µ¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã§ã¯ã€éžæ•´åˆ—化ã®å¾Œã«Java Beanインスタンスã«å«ã¾ã‚Œã‚‹ã‚½ãƒ¼ã‚¹XMLã«é–¢ã™ã‚‹SAX Locator情報ãŒå…¬é–‹ã•ã‚Œã¾ã™ã€‚
 .RE
 .PP
 \-Xsync\-methods
 .RS 4
-À¸À®¤µ¤ì¤¿¤¹¤Ù¤Æ¤Î¥á¥½¥Ã¥É¡¦¥·¥°¥Ë¥Á¥ã¤Ë\fIsynchronized\fR¥­¡¼¥ï¡¼¥É¤¬´Þ¤á¤é¤ì¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ¡ã‚½ãƒƒãƒ‰ãƒ»ã‚·ã‚°ãƒ‹ãƒãƒ£ã«\fIsynchronized\fRキーワードãŒå«ã‚られã¾ã™ã€‚
 .RE
 .PP
 \-mark\-generated
 .RS 4
-À¸À®¤µ¤ì¤¿¥³¡¼¥É¤ËÃí¼á\fI@javax\&.annotation\&.Generated\fR¤òÉÕ¤±¤Þ¤¹¡£
+生æˆã•ã‚ŒãŸã‚³ãƒ¼ãƒ‰ã«æ³¨é‡ˆ\fI@javax\&.annotation\&.Generated\fRを付ã‘ã¾ã™ã€‚
 .RE
 .PP
 \-episode file
 .RS 4
-¥³¥ó¥Ñ¥¤¥ë¤´¤È¤Ë»ØÄꤵ¤ì¤¿¥¨¥Ô¥½¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£
+コンパイルã”ã¨ã«æŒ‡å®šã•ã‚ŒãŸã‚¨ãƒ”ソード・ファイルを生æˆã—ã¾ã™ã€‚
 .RE
-.SS "Èó¿ä¾©¤Çºï½ü¤µ¤ì¤¿¥ª¥×¥·¥ç¥ó"
+.SS "éžæŽ¨å¥¨ã§å‰Šé™¤ã•ã‚ŒãŸã‚ªãƒ—ション"
 .PP
 \-host & \-port
 .RS 4
-¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï\fI\-httpproxy\fR¥ª¥×¥·¥ç¥ó¤ÇÃÖ¤­´¹¤¨¤é¤ì¤Þ¤·¤¿¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢²¼°Ì¸ß´¹À­¤ò³ÎÊݤ¹¤ë¤¿¤á¤Ë¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹¤¬¡¢¥É¥­¥å¥á¥ó¥È¤Ë¤Ïµ­ºÜ¤µ¤ì¤º¡¢¾­Íè¤Î¥ê¥ê¡¼¥¹¤Çºï½ü¤µ¤ì¤ë²ÄǽÀ­¤â¤¢¤ê¤Þ¤¹¡£
+ã“れらã®ã‚ªãƒ—ションã¯\fI\-httpproxy\fRオプションã§ç½®ãæ›ãˆã‚‰ã‚Œã¾ã—ãŸã€‚ã“れらã®ã‚ªãƒ—ションã¯ã€ä¸‹ä½äº’æ›æ€§ã‚’確ä¿ã™ã‚‹ãŸã‚ã«ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¾ã™ãŒã€ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã«ã¯è¨˜è¼‰ã•ã‚Œãšã€å°†æ¥ã®ãƒªãƒªãƒ¼ã‚¹ã§å‰Šé™¤ã•ã‚Œã‚‹å¯èƒ½æ€§ã‚‚ã‚ã‚Šã¾ã™ã€‚
 .RE
 .PP
 \-use\-runtime
 .RS 4
-JAXB 2\&.0»ÅÍͤǤϡ¢°Ü¿¢À­¤Î¤¢¤ë¥é¥ó¥¿¥¤¥à´Ä¶­¤¬ÄêµÁ¤µ¤ì¤¿¤¿¤á¡¢JAXB RI¤¬\fI**/impl/runtime \fR¥Ñ¥Ã¥±¡¼¥¸¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¤¿¤á¡¢¤³¤Î¥¹¥¤¥Ã¥Á¤ÏÉÔÍפȤʤꡢºï½ü¤µ¤ì¤Þ¤·¤¿¡£
+JAXB 2\&.0仕様ã§ã¯ã€ç§»æ¤æ€§ã®ã‚るランタイム環境ãŒå®šç¾©ã•ã‚ŒãŸãŸã‚ã€JAXB RIãŒ\fI**/impl/runtime \fRパッケージを生æˆã™ã‚‹å¿…è¦ãŒãªããªã‚Šã¾ã—ãŸã€‚ã“ã®ãŸã‚ã€ã“ã®ã‚¹ã‚¤ãƒƒãƒã¯ä¸è¦ã¨ãªã‚Šã€å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚
 .RE
 .PP
 \-source
 .RS 4
-\fI\-source\fR¸ß´¹À­¥¹¥¤¥Ã¥Á¤Ï¡¢JAXB 2\&.0¤ÎºÇ½é¤ÎEarly AccessÈǤÇƳÆþ¤µ¤ì¤Þ¤·¤¿¡£¤³¤Î¥¹¥¤¥Ã¥Á¤ÏJAXB 2\&.0¤Îº£¸å¤Î¥ê¥ê¡¼¥¹¤«¤éºï½ü¤µ¤ì¤Þ¤¹¡£1\&.0\&.x¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ï¡¢1\&.0\&.x¥³¡¼¥É¡¦¥Ù¡¼¥¹¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
+\fI\-source\fR互æ›æ€§ã‚¹ã‚¤ãƒƒãƒã¯ã€JAXB 2\&.0ã®æœ€åˆã®Early Access版ã§å°Žå…¥ã•ã‚Œã¾ã—ãŸã€‚ã“ã®ã‚¹ã‚¤ãƒƒãƒã¯JAXB 2\&.0ã®ä»Šå¾Œã®ãƒªãƒªãƒ¼ã‚¹ã‹ã‚‰å‰Šé™¤ã•ã‚Œã¾ã™ã€‚1\&.0\&.xコードを生æˆã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€1\&.0\&.xコード・ベースã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’使用ã—ã¦ãã ã•ã„。
 .RE
-.SH "¥³¥ó¥Ñ¥¤¥é¤ÎÀ©¸Â"
+.SH "コンパイラã®åˆ¶é™"
 .PP
-Ä̾ï¤Ï¡¢´ØÏ¢¤¹¤ë¤¹¤Ù¤Æ¤Î¥¹¥­¡¼¥Þ¤ò¡¢Æ±¤¸¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¡¦¥¹¥¤¥Ã¥Á¤ò»ØÄꤷ¤Æ1¤Ä¤Îñ°Ì¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Î¤¬ºÇ¤â°ÂÁ´¤Ç¤¹¡£\fIxjc\fR¥³¥Þ¥ó¥É¤Î¼Â¹Ô»þ¤Ë¤Ï¡¢¼¡¤ÎÀ©¸Â¥ê¥¹¥È¤Ëα°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤é¤ÎÌäÂê¤Î¤Û¤È¤ó¤É¤Ï¡¢\fIxjc\fR¥³¥Þ¥ó¥É¤ò²¿ÅÙ¤«¸Æ¤Ó½Ð¤·¤ÆÊ£¿ô¤Î¥¹¥­¡¼¥Þ¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ë¤Î¤ßÅö¤Æ¤Ï¤Þ¤ê¤Þ¤¹¡£
+通常ã¯ã€é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’ã€åŒã˜ãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラ・スイッãƒã‚’指定ã—ã¦1ã¤ã®å˜ä½ã¨ã—ã¦ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã®ãŒæœ€ã‚‚安全ã§ã™ã€‚\fIxjc\fRコマンドã®å®Ÿè¡Œæ™‚ã«ã¯ã€æ¬¡ã®åˆ¶é™ãƒªã‚¹ãƒˆã«ç•™æ„ã—ã¦ãã ã•ã„。ã“れらã®å•é¡Œã®ã»ã¨ã‚“ã©ã¯ã€\fIxjc\fRコマンドを何度ã‹å‘¼ã³å‡ºã—ã¦è¤‡æ•°ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’コンパイルã™ã‚‹å ´åˆã«ã®ã¿å½“ã¦ã¯ã¾ã‚Šã¾ã™ã€‚
 .PP
-Ê£¿ô¤Î¥¹¥­¡¼¥Þ¤òƱ»þ¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ï¡¢¥¿¡¼¥²¥Ã¥È¤ÎJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ë¼¡¤ÎÍ¥Àè½ç°Ì¤Î¥ë¡¼¥ë¤¬Å¬ÍѤµ¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
+複数ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’åŒæ™‚ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹å ´åˆã¯ã€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã®Javaパッケージåã«æ¬¡ã®å„ªå…ˆé †ä½ã®ãƒ«ãƒ¼ãƒ«ãŒé©ç”¨ã•ã‚Œã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。
 .sp
 .RS 4
 .ie n \{\
@@ -271,7 +271,7 @@
 .sp -1
 .IP "  1." 4.2
 .\}
-\fI\-p\fR¥ª¥×¥·¥ç¥ó¤¬ºÇ¤âÍ¥À褵¤ì¤Þ¤¹¡£
+\fI\-p\fRオプションãŒæœ€ã‚‚優先ã•ã‚Œã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -282,7 +282,7 @@
 .sp -1
 .IP "  2." 4.2
 .\}
-\fIjaxb:package\fR¤Î¥«¥¹¥¿¥Þ¥¤¥º¡£
+\fIjaxb:package\fRã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã€‚
 .RE
 .sp
 .RS 4
@@ -293,7 +293,7 @@
 .sp -1
 .IP "  3." 4.2
 .\}
-\fItargetNamespace\fR¤¬Àë¸À¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢\fIt\fR\fIargetNamespace\fR¤ò»ÅÍͤÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëJava¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¥¢¥ë¥´¥ê¥º¥à¤ËŬÍѤ·¤Þ¤¹¡£
+\fItargetNamespace\fRãŒå®£è¨€ã•ã‚Œã¦ã„ã‚‹å ´åˆã¯ã€\fIt\fR\fIargetNamespace\fRを仕様ã§å®šç¾©ã•ã‚Œã¦ã„ã‚‹Javaパッケージåã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ ã«é©ç”¨ã—ã¾ã™ã€‚
 .RE
 .sp
 .RS 4
@@ -304,15 +304,15 @@
 .sp -1
 .IP "  4." 4.2
 .\}
-\fItargetNamespace\fR¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIgenerated\fR¤È¤¤¤¦Ì¾Á°¤Î¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤¿¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ·¤Þ¤¹¡£
+\fItargetNamespace\fRãŒå®£è¨€ã•ã‚Œã¦ã„ãªã„å ´åˆã¯ã€\fIgenerated\fRã¨ã„ã†åå‰ã®ãƒãƒ¼ãƒ‰ã‚³ãƒ¼ãƒ‰ã•ã‚ŒãŸãƒ‘ッケージを使用ã—ã¾ã™ã€‚
 .RE
 .PP
-1¤Ä¤Î¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤¬Ê£¿ô¤Î\fIjaxb:schemaBindings\fR¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Ê¤¤¤¿¤á¡¢°Û¤Ê¤ëJava¥Ñ¥Ã¥±¡¼¥¸¤Ë¥³¥ó¥Ñ¥¤¥é¤µ¤ì¤ëƱ°ì¥¿¡¼¥²¥Ã¥È¡¦¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤¬2¤Ä¤Î¥¹¥­¡¼¥Þ¤ò»ý¤Ä¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+1ã¤ã®ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒè¤‡æ•°ã®\fIjaxb:schemaBindings\fRã‚’æŒã¤ã“ã¨ã¯ã§ããªã„ãŸã‚ã€ç•°ãªã‚‹Javaパッケージã«ã‚³ãƒ³ãƒ‘イラã•ã‚Œã‚‹åŒä¸€ã‚¿ãƒ¼ã‚²ãƒƒãƒˆãƒ»ãƒãƒ¼ãƒ ã‚¹ãƒšãƒ¼ã‚¹ãŒ2ã¤ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’æŒã¤ã“ã¨ã¯ã§ãã¾ã›ã‚“。
 .PP
-Ʊ¤¸Java¥Ñ¥Ã¥±¡¼¥¸¤Ë¥³¥ó¥Ñ¥¤¥é¤µ¤ì¤ë¥¹¥­¡¼¥Þ¤Ï¤¹¤Ù¤Æ¡¢Æ±»þ¤ËXJC¥Ð¥¤¥ó¥Ç¥£¥ó¥°¡¦¥³¥ó¥Ñ¥¤¥é¤ËÁ÷¿®¤µ¤ì¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ÊÌ¡¹¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢Í½Áۤɤª¤ê¤Ëµ¡Ç½¤·¤Þ¤»¤ó¡£
+åŒã˜Javaパッケージã«ã‚³ãƒ³ãƒ‘イラã•ã‚Œã‚‹ã‚¹ã‚­ãƒ¼ãƒžã¯ã™ã¹ã¦ã€åŒæ™‚ã«XJCãƒã‚¤ãƒ³ãƒ‡ã‚£ãƒ³ã‚°ãƒ»ã‚³ãƒ³ãƒ‘イラã«é€ä¿¡ã•ã‚Œã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚別々ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹ã¨ã€äºˆæƒ³ã©ãŠã‚Šã«æ©Ÿèƒ½ã—ã¾ã›ã‚“。
 .PP
-Ê£¿ô¤Î¥¹¥­¡¼¥Þ¡¦¥Õ¥¡¥¤¥ë¤Ë¤Þ¤¿¤¬¤ëÍ×ÁÇÃÖ´¹¥°¥ë¡¼¥×¤Ï¡¢Æ±»þ¤Ë¥³¥ó¥Ñ¥¤¥ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-.SH "´ØÏ¢¹àÌÜ"
+複数ã®ã‚¹ã‚­ãƒ¼ãƒžãƒ»ãƒ•ã‚¡ã‚¤ãƒ«ã«ã¾ãŸãŒã‚‹è¦ç´ ç½®æ›ã‚°ãƒ«ãƒ¼ãƒ—ã¯ã€åŒæ™‚ã«ã‚³ãƒ³ãƒ‘イルã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
+.SH "関連項目"
 .sp
 .RS 4
 .ie n \{\
@@ -322,7 +322,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/xjc\&.html¤Î
+http://jaxb\&.java\&.net/nonav/2\&.2\&.3u1/docs/xjc\&.htmlã®
 Binding Compiler (xjc)
 .RE
 .sp
@@ -334,7 +334,7 @@
 .sp -1
 .IP \(bu 2.3
 .\}
-http://www\&.oracle\&.com/technetwork/articles/javase/index\-140168\&.html¤Î
+http://www\&.oracle\&.com/technetwork/articles/javase/index\-140168\&.htmlã®
 Java Architecture for XML Binding (JAXB)
 .RE
 .br
--- a/jdk/test/ProblemList.txt	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/ProblemList.txt	Wed Jul 05 20:32:21 2017 +0200
@@ -136,13 +136,6 @@
 
 ############################################################################
 
-# jdk_management
-
-# 8058492
-java/lang/management/ThreadMXBean/FindDeadlocks.java                                      generic-all
-
-############################################################################
-
 # jdk_jmx
 
 # 8030957
@@ -353,9 +346,6 @@
 # 8068645
 com/sun/jdi/CatchPatternTest.sh                                 generic-all
 
-# 8069402
-com/sun/jdi/ConnectedVMs.java					generic-all
-
 # 8067354
 com/sun/jdi/GetLocalVariables4Test.sh				windows-all
 
@@ -380,13 +370,7 @@
 # 8072131
 sun/tools/jmap/heapconfig/JMapHeapConfigTest.java macosx-all
 
-# 8027668
-sun/tools/jstatd/TestJstatdDefaults.java                generic-all
-sun/tools/jstatd/TestJstatdServer.java                  generic-all
-sun/tools/jstatd/TestJstatdPort.java                    generic-all
-sun/tools/jstatd/TestJstatdPortAndServer.java                    generic-all
-
-# 8046285 8027668
+# 8046285
 sun/tools/jstatd/TestJstatdExternalRegistry.java                generic-all
 
 # 6456333
--- a/jdk/test/TEST.ROOT	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/TEST.ROOT	Wed Jul 05 20:32:21 2017 +0200
@@ -20,5 +20,5 @@
 # Group definitions
 groups=TEST.groups [closed/TEST.groups]
 
-# Tests using jtreg 4.1 b10 features
-requiredVersion=4.1 b10
+# Tests using jtreg 4.1 b11 features
+requiredVersion=4.1 b11
--- a/jdk/test/com/sun/jdi/AcceptTimeout.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/AcceptTimeout.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @bug 6198277
  * @summary Test that each ListeningConnector that supports a "timeout" argument will
  *     timeout with TransportTimeoutException
+ * @modules jdk.jdi
  */
 import com.sun.jdi.Bootstrap;
 import com.sun.jdi.connect.Connector;
--- a/jdk/test/com/sun/jdi/AccessSpecifierTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/AccessSpecifierTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g AccessSpecifierTest.java
  *  @run driver AccessSpecifierTest
--- a/jdk/test/com/sun/jdi/AfterThreadDeathTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/AfterThreadDeathTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g AfterThreadDeathTest.java
  *  @run driver AfterThreadDeathTest
--- a/jdk/test/com/sun/jdi/AllLineLocations.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/AllLineLocations.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2000, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *  @author Gordon Hirsch
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g RefTypes.java
  *  @run build AllLineLocations
--- a/jdk/test/com/sun/jdi/ArrayRangeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ArrayRangeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ArrayRangeTest.java
  *  @run driver ArrayRangeTest
--- a/jdk/test/com/sun/jdi/BacktraceFieldTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/BacktraceFieldTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g BacktraceFieldTest.java
  *  @run driver BacktraceFieldTest
--- a/jdk/test/com/sun/jdi/BadHandshakeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/BadHandshakeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,8 @@
  * @summary Check that a bad handshake doesn't cause a debuggee to abort
  * @library /lib/testlibrary
  *
+ * @modules java.management
+ *          jdk.jdi
  * @build jdk.testlibrary.* VMConnection BadHandshakeTest Exit0
  * @run driver BadHandshakeTest
  */
--- a/jdk/test/com/sun/jdi/BreakpointTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/BreakpointTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g BreakpointTest.java
  *  @run driver BreakpointTest
@@ -44,7 +45,7 @@
 // the debuggee, waits a bit, and enables the bkpt again.
 
 class BreakpointTarg {
-    public final static int BKPT_LINE = 54;
+    public final static int BKPT_LINE = 55;
             // LINE NUMBER SENSITIVE
 
     public static long count;
--- a/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ClassLoaderClassesTest.java
  *  @run driver ClassLoaderClassesTest
--- a/jdk/test/com/sun/jdi/ClassesByName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ClassesByName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @author Robert Field
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g HelloWorld.java
  *  @run build ClassesByName
--- a/jdk/test/com/sun/jdi/ClassesByName2Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ClassesByName2Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,8 @@
  *
  *  @author Tim Bell (based on ClassesByName by Robert Field)
  *
+ *  @modules java.corba
+ *           jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ClassesByName2Test.java
  *  @run driver ClassesByName2Test
--- a/jdk/test/com/sun/jdi/CompatibleConnectors.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/CompatibleConnectors.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *
  * This test checks that VirtualMachineManager creates Connectors that
  * are "compatible" those created by 1.4 or earilier releases.
+ * @modules jdk.jdi
  */
 
 import com.sun.jdi.*;
--- a/jdk/test/com/sun/jdi/ConnectedVMs.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ConnectedVMs.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4329140
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g InstTarg.java
  *  @run driver ConnectedVMs Kill
--- a/jdk/test/com/sun/jdi/ConstantPoolInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ConstantPoolInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Swamy Venkataramanappa
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection
  *  @run compile -g ConstantPoolInfo.java
  *  @run driver ConstantPoolInfo
--- a/jdk/test/com/sun/jdi/CountEvent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/CountEvent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetAdapter TargetListener
  *  @run compile -g CountEvent.java
  *  @run driver CountEvent
--- a/jdk/test/com/sun/jdi/CountFilterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/CountFilterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g CountFilterTest.java
  *  @run driver CountFilterTest
--- a/jdk/test/com/sun/jdi/DebuggerThreadTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/DebuggerThreadTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g DebuggerThreadTest.java
  *  @run driver DebuggerThreadTest
--- a/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author jjh
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build  TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g DeleteAllBkptsTest.java
  *  @run driver DeleteAllBkptsTest
--- a/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g DeleteEventRequestsTest.java
  *  @run driver DeleteEventRequestsTest
--- a/jdk/test/com/sun/jdi/DoubleAgentTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/DoubleAgentTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @summary Check that multiple -agentlib statements in command line fails
  *
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibarary.*
  * @build DoubleAgentTest Exit0
  * @run driver DoubleAgentTest
--- a/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Unexpected ClassCastException in ThreadReference.forceEarlyReturn
  *  @author Jim Holmlund
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g EarlyReturnNegativeTest.java
  *  @run driver EarlyReturnNegativeTest
--- a/jdk/test/com/sun/jdi/EarlyReturnTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/EarlyReturnTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
  *
  *  @author Tim Bell (based on MethodExitReturnValuesTest by Jim Holmlund)
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g EarlyReturnTest.java
  *  @run driver EarlyReturnTest
--- a/jdk/test/com/sun/jdi/EnumTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/EnumTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g EnumTest.java
  *  @run driver EnumTest
--- a/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4425852
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build VMConnection
  *  @run compile -g EventQueueDisconnectTest.java
  *  @run driver EventQueueDisconnectTest
--- a/jdk/test/com/sun/jdi/ExceptionEvents.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ExceptionEvents.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection
  *  @run compile -g ExceptionEvents.java
  *
--- a/jdk/test/com/sun/jdi/ExclusiveBind.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ExclusiveBind.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  *          at the same time.
  * @library /lib/testlibrary
  *
+ * @modules java.management
+ *          jdk.jdi
  * @build jdk.testlibrary.* VMConnection ExclusiveBind HelloWorld
  * @run driver ExclusiveBind
  */
--- a/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ExpiredRequestDeletionTest.java
  *  @run driver ExpiredRequestDeletionTest
--- a/jdk/test/com/sun/jdi/FieldWatchpoints.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FieldWatchpoints.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g FieldWatchpoints.java
  *  @run driver FieldWatchpoints
--- a/jdk/test/com/sun/jdi/FilterMatch.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FilterMatch.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field/Jim Holmlund
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g HelloWorld.java
  *  @run driver FilterMatch
--- a/jdk/test/com/sun/jdi/FilterNoMatch.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FilterNoMatch.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field/Jim Holmlund
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g HelloWorld.java
  *  @run driver FilterNoMatch
--- a/jdk/test/com/sun/jdi/FinalLocalsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FinalLocalsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g FinalLocalsTest.java
  *  @run driver FinalLocalsTest
--- a/jdk/test/com/sun/jdi/FinalizerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FinalizerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Test debugger operations in finalize() methods
  *  @author Gordon Hirsch  (modified for HotSpot by tbell & rfield)
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g FinalizerTest.java
  *
--- a/jdk/test/com/sun/jdi/FramesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/FramesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g FramesTest.java
  *  @run driver FramesTest
--- a/jdk/test/com/sun/jdi/GenericsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/GenericsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g GenericsTest.java
  *  @run driver GenericsTest
--- a/jdk/test/com/sun/jdi/GetLocalVariables2Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/GetLocalVariables2Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g GetLocalVariables2Test.java
  *  @run driver GetLocalVariables2Test
--- a/jdk/test/com/sun/jdi/GetUninitializedStringValue.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/GetUninitializedStringValue.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Staffan Larsen
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g GetUninitializedStringValue.java
  *  @run driver GetUninitializedStringValue
--- a/jdk/test/com/sun/jdi/HomeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/HomeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Tim Bell (based on "HomeTest.java" by Eugene I. Latkin)
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g HomeTest.java
  *  @run driver HomeTest
--- a/jdk/test/com/sun/jdi/InstanceFilter.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InstanceFilter.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field/Jim Holmlund
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetAdapter TargetListener
  *  @run compile -g InstanceFilter.java
  *  @run driver InstanceFilter
@@ -104,7 +105,10 @@
             return;
         }
         if (theThis == null) {
-            // This happens when the thread has exited.
+            // This happens when the thread has exited or when a
+            // static method is called. Setting an instance
+            // filter does not prevent this event from being
+            // emitted with a this that is null.
             methodEntryRequest.disable();
             return;
         }
@@ -138,6 +142,10 @@
         EventRequestManager mgr = vm().eventRequestManager();
         methodEntryRequest = mgr.createMethodEntryRequest();
         methodEntryRequest.addInstanceFilter(theInstance);
+        // Thread filter is needed to prevent MethodEntry events
+        // to be emitted by the debugee when a static method
+        // is called on any thread.
+        methodEntryRequest.addThreadFilter(bpe.thread());
         methodEntryRequest.enable();
 
         listenUntilVMDisconnect();
--- a/jdk/test/com/sun/jdi/InstancesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InstancesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Add ReferenceType.getAllInstances () method to JDI.
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g InstancesTest.java
  *  @run driver InstancesTest
--- a/jdk/test/com/sun/jdi/InterfaceMethodsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InterfaceMethodsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  *  @bug 8071657
  *  @summary  JDI: Add support for static and default methods in interfaces
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run build InterfaceMethodsTest
  *  @run driver InterfaceMethodsTest
--- a/jdk/test/com/sun/jdi/InterruptHangTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InterruptHangTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,3 +1,30 @@
+/*
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import com.sun.jdi.*;
+import com.sun.jdi.event.*;
+import com.sun.jdi.request.*;
+
 /**
  *  @test
  *  @bug 6459476
@@ -5,15 +32,13 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g InterruptHangTest.java
  *  @run driver InterruptHangTest
  */
-import com.sun.jdi.*;
-import com.sun.jdi.event.*;
-import com.sun.jdi.request.*;
 
-/*
+/**
  * Debuggee has two threads.  Debugger keeps stepping in
  * the first thread.  The second thread keeps interrupting the first
  * thread.  If a long time goes by with the debugger not getting
--- a/jdk/test/com/sun/jdi/InvokeHangTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InvokeHangTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g InvokeHangTest.java
  *  @run driver InvokeHangTest
--- a/jdk/test/com/sun/jdi/InvokeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/InvokeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build  TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g InvokeTest.java
  *  @run driver InvokeTest
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/com/sun/jdi/InvokeVarArgs.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,97 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/**
+ *  @test
+ *  @bug 8075331
+ *  @summary Verify that we can call varargs methods
+ *  @run build TestScaffold VMConnection TargetAdapter TargetListener
+ *  @run compile -g InvokeVarArgs.java
+ *  @run driver InvokeVarArgs
+ */
+
+import com.sun.jdi.*;
+import com.sun.jdi.event.*;
+import java.util.Arrays;
+
+interface MyInterface {
+}
+
+class SomeClass implements MyInterface {
+}
+
+class InvokeVarArgsTarg {
+
+    public static void main(String args[]) {
+        new InvokeVarArgsTarg().run();
+    }
+
+    SomeClass someClass1 = new SomeClass();
+    SomeClass someClass2 = new SomeClass();
+
+    MyInterface[] array = new MyInterface[]{someClass1, someClass2};
+    SomeClass[] array2 = new SomeClass[]{someClass1, someClass2};
+
+    public void run() {
+        System.out.println("size(array) : " + size(array));
+        System.out.println("size(array2) : " + size(array2));
+    }
+
+    int size(Object... value) {
+        return value.length;
+    }
+}
+
+public class InvokeVarArgs extends TestScaffold {
+
+    public static void main(String args[]) throws Exception {
+        new InvokeVarArgs(args).startTests();
+    }
+
+    InvokeVarArgs(String args[]) throws Exception {
+        super(args);
+    }
+
+    protected void runTests() throws Exception {
+
+        BreakpointEvent bpe = startTo("InvokeVarArgsTarg", "run", "()V");
+        StackFrame frame = bpe.thread().frame(0);
+        ObjectReference targetObj = frame.thisObject();
+        ReferenceType targetType = (ReferenceType) targetObj.type();
+        Value arrayVal = targetObj.getValue(targetType.fieldByName("array"));
+        Value array2Val = targetObj.getValue(targetType.fieldByName("array2"));
+        Method sizeMethod = targetType.methodsByName("size", "([Ljava/lang/Object;)I").get(0);
+
+        IntegerValue size = (IntegerValue) targetObj.invokeMethod(bpe.thread(), sizeMethod, Arrays.asList(new Value[]{arrayVal}), 0);
+        if (size.value() != 2) {
+            throw new Exception("size(array) should be 2, but was " + size.value());
+        }
+
+        size = (IntegerValue) targetObj.invokeMethod(bpe.thread(), sizeMethod, Arrays.asList(new Value[]{array2Val}), 0);
+        if (size.value() != 2) {
+            throw new Exception("size(array2) should be 2, but was " + size.value());
+        }
+
+        listenUntilVMDisconnect();
+    }
+}
--- a/jdk/test/com/sun/jdi/JITDebug.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/JITDebug.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,7 +1,7 @@
 #!/bin/ksh -p
 
 #
-# Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 #   @author     Tim Bell
 #   Based on test/java/awt/TEMPLATE/AutomaticShellTest.sh
 #
+#   @modules jdk.jdi
 #   @run build TestScaffold VMConnection TargetListener TargetAdapter
 #   @run compile -g JITDebug.java
 #   @run shell JITDebug.sh
--- a/jdk/test/com/sun/jdi/Java_gTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/Java_gTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g Java_gTest.java
  *  @run driver Java_gTest
--- a/jdk/test/com/sun/jdi/LambdaBreakpointTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LambdaBreakpointTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Staffan Larsen
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g LambdaBreakpointTest.java
  *  @run driver LambdaBreakpointTest
@@ -51,7 +52,7 @@
 class LambdaBreakpointTestTarg {
 
     static int[] breakpointLines = {
-            62, 66, 63, 64, 65, 67
+            63, 67, 64, 65, 66, 68
     };
 
     public static void main(String[] args) {
--- a/jdk/test/com/sun/jdi/LambdaStepTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LambdaStepTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *
  *  @author Staffan Larsen
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g LambdaStepTest.java
  *  @run driver LambdaStepTest
--- a/jdk/test/com/sun/jdi/LaunchCommandLine.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LaunchCommandLine.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *  @author Gordon Hirsch
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g HelloWorld.java
  *  @run build LaunchCommandLine
--- a/jdk/test/com/sun/jdi/LineNumberInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LineNumberInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Test javac regressions in the generation of line number info
  *  @author Gordon Hirsch
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g LineNumberInfo.java ControlFlow.java
  *
--- a/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -18,8 +18,8 @@
     /********** LINE NUMBER SENSITIVE! *****************************************************************/
 class LineNumberOnBraceTarg {
 
-    public final static int stopLine = 28;   // THIS MUST BE THE LINE NUMBER OF THE // stopline LINE
-    public final static int stopLine2 = 34;  // THIS MUST BE THE LINE NUMBER OF THE // stopline2 LINE
+    public final static int stopLine = 29;   // THIS MUST BE THE LINE NUMBER OF THE // stopline LINE
+    public final static int stopLine2 = 35;  // THIS MUST BE THE LINE NUMBER OF THE // stopline2 LINE
 
 
     public static void main(String[] args){
--- a/jdk/test/com/sun/jdi/ListenAddress.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ListenAddress.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @summary Test that startListening(Map) method of the com.sun.jdi.SocketListen
  *          Connector returns an address that is usable for the address option on
  *          remove debuggees.
+ * @modules jdk.jdi
  */
 import java.net.InetAddress;
 import java.net.Inet4Address;
--- a/jdk/test/com/sun/jdi/LocalVariableEqual.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LocalVariableEqual.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Serguei Spitsyn
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g LocalVariableEqual.java
  *  @run driver LocalVariableEqual
--- a/jdk/test/com/sun/jdi/LocationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/LocationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g LocationTest.java
  *  @run driver LocationTest
--- a/jdk/test/com/sun/jdi/MethodEntryExitEvents.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MethodEntryExitEvents.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Test the bug fix for: MethodExitEvents disappear when Object-Methods are called from main
  *  @author Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g MethodEntryExitEvents.java
  *  @run driver MethodEntryExitEvents SUSPEND_EVENT_THREAD MethodEntryExitEventsDebugee
--- a/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary JDWP, JDI: Add return value to Method Exit Event
  *  @author Jim Holmlund
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g MethodExitReturnValuesTest.java
  *  @run driver MethodExitReturnValuesTest
--- a/jdk/test/com/sun/jdi/MixedSuspendTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MixedSuspendTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2005, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 # 
 #  @author Jim Holmlund
 # 
+#  @modules jdk.jdi
 #  @run build TestScaffold VMConnection TargetListener TargetAdapter
 #  @run shell MixedSuspendTest.sh
 
--- a/jdk/test/com/sun/jdi/ModificationWatchpoints.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ModificationWatchpoints.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *  @author Robert Field (modified to JDIScaffold)
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g ModificationWatchpoints.java
  *  @run driver ModificationWatchpoints
--- a/jdk/test/com/sun/jdi/MonitorEventTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MonitorEventTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Swamy Venkataramanappa
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g MonitorEventTest.java
  *  @run driver MonitorEventTest
--- a/jdk/test/com/sun/jdi/MonitorFrameInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MonitorFrameInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @summary MonitorInfo objects aren't invalidated when the owning thread is resumed
  *  @author Swamy Venkataramanappa
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g MonitorFrameInfo.java
  *  @run driver MonitorFrameInfo
--- a/jdk/test/com/sun/jdi/MultiBreakpointsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/MultiBreakpointsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author tbell, jjh
  *
+ *  @modules jdk.jdi
  *  @build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g MultiBreakpointsTest.java
  *  @run driver MultiBreakpointsTest
--- a/jdk/test/com/sun/jdi/NativeInstanceFilter.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/NativeInstanceFilter.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Keith McGuigan
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @compile -XDignore.symbol.file NativeInstanceFilterTarg.java
  *  @run driver NativeInstanceFilter
--- a/jdk/test/com/sun/jdi/NewInstanceTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/NewInstanceTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g NewInstanceTest.java
  *  @run driver NewInstanceTest
--- a/jdk/test/com/sun/jdi/NoLaunchOptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/NoLaunchOptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *   @summary    Test for -Xrunjdwp:[onthrow,onuncaught] suboptions require launch suboption
  *   @author     Tim Bell
  *
+ *  @modules jdk.jdi
  *  @run compile -g NoLaunchOptionTest.java
  *  @build VMConnection
  *  @run driver NoLaunchOptionTest
--- a/jdk/test/com/sun/jdi/NoLocInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/NoLocInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Serguei Spitsyn
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g:none NoLocInfoTest.java
  *  @run driver NoLocInfoTest
--- a/jdk/test/com/sun/jdi/NullThreadGroupNameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/NullThreadGroupNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 7105883
  *  @summary Ensure that JDWP doesn't crash with a null thread group name
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run driver NullThreadGroupNameTest
  */
--- a/jdk/test/com/sun/jdi/OnThrowTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/OnThrowTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *   @summary    Test for -agentlib::[onthrow,launch]
  *   @author     Kelly O'Hair
  *
+ *  @modules jdk.jdi
  *  @run compile -g OnThrowTest.java
  *  @run compile -g OnThrowTarget.java
  *  @run compile -g VMConnection.java
--- a/jdk/test/com/sun/jdi/OptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/OptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *   @summary    Test for misc jdwp options, just that the option is parsed
  *   @author     Kelly O'Hair (copied from Tim Bell's NoLaunchOptionTest)
  *
+ *  @modules jdk.jdi
  *  @run compile -g OptionTest.java
  *  @run compile -g HelloWorld.java
  *  @run compile -g VMConnection.java
--- a/jdk/test/com/sun/jdi/PopAndInvokeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/PopAndInvokeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /**
  *  @test
  *  @bug 6517249
+ *  @modules jdk.jdi
  *  @ignore 6951287
  *  @summary JDWP: Cannot do an invokeMethod after a popFrames operation
  *
--- a/jdk/test/com/sun/jdi/PopAndStepTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/PopAndStepTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -8,6 +8,7 @@
  *  @author jjh
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g PopAndStepTest.java
  *  @run driver PopAndStepTest
@@ -23,20 +24,20 @@
 class PopAndStepTarg {
     public void B() {
         System.out.println("debuggee: in B");
-        System.out.println("debuggee: in B, back to A");   // add line breakpoint here line 26 !!!
+        System.out.println("debuggee: in B, back to A");   // add line breakpoint here line 27 !!!
     }
 
     public void A() {
-        System.out.println("debuggee: in A, about to call B");  // line 30
+        System.out.println("debuggee: in A, about to call B");  // line 31
         B();
-        System.out.println("debuggee: in A, back from B");      // line 32
-        throw new RuntimeException("debuggee: Got to line 33");
+        System.out.println("debuggee: in A, back from B");      // line 33
+        throw new RuntimeException("debuggee: Got to line 34");
     }
 
     public static void main(String[] args) {
-        System.out.println("debuggee: Howdy!");      // line 37
-        PopAndStepTarg xxx = new PopAndStepTarg();   // line 39
-        xxx.A();                                     // line 40
+        System.out.println("debuggee: Howdy!");      // line 38
+        PopAndStepTarg xxx = new PopAndStepTarg();   // line 40
+        xxx.A();                                     // line 41
         System.out.println("debugee: Goodbye from PopAndStepTarg!");
     }
 }
@@ -115,10 +116,10 @@
         BreakpointEvent bpe = startToMain("PopAndStepTarg");
         targetClass = bpe.location().declaringType();
         mainThread = bpe.thread();
-        getDebuggeeLineNum(37);
+        getDebuggeeLineNum(38);
 
-        println("Resuming to line 26");
-        bpe = resumeTo("PopAndStepTarg", 26); getDebuggeeLineNum(26);
+        println("Resuming to line 27");
+        bpe = resumeTo("PopAndStepTarg", 27); getDebuggeeLineNum(27);
 
         // The failure is this:
         //   create step request
@@ -140,21 +141,21 @@
         srInto.enable(); // This fails
         mainThread.popFrames(frameFor("A"));
         //srInto.enable();   // if the enable is moved here, it passes
-        println("Popped back to line 40 in main, the call to A()");
-        println("Stepping into line 30");
+        println("Popped back to line 41 in main, the call to A()");
+        println("Stepping into line 31");
         waitForRequestedEvent(srInto);   // println
         srInto.disable();
 
-        getDebuggeeLineNum(30);
+        getDebuggeeLineNum(31);
 
         // The failure occurs here.
-        println("Stepping over to line 31");
+        println("Stepping over to line 32");
         stepOverLine(mainThread);   // println
-        getDebuggeeLineNum(31);
+        getDebuggeeLineNum(32);
 
-        println("Stepping over to line 32");
+        println("Stepping over to line 33");
         stepOverLine(mainThread);        // call to B()
-        getDebuggeeLineNum(32);
+        getDebuggeeLineNum(33);
 
         vm().exit(0);
 
--- a/jdk/test/com/sun/jdi/PopAsynchronousTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/PopAsynchronousTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g PopAsynchronousTest.java
  *  @run driver PopAsynchronousTest
--- a/jdk/test/com/sun/jdi/PopSynchronousTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/PopSynchronousTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g PopSynchronousTest.java
  *  @run driver PopSynchronousTest
--- a/jdk/test/com/sun/jdi/ProcessAttachTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ProcessAttachTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,6 +41,8 @@
  * @summary Unit test for ProcessAttachingConnector
  *
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.jdi
  * @build jdk.testlibrary.* ProcessAttachTest
  * @run driver ProcessAttachTest
  */
--- a/jdk/test/com/sun/jdi/RedefineCrossEvent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/RedefineCrossEvent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,8 @@
  *
  *  @author Robert Field
  *
+ *  @modules java.corba
+ *           jdk.jdi
  *  @run build TestScaffold VMConnection TargetAdapter TargetListener
  *  @run compile -g AccessSpecifierTest.java
  *  @run compile -g AfterThreadDeathTest.java
--- a/jdk/test/com/sun/jdi/RedefineCrossStart.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/RedefineCrossStart.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g CountEvent.java
  *  @run compile -g CountFilterTest.java
--- a/jdk/test/com/sun/jdi/ReferrersTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ReferrersTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *  @summary Add support for backtracking reference graph.
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ReferrersTest.java
  *  @run driver ReferrersTest
--- a/jdk/test/com/sun/jdi/RepStep.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/RepStep.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4334008
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run compile -g RepStepTarg.java
  *  @run build VMConnection RepStep
  *
--- a/jdk/test/com/sun/jdi/RequestReflectionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/RequestReflectionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4425840
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g RequestReflectionTest.java
  *  @run driver RequestReflectionTest
--- a/jdk/test/com/sun/jdi/ResumeOneThreadTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ResumeOneThreadTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g ResumeOneThreadTest.java
  *  @run driver ResumeOneThreadTest
--- a/jdk/test/com/sun/jdi/RunToExit.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/RunToExit.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,8 @@
  * @bug 4997445
  * @summary Test that with server=y, when VM runs to System.exit() no error happens
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.jdi
  * @build jdk.testlibrary.* VMConnection RunToExit Exit0
  * @run driver RunToExit
  */
--- a/jdk/test/com/sun/jdi/SDENullTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/SDENullTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build  TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g SDENullTest.java
  *  @run driver SDENullTest
--- a/jdk/test/com/sun/jdi/SimulResumerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/SimulResumerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g SimulResumerTest.java
  *  @run driver SimulResumerTest
--- a/jdk/test/com/sun/jdi/SourceNameFilterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/SourceNameFilterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g SourceNameFilterTest.java
  *  @run driver SourceNameFilterTest
--- a/jdk/test/com/sun/jdi/StepTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/StepTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4270488 4787861
  *  @author Gordon Hirsch
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetAdapter TargetListener
  *  @run compile -g MethodCalls.java
  *  @run compile -g MethodCallsReflection.java
--- a/jdk/test/com/sun/jdi/SuspendNoFlagTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/SuspendNoFlagTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * @bug 4914611
  * @summary Test for JDWP: -agentlib:jdwp=suspend=n hanging
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibarary.*
  * @compile -g HelloWorld.java
  * @run driver SuspendNoFlagTest
--- a/jdk/test/com/sun/jdi/SuspendThreadTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/SuspendThreadTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g SuspendThreadTest.java
  *  @run driver SuspendThreadTest
--- a/jdk/test/com/sun/jdi/TemplateTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/TemplateTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  *
  *  @author <AUTHOR>
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g TemplateTest.java
  *  @run driver TemplateTest
--- a/jdk/test/com/sun/jdi/ThreadGroupTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/ThreadGroupTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *           destroyed this should not impact subsequent thread creation by
  *           the virtual machine manager.
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile ThreadGroupTest.java
  *  @run driver ThreadGroupTest
--- a/jdk/test/com/sun/jdi/TwoThreadsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/TwoThreadsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g TwoThreadsTest.java
  *  @run driver TwoThreadsTest
--- a/jdk/test/com/sun/jdi/UTF8Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/UTF8Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g UTF8Test.java
  *  @run driver UTF8Test
--- a/jdk/test/com/sun/jdi/UnpreparedByName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/UnpreparedByName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g InnerTarg.java
  *  @run build UnpreparedByName
--- a/jdk/test/com/sun/jdi/UnpreparedClasses.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/UnpreparedClasses.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g InnerTarg.java
  *  @run build UnpreparedClasses
--- a/jdk/test/com/sun/jdi/VMDeathLastTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/VMDeathLastTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g HelloWorld.java
  *  @run build VMDeathLastTest
--- a/jdk/test/com/sun/jdi/VMDeathRequestTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/VMDeathRequestTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  *  @bug 4419314
  *  @author Robert Field
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g HelloWorld.java
  *  @run build VMDeathRequestTest
--- a/jdk/test/com/sun/jdi/VarargsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/VarargsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author jjh
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g VarargsTest.java
  *  @run driver VarargsTest
--- a/jdk/test/com/sun/jdi/Vars.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/Vars.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *  @author Robert Field
  *
  *  @library scaffold
+ *  @modules jdk.jdi
  *  @run build JDIScaffold VMConnection
  *  @run compile -g Vars.java
  *  @run driver Vars
--- a/jdk/test/com/sun/jdi/VisibleMethods.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/VisibleMethods.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *
  *  @author Staffan Larsen
  *
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g VisibleMethods.java
  *  @run driver VisibleMethods
--- a/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  *
  * This tests launches a debuggee using a custom LaunchingConnector.
  *
+ * @modules jdk.jdi/com.sun.tools.jdi
  * @build DebugUsingCustomConnector SimpleLaunchingConnector Foo NullTransportService
  * @run main/othervm DebugUsingCustomConnector
  */
--- a/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * to encapsulate the transport. This tests that the connectors are
  * created and that they have an "address" argument.
  *
+ * @modules jdk.jdi
  * @build GeneratedConnectors NullTransportService
  * @run main/othervm GeneratedConnectors
  */
--- a/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
--- a/jdk/test/com/sun/jdi/connect/spi/SimpleLaunchingConnector.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/connect/spi/SimpleLaunchingConnector.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -93,7 +93,7 @@
 
     public SimpleLaunchingConnector() {
         try {
-            Class c = Class.forName("com.sun.tools.jdi.SocketTransportService");
+            Class<?> c = Class.forName("com.sun.tools.jdi.SocketTransportService");
             ts = (TransportService)c.newInstance();
         } catch (Exception x) {
             throw new Error(x);
--- a/jdk/test/com/sun/jdi/redefine/RedefineTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/redefine/RedefineTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g RedefineTest.java
  *  @run shell RedefineSetUp.sh
--- a/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter
  *  @run compile -g RedefineTest.java
  *  @run shell RedefineSetUp.sh
--- a/jdk/test/com/sun/jdi/sde/FilterMangleTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/sde/FilterMangleTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -6,6 +6,7 @@
  *  @author Robert Field / Jim Holmlund
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter InstallSDE
  *  @run compile FilterMangleTest.java
  *  @run compile -g onion/pickle/Mangle.java
--- a/jdk/test/com/sun/jdi/sde/MangleStepTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/sde/MangleStepTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -7,6 +7,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter InstallSDE
  *  @run compile MangleStepTest.java
  *  @run compile -g  onion/pickle/Mangle.java
--- a/jdk/test/com/sun/jdi/sde/MangleTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/sde/MangleTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -7,6 +7,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter InstallSDE
  *  @run compile MangleTest.java
  *  @run compile -g onion/pickle/Mangle.java
--- a/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -7,6 +7,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter InstallSDE
  *  @run compile SourceDebugExtensionTest.java
  *  @run compile -g SourceDebugExtensionTarg.java
--- a/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -7,6 +7,7 @@
  *  @author Robert Field
  *
  *  @library ..
+ *  @modules jdk.jdi
  *  @run build TestScaffold VMConnection TargetListener TargetAdapter InstallSDE HelloWorld
  *  @run compile TemperatureTableTest.java
  *  @run compile -g TemperatureTableServlet.java
--- a/jdk/test/com/sun/jmx/remote/CCAdminReconnectTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jmx/remote/CCAdminReconnectTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 7009998
  * @summary Tests the correct processing of concurrent ClientComunicatorAdmin reconnect requests.
  * @author Jaroslav Bachorik
+ * @modules java.management/com.sun.jmx.remote.internal
  * @run clean CCAdminReconnectTest
  * @run build CCAdminReconnectTest
  * @run main CCAdminReconnectTest
--- a/jdk/test/com/sun/jmx/remote/NotificationMarshalVersions/TestSerializationMismatch.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/jmx/remote/NotificationMarshalVersions/TestSerializationMismatch.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,8 @@
  * @author Jaroslav Bachorik
  * @bug 6937053 8005472
  *
+ * @modules java.management
+ *          jdk.compiler
  * @run clean TestSerializationMismatch
  * @run main/othervm TestSerializationMismatch
  *
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/com/sun/management/CheckSomeMXBeanImplPackage.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.lang.management.ManagementFactory;
+import java.lang.management.PlatformManagedObject;
+
+/*
+ * @test
+ * @bug     8042901
+ * @summary If jdk.management is present, GarbageCollectorMXBean and ThreadMXBean
+ *          must be from com.sun.management.internal
+ * @author  Shanliang Jiang
+ */
+public class CheckSomeMXBeanImplPackage {
+    private static String implPackageName = "com.sun.management.internal";
+
+    public static void main(String[] args) throws Exception {
+        boolean present = false;
+        try {
+            Class.forName("com.sun.management.GarbageCollectorMXBean");
+            present = true;
+        } catch (ClassNotFoundException cnfe) {}
+
+        if (present) {
+            Class <? extends PlatformManagedObject> klazz =
+                    java.lang.management.GarbageCollectorMXBean.class;
+            for (Object obj :
+                    ManagementFactory.getPlatformMXBeans(klazz)) {
+                check(klazz.getName(), obj);
+            }
+
+            klazz = com.sun.management.GarbageCollectorMXBean.class;
+            for (Object obj :
+                    ManagementFactory.getPlatformMXBeans(klazz)) {
+                check(klazz.getName(), obj);
+            }
+
+            klazz = java.lang.management.ThreadMXBean.class;
+            check(klazz.getName(),
+                    ManagementFactory.getPlatformMXBean(klazz));
+
+            klazz = com.sun.management.ThreadMXBean.class;
+            check(klazz.getName(),
+                    ManagementFactory.getPlatformMXBean(klazz));
+
+            System.out.println("--- PASSED!");
+        } else {
+            System.out.println("--- Skip the test, jdk.management module is not present!");
+        }
+    }
+
+    private static void check(String mbeanName, Object impl) {
+        if (!impl.getClass().getName().startsWith(implPackageName)) {
+            throw new RuntimeException(mbeanName+" implementation package "
+                    + "should be: " + implPackageName
+                    + ", but got: " + impl.getClass());
+        } else {
+            System.out.println("--- Good, "+mbeanName+" got right implementation: " + impl);
+        }
+    }
+}
--- a/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanDoubleInvocationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanDoubleInvocationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for the DiagnosticCommandMBean
  * @author  Frederic Parain, Shanliang JIANG
  *
+ * @modules jdk.management
  * @run main/othervm DcmdMBeanDoubleInvocationTest
  */
 
--- a/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanInvocationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanInvocationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for the DiagnosticCommandMBean
  * @author  Frederic Parain, Shanliang JIANG
  *
+ * @modules jdk.management
  * @run main/othervm DcmdMBeanInvocationTest
  */
 
--- a/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanPermissionsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanPermissionsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Permissions Tests for the DiagnosticCommandMBean
  * @author  Frederic Parain
  *
+ * @modules jdk.management
  * @run main/othervm DcmdMBeanPermissionsTest
  */
 
--- a/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/DiagnosticCommandMBean/DcmdMBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for the DiagnosticCommandMBean
  * @author  Frederic Parain, Shanliang JIANG
  *
+ * @modules jdk.management
  * @run main/othervm DcmdMBeanTest
  */
 
--- a/jdk/test/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationContentTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationContentTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that GarbageCollectionNotification contents are reasonable
  * @author  Frederic Parain
  * @requires vm.opt.ExplicitGCInvokesConcurrent == null | vm.opt.ExplicitGCInvokesConcurrent == false
+ * @modules jdk.management
  * @run     main/othervm GarbageCollectionNotificationContentTest
  */
 
--- a/jdk/test/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that GarbageCollection notification are thrown by every GarbageCollectorMXBean
  * @author  Frederic Parain
  * @requires vm.opt.ExplicitGCInvokesConcurrent == null | vm.opt.ExplicitGCInvokesConcurrent == false
+ * @modules jdk.management
  * @run     main/othervm GarbageCollectionNotificationTest
  */
 
--- a/jdk/test/com/sun/management/GarbageCollectorMXBean/LastGCInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/GarbageCollectorMXBean/LastGCInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Sanity Test for GarbageCollectorMXBean.getLastGcInfo().
  * @author  Mandy Chung
  *
+ * @modules jdk.management
  * @run main/othervm -XX:-ExplicitGCInvokesConcurrent LastGCInfo
  */
 // Passing "-XX:-ExplicitGCInvokesConcurrent" to force System.gc()
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug 8028994
  * @author Staffan Larsen
  * @library /lib/testlibrary
+ * @modules jdk.attach/sun.tools.attach
+ *          jdk.management
  * @build jdk.testlibrary.*
  * @run main CheckOrigin
  */
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/DumpHeap.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/DumpHeap.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 # @summary Sanity test for com.sun.management.HotSpotDiagnosticMXBean.dumpHeap 
 #          method 
 #
+# @modules jdk.management
 # @build DumpHeap
 # @run shell DumpHeap.sh
 
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetDiagnosticOptions.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetDiagnosticOptions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for HotSpotDiagnosticMXBean.getDiagnosticOptions()
  * @author  Daniel Fuchs
  *
+ * @modules jdk.management
  * @run main GetDiagnosticOptions
  */
 
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetDoubleVMOption.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetDoubleVMOption.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for HotSpotDiagnosticMXBean.getVMOption() and double values
  * @author  Jaroslav Bachorik
  *
+ * @modules jdk.management
  * @run main/othervm -XX:CompileThresholdScaling=0.14 GetDoubleVMOption
  */
 
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetVMOption.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/GetVMOption.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for HotSpotDiagnosticMXBean.getVMOption()
  * @author  Mandy Chung
  *
+ * @modules jdk.management
  * @run main/othervm -XX:+PrintGCDetails GetVMOption
  */
 
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/SetAllVMOptions.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/SetAllVMOptions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for HotSpotDiagnosticMXBean.setVMOption()
  * @author  Tomas Hurka, Daniel Fuchs
  *
+ * @modules jdk.management
  * @run main SetAllVMOptions
  */
 
--- a/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/SetVMOption.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/HotSpotDiagnosticMXBean/SetVMOption.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * @author  Mandy Chung
  * @author  Jaroslav Bachorik
  *
+ * @modules jdk.management
  * @run main/othervm -XX:+PrintGCDetails SetVMOption
  */
 
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetCommittedVirtualMemorySize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetCommittedVirtualMemorySize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522 6191542
  * @summary Basic unit test of OperatingSystemMXBean.getCommittedVirtualMemorySize()
  * @author  Steve Bohne
+ * @modules jdk.management
  */
 
 /*
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetFreePhysicalMemorySize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetFreePhysicalMemorySize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of OperatingSystemMXBean.getFreePhysicalMemorySize()
  * @author  Steve Bohne
+ * @modules jdk.management
  */
 
 /*
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetFreeSwapSpaceSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetFreeSwapSpaceSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of OperatingSystemMXBean.getFreeSwapSpaceSize()
  * @author  Steve Bohne
+ * @modules jdk.management
  */
 
 /*
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetProcessCpuLoad.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetProcessCpuLoad.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     7028071
  * @summary Basic unit test of OperatingSystemMXBean.getProcessCpuLoad()
  *
+ * @modules jdk.management
  * @run main GetProcessCpuLoad
  */
 
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetProcessCpuTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetProcessCpuTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of OperatingSystemMXBean.getProcessCpuTime()
  * @author  Steve Bohne
+ * @modules jdk.management
  */
 
 /*
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetSystemCpuLoad.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetSystemCpuLoad.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     7028071
  * @summary Basic unit test of OperatingSystemMXBean.getProcessCpuLoad()
  *
+ * @modules jdk.management
  * @run main GetSystemCpuLoad
  */
 
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/GetTotalPhysicalMemorySize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/GetTotalPhysicalMemorySize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of OperatingSystemMXBean.getTotalPhysicalMemorySize()
  * @author  Steve Bohne
+ * @modules jdk.management
  */
 
 /*
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/MemoryStatusOverflow.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/MemoryStatusOverflow.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *      the GlobalMemoryStatus function can return incorrect information,
  *      reporting a value of -1 to indicate an overflow.
  *
+ * @modules jdk.management
  * @run main MemoryStatusOverflow
  */
 
--- a/jdk/test/com/sun/management/OperatingSystemMXBean/TestTotalSwap.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/OperatingSystemMXBean/TestTotalSwap.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary Basic unit test of OperatingSystemMXBean.getTotalSwapSpaceSize()
  *
  * @library /lib/testlibrary
+ * @modules jdk.management
  * @build TestTotalSwap jdk.testlibrary.*
  * @run main TestTotalSwap
  *
--- a/jdk/test/com/sun/management/ThreadMXBean/ThreadAllocatedMemory.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/ThreadMXBean/ThreadAllocatedMemory.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     6173675
  * @summary Basic test of ThreadMXBean.getThreadAllocatedBytes
  * @author  Paul Hohensee
+ * @modules jdk.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/com/sun/management/ThreadMXBean/ThreadAllocatedMemoryArray.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/ThreadMXBean/ThreadAllocatedMemoryArray.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     6173675
  * @summary Basic test of ThreadMXBean.getThreadAllocatedBytes(long[])
  * @author  Paul Hohensee
+ * @modules jdk.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/com/sun/management/ThreadMXBean/ThreadCpuTimeArray.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/ThreadMXBean/ThreadCpuTimeArray.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          getThreadUserTime(long[]).
  * @author  Paul Hohensee
  * @key randomness
+ * @modules jdk.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/com/sun/management/UnixOperatingSystemMXBean/GetMaxFileDescriptorCount.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/UnixOperatingSystemMXBean/GetMaxFileDescriptorCount.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary 
 # @author  Steve Bohne
 #
+# @modules jdk.management
 # @run shell GetMaxFileDescriptorCount.sh
 #
 
--- a/jdk/test/com/sun/management/UnixOperatingSystemMXBean/GetOpenFileDescriptorCount.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/management/UnixOperatingSystemMXBean/GetOpenFileDescriptorCount.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary 
 # @author  Steve Bohne
 #
+# @modules jdk.management
 # @run shell GetOpenFileDescriptorCount.sh
 #
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/com/sun/management/VMOptionOpenDataTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import com.sun.management.VMOption;
+import java.io.InvalidObjectException;
+import java.util.Objects;
+import javax.management.openmbean.OpenDataException;
+import sun.management.MappedMXBeanType;
+
+/*
+ * @test
+ * @bug     8042901
+ * @summary Check that MappedMXBeanType.toOpenTypeData supports VMOption
+ * @author  Shanliang Jiang
+ */
+public class VMOptionOpenDataTest {
+    public static void main(String[] args) throws Exception {
+        System.out.println("--- VMOptionOpenDataTest-main: Checking that "
+                + "MappedMXBeanType.toOpenTypeData supports VMOption");
+        Exception failed = null;
+        try {
+            VMOption vo = new VMOption("toto", "titi", true, VMOption.Origin.OTHER);
+            System.out.println("--- Construct a VMOption object: \"" + vo + "\"");
+
+            Object open = MappedMXBeanType.toOpenTypeData(vo, VMOption.class);
+            System.out.println("--- Map it to an open type:  \"" + open +" \"");
+
+            Object back = MappedMXBeanType.toJavaTypeData(open, VMOption.class);
+            System.out.println("--- Map it back to java type:  \"" + back +" \"");
+
+            if (back == null) {
+                failed = new RuntimeException("Failed, mapping back got null.");
+            } else if (!(back instanceof VMOption)) {
+                failed = new RuntimeException("Failed, not mapped back to a VMOption: "
+                        +back.getClass());
+            } else {
+                VMOption mapBack = (VMOption)back;
+                if (!Objects.equals(vo.getName(), mapBack.getName()) ||
+                        !Objects.equals(vo.getOrigin(), mapBack.getOrigin()) ||
+                        !Objects.equals(vo.getValue(), mapBack.getValue()) ||
+                        vo.isWriteable() != mapBack.isWriteable()) {
+                    failed = new RuntimeException(
+                            "Failed, failed to map back the original VMOtion.");
+                }
+            }
+        } catch (OpenDataException | InvalidObjectException ode) {
+            failed = ode;
+        }
+        if (failed == null) {
+            System.out.println("--- PASSED!");
+        } else {
+            System.out.println("--- Failed: "+failed.getMessage());
+            throw failed;
+        }
+    }
+}
--- a/jdk/test/com/sun/tools/attach/BasicTests.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/tools/attach/BasicTests.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2011, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,6 +38,9 @@
  * @bug 6173612 6273707 6277253 6335921 6348630 6342019 6381757
  * @summary Basic unit tests for the VM attach mechanism.
  * @library /lib/testlibrary
+ * @modules java.instrument
+ *          java.management
+ *          jdk.jartool/sun.tools.jar
  * @run build jdk.testlibrary.* Agent BadAgent RedefineAgent Application RedefineDummy RunnerUtil
  * @run main BasicTests
  *
--- a/jdk/test/com/sun/tools/attach/PermissionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/tools/attach/PermissionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,9 @@
  * @bug 6173612 6273707 6277253 6335921 6348630 6342019 6381757
  * @summary Basic unit tests for the VM attach mechanism.
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.attach
+ *          jdk.jartool/sun.tools.jar
  * @run build jdk.testlibrary.* Application
  * @run main PermissionTest
  *
--- a/jdk/test/com/sun/tools/attach/ProviderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/tools/attach/ProviderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,9 @@
  * @bug 6173612 6273707 6277253 6335921 6348630 6342019 6381757
  * @summary Basic unit tests for the VM attach mechanism.
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.attach
+ *          jdk.jartool/sun.tools.jar
  * @run build jdk.testlibrary.* SimpleProvider
  * @run main ProviderTest
  *
--- a/jdk/test/com/sun/tools/attach/StartManagementAgent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/tools/attach/StartManagementAgent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -40,6 +40,9 @@
  * @test
  * @summary Test for VirtualMachine.startManagementAgent and VirtualMachine.startLocalManagementAgent
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.attach
+ *          jdk.jartool/sun.tools.jar
  * @run build Application SimpleProvider jdk.testlibrary.*
  * @run main/timeout=300 StartManagementAgent
  */
--- a/jdk/test/com/sun/tools/attach/TempDirTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/com/sun/tools/attach/TempDirTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,6 +38,8 @@
  * @bug 8033104
  * @summary Test to make sure attach and jvmstat works correctly when java.io.tmpdir is set
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.jartool/sun.tools.jar
  * @run build jdk.testlibrary.* Application RunnerUtil
  * @run main/timeout=200 TempDirTest
  */
--- a/jdk/test/demo/jvmti/minst/MinstTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/demo/jvmti/minst/MinstTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@
         DemoRun demo;
 
         /* Run demo that uses JVMTI minst agent (no options) */
-        demo = new DemoRun("minst", "exclude=java/*,exclude=javax/*,exclude=com/*,exclude=sun/*" /* options to minst */ );
+        demo = new DemoRun("minst", "exclude=java/*,exclude=javax/*,exclude=com/*,exclude=jdk/*,exclude=sun/*" /* options to minst */ );
         demo.runit(args[0]);
 
         /* Make sure patterns in output look ok */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/lang/Class/getSimpleName/GetSimpleNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,207 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8057919
+ * @summary Class.getSimpleName() should work for non-JLS compliant class names
+ */
+import jdk.internal.org.objectweb.asm.*;
+import static jdk.internal.org.objectweb.asm.Opcodes.*;
+
+public class GetSimpleNameTest {
+    static class NestedClass {}
+    class InnerClass {}
+
+    static Class<?> f1() {
+        class LocalClass {}
+        return LocalClass.class;
+    }
+
+    public static void main(String[] args) throws Exception {
+        assertEquals(NestedClass.class.getSimpleName(), "NestedClass");
+        assertEquals( InnerClass.class.getSimpleName(),  "InnerClass");
+        assertEquals(             f1().getSimpleName(),  "LocalClass");
+
+        java.io.Serializable anon = new java.io.Serializable() {};
+        assertEquals(anon.getClass().getSimpleName(), "");
+
+        // Java class names, prepended enclosing class name.
+        testNested("p.Outer$Nested", "p.Outer", "Nested");
+        testInner( "p.Outer$Inner",  "p.Inner",  "Inner");
+        testLocal( "p.Outer$1Local", "p.Outer",  "Local");
+        testAnon(  "p.Outer$1",      "p.Outer",       "");
+
+        // Non-Java class names, prepended enclosing class name.
+        testNested("p.$C1$Nested", "p.$C1$", "Nested");
+        testInner( "p.$C1$Inner",  "p.$C1$",  "Inner");
+        testLocal( "p.$C1$Local",  "p.$C1$",  "Local");
+        testAnon(  "p.$C1$1",      "p.$C1$",       "");
+
+        // Non-Java class names, unrelated class names.
+        testNested("p1.$Nested$", "p2.$C1$", "Nested");
+        testInner( "p1.$Inner$",  "p2.$C1$",  "Inner");
+        testLocal( "p1.$Local$",  "p2.$C1$",  "Local");
+        testAnon(  "p1.$anon$",   "p2.$C1$",       "");
+    }
+
+    static void testNested(String innerName, String outerName, String simpleName) throws Exception {
+        BytecodeGenerator bg = new BytecodeGenerator(innerName, outerName, simpleName);
+        CustomCL cl = new CustomCL(innerName, outerName, bg.getNestedClasses(true), bg.getNestedClasses(false));
+        assertEquals(cl.loadClass(innerName).getSimpleName(), simpleName);
+    }
+
+    static void testInner(String innerName, String outerName, String simpleName) throws Exception {
+        BytecodeGenerator bg = new BytecodeGenerator(innerName, outerName, simpleName);
+        CustomCL cl = new CustomCL(innerName, outerName, bg.getInnerClasses(true), bg.getInnerClasses(false));
+        assertEquals(cl.loadClass(innerName).getSimpleName(), simpleName);
+    }
+
+    static void testLocal(String innerName, String outerName, String simpleName) throws Exception {
+        BytecodeGenerator bg = new BytecodeGenerator(innerName, outerName, simpleName);
+        CustomCL cl = new CustomCL(innerName, outerName, bg.getLocalClasses(true), bg.getLocalClasses(false));
+        assertEquals(cl.loadClass(innerName).getSimpleName(), simpleName);
+    }
+
+    static void testAnon(String innerName, String outerName, String simpleName) throws Exception {
+        BytecodeGenerator bg = new BytecodeGenerator(innerName, outerName, simpleName);
+        CustomCL cl = new CustomCL(innerName, outerName, bg.getAnonymousClasses(true), bg.getAnonymousClasses(false));
+        assertEquals(cl.loadClass(innerName).getSimpleName(), simpleName);
+    }
+
+    static void assertEquals(Object o1, Object o2) {
+        if (!java.util.Objects.equals(o1, o2)) {
+            throw new AssertionError(o1 + " != " + o2);
+        }
+    }
+
+    static class CustomCL extends ClassLoader {
+        final String  innerName;
+        final String  outerName;
+
+        final byte[] innerClassFile;
+        final byte[] outerClassFile;
+
+        CustomCL(String innerName, String outerName, byte[] innerClassFile, byte[] outerClassFile) {
+            this.innerName = innerName;
+            this.outerName = outerName;
+            this.innerClassFile = innerClassFile;
+            this.outerClassFile = outerClassFile;
+        }
+        @Override
+        protected Class<?> findClass(String name) throws ClassNotFoundException {
+            if (innerName.equals(name)) {
+                return defineClass(innerName, innerClassFile, 0, innerClassFile.length);
+            } else if (outerName.equals(name)) {
+                return defineClass(outerName, outerClassFile, 0, outerClassFile.length);
+            } else {
+                throw new ClassNotFoundException(name);
+            }
+        }
+    }
+
+    static class BytecodeGenerator {
+        final String innerName;
+        final String outerName;
+        final String simpleName;
+
+        BytecodeGenerator(String innerName, String outerName, String simpleName) {
+            this.innerName = intl(innerName);
+            this.outerName = intl(outerName);
+            this.simpleName = simpleName;
+        }
+
+        static String intl(String name) { return name.replace('.', '/'); }
+
+        static void makeDefaultCtor(ClassWriter cw) {
+            MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "<init>", "()V", null, null);
+            mv.visitCode();
+            mv.visitVarInsn(ALOAD, 0);
+            mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V", false);
+            mv.visitInsn(RETURN);
+            mv.visitMaxs(1, 1);
+            mv.visitEnd();
+        }
+
+        void makeCtxk(ClassWriter cw, boolean isInner) {
+            if (isInner) {
+                cw.visitOuterClass(outerName, "f", "()V");
+            } else {
+                MethodVisitor mv = cw.visitMethod(ACC_PUBLIC | ACC_STATIC, "f", "()V", null, null);
+                mv.visitCode();
+                mv.visitInsn(RETURN);
+                mv.visitMaxs(0, 0);
+                mv.visitEnd();
+            }
+        }
+
+        byte[] getNestedClasses(boolean isInner) {
+            String name = (isInner ? innerName : outerName);
+            ClassWriter cw = new ClassWriter(0);
+            cw.visit(V1_7, ACC_PUBLIC + ACC_SUPER, name, null, "java/lang/Object", null);
+
+            cw.visitInnerClass(innerName, outerName, simpleName, ACC_PUBLIC | ACC_STATIC);
+
+            makeDefaultCtor(cw);
+            cw.visitEnd();
+            return cw.toByteArray();
+        }
+
+        byte[] getInnerClasses(boolean isInner) {
+            String name = (isInner ? innerName : outerName);
+            ClassWriter cw = new ClassWriter(0);
+            cw.visit(V1_7, ACC_PUBLIC + ACC_SUPER, name, null, "java/lang/Object", null);
+
+            cw.visitInnerClass(innerName, outerName, simpleName, ACC_PUBLIC);
+
+            makeDefaultCtor(cw);
+            cw.visitEnd();
+            return cw.toByteArray();
+        }
+
+        byte[] getLocalClasses(boolean isInner) {
+            String name = (isInner ? innerName : outerName);
+            ClassWriter cw = new ClassWriter(0);
+            cw.visit(V1_7, ACC_PUBLIC + ACC_SUPER, name, null, "java/lang/Object", null);
+
+            cw.visitInnerClass(innerName, null, simpleName, ACC_PUBLIC | ACC_STATIC);
+            makeCtxk(cw, isInner);
+
+            makeDefaultCtor(cw);
+            cw.visitEnd();
+            return cw.toByteArray();
+        }
+
+        byte[] getAnonymousClasses(boolean isInner) {
+            String name = (isInner ? innerName : outerName);
+            ClassWriter cw = new ClassWriter(0);
+            cw.visit(V1_7, ACC_PUBLIC + ACC_SUPER, name, null, "java/lang/Object", null);
+
+            cw.visitInnerClass(innerName, null, null, ACC_PUBLIC | ACC_STATIC);
+            makeCtxk(cw, isInner);
+
+            makeDefaultCtor(cw);
+            cw.visitEnd();
+            return cw.toByteArray();
+        }
+    }
+}
--- a/jdk/test/java/lang/Thread/ThreadStateController.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/Thread/ThreadStateController.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 import java.util.concurrent.locks.LockSupport;
 
 import jdk.testlibrary.LockFreeLogManager;
+import jdk.testlibrary.Utils;
 
 /**
  * ThreadStateController allows a thread to request this thread to transition
@@ -73,7 +74,7 @@
 
     public static void pause(long ms) {
         try {
-            Thread.sleep(ms);
+            Thread.sleep(Utils.adjustTimeout(ms));
         } catch (InterruptedException e) {
             throw new RuntimeException(e);
         }
@@ -135,7 +136,7 @@
                         try {
                             // this thread has escaped the BLOCKED state
                             // release the lock and a short wait before continue
-                            lock.wait(10);
+                            lock.wait(Utils.adjustTimeout(10));
                         } catch (InterruptedException e) {
                             // ignore
                             interrupted.incrementAndGet();
@@ -165,7 +166,7 @@
                             getId(), getName(), iterations.get(), interrupted.get());
                         try {
                             stateChange(nextState);
-                            lock.wait(10000);
+                            lock.wait(Integer.MAX_VALUE);
                             log("%d:   %s wakes up from timed waiting (iterations %d interrupted %d)%n",
                                 getId(), getName(), iterations.get(), interrupted.get());
                         } catch (InterruptedException e) {
@@ -185,7 +186,8 @@
                 case S_TIMED_PARKED: {
                     log("%d: %s is going to timed park (iterations %d)%n",
                         getId(), getName(), iterations.get());
-                    long deadline = System.currentTimeMillis() + 10000*1000;
+                    long deadline = System.currentTimeMillis() +
+                                        Utils.adjustTimeout(10000*1000);
                     stateChange(nextState);
                     LockSupport.parkUntil(deadline);
                     break;
@@ -195,7 +197,7 @@
                         getId(), getName(), iterations.get(), interrupted.get());
                     try {
                         stateChange(nextState);
-                        Thread.sleep(1000000);
+                        Thread.sleep(Utils.adjustTimeout(1000000));
                     } catch (InterruptedException e) {
                         // finish sleeping
                         interrupted.incrementAndGet();
--- a/jdk/test/java/lang/instrument/AddTransformerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/AddTransformerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary confirms that added transformers all really run
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build AddTransformerTest ATransformerManagementTestCase
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar AddTransformerTest AddTransformerTest
--- a/jdk/test/java/lang/instrument/AppendToBootstrapClassPathTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/AppendToBootstrapClassPathTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple test for the Boot-Class-Path manifest attribute
  * @author Gabriel Adauto, Wily Technology, Robert Field, Sun Microsystems
  *
+ * @modules java.instrument
  * @run build AppendToBootstrapClassPathTest ExampleForBootClassPath
  * @run shell AppendToBootstrapClassPathSetUp.sh
  * @run shell MakeJAR.sh bootclasspathAgent
--- a/jdk/test/java/lang/instrument/AppendToClassPathTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/AppendToClassPathTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple test for the Class-Path manifest attribute
  * @author Gabriel Adauto, Wily Technology; Robert Field, Sun Microsystems
  *
+ * @modules java.instrument
  * @run build AppendToClassPathTest
  * @run shell AppendToClassPathSetUp.sh
  * @run shell MakeJAR.sh classpathAgent
--- a/jdk/test/java/lang/instrument/BootClassPath/BootClassPathTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/BootClassPath/BootClassPathTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Test non US-ASCII characters in the value of the Boot-Class-Path
 #          attribute.
 #
+# @modules java.instrument
 # @run shell/timeout=240 BootClassPathTest.sh
 
 if [ "${TESTJAVA}" = "" ]
--- a/jdk/test/java/lang/instrument/DaemonThread/TestDaemonThread.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/DaemonThread/TestDaemonThread.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,6 +1,6 @@
 /*
  * Copyright 2014 Goldman Sachs.
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @summary Assert in java.lang.instrument agents during shutdown when classloading occurs after shutdown
  * @library /lib/testlibrary
  *
+ * @modules java.instrument
+ *          java.management
  * @build jdk.testlibrary.* DummyAgent DummyClass TestDaemonThreadLauncher TestDaemonThread
  * @run shell ../MakeJAR3.sh DummyAgent
  * @run main/timeout=240 TestDaemonThreadLauncher
--- a/jdk/test/java/lang/instrument/FromShutdownHook.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/FromShutdownHook.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5050487
  * @summary Check that Instrumentation methods can execute from a runtime
  *          shutdown hook
+ * @modules java.instrument
  * @run build FromShutdownHook
  * @run shell MakeJAR.sh basicAgent
  * @run main/othervm -javaagent:basicAgent.jar FromShutdownHook FromShutdownHook
--- a/jdk/test/java/lang/instrument/GetAllLoadedClassesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/GetAllLoadedClassesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple tests for getAllLoadedClasses (is Object there? does a newly loaded class show up?)
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build GetAllLoadedClassesTest DummyClass
  * @run shell MakeJAR.sh basicAgent
  * @run main/othervm -javaagent:basicAgent.jar GetAllLoadedClassesTest GetAllLoadedClassesTest
--- a/jdk/test/java/lang/instrument/GetInitiatedClassesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/GetInitiatedClassesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple tests for getInitiatedClasses (does a newly loaded class show up?)
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build GetInitiatedClassesTest DummyClass
  * @run shell MakeJAR.sh basicAgent
  * @run main/othervm -javaagent:basicAgent.jar GetInitiatedClassesTest GetInitiatedClassesTest
--- a/jdk/test/java/lang/instrument/GetObjectSizeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/GetObjectSizeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary round-trip test for getObjectSize (does it return, and is the result non-zero?)
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build GetObjectSizeTest
  * @run shell MakeJAR.sh basicAgent
  * @run main/othervm -javaagent:basicAgent.jar GetObjectSizeTest GetObjectSizeTest
--- a/jdk/test/java/lang/instrument/IsModifiableClassAgent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/IsModifiableClassAgent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary test isModifiableClass
  * @author Robert Field, Sun Microsystems
  *
+ * @modules java.instrument
  * @run build IsModifiableClassApp IsModifiableClassAgent
  * @run shell MakeJAR3.sh IsModifiableClassAgent 'Can-Retransform-Classes: true'
  * @run main/othervm -javaagent:IsModifiableClassAgent.jar IsModifiableClassApp
--- a/jdk/test/java/lang/instrument/ManifestTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/ManifestTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary JLI JAR manifest processing should ignore leading and trailing white space.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run build ManifestTestApp ExampleForBootClassPath
 # @run shell/timeout=900 ManifestTest.sh
 #
--- a/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,9 @@
  * @summary Tests and benchmarks the JVMTI RedefineClasses when a
  *          single class (and its parent) contains many methods.
  *
+ * @modules java.compiler
+ *          java.instrument
+ *          jdk.compiler
  * @run build ManyMethodsBenchmarkApp ManyMethodsBenchmarkAgent
  * @run shell MakeJAR3.sh ManyMethodsBenchmarkAgent 'Can-Retransform-Classes: true'
  * @run main/othervm -javaagent:ManyMethodsBenchmarkAgent.jar ManyMethodsBenchmarkApp
--- a/jdk/test/java/lang/instrument/NMTHelper.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NMTHelper.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,8 +27,9 @@
 import java.util.regex.Pattern;
 import java.util.Arrays;
 import java.util.stream.Collectors;
-import sun.management.ManagementFactoryHelper;
-import com.sun.management.DiagnosticCommandMBean;
+import java.lang.management.ManagementFactory;
+import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
 
 public class NMTHelper
 {
@@ -53,7 +54,12 @@
     }
 
     private static String executeDcmd(String cmd, String ... args) {
-        DiagnosticCommandMBean dcmd = ManagementFactoryHelper.getDiagnosticCommandMBean();
+        ObjectName oname = null;
+        try {
+            oname = ObjectName.getInstance("com.sun.management:type=DiagnosticCommand");
+        } catch (MalformedObjectNameException mone) {
+            throw new RuntimeException(mone);
+        }
         Object[] dcmdArgs = {args};
         String[] signature = {String[].class.getName()};
 
@@ -63,7 +69,8 @@
         System.out.println("Output from Dcmd '" + cmdString + "' is being written to file " + f);
         try (FileWriter fw = new FileWriter(f)) {
             fw.write("> " + cmdString + ":");
-            String result = (String) dcmd.invoke(cmd, dcmdArgs, signature);
+            String result = (String)ManagementFactory.getPlatformMBeanServer().
+                    invoke(oname, cmd, dcmdArgs, signature);
             fw.write(result);
             return result;
         } catch(Exception ex) {
--- a/jdk/test/java/lang/instrument/NativeMethodPrefixAgent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NativeMethodPrefixAgent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test setNativeMethodPrefix
  * @author Robert Field, Sun Microsystems
  *
+ * @modules java.base/jdk.internal.org.objectweb.asm
  * @run shell/timeout=240 MakeJAR2.sh NativeMethodPrefixAgent NativeMethodPrefixApp 'Can-Retransform-Classes: true' 'Can-Set-Native-Method-Prefix: true'
  * @run main/othervm -javaagent:NativeMethodPrefixAgent.jar NativeMethodPrefixApp
  */
--- a/jdk/test/java/lang/instrument/NoTransformerAddedTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NoTransformerAddedTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary make sure no transformers run when none are registered
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build NoTransformerAddedTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar NoTransformerAddedTest NoTransformerAddedTest
--- a/jdk/test/java/lang/instrument/NullGetObjectSizeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NullGetObjectSizeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary make sure getObjectSize(null) throws NullPointerException.
  * @author Robert Field as modified from the code of Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build NullGetObjectSizeTest
  * @run shell MakeJAR.sh basicAgent
  * @run main/othervm -javaagent:basicAgent.jar NullGetObjectSizeTest NullGetObjectSizeTest
--- a/jdk/test/java/lang/instrument/NullRedefineClassesTests.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NullRedefineClassesTests.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary make sure redefineClasses throws NullPointerException in the right places.
  * @author Robert Field as modified from the code of Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build NullRedefineClassesTests
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar NullRedefineClassesTests NullRedefineClassesTests
--- a/jdk/test/java/lang/instrument/NullTransformerAddTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NullTransformerAddTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary make sure addTransformer(null) throws what it should
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build NullTransformerAddTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar NullTransformerAddTest NullTransformerAddTest
--- a/jdk/test/java/lang/instrument/NullTransformerRemoveTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/NullTransformerRemoveTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary make sure removeTransformer(null) throws NullPointerException
  * @author Robert Field as modified from the code of Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build NullTransformerRemoveTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar NullTransformerRemoveTest NullTransformerRemoveTest
--- a/jdk/test/java/lang/instrument/ParallelTransformerLoader.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/ParallelTransformerLoader.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Test parallel class loading by parallel transformers.
 # @author Daniel D. Daugherty as modified from the code of Daryl Puryear @ Wily
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh ParallelTransformerLoaderAgent
 # @run build ParallelTransformerLoaderApp
 # @run shell/timeout=240 ParallelTransformerLoader.sh
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent0010.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent0010.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (0,0,1,0): declared 2-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent0010
  * @run main/othervm -javaagent:InheritAgent0010.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent0011.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent0011.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (0,0,1,1): declared 2-arg and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent0011
  * @run main/othervm -javaagent:InheritAgent0011.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent0110.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent0110.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (0,1,1,0): inherited 1-arg and declared 2-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent0110
  * @run main/othervm -javaagent:InheritAgent0110.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent0111.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent0111.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (0,1,1,1): inherited 1-arg, declared 2-arg and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent0111
  * @run main/othervm -javaagent:InheritAgent0111.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1000.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1000.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,0,0,0): inherited 2-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1000
  * @run main/othervm -javaagent:InheritAgent1000.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1001.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1001.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,0,0,1): inherited 2-arg, and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1001
  * @run main/othervm -javaagent:InheritAgent1001.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1010.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1010.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,0,1,0): inherited 2-arg, and declared 2-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1010
  * @run main/othervm -javaagent:InheritAgent1010.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1011.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1011.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,0,1,1): inherited 2-arg, declared 2-arg and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1011
  * @run main/othervm -javaagent:InheritAgent1011.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1100.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1100.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,1,0,0): inherited 2-arg and inherited 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1100
  * @run main/othervm -javaagent:InheritAgent1100.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1101.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1101.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,1,0,1): inherited 2-arg, inherited 1-arg, and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1101
  * @run main/othervm -javaagent:InheritAgent1101.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1110.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1110.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,1,1,0): inherited 2-arg, inherited 1-arg, and declared 2-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1110
  * @run main/othervm -javaagent:InheritAgent1110.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/InheritAgent1111.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/InheritAgent1111.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test config (1,1,1,1): inherited 2-arg, inherited 1-arg, declared 2-arg and declared 1-arg in agent class
  * @author Daniel D. Daugherty, Sun Microsystems
  *
+ * @modules java.instrument
  * @run shell ../MakeJAR3.sh InheritAgent1111
  * @run main/othervm -javaagent:InheritAgent1111.jar DummyMain
  */
--- a/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @bug 6289149
  * @summary test when the agent's class is missing the premain() function.
  * @library /lib/testlibrary
+ * @modules java.management
  * @run build jdk.testlibrary.* DummyMain
  * @run shell ../MakeJAR3.sh NoPremainAgent
  * @run main NoPremainAgentTest
--- a/jdk/test/java/lang/instrument/PremainClass/PremainClassTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/PremainClassTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @bug 5055293
  * @summary Test non ascii characters in the Premain-Class attribute.
  * @library /lib/testlibrary
+ * @modules java.management
  * @run build jdk.testlibrary.* DummyMain
  * @run main PremainClassTest
  */
--- a/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @bug 6289149
  * @summary test when the agent's class has a zero arg premain() function.
  * @library /lib/testlibrary
+ * @modules java.management
  * @run build jdk.testlibrary.* DummyMain
  * @run shell ../MakeJAR3.sh ZeroArgPremainAgent
  * @run main ZeroArgPremainAgentTest
--- a/jdk/test/java/lang/instrument/RedefineBigClass.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineBigClass.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015 Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Redefine a big class.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineBigClassAgent 'Can-Redefine-Classes: true'
 # @run build BigClass RedefineBigClassApp NMTHelper
 # @run shell/timeout=600 RedefineBigClass.sh
--- a/jdk/test/java/lang/instrument/RedefineClassWithNativeMethod.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineClassWithNativeMethod.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Redefine a class with a native method.
 # @author Daniel D. Daugherty as modified from the test submitted by clovis@par.univie.ac.at
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineClassWithNativeMethodAgent 'Can-Redefine-Classes: true'
 # @run build RedefineClassWithNativeMethodApp
 # @run shell RedefineClassWithNativeMethod.sh
--- a/jdk/test/java/lang/instrument/RedefineClassesDisabledTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineClassesDisabledTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test that redefineClasses and isRedefineClassesSupported behave correctly when redefine is not enabled
  * @author Robert Field, Sun Microsystems -- as modified from the work of Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build RedefineClassesDisabledTest
  * @run shell RedefineSetUp.sh
  * @run shell MakeJAR.sh basicAgent
--- a/jdk/test/java/lang/instrument/RedefineClassesTests.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineClassesTests.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary insure redefine is supported. exercise a class, then redefine it and do it again
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build RedefineClassesTests
  * @run shell RedefineSetUp.sh
  * @run shell MakeJAR.sh redefineAgent
--- a/jdk/test/java/lang/instrument/RedefineMethodAddInvoke.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodAddInvoke.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Reflexive invocation of newly added methods broken.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineMethodAddInvokeAgent 'Can-Redefine-Classes: true'
 # @run build RedefineMethodAddInvokeApp
 # @run shell RedefineMethodAddInvoke.sh
--- a/jdk/test/java/lang/instrument/RedefineMethodDelInvoke.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodDelInvoke.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @author Daniel D. Daugherty
 # @author Serguei Spitsyn
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineMethodDelInvokeAgent 'Can-Redefine-Classes: true'
 # @run build RedefineMethodDelInvokeApp
 # @run shell RedefineMethodDelInvoke.sh
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Redefine a class with a method stored in a backtrace.
 # @author Stefan Karlsson
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineMethodInBacktraceAgent 'Can-Redefine-Classes: true'
 # @run build RedefineMethodInBacktraceTarget RedefineMethodInBacktraceApp
 # @run shell RedefineMethodInBacktrace.sh
@@ -77,7 +78,7 @@
 
 cat output.log
 
-MESG="Exception"
+MESG="Test failed"
 grep "$MESG" output.log
 result=$?
 if [ "$result" = 0 ]; then
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktraceApp.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktraceApp.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,8 @@
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.concurrent.CountDownLatch;
-import sun.management.ManagementFactoryHelper;
+import javax.management.JMX;
+import javax.management.ObjectName;
 
 /**
  * When an exception is thrown, the JVM collects just enough information
@@ -46,12 +47,15 @@
  * could be freed, since class redefinition didn't know about the backtraces.
  */
 public class RedefineMethodInBacktraceApp {
+    static boolean failed = false;
+
     public static void main(String args[]) throws Exception {
         System.out.println("Hello from RedefineMethodInBacktraceApp!");
-
         new RedefineMethodInBacktraceApp().doTest();
 
-        System.exit(0);
+        if (failed) {
+            throw new Exception("ERROR: RedefineMethodInBacktraceApp failed.");
+        }
     }
 
     public static CountDownLatch stop = new CountDownLatch(1);
@@ -63,13 +67,18 @@
     }
 
     private void doMethodInBacktraceTest() throws Exception {
-        Throwable t = getThrowableFromMethodToRedefine();
+        Throwable t1 = getThrowableFromMethodToRedefine();
+        Throwable t2 = getThrowableFromMethodToDelete();
 
         doRedefine(RedefineMethodInBacktraceTarget.class);
 
         doClassUnloading();
 
-        touchRedefinedMethodInBacktrace(t);
+        System.out.println("checking backtrace for throwable from methodToRedefine");
+        touchRedefinedMethodInBacktrace(t1);
+
+        System.out.println("checking backtrace for throwable from methodToDelete");
+        touchRedefinedMethodInBacktrace(t2);
     }
 
     private void doMethodInBacktraceTestB() throws Exception {
@@ -95,8 +104,11 @@
         String[] threadPrintArgs = {};
         Object[] dcmdArgs = {threadPrintArgs};
         String[] signature = {String[].class.getName()};
-        DiagnosticCommandMBean dcmd = ManagementFactoryHelper.getDiagnosticCommandMBean();
-        System.out.println(dcmd.invoke("threadPrint", dcmdArgs, signature));
+        System.out.println(ManagementFactory.getPlatformMBeanServer().invoke(
+                ObjectName.getInstance("com.sun.management:type=DiagnosticCommand"),
+                "threadPrint",
+                dcmdArgs,
+                signature));
 
         // release the thread
         stop.countDown();
@@ -115,6 +127,10 @@
             if (!(thrownFromMethodToRedefine instanceof RuntimeException)) {
                 throw e;
             }
+        } catch (Exception e) {
+            e.printStackTrace();
+            System.out.println("\nTest failed: unexpected exception: " + e.toString());
+            failed = true;
         }
         method = null;
         c = null;
@@ -122,15 +138,49 @@
         return thrownFromMethodToRedefine;
     }
 
+    private static Throwable getThrowableFromMethodToDelete() throws Exception {
+        Class<RedefineMethodInBacktraceTarget> c =
+                RedefineMethodInBacktraceTarget.class;
+        Method method = c.getMethod("callMethodToDelete");
+
+        Throwable thrownFromMethodToDelete = null;
+        try {
+            method.invoke(null);
+        } catch (InvocationTargetException e) {
+            thrownFromMethodToDelete = e.getCause();
+            if (!(thrownFromMethodToDelete instanceof RuntimeException)) {
+                throw e;
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            System.out.println("\nTest failed: unexpected exception: " + e.toString());
+            failed = true;
+        }
+        return thrownFromMethodToDelete;
+    }
+
+
     private static void doClassUnloading() {
         // This will clean out old, unused redefined methods.
         System.gc();
     }
 
     private static void touchRedefinedMethodInBacktrace(Throwable throwable) {
+        throwable.printStackTrace();
         // Make sure that we can convert the backtrace, which is referring to
         // the redefined method, to a  StrackTraceElement[] without crashing.
-        throwable.getStackTrace();
+        StackTraceElement[] stackTrace = throwable.getStackTrace();
+        for (int i = 0; i < stackTrace.length; i++) {
+          StackTraceElement frame = stackTrace[i];
+          if (frame.getClassName() == null) {
+              System.out.println("\nTest failed: trace[" + i + "].getClassName() returned null");
+              failed = true;
+          }
+          if (frame.getMethodName() == null) {
+              System.out.println("\nTest failed: trace[" + i + "].getMethodName() returned null");
+              failed = true;
+          }
+        }
     }
 
     private static void doRedefine(Class<?> clazz) throws Exception {
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTarget.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTarget.java	Wed Jul 05 20:32:21 2017 +0200
@@ -29,4 +29,13 @@
     public static void methodToRedefine() {
         throw new RuntimeException("Test exception");
     }
+
+    public static void callMethodToDelete() {
+        methodToDelete();
+    }
+
+    private static void methodToDelete() {
+        throw new RuntimeException("Test exception in methodToDelete");
+    }
+
 }
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTargetB.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTargetB.java	Wed Jul 05 20:32:21 2017 +0200
@@ -37,4 +37,16 @@
             // ignore, test will fail
         }
     }
+
+    public static void callMethodToDelete() {
+        try {
+            // signal that we are here
+            RedefineMethodInBacktraceApp.called.countDown();
+
+            // wait until test is done
+            RedefineMethodInBacktraceApp.stop.await();
+        } catch (InterruptedException ex) {
+            // ignore, test will fail
+        }
+    }
 }
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTargetB_2.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTargetB_2.java	Wed Jul 05 20:32:21 2017 +0200
@@ -28,4 +28,7 @@
 public class RedefineMethodInBacktraceTargetB {
     public static void methodToRedefine() {
     }
+
+    public static void callMethodToDelete() {
+    }
 }
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTarget_2.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktraceTarget_2.java	Wed Jul 05 20:32:21 2017 +0200
@@ -29,4 +29,8 @@
     public static void methodToRedefine() {
         throw new RuntimeException("Test exception 2");
     }
+
+    public static void callMethodToDelete() {
+        throw new RuntimeException("Test exception 2 in callMethodToDelete");
+    }
 }
--- a/jdk/test/java/lang/instrument/RedefineMethodWithAnnotations.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineMethodWithAnnotations.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Method annotations are incorrectly set when redefining classes.
 # @author Stefan Karlsson
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineMethodWithAnnotationsAgent 'Can-Redefine-Classes: true'
 # @run build RedefineMethodWithAnnotationsTarget RedefineMethodWithAnnotationsApp RedefineMethodWithAnnotationsAnnotations
 # @run shell RedefineMethodWithAnnotations.sh
--- a/jdk/test/java/lang/instrument/RedefineSubclassWithTwoInterfaces.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RedefineSubclassWithTwoInterfaces.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 #   verify that the right methods are called.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run shell MakeJAR3.sh RedefineSubclassWithTwoInterfacesAgent 'Can-Redefine-Classes: true'
 # @run build RedefineSubclassWithTwoInterfacesApp
 # @run shell RedefineSubclassWithTwoInterfaces.sh
--- a/jdk/test/java/lang/instrument/RemoveAbsentTransformerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RemoveAbsentTransformerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary remove an transformer that was never added
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build RemoveAbsentTransformerTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar RemoveAbsentTransformerTest RemoveAbsentTransformerTest
--- a/jdk/test/java/lang/instrument/RemoveTransformerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RemoveTransformerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple remove of a transformer that was added
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build RemoveTransformerTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar RemoveTransformerTest RemoveTransformerTest
--- a/jdk/test/java/lang/instrument/RetransformAgent.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RetransformAgent.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test retransformClasses
  * @author Robert Field, Sun Microsystems
  *
+ * @modules java.base/jdk.internal.org.objectweb.asm
  * @run shell/timeout=240 MakeJAR2.sh RetransformAgent RetransformApp 'Can-Retransform-Classes: true'
  * @run main/othervm -javaagent:RetransformAgent.jar RetransformApp
  */
--- a/jdk/test/java/lang/instrument/RetransformBigClass.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/RetransformBigClass.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Retransform a big class.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run shell MakeJAR4.sh RetransformBigClassAgent SimpleIdentityTransformer 'Can-Retransform-Classes: true'
 # @run build BigClass RetransformBigClassApp NMTHelper
 # @run shell/timeout=600 RetransformBigClass.sh
--- a/jdk/test/java/lang/instrument/SingleTransformerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/SingleTransformerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary simple test with one transformer (makes sure it gets called)
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build SingleTransformerTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar SingleTransformerTest SingleTransformerTest
--- a/jdk/test/java/lang/instrument/StressGetObjectSizeTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/StressGetObjectSizeTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary stress getObjectSize() API
 # @author Daniel D. Daugherty as modified from the code of fischman@google.com
 #
+# @modules java.instrument
 # @run build StressGetObjectSizeApp
 # @run shell MakeJAR.sh basicAgent
 # @run shell StressGetObjectSizeTest.sh
--- a/jdk/test/java/lang/instrument/TransformMethodTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/TransformMethodTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary test transformer add/remove pairs in sequence
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build TransformMethodTest
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar TransformMethodTest TransformMethodTest
--- a/jdk/test/java/lang/instrument/TransformerManagementThreadAddTests.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/TransformerManagementThreadAddTests.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary multi-thread test to exercise sync and contention for adds to transformer registry
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build TransformerManagementThreadAddTests
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar TransformerManagementThreadAddTests TransformerManagementThreadAddTests
--- a/jdk/test/java/lang/instrument/TransformerManagementThreadRemoveTests.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/TransformerManagementThreadRemoveTests.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary multi-thread test to exercise sync and contention for removes to transformer registry
  * @author Gabriel Adauto, Wily Technology
  *
+ * @modules java.instrument
  * @run build TransformerManagementThreadRemoveTests
  * @run shell MakeJAR.sh redefineAgent
  * @run main/othervm -javaagent:redefineAgent.jar TransformerManagementThreadRemoveTests TransformerManagementThreadRemoveTests
--- a/jdk/test/java/lang/instrument/VerifyLocalVariableTableOnRetransformTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/VerifyLocalVariableTableOnRetransformTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 # transform() on a retransform operation.
 # @author Daniel D. Daugherty
 #
+# @modules java.instrument
 # @run build VerifyLocalVariableTableOnRetransformTest
 # @run compile -g DummyClassWithLVT.java
 # @run shell MakeJAR.sh retransformAgent
--- a/jdk/test/java/lang/instrument/appendToClassLoaderSearch/CircularityErrorTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/appendToClassLoaderSearch/CircularityErrorTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Unit tests for appendToBootstrapClassLoaderSearch and
 #   appendToSystemClasLoaderSearch methods.
 #
+# @modules java.instrument
 # @run shell/timeout=240 CircularityErrorTest.sh
 
 if [ "${TESTSRC}" = "" ]
--- a/jdk/test/java/lang/instrument/appendToClassLoaderSearch/ClassUnloadTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/appendToClassLoaderSearch/ClassUnloadTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @summary Unit tests for appendToBootstrapClassLoaderSearch and
 #   appendToSystemClasLoaderSearch methods.
 #
+# @modules java.instrument
 # @build ClassUnloadTest
 # @run shell ClassUnloadTest.sh
 
--- a/jdk/test/java/lang/instrument/appendToClassLoaderSearch/run_tests.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/instrument/appendToClassLoaderSearch/run_tests.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 # @summary Unit tests for appendToBootstrapClassLoaderSearch and
 #   appendToSystemClasLoaderSearch methods.
 #
+# @modules java.instrument
 # @build Agent AgentSupport BootSupport BasicTest PrematureLoadTest DynamicTest
 # @run shell/timeout=240 run_tests.sh
 
--- a/jdk/test/java/lang/management/BufferPoolMXBean/Basic.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/BufferPoolMXBean/Basic.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /* @test
  * @bug 6606598 7024172
  * @summary Unit test for java.lang.management.BufferPoolMXBean
+ * @modules java.management
  * @run main/othervm Basic
  * @key randomness
  */
--- a/jdk/test/java/lang/management/ClassLoadingMXBean/LoadCounts.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ClassLoadingMXBean/LoadCounts.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *                             ClassLoadingMXBean.getTotalLoadedClassCount()
  *                             ClassLoadingMXBean.getUnloadedClassCount()
  * @author  Alexei Guibadoulline
+ * @modules java.management
  * @run main/othervm LoadCounts
  */
 
--- a/jdk/test/java/lang/management/CompilationMXBean/Basic.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/CompilationMXBean/Basic.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5011189 8004928
  * @summary Unit test for java.lang.management.CompilationMXBean
  *
+ * @modules java.management
  * @run main/othervm -Xcomp -Xbatch Basic
  */
 import java.lang.management.*;
--- a/jdk/test/java/lang/management/CompositeData/MemoryNotifInfoCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/CompositeData/MemoryNotifInfoCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *          the input CompositeData is invalid.
  * @author  Mandy Chung
  *
+ * @modules java.management/sun.management
  * @compile OpenTypeConverter.java
  * @build MemoryNotifInfoCompositeData
  * @run main MemoryNotifInfoCompositeData
--- a/jdk/test/java/lang/management/CompositeData/MemoryUsageCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/CompositeData/MemoryUsageCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          or throw exception if the input CompositeData is invalid.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build MemoryUsageCompositeData
  * @run main MemoryUsageCompositeData
  */
--- a/jdk/test/java/lang/management/CompositeData/ThreadInfoCompositeData.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/CompositeData/ThreadInfoCompositeData.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *          the input CompositeData is invalid.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @compile OpenTypeConverter.java
  * @build ThreadInfoCompositeData
  * @run main ThreadInfoCompositeData
--- a/jdk/test/java/lang/management/GarbageCollectorMXBean/GcInfoCompositeType.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/GarbageCollectorMXBean/GcInfoCompositeType.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug     6396794
  * @summary Check that LastGcInfo contents are reasonable
  * @author  Eamonn McManus
+ * @modules java.management
+ *          jdk.management
  * @run     main/othervm -XX:-ExplicitGCInvokesConcurrent GcInfoCompositeType
  */
 // Passing "-XX:-ExplicitGCInvokesConcurrent" to force System.gc()
--- a/jdk/test/java/lang/management/MXBean/MXBeanBehavior.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MXBean/MXBeanBehavior.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Check that java.lang.management MXBeans have the same behavior
  *          as user MXBeans
  * @author  Eamonn McManus
+ * @modules java.management
+ *          jdk.management
  * @run     main/othervm MXBeanBehavior
  */
 
--- a/jdk/test/java/lang/management/ManagementFactory/GetObjectName.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/GetObjectName.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @summary Test if getObjectName handles properly when called by
  *          multiple threads simultaneously. Run in othervm mode to
  *          make sure the object name is not initialized to begin with.
+ * @modules java.management
  * @run main/othervm GetObjectName
  */
 
--- a/jdk/test/java/lang/management/ManagementFactory/GetPlatformMXBeans.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/GetPlatformMXBeans.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          methods and PlatformManagedObject.getObjectName()
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main GetPlatformMXBeans
  */
 
--- a/jdk/test/java/lang/management/ManagementFactory/GetPlatformManagementInterfaces.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/GetPlatformManagementInterfaces.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          ManagementFactory.getPlatformManagementInterfaces() method
  * @author  Frederic Parain
  *
+ * @modules java.management
  * @run main GetPlatformManagementInterfaces
  */
 
--- a/jdk/test/java/lang/management/ManagementFactory/MBeanServerMXBeanUnsupportedTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/MBeanServerMXBeanUnsupportedTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Test that all the platform MXBeans are wrapped in StandardMBean so
  *          an MBeanServer which does not have support for MXBeans can be used.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
+ *          jdk.management
  * @run clean MBeanServerMXBeanUnsupportedTest
  * @run build MBeanServerMXBeanUnsupportedTest
  * @run main/othervm MBeanServerMXBeanUnsupportedTest
--- a/jdk/test/java/lang/management/ManagementFactory/MXBeanException.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/MXBeanException.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build MXBeanException
  * @run main MXBeanException
  */
--- a/jdk/test/java/lang/management/ManagementFactory/MXBeanProxyTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/MXBeanProxyTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug     5024531
  * @summary Basic Test for ManagementFactory.newPlatformMXBean().
+ * @modules java.management
  * @run main/othervm MXBeanProxyTest
  * @author  Mandy Chung
  */
--- a/jdk/test/java/lang/management/ManagementFactory/PlatformMBeanServerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/PlatformMBeanServerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4947536
  * @summary Basic unit test of ManagementFactory.getPlatformMBeanServer()
  * @author  Mandy Chung
+ * @modules java.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/java/lang/management/ManagementFactory/ProxyExceptions.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/ProxyExceptions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Test type mapping of the platform MXBean proxy
  *          returned from Management.newPlatformMXBeanProxy().
  * @author  Mandy Chung
+ * @modules java.management
+ *          jdk.management
  */
 import java.lang.management.*;
 import javax.management.*;
--- a/jdk/test/java/lang/management/ManagementFactory/ProxyTypeMapping.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/ProxyTypeMapping.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,8 @@
  *          returned from Management.newPlatformMXBeanProxy().
  * @author  Mandy Chung
  *
+ * @modules java.management
+ *          jdk.management
  * @compile ProxyTypeMapping.java
  * @run main/othervm -verbose:gc ProxyTypeMapping
  */
--- a/jdk/test/java/lang/management/ManagementFactory/ThreadMXBeanProxy.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/ThreadMXBeanProxy.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main ThreadMXBeanProxy
  */
 
--- a/jdk/test/java/lang/management/ManagementFactory/ValidateOpenTypes.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ManagementFactory/ValidateOpenTypes.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,8 @@
  *          MBeanServer.
  * @author  Mandy Chung
  *
+ * @modules java.management
+ *          jdk.management
  * @compile ValidateOpenTypes.java
  * @run main/othervm -verbose:gc ValidateOpenTypes
  */
--- a/jdk/test/java/lang/management/MemoryMXBean/CollectionUsageThreshold.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/CollectionUsageThreshold.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @author  Mandy Chung
  *
  * @library /lib/testlibrary/
+ * @modules java.management
  * @build jdk.testlibrary.* CollectionUsageThreshold MemoryUtil RunUtil
  * @requires vm.opt.ExplicitGCInvokesConcurrent == "false" | vm.opt.ExplicitGCInvokesConcurrent == "null"
  * @run main/timeout=300 CollectionUsageThreshold
--- a/jdk/test/java/lang/management/MemoryMXBean/GetMBeanInfo.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/GetMBeanInfo.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Make sure MemoryMXBean has two notification types.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main GetMBeanInfo
  */
 
--- a/jdk/test/java/lang/management/MemoryMXBean/LowMemoryTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/LowMemoryTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -31,6 +31,7 @@
  * @author  Mandy Chung
  *
  * @library /lib/testlibrary/
+ * @modules java.management
  * @build jdk.testlibrary.* LowMemoryTest MemoryUtil RunUtil
   * @run main/timeout=600 LowMemoryTest
  * @requires vm.opt.ExplicitGCInvokesConcurrent != "true"
--- a/jdk/test/java/lang/management/MemoryMXBean/LowMemoryTest2.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/LowMemoryTest2.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @bug     4982128
 # @summary Test low memory detection of non-heap memory pool
 # @requires vm.gc=="null"
+# @modules java.management
 # @run build LowMemoryTest2 MemoryUtil
 # @run shell/timeout=600 LowMemoryTest2.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryManagement.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryManagement.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build MemoryManagement MemoryUtil
  * @run main/othervm/timeout=600 -Xmn8m -XX:+IgnoreUnrecognizedVMOptions -XX:G1HeapRegionSize=1 -XX:-UseLargePages MemoryManagement
  */
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementConcMarkSweepGC.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementConcMarkSweepGC.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary Run MemoryManagement test with concurrent mark sweep GC
 # @author  Mandy Chung
 # @requires vm.gc=="ConcMarkSweep" | vm.gc=="null"
+# @modules java.management
 # @run build MemoryManagement
 # @run shell/timeout=600 MemoryManagementConcMarkSweepGC.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementParallelGC.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementParallelGC.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary Run MemoryManagement test with parallel GC
 # @author  Mandy Chung
 # @requires vm.gc=="Parallel" | vm.gc=="null"
+# @modules java.management
 # @run build MemoryManagement
 # @run shell/timeout=600 MemoryManagementParallelGC.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementSerialGC.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryManagementSerialGC.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary Run MemoryManagement test with serial GC
 # @author  Mandy Chung
 # @requires vm.gc=="Serial" | vm.gc=="null"
+# @modules java.management
 # @run build MemoryManagement
 # @run shell/timeout=600 MemoryManagementSerialGC.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          MemoryMXBean.getMemoryManager().
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main MemoryTest 2
  */
 
--- a/jdk/test/java/lang/management/MemoryMXBean/MemoryTestAllGC.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/MemoryTestAllGC.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @summary 
 # @author  Mandy Chung
 # @requires vm.gc=="Parallel" | vm.gc=="null"
+# @modules java.management
 # @run compile MemoryTest.java
 # @run shell MemoryTestAllGC.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/Pending.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/Pending.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,8 @@
 /*
  * @test
  * @bug     4530538
+ * @modules java.base/sun.misc
+ *          java.management
  * @summary Basic unit test of
  *          RuntimeMXBean.getObjectPendingFinalizationCount()
  *          1. GC and runFinalization() to get the current pending number
@@ -32,7 +34,6 @@
  *          4. GC and runFinalization() and the finalizable objects should
  *             be garbage collected.
  * @author  Alexei Guibadoulline and Mandy Chung
- *
  */
 
 import java.lang.management.*;
--- a/jdk/test/java/lang/management/MemoryMXBean/PendingAllGC.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/PendingAllGC.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
 # @summary 
 # @author  Mandy Chung
 # @requires vm.gc=="null"
+# @modules java.base/sun.misc
 # @run compile Pending.java
 # @run shell PendingAllGC.sh
 #
--- a/jdk/test/java/lang/management/MemoryMXBean/ResetPeakMemoryUsage.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryMXBean/ResetPeakMemoryUsage.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  * @author  Mandy Chung
  *
  * @library /lib/testlibrary/
+ * @modules java.management
  * @build jdk.testlibrary.* ResetPeakMemoryUsage MemoryUtil RunUtil
  * @run main ResetPeakMemoryUsage
  */
--- a/jdk/test/java/lang/management/MemoryPoolMXBean/ThresholdTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/MemoryPoolMXBean/ThresholdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          MemoryPoolMXBean.isCollectionThresholdExceeded().
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main/othervm ThresholdTest
  */
 
--- a/jdk/test/java/lang/management/OperatingSystemMXBean/PlatformMXBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/OperatingSystemMXBean/PlatformMXBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,8 @@
  *          ManagementFactory.getPlatformMXBeans()
  * @author  Mandy Chung
  *
+ * @modules java.management
+ *          jdk.management
  * @run main PlatformMXBeanTest
  */
 
--- a/jdk/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 # @author   Mandy Chung
 # @bug      6336608 6367473 6511738
 #
+# @modules java.management
 # @run build GetSystemLoadAverage
 # @run shell/timeout=300 TestSystemLoadAvg.sh
 #
--- a/jdk/test/java/lang/management/PlatformLoggingMXBean/LoggingMXBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/PlatformLoggingMXBean/LoggingMXBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Test if proxy for PlatformLoggingMXBean is equivalent
  *          to proxy for LoggingMXBean
  *
+ * @modules java.management
+ *          jdk.management
  * @build LoggingMXBeanTest
  * @run main LoggingMXBeanTest
  */
--- a/jdk/test/java/lang/management/PlatformLoggingMXBean/PlatformLoggingMXBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/PlatformLoggingMXBean/PlatformLoggingMXBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,8 @@
  *          This test performs similar testing as
  *          java/util/logging/LoggingMXBeanTest.
  *
+ * @modules java.management
+ *          jdk.management
  * @build PlatformLoggingMXBeanTest
  * @run main PlatformLoggingMXBeanTest
  */
--- a/jdk/test/java/lang/management/RuntimeMXBean/GetSystemProperties.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/RuntimeMXBean/GetSystemProperties.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4990512
  * @summary Basic Test for RuntimeMXBean.getSystemProperties().
  * @author  Mandy Chung
+ * @modules java.management
  */
 
 import java.lang.management.ManagementFactory;
--- a/jdk/test/java/lang/management/RuntimeMXBean/PropertiesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/RuntimeMXBean/PropertiesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          properties contain another list of properties as the defaults.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run build PropertiesTest
  * @run main  PropertiesTest
  */
--- a/jdk/test/java/lang/management/RuntimeMXBean/TestInputArgument.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/RuntimeMXBean/TestInputArgument.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 # @bug     4530538
 # @summary 
 # @author  Mandy Chung
+# @modules java.management
 # @run compile InputArgument.java
 # @run shell TestInputArgument.sh
 #
--- a/jdk/test/java/lang/management/RuntimeMXBean/UpTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/RuntimeMXBean/UpTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4530538
  * @summary Basic unit test of RuntimeMXBean.getUptime()
  * @author  Alexei Guibadoulline
+ * @modules java.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/java/lang/management/ThreadMXBean/AllThreadIds.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/AllThreadIds.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary Basic unit test of ThreadMXBean.getAllThreadIds()
  * @author  Alexei Guibadoulline and Mandy Chung
  *
+ * @modules java.management
  * @run main/othervm AllThreadIds
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/DisableTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/DisableTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary The capability is disabled regardless of number of times
  *          it was enabled.
  * @author  Mandy Chung
+ * @modules java.management
  */
 
 import java.lang.management.ThreadMXBean;
--- a/jdk/test/java/lang/management/ThreadMXBean/EnableTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/EnableTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *          and ThreadMXBean.setThreadCpuTimeEnabled().
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main EnableTest
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/FindDeadlocks.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/FindDeadlocks.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,11 +25,13 @@
 /*
  * @test
  * @bug     5086470
+ * @key intermittent
  * @summary Basic Test for the following methods:
  *          - ThreadMXBean.findDeadlockedThreads()
  *          - ThreadMXBean.findMonitorDeadlockedThreads()
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build MonitorDeadlock
  * @build SynchronizerDeadlock
  * @build ThreadDump
--- a/jdk/test/java/lang/management/ThreadMXBean/FindMonitorDeadlock.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/FindMonitorDeadlock.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          - ThreadMXBean.findMonitorDeadlockedThreads()
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build MonitorDeadlock
  * @build ThreadDump
  * @run main/othervm FindMonitorDeadlock
--- a/jdk/test/java/lang/management/ThreadMXBean/InvalidThreadID.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/InvalidThreadID.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          if id <= 0 and returns -1 if the thread doesn't exist.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main InvalidThreadID
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/LockedMonitors.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/LockedMonitors.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
  *
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build Barrier
  * @build LockingThread
  * @build ThreadDump
--- a/jdk/test/java/lang/management/ThreadMXBean/LockedSynchronizers.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/LockedSynchronizers.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build Barrier
  * @build SynchronizerLockingThread
  * @build ThreadDump
--- a/jdk/test/java/lang/management/ThreadMXBean/Locks.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/Locks.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @author  Jaroslav Bachorik
  *
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main/othervm Locks
  */
--- a/jdk/test/java/lang/management/ThreadMXBean/MyOwnSynchronizer.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/MyOwnSynchronizer.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          and getThreadInfo of customized JSR-166 synchronizers.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @build Barrier
  * @build ThreadDump
  * @run main/othervm MyOwnSynchronizer
--- a/jdk/test/java/lang/management/ThreadMXBean/ResetPeakThreadCount.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ResetPeakThreadCount.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * @author  Mandy Chung
  * @author  Jaroslav Bachorik
  *
+ * @modules java.management
  * @build ResetPeakThreadCount
  * @build ThreadDump
  * @run main/othervm ResetPeakThreadCount
--- a/jdk/test/java/lang/management/ThreadMXBean/Semaphore.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-/*
- * @bug     4530538
- * @summary A semaphore utility class.
- * @author  Mandy Chung
- */
-
-public class Semaphore {
-    private Object go = new Object();
-    private int semaCount;
-    private int waiters = 0;
-
-    public Semaphore() {
-        semaCount = 0;
-    }
-
-    public Semaphore(int initialCount) {
-        semaCount = initialCount;
-    }
-
-    public void semaP() {
-        synchronized (go) {
-            waiters++;
-            while (semaCount == 0) {
-                try {
-                    go.wait();
-                } catch (InterruptedException e) {
-                    e.printStackTrace();
-                    throw new InternalError();
-                }
-            }
-            semaCount--;
-            waiters--;
-        }
-    }
-    public void semaV() {
-        synchronized (go) {
-            semaCount++;
-            go.notify();
-        }
-    }
-
-    public int getWaiterCount() {
-        synchronized (go) {
-            return waiters;
-        }
-    }
-
-    public Object getLock() {
-        return go;
-    }
-}
--- a/jdk/test/java/lang/management/ThreadMXBean/SharedSynchronizer.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/SharedSynchronizer.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          in shared mode which has no owner when a thread is parked.
  * @author  Mandy Chung
  *
+ * @modules java.management
  * @run main/othervm SharedSynchronizer
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/SynchronizationStatistics.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/SynchronizationStatistics.java	Wed Jul 05 20:32:21 2017 +0200
@@ -29,6 +29,7 @@
  * @author  Mandy Chung
  * @author  Jaroslav Bachorik
  *
+ * @modules java.management
  * @run main/othervm SynchronizationStatistics
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadBlockedCount.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadBlockedCount.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic unit test of ThreadInfo.getBlockedCount()
  * @author  Alexei Guibadoulline and Mandy Chung
  * @author  Jaroslav Bachorik
+ * @modules java.management
  * @run main ThreadBlockedCount
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadCounts.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadCounts.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  *                             mbean.getDaemonThreadCount()
  * @author  Alexei Guibadoulline
  *
+ * @modules java.management
  * @run main ThreadCounts
  */
 
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadCpuTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadCpuTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic test of ThreadMXBean.getThreadCpuTime and
  *          getCurrentThreadCpuTime.
  * @author  Mandy Chung
+ * @modules java.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadDaemonTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadDaemonTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -31,6 +31,7 @@
  * @bug     6588467
  * @summary Basic test of ThreadInfo.isDaemon
  * @author  Jeremy Manson
+ * @modules java.management
  */
 public class ThreadDaemonTest {
 
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadInfoArray.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadInfoArray.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,27 +23,44 @@
 
 /*
  * @test
- * @bug     5058327
- * @summary Test if getThreadInfo(long[]) returns a ThreadInfo[]
- *          with null elements with no exception.
+ * @bug     5058327 8074368
+ * @summary Tests the correct behaviour of getThreadInfo(long[]) for non-existent
+ *          thread IDs and the empty thread id array.
  *
  * @author  Mandy Chung
+ * @author  Jaroslav Bachorik
  *
+ * @modules java.management
  * @build ThreadInfoArray
  * @run main ThreadInfoArray
  */
 
 import java.lang.management.*;
 import javax.management.*;
-import java.util.*;
 import static java.lang.management.ManagementFactory.*;
 
 public class ThreadInfoArray {
     public static void main(String[] argv) throws Exception {
+        MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
+        ObjectName on = new ObjectName(THREAD_MXBEAN_NAME);
+
         ThreadMXBean mbean = ManagementFactory.getThreadMXBean();
+        ThreadMXBean proxy = newPlatformMXBeanProxy(mbs,
+                                 on.toString(),
+                                 ThreadMXBean.class);
 
+        checkNullElement(mbean, proxy, mbs, on);
+        checkEmptyArray(mbean, proxy, mbs, on);
+        System.out.println("Test passed");
+    }
+
+    private static void checkNullElement(ThreadMXBean mbean, ThreadMXBean proxy,
+                                         MBeanServer mbs, ObjectName on)
+        throws Exception {
+        System.out.println("--- Check null element");
         // ID for a new thread
         long [] ids = {new Thread().getId()};
+        // direct call
         ThreadInfo[] tinfos = mbean.getThreadInfo(ids);
 
         if (tinfos[0] != null) {
@@ -52,8 +69,6 @@
         }
 
         // call getThreadInfo through MBeanServer
-        MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
-        ObjectName on = new ObjectName(THREAD_MXBEAN_NAME);
         Object[] params = {ids};
         String[] sigs = {"[J"};
         Object[] result = (Object[]) mbs.invoke(on, "getThreadInfo", params, sigs);
@@ -64,14 +79,57 @@
         }
 
         // call getThreadInfo through proxy
-        ThreadMXBean proxy = newPlatformMXBeanProxy(mbs,
-                                 on.toString(),
-                                 ThreadMXBean.class);
         tinfos = proxy.getThreadInfo(ids);
         if (tinfos[0] != null) {
             throw new RuntimeException("TEST FAILED: " +
                 "Expected to have a null element");
         }
-        System.out.println("Test passed");
+        System.out.println("--- PASSED");
+    }
+
+    private static void checkEmptyArray(ThreadMXBean mbean, ThreadMXBean proxy,
+                                        MBeanServer mbs, ObjectName on)
+        throws Exception {
+        System.out.println("--- Check empty TID array");
+
+        long[] ids = new long[0];
+        // direct call
+        assertEmptyArray(mbean.getThreadInfo(ids), "Expected empty ThreadInfo array");
+        assertEmptyArray(mbean.getThreadInfo(ids, 1), "Expected empty ThreadInfo array");
+        assertEmptyArray(mbean.getThreadInfo(ids, true, true), "Expected empty ThreadInfo array");
+
+        // call getThreadInfo through MBeanServer
+        assertEmptyArray(
+            (Object[]) mbs.invoke(
+                on, "getThreadInfo", new Object[]{ids}, new String[]{"[J"}
+            ),
+            "Expected empty ThreadInfo array via MBeanServer"
+        );
+        assertEmptyArray(
+            (Object[]) mbs.invoke(
+                on, "getThreadInfo", new Object[]{ids, 1},
+                new String[]{"[J", "int"}
+            ),
+            "Expected empty ThreadInfo array via MBeanServer"
+        );
+        assertEmptyArray(
+            (Object[]) mbs.invoke(
+                on, "getThreadInfo", new Object[]{ids, true, true},
+                new String[]{"[J", "boolean", "boolean"}
+            ),
+            "Expected empty ThreadInfo array via MBeanServer"
+        );
+
+        // call getThreadInfo through proxy
+        assertEmptyArray(proxy.getThreadInfo(ids), "Expected empty ThreadInfo array");
+        assertEmptyArray(proxy.getThreadInfo(ids, 1), "Expected empty ThreadInfo array");
+        assertEmptyArray(proxy.getThreadInfo(ids, true, true), "Expected empty ThreadInfo array");
+        System.out.println("--- PASSED");
+    }
+
+    private static void assertEmptyArray(Object[] arr, String message) throws Exception {
+        if (arr.length > 0) {
+            throw new RuntimeException("TEST FAILED: " + message);
+        }
     }
 }
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadLists.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadLists.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5047639
  * @summary Check that the "java-level" APIs provide a consistent view of
  *          the thread list
+ * @modules java.management
  */
 import java.lang.management.ManagementFactory;
 import java.lang.management.ThreadMXBean;
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadMXBeanStateTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadMXBeanStateTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
  *
  * @library ../../Thread
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @build ThreadMXBeanStateTest ThreadStateController
  * @run main ThreadMXBeanStateTest
@@ -64,60 +65,61 @@
         Thread.currentThread().getState();
         ThreadStateController thread = new ThreadStateController("StateChanger", globalLock);
         thread.setDaemon(true);
-
-        // before myThread starts
-        thread.checkThreadState(NEW);
+        try {
+            // before myThread starts
+            thread.checkThreadState(NEW);
 
-        thread.start();
-        thread.transitionTo(RUNNABLE);
-        thread.checkThreadState(RUNNABLE);
-        checkLockInfo(thread, RUNNABLE, null, null);
+            thread.start();
+            thread.transitionTo(RUNNABLE);
+            thread.checkThreadState(RUNNABLE);
+            checkLockInfo(thread, RUNNABLE, null, null);
 
-        thread.suspend();
-        ThreadStateController.pause(10);
-        thread.checkThreadState(RUNNABLE);
-        checkSuspendedThreadState(thread, RUNNABLE);
-        thread.resume();
+            thread.suspend();
+            ThreadStateController.pause(10);
+            thread.checkThreadState(RUNNABLE);
+            checkSuspendedThreadState(thread, RUNNABLE);
+            thread.resume();
 
-        synchronized (globalLock) {
-            thread.transitionTo(BLOCKED);
-            thread.checkThreadState(BLOCKED);
-            checkLockInfo(thread, BLOCKED,
-                          globalLock, Thread.currentThread());
-        }
+            synchronized (globalLock) {
+                thread.transitionTo(BLOCKED);
+                thread.checkThreadState(BLOCKED);
+                checkLockInfo(thread, BLOCKED,
+                              globalLock, Thread.currentThread());
+            }
 
-        thread.transitionTo(WAITING);
-        thread.checkThreadState(WAITING);
-        checkLockInfo(thread, Thread.State.WAITING,
-                      globalLock, null);
+            thread.transitionTo(WAITING);
+            thread.checkThreadState(WAITING);
+            checkLockInfo(thread, Thread.State.WAITING,
+                          globalLock, null);
 
-        thread.transitionTo(TIMED_WAITING);
-        thread.checkThreadState(TIMED_WAITING);
-        checkLockInfo(thread, TIMED_WAITING,
-                      globalLock, null);
+            thread.transitionTo(TIMED_WAITING);
+            thread.checkThreadState(TIMED_WAITING);
+            checkLockInfo(thread, TIMED_WAITING,
+                          globalLock, null);
 
 
-        thread.transitionToPark(true /* timed park */);
-        thread.checkThreadState(TIMED_WAITING);
-        checkLockInfo(thread, TIMED_WAITING, null, null);
+            thread.transitionToPark(true /* timed park */);
+            thread.checkThreadState(TIMED_WAITING);
+            checkLockInfo(thread, TIMED_WAITING, null, null);
 
-        thread.transitionToPark(false /* indefinite park */);
-        thread.checkThreadState(WAITING);
-        checkLockInfo(thread, WAITING, null, null);
+            thread.transitionToPark(false /* indefinite park */);
+            thread.checkThreadState(WAITING);
+            checkLockInfo(thread, WAITING, null, null);
 
-        thread.transitionToSleep();
-        thread.checkThreadState(TIMED_WAITING);
-        checkLockInfo(thread, TIMED_WAITING, null, null);
-
-        thread.transitionTo(TERMINATED);
-        thread.checkThreadState(TERMINATED);
+            thread.transitionToSleep();
+            thread.checkThreadState(TIMED_WAITING);
+            checkLockInfo(thread, TIMED_WAITING, null, null);
 
-        try {
-            System.out.println(thread.getLog());
-        } catch (InterruptedException e) {
-            e.printStackTrace();
-            System.out.println("TEST FAILED: Unexpected exception.");
-            throw new RuntimeException(e);
+            thread.transitionTo(TERMINATED);
+            thread.checkThreadState(TERMINATED);
+        } finally {
+            try {
+                System.out.println(thread.getLog());
+            } catch (InterruptedException e) {
+                e.printStackTrace();
+                System.out.println("TEST FAILED: Unexpected exception.");
+                throw new RuntimeException(e);
+            }
         }
         System.out.println("Test passed.");
     }
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadStackTrace.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadStackTrace.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,25 +28,27 @@
  *          ThreadInfo.getThreadState()
  * @author  Mandy Chung
  *
- * @run build Semaphore Utils
+ * @modules java.management
+ * @run build Utils
  * @run main ThreadStackTrace
  */
 
 import java.lang.management.*;
+import java.util.concurrent.Phaser;
 
 public class ThreadStackTrace {
-    private static ThreadMXBean mbean
+    private static final ThreadMXBean mbean
         = ManagementFactory.getThreadMXBean();
     private static boolean notified = false;
-    private static Object lockA = new Object();
-    private static Object lockB = new Object();
+    private static final Object lockA = new Object();
+    private static final Object lockB = new Object();
     private static volatile boolean testFailed = false;
-    private static String[] blockedStack = {"run", "test", "A", "B", "C", "D"};
-    private static int bsDepth = 6;
-    private static int methodB = 4;
-    private static String[] examinerStack = {"run", "examine1", "examine2"};
-    private static int esDepth = 3;
-    private static int methodExamine1= 2;
+    private static final String[] blockedStack = {"run", "test", "A", "B", "C", "D"};
+    private static final int bsDepth = 6;
+    private static final int methodB = 4;
+    private static final String[] examinerStack = {"run", "examine1", "examine2"};
+    private static final int esDepth = 3;
+    private static final int methodExamine1= 2;
 
     private static void checkNullThreadInfo(Thread t) throws Exception {
         ThreadInfo ti = mbean.getThreadInfo(t.getId());
@@ -69,8 +71,10 @@
             trace = true;
         }
 
-        Examiner examiner = new Examiner("Examiner");
-        BlockedThread blocked = new BlockedThread("BlockedThread");
+        final Phaser p = new Phaser(2);
+
+        Examiner examiner = new Examiner("Examiner", p);
+        BlockedThread blocked = new BlockedThread("BlockedThread", p);
         examiner.setThread(blocked);
 
         checkNullThreadInfo(examiner);
@@ -79,8 +83,8 @@
         // Start the threads and check them in  Blocked and Waiting states
         examiner.start();
 
-        // block until examiner begins doing its real work
-        examiner.waitForStarted();
+        // #1 - block until examiner begins doing its real work
+        p.arriveAndAwaitAdvance();
 
         System.out.println("Checking stack trace for the examiner thread " +
                            "is waiting to begin.");
@@ -145,35 +149,11 @@
     }
 
     static class BlockedThread extends Thread {
-        private Semaphore handshake = new Semaphore();
-
-        BlockedThread(String name) {
-            super(name);
-        }
-        boolean hasWaitersForBlocked() {
-            return (handshake.getWaiterCount() > 0);
-        }
-
-        void waitUntilBlocked() {
-            handshake.semaP();
+        private final Phaser phaser;
 
-            // give a chance for the examiner thread to really wait
-            Utils.goSleep(20);
-        }
-
-        void waitUntilLockAReleased() {
-            handshake.semaP();
-
-            // give a chance for the examiner thread to really wait
-            Utils.goSleep(50);
-        }
-
-        private void notifyWaiter() {
-            // wait until the examiner waits on the semaphore
-            while (handshake.getWaiterCount() == 0) {
-                Utils.goSleep(20);
-            }
-            handshake.semaV();
+        BlockedThread(String name, Phaser phaser) {
+            super(name);
+            this.phaser = phaser;
         }
 
         private void test() {
@@ -185,25 +165,24 @@
         private void B() {
             C();
 
-            // notify the examiner about to block on lockB
-            notifyWaiter();
+            // #4 - notify the examiner about to block on lockB
+            phaser.arriveAndAwaitAdvance();
 
-            synchronized (lockB) {
-            };
+            synchronized (lockB) {};
         }
         private void C() {
             D();
         }
         private void D() {
-            // Notify that examiner about to enter lockA
-            notifyWaiter();
+            // #2 - Notify that examiner about to enter lockA
+            phaser.arriveAndAwaitAdvance();
 
             synchronized (lockA) {
                 notified = false;
                 while (!notified) {
                     try {
-                        // notify the examiner about to release lockA
-                        notifyWaiter();
+                        // #3 - notify the examiner about to release lockA
+                        phaser.arriveAndAwaitAdvance();
                         // Wait and let examiner thread check the mbean
                         lockA.wait();
                     } catch (InterruptedException e) {
@@ -216,6 +195,7 @@
             }
         }
 
+        @Override
         public void run() {
             test();
         } // run()
@@ -223,28 +203,17 @@
 
     static class Examiner extends Thread {
         private static BlockedThread blockedThread;
-        private Semaphore handshake = new Semaphore();
+        private final Phaser phaser;
 
-        Examiner(String name) {
+        Examiner(String name, Phaser phaser) {
             super(name);
+            this.phaser = phaser;
         }
 
         public void setThread(BlockedThread thread) {
             blockedThread = thread;
         }
 
-        public synchronized void waitForStarted() {
-            // wait until the examiner is about to block
-            handshake.semaP();
-
-            // wait until the examiner is waiting for blockedThread's notification
-            while (!blockedThread.hasWaitersForBlocked()) {
-                Utils.goSleep(50);
-            }
-            // give a chance for the examiner thread to really wait
-            Utils.goSleep(20);
-        }
-
         private Thread itself;
         private void examine1() {
             synchronized (lockB) {
@@ -254,8 +223,9 @@
                     Utils.checkThreadState(itself, Thread.State.RUNNABLE);
                     checkStack(itself, examinerStack, methodExamine1);
 
-                    // wait until blockedThread is blocked on lockB
-                    blockedThread.waitUntilBlocked();
+                    // #4 - wait until blockedThread is blocked on lockB
+                    phaser.arriveAndAwaitAdvance();
+                    Utils.waitForThreadState(blockedThread, State.BLOCKED);
 
                     System.out.println("Checking stack trace for " +
                         "BlockedThread - should be blocked on lockB.");
@@ -271,15 +241,12 @@
 
         private void examine2() {
             synchronized (lockA) {
-                // wait until main thread gets signalled of the semaphore
-                while (handshake.getWaiterCount() == 0) {
-                    Utils.goSleep(20);
-                }
-
-                handshake.semaV();  // notify the main thread
+                // #1 - examiner ready to do the real work
+                phaser.arriveAndAwaitAdvance();
                 try {
-                    // Wait until BlockedThread is about to block on lockA
-                    blockedThread.waitUntilBlocked();
+                    // #2 - Wait until BlockedThread is about to block on lockA
+                    phaser.arriveAndAwaitAdvance();
+                    Utils.waitForThreadState(blockedThread, State.BLOCKED);
 
                     System.out.println("Checking examiner's its own stack trace");
                     Utils.checkThreadState(itself, Thread.State.RUNNABLE);
@@ -297,9 +264,10 @@
                 }
             }
 
-            // release lockA and let BlockedThread to get the lock
+            // #3 - release lockA and let BlockedThread to get the lock
             // and wait on lockA
-            blockedThread.waitUntilLockAReleased();
+            phaser.arriveAndAwaitAdvance();
+            Utils.waitForThreadState(blockedThread, State.WAITING);
 
             synchronized (lockA) {
                 try {
@@ -321,6 +289,7 @@
             Utils.goSleep(50);
         } // examine2()
 
+        @Override
         public void run() {
             itself = Thread.currentThread();
             examine1();
--- a/jdk/test/java/lang/management/ThreadMXBean/ThreadUserTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/lang/management/ThreadMXBean/ThreadUserTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic test of ThreadMXBean.getThreadUserTime and
  *          getCurrentThreadUserTime.
  * @author  Mandy Chung
+ * @modules java.management
  */
 
 import java.lang.management.*;
--- a/jdk/test/java/nio/file/Files/CheckPermissions.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/nio/file/Files/CheckPermissions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,7 +22,7 @@
  */
 
 /* @test
- * @bug 6866804 7006126 8028270
+ * @bug 6866804 7006126 8028270 8065109
  * @summary Unit test for java.nio.file.Files
  * @library ..
  * @build CheckPermissions
@@ -37,6 +37,7 @@
 import java.nio.channels.SeekableByteChannel;
 import java.security.Permission;
 import java.io.*;
+import java.nio.charset.StandardCharsets;
 import java.util.*;
 
 /**
@@ -426,8 +427,40 @@
             }
             createFile(file); // restore file
 
+            // -- newBufferedReader/newBufferedWriter --
 
-            // -- newInputStream/newOutptuStream --
+            prepare();
+            try (BufferedReader br = newBufferedReader(file)) {
+                assertCheckRead(file);
+            }
+
+            prepare();
+            try (BufferedWriter bw = newBufferedWriter(file, WRITE)) {
+                assertCheckWrite(file);
+            }
+
+            prepare();
+            try (BufferedWriter bw = newBufferedWriter(file, DELETE_ON_CLOSE)) {
+                assertCheckWrite(file);
+                assertCheckDelete(file);
+            }
+            createFile(file); // restore file
+
+            prepare();
+            try (BufferedWriter bw = newBufferedWriter(file,
+                StandardCharsets.UTF_16, WRITE)) {
+                assertCheckWrite(file);
+            }
+
+            prepare();
+            try (BufferedWriter bw = newBufferedWriter(file,
+                StandardCharsets.UTF_16, DELETE_ON_CLOSE)) {
+                assertCheckWrite(file);
+                assertCheckDelete(file);
+            }
+            createFile(file); // restore file
+
+            // -- newInputStream/newOutputStream --
 
             prepare();
             try (InputStream in = newInputStream(file)) {
@@ -438,6 +471,42 @@
                 assertCheckWrite(file);
             }
 
+            // -- write --
+
+            prepare();
+            Files.write(file, new byte[]{(byte) 42, (byte) 666}, WRITE);
+            assertCheckWrite(file);
+
+            prepare();
+            Files.write(file, new byte[]{(byte) 42, (byte) 666}, WRITE,
+                DELETE_ON_CLOSE);
+            assertCheckWrite(file);
+            assertCheckDelete(file);
+            createFile(file); // restore file
+
+            List<String> lines = Arrays.asList("42", "666");
+
+            prepare();
+            Files.write(file, lines, StandardCharsets.UTF_16, WRITE);
+            assertCheckWrite(file);
+
+            prepare();
+            Files.write(file, lines, StandardCharsets.UTF_16, WRITE,
+                DELETE_ON_CLOSE);
+            assertCheckWrite(file);
+            assertCheckDelete(file);
+            createFile(file); // restore file
+
+            prepare();
+            Files.write(file, lines, WRITE);
+            assertCheckWrite(file);
+
+            prepare();
+            Files.write(file, lines, WRITE, DELETE_ON_CLOSE);
+            assertCheckWrite(file);
+            assertCheckDelete(file);
+            createFile(file); // restore file
+
             // -- newDirectoryStream --
 
             prepare();
--- a/jdk/test/java/util/regex/RegExTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/java/util/regex/RegExTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -23,7 +23,7 @@
 
 /**
  * @test
- * @summary tests RegExp framework
+ * @summary tests RegExp framework (use -Dseed=X to set PRNG seed)
  * @author Mike McCloskey
  * @bug 4481568 4482696 4495089 4504687 4527731 4599621 4631553 4619345
  * 4630911 4672616 4711773 4727935 4750573 4792284 4803197 4757029 4808962
@@ -33,7 +33,10 @@
  * 6350801 6676425 6878475 6919132 6931676 6948903 6990617 7014645 7039066
  * 7067045 7014640 7189363 8007395 8013252 8013254 8012646 8023647 6559590
  * 8027645 8035076 8039124 8035975 8074678
- * @key randomness
+ * @library /lib/testlibrary
+ * @build jdk.testlibrary.*
+ * @run main RegExTest
+ * @key intermittent randomness
  */
 
 import java.util.function.Function;
@@ -50,7 +53,7 @@
  */
 public class RegExTest {
 
-    private static Random generator = new Random();
+    private static Random generator = RandomFactory.getRandom();
     private static boolean failure = false;
     private static int failCount = 0;
     private static String firstFailure = null;
--- a/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ImplementationVersion/ImplVersionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * is run with a security manager and the test codebase has the java permission
  * to read the "java.runtime.version" system property.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ImplVersionTest ImplVersionCommand
  * @run build ImplVersionTest ImplVersionCommand ImplVersionReader
  * @run main ImplVersionTest
@@ -76,7 +77,6 @@
                 checkVersion = false;
             String command =
                 javaHome + File.separator + "bin" + File.separator + "java " +
-                " -Xbootclasspath/p:" + bootClassPath +
                 " -classpath " + testClasses +
                 " -Djava.security.manager -Djava.security.policy==" + testSrc +
                 File.separator + "policy -Dtest.classes=" + testClasses +
--- a/jdk/test/javax/management/Introspector/AnnotationSecurityTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/AnnotationSecurityTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Test that having a security manager doesn't trigger a
  *          NotCompliantMBeanException
  * @author Daniel Fuchs, Yves Joan
+ * @modules java.desktop
+ *          java.management
  * @run clean AnnotationSecurityTest Described UnDescribed DescribedMBean
  *            UnDescribedMBean SqeDescriptorKey DescribedMX DescribedMXBean
  * @run build AnnotationSecurityTest Described UnDescribed DescribedMBean
--- a/jdk/test/javax/management/Introspector/AnnotationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/AnnotationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that annotations in Standard MBean interfaces
  * correctly produce Descriptor entries
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean AnnotationTest
  * @run build AnnotationTest
  * @run main AnnotationTest
--- a/jdk/test/javax/management/Introspector/ChangingNotifsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/ChangingNotifsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that Standard MBeans can change their MBeanNotificationInfo[]
  * and MXBeans cannot
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ChangingNotifsTest
  * @run build ChangingNotifsTest
  * @run main ChangingNotifsTest
--- a/jdk/test/javax/management/Introspector/ClassLeakTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/ClassLeakTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,12 +26,15 @@
  * @bug 4909536
  * @summary Ensure that the Introspector does not retain refs to classes
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ClassLeakTest
  * @run build ClassLeakTest
  * @run main ClassLeakTest
  */
 
 import java.lang.ref.WeakReference;
+import java.io.File;
+import java.nio.file.Paths;
 import java.net.*;
 import java.util.*;
 
@@ -44,17 +47,16 @@
                            "Standard MBean does not retain a reference to " +
                            "the MBean's class");
 
-        ClassLoader myClassLoader = ClassLeakTest.class.getClassLoader();
-        if (!(myClassLoader instanceof URLClassLoader)) {
-            System.out.println("TEST INVALID: test's class loader is not " +
-                               "a URLClassLoader");
-            System.exit(1);
+
+        String[] cpaths = System.getProperty("test.classes", ".")
+                                .split(File.pathSeparator);
+        URL[] urls = new URL[cpaths.length];
+        for (int i=0; i < cpaths.length; i++) {
+            urls[i] = Paths.get(cpaths[i]).toUri().toURL();
         }
 
-        URLClassLoader myURLClassLoader = (URLClassLoader) myClassLoader;
-        URL[] urls = myURLClassLoader.getURLs();
         PrivateMLet mlet = new PrivateMLet(urls, null, false);
-        Class shadowClass = mlet.loadClass(TestMBean.class.getName());
+        Class<?> shadowClass = mlet.loadClass(TestMBean.class.getName());
         if (shadowClass == TestMBean.class) {
             System.out.println("TEST INVALID: MLet got original " +
                                "TestMBean not shadow");
--- a/jdk/test/javax/management/Introspector/DuplicateGetterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/DuplicateGetterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that an MBean interface can inherit two methods with
  * the same signature from two unrelated parent interfaces
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.util.*;
--- a/jdk/test/javax/management/Introspector/FeatureOrderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/FeatureOrderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that attributes and operations appear in the same order
  * in MBeanInfo as they did in the Standard MBean or MXBean Interface.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 /*
--- a/jdk/test/javax/management/Introspector/GetMBeanInfoExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/GetMBeanInfoExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the exception thrown by DynamicMBean.getMBeanInfo()
  *          keeps the init cause.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean GetMBeanInfoExceptionTest
  * @run build GetMBeanInfoExceptionTest
  * @run main GetMBeanInfoExceptionTest
--- a/jdk/test/javax/management/Introspector/IdenticalMBeanInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/IdenticalMBeanInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that MBeans with the same class have identical MBeanInfo
  * unless they are NotificationBroadcasters
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean IdenticalMBeanInfoTest
  * @run build IdenticalMBeanInfoTest
  * @run main IdenticalMBeanInfoTest
--- a/jdk/test/javax/management/Introspector/ImmutableNotificationInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/ImmutableNotificationInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that a StandardMBean has immutableInfo=true if it is
  * a NotificationBroadcasterSupport that doesn't override getNotificationInfo()
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ImmutableNotificationInfoTest
  * @run build ImmutableNotificationInfoTest
  * @run main ImmutableNotificationInfoTest
--- a/jdk/test/javax/management/Introspector/InvokeGettersTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/InvokeGettersTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6317101
  * @summary Test that the jmx.invoke.getters system property works
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean InvokeGettersTest
  * @run build InvokeGettersTest
  * @run main InvokeGettersTest
--- a/jdk/test/javax/management/Introspector/IsMethodTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/IsMethodTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4947001 4954369 4954409 4954410
  * @summary Test that "Boolean isX()" and "int isX()" define operations
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean IsMethodTest
  * @run build IsMethodTest
  * @run main IsMethodTest
--- a/jdk/test/javax/management/Introspector/NotAnMBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/NotAnMBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4914805
  * @summary Ensure that the right exception is thrown for illegal MBeans
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NotAnMBeanTest
  * @run build NotAnMBeanTest
  * @run main NotAnMBeanTest
--- a/jdk/test/javax/management/Introspector/NotCompliantCauseTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/NotCompliantCauseTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that NotCompliantMBeanException has a cause in case of
  *          type mapping problems.
  * @author Daniel Fuchs, Alexander Shusherov
+ * @modules java.management
  * @run clean NotCompliantCauseTest
  * @run build NotCompliantCauseTest
  * @run main NotCompliantCauseTest
--- a/jdk/test/javax/management/Introspector/SetWrongTypeAttributeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/SetWrongTypeAttributeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that setting the wrong type of an attribute in a Standard
  * MBean or MXBean causes InvalidAttributeValueException
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean SetWrongTypeAttributeTest
  * @run build SetWrongTypeAttributeTest
  * @run main SetWrongTypeAttributeTest
--- a/jdk/test/javax/management/Introspector/UnregisterMBeanExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/Introspector/UnregisterMBeanExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          the supplied MBean although DynamicMBean.getMBeanInfo() throws
  *          a runtime exception.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean UnregisterMBeanExceptionTest
  * @run build UnregisterMBeanExceptionTest
  * @run main UnregisterMBeanExceptionTest
--- a/jdk/test/javax/management/MBeanInfo/EqualExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/EqualExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5071110
  * @summary Test whether an null descriptor will cause an NullPointerException.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean EqualExceptionTest
  * @run build EqualExceptionTest
  * @run main EqualExceptionTest
--- a/jdk/test/javax/management/MBeanInfo/MBeanInfoEqualsNPETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/MBeanInfoEqualsNPETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,6 +36,7 @@
  * @bug 8023954
  * @summary Test that MBean*Info.equals do not throw NPE
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MBeanInfoEqualsNPETest
  * @run build MBeanInfoEqualsNPETest
  * @run main MBeanInfoEqualsNPETest
--- a/jdk/test/javax/management/MBeanInfo/MBeanInfoEqualsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/MBeanInfoEqualsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4719923
  * @summary Test that MBeanInfo.equals works even for mutable subclasses
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MBeanInfoEqualsTest
  * @run build MBeanInfoEqualsTest
  * @run main MBeanInfoEqualsTest
--- a/jdk/test/javax/management/MBeanInfo/MBeanInfoHashCodeNPETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/MBeanInfoHashCodeNPETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,7 @@
  * @bug 8023669
  * @summary Test that hashCode()throws NullPointerException
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MBeanInfoHashCodeNPETest
  * @run build MBeanInfoHashCodeNPETest
  * @run main MBeanInfoHashCodeNPETest
--- a/jdk/test/javax/management/MBeanInfo/NotificationInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/NotificationInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that JMX classes use fully-qualified class names
  * in MBeanNotificationInfo
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NotificationInfoTest
  * @run build NotificationInfoTest
  * @run main NotificationInfoTest
--- a/jdk/test/javax/management/MBeanInfo/NullInfoArraysTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/NullInfoArraysTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that an MBeanInfo works even if it is deserialized from
  * an implementation where its array fields can be null.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NullInfoArraysTest
  * @run build NullInfoArraysTest
  * @run main NullInfoArraysTest
--- a/jdk/test/javax/management/MBeanInfo/SerializationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/SerializationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6288100
  * @summary Test the new serialization/deserialization methods.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean SerializationTest
  * @run build SerializationTest
  * @run main SerializationTest
--- a/jdk/test/javax/management/MBeanInfo/SerializationTest1.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/SerializationTest1.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6783290
  * @summary Test correct reading of an empty Descriptor.
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean SerializationTest1
  * @run build SerializationTest1
  * @run main SerializationTest1
--- a/jdk/test/javax/management/MBeanInfo/TooManyFooTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanInfo/TooManyFooTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that a method inherited from two different interfaces
  *          appears only once in MBeanInfo.
  * @author dfuchs
+ * @modules java.management
  * @run clean TooManyFooTest
  * @run build TooManyFooTest
  * @run main TooManyFooTest
--- a/jdk/test/javax/management/MBeanServer/AttributeListTypeSafeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/AttributeListTypeSafeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6336968
  * @summary Test adding non-Attribute values to an AttributeList.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.util.Collections;
--- a/jdk/test/javax/management/MBeanServer/MBeanExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/MBeanExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * RuntimeMBeanException and (for Standard MBeans) that checked exceptions
  * are wrapped in MBeanException
  * @author Eamonn McManus
+ * @modules java.management
  * @compile MBeanExceptionTest.java
  * @run main MBeanExceptionTest
  */
--- a/jdk/test/javax/management/MBeanServer/MBeanFallbackTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/MBeanFallbackTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  *          It needs to be a separate class because the "jdk.jmx.mbeans.allowNonPublic"
  *          system property must be set before c.s.j.m.MBeanAnalyzer has been loaded.
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean MBeanFallbackTest
  * @run build MBeanFallbackTest
  * @run main/othervm -Djdk.jmx.mbeans.allowNonPublic=true MBeanFallbackTest
--- a/jdk/test/javax/management/MBeanServer/MBeanServerInvocationHandlerExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/MBeanServerInvocationHandlerExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5092515
  * @summary Test how to unwrap a user specific exception
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MBeanServerInvocationHandlerExceptionTest
  * @run build MBeanServerInvocationHandlerExceptionTest
  * @run main MBeanServerInvocationHandlerExceptionTest
--- a/jdk/test/javax/management/MBeanServer/MBeanServerNotificationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/MBeanServerNotificationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Checks that MBeanServerNotification.toString contains the
  *          MBean name.
  * @author Daniel Fuchs
+ * @modules java.management/com.sun.jmx.mbeanserver
  * @compile MBeanServerNotificationTest.java
  * @run main MBeanServerNotificationTest
  */
--- a/jdk/test/javax/management/MBeanServer/MBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/MBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @bug 8010285
  * @summary General MBean test.
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean MBeanTest
  * @run build MBeanTest
  * @run main MBeanTest
--- a/jdk/test/javax/management/MBeanServer/NewMBeanListenerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/NewMBeanListenerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4757273
  * @summary Test that registered notification is sent early enough
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NewMBeanListenerTest
  * @run build NewMBeanListenerTest
  * @run main NewMBeanListenerTest
--- a/jdk/test/javax/management/MBeanServer/NotifDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/NotifDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4757273
  * @summary Test deadlock in MBeanServerDelegate listeners
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NotifDeadlockTest
  * @run build NotifDeadlockTest
  * @run main NotifDeadlockTest
--- a/jdk/test/javax/management/MBeanServer/OldMBeanServerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/OldMBeanServerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -97,6 +97,7 @@
  * @bug 5072268
  * @summary Test that nothing assumes a post-1.2 MBeanServer
  * @author Eamonn McManus
+ * @modules java.management
  * @run main/othervm -ea OldMBeanServerTest
  */
 
--- a/jdk/test/javax/management/MBeanServer/PostExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/PostExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check behaviour of MBeanServer when postRegister and postDeregister
  *          throw exceptions.
  * @author Daniel Fuchs
+ * @modules java.management
  * @compile PostExceptionTest.java
  * @run main PostExceptionTest
  */
--- a/jdk/test/javax/management/MBeanServer/PostRegisterDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/PostRegisterDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6417044
  * @summary Test deadlock in MBeanRegistration.postRegister method
  * @author Eamonn McManus, Daniel Fuchs
+ * @modules java.management
  * @run clean PostRegisterDeadlockTest
  * @run build PostRegisterDeadlockTest
  * @run main PostRegisterDeadlockTest
--- a/jdk/test/javax/management/MBeanServer/PostRegisterDeadlockTest2.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/PostRegisterDeadlockTest2.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6417044
  * @summary Test that a failing MBean registration does not lead to a deadlock
  * @author Eamonn McManus
+ * @modules java.management
  * @run main PostRegisterDeadlockTest2
  */
 
--- a/jdk/test/javax/management/MBeanServer/PreDeregisterDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/PreDeregisterDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6318664
  * @summary Test deadlock in MBeanRegistration.preDeregister method
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean PreDeregisterDeadlockTest
  * @run build PreDeregisterDeadlockTest
  * @run main PreDeregisterDeadlockTest
--- a/jdk/test/javax/management/MBeanServer/PreRegisterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServer/PreRegisterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4911846
  * @summary Test that MBeanRegistration can change caller ObjectName
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean PreRegisterTest
  * @run build PreRegisterTest
  * @run main PreRegisterTest
--- a/jdk/test/javax/management/MBeanServerFactory/ReleaseMBeanServerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MBeanServerFactory/ReleaseMBeanServerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the releaseMBeanServer(MBeanServer mbeanServer) method
  *          throws IllegalArgumentException as expected
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ReleaseMBeanServerTest
  * @run build ReleaseMBeanServerTest
  * @run main ReleaseMBeanServerTest
--- a/jdk/test/javax/management/MustBeValidMBeanInfo/MustBeValidCommand.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/MustBeValidMBeanInfo/MustBeValidCommand.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * IllegalArgumentException when attribute names, operation names, and
  * Java type names do not strictly follow the expected Java syntax.
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean MustBeValidCommand
  * @run build MustBeValidCommand
  * @run main MustBeValidCommand
--- a/jdk/test/javax/management/ObjectInstance/MBeanInfoFailTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectInstance/MBeanInfoFailTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5001857
  * @summary Test queryNames() and queryMBeans() with a buggy DynamicMBean
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean MBeanInfoFailTest
  * @run build MBeanInfoFailTest
  * @run main MBeanInfoFailTest
--- a/jdk/test/javax/management/ObjectInstance/ObjectInstanceNullTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectInstance/ObjectInstanceNullTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5015663
  * @summary Test ObjectInstance(name,null).hashCode() and .equals()
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean ObjectInstanceNullTest
  * @run build ObjectInstanceNullTest
  * @run main ObjectInstanceNullTest
--- a/jdk/test/javax/management/ObjectInstance/ToStringMethodTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectInstance/ToStringMethodTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5080083
  * @summary Test new added method "toString"
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean ToStringMethodTest
  * @run build ToStringMethodTest
  * @run main ToStringMethodTest
--- a/jdk/test/javax/management/ObjectName/ApplyWildcardTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/ApplyWildcardTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test the ObjectName.apply(ObjectName) method
  *          with wildcards in the key properties value part.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ApplyWildcardTest
  * @run build ApplyWildcardTest
  * @run main ApplyWildcardTest
--- a/jdk/test/javax/management/ObjectName/ComparatorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/ComparatorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5036680
  * @summary Test the ObjectName.compareTo() method.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ComparatorTest
  * @run build ComparatorTest
  * @run main ComparatorTest
--- a/jdk/test/javax/management/ObjectName/DelegateNameWildcardNameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/DelegateNameWildcardNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that MBeanServerDelegate.DELEGATE_NAME and ObjectName.WILDCARD
  *          public constants have been initialized properly.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean DelegateNameWildcardNameTest
  * @run build DelegateNameWildcardNameTest
  * @run main DelegateNameWildcardNameTest
--- a/jdk/test/javax/management/ObjectName/NullEmptyKeyValueTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/NullEmptyKeyValueTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6229396
  * @summary Test null/empty key/values in ObjectName constructors.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean NullEmptyKeyValueTest
  * @run build NullEmptyKeyValueTest
  * @run main NullEmptyKeyValueTest
--- a/jdk/test/javax/management/ObjectName/ObjectNameGetInstanceTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/ObjectNameGetInstanceTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4894801
  * @summary Test that ObjectName.getInstance(ObjectName) preserves key order
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ObjectNameGetInstanceTest
  * @run build ObjectNameGetInstanceTest
  * @run main ObjectNameGetInstanceTest
--- a/jdk/test/javax/management/ObjectName/RepositoryWildcardTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/RepositoryWildcardTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test if the repository supports correctly the use of
  *          wildcards in the ObjectName key properties value part.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean RepositoryWildcardTest
  * @run build RepositoryWildcardTest
  * @run main RepositoryWildcardTest
--- a/jdk/test/javax/management/ObjectName/SerialCompatTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/SerialCompatTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6211220 6616825
  * @summary Test that jmx.serial.form=1.0 works for ObjectName
  * @author Eamonn McManus, Daniel Fuchs
+ * @modules java.management
  * @run clean SerialCompatTest
  * @run build SerialCompatTest
  * @run main/othervm -Djdk.jmx.mbeans.allowNonPublic=true -Djmx.serial.form=1.0 SerialCompatTest
--- a/jdk/test/javax/management/ObjectName/ValueWildcardTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/ObjectName/ValueWildcardTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4716807
  * @summary Test wildcards in ObjectName key properties value part.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ValueWildcardTest
  * @run build ValueWildcardTest
  * @run main ValueWildcardTest
--- a/jdk/test/javax/management/descriptor/DefaultDescriptorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/DefaultDescriptorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6204469
  * @summary Test that MBean*Info can be constructed with default descriptor
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DefaultDescriptorTest
  * @run build DefaultDescriptorTest
  * @run main DefaultDescriptorTest
--- a/jdk/test/javax/management/descriptor/DescriptorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/DescriptorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6204469 6273765
  * @summary Test various aspects of the Descriptor interface
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DescriptorTest
  * @run build DescriptorTest
  * @run main DescriptorTest
--- a/jdk/test/javax/management/descriptor/EqualsHashCodeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/EqualsHashCodeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6255956
  * @summary Test equals and hashCode for descriptors
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean EqualsHashCodeTest
  * @run build EqualsHashCodeTest
  * @run main EqualsHashCodeTest
--- a/jdk/test/javax/management/descriptor/ImmutableArrayFieldTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/ImmutableArrayFieldTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that immutability of ImmutableDescriptor cannot be
  * compromised by modifying field values that are arrays.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ImmutableArrayFieldTest
  * @run build ImmutableArrayFieldTest
  * @run main ImmutableArrayFieldTest
--- a/jdk/test/javax/management/descriptor/ImmutableDescriptorSerialTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/ImmutableDescriptorSerialTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6204469
  * @summary Test ImmutableDescriptor serialization.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ImmutableDescriptorSerialTest
  * @run build ImmutableDescriptorSerialTest
  * @run main ImmutableDescriptorSerialTest
--- a/jdk/test/javax/management/descriptor/ImmutableDescriptorSetFieldsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/ImmutableDescriptorSetFieldsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * null name in it and calling setFields with a field names array with an
  * empty name in it throw the expected exceptions.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ImmutableDescriptorSetFieldsTest
  * @run build ImmutableDescriptorSetFieldsTest
  * @run main ImmutableDescriptorSetFieldsTest
--- a/jdk/test/javax/management/descriptor/MBeanInfoInteropTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/MBeanInfoInteropTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6204469
  * @summary Check that descriptors have not broken serial interop.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MBeanInfoInteropTest SerializedInfo
  * @run build MBeanInfoInteropTest SerializedInfo
  * @run main MBeanInfoInteropTest SerializedInfo
--- a/jdk/test/javax/management/descriptor/UnionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/descriptor/UnionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6273752
  * @summary Test ImmutableDescriptor.union
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean UnionTest
  * @run build UnionTest
  * @run main UnionTest
--- a/jdk/test/javax/management/generified/GenericTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/generified/GenericTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4847959 6191402
  * @summary Test newly-generified APIs
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean GenericTest
  * @run build GenericTest
  * @run main GenericTest
--- a/jdk/test/javax/management/generified/ListTypeCheckTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/generified/ListTypeCheckTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6250772
  * @summary Test that *List objects are checked after asList is called.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ListTypeCheckTest
  * @run build ListTypeCheckTest
  * @run main ListTypeCheckTest
--- a/jdk/test/javax/management/loading/ArrayClassTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/ArrayClassTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that array classes can be found in signatures always
  * and can be deserialized by the deprecated MBeanServer.deserialize method
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ArrayClassTest
  * @run build ArrayClassTest
  * @run main ArrayClassTest
@@ -35,6 +36,7 @@
 import java.io.*;
 import java.lang.reflect.*;
 import java.net.*;
+import java.nio.file.Paths;
 import javax.management.*;
 import javax.management.loading.*;
 
@@ -42,15 +44,16 @@
     public static void main(String[] args) throws Exception {
         MBeanServer mbs = MBeanServerFactory.createMBeanServer();
 
-        /* If this test isn't loaded by a URLClassLoader we will get
-           a ClassCastException here, which is good because it means
-           this test isn't valid.  */
-        URLClassLoader testLoader =
-            (URLClassLoader) ArrayClassTest.class.getClassLoader();
+        String[] cpaths = System.getProperty("test.classes", ".")
+                                .split(File.pathSeparator);
+        URL[] urls = new URL[cpaths.length];
+        for (int i=0; i < cpaths.length; i++) {
+            urls[i] = Paths.get(cpaths[i]).toUri().toURL();
+        }
 
         // Create an MLet that can load the same class names but
         // will produce different results.
-        ClassLoader loader = new SpyLoader(testLoader.getURLs());
+        ClassLoader loader = new SpyLoader(urls);
         ObjectName loaderName = new ObjectName("test:type=SpyLoader");
         mbs.registerMBean(loader, loaderName);
 
--- a/jdk/test/javax/management/loading/DocumentRootTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/DocumentRootTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test parsing error when the mlet file is
  *          located in the web server's document root.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean DocumentRootTest
  * @run build DocumentRootTest
  * @run main DocumentRootTest
--- a/jdk/test/javax/management/loading/GetMBeansFromURLTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/GetMBeansFromURLTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          given MLet instance throws a ServiceNotFoundException exception
  *          with a non null cause.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean GetMBeansFromURLTest
  * @run build GetMBeansFromURLTest
  * @run main GetMBeansFromURLTest
--- a/jdk/test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the same native library coming from the same jar file can
  * be loaded twice by two different MLets on the same JVM without conflict.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean LibraryLoaderTest
  * @run build LibraryLoaderTest
  * @run main/othervm LibraryLoaderTest
--- a/jdk/test/javax/management/loading/MLetCLR/MLetCommand.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/MLetCLR/MLetCommand.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * for the test codebase as it is executed by the MLet code using
  * doPrivileged.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MLetCommand
  * @run build MLetCommand
  * @run main/othervm/policy=policy MLetCommand
--- a/jdk/test/javax/management/loading/MLetContentTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/MLetContentTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4796780
  * @summary The class MLetContentTest becomes public
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MLetContentTest
  * @run build MLetContentTest
  * @run main MLetContentTest
--- a/jdk/test/javax/management/loading/MLetInternalsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/MLetInternalsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,6 +36,7 @@
  * @bug 8058089
  * @summary Tests various internal functions provided by MLet for correctness
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run testng MLetInternalsTest
  */
 public class MLetInternalsTest {
--- a/jdk/test/javax/management/loading/ParserInfiniteLoopTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/ParserInfiniteLoopTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * terminated with the corresponding '>' and an opening '<' for
  * the subsequent tag is encountered.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ParserInfiniteLoopTest
  * @run build ParserInfiniteLoopTest
  * @run main/othervm/timeout=5 ParserInfiniteLoopTest mlet1.html
--- a/jdk/test/javax/management/loading/SystemClassLoaderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/loading/SystemClassLoaderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that a class can load MBeans from its class loader
  * (at least if it is the system class loader)
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean SystemClassLoaderTest
  * @run build SystemClassLoaderTest
  * @run main SystemClassLoaderTest
--- a/jdk/test/javax/management/modelmbean/AddAttributeChangeNotificationListenerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/AddAttributeChangeNotificationListenerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * no other attributes.
  * @author Yves Joan
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean AddAttributeChangeNotificationListenerTest
  * @run build AddAttributeChangeNotificationListenerTest
  * @run main AddAttributeChangeNotificationListenerTest
--- a/jdk/test/javax/management/modelmbean/DescriptorSupportSerialTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/DescriptorSupportSerialTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6332962
  * @summary Test that DescriptorSupport does not serialize targetObject
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DescriptorSupportSerialTest
  * @run build DescriptorSupportSerialTest
  * @run main DescriptorSupportSerialTest
--- a/jdk/test/javax/management/modelmbean/DescriptorSupportTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/DescriptorSupportTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4883712 4869006 4894856 5016685
  * @summary Test that DescriptorSupport correctly validates fields
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DescriptorSupportTest
  * @run build DescriptorSupportTest
  * @run main DescriptorSupportTest
--- a/jdk/test/javax/management/modelmbean/DescriptorSupportXMLTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/DescriptorSupportXMLTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that DescriptorSupport.toXMLString() can be used to
  * reconstruct an equivalent DescriptorSupport
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DescriptorSupportXMLTest
  * @run build DescriptorSupportXMLTest
  * @run main DescriptorSupportXMLTest
--- a/jdk/test/javax/management/modelmbean/ExoticTargetTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/ExoticTargetTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that a custom ModelMBean implementation can have custom
  * targetType values in its ModelMBeanOperationInfo descriptors.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ExoticTargetTypeTest
  * @run build ExoticTargetTypeTest
  * @run main ExoticTargetTypeTest
--- a/jdk/test/javax/management/modelmbean/InfoSupportTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/InfoSupportTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * that getDescriptors("mbean") works, and that default values for
  * MBean descriptors are correctly assigned.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean InfoSupportTest
  * @run build InfoSupportTest
  * @run main InfoSupportTest
--- a/jdk/test/javax/management/modelmbean/LoggingExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/LoggingExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * when traces enabled and no attributes.
  * @author Luis-Miguel Alventosa
  * @author Paul Cheeseman
+ * @modules java.management
  */
 
 import java.util.logging.ConsoleHandler;
--- a/jdk/test/javax/management/modelmbean/ModelMBeanInfoSupport/GetAllDescriptorsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/ModelMBeanInfoSupport/GetAllDescriptorsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that  ModelMBeanInfoSupport.getDescriptors(null) also
  *          returns the MBean's descriptor.
  * @author Eamonn McManus, Daniel Fuchs
+ * @modules java.management
  * @run clean GetAllDescriptorsTest
  * @run build GetAllDescriptorsTest
  * @run main/othervm/policy=policy  GetAllDescriptorsTest
--- a/jdk/test/javax/management/modelmbean/OnUnregisterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/OnUnregisterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that OnUnregister is an allowed value for persistPolicy
  * in ModelMBeanAttributeInfo
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean OnUnregisterTest
  * @run build OnUnregisterTest
  * @run main OnUnregisterTest
--- a/jdk/test/javax/management/modelmbean/RequiredModelMBeanGetAttributeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/RequiredModelMBeanGetAttributeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,6 +36,7 @@
  * - the declared name can be loaded by the value's class loader and
  *   produces a class to which the value can be assigned.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean RequiredModelMBeanGetAttributeTest
  * @run build RequiredModelMBeanGetAttributeTest
  * @run main RequiredModelMBeanGetAttributeTest
--- a/jdk/test/javax/management/modelmbean/RequiredModelMBeanMethodTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/RequiredModelMBeanMethodTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * from the RequiredModelMBean class itself if they are not in the
  * ModelMBeanInfo
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean RequiredModelMBeanMethodTest
  * @run build RequiredModelMBeanMethodTest
  * @run main RequiredModelMBeanMethodTest
--- a/jdk/test/javax/management/modelmbean/RequiredModelMBeanSetAttributeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/RequiredModelMBeanSetAttributeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * MBeanException wrapping a ServiceNotFoundException is thrown is setAttribute
  * called but no setMethod field has been provided.
  * @author Jean-Francois Denise
+ * @modules java.management
  * @run clean RequiredModelMBeanSetAttributeTest
  * @run build RequiredModelMBeanSetAttributeTest
  * @run main RequiredModelMBeanSetAttributeTest
--- a/jdk/test/javax/management/modelmbean/SimpleModelMBean/SimpleModelMBeanCommand.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/SimpleModelMBean/SimpleModelMBeanCommand.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * IllegalArgumentException when attribute names, operation names, and
  * Java type names do not strictly follow the expected Java syntax.
  * @author Eamonn McManus, Daniel Fuchs
+ * @modules java.management
  * @run clean SimpleModelMBeanCommand
  * @run build SimpleModelMBeanCommand
  * @run main/othervm/policy=policy  SimpleModelMBeanCommand
--- a/jdk/test/javax/management/modelmbean/UnserializableTargetObjectTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/modelmbean/UnserializableTargetObjectTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that a RequiredModelMBean operation can have a targetObject
  * that is not serializable
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean UnserializableTargetObjectTest
  * @run build UnserializableTargetObjectTest
  * @run main UnserializableTargetObjectTest
--- a/jdk/test/javax/management/monitor/AttributeArbitraryDataTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/AttributeArbitraryDataTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary Test that the counter/gauge/string monitors
  *          support attributes of arbitrary data types.
  * @author Luis-Miguel Alventosa
+ * @modules java.desktop
+ *          java.management
  * @run clean AttributeArbitraryDataTypeTest
  * @run build AttributeArbitraryDataTypeTest
  * @run main AttributeArbitraryDataTypeTest
--- a/jdk/test/javax/management/monitor/CounterMonitorDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/CounterMonitorDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary Test that no locks are held when a monitor attribute is sampled
  * or notif delivered.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean CounterMonitorDeadlockTest
  * @run build CounterMonitorDeadlockTest
  * @run main CounterMonitorDeadlockTest 1
--- a/jdk/test/javax/management/monitor/CounterMonitorInitThresholdTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/CounterMonitorInitThresholdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          objects added before the counter monitor is started as well as by
  *          the observed objects which are added once the monitor is started.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean CounterMonitorInitThresholdTest
  * @run build CounterMonitorInitThresholdTest
  * @run main CounterMonitorInitThresholdTest
--- a/jdk/test/javax/management/monitor/CounterMonitorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/CounterMonitorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the counter monitor, when running in difference mode,
  *          emits a notification every time the threshold is exceeded.
  * @author Luis-Miguel Alventosa, Shanliang JIANG
+ * @modules java.management
  * @run clean CounterMonitorTest
  * @run build CounterMonitorTest
  * @run main CounterMonitorTest
--- a/jdk/test/javax/management/monitor/CounterMonitorThresholdTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/CounterMonitorThresholdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6229368 8025207
  * @summary Wrong threshold value in CounterMonitor with offset and modulus.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean CounterMonitorThresholdTest
  * @run build CounterMonitorThresholdTest
  * @run main CounterMonitorThresholdTest
--- a/jdk/test/javax/management/monitor/DerivedGaugeMonitorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/DerivedGaugeMonitorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6683213
  * @summary Test that the initial derived gauge is (Integer)0
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean DerivedGaugeMonitorTest
  * @run build DerivedGaugeMonitorTest
  * @run main DerivedGaugeMonitorTest
--- a/jdk/test/javax/management/monitor/GaugeMonitorDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/GaugeMonitorDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that no locks are held when a monitor attribute is sampled
  * or notif delivered.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean GaugeMonitorDeadlockTest
  * @run build GaugeMonitorDeadlockTest
  * @run main GaugeMonitorDeadlockTest 1
--- a/jdk/test/javax/management/monitor/MultiMonitorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/MultiMonitorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4984057
  * @summary Test that monitors can sample a large number of attributes
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MultiMonitorTest
  * @run build MultiMonitorTest
  * @run main MultiMonitorTest
--- a/jdk/test/javax/management/monitor/NonComparableAttributeValueTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/NonComparableAttributeValueTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          jmx.monitor.error.type notification when the attribute
  *          being monitored returns a non comparable value.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean NonComparableAttributeValueTest
  * @run build NonComparableAttributeValueTest
  * @run main NonComparableAttributeValueTest
--- a/jdk/test/javax/management/monitor/NullAttributeValueTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/NullAttributeValueTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *          being monitored returns a null value.
  * @author Luis-Miguel Alventosa
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NullAttributeValueTest
  * @run build NullAttributeValueTest
  * @run main NullAttributeValueTest
--- a/jdk/test/javax/management/monitor/ReflectionExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/ReflectionExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the jmx.monitor.error.runtime monitor notification
  *          is emitted when getAttribute throws ReflectionException.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ReflectionExceptionTest MBeanServerBuilderImpl
  *            MBeanServerForwarderInvocationHandler
  * @run build ReflectionExceptionTest MBeanServerBuilderImpl
--- a/jdk/test/javax/management/monitor/RuntimeExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/RuntimeExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that the jmx.monitor.error.runtime monitor notification
  *          is emitted when getAttribute throws RuntimeException.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean RuntimeExceptionTest MBeanServerBuilderImpl
  *            MBeanServerForwarderInvocationHandler
  * @run build RuntimeExceptionTest MBeanServerBuilderImpl
--- a/jdk/test/javax/management/monitor/StartStopTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/StartStopTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          monitors are started and stopped in a loop.
  * @author Luis-Miguel Alventosa
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run clean StartStopTest
  * @run build StartStopTest
--- a/jdk/test/javax/management/monitor/StringMonitorDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/StringMonitorDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that no locks are held when a monitor attribute is sampled
  * or notif delivered.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean StringMonitorDeadlockTest
  * @run build StringMonitorDeadlockTest
  * @run main StringMonitorDeadlockTest 1
--- a/jdk/test/javax/management/monitor/ThreadPoolAccTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/ThreadPoolAccTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that each thread in the thread pool runs
  *          in the context of the monitor.start() caller.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ThreadPoolAccTest
  * @run build ThreadPoolAccTest
  * @run main ThreadPoolAccTest
--- a/jdk/test/javax/management/monitor/ThreadPoolTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/monitor/ThreadPoolTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that all monitors will be well started when sharing
  * a single thread pool.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ThreadPoolTest
  * @run build ThreadPoolTest
  * @run main/othervm/timeout=300 ThreadPoolTest 1
--- a/jdk/test/javax/management/mxbean/AmbiguousConstructorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/AmbiguousConstructorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug 6175517 6278707
  * @summary Test that ambiguous ConstructorProperties annotations are detected.
  * @author Eamonn McManus
+ * @modules java.desktop
+ *          java.management
  * @run clean AmbiguousConstructorTest
  * @run build AmbiguousConstructorTest
  * @run main AmbiguousConstructorTest
--- a/jdk/test/javax/management/mxbean/ComparatorExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/ComparatorExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6601652
  * @summary Test exception when SortedMap or SortedSet has non-null Comparator
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.util.SortedMap;
--- a/jdk/test/javax/management/mxbean/ExceptionDiagnosisTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/ExceptionDiagnosisTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug 6713777
  * @summary Test that exception messages include all relevant information
  * @author Eamonn McManus
+ * @modules java.desktop
+ *          java.management
  */
 
 import java.beans.ConstructorProperties;
--- a/jdk/test/javax/management/mxbean/GenericArrayTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/GenericArrayTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6292705
  * @summary Test support for arrays in parameterized types.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean GenericArrayTypeTest
  * @run build GenericArrayTypeTest
  * @run main GenericArrayTypeTest
--- a/jdk/test/javax/management/mxbean/GenericTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/GenericTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6376416 6406447
  * @summary Test use of generic types in MXBeans (mostly illegal).
  * @author Eamonn McManus
+ * @modules java.management
  * @run main GenericTypeTest
  */
 
--- a/jdk/test/javax/management/mxbean/InvalidMXBeanRegistrationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/InvalidMXBeanRegistrationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Ensure the registration of an invalid MXBean
  *          throws NotCompliantMBeanException.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean InvalidMXBeanRegistrationTest
  * @run build InvalidMXBeanRegistrationTest
  * @run main InvalidMXBeanRegistrationTest
--- a/jdk/test/javax/management/mxbean/LeakTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/LeakTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,8 @@
  * @bug 6482247
  * @summary Test that creating MXBeans does not introduce memory leaks.
  * @author Eamonn McManus
+ * @modules java.desktop
+ *          java.management
  * @run build LeakTest RandomMXBeanTest
  * @run main LeakTest
  */
@@ -38,12 +40,14 @@
  * This test can be applied to any jtreg test, not just the MXBean tests.
  */
 
+import java.io.File;
 import java.lang.ref.Reference;
 import java.lang.ref.ReferenceQueue;
 import java.lang.ref.WeakReference;
 import java.lang.reflect.Method;
 import java.net.URL;
 import java.net.URLClassLoader;
+import java.nio.file.Paths;
 
 public class LeakTest {
     /* Ideally we would include MXBeanTest in the list of tests, since it
@@ -95,11 +99,15 @@
 
     private static WeakReference<ClassLoader>
             testShadow(Class<?> originalTestClass) throws Exception {
-        URLClassLoader originalLoader =
-                (URLClassLoader) originalTestClass.getClassLoader();
-        URL[] urls = originalLoader.getURLs();
+        String[] cpaths = System.getProperty("test.classes", ".")
+                                .split(File.pathSeparator);
+        URL[] urls = new URL[cpaths.length];
+        for (int i=0; i < cpaths.length; i++) {
+            urls[i] = Paths.get(cpaths[i]).toUri().toURL();
+        }
+
         URLClassLoader shadowLoader =
-                new ShadowClassLoader(urls, originalLoader.getParent());
+                new ShadowClassLoader(urls, originalTestClass.getClassLoader().getParent());
         System.out.println("Shadow loader is " + shadowLoader);
         String className = originalTestClass.getName();
         Class<?> testClass = Class.forName(className, false, shadowLoader);
--- a/jdk/test/javax/management/mxbean/MBeanOperationInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MBeanOperationInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6359948
  * @summary Check that MXBean operations have the expected ReturnType in MBeanOperationInfo
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MBeanOperationInfoTest
  * @run build MBeanOperationInfoTest
  * @run main MBeanOperationInfoTest
--- a/jdk/test/javax/management/mxbean/MXBeanAnnotationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanAnnotationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6316491
  * @summary Check that the MXBean annotation works as advertised
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MXBeanAnnotationTest
  * @run build MXBeanAnnotationTest
  * @run main MXBeanAnnotationTest
--- a/jdk/test/javax/management/mxbean/MXBeanFallbackTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanFallbackTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          It needs to be a separate class because the "jdk.jmx.mbeans.allowNonPublic"
  *          system property must be set before c.s.j.m.MBeanAnalyzer has been loaded.
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean MXBeanFallbackTest
  * @run build MXBeanFallbackTest
  * @run main/othervm -Djdk.jmx.mbeans.allowNonPublic=true MXBeanFallbackTest
--- a/jdk/test/javax/management/mxbean/MXBeanFlagTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanFlagTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6335337
  * @summary Test correctness of mxbean flag in descriptor.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MXBeanFlagTest
  * @run build MXBeanFlagTest
  * @run main MXBeanFlagTest
--- a/jdk/test/javax/management/mxbean/MXBeanPreRegisterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanPreRegisterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Ensure that preRegister etc are called, but not when wrapped
  * by the class StandardMBean
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MXBeanPreRegisterTest
  * @run build MXBeanPreRegisterTest
  * @run main MXBeanPreRegisterTest
--- a/jdk/test/javax/management/mxbean/MXBeanRefTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanRefTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6296433 6283873
  * @summary Test that inter-MXBean references work as expected.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MXBeanRefTest
  * @run build MXBeanRefTest
  * @run main MXBeanRefTest
--- a/jdk/test/javax/management/mxbean/MXBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MXBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,8 @@
  * @summary General MXBean test.
  * @author Eamonn McManus
  * @author Jaroslav Bachorik
+ * @modules java.desktop
+ *          java.management
  * @run clean MXBeanTest MerlinMXBean TigerMXBean
  * @run build MXBeanTest MerlinMXBean TigerMXBean
  * @run main MXBeanTest
--- a/jdk/test/javax/management/mxbean/MiscTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/MiscTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          interfaceClassName, openType, originalType, StandardMBean,
  *          StandardEmitterMBean.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MiscTest
  * @run build MiscTest
  * @run main MiscTest
--- a/jdk/test/javax/management/mxbean/OperationImpactTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/OperationImpactTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6320104
  * @summary Check that MXBean operations have impact UNKNOWN.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean OperationImpactTest
  * @run build OperationImpactTest
  * @run main OperationImpactTest
--- a/jdk/test/javax/management/mxbean/OverloadTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/OverloadTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6175517
  * @summary Test that MXBean interfaces can contain overloaded methods
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean OverloadTest
  * @run build OverloadTest
  * @run main OverloadTest
--- a/jdk/test/javax/management/mxbean/PreRegisterNameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/PreRegisterNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6448042
  * @summary Test that MXBeans can define their own names in preRegister
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.lang.management.ManagementFactory;
--- a/jdk/test/javax/management/mxbean/PropertyNamesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/PropertyNamesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug 6175517
  * @summary Test the PropertyNames annotation with MXBeans
  * @author Eamonn McManus
+ * @modules java.desktop
+ *          java.management
  * @run clean PropertyNamesTest
  * @run build PropertyNamesTest
  * @run main PropertyNamesTest
--- a/jdk/test/javax/management/mxbean/SameObjectTwoNamesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/SameObjectTwoNamesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * names produces an exception
  * @author Alexander Shusherov
  * @author Eamonn McManus
+ * @modules java.management
  * @run main SameObjectTwoNamesTest
  * @run main/othervm -Djmx.mxbean.multiname=true SameObjectTwoNamesTest
  */
--- a/jdk/test/javax/management/mxbean/StandardMBeanOverrideTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/StandardMBeanOverrideTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  *          getMBeanInfo and getNotificationInfo in StandardMBean and
  *          StandardEmitterMBean.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean StandardMBeanOverrideTest
  * @run build StandardMBeanOverrideTest
  * @run main StandardMBeanOverrideTest
--- a/jdk/test/javax/management/mxbean/ThreadMXBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/ThreadMXBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6305746
  * @summary Test that the null values returned by the ThreadMXBean work.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ThreadMXBeanTest
  * @run build ThreadMXBeanTest
  * @run main ThreadMXBeanTest
--- a/jdk/test/javax/management/mxbean/TypeNameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/mxbean/TypeNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6757225 6763051
  * @summary Test that type names in MXBeans match their spec.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.lang.reflect.Field;
--- a/jdk/test/javax/management/notification/BroadcasterSupportDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/notification/BroadcasterSupportDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that NotificationBroadcasterSupport can be subclassed
  * and used with synchronized(this) without causing deadlock
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean BroadcasterSupportDeadlockTest
  * @run build BroadcasterSupportDeadlockTest
  * @run main BroadcasterSupportDeadlockTest
--- a/jdk/test/javax/management/notification/FilterExceptionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/notification/FilterExceptionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6244855 6244863
  * @summary Exception thrown by NotificationFilter should be ignored
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean FilterExceptionTest
  * @run build FilterExceptionTest
  * @run main FilterExceptionTest
--- a/jdk/test/javax/management/notification/NotifExecutorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/notification/NotifExecutorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4661545
  * @summary Tests to use an executor to send notifications.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NotifExecutorTest
  * @run build NotifExecutorTest
  * @run main NotifExecutorTest
--- a/jdk/test/javax/management/notification/NotifInfoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/notification/NotifInfoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4506105 6303698
  * @summary NotificationBroadcasterSupport should have a ctor with MBeanNotificationInfo[]
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NotifInfoTest
  * @run build NotifInfoTest
  * @run main NotifInfoTest
--- a/jdk/test/javax/management/openmbean/ArrayTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/ArrayTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5045358
  * @summary Test that Open MBeans support arrays of primitive types.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean ArrayTypeTest
  * @run build ArrayTypeTest
  * @run main ArrayTypeTest
--- a/jdk/test/javax/management/openmbean/BadConstraintTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/BadConstraintTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that Open MBean attributes and parameters cannot have
  * illegal constraints like min greater than max
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean BadConstraintTest
  * @run build BadConstraintTest
  * @run main BadConstraintTest
--- a/jdk/test/javax/management/openmbean/CompositeDataStringTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/CompositeDataStringTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6610174
  * @summary Test that CompositeDataSupport.toString() represents arrays correctly
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import javax.management.openmbean.ArrayType;
--- a/jdk/test/javax/management/openmbean/ConstraintTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/ConstraintTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6204469
  * @summary Test that Open MBean attributes and parameters check constraints
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ConstraintTest
  * @run build ConstraintTest
  * @run main ConstraintTest
--- a/jdk/test/javax/management/openmbean/EqualsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/EqualsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5072174
  * @summary Test CompositeDataSupport.equals with ArrayType
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean EqualsTest
  * @run build EqualsTest
  * @run main EqualsTest
--- a/jdk/test/javax/management/openmbean/IsValueTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/IsValueTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5072004
  * @summary Test new rules for isValue
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import javax.management.openmbean.*;
--- a/jdk/test/javax/management/openmbean/NullConstructorParamsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/NullConstructorParamsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6434298
  * @summary Test IAE is thrown when typeName or description parameter is null for TabularType and CompositeType constructors
  * @author Joel FERAUD
+ * @modules java.management
  */
 
 import javax.management.openmbean.*;
--- a/jdk/test/javax/management/openmbean/OpenMBeanInfoEqualsNPETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/OpenMBeanInfoEqualsNPETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,6 +41,7 @@
  * @bug 8023529
  * @summary Test that OpenMBean*Info.equals do not throw NPE
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean OpenMBeanInfoEqualsNPETest
  * @run build OpenMBeanInfoEqualsNPETest
  * @run main OpenMBeanInfoEqualsNPETest
--- a/jdk/test/javax/management/openmbean/OpenMBeanInfoHashCodeNPETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/OpenMBeanInfoHashCodeNPETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -40,6 +40,7 @@
  * @bug 8023529
  * @summary Test that OpenMBean*Info.hashCode do not throw NPE
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean OpenMBeanInfoHashCodeNPETest
  * @run build OpenMBeanInfoHashCodeNPETest
  * @run main OpenMBeanInfoHashCodeNPETest
--- a/jdk/test/javax/management/openmbean/OpenTypeDescriptorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/OpenTypeDescriptorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * @summary Test that Open*MBeanInfo classes include "openType" in descriptor
  *          and also test serial compatibility with Java 5.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean OpenTypeDescriptorTest
  * @run build OpenTypeDescriptorTest
  * @run main OpenTypeDescriptorTest
--- a/jdk/test/javax/management/openmbean/TabularDataOrderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/openmbean/TabularDataOrderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6334663
  * @summary Test that TabularDataSupport preserves the order elements were added
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.io.ByteArrayInputStream;
--- a/jdk/test/javax/management/proxy/JMXProxyFallbackTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/proxy/JMXProxyFallbackTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
  *          It needs to be a separate class because the "jdk.jmx.mbeans.allowNonPublic"
  *          system property must be set before c.s.j.m.MBeanAnalyzer has been loaded.
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean JMXProxyFallbackTest
  * @run build JMXProxyFallbackTest
  * @run main/othervm -Djdk.jmx.mbeans.allowNonPublic=true JMXProxyFallbackTest
--- a/jdk/test/javax/management/proxy/JMXProxyTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/proxy/JMXProxyTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  * @summary Tests that javax.management.JMX creates proxies only for the
  *          compliant MBeans/MXBeans
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean JMXProxyTest
  * @run build JMXProxyTest
  * @run main JMXProxyTest
--- a/jdk/test/javax/management/proxy/NotificationEmitterProxy.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/proxy/NotificationEmitterProxy.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @summary Test that we can create proxies which are NotificationEmitters.
  * @bug 6411747
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean NotificationEmitterProxy
  * @run build NotificationEmitterProxy
  * @run main NotificationEmitterProxy
--- a/jdk/test/javax/management/proxy/ProxyObjectMethodsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/proxy/ProxyObjectMethodsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6177524
  * @summary Test how to execute the 3 Object methods by a Proxy.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean ProxyObjectMethodsTest
  * @run build ProxyObjectMethodsTest
  * @run main ProxyObjectMethodsTest
--- a/jdk/test/javax/management/query/CustomQueryTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/query/CustomQueryTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6692027
  * @summary Check that custom subclasses of QueryEval can be serialized.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 import java.io.ByteArrayInputStream;
--- a/jdk/test/javax/management/query/InstanceOfExpTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/query/InstanceOfExpTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5072174 6335848
  * @summary test the new method javax.management.Query.isInstanceOf("className")
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean InstanceOfExpTest
  * @run build InstanceOfExpTest
  * @run main InstanceOfExpTest
--- a/jdk/test/javax/management/query/QueryExpStringTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/query/QueryExpStringTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4886011
  * @summary Test that QueryExp.toString() is reversible
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean QueryExpStringTest
  * @run build QueryExpStringTest
  * @run main QueryExpStringTest
--- a/jdk/test/javax/management/query/QueryMatchTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/query/QueryMatchTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6266438
  * @summary Query.match code for character sequences like [a-z] is wrong.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean QueryMatchTest
  * @run build QueryMatchTest
  * @run main QueryMatchTest
--- a/jdk/test/javax/management/query/QuerySubstringTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/query/QuerySubstringTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Query.{initial,any,final}SubString fail if the
  *          matching constraint string contains wildcards.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean QuerySubstringTest
  * @run build QuerySubstringTest
  * @run main QuerySubstringTest
--- a/jdk/test/javax/management/relation/NonArrayListTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/relation/NonArrayListTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4848474
  * @summary Test that relation service doesn't require List params to be ArrayList
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NonArrayListTest
  * @run build NonArrayListTest
  * @run main NonArrayListTest
--- a/jdk/test/javax/management/relation/RelationNotificationSeqNoTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/relation/RelationNotificationSeqNoTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6701459
  * @summary Test sequence numbers in RelationService notifications.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 /*
--- a/jdk/test/javax/management/relation/RelationNotificationSourceTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/relation/RelationNotificationSourceTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4892674
  * @summary Test that RelationNotification can be constructed with ObjectName.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean RelationNotificationSourceTest
  * @run build RelationNotificationSourceTest
  * @run main RelationNotificationSourceTest
--- a/jdk/test/javax/management/relation/RelationTypeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/relation/RelationTypeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4716675
  * @summary Test that relation type checking uses isInstanceOf
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean RelationTypeTest
  * @run build RelationTypeTest
  * @run main RelationTypeTest
--- a/jdk/test/javax/management/remote/mandatory/URLTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/URLTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5057532
  * @summary Tests that host names are parsed correctly in URLs
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean URLTest
  * @run build URLTest
  * @run main URLTest
--- a/jdk/test/javax/management/remote/mandatory/connection/AddressableTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/AddressableTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6238815
  * @summary test the new interface Addressable
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean AddressableTest
  * @run build AddressableTest
  * @run main AddressableTest
--- a/jdk/test/javax/management/remote/mandatory/connection/BrokenConnectionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/BrokenConnectionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4940957 8025205
  * @summary Tests behaviour when connections break
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean BrokenConnectionTest
  * @run build BrokenConnectionTest
  * @run main BrokenConnectionTest
--- a/jdk/test/javax/management/remote/mandatory/connection/CloseFailedClientTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/CloseFailedClientTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4921888
  * @summary Tests that we do not get a NullPointException.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean CloseFailedClientTest
  * @run build CloseFailedClientTest
  * @run main CloseFailedClientTest
--- a/jdk/test/javax/management/remote/mandatory/connection/CloseServerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/CloseServerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4838640
  * @summary test server close in different conditions.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean CloseServerTest
  * @run build CloseServerTest
  * @run main CloseServerTest
--- a/jdk/test/javax/management/remote/mandatory/connection/CloseUnconnectedTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/CloseUnconnectedTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4897052
  * @summary Tests that opening and immediately closing a connector works
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean CloseUnconnectedTest
  * @run build CloseUnconnectedTest
  * @run main CloseUnconnectedTest
--- a/jdk/test/javax/management/remote/mandatory/connection/CloseableTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/CloseableTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  *          the method "void close() throws IOException;" extend
  *          or implement the java.io.Closeable interface.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean CloseableTest
  * @run build CloseableTest
  * @run main CloseableTest
--- a/jdk/test/javax/management/remote/mandatory/connection/ConnectionListenerNullTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/ConnectionListenerNullTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4943248
  * @summary Tests that NullPointerException is thrown when listener is null.
  * @author Daniel Fuchs
+ * @modules java.management
  * @run clean ConnectionListenerNullTest
  * @run build ConnectionListenerNullTest
  * @run main ConnectionListenerNullTest
--- a/jdk/test/javax/management/remote/mandatory/connection/ConnectionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/ConnectionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4865397
  * @summary Tests remote JMX connections
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ConnectionTest
  * @run build ConnectionTest
  * @run main ConnectionTest
--- a/jdk/test/javax/management/remote/mandatory/connection/DaemonRMIExporterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/DaemonRMIExporterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * @summary test the connector server option that causes it not to prevent the
  * VM from exiting
  * @author Shanliang JIANG, Eamonn McManus
+ * @modules java.management
  * @run main/othervm DaemonRMIExporterTest
  */
 import java.util.Arrays;
--- a/jdk/test/javax/management/remote/mandatory/connection/DeadLockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/DeadLockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5039210
  * @summary test on a client notification deadlock.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean DeadLockTest
  * @run build DeadLockTest
  * @run main DeadLockTest
--- a/jdk/test/javax/management/remote/mandatory/connection/FailedConnectionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/FailedConnectionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @bug 4939578
  * @summary test to get an IOException.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean FailedConnectionTest
  * @run build FailedConnectionTest
  * @run main FailedConnectionTest
--- a/jdk/test/javax/management/remote/mandatory/connection/GetConnectionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/GetConnectionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4951414
  * @summary Try to get an IOException.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean GetConnectionTest
  * @run build GetConnectionTest
  * @run main GetConnectionTest
--- a/jdk/test/javax/management/remote/mandatory/connection/IIOPURLTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/IIOPURLTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4886799
  * @summary Check that IIOP URLs have /ior/ in the path
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean IIOPURLTest
  * @run build IIOPURLTest
  * @run main IIOPURLTest
--- a/jdk/test/javax/management/remote/mandatory/connection/IdleTimeoutTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/IdleTimeoutTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4886838 4886830 8025204
  * @summary Tests that idle timeouts happen at appropriate times
  * @author Eamonn McManus
+ * @modules java.management/com.sun.jmx.remote.util
  * @run clean IdleTimeoutTest
  * @run build IdleTimeoutTest
  * @run main IdleTimeoutTest
--- a/jdk/test/javax/management/remote/mandatory/connection/MultiOpenCloseTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/MultiOpenCloseTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 1234567
  * @summary Open, connect then close multi-connectors.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MultiOpenCloseTest
  * @run build MultiOpenCloseTest
  * @run main MultiOpenCloseTest
--- a/jdk/test/javax/management/remote/mandatory/connection/MultiThreadDeadLockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/MultiThreadDeadLockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -45,6 +45,7 @@
  * @bug 6697180
  * @summary test on a client notification deadlock.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean MultiThreadDeadLockTest
  * @run build MultiThreadDeadLockTest
  * @run main MultiThreadDeadLockTest
--- a/jdk/test/javax/management/remote/mandatory/connection/NoIIOP.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/NoIIOP.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @bug 8004502
  * @summary Sanity check that attempts to use the IIOP transport or
  *   RMIIIOPServerImpl when RMI/IIOP not present throws the expected exceptions
+ * @modules java.management
  */
 
 import javax.management.MBeanServer;
--- a/jdk/test/javax/management/remote/mandatory/connection/RMIConnectionIdTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMIConnectionIdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4901808 7183800
  * @summary Check that RMI connection ids include client host name
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean RMIConnectionIdTest
  * @run build RMIConnectionIdTest
  * @run main RMIConnectionIdTest
--- a/jdk/test/javax/management/remote/mandatory/connection/RMIConnectorInternalMapTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMIConnectorInternalMapTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
  * @bug 6566891
  * @summary Check no memory leak on RMIConnector's rmbscMap
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean RMIConnectorInternalMapTest
  * @run build RMIConnectorInternalMapTest
  * @run main RMIConnectorInternalMapTest
--- a/jdk/test/javax/management/remote/mandatory/connection/RMIConnectorNullSubjectConnTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMIConnectorNullSubjectConnTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,6 +38,7 @@
  * @bug 6566891
  * @summary Check no memory leak on RMIConnector's nullSubjectConn
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean RMIConnectorNullSubjectConnTest
  * @run build RMIConnectorNullSubjectConnTest
  * @run main RMIConnectorNullSubjectConnTest
--- a/jdk/test/javax/management/remote/mandatory/connection/RMIConnector_NPETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMIConnector_NPETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,11 @@
  * @summary NPE IN RMIConnector.connect
  * @bug 6984520
  * @library /java/rmi/testlibrary
+ * @modules java.management
+ *          java.rmi/sun.rmi.registry
+ *          java.rmi/sun.rmi.server
+ *          java.rmi/sun.rmi.transport
+ *          java.rmi/sun.rmi.transport.tcp
  * @run clean RMIConnector_NPETest
  * @run build TestLibrary RMID
  * @run build RMIConnector_NPETest
--- a/jdk/test/javax/management/remote/mandatory/connection/RMIExitTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMIExitTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @bug 4917237
  * @summary test that process exit immediately after stop() / close() called
  * @author Jean Francois Denise
+ * @modules java.management
  * @run clean RMIExitTest
  * @run build RMIExitTest
  * @run main RMIExitTest
--- a/jdk/test/javax/management/remote/mandatory/connection/RMISerializeTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/RMISerializeTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @summary Tests to serialize RMIConnector
  * @bug 5032052
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean RMISerializeTest
  * @run build RMISerializeTest
  * @run main RMISerializeTest
--- a/jdk/test/javax/management/remote/mandatory/connection/ReconnectTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connection/ReconnectTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4927217
  * @summary test to reconnect
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean ReconnectTest
  * @run build ReconnectTest
  * @run main ReconnectTest
--- a/jdk/test/javax/management/remote/mandatory/connectorServer/ConnectorStopDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connectorServer/ConnectorStopDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6475157
  * @summary Tests deadlock in simultaneous connection and connector-server close
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 /* This test is somewhat dependent on implementation details.  If it suddenly
--- a/jdk/test/javax/management/remote/mandatory/connectorServer/JNDIFailureTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connectorServer/JNDIFailureTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests that JNDI bind failure doesn't leave an orphan RMI
  * Connector Server object
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean JNDIFailureTest
  * @run build JNDIFailureTest
  * @run main JNDIFailureTest
--- a/jdk/test/javax/management/remote/mandatory/connectorServer/MBSFPreStartPostStartTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connectorServer/MBSFPreStartPostStartTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that setting an MBeanServerForwarder on an already
  *          started RMI connector server has the expected behavior.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MBSFPreStartPostStartTest
  * @run build MBSFPreStartPostStartTest
  * @run main MBSFPreStartPostStartTest
--- a/jdk/test/javax/management/remote/mandatory/connectorServer/RMIExporterTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connectorServer/RMIExporterTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5016705
  * @summary Tests the use of the RMIExporter class.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.internal
  * @run clean RMIExporterTest
  * @run build RMIExporterTest
  * @run main RMIExporterTest
--- a/jdk/test/javax/management/remote/mandatory/connectorServer/SetMBeanServerForwarder.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/connectorServer/SetMBeanServerForwarder.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests that IllegalArgumentException is thrown when
  *          MBeanServerForwrder is null.
  * @author Daniel Fuchs
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean SetMBeanServerForwarder
  * @run build SetMBeanServerForwarder
  * @run main SetMBeanServerForwarder
--- a/jdk/test/javax/management/remote/mandatory/loading/DefaultProviderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/DefaultProviderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4884913
  * @summary Tests that default protocols are loaded correctly
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DefaultProviderTest
  * @run build DefaultProviderTest
  * @run main DefaultProviderTest
--- a/jdk/test/javax/management/remote/mandatory/loading/DeserializeEncodedURLTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/DeserializeEncodedURLTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4924683
  * @summary Check RMI/JRMP stubs can be deserialized using user's loader
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean DeserializeEncodedURLTest SingleClassLoader
  * @run build DeserializeEncodedURLTest SingleClassLoader
  * @run main DeserializeEncodedURLTest
--- a/jdk/test/javax/management/remote/mandatory/loading/MethodResultTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/MethodResultTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,12 +26,14 @@
  * @bug 4898478
  * @summary Tests client default class loader used before JSR 160 loader
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MethodResultTest
  * @run build MethodResultTest
  * @run main MethodResultTest
  */
 
 import java.io.*;
+import java.nio.file.Paths;
 import java.net.*;
 import java.util.*;
 import javax.management.*;
@@ -56,24 +58,23 @@
  */
 public class MethodResultTest {
     public static void main(String[] args) throws Exception {
-        Class thisClass = MethodResultTest.class;
-        Class exoticClass = Exotic.class;
+        Class<?> thisClass = MethodResultTest.class;
+        Class<?> exoticClass = Exotic.class;
         String exoticClassName = Exotic.class.getName();
-        ClassLoader testClassLoader = thisClass.getClassLoader();
-        if (!(testClassLoader instanceof URLClassLoader)) {
-            System.out.println("TEST INVALID: Not loaded by a " +
-                               "URLClassLoader: " + testClassLoader);
-            System.exit(1);
+
+        String[] cpaths = System.getProperty("test.classes", ".")
+                                .split(File.pathSeparator);
+        URL[] urls = new URL[cpaths.length];
+        for (int i=0; i < cpaths.length; i++) {
+            urls[i] = Paths.get(cpaths[i]).toUri().toURL();
         }
 
-        URLClassLoader tcl = (URLClassLoader) testClassLoader;
-        URL[] urls = tcl.getURLs();
         ClassLoader shadowLoader =
-            new ShadowLoader(urls, testClassLoader,
+            new ShadowLoader(urls, thisClass.getClassLoader(),
                              new String[] {exoticClassName,
                                            ExoticMBeanInfo.class.getName(),
                                            ExoticException.class.getName()});
-        Class cl = shadowLoader.loadClass(exoticClassName);
+        Class<?> cl = shadowLoader.loadClass(exoticClassName);
         if (cl == exoticClass) {
             System.out.println("TEST INVALID: Shadow class loader loaded " +
                                "same class as test class loader");
@@ -197,12 +198,12 @@
     }
 
     private static boolean checkType(String what, Object object,
-                                     Class wrongClass) {
+                                     Class<?> wrongClass) {
         return checkType(what, object, wrongClass, false);
     }
 
     private static boolean checkType(String what, Object object,
-                                     Class wrongClass, boolean isException) {
+                                     Class<?> wrongClass, boolean isException) {
         final String type = isException ? "exception" : "object";
         final String rendered = isException ? "thrown" : "returned";
         System.out.println("For " + type + " " + rendered + " by " + what +
@@ -224,7 +225,7 @@
     }
 
     private static boolean checkExceptionType(String what, Exception exception,
-                                              Class wrongClass) {
+                                              Class<?> wrongClass) {
         if (!(exception instanceof MBeanException)) {
             System.out.println("Exception thrown by " + what + " is not an " +
                                MBeanException.class.getName() +
@@ -320,7 +321,7 @@
             this.shadowClassNames = Arrays.asList(shadowClassNames);
         }
 
-        protected Class findClass(String name) throws ClassNotFoundException {
+        protected Class<?> findClass(String name) throws ClassNotFoundException {
             if (shadowClassNames.contains(name))
                 return super.findClass(name);
             else
--- a/jdk/test/javax/management/remote/mandatory/loading/MissingClassTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/MissingClassTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4915825 4921009 4934965 4977469 8019584
  * @summary Tests behavior when client or server gets object of unknown class
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean MissingClassTest SingleClassLoader
  * @run build MissingClassTest SingleClassLoader
  * @run main MissingClassTest
--- a/jdk/test/javax/management/remote/mandatory/loading/RMIDownloadTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/RMIDownloadTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5021246
  * @summary Check that class downloading is supported by RMI connector
  * @author Eamonn McManus
+ * @modules java.management
  * @run main RMIDownloadTest receive without
  * @run main RMIDownloadTest send without
  * @run main RMIDownloadTest receive with
--- a/jdk/test/javax/management/remote/mandatory/loading/TargetMBeanTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/TargetMBeanTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4910428
  * @summary Tests target MBean class loader used before JSR 160 loader
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean TargetMBeanTest
  * @run build TargetMBeanTest
  * @run main TargetMBeanTest
--- a/jdk/test/javax/management/remote/mandatory/loading/UserClassLoaderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/loading/UserClassLoaderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6356458
  * @summary test to not lose a user classloader
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean UserClassLoaderTest
  * @run build UserClassLoaderTest
  * @run main UserClassLoaderTest
--- a/jdk/test/javax/management/remote/mandatory/notif/AddRemoveTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/AddRemoveTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @bug 4838640 4917194
  * @summary test on add/remove NotificationListener
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean AddRemoveTest
  * @run build AddRemoveTest
  * @run main AddRemoveTest
--- a/jdk/test/javax/management/remote/mandatory/notif/ConcurrentModificationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/ConcurrentModificationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 7120365
  * @summary test on Concurrent Modification
  * @author Shanliang JIANG
+ * @modules java.management
  * @run main ConcurrentModificationTest
  */
 
@@ -164,4 +165,4 @@
             mserver.removeNotificationListener(delegateName, listener);
         }
     }
-}
\ No newline at end of file
+}
--- a/jdk/test/javax/management/remote/mandatory/notif/DeadListenerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/DeadListenerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 6957378
  * @summary Test that a listener can be removed remotely from an MBean that no longer exists.
+ * @modules java.management/com.sun.jmx.remote.internal
  * @author Eamonn McManus
  */
 
--- a/jdk/test/javax/management/remote/mandatory/notif/DiffHBTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/DiffHBTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4911721
  * @summary test on add/remove NotificationListener
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean DiffHBTest
  * @run build DiffHBTest
  * @run main DiffHBTest
--- a/jdk/test/javax/management/remote/mandatory/notif/EmptyDomainNotificationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/EmptyDomainNotificationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check that the expected notification is received by the JMX
  *          client even when the domain in the ObjectName is not specified
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean EmptyDomainNotificationTest
  * @run build EmptyDomainNotificationTest
  * @run main EmptyDomainNotificationTest
--- a/jdk/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6338874
  * @summary Check that notification dispatch is not linear in number of MBeans.
  * @author Eamonn McManus
+ * @modules java.management
  */
 
 /*
--- a/jdk/test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotSerializableNotifTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,6 +26,7 @@
  * @summary Tests to send a not serializable notification.
  * @bug 5022196
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NotSerializableNotifTest
  * @run build NotSerializableNotifTest
  * @run main NotSerializableNotifTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotifBufferSizePropertyNameTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotifBufferSizePropertyNameTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6174229
  * @summary Verify the property name specifying server notification buffer size.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NotifBufferSizePropertyNameTest
  * @run build NotifBufferSizePropertyNameTest
  * @run main NotifBufferSizePropertyNameTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotifReconnectDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotifReconnectDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6199899
  * @summary Tests reconnection done by a fetching notif thread.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean NotifReconnectDeadlockTest
  * @run build NotifReconnectDeadlockTest
  * @run main NotifReconnectDeadlockTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotificationAccessControllerTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotificationAccessControllerTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5106721
  * @summary Check the NotificationAccessController methods are properly called.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean NotificationAccessControllerTest
  * @run build NotificationAccessControllerTest
  * @run main NotificationAccessControllerTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferCreationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferCreationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4934236
  * @summary Tests that NotificationBuffer is created when used.
  * @author jfd@...
+ * @modules java.management
  * @run clean NotificationBufferCreationTest NotificationSender
  * @run build NotificationBufferCreationTest
  * @run main NotificationBufferCreationTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferDeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferDeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary Tests NotificationBuffer doesn't hold locks when adding listeners,
  *  if test times out then deadlock is suspected.
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NotificationBufferDeadlockTest
  * @run build NotificationBufferDeadlockTest
  * @run main NotificationBufferDeadlockTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotificationBufferTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
  * @bug 7654321
  * @summary Tests the NotificationBuffer class.
  * @author Eamonn McManus
+ * @modules java.management/com.sun.jmx.remote.internal
+ *          java.management/com.sun.jmx.remote.util
  * @run clean NotificationBufferTest
  * @run build NotificationBufferTest NotificationSender NotificationSenderMBean
  * @run main NotificationBufferTest
--- a/jdk/test/javax/management/remote/mandatory/notif/NotificationEmissionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/NotificationEmissionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Check the emission of notifications when a Security Manager is
  * installed. Test the property "jmx.remote.x.check.notification.emission".
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean NotificationEmissionTest
  * @run build NotificationEmissionTest
  * @run main NotificationEmissionTest 1
--- a/jdk/test/javax/management/remote/mandatory/notif/RMINotifTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/RMINotifTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests to receive notifications for opened and closed connections
 ions
  * @author sjiang
+ * @modules java.management
  * @run clean RMINotifTest
  * @run build RMINotifTest
  * @run main RMINotifTest
--- a/jdk/test/javax/management/remote/mandatory/notif/ServerNotifs.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/ServerNotifs.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests the reception of the notifications for opened and closed
  * connections
  * @author sjiang
+ * @modules java.management
  * @run clean ServerNotifs
  * @run build ServerNotifs
  * @run main ServerNotifs
--- a/jdk/test/javax/management/remote/mandatory/notif/UnexpectedNotifTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/notif/UnexpectedNotifTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests whether a listener receives notifs emitted before the
  * listener is registered.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean UnexpectedNotifTest
  * @run build UnexpectedNotifTest
  * @run main UnexpectedNotifTest
--- a/jdk/test/javax/management/remote/mandatory/passwordAccessFile/NonJMXPrincipalsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/passwordAccessFile/NonJMXPrincipalsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests that MBeanServerFileAccessController supports
  *          principals other than JMXPrincipal.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean NonJMXPrincipalsTest SimpleStandard SimpleStandardMBean
  * @run build NonJMXPrincipalsTest SimpleStandard SimpleStandardMBean
  * @run main NonJMXPrincipalsTest
--- a/jdk/test/javax/management/remote/mandatory/passwordAccessFile/PasswordAccessFileTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/passwordAccessFile/PasswordAccessFileTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests the use of the "jmx.remote.x.password.file" and
  *          "jmx.remote.x.access.file" environment map properties.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean PasswordAccessFileTest SimpleStandard SimpleStandardMBean
  * @run build PasswordAccessFileTest SimpleStandard SimpleStandardMBean
  * @run main PasswordAccessFileTest
--- a/jdk/test/javax/management/remote/mandatory/passwordAuthenticator/RMIAltAuthTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/passwordAuthenticator/RMIAltAuthTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5016508
  * @summary Supplies an alternative JAAS configuration for authenticating RMI clients
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean RMIAltAuthTest
  * @run build RMIAltAuthTest SimpleStandard SimpleStandardMBean
  * @run main RMIAltAuthTest
--- a/jdk/test/javax/management/remote/mandatory/passwordAuthenticator/RMIPasswdAuthTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/passwordAuthenticator/RMIPasswdAuthTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 5016508
  * @summary Tests the default JAAS configuration for authenticating RMI clients
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean RMIPasswdAuthTest
  * @run build RMIPasswdAuthTest SimpleStandard SimpleStandardMBean
  * @run main RMIPasswdAuthTest
--- a/jdk/test/javax/management/remote/mandatory/provider/ProviderTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/provider/ProviderTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /*
  * @test ProviderTest.java
  * @summary Tests jar services provider are called
+ * @modules java.management
  * @run clean ProviderTest provider.JMXConnectorProviderImpl provider.JMXConnectorServerProviderImpl
  * @run build ProviderTest provider.JMXConnectorProviderImpl provider.JMXConnectorServerProviderImpl
  * @run main ProviderTest
--- a/jdk/test/javax/management/remote/mandatory/serverError/JMXServerErrorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/serverError/JMXServerErrorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 4871761
  * @summary Tests that JMXServiceErrorException is correctly emitted.
  * @author Daniel Fuchs
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean JMXServerErrorTest
  * @run build JMXServerErrorTest
  * @run main  JMXServerErrorTest
--- a/jdk/test/javax/management/remote/mandatory/socketFactories/RMISocketFactoriesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/socketFactories/RMISocketFactoriesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 7654321
  * @summary Tests the use of the custom RMI socket factories.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean RMISocketFactoriesTest
  * @run build RMISocketFactoriesTest RMIClientFactory RMIServerFactory
  * @run main RMISocketFactoriesTest test_server_factory
--- a/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation1Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation1Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests the use of the subject delegation feature in the
  *          RMI connector
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean SubjectDelegation1Test SimpleStandard SimpleStandardMBean
  * @run build SubjectDelegation1Test SimpleStandard SimpleStandardMBean
  * @run main SubjectDelegation1Test policy11 ok
--- a/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -27,6 +27,7 @@
  * @summary Tests the use of the subject delegation feature on the authenticated
  *          principals within the RMI connector server's creator codebase.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean SubjectDelegation2Test SimpleStandard SimpleStandardMBean
  * @run build SubjectDelegation2Test SimpleStandard SimpleStandardMBean
  * @run main SubjectDelegation2Test policy21 ok
--- a/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -28,6 +28,7 @@
  *          principals within the RMI connector server's creator codebase with
  *          subject delegation.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.security
  * @run clean SubjectDelegation3Test SimpleStandard SimpleStandardMBean
  * @run build SubjectDelegation3Test SimpleStandard SimpleStandardMBean
  * @run main SubjectDelegation3Test policy31 ok
--- a/jdk/test/javax/management/remote/mandatory/threads/ExecutorTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/threads/ExecutorTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6190873
  * @summary Tests that thread creation can use a user-supplied Executor
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean ExecutorTest
  * @run build ExecutorTest
  * @run main ExecutorTest
--- a/jdk/test/javax/management/remote/mandatory/threads/NoServerTimeoutTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/threads/NoServerTimeoutTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6192124
  * @summary Tests that you can turn off the server connection timeout thread
  * @author Eamonn McManus
+ * @modules java.management
  * @run clean NoServerTimeoutTest
  * @run build NoServerTimeoutTest
  * @run main NoServerTimeoutTest
--- a/jdk/test/javax/management/remote/mandatory/util/MapNullValuesTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/util/MapNullValuesTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  *          Check also that null values for keys are not allowed in
  *          the maps passed to the JMXConnector[Server] factories.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/com.sun.jmx.remote.util
  * @run clean MapNullValuesTest
  * @run build MapNullValuesTest
  * @run main MapNullValuesTest
--- a/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/remote/mandatory/version/ImplVersionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * security manager and the test codebase has the java permission to read
  * the "java.runtime.version" system property.
  * @author Luis-Miguel Alventosa, Joel Feraud
+ * @modules java.management
  * @run clean ImplVersionTest ImplVersionCommand
  * @run build ImplVersionTest ImplVersionCommand ImplVersionReader
  * @run main ImplVersionTest
@@ -66,13 +67,9 @@
             // Get test classes
             String testClasses = System.getProperty("test.classes");
 
-            // Get boot class path
-            String bootClassPath = System.getProperty("sun.boot.class.path");
-
             // Build command string
             String command =
                 javaHome + File.separator + "bin" + File.separator + "java " +
-                " -Xbootclasspath/p:" + bootClassPath +
                 " -classpath " + testClasses +
                 " -Djava.security.manager -Djava.security.policy==" + testSrc +
                 File.separator + "policy -Dtest.classes=" + testClasses +
--- a/jdk/test/javax/management/security/AvoidGetMBeanInfoCallsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/security/AvoidGetMBeanInfoCallsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Test that MBeanServer.queryNames doesn't call getMBeanInfo on every
  *          resultant MBean when there is no security manager installed.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean AvoidGetMBeanInfoCallsTest
  * @run build AvoidGetMBeanInfoCallsTest
  * @run main AvoidGetMBeanInfoCallsTest
--- a/jdk/test/javax/management/security/MBeanPermissionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/security/MBeanPermissionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6228749
  * @summary MBeanPermission(null,"") should throw IllegalArgumentException.
  * @author Luis-Miguel Alventosa
+ * @modules java.management
  * @run clean MBeanPermissionTest
  * @run build MBeanPermissionTest
  * @run main MBeanPermissionTest
--- a/jdk/test/javax/management/standardmbean/DeadlockTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/standardmbean/DeadlockTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6331746
  * @summary Test a deadlock and will be blocked forever if the deadlock is present.
  * @author Shanliang JIANG
+ * @modules java.management
  * @run main DeadlockTest
  */
 
--- a/jdk/test/javax/management/timer/MissingNotificationTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/timer/MissingNotificationTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6809322
  * @summary Test for missing notifications in a high concurrency environment
  * @author Jaroslav Bachorik
+ * @modules java.management
  * @run clean MissingNotificationTest
  * @run build MissingNotificationTest
  * @run main MissingNotificationTest
--- a/jdk/test/javax/management/timer/StartTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/management/timer/StartTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug 6659215
  * @summary Test on timer start method with past notifications
  * @author Shanliang JIANG
+ * @modules java.management
  * @run clean StartTest
  * @run build StartTest
  * @run main StartTest
--- a/jdk/test/javax/security/auth/Subject/doAs/NestedActions.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/javax/security/auth/Subject/doAs/NestedActions.java	Wed Jul 05 20:32:21 2017 +0200
@@ -34,6 +34,7 @@
 import java.security.PrivilegedExceptionAction;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 import java.util.jar.JarEntry;
 import java.util.jar.JarOutputStream;
@@ -144,7 +145,7 @@
         }
         cmds.add(sb.toString());
         if (JAVA_OPTS != null && !JAVA_OPTS.isEmpty()) {
-            cmds.add(JAVA_OPTS);
+            Collections.addAll(cmds, JAVA_OPTS.trim().split("\\s+"));
         }
         cmds.add("-Djava.security.manager");
         cmds.add("-Djava.security.policy=" + TEST_SOURCES + FS + args[1]);
--- a/jdk/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java	Wed Jul 05 20:32:21 2017 +0200
@@ -227,7 +227,8 @@
      * <span>The default redirects of STDOUT and STDERR are started</span>
      * <p>
      * It is possible to wait for the process to get to a warmed-up state
-     * via {@linkplain Predicate} condition on the STDOUT
+     * via {@linkplain Predicate} condition on the STDOUT. The warm-up will
+     * wait indefinitely.
      * </p>
      * @param name The process name
      * @param processBuilder The process builder
--- a/jdk/test/sun/jvmstat/monitor/HostIdentifier/HostIdentifierCreate.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/jvmstat/monitor/HostIdentifier/HostIdentifierCreate.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /*
  * @test
  * @bug 4990825
+ * @modules jdk.jvmstat/sun.jvmstat.monitor
  * @summary test that HostIdentifier objects get created as expected
  */
 
--- a/jdk/test/sun/jvmstat/monitor/MonitoredVm/CR6672135.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/jvmstat/monitor/MonitoredVm/CR6672135.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
  * @bug 6672135
  * @summary setInterval() for local MonitoredHost and local MonitoredVm
  * @author Tomas Hurka
+ * @modules jdk.jvmstat/sun.jvmstat.monitor
  * @run main/othervm -XX:+UsePerfData CR6672135
  */
 public class CR6672135 {
--- a/jdk/test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/jvmstat/monitor/MonitoredVm/MonitorVmStartTerminate.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -67,6 +67,9 @@
  * @bug 4990825
  * @summary attach to external but local JVM processes
  * @library /lib/testlibrary
+ * @modules java.management
+ *          jdk.jvmstat/sun.jvmstat.monitor
+ *          jdk.jvmstat/sun.jvmstat.monitor.event
  * @build jdk.testlibrary.*
  * @run main/othervm MonitorVmStartTerminate
  */
--- a/jdk/test/sun/jvmstat/monitor/VmIdentifier/VmIdentifierCreateResolve.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/jvmstat/monitor/VmIdentifier/VmIdentifierCreateResolve.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /*
  * @test
  * @bug 4990825
+ * @modules jdk.jvmstat/sun.jvmstat.monitor
  * @summary test that VmIdentifier objects get created as expected
  */
 
--- a/jdk/test/sun/jvmstat/perfdata/PrologSanity/PrologSizeSanityCheck.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/jvmstat/perfdata/PrologSanity/PrologSizeSanityCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /*
  * @test
  * @bug 4990825
+ * @modules jdk.jvmstat/sun.jvmstat.monitor
  * @run main/othervm -XX:+UsePerfData  PrologSizeSanityCheck
  * @summary prolog size and overflow sanity checks
  */
--- a/jdk/test/sun/management/AgentCMETest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/AgentCMETest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * @test
  * @bug 7164191
  * @summary properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario
+ * @modules java.management/sun.management
  * @author Deven You
  */
 
--- a/jdk/test/sun/management/AgentCheckTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/AgentCheckTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  *  @test
  *  @bug 5013605
  *  @summary Localize log messages from the management agents
+ *  @modules java.management/sun.management
  *
  *  @author Tim Bell
  */
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetClassInitializationTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetClassInitializationTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getClassInitializationTime()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetClassInitializationTime
  */
 
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetClassLoadingTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetClassLoadingTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getClassLoadingTime()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @build ClassToLoad0
  * @run main/othervm -XX:+UsePerfData GetClassLoadingTime
  */
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetInitializedClassCount.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetInitializedClassCount.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getInitializedClassCount()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetInitializedClassCount
  */
 
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetLoadedClassSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetLoadedClassSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getLoadedClassSize()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetLoadedClassSize
  */
 
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetMethodDataSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetMethodDataSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getMethodDataSize()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetMethodDataSize
  */
 
--- a/jdk/test/sun/management/HotspotClassLoadingMBean/GetUnloadedClassSize.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotClassLoadingMBean/GetUnloadedClassSize.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getUnloadedClassSize()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetUnloadedClassSize
  */
 
--- a/jdk/test/sun/management/HotspotRuntimeMBean/GetSafepointCount.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotRuntimeMBean/GetSafepointCount.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotClassLoadingMBean.getSafepointCount()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetSafepointCount
  */
 
--- a/jdk/test/sun/management/HotspotRuntimeMBean/GetSafepointSyncTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotRuntimeMBean/GetSafepointSyncTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
  * @bug     4858522
  * @summary Basic unit test of HotspotRuntimeMBean.getSafepointSyncTime()
  * @author  Steve Bohne
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetSafepointSyncTime
  */
 
--- a/jdk/test/sun/management/HotspotRuntimeMBean/GetTotalSafepointTime.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotRuntimeMBean/GetTotalSafepointTime.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 /*
  * @test
  * @bug     4858522
+ * @modules java.management/sun.management
  * @summary Basic unit test of HotspotRuntimeMBean.getTotalSafepointTime()
  * @author  Steve Bohne
  */
--- a/jdk/test/sun/management/HotspotThreadMBean/GetInternalThreads.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/HotspotThreadMBean/GetInternalThreads.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Basic Test for HotspotThreadMBean.getInternalThreadCount()
  *          and getInternalThreadCpuTime()
  * @author  Mandy Chung
+ * @modules java.management/sun.management
  * @run main/othervm -XX:+UsePerfData GetInternalThreads
  */
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/management/PlatformMBeanProviderConstructorCheck.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,89 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.security.AccessControlException;
+import java.security.Permission;
+import java.security.Policy;
+import java.security.ProtectionDomain;
+import java.util.List;
+
+/*
+ * @test
+ * @bug     8042901
+ * @summary Check permission for PlatformMBeanProvider Constructor
+ * @author  Shanliang Jiang
+ */
+public class PlatformMBeanProviderConstructorCheck {
+    public static void main(String[] args) throws Exception {
+        Policy origPolicy = Policy.getPolicy();
+        SecurityManager origSM = System.getSecurityManager();
+        try {
+            System.out.println("---PlatformMBeanProviderConstructorCheck starting...");
+
+            Policy.setPolicy(new MyPolicy());
+            System.setSecurityManager(new SecurityManager());
+
+            System.out.println("---PlatformMBeanProviderConstructorCheck Testing without permission...");
+            try {
+                new MyProvider();
+                throw new RuntimeException("Does not get expected AccessControlException!");
+            } catch (AccessControlException ace) {
+                System.out.println("---PlatformMBeanProviderConstructorCheck got the expected exception: "
+                        + ace);
+            }
+
+            System.out.println("---PlatformMBeanProviderConstructorCheck Testing with permission...");
+            MyPolicy.allowed = true;
+            new MyProvider();
+
+            System.out.println("---PlatformMBeanProviderConstructorCheck PASSED!");
+        } finally {
+            System.setSecurityManager(origSM);
+            Policy.setPolicy(origPolicy);
+        }
+    }
+
+    private static class MyPolicy extends Policy {
+        private static String permName = "sun.management.spi.PlatformMBeanProvider.subclass";
+        private static boolean allowed = false;
+
+        @Override
+        public boolean implies(ProtectionDomain domain, Permission permission) {
+            if (permName.equals(permission.getName())) {
+                System.out.println("---MyPolicy-implies checks permission for "
+                        +permName+" and returns "+allowed);
+
+                return allowed;
+            } else {
+                return true;
+            }
+        }
+    }
+
+    private static class MyProvider extends sun.management.spi.PlatformMBeanProvider {
+        @Override
+        public List<PlatformComponent<?>> getPlatformComponentList() {
+            return null;
+        }
+    }
+}
--- a/jdk/test/sun/management/jdp/JdpDefaultsTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jdp/JdpDefaultsTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @test JdpDefaultsTest
  * @summary Assert that we can read JDP packets from a multicast socket connection, on default IP and port.
  * @library /lib/testlibrary
+ * @modules java.management/sun.management.jdp
  * @build jdk.testlibrary.* ClientConnection JdpTestUtil JdpTestCase JdpOnTestCase DynamicLauncher
  * @run main JdpDefaultsTest
  */
--- a/jdk/test/sun/management/jdp/JdpOffTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jdp/JdpOffTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
  * @test JdpOffTest.java
  * @summary Assert that no JDP packets are sent to the default address and port.
  * @library /lib/testlibrary
+ * @modules java.management/sun.management.jdp
  * @build jdk.testlibrary.* ClientConnection JdpTestUtil JdpTestCase JdpOffTestCase DynamicLauncher
  * @run main JdpOffTest
  */
--- a/jdk/test/sun/management/jdp/JdpSpecificAddressTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jdp/JdpSpecificAddressTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @test JdpSpecificAddressTest
  * @summary Assert that we can read JDP packets from a multicast socket connection, on specific IP and port.
  * @library /lib/testlibrary
+ * @modules java.management/sun.management.jdp
  * @build jdk.testlibrary.* ClientConnection JdpTestUtil JdpTestCase JdpOnTestCase DynamicLauncher
  * @run main JdpSpecificAddressTest
  */
--- a/jdk/test/sun/management/jmxremote/LocalRMIServerSocketFactoryTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/LocalRMIServerSocketFactoryTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -28,6 +28,7 @@
  *
  *  @author Daniel Fuchs
  *
+ *  @modules java.management/sun.management.jmxremote
  *  @run compile -XDignore.symbol.file=true -g LocalRMIServerSocketFactoryTest.java
  *  @run main LocalRMIServerSocketFactoryTest
  */
--- a/jdk/test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,6 +41,8 @@
  * @test
  * @bug 6434402 8004926
  * @library /lib/testlibrary
+ * @modules java.management/sun.management
+ *          java.management
  * @build jdk.testlibrary.*
  * @build TestManager TestApplication CustomLauncherTest
  * @run main/othervm CustomLauncherTest
--- a/jdk/test/sun/management/jmxremote/bootstrap/JvmstatCountersTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/JvmstatCountersTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @summary Tests that the jvmstat counters published by the out-of-the-box
  *          management agent for the JMX connection details are correct.
  * @author Luis-Miguel Alventosa
+ * @modules java.management/sun.management
  * @run clean JvmstatCountersTest
  * @run build JvmstatCountersTest
  * @run main/othervm/timeout=600 -XX:+UsePerfData JvmstatCountersTest 1
--- a/jdk/test/sun/management/jmxremote/bootstrap/LocalManagementTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/LocalManagementTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,6 +37,7 @@
  *          without connection or username/password details.
  *          TestManager will attempt a connection to the address obtained from
  *          both agent properties and jvmstat buffer.
+ * @modules java.management/sun.management
  * @build jdk.testlibrary.* TestManager TestApplication
  * @run main/othervm/timeout=300 -XX:+UsePerfData LocalManagementTest
  */
@@ -120,9 +121,7 @@
                         return true;
                     }
                     return false;
-                },
-                5,
-                TimeUnit.SECONDS
+                }
             );
 
             System.out.println("Attaching test manager:");
@@ -142,9 +141,7 @@
             clientPrc = ProcessTools.startProcess(
                 "TestManager",
                 client,
-                (String line) -> line.startsWith("Starting TestManager for PID"),
-                10,
-                TimeUnit.SECONDS
+                (String line) -> line.startsWith("Starting TestManager for PID")
             );
 
             int clientExitCode = clientPrc.waitFor();
--- a/jdk/test/sun/management/jmxremote/bootstrap/PasswordFilePermissionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/PasswordFilePermissionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * @library /lib/testlibrary
  * @bug 6557093
  * @summary Check SSL config file permission for out-of-the-box management
+ * @modules java.management
  * @build jdk.testlibrary.* AbstractFilePermissionTest Dummy
  * @run main/timeout=300 PasswordFilePermissionTest
  *
--- a/jdk/test/sun/management/jmxremote/bootstrap/RmiBootstrapTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/RmiBootstrapTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,9 @@
 # @summary Test RMI Bootstrap
 #
 # @library /lib/testlibrary
+# @modules java.management/sun.management
+#          java.management/sun.management.jmxremote
+#          java.management
 # @build jdk.testlibrary.* TestLogger Utils RmiBootstrapTest
 # @run shell/timeout=300  RmiBootstrapTest.sh
 
--- a/jdk/test/sun/management/jmxremote/bootstrap/RmiRegistrySslTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/RmiRegistrySslTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
  * @library /lib/testlibrary
  * @bug 6228231
  * @summary Test that RMI registry uses SSL.
+ * @modules java.management
  * @build jdk.testlibrary.* RmiRegistrySslTestApp
  * @run main/timeout=300 RmiRegistrySslTest
  * @author Luis-Miguel Alventosa, Taras Ledkov
--- a/jdk/test/sun/management/jmxremote/bootstrap/RmiSslBootstrapTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/RmiSslBootstrapTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -27,9 +27,11 @@
 # @summary Test RMI Bootstrap with SSL
 #
 # @library /lib/testlibrary
+# @modules java.management/sun.management
+#          java.management/sun.management.jmxremote
+# @ignore 8077924
 # @build jdk.testlibrary.* TestLogger Utils RmiBootstrapTest
 # @run shell/timeout=300  RmiSslBootstrapTest.sh
-# @ignore 8077924
 
 # Define the Java class test name
 TESTCLASS="RmiBootstrapTest"
--- a/jdk/test/sun/management/jmxremote/bootstrap/RmiSslNoKeyStoreTest.sh	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/RmiSslNoKeyStoreTest.sh	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,8 @@
 # @summary Test RMI Bootstrap with SSL and no keystore.
 #
 # @bug 4932854
+# @modules java.management/sun.management
+#          java.management/sun.management.jmxremote
 # @build TestLogger RmiSslNoKeyStoreTest
 # @run shell/timeout=300  RmiSslNoKeyStoreTest.sh
 
--- a/jdk/test/sun/management/jmxremote/bootstrap/SSLConfigFilePermissionTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/bootstrap/SSLConfigFilePermissionTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
  * @test
  * @library /lib/testlibrary
  * @bug 6557093
+ * @modules java.management
  * @build jdk.testlibrary.* Dummy AbstractFilePermissionTest
  * @summary Check SSL config file permission for out-of-the-box management
  * @run main/timeout=300 SSLConfigFilePermissionTest
--- a/jdk/test/sun/management/jmxremote/startstop/JMXStartStopDoSomething.java	Thu May 07 20:50:57 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-import java.io.IOException;
-import jdk.testlibrary.ProcessTools;
-
-public class JMXStartStopDoSomething {
-    public static void doSomething() throws IOException{
-        int r = System.in.read();
-        System.out.println("read: " + r);
-    }
-
-    public static void main(String args[]) throws Exception {
-        System.out.println("main enter");
-        System.out.flush();
-        doSomething();
-        System.out.println("main exit");
-    }
-}
--- a/jdk/test/sun/management/jmxremote/startstop/JMXStartStopTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/startstop/JMXStartStopTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -35,20 +35,16 @@
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
-import java.util.Random;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
 import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.function.Consumer;
-import java.util.stream.Collectors;
 
 import javax.management.*;
 import javax.management.remote.*;
 import javax.net.ssl.SSLHandshakeException;
 
 import jdk.testlibrary.ProcessTools;
-import jdk.testlibrary.JDKToolLauncher;
 import sun.management.Agent;
 import sun.management.AgentConfigurationError;
 
@@ -56,46 +52,21 @@
  * @test
  * @bug 7110104
  * @library /lib/testlibrary
- * @build jdk.testlibrary.* JMXStartStopTest JMXStartStopDoSomething
+ * @modules java.management/sun.management
+ * @build jdk.testlibrary.* JMXStartStopTest PortAllocator TestApp ManagementAgentJcmd
  * @run main/othervm/timeout=600 -XX:+UsePerfData JMXStartStopTest
  * @summary Makes sure that enabling/disabling the management agent through JCMD
  *          achieves the desired results
  * @key randomness
  */
 public class JMXStartStopTest {
+    private static final String TEST_APP_NAME = "TestApp";
 
     private static final String TEST_SRC = System.getProperty("test.src");
 
     private static final boolean verbose = false;
 
-    /**
-     * Dynamically allocates distinct ports from the ephemeral range 49152-65535
-     */
-    private static class PortAllocator {
-
-        private final static int LOWER_BOUND = 49152;
-        private final static int UPPER_BOUND = 65535;
-
-        private final static Random RND = new Random(System.currentTimeMillis());
-
-        private static int[] allocatePorts(final int numPorts) {
-            int[] ports = new int[numPorts];
-            for (int i = 0; i < numPorts; i++) {
-                int port = -1;
-                while (port == -1) {
-                    port = RND.nextInt(UPPER_BOUND - LOWER_BOUND + 1) + LOWER_BOUND;
-                    for (int j = 0; j < i; j++) {
-                        if (ports[j] == port) {
-                            port = -1;
-                            break;
-                        }
-                    }
-                }
-                ports[i] = port;
-            }
-            return ports;
-        }
-    }
+    private static ManagementAgentJcmd jcmd = new ManagementAgentJcmd(TEST_APP_NAME, verbose);
 
     private static void dbg_print(String msg) {
         if (verbose) {
@@ -318,14 +289,14 @@
         }
     }
 
-    private static class Something {
+    private static class TestAppRun {
         private Process p;
         private final ProcessBuilder pb;
         private final String name;
         private final AtomicBoolean started = new AtomicBoolean(false);
         private volatile long pid = -1;
 
-        public Something(ProcessBuilder pb, String name) {
+        public TestAppRun(ProcessBuilder pb, String name) {
             this.pb = pb;
             this.name = name;
         }
@@ -335,16 +306,14 @@
                 try {
                     AtomicBoolean error = new AtomicBoolean(false);
                     p = ProcessTools.startProcess(
-                            "JMXStartStopDoSomething{" + name + "}",
+                            TEST_APP_NAME + "{" + name + "}",
                             pb,
                             (line) -> {
                                 boolean ok = line.equals("main enter");
                                 error.set(line.contains("BindException"));
 
                                 return ok || error.get();
-                            },
-                            5,
-                            TimeUnit.SECONDS
+                            }
                     );
                     if (error.get()) {
                         throw new BindException("Starting process failed due to " +
@@ -352,8 +321,10 @@
                     }
                     pid = p.getPid();
                 } catch (TimeoutException e) {
-                    p.destroy();
-                    p.waitFor();
+                    if (p != null) {
+                        p.destroy();
+                        p.waitFor();
+                    }
                     throw e;
                 }
             }
@@ -382,105 +353,32 @@
     }
 
     /**
-     * Runs the test application "JMXStartStopDoSomething"
+     * Runs the test application "TestApp"
      * @param name Test run name
      * @param args Additional arguments
-     * @return Returns a {@linkplain Something} instance representing the run
+     * @return Returns a {@linkplain TestAppRun} instance representing the run
      * @throws IOException
      * @throws InterruptedException
      * @throws TimeoutException
      */
-    private static Something doSomething(String name, String ... args)
+    private static TestAppRun doTest(String name, String ... args)
             throws Exception {
         List<String> pbArgs = new ArrayList<>(Arrays.asList(
                 "-cp",
-                System.getProperty("test.class.path")
+                System.getProperty("test.class.path"),
+                "-XX:+UsePerfData"
         ));
         pbArgs.addAll(Arrays.asList(args));
-        pbArgs.add("JMXStartStopDoSomething");
+        pbArgs.add(TEST_APP_NAME);
 
         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
                 pbArgs.toArray(new String[pbArgs.size()])
         );
-        Something s = new Something(pb, name);
+        TestAppRun s = new TestAppRun(pb, name);
         s.start();
         return s;
     }
 
-    /**
-     * Run the "jcmd" command
-     *
-     * @param command Command with parameters; space separated string
-     * @throws IOException
-     * @throws InterruptedException
-     */
-    private static void jcmd(String ... command) throws IOException, InterruptedException {
-        if (command.length == 0) {
-            jcmd(null, c->{});
-        } else {
-            jcmd(null, command);
-        }
-    }
-
-    /**
-     * Run the "jcmd" command
-     *
-     * @param c {@linkplain Consumer} instance
-     * @param command Command with parameters; space separated string
-     * @throws IOException
-     * @throws InterruptedException
-     */
-    private static void jcmd(Consumer<String> c, String ... command) throws IOException, InterruptedException {
-        jcmd("JMXStartStopDoSomething", c, command);
-    }
-
-    /**
-     * Run the "jcmd" command
-     *
-     * @param target The target application name (or PID)
-     * @param c {@linkplain Consumer} instance
-     * @param command Command with parameters; space separated string
-     * @throws IOException
-     * @throws InterruptedException
-     */
-    private static void jcmd(String target, final Consumer<String> c, String ... command) throws IOException, InterruptedException {
-        dbg_print("[jcmd] " + (command.length > 0 ? command[0] : "list"));
-
-        JDKToolLauncher l = JDKToolLauncher.createUsingTestJDK("jcmd");
-        l.addToolArg(target);
-        for (String cmd : command) {
-            l.addToolArg(cmd);
-        }
-
-        AtomicBoolean portUnavailable = new AtomicBoolean(false);
-        Process p = ProcessTools.startProcess(
-            "jcmd",
-            new ProcessBuilder(l.getCommand()),
-            line -> {
-                if (line.contains("BindException") ||
-                    line.contains(Agent.getText(AgentConfigurationError.CONNECTOR_SERVER_IO_ERROR))) {
-                    portUnavailable.set(true);
-                } else {
-                    c.accept(line);
-                }
-            }
-        );
-
-        p.waitFor();
-        dbg_print("[jcmd] --------");
-        if (portUnavailable.get()) {
-            String cmd = Arrays.asList(l.getCommand()).stream()
-                    .collect(
-                            Collectors.joining(" ", "", ": Unable to bind address")
-                    );
-            throw new BindException(cmd);
-        }
-    }
-
-    private static final String CMD_STOP = "ManagementAgent.stop";
-    private static final String CMD_START = "ManagementAgent.start";
-    private static final String CMD_START_LOCAL = "ManagementAgent.start_local";
-
     static void test_01() throws Exception {
         // Run an app with JMX enabled stop it and
         // restart on other port
@@ -488,7 +386,7 @@
         System.out.println("**** Test one ****");
         int ports[] = PortAllocator.allocatePorts(2);
 
-        Something s = doSomething(
+        TestAppRun s = doTest(
                 "test_01",
                 "-Dcom.sun.management.jmxremote.port=" + ports[0],
                 "-Dcom.sun.management.jmxremote.authenticate=false",
@@ -497,10 +395,10 @@
         try {
             testConnect(ports[0]);
 
-            jcmd(CMD_STOP);
+            jcmd.stop();
             testNoConnect(ports[0]);
 
-            jcmd(CMD_START, "jmxremote.port=" + ports[1]);
+            jcmd.start("jmxremote.port=" + ports[1]);
             testConnect(ports[1]);
         } finally {
             s.stop();
@@ -514,12 +412,13 @@
         System.out.println("**** Test two ****");
 
         int[] ports = PortAllocator.allocatePorts(1);
-        Something s = doSomething("test_02");
+        TestAppRun s = doTest("test_02");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             testConnect(ports[0]);
         } finally {
@@ -535,18 +434,20 @@
         System.out.println("**** Test three ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_03");
+        TestAppRun s = doTest("test_03");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             // Second agent shouldn't start
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[1],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[1],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             // First agent should connect
             testConnect(ports[0]);
@@ -565,13 +466,14 @@
         System.out.println("**** Test four ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_04");
+        TestAppRun s = doTest("test_04");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.rmi.port=" + ports[1],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.rmi.port=" + ports[1],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             testConnect(ports[0], ports[1]);
         } finally {
@@ -585,9 +487,9 @@
 
         System.out.println("**** Test five ****");
         int[] ports = PortAllocator.allocatePorts(1);
-        Something s = doSomething("test_05");
+        TestAppRun s = doTest("test_05");
         try {
-            jcmd(CMD_START_LOCAL);
+            jcmd.startLocal();
 
             testNoConnect(ports[0]);
             testConnectLocal(s.getPid());
@@ -605,26 +507,27 @@
         System.out.println("**** Test six ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_06");
+        TestAppRun s = doTest("test_06");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             testConnect(ports[0], ports[1]);
 
             final AtomicBoolean checks = new AtomicBoolean(false);
-            jcmd(
-                    line -> {
-                        if (line.contains("java.lang.RuntimeException: Invalid agent state")) {
-                            checks.set(true);
-                        }
-                    },
-                    CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                line -> {
+                    if (line.contains("java.lang.RuntimeException: Invalid agent state")) {
+                        checks.set(true);
+                    }
+                },
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             if (!checks.get()) {
                 throw new Exception("Starting agent on port " + ports[0] + " should "
@@ -644,27 +547,28 @@
         System.out.println("**** Test seven ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_07");
+        TestAppRun s = doTest("test_07");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             testConnect(ports[0], ports[1]);
 
             final AtomicBoolean checks = new AtomicBoolean(false);
 
-            jcmd(
-                    line -> {
-                        if (line.contains("java.lang.RuntimeException: Invalid agent state")) {
-                            checks.set(true);
-                        }
-                    },
-                    CMD_START,
-                    "jmxremote.port=" + ports[1],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                line -> {
+                    if (line.contains("java.lang.RuntimeException: Invalid agent state")) {
+                        checks.set(true);
+                    }
+                },
+                "jmxremote.port=" + ports[1],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             if (!checks.get()) {
                 throw new Exception("Starting agent on poprt " + ports[1] + " should "
@@ -684,17 +588,18 @@
         System.out.println("**** Test eight ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_08");
+        TestAppRun s = doTest("test_08");
         try {
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false");
+            jcmd.start(
+                "jmxremote.port=" + ports[0],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
+            );
 
             testConnect(ports[0], ports[1]);
 
-            jcmd(CMD_STOP);
-            jcmd(CMD_STOP);
+            jcmd.stop();
+            jcmd.stop();
         } finally {
             s.stop();
         }
@@ -707,7 +612,7 @@
 
         System.out.println("**** Test nine ****");
 
-        Something s = doSomething("test_09");
+        TestAppRun s = doTest("test_09");
 
         try (ServerSocket ss = new ServerSocket(0)) {
             int localPort = ss.getLocalPort();
@@ -723,13 +628,12 @@
                 final AtomicBoolean retry = new AtomicBoolean(false);
 
                 try {
-                    jcmd(
+                    jcmd.start(
                         line -> {
                             if (line.contains(Agent.getText(AgentConfigurationError.AGENT_EXCEPTION))) {
                                 retry.set(true);
                             }
                         },
-                        CMD_START,
                         "jmxremote.port=" + ports[0],
                         "jmxremote.rmi.port=" + localPort,
                         "jmxremote.authenticate=false",
@@ -764,18 +668,17 @@
         System.out.println("**** Test ten ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething(
+        TestAppRun s = doTest(
                 "test_10",
                 "-Dcom.sun.management.jmxremote.authenticate=false",
                 "-Dcom.sun.management.jmxremote.ssl=true");
 
         try {
             testNoConnect(ports[0]);
-            jcmd(
-                    CMD_START,
-                    "jmxremote.port=" + ports[1],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false"
+            jcmd.start(
+                "jmxremote.port=" + ports[1],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
             );
             testConnect(ports[1]);
         } finally {
@@ -791,7 +694,7 @@
 
         System.out.println("**** Test eleven ****");
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething(
+        TestAppRun s = doTest(
                 "test_11",
                 "-Dcom.sun.management.jmxremote.port=" + ports[0],
                 "-Dcom.sun.management.jmxremote.authenticate=false",
@@ -800,15 +703,14 @@
         try {
             testNoConnect(ports[0]);
 
-            jcmd(CMD_STOP);
+            jcmd.stop();
 
             testNoConnect(ports[0]);
 
-            jcmd(
-                    CMD_START,
-                    "jmxremote.port=" + ports[1],
-                    "jmxremote.authenticate=false",
-                    "jmxremote.ssl=false"
+            jcmd.start(
+                "jmxremote.port=" + ports[1],
+                "jmxremote.authenticate=false",
+                "jmxremote.ssl=false"
             );
 
             testConnect(ports[1]);
@@ -828,7 +730,7 @@
         System.out.println("**** Test twelve ****");
 
         int[] ports = PortAllocator.allocatePorts(2);
-        Something s = doSomething("test_12",
+        TestAppRun s = doTest("test_12",
                 "-Dcom.sun.management.config.file="
                 + TEST_SRC + File.separator + "management_cl.properties",
                 "-Dcom.sun.management.jmxremote.authenticate=false"
@@ -837,15 +739,15 @@
         try {
             testNoConnect(ports[0]);
 
-            jcmd(CMD_STOP);
+            jcmd.stop();
 
             testNoConnect(ports[0]);
 
-            jcmd(CMD_START,
-                    "config.file=" + TEST_SRC + File.separator
-                    + "management_jcmd.properties",
-                    "jmxremote.authenticate=false",
-                    "jmxremote.port=" + ports[1]
+            jcmd.start(
+                "config.file=" + TEST_SRC + File.separator
+                + "management_jcmd.properties",
+                "jmxremote.authenticate=false",
+                "jmxremote.port=" + ports[1]
             );
 
             testConnect(ports[1]);
@@ -863,7 +765,7 @@
 
         System.out.println("**** Test thirteen ****");
         int[] ports = PortAllocator.allocatePorts(1);
-        Something s = doSomething(
+        TestAppRun s = doTest(
                 "test_13",
                 "-Dcom.sun.management.jmxremote.port=" + ports[0],
                 "-Dcom.sun.management.jmxremote.authenticate=false",
@@ -872,16 +774,16 @@
         try {
             testNoConnect(ports[0]);
 
-            jcmd(CMD_STOP);
-            jcmd(CMD_START,
-                    "jmxremote.ssl=false",
-                    "jmxremote.port=" + ports[0]
+            jcmd.stop();
+            jcmd.start(
+                "jmxremote.ssl=false",
+                "jmxremote.port=" + ports[0]
             );
             testConnect(ports[0]);
 
-            jcmd(CMD_STOP);
-            jcmd(CMD_START,
-                    "jmxremote.port=" + ports[0]
+            jcmd.stop();
+            jcmd.start(
+                "jmxremote.port=" + ports[0]
             );
 
             testNoConnect(ports[0]);
@@ -897,14 +799,14 @@
 
         System.out.println("**** Test fourteen ****");
         int[] ports = PortAllocator.allocatePorts(1);
-        Something s = doSomething(
+        TestAppRun s = doTest(
                 "test_14",
                 "-Dcom.sun.management.jmxremote.port=" + ports[0],
                 "-Dcom.sun.management.jmxremote.authenticate=false",
                 "-Dcom.sun.management.jmxremote.ssl=false");
         try {
             testConnect(ports[0]);
-            jcmd(CMD_STOP);
+            jcmd.stop();
             testConnectLocal(s.getPid());
         } finally {
             s.stop();
@@ -918,11 +820,11 @@
         System.out.println("**** Test fifteen ****");
 
         int[] ports = PortAllocator.allocatePorts(1);
-        Something s = doSomething("test_15");
+        TestAppRun s = doTest("test_15");
 
         try {
             testNoConnect(ports[0]);
-            jcmd(CMD_START + "_local");
+            jcmd.startLocal();
 
             testConnectLocal(s.getPid());
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/management/jmxremote/startstop/JMXStatusTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,150 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.net.BindException;
+import java.util.function.Predicate;
+import java.util.regex.Pattern;
+import org.testng.annotations.*;
+import static org.testng.Assert.*;
+
+import jdk.testlibrary.ProcessTools;
+
+/**
+ * @test
+ * @bug 8023093
+ * @summary Performs a sanity test for the ManagementAgent.status diagnostic command.
+ *          Management agent may be disable, started (only local connections) and started.
+ *          The test asserts that the expected text is being printed.
+ * @library /lib/testlibrary
+ * @build jdk.testlibrary.* PortAllocator TestApp ManagementAgentJcmd
+ * @run testng/othervm -XX:+UsePerfData JMXStatusTest
+ */
+public class JMXStatusTest {
+    private final static String TEST_APP_NAME = "TestApp";
+
+    private final static Pattern DISABLE_AGENT_STATUS = Pattern.compile(
+        "Agent\\s*\\: disabled$"
+    );
+
+    private final static Pattern LOCAL_AGENT_STATUS = Pattern.compile(
+        "Agent\\s*\\:\\s*enabled\\n+" +
+        "Connection Type\\s*\\:\\s*local\\n+" +
+        "Protocol\\s*\\:\\s*[a-z]+\\n+" +
+        "Host\\s*\\:\\s*.+\\n+" +
+        "URL\\s*\\:\\s*service\\:jmx\\:.+",
+        Pattern.MULTILINE
+    );
+
+    private final static Pattern REMOTE_AGENT_STATUS = Pattern.compile(
+        "Agent\\s*\\: enabled\\n+" +
+        "Connection Type\\s*\\: remote\\n+" +
+        "Protocol\\s*\\: [a-z]+\\n+" +
+        "Host\\s*\\: .+\\n+" +
+        "URL\\s*\\: service\\:jmx\\:.+\\n+" +
+        "Properties\\s*\\:\\n+(\\s*\\S+\\s*=\\s*\\S+\\n*)+",
+        Pattern.MULTILINE
+    );
+
+    private static ProcessBuilder testAppPb;
+    private Process testApp;
+
+    private ManagementAgentJcmd jcmd;
+
+    @BeforeClass
+    public static void setupClass() throws Exception {
+        testAppPb = ProcessTools.createJavaProcessBuilder(
+            "-cp", System.getProperty("test.class.path"),
+            "-XX:+UsePerfData",
+            TEST_APP_NAME
+        );
+    }
+
+    @BeforeTest
+    public void setup() {
+        jcmd = new ManagementAgentJcmd(TEST_APP_NAME, false);
+    }
+
+    @BeforeMethod
+    public void startTestApp() throws Exception {
+        testApp = ProcessTools.startProcess(
+            TEST_APP_NAME, testAppPb,
+            (Predicate<String>)l->l.trim().equals("main enter")
+        );
+    }
+
+    @AfterMethod
+    public void stopTestApp() throws Exception {
+        testApp.getOutputStream().write(1);
+        testApp.getOutputStream().flush();
+        testApp.waitFor();
+        testApp = null;
+    }
+
+    @Test
+    public void testAgentDisabled() throws Exception {
+        String status = jcmd.status();
+        assertStatusMatches(DISABLE_AGENT_STATUS, status);
+    }
+
+    @Test
+    public void testAgentLocal() throws Exception {
+        jcmd.startLocal();
+        String status = jcmd.status();
+
+        assertStatusMatches(LOCAL_AGENT_STATUS, status);
+    }
+
+    @Test
+    public void testAgentRemote() throws Exception {
+        while (true) {
+            try {
+                int[] ports = PortAllocator.allocatePorts(1);
+                jcmd.start(
+                    "jmxremote.port=" + ports[0],
+                    "jmxremote.authenticate=false",
+                    "jmxremote.ssl=false"
+                );
+                String status = jcmd.status();
+
+                assertStatusMatches(REMOTE_AGENT_STATUS, status);
+                return;
+            } catch (BindException e) {
+                System.out.println("Failed to allocate ports. Retrying ...");
+            }
+        }
+    }
+
+    private void assertStatusMatches(Pattern expected, String value) {
+        assertStatusMatches(expected, value, "");
+    }
+
+    private void assertStatusMatches(Pattern expected, String value, String msg) {
+        int idx = value.indexOf('\n');
+        if (idx > -1) {
+            value = value.substring(idx + 1).trim();
+            assertTrue(expected.matcher(value).find(), msg);
+        } else {
+            fail("The management agent status must contain more then one line of text");
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/management/jmxremote/startstop/ManagementAgentJcmd.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,198 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+import java.io.IOException;
+import java.net.BindException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.function.Consumer;
+import java.util.stream.Collectors;
+import sun.management.Agent;
+import sun.management.AgentConfigurationError;
+
+import jdk.testlibrary.JDKToolLauncher;
+import jdk.testlibrary.ProcessTools;
+
+/**
+ * A helper class for issuing ManagementAgent.* diagnostic commands and capturing
+ * their output.
+ */
+final class ManagementAgentJcmd {
+    private static final String CMD_STOP = "ManagementAgent.stop";
+    private static final String CMD_START = "ManagementAgent.start";
+    private static final String CMD_START_LOCAL = "ManagementAgent.start_local";
+    private static final String CMD_STATUS = "ManagementAgent.status";
+
+    private final String id;
+    private final boolean verbose;
+
+    public ManagementAgentJcmd(String targetApp, boolean verbose) {
+        this.id = targetApp;
+        this.verbose = verbose;
+    }
+
+    /**
+     * `jcmd`
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    public String list() throws IOException, InterruptedException {
+        return jcmd();
+    }
+
+    /**
+     * `jcmd <app> ManagementAgent.stop`
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    public String stop() throws IOException, InterruptedException {
+        return jcmd(CMD_STOP);
+    }
+
+    /**
+     * `jcmd <app> ManagementAgent.start_local`
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    public String startLocal() throws IOException, InterruptedException {
+        return jcmd(CMD_START_LOCAL);
+    }
+
+    /**
+     * `jcmd <app> ManagementAgent.start <args>`
+     * @return The JCMD output
+     * @param params The arguments to <b>ManagementAgent.start</b> command
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    public String start(String ... params) throws IOException, InterruptedException {
+        return start(c->{}, params);
+    }
+
+    /**
+     * `jcmd <pp> ManagementAgent.start <args>`
+     * @param c A string consumer used to inspect the jcmd output line-by-line
+     * @param params The arguments to <b>ManagementAgent.start</b> command
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    public String start(Consumer<String> c, String ... params) throws IOException, InterruptedException {
+        List<String> args = new ArrayList<>();
+        args.add(CMD_START);
+        args.addAll(Arrays.asList(params));
+        return jcmd(c, args.toArray(new String[args.size()]));
+    }
+
+    public String status() throws IOException, InterruptedException {
+        return jcmd(CMD_STATUS);
+    }
+
+    /**
+     * Run the "jcmd" command
+     *
+     * @param command Command + arguments
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    private String jcmd(String ... command) throws IOException, InterruptedException {
+        if (command.length == 0) {
+            return jcmd(null, c->{});
+        } else {
+            return jcmd(c->{}, command);
+        }
+    }
+
+    /**
+     * Run the "jcmd" command
+     *
+     * @param c {@linkplain Consumer} instance
+     * @param command Command + arguments
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    private String jcmd(Consumer<String> c, String ... command) throws IOException, InterruptedException {
+        return jcmd(id, c, command);
+    }
+
+    /**
+     * Run the "jcmd" command
+     *
+     * @param target The target application name (or PID)
+     * @param c {@linkplain Consumer} instance
+     * @param command Command + arguments
+     * @return The JCMD output
+     * @throws IOException
+     * @throws InterruptedException
+     */
+    private String jcmd(String target, final Consumer<String> c, String ... command) throws IOException, InterruptedException {
+        dbg_print("[jcmd] " + (command.length > 0 ? command[0] : "list"));
+
+        JDKToolLauncher l = JDKToolLauncher.createUsingTestJDK("jcmd");
+        l.addToolArg(target);
+        for (String cmd : command) {
+            l.addToolArg(cmd);
+        }
+
+        StringBuilder output = new StringBuilder();
+
+        AtomicBoolean portUnavailable = new AtomicBoolean(false);
+        Process p = ProcessTools.startProcess(
+            "jcmd",
+            new ProcessBuilder(l.getCommand()),
+            line -> {
+                if (line.contains("BindException") ||
+                    line.contains(Agent.getText(AgentConfigurationError.CONNECTOR_SERVER_IO_ERROR))) {
+                    portUnavailable.set(true);
+                } else {
+                    output.append(line).append('\n');
+                    c.accept(line);
+                }
+            }
+        );
+
+        p.waitFor();
+        dbg_print("[jcmd] --------");
+        if (portUnavailable.get()) {
+            String cmd = Arrays.asList(l.getCommand()).stream()
+                    .collect(
+                            Collectors.joining(" ", "", ": Unable to bind address")
+                    );
+            throw new BindException(cmd);
+        }
+
+        return output.toString();
+    }
+
+    private void dbg_print(String msg) {
+        if (verbose) {
+            System.out.println("DBG: " + msg);
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/management/jmxremote/startstop/PortAllocator.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.util.Random;
+
+/**
+ * Dynamically allocates distinct ports from the ephemeral range 49152-65535
+ */
+class PortAllocator {
+    private final static int LOWER_BOUND = 49152;
+    private final static int UPPER_BOUND = 65535;
+
+    private final static Random RND = new Random(System.currentTimeMillis());
+
+    static int[] allocatePorts(final int numPorts) {
+        int[] ports = new int[numPorts];
+        for (int i = 0; i < numPorts; i++) {
+            int port = -1;
+            while (port == -1) {
+                port = RND.nextInt(UPPER_BOUND - LOWER_BOUND + 1) + LOWER_BOUND;
+                for (int j = 0; j < i; j++) {
+                    if (ports[j] == port) {
+                        port = -1;
+                        break;
+                    }
+                }
+            }
+            ports[i] = port;
+        }
+        return ports;
+    }
+}
--- a/jdk/test/sun/management/jmxremote/startstop/REMOTE_TESTING.txt	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/management/jmxremote/startstop/REMOTE_TESTING.txt	Wed Jul 05 20:32:21 2017 +0200
@@ -4,7 +4,7 @@
    on host 1
 4. run 
 
-   ${TESTJAVA}/bin/java -server JMXStartStopDoSomething \
+   ${TESTJAVA}/bin/java -server TestApp \
    -Dcom.sun.management.jmxremote.port=50234 \
    -Dcom.sun.management.jmxremote.rmi.port=50235 \
    -Dcom.sun.management.jmxremote.authenticate=false \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/management/jmxremote/startstop/TestApp.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.io.IOException;
+
+public class TestApp {
+    public static void doSomething() throws IOException{
+        int r = System.in.read();
+        System.out.println("read: " + r);
+    }
+
+    public static void main(String args[]) throws Exception {
+        System.out.println("main enter");
+        System.out.flush();
+        doSomething();
+        System.out.println("main exit");
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/security/jgss/spnego/MSOID.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8078439
+ * @summary SPNEGO auth fails if client proposes MS krb5 OID
+ */
+
+import org.ietf.jgss.GSSContext;
+import org.ietf.jgss.GSSCredential;
+import org.ietf.jgss.GSSException;
+import org.ietf.jgss.GSSManager;
+
+import java.lang.Exception;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.Arrays;
+import java.util.Base64;
+
+public class MSOID {
+    public static void main(String[] args) throws Exception {
+
+        // msoid.txt is a NegTokenInit packet sent from Internet Explorer to
+        // IIS server on a test machine. No sensitive info included.
+        byte[] header = Files.readAllBytes(
+                Paths.get(System.getProperty("test.src"), "msoid.txt"));
+        byte[] token = Base64.getMimeDecoder().decode(
+                Arrays.copyOfRange(header, 10, header.length));
+
+        GSSCredential cred = null;
+        GSSContext ctx = GSSManager.getInstance().createContext(cred);
+
+        try {
+            ctx.acceptSecContext(token, 0, token.length);
+            // Before the fix, GSS_KRB5_MECH_OID_MS is not recognized
+            // and acceptor chooses another mech and goes on
+            throw new Exception("Should fail");
+        } catch (GSSException gsse) {
+            // After the fix, GSS_KRB5_MECH_OID_MS is recognized but the token
+            // cannot be accepted because we don't have any krb5 credential.
+            gsse.printStackTrace();
+            if (gsse.getMajor() != GSSException.NO_CRED) {
+                throw gsse;
+            }
+            for (StackTraceElement st: gsse.getStackTrace()) {
+                if (st.getClassName().startsWith("sun.security.jgss.krb5.")) {
+                    // Good, it is already in krb5 mech's hand.
+                    return;
+                }
+            }
+            throw gsse;
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/security/jgss/spnego/msoid.txt	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,27 @@
+Negotiate YIIGPAYGKwYBBQUCoIIGMDCCBiygMDAuBgkqhkiC9xIBAgIGCSqGSIb3EgECAgYKKwYBBA
+GCNwICHgYKKwYBBAGCNwICCqKCBfYEggXyYIIF7gYJKoZIhvcSAQICAQBuggXdMIIF2aADAgEFoQMCAQ
+6iBwMFACAAAACjggTIYYIExDCCBMCgAwIBBaEOGwxUV0VMVkUuVEhJTkuiIzAhoAMCAQKhGjAYGwRIVF
+RQGxBrZGMuVFdFTFZFLlRISU5Lo4IEgjCCBH6gAwIBEqEDAgEJooIEcASCBGyoIL0zQevk57pY6D25+1
+SQbAeldYXkpdn8JlKgSyz1cdiTpwqDt8B7pj7AoKMPHCiVss37XCEpBIuZClBK3Jmry+QWXCbQemKvyO
+Caz806RDNB7TA7l1NxUJ6LsCiQncNV1TEq37NM6H8il6PjnbcBoMcHH/+cFGVPNP3eP+Z5Kd+5DZELPV
+qQkYogXybmngmYy2168OsfyANzotUpm/HBwEHKujCPH9Gbhwhmx4tUcBvCetPNoXmHOQZLB4u7uyblKO
+c6R2yGTFCa8DBQNXx38RRHgsvlNGlx+UsSoF4/DixAreNRkZnpKabn1cRK/KZh6vHfbL2QVegr1hrp71
+IJwyVuR+RTGL/7WCSWFClJyWD3Cm4+eK46uVj4MKPUJBc0XVViV/Dsh4N9EomVDkovWU/v+0d+W4pQJk
+BFnJoNYuaG8UnLWrxMKGNwVOfsblcJtB7B5zuZzsWsUIdmMT1n8mtWrv0wYiwvotfT6z/suk+Vhg9MGd
+uDmeneeG9deMDUMwrwB8u5J2VEeWKurBfDB02jv/08qAZS2ovBfV2SiXCuky5z7llvQ8uPsoezVwYdhu
+HmBuPE7PqDIkmkEJRWpq95dqxllCXvlL4uINxFadkhcbzuCDjSGil78p6FJTKc4Dt/kuug1zJuXhJO1L
+2CgkMsYPTogoUvAtplzIDF0nSMwJUIJzQXIHCFasmDNJA1GAvQD+Qh7Mp4dYb2Uid+sSM2qlQn8bgR9S
+dlfL/olQ9GKPOBBGwsVoZKR3Brimc9LOJofPMEEa560KQNgtO1MyjoqEJKzFq+2wVZQahvpcV7VgixCq
+Nom3Wd4NdZ3QM0PHL7e9bl3/qCsWaiNlmRW7gupz8nNCtWNMf4UBqIeo9jPH9Cb96fOUM4c7XXp4iX6w
+ns1MsmPZ4VQDRU7VK+yTC81KGfMlSvrvqCJfGoxy0NaeXtmkN55oAhaj8ebiEBdKCXXF5wk0zqvt1ifE
+9ywYk/AbdFBPThyOT6Tu9x41gi6mCTiMtSdg7cFY+5yXd3UIgUwnbOG3IwAkdLXlepvnHwEXCXkbfbr9
+e1wjs5LMmYRunJ05FOx8iAibB8bWjgiFmYWbeyjyQF3KDs5cpvROXcapT1+KlFU4lEO8lnKM/Ipq81ED
+s+/DygXCvlskeKV57URx+XcMWnURu4hdGHbCPY/X7eOmox0mw5/V0rJMIjSjQNPyi4UM4dDTso6mt0XE
+h+YyCGmV67D8/nihO/NaRFEFxHlaGwh3Lqu/Tero88iuDb9U1uEWz8cF8wr+2azyOTmhi/ID/jfiEC8i
+b/hjYEcBI99x/CNmuuM7uCwTPIsJtBD3AnUdPa/yo41rCtm/K5HZCTzw2W93vaHqyttEC7c70rdAUB49
+CfSAVtH4gwxCDKMSJMlELfHGrIloEppEoUEc7LOdmzinvzcuajj0moBn5WUZHiVmopLjGjW7wunmMPQS
+H9FmCQf2I1N4E6nZfH+cUzBbHkIF5XHY4KXwmJQ3UdbUDp8z3npIH3MIH0oAMCARKigewEgenD23U6gQ
+aORjuWnT1nqadqR+E5fa/viohey4g6mn6uPfVRPz5a7OsDOurQV9wHR/VEwvjpdlZzMcANbt28Ut3YvQ
+SWWwqALoLtSLOTgXmK9Higb+NSSO7hKtqKgDWREfQisn3xE9PGkMUlanu2es34+k43AQmJf2InvFNNcy
+PcKllikoMOldVeoF1BIKvbDI0+vE3SwSrD0UhUdDeeZTN33b0Y8f3I1UYtidwxcRRkvCaNEhphtr8hp8
+hXWQkuxVvF2TiQyHF4PnJkgb1Zr6GXydOmMgMJE1anPFKFKWH6PZWGnp8mw0F5zw==
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/security/krb5/auto/MSOID2.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,78 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8078439
+ * @summary SPNEGO auth fails if client proposes MS krb5 OID
+ * @compile -XDignore.symbol.file MSOID2.java
+ * @run main/othervm MSOID2
+ */
+
+import sun.security.jgss.GSSUtil;
+
+// The basic krb5 test skeleton you can copy from
+public class MSOID2 {
+
+    public static void main(String[] args) throws Exception {
+
+        new OneKDC(null).writeJAASConf();
+
+        Context c, s;
+        c = Context.fromJAAS("client");
+        s = Context.fromJAAS("server");
+
+        c.startAsClient(OneKDC.SERVER, GSSUtil.GSS_SPNEGO_MECH_OID);
+        s.startAsServer(GSSUtil.GSS_SPNEGO_MECH_OID);
+
+        byte[] t = new byte[0];
+        boolean first = true;
+        while (true) {
+            if (t != null || !c.x().isEstablished()) t = c.take(t);
+            if (first) {
+                // Tweak the packet to append an extra OID
+                int len = t.length;
+                byte[] nt = new byte[len + 11];
+                System.arraycopy(t, 0, nt, 0, 0x23);
+                System.arraycopy(t, 0x18, nt, 0x23, 11);    // dup the OID
+                System.arraycopy(t, 0x23, nt, 0x2e, len-0x23);
+                nt[0x1d] = (byte)0x82;  // change the 1st to MS OID
+                // Length bytes to be tweaked
+                for (int pos: new int[] {3, 0xf, 0x13, 0x15, 0x17}) {
+                    nt[pos] = (byte)(nt[pos] + 11);
+                }
+                t = nt;
+                new sun.misc.HexDumpEncoder().encodeBuffer(t, System.out);
+            }
+            if (t != null || !s.x().isEstablished()) t = s.take(t);
+            if (c.x().isEstablished() && s.x().isEstablished()) break;
+            first = false;
+        }
+
+        Context.transmit("i say high --", c, s);
+        Context.transmit("   you say low", s, c);
+
+        s.dispose();
+        c.dispose();
+    }
+}
--- a/jdk/test/sun/security/pkcs12/StoreSecretKeyTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/security/pkcs12/StoreSecretKeyTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,12 +23,14 @@
 
 /*
  * @test
- * @bug 8005408
+ * @bug 8005408 8079129
  * @summary KeyStore API enhancements
  */
 
 import java.io.*;
 import java.security.*;
+import java.security.cert.*;
+import java.security.cert.Certificate;
 import java.util.*;
 import javax.crypto.*;
 import javax.crypto.spec.*;
@@ -39,7 +41,9 @@
     private final static String DIR = System.getProperty("test.src", ".");
     private static final char[] PASSWORD = "passphrase".toCharArray();
     private static final String KEYSTORE = "keystore.p12";
-    private static final String ALIAS = "my secret key";
+    private static final String CERT = DIR + "/trusted.pem";
+    private static final String ALIAS = "my trusted cert";
+    private static final String ALIAS2 = "my secret key";
 
     public static void main(String[] args) throws Exception {
 
@@ -56,8 +60,13 @@
         KeyStore keystore = KeyStore.getInstance("PKCS12");
         keystore.load(null, null);
 
-        // Set entry
+        // Set trusted certificate entry
+        Certificate cert = loadCertificate(CERT);
         keystore.setEntry(ALIAS,
+            new KeyStore.TrustedCertificateEntry(cert), null);
+
+        // Set secret key entry
+        keystore.setEntry(ALIAS2,
             new KeyStore.SecretKeyEntry(generateSecretKey("AES", 128)),
                 new KeyStore.PasswordProtection(PASSWORD));
 
@@ -73,7 +82,7 @@
                 " entries");
         }
 
-        KeyStore.Entry entry = keystore.getEntry(ALIAS,
+        KeyStore.Entry entry = keystore.getEntry(ALIAS2,
             new KeyStore.PasswordProtection(PASSWORD));
         System.out.println("Retrieved entry: " + entry);
 
@@ -101,4 +110,14 @@
         generator.init(size);
         return generator.generateKey();
     }
+
+    private static Certificate loadCertificate(String certFile)
+        throws Exception {
+        X509Certificate cert = null;
+        try (FileInputStream certStream = new FileInputStream(certFile)) {
+            CertificateFactory factory =
+                CertificateFactory.getInstance("X.509");
+            return factory.generateCertificate(certStream);
+        }
+    }
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/sun/security/x509/GeneralName/X400Address.java	Wed Jul 05 20:32:21 2017 +0200
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.io.ByteArrayInputStream;
+import java.security.cert.CertificateFactory;
+import java.security.cert.X509Certificate;
+
+/**
+ * @test
+ * @bug 8058543
+ * @summary Check that a Subject Alternative Name of type X400Address
+ *      can be parsed
+ */
+public class X400Address {
+
+    /*
+     * A cert containing an X400Address SAN:
+     *    ObjectId: 2.5.29.17 Criticality=false
+     *    SubjectAlternativeName [
+     *      RFC822Name: testuser@test.net
+     *      X400Address: <DER-encoded value>
+     *    ]
+     */
+    private static final String certStr =
+        "-----BEGIN CERTIFICATE-----\n" +
+        "MIIEXjCCA0agAwIBAgIEAm+MuDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwlU\n" +
+        "ZXN0IFVzZXIwHhcNMTQwOTI2MDgyNTA1WhcNMjQwOTIzMDgyNTA1WjAUMRIwEAYD\n" +
+        "VQQDEwlUZXN0IFVzZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCM\n" +
+        "Lj3k7is6bGoZgoONF15PT/GnfGtFJFYF2alnuHYjj/zdlKtU2DAPadz2EAJHczhy\n" +
+        "/p1DVvyrOUgCviB0nzijuLt9YHr6goel7Pe/YtcRavfC5HzEVOjhp92WZX/jIO9X\n" +
+        "xlpC/aQKt0pqCgUkvzVzB2Lm8EB/bcxlRKNh6WpAGfH/23XnJZ/UPRYgu+C+00i2\n" +
+        "vv26kHb2hZ3px1RP4b1FMiKc5mZxd+D9Ep3kGf+SnrBROR9v2u4hOobxzC9avAfq\n" +
+        "vTJ1rauR08eUHD15AUrR6AlOhb4Y6XqzPZ+aPb1Mj1XSuMsXvApWhXmavRA5wK1S\n" +
+        "ZtnvibB/0l57AMSUh24NAgMBAAGjggG2MIIBsjAPBgNVHRMBAf8EBTADAQH/MA8G\n" +
+        "A1UdJQQIMAYGBFUdJQAwDgYDVR0PAQH/BAQDAgbAMEcGA1UdEQRAMD6BEXRlc3R1\n" +
+        "c2VyQHRlc3QubmV0oykwE2EEEwJ0cmIDEwEgogYTBFRFU1QxEjAQgAEBoQsTCVRl\n" +
+        "c3QgVXNlcjCCATMGA1UdDgSCASoEggEmMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A\n" +
+        "MIIBCgKCAQEAjC495O4rOmxqGYKDjRdeT0/xp3xrRSRWBdmpZ7h2I4/83ZSrVNgw\n" +
+        "D2nc9hACR3M4cv6dQ1b8qzlIAr4gdJ84o7i7fWB6+oKHpez3v2LXEWr3wuR8xFTo\n" +
+        "4afdlmV/4yDvV8ZaQv2kCrdKagoFJL81cwdi5vBAf23MZUSjYelqQBnx/9t15yWf\n" +
+        "1D0WILvgvtNItr79upB29oWd6cdUT+G9RTIinOZmcXfg/RKd5Bn/kp6wUTkfb9ru\n" +
+        "ITqG8cwvWrwH6r0yda2rkdPHlBw9eQFK0egJToW+GOl6sz2fmj29TI9V0rjLF7wK\n" +
+        "VoV5mr0QOcCtUmbZ74mwf9JeewDElIduDQIDAQABMA0GCSqGSIb3DQEBCwUAA4IB\n" +
+        "AQCD3p0mhvqDLYqTL9l5cRK9+cGOS5nbDvUmd1NutCIOJHMT96ESob9fqM9zo23l\n" +
+        "Yudajxa3/GooKTCe1TcaWIzFVqvO8wezMLkwuZcoto1ST8+lS36ZwZ1gMipE2Kh1\n" +
+        "XmnBn0wkUNfqypQ+nWH9vsYuJkeDb8402BOEdb/pvGYKC8d6EzQwUukLpXyOMs9r\n" +
+        "aCcsnSYRV8gFYCUxZkm0+tQOBjUsQ1SP/ww7SicPPSHqb08HvH4ALG75MUxIMVF1\n" +
+        "vyTeStZzsFXQaUq026U/rDXf18bV3Vi5EI5jR9p6CDXgundqnMmiEo4BXWCp/KeB\n" +
+        "JxndcaVIF7PbMkUw01elOmj0\n" +
+        "-----END CERTIFICATE-----";
+
+    public static void main(String[] args) throws Exception {
+        CertificateFactory cf = CertificateFactory.getInstance("X.509");
+        ByteArrayInputStream is = new ByteArrayInputStream(certStr.getBytes());
+        X509Certificate cert = (X509Certificate) cf.generateCertificate(is);
+
+        if (cert.getSubjectAlternativeNames() == null) {
+            throw new Exception("Failed to parse Subject Alternative Name");
+        }
+    }
+}
--- a/jdk/test/sun/tools/jcmd/TestJcmdDefaults.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jcmd/TestJcmdDefaults.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
  * @test
  * @bug 7104647
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main TestJcmdDefaults
  */
--- a/jdk/test/sun/tools/jcmd/TestJcmdSanity.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jcmd/TestJcmdSanity.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -43,6 +43,7 @@
  * @test
  * @bug 7104647 7154822
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main/othervm -XX:+UsePerfData TestJcmdSanity
  */
--- a/jdk/test/sun/tools/jconsole/ResourceCheckTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jconsole/ResourceCheckTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,6 +26,7 @@
  *  @test
  *  @bug 5008856 5023573 5024917 5062569 7172176
  *  @summary 'missing resource key' error for key = "Operating system"
+ *  @modules jdk.jconsole/sun.tools.jconsole
  *  @run main ResourceCheckTest
  */
 
--- a/jdk/test/sun/tools/jhat/HatHeapDump1Test.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jhat/HatHeapDump1Test.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  * @bug 5102009
  * @summary Sanity test of jhat functionality
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibarary.*
  * @compile -g HelloWorld.java
  * @run main HatHeapDump1Test
--- a/jdk/test/sun/tools/jinfo/JInfoLauncherTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jinfo/JInfoLauncherTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -36,6 +36,7 @@
 /**
  * @test
  * @bug 8039080
+ * @modules jdk.jcmd/sun.tools.jinfo
  * @run testng JInfoLauncherTest
  * @summary Test JInfo launcher argument parsing
  */
--- a/jdk/test/sun/tools/jinfo/JInfoRunningProcessFlagTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jinfo/JInfoRunningProcessFlagTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,10 +23,8 @@
  * questions.
  */
 
-import sun.management.ManagementFactoryHelper;
-
+import java.lang.management.ManagementFactory;
 import com.sun.management.HotSpotDiagnosticMXBean;
-
 import jdk.testlibrary.OutputAnalyzer;
 import static jdk.testlibrary.Platform.isSolaris;
 import static jdk.testlibrary.Asserts.assertEquals;
@@ -37,6 +35,7 @@
  * @test
  * @summary The test sanity checks 'jinfo -flag' option.
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JInfoHelper
  * @run main/othervm -XX:+HeapDumpOnOutOfMemoryError JInfoRunningProcessFlagTest
  */
@@ -114,13 +113,15 @@
     }
 
     private static void verifyIsEnabled(String flag) {
-        HotSpotDiagnosticMXBean hotspotDiagnostic = ManagementFactoryHelper.getDiagnosticMXBean();
+        HotSpotDiagnosticMXBean hotspotDiagnostic =
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
         String flagValue = hotspotDiagnostic.getVMOption(flag).getValue();
         assertEquals(flagValue, "true", "Expected '" + flag + "' flag be enabled");
     }
 
     private static void verifyIsDisabled(String flag) {
-        HotSpotDiagnosticMXBean hotspotDiagnostic = ManagementFactoryHelper.getDiagnosticMXBean();
+        HotSpotDiagnosticMXBean hotspotDiagnostic =
+                ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class);
         String flagValue = hotspotDiagnostic.getVMOption(flag).getValue();
         assertEquals(flagValue, "false", "Expected '" + flag + "' flag be disabled");
     }
--- a/jdk/test/sun/tools/jinfo/JInfoRunningProcessTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jinfo/JInfoRunningProcessTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
  * @test
  * @summary The test sanity checks functionality of 'jinfo', 'jinfo -sysprops' and 'jinfo -flags'
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JInfoHelper
  * @run main/othervm -XX:+HeapDumpOnOutOfMemoryError JInfoRunningProcessTest
  */
--- a/jdk/test/sun/tools/jinfo/JInfoSanityTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jinfo/JInfoSanityTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  * @summary The test sanity checks functionality of 'jinfo -h', 'jinfo -help',
  *          and verifies jinfo exits abnormally if started with invalid options.
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JInfoHelper
  * @run main JInfoSanityTest
  */
--- a/jdk/test/sun/tools/jmap/BasicJMapTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jmap/BasicJMapTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
  * @bug 6321286
  * @summary Unit test for jmap utility
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main BasicJMapTest
  */
--- a/jdk/test/sun/tools/jmap/heapconfig/JMapHeapConfigTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jmap/heapconfig/JMapHeapConfigTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -26,6 +26,7 @@
  * @bug 8042397
  * @summary Unit test for jmap utility test heap configuration reader
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @build JMapHeapConfigTest LingeredApp TmtoolTestScenario
  * @run main JMapHeapConfigTest
--- a/jdk/test/sun/tools/jps/JpsHelper.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jps/JpsHelper.java	Wed Jul 05 20:32:21 2017 +0200
@@ -151,6 +151,7 @@
      */
     public static OutputAnalyzer jps(List<String> vmArgs, List<String> toolArgs) throws Exception {
         JDKToolLauncher launcher = JDKToolLauncher.createUsingTestJDK("jps");
+        launcher.addVMArg("-XX:+UsePerfData");
         if (vmArgs != null) {
             for (String vmArg : vmArgs) {
                 launcher.addVMArg(vmArg);
--- a/jdk/test/sun/tools/jps/TestJpsClass.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jps/TestJpsClass.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,8 @@
  *          will be started from within the test application.
  *          The output should contain proper values.
  * @library /lib/testlibrary
+ * @modules jdk.jartool/sun.tools.jar
+ *          java.management
  * @build jdk.testlibrary.* JpsHelper JpsBase
  * @run driver TestJpsClass
  */
--- a/jdk/test/sun/tools/jps/TestJpsJar.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jps/TestJpsJar.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,8 +36,10 @@
  *          will be started from within the test application.
  *          The output should contain proper values.
  * @library /lib/testlibrary
+ * @modules jdk.jartool/sun.tools.jar
+ *          java.management
  * @build jdk.testlibrary.* JpsHelper JpsBase
- * @run driver TestJpsJar
+ * @run main/othervm TestJpsJar
  */
 public class TestJpsJar {
 
--- a/jdk/test/sun/tools/jps/TestJpsJarRelative.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jps/TestJpsJarRelative.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,8 +36,10 @@
  *          will be started from within the test application.
  *          The output should contain proper values.
  * @library /lib/testlibrary
+ * @modules jdk.jartool/sun.tools.jar
+ *          java.management
  * @build jdk.testlibrary.* JpsHelper JpsBase
- * @run driver TestJpsJarRelative
+ * @run main/othervm TestJpsJarRelative
  */
 public class TestJpsJarRelative {
 
--- a/jdk/test/sun/tools/jps/TestJpsSanity.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jps/TestJpsSanity.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,8 @@
  * @summary This test verifies jps usage and checks that appropriate error message is shown
  *          when running jps with illegal arguments.
  * @library /lib/testlibrary
+ * @modules jdk.jartool/sun.tools.jar
+ *          java.management
  * @build jdk.testlibrary.* JpsHelper
  * @run driver TestJpsSanity
  */
--- a/jdk/test/sun/tools/jstack/BasicJStackTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstack/BasicJStackTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
  * @bug 6260070
  * @summary Unit test for jstack utility
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main BasicJStackTest
  */
--- a/jdk/test/sun/tools/jstat/JStatInterval.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstat/JStatInterval.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
  * @summary Test checks case when target application finishes execution and jstat didn't complete work.
             jstat is started with interval = 100 (jstat -compiler 100) and monitored application finishes
             after 500ms. This shouldn't cause crash or hang in target application or in jstat.
+ * @modules java.management
  * @build jdk.testlibrary.* JStatInterval
  * @run main JStatInterval
  */
--- a/jdk/test/sun/tools/jstat/snap2.awk	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstat/snap2.awk	Wed Jul 05 20:32:21 2017 +0200
@@ -3,7 +3,7 @@
 
 	{ totallines++; print $0 }
 
-$0 !~ /[java|sun|com\.sun]\..+=.*$/	{ count++ }
+$0 !~ /[java|jdk|sun|com\.sun]\..+=.*$/	{ count++ }
 
 END	{
 	    if ((count == 0) && (totallines != 0)) {
--- a/jdk/test/sun/tools/jstatd/JstatdTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/JstatdTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,7 +22,6 @@
  */
 
 import java.io.File;
-import java.io.IOException;
 import java.net.UnknownHostException;
 import java.rmi.RemoteException;
 import java.rmi.registry.LocateRegistry;
@@ -130,38 +129,18 @@
     private OutputAnalyzer runJps() throws Exception {
         JDKToolLauncher launcher = JDKToolLauncher.createUsingTestJDK("jps");
         launcher.addVMArg("-XX:+UsePerfData");
-        // Run jps with -v flag to obtain -Dparent.pid.<pid>
-        launcher.addToolArg("-v");
         launcher.addToolArg(getDestination());
 
         String[] cmd = launcher.getCommand();
         log("Start jps", cmd);
 
         ProcessBuilder processBuilder = new ProcessBuilder(cmd);
-        OutputAnalyzer output = waitForJstatdRMI(processBuilder);
+        OutputAnalyzer output = ProcessTools.executeProcess(processBuilder);
         System.out.println(output.getOutput());
 
         return output;
     }
 
-    private OutputAnalyzer waitForJstatdRMI(ProcessBuilder pb) throws Exception {
-        OutputAnalyzer output = ProcessTools.executeProcess(pb);
-
-        String remoteHost = (serverName != null) ? serverName : "JStatRemoteHost";
-        while (output.getExitValue() != 0) {
-            String out = output.getOutput();
-
-            if (out.contains("RMI Registry not available") ||
-                out.contains("RMI Server " + remoteHost + " not available")) {
-                Thread.sleep(100);
-                output = ProcessTools.executeProcess(pb);
-            } else {
-                output.shouldHaveExitValue(0);
-            }
-        }
-        return output;
-    }
-
     /**
      * Verifies output form jps contains pids and programs' name information.
      * The function will discard any lines that come before the first line with pid.
@@ -211,7 +190,7 @@
         log("Start jstat", cmd);
 
         ProcessBuilder processBuilder = new ProcessBuilder(cmd);
-        OutputAnalyzer output = waitForJstatdRMI(processBuilder);
+        OutputAnalyzer output = ProcessTools.executeProcess(processBuilder);
         System.out.println(output.getOutput());
 
         return output;
@@ -277,8 +256,6 @@
         assertTrue(policy.exists() && policy.isFile(),
                 "Security policy " + policy.getAbsolutePath() + " does not exist or not a file");
         launcher.addVMArg("-Djava.security.policy=" + policy.getAbsolutePath());
-        // -Dparent.pid.<pid> will help to identify jstad process started by this test
-        launcher.addVMArg("-Dparent.pid." + ProcessTools.getProcessId());
         if (port != null) {
             launcher.addToolArg("-p");
             launcher.addToolArg(port);
@@ -287,6 +264,9 @@
             launcher.addToolArg("-n");
             launcher.addToolArg(serverName);
         }
+        if (withExternalRegistry) {
+            launcher.addToolArg("-nr");
+        }
 
         String[] cmd = launcher.getCommand();
         log("Start jstatd", cmd);
@@ -295,7 +275,7 @@
 
     private ProcessThread tryToSetupJstatdProcess() throws Throwable {
         ProcessThread jstatdThread = new ProcessThread("Jstatd-Thread",
-                getJstatdCmd());
+                JstatdTest::isJstadReady, getJstatdCmd());
         try {
             jstatdThread.start();
             // Make sure jstatd is up and running
@@ -315,18 +295,26 @@
         return jstatdThread;
     }
 
+    private static boolean isJstadReady(String line) {
+        return line.startsWith("jstatd started (bound to ");
+    }
+
     public void doTest() throws Throwable {
+        if (useDefaultPort) {
+            verifyNoRmiRegistryOnDefaultPort();
+        }
+
         ProcessThread jstatdThread = null;
         try {
             while (jstatdThread == null) {
-                if (!useDefaultPort || withExternalRegistry) {
+                if (!useDefaultPort) {
                     port = String.valueOf(Utils.getFreePort());
                 }
 
                 if (withExternalRegistry) {
                     Registry registry = startRegistry();
                     if (registry == null) {
-                        // The port is already in use. Cancel and try with new one.
+                        // The port is already in use. Cancel and try with a new one.
                         continue;
                     }
                 }
@@ -348,4 +336,14 @@
                 "jstatd process exited with unexpected exit code");
     }
 
+    private void verifyNoRmiRegistryOnDefaultPort() throws Exception {
+        try {
+            Registry registry = LocateRegistry.getRegistry();
+            registry.list();
+            throw new Exception("There is already RMI registry on the default port: " + registry);
+        } catch (RemoteException e) {
+            // No RMI registry on default port is detected
+        }
+    }
+
 }
--- a/jdk/test/sun/tools/jstatd/TestJstatdDefaults.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdDefaults.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 4990825
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JstatdTest JstatGCUtilParser
  * @run main/timeout=60 TestJstatdDefaults
  */
--- a/jdk/test/sun/tools/jstatd/TestJstatdExternalRegistry.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdExternalRegistry.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 4990825 7092186
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JstatdTest JstatGCUtilParser
  * @run main/timeout=60 TestJstatdExternalRegistry
  */
@@ -32,6 +33,7 @@
 
     public static void main(String[] args) throws Throwable {
         JstatdTest test = new JstatdTest();
+        test.setUseDefaultPort(false);
         test.setWithExternalRegistry(true);
         test.doTest();
     }
--- a/jdk/test/sun/tools/jstatd/TestJstatdPort.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdPort.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 4990825
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JstatdTest JstatGCUtilParser
  * @run main/timeout=60 TestJstatdPort
  */
--- a/jdk/test/sun/tools/jstatd/TestJstatdPortAndServer.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdPortAndServer.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 4990825
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JstatdTest JstatGCUtilParser
  * @run main/timeout=60 TestJstatdPortAndServer
  */
--- a/jdk/test/sun/tools/jstatd/TestJstatdServer.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdServer.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
  * @test
  * @bug 4990825
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.* JstatdTest JstatGCUtilParser
  * @run main/timeout=60 TestJstatdServer
  */
--- a/jdk/test/sun/tools/jstatd/TestJstatdUsage.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/tools/jstatd/TestJstatdUsage.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
  * @test
  * @bug 4990825
  * @library /lib/testlibrary
+ * @modules java.management
  * @build jdk.testlibrary.*
  * @run main TestJstatdUsage
  */
--- a/jdk/test/sun/util/calendar/zi/tzdata/VERSION	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/VERSION	Wed Jul 05 20:32:21 2017 +0200
@@ -21,4 +21,4 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
-tzdata2015b
+tzdata2015d
--- a/jdk/test/sun/util/calendar/zi/tzdata/africa	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/africa	Wed Jul 05 20:32:21 2017 +0200
@@ -342,35 +342,29 @@
 # above) says DST had no affect on electricity consumption.  There is
 # no information about when DST will end this fall.  See:
 # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833
+
+# From Steffen Thorsen (2015-04-08):
+# Egypt will start DST on midnight after Thursday, April 30, 2015.
+# This is based on a law (no 35) from May 15, 2014 saying it starts the last
+# Thursday of April....  Clocks will still be turned back for Ramadan, but
+# dates not yet announced....
+# http://almogaz.com/news/weird-news/2015/04/05/1947105 ...
+# http://www.timeanddate.com/news/time/egypt-starts-dst-2015.html
+
+# From Ahmed Nazmy (2015-04-20):
+# Egypt's ministers cabinet just announced ... that it will cancel DST at
+# least for 2015.
 #
-# For now, guess that later spring and fall transitions will use
-# 2010's rules, and guess that Egypt will switch to standard time at
-# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the
-# first Friday after Ramadan.  To implement this,
-# transition dates for 2015 through 2037 were determined by running
-# the following program under GNU Emacs 24.3, with the results integrated
-# by hand into the table below.  Ramadan again intrudes on the guessed
-# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff.
-# (let ((islamic-year 1436))
-#   (while (< islamic-year 1460)
-#     (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
-#           (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
-#           (friday 5))
-#       (while (/= friday (mod a 7))
-#         (setq a (1- a)))
-#       (while (/= friday (mod b 7))
-#         (setq b (1+ b)))
-#       (setq a (1- a))
-#       (setq b (1- b))
-#       (setq a (calendar-gregorian-from-absolute a))
-#       (setq b (calendar-gregorian-from-absolute b))
-#       (insert
-#        (format
-#         (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n"
-#                 "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n")
-#         (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
-#         (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
-#     (setq islamic-year (+ 1 islamic-year))))
+# From Tim Parenti (2015-04-20):
+# http://english.ahram.org.eg/WriterArticles/NewsContentP/1/128195/Egypt/No-daylight-saving-this-summer-Egypts-prime-minist.aspx
+# "Egypt's cabinet agreed on Monday not to switch clocks for daylight saving
+# time this summer, and carry out studies on the possibility of canceling the
+# practice altogether in future years."
+#
+# From Paul Eggert (2015-04-20):
+# For now, assume DST will be canceled.  Any resumption would likely
+# use different rules anyway.
+
 Rule	Egypt	2008	only	-	Aug	lastThu	24:00	0	-
 Rule	Egypt	2009	only	-	Aug	20	24:00	0	-
 Rule	Egypt	2010	only	-	Aug	10	24:00	0	-
@@ -379,22 +373,7 @@
 Rule	Egypt	2014	only	-	May	15	24:00	1:00	S
 Rule	Egypt	2014	only	-	Jun	26	24:00	0	-
 Rule	Egypt	2014	only	-	Jul	31	24:00	1:00	S
-Rule	Egypt	2014	max	-	Sep	lastThu	24:00	0	-
-Rule	Egypt	2015	2019	-	Apr	lastFri	 0:00s	1:00	S
-Rule	Egypt	2015	only	-	Jun	11	24:00	0	-
-Rule	Egypt	2015	only	-	Jul	23	24:00	1:00	S
-Rule	Egypt	2016	only	-	Jun	 2	24:00	0	-
-Rule	Egypt	2016	only	-	Jul	 7	24:00	1:00	S
-Rule	Egypt	2017	only	-	May	25	24:00	0	-
-Rule	Egypt	2017	only	-	Jun	29	24:00	1:00	S
-Rule	Egypt	2018	only	-	May	10	24:00	0	-
-Rule	Egypt	2018	only	-	Jun	14	24:00	1:00	S
-Rule	Egypt	2019	only	-	May	 2	24:00	0	-
-Rule	Egypt	2019	only	-	Jun	 6	24:00	1:00	S
-Rule	Egypt	2020	only	-	May	28	24:00	1:00	S
-Rule	Egypt	2021	only	-	May	13	24:00	1:00	S
-Rule	Egypt	2022	only	-	May	 5	24:00	1:00	S
-Rule	Egypt	2023	max	-	Apr	lastFri	 0:00s	1:00	S
+Rule	Egypt	2014	only	-	Sep	lastThu	24:00	0	-
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Africa/Cairo	2:05:09 -	LMT	1900 Oct
--- a/jdk/test/sun/util/calendar/zi/tzdata/antarctica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/antarctica	Wed Jul 05 20:32:21 2017 +0200
@@ -38,41 +38,6 @@
 # I made up all time zone abbreviations mentioned here; corrections welcome!
 # FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
 
-# These rules are stolen from the 'southamerica' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
-Rule	ArgAQ	1964	1966	-	Oct	15	0:00	1:00	S
-Rule	ArgAQ	1967	only	-	Apr	 2	0:00	0	-
-Rule	ArgAQ	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
-Rule	ArgAQ	1968	1969	-	Apr	Sun>=1	0:00	0	-
-Rule	ArgAQ	1974	only	-	Jan	23	0:00	1:00	S
-Rule	ArgAQ	1974	only	-	May	 1	0:00	0	-
-Rule	ChileAQ	1972	1986	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1987	only	-	Apr	12	3:00u	0	-
-Rule	ChileAQ	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	ChileAQ	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1990	only	-	Mar	18	3:00u	0	-
-Rule	ChileAQ	1990	only	-	Sep	16	4:00u	1:00	S
-Rule	ChileAQ	1991	1996	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1997	only	-	Mar	30	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Sep	27	4:00u	1:00	S
-Rule	ChileAQ	1999	only	-	Apr	 4	3:00u	0	-
-Rule	ChileAQ	1999	2010	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	2000	2007	-	Mar	Sun>=9	3:00u	0	-
-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
-# which is used below in specifying the transition.
-Rule	ChileAQ	2008	only	-	Mar	30	3:00u	0	-
-Rule	ChileAQ	2009	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	2010	only	-	Apr	Sun>=1	3:00u	0	-
-Rule	ChileAQ	2011	only	-	May	Sun>=2	3:00u	0	-
-Rule	ChileAQ	2011	only	-	Aug	Sun>=16	4:00u	1:00	S
-Rule	ChileAQ	2012	2015	-	Apr	Sun>=23	3:00u	0	-
-Rule	ChileAQ	2012	2014	-	Sep	Sun>=2	4:00u	1:00	S
-
 # Argentina - year-round bases
 # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
 # Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01
@@ -367,21 +332,7 @@
 # USA - year-round bases
 #
 # Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
-#
-# From Ethan Dicks (1996-10-06):
-# It keeps the same time as Punta Arenas, Chile, because, just like us
-# and the South Pole, that's the other end of their supply line....
-# I verified with someone who was there that since 1980,
-# Palmer has followed Chile.  Prior to that, before the Falklands War,
-# Palmer used to be supplied from Argentina.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Palmer	0	-	zzz	1965
-			-4:00	ArgAQ	AR%sT	1969 Oct  5
-			-3:00	ArgAQ	AR%sT	1982 May
-			-4:00	ChileAQ	CL%sT	2015 Apr 26 3:00u
-			-3:00	-	CLT
-#
+# See 'southamerica' for Antarctica/Palmer, since it uses South American DST.
 #
 # McMurdo Station, Ross Island, since 1955-12
 # Amundsen-Scott South Pole Station, continuously occupied since 1956-11-20
--- a/jdk/test/sun/util/calendar/zi/tzdata/backward	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/backward	Wed Jul 05 20:32:21 2017 +0200
@@ -43,6 +43,7 @@
 Link	America/Indiana/Knox	America/Knox_IN
 Link	America/Kentucky/Louisville	America/Louisville
 Link	America/Argentina/Mendoza	America/Mendoza
+Link	America/Toronto		America/Montreal
 Link	America/Rio_Branco	America/Porto_Acre
 Link	America/Argentina/Cordoba	America/Rosario
 Link	America/Denver		America/Shiprock
--- a/jdk/test/sun/util/calendar/zi/tzdata/europe	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/europe	Wed Jul 05 20:32:21 2017 +0200
@@ -99,7 +99,7 @@
 #        1:00:14    SET           Swedish (1879-1899)*
 #        2:00       EET EEST      Eastern Europe
 #        3:00       FET           Further-eastern Europe (2011-2014)*
-#        3:00       MSK MSD  MSM* Moscow
+#        3:00       MSK MSD  MSM* Minsk, Moscow
 
 # From Peter Ilieve (1994-12-04),
 # The original six [EU members]: Belgium, France, (West) Germany, Italy,
--- a/jdk/test/sun/util/calendar/zi/tzdata/northamerica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/northamerica	Wed Jul 05 20:32:21 2017 +0200
@@ -250,9 +250,14 @@
 # The law doesn't give abbreviations.
 #
 # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
-# Public law 106-564 (2000-12-23) introduced the abbreviation
-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
-# See the file "australasia".
+# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
+# for time in Guam and the Northern Marianas.  See the file "australasia".
+#
+# From Paul Eggert (2015-04-17):
+# HST and HDT are standardized abbreviations for Hawaii-Aleutian
+# standard and daylight times.  See section 9.47 (p 234) of the
+# U.S. Government Printing Office Style Manual (2008)
+# http://www.gpo.gov/fdsys/pkg/GPO-STYLEMANUAL-2008/pdf/GPO-STYLEMANUAL-2008.pdf
 
 # From Arthur David Olson, 2005-08-09
 # The following was signed into law on 2005-08-08.
@@ -559,7 +564,7 @@
 			-11:00	-	BST	1969
 			-11:00	US	B%sT	1983 Oct 30  2:00
 			-10:00	US	AH%sT	1983 Nov 30
-			-10:00	US	HA%sT
+			-10:00	US	H%sT
 # The following switches don't quite make our 1970 cutoff.
 #
 # Shanks writes that part of southwest Alaska (e.g. Aniak)
@@ -1354,14 +1359,9 @@
 
 # Quebec
 
-# From Paul Eggert (2013-08-30):
-# Since 1970 most of Quebec has been like Toronto.
-# However, because earlier versions of the tz database mistakenly relied on data
-# from Shanks & Pottenger saying that Quebec differed from Ontario after 1970,
-# a separate entry was created for most of Quebec.  We're loath to lose
-# its pre-1970 info, even though the tz database is normally limited to
-# zones that differ after 1970, so keep this otherwise out-of-scope entry.
-
+# From Paul Eggert (2015-03-24):
+# See America/Toronto for most of Quebec, including Montreal.
+#
 # Matthews and Vincent (1998) also write that Quebec east of the -63
 # meridian is supposed to observe AST, but residents as far east as
 # Natashquan use EST/EDT, and residents east of Natashquan use AST.
@@ -1375,39 +1375,10 @@
 # For lack of better info, guess this practice began around 1970, contra to
 # Shanks & Pottenger who have this region observing AST/ADT.
 
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Mont	1917	only	-	Mar	25	2:00	1:00	D
-Rule	Mont	1917	only	-	Apr	24	0:00	0	S
-Rule	Mont	1919	only	-	Mar	31	2:30	1:00	D
-Rule	Mont	1919	only	-	Oct	25	2:30	0	S
-Rule	Mont	1920	only	-	May	 2	2:30	1:00	D
-Rule	Mont	1920	1922	-	Oct	Sun>=1	2:30	0	S
-Rule	Mont	1921	only	-	May	 1	2:00	1:00	D
-Rule	Mont	1922	only	-	Apr	30	2:00	1:00	D
-Rule	Mont	1924	only	-	May	17	2:00	1:00	D
-Rule	Mont	1924	1926	-	Sep	lastSun	2:30	0	S
-Rule	Mont	1925	1926	-	May	Sun>=1	2:00	1:00	D
-Rule	Mont	1927	1937	-	Apr	lastSat	24:00	1:00	D
-Rule	Mont	1927	1937	-	Sep	lastSat	24:00	0	S
-Rule	Mont	1938	1940	-	Apr	lastSun	0:00	1:00	D
-Rule	Mont	1938	1939	-	Sep	lastSun	0:00	0	S
-Rule	Mont	1946	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	Mont	1945	1948	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1949	1950	-	Oct	lastSun	2:00	0	S
-Rule	Mont	1951	1956	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1957	1973	-	Oct	lastSun	2:00	0	S
-
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Blanc-Sablon -3:48:28 -	LMT	1884
 			-4:00	Canada	A%sT	1970
 			-4:00	-	AST
-Zone America/Montreal	-4:54:16 -	LMT	1884
-			-5:00	Mont	E%sT	1918
-			-5:00	Canada	E%sT	1919
-			-5:00	Mont	E%sT	1942 Feb  9  2:00s
-			-5:00	Canada	E%sT	1946
-			-5:00	Mont	E%sT	1974
-			-5:00	Canada	E%sT
 
 # Ontario
 
@@ -1898,17 +1869,115 @@
 # Dawson switched to PST in 1973.  Inuvik switched to MST in 1979.
 # Mathew Englander (1996-10-07) gives the following refs:
 #	* 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
-#	c. 7 defines Yukon standard time as UTC-9.  This is still valid;
+#	c. 7 defines Yukon standard time as UTC-9....
 #	see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
+#	[http://canlii.ca/t/7vhg]
 #	* C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
 #	* O.I.C. 1980/02 established DST.
 #	* O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
-# with Englander.
-# From Chris Walton (2006-06-26):
-# Here is a link to the old daylight saving portion of the interpretation
-# act which was last updated in 1987:
-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
+
+# From Brian Inglis (2015-04-14):
+#
+# I tried to trace the history of Yukon time and found the following
+# regulations, giving the reference title and URL if found, regulation name,
+# and relevant quote if available.  Each regulation specifically revokes its
+# predecessor.  The final reference is to the current Interpretation Act
+# authorizing and resulting from these regulatory changes.
+#
+# Only recent regulations were retrievable via Yukon government site search or
+# index, and only some via Canadian legal sources.  Other sources used include
+# articles titled "Standard Time and Time Zones in Canada" from JRASC via ADS
+# Abstracts, cited by ADO for 1932 ..., and updated versions from 1958 and
+# 1970 quoted below; each article includes current extracts from provincial
+# and territorial ST and DST regulations at the end, summaries and details of
+# standard times and daylight saving time at many locations across Canada,
+# with time zone maps, tables and calculations for Canadian Sunrise, Sunset,
+# and LMST; they also cover many countries and global locations, with a chart
+# and table showing current Universal Time offsets, and may be useful as
+# another source of information for 1970 and earlier.
+#
+# * Standard Time and Time Zones in Canada; Smith, C.C.; JRASC, Vol. 26,
+#   pp.49-77; February 1932; SAO/NASA Astrophysics Data System (ADS)
+#   http://adsabs.harvard.edu/abs/1932JRASC..26...49S from p.75:
+#   Yukon Interpretation Ordinance
+#   Yukon standard time is the local mean time at the one hundred and
+#   thirty-fifth meridian.
+#
+# * Standard Time and Time Zones in Canada; Smith, C.C.; Thomson, Malcolm M.;
+#   JRASC, Vol. 52, pp.193-223; October 1958; SAO/NASA Astrophysics Data System
+#   (ADS) http://adsabs.harvard.edu/abs/1958JRASC..52..193S from pp.220-1:
+#   Yukon Interpretation Ordinance, 1955, Chap. 16.
+#
+#     (1) Subject to this section, standard time shall be reckoned as nine
+#     hours behind Greenwich Time and called Yukon Standard Time.
+#
+#     (2) Notwithstanding subsection (1), the Commissioner may make regulations
+#     varying the manner of reckoning standard time.
+#
+# * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
+#   http://? - no online source found
+#
+# * Standard Time and Time Zones in Canada; Thomson, Malcolm M.; JRASC,
+#   Vol. 64, pp.129-162; June 1970; SAO/NASA Astrophysics Data System (ADS)
+#   http://adsabs.harvard.edu/abs/1970JRASC..64..129T from p.156: Yukon
+#   Territory Commissioner's Order 1967-59 Interpretation Ordinance ...
+#
+#     1. Commissioner's Order 1966-20 dated at Whitehorse in the Yukon
+#     Territory on 27th January, 1966, is hereby revoked.
+#
+#     2. Yukon (East) Standard Time as defined by section 36 of the
+#     Interpretation Ordinance from and after mid-night on the 28th day of May,
+#     1967 shall be reckoned in the same manner as Pacific Standard Time, that
+#     is to say, eight hours behind Greenwich Time in the area of the Yukon
+#     Territory lying east of the 138th degree longitude west.
+#
+#     3. In the remainder of the Territory, lying west of the 138th degree
+#     longitude west, Yukon (West) Standard Time shall be reckoned as nine
+#     hours behind Greenwich Time.
+#
+# * Yukon Standard Time defined as Pacific Standard Time, YCO 1973/214
+#   http://www.canlii.org/en/yk/laws/regu/yco-1973-214/latest/yco-1973-214.html
+#   C.O. 1973/214 INTERPRETATION ACT ...
+#
+#     1. Effective October 28, 1973 Commissioner's Order 1967/59 is hereby
+#     revoked.
+#
+#     2. Yukon Standard Time as defined by section 36 of the Interpretation
+#     Act from and after midnight on the twenty-eighth day of October, 1973
+#     shall be reckoned in the same manner as Pacific Standard Time, that is
+#     to say eight hours behind Greenwich Time.
+#
+# * O.I.C. 1980/02 INTERPRETATION ACT
+#   http://? - no online source found
+#
+# * Yukon Daylight Saving Time, YOIC 1987/56
+#   http://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
+#   O.I.C. 1987/056 INTERPRETATION ACT ...
+#
+#   In every year between
+#     (a) two o'clock in the morning in the first Sunday in April, and
+#     (b) two o'clock in the morning in the last Sunday in October,
+#   Standard Time shall be reckoned as seven hours behind Greenwich Time and
+#   called Yukon Daylight Saving Time.
+#   ...
+#   Dated ... 9th day of March, A.D., 1987.
+#
+# * Yukon Daylight Saving Time 2006, YOIC 2006/127
+#   http://www.canlii.org/en/yk/laws/regu/yoic-2006-127/latest/yoic-2006-127.html
+#   O.I.C. 2006/127 INTERPRETATION ACT ...
+#
+#     1. In Yukon each year the time for general purposes shall be 7 hours
+#     behind Greenwich mean time during the period commencing at two o'clock
+#     in the forenoon on the second Sunday of March and ending at two o'clock
+#     in the forenoon on the first Sunday of November and shall be called
+#     Yukon Daylight Saving Time.
+#
+#     2. Order-in-Council 1987/56 is revoked.
+#
+#     3. This order comes into force January 1, 2007.
+#
+# * Interpretation Act, RSY 2002, c 125
+# http://www.canlii.org/en/yk/laws/stat/rsy-2002-c-125/latest/rsy-2002-c-125.html
 
 # From Rives McDow (1999-09-04):
 # Nunavut ... moved ... to incorporate the whole territory into one time zone.
@@ -2134,7 +2203,7 @@
 			-7:00	NT_YK	M%sT	1980
 			-7:00	Canada	M%sT
 Zone America/Whitehorse	-9:00:12 -	LMT	1900 Aug 20
-			-9:00	NT_YK	Y%sT	1966 Jul  1  2:00
+			-9:00	NT_YK	Y%sT	1967 May 28  0:00
 			-8:00	NT_YK	P%sT	1980
 			-8:00	Canada	P%sT
 Zone America/Dawson	-9:17:40 -	LMT	1900 Aug 20
--- a/jdk/test/sun/util/calendar/zi/tzdata/southamerica	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/sun/util/calendar/zi/tzdata/southamerica	Wed Jul 05 20:32:21 2017 +0200
@@ -1121,6 +1121,60 @@
 
 # Chile
 
+# From Paul Eggert (2015-04-03):
+# Shanks & Pottenger says America/Santiago introduced standard time in
+# 1890 and rounds its UTC offset to 70W40; guess that in practice this
+# was the same offset as in 1916-1919.  It also says Pacific/Easter
+# standardized on 109W22 in 1890; assume this didn't change the clocks.
+#
+# Dates for America/Santiago from 1910 to 2004 are primarily from
+# the following source, cited by Oscar van Vlijmen (2006-10-08):
+# [1] Chile Law
+# http://www.webexhibits.org/daylightsaving/chile.html
+# This contains a copy of a this official table:
+# Cambios en la hora oficial de Chile desde 1900 (retrieved 2008-03-30)
+# http://web.archive.org/web/20080330200901/http://www.horaoficial.cl/cambio.htm
+# [1] needs several corrections, though.
+#
+# The first set of corrections is from:
+# [2] History of the Official Time of Chile
+# http://www.horaoficial.cl/ing/horaof_ing.html (retrieved 2012-03-06).  See:
+# http://web.archive.org/web/20120306042032/http://www.horaoficial.cl/ing/horaof_ing.html
+# This is an English translation of:
+# Historia de la hora oficial de Chile (retrieved 2012-10-24).  See:
+# http://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
+# A fancier Spanish version (requiring mouse-clicking) is at:
+# http://www.horaoficial.cl/historia_hora.html
+# Conflicts between [1] and [2] were resolved as follows:
+#
+#  - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
+#    Boletín Nº 1, Aviso Nº 1 (1910).  Go with [2].
+#
+#  - [1] says SMT was -4:42:45, [2] says Chile's official time from
+#    1916 to 1919 was -4:42:46.3, the meridian of Chile's National
+#    Astronomical Observatory (OAN), then located in what is now
+#    Quinta Normal in Santiago.  Go with [2], rounding it to -4:42:46.
+#
+#  - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
+#    Boletín Nº 22, Aviso Nº 129/1918 (1918-08-23).  Go with [2].
+#
+#  - [1] does not give times for transitions; assume they occur
+#    at midnight mainland time, the current common practice.  However,
+#    go with [2]'s specification of 23:00 for the 1947-05-21 transition.
+#
+# Another correction to [1] is from Jesper Nørgaard Welen, who
+# wrote (2006-10-08), "I think that there are some obvious mistakes in
+# the suggested link from Oscar van Vlijmen,... for instance entry 66
+# says that GMT-4 ended 1990-09-12 while entry 67 only begins GMT-3 at
+# 1990-09-15 (they should have been 1990-09-15 and 1990-09-16
+# respectively), but anyhow it clears up some doubts too."
+#
+# Data for Pacific/Easter from 1910 through 1967 come from Shanks &
+# Pottenger.  After that, for lack of better info assume
+# Pacific/Easter is always two hours behind America/Santiago;
+# this is known to work for DST transitions starting in 2008 and
+# may well be true for earlier transitions.
+
 # From Eduardo Krell (1995-10-19):
 # The law says to switch to DST at midnight [24:00] on the second SATURDAY
 # of October....  The law is the same for March and October.
@@ -1133,78 +1187,35 @@
 # Because of the same drought, the government decided to end DST later,
 # on April 3, (one-time change).
 
-# From Oscar van Vlijmen (2006-10-08):
-# http://www.horaoficial.cl/cambio.htm
-
-# From Jesper Nørgaard Welen (2006-10-08):
-# I think that there are some obvious mistakes in the suggested link
-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
-# anyhow it clears up some doubts too.
-
-# From Paul Eggert (2014-08-12):
-# The following data entries for Chile and America/Santiago are from
-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
-# Jesper Nørgaard Welen.  The data entries for Pacific/Easter are from Shanks
-# & Pottenger, except with DST transitions after 1932 cloned from
-# America/Santiago.  The pre-1980 Pacific/Easter data entries are dubious,
-# but we have no other source.
-
 # From Germán Poo-Caamaño (2008-03-03):
 # Due to drought, Chile extends Daylight Time in three weeks.  This
 # is one-time change (Saturday 3/29 at 24:00 for America/Santiago
 # and Saturday 3/29 at 22:00 for Pacific/Easter)
 # The Supreme Decree is located at
 # http://www.shoa.cl/servicios/supremo316.pdf
-# and the instructions for 2008 are located in:
-# http://www.horaoficial.cl/cambio.htm
-
+#
 # From José Miguel Garrido (2008-03-05):
-# ...
-# You could see the announces of the change on
 # http://www.shoa.cl/noticias/2008/04hora/hora.htm
 
 # From Angel Chiang (2010-03-04):
 # Subject: DST in Chile exceptionally extended to 3 April due to earthquake
 # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
-# (in Spanish, last paragraph).
 #
-# This is breaking news. There should be more information available later.
-
 # From Arthur David Olson (2010-03-06):
 # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
 
-# From Glenn Eychaner (2011-03-02):
-# It appears that the Chilean government has decided to postpone the
-# change from summer time to winter time again, by three weeks to April
-# 2nd:
-# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
-#
-# This is not yet reflected in the official "cambio de hora" site, but
-# probably will be soon:
-# http://www.horaoficial.cl/cambio.htm
-
-# From Arthur David Olson (2011-03-02):
-# The emol.com article mentions a water shortage as the cause of the
-# postponement, which may mean that it's not a permanent change.
-
 # From Glenn Eychaner (2011-03-28):
-# The article:
 # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
-#
 # In English:
 # Chile's clocks will go back an hour this year on the 7th of May instead
 # of this Saturday. They will go forward again the 3rd Saturday in
-# August, not in October as they have since 1968. This is a pilot plan
-# which will be reevaluated in 2012.
+# August, not in October as they have since 1968.
 
 # From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
 # As stated in the website of the Chilean Energy Ministry
 # http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
 # The Chilean Government has decided to postpone the entrance into winter time
-# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
-# been yet formalized but it will within the next days.
+# (to leave DST) from March 11 2012 to April 28th 2012....
 # Quote from the website communication:
 #
 # 6. For the year 2012, the dates of entry into winter time will be as follows:
@@ -1237,17 +1248,9 @@
 # From Paul Eggert (2015-03-03):
 # For now, assume that the extension will persist indefinitely.
 
-# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
-# 'antarctica' file.
-
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Chile	1927	1932	-	Sep	 1	0:00	1:00	S
+Rule	Chile	1927	1931	-	Sep	 1	0:00	1:00	S
 Rule	Chile	1928	1932	-	Apr	 1	0:00	0	-
-Rule	Chile	1942	only	-	Jun	 1	4:00u	0	-
-Rule	Chile	1942	only	-	Aug	 1	5:00u	1:00	S
-Rule	Chile	1946	only	-	Jul	15	4:00u	1:00	S
-Rule	Chile	1946	only	-	Sep	 1	3:00u	0:00	-
-Rule	Chile	1947	only	-	Apr	 1	4:00u	0	-
 Rule	Chile	1968	only	-	Nov	 3	4:00u	1:00	S
 Rule	Chile	1969	only	-	Mar	30	3:00u	0	-
 Rule	Chile	1969	only	-	Nov	23	4:00u	1:00	S
@@ -1258,10 +1261,8 @@
 Rule	Chile	1973	only	-	Sep	30	4:00u	1:00	S
 Rule	Chile	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
 Rule	Chile	1987	only	-	Apr	12	3:00u	0	-
-Rule	Chile	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	Chile	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1990	only	-	Mar	18	3:00u	0	-
+Rule	Chile	1988	1990	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1988	1989	-	Oct	Sun>=9	4:00u	1:00	S
 Rule	Chile	1990	only	-	Sep	16	4:00u	1:00	S
 Rule	Chile	1991	1996	-	Mar	Sun>=9	3:00u	0	-
 Rule	Chile	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
@@ -1284,15 +1285,21 @@
 # (1996-09) says 1998-03-08.  Ignore these.
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Santiago	-4:42:46 -	LMT	1890
-			-4:42:46 -	SMT	1910        # Santiago Mean Time
+			-4:42:46 -	SMT	1910 Jan 10 # Santiago Mean Time
 			-5:00	-	CLT	1916 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1918 Sep  1 # Santiago Mean Time
-			-4:00	-	CLT	1919 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1927 Sep  1 # Santiago Mean Time
-			-5:00	Chile	CL%sT	1947 May 22 # Chile Time
+			-4:42:46 -	SMT	1918 Sep 10
+			-4:00	-	CLT	1919 Jul  1
+			-4:42:46 -	SMT	1927 Sep  1
+			-5:00	Chile	CL%sT	1932 Sep  1
+			-4:00	-	CLT	1942 Jun  1
+			-5:00	-	CLT	1942 Aug  1
+			-4:00	-	CLT	1946 Jul 15
+			-4:00	1:00	CLST	1946 Sep  1 # central Chile
+			-4:00	-	CLT	1947 Apr  1
+			-5:00	-	CLT	1947 May 21 23:00
 			-4:00	Chile	CL%sT	2015 Apr 26  3:00u
 			-3:00	-	CLT
-Zone Pacific/Easter	-7:17:44 -	LMT	1890
+Zone Pacific/Easter	-7:17:28 -	LMT	1890
 			-7:17:28 -	EMT	1932 Sep    # Easter Mean Time
 			-7:00	Chile	EAS%sT	1982 Mar 14 3:00u # Easter Time
 			-6:00	Chile	EAS%sT	2015 Apr 26 3:00u
@@ -1302,6 +1309,25 @@
 # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
 # and Antarctic bases, are like America/Santiago.
 
+# Antarctic base using South American rules
+# (See the file 'antarctica' for more.)
+#
+# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+#
+# From Ethan Dicks (1996-10-06):
+# It keeps the same time as Punta Arenas, Chile, because, just like us
+# and the South Pole, that's the other end of their supply line....
+# I verified with someone who was there that since 1980,
+# Palmer has followed Chile.  Prior to that, before the Falklands War,
+# Palmer used to be supplied from Argentina.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Palmer	0	-	zzz	1965
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1982 May
+			-4:00	Chile	CL%sT	2015 Apr 26 3:00u
+			-3:00	-	CLT
+
 # Colombia
 
 # Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest.  He writes,
--- a/jdk/test/tools/launcher/FXLauncherTest.java	Thu May 07 20:50:57 2015 -0700
+++ b/jdk/test/tools/launcher/FXLauncherTest.java	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
  * Test uses main method and blank main method, a jfx app class and an incorrest
  * jfx app class, a main-class for the manifest, a bogus one and none.
  * All should execute except the incorrect fx app class entries.
- * @run main FXLauncherTest
+ * @run main/othervm FXLauncherTest
  */
 import java.io.File;
 import java.io.IOException;
--- a/make/CompileJavaModules.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/CompileJavaModules.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -53,17 +53,7 @@
 java.base_EXCLUDE_FILES += sun/text/resources/BreakIteratorRules.java
 
 ifeq ($(OPENJDK_TARGET_OS), macosx)
-  JAVA_BASE_UNIX_DIR := $(JDK_TOPDIR)/src/java.base/unix/classes
-  # TODO: make JavaCompilation handle overrides automatically instead of excluding here
-  # These files are overridden in macosx
-  java.base_EXCLUDE_FILES += \
-      $(JAVA_BASE_UNIX_DIR)/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \
-      $(JAVA_BASE_UNIX_DIR)/java/net/DefaultInterface.java \
-      $(JAVA_BASE_UNIX_DIR)/java/lang/ClassLoaderHelper.java \
-      $(JAVA_BASE_UNIX_DIR)/sun/nio/ch/DefaultSelectorProvider.java \
-      #
-  # This is just skipped on macosx
-  java.base_EXCLUDE_FILES += $(JAVA_BASE_UNIX_DIR)/sun/nio/fs/GnomeFileTypeDetector.java
+  java.base_EXCLUDE_FILES += sun/nio/fs/GnomeFileTypeDetector.java
 endif
 
 ifneq ($(OPENJDK_TARGET_OS), solaris)
@@ -247,13 +237,6 @@
     javax/swing/plaf/nimbus/TabbedPanePainter.java \
     #
 
-ifeq ($(OPENJDK_TARGET_OS), macosx)
-  # These files are duplicated in MACOSX_SRC_DIRS
-  java.desktop_EXCLUDE_FILES += \
-      $(JDK_TOPDIR)/src/java.desktop/unix/classes/sun/java2d/BackBufferCapsProvider.java \
-      #
-endif
-
 ################################################################################
 
 java.scripting_ADD_JAVAC_FLAGS := -Xdoclint:all/protected '-Xdoclint/package:java.*,javax.*'
@@ -418,7 +401,6 @@
 endif
 
 ifeq ($(OPENJDK_TARGET_OS),aix)
-  # These files are duplicated in AIX_SRC_DIRS
   jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES)
 endif
 
--- a/make/Images.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/Images.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -70,7 +70,7 @@
 
 # compact3 builds have additional modules
 JDK_COMPACT3_MODULES := java.compact3 java.smartcardio jdk.httpserver jdk.naming.dns \
-                       jdk.naming.rmi jdk.sctp jdk.security.auth
+                       jdk.naming.rmi jdk.sctp jdk.security.auth jdk.management
 
 # Replacing double-comma with a single comma is to workaround the issue
 # with some version of make on windows that doesn't substitute spaces
@@ -255,30 +255,13 @@
 	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
-  define install-ja-manpage
-	$(MKDIR) -p $(@D)
-	$(CAT) $< \
-	    | $(NATIVE2ASCII) -encoding eucJP \
-	    | $(SED) 's/@@VERSION@@/$(THIS_JDK_VERSION)/g' \
-	    | $(NATIVE2ASCII) -reverse -encoding $1 \
-	    > $@
-  endef
-
   $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(call install-ja-manpage, UTF-8)
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(install-file)
 
   $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(call install-ja-manpage, UTF-8)
-
-  $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(call install-ja-manpage, PCK)
-
-  $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(call install-ja-manpage, PCK)
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(install-file)
 
   ifeq ($(OPENJDK_TARGET_OS), solaris)
     $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
--- a/make/Jprt.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/Jprt.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -91,8 +91,8 @@
 SRC_JDK_IMAGE_DIR := $(JDK_IMAGE_DIR)
 SRC_JRE_IMAGE_DIR := $(JRE_IMAGE_DIR)
 SRC_TEST_IMAGE_DIR := $(TEST_IMAGE_DIR)
-SRC_JDK_BUNDLE_DIR := $(JDK_BUNDLE_DIR)
-SRC_JRE_BUNDLE_DIR := $(JRE_BUNDLE_DIR)
+SRC_JDK_MACOSX_BUNDLE_DIR := $(JDK_MACOSX_BUNDLE_DIR)
+SRC_JRE_MACOSX_BUNDLE_DIR := $(JRE_MACOSX_BUNDLE_DIR)
 
 # Bundle up the images
 bundles: all
@@ -123,10 +123,10 @@
 	$(CP) -R -P $(SRC_JDK_IMAGE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JDK_IMAGE_SUBDIR)/
 	$(CP) -R -P $(SRC_JRE_IMAGE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JRE_IMAGE_SUBDIR)/
         ifeq ($(OPENJDK_TARGET_OS),macosx)
-	  $(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JDK_BUNDLE_SUBDIR)
-	  $(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JRE_BUNDLE_SUBDIR)
-	  $(CP) -R -P $(SRC_JDK_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JDK_BUNDLE_SUBDIR)/
-	  $(CP) -R -P $(SRC_JRE_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JRE_BUNDLE_SUBDIR)/
+	  $(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JDK_MACOSX_BUNDLE_SUBDIR)
+	  $(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JRE_MACOSX_BUNDLE_SUBDIR)
+	  $(CP) -R -P $(SRC_JDK_MACOSX_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JDK_MACOSX_BUNDLE_SUBDIR)/
+	  $(CP) -R -P $(SRC_JRE_MACOSX_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JRE_MACOSX_BUNDLE_SUBDIR)/
         endif
 	@$(call TargetExit)
 
--- a/make/MacBundles.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/MacBundles.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -33,32 +33,13 @@
 
   bundles: jre-bundle jdk-bundle
 
-  # JDK_BUNDLE_DIR and JRE_BUNDLE_DIR are defined in SPEC.
+  # JDK_MACOSX_BUNDLE_DIR and JRE_MACOSX_BUNDLE_DIR are defined in SPEC.
 
   MACOSX_PLIST_SRC := $(JDK_TOPDIR)/make/data/bundle
 
-  # All these OPENJDK checks are needed since there is no coherency between
-  # these values in open and closed. Should probably be fixed.
-  ifndef OPENJDK
-    BUNDLE_ID := $(MACOSX_BUNDLE_ID_BASE).$(JDK_MINOR_VERSION)u$(JDK_UPDATE_VERSION)
-  else
-    BUNDLE_ID := $(MACOSX_BUNDLE_ID_BASE)
-  endif
-  BUNDLE_ID_JRE := $(BUNDLE_ID).jre
-  BUNDLE_ID_JDK := $(BUNDLE_ID).jdk
-
+  BUNDLE_ID := $(MACOSX_BUNDLE_ID_BASE).$(JDK_MINOR_VERSION)u$(JDK_UPDATE_VERSION)
   BUNDLE_NAME := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_MINOR_VERSION)
-  BUNDLE_NAME_JRE := $(BUNDLE_NAME)
-  BUNDLE_NAME_JDK := $(BUNDLE_NAME)
-
-  ifndef OPENJDK
-    BUNDLE_INFO := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_VERSION)
-  else
-    BUNDLE_INFO := $(MACOSX_BUNDLE_NAME_BASE) ($(JDK_VERSION))
-  endif
-  BUNDLE_INFO_JRE := $(BUNDLE_INFO)
-  BUNDLE_INFO_JDK := $(BUNDLE_INFO)
-
+  BUNDLE_INFO := $(MACOSX_BUNDLE_NAME_BASE) $(JDK_VERSION)
   BUNDLE_PLATFORM_VERSION := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION)
   BUNDLE_VERSION := $(JDK_VERSION)
   ifeq ($(COMPANY_NAME), N/A)
@@ -67,65 +48,66 @@
     BUNDLE_VENDOR := $(COMPANY_NAME)
   endif
 
-
   JDK_FILE_LIST := $(shell $(FIND) $(JDK_IMAGE_DIR))
   JRE_FILE_LIST := $(shell $(FIND) $(JRE_IMAGE_DIR))
 
-  JDK_TARGET_LIST := $(subst $(JDK_IMAGE_DIR)/,$(JDK_BUNDLE_DIR)/Home/,$(JDK_FILE_LIST))
-  JRE_TARGET_LIST := $(subst $(JRE_IMAGE_DIR)/,$(JRE_BUNDLE_DIR)/Home/,$(JRE_FILE_LIST))
+  JDK_TARGET_LIST := $(subst $(JDK_IMAGE_DIR)/,$(JDK_MACOSX_BUNDLE_DIR)/Home/,$(JDK_FILE_LIST))
+  JRE_TARGET_LIST := $(subst $(JRE_IMAGE_DIR)/,$(JRE_MACOSX_BUNDLE_DIR)/Home/,$(JRE_FILE_LIST))
 
   # Copy empty directories (jre/lib/applet).
-  $(JDK_BUNDLE_DIR)/Home/%: $(JDK_IMAGE_DIR)/%
+  $(JDK_MACOSX_BUNDLE_DIR)/Home/%: $(JDK_IMAGE_DIR)/%
 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	if [ -d "$<" ]; then $(MKDIR) -p $@; else $(CP) -f -R -P '$<' '$@'; fi
 
-  $(JRE_BUNDLE_DIR)/Home/%: $(JRE_IMAGE_DIR)/%
+  $(JRE_MACOSX_BUNDLE_DIR)/Home/%: $(JRE_IMAGE_DIR)/%
 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	if [ -d "$<" ]; then $(MKDIR) -p $@; else $(CP) -f -R -P '$<' '$@'; fi
 
-  $(JDK_BUNDLE_DIR)/MacOS/libjli.dylib:
+  $(JDK_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib:
 	$(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	$(RM) $@
 	$(LN) -s ../Home/lib/jli/libjli.dylib $@
 
-  $(JRE_BUNDLE_DIR)/MacOS/libjli.dylib:
+  $(JRE_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib:
 	$(ECHO) Creating link $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	$(RM) $@
 	$(LN) -s ../Home/lib/jli/libjli.dylib $@
 
-  $(JDK_BUNDLE_DIR)/Info.plist: $(SPEC)
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(MKDIR) -p $(@D)
-	$(SED) -e "s/@@ID@@/$(BUNDLE_ID_JDK)/g" \
-	    -e "s/@@NAME@@/$(BUNDLE_NAME_JDK)/g" \
-	    -e "s/@@INFO@@/$(BUNDLE_INFO_JDK)/g" \
-	    -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" \
-	    -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" \
-	    -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" \
-	    < $(MACOSX_PLIST_SRC)/JDK-Info.plist > $@
+  $(eval $(call SetupTextFileProcessing, BUILD_JDK_PLIST, \
+      SOURCE_FILES := $(MACOSX_PLIST_SRC)/JDK-Info.plist, \
+      OUTPUT_FILE := $(JDK_MACOSX_BUNDLE_DIR)/Info.plist, \
+      REPLACEMENTS := \
+          @@ID@@ => $(BUNDLE_ID).jdk ; \
+          @@NAME@@ => $(BUNDLE_NAME) ; \
+          @@INFO@@ => $(BUNDLE_INFO) ; \
+          @@PLATFORM_VERSION@@ => $(BUNDLE_PLATFORM_VERSION) ; \
+          @@VERSION@@ => $(BUNDLE_VERSION) ; \
+          @@VENDOR@@ => $(BUNDLE_VENDOR) , \
+  ))
 
-  $(JRE_BUNDLE_DIR)/Info.plist: $(SPEC)
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(MKDIR) -p $(@D)
-	$(SED) -e "s/@@ID@@/$(BUNDLE_ID_JRE)/g" \
-	    -e "s/@@NAME@@/$(BUNDLE_NAME_JRE)/g" \
-	    -e "s/@@INFO@@/$(BUNDLE_INFO_JRE)/g" \
-	    -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" \
-	    -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" \
-	    -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" \
-	    < $(MACOSX_PLIST_SRC)/JRE-Info.plist > $@
+  $(eval $(call SetupTextFileProcessing, BUILD_JRE_PLIST, \
+      SOURCE_FILES := $(MACOSX_PLIST_SRC)/JRE-Info.plist, \
+      OUTPUT_FILE := $(JRE_MACOSX_BUNDLE_DIR)/Info.plist, \
+      REPLACEMENTS := \
+          @@ID@@ => $(BUNDLE_ID).jre ; \
+          @@NAME@@ => $(BUNDLE_NAME) ; \
+          @@INFO@@ => $(BUNDLE_INFO) ; \
+          @@PLATFORM_VERSION@@ => $(BUNDLE_PLATFORM_VERSION) ; \
+          @@VERSION@@ => $(BUNDLE_VERSION) ; \
+          @@VENDOR@@ => $(BUNDLE_VENDOR) , \
+  ))
 
-  jdk-bundle: $(JDK_TARGET_LIST) $(JDK_BUNDLE_DIR)/MacOS/libjli.dylib \
-      $(JDK_BUNDLE_DIR)/Info.plist
-	$(SETFILE) -a B $(dir $(JDK_BUNDLE_DIR))
+  jdk-bundle: $(JDK_TARGET_LIST) $(JDK_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib \
+      $(BUILD_JDK_PLIST)
+	$(SETFILE) -a B $(dir $(JDK_MACOSX_BUNDLE_DIR))
 
-  jre-bundle: $(JRE_TARGET_LIST) $(JRE_BUNDLE_DIR)/MacOS/libjli.dylib \
-      $(JRE_BUNDLE_DIR)/Info.plist
-	$(SETFILE) -a B $(dir $(JRE_BUNDLE_DIR))
+  jre-bundle: $(JRE_TARGET_LIST) $(JRE_MACOSX_BUNDLE_DIR)/MacOS/libjli.dylib \
+      $(BUILD_JRE_PLIST)
+	$(SETFILE) -a B $(dir $(JRE_MACOSX_BUNDLE_DIR))
 
 else # Not macosx
 
--- a/make/StripBinaries.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/StripBinaries.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -42,7 +42,6 @@
 	$(CP) $< $@.tmp
 	$(CHMOD) u+w $@.tmp
 	$(POST_STRIP_CMD) $@.tmp
-	$(if $(POST_MCS_CMD), $(POST_MCS_CMD) $@.tmp)
 	$(CHMOD) go-w $@.tmp
 	$(MV) $@.tmp $@
   endef
--- a/make/common/JavaCompilation.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/common/JavaCompilation.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -276,7 +276,7 @@
 	$$($1_GREP_EXCLUDE_OUTPUT)
         # If the vardeps file is part of the newer prereq list, it means that
         # either the jar file does not exist, or we need to recreate it from
-        # from scratch anyway since a simple update will not catch all the 
+        # from scratch anyway since a simple update will not catch all the
         # potential changes.
 	$$(if $$(filter $$($1_VARDEPS_FILE) $$($1_MANIFEST), $$?), \
 	  $$(if $$($1_MANIFEST), \
@@ -321,8 +321,8 @@
   $$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$2_TARGET)))
   # To allow for automatic overrides, do not create a rule for a target file that
   # already has one
-  ifeq ($$(findstring $$($2_TARGET), $$($1_COPY_LIST)), )
-    $1_COPY_LIST += $$($2_TARGET)
+  ifneq ($$($1_COPY_$$($2_TARGET)), 1)
+    $1_COPY_$$($2_TARGET) := 1
     # Now we can setup the depency that will trigger the copying.
     $$($1_BIN)$$($2_TARGET) : $2
 	$(MKDIR) -p $$(@D)
@@ -365,7 +365,11 @@
   # Remove the source prefix.
   $$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$2_TARGET)))
   # Now we can setup the depency that will trigger the copying.
-  $$($1_BIN)$$($2_TARGET) : $2
+  # To allow for automatic overrides, do not create a rule for a target file that
+  # already has one
+  ifneq ($$($1_CLEAN_$$($2_TARGET)), 1)
+    $1_CLEAN_$$($2_TARGET) := 1
+    $$($1_BIN)$$($1_MODULE_SUBDIR)$$($2_TARGET) : $2
 	$(MKDIR) -p $$(@D)
 	export LC_ALL=C ; ( $(CAT) $$< && $(ECHO) "" ) \
 	    | $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' \
@@ -378,8 +382,9 @@
 	    | $(SORT) > $$@
 	$(CHMOD) -f ug+w $$@
 
-  # And do not forget this target
-  $1_ALL_COPY_CLEAN_TARGETS += $$($1_BIN)$$($2_TARGET)
+    # And do not forget this target
+    $1_ALL_COPY_CLEAN_TARGETS += $$($1_BIN)$$($2_TARGET)
+  endif
 endef
 
 define remove_string
@@ -396,7 +401,8 @@
 #   SETUP:=must point to a previously setup java compiler, for example: SETUP:=BOOTJAVAC
 #   JVM:=path to ..bin/java
 #   ADD_JAVAC_FLAGS:=javac flags to append to the default ones.
-#   SRC:=one or more directories to search for sources
+#   SRC:=one or more directories to search for sources. The order of the source roots
+#        is significant. The first found file of a certain name has priority.
 #   BIN:=store classes here
 #   INCLUDES:=myapp.foo means will only compile java files in myapp.foo or any of its sub-packages.
 #   EXCLUDES:=myapp.foo means will do not compile java files in myapp.foo or any of its sub-packages.
@@ -432,7 +438,7 @@
   # Handle addons and overrides.
   $1_SRC:=$$(call ADD_SRCS,$$($1_SRC))
   # Make sure the dirs exist.
-  $$(foreach d,$$($1_SRC), $$(if $$(wildcard $$d),,$$(error SRC specified to SetupJavaCompilation $1 contains missing directory $$d)))
+  $$(foreach d,$$($1_SRC), $$(if $$(wildcard $$d),,$$(error SRC specified to SetupJavaCompilation $1 contains missing directory >$$d<)))
   $$(call MakeDir,$$($1_BIN))
   # Add all source roots to the find cache since we are likely going to run find
   # on these more than once. The cache will only be updated if necessary.
@@ -450,15 +456,6 @@
     $1_SRCS := $$(filter $$($1_INCLUDE_FILES), $$($1_SRCS))
   endif
 
-  # Now we have a list of all java files to compile: $$($1_SRCS)
-
-  # Create the corresponding smart javac wrapper command line.
-  $1_SJAVAC_ARGS:=$$(addprefix -x ,$$(addsuffix /*,$$($1_EXCLUDES))) \
-      $$(addprefix -i ,$$(addsuffix /*,$$($1_INCLUDES))) \
-      $$(addprefix -xf *,$$(strip $$($1_EXCLUDE_FILES))) \
-      $$(addprefix -if *,$$(strip $$($1_INCLUDE_FILES))) \
-      -src "$$(subst $$(SPACE),$$(PATH_SEP),$$(strip $$($1_SRC)))"
-
   # Prepend the source/bin path to the filter expressions.
   ifneq ($$($1_INCLUDES),)
     $1_SRC_INCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_INCLUDES))))
@@ -469,6 +466,25 @@
     $1_SRCS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_SRCS))
   endif
 
+  # Remove duplicate source files by keeping the first found of each duplicate.
+  # This allows for automatic overrides with custom or platform specific versions
+  # source files.
+  #
+  # For the smart javac wrapper case, add each removed file to an extra exclude
+  # file list to prevent sjavac from finding duplicate sources.
+  $1_SRCS := $$(strip $$(foreach s, $$($1_SRCS), \
+      $$(eval relative_src := $$(call remove-prefixes, $$($1_SRC), $$(s))) \
+      $$(if $$($1_$$(relative_src)), \
+        $$(eval $1_SJAVAC_EXCLUDE_FILES += $$(s)), \
+        $$(eval $1_$$(relative_src) := 1) $$(s))))
+
+ # Create the corresponding smart javac wrapper command line.
+  $1_SJAVAC_ARGS:=$$(addprefix -x ,$$(addsuffix /*,$$($1_EXCLUDES))) \
+      $$(addprefix -i ,$$(addsuffix /*,$$($1_INCLUDES))) \
+      $$(addprefix -xf *,$$(strip $$($1_EXCLUDE_FILES) $$($1_SJAVAC_EXCLUDE_FILES))) \
+      $$(addprefix -if *,$$(strip $$($1_INCLUDE_FILES))) \
+      -src "$$(subst $$(SPACE),$$(PATH_SEP),$$(strip $$($1_SRC)))"
+
   # All files below META-INF are always copied.
   $1_ALL_COPIES := $$(filter $$(addsuffix /META-INF%,$$($1_SRC)),$$($1_ALL_SRCS))
   # Find all files to be copied from source to bin.
--- a/make/common/MakeBase.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/common/MakeBase.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -45,6 +45,11 @@
 # Functions
 ##############################
 
+### Debug functions
+
+# Prints the name and value of a variable
+PrintVar = \
+    $(info $(strip $1) >$($(strip $1))<)
 
 ### Functions for timers
 
@@ -558,6 +563,13 @@
     $(and $(findstring $(strip $1),$(strip $2)),\
         $(findstring $(strip $2),$(strip $1)))
 
+# Remove a whole list of prefixes
+# $1 - List of prefixes
+# $2 - List of elements to process
+remove-prefixes = \
+    $(strip $(if $1,$(patsubst $(firstword $1)%,%,\
+      $(call remove-prefixes,$(filter-out $(firstword $1),$1),$2)),$2))
+
 ################################################################################
 
 ifneq ($(DISABLE_CACHE_FIND), true)
--- a/make/common/Modules.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/make/common/Modules.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -43,7 +43,7 @@
 
 # Find all modules with java sources by looking in the source dirs
 define FindJavaModules
-  $(filter-out $(JAVA_MODULES_FILTER), $(sort $(notdir \
+  $(filter-out $(MODULES_FILTER), $(sort $(notdir \
       $(patsubst %/,%, $(dir $(patsubst %/,%, $(dir $(patsubst %/,%, $(dir \
       $(wildcard $(patsubst %,%/*/share/classes/*, $(ALL_TOP_SRC_DIRS)) \
           $(patsubst %,%/*/$(OPENJDK_TARGET_OS)/classes/*, $(ALL_TOP_SRC_DIRS)) \
@@ -52,7 +52,8 @@
 
 # Find all modules with source for the target platform.
 define FindAllModules
-  $(sort $(filter-out closed demo sample, $(notdir $(patsubst %/,%, $(dir \
+  $(sort $(filter-out $(MODULES_FILTER) closed demo sample, \
+      $(notdir $(patsubst %/,%, $(dir \
       $(wildcard $(patsubst %, %/*/share, $(ALL_TOP_SRC_DIRS)) \
       $(patsubst %, %/*/$(OPENJDK_TARGET_OS), $(ALL_TOP_SRC_DIRS)) \
       $(patsubst %, %/*/$(OPENJDK_TARGET_OS_TYPE), $(ALL_TOP_SRC_DIRS))))))))
--- a/make/jprt.properties	Thu May 07 20:50:57 2015 -0700
+++ b/make/jprt.properties	Wed Jul 05 20:32:21 2017 +0200
@@ -28,8 +28,8 @@
 # Global settings
 #
 
-# Regression tests depend on test bundle
-jprt.use.reg.test.bundle=true
+# Install test bundle for targets in jprt.test.bundle.targets set
+jprt.selective.test.bundle.installation=true
 
 # The current release name
 jprt.tools.default.release=jdk9
@@ -48,6 +48,9 @@
 # Use configure when building
 jprt.build.use.configure=true
 
+# Set up the run flavors (jvm variants)
+jprt.run.flavors=c1,c2,default,${my.additional.run.flavors}
+
 # Set make target to use for different build flavors
 jprt.build.flavor.debugOpen.target=jprt_bundle
 jprt.build.flavor.fastdebug.target=jprt_bundle
@@ -73,6 +76,7 @@
 # Select test targets - jprt default for jprt.test.set is "default"
 jprt.test.targets=${my.test.targets.${jprt.test.set}}
 jprt.make.rule.test.targets=${my.make.rule.test.targets.${jprt.test.set}}
+jprt.test.bundle.targets=${my.jprt.test.bundle.targets.${jprt.test.set}}
 
 # 7155453: Work-around to prevent popups on OSX from blocking test completion
 # but the work-around is added to all platforms to be consistent
@@ -415,19 +419,15 @@
 
 # Make file based test targets
 
-my.make.rule.test.targets.hotspot.clienttests=				\
-  linux_i586_2.6-*-c1-hotspot_clienttest,				\
-  windows_i586_6.2-*-c1-hotspot_clienttest
-
-my.make.rule.test.targets.hotspot.servertests=				\
-  solaris_sparcv9_5.11-*-c2-hotspot_servertest,				\
-  solaris_x64_5.11-*-c2-hotspot_servertest,				\
-  linux_i586_2.6-*-c2-hotspot_servertest,				\
-  linux_x64_2.6-*-c2-hotspot_servertest,				\
-  macosx_x64_10.9-*-c2-hotspot_servertest,				\
-  windows_i586_6.2-*-c2-hotspot_servertest,				\
-  windows_x64_6.2-*-c2-hotspot_servertest
-
+my.make.rule.test.targets.hotspot.basicvmtests=                         \
+  linux_i586_2.6-*-default-hotspot_basicvmtest,                         \
+  linux_x64_2.6-*-default-hotspot_basicvmtest,                          \
+  macosx_x64_10.9-*-default-hotspot_basicvmtest,                        \
+  solaris_sparcv9_5.11-*-default-hotspot_basicvmtest,                   \
+  solaris_x64_5.11-*-default-hotspot_basicvmtest,                       \
+  windows_i586_6.2-*-default-hotspot_basicvmtest,                       \
+  windows_x64_6.2-*-default-hotspot_basicvmtest
+  
 my.make.rule.test.targets.hotspot.internalvmtests=			\
   solaris_sparcv9_5.11-fastdebug-c2-hotspot_internalvmtests,		\
   solaris_x64_5.11-fastdebug-c2-hotspot_internalvmtests,		\
@@ -448,10 +448,8 @@
   linux_i586_2.6-fastdebug-c1-GROUP,					\
   windows_i586_6.2-fastdebug-c1-GROUP
 
-my.make.rule.test.targets.hotspot=						\
-  ${my.make.rule.test.targets.hotspot.clienttests},				\
-  ${my.make.rule.test.targets.hotspot.servertests},				\
-  ${my.make.rule.test.targets.hotspot.internalvmtests},				\
+# Hotspot jtreg tests
+my.make.rule.test.targets.hotspot.reg=						\
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_wbapitest},	\
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_compiler_1},	\
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_compiler_2},	\
@@ -461,12 +459,29 @@
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_gc_closed},       \
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_gc_gcold},        \
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_runtime},		\
-  ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_runtime_closed},	\
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_serviceability},	\
   ${my.make.rule.test.targets.hotspot.reg.group:GROUP=jdk_svc_sanity},		\
-  ${my.additional.make.rule.test.targets.hotspot}
+  ${my.additional.make.rule.test.targets.hotspot.reg}
+
+# Other Makefile based Hotspot tests
+my.make.rule.test.targets.hotspot.other=                                \
+  ${my.make.rule.test.targets.hotspot.basicvmtests},                    \
+  ${my.make.rule.test.targets.hotspot.internalvmtests},                 \
+  ${my.additional.make.rule.test.targets.hotspot.other}
+
+# All the makefile based tests to run
+my.make.rule.test.targets.hotspot=                                      \
+  ${my.make.rule.test.targets.hotspot.reg}                              \
+  ${my.make.rule.test.targets.hotspot.other}
+
+# Install the test bundle for the testset hotspot jtreg tests
+# (but not for the other Makefile based tests)
+my.jprt.test.bundle.targets.hotspot=${my.make.rule.test.targets.hotspot.reg}
 
 # Native jdk and hotspot test targets (testset=nativesanity)
 my.make.rule.test.targets.nativesanity=					\
     ${my.test.target.set:TESTNAME=jdk_native_sanity},			\
     ${my.test.target.set:TESTNAME=hotspot_native_sanity}
+
+# Install the test bundle for the nativesanity jtreg tests
+my.jprt.test.bundle.targets.nativesanity=${my.make.rule.test.targets.nativesanity}
--- a/modules.xml	Thu May 07 20:50:57 2015 -0700
+++ b/modules.xml	Wed Jul 05 20:32:21 2017 +0200
@@ -222,11 +222,13 @@
       <name>jdk.internal.org.objectweb.asm</name>
       <to>jdk.jfr</to>
       <to>jdk.scripting.nashorn</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>jdk.internal.org.objectweb.asm.commons</name>
       <to>jdk.jfr</to>
       <to>jdk.scripting.nashorn</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>jdk.internal.org.objectweb.asm.signature</name>
@@ -235,11 +237,13 @@
     <export>
       <name>jdk.internal.org.objectweb.asm.tree</name>
       <to>jdk.jfr</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>jdk.internal.org.objectweb.asm.util</name>
       <to>jdk.jfr</to>
       <to>jdk.scripting.nashorn</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>sun.misc</name>
@@ -266,6 +270,7 @@
       <to>jdk.security.auth</to>
       <to>jdk.security.jgss</to>
       <to>jdk.snmp</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>sun.net.dns</name>
@@ -310,6 +315,7 @@
       <to>java.sql</to>
       <to>java.sql.rowset</to>
       <to>jdk.scripting.nashorn</to>
+      <to>java.instrument</to>
     </export>
     <export>
       <name>sun.reflect.annotation</name>
@@ -766,6 +772,10 @@
     <export>
       <name>java.lang.instrument</name>
     </export>
+    <export>
+      <name>jdk.internal.instrumentation</name>
+      <to>jdk.jfr</to>
+    </export>
   </module>
   <module>
     <name>java.logging</name>
@@ -781,9 +791,6 @@
     <depend>java.naming</depend>
     <depend re-exports="true">java.rmi</depend>
     <export>
-      <name>com.sun.management</name>
-    </export>
-    <export>
       <name>java.lang.management</name>
     </export>
     <export>
@@ -816,9 +823,11 @@
     <export>
       <name>sun.management</name>
       <to>jdk.jconsole</to>
+      <to>jdk.management</to>
     </export>
     <export>
       <name>sun.management.spi</name>
+      <to>jdk.management</to>
       <to>jdk.management.cmm</to>
     </export>
   </module>
@@ -1664,6 +1673,7 @@
     <depend>java.rmi</depend>
     <depend>jdk.attach</depend>
     <depend>jdk.jvmstat</depend>
+    <depend>jdk.management</depend>
     <export>
       <name>com.sun.tools.jconsole</name>
     </export>
@@ -1716,6 +1726,14 @@
     <depend>java.base</depend>
   </module>
   <module>
+    <name>jdk.management</name>
+    <depend>java.base</depend>
+    <depend re-exports="true">java.management</depend>
+    <export>
+      <name>com.sun.management</name>
+    </export>
+  </module>
+  <module>
     <name>jdk.naming.dns</name>
     <depend>java.base</depend>
     <depend>java.naming</depend>
--- a/test/lib/sun/hotspot/WhiteBox.java	Thu May 07 20:50:57 2015 -0700
+++ b/test/lib/sun/hotspot/WhiteBox.java	Wed Jul 05 20:32:21 2017 +0200
@@ -32,6 +32,7 @@
 import java.util.function.Function;
 import java.util.stream.Stream;
 import java.security.BasicPermission;
+import java.util.Objects;
 
 import sun.hotspot.parser.DiagnosticCommand;
 
@@ -74,11 +75,27 @@
   public native void printHeapSizes();
 
   // Memory
-  public native long getObjectAddress(Object o);
+  private native long getObjectAddress0(Object o);
+  public           long getObjectAddress(Object o) {
+    Objects.requireNonNull(o);
+    return getObjectAddress0(o);
+  }
+
   public native int  getHeapOopSize();
   public native int  getVMPageSize();
-  public native boolean isObjectInOldGen(Object o);
-  public native long getObjectSize(Object o);
+  public native long getVMLargePageSize();
+
+  private native boolean isObjectInOldGen0(Object o);
+  public         boolean isObjectInOldGen(Object o) {
+    Objects.requireNonNull(o);
+    return isObjectInOldGen0(o);
+  }
+
+  private native long getObjectSize0(Object o);
+  public         long getObjectSize(Object o) {
+    Objects.requireNonNull(o);
+    return getObjectSize0(o);
+  }
 
   // Runtime
   // Make sure class name is in the correct format
@@ -86,21 +103,45 @@
     return isClassAlive0(name.replace('.', '/'));
   }
   private native boolean isClassAlive0(String name);
-  public native boolean isMonitorInflated(Object obj);
+
+  private native boolean isMonitorInflated0(Object obj);
+  public         boolean isMonitorInflated(Object obj) {
+    Objects.requireNonNull(obj);
+    return isMonitorInflated0(obj);
+  }
+
   public native void forceSafepoint();
 
   // JVMTI
-  public native void addToBootstrapClassLoaderSearch(String segment);
-  public native void addToSystemClassLoaderSearch(String segment);
+  private native void addToBootstrapClassLoaderSearch0(String segment);
+  public         void addToBootstrapClassLoaderSearch(String segment){
+    Objects.requireNonNull(segment);
+    addToBootstrapClassLoaderSearch0(segment);
+  }
+
+  private native void addToSystemClassLoaderSearch0(String segment);
+  public         void addToSystemClassLoaderSearch(String segment) {
+    Objects.requireNonNull(segment);
+    addToSystemClassLoaderSearch0(segment);
+  }
 
   // G1
   public native boolean g1InConcurrentMark();
-  public native boolean g1IsHumongous(Object o);
+  private native boolean g1IsHumongous0(Object o);
+  public         boolean g1IsHumongous(Object o) {
+    Objects.requireNonNull(o);
+    return g1IsHumongous0(o);
+  }
+
   public native long    g1NumMaxRegions();
   public native long    g1NumFreeRegions();
   public native int     g1RegionSize();
   public native MemoryUsage g1AuxiliaryMemoryUsage();
-  public native Object[]    parseCommandLine(String commandline, char delim, DiagnosticCommand[] args);
+  private  native Object[]    parseCommandLine0(String commandline, char delim, DiagnosticCommand[] args);
+  public          Object[]    parseCommandLine(String commandline, char delim, DiagnosticCommand[] args) {
+    Objects.requireNonNull(args);
+    return parseCommandLine0(commandline, delim, args);
+  }
 
   // NMT
   public native long NMTMalloc(long size);
@@ -119,45 +160,93 @@
   public        boolean isMethodCompiled(Executable method) {
     return isMethodCompiled(method, false /*not osr*/);
   }
-  public native boolean isMethodCompiled(Executable method, boolean isOsr);
+  private native boolean isMethodCompiled0(Executable method, boolean isOsr);
+  public         boolean isMethodCompiled(Executable method, boolean isOsr){
+    Objects.requireNonNull(method);
+    return isMethodCompiled0(method, isOsr);
+  }
   public        boolean isMethodCompilable(Executable method) {
     return isMethodCompilable(method, -1 /*any*/);
   }
   public        boolean isMethodCompilable(Executable method, int compLevel) {
     return isMethodCompilable(method, compLevel, false /*not osr*/);
   }
-  public native boolean isMethodCompilable(Executable method, int compLevel, boolean isOsr);
-  public native boolean isMethodQueuedForCompilation(Executable method);
+  private native boolean isMethodCompilable0(Executable method, int compLevel, boolean isOsr);
+  public         boolean isMethodCompilable(Executable method, int compLevel, boolean isOsr) {
+    Objects.requireNonNull(method);
+    return isMethodCompilable0(method, compLevel, isOsr);
+  }
+  private native boolean isMethodQueuedForCompilation0(Executable method);
+  public         boolean isMethodQueuedForCompilation(Executable method) {
+    Objects.requireNonNull(method);
+    return isMethodQueuedForCompilation0(method);
+  }
   public        int     deoptimizeMethod(Executable method) {
     return deoptimizeMethod(method, false /*not osr*/);
   }
-  public native int     deoptimizeMethod(Executable method, boolean isOsr);
+  private native int     deoptimizeMethod0(Executable method, boolean isOsr);
+  public         int     deoptimizeMethod(Executable method, boolean isOsr) {
+    Objects.requireNonNull(method);
+    return deoptimizeMethod0(method, isOsr);
+  }
   public        void    makeMethodNotCompilable(Executable method) {
     makeMethodNotCompilable(method, -1 /*any*/);
   }
   public        void    makeMethodNotCompilable(Executable method, int compLevel) {
     makeMethodNotCompilable(method, compLevel, false /*not osr*/);
   }
-  public native void    makeMethodNotCompilable(Executable method, int compLevel, boolean isOsr);
+  private native void    makeMethodNotCompilable0(Executable method, int compLevel, boolean isOsr);
+  public         void    makeMethodNotCompilable(Executable method, int compLevel, boolean isOsr) {
+    Objects.requireNonNull(method);
+    makeMethodNotCompilable0(method, compLevel, isOsr);
+  }
   public        int     getMethodCompilationLevel(Executable method) {
     return getMethodCompilationLevel(method, false /*not ost*/);
   }
-  public native int     getMethodCompilationLevel(Executable method, boolean isOsr);
-  public native boolean testSetDontInlineMethod(Executable method, boolean value);
+  private native int     getMethodCompilationLevel0(Executable method, boolean isOsr);
+  public         int     getMethodCompilationLevel(Executable method, boolean isOsr) {
+    Objects.requireNonNull(method);
+    return getMethodCompilationLevel0(method, isOsr);
+  }
+  private native boolean testSetDontInlineMethod0(Executable method, boolean value);
+  public         boolean testSetDontInlineMethod(Executable method, boolean value) {
+    Objects.requireNonNull(method);
+    return testSetDontInlineMethod0(method, value);
+  }
   public        int     getCompileQueuesSize() {
     return getCompileQueueSize(-1 /*any*/);
   }
   public native int     getCompileQueueSize(int compLevel);
-  public native boolean testSetForceInlineMethod(Executable method, boolean value);
+  private native boolean testSetForceInlineMethod0(Executable method, boolean value);
+  public         boolean testSetForceInlineMethod(Executable method, boolean value) {
+    Objects.requireNonNull(method);
+    return testSetForceInlineMethod0(method, value);
+  }
   public        boolean enqueueMethodForCompilation(Executable method, int compLevel) {
     return enqueueMethodForCompilation(method, compLevel, -1 /*InvocationEntryBci*/);
   }
-  public native boolean enqueueMethodForCompilation(Executable method, int compLevel, int entry_bci);
-  public native void    clearMethodState(Executable method);
+  private native boolean enqueueMethodForCompilation0(Executable method, int compLevel, int entry_bci);
+  public  boolean enqueueMethodForCompilation(Executable method, int compLevel, int entry_bci) {
+    Objects.requireNonNull(method);
+    return enqueueMethodForCompilation0(method, compLevel, entry_bci);
+  }
+  private native void    clearMethodState0(Executable method);
+  public         void    clearMethodState(Executable method) {
+    Objects.requireNonNull(method);
+    clearMethodState0(method);
+  }
   public native void    lockCompilation();
   public native void    unlockCompilation();
-  public native int     getMethodEntryBci(Executable method);
-  public native Object[] getNMethod(Executable method, boolean isOsr);
+  private native int     getMethodEntryBci0(Executable method);
+  public         int     getMethodEntryBci(Executable method) {
+    Objects.requireNonNull(method);
+    return getMethodEntryBci0(method);
+  }
+  private native Object[] getNMethod0(Executable method, boolean isOsr);
+  public         Object[] getNMethod(Executable method, boolean isOsr) {
+    Objects.requireNonNull(method);
+    return getNMethod0(method, isOsr);
+  }
   public native long    allocateCodeBlob(int size, int type);
   public        long    allocateCodeBlob(long size, int type) {
       int intSize = (int) size;
@@ -168,14 +257,7 @@
       return allocateCodeBlob( intSize, type);
   }
   public native void    freeCodeBlob(long addr);
-  public        void    forceNMethodSweep() {
-    try {
-        forceNMethodSweep0().join();
-    } catch (InterruptedException e) {
-        Thread.currentThread().interrupt();
-    }
-  }
-  public native Thread  forceNMethodSweep0();
+  public native void    forceNMethodSweep();
   public native Object[] getCodeHeapEntries(int type);
   public native int     getCompilationActivityMode();
   public native Object[] getCodeBlob(long addr);
@@ -213,7 +295,11 @@
   // Native extensions
   public native long getHeapUsageForContext(int context);
   public native long getHeapRegionCountForContext(int context);
-  public native int getContextForObject(Object obj);
+  private native int getContextForObject0(Object obj);
+  public         int getContextForObject(Object obj) {
+    Objects.requireNonNull(obj);
+    return getContextForObject0(obj);
+  }
   public native void printRegionInfo(int context);
 
   // VM flags
--- a/test/make/TestJavaCompilation.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/test/make/TestJavaCompilation.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -231,6 +231,117 @@
 .PHONY: clean-jar3 create-jar3 update-jar3
 
 ################################################################################
+# Test SetupJavaCompilation overrides of java files
+
+$(eval $(call SetupJavaCompiler,BOOT_JAVAC, \
+    JAVAC := $(JAVAC), \
+))
+
+JAVA_SRC_ROOT1 := $(OUTPUT_DIR)/javaroot1
+JAVA_SRC_ROOT2 := $(OUTPUT_DIR)/javaroot2
+
+# Since this makefile calls itself a number of times, protect this macro from
+# being executed more than once.
+# Param 1 - File name
+# Param 2 - Package name
+# Param 3 - Class name
+# Param 4 - Message
+CreateJavaSrc = \
+    $(if $(wildcard $1),,$(shell \
+        $(MKDIR) -p $(dir $1); \
+        $(ECHO) "package $2;" > $1; \
+        $(ECHO) "public class $3 {" >> $1; \
+        $(ECHO) "    public static void main(String[] args) {" >> $1; \
+        $(ECHO) "        System.out.print(\"$4\");" >> $1; \
+        $(ECHO) "    }" >> $1; \
+        $(ECHO) "}" >> $1; \
+    ))
+
+# Since this makefile calls itself a number of times, protect this macro from
+# being executed more than once.
+# Param 1 - File name
+# Param 2 - Message
+CreateTextFile = \
+    $(if $(wildcard $1),,$(shell \
+        $(MKDIR) -p $(dir $1); \
+        $(PRINTF) '$2' > $1; \
+    ))
+
+$(call CreateJavaSrc,$(JAVA_SRC_ROOT1)/a/A.java,a,A,javaroot1)
+$(call CreateJavaSrc,$(JAVA_SRC_ROOT2)/a/A.java,a,A,javaroot2)
+$(call CreateTextFile,$(JAVA_SRC_ROOT1)/a/b.txt,javaroot1\n)
+$(call CreateTextFile,$(JAVA_SRC_ROOT2)/a/b.txt,javaroot2\n)
+$(call CreateTextFile,$(JAVA_SRC_ROOT1)/a/c.properties,#javaroot1\nname=value1\n)
+$(call CreateTextFile,$(JAVA_SRC_ROOT2)/a/c.properties,#javaroot2\nname=value2\n)
+
+# Due to a bug in gnu make 3.81, need to add the src roots with trailing slash,
+# otherwise $(wildcard ) will not find the directories and the sanity check in
+# SetupJavaCompilation will fail.
+$(eval $(call SetupJavaCompilation, BUILD_ROOT1_FIRST, \
+    SETUP := BOOT_JAVAC, \
+    SRC := $(JAVA_SRC_ROOT1)/ $(JAVA_SRC_ROOT2)/, \
+    COPY := .txt .java, \
+    CLEAN := .properties, \
+    BIN := $(OUTPUT_DIR)/root1first/, \
+))
+
+$(BUILD_ROOT1_FIRST):
+
+verify-root1-first: $(BUILD_ROOT1_FIRST)
+	$(JAVA_SMALL) -cp $(OUTPUT_DIR)/root1first a.A > $(OUTPUT_DIR)/root1first.output
+	if [ "`$(CAT) $(OUTPUT_DIR)/root1first.output`" != "javaroot1" ]; then \
+	  $(ECHO) "The wrong class was compiled. Expected >javaroot1<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root1first.output`<"; \
+	  false; \
+	fi
+	if [ "`$(CAT) $(OUTPUT_DIR)/root1first/a/b.txt`" != "javaroot1" ]; then \
+	  $(ECHO) "The wrong file was copied. Expected >javaroot1<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root1first/a/b.txt`<"; \
+	  false; \
+	fi
+	if [ ! -e "$(OUTPUT_DIR)/root1first/a/A.java" ]; then \
+	  $(ECHO) "Missed copying $(OUTPUT_DIR)/root1first/a/A.java"; \
+	  false; \
+	fi
+	if [ "`$(CAT) $(OUTPUT_DIR)/root1first/a/c.properties`" != "name=value1" ]; then \
+	  $(ECHO) "The wrong file was cleaned. Expected >name=value1<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root1first/a/c.properties`<"; \
+	  false; \
+	fi
+
+$(eval $(call SetupJavaCompilation, BUILD_ROOT2_FIRST, \
+    SETUP := BOOT_JAVAC, \
+    SRC := $(JAVA_SRC_ROOT2)/ $(JAVA_SRC_ROOT1)/, \
+    COPY := .txt, \
+    CLEAN := .properties, \
+    BIN := $(OUTPUT_DIR)/root2first/, \
+))
+
+$(BUILD_ROOT2_FIRST):
+
+verify-root2-first: $(BUILD_ROOT2_FIRST)
+	$(JAVA_SMALL) -cp $(OUTPUT_DIR)/root2first a.A > $(OUTPUT_DIR)/root2first.output
+	if [ "`$(CAT) $(OUTPUT_DIR)/root2first.output`" != "javaroot2" ]; then \
+	  $(ECHO) "The wrong class was compiled. Expected >javaroot2<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root2first.output`<"; \
+	  false; \
+	fi
+	if [ "`$(CAT) $(OUTPUT_DIR)/root2first/a/b.txt`" != "javaroot2" ]; then \
+	  $(ECHO) "The wrong file was cleaned. Expected >javaroot2<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root2first/a/b.txt`<"; \
+	  false; \
+	fi
+	if [ "`$(CAT) $(OUTPUT_DIR)/root2first/a/c.properties`" != "name=value2" ]; then \
+	  $(ECHO) "The wrong file was cleaned. Expected >name=value2<"; \
+	  $(ECHO) "Got >`$(CAT) $(OUTPUT_DIR)/root2first/a/c.properties`<"; \
+	  false; \
+	fi
+
+TEST_TARGETS += verify-root1-first verify-root2-first
+
+.PHONY: verify-root1-first verify-root2-first
+
+################################################################################
 
 all: $(TEST_TARGETS)
 
--- a/test/make/TestMakeBase.gmk	Thu May 07 20:50:57 2015 -0700
+++ b/test/make/TestMakeBase.gmk	Wed Jul 05 20:32:21 2017 +0200
@@ -33,6 +33,16 @@
     $(SRC_ROOT)/make/common/MakeBase.gmk \
     #
 
+# Assert two strings are equal
+# 1 - Tested value
+# 2 - Exepected value
+# 3 - Error message
+define assert-equals
+  ifneq ($$(strip $1),$$(strip $2))
+    $$(error $3 - Expected >$$(strip $2)< - Got >$$(strip $1)<)
+  endif
+endef
+
 # On macosx, file system timestamps only have 1 second resultion so must add
 # sleeps to properly test dependencies.
 ifeq ($(OPENJDK_BUILD_OS), macosx)
@@ -77,6 +87,17 @@
 endif
 
 ################################################################################
+# Test remove-prefixes
+
+$(eval $(call assert-equals, \
+    $(call remove-prefixes, pre, prefix postfix), fix postfix, \
+    Prefixes not properly removed))
+
+$(eval $(call assert-equals, \
+    $(call remove-prefixes, pre post, prefix postfix), fix fix, \
+    Prefixes not properly removed))
+
+################################################################################
 # Test ShellQuote
 
 SHELL_QUOTE_VALUE := foo '""' "''" bar