# HG changeset patch # User duke # Date 1499269380 -7200 # Node ID 5cad348bfb7bf8fdf7be97c8b8ad89f33e159d27 # Parent 76bb81c6327c6fab5b6d79558a92bc9910cd543e# Parent d54bd79072b09cf0be284a55260cd3ead2c37645 Merge diff -r 76bb81c6327c -r 5cad348bfb7b .hgignore --- a/.hgignore Mon May 02 09:36:49 2011 -0700 +++ b/.hgignore Wed Jul 05 17:43:00 2017 +0200 @@ -2,3 +2,4 @@ ^dist/ /nbproject/private/ ^webrev +^.hgtip diff -r 76bb81c6327c -r 5cad348bfb7b .hgtags-top-repo --- a/.hgtags-top-repo Mon May 02 09:36:49 2011 -0700 +++ b/.hgtags-top-repo Wed Jul 05 17:43:00 2017 +0200 @@ -114,3 +114,4 @@ 7654afc6a29e43cb0a1343ce7f1287bf690d5e5f jdk7-b137 fc47c97bbbd91b1f774d855c48a7e285eb1a351a jdk7-b138 7ed6d0b9aaa12320832a7ddadb88d6d8d0dda4c1 jdk7-b139 +dcfe74f1c6553c556e7d361c30b0b614eb5e40f6 jdk7-b140 diff -r 76bb81c6327c -r 5cad348bfb7b Makefile --- a/Makefile Mon May 02 09:36:49 2011 -0700 +++ b/Makefile Wed Jul 05 17:43:00 2017 +0200 @@ -97,7 +97,7 @@ endef # Generic build of basic repo series -generic_build_repo_series:: +generic_build_repo_series:: $(SOURCE_TIPS) $(MKDIR) -p $(OUTPUTDIR) $(MKDIR) -p $(OUTPUTDIR)/j2sdk-image @$(call StartTimer) @@ -243,6 +243,14 @@ debug_build:: build_debug_image fastdebug_build:: build_fastdebug_image +# The source tips are stored with the relative path to the repo. +# This file will be used when constructing the jdk image. +source_tips: $(SOURCE_TIPS) + $(CAT) $< +$(SOURCE_TIPS): FRC + @$(prep-target) + @$(call GetSourceTips) + clobber:: REPORT_BUILD_TIMES= clobber:: $(RM) -r $(OUTPUTDIR)/* diff -r 76bb81c6327c -r 5cad348bfb7b corba/.hgignore --- a/corba/.hgignore Mon May 02 09:36:49 2011 -0700 +++ b/corba/.hgignore Wed Jul 05 17:43:00 2017 +0200 @@ -1,3 +1,4 @@ ^build/ ^dist/ /nbproject/private/ +^.hgtip diff -r 76bb81c6327c -r 5cad348bfb7b corba/.hgtags --- a/corba/.hgtags Mon May 02 09:36:49 2011 -0700 +++ b/corba/.hgtags Wed Jul 05 17:43:00 2017 +0200 @@ -114,3 +114,4 @@ a66c01d8bf895261715955df0b95545c000ed6a8 jdk7-b137 78d8cf04697e9df54f7f11e195b7da29b8e345a2 jdk7-b138 60b074ec6fcf5cdf9efce22fdfb02326ed8fa2d3 jdk7-b139 +cdf5d19ec142424489549025e9c42e51f32cf688 jdk7-b140 diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/.hgignore --- a/hotspot/.hgignore Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/.hgignore Wed Jul 05 17:43:00 2017 +0200 @@ -5,3 +5,4 @@ ^src/share/tools/IdealGraphVisualizer/[a-zA-Z0-9]*/build/ ^src/share/tools/IdealGraphVisualizer/build/ ^src/share/tools/IdealGraphVisualizer/dist/ +^.hgtip diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/.hgtags --- a/hotspot/.hgtags Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/.hgtags Wed Jul 05 17:43:00 2017 +0200 @@ -166,3 +166,5 @@ 0930dc920c185afbf40fed9a655290b8e5b16783 hs21-b08 611e19a16519d6fb5deea9ab565336e6e6ee475d jdk7-b139 611e19a16519d6fb5deea9ab565336e6e6ee475d hs21-b09 +d283b82966712b353fa307845a1316da42a355f4 jdk7-b140 +d283b82966712b353fa307845a1316da42a355f4 hs21-b10 diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/cscope.make --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/make/cscope.make Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,141 @@ +# +# Copyright (c) 2000, 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. +# +# 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. +# +# + +# The cscope.out file is generated in the current directory. The old cscope.out +# file is *not* removed because cscope is smart enough to only build what has +# changed. cscope can be confused if files are renamed or removed, so it may be +# necessary to remove cscope.out (gmake cscope.clean) if a lot of reorganization +# has occurred. + +include $(GAMMADIR)/make/scm.make + +RM = rm -f +HG = hg +CS_TOP = $(GAMMADIR) + +CSDIRS = $(CS_TOP)/src $(CS_TOP)/make +CSINCS = $(CSDIRS:%=-I%) + +CSCOPE = cscope +CSCOPE_OUT = cscope.out +CSCOPE_FLAGS = -b + +# Allow .java files to be added from the environment (CSCLASSES=yes). +ifdef CSCLASSES +ADDCLASSES= -o -name '*.java' +endif + +# Adding CClassHeaders also pushes the file count of a full workspace up about +# 200 files (these files also don't exist in a new workspace, and thus will +# cause the recreation of the database as they get created, which might seem +# a little confusing). Thus allow these files to be added from the environment +# (CSHEADERS=yes). +ifndef CSHEADERS +RMCCHEADERS= -o -name CClassHeaders +endif + +# Ignore build products. +CS_PRUNE_GENERATED = -o -name '${OSNAME}_*_core' -o \ + -name '${OSNAME}_*_compiler?' + +# O/S-specific files for all systems are included by default. Set CS_OS to a +# space-separated list of identifiers to include only those systems. +ifdef CS_OS +CS_PRUNE_OS = $(patsubst %,-o -name '*%*',\ + $(filter-out ${CS_OS},linux macos solaris windows)) +endif + +# CPU-specific files for all processors are included by default. Set CS_CPU +# space-separated list identifiers to include only those CPUs. +ifdef CS_CPU +CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',\ + $(filter-out ${CS_CPU},arm ppc sparc x86 zero)) +endif + +# What files should we include? A simple rule might be just those files under +# SCCS control, however this would miss files we create like the opcodes and +# CClassHeaders. The following attempts to find everything that is *useful*. +# (.del files are created by sccsrm, demo directories contain many .java files +# that probably aren't useful for development, and the pkgarchive may contain +# duplicates of files within the source hierarchy). + +# Directories to exclude. +CS_PRUNE_STD = $(SCM_DIRS) \ + -o -name '.del-*' \ + -o -name '*demo' \ + -o -name pkgarchive + +# Placeholder for user-defined excludes. +CS_PRUNE_EX = + +CS_PRUNE = $(CS_PRUNE_STD) \ + $(CS_PRUNE_OS) \ + $(CS_PRUNE_CPU) \ + $(CS_PRUNE_GENERATED) \ + $(CS_PRUNE_EX) \ + $(RMCCHEADERS) + +# File names to include. +CSFILENAMES = -name '*.[ch]pp' \ + -o -name '*.[Ccshlxy]' \ + $(CS_ADD_GENERATED) \ + -o -name '*.d' \ + -o -name '*.il' \ + -o -name '*.cc' \ + -o -name '*[Mm]akefile*' \ + -o -name '*.gmk' \ + -o -name '*.make' \ + -o -name '*.ad' \ + $(ADDCLASSES) + +.PHONY: cscope cscope.clean cscope.scratch TAGS.clean FORCE +.PRECIOUS: cscope.out + +cscope $(CSCOPE_OUT): cscope.files FORCE + $(CSCOPE) -f $(CSCOPE_OUT) $(CSCOPE_FLAGS) + +cscope.clean: + $(QUIETLY) $(RM) $(CSCOPE_OUT) cscope.files + +cscope.scratch: cscope.clean cscope + +# The raw list is reordered so cscope displays the most relevant files first. +cscope.files: + $(QUIETLY) \ + raw=cscope.$$$$; \ + find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \ + -type f \( $(CSFILENAMES) \) -print > $$raw; \ + { \ + echo "$(CSINCS)"; \ + egrep -v "\.java|/make/" $$raw; \ + fgrep ".java" $$raw; \ + fgrep "/make/" $$raw; \ + } > $@; \ + rm -f $$raw + +TAGS: cscope.files FORCE + egrep -v '^-|^$$' $< | etags --members - + +TAGS.clean: + $(RM) TAGS diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/hotspot_version --- a/hotspot/make/hotspot_version Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/make/hotspot_version Wed Jul 05 17:43:00 2017 +0200 @@ -35,7 +35,7 @@ HS_MAJOR_VER=21 HS_MINOR_VER=0 -HS_BUILD_NUMBER=10 +HS_BUILD_NUMBER=11 JDK_MAJOR_VER=1 JDK_MINOR_VER=7 diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/linux/Makefile --- a/hotspot/make/linux/Makefile Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/make/linux/Makefile Wed Jul 05 17:43:00 2017 +0200 @@ -359,7 +359,7 @@ clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_docs -include $(GAMMADIR)/make/$(OSNAME)/makefiles/cscope.make +include $(GAMMADIR)/make/cscope.make #------------------------------------------------------------------------------- diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/linux/makefiles/cscope.make --- a/hotspot/make/linux/makefiles/cscope.make Mon May 02 09:36:49 2011 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,160 +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. -# -# 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. -# -# - -# -# The cscope.out file is made in the current directory and spans the entire -# source tree. -# -# Things to note: -# 1. We use relative names for cscope. -# 2. We *don't* remove the old cscope.out file, because cscope is smart -# enough to only build what has changed. It can be confused, however, -# if files are renamed or removed, so it may be necessary to manually -# remove cscope.out if a lot of reorganization has occurred. -# - -include $(GAMMADIR)/make/scm.make - -NAWK = awk -RM = rm -f -HG = hg -CS_TOP = ../.. - -CSDIRS = $(CS_TOP)/src $(CS_TOP)/build -CSINCS = $(CSDIRS:%=-I%) - -CSCOPE = cscope -CSCOPE_FLAGS = -b - -# Allow .java files to be added from the environment (CSCLASSES=yes). -ifdef CSCLASSES -ADDCLASSES= -o -name '*.java' -endif - -# Adding CClassHeaders also pushes the file count of a full workspace up about -# 200 files (these files also don't exist in a new workspace, and thus will -# cause the recreation of the database as they get created, which might seem -# a little confusing). Thus allow these files to be added from the environment -# (CSHEADERS=yes). -ifndef CSHEADERS -RMCCHEADERS= -o -name CClassHeaders -endif - -# Use CS_GENERATED=x to include auto-generated files in the build directories. -ifdef CS_GENERATED -CS_ADD_GENERATED = -o -name '*.incl' -else -CS_PRUNE_GENERATED = -o -name '${OS}_*_core' -o -name '${OS}_*_compiler?' -endif - -# OS-specific files for other systems are excluded by default. Use CS_OS=yes -# to include platform-specific files for other platforms. -ifndef CS_OS -CS_OS = linux macos solaris win32 -CS_PRUNE_OS = $(patsubst %,-o -name '*%*',$(filter-out ${OS},${CS_OS})) -endif - -# Processor-specific files for other processors are excluded by default. Use -# CS_CPU=x to include platform-specific files for other platforms. -ifndef CS_CPU -CS_CPU = i486 sparc amd64 ia64 -CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',$(filter-out ${SRCARCH},${CS_CPU})) -endif - -# What files should we include? A simple rule might be just those files under -# SCCS control, however this would miss files we create like the opcodes and -# CClassHeaders. The following attempts to find everything that is *useful*. -# (.del files are created by sccsrm, demo directories contain many .java files -# that probably aren't useful for development, and the pkgarchive may contain -# duplicates of files within the source hierarchy). - -# Directories to exclude. -CS_PRUNE_STD = $(SCM_DIRS) \ - -o -name '.del-*' \ - -o -name '*demo' \ - -o -name pkgarchive - -CS_PRUNE = $(CS_PRUNE_STD) \ - $(CS_PRUNE_OS) \ - $(CS_PRUNE_CPU) \ - $(CS_PRUNE_GENERATED) \ - $(RMCCHEADERS) - -# File names to include. -CSFILENAMES = -name '*.[ch]pp' \ - -o -name '*.[Ccshlxy]' \ - $(CS_ADD_GENERATED) \ - -o -name '*.il' \ - -o -name '*.cc' \ - -o -name '*[Mm]akefile*' \ - -o -name '*.gmk' \ - -o -name '*.make' \ - -o -name '*.ad' \ - $(ADDCLASSES) - -.PRECIOUS: cscope.out - -cscope cscope.out: cscope.files FORCE - $(CSCOPE) $(CSCOPE_FLAGS) - -# The .raw file is reordered here in an attempt to make cscope display the most -# relevant files first. -cscope.files: .cscope.files.raw - echo "$(CSINCS)" > $@ - -egrep -v "\.java|\/make\/" $< >> $@ - -fgrep ".java" $< >> $@ - -fgrep "/make/" $< >> $@ - -.cscope.files.raw: .nametable.files - -find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \ - -type f \( $(CSFILENAMES) \) -print > $@ - -cscope.clean: nametable.clean - -$(RM) cscope.out cscope.files .cscope.files.raw - -TAGS: cscope.files FORCE - egrep -v '^-|^$$' $< | etags --members - - -TAGS.clean: nametable.clean - -$(RM) TAGS - -# .nametable.files and .nametable.files.tmp are used to determine if any files -# were added to/deleted from/renamed in the workspace. If not, then there's -# normally no need to rebuild the cscope database. To force a rebuild of -# the cscope database: gmake nametable.clean. -.nametable.files: .nametable.files.tmp - ( cmp -s $@ $< ) || ( cp $< $@ ) - -$(RM) $< - -# `hg status' is slightly faster than `hg fstatus'. Both are -# quite a bit slower on an NFS mounted file system, so this is -# really geared towards repos on local file systems. -.nametable.files.tmp: - -$(HG) fstatus -acmn > $@ -nametable.clean: - -$(RM) .nametable.files .nametable.files.tmp - -FORCE: - -.PHONY: cscope cscope.clean TAGS.clean nametable.clean FORCE diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/solaris/Makefile --- a/hotspot/make/solaris/Makefile Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/make/solaris/Makefile Wed Jul 05 17:43:00 2017 +0200 @@ -296,7 +296,7 @@ clean: clean_compiler2 clean_compiler1 clean_core clean_docs clean_kernel -include $(GAMMADIR)/make/$(OSNAME)/makefiles/cscope.make +include $(GAMMADIR)/make/cscope.make #------------------------------------------------------------------------------- diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/make/solaris/makefiles/cscope.make --- a/hotspot/make/solaris/makefiles/cscope.make Mon May 02 09:36:49 2011 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,162 +0,0 @@ -# -# Copyright (c) 2000, 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. -# -# 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. -# -# - -# -# The cscope.out file is made in the current directory and spans the entire -# source tree. -# -# Things to note: -# 1. We use relative names for cscope. -# 2. We *don't* remove the old cscope.out file, because cscope is smart -# enough to only build what has changed. It can be confused, however, -# if files are renamed or removed, so it may be necessary to manually -# remove cscope.out if a lot of reorganization has occurred. -# - -include $(GAMMADIR)/make/scm.make - -NAWK = /usr/xpg4/bin/awk -RM = rm -f -HG = hg -CS_TOP = ../.. - -CSDIRS = $(CS_TOP)/src $(CS_TOP)/make -CSINCS = $(CSDIRS:%=-I%) - -CSCOPE = cscope -CSCOPE_FLAGS = -b - -# Allow .java files to be added from the environment (CSCLASSES=yes). -ifdef CSCLASSES -ADDCLASSES= -o -name '*.java' -endif - -# Adding CClassHeaders also pushes the file count of a full workspace up about -# 200 files (these files also don't exist in a new workspace, and thus will -# cause the recreation of the database as they get created, which might seem -# a little confusing). Thus allow these files to be added from the environment -# (CSHEADERS=yes). -ifndef CSHEADERS -RMCCHEADERS= -o -name CClassHeaders -endif - -# Use CS_GENERATED=x to include auto-generated files in the make directories. -ifdef CS_GENERATED -CS_ADD_GENERATED = -o -name '*.incl' -else -CS_PRUNE_GENERATED = -o -name '${OS}_*_core' -o -name '${OS}_*_compiler?' -endif - -# OS-specific files for other systems are excluded by default. Use CS_OS=yes -# to include platform-specific files for other platforms. -ifndef CS_OS -CS_OS = linux macos solaris win32 -CS_PRUNE_OS = $(patsubst %,-o -name '*%*',$(filter-out ${OS},${CS_OS})) -endif - -# Processor-specific files for other processors are excluded by default. Use -# CS_CPU=x to include platform-specific files for other platforms. -ifndef CS_CPU -CS_CPU = i486 sparc amd64 ia64 -CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',$(filter-out ${SRCARCH},${CS_CPU})) -endif - -# What files should we include? A simple rule might be just those files under -# SCCS control, however this would miss files we create like the opcodes and -# CClassHeaders. The following attempts to find everything that is *useful*. -# (.del files are created by sccsrm, demo directories contain many .java files -# that probably aren't useful for development, and the pkgarchive may contain -# duplicates of files within the source hierarchy). - -# Directories to exclude. -CS_PRUNE_STD = $(SCM_DIRS) \ - -o -name '.del-*' \ - -o -name '*demo' \ - -o -name pkgarchive - -CS_PRUNE = $(CS_PRUNE_STD) \ - $(CS_PRUNE_OS) \ - $(CS_PRUNE_CPU) \ - $(CS_PRUNE_GENERATED) \ - $(RMCCHEADERS) - -# File names to include. -CSFILENAMES = -name '*.[ch]pp' \ - -o -name '*.[Ccshlxy]' \ - $(CS_ADD_GENERATED) \ - -o -name '*.d' \ - -o -name '*.il' \ - -o -name '*.cc' \ - -o -name '*[Mm]akefile*' \ - -o -name '*.gmk' \ - -o -name '*.make' \ - -o -name '*.ad' \ - $(ADDCLASSES) - -.PRECIOUS: cscope.out - -cscope cscope.out: cscope.files FORCE - $(CSCOPE) $(CSCOPE_FLAGS) - -# The .raw file is reordered here in an attempt to make cscope display the most -# relevant files first. -cscope.files: .cscope.files.raw - echo "$(CSINCS)" > $@ - -egrep -v "\.java|\/make\/" $< >> $@ - -fgrep ".java" $< >> $@ - -fgrep "/make/" $< >> $@ - -.cscope.files.raw: .nametable.files - -find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \ - -type f \( $(CSFILENAMES) \) -print > $@ - -cscope.clean: nametable.clean - -$(RM) cscope.out cscope.files .cscope.files.raw - -TAGS: cscope.files FORCE - egrep -v '^-|^$$' $< | etags --members - - -TAGS.clean: nametable.clean - -$(RM) TAGS - -# .nametable.files and .nametable.files.tmp are used to determine if any files -# were added to/deleted from/renamed in the workspace. If not, then there's -# normally no need to rebuild the cscope database. To force a rebuild of -# the cscope database: gmake nametable.clean. -.nametable.files: .nametable.files.tmp - ( cmp -s $@ $< ) || ( cp $< $@ ) - -$(RM) $< - -# `hg status' is slightly faster than `hg fstatus'. Both are -# quite a bit slower on an NFS mounted file system, so this is -# really geared towards repos on local file systems. -.nametable.files.tmp: - -$(HG) fstatus -acmn > $@ - -nametable.clean: - -$(RM) .nametable.files .nametable.files.tmp - -FORCE: - -.PHONY: cscope cscope.clean TAGS.clean nametable.clean FORCE diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp --- a/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -486,7 +486,7 @@ if (ek == _invokespecial_mh) { // Must load & check the first argument before entering the target method. __ load_method_handle_vmslots(O0_argslot, G3_method_handle, O1_scratch); - __ ld_ptr(__ argument_address(O0_argslot), G3_method_handle); + __ ld_ptr(__ argument_address(O0_argslot, -1), G3_method_handle); __ null_check(G3_method_handle); __ verify_oop(G3_method_handle); } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp --- a/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -3293,8 +3293,6 @@ /*virtual*/ false, /*vfinal*/ false, /*indy*/ true); __ mov(SP, O5_savedSP); // record SP that we wanted the callee to restore - __ verify_oop(G5_callsite); - // profile this call __ profile_call(O4); @@ -3307,8 +3305,10 @@ __ sll(Rret, LogBytesPerWord, Rret); __ ld_ptr(Rtemp, Rret, Rret); // get return address + __ verify_oop(G5_callsite); __ load_heap_oop(G5_callsite, __ delayed_value(java_lang_invoke_CallSite::target_offset_in_bytes, Rscratch), G3_method_handle); __ null_check(G3_method_handle); + __ verify_oop(G3_method_handle); // Adjust Rret first so Llast_SP can be same as Rret __ add(Rret, -frame::pc_return_offset, O7); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp --- a/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -422,7 +422,7 @@ Label L_done, L_throw_exception; const Register con_klass_temp = rcx; // same as Rcache - __ movptr(con_klass_temp, Address(rax, oopDesc::klass_offset_in_bytes())); + __ load_klass(con_klass_temp, rax); __ cmpptr(con_klass_temp, ExternalAddress((address)Universe::systemObjArrayKlassObj_addr())); __ jcc(Assembler::notEqual, L_done); __ cmpl(Address(rax, arrayOopDesc::length_offset_in_bytes()), 0); @@ -432,7 +432,7 @@ // Load the exception from the system-array which wraps it: __ bind(L_throw_exception); - __ movptr(rax, Address(rax, arrayOopDesc::base_offset_in_bytes(T_OBJECT))); + __ load_heap_oop(rax, Address(rax, arrayOopDesc::base_offset_in_bytes(T_OBJECT))); __ jump(ExternalAddress(Interpreter::throw_exception_entry())); __ bind(L_done); @@ -946,9 +946,9 @@ __ jcc(Assembler::zero, is_null); // Move subklass into EBX - __ movptr(rbx, Address(rax, oopDesc::klass_offset_in_bytes())); + __ load_klass(rbx, rax); // Move superklass into EAX - __ movptr(rax, Address(rdx, oopDesc::klass_offset_in_bytes())); + __ load_klass(rax, rdx); __ movptr(rax, Address(rax, sizeof(oopDesc) + objArrayKlass::element_klass_offset_in_bytes())); // Compress array+index*wordSize+12 into a single register. Frees ECX. __ lea(rdx, element_address); @@ -2001,7 +2001,7 @@ if (_desc->bytecode() == Bytecodes::_return_register_finalizer) { assert(state == vtos, "only valid state"); __ movptr(rax, aaddress(0)); - __ movptr(rdi, Address(rax, oopDesc::klass_offset_in_bytes())); + __ load_klass(rdi, rax); __ movl(rdi, Address(rdi, Klass::access_flags_offset_in_bytes() + sizeof(oopDesc))); __ testl(rdi, JVM_ACC_HAS_FINALIZER); Label skip_register_finalizer; @@ -2948,7 +2948,7 @@ // get receiver klass __ null_check(recv, oopDesc::klass_offset_in_bytes()); // Keep recv in rcx for callee expects it there - __ movptr(rax, Address(recv, oopDesc::klass_offset_in_bytes())); + __ load_klass(rax, recv); __ verify_oop(rax); // profile this call @@ -3028,7 +3028,7 @@ // Get receiver klass into rdx - also a null check __ restore_locals(); // restore rdi - __ movptr(rdx, Address(rcx, oopDesc::klass_offset_in_bytes())); + __ load_klass(rdx, rcx); __ verify_oop(rdx); // profile this call @@ -3083,6 +3083,7 @@ void TemplateTable::invokedynamic(int byte_no) { transition(vtos, vtos); + assert(byte_no == f1_oop, "use this argument"); if (!EnableInvokeDynamic) { // We should not encounter this bytecode if !EnableInvokeDynamic. @@ -3095,7 +3096,6 @@ return; } - assert(byte_no == f1_oop, "use this argument"); prepare_invoke(rax, rbx, byte_no); // rax: CallSite object (f1) @@ -3106,14 +3106,14 @@ Register rax_callsite = rax; Register rcx_method_handle = rcx; - if (ProfileInterpreter) { - // %%% should make a type profile for any invokedynamic that takes a ref argument - // profile this call - __ profile_call(rsi); - } - - __ movptr(rcx_method_handle, Address(rax_callsite, __ delayed_value(java_lang_invoke_CallSite::target_offset_in_bytes, rcx))); + // %%% should make a type profile for any invokedynamic that takes a ref argument + // profile this call + __ profile_call(rsi); + + __ verify_oop(rax_callsite); + __ load_heap_oop(rcx_method_handle, Address(rax_callsite, __ delayed_value(java_lang_invoke_CallSite::target_offset_in_bytes, rdx))); __ null_check(rcx_method_handle); + __ verify_oop(rcx_method_handle); __ prepare_to_jump_from_interpreted(); __ jump_to_method_handle_entry(rcx_method_handle, rdx); } @@ -3258,7 +3258,7 @@ (int32_t)markOopDesc::prototype()); // header __ pop(rcx); // get saved klass back in the register. } - __ movptr(Address(rax, oopDesc::klass_offset_in_bytes()), rcx); // klass + __ store_klass(rax, rcx); // klass { SkipIfEqual skip_if(_masm, &DTraceAllocProbes, 0); @@ -3333,7 +3333,7 @@ __ movptr(rax, Address(rcx, rbx, Address::times_ptr, sizeof(constantPoolOopDesc))); __ bind(resolved); - __ movptr(rbx, Address(rdx, oopDesc::klass_offset_in_bytes())); + __ load_klass(rbx, rdx); // Generate subtype check. Blows ECX. Resets EDI. Object in EDX. // Superklass in EAX. Subklass in EBX. @@ -3376,12 +3376,12 @@ __ push(atos); call_VM(rax, CAST_FROM_FN_PTR(address, InterpreterRuntime::quicken_io_cc) ); __ pop_ptr(rdx); - __ movptr(rdx, Address(rdx, oopDesc::klass_offset_in_bytes())); + __ load_klass(rdx, rdx); __ jmp(resolved); // Get superklass in EAX and subklass in EDX __ bind(quicked); - __ movptr(rdx, Address(rax, oopDesc::klass_offset_in_bytes())); + __ load_klass(rdx, rax); __ movptr(rax, Address(rcx, rbx, Address::times_ptr, sizeof(constantPoolOopDesc))); __ bind(resolved); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp --- a/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -436,7 +436,7 @@ Label L_done, L_throw_exception; const Register con_klass_temp = rcx; // same as cache const Register array_klass_temp = rdx; // same as index - __ movptr(con_klass_temp, Address(rax, oopDesc::klass_offset_in_bytes())); + __ load_klass(con_klass_temp, rax); __ lea(array_klass_temp, ExternalAddress((address)Universe::systemObjArrayKlassObj_addr())); __ cmpptr(con_klass_temp, Address(array_klass_temp, 0)); __ jcc(Assembler::notEqual, L_done); @@ -447,7 +447,7 @@ // Load the exception from the system-array which wraps it: __ bind(L_throw_exception); - __ movptr(rax, Address(rax, arrayOopDesc::base_offset_in_bytes(T_OBJECT))); + __ load_heap_oop(rax, Address(rax, arrayOopDesc::base_offset_in_bytes(T_OBJECT))); __ jump(ExternalAddress(Interpreter::throw_exception_entry())); __ bind(L_done); @@ -3137,7 +3137,6 @@ return; } - assert(byte_no == f1_oop, "use this argument"); prepare_invoke(rax, rbx, byte_no); // rax: CallSite object (f1) @@ -3148,14 +3147,14 @@ Register rax_callsite = rax; Register rcx_method_handle = rcx; - if (ProfileInterpreter) { - // %%% should make a type profile for any invokedynamic that takes a ref argument - // profile this call - __ profile_call(r13); - } - - __ load_heap_oop(rcx_method_handle, Address(rax_callsite, __ delayed_value(java_lang_invoke_CallSite::target_offset_in_bytes, rcx))); + // %%% should make a type profile for any invokedynamic that takes a ref argument + // profile this call + __ profile_call(r13); + + __ verify_oop(rax_callsite); + __ load_heap_oop(rcx_method_handle, Address(rax_callsite, __ delayed_value(java_lang_invoke_CallSite::target_offset_in_bytes, rdx))); __ null_check(rcx_method_handle); + __ verify_oop(rcx_method_handle); __ prepare_to_jump_from_interpreted(); __ jump_to_method_handle_entry(rcx_method_handle, rdx); } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/cpu/x86/vm/vm_version_x86.cpp --- a/hotspot/src/cpu/x86/vm/vm_version_x86.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/cpu/x86/vm/vm_version_x86.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -441,12 +441,25 @@ } } - // On family 21 processors default is no sw prefetch - if ( cpu_family() == 21 ) { + // some defaults for AMD family 15h + if ( cpu_family() == 0x15 ) { + // On family 15h processors default is no sw prefetch if (FLAG_IS_DEFAULT(AllocatePrefetchStyle)) { AllocatePrefetchStyle = 0; } + // Also, if some other prefetch style is specified, default instruction type is PREFETCHW + if (FLAG_IS_DEFAULT(AllocatePrefetchInstr)) { + AllocatePrefetchInstr = 3; + } + // On family 15h processors use XMM and UnalignedLoadStores for Array Copy + if( FLAG_IS_DEFAULT(UseXMMForArrayCopy) ) { + UseXMMForArrayCopy = true; + } + if( FLAG_IS_DEFAULT(UseUnalignedLoadStores) && UseXMMForArrayCopy ) { + UseUnalignedLoadStores = true; + } } + } if( is_intel() ) { // Intel cpus specific settings diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/os/linux/vm/globals_linux.hpp --- a/hotspot/src/os/linux/vm/globals_linux.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/os/linux/vm/globals_linux.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -29,13 +29,19 @@ // Defines Linux specific flags. They are not available on other platforms. // #define RUNTIME_OS_FLAGS(develop, develop_pd, product, product_pd, diagnostic, notproduct) \ - product(bool, UseOprofile, false, \ - "enable support for Oprofile profiler") \ - \ - product(bool, UseLinuxPosixThreadCPUClocks, true, \ - "enable fast Linux Posix clocks where available") -// NB: The default value of UseLinuxPosixThreadCPUClocks may be -// overridden in Arguments::parse_each_vm_init_arg. + product(bool, UseOprofile, false, \ + "enable support for Oprofile profiler") \ + \ + product(bool, UseLinuxPosixThreadCPUClocks, true, \ + "enable fast Linux Posix clocks where available") \ +/* NB: The default value of UseLinuxPosixThreadCPUClocks may be \ + overridden in Arguments::parse_each_vm_init_arg. */ \ + \ + product(bool, UseHugeTLBFS, false, \ + "Use MAP_HUGETLB for large pages") \ + \ + product(bool, UseSHM, false, \ + "Use SYSV shared memory for large pages") // // Defines Linux-specific default values. The flags are available on all diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/os/linux/vm/os_linux.cpp --- a/hotspot/src/os/linux/vm/os_linux.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/os/linux/vm/os_linux.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -2465,16 +2465,40 @@ return res != (uintptr_t) MAP_FAILED; } +// Define MAP_HUGETLB here so we can build HotSpot on old systems. +#ifndef MAP_HUGETLB +#define MAP_HUGETLB 0x40000 +#endif + +// Define MADV_HUGEPAGE here so we can build HotSpot on old systems. +#ifndef MADV_HUGEPAGE +#define MADV_HUGEPAGE 14 +#endif + bool os::commit_memory(char* addr, size_t size, size_t alignment_hint, bool exec) { + if (UseHugeTLBFS && alignment_hint > (size_t)vm_page_size()) { + int prot = exec ? PROT_READ|PROT_WRITE|PROT_EXEC : PROT_READ|PROT_WRITE; + uintptr_t res = + (uintptr_t) ::mmap(addr, size, prot, + MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS|MAP_HUGETLB, + -1, 0); + return res != (uintptr_t) MAP_FAILED; + } + return commit_memory(addr, size, exec); } -void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { } +void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { + if (UseHugeTLBFS && alignment_hint > (size_t)vm_page_size()) { + // We don't check the return value: madvise(MADV_HUGEPAGE) may not + // be supported or the memory may already be backed by huge pages. + ::madvise(addr, bytes, MADV_HUGEPAGE); + } +} void os::free_memory(char *addr, size_t bytes) { - ::mmap(addr, bytes, PROT_READ | PROT_WRITE, - MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0); + ::madvise(addr, bytes, MADV_DONTNEED); } void os::numa_make_global(char *addr, size_t bytes) { @@ -2812,6 +2836,43 @@ return linux_mprotect(addr, size, PROT_READ|PROT_WRITE); } +bool os::Linux::hugetlbfs_sanity_check(bool warn, size_t page_size) { + bool result = false; + void *p = mmap (NULL, page_size, PROT_READ|PROT_WRITE, + MAP_ANONYMOUS|MAP_PRIVATE|MAP_HUGETLB, + -1, 0); + + if (p != (void *) -1) { + // We don't know if this really is a huge page or not. + FILE *fp = fopen("/proc/self/maps", "r"); + if (fp) { + while (!feof(fp)) { + char chars[257]; + long x = 0; + if (fgets(chars, sizeof(chars), fp)) { + if (sscanf(chars, "%lx-%*lx", &x) == 1 + && x == (long)p) { + if (strstr (chars, "hugepage")) { + result = true; + break; + } + } + } + } + fclose(fp); + } + munmap (p, page_size); + if (result) + return true; + } + + if (warn) { + warning("HugeTLBFS is not supported by the operating system."); + } + + return result; +} + /* * Set the coredump_filter bits to include largepages in core dump (bit 6) * @@ -2854,7 +2915,16 @@ static size_t _large_page_size = 0; bool os::large_page_init() { - if (!UseLargePages) return false; + if (!UseLargePages) { + UseHugeTLBFS = false; + UseSHM = false; + return false; + } + + if (FLAG_IS_DEFAULT(UseHugeTLBFS) && FLAG_IS_DEFAULT(UseSHM)) { + // Our user has not expressed a preference, so we'll try both. + UseHugeTLBFS = UseSHM = true; + } if (LargePageSizeInBytes) { _large_page_size = LargePageSizeInBytes; @@ -2899,6 +2969,9 @@ } } + // print a warning if any large page related flag is specified on command line + bool warn_on_failure = !FLAG_IS_DEFAULT(UseHugeTLBFS); + const size_t default_page_size = (size_t)Linux::page_size(); if (_large_page_size > default_page_size) { _page_sizes[0] = _large_page_size; @@ -2906,6 +2979,14 @@ _page_sizes[2] = 0; } + UseHugeTLBFS = UseHugeTLBFS && + Linux::hugetlbfs_sanity_check(warn_on_failure, _large_page_size); + + if (UseHugeTLBFS) + UseSHM = false; + + UseLargePages = UseHugeTLBFS || UseSHM; + set_coredump_filter(); // Large page support is available on 2.6 or newer kernel, some vendors @@ -2922,7 +3003,7 @@ char* os::reserve_memory_special(size_t bytes, char* req_addr, bool exec) { // "exec" is passed in but not used. Creating the shared image for // the code cache doesn't have an SHM_X executable permission to check. - assert(UseLargePages, "only for large pages"); + assert(UseLargePages && UseSHM, "only for SHM large pages"); key_t key = IPC_PRIVATE; char *addr; @@ -2989,16 +3070,15 @@ return _large_page_size; } -// Linux does not support anonymous mmap with large page memory. The only way -// to reserve large page memory without file backing is through SysV shared -// memory API. The entire memory region is committed and pinned upfront. -// Hopefully this will change in the future... +// HugeTLBFS allows application to commit large page memory on demand; +// with SysV SHM the entire memory region must be allocated as shared +// memory. bool os::can_commit_large_page_memory() { - return false; + return UseHugeTLBFS; } bool os::can_execute_large_page_memory() { - return false; + return UseHugeTLBFS; } // Reserve memory at an arbitrary address, only if that area is @@ -4090,6 +4170,23 @@ UseNUMA = false; } } + // With SHM large pages we cannot uncommit a page, so there's not way + // we can make the adaptive lgrp chunk resizing work. If the user specified + // both UseNUMA and UseLargePages (or UseSHM) on the command line - warn and + // disable adaptive resizing. + if (UseNUMA && UseLargePages && UseSHM) { + if (!FLAG_IS_DEFAULT(UseNUMA)) { + if (FLAG_IS_DEFAULT(UseLargePages) && FLAG_IS_DEFAULT(UseSHM)) { + UseLargePages = false; + } else { + warning("UseNUMA is not fully compatible with SHM large pages, disabling adaptive resizing"); + UseAdaptiveSizePolicy = false; + UseAdaptiveNUMAChunkSizing = false; + } + } else { + UseNUMA = false; + } + } if (!UseNUMA && ForceNUMA) { UseNUMA = true; } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/os/linux/vm/os_linux.hpp --- a/hotspot/src/os/linux/vm/os_linux.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/os/linux/vm/os_linux.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -86,6 +86,9 @@ static void rebuild_cpu_to_node_map(); static GrowableArray* cpu_to_node() { return _cpu_to_node; } + + static bool hugetlbfs_sanity_check(bool warn, size_t page_size); + public: static void init_thread_fpu_state(); static int get_fpu_control_word(); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/os/solaris/vm/os_solaris.cpp --- a/hotspot/src/os/solaris/vm/os_solaris.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/os/solaris/vm/os_solaris.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -2826,7 +2826,9 @@ void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { assert((intptr_t)addr % alignment_hint == 0, "Address should be aligned."); assert((intptr_t)(addr + bytes) % alignment_hint == 0, "End should be aligned."); - Solaris::set_mpss_range(addr, bytes, alignment_hint); + if (UseLargePages && UseMPSS) { + Solaris::set_mpss_range(addr, bytes, alignment_hint); + } } // Tell the OS to make the range local to the first-touching LWP @@ -5044,6 +5046,20 @@ UseNUMA = false; } } + // ISM is not compatible with the NUMA allocator - it always allocates + // pages round-robin across the lgroups. + if (UseNUMA && UseLargePages && UseISM) { + if (!FLAG_IS_DEFAULT(UseNUMA)) { + if (FLAG_IS_DEFAULT(UseLargePages) && FLAG_IS_DEFAULT(UseISM)) { + UseLargePages = false; + } else { + warning("UseNUMA is not compatible with ISM large pages, disabling NUMA allocator"); + UseNUMA = false; + } + } else { + UseNUMA = false; + } + } if (!UseNUMA && ForceNUMA) { UseNUMA = true; } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/c1/c1_Runtime1.cpp --- a/hotspot/src/share/vm/c1/c1_Runtime1.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/c1/c1_Runtime1.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1026,9 +1026,21 @@ // first replace the tail, then the call #ifdef ARM if(stub_id == Runtime1::load_klass_patching_id && !VM_Version::supports_movw()) { + nmethod* nm = CodeCache::find_nmethod(instr_pc); + oop* oop_addr = NULL; + assert(nm != NULL, "invalid nmethod_pc"); + RelocIterator oops(nm, copy_buff, copy_buff + 1); + while (oops.next()) { + if (oops.type() == relocInfo::oop_type) { + oop_Relocation* r = oops.oop_reloc(); + oop_addr = r->oop_addr(); + break; + } + } + assert(oop_addr != NULL, "oop relocation must exist"); copy_buff -= *byte_count; NativeMovConstReg* n_copy2 = nativeMovConstReg_at(copy_buff); - n_copy2->set_data((intx) (load_klass()), instr_pc); + n_copy2->set_pc_relative_offset((address)oop_addr, instr_pc); } #endif diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp --- a/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/ci/bcEscapeAnalyzer.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -232,14 +232,7 @@ } // compute size of arguments - int arg_size = target->arg_size(); - if (code == Bytecodes::_invokedynamic) { - assert(!target->is_static(), "receiver explicit in method"); - arg_size--; // implicit, not really on stack - } - if (!target->is_loaded() && code == Bytecodes::_invokestatic) { - arg_size--; - } + int arg_size = target->invoke_arg_size(code); int arg_base = MAX2(state._stack_height - arg_size, 0); // direct recursive calls are skipped if they can be bound statically without introducing diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/ci/ciEnv.cpp --- a/hotspot/src/share/vm/ci/ciEnv.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/ci/ciEnv.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -756,7 +756,7 @@ assert(bc == Bytecodes::_invokedynamic, "must be invokedynamic"); bool is_resolved = cpool->cache()->main_entry_at(index)->is_resolved(bc); - if (is_resolved && (oop) cpool->cache()->secondary_entry_at(index)->f1() == NULL) + if (is_resolved && cpool->cache()->secondary_entry_at(index)->is_f1_null()) // FIXME: code generation could allow for null (unlinked) call site is_resolved = false; @@ -770,7 +770,7 @@ // Get the invoker methodOop from the constant pool. oop f1_value = cpool->cache()->main_entry_at(index)->f1(); - methodOop signature_invoker = methodOop(f1_value); + methodOop signature_invoker = (methodOop) f1_value; assert(signature_invoker != NULL && signature_invoker->is_method() && signature_invoker->is_method_handle_invoke(), "correct result from LinkResolver::resolve_invokedynamic"); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/ci/ciMethod.hpp --- a/hotspot/src/share/vm/ci/ciMethod.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/ci/ciMethod.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -127,7 +127,24 @@ ciSignature* signature() const { return _signature; } ciType* return_type() const { return _signature->return_type(); } int arg_size_no_receiver() const { return _signature->size(); } - int arg_size() const { return _signature->size() + (_flags.is_static() ? 0 : 1); } + // Can only be used on loaded ciMethods + int arg_size() const { + check_is_loaded(); + return _signature->size() + (_flags.is_static() ? 0 : 1); + } + // Report the number of elements on stack when invoking this method. + // This is different than the regular arg_size because invokdynamic + // has an implicit receiver. + int invoke_arg_size(Bytecodes::Code code) const { + int arg_size = _signature->size(); + // Add a receiver argument, maybe: + if (code != Bytecodes::_invokestatic && + code != Bytecodes::_invokedynamic) { + arg_size++; + } + return arg_size; + } + // Method code and related information. address code() { if (_code == NULL) load_code(); return _code; } @@ -276,9 +293,9 @@ void print_short_name(outputStream* st = tty); methodOop get_method_handle_target() { - klassOop receiver_limit_oop = NULL; - int flags = 0; - return MethodHandles::decode_method(get_oop(), receiver_limit_oop, flags); + KlassHandle receiver_limit; int flags = 0; + methodHandle m = MethodHandles::decode_method(get_oop(), receiver_limit, flags); + return m(); } }; diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/ci/ciObject.cpp --- a/hotspot/src/share/vm/ci/ciObject.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/ci/ciObject.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -194,6 +194,16 @@ // ciObject::should_be_constant() bool ciObject::should_be_constant() { if (ScavengeRootsInCode >= 2) return true; // force everybody to be a constant + if (!JavaObjectsInPerm && !is_null_object()) { + // We want Strings and Classes to be embeddable by default since + // they used to be in the perm world. Not all Strings used to be + // embeddable but there's no easy way to distinguish the interned + // from the regulars ones so just treat them all that way. + ciEnv* env = CURRENT_ENV; + if (klass() == env->String_klass() || klass() == env->Class_klass()) { + return true; + } + } return handle() == NULL || !is_scavengable(); } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/classfile/javaClasses.cpp --- a/hotspot/src/share/vm/classfile/javaClasses.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/classfile/javaClasses.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1357,7 +1357,7 @@ }; -void java_lang_Throwable::fill_in_stack_trace(Handle throwable, TRAPS) { +void java_lang_Throwable::fill_in_stack_trace(Handle throwable, methodHandle method, TRAPS) { if (!StackTraceInThrowable) return; ResourceMark rm(THREAD); @@ -1374,6 +1374,16 @@ JavaThread* thread = (JavaThread*)THREAD; BacktraceBuilder bt(CHECK); + // If there is no Java frame just return the method that was being called + // with bci 0 + if (!thread->has_last_Java_frame()) { + if (max_depth >= 1 && method() != NULL) { + bt.push(method(), 0, CHECK); + set_backtrace(throwable(), bt.backtrace()); + } + return; + } + // Instead of using vframe directly, this version of fill_in_stack_trace // basically handles everything by hand. This significantly improved the // speed of this method call up to 28.5% on Solaris sparc. 27.1% on Windows. @@ -1477,7 +1487,7 @@ set_backtrace(throwable(), bt.backtrace()); } -void java_lang_Throwable::fill_in_stack_trace(Handle throwable) { +void java_lang_Throwable::fill_in_stack_trace(Handle throwable, methodHandle method) { // No-op if stack trace is disabled if (!StackTraceInThrowable) { return; @@ -1491,7 +1501,7 @@ PRESERVE_EXCEPTION_MARK; JavaThread* thread = JavaThread::active(); - fill_in_stack_trace(throwable, thread); + fill_in_stack_trace(throwable, method, thread); // ignore exceptions thrown during stack trace filling CLEAR_PENDING_EXCEPTION; } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/classfile/javaClasses.hpp --- a/hotspot/src/share/vm/classfile/javaClasses.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/classfile/javaClasses.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -440,8 +440,8 @@ static void fill_in_stack_trace_of_preallocated_backtrace(Handle throwable); // Fill in current stack trace, can cause GC - static void fill_in_stack_trace(Handle throwable, TRAPS); - static void fill_in_stack_trace(Handle throwable); + static void fill_in_stack_trace(Handle throwable, methodHandle method, TRAPS); + static void fill_in_stack_trace(Handle throwable, methodHandle method = methodHandle()); // Programmatic access to stack trace static oop get_stack_trace_element(oop throwable, int index, TRAPS); static int get_stack_trace_depth(oop throwable, TRAPS); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/compiler/compileBroker.cpp --- a/hotspot/src/share/vm/compiler/compileBroker.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/compiler/compileBroker.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -976,6 +976,15 @@ return; } + // If the requesting thread is holding the pending list lock + // then we just return. We can't risk blocking while holding + // the pending list lock or a 3-way deadlock may occur + // between the reference handler thread, a GC (instigated + // by a compiler thread), and compiled method registration. + if (instanceRefKlass::owns_pending_list_lock(JavaThread::current())) { + return; + } + // Outputs from the following MutexLocker block: CompileTask* task = NULL; bool blocking = false; @@ -1304,17 +1313,8 @@ // Should the current thread be blocked until this compilation request // has been fulfilled? bool CompileBroker::is_compile_blocking(methodHandle method, int osr_bci) { - if (!BackgroundCompilation) { - Symbol* class_name = method->method_holder()->klass_part()->name(); - if (class_name->starts_with("java/lang/ref/Reference", 23)) { - // The reference handler thread can dead lock with the GC if compilation is blocking, - // so we avoid blocking compiles for anything in the java.lang.ref.Reference class, - // including inner classes such as ReferenceHandler. - return false; - } - return true; - } - return false; + assert(!instanceRefKlass::owns_pending_list_lock(JavaThread::current()), "possible deadlock"); + return !BackgroundCompilation; } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp --- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1963,10 +1963,21 @@ // Iteration support, mostly delegated from a CMS generation void CompactibleFreeListSpace::save_marks() { - // mark the "end" of the used space at the time of this call; + assert(Thread::current()->is_VM_thread(), + "Global variable should only be set when single-threaded"); + // Mark the "end" of the used space at the time of this call; // note, however, that promoted objects from this point // on are tracked in the _promoInfo below. set_saved_mark_word(unallocated_block()); +#ifdef ASSERT + // Check the sanity of save_marks() etc. + MemRegion ur = used_region(); + MemRegion urasm = used_region_at_save_marks(); + assert(ur.contains(urasm), + err_msg(" Error at save_marks(): [" PTR_FORMAT "," PTR_FORMAT ")" + " should contain [" PTR_FORMAT "," PTR_FORMAT ")", + ur.start(), ur.end(), urasm.start(), urasm.end())); +#endif // inform allocator that promotions should be tracked. assert(_promoInfo.noPromotions(), "_promoInfo inconsistency"); _promoInfo.startTrackingPromotions(); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp --- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -3189,10 +3189,9 @@ } void CMSCollector::setup_cms_unloading_and_verification_state() { - const bool should_verify = VerifyBeforeGC || VerifyAfterGC || VerifyDuringGC + const bool should_verify = VerifyBeforeGC || VerifyAfterGC || VerifyDuringGC || VerifyBeforeExit; - const int rso = SharedHeap::SO_Symbols | SharedHeap::SO_Strings - | SharedHeap::SO_CodeCache; + const int rso = SharedHeap::SO_Strings | SharedHeap::SO_CodeCache; if (should_unload_classes()) { // Should unload classes this cycle remove_root_scanning_option(rso); // Shrink the root set appropriately diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp --- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1161,6 +1161,7 @@ TraceTime t(system_gc ? "Full GC (System.gc())" : "Full GC", PrintGC, true, gclog_or_tty); + TraceCollectorStats tcs(g1mm()->full_collection_counters()); TraceMemoryManagerStats tms(true /* fullGC */); double start = os::elapsedTime(); @@ -1339,6 +1340,7 @@ if (PrintHeapAtGC) { Universe::print_heap_after_gc(); } + g1mm()->update_counters(); return true; } @@ -1971,6 +1973,10 @@ init_mutator_alloc_region(); + // Do create of the monitoring and management support so that + // values in the heap have been properly initialized. + _g1mm = new G1MonitoringSupport(this, &_g1_storage); + return JNI_OK; } @@ -2113,6 +2119,28 @@ (cause == GCCause::_java_lang_system_gc && ExplicitGCInvokesConcurrent)); } +#ifndef PRODUCT +void G1CollectedHeap::allocate_dummy_regions() { + // Let's fill up most of the region + size_t word_size = HeapRegion::GrainWords - 1024; + // And as a result the region we'll allocate will be humongous. + guarantee(isHumongous(word_size), "sanity"); + + for (uintx i = 0; i < G1DummyRegionsPerGC; ++i) { + // Let's use the existing mechanism for the allocation + HeapWord* dummy_obj = humongous_obj_allocate(word_size); + if (dummy_obj != NULL) { + MemRegion mr(dummy_obj, word_size); + CollectedHeap::fill_with_object(mr); + } else { + // If we can't allocate once, we probably cannot allocate + // again. Let's get out of the loop. + break; + } + } +} +#endif // !PRODUCT + void G1CollectedHeap::increment_full_collections_completed(bool concurrent) { MonitorLockerEx x(FullGCCount_lock, Mutex::_no_safepoint_check_flag); @@ -2777,17 +2805,26 @@ bool silent, bool use_prev_marking) { if (SafepointSynchronize::is_at_safepoint() || ! UseTLAB) { - if (!silent) { gclog_or_tty->print("roots "); } + if (!silent) { gclog_or_tty->print("Roots (excluding permgen) "); } VerifyRootsClosure rootsCl(use_prev_marking); CodeBlobToOopClosure blobsCl(&rootsCl, /*do_marking=*/ false); - process_strong_roots(true, // activate StrongRootsScope - false, - SharedHeap::SO_AllClasses, + // We apply the relevant closures to all the oops in the + // system dictionary, the string table and the code cache. + const int so = SharedHeap::SO_AllClasses | SharedHeap::SO_Strings | SharedHeap::SO_CodeCache; + process_strong_roots(true, // activate StrongRootsScope + true, // we set "collecting perm gen" to true, + // so we don't reset the dirty cards in the perm gen. + SharedHeap::ScanningOption(so), // roots scanning options &rootsCl, &blobsCl, &rootsCl); + // Since we used "collecting_perm_gen" == true above, we will not have + // checked the refs from perm into the G1-collected heap. We check those + // references explicitly below. Whether the relevant cards are dirty + // is checked further below in the rem set verification. + if (!silent) { gclog_or_tty->print("Permgen roots "); } + perm_gen()->oop_iterate(&rootsCl); bool failures = rootsCl.failures(); - rem_set()->invalidate(perm_gen()->used_region(), false); if (!silent) { gclog_or_tty->print("HeapRegionSets "); } verify_region_sets(); if (!silent) { gclog_or_tty->print("HeapRegions "); } @@ -3164,6 +3201,7 @@ TraceCPUTime tcpu(PrintGCDetails, true, gclog_or_tty); TraceTime t(verbose_str, PrintGC && !PrintGCDetails, true, gclog_or_tty); + TraceCollectorStats tcs(g1mm()->incremental_collection_counters()); TraceMemoryManagerStats tms(false /* fullGC */); // If the secondary_free_list is not empty, append it to the @@ -3338,6 +3376,8 @@ doConcurrentMark(); } + allocate_dummy_regions(); + #if YOUNG_LIST_VERBOSE gclog_or_tty->print_cr("\nEnd of the pause.\nYoung_list:"); _young_list->print(); @@ -3401,6 +3441,8 @@ if (PrintHeapAtGC) { Universe::print_heap_after_gc(); } + g1mm()->update_counters(); + if (G1SummarizeRSetStats && (G1SummarizeRSetStatsPeriod > 0) && (total_collections() % G1SummarizeRSetStatsPeriod == 0)) { @@ -5314,6 +5356,7 @@ if (new_alloc_region != NULL) { g1_policy()->update_region_num(true /* next_is_young */); set_region_short_lived_locked(new_alloc_region); + g1mm()->update_eden_counters(); return new_alloc_region; } } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp --- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -28,7 +28,9 @@ #include "gc_implementation/g1/concurrentMark.hpp" #include "gc_implementation/g1/g1AllocRegion.hpp" #include "gc_implementation/g1/g1RemSet.hpp" +#include "gc_implementation/g1/g1MonitoringSupport.hpp" #include "gc_implementation/g1/heapRegionSets.hpp" +#include "gc_implementation/shared/hSpaceCounters.hpp" #include "gc_implementation/parNew/parGCAllocBuffer.hpp" #include "memory/barrierSet.hpp" #include "memory/memRegion.hpp" @@ -57,6 +59,7 @@ class ConcurrentMark; class ConcurrentMarkThread; class ConcurrentG1Refine; +class GenerationCounters; typedef OverflowTaskQueue RefToScanQueue; typedef GenericTaskQueueSet RefToScanQueueSet; @@ -236,6 +239,9 @@ // current collection. HeapRegion* _gc_alloc_region_list; + // Helper for monitoring and management support. + G1MonitoringSupport* _g1mm; + // Determines PLAB size for a particular allocation purpose. static size_t desired_plab_sz(GCAllocPurpose purpose); @@ -298,6 +304,14 @@ // started is maintained in _total_full_collections in CollectedHeap. volatile unsigned int _full_collections_completed; + // This is a non-product method that is helpful for testing. It is + // called at the end of a GC and artificially expands the heap by + // allocating a number of dead regions. This way we can induce very + // frequent marking cycles and stress the cleanup / concurrent + // cleanup code more (as all the regions that will be allocated by + // this method will be found dead by the marking cycle). + void allocate_dummy_regions() PRODUCT_RETURN; + // These are macros so that, if the assert fires, we get the correct // line number, file, etc. @@ -542,6 +556,9 @@ HeapWord* expand_and_allocate(size_t word_size); public: + + G1MonitoringSupport* g1mm() { return _g1mm; } + // Expand the garbage-first heap by at least the given size (in bytes!). // Returns true if the heap was expanded by the requested amount; // false otherwise. diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/g1/g1MonitoringSupport.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/src/share/vm/gc_implementation/g1/g1MonitoringSupport.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,178 @@ +/* + * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * 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/g1/g1MonitoringSupport.hpp" +#include "gc_implementation/g1/g1CollectedHeap.inline.hpp" +#include "gc_implementation/g1/g1CollectorPolicy.hpp" + +G1MonitoringSupport::G1MonitoringSupport(G1CollectedHeap* g1h, + VirtualSpace* g1_storage_addr) : + _g1h(g1h), + _incremental_collection_counters(NULL), + _full_collection_counters(NULL), + _non_young_collection_counters(NULL), + _old_space_counters(NULL), + _young_collection_counters(NULL), + _eden_counters(NULL), + _from_counters(NULL), + _to_counters(NULL), + _g1_storage_addr(g1_storage_addr) +{ + // Counters for GC collections + // + // name "collector.0". In a generational collector this would be the + // young generation collection. + _incremental_collection_counters = + new CollectorCounters("G1 incremental collections", 0); + // name "collector.1". In a generational collector this would be the + // old generation collection. + _full_collection_counters = + new CollectorCounters("G1 stop-the-world full collections", 1); + + // timer sampling for all counters supporting sampling only update the + // used value. See the take_sample() method. G1 requires both used and + // capacity updated so sampling is not currently used. It might + // be sufficient to update all counters in take_sample() even though + // take_sample() only returns "used". When sampling was used, there + // were some anomolous values emitted which may have been the consequence + // of not updating all values simultaneously (i.e., see the calculation done + // in eden_space_used(), is it possbile that the values used to + // calculate either eden_used or survivor_used are being updated by + // the collector when the sample is being done?). + const bool sampled = false; + + // "Generation" and "Space" counters. + // + // name "generation.1" This is logically the old generation in + // generational GC terms. The "1, 1" parameters are for + // the n-th generation (=1) with 1 space. + // Counters are created from minCapacity, maxCapacity, and capacity + _non_young_collection_counters = + new GenerationCounters("whole heap", 1, 1, _g1_storage_addr); + + // name "generation.1.space.0" + // Counters are created from maxCapacity, capacity, initCapacity, + // and used. + _old_space_counters = new HSpaceCounters("space", 0, + _g1h->max_capacity(), _g1h->capacity(), _non_young_collection_counters); + + // Young collection set + // name "generation.0". This is logically the young generation. + // The "0, 3" are paremeters for the n-th genertaion (=0) with 3 spaces. + // See _non_young_collection_counters for additional counters + _young_collection_counters = new GenerationCounters("young", 0, 3, NULL); + + // Replace "max_heap_byte_size() with maximum young gen size for + // g1Collectedheap + // name "generation.0.space.0" + // See _old_space_counters for additional counters + _eden_counters = new HSpaceCounters("eden", 0, + _g1h->max_capacity(), eden_space_committed(), + _young_collection_counters); + + // name "generation.0.space.1" + // See _old_space_counters for additional counters + // Set the arguments to indicate that this survivor space is not used. + _from_counters = new HSpaceCounters("s0", 1, (long) 0, (long) 0, + _young_collection_counters); + + // name "generation.0.space.2" + // See _old_space_counters for additional counters + _to_counters = new HSpaceCounters("s1", 2, + _g1h->max_capacity(), + survivor_space_committed(), + _young_collection_counters); +} + +size_t G1MonitoringSupport::overall_committed() { + return g1h()->capacity(); +} + +size_t G1MonitoringSupport::overall_used() { + return g1h()->used_unlocked(); +} + +size_t G1MonitoringSupport::eden_space_committed() { + return MAX2(eden_space_used(), (size_t) HeapRegion::GrainBytes); +} + +size_t G1MonitoringSupport::eden_space_used() { + size_t young_list_length = g1h()->young_list()->length(); + size_t eden_used = young_list_length * HeapRegion::GrainBytes; + size_t survivor_used = survivor_space_used(); + eden_used = subtract_up_to_zero(eden_used, survivor_used); + return eden_used; +} + +size_t G1MonitoringSupport::survivor_space_committed() { + return MAX2(survivor_space_used(), + (size_t) HeapRegion::GrainBytes); +} + +size_t G1MonitoringSupport::survivor_space_used() { + size_t survivor_num = g1h()->g1_policy()->recorded_survivor_regions(); + size_t survivor_used = survivor_num * HeapRegion::GrainBytes; + return survivor_used; +} + +size_t G1MonitoringSupport::old_space_committed() { + size_t committed = overall_committed(); + size_t eden_committed = eden_space_committed(); + size_t survivor_committed = survivor_space_committed(); + committed = subtract_up_to_zero(committed, eden_committed); + committed = subtract_up_to_zero(committed, survivor_committed); + committed = MAX2(committed, (size_t) HeapRegion::GrainBytes); + return committed; +} + +// See the comment near the top of g1MonitoringSupport.hpp for +// an explanation of these calculations for "used" and "capacity". +size_t G1MonitoringSupport::old_space_used() { + size_t used = overall_used(); + size_t eden_used = eden_space_used(); + size_t survivor_used = survivor_space_used(); + used = subtract_up_to_zero(used, eden_used); + used = subtract_up_to_zero(used, survivor_used); + return used; +} + +void G1MonitoringSupport::update_counters() { + if (UsePerfData) { + eden_counters()->update_capacity(eden_space_committed()); + eden_counters()->update_used(eden_space_used()); + to_counters()->update_capacity(survivor_space_committed()); + to_counters()->update_used(survivor_space_used()); + old_space_counters()->update_capacity(old_space_committed()); + old_space_counters()->update_used(old_space_used()); + non_young_collection_counters()->update_all(); + } +} + +void G1MonitoringSupport::update_eden_counters() { + if (UsePerfData) { + eden_counters()->update_capacity(eden_space_committed()); + eden_counters()->update_used(eden_space_used()); + } +} diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/g1/g1MonitoringSupport.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/src/share/vm/gc_implementation/g1/g1MonitoringSupport.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,203 @@ +/* + * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * 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_G1_G1MONITORINGSUPPORT_HPP +#define SHARE_VM_GC_IMPLEMENTATION_G1_G1MONITORINGSUPPORT_HPP + +#include "gc_implementation/shared/hSpaceCounters.hpp" + +class G1CollectedHeap; +class G1SpaceMonitoringSupport; + +// Class for monitoring logical spaces in G1. +// G1 defines a set of regions as a young +// collection (analogous to a young generation). +// The young collection is a logical generation +// with no fixed chunk (see space.hpp) reflecting +// the address space for the generation. In addition +// to the young collection there is its complement +// the non-young collection that is simply the regions +// not in the young collection. The non-young collection +// is treated here as a logical old generation only +// because the monitoring tools expect a generational +// heap. The monitoring tools expect that a Space +// (see space.hpp) exists that describe the +// address space of young collection and non-young +// collection and such a view is provided here. +// +// This class provides interfaces to access +// the value of variables for the young collection +// that include the "capacity" and "used" of the +// young collection along with constant values +// for the minimum and maximum capacities for +// the logical spaces. Similarly for the non-young +// collection. +// +// Also provided are counters for G1 concurrent collections +// and stop-the-world full heap collecitons. +// +// Below is a description of how "used" and "capactiy" +// (or committed) is calculated for the logical spaces. +// +// 1) The used space calculation for a pool is not necessarily +// independent of the others. We can easily get from G1 the overall +// used space in the entire heap, the number of regions in the young +// generation (includes both eden and survivors), and the number of +// survivor regions. So, from that we calculate: +// +// survivor_used = survivor_num * region_size +// eden_used = young_region_num * region_size - survivor_used +// old_gen_used = overall_used - eden_used - survivor_used +// +// Note that survivor_used and eden_used are upper bounds. To get the +// actual value we would have to iterate over the regions and add up +// ->used(). But that'd be expensive. So, we'll accept some lack of +// accuracy for those two. But, we have to be careful when calculating +// old_gen_used, in case we subtract from overall_used more then the +// actual number and our result goes negative. +// +// 2) Calculating the used space is straightforward, as described +// above. However, how do we calculate the committed space, given that +// we allocate space for the eden, survivor, and old gen out of the +// same pool of regions? One way to do this is to use the used value +// as also the committed value for the eden and survivor spaces and +// then calculate the old gen committed space as follows: +// +// old_gen_committed = overall_committed - eden_committed - survivor_committed +// +// Maybe a better way to do that would be to calculate used for eden +// and survivor as a sum of ->used() over their regions and then +// calculate committed as region_num * region_size (i.e., what we use +// to calculate the used space now). This is something to consider +// in the future. +// +// 3) Another decision that is again not straightforward is what is +// the max size that each memory pool can grow to. One way to do this +// would be to use the committed size for the max for the eden and +// survivors and calculate the old gen max as follows (basically, it's +// a similar pattern to what we use for the committed space, as +// described above): +// +// old_gen_max = overall_max - eden_max - survivor_max +// +// Unfortunately, the above makes the max of each pool fluctuate over +// time and, even though this is allowed according to the spec, it +// broke several assumptions in the M&M framework (there were cases +// where used would reach a value greater than max). So, for max we +// use -1, which means "undefined" according to the spec. +// +// 4) Now, there is a very subtle issue with all the above. The +// framework will call get_memory_usage() on the three pools +// asynchronously. As a result, each call might get a different value +// for, say, survivor_num which will yield inconsistent values for +// eden_used, survivor_used, and old_gen_used (as survivor_num is used +// in the calculation of all three). This would normally be +// ok. However, it's possible that this might cause the sum of +// eden_used, survivor_used, and old_gen_used to go over the max heap +// size and this seems to sometimes cause JConsole (and maybe other +// clients) to get confused. There's not a really an easy / clean +// solution to this problem, due to the asynchrounous nature of the +// framework. + +class G1MonitoringSupport : public CHeapObj { + G1CollectedHeap* _g1h; + VirtualSpace* _g1_storage_addr; + + // jstat performance counters + // incremental collections both fully and partially young + CollectorCounters* _incremental_collection_counters; + // full stop-the-world collections + CollectorCounters* _full_collection_counters; + // young collection set counters. The _eden_counters, + // _from_counters, and _to_counters are associated with + // this "generational" counter. + GenerationCounters* _young_collection_counters; + // non-young collection set counters. The _old_space_counters + // below are associated with this "generational" counter. + GenerationCounters* _non_young_collection_counters; + // Counters for the capacity and used for + // the whole heap + HSpaceCounters* _old_space_counters; + // the young collection + HSpaceCounters* _eden_counters; + // the survivor collection (only one, _to_counters, is actively used) + HSpaceCounters* _from_counters; + HSpaceCounters* _to_counters; + + // It returns x - y if x > y, 0 otherwise. + // As described in the comment above, some of the inputs to the + // calculations we have to do are obtained concurrently and hence + // may be inconsistent with each other. So, this provides a + // defensive way of performing the subtraction and avoids the value + // going negative (which would mean a very large result, given that + // the parameter are size_t). + static size_t subtract_up_to_zero(size_t x, size_t y) { + if (x > y) { + return x - y; + } else { + return 0; + } + } + + public: + G1MonitoringSupport(G1CollectedHeap* g1h, VirtualSpace* g1_storage_addr); + + G1CollectedHeap* g1h() { return _g1h; } + VirtualSpace* g1_storage_addr() { return _g1_storage_addr; } + + // Performance Counter accessors + void update_counters(); + void update_eden_counters(); + + CollectorCounters* incremental_collection_counters() { + return _incremental_collection_counters; + } + CollectorCounters* full_collection_counters() { + return _full_collection_counters; + } + GenerationCounters* non_young_collection_counters() { + return _non_young_collection_counters; + } + HSpaceCounters* old_space_counters() { return _old_space_counters; } + HSpaceCounters* eden_counters() { return _eden_counters; } + HSpaceCounters* from_counters() { return _from_counters; } + HSpaceCounters* to_counters() { return _to_counters; } + + // Monitoring support used by + // MemoryService + // jstat counters + size_t overall_committed(); + size_t overall_used(); + + size_t eden_space_committed(); + size_t eden_space_used(); + + size_t survivor_space_committed(); + size_t survivor_space_used(); + + size_t old_space_committed(); + size_t old_space_used(); +}; + +#endif // SHARE_VM_GC_IMPLEMENTATION_G1_G1MONITORINGSUPPORT_HPP diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp --- a/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -300,6 +300,11 @@ develop(uintx, G1StressConcRegionFreeingDelayMillis, 0, \ "Artificial delay during concurrent region freeing") \ \ + develop(uintx, G1DummyRegionsPerGC, 0, \ + "The number of dummy regions G1 will allocate at the end of " \ + "each evacuation pause in order to artificially fill up the " \ + "heap and stress the marking implementation.") \ + \ develop(bool, ReduceInitialCardMarksForG1, false, \ "When ReduceInitialCardMarks is true, this flag setting " \ " controls whether G1 allows the RICM optimization") \ diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp --- a/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -33,44 +33,43 @@ #include "runtime/mutexLocker.hpp" #include "runtime/virtualspace.hpp" -void CardTableModRefBS::par_non_clean_card_iterate_work(Space* sp, MemRegion mr, - DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl, - int n_threads) { - if (n_threads > 0) { - assert((n_threads == 1 && ParallelGCThreads == 0) || - n_threads <= (int)ParallelGCThreads, - "# worker threads != # requested!"); - // Make sure the LNC array is valid for the space. - jbyte** lowest_non_clean; - uintptr_t lowest_non_clean_base_chunk_index; - size_t lowest_non_clean_chunk_size; - get_LNC_array_for_space(sp, lowest_non_clean, - lowest_non_clean_base_chunk_index, - lowest_non_clean_chunk_size); +void CardTableModRefBS::non_clean_card_iterate_parallel_work(Space* sp, MemRegion mr, + DirtyCardToOopClosure* dcto_cl, + ClearNoncleanCardWrapper* cl, + int n_threads) { + assert(n_threads > 0, "Error: expected n_threads > 0"); + assert((n_threads == 1 && ParallelGCThreads == 0) || + n_threads <= (int)ParallelGCThreads, + "# worker threads != # requested!"); + // Make sure the LNC array is valid for the space. + jbyte** lowest_non_clean; + uintptr_t lowest_non_clean_base_chunk_index; + size_t lowest_non_clean_chunk_size; + get_LNC_array_for_space(sp, lowest_non_clean, + lowest_non_clean_base_chunk_index, + lowest_non_clean_chunk_size); - int n_strides = n_threads * StridesPerThread; - SequentialSubTasksDone* pst = sp->par_seq_tasks(); - pst->set_n_threads(n_threads); - pst->set_n_tasks(n_strides); + int n_strides = n_threads * StridesPerThread; + SequentialSubTasksDone* pst = sp->par_seq_tasks(); + pst->set_n_threads(n_threads); + pst->set_n_tasks(n_strides); - int stride = 0; - while (!pst->is_task_claimed(/* reference */ stride)) { - process_stride(sp, mr, stride, n_strides, dcto_cl, cl, - lowest_non_clean, - lowest_non_clean_base_chunk_index, - lowest_non_clean_chunk_size); - } - if (pst->all_tasks_completed()) { - // Clear lowest_non_clean array for next time. - intptr_t first_chunk_index = addr_to_chunk_index(mr.start()); - uintptr_t last_chunk_index = addr_to_chunk_index(mr.last()); - for (uintptr_t ch = first_chunk_index; ch <= last_chunk_index; ch++) { - intptr_t ind = ch - lowest_non_clean_base_chunk_index; - assert(0 <= ind && ind < (intptr_t)lowest_non_clean_chunk_size, - "Bounds error"); - lowest_non_clean[ind] = NULL; - } + int stride = 0; + while (!pst->is_task_claimed(/* reference */ stride)) { + process_stride(sp, mr, stride, n_strides, dcto_cl, cl, + lowest_non_clean, + lowest_non_clean_base_chunk_index, + lowest_non_clean_chunk_size); + } + if (pst->all_tasks_completed()) { + // Clear lowest_non_clean array for next time. + intptr_t first_chunk_index = addr_to_chunk_index(mr.start()); + uintptr_t last_chunk_index = addr_to_chunk_index(mr.last()); + for (uintptr_t ch = first_chunk_index; ch <= last_chunk_index; ch++) { + intptr_t ind = ch - lowest_non_clean_base_chunk_index; + assert(0 <= ind && ind < (intptr_t)lowest_non_clean_chunk_size, + "Bounds error"); + lowest_non_clean[ind] = NULL; } } } @@ -81,7 +80,7 @@ MemRegion used, jint stride, int n_strides, DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl, + ClearNoncleanCardWrapper* cl, jbyte** lowest_non_clean, uintptr_t lowest_non_clean_base_chunk_index, size_t lowest_non_clean_chunk_size) { @@ -127,7 +126,11 @@ lowest_non_clean_base_chunk_index, lowest_non_clean_chunk_size); - non_clean_card_iterate_work(chunk_mr, cl); + // We do not call the non_clean_card_iterate_serial() version because + // we want to clear the cards, and the ClearNoncleanCardWrapper closure + // itself does the work of finding contiguous dirty ranges of cards to + // process (and clear). + cl->do_MemRegion(chunk_mr); // Find the next chunk of the stride. chunk_card_start += CardsPerStrideChunk * n_strides; diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/shared/generationCounters.cpp --- a/hotspot/src/share/vm/gc_implementation/shared/generationCounters.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/shared/generationCounters.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved. * 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,15 +51,18 @@ cname = PerfDataManager::counter_name(_name_space, "minCapacity"); PerfDataManager::create_constant(SUN_GC, cname, PerfData::U_Bytes, + _virtual_space == NULL ? 0 : _virtual_space->committed_size(), CHECK); cname = PerfDataManager::counter_name(_name_space, "maxCapacity"); PerfDataManager::create_constant(SUN_GC, cname, PerfData::U_Bytes, + _virtual_space == NULL ? 0 : _virtual_space->reserved_size(), CHECK); cname = PerfDataManager::counter_name(_name_space, "capacity"); _current_size = PerfDataManager::create_variable(SUN_GC, cname, - PerfData::U_Bytes, + PerfData::U_Bytes, + _virtual_space == NULL ? 0 : _virtual_space->committed_size(), CHECK); } } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/shared/generationCounters.hpp --- a/hotspot/src/share/vm/gc_implementation/shared/generationCounters.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/gc_implementation/shared/generationCounters.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved. * 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,10 +61,11 @@ } virtual void update_all() { - _current_size->set_value(_virtual_space->committed_size()); + _current_size->set_value(_virtual_space == NULL ? 0 : + _virtual_space->committed_size()); } const char* name_space() const { return _name_space; } + }; - #endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_GENERATIONCOUNTERS_HPP diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/shared/hSpaceCounters.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/src/share/vm/gc_implementation/shared/hSpaceCounters.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * 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/hSpaceCounters.hpp" +#include "memory/generation.hpp" +#include "memory/resourceArea.hpp" + +HSpaceCounters::HSpaceCounters(const char* name, + int ordinal, + size_t max_size, + size_t initial_capacity, + GenerationCounters* gc) { + + if (UsePerfData) { + EXCEPTION_MARK; + ResourceMark rm; + + const char* cns = + PerfDataManager::name_space(gc->name_space(), "space", ordinal); + + _name_space = NEW_C_HEAP_ARRAY(char, strlen(cns)+1); + strcpy(_name_space, cns); + + const char* cname = PerfDataManager::counter_name(_name_space, "name"); + PerfDataManager::create_string_constant(SUN_GC, cname, name, CHECK); + + cname = PerfDataManager::counter_name(_name_space, "maxCapacity"); + PerfDataManager::create_constant(SUN_GC, cname, PerfData::U_Bytes, + (jlong)max_size, CHECK); + + cname = PerfDataManager::counter_name(_name_space, "capacity"); + _capacity = PerfDataManager::create_variable(SUN_GC, cname, + PerfData::U_Bytes, + initial_capacity, CHECK); + + cname = PerfDataManager::counter_name(_name_space, "used"); + _used = PerfDataManager::create_variable(SUN_GC, cname, PerfData::U_Bytes, + (jlong) 0, CHECK); + + cname = PerfDataManager::counter_name(_name_space, "initCapacity"); + PerfDataManager::create_constant(SUN_GC, cname, PerfData::U_Bytes, + initial_capacity, CHECK); + } +} diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/gc_implementation/shared/hSpaceCounters.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hotspot/src/share/vm/gc_implementation/shared/hSpaceCounters.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * 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_HSPACECOUNTERS_HPP +#define SHARE_VM_GC_IMPLEMENTATION_SHARED_HSPACECOUNTERS_HPP + +#ifndef SERIALGC +#include "gc_implementation/shared/generationCounters.hpp" +#include "memory/generation.hpp" +#include "runtime/perfData.hpp" +#endif + +// A HSpaceCounter is a holder class for performance counters +// that track a collections (logical spaces) in a heap; + +class HeapSpaceUsedHelper; +class G1SpaceMonitoringSupport; + +class HSpaceCounters: public CHeapObj { + friend class VMStructs; + + private: + PerfVariable* _capacity; + PerfVariable* _used; + + // Constant PerfData types don't need to retain a reference. + // However, it's a good idea to document them here. + + char* _name_space; + + public: + + HSpaceCounters(const char* name, int ordinal, size_t max_size, + size_t initial_capacity, GenerationCounters* gc); + + ~HSpaceCounters() { + if (_name_space != NULL) FREE_C_HEAP_ARRAY(char, _name_space); + } + + inline void update_capacity(size_t v) { + _capacity->set_value(v); + } + + inline void update_used(size_t v) { + _used->set_value(v); + } + + debug_only( + // for security reasons, we do not allow arbitrary reads from + // the counters as they may live in shared memory. + jlong used() { + return _used->get_value(); + } + jlong capacity() { + return _used->get_value(); + } + ) + + inline void update_all(size_t capacity, size_t used) { + update_capacity(capacity); + update_used(used); + } + + const char* name_space() const { return _name_space; } +}; +#endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_HSPACECOUNTERS_HPP diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/cardTableModRefBS.cpp --- a/hotspot/src/share/vm/memory/cardTableModRefBS.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/cardTableModRefBS.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -456,31 +456,35 @@ } -void CardTableModRefBS::non_clean_card_iterate(Space* sp, - MemRegion mr, - DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl) { +void CardTableModRefBS::non_clean_card_iterate_possibly_parallel(Space* sp, + MemRegion mr, + DirtyCardToOopClosure* dcto_cl, + ClearNoncleanCardWrapper* cl) { if (!mr.is_empty()) { int n_threads = SharedHeap::heap()->n_par_threads(); if (n_threads > 0) { #ifndef SERIALGC - par_non_clean_card_iterate_work(sp, mr, dcto_cl, cl, n_threads); + non_clean_card_iterate_parallel_work(sp, mr, dcto_cl, cl, n_threads); #else // SERIALGC fatal("Parallel gc not supported here."); #endif // SERIALGC } else { - non_clean_card_iterate_work(mr, cl); + // We do not call the non_clean_card_iterate_serial() version below because + // we want to clear the cards (which non_clean_card_iterate_serial() does not + // do for us), and the ClearNoncleanCardWrapper closure itself does the work + // of finding contiguous dirty ranges of cards to process (and clear). + cl->do_MemRegion(mr); } } } -// NOTE: For this to work correctly, it is important that -// we look for non-clean cards below (so as to catch those -// marked precleaned), rather than look explicitly for dirty -// cards (and miss those marked precleaned). In that sense, -// the name precleaned is currently somewhat of a misnomer. -void CardTableModRefBS::non_clean_card_iterate_work(MemRegion mr, - MemRegionClosure* cl) { +// The iterator itself is not MT-aware, but +// MT-aware callers and closures can use this to +// accomplish dirty card iteration in parallel. The +// iterator itself does not clear the dirty cards, or +// change their values in any manner. +void CardTableModRefBS::non_clean_card_iterate_serial(MemRegion mr, + MemRegionClosure* cl) { for (int i = 0; i < _cur_covered_regions; i++) { MemRegion mri = mr.intersection(_covered[i]); if (mri.word_size() > 0) { @@ -661,7 +665,7 @@ void CardTableModRefBS::verify_clean_region(MemRegion mr) { GuaranteeNotModClosure blk(this); - non_clean_card_iterate_work(mr, &blk); + non_clean_card_iterate_serial(mr, &blk); } // To verify a MemRegion is entirely dirty this closure is passed to diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/cardTableModRefBS.hpp --- a/hotspot/src/share/vm/memory/cardTableModRefBS.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/cardTableModRefBS.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -44,6 +44,7 @@ class Generation; class OopsInGenClosure; class DirtyCardToOopClosure; +class ClearNoncleanCardWrapper; class CardTableModRefBS: public ModRefBarrierSet { // Some classes get to look at some private stuff. @@ -165,22 +166,28 @@ // Iterate over the portion of the card-table which covers the given // region mr in the given space and apply cl to any dirty sub-regions - // of mr. cl and dcto_cl must either be the same closure or cl must - // wrap dcto_cl. Both are required - neither may be NULL. Also, dcto_cl - // may be modified. Note that this function will operate in a parallel - // mode if worker threads are available. - void non_clean_card_iterate(Space* sp, MemRegion mr, - DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl); + // of mr. Dirty cards are _not_ cleared by the iterator method itself, + // but closures may arrange to do so on their own should they so wish. + void non_clean_card_iterate_serial(MemRegion mr, MemRegionClosure* cl); - // Utility function used to implement the other versions below. - void non_clean_card_iterate_work(MemRegion mr, MemRegionClosure* cl); + // A variant of the above that will operate in a parallel mode if + // worker threads are available, and clear the dirty cards as it + // processes them. + // ClearNoncleanCardWrapper cl must wrap the DirtyCardToOopClosure dcto_cl, + // which may itself be modified by the method. + void non_clean_card_iterate_possibly_parallel(Space* sp, MemRegion mr, + DirtyCardToOopClosure* dcto_cl, + ClearNoncleanCardWrapper* cl); - void par_non_clean_card_iterate_work(Space* sp, MemRegion mr, - DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl, - int n_threads); + private: + // Work method used to implement non_clean_card_iterate_possibly_parallel() + // above in the parallel case. + void non_clean_card_iterate_parallel_work(Space* sp, MemRegion mr, + DirtyCardToOopClosure* dcto_cl, + ClearNoncleanCardWrapper* cl, + int n_threads); + protected: // Dirty the bytes corresponding to "mr" (not all of which must be // covered.) void dirty_MemRegion(MemRegion mr); @@ -237,7 +244,7 @@ MemRegion used, jint stride, int n_strides, DirtyCardToOopClosure* dcto_cl, - MemRegionClosure* cl, + ClearNoncleanCardWrapper* cl, jbyte** lowest_non_clean, uintptr_t lowest_non_clean_base_chunk_index, size_t lowest_non_clean_chunk_size); @@ -409,14 +416,14 @@ // marking, where a dirty card may cause scanning, and summarization // marking, of objects that extend onto subsequent cards.) void mod_card_iterate(MemRegionClosure* cl) { - non_clean_card_iterate_work(_whole_heap, cl); + non_clean_card_iterate_serial(_whole_heap, cl); } // Like the "mod_cards_iterate" above, except only invokes the closure // for cards within the MemRegion "mr" (which is required to be // card-aligned and sized.) void mod_card_iterate(MemRegion mr, MemRegionClosure* cl) { - non_clean_card_iterate_work(mr, cl); + non_clean_card_iterate_serial(mr, cl); } static uintx ct_max_alignment_constraint(); @@ -493,4 +500,5 @@ void set_CTRS(CardTableRS* rs) { _rs = rs; } }; + #endif // SHARE_VM_MEMORY_CARDTABLEMODREFBS_HPP diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/cardTableRS.cpp --- a/hotspot/src/share/vm/memory/cardTableRS.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/cardTableRS.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -105,107 +105,111 @@ g->younger_refs_iterate(blk); } -class ClearNoncleanCardWrapper: public MemRegionClosure { - MemRegionClosure* _dirty_card_closure; - CardTableRS* _ct; - bool _is_par; -private: - // Clears the given card, return true if the corresponding card should be - // processed. - bool clear_card(jbyte* entry) { - if (_is_par) { - while (true) { - // In the parallel case, we may have to do this several times. - jbyte entry_val = *entry; - assert(entry_val != CardTableRS::clean_card_val(), - "We shouldn't be looking at clean cards, and this should " - "be the only place they get cleaned."); - if (CardTableRS::card_is_dirty_wrt_gen_iter(entry_val) - || _ct->is_prev_youngergen_card_val(entry_val)) { - jbyte res = - Atomic::cmpxchg(CardTableRS::clean_card_val(), entry, entry_val); - if (res == entry_val) { - break; - } else { - assert(res == CardTableRS::cur_youngergen_and_prev_nonclean_card, - "The CAS above should only fail if another thread did " - "a GC write barrier."); - } - } else if (entry_val == - CardTableRS::cur_youngergen_and_prev_nonclean_card) { - // Parallelism shouldn't matter in this case. Only the thread - // assigned to scan the card should change this value. - *entry = _ct->cur_youngergen_card_val(); - break; - } else { - assert(entry_val == _ct->cur_youngergen_card_val(), - "Should be the only possibility."); - // In this case, the card was clean before, and become - // cur_youngergen only because of processing of a promoted object. - // We don't have to look at the card. - return false; - } +inline bool ClearNoncleanCardWrapper::clear_card(jbyte* entry) { + if (_is_par) { + return clear_card_parallel(entry); + } else { + return clear_card_serial(entry); + } +} + +inline bool ClearNoncleanCardWrapper::clear_card_parallel(jbyte* entry) { + while (true) { + // In the parallel case, we may have to do this several times. + jbyte entry_val = *entry; + assert(entry_val != CardTableRS::clean_card_val(), + "We shouldn't be looking at clean cards, and this should " + "be the only place they get cleaned."); + if (CardTableRS::card_is_dirty_wrt_gen_iter(entry_val) + || _ct->is_prev_youngergen_card_val(entry_val)) { + jbyte res = + Atomic::cmpxchg(CardTableRS::clean_card_val(), entry, entry_val); + if (res == entry_val) { + break; + } else { + assert(res == CardTableRS::cur_youngergen_and_prev_nonclean_card, + "The CAS above should only fail if another thread did " + "a GC write barrier."); } - return true; + } else if (entry_val == + CardTableRS::cur_youngergen_and_prev_nonclean_card) { + // Parallelism shouldn't matter in this case. Only the thread + // assigned to scan the card should change this value. + *entry = _ct->cur_youngergen_card_val(); + break; } else { - jbyte entry_val = *entry; - assert(entry_val != CardTableRS::clean_card_val(), - "We shouldn't be looking at clean cards, and this should " - "be the only place they get cleaned."); - assert(entry_val != CardTableRS::cur_youngergen_and_prev_nonclean_card, - "This should be possible in the sequential case."); - *entry = CardTableRS::clean_card_val(); - return true; + assert(entry_val == _ct->cur_youngergen_card_val(), + "Should be the only possibility."); + // In this case, the card was clean before, and become + // cur_youngergen only because of processing of a promoted object. + // We don't have to look at the card. + return false; } } + return true; +} -public: - ClearNoncleanCardWrapper(MemRegionClosure* dirty_card_closure, - CardTableRS* ct) : + +inline bool ClearNoncleanCardWrapper::clear_card_serial(jbyte* entry) { + jbyte entry_val = *entry; + assert(entry_val != CardTableRS::clean_card_val(), + "We shouldn't be looking at clean cards, and this should " + "be the only place they get cleaned."); + assert(entry_val != CardTableRS::cur_youngergen_and_prev_nonclean_card, + "This should be possible in the sequential case."); + *entry = CardTableRS::clean_card_val(); + return true; +} + +ClearNoncleanCardWrapper::ClearNoncleanCardWrapper( + MemRegionClosure* dirty_card_closure, CardTableRS* ct) : _dirty_card_closure(dirty_card_closure), _ct(ct) { _is_par = (SharedHeap::heap()->n_par_threads() > 0); +} + +void ClearNoncleanCardWrapper::do_MemRegion(MemRegion mr) { + assert(mr.word_size() > 0, "Error"); + assert(_ct->is_aligned(mr.start()), "mr.start() should be card aligned"); + // mr.end() may not necessarily be card aligned. + jbyte* cur_entry = _ct->byte_for(mr.last()); + const jbyte* limit = _ct->byte_for(mr.start()); + HeapWord* end_of_non_clean = mr.end(); + HeapWord* start_of_non_clean = end_of_non_clean; + while (cur_entry >= limit) { + HeapWord* cur_hw = _ct->addr_for(cur_entry); + if ((*cur_entry != CardTableRS::clean_card_val()) && clear_card(cur_entry)) { + // Continue the dirty range by opening the + // dirty window one card to the left. + start_of_non_clean = cur_hw; + } else { + // We hit a "clean" card; process any non-empty + // "dirty" range accumulated so far. + if (start_of_non_clean < end_of_non_clean) { + const MemRegion mrd(start_of_non_clean, end_of_non_clean); + _dirty_card_closure->do_MemRegion(mrd); + } + // Reset the dirty window, while continuing to look + // for the next dirty card that will start a + // new dirty window. + end_of_non_clean = cur_hw; + start_of_non_clean = cur_hw; + } + // Note that "cur_entry" leads "start_of_non_clean" in + // its leftward excursion after this point + // in the loop and, when we hit the left end of "mr", + // will point off of the left end of the card-table + // for "mr". + cur_entry--; } - void do_MemRegion(MemRegion mr) { - // We start at the high end of "mr", walking backwards - // while accumulating a contiguous dirty range of cards in - // [start_of_non_clean, end_of_non_clean) which we then - // process en masse. - HeapWord* end_of_non_clean = mr.end(); - HeapWord* start_of_non_clean = end_of_non_clean; - jbyte* entry = _ct->byte_for(mr.last()); - const jbyte* first_entry = _ct->byte_for(mr.start()); - while (entry >= first_entry) { - HeapWord* cur = _ct->addr_for(entry); - if (!clear_card(entry)) { - // We hit a clean card; process any non-empty - // dirty range accumulated so far. - if (start_of_non_clean < end_of_non_clean) { - MemRegion mr2(start_of_non_clean, end_of_non_clean); - _dirty_card_closure->do_MemRegion(mr2); - } - // Reset the dirty window while continuing to - // look for the next dirty window to process. - end_of_non_clean = cur; - start_of_non_clean = end_of_non_clean; - } - // Open the left end of the window one card to the left. - start_of_non_clean = cur; - // Note that "entry" leads "start_of_non_clean" in - // its leftward excursion after this point - // in the loop and, when we hit the left end of "mr", - // will point off of the left end of the card-table - // for "mr". - entry--; - } - // If the first card of "mr" was dirty, we will have - // been left with a dirty window, co-initial with "mr", - // which we now process. - if (start_of_non_clean < end_of_non_clean) { - MemRegion mr2(start_of_non_clean, end_of_non_clean); - _dirty_card_closure->do_MemRegion(mr2); - } + // If the first card of "mr" was dirty, we will have + // been left with a dirty window, co-initial with "mr", + // which we now process. + if (start_of_non_clean < end_of_non_clean) { + const MemRegion mrd(start_of_non_clean, end_of_non_clean); + _dirty_card_closure->do_MemRegion(mrd); } -}; +} + // clean (by dirty->clean before) ==> cur_younger_gen // dirty ==> cur_youngergen_and_prev_nonclean_card // precleaned ==> cur_youngergen_and_prev_nonclean_card @@ -246,8 +250,35 @@ cl->gen_boundary()); ClearNoncleanCardWrapper clear_cl(dcto_cl, this); - _ct_bs->non_clean_card_iterate(sp, sp->used_region_at_save_marks(), - dcto_cl, &clear_cl); + const MemRegion urasm = sp->used_region_at_save_marks(); +#ifdef ASSERT + // Convert the assertion check to a warning if we are running + // CMS+ParNew until related bug is fixed. + MemRegion ur = sp->used_region(); + assert(ur.contains(urasm) || (UseConcMarkSweepGC && UseParNewGC), + err_msg("Did you forget to call save_marks()? " + "[" PTR_FORMAT ", " PTR_FORMAT ") is not contained in " + "[" PTR_FORMAT ", " PTR_FORMAT ")", + urasm.start(), urasm.end(), ur.start(), ur.end())); + // In the case of CMS+ParNew, issue a warning + if (!ur.contains(urasm)) { + assert(UseConcMarkSweepGC && UseParNewGC, "Tautology: see assert above"); + warning("CMS+ParNew: Did you forget to call save_marks()? " + "[" PTR_FORMAT ", " PTR_FORMAT ") is not contained in " + "[" PTR_FORMAT ", " PTR_FORMAT ")", + urasm.start(), urasm.end(), ur.start(), ur.end()); + MemRegion ur2 = sp->used_region(); + MemRegion urasm2 = sp->used_region_at_save_marks(); + if (!ur.equals(ur2)) { + warning("CMS+ParNew: Flickering used_region()!!"); + } + if (!urasm.equals(urasm2)) { + warning("CMS+ParNew: Flickering used_region_at_save_marks()!!"); + } + } +#endif + _ct_bs->non_clean_card_iterate_possibly_parallel(sp, urasm, + dcto_cl, &clear_cl); } void CardTableRS::clear_into_younger(Generation* gen, bool clear_perm) { diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/cardTableRS.hpp --- a/hotspot/src/share/vm/memory/cardTableRS.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/cardTableRS.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -166,4 +166,21 @@ }; +class ClearNoncleanCardWrapper: public MemRegionClosure { + MemRegionClosure* _dirty_card_closure; + CardTableRS* _ct; + bool _is_par; +private: + // Clears the given card, return true if the corresponding card should be + // processed. + inline bool clear_card(jbyte* entry); + // Work methods called by the clear_card() + inline bool clear_card_serial(jbyte* entry); + inline bool clear_card_parallel(jbyte* entry); + +public: + ClearNoncleanCardWrapper(MemRegionClosure* dirty_card_closure, CardTableRS* ct); + void do_MemRegion(MemRegion mr); +}; + #endif // SHARE_VM_MEMORY_CARDTABLERS_HPP diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/genCollectedHeap.hpp --- a/hotspot/src/share/vm/memory/genCollectedHeap.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/genCollectedHeap.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -427,13 +427,13 @@ // explicitly mark reachable objects in younger generations, to avoid // excess storage retention.) If "collecting_perm_gen" is false, then // roots that may only contain references to permGen objects are not - // scanned. The "so" argument determines which of the roots + // scanned; instead, the older_gens closure is applied to all outgoing + // references in the perm gen. The "so" argument determines which of the roots // the closure is applied to: // "SO_None" does none; // "SO_AllClasses" applies the closure to all entries in the SystemDictionary; // "SO_SystemClasses" to all the "system" classes and loaders; - // "SO_Symbols_and_Strings" applies the closure to all entries in - // SymbolsTable and StringTable. + // "SO_Strings" applies the closure to all entries in the StringTable. void gen_process_strong_roots(int level, bool younger_gens_as_roots, // The remaining arguments are in an order diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/genOopClosures.hpp --- a/hotspot/src/share/vm/memory/genOopClosures.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/genOopClosures.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -175,7 +175,7 @@ protected: template inline void do_oop_work(T* p) { oop obj = oopDesc::load_decode_heap_oop(p); - guarantee(obj->is_oop_or_null(), "invalid oop"); + guarantee(obj->is_oop_or_null(), err_msg("invalid oop: " INTPTR_FORMAT, obj)); } public: virtual void do_oop(oop* p); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/sharedHeap.cpp --- a/hotspot/src/share/vm/memory/sharedHeap.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/sharedHeap.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -46,7 +46,6 @@ SH_PS_Management_oops_do, SH_PS_SystemDictionary_oops_do, SH_PS_jvmti_oops_do, - SH_PS_SymbolTable_oops_do, SH_PS_StringTable_oops_do, SH_PS_CodeCache_oops_do, // Leave this one last. @@ -161,13 +160,9 @@ if (!_process_strong_tasks->is_task_claimed(SH_PS_SystemDictionary_oops_do)) { if (so & SO_AllClasses) { SystemDictionary::oops_do(roots); - } else - if (so & SO_SystemClasses) { - SystemDictionary::always_strong_oops_do(roots); - } - } - - if (!_process_strong_tasks->is_task_claimed(SH_PS_SymbolTable_oops_do)) { + } else if (so & SO_SystemClasses) { + SystemDictionary::always_strong_oops_do(roots); + } } if (!_process_strong_tasks->is_task_claimed(SH_PS_StringTable_oops_do)) { diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/memory/sharedHeap.hpp --- a/hotspot/src/share/vm/memory/sharedHeap.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/memory/sharedHeap.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -192,9 +192,8 @@ SO_None = 0x0, SO_AllClasses = 0x1, SO_SystemClasses = 0x2, - SO_Symbols = 0x4, - SO_Strings = 0x8, - SO_CodeCache = 0x10 + SO_Strings = 0x4, + SO_CodeCache = 0x8 }; FlexibleWorkGang* workers() const { return _workers; } @@ -208,14 +207,13 @@ // Invoke the "do_oop" method the closure "roots" on all root locations. // If "collecting_perm_gen" is false, then roots that may only contain - // references to permGen objects are not scanned. If true, the - // "perm_gen" closure is applied to all older-to-younger refs in the + // references to permGen objects are not scanned; instead, in that case, + // the "perm_blk" closure is applied to all outgoing refs in the // permanent generation. The "so" argument determines which of roots // the closure is applied to: // "SO_None" does none; // "SO_AllClasses" applies the closure to all entries in the SystemDictionary; // "SO_SystemClasses" to all the "system" classes and loaders; - // "SO_Symbols" applies the closure to all entries in SymbolsTable; // "SO_Strings" applies the closure to all entries in StringTable; // "SO_CodeCache" applies the closure to all elements of the CodeCache. void process_strong_roots(bool activate_scope, diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/oops/cpCacheOop.cpp --- a/hotspot/src/share/vm/oops/cpCacheOop.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/oops/cpCacheOop.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -104,7 +104,7 @@ void* result = Atomic::cmpxchg_ptr(f1, f1_addr, NULL); bool success = (result == NULL); if (success) { - update_barrier_set(f1_addr, f1); + update_barrier_set((void*) f1_addr, f1); } } @@ -275,21 +275,23 @@ return (int) bsm_cache_index; } -void ConstantPoolCacheEntry::set_dynamic_call(Handle call_site, - methodHandle signature_invoker) { +void ConstantPoolCacheEntry::set_dynamic_call(Handle call_site, methodHandle signature_invoker) { assert(is_secondary_entry(), ""); + // NOTE: it's important that all other values are set before f1 is + // set since some users short circuit on f1 being set + // (i.e. non-null) and that may result in uninitialized values for + // other racing threads (e.g. flags). int param_size = signature_invoker->size_of_parameters(); assert(param_size >= 1, "method argument size must include MH.this"); - param_size -= 1; // do not count MH.this; it is not stacked for invokedynamic - if (Atomic::cmpxchg_ptr(call_site(), &_f1, NULL) == NULL) { - // racing threads might be trying to install their own favorites - set_f1(call_site()); - } + param_size -= 1; // do not count MH.this; it is not stacked for invokedynamic bool is_final = true; assert(signature_invoker->is_final_method(), "is_final"); - set_flags(as_flags(as_TosState(signature_invoker->result_type()), is_final, false, false, false, true) | param_size); + int flags = as_flags(as_TosState(signature_invoker->result_type()), is_final, false, false, false, true) | param_size; + assert(_flags == 0 || _flags == flags, "flags should be the same"); + set_flags(flags); // do not do set_bytecode on a secondary CP cache entry //set_bytecode_1(Bytecodes::_invokedynamic); + set_f1_if_null_atomic(call_site()); // This must be the last one to set (see NOTE above)! } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/escape.cpp --- a/hotspot/src/share/vm/opto/escape.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/escape.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1437,7 +1437,10 @@ // Update the memory inputs of MemNodes with the value we computed // in Phase 2 and move stores memory users to corresponding memory slices. -#ifdef ASSERT + + // Disable memory split verification code until the fix for 6984348. + // Currently it produces false negative results since it does not cover all cases. +#if 0 // ifdef ASSERT visited.Reset(); Node_Stack old_mems(arena, _compile->unique() >> 2); #endif @@ -1447,7 +1450,7 @@ Node *n = ptnode_adr(i)->_node; assert(n != NULL, "sanity"); if (n->is_Mem()) { -#ifdef ASSERT +#if 0 // ifdef ASSERT Node* old_mem = n->in(MemNode::Memory); if (!visited.test_set(old_mem->_idx)) { old_mems.push(old_mem, old_mem->outcnt()); @@ -1469,13 +1472,13 @@ } } } -#ifdef ASSERT +#if 0 // ifdef ASSERT // Verify that memory was split correctly while (old_mems.is_nonempty()) { Node* old_mem = old_mems.node(); uint old_cnt = old_mems.index(); old_mems.pop(); - assert(old_cnt = old_mem->outcnt(), "old mem could be lost"); + assert(old_cnt == old_mem->outcnt(), "old mem could be lost"); } #endif } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/graphKit.cpp --- a/hotspot/src/share/vm/opto/graphKit.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/graphKit.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1033,14 +1033,10 @@ iter.reset_to_bci(bci()); iter.next(); ciMethod* method = iter.get_method(ignore); - inputs = method->arg_size_no_receiver(); - // Add a receiver argument, maybe: - if (code != Bytecodes::_invokestatic && - code != Bytecodes::_invokedynamic) - inputs += 1; // (Do not use ciMethod::arg_size(), because // it might be an unloaded method, which doesn't // know whether it is static or not.) + inputs = method->invoke_arg_size(code); int size = method->return_type()->size(); depth = size - inputs; } @@ -2957,8 +2953,7 @@ //---------------------------set_output_for_allocation------------------------- Node* GraphKit::set_output_for_allocation(AllocateNode* alloc, - const TypeOopPtr* oop_type, - bool raw_mem_only) { + const TypeOopPtr* oop_type) { int rawidx = Compile::AliasIdxRaw; alloc->set_req( TypeFunc::FramePtr, frameptr() ); add_safepoint_edges(alloc); @@ -2982,7 +2977,7 @@ rawoop)->as_Initialize(); assert(alloc->initialization() == init, "2-way macro link must work"); assert(init ->allocation() == alloc, "2-way macro link must work"); - if (ReduceFieldZeroing && !raw_mem_only) { + { // Extract memory strands which may participate in the new object's // initialization, and source them from the new InitializeNode. // This will allow us to observe initializations when they occur, @@ -3043,11 +3038,9 @@ // the type to a constant. // The optional arguments are for specialized use by intrinsics: // - If 'extra_slow_test' if not null is an extra condition for the slow-path. -// - If 'raw_mem_only', do not cast the result to an oop. // - If 'return_size_val', report the the total object size to the caller. Node* GraphKit::new_instance(Node* klass_node, Node* extra_slow_test, - bool raw_mem_only, // affect only raw memory Node* *return_size_val) { // Compute size in doublewords // The size is always an integral number of doublewords, represented @@ -3118,7 +3111,7 @@ size, klass_node, initial_slow_test); - return set_output_for_allocation(alloc, oop_type, raw_mem_only); + return set_output_for_allocation(alloc, oop_type); } //-------------------------------new_array------------------------------------- @@ -3128,7 +3121,6 @@ Node* GraphKit::new_array(Node* klass_node, // array klass (maybe variable) Node* length, // number of array elements int nargs, // number of arguments to push back for uncommon trap - bool raw_mem_only, // affect only raw memory Node* *return_size_val) { jint layout_con = Klass::_lh_neutral_value; Node* layout_val = get_layout_helper(klass_node, layout_con); @@ -3273,7 +3265,7 @@ ary_type = ary_type->is_aryptr()->cast_to_size(length_type); } - Node* javaoop = set_output_for_allocation(alloc, ary_type, raw_mem_only); + Node* javaoop = set_output_for_allocation(alloc, ary_type); // Cast length on remaining path to be as narrow as possible if (map()->find_edge(length) >= 0) { @@ -3462,9 +3454,22 @@ // Get the alias_index for raw card-mark memory int adr_type = Compile::AliasIdxRaw; + Node* zero = __ ConI(0); // Dirty card value + BasicType bt = T_BYTE; + + if (UseCondCardMark) { + // The classic GC reference write barrier is typically implemented + // as a store into the global card mark table. Unfortunately + // unconditional stores can result in false sharing and excessive + // coherence traffic as well as false transactional aborts. + // UseCondCardMark enables MP "polite" conditional card mark + // stores. In theory we could relax the load from ctrl() to + // no_ctrl, but that doesn't buy much latitude. + Node* card_val = __ load( __ ctrl(), card_adr, TypeInt::BYTE, bt, adr_type); + __ if_then(card_val, BoolTest::ne, zero); + } + // Smash zero into card - Node* zero = __ ConI(0); - BasicType bt = T_BYTE; if( !UseConcMarkSweepGC ) { __ store(__ ctrl(), card_adr, zero, bt, adr_type); } else { @@ -3472,6 +3477,10 @@ __ storeCM(__ ctrl(), card_adr, zero, oop_store, adr_idx, bt, adr_type); } + if (UseCondCardMark) { + __ end_if(); + } + // Final sync IdealKit and GraphKit. final_sync(ideal); } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/graphKit.hpp --- a/hotspot/src/share/vm/opto/graphKit.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/graphKit.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -773,15 +773,13 @@ // implementation of object creation Node* set_output_for_allocation(AllocateNode* alloc, - const TypeOopPtr* oop_type, - bool raw_mem_only); + const TypeOopPtr* oop_type); Node* get_layout_helper(Node* klass_node, jint& constant_value); Node* new_instance(Node* klass_node, Node* slow_test = NULL, - bool raw_mem_only = false, Node* *return_size_val = NULL); Node* new_array(Node* klass_node, Node* count_val, int nargs, - bool raw_mem_only = false, Node* *return_size_val = NULL); + Node* *return_size_val = NULL); // Handy for making control flow IfNode* create_and_map_if(Node* ctrl, Node* tst, float prob, float cnt) { diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/library_call.cpp --- a/hotspot/src/share/vm/opto/library_call.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/library_call.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -3527,8 +3527,7 @@ Node* orig_tail = _gvn.transform( new(C, 3) SubINode(orig_length, start) ); Node* moved = generate_min_max(vmIntrinsics::_min, orig_tail, length); - const bool raw_mem_only = true; - newcopy = new_array(klass_node, length, 0, raw_mem_only); + newcopy = new_array(klass_node, length, 0); // Generate a direct call to the right arraycopy function(s). // We know the copy is disjoint but we might not know if the @@ -4325,8 +4324,6 @@ const TypePtr* raw_adr_type = TypeRawPtr::BOTTOM; int raw_adr_idx = Compile::AliasIdxRaw; - const bool raw_mem_only = true; - Node* array_ctl = generate_array_guard(obj_klass, (RegionNode*)NULL); if (array_ctl != NULL) { @@ -4335,8 +4332,7 @@ set_control(array_ctl); Node* obj_length = load_array_length(obj); Node* obj_size = NULL; - Node* alloc_obj = new_array(obj_klass, obj_length, 0, - raw_mem_only, &obj_size); + Node* alloc_obj = new_array(obj_klass, obj_length, 0, &obj_size); if (!use_ReduceInitialCardMarks()) { // If it is an oop array, it requires very special treatment, @@ -4408,7 +4404,7 @@ // It's an instance, and it passed the slow-path tests. PreserveJVMState pjvms(this); Node* obj_size = NULL; - Node* alloc_obj = new_instance(obj_klass, NULL, raw_mem_only, &obj_size); + Node* alloc_obj = new_instance(obj_klass, NULL, &obj_size); copy_to_clone(obj, alloc_obj, obj_size, false, !use_ReduceInitialCardMarks()); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/loopopts.cpp --- a/hotspot/src/share/vm/opto/loopopts.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/loopopts.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -2262,6 +2262,9 @@ // stmt1 // | // v +// loop predicate +// | +// v // stmt2 clone // | // v @@ -2272,9 +2275,6 @@ // : false true // : | | // : | v -// : | loop predicate -// : | | -// : | v // : | newloop<-----+ // : | | | // : | stmt3 clone | @@ -2330,7 +2330,6 @@ } } - Node* entry = head->in(LoopNode::EntryControl); int dd = dom_depth(head); // Step 1: find cut point @@ -2627,8 +2626,6 @@ // Backedge of the surviving new_head (the clone) is original last_peel _igvn.hash_delete(new_head_clone); - Node* new_entry = move_loop_predicates(entry, new_head_clone->in(LoopNode::EntryControl)); - new_head_clone->set_req(LoopNode::EntryControl, new_entry); new_head_clone->set_req(LoopNode::LoopBackControl, last_peel); _igvn._worklist.push(new_head_clone); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/macro.cpp --- a/hotspot/src/share/vm/opto/macro.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/macro.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -221,9 +221,16 @@ Node *shift = p2x->unique_out(); Node *addp = shift->unique_out(); for (DUIterator_Last jmin, j = addp->last_outs(jmin); j >= jmin; --j) { - Node *st = addp->last_out(j); - assert(st->is_Store(), "store required"); - _igvn.replace_node(st, st->in(MemNode::Memory)); + Node *mem = addp->last_out(j); + if (UseCondCardMark && mem->is_Load()) { + assert(mem->Opcode() == Op_LoadB, "unexpected code shape"); + // The load is checking if the card has been written so + // replace it with zero to fold the test. + _igvn.replace_node(mem, intcon(0)); + continue; + } + assert(mem->is_Store(), "store required"); + _igvn.replace_node(mem, mem->in(MemNode::Memory)); } } else { // G1 pre/post barriers diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/memnode.cpp --- a/hotspot/src/share/vm/opto/memnode.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/memnode.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1259,15 +1259,18 @@ return NULL; // Wait stable graph } uint cnt = mem->req(); - for( uint i = 1; i < cnt; i++ ) { + for (uint i = 1; i < cnt; i++) { + Node* rc = region->in(i); + if (rc == NULL || phase->type(rc) == Type::TOP) + return NULL; // Wait stable graph Node *in = mem->in(i); - if( in == NULL ) { + if (in == NULL) { return NULL; // Wait stable graph } } // Check for loop invariant. if (cnt == 3) { - for( uint i = 1; i < cnt; i++ ) { + for (uint i = 1; i < cnt; i++) { Node *in = mem->in(i); Node* m = MemNode::optimize_memory_chain(in, addr_t, phase); if (m == mem) { @@ -1281,38 +1284,37 @@ // Do nothing here if Identity will find a value // (to avoid infinite chain of value phis generation). - if ( !phase->eqv(this, this->Identity(phase)) ) + if (!phase->eqv(this, this->Identity(phase))) return NULL; // Skip the split if the region dominates some control edge of the address. - if (cnt == 3 && !MemNode::all_controls_dominate(address, region)) + if (!MemNode::all_controls_dominate(address, region)) return NULL; const Type* this_type = this->bottom_type(); int this_index = phase->C->get_alias_index(addr_t); int this_offset = addr_t->offset(); int this_iid = addr_t->is_oopptr()->instance_id(); - int wins = 0; PhaseIterGVN *igvn = phase->is_IterGVN(); Node *phi = new (igvn->C, region->req()) PhiNode(region, this_type, NULL, this_iid, this_index, this_offset); - for( uint i = 1; i < region->req(); i++ ) { + for (uint i = 1; i < region->req(); i++) { Node *x; Node* the_clone = NULL; - if( region->in(i) == phase->C->top() ) { + if (region->in(i) == phase->C->top()) { x = phase->C->top(); // Dead path? Use a dead data op } else { x = this->clone(); // Else clone up the data op the_clone = x; // Remember for possible deletion. // Alter data node to use pre-phi inputs - if( this->in(0) == region ) { - x->set_req( 0, region->in(i) ); + if (this->in(0) == region) { + x->set_req(0, region->in(i)); } else { - x->set_req( 0, NULL ); + x->set_req(0, NULL); } - for( uint j = 1; j < this->req(); j++ ) { + for (uint j = 1; j < this->req(); j++) { Node *in = this->in(j); - if( in->is_Phi() && in->in(0) == region ) - x->set_req( j, in->in(i) ); // Use pre-Phi input for the clone + if (in->is_Phi() && in->in(0) == region) + x->set_req(j, in->in(i)); // Use pre-Phi input for the clone } } // Check for a 'win' on some paths @@ -1321,12 +1323,11 @@ bool singleton = t->singleton(); // See comments in PhaseIdealLoop::split_thru_phi(). - if( singleton && t == Type::TOP ) { + if (singleton && t == Type::TOP) { singleton &= region->is_Loop() && (i != LoopNode::EntryControl); } - if( singleton ) { - wins++; + if (singleton) { x = igvn->makecon(t); } else { // We now call Identity to try to simplify the cloned node. @@ -1340,13 +1341,11 @@ // igvn->type(x) is set to x->Value() already. x->raise_bottom_type(t); Node *y = x->Identity(igvn); - if( y != x ) { - wins++; + if (y != x) { x = y; } else { y = igvn->hash_find(x); - if( y ) { - wins++; + if (y) { x = y; } else { // Else x is a new node we are keeping @@ -1360,13 +1359,9 @@ igvn->remove_dead_node(the_clone); phi->set_req(i, x); } - if( wins > 0 ) { - // Record Phi - igvn->register_new_node_with_optimizer(phi); - return phi; - } - igvn->remove_dead_node(phi); - return NULL; + // Record Phi + igvn->register_new_node_with_optimizer(phi); + return phi; } //------------------------------Ideal------------------------------------------ @@ -1677,14 +1672,15 @@ // If we are loading from a freshly-allocated object, produce a zero, // if the load is provably beyond the header of the object. // (Also allow a variable load from a fresh array to produce zero.) - if (ReduceFieldZeroing) { + const TypeOopPtr *tinst = tp->isa_oopptr(); + bool is_instance = (tinst != NULL) && tinst->is_known_instance_field(); + if (ReduceFieldZeroing || is_instance) { Node* value = can_see_stored_value(mem,phase); if (value != NULL && value->is_Con()) return value->bottom_type(); } - const TypeOopPtr *tinst = tp->isa_oopptr(); - if (tinst != NULL && tinst->is_known_instance_field()) { + if (is_instance) { // If we have an instance type and our memory input is the // programs's initial memory state, there is no matching store, // so just return a zero of the appropriate type diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/opto/stringopts.cpp --- a/hotspot/src/share/vm/opto/stringopts.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/opto/stringopts.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1172,16 +1172,16 @@ Node* PhaseStringOpts::copy_string(GraphKit& kit, Node* str, Node* char_array, Node* start) { Node* string = str; - Node* offset = kit.make_load(NULL, + Node* offset = kit.make_load(kit.control(), kit.basic_plus_adr(string, string, java_lang_String::offset_offset_in_bytes()), TypeInt::INT, T_INT, offset_field_idx); - Node* count = kit.make_load(NULL, + Node* count = kit.make_load(kit.control(), kit.basic_plus_adr(string, string, java_lang_String::count_offset_in_bytes()), TypeInt::INT, T_INT, count_field_idx); const TypeAryPtr* value_type = TypeAryPtr::make(TypePtr::NotNull, TypeAry::make(TypeInt::CHAR,TypeInt::POS), ciTypeArrayKlass::make(T_CHAR), true, 0); - Node* value = kit.make_load(NULL, + Node* value = kit.make_load(kit.control(), kit.basic_plus_adr(string, string, java_lang_String::value_offset_in_bytes()), value_type, T_OBJECT, value_field_idx); @@ -1342,7 +1342,7 @@ } // Node* offset = kit.make_load(NULL, kit.basic_plus_adr(arg, arg, offset_offset), // TypeInt::INT, T_INT, offset_field_idx); - Node* count = kit.make_load(NULL, kit.basic_plus_adr(arg, arg, java_lang_String::count_offset_in_bytes()), + Node* count = kit.make_load(kit.control(), kit.basic_plus_adr(arg, arg, java_lang_String::count_offset_in_bytes()), TypeInt::INT, T_INT, count_field_idx); length = __ AddI(length, count); string_sizes->init_req(argi, NULL); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/prims/methodHandleWalk.cpp --- a/hotspot/src/share/vm/prims/methodHandleWalk.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/prims/methodHandleWalk.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -82,10 +82,8 @@ void MethodHandleChain::set_last_method(oop target, TRAPS) { _is_last = true; - klassOop receiver_limit_oop = NULL; - int flags = 0; - methodOop m = MethodHandles::decode_method(target, receiver_limit_oop, flags); - _last_method = methodHandle(THREAD, m); + KlassHandle receiver_limit; int flags = 0; + _last_method = MethodHandles::decode_method(target, receiver_limit, flags); if ((flags & MethodHandles::_dmf_has_receiver) == 0) _last_invoke = Bytecodes::_invokestatic; else if ((flags & MethodHandles::_dmf_does_dispatch) == 0) diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/prims/methodHandles.cpp --- a/hotspot/src/share/vm/prims/methodHandles.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/prims/methodHandles.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -153,9 +153,9 @@ // and local, like parse a data structure. For speed, such methods work on plain // oops, not handles. Trapping methods uniformly operate on handles. -methodOop MethodHandles::decode_vmtarget(oop vmtarget, int vmindex, oop mtype, - klassOop& receiver_limit_result, int& decode_flags_result) { - if (vmtarget == NULL) return NULL; +methodHandle MethodHandles::decode_vmtarget(oop vmtarget, int vmindex, oop mtype, + KlassHandle& receiver_limit_result, int& decode_flags_result) { + if (vmtarget == NULL) return methodHandle(); assert(methodOopDesc::nonvirtual_vtable_index < 0, "encoding"); if (vmindex < 0) { // this DMH performs no dispatch; it is directly bound to a methodOop @@ -198,20 +198,20 @@ // MemberName and DirectMethodHandle have the same linkage to the JVM internals. // (MemberName is the non-operational name used for queries and setup.) -methodOop MethodHandles::decode_DirectMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result) { +methodHandle MethodHandles::decode_DirectMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result) { oop vmtarget = java_lang_invoke_DirectMethodHandle::vmtarget(mh); int vmindex = java_lang_invoke_DirectMethodHandle::vmindex(mh); oop mtype = java_lang_invoke_DirectMethodHandle::type(mh); return decode_vmtarget(vmtarget, vmindex, mtype, receiver_limit_result, decode_flags_result); } -methodOop MethodHandles::decode_BoundMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result) { +methodHandle MethodHandles::decode_BoundMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result) { assert(java_lang_invoke_BoundMethodHandle::is_instance(mh), ""); assert(mh->klass() != SystemDictionary::AdapterMethodHandle_klass(), ""); for (oop bmh = mh;;) { // Bound MHs can be stacked to bind several arguments. oop target = java_lang_invoke_MethodHandle::vmtarget(bmh); - if (target == NULL) return NULL; + if (target == NULL) return methodHandle(); decode_flags_result |= MethodHandles::_dmf_binds_argument; klassOop tk = target->klass(); if (tk == SystemDictionary::BoundMethodHandle_klass()) { @@ -236,14 +236,14 @@ } } -methodOop MethodHandles::decode_AdapterMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result) { +methodHandle MethodHandles::decode_AdapterMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result) { assert(mh->klass() == SystemDictionary::AdapterMethodHandle_klass(), ""); for (oop amh = mh;;) { // Adapter MHs can be stacked to convert several arguments. int conv_op = adapter_conversion_op(java_lang_invoke_AdapterMethodHandle::conversion(amh)); decode_flags_result |= (_dmf_adapter_lsb << conv_op) & _DMF_ADAPTER_MASK; oop target = java_lang_invoke_MethodHandle::vmtarget(amh); - if (target == NULL) return NULL; + if (target == NULL) return methodHandle(); klassOop tk = target->klass(); if (tk == SystemDictionary::AdapterMethodHandle_klass()) { amh = target; @@ -255,8 +255,8 @@ } } -methodOop MethodHandles::decode_MethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result) { - if (mh == NULL) return NULL; +methodHandle MethodHandles::decode_MethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result) { + if (mh == NULL) return methodHandle(); klassOop mhk = mh->klass(); assert(java_lang_invoke_MethodHandle::is_subclass(mhk), "must be a MethodHandle"); if (mhk == SystemDictionary::DirectMethodHandle_klass()) { @@ -270,7 +270,7 @@ return decode_BoundMethodHandle(mh, receiver_limit_result, decode_flags_result); } else { assert(false, "cannot parse this MH"); - return NULL; // random MH? + return methodHandle(); // random MH? } } @@ -299,9 +299,9 @@ // A trusted party is handing us a cookie to determine a method. // Let's boil it down to the method oop they really want. -methodOop MethodHandles::decode_method(oop x, klassOop& receiver_limit_result, int& decode_flags_result) { +methodHandle MethodHandles::decode_method(oop x, KlassHandle& receiver_limit_result, int& decode_flags_result) { decode_flags_result = 0; - receiver_limit_result = NULL; + receiver_limit_result = KlassHandle(); klassOop xk = x->klass(); if (xk == Universe::methodKlassObj()) { return decode_methodOop((methodOop) x, decode_flags_result); @@ -329,7 +329,7 @@ assert(!x->is_method(), "already checked"); assert(!java_lang_invoke_MemberName::is_instance(x), "already checked"); } - return NULL; + return methodHandle(); } @@ -389,11 +389,10 @@ int offset = instanceKlass::cast(k)->offset_from_fields(slot); init_MemberName(mname_oop, k, accessFlags_from(mods), offset); } else { - int decode_flags = 0; klassOop receiver_limit = NULL; - methodOop m = MethodHandles::decode_method(target_oop, - receiver_limit, decode_flags); + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = MethodHandles::decode_method(target_oop, receiver_limit, decode_flags); bool do_dispatch = ((decode_flags & MethodHandles::_dmf_does_dispatch) != 0); - init_MemberName(mname_oop, m, do_dispatch); + init_MemberName(mname_oop, m(), do_dispatch); } } @@ -423,13 +422,14 @@ } -methodOop MethodHandles::decode_MemberName(oop mname, klassOop& receiver_limit_result, int& decode_flags_result) { +methodHandle MethodHandles::decode_MemberName(oop mname, KlassHandle& receiver_limit_result, int& decode_flags_result) { + methodHandle empty; int flags = java_lang_invoke_MemberName::flags(mname); - if ((flags & (IS_METHOD | IS_CONSTRUCTOR)) == 0) return NULL; // not invocable + if ((flags & (IS_METHOD | IS_CONSTRUCTOR)) == 0) return empty; // not invocable oop vmtarget = java_lang_invoke_MemberName::vmtarget(mname); int vmindex = java_lang_invoke_MemberName::vmindex(mname); - if (vmindex == VM_INDEX_UNINITIALIZED) return NULL; // not resolved - methodOop m = decode_vmtarget(vmtarget, vmindex, NULL, receiver_limit_result, decode_flags_result); + if (vmindex == VM_INDEX_UNINITIALIZED) return empty; // not resolved + methodHandle m = decode_vmtarget(vmtarget, vmindex, NULL, receiver_limit_result, decode_flags_result); oop clazz = java_lang_invoke_MemberName::clazz(mname); if (clazz != NULL && java_lang_Class::is_instance(clazz)) { klassOop klass = java_lang_Class::as_klassOop(clazz); @@ -439,9 +439,7 @@ } // convert the external string or reflective type to an internal signature -Symbol* MethodHandles::convert_to_signature(oop type_str, - bool polymorphic, - TRAPS) { +Symbol* MethodHandles::convert_to_signature(oop type_str, bool polymorphic, TRAPS) { if (java_lang_invoke_MethodType::is_instance(type_str)) { return java_lang_invoke_MethodType::as_signature(type_str, polymorphic, CHECK_NULL); } else if (java_lang_Class::is_instance(type_str)) { @@ -474,48 +472,48 @@ #endif if (java_lang_invoke_MemberName::vmindex(mname()) != VM_INDEX_UNINITIALIZED) return; // already resolved - oop defc_oop = java_lang_invoke_MemberName::clazz(mname()); - oop name_str = java_lang_invoke_MemberName::name(mname()); - oop type_str = java_lang_invoke_MemberName::type(mname()); - int flags = java_lang_invoke_MemberName::flags(mname()); + Handle defc_oop(THREAD, java_lang_invoke_MemberName::clazz(mname())); + Handle name_str(THREAD, java_lang_invoke_MemberName::name( mname())); + Handle type_str(THREAD, java_lang_invoke_MemberName::type( mname())); + int flags = java_lang_invoke_MemberName::flags(mname()); - if (defc_oop == NULL || name_str == NULL || type_str == NULL) { + if (defc_oop.is_null() || name_str.is_null() || type_str.is_null()) { THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), "nothing to resolve"); } - klassOop defc_klassOop = java_lang_Class::as_klassOop(defc_oop); - defc_oop = NULL; // safety - if (defc_klassOop == NULL) return; // a primitive; no resolution possible - if (!Klass::cast(defc_klassOop)->oop_is_instance()) { - if (!Klass::cast(defc_klassOop)->oop_is_array()) return; - defc_klassOop = SystemDictionary::Object_klass(); + + instanceKlassHandle defc; + { + klassOop defc_klassOop = java_lang_Class::as_klassOop(defc_oop()); + if (defc_klassOop == NULL) return; // a primitive; no resolution possible + if (!Klass::cast(defc_klassOop)->oop_is_instance()) { + if (!Klass::cast(defc_klassOop)->oop_is_array()) return; + defc_klassOop = SystemDictionary::Object_klass(); + } + defc = instanceKlassHandle(THREAD, defc_klassOop); } - instanceKlassHandle defc(THREAD, defc_klassOop); - defc_klassOop = NULL; // safety if (defc.is_null()) { THROW_MSG(vmSymbols::java_lang_InternalError(), "primitive class"); } - defc->link_class(CHECK); + defc->link_class(CHECK); // possible safepoint // convert the external string name to an internal symbol - TempNewSymbol name = java_lang_String::as_symbol_or_null(name_str); + TempNewSymbol name = java_lang_String::as_symbol_or_null(name_str()); if (name == NULL) return; // no such name - name_str = NULL; // safety Handle polymorphic_method_type; bool polymorphic_signature = false; if ((flags & ALL_KINDS) == IS_METHOD && (defc() == SystemDictionary::MethodHandle_klass() && - methodOopDesc::is_method_handle_invoke_name(name))) + methodOopDesc::is_method_handle_invoke_name(name))) { polymorphic_signature = true; + } // convert the external string or reflective type to an internal signature - TempNewSymbol type = convert_to_signature(type_str, polymorphic_signature, CHECK); - if (java_lang_invoke_MethodType::is_instance(type_str) && polymorphic_signature) { - polymorphic_method_type = Handle(THREAD, type_str); //preserve exactly + TempNewSymbol type = convert_to_signature(type_str(), polymorphic_signature, CHECK); + if (java_lang_invoke_MethodType::is_instance(type_str()) && polymorphic_signature) { + polymorphic_method_type = type_str; // preserve exactly } - if (type == NULL) return; // no such signature exists in the VM - type_str = NULL; // safety // Time to do the lookup. switch (flags & ALL_KINDS) { @@ -560,8 +558,8 @@ java_lang_invoke_MemberName::set_vmtarget(mname(), vmtarget); java_lang_invoke_MemberName::set_vmindex(mname(), vmindex); java_lang_invoke_MemberName::set_modifiers(mname(), mods); - DEBUG_ONLY(int junk; klassOop junk2); - assert(decode_MemberName(mname(), junk2, junk) == result.resolved_method()(), + DEBUG_ONLY(KlassHandle junk1; int junk2); + assert(decode_MemberName(mname(), junk1, junk2) == result.resolved_method(), "properly stored for later decoding"); return; } @@ -589,8 +587,8 @@ java_lang_invoke_MemberName::set_vmtarget(mname(), vmtarget); java_lang_invoke_MemberName::set_vmindex(mname(), vmindex); java_lang_invoke_MemberName::set_modifiers(mname(), mods); - DEBUG_ONLY(int junk; klassOop junk2); - assert(decode_MemberName(mname(), junk2, junk) == result.resolved_method()(), + DEBUG_ONLY(KlassHandle junk1; int junk2); + assert(decode_MemberName(mname(), junk1, junk2) == result.resolved_method(), "properly stored for later decoding"); return; } @@ -677,16 +675,14 @@ case IS_METHOD: case IS_CONSTRUCTOR: { - klassOop receiver_limit = NULL; - int decode_flags = 0; - methodHandle m(THREAD, decode_vmtarget(vmtarget, vmindex, NULL, - receiver_limit, decode_flags)); + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = decode_vmtarget(vmtarget, vmindex, NULL, receiver_limit, decode_flags); if (m.is_null()) break; if (!have_defc) { klassOop defc = m->method_holder(); - if (receiver_limit != NULL && receiver_limit != defc - && Klass::cast(receiver_limit)->is_subtype_of(defc)) - defc = receiver_limit; + if (receiver_limit.not_null() && receiver_limit() != defc + && Klass::cast(receiver_limit())->is_subtype_of(defc)) + defc = receiver_limit(); java_lang_invoke_MemberName::set_clazz(mname(), Klass::cast(defc)->java_mirror()); } if (!have_name) { @@ -884,10 +880,9 @@ // - AMH can have methodOop for static invoke with bound receiver // - DMH can have methodOop for static invoke (on variable receiver) // - DMH can have klassOop for dispatched (non-static) invoke - klassOop receiver_limit = NULL; - int decode_flags = 0; - methodOop m = decode_MethodHandle(mh(), receiver_limit, decode_flags); - if (m == NULL) return NULL; + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = decode_MethodHandle(mh(), receiver_limit, decode_flags); + if (m.is_null()) return NULL; switch (format) { case ETF_REFLECT_METHOD: // same as jni_ToReflectedMethod: @@ -903,10 +898,10 @@ if (SystemDictionary::MemberName_klass() == NULL) break; instanceKlassHandle mname_klass(THREAD, SystemDictionary::MemberName_klass()); mname_klass->initialize(CHECK_NULL); - Handle mname = mname_klass->allocate_instance_handle(CHECK_NULL); + Handle mname = mname_klass->allocate_instance_handle(CHECK_NULL); // possible safepoint java_lang_invoke_MemberName::set_vmindex(mname(), VM_INDEX_UNINITIALIZED); bool do_dispatch = ((decode_flags & MethodHandles::_dmf_does_dispatch) != 0); - init_MemberName(mname(), m, do_dispatch); + init_MemberName(mname(), m(), do_dispatch); expand_MemberName(mname, 0, CHECK_NULL); return mname(); } @@ -1459,8 +1454,8 @@ // that links the interpreter calls to the method. We need the same // bits, and will use the same calling sequence code. - int vmindex = methodOopDesc::garbage_vtable_index; - oop vmtarget = NULL; + int vmindex = methodOopDesc::garbage_vtable_index; + Handle vmtarget; instanceKlass::cast(m->method_holder())->link_class(CHECK); @@ -1478,7 +1473,7 @@ } else if (!do_dispatch || m->can_be_statically_bound()) { // We are simulating an invokestatic or invokespecial instruction. // Set up the method pointer, just like ConstantPoolCacheEntry::set_method(). - vmtarget = m(); + vmtarget = m; // this does not help dispatch, but it will make it possible to parse this MH: vmindex = methodOopDesc::nonvirtual_vtable_index; assert(vmindex < 0, "(>=0) == do_dispatch"); @@ -1490,7 +1485,7 @@ // For a DMH, it is done now, when the handle is created. Klass* k = Klass::cast(m->method_holder()); if (k->should_be_initialized()) { - k->initialize(CHECK); + k->initialize(CHECK); // possible safepoint } } } else { @@ -1504,10 +1499,10 @@ if (me == NULL) { THROW(vmSymbols::java_lang_InternalError()); } - java_lang_invoke_DirectMethodHandle::set_vmtarget(mh(), vmtarget); - java_lang_invoke_DirectMethodHandle::set_vmindex(mh(), vmindex); - DEBUG_ONLY(int flags; klassOop rlimit); - assert(MethodHandles::decode_method(mh(), rlimit, flags) == m(), + java_lang_invoke_DirectMethodHandle::set_vmtarget(mh(), vmtarget()); + java_lang_invoke_DirectMethodHandle::set_vmindex( mh(), vmindex); + DEBUG_ONLY(KlassHandle rlimit; int flags); + assert(MethodHandles::decode_method(mh(), rlimit, flags) == m, "properly stored for later decoding"); DEBUG_ONLY(bool actual_do_dispatch = ((flags & _dmf_does_dispatch) != 0)); assert(!(actual_do_dispatch && !do_dispatch), @@ -1523,10 +1518,13 @@ methodHandle m, TRAPS) { // Verify type. - oop receiver = java_lang_invoke_BoundMethodHandle::argument(mh()); + KlassHandle bound_recv_type; + { + oop receiver = java_lang_invoke_BoundMethodHandle::argument(mh()); + if (receiver != NULL) + bound_recv_type = KlassHandle(THREAD, receiver->klass()); + } Handle mtype(THREAD, java_lang_invoke_MethodHandle::type(mh())); - KlassHandle bound_recv_type; - if (receiver != NULL) bound_recv_type = KlassHandle(THREAD, receiver->klass()); verify_method_type(m, mtype, true, bound_recv_type, CHECK); int receiver_pos = m->size_of_parameters() - 1; @@ -1573,8 +1571,8 @@ java_lang_invoke_BoundMethodHandle::set_vmtarget(mh(), m()); - DEBUG_ONLY(int junk; klassOop junk2); - assert(MethodHandles::decode_method(mh(), junk2, junk) == m(), "properly stored for later decoding"); + DEBUG_ONLY(KlassHandle junk1; int junk2); + assert(MethodHandles::decode_method(mh(), junk1, junk2) == m, "properly stored for later decoding"); assert(decode_MethodHandle_stack_pushes(mh()) == 1, "BMH pushes one stack slot"); // Done! @@ -1682,8 +1680,11 @@ } // Get bound type and required slots. - oop ptype_oop = java_lang_invoke_MethodType::ptype(java_lang_invoke_MethodHandle::type(target()), argnum); - BasicType ptype = java_lang_Class::as_BasicType(ptype_oop); + BasicType ptype; + { + oop ptype_oop = java_lang_invoke_MethodType::ptype(java_lang_invoke_MethodHandle::type(target()), argnum); + ptype = java_lang_Class::as_BasicType(ptype_oop); + } int slots_pushed = type2size[ptype]; // If (a) the target is a direct non-dispatched method handle, @@ -1694,13 +1695,12 @@ if (OptimizeMethodHandles && target->klass() == SystemDictionary::DirectMethodHandle_klass() && (argnum == 0 || java_lang_invoke_DirectMethodHandle::vmindex(target()) < 0)) { - int decode_flags = 0; klassOop receiver_limit_oop = NULL; - methodHandle m(THREAD, decode_method(target(), receiver_limit_oop, decode_flags)); + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = decode_method(target(), receiver_limit, decode_flags); if (m.is_null()) { THROW_MSG(vmSymbols::java_lang_InternalError(), "DMH failed to decode"); } DEBUG_ONLY(int m_vmslots = m->size_of_parameters() - slots_pushed); // pos. of 1st arg. assert(java_lang_invoke_BoundMethodHandle::vmslots(mh()) == m_vmslots, "type w/ m sig"); if (argnum == 0 && (decode_flags & _dmf_has_receiver) != 0) { - KlassHandle receiver_limit(THREAD, receiver_limit_oop); init_BoundMethodHandle_with_receiver(mh, m, receiver_limit, decode_flags, CHECK); @@ -2019,7 +2019,6 @@ } void MethodHandles::init_AdapterMethodHandle(Handle mh, Handle target, int argnum, TRAPS) { - oop argument = java_lang_invoke_AdapterMethodHandle::argument(mh()); int argslot = java_lang_invoke_AdapterMethodHandle::vmargslot(mh()); jint conversion = java_lang_invoke_AdapterMethodHandle::conversion(mh()); jint conv_op = adapter_conversion_op(conversion); @@ -2215,18 +2214,14 @@ // which method are we really talking about? if (target_jh == NULL) { THROW(vmSymbols::java_lang_InternalError()); } - oop target_oop = JNIHandles::resolve_non_null(target_jh); - if (java_lang_invoke_MemberName::is_instance(target_oop) && - java_lang_invoke_MemberName::vmindex(target_oop) == VM_INDEX_UNINITIALIZED) { - Handle mname(THREAD, target_oop); - MethodHandles::resolve_MemberName(mname, CHECK); - target_oop = mname(); // in case of GC + Handle target(THREAD, JNIHandles::resolve_non_null(target_jh)); + if (java_lang_invoke_MemberName::is_instance(target()) && + java_lang_invoke_MemberName::vmindex(target()) == VM_INDEX_UNINITIALIZED) { + MethodHandles::resolve_MemberName(target, CHECK); } - int decode_flags = 0; klassOop receiver_limit = NULL; - methodHandle m(THREAD, - MethodHandles::decode_method(target_oop, - receiver_limit, decode_flags)); + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = MethodHandles::decode_method(target(), receiver_limit, decode_flags); if (m.is_null()) { THROW_MSG(vmSymbols::java_lang_InternalError(), "no such method"); } // The trusted Java code that calls this method should already have performed @@ -2284,12 +2279,8 @@ // Target object is a reflective method. (%%% Do we need this alternate path?) Untested("init_BMH of non-MH"); if (argnum != 0) { THROW(vmSymbols::java_lang_InternalError()); } - int decode_flags = 0; klassOop receiver_limit_oop = NULL; - methodHandle m(THREAD, - MethodHandles::decode_method(target(), - receiver_limit_oop, - decode_flags)); - KlassHandle receiver_limit(THREAD, receiver_limit_oop); + KlassHandle receiver_limit; int decode_flags = 0; + methodHandle m = MethodHandles::decode_method(target(), receiver_limit, decode_flags); MethodHandles::init_BoundMethodHandle_with_receiver(mh, m, receiver_limit, decode_flags, @@ -2424,12 +2415,12 @@ #ifndef PRODUCT if (which >= 0 && which < con_value_count) { int con = con_values[which]; - objArrayOop box = (objArrayOop) JNIHandles::resolve(box_jh); - if (box != NULL && box->klass() == Universe::objectArrayKlassObj() && box->length() > 0) { + objArrayHandle box(THREAD, (objArrayOop) JNIHandles::resolve(box_jh)); + if (box.not_null() && box->klass() == Universe::objectArrayKlassObj() && box->length() > 0) { const char* str = &con_names[0]; for (int i = 0; i < which; i++) str += strlen(str) + 1; // skip name and null - oop name = java_lang_String::create_oop_from_str(str, CHECK_0); + oop name = java_lang_String::create_oop_from_str(str, CHECK_0); // possible safepoint box->obj_at_put(0, name); } return con; @@ -2486,10 +2477,10 @@ jclass clazz_jh, jstring name_jh, jstring sig_jh, int mflags, jclass caller_jh, jint skip, jobjectArray results_jh)) { if (clazz_jh == NULL || results_jh == NULL) return -1; - klassOop k_oop = java_lang_Class::as_klassOop(JNIHandles::resolve_non_null(clazz_jh)); + KlassHandle k(THREAD, java_lang_Class::as_klassOop(JNIHandles::resolve_non_null(clazz_jh))); - objArrayOop results = (objArrayOop) JNIHandles::resolve(results_jh); - if (results == NULL || !results->is_objArray()) return -1; + objArrayHandle results(THREAD, (objArrayOop) JNIHandles::resolve(results_jh)); + if (results.is_null() || !results->is_objArray()) return -1; TempNewSymbol name = NULL; TempNewSymbol sig = NULL; @@ -2502,20 +2493,20 @@ if (sig == NULL) return 0; // a match is not possible } - klassOop caller = NULL; + KlassHandle caller; if (caller_jh != NULL) { oop caller_oop = JNIHandles::resolve_non_null(caller_jh); if (!java_lang_Class::is_instance(caller_oop)) return -1; - caller = java_lang_Class::as_klassOop(caller_oop); + caller = KlassHandle(THREAD, java_lang_Class::as_klassOop(caller_oop)); } - if (name != NULL && sig != NULL && results != NULL) { + if (name != NULL && sig != NULL && results.not_null()) { // try a direct resolve // %%% TO DO } - int res = MethodHandles::find_MemberNames(k_oop, name, sig, mflags, - caller, skip, results); + int res = MethodHandles::find_MemberNames(k(), name, sig, mflags, + caller(), skip, results()); // TO DO: expand at least some of the MemberNames, to avoid massive callbacks return res; } diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/prims/methodHandles.hpp --- a/hotspot/src/share/vm/prims/methodHandles.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/prims/methodHandles.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -265,13 +265,13 @@ static inline address from_interpreted_entry(EntryKind ek); // helpers for decode_method. - static methodOop decode_methodOop(methodOop m, int& decode_flags_result); - static methodOop decode_vmtarget(oop vmtarget, int vmindex, oop mtype, klassOop& receiver_limit_result, int& decode_flags_result); - static methodOop decode_MemberName(oop mname, klassOop& receiver_limit_result, int& decode_flags_result); - static methodOop decode_MethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result); - static methodOop decode_DirectMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result); - static methodOop decode_BoundMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result); - static methodOop decode_AdapterMethodHandle(oop mh, klassOop& receiver_limit_result, int& decode_flags_result); + static methodOop decode_methodOop(methodOop m, int& decode_flags_result); + static methodHandle decode_vmtarget(oop vmtarget, int vmindex, oop mtype, KlassHandle& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_MemberName(oop mname, KlassHandle& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_MethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_DirectMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_BoundMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_AdapterMethodHandle(oop mh, KlassHandle& receiver_limit_result, int& decode_flags_result); // Find out how many stack slots an mh pushes or pops. // The result is *not* reported as a multiple of stack_move_unit(); @@ -317,7 +317,7 @@ _dmf_adapter_lsb = 0x20, _DMF_ADAPTER_MASK = (_dmf_adapter_lsb << CONV_OP_LIMIT) - _dmf_adapter_lsb }; - static methodOop decode_method(oop x, klassOop& receiver_limit_result, int& decode_flags_result); + static methodHandle decode_method(oop x, KlassHandle& receiver_limit_result, int& decode_flags_result); enum { // format of query to getConstant: GC_JVM_PUSH_LIMIT = 0, diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/runtime/globals.hpp --- a/hotspot/src/share/vm/runtime/globals.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/runtime/globals.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -620,6 +620,9 @@ product(bool, UseSSE42Intrinsics, false, \ "SSE4.2 versions of intrinsics") \ \ + product(bool, UseCondCardMark, false, \ + "Check for already marked card before updating card table") \ + \ develop(bool, TraceCallFixup, false, \ "traces all call fixups") \ \ diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/runtime/javaCalls.cpp --- a/hotspot/src/share/vm/runtime/javaCalls.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/runtime/javaCalls.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -389,7 +389,7 @@ // to Java if (!os::stack_shadow_pages_available(THREAD, method)) { // Throw stack overflow exception with preinitialized exception. - Exceptions::throw_stack_overflow_exception(THREAD, __FILE__, __LINE__); + Exceptions::throw_stack_overflow_exception(THREAD, __FILE__, __LINE__, method); return; } else { // Touch pages checked if the OS needs them to be touched to be mapped. diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/runtime/sharedRuntime.cpp --- a/hotspot/src/share/vm/runtime/sharedRuntime.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/runtime/sharedRuntime.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1721,14 +1721,14 @@ targetArity = ArgumentCount(target->signature()).size(); } } - klassOop kignore; int dmf_flags = 0; - methodOop actual_method = MethodHandles::decode_method(actual, kignore, dmf_flags); + KlassHandle kignore; int dmf_flags = 0; + methodHandle actual_method = MethodHandles::decode_method(actual, kignore, dmf_flags); if ((dmf_flags & ~(MethodHandles::_dmf_has_receiver | MethodHandles::_dmf_does_dispatch | MethodHandles::_dmf_from_interface)) != 0) - actual_method = NULL; // MH does extra binds, drops, etc. + actual_method = methodHandle(); // MH does extra binds, drops, etc. bool has_receiver = ((dmf_flags & MethodHandles::_dmf_has_receiver) != 0); - if (actual_method != NULL) { + if (actual_method.not_null()) { mhName = actual_method->signature()->as_C_string(); mhArity = ArgumentCount(actual_method->signature()).size(); if (!actual_method->is_static()) mhArity += 1; diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/runtime/vmThread.cpp --- a/hotspot/src/share/vm/runtime/vmThread.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/runtime/vmThread.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -291,7 +291,9 @@ // Among other things, this ensures that Eden top is correct. Universe::heap()->prepare_for_verify(); os::check_heap(); - Universe::verify(true, true); // Silent verification to not polute normal output + // Silent verification so as not to pollute normal output, + // unless we really asked for it. + Universe::verify(true, !(PrintGCDetails || Verbose)); } CompileBroker::set_should_block(); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/services/g1MemoryPool.cpp --- a/hotspot/src/share/vm/services/g1MemoryPool.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/services/g1MemoryPool.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved. * 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,10 +34,10 @@ size_t init_size, bool support_usage_threshold) : _g1h(g1h), CollectedMemoryPool(name, - MemoryPool::Heap, - init_size, - undefined_max(), - support_usage_threshold) { + MemoryPool::Heap, + init_size, + undefined_max(), + support_usage_threshold) { assert(UseG1GC, "sanity"); } @@ -48,44 +48,27 @@ // See the comment at the top of g1MemoryPool.hpp size_t G1MemoryPoolSuper::eden_space_used(G1CollectedHeap* g1h) { - size_t young_list_length = g1h->young_list()->length(); - size_t eden_used = young_list_length * HeapRegion::GrainBytes; - size_t survivor_used = survivor_space_used(g1h); - eden_used = subtract_up_to_zero(eden_used, survivor_used); - return eden_used; + return g1h->g1mm()->eden_space_used(); } // See the comment at the top of g1MemoryPool.hpp size_t G1MemoryPoolSuper::survivor_space_committed(G1CollectedHeap* g1h) { - return MAX2(survivor_space_used(g1h), (size_t) HeapRegion::GrainBytes); + return g1h->g1mm()->survivor_space_committed(); } // See the comment at the top of g1MemoryPool.hpp size_t G1MemoryPoolSuper::survivor_space_used(G1CollectedHeap* g1h) { - size_t survivor_num = g1h->g1_policy()->recorded_survivor_regions(); - size_t survivor_used = survivor_num * HeapRegion::GrainBytes; - return survivor_used; + return g1h->g1mm()->survivor_space_used(); } // See the comment at the top of g1MemoryPool.hpp size_t G1MemoryPoolSuper::old_space_committed(G1CollectedHeap* g1h) { - size_t committed = overall_committed(g1h); - size_t eden_committed = eden_space_committed(g1h); - size_t survivor_committed = survivor_space_committed(g1h); - committed = subtract_up_to_zero(committed, eden_committed); - committed = subtract_up_to_zero(committed, survivor_committed); - committed = MAX2(committed, (size_t) HeapRegion::GrainBytes); - return committed; + return g1h->g1mm()->old_space_committed(); } // See the comment at the top of g1MemoryPool.hpp size_t G1MemoryPoolSuper::old_space_used(G1CollectedHeap* g1h) { - size_t used = overall_used(g1h); - size_t eden_used = eden_space_used(g1h); - size_t survivor_used = survivor_space_used(g1h); - used = subtract_up_to_zero(used, eden_used); - used = subtract_up_to_zero(used, survivor_used); - return used; + return g1h->g1mm()->old_space_used(); } G1EdenPool::G1EdenPool(G1CollectedHeap* g1h) : diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/services/g1MemoryPool.hpp --- a/hotspot/src/share/vm/services/g1MemoryPool.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/services/g1MemoryPool.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved. * 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,68 +46,9 @@ // get, as this does affect the performance and behavior of G1. Which // is why we introduce the three memory pools implemented here. // -// The above approach inroduces a couple of challenging issues in the -// implementation of the three memory pools: -// -// 1) The used space calculation for a pool is not necessarily -// independent of the others. We can easily get from G1 the overall -// used space in the entire heap, the number of regions in the young -// generation (includes both eden and survivors), and the number of -// survivor regions. So, from that we calculate: -// -// survivor_used = survivor_num * region_size -// eden_used = young_region_num * region_size - survivor_used -// old_gen_used = overall_used - eden_used - survivor_used -// -// Note that survivor_used and eden_used are upper bounds. To get the -// actual value we would have to iterate over the regions and add up -// ->used(). But that'd be expensive. So, we'll accept some lack of -// accuracy for those two. But, we have to be careful when calculating -// old_gen_used, in case we subtract from overall_used more then the -// actual number and our result goes negative. -// -// 2) Calculating the used space is straightforward, as described -// above. However, how do we calculate the committed space, given that -// we allocate space for the eden, survivor, and old gen out of the -// same pool of regions? One way to do this is to use the used value -// as also the committed value for the eden and survivor spaces and -// then calculate the old gen committed space as follows: -// -// old_gen_committed = overall_committed - eden_committed - survivor_committed +// See comments in g1MonitoringSupport.hpp for additional details +// on this model. // -// Maybe a better way to do that would be to calculate used for eden -// and survivor as a sum of ->used() over their regions and then -// calculate committed as region_num * region_size (i.e., what we use -// to calculate the used space now). This is something to consider -// in the future. -// -// 3) Another decision that is again not straightforward is what is -// the max size that each memory pool can grow to. One way to do this -// would be to use the committed size for the max for the eden and -// survivors and calculate the old gen max as follows (basically, it's -// a similar pattern to what we use for the committed space, as -// described above): -// -// old_gen_max = overall_max - eden_max - survivor_max -// -// Unfortunately, the above makes the max of each pool fluctuate over -// time and, even though this is allowed according to the spec, it -// broke several assumptions in the M&M framework (there were cases -// where used would reach a value greater than max). So, for max we -// use -1, which means "undefined" according to the spec. -// -// 4) Now, there is a very subtle issue with all the above. The -// framework will call get_memory_usage() on the three pools -// asynchronously. As a result, each call might get a different value -// for, say, survivor_num which will yield inconsistent values for -// eden_used, survivor_used, and old_gen_used (as survivor_num is used -// in the calculation of all three). This would normally be -// ok. However, it's possible that this might cause the sum of -// eden_used, survivor_used, and old_gen_used to go over the max heap -// size and this seems to sometimes cause JConsole (and maybe other -// clients) to get confused. There's not a really an easy / clean -// solution to this problem, due to the asynchrounous nature of the -// framework. // This class is shared by the three G1 memory pool classes @@ -116,22 +57,6 @@ // (see comment above), we put the calculations in this class so that // we can easily share them among the subclasses. class G1MemoryPoolSuper : public CollectedMemoryPool { -private: - // It returns x - y if x > y, 0 otherwise. - // As described in the comment above, some of the inputs to the - // calculations we have to do are obtained concurrently and hence - // may be inconsistent with each other. So, this provides a - // defensive way of performing the subtraction and avoids the value - // going negative (which would mean a very large result, given that - // the parameter are size_t). - static size_t subtract_up_to_zero(size_t x, size_t y) { - if (x > y) { - return x - y; - } else { - return 0; - } - } - protected: G1CollectedHeap* _g1h; @@ -148,13 +73,6 @@ return (size_t) -1; } - static size_t overall_committed(G1CollectedHeap* g1h) { - return g1h->capacity(); - } - static size_t overall_used(G1CollectedHeap* g1h) { - return g1h->used_unlocked(); - } - static size_t eden_space_committed(G1CollectedHeap* g1h); static size_t eden_space_used(G1CollectedHeap* g1h); diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/utilities/exceptions.cpp --- a/hotspot/src/share/vm/utilities/exceptions.cpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/utilities/exceptions.cpp Wed Jul 05 17:43:00 2017 +0200 @@ -207,7 +207,7 @@ } -void Exceptions::throw_stack_overflow_exception(Thread* THREAD, const char* file, int line) { +void Exceptions::throw_stack_overflow_exception(Thread* THREAD, const char* file, int line, methodHandle method) { Handle exception; if (!THREAD->has_pending_exception()) { klassOop k = SystemDictionary::StackOverflowError_klass(); @@ -215,13 +215,13 @@ exception = Handle(THREAD, e); // fill_in_stack trace does gc assert(instanceKlass::cast(k)->is_initialized(), "need to increase min_stack_allowed calculation"); if (StackTraceInThrowable) { - java_lang_Throwable::fill_in_stack_trace(exception); + java_lang_Throwable::fill_in_stack_trace(exception, method()); } } else { // if prior exception, throw that one instead exception = Handle(THREAD, THREAD->pending_exception()); } - _throw_oop(THREAD, file, line, exception()); + _throw(THREAD, file, line, exception); } void Exceptions::fthrow(Thread* thread, const char* file, int line, Symbol* h_name, const char* format, ...) { diff -r 76bb81c6327c -r 5cad348bfb7b hotspot/src/share/vm/utilities/exceptions.hpp --- a/hotspot/src/share/vm/utilities/exceptions.hpp Mon May 02 09:36:49 2011 -0700 +++ b/hotspot/src/share/vm/utilities/exceptions.hpp Wed Jul 05 17:43:00 2017 +0200 @@ -144,7 +144,7 @@ const char* message, ExceptionMsgToUtf8Mode to_utf8_safe = safe_to_utf8); - static void throw_stack_overflow_exception(Thread* thread, const char* file, int line); + static void throw_stack_overflow_exception(Thread* thread, const char* file, int line, methodHandle method); // for AbortVMOnException flag NOT_PRODUCT(static void debug_check_abort(Handle exception, const char* message = NULL);) diff -r 76bb81c6327c -r 5cad348bfb7b jaxp/.hgignore --- a/jaxp/.hgignore Mon May 02 09:36:49 2011 -0700 +++ b/jaxp/.hgignore Wed Jul 05 17:43:00 2017 +0200 @@ -4,3 +4,4 @@ ^drop_included/ ^webrev/ /nbproject/private/ +^.hgtip diff -r 76bb81c6327c -r 5cad348bfb7b jaxp/.hgtags --- a/jaxp/.hgtags Mon May 02 09:36:49 2011 -0700 +++ b/jaxp/.hgtags Wed Jul 05 17:43:00 2017 +0200 @@ -114,3 +114,4 @@ 1d87f7460cde7f8f30af668490f82b52b879bfd8 jdk7-b137 be3758943770a0a3dd4be6a1cb4063507c4d7062 jdk7-b138 28c7c0ed2444607829ba11ad827f8d52197a2830 jdk7-b139 +c8136fd161c83917f87e93b14fa2ba3483f9be83 jdk7-b140 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/.hgignore --- a/jdk/.hgignore Mon May 02 09:36:49 2011 -0700 +++ b/jdk/.hgignore Wed Jul 05 17:43:00 2017 +0200 @@ -3,3 +3,4 @@ /nbproject/private/ ^make/netbeans/.*/build/ ^make/netbeans/.*/dist/ +^.hgtip diff -r 76bb81c6327c -r 5cad348bfb7b jdk/.hgtags --- a/jdk/.hgtags Mon May 02 09:36:49 2011 -0700 +++ b/jdk/.hgtags Wed Jul 05 17:43:00 2017 +0200 @@ -114,3 +114,4 @@ 29296ea6529a418037ccce95903249665ef31c11 jdk7-b137 60d3d55dcc9c31a30ced9caa6ef5c0dcd7db031d jdk7-b138 d80954a89b49fda47c0c5cace65a17f5a758b8bd jdk7-b139 +9315c733fb17ddfb9fb44be7e0ffea37bf3c727d jdk7-b140 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/Defs-linux.gmk --- a/jdk/make/common/Defs-linux.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/Defs-linux.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -251,9 +251,8 @@ # statically link libgcc but will print a warning with the flag. We don't # want the warning, so check gcc version first. # -CC_VER_MAJOR := $(shell $(CC) -dumpversion | $(SED) 's/egcs-//' | $(CUT) -d'.' -f1) -ifeq ("$(CC_VER_MAJOR)", "3") -OTHER_LDFLAGS += -static-libgcc +ifeq ($(CC_MAJORVER),3) + OTHER_LDFLAGS += -static-libgcc endif # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) @@ -355,7 +354,7 @@ # Japanese manpages # JA_SOURCE_ENCODING = eucJP -JA_TARGET_ENCODINGS = eucJP +JA_TARGET_ENCODINGS = UTF-8 # Settings for the JDI - Serviceability Agent binding. HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/Defs-solaris.gmk --- a/jdk/make/common/Defs-solaris.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/Defs-solaris.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -457,14 +457,15 @@ # On X86, make sure tail call optimization is off # The z and y are the tail call optimizations. ifeq ($(ARCH_FAMILY), i586) - ifeq ($(shell $(EXPR) $(CC_MAJORVER) \>= 5), 1) - ifeq ($(shell $(EXPR) $(CC_MINORVER) \> 8), 1) - # Somehow, tail call optimization is creeping in. - # Make sure it is off. - # WARNING: These may cause compiler warnings about duplicate -O options - CC_XKEEPFRAME_OPTIONS += -Wu,-O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz - CXX_XKEEPFRAME_OPTIONS += -Qoption ube -O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz - endif + CC_NEWER_THAN_58 := \ + $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \ + \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 8 \) ) + ifeq ($(CC_NEWER_THAN_58),1) + # Somehow, tail call optimization is creeping in. + # Make sure it is off. + # WARNING: These may cause compiler warnings about duplicate -O options + CC_XKEEPFRAME_OPTIONS += -Wu,-O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz + CXX_XKEEPFRAME_OPTIONS += -Qoption ube -O$(OPT_LEVEL/$(OPTIMIZATION_LEVEL))~yz endif endif @@ -481,14 +482,15 @@ CXX_XKEEPFRAME_OPTIONS += -Qoption ube -Z~B endif - ifeq ($(shell $(EXPR) $(CC_MAJORVER) \>= 5), 1) - ifeq ($(shell $(EXPR) $(CC_MINORVER) \> 6), 1) - # Do NOT use frame pointer register as a general purpose opt register - CC_OPT/NONE += -xregs=no%frameptr - CXX_OPT/NONE += -xregs=no%frameptr - CC_XKEEPFRAME_OPTIONS += -xregs=no%frameptr - CXX_XKEEPFRAME_OPTIONS += -xregs=no%frameptr - endif + CC_NEWER_THAN_56 := \ + $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \ + \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 6 \) ) + ifeq ($(CC_NEWER_THAN_56),1) + # Do NOT use frame pointer register as a general purpose opt register + CC_OPT/NONE += -xregs=no%frameptr + CXX_OPT/NONE += -xregs=no%frameptr + CC_XKEEPFRAME_OPTIONS += -xregs=no%frameptr + CXX_XKEEPFRAME_OPTIONS += -xregs=no%frameptr endif endif @@ -566,8 +568,10 @@ CFLAGS_REQUIRED_sparc += -xregs=no%appl CFLAGS_REQUIRED_sparcv9 += -xregs=no%appl endif - ifeq ($(shell $(EXPR) $(CC_VER) \> 5.6), 1) - # We MUST allow data alignment of 4 for sparc V8 (32bit) + CC_NEWER_THAN_56 := \ + $(shell $(EXPR) $(CC_MAJORVER) \> 5 \| \ + \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \> 6 \) ) + ifeq ($(CC_NEWER_THAN_56),1) # Presents an ABI issue with customer JNI libs? We must be able to # to handle 4byte aligned objects? (rare occurance, but possible?) CFLAGS_REQUIRED_sparc += -xmemalign=4s diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/Demo.gmk --- a/jdk/make/common/Demo.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/Demo.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -211,9 +211,13 @@ endif # Jar manifest file -$(DEMO_MANIFEST): +MAINMANIFEST = $(JDK_TOPDIR)/make/tools/manifest.mf +$(DEMO_MANIFEST): $(MAINMANIFEST) @$(prep-target) - $(ECHO) "Main-Class: $(DEMO_MAINCLASS)" > $@ + $(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \ + -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \ + $(MAINMANIFEST) >> $@ + $(ECHO) "Main-Class: $(DEMO_MAINCLASS)" >> $@ ifdef DEMO_MANIFEST_ATTR $(ECHO) "$(DEMO_MANIFEST_ATTR)" >> $@ endif diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/Release-embedded.gmk --- a/jdk/make/common/Release-embedded.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/Release-embedded.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -84,10 +84,10 @@ # Create headless rt.jar HL_RT_JAR=$(ABS_TEMPDIR)/rt-hl-orig.jar -$(HL_RT_JAR): MakeHeadlessJarFileList $(JAR_MANIFEST_FILE) +$(HL_RT_JAR): MakeHeadlessJarFileList $(RT_JAR_MANIFEST_FILE) $(prep-target) $(CD) $(CLASSBINDIR) ; \ - $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(JAR_MANIFEST_FILE) $@ @$(HEADLESS_RT_JAR_FILELIST) \ + $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(RT_JAR_MANIFEST_FILE) $@ @$(HEADLESS_RT_JAR_FILELIST) \ $(JAR_JFLAGS) @$(CD) $(CLASSBINDIR); $(java-vm-cleanup) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/Release.gmk --- a/jdk/make/common/Release.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/Release.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -164,7 +164,7 @@ ifeq ($(PLATFORM), linux) MANBASEDIRS=$(JDK_TOPDIR)/src/linux/doc $(IMPORTDOCDIR) MAN1SUBDIR=man - JA_DIRNAME=ja_JP.$(JA_SOURCE_ENCODING) + JA_DIRNAME=ja_JP.UTF-8 endif # linux define copy-man-pages @@ -190,8 +190,7 @@ done $(java-vm-cleanup) if [ "$(JA_DIRNAME)" != "" ] ; then \ - $(MV) $1/man/ja $1/man/$(JA_DIRNAME); \ - $(CD) $1/man && $(LN) -s $(JA_DIRNAME) ja; \ + $(CD) $1/man && $(RM) ja && $(LN) -s $(JA_DIRNAME) ja; \ fi endef @@ -609,8 +608,8 @@ @$(java-vm-cleanup) # Create the manifest file. -JAR_MANIFEST_FILE=$(ABS_TEMPDIR)/manifest.tmp -$(JAR_MANIFEST_FILE): $(MAINMANIFEST) $(BEANMANIFEST) +RT_JAR_MANIFEST_FILE=$(ABS_TEMPDIR)/rt_manifest.tmp +$(RT_JAR_MANIFEST_FILE): $(MAINMANIFEST) $(BEANMANIFEST) $(prep-target) $(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \ -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \ @@ -618,21 +617,28 @@ $(ECHO) >> $@ $(CAT) $(BEANMANIFEST) >> $@ +OTHER_JAR_MANIFEST_FILE=$(ABS_TEMPDIR)/other_manifest.tmp +$(OTHER_JAR_MANIFEST_FILE): $(MAINMANIFEST) + $(prep-target) + $(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \ + -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \ + $(MAINMANIFEST) >> $@ + # Create resources.jar containing non-class files RESOURCES_JAR=$(ABS_TEMPDIR)/resources-orig.jar -$(RESOURCES_JAR): $(RES_JAR_FILELIST) $(JAR_MANIFEST_FILE) +$(RESOURCES_JAR): $(RES_JAR_FILELIST) $(OTHER_JAR_MANIFEST_FILE) $(prep-target) $(CD) $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(JAR_MANIFEST_FILE) $@ \ + $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \ @$(RES_JAR_FILELIST) $(BOOT_JAR_JFLAGS) @$(CD) $(CLASSBINDIR) && $(java-vm-cleanup) # Create jsse.jar containing SunJSSE implementation classes JSSE_JAR=$(ABS_TEMPDIR)/jsse-orig.jar -$(JSSE_JAR): $(JAR_MANIFEST_FILE) +$(JSSE_JAR): $(OTHER_JAR_MANIFEST_FILE) $(prep-target) $(CD) $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(JAR_MANIFEST_FILE) $@ \ + $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(OTHER_JAR_MANIFEST_FILE) $@ \ $(JSSE_CLASSES_DIRS) $(BOOT_JAR_JFLAGS) @$(CD) $(CLASSBINDIR) && $(java-vm-cleanup) @@ -676,10 +682,10 @@ # Create rt.jar RT_JAR=$(ABS_TEMPDIR)/rt-orig.jar -$(RT_JAR): $(RT_JAR_FILELIST) $(JAR_MANIFEST_FILE) +$(RT_JAR): $(RT_JAR_FILELIST) $(RT_JAR_MANIFEST_FILE) $(prep-target) $(CD) $(CLASSBINDIR) && \ - $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(JAR_MANIFEST_FILE) $@ \ + $(BOOT_JAR_CMD) $(CREATE_JAR_OPTS) $(RT_JAR_MANIFEST_FILE) $@ \ @$(RT_JAR_FILELIST) $(BOOT_JAR_JFLAGS) @$(CD) $(CLASSBINDIR) && $(java-vm-cleanup) @@ -1117,6 +1123,10 @@ MINIMUM_OS_NAME := $(REQUIRED_OS_NAME) MINIMUM_OS_VERSION := $(REQUIRED_OS_VERSION) MINIMUM_OS_ARCH := $(ARCH) +ALL_SOURCE_TIPS = $(shell \ + if [ -f $(SOURCE_TIPS) ] ; then \ + $(CAT) $(SOURCE_TIPS) ; \ + fi) $(JDK_INFO_FILE): FRC $(prep-target) @@ -1124,6 +1134,7 @@ $(call info-file-item, "OS_NAME", "$(MINIMUM_OS_NAME)") $(call info-file-item, "OS_VERSION", "$(MINIMUM_OS_VERSION)") $(call info-file-item, "OS_ARCH", "$(MINIMUM_OS_ARCH)") + $(call info-file-item, "SOURCE", "$(ALL_SOURCE_TIPS)") # Create release file to identify this image identify-image-jdk:: $(JDK_INFO_FILE) @@ -1134,6 +1145,7 @@ $(call info-file-item, "OS_NAME", "$(MINIMUM_OS_NAME)") $(call info-file-item, "OS_VERSION", "$(MINIMUM_OS_VERSION)") $(call info-file-item, "OS_ARCH", "$(MINIMUM_OS_ARCH)") + $(call info-file-item, "SOURCE", "$(ALL_SOURCE_TIPS)") # Create release file to identify this image identify-image-jre:: $(JRE_INFO_FILE) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/shared/Compiler-gcc.gmk --- a/jdk/make/common/shared/Compiler-gcc.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/shared/Compiler-gcc.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -87,6 +87,8 @@ # Get gcc version _CC_VER :=$(shell $(CC) -dumpversion 2>&1 ) CC_VER :=$(call GetVersion,"$(_CC_VER)") +CC_MAJORVER :=$(call MajorVersion,$(CC_VER)) +CC_MINORVER :=$(call MinorVersion,$(CC_VER)) # Name of compiler COMPILER_NAME = GCC$(call MajorVersion,$(CC_VER)) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/shared/Compiler-sun.gmk --- a/jdk/make/common/shared/Compiler-sun.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/shared/Compiler-sun.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -117,7 +117,10 @@ LINT_XARCH_OPTION_OLD/64 += -Xarch=amd64 endif # Pick the options we want based on the compiler being used. (5.9 or newer) -ifeq ($(shell expr $(CC_MINORVER) \>= 9), 1) +CC_59_OR_NEWER := \ + $(shell expr $(CC_MAJORVER) \> 5 \| \ + \( $(CC_MAJORVER) = 5 \& $(CC_MINORVER) \>= 9 \) ) +ifeq ($(CC_59_OR_NEWER), 1) XARCH_OPTION/32 = $(XARCH_OPTION_NEW/32) XARCH_OPTION/64 = $(XARCH_OPTION_NEW/64) LINT_XARCH_OPTION/32 = $(LINT_XARCH_OPTION_NEW/32) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/shared/Defs-utils.gmk --- a/jdk/make/common/shared/Defs-utils.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/shared/Defs-utils.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -110,6 +110,7 @@ GREP = $(UTILS_COMMAND_PATH)grep GUNZIP = $(UTILS_COMMAND_PATH)gunzip HEAD = $(UTILS_USR_BIN_PATH)head +HG = hg ID = $(UTILS_COMMAND_PATH)id ISAINFO = $(UTILS_COMMAND_PATH)isainfo KSH = $(UTILS_COMMAND_PATH)ksh diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/shared/Defs.gmk --- a/jdk/make/common/shared/Defs.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/shared/Defs.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -612,6 +612,44 @@ COPYRIGHT_YEAR = $(shell $(DATE) '+%Y') endif +# Create file with source information +SOURCE_TIPS=$(ABS_OUTPUTDIR)/source_tips + +# The source tips can come from the Mercurial repository, or in the files +# $(HGTIP_FILENAME) which contains the tip but is also positioned in the same +# directory as the original $(HGDIR) directory. +# These should not be := assignments, only used from the root Makefile. +HG_VERSION = $(shell $(HG) version 2> $(DEV_NULL)) +HG_DIRECTORY=.hg +HGTIP_FILENAME=.hgtip +HG_SEARCH = ./REPO ./*/REPO ./*/*/REPO ./*/*/*/REPO +REPO_LIST = $(patsubst ./%,%,$(patsubst %/,%,$(sort $(dir \ + $(shell ( $(LS) -d $(HG_SEARCH:%/REPO=%/$(HG_DIRECTORY)) ; \ + $(LS) $(HG_SEARCH:%/REPO=%/$(HGTIP_FILENAME)) ) \ + 2> $(DEV_NULL)))))) + +# Emit the repo:tip pairs to $@ +define GetSourceTips +for i in $(REPO_LIST) IGNORE ; do \ + if [ "$${i}" = "IGNORE" ] ; then \ + continue; \ + elif [ -d $${i}/$(HG_DIRECTORY) -a "$(HG_VERSION)" != "" ] ; then \ + $(PRINTF) " %s:%s" \ + "$${i}" `$(HG) tip --repository $${i} --template '{node|short}\n'` ; \ + elif [ -f $${i}/$(HGTIP_FILENAME) ] ; then \ + $(PRINTF) " %s:%s" \ + "$${i}" `$(CAT) $${i}/$(HGTIP_FILENAME)` ; \ + fi; \ +done >> $@ +$(PRINTF) "\n" >> $@ +endef + +# Create the HGTIP_FILENAME file +define CreateHgTip +$(HG) tip --repository $1 --template '{node|short}\n' > $1/$(HGTIP_FILENAME);\ +$(ECHO) $1/$(HGTIP_FILENAME) +endef + # Get the compiler specific settings (will run the compiler to find out) # NOTE: COMPILER_PATH must be set by this time. # Up until we include this file, we don't know what specific compiler diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/common/shared/Platform.gmk --- a/jdk/make/common/shared/Platform.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/common/shared/Platform.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -428,8 +428,6 @@ # Machines with 512Mb or less of real memory are considered low memory # build machines and adjustments will be made to prevent excessing # system swapping during the build. -# If we don't know, assume 512. Subtract 128 from MB for VM MAX. -# Don't set VM max over 1024-128=896. ifeq ($(JDK_HAS_MEM_INFO),) JDK_HAS_MEM_INFO=true export JDK_HAS_MEM_INFO @@ -440,18 +438,8 @@ else \ echo "false"; \ fi) - MAX_VM_MEMORY := $(shell \ - if [ $(MB_OF_MEMORY) -le 1024 ] ; then \ - expr $(MB_OF_MEMORY) '-' 128 2> $(DEV_NULL) ; \ - else \ - echo "896"; \ - fi) - MIN_VM_MEMORY := $(shell \ - if [ $(MAX_VM_MEMORY) -le 128 ] ; then \ - expr $(MAX_VM_MEMORY) '-' 8 2> $(DEV_NULL) ; \ - else \ - echo "128"; \ - fi) + MAX_VM_MEMORY := 512 + MIN_VM_MEMORY := $(MAX_VM_MEMORY) else MB_OF_MEMORY := unknown LOW_MEMORY_MACHINE := true diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/javax/crypto/Defs-jce.gmk --- a/jdk/make/javax/crypto/Defs-jce.gmk Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/javax/crypto/Defs-jce.gmk Wed Jul 05 17:43:00 2017 +0200 @@ -31,9 +31,11 @@ JCE_MANIFEST_FILE = $(TEMPDIR)/manifest.mf $(JCE_MANIFEST_FILE): $(MAINMANIFEST) $(prep-target) - ( $(SED) "s/@@RELEASE@@/$(RELEASE)/" $<; \ - $(ECHO) "Extension-Name: javax.crypto"; \ - $(ECHO) "Implementation-Vendor-Id: com.sun"; ) > $@ + $(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \ + -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \ + $(MAINMANIFEST) >> $@ + $(ECHO) "Extension-Name: javax.crypto" >> $@ + $(ECHO) "Implementation-Vendor-Id: com.sun" >> $@ README-MAKEFILE_WARNING = \ "\nPlease read make/javax/crypto/Makefile for further build instructions." diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/sun/jpeg/Makefile --- a/jdk/make/sun/jpeg/Makefile Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/sun/jpeg/Makefile Wed Jul 05 17:43:00 2017 +0200 @@ -73,9 +73,14 @@ # Recommended way to avoid such warning is to declare the variable as # volatile to prevent the optimization. However, this approach does not # work because we have to declare all variables as volatile in result. -ifndef CROSS_COMPILE_ARCH - OTHER_CFLAGS += -Wno-clobbered -endif + ifndef CROSS_COMPILE_ARCH + CC_43_OR_NEWER := \ + $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \ + \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) ) + ifeq ($(CC_43_OR_NEWER),1) + OTHER_CFLAGS += -Wno-clobbered + endif + endif endif include $(BUILDDIR)/common/Mapfile-vers.gmk diff -r 76bb81c6327c -r 5cad348bfb7b jdk/make/tools/manifest.mf --- a/jdk/make/tools/manifest.mf Mon May 02 09:36:49 2011 -0700 +++ b/jdk/make/tools/manifest.mf Wed Jul 05 17:43:00 2017 +0200 @@ -1,7 +1,7 @@ Manifest-Version: 1.0 Specification-Title: Java Platform API Specification Specification-Version: 1.7 -Specification-Vendor: Oracle +Specification-Vendor: Oracle Corporation Implementation-Title: Java Runtime Environment Implementation-Version: @@RELEASE@@ Implementation-Vendor: @@COMPANY_NAME@@ diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/appletviewer.1 --- a/jdk/src/linux/doc/man/ja/appletviewer.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/appletviewer.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,54 +19,44 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH appletviewer 1 "02 Jun 2010" +.TH appletviewer 1 "14 Apr 2011" .LP -.SH "名前" -appletviewer \- Java アプレットビューア -.LP -.RS 3 - +.SH "̾" +appletviewer \- Java ץåȥӥ塼 .LP .LP -\f3appletviewer\fP コマンドは Web ブラウザの外でアプレットを実行させます。 +\f3appletviewer\fP ޥɤ Web ֥饦γǥץåȤ¹Ԥޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .LP \f4appletviewer\fP \f2[\fP \f2options\fP \f2] \fP\f2urls\fP ... .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3appletviewer\fP コマンドは \f2urls\fP に指定されたドキュメントあるいはリソースと接続して、そのドキュメントが参照するそれぞれのアプレットを独自のウィンドウで表示します。注: \f2urls\fP によって参照されたドキュメントが、\f2OBJECT\fP、\f2EMBED\fP、または \f2APPLET\fP タグでどのアプレットも参照していない場合、\f3appletviewer\fP は何も行いません。\f3appletviewer\fP でサポートされる HTML タグの詳細については、 +\f3appletviewer\fP ޥɤ \f2urls\fP ˻ꤵ줿ɥȤ뤤ϥ꥽³ơΥɥȤȤ뤽줾ΥץåȤȼΥɥɽޤ: \f2urls\fP ˤäƻȤ줿ɥȤ\f2OBJECT\fP\f2EMBED\fPޤ \f2APPLET\fP ǤɤΥץåȤ⻲ȤƤʤ硢\f3appletviewer\fP ϲԤޤ\f3appletviewer\fP ǥݡȤ HTML ξܺ٤ˤĤƤϡ .na -\f2「アプレットビューアのタグ」\fP @ +\f2֥ץåȥӥ塼Υ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.html򻲾ȤƤ .LP .LP -\f3注:\fP \f3appletviewer\fP は、RFC2396 で規定されたエスケープ機構に従って符号化された URL を必要とします。サポートされるのは、符号化された URL だけです。ただし、ファイル名については、RFC2396 に指定された方法で符号化を解除しておく必要があります。 +\f3:\fP \f3appletviewer\fP ϡRFC2396 ǵꤵ줿׵˽ä沽줿 URL ɬפȤޤݡȤΤϡ沽줿 URL Ǥե̾ˤĤƤϡRFC2396 ˻ꤵ줿ˡ沽Ƥɬפޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-debug -Java デバッガ jdb(1) でアプレットビューアを開始します。 これにより、ドキュメント中のアプレットをデバッグすることができます。 +Java ǥХå jdb(1) ǥץåȥӥ塼򳫻ϤޤˤꡢɥΥץåȤǥХå뤳ȤǤޤ .TP 3 \-encoding \ \ encoding name -入力 HTML ファイルのエンコーディング名を指定します。 + HTML եΥ󥳡ǥ̾ꤷޤ .TP 3 \-Jjavaoption -文字列 \f2javaoption\fP は、appletviewer を実行する Java インタプリタに 1 つの引数として渡されます。引数にスペースを含めてはいけません。複数の引数は、各引数のすべてを接頭辞 \f3\-J\fP で始めることにより区分する必要があります。これは、コンパイラの実行環境、またはメモリーの利用に有効です。 +ʸ \f2javaoption\fP ϡappletviewer ¹Ԥ Java 󥿥ץ꥿ 1 ĤΰȤϤޤ˥ڡޤƤϤޤʣΰϡưΤ٤ƤƬ \f3\-J\fP ǻϤ뤳Ȥˤʬɬפޤϡѥμ¹ԴĶޤϥ꡼ѤͭǤ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/apt.1 --- a/jdk/src/linux/doc/man/ja/apt.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/apt.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,102 +19,133 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH apt 1 "02 Jun 2010" +.TH apt 1 "14 Apr 2011" .LP .SH "NAME" .LP .LP -\f2apt\fP \- 注釈処理ツール +\f2apt\fP \- ġ .LP -.SH "形式" +.SH "" .LP .LP -\f2apt [\-classpath \fP\f2classpath\fP] [\-sourcepath \f2sourcepath\fP] [\-d \f2directory\fP] [\-s \f2directory\fP] [\-factorypath \f2path\fP] [\-factory \f2class\fP] [\-print] [\-nocompile] [\-A\f2key\fP[\f2=val\fP] ...][\f2javac option\fP] sourcefiles [@files] +\f2apt [\-classpath \fP\f2classpath\fP] [\-sourcepath \f2sourcepath\fP] [\-d \f2directory\fP] [\-s \f2directory\fP] [\-factorypath \f2path\fP] [\-factory \f2class\fP] [\-print] [\-nocompile] [\-A\f2key\fP[\f2=val\fP] ...] [\f2javac option\fP] sourcefiles [@files] .LP -.SH "パラメータ" +.SH "ѥ᡼" .LP .LP -オプションは順不同です。特定のオプションに適用されるパラメータについては、下記の「オプション」を参照してください。 +ץλ˷ޤϤޤΥץŬѤѥ᡼ˤĤƤϡΡ֥ץפ򻲾ȤƤ .LP .RS 3 .TP 3 sourcefiles -ゼロ、1 つ、または複数の処理対象のソースファイル +1 ġޤʣνоݤΥե .TP 3 @files -ソースファイルまたは他のオプションを一覧表示する 1 つまたは複数のファイル +եޤ¾Υץɽ 1 ĤޤʣΥե .RE .LP -.SH "説明" +.SH "" .LP .LP -注釈処理ツール \f2apt\fP は、新しいリフレクト API とサポートインフラストラクチャーから構成され、プログラム注釈を処理します。\f2apt\fP リフレクト API は、 構築時のソースベースで、プログラム構造に関する読み取り専用ビューを提供します。これらのリフレクト API は、総称を追加した後に、Java(TM) プログラミング言語の型システムを正しくモデル化するように設計されています。最初に、\f2apt\fP は、新しいソースコードと他のファイルを作成する注釈プロセッサを実行します。次に、\f2apt\fP は、元のソースファイルと生成したソースファイルの両方をコンパイルするため、開発が楽になります。ツールとのインタフェースに使用されるリフレクト API などの API は、\f2com.sun.mirror\fP のサブパッケージです。 +ġ \f2apt\fP ϡե쥯 API ȥݡȥե饹ȥ饯㡼鹽졢ץޤ\f2apt\fP ե쥯 API ϡ ۻΥ١ǡץ๽¤˴ؤɤ߼ѥӥ塼󶡤ޤΥե쥯 API ϡΤɲäˡJava(TM) ץߥ󥰸ηƥǥ벽褦߷פƤޤǽˡ\f2apt\fP ϡɤ¾Υեץå¹Ԥޤˡ\f2apt\fP ϡΥեեξ򥳥ѥ뤹뤿ᡢȯڤˤʤޤġȤΥ󥿥ե˻Ѥե쥯 API ʤɤ API ϡ\f2com.sun.mirror\fP Υ֥ѥåǤ .LP .LP -ツールの機能に関する詳細と、\f2apt\fP を使用した開発方法については、 +ġεǽ˴ؤܺ٤ȡ\f2apt\fP ѤȯˡˤĤƤϡ .na -\f4「\fP\f4apt\fP\f3 入門」\fP @ +\f4apt \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.html򻲾ȤƤ .LP .RS 3 .TP 3 -注: -\f2apt\fP の機能は、\f2javac(1)\fP ツールの一部となった注釈処理インフラストラクチャーに組み込まれ、すべての Java コンパイラで使用できるように標準化されました。この新しいインフラストラクチャーは、言語モデルおよび Java プラットフォームの一部となった注釈処理 API に依存します。注釈プロセッサの開発は、新しい API および \f2javac\fP ツールに基づいて行うようお勧めします。 +: +\f2apt\fP εǽϡ\f2javac(1)\fP ġΰȤʤäե饹ȥ饯㡼Ȥ߹ޤ졢٤Ƥ Java ѥǻѤǤ褦ɸಽޤοե饹ȥ饯㡼ϡǥ뤪 Java ץåȥեΰȤʤä API ˰¸ޤץåγȯϡ API \f2javac\fP ġ˴ŤƹԤ褦ᤷޤ .RE .LP -.SH "オプション" +.SH "ץ" .LP .SS -apt 固有のオプション +apt ͭΥץ .LP .RS 3 .TP 3 \-s dir -プロセッサの生成するソースファイルを置くディレクトリルートを指定します。 ファイルは、パッケージの名前空間に基づいてサブディレクトリに置かれます。 +ץå륽ե֤ǥ쥯ȥ롼Ȥꤷޤ եϡѥå֤̾˴Ťƥ֥ǥ쥯ȥ֤ޤ .TP 3 \-nocompile -ソースファイルをクラスファイルにコンパイルしません。 +ե򥯥饹ե˥ѥ뤷ޤ .TP 3 \-print -指定したタイプのテキスト表現を出力します。 注釈処理またはコンパイルは行いません。 +ꤷפΥƥɽϤޤ ޤϥѥϹԤޤ .TP 3 \-A[key[=val]] -注釈プロセッサへ渡すオプションです。 このオプションは、\f2apt\fP が直接解釈するのではなく、それぞれのプロセッサによって使用できるように変えられます。 +ץåϤץǤ Υץϡ\f2apt\fP ľ᤹ܲΤǤϤʤ줾ΥץåˤäƻѤǤ褦Ѥޤ .TP 3 \-factorypath path -注釈プロセッサファクトリを検索する場所を指定します。 このオプションを使用する場合、クラスパスのファクトリは検索されません。 +ץåեȥ򸡺ꤷޤ ΥץѤ硢饹ѥΥեȥϸޤ .TP 3 \-factory classname -使用する注釈プロセッサファクトリの名前です。 デフォルトの検出プロセスを省略します。 +Ѥץåեȥ̾Ǥ ǥեȤθХץάޤ +.TP 3 +\-version +СϤޤ +.TP 3 +\-X +ɸ४ץ˴ؤɽޤ .RE .LP .SS -javac と共用するオプション +javac ȶѤ륪ץ .LP .RS 3 .TP 3 \-d dir -プロセッサと javac 生成のクラスファイルを置く場所を指定します。 +ץå javac Υ饹ե֤ꤷޤ .TP 3 -\-cp path or \-classpath path -ユーザークラスファイルと注釈プロセッサファクトリを検索する場所を指定します。\f2\-factorypath\fP が指定されている場合、クラスパスのファクトリは検索されません。 +\-cp path ޤ \-classpath path +桼饹եץåեȥ򸡺ꤷޤ\f2\-factorypath\fP ꤵƤ硢饹ѥΥեȥϸޤ .RE .LP .LP -\f2javac\fP オプションの詳細については、javac(1) のマニュアルページを参照してください。 +\f2javac\fP ץξܺ٤ˤĤƤϡjavac(1) Υޥ˥奢ڡ򻲾ȤƤ +.LP +.SS +ɸ४ץ .LP -.SH "注" +.RS 3 +.TP 3 +\-XListAnnotationTypes +η˸Фꥹ. +.TP 3 +\-XListDeclarations +ꤪ󥯥롼ɤꥹ. +.TP 3 +\-XPrintAptRounds +ӺƵŪ \f2apt\fP 饦ɤ˴ؤϤ. +.TP 3 +\-XPrintFactoryInfo +׵᤹եȥ˴ؤϤ. +.TP 3 +\-XclassesAsDecls +饹եȥեξ򡢽оݤȤƽޤ +.RE + .LP .LP -\f2apt\fP の機能は、\f2javac\fP により提供される標準注釈処理インフラストラクチャーに組み込まれました。今後の JDK リリースでは、\f2apt\fP および関連する API のサポートが中止する可能性があります。 +\f3\fP: ɸ४ץʤΤǡͽʤѹǽޤ +.LP +.SH "" .LP -.SH "関連項目" +.LP +\f2apt\fP εǽϡ\f2javac\fP ˤ󶡤ɸե饹ȥ饯㡼Ȥ߹ޤޤ JDK ꡼Ǥϡ\f2apt\fP ӴϢ API ΥݡȤߤǽޤ +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/extcheck.1 --- a/jdk/src/linux/doc/man/ja/extcheck.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/extcheck.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH extcheck 1 "02 Jun 2010" +.TH extcheck 1 "14 Apr 2011" .LP -.SH "名前" -extcheck \- jar の競合検出ユーティリティー -.LP -.RS 3 - +.SH "̾" +extcheck \- jar ζ縡Х桼ƥƥ .LP .LP -\f3extcheck\fP は、ターゲットの jar ファイルと現在インストールされている拡張機能の jar ファイル間のバージョンの競合を検出します。 +\f3extcheck\fP ϡåȤ jar եȸߥ󥹥ȡ뤵Ƥĥǽ jar ե֤ΥСζ򸡽Фޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,39 +39,33 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3extcheck\fP ユーティリティーは、指定された Jar ファイルのタイトルおよびバージョンが Java(TM) 2 SDK にインストールされている拡張機能と競合していないかをチェックします。拡張機能をインストールする前に、このユーティリティーを使って、バージョンが同じか、より新しい拡張機能がすでにインストールされていないかどうかを調べることができます。 +\f3extcheck\fP 桼ƥƥϡꤵ줿 Jar եΥȥ뤪ӥС Java(TM) 2 SDK ˥󥹥ȡ뤵Ƥĥǽȶ礷Ƥʤåޤĥǽ򥤥󥹥ȡ뤹ˡΥ桼ƥƥȤäơСƱ꿷ĥǽǤ˥󥹥ȡ뤵ƤʤɤĴ٤뤳ȤǤޤ .LP .LP -\f3extcheck\fP ユーティリティーは、\f2targetfile.jar\fP ファイルのマニフェスト内のヘッダー \f2Specification\-title\fP および \f2Specification\-version\fP を、拡張機能ディレクトリ内に現在インストールされているすべての Jar ファイル内の対応するヘッダーと比較します。デフォルトでは、拡張機能ディレクトリは、\f2jre/lib/ext\fP です。\f3extcheck\fP ユーティリティーは、\f2java.lang.Package.isCompatibleWith\fP メソッドと同様の方法でバージョン番号を比較します。 -.LP -.LP -競合が検出されない場合のリターンコードは \f20\fP です。 +\f3extcheck\fP 桼ƥƥϡtargetfile.jar եΥޥ˥եΥإå \f2Specification\-title\fP \f2Specification\-version\fP 򡢳ĥǽǥ쥯ȥ˸ߥ󥹥ȡ뤵Ƥ \f2٤Ƥ Jar ե\fP бإåӤޤǥեȤǤϡĥǽǥ쥯ȥϡ\f2jre/lib/ext\fP Ǥ\f3extcheck\fP 桼ƥƥϡ\f2java.lang.Package.isCompatibleWith\fP ᥽åɤƱͤˡǥСֹӤޤ .LP .LP -拡張機能ディレクトリ内のいずれかの jar ファイルのマニフェストに、同一の \f2Specification\-title\fP、および同一またはより新しい \f2Specification\-version\fP 番号がある場合は、ゼロでないエラーコードが返されます。\f2targetfile.jar\fP のマニフェストに \f2Specification\-title\fP または \f2Specification\-version\fP 属性がない場合も、ゼロでないエラーコードが返されます。 +礬ФʤΥ꥿󥳡ɤ \f20\fP Ǥ +.LP .LP -.SH "オプション" +ĥǽǥ쥯ȥΤ줫 jar եΥޥ˥եȤˡƱ \f2Specification\-title\fP ƱޤϤ꿷 \f2Specification\-version\fP ֹ椬ϡǤʤ顼ɤ֤ޤ \f2targetfile.jar\fP Υޥ˥եȤ \f2Specification\-title\fP ޤ \f2Specification\-version\fP °ʤ⡢Ǥʤ顼ɤ֤ޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-verbose -拡張機能ディレクトリ内の Jar ファイルを、チェック時に一覧表示します。また、ターゲット jar ファイルのマニフェストの属性、および競合する jar ファイルについても報告します。 +ĥǽǥ쥯ȥ Jar ե򡢥å˰ɽޤޤå jar եΥޥ˥եȤ°Ӷ礹 jar եˤĤƤ𤷤ޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP jar(1) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/idlj.1 --- a/jdk/src/linux/doc/man/ja/idlj.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/idlj.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,20 +19,14 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH idlj 1 "02 Jun 2010" +.TH idlj 1 "14 Apr 2011" .LP -.SH "名前" -idlj \- IDL\-to\-Java コンパイラ -.LP -.RS 3 - +.SH "̾" +idlj \- IDL\-to\-Java ѥ .LP -\f3idlj\fP は、指定された IDL ファイルから Java バインディングを生成します。 -.RE -.SH "形式" -.LP - +\f3idlj\fP ϡꤵ줿 IDL ե뤫 Java Хǥ󥰤ޤ +.SH "" .LP .nf \f3 @@ -44,68 +38,118 @@ .LP .LP -\f2idl\-file\fP は、インタフェース定義言語 (IDL) による定義が入ったファイルの名前です。\f2options\fP の順番は任意ですが、\f2idl\-file\fP よりも前に指定しなければなりません。 -.LP -.SH "説明" +\f2idl\-file\fP ϡ󥿥ե (IDL) ˤäե̾Ǥ\f2options\fP ν֤ǤդǤ\f2idl\-file\fP ˻ꤷʤФʤޤ .LP - +.SH "" .LP -IDL\-to\-Java コンパイラは、指定された IDL ファイルについて Java バインディングを生成します。 バインディングの詳細は、 +.LP +IDL\-to\-Java ѥϡꤵ줿 IDL եˤĤ Java Хǥ󥰤ޤХǥ󥰤ξܺ٤ϡ .na \f2OMG IDL to Java Language Mapping Specification\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html を参照してください。IDL\-to\-Java コンパイラの以前のリリースの中には、\f2idltojava\fP という名前だったものがあります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html 򻲾ȤƤIDL\-to\-Java ѥΰΥ꡼ˤϡ\f2idltojava\fP Ȥ̾äΤޤ +.LP .SS -クライアントバインディングおよびサーバーバインディングの発行 +饤ȥХǥ󥰤ӥСХǥ󥰤ȯ +.LP +.LP +My.idl Ȥ̾ IDL եФ Java Хǥ󥰤ˤϡΥޥɤ¹Ԥޤ .LP -.RS 3 +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + +.LP +.LP +ˤꡢ饤¦ΥХǥ󥰤ޤΥޥɤϡΥޥɤǤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient\fP My.idl +.fl +.fi .LP -My.idl という名前の IDL ファイルに対して Java バインディングを生成するには、次のコマンドを実行します。 \f2idlj My.idl\fP .LP -これにより、クライアント側のバインディングが生成されます。 このコマンドは、次のコマンドと等価です。 \f2idlj \fP\f4\-fclient\fP\f2 My.idl\fP +饤¦ΥХǥ󥰤ˤϡС¦ΥȥȤ߹ޤƤޤ󡣥󥿥եФƥС¦ΥХǥ󥰤ˤϡΥޥɤ¹Ԥޤ .LP -クライアント側のバインディングには、サーバー側のスケルトンは組み込まれていません。インタフェースに対してサーバー側のバインディングを生成するには、次のコマンドを実行します。 \f2idlj \fP\f4\-fserver\fP\f2 My.idl\fP -.LP -サーバー側のバインディングには、クライアント側のバインディングに加えて、スケルトンが組み込まれてています。 これらは、すべて \f2POA\fP (継承モデル) クラスです。クライアント側とサーバー側の両方のバインディングを生成する場合は、次のコマンド (どれも等価) のうちの 1 つを使用します。 \f2idlj \fP\f4\-fclient \-fserver\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP +.nf +\f3 +.fl +idlj \fP\f3\-fserver\fP My.idl +.fl +.fi + .LP .LP -サーバー側のモデルとしては、2 つのモデルが可能です。それは、継承モデルと、Tie 委譲モデルです。 +С¦ΥХǥ󥰤ˤϡ饤¦ΥХǥ󥰤ΤۤˡȥޤޤƤޤϤ٤ơ \f2POA\fP (ĤޤѾǥ) 饹Ǥ饤¦ȥС¦ξΥХǥ󥰤ϡΥޥ (ɤ) Τ 1 ĤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient \-fserver\fP My.idl +.fl +idlj \f3\-fall\fP My.idl +.fl +.fi + .LP .LP -デフォルトのサーバー側のモデルは、「移殖可能サーバント継承モデル」です。\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2MyPOA.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyPOA\fP から継承する必要があります。 +С¦Dzǽʥǥ 2 ĤޤѾǥ Tie ѾǥǤ .LP .LP -\f2MyPOA.java\fP は +ǥեȤΥС¦ΥǥϡְܿǽХȷѾǥפǤ\f2My.idl\fP \f2My\fP 󥿥եƤϡ\f2MyPOA.java\fP Ȥե뤬ޤμ \f2My\fP 󶡤\f2MyPOA\fP Ѿɬפޤ +.LP +.LP +\f2MyPOA.java\fP .na \f2org.omg.PortableServer.Servant\fP @ .fi -http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html を拡張するストリームベースのスケルトンで、スケルトンが実装する IDL インタフェースに関連付けられている \f2InvokeHandler\fP インタフェースとオペレーションインタフェースを実装します。 +http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html ĥ륹ȥ꡼١Υȥǡȥ󤬼 IDL 󥿥ե˴ϢդƤ \f2InvokeHandler\fP 󥿥եȥڥ졼󥤥󥿥եޤ .LP .LP .na \f2Portable Object Adapter (POA)\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html の \f2PortableServer\fP モジュールは、ネイティブの \f2Servant\fP 型を定義します。Java プログラミング言語では、\f2Servant\fP 型は、Java の \f2org.omg.PortableServer.Servant\fP クラスにマッピングされています。これはあらゆる POA サーバント実装の基底クラスとなり多数のメソッドを提供します。 これらのメソッドはアプリケーションプログラマが呼び出すだけではなく、POA 自身からも呼び出され、場合によってはサーバントの動作を制御するためにユーザーがオーバーライドすることもあります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html \f2PortableServer\fP ⥸塼ϡͥƥ֤ \f2Servant\fP ޤJava ץߥ󥰸Ǥϡ\f2Servant\fP Java \f2org.omg.PortableServer.Servant\fP 饹˥ޥåפޤΥ饹ϡ٤Ƥ POA Хȼδ쥯饹ȤƵǽץꥱץޤƤӽФȤΤǤ뤤ĤΥ᥽åɤΤۤˡPOA ΤΤˤäƸƤӽФ졢ХȤư椹뤿˥桼С饤ɤǤ᥽åɤ󶡤ޤ +.LP +.LP +ѾǥΤ⤦ 1 ĤΥץϡ\f2\-oldImplBase\fP ե饰Ѥ뤳ȤǡJ2SE 1.4 ΥС Java ץߥ󥰸ȸߴΤ륵С¦Хǥ󥰤뤳ȤǤ\f2\-oldImplBase\fP ե饰ѤΤϡɸŪʼˡǤϤޤ󡣤 API Ϻ侩ˤʤͽǤΥե饰ѤΤϡJ2SE 1.3 ǵҤ줿¸ΥСȤθߴɬפʾǤξˤϴ¸ MAKEFILE ѹ\f2idlj\fP ѥ \f2\-oldImplBase\fP ե饰ɲäɬפޤʤȡPOA ١ΥС¦ޥåԥ󥰤ޤ̸ߴΤ륵С¦Хǥ󥰤ˤϡΥޥɤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient \-fserver\fP \f3\-oldImplBase\fP My.idl +.fl +idlj \f3\-fall\fP \f3\-oldImplBase\fP My.idl +.fl +.fi + .LP .LP -継承モデルのもう 1 つのオプションは、\f2\-oldImplBase\fP フラグを使用して、J2SE 1.4 より前のバージョンの Java プログラミング言語と互換性のあるサーバー側バインディングを生成することです。ただし、\f2\-oldImplBase\fP フラグを使用するのは、標準的な手法ではありません。これらの API は推奨されていません。このフラグを使用するのは、J2SE 1.3 で記述された既存のサーバーとの互換性を保つ場合だけです。その場合、既存の MAKEFILE を変更して \f2idlj\fP コンパイラに \f2\-oldImplBase\fP フラグを追加する必要があります。 フラグを追加しない場合、POA ベースのサーバー側マッピングが生成されます。下位互換性のあるサーバー側バインディングを生成するには、次のコマンドを使用します。 +\f2My.idl\fP \f2My\fP 󥿥եƤϡ\f2_MyImplBase.java\fP Ȥե뤬ޤ\f2My\fP ФƤμ󶡤μ \f2_MyImplBase\fP ѾʤФʤޤ .LP -\f2idlj \fP\f4\-fclient \-fserver\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fall\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP .LP -\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2_MyImplBase.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyImplBase\fP から継承しなければなりません。 +⤦ 1 ĤΥС¦ǥϡTie ǥȸƤФΤǤΥС¦ǥϡѾǥǤTie ȥȥƱ뤳ȤϤǤʤᡢ̡ʤФʤޤ󡣼ΥޥɤˤäơTie ǥѤΥХǥ󥰤ޤ .LP -もう 1 つのサーバー側モデルは、Tie モデルと呼ばれるものです。このサーバー側モデルは、委譲モデルです。Tie とスケルトンを同時に生成することはできないため、それらは別々に生成しなければなりません。次のコマンドによって、Tie モデル用のバインディングが生成されます。 +.nf +\f3 +.fl +idlj \fP\f3\-fall\fP My.idl +.fl +idlj \f3\-fallTIE\fP My.idl +.fl +.fi + .LP -\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fallTIE\fP\f2 My.idl\fP .LP -\f2My\fP というインタフェースの場合、上記の 2 番目のコマンドにより、\f2MyPOATie.java\fP が生成されます。\f2MyPOATie\fP のコンストラクタは、\f2delegate\fP を取ります。この例では、デフォルトの POA モデルを使用しているため、コンストラクタにも \f2poa\fP が必要です。\f2delegate\fP に対して実装を提供しなければなりませんが、この実装は \f2MyOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2MyPOATie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。 +\f2My\fP Ȥ󥿥եξ硢嵭 2 ܤΥޥɤˤꡢ\f2MyPOATie.java\fP ޤ\f2MyPOATie\fP Υ󥹥ȥ饯ϡ\f2delegate\fP ޤǤϡǥեȤ POA ǥѤƤ뤿ᡢ󥹥ȥ饯ˤ \f2poa\fP ɬפǤ\f2delegate\fP ФƼ󶡤ʤФʤޤ󤬡μ \f2MyOperations\fP 󥿥եѾɬפǡ¾Υ饹ѾɬפϤޤ󡣤μ ORB Ȱ˻Ѥˤϡ\f2MyPOATie\fP ǼåפʤФʤޤ󡣤ȤСΤ褦ˤޤ +.LP .nf \f3 .fl @@ -143,16 +187,24 @@ .fi .LP -他の実装から継承しなければならない場合、標準の継承モデルではなく Tie モデルを使用することがあります。Java の場合は、インタフェースの継承の個数に制限はありませんが、クラスの継承に使用できるスロットは 1 つだけです。継承モデルを使用した場合は、そのスロットが占有されます。Tie モデルを使用した場合は、そのスロットが使用されず、ユーザーが独自の目的で使用することができます。ただし、間接参照のレベルが 1 つ導入されるという欠点があります。つまり、メソッドを呼び出すときに余分なメソッド呼び出しが発生します。 .LP -IDL のバージョンから J2SE 1.4 より前のバージョンの Java 言語へのマッピングと互換性のある、サーバー側の Tie モデルのバインディングを生成するには、次のコマンドを使用します。 -.LP -\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fall\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fallTIE\fP\f2 My.idl\fP +¾μѾʤФʤʤ硢ɸηѾǥǤϤʤ Tie ǥѤ뤳ȤޤJava ξϡ󥿥եηѾθĿ¤Ϥޤ󤬡饹ηѾ˻ѤǤ륹åȤ 1 ĤǤѾǥѤϡΥåȤͭޤTie ǥѤϡΥåȤѤ줺桼ȼŪǻѤ뤳ȤǤޤˡˤϡΥ٥뤬 1 ƳȤޤ᥽åɤƤӽФȤˡ;ʬʥ᥽åɸƤӽФ 1 ȯޤ .LP .LP -\f2My\fP というインタフェースの場合、これにより \f2My_Tie.java\fP が生成されます。\f2My_Tie\fP のコンストラクタは、\f2impl\fP を取ります。\f2impl\fP に対して実装を提供しなければなりませんが、その実装は \f2HelloOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2My_Tie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。 +IDL ΥС󤫤 J2SE 1.4 ΥС Java ؤΥޥåԥ󥰤ȸߴΤ롢С¦ Tie ǥΥХǥ󥰤ˤϡΥޥɤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-oldImplBase\fP \f3\-fall\fP My.idl +.fl +idlj \f3\-oldImplBase\fP \f3\-fallTIE\fP My.idl +.fl +.fi + +.LP +.LP +\f2My\fP Ȥ󥿥եξ硢ˤ \f2My_Tie.java\fP ޤ\f2My_Tie\fP Υ󥹥ȥ饯ϡ\f2impl\fP ޤ\f2impl\fP ФƼ󶡤ʤФʤޤ󤬡μ \f2HelloOperations\fP 󥿥եѾɬפǡ¾Υ饹ѾɬפϤޤ󡣤μ ORB Ȱ˻Ѥˤϡ\f2My_Tie\fP ǼåפʤФʤޤ󡣤ȤСΤ褦ˤޤ .LP .nf \f3 @@ -183,201 +235,383 @@ .fi .LP -.RE .SS -発行されたファイルの代替位置の指定 +ȯԤ줿եذ֤λ +.LP +.LP +ȯԤ줿ե򥫥ȥǥ쥯ȥʳΥǥ쥯ȥ֤ˤϡΤ褦ʥޥɤǥѥƤӽФޤ .LP -.RS 3 +.nf +\f3 +.fl +idlj \fP\f3\-td /altdir\fP My.idl +.fl +.fi .LP -発行されたファイルをカレントディレクトリ以外のディレクトリに置くには、次のようなコマンドでコンパイラを呼び出します。 -.RS 3 +.LP +\f2My\fP 󥿥եξ硢Хǥ󥰤ϡ\f2./My.java\fP ǤϤʤ\f2/altdir/My.java\fP ʤɤȯԤޤ +.LP +.SS +󥯥롼ɥեذ֤λ +.LP +.LP +\f2My.idl\fP ˤ⤦ 1 Ĥ IDL ե \f2MyOther.idl\fP 󥯥롼ɤƤ硢ѥϡǥ쥯ȥ \f2MyOther.idl\fP Τꤷޤ⤷Υե뤬Ȥ \f2/includes\fP ˤϡΤ褦ʥޥɤǥѥƤӽФޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-i /includes\fP My.idl +.fl +.fi + +.LP +.LP +ޤ⤷ \f2My.idl\fP ˡȤ \f2/moreIncludes\fP ˤ \f2Another.idl\fP ⥤󥯥롼ɤƤΤǤСΤ褦ʥޥɤǥѥƤӽФޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-i /includes \-i /moreIncludes\fP My.idl +.fl +.fi .LP -\f2idlj \fP\f4\-td /altdir\fP\f2 My.idl\fP -.RE -\f2My\fP インタフェースの場合、バインディングは、\f2./My.java\fP ではなく、\f2/altdir/My.java\fP などに発行されます。 -.RE -.SS -インクルードファイルの代替位置の指定 +.LP +Τ褦ʷǥ󥯥롼ɤꤹȡޥɤĹʣˤʤޤǡ󥯥롼ɥե򸡺򥳥ѥ˻ؼ뤿̤ˡѰդƤޤˡϡĶѿιͤȻƤޤCLASSPATH ˥ꥹȤƤǥ쥯ȥ \f2idl.config\fP Ȥ̾Υեޤ \f2idl.config\fP ˡΤ褦ʷιԤޤ .LP -.RS 3 +.nf +\f3 +.fl +includes=/includes;/moreIncludes +.fl +\fP +.fi .LP -\f2My.idl\fP にもう 1 つの IDL ファイル \f2MyOther.idl\fP がインクルードされている場合、コンパイラは、ローカルディレクトリに \f2MyOther.idl\fP があるものと想定します。もしそのファイルが、たとえば \f2/includes\fP にある場合は、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes\fP\f2 My.idl\fP .LP -また、もし \f2My.idl\fP に、たとえば \f2/moreIncludes\fP にある \f2Another.idl\fP もインクルードされているのであれば、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes \-i /moreIncludes\fP\f2 My.idl\fP -.LP -このような形式でインクルードを指定すると、コマンドが長くて複雑になります。 そこで、インクルードファイルを検索する場所をコンパイラに指示するための別の方法が用意されています。この方法は、環境変数の考え方と似ています。CLASSPATH にリストされているディレクトリ内に \f2idl.config\fP という名前のファイルを作成します。その \f2idl.config\fP の中に、次のような形式の行を入れます。 \f2includes=/includes;/moreIncludes\fP -.LP -コンパイラは、このファイルを検索し、インクルードリストを読み込みます。この例では、ディレクトリの間の区切り文字はセミコロン (;) になっています。この区切り文字は、プラットフォームによって異なります。たとえば、Windows プラットフォームではセミコロンですが、Unix プラットフォームではコロンです。 \f2インクルード\fPの詳細については、 +ѥϡΥե򸡺󥯥롼ɥꥹȤɤ߹ߤޤǤϡǥ쥯ȥδ֤ζڤʸϥߥ (;) ˤʤäƤޤζڤʸϡץåȥեˤäưۤʤޤȤСWindows ץåȥեǤϥߥǤUnix ץåȥեǤϥǤ \f2󥯥롼\fPξܺ٤ˤĤƤϡ .na -\f2CLASSPATH の設定\fP @ +\f2CLASSPATH \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#general を参照してください。 -.RE +http://java.sun.com/javase/6/docs/technotes/tools/index.html#general 򻲾ȤƤ +.LP .SS -インクルードファイルに対するバインディングの発行 +󥯥롼ɥեФХǥ󥰤ȯ +.LP +.LP +ǥեȤǤϡޥɹԤ˻ꤷ IDL եƤ륤󥿥ե乽¤ΤʤɤˤĤƤΤߡJava Хǥ󥰤ޤ󥯥롼ɤ줿եƤ뷿ˤĤƤϡJava Хǥ󥰤ޤ󡣤ȤС 2 Ĥ IDL եˤĤƹͤƤߤޤ礦 +.LP + +.LP +.LP +\f4My.idl\fP .LP -.RS 3 +.nf +\f3 +.fl +#include +.fl +interface My +.fl +{ +.fl +}; +.fl +\fP +.fi .LP -デフォルトでは、コマンド行に指定した IDL ファイルで定義されているインタフェースや構造体などについてのみ、Java バインディングが生成されます。インクルードされたファイルで定義されている型については、Java バインディングは生成されません。たとえば、次の 2 つの IDL ファイルについて考えてみましょう。 \f4My.idl\fP + .LP -\f2#include \fP -.br -\f2interface My\fP -.br -\f2{\fP -.br -\f2};\fP -.br -\f4MyOther.idl\fP +.LP +\f4MyOther.idl\fP .LP -\f2interface MyOther\fP -.br -\f2{\fP -.br -\f2};\fP\ -.LP -次のコマンドでは、\f2My\fP に対する Java バインディングだけが生成されます。 \f2idlj My.idl\fP -.LP -\f2My.idl\fP で定義されている型と、\f2My.idl\fP にインクルードされたファイル (この例では \f2MyOther.idl\fP) で定義されている型すべてについて Java バインディングを生成するには、次のコマンドを使用します。 \f2idlj \fP\f4\-emitAll\fP\f2 My.idl\fP +.nf +\f3 +.fl +interface MyOther +.fl +{ +.fl +}; +.fl +\fP +.fi + .LP -このデフォルトの規則に関して注意しなければならないことがあります。グローバルスコープに指定した \f2#include\fP 文は、前述のとおりに処理されます。これらの \f2#include\fP 文は、インポート文と見なすことができます。それに対して、他の定義に囲まれたスコープ内に指定した \f2#include\fP 文は、本当の意味での \f2#include\fP 文として処理されます。 つまり、インクルードされたファイルにあるコードが、元のファイルにそのまま指定されているかのように処理され、それに対して Java バインディングが発行されます。次に例を示します。 \f4My.idl\fP + .LP -\f2#include \fP -.br -\f2interface My\fP -.br -\f2{\fP -.br -\f2\ #include \fP -.br -\f2};\ \fP \f4MyOther.idl\fP .LP -\f2interface MyOther\fP -.br -\f2{\fP -.br -\f2};\ \fP \f4Embedded.idl\fP -.LP -\f2enum E {one, two, three};\fP\ -.LP -このとき、次のコマンドを実行すると、 \f2idlj My.idl\fP +ΥޥɤǤϡ\f2My\fP Ф Java Хǥ󥰤ޤ .LP -次のような一連の Java ファイルが生成されます。 \f2./MyHolder.java\fP -.br -\f2./MyHelper.java\fP -.br -\f2./_MyStub.java\fP -.br -\f2./MyPackage\fP -.br -\f2./MyPackage/EHolder.java\fP -.br -\f2./MyPackage/EHelper.java\fP -.br -\f2./MyPackage/E.java\fP -.br -\f2./My.java\fP +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + .LP -インポート文と見なされる \f2#include\fP に定義されているため、\f2MyOther.java\fP は生成されません。ただし、本当の意味での \f2#include\fP で定義されているため、\f2E.java\fP は生成されます。さらに、\f2Embedded.idl\fP が \f2My\fP インタフェースのスコープ内にインクルードされていたため、\f2My\fP のスコープ内 (つまり、\f2MyPackage\fP 内) に生成されています。 .LP -上記の例で \f2\-emitAll\fP フラグを使用すれば、インクルードされたすべてのファイルにあるすべての型が発行されます。 +\f2My.idl\fP Ƥ뷿ȡ\f2My.idl\fP ˥󥯥롼ɤ줿ե (Ǥ \f2MyOther.idl\fP) Ƥ뷿٤ƤˤĤ Java Хǥ󥰤ˤϡΥޥɤѤޤ .LP -.RE -.SS -パッケージの接頭辞の挿入 -.LP -.RS 3 +.nf +\f3 +.fl +idlj \fP\f3\-emitAll\fP My.idl +.fl +.fi .LP -ABC という名前の会社のために作業していて、次のような IDL ファイルを構築したとしましょう。 -.br -\f4Widgets.idl\fP .LP -\f2module Widgets\fP -.br -\f2{\fP -.br -\f2\ interface W1 {...};\fP -.br -\f2\ interface W2 {...};\fP -.br -\f2};\fP\ +ΥǥեȤε§˴ؤդʤФʤʤȤޤХ륹פ˻ꤷ \f2#include\fP ʸϡҤΤȤ˽ޤ \f2#include\fP ʸϡݡʸȸʤȤǤޤФơ¾˰Ϥޤ줿˻ꤷ \f2#include\fP ʸϡΰ̣Ǥ \f2#include\fP ʸȤƽޤĤޤꡢ󥯥롼ɤ줿եˤ륳ɤΥեˤΤޤ޻ꤵƤ뤫Τ褦˽졢Ф Java Хǥ󥰤ȯԤޤϤǤ .LP -このファイルに対して IDL\-to\-Java コンパイラを実行すると、\f2W1\fP および \f2W2\fP に対する Java バインディングが \f2Widgets\fP パッケージ内に生成されます。しかし、業界の慣例によると、会社のパッケージは、\f2com.<会社名>\fP という名前のパッケージ内に置くことになっています。そのため、\f2Widgets\fP パッケージでは不十分です。慣例に従うには、パッケージを \f2com.abc.Widgets\fP にする必要があります。このパッケージ接頭辞を \f2Widgets\fP モジュールに付加するには、次のコマンドを実行します。 \f2idlj \fP\f4\-pkgPrefix Widgets com.abc\fP\f2 Widgets.idl\fP -.LP -\f2Widgets.idl\fP をインクルードしている IDL ファイルがある場合は、そのコマンドにも \f2\-pkgPrefix\fP フラグが必要です。このフラグを指定しないと、その IDL ファイルは、\f2com.abc.Widgets\fP パッケージではなく、\f2Widgets\fP パッケージを検索することになります。 -.LP -接頭辞が必要なパッケージがいくつもある場合は、前述の \f2idl.config\fP ファイルで接頭辞を指定するのが簡単です。パッケージの接頭辞を指定する行は、それぞれ次の形式で記述します。 -.LP -\f2PkgPrefix.=\fP -.LP -したがって、上記の例の場合は、次のように記述します。 \f2PkgPrefix.Widgets=com.abc\fP + .LP .LP -このオプションを使用しても、リポジトリ ID は影響を受けません。 -.LP -.RE -.SS -コンパイル前のシンボルの定義 -.LP -.RS 3 - +\f4My.idl\fP .LP -コンパイル用のシンボルが IDL ファイル内で定義されていない場合は、そのシンボルを定義する必要があります。 これは、たとえば、バインディング内にデバッグコードを組み入れるときに使用します。次のコマンドは、 \f2idlj \fP\f4\-d\fP\f2 MYDEF My.idl\fP -.LP -\f2My.idl\fP 内に \f2#define MYDEF\fP という行を指定した場合と等価です。 -.RE -.SS -既存のバインディングの保持 -.LP -.RS 3 +.nf +\f3 +.fl +#include +.fl +interface My +.fl +{ +.fl + #include +.fl +}; +.fl +\fP +.fi .LP -Java バインディングファイルがすでに存在する場合は、\f2\-keep\fP フラグを指定すると、コンパイラによる上書きを回避できます。デフォルトでは、すでに存在するかどうかにかかわらず、すべてのファイルが生成されます。これらのファイルをカスタマイズした場合 (ただし、それらの内容が正確であるとき以外はカスタマイズは避ける)、\f2\-keep\fP オプションは有用です。次のコマンドは、 \f2idlj \fP\f4\-keep\fP\f2 My.idl\fP -.LP -クライアント側のバインディングで、まだ存在しないものをすべて発行します。 -.RE -.SS -コンパイルの進捗状況の表示 -.LP -.RS 3 .LP -IDL\-to\-Java コンパイラは、実行の各段階で状態メッセージを生成します。「冗長」モード (メッセージが多いモード) にするには、\f2\-v\fP オプションを使用します。 \f2idlj \fP\f4\-v\fP\f2 My.idl\fP +.LP +\f4MyOther.idl\fP .LP -デフォルトでは、コンパイラは冗長モードでは実行されません。 -.RE -.SS -バージョン情報の表示 +.nf +\f3 +.fl +interface MyOther +.fl +{ +.fl +}; +.fl +\fP +.fi + .LP -.RS 3 .LP .LP -IDL\-to\-Java コンパイラのビルドバージョンを表示するには、コマンド行で \f2\-version\fP オプションを指定します。 +\f4Embedded.idl\fP +.LP +.nf +\f3 +.fl +enum E {one, two, three}; +.fl +\fP +.fi + +.LP + +.LP +.LP +ΤȤΥޥɤ¹Ԥȡ +.LP +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + .LP .LP -\f2idlj \-version\fP +Τ褦ʰϢ Java ե뤬ޤ +.LP +.nf +\f3 +.fl +./MyHolder.java +.fl +./MyHelper.java +.fl +./_MyStub.java +.fl +./MyPackage +.fl +./MyPackage/EHolder.java +.fl +./MyPackage/EHelper.java +.fl +./MyPackage/E.java +.fl +./My.java +.fl +\fP +.fi + +.LP +.LP +ݡʸȸʤ \f2#include\fP Ƥ뤿ᡢ\f2MyOther.java\fP ޤ󡣤ΰ̣Ǥ \f2#include\fP Ƥ뤿ᡢ\f2E.java\fP ޤˡ\f2Embedded.idl\fP \f2My\fP 󥿥եΥ˥󥯥롼ɤƤᡢ\f2My\fP Υ (Ĥޤꡢ\f2MyPackage\fP ) Ƥޤ +.LP +.LP +嵭 \f2\-emitAll\fP ե饰ѤС󥯥롼ɤ줿٤ƤΥեˤ뤹٤ƤηȯԤޤ +.LP +.SS +ѥåƬ +.LP +.LP +ABC Ȥ̾βҤΤ˺ȤƤơΤ褦 IDL եۤȤޤ礦 +.LP + +.LP +.LP +\f4Widgets.idl\fP +.LP +.nf +\f3 +.fl +module Widgets +.fl +{ +.fl + interface W1 {...}; +.fl + interface W2 {...}; +.fl +}; +.fl +\fP +.fi + +.LP + .LP .LP -バージョン情報は、コンパイラによって生成されたバインディング内にも書き込まれています。このオプションをコマンド行に指定すると、それ以外のオプションを指定しても、すべて無視されます。 +ΥեФ IDL\-to\-Java ѥ¹Ԥȡ\f2W1\fP \f2W2\fP Ф Java Хǥ󥰤 \f2Widgets\fP ѥåޤȳδˤȡҤΥѥåϡ\f2com.<̾>\fP Ȥ̾Υѥå֤ȤˤʤäƤޤΤᡢ\f2Widgets\fP ѥåǤԽʬǤ˽ˤϡѥå \f2com.abc.Widgets\fP ˤɬפޤΥѥåƬ \f2Widgets\fP ⥸塼ղäˤϡΥޥɤ¹Ԥޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-pkgPrefix Widgets com.abc\fP Widgets.idl +.fl +.fi + +.LP +.LP +\f2Widgets.idl\fP 򥤥󥯥롼ɤƤ IDL ե뤬ϡΥޥɤˤ \f2\-pkgPrefix\fP ե饰ɬפǤΥե饰ꤷʤȡ IDL եϡ\f2com.abc.Widgets\fP ѥåǤϤʤ\f2Widgets\fP ѥå򸡺뤳Ȥˤʤޤ +.LP +.LP +ƬɬפʥѥåĤ⤢ϡҤ \f2idl.config\fP եƬꤹΤñǤѥåƬꤹԤϡ줾켡ηǵҤޤ +.LP +.nf +\f3 +.fl +PkgPrefix.= +.fl +\fP +.fi + +.LP +äơ嵭ξϡΤ褦˵Ҥޤ +.nf +\f3 +.fl +PkgPrefix.Widgets=com.abc +.fl +\fP +.fi + +.LP +.LP +ΥץѤƤ⡢ݥȥ ID ϱƶޤ +.LP +.SS +ѥΥܥ +.LP +.LP +ѥѤΥܥ뤬 IDL եƤʤϡΥܥɬפޤϡȤСХǥ˥ǥХåɤȤȤ˻ѤޤΥޥɤϡ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-d\fP MYDEF My.idl +.fl +.fi + +.LP .LP -.RE -.SH "オプション" +\f2My.idl\fP \f2#define MYDEF\fP ȤԤꤷǤ +.LP +.SS +¸ΥХǥ󥰤ݻ +.LP +.LP +Java Хǥ󥰥ե뤬Ǥ¸ߤϡ\f2\-keep\fP ե饰ꤹȡѥˤ񤭤ǤޤǥեȤǤϡǤ¸ߤ뤫ɤˤ餺٤ƤΥե뤬ޤΥե򥫥ޥ (ƤΤǤȤʳϥޥ򤱤)\-keep ץͭѤǤΥޥɤϡ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-keep\fP My.idl +.fl +.fi + +.LP +.LP +饤¦ΥХǥ󥰤ǡޤ¸ߤʤΤ򤹤٤ȯԤޤ +.LP +.SS +ѥοĽɽ +.LP +.LP +IDL\-to\-Java ѥϡ¹ԤγʳǾ֥åޤ־Ĺץ⡼ (å¿⡼) ˤˤϡ\f2\-v\fP ץѤޤ .LP +.nf +\f3 +.fl +idlj \fP\f3\-v\fP My.idl +.fl +.fi .LP +.LP +ǥեȤǤϡѥϾĹ⡼ɤǤϼ¹Ԥޤ +.LP +.SS +Сɽ +.LP +.LP +IDL\-to\-Java ѥΥӥɥСɽˤϡޥɹԤ \f2\-version\fP ץꤷޤ +.LP +.nf +\f3 +.fl +idlj \-version +.fl +\fP +.fi + +.LP +.LP +Сϡѥˤä줿Хǥˤ񤭹ޤƤޤΥץ򥳥ޥɹԤ˻ꤹȡʳΥץꤷƤ⡢٤̵뤵ޤ +.LP +.SH "ץ" +.LP .RS 3 .TP 3 \-d symbol -このオプションは、IDL ファイルに次のような行を追加した場合と等価です。 -.RS 3 - -.LP +ΥץϡIDL ե˼Τ褦ʹԤɲäǤ .nf \f3 .fl @@ -385,33 +619,32 @@ .fl \fP .fi -.RE .TP 3 \-emitAll -\f2#include\fP ファイル内で定義されているものも含めて、すべての型を発行します。 +#include ե ƤΤޤơ \f2٤Ƥη\fP ȯԤޤ .TP 3 \-fside -発行するバインディングを定義します。 \f2side\fP は、\f2client\fP、\f2server\fP、\f2serverTIE\fP、\f2all\fP、\f2allTIE\fP のどちらかです。\f2\-fserverTIE\fP または \f2\-fallTIE\fP オプションを指定すると、委譲モデルスケルトンが発行されます。このフラグを指定しなかった場合は、\f2\-fclient\fP が指定されたものと見なされます。 +ȯԤХǥ󥰤ޤ\f2side\fP \f2client\fP\f2server\fP\f2serverTIE\fP\f2all\fP\f2allTIE\fP Τ줫ˤʤޤ\f2\-fserverTIE\fP ޤ \f2\-fallTIE\fP ץꤹȡѾǥ륹ȥȯԤޤΥե饰ꤷʤäϡ\f2\-fclient\fP ꤵ줿Τȸʤޤ .TP 3 \-i include\-path -デフォルトでは、インクルードファイルはカレントディレクトリから検索されます。このオプションを指定すると、ほかのディレクトリを追加できます。 +ǥեȤǤϡ󥯥롼ɥեϥȥǥ쥯ȥ꤫鸡ޤΥץꤹȡۤΥǥ쥯ȥɲäǤޤ .TP 3 \-keep -生成されるファイルがすでに存在している場合は、そのファイルが上書きされません。デフォルトでは、上書きされます。 +ե뤬Ǥ¸ߤƤϡΥե뤬񤭤ޤ󡣥ǥեȤǤϡ񤭤ޤ .TP 3 \-noWarn -警告メッセージを表示しないようにします。 +ٹåɽʤ褦ˤޤ .TP 3 \-oldImplBase -v1.4 より前の JDK ORB と互換性のあるスケルトンを生成します。デフォルトでは、POA 継承モデルのサーバー側バインディングが生成されます。このオプションを指定すると、\f2ImplBase\fP 継承モデルのクラスであるサーバー側バインディングが生成されるので、古いバージョンの Java プログラミング言語との下位互換性が得られます。 +v1.4 JDK ORB ȸߴΤ륹ȥޤǥեȤǤϡPOA ѾǥΥС¦Хǥ󥰤ޤΥץꤹȡ\f2ImplBase\fP ѾǥΥ饹Ǥ륵С¦Хǥ󥰤ΤǡŤС Java ץߥ󥰸Ȥβ̸ߴޤ .TP 3 \-pkgPrefix type prefix -\f2type\fP がファイルスコープで検出された場合は、その型に対して生成されるすべてのファイルについて、生成される Java パッケージ名に \f2prefix\fP という接頭辞が付加されます。\f2type\fP は、トップレベルモジュールの単純名か、どのモジュールよりも外側で定義された IDL 型の単純名のどちらかです。 +\f2type\fP ե륹פǸФ줿ϡηФ뤹٤ƤΥեˤĤơ Java ѥå̾ \f2prefix\fP ȤƬղäޤ\f2type\fP ϡȥåץ٥⥸塼ñ̾ɤΥ⥸塼⳰¦줿 IDL ñ̾Τɤ餫Ǥ .TP 3 \-pkgTranslate type package -識別子の中にモジュール名 \f2type\fP が検出されると、生成される Java パッケージ内のすべてのファイルについて、識別子の中のその名前が \f2package\fP で置き換えられます。最初に \f2pkgPrefix\fP を変更します。\f2type\fP は、トップレベルのモジュール、またはすべてのモジュールの外部で定義された IDL 型の単純名です。 そして、完全なパッケージ名に正確に一致しなければなりません。 +̻Ҥ˥⥸塼̾ type Фȡ Java ѥåΤ٤ƤΥեˤĤơ̻ҤΤ̾ package ֤ޤǽ \f2pkgPrefix\fP ѹޤ\f2type\fP ϡȥåץ٥Υ⥸塼롢ޤϤ٤ƤΥ⥸塼γ줿 IDL ñ̾Ǥơʥѥå̾Τ˰פʤФʤޤ .LP -1 つの識別子の中で複数の変換がマッチする場合は、もっとも長いマッチが選ばれます。たとえば、次のような引数が指定されている場合は、 +1 Ĥμ̻ҤʣѴޥåϡäȤĹޥåФޤȤСΤ褦ʰꤵƤϡ .nf \f3 .fl @@ -420,89 +653,85 @@ \fP .fi .LP -次のような変換が実施されます。 +Τ褦Ѵ»ܤޤ .nf \f3 .fl -foo => bar +foo => bar .fl -foo.boo => bar.boo +foo.boo => bar.boo .fl -foo.baz => buzz.fizz +foo.baz => buzz.fizz .fl -foo.baz.bar => buzz.fizz.bar +foo.baz.bar => buzz.fizz.bar .fl \fP .fi .LP -次のパッケージ名を変換することはできません。 +Υѥå̾Ѵ뤳ȤϤǤޤ .RS 3 .TP 2 o \f2org\fP .TP 2 o -\f2org.omg\fP、または \f2org.omg\fP のサブパッケージ +\f2org.omg\fPޤ \f2org.omg\fP Υ֥ѥå .RE .LP -これらのパッケージ名を変換しようとすると、互換性のないコードが生成されます。 そして、\f2\-pkgTranslate\fP のあとの最初の引数としてそれらのパッケージを使用すると、エラーとして扱われます。 +Υѥå̾Ѵ褦ȤȡߴΤʤɤޤơ\f2\-pkgTranslate\fP ΤȤκǽΰȤƤΥѥåѤȡ顼Ȥưޤ .TP 3 \-skeletonName xxx%yyy -\f2xxx%yyy\fP が、スケルトンに名前を付けるパターンとして使用されます。デフォルトは、次のとおりです。 +\f2xxx%yyy\fP ȥ̾դѥȤƻѤޤǥեȤϼΤȤǤ .RS 3 .TP 2 o -\f2POA\fP 基底クラスの場合は「%POA」(\f2\-fserver\fP または \f2\-fall\fP) +\f2POA\fP 쥯饹ξϡ%POA(\f2\-fserver\fP ޤ \f2\-fall\fP) .TP 2 o -\f2oldImplBase\fP クラスの場合は「_%ImplBase」(\f2\-oldImplBase\fP かつ (\f2\-fserver\fP または \f2\-fall\fP)) +\f2oldImplBase\fP 饹ξϡ_%ImplBase(\f2\-oldImplBase\fP (\f2\-fserver\fP ޤ \f2\-fall\fP)) .RE .TP 3 \-td dir -出力ディレクトリとして、カレントディレクトリではなく、\f2dir\fP が使用されます。 +ϥǥ쥯ȥȤơȥǥ쥯ȥǤϤʤ\f2dir\fP Ѥޤ .TP 3 \-tieName xxx%yyy -このパターンに従って Tie に名前が付けられます。デフォルトは、次のとおりです。 +Υѥ˽ä Tie ̾դޤǥեȤϼΤȤǤ .RS 3 .TP 2 o -\f2POA\fP Tie 基底クラスの場合は「%POATie」(\f2\-fserverTie\fP または \f2\-fallTie\fP) +\f2POA\fP Tie 쥯饹ξϡ%POATie(\f2\-fserverTie\fP ޤ \f2\-fallTie\fP) .TP 2 o -\f2oldImplBase\fP Tie クラスの場合は「%_Tie」(\f2\-oldImplBase\fP かつ (\f2\-fserverTie\fP または \f2\-fallTie\fP)) +\f2oldImplBase\fP Tie 饹ξϡ%_Tie(\f2\-oldImplBase\fP (\f2\-fserverTie\fP ޤ \f2\-fallTie\fP)) .RE .TP 3 -\-verbose -冗長モードになります。 +\-nowarn, \-verbose +Ĺ⡼ɤˤʤޤ .TP 3 \-version -バージョン情報を表示して終了します。 +Сɽƽλޤ .RE .LP -各オプションの詳細については、「説明」のセクションを参照してください。 -.SH "制約" -.LP - +ƥץξܺ٤ˤĤƤϡפΥ򻲾ȤƤ +.SH "" .LP .RS 3 .TP 2 o -グローバルスコープ内のエスケープされた識別子は、IDL プリミティブ型の \f2Object\fP または \f2ValueBase\fP と同じ綴りであってはなりません。これらの識別子については、シンボルテーブルが事前にロードされており、これらの識別子の再定義を許可すると元の定義が上書きされてしまいます。これは、おそらく恒久的な制約です。 +Х륹Υפ줿̻ҤϡIDL ץߥƥַ \f2Object\fP ޤ \f2ValueBase\fP Ʊ֤ǤäƤϤʤޤ󡣤μ̻ҤˤĤƤϡܥơ֥뤬˥ɤƤꡢμ̻ҤκĤȸ񤭤Ƥޤޤϡ餯ŪǤ .TP 2 o -\f2fixed\fP という IDL 型はサポートされていません。 +\f2fixed\fP Ȥ IDL ϥݡȤƤޤ .RE .LP -.SH "既知の問題点" -.LP - +.SH "Τ" .LP .RS 3 .TP 2 o -グローバル識別子についてインポートが生成されません。予期されないローカル impl を呼び出すと、例外を受け取ります。 しかし、その原因は、\f2ServerDelegate\fP DSI コード内の \f2NullPointerException\fP にあるようです。 +Х뼱̻ҤˤĤƥݡȤޤͽʤ impl ƤӽФȡ㳰ޤ θϡ\f2ServerDelegate\fP DSI \f2NullPointerException\fP ˤ褦Ǥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jar.1 --- a/jdk/src/linux/doc/man/ja/jar.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jar.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,104 +19,93 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jar 1 "02 Jun 2010" +.TH jar 1 "14 Apr 2011" .LP -.SH "名前" -jar \- Java ARchive ツール +.SH "̾" +jar \- Java ARchive ġ .LP -\f3jar\fP は複数のファイルを 1 つの JAR アーカイブファイルに結合します。 +\f3jar\fP ʣΥե 1 Ĥ JAR ֥ե˷礷ޤ .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -コマンド行引数ファイル +ޥɹ԰ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .RS 3 .TP 3 -JAR ファイルの作成 +JAR եκ \f4jar c\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの更新 +JAR եι \f4jar u\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの抽出 +JAR ե \f4jar x\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの内容の表形式による一覧表示 +JAR եƤɽˤɽ \f4jar t\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルへのインデックスの追加 +JAR եؤΥǥåɲ \f4jar i\fP \f2jarfile\fP \f2[\-J\fP\f2option\fP\f2]\fP .RE .LP .LP -説明 -.LP -.RS 3 - + .LP .RS 3 .TP 3 cuxtiv0Mmfe -\f2jar\fP コマンドを制御するオプション +\f2jar\fP ޥɤ椹륪ץ .TP 3 jarfile -作成 (\f2c\fP)、更新 (\f2u\fP)、抽出 (\f2x\fP)、または内容の一覧表示 (\f2t\fP) の対象となる JAR ファイル。\f2f\fP オプションとファイル名 \f2jarfile\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f2f\fP と \f2jarfile\fP を省略すると、標準入力から「JAR ファイル」が取得されるか (x および t の場合)、標準出力へ「JAR ファイル」が送信されます(c および u の場合)。 + (\f2c\fP) (\f2u\fP) (\f2x\fP)ޤܼɽ (\f2t\fP) оݤȤʤ JAR ե롣\f2f\fP ץȥե̾ \f2jarfile\fP Ȥڥˤʤޤ Ĥޤꡢ򵭽ҤС⤦⵭Ҥɬפޤ \f2f\fP \f2jarfile\fP άȡɸϤJAR եפ뤫 (x t ξ)ɸϤءJAR եפޤ(c u ξ) .TP 3 inputfiles -\f2jarfile\fP に結合されるか (c および u の場合)、\f2jarfile\fP から抽出 (x の場合) または一覧表示 (t の場合) される、空白で区切られたファイルまたはディレクトリ。すべてのディレクトリは再帰的に処理されます。このファイルは、オプション \f2O\fP (ゼロ) を使用しないかぎり圧縮されます。 +\f2jarfile\fP ˷礵뤫 (c u ξ)\f2jarfile\fP (x ξ) ޤϰɽ (t ξ) 롢Ƕڤ줿եޤϥǥ쥯ȥꡣ٤ƤΥǥ쥯ȥϺƵŪ˽ޤΥեϡץ \f20\fP () Ѥʤ갵̤ޤ .TP 3 manifest -\f2name\fP\f2:\fP\f2value\fP のペアが、JAR ファイルの MANIFEST.MF に含まれている既存のマニフェストファイル。\f2\-m\fP オプションとファイル名 \f2manifest\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f3m\fP、\f3f\fP、および \f3e\fP の出現順序は、\f2manifest\fP、\f2jarfile\fP、\f2entrypoint\fP の出現順序と一致する必要があります。 +JAR ե MANIFEST.MF ˴ޤ٤ \f2name\fP\f2:\fP \f2value\fP ڥޤޤƤ¸Υޥ˥եȥե롣\f2m\fP ץȥե̾ \f2manifest\fP ȤڥˤʤޤĤޤꡢ򵭽ҤС⤦⵭Ҥɬפޤ\f3m\fP\f3f\fP \f3e\fP νиϡ\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP νиȰפɬפޤ .TP 3 entrypoint -実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして設定するクラスの名前。\f2\-e\fP オプションと entrypoint は対になっています。 どちらかを指定する場合は両方とも指定する必要があります。\f3m\fP、\f3f\fP、および \f3e\fP の出現順序は、\f2manifest\fP、\f2jarfile\fP、\f2entrypoint\fP の出現順序と一致する必要があります。 +¹Բǽ JAR ե˥Хɥ뤵줿ɥ󥢥ץꥱΥץꥱ󥨥ȥݥȤȤꤹ륯饹̾\f2\-e\fP ץ entrypoint ФˤʤäƤޤɤ餫ꤹξȤꤹɬפޤ\f3m\fP\f3f\fP \f3e\fP νиϡ\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP νиȰפɬפޤ .TP 3 \-C\ dir -これに続く \f2inputfiles\fP 引数を処理する間、ディレクトリを \f2dir\fP へ一時的に変更します。\f2\-C\ \fP\f2dir\fP \f2inputfiles\fP のセットは複数使用できます。 +³ \f2inputfiles\fP ֡ǥ쥯ȥ \f2dir\fP ذŪѹޤ \f2\-C\ \fP\f2\-\ dir\fP \f2inputfiles\fP ΥåȤʣѤǤޤ .TP 3 \-Joption -Java 実行環境へ渡されるオプション。\f2\-J\fP と \f2option\fP の間には空白を入れないでください。 +Java ¹ԴĶϤ륪ץ\f2\-J\fP \f2option\fP δ֤ˤ϶ʤǤ .RE .LP -.RE -.SH "説明" +.SH "" .LP - -.LP -\f3jar\fP ツールは、複数のファイルを 1 つの JAR アーカイブファイルに結合します。 \f3jar\fP は、ZIP および +\f3jar\fP ġʣΥե 1 Ĥ JAR ֥ե˷礷ޤ\f3jar\fP ϡZIP .na \f2ZLIB\fP @ .fi -http://www.gzip.org/zlib/ 圧縮形式をベースにした、汎用のアーカイブおよび圧縮ツールです。ただし \f3jar\fP ツールの主な目的は、いくつかの Java アプレットやアプリケーションを 1 個のアーカイブに統合することです。アプレットやアプリケーションのコンポーネント (ファイル、イメージ、およびサウンド) が 1 つのアーカイブに結合されていると、Java エージェント (ブラウザなど) は、それらのコンポーネントを 1 回の HTTP トランザクションでダウンロードすることができ、コンポーネントごとに新しい接続を必要とすることがありません。これによって、ダウンロードの回数が大幅に減ります。 また、\f3jar\fP はファイルを圧縮するので、ダウンロード時間も短くなります。また、ファイル内の個々のエントリにアプレット作成者による署名を書き込めるので、配布元の認証が可能になります。jar ツールの構文は、\f2tar\fP コマンドの構文とほぼ同じです。\f3JAR\fP アーカイブは、圧縮されているかどうかにかかわらず、クラスパスのエントリとして使用できます。 +http://www.gzip.org/zlib/ ̷˴ŤѤΥ֤Ӱ̥ġǤ \f3jar\fP ġμŪϡĤ Java ץåȤ䥢ץꥱ 1 ĤΥ֤礹뤳ȤǤץåȤ䥢ץꥱΥݡͥ (ե롢᡼ӥ) 1 ĤΥ֤˷礵ƤȡJava (֥饦ʤ) ϡΥݡͥȤ 1 HTTP ȥ󥶥ǥɤ뤳ȤǤݡͥȤȤ˿³ɬפȤ뤳Ȥޤ󡣤ˤꡢɻ֤ṳ̂ޤޤ\f3jar\fP ϥեΰ̤ԤΤǡɻ֤ṳ̂ޤޤեθġΥȥ˥ץåȺԤˤ̾񤭹Τǡ۸ǧڤǽˤʤޤjar ġιʸϡ\f2tar\fP ޥɤιʸȤۤƱǤ\f3JAR\fP ֤ϡ̤Ƥ뤫ɤˤ餺饹ѥΥȥȤƻѤǤޤ .LP -複数のファイルを JAR ファイルへ結合する一般的な使用法は次のとおりです。 -.LP -.RS 3 - +ʣΥե JAR եط礹ŪʻˡϼΤȤǤ .LP .nf \f3 @@ -125,19 +114,15 @@ .fl \fP .fi -.RE .LP -この例では、現在のディレクトリにあるクラス (.class) ファイルがすべて、\f2myFile.jar\fP という名前のファイルに格納されます。jar ツールは自動的に、\f2META\-INF/MANIFEST.MF\fP という名前のマニフェストファイルエントリを生成します。これは常に、JAR ファイルの最初のエントリになります。マニフェストファイルは、アーカイブに関するメタ情報を宣言し、そのデータを \f2name\ :\ value\fP ペアとして格納します。jar ツールがマニフェストファイル内にメタ情報を格納する方法の詳細については、「 +ǤϡߤΥǥ쥯ȥˤ륯饹 (.class) ե뤬٤ơ\f2myFile.jar\fP Ȥ̾Υե˳Ǽޤjar ġϼưŪˡ \f2META\-INF/MANIFEST.MF\fP Ȥ̾Υޥ˥եȥե륨ȥޤϾˡJAR եκǽΥȥˤʤޤޥ˥եȥեϡ֤˴ؤ᥿Υǡ \f2name\ :\ value\fP ڥȤƳǼޤjar ġ뤬ޥ˥եȥե˥᥿Ǽˡξܺ٤ˤĤƤϡ .na \f2JAR file specification\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifest」を参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifestפ򻲾ȤƤ .LP -既存のマニフェストファイル内に格納された \f2name\ :\ value\fP ペアを JAR ファイルに含める必要がある場合には、そのファイルを次のように \f2\-m\fP オプションを使って指定します。 -.LP -.RS 3 - +¸Υޥ˥եȥե˳Ǽ줿 \f2name\ :\ value\fP ڥ JAR ե˴ޤɬפˤϡΥե򼡤Τ褦 \f2\-m\fP ץȤäƻꤷޤ .LP .nf \f3 @@ -146,20 +131,16 @@ .fl \fP .fi -.RE .LP -既存のマニフェストファイルは改行文字で終わっている必要があります。 マニフェストファイルが改行文字で終わっていない場合、\f3jar\fP はその最後の行を解析しません。 +¸Υޥ˥եȥեϲʸǽäƤɬפޤޥ˥եȥե뤬ʸǽäƤʤȡ\f3jar\fP ϤκǽԤϤޤ .br .LP .br .LP -\f3注:\ \fPコマンド行に \f2cmf\fP ではなく \f2cfm\fP が指定された jar コマンド (m と \-f オプションの順番を逆にする) の場合、\f3jar\fP コマンド行にまず JAR アーカイブの名前を指定し、続いてマニフェストファイルの名前を指定する必要があります。 次に例を示します。 -.RS 3 - -.LP +\f3:\ \fPޥɹԤ \f2cmf\fP ǤϤʤ \f2cfm\fP ꤵ줿 jar ޥ (m \-f ץν֤դˤ) ξ硢\f3jar\fP ޥɹԤˤޤ JAR ֤̾ꤷ³ƥޥ˥եȥե̾ꤹɬפޤ 򼨤ޤ .nf \f3 .fl @@ -167,15 +148,11 @@ .fl \fP .fi -.RE .LP -マニフェストは、RFC822 ASCII 形式で規定されたテキスト形式であるため、マニフェストファイルの内容を簡単に表示および編集できます。 +ޥ˥եȤϡRFC822 ASCII ǵꤵ줿ƥȷǤ뤿ᡢޥ˥եȥեƤñɽԽǤޤ .LP -JAR ファイルからファイルを抽出する場合は、\f2x\fP を使用します。 -.LP -.RS 3 - +JAR ե뤫եФϡ \f2x\fP Ѥޤ .LP .nf \f3 @@ -184,14 +161,10 @@ .fl \fP .fi -.RE .LP .LP -jar ファイルから個別のファイルを抽出する場合は、そのファイル名を指定します。 -.LP -.RS 3 - +jar ե뤫̤ΥեФϡΥե̾ꤷޤ .LP .nf \f3 @@ -200,18 +173,14 @@ .fl \fP .fi -.RE .LP .LP -JDK のバージョン 1.3 以降から、\f2jar\fP ユーティリティーで +JDK ΥС 1.3 ʹߤ顢\f2jar\fP 桼ƥƥ .na \f2JarIndex\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex がサポートされています。 JarIndex を使用すると、アプリケーションのクラスローダーで JAR ファイルからクラスがロードされるときの効率が向上します。アプリケーションまたはアプレットが複数の JAR ファイルにバンドルされている場合は、クラスがロードされるときに、必要な JAR ファイル以外のダウンロードおよびオープンは行われません。このパフォーマンスの最適化は、新しい \f2\-i\fP オプションを指定して \f2jar\fP を実行すると有効になります。このオプションを使うと、指定した JAR メインファイルとそのメインファイルが依存しているすべての JAR ファイルについて、パッケージ位置情報が生成されます。 メインファイルが依存している JAR ファイルは、JAR メインファイルのマニフェストの \f2Class\-Path\fP 属性に指定しておく必要があります。 -.LP -.RS 3 - +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR_Index ݡȤƤޤ JarIndex ѤȡץꥱΥ饹 JAR ե뤫饯饹ɤȤθΨ夷ޤץꥱޤϥץåȤʣ JAR ե˥Хɥ뤵Ƥϡ饹ɤȤˡɬפ JAR եʳΥɤӥץϹԤޤ󡣤Υѥեޥ󥹤κŬϡ \f2\-i\fP ץꤷ \f2jar\fP ¹ԤͭˤʤޤΥץȤȡꤷ JAR ᥤեȡΥᥤե뤬¸Ƥ뤹٤Ƥ JAR եˤĤơѥå־ޤᥤե뤬¸Ƥ JAR եϡJAR ᥤեΥޥ˥եȤ \f2Class\-Path\fP °˻ꤷƤɬפޤ .LP .nf \f3 @@ -220,52 +189,42 @@ .fl \fP .fi -.RE .LP .LP -この例では、\f2INDEX.LIST\fP ファイルが \f2main.jar\fP の \f2META\-INF\fP ディレクトリに挿入されます。 +Ǥϡ \f2INDEX.LIST\fP ե뤬 \f2main.jar\fP \f2META\-INF\fP ǥ쥯ȥޤ .br .br -このファイルに格納されている情報を使用して、アプリケーションのクラスローダーは、効率的にクラスをロードします。 インデックスファイルに位置情報を格納する方法の詳細は、 「\f2JarIndex\fP 仕様」を参照してください。 +Υե˳ǼƤѤơץꥱΥ饹ϡΨŪ˥饹ɤޤǥåե˰־Ǽˡξܺ٤ϡJarIndex ͡פ򻲾ȤƤ .br .br -ディレクトリをコピーするには、まず \f2dir1\fP 内のファイルを圧縮して標準出力に出力し、続いて標準入力から \f2dir2\fP に抽出します (両方の \f2jar\fP コマンドから \f2\-f\fP オプションを省く)。 次に例を示します。 -.LP -.RS 3 - +ǥ쥯ȥ򥳥ԡˤϡޤ \f2dir1\fP Υե򰵽̤ \f2stdout\fP ˽Ϥ³ \f2stdin\fP Ф \f2dir2\fP ˽Ϥޤ (\f2\-f\fP ץϤɤ \f2jar\fP ޥɤǤά) .LP .nf \f3 .fl -% (cd dir1; jar c .) | (cd dir2; jar x) +% (cd dir1; jar c .)| (cd dir2; jar x) .fl \fP .fi -.RE .LP .LP -\f2jar\fP を使って JAR ファイルや JAR ファイルマニフェストを操作するコマンドサンプルを確認するには、「例」を参照してください。また、「 +\f2jar\fP Ѥ JAR ե JAR ޥ˥եȥե륵ץ륳ޥɤǧϡҤΡפ򻲾ȤƤޤ .na \f2Java Tutorial\fP @ .fi -http://java.sun.com/docs/books/tutorial/jar」の JAR コースも参照してください。 +http://download.oracle.com/javase/tutorial/deployment/jarפ JAR ⻲ȤƤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 c -\f2jarfile\fP の名前で新しいアーカイブファイルを作成するか (\f2f\fP が指定されている場合)、標準出力で作成します (\f2f\fP と \f2jarfile\fP が省略されている場合)。\f2inputfiles\fP で指定されたファイルとディレクトリを、このアーカイブに追加します。 +f ꤵ줿 \f2jarfile\fP Ȥ̾ \f2\fP ֥ե \f2\fP f \f2jarfile\fP ά줿ɸϤ˾Ϥޤ\f2inputfiles\fP ǻꤵ줿եȥǥ쥯ȥ򡢤Υ֤ɲäޤ .TP 3 u -\f2inputfiles\fP で指定されたファイルとディレクトリを追加することにより、既存のファイル \f2jarfile\fP を更新します (\f2f\fP が指定されている場合)。 例を示します。 -.RS 3 - -.LP +f ꤵƤˡ¸ե \f2jarfile\fP \f2Ūǡ\fP \f2inputfiles\fP ˻ꤵ줿եǥ쥯ȥɲäޤ򼨤ޤ .nf \f3 .fl @@ -273,11 +232,7 @@ .fl \fP .fi -.RE -上のコマンドは、ファイル \f2foo.class\fP を既存の JAR ファイル \f2foo.jar\fP に追加します。次の例に示すように、\f2\-u\fP オプションは、マニフェストエントリも更新できます。 -.RS 3 - -.LP +Υޥɤϡե \f2foo.class\fP ¸ JAR ե \f2foo.jar\fP ɲäޤ˼褦ˡ\f2\-u\fP ץϡޥ˥եȥȥ⹹Ǥޤ .nf \f3 .fl @@ -285,20 +240,16 @@ .fl \fP .fi -.RE -\f2foo.jar\fP マニフェストをマニフェスト内の \f2name:value\fP ペアで更新します。 +\f2foo.jar\fP ޥ˥եȤޥ˥ե \f2name:value\fP ڥǹޤ .TP 3 x -\f2jarfile\fP から (\f2f\fP が指定されている場合)、または標準入力から (\f2f\fP と \f2jarfile\fP が省略されている場合)、ファイルとディレクトリを抽出します。\f2inputfiles\fP が指定されている場合は、その指定したファイルとディレクトリだけが抽出されます。指定されていなければ、すべてのファイルとディレクトリが抽出されます。抽出されたファイルの日時は、アーカイブ内で設定されたものです。 +f ꤵ줿 \f2jarfile\fP \f2\fP \f2f\fP \f2jarfile\fP ά줿ɸϤ顢եǥ쥯ȥФޤ\f2inputfiles\fP ꤵƤϡλꤷեȥǥ쥯ȥФޤꤵƤʤС٤ƤΥեȥǥ쥯ȥ꤬ФޤФ줿եϡꤵ줿ΤǤ .TP 3 t -\f2jarfile\fP から (\f2f\fP が指定されている場合)、または標準入力から (\f2f\fP と \f2jarfile\fP が省略されている場合)、内容を表形式で一覧表示します。\f2inputfiles\fP が指定されている場合は、その指定したファイルとディレクトリだけが一覧表示されます。指定されていなければ、すべてのファイルとディレクトリが一覧表示されます。 +f ꤵ줿 \f2jarfile\fP \f2\fP \f2f\fP \f2jarfile\fP ά줿ɸϤ顢ܼɽޤ\f2inputfiles\fP ꤵƤϡλꤷեȥǥ쥯ȥɽޤꤵƤʤС٤ƤΥեȥǥ쥯ȥ꤬ɽޤ .TP 3 i -指定された \f2jarfile\fP と、それに依存する JAR ファイルについて、インデックス情報を生成します。例を示します。 -.RS 3 - -.LP +ꤵ줿 \f2jarfile\fP ȡ˰¸ JAR եˤĤơǥåޤȤС .nf \f3 .fl @@ -306,29 +257,25 @@ .fl \fP .fi -.RE .LP -上のコマンドは、\f2foo.jar\fP 内に \f2INDEX.LIST\fP ファイルを生成します。 このファイルには、\f2foo.jar\fP と、\f2foo.jar\fP の \f2Class\-Path\fP 属性に指定されたすべての JAR ファイルに入っている各パッケージの位置情報が書き込まれています。 インデックスの例を参照してください。 +Υޥɤϡ\f2foo.jar\fP \f2INDEX.LIST\fP եޤ Υեˤϡ\f2foo.jar\fP ȡ\f2foo.jar\fP \f2Class\-Path\fP °˻ꤵ줿٤Ƥ JAR եäƤƥѥåΰ־󤬽񤭹ޤƤޤǥå򻲾ȤƤ .TP 3 f -作成 (\f2c\fP)、更新 (\f2u\fP)、抽出 (\f2x\fP)、インデックス追加 (\f2i\fP)、または表示 (\f2t\fP) 対象のファイル \f2jarfile\fP を指定します。\f2f\fP オプションとファイル名 \f2jarfile\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f2f\fP と \f2jarfile\fP を省略すると、標準入力から JAR ファイル名が使用されたり (x および t の場合)、標準出力に jar ファイルが 送信されたりします (c および u の場合)。 +γƽоݤȤʤե \f2jarfile\fP ꤷޤ (\f2c\fP) (\f2u\fP) (\f2x\fP)ǥåɲ (\f2i\fP)ޤɽ (\f2t\fP)\f2f\fP ץȥե̾ \f2jarfile\fP Ȥڥˤʤޤ Ĥޤꡢ򵭽ҤС⤦⵭ҤɬפޤOmitting \f2f\fP \f2jarfile\fP άȡx t ξ \f2ɸ\fP JAR ե̾졢c u ξ \f2ɸ\fP JAR ե뤬ޤ .TP 3 v -詳細な出力を標準出力に生成します。あとで例を示します。 +ܺ٤ʽϤɸϤޤȤ򼨤ޤ .TP 3 0 -(ゼロ) ZIP による圧縮を使用せずに、保存します。 +() ZIP ˤ밵̤Ѥˡ¸ޤ .TP 3 M -マニフェストファイルエントリを作成しません (c および u の場合)。 または、マニフェストファイルエントリが存在する場合にそれを削除します (u の場合)。 +ޥ˥եȥե륨ȥޤ (c u ξ)ޤϡޥ˥եȥե륨ȥ꤬¸ߤˤޤ (u ξ) .TP 3 m -\f2META\-INF/MANIFEST.MF\fP のファイルで指定したマニフェストファイル \f2manifest\fP の \f2name :value\fP の属性ペアを組み込みます。すでに同じ名前で存在しない限り、 \f2jar\fP はその \f2name\ :\ value\fP ペアを追加します。同じ名前で存在する場合は、\f2jar\fP はその値を更新します。 +\f2META\-INF/MANIFEST.MF\fP Υեǻꤷޥ˥եȥե \f2manifest\fP \f2name : value\fP °ڥȤ߹ߤޤ \f2jar\fP ϡǤƱ̾¸ߤʤꡢ \f2name:value\fP ڥɲäޤƱ̾¸ߤ硢 \f2jar\fP Ϥͤ򹹿ޤ .LP -コマンド行で、\f3m\fP と \f3f\fP の文字は、\f2manifest\fP と \f2jarfile\fP の入力順序と同じ順序で記述する必要があります。たとえば、次のようにして使います。 -.RS 3 - -.LP +ޥɹԤǡ\f3m\fP \f3f\fP ʸϡ\f2manifest\fP \f2jarfile\fP ϽƱǵҤɬפޤȤСΤ褦ˤƻȤޤ .nf \f3 .fl @@ -336,22 +283,17 @@ .fl \fP .fi -.RE -デフォルトのマニフェストには含まれないマニフェストに、特別な目的の \f2name\ :\ value\fP の属性ペアを追加できます。たとえば、ベンダー情報、バージョン情報、パッケージシーリング、または JAR にバンドルされたアプリケーションを実行するための属性を追加できます。\f4\-m\fP オプションの使用例については、「Java Tutorial」 にある「 +ǥեȤΥޥ˥եȤˤϴޤޤʤޥ˥եȤˡ̤Ū \f2name\ :\ value\fP °ڥɲäǤޤȤС٥󡢥С󡢥ѥå󥰡ޤ JAR ˥Хɥ뤵줿ץꥱ¹Ԥ뤿°ɲäǤޤJava TutorialפΡ .na \f2JAR Files\fP @ .fi -http://java.sun.com/docs/books/tutorial/jar/」コースを参照してください。 -.LP +http://download.oracle.com/javase/tutorial/deployment/jar/ץ򻲾Ȥ \f4\-m\fP ץλǧƤ .TP 3 e -実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして、\f2entrypoint\fP を設定します。このオプションを使用すると、マニフェストファイル内の \f2Main\-Class\fP 属性値が作成または上書きされます。 このオプションは、JAR ファイルの作成中または更新中に使用できます。 このオプションを使えば、マニフェストファイルを編集または作成することなしに、アプリケーションのエントリポイントを指定できます。 +¹Բǽ JAR ե˥Хɥ뤵줿ɥ󥢥ץꥱΥץꥱ󥨥ȥݥȤȤơ\f2entrypoint\fP ꤷޤΥץѤȡޥ˥եȥե \f2Main\-Class\fP °ͤޤϾ񤭤ޤΥץϡJAR եκޤϹ˻ѤǤޤΥץȤСޥ˥եȥեԽޤϺ뤳ȤʤˡץꥱΥȥݥȤǤޤ .br .br -たとえば、次のコマンドは \f2Main.jar\fP を作成しますが、その際、マニフェストファイル内の \f2Main\-Class\fP 属性値は \f2Main\fP に設定されます。 -.RS 3 - -.LP +ȤСΥޥɤǤ \f2Main.jar\fP ޤκݡޥ˥ե \f2Main\-Class\fP °ͤ \f2Main\fP ꤵޤ .nf \f3 .fl @@ -359,12 +301,8 @@ .fl \fP .fi -.RE .LP -次のコマンドを実行すると java ランタイムから直接このアプリケーションを起動できます。 -.RS 3 - -.LP +Υޥɤ¹Ԥ java 󥿥फľܤΥץꥱưǤޤ .nf \f3 .fl @@ -372,11 +310,7 @@ .fl \fP .fi -.RE -エントリポイントのクラス名が特定のパッケージ内に存在している場合、エントリポイントの区切り文字としてドット (「.」) またはスラッシュ (「/」) を使用できます。たとえば、\f2Main.class\fP が \f2foo\fP という名前のパッケージ内に存在している場合、次のようにしてエントリポイントを指定できます。 -.RS 3 - -.LP +ѥå˥ȥݥȤΥ饹̾ޤޤƤ硢ɥå (.) å (/) Τ줫ʸ򤽤ζڤʸȤƻѤǤޤȤС \f2Main.class\fP \f2foo\fP Ȥ̾Υѥå˴ޤޤƤ硢ȥݥȤϼΤ褦ˤƻǤޤ .nf \f3 .fl @@ -384,11 +318,7 @@ .fl \fP .fi -.RE -または -.RS 3 - -.LP +ޤ .nf \f3 .fl @@ -396,18 +326,14 @@ .fl \fP .fi -.RE -\f3注:\ \fP \f2\-m\fP オプションと \f2\-e\fP オプションの両方を同時に指定する場合、指定されたマニフェストにも \f2Main\-Class\fP 属性が含まれていると、\f2Main.class\fP の指定があいまいになってエラーが発生し、JAR の作成または更新処理が異常終了します。 +\f3:\ \fP \f2\-m\fP ץ \f2\-e\fP ץξƱ˻ꤷ硢ꤷޥ˥եȤˤ \f2Main\-Class\fP °ޤޤƤС \f2Main.class\fP λ꤬ޤˤʤäƥ顼ȯJAR κ乹۾ェλޤ .LP .TP 3 \-C \ dir -\f2jar\fP コマンドの実行中に後続の \f2inputfiles\fP 引数を処理するときに、一時的にディレクトリを変更します (\f2cd\fP\ \f2dir\fP)。この処理は、UNIX の \f2tar\fP ユーティリティーの \f2\-C\fP オプションの機能に類似しています。 +\f2jar\fP ޥɤμ¹˸³ \f2inputfiles\fP ȤˡŪ˥ǥ쥯ȥѹޤ (cd \f2dir\fP)νϡUNIX \f2tar\fP 桼ƥƥ \f2\-C\fP ץεǽƤޤ .br .br -たとえば、次のコマンドは、\f2classes\fP ディレクトリに移動し、そのディレクトリから \f2bar.class\fP を \f2foo.jar\fP に追加します。 -.RS 3 - -.LP +ȤСΥޥɤϡ\f2classes\fP ǥ쥯ȥ˰ưΥǥ쥯ȥ꤫ \f2bar.class\fP \f2foo.jar\fP ɲäޤ .nf \f3 .fl @@ -415,23 +341,15 @@ .fl \fP .fi -.RE -次のコマンドでは、\f2classes\fP ディレクトリに移動し、\f2classes\fP ディレクトリ内のすべてのファイルを \f2foo.jar\fP に追加します (jar ファイルには classes ディレクトリを作成しません)。 次に元のディレクトリに戻ってから、\f2bin\fP ディレクトリに移動し、\f2xyz.class\fP を \f2foo.jar\fP に追加します。 -.RS 3 - -.LP +ΥޥɤǤϡ\f2classes\fP ǥ쥯ȥ˰ư\f2classes\fP ǥ쥯ȥΤ٤ƤΥե \f2foo.jar\fP ɲäޤ (jar եˤ classes ǥ쥯ȥޤ)˸Υǥ쥯ȥäƤ顢\f2bin\fP ǥ쥯ȥ˰ư\f2xyz.class\fP \f2foo.jar\fP ɲäޤ .nf \f3 .fl -jar uf foo.jar \-C classes . \-C bin xyz.class +jar uf foo.jar \-C classes .\-C bin xyz.class .fl \fP .fi -.RE -\f2classes\fP に \f2bar1\fP と \f2bar2\fP が保持されている場合、\f2jar tf foo.jar\fP を使用すると、JAR ファイルには次の要素が含められます。 -.RS 3 - -.LP +\f2classes\fP ˥ե \f2bar1\fP \f2bar2\fP ǼƤˡ \f2jar tf foo.jar\fP ѤȤ JAR եȤ򡢼˼ޤ .nf \f3 .fl @@ -447,30 +365,24 @@ .fl \fP .fi -.RE .LP .TP 3 \-Joption -Java 実行環境に \f2option\fP を渡します。 \f2option\fP には、「Java アプリケーション起動ツール」のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f4\-J\-Xmx48M\fP と指定すると、最大メモリーは 48M バイトに設定されます。\f2\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ¹ԴĶ \f2option\fP Ϥޤ \f2option\fP ˤϡJava ץꥱưġפΥե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС \f4\-J\-Xmx48M\fP Ȼꤹȡ꡼ 48M ХȤꤵޤ\f2\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.SH "コマンド行引数ファイル" -.LP - +.SH "ޥɹ԰ե" .LP -jar のコマンド行を短くしたり簡潔にしたりするために、\f2jar\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) を含む 1 つ以上のファイルを指定することができます。これにより、任意の長さの jar コマンドを作成でき、オペレーティングシステムによるコマンド行の制限から解放されます。 +jar ΥޥɹԤûʷˤꤹ뤿ˡjar ޥɤФ (\-J ץ) ޤ 1 İʾ \f2ե\fP ꤹ뤳Ȥ \f2Ǥޤ\fP ˤꡢǤդĹ jar ޥɤǤڥ졼ƥ󥰥ƥˤ륳ޥɹԤ¤ޤ .LP -引数ファイルにはオプションとファイル名を含めることができます。ファイル内の各引数は、スペースまたは改行で区切ります。引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。 引数ファイルの位置から見た相対パスではありません。ワイルドカード (*) は、通常ならばオペレーティングシステムシェルによってあらゆる文字に解釈されますが、この場合はそのようには解釈されません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 +եˤϥץȥե̾ޤ뤳ȤǤޤեγưϡڡޤϲԤǶڤޤեΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣥磻ɥ (*) ϡ̾ʤХڥ졼ƥ󥰥ƥॷˤäƤʸ˲ᤵޤξϤΤ褦ˤϲᤵޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ\f2\-J\fP ץ⥵ݡȤƤޤ󡣤ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ .LP .LP -\f2jar\fP を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。\f2jar\fP は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 +\f2jar\fP ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤ \f2jar\fP ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ .br .br -次の例では、\f2find\fP コマンドから出力されたファイル名を \f2classes.list\fP 内に格納しています。 -.LP -.RS 3 - +ǡ \f2classes.list\fP ˤϡ \f2find\fP ޥɤˤäƽϤ줿ե̾Ǽޤ .LP .nf \f3 @@ -478,14 +390,10 @@ % find \fP\f3.\fP \-name '*.class' \-print > classes.list .fl .fi -.RE .LP .LP -その後、引数ファイル構文を使って \f2jar\fP にリストを渡すと、\f2Classes.list\fP で \f2jar\fP コマンドを実行できます。 -.LP -.RS 3 - +ˡե빽ʸѤ \f2classes.list\fP jar ϤȤǡ \f2Υꥹ\fP Ф \f2jar\fP ޥɤ¹ԤǤޤ .LP .nf \f3 @@ -494,13 +402,9 @@ .fl \fP .fi -.RE .LP -引数ファイルはパスを指定できますが、相対パスが記述された引数ファイル内のすべてのファイル名は、渡されたパスに対して相対的ではなく、現在の作業ディレクトリに相対的となります。 次に例を示します。 -.RS 3 - -.LP +եϥѥǤޤХѥҤ줿եΤ٤ƤΥե̾ϡϤ줿ѥФŪǤϤʤߤκȥǥ쥯ȥŪȤʤޤϤǤ .nf \f3 .fl @@ -508,20 +412,14 @@ .fl \fP .fi -.RE .LP .LP .LP -.SH "例" -.LP - +.SH "" .LP -特定のディレクトリ内のすべてのファイルをアーカイブに追加する (そのアーカイブがすでに存在する場合は、その内容を上書きする) には、次のようにします。\f2\-v\fP オプションを使用して情報を詳細に列挙するように指定すると、サイズや最新の更新日など、アーカイブ内のファイルについての詳細情報が表示されます。 -.RS 3 - -.LP +Υǥ쥯ȥΤ٤ƤΥե򥢡֤ɲä (Υ֤Ǥ¸ߤϡƤ񤭤) ˤϡΤ褦ˤޤ\f2\-v\fP ץѤƾܺ٤󤹤褦˻ꤹȡǿιʤɡΥեˤĤƤξܺپɽޤ .nf \f3 .fl @@ -557,13 +455,9 @@ .fl \fP .fi -.RE .LP -すでに画像、オーディオファイル、およびクラス用のサブディレクトリに分けている場合は、これらを単一の JAR ファイルに結合できます。 -.RS 3 - -.LP +Ǥ˲ǥե롢ӥ饹ѤΥ֥ǥ쥯ȥʬƤϡñ JAR ե˷Ǥޤ .nf \f3 .fl @@ -607,13 +501,9 @@ .fl \fP .fi -.RE .LP -JAR ファイルのエントリ名を表示するには、「\f2t\fP」オプションを使用します。 -.RS 3 - -.LP +JAR եΥȥ̾ɽˤϡ\f2t\fPץץѤޤ .nf \f3 .fl @@ -641,28 +531,24 @@ .fl \fP .fi -.RE .LP .LP -クラスロードを高速にするためにインデックスファイルを JAR ファイルに追加するには、「\f2i\fP」オプションを使用します。 +饹ɤ®ˤ뤿˥ǥåե JAR եɲäˤϡ\f2i\fPץץѤޤ .br .br -例: +: .br .LP -.RS 3 - -.LP -たとえば、株取引アプリケーション用の相互依存したクラスを、\f2main.jar\fP、\f2buy.jar\fP、および \f2sell.jar\fP という 3 つの JAR ファイルに分割したとします。 +ȤСץꥱ¸Ƥ륯饹\f2main.jar\fP\f2buy.jar\fP \f2sell.jar\fP Ȥ 3 Ĥ JAR եʬ䤷Ȥޤ .br .LP .br .LP -\f2main.jar\fP のマニフェストの \f2Class\-path\fP 属性に次のように指定した場合、 +\f2main.jar\fP Υޥ˥եȤ \f2Class\-path\fP °˼Τ褦˻ꤷ硢 .nf \f3 .fl @@ -672,7 +558,7 @@ .fi .LP -\f2\-i\fP オプションを使用すれば、アプリケーションのクラスの 読み込みを高速化できます。 +\f2\-i\fP ץѤСץꥱΥ饹 ɤ߹ߤ®Ǥޤ .nf \f3 .fl @@ -682,38 +568,34 @@ .fi .LP -\f2INDEX.LIST\fP ファイルが \f2META\-INF\fP ディレクトリに挿入されます。この結果、アプリケーションのクラスローダーによってクラスまたは リソースの検索が行われるときに、適切な jar ファイルがダウンロードされます。 -.RE -.SH "関連項目" +\f2INDEX.LIST\fP ե뤬 \f2META\-INF\fP ǥ쥯ȥޤη̡ץꥱΥ饹ˤäƥ饹ޤϥ꥽θԤȤˡŬڤ jar ե뤬ɤޤ +.SH "Ϣ" .LP - .LP .na -\f2「JAR ファイルの概要」\fP @ +\f2JAR եγ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/jar/jarGuide.html -.br - +.LP .LP .na -\f2「JAR ファイルの仕様」\fP @ +\f2JAR եλ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html -.br - +.LP +.LP +.na +\f2JarIndex λ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR_Index +.LP .LP .na -\f2「Jar インデックス」\fP @ +\f2JAR 塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex -.br - +http://download.oracle.com/javase/tutorial/deployment/jar/index.html .LP -.na -\f2「Jar チュートリアル」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/jar (Java Software の Web サイト内) -.br - .LP -pack200(1) +pack200(1) +.LP + diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jarsigner.1 --- a/jdk/src/linux/doc/man/ja/jarsigner.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jarsigner.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,117 +19,1010 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jarsigner 1 "02 Jun 2010" +.TH jarsigner 1 "14 Apr 2011" .LP -.SH "名前" -jarsigner \- JAR 署名および検証ツール -.LP -.RS 3 - +.SH "̾" +jarsigner \- JAR ̾Ӹڥġ .LP .LP -Java ARchive (JAR) ファイルの署名を生成し、署名付き JAR ファイルの署名を検証します。 +Java ARchive (JAR) եν̾̾դ JAR եν̾򸡾ڤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl \fP\f3jarsigner\fP [ options ] jar\-file alias .fl -\f3jarsigner\fP \-verify [ options ] jar\-file +\f3jarsigner\fP \-verify [ options ] jar\-file [alias...] .fl .fi .LP -.SH "説明" .LP - +jarsigner \-verify ޥɤǤϡJAR ե̾ΤȤ 0 İʾΥȥ̾Ǥޤȥ̾ꤵ줿硢jarsigner ϡJAR եγƽ̾դƥƥθڤ˻Ѥ񤬥ȥ̾Τ줫˰פ뤳Ȥåޤ̾ϡ\-keystore ǻꤵ줿ȥޤϥǥեȤΥȥޤ +.LP +.SH "" .LP .LP -\f3jarsigner\fP ツールは、次の 2 つの目的で使用します。 +\f3jarsigner\fP ġϡ 2 ĤŪǻѤޤ .LP .RS 3 .TP 3 1. -Java ARchive (JAR) ファイルに署名を付ける +Java ARchive (JAR) ե˽̾դ .TP 3 2. -署名付き JAR ファイルの署名と整合性を検証する +̾դ JAR եν̾򸡾ڤ +.RE + +.LP +.LP +JAR ǽȤȡ饹ե롢᡼ɡӤ¾ΥǥǡñΥե˥ѥåǤΤǡե®ưפۤǤޤȯԤϡjar(1) Ȥ̾ΥġȤä JAR եǤޤŪʴС٤Ƥ ZIP ե JAR եȤߤʤȤǤޤ \f3jar\fP ˤäƺ줿 JAR ե롢ޤ \f3jarsigner\fP ˤäƽ줿 JAR եˤϡMETA\-INF/MANIFEST.MF ե뤬ޤޤƤޤ +.LP +.LP +֥ǥ̾פϡʤ餫Υǡ (ֽ̾פоݤȤʤǡ) ȡƥƥ (͡Ҥʤ) Ȥ˴ŤƷ׻ӥåǤ񤭤ν̾Ʊ͡ǥ̾ˤ¿ޤ +.LP +.RS 3 +.TP 2 +o +̾˻Ȥ줿ФˤʤȤäƷ׻ԤȤǡǥ̾ʪɤ򸡾ڤǤ +.TP 2 +o +¾ͤΤʤ¤ꡢǥ̾ε¤ԲǽǤ +.TP 2 +o +ǥ̾ϡν̾դǡоݤȤΤǤꡢۤΥǡν̾ȤƵǽ뤳ȤϤʤ +.TP 2 +o +̾դΥǡѹǤʤ ǡѹ줿ϡν̾ˤäƥǡʪǤϤʤȤڤ .RE .LP .LP -JAR 機能を使うと、クラスファイル、イメージ、サウンド、およびその他のデジタルデータを単一のファイルにパッケージ化できるので、ファイルを迅速かつ容易に配布できます。開発者は、jar(1) という名前のツールを使って JAR ファイルを作成できます。技術的な観点から言えば、すべての ZIP ファイルも JAR ファイルとみなすことができます。 ただし、\f3jar\fP によって作成された JAR ファイル、または \f3jarsigner\fP によって処理された JAR ファイルには、META\-INF/MANIFEST.MF ファイルが含まれています。 +եФƥƥƥν̾ˤϡޤƥƥϡΥƥƥ˴ϢΥڥɬפޤޤǧڤ 1 ĤޤʣξɬפǤ־פȤϡ륨ƥƥȯԤǥ̾դʸǡ̤ʥƥƥθͤǤ뤳ȤƤޤ +.LP +.LP +\f3jarsigner\fP ϡ֥ȥפ˴ޤޤ븰ȾȤäơJAR եΥǥ̾ޤȥϡȡ˴Ϣդ줿 X.509 󤬼줿ǡ١Ǥȥκȴˤϡkeytool(1) 桼ƥƥȤޤ +.LP +.LP +\f3jarsigner\fP ϡƥƥȤäƽ̾ޤ̾դ JAR եˤäˡեν̾˻Ѥ줿бФ롢ȥξΥԡޤޤƤޤ\f3jarsigner\fP ϡ̾դ JAR ե (֥̾åե) ˤѤƤΥեΥǥ̾򸡾ڤǤޤ +.LP +.LP +\f3jarsigner\fP ϥॹפޤ̾Τǡƥǥץ (Java Plug\-in ޤ) JAR ե뤬̾ͭ˽̾줿ɤåǤޤˡAPI Ѥȡץꥱ󤫤饿ॹ׾Ǥޤ +.LP +.LP +Ǥϡ\f3jarsigner\fP ǽ̾ǤΤϡJDK jar(1) ġǺ줿 JAR ե롢ޤ ZIP եǤJAR ե ZIP եƱǤJAR եˤ META\-INF/MANIFEST.MF ե뤬ޤޤƤۤʤޤMETA\-INF/MANIFEST.MF եϡ\f3jarsigner\fP ZIP ե˽̾դȤ˼ưŪ˺ޤ +.LP +.LP +ǥեȤǤϡ\f3jarsigner\fP JAR (ޤ ZIP) եˡֽ̾פդޤ̾դ JAR եָڡפϡ \f2\-verify\fP ץꤷޤ +.LP +.SS +ȥ̾ +.LP +.LP +ȥΤ٤ƤΥȥϡդΡ̾פ𤷤ƥޤ +.LP +.LP +\f3jarsigner\fP Ȥä JAR ե˽̾դȤϡ̾ɬפޤ७ȥȥ̾ꤹɬפޤȤСϡworking ǥ쥯ȥ mystore Ȥ̾Υȥ˴ޤޤ̾ duke ˴Ϣդ줿ȤäơMyJARFile.jar Ȥ̾ JAR ե˽̾դޤϥեϻꤵƤʤΤǡMyJARFile.jar Ͻ̾դ JAR եˤäƾ񤭤ޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-storepass myspass +.fl + \-keypass dukekeypasswd MyJARFile.jar duke +.fl +\fP +.fi + +.LP +.LP +ȥϥѥɤݸƤΤǡȥΥѥ (Ǥ mypass) ꤹɬפޤޥɹԤǥȥΥѥɤꤷʤȡѥɤϤޤƱͤˡ⥭ȥǥѥɤˤäݸƤ뤿ᡢΥѥ (Ǥ dukekeypasswd) ꤹɬפޤ ޥɹԤΥѥɤꤷƤʤޤꤷѥȤ¸ƤѥɤȰäƤˤϡΥѥɤϤޤ +.LP +.SS +ȥξ +.LP +.LP +\f3jarsigner\fP ˤϡ \f2Ѥ륭ȥ URL ꤹ \-keystore\fP ޤȥ \f2\fP ǥեȤǡ \f2user.home\fP ƥץѥƥǷޤ桼Υۡǥ쥯ȥ .keystore Ȥ̾Υե˳ǼޤSolaris ƥξ硢 \f2user.home\fP ΥǥեȤϥ桼 home ǥ쥯ȥˤʤޤ +.LP +.LP +\-keystore ץ \f2˻ꤷ\fP ϥȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤդƤURL Ȥ \f2NONE\fP ꤵƤϡnull Υȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤޤ \f2NONE\fP ϡ \f2KeyStore\fP ե١ǤϤʤ硢ȤФ줬ϡɥȡǥХ¸ߤƤʤɤ˻ꤹ٤Ǥ +.LP +.SS +ȥμ +.LP +.LP +java.security ѥå \f2󶡤Ƥ\fP KeyStore 饹 \f2ϡ\fP ȥξؤΥӾѹԤΡΤ줿󥿥ե󶡤ޤȥθȤƤϡ줾줬Ρ֥ספΥȥоݤȤʣΰۤʤ¸߲ǽǤ +.LP +.LP +ߡȥμѤΤȤơ\f3keytool\fP \f3jarsigner\fP 2 ĤΥޥɹԥġȡ\f3Policy Tool\fP Ȥ̾ 1 Ĥ GUI ١Υġ뤬ޤKeyStore \f2\fP public ȤƻѲǽʤΤǡJava 2 SDK 桼 KeyStore ȤäۤΥƥץꥱǤޤ +.LP +.LP +ȥˤϡSun 󶡤Ȥ߹ߤΥǥեȤμޤϡJKS Ȥ̾ȼΥȥ () ѤΤǡȥեȤƼƤޤμǤϡġϸ̤Υѥɤˤäݸ졢ȥΤ (Ȥ̤) ѥɤˤäݸޤ .LP .LP -「デジタル署名」は、なんらかのデータ (「署名」の対象となるデータ) と、エンティティー (人、会社など) の非公開鍵とに基づいて計算されるビット列です。手書きの署名同様、デジタル署名には多くの利点があります。 +ȥμϡץХ١ǤŪˤϡ \f2KeyStore\fP ˤä󶡤륢ץꥱ󥤥󥿥ե֥ӥץХ󥿥ե (SPI) ˴ŤƼޤĤޤꡢбݥ饹 \f2KeystoreSpi\fP Ʊ \f2java.security\fP ѥå¸ߤƤꡢΥ饹ˤäơ֥ץХפɬפΤ륵ӥץХ󥿥ե᥽åɤƤޤǡ֥ץХפȤϡJava Security API ˤäƥǽʥӥΥ֥åȤФθ󶡤ѥåޤϥѥåνΤȤǤäơȥμ󶡤ˤϡ +.na +\f2Java Ź沽ƥ㡼ѥץХμˡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlƤ褦ˡ饤Ȥ֥ץХפKeystoreSpi ֥饹μ󶡤ɬפޤ +.LP +.LP +ץꥱǤϡKeyStore 饹󶡤 getInstance եȥ᥽åɤȤȤǡޤޤʥץХۤʤ֥ספΥȥ \f2\fP ǤޤȥΥפϡȥγǼȥǡȤȤˡȥȥȥΤݸ뤿˻Ȥ륢르ꥺޤۤʤ륿פΥȥμˤϡߴϤޤ +.LP +.LP +\f3keytool\fP ϡǤդΥե١Υȥưޤkeytool ϡޥɹԤϤ줿ȥξե̾Ȥư FileInputStream ѴơFileInputStream 饭ȥξɤޤ\f3jarsigner\fP ġ \f3policytool\fP ġϡURL ǻǽǤդξ꤫饭ȥɤ߹ळȤǤޤ +.LP +.LP +\f3jarsigner\fP \f3keytool\fP ξ硢\f2\-storetype\fP ץȤäƥޥɹԤǥȥΥפǤޤ\f3Policy Tool\fP ξϡ[Edit] ˥塼 [Change Keystore] ޥɤȤäƥȥΥפǤޤ +.LP +.LP +桼ȥΥפŪ˻ꤷʤä硢ġϡñ˥ƥץѥƥեǻꤵ줿 \f2keystore.type\fP ץѥƥͤ˴Ťơȥμ򤷤ޤΥƥץѥƥե \f2java.security\fP ȸƤФ졢SDK ƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ¸ߤƤޤǡ\f2java.home\fP ϼ¹ԻĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment Υȥåץ٥ǥ쥯ȥ) Ǥ +.LP +.LP +ƥġϡ \f2keystore.type\fP ͤͤǻꤵ줿פΥȥƤץХĤޤǡߥ󥹥ȡ뤵Ƥ뤹٤ƤΥץХĴ٤ޤŪΥץХĤȡΥץХΥȥμȤޤ +.LP +.LP +\f2KeyStore\fP 饹Ƥ static ᥽å \f2getDefaultType\fP Ѥȡץꥱ䥢ץåȤ \f2keystore.type\fP ץѥƥͤǤޤΥɤϡǥեȤΥȥ \f2(keystore.type ץѥƥǻꤵ줿)\fP Υ󥹥󥹤ޤ +.LP +.nf +\f3 +.fl + KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); +.fl +\fP +.fi + +.LP +.LP +ǥեȤΥȥפ JKS (Sun 󶡤ȼΥפΥȥμ) ǤϡƥץѥƥեμιԤˤäƻꤵƤޤ +.LP +.nf +\f3 +.fl + keystore.type=jks +.fl +\fP +.fi + +.LP +.LP +: ȥΥפλǤϡʸȾʸ϶̤ޤ󡣤ȤСJKS jks ƱΤȤưޤ +.LP +.LP +ƥġǥǥեȰʳΥȥμѤˤϡιԤѹ̤ΥȥΥפꤷޤȤСpkcs12 ȸƤФ륿פΥȥμ󶡤ƤץХѥåѤˤϡιԤ򼡤Τ褦ѹޤ +.LP +.nf +\f3 +.fl + keystore.type=pkcs12 +.fl +\fP +.fi + +.LP +.LP +PKCS#11 ץХѥåѤ硢ξܺ٤ˤĤƤϡJava PKCS#11 Reference Guideפˤ +.na +\f2KeyTool and JarSigner\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSigner򻲾ȤƤ +.LP +.SS +ݡȤ륢르ꥺ +.LP +.LP +\f3jarsigner\fP ϥǥեȤǡΤ줫Ѥ JAR ե˽̾ޤ .LP .RS 3 .TP 2 o -署名の生成に使われた非公開鍵と対になる公開鍵を使って計算を行うことで、デジタル署名が本物かどうかを検証できる +SHA1 ȥ르ꥺȤä DSA (ǥ̾르ꥺ) +.TP 2 +o +SHA256 ȥ르ꥺѤ RSA 르ꥺ +.TP 2 +o +SHA256 ECDSA (ʱ߶ǥ̾르ꥺ) Ѥ EC (ʱ߶) Ź르ꥺ +.RE + +.LP +.LP +Ūˤϡ̾Ԥθ DSA Ǥ硢\f3jarsigner\fP SHA1withDSA 르ꥺȤä JAR ե˽̾դޤ̾Ԥθ RSA Ǥ硢\f3jarsigner\fP SHA256withRSA 르ꥺȤä JAR ե˽̾դޤ̾Ԥθ EC Ǥ硢\f3jarsigner\fP SHA256withECDSA 르ꥺȤä JAR ե˽̾դޤ +.LP +.LP +ΥǥեȤν̾르ꥺϡ\f2\-sigalg\fP ץȤäƥС饤ɤǤޤ +.LP +.SS +̾դ JAR ե +.LP +.LP +\f3jarsigner\fP Ȥä JAR ե˽̾դ硢Ϥ̾դ JAR ե JAR եƱǤ 2 Ĥɲåե뤬 META\-INF ǥ쥯ȥ֤ۤʤޤ +.LP +.RS 3 +.TP 2 +o +.SF ĥҤդ̾ե +.TP 2 +o +.DSA.RSAޤ .EC ĥҤ˻Ľ֥̾åե +.RE + +.LP +.LP + 2 ĤΥեΥ١ե̾ϡ \f2\-sigFile\fP ץͤޤȤСΤ褦˥ץꤷȤޤ +.LP +.nf +\f3 +.fl +\-sigFile MKSIGN +.fl +\fP +.fi + +.LP +.LP +ξ硢ե̾Ϥ줾 MKSIGN.SF MKSIGN.DSA ˤʤޤ +.LP +.LP +ޥɹԤ \f2\-sigfile\fP ץꤷʤä硢.SF ե .DSA եΥ١ե̾ϡޥɹԤǻꤵ줿̾Ƭ 8 ʸ򤹤٤ʸѴΤˤʤޤ̾ 8 ʸ̤ξϡ̾Τޤ޻Ȥޤ̾ˡ̾ե̾˻ѤǤʤʸޤޤƤϡʸ (_) ֤ƥե̾ޤѤǤʸϡե٥åȡ (_)ϥեǤ +.LP +\f3̾ (.SF) ե\fP +.LP +.LP +̾ե (.SF ե) ϡ\f3jarsigner\fP ǽ̾դ JAR ե˾˴ޤޤޥ˥եȥեȻƤޤĤޤꡢޥ˥եȥեƱ͡.SF եˤϡJAR ե˴ޤޤƤ륽ե뤴Ȥˡ 3 ĤιԤޤ +.LP +.RS 3 +.TP 2 +o +ե̾ .TP 2 o -非公開鍵が他人に知られない限り、デジタル署名の偽造は不可能である +ȤƤȥ르ꥺ (SHA) ̾ +.TP 2 +o +SHA Ȥ +.RE + +.LP +.LP +ޥ˥եȥեǤϡSHA ȤͤϡեΥХʥǡΥ (ϥå) Ǥ.SF եǤϡեΥȤͤϡޥ˥եȥեγ륽եб 3 ԤΥϥåǤ +.LP +.LP +̾եˤϡǥեȤǥޥ˥եȥեΤΥϥåޤޤƤޤҤΡJAR եθڡפ褦ˡΥإå¸ߤˤäƸڤκŬǽˤʤäƤޤ +.LP +\f3֥̾åե\fP +.LP +.SF եˤϽ̾դ졢̾Ͻ֥̾åե֤ޤΥեˤϡȥξޤϾ沽줿ǴޤޤƤޤ ޤϾϡ̾˻Ȥ줿бǧڤޤեγĥҤϡѤȥ르ꥺ˱ .DSA.RSA.EC Τ줫ˤʤޤ +.SS +̾ॹ +.LP +.LP +\f2jarsigner\fP ġϡJAR եν̾˽̾ॹפ¸Ǥޤˡ \f2jarsigner\fP ؽ̾򥵥ݡȤޤưϾάǽǡ̾˼γƥץˤä椵ޤ +.LP +.RS 3 +.TP 2 +o +\f2\-tsa url\fP +.TP 2 +o +\f2\-tsacert alias\fP .TP 2 o -デジタル署名は、その署名が付いたデータだけを対象とするものであり、ほかのデータの署名として機能することはない +\f2\-altsigner class\fP .TP 2 o -署名付きのデータは変更できない。 データが変更された場合は、その署名によってデータが本物ではないことが検証される +\f2\-altsignerpath classpathlist\fP +.RE + +.LP +.LP +γƥץξܺ٤ˤĤƤϡҤΡ֥ץ򻲾ȤƤ +.LP +.SS +JAR եθ +.LP +.LP +JAR եθڤΤϡ̾ͭǤꡢĽ̾ʸ JAR եΤɤΥեѹƤʤǤJAR եθڤϡμǹԤޤ +.LP +.RS 3 +.TP 3 +1. +.SF ե뤽켫Τν̾򸡾ڤޤ +.LP +μǤϡƽ֥̾å (.DSA) ե˳ǼƤ̾ºݤˡбȤä줿ΤǤ뤳Ȥǧޤ .DSA եˤϡξ (ޤϾ) ޤޤƤޤޤμǤϡŪν̾б̾ (.SF) եͭʽ̾Ǥ뤫ɤĴ١.SF ե뤬ѤƤʤȤǧޤ +.TP 3 +2. +.SF եγƥȥΥȤޥ˥եбƥͤ碌Ƹڤޤ +.LP +.SF եˤϡޥ˥եȥեΤΥϥå夬Ǽ줿إåǥեȤǴޤޤƤޤΥإå¸ߤϡإåΥϥå夬ºݤ˥ޥ˥եȥեΥϥåȰפ뤫ɤ򸡾ڤ뤳ȤǤޤϥå夬פϡμ˿ʤߤޤ +.LP +ϥå夬פʤϡΨŪˤˡȤäƸڤԤޤŪˤϡ.SF եγƥե󥻥Υϥå夬ޥ˥եȥեб륻ΥϥåȰפ뤫ɤǧޤ (ֽ̾ (.SF) եפ򻲾) +.LP +.SF եΥإå˳Ǽ줿ޥ˥եȥեΥϥåȡºݤΥޥ˥եȥեΥϥåȤפʤϡ̾ ( .SF ե) ˡJAR ե 1 İʾΥե뤬ɲ \f2(jar ġ)\fP 줿ǽޤjar \f2ġ\fP Ȥäƥեɲä硢ޥ˥եȥեѹޤ (եѤΥɲä).SF եѹޤ󡣤ξ硢.SF եΥإåʳΥ˳Ǽ줿ϥå夬ޥ˥եȥեб륻ΥϥåȰפȤϡ̾ JAR ե¸ߤƤեΤɤΥեѹƤʤȤˤʤꡢڤΤȤưޤ +.TP 3 +3. +JAR եΥեΤ.SF ե˥ȥijƥեɤ߹ߤޤɤ߹˥եΥȤ׻̤ޥ˥եȥγեΥȤӤޤ2 ĤΥȤƱǤʤФʤ餺ǤʤϸڤԤޤ .RE .LP .LP -ファイルに対してエンティティーの署名を生成するには、まず、エンティティーは、そのエンティティーに関連する公開鍵と非公開鍵のペアを持つ必要があります。 また、公開鍵を認証する 1 つまたは複数の証明書も必要です。「証明書」とは、あるエンティティーが発行したデジタル署名付きの文書で、別なエンティティーの公開鍵が特定の値であることを証明しています。 -.LP +ڥץǤʤ餫νʸڥ顼ȯ硢ڥץߤ졢ƥ㳰ޤ줿ƥ㳰ϡ\f3jarsigner\fP åɽޤ .LP -\f3jarsigner\fP は、「キーストア」に含まれる鍵と証明書情報を使って、JAR ファイルのデジタル署名を生成します。キーストアは、非公開鍵と、非公開鍵に関連付けられた X.509 証明書チェーンが収められたデータベースです。キーストアの作成と管理には、keytool(1) ユーティリティーを使います。 -.LP -.LP -\f3jarsigner\fP は、エンティティーの非公開鍵を使って署名を生成します。署名付き JAR ファイルには、ファイルの署名に使用する非公開鍵に対応する公開鍵を保存するキーストアからとった証明書のコピーも含まれています。 \f3jarsigner\fP は、署名付き JAR ファイルのデジタル署名を、ファイル内 (の署名ブロックファイル) に含まれている証明書を使って検証することができます。 +.SS +1 Ĥ JAR եоݤȤʣν̾ .LP .LP -5.0 以降では、\f3jarsigner\fP はタイムスタンプを含む署名を生成するので、システムやデプロイヤ (Java Plug\-in を含む) はJAR ファイルが署名証明書の有効期間中に署名されたかどうかをチェックできます。さらに、5.0 で追加された API を使用して、アプリケーションはタイムスタンプ情報を取得できます。 -.LP -.LP -現時点では、\f3jarsigner\fP で署名できるのは、JDK の jar(1) ツールで作成された JAR ファイル、または ZIP ファイルだけです。JAR ファイルは ZIP ファイルと同じですが、JAR ファイルには META\-INF/MANIFEST.MF ファイルが含まれている点が異なります。META\-INF/MANIFEST.MF ファイルは、\f3jarsigner\fP が ZIP ファイルに署名を付けるときに自動的に作成されます。 -.LP +1 Ĥ JAR եФ \f3jarsigner\fP ġʣ¹Ԥ¹ԤΤӤˡۤʤ桼̾ꤹСJAR եʣΥ桼ν̾դ뤳ȤǤޤ .LP -デフォルトでは、\f3jarsigner\fP は JAR (または ZIP) ファイルに「署名」を付けます。署名付き JAR ファイルを「検証」する場合は、\f2\-verify\fP オプションを指定します。 -.LP -.SS -JDK 1.1 との互換性 -.LP -.RS 3 +.nf +\f3 +.fl + jarsigner myBundle.jar susan +.fl + jarsigner myBundle.jar kevin +.fl +\fP +.fi .LP .LP -\f3keytool\fP ツールと \f3jarsigner\fP ツールは、JDK 1.1 で提供されていた \f3javakey\fP ツールを完全に置き換えるものです。これらの新しいツールは \f3javakey\fP よりも多くの機能を備えており、キーストアと非公開鍵をパスワードで保護する機能や、署名の生成に加えて署名を検証する機能を持っています。 +JAR ե뤬ʣ̾Ƥ硢 JAR եˤ .SF ե .DSA եФʣޤޤ뤳Ȥˤʤޤ .SF ե .DSA եФϡ1 ν̾Ф 1 ĺޤäơǽϤ JAR եˤϡ̾ĥե뤬ޤޤޤ +.LP +.nf +\f3 +.fl + SUSAN.SF +.fl + SUSAN.DSA +.fl + KEVIN.SF +.fl + KEVIN.DSA +.fl +\fP +.fi + .LP .LP -新しいキーストアアーキテクチャーは、\f3javakey\fP が作成して管理していたアイデンティティーデータベースに代わるものです。キーストア形式と、JDK 1.1 の \f3javakey\fP が使っていたデータベース形式との間には下位互換性はありません。ただし、次のようなことは可能です。 +: JAR եǤϡJDK 1.1 \f3javakey\fP ġ줿̾ \f3jarsigner\fP 줿̾ߤǤޤĤޤꡢǤ \f3javakey\fP Ȥäƽ̾դƤ JAR եˡ\f3jarsigner\fP Ȥäƽ̾դ뤳ȤǤޤ +.LP +.SH "ץ" +.LP +.LP +ʲǤϡ\f3jarsigner\fP ΥץˤĤޤ: .LP .RS 3 .TP 2 o -\f3keytool\fP の \f2\-identitydb\fP コマンドを使うと、アイデンティティーデータベースの情報をキーストアにインポートできます。 +ɤΥץ̾ˤƬ˥ޥʥ (\-) դ +.TP 2 +o +ץǤդνǻǤ +.TP 2 +o +åΤιܤμºݤ (ץ) ϡ桼ꤹɬפ +.TP 2 +o +\f2\-keystore\fP \f2\-storepass\fP \f2\-keypass\fP \f2\-sigfile\fP \f2\-sigalg\fP \f2\-digestalg\fP \f2\-signedjar\fP ץѤǤΤϡ̾դ JAR ե򸡾ڤǤϤʤJAR ե˽̾ǤƱͤˡ̾򥳥ޥɹԤǻꤹΤϡJAR ե˽̾դǤ +.RE + +.LP +.RS 3 +.TP 3 +\-keystore url +ȥξ򼨤 URL ꤷޤǥեȤϡ桼Υۡǥ쥯ȥΥե \f2.keystore\fP Ǥ 桼Υۡǥ쥯ȥϡuser.home ƥץѥƥˤäƷޤޤ +.LP +̾ȤϥȥɬפǤ ΤᡢǥեȤΥȥ¸ߤʤ硢뤤ϥǥեȰʳΤۤΥȥѤϡȥŪ˻ꤹɬפޤ +.LP +ڤȤϥȥɬפޤ󡣤ȥꤵƤ뤫뤤ϥǥեȤΥȥ¸ߤƤơ \f2\-verbose\fP ץꤵƤ硢JAR եθڤ˻Ѥ񤬤Υȥ 1 ĤǤޤޤƤ뤫ɤ˴ؤɲþ󤬽Ϥޤ +.LP +: \f2\-keystore\fP ΰˤϡURL ˥ե̾ (ȥѥ) Ǥޤ ե̾ (ȥѥ) ꤷϡfile:URL ȤưޤȤСΤ褦˻Ǥޤ +.nf +\f3 +.fl + \-keystore \fP\f4filePathAndName\fP\f3 +.fl +\fP +.fi +.LP +ϡλƱΤȤưޤ +.nf +\f3 +.fl + \-keystore file:\fP\f4filePathAndName\fP\f3 +.fl +\fP +.fi +.LP +JRE \f2$JAVA_HOME/lib/security\fP ǥ쥯ȥ˳Ǽ줿 \f2java.security\fP ƥץѥƥե Sun PKCS#11 ץХꤵƤ硢keytool jarsigner PKCS#11 ȡ˴ŤưǤޤΥץꤷޤ +.RS 3 +.TP 2 +o +\f2\-keystore NONE\fP +.TP 2 +o +\f2\-storetype PKCS11\fP +.RE +.LP +ȤСΥޥɤϡꤵ줿 PKCS#11 ȡƤɽޤ +.nf +\f3 +.fl + jarsigner \-keystore NONE \-storetype PKCS11 \-list +.fl + +.fl +\fP +.fi +.TP 3 +\-storetype storetype +󥹥󥹤륭ȥΥפꤷޤǥեȤΥȥפϡƥץѥƥե keystore.type ץѥƥͤǻꤵ줿פǤͤϡ \f2java.security.KeyStore\fP static getDefaultType ᥽å \f2ǼǤޤ\fP. +.LP +\-storepass ץȤä PCKS#11 ȡ PIN \f2ꤹ뤳Ȥ\fP Ǥޤꤷʤä硢keytool jarsigner ϥ桼˥ȡ PIN Ϥޤȡݸ줿ǧڥѥ (Ѥ PIN ѥåɤɤ߼굡ʤ) 硢\f2\-protected\fP ץꤹɬפޤѥɥץꤹɬפϤޤ +.TP 3 +\-storepass[:env | :file] argument +.LP +ȥ˥ΤɬפʥѥɤꤷޤΥץɬפʤΤϡJAR ե˽̾դȤǤ (JAR ե򸡾ڤȤ)ξ硢 \f2\-storepass\fP ץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ +.LP + \f2env\fP ޤ \f2file\fP ꤵƤʤ硢ѥɤͤ \f2argument\fP ˤʤޤʳξ硢ѥɤϼΤ褦ˤƼޤ +.RS 3 +.TP 2 +o +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ +.TP 2 +o +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +: ƥȤŪȤ硢ޤϥƥݸ줿ƥѤƤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ +.TP 3 +\-keypass[:env | :file] argument +.LP +ޥɹԤǻꤵ줿̾б륭ȥȥݸΤ˻Ȥѥɤꤷޤ\f3jarsigner\fP Ȥä JAR ե˽̾դȤϡѥɤɬפǤޥɹԤǥѥɤꤵƤ餺ɬפʥѥɤȥΥѥɤȰۤʤϡѥɤϤޤ +.LP + \f2env\fP ޤ \f2file\fP ꤵƤʤ硢ѥɤͤ \f2argument\fP ˤʤޤʳξ硢ѥɤϼΤ褦ˤƼޤ +.RS 3 +.TP 2 +o +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ +.TP 2 +o +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +: ƥȤŪȤ硢ޤϥƥݸ줿ƥѤƤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ +.TP 3 +\-sigfile file +.SF ե .DSA ե˻Ȥ١ե̾ꤷޤȤС\f2file\fP DUKESIGN ꤹȡ .SF ե .DSA ե̾ϡ줾 DUKESIGN.SF DUKESIGN.DSA ˤʤޤ Υեϡ̾դ JAR ե META\-INF ǥ쥯ȥ֤ޤ +.LP +\f2file\fP ˻ѤǤʸϡa\-zA\-Z0\-9_\-פǤĤޤꡢʸӥϥեѤǤޤ: .SF .DSA Υե̾ǤϡʸϤ٤ʸѴޤ +.LP +\-sigfile \f2ץ\fP ꤷʤä硢.SF ե .DSA եΥ١ե̾ϡޥɹԤǻꤵ줿̾Ƭ 8 ʸ򤹤٤ʸѴΤˤʤޤ̾ 8 ʸ̤ξϡ̾Τޤ޻Ȥޤ̾ˡ̾ե̾˻ѤǤʤʸޤޤƤϡʸ (_) ֤ƥե̾ޤ +.TP 3 +\-sigalg algorithm +JAR եν̾˻Ѥ̾르ꥺ̾ꤷޤ +.LP +ɸ̾르ꥺ̾ΰˤĤƤϡJava Cryptography Architectureפˤ +.na +\f2Appendix A \fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤΥ르ꥺϡJAR եν̾˻Ѥ̩ȸߴΤΤǤʤФʤޤ󡣤Υץꤷʤä硢̩Υפ˱ SHA1withDSASHA256withRSASHA256withECDSA Τ줫Ѥޤꤵ줿르ꥺμ󶡤ץХŪ˥󥹥ȡ뤵Ƥ뤫뤤ϥ桼Τ褦ʥץХ \f2\-providerClass\fP ץȤäƻꤹɬפޤǤʤ硢ޥɤμ¹ԤԤޤ +.TP 3 +\-digestalg algorithm +JAR եΥȥȤݤ˻Ѥåȥ르ꥺ̾ꤷޤ +.LP +ɸåȥ르ꥺ̾ΰˤĤƤϡJava Cryptography Architectureפˤ +.na +\f2Appendix A \fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤΥץꤷʤä硢SHA256 Ѥޤꤵ줿르ꥺμ󶡤ץХŪ˥󥹥ȡ뤵Ƥ뤫뤤ϥ桼Τ褦ʥץХ \f2\-providerClass\fP ץȤäƻꤹɬפޤǤʤ硢ޥɤμ¹ԤԤޤ +.TP 3 +\-signedjar file +̾դ JAR ե̾ꤷޤ +.LP +ޥɹԤ̾ꤷʤäϡ JAR ե (̾оݤȤʤ JAR ե) ̾Ʊ̾Ȥޤ ξ硢 JAR եϽ̾դ JAR եˤäƾ񤭤ޤ +.TP 3 +\-verify +ޥɹԤǤΥץ󤬻ꤵƤϡꤵ줿 JAR ե뤬ڤޤ JAR եؤν̾ϹԤޤ󡣸ڤȡjar verified Ȥåɽޤ̾Ƥʤ JAR ե롢ޤϥݡȤƤʤ르ꥺ (RSA ץХΥ󥹥ȡλƤʤ RSA ʤ) Ȥäƽ̾줿 JAR ե򸡾ڤ褦Ȥȡjar is unsigned. (signatures missing or not parsable)פȤåɽޤ +.LP +̾դ JAR եϡ\f3jarsigner\fP ޤ JDK 1.1 \f3javakey\fP ġ롢뤤ϤξȤäƸڤǤޤ +.LP +ڤˤĤƤξܺ٤ϡJAR եθڡפ򻲾ȤƤ +.TP 3 +\-certs +ޥɹԤǡ \f2\-verify\fP \f2\-verbose\fP ץȤȤˤΥץꤷ硢JAR եγƽ̾Ԥξ󤬽Ϥ˴ޤޤޤˤϼΤΤޤޤޤ +.RS 3 +.TP 2 +o +̾Ԥθ (.DSA ե˳Ǽ줿) μ̾ +.TP 2 +o + X. (Ĥޤꡢ \f2java.security.cert.X509Certificate\fP Υ󥹥) Ǥϡ̾Ԥμ̾ +.RE +.LP +ȥγǧԤޤޥɹԤǥȥͤꤵƤʤ硢ǥեȤΥȥե뤬Сޤ̾Ԥθξ񤬥ȥΥȥȰפϡξɽޤ +.RS 3 .TP 2 o -\f3jarsigner\fP は、以前に \f3javakey\fP を使って署名された JAR ファイルに署名を付けることができます。 +̾Ԥ˳륭ȥȥ̾̾ϳ̤ǰϤޤޤ ȥǤϤʤ JDK 1.1 Υǥƥƥǡ١ͳ褹̾Ԥξϡ̤ǤϤʤ̤ǰϤޤޤ +.RE +.TP 3 +\-certchain file +ޥɹԤǻꤷ̾Ƿޤ륭ȥȥ˴Ϣդ줿󤬴ǤʤˡѤ٤ꤷޤΤ褦ʾ֤ˤʤǽΤϡȥϡɥȡ˳ǼƤ뤬ˤϾΤݻǤΰ褬¸ߤƤʤ褦ʾǤΥեϰϢ X.509 񤬽Ϣ뤵줿ΡPKCS#7 ñǡ֥åΤ줫ȤʤꡢΥ󥳡ǥ󥰷ϥХʥꥨ󥳡ǥ󥰷Internet RFC 1421 ɸǵꤵǽ󥳡ǥ󥰷 (BASE64 󥳡ǥ󥰤ȤƤФ) Τ줫ˤʤޤ +.TP 3 +\-verbose +ޥɹԤǤΥץ󤬻ꤵƤ硢\f3jarsigner\fP ϡ־Ĺץ⡼ɤưJAR ν̾ޤϸڤοʹԾ˴ؤɲþϤޤ +.TP 3 +\-internalsf +ϡJAR եν̾줿 .DSA (֥̾å) եˡ줿 .SF ե (̾ե) δʥԡ沽줿ǴޤޤƤޤưѹޤưѹˤʤꡢߤǤϡ JAR եΤΥ򾮤뤿ˡǥեȤǤ .SF ե뤬 .DSA ե˴ޤޤʤ褦ˤʤäƤޤ \f2\-internalsf\fP ץ򥳥ޥɹԤǻꤹȡƱ褦ưޤ\f3ΥץϡƥȤԤˤǤʳˤϻѤʤǤ ΥץѤȡͭפʺŬԤʤʤޤ\fP +.TP 3 +\-sectionsonly +ޥɹԤǤΥץ󤬻ꤵƤ硢JAR եν̾ .SF ե (̾ե) ˤϡޥ˥եȥեΤΥϥåޤإåɲäޤ󡣤ξ硢.SF ե˴ޤޤΤϡJAR եγƥե˴ؤ󤪤ӥϥåǤܺ٤ϡֽ̾ (.SF) եפ򻲾ȤƤ +.LP +ǥեȤǤϡŬԤˡޥ˥եȥեΤΥϥåޤإåɲäޤإå¸ߤϡJAR եθڻˡޤإåΥϥå夬ޥ˥եȥեΤΥϥåȼºݤ˰פ뤫ɤǧޤϥå夬פ硢ڤϼμ˿ʤߤޤϥå夬פʤϡΨŪˤˡȤäƸڤԤޤ Ūˤϡ.SF եγƥե󥻥Υϥå夬ޥ˥եȥեб륻ΥϥåȰפ뤫ɤǧޤ +.LP +ܺ٤ϡJAR եθڡפ򻲾ȤƤ +.LP +\f3ΥץϡƥȤԤˤǤʳˤϻѤʤǤ ΥץѤȡͭפʺŬԤʤʤޤ\fP +.TP 3 +\-protected +\f2true\fP ޤ \f2false\fP PIN ꡼ʤɤݸ줿ǧڥѥ𤷤ƥѥɤꤹɬפˤϡͤ \f2true\fP ˻ꤷƤ +.TP 3 +\-providerClass provider\-class\-name +ӥץХƥץѥƥե (\f2java.security\fP) ΥꥹȤäƤʤȤˡŹ沽ӥץХΥޥ饹ե̾ꤷޤ +.LP +\f2\-providerArg\fP \f2ConfigFilePath\fP ץȤ߹碌ƻѤޤkeytool jarsigner ϥץХưŪ˥󥹥ȡ뤷ޤ (ǡ\f2ConfigFilePath\fP ϥȡեؤΥѥǤ)ƥץѥƥե Sun PKCS#11 ץХꤵƤʤ PKCS#11 ȥɽ륳ޥɤ򼡤˼ޤ +.nf +\f3 +.fl +jarsigner \-keystore NONE \-storetype PKCS11 \\ +.fl + \-providerClass sun.security.pkcs11.SunPKCS11 \\ +.fl + \-providerArg /foo/bar/token.config \\ +.fl + \-list +.fl +\fP +.fi +.TP 3 +\-providerName providerName +\f2java.security\fP ƥץѥƥե 2 İʾΥץХꤵƤ硢\f2\-providerName\fP ץȤäΥץХ󥹥󥹤ǤޤΥץΰϡץХ̾Ǥ +.LP +Sun PKCS#11 ץХξ硢\f2providerName\fP \f2SunPKCS11\-\fP\f2TokenName\fP Ȥˤʤޤ ǡ\f2TokenName\fPפϡץХ󥹥󥹤줿̾Ǥ ܺ٤ +.na +\f2°ɽ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#ATTRS򻲾ȤƤȤСʲΥޥɤǤϡ̾ \f2SmartCard\fP PKCS#11 ȥץХ󥹥󥹤ƤꥹȤޤ +.nf +\f3 +.fl +jarsigner \-keystore NONE \-storetype PKCS11 \\ +.fl + \-providerName SunPKCS11\-SmartCard \\ +.fl + \-list +.fl +\fP +.fi +.TP 3 +\-Jjavaoption +ꤵ줿 \f2javaoption\fP ʸ Java 󥿥ץ꥿ľϤޤ\f3jarsigner\fP ϡºݤˤ Java 󥿥ץ꥿Ф֥åѡפǤΥץˤϡޤ뤳ȤϤǤޤ󡣤Υץϡ¹ԴĶޤϥ꡼ѤĴǤѲǽʥ󥿥ץ꥿ץΰɽˤϡ \f2java \-h\fP ޤ \f2java \-X\fP ȥޥɹԤϤޤ +.LP +.TP 3 +\-tsa url +\f2\-tsa http://example.tsa.url\fP JAR եν̾˥ޥɹԤɽ硢̾ΥॹפޤURL \f2http://example.tsa.url\fP ϡTSA (Time Stamping Authority) ξꤷޤϡ \f2\-tsacert\fP ץǸФ줿 URL 򥪡С饤ɤޤ \f2\-tsa\fP ץǤϡTSA θ򥭡ȥ֤ɬפϤޤ +.LP +ॹפ뤿ˡ \f2jarsigner\fP ϡ +.na +\f2RFC 3161\fP @ +.fi +http://www.ietf.org/rfc/rfc3161.txt Ƥ ॹץץȥ (TSP) Ѥ TSA ̿ޤȡTSA ֤줿ॹץȡϽ֥̾åեν̾ȤȤ¸ޤ +.LP +.TP 3 +\-tsacert alias +\f2\-tsacert alias\fP JAR եν̾˥ޥɹԤɽ硢̾Υॹפޤ \f2alias\fP ϡȥθͭ TSA θꤷޤȥξǡTSA ξꤹ URL ޤ Subject Information Access ĥǽǧޤ +.LP +TSA θϡ \f2\-tsacert Ȥä硢ȥ֤Ƥɬפޤ\fP. +.LP +.TP 3 +\-altsigner class +ؽ̾Ѥ뤳Ȥꤷޤ饹̾ϡcom.sun.jarsigner.ContentSigner ݥ饹ĥ륯饹ե \f2ꤷޤ\fP. Υ饹եؤΥѥϡ \f2\-altsignerpath\fP ץˤäޤ \f2\-altsigner\fP ץ󤬻Ѥȡ \f2jarsigner\fP ϡꤵ줿饹󶡤̾ѤޤǤʤ硢 \f2jarsigner\fP ϥǥեȤν̾Ѥޤ +.LP +ȤС \f2com.sun.sun.jarsigner.AuthSigner\fP Ȥ̾Υ饹󶡤̾Ѥˤϡ \f2jarsigner\fP ץ \f2\-altsigner com.sun.jarsigner.AuthSignerפѤޤ\fP +.LP +.TP 3 +\-altsignerpath classpathlist +饹ե (Υ饹ե̾Ҥ \f2\-altsigner\fP ץǻꤵ) ӤΥ饹¸뤹٤Ƥ JAR եؤΥѥꤷޤ饹ե뤬 JAR եˤ硢ʲΤ褦 JAR եؤΥѥꤵޤ +.LP +ХѥޤϸߤΥǥ쥯ȥ꤫ХѥǤޤ \f2classpathlist\fP ʣΥѥ JAR ե뤬ޤޤˤϡ Solaris ξϥ (\f2:\fP) ǡWindows ξϥߥ (\f2;\fP) Ǥ줾ڤޤŪΥ饹Ǥ˸ѥˤϡΥץפǤ +.LP +饹եޤࡢJAR եؤΥѥꤹ򼨤ޤ +.nf +\f3 +.fl +\-altsignerpath /home/user/lib/authsigner.jar +.fl +\fP +.fi +.LP +JAR ե̾ޤޤƤ뤳ȤդƤ +.LP +饹եޤ JAR եؤΥѥꤹ򼨤ޤ +.nf +\f3 +.fl +\-altsignerpath /home/user/classes/com/sun/tools/jarsigner/ +.fl +\fP +.fi +.LP +JAR ե̾ϴޤޤƤʤȤαդƤ +.TP 3 +\-strict +̾ޤϸڽˡ餫ηٹåɽ礬ޤޥɹԤǤΥץꤹȡĤäٹåġνλɤȿǤޤܺ٤ϡַٹפι򻲾ȤƤ +.TP 3 +\-verbose:sub\-options +ڽǡ \f2\-verbose\fP ץϡɽ̤ꤹ륵֥ץޤ \f2\-certs\fP ꤷ硢ǥեȥ⡼ (ޤϥ֥ץ all) Ǥϡȥ꤬뤿Ӥˤγƥȥ꤬ɽ졢ΤȤ JAR եγƽ̾Ԥξɽޤ \f2\-certs\fP \f2\-verbose:grouped\fP ֥ץꤷ硢Ʊ̾ԾĥȥȤξ󤬡ä˥롼ײɽޤ \f2\-certs\fP \f2\-verbose:summary\fP ֥ץꤷ硢Ʊ̾ԾĥȥȤξ󤬤ä˥롼ײɽޤƥȥξܺ٤1 ĤΥȥ (Ӥʾ)פȤ󤵤ɽޤܺ٤ι򻲾ȤƤ +.RE + +.LP +.SH "" +.LP +.SS +JAR եν̾ +.LP +.LP +bundle.jar Ȥ̾ JAR ե뤬ȤޤΥեˡȥ̾ jane Ǥ桼Ȥäơ̾դȤޤȥϡmystore Ȥ̾ǡC ɥ饤֤ working ǥ쥯ȥˤꡢȥΥѥɤ mypass\f2jane\fP Υѥɤ j638klm Ȥޤξ硢Υޥɤ¹ԤȡJAR ե˽̾դ sbundle.jar Ȥ̾դ JAR եǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-storepass myspass +.fl + \-keypass j638klm \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +ΥޥɤǤ \f2\-sigfile\fP ꤵƤʤᡢ̾դ JAR ե˳Ǽ .SF ե .DSA ե̾ϡ̾ǥե̾ĤޤĤޤꡢ̾ \f2JANE.SF\fP \f2JANE.DSA\fP ˤʤޤ +.LP +.LP +ȥΥѥɤΥѥɤ򤢤ȤϤϡΥޥɤṳ̂ƼΤ褦ϤǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore +.fl + \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +ǥեȤΥȥ (ۡǥ쥯ȥ .keystore Ȥ̾Υȥ) Ѥϡ˼褦ˡȥλάǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +Ǹˡ JAR ե (\f2bundle.jar\fP) ̾դ JAR եñ˾񤭤ϡΤ褦 \f2\-signedjar\fP ץꤹɬפϤޤ +.LP +.nf +\f3 +.fl + jarsigner bundle.jar jane +.fl +\fP +.fi + +.LP +.SS +̾դ JAR եθ +.LP +.LP +˼Τϡ̾դ JAR ե򸡾ڤ̾ͭ JAR ե뤬ѤƤʤȤǧ뤿ΥޥǤ +.LP +.nf +\f3 +.fl + jarsigner \-verify sbundle.jar +.fl +\fP +.fi + +.LP +.LP +ڤȡΤ褦ʥåɽޤ +.LP +.nf +\f3 +.fl + jar verified. +.fl +\fP +.fi + +.LP +.LP +ȤץץȤɽޤڤʤäϡ顼åɽޤ +.LP +.LP +\-verbose ץȤȡ \f2¿ξ\fP ɽޤ\-verbose ץդ \f3jarsigner\fP \f2ѤȤν\fP ˼ޤ +.LP +.nf +\f3 +.fl + jarsigner \-verify \-verbose sbundle.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class +.fl + smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.SS +Ȥä +.LP +.LP +ڻ \-verify \-verbose ץ˲ä \f2\-certs\fP ץꤷϡ JAR եγƽ̾ԤξϤޤˤϡ񥿥ס̾Լ̾ (X.509 ξΤ) JAR եθξ񤬥ȥȥξ˰פˤϡ̤ǰϤޤ줿̾ԤΥȥ̾ޤޤޤ򼨤ޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-verify \-verbose \-certs myTest.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + 208 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.SF +.fl + 1087 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.DSA +.fl + smk 2752 Fri Sep 26 16:12:30 PDT 1997 Tst.class +.fl + +.fl + X.509, CN=Test Group, OU=Java Software, O=Sun Microsystems, L=CUP, S=CA, C=US (javatest) +.fl + X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.LP +̾Ԥξ X.509 Ǥʤϡ̾ɽޤ󡣤ξˤϡΥפ̾ɽޤȤС PGP ǡ̾ bob ξϡΤ褦ɽޤ +.LP +.nf +\f3 +.fl + PGP, (bob) +.fl +\fP +.fi + +.LP +.SS +ǥƥƥǡ١ν̾Ԥޤ JAR եθ +.LP +.LP +JAR ե뤬JDK 1.1 \f3javakey\fP ġȤäƽ̾Ƥ硢̾Ԥϥǥƥƥǡ١̾Ǥξ硢ڤνϤˤ i Ȥ椬ޤޤޤJAR ե뤬ǥƥƥǡ١̾ȥȥ̾ξˤäƽ̾Ƥϡk i ξɽޤ +.LP +.LP +\f2\-certs\fP ץꤷ硢ȥ̾ϳ̤ǰϤޤΤФǥƥƥǡ١̾ϳѳ̤ǰϤޤɽޤȤС +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-verify \-verbose \-certs writeFile.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + 199 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.SF +.fl + 1013 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.DSA +.fl + smki 2752 Fri Sep 26 16:12:30 PDT 1997 writeFile.html +.fl + +.fl + X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) +.fl + X.509, CN=Duke, OU=Java Software, O=Sun, L=cup, S=ca, C=us [duke] +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + i = ǥƥƥפ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.LP +̾ duke ϳѳ̤ǰϤޤƤΤǡ̾ϥȥ̾ǤϤʤǥƥƥǡ١̾Ǥ +.LP +.SH "ٹ" +.LP +̾/ڽˤϡjarsigner 餵ޤޤʷٹɽǽޤηٹ𥳡ɤϼΤ褦Ƥޤ +.nf +\f3 +.fl + hasExpiringCert 2 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ 6 ˴ڤˤʤޤ +.fl + +.fl + hasExpiredCert 4 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ񤬴ڤˤʤäƤޤ +.fl + +.fl + notYetValidCert 4 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ񤬤ޤͭˤʤäƤޤ +.fl + +.fl + chainNotValidated 4 +.fl + JAR ˴ޤޤ륨ȥξθڤԤޤ +.fl + +.fl + badKeyUsa ge 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ KeyUsage ĥɤν̾ĤƤޤ +.fl + +.fl + badExtendedKeyUsage 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ ExtendedKeyUsage ĥ +.fl + ɤν̾ĤƤޤ +.fl + +.fl + badNetscapeCertType 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ NetscapeCertType ĥ +.fl + ɤν̾ĤƤޤ +.fl + +.fl + hasUnsignedEntry 16 +.fl + JAR ˤϡåԤƤʤ̾ʤȥ꤬ޤޤƤޤ +.fl + +.fl + notSignedByAlias 32 +.fl + JAR ˤϡꤵ줿̾ˤäƽ̾Ƥʤ̾դȥ꤬ޤޤƤޤ +.fl + +.fl + aliasNotInStore 32 +.fl + JAR ˤϡΥȥ̾ˤäƽ̾Ƥʤ̾դȥ꤬ޤޤƤޤ +.fl + +.fl +\fP +.fi + +.LP +.LP +\f2\-strict\fP ץꤷ硢Ф줿ٹ OR äͤġνλɤȤ֤ޤȤСȥν̾˻Ѥ񤬴ڤˤʤäƤơĤξ keyUsage ĥǥեν̾ĤƤʤ硢λ 12 (=4+8) ֤ޤ +.LP +.LP +\f3\fP: UNIX ǻѲǽͤ 0 255 Ǥ뤿ᡢλɤϺѤޤˤƤ⡢̾/ڽԤȡνλɤ֤ޤ +.LP +.nf +\f3 +.fl +failure 1 +.fl +\fP +.fi + +.LP +.SS +JDK 1.1 Ȥθߴ +.LP +.LP +\f3keytool\fP ġ \f3jarsigner\fP ġϡJDK 1.1 󶡤Ƥ \f3javakey\fP ġ֤ΤǤοġϡȥѥɤݸ뵡ǽ䡢̾˲äƽ̾򸡾ڤ뵡ǽʤɡ\f3javakey\fP ¿ΤǽƤޤ +.LP +.LP +ȥƥ㡼ϡ\f3javakey\fP ƴƤǥƥƥǡ١ΤǤȥȡJDK 1.1 \f3javakey\fP ȤäƤǡ١Ȥδ֤ˤϲ̸ߴϤޤ󡣤ΤȤϲǽǤ +.LP +.RS 3 .TP 2 o -\f3jarsigner\fP は、\f3javakey\fPを使って署名された JAR ファイルを検証できます。したがって、jarsigner は、Java 2 SDK のキーストアではなく JDK 1.1 のアイデンティティーデータベースからの署名者別名を認識し、これらを対象に処理を行うことができます。 +\f3keytool\fP \f2\-identitydb\fP ޥɤȤȡǥƥƥǡ١ξ򥭡ȥ˥ݡȤǤޤ +.TP 2 +o +\f3jarsigner\fP ϡ \f3javakey\fP Ȥäƽ̾줿 JAR ե˽̾դ뤳ȤǤޤ +.TP 2 +o +\f3jarsigner\fP ϡ\f3javakey\fPȤäƽ̾줿 JAR ե򸡾ڤǤޤäơjarsigner ϡJava 2 SDK ΥȥǤϤʤ JDK 1.1 Υǥƥƥǡ١ν̾̾ǧоݤ˽ԤȤǤޤ .RE .LP .LP -次の表は、JDK 1.1.x で署名された JAR ファイルが、Java 2 プラットフォームでどのように扱われるかを示しています。 +ɽϡJDK 1.1.x ǽ̾줿 JAR ե뤬Java 2 ץåȥեǤɤΤ褦˰뤫򼨤Ƥޤ .LP .LP .TS @@ -160,7 +1053,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3JAR ファイルのタイプ\fP +\f3JAR եΥ\fP .br .di .nr a| \n(dn @@ -176,7 +1069,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f31.1 データベース内のアイデンティティー\fP +\f31.1 ǡ١Υǥƥƥ\fP .br .di .nr b| \n(dn @@ -192,7 +1085,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f31.1 データベースから Java 2 Platform キーストアにインポートされる信頼できるアイデンティティー (4)\fP +\f31.1 ǡ١ Java 2 Platform ȥ˥ݡȤ뿮Ǥ륢ǥƥƥ (4)\fP .br .di .nr c| \n(dn @@ -208,7 +1101,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(83 .ll \n(83u .in 0 -\f3ポリシーファイルがアイデンティティー/別名に特権を与える\fP +\f3ݥꥷե뤬ǥƥƥ/̾øͿ\fP .br .di .nr d| \n(dn @@ -224,7 +1117,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr e| \n(dn @@ -240,7 +1133,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr f| \n(dn @@ -256,7 +1149,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr g| \n(dn @@ -272,7 +1165,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -あり/信頼できない +/Ǥʤ .br .di .nr h| \n(dn @@ -288,7 +1181,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 (3) +٤ƤΥɤͿǥեȤø(3) .br .di .nr i| \n(dn @@ -304,7 +1197,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -あり/信頼できない +/Ǥʤ .br .di .nr j| \n(dn @@ -320,7 +1213,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 (1,3) +٤ƤΥɤͿǥեȤø(1,3) .br .di .nr k| \n(dn @@ -336,7 +1229,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権とポリシーファイル内で与えられる特権 +٤ƤΥɤͿǥեȤøȥݥꥷեͿø .br .di .nr l| \n(dn @@ -352,7 +1245,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権とポリシーファイル内で与えられる特権 (2) +٤ƤΥɤͿǥեȤøȥݥꥷեͿø(2) .br .di .nr m| \n(dn @@ -363,46 +1256,46 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名のない JAR +.nr 38 \w̾Τʤ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 .nr 38 \n(a- .if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -413,63 +1306,63 @@ .nr 38 \n(j- .if \n(81<\n(38 .nr 81 \n(38 .nr 82 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 .82 .rm 82 .nr 38 \n(c- .if \n(82<\n(38 .nr 82 \n(38 .nr 83 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 .83 .rm 83 .nr 38 \n(d- .if \n(83<\n(38 .nr 83 \n(38 .nr 84 0 -.nr 38 \w\f3与えられる特権\fP +.nr 38 \w\f3Ϳø\fP .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 +.nr 38 \w٤Ƥø .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 (1) +.nr 38 \w٤Ƥø (1) .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 (1) +.nr 38 \w٤Ƥø (1) .if \n(84<\n(38 .nr 84 \n(38 .84 .rm 84 @@ -503,7 +1396,7 @@ .nr 44 \n(83+(3*\n(38) .nr 84 +\n(44 .nr TW \n(84 -.if t .if \n(TW>\n(.li .tm Table at line 185 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1078 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -528,7 +1421,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u'\h'|\n(43u'\h'|\n(44u'\f3与えられる特権\fP +\&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u'\h'|\n(43u'\h'|\n(44u'\f3Ϳø\fP .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -565,7 +1458,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -581,7 +1474,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名のない JAR\h'|\n(41u'なし\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾Τʤ JAR\h'|\n(41u'ʤ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -597,7 +1490,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'あり\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -615,7 +1508,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -640,7 +1533,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'\h'|\n(42u'なし\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'\h'|\n(42u'ʤ\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -663,7 +1556,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'あり\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -679,7 +1572,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'あり\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -693,15 +1586,15 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u'すべての特権 +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u'٤Ƥø .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'あり\h'|\n(43u'なし\h'|\n(44u'すべての特権 (1) +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'\h'|\n(43u'ʤ\h'|\n(44u'٤Ƥø (1) .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'なし\h'|\n(43u'あり\h'|\n(44u'すべての特権 (1) +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'ʤ\h'|\n(43u'\h'|\n(44u'٤Ƥø (1) .fc .nr T. 1 .T# 1 @@ -724,894 +1617,43 @@ .LP .LP -注 \- + \- .LP .RS 3 .TP 3 1. -ポリシーファイル内にアイデンティティー/別名についての言及がある場合、それをキーストアにインポートして、ポリシーファイルの設定が与えられた特権に反映されるようにする必要があります。 +ݥꥷե˥ǥƥƥ/̾ˤĤƤθڤ硢򥭡ȥ˥ݡȤơݥꥷե꤬Ϳ줿øȿǤ褦ˤɬפޤ .TP 3 2. -ポリシーファイル/キーストアの組み合わせは、アイデンティティーデータベース内の信頼できるアイデンティティーよりも優先されます。 +ݥꥷե/ȥȤ߹碌ϡǥƥƥǡ١οǤ륢ǥƥƥͥ褵ޤ .TP 3 3. -Java 2 プラットフォームでは、信頼できないアイデンティティーは無視されます。 +Java 2 ץåȥեǤϡǤʤǥƥƥ̵뤵ޤ .TP 3 4. -Java 2 SDK キーストアにインポートできるのは、信頼できるアイデンティティーだけです。 -.RE - -.LP -.SS -キーストアの別名 -.LP -.RS 3 - -.LP -.LP -キーストアのすべてのエントリは、一意の「別名」を介してアクセスされます。 -.LP -.LP -\f3jarsigner\fP を使って JAR ファイルに署名を付けるときは、署名の生成に必要な非公開鍵を含むキーストアエントリの別名を指定する必要があります。たとえば、次の例は、working ディレクトリの mystore という名前のキーストアに含まれる別名 duke に関連付けられた非公開鍵を使って、MyJARFile.jar という名前の JAR ファイルに署名を付けます。出力ファイルは指定されていないので、MyJARFile.jar は署名付きの JAR ファイルによって上書きされます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-storepass myspass -.fl - \-keypass dukekeypasswd MyJARFile.jar duke -.fl -\fP -.fi - -.LP -.LP -キーストアはパスワードで保護されているので、ストアのパスワード (上の例では mypass) を指定する必要があります。コマンド行でストアのパスワードを指定しないと、パスワードの入力を求められます。同様に、非公開鍵もキーストア内でパスワードによって保護されているため、非公開鍵のパスワード (上の例では dukekeypasswd) を指定する必要があります。 コマンド行で非公開鍵のパスワードを指定していない、また、指定したパスワートが保存されているパスワードと違っている場合には、非公開鍵のパスワードの入力を求められます。 -.LP -.RE -.SS -キーストアの場所 -.LP -.RS 3 - -.LP -.LP -\f3jarsigner\fP には、使用するキーストアの URL を指定する \f2\-keystore\fP オプションがあります。キーストアは、デフォルトではユーザーのホームディレクトリの \f2.keystore\fP という名前のファイルに格納されます。 ユーザーのホームディレクトリは、\f2user.home\fP システムプロパティーによって決まります。Solaris システムの場合、\f2user.home\fP がデフォルトでユーザーのホームディレクトリになっています。 -.LP -.LP -\f2\-keystore\fP オプションからの入力ストリームは、\f2KeyStore.load\fP メソッドに渡されます。URL として \f2NONE\fP が指定されている場合は、null のストリームが \f2KeyStore.load\fP メソッドに渡されます。\f2NONE\fP は、\f2KeyStore\fP がファイルベースではなく、たとえば、ハードウェアトークンデバイスに置かれている場合に指定します。 -.LP -.RE -.SS -キーストアの実装 -.LP -.RS 3 - -.LP -.LP -\f2java.security\fP パッケージで提供される \f2KeyStore\fP クラスには、キーストア内の情報に対するアクセスと変更を行うための明確に定義されたインタフェースが用意されています。キーストアの固定実装としては、それぞれが特定の「タイプ」のキーストアを対象とする複数の異なる実装が存在可能です。 -.LP -.LP -現在、キーストアの実装を使用するものとして、\f3keytool\fP と \f3jarsigner\fP の 2 つのコマンド行ツールと、\f3Policy Tool\fP という名前の 1 つの GUI ベースのツールがあります。\f2KeyStore\fP は public として使用可能なので、Java 2 SDK ユーザーは KeyStore を使ったほかのセキュリティーアプリケーションも作成できます。 -.LP -.LP -キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアをファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワードによって保護され、キーストア全体の整合性も (非公開鍵とは別の) パスワードによって保護されます。 -.LP -.LP -キーストアの実装は、プロバイダベースです。具体的には、\f2KeyStore\fP が提供するアプリケーションインタフェースは、Service Provider Interface (SPI) という形で実装されています。つまり、対応する \f2KeystoreSpi\fP 抽象クラス (これも \f2java.security\fP パッケージに含まれている) があり、このクラスが Service Provider Interface のメソッドを定義しています。 これらのメソッドは、「プロバイダ」が実装しなければなりません。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービスのサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合のことです。したがって、キーストアの実装を提供するには、 -.na -\f2「Java 暗号化アーキテクチャー用プロバイダの実装方法」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlで説明しているように、クライアントが「プロバイダ」を実装し、KeystoreSpi サブクラスの実装を提供する必要があります。 -.LP -.LP -アプリケーションでは、\f2KeyStore\fP クラスが提供する getInstance ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式を定義するとともに、キーストア内の非公開鍵とキーストア自体の整合性を保護するために使われるアルゴリズムを定義します。異なるタイプのキーストアの実装には、互換性はありません。 -.LP -.LP -\f3keytool\fP は、任意のファイルベースのキーストア実装で動作します。keytool は、コマンド行から渡されたキーストアの場所をファイル名として扱い、これを FileInputStream に変換して、FileInputStream からキーストアの情報をロードします。一方、\f3jarsigner\fP ツールと \f3policytool\fP ツールは、URL で指定可能な任意の場所からキーストアを読み込むことができます。 -.LP -.LP -\f3jarsigner\fP と \f3keytool\fP の場合、\f2\-storetype\fP オプションを使ってコマンド行でキーストアのタイプを指定できます。\f3Policy Tool\fP の場合は、[Edit] メニューの [Change Keystore] コマンドを使ってキーストアのタイプを指定できます。 -.LP -.LP -キーストアのタイプを明示的に指定しない場合、keytool、jarsigner、および policytool の各ツールは、セキュリティープロパティーファイル内で指定された \f2keystore.type\fP プロパティーの値に基づいてキーストアの実装を選択します。セキュリティープロパティーファイルは、\f2java.security\fP という名前で SDK セキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位のディレクトリ) です。 -.LP -.LP -各ツールは、\f2keystore.type\fP の値を取得し、この値で指定されたタイプのキーストアを実装しているプロバイダが見つかるまで、現在インストールされているすべてのプロバイダを調べます。目的のプロバイダが見つかると、そのプロバイダからのキーストアの実装を使います。 -.LP -.LP -\f2KeyStore\fP クラスでは \f2getDefaultType\fP という名前の static メソッドが定義されており、アプリケーションとアプレットはこのメソッドを使うことで \f2keystore.type\fP プロパティーの値を取得できます。次のコードは、デフォルトのキーストアタイプ (\f2keystore.type\fP プロパティーで指定されたタイプ) のインスタンスを生成します。 -.LP -.nf -\f3 -.fl - KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); -.fl -\fP -.fi - -.LP -.LP -デフォルトのキーストアタイプは JKS (Sun が提供する独自のタイプのキーストアの実装) です。これは、セキュリティープロパティーファイル内の次の行によって指定されています。 -.LP -.nf -\f3 -.fl - keystore.type=jks -.fl -\fP -.fi - -.LP -.LP -注:キーストアのタイプの指定では、大文字と小文字は区別されません。たとえば、JKS と jks は同じものとして扱われます。 -.LP -.LP -各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して別のキーストアのタイプを指定します。たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供しているプロバイダパッケージを使用するには、上の行を次のように変更します。 -.LP -.nf -\f3 -.fl - keystore.type=pkcs12 -.fl -\fP -.fi - -.LP -.LP -PKCS#11 プロバイダパッケージを使用する場合、その詳細については、「Java PKCS#11 Reference Guide」にある -.na -\f2「KeyTool and JarSigner」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSignerの節を参照してください。 -.LP -.RE -.RE -.SS -サポートされるアルゴリズム -.LP -.RS 3 - -.LP -.LP -デフォルトでは、\f3jarsigner\fP は次のどちらかのアルゴリズムを使って JAR ファイルに署名します。 -.LP -.RS 3 -.TP 2 -o -SHA\-1 ダイジェストアルゴリズムを使った DSA (デジタル署名アルゴリズム) -.TP 2 -o -MD5 ダイジェストアルゴリズムを使った RSA アルゴリズム +Java 2 SDK ȥ˥ݡȤǤΤϡǤ륢ǥƥƥǤ .RE .LP -.LP -具体的には、署名者の公開鍵と非公開鍵が DSA 鍵である場合、\f3jarsigner\fP は SHA1withDSA アルゴリズムを使って JAR ファイルに署名を付けます。署名者の鍵が RSA 鍵である場合、\f3jarsigner\fP は MD5withRSA アルゴリズムを使って JAR ファイルに署名を付けます。 -.LP -.LP -これらのデフォルトの署名アルゴリズムは、\f2\-sigalg\fP オプションを使ってオーバーライドできます。 -.LP -.RE -.SS -署名付き JAR ファイル -.LP -.RS 3 - -.LP -.LP -\f3jarsigner\fP を使って JAR ファイルに署名を付けた場合、出力される署名付き JAR ファイルは入力 JAR ファイルと同じですが、次の 2 つの追加ファイルが META\-INF ディレクトリに置かれる点が異なります。 -.LP -.RS 3 -.TP 2 -o -.SF 拡張子の付いた署名ファイル -.TP 2 -o -.DSA 拡張子の付いた署名ブロックファイル -.RE - -.LP -.LP -これら 2 つのファイルのベースファイル名は、\f2\-sigFile\fP オプションの値から作成されます。たとえば、次のようにオプションを指定したとします。 -.LP -.nf -\f3 -.fl - \-sigFile MKSIGN -.fl -\fP -.fi - -.LP -.LP -この場合、ファイル名はそれぞれ MKSIGN.SF と MKSIGN.DSA になります。 -.LP -.LP -コマンド行で \f2\-sigfile\fP オプションを指定しなかった場合、.SF ファイルと .DSA ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字をすべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名がそのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。使用できる文字は、アルファベット、数字、下線 (_)、ハイフンです。 -.LP -\f3署名 (.SF) ファイル\fP -.LP -.RS 3 - -.LP -.LP -署名ファイル (.SF ファイル) は、\f3jarsigner\fP で署名を付けた JAR ファイルに常に含まれるマニフェストファイルと似ています。つまり、マニフェストファイル同様、.SF ファイルには、JAR ファイルに含まれているソースファイルごとに、次の 3 つの行があります。 -.LP -.RS 3 -.TP 2 -o -ファイル名 -.TP 2 -o -使われているダイジェストアルゴリズム (SHA) の名前 -.TP 2 -o -SHA ダイジェストの値 -.RE - -.LP -.LP -マニフェストファイルでは、SHA ダイジェストの値は、ソースファイルのバイナリデータのダイジェスト (ハッシュ) です。一方、.SF ファイルでは、ソースファイルのダイジェストの値は、マニフェストファイル中の該当するソースファイルに対応する 3 行のハッシュです。 -.LP -.LP -署名ファイルには、デフォルトでマニフェストファイル全体のハッシュも含まれています。後述の「JAR ファイルの検証」で説明するように、このヘッダーの存在によって検証の最適化が可能になっています。 -.LP -.RE -\f3署名ブロック (.DSA) ファイル\fP -.LP -.RS 3 - -.LP -.LP -.SF ファイルには署名が付けられ、署名は .DSA ファイルに置かれます。.DSA ファイルには、キーストアからの証明書または証明書チェーンも符号化された形で含まれています。 証明書または証明書チェーンは、署名に使われた非公開鍵に対応する公開鍵を認証します。 -.LP -.RE -.RE -.SS -署名タイムスタンプ -.LP -.RS 3 - -.LP -.LP -J2SE 5.0 リリースの \f2jarsigner\fP ツールは、JAR ファイルの署名時に署名タイムスタンプを生成および格納できるようになりました。さらに、\f2jarsigner\fP は代替署名機構をサポートします。この動作は省略可能で、署名時に次の各オプションによって制御されます。 -.LP -.RS 3 -.TP 2 -o -\f2\-tsa url\fP -.TP 2 -o -\f2\-tsacert alias\fP -.TP 2 -o -\f2\-altsigner class\fP -.TP 2 -o -\f2\-altsignerpath classpathlist\fP -.RE - -.LP -.LP -これらの各オプションの詳細については、後述の「オプション」節を参照してください。 -.LP -.RE -.SS -JAR ファイルの検証 -.LP -.RS 3 - -.LP -.LP -JAR ファイルの検証が成功するのは、署名が有効であり、かつ署名の生成以後に JAR ファイル内のどのファイルも変更されていない場合です。JAR ファイルの検証は、次の手順で行われます。 -.LP -.RS 3 -.TP 3 -1. -.SF ファイルそれ自体の署名を検証します。 -.LP -この手順では、各署名ブロック (.DSA) ファイルに格納されている署名が、実際に、公開鍵に対応する非公開鍵を使って生成されたものであることを確認します。 .DSA ファイルには、公開鍵の証明書 (または証明書チェーン) も含まれています。また、この手順では、目的の署名が、対応する署名 (.SF) ファイル内の有効な署名であるかどうかを調べ、.SF ファイルが改変されていないことも確認します。 -.TP 3 -2. -.SF ファイル内の各エントリのダイジェストをマニフェスト内の対応する各セクションと突き合わせて検証します。 -.LP -.SF ファイルには、マニフェストファイル全体のハッシュが格納されたヘッダーがデフォルトで含まれています。このヘッダーが存在する場合は、ヘッダー内のハッシュが実際にマニフェストファイルのハッシュと一致するかどうかを検証することができます。ハッシュが一致する場合は、次の手順に進みます。 -.LP -ハッシュが一致しない場合は、効率的には劣る方法を使って検証を行います。 具体的には、.SF ファイル内の各ソースファイル情報セクションのハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するかどうかを確認します (「署名 (.SF) ファイル」を参照)。 -.LP -.SF ファイルのヘッダーに格納されたマニフェストファイルのハッシュと、実際のマニフェストファイルのハッシュとが一致しない場合は、署名 (および .SF ファイル) の生成後に、JAR ファイルに 1 つ以上のファイルが追加 (\f2jar\fP ツールを使用) された可能性があります。\f2jar\fP ツールを使ってファイルを追加した場合、マニフェストファイルは変更されますが (新しいファイル用のセクションが追加される)、.SF ファイルは変更されません。この場合、.SF ファイルのヘッダー以外のセクションに格納されたハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するときは、署名の生成時に JAR ファイル内に存在していたファイルのうち、どのファイルも変更されていないことになり、検証は成功したものとして扱われます。 -.TP 3 -3. -JAR ファイル内のファイルのうち、.SF ファイル内にエントリを持つ各ファイルを読み込みます。読み込み中にファイルのダイジェストを計算し、結果をマニフェストセクション内の該当するファイルのダイジェストと比較します。2 つのダイジェストは同じでなければならず、そうでない場合は検証が失敗します。 -.RE - -.LP -.LP -検証プロセスの途中でなんらかの重大な検証エラーが発生した場合、検証プロセスは中止され、セキュリティー例外がスローされます。スローされたセキュリティー例外は、\f3jarsigner\fP がキャッチして表示します。 -.LP -.RE -.SS -1 つの JAR ファイルを対象とする複数の署名 -.LP -.RS 3 - -.LP -.LP -1 つの JAR ファイルに対して \f3jarsigner\fP ツールを複数回実行し、実行のたびに、異なるユーザーの別名を指定すれば、JAR ファイルに複数のユーザーの署名を付けることができます。 -.LP -.nf -\f3 -.fl - jarsigner myBundle.jar susan -.fl - jarsigner myBundle.jar kevin -.fl -\fP -.fi - -.LP -.LP -JAR ファイルが複数回署名されている場合、その JAR ファイルには .SF ファイルと .DSA ファイルの対が複数含まれることになります。 .SF ファイルと .DSA ファイルの対は、1 回の署名に対して 1 つ作成されます。したがって、上の例で出力される JAR ファイルには、次の名前を持つファイルが含まれます。 -.LP -.nf -\f3 -.fl - SUSAN.SF -.fl - SUSAN.DSA -.fl - KEVIN.SF -.fl - KEVIN.DSA -.fl -\fP -.fi - -.LP -.LP -注:JAR ファイルでは、JDK 1.1 の \f3javakey\fP ツールで生成された署名と \f3jarsigner\fP で生成された署名が混在できます。つまり、すでに \f3javakey\fP を使って署名が付けられている JAR ファイルに、\f3jarsigner\fP を使って署名を付けることができます。 -.LP -.RE -.SH "オプション" -.LP - -.LP -.LP -以下では、\f3jarsigner\fP のオプションについて説明します。注: +.SH "Ϣ" .LP .RS 3 .TP 2 o -どのオプション名にも先頭にマイナス記号 (\-) が付く -.TP 2 -o -オプションは任意の順序で指定できる -.TP 2 -o -イタリック体の項目の実際の値 (オプションの値) は、ユーザーが指定する必要がある -.TP 2 -o -\f2\-keystore\fP、\f2\-storepass\fP、\f2\-keypass\fP、\f2\-sigfile\fP、\f2\-sigalg\fP、\f2\-digestalg\fP および \f2\-signedjar\fP の各オプションを使用できるのは、JAR ファイルに署名を付ける場合だけである。 これらのオプションは、JAR ファイルを検証する場合には使用できない。同様に、別名をコマンド行で指定するのは、JAR ファイルに署名を付ける場合だけである -.RE - -.LP -.RS 3 -.TP 3 -\-keystore url -キーストアの場所を示す URL を指定します。デフォルトは、ユーザーのホームディレクトリ内のファイル \f2.keystore\fP です。 ユーザーのホームディレクトリは、user.home システムプロパティーによって決まります。 -.LP -署名するときはキーストアが必要です。 このため、デフォルトのキーストアが存在しない場合、あるいはデフォルト以外のほかのキーストアを使用する場合は、キーストアを明示的に指定する必要があります。 -.LP -検証するときはキーストアは必要ありません。 ただし、キーストアが指定されているか、あるいはデフォルトのキーストアが存在していて、さらに \f2\-verbose\fP オプションも指定されている場合は、JAR ファイルの検証に使われる証明書がキーストアに存在するかどうかについての追加情報が出力されます。 -.LP -注:\f2\-keystore\fP の引数には、URL の代わりにファイル名 (とパス) を指定できます。 ファイル名 (とパス) を指定した場合は、「file:」URL として扱われます。たとえば、次のように指定できます。 -.nf -\f3 -.fl - \-keystore \fP\f4filePathAndName\fP\f3 -.fl -\fP -.fi -これは、次の指定と同じものとして扱われます。 -.nf -\f3 -.fl - \-keystore file:\fP\f4filePathAndName\fP\f3 -.fl -\fP -.fi -JRE の \f2$JAVA_HOME/lib/security\fP ディレクトリに格納された \f2java.security\fP セキュリティープロパティーファイル内で Sun PKCS#11 プロバイダが設定されている場合、keytool と jarsigner は PKCS#11 トークンに基づいて動作できます。 次のオプションを指定します。 -.RS 3 -.TP 2 -o -\f2\-keystore NONE\fP +jar(1) ġΥɥ .TP 2 o -\f2\-storetype PKCS11\fP -.RE -たとえば、次のコマンドは、設定された PKCS#11 トークンの内容を一覧表示します。 -.RS 3 - -.LP -.nf -\f3 -.fl - jarsigner \-keystore NONE \-storetype PKCS11 \-list -.fl - -.fl -\fP -.fi -.RE -.TP 3 -\-storetype storetype -インスタンスを生成するキーストアのタイプを指定します。デフォルトのキーストアタイプは、セキュリティープロパティーファイル内の keystore.type プロパティーの値で指定されたタイプです。 この値は、\f2java.security.KeyStore\fP の static \f2getDefaultType\fP メソッドで取得できます。 -.LP -\f2\-storepass\fP オプションを使って PCKS#11 トークンの PIN を指定することもできます。何も指定しなかった場合、keytool と jarsigner はユーザーにトークン PIN の 入力を求めます。トークンに保護された認証パス (専用の PIN パッドや生体読み取り機など) がある場合、\f2\-protected\fP オプションを指定する必要がありますが、パスワードオプションを指定する必要はありません。 -.TP 3 -\-storepass password -キーストアにアクセスするのに必要なパスワードを指定します。このオプションが必要なのは、JAR ファイルに署名を付けるときだけです (JAR ファイルを検証するときは不要)。署名を付けるときに、コマンド行で \f2\-storepass\fP オプションを指定しなかった場合は、パスワードの入力を求められます。 -.LP -注:テストを目的とする場合、またはセキュリティー保護されたシステムを使用している場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。また、password プロンプトでパスワードを入力すると、入力したパスワードがエコーされ、そのまま画面に表示されます。 このため、周囲にほかのユーザーがいる場合は、パスワードを見られないように注意してください。 -.TP 3 -\-keypass password -コマンド行で指定された別名に対応するキーストアエントリの非公開鍵を保護するのに使うパスワードを指定します。\f3jarsigner\fP を使って JAR ファイルに署名を付けるときは、パスワードが必要です。コマンド行でパスワードが指定されておらず、必要なパスワードがストアのパスワードと異なる場合は、パスワードの入力を求められます。 -.LP -注:テストを目的とする場合、またはセキュリティー保護されたシステムを使用している場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。また、password プロンプトでパスワードを入力すると、入力したパスワードがエコーされ、そのまま画面に表示されます。 このため、周囲にほかのユーザーがいる場合は、パスワードを見られないように注意してください。 -.TP 3 -\-sigfile file -.SF ファイルと .DSA ファイルの生成に使うベースファイル名を指定します。たとえば、\f2file\fP に DUKESIGN を指定すると、生成される .SF ファイルと .DSA ファイルの名前は、それぞれ DUKESIGN.SF と DUKESIGN.DSA になります。 これらのファイルは、署名付き JAR ファイルの META\-INF ディレクトリに置かれます。 -.LP -\f2file\fP に使用できる文字は「a\-zA\-Z0\-9_\-」です。つまり、文字、数字、下線、およびハイフンだけを使用できます。注:.SF および .DSA のファイル名では、小文字はすべて大文字に変換されます。 -.LP -コマンド行で \f2\-sigfile\fP オプションを指定しなかった場合、.SF ファイルと .DSA ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字をすべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名がそのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。 -.TP 3 -\-sigalg algorithm -.RS 3 - -.LP -JAR ファイルの署名に使用する署名アルゴリズムの名前を指定します。 -.LP -標準署名アルゴリズム名の一覧については、「Java Cryptography Architecture」にある -.na -\f2「Appendix A 」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。このアルゴリズムは、JAR ファイルの署名に使用する秘密鍵と互換性のあるものでなければなりません。このオプションを指定しなかった場合、秘密鍵のタイプに応じて SHA1withDSA、MD5withRSA のいずれかが使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザーがそのようなプロバイダを \f2\-providerClass\fP オプションを使って指定する必要があります。 そうでない場合、コマンドの実行が失敗します。 -.LP -.RE -.TP 3 -\-digestalg algorithm -.RS 3 -JAR ファイルのエントリをダイジェストする際に使用するメッセージダイジェストアルゴリズムの名前を指定します。 -.LP -標準メッセージダイジェストアルゴリズム名の一覧については、「Java Cryptography Architecture」にある -.na -\f2「Appendix A 」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。このオプションを指定しなかった場合、SHA\-1 が使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザーがそのようなプロバイダを \f2\-providerClass\fP オプションを使って指定する必要があります。 そうでない場合、コマンドの実行が失敗します。 -.LP -.RE -.TP 3 -\-signedjar file -署名付き JAR ファイルの名前を指定します。 -.LP -コマンド行で名前を指定しなかった場合は、入力 JAR ファイル (署名の対象となる JAR ファイル) の名前と同じ名前が使われます。 この場合、入力 JAR ファイルは署名付き JAR ファイルによって上書きされます。 -.TP 3 -\-verify -コマンド行でこのオプションが指定されている場合は、指定された JAR ファイルが検証されます。JAR ファイルへの署名は行われません。 検証が成功すると、「jar が検証されました。」 というメッセージが表示されます。署名されていない JAR ファイル、またはサポートされていないアルゴリズム (RSA プロバイダのインストールを終了していない場合の RSA など) を使って署名された JAR ファイルを検証しようとすると、「jar は署名されていません。(署名が見つからないか、構文解析できません)」というメッセージが表示されます。 -.LP -署名付き JAR ファイルは、\f3jarsigner\fP または JDK 1.1 の \f3javakey\fP ツール、あるいはその両方を使って検証できます。 -.LP -検証についての詳細は、「JAR ファイルの検証」を参照してください。 -.TP 3 -\-certs -コマンド行で、\f2\-verify\fP および \f2\-verbose\fP オプションとともにこのオプションが指定されている場合は、JAR ファイルの各署名者の証明書情報も出力されます。証明書情報には次のものが含まれます。 -.RS 3 -.TP 2 -o -署名者の公開鍵を証明する (.DSA ファイルに格納された) 証明書の種類の名前 -.TP 2 -o -証明書が X.509 証明書 (つまり、\f2java.security.cert.X509Certificate\fP のインスタンス) である場合は、署名者の識別名 -.RE -.LP -キーストアの確認も行われます。コマンド行でキーストアの値が指定されていない場合、デフォルトのキーストアファイルがあれば、検査されます。署名者の公開鍵の証明書がキーストア内のエントリと一致した場合は、次の情報も表示されます。 -.RS 3 +keytool(1) ġΥɥ .TP 2 o -署名者に該当するキーストアエントリの別名。 この別名は括弧で囲まれます。ただし、キーストアではなく JDK 1.1 のアイデンティティーデータベースに由来する署名者の場合は、括弧ではなく大括弧で囲まれます。 -.RE -.TP 3 -\-verbose -コマンド行でこのオプションが指定されている場合、\f3jarsigner\fP は「冗長」モードで動作し、JAR の署名または検証の進行状況に関する追加情報を出力します。 -.TP 3 -\-internalsf -以前は、JAR ファイルの署名時に生成された .DSA (署名ブロック) ファイルの中に、生成された .SF ファイル (署名ファイル) の完全なコピーが符号化された形で含まれていました。この動作は変更されました。この動作は変更になり、現在では、出力 JAR ファイル全体のサイズを小さくするために、デフォルトでは .SF ファイルが .DSA ファイルに含まれないようになっています。ただし、コマンド行で \f2\-internalsf\fP オプションを指定すると、以前と同じように動作します。\f3このオプションは、テストを行う場合には便利ですが、それ以外には使用しないでください。 このオプションを使用すると、有益な最適化が行われなくなります。\fP -.TP 3 -\-sectionsonly -コマンド行でこのオプションが指定されている場合、JAR ファイルの署名時に生成される .SF ファイル (署名ファイル) には、マニフェストファイル全体のハッシュを含むヘッダーは追加されません。この場合、.SF ファイルに含まれるのは、JAR ファイル内の各ソースファイルに関する情報およびハッシュだけです。 詳細は、「署名 (.SF) ファイル」を参照してください。 -.LP -デフォルトでは、最適化を行うために、マニフェストファイル全体のハッシュを含むヘッダーが追加されます。ヘッダーが存在する場合は、JAR ファイルの検証時に、まずヘッダー内のハッシュが、マニフェストファイル全体のハッシュと実際に一致するかどうかが確認されます。ハッシュが一致する場合、検証は次の手順に進みます。ハッシュが一致しない場合は、効率的には劣る方法を使って検証を行います。 具体的には、.SF ファイル内の各ソースファイル情報セクションのハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するかどうかを確認します。 -.LP -詳細は、「JAR ファイルの検証」を参照してください。 -.LP -\f3このオプションは、テストを行う場合には便利ですが、それ以外には使用しないでください。 このオプションを使用すると、有益な最適化が行われなくなります。\fP -.TP 3 -\-protected -\f2true\fP または \f2false\fP のいずれか。専用 PIN リーダーなどの保護された認証パスを介してパスワードを指定する必要がある場合には、この値に \f2true\fP を指定してください。 -.RE -.RS 3 -.TP 3 -\-provider provider\-class\-name -サービスプロバイダがセキュリティープロパティーファイル (\f2java.security\fP) のリストに入っていないときに、暗号化サービスプロバイダのマスタークラスファイルの名前を指定します。 -.LP -\f2\-providerArg\fP \f2ConfigFilePath\fP オプションと組み合わせて使用します。 keytool と jarsigner はプロバイダを動的にインストールします (ここで、\f2ConfigFilePath\fP はトークン設定ファイルへのパスです)。セキュリティープロパティーファイル内で Sun PKCS#11 プロバイダが設定されていない場合に PKCS#11 キーストアを一覧表示するコマンドの例を次に示します。 -.RS 3 - -.LP -.nf -\f3 -.fl -jarsigner \-keystore NONE \-storetype PKCS11 \\ -.fl - \-providerClass sun.security.pkcs11.SunPKCS11 \\ -.fl - \-providerArg /foo/bar/token.config \\ -.fl - \-list -.fl -\fP -.fi -.RE -.TP 3 -\-providerName providerName -\f2java.security\fP セキュリティープロパティーファイル内で 2 つ以上のプロバイダが設定されている場合、\f2\-providerName\fP オプションを使って特定のプロバイダインスタンスを選択できます。このオプションの引数は、プロバイダの名前です。 -.LP -Sun PKCS#11 プロバイダの場合、\f2providerName\fP は \f2SunPKCS11\-\fP\f2TokenName\fP という形式になります。 ここで「\f2TokenName\fP」は、プロバイダインスタンスが構成された名前の接尾辞です。 詳細は .na -\f2構成属性の表\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#ATTRSを参照してください。たとえば、以下のコマンドでは、名前接尾辞 \f2SmartCard\fP の PKCS#11 キーストアプロバイダインスタンスの内容をリストします。 -.RS 3 - -.LP -.nf -\f3 -.fl -jarsigner \-keystore NONE \-storetype PKCS11 \\ -.fl - \-providerName SunPKCS11\-SmartCard \\ -.fl - \-list -.fl -\fP -.fi -.RE -.TP 3 -\-Jjavaoption -指定された \f2javaoption\fP 文字列を Java インタプリタに直接渡します。(\f3jarsigner\fP は、実際には Java インタプリタに対する「ラッパー」です。このオプションには、空白を含めることはできません。このオプションは、実行環境またはメモリー使用を調整する場合に便利です。指定できるインタプリタオプションを一覧表示するには、コマンド行で \f2java \-h\fP または \f2java \-X\fP と入力してください。 -.LP -.TP 3 -\-tsa url -JAR ファイルの署名時にコマンド行に「\f2\-tsa http://example.tsa.url\fP」が表示される場合、署名のタイムスタンプが生成されます。URL \f2http://example.tsa.url\fP は、TSA (Time Stamping Authority) の場所を特定します。これは、\f2\-tsacert\fP オプションで検出された URL をオーバーライドします。\f2\-tsa\fP オプションでは、TSA の公開鍵証明書をキーストアに配置する必要はありません。 -.LP -タイムスタンプを生成するため、\f2jarsigner\fP は -.na -\f2RFC 3161\fP @ -.fi -http://www.ietf.org/rfc/rfc3161.txt で定義されている TSP (Time\-Stamp Protocol) を使用して TSA と通信します。成功すると、TSA から返されたタイムスタンプトークンは署名ブロックファイルの署名とともに保存されます。 -.LP -.TP 3 -\-tsacert alias -JAR ファイルの署名時にコマンド行に「\f2\-tsacert alias\fP」が表示される場合、署名のタイムスタンプが生成されます。\f2alias\fP は、キーストア内の現在有効な TSA の公開鍵証明書を特定します。エントリの証明書で、TSA の場所を特定する URL を含む Subject Information Access 拡張機能が確認されます。 -.LP -TSA の公開鍵証明書は、\f2\-tsacert\fP を使った場合、キーストアに配置されている必要があります。 -.LP -.TP 3 -\-altsigner class -代替署名機構を使用することを指定します。完全修飾クラス名は、\f2com.sun.jarsigner.ContentSigner\fP の abstract クラスを拡張するクラスファイルを特定します。このクラスファイルへのパスは、\f2\-altsignerpath\fP オプションによって定義されます。\f2\-altsigner\fP オプションを使用した場合、\f2jarsigner\fP は指定されたクラスが提供する署名機構を使用します。または、\f2jarsigner\fP はデフォルトの署名機構を使用します。 -.LP -たとえば、\f2com.sun.sun.jarsigner.AuthSigner\fP というクラスが提供する署名機構を使用するには、\f2jarsigner\fP オプション「\f2\-altsigner com.sun.jarsigner.AuthSigner\fP」を使用します。 -.LP -.TP 3 -\-altsignerpath classpathlist -クラスファイル (クラスファイル名は上記のように \f2\-altsigner\fP オプションで指定される) およびそれが依存する JAR ファイルへのパスを指定します。クラスファイルが JAR ファイル内にある場合、以下の例のように JAR ファイルへのパスが指定されます。 -.LP -絶対パスまたは現在のディレクトリからの相対パスを指定できます。\f2classpathlist\fP には、複数のパスまたは JAR ファイルを含めることができます。 その場合、各パスまたは JAR ファイルを、Solaris の場合にはコロン (\f2:\fP)、Windows の場合にはセミコロン (\f2;\fP) で区切ります。目的のクラスがすでに検索パス内にある場合は、このオプションは不要です。 -.LP -クラスファイルを含む、JAR ファイルへのパスを指定する例を示します。 -.RS 3 - -.LP -.LP -\f2\-altsignerpath /home/user/lib/authsigner.jar\fP -.LP -.RE -.LP -JAR ファイル名が含まれていることに注意してください。 -.LP -クラスファイルを含む JAR ファイルへのパスを指定する例を示します。 -.RS 3 -.LP -\f2\-altsignerpath /home/user/classes/com/sun/tools/jarsigner/\fP -.LP -.RE -.LP -JAR ファイル名は含まれていないことに留意してください。 -.RE -.SH "例" -.LP - -.LP -.SS -JAR ファイルの署名 -.LP -.RS 3 - -.LP -.LP -bundle.jar という名前の JAR ファイルがあるとします。 このファイルに、キーストアの別名が jane であるユーザーの非公開鍵を使って、署名を付けるとします。キーストアは、mystore という名前で、C ドライブの working ディレクトリにあり、キーストアのパスワードは mypass、\f2jane\fP の非公開鍵のパスワードは j638klm とします。この場合、次のコマンドを実行すると、JAR ファイルに署名を付けて sbundle.jar という署名付き JAR ファイルを作成できます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-storepass myspass -.fl - \-keypass j638klm \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -上のコマンドでは \f2\-sigfile\fP オプションが指定されていないため、署名付き JAR ファイルに格納される .SF ファイルと .DSA ファイルの名前は、別名からデフォルト名がつけられます。つまり、\f2JANE.SF\fP と \f2JANE.DSA\fP になります。 -.LP -.LP -ストアのパスワードと非公開鍵のパスワードをあとで入力する場合は、上のコマンドを短縮して次のように入力できます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore -.fl - \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -デフォルトのキーストア (ホームディレクトリ内の .keystore という名前のキーストア) を使用する場合は、次に示すように、キーストアの指定を省略できます。 -.LP -.nf -\f3 -.fl - jarsigner \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -また、署名付き JAR ファイルで入力 JAR ファイル (\f2bundle.jar\fP) を上書きする場合は、\f2\-signedjar\fP オプションの指定も省略できます。 -.LP -.nf -\f3 -.fl - jarsigner bundle.jar jane -.fl -\fP +\f4jarsigner\fP\f2 ġλˤĤƤϡ\fP @ .fi -.RE - -.LP -.SS -署名付き JAR ファイルの検証 -.LP -.RS 3 - -.LP -.LP -次に示すのは、署名付き JAR ファイルを検証し、署名が有効で JAR ファイルが改変されていないことを確認するためのコマンド例です。 -.LP -.nf -\f3 -.fl - jarsigner \-verify sbundle.jar -.fl -\fP -.fi - -.LP -.LP -検証が成功すると、次のようなメッセージが表示されます。 -.LP -.nf -\f3 -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -というメッセージが表示されます。検証が成功しなかった場合は、エラーメッセージが表示されます。 -.LP -.LP -\f2\-verbose\fP オプションを使うと、より多くの情報が表示されます。次に示すのは、\f2\-verbose\fP オプションを指定した \f3jarsigner\fP の実行例とその出力結果です。 -.LP -.nf -\f3 -.fl - jarsigner \-verify \-verbose sbundle.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class -.fl - smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP +http://download.oracle.com/javase/tutorial/index.html +.na +\f2Java 塼ȥꥢ\fP\f4\fP @ .fi - -.LP -.SS -証明書情報を使った検証 -.LP -.LP -検証時に、\f2\-verify\fP と \f2\-verbose\fP オプションに加えて \f2\-certs\fP オプションを指定した場合は、JAR ファイル内の各署名者の証明書情報も出力されます。 これには、証明書のタイプ、署名者の識別名情報 (X.509 証明書の場合)、および JAR ファイルの公開鍵の証明書がキーストアエントリの公開鍵の証明書と一致する場合には、括弧で囲まれた署名者のキーストア別名が含まれます。次に例を示します。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-verify \-verbose \-certs myTest.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - 208 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.SF -.fl - 1087 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.DSA -.fl - smk 2752 Fri Sep 26 16:12:30 PDT 1997 Tst.class -.fl - -.fl - X.509, CN=Test Group, OU=Java Software, O=Sun Microsystems, L=CUP, S=CA, C=US (javatest) -.fl - X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -署名者の証明書が X.509 証明書でない場合は、識別名情報は表示されません。その場合には、証明書のタイプと別名だけが表示されます。たとえば、証明書が PGP 証明書で、別名が bob の場合は、次のように表示されます。 -.LP -.nf -\f3 -.fl - PGP, (bob) -.fl -\fP -.fi - -.LP -.SS -アイデンティティーデータベースの署名者を含む JAR ファイルの検証 -.LP -.LP -JAR ファイルが、JDK 1.1 の \f3javakey\fP ツールを使って署名されている場合、署名者はアイデンティティーデータベース内の別名です。 この場合、検証の出力には i という記号が含まれます。JAR ファイルが、アイデンティティーデータベース内の別名とキーストア内の別名の両方によって署名されている場合は、k と i の両方が表示されます。 -.LP -.LP -\f2\-certs\fP オプションを指定した場合、キーストアの別名は括弧で囲まれるのに対し、アイデンティティーデータベース内の別名は角括弧で囲まれて表示されます。例を示します。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-verify \-verbose \-certs writeFile.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - 199 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.SF -.fl - 1013 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.DSA -.fl - smki 2752 Fri Sep 26 16:12:30 PDT 1997 writeFile.html -.fl - -.fl - X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) -.fl - X.509, CN=Duke, OU=Java Software, O=Sun, L=cup, S=ca, C=us [duke] -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - i = 1 つ以上の証明書がアイデンティティースコープで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -別名 duke は角括弧で囲まれているので、この別名はキーストアの別名ではなく、アイデンティティーデータベースの別名です。 -.LP -.RE -.SH "関連項目" -.LP - -.LP -.RS 3 -.TP 2 -o -jar(1) ツールのドキュメント -.TP 2 -o -keytool(1) ツールのドキュメント -.TP 2 -o -\f3jarsigner\fP ツールの使用例については、 -.na -\f4「Java Tutorial」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/index.htmlの -.na -\f4「Security」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/security/index.htmlを参照 +http://download.oracle.com/javase/tutorial/index.htmlSecurity\f3򻲾\fP .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/java.1 --- a/jdk/src/linux/doc/man/ja/java.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/java.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,29 +19,29 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH java 1 "02 Jun 2010" +.TH java 1 "14 Apr 2011" .LP -.SH "名前" -java \- Java アプリケーション起動ツール +.SH "̾" +java \- Java ץꥱưġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" +.SH "" .LP .nf \f3 @@ -54,88 +54,78 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 class -呼び出されるクラスの名前 +ƤӽФ륯饹̾ .TP 3 file.jar -呼び出される JAR ファイルの名前。必ず \f2\-jar\fP とともに使用する +ƤӽФ JAR ե̾ɬ \f2\-jar\fP ȤȤ˻Ѥ .TP 3 argument -\f3main\fP 関数に渡される引数 +\f3main\fP ؿϤ .RE .LP -.RE -.SH " 説明" -.LP - +.SH "" .LP .LP -\f3java\fP ツールは、Java アプリケーションを起動します。java ツールは、Java Runtime Environment を起動したあと、指定されたクラスをロードし、そのクラスの \f3main\fP メソッドを呼び出すことにより、Java アプリケーションを起動します。 +\f3java\fP ġϡJava ץꥱưޤjava ġϡJava Runtime Environment ưȡꤵ줿饹ɤΥ饹 \f3main\fP ᥽åɤƤӽФȤˤꡢJava ץꥱưޤ .LP .LP -このメソッドは、public および static として宣言する必要があります。 また、値を返してはいけません。 さらに、\f2String\fP 配列をパラメータとして指定できなければなりません。メソッドの宣言は、次のようになっていなければなりません。 +Υ᥽åɤϡpublic static Ȥɬפޤ ޤ֤ͤƤϤޤ ˡ \f2String\fP ѥ᡼ȤƻǤʤФʤޤ󡣥᥽åɤϡΤ褦ˤʤäƤʤФʤޤ .LP .nf \f3 .fl - public static void main(String args[]) +public static void main(String args[]) .fl \fP .fi .LP .LP -デフォルトでは、コマンド行オプション以外の最初の引数が、呼び出されるクラスの名前になります。この名前には、完全指定のクラス名を使用する必要があります。\f3\-jar\fP オプションを指定した場合、コマンド行オプション以外の最初の引数が、アプリケーションのクラスファイルとリソースファイルを含む \f3JAR\fP アーカイブの名前になります。 この場合、マニフェストの \f3Main\-Class\fP ヘッダーで指定されたクラスが起動クラスになります。 +ǥեȤǤϡޥɹԥץʳκǽΰƤӽФ륯饹̾ˤʤޤ̾ˤϡΥ饹̾Ѥɬפޤ\f3\-jar\fP ץꤷ硢ޥɹԥץʳκǽΰץꥱΥ饹եȥ꥽եޤ \f3JAR\fP ֤̾ˤʤޤξ硢ޥ˥եȤ \f3Main\-Class\fP إåǻꤵ줿饹ư饹ˤʤޤ .LP .LP -Java Runtime は、ブートストラップクラスパス、インストール型拡張機能、およびユーザークラスパスの 3 箇所から起動クラスと他の使用されているクラスを検索します。 +Java Runtime ϡ֡ȥȥåץ饹ѥ󥹥ȡ뷿ĥǽӥ桼饹ѥ 3 ս꤫鵯ư饹¾λѤƤ륯饹򸡺ޤ .LP .LP -クラス名または JAR ファイル名のあとにある、コマンド行オプション以外の引数は、\f3main\fP 関数に渡されます。 +饹̾ޤ JAR ե̾ΤȤˤ롢ޥɹԥץʳΰϡ\f3main\fP ؿϤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -起動ツールには、現在の実行環境および将来のリリースでサポートされる標準オプションがあります。また、仮想マシンの現在の実装では、非標準オプションのセットもサポートされます。 これは、将来のリリースで変更される可能性があります。 +ưġˤϡߤμ¹ԴĶӾΥ꡼ǥݡȤɸ४ץ󤬤ޤޤۥޥθߤμǤϡɸ४ץΥåȤ⥵ݡȤޤϡΥ꡼ѹǽޤ .LP -.SH "標準オプション" -.LP - +.SH "ɸ४ץ" .LP .RS 3 .TP 3 \-client .LP -Java HotSpot Client VM を選択します。64 ビット対応 JDK は現時点では、このオプションを無視し、代わりに Java Hotspot Server VM を使用します。 +Java HotSpot Client VM 򤷤ޤ64 ӥåб JDK ϸǤϡΥץ̵뤷 Java Hotspot Server VM Ѥޤ .LP -デフォルトの VM の選択については、 +ǥեȤ VM ˤĤƤϡ .na -\f2「サーバー \- クラスマシンの検出」\fP @ +\f2֥С \- 饹ޥθС\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.html򻲾ȤƤ .TP 3 \-server .LP -Java HotSpot Server VM を選択します。64 ビット対応 JDK 上では、サポートされるのは Java Hotspot Server VM だけであるため、\-server オプションが暗黙的に選択されます。 +Java HotSpot Server VM 򤷤ޤ64 ӥåб JDK ǤϡݡȤΤ Java Hotspot Server VM Ǥ뤿ᡢ\-server ץ󤬰Ū򤵤ޤ .LP -デフォルトの VM の選択については、 +ǥեȤ VM ˤĤƤϡ .na -\f2「サーバー \- クラスマシンの検出」\fP @ +\f2֥С \- 饹ޥθС\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.html򻲾ȤƤ .TP 3 \-agentlib:libname[=options] -ネイティブエージェントライブラリ \f2libname\fP をロードします。 たとえば次のように指定します。 +ͥƥ֥ȥ饤֥ \f2libname\fP ɤޤȤмΤ褦˻ꤷޤ .LP \-agentlib:hprof .LP @@ -143,57 +133,57 @@ .LP \-agentlib:hprof=help .LP -詳細については、 +ܺ٤ˤĤƤϡ .na -\f2「JVMTI エージェントのコマンド行オプション」\fP @ +\f2JVMTI ȤΥޥɹԥץ\fP @ .fi -http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。 +http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#starting򻲾ȤƤ .TP 3 \-agentpath:pathname[=options] -フルパス名を使用して、ネーティブエージェントライブラリをロードします。詳細については、 +եѥ̾Ѥơ͡ƥ֥ȥ饤֥ɤޤܺ٤ˤĤƤϡ .na -\f2「JVMTI エージェントのコマンド行オプション」\fP @ +\f2JVMTI ȤΥޥɹԥץ\fP @ .fi -http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。 +http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#starting򻲾ȤƤ .TP 3 \-classpath classpath .TP 3 \-cp classpath -クラスファイルを検索するディレクトリ、JAR アーカイブ、および ZIP アーカイブのリストを指定します。クラスパスの各エントリはコロン (\f3:\fP) で区切ります。\f3\-classpath\fP または \f3\-cp\fP を指定すると、このオプションの値によって \f3CLASSPATH\fP 環境変数の設定がオーバーライドされます。 +饹ե򸡺ǥ쥯ȥꡢJAR ֡ ZIP ֤ΥꥹȤꤷޤ饹ѥγƥȥϥ (\f3:\fP) Ƕڤޤ\f3\-classpath\fP ޤ \f3\-cp\fP ꤹȡΥץͤˤä \f3CLASSPATH\fP Ķѿ꤬С饤ɤޤ .LP -\f3\-classpath\fP も \f3\-cp\fP も使用されず、\f3CLASSPATH\fP も設定されていない場合、ユーザークラスパスは現在のディレクトリ (\f4.\fP) になります。 +\f3\-classpath\fP \f3\-cp\fP Ѥ줺\f3CLASSPATH\fP ꤵƤʤ硢桼饹ѥϸߤΥǥ쥯ȥ (\f4.\fP) ˤʤޤ .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡ \f2.jar\fP ޤ \f2.JAR\fP ĥҤ˻ĥǥ쥯ȥΤ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤̤ȤʤޤΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ* \f2饹ѥȥϡ\fP ȥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .LP -クラスパスの詳細は、 +饹ѥξܺ٤ϡ .na -\f2「クラスパスの設定」\fP @ +\f2֥饹ѥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpath򻲾ȤƤ .TP 3 \-Dproperty=value -システムプロパティーの値を設定します。 +ƥץѥƥͤꤷޤ .TP 3 \-d32 .TP 3 \-d64 -それぞれ 32 ビット環境、64 ビット環境でプログラムを実行することを要求します。要求された環境がインストールされていないかサポートされていない場合は、エラーが報告されます。 +줾 32 ӥåȴĶ64 ӥåȴĶǥץ¹Ԥ뤳Ȥ׵ᤷޤ׵ᤵ줿Ķ󥹥ȡ뤵ƤʤݡȤƤʤϡ顼𤵤ޤ .LP -現在のところ、Java HotSpot Server VM だけが 64 ビットの操作をサポートしており、\-d64 を使用すると \-server オプションが暗黙的に有効になります。したがって、\-d64 使用時には「\-client」オプションは無視されます。この仕様は、将来のリリースでは変更になる可能性があります。 +ߤΤȤJava HotSpot Server VM 64 ӥåȤ򥵥ݡȤƤꡢ\-server ץѤϡ\-d64 ˻Ѥɬפޤäơ\-d64 ѻˤϡ\-clientץץ̵뤵ޤλͤϡΥ꡼Ǥѹˤʤǽޤ .LP -\f3\-d32\fP と \f3\-d64\fP がどちらも指定されていない場合は、デフォルトとして、32 ビット環境で実行されます。この仕様は、将来のリリースでは変更になる可能性があります。 +\f3\-d32\fP \f3\-d64\fP ɤꤵƤʤϡǥեȤȤơ32 ӥåȴĶǼ¹ԤޤλͤϡΥ꡼Ǥѹˤʤǽޤ .TP 3 -\-enableassertions[:"..."| : ] +\-enableassertions[:"..." | : ] .TP 3 -\-ea[:"..."| : ] -アサーションを有効にします。アサーションは、デフォルトでは無効になっています。 +\-ea[:"..." | : ] +ͭˤޤϡǥեȤǤ̵ˤʤäƤޤ .LP -引数なしの \f3enableassertions\fP または \f3\-ea\fP を指定すると、アサーションが有効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが有効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが有効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが有効になります。 +ʤ \f3enableassertions\fP ޤ \f3\-ea\fP ꤹȡͭˤʤޤ\f2...\fPפǽ 1 ĻꤹȡꤷѥåȤΥ֥ѥåǥͭˤʤޤȤơ\f2...\fPפꤹȡߤκȥǥ쥯ȥˤ̾Τʤѥåǥͭˤʤޤ\f2...\fPפǽʤ 1 Ļꤹȡꤷ饹ǥͭˤʤޤ .LP -単一コマンド行にこれらのスイッチのインスタンスを複数指定した場合は、指定したスイッチが順番に処理されてからクラスがロードされます。したがって、たとえば、パッケージ \f2com.wombat.fruitbat\fP (サブパッケージを含む) 内でのみアサーションを有効にしてプログラムを実行するには、次のようなコマンドを使用します。 +ñ쥳ޥɹԤˤΥåΥ󥹥󥹤ʣꤷϡꤷå֤˽Ƥ饯饹ɤޤäơȤСѥå \f2com.wombat.fruitbat\fP (֥ѥåޤ) ǤΤߥͭˤƥץ¹ԤˤϡΤ褦ʥޥɤѤޤ .nf \f3 .fl @@ -202,151 +192,156 @@ \fP .fi .LP -\f3\-enableassertions\fP および \f3\-ea\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。 システムクラスにはクラスローダはありません。ただし、この規則には例外が 1 つあります。それは、引数なしでこのスイッチを指定すると、その指定はシステムクラスには適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを有効にするために、別のスイッチが用意されています。 このあとの \f3\-enablesystemassertions\fP を参照してください。 +\f3\-enableassertions\fP \f3\-ea\fP åϡ٤ƤΥ饹ӥƥ९饹ŬѤޤƥ९饹ˤϥ饹Ϥޤ󡣤ε§ˤ 1 㳰ޤϡʤηǤΥåꤹȡλ꤬ƥŬѤʤȤȤǤ㳰ѤСƥ९饹٤ƤΥ饹ǥñͭˤ뤳ȤǤޤ٤ƤΥƥ९饹ǥͭˤ뤿ˡ̤ΥåѰդƤޤΤȤ \f3\-enablesystemassertions\fP 򻲾ȤƤ .TP 3 -\-disableassertions[:"..."| : ] +\-disableassertions[:"..." | : ] .TP 3 -\-da[:"..."| : ] -アサーションを無効にします。これはデフォルトの設定です。 +\-da[:"..." | : ] +̵ˤޤ줬ǥեȤǤ .LP -引数なしの \f3disableassertions\fP または \f3\-da\fP を指定すると、アサーションが無効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが無効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが無効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが無効になります。 +ʤ \f3disableassertions\fP ޤ \f3\-da\fP ꤹȡ̵ˤʤޤ\f2...\fPפǽ 1 ĻꤹȡꤷѥåȤΥ֥ѥåǥ̵ˤʤޤȤơ\f2...\fPפꤹȡߤκȥǥ쥯ȥˤ̾Τʤѥåǥ̵ˤʤޤ\f2...\fPפǽʤ 1 Ļꤹȡꤷ饹ǥ̵ˤʤޤ .LP -パッケージ \f2com.wombat.fruitbat\fP 内ではアサーションを有効にし、クラス \f2com.wombat.fruitbat.Brickbat\fP 内ではアサーションを無効にしたうえで、プログラムを実行するには、次のようなコマンドを使用します。 +ѥå \f2com.wombat.fruitbat\fP Ǥϥͭˤ饹 \f2com.wombat.fruitbat.Brickbat\fP Ǥϥ̵ˤǡץ¹ԤˤϡΤ褦ʥޥɤѤޤ .nf \f3 .fl -java \-ea:com.wombat.fruitbat... \-da:com.wombat.fruitbat.Brickbat
+java \-ea:com.wombat.fruitbat... \-da:com.wombat.fruitbat.Brickbat \fP\f4
\fP\f3 .fl \fP .fi .LP -\f3\-disableassertions\fP および \f3\-da\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。 システムクラスにはクラスローダはありません。ただし、この規則には例外が 1 つあります。それは、引数なしでこのスイッチを指定すると、その指定はシステムクラスには適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを無効にするために、別のスイッチが用意されています。 このあとの \f3\-disablesystemassertions\fP を参照してください。 +\f3\-disableassertions\fP \f3\-da\fP åϡ٤ƤΥ饹ӥƥ९饹ŬѤޤƥ९饹ˤϥ饹Ϥޤ󡣤ε§ˤ 1 㳰ޤϡʤηǤΥåꤹȡλ꤬ƥŬѤʤȤȤǤ㳰ѤСƥ९饹٤ƤΥ饹ǥñͭˤ뤳ȤǤޤ٤ƤΥƥ९饹ǥ̵ˤ뤿ˡ̤ΥåѰդƤޤΤȤ \f3\-disablesystemassertions\fP 򻲾ȤƤ .TP 3 \-enablesystemassertions .TP 3 \-esa -すべてのシステムクラス内でアサーションを有効にします。 つまり、システムクラスについてアサーションのデフォルトステータスを \f2true\fP に設定します。 +٤ƤΥƥ९饹ǥͭˤޤĤޤꡢƥ९饹ˤĤƥΥǥեȥơ \f2true\fP ꤷޤ .TP 3 \-disablesystemassertions .TP 3 \-dsa -すべてのシステムクラス内でアサーションを無効にします。 -.LP +٤ƤΥƥ९饹ǥ̵ˤޤ .TP 3 \-jar -JAR ファイルにカプセル化されたプログラムを実行します。最初の引数は、起動クラスの名前ではなく、JAR ファイルの名前にします。このオプションが機能するには、JAR ファイルのマニフェストに\f3「Main\-Class:\fP\f4classname\fP\f3」\fPという形式の行を指定する必要があります。\f2classname\fP には、アプリケーションの開始位置として機能する \f2public\ static\ void\ main(String[]\ args)\fP メソッドを含むクラスを指定します。JAR ファイルとそのマニフェストについては、jar(1)と、 +JAR ե˥ץ벽줿ץ¹Ԥޤǽΰϡư饹̾ǤϤʤJAR ե̾ˤޤΥץ󤬵ǽˤϡJAR եΥޥ˥եȤ\f3Main\-Class:\fP\f4classname\fP\f3\fPȤιԤꤹɬפޤ\f2classname\fP ˤϡץꥱγϰ֤ȤƵǽ \f2public\ static\ void\ main(String[]\ args)\fP ᥽åɤޤ९饹ꤷޤJAR եȤΥޥ˥եȤˤĤƤϡjar(1)ȡ .na -\f2Java チュートリアル\fP @ +\f2Java 塼ȥꥢ\fP @ .fi -http://java.sun.com/docs/books/tutorial/jarの「Trail: Jar Files」を参照してください。 +http://download.oracle.com/javase/tutorial/deployment/jarΡTrail: Jar Filesפ򻲾ȤƤ .LP -このオプションを使用すると、指定した JAR ファイルがすべてのユーザークラスのソースになり、ユーザークラスパスのほかの設定は無視されます。 +ΥץѤȡꤷ JAR ե뤬٤ƤΥ桼饹Υˤʤꡢ桼饹ѥΤ̵ۤ뤵ޤ .LP -Solaris 8 では、「java \-jar」オプションで実行できる JAR ファイルは、実行権限のセットを保持しています。 このため、「java \-jar」を使用しないで実行することも可能です。 +Solaris 8 Ǥϡjava \-jarץץǼ¹ԤǤ JAR եϡ¹Ը¤ΥåȤݻƤޤΤᡢjava \-jarפѤʤǼ¹Ԥ뤳ȤǽǤJava Archive (JAR) ե .na -\f2Java Archive (JAR) ファイル\fP @ + @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/index.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jar/index.html .TP 3 \-javaagent:jarpath[=options] -Java プログラミング言語エージェントをロードします。 +Java ץߥ󥰸쥨Ȥɤޤ java.lang.instrument 򻲾ȤƤ .na -\f2java.lang.instrument\fP @ + @ .fi -http://java.sun.com/javase/6/docs/api/java/lang/instrument/package\-summary.html を参照してください。 +http://java.sun.com/javase/6/docs/api/java/lang/instrument/package\-summary.html +.TP 3 +\-jre\-restrict\-search +桼ץ饤١Ȥ JRE С󸡺˴ޤޤ +.TP 3 +\-no\-jre\-restrict\-search +桼ץ饤١Ȥ JRE С󸡺ޤ .TP 3 \-verbose .TP 3 \-verbose:class -クラスがロードされるたびにクラスに関する情報を表示します。 +饹ɤ뤿Ӥ˥饹˴ؤɽޤ .TP 3 \-verbose:gc -ガベージコレクションイベントが発生するたびに報告します。 +١쥯󥤥٥Ȥȯ뤿Ӥ𤷤ޤ .TP 3 \-verbose:jni -ネイティブメソッドの使用およびその他の Java Native Interface (JNI) アクティビティーに関する情報を報告します。 +ͥƥ֥᥽åɤλѤӤ¾ Java Native Interface (JNI) ƥӥƥ˴ؤ𤷤ޤ .TP 3 \-version -バージョン情報を表示して終了します。 +Сɽƽλޤ .TP 3 \-version:release -コマンド行に指定されたクラスまたは JAR ファイルが、\f2release\fP で指定されたバージョンを必要としていることを示します。起動された java コマンドのバージョンがこの指定内容を満たさず、かつ適切な実装がシステム上で見つかった場合には、その適切な実装が使用されます。 +ޥɹԤ˻ꤵ줿饹ޤ JAR ե뤬\f2release\fP ǻꤵ줿СɬפȤƤ뤳Ȥ򼨤ޤư줿 java ޥɤΥС󤬤λƤŬڤʼƥǸĤäˤϡŬڤʼѤޤ .LP -\f2release\fP では、特定のバージョンを指定できるだけでなく、バージョン文字列と呼ばれるバージョンのリストを指定することもできます。バージョン文字列は、いくつかのバージョン範囲を空白で区切った形式の順序付きリストです。バージョン範囲は、バージョン ID、バージョン ID の後にアスタリスク (*) を付加したもの、バージョン ID の後にプラス記号 (+) を付加したもの、2 つのバージョン範囲をアンパサンド (&) で結合したもの、のいずれかになります。アスタリスクはプレフィックス一致を、プラス記号は指定されたバージョン以上を、アンパサンドは 2 つのバージョン範囲の論理積を、それぞれ意味します。例を示します。 +\f2release\fP ǤϡΥСǤǤʤСʸȸƤФСΥꥹȤꤹ뤳ȤǤޤСʸϡĤΥСϰϤǶڤäνդꥹȤǤСϰϤϡС IDС ID θ˥ꥹ (*) ղäΡС ID θ˥ץ饹 (+) ղäΡ2 ĤΥСϰϤ򥢥ѥ (&) Ƿ礷ΡΤ줫ˤʤޤꥹϥץեåפ򡢥ץ饹ϻꤵ줿Сʾ򡢥ѥɤ 2 ĤΥСϰϤѤ򡢤줾̣ޤ򼨤ޤ .nf \f3 .fl -\-version:"1.5.0_04 1.5*&1.5.1_02+" +\-version:"1.6.0_13 1.6*&1.6.0_10+" .fl \fP .fi -上記の意味は、バージョン 1.5.0_04、または 1.5.1_02 以上で 1.5 をバージョン ID プレフィックスとして持つバージョン、のいずれかをクラスまたは JAR ファイルが必要とする、ということです。 バージョン文字列の厳密な構文や定義については、「Java Network Launching Protocol & API Specification (JSR\-56)」の「Appendix A」を参照してください。 +嵭ΰ̣ϡС 1.6.0_131.6 С ID ץեå˻ 1.6.0_10 ʾΥС󡢤Τ줫򥯥饹ޤ JAR ե뤬ɬפȤƤ롢ȤȤǤСʸθ̩ʹʸˤĤƤϡJava Network Launching Protocol & API Specification (JSR\-56)פΡAppendix Aפ򻲾ȤƤ .LP -JAR ファイルの場合は通常、バージョン要件をコマンド行に指定するよりも、JAR ファイルのマニフェスト内に指定することが推奨されています。 +JAR եξ̾С׷򥳥ޥɹԤ˻ꤹ⡢JAR եΥޥ˥ե˻ꤹ뤳Ȥ侩Ƥޤ .LP -このオプションの使用に関する重要なポリシー情報については、後述の「注」節を参照してください。 +ΥץλѤ˴ؤפʥݥꥷˤĤƤϡҤΡ򻲾ȤƤ .TP 3 \-showversion -バージョン情報を表示して続行します。 +Сɽ³Ԥޤ .TP 3 \-? .TP 3 \-help -使用法を表示して終了します。 +ˡɽƽλޤ +.TP 3 +\-splash:imagepath +\f2imagepath\fP ˻ꤵ줿ޤॹץå̤ɽޤ .TP 3 \-X -非標準オプションに関する情報を表示して終了します。 +ɸ४ץ˴ؤɽƽλޤ .RE .LP .SS -非標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Xint -インタプリタ専用モードで動作します。ネイティブコードへのコンパイルは無効になり、すべてのバイトコードがインタプリタによって実行されます。Java HotSpot VM に対応するコンパイラが提供するパフォーマンス上の利点は、このモードでは実現されません。 +󥿥ץ꥿ѥ⡼ɤưޤͥƥ֥ɤؤΥѥ̵ˤʤꡢ٤ƤΥХȥɤ󥿥ץ꥿ˤäƼ¹ԤޤJava HotSpot VM б륳ѥ餬󶡤ѥեޥ󥹾ϡΥ⡼ɤǤϼ¸ޤ .TP 3 \-Xbatch -バックグラウンドコンパイルを無効にします。通常、VM では、バックグラウンドコンパイルが終了するまで、メソッドをバックグラウンドタスクとしてコンパイルし、インタプリタモードでメソッドを実行します。\f2\-Xbatch\fP フラグを指定すると、バックグラウンドコンパイルが無効になり、すべてのメソッドのコンパイルが完了するまでフォアグラウンドタスクとして処理されます。 +Хå饦ɥѥ̵ˤޤ̾VM ǤϡХå饦ɥѥ뤬λޤǡ᥽åɤХå饦ɥȤƥѥ뤷󥿥ץ꥿⡼ɤǥ᥽åɤ¹Ԥޤ\f2\-Xbatch\fP ե饰ꤹȡХå饦ɥѥ뤬̵ˤʤꡢ٤ƤΥ᥽åɤΥѥ뤬λޤǥե饦ɥȤƽޤ .TP 3 \-Xbootclasspath:bootclasspath -ブートクラスファイルを探すディレクトリ、JAR アーカイブ、および ZIP アーカイブをコロンで区切ったリストで指定します。指定したパスに存在するブートクラスファイルが、JDK に含まれるブートクラスファイルの代わりに使用されます。\f2注: rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP +֡ȥ饹եõǥ쥯ȥꡢJAR ֡ ZIP ֤򥳥ǶڤäꥹȤǻꤷޤꤷѥ¸ߤ֡ȥ饹ե뤬Java ץåȥե JDK ˴ޤޤ֡ȥ饹ե˻Ѥޤ\f2: rt.jar Υ饹򥪡С饤ɤŪǤΥץѤ륢ץꥱϡƥ֤ʤǤJava Runtime Environment Хʥꥳɥ饤󥹰ȿˤʤޤ\fP .TP 3 \-Xbootclasspath/a:path -ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。 パスはデフォルトのブートストラップクラスパスのあとに追加されます。 +ǥ쥯ȥꡢJAR ֡ ZIP ֤Υѥ򥳥ǶڤäƻꤷޤѥϥǥեȤΥ֡ȥȥåץ饹ѥΤȤɲäޤ .TP 3 \-Xbootclasspath/p:path -ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。 パスはデフォルトのブートストラップクラスパスの前に追加されます。\f2注 rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP +ǥ쥯ȥꡢJAR ֡ ZIP ֤Υѥ򥳥ǶڤäƻꤷޤѥϥǥեȤΥ֡ȥȥåץ饹ѥɲäޤ\f2: rt.jar Υ饹򥪡С饤ɤŪǤΥץѤ륢ץꥱϡƥ֤ʤǤJava Runtime Environment Хʥꥳɥ饤󥹰ȿˤʤޤ\fP .TP 3 \-Xcheck:jni -Java Native Interface (JNI) 機能に対して追加チェックを行います。具体的には、Java 仮想マシンは JNI 要求を処理する前に、JNI 関数に渡されるパラメータと、実行環境のデータを検証します。無効なデータが見つかった場合は、ネイティブコードに問題があることを示しているため、Java 仮想マシンは致命的エラーを発生して終了します。このオプションを使用すると、パフォーマンス低下が予想されます。 +Java Native Interface (JNI) ǽФɲååԤޤŪˤϡJava ۥޥ JNI ׵ˡJNI ؿϤѥ᡼ȡ¹ԴĶΥǡ򸡾ڤޤ̵ʥǡĤäϡͥƥ֥ɤ꤬뤳Ȥ򼨤Ƥ뤿ᡢJava ۥޥ̿Ū顼ȯƽλޤΥץѤȡѥեޥ㲼ͽۤޤ .TP 3 \-Xfuture -クラスとファイルの形式を厳密にチェックします。下位互換性を保つため、JDK の仮想マシンが実行するデフォルトの形式チェックは、JDK ソフトウェアのバージョン 1.1.x が実行するチェックと同程度の厳密さになっています。\f3\-Xfuture\fP フラグを指定すると、クラスファイル形式の仕様への準拠を強化するためのより厳密なチェックが有効になります。Java アプリケーション起動ツールの将来のリリースでは、より厳密なチェックがデフォルトになるため、新しいコードを開発するときにはこのフラグを使用することをお勧めします。 +饹ȥեη̩˥åޤ̸ߴݤĤᡢJDK βۥޥ󤬼¹ԤǥեȤηåϡJDK եȥΥС 1.1.x ¹ԤåƱ٤θ̩ˤʤäƤޤ\f3\-Xfuture\fP ե饰ꤹȡ饹եλͤؤν򶯲뤿Τ긷̩ʥåͭˤʤޤJava ץꥱưġξΥ꡼Ǥϡ긷̩ʥåǥեȤˤʤ뤿ᡢɤȯȤˤϤΥե饰Ѥ뤳Ȥ򤪴ᤷޤ .TP 3 \-Xnoclassgc -クラスのガベージコレクションを無効にします。このオプションを使用すると、ロード済みクラスからメモリーが回復されることがなくなるため、全体的なメモリー使用量が増大します。この場合、アプリケーションによっては OutOfMemoryError がスローされる可能性があります。 +饹Υ١쥯̵ˤޤΥץѤȡɺѤߥ饹꡼뤳Ȥʤʤ뤿ᡢŪʥ꡼̤礷ޤξ硢ץꥱˤäƤ OutOfMemoryError ǽޤ .TP 3 \-Xincgc -インクリメンタルガーベジコレクタを有効にします。インクリメンタルガベージコレクタは、デフォルトでは無効になっています。 有効にすると、プログラムの実行中にガベージコレクションによる一時停止が発生しなくなります。インクリメンタルガベージコレクタは、プログラムと同時に実行することがあり、この場合、プログラムの利用できるプロセッサ能力が低下します。 +󥯥󥿥륬٥쥯ͭˤޤ󥯥󥿥륬١쥯ϡǥեȤǤ̵ˤʤäƤޤ ͭˤȡץμ¹˥١쥯ˤߤȯʤʤޤ󥯥󥿥륬١쥯ϡץƱ˼¹Ԥ뤳Ȥꡢξ硢ץѤǤץåǽϤ㲼ޤ .TP 3 \-Xloggc:file -\-verbose:gc と同様にガベージコレクションイベントが発生するたびに報告しますが、そのデータを \f2file\fP に記録します。\f2\-verbose:gc\fP を指定したときに報告される情報のほかに、報告される各イベントの先頭に、最初のガベージコレクションイベントからの経過時間 (秒単位) が付け加えられます。 +\-verbose:gc Ʊͤ˥١쥯󥤥٥Ȥȯ뤿Ӥ𤷤ޤΥǡ \f2file\fP ˵Ͽޤ\f2\-verbose:gc\fP ꤷȤ𤵤Τۤˡ𤵤ƥ٥ȤƬˡǽΥ١쥯󥤥٥Ȥηв (ñ) դäޤ .LP -ネットワークの応答時間によって JVM の実行速度が低下するのを避けるため、このファイルの格納先は、常にローカルファイルシステムにしてください。ファイルシステムが満杯になると、ファイルは切り詰められ、そのファイルにデータが引き続き記録されます。このオプションと \f2\-verbose:gc\fP の両方がコマンド行に指定されている場合は、このオプションが優先されます。 -.LP +ͥåȥα֤ˤä JVM μ¹®٤㲼Τ򤱤뤿ᡢΥեγǼϡ˥ե륷ƥˤƤե륷ƥबդˤʤȡեڤͤ졢Υե˥ǡ³ϿޤΥץ \f2\-verbose:gc\fP ξޥɹԤ˻ꤵƤϡΥץͥ褵ޤ .TP 3 \-Xmsn -メモリー割り当てプールの初期サイズをバイト数で指定します。指定する値は、1M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。 メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「HotSpot Ergonomics」を参照してください。 -.br -例: -.RS 3 - +꡼ƥסνХȿǻꤷޤꤹͤϡ1M ХȤ礭 1024 ܿˤʤФʤޤ󡣥ХȤꤹˤϡʸ \f2k\fP ޤ \f2K\fP դޤᥬХȤꤹˤϡʸ \f2m\fP ޤ \f2M\fP դޤǥեͤϡ¹Ի˥ƥ˴Ť򤵤ޤܺ٤ˤĤƤϡ +.na +\f2HotSpot Ergonomics\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.htmlפ򻲾ȤƤ .LP +: .nf \f3 .fl @@ -356,19 +351,19 @@ .fl \-Xms6m .fl - + .fl \fP .fi -.RE .TP 3 \-Xmxn -メモリー割り当てプールの最大サイズをバイト数で指定します。指定する値は、2M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。 メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「HotSpot Ergonomics」を参照してください。 +꡼ƥסκ祵Хȿǻꤷޤꤹͤϡ2M ХȤ礭 1024 ܿˤʤФʤޤ󡣥ХȤꤹˤϡʸ \f2k\fP ޤ \f2K\fP դޤᥬХȤꤹˤϡʸ \f2m\fP ޤ \f2M\fP դޤǥեͤϡ¹Ի˥ƥ˴Ť򤵤ޤܺ٤ˤĤƤϡ +.na +\f2HotSpot Ergonomics\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.htmlפ򻲾ȤƤ .br -例: -.RS 3 - -.LP +: .nf \f3 .fl @@ -378,96 +373,105 @@ .fl \-Xmx80m .fl - + .fl \fP .fi -.RE -Solaris 7 および Solaris 8 SPARC プラットフォームの場合、この値の上限はおよそ 4000m からオーバーヘッドの量を引いたものであり、Solaris 2.6 および x86 プラットフォームの場合は 2000m からオーバーヘッドの量を引いたものです。Linux プラットフォームの場合の上限は、およそ 2000m からオーバーヘッドの量を引いたものです。 +Solaris 7 Solaris 8 SPARC ץåȥեξΤͤξ¤ϡ褽 4000m 饪Сإåɤ̤ΤǤSolaris 2.6 x86 ץåȥեξξ¤ϡ褽 2000m 饪Сإåɤ̤ΤǤLinux ץåȥեξξ¤ϡ褽 2000m 饪Сإåɤ̤ΤǤ .TP 3 \-Xprof -実行中のプログラムのプロファイルを生成し、プロファイリングデータを標準出力に出力します。このオプションは、プログラム開発用のユーティリティーとして提供されています。 本番稼動システムでの使用を目的としたものではありません。 -.LP +¹ΥץΥץեץեǡɸϤ˽ϤޤΥץϡץ೫ȯѤΥ桼ƥƥȤ󶡤Ƥޤ ֲưƥǤλѤŪȤΤǤϤޤ .TP 3 \-Xrs -Java 仮想マシン (JVM) によるオペレーティングシステムシグナルの使用を減らします。 +Java ۥޥ (JVM) ˤ륪ڥ졼ƥ󥰥ƥॷʥλѤ򸺤餷ޤ .LP -以前のリリースでは、Java アプリケーションを秩序正しくシャットダウンするためのシャットダウンフック機能が追加されました。この機能により、JVM が突然終了した場合でも、シャットダウン時にユーザークリーンアップコード (データベース接続のクローズなど) を実行できるようになりました。 +Υ꡼ǤϡJava ץꥱåȥ󤹤뤿ΥåȥեåǽɲäޤεǽˤꡢJVM λǤ⡢åȥ˥桼꡼󥢥åץ (ǡ١³Υʤ) ¹ԤǤ褦ˤʤޤ .LP -Sun の JVM は、シグナルをキャッチすることによって、JVM の異常終了のためのシャットダウンフックを実装します。JVM は、SIGHUP、SIGINT、および SIGTERM を使用して、シャットダウンフックの実行を開始します。 +Sun JVM ϡʥ򥭥å뤳ȤˤäơJVM ΰ۾ェλΤΥåȥեåޤJVM ϡSIGHUPSIGINT SIGTERM Ѥơåȥեåμ¹Ԥ򳫻Ϥޤ .LP -JVM は、デバッグの目的でスレッドスタックをダンプするという、1.2 より前からある機能を実現するためにも、同様の機構を使用します。Sun の JVM は、スレッドダンプを実行するために SIGQUIT を使用します。 +JVM ϡǥХåŪǥåɥåפȤ1.2 餢뵡ǽ¸뤿ˤ⡢ƱͤεѤޤSun JVM ϡåɥפ¹Ԥ뤿 SIGQUIT Ѥޤ .LP -JVM を埋め込んでいるアプリケーションが SIGINT や SIGTERM などのシグナルを頻繁にトラップする必要があると、JVM そのもののシグナルハンドラの処理に支障が出る可能性があります。\f3\-Xrs\fP コマンド行オプションを使用すると、この問題に対処できます。Sun の JVM に対して \f3\-Xrs\fP を使用すると、SIGINT、SIGTERM、SIGHUP、および SIGQUIT に対するシグナルマスクは JVM によって変更されず、これらのシグナルに対するシグナルハンドラはインストールされません。 +JVM Ǥ륢ץꥱ SIGINT SIGTERM ʤɤΥʥˤ˥ȥåפɬפȡJVM ΤΤΥʥϥɥν˻پ㤬Фǽޤ\f3\-Xrs\fP ޥɹԥץѤȡнǤޤSun JVM Ф \f3\-Xrs\fP ѤȡSIGINTSIGTERMSIGHUP SIGQUIT Ф륷ʥޥ JVM ˤäѹ줺ΥʥФ륷ʥϥɥϥ󥹥ȡ뤵ޤ .LP -\f3\-Xrs\fP を指定した場合、次の 2 つの影響があります。 +\f3\-Xrs\fP ꤷ硢 2 Ĥαƶޤ .RS 3 .TP 2 o -SIGQUIT によるスレッドダンプを利用できない +SIGQUIT ˤ륹åɥפѤǤʤ .TP 2 o -シャットダウンフック処理の実行は、JVM が終了しようとしている時点で System.exit() を呼び出すなどして、ユーザーコード側で行う必要がある +åȥեåμ¹ԤϡJVM λ褦ȤƤ System.exit() ƤӽФʤɤơ桼¦ǹԤɬפ .RE .TP 3 \-Xssn -スレッドのスタックサイズを設定します。 +åɤΥåꤷޤ .TP 3 \-XX:+UseAltSigs -VM ではデフォルトで \f2SIGUSR1\fP および \f2SIGUSR2\fP を使用しますが、\f2SIGUSR1\fP および \f2SIGUSR2\fP をシグナル連鎖するアプリケーションと 競合する場合があります。\f2\-XX:+UseAltSigs\fP オプションは、VM にデフォルトとして \f2SIGUSR1\fP と \f2SIGUSR2\fP 以外のシグナルを使用させます。 +VM ǤϥǥեȤ \f2SIGUSR1\fP \f2SIGUSR2\fP Ѥޤ\f2SIGUSR1\fP \f2SIGUSR2\fP 򥷥ʥϢ륢ץꥱ 礹礬ޤ\f2\-XX:+UseAltSigs\fP ץϡVM ˥ǥեȤȤ \f2SIGUSR1\fP \f2SIGUSR2\fP ʳΥʥѤޤ .RE .LP -.RE -.SH "注" +.SH "" +.LP .LP - +\f3\-version:\fP\f2release\fP ޥɹԥץǤϡɤʤʣ˥꡼ꤷƤ⤫ޤޤ󡣤Ūʥ꡼θ¤줿֥åȤѤǤŬڤʥݥꥷɽǤ뤿ᡢΥ֥åȤΤߤ˥ݡȤޤΥݥꥷ򼡤˼ޤ .LP -\f3\-version:\fP\f2release\fP コマンド行オプションでは、どんなに複雑にリリースを指定してもかまいません。ただし、現実的なリリース指定の限られたサブセットを使用するだけでも適切なポリシーを表現できるため、それらのサブセットのみが完全にサポートされます。それらのポリシーを次に示します。 .RS 3 .TP 3 1. -任意のバージョン。 これは、このオプションを使用しないことで表現できます。 +ǤդΥС󡣤ϡΥץѤʤȤɽǤޤ .TP 3 2. -ある特定のバージョン ID よりも大きい任意のバージョン。 次に例を示します。 +ΥС ID 礭ǤդΥС󡣼򼨤ޤ .nf \f3 .fl -"1.5.0_03+" +"1.6.0_10+" .fl \fP .fi -.LP -この場合、1.5.0_03 よりも大きい任意のバージョンが使用されます。 これは、指定されたバージョンで特定のインタフェースが導入された (あるいはそのバグが修正された) 場合に便利です。 +ξ硢 \f21.6.0_10\fP 礭ǤդΥС󤬻Ѥޤϡꤵ줿СΥ󥿥եƳ줿 (뤤ϤΥХ줿) Ǥ .TP 3 3. -ある特定のバージョン ID よりも大きいバージョン。 ただし、そのリリースファミリの上限によって制限するもの。例を示します。 +ΥС ID 礭С󡣤Υ꡼եߥξ¤ˤä¤Ρ򼨤ޤ .nf \f3 .fl -"1.5.0_03+&1.5*" +"1.6.0_10+&1.6*" .fl \fP .fi .TP 3 4. -上の項目 2 または 3 の「OR」表現。例を示します。 +ι 2 ȹ 3 ΡOR׼򼨤ޤ .nf \f3 .fl -"1.4.2_05+&1.4* 1.5+" +"1.6.0_10+&1.6* 1.7+" .fl \fP .fi -これは項目 2 に似ていますが、ある変更が特定のリリース (1.5) で導入されたが、その同じ変更が以前のリリースのアップデートでも利用可能になった、という場合に便利です。 +Ϲ 2 ˻ƤޤѹΥ꡼ (1.7) Ƴ줿ƱѹΥ꡼ΥåץǡȤǤѲǽˤʤäȤǤ .RE .LP -.SH "関連項目" +.SH "λơ" +.LP +.LP +̤ˡνλͤưġ뤫֤Τ̾ưʰǸƤӽФ줿ʥ顼ȯ뤤 Java ۥޥ󤫤㳰줿Ǥ Java ץꥱϡAPI ƤӽФ \f2System.exit(exitValue)\fP ѤǤդ֤ͤȤ򤹤뤳ȤǤޤ .LP +.RS 3 +.TP 2 +o +\f20\fP: ェλ +.TP 2 +o +\f2>0\fP: 顼ȯ +.RE .LP +.SH "Ϣ" +.LP .RS 3 .TP 2 o @@ -484,19 +488,19 @@ .TP 2 o .na -\f2「Java 拡張機能フレームワーク」\fP @ +\f2Java ĥǽե졼\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/extensions/index.html .TP 2 o .na -\f2「セキュリティー」\fP @ +\f2֥ƥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/index.html .TP 2 o .na -\f2「HotSpot VM Specific Options」\fP @ +\f2HotSpot VM Specific Options\fP @ .fi http://java.sun.com/docs/hotspot/VMOptions.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/javac.1 --- a/jdk/src/linux/doc/man/ja/javac.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/javac.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,325 +19,423 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javac 1 "02 Jun 2010" +.TH javac 1 "14 Apr 2011" .LP -.SH "名前" -javac \- Java プログラミング言語コンパイラ +.SH "̾" +javac \- Java ץߥ󥰸쥳ѥ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -コマンド行引数ファイル +ޥɹ԰ե .TP 2 o -注釈処理 + .TP 2 o -型の検索 +θ .TP 2 o -プログラマティックインタフェース +ץޥƥå󥿥ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl \fP\f3javac\fP [ options ] [ sourcefiles ] [ classes ] [ @argfiles ] .fl - + .fl .fi .LP .LP -引数は順不同です。 -.LP -.RS 3 - +ϽƱǤ .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 sourcefiles -コンパイルされる 1 つ以上のソースファイル (MyClass.java など) +ѥ뤵 1 İʾΥե (MyClass.java ʤ) .TP 3 classes -注釈の処理対象となる 1 つ以上のクラス (MyPackage.MyClass など) +νоݤȤʤ 1 İʾΥ饹 (MyPackage.MyClass ʤ) .TP 3 @argfiles -オプションとソースファイルを列挙した 1 つ以上のファイル。このファイルの中では、\f2\-J\fP オプションは指定できません。 +ץȥե󤷤 1 İʾΥե롣ΥեǤ \f2\-J\fP ץϻǤޤ .RE .LP -.RE -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javac\fP ツールは、Java プログラミング言語で記述されたクラスとインタフェースの定義を読み取り、バイトコードのクラスファイルにコンパイルします。また、Java ソースファイルおよびクラス内の注釈の処理も行います。 +\f3javac\fP ġϡJava ץߥ󥰸ǵҤ줿饹ȥ󥿥եɤ߼ꡢХȥɤΥ饹ե˥ѥ뤷ޤޤJava ե뤪ӥ饹νԤޤ .LP .LP -ソースコードのファイル名を \f3javac\fP に渡すには、次の 2 つの方法があります。 +ɤΥե̾ \f3javac\fP Ϥˤϡ 2 Ĥˡޤ .LP .RS 3 .TP 2 o -ソースファイルの数が少ない場合は、ファイル名をコマンド行で直接指定します。 +եοʤϡե̾򥳥ޥɹԤľܻꤷޤ .TP 2 o -ソースファイルの数が多い場合は、ファイル名を空白または改行で区切って、1 つのファイルに列挙します。次に、このリストファイル名の先頭に \f3@\fP を付けて、\f3javac\fP のコマンド行で指定します。 +եο¿ϡե̾ޤϲԤǶڤäơ1 ĤΥե󤷤ޤˡΥꥹȥե̾Ƭ \f3@\fP դơ\f3javac\fP ΥޥɹԤǻꤷޤ .RE .LP .LP -ソースコードのファイル名は \f2.java\fP 拡張子を、クラスのファイル名は \f2.class\fP 拡張子を持っていなければなりません。 また、ソースファイルとクラスファイルのどちらも、該当するクラスに対応するルート名を持っていなければなりません。たとえば、\f2MyClass\fP という名前のクラスは、\f2MyClass.java\fP という名前のソースファイルに記述します。 このソースファイルは、\f2MyClass.class\fP という名前のバイトコードクラスファイルにコンパイルされます。 +ɤΥե̾ \f2.java\fP ĥҤ򡢥饹Υե̾ \f2.class\fP ĥҤäƤʤФʤޤ󡣤ޤեȥ饹եΤɤ⡢륯饹б롼̾äƤʤФʤޤ󡣤ȤС \f2MyClass\fP Ȥ̾Υ饹ϡ \f2MyClass.java\fP Ȥ̾Υե˵ҤޤΥեϡ \f2MyClass.class\fP Ȥ̾ΥХȥɥ饹ե˥ѥ뤵ޤ .LP .LP -内部クラスが定義されていると、追加のクラスファイルが生成されます。これらのクラスファイルの名前は、\f2MyClass$MyInnerClass.class\fP のように、外部クラス名と内部クラス名を組み合わせたものになります。 +饹ƤȡɲäΥ饹ե뤬ޤΥ饹ե̾ϡ \f2MyClass$MyInnerClass.class\fP Τ褦ˡ饹̾饹̾Ȥ߹碌Τˤʤޤ .LP .LP -ソースファイルは、パッケージツリーを反映したディレクトリツリーに配置する必要があります。たとえば、すべてのソースファイルを \f3/workspace\fP に置いている場合、\f2com.mysoft.mypack.MyClass\fP のソースコードは \f3/workspace/com/mysoft/mypack/MyClass.java\fP にある必要があります。 +եϡѥåĥ꡼ȿǤǥ쥯ȥĥ꡼֤ɬפޤȤС٤ƤΥե \f3/workspace\fP ֤Ƥ硢 \f2com.mysoft.mypack.MyClass\fP Υɤ \f3/workspace/com/mysoft/mypack/MyClass.java\fP ˤɬפޤ .LP .LP -デフォルトでは、コンパイラは、各クラスファイルを対応するソースファイルと同じディレクトリに置きます。別の出力先ディレクトリを指定するには、\f3\-d\fP を使用します (このあとのオプションを参照)。 +ǥեȤǤϡѥϡƥ饹եб륽եƱǥ쥯ȥ֤ޤ̤νǥ쥯ȥꤹˤϡ\f3\-d\fP Ѥޤ (ΤȤΥץ򻲾) .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -コンパイラには、現在の開発環境でサポートされており、将来のリリースでもサポートされる標準オプションのセットがあります。これ以外の非標準オプションは、現在の仮想マシンおよびコンパイラの実装に固有のオプションで、将来に変更される可能性があります。非標準オプションは、\f3\-X\fP で始まります。 +ѥˤϡߤγȯĶǥݡȤƤꡢΥ꡼Ǥ⥵ݡȤɸ४ץΥåȤޤʳɸ४ץϡߤβۥޥ󤪤ӥѥμ˸ͭΥץǡѹǽޤɸ४ץϡ\f3\-X\fP ǻϤޤޤ .LP .SS -標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Akey[=value] -注釈プロセッサに渡されるオプション。これらは、javac によって直接解釈されず、個々のプロセッサによって使用されます。 \f2key\fP には、1 つまたは複数の識別子を「.」で区切ったものを指定してください。 +ץåϤ륪ץ󡣤ϡjavac ˤäľܲᤵ줺ġΥץåˤäƻѤޤ\f2key\fP ˤϡ1 Ĥޤʣμ̻Ҥ.פǶڤäΤꤷƤ .TP 3 -\-cp path または \-classpath path -ユーザーのクラスファイルおよび (場合によっては) 注釈プロセッサやソースファイルの検索場所を指定します。このクラスパスは \f3CLASSPATH\fP 環境変数のユーザークラスパスをオーバーライドします。\f3CLASSPATH\fP、\f3\-cp\fP、\f3\-classpath\fP のいずれも指定されていない場合、ユーザークラスパスは、現在のディレクトリになります。詳細は、 -.na -\f2「クラスパスの設定」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +\-cp path ޤ \-classpath path +桼Υ饹ե뤪 (ˤäƤ) ץå䥽եθꤷޤΥ饹ѥ \f3CLASSPATH\fP ĶѿΥ桼饹ѥ򥪡С饤ɤޤ\f3CLASSPATH\fP\f3\-cp\fP\f3\-classpath\fP ΤꤵƤʤ硢桼饹ѥϡߤΥǥ쥯ȥˤʤޤܺ٤ϡ֥饹ѥפ򻲾ȤƤ .LP -\f3\-sourcepath\fP オプションが指定されていない場合は、ソースファイルもユーザークラスパスから検索されます。 +\f3\-sourcepath\fP ץ󤬻ꤵƤʤϡե桼饹ѥ鸡ޤ .LP -\f3\-processorpath\fP オプションが指定されていない場合は、注釈プロセッサもユーザークラスパスから検索されます。 +\f3\-processorpath\fP ץ󤬻ꤵƤʤϡץå桼饹ѥ鸡ޤ .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます。 -.br -.br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。\f3注:\fPコマンド行環境の構成によっては、\f2javac \-cp "*.jar" MyClass.java\fP などのように、ワイルドカード文字を引用符で囲まなければならない場合があります。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡǥ쥯ȥγĥ \f2.jar\fP ޤ \f2.JAR\fP Ĥ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ +.LP +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤ϻꤵޤ󡣤ΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ \f2*\fP 륯饹ѥȥϡߤΥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ\f3:\fP ޥɹԴĶιˤäƤϡ \f2javac \-cp "*.jar" MyClass.java\fP ʤɤΤ褦ˡ磻ɥʸǰϤळȤɬפʾ⤢ޤ .TP 3 \-Djava.ext.dirs=directories -インストール型拡張機能の位置をオーバーライドします。 +󥹥ȡ뷿ĥǽΰ֤򥪡С饤ɤޤ .TP 3 \-Djava.endorsed.dirs=directories -承認された標準パスの位置をオーバーライドします。 +ǧ줿ɸѥΰ֤򥪡С饤ɤޤ .TP 3 \-d directory -クラスファイルの出力先ディレクトリを設定します。そのディレクトリはすでに存在している必要があります。 \f3javac\fP はディレクトリを作成しません。クラスがパッケージの一部である場合、\f3javac\fP は、必要に応じてディレクトリを作成し、パッケージ名を反映したサブディレクトリにクラスファイルを置きます。たとえば、\f3\-d /home/myclasses\fP と指定し、クラスの名前が \f2com.mypackage.MyClass\fP である場合、クラスファイルは \f2/home/myclasses/com/mypackage/MyClass.class\fP になります。 +饹եνǥ쥯ȥꤷޤΥǥ쥯ȥϤǤ¸ߤƤɬפޤ\f3javac\fP Ϻޤ󡣥饹ѥåΰǤ硢\f3javac\fP ϡɬפ˱ƥǥ쥯ȥѥå̾ȿǤ֥ǥ쥯ȥ˥饹ե֤ޤȤС\f3\-d /home/myclasses\fP Ȼꤷ饹̾ \f2com.mypackage.MyClass\fP Ǥ硢饹ե \f2/home/myclasses/com/mypackage/MyClass.class\fP ˤʤޤ .LP -\f3\-d\fP が指定されなかった場合、\f3javac\fP は各クラスファイルを、その生成元となるソースファイルと同じディレクトリ内に格納します。 +\f3\-d\fP ꤵʤä硢\f3javac\fP ϳƥ饹ե򡢤Ȥʤ륽եƱǥ쥯ȥ˳Ǽޤ .LP -\f3注:\fP\f3\-d\fP で指定したディレクトリはユーザークラスパスに自動的には追加されません。 +\f3:\fP \f3\-d\fP ǻꤷǥ쥯ȥϥ桼饹ѥ˼ưŪˤɲäޤ .TP 3 \-deprecation -推奨されないメンバーやクラスが、使用またはオーバーライドされるたびに説明を表示します。\f3\-deprecation\fP が指定されていない場合、\f3javac\fP は、推奨されないメンバーやクラスを使用またはオーバーライドしているソースファイルの要約を表示します。\f3\-deprecation\fP は \f3\-Xlint:deprecation\fP の省略表記です。 +侩ʤС䥯饹ѤޤϥС饤ɤ뤿Ӥɽޤ\f3\-deprecation\fP ꤵƤʤ硢\f3javac\fP ϡ侩ʤС䥯饹ѤޤϥС饤ɤƤ륽եɽޤ\f3\-deprecation\fP \f3\-Xlint:deprecation\fP ξάɽǤ .TP 3 \-encoding encoding -ソースファイルのエンコーディング名 (\f2EUC\-JP\fP や \f2UTF\-8\fP など) を指定します。\f3\-encoding\fP が指定されていない場合は、プラットフォームのデフォルトコンバータが使われます。 +եΥ󥳡ǥ̾ ( \f2EUC\-JP UTF\-8\fP ʤ) ꤷޤ\f3\-encoding\fP ꤵƤʤϡץåȥեΥǥեȥСȤޤ +.TP 3 +\-endorseddirs directories +ǧ줿ɸѥΰ֤򥪡С饤ɤޤ +.TP 3 +\-extdirs directories +\f2ext\fP ǥ쥯ȥΰ֤򥪡С饤ɤޤ\f2directories\fP ѿˤϡǶڤäǥ쥯ȥΥꥹȤꤷޤꤷǥ쥯ȥγ JAR ֤顢饹ե뤬ޤĤä٤Ƥ JAR ֤ϼưŪ˥饹ѥΰˤʤޤ +.LP +ѥ (ۤʤ Java ץåȥե˼줿֡ȥȥåץ饹ĥǽ饹ФƥѥԤ) ¹Ԥ硢Υץˤϳĥǽ饹ޤǥ쥯ȥꤷޤܺ٤ϡ֥ѥ륪ץפ򻲾ȤƤ .TP 3 \-g -局所変数を含むすべてのデバッグ情報を生成します。デフォルトでは、行番号およびソースファイル情報だけが生成されます。 +ɽѿޤह٤ƤΥǥХåޤǥեȤǤϡֹ椪ӥեޤ .TP 3 \-g:none -デバッグ情報を生成しません。 +ǥХåޤ .TP 3 \-g:{keyword list} -コンマで区切られたキーワードリストにより指定された、特定の種類のデバッグ情報だけを生成します。次のキーワードが有効です。 +ޤǶڤ줿ɥꥹȤˤꤵ줿μΥǥХåޤΥɤͭǤ .RS 3 .TP 3 source -ソースファイルのデバッグ情報 +եΥǥХå .TP 3 lines -行番号のデバッグ情報 +ֹΥǥХå .TP 3 vars -局所変数のデバッグ情報 +ɽѿΥǥХå .RE .TP 3 \-help -標準オプションの形式を表示します。 +ɸ४ץηɽޤ .TP 3 \-implicit:{class,none} -暗黙的にロードされたソースファイルに対するクラスファイルの生成を制御します。クラスファイルを自動生成するには、\f3\-implicit:class\fP を使用します。クラスファイルの生成を抑制するには、\f3\-implicit:none\fP を使用します。 このオプションが指定されなかった場合のデフォルト動作は、クラスファイルの自動生成になります。その場合、そのようなクラスファイルが生成された時に注釈処理も実行されると、コンパイラから警告が発行されます。 このオプションが明示的に設定された場合には、警告は発行されません。 「型の検索」を参照してください。 +Ū˥ɤ줿եФ륯饹ե椷ޤ饹եưˤϡ\f3\-implicit:class\fP Ѥޤ饹եˤϡ\f3\-implicit:none\fP ѤޤΥץ󤬻ꤵʤäΥǥեưϡ饹եμưˤʤޤξ硢Τ褦ʥ饹ե뤬줿¹Ԥȡѥ餫ٹȯԤޤΥץŪꤵ줿ˤϡٹȯԤޤ󡣡ַθפ򻲾ȤƤ +.TP 3 +\-Joption +\f3javac\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ +.LP +\f3:\fP \f3CLASSPATH\fP\f3\-classpath\fP\f3\-bootclasspath\fP \f3\-extdirs\fP ϡ\f3javac\fP ¹Ԥ뤿˻Ȥ饹ꤹΤǤϤޤ󡣤Τ褦ˡǥѥμ뤳Ȥϡ̵̣̾Ǥꡢ˴ȼޤΤ褦ˡȤɬפϡ\f3\-J\fP ץȤäơɬפʥץظ \f3java\fP ưġϤƤ .TP 3 \-nowarn -警告メッセージを無効にします。これは \f3\-Xlint:none\fP と同じ意味です。 +ٹå̵ˤޤ \f3\-Xlint:none\fP Ʊ̣Ǥ .TP 3 \-proc: {none,only} -注釈処理、コンパイル、その両方、のいずれを実行するかを制御します。\f3\-proc:none\fP は、注釈処理なしでコンパイルが実行されることを意味します。\f3\-proc:only\fP は、注釈処理だけが実行され、後続のコンパイルはまったく実行されないことを意味します。 +ѥ롢ξΤ¹Ԥ뤫椷ޤ\f3\-proc:none\fP ϡʤǥѥ뤬¹Ԥ뤳Ȥ̣ޤ\f3\-proc:only\fP ϡ¹Ԥ졢³ΥѥϤޤä¹ԤʤȤ̣ޤ .TP 3 \-processor class1[,class2,class3...] -実行する注釈プロセッサの名前。これを指定した場合、デフォルトの検索処理は省略されます。 +¹Ԥץå̾ꤷ硢ǥեȤθϾάޤ .TP 3 \-processorpath path -注釈プロセッサの検索場所を指定します。 このオプションを使用しなかった場合、クラスパス内でプロセッサの検索が行われます。 +ץåθꤷޤΥץѤʤä硢饹ѥǥץåθԤޤ .TP 3 \-s dir -生成されたソースファイルの格納先となるディレクトリを指定します。そのディレクトリはすでに存在している必要があります。 \f3javac\fP は作成しません。クラスがパッケージの一部になっていた場合、コンパイラはそのソースファイルを、パッケージ名を反映したサブディレクトリ内に格納します。 その際、必要に応じてディレクトリを作成します。たとえば、ユーザーが \f3\-s /home/mysrc\fP と指定し、クラスの名前が \f2com.mypackage.MyClass\fP であった場合、そのソースファイルは \f2/home/mysrc/com/mypackage/MyClass.java\fP 内に格納されます。 +줿եγǼȤʤǥ쥯ȥꤷޤΥǥ쥯ȥϤǤ¸ߤƤɬפޤ\f3javac\fP Ϻޤ󡣥饹ѥåΰˤʤäƤ硢ѥϤΥե򡢥ѥå̾ȿǤ֥ǥ쥯ȥ˳Ǽޤκݡɬפ˱ƥǥ쥯ȥޤȤС桼 \f3\-s /home/mysrc\fP Ȼꤷ饹̾ \f2com.mypackage.MyClass\fP Ǥä硢Υե \f2/home/mysrc/com/mypackage/MyClass.java\fP ˳Ǽޤ .TP 3 \-source release -受け付けるソースコードのバージョンを指定します。\f2release\fP には次の値を指定できます。 +դ륽ɤΥСꤷޤ\f2release\fP ˤϼͤǤޤ .RS 3 .TP 3 1.3 -このコンパイラでは、JDK 1.3 以降に導入されたアサーション、総称、または他の言語機能をサポートしません。 +ΥѥǤϡJDK 1.3 ʹߤƳ줿Ρޤ¾θ쵡ǽ򥵥ݡȤޤ .TP 3 1.4 -JDK 1.4 で導入された、アサーションを含むコードを受け付けます。 +JDK 1.4 Ƴ줿ޤॳɤդޤ .TP 3 1.5 -JDK 5 で導入された総称および他の言語機能を含んだコードを受け付けます。 +JDK 5 Ƴ줿Τ¾θ쵡ǽޤɤդޤ .TP 3 5 -1.5 と同義です。 +1.5 ƱǤ .TP 3 1.6 -これがデフォルト値です。Java SE 6 では言語に対する変更は導入されませんでしたが、ソースファイル内のエンコーディングエラーが、以前のような「警告」ではなく、「エラー」として報告されるようになりました。 +줬ǥեͤǤJava SE 6 ǤϸФѹƳޤǤեΥ󥳡ǥ󥰥顼Τ褦ʡַٹפǤϤʤ֥顼פȤ𤵤褦ˤʤޤ .TP 3 6 -1.6 と同義です。 +1.6 ƱǤ +.TP 3 +1.7 +JDK 7 Ƴ줿ǽޤॳɤդޤ +.TP 3 +7 +1.7 ƱǤ .RE .TP 3 \-sourcepath sourcepath -クラスまたはインタフェースの定義を検索するソースコードパスを指定します。ユーザークラスパスと同様に、ソースパスの複数のエントリはコロン (\f3:\fP) で区切ります。 ソースパスのエントリには、ディレクトリ、JAR アーカイブ、または ZIP アーカイブを指定できます。パッケージを使っている場合は、ディレクトリまたはアーカイブ内のローカルパス名がパッケージ名を反映していなければなりません。 +饹ޤϥ󥿥ե򸡺륽ɥѥꤷޤ桼饹ѥƱͤˡѥʣΥȥϥ (\f3:\fP) ǶڤޤѥΥȥˤϡǥ쥯ȥꡢJAR ֡ޤ ZIP ֤ǤޤѥåȤäƤϡǥ쥯ȥޤϥΥѥ̾ѥå̾ȿǤƤʤФʤޤ .LP -\f3注:\fP\ クラスパスからクラスだけでなくそのソースも見つかった場合、そのクラスは自動再コンパイルの対象になることがあります。「型の検索」を参照してください。 +\f3:\fP\ 饹ѥ饯饹ǤʤΥ⸫Ĥä硢Υ饹ϼưƥѥоݤˤʤ뤳Ȥޤַθפ򻲾ȤƤ .TP 3 \-verbose -詳細な出力を表示します。ロードされるクラスおよびコンパイルされるソースファイルごとの情報が出力されます。 +ܺ٤ʽϤɽޤɤ륯饹ӥѥ뤵륽ե뤴Ȥξ󤬽Ϥޤ +.TP 3 +\-version +СϤޤ +.TP 3 +\-Werror +ٹȯ˥ѥλޤ .TP 3 \-X -非標準オプションに関する情報を表示して終了します。 +ɸ४ץ˴ؤɽƽλޤ .RE .LP -.RE .SS -クロスコンパイルオプション -.LP -.RS 3 - +ѥ륪ץ .LP .LP -デフォルトでは、クラスのコンパイルは、\f3javac\fP が添付されているプラットフォームのブートストラップクラスおよび拡張機能クラスに対して行われます。ただし、\f3javac\fP は、異なる Java プラットフォームに実装されたブートストラップクラスおよび拡張機能クラスに対してコンパイルを行う「クロスコンパイル」もサポートしています。クロスコンパイルを行う場合は、\f3\-bootclasspath\fP および \f3\-extdirs\fP を使うことが重要です。 このあとの「クロスコンパイルの例」を参照してください。 +ǥեȤǤϡ饹Υѥϡ\f3javac\fP źդƤץåȥեΥ֡ȥȥåץ饹ӳĥǽ饹ФƹԤޤ\f3javac\fP ϡۤʤ Java ץåȥե˼줿֡ȥȥåץ饹ӳĥǽ饹ФƥѥԤ֥ѥפ⥵ݡȤƤޤѥԤϡ\f3\-bootclasspath\fP \f3\-extdirs\fP ȤȤפǤΤȤΡ֥ѥפ򻲾ȤƤ .LP .RS 3 .TP 3 \-target version -指定されたバージョンの VM をターゲットにしたクラスファイルを生成します。このクラスファイルは、指定されたターゲット以降のバージョンでは動作しますが、それより前のバージョンの VM では動作しません。有効なターゲットは、\f31.1\fP、\f31.2\fP、\f31.3\fP、\f31.4\fP、\f31.5\fP (\f35\fP も可)、および \f31.6\fP (\f36\fP も可) です。 +ꤵ줿С VM 򥿡åȤˤ饹եޤΥ饹եϡꤵ줿åȰʹߤΥСǤưޤΥС VM ǤưޤͭʥåȤϡ\f31.1\fP\f31.2\fP\f31.3\fP\f31.4\fP\f31.5\fP (\f35\fP )\f31.6\fP (\f36\fP ) \f31.7\fP (\f37\fP ) Ǥ .LP -\f3\-target\fP のデフォルトは、次のように \f3\-source\fP の値によって決まります。 +\f3\-target\fP ΥǥեȤϡΤ褦 \f3\-source\fP ͤˤäƷޤޤ .RS 3 .TP 2 o -\-source が\f3指定されなかった\fP場合、\-target の値は \f31.6\fP になります。 +\-source \f3ꤵʤä\fP硢\-target ͤ \f31.7\fP ˤʤޤ .TP 2 o -\-source が\f31.2\fP の場合、\-target の値は \f31.4\fP になります。 +\-source \f31.2\fP ξ硢\-target ͤ \f31.4\fP ˤʤޤ .TP 2 o -\-source が\f31.3\fP の場合、\-target の値は \f31.4\fP になります。 +\-source \f31.3\fP ξ硢\-target ͤ \f31.4\fP ˤʤޤ .TP 2 o -\-source が\f3それ以外の値の場合はすべて\fP、\\\-target の値は \f3\-source\fP の値になります。 +\-source \f3ʳͤξϤ٤\fP\f3\\\-target\fP ͤ \f3\-source\fP ͤˤʤޤ .RE .TP 3 \-bootclasspath bootclasspath -指定された一連のブートクラスに対してクロスコンパイルを行います。ユーザークラスパスと同様に、ブートクラスパスの複数のエントリはコロン (\f3:\fP) で区切ります。 ブートクラスパスのエントリには、ディレクトリ、JAR アーカイブ、または ZIP アーカイブを指定できます。 -.TP 3 -\-extdirs directories -指定された拡張機能ディレクトリに対してクロスコンパイルを行います。\f2directories\fP には、コロンで区切ったディレクトリのリストを指定します。指定したディレクトリ内の各 JAR アーカイブから、クラスファイルが検索されます。 +ꤵ줿ϢΥ֡ȥ饹ФƥѥԤޤ桼饹ѥƱͤˡ֡ȥ饹ѥʣΥȥϥ (\f3:\fP) Ƕڤޤ֡ȥ饹ѥΥȥˤϡǥ쥯ȥꡢJAR ֡ޤ ZIP ֤Ǥޤ .RE .LP -.RE .SS -非標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Xbootclasspath/p:path -ブートストラップクラスパスの前に追加します。 +֡ȥȥåץ饹ѥɲäޤ .TP 3 \-Xbootclasspath/a:path -ブートストラップクラスパスの後ろに追加します。 +֡ȥȥåץ饹ѥθɲäޤ .TP 3 \-Xbootclasspath/:path -ブートストラップクラスファイルの位置をオーバーライドします。 +֡ȥȥåץ饹եΰ֤򥪡С饤ɤޤ .TP 3 \-Xlint -推奨されるすべての警告を有効にします。このリリースでは、利用可能なすべての警告が推奨されています。 +侩뤹٤ƤηٹͭˤޤΥ꡼ǤϡѲǽʤ٤Ƥηٹͭˤ뤳Ȥ侩Ƥޤ +.TP 3 +\-Xlint:all +侩뤹٤ƤηٹͭˤޤΥ꡼ǤϡѲǽʤ٤Ƥηٹͭˤ뤳Ȥ侩Ƥޤ .TP 3 \-Xlint:none -Java 言語仕様では指定されていないすべての警告を無効にします。 +Java ͤǤϻꤵƤʤ٤Ƥηٹ̵ˤޤ +.TP 3 +\-Xlint:name +ٹ \f2name\fP ͭˤޤΥץͭˤǤٹΥꥹȤˤĤƤϡ\-Xlint ץȤäͭޤ̵ˤǤٹפ򻲾ȤƤ .TP 3 \-Xlint:\-name -警告 \f2name\fP を無効にします。 ただし、\f2name\fP は、\f3\-Xlint:\fP\f2name\fP に使用できる警告名のいずれかになります。 この警告名は次のとおりです。 +ٹ \f2name\fP ̵ˤޤΥץ̵ˤǤٹΥꥹȤˤĤƤϡ\-Xlint ץȤäͭޤ̵ˤǤٹפ򻲾ȤƤ +.TP 3 +\-Xmaxerrs number +륨顼κꤷޤ .TP 3 -\-Xlint:unchecked -Java 言語仕様で指定されている未検査変換警告の詳細を示します。 +\-Xmaxwarns number +ٹκꤷޤ .TP 3 -\-Xlint:path -存在しないパス (classpath、sourcepath など) ディレクトリについて警告します。 +\-Xstdout filename +ѥΥå򡢻ꤵ줿եޤǥեȤǤϡѥΥå \f2System.err\fP ޤ .TP 3 -\-Xlint:serial -\f2serialVersionUID\fP 定義が直列化可能クラスにないことを警告します。 +\-Xprefer:{newer,source} +뷿Фƥեȥ饹եξĤä硢ΤɤΥեɤ߼٤ꤷޤ (ַθפ򻲾)\f2\-Xprefer:newer\fP Ѥ硢뷿Ф륽եȥ饹եοɤ߼ޤ (ǥե)\f2\-Xprefer:source\fP ץѤ硢ե뤬ɤ߼ޤSOURCE ¸ݥꥷȤä줿ǤդץåǤ褦ˤϡ\f2\-Xprefer:source\fP \f2ѤƤ\fP +.TP 3 +\-Xpkginfo:{always,legacy,nonempty} +ѥåեνꤷޤ .TP 3 -\-Xlint:finally -正常に完了できない \f2finally\fP 節について警告します。 +\-Xprint +ꤵ줿ΥƥɽǥХåŪǽϤޤѥΤɤ¹Ԥޤ󡣽Ϸѹǽޤ .TP 3 -\-Xlint:fallthrough -fall\-through ケースの \f2switch\fP ブロックをチェックし、検出されたものに対して警告メッセージを表示します。Fall\-through ケースは、\f2switch\fP ブロック内の最後のケースを除くケースです。 このコードには \f2break\fP 文は含まれません。 コードの実行をそのケースから次のケースへ移動します。たとえば、この \f2switch\fP ブロック内の \f2case 1\fP ラベルに続くコードは、\f2break\fP 文で終わっていません。 -.RS 3 +\-XprintProcessorInfo +ΥץåꤵƤ˴ؤϤޤ +.TP 3 +\-XprintRounds +󤪤Ӹ³饦ɤ˴ؤϤޤ +.RE .LP +.SS +\-Xlint ץȤäͭޤ̵ˤǤٹ +.LP +.LP +\f3\-Xlint:\fP\f2name\fP ץȤäƷٹ \f2name\fP ͭˤޤ\f2name\fP ϼηٹ̾Τ줫ˤʤޤƱͤˡ\f3\-Xlint:\-\fP\f2name\fP ץȤäƷٹ \f2name\fP ̵ˤǤޤ +.LP +.RS 3 +.TP 3 +cast +פǾĹʥ㥹ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +String s = (String)"Hello!" +.fl +\fP +.fi +.TP 3 +classfile +饹եƤ˴ϢˤĤƷٹ𤷤ޤ +.TP 3 +deprecation +侩ܤλѤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + java.util.Date myDate = new java.util.Date(); +.fl + int currentDay = myDate.getDay(); +.fl +\fP +.fi +.LP +᥽å \f2java.util.Date.getDay\fP JDK 1.1 ʹߤϿ侩Ƥޤ +.TP 3 +dep\-ann +\f2@deprecated\fP Javadoc ȤǥɥȲƤ뤬 \f2@Deprecated\fP ᤬դƤʤܤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + /** +.fl + * @deprecated As of Java SE 7, replaced by {@link #newMethod()} +.fl + */ +.fl + +.fl + public static void deprecatedMethood() { } +.fl + +.fl + public static void newMethod() { } +.fl +\fP +.fi +.TP 3 +divzero + 0 ǽ뤳ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + int divideByZero = 42 / 0; +.fl +\fP +.fi +.TP 3 +empty +\f2if\fP ʸʹߤʸǤ뤳ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +class E { +.fl + void m() { +.fl + if (true) ; +.fl + } +.fl +} +.fl +\fP +.fi +.TP 3 +fallthrough +fall\-through \f2switch\fP ֥ååФ줿ΤФƷٹåɽޤFall\-through ϡ\f2switch\fP ֥åκǸΥǤΥɤˤ \f2break\fP ʸϴޤޤޤ󡣥ɤμ¹Ԥ򤽤Υ鼡ΥذưޤȤС \f2switch\fP ֥å \f2case 1\fP ٥³ɤϡ\f2break\fP ʸǽäƤޤ .nf \f3 .fl @@ -347,7 +445,7 @@ .fl System.out.println("1"); .fl - // No break; statement here. + // No break statement here. .fl case 2: .fl @@ -355,96 +453,375 @@ .fl } .fl - +\fP +.fi +.LP +ΥɤΥѥ \f2\-Xlint:fallthrough\fP ե饰ѤƤ硢ѥ ιֹȤȤˡfall\-through βǽ뤳Ȥ򼨤ٹȯԤޤ +.TP 3 +finally +˴λǤʤ \f2finally\fP ˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + public static int m() { +.fl + try { +.fl + throw new NullPointerException(); +.fl + } catch (NullPointerException e) { +.fl + System.err.println("Caught NullPointerException."); +.fl + return 1; +.fl + } finally { +.fl + return 0; +.fl + } +.fl + } +.fl +\fP +.fi +.LP +Ǥϡѥ \f2finally\fP ֥å˴ؤٹޤΥ᥽åɤƤӽФȡ 1 ǤϤʤ \f20\fP \f2֤ޤ\fP \f2finally\fP ֥åϡ \f2try\fP ֥åλɬ¹ԤޤǤϡ椬 \f2catch\fP ˰ܤ줿硢᥽åɤϽλޤ \f2finally\fP ֥åϼ¹Ԥɬפ뤿ᡢ椬ǤˤΥ᥽åɤγ˰ܤƤƤ⡢Υ֥åϼ¹Ԥޤ +.TP 3 +options +ޥɹԥץλѤ˴ؤˤĤƷٹ𤷤ޤμηٹˤĤƤϡ֥ѥפ򻲾ȤƤ +.TP 3 +overrides +᥽åɤΥС饤ɤ˴ؤˤĤƷٹ𤷤ޤȤС 2 ĤΥ饹Ȥޤ +.nf +\f3 +.fl +public class ClassWithVarargsMethod { +.fl + void varargsMethod(String... s) { } +.fl +} +.fl +\fP +.fi +.nf +\f3 +.fl +public class ClassWithOverridingMethod extends ClassWithVarargsMethod { +.fl + @Override +.fl + void varargsMethod(String[] s) { } +.fl +} +.fl +\fP +.fi +.LP +ѥϼΤ褦ʷٹޤ +.nf +\f3 +.fl +warning: [override] varargsMethod(String[]) in ClassWithOverridingMethod overrides varargsMethod(String...) in ClassWithVarargsMethod; overriding method is missing '...' +.fl +\fP +.fi +.LP +ѥϡvarargs ᥽åɤ򸡽Фȡvarargs βѥ᡼Ѵޤ᥽å \f2ClassWithVarargsMethod.varargsMethod\fP Ǥϡѥ varargs βѥ᡼ \f2String... s\fP 򲾥ѥ᡼ \f2String[] s\fP ѴޤString[] s ϡ᥽å \f2ClassWithOverridingMethod.varargsMethod\fP βѥ᡼бǤη̡Ǥϥѥ뤬Ԥޤ +.TP 3 +path +ޥɹԤǤ̵ʥѥǤ¸ߤʤѥǥ쥯ȥˤĤƷٹ𤷤ޤ (饹ѥѥʤɤΥѥϢ)Τ褦ʷٹ \f2@SuppressWarnings\fP 뤳ȤϤǤޤ󡣼򼨤ޤ +.nf +\f3 +.fl +javac \-Xlint:path \-classpath /nonexistentpath Example.java +.fl +\fP +.fi +.TP 3 +processing +˴ؤˤĤƷٹ𤷤ޤѥ餬ηٹΤϡޤ९饹ȤˡѤƤץåǤη㳰ǤʤǤñץå򼡤˼ޤ +.LP +\f3ե \fP\f4AnnoProc.java\fP: +.nf +\f3 +.fl +import java.util.*; +.fl +import javax.annotation.processing.*; +.fl +import javax.lang.model.*; +.fl +import javax.lang.model.element.*; +.fl + +.fl +@SupportedAnnotationTypes("NotAnno") +.fl +public class AnnoProc extends AbstractProcessor { +.fl + public boolean process(Set elems, RoundEnvironment renv) { +.fl + return true; +.fl + } +.fl + +.fl + public SourceVersion getSupportedSourceVersion() { +.fl + return SourceVersion.latest(); +.fl + } +.fl +} +.fl +\fP +.fi +.LP +\f3ե \fP\f4AnnosWithoutProcessors.java\fP\f3:\fP +.nf +\f3 +.fl +@interface Anno { } +.fl + +.fl +@Anno +.fl +class AnnosWithoutProcessors { } +.fl +\fP +.fi +.LP +Υޥɤϡץå \f2AnnoProc\fP 򥳥ѥ뤷ץå򥽡ե \f2AnnosWithoutProcessors.java\fP ФƼ¹Ԥޤ +.nf +\f3 +.fl +% javac AnnoProc.java +.fl +% javac \-cp . \-Xlint:processing \-processor AnnoProc \-proc:only AnnosWithoutProcessors.java +.fl +\fP +.fi +.LP +ѥ餬ե \f2AnnosWithoutProcessors.java\fP Фץå¹Ԥȡηٹޤ +.nf +\f3 +.fl +warning: [processing] No processor claimed any of these annotations: Anno .fl \fP .fi -.RE -このコードのコンパイル時に \f2\-Xlint:fallthrough\fP フラグが使用されていた場合、コンパイラは 当該ケースの行番号とともに、fall\-through ケースの可能性があることを示す警告を発行します。 +.LP +褹ˤϡ饹 \f2AnnosWithoutProcessors\fP ӻѤ̾ \f2Anno\fP \f2NotAnno\fP ѹޤ .TP 3 -\-Xmaxerrs number -印刷するエラーの最大数を設定します。 +rawtypes +raw Ф̤ˤĤƷٹ𤷤ޤäˤΥץϡʤѥ᡼줿Ѥ桼ФƷٹ𤷤ޤʸǤϡ \f2rawtypes\fP ٹޤ +.nf +\f3 +.fl +void countElements(List l) { ... } +.fl +\fP +.fi +.LP +ʸǤϡ \f2rawtypes\fP ٹޤ +.nf +\f3 +.fl +void countElements(List l) { ... } +.fl +\fP +.fi +.LP +\f2List\fP raw Ǥ \f2List\fP ϥХɷΥ磻ɥɤΥѥ᡼줿Ǥ \f2List\fP ϥѥ᡼줿󥿥եʤΤǡɬηꤹɬפޤǤϡ \f2List\fP βϥХɷΥ磻ɥ (\f2?\fP) ȤäƤβѥ᡼ȤƻꤵޤĤޤꡢ \f2countElements\fP ᥽åɤ \f2List\fP 󥿥եΤɤΥ󥹥󥹲դ뤳ȤǤޤ .TP 3 -\-Xmaxwarns number -印刷する警告の最大数を設定します。 -.TP 3 -\-Xstdout filename -コンパイラのメッセージを、指定されたファイルに送ります。デフォルトでは、コンパイラのメッセージは \f2System.err\fP に送られます。 +serial +ľ󲽲ǽ饹 \f2serialVersionUID\fP ʤȤٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +public class PersistentTime implements Serializable +.fl +{ +.fl + private Date time; +.fl + +.fl + public PersistentTime() { +.fl + time = Calendar.getInstance().getTime(); +.fl + } +.fl + +.fl + public Date getTime() { +.fl + return time; +.fl + } +.fl +} +.fl +\fP +.fi +.LP +ѥϼηٹޤ +.nf +\f3 +.fl +warning: [serial] serializable class PersistentTime has no definition of serialVersionUID +.fl +\fP +.fi +.LP +ľ󲽲ǽ饹 \f2serialVersionUID\fP Ȥ̾ΥեɤŪʤ硢ľ󲽥󥿥ϡJava ֥ľ󲽻͡פƤ褦ˡ饹Τޤޤ¦̤˴Ťơ饹 \f2serialVersionUID\fP Υǥեͤ׻ޤ٤Ƥľ󲽲ǽ饹 \f2serialVersionUID\fP ͤŪ뤳Ȥ򶯤ᤷޤϡ \f2serialVersionUID\fP ͤ׻ǥեȤΥץѥμˤäưۤʤǽΤ륯饹ξܺ٤ˤƱƶ䤹ľͽʤ \f2InvalidClassExceptions\fP ȯǽ뤿ǤäơJava ѥμۤʤäƤ \f2serialVersionUID\fP ͤΰݤˤˤϡľ󲽲ǽ饹 \f2serialVersionUID\fP ͤŪɬפޤ .TP 3 -\-Xprefer:{newer,source} -ある型に対してソースファイルとクラスファイルの両方が見つかった場合、そのどちらのファイルを読み取るべきかを指定します (「型の検索」を参照)。\f2\-Xprefer:newer\fP を使用した場合、ある型に対するソースファイルとクラスファイルの新しい方が読み取られます (デフォルト)。\f2\-Xprefer:source\fPオプションを使用した場合、ソースファイルが読み取られます。\f2SOURCE\fP の保存ポリシーを使って宣言された注釈に任意の注釈プロセッサがアクセスできるようにしたい場合は、\f2\-Xprefer:source\fPを使用してください。 +static +static λѤ˴ؤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +class XLintStatic { +.fl + static void m1() { } +.fl + void m2() { this.m1(); } +.fl +} +.fl +\fP +.fi +.LP +ѥϼηٹޤ +.nf +\f3 +.fl +warning: [static] static method should be qualified by type name, XLintStatic, instead of by an expression +.fl +\fP +.fi +.LP +褹뤿ˡΤ褦 static ᥽å \f2m1\fP ƤӽФȤǤޤ +.nf +\f3 +.fl +XLintStatic.m1(); +.fl +\fP +.fi +.LP +뤤ϡ \f2static\fP ɤ᥽å \f2m1\fP 뤳ȤǤޤ .TP 3 -\-Xprint -指定された型のテキスト表現をデバッグ目的で出力します。 注釈処理、コンパイルのどちらも実行しません。出力形式は変更される可能性があります。 +try +try\-with\-resources ʸޤࡢ \f2try\fP ֥åλѤ˴ؤˤĤƷٹ𤷤ޤȤСtry ʸ줿꥽ \f2ac\fP Ѥʤˡ \f2ʸФƷٹ\fP ޤ +.nf +\f3 +.fl +try ( AutoCloseable ac = getResource() ) { +.fl + // do nothing +.fl +} +.fl +\fP +.fi .TP 3 -\-XprintProcessorInfo -ある特定のプロセッサが処理を依頼されている注釈に関する情報を出力します。 +unchecked +Java ͤǻꤵƤ̤Ѵٹξܺ٤򼨤ޤ򼨤ޤ +.nf +\f3 +.fl + List l = new ArrayList(); +.fl + List ls = l; // unchecked warning +.fl +\fP +.fi +.LP +ξõˡ \f2ArrayList\fP \f2List\fP Ϥ줾 \f2ArrayList\fP \f2List\fP ˤʤޤ +.LP +ѿ \f2ls\fP ˤϥѥ᡼줿 \f2List\fP ꤵƤޤl ˤäƻȤ \f2List\fP \f2\fP \f2ls\fP ȡѥ̤ٹޤѥ \f2l\fP \f2List\fP 򻲾Ȥ뤫ɤ򥳥ѥȽǤǤޤ󡣤ޤJVM ¹ԻˤȽǤǤʤȤǧƤޤl List 򻲾Ȥޤ󡣤η̡ҡױȯޤ +.LP +ܤȡҡױ֤ȯΤϡ \f2List\fP ֥ \f2l\fP ( static \f2List\fP) ̤ \f2List\fP ֥ \f2ls\fP (ۤʤ static \f2List\fP ) ǤѥǤϤ̤˵ĤƤޤΤ򥵥ݡȤʤ Java SE ΥСȤβ̸ߴݤ뤿ˡĤɬפޤõΤˡ \f2List\fP \f2List\fP \f2List\fP ˤʤޤη̡ѥϥ֥ \f2l\fP ( \f2List\fP Ȥ raw ) 򥪥֥ \f2ls\fP뤳ȤĤޤ .TP 3 -\-XprintRounds -初回および後続の注釈処理ラウンドに関する情報を出力します。 +varargs +Ѱ (varargs) ᥽åɡäݲǽޤΤλѤǤʤȤٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +public class ArrayBuilder { +.fl + public static void addToList (List listArg, T... elements) { +.fl + for (T x : elements) { +.fl + listArg.add(x); +.fl + } +.fl + } +.fl +} +.fl +\fP +.fi +.LP +ѥϡ᥽å \f2ArrayBuilder.addToList\fP ˴ؤ뼡ηٹޤ +.nf +\f3 +.fl +warning: [varargs] Possible heap pollution from parameterized vararg type T +.fl +\fP +.fi +.LP +ѥϡvarargs ᥽åɤ򸡽Фȡvarargs βѥ᡼ѴޤJava ץߥ󥰸Ǥϡѥ᡼줿κĤƤޤ󡣥᥽å \f2ArrayBuilder.addToList\fP Ǥϡѥ varargs βѥ᡼ \f2T... elements\fP 򲾥ѥ᡼ \f2T[] elements\fP() ѴޤõΤˡѥ varargs βѥ᡼ \f2Object[] elements\fP Ѵޤη̡ҡױȯǽޤ .RE .LP -.RE -.SS -\-J オプション +.SH "ޥɹ԰ե" .LP -.RS 3 - .LP -.RS 3 -.TP 3 -\-Joption -\f3javac\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。このオプションは \f3\-X\fP で始まっていませんが、\f3javac\fP の「標準オプション」ではありません。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +javac ΥޥɹԤûʷˤꤹ뤿ˡ \f2javac\fP ޥɤФ ( \f2\-J\fP ץ) ޤ 1 İʾΥեꤹ뤳ȤǤޤˡȤȡɤΥڥ졼ƥ󥰥ƥǤ⡢ǤդĹ javac ޥɤǤޤ .LP -\f3注:\fP \ \f3CLASSPATH\fP、\f3\-classpath\fP、\f3\-bootclasspath\fP、および \f3\-extdirs\fP は、\f3javac\fP を実行するために使うクラスを指定するものではありません。このような方法でコンパイラの実装を操作することは、通常は無意味であり、常に危険を伴います。このような方法を使う必要がある場合は、\f3\-J\fP オプションを使って、必要なオプションを背後の \f3java\fP 起動ツールに渡してください。 -.RE - .LP -.RE -.SH "コマンド行引数ファイル" -.LP - +եˤϡjavac Υץȥե̾ͳȤ߹碌ƵҤǤޤեγưϡڡޤϲԤǶڤޤե̾˶򤬴ޤޤƤϡΥե̾ΤŰǰϤߤޤ .LP .LP -\f2javac\fP のコマンド行を短くしたり簡潔にしたりするために、\f2javac\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) を含む 1 つ以上のファイルを指定することができます。この方法を使うと、どのオペレーティングシステム上でも、任意の長さの javac コマンドを作成できます。 -.LP -.LP -引数ファイルには、javac のオプションとソースファイル名を自由に組み合わせて記述できます。ファイル内の各引数は、スペースまたは改行で区切ります。ファイル名に空白が含まれている場合は、そのファイル名全体を二重引用符で囲みます。 +եΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣰եΥե̾ꥹȤǤϡ磻ɥ (*) ϻѤǤޤ󡣤ȤС \f2*.java\fP ȤϻǤޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ \f2\-J\fP ץ⥵ݡȤƤޤ󡣤ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ .LP .LP -引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。引数ファイルの位置から見た相対パスではありません。引数ファイル内のファイル名リストでは、ワイルドカード (*) は使用できません。たとえば、\f2*.java\fP とは指定できません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 +javac ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤjavac ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ +.LP +.SS +ե 1 Ļꤹ .LP .LP -javac を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。javac は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 -.LP -.SS -引数ファイルを 1 つ指定する例 -.LP -.LP -\f2argfile\fP という名前の引数ファイルにすべての javac 引数を格納する場合は、次のように指定します。 +\f2argfileפȤ̾ΰե\fP٤Ƥ javac ǼϡΤ褦˻ꤷޤ .LP .nf \f3 .fl - % \fP\f3javac @argfile\fP -.fl - +% \fP\f3javac @argfile\fP .fl .fi .LP .LP -この引数ファイルには、次の例で示されている 2 つのファイルの内容を両方とも入れることができます。 +ΰեˤϡǼƤ 2 ĤΥեƤξȤ뤳ȤǤޤ .LP .SS -引数ファイルを 2 つ指定する例 +ե 2 Ļꤹ .LP .LP -たとえば、javac オプション用に 1 ファイル、ソースファイル名用に 1 ファイルというように、2 つの引数ファイルを作成することもできます。なお、このあとのリストでは、行の継続文字を使用していません。 +ȤСjavac ץѤ 1 ե롢ե̾Ѥ 1 եȤ褦ˡ2 Ĥΰե뤳ȤǤޤʤΤȤΥꥹȤǤϡԤη³ʸѤƤޤ .LP .LP -以下の内容を含む \f2options\fP という名前のファイルを作成します。 +ʲƤޤ \f2options\fP Ȥեޤ .LP .nf \f3 @@ -455,14 +832,14 @@ .fl \-sourcepath /java/pubs/ws/1.3/src/share/classes .fl - + .fl \fP .fi .LP .LP -以下の内容を含む \f2classes\fP という名前のファイルを作成します。 +ʲƤޤ \f2classes\fP Ȥեޤ .LP .nf \f3 @@ -473,120 +850,104 @@ .fl MyClass3.java .fl - + .fl \fP .fi .LP .LP -次のコマンドを使用して \f3javac\fP を実行します。 +ΥޥɤѤ \f3javac\fP ¹Ԥޤ .LP .nf \f3 .fl % \fP\f3javac @options @classes\fP .fl - + .fl .fi .LP .SS -パス付きの引数ファイルの例 +ѥդΰե .LP .LP -引数ファイルには、パスを指定できます。 ただし、そのファイル内に指定されたファイル名は、現在の作業ディレクトリから見た相対パスになります。 つまり、下の例の場合は、\f2path1\fP や \f2path2\fP から見た相対パスではありません。 +եˤϡѥǤޤΥե˻ꤵ줿ե̾ϡߤκȥǥ쥯ȥ꤫鸫ХѥˤʤޤĤޤꡢξϡ \f2path1\fP \f2path2\fP 鸫ХѥǤϤޤ .LP .nf \f3 .fl - % \fP\f3javac @path1/options @path2/classes\fP -.fl - +% \fP\f3javac @path1/options @path2/classes\fP .fl .fi .LP -.SH "注釈処理" +.SH "" .LP - +.LP +\f3javac\fP ľܥݡȤƤ뤿ᡢΩġǤ \f3apt\fP Ѥɬפʤʤޤ .LP .LP -\f3javac\fP が注釈処理を直接サポートしているため、独立した注釈処理ツールである \f3apt\fP を使用する必要がなくなりました。 + API ϡ \f2javax.annotation.processing\fP \f2javax.lang.model\fP ѥåȤΥ֥ѥåƤޤ +.LP +.SS +γ .LP .LP -注釈処理の API は、\f2javax.annotation.processing\fP および \f2javax.lang.model\fP パッケージとそのサブパッケージ内に定義されています。 -.LP -.SS -注釈処理の概要 +\f3\-proc:none\fP ץˤä̵ʤꡢѥϻѲǽʤ٤Ƥץå򸡺ޤѥ \f3\-processorpath\fP ץȤäƻǤޤѥꤷʤäϡ桼饹ѥѤޤץåθϡѥ \f2META\-INF/services/javax.annotation.processing.Processor\fP Ȥ̾ΥӥץХե˴ŤƹԤޤΤ褦ʥեˤϡѤ뤹٤Ƥץå̾1 Ԥ 1 ĤĴޤƤޤ̤ˡȤơ\f3\-processor\fP ץȤäƥץåŪ˻ꤹ뤳ȤǤޤ .LP .LP -\f3\-proc:none\fP オプションによって注釈処理が無効化されないかぎり、コンパイラは使用可能なすべての注釈プロセッサを検索します。検索パスは \f3\-processorpath\fP オプションを使って指定できます。 検索パスを指定しなかった場合は、ユーザークラスパスが使用されます。プロセッサの検索は、検索パス上の -.br -\f2\ META\-INF/services/javax.annotation.processing.Processor\fP -.br -という名前のサービスプロバイダ構成ファイルに基づいて行われます。このようなファイルには、使用するすべての注釈プロセッサの名前を、1 行に 1 つずつ含めてください。また、別の方法として、\f3\-processor\fP オプションを使ってプロセッサを明示的に指定することもできます。 +ѥϡޥɹԤΥե䥯饹뤳ȤǡɤΤ褦᤬¸ߤƤ뤫ǧȡץåФ䤤碌ԤΥץåɤǤΤǧޤפΤĤä硢ΥץåƤӽФޤƥץåϡȤ׵פǤޤξ硢Ф̤Υץå򸫤ĤߤϹԤޤ󡣤٤Ƥ᤬׵ᤵƤޤȡѥϤʾץåθԤޤ .LP .LP -コンパイラは、コマンド行のソースファイルやクラスを走査することで、どのような注釈が存在しているかを確認し終わると、プロセッサに対して問い合わせを行い、それらのプロセッサがの注釈を処理できるのかを確認します。一致するものが見つかった場合、そのプロセッサが呼び出されます。各プロセッサは、自身が処理する注釈を「要求」できます。 その場合、それらの注釈に対する別のプロセッサを見つける試みは行われません。すべての注釈が要求されてしまうと、コンパイラはそれ以上プロセッサの検索を行いません。 +줫Υץåˤäƿե뤬ȡ 2 ܤΥ饦ɤϤޤ줿٤ƤΥե뤬졢Ʊͤ᤬ޤΥ饦ɤǸƤӽФ줿ץåϤ٤ơ³ΤɤΥ饦ɤǤƤӽФޤ줬ե뤬ʤʤޤ³ޤ .LP .LP -いずれかのプロセッサによって新しいソースファイルが生成されると、注釈処理の 2 回目のラウンドが開始されます。新しく生成されたすべてのソースファイルが走査され、前回と同様に注釈が処理されます。以前のラウンドで呼び出されたプロセッサはすべて、後続のどのラウンドでも呼び出されます。これが、新しいソースファイルが生成されなくなるまで続きます。 -.LP -.LP -あるラウンドで新しいソースファイルが生成されなかった場合、注釈プロセッサがあと 1 回だけ呼び出され、必要な処理を実行する機会が与えられます。 最後に、\f3\-proc:only\fP オプションが使用されないかぎり、コンパイラは、元のソースファイルと生成されたすべてのソースファイルをコンパイルします。 +饦ɤǿե뤬ʤä硢ץå 1 ƤӽФ졢ɬפʽ¹Ԥ뵡ͿޤǸˡ\f3\-proc:only\fP ץ󤬻ѤʤꡢѥϡΥե줿٤ƤΥե򥳥ѥ뤷ޤ .LP .SS -暗黙的にロードされたソースファイル +Ū˥ɤ줿ե .LP .LP -コンパイラは、一連のソースファイルをコンパイルする際に、別のソースファイルを暗黙的にロードしなければならない場合があります (「型の検索」を参照)。そのようなファイルは、現時点では注釈処理の対象になりません。デフォルトでは、注釈処理が実行され、かつ暗黙的にロードされたソースファイルが 1 つでもコンパイルされた場合にコンパイラは警告を発行します。この警告を抑制する方法については、\-implicit オプションを参照してください。 +ѥϡϢΥե򥳥ѥ뤹ݤˡ̤ΥեŪ˥ɤ뤳Ȥɬפʾ礬ޤ (ַθפ򻲾)Τ褦ʥեϡǤоݤˤʤޤ󡣥ǥեȤǤϡ¹Ԥ졢İŪ˥ɤ줿ե뤬 1 ĤǤ⥳ѥ뤵줿˥ѥϷٹȯԤޤηٹˡˤĤƤϡ\-implicit ץ򻲾ȤƤ .LP -.SH "型の検索" -.LP - +.SH "θ" .LP .LP -ソースファイルをコンパイルする場合、コマンド行で指定したソースファイルに型の定義が見つからないとき、コンパイラは通常、その型に関する情報を必要とします。コンパイラは、ソースファイルで使われているクラスまたはインタフェース、拡張されているクラスまたはインタフェース、あるいは実装されているクラスまたはインタフェースすべてについて、型の情報を必要とします。これには、ソースファイルで明示的には言及されていなくても、継承を通じて情報を提供するクラスとインタフェースも含まれます。 +ե򥳥ѥ뤹硢ޥɹԤǻꤷե˷ĤʤȤѥ̾η˴ؤɬפȤޤѥϡեǻȤƤ륯饹ޤϥ󥿥եĥƤ륯饹ޤϥ󥿥ե뤤ϼƤ륯饹ޤϥ󥿥ե٤ƤˤĤơξɬפȤޤˤϡեŪˤϸڤƤʤƤ⡢Ѿ̤ƾ󶡤륯饹ȥ󥿥եޤޤޤ .LP .LP -たとえば、\f3java.applet.Applet\fP をサブクラスにした場合、\f3アプレットの\fP祖先のクラス(\f3java.awt.Panel\fP、\f3java.awt.Container\fP、\f3java.awt.Component\fP、\f3java.lang.Object\fP)を使用していることになります。 +ȤС\f3java.applet.Applet\fP 򥵥֥饹ˤ硢\f3ץåȤ\fPΥ饹\f3java.awt.Panel\fP\f3java.awt.Container\fP\f3java.awt.Component\fP\f3java.lang.Object\fPˤѤƤ뤳Ȥˤʤޤ .LP .LP -コンパイラは、型の情報が必要になると、その型を定義しているソースファイルまたはクラスファイルを探します。まず、ブートストラップクラスと拡張機能クラスを検索し、続いてユーザークラスパス (デフォルトではカレントディレクトリ) を検索します。ユーザークラスパスは、\f3CLASSPATH\fP 環境変数を設定して定義するか、または \f3\-classpath\fP コマンド行オプションを使って設定します。詳細は、 -.na -\f2「クラスパスの設定」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +ѥϡξɬפˤʤȡηƤ륽եޤϥ饹եõޤޤ֡ȥȥåץ饹ȳĥǽ饹򸡺³ƥ桼饹ѥ (ǥեȤǤϥȥǥ쥯ȥ) 򸡺ޤ桼饹ѥϡ\f3CLASSPATH\fP Ķѿꤷ뤫ޤ \f3\-classpath\fP ޥɹԥץȤäꤷޤܺ٤ϡ֥饹ѥפ򻲾ȤƤ .LP .LP -\-sourcepath オプションが指定されている場合、コンパイラは、指定されたパスからソースファイルを検索します。 それ以外の場合は、ユーザークラスパスからクラスファイルとソースファイルの両方を検索します。 +\-sourcepath ץ󤬻ꤵƤ硢ѥϡꤵ줿ѥ饽ե򸡺ޤʳξϡ桼饹ѥ饯饹եȥեξ򸡺ޤ .LP .LP -\f3\-bootclasspath\fP オプションと \f3\-extdirs\fP オプションを使うと、別のブートストラップクラスや拡張機能クラスを指定できます。 このあとの「クロスコンパイルオプション」を参照してください。 +\f3\-bootclasspath\fP ץ \f3\-extdirs\fP ץȤȡ̤Υ֡ȥȥåץ饹ĥǽ饹ǤޤΤȤΡ֥ѥ륪ץפ򻲾ȤƤ .LP .LP -型の検索に成功したときに得られる結果は、クラスファイル、ソースファイル、またはその両方である場合があります。両方が見つかった場合、そのどちらを使用すべきかを \-Xprefer オプションでコンパイラに指示できます。\f3newer\fP が指定された場合、コンパイラは 2 つのファイルの新しい方を使用します。\f3source\fP が指定された場合、コンパイラはソースファイルを使用します。デフォルトは \f3newer\fP です。 +θȤ̤ϡ饹ե롢ե롢ޤϤξǤ礬ޤξĤä硢ΤɤѤ٤ \-Xprefer ץǥѥ˻ؼǤޤ\f3newer\fP ꤵ줿硢ѥ 2 ĤΥեοѤޤ\f3source\fP ꤵ줿硢ѥϥեѤޤǥեȤ \f3newer\fP Ǥ .LP .LP -型の検索自体によって、または \f3\-Xprefer\fP が設定された結果として必要な型のソースファイルが見つかった場合、コンパイラはそのソースファイルを読み取り、必要な情報を取得します。さらに、コンパイラはデフォルトで、そのソースファイルのコンパイルも行います。\-implicit オプションを使えばその動作を指定できます。\f3none\fP を指定した場合、そのソースファイルのクラスファイルは生成されません。\f3class\fP を指定した場合、そのソースファイルのクラスファイルが生成されます。 +θΤˤäơޤ \f3\-Xprefer\fP ꤵ줿̤ȤɬפʷΥե뤬Ĥä硢ѥϤΥեɤ߼ꡢɬפʾޤˡѥϥǥեȤǡΥեΥѥԤޤ\-implicit ץȤФưǤޤ\f3none\fP ꤷ硢ΥեΥ饹եޤ\f3class\fP ꤷ硢ΥեΥ饹ե뤬ޤ .LP .LP -コンパイラは、注釈処理の完了後に、ある型情報の必要性を認識しない場合があります。その型情報があるソースファイル内に見つかり、かつ \f3\-implicit\fP オプションが指定されていない場合は、そのファイルが注釈処理の対象とならずにコンパイルされることを、コンパイラがユーザーに警告します。この警告を無効にするには、(そのファイルが注釈処理の対象となるように) そのファイルをコマンド行に指定するか、あるいはそのようなソースファイルに対してクラスファイルを生成すべきかどうかを \f3\-implicit\fP オプションを使って指定します。 +ѥϡδλˡ뷿ɬǧʤ礬ޤη󤬤륽ե˸Ĥꡢ \f3\-implicit\fP ץ󤬻ꤵƤʤϡΥե뤬оݤȤʤ餺˥ѥ뤵뤳Ȥ򡢥ѥ餬桼˷ٹ𤷤ޤηٹ̵ˤˤϡ(Υե뤬оݤȤʤ褦) Υե򥳥ޥɹԤ˻ꤹ뤫뤤ϤΤ褦ʥեФƥ饹ե٤ɤ \f3\-implicit\fP ץȤäƻꤷޤ .LP -.SH "プログラマティックインタフェース" -.LP - +.SH "ץޥƥå󥿥ե" .LP .LP -\f3javac\fP は、\f2javax.tools\fP パッケージ内のクラスとインタフェースによって定義される新しい Java Compiler API をサポートします。 +\f3javac\fP ϡ \f2javax.tools\fP ѥåΥ饹ȥ󥿥եˤä뿷 Java Compiler API 򥵥ݡȤޤ .LP .SS -例 + .LP .LP -コマンド行から指定された引数を使ってコンパイルを実行するには、次のようなコードを使用します。 +ޥɹԤꤵ줿Ȥäƥѥ¹ԤˤϡΤ褦ʥɤѤޤ .LP .nf \f3 @@ -595,29 +956,24 @@ .fl int rc = javac.run(null, null, null, args); .fl - -.fl \fP .fi .LP .LP -この場合、標準出力ストリームにすべての診断メッセージが書き出され、コマンド行から呼び出された \f3javac\fP が返すのと同じ終了コードが返されます。 +ξ硢ɸϥȥ꡼ˤ٤Ƥοǥå񤭽Ф졢ޥɹԤƤӽФ줿 \f3javac\fP ֤ΤƱλɤ֤ޤ .LP .LP -\f2javax.tools.JavaCompiler\fP インタフェース上のほかのメソッドを使えば、診断メッセージの処理やファイルの読み取り元/書き込み先の制御などを行えます。 +\f2javax.tools.JavaCompiler\fP 󥿥եΤۤΥ᥽åɤȤСǥåνեɤ߼긵/񤭹ʤɤԤޤ .LP .SS -旧式のインタフェース -.LP -.RS 3 - +켰Υ󥿥ե .LP .LP -\f3注:\fP \ この API は、下位互換性を確保するためだけに残されています。 新しいコードでは、必ず前述の Java Compiler API を使用してください。 +\f3:\fP API ϡ̸ߴݤ뤿˻ĤƤޤɤǤϡɬҤ Java Compiler API ѤƤ .LP .LP -\f2com.sun.tools.javac.Main\fP クラスには、プログラム内からコンパイラを呼び出すための static メソッドが 2 つ用意されています。 それらを次に示します。 +\f2com.sun.tools.javac.Main\fP 饹ˤϡץ⤫饳ѥƤӽФ static ᥽åɤ 2 ѰդƤޤ򼡤˼ޤ .LP .nf \f3 @@ -626,38 +982,29 @@ .fl public static int compile(String[] args, PrintWriter out); .fl - -.fl \fP .fi .LP .LP -\f2args\fP パラメータは、javac プログラムに通常渡される任意のコマンド行引数を表しています。 その概要については、前出の「形式」節を参照してください。 +\f2args\fP ѥ᡼ϡjavac ץ̾ϤǤդΥޥɹ԰ɽƤޤγפˤĤƤϡФΡַ򻲾ȤƤ .LP .LP -\f2out\fP パラメータは、コンパイラの診断メッセージの出力先を示します。 +\f2out\fP ѥ᡼ϡѥοǥåν򼨤ޤ .LP .LP -戻り値は、\f3javac\fP の終了値と同じです。 +ͤϡ\f3javac\fP νλͤƱǤ .LP .LP -名前が \f2com.sun.tools.javac\fP で始まるパッケージ (非公式には \f2com.sun.tools.javac\fP のサブパッケージとして知られる) に含まれる\f3その他の\fPクラスやメソッドは、どれも完全に内部用であり、いつでも変更される可能性があります。 +̾ \f2com.sun.tools.javac\fP ǻϤޤѥå (ˤ \f2com.sun.tools.javac\fP Υ֥ѥåȤΤ) ˴ޤޤ뤽¾Υ饹᥽åɤϡɤⴰѤǤꡢĤǤѹǽޤ .LP -.RE -.SH "例" +.SH "" .LP .SS -簡単なプログラムのコンパイル -.LP -.RS 3 - +ñʥץΥѥ .LP .LP -\f2Hello.java\fP というソースファイルで、\f3greetings.Hello\fP という名前のクラスを定義しているとします。\f2greetings\fP ディレクトリは、ソースファイルとクラスファイルの両方があるパッケージディレクトリで、現在のディレクトリのすぐ下にあります。このため、この例では、デフォルトのユーザークラスパスを使用できます。また、\f3\-d\fP を使って別の出力先ディレクトリを指定する必要もありません。 -.LP -.RS 3 - +\f2Hello.java\fP Ȥեǡ\f3greetings.Hello\fP Ȥ̾Υ饹ƤȤޤ \f2greetings\fP ǥ쥯ȥϡեȥ饹եξѥåǥ쥯ȥǡߤΥǥ쥯ȥΤˤޤΤᡢǤϡǥեȤΥ桼饹ѥѤǤޤޤ\f3\-d\fP Ȥä̤νǥ쥯ȥꤹɬפ⤢ޤ .LP .nf \f3 @@ -704,24 +1051,14 @@ .fl Hello Everyone .fl - -.fl .fi -.RE .LP -.RE .SS -複数のソースファイルのコンパイル -.LP -.RS 3 - +ʣΥեΥѥ .LP .LP -次の例では、パッケージ \f2greetings\fP 内のすべてのソースファイルをコンパイルします。 -.LP -.RS 3 - +Ǥϡѥå \f2greetings\fP Τ٤ƤΥե򥳥ѥ뤷ޤ .LP .nf \f3 @@ -742,26 +1079,14 @@ .fl Aloha.java GutenTag.java Hello.java Hi.java .fl - -.fl - -.fl .fi -.RE .LP -.RE .SS -ユーザークラスパスの指定 -.LP -.RS 3 - +桼饹ѥλ .LP .LP -上の例のソースファイルのうち 1 つを変更し、変更後のファイルを再コンパイルするとします。 -.LP -.RS 3 - +ΥեΤ 1 ĤѹѹΥեƥѥ뤹Ȥޤ .LP .nf \f3 @@ -772,34 +1097,22 @@ .fl % \f3javac greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -\f2greetings.Hi\fP は、\f2greetings\fP パッケージ内のほかのクラスを参照しているため、コンパイラはこれらのクラスを探す必要があります。上の例では、デフォルトのユーザークラスパスが、パッケージディレクトリを含むディレクトリと同じであるため、コンパイルは正常に実行されます。ただし、現在どのディレクトリにいるかに関係なく、このファイルを再コンパイルする場合は、ユーザークラスパスに \f2/examples\fP を追加する必要があります。ユーザークラスパスにエントリを追加するには、\f3CLASSPATH\fP を設定する方法もありますが、ここでは \f3\-classpath\fP オプションを使うことにします。 -.LP -.RS 3 - +\f2greetings.Hi\fP ϡ \f2greetings\fP ѥåΤۤΥ饹򻲾ȤƤ뤿ᡢѥϤΥ饹õɬפޤǤϡǥեȤΥ桼饹ѥѥåǥ쥯ȥޤǥ쥯ȥƱǤ뤿ᡢѥ˼¹ԤޤߤɤΥǥ쥯ȥˤ뤫˴طʤΥեƥѥ뤹ϡ桼饹ѥ \f2/examples\fP ɲäɬפޤ桼饹ѥ˥ȥɲäˤϡ\f3CLASSPATH\fP ꤹˡ⤢ޤǤ \f3\-classpath\fP ץȤȤˤޤ .LP .nf \f3 .fl % \fP\f3javac \-classpath /examples /examples/greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -再度 \f2greetings.Hi\fP を変更してバナーユーティリティーを使うようにした場合は、このバナーユーティリティーもユーザークラスパスを通じてアクセスできるようになっている必要があります。 -.LP -.RS 3 - + \f2greetings.Hi\fP ѹƥХʡ桼ƥƥȤ褦ˤϡΥХʡ桼ƥƥ桼饹ѥ̤ƥǤ褦ˤʤäƤɬפޤ .LP .nf \f3 @@ -808,41 +1121,25 @@ .fl /examples/greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -\f2greetings\fP 内のクラスを実行するには、\f2greetings\fP と、\f2greetings\fP が使うクラスの両方にアクセスできる必要があります。 -.LP -.RS 3 - +\f2greetings\fP Υ饹¹Ԥˤϡ \f2greetings\fP ȡ줬Ȥ饹ξ˥Ǥɬפޤ .LP .nf \f3 .fl % \fP\f3java \-classpath /examples:/lib/Banners.jar greetings.Hi\fP .fl - -.fl .fi -.RE .LP -.RE .SS -ソースファイルとクラスファイルの分離 -.LP -.RS 3 - +եȥ饹եʬΥ .LP .LP -特に大規模プロジェクトの場合は、ソースファイルとクラスファイルを別々のディレクトリに置くと便利なことがあります。クラスファイルの出力先を別に指定するには、\f3\-d\fP を使います。ソースファイルはユーザークラスパスにはないので、\f3\-sourcepath\fP を使って、コンパイラがソースファイルを見つけることができるようにします。 -.LP -.RS 3 - +ä絬ϥץȤξϡեȥ饹ե̡Υǥ쥯ȥ֤ʤȤޤ饹եν̤˻ꤹˤϡ\f3\-d\fP Ȥޤեϥ桼饹ѥˤϤʤΤǡ\f3\-sourcepath\fP Ȥäơѥ餬ե򸫤Ĥ뤳ȤǤ褦ˤޤ .LP .nf \f3 @@ -877,83 +1174,78 @@ .fl Base.class GoodBye.class .fl - -.fl - -.fl .fi -.RE .LP .LP -\f3注:\fP \ コマンド行では \f2src/farewells/Base.java\fP を指定していませんが、このファイルもコンパイラによってコンパイルされています。自動コンパイルを監視するには、\f3\-verbose\fP オプションを使います。 +\f3:\fP ޥɹԤǤ \f2src/farewells/Base.java\fP ꤷƤޤ󤬡Υե⥳ѥˤäƥѥ뤵Ƥޤưѥƻ뤹ˤϡ\f3\-verbose\fP ץȤޤ .LP -.RE .SS -クロスコンパイルの例 -.LP -.RS 3 - +ѥ .LP .LP -ここでは、\f3javac\fP を使って、1.5 VM 上で実行するコードをコンパイルします。 -.LP -.RS 3 - +Ǥϡ\f3javac\fP Ȥäơ1.6 VM Ǽ¹Ԥ륳ɤ򥳥ѥ뤷ޤ .LP .nf \f3 .fl -% \fP\f3javac \-target 1.5 \-bootclasspath jdk1.5.0/lib/rt.jar \\ +% \fP\f3javac \-source 1.6 \-target 1.6 \-bootclasspath jdk1.6.0/lib/rt.jar \\ .fl \-extdirs "" OldCode.java\fP .fl - -.fl .fi -.RE .LP .LP -\f3\-target 1.5\fP オプションにより、1.5 VM と互換性のあるクラスファイルが生成されます。デフォルトでは、\f3javac\fP は JDK 6 用にコンパイルします。 +\f2\-source 1.6\fP ץˤꡢ \f2OldCode.java\fP ΥѥˤϥС 1.6 (ޤ 6) Java ץߥ󥰸줬Ѥޤ\f3\-target 1.6\fP ץˤꡢ1.6 VM ȸߴΤ륯饹ե뤬ޤۤȤɤξ硢\f3\-target\fP ץͤ \f3\-source\fP ץͤˤʤޤǤϡ\f3\-target\fP ץάǤޤ .LP .LP -Java プラットフォーム JDK の \f3javac\fP は、デフォルトでは、Java 2 SDK のブートストラップクラスに対してコンパイルを行うので、Java 2 SDK ではなく JDK 1.5 のブートストラップクラスに対してコンパイルを行うように指定する必要があります。これは、\f3\-bootclasspath\fP および \f3\-extdirs\fP を使って指定します。この指定を行わないと、1.5 VM には存在しない Java 2 プラットフォーム API に対応したコンパイルが行われるため、プログラムの実行時に障害が発生することがあります。 +\f3\-bootclasspath\fP ץѤơŬڤʥСΥ֡ȥȥåץ饹 ( \f2rt.jar\fP 饤֥) ꤹɬפޤꤷʤϡѥˤäƼηٹޤ .LP -.RE -.SH "関連項目" +.nf +\f3 +.fl +% \fP\f3javac \-source 1.6 OldCode.java\fP +.fl +warning: [options] bootstrap class path not set in conjunction with \-source 1.6 +.fl +.fi + .LP - +.LP +ŬڤʥСΥ֡ȥȥåץ饹ꤷʤ硢ѥϸŤ (ǤϡС 1.6 Java ץߥ󥰸) 򿷤֡ȥȥåץ饹Ȥ߹碌ƻѤޤη̡¸ߤʤ᥽åɤؤλȤޤޤƤ뤳Ȥ뤿ᡢ饹ե뤬Ťץåȥե (ξ Java SE 6) ưʤǽޤ +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2「The javac Guide」\fP @ +\f2The javac Guide\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javac/index.html .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jdb(1) \- Java デバッガ」 +jdb(1) \- Java ǥХå .TP 2 o -「javah(1) \- C ヘッダーとスタブファイルジェネレータ」 +javah(1) \- C إåȥ֥ե른ͥ졼 .TP 2 o -「javap(1) \- クラスファイル逆アセンブラ」 +javap(1) \- 饹եե֥ .TP 2 o -「javadoc(1) \- Java API ドキュメントジェネレータ」 +javadoc(1) \- Java API ɥȥͥ졼 .TP 2 o -「jar(1) \- JAR アーカイブツール」 +jar(1) \- JAR ֥ġ .TP 2 o .na -\f2「Java 拡張機能フレームワーク」\fP @ +\f2Java ĥǽե졼\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/extensions/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/javadoc.1 --- a/jdk/src/linux/doc/man/ja/javadoc.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/javadoc.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,328 +19,244 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javadoc 1 "02 Jun 2010" -.SH "名前" -javadoc \- Java API ドキュメントジェネレータ -.RS 3 - -.LP -.LP -Java ソースファイルから、API ドキュメントの HTML ページを生成します。このドキュメントで紹介されている Javadoc の例は、Sun Solaris を使用した場合のものです。 -.LP -.RE -.SH "形式" -.LP +.TH javadoc 1 "14 Apr 2011" +.SH "̾" +javadoc \- Java API ɥȥͥ졼 +.LP +Java ե뤫顢API ɥȤ HTML ڡޤΥɥȤǾҲ𤵤Ƥ Javadoc ϡ Solaris ѤΤΤǤ +.SH "" .LP \f4javadoc\fP\f2\ [\ \fP\f2options\fP\f2\ ]\ [\ packagenames\ ]\ [\ sourcefilenames\ ]\ [\ \-subpackages\fP\ \f2pkg1:pkg2:...\fP\f2\ ]\ [\ \fP\f2@argfiles\fP\f2\ ]\fP .LP -.LP -引数を指定する順序は任意です。Javadoc ツールでの、処理対象の \f2.java\fP ファイルを決定する方法の詳細については、「ソースファイルの処理」を参照してください。 -.LP -.RS 3 - -.LP +ꤹǤդǤJavadoc ġǤΡоݤ .java եꤹˡξܺ٤ˤĤƤϡ֥եν\f2򻲾\fPƤ .RS 3 .TP 3 options -このドキュメントで説明されているコマンド行オプションです。Javadoc オプションの標準的な使用法については、「使用例」を参照してください。 +ΥɥȤƤ륳ޥɹԥץǤJavadoc ץɸŪʻˡˤĤƤϡֻפ򻲾ȤƤ .TP 3 packagenames -スペースで区切られた一連のパッケージ名です。 たとえば、\f2java.lang\ java.lang.reflect\ java.awt\fP のように指定します。ドキュメント化するパッケージを個別に指定する必要があります。ワイルドカードは使用不可です。 再帰的処理のためには、\-subpackages を使用します。Javadoc ツールは、\f2\-sourcepath\fP を使ってこれらのパッケージ名を検索します。「1 つ以上のパッケージのドキュメント化」の例を参照してください。 +ڡǶڤ줿ϢΥѥå̾ǤȤС \f2java.lang\ java.lang.reflect\ java.awt Τ褦˻ꤷޤ\fPɥȲѥå̤˻ꤹɬפޤ磻ɥɤϻԲĤǤƵŪΤˤϡ\-subpackages ѤޤJavadoc ġϡ\f2\-sourcepath\fP ѤƤΥѥå̾򸡺ޤ1 İʾΥѥåΥɥȲפ򻲾ȤƤ .TP 3 sourcefilenames -スペースで区切られた一連のソースファイル名です。各ファイルは、パスで始まります。アスタリスク (*) などのワイルドカードを含めることができます。 Javadoc ツールが処理するのは、ファイル名が「.java」という拡張子で終わり、その拡張子を除いた名前が実際に有効なクラス名であるすべてのファイルです ( +ڡǶڤ줿ϢΥե̾Ǥ ƥեϡѥǻϤޤޤꥹ (*) ʤɤΥ磻ɥɤޤ뤳ȤǤޤJavadoc ġ뤬Τϡե̾.javaפȤĥҤǽꡢγĥҤ̾ºݤͭʥ饹̾Ǥ뤹٤ƤΥեǤ ( .na -\f2「Identifiers」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625を参照)。したがって、ハイフンを含む名前 (\f2X\-Buffer\fP など) や、その他の無効な文字を含む名前を付けることによって、それらのファイルをドキュメント化の対象から除外できます。これは、テスト用のファイルや、テンプレートから生成されたファイルの場合に便利です。 ソースファイル名の前に指定したパスによって、javadoc がそのファイルを検索する場所が決まります。Javadoc ツールは、これらのソースファイル名を検索するときに \f2\-sourcepath\fP は使いません。相対パスは、現在のディレクトリからの相対パスです。 \f2Button.java\fP を渡すことは、\f2./Button.java\fP を渡すことと同じです。ソースファイル名をフルパスで指定すると、\f2/home/src/java/awt/Graphics*.java\fP のようになります。「1 つ以上のクラスのドキュメント化」の例を参照してください。また、「パッケージとクラスのドキュメント化」の例のように、パッケージ名とソースファイル名を混在させることもできます。 +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625򻲾)äơϥեޤ̾ ( \f2X\-Buffer\fP ʤ) 䡢¾̵ʸޤ̾դ뤳ȤˤäơΥեɥȲоݤǤޤϡƥѤΥե䡢ƥץ졼Ȥ줿եξǤե̾˻ꤷѥˤäơjavadoc Υե򸡺꤬ޤޤJavadoc ġϡΥե̾򸡺Ȥˤ \f2\-sourcepath\fP ѤޤХѥϸߤΥǥ쥯ȥȤ뤿ᡢ \f2Button.java\fP ϤȤϡ \f2./Button.java\fP ϤȤƱǤե̾եѥǻꤹȡ \f2/home/src/java/awt/Graphics*.java Τ褦ˤʤޤ\fP 1 İʾΥ饹ΥɥȲפ򻲾ȤƤޤ֥ѥåȥ饹ΥɥȲפΤ褦ˡѥå̾ȥե̾򺮺ߤ뤳ȤǤޤ .TP 3 \-subpackages pkg1:pkg2:... -ソースファイルから指定されたパッケージおよびそのサブパッケージ内に再帰的にドキュメントを生成します。パッケージ名またはソースファイル名を指定する必要はありません。 +ե뤫ꤵ줿ѥåӤΥ֥ѥå˺ƵŪ˥ɥȤޤѥå̾ޤϥե̾ꤹɬפϤޤ .TP 3 @argfiles -Javadoc オプション、パッケージ名、およびソースファイル名を任意の順序で並べたリストが含まれる 1 つ以上のファイルです。このファイルの中では、ワイルドカード (*) および \f2\-J\fP オプションは指定できません。 -.RE - -.LP +Javadoc ץ󡢥ѥå̾ӥե̾Ǥդν¤٤ꥹȤޤޤ 1 İʾΥեǤ磻ɥ (*) \f2\-J\fP ץϡΥեǤϻǤޤ .RE -.SH " 説明" -.LP -.LP -\f3Javadoc\fP ツールは、一連の Java ソースファイルにある宣言およびドキュメンテーションコメントを解析し、デフォルトでは public クラス、protected クラス、入れ子にされたクラス (匿名の内部クラスは除く)、インタフェース、コンストラクタ、メソッド、およびフィールドについて説明した一連の HTML ページを生成します。また、API (アプリケーションプログラミングインタフェース) ドキュメントの生成や、一連のソースファイルの実装ドキュメントの生成に使用できます。 -.LP -.LP -Javadoc ツールは、パッケージ全体、個々のソースファイル、またはその両方に対して実行できます。javadoc ツールをパッケージ全体に対して実行する場合は、最上位ディレクトリから再帰的にたどるために \f2\-subpackages\fP を使用するか、パッケージ名の明示的なリストを渡します。個々ソースファイルに対して javadoc を実行する場合は、一連のソース (\f2.java\fP) ファイル名を渡します。具体的な例は、このドキュメントの最後に紹介します。次に、Javadoc によるソースファイルの処理について説明します。 -.LP +.SH " " +.LP +\f3Javadoc\fP ġϡϢ Java եˤӥɥơ󥳥ȤϤǥեȤǤ public 饹protected 饹Ҥˤ줿饹 (ƿ̾饹Ͻ)󥿥ե󥹥ȥ饯᥽åɡӥեɤˤĤϢ HTML ڡޤޤAPI (ץꥱץߥ󥰥󥿥ե) ɥȤ䡢ϢΥեμɥȤ˻ѤǤޤ +.LP +Javadoc ġϡѥåΡġΥե롢ޤϤξФƼ¹ԤǤޤѥåΤΥɥȲԤˤϡ\f2\-subpackages\fP ѤƺǾ̥ǥ쥯ȥ꤫鲼˺ƵŪˤɤ뤫ѥå̾ŪʥꥹȤϤޤġեФ javadoc ¹ԤϡϢΥ (.\f2.java\fP) ե̾ϤޤŪϡΥɥȤκǸ˾Ҳ𤷤ޤˡJavadoc ˤ륽եνˤĤޤ .SS -ソースファイルの処理 -.LP -.LP -Javadoc ツールは、末尾に \f2.java\fP の付いたファイル以外に、ソースファイルで説明する他のファイルも処理します。個々のソースファイル名を明示的に渡すことによって Javadoc ツールを実行する場合、どの \f2.java\fP ファイルを処理するかを正確に指定できます。ただし、多くの開発者はこの方法では作業しません。 パッケージ名を渡すほうが簡単だからです。ソースファイル名を明示的に指定しなくても、Javadoc ツールは 3 つの方法で実行できます。この方法は、(1) パッケージ名を渡す、(2) \f2\-subpackages\fP を使用する、(3) ソースファイル名にワイルドカードを使用する (\f2*.java\fP) という方法です。これらの方法を使用する場合、Javadoc ツールは、\f2.java\fP ファイルが次のすべての要件を満たしている場合にかぎり、このファイルを処理します。 -.LP +եν +.LP +Javadoc ġϡ\f2.java\fPפΥեǤʤ֥եפ뤽¾ΥեޤġΥե̾ŪϤȤˤä Javadoc ġ¹Ԥ硢ɤ \f2.java\fP ե뤫Τ˻Ǥޤ¿γȯԤϤˡǤϺȤޤ󡣥ѥå̾ϤۤñǤե̾Ū˻ꤷʤƤ⡢Javadoc ġ 3 ĤˡǼ¹ԤǤޤˡȤϡ(1) ѥå̾Ϥ(2) \f2\-subpackages\fP Ѥ롢(3) ե̾ǥ磻ɥɤѤ (\f2*.java\fP) 3 ĤǤξ硢Javadoc ġ뤬\f2.java\fPץեνԤΤϡΥե뤬Τ٤Ƥ׷Ǥ .RS 3 .TP 2 o -名前から \f2.java\fP の接尾辞を取り除くと、実際に有効なクラス名になっている (有効な文字については、 +̾\f2.java\fPפȼºݤͭʥ饹̾ˤʤäƤ (ͭʸˤĤƤ .na -\f2「Identifiers」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625を参照) +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625򻲾) .TP 2 o -ソースツリーのルートから相対的なディレクトリパスが、区切り文字をドットに変換すると、実際に有効なパッケージ名になっている +ĥ꡼Υ롼ȤŪʥǥ쥯ȥѥڤʸɥåȤѴȡºݤͭʥѥå̾ˤʤäƤ .TP 2 o -パッケージ文には有効なパッケージ名が含まれる (前項目で指定) +ѥåʸˤͭʥѥå̾ޤޤ (ܤǻ) .RE - -.LP -.LP -\f3リンクの処理\fP \- Javadoc ツールは、処理の実行中に、その実行でドキュメント化されるパッケージ、クラス、およびメンバーの名前に対して、自動的に相互参照リンクを追加します。このようなリンクは、次のような場所に追加されます。 -.LP +.LP +\f3󥯤ν\fP \- Javadoc ġϡμ¹ˡμ¹ԤǥɥȲѥå饹ӥС̾ФơưŪ߻ȥ󥯤ɲäޤΤ褦ʥ󥯤ϡΤ褦ʾɲäޤ .RS 3 .TP 2 o -宣言 (戻り値の型、引数の型、フィールドの型) + (ͤηηեɤη) .TP 2 o -\f2@see\fP タグから生成された [関連項目] セクション +\f2@see\fP 줿 [Ϣ] .TP 2 o -\f2{@link}\fP タグから生成されたインラインテキスト +\f2{@link}\fP 줿饤ƥ .TP 2 o -\f2@throws\fP タグから生成された例外の名前 +\f2@throws\fP 줿㳰̾ .TP 2 o -"インタフェースのメンバーに対する [定義] リンクと、クラスのメンバーに対する [オーバーライド] リンク +󥿥եΥСФץ󥯤ȡ饹ΥСФ֥С饤ɡץ .TP 2 o -パッケージ、クラス、およびメンバーを列挙している概要テーブル +ѥå饹ӥС󤷤Ƥ복ץơ֥ .TP 2 o -パッケージおよびクラスの継承ツリー +ѥåӥ饹ηѾĥ꡼ .TP 2 o -索引 + .RE - -.LP -.LP -コマンド行で指定しなかったクラスについての既存のテキスト (別に生成したテキスト) に対してハイパーリンクを追加するには、\f2\-link\fP および \f2\-linkoffline\fP オプションを利用できます。 -.LP -.LP -\f3その他の処理についての詳細\fP \- Javadoc ツールは、実行するたびに 1 つの完全なドキュメントを作成します。 ドキュメントを追加生成することはできません。 つまり、Javadoc ツールの以前の実行結果を修正したり、その内容を直接組み入れたりすることはできません。ただし、前述のように、以前の実行結果に対してリンクを追加することはできます。 -.LP -.LP -実装上の理由から、Javadoc ツールは、処理を実行するために java コンパイラを必要とし、java コンパイラに依存しています。Javadoc ツールは \f2javac\fP の一部を呼び出すことにより、宣言をコンパイルし、メンバーの実装は無視します。Javadoc ツールは、クラス階層を含むクラスの豊富な内部表現とクラスの「使用」関係を構築し、その情報から HTML を生成します。さらに、Javadoc ツールは、ソースコードのドキュメンテーションコメントから、ユーザーの提供したドキュメントも取得します。 -.LP -.LP -Javadoc ツールは、メソッド本体のない純粋なスタブファイルである \f2.java\fP ソースファイルに対しても、実行することができます。したがって、API の作成時には、実装を記述する前の設計の早い段階で、ドキュメンテーションコメントを記述して javadoc ツールを実行できます。 -.LP -.LP -コンパイラに依存することによって、HTML 出力は、実際の実装に正確に対応します。 実際の実装は、明示的なソースコードにではなく、暗黙のソースコードに依存する場合があります。たとえば、Javadoc ツールは、\f2.class\fP ファイル内に存在するが、ソースコード内には存在しない +.LP +ޥɹԤǻꤷʤä饹ˤĤƤδ¸Υƥ (̤ƥ) Фƥϥѡ󥯤ɲäˤϡ\f2\-link\fP \f2\-linkoffline\fP ץѤǤޤ +.LP +\f3¾νˤĤƤξܺ\fP \- Javadoc ġϡ¹Ԥ뤿Ӥ 1 ĤδʥɥȤޤɥȤɲ뤳ȤϤǤޤ󡣤ĤޤꡢJavadoc ġΰμ¹Է̤ꡢƤľȤ줿ꤹ뤳ȤϤǤޤ󡣤ҤΤ褦ˡμ¹Է̤Фƥ󥯤ɲä뤳ȤϤǤޤ +.LP +ͳ顢Javadoc ġϡ¹Ԥ뤿 java ѥɬפȤjava ѥ˰¸ƤޤJavadoc ġϡ \f2javac\fP ΰƤӽФ򥳥ѥ뤷ޤСμ̵뤷ޤJavadoc ġϡ饹ؤޤ९饹˭٤ɽȥ饹Ρֻѡ״طۤξ󤫤 HTML ޤˡJavadoc ġϡɤΥɥơ󥳥Ȥ顢桼󶡤ɥȤޤ +.LP +ºݤˤϡJavadoc ġϡ᥽åΤʤʥ֥եǤ褦 \f2.java\fP եǤưޤäơAPI κˤϡ򵭽Ҥ߷פᤤʳǡɥơ󥳥Ȥ򵭽Ҥ javadoc ġ¹ԤǤޤ +.LP +ѥ˰¸뤳ȤˤäơHTML ϤϡºݤμΤбޤºݤμϡŪʥɤˤǤϤʤۤΥɤ˰¸礬ޤȤСJavadoc ġϡ.class եˤ¸ߤ뤬ɤˤ¸ߤʤ .na -\f2デフォルトコンストラクタ\fP @ +\f2ǥեȥ󥹥ȥ饯\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#36154 (Java 言語仕様のセクション 8.6.7) をドキュメント化します。 -.LP -.LP -通常、Javadoc ツールでは、ソースファイルのコードが不完全またはエラーを含んでいる場合でもドキュメントを生成できます。このため、デバッグやトラブルシューティングを完了する前にドキュメントを生成できます。たとえば、Java 言語仕様によると、抽象メソッドを含むクラスは、それ自体抽象として宣言されなければなりません。このエラーを検出すると、javac コンパイラは停止しますが、Javadoc ツールは警告を出さずに処理を続行します。Javadoc ツールはドキュメンテーションコメントの基本的なチェックを行います。ドキュメンテーションコメントをより詳しくチェックする必要がある場合は、DocCheck ドックレットを使用してください。 -.LP -.LP -Javadoc ツールは、ドキュメントの内部構造を構築する際、参照クラスをすべてロードします。このため、Javadoc ツールは、ブートストラップクラス、拡張機能、またはユーザークラスにかかわらず、すべての参照クラスを検索できなければなりません。詳細は、 +http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#36154 (Java ͤΥ 8.6.7) \f2ɥȲ\fP ޤ +.LP +̾Javadoc ġǤϡեΥɤԴޤϥ顼ޤǤǤɥȤǤޤΤᡢǥХåȥ֥륷塼ƥ󥰤λ˥ɥȤǤޤȤСJava ͤˤȡݥ᥽åɤޤ९饹ϡ켫ݤȤʤФʤޤ󡣤Υ顼򸡽Фȡjavac ѥߤޤJavadoc ġϷٹФ˽³ԤޤJavadoc ġϥɥơ󥳥ȤδŪʥåԤޤɥơ󥳥ȤܤåɬפϡDocCheck ɥååȤѤƤ +.LP +Javadoc ġϡɥȤ¤ۤݡȥ饹򤹤٤ƥɤޤΤᡢJavadoc ġϡ֡ȥȥåץ饹ĥǽޤϥ桼饹ˤ餺٤Ƥλȥ饹򸡺ǤʤФʤޤ󡣾ܺ٤ϡ .na -\f2「クラスの検索方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.htmlを参照してください。通常、作成するクラスは、拡張機能としてロードするか、Javadoc ツールのクラスパス内に置く必要があります。 -.LP +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html򻲾ȤƤ̾륯饹ϡĥǽȤƥɤ뤫Javadoc ġΥ饹ѥ֤ɬפޤ .SS -Javadoc のドックレット -.LP -.LP -Javadoc ツールの出力の内容と形式は、ドックレットを使ってカスタマイズできます。Javadoc ツールには、標準ドックレットと呼ばれるデフォルトの「組み込み」ドックレットがあります。 標準ドックレットは、HTML 形式の API ドキュメントを生成します。標準ドックレットを修正またはサブクラス化することや、HTML、XML、MIF、RTF などの好みの出力形式を生成する独自のドックレットを記述することも可能です。ドックレットとその使用法については、次の項目を参照してください。 -.LP +Javadoc Υɥåå +.LP +Javadoc ġνϤƤȷϡɥååȤȤäƥޥǤޤJavadoc ġˤϡɸɥååȤȸƤФǥեȤΡȤ߹ߡץɥååȤޤɸɥååȤϡHTML API ɥȤޤɸɥååȤޤϥ֥饹뤳Ȥ䡢HTMLXMLMIFRTF ʤɤιߤνϷȼΥɥååȤ򵭽Ҥ뤳ȤǽǤɥååȤȤλˡˤĤƤϡιܤ򻲾ȤƤ .RS 3 .TP 2 o .na -\f2Javadoc のドックレット\fP @ +\f2Javadoc Υɥåå\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html .TP 2 o -\f2\-doclet\fP コマンド行オプション +\f2\-doclet\fP ޥɹԥץ .RE - -.LP -.LP -\f2\-doclet\fP コマンド行オプションでカスタムドックレットが指定されていない場合、Javadoc ツールは、デフォルトの標準ドックレットを使用します。javadoc ツールには、使用されているドックレットに関係なく使用できるコマンド行オプションがあります。標準ドックレットでは、これらのほかに、いくつかのコマンド行オプションが追加されます。どちらのオプションについても、このあとの「オプション」で説明します。 -.LP +.LP +\f2\-doclet\fP ޥɹԥץǥɥååȤꤵƤʤ硢Javadoc ġϡǥեȤɸɥååȤѤޤjavadoc ġˤϡѤƤɥååȤ˴طʤѤǤ륳ޥɹԥץ󤬤ޤɸɥååȤǤϡΤۤˡĤΥޥɹԥץɲäޤɤΥץˤĤƤ⡢ΤȤΡ֥ץפޤ .SS -関連ドキュメントおよびドックレット -.LP +ϢɥȤӥɥåå .RS 3 .TP 2 o .na -\f2Javadoc に施された機能強化\fP @ +\f2Javadoc ˻ܤ줿ĥǽ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html \- Javadoc で追加された改良点の詳細 +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html \- Javadoc 1.4 ɲä줿ξܺ .TP 2 o .na \f2Javadoc FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html \- 頻繁に寄せられる質問に対する回答、Javadoc 関連のツールについての情報、およびバグの回避方法 +http://java.sun.com/j2se/javadoc/faq/index.html \- ˤ˴󤻤ФJavadoc ϢΥġˤĤƤξ󡢤ӥХβˡ .TP 2 o .na \f2How to Write Doc Comments for Javadoc\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html \- ドキュメンテーションコメントの記述方法に関する Sun の規約 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html \- ɥơ󥳥Ȥεˡ˴ؤ Sun ε .TP 2 o .na \f2Requirements for Writing API Specifications\fP @ .fi -http://java.sun.com/j2se/javadoc/writingapispecs/index.html \- Java 2 プラットフォーム仕様を記述する際に使用された標準要件。この情報は、ソースファイルのドキュメンテーションコメント形式で API 仕様を記述する場合にも、その他の形式で記述する場合にも役立ちます。検証可能なアサーションを満たすパッケージ、クラス、インタフェース、フィールド、およびメソッドについての要件を定めています。 +http://java.sun.com/j2se/javadoc/writingapispecs/index.html \- Java SE ץåȥեͤ򵭽Ҥݤ˻Ѥ줿ɸ׷盧ξϡեΥɥơ󥳥ȷ API ͤ򵭽Ҥˤ⡢¾ηǵҤˤΩޤڲǽʥѥå饹󥿥եեɡӥ᥽åɤˤĤƤ׷Ƥޤ .TP 2 o .na -\f2ドキュメンテーションコメントの仕様\fP @ +\f2ɥơ󥳥Ȥλ\fP @ .fi -http://java.sun.com/docs/books/jls/first_edition/html/18.doc.html \- ドキュメンテーションコメントのオリジナル仕様については、『Java Language Specification』 (James Gosling、Bill Joy、Guy Steele 共著) の初版の第 18 章「Documentation Comments」を参照してください。この章は、第 2 版では削除されました。 +http://java.sun.com/docs/books/jls/first_edition/html/18.doc.html \- ɥơ󥳥ȤΥꥸʥͤˤĤƤϡJava Language Specification (James GoslingBill JoyGuy Steele ) νǤ 18 ϡDocumentation Commentsפ򻲾ȤƤξϤϡ 2 ǤǤϺޤ .TP 2 o .na -\f2DocCheck ドックレット\fP @ +\f2DocCheck ɥåå\fP @ .fi -http://java.sun.com/javadoc/doccheck \- ソースファイル内のドキュメンテーションコメントをチェックし、検出されたエラーや不正のレポートを生成します。Sun Doc Check ユーティリティーの一部です。Sun Doc Check ユーティリティーの一部です。 +http://java.sun.com/javadoc/doccheck \- եΥɥơ󥳥ȤåФ줿顼ΥݡȤޤDoc Check 桼ƥƥΰǤ .TP 2 o .na -\f2MIF ドックレット\fP @ +\f2MIF ɥåå\fP @ .fi -http://java.sun.com/javadoc/mifdoclet \- MIF、FrameMaker、PDF の書式で API ドキュメントを自動生成します。MIF は Adobe FrameMaker の交換書式です。 +http://java.sun.com/javadoc/mifdoclet \- MIFFrameMakerPDF ν񼰤 API ɥȤưޤMIF Adobe FrameMaker θ򴹽񼰤Ǥ .RE - -.LP .SS -用語 -.LP -.LP -\f2「ドキュメンテーションコメント」\fP、\f2「doc コメント」\fP、\f2「主説明」\fP、\f2「タグ」\fP、\f2「ブロックタグ」\fP、および\f2「インラインタグ」\fPの用語については、「ドキュメンテーションコメント」で説明します。次のその他の用語は、Javadoc ツールのコンテキストで特定の意味を持ちます。 -.LP +Ѹ +.LP +\f2֥ɥơ󥳥ȡ\fP\f2doc ȡ\fP\f2ּ\fP\f2֥\fP\f2֥֥å\fP\f2֥饤󥿥\fPѸˤĤƤϡ֥ɥơ󥳥ȡפޤʲΤ¾ѸϡJavadoc ġΥƥȤΰ̣ޤ .RS 3 .TP 3 -生成ドキュメント (generated document) -javadoc ツールが Java ソースコード内のドキュメンテーションコメントから生成したドキュメントのことです。デフォルトの生成ドキュメントは HTML 形式で、標準ドックレットによって作成されます。 +ɥ (generated document) +javadoc ġ뤬 Java Υɥơ󥳥ȤɥȤΤȤǤǥեȤɥȤ HTML ǡɸɥååȤˤäƺޤ .LP .TP 3 -名前 (name) -Java 言語で書かれたプログラム要素の名前、つまりパッケージ、クラス、インタフェース、フィールド、コンストラクタ、またはメソッドの名前のことです。名前は、\f2java.lang.String.equals(java.lang.Object)\fP のように完全修飾することも、\f2equals(Object)\fP のように部分修飾することもできます。 +̾ (name) +Java ǽ񤫤줿ץǤ̾Ĥޤѥå饹󥿥եեɡ󥹥ȥ饯ޤϥ᥽åɤ̾ΤȤǤ̾ϡ \f2java.lang.String.equals(java.lang.Object)\fP Τ褦ʴ̾ˤ뤳Ȥ⡢ \f2equals(Object)\fP Τ褦ʬ̾ˤ뤳ȤǤޤ .LP .TP 3 -ドキュメント化されるクラス (documented classes) -javadoc ツールの実行によって詳細なドキュメントが生成されるクラスおよびインタフェースのことです。ドキュメント化するには、ソースファイルが使用可能でなければならず、ソースファイル名またはパッケージ名を javadoc コマンドに渡され、アクセス修飾子 (public、protected、package\-private または private) によってフィルタ処理されないようにしなければなりません。ドキュメント化されるクラスは、javadoc ツールの出力に組み込まれるクラス、つまり「包含クラス」とも呼ばれます。 +ɥȲ륯饹 (documented classes) +javadoc ġμ¹Ԥˤäƾܺ٤ʥɥȤ륯饹ӥ󥿥եΤȤǤɥȲˤϡե뤬ѲǽǤʤФʤ餺ե̾ޤϥѥå̾ javadoc ޥɤϤ졢 (publicprotectedpackage\-private ޤ private) ˤäƥե륿ʤ褦ˤʤФʤޤ󡣥ɥȲ륯饹ϡjavadoc ġνϤȤ߹ޤ륯饹Ĥޤޥ饹פȤƤФޤ .LP .TP 3 -包含クラス (included classes) -ツールの実行によって詳細なドキュメントが生成されるクラスおよびインタフェースのことです。「ドキュメント化されるクラス」 と同じ。 +ޥ饹 (included classes) +ġμ¹Ԥˤäƾܺ٤ʥɥȤ륯饹ӥ󥿥եΤȤǤ֥ɥȲ륯饹פƱ .LP .TP 3 -除外クラス (excluded classes) -ツールの実行によって詳細なドキュメントが生成されないクラスおよびインタフェースのことです。 +饹 (excluded classes) +ġμ¹Ԥˤäƾܺ٤ʥɥȤʤ饹ӥ󥿥եΤȤǤ .LP .TP 3 -参照クラス (referenced classes) -ドキュメント化されるクラスおよびインタフェースの定義 (実装) またはドキュメンテーションコメントの中で明示的に参照されているクラスおよびインタフェースのことです。参照の例としては、戻り値の型、パラメータの型、キャストの型、拡張されたクラス、実装されたインタフェース、インポートされたクラス、メソッド本体で使用されるクラス、@see、{@link}、{@linkplain}、{@inheritDoc} タグなどがあります。この定義は +ȥ饹 (referenced classes) +ɥȲ륯饹ӥ󥿥ե () ޤϥɥơ󥳥ȤŪ˻ȤƤ륯饹ӥ󥿥եΤȤǤȤȤƤϡͤηѥ᡼η㥹Ȥηĥ줿饹줿󥿥եݡȤ줿饹᥽åΤǻѤ륯饹@see{@link}{@linkplain}{@inheritDoc} ʤɤޤ .na \f21.3\fP @ .fi -http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/javadoc.html#referencedclasses から変更されています。javadoc ツールを実行するときは、Javadoc のブートクラスパスおよびクラスパス内にあるすべての参照クラスをメモリーにロードする必要があります。参照クラスが見つからない場合は、「クラスが見つかりません」という警告が表示されます。Javadoc ツールは、クラスの存在とそのメンバーの完全指定の名前を判別するのに必要なすべての情報を、.class ファイルから引き出すことができます。 +http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/javadoc.html#referencedclasses ѹƤޤjavadoc ġ¹ԤȤϡJavadoc Υ֡ȥ饹ѥӥ饹ѥˤ뤹٤Ƥλȥ饹꡼˥ɤɬפޤȥ饹Ĥʤϡ֥饹ĤޤפȤٹɽޤJavadoc ġϡ饹¸ߤȤΥСδ̾Ƚ̤Τɬפʤ٤Ƥξ.class ե뤫ФȤǤޤ .LP .TP 3 -外部参照クラス (external referenced classes) -参照クラスのうち、javadoc ツールの実行中にドキュメントが生成されないクラスのことです。つまり、これらのクラスは、コマンド行で Javadoc ツールに渡されていません。生成ドキュメント内でこれらのクラスにリンクしている箇所は、「外部参照」または「外部リンク」と呼ばれます。たとえば、\f2java.awt\fP パッケージに対してだけ Javadoc ツールを実行した場合、\f2Object\fP などの \f2java.lang\fP 内のすべてのクラスが外部参照クラスになります。外部参照クラスにリンクするには、\f2\-link\fP および \f2\-linkoffline\fP オプションを使用します。外部参照クラスには、通常そのソースコメントを javadoc ツールの実行で利用できないという重要な特徴があります。この場合、それらのコメントを継承することはできません。 +ȥ饹 (external referenced classes) +ȥ饹Τjavadoc ġμ¹˥ɥȤʤ饹ΤȤǤĤޤꡢΥ饹ϡޥɹԤ Javadoc ġϤƤޤɥǤΥ饹˥󥯤Ƥսϡֳȡפޤϡֳ󥯡פȸƤФޤȤСJavadoc ġμ¹оݤ \f2java.awt\fP ѥåΤߤǤ硢 \f2java.lang\fP Τ٤ƤΥ饹 ( \f2Object\fPʤ) ȥ饹ˤʤޤȥ饹˥󥯤ˤϡ \f2\-link\fP \f2\-linkoffline\fP ץѤޤȥ饹ˤϡ̾綠ΥȤ javadoc ġμ¹ԤѤǤʤȤפħޤξ硢ΥȤѾ뤳ȤϤǤޤ .RE - -.LP -.SH "ソースファイル" -.LP -.LP -Javadoc ツールは、4 種類の異なるソースファイルから出力結果を生成します。そのファイルは、クラスの Java 言語ソースファイル (\f2.java\fP)、パッケージコメントファイル、概要コメントファイル、およびその他の処理されないファイルです。また、ドキュメント化しないがソースツリーに存在する場合があるテストファイルやテンプレートファイルについても説明します。 -.LP +.SH "ե" +.LP +Javadoc ġ 4 ΰۤʤ֥ץե뤫Ϥޤ 4 Ȥϡ饹 Java 쥽ե (\f2.java\fP)ѥåȥե롢ץȥե롢Ӥ¾νʤեǤޤɥȲʤĥ꡼¸ߤ礬ƥȥեƥץ졼ȥեˤĤƤޤ .SS -クラスソースコードファイル -.LP -.LP -それぞれのクラスまたはインタフェース、およびそのメンバーは、独自のドキュメンテーションコメントを持つことができ、それを \f2.java\fP ファイル内に保持します。ドキュメンテーションコメントの詳細は、「ドキュメンテーションコメント」を参照してください。 -.LP +饹ɥե +.LP +줾Υ饹ޤϥ󥿥եӤΥСϡȼΥɥơ󥳥ȤĤȤǤ \f2.java\fP եݻޤɥơ󥳥Ȥξܺ٤ϡ֥ɥơ󥳥ȡפ򻲾ȤƤ .SS -パッケージコメントファイル -.LP -.LP -それぞれのパッケージは、独自のドキュメンテーションコメントを持つことができ、それを専用の「ソース」ファイルに保持します。 その内容は、Javadoc ツールによって生成される概要ページに組み込まれます。このコメントには、通常、そのパッケージ全体に当てはまるドキュメントを記述します。 -.LP -.LP -パッケージコメントファイルを作成する場合、コメントの格納先として、次の 2 つのファイルのいずれかを選択できます。 -.LP +ѥåȥե +.LP +줾ΥѥåϡȼΥɥơ󥳥ȤĤȤǤѤΡ֥ץեݻޤƤϡJavadoc ġˤä복ץڡȤ߹ޤޤΥȤˤϡ̾ΥѥåΤƤϤޤɥȤ򵭽Ҥޤ +.LP +ѥåȥե硢ȤγǼȤơ 2 ĤΥեΤ줫Ǥޤ .RS 3 .TP 2 o -\f2package\-info.java\fP \- パッケージ宣言、パッケージ注釈、パッケージコメント、および Javadoc タグを格納できます。このファイルは JDK 5.0 で導入されたものであり、package.html よりも推奨されています。 +\f2package\-info.java\fP \- ѥåѥåᡢѥåȡ Javadoc ǼǤޤΥեϰ̤ˡpackage.html 侩ޤ .TP 2 o -\f2package.html\fP \- 格納できるのはパッケージコメントと Javadoc タグだけです。 パッケージ注釈は格納できません。 +\f2package.html\fP \- ǼǤΤϥѥåȤ Javadoc ǤѥåϳǼǤޤ .RE - -.LP -.LP -各パッケージは、単一の \f2package.html\fP ファイル、単一の \f2package\-info.java\fP ファイルのいずれかを持つことができますが、両方を持つことはできません。このどちらかのファイルを \f2.java\fP ファイルとともに、ソースツリー内のそのパッケージのディレクトリ内に配置してください。 -.LP -.LP -\f4package\-info.java\fP \- このファイルには、次の構造のパッケージコメントを格納できます。 コメントはパッケージ宣言の前に配置します。 -.LP -.LP -File:\f2java/applet/package\-info.java\fP -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 +.LP +ƥѥåǤϡñ \f2package.html\fP ե롢ñ \f2package\-info.java\fP եΤ줫Ǥޤξ򤹤뤳ȤϤǤޤ󡣤Τɤ餫Υե \f2.java\fP եȤȤˡĥ꡼ΤΥѥåΥǥ쥯ȥ֤Ƥ +.LP +\f4package\-info.java\fP \- Υեˤϡι¤ΥѥåȤǼǤޤ Ȥϥѥå֤ޤ +.LP +File: \f2java/applet/package\-info.java\fP .nf \f3 .fl /** .fl - * Provides the classes necessary to create an + * Provides the classes necessary to create an .fl * applet and the classes an applet uses .fl @@ -372,285 +288,91 @@ .fl \fP .fi -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 352 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-42 - -.LP -.LP -コメント区切り文字の \f2/**\fP と \f2/*\fP は記述する必要がありますが、中間行の行頭のアスタリスクは省略してもかまいません。 -.LP -.LP -\f4package.html\fP \- このファイルには、次の構造のパッケージコメントを格納できます。 コメントは \f2\fP 要素内に配置します。 -.LP -.LP -File:\f2java/applet/package.html\fP -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 +.LP +ȶڤʸ \f2/**\fP \f2/*\fP ¸ߤƤɬפޤֹԤιƬΥꥹϾάƤ⤫ޤޤ +.LP +\f4package.html\fP \- Υեˤϡι¤ΥѥåȤǼǤޤȤ \f2\fP ֤ޤ +.LP +File: \f2java/applet/package.html\fP .nf \f3 .fl - -.fl - -.fl -Provides the classes necessary to create an applet and the -.fl -classes an applet uses to communicate with its applet context. -.fl -

+ Provides the classes necessary to create an applet and the classes an applet uses to communicate with its applet context.

.fl The applet framework involves two entities: the applet .fl -and the applet context. An applet is an embeddable -.fl -window (see the {@link java.awt.Panel} class) with a -.fl -few extra methods that the applet context can use to -.fl -initialize, start, and stop the applet. -.fl - -.fl -@since 1.0 -.fl -@see java.awt -.fl - -.fl - +and the applet context. An applet is an embeddable window (see the {@link java.awt.Panel} class) with a few extra methods that the applet context can use to initialize, start, and stop the applet.@since 1.0 @see java.awt .fl \fP .fi -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 405 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-40 - -.LP -.LP -これは単なる通常の HTML ファイルであり、パッケージ宣言を含んでいない点に注意してください。パッケージコメントファイルの内容は、ほかのすべてのコメントと同様に HTML で記述されています。それは、このドキュメンテーションコメントには、コメント区切り文字である \f2/**\fP と \f2*/\fP、および行頭のアスタリスクを含めてはならない、ということです。コメントを書く場合は、最初の文をパッケージの概要とし、\f2\fP と最初の文の間にタイトルやその他のテキストを含めないようにします。パッケージタグを含めることはできますが、ほかのドキュメンテーションコメントと同様、すべてのブロックタグは、主説明のあとに置かなければなりません。パッケージコメントファイルに \f2@see\fP タグを追加する場合は、完全指定の名前を使用する必要があります。詳細は、 +.LP +ñʤ̾ HTML եǤꡢѥåޤǤʤդƤѥåȥեƤϡۤΤ٤ƤΥȤƱͤ HTML ǵҤޤ1 Ĥ㳰ޤϡΥɥơ󥳥Ȥˤϡȶڤʸ Ǥ \f2/**\fP \f2*/\fP ӹƬΥꥹޤƤϤʤʤȤǤȤ񤯾ϡǽʸѥåγפȤ \f2\fP Ⱥǽʸδ֤˥ȥ䤽¾ΥƥȤޤʤ褦ˤޤѥåޤ뤳ȤϤǤޤۤΥɥơ󥳥ȤƱ͡٤ƤΥ֥åϡΤȤ֤ʤФʤޤ \f2@see\fP ѥåȥեɲäˤϡ̾Ѥɬפޤܺ٤ϡ .na -\f2package.html\fP の例 @ +\f2package.html\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#packagecommentsを参照してください。 -.LP -.LP -\f3パッケージコメントファイルの処理\fP \- Javadoc ツールは、実行時にパッケージコメントファイルを自動的に検索し、このファイルを見つけると次の処理を行います。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#packagecomments򻲾ȤƤ +.LP +\f3ѥåȥեν\fP \- Javadoc ġϡ¹Ի˥ѥåȥեưŪ˸Υե򸫤ĤȼνԤޤ .RS 3 .TP 2 o -処理できるようにコメントをコピーする (\f2package.html\fP の場合であれば、\f2\fP と \f2\fP HTML タグの間にある内容をすべてコピーする。\f2\fP を含め、そこに \f2\fP やソースファイルの著作権記述などの情報を配置することもできるが、生成後のドキュメンテーションにはそれらは一切表示されない) +Ǥ褦˥Ȥ򥳥ԡ( \f2package.html\fP ξǤС \f2<body>\fP \f2</body>\fP HTML δ֤ˤƤ򤹤٤ƥԡ롣 \f2<head>\fP ޤᡢ \f2<title>\fP 䥽եҤʤɤξ֤뤳ȤǤ뤬ΥɥơˤϤϰɽʤ) .TP 2 o -パッケージタグがあれば、すべて処理する +ѥåС٤ƽ .TP 2 o -生成したパッケージの概要ページの最後に、処理したテキストを挿入する (例: +ѥåγץڡκǸˡƥȤ (: .na -\f2パッケージの概要\fP @ +\f2ѥåγ\fP @ .fi http://java.sun.com/javase/6/docs/api/java/applet/package\-summary.html) .TP 2 o -パッケージの概要ページの先頭に、パッケージコメントの最初の文をコピーする。さらに、概要ページのパッケージリストに、パッケージ名とパッケージコメントの最初の文を追加する (例: +ѥåγץڡƬˡѥåȤκǽʸ򥳥ԡ롣ˡץڡΥѥåꥹȤˡѥå̾ȥѥåȤκǽʸɲä (: .na -\f2概要の要約\fP @ +\f2פ\fP @ .fi -http://java.sun.com/javase/6/docs/api/overview\-summary.html)。文の末尾は、クラスやメンバーの主説明の最初の文の末尾と同じ規則によって判断される +http://java.sun.com/javase/6/docs/api/overview\-summary.html)ʸϡ饹СμκǽʸƱ§ˤäȽǤ .RE - -.LP .SS -概要コメントファイル -.LP -.LP -ドキュメント化する各アプリケーションまたはパッケージセットは、独自の概要ドキュメンテーションコメントを持つことができ、それは専用の「ソース」ファイルに保持されます。 その内容は、Javadoc ツールによって生成される概要ページに組み込まれます。このコメントには、通常、アプリケーションまたはパッケージセット全体に当てはまるドキュメントを記述します。 -.LP -.LP -概要コメントファイルを作成する場合は、ファイルに任意の名前を付け、任意の場所に置くことができます。ただし、通常は、ファイル名を \f4overview.html\fP にして、ソースツリーの最上位レベルに置きます。たとえば、\f2java.applet\fP パッケージのソースファイルが \f2/home/user/src/java/applet\fP ディレクトリに含まれている場合は、\f2/home/user/src/overview.html\fP に概要コメントファイルを作成できます。 -.LP -.LP -異なるパッケージのセットに対して javadoc を複数回実行する場合は、同じ 1 つのソースファイルのセットに対して複数の概要コメントファイルを作成できます。たとえば、内部ドキュメンテーション用に \-private を指定して javadoc を 1 回実行したあと、公開ドキュメンテーション用にそのオプションを指定しないで再度実行することができます。この場合、各概要コメントファイルの 1 文目で、そのドキュメンテーションを公開用または内部用として記述できます。 -.LP -.LP -概要コメントファイルの内容は、前述のパッケージコメントファイルと同様、HTML で記述された 1 つの大きなドキュメンテーションコメントです。詳細は、前述の説明を参照してください。要点を繰り返すと、このコメントを記述する場合は、最初の文をアプリケーションまたはパッケージセットの要約とし、\f2<body>\fP と最初の文の間にタイトルその他のテキストを含めないようにします。概要タグを含めることができます。 どのドキュメンテーションコメントについても、インラインタグ (\f2{@link}\fP など) 以外のすべてのタグは、主説明のあとに置く必要があります。\f2@see\fP タグを追加する場合は、完全指定の名前を使用しなければなりません。 -.LP -.LP -Javadoc ツールの実行時に、\-overview オプションを使って概要コメントファイル名を指定します。このファイルは、パッケージコメントファイルと同じように処理されます。 -.LP +ץȥե +.LP +ɥȲƥץꥱޤϥѥååȤϡȼγץɥơ󥳥ȤĤȤǤѤΡ֥ץեݻޤƤϡJavadoc ġˤä복ץڡȤ߹ޤޤΥȤˤϡ̾ץꥱޤϥѥååΤƤϤޤɥȤ򵭽Ҥޤ +.LP +ץȥեˤϡեǤդ̾ (̾ \f4overview.html\fP) դǤդξ (̾ϥĥ꡼κǾ) ֤ǤޤȤС \f2java.applet\fP ѥåΥե뤬 \f2/home/user/src/java/applet\fP ǥ쥯ȥ˳ǼƤСץȥե \f2/home/user/src/overview.html ˺Ǥޤ\fP +.LP +ۤʤѥåΥåȤФ javadoc ʣ¹ԤϡƱ 1 ĤΥեΥåȤФʣγץȥեǤޤȤСɥơѤ \-private ꤷ javadoc 1 ¹ԤȡɥơѤˤΥץꤷʤǺټ¹Ԥ뤳ȤǤޤξ硢Ƴץȥե 1 ʸܤǡΥɥơѤޤѤȤƵҤǤޤ +.LP +ץȥեƤϡҤΥѥåȥեƱ͡HTML ǵҤ줿 1 Ĥ礭ʥɥơ󥳥ȤǤܺ٤ϡҤ򻲾ȤƤ򷫤֤ȡΥȤ򵭽Ҥϡǽʸ򥢥ץꥱޤϥѥååȤȤ \f2<body>\fP Ⱥǽʸδ֤˥ȥ뤽¾ΥƥȤޤʤ褦ˤޤץޤ뤳ȤǤޤۤΥɥơ󥳥ȤƱ \f2{@link}\fP ʤɤΥ饤󥿥٤ƤΥϡΤȤ֤ɬפޤ \f2@see\fP ɲäˤϡ̾Ѥɬפޤ +.LP +Javadoc ġμ¹Իˡ\-overview ץȤäƳץȥե̾ꤷޤΥեϡѥåȥեƱ褦˽ޤ .RS 3 .TP 2 o -\f2<body>\fP タグと \f2</body>\fP タグの間にあるすべての内容を処理のためにコピーする +\f2<body>\fP \f2</body>\fP δ֤ˤ뤹٤ƤƤоݤȤƥԡ .TP 2 o -概要タグがあればすべて処理する +ץС٤ƽ .TP 2 o -生成した概要ページの最後に、処理したテキストを挿入する (例: +ץڡκǸˡƥȤ (: .na -\f2概要の要約\fP @ +\f2פ\fP @ .fi http://java.sun.com/javase/6/docs/api/overview\-summary.html) .TP 2 o -概要ページの先頭に、概要コメントの最初の文をコピーする +ץڡƬˡץȤκǽʸ򥳥ԡ .RE - -.LP .SS -その他の未処理のファイル -.LP -.LP -ソースには、Javadoc ツールによって生成先のディレクトリにコピーされる、その他の任意のファイルを含めることができます。一般に、このようなファイルには、グラフィックファイル、サンプルの Java ソース (.java) およびクラス (.class) ファイル、内容が通常の Java ソースファイルのドキュメンテーションコメントの影響を受けない独立した HTML ファイルなどがあります。 -.LP -.LP -未処理のファイルをソースに含めるには、それらのファイルを \f4doc\-files\fP というディレクトリに置きます。 このディレクトリは、ソースファイルがある任意のパッケージディレクトリの下に作成できます。このようなサブディレクトリは、パッケージごとに 1 つ用意できます。イメージ、サンプルコード、ソースファイル、.class ファイル、アプレット、および HTML ファイルをこのディレクトリに格納できます。たとえば、ボタンのイメージ \f2button.gif\fP を \f2java.awt.Button\fP クラスのドキュメントに含める場合は、そのファイルを \f2/home/user/src/java/awt/doc\-files/\fP ディレクトリに置きます。\f2doc\-files\fP ディレクトリを \f2/home/user/src/java/doc\-files\fP に置くことはできません。 これは、\f2java\fP はパッケージではなく、そのディレクトリそのものにソースファイルが入っていないからです。 -.LP -.LP -これらの未処理のファイルへのリンクは、すべて明示的に記述する必要があります。 これは、Javadoc ツールがそれらのファイルを見ずに、単にディレクトリとその内容を生成先にコピーするだけだからです。たとえば、\f2Button.java\fP のドキュメンテーションコメント内のリンクは、次のようになります。 -.LP +¾̤Υե +.LP +ˤϡJavadoc ġˤäΥǥ쥯ȥ˥ԡ롢¾ǤդΥեޤ뤳ȤǤޤ̤ˡΤ褦ʥեˤϡեåե롢ץ Java (.java) ӥ饹 (.class) ե롢Ƥ̾ Java եΥɥơ󥳥ȤαƶʤΩ HTML եʤɤޤ +.LP +ʤեޤˤϡ\f4doc\-files\fP Ȥ̾Υǥ쥯ȥˤΥե֤ޤΥǥ쥯ȥϡե뤬Ǽ줿ǤդΥѥåǥ쥯ȥΥ֥ǥ쥯ȥˤޤΤ褦ʥ֥ǥ쥯ȥϡѥåȤ 1 ѰդǤޤ᡼ץ륳ɡե롢.class ե롢ץåȡ HTML ե򤳤Υǥ쥯ȥ˳ǼǤޤȤСܥβ \f2button.gif\fP \f2java.awt.Button\fP 饹Υɥơ˴ޤˤϡΥե \f2/home/user/src/java/awt/doc\-files/\fP ǥ쥯ȥ֤ޤʤ \f2doc\-files\fP ǥ쥯ȥ \f2/home/user/src/java/doc\-files\fP ֤뤳ȤϤǤޤ󡣤ʤʤ顢 \f2java\fP ϥѥåǤϤʤǤĤޤꡢjava ľܴޤޤƤ륽ե 1 Ĥ¸ߤƤޤ +.LP +̤ΥեؤΥ󥯤ϡ٤Ū˵ҤɬפޤϡJavadoc ġ뤬Υե򸫤ˡñ˥ǥ쥯ȥȤƤ˥ԡǤȤС \f2Button.java\fP Υɥơ󥳥Υ󥯤ϡΤ褦ˤʤޤ .nf \f3 .fl @@ -664,23 +386,16 @@ .fl \fP .fi - -.LP .SS -テストファイルおよびテンプレートファイル -.LP -.LP -一部の開発者から、テストファイルおよびテンプレートファイルを対応するソースファイルの近くのソースツリーに保存したいという要望がありました。つまり、これらのソースファイルと同じディレクトリまたはサブディレクトリに保存したいということです。 -.LP -.LP -個別のソースファイル名で明示的に渡して Javadoc ツールを実行する場合は、テストファイルおよびテンプレートファイルを意図的に除外して、処理されないようにすることができます。ただし、パッケージ名またはワイルドカードで渡す場合は、以下のルールに従って、これらのテストファイルおよびテンプレートファイルが処理されないようにする必要があります。 -.LP -.LP -テストファイルとテンプレートファイルの違いは、テストファイルは、正当でコンパイル可能なソースファイルであるのに対して、テンプレートファイルは、そうではないという点です。 ただし、テンプレートファイルも「.java」で終わることができます。 -.LP -.LP -\f3テストファイル\fP \- 開発者の多くは、あるパッケージのコンパイル可能で実行可能なテストファイルをそのパッケージのソースファイルと同じディレクトリに配置したいと考えています。しかしテストファイルは、名前なしパッケージなど、ソースファイルパッケージとは別のパッケージに属させたいとも考えています (そのため、テストファイルには package ステートメントがないか、またはソースとは別の package ステートメントがある)。このような状況では、コマンド行で指定されているソースのパッケージ名を指定してそのソースがドキュメント化されているときに、テストファイルは警告またはエラーを引き起こします。そのようなテストファイルはサブディレクトリに配置する必要があります。\f2com.package1\fP に追加する場合は、それらのテストファイルを、ハイフンが含まれるためパッケージ名としては無効になるサブディレクトリに配置します。 -.LP +ƥȥե뤪ӥƥץ졼ȥե +.LP +γȯԤ顢ƥȥե뤪ӥƥץ졼ȥեб륽եζ᤯Υĥ꡼¸Ȥ˾ޤĤޤꡢΥեƱǥ쥯ȥޤϥ֥ǥ쥯ȥ¸ȤȤǤ +.LP +̤Υե̾ŪϤ Javadoc ġ¹Ԥϡƥȥե뤪ӥƥץ졼ȥետŪ˽ơʤ褦ˤ뤳ȤǤޤѥå̾ޤϥ磻ɥɤϤϡʲΥ롼˽äơΥƥȥե뤪ӥƥץ졼ȥե뤬ʤ褦ˤɬפޤ +.LP +ƥȥեȥƥץ졼ȥեΰ㤤ϡƥȥեϡǥѥǽʥեǤΤФơƥץ졼ȥեϡǤϤʤȤǤƥץ졼ȥե.javaפǽ뤳ȤǤޤ +.LP +\f3ƥȥե\fP \- ȯԤ¿ϡѥåΥѥǽǼ¹Բǽʥƥȥե򤽤ΥѥåΥեƱǥ쥯ȥ֤ȹͤƤޤƥȥեϡ̾ʤѥåʤɡեѥåȤ̤Υѥå°ȤͤƤޤ (Τᡢƥȥեˤ package ơȥȤʤޤϥȤ̤ package ơȥȤ)Τ褦ʾǤϡޥɹԤǻꤵƤ륽Υѥå̾ꤷƤΥɥȲƤȤˡƥȥեϷٹޤϥ顼ޤΤ褦ʥƥȥեϥ֥ǥ쥯ȥ֤ɬפޤȤС \f2com.package1\fP ΥեФƥȥեɲäϼΤ褦ˡϥեޤǤ뤿˥ѥå̾ȤƤ̵Ǥ褦ʥ֥ǥ쥯ȥˡΥե֤ޤ .nf \f3 .fl @@ -688,248 +403,189 @@ .fl \fP .fi - -.LP -.LP -こうすると、Javadoc ツールでは警告なしで test ディレクトリをスキップします。 -.LP -.LP -テストファイルに doc コメントが含まれる場合、次のようにワイルドカードを含んだテストソースファイル名で渡してテストファイルのドキュメントを生成するように、Javadoc ツールを別個に実行できるように設定できます。 たとえば、\f2com/package1/test\-files/*.java\fP などです。 -.LP -.LP -\f3ソースファイルのテンプレート\fP \- テンプレートファイルの名前は「.java」で終わることもありますが、テンプレートファイルはコンパイルできません。ソースディレクトリに保持したいソースファイルのテンプレートがある場合は、このファイル名にハイフン (\f2Buffer\-Template.java\fP など) やその他の不正な Java 文字を使用します。 こうすることで、処理されないようになります。これは、Javadoc ツールが処理するのは、「.java」接尾辞を除いた名前が 正規のクラス名であるソースファイルだけであるためです ( +.LP +ȡJavadoc ġǤϷٹʤ test ǥ쥯ȥ򥹥åפޤ +.LP +ƥȥե doc Ȥޤޤ硢Τ褦˥磻ɥɤޤƥȥե̾ϤƥƥȥեΥɥȤ褦ˡJavadoc ġ̸Ĥ˼¹ԤǤ褦ǤޤȤС \f2com/package1/test\-files/*.java ʤɤǤ\fP +.LP +\f3եΥƥץ졼\fP \- ƥץ졼ȥե̾ϡ.javaפǽ뤳Ȥ⤢ޤƥץ졼ȥեϥѥǤޤ󡣥ǥ쥯ȥݻեΥƥץ졼Ȥϡ \f2Buffer\-Template.java\fP Τ褦˥ϥե䤽¾̵ Java ʸ̾˴ޤ뤳Ȥǡƥץ졼Ȥʤ褦ˤޤϡJavadoc ġ뤬Τϡ.java̾ Υ饹̾Ǥ륽եǤ뤿Ǥ ( .na -\f2「識別子」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625参照)。 -.LP -.SH "生成されるファイル" -.LP -.LP -デフォルトでは、javadoc ツールは、HTML 形式のドキュメントを生成する標準ドックレットを使います。このドックレットは、以下の種類のファイルを生成します。 それぞれの HTML ページは、個々のファイルに相当します。javadoc が生成するファイルの名前には、クラスやインタフェースの名前にちなんだものと、そうでないもの (\f2package\-summary.html\fP など) の 2 種類があります。後者のグループのファイル名には、前者のグループとファイル名が競合しないように、ハイフンが含まれています。 -.LP -.LP -\f3基本内容ページ\fP -.LP +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625) +.SH "ե" +.LP +ǥեȤǤϡjavadoc ġϡHTML ΥɥȤɸɥååȤȤޤΥɥååȤϡʲμΥեޤ줾 HTML ڡϡġΥեޤjavadoc ե̾ˤϡ饹䥤󥿥ե̾ˤʤΤȡǤʤ ( \f2package\-summary.html ʤ\fP) 2 बޤԤΥ롼פΥե̾ˤϡԤΥ롼פȥե̾礷ʤ褦ˡϥե󤬴ޤޤƤޤ +.LP +\f3ƥڡ\fP .RS 3 .TP 2 o -ドキュメント化するクラスまたはインタフェースごとに 1 つの\f3クラスページまたはインタフェースページ\fP (\f2クラス名\fP\f2.html\fP) -.TP 2 -o -ドキュメント化するパッケージごとに 1 つの\f3パッケージページ\fP (\f2package\-summary.html\fP)。Javadoc ツールは、ソースツリーのパッケージディレクトリ内に \f2package.html\fP または \f2package\-info.java\fP というファイルがあれば、その中の HTML テキストをこのページに組み入れます。 -.TP 2 -o -パッケージセット全体に対して 1 つの\f3概要ページ\fP (\f2overview\-summary.html\fP)。これは、生成ドキュメントの先頭ページになります。Javadoc ツールは、\f2\-overview\fP オプションで指定されたファイル内の HTML テキストをこのページに組み入れます。このページのファイルは、javadoc に複数のパッケージ名を渡した場合にだけ作成されます。詳細は、「HTML フレーム」を参照してください。 -.RE - -.LP -.LP -\f3相互参照ページ\fP -.LP -.RS 3 -.TP 2 -o -\f3パッケージのセット全体に対して 1 つのクラス階層ページ\fP (\f2overview\-tree.html\fP)。このページを表示するには、ナビゲーションバーの [概要] をクリックしてから、[階層ツリー] をクリックします。 +ɥȲ륯饹ޤϥ󥿥եȤ 1 Ĥ\f3饹ڡޤϥ󥿥եڡ\fP (\f2饹̾\fP\f2.html\fP) .TP 2 o -\f3パッケージごとに 1 つのクラス階層ページ\fP (\f2package\-tree.html\fP)。 特定のパッケージ、クラス、またはインタフェースのページを表示してから、[階層ツリー] をクリックすると、そのパッケージのクラス階層が表示されます。 -.TP 2 -o -\f3パッケージごとに 1 つの [使用] ページ\fP (\f2package\-use.html\fP)と、\f3クラスおよびインタフェースごとに 1 つずつの [使用] ページ\fP (\f2class\-use/\fP\f2クラス名\fP\f2.html\fP)。このページには、特定のクラス、インタフェース、またはパッケージの一部を使っているパッケージ、クラス、メソッド、コンストラクタ、およびフィールドについて記述されます。クラスまたはインタフェース A を例にして考えると、その [使用] ページには、A のサブクラス、A として宣言されたフィールド、A を返すメソッド、A 型のパラメータを持つメソッドおよびコンストラクタが表示されます。 このページを表示するには、まず、パッケージ、クラス、またはインタフェースのページに移動してから、ナビゲーションバーの [使用] リンクをクリックします。 -.TP 2 -o -\f3非推奨 API ページ\fP (\f2deprecated\-list.html\fP)。 推奨されないすべての名前が一覧表示されます。非推奨名は、一般に改良された API が存在するために使用が推奨されていない API の名前であり、通常、それに置き換わる名前が提示されています。非推奨 API は、将来の実装では削除される可能性があります。 +ɥȲѥåȤ 1 Ĥ\f3ѥåڡ\fP (\f2package\-summary.html\fP)Javadoc ġϡ \f2package.html\fP ޤ \f2package\-info.java\fP Ȥ̾Υե HTML ƥȤ򤹤٤Ȥޤ .TP 2 o -\f3定数フィールド値ページ\fP (\f2constant\-values.html\fP)。 static フィールドの値用です。 -.TP 2 -o -\f3直列化されたフォームページ\fP (\f2serialized\-form.html\fP)。 直列化および外部化可能なクラスです。これらの各クラスには、直列化フィールドおよびメソッドに関する説明があります。これらの情報は、API を使う開発者ではなく、再実装を行う開発者に必要な情報です。ナビゲーションバーにこのページへのリンクはありませんが、直列化されたクラスに移動して、そのクラスの説明にある [関連項目] セクションで [直列化された形式] をクリックすると、この情報を取得できます。標準ドックレットは、直列化された形式のページを自動的に生成します。ここには、Serializable を実装する public または非 public のクラスが組み込まれており、さらに、\f2readObject\fP メソッド、\f2writeObject\fP メソッド、直列化されたフィールド、および \f2@serial\fP タグ、\f2@serialField\fP タグ、\f2@serialData\fP タグからのドキュメンテーションコメントが組み込まれています。直列化が可能な public クラスを除外するには、そのクラスまたはそのクラスが属するパッケージを \f2@serial exclude\fP タグで指定します。 直列化が可能な package private クラスを含めるには、そのクラスまたはそのクラスが属するパッケージを \f2@serial include\fP タグで指定します。バージョン 1.4 では、\f2\-private\fP オプションの指定なしで javadoc ツールを実行することにより、public クラスおよび private クラスの完全に直列化されたクラスを生成できます。 -.TP 2 -o -\f3索引\fP (\f2index\-*.html\fP)。 すべてのクラス名、インタフェース名、コンストラクタ名、フィールド名、およびメソッド名が、アルファベット順に並んでいます。索引は、Unicode を扱えるように国際化されています。 1 つのファイルとして生成することも、先頭文字 (英語の場合 A 〜 Z) ごとに別々のファイルとして生成することもできます。 +ѥåΥåΤФ 1 Ĥ\f3ץڡ\fP (\f2overview\-summary.html\fP)ϡɥȤƬڡˤʤޤJavadoc ġϡ\f2\-overview\fP ץǻꤵ줿ե HTML ƥȤ򤹤٤ȤޤΥڡΥեϡjavadoc ʣΥѥå̾Ϥˤޤܺ٤ϡHTML ե졼פ򻲾ȤƤ .RE - -.LP -.LP -\f3サポートファイル\fP -.LP +.LP +\f3߻ȥڡ\fP .RS 3 .TP 2 o -\f3ヘルプページ\fP (\f2help\-doc.html\fP)。 ナビゲーションバーや前述の各ページに関する説明が記載されています。\f2\-helpfile\fP を使うと、デフォルトのヘルプファイルに代わる独自のカスタムヘルプファイルを提供することもできます。 -.TP 2 -o -表示用の HTML フレームを作成する 1 つの \f3index.html ファイル\fP。このファイルは、フレーム付きの先頭ページを表示する場合にロードします。このファイル自体には、テキスト内容は含まれていません。 +\f3ѥåΥåΤФ 1 ĤΥ饹إڡ\fP (\f2overview\-tree.html\fP)ΥڡɽˤϡʥӥС [] 򥯥åƤ顢[إĥ꡼] 򥯥åޤ .TP 2 o -複数の\f3フレームファイル\fP (\f2*\-frame.html\fP)。 パッケージ、クラス、およびインタフェースのリストが含まれています。 HTML フレームを表示するときに使用されます。 +\f3ѥåȤ 1 ĤΥ饹إڡ\fP (\f2package\-tree.html\fP)ɽˤϡΥѥå饹ޤϥ󥿥եΥڡ˰ư[إĥ꡼] 򥯥åƤΥѥåγؤɽޤ .TP 2 o -\f3パッケージリスト\fPファイル (\f2package\-list\fP)。 \f2\-link\fP オプションおよび \f2\-linkoffline\fP オプションで使用されます。これは、HTML ファイルではなくテキストファイルであり、どのリンクからもアクセスできません。 -.TP 2 -o -\f3スタイルシート\fPファイル (\f2stylesheet.css\fP)。 生成されるページ上のいくつかの要素について、色、フォントファミリ、フォントサイズ、フォントのスタイル、および配置を制御します。 +\f3ѥåȤ 1 Ĥ [] ڡ\fP (\f2package\-use.html\fP) ȡ饹ӥ󥿥եȤ 1 ĤĤ [] ڡ (\f2class\-use/\fP\f2饹̾\fP\f2.html\fP)ΥڡˤϡΥ饹󥿥եޤϥѥåΰȤäƤѥå饹᥽åɡ󥹥ȥ饯ӥեɤˤĤƵҤޤ饹ޤϥ󥿥ե A ˤƹͤȡ [] ڡˤϡA Υ֥饹A Ȥ줿եɡA ֤᥽åɡA Υѥ᡼ĥ᥽åɤӥ󥹥ȥ饯ɽޤ Υڡɽˤϡޤѥå饹ޤϥ󥿥եΥڡ˰ưƤ顢ʥӥС [] 󥯤򥯥åޤ .TP 2 o -\f3doc\-files\fP ディレクトリ。 生成先ディレクトリにコピーするイメージ、サンプルコード、ソースコードなどのファイルがすべて格納されます。これらのファイルは、Javadoc ツールによって処理されないため、ファイル内に javadoc タグがあっても無視されます。このディレクトリは、ソースツリーの中にある場合にのみ生成されます。 +\f3侩 API ڡ\fP (\f2deprecated\-list.html\fP)侩ʤ̾٤ưɽޤ侩̾ϡ̤˲ɤ줿 API ¸ߤ뤿˻Ѥ侩Ƥʤ API ̾Ǥꡢ̾֤̾󼨤Ƥޤ侩 API ϡμǤϺǽޤ +.TP 2 +o +\f3եͥڡ\fP (\f2constant\-values.html\fP)static եɤѤǤ +.TP 2 +o +\f3ľ󲽤줿ڡ\fP (\f2serialized\-form.html\fP)ľ󲽲ǽijǽʥ饹˴ؤѤǤγƥ饹ˤϡľ󲽥եɤӥ᥽åɤ˴ؤޤξϡAPI ȤȯԤǤϤʤƼԤȯԤɬפʾǤʥӥСˤΥڡؤΥ󥯤Ϥޤ󤬡ľ󲽤줿饹˰ươΥ饹ˤִϢܡץǡľ󲽤줿פ򥯥åȡξǤޤɸɥååȤľ󲽤줿ڡưޤSerializable 뤹٤ƤΥ饹 (public ޤ public) ޤޤۤ \f2readObject\fP ᥽åɤ \f2writeObject\fP ᥽åɡľ󲽤եɡ \f2@serial\fP\f2@serialField\fP\f2@serialData\fP Υɥơ󥳥Ȥޤޤޤpublic ľ󲽲ǽ饹ˤϡΥ饹 (ޤϤΥѥå) \f2@serial exclude\fP ǥޡޤpackage\-private ľ󲽲ǽ饹ޤˤϡΥ饹 (ޤϤΥѥå) \f2@serial include\fP ǥޡޤС 1.4 Ǥ \f2\-private\fP ץλʤ javadoc ġ¹Ԥ뤳Ȥˤꡢpublic 饹 private 饹δľ󲽤줿饹Ǥޤ +.TP 2 +o +\f3\fP (\f2index\-*.html\fP)٤ƤΥ饹󥿥ե󥹥ȥ饯եɡӥ᥽åɤ̾ե٥åȽ¤ǤޤϡUnicode 򰷤褦˹ݲƤޤ1 ĤΥեȤ뤳Ȥ⡢Ƭʸ (Ѹξ A Z) Ȥ̡ΥեȤ뤳ȤǤޤ .RE - -.LP -.LP -\f3HTML フレーム\fP -.LP -.LP -Javadoc ツールは、下の図に示すように、2 〜 3 つの HTML フレームを生成します。1 つのパッケージしかない場合 (またはパッケージがない場合) は、パッケージの一覧を省略することによって最低限必要な数のフレームを作成します。単一のパッケージに属するソースファイル (*.java) または単一のパッケージ名を引数として javadoc コマンドに渡す場合は、左側の列にクラスの一覧を表示するフレーム (C) 1 つだけが作成されます。Javadoc に複数のパッケージ名を渡した場合は、概要ページ (Detail) に加えて、すべてのパッケージを一覧表示する第 3 のフレーム (P) が作成されます。この概要ページのファイル名は、\f2overview\-summary.html\fP です。したがって、このファイルは、2 つ以上のパッケージ名を渡した場合にだけ作成されます。[フレームなし] リンクをクリックするか、overview\-summary.html を最初に表示すると、フレームを省略できます。 -.LP -.LP -HTML フレームに慣れていない場合は、特定のフレームを印刷およびスクロールするには、そのフレームに「フォーカス」がなければならないことに注意してください。フレームにフォーカスを与えるには、そのフレームをクリックします。このようにすると、多くのブラウザでは、矢印キーやページキーを使ってそのフレームをスクロールしたり、[印刷] メニューコマンドを使ってそのフレームを印刷したりできます。 -.LP -.nf -\f3 -.fl - \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\- -.fl - |C| Detail | |P| Detail | -.fl - | | | | | | -.fl - | | | |\-| | -.fl - | | | |C| | -.fl - | | | | | | -.fl - | | | | | | -.fl - \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\- -.fl - javadoc *.java javadoc java.lang java.awt -.fl -\fP -.fi - -.LP -.LP -HTML フレームが必要かどうかによって、次のどちらかのファイルを開始ページとしてロードします。 -.LP +.LP +\f3ݡȥե\fP .RS 3 .TP 2 o -\f2index.html\fP (フレームあり) +\f3إץڡ\fP (\f2help\-doc.html\fP)ʥӥСҤγƥڡ˴ؤܤƤޤǥեȤΥإץեȼΥإץե󶡤ˤϡ\f2\-helpfile\fP Ѥޤ +.TP 2 +o +ɽѤ HTML ե졼 1 Ĥ \f3index.html ե\fPΥեϡե졼դƬڡɽ˥ɤޤΥե뼫ΤˤϡƥƤϴޤޤƤޤ +.TP 2 +o +ʣ\f3ե졼ե\fP (\f2*\-frame.html\fP)ѥå饹ӥ󥿥եΥꥹȤޤޤƤޤHTML ե졼ɽȤ˻Ѥޤ +.TP 2 +o +\f3ѥåꥹ\fPե (\f2package\-list\fP) \f2\-link\fP \f2\-linkoffline\fP ץǻѤޤϡHTML եǤϤʤƥȥեǤꡢɤΥ󥯤⥢Ǥޤ +.TP 2 +o +\f3륷\fPե (\f2stylesheet.css\fP)ڡΤĤǤˤĤơեȥեߥꡢեȥեȤΥ롢֤椷ޤ .TP 2 o -\f2overview\-summary.html\fP (フレームなし) +\f3doc\-files\fP ǥ쥯ȥꡣǥ쥯ȥ˥ԡ륤᡼ץ륳ɡɤʤɤΥե뤬٤ƳǼޤΥեϡJavadoc ġˤäƽʤᡢե avadoc äƤ̵뤵ޤΥǥ쥯ȥϡĥ꡼ˤˤΤޤ .RE - -.LP -.LP -\f3生成されるファイルの構造\fP -.LP -.LP -生成されるクラスファイルおよびインタフェースファイルは、Java ソースファイルおよびクラスファイルと同じディレクトリ階層に編成されます。1 つのサブパッケージにつき 1 つのディレクトリ、という構造になります。 -.LP -.LP -たとえば、\f2java.applet.Applet\fP クラスに対して生成されるドキュメントは、\f2java/applet/Applet.html\fP に格納されます。生成先のディレクトリの名前が \f2apidocs\fP だとすると、java.applet パッケージのファイル構造は、その下に構築されます。前述のように、「frame」という語を名前に含むファイルは、すべて左上または左下のフレームに表示されます。それ以外の HTML ファイルは、すべて右側のフレームに表示されます。 -.LP +.LP +\f3HTML ե졼\fP +.LP +Javadoc ġϡοޤ˼褦ˡ2 3 Ĥ HTML ե졼ޤ1 ĤΥѥåʤ (ޤϥѥåʤ) ϡѥåΰά뤳ȤˤäƺɬפʿΥե졼ޤñΥѥå°륽ե (*.java) ޤñΥѥå̾Ȥ javadoc ޥɤϤϡ¦˥饹ΰɽե졼 (C) 1 ĤޤJavadoc ʣΥѥå̾Ϥϡץڡ (Detail) ˲äơ٤ƤΥѥåɽ 3 Υե졼 (P) ޤγץڡΥե̾ϡ \f2overview\-summary.html Ǥ\fPäơΥեϡ2 İʾΥѥå̾Ϥˤޤ֥ե졼ʤץ󥯤򥯥å뤫overview\-summary.html ǽɽȡե졼άǤޤ +.LP +HTML ե졼˴ƤʤϡΥե졼ӥ뤹ˤϡΥե졼ˡ֥եפʤФʤʤȤդƤե졼˥եͿˤϡΥե졼򥯥åޤΤ褦ˤȡ¿Υ֥饦ǤϡڡȤäƤΥե졼򥹥뤷ꡢְץ˥塼ޥɤȤäƤΥե졼Ǥޤ +.LP +HTML ե졼बɬפɤˤäơΤɤ餫Υե򳫻ϥڡȤƥɤޤ .RS 3 - -.LP -.LP -注 \- 下の階層図で、ディレクトリは\f3太字\fP (\f3bold\fP) で示してあります。アスタリスク (\f2*\fP) は、javadoc への引数がパッケージ名ではなくソースファイル名 (*.java) である場合に省略されるファイルおよびディレクトリを示しています。また、引数がソースファイル名の場合は、\f2package\-list\fP は作成されますが、内容は空です。doc\-files ディレクトリは、ソースツリー内に存在する場合にのみ、生成先に作成されます。 -.LP +.TP 2 +o +\f2index.html\fP (ե졼ढ) +.TP 2 +o +\f2overview\-summary.html\fP (ե졼ʤ) .RE +.LP +\f3եι¤\fP +.LP +륯饹ե뤪ӥ󥿥եեϡJava ե뤪ӥ饹եƱǥ쥯ȥ곬ؤޤ1 ĤΥ֥ѥåˤĤ 1 ĤΥǥ쥯ȥꡢȤ¤ˤʤޤ +.LP +ȤС \f2java.applet.Applet\fP 饹Ѥ줿ɥȤϡ \f2java/applet/Applet.html\fP ˳ǼޤΥǥ쥯ȥ̾ \f2apidocs\fP Ȥȡjava.applet ѥåΥե빽¤ϡβ˹ۤޤҤΤ褦ˡframeפȤ̾˴ޤեϡ٤ƺޤϺΥե졼ɽޤʳ HTML եϡ٤Ʊ¦Υե졼ɽޤ +.LP + \- γؿޤǡǥ쥯ȥ\f3\fP (bold) ǼƤޤꥹ (\f2*\fP) ϡjavadoc ؤΰѥå̾ǤϤʤե̾ (*.java) Ǥ˾άե뤪ӥǥ쥯ȥ򼨤Ƥޤޤե̾ξ硢 \f2package\-list\fP ϺޤȤ϶Ǥdoc\-files ǥ쥯ȥϡĥ꡼¸ߤˤΤߡ˺ޤ .nf \f3 .fl .fl -\fP\f3apidocs\fP 最上位ディレクトリ -.fl - index.html HTML フレームを設定する初期ページ -.fl - * overview\-summary.html 全パッケージのリスト。 先頭に要約文がある -.fl - overview\-tree.html 全パッケージのクラス階層のリスト -.fl - deprecated\-list.html 全パッケージの推奨されない API のリスト -.fl - constant\-values.html 全パッケージの static フィールドの値のリスト -.fl - serialized\-form.html 全パッケージの直列化された形式のリスト -.fl - * overview\-frame.html 全パッケージのリスト。 左上のフレームに表示される -.fl - allclasses\-frame.html 全パッケージの全クラスのリスト。 左下のフレームに表示される -.fl - help\-doc.html これらのページの構成を示すユーザーヘルプを表示する -.fl - index\-all.html \-splitindex オプションなしで作成されたデフォルト索引 -.fl - \f3index\-files\fP \-splitindex オプションを指定して作成されたディレクトリ -.fl - index\-<number>.html \-splitindex オプションを指定して作成された索引ファイル -.fl - package\-list パッケージ名のリスト。 外部参照を解決するためだけに使用される -.fl - stylesheet.css フォント、色、配置を定義する HTML スタイルシート -.fl - \f3java\fP パッケージディレクトリ -.fl - \f3applet\fP サブパッケージディレクトリ -.fl - Applet.html Applet クラスのページ -.fl - AppletContext.html AppletContext インタフェースのページ -.fl - AppletStub.html AppletStub インタフェースのページ -.fl - AudioClip.html AudioClip インタフェースのページ -.fl - * package\-summary.html このパッケージのクラスのリスト。 先頭に要約文がある -.fl - * package\-frame.html このパッケージのクラスのリスト。 左下のフレームに表示される -.fl - * package\-tree.html このパッケージのクラス階層のリスト -.fl - package\-use このパッケージが使用されている場所のリスト -.fl - \f3doc\-files\fP イメージやサンプルのファイルが格納されるディレクトリ -.fl - \f3class\-use\fP API が使用されている場所のページを格納するディレクトリ -.fl - Applet.html Applet クラスを使用するページ -.fl - AppletContext.html AppletContext インタフェースを使用するページ -.fl - AppletStub.html AppletStub インタフェースを使用するページ -.fl - AudioClip.html AudioClip インタフェースを使用するページ -.fl - \f3src\-html\fP ソースコードディレクトリ -.fl - \f3java\fP パッケージディレクトリ -.fl - \f3applet\fP サブパッケージディレクトリ -.fl - Applet.html Applet ソースコードのページ -.fl - AppletContext.html AppletContext ソースコードのページ -.fl - AppletStub.html AppletStub ソースコードのページ -.fl - AudioClip.html AudioClip ソースコードのページ +\fP\f3apidocs\fP Ǿ̥ǥ쥯ȥ +.fl + index.html HTML ե졼ꤹڡ +.fl + * overview\-summary.html ѥåΥꥹȡƬʸˤդ +.fl + overview\-tree.html ѥåΥ饹ؤΥꥹ +.fl + deprecated\-list.html ѥå侩 API Υꥹ +.fl + constant\-values.html ѥå static եɤͤΥꥹ +.fl + serialized\-form.html ѥåľ󲽤줿Υꥹ +.fl + * overview\-frame.html ѥåΥꥹȡΥե졼ǻѤ +.fl + allclasses\-frame.html ѥå饹ΥꥹȡΥե졼ǻѤ +.fl + help\-doc.html Υڡι򼨤桼إפΥꥹ +.fl + index\-all.html \-splitindex ץꤷʤä˺ǥեȤκ +.fl + \f3index\-files\fP \-splitindex ץꤷ˺ǥ쥯ȥ +.fl + index\-<number>.html \-splitindex ץꤷ˺ե +.fl + package\-list ѥå̾ΥꥹȡȤ褹뤿˻Ѥ +.fl + stylesheet.css եȡ֤ HTML 륷 +.fl + \f3java\fP ѥåǥ쥯ȥ +.fl + \f3applet\fP ֥ѥåǥ쥯ȥ +.fl + Applet.html Applet 饹Υڡ +.fl + AppletContext.html AppletContext 󥿥եΥڡ +.fl + AppletStub.html AppletStub 󥿥եΥڡ +.fl + AudioClip.html AudioClip 󥿥եΥڡ +.fl + * package\-summary.html ΥѥåΥ饹ΥꥹȡƬʸˤդ +.fl + * package\-frame.html ΥѥåΥ饹ΥꥹȡΥե졼ǻѤ +.fl + * package\-tree.html ΥѥåΥ饹ؤΥꥹ +.fl + package\-use ΥѥåѤƤΥꥹ +.fl + \f3doc\-files\fP 䥵ץեݻǥ쥯ȥ +.fl + \f3class\-use\fP API ѤƤΥڡݻǥ쥯ȥ +.fl + Applet.html Applet 饹λѤ˴ؤڡ +.fl + AppletContext.html AppletContext 󥿥եλѤ˴ؤڡ +.fl + AppletStub.html AppletStub 󥿥եλѤ˴ؤڡ +.fl + AudioClip.html AudioClip 󥿥եλѤ˴ؤڡ +.fl + \f3src\-html\fP ɥǥ쥯ȥ +.fl + \f3java\fP ѥåǥ쥯ȥ +.fl + \f3applet\fP ֥ѥåǥ쥯ȥ +.fl + Applet.html Applet ɤΥڡ +.fl + AppletContext.html AppletContext ɤΥڡ +.fl + AppletStub.html AppletStub ɤΥڡ +.fl + AudioClip.html AudioClip ɤΥڡ .fl .fi - -.LP .SS -生成される API 宣言 -.LP -.LP -Javadoc ツールは、それぞれのクラス、インタフェース、フィールド、コンストラクタ、およびメソッドの説明の最初に、その API 用の宣言を生成します。 この宣言は、その API 項目の宣言です。たとえば、\f2Boolean\fP クラスの宣言は、次のようになります。 -.LP + API +.LP +Javadoc ġϡ줾Υ饹󥿥եեɡ󥹥ȥ饯ӥ᥽åɤκǽˡ API ѤޤȤС \f2Boolean\fP 饹ϡΤ褦ˤʤޤ .LP \f2public final class Boolean\fP .br @@ -937,29 +593,20 @@ .br \f2implements Serializable\fP .LP -.LP -また、\f2Boolean.valueOf\fP メソッドの宣言は、次のようになります。 -.LP +ޤ \f2Boolean.valueOf\fP ᥽åɤϡΤ褦ˤʤޤ .LP \f2public static Boolean valueOf(String s)\fP .LP -.LP -Javadoc ツールは、修飾子 \f2public\fP、\f2protected\fP、\f2private\fP、\f2abstract\fP、\f2final\fP、\f2static\fP、\f2transient\fP、および \f2volatile\fP を組み込むことができますが、\f2synchronized\fP と \f2native\fP を組み込むことができません。これら後者の 2 つの修飾子は、実装の詳細と見なされているため、API 仕様には含まれません。 -.LP -.LP -API では、並行性のセマンティクスについて、キーワード \f2synchronized\fP に依存するのではなく、コメントによる主説明としてドキュメント化する必要があります。 たとえば、「1 つの \f2Enumeration\fP を複数のスレッドから並行して使用することはできない」などのコメントを記述します。ドキュメントには、これらのセマンティクスを実現する方法を記述するべきではありません。たとえば、\f2Hashtable\fP はスレッドに対して安全である必要がありますが、「エクスポートされるすべてのメソッドを同期化すればそれを実現できる」のようには指定する根拠はありません。バケットレベルで内部的に同期化する権利を残しておく必要があります。 そうすれば、より高度な並行性が提供されます。 -.LP -.SH "ドキュメンテーションコメント" -.LP -.LP -オリジナルの「ドキュメンテーションコメントの仕様」は、「関連項目」を参照してください。 -.LP +Javadoc ġǤϡ \f2public\fP \f2protected\fP \f2private\fP \f2abstract\fP \f2final\fP \f2static\fP \f2transient\fP \f2volatile\fP Ȥ߹ޤ \f2synchronized\fP \f2native\fP Ȥ߹ޤ󡣤Ԥ 2 ĤνҤϡξܺ٤ȸʤƤ뤿ᡢAPI ͤˤϴޤޤޤ +.LP +API Ǥϡ¹ޥƥˤĤơ \f2synchronized\fP ˰¸ΤǤϤʤȤμȤƥɥȲ٤Ǥ \f2ȤС1 Ĥ Enumeration \fP ʣΥåɤ¹ԤƻѤ뤳ȤϤǤʤפʤɤȵҤޤɥȤˤϡΥޥƥ¸ˡ򵭽Ҥ٤ǤϤޤ󡣤ȤС \f2Hashtable\fP ϥåɤФưǤɬפޤ֥ݡȤ뤹٤ƤΥ᥽åɤƱФ¸ǤפΤ褦ˤϻꤹ뺬Ϥޤ󡣥Хåȥ٥ŪƱ븢ĤƤɬפޤС٤¹󶡤ޤ +.SH "ɥơ󥳥" +.LP +ꥸʥΡ֥ɥơ󥳥Ȥλ͡פϡִϢܡפ򻲾ȤƤ .SS -ソースコードへのコメントの挿入 -.LP -.LP -ソースコードの任意のクラス、インタフェース、メソッド、コンストラクタ、またはフィールドの宣言の前に、ドキュメンテーションコメント ("doc comments") を記述することができます。各パッケージにドキュメンテーションコメントを作成できます。 構文は若干異なりますが、概要にもドキュメンテーションコメントを作成できます。ドキュメンテーションコメントは、非公式に「Javadoc コメント」と呼ばれています (この用語は商標関連の使用法に違反)。ドキュメンテーションコメントは、コメントの始まりを示す文字列 \f2/**\fP と、コメントの終わりを示す文字列 \f2*/\fP の間にある文字で構成されます。行の先頭のアスタリスクは、各行に記述できます。 詳細は、以下で説明します。コメントのテキストは、複数行にわたって記述できます。 -.LP +ɤؤΥȤ +.LP +ɤǤդΥ饹󥿥ե᥽åɡ󥹥ȥ饯ޤϥեɤˡɥơ󥳥 ("doc comments") 򵭽Ҥ뤳ȤǤޤƥѥå˥ɥơ󥳥ȤǤޤʸϼ㴳ۤʤޤפˤɥơ󥳥ȤǤޤɥơ󥳥ȤϡˡJavadoc ȡפȸƤФƤޤ (ѸϾɸϢλˡ˰ȿ)ɥơ󥳥ȤϡȤϤޤ򼨤ʸ \f2/**\fP ȡȤ򽪤򼨤ʸ \f2*/\fP δ֤ˤʸ鹽ޤԤƬΥꥹϡƹԤ˵ҤǤޤܺ٤ϡʲޤȤΥƥȤϡʣԤˤ錄äƵҤǤޤ .nf \f3 .fl @@ -973,26 +620,19 @@ .fl \fP .fi - -.LP -.LP -次のようにして 1 行に記述すると、スペースを節約できます。 -.LP +.LP +Τ褦ˤ 1 Ԥ˵ҤȡڡǤޤ .nf \f3 .fl -/** This comment takes up only one line. */ +/** This comment takes up only one line.*/ .fl \fP .fi - -.LP -.LP -\f3コメントの配置\fP \- ドキュメンテーションコメントは、クラス、インタフェース、コンストラクタ、メソッド、またはフィールドの宣言の直前に置かれているときにだけ認識されます。 クラスの例、メソッドの例、およびフィールドの例を参照してください。メソッドの本体に置かれているドキュメンテーションコメントは無視されます。javadoc ツールでは、1 つの宣言文につき 1 つのドキュメンテーションコメントだけが認識されます。 -.LP -.LP -よくある間違いは、クラスのコメントとクラスの宣言の間に \f2import\fP 文を置いてしまうことです。このような記述はしないでください。 このようなクラスコメントは無視されます。 -.LP +.LP +\f3Ȥ\fP \- ɥơ󥳥Ȥϡ饹󥿥ե󥹥ȥ饯᥽åɡޤϥեɤľ֤ƤȤˤǧޤ饹㡢᥽åɤ㡢ӥեɤ򻲾ȤƤ᥽åɤΤ֤Ƥɥơ󥳥Ȥ̵뤵ޤjavadoc ġǤϡ1 ĤʸˤĤ 1 ĤΥɥơ󥳥Ȥǧޤ +.LP +褯ְ㤤ϡ饹Ȥȥ饹δ֤ \f2import\fP ʸ֤ƤޤȤǤΤ褦ʵҤϤʤǤΤ褦ʥ饹Ȥ̵뤵ޤ .nf \f3 .fl @@ -1014,11 +654,8 @@ .fl \fP .fi - -.LP -.LP -\f3ドキュメンテーションコメントは主説明のあとにタグセクションが続く\fP \- コメントの開始区切り文字である \f2/**\fP のあとからタグセクションまでが主説明になります。タグセクションは、先頭文字が \f2@\fP である行で定義される最初のブロックタグから始まります (行の先頭のアスタリスク、空白、および行の先頭の区切り文字 \f2/**\fP は除く)。主説明を記述せず、タグセクションだけのコメントを記述することもできます。主説明は、タグセクション以降に続けることはできません。タグの引数は、複数行にわたって記述できます。タグの数に制限はありません。 何回も記述できるタグと、1 回しか記述できないタグがあります。例えば、次の \f2@see\fP からタグセクションが始まります。 -.LP +.LP +\f3ɥơ󥳥ȤϼΤȤ˥³ \- Ȥγ϶ڤʸǤ\fP \f2/**\fP ΤȤ饿ޤǤˤʤޤϡԤƬˤǽ \f2@\fP ǽΥ֥åϤޤޤ (ƬΥꥹƬζڤʸ \f2/**\fP Ͻ)򵭽ҤΥȤ򵭽Ҥ뤳ȤǤޤϡʹߤ³뤳ȤϤǤޤ󡣥ΰϡʣԤˤ錄äƵҤǤޤο¤Ϥޤ󡣲⵭ҤǤ륿ȡ1 󤷤ҤǤʤޤȤС \f2@see\fP ϡ򳫻ϤƤޤ .nf \f3 .fl @@ -1032,11 +669,8 @@ .fl \fP .fi - -.LP -.LP -\f3ブロックタグとインラインタグ\fP \- 「タグ」は、Javadoc が処理できる、ドキュメンテーションコメント内の特別なキーワードです。\f2@tag\fP のように記述するブロックタグ (「スタンドアロンタグ」とも呼ばれる) と、インラインタグ (\f2{@tag}\fP のように中括弧で囲んで記述) の 2 種類のタグがあります。ブロックタグが正しく解釈されるためには、行の先頭のアスタリスク、空白、区切り文字 (\f2/**\fP) を除いて、行の先頭に置かなければなりません。これは、テキスト内のそれ以外の位置で \f2@\fP 文字を使用しても、タグの開始としては解釈されないことを意味しています。行の最初に \f2@\fP 文字を使用してもタグとして解釈されないようにするには、HTML エンティティーの「\f2@\fP」を使用してください。それぞれのブロックタグには、対応付けられたテキストがあります。 このテキストは、タグのあとから、次のタグの前、またはドキュメンテーションコメントの最後までの間に記述されたテキスト (タグやコメント区切り文字を除く) です。この関連テキストは複数行にわたって記述できます。インラインタグは、テキストを記述できる場所であればどこにでも置くことができ、正しく解釈されます。次のコード例には、ブロックタグ \f2@deprecated\fP と、インラインタグ \f2{@link}\fP が含まれています。 -.LP +.LP +\f3֥åȥ饤󥿥\fP \- \f2֥\fPϡJavadoc Ǥ롢ɥơ󥳥̤ʥɤǤˤ 2 ढޤ1 Ĥ @tag Τ褦ɽ֥å \f2(ɸॿפȤƤФ)\fP ⤦ 1 Ĥ {@tag} Τ褦̤ǰϤޤ륤饤󥿥 \f2Ǥ\fP֥åᤵ뤿ˤϡԤƬΥꥹ򡢶ڤʸ (\f2/**\fP) ơԤƬ֤ʤФʤޤ󡣤ϡ \f2@\fP ʸƥ̤ξǻѤˤϥγϤȤƲᤵʤȤ̣ƤޤԤƬ \f2@\fP ʸѤƤ⤽줬ᤵʤ褦ˤˤϡHTML ƥƥ \f2@\fP Ѥޤ줾Υ֥åˤϡбդ줿ƥȤޤΥƥȤϡΤȤ顢Υޤϥɥơ󥳥ȤκǸޤǤδ֤˵Ҥ줿ƥ (䥳ȶڤʸ) ǤδϢƥȤʣԤˤ錄äƵҤǤޤ饤󥿥ϡƥȤ򵭽ҤǤǤФɤˤǤ֤ȤǤᤵޤˤϥ֥å \f2@deprecated\fP ȥ饤󥿥 \f2{@link}\fP ޤޤƤޤ .nf \f3 .fl @@ -1048,17 +682,12 @@ .fl \fP .fi - -.LP -.LP -\f3コメントは HTML で記述する\fP \- テキストは HTML 形式で記述しなければなりません。 これは、HTML のエンティティーを使う必要があること、および HTML タグを使用できることを意味します。記述する HTML のバージョンとしては、使用するブラウザがサポートする任意のバージョンを使用できます。 標準ドックレットは、カスケーディングスタイルシート (CSS) とフレームを含め、すべての部分 (ドキュメンテーションコメント以外の部分) で HTML 3.2 に準拠したコードを生成するように作成されています。ただし、フレームセット対応のため、生成される各ファイルには「HTML 4.0」と記述されます。 -.LP -.LP -たとえば、より小さい (\f2<\fP) およびより大きい (\f2>\fP) という記号は\f2<\fP および \f2>\fP として記述する必要があります。同様に、アンパサンド (\f2&\fP) は、\f2&\fP と記述する必要があります。次の例では、ボールドの HTML タグ \f2<b>\fP を使っています。 -.LP -.LP -次に、ドキュメンテーションコメントを示します。 -.LP +.LP +\f3Ȥ HTML ǵҤ\fP \- ƥȤ HTML ǵҤʤФʤޤ󡣤ϡHTML ΥƥƥȤɬפ뤳ȡ HTML ѤǤ뤳Ȥ̣ޤҤ HTML ΥСȤƤϡѤ֥饦ݡȤǤդΥСѤǤޤɸɥååȤϡǥ󥰥륷 (CSS) ȥե졼ޤᡢ٤Ƥʬ (ɥơ󥳥Ȱʳʬ) HTML 3.2 ˽򤷤ɤ褦˺Ƥޤե졼ॻåбΤᡢƥեˤϡHTML 4.0פȵҤޤ +.LP +ȤС꾮 (\f2<\fP) 椪Ӥ礭 (\f2>\fP) Υƥƥϡ \f2<\fP \f2>\fP ȵҤ٤ǤƱͤˡѥ (\f2&\fP) \f2&\fP ȵҤ٤ǤǤϥܡɤ HTML \f2<b>\fP Ƥޤ +.LP +ˡɥơ󥳥Ȥ򼨤ޤ .nf \f3 .fl @@ -1072,20 +701,12 @@ .fl \fP .fi - -.LP -.LP -\f3行頭のアスタリスク\fP \- Javadoc は、ドキュメンテーションコメントを解析するときに、各行の先頭にあるアスタリスク (\f2*\fP) をすべて破棄します。 また、最初のアスタリスク (\f2*\fP) より前の空白とタブも破棄します。バージョン 1.4 からは、行の先頭のアスタリスクを省略しても、先頭の空白文字は削除されなくなりました。このため、コード例を直接ドキュメンテーションコメントの \f2<PRE>\fP タグ内にペーストしても、インデントが保持されます。通常、ブラウザは、空白文字をタブよりも一律に解釈します。インデントは区切り文字 \f2/**\fP または \f2<PRE>\fP タグよりも左寄りになります。 -.LP -.LP -\f3最初の文\fP \- 各ドキュメンテーションコメントの最初の文は、宣言されているエンティティーに関する簡潔かつ完全な要約文である必要があります。この「最初の文」は、直後にスペース、タブ、または改行が続く最初のピリオド (ロケールが英語に設定されている場合)、または最初のタグがある位置で終わります。最初の文は、Javadoc ツールによって HTML ページの最初にあるメンバーの概要の部分にコピーされます。 -.LP -.LP -\f3複数フィールドの宣言\fP \- Java では、1 つの文で複数のフィールドを宣言できます。 ただし、この文には、1 つのドキュメンテーションコメントしか記述できません。 そのコメントが、すべてのフィールドに対してコピーされます。したがって、フィールドごとにドキュメンテーションコメントを記述する必要がある場合は、各フィールドを別々の文で宣言しなければなりません。たとえば、次のドキュメンテーションコメントは、1 つの宣言として記述すると不適切です。 この場合は、宣言を 2 つに分けることをお勧めします。 -.LP -.RS 3 - -.LP +.LP +\f3ƬΥꥹ\fP \- javadoc ˤɥơ󥳥ȤβϻˡƹԤƬˤ륢ꥹ (\f2*\fP) ʸ˴ޤǽΥꥹ (\f2*\fP) ʸˤ䥿֤˴ޤС 1.4 ϡԤƬΥꥹάƤ⡢ƬζʸϺʤʤޤΤᡢľܥɥơ󥳥Ȥ \f2<PRE>\fP ˥ڡȤƤ⡢ǥȤݻޤ̾֥饦ϡʸ򥿥֤Χ˲ᤷޤǥȤεϺޡˤʤޤ (ڤʸ \f2/**\fP ޤ \f2<PRE>\fP ǤϤʤ) +.LP +\f3ǽʸ\fP \- ƥɥơ󥳥ȤκǽʸϡƤ륨ƥƥ˴ؤʷ餫ĴʸǤɬפޤΡֺǽʸפϡľ˥ڡ֡ޤϲԤ³ǽΥԥꥪ (뤬ѸꤵƤ)ޤϺǽΥ֤ǽޤǽʸϡJavadoc ġˤä HTML ڡκǽˤСγפʬ˥ԡޤ +.LP +\f3ʣեɤ\fP \- Java Ǥϡ1 ĤʸʣΥեɤǤޤʸˤϡ1 ĤΥɥơ󥳥ȤҤǤޤ󡣤ΥȤ٤ƤΥեɤФƥԡޤäơեɤȤ˥ɥơ󥳥Ȥ򵭽Ҥɬפϡƥեɤ̡ʸʤФʤޤ󡣤ȤСΥɥơ󥳥Ȥϡ1 ĤȤƵҤŬڤǤξϡ 2 Ĥʬ뤳Ȥ򤪴ᤷޤ .nf \f3 .fl @@ -1099,145 +720,105 @@ .fl \fP .fi -.RE - -.LP -.LP -上記のコードからは、次のようなドキュメントが生成されます。 -.LP -.RS 3 - -.LP +.LP +嵭ΥɤϡΤ褦ʥɥȤޤ .nf \f3 .fl public int \fP\f3x\fP .fl .fi - -.LP .RS 3 The horizontal and vertical distances of point (x,y) .RE - -.LP .nf \f3 .fl public int \fP\f3y\fP .fl .fi - -.LP .RS 3 The horizontal and vertical distances of point (x,y) .RE - -.LP -.RE -.LP -\f3見出しタグはなるべく使用しない\fP \- メンバーに対してドキュメンテーションコメントを記述するときには、<H1> や <H2> などの HTML 見出しタグは、なるべく使わないでください。 Javadoc ツールは、完全に構造化されたドキュメントを作成するので、このような構造化タグが使われていると、生成ドキュメントの形式が悪影響を受けることがあります。ただし、クラスやパッケージのコメントでは、これらの見出しタグを使って独自の構造を組み立ててかまいません。 -.LP +.LP +\f3ФϤʤ٤Ѥʤ\fP \- СФƥɥơ󥳥Ȥ򵭽ҤȤˤϡ<H1> <H2> ʤɤ HTML Фϡʤ٤ȤʤǤ Javadoc ġϡ˹¤줿ɥȤΤǡΤ褦ʹ¤ȤƤȡɥȤηƶ뤳Ȥޤ饹ѥåΥȤǤϡθФȤäȼι¤ȤΩƤƤޤޤ .SS -メソッドコメントの自動コピー -.LP -.LP -Javadoc ツールには、次の 2 つの場合に、クラスおよびインタフェースのメソッドコメントをコピーまたは「継承」する機能があります。コンストラクタ、フィールド、および入れ子のクラスは、ドキュメンテーションコメントを継承しません。 -.LP +᥽åɥȤμưԡ +.LP +Javadoc ġˤϡ 2 Ĥξˡ饹ӥ󥿥եΥ᥽åɥȤ򥳥ԡޤϡַѾפ뵡ǽޤ󥹥ȥ饯եɡҤΥ饹ϡɥơ󥳥ȤѾޤ .RS 3 .TP 2 o -\f3自動的にコメントを継承して、見つからないテキストを埋める\fP \- 主説明、または \f2@return\fP タグ、\f2@param\fP タグ、\f2@throws\fP タグが、メソッドコメントで見つからない場合、Javadoc ツールは、オーバーライドしたメソッドまたは実装している場合はそのメソッドから、対応する主説明またはタグコメントを、次のアルゴリズムに従ってコピーします。 -.LP -厳密には、特定のパラメータの \f2@param\fP タグが見つからない場合、そのパラメータのコメントが、上位の継承階層のメソッドからコピーされます。特定の例外の \f2@throws\fP タグが見つからない場合、その例外が宣言されている場合にかぎり、その \f2@throws\fP タグがコピーされます。 -.LP -この動作はバージョン 1.3 以前の動作とは対照的です。 これまでのバージョンでは、主説明またはタグが存在すれば、コメントは一切継承されませんでした。 +\f3ưŪ˥ȤѾƸĤʤƥȤ\fP \- \f2@return\fP \f2@param\fP ޤ \f2@throws\fP ᥽åɥȤ˸Ĥʤ硢Javadoc ġϡС饤ɤޤϼƤϤоݤȤʤ᥽åɤ顢бޤϥȤ򡢼Υ르ꥺ˽äƥԡޤ +.LP +̩ˤϡΥѥ᡼ \f2@param\fP Ĥʤ硢Υѥ᡼ΥȤ̤ηѾؤΥ᥽åɤ饳ԡޤ㳰 \f2@throws\fP Ĥʤ硢㳰Ƥˤꡢ \f2@throws\fP ԡޤ +.LP +ưϥС 1.3 ưȤоŪǤޤǤΥСǤϡޤϥ¸ߤСȤϰڷѾޤǤ .TP 2 o -\f3{@inheritDoc} タグを持つコメントを明示的に継承する\fP \- インラインタグ \f2{@inheritDoc}\fP を、メソッドの主説明、または \f2@return\fP、\f2@param\fP、\f2@throws\fP タグコメントに挿入します。 継承した対応する主説明またはタグコメントは、その箇所にコピーされます。 +\f3{@inheritDoc} ޤॳȤŪ˷Ѿ\fP \- 饤󥿥 \f2{@inheritDoc}\fP 򡢥᥽åɤμޤ \f2@return\fP \f2@param\fP \f2@throws\fP Τ줫ΥޤбѾ줿ޤϥȤΰ֤˥ԡޤ .RE - -.LP -.LP -ドキュメンテーションコメントを実際にコピーに利用するには、継承したメソッドのソースファイルが \-sourcepath で指定したパスだけに置かれていることが必要になります。コマンド行で、クラスもパッケージも渡す必要はありません。この点は、クラスがドキュメント化されるクラスでなければならなかった 1.3.x 以前のリリースと異なります。 -.LP -.LP -\f3クラスおよびインタフェースからの継承\fP \- クラスおよびインタフェースから継承する次の 3 つの場合に、コメントの継承が行われます。 -.LP +.LP +ɥơ󥳥Ȥºݤ˥ԡѤˤϡѾ᥽åɤΥե뤬 \-sourcepath ǻꤷѥ֤Ƥ뤳ȤɬפˤʤޤޥɹԤǡ饹ѥåϤɬפϤޤ󡣤ϡ饹ɥȲ륯饹ǤʤФʤʤä 1.3.x Υ꡼Ȱۤʤޤ +.LP +\f3饹ӥ󥿥եηѾ\fP \- 饹ӥ󥿥եѾ뼡 3 ĤξˡȤηѾԤޤ .RS 3 .TP 2 o -クラスのメソッドがスーパークラスのメソッドをオーバーライドしている +饹Υ᥽åɤѡ饹Υ᥽åɤ򥪡С饤ɤƤ .TP 2 o -インタフェースのメソッドがスーパーインタフェースのメソッドをオーバーライドしている +󥿥եΥ᥽åɤѡ󥿥եΥ᥽åɤ򥪡С饤ɤƤ .TP 2 o -クラスのメソッドがインタフェースのメソッドを実装している +饹Υ᥽åɤ󥿥եΥ᥽åɤƤ .RE - -.LP -.LP -最初の 2 つのケース (メソッドがオーバーライドしている場合) では、Javadoc ツールは、そのコメントが継承されているかどうかにかかわらず、オーバーライドしているメソッドのドキュメント内に「オーバーライド」という小見出しを生成し、オーバーライドされているメソッドへのリンクを書き込みます。 -.LP -.LP -3 つ目のケース (特定のクラスのメソッドがインタフェースのメソッドを実装している場合) では、javadoc ツールは、オーバーライドしているメソッドのドキュメント内に「定義」という小見出しを生成し、実装されているメソッドへのリンクを書き込みます。これは、コメントが継承されているかどうかにかかわりません。 -.LP -.LP -\f3メソッドの説明が継承されるアルゴリズム\fP \- あるメソッドにドキュメンテーションコメントが記述されていない場合、または {@inheritDoc} タグがある場合、Javadoc ツールは、次のようなアルゴリズムを使用して適切なコメントを検索します。 このアルゴリズムは、もっとも適切なドキュメンテーションコメントを検索できるように設計されており、スーパークラスよりもインタフェースが優先されるようになっています。 -.LP +.LP +ǽ 2 ĤΥ (᥽åɤС饤ɤƤ) ǤϡJavadoc ġϡΥȤѾƤ뤫ɤˤ餺С饤ɤƤ᥽åɤΥɥˡ֥С饤ɡפȤФС饤ɤƤ᥽åɤؤΥ󥯤񤭹ߤޤ +.LP +3 ܤΥ (Υ饹Υ᥽åɤ󥿥եΥ᥽åɤƤ) Ǥϡjavadoc ġϡС饤ɤƤ᥽åɤΥɥˡפȤФƤ᥽åɤؤΥ󥯤񤭹ߤޤϡȤѾƤ뤫ɤˤޤ +.LP +\f3᥽åɤѾ륢르ꥺ\fP \- ᥽åɤ˥ɥơ󥳥ȤҤƤʤ硢ޤ {@inheritDoc} 硢Javadoc ġϡΤ褦ʥ르ꥺѤŬڤʥȤ򸡺ޤ Υ르ꥺϡäȤŬڤʥɥơ󥳥Ȥ򸡺Ǥ褦߷פƤꡢѡ饹⥤󥿥եͥ褵褦ˤʤäƤޤ .RS 3 .TP 3 1. -直接に実装されている (または、拡張されている) インタフェースを、メソッドの宣言で implements (または extends) キーワードのあとに登場する順序で、1 つずつ調べる。このメソッドについて最初に見つかったドキュメンテーションコメントを採用する +ľܤ˼Ƥ (ޤϡĥƤ) 󥿥ե򡢥᥽åɤ implements (ޤ extends) ɤΤȤо줹ǡ1 ĤĴ٤롣Υ᥽åɤˤĤƺǽ˸Ĥäɥơ󥳥ȤѤ .TP 3 2. -手順 1 でドキュメンテーションコメントが見つからなかった場合は、直接実装されている (または、拡張されている) インタフェースのそれぞれに対して、このアルゴリズム全体を再帰的に適用する (その際の順序は、手順 1 でインタフェースを調べたときの順序と同じ) + 1 ǥɥơ󥳥ȤĤʤäϡľܼƤ (ޤϡĥƤ) 󥿥եΤ줾ФơΥ르ꥺΤƵŪŬѤ (κݤνϡ 1 ǥ󥿥եĴ٤ȤνƱ) .TP 3 3. -手順 2 でドキュメンテーションコメントが見つからなかった場合で、このクラスが Object 以外のクラスである (インタフェースではない) 場合は、次のように処理する + 2 ǥɥơ󥳥ȤĤʤäǡΥ饹 Object ʳΥ饹Ǥ (󥿥եǤϤʤ) ϡΤ褦˽ .RS 3 .TP 3 a. -スーパークラスにこのメソッドについてのドキュメンテーションコメントが記述されていれば、そのコメントを採用する +ѡ饹ˤΥ᥽åɤˤĤƤΥɥơ󥳥ȤҤƤСΥȤѤ .TP 3 b. -手順 3a でドキュメンテーションコメントが見つからなかった場合は、スーパークラスに対して、このアルゴリズム全体を適用する + 3a ǥɥơ󥳥ȤĤʤäϡѡ饹ФơΥ르ꥺΤŬѤ .RE .RE - -.LP -.SH "javadoc タグ" -.LP -.LP -Javadoc ツールは、Java のドキュメンテーションコメント内に埋め込まれた特別なタグを解析します。これらのドキュメンテーションタグを使うと、書式の整った完全な API ドキュメントをソースコードから自動的に生成できます。タグは、単価記号 (\f2@\fP) で始まり、大文字と小文字が区別されます。 これらのタグは、定められたとおりの大文字と小文字を使用して記述する必要があります。タグは、行の先頭 (先行する空白と省略可能なアスタリスクは除く) に置かなければなりません。慣例として、同じ名前のタグは 1 か所にまとめて記述するようにします。たとえば、\f2@see\fP タグが複数ある場合は、すべてを 1 か所にまとめて記述します。 -.LP -.LP -タグには 2 つのタイプがあります。 -.LP +.SH "javadoc " +.LP +Javadoc ġϡJava Υɥơ󥳥ޤ줿̤ʥϤޤΥɥơ󥿥Ȥȡ񼰤ä API ɥȤ򥽡ɤ鼫ưŪǤޤϡ֥åȥޡ׵ (\f2@\fP) ǻϤޤꡢʸȾʸζ̤ޤϡʸȾʸѤơɽƤȤϤɬפޤϡԤƬ (ԤȾάǽʥꥹϽ) ֤ʤФʤޤ󡣴ȤơƱ̾Υ 1 ˤޤȤƵҤ褦ˤޤȤС \f2@see\fP Ϥ٤Ʊ֤ޤ +.LP +ˤ 2 ĤΥפޤ .RS 3 .TP 2 o -\f3ブロックタグ\fP \- 主説明に続くタグセクション内にのみ記述可能。ブロックタグは、\f2@tag\fP の形式をとります。 +\f3֥å\fP \- ³ˤΤߵҲǽ֥åϡ \f2@tag\fP ηȤޤ .TP 2 o -\f3インラインタグ\fP \- コメントの主説明内またはブロックタグのコメント内に記述可能。インラインタグは、\f2{@tag}\fP のように中括弧で囲みます。 +\f3饤󥿥\fP \- ⡢ޤϥ֥åΥ˵Ҳǽ饤󥿥ϡ \f2{@tag}\fP.Τ褦̤ǰϤߤޤ .RE - -.LP -.LP -今後のリリースで導入されるタグについては、 +.LP +Υ꡼Ƴ륿ˤĤƤϡ .na -\f2「Proposed Javadoc Tags」\fP @ +\f2Proposed Javadoc Tags\fP @ .fi -http://java.sun.com/j2se/javadoc/proposed\-tags.htmlを参照してください。 -.LP -.LP -現時点で有効なタグは、次のとおりです。 -.LP -.RS 3 - -.LP +http://java.sun.com/j2se/javadoc/proposed\-tags.html򻲾ȤƤ +.LP +ͭʥϡΤȤǤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -1267,7 +848,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f3導入された JDK/SDK のバージョン\fP +\f3Ƴ줿 JDK/SDK ΥС\fP .br .di .nr a| \n(dn @@ -1278,7 +859,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3タグ\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f2@author\fP .if \n(80<\n(38 .nr 80 \n(38 @@ -1373,7 +954,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 1124 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 867 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1392,7 +973,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3タグ\fP\h'|\n(41u' +\&\h'|\n(40u'\f3\fP\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -1486,74 +1067,38 @@ .rm a+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-44 - -.LP -.RE -.LP -カスタムタグについては、\-tag オプションを参照してください。 -.LP +.LP +ॿˤĤƤϡ\-tag ץ򻲾ȤƤ .RS 3 .TP 3 @author\ name\-text -\-author オプションが使われている場合、生成ドキュメントに「著者」の項目を追加し、指定された \f2name\-text\fP を書き込みます。1 つのドキュメンテーションコメントに複数の \f2@author\fP タグを含めることができます。1 つの \f2@author\fP タグに 1 つの名前を指定することも、1 つのタグに複数の名前を指定することもできます。前者の場合は、Javadoc ツールによって、名前と名前の間にコンマ (\f2,\fP) とスペースが挿入されます。後者の場合は、テキスト全体が、解析されることなく、生成ドキュメントにそのままコピーされます。したがって、コンマではなく、各言語に対応した名前区切り文字を使う必要があるときは、1 つのタグに複数の名前を指定してください。 +\-author ץ󤬻ѤƤ硢ꤵ줿 \f2name\-text\fP ޤ [] ȥɥȤɲäޤ1 ĤΥɥơ󥳥Ȥʣ \f2@author\fP ޤ뤳ȤǤޤ1 Ĥ \f2@author\fP 1 Ĥ̾ꤹ뤳Ȥ⡢ʣ̾ꤹ뤳ȤǤޤԤξϡJavadoc ġˤä̾̾δ֤˥ (\f2,\fP) ȶޤԤξϡƥΤϤ뤳ȤʤɥȤˤΤޤޥԡޤäơޤǤϤʤƸб̾ڤʸȤɬפȤϡ1 ĤΥʣ̾ꤷƤ .RE - -.LP -.RS 3 - -.LP -.LP -詳細については、「タグを使用できる場所」および +.LP +ܺ٤ˤĤƤϡ֥ѤǤפ .na -\f2@author タグのドキュメント\fP @ +\f2@author Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@authorを参照してください。 -.LP -.LP - -.LP -.RE +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@author򻲾ȤƤ +.LP .RS 3 .TP 3 -@deprecated\ deprecated\-text -.RS 3 - -.LP -.LP -注: JDK 5.0 から、 -.na -\f2@Deprecated 注釈\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/deprecation.htmlを使って特定のプログラム要素を非推奨にできるようになりました。 -.LP -.RE +@deprecated\ deprecated\-text : @Deprecated ȤäΥץǤ侩ˤǤޤ .RE -.RS 3 - -.LP -.LP -この API は動作し続けますが、この API を使用するべきではないことを示すコメントを追加します。Javadoc ツールは、\f2deprecated\-text\fP を主説明の前に移動してイタリックにし、その前にボールドの警告「推奨されません。」を追加します。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.LP -.LP -\f2deprecated\-text\fP の最初の文では、少なくとも、その API が推奨されなくなった時期と、代替使用するべき API を読者に提示する必要があります。Javadoc ツールは、この最初の文だけを、概要セクションと索引にコピーします。そのあとの文では、その API が推奨されない理由を説明することもできます。また、代わりの API を指し示す \f2{@link}\fP タグ (Javadoc 1.2 以降の場合) を含める必要があります。 次のように記述します。 -.LP -.LP -詳細については、 +.LP + API ư³ޤ API Ѥ٤ǤϤʤȤ򼨤ȤɲäޤJavadoc ġϡ \f2deprecated\-text\fP ˰ưƥåˤ˥ܡɤηٹֿ侩ޤ󡣡פɲäޤΥϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.LP +\f2deprecated\-text\fP κǽʸǤϡʤȤ⡢ API 侩ʤʤäȡػѤ٤ API ɼԤ󼨤ɬפޤJavadoc ġϡκǽʸ򡢳ץȺ˥ԡޤΤȤʸǤϡ API 侩ʤͳ뤳ȤǤޤAPI ؤ \f2{@link}\fP ( Javadoc 1.2 ʹߤξ) ޤ٤Ǥ +.LP +ܺ٤ˤĤƤϡ .na -\f2@deprecated タグのドキュメント\fP @ +\f2@deprecated Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@deprecatedを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@deprecated򻲾ȤƤ .RS 3 .TP 2 o -Javadoc 1.2 以降では、\f2{@link}\fP タグを使用します。これにより、必要な場所にインラインでリンクを作成できます。例を示します。 -.RE - -.LP -.RS 3 - -.LP +Javadoc 1.2 ʹߤǤ \f2{@link}\fP Ѥޤˤꡢɬפʾ˥饤ǥ󥯤ǤޤȤС .nf \f3 .fl @@ -1567,106 +1112,71 @@ .fl \fP .fi -.RE - -.LP -.RS 3 .TP 2 o -Javadoc 1.1 では、各 \f2@deprecated\fP タグに対して \f2@see\fP タグ (インラインにはできない) を記述するのが標準の形式です。 +Javadoc 1.1 ξɸϡ \f2@see\fP (饤Բ) \f2@deprecated\fP Ȥ˺뤳ȤǤ .RE - -.LP -.LP -推奨されないタグについての詳細は、 +.LP +侩ʤˤĤƤξܺ٤ϡ .na -\f2@deprecated タグ\fP @ +\f2@deprecated \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/index.htmlのドキュメントを参照してください。 -.LP -.LP - -.LP -.RE +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/index.htmlΥɥȤ򻲾ȤƤ +.LP .RS 3 .TP 3 {@code\ text} -\f2<code>{@literal}</code>\fP と同等です。 -.RE - -.LP -.RS 3 - -.LP -.LP -テキストを HTML マークアップまたは入れ子になった javadoc タグとして解釈せずに、\f2text\fP を \f2code\fP フォントで表示します。これにより doc コメントでは、パラメータの種類 (\f2<Object>\fP)、不等号 (\f23 < 4\fP)、または矢印 (\f2<\-\fP) などで、HTML エンティティー (\f2<\fP および \f2>\fP) ではなく、通常の山括弧 (\f2<\fP および \f2>\fP) を使用できます。たとえば doc コメントのテキスト -.LP +\f2<code>{@literal}</code>\fP ƱǤ +.LP +ƥȤ \f2HTML ޡå\fP ޤ \f2Ҥˤʤä javadoc \fP ȤƲ᤻ˡtext 򥳡ɥեȤɽޤΤᡢɥơ󥳥̾λ (\f2<\fP \f2>\fP) HTML ƥƥ (\f2<\fP \f2>\fP) ˻ѤǤޤȤСѥ᡼η (\f2<Object>\fP) (\f23 < 4\fP) (\f2<\-\fP) ʤɤǤȤСΥɥơ󥳥 .nf \f3 .fl \fP\f4{@code A<B>C}\fP\f3 .fl + +.fl +\fP +.fi +.LP +ϡ줿 HTML ڡǡΤ褦ˤΤޤɽޤ +.nf +\f3 +.fl + \fP\f4A<B>C\fP\f3 +.fl + +.fl +\fP +.fi +.LP +ܤ٤ϡ \f2<B>\fP ȤƲᤵ줺ΥեȤϥɥեȤˤʤ롢ȤǤ +.LP +ɥեȤʤƱǽ¸ˤϡ\f2{@literal}\fP Ѥޤ +.LP +.TP 3 +{@docRoot} +ڡ鸫ɥȤ () 롼ȥǥ쥯ȥؤХѥɽޤΥϡΥڡҤΥʤɡ뤹٤ƤΥڡ黲ȤեȤ߹ȤǤ̾ϡƥڡβΥڡ˥󥯤ޤ +.LP + \f2{@docRoot}\fP ϡޥɹԤǤɥơ󥳥ǤѤǤޤΥϡ@return@param@deprecated ʤɤǤդΥΥƥʬޤࡢ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.RS 3 +.TP 3 +1. +ޥɹԤǤϡإåեåޤϥܥȥΡȤϼΤ褦ޤ +.nf +\f3 +.fl + javadoc \-bottom '<a href="{@docRoot}/copyright.html">Copyright</a>' +.fl .fl \fP .fi - -.LP -.LP -は、生成された HTML ページで、次のようにそのまま表示されます。 -.LP -.nf -\f3 -.fl - \fP\f4A<B>C\fP\f3 -.fl - -.fl -\fP -.fi - -.LP -.LP -注目すべき点として、\f2<B>\fP は太字であると解釈されませんが、コードフォントになります。 -.LP -.LP -コードフォントなしで同じ機能を実現するには、\f2{@literal}\fP を使用します。 -.LP -.LP - -.LP -.RE -.RS 3 -.TP 3 -{@docRoot} -生成されるページから見た、生成ドキュメントの (生成先の) ルートディレクトリへの相対パスを表します。このタグは、著作権のページや会社のロゴなど、生成されるすべてのページから参照するファイルを組み込むときに便利です。通常は、各ページの下部から著作権のページにリンクします。 -.RE - -.LP -.RS 3 - -.LP -.LP -この \f2{@docRoot}\fP タグは、コマンド行からも、ドキュメンテーションコメントの中でも使用できます。このタグは、@return、@param、@deprecated などの任意のタグのテキスト部分を含む、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.LP -.RS 3 -.TP 3 -1. -コマンド行では、ヘッダー、フッター、またはボトムノートは次のように定義します。 -.nf -\f3 -.fl - javadoc \-bottom '<a href="{@docRoot}/copyright.html">Copyright</a>' -.fl - -.fl -\fP -.fi -.LP -\- \f2{@docRoot}\fP をこのように利用する場合、一部の Makefile プログラムでは、中括弧 { } 文字をエスケープする必要があります。たとえば、Inprise MAKE バージョン 5.2 を Windows 上で実行する場合は、「\f2{{@docRoot}}\fP」のように、中括弧を二重にする必要があります。さらに、\f2\-bottom\fP などのオプションに対する引数を、単一引用符ではなく、二重引用符で囲む必要があります。 \f2href\fP 引数の値を囲む引用符は省略します。 +.LP + \- \f2{@docRoot}\fP Makefile ǤΤ褦Ѥ硢 Makefile ץǤϡ { } ʸ򥨥פɬפޤȤСInprise MAKE С 5.2 Windows Ǽ¹Ԥϡ \f2{{@docRoot}} Τ褦ˡ̤Ťˤɬפޤ\fPˡ \f2\-bottom\fP ʤɤΥץФñǤϤʤŰǰϤɬפ⤢ޤ ( \f2href\fP ΰϤϾά) .TP 3 2. -ドキュメンテーションコメントの中では、次のように使用します。 +ɥơ󥳥ȤǤϡΤ褦˻Ѥޤ .nf \f3 .fl @@ -1676,16 +1186,13 @@ .fl */ .fl - + .fl \fP .fi .RE - -.LP -.LP -このタグが必要な理由は、生成ドキュメントが、サブパッケージと同じ深さを持つ階層構造のディレクトリに格納されるからです。次に例を示します。 -.LP +.LP +ΥɬפͳϡɥȤ֥ѥåƱijع¤Υǥ쥯ȥ˳Ǽ뤫Ǥ򼨤ޤ .nf \f3 .fl @@ -1695,201 +1202,118 @@ .fl \fP .fi - -.LP -.LP -次のように解決されます。 -.LP +.LP +Τ褦˲褵ޤ .nf \f3 .fl - <a href="../../copyright.html"> java/lang/Object.java の場合 + <a href="../../copyright.html"> java/lang/Object.java ξ .fl .fl \fP .fi - -.LP -.LP -および -.LP +.LP + .nf \f3 .fl - <a href="../../../copyright.html"> java/lang/ref/Reference.java の場合 + <a href="../../../copyright.html"> java/lang/ref/Reference.java ξ .fl .fl \fP .fi - -.LP -.LP - -.LP -.RE -.RS 3 +.LP .TP 3 @exception\ class\-name\ description -\f2@exception\fP タグは、\f2@throws\fP タグと同義です。 -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.RE -.RS 3 +\f2@exception\fP \f2@throws\fP ƱǤ +.LP .TP 3 {@inheritDoc}\ -もっとも近い継承可能なクラスまたは実装可能なインタフェースから、このタグの現在のドキュメンテーションコメントに、ドキュメントを継承 (コピー) します。この機能により、より汎用的なコメントを継承ツリーの上位に記述し、コピーしたテキストを使って記述することができます。 -.RE - -.LP -.RS 3 - -.LP -.LP -このタグは、ドキュメンテーションコメントの次の位置でのみ有効です。 -.LP +äȤᤤѾǽʥ饹ޤϼǽʥ󥿥ե顢ΥθߤΥɥơ󥳥ȤˡɥȤѾ (ԡ) ޤεǽˤꡢŪʥȤѾĥ꡼ξ̤˵ҤԡƥȤȤäƵҤ뤳ȤǤޤ +.LP +Υϡɥơ󥳥Ȥμΰ֤ǤΤͭǤ .RS 3 .TP 2 o -メソッドの主説明ブロック内。この場合、主説明は、上位階層のクラスまたはインタフェースからコピーされる +᥽åɤμ֥å⡣ξ硢ϡ̳ؤΥ饹ޤϥ󥿥ե饳ԡ .TP 2 o -メソッドの @return、@param、@throws タグのテキスト引数内。この場合、タグテキストは、上位階層の対応するタグからコピーされる +᥽åɤ @return@param@throws ΥƥȰ⡣ξ硢ƥȤϡ̳ؤб륿饳ԡ .RE - -.LP -.LP -継承階層でコメントを見つける方法に関する正確な説明について、「メソッドコメントの自動コピー」を参照してください。このタグが見つからない場合、コメントは、この節で説明するルールに応じて、自動的に継承されるかどうかが決まります。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +ѾؤǥȤ򸫤Ĥˡ˴ؤΤˤĤơ֥᥽åɥȤμưԡפ򻲾ȤƤΥĤʤ硢Ȥϡ롼˱ơưŪ˷Ѿ뤫ɤޤޤ +.LP .TP 3 -{@link\ \ package.class#member\ \ label}\ -表示テキスト \f2label\fP とのインラインリンクを挿入します。 \f2label\fP は、参照クラスの指定されたパッケージ、クラス、またはメンバーの名前のドキュメンテーションを指し示します。このタグは、@return、@param、@deprecated などの任意のタグのテキスト部分を含む、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -このタグは、\f2@see\fP タグとよく似ています。 どちらのタグも、\f2package.class\fP\f2#\fP\f2member\fP および \f2label\fP の参照の仕方が同じで、有効な構文もまったく同じです。大きな違いは、\f2{@link}\fP は、リンクを [関連項目] セクションに置くのではなく、インラインリンクを生成するということです。また、インラインテキストのほかの部分と区別するために、\f2{@link}\fP タグの最初と最後に中括弧を記述します。ラベルの中で「}」を使う必要がある場合は、HTML エンティティーの「}」を使います。 -.LP -.LP -1 つの文の中で使用できる \f2{@link}\fP タグの数に制限はありません。このタグは、ドキュメンテーションコメントの主説明部分、または @deprecated、@return、@param などの任意のタグのテキスト部分で使うことができます。 -.LP -.LP -たとえば、次のコメントでは \f2getComponentAt(int, int)\fP メソッドを参照しています。 -.LP +{@link\ package.class#member\ label} +ɽƥ \f2label\fP ȤΥ饤󥯤ޤlabel ϡȥ饹λꤵ줿ѥå饹ޤϥС̾ΥɥơؤޤΥϡ@return@param@deprecated ʤɤǤդΥΥƥʬޤࡢ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.LP +Υ \f2@see\fP ˤ褯Ƥޤɤ⡢\f2package.class\fP\f2#\fP\f2member\fP \f2label\fP λȤλƱǡͭʹʸޤäƱǤ礭ʰ㤤ϡ \f2{@link}\fP Ǥϡ[Ϣ] ˥󥯤֤ˡ饤Υ󥯤ȤǤޤ饤ƥȤΤۤʬȶ̤뤿ˡ \f2{@link}\fP κǽȺǸ̤򵭽Ҥޤ٥ǡ}פȤɬפϡHTML ƥƥΡ}פȤޤ +.LP +1 ʸǻѲǽ \f2{@link}\fP ο¤Ϥޤ󡣤Υϡɥơ󥳥Ȥμʬޤ @deprecated@return@param ʤɤǤդΥΥƥʬǻȤȤǤޤ +.LP +ȤСΥȤǤ \f2getComponentAt(int, int)\fP ᥽åɤ򻲾ȤƤޤ .nf \f3 .fl -{@link #getComponentAt(int, int) getComponentAt} メソッドを使用します。 +{@link #getComponentAt(int, int) getComponentAt} ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -標準ドックレットでは、上記のコメントから次の HTML が生成されます (このコメントが同じパッケージの別のクラスを参照している場合)。 -.LP +.LP +ɸɥååȤǤϡ嵭ΥȤ鼡 HTML ޤ (ΥȤƱѥå̤Υ饹򻲾ȤƤ) .nf \f3 .fl -<a href="Component.html#getComponentAt(int, int)">getComponentAt</a> メソッドを使用します。 +<a href="Component.html#getComponentAt(int, int)">getComponentAt</a> ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -この HTML は、Web ページ上では次のように表示されます。 -.LP +.LP + HTML ϡWeb ڡǤϼΤ褦ɽޤ .nf \f3 .fl -getComponentAt メソッドを使用します。 +getComponentAt ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -\f2{@link}\fP を、ドキュメント化の対象にしていないクラスにまで拡張するには、\f2\-link\fP オプションを使用します。 -.LP -.LP -詳細については、 +.LP +\f2{@link}\fP ĥƥɥȲʤ饹ؤΥ󥯤ǽˤˤϡ\f2\-link\fP ץѤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2{@link} タグのドキュメント\fP @ +\f2{@link} Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#{@link}を参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#{@link}򻲾ȤƤ +.LP .TP 3 {@linkplain\ package.class#member\ label} -リンクのラベルがコードフォントではなくプレーンテキストで表示される点以外は \f2{@link}\fP と同じです。ラベルがプレーンテキストで記述されていると便利です。例: -.RE - -.LP -.RS 3 - -.LP +󥯤Υ٥뤬ɥեȤǤϤʤץ졼ƥȤɽʳ \f2{@link}\fP ƱǤ٥뤬ץ졼ƥȤǵҤƤǤ򻲾ȤƤ: .nf \f3 .fl - {@linkplain add() the overridden method} を参照してください。 + {@linkplain add() the overridden method} 򻲾ȤƤ .fl .fl \fP .fi - -.LP -.LP -これは以下のように表示されます。 -.LP -.RS 3 - -.LP -.LP -the overridden method を参照してください。 -.LP -.RE -.LP - -.LP -.RE -.RS 3 +.LP +ϰʲΤ褦ɽޤ +.LP +the overridden method 򻲾ȤƤ +.LP .TP 3 {@literal\ text} -テキストを HTML マークアップまたは入れ子になった javadoc タグとして解釈せずに、\f2text\fP を表示します。これにより doc コメントでは、パラメータの種類 (\f2<Object>\fP)、不等号 (\f23 < 4\fP)、または矢印 (\f2<\-\fP) などで、HTML エンティティー (\f2<\fP および \f2>\fP) ではなく、通常の山括弧 (\f2<\fP および \f2>\fP) を使用できます。たとえば doc コメントのテキスト -.RE - -.LP -.RS 3 - -.LP +ƥȤ HTML ޡåפޤҤˤʤä javadoc ȤƲ᤻ˡ \f2text\fP ɽޤΤᡢɥơ󥳥̾λ (\f2<\fP \f2>\fP) HTML ƥƥ (\f2<\fP \f2>\fP) ˻ѤǤޤȤСѥ᡼η (\f2<Object>\fP) (\f23 < 4\fP) (\f2<\-\fP) ʤɤǤȤСΥɥơ󥳥 .nf \f3 .fl @@ -1899,40 +1323,22 @@ .fl \fP .fi - -.LP -.LP -は、生成された HTML ページはブラウザで次のようにそのまま表示されます。 -.LP -.LP -\f2\ \ \ \ \ \fPA<B>C -.LP -.LP -注目すべき点として、\f2<B>\fP は太字であると解釈されません (コードフォントにならない)。 -.LP -.LP -コードフォントで同じ機能を実現するには、\f2{@code}\fP を使用します。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +ϡ줿 HTML ڡϥ֥饦ǼΤ褦ˤΤޤɽޤ +.LP +\f2\ \ \ \ \ \fPA<B>C +.LP +ܤ٤ϡ \f2<B>\fP ȤƲᤵ줺ΥեȤϥɥեȤˤʤ롢ȤǤ +.LP +ɥեȤƱǽ¸ˤϡ\f2{@code}\fP Ѥޤ +.LP .TP 3 @param\ parameter\-name description -指定した \f2parameter\-name\fP と指定した \f2description\fP を使用してパラメータを「Parameters」セクションに追加します。doc コメントを記述するときは、\f2description\fP を複数行に続けることができます。このタグは、メソッド、コンストラクタ、またはクラスの doc コメント内でのみ有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2parameter\-name\fP は、メソッドまたはコンストラクタでのパラメータの名前か、クラス、メソッドまたはコンストラクタのタイプパラメータの名前になります。山括弧でパラメータ名を囲むと、型パラメータを使用することを指定します。 -.LP -.LP -クラスの型パラメータの例: -.LP +ꤵ줿 \f2parameter\-name\fP ΤȤ˻ꤵ줿 \f2description\fP ³ѥ᡼[ѥ᡼] ɲäޤɥơ󥳥Ȥ򵭽ҤȤˤϡ \f2description\fP ʣԤˤ錄äƵҤ뤳ȤǤޤΥϡ᥽åɡ󥹥ȥ饯ޤϥ饹 doc ǤΤͭǤ +.LP +\f2parameter\-name\fP ϡ᥽åɤޤϥ󥹥ȥ饯ǤΥѥ᡼̾饹᥽åɤޤϥ󥹥ȥ饯Υץѥ᡼̾ˤʤޤ̤ǥѥ᡼̾Ϥȡѥ᡼Ѥ뤳Ȥ ꤷޤ +.LP +饹ηѥ᡼: .nf \f3 .fl @@ -1950,11 +1356,8 @@ .fl \fP .fi - -.LP -.LP -メソッドの型パラメータの例: -.LP +.LP +᥽åɤηѥ᡼: .nf \f3 .fl @@ -1978,125 +1381,87 @@ .fl \fP .fi - -.LP -.LP -詳細については、 +.LP +ܺ٤ˤĤƤϡ .na -\f2@param タグのドキュメント\fP @ +\f2@param Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@paramを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@param򻲾ȤƤ +.LP .TP 3 @return\ description -[戻り値] セクションを追加して、\f2description\fP のテキストを書き込みます。このテキストでは、戻り値の型と、取り得る値の範囲について記述する必要があります。このタグは、メソッドのドキュメンテーションコメントでのみ有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -詳細については、 +[] ɲäơ \f2description\fP ΥƥȤ񤭹ߤޤΥƥȤǤϡͤηȡͤϰϤˤĤƵҤɬפޤΥϡ᥽åɤΥɥơ󥳥ȤǤΤͭǤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@return タグのドキュメント\fP @ +\f2@return Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@returnを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@return򻲾ȤƤ +.LP .TP 3 -@see\ \ reference -[関連項目] 見出しを追加し、\f2reference\fP を指すリンクか、またはテキストエントリを書き込みます。1 つのドキュメンテーションコメントには、任意の数の \f2@see\fP タグを指定できます。 すべての \f2@see\fP タグの内容は、同じの見出しの下にグループ化されます。\f2@see\fP タグには、次の 3 種類の形式があります。 もっともよく使われるのは、3 番目の形式です。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。パッケージ、クラス、またはメンバーに対するインラインリンクを文中に挿入する方法は、\f2{@link}\fP を参照してください。 +@see\ reference +ִϢܡ׸Фɲä \f2reference ؤ󥯤ޤϥƥȥȥ񤭹ߤޤ\fPɥơ󥳥ȤˤǤդο \f2@see\fP ޤ뤳ȤǤޤϤ٤ƱФβ˥롼ײޤ \f2@see\fP ˤϡ 3 ηޤäȤ褯ȤΤϡ3 ܤηǤΥϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤѥå饹ޤϥСФ륤饤󥯤ʸˡϡ\f2{@link}\fP 򻲾ȤƤ .RS 3 .TP 3 @see "string" -\f2string\fP のテキストエントリを追加します。リンクは生成されません。\f2string\fP は、書籍または URL ではアクセスできない情報の参照先です。Javadoc ツールは、最初の文字が二重引用符 (\f2"\fP) かどうかを調べて、この形式をほかの 2 つの形式と区別します。例を示します。 +\f2string Υƥȥȥɲäޤ\fP󥯤ޤ \f2string\fP ϡҤޤ URL ǤϥǤʤλǤJavadoc ġϡǽʸŰ (\f2"\fP) ɤĴ٤ơηۤ 2 Ĥηȶ̤ޤȤС .nf \f3 .fl @see "The Java Programming Language" .fl - -.fl -\fP -.fi -.LP -これは次のようなテキストを生成します。 -.RE -.RS 3 -.RS 3 - -.LP -.RS 3 -.TP 3 -関連項目: -The Java Programming Language -.RE - -.LP -.RE -.RE -.TP 3 -@see <a href="URL#value">label</a> -\f2URL\fP#\f2value\fP で定義されたとおりにリンクを追加します。\f2URL\fP#\f2value\fP は、相対 URL または絶対 URL です。Javadoc ツールは、最初の文字が「より小さい」記号 (\f2<\fP) かどうかを調べて、この形式をほかの 2 つの形式と区別します。例を示します。 -.nf -\f3 -.fl - @see <a href="spec.html#section">Java Spec</a> -.fl .fl \fP .fi .LP -これは次のようなリンクを生成します。 -.RS 3 -.RS 3 -.TP 3 -関連項目: -Java Spec -.RE +ϼΤ褦ʥƥȤޤ .RE .RE .RS 3 - -.LP -.LP - -.LP -.RE +.RS 3 +.RS 3 .RS 3 .TP 3 +Ϣ: +The Java Programming Language +.RE +.RE +.TP 3 +@see <a href="URL#value">label</a> +\f2URL\fP#\f2value\fP 줿Ȥ˥󥯤ɲäޤ \f2URL\fP#\f2value\fP URL ޤ URL ǤJavadoc ġϡǽʸ֤꾮׵ (\f2<\fP) ɤĴ٤ơηۤ 2 Ĥηȶ̤ޤȤС +.nf +\f3 +.fl + @see <a href="spec.html#section">Java Spec</a> +.fl +\fP +.fi +ϼΤ褦ʥ󥯤ޤ +.RS 3 +.TP 3 +Ϣ: +Java Spec +.RE +.TP 3 @see\ package.class#member\ label -指定された名前を持つ、参照されている Java 言語のメンバーについてのドキュメントを指すリンクを、表示テキスト \f2label\fP とともに追加します。\f2label\fP は省略可能です。 \f2label\fP を省略すると、リンク先のメンバーの名前が適切に短縮されて表示されます。 「名前が表示される方法」を参照してください。\-noqualifier を使用すると、表示テキストからパッケージ名が全体的に削除されます。ラベルは、自動生成される表示テキストとは異なる表示テキストを指定する場合に使います。 -.LP -バージョン 1.2 だけは、ラベルではなく、名前が <code> HTML タグ内に自動的に表示されます。 1.2.2 からは、ラベルを使用するか、しないかにかかわらず、<code> は常に表示テキストを囲むかたちで、含まれます。 +ĻΥƥ \f2label\fP ĥ󥯤ɲäޤΥ󥯤ϡȤʤ롢ꤵ줿 Java ̾Υɥơؤޤ \f2label\fP ϾάǽǤlabel άȡΥС̾Ŭڤṳ̂ɽޤ ̾ɽˡפ򻲾ȤƤ\-noqualifier ѤȡɽƥȤѥå̾Ū˺ޤ٥ϡưɽƥȤȤϰۤʤɽƥȤꤹ˻Ȥޤ +.LP +С 1.2 ϡ٥ǤϤʤ̾ <code> HTML ˼ưŪɽޤ 1.2.2 ϡ٥Ѥ뤫ʤˤ餺<code> ϾɽƥȤϤफǡޤޤޤ .LP .RS 3 .TP 2 o -\f4package.class\fP\f4#\fP\f4member\fP には、参照されている任意の有効なプログラム要素の名前を指定します。 つまり、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、またはフィールドの名前です。 ただし、メンバー名ーの前のドットは、シャープ記号 (\f2#\fP) で置き換えます。\f2class\fP は、任意のトップレベルまたは入れ子にされたクラスまたはインタフェースを表します。\f2member\fP は、任意のコンストラクタ、メソッドまたはフィールド (入れ子にされたクラスまたはインタフェースではない) を表します。指定した名前が、ドキュメント化されているクラスに含まれている場合、Javadoc ツールは、その名前へのリンクを自動的に作成します。外部参照クラスへのリンクを作成するには、\f2\-link\fP オプションを使います。参照クラスに属していない名前のドキュメントを参照するには、ほかの 2 つの形式の \f2@see\fP タグを使います。この引数については、このあとの「名前の指定」で詳しく説明します。 -.TP 2 -o -\f4label\fP は、省略可能なテキストで、リンクのラベルとして表示されます。\f2label\fP には空白を含めることができます。\f2label\fP を省略すると、\f2package.class.member\fP が、現在のクラスおよびパッケージに応じて適切に短縮されて表示されます。 「名前が表示される方法」を参照してください。 +\f4package.class\fP\f4#\fP\f4member\fP ˤϡȤƤǤդͭʥץǤ̾ꤷޤĤޤꡢѥå饹󥿥ե󥹥ȥ饯᥽åɡޤϥեɤ̾ǤС̾ΥɥåȤϡ㡼׵ (\f2#\fP) ֤ޤ \f2class\fP ϡǤդΥȥåץ٥ޤҤˤ줿饹ޤϥ󥿥եɽޤ \f2member\fP ϡǤդΥ󥹥ȥ饯᥽åɤޤϥե (Ҥˤ줿饹ޤϥ󥿥եǤϤʤ) ɽޤꤷ̾ɥȲƤ륯饹˴ޤޤƤ硢Javadoc ġϡ̾ؤΥ󥯤ưŪ˺ޤȥ饹ؤΥ󥯤ˤϡ\f2\-link\fP ץȤޤΥ饹°Ƥʤ̾Υɥơ򻲾ȤˤϡĤ 2 Ĥ \f2@see\fP ΤΤɤ餫ѤޤΰˤĤƤϡΤȤΡ̾λפǾܤޤ .TP 2 o -空白文字は、\f2package.class\fP\f2#\fP\f2member\fP と \f2label\fP の間の区切り文字です。括弧の内側の空白文字はラベルの先頭とは解釈されないため、メソッドのパラメータ間に空白文字を入れてもかまいません。 +\f4label\fP ϡάǽʥƥȤǡ󥯤Υ٥Ȥɽޤ \f2label\fP ˤ϶ޤ뤳ȤǤޤ \f2label\fP άȡ\f2package.class.member\fP ߤΥ饹ӥѥå˱Ŭڤṳ̂ɽޤ̾ɽˡפ򻲾ȤƤ +.TP 2 +o +򤬡 \f2package.class\fP\f2#\fP\f2member\fP \f2label\fP δ֤ζڤʸˤʤޤ̤¦ζʸϥ٥ƬȤϲᤵʤᡢ᥽åɤΥѥ᡼֤˶ʸƤ⤫ޤޤ .RE .LP -\f3例\fP \- この例では、\f2Character\fP クラスにある \f2@see\fP タグが、\f2String\fP クラスの \f2equals\fP メソッドを参照しています。タグには、名前 \f2String#equals(Object)\fP とラベル \f2equals\fP の両方の引数が含まれています。 -.RS 3 - -.LP +\f3\fP \- Ǥϡ \f2@see\fP ( \f2Character\fP 饹) String 饹 \f2equals\fP ᥽å \f2򻲾\fP ƤޤΥˤ̾\f2String#equals(Object)\fPפȥ٥\f2equals\fPפξΰޤޤƤޤ .nf \f3 .fl @@ -2106,62 +1471,33 @@ .fl */ .fl - -.fl \fP .fi -.RE -.LP -標準ドックレットは、次のような HTML を生成します。 -.RS 3 - -.LP +ɸɥååȤϡΤ褦 HTML ޤ .nf \f3 .fl <dl> .fl -<dt><b>See also:</b> +<dt><b>See Also:</b> .fl <dd><a href="../../java/lang/String#equals(java.lang.Object)"><code>equals<code></a> .fl </dl> .fl - -.fl \fP .fi -.RE -.LP -これは、ブラウザでは次のように表示され、ラベルがリンクテキストになります。 -.RS 3 +ϡ֥饦ǤϼΤ褦ɽ졢٥뤬󥯥ƥȤˤʤޤ .RS 3 .TP 3 -関連項目: +Ϣ: equals .RE -.RE -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.LP -\f3名前の指定\fP \- このタグに指定する \f2package.class\fP\f2#\fP\f2member\fP という名前は、\f2java.lang.String#toUpperCase()\fP のように完全指定することも、\f2String#toUpperCase()\fP や \f2#toUpperCase()\fP のように部分的に指定することもできます。名前が完全指定されていない場合、Javadoc ツールは、Java コンパイラの通常の検索順序でその名前を検索します。詳細は、このあとの「@see の検索順序」を参照してください。名前には、メソッドの複数の引数の間など、括弧の内側であれば空白を含めることができます。 -.LP -.LP -「部分的に指定」した短い名前を指定することの利点は、入力する文字数が減ることや、ソースコードが読みやすくなることです。次の表に、さまざまな形式の名前を示します。 この表の中で、\f2Class\fP にはクラスまたはインタフェースを、\f2Type\fP にはクラス、インタフェース、配列、または基本データ型を、そして \f2method\fP にはメソッドまたはコンストラクタを指定できます。 -.LP -.LP - -.LP -.RE -.RS 3 -.RS 3 +.LP +\f3̾λ\fP \- \f2package.class\fP\f2#\fP\f2member\fP Ȥ̾ϡ \f2java.lang.String#toUpperCase()\fP Τ褦ʴ̾ˤ뤳Ȥ⡢ \f2String#toUpperCase()\fP \f2#toUpperCase()\fP Τ褦̾ˤ뤳ȤǤޤ̾ꤵƤʤ硢Javadoc ġϡJava ѥ̾θǤ̾򸡺ޤܺ٤ϡΤȤΡ@see θפ򻲾ȤƤ̾ˤϡ᥽åɤʣΰδ֤ʤɡ̤¦Ǥжޤ뤳ȤǤޤ +.LP +ʬŪ˻פû̾ꤹ뤳ȤϡϤʸ뤳Ȥ䡢ɤɤߤ䤹ʤ뤳ȤǤɽˡޤޤʷ̾򼨤ޤǡ \f2Class\fP ˤϥ饹ޤϥ󥿥ե \f2Type\fP ˤϥ饹󥿥ե󡢤ޤϴܥǡ \f2method\fP ˤϥ᥽åɤޤϥ󥹥ȥ饯򡢤줾Ǥޤ +.LP .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -2191,7 +1527,7 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f4@see\fP\f3\ \fP\f4package.class#member\fP\f3 の一般的な形式\fP +\f4@see\fP\f3\ \fP\f4package.class#member\fP\f3 ΰŪʷ\fP .br .di .nr a| \n(dn @@ -2207,9 +1543,9 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3現在のクラスのメンバーを参照する\fP +\f3ߤΥ饹ΥС򻲾Ȥ\fP .br -\f2@see\fP\ \f2#\fP\f2field\fP +\f2@see\fP\ \f2#\fP\f2ե\fP .br \f2@see\fP\ \f2#\fP\f2method(Type,\ Type,...)\fP .br @@ -2233,21 +1569,21 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3現在の、またはインポートされたパッケージの別のクラスを参照する\fP +\f3ߤΡޤϥݡȤ줿ѥå̤Υ饹򻲾Ȥ\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2field\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2ե\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2method(Type,\ Type,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2method(Type,\ Type,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2method(Type\ argname,\ Type\ argname,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2method(Type\ argname,\ Type\ argname,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2constructor(Type,\ Type,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2constructor(Type,\ Type,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2constructor(Type\ argname,\ Type\ argname,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2constructor(Type\ argname,\ Type\ argname,...)\fP .br \f2@see\fP\ \f2Class.NestedClass\fP .br -\f2@see\fP\ \f2Class\fP +\f2@see\fP\ \f2饹\fP .br .di .nr c| \n(dn @@ -2263,9 +1599,9 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3別のパッケージの要素を参照する\fP\ (完全修飾) +\f3̤ΥѥåǤ򻲾Ȥ\fP\ () .br -\f2@see\fP\ \f2package.Class\fP\f2#\fP\f2field\fP +\f2@see\fP\ \f2package.Class\fP\f2#\fP\f2ե\fP .br \f2@see\fP\ \f2package.Class\fP\f2#\fP\f2method(Type,\ Type,...)\fP .br @@ -2279,7 +1615,7 @@ .br \f2@see\fP\ \f2package.Class\fP .br -\f2@see\fP\ \f2package\fP +\f2@see\fP\ \f2ѥå\fP .br .di .nr d| \n(dn @@ -2308,7 +1644,7 @@ .nr 40 \n(79+(0*\n(38) .nr 80 +\n(40 .nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 1860 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1358 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2396,74 +1732,52 @@ .rm d+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-58 -.RE -.RE - -.LP -.RS 3 - -.LP -.LP -上の表に対する補足事項を次に示します。 -.LP +.LP +ɽФ­򼡤˼ޤ .RS 3 .TP 2 o -最初の種類の形式 (パッケージとクラスを省略) の場合、Javadoc ツールは、現在のクラスの階層だけを検索します。つまり、現在のクラスかインタフェース、そのスーパークラスかスーパーインタフェース、または現在のクラスかインタフェースを囲んでいるクラスかインタフェースからメンバーを検索します (このあとの検索手順 1 〜 3)。現在のパッケージのほかの部分や、ほかのパッケージは検索しません (検索手順 4 〜 5)。 +ǽμη (ѥåȥ饹ά) ξ硢Javadoc ġϡߤΥ饹γؤ򸡺ޤĤޤꡢߤΥ饹󥿥եΥѡ饹ѡ󥿥եޤϸߤΥ饹󥿥եϤǤ륯饹󥿥եС򸡺ޤ (ΤȤθ 1 3)ߤΥѥåΤۤʬ䡢ۤΥѥåϸޤ ( 4 5) .TP 2 o -メソッドまたはコンストラクタを指定するときに括弧を付けずに名前だけ (\f2getValue\fP など) を使用した場合、同じ名前のフィールドが存在しなければ、Javadoc ツールはそのメソッドに対して正しくリンクを作成します。 ただし、括弧と引数を追加するように促す警告メッセージを出力します。このメソッドがオーバーロードされている場合、Javadoc ツールは、検索で最初に見つかったメソッドにリンクします。 結果は前もって特定できません。 -.TP 2 -o -入れ子にされたクラスは、上記のどの形式の場合も、単に「\f2inner\fP」ではなく、「\f2outer\fP\f2.\fP\f2inner\fP」として指定しなければなりません。 +᥽åɤޤϥ󥹥ȥ饯λˡ \f2getValue\fP Τ褦˳̤ʤ̾Ѥ硢Ʊ̾Υեɤ¸ߤƤʤСJavadoc ġˤäƤ̾ؤΥ󥯤ޤ̤ɲä桼¥ηٹåɽޤΥ᥽åɤСɤƤ硢Javadoc ġϡǺǽ˸Ĥä᥽åɤ˥󥯤ޤ̤äǤޤ .TP 2 o -すでに述べたとおり、クラスとメンバーを区切るために、ドット (\f2.\fP) ではなくシャープ記号 (\f2#\fP) を使用することに注意してください。このように指定すると、Javadoc ツールは、あいまいさを解決できます。 ドットは、クラス、入れ子にされたクラス、パッケージ、およびサブパッケージを区切るためにも使用されます。ただし、Javadoc ツールでは一般に許容範囲が広く、あいまいさがなければ、ドットでも正しく解析されます。 その場合でも警告は表示されます。 +Ҥˤʤä饹ϡ٤ƤηˤĤơ \f2outer\fP\f2.\fP\f2inner\fP Ȥƻꤹɬפޤñ \f2inner\fP ȤϤʤǤ +.TP 2 +o +Ǥ˽Ҥ٤褦ˡ\f2饹ȥСȤδ֤ζڤʸȤƤϡ\fPɥå (\f2.\fP) ǤϤʤ㡼ʸ (#) ѤޤΤ褦˻ꤹȡJavadoc ġϡޤǤޤɥåȤϡ饹Ҥˤ줿饹ѥåӥ֥ѥåڤ뤿ˤѤޤJavadoc ġǤϰ̤˵ϰϤޤʤСɥåȤǤϤޤξǤٹɽޤ .RE - -.LP -.LP -\f3@see の検索順序\fP \- Javadoc ツールは、ソースファイル (.java)、パッケージファイル (package.html または package\-info.java)、または概要ファイル (overview.html) の中に登場する \f2@see\fP タグを処理します。後者の 2 つのファイルでは、完全指定の名前を \f2@see\fP タグに指定しなければなりません。ソースファイルでは、完全指定の名前、または部分指定の名前を指定できます。 -.LP -.LP -Javadoc ツールは、\f2.java\fP ファイル内で完全指定でない名前が記述された \f2@see\fP タグを見つけると、Java コンパイラと同じ順序で指定された名前を検索します。 ただし、Javadoc ツールは、特定の名前空間のあいまいさを検出しません。 これは、ソースコードにこれらのエラーが存在していないことを前提としているためです。この検索順序は、Java 言語仕様第 2 版の第 6 章「Names」で正式に定義されています。Javadoc ツールは、関連するクラスとパッケージ、およびインポートされたクラスとパッケージのすべてから名前を検索します。具体的には、次の順序で検索します。 -.LP +.LP +\f3@see θ\fP \- Javadoc ġϡե (.java)ѥåե (package.html ޤ package\-info.java) ޤϳץե (overview.html) ˴ޤޤ \f2@see\fP ޤԤ 2 ĤΥեǤϡ̾ \f2@see\fP ˻ꤷʤФʤޤ󡣥եǤϡ̾ޤʬ̾Ǥޤ +.LP +Javadoc ġϡǤʤ̾Ҥ줿 \f2@see\fP \f2.java եǸĤȡ\fP Java ѥƱǻꤵ줿̾򸡺ޤ Javadoc ġϡ֤̾Τޤ򸡽Фޤ ϡɤˤΥ顼¸ߤƤʤȤȤƤ뤿ǤθϡJava 2 Ǥ 6 ϡNamesפƤޤJavadoc ġϡϢ륯饹ȥѥåӥݡȤ줿饹ȥѥåΤ٤Ƥ̾򸡺ޤŪˤϡνǸޤ .RS 3 .TP 3 1. -現在のクラスまたはインタフェース +ߤΥ饹ޤϥ󥿥ե .TP 3 2. -外側を囲んでいるクラスとインタフェース (もっとも近いものから検索) +¦ϤǤ륯饹ȥ󥿥ե (äȤᤤΤ鸡) .TP 3 3. -スーパークラスとスーパーインタフェース (もっとも近いものから検索) +ѡ饹ȥѡ󥿥ե (äȤᤤΤ鸡) .TP 3 4. -現在のパッケージ +ߤΥѥå .TP 3 5. -インポートされているパッケージ、クラス、およびインタフェース (import 文の順序に従って検索) +ݡȤƤѥå饹ӥ󥿥ե (import ʸν˽äƸ) .RE - -.LP -.LP -Javadoc ツールは、各クラスについて手順 1 〜 3 を再帰的に適用しながら、一致する名前が見つかるまで検索を続けます。つまり、まず現在のクラスを検索し、次にそのクラスを囲んでいるクラス E を検索し、その次に E のスーパークラスを検索し、さらにその次に E を囲んでいるクラスを検索します。 手順 4 と 5 では、1 つのパッケージ内のクラスまたはインタフェースを検索する順序は決まっていません。 その順序は、個々のコンパイラによって異なります。手順 5 では、Javadoc ツールは、java.lang を検索します。 このパッケージは、すべてのプログラムに自動的にインポートされるからです。 -.LP -.LP -Javadoc ツールは、必ずしもサブクラスを検索するとは限りません。 また、javadoc の実行中にほかのパッケージのドキュメントが生成される場合でも、ほかのパッケージを検索しません。たとえば、\f2@see\fP タグが \f2java.awt.event.KeyEvent\fP クラス内にあって、\f2java.awt\fP パッケージにある名前を参照している場合、Javadoc は、そのクラスがインポートしないかぎりそのパッケージを検索しません。 -.LP -.LP -\f3名前が表示される方法\fP \- \f2label\fP を省略すると、\f2package.class.member\fP が表示されます。一般に、package.class.member は、現在のクラスおよびパッケージに応じて適切に短縮されます。「短縮される」とは、必要最小限の名前だけが表示されるということです。たとえば、\f2String.toUpperCase()\fP メソッドに、同じクラスのメンバーへの参照とほかのクラスのメンバーへの参照が含まれている場合、クラス名が表示されるのは後者のケースだけです (次の表を参照)。 -.LP -.LP -パッケージ名を広域的に削除するには、\-noqualifier を使用します。 +.LP +Javadoc ġϡƥ饹ˤĤƼ 1 3 ƵŪŬѤʤ顢פ̾ĤޤǸ³ޤĤޤꡢޤߤΥ饹򸡺ˤΥ饹ϤǤ륯饹 E 򸡺μ E Υѡ饹򸡺ˤμ E ϤǤ륯饹򸡺ޤ 4 5 Ǥϡ1 ĤΥѥåΥ饹ޤϥ󥿥ե򸡺ϷޤäƤޤ󡣤νϡġΥѥˤäưۤʤޤ 5 ǤϡJavadoc ġϡjava.lang 򸡺ޤΥѥåϡ٤ƤΥץ˼ưŪ˥ݡȤ뤫Ǥ +.LP +Javadoc ġϡɬ⥵֥饹򸡺Ȥϸ¤ޤ󡣤ޤjavadoc μ¹ˤۤΥѥåΥɥȤǤ⡢ۤΥѥå򸡺ޤ󡣤ȤС \f2@see\fP \f2java.awt.event.KeyEvent\fP 饹˴ޤޤƤơ \f2java.awt\fP ѥåΤ̾򻲾ȤƤƤ⡢Υ饹ǤΥѥåݡȤʤꡢjavadoc ϤΥѥåǤθԤޤ +.LP +\f3̾ɽˡ\fP \- \f2label\fP άϡ\f2package.class.member\fP ɽޤ̤ˡpackage.class.member ϡߤΥ饹ӥѥå˱Ŭڤṳ̂ޤṳ̂פȤϡɬ׺Ǿ¤̾ɽȤȤǤȤС \f2String.toUpperCase()\fP ᥽åɤˡƱ饹ΥСؤλȤȤۤΥ饹ΥСؤλȤޤޤƤ硢饹̾ɽΤϸԤΥǤ (ɽ򻲾) +.LP +ѥå̾򹭰Ū˺ˤϡ\-noqualifier Ѥޤ .br - -.LP -.RE -.RS 3 -.RS 3 .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -2493,7 +1807,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f4String.toUpperCase()\fP\f3 での例\fP +\f4String.toUpperCase() Ǥ\fP .br .di .nr a| \n(dn @@ -2509,7 +1823,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが同じクラスのメンバーを参照している +\f2@see\fP Ʊ饹ƱѥåΥС򻲾ȤƤ .br .di .nr b| \n(dn @@ -2525,7 +1839,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2toLowerCase()\fP (クラス名は省略) +\f2toLowerCase()\fP (饹̾Ͼά) .br .di .nr c| \n(dn @@ -2541,7 +1855,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが別のクラスのメンバーを参照している +\f2@see\fP ۤʤ륯饹ƱѥåΥС򻲾ȤƤ .br .di .nr d| \n(dn @@ -2573,7 +1887,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2Character.toLowerCase(char)\fP (パッケージ名は省略し、クラス名を含む) +\f2Character.toLowerCase(char)\fP (ѥå̾Ͼά饹̾ޤ) .br .di .nr f| \n(dn @@ -2589,7 +1903,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが別のクラスのメンバーを参照している +\f2@see\fP ۤʤ륯饹ۤʤѥåΥС򻲾ȤƤ .br .di .nr g| \n(dn @@ -2621,7 +1935,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2java.io.File.exists()\fP (パッケージ名とクラス名を含む) +\f2java.io.File.exists()\fP (ѥå̾ȥ饹̾ޤ) .br .di .nr i| \n(dn @@ -2632,7 +1946,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3参照の種類\fP +.nr 38 \w\f3Ȥμ\fP .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 @@ -2654,7 +1968,7 @@ .nr 38 \n(h- .if \n(81<\n(38 .nr 81 \n(38 .nr 82 0 -.nr 38 \w\f3表示される名前\fP +.nr 38 \w\f3ɽ̾\fP .if \n(82<\n(38 .nr 82 \n(38 .82 .rm 82 @@ -2676,7 +1990,7 @@ .nr 42 \n(81+(3*\n(38) .nr 82 +\n(42 .nr TW \n(82 -.if t .if \n(TW>\n(.li .tm Table at line 1958 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1434 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2695,7 +2009,7 @@ .ta \n(80u \n(81u \n(82u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3参照の種類\fP\h'|\n(41u'\h'|\n(42u'\f3表示される名前\fP +\&\h'|\n(40u'\f3Ȥμ\fP\h'|\n(41u'\h'|\n(42u'\f3ɽ̾\fP .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -2814,22 +2128,14 @@ .rm i+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-28 -.RE -.RE - -.LP -.RS 3 - -.LP -.LP -\f3@see の例\fP +.LP +\f3@see \fP .br -右側のコメントは、\f2@see\fP タグが別のパッケージ (\f2java.applet.Applet\fP など) のクラス内にある場合に、名前がどのように表示されるかを示しています。 -.LP +¦ΥȤϡ \f2@see\fP \f2java.applet.Applet\fP Τ褦̤ΥѥåΥ饹ˤˡ̾ɤΤ褦ɽ뤫򼨤Ƥޤ .nf \f3 .fl - 関連項目: + Ϣ: .fl @see java.lang.String // String \fP\f3 .fl @@ -2849,121 +2155,68 @@ .fl @see "The Java Programming Language" // "The Java Programming Language" \fP\f3 .fl - -.fl \fP .fi - -.LP -.LP -\f2@see\fP を、ドキュメント化の対象にしていないクラスにまで拡張するには、\f2\-link\fP オプションを使用します。 -.LP -.LP -詳細については、 +\f2@see\fP ĥƥɥȲʤ饹ؤΥ󥯤ǽˤˤϡ\f2\-link\fP ץѤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@see タグのドキュメント\fP @ +\f2@see Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@seeを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@see򻲾ȤƤ .RE -.LP - +.RE .LP .RS 3 .TP 3 @serial\ field\-description | include | exclude -デフォルトの直列化可能フィールドのドキュメンテーションコメントで使用します。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2field\-description\fP (省略可能) では、フィールドの意味を説明し、取り得る値のリストを示す必要があります。必要に応じて、複数の行に渡って説明を記述できます。標準ドックレットは、この情報を、直列化された形式のページに追加します。 -.LP -.LP -クラスを直列化したあとしばらくしてから直列化可能フィールドをクラスに追加した場合、主説明に、追加したバージョンを識別する文を追加する必要があります。 -.LP -.LP -\f2include\fP および \f2exclude\fP 引数は、直列化された形式のページにクラスまたはパッケージを含めるか除外するかを示します。これらの引数には、次のような効果があります。 -.LP +ǥեȤľ󲽲ǽեɤΥɥơ󥳥ȤǻѤޤ +.LP +\f2field\-description\fP (άǽ) Ǥϡեɤΰ̣ͤΥꥹȤ򼨤ɬפޤɬפ˱ơʣιԤϤä򵭽ҤǤޤɸɥååȤϡξľ󲽤줿Υڡɲäޤ +.LP +饹ľ󲽤ȤФ餯Ƥľ󲽲ǽեɤ򥯥饹ɲä硢ˡɲäС̤ʸɲäɬפޤ +.LP +\f2include\fP \f2exclude\fP ϡľ󲽤줿Υڡ˥饹ޤϥѥåޤ뤫뤫򼨤ޤΰˤϡΤ褦ʸ̤ޤ .RS 3 .TP 2 o -\f2Serializable\fP を実装している public または protected クラスは、通常はそのページに含められます。 ただし、そのクラスまたはそのクラスが属するパッケージが \f2@serial exclude\fP で指定されていると、そのページから除外されます。 +\f2Serializable\fP Ƥ public ޤ protected 饹ϡΥ饹 (ޤϤΥѥå) \f2@serial exclude\fP ȤƥޡƤʤꡢޤޤ .TP 2 o -\f2Serializable\fP を実装している private または package private クラスは、通常はそのページから除外されます。 ただし、そのクラスまたはそのクラスが属するパッケージが \f2@serial include\fP で指定されていると、そのページに含められます。 +\f2Serializable\fP Ƥ private ޤ package\-private 饹ϡΥ饹 (ޤϤΥѥå) \f2@serial include\fP Ȥ ޡƤʤꡢޤ .RE - -.LP -.LP -例: \f2javax.swing\fP パッケージは、\f2@serial exclude\fP で指定されています (\f2package.html\fP または \f2package\-info.java\fP 内)。public クラス \f2java.security.BasicPermission\fP は、\f2@serial exclude\fP で指定されています。package private クラス \f2java.util.PropertyPermissionCollection\fP は、\f2@serial include\fP で指定されています。 -.LP -.LP -クラスレベルで指定された @serial タグは、パッケージレベルで指定された @serial タグをオーバーライドします。 -.LP -.LP -これらのタグの使用法についての詳細と使用例は、「Java オブジェクト直列化仕様」の第 1.6 節 +.LP +: \f2javax.swing\fP ѥå \f2@serial exclude\fP ( \f2package.html\fP ޤ \f2package\-info.java\fP) ȤƥޡƤޤpublic 饹 \f2java.security.BasicPermission\fP \f2@serial exclude\fP ȤƥޡƤޤpackage\-private 饹 \f2java.util.PropertyPermissionCollection\fP \f2@serial include\fP ȤƥޡƤޤ +.LP +饹٥ǻꤵ줿 @serial ϡѥå٥ǻꤵ줿 @serial 򥪡С饤ɤޤ +.LP +ΥλˡˤĤƤξܺ٤ȻϡJava ֥ľ󲽻͡פ 1.6 .na -\f2「クラスの直列化可能なフィールドおよびデータの文書化」\fP @ +\f2֥饹ľ󲽲ǽʥեɤӥǡʸ񲽡\fP @ .fi -http://java.sun.com/javase/6/docs/platform/serialization/spec/serial\-arch.htmlを参照してください。また、 +http://java.sun.com/javase/6/docs/platform/serialization/spec/serial\-arch.html򻲾ȤƤޤ .na -\f2「直列化の FAQ」\fP @ -.fi -http://java.sun.com/products/jdk/serialization/faq/#javadoc_warn_missingも参照してください。 この FAQ には、「\-private スイッチを指定しないで javadoc を実行しているのに private フィールドの @serial タグが見つからないという javadoc の警告が表示される」などの一般的な質問への回答が記載されています。直列化形式仕様にクラスを含める場合には、 -.na -\f2「Sun の仕様」\fP @ +\f2ľ󲽤 FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingapispecs/serialized\-criteria.htmlも参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/products/jdk/serialization/faq/#javadoc_warn_missing⻲ȤƤ FAQ ˤϡ\-private åꤷʤ javadoc ¹ԤƤΤ private եɤ @serial ĤʤȤ javadoc ηٹɽפʤɤΰŪʼؤβܤƤޤľ󲽷ͤ˥饹ޤˤϡ +.na +\f2Sun λ͡\fP @ +.fi +http://java.sun.com/j2se/javadoc/writingapispecs/serialized\-criteria.html⻲ȤƤ +.LP .TP 3 @serialField\ field\-name\ field\-type\ field\-description -\f2Serializable\fP クラスの \f2serialPersistentFields\fP メンバーの \f2ObjectStreamField\fP コンポーネントをドキュメント化します。各 \f2ObjectStreamField\fP コンポーネントに対して \f2@serialField\fP タグを 1 つ使う必要があります。 -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.RE -.RS 3 +Serializable \f2饹\fP serialPersistentFields \f2С\fP ObjectStreamField ݡͥ \f2ɥȲ\fP ޤ1 Ĥ \f2@serialField\fP \f2ObjectStreamField\fP ݡͥȤǻѤ٤Ǥ +.LP .TP 3 @serialData\ data\-description -\f2data\-description\fP は、直列化された形式でのデータの型と順序を説明するテキストです。このデータには、特に、\f2writeObject\fP メソッドによって書き込まれる省略可能なデータ、および \f2Externalizable.writeExternal\fP メソッドによって書き込まれるすべてのデータ (基底クラスを含む) が含まれます。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2@serialData\fP タグは、\f2writeObject\fP、\f2readObject\fP、\f2writeExternal\fP、\f2readExternal\fP、\f2writeReplace\fP、および \f2readResolve\fP メソッドのドキュメンテーションコメントで使用できます。 -.LP -.LP - -.LP -.RE -.RS 3 +\f2data\-description\fP ϡľ󲽤줿ǤΥǡηȽƥȤǤŪ˸ȡΥǡˤϡ \f2writeObject\fP ᥽åɤˤäƽ񤭹ޤάǽʥǡ \f2Externalizable.writeExternal\fP ᥽åɤˤäƽ񤭹ޤ뤹٤ƤΥǡ (쥯饹ޤ) ޤޤޤ +.LP +\f2@serialData\fP ϡ \f2writeObject\fP \f2readObject\fP \f2writeExternal\fP \f2readExternal\fP \f2writeReplace\fP \f2readResolve\fP ᥽åɤΥɥơ󥳥ǻѤǤޤ +.LP .TP 3 @since\ since\-text -生成ドキュメントに [導入されたバージョン] 見出しを追加し、指定された \f2since\-text\fP を書き込みます。このテキストには、特別な内部構造はありません。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。このタグは、特定の変更または機能が、\f2since\-text\fP に示されたソフトウェアリリース以降、存在していることを意味します。例を示します。 -.RE - -.LP -.RS 3 - -.LP +ɥȤ [Ƴ줿С] Фɲäꤵ줿 \f2since\-text\fP 񤭹ߤޤΥƥȤˤϡ̤¤Ϥޤ󡣤Υϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤΥϡѹޤϵǽ \f2since\-text ˼줿եȥ꡼ʹߡ¸ߤƤ뤳Ȥ̣ޤ\fPȤС .nf \f3 .fl @@ -2973,52 +2226,26 @@ .fl \fP .fi - -.LP -.LP -Java プラットフォームのソースコードの場合、このタグは、Java プラットフォーム API 仕様のバージョンを示します。 その変更や機能がリファレンス実装に追加された時期を示すとは限りません。複数の @since タグを使用でき、複数の @author タグのように扱われます。プログラム要素が複数の API で使用される場合、複数のタグを使用できます。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +Java ץåȥեΥɤξ硢ΥϡJava ץåȥե API ͤΥС򼨤ޤѹ䵡ǽե󥹼ɲä줿򼨤Ȥϸ¤ޤʣ @since ѤǤʣ @author Τ褦˰ޤץǤʣ API ǻѤ硢ʣΥѤǤޤ +.LP .TP 3 -@throws\ class\-name\ description\ -\f2@throws\fP タグと \f2@exception\fP タグは同義です。生成ドキュメントに [例外] 小見出しを追加して、\f2class\-name\fP と \f2description\fP テキストを書き込みます。\f2class\-name\fP は、そのメソッドからスローされる可能性のある例外の名前です。このタグは、メソッド、コンストラクタの doc コメント内でのみ有効です。このクラスが完全指定の名前で記述されていない場合、Javadoc ツールは、検索順序に従ってクラスを探します。同じまたは異なる例外の doc コメントで、複数の \f2@throws\fP タグを使用できます。 -.RE - -.LP -.RS 3 - -.LP -.LP -すべてのチェック済み例外がドキュメント化されるようにするために、\f2@throws\fP タグが throws 節内の例外用に存在しない場合は、@throws タグのあるドキュメントであるかのように、Javadoc ツールによって例外が HTML 出力に説明なしで自動的に追加されます。 -.LP -.LP -オーバーライドされるメソッド内で例外が明示的に宣言されている場合のみ、\f2@throws\fP ドキュメンテーションをそのメソッドからサブクラスにコピーされます。インタフェースメソッドから実装メソッドにコピーされる場合も同様です。@throws にドキュメンテーションを継承させるには、{@inheritDoc} を使用できます。 -.LP -.LP -詳細については、 +@throws\ class\-name\ description +\f2@throws\fP \f2@exception\fP ƱǤɥȤˡ㳰׾Фɲäơ \f2class\-name\fP \f2description\fP ΥƥȤ񤭹ߤޤ \f2class\-name\fP ϡΥ᥽åɤ饹ǽΤ㳰̾ǤΥϡ᥽åɡ󥹥ȥ饯 doc ǤΤͭǤΥ饹̾ǵҤƤʤ硢Javadoc ġϡ˽äƥ饹õޤƱޤϰۤʤ㳰 doc Ȥǡʣ \f2@throws\fP ѤǤޤ +.LP +٤ƤΥåѤ㳰ɥȲ褦ˤ뤿ˡ \f2@throws\fP throws 㳰Ѥ¸ߤʤϡ@throws ΤɥȤǤ뤫Τ褦ˡJavadoc ġˤä㳰 HTML ϤʤǼưŪɲäޤ +.LP +С饤ɤ᥽å㳰ŪƤΤߡ \f2@throws\fP ɥơ󤬤Υ᥽åɤ饵֥饹˥ԡޤ󥿥ե᥽åɤ᥽åɤ˥ԡƱͤǤ@throws ˥ɥơѾˤϡ{@inheritDoc} ѤǤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@throws タグのドキュメント\fP @ +\f2@throws Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@exceptionを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@exception򻲾ȤƤ +.LP .TP 3 {@value\ package.class#field} -\f2{@value}\fP が静的フィールドの doc コメントで 引数なしで使用されている場合、その定数の値が表示されます。 -.RE - -.LP -.RS 3 - -.LP +\f2{@value}\fP Ūեɤ doc Ȥ ʤǻѤƤ硢ͤɽޤ .nf \f3 .fl @@ -3034,11 +2261,8 @@ .fl \fP .fi - -.LP -.LP -任意の doc コメント内で引数 \f2package.class#field\fP ありで使用されている場合は、指定した定数の値が表示されます。 -.LP +.LP +ǤդΥɥơ󥳥ǰ \f2package.class#field\fP ǻѤ줿ϡλꤵ줿ͤɽޤ .nf \f3 .fl @@ -3056,448 +2280,130 @@ .fl \fP .fi - -.LP -.LP -引数 \f2package.class#field\fP は、@see 引数と同一の形式になります。ただし、メンバーが静的フィールドになければならない点が異なります。 -.LP -.LP -これらの定数での値は、 +.LP + \f2package.class#field\fP ϡ@see ƱηˤʤޤСŪեɤˤʤФʤʤۤʤޤ +.LP +Ǥͤϡ .na -\f2定数フィールド値\fP @ +\f2ե\fP @ .fi -http://java.sun.com/javase/6/docs/api/constant\-values.htmlページにも表示されます。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/javase/6/docs/api/constant\-values.htmlڡˤɽޤ +.LP .TP 3 @version\ version\-text -\-version オプションが使われている場合、生成ドキュメントに [バージョン] 小見出しを追加して、指定された \f2version\-text\fP を書き込みます。このタグは、このコードが含まれるソフトウェアの現在のバージョン番号を保持するように意図されています。 これに対し、@since は、このコードが導入されたバージョン番号を保持します。\f2version\-text\fP には、特別な内部構造はありません。バージョンタグを使用できる場所を調べるには、「タグを使用できる場所」を参照してください。 -.RE - -.LP -.RS 3 - -.LP -.LP -1 つのドキュメンテーションコメントに複数の \f2@version\fP タグを含めることができます。必要に応じて、\f2@version\fP タグごとに 1 つのバージョン番号を指定することも、タグごとに複数のバージョン番号を指定することもできます。前者の場合は、Javadoc ツールによって、名前と名前の間にコンマ (\f2,\fP) とスペースが挿入されます。後者の場合は、テキスト全体が、解析されることなく、生成ドキュメントにそのままコピーされます。したがって、コンマではなく、各言語に対応した名前区切り文字を使う必要があるときは、1 つのタグに複数の名前を指定してください。 -.LP -.LP -詳細については、 +\-version ץ󤬻ѤȡɥȤ [С] Фɲäꤵ줿 \f2version\-text\fP 񤭹ߤޤΥϡΥɤޤޤ륽եȥθߤΥСֹݻ褦˰տޤƤޤФ@since ϡΥɤƳ줿Сֹݻޤ \f2version\-text\fP ˤϡ̤¤Ϥޤ󡣥С󥿥ѤǤĴ٤ˤϡ֥ѤǤפ򻲾ȤƤ +.LP +1 ĤΥɥơ󥳥Ȥʣ \f2@version\fP ޤ뤳ȤǤޤ̣ʤϰǡ1 Ĥ \f2@version\fP 1 ĤΥСֹꤹ뤳Ȥ⡢ʣΥСֹꤹ뤳ȤǤޤԤξϡJavadoc ġˤä̾̾δ֤˥ (\f2,\fP) ȶ̾δ֤ޤԤξϡƥΤϤ뤳ȤʤɥȤˤΤޤޥԡޤäơޤǤϤʤƸб̾ڤʸȤɬפȤϡ1 ĤΥʣ̾ꤷƤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@version タグのドキュメント\fP @ +\f2@version Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@versionを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@version򻲾ȤƤ .RE -.LP .SS -タグを使用できる場所 -.LP -ここでは、タグを使用できる場所について説明します。\f2@see\fP、\f2@since\fP、\f2@deprecated\fP、\f2{@link}\fP、\f2{@linkplain}\fP および \f2{@docroot}\fP のタグは、すべての doc コメントで使用できます。 -.RS 3 - -.LP +ѤǤ +.LP +ǤϡѤǤˤĤޤ٤ƤΥɥơ󥳥ȤǻѲǽʥϼΤȤǤ \f2@see\fP \f2@since\fP \f2@deprecated\fP \f2{@link}\fP \f2{@linkplain}\fP \f2{@docroot}\fP .SS -概要のドキュメンテーションタグ -.LP -.LP -概要タグは、概要ページのドキュメンテーションコメントで使用できるタグです。 このドキュメンテーションコメントは、通常 \f2overview.html\fP という名前ソースファイル内にあります。ほかのドキュメンテーションコメントの場合と同様に、これらのタグは、主説明のあとで使う必要があります。 -.LP -.LP -\f3注\fP \- バージョン 1.2 では、概要ドキュメント内の \f2{@link}\fP タグにバグがあります。テキストは正しく表示されますが、リンクが設定されません。現在のところ、\f2{@docRoot}\fP タグは、概要ドキュメント内では動作しません。 -.LP +פΥɥơ󥿥 +.LP +ץϡץڡΥɥơ󥳥ȤǻѤǤ륿ǤΥɥơ󥳥Ȥϡ̾ \f2overview.html\fP Ȥ̾Υեˤޤ ۤΥɥơ󥳥ȤξƱͤˡΥϡΤȤǻȤɬפޤ +.LP +\f3\fP \- С 1.2 Ǥϡץɥ \f2{@link}\fP ˥ХޤƥȤɽޤ󥯤ꤵޤ󡣸ߤΤȤ \f2{@docRoot}\fP ϡץɥǤưޤ +.LP +\f3ץ\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3概要タグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2279 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3概要タグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-20 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE .SS -パッケージドキュメンテーションタグ -.LP -.LP -パッケージタグは、パッケージのドキュメンテーションコメントで使用できるタグです。 このドキュメンテーションコメントは、\f2package.html\fP または \f2package\-info.java\fP という名前のソースファイル内にあります。ここで使用できる \f2@serial\fP タグは、\f2include\fP または \f2exclude\fP 引数を指定したものだけです。 -.LP +ѥåɥơ󥿥 +.LP +ѥåϡѥåΥɥơ󥳥ȤǻѤǤ륿ǤΥɥơ󥳥Ȥ \f2package.html\fP ޤ \f2package\-info.java\fP Ȥ̾ΥեˤޤǻѤǤ \f2@serial\fP ϡ \f2include\fP ޤ \f2exclude\fP ꤵ줿ΤǤ +.LP +\f3ѥå\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@serial\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3パッケージタグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2315 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3パッケージタグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-22 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE .SS -クラスおよびインタフェースドキュメンテーションタグ -.LP -.LP -次に、クラスまたはインタフェースのドキュメンテーションコメントで使用できるタグを示します。ここで使用できる \f2@serial\fP タグは、\f2include\fP または \f2exclude\fP 引数を指定したものだけです。 -.LP +饹ӥ󥿥եɥơ󥿥 +.LP +ˡ饹ޤϥ󥿥եΥɥơ󥳥ȤǻѤǤ륿򼨤ޤǻѤǤ \f2@serial\fP ϡ \f2include\fP ޤ \f2exclude\fP ꤵ줿ΤǤ +.LP +\f3饹ӥ󥿥ե\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f3クラスおよびインタフェースタグ\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 80 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@serial\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \n(b- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2355 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-26 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE -\f3次にクラスコメントの例を示します。\fP -.LP +\f3˥饹Ȥ򼨤ޤ\fP .nf \f3 .fl @@ -3533,137 +2439,44 @@ .fl } .fl - -.fl \fP .fi - -.LP .SS -フィールドドキュメンテーションタグ -.LP -.LP -次に、フィールドのドキュメンテーションコメントで使用できるタグを示します。 -.LP +եɥɥơ󥿥 +.LP +ˡեɤΥɥơ󥳥ȤǻѤǤ륿򼨤ޤ +.LP +\f3եɥ\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@serial\fP -.br -\f2@serialField\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -\f2{@value}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3フィールドタグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2436 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3フィールドタグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-24 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@serialField\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP +.TP 2 +o +\f2{@value}\fP .RE -\f3次にフィールドコメントの例を示します。\fP -.LP +\f3˥եɥȤ򼨤ޤ\fP .nf \f3 .fl @@ -3679,170 +2492,50 @@ .fl int x = 1263732; .fl - -.fl \fP .fi - -.LP .SS -コンストラクタおよびメソッドドキュメンテーションタグ -.LP -.LP -次に、コンストラクタまたはメソッドのドキュメンテーションコメント内で表示できるタグを示します。 ただし、\f2@return\fP はコンストラクタでは表示できず、\f2{@inheritDoc}\fP は表示に制限があります。\f2@serialData\fP タグは特定の直列化メソッドの doc コメントでのみ使用できます。 -.LP +󥹥ȥ饯ӥ᥽åɥɥơ󥿥 +.LP +ˡ󥹥ȥ饯ޤϥ᥽åɤΥɥơ󥳥ȤǻѤǤ륿򼨤ޤ \f2@return\fP ϥ󥹥ȥ饯ǤϻѤǤ \f2{@inheritDoc}\fP ˤ¤ޤ \f2@serialData\fP ľ󲽥᥽åɤ doc ȤǤΤ߻ѤǤޤ +.LP +\f3᥽åɤӥ󥹥ȥ饯\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f3メソッドおよびコンストラクタタグ\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 80 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@param\fP -.br -\f2@return\fP -.br -\f2@throws\fP と \f2@exception\fP -.br -\f2@serialData\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@inheritDoc}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \n(b- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2503 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-30 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@param\fP +.TP 2 +o +\f2@return\fP +.TP 2 +o +\f2@throws\fP \f2@exception\fP +.TP 2 +o +\f2@serialData\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@inheritDoc}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE -\f3次にメソッドのドキュメンテーションコメントの例を示します。\fP -.LP +\f3˥᥽åɤΥɥơ󥳥Ȥ򼨤ޤ\fP .nf \f3 .fl @@ -3874,22 +2567,13 @@ .fl } .fl - -.fl \fP .fi -.RE -.SH "オプション" -.LP -.LP -javadoc ツールは、ドックレットを使って出力を決定します。Javadoc ツールは、\-doclet オプションでカスタムドックレットが指定されている場合以外は、デフォルトの標準ドックレットを使います。Javadoc ツールには、任意のドックレットとともに使用できるコマンド行オプションがあります。 これらのオプションについては、このあとの「Javadoc オプション」で説明します。標準ドックレットでは、このほかに、いくつかの追加のコマンド行オプションが提供されます。 これらのオプションについては、そのあとの「標準ドックレットが提供するオプション」で説明します。どのオプション名も、大文字と小文字が区別されません。 ただし、オプションの引数では、大文字と小文字が区別されます。 -.LP -.LP -オプションを次に示します。 -.LP -.RS 3 - -.LP +.SH "ץ" +.LP +javadoc ġϡɥååȤȤäƽϤꤷޤJavadoc ġϡ\-doclet ץǥɥååȤꤵƤʳϡǥեȤɸɥååȤȤޤJavadoc ġˤϡǤդΥɥååȤȤȤ˻ѤǤ륳ޥɹԥץ󤬤ޤΥץˤĤƤϡΤȤΡJavadoc ץפޤɸɥååȤǤϡΤۤˡĤɲäΥޥɹԥץ󶡤ޤΥץˤĤƤϡΤȤΡɸɥååȤ󶡤륪ץפޤɤΥץ̾⡢ʸȾʸ̤ޤ󡣤ץΰǤϡʸȾʸ̤ޤ +.LP +ץϼΤȤǤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -4043,6 +2727,8 @@ .br \-\f2sourcepath\fP .br +\-sourcetab +.br \-splitindex .br \-stylesheetfile @@ -4055,6 +2741,8 @@ .br \-tagletpath .br +\-top +.br \-title .br \-use @@ -4101,7 +2789,7 @@ .nr 42 \n(81+(3*\n(38) .nr 82 +\n(42 .nr TW \n(82 -.if t .if \n(TW>\n(.li .tm Table at line 2680 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 2009 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4157,54 +2845,49 @@ .rm b+ .rm c+ .TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-123 - -.LP -.RE -.LP -\f2イタリック\fPで示されたオプションは、Javadoc の基本オプションであり、Javadoc ツールのフロントエンドによって提供され、すべてのドックレットで使用できます。標準ドックレット自体は、イタリックでないオプションを提供します。 -.LP +.if \n-(b.=0 .nr c. \n(.c-\n(d.-127 +.LP +\f2å\fP Ǽ줿ץϡJavadoc δܥץǤꡢJavadoc ġΥեȥɤˤä󶡤졢٤ƤΥɥååȤǻѤǤޤɸɥååȼΤϡåǤʤץ󶡤ޤ .SS -Javadoc オプション -.LP +Javadoc ץ .RS 3 .TP 3 \-overview \ path/filename -Javadoc に対して、\f2path/filename\fP で指定された「ソース」ファイルから概要ドキュメント用のテキストを取得し、そのテキストを概要ページ (\f2overview\-summary.html\fP) に配置するように指定します。\f2path/filename\fP は、\f2\-sourcepath\fP への相対パスです。 -.LP -\f2filename\fP と \f2path\fP には、それぞれ任意の名前と場所を指定できますが、通常は、\f2overview.html\fP という名前を付けて、ソースツリー内の最上位のパッケージディレクトリがあるディレクトリに配置します。この場所に配置すると、\f2\-sourcepath\fP によってこのファイルが指し示されるので、パッケージをドキュメント化する際に \f2path\fP が不要になります。たとえば、\f2java.lang\fP パッケージのソースツリーが \f2/src/classes/java/lang/\fP の場合、概要ファイルを \f2/src/classes/overview.html\fP に配置できます。「使用例」を参照してください。 -.LP -\f2path/filename\fP で指定するファイルについては、「概要コメントファイル」を参照してください。 -.LP -概要ページが作成されるのは、Javadoc に複数のパッケージ名を渡した場合だけです。詳細は、「HTML フレーム」を参照してください。 -.LP -概要ページのタイトルは、\f2\-doctitle\fP によって設定されます。 +Javadoc Фơ\f2path/filename\fP ǻꤵ줿֥ץե뤫鳵ץɥѤΥƥȤΥƥȤץڡ (\f2overview\-summary.html\fP) ֤褦˻ꤷޤ \f2path/filename\fP ϡȥǥ쥯ȥ꤫ХѥǤ +.LP +\f2filename\fPǤդ̾Ѥ\f2path\fP Ǥդ򤹤뤳ȤǽǤ̾ \f2overview.html\fP Ȥ̾դĥ꡼κǾ̥ѥåǥ쥯ȥޤǥ쥯ȥ֤ޤξ֤ȡѥåɥȲȤ \f2path\fP ꤹɬפʤʤޤʤʤ顢 \f2\-sourcepath\fP ˤäƤΥե뤬ؤ뤫ǤȤС \f2java.lang\fP ѥåΥĥ꡼ \f2/src/classes/java/lang/\fP ξ硢ץե \f2/src/classes/overview.html\fP ֤Ǥޤֻפ򻲾ȤƤ +.LP +\f2path/filename\fP ǻꤹեˤĤƤϡֳץȥեפ򻲾ȤƤ +.LP +ץڡΤϡJavadoc ʣΥѥå̾ϤǤܺ٤ϡHTML ե졼פ򻲾ȤƤ +.LP +ץڡΥȥϡ\f2\-doctitle\fP ˤäꤵޤ .LP .TP 3 \-public -public クラスおよびメンバーだけを表示します。 +public 饹ӥСɽޤ .LP .TP 3 \-protected -protected および public のクラスとメンバーだけを表示します。これはデフォルトの設定です。 +protected public Υ饹ȥСɽޤ줬ǥեȤǤ .LP .TP 3 \-package -package、protected、および public のクラスとメンバーだけを表示します。 +packageprotected public Υ饹ȥСɽޤ .LP .TP 3 \-private -すべてのクラスとメンバーを表示します。 +٤ƤΥ饹ȥСɽޤ .LP .TP 3 \-help -オンラインヘルプを表示します。 Javadoc とドックレットのコマンド行オプションが一覧表示されます。 +饤إפɽޤJavadoc ȥɥååȤΥޥɹԥץ󤬰ɽޤ .LP .TP 3 \-doclet\ class -ドキュメントの生成に使うドックレットを起動するためのクラスファイルを指定します。完全指定の名前を指定してください。このドックレットにより、出力の内容と形式が定義されます。\f4\-doclet\fP オプションが使われていない場合、Javadoc は、標準ドックレットを使ってデフォルトの HTML 形式を生成します。このクラスには、\f2start(Root)\fP メソッドが含まれていなければなりません。この起動クラスへのパスは、\f2\-docletpath\fP オプションによって定義されます。 -.LP -たとえば、MIF ドックレットを呼び出すには、次のように指定します。 +ɥȤ˻ȤɥååȤư뤿Υ饹եꤷޤ̾ꤷƤΥɥååȤˤꡢϤƤȷޤ\f4\-doclet\fP ץ󤬻ȤƤʤ硢Javadoc ϡɸɥååȤȤäƥǥեȤ HTML ޤΥ饹ˤ \f2start(Root)\fP ޤޤƤɬפޤεư饹ؤΥѥ \f2\-docletpath\fP ץˤäޤ +.LP +ȤСMIF ɥååȤƤӽФˤϡΤ褦˻ꤷޤ .nf \f3 .fl @@ -4213,17 +2896,17 @@ \fP .fi .LP -特定のドックレットを実行した完全な例については、 +ΥɥååȤ¹ԤˤĤƤϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ .LP .TP 3 \-docletpath\ classpathlist -\f2\-doclet\fP オプションで指定されているドックレット開始クラスファイル、およびそれが依存するすべての jar ファイルへのパスを指定します。開始クラスファイルが jar ファイル内にある場合、以下の例のように jar ファイルのパスが指定されます。絶対パスまたは現在のディレクトリからの相対パスを指定できます。\f2classpathlist\fP には、複数のパスまたは JAR ファイルを含めることができます。 その場合、各パスまたは JAR ファイルを、Solaris の場合にはコロン (:)、Windows の場合にはセミコロン (;) で区切ります。目的のドックレット開始クラスがすでに検索パス内にある場合は、このオプションは不要です。 -.LP -jar ファイルへのパスの例には、ドックレット開始クラスファイルが含まれています。jar ファイル名が含まれている点に注目してください。 +\f2\-doclet\fP ץǻꤵ줿ɥååȳϥ饹ե롢 ӤΥ饹¸뤹٤Ƥ JAR եؤΥѥꤷޤϥ饹ե뤬 jar եˤ硢ʲΤ褦 jar եΥѥꤵޤХѥޤϸߤΥǥ쥯ȥ꤫ХѥǤޤ \f2classpathlist\fP ˤϡʣΥѥޤ JAR եޤ뤳ȤǤޤ ξ硢ƥѥޤ JAR եSolaris ξˤϥ (:)Windows ξˤϥߥ (;) ǶڤޤŪΥɥååȳϥ饹Ǥ˸ѥˤϡΥץפǤ +.LP +jar եؤΥѥˤϡɥååȳϥ饹ե뤬ޤޤƤޤjar ե̾ޤޤƤܤƤ .nf \f3 .fl @@ -4231,7 +2914,7 @@ .fl \fP .fi -ドックレット開始クラスファイルのパスの例。クラスファイル名が省略されている点に注目してください。 +ɥååȳϥ饹եΥѥ㡣饹ե̾άƤܤƤ .nf \f3 .fl @@ -4239,212 +2922,40 @@ .fl \fP .fi -特定のドックレットを実行した完全な例については、 +ΥɥååȤ¹ԤˤĤƤϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ .LP .TP 3 \-1.1 -\f2この機能は、Javadoc 1.4 では削除されました。代替機能はありません。このオプションは、Javadoc 1.1 によって生成されるのと同じ外見と機能を持つドキュメントを作成するためのものでした。 入れ子のクラスはサポートされていません。このオプションが必要な場合は、Javadoc 1.2 または 1.3 を使用してください。\fP +\f2εǽ Javadoc 1.4 ޤصǽϤޤ󡣤ΥץϡJavadoc 1.1 ˤäΤƱȵǽĥɥȤ뤿ΤΤǤҤΥ饹ϥݡȤƤޤ󡣤ΥץɬפʾϡJavadoc 1.2 ޤ 1.3 ѤƤ\fP .LP .TP 3 \-source release -受け付けるソースコードのバージョンを指定します。\f2release\fP には次の値を指定できます。 -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 81 -.nr 34 \n(.lu -.eo -.am 81 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.5 で導入された総称および他の言語機能を含んだコードを受け付けます。\f3\-source\fP フラグを指定しないと、コンパイラはデフォルトとして 1.5 の動作をします。 -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 81 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.4 で導入された、アサーションを含むコードを受け付けます。 -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.eo -.am 81 -.br -.di c+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.3 以降に導入されたアサーション、総称、または他の言語機能をサポートしません。 -.br -.di -.nr c| \n(dn -.nr c- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 31 0 -.nr 32 0 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.5\fP -.if \n(32<\n(38 .nr 32 \n(38 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.4\fP -.if \n(32<\n(38 .nr 32 \n(38 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.3\fP -.if \n(32<\n(38 .nr 32 \n(38 -.80 -.rm 80 -.nr 60 \n(31 -.nr 38 \n(60+\n(32 -.if \n(38>\n(80 .nr 80 \n(38 -.if \n(38<\n(80 .nr 60 +(\n(80-\n(38)/2 -.nr 81 0 -.81 -.rm 81 -.nr 38 \n(a- -.if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \n(b- -.if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \n(c- -.if \n(81<\n(38 .nr 81 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr 60 +\n(40 -.nr 41 \n(80+(3*\n(38) -.nr 81 +\n(41 -.nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 2790 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.5\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.4\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(c|u+\n(.Vu -.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.3\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.c+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.rm c+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-14 -.LP -javac でコードをコンパイルするときに使用した値に対応する \f2release\fP の値を使用します。 +դ륽ɤΥСꤷޤ\f2release\fP ˤϼͤǤޤ +.RS 3 +.TP 2 +o +\f31.5\fP \- javadoc ϡJDK 1.5 Ƴ줿Τʤɤθ쵡ǽޤॳɤդޤ\f3\-source\fP ե饰ѤʤäΥѥΥǥեưϡ1.5 ΤΤˤʤޤ +.TP 2 +o +\f31.4\fP Javadoc ϡJDK 1.4 Ƴ줿ޤॳɤդޤ +.TP 2 +o +\f31.3\fP Javadoc ϡJDK 1.3 ʹߤƳ줿Ρޤ¾θ쵡ǽ򥵥ݡȤޤ +.RE +.LP +javac ǥɤ򥳥ѥ뤹Ȥ˻Ѥͤб \f2release\fP ͤѤޤ .LP .TP 3 \-sourcepath\ sourcepathlist -\f2javadoc\fP コマンドにパッケージ名または \f2\-subpackages\fP を渡すときに、ソースファイル (\f2.java\fP) を検索するためのパスを指定します。\f2sourcepathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパス以下のすべてのサブディレクトリを検索します。このオプションを使って、ドキュメント化されるソースファイルの位置だけでなく、それ自体はドキュメント化されないがドキュメント化されるソースファイルから継承されたコメントを持つソースファイルの位置も確認できます。 -.LP -\f2\-sourcepath\fP オプションは、javadoc コマンドにパッケージ名を渡すときにだけ使用できます。 \f2javadoc\fP コマンドに渡される \f2.java\fP ファイルは、このパスからは検索されません。\f2.java\fP ファイルを検索するには、そのファイルのあるディレクトリに cd によって移動するか、または各ファイルの先頭にパスを含めます (「1 つ以上のクラスのドキュメント化」を参照)。\f2\-sourcepath\fP が省略された場合、Javadoc は、クラスパスを使ってソースファイルを検索します (\-classpath を参照)。したがって、デフォルトの \-sourcepath は、クラスパスの値です。\-classpath も省略してパッケージ名を Javadoc に渡すと、Javadoc は現在のディレクトリおよびそのサブディレクトリからソースファイルを検索します。 -.LP -\f2sourcepathlist\fP には、ドキュメント化するパッケージ名のソースツリーのルートディレクトリを設定します。たとえば、\f2com.mypackage\fP というパッケージをドキュメント化する場合に、そのソースファイルが次の場所にあるとします。 +ѥå̾ޤ \-subpackages javadoc ޥɤϤȤϡե (.\f2.java\fP) 򸫤Ĥ뤿 \f2ѥ\fP \f2ޤ\fP \f2sourcepathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤJavadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤΥץȤäơɥȲ륽եΰ֤Ǥʤ켫ΤϥɥȲʤɥȲ륽ե뤫Ѿ줿Ȥĥեΰ֤ǧǤޤ +.LP +\f2\-sourcepath\fP ץѤǤΤϡjavadoc ޥɤ˥ѥå̾ϤǤΥѥϡjavadoc ޥɤϤ줿 \f2.java\fP ե \f2\fP ޤ \f2.java\fP ե򸡺ˤϡΥեΤǥ쥯ȥ cd ˤäưư뤫ޤϳƥեƬ˥ѥޤޤ (1 İʾΥ饹ΥɥȲפ򻲾) \f2\-sourcepath\fP ά줿硢Javadoc ϡ饹ѥȤäƥե򸡺ޤ (\-classpath 򻲾)äơǥեȤ \-sourcepath ϡ饹ѥͤǤ\-classpath άƥѥå̾ Javadoc ϤȡJavadoc ϸߤΥǥ쥯ȥꤪӤΥ֥ǥ쥯ȥ꤫饽ե򸡺ޤ +.LP +\f2sourcepathlist\fP ˤϡɥȲѥå̾Υĥ꡼Υ롼ȥǥ쥯ȥꤷޤȤС \f2com.mypackage\fP Ȥ̾ΥѥåɥȲˡΥե뤬ξˤȤޤ .nf \f3 .fl @@ -4452,16 +2963,16 @@ .fl \fP .fi -この場合、次のようにして \f2sourcepath\fP を \f2/home/user/src\fP、つまり \f2com/mypackage\fP を含むディレクトリに指定し、それからパッケージ名 \f2com.mypackage\fP を指定します。 +ΤȤΤ褦ˡ \f2sourcepath\fP com/mypackage ޤǥ쥯ȥǤ \f2/home/user/src\fP ˻ꤷȡ ѥå̾ \f2com.mypackage\fP ꤷޤ .nf \f3 .fl % \fP\f3javadoc \-sourcepath /home/user/src/ com.mypackage\fP .fl .fi -この方法は、ソースパスの値とパッケージ名を連結して、ドットを (円記号) 「\\」に変えると、パッケージのフルパス (C:\\user\\src\\com\\mypackage) になることを理解すると簡単です。\f2/home/user/src/com/mypackage\fP. -.LP -2 つのソースパスを設定するには、次のようにします。 +ˡϡѥͤȥѥå̾Ϣ뤷ơɥåȤ (ߵ) \\פѤȡѥåΥեѥ \f2/home/user/src/com/mypackage ˤʤ뤳Ȥ򤹤ȴñǤ\fP +.LP +2 ĤΥѥꤹˤϡΤ褦ˤޤ .nf \f3 .fl @@ -4471,132 +2982,124 @@ .LP .TP 3 \-classpath\ classpathlist -Javadoc が参照クラス (\f2.class\fP ファイル) を検索するパスを指定します。 参照クラスとは、ドキュメント化されるクラスとそれらのクラスによって参照されるすべてのクラスのことです。\f2classpathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパスの以下すべてのサブディレクトリを検索します。\f2classpathlist\fP を指定するときは、 +javadoc ȥ饹 (\f2.class\fP ե) θԤȤ˻Ѥѥꤷޤȥ饹ȤϡɥȲ륯饹ȡΥ饹黲Ȥ뤹٤ƤΥ饹ؤޤ\f2classpathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤ Javadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤclasspathlist ꤹȤϡ .na -\f2クラスパス\fP @ +\f2饹ѥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#generalのドキュメントにある指示に従ってください。 -.LP -\f2\-sourcepath\fP が省略されている場合、Javadoc ツールは、\f2\-classpath\fP を使って、クラスファイルだけでなくソースファイルも検索します (下位互換性のため)。したがって、ソースファイルとクラスファイルを別々のパスから検索する必要がある場合は、\f2\-sourcepath\fP と \f2\-classpath\fP の両方を使います。 -.LP -たとえば、\f2com.mypackage\fP をドキュメント化する場合に、ソースファイルがディレクトリ \f2/home/user/src/com/mypackage\fP にあり、このパッケージが \f2/home/user/lib\fP 内のライブラリを使うのであれば、次のように指定します。 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#generalΥɥȤˤؼ \f2˽äƤ\fP +.LP +\f2\-sourcepath\fP άȡJavadoc ġϥ饹ե򸡺ȤǤʤե򸡺Ȥˤ \f2\-classpath\fP Ѥޤ (̸ߴΤ)äơեȥ饹ե̡Υѥ鸡ɬפϡ \f2\-sourcepath\fP \f2\-classpath ξȤޤ\fP. +.LP +ȤС \f2com.mypackage\fP ɥȲˡΥե뤬ǥ쥯ȥ \f2/home/user/src/com/mypackage\fP ˳ǼƤꡢΥѥå \f2/home/user/lib\fP Υ饤֥˰¸ƤȤޤΤȤΤ褦˻ꤷޤ .nf \f3 .fl % \fP\f3javadoc \-classpath /home/user/lib \-sourcepath /home/user/src com.mypackage\fP .fl .fi -ほかのツールと同様に、\f2\-classpath\fP が指定されていない場合は、CLASSPATH 環境変数が設定されていれば、Javadoc ツールはこの環境変数を使います。どちらも設定されていない場合、Javadoc ツールは現在のディレクトリからクラスを検索します。 -.LP -Javadoc ツールは拡張機能クラスおよびブートストラップクラスに関連しているため、Javadoc ツールが \f2\-classpath\fP を使用してユーザークラスを検索する方法についての詳細は、 +\f2\-classpath\fP ꤵʤä硢Javadoc ġϤۤΥġƱCLASSPATH ĶѿꤵƤФͤѤޤɤꤵƤʤ硢Javadoc ġϸߤΥǥ쥯ȥ꤫饯饹򸡺ޤ +.LP +Javadoc ġ뤬 \f2\-classpath\fP Ѥƥ桼饹򸡺ˡˤĤơĥ饹֡ȥȥåץ饹ȴϢդƤꤹˤϡ .na -\f2「クラスの検索方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.htmlをご覧ください。 -.LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html򻲾ȤƤ +.LP +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡ \f2.jar\fP ޤ \f2.JAR\fP ĥҤ˻ĥǥ쥯ȥΤ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤̤ȤʤޤΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ* \f2饹ѥȥϡ\fP ȥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .LP .TP 3 \-subpackages\ \ package1:package2:... -ソースファイルから指定されたパッケージおよびそのサブパッケージ内に再帰的にドキュメントを生成します。このオプションは、ソースコードに新しいサブパッケージを追加する際に便利です。新しいサブパッケージは自動的に組み込まれます。各 \f2package\fP 引数は、任意の最上位サブパッケージ (\f2java\fP など) または完全指定のパッケージ (\f2javax.swing\fP など) になります。ソースファイルを含める必要はありません。引数は、コロンで区切られます (すべてのオペレーティングシステム)。ワイルドカードは不要です (使用不可)。パッケージの検索場所を指定するには、\f2\-sourcepath\fP を使用します。このオプションは、「ソースファイルの処理」で説明したとおり、ソースツリーにあるがパッケージには属していないソースファイルを処理しないので役立ちます。 -.LP -例を示します。 +ե뤫ꤵ줿ѥåӤΥ֥ѥå˺ƵŪ˥ɥȤޤΥץϡɤ˿֥ѥåɲäݤǤ֥ѥåϼưŪȤ߹ޤޤ \f2package\fP ϡǤդκǾ̥֥ѥå ( \f2java\fP ʤ) ޤϴѥå ( \f2javax.swing\fP ʤ) ˤʤޤեޤɬפϤޤ󡣰ϡǶڤޤ (٤ƤΥڥ졼ƥ󥰥ƥ)磻ɥɤפǤ (Բ)ѥåθꤹˤϡ\f2\-sourcepath\fP ѤޤΥץϡ֥եνפȤꡢĥ꡼ˤ뤬ѥåˤ°ƤʤեʤΤΩޤ +.LP +ȤС .nf \f3 .fl % \fP\f3javadoc \-d docs \-sourcepath /home/user/src \-subpackages java:javax.swing\fP .fl .fi -このコマンドは、「java」および「javax.swing」という名前のパッケージとこれらのサブパッケージ全部のドキュメントを生成します。 -.LP -\f2\-exclude\fP とともに \f2\-subpackages\fP を使用すると、特定のパッケージを除外できます。 +Υޥɤϡjavaפӡjavax.swingפȤ̾ΥѥåȤΥ֥ѥåΥɥȤޤ +.LP +\f2\-subpackages\fP \f2\-exclude\fP Ȥ߹碌ƻѤȡΥѥåǤޤ .LP .TP 3 \-exclude\ \ packagename1:packagename2:... -指定されたパッケージとそのサブパッケージを \f2\-subpackages\fP によって作成されたリストから無条件に除外します。過去の \f2\-subpackages\fP オプションの指定によって組み込まれたパッケージ、または将来組み込まれるパッケージも除外の対象となります。例を示します。 +ꤵ줿ѥåȤΥ֥ѥå \f2\-subpackages\fP ˤäƺ줿ꥹȤ̵˽ޤ \f2\-subpackages\fP ץλˤäȤ߹ޤ줿ѥåޤϾȤ߹ޤѥåоݤȤʤޤ 򼨤ޤ .nf \f3 .fl % \fP\f3javadoc \-sourcepath /home/user/src \-subpackages java \-exclude java.net:java.lang\fP .fl .fi -このうち、\f2java.io\fP、\f2java.util\fP、\f2java.math\fP は組み込まれますが、\f2java.net\fP と \f2java.lang\fP 以下のパッケージは除外されます。ただし、\f2java.lang\fP のサブパッケージである \f2java.lang.ref\fP は除外されます。 +ξ硢 \f2java.io\fP \f2java.util\fP \f2java.math\fP ʤɤޤ졢 \f2java.net\fP \f2java.lang\fP 롼Ȥ˻ĥѥåޤξ硢 \f2java.lang\fP Υ֥ѥåǤ \f2java.lang.ref\fP դƤ .LP .TP 3 \-bootclasspath\ classpathlist -ブートクラスが存在するパスを指定します。ブートクラスとは、通常、Java プラットフォームのコアクラスのことです。ブートクラスパスは、Javadoc ツールがソースファイルとクラスファイルを探すときに使う検索パスの一部です。詳細は、 +֡ȥ饹¸ߤѥꤷޤ֡ȥ饹Ȥϡ̾Java ץåȥեΥ饹ΤȤǤ֡ȥ饹ѥϡJavadoc ġ뤬եȥ饹եõȤ˻ȤѥΰǤܺ٤ϡ .na -\f2「javac と javadoc がクラスを検索する方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfilesを参照してください。\f2classpathlist\fP 内の複数のディレクトリは、コロン (:) で区切ります。 +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfiles򻲾ȤƤ (:) \f2classpathlist\fP Υǥ쥯ȥ֤ζڤʸȤƻѤޤ .LP .TP 3 \-extdirs\ dirlist -拡張機能クラスが存在するディレクトリを指定します。拡張機能クラスとは、Java 拡張機能機構を使うすべてのクラスです。extdirs は、Javadoc ツールがソースファイルとクラスファイルを探すときに使う検索パスの一部です。詳細は、前述の \f2\-classpath\fP を参照してください。\f2dirlist\fP 内の複数のディレクトリは、コロン (:) で区切ります。 +ĥǽ饹¸ߤǥ쥯ȥꤷޤĥǽ饹ȤϡJava ĥǽȤ٤ƤΥ饹Ǥextdirs ϡJavadoc ġ뤬եȥ饹եõȤ˻ȤѥΰǤܺ٤ϡҤ \f2\-classpath\fP 򻲾ȤƤ (:) \f2dirlist\fP Υǥ쥯ȥ֤ζڤʸȤƻѤޤ .LP .TP 3 \-verbose -javadoc の実行中に詳細なメッセージを表示します。verbose オプションを指定しないと、ソースファイルのロード時、ドキュメントの生成時 (ソースファイルごとに 1 つのメッセージ)、およびソート時にメッセージが表示されます。verbose オプションを指定すると、各 Java ソースファイルの解析に要した時間 (ミリ秒単位) など、追加のメッセージが表示されます。 +javadoc μ¹˾ܺ٤ʥåɽޤverbose ץꤷʤȡեΥɻɥȤ (ե뤴Ȥ 1 ĤΥå)ӥȻ˥åɽޤverbose ץꤹȡ Java եβϤפ (ߥñ) ʤɡɲäΥåɽޤ .LP .TP 3 \-quiet -エラーメッセージまたは警告メッセージ以外のメッセージを抑制し、警告とエラーだけが表示されるようにして、これらを特定しやすくします。バージョン文字列も抑制します。 +顼åޤϷٹåʳΥåٹȥ顼ɽ褦ˤơꤷ䤹ޤСʸޤ .LP .TP 3 \-breakiterator\ -英語言語というロケール固有のアルゴリズムではなく、 +ѸκǽʸꤹݤˡѸѤΥͭΥ르ꥺǤϤʤ .na \f2java.text.BreakIterator\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/text/BreakIterator.html の国際化された文境界を使用して、英文の最初の文の終わりを判断します (他のすべてのロケールはすでに \f2BreakIterator\fP を使用)。\f2「最初の文」\fPとは、パッケージ、クラス、またはメンバーの主説明での最初の文のことです。この文は、パッケージ、クラス、またはメンバーの要約にコピーされ、アルファベット順のインデックスにコピーされます。 -.LP -JDK 1.2 以降、BreakIterator クラスは、英語を除くすべての言語の文の終わりを判断するために、すでに使用されています。したがって、1.2 以降では、\f2\-breakiterator\fP オプションは英文以外には効果がありません。英文には、次のような独自のデフォルトのアルゴリズムがあります。 +http://java.sun.com/javase/6/docs/api/java/text/BreakIterator.html ιݲ줿ʸѤޤ (ۤΤ٤ƤΥǤϤǤ \f2BreakIterator\fP ѤƤ)\f2ֺǽʸ\fPȤϡѥå饹ޤϥСμǤκǽʸΤȤǤʸϡѥå饹ޤϥС˥ԡ졢ե٥åȽΥǥå˥ԡޤ +.LP +JDK 1.2 ʹߡBreakIterator 饹ϡѸ٤ƤθʸνȽǤ뤿ˡǤ˻ѤƤޤäơ \f2\-breakiterator\fP ץϡ1.2 ʹߤǤϱʸʳˤϸ̤ޤ󡣱ʸˤϡΤ褦ȼΥǥեȤΥ르ꥺबޤ .RS 3 .TP 2 o -英文のデフォルトの文区切りアルゴリズム \- 空白または HTML ブロックタグ (\f2<P>\fP など) が続くピリオドで停止する +ʸΥǥեȤʸڤꥢ르ꥺ \- ޤ HTML ֥å ( \f2<P>\fP ʤ) ³ԥꥪɤߤ .TP 2 o -breakiterator 文区切りアルゴリズム \- 一般に、次の語が大文字で始まる場合、空白文字が続くピリオド、疑問符、または感嘆符で停止する。このアルゴリズムでは、ほとんどの省略表記が処理される (「The serial no. is valid」は処理されるが「Mr. Smith」は処理されない)。HTML タグや、数字または記号で始まる文では停止しない。HTML タグに埋め込まれている場合でも、「../filename」の最後のピリオドで停止する +breakiterator ʸڤꥢ르ꥺ \- ̤ˡθ줬ʸǻϤޤ硢ʸ³ԥꥪɡ䡢ޤϴòߤ롣Υ르ꥺǤϡThe serial no. is validפʤɡۤȤɤξάɽޤMr. SmithפʤɤϽޤHTML 䡢ޤϵǻϤޤʸǤߤʤHTML ޤƤǤ⡢../filenameפκǸΥԥꥪɤߤ .RE -.RS 3 - -.LP -.LP -注: 1.5.0 からは、1.4.x に設けられていた breakiterator 警告メッセージを削除し、デフォルトの文区切りアルゴリズムを変更していません。つまり、\\\-breakiterator オプションは、1.5.0 ではデフォルトではなくなり、またデフォルトにするつもりもありません。これは、「次のメジャーリリース」(1.5.0) でデフォルトを変更するという、以前の目的とは逆になっています。つまり、ソースコードを変更せず、1.4.x での breakiterator 警告を除去していない場合でも、1.5.0 からは何もする必要がなく、警告は消滅しています。 この逆戻りの理由は、breakiterator をデフォルトにするメリットよりも、デフォルトにするために必要となる、互換性のないソースの変更の方が負担が大きかったためです。この件で皆様に余分の手間をおかけし、混乱を招いたことをお詫びいたします。 -.LP -.RE +.LP +: 1.5.0 ϡ1.4.x ߤƤ breakiterator ٹåǥեȤʸڤꥢ르ꥺѹƤޤ󡣤Ĥޤꡢ\\\-breakiterator ץϡ1.5.0 ǤϥǥեȤǤϤʤʤꡢޤǥեȤˤĤ⤢ޤ󡣤ϡּΥ᥸㡼꡼(1.5.0) ǥǥեȤѹȤŪȤϵդˤʤäƤޤĤޤꡢɤѹ1.4.x Ǥ breakiterator ٹƤʤǤ⡢1.5.0 ϲ⤹ɬפʤٹϾǤƤޤεͳϡbreakiterator ǥեȤˤåȤ⡢ǥեȤˤ뤿ɬפȤʤ롢ߴΤʤѹô礭äǤηdzͤ;ʬμ֤򤪤򾷤ȤͤӤޤ .TP 3 \-locale\ language_country_variant -.RS 3 -.LP -\f3重要\fP \- \f2\-locale\fP オプションは、標準ドックレットが提供するすべてのオプション、またはその他の任意のドックレットの提供するすべてのオプションより前 (左側) に指定する必要があります。そうしないと、ナビゲーションバーが英語で表示されます。このコマンド行オプションだけは、指定する順序に依存します。 -.LP -.RE -.LP -Javadoc がドキュメントを生成するときに使うロケールを指定します。引数には、java.util.Locale のドキュメントで説明されているロケールの名前を指定します。たとえば、\f2en_US\fP (英語、米国)、\f2en_US_WIN\fP (Windows で使われる英語) などを指定します。 -.LP -ロケールを指定すると、指定したロケールのリソースファイルが Javadoc によって選択されて、メッセージ (ナビゲーションバー、リストと表の見出し、ヘルプファイルの目次、stylesheet.css のコメントなどの文字列) のために使われます。また、アルファベット順にソートされるリストのソート順、および最初の文の末尾を判別するための文の区切り文字も、指定したロケールによって決まります。ただし、このオプションは、ドキュメント化されるクラスのソースファイル内で指定されているドキュメンテーションコメントのテキストのロケールを決定するものではありません。 +.LP +\f3\fP \- \f2\-locale\fP ץϡ\f2ɸɥååȤ󶡤뤹٤ƤΥץ\fPޤϤ¾ǤդΥɥååȤ󶡤뤹٤ƤΥץ (¦) ˻ꤹɬפޤʤȡʥӥСѸɽޤΥޥɹԥץϡꤹ˰¸ޤ +.LP +Javadoc ɥȤȤ˻ȤꤷޤΰϼΤ褦ʡjava.util.Locale ΥɥơƤ̾Ǥ \f2en_US\fP (Ѹ졢ƹ) ޤ \f2en_US_WIN\fP (Windows ǻѤѸ) +.LP +ꤹȡꤷΥ꥽ե뤬 Javadoc ˤä򤵤ơå (ʥӥСꥹȤɽθФإץեܼstylesheet.css ΥȤʤɤʸ) Τ˻Ȥޤޤե٥åȽ˥ȤꥹȤΥȽ硢ӺǽʸȽ̤뤿ʸζڤʸ⡢ꤷˤäƷޤޤΥץϡɥȲ륯饹ΥեǻꤵƤɥơ󥳥ȤΥƥȤΥꤹΤǤϤޤ .LP .TP 3 \-encoding\ name -ソースファイルのエンコーディングの名前 (\f2EUCJIS/SJIS\fP など) を指定します。このオプションが指定されていない場合は、プラットフォームのデフォルトコンバータが使われます。 -.LP -\-docencoding および \-charset も参照してください。 +եΥ󥳡ǥ󥰤̾ ( \f2EUCJIS/SJIS\fP ʤ) ꤷޤ Υץ󤬻ꤵƤʤϡץåȥեΥǥեȥСȤޤ +.LP +\-docencoding \-charset ⻲ȤƤ .LP .TP 3 \-Jflag -javadoc を実行する実行時システム java に、\f2flag\fP を直接渡します。\f2J\fP と \f2flag\fP の間に空白を入れてはなりません。たとえば、生成ドキュメントを処理するためにシステムで 32M バイトのメモリーを確保しておく必要がある場合は、Java の \f2\-Xmx\fP オプションを次のように呼び出します。 \f2\-Xms\fP は、省略可能です。 これは、初期メモリーのサイズを設定するだけのオプションで、必要なメモリーの最小サイズがわかっている場合に便利です。 +javadoc ¹Ԥ¹Իƥ java ˡ\f2flag\fP ľϤޤ \f2J\fP \f2flag\fP δ֤˶ʤ褦դƤȤСɥȤνѤȤ32M ХȤΥ꡼򥷥ƥdzݤƤɬפˤϡjava \f2\-Xmx\fP ץ򼡤Τ褦˸ƤӽФޤ\f2\-Xms\fP ϾάǽǤϡ꡼νꤹΥץǡ꡼κɬ̤狼äƤǤ .nf \f3 .fl % \fP\f3javadoc \-J\-Xmx32m \-J\-Xms32m\fP \f3com.mypackage\fP .fl .fi -使用している javadoc のバージョンを確認するには、次のように java の「\f2\-version\fP」オプションを呼び出します。 +ѤƤ javadoc ΥСǧˤϡΤ褦 Java \f2\-version\fPץƤӽФޤ .nf \f3 .fl @@ -4607,17 +3110,16 @@ Classic VM (build JDK\-1.2\-V, green threads, sunwjit) .fl .fi -出力ストリームには標準ドックレットのバージョン番号が含まれます。 +ϥȥ꡼ˤɸɥååȤΥСֹ椬ޤޤޤ .RE .SS -標準ドックレットが提供するオプション -.LP +ɸɥååȤ󶡤륪ץ .RS 3 .TP 3 \-d\ directory -生成された HTML ファイルを保存する生成先ディレクトリを指定します(「d」は「生成先 (destination)」の意味)。このオプションを省略すると、生成されたファイルは現在のディレクトリに保存されます。値 \f2directory\fP には、絶対ディレクトリ、または現在の作業ディレクトリからの相対ディレクトリを指定できます。バージョン 1.4 では、javadoc を実行すると生成先ディレクトリが自動的に作成されます。 -.LP -たとえば、次の例では、\f2com.mypackage\fP パッケージのドキュメントを生成し、結果を \f2/home/user/doc/\fP ディレクトリに保存します。 +줿 HTML ե¸ǥ쥯ȥꤷޤ(dפϡ (destination)פΰ̣)Υץάȡ줿եϸߤΥǥ쥯ȥ¸ޤ \f2directory\fP ˤϡХǥ쥯ȥꡢޤϸߤκȥǥ쥯ȥ꤫Хǥ쥯ȥǤޤС 1.4 Ǥϡjavadoc ¹Ԥǥ쥯ȥ꤬ưŪ˺ޤ +.LP +Ȥмξ硢ѥå \f2com.mypackage\fP ΥɥȤ졢η̤ \f2/home/user/doc/\fP ǥ쥯ȥ¸ޤ .nf \f3 .fl @@ -4627,50 +3129,50 @@ .LP .TP 3 \-use -ドキュメント化されるクラスおよびパッケージごとに 1 つの [使用] ページを組み込みます。このページには、その特定のクラスまたはパッケージの API を使っているパッケージ、クラス、メソッド、コンストラクタ、およびフィールドが記述されます。たとえば、クラス C を例にとると、クラス C を使っているものとしては、C のサブクラス、C として宣言されているフィールド、C を返すメソッド、および、型 C のパラメータを持つメソッドとコンストラクタがあります。 -.LP -たとえば、String の [使用] ページに何が表示されるかを見てみましょう。\f2java.awt.Font\fP クラスの \f2getName()\fP メソッドは、\f2String\fP 型を返します。したがって、\f2getName()\fP は \f2String\fP を使っているので、\f2String\fP の [使用] ページにはこのメソッドがあります。 -.LP -ただし、ドキュメント化されるのは API の使用だけであって、実装はドキュメント化されません。あるメソッドが、その実装の中で \f2String\fP を使っていても、引数として文字列をとったり、文字列を返したりしない場合は、\f2String\fP の「使用」とはみなされません。 -.LP -生成された [使用] ページにアクセスするには、目的のクラスまたはパッケージに移動し、ナビゲーションバーの [使用] リンクをクリックします。 +ɥȲ륯饹ӥѥåȤ 1 ĤΡֻѡץڡȤ߹ߤޤΥڡˤϡΥ饹ޤϥѥå API ȤäƤѥå饹᥽åɡ󥹥ȥ饯ӥեɤҤޤȤС饹 C ˤȤȡ饹 C ȤäƤΤȤƤϡC Υ֥饹C ȤƤեɡC ֤᥽åɡӡ C Υѥ᡼ĥ᥽åɤȥ󥹥ȥ饯ޤ +.LP +ȤСString [] ڡ˲ɽ뤫򸫤Ƥߤޤ礦java.awt.Font 饹 \f2getName()\fP ᥽åɤϡ \f2String\fP ͤ \f2֤ޤ\fPäơ \f2getName()\fP \f2String\fP ѤƤΤǡString [] ڡ \f2Υ᥽åɤɽޤ\fP +.LP +ɥȲΤ API λѤǤäơϥɥȲޤ󡣤᥽åɤμ \f2String\fP ȤäƤƤ⡢ȤʸȤäꡢʸ֤ꤷʤϡ \f2String\fP ΡֻѡפȤϤߤʤޤ +.LP +줿 [] ڡ˥ˤϡŪΥ饹ޤϥѥå˰ưʥӥС [] 󥯤򥯥åޤ .TP 3 \-version -生成ドキュメントに、@version のテキストを組み込みます。このテキストは、デフォルトでは省略されます。使用している Javadoc ツールのバージョンを確認するには、\f2\-J\-version\fP オプションを使用します。 +ɥȤˡ@version ΥƥȤȤ߹ߤޤΥƥȤϡǥեȤǤϾάޤѤƤ Javadoc ġΥСǧˤ \f2\-J\-version\fP ץѤޤ .LP .TP 3 \-author -生成ドキュメントに、@author のテキストを組み込みます。 +ɥȤˡ@author ΥƥȤȤ߹ߤޤ .LP .TP 3 \-splitindex -索引ファイルをアルファベットごとに複数のファイルに分割し、文字ごとに 1 つのファイルと、アルファベット以外の文字で始まる索引エントリ用に 1 つのファイルを作成します。 +ե򥢥ե٥åȤȤʣΥեʬ䤷ʸȤ 1 ĤΥեȡե٥åȰʳʸǻϤޤȥѤ 1 ĤΥեޤ .LP .TP 3 \-windowtitle\ title -HTML の <title> タグに配置するタイトルを指定します。指定したタイトルは、ウィンドウのタイトルや、このページに対して作成されたブラウザのブックマーク (お気に入り) に表示されます。このタイトルには HTML タグを含めないでください。 タイトルに HTML タグが含まれていると、ブラウザがタグを正しく解釈できません。\f2title\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。\-windowtitle が省略されている場合、Javadoc ツールは、このオプションの代わりに \-doctitle の値を使います。 +HTML <title> ֤륿ȥꤷޤꤷȥϡɥΥȥ䡢ΥڡФƺ줿֥饦Υ֥åޡ () ɽޤΥȥˤ HTML ޤʤǤȥ HTML ޤޤƤȡ֥饦Ǥޤ\f2title\fP ǰȤϡ򥨥פɬפޤ\-windowtitle άƤ硢Javadoc ġϡΥץ \-doctitle ͤȤޤ .nf \f3 .fl - % \fP\f3javadoc \-windowtitle "Java 2 Platform" com.mypackage\fP + % \fP\f3javadoc \-windowtitle "Java SE Platform" com.mypackage\fP .fl .fi .TP 3 \-doctitle\ title -概要ファイルの最上部の近くに配置するタイトルを指定します。タイトルは中央揃えになり、レベル 1 の見出しとして、上部ナビゲーションバーのすぐ下に置かれます。\f2title\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2title\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ץեκǾζ᤯֤륿ȥꤷޤȥ·ˤʤꡢ٥ 1 θФȤơʥӥСΤ֤ޤ\f2title\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2title\fP ǰȤϡ򥨥פɬפޤ .nf \f3 .fl - % \fP\f3javadoc \-doctitle "Java (TM)" com.mypackage\fP + % \fP\f3javadoc \-doctitle "Java(TM)" com.mypackage\fP .fl .fi .TP 3 \-title\ title -\f3このオプションは、現在は存在しません。\fPJavadoc 1.2 のベータ版にだけ存在しました。このオプションは、\f2\-doctitle\fP という名前に変更されました。名前を変更した理由は、このオプションが、ウィンドウのタイトルではなくドキュメントのタイトルを定義することを明確にするためです。 +\f3ΥץϤ⤦¸ߤƤޤ\fPΥץ Javadoc 1.2 Υ١Ǥˤ¸ߤƤޤǤΥץ̾ \f2\-doctitle\fP ѹޤ̾ѹͳϡΥץ󤬡ɥΥȥǤϤʤɥȤΥȥ뤳ȤΤˤ뤿Ǥ .LP .TP 3 \-header\ header -各出力ファイルの上端に配置するヘッダーテキストを指定します。ヘッダーは、上部ナビゲーションバーの右側に配置されます。\f2header\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2header\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեξü֤إåƥȤꤷޤإåϡʥӥСα¦֤ޤ\f2header\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2header\fP ǰȤϡ򥨥פɬפޤ .nf \f3 .fl @@ -4680,73 +3182,77 @@ .LP .TP 3 \-footer\ footer -各出力ファイルの下端に配置するフッターテキストを指定します。フッターは、下部ナビゲーションバーの右側に配置されます。 \f2footer\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2footer\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեβü֤եåƥȤꤷޤեåϡʥӥСα¦֤ޤ\f2footer\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2footer\fP ǰȤϡ򥨥פɬפޤ +.LP +.TP 3 +\-top +ƽϥեξü֤ƥȤꤷޤ .LP .TP 3 \-bottom\ text -各出力ファイルの最下部に配置するテキストを指定します。このテキストは、下部ナビゲーションバーより下の、ページの最下部に配置されます。\f2text\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2text\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեκDz֤ƥȤꤷޤΥƥȤϡʥӥС겼ΡڡκDz֤ޤ \f2text\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ󡣰 \f2text\fP ǻѤ硢򥨥פʤФʤʤǽޤ .LP .TP 3 \-link\ extdocURL -javadoc により生成された既存の外部参照クラスのドキュメンテーションへのリンクを作成します。引数を 1 つとります。 +javadoc ˤ줿¸γȥ饹ΥɥơؤΥ󥯤ޤ 1 ĤȤޤ .LP .RS 3 .TP 2 o -\f4extdocURL\fP は、リンク先として指定する、javadoc によって生成された外部ドキュメントを含むディレクトリの絶対 URL または相対 URL です。あとで例を示します。このディレクトリ内にパッケージリストファイルが存在していなければなりません。 存在しない場合は、\f2\-linkoffline\fP を使用します。Javadoc ツールは、\f2パッケージリスト\fPファイルからパッケージ名を読み取り、これらのパッケージをその URL にリンクします。Javadoc ツールを実行すると、作成される \f2<A HREF>\fP リンク内に \f2extdocURL\fP の値がそのままコピーされます。したがって、\f2extdocURL\fP はファイルへの URL ではなく「ディレクトリへの URL」でなければなりません。 -.LP -\f2extdocURL\fP への絶対リンクを使用すると、ユーザーのドキュメントを任意の Web サイト上のドキュメントにリンクできます。 相対位置へリンクするだけでよい場合は相対リンクを使用できます。相対リンクを使用する場合、\f2\-d\fP を使って、生成先ディレクトリからリンクされるパッケージのあるディレクトリの相対パスを指定する必要があります。 -.LP -通常、絶対リンクを指定する場合は、\f2http:\fPリンクを使用します。Web サーバーを持たないファイルシステムにリンクする場合は、\f2file:\fP リンクを使用できます。ただし、この方法は、すべてのユーザーが生成された同じファイルシステムを共有するドキュメントにアクセスする必要がある場合以外は使用しないでください。 -.LP -いかなる場合にも、いかなるオペレーティングシステムでも、絶対 URL か相対 URL か、「http:」ベースか「file:」ベースかにかかわらず、スラッシュを区切り文字として使用します ( +\f4extdocURL\fP ϡȤƻꤹ롢javadoc ˤä줿ɥȤޤǥ쥯ȥ URL ޤ URL ǤȤ򼨤ޤΥǥ쥯ȥ˥ѥåꥹȥե뤬¸ߤƤʤФʤޤ ¸ߤʤϡ\f2\-linkoffline\fP ѤޤJavadoc ġϡ \f2package\-list\fP ե뤫ѥå̾ɤ߼äȡ URL ǤΥѥå˥󥯤ޤJavadoc ġμ¹Իˡ\f2extdocURL\fP ͤΤޤޡ줿 \f2<A HREF>\fP ˥ԡޤäơ\f2extdocURL\fP ϥեؤ URL ǤϤʤ֥ǥ쥯ȥؤ URLפǤʤФʤޤ +.LP +\f2extdocURL\fP ؤХ󥯤Ѥȡ桼ΥɥȤǤդ Web ȾΥɥȤ˥󥯤Ǥޤа֤إ󥯤Ǥ褤Х󥯤ѤǤޤХ󥯤ξ硢桼Ϥͤϡ( \f2\-d\fP ǻꤵ줿) ǥ쥯ȥ꤫顢Ȥʤѥåޤǥ쥯ȥؤХѥˤ٤Ǥ +.LP +̾Х󥯤ꤹϡ \f2http:\fP 󥯤ѤޤWeb Сʤե륷ƥ˥󥯤ϡ \f2file: 󥯤ѤǤޤ\fP ˡϡ٤ƤΥ桼줿Ʊե륷ƥͭɥȤ˥ɬפʳϻѤʤǤ +.LP +٤Ƥξ硢٤ƤΥڥ졼ƥ󥰥ƥǡ URL URLhttp:ץ١ȡfile:ץ١ˤ餺åڤʸȤƻѤޤ ( .na \f2URL Memo\fP @ .fi -http://www.ietf.org/rfc/rfc1738.txt で指定)。 +http://www.ietf.org/rfc/rfc1738.txt ǻ) .RS 3 .TP 3 -http:ベースの絶対リンク: +http: ١Х: \f2\-link http://<host>/<directory>/<directory>/.../<name>\fP .TP 3 -file:ベースの絶対リンク: +file: ١Х: \f2\-link file://<host>/<directory>/<directory>/.../<name>\fP .TP 3 -相対リンク: +Х: \f2\-link <directory>/<directory>/.../<name>\fP .RE .RE .LP -javadoc の実行時に複数の \f2\-link\fP オプションを指定して、複数のドキュメントへのリンクを作成することもできます。 \f3\-linkoffline または \-link の選択\fP +javadoc 1 μ¹Ԥʣ \f2\-link\fP ץꤹСʣΥɥȤؤΥ󥯤Ǥޤ \f3\-linkoffline ޤ \-link \fP .br -\f2\-link\fP を使用する場合: +\f2\-link\fPѤ: .RS 3 .TP 2 o -外部 API ドキュメントへの相対パスを使用する場合 + API ɥȤؤХѥѤ .TP 2 o -外部 API ドキュメントへの絶対 URL を使用する場合 (プログラムがその URL に接続し、読み取りを行うことがシェルによって許可されている場合) + API ɥȤؤ URL Ѥ (ץब URL ³ɤ߼ԤȤˤäƵĤƤ) .RE -次のような場合は、\f2\-linkoffline\fP オプションを使用します。 +\f2\-linkoffline\fP Ѥ: .RS 3 .TP 2 o -プログラムがその URL に接続し、読み取りを行うことがシェルによって許可されていない場合に外部 API ドキュメントへの絶対 URL を使用する場合。このような状況は、リンク先のドキュメントがファイアウォールの向こう側にある場合に発生します。 + API ɥȤؤ URL Ѥ (ץब URL ³ɤ߼ԤȤˤäƵĤƤʤ)Τ褦ʾϡΥɥȤեθ¦ˤȯޤ .RE .LP -\f3外部ドキュメントへの絶対リンクの使用例\fP \- +\f3ɥȤؤХ󥯤λ\fP \- \f2java.lang\fP \f2java.io\fP ¾ Java ץåȥեѥå ( .na -\f2http://java.sun.com/j2se/1.5.0/docs/api\fP @ +\f2http://java.sun.com/javase/6/docs/api/\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api 内の \f2java.lang\fP、\f2java.io\fP、その他の Java 2 プラットフォームパッケージにリンクしたい場合があります。 次のコマンドは、\f2com.mypackage\fP パッケージのドキュメントと Java 2 プラットフォームパッケージへのリンクを生成します。生成されたドキュメントには、たとえばクラスツリー内の \f2Object\fP クラスへのリンクが含まれています。\f2\-sourcepath\fP や \f2\-d\fP などの他のオプションは表示されません。 +http://java.sun.com/javase/6/docs/api ) ˥󥯤ͤޤΥޥɤϡJava SE ץåȥեѥåؤΥ󥯤ޤѥå \f2com.mypackage\fP ΥɥȤޤ줿ɥȤˤϡȤХ饹ĥ꡼ \f2Object\fP 饹ؤΥ󥯤ޤޤƤޤʤ \f2\-sourcepath\fP \f2\-d\fP ʤɡ¾ΥץϼƤޤ .nf \f3 .fl - % \fP\f3javadoc \-link http://java.sun.com/j2se/1.5.0/docs/api com.mypackage\fP + % \fP\f3javadoc \-link http://java.sun.com/javase/6/docs/api com.mypackage\fP .fl .fi -\f3外部ドキュメントへの相対リンクの使用例\fP \- 2 つのパッケージがあり、そのドキュメントが Javadoc ツールを複数回実行した結果生成されたものであるとします。 さらに、これらのドキュメントが相対パスで分割されているとします。この例の場合、2 つのパッケージは、API である \f2com.apipackage\fP とSPI (サービスプロバイダインタフェース) である \f2com.spipackage\fP です。ドキュメントの格納先は \f2docs/api/com/apipackage\fP パッケージと \f2docs/spi/com/spipackage\fP パッケージです。API パッケージのドキュメントがすでに生成されていて、現在のディレクトリが \f2docs\fP である場合、次のコマンドを実行することによって、この API ドキュメントへのリンクを持つ SPI パッケージをドキュメント化します。 +\f3ɥȤؤХ󥯤λ\fP \- 2 ĤΥѥåꡢΥɥȤ Javadoc ġʣ¹Ԥ줿ΤǤȤޤˡΥɥȤХѥʬ䤵ƤȤޤξ硢ѥåϡAPI Ǥ \f2com.apipackage\fP ȡSPI (ӥץХ󥿥ե) Ǥ \f2com.spipackage\fP ǤɥȤγǼϡ \f2docs/api/com/apipackage\fP \f2docs/spi/com/spipackage\fP ǤAPI ѥåΥɥȤϤǤѤߤǡ \f2docs\fP ȥǥ쥯ȥˤʤäƤȲꤹȡAPI ɥȤؤΥ󥯤ޤ SPI ѥåɥȲˤϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -4754,43 +3260,43 @@ .fl .fi .LP -\f2\-link\fP 引数は、生成先ディレクトリ (\f2docs/spi\fP) の相対パスです。 -.LP -\f3詳細\fP \- \f2\-link\fP オプションを使うと、「コードからは参照されていても、Javadoc の今回の実行ではドキュメント化されない」というクラスにリンクできるようになります。リンクから有効なページに移動できるようにするには、それらの HTML ページがある場所を調べ、その場所を \f2extdocURL\fP に指定する必要があります。このオプションを使うと、たとえば、サードパーティーのドキュメントから、\f2http://java.sun.com\fP にある \f2java.*\fP のドキュメントにリンクすることができます。 -.LP -今回の実行で Javadoc によって生成されるドキュメント内の API だけを対象にリンクを作成する場合は、\f2\-link\fP オプションを省略します。\f2\-link\fP オプションが指定されていない場合、Javadoc ツールは、外部参照されたドキュメントへのリンクを作成しません。これは、そのドキュメントが存在するかどうか、および存在する場合はその場所を判別できないからです。 -.LP -このオプションでは、生成ドキュメント内の複数の場所にリンクを作成できます。 -.LP -また、このオプションを使うと、複数のパッケージ群の間にクロスリンクを作成することもできます。つまり、ある一式のパッケージに対して javadoc を実行したあと、別の一式のパッケージに対して javadoc を実行し、これら 2 つのパッケージ群の間にクロスリンクを作成できます。 -.LP -\f3クラスの参照方法\fP \- 外部参照クラスへのリンクを、テキストラベルだけではなく実際に表示するには、次の方法でクラスを参照する必要があります。メソッドの本体でクラスを参照するだけでは十分ではありません。\f2import\fP 文または宣言で参照する必要があります。次に、クラス \f2java.io.File\fP を参照する方法の例を示します。 +\f2\-link\fP ΰϡǥ쥯ȥ (\f2docs/spi\fP) ХѥǤ +.LP +\f3ܺ\fP \- \f2\-link\fP ץȤȡ֥ɤϻȤƤƤ⡢Javadoc κμ¹ԤǤϥɥȲʤפȤ饹˥󥯤Ǥ褦ˤʤޤ󥯤ͭʥڡ˰ưǤ褦ˤˤϡ HTML ڡĴ١ξ \f2extdocURL\fP ˻ꤹɬפޤˤꡢȤСɥѡƥΥɥȤ \f2http://java.sun.com java.*\fP ΥɥȤؤΥ󥯤 \f2ǽȤʤޤ\fP +.LP +μ¹Ԥ Javadoc ˤäɥ API оݤ \f2󥯤ϡ\fP \-link ץάޤ \f2\-link\fP ץ󤬻ꤵƤʤ硢Javadoc ġϡȤ줿ɥȤؤΥ󥯤ޤ󡣤ϡΥɥȤ¸ߤ뤫ɤ¸ߤϤξȽ̤ǤʤǤ +.LP +ΥץǤϡɥʣξ˥󥯤Ǥޤ +.LP +⤦ 1 ĤӤϡѥååȴ֤ǤΥ󥯤ǤΥѥååȤФ javadoc ¹Ԥȡ¾ΥѥååȤФ javadoc ټ¹Ԥ뤳Ȥˤꡢξåȴ֤Υ󥯤Ǥޤ +.LP +\f3饹λˡ\fP \- ȥ饹ؤΥ󥯤򡢥ƥȥ٥ǤϤʤºݤɽˤϡˡǥ饹򻲾Ȥɬפޤ᥽åɤΤǥ饹򻲾ȤǤϽʬǤϤޤ󡣤Υ饹ϡ \f2import\fP ʸΤξǻȤƤɬפޤHere are examples of how the class \f2java.io.File\fP can be referenced: .RS 3 .TP 2 o -すべての種類の \f2import\fP 文の場合: ワイルドカードによるインポート、名前による明示的なインポート、または \f2java.lang.*\fP に対する自動的なインポート。たとえば、次のようにすれば十分です。 +٤Ƥμ \f2import\fP ʸξ: 磻ɥɤˤ륤ݡȡ̾ˤŪʥݡȡޤ \f2java.lang.* Ф뼫ưŪʥݡ\fPȤСΤ褦ˤнʬǤ .br \f2import java.io.*;\fP .br -1.3.x および 1.2.x では、名前による明示的なインポートだけです。ワイルドカードによるインポート文も、自動インポート \f2java.lang.*\fP も使用できません。 +1.3.x 1.2.x Ǥϡ̾ˤŪʥݡȤǤ磻ɥɤˤ륤ݡʸ⡢ \f2java.lang.* μưݡȤѤǤޤ\fP .TP 2 o -宣言の場合: +ξ: .br \f2void foo(File f) {}\fP .br -この参照を使用し、メソッド、コンストラクタ、フィールド、クラス、またはインタフェースの戻り値の型またはパラメータの型に置くか、\f2implements\fP、\f2extends\fP、または \f2throws\fP 文に置きます。 +λȤѤ᥽åɡ󥹥ȥ饯եɡ饹ޤϥ󥿥եͤηޤϥѥ᡼η֤ \f2implements\fP \f2extends\fP ޤ \f2throws\fP ʸ֤ޤ .RE .LP -この結果、\f2\-link\fP オプションを使用しても、この制限のために誤って表示されない多くのリンクが多数発生する可能性があります。テキストはハイパーテキストリンクが付けられずに表示されます。これらのリンクが表示する警告から、このリンクを認識できます。クラスを正しく参照し、それによってリンクを追加するためのもっとも安全な方法は上で説明したとおり、当該のクラスをインポートすることです。 -.LP -\f3パッケージリスト\fP \- \f2\-link\fP オプションは、\f2package\-list\fP という名前のファイルを要求します。 このファイルは、Javadoc ツールによって生成され、\f2\-link\fP によって指定した URL に存在します。\f2package\-list\fP ファイルは、その場所にあるドキュメント化されたパッケージの名前のリストが入った単純なテキストファイルです。前の例では、Javadoc ツールは指定された URL にある \f2package\-list\fP という名前のファイルを探し、パッケージ名を読み込んで、その URL にあるそれらのパッケージへのリンクを作成しました。 -.LP -たとえば、Java プラットフォーム v5.0 API のパッケージリストは +פʷ̤Ȥơ \f2\-link\fP ץλѻˡ¤Τ˸äɽʤ󥯤¿ȯǽޤƥȤϥϥѡƥȥ󥯤դ줺ɽޤΥ󥯤ɽٹ𤫤顢Υ󥯤ǧǤޤ饹Ȥˤäƥ󥯤ɲä뤿ΤäȤˡϾȤꡢΥ饹򥤥ݡȤ뤳ȤǤ +.LP +\f3ѥåꥹ\fP \- \f2\-link\fP ץǽˤϡJavadoc ġˤä \f2package\-list\fP Ȥ̾Υե뤬桼 \f2\-link\fP ˻ꤷ URL ¸ߤƤɬפޤ \f2package\-list\fP եϡξˤɥȲ줿ѥå̾ΥꥹȤäñʥƥȥեǤǤϡJavadoc ġϡꤵ줿 URL \f2package\-list\fP Ȥ̾Υե򸡺ѥå̾ɤ߹ȡ URL ˤ뤽ΥѥåؤΥ󥯤ޤ +.LP +ȤСJava SE 6 API ΥѥåꥹȤ .na -\f2http://java.sun.com/j2se/1.5.0/docs/api/package\-list\fP @ +\f2http://java.sun.com/javase/6/docs/api/package\-list\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api/package\-list にあり、次のような内容で始まっています。 +http://java.sun.com/javase/6/docs/api/package\-list ˤꡢΤ褦ƤǻϤޤäƤޤ .nf \f3 .fl @@ -4808,64 +3314,64 @@ .fl java.awt.font .fl - その他 ... + ¾ .fl \fP .fi .LP -\f2\-link\fP オプションを指定せずに javadoc を実行した場合、外部参照クラスに属する名前を見つけると、javadoc はその名前をリンクを持たない形で出力します。一方、\f2\-link\fP オプションを指定した場合は、指定した \f2extdocURL\fP にある \f2package\-list\fP ファイルから該当するパッケージ名が検索されます。パッケージ名が見つかると、\f2extdocURL\fP が名前の前に付加されます。 -.LP -すべてのリンクが正しく機能するためには、外部参照のすべてのドキュメントが、指定した URL に存在していなければなりません。Javadoc ツールは、指定された package\-list が存在するかどうかを調べるだけで、指定された URL に目的のページが存在するかどうかはチェックしません。 -.LP -\f3複数のリンク\fP \- 複数の \f2\-link\fP オプションを指定すると、生成された任意の数の外部ドキュメントに対してリンクを設定できます。Javadoc 1.2 には、複数の \f2\-link\fP オプションを指定できないというバグがあります。これは 1.2.2 で修正されました。 -.LP -リンクする外部ドキュメントごとに、次のように別々のリンクオプションを指定します。 -.LP -\ \ \f2% \fP\f4javadoc \-link\fP \f2extdocURL1\fP \f4\-link\fP \f2extdocURL2\fP \f2...\fP\f4\-link\fP \f2extdocURLn\fP \f4com.mypackage\fP -.LP -\f2extdocURL1\fP、\f2extdocURL2\fP、... \f2extdocURLn\fP は、それぞれ外部ドキュメントのルートを指し、各ルートには \f2package\-list\fP という名前のファイルが入っています。 -.LP -\f3クロスリンク\fP \- まだ生成されていない 2 つ以上のドキュメントをクロスリンクする場合は、「ブートストラップ」が必要になります。つまり、どのドキュメントについても \f2package\-list\fP が存在していない場合は、最初のドキュメントに対して javadoc ツールを実行する時点で、2 番目のドキュメントの \f2package\-list\fP がまだ存在していません。したがって、外部リンクを作成するには、2 番目のドキュメントを生成したあとで、最初のドキュメントを生成し直す必要があります。 -.LP -この場合、最初のドキュメント生成の目的は、そのドキュメントの \f2package\-list\fP を作成することです。 パッケージ名をすべて把握している場合は、package\-list を手動で作成することもできます。次に、2 番目のドキュメントとその外部リンクを生成します。必要な外部の \f2package\-list\fP ファイルが存在しない場合、Javadoc ツールは警告を表示します。 +\f2\-link\fP ץꤻ javadoc ¹Ԥ硢ȥ饹°̾򸫤Ĥȡjavadoc Ϥ̾󥯤ʤǽϤޤ \f2\-link\fP ץ󤬻ꤵ줿硢Javadoc ġϡ \f2ꤵ줿\fP \f2extdocURL\fP ξˤ package\-list եǡΥѥå̾򸡺ޤѥå̾Ĥȡ\f2extdocURL\fP ̾ղäޤ +.LP +٤ƤΥ󥯤ǽ뤿ˤϡȤΤ٤ƤΥɥȤꤷ URL ¸ߤƤʤФʤޤJavadoc ġϡꤵ줿 package\-list ¸ߤ뤫ɤĴ٤ǡꤵ줿 URL ŪΥڡ¸ߤ뤫ɤϥåޤ +.LP +\f3ʣΥ\fP \- ʣ \f2\-link\fP ץꤹȡǤդογɥȤؤΥ󥯤ǤޤJavadoc 1.2 ˤϡʣ \f2\-link\fP ޥɤǤʤȤХޤ 1.2.2 ǽޤ +.LP +󥯤볰ɥȤȤˡΤ褦̡Υ󥯥ץꤷޤ +.LP +\ \ \f2% \fP\f4javadoc \-link\fP \f2extdocURL1\fP \f4\-link\fP \f2extdocURL2\fP \f2... \fP\f4\-link\fP \f2extdocURLn\fP \f4com.mypackage\fP +.LP +\f2extdocURL1\fP\f2extdocURL2\fP... \f2extdocURLn\fP ϡ줾쳰ɥȤΥ롼Ȥؤƥ롼Ȥˤϡ \f2package\-list\fP Ȥ̾Υե뤬äƤޤ +.LP +\f3\fP \- ޤƤʤ 2 İʾΥɥȤ򥯥󥯤ϡ֥֡ȥȥåספɬפˤʤޤĤޤꡢɤΥɥȤˤĤƤ \f2package\-list\fP ¸ߤƤʤϡǽΥɥȤФ Javadoc ġ¹Ԥǡ2 ܤΥɥȤ \f2package\-list\fP Ϥޤ¸ߤƤޤ󡣤äơ󥯤ˤϡ2 ܤΥɥȤȤǡǽΥɥȤľɬפޤ +.LP +ξ硢ǽΥɥŪϡ \f2package\-list\fP 뤳ȤǤѥå̾򤹤٤İƤϡpackage\-list ưǺƤ⤫ޤޤ󡣼ˡ2 ܤΥɥȤȤγ󥯤ޤɬפʳ \f2package\-list\fP ե뤬¸ߤʤϡJavadoc ġ뤫ٹ𤬽Ϥޤ .LP .TP 3 \-linkoffline\ extdocURL\ packagelistLoc -このオプションは、\f2\-link\fP オプションを変えたものです。 どちらも、javadoc によって生成された外部参照クラスのドキュメントへのリンクを作成します。Javadoc ツール自体がオフラインになっているとき (Web 接続を使ってドキュメントにアクセスできないとき)、Web 上のドキュメントにリンクするには、\f2\-linkoffline\fP オプションを使用します。 -.LP -厳密には、外部ドキュメントの \f2package\-list\fP ファイルにアクセスできないとき、またはこのファイルが \f2extdocURL\fP で指定された場所とは異なる場所 (通常、\f2packageListLoc\fP で指定可能なローカルな場所) に存在するとき、\f2\-linkoffline\fP を使用します。したがって、\f2extdocURL\fP に WWW 上でしかアクセスできない場合は、\f2\-linkoffline\fP を指定することにより、ドキュメントの生成時に javadoc ツールが Web に接続できなければならないという制約がなくなります。 -.LP -さらに、ドキュメントを更新するための「ハッキング」としての使用も可能です。パッケージのセット全体に対して javadoc を実行したあと、変更した一部のパッケージだけに対して javadoc を実行します。 こうして、更新されたファイルを、オリジナルのファイルセットに挿入できるようにします。例をあとで示します。 -.LP -\f2\-linkoffline\fP オプションは引数を 2 つ取ります。 最初の引数は \f2<a href>\fP リンクに組み込まれる文字列を指定する引数、2 番目の引数は \f2package\-list\fP の検索場所を指定する引数です。 +Υץ \f2\-link\fP ΥХꥨ 1 ĤǤɤ⡢ȥ饹 javadoc ɥȤؤΥ󥯤ޤJavadoc \f2ġ뼫Τ\fP ե饤ˤʤäƤȤ (Web ³ȤäƥɥȤ˥ǤʤȤ)Web ΥɥȤ˥󥯤ˤϡ\-linkoffline ץѤޤ +.LP +̩ˤϡ \f2\fP ɥȤ \f2package\-list\fP ե˥ǤʤȤޤϤΥե뤬 \f2extdocURL\fP ǻꤵ줿Ȥϰۤʤ (̾\f2packageListLoc\fP ǻǽʥʾ) ¸ߤȤ\-linkoffline ѤޤäơWWW ͳǤ \f2extdocURL\fP ˥Ǥʤ硢 \f2\-linkoffline\fP ꤹ뤳ȤˤꡢɥȤ Javadoc ġ뤬 Web ³ǤʤФʤʤȤ󤬤ʤʤޤ +.LP +ˡɥȤ򹹿뤿Ρ֥ϥå󥰡פȤƤλѤǽǤѥåΥåΤФ javadoc ¹ԤȡѹΥѥåФ javadoc ¹Ԥޤơ줿ե򡢥ꥸʥΥե륻åȤǤ褦ˤޤ򤢤ȤǼޤ +.LP +\f2\-linkoffline\fP ץϰ 2 ļޤ1 Ĥϡ \f2<a href>\fP 󥯤Ȥ߹ޤʸɽ⤦ 1 Ĥ \f2package\-list\fP θ򼨤Ǥ .RS 3 .TP 2 o -\f4extdocURL\fP は、リンク先として指定する、javadoc によって生成された外部ドキュメントを含むディレクトリの絶対 URL または相対 URL です。相対リンクを使用する場合、\f2\-d\fP を使って、生成先ディレクトリからリンクされるパッケージのルートの相対パスを指定する必要があります。詳細は、\f2\-link\fP オプションの \f2extdocURL\fP を参照してください。 +\f4extdocURL\fP ϡȤƻꤹ롢javadoc ˤä줿ɥȤޤǥ쥯ȥ URL ޤ URL ǤХ󥯤ξ硢ͤϡ( \f2\-d\fP ǻꤵ줿) ǥ쥯ȥ꤫ѥåΥ롼ȤؤХѥˤ٤Ǥܺ٤ϡ\-link ץ \f2extdocURL\fP \f2򻲾\fP Ƥ .TP 2 o -\f4packagelistLoc\fP には、外部ドキュメントの \f2package\-list\fP ファイルが入っているディレクトリのパスまたは URL を指定します。これは、URL (http: または file:)or file:)とファイルパスのどちらでもかまいません。また、絶対パスと相対パスのどちらでも指定できます。相対パスの場合は、javadoc が実行されるカレントディレクトリからの相対パスとして指定します。\f2package\-list\fP というファイル名は含めないでください。 +\f4packagelistLoc\fP ϡɥȤ \f2package\-list\fP եޤǥ쥯ȥؤΥѥޤ URL ǤϡURL (http: ޤ file:) ǤեѥǤ⤫ޤޤ󤷡ХѥǤХѥǤ⤫ޤޤХѥξϡjavadoc ¹Ԥ륫ȥǥ쥯ȥ꤫ХѥȤƻꤷޤե̾ \f2package\-list\fP ϴޤʤǤ .RE .LP -javadoc の 1 回の実行で、複数の \f2\-linkoffline\fP オプションを指定できます。1.2.2 より前は、複数のオプションを指定することはできませんでした。 -.LP -\f3外部ドキュメントへの絶対リンクを使った例\fP \- \f2http://java.sun.com/j2se/1.5.0/docs/api\fP 内の \f2java.lang\fP、\f2java.io\fP、、およびその他の Java 2 プラットフォームパッケージにリンクしたくても、Web にアクセスできない 場合について考えてみます。この場合は、ブラウザで +1 javadoc ¹Ԥʣ \f2\-linkoffline\fP ץǤޤ1.2.2 ϡʣΥץꤹ뤳ȤϤǤޤǤ +.LP +\f3ɥȤؤХ󥯤λ\fP \- http://java.sun.com/javase/6/docs/api \f2java.lang\fP \f2java.io\fP Ӥ¾ Java SE ץåȥեѥå \f2˥󥯤Ƥ\fP Web ˥Ǥʤͤޤ֥饦 \f2\fP .na -\f2http://java.sun.com/j2se/1.5.0/docs/api/package\-list\fP @ +\f2http://java.sun.com/javase/6/docs/api/package\-list\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api/package\-list にある \f2package\-list\fP ファイルを開き、ローカルディレクトリに保存します。 さらに、2 番目の引数 \f2packagelistLoc\fP にこのローカルコピーの場所を指定します。この例では、パッケージリストファイルはカレントディレクトリ "\f2.\fP" に保存されています。次のコマンドは、Java 2 プラットフォーム API へのリンクを含む、\f2com.mypackage\fP パッケージのドキュメントを生成します。生成されたドキュメントには、たとえばクラスツリー内の \f2Object\fP クラスへのリンクが含まれています。\f2\-sourcepath\fP などの他の必要なオプションは表示されません。 +http://java.sun.com/javase/6/docs/api/package\-list ˤ package\-list ե򳫤ǥ쥯ȥ¸ 2 \f2packagelistLoc\fP ǤΥ륳ԡؤΥѥꤷޤǤϡѥåꥹȥեϥȥǥ쥯ȥ "\f2.\fP" ¸ƤޤΥޥɤϡJava SE ץåȥեѥåؤΥ󥯤ޤѥå \f2com.mypackage\fP ΥɥȤޤ줿ɥȤˤϡȤХ饹ĥ꡼ \f2Object\fP 饹ؤΥ󥯤ޤޤƤޤʤ \f2\-sourcepath\fP ʤɡ¾ɬץץϼƤޤ .nf \f3 .fl -% \fP\f3javadoc \-linkoffline http://java.sun.com/j2se/1.5.0/docs/api . com.mypackage\fP +% \fP\f3javadoc \-linkoffline http://java.sun.com/javase/6/docs/api . com.mypackage\fP .fl .fi .LP -\f3外部ドキュメントへの相対リンクの使用例\fP \- 通常、\f2\-linkoffline\fP に相対パスを指定することはありません。 \f2\-link\fP で同じことができるからです。\f2\-linkoffline\fP を使用する際、\f2package\-list\fP には通常ローカルのファイルを指定します。 相対リンクを使用する際も、リンク先のファイルには通常ローカルのファイルを指定します。したがって、\f2\-linkoffline\fP の 2 つの引数に別々のパスを指定する必要はありません。2 つの引数が同一である場合は、\f2\-link\fP を使用できます。\f2\-link\fP の相対リンクの例を参照してください。 -.LP -\f4package\-list\fP\f3 ファイルを手動で作成\fP \- \f2package\-list\fP ファイルがまだ存在しなくても、ドキュメントのリンク先のパッケージ名がわかっている場合は、このファイルを自分で作成し、\f2packagelistLoc\fP でそのパスを指定することができます。\f2com.apipackage\fP が最初に生成され、\f2com.spipackage\fP のパッケージリストが存在しないという前出の例を参照してください。この方法は、パッケージ名はわかっているものの、まだ公開されていない、新しい外部ドキュメントにリンクするドキュメントを生成する必要がある場合に便利です。また、\f2package\-list\fP ファイルが生成されない Javadoc 1.0 や 1.1 などで生成されたパッケージ向けに \f2package\-list\fP ファイルを作成するときにも、この方法を利用します。同様に、2 つの会社が未公開の \f2package\-list\fP ファイルを共有することもできるため、クロスリンクを設定したドキュメントを同時にリリースすることも可能です。 -.LP -\f3複数のドキュメントへのリンク\fP \- \f2\-linkoffline\fP は、参照先の生成ドキュメントごとに 1 つずつ指定します。 次の例では、わかりやすくするためにオプションごとに行を分けています。 +\f3ɥȤؤХ󥯤λ\fP \- \f2\-linkoffline\fP ХѥѤ뤳Ȥϡޤꤢޤͳñǡ̾ \f2\-link\fP ǽʬǤ \f2\-linkoffline\fP Ѥݡ \f2package\-list\fP ˤ̾Υեꤷޤ Х󥯤Ѥݤ⡢Υեˤ̾Υեꤷޤäơ \f2\-linkoffline 2 Ĥΰ̡ΥѥꤹɬפϤޤ\fP2 ĤΰƱǤϡ \f2\-link\fP ѤǤޤ \f2\-link\fP Х󥯤򻲾ȤƤ +.LP +\f4package\-list\fP\f3 եưǺ\fP \- \f2package\-list\fP ե뤬ޤ¸ߤʤƤ⡢ɥȤΥΥѥå̾狼äƤϡΥեʬǺpackagelistLoc \f2ǤΥѥꤹ뤳ȤǤޤ\fPcom.apipackage ǽ \f2com.spipackage\fP ΥѥåꥹȤ¸ߤƤʤäȤ \f2ФΥ\fP ȤƵ󤲤ޤˡϡѥå̾Ϥ狼äƤΤΡޤƤʤɥȤ˥󥯤ɥȤɬפǤޤJavadoc 1.0 ޤ 1.1 줿ѥå \f2package\-list\fP եɬפˤ⡢ˡȤޤΥСǤϡ \f2package\-list\fP եƤޤǤƱͤˡ2 ĤδȤ̤ \f2package\-list\fP եͭС󥯤ޤɥȤƱ˥꡼뤳ȤǽȤʤޤ +.LP +\f3ʣΥɥȤؤΥ\fP \- ȤʤɥȤȤ \f2\-linkoffline\fP 1 󤺤Ĵޤ뤳ȤǤޤ狼䤹뤿ˡץ󤴤Ȥ˲ԤƼƤޤ .LP \f2% \fP\f4javadoc \-linkoffline\fP \f2extdocURL1\fP \f2packagelistLoc1\fP \f2\\\fP .br @@ -4873,24 +3379,24 @@ .br \f2\ \ \ \ \ \ \ \ \ \ ...\fP .LP -\f3ドキュメントの更新\fP \- 前述の \f2\-linkoffline\fP オプションのもうひとつの用途は、プロジェクトに大量のパッケージが含まれていて、すでにツリー全体に対して javadoc の実行が完了している場合に、次の実行では、少量の変更を手早く加えたあと、ソースツリーのごく一部に対してだけ javadoc を再実行する場合に便利です。これは、ドキュメンテーションコメントに対してだけ変更を加え、宣言は変更しない場合にのみ正しく処理されるので、ハッキングのようなものです。ソースコードの宣言を追加、削除、または変更した場合は、索引、パッケージツリー、継承されるメンバーのリスト、[使用] ページなどの場所で、リンクが壊れることがあります。 -.LP -まず、今回の実行で使用する新しい生成先ディレクトリ (\f2update\fP) を作成します。元の生成先ディレクトリの名前が \f2html\fP だとします。もっとも単純な例では、\f2html\fP ディレクトリの親ディレクトリに移動 (cd) します。\f2\-linkoffline\fP の最初の引数にカレントディレクトリ "." を指定し、2 番目の引数に \f2html\fP への相対パスを指定します。 ここで、\f2package\-list\fP が検索されます。 更新対照のパッケージのパッケージ名だけを指定してください。 +\f3ɥȤι\fP \- Ҥ \f2\-linkoffline\fP ץΤ⤦ҤȤĤӤϡץȤ̤ΥѥåޤޤƤơǤ˥ĥ꡼ΤФ javadoc μ¹ԤλƤˡμ¹ԤǤϡ̤ѹ᤯äȡĥ꡼ΤФƤ javadoc Ƽ¹ԤǤϡɥơ󥳥ȤФƤѹäѹʤˤΤΤǡϥå󥰤Τ褦ʤΤǤɤɲáޤѹϡѥåĥ꡼ѾСΥꥹȡֻѡץڡʤɤξǡ󥯤뤳Ȥޤ +.LP +ޤοʼ¹ѤȤơǥ쥯ȥ ( \f2update\fP ̿̾) ޤǥ쥯ȥ̾ \f2html\fP äȤޤäȤñǤϡ \f2html ǥ쥯ȥοƥǥ쥯ȥ˰ư (cd) ޤ\fP \f2\-linkoffline\fP 1 򥫥ȥǥ쥯ȥ.פꤷ 2 package\-list ޤޤƤ \f2html\fP ؤХѥꤷ \f2ѥåΥѥå̾Τߤ\fPϤޤ .nf \f3 .fl % \fP\f3javadoc \-d update \-linkoffline . html com.mypackage\fP .fl .fi -Javadoc ツールの終了後、\f2update/com/package\fP 内の生成されたクラスのページをコピーし (概要や索引を除く)、\f2html/com/package\fP 内の元のファイルに上書きします。 +Javadoc ĥ꡼νλ塢 \f2update/com/package\fP 줿饹Υڡ򥳥ԡ (פϽ) \f2html/com/package θΥե˾񤭤ޤ\fP .LP .TP 3 \-linksource\ -各ソースファイル (行番号付き) の HTML バージョンを作成し、標準 HTML ドキュメントからソースファイルへのリンクを追加します。リンクは、ソースファイル内に宣言されているクラス、インタフェース、コンストラクタ、メソッド、フィールドに対して作成されます。デフォルトコンストラクタ、生成されたクラスに対しては作成されません。 -.LP -\f3このオプションは、\fP\f4\-public\fP\f3、\fP\f4\-package\fP\f3、\fP\f4\-protected\fP\f3、\fP\f4\-private\fP\f3 の各オプションとは関係なく、非公開のクラス、フィールド、非公開のメソッドの本体をはじめとする組み込まれたソースファイル内のすべての非公開実装の詳細を公開します。\fP\f2\-private\fP オプションを指定しないかぎり、非公開のクラスやインタフェースの一部には、リンクを介してアクセスできないことがあります。 -.LP -各リンクは、その宣言内の識別子名の上に作成されます。たとえば、\f2Button\fP クラスのソースコードヘのリンクは、「Button」という語の上に作成されます。 +ƥե (ֹդ) HTML Сɸ HTML ɥȤ饽եؤΥ󥯤ɲäޤ󥯤ϡեƤ륯饹󥿥ե󥹥ȥ饯᥽åɡեɤФƺޤǥեȥ󥹥ȥ饯줿饹ФƤϺޤ +.LP +\f3Υץϡ\fP\f4\-public\fP\f3 \fP\f4\-package\fP\f3 \fP\f4\-protected\fP\f3 \fP\f4\-private\fP\f3 γƥץȤϴطʤΥ饹եɡΥ᥽åɤΤϤȤȤ߹ޤ줿եΤ٤Ƥξܺ٤ޤ\fP\f2\-private\fP ץʻƻꤷʤꡢΤ٤ƤΥ饹䥤󥿥ե˥󥯷ͳǥǤȤϤޤ +.LP +ƥ󥯤ϡμ̻̾ξ˺ޤȤС \f2Button\fP 饹ΥɤؤΥ󥯤ϡButtonפȤξ˺ޤ .nf \f3 .fl @@ -4902,7 +3408,7 @@ .fl \fP .fi -Button クラスの \f2getLabel()\fP メソッドのソースコードへのリンクは、「getLabel」という語の上に作成されます。 +ޤButton 饹 \f2getLabel()\fP ᥽åɤΥɤؤΥ󥯤ϡgetLabelפȤξ˺ޤ .nf \f3 .fl @@ -4913,26 +3419,21 @@ .LP .TP 3 \-group\ groupheading\ packagepattern:packagepattern:... -概要ページの複数のパッケージを、指定したグループに分けて、グループごとに表を作成します。各グループは、それぞれ別の \f2\-group\fP オプションで指定します。これらのグループは、コマンド行で指定した順序でページに表示されます。 各グループ内では、パッケージがアルファベット順に並べられます。指定した \f2\-group\fP オプションごとに、\f2packagepattern\fP 式のリストと一致するパッケージが、見出し \f2groupheading\fP を持つ 1 つの表にまとめて表示されます。 +ץڡʣΥѥå򡢻ꤷ롼פʬơ롼פȤɽޤƥ롼פϡ줾̤ \f2\-group\fP ץǻꤷޤΥ롼פϡޥɹԤǻꤷǥڡɽޤƥ롼Ǥϡѥåե٥åȽ¤٤ޤ \f2\-group\fP ץǤϡ \f2packagepattern\fP ΥꥹȤ˰פѥå \f2groupheading\fP ȤФɽɽޤ .RS 3 .TP 2 o -\f4groupheading\fP には、任意のテキストを指定でき、空白を含めることができます。指定したテキストは、グループの表見出しになります。 +\f4groupheading\fP ˤϡǤդΥƥȤǤޤ뤳ȤǤޤꤷƥȤϡ롼פɽФˤʤޤ .TP 2 o -\f4packagepattern\fP には、任意のパッケージ名、または任意のパッケージ名の先頭部分とそれに続く 1 つのアスタリスク (\f2*\fP) を指定できます。アスタリスクは、「任意の文字に一致する」という意味のワイルドカードです。ワイルドカードとして指定できるのは、アスタリスクだけです。1 つのグループには、コロン (\f2:\fP) で区切って複数のパターンを含めることができます。 +\f4packagepattern\fP ˤϡǤդΥѥå̾ޤǤդΥѥå̾ƬʬȤ³ 1 ĤΥꥹ (\f2*\fP) Ǥޤ ꥹϡǤդʸ˰פפȤ̣Υ磻ɥɤǤ磻ɥɤȤƻǤΤϡꥹǤ1 ĤΥ롼פˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤ .RE -.RS 3 - -.LP -.LP -\f3注: パターンやパターンリスト内でアスタリスクを使う場合は、\fP\f4"java.lang*:java.util"\fP\f3 のように、パターンリストを引用符で囲む必要があります。\fP -.LP -.RE -.LP -\f2\-group\fP オプションが指定されていない場合は、すべてのパッケージが、「パッケージ」という見出しの 1 つのグループに入れられます。ドキュメント化されるパッケージの中に、指定したグループのどのグループにも入らないパッケージがある場合、このようなパッケージは「その他のパッケージ」という見出しを持つ独立したグループに入れられます。 -.LP -たとえば、次のようにオプションを指定すると、ドキュメント化される 5 つのパッケージは、コアパッケージ、拡張機能パッケージ、およびその他のパッケージに分けられます。「java.lang*」では、最後のドットを指定していないことに注目してください。 「java.lang.*」のようにドットを入れると、java.lang パッケージは除外されることになります。 +.LP +\f3: ѥѥꥹǥꥹȤϡ \fP\f4"java.lang*:java.util" Τ褦ˡѥꥹȤǰϤɬפޤ\fP +.LP +桼 \f2\-group\fP ץ 1 Ĥꤷʤä硢֥ѥåפȤФ 1 ĤΥ롼ˡ٤ƤΥѥå֤ޤɥȲѥåˡꤷ롼פΤɤΥ롼פˤʤѥå硢Τ褦ʥѥåϡ֤¾ΥѥåפȤФΩ롼פޤ +.LP +ȤСΤ褦˥ץꤹȡɥȲ 5 ĤΥѥåϡѥåĥǽѥåӤ¾Υѥåʬޤjava.lang*פǤϡǸΥɥåȤꤷƤʤȤܤƤjava.lang.*פΤ褦˥ɥåȤȡjava.lang ѥåϽ뤳Ȥˤʤޤ .nf \f3 .fl @@ -4943,56 +3444,52 @@ java.lang java.lang.reflect java.util javax.servlet java.new\fP .fl .fi -この結果、次のようなグループ化が行われます。 -.RS 3 +η̡Τ褦ʥ롼ײԤޤ .RS 3 .TP 3 -コアパッケージ +ѥå \f2java.lang\fP \f2java.lang.reflect\fP \f2java.util\fP .TP 3 -拡張機能パッケージ +ĥǽѥå \f2javax.servlet\fP .TP 3 -その他のパッケージ +¾Υѥå \f2java.new\fP .RE - -.LP -.RE .LP .TP 3 \-nodeprecated -推奨されない API をドキュメントに生成しないようにします。このオプションを指定すると、\-nodeprecatedlist オプションを指定した場合と同じ効果があることに加えて、ドキュメントのほかの部分全体でも、推奨されない API が生成されません。このオプションは、コードを記述しているとき、推奨されないコードによって気を散らされたくない場合に便利です。 +侩ʤ API ɥȤʤ褦ˤޤΥץꤹȡ\-nodeprecatedlist ץꤷƱ̤뤳Ȥ˲äơɥȤΤۤʬΤǤ⡢侩ʤ API ޤ󡣤Υץϡɤ򵭽ҤƤȤ侩ʤɤˤäƵ򻶤餵줿ʤǤ .LP .TP 3 \-nodeprecatedlist -推奨されない API のリストを含むファイル (deprecated\-list.html)、およびナビゲーションバーのそのページへのリンクが生成されないようにします。ただし、ドキュメントのほかの部分では、推奨されない API が生成されます。このオプションは、推奨されない API がソースコードに含まれておらず、ナビゲーションバーをすっきりと見せたい場合に便利です。 +侩ʤ API ΥꥹȤޤե (deprecated\-list.html)ӥʥӥСΤΥڡؤΥ󥯤ʤ褦ˤޤɥȤΤۤʬǤϡ侩ʤ API ޤΥץϡ侩ʤ API ɤ˴ޤޤƤ餺ʥӥС򤹤äȸǤ .LP .TP 3 \-nosince -生成ドキュメントから、@since タグに対応する「導入されたバージョン」 セクションを省略します。 +ɥȤ顢@since бƳ줿С άޤ .LP .TP 3 \-notree -生成されるドキュメントからクラスおよびインタフェースの階層ページを省略します。これらのページには、ナビゲーションバーの「ツリー」ボタンからアクセスできます。デフォルトでは、階層が生成されます。 +ɥȤ饯饹ӥ󥿥եγإڡάޤΥڡˤϡʥӥСΡ֥ĥ꡼ץܥ󤫤饢ǤޤǥեȤǤϡؤޤ .LP .TP 3 \-noindex -生成ドキュメントから、索引を省略します。デフォルトでは、索引が生成されます。 +ɥȤ顢άޤǥեȤǤϡޤ .LP .TP 3 \-nohelp -出力の各ページの最上部と最下部にあるナビゲーションバーから [ヘルプ] リンクを省略します。 +ϤγƥڡκǾȺDzˤʥӥС֥إסץ󥯤άޤ .LP .TP 3 \-nonavbar -生成されるページの最上部と最下部に表示されるナビゲーションバー、ヘッダー、およびフッターを生成しないようにします。このオプションは、bottom オプションには影響を与えません。\f2\-nonavbar\fP オプションは、印刷するためだけにファイルを PostScript または PDF に変換する場合など、内容だけが重要で、ナビゲーションの必要がない場合に便利です。 +ڡκǾȺDzɽʥӥСإåӥեåʤ褦ˤޤΥץϡbottom ץˤϱƶͿޤ \f2\-nonavbar\fP ץϡ뤿˥ե PostScript ޤ PDF ѴʤɡƤפǡʥӥɬפʤǤ .LP .TP 3 \-helpfile\ path/filename -上部と下部のナビゲーションバーの [ヘルプ] リンクのリンク先となる代替ヘルプファイル \f2path/filename\fP のパスを指定します。このオプションが指定されていない場合、Javadoc ツールは、ハードコードされているヘルプファイル \f2help\-doc.html\fP を自動的に作成します。このオプションを使うと、そのデフォルトの動作をオーバーライドできます。\f2filename\fP にはどんなファイル名でも指定でき、\f2help\-doc.html\fP には限定されません。例を示します。 +ȲΥʥӥСΡ֥إסץ󥯤ΥȤʤإإץե \f2path/filename\fP ΥѥꤷޤΥץ󤬻ꤵʤȡJavadoc ġϡġǥϡɥɤƤإץե \f2help\-doc.html\fP ưޤΥץȤȡΥǥեȤư򥪡С饤ɤǤޤ\f2filename\fP ˤϤɤʥե̾ǤǤ \f2help\-doc.html ˤϸꤵޤ\fP Javadoc ġϡʥӥСΥ󥯤ɬפ˱Ĵޤ򼨤ޤ .nf \f3 .fl @@ -5001,7 +3498,7 @@ .fi .TP 3 \-stylesheetfile\ path/filename -代替 HTML スタイルシートファイルのパスを指定します。このオプションが指定されていない場合、Javadoc ツールは、ハードコードされているスタイルシートファイル \f2stylesheet.css\fP を自動的に作成します。このオプションを使うと、そのデフォルトの動作をオーバーライドできます。\f2filename\fP にはどんなファイル名でも指定でき、\f2stylesheet.css\fP には限定されません。例を示します。 + HTML 륷ȥեΥѥꤷޤΥץ󤬻ꤵʤȡJavadoc ġϡġǥϡɥɤƤ륹륷ȥե \f2stylesheet.css\fP ưޤΥץȤȡΥǥեȤư򥪡С饤ɤǤޤ\f2filename\fP ˤϤɤʥե̾ǤǤ \f2stylesheet.css ˤϸꤵޤ\fPȤС .nf \f3 .fl @@ -5010,22 +3507,22 @@ .fi .TP 3 \-serialwarn -@serial タグがない場合は、コンパイル時に警告を生成します。デフォルトでは、Javadoc 1.2.2 以降のバージョンでは、直列化の警告は生成されません。1.2.2 より前の初期バージョンでは、警告が生成されます。このオプションを使用すると、直列化の警告が表示されるので、デフォルトの直列化可能フィールドと \f2writeExternal\fP メソッドを適切にドキュメント化するのに役立ちます。 +@serial ʤϡѥ˷ٹޤǥեȤǤϡJavadoc 1.2.2 ʹߤΥСǤϡľ󲽤ηٹޤ1.2.2 νСǤϡٹޤΥץѤȡľ󲽤ηٹɽΤǡǥեȤľ󲽲ǽեɤ \f2writeExternal\fP ᥽åɤŬڤ˥ɥȲΤΩޤ .LP .TP 3 \-charset\ name -このドキュメント用の HTML 文字セットを指定します。この名前は、 +ΥɥѤ HTML ʸåȤꤷޤ̾ϡ .na \f2IANA Registry\fP @ .fi -http://www.iana.org/assignments/character\-sets で与えられた、推奨される MIME 名でなければなりません。例を示します。 +http://www.iana.org/assignments/character\-sets Ϳ줿侩 MIME ̾ǤʤФʤޤ󡣤ȤС .nf \f3 .fl % \fP\f3javadoc \-charset "iso\-8859\-1" mypackage\fP .fl .fi -生成されるすべてのページの先頭に、次の行が挿入されます。 +뤹٤ƤΥڡƬˡιԤޤ .nf \f3 .fl @@ -5033,34 +3530,34 @@ .fl \fP .fi -この META タグについては、 + META ˤĤƤϡ .na -\f2HTML の標準\fP @ +\f2HTML ɸ\fP @ .fi -http://www.w3.org/TR/REC\-html40/charset.html#h\-5.2.2 (4197265 および 4137321) を参照してください。 -.LP -\-encoding および \-docencoding も参照してください。 +http://www.w3.org/TR/REC\-html40/charset.html#h\-5.2.2 (4197265 4137321) 򻲾ȤƤ +.LP +\-encoding \-docencoding ⻲ȤƤ .LP .TP 3 \-docencoding\ name -生成される HTML ファイルのエンコーディングを指定します。この名前は、 + HTML եΥ󥳡ǥ󥰤ꤷޤ̾ϡ .na \f2IANA Registry\fP @ .fi -http://www.iana.org/assignments/character\-sets で与えられた、推奨される MIME 名でなければなりません。このオプションを省略しながら \-encoding を使用した場合、生成される HTML ファイルのエンコードは、\-encoding によって決められます。例: +http://www.iana.org/assignments/character\-sets Ϳ줿侩 MIME ̾ǤʤФʤޤ󡣤Υץάʤ \-encoding Ѥ硢 HTML եΥ󥳡ɤϡ\-encoding ˤäƷޤ: .nf \f3 .fl % \fP\f3javadoc \-docencoding "ISO\-8859\-1" mypackage\fP .fl .fi -\-encoding および \-charset も参照してください。 +\-encoding \-charset ⻲ȤƤ .LP .TP 3 \-keywords -HTML メタキーワードタグを、クラスごとに生成されるファイルに追加します。これらのタグは、メタタグを検索するサーチエンジンがページを見つける場合に役立ちます。インターネット全体を検索する多くのサーチエンジンは、ページがメタタグを誤用しているため、メタタグを調べません。 一方、検索を自身の Web サイトに限定している企業では、サーチエンジンがメタタグを調べることによってメリットを得られます。 -.LP -メタタグには、クラスの完全修飾名と、フィールドおよびメソッドの修飾されていない名前が含まれます。コンストラクタは、クラス名と同じであるため含まれません。たとえば、クラス String は次のキーワードで開始します。 +HTML ᥿ɥ򡢥饹ȤեɲäޤΥϡ᥿򸡺륵󥸥󤬥ڡ򸫤ĤΩޤ󥿡ͥåΤ򸡺¿Υ󥸥ϡڡ᥿ѤƤ뤿ᡢ᥿Ĵ٤ޤ󡣰򼫿Ȥ Web Ȥ˸ꤷƤȤǤϡ󥸥󤬥᥿Ĵ٤뤳ȤˤäƥåȤޤ +.LP +᥿ˤϡ饹δ̾ȡեɤӥ᥽åɤνƤʤ̾ޤޤޤ󥹥ȥ饯ϡ饹̾ƱǤ뤿ޤޤޤ󡣤ȤС饹 String ϼΥɤdzϤޤ .nf \f3 .fl @@ -5077,29 +3574,29 @@ .LP .TP 3 \-tag\ \ tagname:Xaoptcmf:"taghead" -Javadoc ツールがドキュメンテーションコメント内の引数を 1 つ取る単純なカスタムブロックタグ \f2@\fP\f2tagname\fP を解釈できるようにします。これにより、Javadoc ツールはタグ名の「スペルチェック」を行うことができるので、ソースコード内のすべてのカスタムタグに \f2\-tag\fP オプションを組み込むことをお勧めします。今回の実行で出力されないタグは、\f2X\fP を付けて無効にします。 -.LP -コロン (\f4:\fP) は常に区切り文字になります。\f2tagname\fP でコロンを使用するには、「タグ名でのコロンの使用」を参照してください。 -.LP -\f2\-tag\fP オプションは、タグの見出し「taghead」を太字で出力します。 その次の行には、このオプションの引数で指定したテキストが続きます。 以下の例を参照してください。ブロックタグと同様、この引数のテキストにはインラインタグを含めることができます。 このインラインタグも解釈されます。出力は、引数を 1 つ取る標準のタグ (\f2@return\fP、\f2@author\fP など) の出力とよく似ています。\f2taghead\fP を省略すると、\f2tagname\fP が見出しとして表示されます。 -.LP -\f3タグの配置\fP \- 引数の \f4Xaoptcmf\fP 部分は、ソースコード内のタグを配置できる位置と、\f2X\fP を使ってこのタグを無効にできるかどうかを特定します。タグの配置位置を制限しない場合は \f4a\fP を指定します。 それ以外の文字の組み合わせも可能です。 \f4X\fP (タグの無効化) +Javadoc ġ뤬ɥơ󥳥ΰ 1 ļñʥ֥å \f2@\fP\f2tagname\fP Ǥ褦ˤޤJavadoc ġϥ̾Ρ֥ڥåפԤȤǤΤǡ¸ߤ뤹٤ƤΥॿˤĤơ \f2\-tag\fP ץޤ뤳ȤפǤμ¹ԤǤϽϤʤϡX դ̵ \f2ˤޤ\fP +.LP + (\f4:\fP) ˶ڤʸˤʤޤtagname \f2ǥѤˡˤĤƤϡ\fP ֥̾ǤΥλѡפ򻲾ȤƤ +.LP +\f2\-tag\fP ץϡθФtagheadפǽϤޤ μιԤˤϡΥץΰǻꤷƥȤ³ޤ ʲ򻲾ȤƤ֥åƱ͡ΰΥƥȤˤϥ饤󥿥ޤ뤳ȤǤޤΥ饤󥿥ᤵޤϤϡ 1 ļɸΥ ( \f2@return\fP \f2@author\fP ʤ) νϤȤ褯Ƥޤ\f2taghead\fP άȡ\f2tagname\fP ФȤɽޤ +.LP +\f3\fP \- \f4Xaoptcmf\fP ʬϡΥ֤Ǥ֤ȡ ȤäƤΥ̵ˤǤ뤫ɤꤷޤ \f2X\fP). ְ֤¤ʤ \f4a\fP ꤷޤʳʸȤ߹碌ǽǤ \f4X\fP (̵) .br -\f4a\fP (すべての位置) +\f4a\fP (٤) .br -\f4o\fP (概要) +\f4o\fP () .br -\f4p\fP (パッケージ) +\f4p\fP (ѥå) .br -\f4t\fP (型すなわちクラスおよびインタフェース) +\f4t\fP (Ĥޤꥯ饹ȥ󥿥ե) .br -\f4c\fP (コンストラクタ) +\f4c\fP (󥹥ȥ饯) .br -\f4m\fP (メソッド) +\f4m\fP (᥽å) .br -\f4f\fP (フィールド) -.LP -\f3シングルタグの例\fP \- ソースコード内の任意の位置で使用で気るタグのタグオプションの例を示します。 +\f4f\fP (ե) +.LP +\f3󥰥륿\fP \- Ǥդΰ֤ǻѤǤ륿Υץ򼨤ޤ .nf \f3 .fl @@ -5107,7 +3604,7 @@ .fl \fP .fi -@todo をコンストラクタ、メソッド、フィールドのみで使用する場合は、以下のオプションを使用します。 +@todo 򥳥󥹥ȥ饯᥽åɡեɤΤߤǻѤϡʲΥץѤޤ .nf \f3 .fl @@ -5115,7 +3612,7 @@ .fl \fP .fi -上の例の最後のコロン (\f2:\fP) は、パラメータ区切り子ですが、見出しテキストの一部になっています (以下の例を参照)。次の例のように、\f2@todo\fP タグを含むソースコードでは、いずれかのタグオプションを使用します。 +κǸΥ (\f2:\fP) ϡѥ᡼ڤҤǤФƥȤΰˤʤäƤޤ (ʲ򻲾)Τ褦ˡ \f2@todo\fP ޤॽɤǤϡ줫ΥץѤޤ .nf \f3 .fl @@ -5123,7 +3620,7 @@ .fl \fP .fi -\f3タグ名にコロンを使用する\fP \- コロン (:) をバックスラッシュでエスケープすると、コロンをタグ名に使用することができます。このドキュメンテーションコメントの中では、次のように使用します。 +\f3̾˥Ѥ\fP \- (:) Хååǥפȡ򥿥̾˻Ѥ뤳ȤǤޤΥɥơ󥳥ȤǤϡΤ褦˻Ѥޤ .nf \f3 .fl @@ -5135,7 +3632,7 @@ .fl \fP .fi -でこのタグオプションを使用すると、 +ǤΥץѤȡ .nf \f3 .fl @@ -5143,9 +3640,9 @@ .fl \fP .fi -\f3タグ名のスペルチェック (タグの無効化)\fP \- ソースコード内に配置した一部のカスタムタグの出力を抑制したい場合があります。この場合も、ソースコード内にすべてのタグを配置し、出力を抑制しないタグを有効にし、出力を抑制するタグを無効にします。タグを無効にするには、\f2X\fP を指定します。指定しないと、そのタグは有効になります。 これにより、Javadoc ツールは、検出したタグが入力ミスなどによる未知のタグであるかどうかを特定できます。未知のタグを検出した場合、Javadoc ツールは警告を出力します。 -.LP -すでに配置されている値に \f2X\fP を追加できます。 こうしておけば、\f2X\fP を削除するだけでタグを有効にすることができます。たとえば、@todo タグの出力を抑制したい場合、次のように指定します。 +\f3̾Υڥå (̵)\fP \- ֤ΥॿνϤ礬ޤξ⡢ˤ٤ƤΥ֤ϤʤͭˤϤ륿̵ˤޤ \f2X\fP ¸ߤϥ̵ˤʤꡢ¸ߤʤϥͭˤʤޤˤꡢJavadoc ġϡФϥߥʤɤˤ̤ΤΥǤ뤫ɤǤޤ̤ΤΥ򸡽Ф硢Javadoc ġϷٹϤޤ +.LP +Ǥ֤Ƥͤ \f2X\fP ɲäǤޤƤС \f2X ǥͭˤ뤳ȤǤޤ\fPȤС@todo νϤ硢Τ褦˻ꤷޤ .nf \f3 .fl @@ -5153,7 +3650,7 @@ .fl \fP .fi -さらに単純な指定方法もあります。 +ñʻˡ⤢ޤ .nf \f3 .fl @@ -5162,13 +3659,13 @@ \fP .fi .LP -構文 \f2\-tag todo:X\fP は、\f2@todo\fP が taglet で定義されている場合も有効です。 -.LP -\f3タグの順序\fP \- \f2\-tag\fP (および \f2\-taglet\fP) オプションの順序によって、その出力順序が決定します。カスタムタグと標準タグを組み合わせて使用することもできます。標準タグのタグオプションは、順序を決定するためだけのプレースホルダです。これらは標準タグ名のみを使用します。(標準タグの小見出しは変更できません。)これについては、以下の例で説明します。 -.LP -\f2\-tag\fP がない場合、\f2\-taglet\fP の位置によってその順序が決定します。タグが両方とも存在する場合、コマンド行の最後にあるほうがその順序を決定します。これは、タグやタグレットがコマンド行に指定された順番に処理されるためです。たとえば、\f2\-taglet\fP と \f2\-tag\fP の両方が todo という名前を持っている場合、コマンド行の最後にあるほうが順序を決定します。 -.LP -\f3タグの完全セットの例\fP \- この例では、出力の「Parameters」と「Throws」の間に「To Do」を挿入します。X を使用して、@example が、ソースコード内の今回の実行では出力されないタグであることを指定します。@argfile を使用する場合は、次のように、引数ファイル内の別々の行にタグを配置できます。 行の継続を示す文字は不要です。 +ʸ \f2\-tag todo:X\fP ϡ \f2@todo\fP åȤƤƤͭǤ +.LP +\f3ν\fP \- \f2\-tag\fP ( \f2\-taglet\fP) ץνˤäơνϽ礬ޤޤॿɸॿȤ߹碌ƻѤ뤳ȤǤޤɸॿΥץϡꤹ뤿Υץ졼ۥǤɸॿ̾ΤߤѤޤ(ɸॿξФѹǤޤ)ˤĤƤϡʲޤ +.LP +\f2\-tag\fP ¸ߤʤϡ \f2\-taglet\fP ΰ֤ˤäƤνޤޤξȤ¸ߤ硢ޥɹԤκǸˤۤνꤷޤϡ䥿åȤޥɹԤ˻ꤵ줿֤˽뤿ǤȤС \f2\-taglet\fP \f2\-tag\fP ξ todo Ȥ̾äƤ硢ޥɹԤκǸˤۤꤷޤ +.LP +\f3δåȤ\fP \- ǤϡϤΡParametersפȡThrowsפδ֤ˡTo DoפޤX Ѥơ@example κμ¹ԤǤϽϤʤǤ뤳Ȥꤷޤ@argfile ѤϡΤ褦ˡե̡ιԤ˥֤ǤޤԤη³򼨤ʸפǤ .nf \f3 .fl @@ -5187,37 +3684,37 @@ \fP .fi .LP -javadoc がドキュメンテーションコメントを解析する際に検出されたタグのうち、標準タグでも \f2\-tag\fP や \f2\-taglet\fP で渡されるタグでもないものは、未知のタグの見なされます。 この場合、警告がスローされます。 -.LP -標準タグは、最初、デフォルトの順序でリスト内に内部的に格納されます。\f2\-tag\fP オプションを使用すると、このリストに追加されるタグ、すなわち標準タグの位置がデフォルトの位置から移動します。つまり、標準タグに \f2\-tag\fP オプションを付けなければ、これらはデフォルトの位置に配置されたままになります。 -.LP -\f3競合の回避\fP \- 固有の名前空間を分割するには、パッケージに使用されている \f2com.mycompany.todo\fP のように、ドット (.) 区切りの命名規則を使用します。Sun は、今後も名前にドットを含まない標準タグを作成します。ユーザーが作成したタグは、Sun が提供する同じ名前のタグの動作をオーバーライドします。つまり、ユーザーが \f2@todo\fP という名前のタグまたはタグレットを作成している場合、Sun があとから同じ名前の標準タグを作成しても、そのタグまたはタグレットは元の動作を保持します。 -.LP -\f3注釈 vs. Javadoc タグ\fP \- 一般に、追加する必要のあるマークアップが、ドキュメンテーションに影響を与えたりドキュメンテーションを生成したりするためのものである場合、そのマークアップは javadoc タグにすべきです。 それ以外の場合は注釈にすべきです。 +javadoc ɥơ󥳥ȤϤݤ˸줿ΤɸॿǤ⡢ \f2\-tag\fP \f2\-taglet\fP Ϥ줿ǤʤΤϤ٤̤ΤΥȤߤʤ졢ٹ𤬥ޤ +.LP +ɸॿϡǽ顢ǥեȤνǥꥹŪ˳Ǽޤ \f2\-tag\fP ץѤȡΥꥹȤɲä륿ʤɸॿΰ֤ǥեȤΰ֤ưޤĤޤꡢɸॿ \f2\-tag\fP ץդʤСϥǥեȤΰ֤֤줿ޤޤˤʤޤ +.LP +\f3β\fP \- ֤ͭ̾٤ʬˤϡѥå˻ѤƤ \f2com.mycompany.todo Ȥ̾Τ褦ˡɥå (.) ڤ국Ȥ̾Ȥޤ\fPOracle ϡ̾˥ɥåȤޤޤʤɸॿޤ桼ϡOracle 󶡤Ʊ̾Υư򥪡С饤ɤޤĤޤꡢ \f2@todo\fP Ȥ̾ΥޤϥåȤ桼硢Oracle θƱ̾ɸॿȤƤ⡢ưϾ˥桼ưƱˤʤޤ +.LP +\f3 vs. Javadoc \fP \- ̤ˡɲäɬפΤޡåפɥơ˱ƶͿɥơꤹ뤿ΤΤǤ硢Υޡåפ javadoc ˤ٤Ǥʳξˤ٤Ǥ .na -\f2「Comparing Annotations and Javadoc Tags」\fP @ +\f2Comparing Annotations and Javadoc Tags\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#annotationsを参照してください。 -.LP -\-taglet オプションを使用して、より複雑なブロックタグやカスタムインラインタグを 作成することができます。 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#annotations򻲾ȤƤ +.LP +\-taglet ץѤơʣʥ֥å䥫।饤󥿥 뤳ȤǤޤ .LP .TP 3 \-taglet\ \ class -そのタグのドキュメントの生成に使うドックレットを起動するためのクラスファイルを指定します。クラスの完全指定名を指定してください。このタグレットは、カスタムタグのテキスト引数の数も定義します。タグレットは、これらの引数を受け付け、処理し、出力を生成します。外部ドキュメントとサンプルタグレットについては、以下を参照してください。 +ΥΥɥȤ˻ȤɥååȤư뤿Υ饹եꤷޤ饹δ̾ꤷƤΥåȤϡॿΥƥȰοޤåȤϡΰդϤޤɥȤȥץ륿åȤˤĤƤϡʲ򻲾ȤƤ .RS 3 .TP 2 o .na -\f2「タグレットの概要」\fP @ +\f2֥åȤγס\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javadoc/taglet/overview.html .RE .LP -タグレットは、標準タグまたはインラインタグで便利です。タグレットは任意の数の引数をとることができます。 また、テキストを太字にする、箇条書きを作成する、テキストをファイルに書き出す、その他のプロセスを開始するなどのカスタム動作を実装できます。 -.LP -タグレットで指定できるのは、タグの配置場所と配置形式のみです。その他のすべての決定は、ドックレットによって行われます。タグレットを使用しても、包含クラスのリストからクラス名を削除するなどの処理は実行できません。ただし、タグのテキストをファイルに出力したり、別のプロセスをトリガーするなどの副作用は得られます。 -.LP -タグレットのパスを指定するには、\f2\-tagletpath\fP オプションを使用します。以下は、生成されるページの「Parameter」と「Throws」の間に「To Do」タグレットを挿入する例です。 +åȤϡ֥åޤϥ饤󥿥ǤåȤǤդοΰȤ뤳ȤǤޤޤƥȤˤ롢վ񤭤롢ƥȤե˽񤭽Ф¾Υץ򳫻ϤʤɤΥưǤޤ +.LP +åȤǻǤΤϡ־ַΤߤǤ¾Τ٤ƤηϡɥååȤˤäƹԤޤåȤѤƤ⡢ޥ饹ΥꥹȤ饯饹̾ʤɤνϼ¹ԤǤޤ󡣤ΥƥȤե˽Ϥꡢ̤ΥץȥꥬʤɤѤޤ +.LP +åȤΥѥꤹˤϡ\f2\-tagletpath\fP ץѤޤʲϡڡΡParameterפȡThrowsפδ֤ˡTo DoץåȤǤ .nf \f3 .fl @@ -5238,25 +3735,25 @@ \fP .fi .LP -\f2\-tag\fP オプションの代わりに \f2\-taglet\fP オプションを使用することもできますが、読みやすさを考慮するなら、\f2\-tag\fP オプションを使用したほうがよいでしょう。 +ޤ \f2\-taglet\fP ץ \f2\-tag\fP ץ˻Ѥ뤳ȤǤޤȲ㲼ǽޤ .LP .TP 3 \-tagletpath\ \ tagletpathlist -taglet クラスファイル (.class) の検索パスを指定します。\f2tagletpathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパスの以下すべてのサブディレクトリを検索します。 +taglet 饹ե (.class) θѥꤷޤ\f2tagletpathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤJavadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤ .LP .TP 3 \-docfilessubdirs\ -\f2doc\-files\fP ディレクトリの深いコピーを有効にします。つまり、コピー先には、サブディレクトリとすべてのコンテンツがコピーされます。たとえば、\f2doc\-files/example/images\fP ディレクトリとその中のファイルがコピーされます。ここでも、サブディレクトリを除外する指定が可能です。 +\f2doc\-files\fPץǥ쥯ȥοԡͭˤޤĤޤꡢԡˤϡ֥ǥ쥯ȥȤ٤ƤΥƥĤԡޤȤСǥ쥯ȥ \f2doc\-files/example/images\fP ȤΤ٤ƤƤԡޤǤ⡢֥ǥ쥯ȥ꤬ǽǤ .LP .TP 3 \-excludedocfilessubdir\ \ name1:name2... -所定の名前の \f2doc\-files\fP サブディレクトリを除外します。これにより、SCCS とその他のソースコード制御サブディレクトリのコピーを防ぎます。 +\f2doc\-files\fPפΡꤵ줿̾Υ֥ǥ쥯ȥ򤹤٤ƽޤˤꡢSCCS Ȥ¾Υ極֥ǥ쥯ȥΥԡɤޤ .LP .TP 3 \-noqualifier\ \ all\ | \ packagename1:packagename2:... -出力されるクラス名の先頭のパッケージ名 (パッケージ修飾子) を省略します。\f2\-noqualifier\fP の引数として \f2all\fP を指定した場合、すべてのパッケージ修飾子がすべて省略されます。 削除する複数のパッケージ名をコロンで区切って、ワイルドカードとともに指定することもできます。クラスまたはインタフェース名が表示される位置からパッケージ名が削除されます。 -.LP -次の例では、すべてのパッケージ修飾子を省略します。 +Ϥ륯饹̾ƬΥѥå̾ (ѥå) άޤ \f2\-noqualifier\fP ΰϡ\f2all\fP(٤ƤΥѥåҤά)ҤȤƺ٤ѥåΥڤꥹ (磻ɥɤ)Τ줫Ȥʤޤ饹ޤϥ󥿥ե̾ɽ֤ѥå̾ޤ +.LP +Ǥϡ٤ƤΥѥåҤάޤ .nf \f3 .fl @@ -5264,7 +3761,7 @@ .fl \fP .fi -次の例では、パッケージ修飾子 java.lang および java.io を省略します。 +Ǥϡѥå java.lang java.io άޤ .nf \f3 .fl @@ -5272,7 +3769,7 @@ .fl \fP .fi -次の例では、java で始まるパッケージ修飾子と com.sun というサブパッケージ (javax ではない) を省略します。 +Ǥϡjava ǻϤޤѥåҤ com.sun Ȥ֥ѥå (javax ǤϤʤ) άޤ .nf \f3 .fl @@ -5280,63 +3777,54 @@ .fl \fP .fi -パッケージ修飾子が上記の動作に従って表示される場合、名前は適切に短くされます。 詳細は「名前の表示方法」を参照してください。この規則は、\f2\-noqualifier\fP を使用したかどうかにかかわらず有効です。 +ѥåҤ嵭ư˽äɽ硢̾Ŭڤûޤܺ٤ϡ̾ɽˡפ򻲾ȤƤε§ϡ \f2\-noqualifier\fP Ѥ뤫ɤˤ餺ͭǤ .LP .TP 3 \-notimestamp\ -タイムスタンプが抑制されます。 各ページ先頭近くにある、生成された HTML 内の HTML コメントでタイムスタンプが隠されます。Javadoc を 2 つのソースベースで実行し、それらに対して diff を実行するときにこのオプションを使用すると、タイムスタンプによって diff が発生しなくなるので便利です (このオプションを使用しないと、各ページで diff になります)。タイムスタンプには Javadoc のバージョン番号が含まれており、次のようになります。 +ॹפޤƥڡƬ᤯ˤ롢줿 HTML HTML ȤǥॹפޤJavadoc 2 ĤΥ١Ǽ¹ԤФ diff ¹ԤȤˤΥץѤȡॹפˤä diff ȯʤʤΤǤ (ΥץѤʤȡƥڡ diff ˤʤޤ)ॹפˤ Javadoc ΥСֹ椬ޤޤƤꡢΤ褦ˤʤޤ .nf \f3 .fl - <!\-\- Generated by javadoc (build 1.5.0\-internal) on Tue Jun 22 09:57:24 PDT 2004 \-\-> + <!\-\- Generated by javadoc (build 1.5.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\-> .fl \fP .fi .LP .TP 3 \-nocomment\ -主説明およびすべてのタグを含むコメント本文全体を抑制し、宣言だけを生成します。このオプションにより、元は異なる目的のためだったソースファイルを再利用し、新しいプロジェクトの早い段階でスケルトン HTML ドキュメントを作成できるようになりました。 +Ӥ٤ƤΥޤॳʸΤޤΥץˤꡢϰۤʤŪΤäեѤץȤᤤʳǥȥ HTML ɥȤǤ褦ˤʤޤ +.LP +.TP 3 +\-sourcetab tabLength +dzƥ֤οꤷޤ .RE -.SH "コマンド行引数ファイル" -.LP -.LP -\f2javadoc\fP のコマンド行を短くしたり簡潔にしたりするために、\f2javadoc\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) が入った 1 つ以上のファイルを指定することができます。このことを利用すれば、どのオペレーティングシステム上でも、任意の長さの javadoc コマンドを作成できます。 -.LP -.LP -引数ファイルには、javac のオプションとソースファイル名を自由に組み合わせて記述できます。ファイル内の各引数は、スペースまたは改行で区切ります。ファイル名に空白が含まれている場合は、そのファイル名全体を二重引用符で囲みます。 -.LP -.LP -引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。引数ファイルの位置から見た相対パスではありません。引数ファイル内のファイル名リストでは、ワイルドカード (*) は使用できません。たとえば、\f2*.java\fP とは指定できません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 -.LP -.LP -javadoc を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。javadoc は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 -.LP +.SH "ޥɹ԰ե" +.LP +javadoc ΥޥɹԤûʷˤꤹ뤿ˡ \f2javadoc\fP ޥɤФ ( \f2\-J\fP ץ) ä 1 İʾΥեꤹ뤳ȤǤޤΤȤѤСɤΥڥ졼ƥ󥰥ƥǤ⡢ǤդĹ javadoc ޥɤǤޤ +.LP +եˤϡjavac Υץȥե̾ͳȤ߹碌ƵҤǤޤեγưϡڡޤϲԤǶڤޤե̾˶򤬴ޤޤƤϡΥե̾ΤŰǰϤߤޤ +.LP +եΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣰եΥե̾ꥹȤǤϡ磻ɥ (*) ϻѤǤޤ󡣤ȤС \f2*.java\fP ȤϻǤޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ \f2\-J\fP ץ⥵ݡȤƤޤ ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ +.LP +javadoc ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤjavadoc ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ .SS -引数ファイルを 1 つ指定する例 -.LP -.LP -\f2argfile\fP という名前の引数ファイルにすべての Javadoc 引数を格納し、次のように使用することができます。 -.LP +ե 1 Ļꤹ +.LP +Τ褦ˡ\f2argfile\fPפȤ̾ñΰեˡJavadoc Τ٤ƤΰǼޤ .nf \f3 .fl % \fP\f3javadoc @argfile\fP .fl .fi - -.LP -.LP -この引数ファイルには、次の例で示されている 2 つのファイルの内容を両方とも入れることができます。 -.LP +.LP +ΰեˤϡǼƤ 2 ĤΥեƤξȤ뤳ȤǤޤ .SS -引数ファイルを 2 つ指定する例 -.LP -.LP -Javadoc オプション用に 1 つ、ソースファイル名用に 1 つというように、2 つの引数ファイルを作成し、次のようにして使用することができます。なお、このあとのリストでは、行の継続文字を使用していません。 -.LP -.LP -以下の内容を含む \f2options\fP という名前のファイルを作成します。 -.LP +ե 2 Ļꤹ +.LP +2 ĤΰեǤޤ1 Ĥ Javadoc ץѡ⤦ 1 Ĥϥѥå̾ޤϥե̾ѤǤʤΥꥹȤǤϹԷ³ʸѤƤޤ +.LP +Ƥޤࡢ\f2options\fPפȤ̾Υեޤ .nf \f3 .fl @@ -5346,27 +3834,24 @@ .fl \-splitindex .fl - \-windowtitle 'Java 2 Platform v1.3 API Specification' -.fl - \-doctitle 'Java(TM) 2 Platform 5.0 API Specification' -.fl - \-header '<b>Java 2 Platform </b><br><font size="\-1">5.0</font>' -.fl - \-bottom 'Copyright 1993\-2000 Sun Microsystems, Inc. All Rights Reserved.' + \-windowtitle 'Java SE 7 API Specification' +.fl + \-doctitle 'Java SE 7 API Specification' +.fl + \-header '<b>Java(TM) SE 7</b>' +.fl + \-bottom 'Copyright © 1993\-2011 Oracle and/or its affiliates. All rights reserved.' .fl \-group "Core Packages" "java.*" .fl - \-overview /java/pubs/ws/1.5/src/share/classes/overview\-core.html -.fl - \-sourcepath /java/pubs/ws/1.5/src/share/classes + \-overview /java/pubs/ws/1.7.0/src/share/classes/overview\-core.html +.fl + \-sourcepath /java/pubs/ws/1.7.0/src/share/classes .fl \fP .fi - -.LP -.LP -以下の内容を含む \f2packages\fP という名前のファイルを作成します。 -.LP +.LP +Ƥޤࡢ\f2packages\fPפȤ̾Υեޤ .nf \f3 .fl @@ -5378,115 +3863,89 @@ .fl \fP .fi - -.LP -.LP -そのあと、次のコマンドを使用して javadoc を実行します。 -.LP +.LP +ΤȡΥޥɤѤ javadoc ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc @options @packages\fP .fl .fi - -.LP .SS -パス付きの引数ファイルの例 -.LP -.LP -引数ファイルには、パスを指定できます。 ただし、そのファイル内に指定されたファイル名は、現在の作業ディレクトリから見た相対パスになります。 つまり、下の例の場合は、\f2path1\fP や \f2path2\fP から見た相対パスではありません。 -.LP +ѥդΰե +.LP +եˤϡѥǤޤΥե˻ꤵ줿ե̾ϡߤκȥǥ쥯ȥ꤫鸫ХѥˤʤޤĤޤꡢξϡ \f2path1\fP \f2path2\fP 鸫ХѥǤϤޤ .nf \f3 .fl % \fP\f3javadoc @path1/options @path2/packages\fP .fl .fi - -.LP .SS -オプションの引数の例 -.LP -.LP -次に、Javadoc オプションに対する引数だけを引数ファイルに格納する例を示します。ここでは、\f2\-bottom\fP を例に取り上げます。 そのオプションには、かなり長い引数を指定することがあるからです。まず、このオプションのテキスト引数になる次のような内容を含む、\f2bottom\fP という名前のファイルを作成します。 -.LP +ץΰ +.LP +ˡJavadoc ץФե˳Ǽ򼨤ޤǤ \f2\-bottom\fP ץѤޤȤΤ⡢Ĺʤǽ뤫ǤΤ褦ʥƥȰޤࡢ\f2bottom\fPפȤ̾ΥեǤޤ .nf \f3 .fl -'<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a -.fl -bug or feature</a><br><br>Java is a trademark or registered trademark of -.fl -Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993\-2000 Sun -.fl -Microsystems, Inc. 901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. -.fl -All Rights Reserved.</font>' +<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font> .fl \fP .fi - -.LP -.LP -そのあと、次のようにして Javadoc ツールを実行します。 -.LP +.LP +ΤȡΤ褦ˤ Javadoc ġ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc \-bottom @bottom @packages\fP .fl .fi - -.LP -.LP -また、引数ファイルの先頭に \f2\-bottom\fP オプションを組み込んでおけば、次のようにして実行できます。 -.LP +.LP +뤤ϡեƬ \f2\-bottom\fP ץȤ߹ȡΤ褦˼¹ԤƤ⤫ޤޤ .nf \f3 .fl % \fP\f3javadoc @bottom @packages\fP .fl .fi -.SH "名前" -実行 -.SH "Javadoc の実行" -.LP -.LP -\f3バージョン番号\fP \- javadoc のバージョン番号を判別するには、\f3javadoc \-J\-version\fP を使用します。出力ストリームには標準ドックレットのバージョン番号が含まれます。\f2\-quiet\fP で無効にできます。 -.LP -.LP -\f3公開プログラムインタフェース\fP \- Java 言語で記述されたプログラムから Javadoc ツールを起動するとき使用します。このインタフェースは \f2com.sun.tools.javadoc.Main\fP にあります (javadoc は再入可能)。詳細は、 -.na -\f2「標準ドックレット」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/standard\-doclet.html#runningprogrammaticallyを参照してください。 -.LP -.LP -\f3ドックレットの実行\fP \- 下記の説明は、標準 HTML ドックレットを呼び出すためのものです。カスタムドックレットを呼び出すには、\-doclet および \-docletpath オプションを使用します。特定のドックレットを実行した完全な例については、 +.SH "̾" +¹ +.SH "Javadoc μ¹" +.LP +\f3Сֹ\fP \- javadoc ΥСֹȽ̤ˤϡ\f3javadoc \-J\-version\fP Ѥޤϥȥ꡼ˤɸɥååȤΥСֹ椬ޤޤޤνϤ̵ˤˤϡ \f2\-quiet\fP Ѥޤ +.LP +\f3ץ।󥿥ե\fP \- Java ǵҤ줿ץफ Javadoc ġưȤѤޤΥ󥿥ե \f2com.sun.tools.javadoc.Main ˤޤ\fP (javadoc Ϻǽ)ܺ٤ϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2ɸɥååȡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/standard\-doclet.html#runningprogrammatically򻲾ȤƤ +.LP +\f3ɥååȤμ¹\fP \- ϡɸ HTML ɥååȤƤӽФΤΤǤɥååȤƤӽФˤϡ\-doclet \-docletpath ץѤޤΥɥååȤ¹ԤˤĤƤϡ +.na +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 -.LP -.SH "簡単な例" -.LP -.LP -javadoc は、パッケージ全体に対して実行することも、個々のソースファイルに対して実行することもできます。各パッケージ名は、それぞれのパッケージ名に対応するディレクトリ名を持ちます。次の例では、ソースファイルは \f2/home/src/java/awt/*.java\fP にあります。生成先ディレクトリは \f2/home/html\fP です。 -.LP +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ +.SH "ñ" +.LP +javadoc ϡѥåΤФƼ¹Ԥ뤳Ȥ⡢ġΥեФƼ¹Ԥ뤳ȤǤޤƥѥå̾ϡ줾Υѥå̾бǥ쥯ȥ̾ޤǤϡե \f2/home/src/java/awt/*.java ˤޤ\fPǥ쥯ȥ \f2/home/html Ǥ\fP .SS -1 つ以上のパッケージのドキュメント化 -.LP -.LP -パッケージをドキュメント化するには、そのパッケージのソースファイル (\f2*.java\fP) が、パッケージと同じ名前を持つディレクトリ内に存在していなければなりません。パッケージ名が複数の識別子で構成されている (\f2java.awt.color\fP のように、各識別子はドットで区切られている) 場合は、後続の各識別子が下位のサブディレクトリに対応していなければなりません (\f2java/awt/color\fP など)。1 つのパッケージのための複数のソースファイルを、異なる場所にある 2 つのディレクトリツリーに分けて格納することも可能です (\f2src1/java/awt/color\fP と \f2src2/java/awt/color\fP など)。 ただし、その場合は、\f2\-sourcepath\fP によって、その両方の場所を指定しなければなりません。 -.LP -.LP -javadoc を実行するには、\f2cd\fP コマンドを使ってディレクトリを変更するか、または \f2\-sourcepath\fP オプションを使用します。以下の例では、両方の方法について説明します。 -.LP +1 İʾΥѥåΥɥȲ +.LP +ѥåɥȲˤϡΥѥåΥե (\f2*.java\fP) 򡢤ΥѥåƱ̾Υǥ쥯ȥ˳Ǽɬפޤѥå̾ ( \f2java.awt.color\fP Τ褦˥ɥåȤǶڤ줿) Ĥμ̻Ҥ鹽Ƥ硢¦μ̻Ҥ˿ʤिӤˡμ̻Ҥ꿼֥ǥ쥯ȥбƤɬפޤ ( \f2java/awt/color\fP ʤ) ñѥåΥե 2 롼פʬۤʤˤ뤽Τ褦 2 ĤΥǥ쥯ȥĥ꡼ˤ줾ǼƤ⤫ޤޤ󡣤ξΥǥ쥯ȥؤΥѥ \f2\-sourcepath\fP ꤹɬפޤ: \f2src1/java/awt/color\fP \f2src2/java/awt/color\fP +.LP +javadoc ¹Ԥˤϡ \f2cd\fP Ѥƥǥ쥯ȥѹ뤫 \f2\-sourcepath\fP ץѤޤʲǤϡξˡˤĤޤ .RS 3 .TP 2 o -\f3ケース 1 \- 1 つ以上のパッケージからの起動を再帰的に実行\fP \- この例では javadoc が任意のディレクトリから実行できるように、\-sourcepath を使用し、再帰的処理のために \-subpackages (1.4 の新オプション) を使用します。これは、\f2java\fP のサブパッケージ (\f2java.net\fP および \f2java.lang\fP をルートとするパッケージを除く) を処理します。ただし、\f2java.lang\fP のサブパッケージである \f2java.lang.ref\fP は除外されます。 +\f3 1 \- 1 İʾΥѥåεưƵŪ˼¹\fP \- Ǥ javadoc ǤդΥǥ쥯ȥ꤫¹ԤǤ褦ˡ\-sourcepath ѤƵŪΤ \-subpackages (1.4 οץ) Ѥޤϡ \f2java\fP ǥ쥯ȥΥ֥ѥå򤿤ɤޤκݤˡ \f2java.net\fP \f2java.lang\fP 롼Ȥ˻ĥѥåϽޤΤȤ \f2java.lang Υ֥ѥå\fPǤ java.lang.ref \f2ޤ\fP .nf \f3 .fl @@ -5494,10 +3953,10 @@ .fl .fi .LP -その他のパッケージツリーを巡回するには、\f2java:javax:org.xml.sax\fP のように、\f2\-subpackages\fP 引数にその名前を追加します。 +ۤΥѥåĥ꡼Ⲽˤɤˤϡ \f2java:javax:org.xml.sax Τ褦ˡ\fP Υѥå̾ \-subpackages \f2ΰɲäޤ\fP .TP 2 o -\f3ケース 2 \- ルートソースディレクトリに移ってから明示的なパッケージに対して実行\fP \- 完全指定のパッケージ名の親ディレクトリに移ります。次に、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。 +\f3 2 \- 롼ȥǥ쥯ȥ˰ܤäƤŪʥѥåФƼ¹\fP \- Υѥå̾οƥǥ쥯ȥ˰ܤޤˡɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5508,7 +3967,7 @@ .fi .TP 2 o -\f3ケース 3 \- 任意のディレクトリから実行。 ソースファイルは 1 つのディレクトリツリー内にある\fP \- このケースでは、現在のディレクトリがどこであってもかまいません。最上位パッケージの親ディレクトリを \f2\-sourcepath\fP に指定し、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。 +\f3 3 \- ǤդΥǥ쥯ȥ꤫¹ԡե 1 ĤΥǥ쥯ȥĥ꡼ˤ\fP \- ΥǤϡߤΥǥ쥯ȥ꤬ɤǤäƤ⤫ޤޤ󡣺Ǿ̥ѥåοƥǥ쥯ȥ \f2\-sourcepath\fP ˻ꤷɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5517,7 +3976,7 @@ .fi .TP 2 o -\f3ケース 4 \- 任意のディレクトリから実行。 ソースファイルは複数のディレクトリツリー内にある\fP \- これはケース 3 と似ていますが、パッケージが複数のディレクトリツリーに存在します。それぞれのツリーのルートへのパスを \f2\-sourcepath\fP に指定し (コロンで区切る)、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。1 つのパッケージのすべてのソースファイルが、1 つのルートディレクトリの下に存在しなければならない、ということはありません。 ソースパスとして指定された場所のどこかで見つかれば十分です。 +\f3 4 \- ǤդΥǥ쥯ȥ꤫¹ԡեʣΥǥ쥯ȥĥ꡼ˤ\fP \- ϥ 3 ȻƤޤѥåʣΥǥ쥯ȥĥ꡼¸ߤޤ줾Υĥ꡼Υ롼ȤؤΥѥ \f2\-sourcepath\fP ˻ꤷ (Ƕڤ)ɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ1 ĤΥѥåΤ٤ƤΥե뤬1 ĤΥ롼ȥǥ쥯ȥβ¸ߤʤФʤʤȤȤϤޤ󡣥ѥȤƻꤵ줿ΤɤǸĤнʬǤ .nf \f3 .fl @@ -5525,21 +3984,16 @@ .fl .fi .RE - -.LP -.LP -結果: 上記のどのケースでも、\f2java.awt\fP と \f2java.awt.event\fP パッケージ内の public および protected クラスとインタフェースについて、HTML 形式のドキュメントが生成され、指定された生成先ディレクトリ (\f2/home/html\fP) に HTML ファイルが保存されます。2 つ以上のパッケージが生成されているので、ドキュメントは、パッケージのリスト、クラスのリスト、およびメインのクラスページという 3 つのフレームを持つことになります。 -.LP +.LP +: ٤ƤΥǥѥå \f2java.awt\fP \f2java.awt.event\fP public protected 饹ȥ󥿥եˤĤơHTML ΥɥȤ졢ꤵ줿ǥ쥯ȥ (\f2/home/html\fP) HTML ե뤬¸ޤ2 İʾΥѥåƤΤǡɥȤϡѥåΥꥹȡ饹ΥꥹȡӥᥤΥ饹ڡȤ 3 ĤΥե졼ĤȤˤʤޤ .SS -1 つ以上のクラスのドキュメント化 -.LP -.LP -また、1 つ以上のソースファイル (\f2.java\fP) を渡して、Javadoc ツールを実行することもできます。javadoc は、次の 2 つのどちらかの方法で実行できます。 1 つは、\f2cd\fP コマンドでディレクトリを変更する方法、もう 1 つは \f2.java\fP ファイルへのパスを完全指定する方法です。相対パスは、現在のディレクトリを起点とします。ソースファイル名を渡すときは、\f2\-sourcepath\fP オプションは無視されます。アスタリスク (*) のようなコマンド行ワイルドカードを使用すると、クラスのグループを指定できます。 -.LP +1 İʾΥ饹ΥɥȲ +.LP +ޤ1 İʾΥե (\f2.java\fP) ϤơJavadoc ġ¹Ԥ뤳ȤǤޤjavadoc ϡ 2 ĤˡΤ줫Ǽ¹ԤǤޤ1 Ĥ \f2cd\fP Ѥƥǥ쥯ȥѹˡ⤦ 1 Ĥ \f2.java\fP եؤΥѥ˻ꤹˡǤХѥϡߤΥǥ쥯ȥȤޤե̾ϤȤϡ \f2\-sourcepath\fP ץ̵뤵ޤꥹ (*) Τ褦ʥޥɹԥ磻ɥɤѤȡ饹Υ롼פǤޤ .RS 3 .TP 2 o -\f3ケース 1 \- ソースディレクトリに移る\fP \- \f2.java\fP ファイルのあるディレクトリに移ります。次に、ドキュメント化する 1 つ以上のソースファイルの名前を指定して javadoc を実行します。 +\f3 1 \- ǥ쥯ȥ˰ܤ\fP \- \f2.java\fP եΤǥ쥯ȥ˰ܤޤˡɥȲ 1 İʾΥե̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5548,10 +4002,10 @@ % \f3javadoc \-d /home/html Button.java Canvas.java Graphics*.java\fP .fl .fi -この例では、クラス \f2Button\fP と \f2Canvas\fP、および名前が \f2Graphics\fP で始まるクラスについて、HTML 形式のドキュメントが生成されます。パッケージ名ではなくソースファイルが javadoc に引数として渡されているので、ドキュメントは、クラスのリストとメインページという 2 つのフレームを持つことになります。 +Ǥϡ饹 \f2Button\fP \f2Canvas\fP ̾ \f2Graphics ǻϤޤ륯饹ˤĤơHTML ΥɥȤޤ\fPѥå̾ǤϤʤե뤬 javadoc ˰ȤϤƤΤǡɥȤϡ饹ΥꥹȤȥᥤڡȤ 2 ĤΥե졼ĤȤˤʤޤ .TP 2 o -\f3ケース 2 \- パッケージのルートディレクトリに移る\fP \- これは、同じルート内にある複数のサブパッケージの個々のソースファイルをドキュメント化する場合に便利です。パッケージのルートディレクトリに移り、各ソースファイルを、ルートからのパスとともに指定します。 +\f3 2 \- ѥåΥ롼ȥǥ쥯ȥ˰ܤ\fP \- ϡƱ롼ˤʣΥ֥ѥåθġΥեɥȲǤѥåΥ롼ȥǥ쥯ȥ˰ܤꡢƥե򡢥롼ȤΥѥȤȤ˻ꤷޤ .nf \f3 .fl @@ -5560,103 +4014,88 @@ % \f3javadoc \-d /home/html java/awt/Button.java java/applet/Applet.java\fP .fl .fi -この例では、\f2Button\fP クラスおよび \f2Applet\fP クラスについて、HTML 形式のドキュメントが生成されます。 +Ǥϡ饹 \f2Button\fP \f2Applet ˤĤơHTML ΥɥȤޤ\fP .TP 2 o -\f3ケース 3 \- 任意のディレクトリから\fP \- このケースでは、現在のディレクトリがどこであってもかまいません。ドキュメント化する \f2.java\fP ファイルへの絶対パス (または、現在のディレクトリからの相対パス) を指定して javadoc を実行します。 +\f3 3 \- ǤդΥǥ쥯ȥ꤫\fP \- ΥǤϡߤΥǥ쥯ȥ꤬ɤǤäƤ⤫ޤޤ󡣥ɥȲ .java եؤХѥ (ޤϥȥǥ쥯ȥ꤫Хѥ) ꤷ \f2javadoc\fP ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc \-d /home/html /home/src/java/awt/Button.java /home/src/java/awt/Graphics*.java\fP .fl .fi -この例では、クラス \f2Button\fP と、名前が \f2Graphics\fP で始まるクラスについて、HTML 形式のドキュメントが生成されます。 +Ǥϡ饹 \f2Button\fP ȡ̾ \f2Graphics ǻϤޤ륯饹ˤĤơHTML ΥɥȤޤ\fP .RE - -.LP .SS -パッケージとクラスのドキュメント化 -.LP -.LP -パッケージ全体と個々のクラスを同時に指定してドキュメント化することもできます。次に前述の 2 つの例を組み合わせた例を示します。\f2\-sourcepath\fP は、パッケージへのパスに対しては使用できますが、個々のクラスのパスに対しては使用できません。 -.LP +ѥåȥ饹ΥɥȲ +.LP +ѥåΤȸġΥ饹Ʊ˻ꤷƥɥȲ뤳ȤǤޤҤ 2 ĤȤ߹碌򼨤ޤ \f2\-sourcepath\fP ϡѥåؤΥѥФƤϻѤǤޤġΥ饹ΥѥФƤϻѤǤޤ .nf \f3 .fl % \fP\f3javadoc \-d /home/html \-sourcepath /home/src java.awt /home/src/java/applet/Applet.java\fP .fl .fi - -.LP -.LP -この例では、パッケージ \f2java.awt\fP と、クラス \f2Applet\fP について、HTML 形式のドキュメントが生成されます。Javadoc ツールは、\f2Applet\fP のパッケージ名を、\f2Applet.java\fP ソースファイル内のパッケージ宣言 (その宣言がある場合) から判別します。 -.LP -.SH "使用例" -.LP -.LP -Javadoc ツールには多くの便利なオプションがあり、その中にはほかのオプションよりも頻繁に使われるものがあります。ここで紹介するのは、Java プラットフォーム API に対して Javadoc ツールを実行するときに使用する実際のコマンドです。Java 2 Platform, Standard Edition, v1.2 に存在する、約 1500 個の public および protected クラスについてドキュメントを生成するために、180M バイトのメモリーを使用しました。 -.LP -.LP -同じ例を 2 回掲載します。 最初の例はコマンド行から実行するもので、2 番目の例は Makefile から実行するものです。オプションの引数に絶対パスを使用しているため、任意のディレクトリからこの \f2javadoc\fP コマンドを実行できます。 -.LP +.LP +Ǥϡѥå \f2java.awt\fP ȥ饹 \f2Applet ˤĤơHTML ΥɥȤޤ\fPJavadoc ġϡ \f2Applet.java ե˥ѥåС\fP ˴Ť \f2Applet Υѥå̾\fP Ƚꤷޤ +.SH "" +.LP +Javadoc ġˤ¿ʥץ󤬤ꡢˤϤۤΥץˤ˻ȤΤޤǾҲ𤹤ΤϡJava ץåȥե API Ф Javadoc ġ¹ԤȤ˻ѤºݤΥޥɤǤǤϡJava SE Platform, Standard Edition, v1.2 () 1500 Ĥ public protected 饹ΥɥȤ뤿ˡ180M ХȤΥ꡼Ѥޤ +.LP +Ʊ 2 ǺܤޤǽϥޥɹԤ¹ԤΤǡ2 ܤ Makefile ¹ԤΤǤץΰХѥѤƤ뤿ᡢƱ \f2javadoc\fP ޥɤɤΥǥ쥯ȥ꤫Ǥ¹ԤǤޤ .SS -コマンド行の例 -.LP -.LP -次のコマンド行の例は 900 文字を超えているため、DOS などのシェルには大きすぎます。この制限を回避するには、コマンド行引数ファイルを使用します。 または、シェルスクリプトを記述します。 -.LP +ޥɹԤ +.LP +ϡDOS ʤɤΰΥǤĹǽޤ¤򤹤ˤϡޥɹ԰եѤޤޤϡ륹ץȤ򵭽Ҥޤ .nf \f3 .fl -% javadoc \-sourcepath /java/jdk/src/share/classes \\ -.fl - \-overview /java/jdk/src/share/classes/overview.html \\ -.fl - \-d /java/jdk/build/api \\ -.fl - \-use \\ -.fl - \-splitIndex \\ -.fl - \-windowtitle 'Java 2 Platform 5.0 API Specification' \\ -.fl - \-doctitle 'Java(TM) 2 Platform 5.0 API Specification' \\ -.fl - \-header '<b>Java 2 Platform </b><br><font size="\-1">5.0</font>' \\ -.fl - \-bottom '<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit -.fl -a bug or feature</a><br><br>Java is a trademark or registered trademark of Sun Microsystems, -.fl -Inc. in the US and other countries.<br>Copyright 1993\-1999 Sun Microsystems, Inc. -.fl -901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. All Rights Reserved.</font>' \\ +% javadoc \-sourcepath /java/jdk/src/share/classes \\ +.fl + \-overview /java/jdk/src/share/classes/overview.html \\ +.fl + \-d /java/jdk/build/api \\ +.fl + \-use \\ +.fl + \-splitIndex \\ +.fl + \-windowtitle 'Java Platform, Standard Edition 7 API Specification' \\ +.fl + \-doctitle 'Java Platform, Standard Edition 7 API Specification' \\ +.fl + \-header '<b>Java(TM) SE 7</b>' \\ +.fl + \-bottom '<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font>' \\ .fl \-group "Core Packages" "java.*:com.sun.java.*:org.omg.*" \\ .fl - \-group "Extension Packages" "javax.*" \\ -.fl - \-J\-Xmx180m \\ + \-group "Extension Packages" "javax.*" \\ +.fl + \-J\-Xmx180m \\ .fl @packages .fl \fP .fi - -.LP -.LP -上記のコマンドで、\f2packages\fP は、処理対象のパッケージ名 (\f2java.applet java.lang\fP など) が入っているファイルの名前です。各オプションの、単一引用符で囲まれた引数の内側には、改行文字を挿入できません。たとえば、この例をコピー&ペーストする場合は、\f2\-bottom\fP オプションから改行文字を削除してください。さらに、このあとの「注」も参照してください。 -.LP +.LP +嵭Υޥɤǡ \f2packages\fP ϡоݤΥѥå̾ ( \f2java.applet java.lang\fP ʤ) äƤե̾ǤƥץΡñǰϤޤ줿¦ˤϡʸǤޤ󡣤ȤС򥳥ԡڡȤϡ \f2\-bottom\fP ץ󤫤ʸƤˡΤȤΡפ⻲ȤƤ .SS -Makefile の例 -.LP -.LP -ここでは、GNU Makefile の例を示します。Windows の Makefile の例については、 +Makefile +.LP +ǤϡGNU Makefile 򼨤ޤWindows Makefile ˤĤƤϡ .na -\f2Windows の Makefile の作成方法\fP @ +\f2Windows Makefile κˡ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html#makefilesを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/faq/index.html#makefiles򻲾ȤƤ .nf \f3 .fl @@ -5692,101 +4131,83 @@ .fl .fl -WINDOWTITLE = 'Java 2 Platform v1.2 API Specification' -.fl -DOCTITLE = 'Java(TM) 2 Platform v1.2 API Specification' -.fl -HEADER = '<b>Java 2 Platform </b><br><font size="\-1">v1.2</font>' -.fl -BOTTOM = '<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit -.fl - a bug or feature</a><br><br>Java is a trademark or registered trademark -.fl - of Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993\-1999 -.fl - Sun Microsystems, Inc. 901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. -.fl - All Rights Reserved.</font>' +WINDOWTITLE = 'Java(TM) SE 7 API Specification' +.fl +DOCTITLE = 'Java(TM) Platform Standard Edition 7 API Specification' +.fl +HEADER = '<b>Java(TM) SE 7</font>' +.fl +BOTTOM = '<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font>' .fl GROUPCORE = '"Core Packages" "java.*:com.sun.java.*:org.omg.*"' .fl GROUPEXT = '"Extension Packages" "javax.*"' .fl -SRCDIR = '/java/jdk/1.2/src/share/classes' +SRCDIR = '/java/jdk/1.7.0/src/share/classes' .fl \fP .fi - -.LP -.LP -Makefile の引数は、単一引用符で囲みます。 -.LP -.LP -\f3注\fP -.LP +.LP +Makefile ΰϡñǰϤߤޤ +.LP +\f3\fP .RS 3 .TP 2 o -\f2\-windowtitle\fP オプションを省略すると、Javadoc ツールによって、ドキュメントタイトルがウィンドウタイトルにコピーされます。\f2\-windowtitle\fP のテキストは、基本的に \f2\-doctitle\fP と同じです。 ただし、HTML タグは使用しません。 HTML タグは、ウィンドウタイトルにそのままのテキストとして表示されてしまいます。 +\-windowtitle \f2ץάȡ\fP Javadoc ġˤäƥɥȥȥ뤬ɥȥ˥ԡޤ \f2\-windowtitle\fP ΥƥȤϴŪ \f2\-doctitle\fP ΤΤƱǤHTML ޤޤʤۤʤޤϡHTML raw ƥȤȤƥɥȥɽΤɤǤ .TP 2 o -この例のように \f2\-footer\fP オプションを省略すると、Javadoc ツールによって、ヘッダーテキストがフッターにコピーされます。 +ǹԤäƤ褦 \f2\-footer\fP ץάȡJavadoc ġˤäƥإåΥƥȤեå˥ԡޤ .TP 2 o -この例では必要ありませんが、\-\f2classpath\fP および \-\f2link\fP も重要なオプションです。 +Ǥɬפޤ󤬡\-\f2classpath\fP \-\f2link\fP פʥץǤ .RE - -.LP -.SH "トラブルシューティング" -.LP +.SH "ȥ֥륷塼ƥ" .SS -一般的なトラブルシューティング -.LP +Ūʥȥ֥륷塼ƥ .RS 3 .TP 2 o -\f3Javadoc FAQ\fP \- 一般的なバグおよびトラブルシューティングのヒントは、 +\f3Javadoc FAQ\fP \- ŪʥХӥȥ֥륷塼ƥ󥰤ΥҥȤϡ .na -\f2「Javadoc FAQ」\fP @ +\f2Javadoc FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html#B で参照できます。 +http://java.sun.com/j2se/javadoc/faq/index.html#B ǻȤǤޤ .TP 2 o -\f3バグおよび制限事項\fP \- バグの一部は、「Important Bug Fixes and Changes」 でも参照できます。 +\f3Х»\fP \- ХΰϡImportant Bug Fixes and Changes Ǥ⻲ȤǤޤ .TP 2 o -\f3バージョン番号\fP \- 「バージョン番号」を参照してください。 +\f3Сֹ\fP \- ֥Сֹפ򻲾ȤƤ .TP 2 o -\f3有効なクラスだけをドキュメント化\fP \- パッケージをドキュメント化するとき、Javadoc は、有効なクラス名で構成されているファイルのみを読み込みます。たとえば、ファイル名にハイフン「\-」を含めることで、javadoc によるファイルの解析を防ぐことができます。 +\f3ͭʥ饹ɥȲ\fP \- ѥåɥȲȤJavadoc ϡͭʥ饹̾ǹƤեΤߤɤ߹ߤޤȤСե̾˥ϥե\-פޤ뤳Ȥǡjavadoc ˤեβϤɤȤǤޤ .RE - -.LP .SS -エラーと警告 -.LP -.LP -エラーおよび警告メッセージには、ファイル名と宣言行 (ドキュメンテーションコメント内の特定の行ではない) の行番号が含まれます。 -.LP +顼ȷٹ +.LP +顼ӷٹåˤϡե̾ (ɥơ󥳥ιԤǤϤʤ) ιֹ椬ޤޤޤ .RS 3 .TP 2 o -\f2"error:cannot read:Class1.java"\fP Javadoc ツールはカレントディレクトリに Class1.java クラスをロードしようとしています。絶対パスまたは相対パスとともに表示されるクラス名は、この例の場合 \f2./Class1.java\fP と同じです。 +\f2"error: cannot read: Class1.java"\fP Javadoc ġϥȥǥ쥯ȥ Class1.java 饹ɤ褦ȤƤޤХѥޤХѥȤȤɽ륯饹̾ϡξ \f2./Class1.java ƱǤ\fP .RE - -.LP -.SH "環境" -.LP +.SH "Ķ" .RS 3 .TP 3 CLASSPATH -Javadoc がユーザークラスのファイルを探すときに使うパスを指定する環境変数です。この環境変数は、\f2\-classpath\fP オプションによってオーバーライドされます。ディレクトリは、次のようにコロンで区切ります。 +Javadoc 桼饹ΥեõȤ˻ȤѥꤹĶѿǤδĶѿϡ \f2\-classpath\fP ץˤäƥС饤ɤޤǥ쥯ȥϡΤ褦˥Ƕڤޤ .:/home/classes:/usr/local/java/classes .RE - -.LP -.SH "関連項目" -.LP +.SH "Ϣ" .RS 3 .TP 2 o @@ -5806,7 +4227,7 @@ .TP 2 o .na -\f2Javadoc のホームページ\fP @ +\f2Javadoc Υۡڡ\fP @ .fi http://java.sun.com/j2se/javadoc/index.jsp .TP 2 @@ -5818,16 +4239,14 @@ .TP 2 o .na -\f2クラスパスの設定\fP @ +\f2饹ѥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/tools/index.html#general .TP 2 o .na -\f2javac と javadoc がクラスを検索する方法\fP @ +\f2javac javadoc 饹򸡺ˡ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfiles (tools.jar) .RE - -.LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/javah.1 --- a/jdk/src/linux/doc/man/ja/javah.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/javah.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,82 +19,67 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javah 1 "02 Jun 2010" +.TH javah 1 "14 Apr 2011" .LP -.SH "名前" -javah \- C ヘッダーとスタブファイルジェネレータ -.LP -.RS 3 - +.SH "̾" +javah \- C إåȥ֥ե른ͥ졼 .LP .LP -\f3javah\fP は、Java クラスから C ヘッダーファイルと C ソースファイルを作成します。これらのファイルは、Java プログラミング言語で書かれたコードと、C などのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。 +\f3javah\fP ϡJava 饹 C إåե C եޤΥեϡJava ץߥ󥰸ǽ񤫤줿ɤȡC ʤɤΤ¾θǽ񤫤줿ɤ³ɤߤ˺Ѥ褦ˤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl javah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . . .fl -javah_g [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . . -.fl \fP .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javah\fP は、ネイティブメソッドを実装するために必要な C ヘッダーとソースファイルを生成します。作成されたヘッダーとソースファイルは、ネイティブソースコードからオブジェクトのインスタンス変数を参照するために C プログラムによって使用されます。.h ファイルは、対応するクラスと一致する配置を持つ構造体定義を含みます。構造体のフィールドは、クラスのインスタンス変数に対応します。 -.LP -.LP -ヘッダーファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\f3javah\fP に渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダーファイル名と構造体名の両方に付加されます。下線 (_) が名前の区切り文字として使用されます。 +\f3javah\fP ϡͥƥ֥᥽åɤ뤿ɬפ C إåȥեޤ줿إåȥեϡͥƥ֥ɤ饪֥ȤΥ󥹥ѿ򻲾Ȥ뤿 C ץˤäƻѤޤ.h եϡб륯饹Ȱפ֤Ťޤߤޤ¤ΤΥեɤϡ饹Υ󥹥ѿбޤ .LP .LP -デフォルトでは \f3javah\fP は、コマンド行にリストされる各クラスのヘッダーファイルを作成し、現在のディレクトリにファイルを置きます。ソースファイルを作成するには、\f2\-stubs\fP オプションを使用してください。1 つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\f2\-o\fP オプションを使用してください。 -.LP -.LP -新しいネイティブメソッドインタフェースである Java Native Interface (JNI) は、ヘッダー情報またはスタブファイルを必要としません。 現在では、\f3javah\fP は、JNI 形式のネイティブメソッドに必要なネイティブメソッド機能プロトタイプを生成します。 デフォルトでは、\f3javah\fP は JNI 形式で出力され、その結果は .h ファイルに格納されます。 +إåեȤ빽¤Τ̾ϥ饹̾ޤ\f3javah\fP Ϥ륯饹ѥåˤ硢ѥå̾ϥإåե̾ȹ¤̾ξղäޤ (_) ̾ζڤʸȤƻѤޤ .LP .LP -\f3javah_g\fP は、jdb(1) のようなデバッガに適した、\f3javah\fP の最適化されていないバージョンです。 +ǥեȤǤ \f3javah\fP ϡޥɹԤ˥ꥹȤƥ饹ΥإåեߤΥǥ쥯ȥ˥ե֤ޤեˤϡ\f2\-stubs\fP ץѤƤ1 ĤΥեˡꥹȤ줿٤ƤΥ饹η̤Ϣ뤹ˤϡ\f2\-o\fP ץѤƤ +.LP .LP -.SH "オプション" +ͥƥ֥᥽åɥ󥿥եǤ Java Native Interface (JNI) ϡإåޤϥ֥եɬפȤޤ󡣸ߤǤϡ\f3javah\fP ϡJNI Υͥƥ֥᥽åɤɬפʥͥƥ֥᥽åɵǽץȥפޤǥեȤǤϡ\f3javah\fP JNI ǽϤ졢η̤ .h ե˳Ǽޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-o outputfile -コマンド行にリストされたすべてのクラスに対して、結果のヘッダーまたはソースファイルを連結して \f2outputfile\fP に格納します。\f3\-o\fP または \f3\-d\fP のどちらか一方だけが使われます。 +ޥɹԤ˥ꥹȤ줿٤ƤΥ饹Фơ̤ΥإåޤϥեϢ뤷 \f2outputfile\fP ˳Ǽޤ\f3\-o\fP ޤ \f3\-d\fP Τɤ餫Ȥޤ .TP 3 \-d directory -\f3javah\fP がヘッダーファイルまたはスタブファイルを保存する、ディレクトリを設定します。\f3\-d\fP または \f3\-o\fP のどちらか一方だけが使われます。 +\f3javah\fP إåեޤϥ֥ե¸롢ǥ쥯ȥꤷޤ\f3\-d\fP ޤ \f3\-o\fP Τɤ餫Ȥޤ .TP 3 \-stubs -\f3javah\fP が、Java オブジェクトファイルから C 宣言を生成します。 +\f3javah\fP Java ֥ȥե뤫 C ޤ .TP 3 \-verbose -詳細出力を指定し、作成ファイルの状態に関するメッセージを、\f3javah\fP が標準出力に出力します。 +ܺٽϤꤷեξ֤˴ؤå\f3javah\fP ɸϤ˽Ϥޤ .TP 3 \-help -\f3javah\fP の使用法についてのヘルプメッセージを出力します。 +\f3javah\fP λˡˤĤƤΥإץåϤޤ .TP 3 \-version -\f3javah\fP のバージョン情報を出力します。 +\f3javah\fP ΥСϤޤ .TP 3 \-jni -JNI 形式のネイティブファイル機能プロトタイプを含む出力ファイルを、\f3javah\fP が作成します。これは標準出力であるため、\f3\-jni\fP の使用はオプションです。 +JNI Υͥƥ֥ե뵡ǽץȥפޤϥե\f3javah\fP ޤɸϤǤ뤿ᡢ\f3\-jni\fP λѤϥץǤ .TP 3 \-classpath path -クラスを探すために \f3javah\fP が使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 +饹õ \f3javah\fP ѤѥꤷޤǥեȤޤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -102,7 +87,7 @@ .fl \fP .fi -例を示します。 +򼨤ޤ .nf \f3 .fl @@ -111,33 +96,31 @@ \fP .fi .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡǥ쥯ȥγĥ \f2.jar\fP ޤ \f2.JAR\fP Ĥ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (Java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤ϻꤵޤ󡣤ΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ \f2*\fP 륯饹ѥȥϡߤΥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .TP 3 \-bootclasspath path -ブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。 +֡ȥȥåץ饹ɤѥꤷޤ֡ȥȥåץ饹ϡǥեȤǤ \f2jre/lib/rt.jar\fP ¾ΤĤ JAR ե ˤ롢 Java 2 ץåȥե륯饹Ǥ .TP 3 \-old -古い JDK1.0 形式のヘッダーファイルを生成するように指定します。 +Ť JDK1.0 Υإåե褦˻ꤷޤ .TP 3 \-force -出力ファイルが常に書き込まれるように指定します。 +ϥե뤬˽񤭹ޤ褦˻ꤷޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割されています。 +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤵Ƥޤ .nf \f3 .fl @@ -148,11 +131,9 @@ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、java(1)、jdb(1)、javap(1)、javadoc(1) +javac(1)java(1)jdb(1)javap(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/javap.1 --- a/jdk/src/linux/doc/man/ja/javap.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/javap.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javap 1 "02 Jun 2010" +.TH javap 1 "14 Apr 2011" .LP -.SH "名前" -javap \- Java クラスファイル逆アセンブラ -.LP -.RS 3 - +.SH "̾" +javap \- Java 饹եե֥ .LP .LP -クラスファイルを逆アセンブルします。 +饹եե֥뤷ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,15 +39,10 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javap\fP コマンドは、クラスファイルを逆アセンブルします。その出力は指定するオプションにより異なります。オプションを指定しない場合、\f3javap\fP は、そのパッケージ、渡されたクラスの protected および public のフィールドとメソッドを出力します。 \f3javap\fP はその出力を標準出力に表示します。たとえば、次のクラス宣言をコンパイルするとします。 -.LP -.RS 3 - +\f3javap\fP ޥɤϡ饹եե֥뤷ޤνϤϻꤹ륪ץˤۤʤޤץꤷʤ硢\f3javap\fP ϡΥѥåϤ줿饹 protected public Υեɤȥ᥽åɤϤޤ\f3javap\fP ϤνϤɸϤɽޤȤСΥ饹򥳥ѥ뤹Ȥޤ .LP .nf \f3 @@ -96,14 +85,10 @@ .fl \fP .fi -.RE .LP .LP -\f3javap DocFooter\fP がもたらす出力は次のようになります。 -.LP -.RS 3 - +\f3javap DocFooter\fP ⤿餹ϤϼΤ褦ˤʤޤ .LP .nf \f3 @@ -126,14 +111,10 @@ .fl \fP .fi -.RE .LP .LP -\f3javap \-c DocFooter\fP がもたらす出力は次のようになります。 -.LP -.RS 3 - +\f3javap \-c DocFooter\fP ⤿餹ϤϼΤ褦ˤʤޤ .LP .nf \f3 @@ -244,41 +225,35 @@ .fl \fP .fi -.RE .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -\-help -\f3javap\fP のヘルプメッセージを出力します。 +\-help \-\-help \-? +\f3javap\fP ΥإץåϤޤ +.TP 3 +\-version +Сɽޤ .TP 3 \-l -行番号と局所変数テーブルを表示します。 -.TP 3 -\-b -JDK 1.1 の \f3javap\fP との下位互換性を保証します。 +ֹȶɽѿơ֥ɽޤ .TP 3 \-public -public クラスおよびメンバーだけを表示します。 +public 饹ӥСɽޤ .TP 3 \-protected -protected および public のクラスとメンバーだけを表示します。 +protected public Υ饹ȥСɽޤ .TP 3 \-package -package、protected、および public のクラスとメンバーだけを表示します。これはデフォルトの設定です。 +packageprotected public Υ饹ȥСɽޤϥǥեȤǤ .TP 3 -\-private -すべてのクラスとメンバーを表示します。 +\-private \-p +٤ƤΥ饹ȥСɽޤ .TP 3 \-Jflag -ランタイムシステムに直接 \f2flag\fP を渡します。使用例を次に示します。 -.RS 3 - -.LP +󥿥ॷƥľ \f2flag\fP Ϥޤ򼡤˼ޤ .nf \f3 .fl @@ -288,23 +263,28 @@ .fl \fP .fi -.RE .TP 3 \-s -内部の型シグニチャーを出力します。 +η˥㡼Ϥޤ +.TP 3 +\-sysinfo +Υ饹Υƥ (ѥաMD5 ϥå) ɽޤ +.TP 3 +\-constants +static final ɽޤ .TP 3 \-c -クラスの各メソッドのために逆アセンブルされるコード、すなわち Java バイトコードから成る命令を表示します。これらは +饹γƥ᥽åɤΤ˵ե֥뤵륳ɡʤ Java Хȥɤ̿ɽޤ .na -\f2「Java Virtual Machine Specification」\fP @ +\f2Java Virtual Machine Specification\fP @ .fi -http://java.sun.com/docs/books/vmspec/にドキュメント化されています。 +http://java.sun.com/docs/books/vmspec/˥ɥȲƤޤ .TP 3 \-verbose -メソッドのスタックサイズ、および \f2locals\fP と \f2args\fP の数を出力します。 +᥽åɤΥå \f2locals\fP \f2args\fP οϤޤ .TP 3 \-classpath path -\f3javap\fP がクラスを探すために使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 +\f3javap\fP 饹õ˻ѤѥꤷޤǥեȤޤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -312,7 +292,7 @@ .fl \fP .fi -例を示します。 +򼨤ޤ .nf \f3 .fl @@ -322,24 +302,19 @@ .fi .TP 3 \-bootclasspath path -ブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。 +֡ȥȥåץ饹ɤѥꤷޤ֡ȥȥåץ饹ϡǥեȤǤ \f2jre/lib/rt.jar\fP ¾ΤĤ JAR ե ˤ롢 Java 2 ץåȥե륯饹Ǥ .TP 3 \-extdirs dirs -インストールされた拡張機能を検索する場所をオーバーライドします。The default location for extensions is the value of \f2java.ext.dirs\fP. +󥹥ȡ뤵줿ĥǽ򸡺򥪡С饤ɤޤĥǽϡǥեȤǤ \f2java.ext.dirs\fP ˤޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。 次に例を示します。 -.RS 3 - -.LP +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -348,14 +323,11 @@ \fP .fi .RE -.RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、 java(1)、jdb(1)、javah(1)、javadoc(1) +javac(1)java(1)jdb(1)javah(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/javaws.1 --- a/jdk/src/linux/doc/man/ja/javaws.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/javaws.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,30 +19,18 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javaws 1 "02 Jun 2010" +.TH javaws 1 "14 Apr 2011" .LP -.SH "名前" -\f2javaws\fP コマンド行 +.SH "̾" +\f2javaws\fP ޥɹ +.LP +.SH "̾" .LP .LP -\ -.LP -.SS -NAME -.LP -.RS 3 - -.LP +\f2javaws\fP \- Java Web Start ưޥ .LP -\f2javaws\fP \- Java Web Start 起動コマンド -.LP -.RE -.SS -形式 -.LP -.RS 3 - +.SH "" .LP .LP \f2javaws [run\-options] <jnlp>\fP @@ -50,309 +38,185 @@ .LP \f2javaws [control\-options]\fP .LP -.RE -.SS -パラメータ -.LP -.RS 3 - +.SH "ѥ᡼" .LP .LP \f2[run\-options]\fP .LP -.RS 3 - -.LP .LP -コマンド行実行オプション。 実行オプションは任意の順序で指定できます。各種オプションについては、下の 「実行オプション」を参照してください。 +ޥɹԼ¹ԥץ󡣼¹ԥץǤդνǻǤޤƼ索ץˤĤƤϡ ּ¹ԥץפ򻲾ȤƤ .LP -.RE .LP \f2<jnlp>\fP .LP -.RS 3 - -.LP .LP -JNLP (Java Network Launching Protocol) ファイルのパスまたは URL (Uniform Resource Locator) のどちらかです。 +JNLP (Java Network Launching Protocol) եΥѥޤ URL (Uniform Resource Locator) Τɤ餫Ǥ .LP -.RE .LP \f2[control\-options]\fP .LP -.RS 3 - -.LP -.LP -コマンド行制御オプション。 制御オプションは任意の順序で指定できます。各種オプションについては、下の 「制御オプション」を参照してください。 .LP -.RE -.RE -.SS -説明 +ޥɹ楪ץ楪ץǤդνǻǤޤƼ索ץˤĤƤϡ 楪ץפ򻲾ȤƤ .LP -.RS 3 - +.SH "" .LP .LP -\f2javaws\fP コマンドは、JNLP (Java Network Launching Protocol) のリファレンス実装である Java Web Start を起動します。Java Web Start は、ネットワーク上で動作する Java アプリケーションまたはアプレットを起動します。 -.LP -.LP -JNLP ファイルを指定すると、\f2javaws\fP は JNLP ファイルに指定された Java アプリケーションまたはアプレットを起動します。 +\f2javaws\fP ޥɤϡJNLP (Java Network Launching Protocol) Υե󥹼Ǥ Java Web Start ưޤJava Web Start ϡͥåȥư Java ץꥱޤϥץåȤưޤ .LP .LP -\f2javaws\fP 起動ツールには、現在のリリースでサポートされている 1 組のオプションがあります。ただし、これらのオプションは将来のリリースでは削除される可能性があります。 +JNLP ե뤬ꤵ줿硢 \f2javaws\fP ϡ JNLP եǻꤵ줿 Java ץꥱ/ץåȤưޤ +.LP .LP -.RE -.SS -実行オプション +\f2javaws\fP ưġˤϡߤΥ꡼ǥݡȤƤ 1 ȤΥץ󤬤ޤΥץϾΥ꡼ǤϺǽޤ .LP -.RS 3 - +.SH "¹ԥץ" .LP .LP \f2\-offline\fP .LP -.RS 3 - -.LP .LP -Java Web Start をオフラインモードで実行します。 +Java Web Start 򥪥ե饤⡼ɤǼ¹Ԥޤ .LP -.RE .LP \f2\-Xnosplash\fP .LP -.RS 3 - -.LP .LP -最初のスプラッシュ画面の表示を無効にします。 +ǽΥץå̤ɽ̵ˤޤ .LP -.RE .LP \f2\-open <arguments>\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、JNLP ファイル内の引数が \f2\-open <arguments>\fP に置き換わります。 +ΥץꤹȡJNLP եΰ \f2\-open <arguments>\fP ֤ޤ .LP -.RE .LP \f2\-print <arguments>\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、JNLP ファイル内の引数が \f2\-print <arguments>\fP に置き換わります。 +ΥץꤹȡJNLP եΰ \f2\-print <arguments>\fP ֤ޤ .LP -.RE .LP \f2\-online\fP .LP -.RS 3 - -.LP .LP -オンラインモードで実行します (デフォルトの動作)。 +饤⡼ɤǼ¹Ԥޤ (ǥեȤư) .LP -.RE .LP \f2\-wait\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、アプリケーションが終了するまで \f2javaws\fP プロセスは終了しません。 +Υץꤷ硢 \f2javaws\fP ץϡץꥱ󤬽λޤǽλޤWindows ץåȥեǤϡΥץȤ˵ǽޤ .LP -.RE .LP \f2\-verbose\fP .LP -.RS 3 - -.LP .LP -追加の出力を表示します。 +ɲäνϤɽޤ .LP -.RE .LP \f2\-J<option>\fP .LP -.RS 3 - -.LP .LP -vm にオプションを補います。 +vm ˥ץ䤤ޤ .LP -.RE .LP \f2\-system\fP .LP -.RS 3 - -.LP -.LP -アプリケーションをシステムキャッシュからのみ実行します。 .LP -.RE -.RE -.SS -制御オプション +ץꥱ򥷥ƥ७å夫Τ߼¹Ԥޤ .LP -.RS 3 - +.SH "楪ץ" .LP .LP \f2\-viewer\fP .LP -.RS 3 - +.LP +Java ȥѥͥǥåӥ塼ɽޤ .LP .LP -Java コントロールパネルでキャッシュビューアを表示します。 +\f2\-clearcache\fP +.LP .LP -.RE +󥹥ȡ뤵Ƥʤ٤ƤΥץꥱ򥭥å夫ޤ +.LP .LP \f2\-userConfig <property name>\fP .LP -.RS 3 - -.LP .LP -指定された配備プロパティーをクリアします。 +ꤵ줿ץѥƥ򥯥ꥢޤ .LP -.RE .LP \f2\-userConfig <property name> <property value>\fP .LP -.RS 3 - -.LP .LP -指定された配備プロパティーを指定された値に設定します。 +ꤵ줿ץѥƥꤵ줿ͤꤷޤ .LP -.RE .LP \f2\-uninstall\fP .LP -.RS 3 - -.LP .LP -キャッシュからすべてのアプリケーションを削除します。 +å夫餹٤ƤΥץꥱޤ .LP -.RE .LP \f2\-uninstall <jnlp>\fP .LP -.RS 3 - -.LP .LP -キャッシュからアプリケーションを削除します。 +å夫饢ץꥱޤ .LP -.RE .LP \f2\-import [import\-options] <jnlp>\fP .LP -.RS 3 - -.LP .LP -キャッシュにアプリケーションをインポートします。 +å˥ץꥱ򥤥ݡȤޤ .LP -.RE -\f3インポートオプション\fP +.SH "ݡȥץ" .LP .LP \f2\-silent\fP .LP -.RS 3 - -.LP .LP -サイレントモードでインポートします (UI は表示されません)。 +ȥ⡼ɤǥݡȤޤ (UI ɽޤ) .LP -.RE .LP \f2\-system\fP .LP -.RS 3 - -.LP .LP -システムキャッシュにアプリケーションをインポートします。 +ƥ७å˥ץꥱ򥤥ݡȤޤ .LP -.RE .LP \f2\-codebase <url>\fP .LP -.RS 3 - -.LP .LP -任意の codebase からリソースを取得します。 +Ǥդ codebase ꥽ޤ .LP -.RE .LP \f2\-shortcut\fP .LP -.RS 3 - -.LP .LP -ユーザー許容プロンプトのようにショートカットをインストールします。このオプションは、\f2\-silent\fP オプションと一緒に使用しないと効果がありません。 +桼ƥץץȤΤ褦˥硼ȥåȤ򥤥󥹥ȡ뤷ޤΥץϡ \f2\-silent\fP ץѤʤȸ̤ޤ .LP -.RE .LP \f2\-association\fP .LP -.RS 3 - -.LP -.LP -ユーザー許容プロンプトのように関連付けをインストールします。このオプションは、\f2\-silent\fP オプションと一緒に使用しないと効果がありません。 .LP -.RE -.RE -.SS -ファイル +桼ƥץץȤΤ褦˴Ϣդ򥤥󥹥ȡ뤷ޤΥץϡ \f2\-silent\fP ץѤʤȸ̤ޤ .LP -.RS 3 - +.SH "ե" .LP .LP -ユーザーキャッシュ、システムキャッシュ、および deployment.properties ファイルについては、 +桼å塢ƥ७å塢 deployment.properties եˤĤƤϡ .na -\f2システムレベルおよびユーザーレベルのプロパティー\fP @ +\f2ƥ٥뤪ӥ桼٥Υץѥƥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/properties.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/properties.html򻲾ȤƤ .LP -.RE -.SS -詳細情報 -.LP -.RS 3 - +.SH "ܺپ" .LP .LP -Java Web Start の詳細は、 +Java Web Start ξܺ٤ϡ .na -\f2「Java Web Start」\fP @ +\f2Java Web Start\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javaws/index.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/javaws/index.html򻲾ȤƤ .LP -.RS 3 - -.LP -.LP -\ -.LP -.RE -.RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jconsole.1 --- a/jdk/src/linux/doc/man/ja/jconsole.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jconsole.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jconsole 1 "02 Jun 2010" +.TH jconsole 1 "14 Apr 2011" .LP -.SH "名前" -jconsole \- Java 監視および管理コンソール +.SH "̾" +jconsole \- Java ƻ뤪Ӵ󥽡 .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -58,63 +56,60 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 -.br +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 connection = pid | host:port | jmxUrl .RS 3 -\f2pid\fP\ \ \ ローカルの Java VM のプロセス ID。Java VM は、jconsole を実行しているユーザー ID と同じユーザー ID を使用して実行する必要があります。詳細については、 +.TP 2 +o +\f2pid\fP Java VM Υץ IDJava VM ϡjconsole ¹ԤƤ桼 ID Ʊ桼 ID ѤƼ¹Ԥɬפޤܺ٤ˤĤƤϡ .na -\f2「JMX 監視および管理」\fP @ +\f2JMX ƻ뤪Ӵ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/management/agent.htmlを参照してください。 -.br -\f2host\fP:\f2port\fP\ \ Java VM が実行しているホストシステムの名前と、JVM を起動したときにシステムプロパティー \f2com.sun.management.jmxremote.port\fP で指定したポート番号。詳細については、 +http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html򻲾ȤƤ +.TP 2 +o +\f2host\fP:\f2port\fP Java VM ¹ԤƤۥȥƥ̾ȡJVM ưȤ˥ƥץѥƥ \f2com.sun.management.jmxremote.port\fP ǻꤷݡֹ档ܺ٤ˤĤƤϡ .na -\f2「JMX 監視および管理」\fP @ +\f2JMX ƻ뤪Ӵ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/management/agent.htmlを参照してください。 -.br -\f2jmxUrl\fP 接続先の JMX エージェントのアドレス。 これについては、 +http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html򻲾ȤƤ +.TP 2 +o +\f2jmxUrl\fP ³ JMX ȤΥɥ쥹ˤĤƤϡ .na \f2JMXServiceURL\fP @ .fi -http://java.sun.com/javase/6/docs/api/javax/management/remote/JMXServiceURL.html を参照してください。 +http://java.sun.com/javase/6/docs/api/javax/management/remote/JMXServiceURL.html 򻲾ȤƤ .RE .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jconsole\fP コマンドは、ローカルマシンまたはリモートマシン上の Java アプリケーションと仮想マシンの監視と管理を行うグラフィカルコンソールツールを起動します。 +\f3jconsole\fP ޥɤϡޥޤϥ⡼ȥޥ Java ץꥱȲۥޥδƻȴԤե륳󥽡ġưޤ .LP .LP -Windows 上では、\f3jconsole\fP はコンソールウィンドウと関連付けられていません。ただし、なんらかの理由で \f3jconsole\fP コマンドが失敗すると、エラー情報を示すダイアログボックスが表示されます。 +Windows Ǥϡ\f3jconsole\fP ϥ󥽡륦ɥȴϢդƤޤ󡣤ʤ餫ͳ \f3jconsole\fP ޥɤԤȡ顼򼨤ܥåɽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-interval=n -更新間隔を \f2n\fP 秒に設定します (デフォルトは 4 秒)。 +ֳ֤ \f2n\fP äꤷޤ (ǥեȤ 4 ) .TP 3 -\-notile\ -最初にウィンドウをタイリングしません (複数の接続のため)。 +\-notile +ǽ˥ɥ򥿥󥰤ޤ (ʣ³Τ) .TP 3 -\-pluginpath\ plugins -JConsole プラグインの検索先となるディレクトリまたは JAR ファイルのリストを指定します。\f2plugins\fP パスには、次の名前のプロバイダ構成ファイルを含めてください。 +\-pluginpath plugins +JConsole ץ饰θȤʤǥ쥯ȥޤ JAR եΥꥹȤꤷޤ\f2plugins\fP ѥˤϡ̾ΥץХեޤƤ .br .nf \f3 @@ -124,36 +119,36 @@ \fP .fi .LP -これには、 +ˤϡ .na \f2com.sun.tools.jconsole.JConsolePlugin\fP @ .fi -http://java.sun.com/javase/6/docs/jdk/api/jconsole/spec/com/sun/tools/jconsole/JConsolePlugin.html クラスを実装するクラスの完全修飾クラス名を指定する行が、プラグインごとに 1 行ずつ含まれています。 +http://java.sun.com/javase/6/docs/jdk/api/jconsole/spec/com/sun/tools/jconsole/JConsolePlugin.html 饹륯饹δ饹̾ꤹԤץ饰󤴤Ȥ 1 ԤĴޤޤƤޤ .TP 3 -\-version\ -バージョン情報を出力して終了します。 +\-version +СϤƽλޤ .TP 3 -\-help\ -ヘルプメッセージを出力して終了します。 +\-help +إץåϤƽλޤ .TP 3 -\-J<flag>\ -jconsole が実行されている Java 仮想マシンに <flag> を渡します。 +\-J<flag> +jconsole ¹ԤƤ Java ۥޥ <flag> Ϥޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2jconsole の使用\fP @ +\f2JConsole λ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/management/jconsole.html .TP 2 o .na -\f2「Java プラットフォームの監視および管理」\fP @ +\f2Java ץåȥեδƻ뤪Ӵ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/management/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jdb.1 --- a/jdk/src/linux/doc/man/ja/jdb.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jdb.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jdb 1 "02 Jun 2010" +.TH jdb 1 "14 Apr 2011" .LP -.SH "名前" -jdb \- Java デバッガ -.LP -.RS 3 - +.SH "̾" +jdb \- Java ǥХå .LP .LP -\f3jdb\fP は、Java 言語プログラムのバグを見つけて修正するために使用するツールです。 +\f3jdb\fP ϡJava ץΥХ򸫤Ĥƽ뤿˻ѤġǤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,41 +39,32 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -次に示すコマンド行オプション +˼ޥɹԥץ .TP 3 class -デバッグを開始するクラスの名前 +ǥХå򳫻Ϥ륯饹̾ .TP 3 arguments -\f2class\fP の \f2main()\fP メソッドに渡す引数 +class \f2main()\fP ᥽åɤϤ \f2\fP .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -Java デバッガ \f3jdb\fP は、Java クラス用の簡単なコマンド行デバッガです。 +Java ǥХå \f3jdb\fP ϡJava 饹ѤδñʥޥɹԥǥХåǤ .na \f2Java Platform Debugger Architecture\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/index.html を視覚的に実行し、ローカルまたはリモートの Java Virtual Machine の検査とデバッグを行うことができます。 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/index.html Ū˼¹Ԥޤϥ⡼Ȥ Java Virtual Machine θȥǥХåԤȤǤޤ .LP .SS -jdb セッションの開始 -.LP -.RS 3 - +jdb åγ .LP .LP -jdb セッションを開始するにはさまざまな方法があります。もっとも頻繁に使われるのは、デバッグするアプリケーションのメインクラスを使用して、\f3jdb\fP から新しい Java 仮想マシン (VM) を起動する方法です。コマンド行で、 \f3java\fP の代わりに \f3jdb\fP コマンドを入力します。たとえば、アプリケーションのメインクラスが MyClass の場合は、JDB 環境でデバッグするときに次のコマンドを使用します。 +jdb å򳫻ϤˤϤޤޤˡޤäȤˤ˻ȤΤϡǥХå륢ץꥱΥᥤ󥯥饹Ѥơ\f3jdb\fP 鿷 Java ۥޥ (VM) ưˡǤޥɹԤǡ\f3java\fP \f3jdb\fP ޥɤϤޤȤСץꥱΥᥤ󥯥饹 MyClass ξϡJDB ĶǥǥХåȤ˼ΥޥɤѤޤ .LP .nf \f3 @@ -91,10 +76,10 @@ .LP .LP -この方法で起動すると、\f3jdb\fP は、指定されたパラメータを使って 2 つ目の Java VM を呼び出します。 次に、指定されたクラスをロードして、クラスの最初の命令を実行する前に VM を停止させます。 +ˡǵưȡ\f3jdb\fP ϡꤵ줿ѥ᡼Ȥä 2 ܤ Java VM ƤӽФޤˡꤵ줿饹ɤơ饹κǽ̿¹Ԥ VM ߤޤ .LP .LP -\f3jdb\fP のもう 1 つの使用方法は、すでに起動している Java VM に jdb を接続することです。jdb が接続する VM を、その実行中に起動するための構文を次に示します。これは、インプロセスデバッグ用ライブラリをロードし、接続の種類を指定します。 +\f3jdb\fP Τ⤦ 1 ĤλˡϡǤ˵ưƤ Java VM jdb ³뤳ȤǤjdb ³ VM 򡢤μ¹˵ư뤿ιʸ򼡤˼ޤϡץǥХåѥ饤֥ɤ³μꤷޤ .LP .nf \f3 @@ -106,7 +91,7 @@ .LP .LP -たとえば、次のコマンドは、MyClass アプリケーションを実行して、\f3jdb\fP があとでそのアプリケーションに接続できるようにします。 +ȤСΥޥɤϡMyClass ץꥱ¹Ԥơ\f3jdb\fP ȤǤΥץꥱ³Ǥ褦ˤޤ .LP .nf \f3 @@ -118,7 +103,7 @@ .LP .LP -次のコマンドを使用して、\f3jdb\fP を VM に接続できます。 +ΥޥɤѤơ\f3jdb\fP VM ³Ǥޤ .LP .nf \f3 @@ -130,45 +115,42 @@ .LP .LP -この場合、\f3jdb\fP は新しい VM を起動する代わりに既存の VM に接続されるため、\f3jdb\fP コマンド行には「MyClass」は指定しません。 +ξ硢\f3jdb\fP Ͽ VM ư˴¸ VM ³뤿ᡢ\f3jdb\fP ޥɹԤˤϡMyClassפϻꤷޤ .LP .LP -デバッガを VM に接続するにはほかにもさまざまな方法があり、すべて \f3jdb\fP でサポートされています。接続オプションについては、Java Platform Debugger Architecture の +ǥХå VM ³ˤϤۤˤ⤵ޤޤˡꡢ٤ \f3jdb\fP ǥݡȤƤޤ³ץˤĤƤϡJava Platform Debugger Architecture .na -\f2ドキュメント\fP @ +\f2ɥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.htmlを参照してください。\f3jdb\fP で使用するために J2SE 1.4.2 以前の VM を起動する方法については、 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.html򻲾ȤƤ\f3jdb\fP ǻѤ뤿 J2SE 1.4.2 VM ưˡˤĤƤϡ .na -\f21.4.2 のドキュメント\fP @ +\f21.4.2 Υɥ\fP @ .fi -http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.htmlを参照してください。 +http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html򻲾ȤƤ .LP .SS -基本 jdb コマンド + jdb ޥ .LP .LP -基本的な \f3jdb\fP コマンドの一覧を示します。Java デバッガがサポートするコマンドはこれ以外にもあり、それらは \f3jdb\fP の \f2help\fP コマンドを使用して表示できます。 -.LP -.RS 3 - +Ū \f3jdb\fP ޥɤΰ򼨤ޤJava ǥХåݡȤ륳ޥɤϤʳˤ⤢ꡢ \f3jdb\fP \f2help\fP ޥɤѤɽǤޤ .LP .RS 3 .TP 3 -help または ? -もっとも重要な \f3jdb\fP コマンド \f2help\fP は、認識されたコマンドのリストに簡潔な説明を付けて表示します。 +help ޤ ? +äȤפ \f3jdb\fP ޥ \f2help\fP ϡǧ줿ޥɤΥꥹȤ˴ʷդɽޤ .TP 3 run -\f3jdb\fP を起動して必要なブレークポイントを設定したあとに、このコマンドを使用して、デバッグするアプリケーションの実行を開始できます。このコマンドは、既存の VM に接続している場合とは異なり、デバッグするアプリケーションが \f3jdb\fP から起動したときにだけ使用できます。 +\f3jdb\fP ưɬפʥ֥졼ݥȤꤷȤˡΥޥɤѤơǥХå륢ץꥱμ¹Ԥ򳫻ϤǤޤΥޥɤϡ¸ VM ³ƤȤϰۤʤꡢǥХå륢ץꥱ \f3jdb\fP 鵯ưȤˤѤǤޤ .TP 3 cont -ブレークポイント、例外、またはステップ実行のあとで、デバッグするアプリケーションの実行を継続します。 +֥졼ݥȡ㳰ޤϥƥå׼¹ԤΤȤǡǥХå륢ץꥱμ¹Ԥ³ޤ .TP 3 print -Java オブジェクトおよびプリミティブ値を表示します。プリミティブ型の変数またはフィールドの場合には、実際の値が出力されます。オブジェクトの場合には、短い説明が出力されます。オブジェクトについては、以降の \f2dump\fP コマンドの説明を参照してください。 +Java ֥ȤӥץߥƥͤɽޤץߥƥַѿޤϥեɤξˤϡºݤͤϤޤ֥ȤξˤϡûϤޤ֥ȤˤĤƤϡʹߤ \f2dump\fP ޥɤ򻲾ȤƤ .LP -\f2注:局所変数を表示するには、その変数を含むクラスが \fP\f2javac(1)\fP\f2 \fP\f2\-g\fP オプションでコンパイルされていなければなりません。 +\f2: ɽѿɽˤϡѿޤ९饹 \fP\f2javac(1)\fP\f2 \fP\f2\-g\fP ץǥѥ뤵Ƥɬפޤ .LP -\f2print\fP では、メソッドの呼び出しを含む多数の簡単な Java 式がサポートされています。 次に例を示します。 +\f2print\fP Ǥϡ᥽åɤθƤӽФޤ¿δñ Java ݡȤƤޤ򼨤ޤ .RS 3 .TP 2 o @@ -178,25 +160,22 @@ \f2print myObj.myInstanceField\fP .TP 2 o -\f2print i + j + k\fP (i、j、および k はプリミティブであり、フィールドまたは局所変数のいずれか) +\f2print i + j + k\fP (ij k ϥץߥƥ֤Ǥꡢեɤޤ϶ɽѿΤ줫) .TP 2 o -\f2print myObj.myMethod()\fP (myMethod が null 以外を返す場合) +\f2print myObj.myMethod()\fP (myMethod null ʳ֤) .TP 2 o \f2print new java.lang.String("Hello").length()\fP .RE .TP 3 dump -プリミティブ値の場合には、このコマンドは \f2print\fP と同じです。オブジェクトの場合には、オブジェクト内に定義されている各フィールドの現在の値が出力されます。static フィールドと instance フィールドが出力されます。 +ץߥƥͤξˤϡΥޥɤ \f2print\fP ƱǤ֥Ȥξˤϡ֥ƤƥեɤθߤͤϤޤstatic եɤ instance եɤϤޤ .LP -\f2dump\fP コマンドでは、\f2print\fP コマンドと同じ式がサポートされます。 +\f2dump\fP ޥɤǤϡ\f2print\fP ޥɤƱݡȤޤ .TP 3 threads -現在実行中のスレッドを一覧表示します。スレッドごとに、名前と現在の状態、およびほかのコマンドに使用できるインデックスが出力されます。 次に例を示します。 -.RS 3 - -.LP +߼¹ΥåɤɽޤåɤȤˡ̾ȸߤξ֡ӤۤΥޥɤ˻ѤǤ륤ǥåϤޤ򼨤ޤ .nf \f3 .fl @@ -204,163 +183,144 @@ .fl \fP .fi -.RE -この例では、スレッドインデックスは 4 であり、スレッドは java.lang.Thread のインスタンスです。 スレッドの名前は「main」であり、現在実行中です。 +Ǥϡåɥǥå 4 Ǥꡢåɤ java.lang.Thread Υ󥹥󥹤Ǥåɤ̾ϡmainפǤꡢ߼¹Ǥ .TP 3 thread -現在のスレッドにするスレッドを選択します。多くの \f3jdb\fP コマンドは、現在のスレッドの設定に基づいて実行されます。スレッドは、\f2threads\fP コマンドで説明したスレッドインデックスとともに指定します。 +ߤΥåɤˤ륹åɤ򤷤ޤ¿ \f3jdb\fP ޥɤϡߤΥåɤ˴ŤƼ¹Ԥޤåɤϡ\f2threads\fP ޥɤåɥǥåȤȤ˻ꤷޤ .TP 3 where -引数を指定しないで \f2where\fP を実行すると、現在のスレッドのスタックがダンプされます。 \f2where all\fP コマンドは、現在のスレッドグループにあるスレッドのスタックを、すべてダンプします。 \f2where\fP \f2threadindex\fP は、指定されたスレッドのスタックをダンプします。 +\f2ꤷʤ\fP where ¹ԤȡߤΥåɤΥåפޤ \f2where all\fP ޥɤϡߤΥåɥ롼פˤ륹åɤΥå򤹤٤ƥפޤ \f2where\fP \f2threadindex\fP ϡꤵ줿åɤΥåפޤ .LP -現在のスレッドが (ブレークポイントか \f2suspend\fP コマンドによって) 中断している場合は、局所変数とフィールドは \f2print\fP コマンドと \f2dump\fP コマンドで表示できます。\f2up\fP コマンドと \f2down\fP コマンドで、どのスタックフレームをカレントにするかを選ぶことができます。 +ߤΥåɤ (֥졼ݥȤ \f2suspend\fP ޥɤˤä) ǤƤϡɽѿȥեɤ \f2print\fP ޥɤ \f2dump\fP ޥɤɽǤޤ\f2up\fP ޥɤ \f2down\fP ޥɤǡɤΥåե졼򥫥Ȥˤ뤫֤ȤǤޤ .RE .LP -.RE .SS -ブレークポイント -.LP -.RS 3 - +֥졼ݥ .LP .LP -ブレークポイントは、行番号またはメソッドの最初の命令で \f3jdb\fP に設定できます。 次に例を示します。 +֥졼ݥȤϡֹޤϥ᥽åɤκǽ̿ \f3jdb\fP Ǥޤ򼨤ޤ .LP .RS 3 .TP 2 o -\f2stop at MyClass:22\fP (MyClass が含まれるソースファイルの 22 行目の最初の命令にブレークポイントを設定) +\f2stop at MyClass:22\fP (MyClass ޤޤ륽ե 22 ܤκǽ̿˥֥졼ݥȤ) .TP 2 o -\f2stop in java.lang.String.length\fP (\f2java.lang.String.length\fP メソッドの最初にブレークポイントを設定) +\f2stop in java.lang.String.length\fP (\f2java.lang.String.length\fP ᥽åɤκǽ˥֥졼ݥȤ) .TP 2 o -\f2stop in MyClass.<init>\fP (<init> は MyClass コンストラクタを識別) +\f2stop in MyClass.<init>\fP (<init> MyClass 󥹥ȥ饯) .TP 2 o -\f2stop in MyClass.<clinit>\fP (<clinit> は MyClass の静的初期化コードを識別) +\f2stop in MyClass.<clinit>\fP (<clinit> MyClass Ūɤ) .RE .LP .LP -メソッドがオーバーロードされている場合には、メソッドの引数の型も指定して、ブレークポイントに対して適切なメソッドが選択されるようにしなければなりません。たとえば、「\f2MyClass.myMethod(int,java.lang.String)\fP」または「\f2MyClass.myMethod()\fP」と指定します。 +᥽åɤСɤƤˤϡ᥽åɤΰηꤷơ֥졼ݥȤФŬڤʥ᥽åɤ򤵤褦ˤʤФʤޤ󡣤ȤС\f2MyClass.myMethod(int,java.lang.String)\fPפޤϡ\f2MyClass.myMethod()\fPפȻꤷޤ .LP .LP -\f2clear\fP コマンドは、「\f2clear\ MyClass:45\fP」のような構文を使用してブレークポイントを削除します。\f2clear\fP を使用するか、引数を指定しないでコマンドを使用すると、現在設定されているすべてのブレークポイントが表示されます。\f2cont\fP コマンドは実行を継続します。 +\f2clear\fP ޥɤϡ\f2clear\ MyClass:45\fPפΤ褦ʹʸѤƥ֥졼ݥȤޤ\f2clear\fP Ѥ뤫ꤷʤǥޥɤѤȡꤵƤ뤹٤ƤΥ֥졼ݥȤɽޤ\f2cont\fP ޥɤϼ¹Ԥ³ޤ .LP -.RE .SS -ステップ実行 -.LP -.RS 3 - +ƥå׼¹ .LP .LP -\f2step\fP コマンドは、現在のスタックフレームまたは呼び出されたメソッド内で、次の行を実行します。\f2next\fP コマンドは、現在のスタックフレームの次の行を実行します。 +\f2step\fP ޥɤϡߤΥåե졼ޤϸƤӽФ줿᥽åǡιԤ¹Ԥޤ\f2next\fP ޥɤϡߤΥåե졼μιԤ¹Ԥޤ .LP -.RE .SS -例外 -.LP -.RS 3 - +㳰 .LP .LP -スローしているスレッドの呼び出しスタック上のどこにも catch 文がない場合に例外が発生すると、VM は通常、例外トレースを出力して終了します。ただし、\f3jdb\fP 環境で実行している場合は、例外が発生すると \f3jdb\fP に制御が戻ります。次に、\f3jdb\fP を使用して例外の原因を診断します。 +Ƥ륹åɤθƤӽФåΤɤˤ catch ʸʤ㳰ȯȡVM ̾㳰ȥ졼Ϥƽλޤ\f3jdb\fP ĶǼ¹ԤƤϡ㳰ȯ \f3jdb\fP 椬ޤˡ\f3jdb\fP Ѥ㳰θǤޤ .LP .LP -たとえば、「\f2catch java.io.FileNotFoundException\fP」または「\f2catch mypackage.BigTroubleException\fP」のように \f2catch\fP コマンドを使用すると、デバッグされたアプリケーションは、ほかの例外がスローされたときに停止します。例外が特定のクラス (またはサブクラス) のインスタンスの場合は、アプリケーションは例外がスローされた場所で停止します。 +ȤС\f2catch java.io.FileNotFoundException\fPפޤϡ\f2catch mypackage.BigTroubleException\fPפΤ褦 \f2catch\fP ޥɤѤȡǥХå줿ץꥱϡۤ㳰줿Ȥߤޤ㳰Υ饹 (ޤϥ֥饹) Υ󥹥󥹤ξϡץꥱ㳰줿ߤޤ .LP .LP -\f2ignore\fP コマンドを使うと、以前の \f2catch\fP コマンドの効果が無効になります。 +\f2ignore\fP ޥɤȤȡ \f2catch\fP ޥɤθ̵̤ˤʤޤ .LP .LP -\f2注:\fP\f2ignore\fP コマンドでは、デバッグされる VM は例外を無視せず、デバッガだけが例外を無視します。 +\f2: \fP\f2ignore\fP ޥɤǤϡǥХå VM 㳰̵뤻ǥХå㳰̵뤷ޤ .LP -.RE -.RE -.SH "コマンド行オプション" -.LP - +.SH "ޥɹԥץ" .LP .LP -コマンド行で Java アプリケーション起動ツールの代わりに \f3jdb\fP を使用する場合、\f3jdb\fP は、\f2\-D\fP、\f2\-classpath\fP、\f2\-X<option>\fP など、java コマンドと同じ数のオプションを受け入れます。 +ޥɹԤ Java ץꥱưġ \f3jdb\fP Ѥ硢\f3jdb\fP ϡ\f2\-D\fP\f2\-classpath\fP\f2\-X<option>\fP ʤɡjava ޥɤƱΥץޤ .LP .LP -\f3jdb\fP は、そのほかに次のオプションを受け入れます。 +\f3jdb\fP ϡΤۤ˼Υץޤ .LP .RS 3 .TP 3 \-help -ヘルプメッセージを表示します。 +إץåɽޤ .TP 3 \-sourcepath <dir1:dir2:...> -指定されたパスを使用して、ソースファイルを検索します。このオプションが指定されていない場合は、デフォルトパスの「.」が使われます。 +ꤵ줿ѥѤơե򸡺ޤΥץ󤬻ꤵƤʤϡǥեȥѥΡ.פȤޤ .TP 3 \-attach <address> -デフォルトの接続機構を使用して、すでに実行中の VM にデバッガを接続します。 +ǥեȤ³ѤơǤ˼¹ VM ˥ǥХå³ޤ .TP 3 \-listen <address> -実行中の VM が標準のコネクタを使って指定されたアドレスに接続するのを待機します。 +¹ VM ɸΥͥȤäƻꤵ줿ɥ쥹³ΤԵޤ .TP 3 \-listenany -実行中の VM が標準のコネクタを使って利用可能な任意のアドレスに接続するのを待機します。 +¹ VM ɸΥͥȤäѲǽǤդΥɥ쥹³ΤԵޤ .TP 3 \-launch -デバッグするアプリケーションを jdb の起動後ただちに起動します。このオプションによって、\f2run\fP コマンドを使用する必要がなくなります。デバッグするアプリケーションは、起動後、初期アプリケーションクラスがロードされる直前に停止します。その時点で、必要なブレークポイントを設定し、\f2cont\fP を使用して実行を継続できます。 +ǥХå륢ץꥱ jdb εư夿˵ưޤΥץˤäơ\f2run\fP ޥɤѤɬפʤʤޤǥХå륢ץꥱϡư塢ץꥱ󥯥饹ɤľߤޤλǡɬפʥ֥졼ݥȤꤷ\f2cont\fP ѤƼ¹Ԥ³Ǥޤ .TP 3 \-listconnectors -この VM で利用できるコネクタを一覧表示します。 + VM ѤǤ륳ͥɽޤ .TP 3 \-connect <connector\-name>:<name1>=<value1>,... -一覧表示された引数の値と指定のコネクタを使ってターゲット VM に接続します。 +ɽ줿ͤȻΥͥȤäƥå VM ³ޤ .TP 3 \-dbgtrace [flags] -jdb のデバッグ情報を出力します。 +jdb ΥǥХåϤޤ .TP 3 \-tclient -Java HotSpot(tm) VM (クライアント) 内でアプリケーションを実行します。 +Java HotSpot(tm) VM (饤) ǥץꥱ¹Ԥޤ .TP 3 \-tserver -Java HotSpot(tm) VM (サーバー) 内でアプリケーションを実行します。 +Java HotSpot(tm) VM (С) ǥץꥱ¹Ԥޤ .TP 3 \-Joption -jdb の実行に使用される Java 仮想マシンに \f2option\fP を渡します。(アプリケーション Java 仮想マシンに対するオプションは、\f3run\fP コマンドに渡される)。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +jdb μ¹Ԥ˻Ѥ Java ۥޥ \f2option\fP Ϥޤ(ץꥱ Java ۥޥФ륪ץϡ\f3run\fP ޥɤϤ)ȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP .LP -デバッガとデバッグを行う VM を接続するための代替機構に対して、その他のオプションがサポートされています。その他の接続オプションについては、Java Platform Debugger Architecture の +ǥХåȥǥХåԤ VM ³뤿صФơ¾Υץ󤬥ݡȤƤޤ¾³ץˤĤƤϡJava Platform Debugger Architecture .na -\f2ドキュメント\fP @ +\f2ɥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.html򻲾ȤƤ .LP .SS -デバッグ対象のプロセスに転送されるオプション +ǥХåоݤΥץž륪ץ .LP .RS 3 .TP 3 \-v \-verbose[:class|gc|jni] -冗長モードにします。 +Ĺ⡼ɤˤޤ .TP 3 \-D<name>=<value> -システムプロパティーを設定します。 +ƥץѥƥꤷޤ .TP 3 \-classpath <directories separated by ":"> -クラスを検索するディレクトリを一覧表示します。 +饹򸡺ǥ쥯ȥɽޤ .TP 3 \-X<option> -非標準ターゲット VM オプションです。 +ɸॿå VM ץǤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、java(1)、javah(1)、javap(1)、javadoc(1) +javac(1)java(1)javah(1)javap(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jhat.1 --- a/jdk/src/linux/doc/man/ja/jhat.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jhat.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jhat 1 "02 Jun 2010" +.TH jhat 1 "14 Apr 2011" .LP -.SH "名前" -jhat \- Java ヒープ解析ツール +.SH "̾" +jhat \- Java ҡײϥġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -58,88 +56,90 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 -.br +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 heap\-dump\-file -ブラウズ対象となる Java バイナリヒープダンプファイル。複数のヒープダンプを含むダンプファイルの場合、「foo.hprof#3」のようにファイル名の後に「#<number>」を付加することで、ファイル内の特定のダンプを指定できます。 -.SH "説明" +֥饦оݤȤʤ Java Хʥҡץץե롣ʣΥҡץפޤץեξ硢foo.hprof#3פΤ褦˥ե̾θˡ#<number>פղä뤳ȤǡեΥפǤޤ +.RE + +.LP +.SH "" .LP .LP -\f3jhat\fP コマンドは、java ヒープダンプファイルを解析し、Web サーバーを起動します。 jhat を使えば、お好みの Web ブラウザを使ってヒープダンプをブラウズできます。 jhat は、「ある既知のクラス「Foo」のすべてのインスタンスを表示する」といった、事前に設計されたクエリのほか、\f3OQL\fP (\f3O\fPbject \f3Q\fPuery \f3L\fPanguage) もサポートします。OQL のヘルプには、jhat によって表示される OQL ヘルプページからアクセスできます。デフォルトポートを使用する場合、OQL のヘルプは http://localhost:7000/oqlhelp/ で利用可能です。 +\f3jhat\fP ޥɤϡjava ҡץץեϤWeb Сưޤjhat ȤСߤ Web ֥饦Ȥäƥҡץפ֥饦Ǥޤjhat ϡ֤ΤΥ饹FooפΤ٤ƤΥ󥹥󥹤ɽפȤä߷פ줿Τۤ\f3OQL\fP (\f3O\fPbject \f3Q\fPuery \f3L\fPanguage) ⥵ݡȤޤOQL Υإפˤϡjhat ˤäɽ OQL إץڡ饢ǤޤǥեȥݡȤѤ硢OQL Υإפ http://localhost:7000/oqlhelp/ ѲǽǤ .LP .LP -Java のヒープダンプを生成するには、いくつかの方法があります。 +Java ΥҡץפˤϡĤˡޤ .LP .RS 3 .TP 2 o -jmap(1) の \-dump オプションを使って実行時にヒープダンプを取得する。 +jmap(1) \-dump ץȤäƼ¹Ի˥ҡץפ롣 .TP 2 o -jconsole(1) のオプションを使って +jconsole(1) ΥץȤä .na \f2HotSpotDiagnosticMXBean\fP @ .fi -http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean.html 経由で実行時にヒープダンプを取得する。 +http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean.html ͳǼ¹Ի˥ҡץפ롣 .TP 2 o -\-XX:+HeapDumpOnOutOfMemoryError VM オプションを指定すると、OutOfMemoryError のスロー時にヒープダンプが生成される。 +\-XX:+HeapDumpOnOutOfMemoryError VM ץꤹȡOutOfMemoryError Υ˥ҡץפ롣 .TP 2 o .na \f2hprof\fP @ .fi -http://java.sun.com/developer/technicalArticles/Programming/HPROF.html を使用する。 +http://java.sun.com/developer/technicalArticles/Programming/HPROF.html Ѥ롣 .RE .LP .LP -\f3注:\fP このツールは\f3試験的なもの\fPであり、将来の JDK のバージョンでは\f3利用できなくなる\fP可能性があります。 +\f3:\fP Υġ\f3Ūʤ\fPǤꡢ JDK ΥСǤ\f3ѤǤʤʤ\fPǽޤ .LP -.SH "オプション" +.SH "ץ" +.LP .RS 3 .TP 3 \-stack false/true -オブジェクト割り当て呼び出しスタックの追跡を無効にします。ヒープダンプ内で割り当てサイト情報が使用できない場合、このフラグを false に設定する必要があります。デフォルトは true です。 +֥ȳƸƤӽФåפ̵ˤޤҡץdzƥȾ󤬻ѤǤʤ硢Υե饰 false ꤹɬפޤǥեȤ true Ǥ .TP 3 \-refs false/true -オブジェクトへの参照の追跡を無効にします。デフォルトは true です。デフォルトでは、ヒープ内のすべてのオブジェクトについて、バックポインタ (指定されたオブジェクトをポイントしているオブジェクト。 参照者または受信参照とも呼ばれる) が計算されます。 +֥ȤؤλȤפ̵ˤޤǥեȤ true ǤǥեȤǤϡҡΤ٤ƤΥ֥ȤˤĤơХåݥ (ꤵ줿֥ȤݥȤƤ륪֥ȡȼԤޤϼȤȤƤФ) ׻ޤ .TP 3 \-port port\-number -jhat の HTTP サーバーのポートを設定します。デフォルトは 7000 です。 +jhat HTTP СΥݡȤꤷޤǥեȤ 7000 Ǥ .TP 3 \-exclude exclude\-file -「到達可能なオブジェクト」のクエリから除外すべきデータメンバーの一覧を含むファイルを指定します。たとえば、このファイルに \f2java.lang.String.value\fP が含まれていた場合、特定のオブジェクト「o」から到達可能なオブジェクトのリストを計算する際に、\f2java.lang.String.value\fP フィールドに関連する参照パスが考慮されなくなります。 +ãǽʥ֥ȡפΥ꤫٤ǡСΰޤեꤷޤȤСΥե \f2java.lang.String.value\fP ޤޤƤ硢Υ֥ȡoפãǽʥ֥ȤΥꥹȤ׻ݤˡ\f2java.lang.String.value\fP եɤ˴Ϣ뻲ȥѥθʤʤޤ .TP 3 \-baseline baseline\-dump\-file -ベースラインとなるヒープダンプを指定します。両方のヒープダンプ内で同じオブジェクト ID を持つオブジェクトは「新規ではない」としてマークされます。その他のオブジェクトは「新規」としてマークされます。これは、異なる 2 つのヒープダンプを比較する際に役立ちます。 +١饤ȤʤҡץפꤷޤξΥҡץƱ֥ ID ĥ֥ȤϡֿǤϤʤפȤƥޡޤ¾Υ֥ȤϡֿפȤƥޡޤϡۤʤ 2 ĤΥҡץפӤݤΩޤ .TP 3 \-debug int -このツールのデバッグレベルを設定します。0 は「デバッグ出力なし」を意味します。より大きな値を設定すると、より冗長なモードになります。 +ΥġΥǥХå٥ꤷޤ0 ϡ֥ǥХåϤʤפ̣ޤ礭ͤꤹȡĹʥ⡼ɤˤʤޤ .TP 3 -\-version\ -バージョン番号を報告したあと、終了します。 +\-version +Сֹ𤷤ȡλޤ .TP 3 -\-h\ -ヘルプメッセージを出力して終了します。 +\-h +إץåϤƽλޤ .TP 3 -\-help\ -ヘルプメッセージを出力して終了します。 +\-help +إץåϤƽλޤ .TP 3 -\-J<flag>\ -jhat が実行されている Java 仮想マシンに <flag> を渡します。たとえば、512M バイトの最大ヒープサイズを使用するには、\-J\-Xmx512m とします。 +\-J<flag> +jhat ¹ԤƤ Java ۥޥ <flag> ϤޤȤС512M ХȤκҡץѤˤϡ\-J\-Xmx512m Ȥޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" +.LP .RS 3 .TP 2 o @@ -150,9 +150,10 @@ .TP 2 o .na -\f2hprof \- ヒープおよび CPU プロファイリングツール\fP @ +\f2hprof \- ҡפ CPU ץե󥰥ġ\fP @ .fi http://java.sun.com/developer/technicalArticles/Programming/HPROF.html .RE -.RE + +.LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jinfo.1 --- a/jdk/src/linux/doc/man/ja/jinfo.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jinfo.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jinfo 1 "02 Jun 2010" +.TH jinfo 1 "14 Apr 2011" .LP -.SH "名前" -jinfo \- 構成情報 +.SH "̾" +jinfo \- .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -60,98 +58,100 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 option -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤ +.RE + +.LP .RS 3 .TP 3 pid -出力する構成情報のプロセス ID。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +Ϥ빽Υץ IDץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .RE + +.LP .RS 3 .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .RE + +.LP .RS 3 .TP 3 core -出力する構成情報のコアファイル。 +Ϥ빽Υե롣 .RE + +.LP .RS 3 .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 -.RE -.RS 3 -.TP 3 -server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 -.RE +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .RE .LP -.SH "説明" -.LP - -.LP -.LP -\f3jinfo\fP は、指定された Java プロセスやコアファイルまたはリモートデバッグサーバーの Java 構成情報を出力します。構成情報は、Java システムプロパティーと Java 仮想マシンのコマンド行フラグから構成されます。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 -.br - -.LP -.RS 3 - -.LP -jinfo \-J\-d64 \-sysprops pid -.RE -.LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。Windows 上の jinfo でサポートされているのは、実行中のプロセスの \-flag オプションだけです。\fP -.LP -.SH "オプション" -.LP - -.LP .RS 3 .TP 3 -<オプションなし> -コマンド行フラグを、システムプロパティー名と値のペアとともに出力します。 +server\-id +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ +.RE + +.LP +.SH "" +.LP +.LP +\f3jinfo\fP ϡꤵ줿 Java ץ䥳եޤϥ⡼ȥǥХåС Java ϤޤϡJava ƥץѥƥ Java ۥޥΥޥɹԥե饰鹽ޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ +.br +jinfo \-J\-d64 \-sysprops pid +.LP +.LP +\f3 \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \fP\f4PATH\fP\f3 ĶѿˤϡåȥץˤäƻѤ \fP\f4jvm.dll\fP\f3 ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ\fP +.LP +.LP +\f3򼨤ޤ \fP\f4set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP +.SH "ץ" +.LP +.RS 3 +.TP 3 +<ץʤ> +ޥɹԥե饰򡢥ƥץѥƥ̾ͤΥڥȤȤ˽Ϥޤ .br .TP 3 \-flag name -指定されたコマンド行フラグの名前と値を出力します。 +ꤵ줿ޥɹԥե饰̾ͤϤޤ .br .TP 3 \-flag [+|\-]name -指定されたブール型のコマンド行フラグを有効または無効にします。 +ꤵ줿֡뷿Υޥɹԥե饰ͭޤ̵ˤޤ .br .TP 3 \-flag name=value -指定されたコマンド行フラグを指定された値に設定します。 +ꤵ줿ޥɹԥե饰ꤵ줿ͤꤷޤ .br .TP 3 \-flags -JVM に渡されるコマンド行フラグをペアで出力します。 +JVM Ϥ륳ޥɹԥե饰ڥǽϤޤ .br .TP 3 \-sysprops -Java システムプロパティーを名前と値のペアとして出力します。 +Java ƥץѥƥ̾ͤΥڥȤƽϤޤ .br .TP 3 \-h -ヘルプメッセージを出力します。 +إץåϤޤ .TP 3 \-help -ヘルプメッセージを出力します。 +إץåϤޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jmap.1 --- a/jdk/src/linux/doc/man/ja/jmap.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jmap.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jmap 1 "02 Jun 2010" +.TH jmap 1 "14 Apr 2011" .LP -.SH "名前" -jmap \- メモリーマップ +.SH "̾" +jmap \- ꡼ޥå .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -60,46 +58,39 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 option -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤ .TP 3 pid -印刷するメモリーマップのプロセス ID。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +꡼ޥåפΥץ IDץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .br .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .br .TP 3 core -印刷するメモリーマップのコアファイル。 +꡼ޥåפΥե롣 .br .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .br .TP 3 server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ .br .RE .LP -.SH " 説明" -.LP - +.SH "" .LP .LP -\f3jmap\fP は、指定されたプロセスやコアファイルまたはリモートデバッグサーバーの、共用オブジェクトメモリーマップまたはヒープメモリーの詳細を印刷します。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 -.LP -.RS 3 - +\f3jmap\fP ϡꤵ줿ץ䥳եޤϥ⡼ȥǥХåСΡѥ֥ȥ꡼ޥåפޤϥҡץ꡼ξܺ٤ޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ .LP .nf \f3 @@ -108,76 +99,66 @@ .fl \fP .fi -.RE .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。\fP +.LP +\f3: Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \fP\f4PATH\fP\f3 ĶѿˤϡåȥץˤäƻѤ \fP\f4jvm.dll\fP\f3 ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ\fP +.LP +.LP +\f3򼨤ޤ \fP\f4set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP .br .LP -Windows プラットフォーム上で使用可能な唯一の jmap 形式は、次のとおりです。 -.RS 3 - -.LP -jmap \-dump:<\f2dump\-options\fP> pid -.RE -および -.RS 3 - -.LP -jmap \-histo[:live] pid -.RE -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -<オプションなし> -オプションを使用しない場合、\f3jmap\fP は共用オブジェクトマッピングを印刷します。ターゲット VM にロードされた共用オブジェクトごとに、開始アドレス、マッピングのサイズ、および共用オブジェクトファイルのフルパスが印刷されます。これは、Solaris \f3pmap\fP ユーティリティーと類似しています。 +<ץʤ> +ץѤʤ硢jmap ϶ѥ֥ȥޥåԥ󥰤ޤå VM ˥ɤ줿ѥ֥ȤȤˡϥɥ쥹ޥåԥ󥰤ΥӶѥ֥ȥեΥեѥޤϡSolaris \f3pmap\fP 桼ƥƥƤޤ .br .TP 3 \-dump:[live,]format=b,file=<filename> -Java ヒープを hprof バイナリ形式で filename にダンプします。\f2live\fP サブオプションは省略可能です。これが指定された場合、ヒープ内で生存中のオブジェクトのみがダンプされます。ヒープダンプを参照するには、生成されたファイルを jhat(1) (Java Heap Analysis Tool) を使って読み取ります。 +Java ҡפ hprof Хʥ filename ˥פޤ\f2live\fP ֥ץϾάǽǤ줬ꤵ줿硢ҡ¸Υ֥ȤΤߤפޤҡץפ򻲾Ȥˤϡ줿ե jhat(1) (Java Heap Analysis Tool) Ȥäɤ߼ޤ .br .TP 3 \-finalizerinfo -ファイナライズを待っているオブジェクトに関する情報を出力します。 +եʥ饤ԤäƤ륪֥Ȥ˴ؤϤޤ .br .TP 3 \-heap -ヒープサマリーを印刷します。使用される GC アルゴリズム、ヒープ構成、および世代ごとのヒープ使用率が印刷されます。 +ҡץޥ꡼ޤѤ GC 르ꥺࡢҡ׹头ȤΥҡ׻Ψޤ .br .TP 3 \-histo[:live] -ヒープのヒストグラムを印刷します。Java クラスごとに、オブジェクトの数、バイト単位でのメモリーサイズ、および完全修飾クラス名が印刷されます。VM 内部クラス名は、「*」の接頭辞を付けて印刷されます。\f2live\fP サブオプションが指定された場合、生存中のオブジェクトのみがカウントされます。 +ҡפΥҥȥޤJava 饹Ȥˡ֥ȤοХñ̤ǤΥ꡼Ӵ饹̾ޤVM 饹̾ϡ*פƬդưޤ\f2live\fP ֥ץ󤬻ꤵ줿硢¸Υ֥ȤΤߤȤޤ .br .TP 3 \-permstat -Permanent 世代の Java ヒープの、クラスローダー関連の統計データを印刷します。クラスローダーごとに、その名前、状態、アドレス、親クラスローダー、およびクラスローダーがロードしたクラスの数とサイズが印刷されます。さらに、intern された文字列の数とサイズも出力されます。 +Permanent Java ҡפΡ饹Ϣץǡޤ饹Ȥˡ̾֡ɥ쥹ƥ饹ӥ饹ɤ饹οȥޤˡintern 줿ʸοȥϤޤ .br .TP 3 \-F -強制 (Force)。pid が応答しない場合に、jmap \-dump または jmap \-histo オプションとともに使用します。このモードでは、\f2live\fP サブオプションはサポートされません。 + (Force)pid ʤˡjmap \-dump ޤ jmap \-histo ץȤȤ˻ѤޤΥ⡼ɤǤϡ\f2live\fP ֥ץϥݡȤޤ .br .TP 3 \-h -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-help -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-J<flag> -jmap が実行されている Java 仮想マシンに <flag> を渡します。 +jmap ¹ԤƤ Java ۥޥ <flag> Ϥޤ .br .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jps.1 --- a/jdk/src/linux/doc/man/ja/jps.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jps.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,43 +19,41 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jps 1 "02 Jun 2010" +.TH jps 1 "14 Apr 2011" .LP -.SH "名前" -jps \- Java 仮想マシンプロセスステータスツール +.SH "̾" +jps \- Java ۥޥץơġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -ホスト識別子 +ۥȼ̻ .TP 2 o -出力形式 +Ϸ .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -67,79 +65,70 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 hostid -プロセスレポートを生成するホストのホスト識別子。\f2hostid\fP には、通信プロトコル、ポート番号、実装に固有な他のデータを指定したオプションコンポーネントを含めることができます。 +ץݡȤۥȤΥۥȼ̻ҡ\f2hostid\fP ˤϡ̿ץȥ롢ݡֹ桢˸ͭ¾Υǡꤷץ󥳥ݡͥȤޤ뤳ȤǤޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jps\fP ツールは、ターゲットシステム上で計測された HotSpot Java 仮想マシン (JVM) を一覧表示します。このツールで表示できるレポート情報は、アクセス権を持った JVM に関するものに限定されます。 +\f3jps\fP ġϡåȥƥǷ¬줿 HotSpot Java ۥޥ (JVM) ɽޤΥġɽǤݡȾϡä JVM ˴ؤΤ˸ꤵޤ .LP .LP -\f2hostid\fP を指定せずに \f3jps\fP を実行した場合、ローカルホストで計測された JVM が検索されます。\f2hostid\fP を指定して起動した場合、指定されたプロトコルとポートを使用して、指定されたホスト上の JVM を検索します。\f3jstatd\fP プロセスがターゲットホスト上で実行されていると想定されます。 +\f2hostid\fP ꤻ \f3jps\fP ¹Ԥ硢ۥȤǷ¬줿 JVM ޤ\f2hostid\fP ꤷƵư硢ꤵ줿ץȥȥݡȤѤơꤵ줿ۥȾ JVM 򸡺ޤ\f3jstatd\fP ץåȥۥȾǼ¹ԤƤꤵޤ .LP .LP -\f3jps\fP コマンドは、ターゲットシステムで計測された各 JVM について、ローカル VM 識別子、つまり \f2lvmid\fP をレポートします。\f3lvmid\fP は、必須ではありませんが、一般的には JVM プロセスに対するオペレーティングシステムのプロセス識別子です。オプションを指定しない場合、\f3jps\fP によって、各 Java アプリケーションの \f2lvmid\fP が一覧表示され、それぞれにアプリケーションのクラス名または JAR ファイル名が簡単な形式で示されます。この簡単な形式のクラス名と JAR ファイル名では、クラスのパッケージ情報または JAR ファイルパス情報が省略されています。 +\f3jps\fP ޥɤϡåȥƥǷ¬줿 JVM ˤĤơ VM ̻ҡĤޤ \f2lvmid\fP ݡȤޤ\f3lvmid\fP ϡɬܤǤϤޤ󤬡Ūˤ JVM ץФ륪ڥ졼ƥ󥰥ƥΥץ̻ҤǤץꤷʤ硢\f3jps\fP ˤäơ Java ץꥱ \f2lvmid\fP ɽ졢줾˥ץꥱΥ饹̾ޤ JAR ե̾ñʷǼޤδñʷΥ饹̾ JAR ե̾Ǥϡ饹Υѥåޤ JAR եѥ󤬾άƤޤ .LP .LP -\f3jps\fP コマンドは、\f3Java\fP 起動ツールを使用して、\f2main\fP メソッドに渡されるクラス名と引数を検索します。独自の起動ツールを使用してターゲット JVM を起動した場合は、\f2main\fP メソッドに渡されるクラス名 (または JAR ファイル名) と引数は利用できません。この場合、\f3jps\fP コマンドは、main メソッドへ渡されるクラス名 (または JAR ファイル名) と引数に対して、文字列 \f2Unknown\fP を出力します。 +\f3jps\fP ޥɤϡ\f3Java\fP ưġѤ \f2main\fP ᥽åɤϤ륯饹̾Ȱ򸡺ޤȼεưġѤƥå JVM ưϡ \f2main\fP ᥽åɤϤ륯饹̾ (ޤ JAR ե̾) ȰѤǤޤ󡣤ξ硢\f3jps\fP ޥɤϡmain ᥽åɤϤ륯饹̾ (ޤ JAR ե̾) ȰФơʸ \f2Unknown\fP Ϥޤ .LP .LP -\f3jps\fP コマンドで生成される JVM のリストは、このコマンドを実行する主体に与えられたアクセス権に基づき、制限される場合があります。このコマンドは、オペレーティングシステム独自のアクセス制御機構による決定に基づいて、主体にアクセス権が与えられている JVM だけを一覧表示します。 +\f3jps\fP ޥɤ JVM ΥꥹȤϡΥޥɤ¹ԤΤͿ줿˴Ť¤礬ޤΥޥɤϡڥ졼ƥ󥰥ƥȼΥ浡ˤ˴ŤơΤ˥ͿƤ JVM ɽޤ .LP .LP -\f3注:\fP このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3:\fP Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jps\fP コマンドでは、コマンドの出力を変更するオプションが多数サポートされています。将来、これらのオプションは、変更または廃止される可能性があります。 +\f3jps\fP ޥɤǤϡޥɤνϤѹ륪ץ¿ݡȤƤޤ衢Υץϡѹޤѻߤǽޤ .LP .RS 3 .TP 3 \-q -ローカル VM 識別子のリストだけを生成するように、\f2main\fP メソッドに渡されるクラス名、JAR ファイル名、および引数の出力を制御します。 +饹̾JAR ե̾ \f2main\fP ᥽åɤϤ줿νϤ VM ̻ҤΰΤߤޤ .TP 3 \-m -main メソッドに渡される引数を出力します。この出力は、組み込まれている JVM に対して null になることもあります。 +main ᥽åɤϤϤޤνϤϡȤ߹ޤƤ JVM Ф null ˤʤ뤳Ȥ⤢ޤ .TP 3 \-l -アプリケーションの主要なクラスのフルパッケージ名、またはアプリケーションの JAR ファイルへのフルパス名を出力します。 +ץꥱμפʥ饹Υեѥå̾ޤϥץꥱ JAR եؤΥեѥ̾Ϥޤ .TP 3 \-v -JVM に渡される引数を出力します。 +JVM ϤϤޤ .TP 3 \-V -フラグファイル (.hotspotrc ファイルまたは \-XX:Flags=<\f2filename\fP> の引数で指定されたファイル) を通じて JVM に渡される引数を出力します。 +ե饰ե (.hotspotrc եޤ \-XX:Flags=<\f2filename\fP> ΰǻꤵ줿ե) ̤ JVM ϤϤޤ .TP 3 \-Joption -\f3jps\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f3jps\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .RE .LP .SS -ホスト識別子 -.LP -.RS 3 - +ۥȼ̻ .LP .LP -ホスト識別子、つまり \f2hostid\fP は、ターゲットシステムを示す文字列です。\f2hostid\fP 文字列の構文の大部分は、URI の構文に対応しています。 +ۥȼ̻ҡĤޤ \f2hostid\fP ϡåȥƥ򼨤ʸǤ\f2hostid\fP ʸιʸʬϡURI ιʸбƤޤ .LP .nf \f3 @@ -155,26 +144,23 @@ .RS 3 .TP 3 protocol -通信プロトコルです。\f2protocol\fP が省略され、\f2hostname\fP が指定されていない場合、デフォルトのプロトコルが、プラットフォーム固有の最適化されたローカルプロトコルになります。\f2protocol\fP が省略され、\f2hostname\fP が指定されている場合は、デフォルトプロトコルは \f3rmi\fP になります。 +̿ץȥǤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤʤ硢ǥեȤΥץȥ뤬ץåȥեͭκŬ줿ץȥˤʤޤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤϡǥեȥץȥ \f3rmi\fP ˤʤޤ .TP 3 hostname -ターゲットホストを示すホスト名または IP アドレスです。\f2hostname\fP が省略されている場合は、ターゲットホストはローカルホストになります。 +åȥۥȤ򼨤ۥ̾ޤ IP ɥ쥹Ǥ\f2hostname\fP άƤϡåȥۥȤϥۥȤˤʤޤ .TP 3 port -リモートサーバーと通信するためのデフォルトポートです。\f2hostname\fP が省略されているか、\f2protocol\fP で最適化されたローカルプロトコルが指定されている場合、\f2port\fP は無視されます。そうでなければ、\f2port\fP パラメータの扱いは、実装によって異なります。デフォルトの \f3rmi\fP プロトコルの場合、\f2port\fP は、リモートホスト上の rmiregistry のポート番号を示します。\f2port\fP が省略され、\f2protocol\fP で \f3rmi\fP が指定されている場合、デフォルトの rmiregistry ポート (1099) が使用されます。 +⡼ȥС̿뤿ΥǥեȥݡȤǤ\f2hostname\fP άƤ뤫\f2protocol\fP ǺŬ줿ץȥ뤬ꤵƤ硢\f2port\fP ̵뤵ޤǤʤС\f2port\fP ѥ᡼ΰϡˤäưۤʤޤǥեȤ \f3rmi\fP ץȥξ硢\f2port\fP ϡ⡼ȥۥȾ rmiregistry Υݡֹ򼨤ޤ\f2port\fP ά졢\f2protocol\fP \f3rmi\fP ꤵƤ硢ǥեȤ rmiregistry ݡ (1099) Ѥޤ .TP 3 servername -このパラメータの扱いは、実装によって異なります。最適化されたローカルプロトコルの場合、このフィールドは無視されます。\f3rmi\fP プロトコルの場合、このパラメータは、リモートホスト上の RMI リモートオブジェクトの名前を示す文字列になります。jstatd(1) コマンドについては、\f3\-n\fP オプションを参照してください。 +Υѥ᡼ΰϡˤäưۤʤޤŬ줿ץȥξ硢Υեɤ̵뤵ޤ\f3rmi\fP ץȥξ硢Υѥ᡼ϡ⡼ȥۥȾ RMI ⡼ȥ֥Ȥ̾򼨤ʸˤʤޤjstatd(1) ޥɤˤĤƤϡ\f3\-n\fP ץ򻲾ȤƤ .RE .LP -.RE -.SH "出力形式" -.LP - +.SH "Ϸ" .LP .LP -\f3jps\fP コマンドの出力は、次のパターンに従います。 +\f3jps\fP ޥɤνϤϡΥѥ˽ޤ .LP .nf \f3 @@ -188,22 +174,20 @@ .LP .LP -すべての出力トークンは空白で区切ります。\f2arg\fP の中で空白を使用すると、実際の定位置パラメータに引数をマッピングしようとするときに、あいまいになります。 +٤Ƥνϥȡ϶Ƕڤޤ\f2arg\fP ǶѤȡºݤ֥ѥ᡼˰ޥåԥ󥰤褦ȤȤˡޤˤʤޤ .br .br -\f3注\fP: 将来のリリースでこの形式は変更される可能性があるため、\f3jps\fP 出力を解析するスクリプトは作成しないことをお勧めします。\f3jps\fP 出力を解析するスクリプトを作成すると、このツールの将来のリリースで、作成したスクリプトを変更する必要が予測されます。 +\f3\fP: Υ꡼Ǥηѹǽ뤿ᡢ\f3jps\fP νϤϤ륹ץȤϺʤȤ򤪴ᤷޤ\f3jps\fP ϤϤ륹ץȤȡΥġξΥ꡼ǡץȤѹɬפͽ¬ޤ .br .LP -.SH "例" -.LP - +.SH "" .LP .LP -この節では、\f3jps\fP コマンドの例を示します。 +Ǥϡ\f3jps\fP ޥɤ򼨤ޤ .LP .LP -ローカルホスト上で計測された JVM を一覧表示する場合: +ۥȾǷ¬줿 JVM ɽ: .LP .nf \f3 @@ -228,10 +212,10 @@ .LP .LP -リモートホスト上で計測された JVM を一覧表示する場合: +⡼ȥۥȾǷ¬줿 JVM ɽ: .LP .LP -この例では、\f3jstat\fP サーバーと、その内部 RMI レジストリまたは別の外部 \f3rmiregistry\fP プロセスのいずれかとが、リモートホストのデフォルトポート (ポート 1099) で実行されていると想定しています。また、ローカルホストが、リモートホストへの有効なアクセス権を持っていることも想定しています。この例には、\f2\-l\fP オプションも含まれ、クラス名または JAR ファイル名を詳細な形式で出力します。 +Ǥϡ\f3jstat\fP Сȡ RMI 쥸ȥޤ̤γ \f3rmiregistry\fP ץΤ줫Ȥ⡼ȥۥȤΥǥեȥݡ (ݡ 1099) Ǽ¹ԤƤꤷƤޤޤۥȤ⡼ȥۥȤؤͭʥäƤ뤳ȤꤷƤޤˤϡ\f2\-l\fP ץޤޤ졢饹̾ޤ JAR ե̾ܺ٤ʷǽϤޤ .LP .nf \f3 @@ -240,7 +224,7 @@ .br .fl -3002 /opt/jdk1.5.0/demo/jfc/Java2D/Java2Demo.JAR +3002 /opt/jdk1.7.0/demo/jfc/Java2D/Java2Demo.JAR .br .fl @@ -252,10 +236,10 @@ .LP .LP -RMI レジストリにデフォルトではないポートを使用して、リモートホスト上で計測された JVM を一覧表示する場合: +RMI 쥸ȥ˥ǥեȤǤϤʤݡȤѤơ⡼ȥۥȾǷ¬줿 JVM ɽ: .LP .LP -この例では、内部 RMI レジストリがポート 2002 にバインドされた \f3jstatd\fP サーバーが、リモートホスト上で実行していると想定しています。また、\f2\-m\fP オプションを使用して、一覧表示されたそれぞれの Java アプリケーションの \f2main\fP メソッドに渡される引数を組み込んでいます。 +Ǥϡ RMI 쥸ȥ꤬ݡ 2002 ˥Хɤ줿 \f3jstatd\fP С⡼ȥۥȾǼ¹ԤƤꤷƤޤޤ\f2\-m\fP ץѤơɽ줿줾 Java ץꥱ \f2main\fP ᥽åɤϤȤ߹Ǥޤ .LP .nf \f3 @@ -264,7 +248,7 @@ .br .fl -3002 /opt/jdk1.5.0/demo/jfc/Java2D/Java2Demo.JAR +3002 /opt/jdk1.7.0/demo/jfc/Java2D/Java2Demo.JAR .br .fl @@ -273,21 +257,21 @@ .fi .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jstat(1) \- Java 仮想マシン統計データ監視ツール」 +jstat(1) \- Java ۥޥץǡƻġ .TP 2 o -「jstatd(1) \- 仮想マシン jstat デーモン」 +jstatd(1) \- ۥޥ jstat ǡ .TP 2 o -「rmiregistry(1) \- Java リモートオブジェクトレジストリ」 +rmiregistry(1) \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jrunscript.1 --- a/jdk/src/linux/doc/man/ja/jrunscript.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jrunscript.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,40 +19,38 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jrunscript 1 "02 Jun 2010" +.TH jrunscript 1 "14 Apr 2011" .LP -.SH "名前" -jrunscript \- コマンド行スクリプトシェル +.SH "̾" +jrunscript \- ޥɹԥץȥ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -引数 + .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -62,85 +60,77 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 arguments -引数を使用する場合、オプションまたはコマンド名の直後に記述してください。 +Ѥ硢ץޤϥޥ̾ľ˵ҤƤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jrunscript\fP はコマンド行スクリプトシェルです。 jrunscript は、対話型 (読み取り \- 評価 \- 出力) モードとバッチ (\-f オプション) モードの両方のスクリプト実行をサポートします。これはスクリプト言語に依存しないシェルです。デフォルトの使用言語は JavaScript ですが、\-l オプションを使えばほかの言語も指定できます。jrunscript は、Java とスクリプト言語との通信によって「探求的なプログラミング」スタイルをサポートします。 +\f3jrunscript\fP ϥޥɹԥץȥǤjrunscript ϡ÷ (ɤ߼ \- ɾ \- ) ⡼ɤȥХå (\-f ץ) ⡼ɤξΥץȼ¹Ԥ򥵥ݡȤޤϥץȸ˰¸ʤǤǥեȤλѸ JavaScript Ǥ\-l ץȤФۤθǤޤjrunscript ϡJava ȥץȸȤ̿ˤäơõŪʥץߥ󥰡ץ򥵥ݡȤޤ .LP .LP -\f3注:\fP このツールは\f3試験的なもの\fPであり、将来の JDK のバージョンでは\f3利用できなくなる\fP可能性があります。 +\f3:\fP Υġ\f3Ūʤ\fPǤꡢ JDK ΥСǤ\f3ѤǤʤʤ\fPǽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-classpath path -スクリプトからのアクセス対象となるユーザーの .class ファイルの検索場所を指定します。 +ץȤΥоݤȤʤ桼 .class եθꤷޤ .TP 3 \-cp path -\-classpath \f2path\fP と同義です。 +\-classpath \f2path\fP ƱǤ .TP 3 \-Dname=value -Java のシステムプロパティーを設定します。 +Java Υƥץѥƥꤷޤ .TP 3 \-J<flag> -jrunscript が実行されている Java 仮想マシンに <flag> を渡します。 +jrunscript ¹ԤƤ Java ۥޥ <flag> Ϥޤ .TP 3 \-l language -指定されたスクリプト言語を使用します。デフォルトでは JavaScript が使用されます。ほかのスクリプト言語を使用するには、対応するスクリプトエンジンの JAR ファイルも指定する必要があります。 それには、\-cp、\-classpath のいずれかのオプションを使用します。 +ꤵ줿ץȸѤޤǥեȤǤ JavaScript ѤޤۤΥץȸѤˤϡб륹ץȥ󥸥 JAR եꤹɬפޤˤϡ\-cp\-classpath Τ줫ΥץѤޤ .TP 3 \-e script -指定されたスクリプトを評価します。このオプションを使えば、コマンド行にすべてが指定された「1 行」スクリプトを実行できます。 +ꤵ줿ץȤɾޤΥץȤСޥɹԤˤ٤Ƥꤵ줿1 ԡץץȤ¹ԤǤޤ .TP 3 \-encoding encoding -スクリプトファイルの読み取り時に使用する文字エンコーディングを指定します。 +ץȥեɤ߼˻Ѥʸ󥳡ǥ󥰤ꤷޤ .TP 3 \-f script\-file -指定されたスクリプトファイルを評価します (バッチモード)。 +ꤵ줿ץȥեɾޤ (Хå⡼) .TP 3 \-f \- -標準入力からスクリプトを読み取り、それを評価します (対話型モード)。 +ɸϤ饹ץȤɤ߼ꡢɾޤ (÷⡼) .TP 3 \-help\ -ヘルプメッセージを出力して終了します。 +إץåϤƽλޤ .TP 3 \-?\ -ヘルプメッセージを出力して終了します。 +إץåϤƽλޤ .TP 3 \-q\ -利用可能なすべてのスクリプトエンジンを一覧表示したあと、終了します。 +Ѳǽʤ٤ƤΥץȥ󥸥ɽȡλޤ .RE .LP -.SH "引数" +.SH "" .LP .LP -[arguments...] が存在していて、かつ \f3\-e\fP、\f3\-f\fP のいずれのオプションも使用されなかった場合、最初の引数がスクリプトファイルとなり、他の引数が存在する場合はスクリプト引数として渡されます。[arguments..] が使用され、かつ \f3\-e\fP、\f3\-f\fP のいずれかのオプションが使用された場合、すべての [arguments..] がスクリプト引数として渡されます。[arguments..]、\f3\-e\fP、\f3\-f\fP がどれも存在しなかった場合は、対話型モードが使用されます。スクリプトからスクリプト引数を使用するには、「arguments」という名前の String 配列型のエンジン変数を使用します。 -.LP -.SH "例" +[arguments...] ¸ߤƤơ \f3\-e\fP\f3\-f\fP ΤΥץѤʤä硢ǽΰץȥեȤʤꡢ¾ΰ¸ߤϥץȰȤϤޤ[arguments..] ȡ\f3\-e\fP ޤ \f3\-f\fP ѤƤ硢٤Ƥ [arguments..] ץȰȤϤޤ[arguments..]\f3\-e\fP\f3\-f\fP ɤ¸ߤʤäϡ÷⡼ɤѤޤץȤ饹ץȰѤˤϡargumentsפȤ̾ String 󷿤Υ󥸥ѿѤޤ .LP -\f3インラインスクリプトの実行\fP +.SH "" .LP -.RS 3 - +.SS +饤󥹥ץȤμ¹ .LP .nf \f3 @@ -151,13 +141,10 @@ .fl \fP .fi -.RE .LP -\f3指定された言語を使用し、指定されたスクリプトファイルを評価する\fP -.LP -.RS 3 - +.SS +ꤵ줿Ѥꤵ줿ץȥեɾ .LP .nf \f3 @@ -166,42 +153,42 @@ .fl \fP .fi -.RE .LP -\f3対話型モード\fP -.LP -.RS 3 - +.SS +÷⡼ .LP .nf \f3 .fl jrunscript .fl -js>print('hello world'); +js> print('Hello World\\n'); +.fl +Hello World .fl -hello world +js> 34 + 55 .fl -js>34 + 55 +89.0 .fl -89 +js> t = new java.lang.Thread(function() { print('Hello World\\n'); }) +.fl +Thread[Thread\-0,5,main] .fl -js> thread(function() { print('hello world'); } +js> t.start() .fl -hello world +js> Hello World +.fl + .fl js> .fl \fP .fi -.RE .LP -\f3スクリプト引数を指定してスクリプトファイルを実行する\fP -.LP -.RS 3 - +.SS +ץȰꤷƥץȥե¹Ԥ .LP .nf \f3 @@ -210,13 +197,12 @@ .fl \fP .fi -.RE .LP -test.js が実行対象となるスクリプトファイルであり、arg1、arg2、および arg3 はスクリプト引数としてスクリプトに渡されます。スクリプトは「arguments」配列を使ってこれらにアクセスできます。 -.SH "関連項目" +test.js ¹оݤȤʤ륹ץȥեǤꡢarg1arg2 arg3 ϥץȰȤƥץȤϤޤץȤϡargumentsȤäƤ˥Ǥޤ +.SH "Ϣ" .LP .LP -JavaScript が使用される場合、jrunscript は、最初のユーザー定義スクリプトを評価する前に、いくつかの組み込み関数や組み込みオブジェクトを初期化します。これらの JavaScript 組み込み機能については、jsdocs を参照してください。 +JavaScript Ѥ硢jrunscript ϡǽΥ桼ץȤɾˡĤȤ߹ߴؿȤ߹ߥ֥Ȥޤ JavaScript Ȥ߹ߵǽˤĤƤϡjsdocs 򻲾ȤƤ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jsadebugd.1 --- a/jdk/src/linux/doc/man/ja/jsadebugd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jsadebugd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,31 +19,29 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jsadebugd 1 "02 Jun 2010" +.TH jsadebugd 1 "14 Apr 2011" .LP -.SH "名前" -jsadebugd \- サービスアビリティーエージェントデバッグデーモン +.SH "̾" +jsadebugd \- ӥӥƥȥǥХåǡ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -55,14 +53,12 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 pid -デバッグサーバーが接続するプロセスのプロセス ID です。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。単一のプロセスに接続できるデバッグサーバーのインスタンスは、1 つに制限されます。 +ǥХåС³ץΥץ ID Ǥץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) ѤޤñΥץ³ǤǥХåСΥ󥹥󥹤ϡ1 Ĥ¤ޤ .RE .LP @@ -74,37 +70,32 @@ .LP .RS 3 .TP 3 -コアダンプの作成元になる Java 実行可能ファイルです。 +פκˤʤ Java ¹ԲǽեǤ .RE .LP .RS 3 .TP 3 core -デバッグサーバーを接続するコアファイルです。 +ǥХåС³륳եǤ .RE .LP .RS 3 .TP 3 server\-id -複数のデバッグサーバーが同一のマシン上で実行している場合に必要になる、オプション固有の ID です。この ID は、リモートクライアントが、接続先のデバッグサーバーを特定するために使用する必要があります。この ID は、単一のマシン内で一意でなければなりません。 +ʣΥǥХåСƱΥޥǼ¹ԤƤɬפˤʤ롢ץͭ ID Ǥ ID ϡ⡼ȥ饤Ȥ³ΥǥХåСꤹ뤿˻Ѥɬפޤ ID ϡñΥޥǰդǤʤФʤޤ .RE .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3jsadebugd\fP は、Java プロセスまたはコアファイルに接続し、デバッグサーバーとして機能します。jstack(1)、jmap(1)、および jinfo(1) などのリモートクライアントは、Java Remote Method Invocation (RMI) を使用しているサーバーに接続できます。\f2jsadebugd\fP を起動する前に、次のように指定して +\f3jsadebugd\fP ϡJava ץޤϥե³ǥХåСȤƵǽޤjstack(1)jmap(1) jinfo(1) ʤɤΥ⡼ȥ饤ȤϡJava Remote Method Invocation (RMI) ѤƤ륵С³Ǥޤ \f2jsadebugd\fP ưˡΤ褦ˤ .na \f2rmiregistry\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi を起動する必要があります。 -.LP -.RS 3 - +http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi ưɬפޤ .LP .nf \f3 @@ -113,16 +104,18 @@ .fl \fP .fi -.RE .LP .LP -ここで、\f2$JAVA_HOME\fP は、JDK のインストールディレクトリです。rmiregistry が起動していない場合、jsadebugd は標準 (1099) ポートの rmiregistry を内部で起動します。デバッグサーバーは、SIGINT を送信する (Ctrl+C を押す) ことにより停止できます。 +ǡ \f2$JAVA_HOME\fP JDK 󥹥ȡǥ쥯ȥǤrmiregistry ưƤʤ硢jsadebugd ɸ (1099) ݡȤ rmiregistry ǵưޤǥХåСϡSIGINT (Ctrl+C 򲡤) ȤˤߤǤޤ .LP .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。 jsadebugd は、現時点では、Windows プラットフォームでは使用できません。\fP +\f3\fP \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \f2PATH\fP ĶѿˤϡåȥץˤäƻѤ \f2jvm.dll\fP ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ +.LP .LP -.SH "関連項目" +򼨤ޤ \f2set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jstack.1 --- a/jdk/src/linux/doc/man/ja/jstack.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jstack.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,41 +19,39 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstack 1 "02 Jun 2010" +.TH jstack 1 "14 Apr 2011" .LP -.SH "名前" -jstack \- スタックトレース +.SH "̾" +jstack \- åȥ졼 .br .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .br .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .TP 2 o -既知のバグ +ΤΥХ .br .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -67,51 +65,44 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .LP -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。オプションを参照してください。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤץ򻲾ȤƤ .LP .RS 3 .TP 3 pid -印刷するスタックトレースのプロセス ID です。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +륹åȥ졼Υץ ID Ǥץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .RE .LP .RS 3 .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .br .TP 3 core -印刷するスタックトレースのコアファイルです。 +륹åȥ졼ΥեǤ .br .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .br .TP 3 server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ .RE .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3jstack\fP は、指定された Java プロセスやコアファイルまたはリモートデバッグサーバーに対する Java スレッドの Java スタックトレースを印刷します。Java フレームごとに、フルクラス名、メソッド名、「bci」(バイトコードインデックス)、および行番号 (利用可能な場合) が印刷されます。\-m オプションを使用すると、jstack は、すべてのスレッドの Java フレームとネイティブフレームの両方を、「pc」(プログラムカウンタ) とともに印刷します。ネイティブフレームごとに、「pc」にもっとも近いネイティブシンボル (利用可能な場合) が印刷されます。C++ 分解名は分解解除されません。C++ 名を分解解除するには、このコマンドの出力を \f3c++filt\fP にパイプします。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 +\f3jstack\fP ϡꤵ줿 Java ץ䥳եޤϥ⡼ȥǥХåСФ Java åɤ Java åȥ졼ޤJava ե졼ऴȤˡե륯饹̾᥽å̾bci(Хȥɥǥå)ӹֹ (Ѳǽʾ) ޤ\-m ץѤȡjstack ϡ٤ƤΥåɤ Java ե졼ȥͥƥ֥ե졼ξ򡢡pc(ץ५) ȤȤ˰ޤͥƥ֥ե졼ऴȤˡpcפˤäȤᤤͥƥ֥ܥ (Ѳǽʾ) ޤC++ ʬ̾ʬޤC++ ̾ʬˤϡΥޥɤνϤ \f3c++filt\fP ˥ѥפޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ .br .LP -.RS 3 - -.LP .nf \f3 .fl @@ -119,51 +110,43 @@ .fl \fP .fi -.RE .LP .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。Windows プラットフォーム上で使用可能な唯一の jstack 形式は、次のとおりです。\fP +\f3\fP \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \f2PATH\fP ĶѿˤϡåȥץˤäƻѤ \f2jvm.dll\fP ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ +.LP .LP -.nf -\f3 -.fl -\fP\f3 jstack [\-l] pid \fP -.fl -.fi - +򼨤ޤ \f2set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-F -「jstack [\-l] pid」が応答しない場合にスタックダンプを強制します。 +jstack [\-l] pidפʤ˥åפޤ .TP 3 \-l -長形式のリスト。所有 java.util.concurrent の +ĹΥꥹȡͭ java.util.concurrent .na -\f2所有できるシンクロナイザ\fP @ +\f2ͭǤ륷󥯥ʥ\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer.htmlの一覧など、ロックについての追加情報を印刷します。 +http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer.htmlΰʤɡåˤĤƤɲþޤ .TP 3 \-m -混合モード (Java およびネイティブ C/C++ フレームの両方) のスタックトレースを印刷します。 +⡼ (Java ӥͥƥ C/C++ ե졼ξ) Υåȥ졼ޤ .TP 3 \-h -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-help -ヘルプメッセージを印刷します。 +إץåϤޤ .br .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -181,11 +164,9 @@ .RE .LP -.SH "既知のバグ" -.LP - +.SH "ΤΥХ" .LP .LP -混合モードのスタックトレース (\-m オプション使用) は、リモートデバッグサーバーでは機能しません。 +⡼ɤΥåȥ졼 (\-m ץ) ϡ⡼ȥǥХåСǤϵǽޤ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jstat.1 --- a/jdk/src/linux/doc/man/ja/jstat.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jstat.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,44 +19,46 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstat 1 "02 Jun 2010" +.TH jstat 1 "14 Apr 2011" .LP -.SH "名前" -jstat \- Java 仮想マシン統計データ監視ツール +.SH "̾" +jstat \- Java ۥޥץǡƻġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -仮想マシン識別子 +ۥޥ̻ .TP 2 o -オプション -.br -\ \ \- 一般的なオプション -.br -\ \ \- 出力オプション +ץ +.RS 3 +.TP 2 +* +Ūʥץ +.TP 2 +* +ϥץ +.RE .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -66,56 +68,49 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 generalOption -単独で使用する一般的なコマンド行オプションです (\-help、\-options、または \-version)。 +ñȤǻѤŪʥޥɹԥץǤ (\-help\-optionsޤ \-version) .TP 3 outputOptions -単一の \f2statOption\fP と、\-t、\-h、および \-J オプションのいずれかを組み合わせた、1 つまたは複数の出力オプションです。 +ñ \f2statOption\fP ȡ\-t\-h \-J ץΤ줫Ȥ߹碌1 ĤޤʣνϥץǤ .TP 3 vmid -ターゲットの Java 仮想マシン (JVM) を示す文字列である仮想マシン識別子です。一般的な構文は次のようになります。 +åȤ Java ۥޥ (JVM) 򼨤ʸǤ벾ۥޥ̻ҤǤŪʹʸϼΤ褦ˤʤޤ .nf \f3 .fl [\fP\f4protocol\fP\f3:][//]\fP\f4lvmid\fP[@\f2hostname\fP[:\f2port\fP]/\f2servername\fP] .fl .fi -vmid 文字列の構文の大部分は、URI の構文に対応しています。\f2vmid\fP は、ローカル JVM を表す単純な整数から、通信プロトコル、ポート番号、および他の実装固有の値を示す複雑な構造まで、さまざまに異なります。詳細は、「仮想マシン識別子」を参照してください。 +vmid ʸιʸʬϡURI ιʸбƤޤ\f2vmid\fP ϡ JVM ɽñ顢̿ץȥ롢ݡֹ桢¾μͭͤ򼨤ʣʹ¤ޤǡޤޤ˰ۤʤޤܺ٤ϡֲۥޥ̻ҡפ򻲾ȤƤ .TP 3 interval[s|ms] -秒 (s) またはミリ秒 (ms) のうち指定した単位でのサンプリング間隔です。デフォルトの単位はミリ秒です。\ 正の整数でなければなりません。\ これが指定された場合、\f3jstat\fP は interval ごとに出力を生成します。 + (s) ޤϥߥ (ms) Τꤷñ̤ǤΥץ󥰴ֳ֤ǤǥեȤñ̤ϥߥäǤǤʤФʤޤ󡣤줬ꤵ줿硢\f3jstat\fP interval Ȥ˽Ϥޤ .TP 3 count -表示するサンプル数です。デフォルト値は無限です。 つまり、\f3jstat\fP は、ターゲット JVM が終了するまで、または \f3jstat\fP コマンドが終了するまで、統計データを表示します。 正の整数値を使用する必要があります。 +ɽ륵ץǤǥե̵ͤ¤ǤĤޤꡢ\f3jstat\fP ϡå JVM λޤǡޤ \f3jstat\fP ޥɤλޤǡץǡɽޤǤʤФʤޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jstat\fP ツールは、設置されている HotSpot Java 仮想マシン (JVM) のパフォーマンス統計データを表示します。ターゲット JVM は、仮想マシン識別子、つまり下記の \f2vmid\fP オプションによって識別されます。 +\f3jstat\fP ġϡ֤Ƥ HotSpot Java ۥޥ (JVM) Υѥեޥץǡɽޤå JVM ϡۥޥ̻ҡĤޤ겼 \f2vmid\fP ץˤäƼ̤ޤ .LP .LP -\f3注\fP: このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3\fP: Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .br .LP .SS -仮想マシン識別子 -.LP -.RS 3 - +ۥޥ̻ .LP .LP -\f2vmid\fP 文字列の構文の大部分は、URI の構文に対応しています。 +\f2vmid\fP ʸιʸʬϡURI ιʸбƤޤ .LP .nf \f3 @@ -128,79 +123,73 @@ .RS 3 .TP 3 protocol -通信プロトコルです。\f2protocol\fP が省略され、\f2hostname\fP が指定されていない場合、デフォルトのプロトコルが、プラットフォーム固有の最適化されたローカルプロトコルになります。\f2protocol\fP が省略され、\f2hostname\fP が指定されている場合は、デフォルトプロトコルは \f3rmi\fP になります。 +̿ץȥǤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤʤ硢ǥեȤΥץȥ뤬ץåȥեͭκŬ줿ץȥˤʤޤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤϡǥեȥץȥ \f3rmi\fP ˤʤޤ .TP 3 lvmid -ターゲット JVM のローカル仮想マシン識別子です。\f2lvmid\fP は、システム上の JVM を一意に識別するプラットフォーム固有の値です。\f2lvmid\fP は、仮想マシン識別子の唯一の必須要素です。\f2lvmid\fP は、絶対というわけではありませんが、一般的にはターゲット JVM プロセスに対するオペレーティングシステムのプロセス識別子です。jps(1) コマンドを使用して、\f2lvmid\fP を指定できます。また、Unix プラットフォームでは\f3ps\fP コマンドを使用して、Windows では Windows タスクマネージャーを使用して、\f2lvmid\fP を指定できます。 +å JVM Υ벾ۥޥ̻ҤǤ\f2lvmid\fP ϡƥ JVM դ˼̤ץåȥեͭͤǤ\f2lvmid\fP ϡۥޥ̻ҤͣɬǤǤ\f2lvmid\fP ϡФȤ櫓ǤϤޤ󤬡Ūˤϥå JVM ץФ륪ڥ졼ƥ󥰥ƥΥץ̻ҤǤjps(1) ޥɤѤơ\f2lvmid\fP ǤޤޤUnix ץåȥեǤ\f3ps\fP ޥɤѤơWindows Ǥ Windows ޥ͡㡼Ѥơ\f2lvmid\fP Ǥޤ .TP 3 hostname -ターゲットホストを示すホスト名または IP アドレスです。\f2hostname\fP が省略されている場合は、ターゲットホストはローカルホストになります。 +åȥۥȤ򼨤ۥ̾ޤ IP ɥ쥹Ǥ\f2hostname\fP άƤϡåȥۥȤϥۥȤˤʤޤ .TP 3 port -リモートサーバーと通信するためのデフォルトポートです。\f2hostname\fP が省略されているか、\f2protocol\fP で最適化されたローカルプロトコルが指定されている場合、\f2port\fP は無視されます。そうでなければ、\f2port\fP パラメータの扱いは、実装によって異なります。デフォルトの \f3rmi\fP プロトコルの場合、\f2port\fP は、リモートホスト上の rmiregistry のポート番号を示します。\f2port\fP が省略され、\f2protocol\fP で \f3rmi\fP が指定されている場合、デフォルトの rmiregistry ポート (1099) が使用されます。 +⡼ȥС̿뤿ΥǥեȥݡȤǤ\f2hostname\fP άƤ뤫\f2protocol\fP ǺŬ줿ץȥ뤬ꤵƤ硢\f2port\fP ̵뤵ޤǤʤС\f2port\fP ѥ᡼ΰϡˤäưۤʤޤǥեȤ \f3rmi\fP ץȥξ硢\f2port\fP ϡ⡼ȥۥȾ rmiregistry Υݡֹ򼨤ޤ\f2port\fP ά졢\f2protocol\fP \f3rmi\fP ꤵƤ硢ǥեȤ rmiregistry ݡ (1099) Ѥޤ .TP 3 servername -このパラメータの扱いは、実装によって異なります。最適化されたローカルプロトコルの場合、このフィールドは無視されます。\f3rmi\fP プロトコルの場合は、このパラメータは、リモートホスト上の RMI リソースオブジェクトの名前を示します。 +Υѥ᡼ΰϡˤäưۤʤޤŬ줿ץȥξ硢Υեɤ̵뤵ޤ\f3rmi\fP ץȥξϡΥѥ᡼ϡ⡼ȥۥȾ RMI ꥽֥Ȥ̾򼨤ޤ .RE .LP -.RE -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jstat\fP コマンドは、一般的なオプションと出力オプションの 2 つのタイプのオプションをサポートしています。一般的なオプションを使用した場合、\f3jstat\fP は簡単な使用率およびバージョン情報を表示します。出力オプションでは、統計データ出力の内容と形式を指定します。 +\f3jstat\fP ޥɤϡŪʥץȽϥץ 2 ĤΥפΥץ򥵥ݡȤƤޤŪʥץѤ硢\f3jstat\fP ϴñʻΨӥСɽޤϥץǤϡץǡϤƤȷꤷޤ .br .LP .LP -\f3注\fP: すべてのオプションとその機能は、将来のリリースで変更または廃止される可能性があります。 +\f3\fP: ٤ƤΥץȤεǽϡΥ꡼ѹޤѻߤǽޤ .LP .SS -一般的なオプション +Ūʥץ .LP .LP -いずれかの一般的なオプションを指定した場合、他のオプションまたはパラメータは一切指定できません。 +줫ΰŪʥץꤷ硢¾Υץޤϥѥ᡼ϰڻǤޤ .LP .RS 3 .TP 3 \-help -ヘルプメッセージを表示します。 +إץåɽޤ .TP 3 \-version -バージョン情報を表示します。 +Сɽޤ .TP 3 \-options -統計データオプションを一覧表示します。下記の「出力オプション」の節を参照してください。 +ץǡץɽޤΡֽϥץפ򻲾ȤƤ .RE .LP .SS -出力オプション -.LP -.RS 3 - +ϥץ .LP .LP -一般的なオプションを指定しない場合に、出力オプションを指定できます。出力オプションは、\f3jstat\fP の出力の内容および形式を指定し、単一の \f2statOption\fP と、他のいずれかの出力オプション (\-h、\-t、および \-J) とで構成されます。\ \f2statOption\fP は最初に記述する必要があります。 +ŪʥץꤷʤˡϥץǤޤϥץϡ\f3jstat\fP νϤƤӷꤷñ \f2statOption\fP ȡ¾Τ줫νϥץ (\-h\-t \-J) Ȥǹޤ\f2statOption\fP Ϻǽ˵Ҥɬפޤ .LP .LP -出力は、各列が空白で区切られたテーブルの形式で構成されます。タイトルを記したヘッダー行に、各列の説明が記されます。 \f3\-h\fP オプションを使用して、ヘッダーを表示する頻度を設定します。\ 通常、列のヘッダー名はオプションが異なっている場合でも一貫しています。一般に、2 つのオプションで同じ名前の列が使用されていれば、2 つの列のデータソースは同じになります。 +Ϥϡ󤬶Ƕڤ줿ơ֥ηǹޤȥޤإåԤˤäơΰ̣狼ޤإåɽ٤ꤹˤϡ\f3\-h\fP ץѤޤΥإå̾ϰ̤ˡץ֤ǰݤƤޤ̤ˡ2 ĤΥץƱ̾󤬻ѤƤС2 ĤΥǡƱˤʤޤ .LP .LP -\f3\-t\fP オプションを使用すると、\f2Timestamp\fP というラベルの付いたタイムスタンプの列が、出力の最初の列として表示されます。\f2Timestamp\fP 列には、ターゲット JVM の起動からの経過時間が、秒単位で表示されます。タイムスタンプの精度は、さまざまな要因によって異なり、大量の負荷のかかったシステムでのスレッドスケジュールの遅延により変動します。 +\f3\-t\fP ץѤȡ \f2Timestamp Ȥ٥դॹפ󤬡\fP ϤκǽȤɽޤ \f2Timestamp\fP ˤϡå JVM εưηв֤ñ̤ɽޤॹפ٤ϡޤޤװˤäưۤʤꡢ̤٤ΤäƥǤΥåɥ塼ٱˤưޤ .LP .LP -\f2interval\fP および \f2count\fP パラメータを使用して、\f3jstat\fP がその出力を表示する頻度と回数をそれぞれ指定します。 +\f2interval\fP \f2count\fP ѥ᡼Ѥơ\f3jstat\fP νϤɽ٤Ȳ򤽤줾ꤷޤ .LP .LP -\f3注\fP: 将来のリリースでこの形式は変更される可能性があるため、\f3jstat\fP の出力を解析するスクリプトは作成しないことをお勧めします。\f3jstat\fP 出力を解析するスクリプトを作成する場合は、このツールの将来のリリースで、そのスクリプトを変更しなければならないことに留意してください。 +\f3\fP: Υ꡼Ǥηѹǽ뤿ᡢ\f3jstat\fP νϤϤ륹ץȤϺʤȤ򤪴ᤷޤ\f3jstat\fP ϤϤ륹ץȤϡΥġξΥ꡼ǡΥץȤѹʤФʤʤȤαդƤ .LP .RS 3 .TP 3 \-statOption -\f3jstat\fP が表示する統計データ情報を指定します。次の表には、利用可能なオプションが一覧表示されています。 特定のプラットフォームのインストールについて、オプションを一覧表示するには、一般的なオプションの \f3\-options\fP を使用します。 +\f3jstat\fP ɽץǡꤷޤɽˡѲǽʥץΰ򼨤ޤΥץåȥե।󥹥ȡΥץɽˤϡŪʥץ \f3\-options\fP Ѥޤ .br .br .LP @@ -232,7 +221,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -クラスローダーの動作に関する統計データ +饹ư˴ؤץǡ .br .di .nr a| \n(dn @@ -248,7 +237,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HotSpot Just\-in\-Time コンパイラの動作に関する統計データ +HotSpot Just\-in\-Time ѥư˴ؤץǡ .br .di .nr b| \n(dn @@ -264,7 +253,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクトされたヒープの動作に関する統計データ +١쥯Ȥ줿ҡפư˴ؤץǡ .br .di .nr c| \n(dn @@ -280,7 +269,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -世代ごとの容量と対応する領域に関する統計データ +头Ȥ̤бΰ˴ؤץǡ .br .di .nr d| \n(dn @@ -296,7 +285,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション統計データの概要 (\f3\-gcutil\fP と同じ) と、直前および現在 (適用可能な場合) のガベージコレクションイベントの原因 +١쥯ץǡγ (\f3\-gcutil\fP Ʊ) ȡľӸ (ŬѲǽʾ) Υ١쥯󥤥٥Ȥθ .br .di .nr e| \n(dn @@ -312,7 +301,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の動作に関する統計データ +New ư˴ؤץǡ .br .di .nr f| \n(dn @@ -328,7 +317,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代のサイズと対応する領域に関する統計データ +New Υбΰ˴ؤץǡ .br .di .nr g| \n(dn @@ -344,7 +333,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代および Permanent 世代の動作に関する統計データ +Old 太 Permanent ư˴ؤץǡ .br .di .nr h| \n(dn @@ -360,7 +349,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代のサイズに関する統計データ +Old Υ˴ؤץǡ .br .di .nr i| \n(dn @@ -376,7 +365,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代のサイズに関する統計データ +Permanent Υ˴ؤץǡ .br .di .nr j| \n(dn @@ -392,7 +381,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション統計データの概要 +١쥯ץǡγ .br .di .nr k| \n(dn @@ -408,7 +397,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HotSpot コンパイル方法の統計データ +HotSpot ѥˡץǡ .br .di .nr l| \n(dn @@ -419,7 +408,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wclass .if \n(80<\n(38 .nr 80 \n(38 @@ -448,7 +437,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3表示内容\fP +.nr 38 \w\f3ɽ\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -486,7 +475,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 259 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 248 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -503,7 +492,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3表示内容\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3ɽ\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -716,30 +705,26 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-52 .TP 3 \-h n -\f2n\fP サンプル (出力行) ごとに列ヘッダーを表示。 ただし、\f2n\fP は正の整数値。デフォルト値は 0。 このとき、データの最初の行の上に列ヘッダーが表示される +\f2n\fP ץ (Ϲ) Ȥإåɽ \f2n\fP ͡ǥեͤ 0 ΤȤǡκǽιԤξإåɽ .TP 3 \-t n -タイムスタンプ列を出力の最初の列として表示。タイムスタンプは、ターゲット JVM の起動時からの経過時間 +ॹϤκǽȤɽॹפϡå JVM εưηв .TP 3 -\-J javaOption -\f2javaOption\fP を \f3java\fP アプリケーション起動ツールへ渡す。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。オプションの完全なリストについては、「java(1)」のドキュメントを参照してください。 +\-JjavaOption +\f2javaOption\fP \f3java\fP ץꥱưġϤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤץδʥꥹȤˤĤƤϡjava(1)פΥɥȤ򻲾ȤƤ .RE .LP -.RE .SS -statOption と出力 -.LP -.RS 3 - +statOption Ƚ .LP .LP -以降の表では、\f3jstat\fP が \f2statOption\fP ごとに出力する列について概要を示します。 +ʹߤɽǤϡ\f3jstat\fP \f2statOption\fP Ȥ˽ϤˤĤƳפ򼨤ޤ .br .LP .SS -\-class オプション +\-class ץ .LP .LP .TS @@ -770,7 +755,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ロードされたクラスの数 +ɤ줿饹ο .br .di .nr a| \n(dn @@ -786,7 +771,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ロードされた K バイト数 +ɤ줿 K Хȿ .br .di .nr b| \n(dn @@ -802,7 +787,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -アンロードされたクラスの数 +ɤ줿饹ο .br .di .nr c| \n(dn @@ -818,7 +803,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -アンロードされた K バイト数 +ɤ줿 K Хȿ .br .di .nr d| \n(dn @@ -834,7 +819,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -クラスのロードやアンロード処理に要した時間 +饹Υɤ䥢ɽפ .br .di .nr e| \n(dn @@ -845,9 +830,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wクラスローダーの統計データ +.nr 38 \w饹ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wLoaded .if \n(80<\n(38 .nr 80 \n(38 @@ -862,7 +847,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -886,7 +871,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 313 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 298 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -903,11 +888,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'クラスローダーの統計データ\h'|\n(41u' +\&\h'|\n(40u'饹ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1002,7 +987,7 @@ .LP .SS -\-compiler オプション +\-compiler ץ .LP .LP .TS @@ -1033,7 +1018,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -実行されたコンパイルタスクの数 +¹Ԥ줿ѥ륿ο .br .di .nr a| \n(dn @@ -1049,7 +1034,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -失敗したコンパイルタスクの数 +Ԥѥ륿ο .br .di .nr b| \n(dn @@ -1065,7 +1050,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -無効にされたコンパイルタスクの数 +̵ˤ줿ѥ륿ο .br .di .nr c| \n(dn @@ -1081,7 +1066,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイルタスクの実行に要した時間 +ѥ륿μ¹Ԥפ .br .di .nr d| \n(dn @@ -1097,7 +1082,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後に失敗したコンパイルのコンパイルタイプ +Ǹ˼ԤѥΥѥ륿 .br .di .nr e| \n(dn @@ -1113,7 +1098,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後に失敗したコンパイルのクラス名とメソッド +Ǹ˼ԤѥΥ饹̾ȥ᥽å .br .di .nr f| \n(dn @@ -1124,9 +1109,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wHotSpot Just\-In\-Time コンパイラの統計データ +.nr 38 \wHotSpot Just\-In\-Time ѥץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wCompiled .if \n(80<\n(38 .nr 80 \n(38 @@ -1143,7 +1128,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -1169,7 +1154,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 349 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 334 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1186,11 +1171,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'HotSpot Just\-In\-Time コンパイラの統計データ\h'|\n(41u' +\&\h'|\n(40u'HotSpot Just\-In\-Time ѥץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1302,7 +1287,7 @@ .LP .SS -\-gc オプション +\-gc ץ .LP .LP .TS @@ -1333,7 +1318,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr a| \n(dn @@ -1349,7 +1334,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr b| \n(dn @@ -1365,7 +1350,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (KB) +Survivor ΰ 0 λΨ (KB) .br .di .nr c| \n(dn @@ -1381,7 +1366,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (KB) +Survivor ΰ 1 λΨ (KB) .br .di .nr d| \n(dn @@ -1397,7 +1382,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr e| \n(dn @@ -1413,7 +1398,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (KB) +Eden ΰλΨ (KB) .br .di .nr f| \n(dn @@ -1429,7 +1414,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr g| \n(dn @@ -1445,7 +1430,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (KB) +Old ΰλΨ (KB) .br .di .nr h| \n(dn @@ -1461,7 +1446,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr i| \n(dn @@ -1477,7 +1462,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (KB) +Permanent ΰλΨ (KB) .br .di .nr j| \n(dn @@ -1493,7 +1478,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr k| \n(dn @@ -1509,7 +1494,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr l| \n(dn @@ -1525,7 +1510,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr m| \n(dn @@ -1541,7 +1526,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr n| \n(dn @@ -1552,9 +1537,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wガベージコレクトされたヒープの統計データ +.nr 38 \w١쥯Ȥ줿ҡפץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0C .if \n(80<\n(38 .nr 80 \n(38 @@ -1589,9 +1574,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -1633,7 +1618,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 419 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 404 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1650,11 +1635,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'ガベージコレクトされたヒープの統計データ\h'|\n(41u' +\&\h'|\n(40u'١쥯Ȥ줿ҡפץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1850,7 +1835,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(m|u+\n(.Vu .if (\n(m|+\n(#^-1v)>\n(#- .nr #- +(\n(m|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1906,7 +1891,7 @@ .LP .SS -\-gccapacity オプション +\-gccapacity ץ .LP .LP .TS @@ -1937,7 +1922,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最小容量 (KB) +New κǾ (KB) .br .di .nr a| \n(dn @@ -1953,7 +1938,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最大容量 (KB) +New κ (KB) .br .di .nr b| \n(dn @@ -1969,7 +1954,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の現在の容量 (KB) +New θߤ (KB) .br .di .nr c| \n(dn @@ -1985,7 +1970,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr d| \n(dn @@ -2001,7 +1986,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr e| \n(dn @@ -2017,7 +2002,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr f| \n(dn @@ -2033,7 +2018,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最小容量 (KB) +Old κǾ (KB) .br .di .nr g| \n(dn @@ -2049,7 +2034,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最大容量 (KB) +Old κ (KB) .br .di .nr h| \n(dn @@ -2065,7 +2050,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の現在の容量 (KB) +Old θߤ (KB) .br .di .nr i| \n(dn @@ -2081,7 +2066,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr j| \n(dn @@ -2097,7 +2082,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最小容量 (KB) +Permanent κǾ (KB) .br .di .nr k| \n(dn @@ -2113,7 +2098,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最大容量 (KB) +Permanent κ (KB) .br .di .nr l| \n(dn @@ -2129,7 +2114,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の現在の容量 (KB) +Permanent θߤ (KB) .br .di .nr m| \n(dn @@ -2145,7 +2130,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr n| \n(dn @@ -2161,7 +2146,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr o| \n(dn @@ -2172,9 +2157,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wメモリープール世代および領域容量 +.nr 38 \w꡼ס太ΰ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wNGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -2211,9 +2196,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2257,7 +2242,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 493 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 478 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2274,11 +2259,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'メモリープール世代および領域容量\h'|\n(41u' +\&\h'|\n(40u'꡼ס太ΰ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -2522,7 +2507,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .fc .nr T. 1 .T# 1 @@ -2547,10 +2532,10 @@ .LP .SS -\-gccause オプション +\-gccause ץ .LP .LP -このオプションは、\f3\-gcutil\fP オプションと同じガベージコレクション統計データの概要を表示しますが、最後のガベージコレクションイベントと (適用可能な場合は) 現在のガベージコレクションイベントの原因が含まれます。\f3\-gcutil\fP で一覧表示される列の他に、このオプションでは次の列が追加されます。 +Υץϡ\f3\-gcutil\fP ץƱ١쥯ץǡγפɽޤǸΥ١쥯󥤥٥Ȥ (ŬѲǽʾ) ߤΥ١쥯󥤥٥Ȥθޤޤޤ\f3\-gcutil\fP ǰɽ¾ˡΥץǤϼɲäޤ .LP .LP .TS @@ -2581,7 +2566,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後のガベージコレクションの原因 +ǸΥ١쥯θ .br .di .nr a| \n(dn @@ -2597,7 +2582,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -現在のガベージコレクションの原因 +ߤΥ١쥯θ .br .di .nr b| \n(dn @@ -2608,9 +2593,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wGC イベントを含むガベージコレクション統計データ +.nr 38 \wGC ٥Ȥޤ६١쥯ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wLGCC .if \n(80<\n(38 .nr 80 \n(38 @@ -2619,7 +2604,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2637,7 +2622,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 516 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 501 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2654,11 +2639,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'GC イベントを含むガベージコレクション統計データ\h'|\n(41u' +\&\h'|\n(40u'GC ٥Ȥޤ६١쥯ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -2702,7 +2687,7 @@ .LP .SS -\-gcnew オプション +\-gcnew ץ .LP .LP .TS @@ -2733,7 +2718,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr a| \n(dn @@ -2749,7 +2734,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr b| \n(dn @@ -2765,7 +2750,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (KB) +Survivor ΰ 0 λΨ (KB) .br .di .nr c| \n(dn @@ -2781,7 +2766,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (KB) +Survivor ΰ 1 λΨ (KB) .br .di .nr d| \n(dn @@ -2797,7 +2782,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最大殿堂入りしきい値 +Ʋꤷ .br .di .nr e| \n(dn @@ -2813,7 +2798,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -適切な Survivor サイズ (KB) +Ŭڤ Survivor (KB) .br .di .nr f| \n(dn @@ -2829,7 +2814,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr g| \n(dn @@ -2845,7 +2830,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (KB) +Eden ΰλΨ (KB) .br .di .nr h| \n(dn @@ -2861,7 +2846,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr i| \n(dn @@ -2877,7 +2862,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr j| \n(dn @@ -2888,9 +2873,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wNew 世代の統計データ +.nr 38 \wNew ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0C .if \n(80<\n(38 .nr 80 \n(38 @@ -2917,9 +2902,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \w殿堂入りしきい値 +.nr 38 \wƲꤷ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2953,7 +2938,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 570 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 555 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2970,11 +2955,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'New 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'New ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3042,7 +3027,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'TT\h'|\n(41u'殿堂入りしきい値 +\&\h'|\n(40u'TT\h'|\n(41u'Ʋꤷ .ne \n(e|u+\n(.Vu .if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3158,7 +3143,7 @@ .LP .SS -\-gcnewcapacity オプション +\-gcnewcapacity ץ .LP .LP .TS @@ -3181,16 +3166,15 @@ .rm 80 81 .nr 34 \n(.lu .eo -.am 80 +.am 81 .br .di a+ .35 .ft \n(.f .ll \n(34u*1u/3u -.if \n(.l<\n(80 .ll \n(80u +.if \n(.l<\n(81 .ll \n(81u .in 0 -NGCMN\ \ \ \ \ \ \ \ \ T}~T{ -New 世代の最小容量 (KB) +New κǾ (KB) .br .di .nr a| \n(dn @@ -3206,7 +3190,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最大容量 (KB) +New κ (KB) .br .di .nr b| \n(dn @@ -3222,7 +3206,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の現在の容量 (KB) +New θߤ (KB) .br .di .nr c| \n(dn @@ -3238,7 +3222,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の最大容量 (KB) +Survivor ΰ 0 κ (KB) .br .di .nr d| \n(dn @@ -3254,7 +3238,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr e| \n(dn @@ -3270,7 +3254,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の最大容量 (KB) +Survivor ΰ 1 κ (KB) .br .di .nr f| \n(dn @@ -3286,7 +3270,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr g| \n(dn @@ -3302,7 +3286,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の最大容量 (KB) +Eden ΰκ (KB) .br .di .nr h| \n(dn @@ -3318,7 +3302,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr i| \n(dn @@ -3334,7 +3318,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr j| \n(dn @@ -3345,13 +3329,15 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wNew 世代領域サイズの統計データ +.nr 38 \wNew ΰ襵ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wNGCMX \ \ \ +.nr 38 \wNGCMN .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wNGC \ \ \ +.nr 38 \wNGCMX +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \wNGC .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0CMX .if \n(80<\n(38 .nr 80 \n(38 @@ -3371,15 +3357,15 @@ .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 +.nr 38 \n(a- +.if \n(81<\n(38 .nr 81 \n(38 .nr 38 \n(b- .if \n(81<\n(38 .nr 81 \n(38 .nr 38 \n(c- @@ -3408,7 +3394,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 626 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 609 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -3425,21 +3411,21 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'New 世代領域サイズの統計データ\h'|\n(41u' +\&\h'|\n(40u'New ΰ襵ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\h'|\n(41u' +\&\h'|\n(40u'NGCMN\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v -.nr 37 \n(40u +.nr 37 \n(41u .in +\n(37u .a+ .in -\n(37u @@ -3451,7 +3437,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'NGCMX \ \ \\h'|\n(41u' +\&\h'|\n(40u'NGCMX\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -3467,7 +3453,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'NGC \ \ \\h'|\n(41u' +\&\h'|\n(40u'NGC\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -3593,7 +3579,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .fc .nr T. 1 .T# 1 @@ -3609,11 +3595,11 @@ .rm i+ .rm j+ .TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-49 +.if \n-(b.=0 .nr c. \n(.c-\n(d.-47 .LP .SS -\-gcold オプション +\-gcold ץ .LP .LP .TS @@ -3644,7 +3630,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr a| \n(dn @@ -3660,7 +3646,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (KB) +Permanent ΰλΨ (KB) .br .di .nr b| \n(dn @@ -3676,7 +3662,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr c| \n(dn @@ -3692,7 +3678,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (KB) +Old ΰλΨ (KB) .br .di .nr d| \n(dn @@ -3708,7 +3694,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -3724,7 +3710,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -3740,7 +3726,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -3751,9 +3737,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wOld および Permanent 世代の統計データ +.nr 38 \wOld Permanent ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wPC .if \n(80<\n(38 .nr 80 \n(38 @@ -3774,9 +3760,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -3804,7 +3790,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 668 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 651 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -3821,11 +3807,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Old および Permanent 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Old Permanent ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3909,7 +3895,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3958,7 +3944,7 @@ .LP .SS -\-gcoldcapacity オプション +\-gcoldcapacity ץ .LP .LP .TS @@ -3989,7 +3975,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最小容量 (KB) +Old κǾ (KB) .br .di .nr a| \n(dn @@ -4005,7 +3991,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最大容量 (KB) +Old κ (KB) .br .di .nr b| \n(dn @@ -4021,7 +4007,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の現在の容量 (KB) +Old θߤ (KB) .br .di .nr c| \n(dn @@ -4037,7 +4023,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr d| \n(dn @@ -4053,7 +4039,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -4069,7 +4055,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -4085,7 +4071,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -4096,9 +4082,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wOld 世代の統計データ +.nr 38 \wOld ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wOGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -4119,9 +4105,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4149,7 +4135,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 710 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 693 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4166,11 +4152,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Old 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Old ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4254,7 +4240,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4303,7 +4289,7 @@ .LP .SS -\-gcpermcapacity オプション +\-gcpermcapacity ץ .LP .LP .TS @@ -4334,7 +4320,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最小容量 (KB) +Permanent κǾ (KB) .br .di .nr a| \n(dn @@ -4350,7 +4336,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最大容量 (KB) +Permanent κ (KB) .br .di .nr b| \n(dn @@ -4366,7 +4352,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の現在の容量 (KB) +Permanent θߤ (KB) .br .di .nr c| \n(dn @@ -4382,7 +4368,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr d| \n(dn @@ -4398,7 +4384,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -4414,7 +4400,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -4430,7 +4416,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -4441,9 +4427,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wPermanent 世代の統計データ +.nr 38 \wPermanent ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wPGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -4464,9 +4450,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4494,7 +4480,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 752 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 735 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4511,11 +4497,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Permanent 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Permanent ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4599,7 +4585,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4648,7 +4634,7 @@ .LP .SS -\-gcutil オプション +\-gcutil ץ .LP .LP .TS @@ -4679,7 +4665,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (現在の容量に対するパーセンテージ) +Survivor ΰ 0 λΨ (ߤ̤Фѡơ) .br .di .nr a| \n(dn @@ -4695,7 +4681,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (現在の容量に対するパーセンテージ) +Survivor ΰ 1 λΨ (ߤ̤Фѡơ) .br .di .nr b| \n(dn @@ -4711,7 +4697,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (現在の容量に対するパーセンテージ) +Eden ΰλΨ (ߤ̤Фѡơ) .br .di .nr c| \n(dn @@ -4727,7 +4713,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (現在の容量に対するパーセンテージ) +Old ΰλΨ (ߤ̤Фѡơ) .br .di .nr d| \n(dn @@ -4743,7 +4729,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (現在の容量に対するパーセンテージ) +Permanent ΰλΨ (ߤ̤Фѡơ) .br .di .nr e| \n(dn @@ -4759,7 +4745,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr f| \n(dn @@ -4775,7 +4761,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr g| \n(dn @@ -4791,7 +4777,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr h| \n(dn @@ -4807,7 +4793,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr i| \n(dn @@ -4818,9 +4804,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wガベージコレクション統計データの概要 +.nr 38 \w١쥯ץǡγ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0 .if \n(80<\n(38 .nr 80 \n(38 @@ -4845,9 +4831,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4879,7 +4865,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 802 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 785 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4896,11 +4882,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'ガベージコレクション統計データの概要\h'|\n(41u' +\&\h'|\n(40u'١쥯ץǡγ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5016,7 +5002,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(h|u+\n(.Vu .if (\n(h|+\n(#^-1v)>\n(#- .nr #- +(\n(h|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5067,7 +5053,7 @@ .LP .SS -\-printcompilation オプション +\-printcompilation ץ .LP .LP .TS @@ -5098,7 +5084,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -実行されたコンパイルタスクの数 +¹Ԥ줿ѥ륿ο .br .di .nr a| \n(dn @@ -5114,7 +5100,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -メソッドのバイトコードのバイト数 +᥽åɤΥХȥɤΥХȿ .br .di .nr b| \n(dn @@ -5130,7 +5116,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイル方法を特定するクラス名とメソッド名。クラス名では、名前空間の区切り文字として、「.」ではなく「/」が使用される。メソッド名は、指定されたクラス内のメソッドである。これらの 2 つのフィールドの形式は、HotSpot \- \f3XX:+PrintComplation\fP オプションと対応している +ѥˡꤹ륯饹̾ȥ᥽å̾饹̾Ǥϡ֤̾ζڤʸȤơ.פˡ/פѤ롣᥽å̾ϡꤵ줿饹Υ᥽åɤǤ롣 2 ĤΥեɤηϡHotSpot \- \f3XX:+PrintComplation\fP ץбƤ .br .di .nr c| \n(dn @@ -5141,24 +5127,24 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wHotSpot コンパイル方法の統計データ +.nr 38 \wHotSpot ѥˡץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wCompiled .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wサイズ +.nr 38 \w .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w型 +.nr 38 \w .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wメソッド +.nr 38 \w᥽å .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wコンパイルタイプ +.nr 38 \wѥ륿 .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -5178,7 +5164,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 828 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 811 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -5195,11 +5181,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'HotSpot コンパイル方法の統計データ\h'|\n(41u' +\&\h'|\n(40u'HotSpot ѥˡץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5221,7 +5207,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'サイズ\h'|\n(41u' +\&\h'|\n(40u'\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -5235,13 +5221,13 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'型\h'|\n(41u'コンパイルタイプ +\&\h'|\n(40u'\h'|\n(41u'ѥ륿 .ne \n(c|u+\n(.Vu .if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'メソッド\h'|\n(41u' +\&\h'|\n(40u'᥽å\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -5263,19 +5249,16 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-19 .LP -.SS - -.LP -.SH "" +.SH "" .LP .LP -この項では、21891 の \f2lvmid\fP を持つローカル JVM を監視する例を示します。 +ιǤϡ21891 \f2lvmid\fP ĥ JVM ƻ뤹򼨤ޤ .LP .SS -gcutil オプションの使用 +gcutil ץλ .LP .LP -この例は、\f2lvmid\fP 21891 に接続して、250 ミリ秒間隔で 7 つのサンプルを取得し、\f3\-gcutil\fP オプションでの指定に従って出力を表示します。 +ϡ\f2lvmid\fP 21891 ³ơ250 ߥôֳ֤ 7 ĤΥץ\f3\-gcutil\fP ץǤλ˽äƽϤɽޤ .LP .nf \f3 @@ -5320,13 +5303,13 @@ .LP .LP -この例の出力は、若い世代のコレクションが 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% ѤƤޤ .LP .SS -列ヘッダー文字列の繰り返し +إåʸη֤ .LP .LP -この例は、\f2lvmid\fP 21891 に接続して、250 ミリ秒間隔でサンプルを取得し、\f3\-gcutil\fP オプションでの指定に従って出力を表示します。さらに、\f3\-h3\fP オプションを使用して、データが 3 行表示されるごとに列ヘッダーを出力します。 +ϡ\f2lvmid\fP 21891 ³ơ250 ߥôֳ֤ǥץ\f3\-gcutil\fP ץǤλ˽äƽϤɽޤˡ\f3\-h3\fP ץѤơǡ 3 ɽ뤴ȤإåϤޤ .LP .nf \f3 @@ -5379,16 +5362,16 @@ .LP .LP -この例では、ヘッダー文字列の繰り返しが見られるほかにも、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 ع߳ʤޤ .LP .LP -別のコレクションが、5 番目と 6 番目のサンプル間で行われています。このコレクションでは、Survivor がほとんど見られず、殿堂入りしきい値を 31 に戻しました。 +̤Υ쥯󤬡5 ܤ 6 ܤΥץ֤ǹԤƤޤΥ쥯ǤϡSurvivor ۤȤɸ줺Ʋꤷͤ 31 ᤷޤ .LP .SS -サンプルごとのタイムスタンプの挿入 +ץ뤴ȤΥॹפ .LP .LP -この例は、\f2lvmid\fP 21891 へ接続し、250 ミリ秒間隔で 3 つのサンプルを取得しています。\f3\-t\fP オプションを使用して、最初の列にサンプルごとのタイムスタンプを表示しています。 +ϡ\f2lvmid\fP 21891 ³250 ߥôֳ֤ 3 ĤΥץƤޤ\f3\-t\fP ץѤơǽ˥ץ뤴ȤΥॹפɽƤޤ .LP .nf \f3 @@ -5417,13 +5400,13 @@ .LP .LP -\f2Timestamp\fP 列には、ターゲット JVM の起動時からの経過時間が、秒単位でレポートされています。さらに、\f3\-gcoldcapacity\fP 出力では、割り当て要求または昇格要求あるいはその両方を満たすためにヒープが拡張するごとに、Old 世代の容量 (OGC) と Old 領域の容量 (OC) とが増加していることがわかります。Old 世代の容量 (OGC) は、81 番目のフル GC (FGC) 後に、11696 KB から 13820 KB へ増加しています。Old 世代 (および領域) の最大容量は、60544 KB (OGCMX) なので、まだ拡張できる余裕が残されています。 +\f2Timestamp\fP ˤϡå JVM εưηв֤ñ̤ǥݡȤƤޤˡ\f3\-gcoldcapacity\fP ϤǤϡ׵ޤϾ׵ᤢ뤤Ϥξ˥ҡפĥ뤴ȤˡOld (OGC) Old ΰ (OC) ȤäƤ뤳Ȥ狼ޤOld (OGC) ϡ81 ܤΥե GC (FGC) ˡ11696 KB 13820 KB äƤޤOld (ΰ) κ̤ϡ60544 KB (OGCMX) ʤΤǡޤĥǤ;͵ĤƤޤ .LP .SS -リモート JVM のインストゥルメンテーションの監視 +⡼ JVM Υ󥹥ȥơδƻ .LP .LP -この例は、\f3\-gcutil\fP オプションを使用して、\f2remote.domain\fP というシステム上の \f2lvmid\fP 40496 に接続し、サンプルを秒単位で無期限に取得しています。 +ϡ\f3\-gcutil\fP ץѤơ\f2remote.domain\fP Ȥƥ \f2lvmid\fP 40496 ³ץñ̵̤¤˼Ƥޤ .LP .nf \f3 @@ -5440,24 +5423,23 @@ .LP .LP -\f2lvmid\fP は、リモートホストの名前と結合されて、\f240496@remote.domain\fP の \f2vmid\fP を構成しています。結果として、この \f2vmid\fP は、\f3rmi\fP プロトコルを使用して、リモートホスト上のデフォルトの \f3jstatd\fP サーバーと通信します。\f3jstatd\fP サーバーは、\f3rmiregistry\fP を使用して、デフォルトの \f3rmiregistry\fP ポート (ポート 1099) にバインドされた \f2remote.domain\fP に配置されれます。 +\f2lvmid\fP ϡ⡼ȥۥȤ̾ȷ礵ơ\f240496@remote.domain\fP \f2vmid\fP Ƥޤ̤Ȥơ \f2vmid\fP ϡ\f3rmi\fP ץȥѤơ⡼ȥۥȾΥǥեȤ \f3jstatd\fP С̿ޤ\f3jstatd\fP Сϡ\f3rmiregistry\fP ѤơǥեȤ \f3rmiregistry\fP ݡ (ݡ 1099) ˥Хɤ줿 \f2remote.domain\fP ֤ޤ .LP -.RE -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jps(1) \- Java 仮想マシンプロセスステータスツール」 +jps(1) \- Java ۥޥץơġ .TP 2 o -「jstatd(1) \- 仮想マシン jstat デーモン」 +jstatd(1) \- ۥޥ jstat ǡ .TP 2 o -「rmiregistry(1) \- Java リモートオブジェクトレジストリ」 +rmiregistry(1) \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jstatd.1 --- a/jdk/src/linux/doc/man/ja/jstatd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/jstatd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,43 +19,41 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstatd 1 "02 Jun 2010" +.TH jstatd 1 "14 Apr 2011" .LP -.SH "名前" -jstatd \- 仮想マシン jstat デーモン +.SH "̾" +jstatd \- ۥޥ jstat ǡ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -セキュリティー +ƥ .TP 2 o -リモートインタフェース +⡼ȥ󥿥ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -68,72 +66,64 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -コマンド行オプション。オプションは任意の順序で指定できます。重複または矛盾するオプションがある場合、最後に指定したオプションが優先されます。 +ޥɹԥץ󡣥ץǤդνǻǤޤʣޤ̷⤹륪ץ󤬤硢Ǹ˻ꤷץͥ褵ޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jstatd\fP ツールは、計測された HotSpot Java 仮想マシン (JVM) の作成と終了を監視し、ローカルシステム上で実行している Java 仮想マシンに、リモート監視ツールが接続できるようにするためのインタフェースを提供する RMI サーバーアプリケーションです。 +\f3jstatd\fP ġϡ¬줿 HotSpot Java ۥޥ (JVM) κȽλƻ뤷륷ƥǼ¹ԤƤ Java ۥޥˡ⡼ȴƻġ뤬³Ǥ褦ˤ뤿Υ󥿥ե󶡤 RMI СץꥱǤ .LP .LP -\f3jstatd\fP サーバーでは、ローカルホストに RMI レジストリが存在することが必要になります。\f3jstatd\fP サーバーは、デフォルトポートまたは \f2\-p port\fP オプションで指定されたポート上の RMI レジストリに接続しようとします。RMI レジストリが見つからない場合、\f2\-p port\fP オプションで指定されたポート、または \f2\-p port\fP が省略されている場合は、デフォルト RMI レジストリにバインドされた \f3jstatd\fP アプリケーション内に、1 つの RMI レジストリが作成されます。内部 RMI レジストリの作成は、\f2\-nr\fP オプションを指定することによって禁止することができます。 +\f3jstatd\fP СǤϡۥȤ RMI 쥸ȥ꤬¸ߤ뤳Ȥɬפˤʤޤ\f3jstatd\fP СϡǥեȥݡȤޤ \f2\-p port\fP ץǻꤵ줿ݡȾ RMI 쥸ȥ³褦ȤޤRMI 쥸ȥ꤬Ĥʤ硢\f2\-p port\fP ץǻꤵ줿ݡȡޤ \f2\-p port\fP άƤϡǥե RMI 쥸ȥ˥Хɤ줿 \f3jstatd\fP ץꥱˡ1 Ĥ RMI 쥸ȥ꤬ޤ RMI 쥸ȥκϡ\f2\-nr\fP ץꤹ뤳Ȥˤäƶػߤ뤳ȤǤޤ .LP .LP -\f3注:\fP このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3:\fP Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jstatd\fP コマンドは次のオプションをサポートしています。 +\f3jstatd\fP ޥɤϼΥץ򥵥ݡȤƤޤ .LP .RS 3 .TP 3 \-nr -既存の RMI レジストリが見つからない場合、\f2jstatd\fP プロセス内に内部 RMI レジストリを作成しないようにします。 +¸ RMI 쥸ȥ꤬Ĥʤ硢\f2jstatd\fP ץ RMI 쥸ȥʤ褦ˤޤ .TP 3 \-p\ port -RMI レジストリがあると予想されるポート番号です。 見つからない場合は、\f2\-nr\fP が指定されていなければ作成されます。 +RMI 쥸ȥ꤬ͽۤݡֹǤ Ĥʤϡ\f2\-nr\fP ꤵƤʤкޤ .TP 3 \-n\ rminame -RMI レジストリにおいて、リモート RMI オブジェクトがバインドされる名前です。デフォルト名は \f2JStatRemoteHost\fP です。複数の \f3jstatd\fP サーバーが同じホスト上で起動している場合、各サーバーのエクスポートした RMI オブジェクトの名前は、このオプションを指定することによって、一意の名前にすることができます。ただし、このオプションを使用する場合、監視クライアントの \f2hostid\fP および \f2vmid\fP 文字列に、その一意のサーバー名を含める必要があります。 +RMI 쥸ȥˤơ⡼ RMI ֥ȤХɤ̾Ǥǥե̾ \f2JStatRemoteHost\fP Ǥʣ \f3jstatd\fP СƱۥȾǵưƤ硢ƥСΥݡȤ RMI ֥Ȥ̾ϡΥץꤹ뤳Ȥˤäơդ̾ˤ뤳ȤǤޤΥץѤ硢ƻ륯饤Ȥ \f2hostid\fP \f2vmid\fP ʸˡΰդΥС̾ޤɬפޤ .TP 3 \-Joption -\f3javac\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f3javac\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .RE .LP -.SH "セキュリティー" -.LP - +.SH "ƥ" .LP .LP -\f3jstatd\fP サーバーは、有効なネイティブアクセス権を持つ JVM だけを監視できます。したがって、\f3jstatd\fP プロセスは、ターゲット JVM と同じユーザー資格で実行している必要があります。一部のユーザー資格は、Unix(TM) ベースのシステムにおける \f2root\fP ユーザーのように、システム上の任意の JVM によってエクスポートされたインストゥルメンテーションへのアクセス権を持っています。このような資格で実行している \f3jstatd\fP プロセスは、システム上のすべての JVM を監視できますが、セキュリティー上の別の問題が起こります。 +\f3jstatd\fP Сϡͭʥͥƥ֥ JVM ƻǤޤäơ\f3jstatd\fP ץϡå JVM Ʊ桼ʤǼ¹ԤƤɬפޤΥ桼ʤϡUNIX(TM) ١Υƥˤ \f2root\fP 桼Τ褦ˡƥǤդ JVM ˤäƥݡȤ줿󥹥ȥơؤΥäƤޤΤ褦ʻʤǼ¹ԤƤ \f3jstatd\fP ץϡƥΤ٤Ƥ JVM ƻǤޤƥ̤꤬ޤ +.LP +.LP +\f3jstatd\fP Сϡ⡼ȥ饤ȤǧڤͿޤ󡣤Τᡢ\f3jstatd\fP Сץ¹Ԥȡ\f3jstatd\fP ץĤ٤Ƥ JVM ˤ륤󥹥ȥơΥݡȤ򡢥ͥåȥΤ٤ƤΥ桼˸뤳Ȥˤʤޤ̵ʾ֤ϡĶŪ˾ޤʤ礬ޤ ä˼²ƯĶޤϰǤʤͥåȥǤϡ\f3jstatd\fP ץưˡ륻ƥݥꥷƤɬפޤ .LP .LP -\f3jstatd\fP サーバーは、リモートクライアントの認証を一切与えません。そのため、\f3jstatd\fP サーバープロセスを実行すると、\f3jstatd\fP プロセスがアクセス権を持つすべての JVM によるインストゥルメンテーションのエクスポートを、ネットワーク上のすべてのユーザーに公開することになります。この無防備な状態は、環境的に望ましくない場合があります。 特に実稼働環境または安全でないネットワークでは、\f3jstatd\fP プロセスを起動する前に、ローカルセキュリティーポリシーを検討する必要があります。 +\f3jstatd\fP Сϡ¾Υƥޥ͡㡼󥹥ȡ뤵ƤʤˤϡRMISecurityPolicy Υ󥹥󥹤򥤥󥹥ȡ뤷ޤ Τᡢƥݥꥷեꤹɬפޤݥꥷեϡǥեȥݥꥷ +.na +\f2ݥꥷեιʸ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.html˽򤹤ɬפޤ .LP .LP -\f3jstatd\fP サーバーは、他のセキュリティーマネージャーがインストールされていない場合には、RMISecurityPolicy のインスタンスをインストールします。 そのため、セキュリティーポリシーファイルを指定する必要があります。ポリシーファイルは、デフォルトポリシー実装の -.na -\f2ポリシーファイルの構文\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.htmlに準拠する必要があります。 -.LP -.LP -次のポリシーファイルの場合、\f3jstatd\fP サーバーは一切のセキュリティー例外を使用せずに実行できます。このポリシーは、すべてのコードベースへのあらゆるアクセス権を認めるポリシーよりも自由度は低いですが、\f3jstatd\fP サーバーを実行するために最低限必要なアクセス権しか認めないポリシーよりも自由度は高くなっています。 +Υݥꥷեξ硢\f3jstatd\fP СϰڤΥƥ㳰Ѥ˼¹ԤǤޤΥݥꥷϡ٤ƤΥɥ١ؤΤ륢ǧݥꥷ⼫ͳ٤㤤Ǥ\f3jstatd\fP С¹Ԥ뤿˺ɬפʥǧʤݥꥷ⼫ͳ٤Ϲ⤯ʤäƤޤ .LP .nf \f3 @@ -155,7 +145,7 @@ .LP .LP -このポリシーを使用するには、このテキストを \f2jstatd.all.policy\fP というファイルにコピーし、次のように \f3jstatd\fP サーバーを実行します。 +ΥݥꥷѤˤϡΥƥȤ \f2jstatd.all.policy\fP Ȥե˥ԡΤ褦 \f3jstatd\fP С¹Ԥޤ .LP .nf \f3 @@ -169,27 +159,23 @@ .LP .LP -より厳しいセキュリティーを実施するサイトの場合、カスタムポリシーファイルを使用して、特定の信頼できるホストまたはネットワークにアクセスを制限することができます。 ただし、このような方法は、IP アドレスの盗聴攻撃を受けやすくなります。セキュリティーの問題について、カスタマイズしたポリシーファイルでも対処できない場合は、\f3jstatd\fP サーバーを実行せずに、\f3jstat\fP と \f3jps\fP ツールをローカルで使用することがもっとも安全な方法になります。 +긷ƥ»ܤ륵Ȥξ硢ݥꥷեѤơοǤۥȤޤϥͥåȥ˥¤뤳ȤǤޤ Τ褦ˡϡIP ɥ쥹İ䤹ʤޤƥˤĤơޥݥꥷեǤнǤʤϡ\f3jstatd\fP С¹Ԥˡ\f3jstat\fP \f3jps\fP ġǻѤ뤳ȤäȤˡˤʤޤ .LP -.SH "リモートインタフェース" -.LP - +.SH "⡼ȥ󥿥ե" .LP .LP -\f3jstatd\fP プロセスがエクスポートするインタフェースは、独自に開発したものであり変更される予定です。ユーザーおよび開発者は、このインタフェースへの書き込みを行わないでください。 +\f3jstatd\fP ץݡȤ륤󥿥եϡȼ˳ȯΤǤѹͽǤ桼ӳȯԤϡΥ󥿥եؤν񤭹ߤԤʤǤ .LP -.SH "例" -.LP - +.SH "" .LP .LP -次に \f3jstatd\fP を起動する例を紹介します。\f3jstatd\fP スクリプトによって、サーバーはバックグラウンドで自動的に起動します。 + \f3jstatd\fP ưҲ𤷤ޤ\f3jstatd\fP ץȤˤäơСϥХå饦ɤǼưŪ˵ưޤ .LP .SS -内部 RMI レジストリの使用 + RMI 쥸ȥλ .LP .LP -この例は、内部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。この例では、デフォルトの RMI レジストリポート (ポート 1099) には、他のサーバーはバインドされていないと想定しています。 +ϡ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤǤϡǥեȤ RMI 쥸ȥݡ (ݡ 1099) ˤϡ¾ΥСϥХɤƤʤꤷƤޤ .LP .nf \f3 @@ -201,10 +187,10 @@ .LP .SS -外部 RMI レジストリの使用 + RMI 쥸ȥλ .LP .LP -この例は、外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -218,7 +204,7 @@ .LP .LP -この例は、ポート 2020 の外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡݡ 2020 γ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -232,7 +218,7 @@ .LP .LP -この例は、AlternateJstatdServerName の名前にバインドされた、ポート 2020 の外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡAlternateJstatdServerName ̾˥Хɤ줿ݡ 2020 γ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -246,10 +232,10 @@ .LP .SS -インプロセス RMI レジストリの作成の禁止 +ץ RMI 쥸ȥκζػ .LP .LP -この例は、RMI レジストリが見つからない場合に RMI レジストリを作成しない \f3jstatd\fP の起動を表しています。この例では、RMI レジストリがすでに実行していると想定しています。実行していない場合は、該当するエラーメッセージが表示されます。 +ϡRMI 쥸ȥ꤬Ĥʤ RMI 쥸ȥʤ \f3jstatd\fP εưɽƤޤǤϡRMI 쥸ȥ꤬Ǥ˼¹ԤƤꤷƤޤ¹ԤƤʤϡ륨顼åɽޤ .LP .nf \f3 @@ -261,10 +247,10 @@ .LP .SS -RMI ログ機能の有効化 +RMI ǽͭ .LP .LP -この例は、RMI ログ機能を有効にした \f3jstatd\fP の起動を表しています。この方法は、トラブルシューティングまたはサーバー活動の監視に役立ちます。 +ϡRMI ǽͭˤ \f3jstatd\fP εưɽƤޤˡϡȥ֥륷塼ƥ󥰤ޤϥСưδƻΩޤ .LP .nf \f3 @@ -275,25 +261,25 @@ .fi .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jps(1) \- Java 仮想マシンプロセスステータスツール」 +jps(1) \- Java ۥޥץơġ .TP 2 o -「jstat(1) \- Java 仮想マシン統計データ監視ツール」 +jstat(1) \- Java ۥޥץǡƻġ .TP 2 o -「 + .na \f2rmiregistry\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi \- Java リモートオブジェクトレジストリ」 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/jvisualvm.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/jdk/src/linux/doc/man/ja/jvisualvm.1 Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,126 @@ +." Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. +." 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. +." +.TH jvisualvm 1 "14 Apr 2011" + +.LP +.SH "̾" +\f2jvisualvm\fP \- Java ۥޥδƻ롢ȥ֥륷塼ƥ󥰡ӥץե󥰥ġ +.LP +.RS 3 +.TP 2 +o + +.TP 2 +o +ѥ᡼ +.TP 2 +o + +.TP 2 +o +ץ +.TP 2 +o +ˡ +.TP 2 +o +Ϣ +.RE + +.LP +.SH "" +.LP +.nf +\f3 +.fl + \fP\f3jvisualvm\fP [ \f2options\fP ] +.fl +.fi + +.LP +.SH "ѥ᡼" +.LP +.LP +ץѤ硢ޥ̾ľ˵ҤƤץλ˷ޤϤޤΥץŬѤѥ᡼ˤĤƤϡΤȤΡ֥ץפ򻲾ȤƤ +.LP +.SH " " +.LP +.LP +Java VisualVM ϡꤵ줿 Java ۥޥ (JVM(*)) Java ƥΥ١Υץꥱ (Java ץꥱ) ¹ԤƤȤˡ Java ץꥱ˴ؤܺ٤ʾ󶡤ľŪʥե桼󥿥եǤJava VisualVM Ȥ̾ϡJava VisualVM JVM եȥ˴ؤֻŪˡ󶡤Ȥ¤ͳ褷Ƥޤ +.LP +.LP +Java VisualVM ϡĤδƻ롢ȥ֥륷塼ƥ󥰡ӥץե󥰥桼ƥƥ 1 ĤΥġ礷ޤȤСɥġ \f2jmap\fP \f2jinfo\fP \f2jstat\fP \f2jstack\fP 󶡤Ƥ뵡ǽΤۤȤɤJava VisualVM Ȥ߹ޤƤޤJConsole ġˤä󶡤εǽʤɡۤεǽϥץΥץ饰ȤɲäǤޤ +.LP +.SH "ץ" +.LP +.LP +ΥץϡJava VisualVM ưȤ˼¹Բǽˤʤޤ +.LP +.RS 3 +.TP 3 +\-J<jvm_option>\ + \f2<jvm_option>\fP JVM եȥϤޤ +.RE + +.LP +.SH "ˡ" +.LP +.LP +Java VisualVM ϡJava ץꥱγȯԤץꥱΥȥ֥륷塼ƥ󥰤ԤʤäꡢץꥱΥѥեޥ󥹤ƻ뤪ӲꤹΤΩޤJava VisualVM ѤȡȯԤϥҡץפӲϡ꡼꡼ꡢ١쥯μ¹ԤӴƻ롢ӥ꡼ CPU δʰץץե󥰤μ¹ԤǽˤʤޤJava VisualVM εǽĥץ饰⤤ĤޤȤСJConsole ġΤۤȤɤεǽϡMBeans ֤ JConsole Plug\-in Wrapper ץ饰𤷤ƻѤǤޤɸ Java VisualVM ץ饰Υ򤹤ˤϡJava VisualVM ˥塼Ρ֥ġ>֥ץ饰פ򤷤ޤ +.LP +.LP +Java VisualVM ưˤϡΥޥɤ¹Ԥޤ +.LP +.nf +\f3 +.fl +% jvisualvm \fP\f4<options>\fP\f3 +.fl +\fP +.fi + +.LP +.SH "Ϣ" +.LP +.LP +Java VisualVM ξܺ٤ϡΥڡ򻲾ȤƤ +.LP +.RS 3 +.TP 2 +o +.na +\f2Java VisualVM ȯԤΥ\fP @ +.fi +https://visualvm.dev.java.net +.TP 2 +o +.na +\f2Java SE ץåȥեǤ Java VisualVM Υɥ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/visualvm/index.html +.RE + +.LP +.LP +\f2(* Java ۥޥפȡJVMפȤѸϡJava ץåȥեβۥޥ̣Ƥޤ)\fP +.LP + diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/keytool.1 --- a/jdk/src/linux/doc/man/ja/keytool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/keytool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1998-2010 keytool tool, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,20 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH keytool 1 "02 Jun 2010" +.TH keytool 1 "14 Apr 2011" .LP -.SH "名前" -keytool \- 鍵と証明書の管理ツール +.SH "̾" +keytool \- Ⱦδġ .LP -.RS 3 - .LP -暗号化鍵、X.509 証明書チェーン、および信頼できる証明書を含むキーストア (データベース) を管理します。 -.RE -.SH "形式" +Ź沽X.509 󡢤ӿǤޤ७ȥ (ǡ١) ޤ .LP - +.SH "" .LP .nf \f3 @@ -43,48 +39,44 @@ .LP .LP -Java SE 6 で keytool のコマンドインタフェースが変更されました。 詳細については「変更点」の節を参照してください。以前に定義されたコマンドも引き続きサポートされています。 +Java SE 6 keytool Υޥɥ󥿥եѹޤܺ٤ˤĤƤϡѹפ򻲾ȤƤ줿ޥɤ³ݡȤƤޤ .LP -.SH "説明" +.SH "" .LP - +\f3keytool\fP ϡȾ뤿Υ桼ƥƥǤkeytool ȤȡʬθΥڥӴϢǥ̾Ȥäǧ (ۤΥ桼ޤϥӥФƼʬȤǧڤ뤳) 䡢ǡȾ˴ؤ륵ӥѤ뤳ȤǤޤkeytool Ǥϡ̿θ (η) å夹뤳ȤǤޤ .LP -\f3keytool\fP は、鍵と証明書を管理するためのユーティリティーです。keytool を使うと、自分の公開鍵と非公開鍵のペア、および関連する証明書を管理し、デジタル署名を使った自己認証 (ほかのユーザーまたはサービスに対して自分自身を認証すること) や、データの整合性と証明書に関するサービスを利用することができます。keytool では、通信相手の公開鍵を (証明書の形で) キャッシュすることもできます。 -.LP -「証明書」とは、あるエンティティー (人物、会社など) からのデジタル署名付きの文書のことです。 証明書には、ほかのあるエンティティーの公開鍵 (およびその他の情報) が特別な値を持っていることが書かれています(「証明書」を参照)。データにデジタル署名が付いている場合は、デジタル署名を検証することで、データの整合性およびデータが本物であることをチェックできます。データの「整合性」とは、データが変更されたり、改変されたりしていないことを意味します。 また、データが「本物である」とは、そのデータが、データを作成して署名したと称する人物から実際に渡されたデータであることを意味します。 +־פȤϡ륨ƥƥ (ʪҤʤ) Υǥ̾դʸΤȤǤˤϡۤΤ륨ƥƥθ (Ӥ¾ξ) ̤ͤäƤ뤳Ȥ񤫤Ƥޤ(־פ򻲾)ǡ˥ǥ̾դƤϡǥ̾򸡾ڤ뤳ȤǡǡӥǡʪǤ뤳ȤåǤޤǡΡפȤϡǡѹ줿ꡢѤ줿ꤷƤʤȤ̣ޤ ޤǡʪǤפȤϡΥǡǡƽ̾ȾΤʪºݤϤ줿ǡǤ뤳Ȥ̣ޤ .LP .LP -また、\f3keytool\fP を使えば、DES などの対称暗号化/復号化で使用される秘密鍵を管理することもできます。 +ޤ\f3keytool\fP ȤСDES ʤɤоΰŹ沽/沽ǻѤ̩뤳ȤǤޤ .LP .LP -\f3keytool\fP は、鍵と証明書を\f2「キーストア」\fPに格納します。 +\f3keytool\fP ϡȾ\f2֥ȥ\fP˳Ǽޤ .LP -.SH "コマンドとオプションに関する注" -.LP - +.SH "ޥɤȥץ˴ؤ" .LP .LP -以下では、コマンドとそのオプションについて説明します。注: +ʲǤϡޥɤȤΥץˤĤޤ: .LP .RS 3 .TP 2 o -どのコマンド名およびオプション名にも先頭にマイナス記号 (\-) が付く +ɤΥޥ̾ӥץ̾ˤƬ˥ޥʥ (\-) դ .TP 2 o -各コマンドのオプションは任意の順序で指定できる +ƥޥɤΥץǤդνǻǤ .TP 2 o -イタリック体になっていないすべての項目、または中括弧か角括弧で囲まれているすべての項目は、そのとおりに指定する必要がある +åΤˤʤäƤʤ٤Ƥιܡޤ̤ѳ̤ǰϤޤƤ뤹٤ƤιܤϡΤȤ˻ꤹɬפ .TP 2 o -オプションを囲む中括弧は、一般に、そのオプションをコマンド行で指定しなかった場合に、デフォルト値が使われることを意味する。中括弧は、\f2\-v\fP、\f2\-rfc\fP、および \f2\-J\fP オプションを囲むのにも使われるが、これらのオプションはコマンド行で指定された場合にのみ意味を持つ (つまり、これらのオプションには、オプション自体を指定しないこと以外に「デフォルト値」は存在しない) +ץϤ̤ϡ̤ˡΥץ򥳥ޥɹԤǻꤷʤäˡǥեͤȤ뤳Ȥ̣롣̤ϡ \f2\-v\fP \f2\-rfc\fP \f2\-J\fP ץϤΤˤȤ뤬ΥץϥޥɹԤǻꤵ줿ˤΤ̣߰ (ĤޤꡢΥץˤϡץΤꤷʤȰʳˡ֥ǥե͡פ¸ߤʤ) .TP 2 o -オプションを囲む角括弧は、そのオプションをコマンド行で指定しなかった場合に、値の入力を求められることを意味する。ただし、\f2\-keypass\fP オプションをコマンド行で指定しなかった場合は、\f3keytool\fP がキーストアのパスワードから非公開/秘密鍵の復元を試みる。 ユーザーは、この試みが失敗した場合に非公開/秘密鍵の入力を求められる +ץϤѳ̤ϡΥץ򥳥ޥɹԤǻꤷʤäˡͤϤ뤳Ȥ̣롣( \f2\-keypass\fP ץξ硢ץ򥳥ޥɹԤǻꤷʤäϡ\f3keytool\fP ޤȥΥѥɤ/̩ߤ롣 桼ϡλߤԤ/̩ΥѥɤϤ .TP 2 o -イタリック体の項目の実際の値 (オプションの値) は、ユーザーが指定する必要がある。たとえば、\f2\-printcert\fP コマンドの形式は次のとおりである +åΤιܤμºݤ (ץ) ϡ桼ꤹɬפ뤿ȤС \f2\-printcert\fP ޥɤηϼΤȤǤ .nf \f3 .fl @@ -93,7 +85,7 @@ \fP .fi .LP -\f2\-printcert\fP コマンドを指定するときは、\f2cert_file\fP の代わりに実際のファイル名を指定する。次に例を示す +\f2\-printcert\fP ޥɤꤹȤϡ\f2cert_file\fP ˼ºݤΥե̾ꤹ롣򼨤 .nf \f3 .fl @@ -103,10 +95,10 @@ .fi .TP 2 o -オプションの値に空白 (スペース) が含まれている場合は、値を引用符で囲む必要がある +ץͤ˶ (ڡ) ޤޤƤϡͤǰϤɬפ .TP 2 o -\f2\-help\fP コマンドはデフォルトのコマンドである。たとえば、次のようにコマンド行を指定したとする +\f2\-help\fP ޥɤϥǥեȤΥޥɤǤ롣ȤСΤ褦˥ޥɹԤꤷȤ .nf \f3 .fl @@ -114,7 +106,8 @@ .fl \fP .fi -これは、次のように指定することと同じである +.LP +ϡΤ褦˻ꤹ뤳ȤƱǤ .nf \f3 .fl @@ -126,12 +119,11 @@ .LP .SS -オプションのデフォルト値 +ץΥǥե +.LP .LP -.RS 3 - +ץΥǥեͤϡΤȤǤ .LP -オプションのデフォルト値は、次のとおりです。 .nf \f3 .fl @@ -141,19 +133,25 @@ .fl \-keyalg .fl - "DSA" (\fP\f3\-genkeypair\fP\f3 を使用している場合) + "DSA" (\fP\f3\-genkeypair\fP\f3 ѤƤ) .fl - "DES" (\fP\f3\-genseckey\fP\f3 を使用している場合) + "DES" (\fP\f3\-genseckey\fP\f3 ѤƤ) .fl .fl \-keysize .fl - 1024 (\fP\f3\-genkeypair\fP\f3 を使用している場合) + 2048 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "RSA" ξ) +.fl + 1024 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "DSA" ξ) +.fl + 256 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "EC" ξ) .fl - 56 (\fP\f3\-genseckey\fP\f3 を使用していて \-keyalg が "DES" の場合) + 56 (\fP\f3\-genseckey\fP\f3 ѤƤ \-keyalg "DES" ξ) .fl - 168 (\fP\f3\-genseckey\fP\f3 を使用していて \-keyalg が "DESede" の場合) + 168 (\fP\f3\-genseckey\fP\f3 ѤƤ \-keyalg "DESede" ξ) +.fl + .fl .fl @@ -161,320 +159,933 @@ .fl .fl -\-keystore \fP\f4ユーザーのホームディレクトリの \fP\f4.keystore\fP\f3 というファイル\fP\f3 +\-keystore 桼Υۡǥ쥯ȥ \fP\f4.keystore\fP\f3 Ȥե .fl .fl -\-storetype \fP\f4セキュリティープロパティーファイルの「keystore.type」プロパティーの値で、 +\-storetype ƥץѥƥեΡkeystore.typeץץѥƥͤǡ .fl - \fP\f4java.security.KeyStore\fP\f3 の静的な \fP\f4getDefaultType\fP\f3 メソッドから返される\fP\f3 + java.security.KeyStore Ū getDefaultType ᥽åɤ֤ \fP\f4 \fP\f3 +.fl + \fP\f4 \fP\f3 .fl .fl -\-file \fP\f4読み込みの場合は標準入力、書き込みの場合は標準出力\fP\f3 +\-file ɤ߹ߤξɸϡ񤭹ߤξɸ .fl .fl \-protected false .fl - -.fl \fP .fi .LP -公開/非公開鍵ペアの生成において、署名アルゴリズム (\f2\-sigalg\fP オプション) は、基になる非公開鍵のアルゴリズムから派生します。基になる非公開鍵が DSA タイプである場合、\f2\-sigalg\fP オプションのデフォルト値は SHA1withDSA になり、基になる非公開鍵が RSA タイプである場合は、\f2\-sigalg\fP オプションのデフォルト値は MD5withRSA になります。選択可能な \f2\-keyalg\fP および \f2\-sigalg\fP の完全な一覧については、 -.na -\f2「Java Cryptography Architecture API Specification & Reference」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。 -.RE -.SS -一般オプション +.LP +/ڥˤơ̾르ꥺ (\f2\-sigalg\fP ץ) ϡˤʤΥ르ꥺफޤ .LP .RS 3 +.TP 2 +o +ˤʤ DSA פǤ硢\f2\-sigalg\fP ץΥǥեͤ SHA1withDSA ˤʤꡢ +.TP 2 +o +ˤʤ RSA פǤϡ\f2\-sigalg\fP ץΥǥեͤ SHA256withRSA ˤʤꡢ +.TP 2 +o +ˤʤ EC פǤϡ\f2\-sigalg\fP ץΥǥեͤ SHA256withECDSA ˤʤޤ +.RE .LP -\f2\-v\fP オプションは、\f2\-help\fP コマンドを除くすべてのコマンドで使用できます。このオプションを指定した場合、コマンドは「冗長」モードで実行され、詳細な証明書情報が出力されます。 .LP -また、\f2\-J\fP\f2javaoption\fP オプションも、任意のコマンドで使用できます。このオプションを指定した場合、指定された \f2javaoption\fP 文字列が Java インタプリタに直接渡されます。このオプションには、空白を含めることはできません。このオプションは、実行環境またはメモリー使用を調整する場合に便利です。指定できるインタプリタオプションを一覧表示するには、コマンド行で \f2java \-h\fP または \f2java \-X\fP と入力してください。 +ǽ \f2\-keyalg\fP \f2\-sigalg\fP δʰˤĤƤϡ +.na +\f2Java Cryptography Architecture API Specification & Reference\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤ +.LP +.SS +̥ץ .LP .LP -次のオプションは、キーストアに対する操作を行うすべてのコマンドで指定できます。 +\f2\-v\fP ץϡ \f2\-help\fP ޥɤ٤ƤΥޥɤǻѤǤޤΥץꤷ硢ޥɤϡ־Ĺץ⡼ɤǼ¹Ԥ졢ܺ٤ʾ󤬽Ϥޤ +.LP +.LP +ޤ \f2\-J\fP\f2javaoption\fP ץ⡢ǤդΥޥɤǻѤǤޤΥץꤷ硢ꤵ줿 \f2javaoption\fP ʸ Java 󥿥ץ꥿ľϤޤΥץˤϡޤ뤳ȤϤǤޤ󡣤Υץϡ¹ԴĶޤϥ꡼ѤĴǤǤ륤󥿥ץ꥿ץɽˤϡޥɹԤ \f2java \-h\fP ޤ \f2java \-X\fP ϤƤ +.LP +.LP +ΥץϡȥФԤ٤ƤΥޥɤǻǤޤ .LP .RS 3 .TP 3 \-storetype storetype -この修飾子は、インスタンスを生成するキーストアのタイプを指定します。 +.LP +νҤϡ󥹥󥹤륭ȥΥפꤷޤ .TP 3 \-keystore keystore -キーストアの場所を指定します。 .LP -特定の \f3keytool\fP コマンドを実行する際に、JKS ストアタイプが使用され、かつキーストアファイルがまだ存在していなかった場合、新しいキーストアファイルが作成されます。たとえば、\f2keytool \-genkeypair\fP の実行時に \f2\-keystore\fP オプションが指定されなかった場合、\f2.keystore\fP という名前のデフォルトキーストアファイルがユーザーのホームディレクトリ内にまだ存在していなければ、そこに作成されます。同様に、\f2\-keystore \fP\f2ks_file\fP というオプションが指定されてもその \f2ks_file\fP が存在しなかった場合、そのファイルが作成されます。 -.LP -\f2\-keystore\fP オプションからの入力ストリームは、\f2KeyStore.load\fP メソッドに渡されます。URL として \f2NONE\fP が指定されている場合は、null のストリームが \f2KeyStore.load\fP メソッドに渡されます。\f2NONE\fP は、\f2KeyStore\fP がファイルベースではなく、たとえば、ハードウェアトークンデバイスに置かれている場合に指定します。 -.TP 3 -\-storepass storepass -キーストアの整合性を保護するために使うパスワードを指定します。 -.LP -\f2storepass\fP は、6 文字以上にする必要があります。指定したパスワードは、キーストアの内容にアクセスするすべてのコマンドで使われます。この種のコマンドを実行するときに、コマンド行で \f2\-storepass\fP オプションを指定しなかった場合は、パスワードの入力を求められます。 -.LP -キーストアから情報を取り出す場合は、パスワードを省略できます。 パスワードを省略すると、取り出す情報の整合性をチェックできないので、警告が表示されます。 -.TP 3 -\-providerName provider_name -セキュリティープロパティーファイル内に含まれる暗号化サービスプロバイダ名を特定するために使用されます。 -.TP 3 -\-providerClass provider_class_name -暗号化サービスプロバイダがセキュリティープロパティーファイルに指定されていないときは、そのマスタークラスファイルの名前を指定するときに使われます。 -.TP 3 -\-providerArg provider_arg -\f2\-providerClass\fP と組み合わせて使用します。\f2provider_class_name\fP のコンストラクタに対する省略可能な文字列入力引数を表します。 -.TP 3 -\-protected -\f2true\fP または \f2false\fP のいずれか。専用 PIN リーダーなどの保護された認証パスを介してパスワードを指定する必要がある場合には、この値に \f2true\fP を指定してください。 -.RE - +ȥξꤷޤ .LP -.RE -.SH "コマンド" -.LP - -.LP -.SS -キーストアへのデータの作成または追加 -.LP -.RS 3 - + \f3keytool\fP ޥɤ¹ԤݤˡJKS ȥפѤ졢ĥȥե뤬ޤ¸ߤƤʤä硢ȥե뤬ޤȤС \f2keytool \-genkeypair\fP μ¹Ի \f2\-keystore\fP ץ󤬻ꤵʤä硢 \f2.keystore\fP Ȥ̾Υǥեȥȥե뤬桼Υۡǥ쥯ȥˤޤ¸ߤƤʤС˺ޤƱͤˡ \f2\-keystore \fP\f2ks_file\fP Ȥץ󤬻ꤵƤ⤽ \f2ks_file\fP ¸ߤʤä硢Υե뤬ޤ .LP -.RS 3 -.TP 3 -\-genkeypair {\-alias alias} {\-keyalg keyalg} {\-keysize keysize} {\-sigalg sigalg} [\-dname dname] [\-keypass keypass] {\-validity valDays} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption} -.LP -鍵のペア (公開鍵および関連する非公開鍵) を生成します。公開鍵は X.509 v3 自己署名証明書でラップされます。 証明書は、単一の要素を持つ証明書チェーンとして格納されます。この証明書チェーンと非公開鍵は、\f2alias\fP で特定される新しいキーストアエントリに格納されます。 -.LP -\f2keyalg\fP には、鍵のペアを生成するのに使うアルゴリズムを指定し、\f2keysize\fP には、生成する各鍵のサイズを指定します。 \f2sigalg\fP には、自己署名証明書に署名を付けるときに使うアルゴリズムを指定します。このアルゴリズムは、\f2keyalg\fP と互換性のあるものでなければなりません。 -.LP -\f2dname\fP には、\f2alias\fP に関連付け、自己署名証明書の \f2issuer\fP フィールドと \f2subject\fP フィールドとして使う X.500 識別名を指定します。コマンド行で識別名を指定しなかった場合は、識別名の入力を求められます。 -.LP -\f2keypass\fP には、生成される鍵のペアのうち、非公開鍵を保護するのに使うパスワードを指定します。パスワードを指定しなかった場合、ユーザーはその入力求められます。このとき、Return キーを押すと、キーストアのパスワードと同じパスワードが鍵のパスワードに設定されます。 \f2keypass\fP は、6 文字以上でなければなりません。 -.LP -\f2valDays\fP には、証明書の有効日数を指定します。 -.LP -このコマンドは、以前のリリースでは \f2\-genkey\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-genkeypair\fP を使用することをお勧めします。 +\f2\-keystore\fP ץ󤫤ϥȥ꡼ϡ \f2KeyStore.load\fP ᥽åɤϤޤURL Ȥ \f2NONE\fP ꤵƤϡnull Υȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤޤ \f2NONE\fP ϡ \f2KeyStore\fP ե١ǤϤʤȤСϡɥȡǥХ֤Ƥ˻ꤷޤ .TP 3 -\-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} -.LP -秘密鍵を生成し、それを \f2alias\fP で特定される新しい \f2KeyStore.SecretKeyEntry\fP 内に格納します。 -.LP -\f2keyalg\fP は秘密鍵の生成に使用するアルゴリズムを、\f2keysize\fP は生成する鍵のサイズを、それぞれ指定します。\f2keypass\fP は秘密鍵の保護に使用するパスワードです。パスワードを指定しなかった場合、ユーザーはその入力求められます。このとき、Return キーを押すと、キーストアのパスワードと同じパスワードが鍵のパスワードに設定されます。 \f2keypass\fP は、6 文字以上でなければなりません。 -.TP 3 -\-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} -.LP -ファイル \f2cert_file\fP から証明書または証明書チェーン (証明書チェーンの場合は、PKCS#7 形式の応答で提供されるもの) を読み込み、\f2alias\fP によって特定されるキーストアエントリに格納します。ファイルが指定されていない場合は、標準入力から証明書または PKCS#7 応答を読み込みます。 -.LP -\f3keytool\fP では、X.509 v1、v2、v3 の証明書、および、PKCS#7 形式の証明書から構成されている PKCS#7 形式の証明書チェーンをインポートできます。インポートするデータは、バイナリ符号化方式、または出力可能符号化方式 (Base64 符号化とも呼ばれる) のどちらかで提供する必要があります。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。この符号化方式の場合、証明書は「\-\-\-\-\-BEGIN」で始まる文字列で開始され、「\-\-\-\-\-END」で始まる文字列で終了しなければなりません。 -.LP -証明書のインポートには、次の 2 つの目的があります。 -.RS 3 -.TP 3 -1. -信頼できる証明書のリストに証明書を追加する -.TP 3 -2. -CA に証明書署名要求 (\-certreq コマンドを参照) を送信した結果として、CA から受け取った証明応答をインポートする -.RE +\-storepass[:env|:file] argument .LP -どちらの種類のインポートを行うかは、\f2\-alias\fP オプションの値によって指定します。 -.RS 3 -.TP 3 -1. -\f3別名がキーエントリをポイントしない場合\fP、\f3keytool\fP はユーザーが信頼できる証明書エントリを追加しようとしているものと見なします。この場合、別名がキーストア内にすでに存在していてはいけません。別名がすでに存在している場合、その別名の信頼できる証明書がすでに存在することになるので、\f3keytool\fP はエラーを出力し、証明書のインポートを行いません。 -.TP 3 -2. -\f3別名がキーエントリをポイントしない場合\fP、\f3keytool\fP はユーザーが信頼できる証明書エントリを追加しようとしているものと見なします。 -.RE -\f3新しい信頼できる証明書のインポート\fP -.RS 3 - -.LP -.LP -\f3keytool\fP は、キーストアに証明書を追加する前に、キーストア内にすでに存在する信頼できる証明書を使って、インポートする証明書から (ルート CA の) 自己署名証明書に至るまでの信頼のチェーンの構築を試みます。 +ȥݸ뤿˻Ȥѥɤꤷޤ .LP -.LP -\f2\-trustcacerts\fP オプションを指定した場合、追加の証明書は信頼できるすなわち cacerts という名前のファイルに含まれる証明書のチェーンと見なされます。 -.LP -.LP -\f3keytool\fP が、インポートする証明書から自己署名証明書 (キーストアまたは cacerts ファイルに含まれている自己署名証明書) に至るまでの信頼のパスの構築に失敗した場合は、インポートする証明書の情報を表示し、ユーザーに確認を求めます。 この場合は、表示された証明書のフィンガープリントと、ほかのなんらかの (信頼できる) 情報源 (証明書の所有者本人など) から入手したフィンガープリントとを比較します。「信頼できる証明書」として証明書をインポートするときは、証明書が有効であることを慎重に確認する必要があります。詳細は、「信頼できる証明書のインポートに関する注意事項」を参照してください。インポート操作は、証明書を確認する時点で中止できます。ただし、\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 -.LP -.RE -\f3証明応答のインポート\fP -.RS 3 -.LP -「証明応答」をインポートするときは、キーストア内の信頼できる証明書、および (\f2\-trustcacerts\fP オプションが指定されている場合は) cacerts キーストアファイルで構成された証明書を使って証明応答が検査されます。 -.LP -.LP -証明応答が信頼できるかどうかを決定する方法は次のとおりです。 -.LP + \f2env\fP ޤ \f2file\fP ꤷʤ硢ѥɤͤ \f2argument\fP ˤʤޤͤϡ6 ʸʾˤɬפޤʳξ硢ѥɤϼΤ褦˼ޤ .RS 3 .TP 2 o -\f3証明応答が単一の X.509 証明書である場合\fP、\f3keytool\fP は、証明応答から (ルート CA の) 自己署名証明書に至るまでの信頼チェーンの確立を試みます。証明応答と、証明応答の認証に使われる証明書の階層構造は、\f2alias\fP の新しい証明書チェーンを形成します。信頼チェーンが確立されない場合、証明応答はインポートされません。この場合、\f3keytool\fP は証明書を出力せず、ユーザーに検証を求めるプロンプトを表示します。 ユーザーが証明応答の信頼性を判断するのは、不可能ではなくても非常に困難だからです。 +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ .TP 2 o -\f3証明応答が PKCS#7 形式の証明書チェーンである場合\fP、\f3keytool\fP は、まずチェーンを並べ替えて、ユーザーの証明書が最初に、ルート CA の自己署名証明書が最後にくるようにしたあと、証明応答に含まれるルート CA の証明書と、キーストア内または (\f2\-trustcacerts\fP オプションが指定されている場合は) cacerts キーストアファイル内の信頼できる証明書とをすべて比較し、一致するものがあるかどうかを調べます。一致するものが見つからなかった場合は、ルート CA の証明書の情報を表示し、ユーザーに確認を求めます。 この場合は、表示された証明書のフィンガープリントと、ほかのなんらかの (信頼できる) 情報源 (ルート CA 自身など) から入手したフィンガープリントとを比較します。インポート操作は、証明書を確認する時点で中止できます。ただし、\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +\f3\fP: \f2\-keypass\fP \f2\-srckeypass\fP \f2\-destkeypass\fP \f2\-srcstorepass\fP \f2\-deststorepass\fP ʤɤΥѥɤɬפȤ뤽¾ΥץϤ٤ơ \f2env\fP \f2file\fP ҤդޤѥɥץȽҤϡɬ (\f2:\fP) ǶڤäƤ +.LP +ѥɤϡȥƤ˥뤹٤ƤΥޥɤǻȤޤμΥޥɤ¹ԤȤˡޥɹԤ \f2\-storepass\fP ץꤷʤäϡѥɤϤޤ +.LP +ȥФϡѥɤάǤޤ ѥɤάȡФåǤʤΤǡٹɽޤ +.TP 3 +\-providerName provider_name +.LP +ƥץѥƥե˴ޤޤŹ沽ӥץХ̾ꤹ뤿˻Ѥޤ +.TP 3 +\-providerClass provider_class_name +.LP +Ź沽ӥץХƥץѥƥե˻ꤵƤʤȤϡΥޥ饹ե̾ꤹȤ˻Ȥޤ +.TP 3 +\-providerArg provider_arg +.LP +\f2\-providerClass\fP Ȥ߹碌ƻѤޤ\f2provider_class_name\fP Υ󥹥ȥ饯Фάǽʸϰɽޤ +.TP 3 +\-protected +.LP +\f2true\fP ޤ \f2false\fP Τ줫 PIN ꡼ʤɤݸ줿ǧڥѥ𤷤ƥѥɤꤹɬפˤϡͤ \f2true\fP ꤷƤ +.LP +: \f2\-importkeystore\fP ޥɤˤ 2 ĤΥȥطƤ뤿ᡢ2 ĤΥץ󡢤Ĥޤ \f2\-srcprotected\fP \f2\-destprotected\fP ȥȥåȥȥˤ줾ꤵޤ +.TP 3 +\-ext {name{:critical}{=value}} +.LP +X.509 񥨥ƥ󥷥򼨤ޤΥץ \-genkeypair \-gencert ǻѤơޤ \f2\-certreq\fP ˥ƥ󥷥ߡ׵׵ᤵ륨ƥ󥷥򼨤ȤǤޤΥץϡʣѤǤޤname ˤϡݡȤƤ륨ƥ󥷥̾ (򻲾) ޤǤդ OID ֹǤޤvalue ꤷϡƥ󥷥Υѥ᡼򼨤ޤάϡƥ󥷥Υǥե (Ƥ) 򼨤ޤϥƥ󥷥˥ѥ᡼ɬפޤ \f2:critical\fP Ҥꤷϡƥ󥷥 isCritical ° true Ǥ뤳Ȥ򼨤ޤʳξ false Ǥ뤳Ȥ򼨤ޤ:critical : \f2:c\fP ѤǤޤ . .RE .LP .LP -証明書応答内の公開鍵が \f2alias\fP の下にすでに格納されているユーザーの公開鍵に一致した場合、古い証明書チェーンが応答内の新しい証明書チェーンで置き換えられます。以前の証明書チェーンを新しい証明書チェーンで置き換えることができるのは、有効な \f2keypass\fP、つまり該当するエントリの非公開鍵を保護するためのパスワードを指定した場合だけです。パスワードを指定しておらず、非公開鍵のパスワードがキーストアのパスワードと異なる場合は、非公開鍵のパスワードの入力を求められます。 -.LP -.RE +ߡkeytool ϼ̾Υƥ󥷥򥵥ݡȤƤޤ (ʸȾʸ϶̤ʤ) .LP -このコマンドは、以前のリリースでは \f2\-import\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-importcert\fP を使用することをお勧めします。 -.TP 3 -\-importkeystore \-srckeystore srckeystore \-destkeystore destkeystore {\-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} -.LP -ソースキーストアからターゲットキーストアへ、単一のエントリまたはすべてのエントリをインポートします。 -.LP -\f2srcalias\fP オプションが指定された場合、このコマンドは、その別名で特定される単一のエントリをターゲットキーストアにインポートします。\f2destalias\fP 経由でターゲット別名が指定されなかった場合、\f2srcalias\fP がターゲット別名として使用されます。ソースのエントリがパスワードで保護されていた場合、\f2srckeypass\fP を使ってそのエントリが回復されます。\f2srckeypass\fP が指定されなかった場合、\f3keytool\fP は \f2srcstorepass\fP を使ってそのエントリを回復しようとします。\f2srcstorepass\fP が指定されなかったか正しくなかった場合、ユーザーはパスワードの入力を求められます。ターゲットエントリは \f2destkeypass\fP によって保護されます。\f2destkeypass\fP が指定されなかった場合、ターゲットエントリはソースエントリのパスワードによって保護されます。 .LP -\f2srcalias\fP オプションが指定されなかった場合、ソースキーストア内のすべてのエントリがターゲットキーストア内にインポートされます。各ターゲットエントリは対応するソースエントリの別名の下に格納されます。ソースのエントリがパスワードで保護されていた場合、\f2srcstorepass\fP を使ってそのエントリが回復されます。\f2srcstorepass\fP が指定されなかったか正しくなかった場合、ユーザーはパスワードの入力を求められます。ソースキーストア内のあるエントリタイプがターゲットキーストアでサポートされていない場合や、あるエントリをターゲットキーストアに格納する際にエラーが発生した場合、ユーザーはそのエントリをスキップして処理を続行するか、あるいは処理を中断するかの選択を求められます。ターゲットエントリはソースエントリのパスワードによって保護されます。 -.LP -ターゲット別名がターゲットキーストア内にすでに存在していた場合、ユーザーは、そのエントリを上書きするか、あるいは異なる別名の下で新しいエントリを作成するかの選択を求められます。 +.TS +.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 +.de 35 +.ps \n(.s +.vs \n(.vu +.in \n(.iu +.if \n(.u .fi +.if \n(.j .ad +.if \n(.j=0 .na +.. +.nf +.nr #~ 0 +.if n .nr #~ 0.6n +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.fc +.nr 33 \n(.s +.rm 80 81 +.nr 34 \n(.lu +.eo +.am 80 +.br +.di a+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +BC ޤ BasicConstraints +.br +.di +.nr a| \n(dn +.nr a- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di b+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ʷϡca:{true|false}[,pathlen:<len>]פǡ<len> ϡca:true,pathlen:<len>פξάɽǤ άȡca:trueפΰ̣ˤʤޤ +.br +.di +.nr b| \n(dn +.nr b- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di c+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +usage(,usage)*usage ˤϡdigitalSignature nonRepudiation (contentCommitment)keyEnciphermentdataEnciphermentkeyAgreementkeyCertSigncRLSignencipherOnlydecipherOnly Τ줫ǤޤUsage ϡޤʤСǽοʸ (ȤСdigitalSignature dig ) ޤϥ륱 (ȤС digitalSignature dS ˡcRLSign cRLS ) ṳ̂ǤޤUsage ʸȾʸ϶̤ޤ +.br +.di +.nr c| \n(dn +.nr c- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di d+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +EKU ޤ ExtendedkeyUsage +.br +.di +.nr d| \n(dn +.nr d- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di e+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +usage(,usage)*usage ˤϡanyExtendedKeyUsage serverAuthclientAuthcodeSigningemailProtection timeStampingOCSPSigningޤǤդ OID ʸΤ줫Ǥޤ ̾դ usage ϡޤʤС ǽοʸޤϥ륱 ṳ̂ǤޤUsage ʸȾʸ϶̤ޤ +.br +.di +.nr e| \n(dn +.nr e- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di f+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +SAN ޤ SubjectAlternativeName +.br +.di +.nr f| \n(dn +.nr f- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di g+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +type:value(,type:value)*type ˤϡEMAILURIDNSIPޤ OID Ǥޤvalue ϡtype ʸͤǤ +.br +.di +.nr g| \n(dn +.nr g- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di h+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +IAN ޤ IssuerAlternativeName +.br +.di +.nr h| \n(dn +.nr h- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di i+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +SubjectAlternativeName ƱǤ +.br +.di +.nr i| \n(dn +.nr i- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di j+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +SIA ޤ SubjectInfoAccess +.br +.di +.nr j| \n(dn +.nr j- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di k+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +method:location\-type:location\-value (,method:location\-type:location\-value)* method ˤϡtimeStampingסcaRepositoryסޤǤդ OID Ǥޤlocation\-type location\-value ˤϡSubjectAlternativeName ƥ󥷥ǥݡȤǤդ type:value Ǥޤ +.br +.di +.nr k| \n(dn +.nr k- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di l+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +AIA ޤ AuthorityInfoAccess +.br +.di +.nr l| \n(dn +.nr l- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di m+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +SubjectInfoAccess ƱǤmethod ˤϡocspסcaIssuersסޤǤդ OID Ǥޤ +.br +.di +.nr m| \n(dn +.nr m- \n(dl +.. +.ec \ +.35 +.nf +.ll \n(34u +.nr 80 0 +.nr 38 \w\f3̾\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \wKU ޤ KeyUsage +.if \n(80<\n(38 .nr 80 \n(38 +.80 +.rm 80 +.nr 38 \n(a- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(d- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(f- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(h- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(j- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(l- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 81 0 +.nr 38 \w\f3\fP +.if \n(81<\n(38 .nr 81 \n(38 +.81 +.rm 81 +.nr 38 \n(b- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(c- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(e- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(g- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(i- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(k- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(m- +.if \n(81<\n(38 .nr 81 \n(38 +.35 +.nf +.ll \n(34u +.nr 38 1n +.nr 79 0 +.nr 40 \n(79+(0*\n(38) +.nr 80 +\n(40 +.nr 41 \n(80+(3*\n(38) +.nr 81 +\n(41 +.nr TW \n(81 +.if t .if \n(TW>\n(.li .tm Table at line 325 file Input is too wide - \n(TW units +.fc   +.nr #T 0-1 +.nr #a 0-1 +.eo +.de T# +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.mk ## +.nr ## -1v +.ls 1 +.ls +.. +.ec +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3̾\fP\h'|\n(41u'\f3\fP +.ne \n(a|u+\n(.Vu +.ne \n(b|u+\n(.Vu +.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) +.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.a+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.b+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(c|u+\n(.Vu +.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'KU ޤ KeyUsage\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.c+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(d|u+\n(.Vu +.ne \n(e|u+\n(.Vu +.if (\n(d|+\n(#^-1v)>\n(#- .nr #- +(\n(d|+\n(#^-\n(#--1v) +.if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.d+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.e+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(f|u+\n(.Vu +.ne \n(g|u+\n(.Vu +.if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) +.if (\n(g|+\n(#^-1v)>\n(#- .nr #- +(\n(g|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.f+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.g+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(h|u+\n(.Vu +.ne \n(i|u+\n(.Vu +.if (\n(h|+\n(#^-1v)>\n(#- .nr #- +(\n(h|+\n(#^-\n(#--1v) +.if (\n(i|+\n(#^-1v)>\n(#- .nr #- +(\n(i|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.h+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.i+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(j|u+\n(.Vu +.ne \n(k|u+\n(.Vu +.if (\n(j|+\n(#^-1v)>\n(#- .nr #- +(\n(j|+\n(#^-\n(#--1v) +.if (\n(k|+\n(#^-1v)>\n(#- .nr #- +(\n(k|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.j+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.k+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(l|u+\n(.Vu +.ne \n(m|u+\n(.Vu +.if (\n(l|+\n(#^-1v)>\n(#- .nr #- +(\n(l|+\n(#^-\n(#--1v) +.if (\n(m|+\n(#^-1v)>\n(#- .nr #- +(\n(m|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.l+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.m+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.fc +.nr T. 1 +.T# 1 +.35 +.rm a+ +.rm b+ +.rm c+ +.rm d+ +.rm e+ +.rm f+ +.rm g+ +.rm h+ +.rm i+ +.rm j+ +.rm k+ +.rm l+ +.rm m+ +.TE +.if \n-(b.=0 .nr c. \n(.c-\n(d.-44 + .LP -\f2\-noprompt\fP を指定した場合、ユーザーは新しいターゲット別名の入力を求められません。既存のエントリはそのターゲット別名で自動的に上書きされます。最後に、インポートできないエントリは自動的にスキップされ、警告が出力されます。 -.RE -.RE +.LP +OID ̾ξ硢OCTET STRING פĹΥХȤƥ󥷥ˤĤƤϡͤ extnValue HEX פ DER 󥳡ǥ󥰤ǤHEX ʸǤϡɸ HEX (0\-9a\-fA\-F) ʳʸ̵뤵ޤäơ \f201:02:03:04\fP \f201020304פξȤ\fP ƱͤȤƼդޤͤʤ硢ƥ󥷥ͥեɤ϶ˤʤޤ +.LP +.LP +\f2\-gencert\fP ǤΤ߻ѤhonoredפȤ̤̾ϡ׵˴ޤޤ륨ƥ󥷥ͥ褹ˡ򼨤ޤ̾ͤϡ \f2all\fP (׵ᤵ뤹٤ƤΥƥ󥷥ͥ褵) \f2name{:[critical|non\-critical]}\fP (̾դΥƥ󥷥ͥ褵뤬̤ isCritical °Ѥ) \f2\-name\fP (allפȤȤ˻Ѥ㳰򼨤) Υ޶ڤꥹȤǤǥեȤǤϡ׵ᤵ륨ƥ󥷥ͥ褵ޤ +.LP +.LP +\-ext ͥΥץ˲ä̤̾Ρޤ OID \-ext ΥץꤷϡΥƥ󥷥󤬡Ǥͥ褵Ƥ륨ƥ󥷥ɲäޤ̾ (ޤ OID) ͥ褵ͤǤѤϡͤȽ׵˴ޤޤΤ򥪡С饤ɤޤ +.LP +.LP +subjectKeyIdentifier ƥ󥷥Ͼ˺ޤʽ̾ǤʤξϡauthorityKeyIdentifier ˺ޤ +.LP +.LP +\f3:\fP 桼ϡƥ󥷥 (ӾΤۤΥե) Ȥ߹碌ˤäƤϡ󥿡ͥåȤɸ˽򤷤ʤ礬뤳ȤդƤܺ٤ˤĤƤϡ־ν˴ؤջפ򻲾ȤƤ +.LP +.SH "ޥ" +.LP .SS -データのエクスポート -.LP -.RS 3 - +ȥؤΥǡκޤɲ .LP .RS 3 .TP 3 -\-certreq {\-alias alias} {\-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} +\-gencert {\-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} +.LP +׵ե ( \f2keytool \-certreq\fP ޥɤǺǤ) ˱ƾޤΥޥɤϡ\f2infile\fP (άϡɸϤ) ׵ɤ߹ߡ̾ȤäƤ׵˽̾ơX.509 \f2outfile\fP (άϡɸϤ) Ϥޤ \f2\-rfc\fP ꤷ硢Ϸ BASE64 沽 PEM ˤʤޤʳξϡХʥ DER ޤ +.LP +\f2sigalg\fP ˤϡ˽̾դȤ˻Ȥ르ꥺꤷޤ\f2startdate\fP ϡͭˤʤ볫ϻ/դǤ\f2valDays\fP ˤϡͭꤷޤ +.LP +\f2dname\fP ꤹȡμΤȤƻѤޤʳξϡ׵ᤫ̾Ѥޤ +.LP +\f2ext\fP ϡޤ X.509 ƥ󥷥򼨤ޤ\-ext ʸˡˤĤƤϡְ̥ץפ򻲾ȤƤ +.LP +\f2\-gencert\fP ޥɤѤȡǤޤǤϡ \f2e1\fP Ȥޤξξˤϡ3 Ĥξ񤬴ޤޤƤޤ +.LP +Υޥɤϡcaca1ca2 e1 4 Ĥθڥޤ +.nf +\f3 +.fl +keytool \-alias ca \-dname CN=CA \-genkeypair +.fl +keytool \-alias ca1 \-dname CN=CA \-genkeypair +.fl +keytool \-alias ca2 \-dname CN=CA \-genkeypair +.fl +keytool \-alias e1 \-dname CN=E1 \-genkeypair +.fl +\fP +.fi +.LP + 2 ĤΥޥɤϡ̾դΥޤ \f2ca\fP ca1 ˽̾ \f2ca1 signs ca2\fP ˽̾ޤ٤ƼȯԤǤ +.nf +\f3 +.fl +keytool \-alias ca1 \-certreq | keytool \-alias ca \-gencert \-ext san=dns:ca1 | keytool \-alias ca1 \-importcert +.fl +keytool \-alias ca2 \-certreq | $KT \-alias ca1 \-gencert \-ext san=dns:ca2 | $KT \-alias ca2 \-importcert +.fl +\fP +.fi .LP -PKCS#10 形式を使って証明書署名要求 (CSR) を生成します。 +Υޥɤϡ e1 ƥե e1.cert ˳Ǽޤξ ca2 ˤäƽ̾ޤη̡e1 ξˤ caca1 ca2 ޤޤ뤳Ȥˤʤޤ +.nf +\f3 +.fl +keytool \-alias e1 \-certreq | keytool \-alias ca2 \-gencert > e1.cert +.fl +\fP +.fi +.TP 3 +\-genkeypair {\-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} +.LP +Υڥ (ӴϢ) ޤ X.509 v3 ʽ̾ǥåפޤϡñǤľȤƳǼޤξϡ\f2alias\fP ꤵ뿷ȥȥ˳Ǽޤ +.LP +\f2keyalg\fP ϸΥڥ˻Ѥ륢르ꥺ\f2keysize\fP ƸΥ򡢤줾ꤷޤ\f2sigalg\fP ˤϡʽ̾˽̾դȤ˻Ȥ르ꥺꤷޤΥ르ꥺϡ\f2keyalg\fP ȸߴΤΤǤʤФʤޤ +.LP +\f2dname\fP ˤϡ\f2alias\fP ˴Ϣդʽ̾ issuer եɤ subject եɤȤƻȤ X.500 ̾ꤷޤ ޥɹԤǼ̾ꤷʤäϡ̾Ϥޤ +.LP +\f2keypass\fP ˤϡ븰ΥڥΤݸΤ˻ȤѥɤꤷޤѥɤꤷʤäϡѥɤϤޤΤȤReturn 򲡤ȡȥΥѥɤƱѥɤΥѥɤꤵޤ\f2keypass\fP ϡ6 ʸʾˤɬפޤ +.LP +\f2startdate\fP ˤϡȯԻꤷޤϡX.509 ΡValidityץեɤΡNot BeforeͤȤƤФޤ .LP -CSR は、証明書発行局 (CA) に送信することを目的としたものです。CA は、証明書要求者を (通常はオフラインで) 認証し、証明書または証明書チェーンを送り返します。 この証明書または証明書チェーンは、キーストア内の既存の証明書チェーン (最初は 1 つの自己署名証明書から構成される) に置き換えて使います。 +ץͤϡ 2 ĤηΤ줫Ǥޤ +.RS 3 +.TP 3 +1. +([+\-]\f2nnn\fP[ymdHMS])+ +.TP 3 +2. +[yyyy/mm/dd] [HH:MM:SS] +.RE +.LP +ǽηǤϡȯԻϡꤵͤߤλ狼ܤޤꤵͤϡϢβ̤ͤϢ뤷Τˤʤޤ̤γͤǡץ饹 (+) ϻ֤ʤळȤ򡢥ޥʥ (\-) ϻ֤뤳Ȥ̣Ƥޤܤ֤ \f2nnn\fP ǡñ̤ǯ֡ʬޤäǤ (줾졢1 ʸΡyסmסdסHסMסޤϡSפǼƤ)̤γͤ \f2java.util.GregorianCalendar.add(int field, int amount)\fP ᥽åɤȤȤǡȯԻɲäͤ鱦ط׻ޤȤС \f2\-startdate \-1y+1m\-1d\fPȻꤹȡϻϼΤ褦ˤʤޤ +.nf +\f3 +.fl + Calendar c = new GregorianCalendar(); +.fl + c.add(Calendar.YEAR, \-1); +.fl + c.add(Calendar.MONTH, 1); +.fl + c.add(Calendar.DATE, \-1); +.fl + return c.getTime() +.fl +\fP +.fi +.LP +2 ܤηǤϡ桼ϡǯ//Ȼ:ʬ:ä 2 ĤʬǸ̩ʳϻꤷޤ (ϸλӤ)桼ϡ1 ĤʬǤޤϡ⤦ 1 Ĥʬϸߤ (ޤϻ) ƱˤʤȤȤǤ桼ϡ˼Ƥ褦ˡ̩˻ꤹɬפޤ (û 0 )դȻξꤵ줿֤ǡ2 Ĥʬδ֤˶ʸ 1 (1 Ĥ) ޤ֤Ͼ 24 ַǻꤷƤ +.LP +ץꤷʤȡդϸߤλˤʤޤץϡ 1 Ǥޤ +.LP +\f2valDays\fP ˤϡͭꤷޤ ( \f2\-startdate\fP ǻꤵ줿աޤ \f2\-startdate\fP ꤵƤʤϸߤդϤޤ) .LP -\f2alias\fP に関連付けられた非公開鍵と X.500 識別名は、PKCS#10 証明書要求を作成するのに使われます。非公開鍵はキーストア内ではパスワードによって保護されているので、非公開鍵にアクセスするには、適切なパスワードを提供する必要があります。コマンド行で \f2keypass\fP を指定しておらず、非公開鍵のパスワードがキーストアのパスワードと異なる場合は、非公開鍵のパスワードの入力を求められます。 +ΥޥɤϡΥ꡼Ǥ \f2\-genkey\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-genkeypair\fP Ѥ뤳Ȥ򤪴ᤷޤ +.TP 3 +\-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} +.LP +̩򿷤 \f2KeyStore.SecretKeyEntry\fP (\f2alias\fP ꤵ) ˳Ǽޤ +.LP +\f2keyalg\fP ̩˻Ѥ륢르ꥺ\f2keysize\fP 븰Υ򡢤줾ꤷޤ\f2keypass\fP ̩ݸ˻ѤѥɤǤѥɤꤷʤäϡѥɤϤޤΤȤReturn 򲡤ȡȥΥѥɤƱѥɤΥѥɤꤵޤ\f2keypass\fP ϡ6 ʸʾˤɬפޤ +.TP 3 +\-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} +.LP +ե \f2cert_file\fP ޤϾ (ξϡPKCS#7 αޤϰϢ X.509 󶡤) ɤ߹ߡ\f2alias\fP ˤäꤵ륭ȥȥ˳Ǽޤե뤬ꤵƤʤϡɸϤޤϾɤ߹ߤޤ +.LP +\f3keytool\fP ǤϡX.509 v1v2v3 ξ񡢤ӡPKCS#7 ξ񤫤鹽Ƥ PKCS#7 ξ򥤥ݡȤǤޤݡȤǡϡХʥ沽ޤϽϲǽ沽 (Base64 沽ȤƤФ) Τɤ餫󶡤ɬפޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ沽ξ硢ϡ\-\-\-\-\-BEGINפǻϤޤʸdzϤ졢\-\-\-\-\-ENDפǻϤޤʸǽλʤФʤޤ .LP -\f2sigalg\fP には、CSR に署名を付けるときに使うアルゴリズムを指定します。 +ΥݡȤˤϡ 2 ĤŪޤ +.RS 3 +.TP 3 +1. +ǤΥꥹȤ˾ɲä +.TP 3 +2. +CA ˾̾׵ (\-certreq ޥɤ򻲾) ̤ȤơCA ä򥤥ݡȤ +.RE +.LP +ɤμΥݡȤԤϡ \f2\-alias\fP ץͤˤäƻꤷޤ +.RS 3 +.TP 3 +1. +\f3̾ȥݥȤʤ\fP\f3keytool\fP ϥ桼Ǥ񥨥ȥɲä褦ȤƤΤȸʤޤξ硢̾ȥˤǤ¸ߤƤƤϤޤ̾Ǥ¸ߤƤ硢̾οǤ񤬤Ǥ¸ߤ뤳ȤˤʤΤǡ\f3keytool\fP ϥ顼ϤΥݡȤԤޤ +.TP 3 +2. +.LP +\f3̾ȥݥȤʤ\fP\f3keytool\fP ϥ桼Ǥ񥨥ȥɲä褦ȤƤΤȸʤޤ +.RE +\f3ǤΥݡ\fP +.LP +\f3keytool\fP ϡȥ˾ɲäˡȥˤǤ¸ߤ뿮ǤȤäơݡȤ񤫤 (롼 CA ) ʽ̾˻ޤǤοΥιۤߤޤ +.LP +\f2\-trustcacerts\fP ץꤷ硢ɲäξϿǤ뤹ʤ cacerts Ȥ̾Υե˴ޤޤΥȸʤޤ +.LP +\f3keytool\fP ݡȤ񤫤鼫ʽ̾ (ȥޤ cacerts ե˴ޤޤƤ뼫ʽ̾) ˻ޤǤοΥѥιۤ˼ԤϡݡȤξɽ桼˳ǧޤ ξϡɽ줿Υե󥬡ץȤȡۤΤʤ餫 (Ǥ) (νͭܿͤʤ) ꤷե󥬡ץȤȤӤޤֿǤפȤƾ򥤥ݡȤȤϡͭǤ뤳Ȥ򿵽Ť˳ǧɬפޤܺ٤ϡֿǤΥݡȤ˴ؤջפ򻲾ȤƤݡϡǧߤǤޤ \f2\-noprompt\fP ץ󤬻ꤵƤ硢桼ȤäϹԤޤ +\f3Υݡ\fP +.LP +־פ򥤥ݡȤȤϡȥοǤ񡢤 (\-trustcacerts ץ󤬻ꤵƤ) cacerts ȥեǹ줿Ȥäƾޤ .LP -CSR は、ファイル \f2certreq_file\fP に格納されます。ファイルが指定されていない場合は、標準出力に CSR が出力されます。 +Ǥ뤫ɤꤹˡϼΤȤǤ +.RS 3 +.TP 2 +o +\f3ñ X.509 Ǥ\fP\f3keytool\fP ϡ (롼 CA ) ʽ̾˻ޤǤογΩߤޤȡǧڤ˻Ȥγع¤ϡ\f2alias\fP οޤ󤬳Ωʤ硢ϥݡȤޤ󡣤ξ硢\f3keytool\fP ϾϤ桼˸ڤץץȤɽޤ桼οȽǤΤϡԲǽǤϤʤƤ˺Ǥ +.TP 2 +o +\f3 PKCS#7 ξޤϰϢ X.509 Ǥ\fPϡ桼ξ񤬺ǽˡ0 ʾ CA 񤬤μˤ褦¤٤ޤ󤬼ʽ̾Υ롼 CA ǽꡢ \f2\-trustcacerts\fP ץ󤬻ꤵƤ硢\f3keytool\fP ϡξȡȥޤϡcacertsץȥեοǤ뤹٤Ƥξȹ礷褦Ȥޤ󤬼ʽ̾Υ롼 CA ǽäƤ餺 \f2\-trustcacerts\fP ץ󤬻ꤵƤ硢\f3keytool\fP ϡȥޤϡcacertsץȥեοǤ񤫤鼫ʽ̾Υ롼 CA 򸫤ĤƤɲä褦Ȥޤξ񤬸Ĥ餺 \f2\-noprompt\fP ץ󤬻ꤵƤʤϡκǸξξ󤬽Ϥ졢桼ϳǧޤ +.RE +.LP +θ \f2alias\fP βˤǤ˳ǼƤ桼θ˰פ硢Ť󤬱ο֤ޤξ򿷤֤뤳ȤǤΤϡͭ \f2keypass\fPĤޤ곺륨ȥݸ뤿ΥѥɤꤷǤѥɤꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤ +.LP +ΥޥɤϡΥ꡼Ǥ \f2\-import\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-importcert\fP Ѥ뤳Ȥ򤪴ᤷޤ +.TP 3 +\-importkeystore \-srckeystore srckeystore \-destkeystore destkeystore {\-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} +.LP +ȥ饿åȥȥءñΥȥޤϤ٤ƤΥȥ򥤥ݡȤޤ +.LP +\f2srcalias\fP ץ󤬻ꤵ줿硢Υޥɤϡ̾ꤵñΥȥ򥿡åȥȥ˥ݡȤޤ\f2destalias\fP ͳǥå̾ꤵʤä硢\f2srcalias\fP å̾ȤƻѤޤΥȥ꤬ѥɤݸƤ硢\f2srckeypass\fP ȤäƤΥȥ꤬ޤ\f2srckeypass\fP ꤵʤä硢\f3keytool\fP \f2srcstorepass\fP ȤäƤΥȥ褦Ȥޤ\f2srcstorepass\fP ꤵʤäʤä硢桼ϥѥɤϤޤåȥȥ \f2destkeypass\fP ˤäݸޤ\f2destkeypass\fP ꤵʤä硢åȥȥϥȥΥѥɤˤäݸޤ +.LP +\f2srcalias\fP ץ󤬻ꤵʤä硢ȥΤ٤ƤΥȥ꤬åȥȥ˥ݡȤޤƥåȥȥб륽ȥ̾β˳ǼޤΥȥ꤬ѥɤݸƤ硢\f2srcstorepass\fP ȤäƤΥȥ꤬ޤ\f2srcstorepass\fP ꤵʤäʤä硢桼ϥѥɤϤޤȥΤ륨ȥ꥿פåȥȥǥݡȤƤʤ䡢륨ȥ򥿡åȥȥ˳Ǽݤ˥顼ȯ硢桼ϤΥȥ򥹥åפƽ³Ԥ뤫뤤ϽǤ뤫ޤåȥȥϥȥΥѥɤˤäݸޤ +.LP +å̾åȥȥˤǤ¸ߤƤ硢桼ϡΥȥ񤭤뤫뤤ϰۤʤ̾βǿȥ뤫ޤ .LP -CA からの応答をインポートするには、\f2importcert\fP コマンドを使います。 +\f2\-noprompt\fP ꤷ硢桼Ͽå̾Ϥޤ󡣴¸ΥȥϤΥå̾ǼưŪ˾񤭤ޤǸˡݡȤǤʤȥϼưŪ˥åפ졢ٹ𤬽Ϥޤ +.TP 3 +\-printcertreq {\-file file} +.LP +PKCS #10 ξ׵ƤϤޤ׵ϡkeytool \-certreq ޥɤǤޤΥޥɤϡfile ׵ɤ߹ߤޤfile άƤϡɸϤɤ߹ߤޤ +.RE + +.LP +.SS +ǡΥݡ +.LP +.RS 3 +.TP 3 +\-certreq {\-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} +.LP +PKCS#10 Ȥäƾ̾׵ (CSR) ޤ +.LP +CSR ϡȯԶ (CA) 뤳ȤŪȤΤǤCA ϡ׵Ԥ (̾ϥե饤) ǧڤޤϾ֤ޤ ξޤϾϡȥδ¸ξ (ǽ 1 Ĥμʽ̾񤫤鹽) ֤ƻȤޤ +.LP +\f2alias\fP ˴Ϣդ줿ϡPKCS#10 ׵Τ˻ȤޤϥȥǤϥѥɤˤäݸƤΤǡ˥ˤϡŬڤʥѥɤ󶡤ɬפޤޥɹԤ \f2keypass\fP ꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤdname ꤵƤϡ줬 CSR ǼΤȤƻѤޤʳξϡ̾˴Ϣդ줿 X.500 ̾Ѥޤ +.LP +\f2sigalg\fP ˤϡCSR ˽̾դȤ˻Ȥ르ꥺꤷޤ +.LP +CSR ϡե \f2certreq_file\fP ˳Ǽޤե뤬ꤵƤʤϡɸϤ CSR Ϥޤ +.LP +CA α򥤥ݡȤˤϡ\f2importcert\fP ޥɤȤޤ .TP 3 \-exportcert {\-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} .LP -\f2alias\fP に関連付けられた証明書を (キーストアから) 読み込み、ファイル \f2cert_file\fP に格納します。 +\f2alias\fP ˴Ϣդ줿 (ȥ) ɤ߹ߡե \f2cert_file\fP ˳Ǽޤ .LP -ファイルが指定されていない場合は、標準出力に証明書が出力されます。 +ե뤬ꤵƤʤϡɸϤ˾񤬽Ϥޤ .LP -デフォルトでは、バイナリ符号化方式の証明書が出力されます。 ただし、\f2\-rfc\fP オプションを指定した場合は、出力可能符号化方式の証明書が出力されます。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。 +ǥեȤǤϡХʥ沽ξ񤬽Ϥޤ \-rfc ץꤷϡϲǽ沽ξ񤬽Ϥޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ .LP -\f2alias\fP が、信頼できる証明書を参照している場合は、該当する証明書が出力されます。それ以外の場合、\f2alias\fP は、関連付けられた証明書チェーンを持つ鍵エントリを参照します。この場合は、チェーン内の最初の証明書が返されます。この証明書は、\f2alias\fP によって表されるエンティティーの公開鍵を認証する証明書です。 +\f2alias\fP Ǥ򻲾ȤƤϡ񤬽Ϥޤʳξ硢\f2alias\fP ϡϢդ줿ĸȥ򻲾Ȥޤξϡκǽξ֤ޤξϡ\f2alias\fP ˤäɽ륨ƥƥθǧڤǤ .LP -このコマンドは、以前のリリースでは \f2\-export\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-exportcert\fP を使用することをお勧めします。 +ΥޥɤϡΥ꡼Ǥ \f2\-export\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-exportcert\fP Ѥ뤳Ȥ򤪴ᤷޤ .RE .LP -.RE .SS -データの表示 -.LP -.RS 3 - +ǡɽ .LP .RS 3 .TP 3 \-list {\-alias alias} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v | \-rfc} {\-protected} {\-Jjavaoption} .LP -\f2alias\fP で特定されるキーストアエントリの内容を (標準出力に) 出力します。別名が指定されていない場合は、キーストア全体の内容が表示されます。 +\f2alias\fP ꤵ륭ȥȥƤ (ɸϤ) Ϥޤ̾ꤵƤʤϡȥΤƤɽޤ .LP -このコマンドは、デフォルトでは証明書の MD5 フィンガープリントを表示します。\f2\-v\fP オプションが指定されている場合は、所有者、発行者、シリアル番号、拡張機能などの付加的な情報とともに、人間が読むことのできる形式で証明書が表示されます。\f2\-rfc\fP オプションが指定されている場合は、出力可能符号化方式で証明書の内容が表示されます。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。 +ΥޥɤϡǥեȤǤϾ SHA1 ե󥬡ץȤɽޤ \f2\-v\fP ץ󤬻ꤵƤϡͭԡȯԼԡꥢֹ桢ĥǽʤɤղŪʾȤȤˡʹ֤ɤळȤΤǤǾɽޤ \f2\-rfc\fP ץ󤬻ꤵƤϡϲǽ沽ǾƤɽޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ .LP -\f2\-v\fP オプションと \f2\-rfc\fP オプションとを同時に指定することはできません。 +\f2\-v\fP ץ \f2\-rfc\fP ץƱ˻ꤹ뤳ȤϤǤޤ .TP 3 -\-printcert {\-file cert_file} {\-v} {\-Jjavaoption} +\-printcert {\-file cert_file | \-sslserver host[:port]} {\-jarfile JAR_file {\-rfc} {\-v} {\-Jjavaoption} +.LP +ե \f2cert_file\fP\f2host:port\fP ˤ SSL СޤϽ̾դ JAR ե \f2JAR_file\fP ( \f2\-jarfile\fP ץ) ɤ߹ߡʹ֤ɤळȤΤǤǾƤɽޤݡȤꤵƤʤϡɸ HTTPS ݡ 443 ꤵޤ \f2\-sslserver\fP \f2\-file\fP ץƱ˻ꤹ뤳ȤϤǤޤƱ˻ꤹȡ顼𤵤ޤץ󤬻ꤵƤʤϡɸϤɤ߹ߤޤ .LP -ファイル +\f2\-rfc\fP ꤵƤ硢keytool ϡ󥿡ͥå RFC 1421 ɸƤ褦ˡPEM ⡼ɤǾϤޤ +.LP +եޤɸϤɤ߹硢ξϡ󥿡ͥå RFC 1421 ɸƤ褦ˡХʥ沽ޤϽϲǽ沽ɽǤޤ .LP -インターネット RFC 1421 証明書符号化規格で定義されています。 +SSL Сեظˤϡ \f2\-J\-Dhttps.proxyHost=proxyhost\fP \f2\-J\-Dhttps.proxyPort=proxyport\fP 򥳥ޥɹԤǻꤷơץȥͥ󥰤ѤǤޤܺ٤ϡ +.na +\f2JSSE ե󥹥ɡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html򻲾ȤƤ .LP -注:このコマンドはキーストアとは関係なく動作します。 +\f3\fP: ΥץϥȥȤϴطʤѤǤޤ +.TP 3 +\-printcrl \-file crl_ {\-v} +.LP +ե \f2crl_file\fP μäꥹ (CRL) ɤ߹ߤޤ +.LP +μäꥹ (CRL) ϡǥȯԤȯԶ (CA) ˤäƼä줿ǥΥꥹȤǤCA ϡ\f2crl_file\fP ޤ +.LP +\f3\fP: ΥץϥȥȤϴطʤѤǤޤ .RE .LP -.RE .SS -キーストアの管理 -.LP -.RS 3 - +ȥδ .LP .RS 3 .TP 3 \-storepasswd [\-new new_storepass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption} .LP -キーストアの内容の整合性を保護するために使うパスワードを変更します。\f2new_storepass\fP には、新しいパスワードを指定します。 \f2new_storepass\fP は、6 文字以上でなければなりません。 +ȥƤݸ뤿˻Ȥѥɤѹޤ\f2new_storepass\fP ˤϡѥɤꤷޤnew_storepass ϡ6 ʸʾǤʤФʤޤ .TP 3 \-keypasswd {\-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} .LP -\f2alias\fP によって特定される非公開/秘密鍵を保護するためのパスワードを、\f2old_keypass\fP から \f2new_keypass\fP に変更します。 \f2new_keypass\fP は、6 文字以上でなければなりません。 +\f2alias\fP ˤäꤵ/̩ݸ뤿Υѥɤ\f2old_keypass\fP \f2new_keypass\fP ѹޤnew_keypass ϡ6 ʸʾǤʤФʤޤ .LP -コマンド行で \f2\-keypass\fP オプションを指定しておらず、鍵のパスワードがキーストアのパスワードと異なる場合は、鍵のパスワードの入力を求められます。 +ޥɹԤ \f2\-keypass\fP ץꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤ .LP -コマンド行で \f2\-new\fP オプションを指定しなかった場合は、新しいパスワードの入力を求められます。 +ޥɹԤ \f2\-new\fP ץꤷʤäϡѥɤϤޤ .TP 3 \-delete [\-alias alias] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption} .LP -\f2alias\fP によって特定されるエントリをキーストアから削除します。コマンド行で別名を指定しなかった場合は、別名の入力を求められます。 +\f2alias\fP ˤäꤵ륨ȥ򥭡ȥޤޥɹԤ̾ꤷʤäϡ̾Ϥޤ .TP 3 \-changealias {\-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} .LP -指定された \f2alias\fP から新しい別名 \f2destalias\fP へ、既存のキーストアエントリを移動します。ターゲット別名が指定されなかった場合、このコマンドはその入力を求めます。元のエントリがエントリパスワードで保護されていた場合、「\-keypass」オプション経由でそのパスワードを指定できます。鍵パスワードが指定されなかった場合、\f2storepass\fP (指定された場合) がまず試みられます。その試みが失敗すると、ユーザーはパスワードの入力を求められます。 +ꤵ줿 \f2alias\fP 鿷̾ \f2destalias\fP ء¸Υȥȥưޤå̾ꤵʤä硢ΥޥɤϤϤޤΥȥ꤬ȥѥɤݸƤ硢\-keypassץץͳǤΥѥɤǤޤѥɤꤵʤä硢\f2storepass\fP (ꤵ줿) ޤߤޤλߤԤȡ桼ϥѥɤϤޤ .RE .LP -.RE .SS -ヘルプの表示 -.LP -.RS 3 - +إפɽ .LP .RS 3 .TP 3 \-help .LP -基本的なコマンドとそのオプションの一覧を表示します。 +ŪʥޥɤȤΥץΰɽޤ +.LP +Υޥɤξܺ٤ˤĤƤϡΤ褦ϤƤ \f2command_name\fP ϥޥɤ̾Ǥ +.nf +\f3 +.fl + keytool \-\fP\f4command_name\fP\f3 \-help +.fl +\fP +.fi .RE .LP -.RE -.SH "例" -.LP - +.SH "" .LP .LP -ここでは、自分の鍵のペアおよび信頼できるエンティティーからの証明書を管理するためのキーストアを作成する場合を例として示します。 +ǤϡʬθΥڥӿǤ륨ƥƥξ뤿ΥȥȤƼޤ .LP .SS -鍵のペアの生成 -.LP -.RS 3 - +Υڥ .LP .LP -まず、キーストアを作成して鍵のペアを生成する必要があります。次に示すのは、実行するコマンドの例です。 +ޤȥƸΥڥɬפޤ˼Τϡ¹Ԥ륳ޥɤǤ .LP .nf \f3 .fl - keytool \-genkeypair \-dname "cn=Mark Jones, ou=JavaSoft, o=Sun, c=US" + keytool \-genkeypair \-dname "cn=Mark Jones, ou=Java, o=Oracle, c=US" .fl \-alias business \-keypass kpi135 \-keystore /working/mykeystore .fl @@ -485,16 +1096,16 @@ .LP .LP -注:このコマンドは 1 行に入力しなければなりません。例で複数行に入力しているのは読みやすくするためです。 +: Υޥɤ 1 ԤϤʤФʤޤʣԤϤƤΤɤߤ䤹뤿Ǥ .LP .LP -この例では、working ディレクトリに mykeystore という名前のキーストアを作成し (キーストアはまだ存在していないと仮定する)、作成したキーストアにパスワード ab987c を割り当てます。生成する公開鍵と非公開鍵のペアに対応するエンティティーの「識別名」は、通称が「Mark Jones」、組織単位が「JavaSoft」、組織が「Sun」、2 文字の国番号が「US」です。公開鍵と非公開鍵のサイズはどちらも 1024 ビットで、鍵の作成にはデフォルトの DSA 鍵生成アルゴリズムを使用します。 +Ǥϡworking ǥ쥯ȥ mykeystore Ȥ̾Υȥ (ȥϤޤ¸ߤƤʤȲꤹ)ȥ˥ѥ ab987c ƤޤΥڥб륨ƥƥΡּ̾פϡ̾ΤMark Jonesסȿñ̤JavaסȿOracleס2 ʸιֹ椬USפǤΥϤɤ 1024 ӥåȤǡκˤϥǥեȤ DSA 르ꥺѤޤ .LP .LP -このコマンドは、公開鍵と識別名情報を含む自己署名証明書 (デフォルトの SHA1withDSA 署名アルゴリズムを使用) を作成します。証明書の有効期間は 180 日です。 証明書は、別名「business」で特定されるキーストアエントリ内の非公開鍵に関連付けられます。非公開鍵にはパスワード「kpi135」が割り当てられます。 +Υޥɤϡȼ̾ޤ༫ʽ̾ (ǥեȤ SHA1withDSA ̾르ꥺ) ޤ֤ͭ 180 Ǥ ϡ̾businessפꤵ륭ȥȥ˴Ϣդޤˤϥѥɡkpi135פƤޤ .LP .LP -オプションのデフォルト値を使う場合は、上に示したコマンドを大幅に短くすることができます。実際には、オプションを 1 つも指定せずにコマンドを実行することも可能です。 デフォルト値を持つオプションでは、オプションを指定しなければデフォルト値が使われ、必要な値については入力を求められます。たとえば、単に次のように入力することもできます。 +ץΥǥեͤȤϡ˼ޥɤû뤳ȤǤޤºݤˤϡץ 1 Ĥꤻ˥ޥɤ¹Ԥ뤳ȤǽǤ ǥեͤĥץǤϡץꤷʤХǥեͤȤ졢ɬפͤˤĤƤϤޤȤСñ˼Τ褦Ϥ뤳ȤǤޤ .LP .nf \f3 @@ -505,19 +1116,17 @@ .fi .LP -この場合は、mykey という別名でキーストアエントリが作成され、新しく生成された鍵のペア、および 90 日間有効な証明書がこのエントリに格納されます。このエントリは、ホームディレクトリ内の .keystore という名前のキーストアに置かれます。このキーストアがまだ存在していない場合は、作成されます。識別名情報、キーストアのパスワード、および非公開鍵のパスワードについては、入力を求められます。 .LP -以下では、オプションを指定しないで \f2\-genkeypair\fP コマンドを実行したものとして例を示します。 情報の入力を求められた場合は、最初に示した \f2\-genkeypair\fP コマンドの値を入力したものとします (たとえば、非公開鍵のパスワードには kpi135 と指定)。 -.LP -.RE -.SS -証明書発行局に対する署名付き証明書の要求 -.LP -.RS 3 - +ξϡmykey Ȥ̾ǥȥȥ꤬졢줿Υڥ 90 ͭʾ񤬤Υȥ˳ǼޤΥȥϡۡǥ쥯ȥ .keystore Ȥ̾Υȥ֤ޤΥȥޤ¸ߤƤʤϡޤ̾󡢥ȥΥѥɡΥѥɤˤĤƤϡϤޤ .LP .LP -現時点で手元にあるのは、1 通の自己署名証明書だけです。証明書に証明書発行局 (CA) の署名が付いていれば、ほかのユーザーから証明書が信頼できる可能性も高くなります。CA の署名を取得するには、まず、証明書署名要求 (CSR) を生成します。 たとえば、次のようにします。 +ʲǤϡץꤷʤ \f2\-genkeypair\fP ޥɤ¹ԤΤȤ򼨤ޤϤ줿ϡǽ˼ \f2\-genkeypair\fP ޥɤͤϤΤȤޤ (ȤСΥѥɤˤ kpi135 Ȼ) +.LP +.SS +ȯԶɤФ̾դ׵ +.LP +.LP +Ǽ긵ˤΤϡ1 ̤μʽ̾Ǥ˾ȯԶ (CA) ν̾դƤСۤΥ桼񤬿Ǥǽ⤯ʤޤCA ν̾ˤϡޤ̾׵ (CSR) ޤ ȤСΤ褦ˤޤ .LP .nf \f3 @@ -528,41 +1137,39 @@ .fi .LP -CSR (デフォルト別名「mykey」によって特定されるエンティティーの CSR) が作成され、MarkJ.csr という名前のファイルに置かれます。このファイルは、VeriSign などの CA に提出します。 CA は要求者を (通常はオフラインで) 認証し、要求者の公開鍵を認証した署名付きの証明書を送り返します。場合によっては、CA が証明書のチェーンを返すこともあります。 証明書のチェーンでは、各証明書がチェーン内のその前の署名者の公開鍵を認証します。 -.RE +.LP +CSR (ǥե̾mykeyפˤäꤵ륨ƥƥ CSR) 졢MarkJ.csr Ȥ̾Υե֤ޤΥեϡVeriSign ʤɤ CA Фޤ CA ׵Ԥ (̾ϥե饤) ǧڤ׵Ԥθǧڤ̾դξ֤ޤˤäƤϡCA Υ֤Ȥ⤢ޤΥǤϡƾ񤬥Τν̾Ԥθǧڤޤ +.LP .SS -CA からの証明書のインポート -.LP -.RS 3 - +CA ξΥݡ .LP .LP -作成した自己署名証明書は、証明書チェーンで置き換える必要があります。 証明書チェーンでは、各証明書が、「ルート」CA を起点とするチェーン内の次の証明書の署名者の公開鍵を認証します。 +ʽ̾ϡ֤ɬפޤǤϡƾ񤬡֥롼ȡCA Ȥμξν̾Ԥθǧڤޤ .LP .LP -CA からの証明応答をインポートするには、キーストアか、(importcert コマンド で説明しているように) \f2cacerts\fP キーストアファイル内に 1 つ以上の「信頼できる証明書」がある必要があります。 +CA ξ򥤥ݡȤˤϡȥ \f2cacerts\fP ȥե (importcert ޥɤ) 1 İʾΡֿǤפɬפޤ .LP .RS 3 .TP 2 o -証明応答が証明書チェーンの場合は、チェーンのトップの証明書 (その CA の公開鍵を認証する「ルート」CA の証明書) だけを必要とする +ξϡΥȥåפξ ( CA θǧڤ֥롼ȡCA ξ) ɬפȤ .TP 2 o -証明応答が単一の証明書の場合は、証明書に署名した CA の発行用の証明書が必要で、その証明書が自己署名されない場合は、さらにその証明書の署名者用の証明書を必要とする。 このようにして自己署名される「ルート」CA の証明書までそれぞれ証明書を必要とする +ñξξϡ˽̾ CA ȯѤξɬפǡξ񤬼ʽ̾ʤϡˤξν̾ѤξɬפȤ롣 Τ褦ˤƼʽ֥̾롼ȡCA ξޤǤ줾ɬפȤ .RE .LP .LP -cacerts キーストアファイルは、5 つの VeriSign ルート CA 証明書を含んだ状態で出荷されているので、VeriSign の証明書を、信頼できる証明書としてキーストア内にインポートする必要はないかもしれません。ただし、ほかの CA に対して署名付き証明書を要求していて、この CA の公開鍵を認証する証明書が、cacerts にまだ追加されていない場合は、該当する CA からの証明書を、「信頼できる証明書」としてインポートする必要があります。 +cacerts ȥեϡĤ VeriSign 롼 CA ޤ֤ǽв٤ƤΤǡVeriSign ξ򡢿ǤȤƥȥ˥ݡȤɬפϤʤ⤷ޤ󡣤ۤ CA Фƽ̾դ׵ᤷƤơ CA θǧڤ񤬡cacerts ˤޤɲäƤʤϡ CA ξ򡢡ֿǤפȤƥݡȤɬפޤ .LP .LP -通常、CA からの証明書は、自己署名証明書、またはほかの CA によって署名された証明書です (後者の場合は、該当するほかの CA の公開鍵を認証する証明書も必要)。たとえば、ABC という企業が CA だとします。 このとき、この CA の公開鍵を認証する自己署名証明書と考えられる ABCCA.cer という名前のファイルを、ABC から入手したとします。 +̾CA ξϡʽ̾񡢤ޤϤۤ CA ˤäƽ̾줿Ǥ (Ԥξϡۤ CA θǧڤɬ)ȤСABC ȤȤ CA ȤޤΤȤ CA θǧڤ뼫ʽ̾ȹͤ ABCCA.cer Ȥ̾ΥեABC ꤷȤޤ .LP .LP -「信頼できる証明書」として証明書をインポートするときは、証明書が有効であることを慎重に確認する必要があります。まず、証明書の内容を表示し (\f3keytool\fP \f2\-printcert\fP コマンドを使用するか、または \f2\-noprompt\fP オプションを指定しないで \f3keytool\fP \f2\-importcert\fP コマンドを使用)、表示された証明書のフィンガープリントが、期待されるフィンガープリントと一致するかどうかを確認します。証明書を送信した人物に連絡し、この人物が提示した (または安全な公開鍵のリポジトリによって提示される) フィンガープリントと、上のコマンドで表示されたフィンガープリントとを比較します。フィンガープリントが一致すれば、送信途中でほかの何者か (攻撃者など) による証明書のすり替えが行われていないことを確認できます。送信途中でこの種の攻撃が行われていた場合、チェックを行わずに証明書をインポートすると、攻撃者によって署名されたすべてのものを信頼することになります。 +ֿǤפȤƾ򥤥ݡȤȤϡͭǤ뤳Ȥ򿵽Ť˳ǧɬפޤޤƤɽ (\f3keytool\fP \f2\-printcert\fP ޥɤѤ뤫ޤ \-noprompt ץꤷʤ \f3keytool\fP \f2\-importcert\fP ޥɤѤ ɽ줿Υե󥬡ץȤԤե󥬡ץȤȰפ뤫ɤǧޤʪϢοʪ󼨤 (ޤϰʸΥݥȥˤä󼨤) ե󥬡ץȤȡΥޥɤɽ줿ե󥬡ץȤȤӤޤե󥬡ץȤפСǤۤβԤ (Ԥʤ) ˤΤؤԤƤʤȤǧǤޤǤμι⤬ԤƤ硢åԤ鷺˾򥤥ݡȤȡԤˤäƽ̾줿٤ƤΤΤꤹ뤳Ȥˤʤޤ .LP .LP -ABCCA.cer を有効な証明書として信頼する場合は、証明書をキーストアに追加できます。 たとえば、次のようにします。 +ABCCA.cer ͭʾȤƿꤹϡ򥭡ȥɲäǤޤ ȤСΤ褦ˤޤ .LP .nf \f3 @@ -573,19 +1180,17 @@ .fi .LP -ABCCA.cer ファイルのデータを含む「信頼できる証明書」のエントリがキーストア内に作成され、該当するエントリに abc という別名が割り当てられます。 -.RE +.LP +ABCCA.cer եΥǡޤֿǤפΥȥ꤬ȥ˺졢륨ȥ abc Ȥ̾Ƥޤ +.LP .SS -CA からの証明応答のインポート -.LP -.RS 3 - +CA ξΥݡ .LP .LP -証明書署名要求の提出先の CA の公開鍵を認証する証明書をインポートしたあとは (または同種の証明書がすでに cacerts ファイル内に存在している場合は)、証明応答をインポートし、自己署名証明書を証明書チェーンで置き換えることができます。この証明書チェーンは、CA の応答がチェーンの場合、証明書署名要求に対する応答として CA から送り返された証明書チェーンです。 また、CA の応答が単一の証明書の場合は、この証明応答と、インポート先のキーストア内または cacerts キーストアファイル内にすでに存在する信頼できる証明書とを使って構築した証明書チェーンです。 +̾׵ CA θǧڤ򥤥ݡȤȤ (ޤƱξ񤬤Ǥ cacerts ե¸ߤƤ)򥤥ݡȤʽ֤̾뤳ȤǤޤξϡCA αξ硢̾׵ФȤ CA ֤줿Ǥ ޤCA αñξξϡξȡݡΥȥޤ cacerts ȥեˤǤ¸ߤ뿮ǤȤȤäƹۤǤ .LP .LP -たとえば、証明書署名要求を VeriSign に送信したとします。送り返された証明書の名前が VSMarkJ.cer だとすると、次のようにして応答をインポートできます。 +ȤС̾׵ VeriSign Ȥޤ֤줿̾ VSMarkJ.cer ȤȡΤ褦ˤƱ򥤥ݡȤǤޤ .LP .nf \f3 @@ -594,18 +1199,16 @@ .fl \fP .fi -.RE .LP .SS -公開鍵を認証する証明書のエクスポート +ǧڤΥݡ +.LP .LP -.RS 3 - +ȤСjarsigner(1) ġȤä Java ARchive (JAR) ե˽̾դȤޤ JAR եϥ饤ȤˤäƻȤޤ饤¦ǤϽ̾ǧڤȹͤƤޤ .LP -たとえば、jarsigner(1) を使って Java ARchive (JAR) ファイルに署名したとします。この JAR ファイルはクライアントによって使われますが、クライアント側では署名を認証したいと考えています。 .LP -クライアントが署名を認証する方法の 1 つに、まず自分の公開鍵の証明書を「信頼できる」エントリとしてクライアントのキーストアにインポートする方法があります。そのためには、証明書をエクスポートして、クライアントに提供します。たとえば、次のようにして、証明書を \f2MJ.cer\fP という名前のファイルにコピーします。 このエントリには「mykey」という別名が使われているとします。 +饤Ȥ̾ǧڤˡ 1 ĤˡޤʬθξֿǤץȥȤƥ饤ȤΥȥ˥ݡȤˡޤΤˤϡ򥨥ݡȤơ饤Ȥ󶡤ޤȤСΤ褦ˤơ \f2MJ.cer\fP Ȥ̾Υե˥ԡޤΥȥˤϡmykeyפȤ̾ȤƤȤޤ .LP .nf \f3 @@ -616,24 +1219,22 @@ .fi .LP -証明書と署名付き JAR ファイルを入手したクライアントは、\f3jarsigner\fP ツールを使って署名を認証できます。 -.RE +.LP +Ƚ̾դ JAR եꤷ饤Ȥϡ\f3jarsigner\fP ġȤäƽ̾ǧڤǤޤ +.LP .SS -キーストアのインポート -.LP -.RS 3 - +ȥΥݡ .LP .LP -コマンド「importkeystore」を使えば、あるキーストアの全体を別のキーストア内にインポートできます。 これは、鍵や証明書といったソースキーストア内のすべてのエントリが、単一のコマンドを使ってターゲットキーストア内にインポートされることを意味します。このコマンドを使えば、異なるタイプのキーストア内に含まれるエントリをインポートすることができます。インポート時には、ターゲットキーストア内の新しいエントリはすべて、元と同じ別名および (秘密鍵や非公開鍵の場合は) 保護用パスワードを持ちます。ソースキーストア内の非公開鍵や秘密鍵の回復時に問題が発生した場合、\f3keytool\fP はユーザーにパスワードの入力を求めます。このコマンドは、別名の重複を検出すると、ユーザーに新しい別名の入力を求めます。 ユーザーは、新しい別名を指定することも、単純に既存の別名の上書きを \f3keytool\fP に許可することもできます。 +ޥɡimportkeystoreפȤС륭ȥΤ̤Υȥ˥ݡȤǤޤϡȤäȥΤ٤ƤΥȥ꤬ñΥޥɤȤäƥåȥȥ˥ݡȤ뤳Ȥ̣ޤΥޥɤȤСۤʤ륿פΥȥ˴ޤޤ륨ȥ򥤥ݡȤ뤳ȤǤޤݡȻˤϡåȥȥοȥϤ٤ơƱ̾ (̩ξ) ݸѥѥɤޤȥ̩β꤬ȯ硢\f3keytool\fP ϥ桼˥ѥɤϤޤΥޥɤϡ̾νʣ򸡽Фȡ桼˿̾Ϥޤ桼ϡ̾ꤹ뤳Ȥ⡢ñ˴¸̾ξ񤭤 \f3keytool\fP ˵Ĥ뤳ȤǤޤ .LP .LP -たとえば、通常の JKS タイプのキーストア key.jks 内のエントリを PKCS #11 タイプのハードウェアベースのキーストア内にインポートするには、次のコマンドを使用できます。 +ȤС̾ JKS פΥȥ key.jks Υȥ PKCS #11 פΥϡɥ١Υȥ˥ݡȤˤϡΥޥɤѤǤޤ .LP .nf \f3 .fl -keytool \-importkeystore + keytool \-importkeystore .fl \-srckeystore key.jks \-destkeystore NONE .fl @@ -646,12 +1247,12 @@ .LP .LP -また、importkeystore コマンドを使えば、あるソースキーストア内の単一のエントリをターゲットキーストアにインポートすることもできます。この場合、上記の例で示したオプションに加え、インポート対象となる別名を指定する必要があります。srcalias オプションを指定する場合には、ターゲット別名もコマンド行から指定できるほか、秘密/非公開鍵の保護用パスワードやターゲット保護用パスワードも指定できます。そうすれば、プロンプトのまったく表示されない \f3keytool\fP コマンドを発行できます。これは、\f3keytool\fP コマンドをスクリプトファイルに含める際に非常に便利です。 次に例を示します。 +ޤimportkeystore ޥɤȤС륽ȥñΥȥ򥿡åȥȥ˥ݡȤ뤳ȤǤޤξ硢嵭Ǽץ˲äݡоݤȤʤ̾ꤹɬפޤsrcalias ץꤹˤϡå̾⥳ޥɹԤǤ̩ۤ/ݸѥѥɤ䥿åݸѥѥɤǤޤСץץȤΤޤäɽʤ \f3keytool\fP ޥɤȯԤǤޤϡ\f3keytool\fP ޥɤ򥹥ץȥե˴ޤݤǤ򼨤ޤ .LP .nf \f3 .fl -keytool \-importkeystore + keytool \-importkeystore .fl \-srckeystore key.jks \-destkeystore NONE .fl @@ -667,55 +1268,74 @@ .fl \fP .fi -.RE - -.LP -.SH "用語と警告" -.LP .LP .SS -キーストア +Ū SSL СѤξ +.LP +.LP +ˡ3 ĤΥƥƥĤޤ롼 CA (root) CA (ca) SSL С (server) ѤθڥȾ keytool ޥɤ򼨤ޤ٤ƤξƱȥ˳Ǽ褦ˤƤǤϡΥ르ꥺȤ RSA ꤹ뤳Ȥ򤪴ᤷޤ .LP -.RS 3 +.nf +\f3 +.fl +keytool \-genkeypair \-keystore root.jks \-alias root \-ext bc:c +.fl +keytool \-genkeypair \-keystore ca.jks \-alias ca \-ext bc:c +.fl +keytool \-genkeypair \-keystore server.jks \-alias server +.fl + +.fl +keytool \-keystore root.jks \-alias root \-exportcert \-rfc > root.pem +.fl + +.fl +keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore ca.jks \-certreq \-alias ca | keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore root.jks \-gencert \-alias root \-ext BC=0 \-rfc > ca.pem +.fl +keytool \-keystore ca.jks \-importcert \-alias ca \-file ca.pem +.fl + +.fl +keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore server.jks \-certreq \-alias server | keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore ca.jks \-gencert \-alias ca \-ext ku:c=dig,kE \-rfc > server.pem +.fl +cat root.pem ca.pem server.pem | keytool \-keystore server.jks \-importcert \-alias server +.fl +\fP +.fi .LP -キーストアは、暗号化の鍵と証明書を格納するための機能です。 -.RE +.SH "Ѹȷٹ" +.LP +.SS +KeyStore +.LP +.LP +ȥϡŹ沽θȾǼ뤿εǽǤ +.LP .RS 3 .TP 2 o -.TP 2 -o -\f3キーストアのエントリ\fP -.RS 3 - +\f3ȥΥȥ\fP .LP -キーストアには異なるタイプのエントリを含めることができます。\f3keytool\fP でもっとも適用範囲の広いエントリタイプは、次の 2 つです。 +ȥˤϰۤʤ륿פΥȥޤ뤳ȤǤޤ\f3keytool\fP ǤäȤŬϰϤιȥ꥿פϡ 2 ĤǤ .RS 3 .TP 3 1. -\f3鍵のエントリ\fP \- 各エントリは、非常に重要な暗号化の鍵の情報を保持します。この情報は、許可していないアクセスを防ぐために、保護された形で格納されます。一般に、この種のエントリとして格納される鍵は、秘密鍵か、対応する公開鍵の証明書チェーンを伴う非公開鍵です。\f3keytool\fP がこの両方のタイプのエントリを処理できるのに対し、\f3jarsigner\fP ツールは後者のタイプのエントリ、つまり非公開鍵とそれに関連付けられた証明書チェーンのみを処理します。 +\f3Υȥ\fP \- ƥȥϡ˽פʰŹ沽θξݻޤξϡĤƤʤɤˡݸ줿dzǼޤ ̤ˡμΥȥȤƳǼ븰ϡ̩бξȼǤ\f3keytool\fP ξΥפΥȥǤΤФ\f3jarsigner\fP ġϸԤΥפΥȥꡢĤޤȤ˴Ϣդ줿Τߤޤ .TP 3 2. -\f3信頼できる証明書のエントリ\fP \- 各エントリは、第三者からの公開鍵証明書を 1 つ含んでいます。この証明書は、「信頼できる証明書」と呼ばれます。 それは、証明書内の公開鍵が、証明書の「Subject」(所有者) によって特定されるアイデンティティーに由来するものであることを、キーストアの所有者が信頼するからです。証明書の発行者は、証明書に署名を付けることによって、その内容を保証します。 -.RE - -.LP +\f3ǤΥȥ\fP \- ƥȥϡ軰Ԥθ 1 ĴޤǤޤξϡֿǤפȸƤФޤ ϡθΡSubject(ͭ) ˤäꤵ륢ǥƥƥͳ褹ΤǤ뤳Ȥ򡢥ȥνͭԤꤹ뤫ǤȯԼԤϡ˽̾դ뤳ȤˤäơƤݾڤޤ .RE .TP 2 o -\f3キーストアの別名\fP -.RS 3 +\f3ȥ̾\fP .LP -キーストアのすべてのエントリ (鍵および信頼できる証明書) は、一意の「別名」を介してアクセスされます。 -.LP +ȥΤ٤ƤΥȥ (ӿǤ) ϡդΡ̾פ𤷤ƥޤ .LP -別名を指定するのは、\-genseckey コマンドを使って秘密鍵を生成したり、\-genkeypair コマンドを使って鍵ペア (公開鍵と非公開鍵) を生成したり、\-importcert コマンドを使って証明書または証明書チェーンを信頼できる証明書のリストに追加したりするなど、特定のエンティティーをキーストアに追加する場合です。これ以後、\f3keytool\fP コマンドでエンティティーを参照する場合は、このときに指定した別名を使用する必要があります。 -.LP +̾ꤹΤϡ\-genseckey ޥɤȤä̩ꡢ\-genkeypair ޥɤȤäƸڥ () ꡢ\-importcert ޥɤȤäƾޤϾǤΥꥹȤɲäꤹʤɡΥƥƥ򥭡ȥɲäǤʸ塢\f3keytool\fP ޥɤǥƥƥ򻲾ȤϡΤȤ˻ꤷ̾Ѥɬפޤ .LP -たとえば、\f2duke\fP という別名を使って新しい公開鍵と非公開鍵のペアを生成し、公開鍵を自己署名証明書 (「証明書チェーン」を参照) でラップするとします。 この場合は、次のコマンドを実行します。 -.LP +ȤС\f2duke\fP Ȥ̾ȤäƿΥڥ򼫸ʽ̾ (־פ򻲾) ǥåפȤޤ ξϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -723,9 +1343,8 @@ .fl \fP .fi - .LP -ここでは、初期パスワードとして dukekeypasswd を指定しています。 以後、別名 \f2duke\fP に関連付けられた非公開鍵にアクセスするコマンドを実行するときは、このパスワードが必要になります。duke の非公開鍵のパスワードをあとから変更するには、次のコマンドを実行します。 +ǤϡѥɤȤ dukekeypasswd ꤷƤޤ ʸ塢̾ duke Ϣդ줿˥륳ޥɤ¹ԤȤϡΥѥɤɬפˤʤޤ duke Υѥɤ򤢤ȤѹˤϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -733,49 +1352,37 @@ .fl \fP .fi - -.LP -パスワードが、dukekeypasswd から newpass に変更されます。 .LP -注 \-テストを目的とする場合、または安全であることがわかっているシステムで実行する場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。必要なパスワードのオプションをコマンド行で指定しなかった場合は、パスワードの入力を求められます。 +ѥɤdukekeypasswd newpass ѹޤ .LP -.RE +: ƥȤŪȤ硢ޤϰǤ뤳Ȥ狼äƤ륷ƥǼ¹ԤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤɬפʥѥɤΥץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ .TP 2 o -\f3キーストアの実装\fP -.RS 3 -\f2java.security\fP パッケージで提供される \f2KeyStore\fP クラスには、キーストア内の情報に対するアクセスと変更を行うための明確に定義されたインタフェースが用意されています。キーストアの固定実装としては、それぞれが特定の「タイプ」のキーストアを対象とする複数の異なる実装が存在可能です。 +\f3ȥμ\fP .LP -現在、\f3keytool\fP と \f3jarsigner\fP の 2 つのコマンド行ツールと、\f3Policy Tool\fP という名前の 1 つの GUI ベースのツールが、キーストアの実装を使用しています。\f2KeyStore\fP は public として使用可能なので、JDK ユーザーは \f2KeyStore\fP を使ったほかのセキュリティーアプリケーションも作成できます。 -.LP +\f2KeyStore\fP 饹 ( \f2java.security\fP ѥå󶡤) ˤϡȥξФ륢ѹԤΤ줿󥿥եѰդƤޤȥθȤƤϡ줾줬Ρ֥ספΥȥоݤȤʣΰۤʤ¸߲ǽǤ .LP -キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアをファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワードによって保護され、キーストア全体の整合性も (非公開鍵とは別の) パスワードによって保護されます。 -.LP +ߡ\f3keytool\fP \f3jarsigner\fP 2 ĤΥޥɹԥġȡ\f3Policy Tool\fP Ȥ̾ 1 Ĥ GUI ١Υġ뤬ȥμѤƤޤ \f2KeyStore\fP public ȤƻѲǽʤΤǡJDK 桼 KeyStore ȤäۤΥƥץꥱǤޤ .LP -キーストアの実装は、プロバイダベースです。具体的には、\f2KeyStore\fP が提供するアプリケーションインタフェースは、Service Provider Interface (SPI) という形で実装されています。つまり、対応する \f2KeystoreSpi\fP 抽象クラス (これも \f2java.security\fP パッケージに含まれている) があり、このクラスが Service Provider Interface のメソッドを定義しています。 これらのメソッドは、「プロバイダ」が実装しなければなりません。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービスのサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合のことです。したがって、キーストアの実装を提供するには、 -.na -\f2「Java(TM) 暗号化アーキテクチャー用プロバイダの実装方法」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlで説明しているように、クライアントが「プロバイダ」を実装し、KeystoreSpi サブクラスの実装を提供する必要があります。 -.LP +ȥˤϡOracle 󶡤Ȥ߹ߤΥǥեȤμޤϡJKS Ȥ̾ȼΥȥ () ѤΤǡȥեȤƼƤޤμǤϡġϸ̤Υѥɤˤäݸ졢ȥΤ (Ȥ̤) ѥɤˤäݸޤ .LP -アプリケーションでは、\f2KeyStore\fP クラスが提供する getInstance ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式を定義するとともに、キーストア内の非公開/秘密鍵とキーストア自体の整合性を保護するために使われるアルゴリズムを定義します。異なるタイプのキーストアの実装には、互換性はありません。 -.LP +ȥμϡץХ١ǤŪˤϡ \f2KeyStore\fP 󶡤륢ץꥱ󥤥󥿥եϡService Provider Interface (SPI) ȤǼƤޤĤޤꡢб \f2KeystoreSpi\fP ݥ饹 ( \f2java.security\fP ѥå˴ޤޤƤ) ꡢΥ饹֥ץХפɬפΤ Service Provider Interface Υ᥽åɤƤޤǡ֥ץХפȤϡJava Security API ˤäƥǽʥӥΥ֥åȤФθ󶡤ѥåޤϥѥåνΤȤǤäơȥμ󶡤ˤϡ +.na +\f2Java(TM) Ź沽ƥ㡼ѥץХμˡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlƤ褦ˡ饤Ȥ֥ץХפKeystoreSpi ֥饹μ󶡤ɬפޤ .LP -\f3keytool\fP は、任意のファイルベースのキーストア実装で動作します。keytool は、コマンド行から渡されたキーストアの場所をファイル名として扱い、これを FileInputStream に変換して、FileInputStream からキーストアの情報をロードします。一方、\f3jarsigner\fP ツールと \f3policytool\fP ツールは、URL で指定可能な任意の場所からキーストアを読み込むことができます。 -.LP -.LP -\f3keytool\fP と \f3jarsigner\fP の場合、\f2\-storetype\fP オプションを使ってコマンド行でキーストアのタイプを指定できます。\f3Policy Tool\fPの場合は、「キーストア」メニューによってキーストアのタイプを指定できます。 -.LP +ץꥱǤϡKeyStore 饹󶡤 getInstance եȥ᥽åɤȤȤǡޤޤʥץХۤʤ֥ספΥȥμǤޤ ȥΥפϡȥγǼȥǡȤȤˡȥ/̩ȥȥΤݸ뤿˻Ȥ륢르ꥺޤۤʤ륿פΥȥμˤϡߴϤޤ .LP -キーストアのタイプを明示的に指定しない場合、keytool、jarsigner、および policytool の各ツールは、セキュリティープロパティーファイル内で指定された \f2keystore.type\fP プロパティーの値に基づいてキーストアの実装を選択します。セキュリティープロパティーファイルは、\f2java.security\fP という名前でセキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位ディレクトリ) です。 +\f3keytool\fP ϡǤդΥե١Υȥưޤkeytool ϡޥɹԤϤ줿ȥξե̾Ȥư FileInputStream ѴơFileInputStream 饭ȥξɤޤ\f3jarsigner\fP ġ \f3policytool\fP ġϡURL ǻǽǤդξ꤫饭ȥɤ߹ळȤǤޤ .LP +\f3keytool\fP \f3jarsigner\fP ξ硢\f2\-storetype\fP ץȤäƥޥɹԤǥȥΥפǤޤ\f3Policy Tool\fPξϡ֥ȥץ˥塼ˤäƥȥΥפǤޤ .LP -各ツールは、\f2keystore.type\fP の値を取得し、この値で指定されたタイプのキーストアを実装しているプロバイダが見つかるまで、現在インストールされているすべてのプロバイダを調べます。目的のプロバイダが見つかると、そのプロバイダからのキーストアの実装を使います。 -.LP +ȥΥפŪ˻ꤷʤ硢keytooljarsigner policytool γƥġϡƥץѥƥեǻꤵ줿 \f2keystore.type\fP ץѥƥͤ˴Ťƥȥμ򤷤ޤƥץѥƥեϡ\f2java.security\fP Ȥ̾ǥƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ֤Ƥޤ\f2java.home\fP ϡ¹ԴĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment κǾ̥ǥ쥯ȥ) Ǥ .LP -\f2KeyStore\fP クラスでは \f2getDefaultType\fP という名前の static メソッドが定義されており、アプリケーションとアプレットはこのメソッドを使うことで \f2keystore.type\fP プロパティーの値を取得できます。次のコードは、デフォルトのキーストアタイプ (\f2keystore.type\fP プロパティーで指定されたタイプ) のインスタンスを生成します。 +ƥġϡ \f2keystore.type\fP ͤͤǻꤵ줿פΥȥƤץХĤޤǡߥ󥹥ȡ뤵Ƥ뤹٤ƤΥץХĴ٤ޤŪΥץХĤȡΥץХΥȥμȤޤ .LP +\f2KeyStore\fP 饹Ǥ \f2getDefaultType\fP Ȥ̾ static ᥽åɤƤꡢץꥱȥץåȤϤΥ᥽åɤȤȤ \f2keystore.type\fP ץѥƥͤǤޤΥɤϡǥեȤΥȥ ( \f2keystore.type\fP ץѥƥǻꤵ줿) Υ󥹥󥹤ޤ .nf \f3 .fl @@ -783,11 +1390,8 @@ .fl \fP .fi - .LP -.LP -デフォルトのキーストアタイプは JKS (Sun が提供する独自のタイプのキーストアの実装) です。これは、セキュリティープロパティーファイル内の次の行によって指定されています。 -.LP +ǥեȤΥȥפ JKS (Oracle 󶡤ȼΥפΥȥμ) ǤϡƥץѥƥեμιԤˤäƻꤵƤޤ .nf \f3 .fl @@ -795,14 +1399,10 @@ .fl \fP .fi - -.LP .LP -各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して別のキーストアのタイプを指定します。 -.LP +ƥġǥǥեȰʳΥȥμѤˤϡιԤѹ̤ΥȥΥפꤷޤ .LP -たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供しているプロバイダパッケージを使用するには、上の行を次のように変更します。 -.LP +ȤСpkcs12 ȸƤФ륿פΥȥμ󶡤ƤץХѥåѤˤϡιԤ򼡤Τ褦ѹޤ .nf \f3 .fl @@ -810,561 +1410,163 @@ .fl \fP .fi +.LP +: ȥΥפλǤϡʸȾʸ϶̤ޤ󡣤ȤСJKS jks ƱΤȤưޤ +.RE .LP -注:キーストアのタイプの指定では、大文字と小文字は区別されません。たとえば、JKS と jks は同じものとして扱われます。 -.RE -.RE .SS -証明書 + .LP -.RS 3 - -.LP -\f3証明書\fP (\f3公開鍵証明書\fPとも呼ぶ) とは、あるエンティティー (「発行者」) からのデジタル署名付きの文書のことです。 証明書には、ほかのあるエンティティー (「署名者」) の公開鍵 (およびその他の情報) が特別な値を持っていることが書かれています。 -.RE +\f3\fP (\f3\fPȤƤ) Ȥϡ륨ƥƥ (ȯԼԡ) Υǥ̾դʸΤȤǤ ˤϡۤΤ륨ƥƥ (ֽ̾ԡ) θ (Ӥ¾ξ) ̤ͤäƤ뤳Ȥ񤫤Ƥޤ .RS 3 .TP 2 o -.TP 2 -o -\f3証明書の用語\fP -.RS 3 - -.LP +\f3Ѹ\fP .RS 3 .TP 3 -公開鍵 -公開鍵は、特定のエンティティーに関連付けられた数です。 公開鍵は、該当するエンティティーとの間に信頼できる関係を持つ必要があるすべての人に対して公開することを意図したものです。公開鍵は、署名を検証するのに使われます。 + +.LP +ϡΥƥƥ˴Ϣդ줿Ǥϡ륨ƥƥȤδ֤˿Ǥطɬפ뤹٤ƤοͤФƸ뤳ȤտޤΤǤϡ̾򸡾ڤΤ˻Ȥޤ .TP 3 -デジタル署名 -データが「\f2デジタル署名\fP」されると、そのデータは、エンティティーの「アイデンティティー」と、そのエンティティーがデータの内容について知っていることを証明する署名とともに格納されます。エンティティーの非公開鍵を使ってデータに署名を付けると、データの偽造は不可能になります。 +ǥ̾ +.LP +ǡ֥ǥ̾פȡΥǡϡƥƥΡ֥ǥƥƥפȡΥƥƥǡƤˤĤΤäƤ뤳Ȥ̾ȤȤ˳ǼޤƥƥȤäƥǡ˽̾դȡǡε¤Բǽˤʤޤ .TP 3 -アイデンティティー -エンティティーを特定するための既知の方法です。システムによっては、公開鍵をアイデンティティーにするものがあります。 公開鍵のほかにも、Unix UID や電子メールアドレス、X.509 識別名など、さまざまなものをアイデンティティーとすることができます。 +ǥƥƥ +.LP +ƥƥꤹ뤿δΤˡǤƥˤäƤϡ򥢥ǥƥƥˤΤޤΤۤˤ⡢Unix UID Żҥ᡼륢ɥ쥹X.509 ̾ʤɡޤޤʤΤ򥢥ǥƥƥȤ뤳ȤǤޤ .TP 3 -署名 -署名は、なんらかのデータを基にエンティティー (署名者。 証明書に関しては発行者とも呼ばれる) の非公開鍵を使って計算されます。 -.TP 3 -非公開鍵 -非公開鍵は特定のエンティティーだけが知っている数のことで、この数のことを、そのエンティティーの非公開鍵といいます。非公開鍵は、ほかに知られないように秘密にしておくことが前提になっています。 非公開鍵と公開鍵は、すべての公開鍵暗号化システムで対になって存在しています。DSA などの典型的な公開鍵暗号化システムの場合、1 つの非公開鍵は正確に 1 つの公開鍵に対応します。非公開鍵は、署名を計算するのに使われます。 +̾ +.LP +̾ϡʤ餫Υǡ˥ƥƥ (̾ԡ ˴ؤƤȯԼԤȤƤФ) ȤäƷ׻ޤ .TP 3 -エンティティー -エンテンティーは、人、組織、プログラム、コンピュータ、企業、銀行など、一定の度合いで信頼の対象となるさまざまなものを指します。 + +.LP +ΥƥƥΤäƤΤȤǡοΤȤ򡢤ΥƥƥȤޤϡۤΤʤ褦̩ˤƤȤˤʤäƤޤȸϡ٤ƤθŹ沽ƥФˤʤä¸ߤƤޤDSA ʤɤŵŪʸŹ沽ƥξ硢1 ĤΤ 1 Ĥθбޤϡ̾׻Τ˻Ȥޤ +.TP 3 +ƥƥ +.LP +ƥƥϡ͡ȿץࡢԥ塼ȡԤʤɡٹ礤ǿоݤȤʤ뤵ޤޤʤΤؤޤ .RE - .LP -.LP -公開鍵暗号化では、その性質上、ユーザーの公開鍵にアクセスする必要があります。大規模なネットワーク環境では、互いに通信しているエンティティー間で以前の関係が引き続き確立されていると仮定したり、使われているすべての公開鍵を収めた信頼できるリポジトリが存在すると仮定したりすることは不可能です。このような公開鍵の配布に関する問題を解決するために証明書が考案されました。現在では、「証明書発行局 (CA)」が信頼できる第三者として機能します。CA は、ほかのエンティティーの証明書に署名する (発行する) 行為を、信頼して任されているエンティティー (企業など) です。CA は法律上の契約に拘束されるので、有効かつ信頼できる証明書だけを作成するものとして扱われます。 +Ź沽Ǥϡ塢桼θ˥ɬפޤ絬ϤʥͥåȥĶǤϡߤ̿Ƥ륨ƥƥ֤ǰδط³ΩƤȲꤷꡢȤƤ뤹٤Ƥθ᤿Ǥݥȥ꤬¸ߤȲꤷꤹ뤳ȤԲǽǤΤ褦ʸۤ˴ؤ褹뤿˾񤬹ͰƤޤߤǤϡ־ȯԶ (CA)פǤ軰ԤȤƵǽޤCA ϡۤΥƥƥξ˽̾ (ȯԤ) ԰٤򡢿ꤷǤƤ륨ƥƥ (Ȥʤ) ǤCA ˡΧη˹«ΤǡͭĿǤΤȤưޤ .na \f2VeriSign\fP @ .fi -http://www.verisign.com/、 +http://www.verisign.com/ .na \f2Thawte\fP @ .fi -http://www.thawte.com/、 +http://www.thawte.com/ .na \f2Entrust\fP @ .fi -http://www.entrust.com/ をはじめ、多くの CA が存在します。Netscape や Microsoft の認証サーバー、Entrust の CA 製品などを所属組織内で利用すれば、独自の証明書発行局を運営することも可能です。 -.LP -.LP -\f3keytool\fP を使うと、証明書の表示、インポート、およびエクスポートを行うことができます。また、自己署名証明書を生成することもできます。 +http://www.entrust.com/ Ϥᡢ¿ CA ¸ߤޤMicrosoft ǧڥСEntrust CA ʤʤɤ°ȿѤСȼξȯԶɤ򱿱Ĥ뤳ȤǽǤ .LP +\f3keytool\fP ȤȡɽݡȡӥݡȤԤȤǤޤޤʽ̾뤳ȤǤޤ .LP -現在、\f3keytool\fP は X.509 証明書を対象にしています。 -.LP -.RE +ߡ\f3keytool\fP X.509 оݤˤƤޤ .TP 2 o -\f3X.509 証明書\fP -.RS 3 -X.509 規格では、証明書に含める情報が定義されており、この情報を証明書に書き込む方法 (データ形式) についても記述されています。証明書のすべてのデータは、ASN.1/DER と呼ばれる 2 つの関連規格を使って符号化されます。\f2Abstract Syntax Notation 1\fP はデータについて記述しています。\f2Definite Encoding Rules\fP は、データの保存および転送の方法について記述しています。 +\f3X.509 \fP .LP -すべての X.509 証明書は、署名のほかに次のデータを含んでいます。 +X.509 ʤǤϡ˴ޤƤꡢξ˽񤭹ˡ (ǡ) ˤĤƤ⵭ҤƤޤΤ٤ƤΥǡϡASN.1/DER ȸƤФ 2 ĤδϢʤȤä沽ޤ\f2Abstract Syntax Notation 1\fP ϥǡˤĤƵҤƤޤ\f2Definite Encoding Rules\fP ϡǡ¸žˡˤĤƵҤƤޤ .LP +٤Ƥ X.509 ϡ̾Τۤ˼ΥǡޤǤޤ .RS 3 .TP 3 -バージョン -証明書に適用される X.509 規格のバージョンを特定します。 証明書に指定できる情報は、バージョンによって異なります。これまでに、3 つのバージョンが定義されています。\f3keytool\fP では、v1、v2、および v3 の証明書のインポートとエクスポートが可能です。keytool が生成するのは、v3 の証明書です。 +С .LP -「X.509 Version 1」は、1988 年から利用されて広く普及しており、もっとも一般的です。 +ŬѤ X.509 ʤΥСꤷޤ˻ǤϡСˤäưۤʤޤޤǤˡ3 ĤΥСƤޤ\f3keytool\fP Ǥϡv1v2 v3 ξΥݡȤȥݡȤǽǤkeytool Τϡv3 ξǤ +.LP +X.509 Version 1פϡ1988 ǯѤƹڤƤꡢäȤŪǤ .LP -「X.509 Version 2」では、Subject や発行者の名前をあとで再利用できるようにするために、Subject と発行者の一意識別子の概念が導入されました。ほとんどの証明書プロファイル文書では、名前を再使用しないことと、証明書で一意な識別子を使わないことが、強く推奨されています。Version 2 の証明書は、広くは使われていません。 +X.509 Version 2פǤϡSubject ȯԼԤ̾򤢤ȤǺѤǤ褦ˤ뤿ˡSubject ȯԼԤΰռ̻ҤγǰƳޤۤȤɤξץեʸǤϡ̾ƻѤʤȤȡǰդʼ̻ҤȤʤȤ侩ƤޤVersion 2 ξϡϻȤƤޤ .LP -「X.509 Version 3」はもっとも新しい (1996 年) 規格で、エクステンションの概念をサポートしています。エクステンションは誰でも定義することができ、証明書に含めることができます。現在使われている一般的なエクステンションとしては、KeyUsage (「署名専用」など、鍵の使用を特定の目的に制限する)、AlternativeNames (DNS 名、電子メールアドレス、IP アドレスなど、ほかのアイデンティティーを公開鍵に関連付けることができる) などがあります。エクステンションには、critical というマークを付けて、そのエクステンションのチェックと使用を義務づけることができます。たとえば、critical とマークされ、KeyCertSign が設定された KeyUsage エクステンションが証明書に含まれている場合、この証明書を SSL 通信中に提示すると、証明書が拒否されます。 これは、証明書のエクステンションによって、関連する非公開鍵が証明書の署名専用として指定されており、SSL では使用できないためです。 +X.509 Version 3פϤäȤ⿷ (1996 ǯ) ʤǡƥ󥷥γǰ򥵥ݡȤƤޤƥ󥷥ïǤ뤳ȤǤ˴ޤ뤳ȤǤޤ߻ȤƤŪʥƥ󥷥ȤƤϡKeyUsage (ֽ̾ѡפʤɡλѤŪ¤)AlternativeNames (DNS ̾Żҥ᡼륢ɥ쥹IP ɥ쥹ʤɡۤΥǥƥƥ˴Ϣդ뤳ȤǤ) ʤɤޤƥ󥷥ˤϡcritical ȤޡդơΥƥ󥷥ΥåȻѤ̳Ť뤳ȤǤޤȤСcritical ȥޡ졢KeyCertSign ꤵ줿 KeyUsage ƥ󥷥󤬾˴ޤޤƤ硢ξ SSL ̿󼨤ȡ񤬵ݤޤϡΥƥ󥷥ˤäơϢν̾ѤȤƻꤵƤꡢSSL ǤϻѤǤʤǤ .TP 3 -シリアル番号 -証明書を作成したエンティティーは、そのエンティティーが発行するほかの証明書と区別するために、証明書にシリアル番号を割り当てます。この情報は、さまざまな方法で使われます。 たとえば、証明書が取り消されると、シリアル番号が証明書の取り消しリスト (CRL) に格納されます。 +ꥢֹ +.LP +ƥƥϡΥƥƥȯԤۤξȶ̤뤿ˡ˥ꥢֹƤޤξϡޤޤˡǻȤޤȤС񤬼äȡꥢֹ椬μäꥹ (CRL) ˳Ǽޤ .TP 3 -署名アルゴリズム識別子 -証明書に署名を付けるときに CA が使ったアルゴリズムを特定します。 +̾르ꥺ༱̻ +.LP +˽̾դȤ CA Ȥä르ꥺꤷޤ .TP 3 -発行者名 -証明書に署名を付けたエンティティーの X.500 識別名です。エンティティーは、通常は CA です。この証明書を使うことは、証明書に署名を付けたエンティティーを信頼することを意味します。「ルート」つまり「トップレベル」の CA の証明書など、場合によっては発行者が自身の証明書に署名を付けることがある点に注意してください。 +ȯԼ̾ +.LP +˽̾դƥƥ X.500 ̾Ǥƥƥϡ̾ CA ǤξȤȤϡ˽̾դƥƥꤹ뤳Ȥ̣ޤ֥롼ȡפĤޤ֥ȥåץ٥פ CA ξʤɡˤäƤȯԼԤȤξ˽̾դ뤳ȤդƤ .TP 3 -有効期間 -各証明書は、限られた期間だけ有効になります。この期間は開始の日時と終了の日時によって指定され、数秒の短い期間から 100 年という長期にわたることもあります。選択される有効期間は、証明書への署名に使われる非公開鍵の強度や証明書に支払う金額など、さまざまな要因で異なります。有効期間は、使用する非公開鍵が損なわれない場合に、エンティティーが公開鍵を信頼できると期待される期間です。 +ͭ +.LP +ƾϡ¤줿֤ͭˤʤޤδ֤ϳϤȽλˤäƻꤵ졢äû֤ 100 ǯȤĹˤ錄뤳Ȥ⤢ޤ򤵤֤ͭϡؤν̾˻Ȥζ٤˻ʧۤʤɡޤޤװǰۤʤޤ֤ͭϡѤ»ʤʤˡƥƥǤȴԤ֤Ǥ .TP 3 -Subject 名 -証明書で公開鍵が識別されているエンティティーの名前です。この名前は X.500 標準を使うので、インターネット全体で一意なものと想定されます。これは、エンティティーの X.500 識別名 (DN) です。 次に例を示します。 +Subject ̾ +.LP +Ǹ̤Ƥ륨ƥƥ̾Ǥ̾ X.500 ɸȤΤǡ󥿡ͥåΤǰդʤΤꤵޤϡƥƥ X.500 ̾ (DN) Ǥ򼨤ޤ .nf \f3 .fl - CN=Java Duke, OU=Java Software Division, O=Sun Microsystems Inc, C=US + CN=Java Duke, OU=Java Software Division, O=Oracle Corporation, C=US .fl \fP .fi -これらはそれぞれ主体の通称、組織単位、組織、国を表します。 -.TP 3 -Subject の公開鍵情報 -名前を付けられたエンティティーの公開鍵とアルゴリズム識別子です。 アルゴリズム識別子では、公開鍵に対して使われている公開鍵暗号化システムおよび関連する鍵パラメータが指定されています。 -.RE - -.LP -.RE -.TP 2 -o -\f3証明書チェーン\fP -.RS 3 -.LP -\f3keytool\fP では、非公開鍵および関連する証明書「チェーン」を含むキーストアの「鍵」エントリを作成し、管理することができます。このようなエントリでは、非公開鍵に対応する公開鍵は、チェーンの最初の証明書に含まれています。 -.LP .LP -鍵を初めて作成すると (\-genkeypair コマンドを参照)、「自己署名証明書」という 1 つの要素だけを含むチェーンが開始されます。自己署名証明書は、発行者 (署名者) が主体 (証明書で認証されている公開鍵の持ち主) と同じである証明書のことです。\f2\-genkeypair\fP コマンドを呼び出して新しい公開鍵と非公開鍵のペアを作成すると、公開鍵は常に自己署名証明書でラップされます。 -.LP -.LP -このあと、証明書署名要求 (CSR) が生成されて (\-certreq コマンドを参照)、CSR が証明書発行局 (CA) に送信されると、CA からの応答がインポートされ (\-importcert コマンドを参照)、元の自己署名証明書は証明書チェーンによって置き換えられます。チェーンの最後にあるのは、Subject の公開鍵を認証した CA が発行した証明書 (応答) です。チェーン内のその前の証明書は、「CA」の公開鍵を認証する証明書です。 -.LP -.LP -CA の公開鍵を認証する証明書は、多くの場合、自己署名証明書 (つまり CA が自身の公開鍵を認証した証明書) であり、これはチェーンの最初の証明書になります。場合によっては、CA が証明書のチェーンを返すこともあります。この場合、チェーン内の最後の証明書 (CA によって署名され、鍵エントリの公開鍵を認証する証明書) に変わりはありませんが、チェーン内のその前の証明書は、CSR の送信先の CA とは「別の」CA によって署名され、CSR の送信先の CA の公開鍵を認証する証明書になります。さらに、チェーン内のその前の証明書は、次の CA の鍵を認証する証明書になります。 以下同様に、自己署名された「ルート」証明書に達するまでチェーンが続きます。したがって、チェーン内の (最初の証明書以後の) 各証明書では、チェーン内の次の証明書の署名者の公開鍵が認証されていることになります。 -.LP +Ϥ줾Τ̾Ρȿñ̡ȿɽޤ +.TP 3 +Subject θ .LP -多くの CA は、チェーンをサポートせずに発行済みの証明書だけを返します。 特に、中間の CA が存在しないフラットな階層構造の場合は、その傾向が顕著です。このような場合は、キーストアにすでに格納されている信頼できる証明書情報から、証明書チェーンを確立する必要があります。 -.LP -.LP -別の応答形式 (PKCS#7 で定義されている形式) でも、発行済み証明書に加え、証明書チェーンのサポートが含まれています。\f3keytool\fP では、どちらの応答形式も扱うことができます。 -.LP -.LP -トップレベル (ルート) CA の証明書は、自己署名証明書です。ただし、ルートの公開鍵に対する信頼は、ルートの証明書自体から導き出されるものではなく (たとえば、VeriSign ルート CA のような有名な識別名を使った自己署名証明書を作成すること自体は誰でも可能)、新聞などのほかの情報源に由来するものです。ルート CA の公開鍵は広く知られています。ルート CA の公開鍵を証明書に格納する理由は、証明書という形式にすることで多くのツールから利用できるようになるからにすぎません。 つまり、証明書は、ルート CA の公開鍵を運ぶ「媒体」として利用されるだけです。ルート CA の証明書をキーストアに追加するときは、その前に証明書の内容を表示し (\f2\-printcert\fP オプションを使用)、表示されたフィンガープリントと、新聞やルート CA の Web ページなどから入手した既知のフィンガープリントとを比較する必要があります。 -.LP +̾դ줿ƥƥθȥ르ꥺ༱̻ҤǤ르ꥺ༱̻ҤǤϡФƻȤƤŹ沽ƥपӴϢ븰ѥ᡼ꤵƤޤ .RE .TP 2 o -\f3cacerts 証明書ファイル\fP -.RS 3 +\f3\fP +.LP +\f3keytool\fP ǤϡӴϢ֥פޤ७ȥΡָץȥ뤳ȤǤޤΤ褦ʥȥǤϡбϡκǽξ˴ޤޤƤޤ .LP -\f3cacerts\fP 証明書ファイルは、セキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位ディレクトリ) です。 +ƺ (\-genkeypair ޥɤ򻲾)ּʽ̾פȤ 1 ĤǤޤ󤬳Ϥޤʽ̾ϡȯԼ (̾) (ǧڤƤλ) ƱǤΤȤǤ \f2\-genkeypair\fP ޥɤƤӽФƿΥڥȡϾ˼ʽ̾ǥåפޤ .LP -.LP -cacerts ファイルは、CA の証明書を含む、システム全体のキーストアです。システム管理者は、キーストアタイプに jks を指定することで、\f3keytool\fP を使ってこのファイルの構成と管理を行うことができます。cacerts キーストアファイルは、次の別名および X.500 所有者識別名を持ついくつかのルート CA 証明書を含んだ状態で出荷されています。 +Τȡ̾׵ (CSR) (\-certreq ޥɤ򻲾)CSR ȯԶ (CA) ȡCA αݡȤ (\-importcert ޥɤ򻲾)μʽ̾Ͼˤä֤ޤκǸˤΤϡSubject θǧڤ CA ȯԤ () ǤΤξϡCAפθǧڤǤ .LP -.RS 3 -.TP 2 -* -\f3Alias\fP:thawtepersonalfreemailca -.br -\f3Owner DN\fP:EmailAddress=personal\-freemail@thawte.com, -.br -CN=Thawte Personal Freemail CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepersonalbasicca -.br -\f3Owner DN\fP:EmailAddress=personal\-basic@thawte.com, -.br -CN=Thawte Personal Basic CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepersonalpremiumca -.br -\f3Owner DN\fP:EmailAddress=personal\-premium@thawte.com, -.br -CN=Thawte Personal Premium CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawteserverca -.br -\f3Owner DN\fP:EmailAddress=server\-certs@thawte.com, -.br -CN=Thawte Server CA, OU=Certification Services Division, -.br -O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepremiumserverca -.br -\f3Owner DN\fP:EmailAddress=premium\-server@thawte.com, -.br -CN=Thawte Premium Server CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:verisignclass1ca -.br -\f3Owner DN\fP:OU=Class 1 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2ca -.br -\f3Owner DN\fP:OU=Class 2 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3ca -.br -\f3Owner DN\fP:OU=Class 3 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignserverca -.br -\f3Owner DN\fP:OU=Secure Server Certification Authority, -.br -O="RSA Data Security, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass1g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 1 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass1g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 1 Public Primary Certification Authority \- G3, OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 2 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 2 Public Primary Certification Authority \- G3, -.br -OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 3 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 3 Public Primary Certification Authority \- G3, -.br -OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:baltimorecodesigningca -.br -\f3Owner DN\fP:CN=Baltimore CyberTrust Code Signing Root, -.br -OU=CyberTrust, O=Baltimore, C=IE -.TP 2 -* -\f3Alias\fP:gtecybertrustglobalca -.br -\f3Owner DN\fP:CN=GTE CyberTrust Global Root, -.br -OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US -.TP 2 -* -\f3Alias\fP:baltimorecybertrustca -.br -\f3Owner DN\fP:CN=Baltimore CyberTrust Root, -.br -OU=CyberTrust, O=Baltimore, C=IE -.TP 2 -* -\f3Alias\fP:gtecybertrust5ca -.br -\f3Owner DN\fP:CN=GTE CyberTrust Root 5, -.br -OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US -.TP 2 -* -\f3Alias\fP:entrustclientca -.br -\f3Owner DN\fP:CN=Entrust.net Client Certification Authority, -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/Client_CA_Info/CPS incorp. by ref. limits liab., -.br -O=Entrust.net, C=US -.TP 2 -* -\f3Alias\fP:entrustglobalclientca -.br -\f3Owner DN\fP:CN=Entrust.net Client Certification Authority, -.br -OU=(c) 2000 Entrust.net Limited, -.br -OU=www.entrust.net/GCCA_CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:entrust2048ca -.br -\f3Owner DN\fP:CN=Entrust.net Certification Authority (2048), -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:entrustsslca -.br -\f3Owner DN\fP:CN=Entrust.net Secure Server Certification Authority, -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net, C=US -.TP 2 -* -\f3Alias\fP:entrustgsslca -.br -\f3Owner DN\fP:CN=Entrust.net Secure Server Certification Authority, -.br -OU=(c) 2000 Entrust.net Limited, -.br -OU=www.entrust.net/SSL_CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:godaddyclass2ca -.br -\f3Owner DN\fP:OU=Go Daddy Class 2 Certification Authority, -.br -O="The Go Daddy Group, Inc.", C=US -.TP 2 -* -\f3Alias\fP:starfieldclass2ca -.br -\f3Owner DN\fP:OU=Starfield Class 2 Certification Authority, -.br -O="Starfield Technologies, Inc.", C=US -.TP 2 -* -\f3Alias\fP:valicertclass2ca -.br -\f3Owner DN\fP:EMAILADDRESS=info@valicert.com, -.br -CN=http://www.valicert.com/, -.br -OU=ValiCert Class 2 Policy Validation Authority, -.br -O="ValiCert, Inc.", L=ValiCert Validation Network -.TP 2 -* -\f3Alias\fP:geotrustglobalca -.br -\f3Owner DN\fP:CN=GeoTrust Global CA, -.br -O=GeoTrust Inc., C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureca -.br -\f3Owner DN\fP:OU=Equifax Secure Certificate Authority, -.br -O=Equifax, C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureebusinessca1 -.br -\f3Owner DN\fP:CN=Equifax Secure eBusiness CA\-1, -.br -O=Equifax Secure Inc., C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureebusinessca2 -.br -\f3Owner DN\fP:OU=Equifax Secure eBusiness CA\-2, -.br -O=Equifax Secure, C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureglobalebusinessca1 -.br -\f3Owner DN\fP:CN=Equifax Secure Global eBusiness CA\-1, -.br -O=Equifax Secure Inc., C=US -.TP 2 -* -\f3Alias\fP:soneraclass1ca -.br -\f3Owner DN\fP:CN=Sonera Class1 CA, O=Sonera, C=FI -.TP 2 -* -\f3Alias\fP:soneraclass2ca -.br -\f3Owner DN\fP:CN=Sonera Class2 CA, O=Sonera, C=FI -.TP 2 -* -\f3Alias\fP:comodoaaaca -.br -\f3Owner DN\fP:CN=AAA Certificate Services, -.br -O=Comodo CA Limited, L=Salford, ST=Greater Manchester, C=GB -.TP 2 -* -\f3Alias\fP:addtrustclass1ca -.br -\f3Owner DN\fP:CN=AddTrust Class 1 CA Root, -.br -OU=AddTrust TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:addtrustexternalca -.br -\f3Owner DN\fP:CN=AddTrust External CA Root, -.br -OU=AddTrust External TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:addtrustqualifiedca -.br -\f3Owner DN\fP:CN=AddTrust Qualified CA Root, -.br -OU=AddTrust TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:utnuserfirsthardwareca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Hardware, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utnuserfirstclientauthemailca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Client Authentication and Email, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utndatacorpsgcca -.br -\f3Owner DN\fP:CN=UTN \- DATACorp SGC, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utnuserfirstobjectca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Object, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.RE - +CA θǧڤϡ¿ξ硢ʽ̾ (Ĥޤ CA Ȥθǧڤ) ǤꡢϥκǽξˤʤޤˤäƤϡCA Υ֤Ȥ⤢ޤξ硢κǸξ (CA ˤäƽ̾졢ȥθǧڤ) ѤϤޤ󤬡ΤξϡCSR CA Ȥϡ̤ΡCA ˤäƽ̾졢CSR CA θǧڤˤʤޤˡΤξϡ CA θǧڤˤʤޤ ʲƱͤˡʽ̾줿֥롼ȡ׾ãޤǥ³ޤäơ (ǽξʸ) ƾǤϡμξν̾ԤθǧڤƤ뤳Ȥˤʤޤ +.LP +¿ CA ϡ򥵥ݡȤȯԺѤߤξ֤ޤäˡ֤ CA ¸ߤʤեåȤʳع¤ξϡηǤΤ褦ʾϡȥˤǤ˳ǼƤ뿮Ǥ󤫤顢Ωɬפޤ .LP -.LP -cacerts キーストアファイルの初期パスワードは、changeit です。システム管理者は、SDK のインストール後、このファイルのパスワードとデフォルトアクセス権を変更する必要があります。 -.LP -.RS 3 - -.LP - +̤α (PKCS#7 Ƥ) Ǥ⡢ȯԺѤ߾˲äΥݡȤޤޤƤޤ\f3keytool\fP ǤϡɤαⰷȤǤޤ .LP -\f3重要:\fP\f4cacerts\fP\f3 ファイルを確認してください。\fP -.br - -.LP -\f2cacerts\fP ファイル内の CA は、署名および他のエンティティーへの証明書発行のためのエンティティーとして信頼されるため、\f2cacerts\fP ファイルの管理は慎重に行う必要があります。\f2cacerts\fP ファイルには、信頼する CA の証明書だけが含まれていなければなりません。ユーザーは、自身の責任において、\f2cacerts\fP ファイルにバンドルされている信頼できるルート CA 証明書を検証し、信頼性に関する独自の決定を行います。信頼できない CA 証明書を \f2cacerts\fP ファイルから削除するには、\f2keytool\fP コマンドの削除オプションを使用します。\f2cacerts\fP ファイルは JRE のインストールディレクトリにあります。このファイルを編集するアクセス権がない場合は、システム管理者に連絡してください。 -.br - -.LP -.RE - -.LP -.RE +ȥåץ٥ (롼) CA ξϡʽ̾Ǥ롼ȤθФ뿮ϡ롼ȤξΤƳФΤǤϤʤ (ȤСVeriSign 롼 CA Τ褦ͭ̾ʼ̾Ȥäʽ̾뤳ȼΤïǤǽ)ʹʤɤΤۤξ󸻤ͳ褹ΤǤ롼 CA θϹΤƤޤ롼 CA θ˳ǼͳϡȤˤ뤳Ȥ¿Υġ뤫ѤǤ褦ˤʤ뤫ˤޤ Ĥޤꡢϡ롼 CA θ򱿤֡ΡפȤѤǤ롼 CA ξ򥭡ȥɲäȤϡ˾Ƥɽ ( \f2\-printcert\fP ץ)ɽ줿ե󥬡ץȤȡʹ롼 CA Web ڡʤɤꤷΤΥե󥬡ץȤȤӤɬפޤ .TP 2 o -\f3インターネット RFC 1421 証明書符号化規格\fP -.RS 3 +\f3cacerts ե\fP +.LP +\f3cacerts\fP Ȥ̾ξեϡƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ֤Ƥޤ\f2java.home\fP ϡ¹ԴĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment κǾ̥ǥ쥯ȥ) Ǥ .LP -多くの場合、証明書は、バイナリ符号化ではなく、インターネット RFC 1421 規格で定義されている出力可能符号化方式を使って格納されます。「Base 64 符号化」とも呼ばれるこの証明書形式では、電子メールやその他の機構を通じて、ほかのアプリケーションに証明書を容易にエクスポートできます。 -.LP +cacerts եϡCA ξޤࡢƥΤΥȥǤƥԤϡȥפ jks ꤹ뤳Ȥǡ\f3keytool\fP ȤäƤΥեιȴԤȤǤޤcacerts ȥեϡ롼 CA ΥǥեȥåȤޤ֤ǽв٤ƤޤξɽˤϡΥޥɤѤޤ +.nf +\f3 +.fl +keytool \-list \-keystore \fP\f4java.home\fP\f3/lib/security/cacerts +.fl +\fP +.fi .LP -\f2\-importcert\fP コマンドと \f2\-printcert\fP コマンドでは、この形式の証明書とバイナリ符号化の証明書を読み込むことができます。 -.LP +cacerts ȥեνѥɤϡchangeit ǤƥԤϡSDK Υ󥹥ȡ塢ΥեΥѥɤȥǥեȥѹɬפޤ .LP -\f2\-exportcert\fP コマンドでは、デフォルトでバイナリ符号化の証明書が出力されます。 ただし、\f2\-rfc\fP オプションを指定した場合は、出力可能符号化方式の証明書が出力されます。 +\f3: \fP\f4cacerts\fP\f3 եǧƤ\fP: \f2cacerts\fP ե CA ϡ̾¾ΥƥƥؤξȯԤΤΥƥƥȤƿꤵ뤿ᡢ \f2cacerts\fP եδϿŤ˹Ԥɬפޤ \f2cacerts\fP եˤϡꤹ CA ξޤޤƤʤФʤޤ󡣥桼ϡȤǤˤơ \f2cacerts\fP ե˥Хɥ뤵Ƥ뿮Ǥ롼 CA 򸡾ڤ˴ؤȼηԤޤǤʤ CA \f2cacerts\fP ե뤫ˤϡ \f2keytool\fP ޥɤκץѤޤ \f2cacerts\fP ե JRE Υ󥹥ȡǥ쥯ȥˤޤΥեԽ륢ʤϡƥԤϢƤ +.TP 2 +o +\f3󥿡ͥå RFC 1421 沽\fP .LP +¿ξ硢ϡХʥ沽ǤϤʤ󥿡ͥå RFC 1421 ʤƤϲǽ沽ȤäƳǼޤBase 64 沽פȤƤФ뤳ξǤϡŻҥ᡼䤽¾ε̤ơۤΥץꥱ˾ưפ˥ݡȤǤޤ .LP -\f2\-list\fP コマンドでは、デフォルトで証明書の MD5 フィンガープリントが出力されます。\f2\-v\fP オプションを指定すると、人間が読むことのできる形式で証明書が出力されます。 一方、\f2\-rfc\fP オプションを指定すると、出力可能符号化方式で証明書が出力されます。 +\f2\-importcert\fP \f2\-printcert\fP ޥɤǤϡηξȥХʥ沽ξɤ߹ळȤǤޤ .LP +\f2\-exportcert\fP ޥɤǤϡǥեȤǥХʥ沽ξ񤬽Ϥޤ \f2\-rfc\fP ץꤷϡϲǽ沽ξ񤬽Ϥޤ .LP -出力可能符号化方式で符号化された証明書は、次の行で始まります。 +\f2\-list\fP ޥɤǤϡǥեȤǾ SHA1 ե󥬡ץȤϤޤ \f2\-v\fP ץꤹȡʹ֤ɤळȤΤǤǾ񤬽Ϥޤ \f2\-rfc\fP ץꤹȡϲǽ沽Ǿ񤬽Ϥޤ .LP +ϲǽ沽沽줿ϡιԤǻϤޤޤ .nf \f3 .fl @@ -1372,11 +1574,8 @@ .fl \fP .fi - .LP -.LP -最後は、次の行で終わります。 -.LP +ǸϡιԤǽޤ .nf \f3 .fl @@ -1385,40 +1584,38 @@ \fP .fi .RE -.RE .LP .SS -X.500 識別名 +X.500 ̾ +.LP .LP -.RS 3 - +X.500 ̾ϡƥƥꤹ뤿˻ȤޤȤСX.509 \f2subject\fP եɤ \f2issuer\fP (̾) եɤǻꤵ̾ϡX.500 ̾Ǥ\f3keytool\fP ϡΥ֥ѡȤ򥵥ݡȤƤޤ .LP -X.500 識別名は、エンティティーを特定するために使われます。 たとえば、X.509 証明書の \f2subject\fP フィールドと \f2issuer\fP (署名者) フィールドで指定される名前は、X.500 識別名です。 \f3keytool\fP は、次のサブパートをサポートしています。 .RS 3 .TP 2 o -\f2commonName\fP \- 人の通称。 「Susan Jones」など +\f2commonName\fP \- ͤ̾Ρ Susan Jonesפʤ .TP 2 o -\f2organizationUnit\fP \- 小さな組織 (部、課など) の名称。 「仕入部」など +\f2organizationUnit\fP \- ȿ (ݤʤ) ̾Ρ ֻפʤ .TP 2 o -\f2organizationName\fP \- 大きな組織の名称。 「ABCSystems, Inc.」など +\f2organizationName\fP \- 礭ȿ̾Ρ ABCSystems, Inc.פʤ .TP 2 o -\f2localityName\fP \- 地域 (都市) 名。 「Palo Alto」など +\f2localityName\fP \- ϰ (Ի) ̾ Palo Altoפʤ .TP 2 o -\f2stateName\fP \- 州名または地方名。 「California」など +\f2stateName\fP \- ̾ޤ̾ Californiaפʤ .TP 2 o -\f2country\fP \- 2 文字の国番号。 「CH」など +\f2country\fP \- 2 ʸιֹ档 CHפʤ .RE .LP .LP -\f2\-genkeypair\fP コマンド の \f2\-dname\fP オプションの値として識別名文字列を指定する場合は、次の形式で指定する必要があります。 +\-genkeypair ޥɤ \f2\-dname\fP ץͤȤƼ̾ʸꤹϡ ηǻꤹɬפޤ .LP .nf \f3 @@ -1430,12 +1627,12 @@ .LP .LP -イタリック体の項目は、実際に指定する値を表します。 短縮形のキーワードの意味は、次のとおりです。 +åΤιܤϡºݤ˻ꤹͤɽޤ û̷Υɤΰ̣ϡΤȤǤ .LP .nf \f3 .fl - CN=commonName + CN=commonName .fl OU=organizationUnit .fl @@ -1452,22 +1649,24 @@ .LP .LP -次に示すのは、識別名文字列の例です。 +˼Τϡ̾ʸǤ .LP .nf \f3 .fl -CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, S=California, C=US +CN=Mark Smith, OU=Java, O=Oracle, L=Cupertino, S=California, C=US .fl \fP .fi .LP -次は、この文字列を使ったコマンドの例です。 +.LP +ϡʸȤäޥɤǤ +.LP .nf \f3 .fl -keytool \-genkeypair \-dname "CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, +keytool \-genkeypair \-dname "CN=Mark Smith, OU=Java, O=Oracle, L=Cupertino, .fl S=California, C=US" \-alias mark .fl @@ -1476,45 +1675,43 @@ .LP .LP -キーワードの短縮形では、大文字と小文字は区別されません。たとえば、CN、cn、および Cn は、どれも同じものとして扱われます。 +ɤû̷ǤϡʸȾʸ϶̤ޤ󡣤ȤСCNcn Cn ϡɤƱΤȤưޤ .LP .LP -一方、キーワードの指定順序には意味があり、各サブコンポーネントは上に示した順序で指定する必要があります。ただし、サブコンポーネントをすべて指定する必要はありません。たとえば、次のように一部のサブコンポーネントだけを指定できます。 +ɤλˤϰ̣ꡢƥ֥ݡͥȤϾ˼ǻꤹɬפޤ֥ݡͥȤ򤹤٤ƻꤹɬפϤޤ󡣤ȤСΤ褦˰Υ֥ݡͥȤǤޤ .LP .nf \f3 .fl -CN=Steve Meier, OU=SunSoft, O=Sun, C=US +CN=Steve Meier, OU=Java, O=Oracle, C=US .fl \fP .fi .LP .LP -識別名文字列の値にコンマが含まれる場合に、コマンド行で文字列を指定するときには、次のようにコンマを文字 \\ でエスケープする必要があります。 +̾ʸͤ˥ޤޤޤˡޥɹԤʸꤹȤˤϡΤ褦˥ޤʸ \\ ǥפɬפޤ .LP .nf \f3 .fl - cn=peter schuster, o=Sun Microsystems\\, Inc., o=sun, c=us + cn=Peter Schuster, ou=Java\\, Product Development, o=Oracle, c=US .fl \fP .fi .LP .LP -識別名文字列をコマンド行で指定する必要はありません。識別名を必要とするコマンドを実行するときに、コマンド行で識別名を指定しなかった場合は、各サブコンポーネントの入力を求められます。この場合は、コンマを文字 \\ でエスケープする必要はありません。 +̾ʸ򥳥ޥɹԤǻꤹɬפϤޤ󡣼̾ɬפȤ륳ޥɤ¹ԤȤˡޥɹԤǼ̾ꤷʤäϡƥ֥ݡͥȤϤޤξϡޤʸ \\ ǥפɬפϤޤ .LP -.RE .SS -信頼できる証明書のインポートに関する注意事項 +ǤΥݡȤ˴ؤջ .LP -.RS 3 - +.LP +: ǤȤƾ򥤥ݡȤˡƤ򿵽ŤĴ٤Ƥ .LP -重要:信頼できる証明書として証明書をインポートする前に、証明書の内容を慎重に調べてください。 .LP -まず、証明書の内容を表示し (\f2\-printcert\fP コマンドを使用するか、または \f2\-noprompt\fP オプションを指定しないで \f2\-import\fP コマンドを使用)、表示された証明書のフィンガープリントが、期待されるフィンガープリントと一致するかどうかを確認します。たとえば、あるユーザーから証明書が送られてきて、この証明書を \f2/tmp/cert\fP という名前でファイルに格納しているとします。この場合は、信頼できる証明書のリストにこの証明書を追加する前に、\f2\-printcert\fP コマンドを実行してフィンガープリントを表示できます。 たとえば、次のようにします。 +ޤƤɽ (\-printcert ޥɤѤ뤫ޤ \-noprompt ץꤷʤ \-importcert ޥɤ) ɽ줿Υե󥬡ץȤԤե󥬡ץȤȰפ뤫ɤǧޤȤС桼Ƥơξ /tmp/cert Ȥ̾ǥե˳ǼƤȤޤ ξϡǤΥꥹȤˤξɲäˡ \f2\-printcert\fP ޥɤ¹Ԥƥե󥬡ץȤɽǤޤȤСΤ褦ˤޤ .LP .nf \f3 @@ -1535,90 +1732,93 @@ .fl SHA1: 20:B6:17:FA:EF:E5:55:8A:D0:71:1F:E8:D6:9D:C0:37:13:0E:5E:FE .fl + SHA256: 90:7B:70:0A:EA:DC:16:79:92:99:41:FF:8A:FE:EB:90: +.fl + 17:75:E0:90:B2:24:4D:3A:2A:16:A6:E4:11:0F:67:A4 +.fl \fP .fi .LP -次に、証明書を送信した人物に連絡し、この人物が提示したフィンガープリントと、上のコマンドで表示されたフィンガープリントとを比較します。フィンガープリントが一致すれば、送信途中でほかの何者か (攻撃者など) による証明書のすり替えが行われていないことを確認できます。送信途中でこの種の攻撃が行われていた場合、チェックを行わずに証明書をインポートすると、攻撃者によって署名されたすべてのもの (攻撃的意図を持つクラスファイルを含んだ JAR ファイルなど) を信頼することになります。 +.LP +ˡʪϢοʪ󼨤ե󥬡ץȤȡΥޥɤɽ줿ե󥬡ץȤȤӤޤե󥬡ץȤפСǤۤβԤ (Ԥʤ) ˤΤؤԤƤʤȤǧǤޤǤμι⤬ԤƤ硢åԤ鷺˾򥤥ݡȤȡԤˤäƽ̾줿٤ƤΤ (Ūտޤĥ饹եޤ JAR եʤ) ꤹ뤳Ȥˤʤޤ .LP -注:証明書をインポートする前に必ず \f2\-printcert\fP コマンドを実行しなければならないわけではありません。 キーストア内の信頼できる証明書のリストに証明書を追加する前に \f2\-importcert\fP コマンドを実行すると、証明書の情報が表示され、確認を求めるメッセージが表示されます。インポート操作は、この時点で中止できます。ただし、確認メッセージが表示されるのは、\f2\-importcert\fP コマンドを \f2\-noprompt\fP オプションを指定せずに実行した場合だけです。\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 +.LP +: 򥤥ݡȤɬ \f2\-printcert\fP ޥɤ¹ԤʤФʤʤ櫓ǤϤޤ󡣥ȥοǤΥꥹȤ˾ɲä \f2\-importcert\fP ޥɤ¹Ԥȡξɽ졢ǧåɽޤݡϡλߤǤޤǧåɽΤϡ\-importcert ޥɤ \-noprompt ץꤻ˼¹ԤǤ \f2\-noprompt\fP ץ󤬻ꤵƤ硢桼ȤäϹԤޤ .LP -.RE .SS -パスワードに関する注意事項 +ѥɤ˴ؤջ .LP -.RS 3 - +.LP +ȥФԤۤȤɤΥޥɤǤϡȥΥѥɤɬפǤޤΥޥɤǤϡ/̩Υѥɤɬפˤʤ뤳Ȥޤ .LP .LP -キーストアに対する操作を行うほとんどのコマンドでは、ストアのパスワードが必要です。また、一部のコマンドでは、非公開/秘密鍵のパスワードが必要になることがあります。 -.LP -.LP -パスワードはコマンド行で指定できます (ストアのパスワードには \f2\-storepass\fP オプション、非公開鍵のパスワードには \f2\-keypass\fP オプションを使用)。ただし、テストを目的とする場合、または安全であることがわかっているシステムで実行する場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。 +ѥɤϥޥɹԤǻǤޤ (ȥΥѥɤˤ \f2\-storepass\fP ץΥѥɤˤ \f2\-keypass\fP ץ)ƥȤŪȤ硢ޤϰǤ뤳Ȥ狼äƤ륷ƥǼ¹ԤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ .LP .LP -必要なパスワードのオプションをコマンド行で指定しなかった場合は、パスワードの入力を求められます。 +ɬפʥѥɤΥץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ +.LP +.SS +ν˴ؤջ +.LP .LP -.RE -.SH "関連項目" +󥿡ͥåɸ +.na +\f2RFC 5280\fP @ +.fi +http://tools.ietf.org/rfc/rfc5280.txt ǤϡX.509 񤬽򤹤ץեƤޤΥץեˤϡΥեɤ䥨ƥ󥷥ͭͤͤȤ߹碌ޤޤƤޤ\f3keytool\fP ǤϡΤ٤Ƥε§ŬѤƤ櫓ǤϤʤΤǡɸ˽򤷤ʤǽꡢΤ褦ʾ JRE ۤΥץꥱǵݤ뤳Ȥޤ桼ϡ \f2\-dname\fP \f2\-ext\fP ʤɤŬʥץꤹ褦ˤƤ .LP - +.SH "Ϣ" .LP .RS 3 .TP 2 o -.LP -jar(1) ツールのドキュメント +jar(1) ġΥɥ .TP 2 o -.LP -jarsigner(1) ツールのドキュメント +jarsigner(1) ġΥɥ .TP 2 o -.LP -\f3keytool\fP の使用例については、 .na -\f4「Java Tutorial」\fP @ +\f4keytool\fP\f2 λˤĤƤϡ\fP @ .fi -http://java.sun.com/docs/books/tutorialの +http://download.oracle.com/javase/tutorial/security/index.html .na -\f4「Security」\fP @ +\f2Java Tutorial\fP\f4\fP @ .fi -http://java.sun.com/docs/books/tutorial/security/index.htmlを参照 +http://download.oracle.com/javase/tutorial/Security\f3򻲾\fP .RE .LP -.SH "変更点" -.LP - +.SH "ѹ" .LP .LP -Java SE 6 で keytool のコマンドインタフェースが変更されました。 +Java SE 6 keytool Υޥɥ󥿥եѹޤ .LP .LP -\f3keytool\fP は、ユーザーがパスワードを入力する際にその入力内容を表示しなくなりました。ユーザーはパスワード入力時にその入力内容を確認できなくなったため、初期キーストアパスワードを設定したり鍵パスワードを変更したりするなど、パスワードの設定や変更を行うたびにパスワードの再入力を求められます。 +\f3keytool\fP ϡ桼ѥɤϤݤˤƤɽʤʤޤ桼ϥѥϻˤƤǧǤʤʤäᡢȥѥɤꤷ기ѥɤѹꤹʤɡѥɤѹԤӤ˥ѥɤκϤޤ .LP .LP -変更されたコマンドの中には、名前が変更されただけのものもあれば、廃止されてこのドキュメントに記載されなくなったものもあります。以前のすべてのコマンド (名前が変更されたものと廃止されたものの両方) は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。keytool のコマンドインタフェースに加えられたすべての変更点の概要を、次に示します。 +ѹ줿ޥɤˤϡ̾ѹ줿ΤΤ⤢СѻߤƤΥɥȤ˵ܤʤʤäΤ⤢ޤΤ٤ƤΥޥ (̾ѹ줿Τѻߤ줿Τξ) ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤkeytool Υޥɥ󥿥ե˲ä줿٤Ƥѹγפ򡢼˼ޤ .LP .LP -名前が変更されたコマンド: +̾ѹ줿ޥ: .LP .RS 3 .TP 2 o -\f2\-export\fP の名前が \f2\-exportcert\fP に変更 +\f2\-export\fP ̾ \f2\-exportcert ѹ\fP .TP 2 o -\f2\-genkey\fP の名前が \f2\-genkeypair\fP に変更 +\f2\-genkey\fP ̾ \f2\-genkeypair ѹ\fP .TP 2 o -\f2\-import\fP の名前が \f2\-importcert\fP に変更 +\f2\-import\fP ̾ \f2\-importcert ѹ\fP .RE .LP .LP -廃止されてドキュメントに記載されなくなったコマンド: +ѻߤƥɥȤ˵ܤʤʤäޥ: .LP .RS 3 .TP 2 @@ -1626,19 +1826,19 @@ .na \f2\-keyclone\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#keycloneCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#keycloneCmd .TP 2 o .na \f2\-identitydb\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#identitydbCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#identitydbCmd .TP 2 o .na \f2\-selfcert\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#selfcertCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#selfcertCmd .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/native2ascii.1 --- a/jdk/src/linux/doc/man/ja/native2ascii.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/native2ascii.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH native2ascii 1 "02 Jun 2010" +.TH native2ascii 1 "14 Apr 2011" .LP -.SH "名前" -native2ascii \- ネイティブ \- ASCII コンバータ -.LP -.RS 3 - +.SH "̾" +native2ascii \- ͥƥ \- ASCII С .LP .LP -ネイティブコード (Latin 1 および Unicode 以外) のファイルを Unicode コードに変換します。 +ݡȤʸ󥳡ǥ󥰤ʸΥե ASCII ޤ Unicode פ뤤ϤξΥեѴޤεդѴԤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -44,36 +38,34 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -Java コンパイラおよびその他の Java ツールは、Latin\-1 または Unicode コード (\\udddd 表記) 文字を含んだファイルだけを処理することができます。 \f2native2ascii\fP は、これら以外の文字コードのファイルを Latin\-1 または Unicode コードのファイルに変換します。 +\f2native2ascii\fP Java ¹ԴĶǥݡȤʸ󥳡ǥ󥰤˥󥳡ɤ줿եASCII ǥ󥳡ɤ줿եѴޤASCII ʸåȤΰǤʤ٤Ƥʸ Unicode (\\uxxxxפɽ) ѤޤΥץϡISO\-8859\-1 ʸåȤ˴ޤޤʤʸޤޤƤץѥƥեɬפǤΥġϡεդѴ¹Ԥ뤳ȤǤޤ .LP .LP -\f2outputfile\fP を省略した場合、標準出力に出力されます。さらに、\f2inputfile\fP を省略した場合、標準入力から入力されます。 +\f2outputfile\fP ά硢ɸϤ˽Ϥޤˡ \f2inputfile\fP ά硢ɸϤϤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-reverse -逆の処理を行います。つまり、Latin\-1 または Unicode コードのファイルをネイティブコードに変換します。 +դνԤޤĤޤꡢISO\-8859\-1 Unicode פȤäƥ󥳡ɤ줿եJava ¹ԴĶǥݡȤʸ󥳡ǥ󥰤ΥեѴޤ .br .br .TP 3 \-encoding encoding_name -変換処理で使用するコードの名前を指定します。デフォルトのコードは、システムプロパティーの \f2file.encoding\fP から取得されます。\f2encoding_name\fP 文字列は、 +ѴǻѤʸ󥳡ǥ󥰤̾ꤷޤΥץ¸ߤʤϡǥեȤʸ󥳡ǥ ( \f2java.nio.charset.Charset.defaultCharset\fP ᥽åɤ) Ѥޤ \f2encoding_name\fP ʸϡ .na -\f4「サポートされているエンコーディング」\fP @ +\f4֥ݡȤƤʸ󥨥󥳡ǥ󥰡\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.htmlドキュメントに示されている、サポートされるエンコーディングの表の最初の列から取得される必要があります。 +http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.htmlɥȤ˼Ƥ롢Java ¹ԴĶǥݡȤʸ󥳡ǥ󥰤̾ˤɬפޤ +.br +.br .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/orbd.1 --- a/jdk/src/linux/doc/man/ja/orbd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/orbd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,29 +19,23 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH orbd 1 "02 Jun 2010" +.TH orbd 1 "14 Apr 2011" .LP -.SH "名前" +.SH "̾" orbd \- The Object Request Broker Daemon .LP -.RS 3 - +.LP +\f3orbd\fP ϡ饤Ȥ CORBA ĶΥСˤ³֥ȤƩŪ˸ƸƤӽФ˻Ѥޤ .LP .LP -\f3orbd\fP は、クライアントから CORBA 環境のサーバーにある持続オブジェクトを透過的に検索して呼び出すために使用します。 -.LP -.LP -\f3関連項目:\fP +\f3Ϣ:\fP .na -\f2ネームサービス\fP @ +\f2͡ॵӥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -52,42 +46,40 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3orbd\fP ツールに含まれるサーバーマネージャーを使うと、クライアントは CORBA 環境でサーバー上にある持続オブジェクトを透過的に検索して呼び出すことができます。持続サーバーは、ネームサービスに持続オブジェクト参照を発行する際、サーバーのポート番号の代わりに OBRD のポート番号をオブジェクト参照に含めます。持続オブジェクト参照のオブジェクト参照に ORBD ポート番号を含めることには、次のような利点があります。 +\f3orbd\fP ġ˴ޤޤ륵Сޥ͡㡼Ȥȡ饤Ȥ CORBA ĶǥСˤ³֥ȤƩŪ˸ƸƤӽФȤǤޤ³Сϡ͡ॵӥ˻³֥ȻȤȯԤݡСΥݡֹ OBRD Υݡֹ򥪥֥ȻȤ˴ޤޤ³֥ȻȤΥ֥ȻȤ ORBD ݡֹޤ뤳ȤˤϡΤ褦ޤ .LP .RS 3 .TP 2 o -ネームサービスにあるオブジェクト参照が、サーバーのライフタイムと無関係になる。オブジェクト参照は、始めてインストールされたときはネームサービスのサーバーによりネームサービスに発行されますが、その後は、サーバーの開始またはシャットダウンの回数にかかわらず、ORBD がいつでも呼び出したクライアントに正しいオブジェクト参照を返します。 +͡ॵӥˤ륪֥ȻȤСΥ饤ե̵طˤʤ롣֥ȻȤϡϤƥ󥹥ȡ뤵줿Ȥϥ͡ॵӥΥСˤ͡ॵӥȯԤޤθϡСγϤޤϥåȥβˤ餺ORBD ĤǤƤӽФ饤Ȥ֥ȻȤ֤ޤ .TP 2 o -クライアントは一度だけネーミングサービスのオブジェクト参照をルックアップする必要があるが、その後はサーバーのライフタイムによる変更とは無関係にこの参照を利用することができる +饤Ȥϰ٤͡ߥ󥰥ӥΥ֥ȻȤååפɬפ뤬θϥСΥ饤եˤѹȤ̵طˤλȤѤ뤳ȤǤ .RE .LP .LP -ORBD のサーバーマネージャーにアクセスするには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。サーバーマネージャーの詳細については、このドキュメントの\f2「サーバーマネージャー」\fPを参照してください。 +ORBD ΥСޥ͡㡼˥ˤϡservertool(1) ѤƥСưɬפޤservertool ϡץꥱץޤ³СϿϿưӥåȥԤΥޥɹԥ󥿥եǤСޥ͡㡼ξܺ٤ˤĤƤϡΥɥȤΡ֥Сޥ͡㡼פ򻲾ȤƤ .LP .LP -\f2orbd\fP を起動すると、ネームサービスも起動されます。ネームサービスについては、 +\f2orbd\fP ưȡ͡ॵӥⵯưޤ͡ॵӥˤĤƤϡ .na -\f2「ネームサービス」\fP @ +\f2֥͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html򻲾ȤƤ .LP -.SH "オプション" +.SH "ץ" .LP .SS -必須オプション +ɬܥץ .LP .RS 3 .TP 3 \-ORBInitialPort nameserverport -ネームサーバーを起動するポートの番号を指定します。\f2orbd\fP は、起動されると、このポート上で着信要求を待機します。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 (必須) +͡ॵСưݡȤֹꤷޤ\f2orbd\fP ϡưȡΥݡȾ忮׵ԵޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ(ɬ) .RE .LP @@ -95,75 +87,75 @@ .LP .SS -その他のオプション +¾Υץ .LP .RS 3 .TP 3 \-port port -ORBD を起動するポートを指定します。 ORBD は、このポートで、持続オブジェクトに対する要求を受け取ります。このポートのデフォルト値は 1049 です。 このポート番号は持続 Interoperable Object References (IOR) のポートフィールドに追加されます。(省略可) +ORBD ưݡȤꤷޤORBD ϡΥݡȤǡ³֥ȤФ׵ޤΥݡȤΥǥեͤ 1049 ǤΥݡֹ椬³ Interoperable Object References (IOR). Υݡȥեɤɲäޤ(ά) .RE .LP .RS 3 .TP 3 \-defaultdb directory -ORBD 持続格納ディレクトリ \f2orb.db\fP が作成されるベースディレクトリを指定します。このオプションが指定されていない場合、デフォルト値は「./orb.db」となります。(省略可) +ORBD ³Ǽǥ쥯ȥ \f2orb.db\fP ١ǥ쥯ȥꤷޤΥץ󤬻ꤵƤʤ硢ǥեͤϡ./orb.dbפȤʤޤ(ά) .RE .LP .RS 3 .TP 3 \-serverPollingTime milliseconds -\f2servertool\fP を使用して登録された持続サーバーが正常に動作していることを ORBD が確認する回数を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可) +\f2servertool\fP ѤϿ줿³СưƤ뤳Ȥ ORBD ǧꤷޤǥեͤ 1,000 ߥäǤ\f2milliseconds\fP ˻ꤹͤϡͭǤʤФʤޤ(ά) .RE .LP .RS 3 .TP 3 \-serverStartupDelay milliseconds -\f2servertool\fP を使用して登録された持続サーバーを再起動してから、位置転送の例外を送信するまでの ORBD の待機時間を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可) +\f2servertool\fP ѤϿ줿³СƵưƤ顢ž㳰ޤǤ ORBD Ե֤ꤷޤǥեͤ 1,000 ߥäǤ\f2milliseconds\fP ˻ꤹͤϡͭǤʤФʤޤ(ά) .RE .LP .RS 3 .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .TP 3 .RE .LP -.SH "ネームサービスの起動と停止" +.SH "͡ॵӥεư" .LP .LP -ネームサービスは、 +͡ॵӥϡ .na -\f2CORBA オブジェクト\fP @ +\f2CORBA ֥\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#CORBA%20objectにネーミングを可能にする CORBA サービスです。 ネーミングは名前をオブジェクト参照にバインドすることにより可能になります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#CORBA%20object˥͡ߥ󥰤ǽˤ CORBA ӥǤ͡ߥ󥰤̾򥪥֥ȻȤ˥Хɤ뤳Ȥˤǽˤʤޤ .na -\f2「ネームバインディング」\fP @ +\f2֥͡Хǥ󥰡\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#name%20bindingはネームサービスに格納され、クライアントは名前を与えて目的のオブジェクト参照を取得できます。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#name%20bindingϥ͡ॵӥ˳Ǽ졢饤Ȥ̾ͿŪΥ֥ȻȤǤޤ .LP .LP -ORBD は、クライアントまたはサーバーを実行する前に起動します。ORBD には、持続ネームサービスおよび一時ネームサービスが組み込まれています。 これらはどちらも COS ネームサービスの実装です。 +ORBD ϡ饤ȤޤϥС¹Ԥ˵ưޤORBD ˤϡ³͡ॵӥӰ͡ॵӥȤ߹ޤƤޤϤɤ COS ͡ॵӥμǤ .LP .LP -\f3「持続」ネームサービス\fPは、ネーミングコンテキストに対して持続性を提供します。つまり、この情報は、サービスの停止や起動後にも維持され、サービスに障害が発生した場合でも回復できます。ORBD を再起動すると、持続ネームサービスはネーミングコンテキストのグラフを復元し、すべてのクライアントとサーバーの名前のバインディングが保持されます。 +\f3ֻ³ץ͡ॵӥ\fPϡ͡ߥ󥰥ƥȤФƻ³󶡤ޤĤޤꡢξϡӥߤ䵯ưˤݻ졢ӥ˾㳲ȯǤǤޤORBD Ƶưȡ³͡ॵӥϥ͡ߥ󥰥ƥȤΥդ٤ƤΥ饤ȤȥС̾ΥХǥ󥰤ݻޤ .LP .LP \ .LP .LP -下位互換性のため、旧バージョンの JDK に同梱されていた\f3一時ネームサービス\fPが、今回のリリースの J2SE にも同梱されています。一時ネームサービスでは、ネームサービスの実行中にのみネーミングコンテキストが保持されます。サービスが中断されると、ネーミングコンテキストは失われます。 +̸ߴΤᡢС JDK ƱƤ\f2͡ॵӥ\fPΥ꡼ J2SE ˤƱƤޤ͡ॵӥǤϡ͡ॵӥμ¹ˤΤߥ͡ߥ󥰥ƥȤݻޤӥǤȡ͡ߥ󥰥ƥȤϼޤ .LP .LP -\f2\-ORBInitialPort\fP 引数は、\f2orbd\fP の必須のコマンド行引数で、ネームサービスが実行されるポートの番号を設定するために使われます。以下の説明では、Java\ IDL Object Request Broker Daemon 用にポート 1050 を使用できることを前提としています。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 +\f2\-ORBInitialPort\fP ϡ\f2orbd\fP ɬܤΥޥɹ԰ǡ͡ॵӥ¹ԤݡȤֹꤹ뤿˻ȤޤʲǤϡJavaIDL Object Request Broker Daemon Ѥ˥ݡ 1050 ѤǤ뤳ȤȤƤޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤɬפǤ̤ΥݡȤѹƤ .LP .LP -UNIX コマンドシェルで \f2orbd\fP を起動するには、次のように入力します。 +UNIX ޥɥ \f2orbd\fP ưˤϡΤ褦Ϥޤ .LP .nf \f3 @@ -175,7 +167,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -187,7 +179,7 @@ .LP .LP -これで ORBD が実行され、サーバーとクライアントのアプリケーションを実行できるようになります。クライアントとサーバーのアプリケーションは、実行時に、ネームサービスが実行されているポートの番号 (必要な場合はさらにマシン名) を認識している必要があります。これを実現する 1 つの方法は、次のコードをアプリケーションに追加することです。 + ORBD ¹Ԥ졢Сȥ饤ȤΥץꥱ¹ԤǤ褦ˤʤޤ饤ȤȥСΥץꥱϡ¹Իˡ͡ॵӥ¹ԤƤݡȤֹ (ɬפʾϤ˥ޥ̾) ǧƤɬפޤ¸ 1 ĤˡϡΥɤ򥢥ץꥱɲä뤳ȤǤ .LP .nf \f3 @@ -205,7 +197,7 @@ .LP .LP -この例では、ネームサービスは、ホスト MyHost のポート 1050 上で実行されます。別の方法として、コマンド行からサーバーまたはクライアントのアプリケーションを実行するときに、ポート番号またはマシン名あるいはその両方を指定する方法もあります。たとえば、次のコマンド行オプションを使用して、「HelloApplication」を起動できます。 +Ǥϡ͡ॵӥϡۥ MyHost Υݡ 1050 Ǽ¹Ԥޤ̤ˡȤơޥɹԤ饵Сޤϥ饤ȤΥץꥱ¹ԤȤˡݡֹޤϥޥ̾뤤Ϥξꤹˡ⤢ޤȤСΥޥɹԥץѤơHelloApplicationפưǤޤ .LP .nf \f3 @@ -217,35 +209,35 @@ .LP .LP -ネームサービスを停止するには、適切なオペレーティングシステムコマンドを使用します。 たとえば、Solaris では \f2pkill orbd\fP を使用し、\f2orbd\fP が実行されている DOS ウィンドウでは \f2Ctrl+C\fP キーを使用します。一時ネームサービスの場合は、サービスが終了されると、ネームサービスに登録された名前が消去される場合があります。Java IDL ネームサービスは、明示的に停止されるまで実行されます。 +͡ॵӥߤˤϡŬڤʥڥ졼ƥ󥰥ƥॳޥɤѤޤȤСSolaris \f2pkill orbd\fP \f2¹Ԥꡢ\fP \f2orbd\fP ư DOS ɥ Ctrl+C 򲡤ꤷޤ͡ॵӥξϡӥλȡ͡ॵӥϿ줿̾õ礬ޤJava IDL ͡ॵӥϡŪߤޤǼ¹Ԥޤ .LP .LP -ORDB に含まれるネームサービスの詳細については、 +ORDB ˴ޤޤ͡ॵӥξܺ٤ˤĤƤϡ .na -\f2「ネームサービス」\fP @ +\f2֥͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html򻲾ȤƤ .LP -.SH "サーバーマネージャー" +.SH "Сޥ͡㡼" .LP .LP -ORBD のサーバーマネージャーにアクセスして持続サーバーを実行するには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。servertool を使用してサーバーを起動する場合は、\f2orbd\fP が実行されている場所と同じポートとホストで起動する必要があります。サーバーを異なるポートで実行すると、ローカルコンテキスト用にデータベースに保存されている情報が無効になり、サービスが正しく動作しません。 +ORBD ΥСޥ͡㡼˥ƻ³С¹Ԥˤϡservertool(1) ѤƥСưɬפޤservertool ϡץꥱץޤ³СϿϿưӥåȥԤΥޥɹԥ󥿥եǤ\f2servertool\fP ѤƥСưϡ\f2orbd\fP ¹ԤƤƱݡȤȥۥȤǵưɬפޤСۤʤݡȤǼ¹Ԥȡ륳ƥѤ˥ǡ١¸Ƥ̵ˤʤꡢӥưޤ .LP .SS -サーバーマネージャー:例 +Сޥ͡㡼: .LP .LP -デモ用の +ǥѤ .na -\f2サンプルチュートリアル\fP @ +\f2ץ塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlExample.htmlを使用し、チュートリアルの手順に従って、\f2idlj\fP コンパイラと \f2javac\fP コンパイラを実行します。サーバーマネージャーを実行するには、次の手順に従ってアプリケーションを実行します。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlExample.htmlѤ塼ȥꥢμ˽äơ\f2idlj\fP ѥ \f2javac\fP ѥ¹ԤޤСޥ͡㡼¹Ԥˤϡμ˽äƥץꥱ¹Ԥޤ .LP .LP -\f2orbd\fP を起動します。 +\f2orbd\fP ưޤ .LP .LP -UNIX コマンドシェルで \f2orbd\fP を起動するには、次のように入力します。 +UNIX ޥɥ \f2orbd\fP ưˤϡΤ褦Ϥޤ .LP .LP \ @@ -260,7 +252,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -272,13 +264,13 @@ .LP .LP -\f21050\fP はネームサーバーを実行するポートです。\f2\-ORBInitialPort\fP は必要なコマンド行の引数です。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 +\f21050\fP ϥ͡ॵС¹ԤݡȤǤ\f2\-ORBInitialPort\fP ɬפʥޥɹԤΰǤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ .LP .LP -\f2servertool\fP を起動します。 +\f2servertool\fP ưޤ .LP .LP -Hello サーバーを起動するには、次のように入力します。 +Hello СưˤϡΤ褦Ϥޤ .LP .nf \f3 @@ -290,21 +282,21 @@ .LP .LP -前回の手順と同様にネームサーバー (\f2orbd\fP) のポートを指定します。 たとえば \f2\-ORBInitialPort 1050\fP のようになります。\f2servertool\fP は、ネームサーバーと同じポート上で起動する必要があります。 +μƱͤ˥͡ॵС (\f2orbd\fP) ΥݡȤꤷޤȤ \f2\-ORBInitialPort 1050\fP Τ褦ˤʤޤ\f2servertool\fP ϡ͡ॵСƱݡȾǵưɬפޤ .LP .LP -\f2servertool\fP コマンド行インタフェースが表示されます。 +\f2servertool\fP ޥɹԥ󥿥եɽޤ .LP .LP .LP .LP -\f2servertool\fP プロンプトから Hello サーバーを起動します。 +\f2servertool\fP ץץȤ Hello Сưޤ .LP .nf \f3 .fl - servertool > register \-server HelloServer \-classpath . \-applicationName + servertool > register \-server HelloServer \-classpath .\-applicationName .fl HelloServerApName .fl @@ -313,13 +305,13 @@ .LP .LP -\f2servertool\fP によってサーバーが登録されて、「HelloServerApName」という名前がサーバーに割り当てられ、サーバー ID が表示されます。 +\f2servertool\fP ˤäƥСϿơHelloServerApNameפȤ̾С˳Ƥ졢С ID ɽޤ .LP .LP .LP .LP -別の端末ウィンドウまたはプロンプトからクライアントアプリケーションを実行します。 +̤üɥޤϥץץȤ饯饤ȥץꥱ¹Ԥޤ .LP .LP \ @@ -334,10 +326,10 @@ .LP .LP -この例の \f2\-ORBInitialHost localhost\fP は省略することができます。 ネームサーバーが Hello クライアントとして同一ホスト上で動作しているからです。ネームサーバーが別のホストで動作している場合は、IDL ネームサーバーが動作しているホストを \f2\-ORBInitialHost\fP \f2nameserverhost\fP で指定します。 + \f2\-ORBInitialHost localhost\fP Ͼά뤳ȤǤޤ͡ॵС Hello 饤ȤȤƱۥȾưƤ뤫Ǥ͡ॵС̤ΥۥȤưƤϡIDL ͡ॵСưƤۥȤ \f2\-ORBInitialHost\fP \f2nameserverhost\fP ǻꤷޤ .LP .LP -前回の手順と同様にネームサーバー (\f2orbd\fP) のポートを指定します。 たとえば \f2\-ORBInitialPort 1050\fP のようになります。 +μƱͤ˥͡ॵС (\f2orbd\fP) ΥݡȤꤷޤȤ \f2\-ORBInitialPort 1050\fP Τ褦ˤʤޤ .LP .LP \ @@ -346,21 +338,21 @@ \ .LP .LP -サーバーマネージャーの操作が終了したら、ネームサーバー (\f2orbd\fP) と \f2servertool\fP を停止するか終了してください。 +Сޥ͡㡼λ顢͡ॵС (\f2orbd\fP) \f2servertool\fP ߤ뤫λƤ .LP .LP -DOS プロンプトで \f2orbd\fP をシャットダウンするには、サーバーを実行しているウィンドウを選択して \f2Ctrl+C\fP と入力します。UNIX シェルで \f2orbd\fP をシャットダウンするには、プロセスを検出して終了 (kill) します。サーバーを明示的に停止するまでは、呼び出し待機状態が続きます。 +DOS ץץȤ \f2orbd\fP 򥷥åȥ󤹤ˤϡС¹ԤƤ륦ɥ򤷤 \f2Ctrl+C\fP ϤޤUNIX \f2orbd\fP 򥷥åȥ󤹤ˤϡץ򸡽Фƽλ (kill) ޤСŪߤޤǤϡƤӽФԵ֤³ޤ .LP .LP -\f2servertool\fP をシャットダウンするには、\f2quit\fP と入力し、キーボードの \f2Enter\fP キーを押します。 +\f2servertool\fP 򥷥åȥ󤹤ˤϡ \f2quit\fP Ϥƥܡɤ \f2Enter\fP 򲡤ޤ .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2ネームサービス\fP @ +\f2͡ॵӥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/pack200.1 --- a/jdk/src/linux/doc/man/ja/pack200.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/pack200.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,99 +19,79 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH pack200 1 "02 Jun 2010" +.TH pack200 1 "14 Apr 2011" .LP -.SH "名前" -pack200 \- JAR パックツール +.SH "̾" +pack200 \- JAR ѥåġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -終了ステータス +λơ .TP 2 o -関連項目 +Ϣ .TP 2 o -説明 +ջ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .LP \f4pack200\fP\f2 [ \fP\f2options\fP ] \f2output\-file\fP \f2JAR\-file\fP .LP .LP -オプションの指定順序に決まりはありません。コマンド行または properties ファイルに指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。 -.LP -.RS 3 - +ץλ˷ޤϤޤ󡣥ޥɹԤޤ properties ե˻ꤵ줿ǸΥץ󤬡˻ꤵ줿٤ƤΥץͥ褵ޤ .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 output\-file -出力ファイルの名前。 +ϥե̾ .TP 3 JAR\-file -入力ファイルの名前。 +ϥե̾ .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -\f2pack200\fP ツールは、Java \f2gzip\fP 圧縮プログラムを使用して、JAR ファイルを \f2pack200\fP 圧縮ファイルに変換する Java アプリケーションです。\f2pack200\fP ファイルは高圧縮のファイルで、帯域幅の節約やダウンロード時間の短縮や直接配備することができます。 +\f2pack200\fP ġϡJava gzip ̥ץѤ JAR ե \f2pack200\fP ̥եѴ \f2Java ץꥱ\fP Ǥ \f2pack200\fP եϹⰵ̤ΥեǡӰɻ֤ṳ̂ľ뤳ȤǤޤ .LP .LP -\f2pack200\fP ツールには、圧縮エンジンの設定や微調整を行うオプションが用意されています。 +\f2pack200\fP ġˤϡ̥󥸥ĴԤץѰդƤޤ .LP .SS -一般的な使用方法: -.LP -.RS 3 - +Ūʻˡ: .LP .LP \f2% pack200 myarchive.pack.gz myarchive.jar\fP .LP -.RE -.LP -この例では、デフォルトの \f2pack200\fP 設定で、\f2myarchive.pack.gz\fP が作成されます。 .LP -.SH "オプション" +Ǥϡ \f2ǥեȤ pack200 Ѥ\fP myarchive.pack.gz \f2ޤ\fP .LP - +.SH "ץ" .LP .LP \f4\-r \-\-repack\fP .LP -.RS 3 - .LP -.LP -\f2myarchive.jar\fP ファイルをパックした後にアンパックすることにより、JAR ファイルを生成します。生成されたファイルは、\f2jarsigner(1)\fP ツールの入力ファイルとして使用できます。 -.LP -.RS 3 - +ե \f2myarchive.jar\fP ѥåȥѥå뤳ȤǡJAR եޤ줿ե \f2jarsigner(1)\fP ġϥեȤƻѤǤޤ .LP .LP \f2% pack200 \-\-repack myarchive\-packer.jar myarchive.jar\fP @@ -119,158 +99,122 @@ .LP \f2% pack200 \-\-repack myarchive.jar\fP .LP -.RE -.RE .LP \f4\-g \-\-no\-gzip\fP .LP -.RS 3 - .LP -.LP -\f2pack200\fP ファイルを生成します。このオプションを指定するときは、適切な圧縮ツールを使用する必要があります。 また、ターゲットシステムでは、対応する圧縮解除ツールを使用する必要があります。 -.LP -.RS 3 - +\f2pack200\fP եޤΥץꤹȤϡŬڤʰ̥ġѤɬפޤޤåȥƥǤϡб밵̲ġѤɬפޤ .LP .LP \f2% pack200 \-\-no\-gzip myarchive.pack myarchive.jar\fP .LP -.RE -.RE .LP \f4\-G \-\-strip\-debug\fP .LP -.RS 3 - +.LP +ϤǥХåѤ°ޤ°ȤƤϡ \f2SourceFile\fP \f2LineNumberTable\fP \f2LocalVariableTable\fP \f2LocalVariableTypeTable\fP ʤɤ󤲤ޤ°Сɤȥ󥹥ȡΥϾʤޤǥХåεǽ¤ޤ .LP .LP -出力からデバッグ用の属性を削除します。対象となる属性には、\f2SourceFile\fP、\f2LineNumberTable\fP、\f2LocalVariableTable\fP、および \f2LocalVariableTypeTable\fP などがあります。これらの属性を削除すれば、ダウンロードとインストールのサイズは小さくなりますが、デバッガの機能は制限されます。 +\f4\-\-keep\-file\-order\fP +.LP .LP -.RE +ϥեΥեνݻޤ줬ǥեȤưǤ +.LP .LP \f4\-O \-\-no\-keep\-file\-order\fP .LP -.RS 3 - -.LP .LP -パックツールは、すべての要素を並べ替えて転送します。また、JAR ディレクトリ名を削除します。このため、ダウンロードのサイズは小さくなりますが、インデックスをはじめとする JAR ファイルの最適化機能は正常に動作しなくなることがあります。 +ѥåġϡ٤ƤǤ¤ؤžޤޤJAR ǥ쥯ȥ̾ޤΤᡢɤΥϾʤޤǥåϤȤ JAR եκŬǽưʤʤ뤳Ȥޤ .LP -.RE .LP \f4\-Svalue \-\-segment\-limit=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -この値は、各アーカイブセグメントの予想ターゲットサイズ N (バイト単位) です。N バイト以上を必要とする単一の入力ファイルには、 +ͤϡƥ֥Ȥͽۥåȥ N (Хñ) Ǥñϥեɬץ .br -独立したアーカイブセグメントが割り当てられます。たとえば、これは特殊な例ですが、値が \f2\-1\fP の場合、すべての入力ファイルを含む単一の巨大なセグメントが生成されます。 一方、値が \f20\fP の場合、クラスごとにセグメントが 1 つずつ生成されます。アーカイブセグメントのサイズが大きければ大きいほど断片化は起こりにくく、圧縮率も高くなります。しかし、こうしたセグメントを処理するためには、大量のメモリーが必要になります。 +N ХȤĶȡΥեˤΩ֥ȤƤޤüʥȤơͤ \f2\-1\fP ξϡ٤Ƥϥեޤ礭ñΥȤ졢ͤ \f20\fP ξϡ饹Ȥ˥Ȥ 1 Ĥޤ֥Ȥ礭ʤȡҲʤʤ갵Ψ⤯ʤޤνˤ¿Υ꡼ɬפǤ .LP .LP -各セグメントのサイズは、セグメント内で転送される入力ファイルのサイズと、このファイルの名前のサイズ、およびその他の転送プロパティーによって予測されます。 +ƥȤΥϡȤѴ뤽줾ϥեΥΤۤ̾ȤۤץѥƥΥ׻ƿ¬ޤ .LP .LP -デフォルトのサイズは \f21000000\fP (100 万バイト) です。これは、標準サイズの入力 JAR ファイルを単一セグメント内で転送できるサイズです。パックツールおよびアンパックツールのメモリー要件には制限が課されます。 +ǥեȤ \-1 ǤĤޤꡢѥåġϾñΥȽϥեޤü礭ʽϥե뤬ˤϡϥե򥻥Ȳ (ʬ) Ƥ꾮 JAR ˤ뤳Ȥ򶯤ᤷޤ .LP .LP -この制限が課されていない 10M バイトの JAR パックファイルは通常、元の 10% 程度のサイズにパックされます。 しかし、パックツールでより大きな Java ヒープ (セグメントの制限の約 10 倍) を必要とする場合もあります。 +¤ݤƤʤ 10M ХȤ JAR ѥåե̾ 10% ٤Υ˥ѥåޤѥåġǤ礭 Java ҡ (Ȥ¤ 10 ) ɬפȤ⤢ޤ .LP -.RE .LP \f4\-Evalue \-\-effort=\fP\f2value\fP .LP -.RS 3 - +.LP +ñ 10 ʿͤꤷ硢ѥåġϡꤵ줿Ψǥ֤򰵽̤ޤ٥ \f21\fP ξϡŪû̻֤Ǥ礭Υե뤬ޤ٥ \f29\fP ξϡĹ֤ΤΡ갵Ψι⤤ե뤬ޤü \f20\fP ꤷϡ JAR ե򰵽̤ʤľܥԡޤJSR 200 ɸǤϡ٤Ƥβץब̤ʾ򥢡ΤΥѥ롼Ȳ᤹褦˵ꤷƤޤ .LP .LP -単一の 10 進数値を指定した場合、パックツールは、指定された圧縮率でアーカイブを圧縮します。レベル \f21\fP の場合、圧縮速度は速くても圧縮率はそれほど高くありません。 レベル \f29\fP の場合、圧縮速度は遅くても圧縮率は高くなります。特殊な値 \f20\fP を指定した場合は、元の JAR ファイルを圧縮なしで直接コピーします。JSR 200 標準では、すべてのアンパックツールはこの特殊な処理をアーカイブ全体のパススルーとして理解する必要があります。 -.LP +ǥեȤ \f25\fPǤξ硢ɸŪʻ֤Ŭڤʰ̤Ԥޤ .LP -デフォルト値は \f25\fP です。 この場合、標準的な時間で、適度な圧縮が行われます。 -.LP -.RE .LP \f4\-Hvalue \-\-deflate\-hint=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -デフォルト値を上書きし、入力情報を保持します。 転送されるアーカイブのサイズは大きくなります。可能な値: +ǥեͤ񤭤Ͼ¸ޤž륢֤Υ礭ʤޤ֤ͤϼΤɤ줫ˤʤޤ .LP .RS 3 .TP 3 true .TP 3 false -どちらの場合でも、パックツールはデフレーションヒントを出力アーカイブに設定します。 アーカイブ要素の個々のデフレーションヒントは転送しません。 +ɤξǤ⡢ѥåġϥǥե졼ҥȤϥ֤ꤷޤǤθġΥǥե졼ҥȤžޤ .RE .LP .RS 3 .TP 3 keep -入力 JAR 内のデフレーションヒントを保持します (デフォルト)。 + JAR.ǸĤäǥե졼ҥȤݻޤ(줬ǥեȤǤ) .RE .LP -.RE .LP \f4\-mvalue \-\-modification\-time=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -可能な値: +֤ͤϼΤɤ줫ˤʤޤ .LP .RS 3 .TP 3 latest -パックツールは、元のアーカイブの全エントリの最終更新時刻か、そのセグメントのすべてのエントリの最終更新時刻を特定しようとします。この単一の値はセグメントの一部として転送され、各セグメントの全エントリに適用されます。この場合、すべてのインストールファイルに単一の日付が設定されるという問題はありますが、アーカイブの転送サイズを少し小さくすることができます。 +ѥåġϡΥ֤ȥκǽ狼ΥȤΤ٤ƤΥȥκǽꤷ褦ȤޤñͤϥȤΰȤž졢ƥȤȥŬѤޤξ硢٤ƤΥ󥹥ȡեñդꤵȤϤޤ֤ž򾯤뤳ȤǤޤ .TP 3 keep -入力 JAR 内の更新時刻を保持します (デフォルト)。 + JAR. ǸĤäѹݻޤ(줬ǥեȤǤ) .RE .LP -.RE .LP \f4\-Pfile \-\-pass\-file=\fP\f2file\fP .LP -.RS 3 - -.LP .LP -ファイルを圧縮せず、バイト単位で転送するように指定します。このオプションを繰り返し使用して、複数のファイルを指定できます。パス名の変換は行われません。 システムファイルの区切り文字が JAR ファイルの区切り文字「\f2/\fP」で置き換えられるだけです。ファイル名は、JAR ファイル内の文字列と完全に一致していなければなりません。file にディレクトリ名を指定した場合、そのディレクトリ内のすべてのファイルが転送されます。 +ե򰵽̤Хñ̤ž褦˻ꤷޤΥץ򷫤֤ѤơʣΥեǤޤƥե륻ѥ졼 JAR ե륻ѥ졼\f2/\fPפ֤ѥ̾ѴϹԤޤ ̤Ȥե̾ϡʸȤΤ JAR եǤνиȰפƤɬפޤfile ˥ǥ쥯ȥ̾ꤷ硢Υǥ쥯ȥΤ٤ƤΥե뤬žޤ .LP -.RE .LP \f4\-Uaction \-\-unknown\-attribute=\fP\f2action\fP .LP -.RS 3 - .LP -.LP -デフォルトの動作を無効にします。 たとえば、不明な属性を含むクラスファイルを指定したアクションで転送します。アクションとして指定可能な値: +ǥեȤư̵ˤޤȤС°ޤ९饹եꤷžޤȤƻǽ: .LP .RS 3 .TP 3 error -\f2pack200\fP の操作に失敗し、適切な解説が表示されます。 +\f2pack200\fP ˼ԤŬڤʲ⤬ɽޤ .TP 3 strip -属性はドロップされます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。 +°ϥɥåפޤ: VM ɬ°ȥ饹ξ㳲ȯ뤳Ȥޤ .TP 3 pass -この属性が検出された場合、クラス全体が 1 つのリソースとして転送されます。 +°Ф줿硢饹Τ 1 ĤΥ꥽Ȥžޤ .RE .LP -.RE .LP \f4\-Cattribute\-name=\fP\f2layout\fP \f3\-\-class\-attribute=\fP\f2attribute\-name=action\fP .br @@ -280,42 +224,32 @@ .br \f4\-Dattribute\-name=\fP\f2layout\fP \f3\-\-code\-attribute=\fP\f2attribute\-name=action\fP .LP -.RS 3 - .LP -.LP -これら 4 つのオプションでは、クラスエンティティーに Class 属性、Field 属性、Method 属性、Code 属性などの属性のレイアウトを指定できます。attribute\-name には、これからレイアウトまたはアクションを定義する属性の名前を指定します。アクションとして指定可能な値: + 4 ĤΥץǤϡ饹ƥƥ Class °Field °Method °Code °ʤɤ°Υ쥤ȤǤޤattribute\-name ˤϡ줫쥤Ȥޤϥ°̾ꤷޤȤƻǽ: .LP .RS 3 .TP 3 -(一部のレイアウト文字列) -レイアウト言語は、JSR 200 仕様に定義されています。 +some\-layout\-string +쥤ȸϡJSR 200 ͤƤޤ .LP -例: \f2\-\-class\-attribute=SourceFile=RUH\fP +: \f2\-\-class\-attribute=SourceFile=RUH\fP .TP 3 error -この属性が検出された場合、pack200 の操作に失敗し、適切な解説が表示されます。 +°Ф줿硢pack200 ˼ԤŬڤʲ⤬ɽޤ .TP 3 strip -この属性が検出された場合、属性は出力から削除されます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。 +°Ф줿硢°ϽϤޤ: VM ɬ°ȥ饹ξ㳲ȯ뤳Ȥޤ .RE .LP .LP -例: \f2\-\-class\-attribute=CompilationID=pass\fP というこの属性を含むクラスファイルを転送します。 パックツールは、その他のアクションを行いません。 +: \f2\-\-class\-attribute=CompilationID=pass\fP Ȥ°ޤ९饹եžޤѥåġϡ¾ΥԤޤ .LP -.RE .LP \f4\-f\fP\f2 \fP\f2pack.properties\fP \f3\-\-config\-file=\fP\f2pack.properties\fP .LP -.RS 3 - .LP -.LP -コマンド行に、パックツールを初期化するための Java プロパティーが含まれている設定ファイルを指定できます。 -.LP -.RS 3 - +ޥɹԤˡѥåġ뤿 Java ץѥƥޤޤƤեǤޤ .LP .LP \f2% pack200 \-f pack.properties myarchive.pack.gz myarchive.jar\fP @@ -340,70 +274,54 @@ .br \f2segment.limit=\-1\fP .LP -.RE -.RE -.RS 3 - -.LP .LP \f4\-v \-\-verbose\fP .LP -.RS 3 - -.LP .LP -最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが出力されます。 +Ǿ¤ΥåϤޤΥץʣꤹȡĹåϤޤ .LP -.RE .LP \f4\-q \-\-quiet\fP .LP -.RS 3 - -.LP .LP -メッセージを表示せずに動作します。 +åɽưޤ .LP -.RE .LP \f4\-lfilename \-\-log\-file=\fP\f2filename\fP .LP -.RS 3 - +.LP +ϥåΥեꤷޤ +.LP +.LP +\f4\-? \-h \-\-help\fP .LP .LP -出力メッセージのログファイルを指定します。 +Υޥɤ˴ؤإ׾Ϥޤ .LP -.RE .LP -\f4\-Joption\fP +\f4\-V \-\-version\fP .LP -.RS 3 - +.LP +Υޥɤ˴ؤСϤޤ .LP .LP -\f2pack200\fP によって呼び出される Java 起動ツールにオプションを渡します。たとえば、\f2\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。このオプションは \f2\-X\fP で始まっていませんが、\f2pack200\fP の標準オプションではありません。\f2\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f4\-J\fP\f2option\fP +.LP .LP -.RE -.RE -.SH "終了ステータス" +\f2option\fP \f2pack200\fP ƤӽФ줿 Java ưġϤޤȤС \f2\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤΥץ \f2\-X\fP ǻϤޤäƤޤ󤬡 \f2pack200\fP ɸ४ץǤϤޤ \f2\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .LP - +.SH "λơ" .LP .LP -次の終了値が返されます。 -.LP -.RS 3 - +νλ֤ͤޤ .LP .LP -\f2\ 0\fP "成功" +\f2\ 0\fP ェλ .LP .LP -\f2>0\fP "エラー" +\f2>0\fP 顼ȯ .LP -.RE -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -412,35 +330,33 @@ .TP 2 o .na -\f2Java SE のドキュメント\fP @ +\f2Java SE Υɥ\fP @ .fi http://java.sun.com/javase/6/docs/index.html .TP 2 o .na -\f2「Java 配備ガイド \- Pack200」\fP @ +\f2Java \- Pack200\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/pack200.html .TP 2 o -jar(1) \- Java Archive ツール」 +jar(1) \- Java Archive ġ .TP 2 o -「jarsigner(1) \- JAR 署名および検証ツール」 +jarsigner(1) \- JAR ̾Ӹڥġ .TP 2 o -\f2attributes(5)\fP のマニュアルページ +\f2attributes(5) \fP ޥ˥奢ڡ .RE .LP -.SH "注意事項" -.LP - +.SH "ջ" .LP .LP -このコマンドと \f2pack(1)\fP を混同しないでください。これらは別製品です。 +Υޥɤ \f2pack(1)\fP ƱʤǤʤǤ .LP .LP -SDK に付属する Java SE API 仕様との相違が見つかった場合には、仕様を優先してください。 +SDK ° Java SE API ͤȤ㤬Ĥäˤϡͤͥ褷Ƥ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/policytool.1 --- a/jdk/src/linux/doc/man/ja/policytool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/policytool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,84 +19,82 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH policytool 1 "02 Jun 2010" +.TH policytool 1 "14 Apr 2011" .LP -.SH "名前" -policytool \- PolicyTool 管理 GUI ユーティリティー +.SH "̾" +policytool \- PolicyTool GUI 桼ƥƥ .LP -\f3policytool\fP は、ユーティリティー GUI 経由で取得したユーザー入力に基づいて、プレーンテキストのポリシーファイルを読み書きします。 +\f3policytool\fP ϡ桼ƥƥ GUI ͳǼ桼Ϥ˴Ťơץ졼ƥȤΥݥꥷեɤ߽񤭤ޤ .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .RS 3 .TP 3 \ .TP 3 -policytool 管理者ユーティリティーを実行します +policytool ԥ桼ƥƥ¹Ԥޤ \f4policytool\fP .TP 3 -policytool を実行し、指定されたポリシーファイルを読み込みます -\f4policytool\fP\f2 [\-file\ \fP\f2filename\fP\f2]\fP +policytool ¹Ԥꤵ줿ݥꥷեɤ߹ߤޤ +\f4policytool\fP\f2[\-file\ \fP\f2filename\fP\f2]\fP .TP 3 \ .TP 3 -各要素は次のとおりです。 +ʲˤ줾ΰ̣򼨤ޤ .RS 3 .TP 3 file -ローカルポリシーファイルを読み込むように \f2policytool\fP に指示します +ݥꥷեɤ߹褦 \f2policytool\fP ˻ؼޤ .TP 3 filename -ファイル名 +ե̾ .RE -.SH "説明" +.SH "" .LP -\f3policytool\fP は、ユーザーがローカルポリシーファイルの内容を管理することを可能にする GUI です。詳細については、 +\f3policytool\fP ϡ桼ݥꥷեƤ뤳Ȥǽˤ GUI Ǥܺ٤ˤĤƤϡ .na -\f2「ポリシーファイル作成および管理ツール」\fP @ +\f2֥ݥꥷեӴġ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.htmlを参照してください。 -.SH "オプション" +http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.html򻲾ȤƤ +.SH "ץ" .RS 3 .TP 3 file -\f2filename\fP を読み込みます。 -.SH "関連項目" +\f2filename\fP ɤ߹ߤޤ +.SH "Ϣ" .na -\f2「Default Policy Implementation and Syntax」\fP @ +\f2Default Policy Implementation and Syntax\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.html .br .na -\f2「Policy Tool Users' Guide」\fP @ +\f2Policy Tool Users' Guide\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.html .br .na -\f2「Security Permissions」\fP @ +\f2Security Permissions\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/permissions.html .br .na -\f2「Security Overview」\fP @ +\f2Security Overview\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/overview/jsoverview.html .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/rmic.1 --- a/jdk/src/linux/doc/man/ja/rmic.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/rmic.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmic 1 "02 Jun 2010" +.TH rmic 1 "14 Apr 2011" .LP -.SH "名前" -rmic \- Java RMI コンパイラ -.LP -.RS 3 - +.SH "̾" +rmic \- Java RMI ѥ .LP .LP -\f3rmic\fP によって、JRMP または IIOP プロトコルを使用するリモートオブジェクトのスタブ、スケルトン、および Tie クラスが生成されます。また、OMG IDL も生成されます。 +\f3rmic\fP ˤäơJRMP ޤ IIOP ץȥѤ⡼ȥ֥ȤΥ֡ȥ󡢤 Tie 饹ޤޤOMG IDL ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,12 +39,10 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmic\fP コンパイラによって、リモートオブジェクトの、スタブ、スケルトンクラスファイル (JRMP プロトコル)、およびスタブと Tie クラスファイルの組み合わせ (IIOP プロトコル) が生成されます。リモートオブジェクトの実装クラスであるこれらのクラスファイルは、Java プログラミング言語のクラスをコンパイルしたときに生成されます。リモート実装クラスは、\f2java.rmi.Remote\fP インタフェースを実装するクラスです。\f3rmic\fP コマンドでのクラス名は、そのクラスが \f3javac\fP コマンドでコンパイルが成功していて、かつ完全なパッケージ名が指定されている必要があります。たとえば、クラスファイル名 \f2HelloImpl\fP で \f3rmic\fP を実行するには、次のようにします。 +\f3rmic\fP ѥˤäơ⡼ȥ֥ȤΡ֡ȥ󥯥饹ե (JRMP ץȥ)ӥ֤ Tie 饹եȤ߹碌 (IIOP ץȥ) ޤ⡼ȥ֥Ȥμ饹Ǥ뤳Υ饹եϡJava ץߥ󥰸Υ饹򥳥ѥ뤷Ȥޤ⡼ȼ饹ϡ\f2java.rmi.Remote\fP 󥿥ե륯饹Ǥ\f3rmic\fP ޥɤǤΥ饹̾ϡΥ饹 \f3javac\fP ޥɤǥѥ뤬ƤơĴʥѥå̾ꤵƤɬפޤȤС饹ե̾ \f2HelloImpl\fP \f3rmic\fP ¹ԤˤϡΤ褦ˤޤ .LP .nf \f3 @@ -62,37 +54,32 @@ .LP .LP -\f2HelloImpl_Stub.class\fP ファイルが、クラスのパッケージ名が付いた \f2hello\fP サブディレクトリに作成されます。 +\f2HelloImpl_Stub.class\fP ե뤬饹Υѥå̾դ \f2hello\fP ֥ǥ쥯ȥ˺ޤ .LP .LP -リモートオブジェクトの「スケルトン」は JRMP プロトコルサーバー側のエンティティーで、実際のリモートオブジェクト実装を呼び出すメソッドを含みます。 +⡼ȥ֥ȤΡ֥ȥפ JRMP ץȥ륵С¦ΥƥƥǡºݤΥ⡼ȥ֥ȼƤӽФ᥽åɤޤߤޤ .LP .LP -リモートオブジェクトの「Tie」は、スケルトンと同様にサーバー側のエンティティーですが、IIOP プロトコルを使ってクライアントと通信します。 +⡼ȥ֥ȤΡTieפϡȥƱͤ˥С¦ΥƥƥǤIIOP ץȥȤäƥ饤Ȥ̿ޤ .LP .LP -「スタブ」とは、リモートオブジェクトのクライアント側での代理です。 スタブは、リモートオブジェクトのメソッド呼び出しを、実物のリモートオブジェクトが常駐するサーバーと通信する役割を持ちます。したがって、クライアントのリモートオブジェクトへの参照は、実際はローカルスタブへの参照となります。 -.LP -.LP -デフォルトで \f3rmic\fP では、1.2 JRMP スタブプロトコルバージョンだけを使用するスタブクラスを生成します。 これは、\f2\-v1.2\fP オプションを指定した場合と同じ動作です。(5.0 以前では \f2\-vcompat\fP オプションがデフォルトであったことに注意。) IIOP プロトコル用のスタブおよび Tie クラスを生成するには \f2\-iiop\fP オプションを使用します。 +֥֡פȤϡ⡼ȥ֥ȤΥ饤¦ǤǤ֤ϡ⡼ȥ֥ȤΥ᥽åɸƤӽФ򡢼ʪΥ⡼ȥ֥Ȥ󤹤륵С̿ޤäơ饤ȤΥ⡼ȥ֥ȤؤλȤϡºݤϥ륹֤ؤλȤȤʤޤ .LP .LP -スタブはリモートインタフェースだけを実装し、リモートオブジェクトが実装する局所インタフェースは実装していません。JRMP スタブはリモートオブジェクト自体が実装するリモートインタフェースと同じものを実装しているので、クライアントは、キャストや型チェックに Java プログラミング言語に組み込まれた演算子を使用することができます。IIOP の場合は、\f2PortableRemoteObject.narrow\fP メソッドを使わなければなりません。 +ǥեȤ \f3rmic\fP Ǥϡ1.2 JRMP ֥ץȥСѤ륹֥饹ޤϡ\f2\-v1.2\fP ץꤷƱưǤ(5.0 Ǥ \f2\-vcompat\fP ץ󤬥ǥեȤǤäȤաIIOP ץȥѤΥ֤ Tie 饹ˤ \f2\-iiop\fP ץѤޤ +.LP .LP -.SH "オプション" +֤ϥ⡼ȥ󥿥ե⡼ȥ֥Ȥɽꥤ󥿥եϼƤޤJRMP ֤ϥ⡼ȥ֥ȼΤ⡼ȥ󥿥եƱΤƤΤǡ饤Ȥϡ㥹Ȥ䷿å Java ץߥ󥰸Ȥ߹ޤ줿黻ҤѤ뤳ȤǤޤIIOP ξϡ\f2PortableRemoteObject.narrow\fP ᥽åɤȤʤФʤޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-bootclasspath path -ブートストラップクラスファイルの位置をオーバーライドします。 +֡ȥȥåץ饹եΰ֤򥪡С饤ɤޤ .TP 3 \-classpath path -\f3rmic\fP がクラスを探すためのパスを指定します。このオプションは、デフォルトや CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 -.RS 3 - -.LP +\f3rmic\fP 饹õΥѥꤷޤΥץϡǥեȤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -100,11 +87,7 @@ .fl \fP .fi -.RE -例を示します。 -.RS 3 - -.LP +򼨤ޤ .nf \f3 .fl @@ -112,13 +95,9 @@ .fl \fP .fi -.RE .TP 3 \-d directory -生成されたクラス階層の出力先ディレクトリのルートを指定します。このオプションを使えば、スタブ、スケルトン、および Tie ファイルを格納するディレクトリを指定できます。たとえば、次のようにして使います。 -.RS 3 - -.LP +줿饹ؤνǥ쥯ȥΥ롼ȤꤷޤΥץȤС֡ȥ󡢤 Tie եǼǥ쥯ȥǤޤȤСΤ褦ˤƻȤޤ .nf \f3 .fl @@ -126,49 +105,43 @@ .fl \fP .fi -.RE -\f2MyClass\fP から取得したスタブとスケルトンクラスを \f2/java/classes/foo\fP ディレクトリに置きます。\f2\-d\fP オプションが指定されていない場合は、\f2「\-d\ .」\fPが指定されていると見なされます。ターゲットクラスのパッケージ階層が現在のディレクトリに作成され、スタブ、Tie、およびスケルトンファイルがそのディレクトリに格納されます。(以前のバージョンの \f3rmic\fP では、\f2\-d\fP が指定されていない場合は、パッケージ階層は作成されず、出力ファイルはすべて現在のディレクトリに直接格納されていた)。 +MyClass \f2֤ȥȥ󥯥饹\fP \f2/java/classes/foo\fP ǥ쥯ȥ֤ޤ\f2\-d\fP ץ󤬻ꤵƤʤϡ\f2\-d\ .\fPꤵƤȸʤޤåȥ饹ΥѥåؤߤΥǥ쥯ȥ˺졢֡Tieӥȥե뤬Υǥ쥯ȥ˳Ǽޤ(ΥС \f3rmic\fP Ǥϡ\f2\-d\fP ꤵƤʤϡѥåؤϺ줺ϥեϤ٤ƸߤΥǥ쥯ȥľܳǼƤ) .br \ .TP 3 \-extdirs path -インストール型拡張機能の位置をオーバーライドします。 +󥹥ȡ뷿ĥǽΰ֤򥪡С饤ɤޤ .TP 3 \-g -局所変数を含むすべてのデバッグ情報を生成します。デフォルトでは、行番号情報だけが生成されます。 -.LP +ɽѿޤह٤ƤΥǥХåޤǥեȤǤϡֹޤ .TP 3 \-idl -\f2rmic\fP によって、指定したクラスおよび参照されたクラスの OMG IDL が生成されます。IDL では、プログラミング言語に依存せずに、宣言するだけでオブジェクトの API を指定することができます。IDL は、メソッドおよびデータの仕様として使用します。 CORBA バインディングを提供する任意の言語で、メソッドおよびデータの作成および呼び出しを行うことができます。これらの言語には、Java および C++ が含まれています。詳細は、 +\f2rmic\fP ˤäơꤷ饹ӻȤ줿饹 OMG IDL ޤIDL Ǥϡץߥ󥰸˰¸ˡǥ֥Ȥ API ꤹ뤳ȤǤޤIDL ϡ᥽åɤӥǡλͤȤƻѤޤCORBA Хǥ󥰤󶡤Ǥդθǡ᥽åɤӥǡκӸƤӽФԤȤǤޤθˤϡJava C++ ޤޤƤޤܺ٤ϡ .na \f2Java Language to IDL Mapping\fP @ .fi -http://www.omg.org/technology/documents/formal/java_language_mapping_to_omg_idl.htm (OMG) を参照してください。 +http://www.omg.org/technology/documents/formal/java_language_mapping_to_omg_idl.htm (OMG) 򻲾ȤƤ .LP -\f2\-idl\fP オプションを使うときは、ほかのオプションも指定できます。 +\f2\-idl\fP ץȤȤϡۤΥץǤޤ .RS 3 .TP 3 -\-always または \-alwaysgenerate -既存のスタブ、Tie、および IDL が入力クラスより新しいときでも、強制的に生成し直します。 +\-always ޤ \-alwaysgenerate +¸Υ֡Tie IDL ϥ饹꿷ȤǤ⡢Ūľޤ .TP 3 \-factory -生成された IDL で factory キーワードを使います。 +줿 IDL factory ɤȤޤ .TP 3 \-idlModule\ fromJavaPackage[.class]\ toIDLModule -IDLEntity パッケージのマップを指定します。例を示します。 \f2\-idlModule foo.bar my::real::idlmod\fP +IDLEntity ѥåΥޥåפꤷޤ򼨤ޤ \f2\-idlModule foo.bar my::real::idlmod\fP .TP 3 \-idlFile\ fromJavaPackage[.class]\ toIDLFile -IDLEntity ファイルのマップを指定します。例を示します。 \f2\-idlFile test.pkg.X TEST16.idl\fP\ +IDLEntity եΥޥåפꤷޤ򼨤ޤ \f2\-idlFile test.pkg.X TEST16.idl\fP\ .RE -.LP .TP 3 \-iiop -\f2rmic\fP によって、JRMP のスタブとスケルトンクラスの代わりに、IIOP のスタブと Tie クラスが生成されます。スタブクラスは、リモートオブジェクトのローカルプロキシで、クライアントからサーバーに呼び出しを送信するときに使われます。各リモートインタフェースにはスタブクラスが必要です。 スタブクラスによってリモートインタフェースが実装されます。クライアントでリモートオブジェクトを参照するときは、実際にはスタブを参照することになります。タイクラスは、サーバー側で着呼を処理し、その呼び出しを適切な実装クラスにディスパッチするときに使われます。各実装クラスには、タイクラスが必要です。 +\f2rmic\fP ˤäơJRMP Υ֤ȥȥ󥯥饹ˡIIOP Υ֤ Tie 饹ޤ֥饹ϡ⡼ȥ֥ȤΥץǡ饤Ȥ饵С˸ƤӽФȤ˻Ȥޤƥ⡼ȥ󥿥եˤϥ֥饹ɬפǤ֥饹ˤäƥ⡼ȥ󥿥եޤ饤Ȥǥ⡼ȥ֥Ȥ򻲾ȤȤϡºݤˤϥ֤򻲾Ȥ뤳Ȥˤʤޤ饹ϡС¦ƤθƤӽФŬڤʼ饹˥ǥѥåȤ˻ȤޤƼ饹ˤϡ饹ɬפǤ .LP -\f2\-iiop\fP を使って \f2rmic\fP を呼び出すと、次の命名規約に準拠したスタブと Tie が生成されます。 -.RS 3 - -.LP +\f2\-iiop\fP Ȥä \f2rmic\fP ƤӽФȡ̿̾˽򤷤֤ Tie ޤ .nf \f3 .fl @@ -182,66 +155,60 @@ .fl \fP .fi -.RE .LP -\f2\-iiop\fP オプションを使うときは、ほかのオプションも指定できます。 +\f2\-iiop\fP ץȤȤϡۤΥץǤޤ .RS 3 .TP 3 -\-always または \-alwaysgenerate -既存のスタブ、Tie、および IDL が入力クラスより新しいときでも、強制的に生成し直します。 +\-always ޤ \-alwaysgenerate +¸Υ֡Tie IDL ϥ饹꿷ȤǤ⡢Ūľޤ .TP 3 \-nolocalstubs -同じプロセスのクライアントとサーバーに対して最適化されたスタブを作成しません。 +ƱץΥ饤ȤȥСФƺŬ줿֤ޤ .TP 3 \-noValueMethods -\f2\-idl\fP オプションとともに使われなければなりません。発行された IDL に、\f2valuetype\fP メソッドおよび初期化子を追加しません。このメソッドおよび初期化子は、\f2valuetype\fP の場合はオプションです。 \f2\-idl\fP オプションを使うときは、 \f2\-noValueMethods\fP オプションを指定しない限り生成されます。 + \f2\-idl\fP ץȤȤ˻ȤʤФʤޤȯԤ줿 IDL ˡ\f2valuetype\fP ᥽åɤӽҤɲäޤ󡣤Υ᥽åɤӽҤϡ\f2valuetype\fP ξϥץǤ \f2\-idl\fP ץȤȤϡ \f2\-noValueMethods\fP ץꤷʤ¤ޤ .TP 3 \-poa -継承が \f2org.omg.CORBA_2_3.portable.ObjectImpl\fP から \f2org.omg.PortableServer.Servant\fP に変わります。 +Ѿ \f2org.omg.CORBA_2_3.portable.ObjectImpl\fP \f2org.omg.PortableServer.Servant\fP Ѥޤ .LP .na \f2Portable Object Adapter\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html (POA) の \f2PortableServer\fP モジュールは、ネイティブの \f2Servant\fP 型を定義します。Java プログラミング言語では、\f2Servant\fP 型は、Java の \f2org.omg.PortableServer.Servant\fP クラスにマッピングされています。これはあらゆる POA サーバント実装の基底クラスとなり多数のメソッドを提供します。 これらのメソッドはアプリケーションプログラマが呼び出すだけではなく、POA 自身からも呼び出され、場合によってはサーバントの動作を制御するためにユーザーがオーバーライドすることもあります。OMG IDL to Java Language Mapping Specification、CORBA V 2.3.1 ptc/00\-01\-08.pdf に準拠しています。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html (POA) \f2PortableServer\fP ⥸塼ϡͥƥ֤ \f2Servant\fP ޤJava ץߥ󥰸Ǥϡ\f2Servant\fP Java \f2org.omg.PortableServer.Servant\fP 饹˥ޥåפޤΥ饹ϡ٤Ƥ POA Хȼδ쥯饹ȤƵǽץꥱץޤƤӽФȤΤǤ뤤ĤΥ᥽åɤΤۤˡPOA ΤΤˤäƸƤӽФ졢ХȤư椹뤿˥桼С饤ɤǤ᥽åɤ󶡤ޤOMG IDL to Java Language Mapping SpecificationCORBA V 2.3.1 ptc/00\-01\-08.pdf ˽򤷤Ƥޤ .RE .TP 3 \-J -\f2\-J\fP の後ろに続くオプションを \f2java\fP インタプリタに引き渡します。 \f2java\fP オプションと組み合わせて使います (\f2\-J\fP と \f2java\fP オプションの間にスペースは入れない)。 +\f2\-J\fP θ³ץ \f2java\fP 󥿥ץ꥿˰Ϥޤ \f2java\fP ץȤ߹碌ƻȤޤ (\-J java ץδ֤˥ڡʤ) .TP 3 -\-keep または \-keepgenerated -スタブ、スケルトン、または Tie クラスのための \f2.java\fP ソースファイルを \f2.class\fP ファイルと同じディレクトリに残します。 +\-keep ޤ \-keepgenerated +֡ȥ󡢤ޤ Tie 饹Τ \f2.java\fP ե \f2.class\fP եƱǥ쥯ȥ˻Ĥޤ .TP 3 \-nowarn -警告をオフにします。このオプションを指定すると、コンパイラは警告を表示しません。 -.LP +ٹ򥪥դˤޤΥץꤹȡѥϷٹɽޤ +.TP 3 +\-nowrite +ѥ뤷饹ե륷ƥ˽񤭹ߤޤ .TP 3 \-vcompat -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 ξΥ֥ץȥС򥵥ݡȤޤ줿饹ξ⡼ɤ򥵥ݡȤ뤿ˡ礭ʤޤ .TP 3 \-verbose -コンパイラやリンカーが、コンパイルされているクラスやロードされているクラスファイルについてのメッセージを表示するようにします。 -.LP +ѥ󥫡ѥ뤵Ƥ륯饹ɤƤ륯饹եˤĤƤΥåɽ褦ˤޤ .TP 3 \-v1.1 -1.1 JRMP スタブプロトコルバージョンのみのスタブおよびスケルトンクラスを生成します。このオプションが使用できるのは、JDK 1.1 から \f3rmic\fP ツールで生成され、アップグレードできない (さらにダイナミッククラスローディングを使用していない) 、既存の静的配備されたスタブクラスに対し、直列化互換性のあるスタブクラスを生成場合だけです。 -.LP +1.1 JRMP ֥ץȥСΤߤΥ֤ӥȥ󥯥饹ޤΥץ󤬻ѤǤΤϡJDK 1.1 \f3rmic\fP ġ졢åץ졼ɤǤʤ (˥ʥߥå饹ǥ󥰤ѤƤʤ) ¸Ū줿֥饹Фľ󲽸ߴΤ륹֥饹Ǥ .TP 3 \-v1.2 -(デフォルト) 1.2 JRMP スタブプロトコルバージョンのみのスタブクラスを生成します。スケルトンクラスは 1.2 スタブプロトコルバージョンで使用できないため、このオプションではスケルトンクラスは生成されません。生成されたスタブクラスは、JDK 1.1 仮想マシンにロードされても動作しません。 +(ǥե) 1.2 JRMP ֥ץȥСΤߤΥ֥饹ޤȥ󥯥饹 1.2 ֥ץȥСǻѤǤʤᡢΥץǤϥȥ󥯥饹ޤ줿֥饹ϡJDK 1.1 ۥޥ˥ɤƤưޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。次に例を示します。 -.RS 3 - -.LP +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -250,15 +217,12 @@ \fP .fi .RE -.RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -java(1)、javac(1)、 +java(1)javac(1) .na \f2CLASSPATH\fP @ .fi diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/rmid.1 --- a/jdk/src/linux/doc/man/ja/rmid.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/rmid.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmid 1 "02 Jun 2010" +.TH rmid 1 "14 Apr 2011" .LP -.SH "名前" -rmid \- Java RMI 起動システムデーモン -.LP -.RS 3 - +.SH "̾" +rmid \- Java RMI ưƥǡ .LP .LP -\f3rmid\fP で起動システムデーモンを開始すると、オブジェクトを仮想マシン (VM) に登録して起動できるようになります。 +\f3rmid\fP ǵưƥǡ򳫻Ϥȡ֥Ȥۥޥ (VM) ϿƵưǤ褦ˤʤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,23 +39,21 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmid\fP ツールは、起動システムデーモンを開始します。起動システムデーモンを開始してからでないと、起動可能オブジェクトを起動システムに登録したり、VM 内で起動したりすることができません。起動可能なリモートオブジェクトを使ったプログラムの作成方法の詳細は、 +\f3rmid\fP ġϡưƥǡ򳫻Ϥޤưƥǡ򳫻ϤƤǤʤȡưǽ֥ȤưƥϿꡢVM ǵưꤹ뤳ȤǤޤ󡣵ưǽʥ⡼ȥ֥ȤȤäץκˡξܺ٤ϡ .na -\f2「Java RMI 仕様」\fP @ +\f2Java RMI ͡\fP @ .fi -http://java.sun.com/javase/6/docs/platform/rmi/spec/rmiTOC.htmlおよび +http://java.sun.com/javase/6/docs/platform/rmi/spec/rmiTOC.html .na -\f2「起動のチュートリアル」\fP @ +\f2ֵưΥ塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.htmlを参照してくだ さい。 +http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.html򻲾ȤƤ .LP .LP -デーモンを起動するには、次のように、セキュリティーポリシーファイルを指定して \f2rmid\fP コマンドを実行します。 +ǡưˤϡΤ褦ˡƥݥꥷեꤷ \f2rmid\fP ޥɤ¹Ԥޤ .LP .nf \f3 @@ -73,23 +65,23 @@ .LP .LP -\f3注:\fP\f2rmid\fP の Sun の 実装を実行する場合、デフォルトでは、セキュリティーポリシーファイルを指定する必要があります。 それは、起動グループ用に VM を起動するために各 \f2ActivationGroupDesc\fP 内の情報を使用できるかどうかを \f2rmid\fP が検証できるようにするためです。特に、\f2ActivationGroupDesc\fP のコンストラクタに渡される \f2CommandEnvironment\fP や任意の \f2Properties\fP によって指定されるコマンドおよびオプションは、\f2rmid\fP のセキュリティーポリシーファイルの中で明示的に許可することが必要になりました。\f2sun.rmi.activation.execPolicy\fP プロパティーの値は、起動グループ用に VM を起動するために \f2ActivationGroupDesc\fP 内の情報を使用できるかどうかを判断するときに \f2rmid\fP が使用するポリシーを決定します。 +\f3:\fP \f2rmid\fP Sun ¹Ԥ硢ǥեȤǤϡƥݥꥷեꤹɬפޤϡ \f2rmid\fP ư롼Ѥ VM ư뤿˳ \f2ActivationGroupDesc\fP ξѤǤ뤫ɤ򸡾ڤǤ褦ˤ뤿ǤäˡActivationGroupDesc Υ󥹥ȥ饯Ϥ \f2CommandEnvironment\fP Ǥդ \f2Properties\fP ˤäƻꤵ \f2ޥɤ\fPץϡ \f2rmid\fP ΥƥݥꥷեŪ˵Ĥ뤳Ȥɬפˤʤޤ\f2sun.rmi.activation.execPolicy\fP ץѥƥͤϡ \f2ư롼Ѥ VM \fP ư뤿 \f2ActivationGroupDesc\fP ξѤǤ뤫ɤȽǤȤ rmid Ѥݥꥷꤷޤ .LP .LP -\f2rmid\fP をデフォルト設定で実行すると、次のような処理が行われます。 +\f2rmid\fP ǥեǼ¹ԤȡΤ褦ʽԤޤ .LP .RS 3 .TP 2 o -アクティベータを起動し、デフォルトポート 1098 で内部レジストリを起動する +ƥ١ưǥեȥݡ 1098 쥸ȥư .TP 2 o -この内部レジストリの中で、\f2ActivationSystem\fP を \f2java.rmi.activation.ActivationSystem\fP という名前にバインドする +쥸ȥǡ \f2ActivationSystem\fP \f2java.rmi.activation.ActivationSystem Ȥ̾\fP Хɤ .RE .LP .LP -レジストリにほかのポートを指定するには、\f2rmid\fP の起動時に \f2\-port\fP オプションを指定しなければなりません。次に例を示します。 +쥸ȥˤۤΥݡȤꤹˤϡrmid εư \f2\-port\fP ץ \f2ꤷʤФʤޤ\fP򼨤ޤ .LP .nf \f3 @@ -101,44 +93,42 @@ .LP .LP -このコマンドは、起動システムデーモンを開始し、レジストリのデフォルトポート 1099 でレジストリを開始します。 +Υޥɤϡưƥǡ򳫻Ϥ쥸ȥΥǥեȥݡ 1099 ǥ쥸ȥ򳫻Ϥޤ .LP .SS -rmid を inetd/xinetd から開始する +rmid inetd/xinetd 鳫Ϥ .LP .LP -\f2rmid\fP をコマンド行から開始するには、\f2inetd\fP (Solaris の場合)、または \f2xinetd\fP (Linux) を構成して \f2rmid\fP を必要に応じて開始する方法もあります。 +\f2rmid\fP 򥳥ޥɹԤ鳫Ϥˤϡ \f2inetd\fP (Solaris ξ)ޤ \f2xinetd\fP (Linux ξ) \f2rmid\fP ɬפ˱ƳϤˡ⤢ޤ .LP .LP -\f2rmid\fP を開始すると、\f2System.inheritedChannel\fP メソッドを呼び出して、継承されたチャンネル (\f2inetd\fP/\f2xinetd\fP から継承) を取得しようとします。継承されたチャンネルが \f2null\fP であるか、\f2java.nio.channels.ServerSocketChannel\fP のインスタンスでなかった場合、\f2rmid\fP はそのチャンネルは \f2inetd\fP/\f2xinetd\fP によって起動されたものではないと判断し、前述のように起動します。 +\f2rmid\fP 򳫻ϤȡSystem.inheritedChannel ᥽åɤƤӽФơѾ줿ͥ ( \f2inetd\fP/\f2xinetd\fP Ѿ) 褦Ȥޤ Ѿ줿ͥ뤬 \f2null\fP Ǥ뤫 \f2java.nio.channels.ServerSocketChannel\fP Υ󥹥󥹤Ǥʤä硢 \f2rmid\fP rmid ϤΥͥ \f2inetd\fP/\f2xinetd\fP ˤäƵư줿ΤǤϤʤȽǤҤΤ褦˵ưޤ .LP .LP -継承されたチャンネルが \f2ServerSocketChannel\fP インスタンスである場合は、エクスポートするリモートオブジェクト、つまり \f2java.rmi.activation.ActivationSystem\fP がバインドされているレジストリと \f2java.rmi.activation.Activator\fP リモートオブジェクトに対する要求を受信するサーバーソケットとして、\f2ServerSocketChannel\fP から取得した \f2java.net.ServerSocket\fP を \f2rmid\fP では使用します。このモードでは、\f2rmid\fP の動作は、次のことを除いて、 コマンド行から起動した場合と同じです。 +Ѿ줿ͥ뤬 \f2ServerSocketChannel\fP 󥹥󥹤Ǥϡ \f2rmid\fP ϥݡȤ⡼ȥ֥ȡĤޤ java.rmi.activation.ActivationSystem ХɤƤ쥸ȥ java.rmi.activation.Activator ⡼ȥ֥ȤФ׵륵СåȤȤơServerSocketChannel java.net.ServerSocket Ѥޤ Υ⡼ɤǤϡ \f2rmid\fP ưϡΤȤơ ޥɹԤ鵯ưƱǤ .LP .RS 3 .TP 2 o -\f2System.err\fP に対する出力は、ファイルにリダイレクトされる。このファイルは \f2java.io.tmpdir\fP システムプロパティーで指定されるディレクトリ (通常は \f2/var/tmp\fP または \f2/tmp\fP) にある。 ファイル名の接頭辞は \f2rmid\-err\fP で、接尾辞は \f2"tmp"\fP である +\f2System.err\fP ФϤϡե˥쥯Ȥ롣Υե \f2java.io.tmpdir\fP ƥץѥƥǻꤵǥ쥯ȥ (̾ \f2/var/tmp\fP ޤ \f2/tmp\fP) ˤ롣ե̾Ƭ \f2"rmid\-err"\fP ǡ \f2"tmp"\fP Ǥ .TP 2 o -\f2\-port\fP オプションは拒否される。このオプションを指定すると、\f2rmid\fP はエラーメッセージを出して終了する +\f2\-port\fP ץϵݤ롣Υץꤹȡ \f2rmid\fP ϥ顼åФƽλ .TP 2 o -\f2\-log\fP オプションは必須。このオプションを指定しないと、\f2rmid\fP はエラーメッセージを出して終了する +\f2\-log\fP ץɬܡΥץꤷʤȡ \f2rmid\fP ϥ顼åФƽλ .RE .LP .LP -必要に応じてサービスを開始するように設定する詳細については、\f2inetd\fP (Solaris) または \f2xinetd\fP (Linux) のマニュアルページを参照してください。 +ɬפ˱ƥӥ򳫻Ϥ褦ꤹܺ٤ˤĤƤϡ \f2inetd\fP (Solaris) ޤ \f2xinetd\fP (Linux) Υޥ˥奢ڡ򻲾ȤƤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-C<someCommandLineOption> -\f2rmid\fP の子プロセス (起動グループ) が作成されたときに、それぞれの子プロセスにコマンド行引数として渡されるオプションを指定します。たとえば、次のように指定すると、起動システムデーモ ンによって生成される各仮想マシンにプロパティーを渡すことができます。 +\f2rmid\fP λҥץ (ư롼) 줿Ȥˡ줾λҥץ˥ޥɹ԰ȤϤ륪ץꤷޤȤСΤ褦˻ꤹȡưƥǡˤäƲۥޥ˥ץѥƥϤȤǤޤ .nf \f3 .fl @@ -146,7 +136,7 @@ .fl \fP .fi -コマンド行引数を子プロセスに渡す機能は、デバッグを行う場合に便利です。たとえば、次のようなコマンドを実行できます。 +ޥɹ԰ҥץϤǽϡǥХåԤǤȤСΤ褦ʥޥɤ¹ԤǤޤ .nf \f3 .fl @@ -154,11 +144,11 @@ .fl \fP .fi -このコマンドにより、すべての子 VM でサーバー呼び出しのログが作成されるようになります。 +Υޥɤˤꡢ٤Ƥλ VM ǥСƤӽФΥ褦ˤʤޤ .LP .TP 3 \-J<someCommandLineOption> -\f2rmid\fP を実行している \f2java\fP インタプリタに渡すオプションを指定します。たとえば、\f2rmid\fP が \f2rmid.policy\fP という名前のポリシーファイルを使用するように指定するには、\f2rmid\fP のコマンド行で \f2\-J\fP オプションを使って、\f2java.security.policy\fP プロパティーを定義します。 次に例を示します。 +rmid ¹ԤƤ \f2java\fP 󥿥ץ꥿Ϥץꤷޤ ȤС \f2rmid\fP \f2rmid.policy\fP Ȥ̾ΥݥꥷեѤ褦˻ꤹˤϡrmid ΥޥɹԤ \f2\-J\fP ץȤäơ \f2java.security.policy\fP ץѥƥޤ 򼨤ޤ .nf \f3 .fl @@ -168,16 +158,15 @@ .fi .TP 3 \-J\-Dsun.rmi.activation.execPolicy=<policy> -起動グループが実行されることになる VM の起動に使用するコマンドおよびコマンド行オプションをチェックするために、\f2rmid\fP が採用するポリシーを指定します。このオプションは、Java RMI 起動デーモンの Sun の実装だけに存在することに注意してください。コマンド行にこのプロパティーを指定しない場合、結果は \f2\-J\-Dsun.rmi.activation.execPolicy=default\fP を指定した場合と同じになります。\f2<policy>\fP に指定可能な値は、\f2default\fP、\f2<policyClassName>\fP、または \f2none\fP です。 それぞれの値について、このあと説明します。 -.LP +ư롼פ¹Ԥ뤳Ȥˤʤ VM εư˻Ѥ륳ޥɤӥޥɹԥץå뤿ˡ \f2rmid\fP ѤݥꥷꤷޤΥץϡJava RMI ưǡ Sun μ¸ߤ뤳ȤդƤޥɹԤˤΥץѥƥꤷʤ硢̤ \f2\-J\-Dsun.rmi.activation.execPolicy=default\fP ꤷƱˤʤޤ\f2<policy>\fP ˻ǽͤϡ\f2default\fP\f2<policyClassName>\fPޤ \f2none\fP Ǥ .RS 3 .TP 2 o -\f3default (または、このプロパティーが「指定されていない」場合)\fP +\f3default (ޤϡΥץѥƥֻꤵƤʤ׾)\fP .LP -デフォルトの \f2execPolicy\fP の場合、\f2rmid\fP が実行できるのは、\f2rmid\fP が使用する セキュリティーポリシーファイルの中で、実行する権限が \f2rmid\fP に与えられているコマンドおよびコマンド行オプションだけです。「デフォルト」の実行ポリシーで使用できるのは、デフォルトの起動グループ実装だけです。 +ǥեȤ \f2execPolicy\fP ξ硢 \f2rmid\fP ¹ԤǤΤϡ \f2rmid\fP Ѥ륻ƥݥꥷեǡ¹Ԥ븢¤ \f2rmid\fP ͿƤ륳ޥɤӥޥɹԥץǤ֥ǥեȡפμ¹ԥݥꥷǻѤǤΤϡǥեȤεư롼׼Ǥ .LP -\f2rmid\fP は、起動グループ用の VM を起動するときに、そのグループについて登録された起動グループ記述子である \f2ActivationGroupDesc\fP 内の情報を使用します。グループ記述子は、\f2ActivationGroupDesc.CommandEnvironment\fP を指定します (省略可能)。 これには、起動グループを開始する「コマンド」と、そのコマンド行に追加できるコマンド行「オプション」が含まれています。デフォルトでは、\f2rmid\fP は、\f2java.home\fP にある \f2java\fP コマンドを使用します。グループ記述子には、オプションとしてコマンド行に追加される「プロパティー」オーバーライドも含まれています。 このプロパティーは、次のように定義します。 +\f2rmid ϡ\fP ư롼Ѥ VM ưȤˡΥ롼פˤĤϿ줿ư롼׵һҤǤ \f2ActivationGroupDesc\fP ξѤޤ롼׵һҤϡ \f2ActivationGroupDesc.CommandEnvironment\fP ꤷޤ (άǽ)ˤϡư롼פ򳫻Ϥ֥ޥɡפȡΥޥɹԤɲäǤ륳ޥɹԡ֥ץפޤޤƤޤǥեȤǤϡ \f2rmid \fP java.home ˤ \f2java\fP ޥɤѤޤ 롼׵һҤˤϡץȤƥޥɹԤɲä֥ץѥƥץС饤ɤޤޤƤޤΥץѥƥϡΤ褦ޤ .nf \f3 .fl @@ -186,33 +175,33 @@ \fP .fi .LP -アクセス権 \f2com.sun.rmi.rmid.ExecPermission\fP を使用すると、グループ記述子の \f2CommandEnvironment\fP で指定されたコマンドを実行して起動グループを開始する権限を、\f2rmid\fP に対して許可することができます。アクセス権 \f2com.sun.rmi.rmid.ExecOptionPermission\fP を使用すると、グループ記述子でプロパティーオーバーライドとして指定されたコマンド行オプション、または \f2CommandEnvironment\fP でオプションとして指定されたコマンド行オプションを、起動グループを開始するときに \f2rmid\fP が使用できるようになります。 + \f2com.sun.rmi.rmid.ExecPermission\fP Ѥȡ \f2rmid\fP Фơ롼׵һҤ \f2CommandEnvironment\fP ǻꤵ줿ޥɤ¹ԤƵư롼פ򳫻Ϥ븢¤Ĥ뤳ȤǤޤ \f2com.sun.rmi.rmid.ExecOptionPermission\fP Ѥȡ롼׵һҤǥץѥƥС饤ɤȤƻꤵ줿ޥɹԥץ󡢤ޤ \f2CommandEnvironment\fP ǥץȤƻꤵ줿ޥɹԥץ򡢵ư롼פ򳫻ϤȤ rmid ѤǤ褦ˤʤޤ .LP -\f2rmid\fP にさまざまなコマンドおよびオプションを実行する権限を許可する場合は、アクセス権 \f2ExecPermission\fP および \f2ExecOptionPermission\fP を汎用的に許可する必要があります。 つまり、すべてのコードソースに対して許可します。 +\f2rmid \fP ޤޤʥޥɤӥץ¹Ԥ븢¤Ĥϡ \f2ExecPermission\fP \f2ExecOptionPermission\fP Ū˵ĤɬפޤĤޤꡢ٤ƤΥɥФƵĤޤ .RS 3 .TP 3 ExecPermission -\f2ExecPermission\fP クラスは、起動グループを開始するために \f2rmid\fP が特定の「コマンド」を実行する権限を表します。 +\f2ExecPermission\fP 饹ϡư롼פ򳫻Ϥ뤿 \f2rmid \fP Ρ֥ޥɡפ¹Ԥ븢¤ɽޤ .LP -\f3構文\fP +\f3ʸ\fP .br -\f2ExecPermission\fP の「名前」は、\f2rmid\fP に実行を許可するコマンドのパス名です。「/*」 (「/」はファイル区切り文字 \f2File.separatorChar\fP) で終わるパス名は、そのディレクトリに含まれるすべてのファイルを示します。「/\-」で終わるパス名は、そのディレクトリに含まれるすべてのファイルとサブディレクトリ (再帰的に) を示します。パス名に特別なトークン「<<ALL FILES>>」を指定した場合は、\f3任意の\fPファイルを示します。 +\f2ExecPermission\fP Ρ̾פϡ \f2rmid\fP ˼¹ԤĤ륳ޥɤΥѥ̾Ǥ/* (/פϥեڤʸ File.separatorChar) ǽѥ̾ϡΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥե򼨤ޤ /\-פǽѥ̾ϡΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥեȥ֥ǥ쥯ȥ (ƵŪ) 򼨤ޤѥ̤̾ʥȡ<<ALL FILES>>פꤷϡ\f3Ǥդ\fPե򼨤ޤ .LP -\f3注:\fP「*」を 1 つ指定しただけのパス名は、現在のディレクトリ内のすべてのファイルを表します。 また、「\-」を 1 つ指定しただけのパス名は、現在のディレクトリ内のすべてのファイルと、現在のディレクトリに含まれるすべてのファイルとサブディレクトリ (再帰的に) を表します。 +\f3:\fP *פ 1 ĻꤷΥѥ̾ϡߤΥǥ쥯ȥΤ٤ƤΥեɽޤޤ\-פ 1 ĻꤷΥѥ̾ϡߤΥǥ쥯ȥΤ٤ƤΥեȡߤΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥեȥ֥ǥ쥯ȥ (ƵŪ) ɽޤ .TP 3 ExecOptionPermission -\f2ExecOptionPermission\fP クラスは、起動グループを開始するときに \f2rmid\fP が特定のコマンド行「オプション」を使用できる権限を表します。\f2ExecOptionPermission\fP の「名前」は、コマンド行オプションの値です。 +\f2ExecOptionPermission\fP 饹ϡư롼פ򳫻ϤȤ \f2rmid ϡư롼פ򳫻Ϥ륳ޥɤޤäڤޤ\fP Υޥɹԡ֥ץפѤǤ븢¤ɽޤ \f2ExecOptionPermission\fP Ρ̾פϡޥɹԥץͤǤ .LP -\f3構文\fP +\f3ʸ\fP .br -オプションでは、ワイルドカードが限定的にサポートされます。アスタリスクは、ワイルドカードマッチを表します。 アスタリスクは、オプション名そのものとして使用できます。 つまり、任意のオプションを表すことができます。 また、オプション名の末尾に使用することもできます。 ただし、「.」か「=」の直後にアスタリスクを指定する必要があります。 +ץǤϡ磻ɥɤŪ˥ݡȤޤꥹϡ磻ɥɥޥåɽޤ ꥹϡץ̾ΤΤȤƻѤǤޤ ĤޤꡢǤդΥץɽȤǤޤ ޤץ̾˻Ѥ뤳ȤǤޤ .פ=פľ˥ꥹꤹɬפޤ .LP -例を示します。「*」、「\-Dfoo.*」、「\-Da.b.c=*」は有効ですが、「*foo」、「\-Da*b」、「ab*」は無効です。 +򼨤ޤ*ס\-Dfoo.*ס\-Da.b.c=*פͭǤ*fooס\-Da*bסab*פ̵Ǥ .TP 3 -rmid のポリシーファイル -\f2rmid\fP にさまざまなコマンドおよびオプションを実行する権限を許可する場合は、アクセス権 \f2ExecPermission\fP および \f2ExecOptionPermission\fP を汎用的に許可する必要があります。 つまり、すべてのコードソースに対して許可します。これらのアクセス権をチェックするのは \f2rmid\fP だけなので、これらのアクセス権を汎用的に許可しても安全です。 +rmid Υݥꥷե +\f2rmid \fP ޤޤʥޥɤӥץ¹Ԥ븢¤Ĥϡ \f2ExecPermission\fP \f2ExecOptionPermission\fP Ū˵ĤɬפޤĤޤꡢ٤ƤΥɥФƵĤޤΥåΤ \f2rmid\fP ʤΤǡΥŪ˵ĤƤǤ .LP -\f2rmid\fP に各種の実行権限を許可するポリシーファイルの例を、次に示します。 +rmid ˳Ƽμ¹Ը¤Ĥݥꥷե򡢼˼ޤ .nf \f3 .fl @@ -220,13 +209,7 @@ .fl permission com.sun.rmi.rmid.ExecPermission .fl - "/files/apps/java/jdk1.2.2/solaris/bin/java"; -.fl - -.fl - permission com.sun.rmi.rmid.ExecPermission -.fl - "/files/apps/java/jdk1.2.2/solaris/bin/java_g"; + "/files/apps/java/jdk1.7.0/solaris/bin/java"; .fl .fl @@ -256,29 +239,21 @@ .fl \fP .fi -最初の 2 つの付与されているアクセス権は、\f2rmid\fP に対し、パス名により明示的に指定される \f2java\fP コマンドおよび \f2java_g\fP コマンドの 1.2.2 バージョンの実行を許可します。デフォルトでは、\f2java.home\fP にあるバージョンの \f2java\fP コマンド (\f2rmid\fP が使用するのと同じバージョン) が使用されるため、そのコマンドは、ポリシーファイルで指定する必要はありません。3 番目のアクセス権は、\f2rmid\fP に対して、ディレクトリ \f2/files/apps/rmidcmds\fP 内の任意のコマンドの実行権限を許可します。 -.LP -4 番目のアクセス権 \f2ExecOptionPermission\fP は、\f2rmid\fP に対して、セキュリティーポリシーファイルを \f2/files/policies/group.policy\fP として定義している起動グループの開始を許可します。5 番目のアクセス権は、起動グループが \f2java.security.debug\fP プロパティーを使用することを許可しています。最後のアクセス権は、起動グループが \f2sun.rmi\fP というプロパティー名の階層内の任意のプロパティーを使用することを許可しています。 +ǽͿƤ륢ϡ \f2rmid\fP Фѥ̾ˤŪ˻ꤵ \f2java\fP ޥɤ 1.7.0 Сμ¹ԤĤޤǥեȤǤϡjava.home ˤС \f2java\fP ޥ ( \f2rmid\fP ѤΤƱС) Ѥ뤿ᡢΥޥɤϡݥꥷեǻꤹɬפϤޤ2 ܤΥϡ \f2rmid\fP Фơǥ쥯ȥ \f2/files/apps/rmidcmds\fP ǤդΥޥɤμ¹Ը¤Ĥޤ .LP -ポリシーファイルを指定して \f2rmid\fP を起動するには、\f2rmid\fP のコマンド行で \f2java.security.policy\fP プロパティーを指定する必要があります。 次に例を示します。 -.RS 3 - +3 ܤͿƤ륢 \f2ExecOptionPermission\fP ϡ \f2rmid\fP Фơƥݥꥷե \f2/files/policies/group.policy\fP ȤƤ뵯ư롼פγϤĤޤΥϡư롼פ \f2java.security.debug\fP ץѥƥѤ뤳ȤĤƤޤǸΥϡư롼פ \f2sun.rmi\fP Ȥץѥƥ̾γǤդΥץѥƥѤ뤳ȤĤƤޤ .LP +ݥꥷեꤷ \f2rmid\fP ưˤϡrmid ΥޥɹԤ \f2java.security.policy\fP ץѥƥꤹɬפޤ 򼨤ޤ .LP -\f2rmid \-J\-Djava.security.policy=rmid.policy\fP -.LP +\f2rmid \-J\-Djava.security.policy=rmid.policy\fP .RE -.RE -.TP 2 -o -.LP .TP 2 o \f4<policyClassName>\fP .LP -デフォルトの動作では十分な柔軟性が得られない場合、管理者は、\f2rmid\fP の起動時に、\f2checkExecCommand\fP メソッドが所属するクラスの名前を指定して、rmid が実行するコマンドをチェックすることができます。 +ǥեȤưǤϽʬʽʤ硢Ԥϡ \f2rmid\fP εưˡ \f2checkExecCommand\fP ᥽åɤ°륯饹̾ꤷơrmid ¹Ԥ륳ޥɤå뤳ȤǤޤ .LP -\f2policyClassName\fP には、引数なしのコンストラクタを持ち、次のような \f2checkExecCommand\fP メソッドを実装している public クラスを指定します。 +\f2policyClassName\fP ˤϡʤΥ󥹥ȥ饯Τ褦 \f2checkExecCommand\fP ᥽åɤƤ public 饹ꤷޤ .nf \f3 .fl @@ -290,22 +265,21 @@ .fl \fP .fi -起動グループを開始する前に、\f2rmid\fP は、ポリシーの \f2checkExecCommand\fP メソッドを呼び出します。このとき、起動グループの記述子と、起動グループを開始するための完全なコマンドを含む配列をそのメソッドに渡します。\f2checkExecCommand\fP が \f2SecurityException\fP をスローすると、\f2rmid\fP はその起動グループを開始せず、オブジェクトの起動を試行している呼び出し側には \f2ActivationException\fP がスローされます。 -.LP +ư롼פ򳫻Ϥˡ \f2rmid\fP ϡݥꥷ \f2checkExecCommand\fP ᥽åɤƤӽФޤΤȤư롼פεһҤȡư롼פ򳫻Ϥ뤿δʥޥɤޤ򤽤Υ᥽åɤϤޤ \f2checkExecCommand\fP \f2SecurityException\fP 򥹥ȡ \f2rmid\fP Ϥεư롼פ򳫻Ϥ֥ȤεưԤƤƤӽФ¦ˤ \f2ActivationException\fP ޤ .TP 2 o \f3none\fP .LP -\f2sun.rmi.activation.execPolicy\fP プロパティーの値が「none」の場合、\f2rmid\fP は、起動グループを開始するコマンドをまったく検証しません。 +\f2sun.rmi.activation.execPolicy\fP ץѥƥͤnoneפξ硢 \f2rmid\fP ϡư롼פ򳫻Ϥ륳ޥɤޤäڤޤ .RE .LP .TP 3 \-log dir -起動システムデーモンがデータベースおよび関連情報を書き込むのに使うディレクトリの名前を指定します。デフォルトでは、\f2rmid\fP コマンドを実行したディレクトリに、\f2log\fP というログディレクトリが作成されます。 +ưƥǡ󤬥ǡ١ӴϢ񤭹Τ˻Ȥǥ쥯ȥ̾ꤷޤǥեȤǤϡrmid ޥɤ¹Ԥǥ쥯ȥˡ \f2log\fP Ȥǥ쥯ȥ꤬ޤ .LP .TP 3 \-port port -\f2rmid\fP のレジストリが使うポートを指定します。起動システムデーモンは、このレジストリの中で、\f2java.rmi.activation.ActivationSystem\fP という名前で\f2ActivationSystem\fP をバインドします。したがって、ローカルマシン上の \f2ActivationSystem\fP は、次のように \f2Naming.lookup\fP メソッドを呼び出すことによって取得できます。 +\f2rmid\fP Υ쥸ȥ꤬ȤݡȤꤷޤưƥǡϡΥ쥸ȥǡ \f2java.rmi.activation.ActivationSystem\fP Ȥ̾ActivationSystem Хɤޤäơޥ \f2ActivationSystem\fP ϡΤ褦 \f2Naming.lookup\fP ᥽åɤƤӽФȤˤäƼǤޤ .nf \f3 .fl @@ -322,16 +296,16 @@ .fi .TP 3 \-stop -\f2\-port\fP オプションによって指定されたポートの、現在の \f2rmid\fP 呼び出しを停止します。ポートが指定されていない場合は、ポート 1098 で実行されている \f2rmid\fP を停止します。 +\-port ץˤäƻꤵ줿ݡȤΡߤ \f2rmid\fP ƤӽФߤޤ ݡȤꤵƤʤϡݡ 1098 Ǽ¹ԤƤ \f2rmid\fP ߤޤ .RE -.SH "環境変数" + .LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。例を示します。 +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -342,15 +316,13 @@ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -rmic(1)、 +rmic(1) .na \f2CLASSPATH\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpath、java(1) +http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathjava(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/rmiregistry.1 --- a/jdk/src/linux/doc/man/ja/rmiregistry.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/rmiregistry.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,18 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmiregistry 1 "02 Jun 2010" +.TH rmiregistry 1 "14 Apr 2011" .LP -.SH "名前" -rmiregistry \- Java リモートオブジェクトレジストリ +.SH "̾" +rmiregistry \- Java ⡼ȥ֥ȥ쥸ȥ .LP .RS 3 +\f3rmiregistry\fP ޥɤϡߤΥۥȤλꤷݡȾ˥⡼ȥ֥ȥ쥸ȥ򳫻Ϥޤ +.RE .LP -.LP -\f3rmiregistry\fP コマンドは、現在のホストの指定したポート上にリモートオブジェクトレジストリを開始します。 -.LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,52 +41,43 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmiregistry\fP コマンドは、現在のホストの指定 \f2port\fP 上にリモートオブジェクトレジストリを作成し、開始します。\f2port\fP の指定を省略した場合、レジストリはポート 1099 で開始します。\f3rmiregistry\fP コマンドに、出力機能はありません。通常、これはバックグラウンドで実行されます。例を示します。 +\f3rmiregistry\fP ޥɤϡߤΥۥȤλ \f2port\fP ˥⡼ȥ֥ȥ쥸ȥϤޤ\f2port\fP λά硢쥸ȥϥݡ 1099 dzϤޤ\f3rmiregistry\fP ޥɤˡϵǽϤޤ̾ϥХå饦ɤǼ¹Ԥޤ򼨤ޤ .LP .LP \f2rmiregistry&\fP .LP .LP -リモートオブジェクトレジストリは、ブートストラップのネームサービスです。 同一ホストの RMI サーバーが、リモートオブジェクトを名前にバインドするために使用されます。次に、ローカルおよびリモートホストのクライアントはリモートオブジェクトを検索し、リモートメソッドの呼び出しを行います。 +⡼ȥ֥ȥ쥸ȥϡ֡ȥȥåפΥ͡ॵӥǤƱۥȤ RMI С⡼ȥ֥Ȥ̾˥Хɤ뤿˻Ѥޤˡ뤪ӥ⡼ȥۥȤΥ饤Ȥϥ⡼ȥ֥Ȥ򸡺⡼ȥ᥽åɤθƤӽФԤޤ .LP .LP -レジストリは、一般的に、最初のリモートオブジェクトの位置を指定します。 そこで、アプリケーションはメソッドを呼び出す必要があります。代わって、そのオブジェクトはアプリケーション指定のサポートを提供し、他のオブジェクトを探します。 +쥸ȥϡŪˡǽΥ⡼ȥ֥Ȥΰ֤ꤷޤ ǡץꥱϥ᥽åɤƤӽФɬפޤäơΥ֥ȤϥץꥱΥݡȤ󶡤¾Υ֥Ȥõޤ .LP .LP -\f2java.rmi.registry.LocateRegistry\fP クラスのメソッドは、ローカルホスト、またはローカルホストとポートで動作するレジストリを取得するために使用されます。 +\f2java.rmi.registry.LocateRegistry\fP 饹Υ᥽åɤϡۥȡޤϥۥȤȥݡȤư쥸ȥ뤿˻Ѥޤ .LP .LP -\f2java.rmi.Naming\fP クラスの URL ベースのメソッドは、レジストリで動作し、任意のホストおよびローカルホスト上のリモートオブジェクトの検索に使用されます。リモートオブジェクトに単純な (文字列) 名前をバインドしたり、新しい名前をリバインド (古いバインドにオーバーライド) します。 またリモートオブジェクトをアンバインドしたり、レジストリにバインドされた URL を出力します。 +\f2java.rmi.Naming\fP 饹 URL ١Υ᥽åɤϡ쥸ȥưǤդΥۥȤӥۥȾΥ⡼ȥ֥Ȥθ˻Ѥޤ⡼ȥ֥Ȥñ (ʸ) ̾Хɤꡢ̾Х (ŤХɤ˥С饤) ޤޤ⡼ȥ֥Ȥ򥢥Хɤꡢ쥸ȥ˥Хɤ줿 URL Ϥޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-J -\f2\-J\fP の後ろに続くオプションを \f2java\fP インタプリタに引き渡します。 \f2java\fP オプションと組み合わせて使います (\f2\-J\fP と \f2java\fP オプションの間にスペースは入れない)。 +\f2\-J\fP θ³ץ \f2java\fP 󥿥ץ꥿˰Ϥޤ \f2java\fP ץȤ߹碌ƻȤޤ (\-J java ץδ֤˥ڡʤ) .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP - -.LP -.LP -java(1)、 +java(1) .na \f2java.rmi.registry.LocateRegistry\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/rmi/registry/LocateRegistry.html、および +http://java.sun.com/javase/6/docs/api/java/rmi/registry/LocateRegistry.html .na \f2java.rmi.Naming\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/rmi/Naming.html -.LP - +http://java.sun.com/javase/6/docs/api/java/rmi/Naming.html diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/schemagen.1 --- a/jdk/src/linux/doc/man/ja/schemagen.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/schemagen.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,110 +19,106 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH schemagen 1 "02 Jun 2010" +.TH schemagen 1 "14 Apr 2011" .LP -.SH "名前" -schemagen \- XML バインドのための Java(TM) アーキテクチャースキーマジェネレータ -.LP -.LP -\f3仕様バージョン:\fP 2.1 -.br -\f3実装バージョン:\fP 2.1.3 -.LP -.SS -schemagen の起動 +.SH "̾" +schemagen \- XML ХɤΤ Java(TM) ƥ㡼ޥͥ졼 .LP .LP -スキーマジェネレータは、ユーザーのプラットフォームの \f2bin\fP ディレクトリにある \f2schemagen\fP シェルスクリプトを使って起動できます。 +\f3ͥС:\fP 2.1 +.br +\f3С:\fP 2.1.3 .LP -.LP -現在のスキーマジェネレータは、Java ソースファイルとクラスファイルのいずれも処理できます。 +.SH "schemagen εư" .LP .LP -また、スキーマジェネレータを実行するための Ant タスクも用意されています。 +ޥͥ졼ưˤϡ桼Υץåȥե bin ǥ쥯ȥˤ \f2Ŭڤ schemagen 륹ץ\fP \f2ޤ\fP +.LP +.LP +ߤΥޥͥ졼ϡJava եȥ饹եΤǤޤ +.LP +.LP +ޤޥͥ졼¹Ԥ뤿 Ant ѰդƤޤ .na -\f2schemagen を Ant とともに使用する\fP @ +\f2schemagen Ant ȤȤ˻Ѥ\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlための手順を参照してください。 -.LP -.RS 3 - +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlμ򻲾ȤƤ .LP .nf \f3 .fl % schemagen.sh Foo.java Bar.java ... .fl -注: Writing schema1.xsd +Note: Writing schema1.xsd .fl \fP .fi -.RE .LP .LP -ユーザーの Java ソース/クラスがほかのクラスを参照している場合、システムの CLASSPATH 環境変数経由でそれらのクラスにアクセスできるようになっているか、あるいは \f2\-classpath\fP/\f2\-cp\fP オプションを使ってそれらのクラスをツールに指定する必要があります。そうしないと、スキーマの生成時にエラーが発生します。 -.LP -.RS 3 - +桼 Java /饹ۤΥ饹򻲾ȤƤ硢ƥ ĶѿͳǤΥ饹˥Ǥ褦ˤʤäƤ뤫뤤 \f2\-classpath\fP/\f2\-cp\fP ȤäƤΥ饹ġ˻ꤹɬפޤʤȡޤ˥顼ȯޤ .LP -\f3コマンド行オプション\fP -.LP -.RS 3 - +.SS +ޥɹԥץ .LP .nf \f3 .fl -使用方法: schemagen [\-options ...] <java files> +ˡ: schemagen [\-options ...] <java files> .fl .fl -オプション: +ץ: +.fl + \-d <path> : ץå javac ˤä륯饹եγǼꤷޤ .fl - \-d <path> : プロセッサと javac 生成のクラスファイルを置く場所を指定します。 + \-cp <path> : 桼եθꤷޤ +.fl + \-classpath <path> : 桼եθꤷޤ .fl - \-cp <path> : ユーザー指定ファイルの検索場所を指定します。 + \-encoding <encoding> : apt/javac ƤӽФ˻Ѥ륨󥳡ǥ󥰤ꤷޤ +.fl + .fl - \-classpath <path> : ユーザー指定ファイルの検索場所を指定します。 + \-episode <file> : ̥ѥѤΥԥɥեޤ .fl - \-help : この使用方法に関するメッセージを表示します。 + \-version : Сɽޤ +.fl + \-help : λˡ˴ؤåɽޤ .fl \fP .fi -.RE .LP -.RE -.SS -生成されるリソースファイル +.SH "꥽ե" .LP .LP -現在のスキーマジェネレータは単純に、Java クラス内で参照されている名前空間ごとに 1 つのスキーマファイルを作成します。生成されるスキーマファイルの名前を制御する方法は、現時点では存在しません。そうした目的には、 +ߤΥޥͥ졼ñˡJava 饹ǻȤƤ֤̾Ȥ 1 ĤΥޥեޤ륹ޥե̾椹ˡϡǤ¸ߤޤ󡣤Ūˤϡ .na -\f2スキーマジェネレータの Ant タスク\fP @ +\f2ޥͥ졼 ant \fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlを使用してください。 +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlѤƤ .LP -.SH "関連項目" +.SH "̾" +Ϣ .LP .RS 3 .TP 2 o -スキーマジェネレータの実行 (schemagen):[ +ޥͥ졼μ¹ (schemagen): [ .na -\f2コマンド行の命令\fP @ +\f2ޥɹԤ̿\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagen.html、 +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagen.html .na -\f2SchemaGen を Ant とともに使用する\fP @ +\f2SchemaGen Ant ȤȤ˻Ѥ\fP @ .fi https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.html] .TP 2 o .na -\f2XML バインドのための JavaTM アーキテクチャー (JAXB)\fP @ +\f2XML ХɤΤ JavaTM ƥ㡼 (JAXB)\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/xml/jaxb/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/serialver.1 --- a/jdk/src/linux/doc/man/ja/serialver.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/serialver.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH serialver 1 "02 Jun 2010" +.TH serialver 1 "14 Apr 2011" .LP -.SH "名前" -serialver \- シリアルバージョンコマンド -.LP -.RS 3 - +.SH "̾" +serialver \- ꥢС󥳥ޥ .LP .LP -\f3serialver\fP コマンドは \f2serialVersionUID\fP を返します。 +\f3serialver\fP ޥɤ \f2serialVersionUID\fP ֤ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,74 +39,54 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -このドキュメントで説明されているコマンド行オプションです。 +ΥɥȤƤ륳ޥɹԥץǤ .TP 3 classnames -1 つ以上のクラス名です。 +1 İʾΥ饹̾Ǥ .RE .LP -.RE -.SH "説明" -.LP - +.SH "" .LP .LP -\f3serialver\fP は、1 つ以上のクラスの \f2serialVersionUID\fP を、展開しているクラスへコピーするのに適した形式で返します。引数を指定しないで呼び出すと、使用方法が表示されます。 +\f3serialver\fP ϡ1 İʾΥ饹 \f2serialVersionUID\fP ŸƤ륯饹إԡΤŬ֤ޤꤷʤǸƤӽФȡˡɽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -\-classpath <: で区切られたディレクトリと zip や jar ファイル> -アプリケーションのクラスおよびリソースの検索パスを設定します。 +\-classpath <: Ƕڤ줿ǥ쥯ȥ zip jar ե> +ץꥱΥ饹ӥ꥽θѥꤷޤ .RE .LP .RS 3 .TP 3 \-show -簡単なユーザーインタフェースを表示します。完全指定のクラス名を入力して、Enter キーか [Show] ボタンを押し、シリアルバージョン UID を表示します。 +ñʥ桼󥿥եɽޤΥ饹̾ϤơEnter Showץܥ򲡤ꥢС UID ɽޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "注" -.LP - +.SH "" .LP .LP -\f3serialver\fP コマンドは、指定されたクラスをその仮想マシン内に読み込んで初期化しますが、デフォルトではセキュリティーマネージャーの設定は行いません。信頼できないクラスとともに \f3serialver\fP を実行する場合には、次のオプションを使ってセキュリティーマネージャーを設定できます。 -.LP -.RS 3 - +\f3serialver\fP ޥɤϡꤵ줿饹򤽤βۥޥɤ߹ǽޤǥեȤǤϥƥޥ͡㡼ϹԤޤ󡣿Ǥʤ饹ȤȤ \f3serialver\fP ¹ԤˤϡΥץȤäƥƥޥ͡㡼Ǥޤ .LP .LP \f2\-J\-Djava.security.manager\fP .LP -.RE .LP -また、必要であれば、次のオプションを使ってセキュリティーポリシーを指定できます。 -.LP -.RS 3 - +ޤɬפǤСΥץȤäƥƥݥꥷǤޤ .LP .LP \f2\-J\-Djava.security.policy=<policy file>\fP .LP -.RE -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP .na diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/servertool.1 --- a/jdk/src/linux/doc/man/ja/servertool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/servertool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,20 +19,14 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH servertool 1 "02 Jun 2010" +.TH servertool 1 "14 Apr 2011" .LP -.SH "名前" -servertool \- Java(TM) IDL サーバーツール -.LP -.RS 3 - +.SH "̾" +servertool \- Java(TM) IDL Сġ .LP -\f3servertool\fP はアプリケーションプログラマが、持続サーバーの登録、登録解除、起動、および停止を行うためのコマンド行インタフェースを提供します。 -.RE -.SH "形式" -.LP - +\f3servertool\fP ϥץꥱץޤ³СϿϿưߤԤΥޥɹԥ󥿥ե󶡤ޤ +.SH "" .LP .nf \f3 @@ -44,84 +38,76 @@ .LP .LP -コマンドを入力しないで \f2servertool\fP を起動すると、コマンド行ツールとして \f2servertool >\fP プロンプトが表示されます。\f2servertool >\fP プロンプトにコマンドを入力します。 +ޥɤϤʤ \f2servertool\fP ưȡޥɹԥġȤ \f2servertool >\fP ץץȤɽޤ\f2servertool >\fP ץץȤ˥ޥɤϤޤ .LP .LP -コマンドを入力して \f2servertool\fP を起動すると、Java IDL サーバーツールが起動し、コマンドを実行して終了します。 +ޥɤϤ \f2servertool\fP ưȡJava IDL Сġ뤬ưޥɤ¹Ԥƽλޤ .LP .LP -\f2\-ORBInitialPort\fP \f2nameserverport\fP オプションは\f3必須\fPです。\f2nameserverport\fP の値には、\f2orbd\fP が実行され、着信要求を待機しているポートを指定する必要があります。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、\f2nameserverport\fP として 1024 または 1024 より大きいポートを使用することをお勧めします。 +\f2\-ORBInitialPort\fP \f2nameserverport\fP ץ\f3ɬ\fPǤ \f2nameserverport\fP ͤˤϡ\f2orbd\fP ¹Ԥ졢忮׵ԵƤݡȤꤹɬפޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ\f2nameserverport\fPȤ 1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f2servertool\fP はアプリケーションプログラマが、持続サーバーの登録、登録解除、起動、および停止を行うためのコマンド行インタフェースを提供します。そのほかに、サーバーに関するさまざまな統計情報を取得するためのコマンドも提供します。 +\f2servertool\fP ϥץꥱץޤ³СϿϿưߤԤΥޥɹԥ󥿥ե󶡤ޤΤۤˡС˴ؤ뤵ޤޤ׾뤿Υޥɤ󶡤ޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-ORBInitialHost nameserverhost -ネームサーバーが、実行され、着信要求を待機しているホストマシンを指定します。このオプションを指定しない場合、\f2nameserverhost\fP はデフォルトで \f2localhost\fP に設定されます。\f2orbd\fP と \f2servertool\fP が異なるマシン上で実行されている場合は、\f2orbd\fP が実行されているホストの名前と IP アドレスを指定する必要があります。 +͡ॵС¹Ԥ졢忮׵ԵƤۥȥޥꤷޤΥץꤷʤ硢\f2nameserverhost\fP ϥǥեȤ \f2localhost\fP ꤵޤ\f2orbd\fP \f2servertool\fP ۤʤޥǼ¹ԤƤϡ\f2orbd\fP ¹ԤƤۥȤ̾ IP ɥ쥹ꤹɬפޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.SH "コマンド" -.LP - +.SH "ޥ" .LP .RS 3 .TP 3 register \-server\ <server\ class\ name> \ \-classpath\ <classpath\ to\ server> [\ \-applicationName\ <application\ name> \-args\ <args\ to\ server> \-vmargs\ <flags\ to\ be\ passed\ to\ Java\ VM> \ ] -Object Request Broker Daemon (ORBD) に新規持続サーバーを登録します。サーバーが未登録の場合、登録して起動します。このコマンドによって、\f2\-server\fP オプションで識別されるサーバーのメインクラス内でインストールメソッドが呼び出されます。このインストールメソッドは、\f2public static void install(org.omg.CORBA.ORB)\fP になっている必要があります。インストールメソッドは、オプションであり、データベーススキーマの作成などの独自のサーバーインストール動作を開発者が指定できます。 +Object Request Broker Daemon (ORBD) ˿³СϿޤС̤Ͽξ硢ϿƵưޤΥޥɤˤäơ\f2\-server\fP ץǼ̤륵СΥᥤ󥯥饹ǥ󥹥ȡ᥽åɤƤӽФޤΥ󥹥ȡ᥽åɤϡ\f2public static void install(org.omg.CORBA.ORB)\fP ˤʤäƤɬפޤ󥹥ȡ᥽åɤϡץǤꡢǡ١ޤκʤɤȼΥС󥹥ȡưȯԤǤޤ .TP 3 unregister \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -サーバー ID またはアプリケーション名を使用して、ORBD のサーバーの登録を解除します。このコマンドによって、\f2\-server\fP オプションで識別されるサーバーのメインクラス内でアンインストールメソッドが呼び出されます。このアンインストールメソッドは、\f2public static void uninstall(org.omg.CORBA.ORB)\fP になっている必要があります。アンインストールメソッドは、オプションであり、インストールメソッドの動作の取り消しなどの独自のサーバーアンインストール動作を開発者が指定できます。 +С ID ޤϥץꥱ̾ѤơORBD ΥСϿޤΥޥɤˤäơ\f2\-server\fP ץǼ̤륵СΥᥤ󥯥饹ǥ󥤥󥹥ȡ᥽åɤƤӽФޤΥ󥤥󥹥ȡ᥽åɤϡ\f2public static void uninstall(org.omg.CORBA.ORB)\fP ˤʤäƤɬפޤ󥤥󥹥ȡ᥽åɤϡץǤꡢ󥹥ȡ᥽åɤưμäʤɤȼΥС󥤥󥹥ȡưȯԤǤޤ .TP 3 getserverid \-applicationName\ <application\ name> -アプリケーションに関連付けられているサーバー ID を返します。 +ץꥱ˴ϢդƤ륵С ID ֤ޤ .TP 3 list -ORBD に登録されているすべての持続サーバーに関する情報を一覧表示します。 +ORBD ϿƤ뤹٤Ƥλ³С˴ؤɽޤ .TP 3 listappnames -現在 ORBD に登録されているすべてのサーバーのアプリケーション名を一覧表示します。 + ORBD ϿƤ뤹٤ƤΥСΥץꥱ̾ɽޤ .TP 3 listactive -ORDB によって起動され、現在実行されているすべての持続サーバーに関する情報を一覧表示します。 +ORDB ˤäƵư졢߼¹ԤƤ뤹٤Ƥλ³С˴ؤɽޤ .TP 3 locate \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> [\-endpointType\ <endpointType>\ ] -登録されたサーバーで作成したすべての ORB の特定の型について端点 (ポート) を検出します。サーバーが実行されていない場合、起動されます。端点の型が指定されていない場合、サーバーの ORB ごとに関連付けられている plain 型 または non\-protected 型の端点が返されます。 +Ͽ줿СǺ٤Ƥ ORB ηˤĤü (ݡ) 򸡽ФޤС¹ԤƤʤ硢ưޤüηꤵƤʤ硢С ORB Ȥ˴ϢդƤ plain ޤ non\-protected ü֤ޤ .TP 3 locateperorb \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> [\-orbid\ <ORB\ name>\ ] -登録されたサーバーの特定の ORB で登録された端点 (ポート) を検出します。サーバーが実行されていない場合、起動されます。\f2orbid\fP が指定されていない場合は、デフォルト値の「""」が\f2orbid\fPに割り当てられます。ORB が空文字列の \f2orbid\fP で作成されている場合、登録したポートがすべて返されます。 +Ͽ줿С ORB Ͽ줿ü (ݡ) 򸡽ФޤС¹ԤƤʤ硢ưޤ\f2orbid\fP ꤵƤʤϡǥեͤΡ""פ\f2orbid\fP˳ƤޤORB ʸ \f2orbid\fP ǺƤ硢ϿݡȤ٤֤ޤ .TP 3 orblist \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -サーバー上に定義された ORB の ORBId を一覧表示します。ORBId はサーバーで作成された ORB の文字列名です。サーバーが実行されていない場合、起動されます。 +С줿 ORB ORBId ɽޤORBId ϥСǺ줿 ORB ʸ̾ǤС¹ԤƤʤ硢ưޤ .TP 3 shutdown \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -ORBD に登録されたアクティブなサーバーを停止します。このコマンドの実行中に、\f2\-serverid\fP パラメータまたは \f2\-applicationName\fP パラメータで指定されたクラス内に定義された \f2shutdown()\fP メソッドも呼び出されてサーバープロセスを正しく停止します。 +ORBD Ͽ줿ƥ֤ʥСߤޤΥޥɤμ¹ˡ\f2\-serverid\fP ѥ᡼ޤ \f2\-applicationName\fP ѥ᡼ǻꤵ줿饹줿 \f2shutdown()\fP ᥽åɤƤӽФƥСץߤޤ .TP 3 startup \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -ORBD に登録されたサーバーを起動します。サーバーが実行されていない場合は、このコマンドでサーバーを起動します。サーバーがすでに実行されている場合は、ユーザーにエラーメッセージが返されます。 +ORBD Ͽ줿СưޤС¹ԤƤʤϡΥޥɤǥСưޤСǤ˼¹ԤƤϡ桼˥顼å֤ޤ .TP 3 help -サーバーがサーバーツールで使用できるすべてのコマンドを表示します。 +ССġǻѤǤ뤹٤ƤΥޥɤɽޤ .TP 3 quit -サーバーツールを終了します。 +Сġλޤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP orbd(1) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/tnameserv.1 --- a/jdk/src/linux/doc/man/ja/tnameserv.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/tnameserv.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,59 +19,59 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH tnameserv 1 "02 Jun 2010" +.TH tnameserv 1 "14 Apr 2011" .LP -.SH "名前" -Java IDL:一時ネームサービス \- \f2tnameserv\fP +.SH "̾" +Java IDL: ͡ॵӥ \- \f2tnameserv\fP .LP .LP -このドキュメントでは、Java IDL 一時ネームサービス \f2tnameserv\fP の使用方法について説明します。Java IDL には、Object Request Broker Daemon (ORBD) も含まれています。ORBD は、ブートストラップサービス、一時ネームサービス、\f3持続\fPネームサービス、およびサーバーマネージャーを含むデーモンプロセスです。Java IDL のすべてのチュートリアルでは ORBD を使用していますが、一時ネームサービスを使用する例では、\f2orbd\fP の代わりに \f2tnameserv\fP を使用できます。\f2orbd\fP ツールの詳細については、\f2orbd\fP の orbd(1)または +ΥɥȤǤϡJava IDL ͡ॵӥ \f2tnameserv\fP λˡˤĤޤJava IDL ˤϡObject Request Broker Daemon (ORBD) ޤޤƤޤORBD ϡ֡ȥȥåץӥ͡ॵӥ\f3³\fP͡ॵӥӥСޥ͡㡼ޤǡץǤJava IDL Τ٤ƤΥ塼ȥꥢǤ ORBD ѤƤޤ͡ॵӥѤǤϡ\f2orbd\fP \f2tnameserv\fP ѤǤޤ\f2orbd\fP ġξܺ٤ˤĤƤϡorbd orbd(1)ޤ .na -\f2ORBD に含まれる Java IDL ネームサービス\fP @ +\f2ORBD ˴ޤޤ Java IDL ͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlに関するトピックを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html˴ؤȥԥå򻲾ȤƤ .LP .LP -ここでは、以下の項目について説明します。 +ǤϡʲιܤˤĤޤ .LP .RS 3 .TP 2 o -Java\ IDL 一時ネームサービス +Java\ IDL ͡ॵӥ .TP 2 o -Java\ IDL 一時ネームサービスの起動 +Java\ IDL ͡ॵӥεư .TP 2 o -Java\ IDL 一時ネームサービスの停止 +Java\ IDL ͡ॵӥ .TP 2 o -サンプルクライアント:名前空間へのオブジェクトの追加 +ץ륯饤: ֤̾ؤΥ֥Ȥɲ .TP 2 o -サンプルクライアント:名前空間のブラウズ +ץ륯饤: ֤̾Υ֥饦 .RE .LP -.SH "Java\ IDL 一時ネームサービス" +.SH "Java IDL ͡ॵӥ" .LP .LP -CORBA の COS (Common Object Services) ネームサービスは、ファイルシステムがファイルに対してディレクトリ構造を提供しているのと同じように、オブジェクト参照に対してツリー構造のディレクトリを提供します。Java IDL の一時ネームサービスである \f2tnameserv\fP は、COS ネームサービスの仕様を単純な形で実装したものです。 +CORBA COS (Common Object Services) ͡ॵӥϡե륷ƥबեФƥǥ쥯ȥ깽¤󶡤ƤΤƱ褦ˡ֥ȻȤФƥĥ꡼¤Υǥ쥯ȥ󶡤ޤJava IDL ΰ͡ॵӥǤ \f2tnameserv\fP ϡCOS ͡ॵӥλͤñʷǼΤǤ .LP .LP -オブジェクト参照は名前空間に名前で格納され、オブジェクト参照と名前のペアは、それぞれ「ネームバインディング」と呼ばれます。ネームバインディングは「ネーミングコンテキスト」に組み込むことができます。ネーミングコンテキストはそれ自体がネームバインディングであり、ファイルシステムのサブディレクトリと同じ編成機能を持ちます。すべてのバインディングは「初期ネーミングコンテキスト」に格納されます。名前空間において、初期ネーミングコンテキストは唯一の持続的バインディングです。 それ以外のネーミングコンテキストは、Java IDL のネーミングサービスプロセスが停止し、再起動されると失われます。 +֥ȻȤ֤̾̾dzǼ졢֥ȻȤ̾Υڥϡ줾֥͡Хǥ󥰡פȸƤФޤ͡Хǥ󥰤ϡ֥͡ߥ󥰥ƥȡפȤ߹ळȤǤޤ͡ߥ󥰥ƥȤϤ켫Τ͡Хǥ󥰤Ǥꡢե륷ƥΥ֥ǥ쥯ȥƱǽޤ٤ƤΥХǥ󥰤ϡֽ͡ߥ󥰥ƥȡפ˳Ǽޤ֤̾ˤơ͡ߥ󥰥ƥȤͣλ³ŪХǥ󥰤ǤʳΥ͡ߥ󥰥ƥȤϡJava IDL Υ͡ߥ󥰥ӥץߤƵưȼޤ .LP .LP -アプレットまたはアプリケーションから COS ネームサービスを使用するためには、その ORB はネームサービスが動作しているホストのポートを知っているか、そのネームサービスの文字列化された初期ネーミングコンテキストにアクセスできなければなりません。ネームサービスは、Java\ IDL のネームサービスでもその他の COS 準拠のネームサービスでもかまいません。 +ץåȤޤϥץꥱ󤫤 COS ͡ॵӥѤ뤿ˤϡ ORB ϥ͡ॵӥưƤۥȤΥݡȤΤäƤ뤫Υ͡ॵӥʸ󲽤줿͡ߥ󥰥ƥȤ˥ǤʤФʤޤ󡣥͡ॵӥϡJava IDL Υ͡ॵӥǤ⤽¾ COS Υ͡ॵӥǤ⤫ޤޤ .LP -.SH "Java\ IDL 一時ネームサービスの起動" +.SH "Java IDL ͡ॵӥεư" .LP .LP -Java\ IDL ネームサービスは、ネームサービスを使用するアプリケーションまたはアプレットより前に起動しておかなければなりません。Java\ IDL 製品をインストールすると、Java IDL ネームサービスを起動するスクリプト (Solaris: \f2tnameserv\fP) か、実行可能ファイル (Windows NT: \f2tnameserv.exe\fP) が作成されます。バックグラウンドで動作するように、ネームサービスを起動してください。 +Java IDL ͡ॵӥϡ͡ॵӥѤ륢ץꥱޤϥץåȤ˵ưƤɬפޤJava\ IDL ʤ򥤥󥹥ȡ뤹ȡJava\ IDL ͡ॵӥư륹ץ (Solaris: \f2tnameserv\fP) ޤϼ¹Բǽե (Windows NT: \f2tnameserv.exe\fP) ޤХå饦ɤư褦ˡ͡ॵӥưƤ .LP .LP -特に指定しない場合、Java IDL ネームサービスは、ORB の \f2resolve_initial_references()\fP メソッドと \f2list_initial_references()\fP メソッドの実装に使用するブートストラッププロトコルに対してポート 900 で待機します。 +ä˻ꤷʤ硢Java IDL ͡ॵӥϡORB \f2resolve_initial_references()\fP ᥽åɤ \f2list_initial_references()\fP ᥽åɤμ˻Ѥ֡ȥȥåץץȥФƥݡ 900 Եޤ .LP .nf \f3 @@ -83,7 +83,7 @@ .LP .LP -ネームサーバーポートを指定しない場合、デフォルトでポート 900 が使用されます。Solaris ソフトウェアの実行時は、1024 より小さいポートでプロセスを開始する場合、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 1050 のように別のポートを指定し、ネームサービスをバックグラウンドで実行するには、UNIX コマンドシェルで次のように入力します。 +͡ॵСݡȤꤷʤ硢ǥեȤǥݡ 900 ѤޤSolaris եȥμ¹Իϡ1024 꾮ݡȤǥץ򳫻Ϥ硢root 桼ˤʤɬפޤΤᡢ1024 ޤ 1024 礭ݡֹѤ뤳Ȥ򤪴ᤷޤ1050 Τ褦̤ΥݡȤꤷ͡ॵӥХå饦ɤǼ¹ԤˤϡUNIX ޥɥǼΤ褦Ϥޤ .LP .nf \f3 @@ -95,7 +95,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -107,32 +107,32 @@ .LP .LP -ネームサーバーのクライアントには、新しいポート番号を知らせる必要があります。このため、ORB オブジェクトの作成時に \f2org.omg.CORBA.ORBInitialPort\fP プロパティーに新しいポート番号を設定します。 +͡ॵСΥ饤ȤˤϡݡֹΤ餻ɬפޤΤᡢORB ֥Ȥκ \f2org.omg.CORBA.ORBInitialPort\fP ץѥƥ˿ݡֹꤷޤ .LP .SS -異なるマシン上でのクライアントとサーバーの実行 +ۤʤޥǤΥ饤ȤȥСμ¹ .LP .LP -Java IDL と RMI\-IIOP のほとんどのチュートリアルでは、ネームサービス、サーバー、およびクライアントはすべて開発用のマシン上で実行されます。実際に配備する場合には、クライアントとサーバーを、ネームサービスとは異なるホスト上で実行することが多くなります。 +Java IDL RMI\-IIOP ΤۤȤɤΥ塼ȥꥢǤϡ͡ॵӥСӥ饤ȤϤ٤ƳȯѤΥޥǼ¹Ԥޤºݤˤϡ饤ȤȥС򡢥͡ॵӥȤϰۤʤۥȾǼ¹Ԥ뤳Ȥ¿ʤޤ .LP .LP -クライアントとサーバーがネームサービスを見つけるには、クライアントとサーバーが、ネームサービスが実行されているポートの番号とホストを認識している必要があります。そのためには、クライアントとサーバーのファイル内の \f2org.omg.CORBA.ORBInitialPort\fP プロパティーと \f2org.omg.CORBA.ORBInitialHost\fP プロパティーをネームサービスが実行されているポートの番号とマシンの名前に設定します。この例は、 +饤ȤȥС͡ॵӥ򸫤Ĥˤϡ饤ȤȥС͡ॵӥ¹ԤƤݡȤֹȥۥȤǧƤɬפޤΤˤϡ饤ȤȥСΥե \f2org.omg.CORBA.ORBInitialPort\fP ץѥƥ \f2org.omg.CORBA.ORBInitialHost\fP ץѥƥ͡ॵӥ¹ԤƤݡȤֹȥޥ̾ꤷޤϡ .na -\f2「RMI\-IIOP を使った Hello World の例」\fP @ +\f2RMI\-IIOP Ȥä Hello World פ˼Ƥޤ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/rmi\-iiop/rmiiiopexample.htmlに示されています。コマンド行オプション \f2\-ORBInitialPort\fP \f2nameserverport#\fP と \f2\-ORBInitialHost\fP \f2nameserverhostname\fP を使用して、クライアントとサーバーに対してネームサービスを探す場所を指定することもできます。 +http://java.sun.com/javase/6/docs/technotes/guides/rmi\-iiop/rmiiiopexample.htmlޥɹԥץ \f2\-ORBInitialPort\fP \f2nameserverport#\fP \f2\-ORBInitialHost\fP \f2nameserverhostname\fP Ѥơ饤ȤȥСФƥ͡ॵӥõꤹ뤳ȤǤޤ .na -\f2「Java IDL: 2 台のマシン上で実行する Hello World プログラム」\fP @ +\f2Java IDL: 2 ΥޥǼ¹Ԥ Hello World ץ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/tutorial/jidl2machines.html には、コマンド行オプションを使用して指定する方法が示されています。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/tutorial/jidl2machines.html ˤϡޥɹԥץѤƻꤹˡƤޤ .LP .LP -たとえば、一時ネームサービス \f2tnameserv\fP が、ホスト \f2nameserverhost\fP のポート 1050 上で実行されているとします。さらに、クライアントがホスト \f2clienthost\fP 上で実行され、サーバーはホスト \f2serverhost\fP 上で実行されているとします。 +ȤС͡ॵӥ \f2tnameserv\fP ۥ \f2nameserverhost\fP Υݡ 1050 Ǽ¹ԤƤȤޤˡ饤Ȥۥ \f2clienthost\fP Ǽ¹Ԥ졢Сϥۥ \f2serverhost\fP Ǽ¹ԤƤȤޤ .LP .RS 3 .TP 2 o -次のように、ホスト \f2nameserverhost\fP 上で \f2tnameserv\fP を起動します。 +Τ褦ˡۥ \f2nameserverhost\fP \f2tnameserv\fP ưޤ .nf \f3 .fl @@ -144,7 +144,7 @@ .fi .TP 2 o -\f2serverhost\fP 上でサーバーを起動します。 +\f2serverhost\fP ǥСưޤ .nf \f3 .fl @@ -154,7 +154,7 @@ .fi .TP 2 o -\f2clienthost\fP 上でクライアントを起動します。 +\f2clienthost\fP ǥ饤Ȥưޤ .nf \f3 .fl @@ -166,38 +166,34 @@ .LP .SS -\-J オプション +\-J ץ .LP -このコマンド行オプションは、\f2tnameserve\fP とともに使用できます。 -.RS 3 - -.LP +Υޥɹԥץϡ\f2tnameserve\fP ȤȤ˻ѤǤޤ .RS 3 .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.RE -.SH "Java\ IDL 一時ネームサービスの停止" +.SH "Java IDL ͡ॵӥ" .LP .LP -Java IDL ネームサービスを停止するには、Unix の場合は、\f2kill\fP などのオペレーティングシステムのコマンドを使い、Windows の場合は、\f2Ctrl\-C\fP を使います。ネームサービスを明示的に停止するまでは、呼び出し待機状態が続きます。なお、サービスを終了させると、Java\ IDL ネームサービスに登録されている名前は失われます。 +Java IDL ͡ॵӥߤˤϡUnix ξϡ\f2kill\fP ʤɤΥڥ졼ƥ󥰥ƥΥޥɤȤWindows ξϡ\f2Ctrl\-C\fP Ȥޤ͡ॵӥŪߤޤǤϡƤӽФԵ֤³ޤʤӥλȡJava IDL ͡ॵӥϿƤ̾ϼޤ .LP -.SH "サンプルクライアント:名前空間へのオブジェクトの追加" +.SH "ץ륯饤: ֤̾ؤΥ֥Ȥɲ" .LP .LP -次に示すサンプルプログラムは、名前を名前空間に追加する方法を示すものです。このサンプルプログラムは、このままの状態で完全に動作する一時ネームサービスクライアントで、次のような単純なツリーを作成するものです。 +˼ץץϡ֤̾̾ɲäˡ򼨤ΤǤΥץץϡΤޤޤξ֤Ǵư͡ॵӥ饤ȤǡΤ褦ñʥĥ꡼ΤǤ .LP .nf \f3 .fl \fP\f3 .fl - \fP\f4初期\fP\f3 + \fP\f4\fP\f3 .fl - \fP\f4ネーミングコンテキスト\fP\f3 + \fP\f4͡ߥ󥰥ƥ\fP\f3 .fl / \\ .fl @@ -215,7 +211,7 @@ .LP .LP -この例で、\f3plans\fP はオブジェクト参照、\f3Personal\fP は \f3calendar\fP と \f3schedule\fP の 2 つのオブジェクト参照を含むネーミングコンテキストです。 +ǡ\f3plans\fP ϥ֥Ȼȡ\f3Personal\fP \f3calendar\fP \f3schedule\fP 2 ĤΥ֥ȻȤޤ͡ߥ󥰥ƥȤǤ .LP .nf \f3 @@ -242,7 +238,7 @@ .fi .LP -前述の「Java IDL 一時ネームサービスの起動」で、ネームサーバーはポート 1050 を使用して起動しました。 次のコードで、このポート番号をクライアントプログラムに知らせます。 +ҤΡJava IDL ͡ॵӥεưפǡ͡ॵСϥݡ 1050 ѤƵưޤΥɤǡΥݡֹ򥯥饤ȥƥΤ餻ޤ .nf \f3 .fl @@ -258,7 +254,7 @@ .fi .LP -次のコードでは、初期ネーミングコンテキストを取得し、それを \f3ctx\fP に代入します。2 行目では、\f3ctx\fP をダミーのオブジェクト参照 \f3objref\fP にコピーします。 この \f3objref\fP には、あとでさまざまな名前を割り当てて名前空間に追加します。 +ΥɤǤϡ͡ߥ󥰥ƥȤ \f3ctx\fP ޤ2 ܤǤϡ\f3ctx\fP ߡΥ֥Ȼ \f3objref\fP ˥ԡޤ objref ˤϡȤǤޤޤ̾Ƥ֤̾ɲäޤ .nf \f3 .fl @@ -274,7 +270,7 @@ .fi .LP -次のコードでは、text 型の名前 plans を作成し、それをダミーのオブジェクト参照にバインドします。その後、\f2rebind\fP を使用して初期ネーミングコンテキストの下に "plans" を追加しています。\f2rebind\fP メソッドを使用すれば、\f2bind\fP を使用した場合に発生する例外を発生させずに、このプログラムを何度も繰り返し実行できます。 +ΥɤǤϡtext ̾ plans ߡΥ֥ȻȤ˥Хɤޤθ塢rebind Ѥƽ͡ߥ󥰥ƥȤβ \f2plans ɲäƤޤ\fP \f2rebind\fP ᥽åɤѤСbind Ѥȯ㳰ȯˡ \f2Υץ٤֤ⷫ¹ԤǤޤ\fP .nf \f3 .fl @@ -292,7 +288,7 @@ .fi .LP -次のコードでは、directory 型の Personal というネーミングコンテキストを作成します。その結果得られるオブジェクト参照 \f3ctx2\fP をこの名前にバインドし、初期ネーミングコンテキストに追加します。 +ΥɤǤϡdirectory Personal Ȥ͡ߥ󥰥ƥȤޤη륪֥Ȼ \f3ctx2\fP 򤳤̾˥Хɤ͡ߥ󥰥ƥȤɲäޤ .nf \f3 .fl @@ -310,7 +306,7 @@ .fi .LP -残りのコードでは、ダミーのオブジェクト参照を schedule と calendar という名前でネーミングコンテキスト "Personal" (\f3ctx2\fP) にバインドします。 +ĤΥɤǤϡߡΥ֥ȻȤ schedule calendar Ȥ̾ǥ͡ߥ󥰥ƥ "Personal" (\f3ctx2\fP) ˥Хɤޤ .nf \f3 .fl @@ -350,10 +346,10 @@ .fi .LP -.SH "サンプルクライアント:名前空間のブラウズ" +.SH "ץ륯饤: ֤̾Υ֥饦" .LP .LP -次のサンプルプログラムでは、名前空間をブラウズする方法を示します。 +ΥץץǤϡ֤֥̾饦ˡ򼨤ޤ .LP .nf \f3 @@ -380,7 +376,7 @@ .fi .LP -前述の「Java IDL 一時ネームサービスの起動」で、ネームサーバーはポート 1050 を使用して起動しました。 次のコードで、このポート番号をクライアントプログラムに知らせます。 +ҤΡJava IDL ͡ॵӥεưפǡ͡ॵСϥݡ 1050 ѤƵưޤΥɤǡΥݡֹ򥯥饤ȥƥΤ餻ޤ .nf \f3 .fl @@ -400,7 +396,7 @@ .fi .LP -次のコードでは、初期ネーミングコンテキストを取得しています。 +ΥɤǤϡ͡ߥ󥰥ƥȤƤޤ .nf \f3 .fl @@ -414,7 +410,7 @@ .fi .LP -\f2list\fP メソッドは、ネーミングコンテキストに追加されているバインディングをリストします。この場合、最大 1000 個までのバインディングが初期ネーミングコンテキストから BindingListHolder に返されます。 残りのバインディングは、BindingIteratorHolder に返されます。 +\f2list\fP ᥽åɤϡ͡ߥ󥰥ƥȤɲäƤХǥ󥰤ꥹȤޤξ硢 1000 ĤޤǤΥХǥ󥰤͡ߥ󥰥ƥȤ BindingListHolder ֤ޤĤΥХǥ󥰤ϡBindingIteratorHolder ֤ޤ .nf \f3 .fl @@ -430,7 +426,7 @@ .fi .LP -次のコードでは、返された BindingListHolder からバインディングの配列を取得します。バインディングがない場合は、プログラムは終了します。 +ΥɤǤϡ֤줿 BindingListHolder Хǥ󥰤ޤХǥ󥰤ʤϡץϽλޤ .nf \f3 .fl @@ -444,7 +440,7 @@ .fi .LP -残りのコードでは、バインディングに対してループ処理を行い、名前を出力します。 +ĤΥɤǤϡХǥ󥰤Фƥ롼׽Ԥ̾Ϥޤ .nf \f3 .fl diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/unpack200.1 --- a/jdk/src/linux/doc/man/ja/unpack200.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/unpack200.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,159 +19,125 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH unpack200 1 "02 Jun 2010" +.TH unpack200 1 "14 Apr 2011" .LP -.SH "名前" -unpack200 \- JAR アンパックツール +.SH "̾" +unpack200 \- JAR ѥåġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -終了ステータス +λơ .TP 2 o -関連項目 +Ϣ .TP 2 o -説明 +ջ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .LP \f4unpack200\fP\f2 [ \fP\f2options\fP ] \f2input\-file\fP \f2JAR\-file\fP .LP .LP -オプションの指定順序に決まりはありません。コマンド行に指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。 -.LP -.RS 3 - +ץλ˷ޤϤޤ󡣥ޥɹԤ˻ꤵ줿ǸΥץ󤬡˻ꤵ줿٤ƤΥץͥ褵ޤ .LP .RS 3 .TP 3 input\-file -入力ファイルの名前。 入力ファイルは通常、pack200 gzip ファイルか pack200 ファイルです。このほかに、0 を設定すれば pack200(1) から作成された JAR ファイルも入力ファイルとして使用できます。 この場合、入力ファイルの内容が Pack200 マーカーとともに出力 JAR ファイルにコピーされます。 +ϥե̾ϥե̾pack200 gzip ե뤫 pack200 եǤΤۤˡ0 ꤹ pack200(1) 줿 JAR եϥեȤƻѤǤޤξ硢ϥեƤ Pack200 ޡȤȤ˽ JAR ե˥ԡޤ .TP 3 JAR\-file -出力 JAR ファイル名。 + JAR ե̾ .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -\f2unpack200\fP は、\f2pack200\fP(1) で作成されたパックファイルを JAR ファイルに変換するネイティブ実装です。一般的な使用方法: -.LP -.RS 3 - +\f2unpack200\fP ϡpack200(1) Ǻ줿ѥåե JAR եѴ \f2ͥƥּ\fPǤŪʻˡ: .LP .LP \f2% unpack200 myarchive.pack.gz myarchive.jar\fP .LP -.RE -.LP -この例では、デフォルトの \f2unpack200\fP 設定で、\f2myarchive.jar\fP から \f2myarchive.pack.gz\fP が作成されます。 -.LP -.SH "オプション" .LP -.SS -標準オプション +Ǥϡ \f2ǥեȤ unpack200 ǡmyarchive.pack.gz\fP \f2myarchive.jar\fP \f2ޤ\fP .LP -.RS 3 - +.SH "ץ" .LP .LP \f4\-Hvalue \-\-deflate\-hint=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -JAR ファイル内のすべてのエントリに \f2true\fP、\f2false\fP、\f2keep\fP としてデフレーションを設定します。デフォルトモードは \f2keep\fP です。\f2true\fP または \f2false\fP の場合、デフォルトの動作をオーバーライドして、出力 JAR ファイル内のすべてのエントリのデフレーションモードを設定します。 -.LP -.RE -.RE -.SS -非標準オプション -.LP -.RS 3 - +JAR եΤ٤ƤΥȥ \f2true\fP \f2false\fP \f2keep\fP Ȥƥǥե졼ꤷޤǥեȥ⡼ɤ \f2keep\fP Ǥ \f2true\fP ޤ \f2false 硢\fPǥեȤư򥪡С饤ɤơ JAR եΤ٤ƤΥȥΥǥե졼⡼ɤꤷޤ .LP .LP \f4\-r \-\-remove\-pack\-file\fP .LP -.RS 3 - -.LP .LP -入力パックファイルを削除します。 +ϥѥåեޤ .LP -.RE .LP \f4\-v \-\-verbose\fP .LP -.RS 3 - -.LP .LP -最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが出力されます。 +Ǿ¤ΥåϤޤΥץʣꤹȡĹåϤޤ .LP -.RE .LP \f4\-q \-\-quiet\fP .LP -.RS 3 - -.LP .LP -メッセージを表示せずに動作します。 +åɽưޤ .LP -.RE .LP \f4\-lfilename \-\-log\-file=\fP\f2filename\fP .LP -.RS 3 - +.LP +ϥåΥեꤷޤ +.LP +.LP +\f4\-? \-h \-\-help\fP .LP .LP -出力メッセージのログファイルを指定します。 +Υޥɤ˴ؤإ׾Ϥޤ +.LP .LP -.RE -.RE -.SH "終了ステータス" +\f4\-V \-\-version\fP .LP - +.LP +Υޥɤ˴ؤСϤޤ .LP .LP -次の終了値が返されます。 +\f4\-J\fP\f2option\fP +.LP .LP -.RS 3 - +unpack200 ˤäƸƤӽФ Java ưġ \f2ץ\fP \f2Ϥޤ\fP +.LP +.SH "λơ" .LP .LP -\f2\ 0\fP " 成功" +νλ֤ͤޤ .LP .LP -\f2>0\fP " エラー" +\f2\ 0\fP " " +.LP .LP -.RE -.SH "関連項目" +\f2>0\fP " 顼" +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -180,35 +146,33 @@ .TP 2 o .na -\f2Java SE のドキュメント\fP @ +\f2Java SE Υɥ\fP @ .fi http://java.sun.com/javase/6/docs/index.html .TP 2 o .na -\f2「Java 配備ガイド \- Pack200」\fP @ +\f2Java \- Pack200\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/pack200.html .TP 2 o -jar(1) \- Java Archive ツール」 +jar(1) \- Java Archive ġ .TP 2 o -「jarsigner(1) \- JAR 署名および検証ツール」 +jarsigner(1) \- JAR ̾Ӹڥġ .TP 2 o -\f2attributes(5)\fP のマニュアルページ +\f2attributes(5)\fP Υޥ˥奢ڡ .RE .LP -.SH "注意事項" -.LP - +.SH "ջ" .LP .LP -このコマンドと \f2unpack(1)\fP を混同しないでください。これらは別製品です。 +Υޥɤ \f2unpack(1) \fPƱʤǤʤǤ .LP .LP -SDK に付属する Java SE API 仕様との相違が見つかった場合には、仕様を優先してください。 +SDK ° Java SE API ͤȤ㤬Ĥäˤϡͤͥ褷Ƥ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/wsgen.1 --- a/jdk/src/linux/doc/man/ja/wsgen.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/wsgen.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,30 +19,24 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH wsgen 1 "02 Jun 2010" -.SH "名前" -wsgen \- XML Web Services (JAX\-WS) 2.0 のための Java(TM) API -.RS 3 - +.TH wsgen 1 "14 Apr 2011" +.SH "̾" +wsgen \- XML Web Services (JAX\-WS) 2.0 Τ Java(TM) API .LP -.LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3実装バージョン:\fP 2.1.1 -.LP +\f3С:\fP 2.1.1 .LP -\f2wsgen\fP ツールは、JAX\-WS Web サービスで使用される JAX\-WS ポータブルアーティファクトを生成します。このツールは、Web サービスのエンドポイント実装クラス (SEI) を読み取り、Web サービスの配備と呼び出しに必要なすべてのアーティファクトを生成します。 -.LP -.RE -.SH "概要" +\f2wsgen\fP ġϡJAX\-WS Web ӥǻѤ JAX\-WS ݡ֥륢ƥեȤޤΥġϡWeb ӥΥɥݥȼ饹 (SEI) ɤ߼ꡢWeb ӥȸƤӽФɬפʤ٤ƤΥƥեȤޤ +.SH "" .LP -\f2wsgen\fP ツールは、JAX\-WS Web サービスで使用される JAX\-WS ポータブルアーティファクトを生成します。このツールは、Web サービスのエンドポイントクラスを読み取り、Web サービスの配備と呼び出しに必要なすべてのアーティファクトを生成します。JAXWS 2.1.1 RI には wsgen Ant タスクも用意されています。詳細は、 +\f2wsgen\fP ġϡJAX\-WS Web ӥǻѤ JAX\-WS ݡ֥륢ƥեȤޤΥġϡWeb ӥΥɥݥȥ饹ɤ߼ꡢWeb ӥȸƤӽФɬפʤ٤ƤΥƥեȤޤJAXWS 2.1.1 RI ˤ wsgen Ant ѰդƤޤܺ٤ϡ .na -\f2Wsgen Ant タスク\fP @ +\f2Wsgen Ant \fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsgenant.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsgenant.html򻲾ȤƤ .LP -.SH "wsgen の起動" +.SH "wsgen εư" .RS 3 .TP 2 o @@ -69,7 +63,7 @@ .RE .LP -.SH "構文" +.SH "ʸ" .nf \f3 .fl @@ -80,7 +74,7 @@ \fP .fi .LP -次の表に、\f2wsgen\fP のオプションを示します。 +ɽˡ \f2wsgen\fP Υץ򼨤ޤ .br .LP .TS @@ -111,7 +105,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -入力クラスファイルの検索場所を指定します +ϥ饹եθꤷޤ .br .di .nr a| \n(dn @@ -127,7 +121,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2\-classpath <path>\fP と同じ +\-classpath <path> \f2ƱǤ\fP .br .di .nr b| \n(dn @@ -143,7 +137,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成される出力ファイルを格納する場所を指定する +ϥեǼꤷޤ .br .di .nr c| \n(dn @@ -159,7 +153,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可性があります +٥ĥ (ͤǵꤵƤʤǽ) ĤޤĥѤȡץꥱΰܿ줿ꡢۤμȤ߱ѤԤʤʤޤ .br .di .nr d| \n(dn @@ -175,7 +169,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ヘルプを表示します +إפɽޤ .br .di .nr e| \n(dn @@ -191,7 +185,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されたファイルを保持します +줿եݻޤ .br .di .nr f| \n(dn @@ -207,7 +201,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \-wsdl オプションと組み合わせて使用します。WSDL などの生成されたリソースファイルの格納場所を指定します + \-wsdl ץȤ߹碌ƻѤޤWSDL ʤɤ줿꥽եγǼꤷޤ .br .di .nr g| \n(dn @@ -223,7 +217,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されるソースファイルを格納する場所を指定する +륽եǼꤹ .br .di .nr h| \n(dn @@ -239,7 +233,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイラが実行している処理に関するメッセージを出力します +ѥ餬¹ԤƤ˴ؤåϤޤ .br .di .nr i| \n(dn @@ -255,7 +249,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -バージョン情報を出力します。このオプションを使用した場合、バージョン情報が出力されるだけです。通常の処理は実行されません。 +СϤޤΥץѤ硢С󤬽ϤǤ̾νϼ¹Ԥޤ .br .di .nr j| \n(dn @@ -271,7 +265,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2wsgen\fP は、デフォルトでは WSDL ファイルを生成しません。このフラグは省略可能ですが、指定した場合は \f2wsgen\fP が WSDL ファイルを生成するようになります。このフラグは通常、エンドポイントの配備前に開発者が WSDL を参照できるようにするためだけに使用されます。\f2protocol\fP は省略可能であり、\f2wsdl:binding\fP で使用すべきプロトコルを指定するために使用されます。有効なプロトコルは次のとおりです。\f2soap1.1\fP と \f2Xsoap1.2\fP。デフォルトは \f2soap1.1\fP です。\f2Xsoap1.2\fP は標準ではないため、\f2\-extension\fP オプションと組み合わせないと使用できません。 +ǥեȤǤ \f2wsgen\fP WSDL եޤ󡣤Υե饰ϾάǽǤꤷ \f2wsgen\fP WSDL ե褦ˤʤޤΥե饰̾ɥݥȤ˳ȯԤ WSDL 򻲾ȤǤ褦ˤ뤿˻Ѥޤ \f2protocol\fP ϾάǽǤꡢwsdl:binding ǻѤ٤ץȥꤹ뤿 \f2Ѥޤ\fPͭʥץȥϼΤȤǤ \f2soap1.1\fP \f2Xsoap1.2\fPǥեȤ \f2soap1.1\fP Ǥ \f2Xsoap1.2\fP ɸǤϤʤᡢ \f2\-extension\fP ץȤ߹碌ʤȻѤǤޤ .br .di .nr k| \n(dn @@ -287,7 +281,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \f2\-wsdl\fP オプションと組み合わせて使用します。WSDL 内で生成されるべき \f2wsdl:service\fP の名前を指定するために使用します。例 : \f2\-servicename "{http://mynamespace/}MyService"\fP + \f2\-wsdl\fP ץȤ߹碌ƻѤޤWSDL ٤ \f2wsdl:service\fP ̾ꤹ뤿˻Ѥޤ: \f2\-servicename "{http://mynamespace/}MyService"\fP .br .di .nr l| \n(dn @@ -303,7 +297,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \f2\-wsdl\fP オプションと組み合わせて使用します。WSDL 内で生成されるべき \f2wsdl:port\fP の名前を指定するために使用します。例 : \f2\-portname "{http://mynamespace/}MyPort"\fP + \f2\-wsdl\fP ץȤ߹碌ƻѤޤWSDL ٤ \f2wsdl:port\fP ̾ꤹ뤿˻Ѥޤ: \f2\-portname "{http://mynamespace/}MyPort"\fP .br .br .di @@ -315,7 +309,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f4\-classpath <path>\fP .if \n(80<\n(38 .nr 80 \n(38 @@ -346,7 +340,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -386,7 +380,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 143 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 137 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -403,7 +397,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -633,7 +627,7 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-57 .LP -.SH "例" +.SH "" .nf \f3 .fl @@ -641,7 +635,7 @@ .fl .fi .LP -\f3stock\fP ディレクトリ内に @WebService 注釈が付けられた、StockService に必要なラッパークラスが生成されます。 +\f3stock\fP ǥ쥯ȥ @WebService ᤬դ줿StockService ɬפʥåѡ饹ޤ .nf \f3 .fl @@ -649,7 +643,7 @@ .fl .fi .LP -SOAP 1.1 WSDL と、@WebService 注釈が付けられた Java クラス stock.StockService のスキーマが生成されます。 +SOAP 1.1 WSDL ȡ@WebService ᤬դ줿 Java 饹 stock.StockService Υޤޤ .nf \f3 .fl @@ -657,6 +651,6 @@ .fl .fi .LP -SOAP 1.2 WSDL が生成されます。 +SOAP 1.2 WSDL ޤ .LP -サービスを配備するときに JAXWS ランタイムによって自動的に WSDL が生成されるため、開発時に WSDL を生成する必要はありません。 +ӥȤ JAXWS 󥿥ˤäƼưŪ WSDL 뤿ᡢȯ WSDL ɬפϤޤ diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/wsimport.1 --- a/jdk/src/linux/doc/man/ja/wsimport.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/wsimport.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,44 +19,44 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH wsimport 1 "02 Jun 2010" -.SH "名前" -wsimport \- XML Web Services (JAX\-WS) 2.0 のための Java(TM) API +.TH wsimport 1 "14 Apr 2011" +.SH "̾" +wsimport \- XML Web Services (JAX\-WS) 2.0 Τ Java(TM) API .LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3実装バージョン:\fP 2.1.1 +\f3С:\fP 2.1.1 .br -.SH "概要" +.SH "" .LP -\f2wsimport\fP ツールは、次のような JAX\-WS ポータブルアーティファクトを生成します。 +\f2wsimport\fP ġϡΤ褦 JAX\-WS ݡ֥륢ƥեȤޤ .RS 3 .TP 2 o -サービスエンドポイントインタフェース (SEI) +ӥɥݥȥ󥿥ե (SEI) .TP 2 o -サービス +ӥ .TP 2 o -wsdl:fault からマップされる例外クラス (存在する場合) +wsdl:fault ޥåפ㳰饹 (¸ߤ) .TP 2 o -応答 wsdl:message から派生する非同期応答 Bean (存在する場合) + wsdl:message Ʊ Bean (¸ߤ) .TP 2 o -JAX\-B が生成する値タイプ (スキーマの型からマップされた Java クラス) +JAX\-B ͥ (ޤηޥåפ줿 Java 饹) .RE .LP -これらのアーティファクトは、WSDL ドキュメント、スキーマドキュメント、およびエンドポイント実装とともに WAR ファイル内にパッケージ化して配備することができます。また、wsimport Ant タスクも用意されています。 +ΥƥեȤϡWSDL ɥȡޥɥȡӥɥݥȼȤȤ WAR ե˥ѥå뤳ȤǤޤޤwsimport Ant ѰդƤޤ .na -\f2Wsimport Ant タスク\fP @ +\f2wsimport Ant \fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsimportant.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsimportant.html򻲾ȤƤ .br .LP -.SH "wsimport の起動" +.SH "wsimport εư" .RS 3 .TP 2 o @@ -77,7 +77,7 @@ .RE .LP -.SH "構文" +.SH "ʸ" .nf \f3 .fl @@ -86,7 +86,7 @@ \fP .fi .LP -次の表に、\f2wsimport\fP のオプションを示します。 +ɽˡ \f2wsimport\fP Υץ򼨤ޤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -116,7 +116,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成される出力ファイルを格納する場所を指定します +ϥեǼꤷޤ .br .di .nr a| \n(dn @@ -132,7 +132,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -外部の JAX\-WS または JAXB バインディングファイルを指定します (\f2<file>\fP ごとに \f2\-b\fP が必要となる) + JAX\-WS ޤ JAXB Хǥ󥰥եꤷޤ ( \f2<file>\fP Ȥ \f2\-b\fP ɬפȤʤ) .br .di .nr b| \n(dn @@ -148,7 +148,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -このオプションを JAXB スキーマコンパイラに渡します +Υץ JAXB ޥѥϤޤ .br .di .nr c| \n(dn @@ -164,11 +164,11 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -外部エンティティー参照を解決するためのカタログファイルを指定します。 TR9401、XCatalog、OASIS XML Catalog の各形式がサポートされています。 +ƥƥȤ褹뤿ΥեꤷޤTR9401XCatalogOASIS XML Catalog γƷݡȤƤޤ .na -\f2カタログ\fP @ +\f2\fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/catalog\-support.htmlのドキュメントをお読みになり、\f3カタログ\fPのサンプルを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/catalog\-support.htmlΥɥȤɤߤˤʤꡢ\f3\fPΥץ򻲾ȤƤ .br .di .nr d| \n(dn @@ -184,7 +184,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可能性があります +٥ĥ (ͤǵꤵƤʤǽ) ĤޤĥѤȡץꥱΰܿ줿ꡢۤμȤ߱ѤԤʤʤǽޤ .br .di .nr e| \n(dn @@ -200,7 +200,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ヘルプを表示します +إפɽޤ .br .di .nr f| \n(dn @@ -232,7 +232,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HTTP プロキシサーバーを指定します (デフォルトのポートは 8080) +HTTP ץСꤷޤ (ǥեȤΥݡȤ 8080) .br .di .nr h| \n(dn @@ -248,7 +248,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されたファイルを保持します +줿եݻޤ .br .di .nr i| \n(dn @@ -264,7 +264,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -このコマンド行オプション経由でターゲットパッケージを指定した場合、その指定内容は、パッケージ名に対するすべての WSDL/スキーマバインディングカスタマイズや、 仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます +Υޥɹԥץͳǥåȥѥåꤷ硢λƤϡѥå̾Ф뤹٤Ƥ WSDL/ޥХǥ󥰥ޥ䡢 ͤǵꤵƤǥեȤΥѥå̾르ꥺͥ褵ޤ .br .di .nr j| \n(dn @@ -280,7 +280,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されるソースファイルを格納する場所を指定します +륽եǼꤹ .br .di .nr k| \n(dn @@ -296,7 +296,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイラが実行している処理に関するメッセージを出力します +ѥ餬¹ԤƤ˴ؤåϤޤ .br .di .nr l| \n(dn @@ -312,7 +312,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -バージョン情報を出力します +СϤޤ .br .di .nr m| \n(dn @@ -344,7 +344,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2@WebServiceClient.wsdlLocation\fP 値 +\f2@WebServiceClient.wsdlLocation\fP .br .di .nr o| \n(dn @@ -360,7 +360,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -指定された JAX\-WS 仕様バージョンに従ってコードを生成します。バージョン 2.0 では、JAX\-WS 2.0 仕様に準拠したコードを生成します。 +ꤵ줿 JAX\-WS ͥС˽äƥɤޤС 2.0 ǤϡJAX\-WS 2.0 ͤ˽򤷤ɤޤ .br .di .nr p| \n(dn @@ -376,7 +376,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -wsimport 出力を抑制します +wsimport Ϥޤ .br .di .nr q| \n(dn @@ -387,7 +387,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f3\-d <directory> \fP .if \n(80<\n(38 .nr 80 \n(38 @@ -422,7 +422,7 @@ .nr 38 \n(n- .if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -483,7 +483,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -766,13 +766,294 @@ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-72 .LP -\f2\-b\fP オプションを使って、複数の JAX\-WS および JAXB バインディングファイルを指定できます。 これらのファイルを使って、パッケージ名や Bean 名など、さまざまなカスタマイズが可能です。 JAX\-WS および JAXB バインディングファイルの詳細は、 +\-b ץȤäơʣ JAX\-WS JAXB Хǥ󥰥ե \f2Ǥޤ\fP ΥեȤäơѥå̾ Bean ̾ʤɡޤޤʥޥǽǤJAX\-WS JAXB Хǥ󥰥եξܺ٤ϡ .na -\f2カスタマイズマニュアル\fP @ +\f2ޥޥ˥奢\fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/customizations.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/customizations.html򻲾ȤƤ +.LP +ɽˡ \f2wsimport\fP ɸ४ץ򼨤ޤ .LP -.SH "例" +.TS +.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 +.de 35 +.ps \n(.s +.vs \n(.vu +.in \n(.iu +.if \n(.u .fi +.if \n(.j .ad +.if \n(.j=0 .na +.. +.nf +.nr #~ 0 +.if n .nr #~ 0.6n +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.fc +.nr 33 \n(.s +.rm 80 81 +.nr 34 \n(.lu +.eo +.am 81 +.br +.di a+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +׵ޤϱå˥Хɤʤإå Java ᥽åɤΥѥ᡼˥ޥåפޤ +.br +.di +.nr a| \n(dn +.nr a- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di b+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ǧھޤեꤹ WSDL URI Ǥ URI ηϼΤȤǤ http://username:password@example.org/stock?wsdl +.br +.di +.nr b| \n(dn +.nr b- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di c+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ǥХåϤޤ +.br +.di +.nr c| \n(dn +.nr c- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di d+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +\f3\-Xno\-addressing\-databinding\fP +.br +.di +.nr d| \n(dn +.nr d- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di e+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +W3C \f2EndpointReferenceType\fP Java ΥХǥ󥰤ͭˤޤ +.br +.di +.nr e| \n(dn +.nr e- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di f+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +줿 Java ե򥳥ѥ뤷ޤ +.br +.di +.nr f| \n(dn +.nr f- \n(dl +.. +.ec \ +.35 +.nf +.ll \n(34u +.nr 80 0 +.nr 38 \w\f3ץ\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-XadditionalHeaders\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xauthfile <file>\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xdebug\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xnocompile\fP +.if \n(80<\n(38 .nr 80 \n(38 +.80 +.rm 80 +.nr 38 \n(d- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 81 0 +.nr 38 \w\f3\fP +.if \n(81<\n(38 .nr 81 \n(38 +.81 +.rm 81 +.nr 38 \n(a- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(b- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(c- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(e- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(f- +.if \n(81<\n(38 .nr 81 \n(38 +.35 +.nf +.ll \n(34u +.nr 38 1n +.nr 79 0 +.nr 40 \n(79+(0*\n(38) +.nr 80 +\n(40 +.nr 41 \n(80+(3*\n(38) +.nr 81 +\n(41 +.nr TW \n(81 +.if t .if \n(TW>\n(.li .tm Table at line 199 file Input is too wide - \n(TW units +.fc   +.nr #T 0-1 +.nr #a 0-1 +.eo +.de T# +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.mk ## +.nr ## -1v +.ls 1 +.ls +.. +.ec +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP +.ne \n(a|u+\n(.Vu +.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-XadditionalHeaders\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.a+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(b|u+\n(.Vu +.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xauthfile <file>\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.b+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(c|u+\n(.Vu +.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xdebug\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.c+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(d|u+\n(.Vu +.ne \n(e|u+\n(.Vu +.if (\n(d|+\n(#^-1v)>\n(#- .nr #- +(\n(d|+\n(#^-\n(#--1v) +.if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.d+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.e+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(f|u+\n(.Vu +.if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xnocompile\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.f+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.fc +.nr T. 1 +.T# 1 +.35 +.rm a+ +.rm b+ +.rm c+ +.rm d+ +.rm e+ +.rm f+ +.TE +.if \n-(b.=0 .nr c. \n(.c-\n(d.-26 + +.LP +.SH "" .nf \f3 .fl @@ -780,6 +1061,6 @@ .fl .fi .LP -Java アーティファクトを生成し、\f2http://stockquote.xyz/quote?wsdl\fP をインポートすることで、それらのアーティファクトをコンパイルします。 +Java ƥեȤ \f2http://stockquote.xyz/quote?wsdl\fP 򥤥ݡȤ뤳ȤǡΥƥեȤ򥳥ѥ뤷ޤ .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/linux/doc/man/ja/xjc.1 --- a/jdk/src/linux/doc/man/ja/xjc.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/linux/doc/man/ja/xjc.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,266 +19,277 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH xjc 1 "02 Jun 2010" +.TH xjc 1 "14 Apr 2011" .LP .ad c -.SH "名前" -xjc \- XML バインドのための Java(TM) アーキテクチャー +.SH "̾" +xjc \- XML ХɤΤ Java(TM) ƥ㡼 .br -バインディングコンパイラ +Хǥ󥰥ѥ .LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3リファレンス実装 (RI) バージョン:\fP 2.1.3 .ad l +\f3ե󥹼 (RI) С:\fP 2.1.3 .ad l .LP -.SH "xjc の起動" +.SH "xjc εư" .LP .LP -バインディングコンパイラを起動するには、使用するプラットフォームに応じた \f2bin\fP ディレクトリ内の \f2xjc\fP シェルスクリプトを使用します。また、バインディングコンパイラを実行するための Ant タスクも用意されています。 +Хǥ󥰥ѥưˤϡѤץåȥե˱ bin ǥ쥯ȥ \f2xjc\fP 륹ץ \f2\fP ѤޤޤХǥ󥰥ѥ¹Ԥ뤿 Ant ѰդƤޤ .na -\f2xjc を Ant とともに使用する\fP @ +\f2xjc Ant ȤȤ˻Ѥ\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.htmlための手順を参照してください。 -.LP -.RS 3 - +https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.htmlμ򻲾ȤƤ .LP .LP \f2% xjc \-help\fP .LP -.RE -\f3出力\fP -.LP -.RS 3 - +.SS + .LP .nf \f3 .fl -Usage: xjc [\-options ...] <schema_file/URL/dir> ... [\-b <bindinfo>] ... +Usage: xjc [\-options ...] <schema file/URL/dir/jar> ... [\-b <bindinfo>] ... +.fl +If dir is specified, all schema files in it will be compiled. +.fl +If jar is specified, /META\-INF/sun\-jaxb.episode binding file will be compiled. .fl Options: .fl - \-nv : do not perform strict validation of the input schema(s) + \-nv : do not perform strict validation of the input schema(s) .fl - \-extension : allow vendor extensions \- do not strictly follow the + \-extension : allow vendor extensions \- do not strictly follow the Compatibility Rules and App E.2 from the JAXB Spec .fl - Compatibility Rules and App E.2 from the JAXB Spec + \-b <file/dir> : specify external bindings files (each <file> must have its own \-b); if a directory is given, **/*.xjb is searched .fl - \-b <file/dir> : specify external bindings files (each <file> must have its own \-b) + \-d <dir> : generated files will go into this directory +.fl + \-p <pkg> : specifies the target package .fl - If a directory is given, **/*.xjb is searched + \-httpproxy <proxy> : set HTTP/HTTPS proxy; format is [user[:password]@]proxyHost:proxyPort .fl - \-d <dir> : generated files will go into this directory + \-httpproxyfile <f> : works like \-httpproxy but takes the argument in a file to protect password .fl - \-p <pkg> : specifies the target package + \-classpath <arg> : specify where to find user class files .fl - \-httpproxy <proxy> : set HTTP/HTTPS proxy. Format is [user[:password]@]proxyHost:proxyPort + \-catalog <file> : specify catalog files to resolve external entity references; support TR9401, XCatalog, and OASIS XML Catalog format .fl - \-httpproxyfile <file>: set the proxy string (same format as above). + \-readOnly : generated files will be in read\-only mode .fl - \-classpath <arg> : specify where to find user class files + \-npa : suppress generation of package level annotations (**/package\-info.java) +.fl + \-no\-header : suppress generation of a file header with timestamp .fl - \-catalog <file> : specify catalog files to resolve external entity references + \-target 2.0 : behave like XJC 2.0 and generate code that doesnt use any 2.1 features .fl - support TR9401, XCatalog, and OASIS XML Catalog format. + \-xmlschema : treat input as W3C XML Schema (default) .fl - \-readOnly : generated files will be in read\-only mode + \-relaxng : treat input as RELAX NG (experimental,unsupported) .fl - \-npa : suppress generation of package level annotations (**/package\-info.java) + \-relaxng\-compact : treat input as RELAX NG compact syntax (experimental,unsupported) .fl - \-no\-header : suppress generation of a file header with timestamp + \-dtd : treat input as XML DTD (experimental,unsupported) .fl - \-target 2.0 : behave like XJC 2.0 and generate code that doesnt use any 2.1 features. + \-wsdl : treat input as WSDL and compile schemas inside it (experimental,unsupported) +.fl + \-verbose : be extra verbose .fl - \-xmlschema : treat input as W3C XML Schema (default) + \-quiet : suppress compiler output .fl - \-relaxng : treat input as RELAX NG (experimental,unsupported) + \-help : display this help message .fl - \-relaxng\-compact : treat input as RELAX NG compact syntax (experimental,unsupported) + \-version : display version information +.fl + .fl - \-dtd : treat input as XML DTD (experimental,unsupported) + .fl - \-wsdl : treat input as WSDL and compile schemas inside it (experimental,unsupported) +Extensions: .fl - \-verbose : be extra verbose + \-Xlocator : enable source location support for generated code .fl - \-quiet : suppress compiler output + \-Xsync\-methods : generate accessor methods with the 'synchronized' keyword .fl - \-help : display this help message + \-mark\-generated : mark the generated code as @javax.annotation.Generated .fl - \-version : display version information + \-episode <FILE> : generate the episode file for separate compilation .fl \fP .fi -.RE .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-nv -デフォルトでは、XJC バインディングコンパイラは、ソーススキーマを処理する前に厳密な検証を実行します。このオプションを使用すると、厳密なスキーマ検証を無効にします。これは、バインディングコンパイラが検証を一切実行しないということではありません。 より厳密でない検証を実行するということです。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡޤ˸̩ʸڤ¹ԤޤΥץѤȡ̩ʥ޸ڤ̵ˤޤϡХǥ󥰥ѥ餬ڤڼ¹ԤʤȤȤǤϤޤ󡣤긷̩Ǥʤڤ¹ԤȤȤǤ .TP 3 \-extension -デフォルトでは、XJC バインディングコンパイラは、JAXB 仕様の「Compatibility」の章で説明されている規則を厳密に強制します。付録 E.2 には、JAXB v1.0 で完全にはサポートされていない一連の W3C XML スキーマ機能が定義されています。 場合によっては、このスイッチで有効になる「\-extension」モードでそれらの機能が使用できるかもしれません。また、デフォルトの厳密なモードでは、仕様に定義されているバインディングカスタマイズのみが使用できます。「\-extension」スイッチを指定すれば、JAXB Vendor Extension を使用できます。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡJAXB ͤΡCompatibilityפξϤƤ뵬§̩˶ޤϿ E.2 ˤϡJAXB v1.0 ǴˤϥݡȤƤʤϢ W3C XML ޵ǽƤޤˤäƤϡΥåͭˤʤ\-extensionץ⡼ɤǤεǽѤǤ뤫⤷ޤ󡣤ޤǥեȤθ̩ʥ⡼ɤǤϡͤƤХǥ󥰥ޥΤߤѤǤޤ\-extensionץåꤹСJAXB Vendor Extension ѤǤޤ .TP 3 \-b <file> -処理する外部バインディングファイルを 1 つまたは複数指定します。(バインディングファイルごとに「\f2\-b\fP」スイッチを指定する必要があります。)外部バインディングファイルの構文は非常に柔軟です。複数のスキーマのカスタマイズが含まれる 1 つのバインディングファイルを使用したり、それらのカスタマイズを複数のバインディングファイルに分割したりできます。 次に例を示します。 -.RS 3 - -.LP -\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings123.xjb\fP +볰Хǥ󥰥ե 1 Ĥޤʣꤷޤ(Хǥ󥰥ե뤴Ȥ \f2\-b\fP åꤹɬפޤ) Хǥ󥰥եιʸ˽ǤʣΥޤΥޥޤޤ 1 ĤΥХǥ󥰥եѤꡢΥޥʣΥХǥ󥰥եʬ䤷Ǥޤ򼨤ޤ \f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings123.xjb\fP .br -\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings1.xjb \-b bindings2.xjb \-b bindings3.xjb\fP -.RE -また、コマンド行にスキーマファイルとバインディングファイルを指定する順番は任意です。 +\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings1.xjb \-b bindings2.xjb \-b bindings3.xjb\fP ޤޥɹԤ˥ޥեȥХǥ󥰥եꤹ֤ǤդǤ .TP 3 \-d <dir> -デフォルトでは、XJC バインディングコンパイラは、Java コンテンツクラスを現在のディレクトリに生成します。このオプションを使用すると、代替出力ディレクトリを指定できます。出力ディレクトリはあらかじめ存在している必要があります。 XJC バインディングコンパイラは、このディレクトリを自動的に作成しません。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡJava ƥĥ饹򸽺ߤΥǥ쥯ȥޤΥץѤȡؽϥǥ쥯ȥǤޤϥǥ쥯ȥϤ餫¸ߤƤɬפޤXJC Хǥ󥰥ѥϡΥǥ쥯ȥưŪ˺ޤ .TP 3 \-p <pkg> -このコマンド行オプション経由でターゲットパッケージを指定した場合、その指定内容は、パッケージ名に対するすべてのバインディングカスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。 +Υޥɹԥץͳǥåȥѥåꤷ硢λƤϡѥå̾Ф뤹٤ƤΥХǥ󥰥ޥ䡢ͤǵꤵƤǥեȤΥѥå̾르ꥺͥ褵ޤ .TP 3 \-httpproxy <proxy> -HTTP/HTTPS プロキシを指定します。形式は [user[:password]@]proxyHost[:proxyPort] です。従来の \f2\-host\fP および \f2\-port\fP は、下位互換性のためにリファレンス実装でもサポートされていますが、推奨されなくなりました。このオプションで指定されたパスワードは、\f2top\fP コマンドを使用するユーザーなど、ほかのユーザーが表示できる引数であることに注意してください。セキュリティーを高めるには、次の \f2\-httpproxyfile\fP を使用してください。 +HTTP/HTTPS ץꤷޤ [user[:password]@]proxyHost[:proxyPort] Ǥ \f2\-host\fP \f2\-port\fP ϡ̸ߴΤ˥ե󥹼Ǥ⥵ݡȤƤޤ侩ʤʤޤΥץǻꤵ줿ѥɤϡ \f2top\fP ޥɤѤ桼ʤɡۤΥ桼ɽǤǤ뤳ȤդƤƥˤϡ \f2\-httpproxyfile\fP ѤƤ .TP 3 \-httpproxyfile <file> -HTTP/HTTPS プロキシをファイル経由で指定します。形式は上記と同じですが、このファイル内に指定されたパスワードをほかのユーザーが表示することはできません。 +HTTP/HTTPS ץեͳǻꤷޤϾ嵭ƱǤΥե˻ꤵ줿ѥɤۤΥ桼ɽ뤳ȤϤǤޤ .TP 3 \-classpath <arg> -\f2<jxb:javaType>\fP および \f2<xjc:superClass>\fP カスタマイズが使用するクライアントアプリケーションのクラスファイルの検索場所を指定します。 +<jxb:javaType> <xjc:superClass> \f2ޥѤ\fP 饤ȥץꥱ \f2饹եθ\fP ꤷޤ .TP 3 \-catalog <file> -外部エンティティー参照を解決するカタログファイルを指定します。TR9401、XCatalog、および OASIS XML Catalog 形式がサポートされます。詳細は、『XML Entity and URI Resolvers』ドキュメントを参照するか、\f2カタログリゾルバ\fPのサンプルアプリケーションを調べてください。 +ƥƥȤ褹륫եꤷޤTR9401XCatalog OASIS XML Catalog ݡȤޤܺ٤ϡXML Entity and URI Resolvers٥ɥȤ򻲾Ȥ뤫 \f2꥾Ф\fP ץ륢ץꥱĴ٤Ƥ .TP 3 \-readOnly -デフォルトでは、XJC バインディングコンパイラは、生成する Java ソースファイルを書き込みから保護しません。このオプションを使用すると、XJC バインディングコンパイラは生成される Java ソースを強制的に読み取り専用にします。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡ Java ե񤭹ߤݸޤ󡣤ΥץѤȡXJC Хǥ󥰥ѥ Java Ūɤ߼Ѥˤޤ .TP 3 \-npa -パッケージレベルの注釈を **/package\-info.java に生成することを抑制します。このスイッチを使用して生成するコードでは、これらの注釈がほかの生成済みクラスに内部化されます。 +ѥå٥ **/package\-info.java 뤳ȤޤΥåѤ륳ɤǤϡ᤬ۤѤߥ饹ޤ .TP 3 \-no\-header -多少のメモとタイムスタンプを含むファイルヘッダーコメントの生成を抑制します。このオプションを使用すると、生成されたコードがわかりにくくなります。 +¿ΥȥॹפޤեإåȤޤΥץѤȡ줿ɤ狼ˤʤޤ .TP 3 \-target 2.0 -なんらかの JAXB 2.1 機能に依存するコードを生成しないようにします。これにより、生成されたコードを JAXB 2.0 ランタイム (JavaSE 6 など) で実行できます。 +ʤ餫 JAXB 2.1 ǽ˰¸륳ɤʤ褦ˤޤˤꡢ줿ɤ JAXB 2.0 󥿥 (JavaSE 6 ʤ) Ǽ¹ԤǤޤ .TP 3 \-xmlschema -入力スキーマを W3C XML スキーマ (デフォルト) と見なします。このスイッチを指定しなくても、入力スキーマは W3C XML スキーマと見なされます。 +ϥޤ W3C XML (ǥե) ȸʤޤΥåꤷʤƤ⡢ϥޤ W3C XML ޤȸʤޤ .TP 3 \-relaxng -入力スキーマを RELAX NG として扱います (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ RELAX NG Ȥưޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-relaxng\-compact -入力スキーマを RELAX NG 圧縮構文として処理します (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ RELAX NG ̹ʸȤƽޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-dtd -入力スキーマを XML DTD として扱います (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ XML DTD Ȥưޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-wsdl -入力を WSDL として扱い、その内部のスキーマをコンパイルします (試験的、未サポート)。 +Ϥ WSDL ȤưΥޤ򥳥ѥ뤷ޤ (Ṳ̄ݡ) .TP 3 \-quiet -進捗情報や警告など、コンパイラの出力を抑制します。 +ĽٹʤɡѥνϤޤ .TP 3 \-verbose -情報メッセージを出力したり特定のエラー発生時にスタックトレースを表示したりするなど、極めて冗長になります。 +åϤΥ顼ȯ˥åȥ졼ɽꤹʤɡˤƾĹˤʤޤ .TP 3 \-help -コンパイラスイッチの概要を表示します。 +ѥ饹åγפɽޤ .TP 3 \-version -コンパイラのバージョン情報を表示します。 +ѥΥСɽޤ .TP 3 <schema file/URL/dir> -コンパイル対象となる 1 つまたは複数のスキーマファイルを指定します。ユーザーがディレクトリを指定した場合、xjc はそのディレクトリを走査し、そこで見つかったすべてのスキーマファイルをコンパイルします。 +ѥоݤȤʤ 1 ĤޤʣΥޥեꤷޤ桼ǥ쥯ȥꤷ硢xjc ϤΥǥ쥯ȥǸĤä٤ƤΥޥե򥳥ѥ뤷ޤ .RE + +.LP .SS -非推奨コマンド行オプションおよび削除されたコマンド行オプションの概要 +ɸΥޥɹԥץ .LP .RS 3 +.TP 3 +\-Xlocator +줿ɤǤϡ󲽤ΤȤ Java Bean 󥹥󥹤˴ޤޤ륽 XML ˴ؤ SAX Locator 󤬸ޤ +.TP 3 +\-Xsync\-methods +줿٤ƤΥ᥽åɥ˥㡼 \f2Ʊ줿\fP ɤޤޤ +.TP 3 +\-mark\-generated +줿ɤ \f2@javax.annotation.Generated\fP դޤ +.TP 3 +\-episode <file> +ѥ뤴Ȥ˻ꤵ줿ԥɥեޤ +.RE .LP +.SS +侩ޥɹԥץ󤪤Ӻ줿ޥɹԥץ +.LP .RS 3 .TP 3 \-host & \-port -これらのオプションは非推奨となり、\f3\-httpproxy\fP オプションで置き換えられました。これらのオプションは、下位互換性を確保する目的で引き続きサポートされますが、ドキュメントには記載されず、将来のリリースで削除される可能性もあります。 +Υץ侩Ȥʤꡢ\f3\-httpproxy\fP ץ֤ޤΥץϡ̸ߴݤŪǰ³ݡȤޤɥȤˤϵܤ줺Υ꡼Ǻǽ⤢ޤ .TP 3 \-use\-runtime -JAXB 2.0 仕様で移植性のあるランタイムが規定されたため、JAXB RI が **/impl/runtime パッケージを生成する必要がなくなりました。このため、このスイッチは不要となり、削除されました。 +JAXB 2.0 ͤǰܿΤ󥿥बꤵ줿ᡢJAXB RI **/impl/runtime ѥåɬפʤʤޤΤᡢΥåפȤʤꡢޤ .TP 3 \-source -\-source 互換性スイッチは、JAXB 2.0 の最初の Early Access 版で導入されました。このスイッチは、JAXB 2.0 の今後のリリースから削除されることになりました。1.0.x コードを生成する必要がある場合には、1.0.x コードベースのインストールを使用してください。 -.TP 3 -\-Xlocator & \-Xsync\-methods -これらのスイッチは現時点では無効化されています。この機能は将来、個別のダウンロードとして提供される予定です。 +\-source ߴåϡJAXB 2.0 κǽ Early Access ǤƳޤΥåϡJAXB 2.0 κΥ꡼뤳Ȥˤʤޤ1.0.x ɤɬפϡ1.0.x ɥ١Υ󥹥ȡѤƤ .RE .LP -.RE .SS -コンパイラの制限 +ѥ .LP .LP -通常は、関連するすべてのスキーマを、同じバインディングコンパイラスイッチを指定して 1 つの単位としてコンパイルするのがもっとも安全です。 +̾ϡϢ뤹٤ƤΥޤƱХǥ󥰥ѥ饹åꤷ 1 Ĥñ̤Ȥƥѥ뤹ΤäȤǤ .LP .LP -xjc を実行するときは、次に示す制限に注意してください。これらの制限のほとんどは、xjc を何度か呼び出して複数のスキーマをコンパイルする場合にのみ適用されます。 +xjc ¹ԤȤϡ˼¤դƤ¤ΤۤȤɤϡxjc ٤ƤӽФʣΥޤ򥳥ѥ뤹ˤΤŬѤޤ .LP .RS 3 .TP 2 o -複数のスキーマを同時にコンパイルする場合は、ターゲットの Java パッケージ名に次の優先順位の規則が適用されることに注意してください。 +ʣΥޤƱ˥ѥ뤹ϡåȤ Java ѥå̾˼̤ͥε§ŬѤ뤳ȤդƤ .RS 3 .TP 3 1. -「\f2\-p\fP」コマンド行オプションがもっとも優先されます。 +\f2\-p\fPץޥɹԥץ󤬤äȤͥ褵ޤ .TP 3 2. -<\f2jaxb:package\fP> のカスタマイズ +<\f2jaxb:package\fP> Υޥ .TP 3 3. -\f2targetNamespace\fP が宣言されている場合は、仕様に定義されている \f2targetNamespace\fP \-> Java パッケージ名のアルゴリズムを適用します。 +\f2targetNamespace\fP Ƥϡ \f2ͤƤ targetNamespace\fP \-> Java ѥå̾Υ르ꥺŬѤޤ .TP 3 4. -\f2targetNamespace\fP が宣言されていない場合は、"generated" という名前のハードコードされたパッケージを使用します。 +\f2targetNamespace\fP ƤʤϡgeneratedפȤ̾Υϡɥɤ줿ѥåѤޤ .RE .TP 2 o -名前空間ごとに複数の <\f2jaxb:schemaBindings\fP> を持つことは不正です。 このため、1 つのターゲット名前空間内の 2 つのスキーマを、異なる Java パッケージにコンパイルすることはできません。 +֤̾Ȥʣ <\f2jaxb:schemaBindings\fP> ĤȤǤΤᡢ1 ĤΥå̾ 2 ĤΥޤۤʤ Java ѥå˥ѥ뤹뤳ȤϤǤޤ .TP 2 o -1 つの Java パッケージにコンパイルされるすべてのスキーマは、XJC バインディングコンパイラに同時に送信する必要があります。 個別にコンパイルすることはできず、予期したとおりに動作しません。 +1 Ĥ Java ѥå˥ѥ뤵뤹٤ƤΥޤϡXJC Хǥ󥰥ѥƱɬפޤ̤˥ѥ뤹뤳ȤϤǤͽȤưޤ .TP 2 o -複数のスキーマファイルにまたがる要素置換グループは、同時にコンパイルする必要があります。 +ʣΥޥեˤޤִ롼פϡƱ˥ѥ뤹ɬפޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -コマンド行でのコンバータの実行 (XJC):[ +ޥɹԤǤΥСμ¹ (XJC): [ .na -\f2コマンド行の命令\fP @ +\f2ޥɹԤ̿\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/xjc.html、 +https://jaxb.dev.java.net/nonav/2.1.3/docs/xjc.html .na -\f2xjc を Ant とともに使用する\fP @ +\f2xjc Ant ȤȤ˻Ѥ\fP @ .fi https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.html] .TP 2 o .na -\f2XML バインドのための JavaTM アーキテクチャー (JAXB)\fP @ +\f2XML ХɤΤ Java ƥ㡼 (JAXB)\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/xml/jaxb/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk.properties Wed Jul 05 17:43:00 2017 +0200 @@ -56,9 +56,9 @@ FileChooser.renameFileButtonText=Rename File FileChooser.renameFileButtonMnemonic=82 FileChooser.cancelButtonText=Cancel -FileChooser.cancelButtonMnemonic=67 +#FileChooser.cancelButtonMnemonic=67 FileChooser.saveButtonText=OK -FileChooser.saveButtonMnemonic=79 +#FileChooser.saveButtonMnemonic=79 FileChooser.openButtonText=OK FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=Save @@ -79,5 +79,5 @@ FileChooser.renameFileErrorTitle=Error FileChooser.renameFileErrorText=Error renaming file "{0}" to "{1}" -OptionPane.okButtonMnemonic=79 -OptionPane.cancelButtonMnemonic=67 +#OptionPane.okButtonMnemonic=79 +#OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties Wed Jul 05 17:43:00 2017 +0200 @@ -24,7 +24,7 @@ GTKColorChooserPanel.hueMnemonic=70 GTKColorChooserPanel.redText=Rot: -GTKColorChooserPanel.redMnemonic=79 +GTKColorChooserPanel.redMnemonic=82 GTKColorChooserPanel.saturationText=S\u00E4ttigung: GTKColorChooserPanel.saturationMnemonic=83 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Fehler FileChooser.renameFileErrorText=Fehler beim Umbenennen der Datei "{0}" in "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=OK OptionPane.okButtonMnemonic=79 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Abbrechen OptionPane.cancelButtonMnemonic=65 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties Wed Jul 05 17:43:00 2017 +0200 @@ -30,7 +30,7 @@ GTKColorChooserPanel.saturationMnemonic=83 GTKColorChooserPanel.greenText=Verde: -GTKColorChooserPanel.greenMnemonic=86 +GTKColorChooserPanel.greenMnemonic=69 GTKColorChooserPanel.valueText=Valor: GTKColorChooserPanel.valueMnemonic=86 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Error FileChooser.renameFileErrorText=Error al cambiar el nombre del archivo "{0}" a "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=Aceptar OptionPane.okButtonMnemonic=65 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Cancelar OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties Wed Jul 05 17:43:00 2017 +0200 @@ -30,7 +30,7 @@ GTKColorChooserPanel.saturationMnemonic=83 GTKColorChooserPanel.greenText=Vert : -GTKColorChooserPanel.greenMnemonic=86 +GTKColorChooserPanel.greenMnemonic=69 GTKColorChooserPanel.valueText=Valeur : GTKColorChooserPanel.valueMnemonic=86 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Erreur FileChooser.renameFileErrorText=Erreur lors du changement de nom du fichier "{0}" en "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=OK OptionPane.okButtonMnemonic=79 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Annuler OptionPane.cancelButtonMnemonic=65 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties Wed Jul 05 17:43:00 2017 +0200 @@ -30,7 +30,7 @@ GTKColorChooserPanel.saturationMnemonic=83 GTKColorChooserPanel.greenText=Verde: -GTKColorChooserPanel.greenMnemonic=86 +GTKColorChooserPanel.greenMnemonic=69 GTKColorChooserPanel.valueText=Valore: GTKColorChooserPanel.valueMnemonic=86 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Errore FileChooser.renameFileErrorText=Errore durante la ridenominazione del file "{0}" in "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=OK OptionPane.okButtonMnemonic=79 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Annulla OptionPane.cancelButtonMnemonic=65 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.deleteFileButtonMnemonic=76 FileChooser.renameFileButtonText=\u30D5\u30A1\u30A4\u30EB\u306E\u540D\u524D\u5909\u66F4(R) FileChooser.renameFileButtonMnemonic=82 -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=OK(O) +FileChooser.saveButtonText=OK FileChooser.saveButtonMnemonic=79 -FileChooser.openButtonText=OK(O) +FileChooser.openButtonText=OK FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u4FDD\u5B58 FileChooser.openDialogTitleText=\u958B\u304F @@ -79,6 +79,6 @@ FileChooser.renameFileErrorTitle=\u30A8\u30E9\u30FC FileChooser.renameFileErrorText=\u30D5\u30A1\u30A4\u30EB"{0}"\u306E"{1}"\u3078\u306E\u5909\u66F4\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F -OptionPane.okButtonMnemonic=79 -OptionPane.cancelButtonMnemonic=67 +#OptionPane.okButtonMnemonic=79 +#OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.deleteFileButtonMnemonic=76 FileChooser.renameFileButtonText=\uD30C\uC77C \uC774\uB984 \uBC14\uAFB8\uAE30(R) FileChooser.renameFileButtonMnemonic=82 -FileChooser.cancelButtonText=\uCDE8\uC18C(C) +FileChooser.cancelButtonText=\uCDE8\uC18C FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\uD655\uC778(O) +FileChooser.saveButtonText=\uD655\uC778 FileChooser.saveButtonMnemonic=79 -FileChooser.openButtonText=\uD655\uC778(O) +FileChooser.openButtonText=\uD655\uC778 FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\uC800\uC7A5 FileChooser.openDialogTitleText=\uC5F4\uAE30 @@ -79,6 +79,6 @@ FileChooser.renameFileErrorTitle=\uC624\uB958 FileChooser.renameFileErrorText="{0}" \uD30C\uC77C\uC758 \uC774\uB984\uC744 "{1}"(\uC73C)\uB85C \uBC14\uAFB8\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. -OptionPane.okButtonMnemonic=79 -OptionPane.cancelButtonMnemonic=67 +#OptionPane.okButtonMnemonic=79 +#OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties Wed Jul 05 17:43:00 2017 +0200 @@ -30,7 +30,7 @@ GTKColorChooserPanel.saturationMnemonic=83 GTKColorChooserPanel.greenText=Verde: -GTKColorChooserPanel.greenMnemonic=86 +GTKColorChooserPanel.greenMnemonic=68 GTKColorChooserPanel.valueText=Valor: GTKColorChooserPanel.valueMnemonic=86 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Erro FileChooser.renameFileErrorText=Erro ao renomear o arquivo "{0}" por "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=OK OptionPane.okButtonMnemonic=79 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Cancelar OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties Wed Jul 05 17:43:00 2017 +0200 @@ -39,7 +39,7 @@ GTKColorChooserPanel.blueMnemonic=66 GTKColorChooserPanel.colorNameText=F\u00E4rgnamn: -GTKColorChooserPanel.colorNameMnemonic=78 +GTKColorChooserPanel.colorNameMnemonic=70 @@ -79,6 +79,10 @@ FileChooser.renameFileErrorTitle=Fel FileChooser.renameFileErrorText=Fel vid namn\u00E4ndring av fil "{0}" till "{1}" +# dummy resource added for translation automation +OptionPane.okButtonText=OK OptionPane.okButtonMnemonic=79 +# dummy resource added for translation automation +OptionPane.cancelButtonText=Avbryt OptionPane.cancelButtonMnemonic=65 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.deleteFileButtonMnemonic=76 FileChooser.renameFileButtonText=\u91CD\u547D\u540D\u6587\u4EF6(R) FileChooser.renameFileButtonMnemonic=82 -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\u786E\u5B9A(O) +FileChooser.saveButtonText=\u786E\u5B9A FileChooser.saveButtonMnemonic=79 -FileChooser.openButtonText=\u786E\u5B9A(O) +FileChooser.openButtonText=\u786E\u5B9A FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u4FDD\u5B58 FileChooser.openDialogTitleText=\u6253\u5F00 @@ -79,6 +79,6 @@ FileChooser.renameFileErrorTitle=\u9519\u8BEF FileChooser.renameFileErrorText=\u5C06\u6587\u4EF6 "{0}" \u91CD\u547D\u540D\u4E3A "{1}" \u65F6\u51FA\u9519 -OptionPane.okButtonMnemonic=79 -OptionPane.cancelButtonMnemonic=67 +#OptionPane.okButtonMnemonic=79 +#OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties --- a/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.deleteFileButtonMnemonic=76 FileChooser.renameFileButtonText=\u91CD\u65B0\u547D\u540D\u6A94\u6848(R) FileChooser.renameFileButtonMnemonic=82 -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\u78BA\u5B9A(O) +FileChooser.saveButtonText=\u78BA\u5B9A FileChooser.saveButtonMnemonic=79 -FileChooser.openButtonText=\u78BA\u5B9A(O) +FileChooser.openButtonText=\u78BA\u5B9A FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u5132\u5B58 FileChooser.openDialogTitleText=\u958B\u555F @@ -79,6 +79,6 @@ FileChooser.renameFileErrorTitle=\u932F\u8AA4 FileChooser.renameFileErrorText=\u5C07\u6A94\u6848 "{0}" \u91CD\u65B0\u547D\u540D\u70BA "{1}" \u6642\u51FA\u73FE\u932F\u8AA4 -OptionPane.okButtonMnemonic=79 -OptionPane.cancelButtonMnemonic=67 +#OptionPane.okButtonMnemonic=79 +#OptionPane.cancelButtonMnemonic=67 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic.properties Wed Jul 05 17:43:00 2017 +0200 @@ -57,11 +57,11 @@ Specify a different file name. FileChooser.acceptAllFileFilterText=All Files FileChooser.cancelButtonText=Cancel -FileChooser.cancelButtonMnemonic=67 +#FileChooser.cancelButtonMnemonic=67 // not needed? FileChooser.saveButtonText=Save -FileChooser.saveButtonMnemonic=83 +FileChooser.saveButtonMnemonic=83 // not needed? FileChooser.openButtonText=Open -FileChooser.openButtonMnemonic=79 +FileChooser.openButtonMnemonic=79 //not needed? FileChooser.saveDialogTitleText=Save FileChooser.openDialogTitleText=Open FileChooser.updateButtonText=Update @@ -121,11 +121,11 @@ ColorChooser.rgbNameText=RGB ColorChooser.rgbMnemonic=71 ColorChooser.rgbRedText=Red -ColorChooser.rgbRedMnemonic=68 +ColorChooser.rgbRedMnemonic=68 // not needed? ColorChooser.rgbGreenText=Green -ColorChooser.rgbGreenMnemonic=78 +ColorChooser.rgbGreenMnemonic=78 // not needed? ColorChooser.rgbBlueText=Blue -ColorChooser.rgbBlueMnemonic=66 +ColorChooser.rgbBlueMnemonic=66 // not needed? ColorChooser.rgbAlphaText=Alpha ColorChooser.rgbHexCodeText=Color Code ColorChooser.rgbHexCodeMnemonic=67 @@ -146,9 +146,9 @@ OptionPane.noButtonText=No OptionPane.noButtonMnemonic=78 OptionPane.okButtonText=OK -OptionPane.okButtonMnemonic=0 +#OptionPane.okButtonMnemonic=0 OptionPane.cancelButtonText=Cancel -OptionPane.cancelButtonMnemonic=0 +#OptionPane.cancelButtonMnemonic=0 OptionPane.titleText=Select an Option # Title for the dialog for the showInputDialog methods. Only used if # the developer uses one of the variants that doesn't take a title. diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties Wed Jul 05 17:43:00 2017 +0200 @@ -144,10 +144,10 @@ OptionPane.yesButtonMnemonic=74 OptionPane.noButtonText=Nein OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=Abbrechen(0) -OptionPane.cancelButtonMnemonic=0 +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=Abbrechen +OptionPane.cancelButtonMnemonic=A OptionPane.titleText=Option ausw\u00E4hlen # Title for the dialog for the showInputDialog methods. Only used if # the developer uses one of the variants that doesn't take a title. diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties Wed Jul 05 17:43:00 2017 +0200 @@ -144,10 +144,10 @@ OptionPane.yesButtonMnemonic=83 OptionPane.noButtonText=No OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=Cancelar (0) -OptionPane.cancelButtonMnemonic=0 +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=Cancelar +OptionPane.cancelButtonMnemonic=C OptionPane.titleText=Seleccionar una Opci\u00F3n # Title for the dialog for the showInputDialog methods. Only used if # the developer uses one of the variants that doesn't take a title. diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties Wed Jul 05 17:43:00 2017 +0200 @@ -144,10 +144,10 @@ OptionPane.yesButtonMnemonic=79 OptionPane.noButtonText=Non OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=Annuler (0) -OptionPane.cancelButtonMnemonic=0 +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=Annuler +OptionPane.cancelButtonMnemonic=A OptionPane.titleText=S\u00E9lectionner une option # Title for the dialog for the showInputDialog methods. Only used if # the developer uses one of the variants that doesn't take a title. diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.renameErrorText={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093 FileChooser.renameErrorFileExistsText={0}\u306E\u540D\u524D\u3092\u5909\u66F4\u3067\u304D\u307E\u305B\u3093: \u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30D5\u30A1\u30A4\u30EB\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u307E\u3059\u3002\u5225\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 FileChooser.acceptAllFileFilterText=\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\u4FDD\u5B58(S) +FileChooser.saveButtonText=\u4FDD\u5B58 FileChooser.saveButtonMnemonic=83 -FileChooser.openButtonText=\u958B\u304F(O) +FileChooser.openButtonText=\u958B\u304F FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u4FDD\u5B58 FileChooser.openDialogTitleText=\u958B\u304F @@ -105,25 +105,25 @@ # constant, and an index into the text to render the mnemonic as. The # mnemonic is xxxMnemonic and the index of the character to underline is # xxxDisplayedMnemonicIndex. -ColorChooser.hsvNameText=HSV(H) +ColorChooser.hsvNameText=HSV ColorChooser.hsvMnemonic=72 ColorChooser.hsvHueText=\u8272\u76F8 ColorChooser.hsvSaturationText=\u5F69\u5EA6 ColorChooser.hsvValueText=\u5024 ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.hslNameText=HSL(L) +ColorChooser.hslNameText=HSL ColorChooser.hslMnemonic=76 ColorChooser.hslHueText=\u8272\u76F8 ColorChooser.hslSaturationText=\u5F69\u5EA6 ColorChooser.hslLightnessText=\u660E\u5EA6 ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.rgbNameText=RGB(G) +ColorChooser.rgbNameText=RGB ColorChooser.rgbMnemonic=71 -ColorChooser.rgbRedText=\u8D64(D) +ColorChooser.rgbRedText=\u8D64 ColorChooser.rgbRedMnemonic=68 -ColorChooser.rgbGreenText=\u7DD1(N) +ColorChooser.rgbGreenText=\u7DD1 ColorChooser.rgbGreenMnemonic=78 -ColorChooser.rgbBlueText=\u9752(B) +ColorChooser.rgbBlueText=\u9752 ColorChooser.rgbBlueMnemonic=66 ColorChooser.rgbAlphaText=\u30A2\u30EB\u30D5\u30A1 ColorChooser.rgbHexCodeText=\u8272\u30B3\u30FC\u30C9(C) @@ -144,9 +144,9 @@ OptionPane.yesButtonMnemonic=89 OptionPane.noButtonText=\u3044\u3044\u3048(N) OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=\u53D6\u6D88(0) +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=\u53D6\u6D88 OptionPane.cancelButtonMnemonic=0 OptionPane.titleText=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u9078\u629E # Title for the dialog for the showInputDialog methods. Only used if diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.renameErrorText={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. FileChooser.renameErrorFileExistsText={0}\uC758 \uC774\uB984\uC744 \uBC14\uAFC0 \uC218 \uC5C6\uC74C: \uC9C0\uC815\uD55C \uC774\uB984\uC744 \uC0AC\uC6A9\uD558\uB294 \uD30C\uC77C\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4. \uB2E4\uB978 \uD30C\uC77C \uC774\uB984\uC744 \uC9C0\uC815\uD558\uC2ED\uC2DC\uC624. FileChooser.acceptAllFileFilterText=\uBAA8\uB4E0 \uD30C\uC77C -FileChooser.cancelButtonText=\uCDE8\uC18C(C) +FileChooser.cancelButtonText=\uCDE8\uC18C FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\uC800\uC7A5(S) +FileChooser.saveButtonText=\uC800\uC7A5 FileChooser.saveButtonMnemonic=83 -FileChooser.openButtonText=\uC5F4\uAE30(O) +FileChooser.openButtonText=\uC5F4\uAE30 FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\uC800\uC7A5 FileChooser.openDialogTitleText=\uC5F4\uAE30 @@ -105,25 +105,25 @@ # constant, and an index into the text to render the mnemonic as. The # mnemonic is xxxMnemonic and the index of the character to underline is # xxxDisplayedMnemonicIndex. -ColorChooser.hsvNameText=HSV(H) +ColorChooser.hsvNameText=HSV ColorChooser.hsvMnemonic=72 ColorChooser.hsvHueText=\uC0C9\uC870 ColorChooser.hsvSaturationText=\uCC44\uB3C4 ColorChooser.hsvValueText=\uAC12 ColorChooser.hsvTransparencyText=\uD22C\uBA85 -ColorChooser.hslNameText=HSL(L) +ColorChooser.hslNameText=HSL ColorChooser.hslMnemonic=76 ColorChooser.hslHueText=\uC0C9\uC870 ColorChooser.hslSaturationText=\uCC44\uB3C4 ColorChooser.hslLightnessText=\uBC1D\uAE30 ColorChooser.hslTransparencyText=\uD22C\uBA85 -ColorChooser.rgbNameText=RGB(G) +ColorChooser.rgbNameText=RGB ColorChooser.rgbMnemonic=71 -ColorChooser.rgbRedText=\uBE68\uAC04\uC0C9(D) +ColorChooser.rgbRedText=\uBE68\uAC04\uC0C9 ColorChooser.rgbRedMnemonic=68 -ColorChooser.rgbGreenText=\uB179\uC0C9(N) +ColorChooser.rgbGreenText=\uB179\uC0C9 ColorChooser.rgbGreenMnemonic=78 -ColorChooser.rgbBlueText=\uD30C\uB780\uC0C9(B) +ColorChooser.rgbBlueText=\uD30C\uB780\uC0C9 ColorChooser.rgbBlueMnemonic=66 ColorChooser.rgbAlphaText=\uC54C\uD30C ColorChooser.rgbHexCodeText=\uC0C9\uC0C1 \uCF54\uB4DC(C) @@ -144,9 +144,9 @@ OptionPane.yesButtonMnemonic=89 OptionPane.noButtonText=\uC544\uB2C8\uC624(N) OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=\uCDE8\uC18C(0) +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=\uCDE8\uC18C OptionPane.cancelButtonMnemonic=0 OptionPane.titleText=\uC635\uC158 \uC120\uD0DD # Title for the dialog for the showInputDialog methods. Only used if diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties Wed Jul 05 17:43:00 2017 +0200 @@ -144,10 +144,10 @@ OptionPane.yesButtonMnemonic=83 OptionPane.noButtonText=N\u00E3o OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=Cancelar(0) -OptionPane.cancelButtonMnemonic=0 +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=Cancelar +OptionPane.cancelButtonMnemonic=C OptionPane.titleText=Selecionar uma Op\u00E7\u00E3o # Title for the dialog for the showInputDialog methods. Only used if # the developer uses one of the variants that doesn't take a title. diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties Wed Jul 05 17:43:00 2017 +0200 @@ -96,7 +96,7 @@ ColorChooser.cancelText=Avbryt ColorChooser.resetText=\u00C5terst\u00E4ll # VK_XXX constant for 'ColorChooser.resetText' button to make mnemonic -ColorChooser.resetMnemonic=82 +ColorChooser.resetMnemonic=84 ColorChooser.sampleText=Exempeltext Exempeltext ColorChooser.swatchesNameText=Prov ColorChooser.swatchesMnemonic=80 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.renameErrorText=\u65E0\u6CD5\u91CD\u547D\u540D{0} FileChooser.renameErrorFileExistsText=\u65E0\u6CD5\u91CD\u547D\u540D{0}: \u5DF2\u5B58\u5728\u5177\u6709\u6240\u6307\u5B9A\u540D\u79F0\u7684\u6587\u4EF6\u3002\u8BF7\u6307\u5B9A\u5176\u4ED6\u6587\u4EF6\u540D\u3002 FileChooser.acceptAllFileFilterText=\u6240\u6709\u6587\u4EF6 -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\u4FDD\u5B58(S) +FileChooser.saveButtonText=\u4FDD\u5B58 FileChooser.saveButtonMnemonic=83 -FileChooser.openButtonText=\u6253\u5F00(O) +FileChooser.openButtonText=\u6253\u5F00 FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u4FDD\u5B58 FileChooser.openDialogTitleText=\u6253\u5F00 @@ -105,25 +105,25 @@ # constant, and an index into the text to render the mnemonic as. The # mnemonic is xxxMnemonic and the index of the character to underline is # xxxDisplayedMnemonicIndex. -ColorChooser.hsvNameText=HSV(H) +ColorChooser.hsvNameText=HSV ColorChooser.hsvMnemonic=72 ColorChooser.hsvHueText=\u8272\u8C03 ColorChooser.hsvSaturationText=\u9971\u548C\u5EA6 ColorChooser.hsvValueText=\u503C ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.hslNameText=HSL(L) +ColorChooser.hslNameText=HSL ColorChooser.hslMnemonic=76 ColorChooser.hslHueText=\u8272\u8C03 ColorChooser.hslSaturationText=\u9971\u548C\u5EA6 ColorChooser.hslLightnessText=\u4EAE\u5EA6 ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.rgbNameText=RGB(G) +ColorChooser.rgbNameText=RGB ColorChooser.rgbMnemonic=71 -ColorChooser.rgbRedText=\u7EA2\u8272(D) +ColorChooser.rgbRedText=\u7EA2\u8272 ColorChooser.rgbRedMnemonic=68 -ColorChooser.rgbGreenText=\u7EFF\u8272(N) +ColorChooser.rgbGreenText=\u7EFF\u8272 ColorChooser.rgbGreenMnemonic=78 -ColorChooser.rgbBlueText=\u84DD\u8272(B) +ColorChooser.rgbBlueText=\u84DD\u8272 ColorChooser.rgbBlueMnemonic=66 ColorChooser.rgbAlphaText=Alpha ColorChooser.rgbHexCodeText=\u989C\u8272\u4EE3\u7801(C) @@ -144,9 +144,9 @@ OptionPane.yesButtonMnemonic=89 OptionPane.noButtonText=\u5426(N) OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=\u53D6\u6D88(0) +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=\u53D6\u6D88 OptionPane.cancelButtonMnemonic=0 OptionPane.titleText=\u9009\u62E9\u4E00\u4E2A\u9009\u9879 # Title for the dialog for the showInputDialog methods. Only used if diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties --- a/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties Wed Jul 05 17:43:00 2017 +0200 @@ -55,11 +55,11 @@ FileChooser.renameErrorText=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0} FileChooser.renameErrorFileExistsText=\u7121\u6CD5\u91CD\u65B0\u547D\u540D {0}: \u5DF2\u7D93\u5B58\u5728\u60A8\u6240\u6307\u5B9A\u540D\u7A31\u7684\u6A94\u6848\u3002\u8ACB\u6307\u5B9A\u4E0D\u540C\u7684\u540D\u7A31\u3002 FileChooser.acceptAllFileFilterText=\u6240\u6709\u6A94\u6848 -FileChooser.cancelButtonText=\u53D6\u6D88(C) +FileChooser.cancelButtonText=\u53D6\u6D88 FileChooser.cancelButtonMnemonic=67 -FileChooser.saveButtonText=\u5132\u5B58(S) +FileChooser.saveButtonText=\u5132\u5B58 FileChooser.saveButtonMnemonic=83 -FileChooser.openButtonText=\u958B\u555F(O) +FileChooser.openButtonText=\u958B\u555F FileChooser.openButtonMnemonic=79 FileChooser.saveDialogTitleText=\u5132\u5B58 FileChooser.openDialogTitleText=\u958B\u555F @@ -105,25 +105,25 @@ # constant, and an index into the text to render the mnemonic as. The # mnemonic is xxxMnemonic and the index of the character to underline is # xxxDisplayedMnemonicIndex. -ColorChooser.hsvNameText=HSV(H) +ColorChooser.hsvNameText=HSV ColorChooser.hsvMnemonic=72 ColorChooser.hsvHueText=\u8272\u8ABF ColorChooser.hsvSaturationText=\u5F69\u5EA6 ColorChooser.hsvValueText=\u6578\u503C ColorChooser.hsvTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.hslNameText=HSL(L) +ColorChooser.hslNameText=HSL ColorChooser.hslMnemonic=76 ColorChooser.hslHueText=\u8272\u8ABF ColorChooser.hslSaturationText=\u5F69\u5EA6 ColorChooser.hslLightnessText=\u4EAE\u5EA6 ColorChooser.hslTransparencyText=\u900F\u660E\u5EA6 -ColorChooser.rgbNameText=RGB(G) +ColorChooser.rgbNameText=RGB ColorChooser.rgbMnemonic=71 -ColorChooser.rgbRedText=\u7D05(D) +ColorChooser.rgbRedText=\u7D05 ColorChooser.rgbRedMnemonic=68 -ColorChooser.rgbGreenText=\u7DA0(N) +ColorChooser.rgbGreenText=\u7DA0 ColorChooser.rgbGreenMnemonic=78 -ColorChooser.rgbBlueText=\u85CD(B) +ColorChooser.rgbBlueText=\u85CD ColorChooser.rgbBlueMnemonic=66 ColorChooser.rgbAlphaText=Alpha ColorChooser.rgbHexCodeText=\u984F\u8272\u4EE3\u78BC(C) @@ -144,9 +144,9 @@ OptionPane.yesButtonMnemonic=89 OptionPane.noButtonText=\u5426(N) OptionPane.noButtonMnemonic=78 -OptionPane.okButtonText=OK(0) -OptionPane.okButtonMnemonic=0 -OptionPane.cancelButtonText=\u53D6\u6D88(0) +OptionPane.okButtonText=OK +OptionPane.okButtonMnemonic=O +OptionPane.cancelButtonText=\u53D6\u6D88 OptionPane.cancelButtonMnemonic=0 OptionPane.titleText=\u9078\u53D6\u4E00\u500B\u9078\u9805 # Title for the dialog for the showInputDialog methods. Only used if diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/java/util/jar/JarFile.java --- a/jdk/src/share/classes/java/util/jar/JarFile.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/java/util/jar/JarFile.java Wed Jul 05 17:43:00 2017 +0200 @@ -37,7 +37,6 @@ import sun.security.action.GetPropertyAction; import sun.security.util.ManifestEntryVerifier; import sun.misc.SharedSecrets; -import sun.security.util.SignatureFileVerifier; /** * The <code>JarFile</code> class is used to read the contents of a jar file @@ -179,7 +178,7 @@ byte[] b = getBytes(manEntry); man = new Manifest(new ByteArrayInputStream(b)); if (!jvInitialized) { - jv = new JarVerifier(b, man); + jv = new JarVerifier(b); } } else { man = new Manifest(super.getInputStream(manEntry)); @@ -298,7 +297,10 @@ if (names != null) { for (int i = 0; i < names.length; i++) { String name = names[i].toUpperCase(Locale.ENGLISH); - if (SignatureFileVerifier.isBlockOrSF(name)) { + if (name.endsWith(".DSA") || + name.endsWith(".RSA") || + name.endsWith(".EC") || + name.endsWith(".SF")) { // Assume since we found a signature-related file // that the jar is signed and that we therefore // need a JarVerifier and Manifest @@ -327,17 +329,17 @@ if (names != null) { for (int i = 0; i < names.length; i++) { JarEntry e = getJarEntry(names[i]); - if (!e.isDirectory() && - SignatureFileVerifier.isBlock(names[i])) { + if (!e.isDirectory()) { if (mev == null) { mev = new ManifestEntryVerifier (getManifestFromReference()); } - String key = names[i].substring( - 0, names[i].lastIndexOf(".")); - jv.verifyBlock(names[i], - getBytes(e), - super.getInputStream(getJarEntry(key + ".SF"))); + byte[] b = getBytes(e); + if (b != null && b.length > 0) { + jv.beginEntry(e, mev); + jv.update(b.length, b, 0, b.length, mev); + jv.update(-1, null, 0, 0, mev); + } } } } diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/java/util/jar/JarInputStream.java --- a/jdk/src/share/classes/java/util/jar/JarInputStream.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/java/util/jar/JarInputStream.java Wed Jul 05 17:43:00 2017 +0200 @@ -95,7 +95,7 @@ man.read(new ByteArrayInputStream(bytes)); closeEntry(); if (doVerify) { - jv = new JarVerifier(bytes, man); + jv = new JarVerifier(bytes); mev = new ManifestEntryVerifier(man); } return (JarEntry)super.getNextEntry(); diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/java/util/jar/JarVerifier.java --- a/jdk/src/share/classes/java/util/jar/JarVerifier.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/java/util/jar/JarVerifier.java Wed Jul 05 17:43:00 2017 +0200 @@ -48,18 +48,35 @@ /* a table mapping names to code signers, for jar entries that have had their actual hashes verified */ - private Map verifiedSigners; + private Hashtable verifiedSigners; /* a table mapping names to code signers, for jar entries that have passed the .SF/.DSA/.EC -> MANIFEST check */ - private Map sigFileSigners; + private Hashtable sigFileSigners; + + /* a hash table to hold .SF bytes */ + private Hashtable sigFileData; + + /** "queue" of pending PKCS7 blocks that we couldn't parse + * until we parsed the .SF file */ + private ArrayList pendingBlocks; /* cache of CodeSigner objects */ private ArrayList signerCache; + /* Are we parsing a block? */ + private boolean parsingBlockOrSF = false; + + /* Are we done parsing META-INF entries? */ + private boolean parsingMeta = true; + /* Are there are files to verify? */ private boolean anyToVerify = true; + /* The output stream to use when keeping track of files we are interested + in */ + private ByteArrayOutputStream baos; + /** The ManifestDigester object */ private volatile ManifestDigester manDig; @@ -75,20 +92,20 @@ /** collect -DIGEST-MANIFEST values for blacklist */ private List manifestDigests; - /** The manifest object */ - Manifest man = null; - - public JarVerifier(byte rawBytes[], Manifest man) { - this.man = man; + public JarVerifier(byte rawBytes[]) { manifestRawBytes = rawBytes; - sigFileSigners = new HashMap(); - verifiedSigners = new HashMap(); + sigFileSigners = new Hashtable(); + verifiedSigners = new Hashtable(); + sigFileData = new Hashtable(11); + pendingBlocks = new ArrayList(); + baos = new ByteArrayOutputStream(); manifestDigests = new ArrayList(); } /** - * This method scans to see which entry we're parsing and keeps - * various state information depending on the file being parsed. + * This method scans to see which entry we're parsing and + * keeps various state information depending on what type of + * file is being parsed. */ public void beginEntry(JarEntry je, ManifestEntryVerifier mev) throws IOException @@ -112,6 +129,30 @@ * b. digest mismatch between the actual jar entry and the manifest */ + if (parsingMeta) { + String uname = name.toUpperCase(Locale.ENGLISH); + if ((uname.startsWith("META-INF/") || + uname.startsWith("/META-INF/"))) { + + if (je.isDirectory()) { + mev.setEntry(null, je); + return; + } + + if (SignatureFileVerifier.isBlockOrSF(uname)) { + /* We parse only DSA, RSA or EC PKCS7 blocks. */ + parsingBlockOrSF = true; + baos.reset(); + mev.setEntry(null, je); + } + return; + } + } + + if (parsingMeta) { + doneWithMeta(); + } + if (je.isDirectory()) { mev.setEntry(null, je); return; @@ -147,7 +188,11 @@ throws IOException { if (b != -1) { - mev.update((byte)b); + if (parsingBlockOrSF) { + baos.write(b); + } else { + mev.update((byte)b); + } } else { processEntry(mev); } @@ -162,7 +207,11 @@ throws IOException { if (n != -1) { - mev.update(b, off, n); + if (parsingBlockOrSF) { + baos.write(b, off, n); + } else { + mev.update(b, off, n); + } } else { processEntry(mev); } @@ -174,10 +223,101 @@ private void processEntry(ManifestEntryVerifier mev) throws IOException { - JarEntry je = mev.getEntry(); - if ((je != null) && (je.signers == null)) { - je.signers = mev.verify(verifiedSigners, sigFileSigners); - je.certs = mapSignersToCertArray(je.signers); + if (!parsingBlockOrSF) { + JarEntry je = mev.getEntry(); + if ((je != null) && (je.signers == null)) { + je.signers = mev.verify(verifiedSigners, sigFileSigners); + je.certs = mapSignersToCertArray(je.signers); + } + } else { + + try { + parsingBlockOrSF = false; + + if (debug != null) { + debug.println("processEntry: processing block"); + } + + String uname = mev.getEntry().getName() + .toUpperCase(Locale.ENGLISH); + + if (uname.endsWith(".SF")) { + String key = uname.substring(0, uname.length()-3); + byte bytes[] = baos.toByteArray(); + // add to sigFileData in case future blocks need it + sigFileData.put(key, bytes); + // check pending blocks, we can now process + // anyone waiting for this .SF file + Iterator it = pendingBlocks.iterator(); + while (it.hasNext()) { + SignatureFileVerifier sfv = + (SignatureFileVerifier) it.next(); + if (sfv.needSignatureFile(key)) { + if (debug != null) { + debug.println( + "processEntry: processing pending block"); + } + + sfv.setSignatureFile(bytes); + sfv.process(sigFileSigners, manifestDigests); + } + } + return; + } + + // now we are parsing a signature block file + + String key = uname.substring(0, uname.lastIndexOf(".")); + + if (signerCache == null) + signerCache = new ArrayList(); + + if (manDig == null) { + synchronized(manifestRawBytes) { + if (manDig == null) { + manDig = new ManifestDigester(manifestRawBytes); + manifestRawBytes = null; + } + } + } + + SignatureFileVerifier sfv = + new SignatureFileVerifier(signerCache, + manDig, uname, baos.toByteArray()); + + if (sfv.needSignatureFileBytes()) { + // see if we have already parsed an external .SF file + byte[] bytes = (byte[]) sigFileData.get(key); + + if (bytes == null) { + // put this block on queue for later processing + // since we don't have the .SF bytes yet + // (uname, block); + if (debug != null) { + debug.println("adding pending block"); + } + pendingBlocks.add(sfv); + return; + } else { + sfv.setSignatureFile(bytes); + } + } + sfv.process(sigFileSigners, manifestDigests); + + } catch (IOException ioe) { + // e.g. sun.security.pkcs.ParsingException + if (debug != null) debug.println("processEntry caught: "+ioe); + // ignore and treat as unsigned + } catch (SignatureException se) { + if (debug != null) debug.println("processEntry caught: "+se); + // ignore and treat as unsigned + } catch (NoSuchAlgorithmException nsae) { + if (debug != null) debug.println("processEntry caught: "+nsae); + // ignore and treat as unsigned + } catch (CertificateException ce) { + if (debug != null) debug.println("processEntry caught: "+ce); + // ignore and treat as unsigned + } } } @@ -214,15 +354,15 @@ * Force a read of the entry data to generate the * verification hash. */ - try (InputStream s = jar.getInputStream(entry)) { + try { + InputStream s = jar.getInputStream(entry); byte[] buffer = new byte[1024]; int n = buffer.length; while (n != -1) { n = s.read(buffer, 0, buffer.length); } + s.close(); } catch (IOException e) { - // Ignore. When an exception is thrown, code signer - // will not be assigned. } } return getCodeSigners(name); @@ -268,7 +408,11 @@ */ void doneWithMeta() { + parsingMeta = false; anyToVerify = !sigFileSigners.isEmpty(); + baos = null; + sigFileData = null; + pendingBlocks = null; signerCache = null; manDig = null; // MANIFEST.MF is always treated as signed and verified, @@ -279,41 +423,6 @@ } } - /** - * Verifies a PKCS7 SignedData block - * @param key name of block - * @param block the pkcs7 file - * @param ins the clear data - */ - void verifyBlock(String key, byte[] block, InputStream ins) { - try { - if (signerCache == null) - signerCache = new ArrayList(); - - if (manDig == null) { - synchronized(manifestRawBytes) { - if (manDig == null) { - manDig = new ManifestDigester(manifestRawBytes); - manifestRawBytes = null; - } - } - } - SignatureFileVerifier sfv = - new SignatureFileVerifier(signerCache, man, - manDig, key, block); - - if (sfv.needSignatureFile()) { - // see if we have already parsed an external .SF file - sfv.setSignatureFile(ins); - } - sfv.process(sigFileSigners, manifestDigests); - } catch (Exception e) { - if (debug != null) { - e.printStackTrace(); - } - } - } - static class VerifierStream extends java.io.InputStream { private InputStream is; @@ -444,7 +553,10 @@ * but this handles a CodeSource of any type, just in case. */ CodeSource[] sources = mapSignersToCodeSources(cs.getLocation(), getJarCodeSigners(), true); - List sourceList = Arrays.asList(sources); + List sourceList = new ArrayList(); + for (int i = 0; i < sources.length; i++) { + sourceList.add(sources[i]); + } int j = sourceList.indexOf(cs); if (j != -1) { CodeSigner[] match; diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java --- a/jdk/src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java Wed Jul 05 17:43:00 2017 +0200 @@ -73,7 +73,7 @@ {"appletviewer.parse.warning.embed.requiresheight", "Varning: <embed>-taggen kr\u00E4ver ett h\u00F6jdattribut."}, {"appletviewer.parse.warning.embed.requireswidth", "Varning: <embed>-taggen kr\u00E4ver ett breddattribut."}, {"appletviewer.parse.warning.appnotLongersupported", "Varning: <app>-taggen st\u00F6ds inte l\u00E4ngre, anv\u00E4nd <applet> ist\u00E4llet:"}, - {"appletviewer.usage", "Syntax: appletviewer <alternativ> url:er \n\nd\u00E4r <alternativ> inkluderar:\n -debug Startar appletvisning i Java-fels\u00F6kningen\n -encoding <kodning> Anger teckenkodning som anv\u00E4nds i HTML-filer\n -J<k\u00F6rningsflagga> \u00D6verf\u00F6r argument till Java-tolkningen\n\nAlternativet -J \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande."}, + {"appletviewer.usage", "Syntax: appletviewer-<alternativ> url:er \n\nd\u00E4r <alternativ> inkluderar:\n -debug Startar appletvisning i Java-fels\u00F6kningen\n -encoding <kodning> Anger teckenkodning som anv\u00E4nds i HTML-filer\n -J<k\u00F6rningsflagga> \u00D6verf\u00F6r argument till Java-tolkningen\n\nAlternativet -J \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande."}, {"appletviewer.main.err.unsupportedopt", "Alternativ som inte st\u00F6ds: {0}"}, {"appletviewer.main.err.unrecognizedarg", "Ok\u00E4nt argument: {0}"}, {"appletviewer.main.err.dupoption", "Duplicerat alternativ: {0}"}, @@ -152,7 +152,7 @@ {"appletprops.label.unsignedapplet", "Till\u00E5t osignerade appletar:"}, {"appletprops.choice.unsignedapplet.no", "Nej"}, {"appletprops.choice.unsignedapplet.yes", "Ja"}, - {"appletprops.button.apply", "Till\u00E4mpa"}, + {"appletprops.button.apply", "Anv\u00E4nd"}, {"appletprops.button.cancel", "Avbryt"}, {"appletprops.button.reset", "\u00C5terst\u00E4ll"}, {"appletprops.apply.exception", "Kunde inte spara egenskaper: {0}"}, diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/print/resources/serviceui_fr.properties --- a/jdk/src/share/classes/sun/print/resources/serviceui_fr.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/print/resources/serviceui_fr.properties Wed Jul 05 17:43:00 2017 +0200 @@ -49,7 +49,7 @@ label.source.mnemonic=C label.status=Statut : label.username=Nom utilisateur : -label.username.mnemonic=U +label.username.mnemonic=O label.millimetres=(mm) label.inches=(po) label.topmargin=haut @@ -62,7 +62,7 @@ label.rightmargin.mnemonic=D # radiobutton.color=Couleur -radiobutton.color.mnemonic=U +radiobutton.color.mnemonic=C radiobutton.draftq=Brouillon radiobutton.draftq.mnemonic=L radiobutton.duplex=Duplex @@ -70,7 +70,7 @@ radiobutton.highq=Max. radiobutton.highq.mnemonic=X radiobutton.landscape=Paysage -radiobutton.landscape.mnemonic=S +radiobutton.landscape.mnemonic=Y radiobutton.monochrome=Monochrome radiobutton.monochrome.mnemonic=M radiobutton.normalq=Normal diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/print/resources/serviceui_pt_BR.properties --- a/jdk/src/share/classes/sun/print/resources/serviceui_pt_BR.properties Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/print/resources/serviceui_pt_BR.properties Wed Jul 05 17:43:00 2017 +0200 @@ -15,10 +15,10 @@ button.ok=OK button.print=Imprimir button.properties=Propriedades... -button.properties.mnemonic=R +button.properties.mnemonic=D # checkbox.collate=Agrupar -checkbox.collate.mnemonic=A +checkbox.collate.mnemonic=R checkbox.jobsheets=P\u00E1gina com Banner checkbox.jobsheets.mnemonic=B checkbox.printtofile=Imprimir em Arquivo @@ -38,7 +38,7 @@ label.numcopies=N\u00FAmero de c\u00F3pias: label.numcopies.mnemonic=O label.priority=Prioridade: -label.priority.mnemonic=R +label.priority.mnemonic=P label.psname=Nome: label.psname.mnemonic=N label.pstype=Tipo: @@ -59,7 +59,7 @@ label.leftmargin=esquerda: label.leftmargin.mnemonic=Q label.rightmargin=direita -label.rightmargin.mnemonic=R +label.rightmargin.mnemonic=D # radiobutton.color=Cor radiobutton.color.mnemonic=O @@ -68,7 +68,7 @@ radiobutton.duplex=Duplex radiobutton.duplex.mnemonic=D radiobutton.highq=Alta -radiobutton.highq.mnemonic=A +radiobutton.highq.mnemonic=T radiobutton.landscape=Paisagem radiobutton.landscape.mnemonic=P radiobutton.monochrome=Monocrom\u00E1tico @@ -76,7 +76,7 @@ radiobutton.normalq=Normal radiobutton.normalq.mnemonic=N radiobutton.oneside=Um Lado -radiobutton.oneside.mnemonic=O +radiobutton.oneside.mnemonic=L radiobutton.portrait=Retrato radiobutton.portrait.mnemonic=R radiobutton.rangeall=Tudo @@ -86,7 +86,7 @@ radiobutton.revlandscape=Paisagem Invertida radiobutton.revlandscape.mnemonic=N radiobutton.revportrait=Retrato Invertido -radiobutton.revportrait.mnemonic=I +radiobutton.revportrait.mnemonic=E radiobutton.tumble=Virar radiobutton.tumble.mnemonic=V # The vkMnemonics correspond with the constants defined in KeyEvent, eg @@ -96,7 +96,7 @@ tab.general=Geral tab.general.vkMnemonic=71 tab.pagesetup=Configura\u00E7\u00E3o de P\u00E1gina -tab.pagesetup.vkMnemonic=80 +tab.pagesetup.vkMnemonic=67 # error.pagerange=Faixa de p\u00E1ginas inv\u00E1lida; insira novamente os valores (por exemplo, 1-3,5,7-10) error.destination=Nome de arquivo inv\u00E1lido; tente novamente diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/security/pkcs/PKCS7.java --- a/jdk/src/share/classes/sun/security/pkcs/PKCS7.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/security/pkcs/PKCS7.java Wed Jul 05 17:43:00 2017 +0200 @@ -38,7 +38,6 @@ import sun.security.util.*; import sun.security.x509.AlgorithmId; import sun.security.x509.CertificateIssuerName; -import sun.security.x509.KeyUsageExtension; import sun.security.x509.X509CertImpl; import sun.security.x509.X509CertInfo; import sun.security.x509.X509CRLImpl; @@ -493,7 +492,7 @@ // CRLs (optional) if (crls != null && crls.length != 0) { // cast to X509CRLImpl[] since X509CRLImpl implements DerEncoder - Set<X509CRLImpl> implCRLs = new HashSet<>(crls.length); + Set<X509CRLImpl> implCRLs = new HashSet<X509CRLImpl>(crls.length); for (X509CRL crl: crls) { if (crl instanceof X509CRLImpl) implCRLs.add((X509CRLImpl) crl); @@ -531,168 +530,6 @@ } /** - * Verifying signed data using an external chunked data source. - */ - public static class PKCS7Verifier { - - private final SignerInfo si; // Signer to verify - private final MessageDigest md; // MessageDigest object for chunks - private final Signature sig; // Signature object for chunks - - private PKCS7Verifier(SignerInfo si, MessageDigest md, Signature sig) { - this.si = si; - this.md = md; - this.sig = sig; - } - - public static PKCS7Verifier from(PKCS7 block, SignerInfo si) throws - SignatureException, NoSuchAlgorithmException { - - try { - MessageDigest md = null; - Signature sig; - - ContentInfo content = block.getContentInfo(); - String digestAlgname = si.getDigestAlgorithmId().getName(); - - // if there are authenticate attributes, feed data chunks to - // the message digest. In this case, pv.md is not null - if (si.authenticatedAttributes != null) { - // first, check content type - ObjectIdentifier contentType = (ObjectIdentifier) - si.authenticatedAttributes.getAttributeValue( - PKCS9Attribute.CONTENT_TYPE_OID); - if (contentType == null || - !contentType.equals(content.contentType)) - return null; // contentType does not match, bad SignerInfo - - // now, check message digest - byte[] messageDigest = (byte[]) - si.authenticatedAttributes.getAttributeValue( - PKCS9Attribute.MESSAGE_DIGEST_OID); - - if (messageDigest == null) // fail if there is no message digest - return null; - - md = MessageDigest.getInstance(digestAlgname); - } - - // put together digest algorithm and encryption algorithm - // to form signing algorithm - String encryptionAlgname = - si.getDigestEncryptionAlgorithmId().getName(); - - // Workaround: sometimes the encryptionAlgname is actually - // a signature name - String tmp = AlgorithmId.getEncAlgFromSigAlg(encryptionAlgname); - if (tmp != null) encryptionAlgname = tmp; - String algname = AlgorithmId.makeSigAlg( - digestAlgname, encryptionAlgname); - - sig = Signature.getInstance(algname); - X509Certificate cert = si.getCertificate(block); - - if (cert == null) { - return null; - } - if (cert.hasUnsupportedCriticalExtension()) { - throw new SignatureException("Certificate has unsupported " - + "critical extension(s)"); - } - - // Make sure that if the usage of the key in the certificate is - // restricted, it can be used for digital signatures. - // XXX We may want to check for additional extensions in the - // future. - boolean[] keyUsageBits = cert.getKeyUsage(); - if (keyUsageBits != null) { - KeyUsageExtension keyUsage; - try { - // We don't care whether or not this extension was marked - // critical in the certificate. - // We're interested only in its value (i.e., the bits set) - // and treat the extension as critical. - keyUsage = new KeyUsageExtension(keyUsageBits); - } catch (IOException ioe) { - throw new SignatureException("Failed to parse keyUsage " - + "extension"); - } - - boolean digSigAllowed = ((Boolean)keyUsage.get( - KeyUsageExtension.DIGITAL_SIGNATURE)).booleanValue(); - - boolean nonRepuAllowed = ((Boolean)keyUsage.get( - KeyUsageExtension.NON_REPUDIATION)).booleanValue(); - - if (!digSigAllowed && !nonRepuAllowed) { - throw new SignatureException("Key usage restricted: " - + "cannot be used for " - + "digital signatures"); - } - } - - PublicKey key = cert.getPublicKey(); - sig.initVerify(key); - return new PKCS7Verifier(si, md, sig); - } catch (IOException e) { - throw new SignatureException("IO error verifying signature:\n" + - e.getMessage()); - - } catch (InvalidKeyException e) { - throw new SignatureException("InvalidKey: " + e.getMessage()); - - } - } - - public void update(byte[] data, int off, int end) - throws SignatureException { - if (md != null) { - md.update(data, off, end-off); - } else { - sig.update(data, off, end-off); - } - } - - public SignerInfo verify() throws SignatureException { - try { - // if there are authenticate attributes, get the message - // digest and compare it with the digest of data - if (md != null) { - // now, check message digest - byte[] messageDigest = (byte[]) - si.authenticatedAttributes.getAttributeValue( - PKCS9Attribute.MESSAGE_DIGEST_OID); - - byte[] computedMessageDigest = md.digest(); - - if (!MessageDigest.isEqual( - messageDigest, computedMessageDigest)) { - return null; - } - - // message digest attribute matched - // digest of original data - - // the data actually signed is the DER encoding of - // the authenticated attributes (tagged with - // the "SET OF" tag, not 0xA0). - byte[] dataSigned = si.authenticatedAttributes.getDerEncoding(); - sig.update(dataSigned); - } - - if (sig.verify(si.getEncryptedDigest())) { - return si; - } - - } catch (IOException e) { - throw new SignatureException("IO error verifying signature:\n" + - e.getMessage()); - } - return null; - } - } - - /** * This verifies a given SignerInfo. * * @param info the signer information. @@ -717,16 +554,19 @@ public SignerInfo[] verify(byte[] bytes) throws NoSuchAlgorithmException, SignatureException { - List<SignerInfo> intResult = new ArrayList<>(); + Vector<SignerInfo> intResult = new Vector<SignerInfo>(); for (int i = 0; i < signerInfos.length; i++) { SignerInfo signerInfo = verify(signerInfos[i], bytes); if (signerInfo != null) { - intResult.add(signerInfo); + intResult.addElement(signerInfo); } } - if (!intResult.isEmpty()) { - return intResult.toArray(new SignerInfo[intResult.size()]); + if (intResult.size() != 0) { + + SignerInfo[] result = new SignerInfo[intResult.size()]; + intResult.copyInto(result); + return result; } return null; } diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/security/pkcs/SignerInfo.java --- a/jdk/src/share/classes/sun/security/pkcs/SignerInfo.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/security/pkcs/SignerInfo.java Wed Jul 05 17:43:00 2017 +0200 @@ -230,7 +230,7 @@ if (userCert == null) return null; - ArrayList<X509Certificate> certList = new ArrayList<>(); + ArrayList<X509Certificate> certList = new ArrayList<X509Certificate>(); certList.add(userCert); X509Certificate[] pkcsCerts = block.getCertificates(); @@ -276,20 +276,132 @@ /* Returns null if verify fails, this signerInfo if verify succeeds. */ SignerInfo verify(PKCS7 block, byte[] data) - throws NoSuchAlgorithmException, SignatureException { + throws NoSuchAlgorithmException, SignatureException { + + try { + + ContentInfo content = block.getContentInfo(); + if (data == null) { + data = content.getContentBytes(); + } + + String digestAlgname = getDigestAlgorithmId().getName(); + + byte[] dataSigned; + + // if there are authenticate attributes, get the message + // digest and compare it with the digest of data + if (authenticatedAttributes == null) { + dataSigned = data; + } else { + + // first, check content type + ObjectIdentifier contentType = (ObjectIdentifier) + authenticatedAttributes.getAttributeValue( + PKCS9Attribute.CONTENT_TYPE_OID); + if (contentType == null || + !contentType.equals(content.contentType)) + return null; // contentType does not match, bad SignerInfo + + // now, check message digest + byte[] messageDigest = (byte[]) + authenticatedAttributes.getAttributeValue( + PKCS9Attribute.MESSAGE_DIGEST_OID); + + if (messageDigest == null) // fail if there is no message digest + return null; + + MessageDigest md = MessageDigest.getInstance(digestAlgname); + byte[] computedMessageDigest = md.digest(data); + + if (messageDigest.length != computedMessageDigest.length) + return null; + for (int i = 0; i < messageDigest.length; i++) { + if (messageDigest[i] != computedMessageDigest[i]) + return null; + } + + // message digest attribute matched + // digest of original data + + // the data actually signed is the DER encoding of + // the authenticated attributes (tagged with + // the "SET OF" tag, not 0xA0). + dataSigned = authenticatedAttributes.getDerEncoding(); + } + + // put together digest algorithm and encryption algorithm + // to form signing algorithm + String encryptionAlgname = + getDigestEncryptionAlgorithmId().getName(); - PKCS7.PKCS7Verifier p7v = PKCS7.PKCS7Verifier.from(block, this); - if (p7v == null) return null; - if (data == null) { - try { - data = block.getContentInfo().getContentBytes(); - } catch (IOException e) { - throw new SignatureException("IO error verifying signature:\n" + - e.getMessage()); + // Workaround: sometimes the encryptionAlgname is actually + // a signature name + String tmp = AlgorithmId.getEncAlgFromSigAlg(encryptionAlgname); + if (tmp != null) encryptionAlgname = tmp; + String algname = AlgorithmId.makeSigAlg( + digestAlgname, encryptionAlgname); + + Signature sig = Signature.getInstance(algname); + X509Certificate cert = getCertificate(block); + + if (cert == null) { + return null; + } + if (cert.hasUnsupportedCriticalExtension()) { + throw new SignatureException("Certificate has unsupported " + + "critical extension(s)"); } + + // Make sure that if the usage of the key in the certificate is + // restricted, it can be used for digital signatures. + // XXX We may want to check for additional extensions in the + // future. + boolean[] keyUsageBits = cert.getKeyUsage(); + if (keyUsageBits != null) { + KeyUsageExtension keyUsage; + try { + // We don't care whether or not this extension was marked + // critical in the certificate. + // We're interested only in its value (i.e., the bits set) + // and treat the extension as critical. + keyUsage = new KeyUsageExtension(keyUsageBits); + } catch (IOException ioe) { + throw new SignatureException("Failed to parse keyUsage " + + "extension"); + } + + boolean digSigAllowed = ((Boolean)keyUsage.get( + KeyUsageExtension.DIGITAL_SIGNATURE)).booleanValue(); + + boolean nonRepuAllowed = ((Boolean)keyUsage.get( + KeyUsageExtension.NON_REPUDIATION)).booleanValue(); + + if (!digSigAllowed && !nonRepuAllowed) { + throw new SignatureException("Key usage restricted: " + + "cannot be used for " + + "digital signatures"); + } + } + + PublicKey key = cert.getPublicKey(); + sig.initVerify(key); + + sig.update(dataSigned); + + if (sig.verify(encryptedDigest)) { + return this; + } + + } catch (IOException e) { + throw new SignatureException("IO error verifying signature:\n" + + e.getMessage()); + + } catch (InvalidKeyException e) { + throw new SignatureException("InvalidKey: " + e.getMessage()); + } - p7v.update(data, 0, data.length); - return p7v.verify(); + return null; } /* Verify the content of the pkcs7 block. */ diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/security/util/ManifestEntryVerifier.java --- a/jdk/src/share/classes/sun/security/util/ManifestEntryVerifier.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/security/util/ManifestEntryVerifier.java Wed Jul 05 17:43:00 2017 +0200 @@ -191,8 +191,8 @@ * * */ - public CodeSigner[] verify(Map<String, CodeSigner[]> verifiedSigners, - Map<String, CodeSigner[]> sigFileSigners) + public CodeSigner[] verify(Hashtable<String, CodeSigner[]> verifiedSigners, + Hashtable<String, CodeSigner[]> sigFileSigners) throws JarException { if (skip) { diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/security/util/SignatureFileManifest.java --- a/jdk/src/share/classes/sun/security/util/SignatureFileManifest.java Mon May 02 09:36:49 2011 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,251 +0,0 @@ -/* - * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. - * 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.security.util; - -import java.io.IOException; -import java.io.InputStream; -import java.util.Arrays; -import java.util.jar.Attributes; -import java.util.jar.Manifest; - -/** - * This class provides streaming mode reading of manifest files. - * Used by {@link SignatureFileVerifier}. - */ -class SignatureFileManifest extends Manifest { - - /* - * Reading a manifest into this object by calling update(byte[]) on chunks. - * During the reading, the bytes are saved in (@code current} until a line - * is complete and the key-value pair is saved in {@code currentAttr}. When - * a section is complete, {@code consumeAttr} is called to merge - * {@code currentAttr} into main attributes or a named entry. - */ - - // Internal state during update() style reading - // 0. not in update mode - // 1, in update mode but main attributes not completed yet - // 2. main attributes completed, still reading the entries - private int state = 0; - - // The partial line read - private byte[] current; - - // Number of bytes in current - private int currentPos = 0; - - // The current Attribute - private Attributes currentAttr; - - /** - * Reads a manifest in chunks. - * <p> - * This method must be called in a row, reading chunks from a single - * manifest file by order. After all chunks are read, caller must call - * {@code update(null)} to fully consume the manifest. - * <p> - * The entry names and attributes read will be merged in with the current - * manifest entries. The {@link #read} method cannot be called inside a - * row of update calls. - * <p> - * Along with the calls, caller can call {@link #getMainAttributes()}, - * {@link #getAttributes(java.lang.String)} or {@link #getEntries()} - * to get already available contents. However, in order not to return - * partial result, when the main attributes in the new manifest is not - * consumed completely, {@link #getMainAttributes()} throws an - * {@code IllegalStateException}. When a certain named entry is not - * consumed completely, {@link #getAttributes(java.lang.String)} - * returns the old {@code Attributes} for the name (if it exists). - * - * @param data null for last call, otherwise, feeding chunks - * @param offset offset into data to begin read - * @param length length of data after offset to read - * @exception IOException if an I/O error has occurred - * @exception IllegalStateException if {@code update(null)} is called - * without any previous {@code update(non-null)} call - */ - public void update(byte[] data, int offset, int length) throws IOException { - - // The last call - if (data == null) { - if (state == 0) { - throw new IllegalStateException("No data to update"); - } - // We accept manifest not ended with \n or \n\n - if (hasLastByte()) { - consumeCurrent(); - } - // We accept empty lines at the end - if (!currentAttr.isEmpty()) { - consumeAttr(); - } - state = 0; // back to non-update state - current = null; - currentAttr = null; - return; - } - - // The first call - if (state == 0) { - current = new byte[1024]; - currentAttr = super.getMainAttributes(); // the main attribute - state = 1; - } - - int end = offset + length; - - while (offset < end) { - switch (data[offset]) { - case '\r': - break; // always skip - case '\n': - if (hasLastByte() && lastByte() == '\n') { // new section - consumeCurrent(); - consumeAttr(); - if (state == 1) { - state = 2; - } - currentAttr = new Attributes(2); - } else { - if (hasLastByte()) { - // save \n into current but do not parse, - // there might be a continuation later - ensureCapacity(); - current[currentPos++] = data[offset]; - } else if (state == 1) { - // there can be multiple empty lines between - // sections, but cannot be at the beginning - throw new IOException("invalid manifest format"); - } - } - break; - case ' ': - if (!hasLastByte()) { - throw new IOException("invalid manifest format"); - } else if (lastByte() == '\n') { - currentPos--; // continuation, remove last \n - } else { // a very normal ' ' - ensureCapacity(); - current[currentPos++] = data[offset]; - } - break; - default: - if (hasLastByte() && lastByte() == '\n') { - // The start of a new pair, not continuation - consumeCurrent(); // the last line read - } - ensureCapacity(); - current[currentPos++] = data[offset]; - break; - } - offset++; - } - } - - /** - * Returns the main Attributes for the Manifest. - * @exception IllegalStateException the main attributes is being read - * @return the main Attributes for the Manifest - */ - public Attributes getMainAttributes() { - if (state == 1) { - throw new IllegalStateException(); - } - return super.getMainAttributes(); - } - - /** - * Reads the Manifest from the specified InputStream. The entry - * names and attributes read will be merged in with the current - * manifest entries. - * - * @param is the input stream - * @exception IOException if an I/O error has occurred - * @exception IllegalStateException if called between two {@link #update} - * calls - */ - public void read(InputStream is) throws IOException { - if (state != 0) { - throw new IllegalStateException("Cannot call read between updates"); - } - super.read(is); - } - - /* - * ---------- Helper methods ----------------- - */ - - private void ensureCapacity() { - if (currentPos >= current.length-1) { - current = Arrays.copyOf(current, current.length*2); - } - } - - private boolean hasLastByte() { - return currentPos > 0; - } - - private byte lastByte() { - return current[currentPos-1]; - } - - // Parse current as key:value and save into currentAttr. - // There MUST be something inside current. - private void consumeCurrent() throws IOException { - // current normally has a \n end, except for the last line - if (current[currentPos-1] == '\n') currentPos--; - for (int i=0; i<currentPos; i++) { - if (current[i] == ':') { - String key = new String(current, 0, 0, i); - i++; - while (i < currentPos && current[i] == ' ') { i++; } - String value = new String(current, i, currentPos-i, "UTF-8"); - currentAttr.putValue(key, value); - currentPos = 0; - return; - } - } - throw new IOException("invalid header field"); - } - - // Merge currentAttr into Manifest - private void consumeAttr() throws IOException { - // Only needed for named entries. For the main attribute, key/value - // is added into attr directly, but since getMainAttributes() throws - // an exception, the partial data is not leaked. - if (state != 1) { - String name = currentAttr.getValue("Name"); - if (name != null) { - currentAttr.remove(new Attributes.Name("Name")); - Attributes old = getAttributes(name); - if (old != null) old.putAll(currentAttr); - else getEntries().put(name, currentAttr); - } else { - throw new IOException("invalid manifest format"); - } - } - } -} diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/security/util/SignatureFileVerifier.java --- a/jdk/src/share/classes/sun/security/util/SignatureFileVerifier.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/security/util/SignatureFileVerifier.java Wed Jul 05 17:43:00 2017 +0200 @@ -55,8 +55,8 @@ /** the PKCS7 block for this .DSA/.RSA/.EC file */ private PKCS7 block; - // the content of the raw .SF file as an InputStream - private InputStream sfStream; + /** the raw bytes of the .SF file */ + private byte sfBytes[]; /** the name of the signature block file, uppercased and without * the extension (.DSA/.RSA/.EC) @@ -66,9 +66,6 @@ /** the ManifestDigester */ private ManifestDigester md; - /** The MANIFEST.MF */ - private Manifest man; - /** cache of created MessageDigest objects */ private HashMap<String, MessageDigest> createdDigests; @@ -86,7 +83,6 @@ * @param rawBytes the raw bytes of the signature block file */ public SignatureFileVerifier(ArrayList<CodeSigner[]> signerCache, - Manifest man, ManifestDigester md, String name, byte rawBytes[]) @@ -98,18 +94,13 @@ try { obj = Providers.startJarVerification(); block = new PKCS7(rawBytes); - byte[] contentData = block.getContentInfo().getData(); - if (contentData != null) { - sfStream = new ByteArrayInputStream(contentData); - } + sfBytes = block.getContentInfo().getData(); certificateFactory = CertificateFactory.getInstance("X509"); } finally { Providers.stopJarVerification(obj); } this.name = name.substring(0, name.lastIndexOf(".")) .toUpperCase(Locale.ENGLISH); - - this.man = man; this.md = md; this.signerCache = signerCache; } @@ -117,13 +108,31 @@ /** * returns true if we need the .SF file */ - public boolean needSignatureFile() + public boolean needSignatureFileBytes() { - return sfStream == null; + + return sfBytes == null; } - public void setSignatureFile(InputStream ins) { - this.sfStream = ins; + + /** + * returns true if we need this .SF file. + * + * @param name the name of the .SF file without the extension + * + */ + public boolean needSignatureFile(String name) + { + return this.name.equalsIgnoreCase(name); + } + + /** + * used to set the raw bytes of the .SF file when it + * is external to the signature block file. + */ + public void setSignatureFile(byte sfBytes[]) + { + this.sfBytes = sfBytes; } /** @@ -136,18 +145,12 @@ * Signature File or PKCS7 block file name */ public static boolean isBlockOrSF(String s) { - return s.endsWith(".SF") || isBlock(s); - } - - /** - * Utility method used by JarVerifier to determine PKCS7 block - * files names that are supported - * - * @param s file name - * @return true if the input file name is a PKCS7 block file name - */ - public static boolean isBlock(String s) { - return s.endsWith(".DSA") || s.endsWith(".RSA") || s.endsWith(".EC"); + // we currently only support DSA and RSA PKCS7 blocks + if (s.endsWith(".SF") || s.endsWith(".DSA") || + s.endsWith(".RSA") || s.endsWith(".EC")) { + return true; + } + return false; } /** get digest from cache */ @@ -177,7 +180,7 @@ * * */ - public void process(Map<String, CodeSigner[]> signers, + public void process(Hashtable<String, CodeSigner[]> signers, List manifestDigests) throws IOException, SignatureException, NoSuchAlgorithmException, JarException, CertificateException @@ -194,86 +197,31 @@ } - private void processImpl(Map<String, CodeSigner[]> signers, + private void processImpl(Hashtable<String, CodeSigner[]> signers, List manifestDigests) throws IOException, SignatureException, NoSuchAlgorithmException, JarException, CertificateException { - SignatureFileManifest sf = new SignatureFileManifest(); - InputStream ins = sfStream; + Manifest sf = new Manifest(); + sf.read(new ByteArrayInputStream(sfBytes)); - byte[] buffer = new byte[4096]; - int sLen = block.getSignerInfos().length; - boolean mainOK = false; // main attributes of SF is available... - boolean manifestSigned = false; // and it matches MANIFEST.MF - BASE64Decoder decoder = new BASE64Decoder(); + String version = + sf.getMainAttributes().getValue(Attributes.Name.SIGNATURE_VERSION); - PKCS7.PKCS7Verifier[] pvs = new PKCS7.PKCS7Verifier[sLen]; - for (int i=0; i<sLen; i++) { - pvs[i] = PKCS7.PKCS7Verifier.from(block, block.getSignerInfos()[i]); + if ((version == null) || !(version.equalsIgnoreCase("1.0"))) { + // XXX: should this be an exception? + // for now we just ignore this signature file + return; } - /* - * Verify SF in streaming mode. The chunks of the file are fed into - * the Manifest object sf and all PKCS7Verifiers. As soon as the main - * attributes is available, we'll check if manifestSigned is true. If - * yes, there is no need to fill in sf's entries field, since it should - * be identical to entries in man. - */ - while (true) { - int len = ins.read(buffer); - if (len < 0) { - if (!manifestSigned) { - sf.update(null, 0, 0); - } - break; - } else { - for (int i=0; i<sLen; i++) { - if (pvs[i] != null) pvs[i].update(buffer, 0, len); - } - // Continue reading if verifyManifestHash fails (or, the - // main attributes is not available yet) - if (!manifestSigned) { - sf.update(buffer, 0, len); - if (!mainOK) { - try { - Attributes attr = sf.getMainAttributes(); - String version = attr.getValue( - Attributes.Name.SIGNATURE_VERSION); + SignerInfo[] infos = block.verify(sfBytes); - if ((version == null) || - !(version.equalsIgnoreCase("1.0"))) { - // XXX: should this be an exception? - // for now we just ignore this signature file - return; - } - - mainOK = true; - manifestSigned = verifyManifestHash( - sf, md, decoder, manifestDigests); - } catch (IllegalStateException ise) { - // main attributes not available yet - } - } - } - } - } - List<SignerInfo> intResult = new ArrayList<>(sLen); - for (int i = 0; i < sLen; i++) { - if (pvs[i] != null) { - SignerInfo signerInfo = pvs[i].verify(); - if (signerInfo != null) { - intResult.add(signerInfo); - } - } - } - if (intResult.isEmpty()) { + if (infos == null) { throw new SecurityException("cannot verify signature block file " + name); } - SignerInfo[] infos = - intResult.toArray(new SignerInfo[intResult.size()]); + BASE64Decoder decoder = new BASE64Decoder(); CodeSigner[] newSigners = getSigners(infos, block); @@ -281,37 +229,26 @@ if (newSigners == null) return; + Iterator<Map.Entry<String,Attributes>> entries = + sf.getEntries().entrySet().iterator(); + + // see if we can verify the whole manifest first + boolean manifestSigned = verifyManifestHash(sf, md, decoder, manifestDigests); + // verify manifest main attributes if (!manifestSigned && !verifyManifestMainAttrs(sf, md, decoder)) { throw new SecurityException ("Invalid signature file digest for Manifest main attributes"); } - Iterator<Map.Entry<String,Attributes>> entries; - - if (manifestSigned) { - if (debug != null) { - debug.println("full manifest signature match, " - + "update signer info from MANIFEST.MF"); - } - entries = man.getEntries().entrySet().iterator(); - } else { - if (debug != null) { - debug.println("full manifest signature unmatch, " - + "update signer info from SF file"); - } - entries = sf.getEntries().entrySet().iterator(); - } - - // go through each section - + // go through each section in the signature file while(entries.hasNext()) { Map.Entry<String,Attributes> e = entries.next(); String name = e.getKey(); if (manifestSigned || - (verifySection(e.getValue(), name, md, decoder))) { + (verifySection(e.getValue(), name, md, decoder))) { if (name.startsWith("./")) name = name.substring(2); @@ -656,6 +593,7 @@ if (set == subset) return true; + boolean match; for (int i = 0; i < subset.length; i++) { if (!contains(set, subset[i])) return false; @@ -675,6 +613,8 @@ if ((oldSigners == null) && (signers == newSigners)) return true; + boolean match; + // make sure all oldSigners are in signers if ((oldSigners != null) && !isSubSet(oldSigners, signers)) return false; @@ -698,7 +638,7 @@ } void updateSigners(CodeSigner[] newSigners, - Map<String, CodeSigner[]> signers, String name) { + Hashtable<String, CodeSigner[]> signers, String name) { CodeSigner[] oldSigners = signers.get(name); diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java --- a/jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java Wed Jul 05 17:43:00 2017 +0200 @@ -103,9 +103,9 @@ {"CPUUsageFormat","CPU\u4F7F\u7528\u7387: {0}%"}, {"Cancel","\u53D6\u6D88"}, {"Cascade", "\u91CD\u306D\u3066\u8868\u793A(C)"}, - {"Cascade.mnemonic", "C"}, + {"Cascade.mnemonic", 'C'}, {"Chart:", "\u30C1\u30E3\u30FC\u30C8(C):"}, - {"Chart:.mnemonic", "C"}, + {"Chart:.mnemonic", 'C'}, {"Class path","\u30AF\u30E9\u30B9\u30D1\u30B9"}, {"Class","\u30AF\u30E9\u30B9"}, {"ClassName","ClassName"}, @@ -122,7 +122,7 @@ {"CompositeData","CompositeData"}, {"Config","\u69CB\u6210"}, {"Connect", "\u63A5\u7D9A(C)"}, - {"Connect.mnemonic", "C"}, + {"Connect.mnemonic", 'C'}, {"Connect...","\u63A5\u7D9A..."}, {"ConnectDialog.connectButton.toolTip", "Java\u4EEE\u60F3\u30DE\u30B7\u30F3\u306B\u63A5\u7D9A"}, {"ConnectDialog.accessibleDescription", "\u30ED\u30FC\u30AB\u30EB\u307E\u305F\u306F\u30EA\u30E2\u30FC\u30C8\u306EJava\u4EEE\u60F3\u30DE\u30B7\u30F3\u3078\u306E\u65B0\u898F\u63A5\u7D9A\u3092\u884C\u3046\u30C0\u30A4\u30A2\u30ED\u30B0"}, @@ -133,7 +133,7 @@ {"Connected. Click to disconnect.","\u63A5\u7D9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u5207\u65AD\u3057\u307E\u3059\u3002"}, {"Connection failed","\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F"}, {"Connection", "\u63A5\u7D9A(C)"}, - {"Connection.mnemonic", "C"}, + {"Connection.mnemonic", 'C'}, {"Connection name", "\u63A5\u7D9A\u540D"}, {"ConnectionName (disconnected)","{0} (\u5207\u65AD\u6E08)"}, {"Constructor","\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF"}, @@ -150,7 +150,7 @@ {"Descriptor", "\u8A18\u8FF0\u5B50"}, {"Details", "\u8A73\u7D30"}, {"Detect Deadlock", "\u30C7\u30C3\u30C9\u30ED\u30C3\u30AF\u306E\u691C\u51FA(D)"}, - {"Detect Deadlock.mnemonic", "D"}, + {"Detect Deadlock.mnemonic", 'D'}, {"Detect Deadlock.toolTip", "\u30C7\u30C3\u30C9\u30ED\u30C3\u30AF\u6E08\u30B9\u30EC\u30C3\u30C9\u306E\u691C\u51FA"}, {"Dimension is not supported:","\u6B21\u5143\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093:"}, {"Discard chart", "\u30C1\u30E3\u30FC\u30C8\u306E\u7834\u68C4"}, @@ -168,7 +168,7 @@ {"Error:","\u30A8\u30E9\u30FC:"}, {"Event","\u30A4\u30D9\u30F3\u30C8"}, {"Exit", "\u7D42\u4E86(X)"}, - {"Exit.mnemonic", "X"}, + {"Exit.mnemonic", 'X'}, {"Fail to load plugin", "\u8B66\u544A: \u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u30ED\u30FC\u30C9\u306B\u5931\u6557\u3057\u307E\u3057\u305F: {0}"}, {"FileChooser.fileExists.cancelOption", "\u53D6\u6D88"}, {"FileChooser.fileExists.message", "<html><center>\u30D5\u30A1\u30A4\u30EB\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059:<br>{0}<br>\u7F6E\u63DB\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\u3002"}, @@ -193,16 +193,16 @@ {"Help.AboutDialog.masthead.title", "JConsole\u306B\u3064\u3044\u3066"}, {"Help.AboutDialog.title", "JConsole: \u8A73\u7D30"}, {"Help.AboutDialog.userGuideLink", "JConsole\u30E6\u30FC\u30B6\u30FC\u30FB\u30AC\u30A4\u30C9(U):<br>{0}"}, - {"Help.AboutDialog.userGuideLink.mnemonic", "U"}, + {"Help.AboutDialog.userGuideLink.mnemonic", 'U'}, {"Help.AboutDialog.userGuideLink.url", "http://java.sun.com/javase/6/docs/technotes/guides/management/jconsole.html"}, {"HelpMenu.About.title", "JConsole\u306B\u3064\u3044\u3066(A)"}, - {"HelpMenu.About.title.mnemonic", "A"}, + {"HelpMenu.About.title.mnemonic", 'A'}, {"HelpMenu.UserGuide.title", "\u30AA\u30F3\u30E9\u30A4\u30F3\u30FB\u30E6\u30FC\u30B6\u30FC\u30FB\u30AC\u30A4\u30C9(U)"}, - {"HelpMenu.UserGuide.title.mnemonic", "U"}, + {"HelpMenu.UserGuide.title.mnemonic", 'U'}, {"HelpMenu.title", "\u30D8\u30EB\u30D7(H)"}, - {"HelpMenu.title.mnemonic", "H"}, + {"HelpMenu.title.mnemonic", 'H'}, {"Hotspot MBeans...", "Hotspot MBeans(H)..."}, - {"Hotspot MBeans....mnemonic", "H"}, + {"Hotspot MBeans....mnemonic", 'H'}, {"Hotspot MBeans.dialog.accessibleDescription", "Hotspot MBeans\u306E\u7BA1\u7406\u7528\u30C0\u30A4\u30A2\u30ED\u30B0"}, {"Impact","\u5F71\u97FF"}, {"Info","\u60C5\u5831"}, @@ -222,7 +222,7 @@ {"Live Threads","\u5B9F\u884C\u4E2D\u306E\u30B9\u30EC\u30C3\u30C9"}, {"Loaded", "\u30ED\u30FC\u30C9\u6E08"}, {"Local Process:", "\u30ED\u30FC\u30AB\u30EB\u30FB\u30D7\u30ED\u30BB\u30B9(L):"}, - {"Local Process:.mnemonic", "L"}, + {"Local Process:.mnemonic", 'L'}, {"Look and Feel","Look&Feel"}, {"Masthead.font", "Dialog-PLAIN-25"}, {"Management Not Enabled","<b>\u6CE8\u610F</b>: \u7BA1\u7406\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306F\u3053\u306E\u30D7\u30ED\u30BB\u30B9\u3067\u306F\u6709\u52B9\u5316\u3055\u308C\u307E\u305B\u3093\u3002"}, @@ -233,20 +233,20 @@ {"MBeanOperationInfo","MBeanOperationInfo"}, {"MBeans","MBeans"}, {"MBeansTab.clearNotificationsButton", "\u30AF\u30EA\u30A2(C)"}, - {"MBeansTab.clearNotificationsButton.mnemonic", "C"}, + {"MBeansTab.clearNotificationsButton.mnemonic", 'C'}, {"MBeansTab.clearNotificationsButton.toolTip", "\u901A\u77E5\u306E\u30AF\u30EA\u30A2"}, {"MBeansTab.compositeNavigationMultiple", "\u30B3\u30F3\u30DD\u30B8\u30C3\u30C8\u30FB\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3{0}/{1}"}, {"MBeansTab.compositeNavigationSingle", "\u30B3\u30F3\u30DD\u30B8\u30C3\u30C8\u30FB\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3"}, {"MBeansTab.refreshAttributesButton", "\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5(R)"}, - {"MBeansTab.refreshAttributesButton.mnemonic", "R"}, + {"MBeansTab.refreshAttributesButton.mnemonic", 'R'}, {"MBeansTab.refreshAttributesButton.toolTip", "\u5C5E\u6027\u306E\u30EA\u30D5\u30EC\u30C3\u30B7\u30E5"}, {"MBeansTab.subscribeNotificationsButton", "\u30B5\u30D6\u30B9\u30AF\u30E9\u30A4\u30D6(S)"}, - {"MBeansTab.subscribeNotificationsButton.mnemonic", "S"}, + {"MBeansTab.subscribeNotificationsButton.mnemonic", 'S'}, {"MBeansTab.subscribeNotificationsButton.toolTip", "\u901A\u77E5\u30EA\u30B9\u30CB\u30F3\u30B0\u306E\u958B\u59CB"}, {"MBeansTab.tabularNavigationMultiple", "\u30BF\u30D6\u30FB\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3{0}/{1}"}, {"MBeansTab.tabularNavigationSingle", "\u30BF\u30D6\u30FB\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3"}, {"MBeansTab.unsubscribeNotificationsButton", "\u30B5\u30D6\u30B9\u30AF\u30E9\u30A4\u30D6\u89E3\u9664(U)"}, - {"MBeansTab.unsubscribeNotificationsButton.mnemonic", "U"}, + {"MBeansTab.unsubscribeNotificationsButton.mnemonic", 'U'}, {"MBeansTab.unsubscribeNotificationsButton.toolTip", "\u901A\u77E5\u30EA\u30B9\u30CB\u30F3\u30B0\u306E\u505C\u6B62"}, {"Manage Hotspot MBeans in: ", "Hotspot MBeans\u306E\u7BA1\u7406: "}, {"Max","\u6700\u5927"}, @@ -263,7 +263,7 @@ {"Message","\u30E1\u30C3\u30BB\u30FC\u30B8"}, {"Method successfully invoked", "\u30E1\u30BD\u30C3\u30C9\u304C\u6B63\u5E38\u306B\u8D77\u52D5\u3055\u308C\u307E\u3057\u305F"}, {"Minimize All", "\u3059\u3079\u3066\u6700\u5C0F\u5316(M)"}, - {"Minimize All.mnemonic", "M"}, + {"Minimize All.mnemonic", 'M'}, {"Minus Version", "\u3053\u308C\u306F{0}\u306E\u30D0\u30FC\u30B8\u30E7\u30F3{1}\u3067\u3059"}, {"Monitor locked", " - \u30ED\u30C3\u30AF\u6E08{0}\n"}, @@ -279,7 +279,7 @@ {"Name State LockName LockOwner", "\u540D\u524D: {0}\n\u72B6\u614B: {2}\u306E{1}\u3001\u6240\u6709\u8005: {3}\n"}, {"New Connection...", "\u65B0\u898F\u63A5\u7D9A(N)..."}, - {"New Connection....mnemonic", "N"}, + {"New Connection....mnemonic", 'N'}, {"New value applied","\u9069\u7528\u3055\u308C\u305F\u65B0\u898F\u5024"}, {"No attribute selected","\u5C5E\u6027\u304C\u9078\u629E\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F"}, {"No deadlock detected","\u30C7\u30C3\u30C9\u30ED\u30C3\u30AF\u304C\u691C\u51FA\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F"}, @@ -305,19 +305,19 @@ {"OverviewPanel.plotter.accessibleName", "{0}\u306E\u30C1\u30E3\u30FC\u30C8\u3002"}, {"Parameter", "\u30D1\u30E9\u30E1\u30FC\u30BF"}, {"Password: ", "\u30D1\u30B9\u30EF\u30FC\u30C9(P): "}, - {"Password: .mnemonic", "P"}, + {"Password: .mnemonic", 'P'}, {"Password.accessibleName", "\u30D1\u30B9\u30EF\u30FC\u30C9"}, {"Peak","\u30D4\u30FC\u30AF"}, {"Perform GC", "GC\u306E\u5B9F\u884C(G)"}, - {"Perform GC.mnemonic", "G"}, + {"Perform GC.mnemonic", 'G'}, {"Perform GC.toolTip", "\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u306E\u30EA\u30AF\u30A8\u30B9\u30C8"}, {"Plotter.accessibleName", "\u30C1\u30E3\u30FC\u30C8"}, {"Plotter.accessibleName.keyAndValue", "{0}={1}\n"}, {"Plotter.accessibleName.noData", "\u30C7\u30FC\u30BF\u304C\u30D7\u30ED\u30C3\u30C8\u3055\u308C\u307E\u305B\u3093\u3002"}, {"Plotter.saveAsMenuItem", "\u540D\u524D\u3092\u4ED8\u3051\u3066\u30C7\u30FC\u30BF\u3092\u4FDD\u5B58(A)..."}, - {"Plotter.saveAsMenuItem.mnemonic", "A"}, + {"Plotter.saveAsMenuItem.mnemonic", 'A'}, {"Plotter.timeRangeMenu", "\u6642\u9593\u7BC4\u56F2(T)"}, - {"Plotter.timeRangeMenu.mnemonic", "T"}, + {"Plotter.timeRangeMenu.mnemonic", 'T'}, {"Problem adding listener","\u30EA\u30B9\u30CA\u30FC\u8FFD\u52A0\u4E2D\u306E\u554F\u984C"}, {"Problem displaying MBean", "MBean\u8868\u793A\u4E2D\u306E\u554F\u984C"}, {"Problem invoking", "\u547C\u51FA\u3057\u4E2D\u306E\u554F\u984C"}, @@ -329,11 +329,11 @@ {"Received","\u53D7\u4FE1\u6E08"}, {"Reconnect","\u518D\u63A5\u7D9A"}, {"Remote Process:", "\u30EA\u30E2\u30FC\u30C8\u30FB\u30D7\u30ED\u30BB\u30B9(R):"}, - {"Remote Process:.mnemonic", "R"}, + {"Remote Process:.mnemonic", 'R'}, {"Remote Process.textField.accessibleName", "\u30EA\u30E2\u30FC\u30C8\u30FB\u30D7\u30ED\u30BB\u30B9"}, {"Remove","\u524A\u9664"}, {"Restore All", "\u3059\u3079\u3066\u5FA9\u5143(R)"}, - {"Restore All.mnemonic", "R"}, + {"Restore All.mnemonic", 'R'}, {"Return value", "\u623B\u308A\u5024"}, {"ReturnType", "ReturnType"}, {"SeqNum","SeqNum"}, @@ -364,9 +364,9 @@ {"ThreadTab.threadPlotter.accessibleName", "\u30B9\u30EC\u30C3\u30C9\u6570\u306E\u30C1\u30E3\u30FC\u30C8\u3002"}, {"Threshold","\u3057\u304D\u3044\u5024"}, {"Tile", "\u4E26\u3079\u3066\u8868\u793A(T)"}, - {"Tile.mnemonic", "T"}, + {"Tile.mnemonic", 'T'}, {"Time Range:", "\u6642\u9593\u7BC4\u56F2(T):"}, - {"Time Range:.mnemonic", "T"}, + {"Time Range:.mnemonic", 'T'}, {"Time", "\u6642\u9593"}, {"TimeStamp","TimeStamp"}, {"Total Loaded", "\u30ED\u30FC\u30C9\u6E08\u5408\u8A08"}, @@ -387,7 +387,7 @@ {"remoteTF.usage","<b>\u4F7F\u7528\u65B9\u6CD5</b>: <hostname>:<port>\u307E\u305F\u306Fservice:jmx:<protocol>:<sap>"}, {"Used","\u4F7F\u7528\u6E08"}, {"Username: ", "\u30E6\u30FC\u30B6\u30FC\u540D(U): "}, - {"Username: .mnemonic", "U"}, + {"Username: .mnemonic", 'U'}, {"Username.accessibleName", "\u30E6\u30FC\u30B6\u30FC\u540D"}, {"UserData","UserData"}, {"Virtual Machine","\u4EEE\u60F3\u30DE\u30B7\u30F3"}, @@ -400,8 +400,8 @@ {"Verbose Output.toolTip", "\u30AF\u30E9\u30B9\u8AAD\u8FBC\u307F\u30B7\u30B9\u30C6\u30E0\u3067\u8A73\u7D30\u51FA\u529B\u3092\u6709\u52B9\u306B\u3059\u308B"}, {"View value", "\u5024\u306E\u8868\u793A"}, {"View","\u8868\u793A"}, - {"Window", "\u30A6\u30A3\u30F3\u30C9\u30A6"}, - {"Window.mnemonic", "W"}, + {"Window", "\u30A6\u30A3\u30F3\u30C9\u30A6(W)"}, + {"Window.mnemonic", 'W'}, {"Windows","\u30A6\u30A3\u30F3\u30C9\u30A6"}, {"Writable","\u66F8\u8FBC\u307F\u53EF\u80FD"}, {"You cannot drop a class here", "\u30AF\u30E9\u30B9\u3092\u3053\u3053\u306B\u30C9\u30ED\u30C3\u30D7\u3067\u304D\u307E\u305B\u3093"}, diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java --- a/jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java Wed Jul 05 17:43:00 2017 +0200 @@ -102,10 +102,10 @@ {"CPU Usage","CPU \u5360\u7528\u7387"}, {"CPUUsageFormat","CPU \u5360\u7528\u7387: {0}%"}, {"Cancel","\u53D6\u6D88"}, - {"Cascade", "\u7EA7\u8054(C)"}, - {"Cascade.mnemonic", "C"}, + {"Cascade", "\u5C42\u53E0(C)"}, + {"Cascade.mnemonic", 'C'}, {"Chart:", "\u56FE\u8868(C):"}, - {"Chart:.mnemonic", "C"}, + {"Chart:.mnemonic", 'C'}, {"Class path","\u7C7B\u8DEF\u5F84"}, {"Class","\u7C7B"}, {"ClassName","ClassName"}, @@ -122,7 +122,7 @@ {"CompositeData","CompositeData"}, {"Config","\u914D\u7F6E"}, {"Connect", "\u8FDE\u63A5(C)"}, - {"Connect.mnemonic", "C"}, + {"Connect.mnemonic", 'C'}, {"Connect...","\u8FDE\u63A5..."}, {"ConnectDialog.connectButton.toolTip", "\u8FDE\u63A5\u5230 Java \u865A\u62DF\u673A"}, {"ConnectDialog.accessibleDescription", "\u7528\u4E8E\u4E0E\u672C\u5730\u6216\u8FDC\u7A0B Java \u865A\u62DF\u673A\u5EFA\u7ACB\u65B0\u8FDE\u63A5\u7684\u5BF9\u8BDD\u6846"}, @@ -133,7 +133,7 @@ {"Connected. Click to disconnect.","\u5DF2\u8FDE\u63A5\u3002\u5355\u51FB\u53EF\u65AD\u5F00\u8FDE\u63A5\u3002"}, {"Connection failed","\u8FDE\u63A5\u5931\u8D25"}, {"Connection", "\u8FDE\u63A5(C)"}, - {"Connection.mnemonic", "C"}, + {"Connection.mnemonic", 'C'}, {"Connection name", "\u8FDE\u63A5\u540D\u79F0"}, {"ConnectionName (disconnected)","{0} (\u5DF2\u65AD\u5F00\u8FDE\u63A5)"}, {"Constructor","\u6784\u9020\u5668"}, @@ -150,7 +150,7 @@ {"Descriptor", "\u63CF\u8FF0\u7B26"}, {"Details", "\u8BE6\u7EC6\u8D44\u6599"}, {"Detect Deadlock", "\u68C0\u6D4B\u6B7B\u9501(D)"}, - {"Detect Deadlock.mnemonic", "D"}, + {"Detect Deadlock.mnemonic", 'D'}, {"Detect Deadlock.toolTip", "\u68C0\u6D4B\u5904\u4E8E\u6B7B\u9501\u72B6\u6001\u7684\u7EBF\u7A0B"}, {"Dimension is not supported:","\u4E0D\u652F\u6301\u7EF4:"}, {"Discard chart", "\u653E\u5F03\u56FE\u8868"}, @@ -168,7 +168,7 @@ {"Error:","\u9519\u8BEF:"}, {"Event","\u4E8B\u4EF6"}, {"Exit", "\u9000\u51FA(X)"}, - {"Exit.mnemonic", "X"}, + {"Exit.mnemonic", 'X'}, {"Fail to load plugin", "\u8B66\u544A: \u65E0\u6CD5\u52A0\u8F7D\u63D2\u4EF6: {0}"}, {"FileChooser.fileExists.cancelOption", "\u53D6\u6D88"}, {"FileChooser.fileExists.message", "<html><center>\u6587\u4EF6\u5DF2\u5B58\u5728:<br>{0}<br>\u662F\u5426\u8981\u66FF\u6362?"}, @@ -193,17 +193,17 @@ {"Help.AboutDialog.masthead.title", "\u5173\u4E8E JConsole"}, {"Help.AboutDialog.title", "JConsole: \u5173\u4E8E"}, {"Help.AboutDialog.userGuideLink", "JConsole \u7528\u6237\u6307\u5357(U):<br>{0}"}, - {"Help.AboutDialog.userGuideLink.mnemonic", "U"}, + {"Help.AboutDialog.userGuideLink.mnemonic", 'U'}, {"Help.AboutDialog.userGuideLink.url", "http://java.sun.com/javase/6/docs/technotes/guides/management/jconsole.html"}, {"HelpMenu.About.title", "\u5173\u4E8E JConsole(A)"}, - {"HelpMenu.About.title.mnemonic", "A"}, + {"HelpMenu.About.title.mnemonic", 'A'}, {"HelpMenu.UserGuide.title", "\u8054\u673A\u7528\u6237\u6307\u5357(U)"}, - {"HelpMenu.UserGuide.title.mnemonic", "U"}, + {"HelpMenu.UserGuide.title.mnemonic", 'U'}, {"HelpMenu.title", "\u5E2E\u52A9(H)"}, - {"HelpMenu.title.mnemonic", "H"}, - {"Hotspot MBeans...", "\u70ED\u70B9 MBean(H)..."}, - {"Hotspot MBeans....mnemonic", "H"}, - {"Hotspot MBeans.dialog.accessibleDescription", "\u7528\u4E8E\u7BA1\u7406\u70ED\u70B9 MBean \u7684\u5BF9\u8BDD\u6846"}, + {"HelpMenu.title.mnemonic", 'H'}, + {"Hotspot MBeans...", "HotSpot MBean(H)..."}, + {"Hotspot MBeans....mnemonic", 'H'}, + {"Hotspot MBeans.dialog.accessibleDescription", "\u7528\u4E8E\u7BA1\u7406 HotSpot MBean \u7684\u5BF9\u8BDD\u6846"}, {"Impact","\u5F71\u54CD"}, {"Info","\u4FE1\u606F"}, {"INFO","INFO"}, @@ -222,7 +222,7 @@ {"Live Threads","\u6D3B\u52A8\u7EBF\u7A0B"}, {"Loaded", "\u5DF2\u52A0\u8F7D"}, {"Local Process:", "\u672C\u5730\u8FDB\u7A0B(L):"}, - {"Local Process:.mnemonic", "L"}, + {"Local Process:.mnemonic", 'L'}, {"Look and Feel","\u5916\u89C2"}, {"Masthead.font", "Dialog-PLAIN-25"}, {"Management Not Enabled","<b>\u6CE8</b>: \u672A\u5BF9\u6B64\u8FDB\u7A0B\u542F\u7528\u7BA1\u7406\u4EE3\u7406\u3002"}, @@ -233,22 +233,22 @@ {"MBeanOperationInfo","MBeanOperationInfo"}, {"MBeans","MBean"}, {"MBeansTab.clearNotificationsButton", "\u6E05\u9664(C)"}, - {"MBeansTab.clearNotificationsButton.mnemonic", "C"}, + {"MBeansTab.clearNotificationsButton.mnemonic", 'C'}, {"MBeansTab.clearNotificationsButton.toolTip", "\u6E05\u9664\u901A\u77E5"}, {"MBeansTab.compositeNavigationMultiple", "\u7EC4\u5408\u5BFC\u822A{0}/{1}"}, {"MBeansTab.compositeNavigationSingle", "\u7EC4\u5408\u5BFC\u822A"}, {"MBeansTab.refreshAttributesButton", "\u5237\u65B0(R)"}, - {"MBeansTab.refreshAttributesButton.mnemonic", "R"}, + {"MBeansTab.refreshAttributesButton.mnemonic", 'R'}, {"MBeansTab.refreshAttributesButton.toolTip", "\u5237\u65B0\u5C5E\u6027"}, {"MBeansTab.subscribeNotificationsButton", "\u8BA2\u9605(S)"}, - {"MBeansTab.subscribeNotificationsButton.mnemonic", "S"}, + {"MBeansTab.subscribeNotificationsButton.mnemonic", 'S'}, {"MBeansTab.subscribeNotificationsButton.toolTip", "\u5F00\u59CB\u76D1\u542C\u901A\u77E5"}, {"MBeansTab.tabularNavigationMultiple", "\u8868\u683C\u5F0F\u5BFC\u822A{0}/{1}"}, {"MBeansTab.tabularNavigationSingle", "\u8868\u683C\u5F0F\u5BFC\u822A"}, {"MBeansTab.unsubscribeNotificationsButton", "\u53D6\u6D88\u8BA2\u9605(U)"}, - {"MBeansTab.unsubscribeNotificationsButton.mnemonic", "U"}, + {"MBeansTab.unsubscribeNotificationsButton.mnemonic", 'U'}, {"MBeansTab.unsubscribeNotificationsButton.toolTip", "\u505C\u6B62\u76D1\u542C\u901A\u77E5"}, - {"Manage Hotspot MBeans in: ", "\u7BA1\u7406\u4EE5\u4E0B\u4F4D\u7F6E\u7684\u70ED\u70B9 MBean: "}, + {"Manage Hotspot MBeans in: ", "\u7BA1\u7406\u4EE5\u4E0B\u4F4D\u7F6E\u7684 HotSpot MBean: "}, {"Max","\u6700\u5927\u503C"}, {"Maximum heap size","\u6700\u5927\u5806\u5927\u5C0F"}, {"Memory","\u5185\u5B58"}, @@ -263,7 +263,7 @@ {"Message","\u6D88\u606F"}, {"Method successfully invoked", "\u5DF2\u6210\u529F\u8C03\u7528\u65B9\u6CD5"}, {"Minimize All", "\u5168\u90E8\u6700\u5C0F\u5316(M)"}, - {"Minimize All.mnemonic", "M"}, + {"Minimize All.mnemonic", 'M'}, {"Minus Version", "\u8FD9\u662F{0}\u7248\u672C {1}"}, {"Monitor locked", " - \u5DF2\u9501\u5B9A{0}\n"}, @@ -279,7 +279,7 @@ {"Name State LockName LockOwner", "\u540D\u79F0: {0}\n\u72B6\u6001: {2}\u4E0A\u7684{1}, \u62E5\u6709\u8005: {3}\n"}, {"New Connection...", "\u65B0\u5EFA\u8FDE\u63A5(N)..."}, - {"New Connection....mnemonic", "N"}, + {"New Connection....mnemonic", 'N'}, {"New value applied","\u5DF2\u5E94\u7528\u65B0\u503C"}, {"No attribute selected","\u672A\u9009\u62E9\u5C5E\u6027"}, {"No deadlock detected","\u672A\u68C0\u6D4B\u5230\u6B7B\u9501"}, @@ -305,19 +305,19 @@ {"OverviewPanel.plotter.accessibleName", "{0}\u7684\u56FE\u8868\u3002"}, {"Parameter", "\u53C2\u6570"}, {"Password: ", "\u53E3\u4EE4(P): "}, - {"Password: .mnemonic", "P"}, + {"Password: .mnemonic", 'P'}, {"Password.accessibleName", "\u53E3\u4EE4"}, {"Peak","\u5CF0\u503C"}, {"Perform GC", "\u6267\u884C GC(G)"}, - {"Perform GC.mnemonic", "G"}, + {"Perform GC.mnemonic", 'G'}, {"Perform GC.toolTip", "\u8BF7\u6C42\u5783\u573E\u6536\u96C6"}, {"Plotter.accessibleName", "\u56FE\u8868"}, {"Plotter.accessibleName.keyAndValue", "{0}={1}\n"}, {"Plotter.accessibleName.noData", "\u672A\u7ED8\u5236\u6570\u636E\u3002"}, {"Plotter.saveAsMenuItem", "\u5C06\u6570\u636E\u53E6\u5B58\u4E3A(A)..."}, - {"Plotter.saveAsMenuItem.mnemonic", "A"}, + {"Plotter.saveAsMenuItem.mnemonic", 'A'}, {"Plotter.timeRangeMenu", "\u65F6\u95F4\u8303\u56F4(T)"}, - {"Plotter.timeRangeMenu.mnemonic", "T"}, + {"Plotter.timeRangeMenu.mnemonic", 'T'}, {"Problem adding listener","\u6DFB\u52A0\u76D1\u542C\u7A0B\u5E8F\u65F6\u51FA\u73B0\u95EE\u9898"}, {"Problem displaying MBean", "\u663E\u793A MBean \u65F6\u51FA\u73B0\u95EE\u9898"}, {"Problem invoking", "\u8C03\u7528\u65F6\u51FA\u73B0\u95EE\u9898"}, @@ -329,11 +329,11 @@ {"Received","\u6536\u5230"}, {"Reconnect","\u91CD\u65B0\u8FDE\u63A5"}, {"Remote Process:", "\u8FDC\u7A0B\u8FDB\u7A0B(R):"}, - {"Remote Process:.mnemonic", "R"}, + {"Remote Process:.mnemonic", 'R'}, {"Remote Process.textField.accessibleName", "\u8FDC\u7A0B\u8FDB\u7A0B"}, {"Remove","\u5220\u9664"}, {"Restore All", "\u5168\u90E8\u8FD8\u539F(R)"}, - {"Restore All.mnemonic", "R"}, + {"Restore All.mnemonic", 'R'}, {"Return value", "\u8FD4\u56DE\u503C"}, {"ReturnType", "ReturnType"}, {"SeqNum","SeqNum"}, @@ -364,9 +364,9 @@ {"ThreadTab.threadPlotter.accessibleName", "\u8868\u793A\u7EBF\u7A0B\u6570\u7684\u56FE\u8868\u3002"}, {"Threshold","\u9608\u503C"}, {"Tile", "\u5E73\u94FA(T)"}, - {"Tile.mnemonic", "T"}, + {"Tile.mnemonic", 'T'}, {"Time Range:", "\u65F6\u95F4\u8303\u56F4(T):"}, - {"Time Range:.mnemonic", "T"}, + {"Time Range:.mnemonic", 'T'}, {"Time", "\u65F6\u95F4"}, {"TimeStamp","TimeStamp"}, {"Total Loaded", "\u52A0\u8F7D\u603B\u6570"}, @@ -387,7 +387,7 @@ {"remoteTF.usage","<b>\u7528\u6CD5</b>: <hostname>:<port> \u6216 service:jmx:<protocol>:<sap>"}, {"Used","\u5DF2\u7528"}, {"Username: ", "\u7528\u6237\u540D(U): "}, - {"Username: .mnemonic", "U"}, + {"Username: .mnemonic", 'U'}, {"Username.accessibleName", "\u7528\u6237\u540D"}, {"UserData","UserData"}, {"Virtual Machine","\u865A\u62DF\u673A"}, @@ -401,7 +401,7 @@ {"View value", "\u89C6\u56FE\u503C"}, {"View","\u89C6\u56FE"}, {"Window", "\u7A97\u53E3(W)"}, - {"Window.mnemonic", "W"}, + {"Window.mnemonic", 'W'}, {"Windows","Windows"}, {"Writable","\u53EF\u5199"}, {"You cannot drop a class here", "\u65E0\u6CD5\u5220\u9664\u6B64\u5904\u7684\u7C7B"}, diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/appletviewer.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/appletviewer.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/appletviewer.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,54 +19,44 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH appletviewer 1 "02 Jun 2010" +.TH appletviewer 1 "14 Apr 2011" .LP -.SH "名前" -appletviewer \- Java アプレットビューア -.LP -.RS 3 - +.SH "̾" +appletviewer \- Java ץåȥӥ塼 .LP .LP -\f3appletviewer\fP コマンドは Web ブラウザの外でアプレットを実行させます。 +\f3appletviewer\fP ޥɤ Web ֥饦γǥץåȤ¹Ԥޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .LP \f4appletviewer\fP \f2[\fP \f2options\fP \f2] \fP\f2urls\fP ... .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3appletviewer\fP コマンドは \f2urls\fP に指定されたドキュメントあるいはリソースと接続して、そのドキュメントが参照するそれぞれのアプレットを独自のウィンドウで表示します。注: \f2urls\fP によって参照されたドキュメントが、\f2OBJECT\fP、\f2EMBED\fP、または \f2APPLET\fP タグでどのアプレットも参照していない場合、\f3appletviewer\fP は何も行いません。\f3appletviewer\fP でサポートされる HTML タグの詳細については、 +\f3appletviewer\fP ޥɤ \f2urls\fP ˻ꤵ줿ɥȤ뤤ϥ꥽³ơΥɥȤȤ뤽줾ΥץåȤȼΥɥɽޤ: \f2urls\fP ˤäƻȤ줿ɥȤ\f2OBJECT\fP\f2EMBED\fPޤ \f2APPLET\fP ǤɤΥץåȤ⻲ȤƤʤ硢\f3appletviewer\fP ϲԤޤ\f3appletviewer\fP ǥݡȤ HTML ξܺ٤ˤĤƤϡ .na -\f2「アプレットビューアのタグ」\fP @ +\f2֥ץåȥӥ塼Υ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/tools/appletviewertags.html򻲾ȤƤ .LP .LP -\f3注:\fP \f3appletviewer\fP は、RFC2396 で規定されたエスケープ機構に従って符号化された URL を必要とします。サポートされるのは、符号化された URL だけです。ただし、ファイル名については、RFC2396 に指定された方法で符号化を解除しておく必要があります。 +\f3:\fP \f3appletviewer\fP ϡRFC2396 ǵꤵ줿׵˽ä沽줿 URL ɬפȤޤݡȤΤϡ沽줿 URL Ǥե̾ˤĤƤϡRFC2396 ˻ꤵ줿ˡ沽Ƥɬפޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-debug -Java デバッガ jdb(1) でアプレットビューアを開始します。 これにより、ドキュメント中のアプレットをデバッグすることができます。 +Java ǥХå jdb(1) ǥץåȥӥ塼򳫻ϤޤˤꡢɥΥץåȤǥХå뤳ȤǤޤ .TP 3 \-encoding \ \ encoding name -入力 HTML ファイルのエンコーディング名を指定します。 + HTML եΥ󥳡ǥ̾ꤷޤ .TP 3 \-Jjavaoption -文字列 \f2javaoption\fP は、appletviewer を実行する Java インタプリタに 1 つの引数として渡されます。引数にスペースを含めてはいけません。複数の引数は、各引数のすべてを接頭辞 \f3\-J\fP で始めることにより区分する必要があります。これは、コンパイラの実行環境、またはメモリーの利用に有効です。 +ʸ \f2javaoption\fP ϡappletviewer ¹Ԥ Java 󥿥ץ꥿ 1 ĤΰȤϤޤ˥ڡޤƤϤޤʣΰϡưΤ٤ƤƬ \f3\-J\fP ǻϤ뤳Ȥˤʬɬפޤϡѥμ¹ԴĶޤϥ꡼ѤͭǤ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/apt.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/apt.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/apt.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,102 +19,133 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH apt 1 "02 Jun 2010" +.TH apt 1 "14 Apr 2011" .LP .SH "NAME" .LP .LP -\f2apt\fP \- 注釈処理ツール +\f2apt\fP \- ġ .LP -.SH "形式" +.SH "" .LP .LP -\f2apt [\-classpath \fP\f2classpath\fP] [\-sourcepath \f2sourcepath\fP] [\-d \f2directory\fP] [\-s \f2directory\fP] [\-factorypath \f2path\fP] [\-factory \f2class\fP] [\-print] [\-nocompile] [\-A\f2key\fP[\f2=val\fP] ...][\f2javac option\fP] sourcefiles [@files] +\f2apt [\-classpath \fP\f2classpath\fP] [\-sourcepath \f2sourcepath\fP] [\-d \f2directory\fP] [\-s \f2directory\fP] [\-factorypath \f2path\fP] [\-factory \f2class\fP] [\-print] [\-nocompile] [\-A\f2key\fP[\f2=val\fP] ...] [\f2javac option\fP] sourcefiles [@files] .LP -.SH "パラメータ" +.SH "ѥ᡼" .LP .LP -オプションは順不同です。特定のオプションに適用されるパラメータについては、下記の「オプション」を参照してください。 +ץλ˷ޤϤޤΥץŬѤѥ᡼ˤĤƤϡΡ֥ץפ򻲾ȤƤ .LP .RS 3 .TP 3 sourcefiles -ゼロ、1 つ、または複数の処理対象のソースファイル +1 ġޤʣνоݤΥե .TP 3 @files -ソースファイルまたは他のオプションを一覧表示する 1 つまたは複数のファイル +եޤ¾Υץɽ 1 ĤޤʣΥե .RE .LP -.SH "説明" +.SH "" .LP .LP -注釈処理ツール \f2apt\fP は、新しいリフレクト API とサポートインフラストラクチャーから構成され、プログラム注釈を処理します。\f2apt\fP リフレクト API は、 構築時のソースベースで、プログラム構造に関する読み取り専用ビューを提供します。これらのリフレクト API は、総称を追加した後に、Java(TM) プログラミング言語の型システムを正しくモデル化するように設計されています。最初に、\f2apt\fP は、新しいソースコードと他のファイルを作成する注釈プロセッサを実行します。次に、\f2apt\fP は、元のソースファイルと生成したソースファイルの両方をコンパイルするため、開発が楽になります。ツールとのインタフェースに使用されるリフレクト API などの API は、\f2com.sun.mirror\fP のサブパッケージです。 +ġ \f2apt\fP ϡե쥯 API ȥݡȥե饹ȥ饯㡼鹽졢ץޤ\f2apt\fP ե쥯 API ϡ ۻΥ١ǡץ๽¤˴ؤɤ߼ѥӥ塼󶡤ޤΥե쥯 API ϡΤɲäˡJava(TM) ץߥ󥰸ηƥǥ벽褦߷פƤޤǽˡ\f2apt\fP ϡɤ¾Υեץå¹Ԥޤˡ\f2apt\fP ϡΥեեξ򥳥ѥ뤹뤿ᡢȯڤˤʤޤġȤΥ󥿥ե˻Ѥե쥯 API ʤɤ API ϡ\f2com.sun.mirror\fP Υ֥ѥåǤ .LP .LP -ツールの機能に関する詳細と、\f2apt\fP を使用した開発方法については、 +ġεǽ˴ؤܺ٤ȡ\f2apt\fP ѤȯˡˤĤƤϡ .na -\f4「\fP\f4apt\fP\f3 入門」\fP @ +\f4apt \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/apt/GettingStarted.html򻲾ȤƤ .LP .RS 3 .TP 3 -注: -\f2apt\fP の機能は、\f2javac(1)\fP ツールの一部となった注釈処理インフラストラクチャーに組み込まれ、すべての Java コンパイラで使用できるように標準化されました。この新しいインフラストラクチャーは、言語モデルおよび Java プラットフォームの一部となった注釈処理 API に依存します。注釈プロセッサの開発は、新しい API および \f2javac\fP ツールに基づいて行うようお勧めします。 +: +\f2apt\fP εǽϡ\f2javac(1)\fP ġΰȤʤäե饹ȥ饯㡼Ȥ߹ޤ졢٤Ƥ Java ѥǻѤǤ褦ɸಽޤοե饹ȥ饯㡼ϡǥ뤪 Java ץåȥեΰȤʤä API ˰¸ޤץåγȯϡ API \f2javac\fP ġ˴ŤƹԤ褦ᤷޤ .RE .LP -.SH "オプション" +.SH "ץ" .LP .SS -apt 固有のオプション +apt ͭΥץ .LP .RS 3 .TP 3 \-s dir -プロセッサの生成するソースファイルを置くディレクトリルートを指定します。 ファイルは、パッケージの名前空間に基づいてサブディレクトリに置かれます。 +ץå륽ե֤ǥ쥯ȥ롼Ȥꤷޤ եϡѥå֤̾˴Ťƥ֥ǥ쥯ȥ֤ޤ .TP 3 \-nocompile -ソースファイルをクラスファイルにコンパイルしません。 +ե򥯥饹ե˥ѥ뤷ޤ .TP 3 \-print -指定したタイプのテキスト表現を出力します。 注釈処理またはコンパイルは行いません。 +ꤷפΥƥɽϤޤ ޤϥѥϹԤޤ .TP 3 \-A[key[=val]] -注釈プロセッサへ渡すオプションです。 このオプションは、\f2apt\fP が直接解釈するのではなく、それぞれのプロセッサによって使用できるように変えられます。 +ץåϤץǤ Υץϡ\f2apt\fP ľ᤹ܲΤǤϤʤ줾ΥץåˤäƻѤǤ褦Ѥޤ .TP 3 \-factorypath path -注釈プロセッサファクトリを検索する場所を指定します。 このオプションを使用する場合、クラスパスのファクトリは検索されません。 +ץåեȥ򸡺ꤷޤ ΥץѤ硢饹ѥΥեȥϸޤ .TP 3 \-factory classname -使用する注釈プロセッサファクトリの名前です。 デフォルトの検出プロセスを省略します。 +Ѥץåեȥ̾Ǥ ǥեȤθХץάޤ +.TP 3 +\-version +СϤޤ +.TP 3 +\-X +ɸ४ץ˴ؤɽޤ .RE .LP .SS -javac と共用するオプション +javac ȶѤ륪ץ .LP .RS 3 .TP 3 \-d dir -プロセッサと javac 生成のクラスファイルを置く場所を指定します。 +ץå javac Υ饹ե֤ꤷޤ .TP 3 -\-cp path or \-classpath path -ユーザークラスファイルと注釈プロセッサファクトリを検索する場所を指定します。\f2\-factorypath\fP が指定されている場合、クラスパスのファクトリは検索されません。 +\-cp path ޤ \-classpath path +桼饹եץåեȥ򸡺ꤷޤ\f2\-factorypath\fP ꤵƤ硢饹ѥΥեȥϸޤ .RE .LP .LP -\f2javac\fP オプションの詳細については、javac(1) のマニュアルページを参照してください。 +\f2javac\fP ץξܺ٤ˤĤƤϡjavac(1) Υޥ˥奢ڡ򻲾ȤƤ +.LP +.SS +ɸ४ץ .LP -.SH "注" +.RS 3 +.TP 3 +\-XListAnnotationTypes +η˸Фꥹ. +.TP 3 +\-XListDeclarations +ꤪ󥯥롼ɤꥹ. +.TP 3 +\-XPrintAptRounds +ӺƵŪ \f2apt\fP 饦ɤ˴ؤϤ. +.TP 3 +\-XPrintFactoryInfo +׵᤹եȥ˴ؤϤ. +.TP 3 +\-XclassesAsDecls +饹եȥեξ򡢽оݤȤƽޤ +.RE + .LP .LP -\f2apt\fP の機能は、\f2javac\fP により提供される標準注釈処理インフラストラクチャーに組み込まれました。今後の JDK リリースでは、\f2apt\fP および関連する API のサポートが中止する可能性があります。 +\f3\fP: ɸ४ץʤΤǡͽʤѹǽޤ +.LP +.SH "" .LP -.SH "関連項目" +.LP +\f2apt\fP εǽϡ\f2javac\fP ˤ󶡤ɸե饹ȥ饯㡼Ȥ߹ޤޤ JDK ꡼Ǥϡ\f2apt\fP ӴϢ API ΥݡȤߤǽޤ +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/extcheck.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/extcheck.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/extcheck.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH extcheck 1 "02 Jun 2010" +.TH extcheck 1 "14 Apr 2011" .LP -.SH "名前" -extcheck \- jar の競合検出ユーティリティー -.LP -.RS 3 - +.SH "̾" +extcheck \- jar ζ縡Х桼ƥƥ .LP .LP -\f3extcheck\fP は、ターゲットの jar ファイルと現在インストールされている拡張機能の jar ファイル間のバージョンの競合を検出します。 +\f3extcheck\fP ϡåȤ jar եȸߥ󥹥ȡ뤵Ƥĥǽ jar ե֤ΥСζ򸡽Фޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,39 +39,33 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3extcheck\fP ユーティリティーは、指定された Jar ファイルのタイトルおよびバージョンが Java(TM) 2 SDK にインストールされている拡張機能と競合していないかをチェックします。拡張機能をインストールする前に、このユーティリティーを使って、バージョンが同じか、より新しい拡張機能がすでにインストールされていないかどうかを調べることができます。 +\f3extcheck\fP 桼ƥƥϡꤵ줿 Jar եΥȥ뤪ӥС Java(TM) 2 SDK ˥󥹥ȡ뤵Ƥĥǽȶ礷Ƥʤåޤĥǽ򥤥󥹥ȡ뤹ˡΥ桼ƥƥȤäơСƱ꿷ĥǽǤ˥󥹥ȡ뤵ƤʤɤĴ٤뤳ȤǤޤ .LP .LP -\f3extcheck\fP ユーティリティーは、\f2targetfile.jar\fP ファイルのマニフェスト内のヘッダー \f2Specification\-title\fP および \f2Specification\-version\fP を、拡張機能ディレクトリ内に現在インストールされているすべての Jar ファイル内の対応するヘッダーと比較します。デフォルトでは、拡張機能ディレクトリは、\f2jre/lib/ext\fP です。\f3extcheck\fP ユーティリティーは、\f2java.lang.Package.isCompatibleWith\fP メソッドと同様の方法でバージョン番号を比較します。 -.LP -.LP -競合が検出されない場合のリターンコードは \f20\fP です。 +\f3extcheck\fP 桼ƥƥϡtargetfile.jar եΥޥ˥եΥإå \f2Specification\-title\fP \f2Specification\-version\fP 򡢳ĥǽǥ쥯ȥ˸ߥ󥹥ȡ뤵Ƥ \f2٤Ƥ Jar ե\fP бإåӤޤǥեȤǤϡĥǽǥ쥯ȥϡ\f2jre/lib/ext\fP Ǥ\f3extcheck\fP 桼ƥƥϡ\f2java.lang.Package.isCompatibleWith\fP ᥽åɤƱͤˡǥСֹӤޤ .LP .LP -拡張機能ディレクトリ内のいずれかの jar ファイルのマニフェストに、同一の \f2Specification\-title\fP、および同一またはより新しい \f2Specification\-version\fP 番号がある場合は、ゼロでないエラーコードが返されます。\f2targetfile.jar\fP のマニフェストに \f2Specification\-title\fP または \f2Specification\-version\fP 属性がない場合も、ゼロでないエラーコードが返されます。 +礬ФʤΥ꥿󥳡ɤ \f20\fP Ǥ +.LP .LP -.SH "オプション" +ĥǽǥ쥯ȥΤ줫 jar եΥޥ˥եȤˡƱ \f2Specification\-title\fP ƱޤϤ꿷 \f2Specification\-version\fP ֹ椬ϡǤʤ顼ɤ֤ޤ \f2targetfile.jar\fP Υޥ˥եȤ \f2Specification\-title\fP ޤ \f2Specification\-version\fP °ʤ⡢Ǥʤ顼ɤ֤ޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-verbose -拡張機能ディレクトリ内の Jar ファイルを、チェック時に一覧表示します。また、ターゲット jar ファイルのマニフェストの属性、および競合する jar ファイルについても報告します。 +ĥǽǥ쥯ȥ Jar ե򡢥å˰ɽޤޤå jar եΥޥ˥եȤ°Ӷ礹 jar եˤĤƤ𤷤ޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP jar(1) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/idlj.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/idlj.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/idlj.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,20 +19,14 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH idlj 1 "02 Jun 2010" +.TH idlj 1 "14 Apr 2011" .LP -.SH "名前" -idlj \- IDL\-to\-Java コンパイラ -.LP -.RS 3 - +.SH "̾" +idlj \- IDL\-to\-Java ѥ .LP -\f3idlj\fP は、指定された IDL ファイルから Java バインディングを生成します。 -.RE -.SH "形式" -.LP - +\f3idlj\fP ϡꤵ줿 IDL ե뤫 Java Хǥ󥰤ޤ +.SH "" .LP .nf \f3 @@ -44,68 +38,118 @@ .LP .LP -\f2idl\-file\fP は、インタフェース定義言語 (IDL) による定義が入ったファイルの名前です。\f2options\fP の順番は任意ですが、\f2idl\-file\fP よりも前に指定しなければなりません。 -.LP -.SH "説明" +\f2idl\-file\fP ϡ󥿥ե (IDL) ˤäե̾Ǥ\f2options\fP ν֤ǤդǤ\f2idl\-file\fP ˻ꤷʤФʤޤ .LP - +.SH "" .LP -IDL\-to\-Java コンパイラは、指定された IDL ファイルについて Java バインディングを生成します。 バインディングの詳細は、 +.LP +IDL\-to\-Java ѥϡꤵ줿 IDL եˤĤ Java Хǥ󥰤ޤХǥ󥰤ξܺ٤ϡ .na \f2OMG IDL to Java Language Mapping Specification\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html を参照してください。IDL\-to\-Java コンパイラの以前のリリースの中には、\f2idltojava\fP という名前だったものがあります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/mapping/jidlMapping.html 򻲾ȤƤIDL\-to\-Java ѥΰΥ꡼ˤϡ\f2idltojava\fP Ȥ̾äΤޤ +.LP .SS -クライアントバインディングおよびサーバーバインディングの発行 +饤ȥХǥ󥰤ӥСХǥ󥰤ȯ +.LP +.LP +My.idl Ȥ̾ IDL եФ Java Хǥ󥰤ˤϡΥޥɤ¹Ԥޤ .LP -.RS 3 +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + +.LP +.LP +ˤꡢ饤¦ΥХǥ󥰤ޤΥޥɤϡΥޥɤǤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient\fP My.idl +.fl +.fi .LP -My.idl という名前の IDL ファイルに対して Java バインディングを生成するには、次のコマンドを実行します。 \f2idlj My.idl\fP .LP -これにより、クライアント側のバインディングが生成されます。 このコマンドは、次のコマンドと等価です。 \f2idlj \fP\f4\-fclient\fP\f2 My.idl\fP +饤¦ΥХǥ󥰤ˤϡС¦ΥȥȤ߹ޤƤޤ󡣥󥿥եФƥС¦ΥХǥ󥰤ˤϡΥޥɤ¹Ԥޤ .LP -クライアント側のバインディングには、サーバー側のスケルトンは組み込まれていません。インタフェースに対してサーバー側のバインディングを生成するには、次のコマンドを実行します。 \f2idlj \fP\f4\-fserver\fP\f2 My.idl\fP -.LP -サーバー側のバインディングには、クライアント側のバインディングに加えて、スケルトンが組み込まれてています。 これらは、すべて \f2POA\fP (継承モデル) クラスです。クライアント側とサーバー側の両方のバインディングを生成する場合は、次のコマンド (どれも等価) のうちの 1 つを使用します。 \f2idlj \fP\f4\-fclient \-fserver\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP +.nf +\f3 +.fl +idlj \fP\f3\-fserver\fP My.idl +.fl +.fi + .LP .LP -サーバー側のモデルとしては、2 つのモデルが可能です。それは、継承モデルと、Tie 委譲モデルです。 +С¦ΥХǥ󥰤ˤϡ饤¦ΥХǥ󥰤ΤۤˡȥޤޤƤޤϤ٤ơ \f2POA\fP (ĤޤѾǥ) 饹Ǥ饤¦ȥС¦ξΥХǥ󥰤ϡΥޥ (ɤ) Τ 1 ĤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient \-fserver\fP My.idl +.fl +idlj \f3\-fall\fP My.idl +.fl +.fi + .LP .LP -デフォルトのサーバー側のモデルは、「移殖可能サーバント継承モデル」です。\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2MyPOA.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyPOA\fP から継承する必要があります。 +С¦Dzǽʥǥ 2 ĤޤѾǥ Tie ѾǥǤ .LP .LP -\f2MyPOA.java\fP は +ǥեȤΥС¦ΥǥϡְܿǽХȷѾǥפǤ\f2My.idl\fP \f2My\fP 󥿥եƤϡ\f2MyPOA.java\fP Ȥե뤬ޤμ \f2My\fP 󶡤\f2MyPOA\fP Ѿɬפޤ +.LP +.LP +\f2MyPOA.java\fP .na \f2org.omg.PortableServer.Servant\fP @ .fi -http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html を拡張するストリームベースのスケルトンで、スケルトンが実装する IDL インタフェースに関連付けられている \f2InvokeHandler\fP インタフェースとオペレーションインタフェースを実装します。 +http://java.sun.com/javase/6/docs/api/org/omg/PortableServer/Servant.html ĥ륹ȥ꡼١Υȥǡȥ󤬼 IDL 󥿥ե˴ϢդƤ \f2InvokeHandler\fP 󥿥եȥڥ졼󥤥󥿥եޤ .LP .LP .na \f2Portable Object Adapter (POA)\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html の \f2PortableServer\fP モジュールは、ネイティブの \f2Servant\fP 型を定義します。Java プログラミング言語では、\f2Servant\fP 型は、Java の \f2org.omg.PortableServer.Servant\fP クラスにマッピングされています。これはあらゆる POA サーバント実装の基底クラスとなり多数のメソッドを提供します。 これらのメソッドはアプリケーションプログラマが呼び出すだけではなく、POA 自身からも呼び出され、場合によってはサーバントの動作を制御するためにユーザーがオーバーライドすることもあります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html \f2PortableServer\fP ⥸塼ϡͥƥ֤ \f2Servant\fP ޤJava ץߥ󥰸Ǥϡ\f2Servant\fP Java \f2org.omg.PortableServer.Servant\fP 饹˥ޥåפޤΥ饹ϡ٤Ƥ POA Хȼδ쥯饹ȤƵǽץꥱץޤƤӽФȤΤǤ뤤ĤΥ᥽åɤΤۤˡPOA ΤΤˤäƸƤӽФ졢ХȤư椹뤿˥桼С饤ɤǤ᥽åɤ󶡤ޤ +.LP +.LP +ѾǥΤ⤦ 1 ĤΥץϡ\f2\-oldImplBase\fP ե饰Ѥ뤳ȤǡJ2SE 1.4 ΥС Java ץߥ󥰸ȸߴΤ륵С¦Хǥ󥰤뤳ȤǤ\f2\-oldImplBase\fP ե饰ѤΤϡɸŪʼˡǤϤޤ󡣤 API Ϻ侩ˤʤͽǤΥե饰ѤΤϡJ2SE 1.3 ǵҤ줿¸ΥСȤθߴɬפʾǤξˤϴ¸ MAKEFILE ѹ\f2idlj\fP ѥ \f2\-oldImplBase\fP ե饰ɲäɬפޤʤȡPOA ١ΥС¦ޥåԥ󥰤ޤ̸ߴΤ륵С¦Хǥ󥰤ˤϡΥޥɤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-fclient \-fserver\fP \f3\-oldImplBase\fP My.idl +.fl +idlj \f3\-fall\fP \f3\-oldImplBase\fP My.idl +.fl +.fi + .LP .LP -継承モデルのもう 1 つのオプションは、\f2\-oldImplBase\fP フラグを使用して、J2SE 1.4 より前のバージョンの Java プログラミング言語と互換性のあるサーバー側バインディングを生成することです。ただし、\f2\-oldImplBase\fP フラグを使用するのは、標準的な手法ではありません。これらの API は推奨されていません。このフラグを使用するのは、J2SE 1.3 で記述された既存のサーバーとの互換性を保つ場合だけです。その場合、既存の MAKEFILE を変更して \f2idlj\fP コンパイラに \f2\-oldImplBase\fP フラグを追加する必要があります。 フラグを追加しない場合、POA ベースのサーバー側マッピングが生成されます。下位互換性のあるサーバー側バインディングを生成するには、次のコマンドを使用します。 +\f2My.idl\fP \f2My\fP 󥿥եƤϡ\f2_MyImplBase.java\fP Ȥե뤬ޤ\f2My\fP ФƤμ󶡤μ \f2_MyImplBase\fP ѾʤФʤޤ .LP -\f2idlj \fP\f4\-fclient \-fserver\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fall\fP\f2 \fP\f4\-oldImplBase\fP\f2 My.idl\fP .LP -\f2My.idl\fP 内で \f2My\fP インタフェースが定義されている場合は、\f2_MyImplBase.java\fP というファイルが生成されます。\f2My\fP に対してその実装を提供し、この実装は \f2_MyImplBase\fP から継承しなければなりません。 +⤦ 1 ĤΥС¦ǥϡTie ǥȸƤФΤǤΥС¦ǥϡѾǥǤTie ȥȥƱ뤳ȤϤǤʤᡢ̡ʤФʤޤ󡣼ΥޥɤˤäơTie ǥѤΥХǥ󥰤ޤ .LP -もう 1 つのサーバー側モデルは、Tie モデルと呼ばれるものです。このサーバー側モデルは、委譲モデルです。Tie とスケルトンを同時に生成することはできないため、それらは別々に生成しなければなりません。次のコマンドによって、Tie モデル用のバインディングが生成されます。 +.nf +\f3 +.fl +idlj \fP\f3\-fall\fP My.idl +.fl +idlj \f3\-fallTIE\fP My.idl +.fl +.fi + .LP -\f2idlj \fP\f4\-fall\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-fallTIE\fP\f2 My.idl\fP .LP -\f2My\fP というインタフェースの場合、上記の 2 番目のコマンドにより、\f2MyPOATie.java\fP が生成されます。\f2MyPOATie\fP のコンストラクタは、\f2delegate\fP を取ります。この例では、デフォルトの POA モデルを使用しているため、コンストラクタにも \f2poa\fP が必要です。\f2delegate\fP に対して実装を提供しなければなりませんが、この実装は \f2MyOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2MyPOATie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。 +\f2My\fP Ȥ󥿥եξ硢嵭 2 ܤΥޥɤˤꡢ\f2MyPOATie.java\fP ޤ\f2MyPOATie\fP Υ󥹥ȥ饯ϡ\f2delegate\fP ޤǤϡǥեȤ POA ǥѤƤ뤿ᡢ󥹥ȥ饯ˤ \f2poa\fP ɬפǤ\f2delegate\fP ФƼ󶡤ʤФʤޤ󤬡μ \f2MyOperations\fP 󥿥եѾɬפǡ¾Υ饹ѾɬפϤޤ󡣤μ ORB Ȱ˻Ѥˤϡ\f2MyPOATie\fP ǼåפʤФʤޤ󡣤ȤСΤ褦ˤޤ +.LP .nf \f3 .fl @@ -143,16 +187,24 @@ .fi .LP -他の実装から継承しなければならない場合、標準の継承モデルではなく Tie モデルを使用することがあります。Java の場合は、インタフェースの継承の個数に制限はありませんが、クラスの継承に使用できるスロットは 1 つだけです。継承モデルを使用した場合は、そのスロットが占有されます。Tie モデルを使用した場合は、そのスロットが使用されず、ユーザーが独自の目的で使用することができます。ただし、間接参照のレベルが 1 つ導入されるという欠点があります。つまり、メソッドを呼び出すときに余分なメソッド呼び出しが発生します。 .LP -IDL のバージョンから J2SE 1.4 より前のバージョンの Java 言語へのマッピングと互換性のある、サーバー側の Tie モデルのバインディングを生成するには、次のコマンドを使用します。 -.LP -\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fall\fP\f2 My.idl\fP -.br -\f2idlj \fP\f4\-oldImplBase\fP\f2 \fP\f4\-fallTIE\fP\f2 My.idl\fP +¾μѾʤФʤʤ硢ɸηѾǥǤϤʤ Tie ǥѤ뤳ȤޤJava ξϡ󥿥եηѾθĿ¤Ϥޤ󤬡饹ηѾ˻ѤǤ륹åȤ 1 ĤǤѾǥѤϡΥåȤͭޤTie ǥѤϡΥåȤѤ줺桼ȼŪǻѤ뤳ȤǤޤˡˤϡΥ٥뤬 1 ƳȤޤ᥽åɤƤӽФȤˡ;ʬʥ᥽åɸƤӽФ 1 ȯޤ .LP .LP -\f2My\fP というインタフェースの場合、これにより \f2My_Tie.java\fP が生成されます。\f2My_Tie\fP のコンストラクタは、\f2impl\fP を取ります。\f2impl\fP に対して実装を提供しなければなりませんが、その実装は \f2HelloOperations\fP インタフェースから継承する必要があるだけで、その他のクラスから継承する必要はありません。しかし、この実装を ORB と一緒に使用するには、\f2My_Tie\fP 内で実装をラップしなければなりません。たとえば、次のようにします。 +IDL ΥС󤫤 J2SE 1.4 ΥС Java ؤΥޥåԥ󥰤ȸߴΤ롢С¦ Tie ǥΥХǥ󥰤ˤϡΥޥɤѤޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-oldImplBase\fP \f3\-fall\fP My.idl +.fl +idlj \f3\-oldImplBase\fP \f3\-fallTIE\fP My.idl +.fl +.fi + +.LP +.LP +\f2My\fP Ȥ󥿥եξ硢ˤ \f2My_Tie.java\fP ޤ\f2My_Tie\fP Υ󥹥ȥ饯ϡ\f2impl\fP ޤ\f2impl\fP ФƼ󶡤ʤФʤޤ󤬡μ \f2HelloOperations\fP 󥿥եѾɬפǡ¾Υ饹ѾɬפϤޤ󡣤μ ORB Ȱ˻Ѥˤϡ\f2My_Tie\fP ǼåפʤФʤޤ󡣤ȤСΤ褦ˤޤ .LP .nf \f3 @@ -183,201 +235,383 @@ .fi .LP -.RE .SS -発行されたファイルの代替位置の指定 +ȯԤ줿եذ֤λ +.LP +.LP +ȯԤ줿ե򥫥ȥǥ쥯ȥʳΥǥ쥯ȥ֤ˤϡΤ褦ʥޥɤǥѥƤӽФޤ .LP -.RS 3 +.nf +\f3 +.fl +idlj \fP\f3\-td /altdir\fP My.idl +.fl +.fi .LP -発行されたファイルをカレントディレクトリ以外のディレクトリに置くには、次のようなコマンドでコンパイラを呼び出します。 -.RS 3 +.LP +\f2My\fP 󥿥եξ硢Хǥ󥰤ϡ\f2./My.java\fP ǤϤʤ\f2/altdir/My.java\fP ʤɤȯԤޤ +.LP +.SS +󥯥롼ɥեذ֤λ +.LP +.LP +\f2My.idl\fP ˤ⤦ 1 Ĥ IDL ե \f2MyOther.idl\fP 󥯥롼ɤƤ硢ѥϡǥ쥯ȥ \f2MyOther.idl\fP Τꤷޤ⤷Υե뤬Ȥ \f2/includes\fP ˤϡΤ褦ʥޥɤǥѥƤӽФޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-i /includes\fP My.idl +.fl +.fi + +.LP +.LP +ޤ⤷ \f2My.idl\fP ˡȤ \f2/moreIncludes\fP ˤ \f2Another.idl\fP ⥤󥯥롼ɤƤΤǤСΤ褦ʥޥɤǥѥƤӽФޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-i /includes \-i /moreIncludes\fP My.idl +.fl +.fi .LP -\f2idlj \fP\f4\-td /altdir\fP\f2 My.idl\fP -.RE -\f2My\fP インタフェースの場合、バインディングは、\f2./My.java\fP ではなく、\f2/altdir/My.java\fP などに発行されます。 -.RE -.SS -インクルードファイルの代替位置の指定 +.LP +Τ褦ʷǥ󥯥롼ɤꤹȡޥɤĹʣˤʤޤǡ󥯥롼ɥե򸡺򥳥ѥ˻ؼ뤿̤ˡѰդƤޤˡϡĶѿιͤȻƤޤCLASSPATH ˥ꥹȤƤǥ쥯ȥ \f2idl.config\fP Ȥ̾Υեޤ \f2idl.config\fP ˡΤ褦ʷιԤޤ .LP -.RS 3 +.nf +\f3 +.fl +includes=/includes;/moreIncludes +.fl +\fP +.fi .LP -\f2My.idl\fP にもう 1 つの IDL ファイル \f2MyOther.idl\fP がインクルードされている場合、コンパイラは、ローカルディレクトリに \f2MyOther.idl\fP があるものと想定します。もしそのファイルが、たとえば \f2/includes\fP にある場合は、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes\fP\f2 My.idl\fP .LP -また、もし \f2My.idl\fP に、たとえば \f2/moreIncludes\fP にある \f2Another.idl\fP もインクルードされているのであれば、次のようなコマンドでコンパイラを呼び出します。 \f2idlj \fP\f4\-i /includes \-i /moreIncludes\fP\f2 My.idl\fP -.LP -このような形式でインクルードを指定すると、コマンドが長くて複雑になります。 そこで、インクルードファイルを検索する場所をコンパイラに指示するための別の方法が用意されています。この方法は、環境変数の考え方と似ています。CLASSPATH にリストされているディレクトリ内に \f2idl.config\fP という名前のファイルを作成します。その \f2idl.config\fP の中に、次のような形式の行を入れます。 \f2includes=/includes;/moreIncludes\fP -.LP -コンパイラは、このファイルを検索し、インクルードリストを読み込みます。この例では、ディレクトリの間の区切り文字はセミコロン (;) になっています。この区切り文字は、プラットフォームによって異なります。たとえば、Windows プラットフォームではセミコロンですが、Unix プラットフォームではコロンです。 \f2インクルード\fPの詳細については、 +ѥϡΥե򸡺󥯥롼ɥꥹȤɤ߹ߤޤǤϡǥ쥯ȥδ֤ζڤʸϥߥ (;) ˤʤäƤޤζڤʸϡץåȥեˤäưۤʤޤȤСWindows ץåȥեǤϥߥǤUnix ץåȥեǤϥǤ \f2󥯥롼\fPξܺ٤ˤĤƤϡ .na -\f2CLASSPATH の設定\fP @ +\f2CLASSPATH \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#general を参照してください。 -.RE +http://java.sun.com/javase/6/docs/technotes/tools/index.html#general 򻲾ȤƤ +.LP .SS -インクルードファイルに対するバインディングの発行 +󥯥롼ɥեФХǥ󥰤ȯ +.LP +.LP +ǥեȤǤϡޥɹԤ˻ꤷ IDL եƤ륤󥿥ե乽¤ΤʤɤˤĤƤΤߡJava Хǥ󥰤ޤ󥯥롼ɤ줿եƤ뷿ˤĤƤϡJava Хǥ󥰤ޤ󡣤ȤС 2 Ĥ IDL եˤĤƹͤƤߤޤ礦 +.LP + +.LP +.LP +\f4My.idl\fP .LP -.RS 3 +.nf +\f3 +.fl +#include <MyOther.idl> +.fl +interface My +.fl +{ +.fl +}; +.fl +\fP +.fi .LP -デフォルトでは、コマンド行に指定した IDL ファイルで定義されているインタフェースや構造体などについてのみ、Java バインディングが生成されます。インクルードされたファイルで定義されている型については、Java バインディングは生成されません。たとえば、次の 2 つの IDL ファイルについて考えてみましょう。 \f4My.idl\fP + .LP -\f2#include <MyOther.idl>\fP -.br -\f2interface My\fP -.br -\f2{\fP -.br -\f2};\fP -.br -\f4MyOther.idl\fP +.LP +\f4MyOther.idl\fP .LP -\f2interface MyOther\fP -.br -\f2{\fP -.br -\f2};\fP\ -.LP -次のコマンドでは、\f2My\fP に対する Java バインディングだけが生成されます。 \f2idlj My.idl\fP -.LP -\f2My.idl\fP で定義されている型と、\f2My.idl\fP にインクルードされたファイル (この例では \f2MyOther.idl\fP) で定義されている型すべてについて Java バインディングを生成するには、次のコマンドを使用します。 \f2idlj \fP\f4\-emitAll\fP\f2 My.idl\fP +.nf +\f3 +.fl +interface MyOther +.fl +{ +.fl +}; +.fl +\fP +.fi + .LP -このデフォルトの規則に関して注意しなければならないことがあります。グローバルスコープに指定した \f2#include\fP 文は、前述のとおりに処理されます。これらの \f2#include\fP 文は、インポート文と見なすことができます。それに対して、他の定義に囲まれたスコープ内に指定した \f2#include\fP 文は、本当の意味での \f2#include\fP 文として処理されます。 つまり、インクルードされたファイルにあるコードが、元のファイルにそのまま指定されているかのように処理され、それに対して Java バインディングが発行されます。次に例を示します。 \f4My.idl\fP + .LP -\f2#include <MyOther.idl>\fP -.br -\f2interface My\fP -.br -\f2{\fP -.br -\f2\ #include <Embedded.idl>\fP -.br -\f2};\ \fP \f4MyOther.idl\fP .LP -\f2interface MyOther\fP -.br -\f2{\fP -.br -\f2};\ \fP \f4Embedded.idl\fP -.LP -\f2enum E {one, two, three};\fP\ -.LP -このとき、次のコマンドを実行すると、 \f2idlj My.idl\fP +ΥޥɤǤϡ\f2My\fP Ф Java Хǥ󥰤ޤ .LP -次のような一連の Java ファイルが生成されます。 \f2./MyHolder.java\fP -.br -\f2./MyHelper.java\fP -.br -\f2./_MyStub.java\fP -.br -\f2./MyPackage\fP -.br -\f2./MyPackage/EHolder.java\fP -.br -\f2./MyPackage/EHelper.java\fP -.br -\f2./MyPackage/E.java\fP -.br -\f2./My.java\fP +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + .LP -インポート文と見なされる \f2#include\fP に定義されているため、\f2MyOther.java\fP は生成されません。ただし、本当の意味での \f2#include\fP で定義されているため、\f2E.java\fP は生成されます。さらに、\f2Embedded.idl\fP が \f2My\fP インタフェースのスコープ内にインクルードされていたため、\f2My\fP のスコープ内 (つまり、\f2MyPackage\fP 内) に生成されています。 .LP -上記の例で \f2\-emitAll\fP フラグを使用すれば、インクルードされたすべてのファイルにあるすべての型が発行されます。 +\f2My.idl\fP Ƥ뷿ȡ\f2My.idl\fP ˥󥯥롼ɤ줿ե (Ǥ \f2MyOther.idl\fP) Ƥ뷿٤ƤˤĤ Java Хǥ󥰤ˤϡΥޥɤѤޤ .LP -.RE -.SS -パッケージの接頭辞の挿入 -.LP -.RS 3 +.nf +\f3 +.fl +idlj \fP\f3\-emitAll\fP My.idl +.fl +.fi .LP -ABC という名前の会社のために作業していて、次のような IDL ファイルを構築したとしましょう。 -.br -\f4Widgets.idl\fP .LP -\f2module Widgets\fP -.br -\f2{\fP -.br -\f2\ interface W1 {...};\fP -.br -\f2\ interface W2 {...};\fP -.br -\f2};\fP\ +ΥǥեȤε§˴ؤդʤФʤʤȤޤХ륹פ˻ꤷ \f2#include\fP ʸϡҤΤȤ˽ޤ \f2#include\fP ʸϡݡʸȸʤȤǤޤФơ¾˰Ϥޤ줿˻ꤷ \f2#include\fP ʸϡΰ̣Ǥ \f2#include\fP ʸȤƽޤĤޤꡢ󥯥롼ɤ줿եˤ륳ɤΥեˤΤޤ޻ꤵƤ뤫Τ褦˽졢Ф Java Хǥ󥰤ȯԤޤϤǤ .LP -このファイルに対して IDL\-to\-Java コンパイラを実行すると、\f2W1\fP および \f2W2\fP に対する Java バインディングが \f2Widgets\fP パッケージ内に生成されます。しかし、業界の慣例によると、会社のパッケージは、\f2com.<会社名>\fP という名前のパッケージ内に置くことになっています。そのため、\f2Widgets\fP パッケージでは不十分です。慣例に従うには、パッケージを \f2com.abc.Widgets\fP にする必要があります。このパッケージ接頭辞を \f2Widgets\fP モジュールに付加するには、次のコマンドを実行します。 \f2idlj \fP\f4\-pkgPrefix Widgets com.abc\fP\f2 Widgets.idl\fP -.LP -\f2Widgets.idl\fP をインクルードしている IDL ファイルがある場合は、そのコマンドにも \f2\-pkgPrefix\fP フラグが必要です。このフラグを指定しないと、その IDL ファイルは、\f2com.abc.Widgets\fP パッケージではなく、\f2Widgets\fP パッケージを検索することになります。 -.LP -接頭辞が必要なパッケージがいくつもある場合は、前述の \f2idl.config\fP ファイルで接頭辞を指定するのが簡単です。パッケージの接頭辞を指定する行は、それぞれ次の形式で記述します。 -.LP -\f2PkgPrefix.<type>=<prefix>\fP -.LP -したがって、上記の例の場合は、次のように記述します。 \f2PkgPrefix.Widgets=com.abc\fP + .LP .LP -このオプションを使用しても、リポジトリ ID は影響を受けません。 -.LP -.RE -.SS -コンパイル前のシンボルの定義 -.LP -.RS 3 - +\f4My.idl\fP .LP -コンパイル用のシンボルが IDL ファイル内で定義されていない場合は、そのシンボルを定義する必要があります。 これは、たとえば、バインディング内にデバッグコードを組み入れるときに使用します。次のコマンドは、 \f2idlj \fP\f4\-d\fP\f2 MYDEF My.idl\fP -.LP -\f2My.idl\fP 内に \f2#define MYDEF\fP という行を指定した場合と等価です。 -.RE -.SS -既存のバインディングの保持 -.LP -.RS 3 +.nf +\f3 +.fl +#include <MyOther.idl> +.fl +interface My +.fl +{ +.fl + #include <Embedded.idl> +.fl +}; +.fl +\fP +.fi .LP -Java バインディングファイルがすでに存在する場合は、\f2\-keep\fP フラグを指定すると、コンパイラによる上書きを回避できます。デフォルトでは、すでに存在するかどうかにかかわらず、すべてのファイルが生成されます。これらのファイルをカスタマイズした場合 (ただし、それらの内容が正確であるとき以外はカスタマイズは避ける)、\f2\-keep\fP オプションは有用です。次のコマンドは、 \f2idlj \fP\f4\-keep\fP\f2 My.idl\fP -.LP -クライアント側のバインディングで、まだ存在しないものをすべて発行します。 -.RE -.SS -コンパイルの進捗状況の表示 -.LP -.RS 3 .LP -IDL\-to\-Java コンパイラは、実行の各段階で状態メッセージを生成します。「冗長」モード (メッセージが多いモード) にするには、\f2\-v\fP オプションを使用します。 \f2idlj \fP\f4\-v\fP\f2 My.idl\fP +.LP +\f4MyOther.idl\fP .LP -デフォルトでは、コンパイラは冗長モードでは実行されません。 -.RE -.SS -バージョン情報の表示 +.nf +\f3 +.fl +interface MyOther +.fl +{ +.fl +}; +.fl +\fP +.fi + .LP -.RS 3 .LP .LP -IDL\-to\-Java コンパイラのビルドバージョンを表示するには、コマンド行で \f2\-version\fP オプションを指定します。 +\f4Embedded.idl\fP +.LP +.nf +\f3 +.fl +enum E {one, two, three}; +.fl +\fP +.fi + +.LP + +.LP +.LP +ΤȤΥޥɤ¹Ԥȡ +.LP +.nf +\f3 +.fl +idlj My.idl +.fl +\fP +.fi + .LP .LP -\f2idlj \-version\fP +Τ褦ʰϢ Java ե뤬ޤ +.LP +.nf +\f3 +.fl +./MyHolder.java +.fl +./MyHelper.java +.fl +./_MyStub.java +.fl +./MyPackage +.fl +./MyPackage/EHolder.java +.fl +./MyPackage/EHelper.java +.fl +./MyPackage/E.java +.fl +./My.java +.fl +\fP +.fi + +.LP +.LP +ݡʸȸʤ \f2#include\fP Ƥ뤿ᡢ\f2MyOther.java\fP ޤ󡣤ΰ̣Ǥ \f2#include\fP Ƥ뤿ᡢ\f2E.java\fP ޤˡ\f2Embedded.idl\fP \f2My\fP 󥿥եΥ˥󥯥롼ɤƤᡢ\f2My\fP Υ (Ĥޤꡢ\f2MyPackage\fP ) Ƥޤ +.LP +.LP +嵭 \f2\-emitAll\fP ե饰ѤС󥯥롼ɤ줿٤ƤΥեˤ뤹٤ƤηȯԤޤ +.LP +.SS +ѥåƬ +.LP +.LP +ABC Ȥ̾βҤΤ˺ȤƤơΤ褦 IDL եۤȤޤ礦 +.LP + +.LP +.LP +\f4Widgets.idl\fP +.LP +.nf +\f3 +.fl +module Widgets +.fl +{ +.fl + interface W1 {...}; +.fl + interface W2 {...}; +.fl +}; +.fl +\fP +.fi + +.LP + .LP .LP -バージョン情報は、コンパイラによって生成されたバインディング内にも書き込まれています。このオプションをコマンド行に指定すると、それ以外のオプションを指定しても、すべて無視されます。 +ΥեФ IDL\-to\-Java ѥ¹Ԥȡ\f2W1\fP \f2W2\fP Ф Java Хǥ󥰤 \f2Widgets\fP ѥåޤȳδˤȡҤΥѥåϡ\f2com.<̾>\fP Ȥ̾Υѥå֤ȤˤʤäƤޤΤᡢ\f2Widgets\fP ѥåǤԽʬǤ˽ˤϡѥå \f2com.abc.Widgets\fP ˤɬפޤΥѥåƬ \f2Widgets\fP ⥸塼ղäˤϡΥޥɤ¹Ԥޤ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-pkgPrefix Widgets com.abc\fP Widgets.idl +.fl +.fi + +.LP +.LP +\f2Widgets.idl\fP 򥤥󥯥롼ɤƤ IDL ե뤬ϡΥޥɤˤ \f2\-pkgPrefix\fP ե饰ɬפǤΥե饰ꤷʤȡ IDL եϡ\f2com.abc.Widgets\fP ѥåǤϤʤ\f2Widgets\fP ѥå򸡺뤳Ȥˤʤޤ +.LP +.LP +ƬɬפʥѥåĤ⤢ϡҤ \f2idl.config\fP եƬꤹΤñǤѥåƬꤹԤϡ줾켡ηǵҤޤ +.LP +.nf +\f3 +.fl +PkgPrefix.<type>=<prefix> +.fl +\fP +.fi + +.LP +äơ嵭ξϡΤ褦˵Ҥޤ +.nf +\f3 +.fl +PkgPrefix.Widgets=com.abc +.fl +\fP +.fi + +.LP +.LP +ΥץѤƤ⡢ݥȥ ID ϱƶޤ +.LP +.SS +ѥΥܥ +.LP +.LP +ѥѤΥܥ뤬 IDL եƤʤϡΥܥɬפޤϡȤСХǥ˥ǥХåɤȤȤ˻ѤޤΥޥɤϡ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-d\fP MYDEF My.idl +.fl +.fi + +.LP .LP -.RE -.SH "オプション" +\f2My.idl\fP \f2#define MYDEF\fP ȤԤꤷǤ +.LP +.SS +¸ΥХǥ󥰤ݻ +.LP +.LP +Java Хǥ󥰥ե뤬Ǥ¸ߤϡ\f2\-keep\fP ե饰ꤹȡѥˤ񤭤ǤޤǥեȤǤϡǤ¸ߤ뤫ɤˤ餺٤ƤΥե뤬ޤΥե򥫥ޥ (ƤΤǤȤʳϥޥ򤱤)\-keep ץͭѤǤΥޥɤϡ +.LP +.nf +\f3 +.fl +idlj \fP\f3\-keep\fP My.idl +.fl +.fi + +.LP +.LP +饤¦ΥХǥ󥰤ǡޤ¸ߤʤΤ򤹤٤ȯԤޤ +.LP +.SS +ѥοĽɽ +.LP +.LP +IDL\-to\-Java ѥϡ¹ԤγʳǾ֥åޤ־Ĺץ⡼ (å¿⡼) ˤˤϡ\f2\-v\fP ץѤޤ .LP +.nf +\f3 +.fl +idlj \fP\f3\-v\fP My.idl +.fl +.fi .LP +.LP +ǥեȤǤϡѥϾĹ⡼ɤǤϼ¹Ԥޤ +.LP +.SS +Сɽ +.LP +.LP +IDL\-to\-Java ѥΥӥɥСɽˤϡޥɹԤ \f2\-version\fP ץꤷޤ +.LP +.nf +\f3 +.fl +idlj \-version +.fl +\fP +.fi + +.LP +.LP +Сϡѥˤä줿Хǥˤ񤭹ޤƤޤΥץ򥳥ޥɹԤ˻ꤹȡʳΥץꤷƤ⡢٤̵뤵ޤ +.LP +.SH "ץ" +.LP .RS 3 .TP 3 \-d symbol -このオプションは、IDL ファイルに次のような行を追加した場合と等価です。 -.RS 3 - -.LP +ΥץϡIDL ե˼Τ褦ʹԤɲäǤ .nf \f3 .fl @@ -385,33 +619,32 @@ .fl \fP .fi -.RE .TP 3 \-emitAll -\f2#include\fP ファイル内で定義されているものも含めて、すべての型を発行します。 +#include ե ƤΤޤơ \f2٤Ƥη\fP ȯԤޤ .TP 3 \-fside -発行するバインディングを定義します。 \f2side\fP は、\f2client\fP、\f2server\fP、\f2serverTIE\fP、\f2all\fP、\f2allTIE\fP のどちらかです。\f2\-fserverTIE\fP または \f2\-fallTIE\fP オプションを指定すると、委譲モデルスケルトンが発行されます。このフラグを指定しなかった場合は、\f2\-fclient\fP が指定されたものと見なされます。 +ȯԤХǥ󥰤ޤ\f2side\fP \f2client\fP\f2server\fP\f2serverTIE\fP\f2all\fP\f2allTIE\fP Τ줫ˤʤޤ\f2\-fserverTIE\fP ޤ \f2\-fallTIE\fP ץꤹȡѾǥ륹ȥȯԤޤΥե饰ꤷʤäϡ\f2\-fclient\fP ꤵ줿Τȸʤޤ .TP 3 \-i include\-path -デフォルトでは、インクルードファイルはカレントディレクトリから検索されます。このオプションを指定すると、ほかのディレクトリを追加できます。 +ǥեȤǤϡ󥯥롼ɥեϥȥǥ쥯ȥ꤫鸡ޤΥץꤹȡۤΥǥ쥯ȥɲäǤޤ .TP 3 \-keep -生成されるファイルがすでに存在している場合は、そのファイルが上書きされません。デフォルトでは、上書きされます。 +ե뤬Ǥ¸ߤƤϡΥե뤬񤭤ޤ󡣥ǥեȤǤϡ񤭤ޤ .TP 3 \-noWarn -警告メッセージを表示しないようにします。 +ٹåɽʤ褦ˤޤ .TP 3 \-oldImplBase -v1.4 より前の JDK ORB と互換性のあるスケルトンを生成します。デフォルトでは、POA 継承モデルのサーバー側バインディングが生成されます。このオプションを指定すると、\f2ImplBase\fP 継承モデルのクラスであるサーバー側バインディングが生成されるので、古いバージョンの Java プログラミング言語との下位互換性が得られます。 +v1.4 JDK ORB ȸߴΤ륹ȥޤǥեȤǤϡPOA ѾǥΥС¦Хǥ󥰤ޤΥץꤹȡ\f2ImplBase\fP ѾǥΥ饹Ǥ륵С¦Хǥ󥰤ΤǡŤС Java ץߥ󥰸Ȥβ̸ߴޤ .TP 3 \-pkgPrefix type prefix -\f2type\fP がファイルスコープで検出された場合は、その型に対して生成されるすべてのファイルについて、生成される Java パッケージ名に \f2prefix\fP という接頭辞が付加されます。\f2type\fP は、トップレベルモジュールの単純名か、どのモジュールよりも外側で定義された IDL 型の単純名のどちらかです。 +\f2type\fP ե륹פǸФ줿ϡηФ뤹٤ƤΥեˤĤơ Java ѥå̾ \f2prefix\fP ȤƬղäޤ\f2type\fP ϡȥåץ٥⥸塼ñ̾ɤΥ⥸塼⳰¦줿 IDL ñ̾Τɤ餫Ǥ .TP 3 \-pkgTranslate type package -識別子の中にモジュール名 \f2type\fP が検出されると、生成される Java パッケージ内のすべてのファイルについて、識別子の中のその名前が \f2package\fP で置き換えられます。最初に \f2pkgPrefix\fP を変更します。\f2type\fP は、トップレベルのモジュール、またはすべてのモジュールの外部で定義された IDL 型の単純名です。 そして、完全なパッケージ名に正確に一致しなければなりません。 +̻Ҥ˥⥸塼̾ type Фȡ Java ѥåΤ٤ƤΥեˤĤơ̻ҤΤ̾ package ֤ޤǽ \f2pkgPrefix\fP ѹޤ\f2type\fP ϡȥåץ٥Υ⥸塼롢ޤϤ٤ƤΥ⥸塼γ줿 IDL ñ̾Ǥơʥѥå̾Τ˰פʤФʤޤ .LP -1 つの識別子の中で複数の変換がマッチする場合は、もっとも長いマッチが選ばれます。たとえば、次のような引数が指定されている場合は、 +1 Ĥμ̻ҤʣѴޥåϡäȤĹޥåФޤȤСΤ褦ʰꤵƤϡ .nf \f3 .fl @@ -420,89 +653,85 @@ \fP .fi .LP -次のような変換が実施されます。 +Τ褦Ѵ»ܤޤ .nf \f3 .fl -foo => bar +foo => bar .fl -foo.boo => bar.boo +foo.boo => bar.boo .fl -foo.baz => buzz.fizz +foo.baz => buzz.fizz .fl -foo.baz.bar => buzz.fizz.bar +foo.baz.bar => buzz.fizz.bar .fl \fP .fi .LP -次のパッケージ名を変換することはできません。 +Υѥå̾Ѵ뤳ȤϤǤޤ .RS 3 .TP 2 o \f2org\fP .TP 2 o -\f2org.omg\fP、または \f2org.omg\fP のサブパッケージ +\f2org.omg\fPޤ \f2org.omg\fP Υ֥ѥå .RE .LP -これらのパッケージ名を変換しようとすると、互換性のないコードが生成されます。 そして、\f2\-pkgTranslate\fP のあとの最初の引数としてそれらのパッケージを使用すると、エラーとして扱われます。 +Υѥå̾Ѵ褦ȤȡߴΤʤɤޤơ\f2\-pkgTranslate\fP ΤȤκǽΰȤƤΥѥåѤȡ顼Ȥưޤ .TP 3 \-skeletonName xxx%yyy -\f2xxx%yyy\fP が、スケルトンに名前を付けるパターンとして使用されます。デフォルトは、次のとおりです。 +\f2xxx%yyy\fP ȥ̾դѥȤƻѤޤǥեȤϼΤȤǤ .RS 3 .TP 2 o -\f2POA\fP 基底クラスの場合は「%POA」(\f2\-fserver\fP または \f2\-fall\fP) +\f2POA\fP 쥯饹ξϡ%POA(\f2\-fserver\fP ޤ \f2\-fall\fP) .TP 2 o -\f2oldImplBase\fP クラスの場合は「_%ImplBase」(\f2\-oldImplBase\fP かつ (\f2\-fserver\fP または \f2\-fall\fP)) +\f2oldImplBase\fP 饹ξϡ_%ImplBase(\f2\-oldImplBase\fP (\f2\-fserver\fP ޤ \f2\-fall\fP)) .RE .TP 3 \-td dir -出力ディレクトリとして、カレントディレクトリではなく、\f2dir\fP が使用されます。 +ϥǥ쥯ȥȤơȥǥ쥯ȥǤϤʤ\f2dir\fP Ѥޤ .TP 3 \-tieName xxx%yyy -このパターンに従って Tie に名前が付けられます。デフォルトは、次のとおりです。 +Υѥ˽ä Tie ̾դޤǥեȤϼΤȤǤ .RS 3 .TP 2 o -\f2POA\fP Tie 基底クラスの場合は「%POATie」(\f2\-fserverTie\fP または \f2\-fallTie\fP) +\f2POA\fP Tie 쥯饹ξϡ%POATie(\f2\-fserverTie\fP ޤ \f2\-fallTie\fP) .TP 2 o -\f2oldImplBase\fP Tie クラスの場合は「%_Tie」(\f2\-oldImplBase\fP かつ (\f2\-fserverTie\fP または \f2\-fallTie\fP)) +\f2oldImplBase\fP Tie 饹ξϡ%_Tie(\f2\-oldImplBase\fP (\f2\-fserverTie\fP ޤ \f2\-fallTie\fP)) .RE .TP 3 -\-verbose -冗長モードになります。 +\-nowarn, \-verbose +Ĺ⡼ɤˤʤޤ .TP 3 \-version -バージョン情報を表示して終了します。 +Сɽƽλޤ .RE .LP -各オプションの詳細については、「説明」のセクションを参照してください。 -.SH "制約" -.LP - +ƥץξܺ٤ˤĤƤϡפΥ򻲾ȤƤ +.SH "" .LP .RS 3 .TP 2 o -グローバルスコープ内のエスケープされた識別子は、IDL プリミティブ型の \f2Object\fP または \f2ValueBase\fP と同じ綴りであってはなりません。これらの識別子については、シンボルテーブルが事前にロードされており、これらの識別子の再定義を許可すると元の定義が上書きされてしまいます。これは、おそらく恒久的な制約です。 +Х륹Υפ줿̻ҤϡIDL ץߥƥַ \f2Object\fP ޤ \f2ValueBase\fP Ʊ֤ǤäƤϤʤޤ󡣤μ̻ҤˤĤƤϡܥơ֥뤬˥ɤƤꡢμ̻ҤκĤȸ񤭤Ƥޤޤϡ餯ŪǤ .TP 2 o -\f2fixed\fP という IDL 型はサポートされていません。 +\f2fixed\fP Ȥ IDL ϥݡȤƤޤ .RE .LP -.SH "既知の問題点" -.LP - +.SH "Τ" .LP .RS 3 .TP 2 o -グローバル識別子についてインポートが生成されません。予期されないローカル impl を呼び出すと、例外を受け取ります。 しかし、その原因は、\f2ServerDelegate\fP DSI コード内の \f2NullPointerException\fP にあるようです。 +Х뼱̻ҤˤĤƥݡȤޤͽʤ impl ƤӽФȡ㳰ޤ θϡ\f2ServerDelegate\fP DSI \f2NullPointerException\fP ˤ褦Ǥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jar.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jar.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jar.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,104 +19,93 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jar 1 "02 Jun 2010" +.TH jar 1 "14 Apr 2011" .LP -.SH "名前" -jar \- Java ARchive ツール +.SH "̾" +jar \- Java ARchive ġ .LP -\f3jar\fP は複数のファイルを 1 つの JAR アーカイブファイルに結合します。 +\f3jar\fP ʣΥե 1 Ĥ JAR ֥ե˷礷ޤ .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -コマンド行引数ファイル +ޥɹ԰ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .RS 3 .TP 3 -JAR ファイルの作成 +JAR եκ \f4jar c\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの更新 +JAR եι \f4jar u\fP\f2[v0Mmfe] [\fP\f2manifest\fP\f2] [\fP\f2jarfile\fP\f2] [\fP\f2entrypoint\fP\f2] [\-C\fP \f2dir\fP\f2]\fP \f2inputfiles\fP \f2[\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの抽出 +JAR ե \f4jar x\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルの内容の表形式による一覧表示 +JAR եƤɽˤɽ \f4jar t\fP\f2[vf] [\fP\f2jarfile\fP\f2] [\fP\f2inputfiles\fP\f2] [\-J\fP\f2option\fP\f2]\fP .TP 3 -JAR ファイルへのインデックスの追加 +JAR եؤΥǥåɲ \f4jar i\fP \f2jarfile\fP \f2[\-J\fP\f2option\fP\f2]\fP .RE .LP .LP -説明 -.LP -.RS 3 - + .LP .RS 3 .TP 3 cuxtiv0Mmfe -\f2jar\fP コマンドを制御するオプション +\f2jar\fP ޥɤ椹륪ץ .TP 3 jarfile -作成 (\f2c\fP)、更新 (\f2u\fP)、抽出 (\f2x\fP)、または内容の一覧表示 (\f2t\fP) の対象となる JAR ファイル。\f2f\fP オプションとファイル名 \f2jarfile\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f2f\fP と \f2jarfile\fP を省略すると、標準入力から「JAR ファイル」が取得されるか (x および t の場合)、標準出力へ「JAR ファイル」が送信されます(c および u の場合)。 + (\f2c\fP) (\f2u\fP) (\f2x\fP)ޤܼɽ (\f2t\fP) оݤȤʤ JAR ե롣\f2f\fP ץȥե̾ \f2jarfile\fP Ȥڥˤʤޤ Ĥޤꡢ򵭽ҤС⤦⵭Ҥɬפޤ \f2f\fP \f2jarfile\fP άȡɸϤJAR եפ뤫 (x t ξ)ɸϤءJAR եפޤ(c u ξ) .TP 3 inputfiles -\f2jarfile\fP に結合されるか (c および u の場合)、\f2jarfile\fP から抽出 (x の場合) または一覧表示 (t の場合) される、空白で区切られたファイルまたはディレクトリ。すべてのディレクトリは再帰的に処理されます。このファイルは、オプション \f2O\fP (ゼロ) を使用しないかぎり圧縮されます。 +\f2jarfile\fP ˷礵뤫 (c u ξ)\f2jarfile\fP (x ξ) ޤϰɽ (t ξ) 롢Ƕڤ줿եޤϥǥ쥯ȥꡣ٤ƤΥǥ쥯ȥϺƵŪ˽ޤΥեϡץ \f20\fP () Ѥʤ갵̤ޤ .TP 3 manifest -\f2name\fP\f2:\fP\f2value\fP のペアが、JAR ファイルの MANIFEST.MF に含まれている既存のマニフェストファイル。\f2\-m\fP オプションとファイル名 \f2manifest\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f3m\fP、\f3f\fP、および \f3e\fP の出現順序は、\f2manifest\fP、\f2jarfile\fP、\f2entrypoint\fP の出現順序と一致する必要があります。 +JAR ե MANIFEST.MF ˴ޤ٤ \f2name\fP\f2:\fP \f2value\fP ڥޤޤƤ¸Υޥ˥եȥե롣\f2m\fP ץȥե̾ \f2manifest\fP ȤڥˤʤޤĤޤꡢ򵭽ҤС⤦⵭Ҥɬפޤ\f3m\fP\f3f\fP \f3e\fP νиϡ\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP νиȰפɬפޤ .TP 3 entrypoint -実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして設定するクラスの名前。\f2\-e\fP オプションと entrypoint は対になっています。 どちらかを指定する場合は両方とも指定する必要があります。\f3m\fP、\f3f\fP、および \f3e\fP の出現順序は、\f2manifest\fP、\f2jarfile\fP、\f2entrypoint\fP の出現順序と一致する必要があります。 +¹Բǽ JAR ե˥Хɥ뤵줿ɥ󥢥ץꥱΥץꥱ󥨥ȥݥȤȤꤹ륯饹̾\f2\-e\fP ץ entrypoint ФˤʤäƤޤɤ餫ꤹξȤꤹɬפޤ\f3m\fP\f3f\fP \f3e\fP νиϡ\f2manifest\fP\f2jarfile\fP\f2entrypoint\fP νиȰפɬפޤ .TP 3 \-C\ dir -これに続く \f2inputfiles\fP 引数を処理する間、ディレクトリを \f2dir\fP へ一時的に変更します。\f2\-C\ \fP\f2dir\fP \f2inputfiles\fP のセットは複数使用できます。 +³ \f2inputfiles\fP ֡ǥ쥯ȥ \f2dir\fP ذŪѹޤ \f2\-C\ \fP\f2\-\ dir\fP \f2inputfiles\fP ΥåȤʣѤǤޤ .TP 3 \-Joption -Java 実行環境へ渡されるオプション。\f2\-J\fP と \f2option\fP の間には空白を入れないでください。 +Java ¹ԴĶϤ륪ץ\f2\-J\fP \f2option\fP δ֤ˤ϶ʤǤ .RE .LP -.RE -.SH "説明" +.SH "" .LP - -.LP -\f3jar\fP ツールは、複数のファイルを 1 つの JAR アーカイブファイルに結合します。 \f3jar\fP は、ZIP および +\f3jar\fP ġʣΥե 1 Ĥ JAR ֥ե˷礷ޤ\f3jar\fP ϡZIP .na \f2ZLIB\fP @ .fi -http://www.gzip.org/zlib/ 圧縮形式をベースにした、汎用のアーカイブおよび圧縮ツールです。ただし \f3jar\fP ツールの主な目的は、いくつかの Java アプレットやアプリケーションを 1 個のアーカイブに統合することです。アプレットやアプリケーションのコンポーネント (ファイル、イメージ、およびサウンド) が 1 つのアーカイブに結合されていると、Java エージェント (ブラウザなど) は、それらのコンポーネントを 1 回の HTTP トランザクションでダウンロードすることができ、コンポーネントごとに新しい接続を必要とすることがありません。これによって、ダウンロードの回数が大幅に減ります。 また、\f3jar\fP はファイルを圧縮するので、ダウンロード時間も短くなります。また、ファイル内の個々のエントリにアプレット作成者による署名を書き込めるので、配布元の認証が可能になります。jar ツールの構文は、\f2tar\fP コマンドの構文とほぼ同じです。\f3JAR\fP アーカイブは、圧縮されているかどうかにかかわらず、クラスパスのエントリとして使用できます。 +http://www.gzip.org/zlib/ ̷˴ŤѤΥ֤Ӱ̥ġǤ \f3jar\fP ġμŪϡĤ Java ץåȤ䥢ץꥱ 1 ĤΥ֤礹뤳ȤǤץåȤ䥢ץꥱΥݡͥ (ե롢᡼ӥ) 1 ĤΥ֤˷礵ƤȡJava (֥饦ʤ) ϡΥݡͥȤ 1 HTTP ȥ󥶥ǥɤ뤳ȤǤݡͥȤȤ˿³ɬפȤ뤳Ȥޤ󡣤ˤꡢɻ֤ṳ̂ޤޤ\f3jar\fP ϥեΰ̤ԤΤǡɻ֤ṳ̂ޤޤեθġΥȥ˥ץåȺԤˤ̾񤭹Τǡ۸ǧڤǽˤʤޤjar ġιʸϡ\f2tar\fP ޥɤιʸȤۤƱǤ\f3JAR\fP ֤ϡ̤Ƥ뤫ɤˤ餺饹ѥΥȥȤƻѤǤޤ .LP -複数のファイルを JAR ファイルへ結合する一般的な使用法は次のとおりです。 -.LP -.RS 3 - +ʣΥե JAR եط礹ŪʻˡϼΤȤǤ .LP .nf \f3 @@ -125,19 +114,15 @@ .fl \fP .fi -.RE .LP -この例では、現在のディレクトリにあるクラス (.class) ファイルがすべて、\f2myFile.jar\fP という名前のファイルに格納されます。jar ツールは自動的に、\f2META\-INF/MANIFEST.MF\fP という名前のマニフェストファイルエントリを生成します。これは常に、JAR ファイルの最初のエントリになります。マニフェストファイルは、アーカイブに関するメタ情報を宣言し、そのデータを \f2name\ :\ value\fP ペアとして格納します。jar ツールがマニフェストファイル内にメタ情報を格納する方法の詳細については、「 +ǤϡߤΥǥ쥯ȥˤ륯饹 (.class) ե뤬٤ơ\f2myFile.jar\fP Ȥ̾Υե˳Ǽޤjar ġϼưŪˡ \f2META\-INF/MANIFEST.MF\fP Ȥ̾Υޥ˥եȥե륨ȥޤϾˡJAR եκǽΥȥˤʤޤޥ˥եȥեϡ֤˴ؤ᥿Υǡ \f2name\ :\ value\fP ڥȤƳǼޤjar ġ뤬ޥ˥եȥե˥᥿Ǽˡξܺ٤ˤĤƤϡ .na \f2JAR file specification\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifest」を参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR%20Manifestפ򻲾ȤƤ .LP -既存のマニフェストファイル内に格納された \f2name\ :\ value\fP ペアを JAR ファイルに含める必要がある場合には、そのファイルを次のように \f2\-m\fP オプションを使って指定します。 -.LP -.RS 3 - +¸Υޥ˥եȥե˳Ǽ줿 \f2name\ :\ value\fP ڥ JAR ե˴ޤɬפˤϡΥե򼡤Τ褦 \f2\-m\fP ץȤäƻꤷޤ .LP .nf \f3 @@ -146,20 +131,16 @@ .fl \fP .fi -.RE .LP -既存のマニフェストファイルは改行文字で終わっている必要があります。 マニフェストファイルが改行文字で終わっていない場合、\f3jar\fP はその最後の行を解析しません。 +¸Υޥ˥եȥեϲʸǽäƤɬפޤޥ˥եȥե뤬ʸǽäƤʤȡ\f3jar\fP ϤκǽԤϤޤ .br .LP .br .LP -\f3注:\ \fPコマンド行に \f2cmf\fP ではなく \f2cfm\fP が指定された jar コマンド (m と \-f オプションの順番を逆にする) の場合、\f3jar\fP コマンド行にまず JAR アーカイブの名前を指定し、続いてマニフェストファイルの名前を指定する必要があります。 次に例を示します。 -.RS 3 - -.LP +\f3:\ \fPޥɹԤ \f2cmf\fP ǤϤʤ \f2cfm\fP ꤵ줿 jar ޥ (m \-f ץν֤դˤ) ξ硢\f3jar\fP ޥɹԤˤޤ JAR ֤̾ꤷ³ƥޥ˥եȥե̾ꤹɬפޤ 򼨤ޤ .nf \f3 .fl @@ -167,15 +148,11 @@ .fl \fP .fi -.RE .LP -マニフェストは、RFC822 ASCII 形式で規定されたテキスト形式であるため、マニフェストファイルの内容を簡単に表示および編集できます。 +ޥ˥եȤϡRFC822 ASCII ǵꤵ줿ƥȷǤ뤿ᡢޥ˥եȥեƤñɽԽǤޤ .LP -JAR ファイルからファイルを抽出する場合は、\f2x\fP を使用します。 -.LP -.RS 3 - +JAR ե뤫եФϡ \f2x\fP Ѥޤ .LP .nf \f3 @@ -184,14 +161,10 @@ .fl \fP .fi -.RE .LP .LP -jar ファイルから個別のファイルを抽出する場合は、そのファイル名を指定します。 -.LP -.RS 3 - +jar ե뤫̤ΥեФϡΥե̾ꤷޤ .LP .nf \f3 @@ -200,18 +173,14 @@ .fl \fP .fi -.RE .LP .LP -JDK のバージョン 1.3 以降から、\f2jar\fP ユーティリティーで +JDK ΥС 1.3 ʹߤ顢\f2jar\fP 桼ƥƥ .na \f2JarIndex\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex がサポートされています。 JarIndex を使用すると、アプリケーションのクラスローダーで JAR ファイルからクラスがロードされるときの効率が向上します。アプリケーションまたはアプレットが複数の JAR ファイルにバンドルされている場合は、クラスがロードされるときに、必要な JAR ファイル以外のダウンロードおよびオープンは行われません。このパフォーマンスの最適化は、新しい \f2\-i\fP オプションを指定して \f2jar\fP を実行すると有効になります。このオプションを使うと、指定した JAR メインファイルとそのメインファイルが依存しているすべての JAR ファイルについて、パッケージ位置情報が生成されます。 メインファイルが依存している JAR ファイルは、JAR メインファイルのマニフェストの \f2Class\-Path\fP 属性に指定しておく必要があります。 -.LP -.RS 3 - +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR_Index ݡȤƤޤ JarIndex ѤȡץꥱΥ饹 JAR ե뤫饯饹ɤȤθΨ夷ޤץꥱޤϥץåȤʣ JAR ե˥Хɥ뤵Ƥϡ饹ɤȤˡɬפ JAR եʳΥɤӥץϹԤޤ󡣤Υѥեޥ󥹤κŬϡ \f2\-i\fP ץꤷ \f2jar\fP ¹ԤͭˤʤޤΥץȤȡꤷ JAR ᥤեȡΥᥤե뤬¸Ƥ뤹٤Ƥ JAR եˤĤơѥå־ޤᥤե뤬¸Ƥ JAR եϡJAR ᥤեΥޥ˥եȤ \f2Class\-Path\fP °˻ꤷƤɬפޤ .LP .nf \f3 @@ -220,52 +189,42 @@ .fl \fP .fi -.RE .LP .LP -この例では、\f2INDEX.LIST\fP ファイルが \f2main.jar\fP の \f2META\-INF\fP ディレクトリに挿入されます。 +Ǥϡ \f2INDEX.LIST\fP ե뤬 \f2main.jar\fP \f2META\-INF\fP ǥ쥯ȥޤ .br .br -このファイルに格納されている情報を使用して、アプリケーションのクラスローダーは、効率的にクラスをロードします。 インデックスファイルに位置情報を格納する方法の詳細は、 「\f2JarIndex\fP 仕様」を参照してください。 +Υե˳ǼƤѤơץꥱΥ饹ϡΨŪ˥饹ɤޤǥåե˰־Ǽˡξܺ٤ϡJarIndex ͡פ򻲾ȤƤ .br .br -ディレクトリをコピーするには、まず \f2dir1\fP 内のファイルを圧縮して標準出力に出力し、続いて標準入力から \f2dir2\fP に抽出します (両方の \f2jar\fP コマンドから \f2\-f\fP オプションを省く)。 次に例を示します。 -.LP -.RS 3 - +ǥ쥯ȥ򥳥ԡˤϡޤ \f2dir1\fP Υե򰵽̤ \f2stdout\fP ˽Ϥ³ \f2stdin\fP Ф \f2dir2\fP ˽Ϥޤ (\f2\-f\fP ץϤɤ \f2jar\fP ޥɤǤά) .LP .nf \f3 .fl -% (cd dir1; jar c .) | (cd dir2; jar x) +% (cd dir1; jar c .)| (cd dir2; jar x) .fl \fP .fi -.RE .LP .LP -\f2jar\fP を使って JAR ファイルや JAR ファイルマニフェストを操作するコマンドサンプルを確認するには、「例」を参照してください。また、「 +\f2jar\fP Ѥ JAR ե JAR ޥ˥եȥե륵ץ륳ޥɤǧϡҤΡפ򻲾ȤƤޤ .na \f2Java Tutorial\fP @ .fi -http://java.sun.com/docs/books/tutorial/jar」の JAR コースも参照してください。 +http://download.oracle.com/javase/tutorial/deployment/jarפ JAR ⻲ȤƤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 c -\f2jarfile\fP の名前で新しいアーカイブファイルを作成するか (\f2f\fP が指定されている場合)、標準出力で作成します (\f2f\fP と \f2jarfile\fP が省略されている場合)。\f2inputfiles\fP で指定されたファイルとディレクトリを、このアーカイブに追加します。 +f ꤵ줿 \f2jarfile\fP Ȥ̾ \f2\fP ֥ե \f2\fP f \f2jarfile\fP ά줿ɸϤ˾Ϥޤ\f2inputfiles\fP ǻꤵ줿եȥǥ쥯ȥ򡢤Υ֤ɲäޤ .TP 3 u -\f2inputfiles\fP で指定されたファイルとディレクトリを追加することにより、既存のファイル \f2jarfile\fP を更新します (\f2f\fP が指定されている場合)。 例を示します。 -.RS 3 - -.LP +f ꤵƤˡ¸ե \f2jarfile\fP \f2Ūǡ\fP \f2inputfiles\fP ˻ꤵ줿եǥ쥯ȥɲäޤ򼨤ޤ .nf \f3 .fl @@ -273,11 +232,7 @@ .fl \fP .fi -.RE -上のコマンドは、ファイル \f2foo.class\fP を既存の JAR ファイル \f2foo.jar\fP に追加します。次の例に示すように、\f2\-u\fP オプションは、マニフェストエントリも更新できます。 -.RS 3 - -.LP +Υޥɤϡե \f2foo.class\fP ¸ JAR ե \f2foo.jar\fP ɲäޤ˼褦ˡ\f2\-u\fP ץϡޥ˥եȥȥ⹹Ǥޤ .nf \f3 .fl @@ -285,20 +240,16 @@ .fl \fP .fi -.RE -\f2foo.jar\fP マニフェストをマニフェスト内の \f2name:value\fP ペアで更新します。 +\f2foo.jar\fP ޥ˥եȤޥ˥ե \f2name:value\fP ڥǹޤ .TP 3 x -\f2jarfile\fP から (\f2f\fP が指定されている場合)、または標準入力から (\f2f\fP と \f2jarfile\fP が省略されている場合)、ファイルとディレクトリを抽出します。\f2inputfiles\fP が指定されている場合は、その指定したファイルとディレクトリだけが抽出されます。指定されていなければ、すべてのファイルとディレクトリが抽出されます。抽出されたファイルの日時は、アーカイブ内で設定されたものです。 +f ꤵ줿 \f2jarfile\fP \f2\fP \f2f\fP \f2jarfile\fP ά줿ɸϤ顢եǥ쥯ȥФޤ\f2inputfiles\fP ꤵƤϡλꤷեȥǥ쥯ȥФޤꤵƤʤС٤ƤΥեȥǥ쥯ȥ꤬ФޤФ줿եϡꤵ줿ΤǤ .TP 3 t -\f2jarfile\fP から (\f2f\fP が指定されている場合)、または標準入力から (\f2f\fP と \f2jarfile\fP が省略されている場合)、内容を表形式で一覧表示します。\f2inputfiles\fP が指定されている場合は、その指定したファイルとディレクトリだけが一覧表示されます。指定されていなければ、すべてのファイルとディレクトリが一覧表示されます。 +f ꤵ줿 \f2jarfile\fP \f2\fP \f2f\fP \f2jarfile\fP ά줿ɸϤ顢ܼɽޤ\f2inputfiles\fP ꤵƤϡλꤷեȥǥ쥯ȥɽޤꤵƤʤС٤ƤΥեȥǥ쥯ȥ꤬ɽޤ .TP 3 i -指定された \f2jarfile\fP と、それに依存する JAR ファイルについて、インデックス情報を生成します。例を示します。 -.RS 3 - -.LP +ꤵ줿 \f2jarfile\fP ȡ˰¸ JAR եˤĤơǥåޤȤС .nf \f3 .fl @@ -306,29 +257,25 @@ .fl \fP .fi -.RE .LP -上のコマンドは、\f2foo.jar\fP 内に \f2INDEX.LIST\fP ファイルを生成します。 このファイルには、\f2foo.jar\fP と、\f2foo.jar\fP の \f2Class\-Path\fP 属性に指定されたすべての JAR ファイルに入っている各パッケージの位置情報が書き込まれています。 インデックスの例を参照してください。 +Υޥɤϡ\f2foo.jar\fP \f2INDEX.LIST\fP եޤ Υեˤϡ\f2foo.jar\fP ȡ\f2foo.jar\fP \f2Class\-Path\fP °˻ꤵ줿٤Ƥ JAR եäƤƥѥåΰ־󤬽񤭹ޤƤޤǥå򻲾ȤƤ .TP 3 f -作成 (\f2c\fP)、更新 (\f2u\fP)、抽出 (\f2x\fP)、インデックス追加 (\f2i\fP)、または表示 (\f2t\fP) 対象のファイル \f2jarfile\fP を指定します。\f2f\fP オプションとファイル名 \f2jarfile\fP とがペアになります。 つまり、片方を記述すれば、もう一方も記述する必要があります。\f2f\fP と \f2jarfile\fP を省略すると、標準入力から JAR ファイル名が使用されたり (x および t の場合)、標準出力に jar ファイルが 送信されたりします (c および u の場合)。 +γƽоݤȤʤե \f2jarfile\fP ꤷޤ (\f2c\fP) (\f2u\fP) (\f2x\fP)ǥåɲ (\f2i\fP)ޤɽ (\f2t\fP)\f2f\fP ץȥե̾ \f2jarfile\fP Ȥڥˤʤޤ Ĥޤꡢ򵭽ҤС⤦⵭ҤɬפޤOmitting \f2f\fP \f2jarfile\fP άȡx t ξ \f2ɸ\fP JAR ե̾졢c u ξ \f2ɸ\fP JAR ե뤬ޤ .TP 3 v -詳細な出力を標準出力に生成します。あとで例を示します。 +ܺ٤ʽϤɸϤޤȤ򼨤ޤ .TP 3 0 -(ゼロ) ZIP による圧縮を使用せずに、保存します。 +() ZIP ˤ밵̤Ѥˡ¸ޤ .TP 3 M -マニフェストファイルエントリを作成しません (c および u の場合)。 または、マニフェストファイルエントリが存在する場合にそれを削除します (u の場合)。 +ޥ˥եȥե륨ȥޤ (c u ξ)ޤϡޥ˥եȥե륨ȥ꤬¸ߤˤޤ (u ξ) .TP 3 m -\f2META\-INF/MANIFEST.MF\fP のファイルで指定したマニフェストファイル \f2manifest\fP の \f2name :value\fP の属性ペアを組み込みます。すでに同じ名前で存在しない限り、 \f2jar\fP はその \f2name\ :\ value\fP ペアを追加します。同じ名前で存在する場合は、\f2jar\fP はその値を更新します。 +\f2META\-INF/MANIFEST.MF\fP Υեǻꤷޥ˥եȥե \f2manifest\fP \f2name : value\fP °ڥȤ߹ߤޤ \f2jar\fP ϡǤƱ̾¸ߤʤꡢ \f2name:value\fP ڥɲäޤƱ̾¸ߤ硢 \f2jar\fP Ϥͤ򹹿ޤ .LP -コマンド行で、\f3m\fP と \f3f\fP の文字は、\f2manifest\fP と \f2jarfile\fP の入力順序と同じ順序で記述する必要があります。たとえば、次のようにして使います。 -.RS 3 - -.LP +ޥɹԤǡ\f3m\fP \f3f\fP ʸϡ\f2manifest\fP \f2jarfile\fP ϽƱǵҤɬפޤȤСΤ褦ˤƻȤޤ .nf \f3 .fl @@ -336,22 +283,17 @@ .fl \fP .fi -.RE -デフォルトのマニフェストには含まれないマニフェストに、特別な目的の \f2name\ :\ value\fP の属性ペアを追加できます。たとえば、ベンダー情報、バージョン情報、パッケージシーリング、または JAR にバンドルされたアプリケーションを実行するための属性を追加できます。\f4\-m\fP オプションの使用例については、「Java Tutorial」 にある「 +ǥեȤΥޥ˥եȤˤϴޤޤʤޥ˥եȤˡ̤Ū \f2name\ :\ value\fP °ڥɲäǤޤȤС٥󡢥С󡢥ѥå󥰡ޤ JAR ˥Хɥ뤵줿ץꥱ¹Ԥ뤿°ɲäǤޤJava TutorialפΡ .na \f2JAR Files\fP @ .fi -http://java.sun.com/docs/books/tutorial/jar/」コースを参照してください。 -.LP +http://download.oracle.com/javase/tutorial/deployment/jar/ץ򻲾Ȥ \f4\-m\fP ץλǧƤ .TP 3 e -実行可能 JAR ファイル内にバンドルされたスタンドアロンアプリケーションのアプリケーションエントリポイントとして、\f2entrypoint\fP を設定します。このオプションを使用すると、マニフェストファイル内の \f2Main\-Class\fP 属性値が作成または上書きされます。 このオプションは、JAR ファイルの作成中または更新中に使用できます。 このオプションを使えば、マニフェストファイルを編集または作成することなしに、アプリケーションのエントリポイントを指定できます。 +¹Բǽ JAR ե˥Хɥ뤵줿ɥ󥢥ץꥱΥץꥱ󥨥ȥݥȤȤơ\f2entrypoint\fP ꤷޤΥץѤȡޥ˥եȥե \f2Main\-Class\fP °ͤޤϾ񤭤ޤΥץϡJAR եκޤϹ˻ѤǤޤΥץȤСޥ˥եȥեԽޤϺ뤳ȤʤˡץꥱΥȥݥȤǤޤ .br .br -たとえば、次のコマンドは \f2Main.jar\fP を作成しますが、その際、マニフェストファイル内の \f2Main\-Class\fP 属性値は \f2Main\fP に設定されます。 -.RS 3 - -.LP +ȤСΥޥɤǤ \f2Main.jar\fP ޤκݡޥ˥ե \f2Main\-Class\fP °ͤ \f2Main\fP ꤵޤ .nf \f3 .fl @@ -359,12 +301,8 @@ .fl \fP .fi -.RE .LP -次のコマンドを実行すると java ランタイムから直接このアプリケーションを起動できます。 -.RS 3 - -.LP +Υޥɤ¹Ԥ java 󥿥फľܤΥץꥱưǤޤ .nf \f3 .fl @@ -372,11 +310,7 @@ .fl \fP .fi -.RE -エントリポイントのクラス名が特定のパッケージ内に存在している場合、エントリポイントの区切り文字としてドット (「.」) またはスラッシュ (「/」) を使用できます。たとえば、\f2Main.class\fP が \f2foo\fP という名前のパッケージ内に存在している場合、次のようにしてエントリポイントを指定できます。 -.RS 3 - -.LP +ѥå˥ȥݥȤΥ饹̾ޤޤƤ硢ɥå (.) å (/) Τ줫ʸ򤽤ζڤʸȤƻѤǤޤȤС \f2Main.class\fP \f2foo\fP Ȥ̾Υѥå˴ޤޤƤ硢ȥݥȤϼΤ褦ˤƻǤޤ .nf \f3 .fl @@ -384,11 +318,7 @@ .fl \fP .fi -.RE -または -.RS 3 - -.LP +ޤ .nf \f3 .fl @@ -396,18 +326,14 @@ .fl \fP .fi -.RE -\f3注:\ \fP \f2\-m\fP オプションと \f2\-e\fP オプションの両方を同時に指定する場合、指定されたマニフェストにも \f2Main\-Class\fP 属性が含まれていると、\f2Main.class\fP の指定があいまいになってエラーが発生し、JAR の作成または更新処理が異常終了します。 +\f3:\ \fP \f2\-m\fP ץ \f2\-e\fP ץξƱ˻ꤷ硢ꤷޥ˥եȤˤ \f2Main\-Class\fP °ޤޤƤС \f2Main.class\fP λ꤬ޤˤʤäƥ顼ȯJAR κ乹۾ェλޤ .LP .TP 3 \-C \ dir -\f2jar\fP コマンドの実行中に後続の \f2inputfiles\fP 引数を処理するときに、一時的にディレクトリを変更します (\f2cd\fP\ \f2dir\fP)。この処理は、UNIX の \f2tar\fP ユーティリティーの \f2\-C\fP オプションの機能に類似しています。 +\f2jar\fP ޥɤμ¹˸³ \f2inputfiles\fP ȤˡŪ˥ǥ쥯ȥѹޤ (cd \f2dir\fP)νϡUNIX \f2tar\fP 桼ƥƥ \f2\-C\fP ץεǽƤޤ .br .br -たとえば、次のコマンドは、\f2classes\fP ディレクトリに移動し、そのディレクトリから \f2bar.class\fP を \f2foo.jar\fP に追加します。 -.RS 3 - -.LP +ȤСΥޥɤϡ\f2classes\fP ǥ쥯ȥ˰ưΥǥ쥯ȥ꤫ \f2bar.class\fP \f2foo.jar\fP ɲäޤ .nf \f3 .fl @@ -415,23 +341,15 @@ .fl \fP .fi -.RE -次のコマンドでは、\f2classes\fP ディレクトリに移動し、\f2classes\fP ディレクトリ内のすべてのファイルを \f2foo.jar\fP に追加します (jar ファイルには classes ディレクトリを作成しません)。 次に元のディレクトリに戻ってから、\f2bin\fP ディレクトリに移動し、\f2xyz.class\fP を \f2foo.jar\fP に追加します。 -.RS 3 - -.LP +ΥޥɤǤϡ\f2classes\fP ǥ쥯ȥ˰ư\f2classes\fP ǥ쥯ȥΤ٤ƤΥե \f2foo.jar\fP ɲäޤ (jar եˤ classes ǥ쥯ȥޤ)˸Υǥ쥯ȥäƤ顢\f2bin\fP ǥ쥯ȥ˰ư\f2xyz.class\fP \f2foo.jar\fP ɲäޤ .nf \f3 .fl -jar uf foo.jar \-C classes . \-C bin xyz.class +jar uf foo.jar \-C classes .\-C bin xyz.class .fl \fP .fi -.RE -\f2classes\fP に \f2bar1\fP と \f2bar2\fP が保持されている場合、\f2jar tf foo.jar\fP を使用すると、JAR ファイルには次の要素が含められます。 -.RS 3 - -.LP +\f2classes\fP ˥ե \f2bar1\fP \f2bar2\fP ǼƤˡ \f2jar tf foo.jar\fP ѤȤ JAR եȤ򡢼˼ޤ .nf \f3 .fl @@ -447,30 +365,24 @@ .fl \fP .fi -.RE .LP .TP 3 \-Joption -Java 実行環境に \f2option\fP を渡します。 \f2option\fP には、「Java アプリケーション起動ツール」のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f4\-J\-Xmx48M\fP と指定すると、最大メモリーは 48M バイトに設定されます。\f2\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ¹ԴĶ \f2option\fP Ϥޤ \f2option\fP ˤϡJava ץꥱưġפΥե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС \f4\-J\-Xmx48M\fP Ȼꤹȡ꡼ 48M ХȤꤵޤ\f2\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.SH "コマンド行引数ファイル" -.LP - +.SH "ޥɹ԰ե" .LP -jar のコマンド行を短くしたり簡潔にしたりするために、\f2jar\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) を含む 1 つ以上のファイルを指定することができます。これにより、任意の長さの jar コマンドを作成でき、オペレーティングシステムによるコマンド行の制限から解放されます。 +jar ΥޥɹԤûʷˤꤹ뤿ˡjar ޥɤФ (\-J ץ) ޤ 1 İʾ \f2ե\fP ꤹ뤳Ȥ \f2Ǥޤ\fP ˤꡢǤդĹ jar ޥɤǤڥ졼ƥ󥰥ƥˤ륳ޥɹԤ¤ޤ .LP -引数ファイルにはオプションとファイル名を含めることができます。ファイル内の各引数は、スペースまたは改行で区切ります。引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。 引数ファイルの位置から見た相対パスではありません。ワイルドカード (*) は、通常ならばオペレーティングシステムシェルによってあらゆる文字に解釈されますが、この場合はそのようには解釈されません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 +եˤϥץȥե̾ޤ뤳ȤǤޤեγưϡڡޤϲԤǶڤޤեΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣥磻ɥ (*) ϡ̾ʤХڥ졼ƥ󥰥ƥॷˤäƤʸ˲ᤵޤξϤΤ褦ˤϲᤵޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ\f2\-J\fP ץ⥵ݡȤƤޤ󡣤ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ .LP .LP -\f2jar\fP を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。\f2jar\fP は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 +\f2jar\fP ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤ \f2jar\fP ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ .br .br -次の例では、\f2find\fP コマンドから出力されたファイル名を \f2classes.list\fP 内に格納しています。 -.LP -.RS 3 - +ǡ \f2classes.list\fP ˤϡ \f2find\fP ޥɤˤäƽϤ줿ե̾Ǽޤ .LP .nf \f3 @@ -478,14 +390,10 @@ % find \fP\f3.\fP \-name '*.class' \-print > classes.list .fl .fi -.RE .LP .LP -その後、引数ファイル構文を使って \f2jar\fP にリストを渡すと、\f2Classes.list\fP で \f2jar\fP コマンドを実行できます。 -.LP -.RS 3 - +ˡե빽ʸѤ \f2classes.list\fP jar ϤȤǡ \f2Υꥹ\fP Ф \f2jar\fP ޥɤ¹ԤǤޤ .LP .nf \f3 @@ -494,13 +402,9 @@ .fl \fP .fi -.RE .LP -引数ファイルはパスを指定できますが、相対パスが記述された引数ファイル内のすべてのファイル名は、渡されたパスに対して相対的ではなく、現在の作業ディレクトリに相対的となります。 次に例を示します。 -.RS 3 - -.LP +եϥѥǤޤХѥҤ줿եΤ٤ƤΥե̾ϡϤ줿ѥФŪǤϤʤߤκȥǥ쥯ȥŪȤʤޤϤǤ .nf \f3 .fl @@ -508,20 +412,14 @@ .fl \fP .fi -.RE .LP .LP .LP -.SH "例" -.LP - +.SH "" .LP -特定のディレクトリ内のすべてのファイルをアーカイブに追加する (そのアーカイブがすでに存在する場合は、その内容を上書きする) には、次のようにします。\f2\-v\fP オプションを使用して情報を詳細に列挙するように指定すると、サイズや最新の更新日など、アーカイブ内のファイルについての詳細情報が表示されます。 -.RS 3 - -.LP +Υǥ쥯ȥΤ٤ƤΥե򥢡֤ɲä (Υ֤Ǥ¸ߤϡƤ񤭤) ˤϡΤ褦ˤޤ\f2\-v\fP ץѤƾܺ٤󤹤褦˻ꤹȡǿιʤɡΥեˤĤƤξܺپɽޤ .nf \f3 .fl @@ -557,13 +455,9 @@ .fl \fP .fi -.RE .LP -すでに画像、オーディオファイル、およびクラス用のサブディレクトリに分けている場合は、これらを単一の JAR ファイルに結合できます。 -.RS 3 - -.LP +Ǥ˲ǥե롢ӥ饹ѤΥ֥ǥ쥯ȥʬƤϡñ JAR ե˷Ǥޤ .nf \f3 .fl @@ -607,13 +501,9 @@ .fl \fP .fi -.RE .LP -JAR ファイルのエントリ名を表示するには、「\f2t\fP」オプションを使用します。 -.RS 3 - -.LP +JAR եΥȥ̾ɽˤϡ\f2t\fPץץѤޤ .nf \f3 .fl @@ -641,28 +531,24 @@ .fl \fP .fi -.RE .LP .LP -クラスロードを高速にするためにインデックスファイルを JAR ファイルに追加するには、「\f2i\fP」オプションを使用します。 +饹ɤ®ˤ뤿˥ǥåե JAR եɲäˤϡ\f2i\fPץץѤޤ .br .br -例: +: .br .LP -.RS 3 - -.LP -たとえば、株取引アプリケーション用の相互依存したクラスを、\f2main.jar\fP、\f2buy.jar\fP、および \f2sell.jar\fP という 3 つの JAR ファイルに分割したとします。 +ȤСץꥱ¸Ƥ륯饹\f2main.jar\fP\f2buy.jar\fP \f2sell.jar\fP Ȥ 3 Ĥ JAR եʬ䤷Ȥޤ .br .LP .br .LP -\f2main.jar\fP のマニフェストの \f2Class\-path\fP 属性に次のように指定した場合、 +\f2main.jar\fP Υޥ˥եȤ \f2Class\-path\fP °˼Τ褦˻ꤷ硢 .nf \f3 .fl @@ -672,7 +558,7 @@ .fi .LP -\f2\-i\fP オプションを使用すれば、アプリケーションのクラスの 読み込みを高速化できます。 +\f2\-i\fP ץѤСץꥱΥ饹 ɤ߹ߤ®Ǥޤ .nf \f3 .fl @@ -682,38 +568,34 @@ .fi .LP -\f2INDEX.LIST\fP ファイルが \f2META\-INF\fP ディレクトリに挿入されます。この結果、アプリケーションのクラスローダーによってクラスまたは リソースの検索が行われるときに、適切な jar ファイルがダウンロードされます。 -.RE -.SH "関連項目" +\f2INDEX.LIST\fP ե뤬 \f2META\-INF\fP ǥ쥯ȥޤη̡ץꥱΥ饹ˤäƥ饹ޤϥ꥽θԤȤˡŬڤ jar ե뤬ɤޤ +.SH "Ϣ" .LP - .LP .na -\f2「JAR ファイルの概要」\fP @ +\f2JAR եγ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/jar/jarGuide.html -.br - +.LP .LP .na -\f2「JAR ファイルの仕様」\fP @ +\f2JAR եλ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html -.br - +.LP +.LP +.na +\f2JarIndex λ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JAR_Index +.LP .LP .na -\f2「Jar インデックス」\fP @ +\f2JAR 塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html#JARIndex -.br - +http://download.oracle.com/javase/tutorial/deployment/jar/index.html .LP -.na -\f2「Jar チュートリアル」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/jar (Java Software の Web サイト内) -.br - .LP -pack200(1) +pack200(1) +.LP + diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jarsigner.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jarsigner.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jarsigner.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,117 +19,1010 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jarsigner 1 "02 Jun 2010" +.TH jarsigner 1 "14 Apr 2011" .LP -.SH "名前" -jarsigner \- JAR 署名および検証ツール -.LP -.RS 3 - +.SH "̾" +jarsigner \- JAR ̾Ӹڥġ .LP .LP -Java ARchive (JAR) ファイルの署名を生成し、署名付き JAR ファイルの署名を検証します。 +Java ARchive (JAR) եν̾̾դ JAR եν̾򸡾ڤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl \fP\f3jarsigner\fP [ options ] jar\-file alias .fl -\f3jarsigner\fP \-verify [ options ] jar\-file +\f3jarsigner\fP \-verify [ options ] jar\-file [alias...] .fl .fi .LP -.SH "説明" .LP - +jarsigner \-verify ޥɤǤϡJAR ե̾ΤȤ 0 İʾΥȥ̾Ǥޤȥ̾ꤵ줿硢jarsigner ϡJAR եγƽ̾դƥƥθڤ˻Ѥ񤬥ȥ̾Τ줫˰פ뤳Ȥåޤ̾ϡ\-keystore ǻꤵ줿ȥޤϥǥեȤΥȥޤ +.LP +.SH "" .LP .LP -\f3jarsigner\fP ツールは、次の 2 つの目的で使用します。 +\f3jarsigner\fP ġϡ 2 ĤŪǻѤޤ .LP .RS 3 .TP 3 1. -Java ARchive (JAR) ファイルに署名を付ける +Java ARchive (JAR) ե˽̾դ .TP 3 2. -署名付き JAR ファイルの署名と整合性を検証する +̾դ JAR եν̾򸡾ڤ +.RE + +.LP +.LP +JAR ǽȤȡ饹ե롢᡼ɡӤ¾ΥǥǡñΥե˥ѥåǤΤǡե®ưפۤǤޤȯԤϡjar(1) Ȥ̾ΥġȤä JAR եǤޤŪʴС٤Ƥ ZIP ե JAR եȤߤʤȤǤޤ \f3jar\fP ˤäƺ줿 JAR ե롢ޤ \f3jarsigner\fP ˤäƽ줿 JAR եˤϡMETA\-INF/MANIFEST.MF ե뤬ޤޤƤޤ +.LP +.LP +֥ǥ̾פϡʤ餫Υǡ (ֽ̾פоݤȤʤǡ) ȡƥƥ (͡Ҥʤ) Ȥ˴ŤƷ׻ӥåǤ񤭤ν̾Ʊ͡ǥ̾ˤ¿ޤ +.LP +.RS 3 +.TP 2 +o +̾˻Ȥ줿ФˤʤȤäƷ׻ԤȤǡǥ̾ʪɤ򸡾ڤǤ +.TP 2 +o +¾ͤΤʤ¤ꡢǥ̾ε¤ԲǽǤ +.TP 2 +o +ǥ̾ϡν̾դǡоݤȤΤǤꡢۤΥǡν̾ȤƵǽ뤳ȤϤʤ +.TP 2 +o +̾դΥǡѹǤʤ ǡѹ줿ϡν̾ˤäƥǡʪǤϤʤȤڤ .RE .LP .LP -JAR 機能を使うと、クラスファイル、イメージ、サウンド、およびその他のデジタルデータを単一のファイルにパッケージ化できるので、ファイルを迅速かつ容易に配布できます。開発者は、jar(1) という名前のツールを使って JAR ファイルを作成できます。技術的な観点から言えば、すべての ZIP ファイルも JAR ファイルとみなすことができます。 ただし、\f3jar\fP によって作成された JAR ファイル、または \f3jarsigner\fP によって処理された JAR ファイルには、META\-INF/MANIFEST.MF ファイルが含まれています。 +եФƥƥƥν̾ˤϡޤƥƥϡΥƥƥ˴ϢΥڥɬפޤޤǧڤ 1 ĤޤʣξɬפǤ־פȤϡ륨ƥƥȯԤǥ̾դʸǡ̤ʥƥƥθͤǤ뤳ȤƤޤ +.LP +.LP +\f3jarsigner\fP ϡ֥ȥפ˴ޤޤ븰ȾȤäơJAR եΥǥ̾ޤȥϡȡ˴Ϣդ줿 X.509 󤬼줿ǡ١Ǥȥκȴˤϡkeytool(1) 桼ƥƥȤޤ +.LP +.LP +\f3jarsigner\fP ϡƥƥȤäƽ̾ޤ̾դ JAR եˤäˡեν̾˻Ѥ줿бФ롢ȥξΥԡޤޤƤޤ\f3jarsigner\fP ϡ̾դ JAR ե (֥̾åե) ˤѤƤΥեΥǥ̾򸡾ڤǤޤ +.LP +.LP +\f3jarsigner\fP ϥॹפޤ̾Τǡƥǥץ (Java Plug\-in ޤ) JAR ե뤬̾ͭ˽̾줿ɤåǤޤˡAPI Ѥȡץꥱ󤫤饿ॹ׾Ǥޤ +.LP +.LP +Ǥϡ\f3jarsigner\fP ǽ̾ǤΤϡJDK jar(1) ġǺ줿 JAR ե롢ޤ ZIP եǤJAR ե ZIP եƱǤJAR եˤ META\-INF/MANIFEST.MF ե뤬ޤޤƤۤʤޤMETA\-INF/MANIFEST.MF եϡ\f3jarsigner\fP ZIP ե˽̾դȤ˼ưŪ˺ޤ +.LP +.LP +ǥեȤǤϡ\f3jarsigner\fP JAR (ޤ ZIP) եˡֽ̾פդޤ̾դ JAR եָڡפϡ \f2\-verify\fP ץꤷޤ +.LP +.SS +ȥ̾ +.LP +.LP +ȥΤ٤ƤΥȥϡդΡ̾פ𤷤ƥޤ +.LP +.LP +\f3jarsigner\fP Ȥä JAR ե˽̾դȤϡ̾ɬפޤ७ȥȥ̾ꤹɬפޤȤСϡworking ǥ쥯ȥ mystore Ȥ̾Υȥ˴ޤޤ̾ duke ˴Ϣդ줿ȤäơMyJARFile.jar Ȥ̾ JAR ե˽̾դޤϥեϻꤵƤʤΤǡMyJARFile.jar Ͻ̾դ JAR եˤäƾ񤭤ޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-storepass myspass +.fl + \-keypass dukekeypasswd MyJARFile.jar duke +.fl +\fP +.fi + +.LP +.LP +ȥϥѥɤݸƤΤǡȥΥѥ (Ǥ mypass) ꤹɬפޤޥɹԤǥȥΥѥɤꤷʤȡѥɤϤޤƱͤˡ⥭ȥǥѥɤˤäݸƤ뤿ᡢΥѥ (Ǥ dukekeypasswd) ꤹɬפޤ ޥɹԤΥѥɤꤷƤʤޤꤷѥȤ¸ƤѥɤȰäƤˤϡΥѥɤϤޤ +.LP +.SS +ȥξ +.LP +.LP +\f3jarsigner\fP ˤϡ \f2Ѥ륭ȥ URL ꤹ \-keystore\fP ޤȥ \f2\fP ǥեȤǡ \f2user.home\fP ƥץѥƥǷޤ桼Υۡǥ쥯ȥ .keystore Ȥ̾Υե˳ǼޤSolaris ƥξ硢 \f2user.home\fP ΥǥեȤϥ桼 home ǥ쥯ȥˤʤޤ +.LP +.LP +\-keystore ץ \f2˻ꤷ\fP ϥȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤդƤURL Ȥ \f2NONE\fP ꤵƤϡnull Υȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤޤ \f2NONE\fP ϡ \f2KeyStore\fP ե١ǤϤʤ硢ȤФ줬ϡɥȡǥХ¸ߤƤʤɤ˻ꤹ٤Ǥ +.LP +.SS +ȥμ +.LP +.LP +java.security ѥå \f2󶡤Ƥ\fP KeyStore 饹 \f2ϡ\fP ȥξؤΥӾѹԤΡΤ줿󥿥ե󶡤ޤȥθȤƤϡ줾줬Ρ֥ספΥȥоݤȤʣΰۤʤ¸߲ǽǤ +.LP +.LP +ߡȥμѤΤȤơ\f3keytool\fP \f3jarsigner\fP 2 ĤΥޥɹԥġȡ\f3Policy Tool\fP Ȥ̾ 1 Ĥ GUI ١Υġ뤬ޤKeyStore \f2\fP public ȤƻѲǽʤΤǡJava 2 SDK 桼 KeyStore ȤäۤΥƥץꥱǤޤ +.LP +.LP +ȥˤϡSun 󶡤Ȥ߹ߤΥǥեȤμޤϡJKS Ȥ̾ȼΥȥ () ѤΤǡȥեȤƼƤޤμǤϡġϸ̤Υѥɤˤäݸ졢ȥΤ (Ȥ̤) ѥɤˤäݸޤ .LP .LP -「デジタル署名」は、なんらかのデータ (「署名」の対象となるデータ) と、エンティティー (人、会社など) の非公開鍵とに基づいて計算されるビット列です。手書きの署名同様、デジタル署名には多くの利点があります。 +ȥμϡץХ١ǤŪˤϡ \f2KeyStore\fP ˤä󶡤륢ץꥱ󥤥󥿥ե֥ӥץХ󥿥ե (SPI) ˴ŤƼޤĤޤꡢбݥ饹 \f2KeystoreSpi\fP Ʊ \f2java.security\fP ѥå¸ߤƤꡢΥ饹ˤäơ֥ץХפɬפΤ륵ӥץХ󥿥ե᥽åɤƤޤǡ֥ץХפȤϡJava Security API ˤäƥǽʥӥΥ֥åȤФθ󶡤ѥåޤϥѥåνΤȤǤäơȥμ󶡤ˤϡ +.na +\f2Java Ź沽ƥ㡼ѥץХμˡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlƤ褦ˡ饤Ȥ֥ץХפKeystoreSpi ֥饹μ󶡤ɬפޤ +.LP +.LP +ץꥱǤϡKeyStore 饹󶡤 getInstance եȥ᥽åɤȤȤǡޤޤʥץХۤʤ֥ספΥȥ \f2\fP ǤޤȥΥפϡȥγǼȥǡȤȤˡȥȥȥΤݸ뤿˻Ȥ륢르ꥺޤۤʤ륿פΥȥμˤϡߴϤޤ +.LP +.LP +\f3keytool\fP ϡǤդΥե١Υȥưޤkeytool ϡޥɹԤϤ줿ȥξե̾Ȥư FileInputStream ѴơFileInputStream 饭ȥξɤޤ\f3jarsigner\fP ġ \f3policytool\fP ġϡURL ǻǽǤդξ꤫饭ȥɤ߹ळȤǤޤ +.LP +.LP +\f3jarsigner\fP \f3keytool\fP ξ硢\f2\-storetype\fP ץȤäƥޥɹԤǥȥΥפǤޤ\f3Policy Tool\fP ξϡ[Edit] ˥塼 [Change Keystore] ޥɤȤäƥȥΥפǤޤ +.LP +.LP +桼ȥΥפŪ˻ꤷʤä硢ġϡñ˥ƥץѥƥեǻꤵ줿 \f2keystore.type\fP ץѥƥͤ˴Ťơȥμ򤷤ޤΥƥץѥƥե \f2java.security\fP ȸƤФ졢SDK ƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ¸ߤƤޤǡ\f2java.home\fP ϼ¹ԻĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment Υȥåץ٥ǥ쥯ȥ) Ǥ +.LP +.LP +ƥġϡ \f2keystore.type\fP ͤͤǻꤵ줿פΥȥƤץХĤޤǡߥ󥹥ȡ뤵Ƥ뤹٤ƤΥץХĴ٤ޤŪΥץХĤȡΥץХΥȥμȤޤ +.LP +.LP +\f2KeyStore\fP 饹Ƥ static ᥽å \f2getDefaultType\fP Ѥȡץꥱ䥢ץåȤ \f2keystore.type\fP ץѥƥͤǤޤΥɤϡǥեȤΥȥ \f2(keystore.type ץѥƥǻꤵ줿)\fP Υ󥹥󥹤ޤ +.LP +.nf +\f3 +.fl + KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); +.fl +\fP +.fi + +.LP +.LP +ǥեȤΥȥפ JKS (Sun 󶡤ȼΥפΥȥμ) ǤϡƥץѥƥեμιԤˤäƻꤵƤޤ +.LP +.nf +\f3 +.fl + keystore.type=jks +.fl +\fP +.fi + +.LP +.LP +: ȥΥפλǤϡʸȾʸ϶̤ޤ󡣤ȤСJKS jks ƱΤȤưޤ +.LP +.LP +ƥġǥǥեȰʳΥȥμѤˤϡιԤѹ̤ΥȥΥפꤷޤȤСpkcs12 ȸƤФ륿פΥȥμ󶡤ƤץХѥåѤˤϡιԤ򼡤Τ褦ѹޤ +.LP +.nf +\f3 +.fl + keystore.type=pkcs12 +.fl +\fP +.fi + +.LP +.LP +PKCS#11 ץХѥåѤ硢ξܺ٤ˤĤƤϡJava PKCS#11 Reference Guideפˤ +.na +\f2KeyTool and JarSigner\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSigner򻲾ȤƤ +.LP +.SS +ݡȤ륢르ꥺ +.LP +.LP +\f3jarsigner\fP ϥǥեȤǡΤ줫Ѥ JAR ե˽̾ޤ .LP .RS 3 .TP 2 o -署名の生成に使われた非公開鍵と対になる公開鍵を使って計算を行うことで、デジタル署名が本物かどうかを検証できる +SHA1 ȥ르ꥺȤä DSA (ǥ̾르ꥺ) +.TP 2 +o +SHA256 ȥ르ꥺѤ RSA 르ꥺ +.TP 2 +o +SHA256 ECDSA (ʱ߶ǥ̾르ꥺ) Ѥ EC (ʱ߶) Ź르ꥺ +.RE + +.LP +.LP +Ūˤϡ̾Ԥθ DSA Ǥ硢\f3jarsigner\fP SHA1withDSA 르ꥺȤä JAR ե˽̾դޤ̾Ԥθ RSA Ǥ硢\f3jarsigner\fP SHA256withRSA 르ꥺȤä JAR ե˽̾դޤ̾Ԥθ EC Ǥ硢\f3jarsigner\fP SHA256withECDSA 르ꥺȤä JAR ե˽̾դޤ +.LP +.LP +ΥǥեȤν̾르ꥺϡ\f2\-sigalg\fP ץȤäƥС饤ɤǤޤ +.LP +.SS +̾դ JAR ե +.LP +.LP +\f3jarsigner\fP Ȥä JAR ե˽̾դ硢Ϥ̾դ JAR ե JAR եƱǤ 2 Ĥɲåե뤬 META\-INF ǥ쥯ȥ֤ۤʤޤ +.LP +.RS 3 +.TP 2 +o +.SF ĥҤդ̾ե +.TP 2 +o +.DSA.RSAޤ .EC ĥҤ˻Ľ֥̾åե +.RE + +.LP +.LP + 2 ĤΥեΥ١ե̾ϡ \f2\-sigFile\fP ץͤޤȤСΤ褦˥ץꤷȤޤ +.LP +.nf +\f3 +.fl +\-sigFile MKSIGN +.fl +\fP +.fi + +.LP +.LP +ξ硢ե̾Ϥ줾 MKSIGN.SF MKSIGN.DSA ˤʤޤ +.LP +.LP +ޥɹԤ \f2\-sigfile\fP ץꤷʤä硢.SF ե .DSA եΥ١ե̾ϡޥɹԤǻꤵ줿̾Ƭ 8 ʸ򤹤٤ʸѴΤˤʤޤ̾ 8 ʸ̤ξϡ̾Τޤ޻Ȥޤ̾ˡ̾ե̾˻ѤǤʤʸޤޤƤϡʸ (_) ֤ƥե̾ޤѤǤʸϡե٥åȡ (_)ϥեǤ +.LP +\f3̾ (.SF) ե\fP +.LP +.LP +̾ե (.SF ե) ϡ\f3jarsigner\fP ǽ̾դ JAR ե˾˴ޤޤޥ˥եȥեȻƤޤĤޤꡢޥ˥եȥեƱ͡.SF եˤϡJAR ե˴ޤޤƤ륽ե뤴Ȥˡ 3 ĤιԤޤ +.LP +.RS 3 +.TP 2 +o +ե̾ .TP 2 o -非公開鍵が他人に知られない限り、デジタル署名の偽造は不可能である +ȤƤȥ르ꥺ (SHA) ̾ +.TP 2 +o +SHA Ȥ +.RE + +.LP +.LP +ޥ˥եȥեǤϡSHA ȤͤϡեΥХʥǡΥ (ϥå) Ǥ.SF եǤϡեΥȤͤϡޥ˥եȥեγ륽եб 3 ԤΥϥåǤ +.LP +.LP +̾եˤϡǥեȤǥޥ˥եȥեΤΥϥåޤޤƤޤҤΡJAR եθڡפ褦ˡΥإå¸ߤˤäƸڤκŬǽˤʤäƤޤ +.LP +\f3֥̾åե\fP +.LP +.SF եˤϽ̾դ졢̾Ͻ֥̾åե֤ޤΥեˤϡȥξޤϾ沽줿ǴޤޤƤޤ ޤϾϡ̾˻Ȥ줿бǧڤޤեγĥҤϡѤȥ르ꥺ˱ .DSA.RSA.EC Τ줫ˤʤޤ +.SS +̾ॹ +.LP +.LP +\f2jarsigner\fP ġϡJAR եν̾˽̾ॹפ¸Ǥޤˡ \f2jarsigner\fP ؽ̾򥵥ݡȤޤưϾάǽǡ̾˼γƥץˤä椵ޤ +.LP +.RS 3 +.TP 2 +o +\f2\-tsa url\fP +.TP 2 +o +\f2\-tsacert alias\fP .TP 2 o -デジタル署名は、その署名が付いたデータだけを対象とするものであり、ほかのデータの署名として機能することはない +\f2\-altsigner class\fP .TP 2 o -署名付きのデータは変更できない。 データが変更された場合は、その署名によってデータが本物ではないことが検証される +\f2\-altsignerpath classpathlist\fP +.RE + +.LP +.LP +γƥץξܺ٤ˤĤƤϡҤΡ֥ץ򻲾ȤƤ +.LP +.SS +JAR եθ +.LP +.LP +JAR եθڤΤϡ̾ͭǤꡢĽ̾ʸ JAR եΤɤΥեѹƤʤǤJAR եθڤϡμǹԤޤ +.LP +.RS 3 +.TP 3 +1. +.SF ե뤽켫Τν̾򸡾ڤޤ +.LP +μǤϡƽ֥̾å (.DSA) ե˳ǼƤ̾ºݤˡбȤä줿ΤǤ뤳Ȥǧޤ .DSA եˤϡξ (ޤϾ) ޤޤƤޤޤμǤϡŪν̾б̾ (.SF) եͭʽ̾Ǥ뤫ɤĴ١.SF ե뤬ѤƤʤȤǧޤ +.TP 3 +2. +.SF եγƥȥΥȤޥ˥եбƥͤ碌Ƹڤޤ +.LP +.SF եˤϡޥ˥եȥեΤΥϥå夬Ǽ줿إåǥեȤǴޤޤƤޤΥإå¸ߤϡإåΥϥå夬ºݤ˥ޥ˥եȥեΥϥåȰפ뤫ɤ򸡾ڤ뤳ȤǤޤϥå夬פϡμ˿ʤߤޤ +.LP +ϥå夬פʤϡΨŪˤˡȤäƸڤԤޤŪˤϡ.SF եγƥե󥻥Υϥå夬ޥ˥եȥեб륻ΥϥåȰפ뤫ɤǧޤ (ֽ̾ (.SF) եפ򻲾) +.LP +.SF եΥإå˳Ǽ줿ޥ˥եȥեΥϥåȡºݤΥޥ˥եȥեΥϥåȤפʤϡ̾ ( .SF ե) ˡJAR ե 1 İʾΥե뤬ɲ \f2(jar ġ)\fP 줿ǽޤjar \f2ġ\fP Ȥäƥեɲä硢ޥ˥եȥեѹޤ (եѤΥɲä).SF եѹޤ󡣤ξ硢.SF եΥإåʳΥ˳Ǽ줿ϥå夬ޥ˥եȥեб륻ΥϥåȰפȤϡ̾ JAR ե¸ߤƤեΤɤΥեѹƤʤȤˤʤꡢڤΤȤưޤ +.TP 3 +3. +JAR եΥեΤ.SF ե˥ȥijƥեɤ߹ߤޤɤ߹˥եΥȤ׻̤ޥ˥եȥγեΥȤӤޤ2 ĤΥȤƱǤʤФʤ餺ǤʤϸڤԤޤ .RE .LP .LP -ファイルに対してエンティティーの署名を生成するには、まず、エンティティーは、そのエンティティーに関連する公開鍵と非公開鍵のペアを持つ必要があります。 また、公開鍵を認証する 1 つまたは複数の証明書も必要です。「証明書」とは、あるエンティティーが発行したデジタル署名付きの文書で、別なエンティティーの公開鍵が特定の値であることを証明しています。 -.LP +ڥץǤʤ餫νʸڥ顼ȯ硢ڥץߤ졢ƥ㳰ޤ줿ƥ㳰ϡ\f3jarsigner\fP åɽޤ .LP -\f3jarsigner\fP は、「キーストア」に含まれる鍵と証明書情報を使って、JAR ファイルのデジタル署名を生成します。キーストアは、非公開鍵と、非公開鍵に関連付けられた X.509 証明書チェーンが収められたデータベースです。キーストアの作成と管理には、keytool(1) ユーティリティーを使います。 -.LP -.LP -\f3jarsigner\fP は、エンティティーの非公開鍵を使って署名を生成します。署名付き JAR ファイルには、ファイルの署名に使用する非公開鍵に対応する公開鍵を保存するキーストアからとった証明書のコピーも含まれています。 \f3jarsigner\fP は、署名付き JAR ファイルのデジタル署名を、ファイル内 (の署名ブロックファイル) に含まれている証明書を使って検証することができます。 +.SS +1 Ĥ JAR եоݤȤʣν̾ .LP .LP -5.0 以降では、\f3jarsigner\fP はタイムスタンプを含む署名を生成するので、システムやデプロイヤ (Java Plug\-in を含む) はJAR ファイルが署名証明書の有効期間中に署名されたかどうかをチェックできます。さらに、5.0 で追加された API を使用して、アプリケーションはタイムスタンプ情報を取得できます。 -.LP -.LP -現時点では、\f3jarsigner\fP で署名できるのは、JDK の jar(1) ツールで作成された JAR ファイル、または ZIP ファイルだけです。JAR ファイルは ZIP ファイルと同じですが、JAR ファイルには META\-INF/MANIFEST.MF ファイルが含まれている点が異なります。META\-INF/MANIFEST.MF ファイルは、\f3jarsigner\fP が ZIP ファイルに署名を付けるときに自動的に作成されます。 -.LP +1 Ĥ JAR եФ \f3jarsigner\fP ġʣ¹Ԥ¹ԤΤӤˡۤʤ桼̾ꤹСJAR եʣΥ桼ν̾դ뤳ȤǤޤ .LP -デフォルトでは、\f3jarsigner\fP は JAR (または ZIP) ファイルに「署名」を付けます。署名付き JAR ファイルを「検証」する場合は、\f2\-verify\fP オプションを指定します。 -.LP -.SS -JDK 1.1 との互換性 -.LP -.RS 3 +.nf +\f3 +.fl + jarsigner myBundle.jar susan +.fl + jarsigner myBundle.jar kevin +.fl +\fP +.fi .LP .LP -\f3keytool\fP ツールと \f3jarsigner\fP ツールは、JDK 1.1 で提供されていた \f3javakey\fP ツールを完全に置き換えるものです。これらの新しいツールは \f3javakey\fP よりも多くの機能を備えており、キーストアと非公開鍵をパスワードで保護する機能や、署名の生成に加えて署名を検証する機能を持っています。 +JAR ե뤬ʣ̾Ƥ硢 JAR եˤ .SF ե .DSA եФʣޤޤ뤳Ȥˤʤޤ .SF ե .DSA եФϡ1 ν̾Ф 1 ĺޤäơǽϤ JAR եˤϡ̾ĥե뤬ޤޤޤ +.LP +.nf +\f3 +.fl + SUSAN.SF +.fl + SUSAN.DSA +.fl + KEVIN.SF +.fl + KEVIN.DSA +.fl +\fP +.fi + .LP .LP -新しいキーストアアーキテクチャーは、\f3javakey\fP が作成して管理していたアイデンティティーデータベースに代わるものです。キーストア形式と、JDK 1.1 の \f3javakey\fP が使っていたデータベース形式との間には下位互換性はありません。ただし、次のようなことは可能です。 +: JAR եǤϡJDK 1.1 \f3javakey\fP ġ줿̾ \f3jarsigner\fP 줿̾ߤǤޤĤޤꡢǤ \f3javakey\fP Ȥäƽ̾դƤ JAR եˡ\f3jarsigner\fP Ȥäƽ̾դ뤳ȤǤޤ +.LP +.SH "ץ" +.LP +.LP +ʲǤϡ\f3jarsigner\fP ΥץˤĤޤ: .LP .RS 3 .TP 2 o -\f3keytool\fP の \f2\-identitydb\fP コマンドを使うと、アイデンティティーデータベースの情報をキーストアにインポートできます。 +ɤΥץ̾ˤƬ˥ޥʥ (\-) դ +.TP 2 +o +ץǤդνǻǤ +.TP 2 +o +åΤιܤμºݤ (ץ) ϡ桼ꤹɬפ +.TP 2 +o +\f2\-keystore\fP \f2\-storepass\fP \f2\-keypass\fP \f2\-sigfile\fP \f2\-sigalg\fP \f2\-digestalg\fP \f2\-signedjar\fP ץѤǤΤϡ̾դ JAR ե򸡾ڤǤϤʤJAR ե˽̾ǤƱͤˡ̾򥳥ޥɹԤǻꤹΤϡJAR ե˽̾դǤ +.RE + +.LP +.RS 3 +.TP 3 +\-keystore url +ȥξ򼨤 URL ꤷޤǥեȤϡ桼Υۡǥ쥯ȥΥե \f2.keystore\fP Ǥ 桼Υۡǥ쥯ȥϡuser.home ƥץѥƥˤäƷޤޤ +.LP +̾ȤϥȥɬפǤ ΤᡢǥեȤΥȥ¸ߤʤ硢뤤ϥǥեȰʳΤۤΥȥѤϡȥŪ˻ꤹɬפޤ +.LP +ڤȤϥȥɬפޤ󡣤ȥꤵƤ뤫뤤ϥǥեȤΥȥ¸ߤƤơ \f2\-verbose\fP ץꤵƤ硢JAR եθڤ˻Ѥ񤬤Υȥ 1 ĤǤޤޤƤ뤫ɤ˴ؤɲþ󤬽Ϥޤ +.LP +: \f2\-keystore\fP ΰˤϡURL ˥ե̾ (ȥѥ) Ǥޤ ե̾ (ȥѥ) ꤷϡfile:URL ȤưޤȤСΤ褦˻Ǥޤ +.nf +\f3 +.fl + \-keystore \fP\f4filePathAndName\fP\f3 +.fl +\fP +.fi +.LP +ϡλƱΤȤưޤ +.nf +\f3 +.fl + \-keystore file:\fP\f4filePathAndName\fP\f3 +.fl +\fP +.fi +.LP +JRE \f2$JAVA_HOME/lib/security\fP ǥ쥯ȥ˳Ǽ줿 \f2java.security\fP ƥץѥƥե Sun PKCS#11 ץХꤵƤ硢keytool jarsigner PKCS#11 ȡ˴ŤưǤޤΥץꤷޤ +.RS 3 +.TP 2 +o +\f2\-keystore NONE\fP +.TP 2 +o +\f2\-storetype PKCS11\fP +.RE +.LP +ȤСΥޥɤϡꤵ줿 PKCS#11 ȡƤɽޤ +.nf +\f3 +.fl + jarsigner \-keystore NONE \-storetype PKCS11 \-list +.fl + +.fl +\fP +.fi +.TP 3 +\-storetype storetype +󥹥󥹤륭ȥΥפꤷޤǥեȤΥȥפϡƥץѥƥե keystore.type ץѥƥͤǻꤵ줿פǤͤϡ \f2java.security.KeyStore\fP static getDefaultType ᥽å \f2ǼǤޤ\fP. +.LP +\-storepass ץȤä PCKS#11 ȡ PIN \f2ꤹ뤳Ȥ\fP Ǥޤꤷʤä硢keytool jarsigner ϥ桼˥ȡ PIN Ϥޤȡݸ줿ǧڥѥ (Ѥ PIN ѥåɤɤ߼굡ʤ) 硢\f2\-protected\fP ץꤹɬפޤѥɥץꤹɬפϤޤ +.TP 3 +\-storepass[:env | :file] argument +.LP +ȥ˥ΤɬפʥѥɤꤷޤΥץɬפʤΤϡJAR ե˽̾դȤǤ (JAR ե򸡾ڤȤ)ξ硢 \f2\-storepass\fP ץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ +.LP + \f2env\fP ޤ \f2file\fP ꤵƤʤ硢ѥɤͤ \f2argument\fP ˤʤޤʳξ硢ѥɤϼΤ褦ˤƼޤ +.RS 3 +.TP 2 +o +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ +.TP 2 +o +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +: ƥȤŪȤ硢ޤϥƥݸ줿ƥѤƤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ +.TP 3 +\-keypass[:env | :file] argument +.LP +ޥɹԤǻꤵ줿̾б륭ȥȥݸΤ˻Ȥѥɤꤷޤ\f3jarsigner\fP Ȥä JAR ե˽̾դȤϡѥɤɬפǤޥɹԤǥѥɤꤵƤ餺ɬפʥѥɤȥΥѥɤȰۤʤϡѥɤϤޤ +.LP + \f2env\fP ޤ \f2file\fP ꤵƤʤ硢ѥɤͤ \f2argument\fP ˤʤޤʳξ硢ѥɤϼΤ褦ˤƼޤ +.RS 3 +.TP 2 +o +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ +.TP 2 +o +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +: ƥȤŪȤ硢ޤϥƥݸ줿ƥѤƤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ +.TP 3 +\-sigfile file +.SF ե .DSA ե˻Ȥ١ե̾ꤷޤȤС\f2file\fP DUKESIGN ꤹȡ .SF ե .DSA ե̾ϡ줾 DUKESIGN.SF DUKESIGN.DSA ˤʤޤ Υեϡ̾դ JAR ե META\-INF ǥ쥯ȥ֤ޤ +.LP +\f2file\fP ˻ѤǤʸϡa\-zA\-Z0\-9_\-פǤĤޤꡢʸӥϥեѤǤޤ: .SF .DSA Υե̾ǤϡʸϤ٤ʸѴޤ +.LP +\-sigfile \f2ץ\fP ꤷʤä硢.SF ե .DSA եΥ١ե̾ϡޥɹԤǻꤵ줿̾Ƭ 8 ʸ򤹤٤ʸѴΤˤʤޤ̾ 8 ʸ̤ξϡ̾Τޤ޻Ȥޤ̾ˡ̾ե̾˻ѤǤʤʸޤޤƤϡʸ (_) ֤ƥե̾ޤ +.TP 3 +\-sigalg algorithm +JAR եν̾˻Ѥ̾르ꥺ̾ꤷޤ +.LP +ɸ̾르ꥺ̾ΰˤĤƤϡJava Cryptography Architectureפˤ +.na +\f2Appendix A \fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤΥ르ꥺϡJAR եν̾˻Ѥ̩ȸߴΤΤǤʤФʤޤ󡣤Υץꤷʤä硢̩Υפ˱ SHA1withDSASHA256withRSASHA256withECDSA Τ줫Ѥޤꤵ줿르ꥺμ󶡤ץХŪ˥󥹥ȡ뤵Ƥ뤫뤤ϥ桼Τ褦ʥץХ \f2\-providerClass\fP ץȤäƻꤹɬפޤǤʤ硢ޥɤμ¹ԤԤޤ +.TP 3 +\-digestalg algorithm +JAR եΥȥȤݤ˻Ѥåȥ르ꥺ̾ꤷޤ +.LP +ɸåȥ르ꥺ̾ΰˤĤƤϡJava Cryptography Architectureפˤ +.na +\f2Appendix A \fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤΥץꤷʤä硢SHA256 Ѥޤꤵ줿르ꥺμ󶡤ץХŪ˥󥹥ȡ뤵Ƥ뤫뤤ϥ桼Τ褦ʥץХ \f2\-providerClass\fP ץȤäƻꤹɬפޤǤʤ硢ޥɤμ¹ԤԤޤ +.TP 3 +\-signedjar file +̾դ JAR ե̾ꤷޤ +.LP +ޥɹԤ̾ꤷʤäϡ JAR ե (̾оݤȤʤ JAR ե) ̾Ʊ̾Ȥޤ ξ硢 JAR եϽ̾դ JAR եˤäƾ񤭤ޤ +.TP 3 +\-verify +ޥɹԤǤΥץ󤬻ꤵƤϡꤵ줿 JAR ե뤬ڤޤ JAR եؤν̾ϹԤޤ󡣸ڤȡjar verified Ȥåɽޤ̾Ƥʤ JAR ե롢ޤϥݡȤƤʤ르ꥺ (RSA ץХΥ󥹥ȡλƤʤ RSA ʤ) Ȥäƽ̾줿 JAR ե򸡾ڤ褦Ȥȡjar is unsigned. (signatures missing or not parsable)פȤåɽޤ +.LP +̾դ JAR եϡ\f3jarsigner\fP ޤ JDK 1.1 \f3javakey\fP ġ롢뤤ϤξȤäƸڤǤޤ +.LP +ڤˤĤƤξܺ٤ϡJAR եθڡפ򻲾ȤƤ +.TP 3 +\-certs +ޥɹԤǡ \f2\-verify\fP \f2\-verbose\fP ץȤȤˤΥץꤷ硢JAR եγƽ̾Ԥξ󤬽Ϥ˴ޤޤޤˤϼΤΤޤޤޤ +.RS 3 +.TP 2 +o +̾Ԥθ (.DSA ե˳Ǽ줿) μ̾ +.TP 2 +o + X. (Ĥޤꡢ \f2java.security.cert.X509Certificate\fP Υ󥹥) Ǥϡ̾Ԥμ̾ +.RE +.LP +ȥγǧԤޤޥɹԤǥȥͤꤵƤʤ硢ǥեȤΥȥե뤬Сޤ̾Ԥθξ񤬥ȥΥȥȰפϡξɽޤ +.RS 3 .TP 2 o -\f3jarsigner\fP は、以前に \f3javakey\fP を使って署名された JAR ファイルに署名を付けることができます。 +̾Ԥ˳륭ȥȥ̾̾ϳ̤ǰϤޤޤ ȥǤϤʤ JDK 1.1 Υǥƥƥǡ١ͳ褹̾Ԥξϡ̤ǤϤʤ̤ǰϤޤޤ +.RE +.TP 3 +\-certchain file +ޥɹԤǻꤷ̾Ƿޤ륭ȥȥ˴Ϣդ줿󤬴ǤʤˡѤ٤ꤷޤΤ褦ʾ֤ˤʤǽΤϡȥϡɥȡ˳ǼƤ뤬ˤϾΤݻǤΰ褬¸ߤƤʤ褦ʾǤΥեϰϢ X.509 񤬽Ϣ뤵줿ΡPKCS#7 ñǡ֥åΤ줫ȤʤꡢΥ󥳡ǥ󥰷ϥХʥꥨ󥳡ǥ󥰷Internet RFC 1421 ɸǵꤵǽ󥳡ǥ󥰷 (BASE64 󥳡ǥ󥰤ȤƤФ) Τ줫ˤʤޤ +.TP 3 +\-verbose +ޥɹԤǤΥץ󤬻ꤵƤ硢\f3jarsigner\fP ϡ־Ĺץ⡼ɤưJAR ν̾ޤϸڤοʹԾ˴ؤɲþϤޤ +.TP 3 +\-internalsf +ϡJAR եν̾줿 .DSA (֥̾å) եˡ줿 .SF ե (̾ե) δʥԡ沽줿ǴޤޤƤޤưѹޤưѹˤʤꡢߤǤϡ JAR եΤΥ򾮤뤿ˡǥեȤǤ .SF ե뤬 .DSA ե˴ޤޤʤ褦ˤʤäƤޤ \f2\-internalsf\fP ץ򥳥ޥɹԤǻꤹȡƱ褦ưޤ\f3ΥץϡƥȤԤˤǤʳˤϻѤʤǤ ΥץѤȡͭפʺŬԤʤʤޤ\fP +.TP 3 +\-sectionsonly +ޥɹԤǤΥץ󤬻ꤵƤ硢JAR եν̾ .SF ե (̾ե) ˤϡޥ˥եȥեΤΥϥåޤإåɲäޤ󡣤ξ硢.SF ե˴ޤޤΤϡJAR եγƥե˴ؤ󤪤ӥϥåǤܺ٤ϡֽ̾ (.SF) եפ򻲾ȤƤ +.LP +ǥեȤǤϡŬԤˡޥ˥եȥեΤΥϥåޤإåɲäޤإå¸ߤϡJAR եθڻˡޤإåΥϥå夬ޥ˥եȥեΤΥϥåȼºݤ˰פ뤫ɤǧޤϥå夬פ硢ڤϼμ˿ʤߤޤϥå夬פʤϡΨŪˤˡȤäƸڤԤޤ Ūˤϡ.SF եγƥե󥻥Υϥå夬ޥ˥եȥեб륻ΥϥåȰפ뤫ɤǧޤ +.LP +ܺ٤ϡJAR եθڡפ򻲾ȤƤ +.LP +\f3ΥץϡƥȤԤˤǤʳˤϻѤʤǤ ΥץѤȡͭפʺŬԤʤʤޤ\fP +.TP 3 +\-protected +\f2true\fP ޤ \f2false\fP PIN ꡼ʤɤݸ줿ǧڥѥ𤷤ƥѥɤꤹɬפˤϡͤ \f2true\fP ˻ꤷƤ +.TP 3 +\-providerClass provider\-class\-name +ӥץХƥץѥƥե (\f2java.security\fP) ΥꥹȤäƤʤȤˡŹ沽ӥץХΥޥ饹ե̾ꤷޤ +.LP +\f2\-providerArg\fP \f2ConfigFilePath\fP ץȤ߹碌ƻѤޤkeytool jarsigner ϥץХưŪ˥󥹥ȡ뤷ޤ (ǡ\f2ConfigFilePath\fP ϥȡեؤΥѥǤ)ƥץѥƥե Sun PKCS#11 ץХꤵƤʤ PKCS#11 ȥɽ륳ޥɤ򼡤˼ޤ +.nf +\f3 +.fl +jarsigner \-keystore NONE \-storetype PKCS11 \\ +.fl + \-providerClass sun.security.pkcs11.SunPKCS11 \\ +.fl + \-providerArg /foo/bar/token.config \\ +.fl + \-list +.fl +\fP +.fi +.TP 3 +\-providerName providerName +\f2java.security\fP ƥץѥƥե 2 İʾΥץХꤵƤ硢\f2\-providerName\fP ץȤäΥץХ󥹥󥹤ǤޤΥץΰϡץХ̾Ǥ +.LP +Sun PKCS#11 ץХξ硢\f2providerName\fP \f2SunPKCS11\-\fP\f2TokenName\fP Ȥˤʤޤ ǡ\f2TokenName\fPפϡץХ󥹥󥹤줿̾Ǥ ܺ٤ +.na +\f2°ɽ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#ATTRS򻲾ȤƤȤСʲΥޥɤǤϡ̾ \f2SmartCard\fP PKCS#11 ȥץХ󥹥󥹤ƤꥹȤޤ +.nf +\f3 +.fl +jarsigner \-keystore NONE \-storetype PKCS11 \\ +.fl + \-providerName SunPKCS11\-SmartCard \\ +.fl + \-list +.fl +\fP +.fi +.TP 3 +\-Jjavaoption +ꤵ줿 \f2javaoption\fP ʸ Java 󥿥ץ꥿ľϤޤ\f3jarsigner\fP ϡºݤˤ Java 󥿥ץ꥿Ф֥åѡפǤΥץˤϡޤ뤳ȤϤǤޤ󡣤Υץϡ¹ԴĶޤϥ꡼ѤĴǤѲǽʥ󥿥ץ꥿ץΰɽˤϡ \f2java \-h\fP ޤ \f2java \-X\fP ȥޥɹԤϤޤ +.LP +.TP 3 +\-tsa url +\f2\-tsa http://example.tsa.url\fP JAR եν̾˥ޥɹԤɽ硢̾ΥॹפޤURL \f2http://example.tsa.url\fP ϡTSA (Time Stamping Authority) ξꤷޤϡ \f2\-tsacert\fP ץǸФ줿 URL 򥪡С饤ɤޤ \f2\-tsa\fP ץǤϡTSA θ򥭡ȥ֤ɬפϤޤ +.LP +ॹפ뤿ˡ \f2jarsigner\fP ϡ +.na +\f2RFC 3161\fP @ +.fi +http://www.ietf.org/rfc/rfc3161.txt Ƥ ॹץץȥ (TSP) Ѥ TSA ̿ޤȡTSA ֤줿ॹץȡϽ֥̾åեν̾ȤȤ¸ޤ +.LP +.TP 3 +\-tsacert alias +\f2\-tsacert alias\fP JAR եν̾˥ޥɹԤɽ硢̾Υॹפޤ \f2alias\fP ϡȥθͭ TSA θꤷޤȥξǡTSA ξꤹ URL ޤ Subject Information Access ĥǽǧޤ +.LP +TSA θϡ \f2\-tsacert Ȥä硢ȥ֤Ƥɬפޤ\fP. +.LP +.TP 3 +\-altsigner class +ؽ̾Ѥ뤳Ȥꤷޤ饹̾ϡcom.sun.jarsigner.ContentSigner ݥ饹ĥ륯饹ե \f2ꤷޤ\fP. Υ饹եؤΥѥϡ \f2\-altsignerpath\fP ץˤäޤ \f2\-altsigner\fP ץ󤬻Ѥȡ \f2jarsigner\fP ϡꤵ줿饹󶡤̾ѤޤǤʤ硢 \f2jarsigner\fP ϥǥեȤν̾Ѥޤ +.LP +ȤС \f2com.sun.sun.jarsigner.AuthSigner\fP Ȥ̾Υ饹󶡤̾Ѥˤϡ \f2jarsigner\fP ץ \f2\-altsigner com.sun.jarsigner.AuthSignerפѤޤ\fP +.LP +.TP 3 +\-altsignerpath classpathlist +饹ե (Υ饹ե̾Ҥ \f2\-altsigner\fP ץǻꤵ) ӤΥ饹¸뤹٤Ƥ JAR եؤΥѥꤷޤ饹ե뤬 JAR եˤ硢ʲΤ褦 JAR եؤΥѥꤵޤ +.LP +ХѥޤϸߤΥǥ쥯ȥ꤫ХѥǤޤ \f2classpathlist\fP ʣΥѥ JAR ե뤬ޤޤˤϡ Solaris ξϥ (\f2:\fP) ǡWindows ξϥߥ (\f2;\fP) Ǥ줾ڤޤŪΥ饹Ǥ˸ѥˤϡΥץפǤ +.LP +饹եޤࡢJAR եؤΥѥꤹ򼨤ޤ +.nf +\f3 +.fl +\-altsignerpath /home/user/lib/authsigner.jar +.fl +\fP +.fi +.LP +JAR ե̾ޤޤƤ뤳ȤդƤ +.LP +饹եޤ JAR եؤΥѥꤹ򼨤ޤ +.nf +\f3 +.fl +\-altsignerpath /home/user/classes/com/sun/tools/jarsigner/ +.fl +\fP +.fi +.LP +JAR ե̾ϴޤޤƤʤȤαդƤ +.TP 3 +\-strict +̾ޤϸڽˡ餫ηٹåɽ礬ޤޥɹԤǤΥץꤹȡĤäٹåġνλɤȿǤޤܺ٤ϡַٹפι򻲾ȤƤ +.TP 3 +\-verbose:sub\-options +ڽǡ \f2\-verbose\fP ץϡɽ̤ꤹ륵֥ץޤ \f2\-certs\fP ꤷ硢ǥեȥ⡼ (ޤϥ֥ץ all) Ǥϡȥ꤬뤿Ӥˤγƥȥ꤬ɽ졢ΤȤ JAR եγƽ̾Ԥξɽޤ \f2\-certs\fP \f2\-verbose:grouped\fP ֥ץꤷ硢Ʊ̾ԾĥȥȤξ󤬡ä˥롼ײɽޤ \f2\-certs\fP \f2\-verbose:summary\fP ֥ץꤷ硢Ʊ̾ԾĥȥȤξ󤬤ä˥롼ײɽޤƥȥξܺ٤1 ĤΥȥ (Ӥʾ)פȤ󤵤ɽޤܺ٤ι򻲾ȤƤ +.RE + +.LP +.SH "" +.LP +.SS +JAR եν̾ +.LP +.LP +bundle.jar Ȥ̾ JAR ե뤬ȤޤΥեˡȥ̾ jane Ǥ桼Ȥäơ̾դȤޤȥϡmystore Ȥ̾ǡC ɥ饤֤ working ǥ쥯ȥˤꡢȥΥѥɤ mypass\f2jane\fP Υѥɤ j638klm Ȥޤξ硢Υޥɤ¹ԤȡJAR ե˽̾դ sbundle.jar Ȥ̾դ JAR եǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-storepass myspass +.fl + \-keypass j638klm \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +ΥޥɤǤ \f2\-sigfile\fP ꤵƤʤᡢ̾դ JAR ե˳Ǽ .SF ե .DSA ե̾ϡ̾ǥե̾ĤޤĤޤꡢ̾ \f2JANE.SF\fP \f2JANE.DSA\fP ˤʤޤ +.LP +.LP +ȥΥѥɤΥѥɤ򤢤ȤϤϡΥޥɤṳ̂ƼΤ褦ϤǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore +.fl + \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +ǥեȤΥȥ (ۡǥ쥯ȥ .keystore Ȥ̾Υȥ) Ѥϡ˼褦ˡȥλάǤޤ +.LP +.nf +\f3 +.fl + jarsigner \-signedjar sbundle.jar bundle.jar jane +.fl +\fP +.fi + +.LP +.LP +Ǹˡ JAR ե (\f2bundle.jar\fP) ̾դ JAR եñ˾񤭤ϡΤ褦 \f2\-signedjar\fP ץꤹɬפϤޤ +.LP +.nf +\f3 +.fl + jarsigner bundle.jar jane +.fl +\fP +.fi + +.LP +.SS +̾դ JAR եθ +.LP +.LP +˼Τϡ̾դ JAR ե򸡾ڤ̾ͭ JAR ե뤬ѤƤʤȤǧ뤿ΥޥǤ +.LP +.nf +\f3 +.fl + jarsigner \-verify sbundle.jar +.fl +\fP +.fi + +.LP +.LP +ڤȡΤ褦ʥåɽޤ +.LP +.nf +\f3 +.fl + jar verified. +.fl +\fP +.fi + +.LP +.LP +ȤץץȤɽޤڤʤäϡ顼åɽޤ +.LP +.LP +\-verbose ץȤȡ \f2¿ξ\fP ɽޤ\-verbose ץդ \f3jarsigner\fP \f2ѤȤν\fP ˼ޤ +.LP +.nf +\f3 +.fl + jarsigner \-verify \-verbose sbundle.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class +.fl + smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.SS +Ȥä +.LP +.LP +ڻ \-verify \-verbose ץ˲ä \f2\-certs\fP ץꤷϡ JAR եγƽ̾ԤξϤޤˤϡ񥿥ס̾Լ̾ (X.509 ξΤ) JAR եθξ񤬥ȥȥξ˰פˤϡ̤ǰϤޤ줿̾ԤΥȥ̾ޤޤޤ򼨤ޤ +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-verify \-verbose \-certs myTest.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + 208 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.SF +.fl + 1087 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.DSA +.fl + smk 2752 Fri Sep 26 16:12:30 PDT 1997 Tst.class +.fl + +.fl + X.509, CN=Test Group, OU=Java Software, O=Sun Microsystems, L=CUP, S=CA, C=US (javatest) +.fl + X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.LP +̾Ԥξ X.509 Ǥʤϡ̾ɽޤ󡣤ξˤϡΥפ̾ɽޤȤС PGP ǡ̾ bob ξϡΤ褦ɽޤ +.LP +.nf +\f3 +.fl + PGP, (bob) +.fl +\fP +.fi + +.LP +.SS +ǥƥƥǡ١ν̾Ԥޤ JAR եθ +.LP +.LP +JAR ե뤬JDK 1.1 \f3javakey\fP ġȤäƽ̾Ƥ硢̾Ԥϥǥƥƥǡ١̾Ǥξ硢ڤνϤˤ i Ȥ椬ޤޤޤJAR ե뤬ǥƥƥǡ١̾ȥȥ̾ξˤäƽ̾Ƥϡk i ξɽޤ +.LP +.LP +\f2\-certs\fP ץꤷ硢ȥ̾ϳ̤ǰϤޤΤФǥƥƥǡ١̾ϳѳ̤ǰϤޤɽޤȤС +.LP +.nf +\f3 +.fl + jarsigner \-keystore /working/mystore \-verify \-verbose \-certs writeFile.jar +.fl + +.fl + 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF +.fl + 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF +.fl + 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA +.fl + 199 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.SF +.fl + 1013 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.DSA +.fl + smki 2752 Fri Sep 26 16:12:30 PDT 1997 writeFile.html +.fl + +.fl + X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) +.fl + X.509, CN=Duke, OU=Java Software, O=Sun, L=cup, S=ca, C=us [duke] +.fl + +.fl + s = ̾ڤޤ +.fl + m = ޥ˥եȤ˥ȥ꤬ܤƤޤ +.fl + k = ȥ 1 İʾξ񤬸Ĥޤ +.fl + i = ǥƥƥפ 1 İʾξ񤬸Ĥޤ +.fl + +.fl + JAR ڤޤ +.fl +\fP +.fi + +.LP +.LP +̾ duke ϳѳ̤ǰϤޤƤΤǡ̾ϥȥ̾ǤϤʤǥƥƥǡ١̾Ǥ +.LP +.SH "ٹ" +.LP +̾/ڽˤϡjarsigner 餵ޤޤʷٹɽǽޤηٹ𥳡ɤϼΤ褦Ƥޤ +.nf +\f3 +.fl + hasExpiringCert 2 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ 6 ˴ڤˤʤޤ +.fl + +.fl + hasExpiredCert 4 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ񤬴ڤˤʤäƤޤ +.fl + +.fl + notYetValidCert 4 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ񤬤ޤͭˤʤäƤޤ +.fl + +.fl + chainNotValidated 4 +.fl + JAR ˴ޤޤ륨ȥξθڤԤޤ +.fl + +.fl + badKeyUsa ge 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ KeyUsage ĥɤν̾ĤƤޤ +.fl + +.fl + badExtendedKeyUsage 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ ExtendedKeyUsage ĥ +.fl + ɤν̾ĤƤޤ +.fl + +.fl + badNetscapeCertType 8 +.fl + JAR ˴ޤޤ륨ȥν̾Ԥξ NetscapeCertType ĥ +.fl + ɤν̾ĤƤޤ +.fl + +.fl + hasUnsignedEntry 16 +.fl + JAR ˤϡåԤƤʤ̾ʤȥ꤬ޤޤƤޤ +.fl + +.fl + notSignedByAlias 32 +.fl + JAR ˤϡꤵ줿̾ˤäƽ̾Ƥʤ̾դȥ꤬ޤޤƤޤ +.fl + +.fl + aliasNotInStore 32 +.fl + JAR ˤϡΥȥ̾ˤäƽ̾Ƥʤ̾դȥ꤬ޤޤƤޤ +.fl + +.fl +\fP +.fi + +.LP +.LP +\f2\-strict\fP ץꤷ硢Ф줿ٹ OR äͤġνλɤȤ֤ޤȤСȥν̾˻Ѥ񤬴ڤˤʤäƤơĤξ keyUsage ĥǥեν̾ĤƤʤ硢λ 12 (=4+8) ֤ޤ +.LP +.LP +\f3\fP: UNIX ǻѲǽͤ 0 255 Ǥ뤿ᡢλɤϺѤޤˤƤ⡢̾/ڽԤȡνλɤ֤ޤ +.LP +.nf +\f3 +.fl +failure 1 +.fl +\fP +.fi + +.LP +.SS +JDK 1.1 Ȥθߴ +.LP +.LP +\f3keytool\fP ġ \f3jarsigner\fP ġϡJDK 1.1 󶡤Ƥ \f3javakey\fP ġ֤ΤǤοġϡȥѥɤݸ뵡ǽ䡢̾˲äƽ̾򸡾ڤ뵡ǽʤɡ\f3javakey\fP ¿ΤǽƤޤ +.LP +.LP +ȥƥ㡼ϡ\f3javakey\fP ƴƤǥƥƥǡ١ΤǤȥȡJDK 1.1 \f3javakey\fP ȤäƤǡ١Ȥδ֤ˤϲ̸ߴϤޤ󡣤ΤȤϲǽǤ +.LP +.RS 3 .TP 2 o -\f3jarsigner\fP は、\f3javakey\fPを使って署名された JAR ファイルを検証できます。したがって、jarsigner は、Java 2 SDK のキーストアではなく JDK 1.1 のアイデンティティーデータベースからの署名者別名を認識し、これらを対象に処理を行うことができます。 +\f3keytool\fP \f2\-identitydb\fP ޥɤȤȡǥƥƥǡ١ξ򥭡ȥ˥ݡȤǤޤ +.TP 2 +o +\f3jarsigner\fP ϡ \f3javakey\fP Ȥäƽ̾줿 JAR ե˽̾դ뤳ȤǤޤ +.TP 2 +o +\f3jarsigner\fP ϡ\f3javakey\fPȤäƽ̾줿 JAR ե򸡾ڤǤޤäơjarsigner ϡJava 2 SDK ΥȥǤϤʤ JDK 1.1 Υǥƥƥǡ١ν̾̾ǧоݤ˽ԤȤǤޤ .RE .LP .LP -次の表は、JDK 1.1.x で署名された JAR ファイルが、Java 2 プラットフォームでどのように扱われるかを示しています。 +ɽϡJDK 1.1.x ǽ̾줿 JAR ե뤬Java 2 ץåȥեǤɤΤ褦˰뤫򼨤Ƥޤ .LP .LP .TS @@ -160,7 +1053,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3JAR ファイルのタイプ\fP +\f3JAR եΥ\fP .br .di .nr a| \n(dn @@ -176,7 +1069,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f31.1 データベース内のアイデンティティー\fP +\f31.1 ǡ١Υǥƥƥ\fP .br .di .nr b| \n(dn @@ -192,7 +1085,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f31.1 データベースから Java 2 Platform キーストアにインポートされる信頼できるアイデンティティー (4)\fP +\f31.1 ǡ١ Java 2 Platform ȥ˥ݡȤ뿮Ǥ륢ǥƥƥ (4)\fP .br .di .nr c| \n(dn @@ -208,7 +1101,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(83 .ll \n(83u .in 0 -\f3ポリシーファイルがアイデンティティー/別名に特権を与える\fP +\f3ݥꥷե뤬ǥƥƥ/̾øͿ\fP .br .di .nr d| \n(dn @@ -224,7 +1117,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr e| \n(dn @@ -240,7 +1133,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr f| \n(dn @@ -256,7 +1149,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 +٤ƤΥɤͿǥեȤø .br .di .nr g| \n(dn @@ -272,7 +1165,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -あり/信頼できない +/Ǥʤ .br .di .nr h| \n(dn @@ -288,7 +1181,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 (3) +٤ƤΥɤͿǥեȤø(3) .br .di .nr i| \n(dn @@ -304,7 +1197,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(81 .ll \n(81u .in 0 -あり/信頼できない +/Ǥʤ .br .di .nr j| \n(dn @@ -320,7 +1213,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権 (1,3) +٤ƤΥɤͿǥեȤø(1,3) .br .di .nr k| \n(dn @@ -336,7 +1229,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権とポリシーファイル内で与えられる特権 +٤ƤΥɤͿǥեȤøȥݥꥷեͿø .br .di .nr l| \n(dn @@ -352,7 +1245,7 @@ .ll \n(34u*1u/6u .if \n(.l<\n(84 .ll \n(84u .in 0 -すべてのコードに与えられるデフォルトの特権とポリシーファイル内で与えられる特権 (2) +٤ƤΥɤͿǥեȤøȥݥꥷեͿø(2) .br .di .nr m| \n(dn @@ -363,46 +1256,46 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名のない JAR +.nr 38 \w̾Τʤ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w署名付き JAR +.nr 38 \w̾դ JAR .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 .nr 38 \n(a- .if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wあり/信頼できる +.nr 38 \w/Ǥ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -413,63 +1306,63 @@ .nr 38 \n(j- .if \n(81<\n(38 .nr 81 \n(38 .nr 82 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(82<\n(38 .nr 82 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(82<\n(38 .nr 82 \n(38 .82 .rm 82 .nr 38 \n(c- .if \n(82<\n(38 .nr 82 \n(38 .nr 83 0 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wなし +.nr 38 \wʤ .if \n(83<\n(38 .nr 83 \n(38 -.nr 38 \wあり +.nr 38 \w .if \n(83<\n(38 .nr 83 \n(38 .83 .rm 83 .nr 38 \n(d- .if \n(83<\n(38 .nr 83 \n(38 .nr 84 0 -.nr 38 \w\f3与えられる特権\fP +.nr 38 \w\f3Ϳø\fP .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 +.nr 38 \w٤Ƥø .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 (1) +.nr 38 \w٤Ƥø (1) .if \n(84<\n(38 .nr 84 \n(38 -.nr 38 \wすべての特権 (1) +.nr 38 \w٤Ƥø (1) .if \n(84<\n(38 .nr 84 \n(38 .84 .rm 84 @@ -503,7 +1396,7 @@ .nr 44 \n(83+(3*\n(38) .nr 84 +\n(44 .nr TW \n(84 -.if t .if \n(TW>\n(.li .tm Table at line 185 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1078 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -528,7 +1421,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u'\h'|\n(43u'\h'|\n(44u'\f3与えられる特権\fP +\&\h'|\n(40u'\h'|\n(41u'\h'|\n(42u'\h'|\n(43u'\h'|\n(44u'\f3Ϳø\fP .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -565,7 +1458,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -581,7 +1474,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名のない JAR\h'|\n(41u'なし\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾Τʤ JAR\h'|\n(41u'ʤ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -597,7 +1490,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'あり\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -615,7 +1508,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -640,7 +1533,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'\h'|\n(42u'なし\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'\h'|\n(42u'ʤ\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -663,7 +1556,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'なし\h'|\n(42u'あり\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'ʤ\h'|\n(42u'\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -679,7 +1572,7 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'あり\h'|\n(43u'あり\h'|\n(44u' +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'\h'|\n(43u'\h'|\n(44u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -693,15 +1586,15 @@ .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'なし\h'|\n(43u'なし\h'|\n(44u'すべての特権 +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'ʤ\h'|\n(43u'ʤ\h'|\n(44u'٤Ƥø .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'あり\h'|\n(43u'なし\h'|\n(44u'すべての特権 (1) +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'\h'|\n(43u'ʤ\h'|\n(44u'٤Ƥø (1) .ta \n(80u \n(81u \n(82u \n(83u \n(84u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'署名付き JAR\h'|\n(41u'あり/信頼できる\h'|\n(42u'なし\h'|\n(43u'あり\h'|\n(44u'すべての特権 (1) +\&\h'|\n(40u'̾դ JAR\h'|\n(41u'/Ǥ\h'|\n(42u'ʤ\h'|\n(43u'\h'|\n(44u'٤Ƥø (1) .fc .nr T. 1 .T# 1 @@ -724,894 +1617,43 @@ .LP .LP -注 \- + \- .LP .RS 3 .TP 3 1. -ポリシーファイル内にアイデンティティー/別名についての言及がある場合、それをキーストアにインポートして、ポリシーファイルの設定が与えられた特権に反映されるようにする必要があります。 +ݥꥷե˥ǥƥƥ/̾ˤĤƤθڤ硢򥭡ȥ˥ݡȤơݥꥷե꤬Ϳ줿øȿǤ褦ˤɬפޤ .TP 3 2. -ポリシーファイル/キーストアの組み合わせは、アイデンティティーデータベース内の信頼できるアイデンティティーよりも優先されます。 +ݥꥷե/ȥȤ߹碌ϡǥƥƥǡ١οǤ륢ǥƥƥͥ褵ޤ .TP 3 3. -Java 2 プラットフォームでは、信頼できないアイデンティティーは無視されます。 +Java 2 ץåȥեǤϡǤʤǥƥƥ̵뤵ޤ .TP 3 4. -Java 2 SDK キーストアにインポートできるのは、信頼できるアイデンティティーだけです。 -.RE - -.LP -.SS -キーストアの別名 -.LP -.RS 3 - -.LP -.LP -キーストアのすべてのエントリは、一意の「別名」を介してアクセスされます。 -.LP -.LP -\f3jarsigner\fP を使って JAR ファイルに署名を付けるときは、署名の生成に必要な非公開鍵を含むキーストアエントリの別名を指定する必要があります。たとえば、次の例は、working ディレクトリの mystore という名前のキーストアに含まれる別名 duke に関連付けられた非公開鍵を使って、MyJARFile.jar という名前の JAR ファイルに署名を付けます。出力ファイルは指定されていないので、MyJARFile.jar は署名付きの JAR ファイルによって上書きされます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-storepass myspass -.fl - \-keypass dukekeypasswd MyJARFile.jar duke -.fl -\fP -.fi - -.LP -.LP -キーストアはパスワードで保護されているので、ストアのパスワード (上の例では mypass) を指定する必要があります。コマンド行でストアのパスワードを指定しないと、パスワードの入力を求められます。同様に、非公開鍵もキーストア内でパスワードによって保護されているため、非公開鍵のパスワード (上の例では dukekeypasswd) を指定する必要があります。 コマンド行で非公開鍵のパスワードを指定していない、また、指定したパスワートが保存されているパスワードと違っている場合には、非公開鍵のパスワードの入力を求められます。 -.LP -.RE -.SS -キーストアの場所 -.LP -.RS 3 - -.LP -.LP -\f3jarsigner\fP には、使用するキーストアの URL を指定する \f2\-keystore\fP オプションがあります。キーストアは、デフォルトではユーザーのホームディレクトリの \f2.keystore\fP という名前のファイルに格納されます。 ユーザーのホームディレクトリは、\f2user.home\fP システムプロパティーによって決まります。Solaris システムの場合、\f2user.home\fP がデフォルトでユーザーのホームディレクトリになっています。 -.LP -.LP -\f2\-keystore\fP オプションからの入力ストリームは、\f2KeyStore.load\fP メソッドに渡されます。URL として \f2NONE\fP が指定されている場合は、null のストリームが \f2KeyStore.load\fP メソッドに渡されます。\f2NONE\fP は、\f2KeyStore\fP がファイルベースではなく、たとえば、ハードウェアトークンデバイスに置かれている場合に指定します。 -.LP -.RE -.SS -キーストアの実装 -.LP -.RS 3 - -.LP -.LP -\f2java.security\fP パッケージで提供される \f2KeyStore\fP クラスには、キーストア内の情報に対するアクセスと変更を行うための明確に定義されたインタフェースが用意されています。キーストアの固定実装としては、それぞれが特定の「タイプ」のキーストアを対象とする複数の異なる実装が存在可能です。 -.LP -.LP -現在、キーストアの実装を使用するものとして、\f3keytool\fP と \f3jarsigner\fP の 2 つのコマンド行ツールと、\f3Policy Tool\fP という名前の 1 つの GUI ベースのツールがあります。\f2KeyStore\fP は public として使用可能なので、Java 2 SDK ユーザーは KeyStore を使ったほかのセキュリティーアプリケーションも作成できます。 -.LP -.LP -キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアをファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワードによって保護され、キーストア全体の整合性も (非公開鍵とは別の) パスワードによって保護されます。 -.LP -.LP -キーストアの実装は、プロバイダベースです。具体的には、\f2KeyStore\fP が提供するアプリケーションインタフェースは、Service Provider Interface (SPI) という形で実装されています。つまり、対応する \f2KeystoreSpi\fP 抽象クラス (これも \f2java.security\fP パッケージに含まれている) があり、このクラスが Service Provider Interface のメソッドを定義しています。 これらのメソッドは、「プロバイダ」が実装しなければなりません。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービスのサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合のことです。したがって、キーストアの実装を提供するには、 -.na -\f2「Java 暗号化アーキテクチャー用プロバイダの実装方法」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlで説明しているように、クライアントが「プロバイダ」を実装し、KeystoreSpi サブクラスの実装を提供する必要があります。 -.LP -.LP -アプリケーションでは、\f2KeyStore\fP クラスが提供する getInstance ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式を定義するとともに、キーストア内の非公開鍵とキーストア自体の整合性を保護するために使われるアルゴリズムを定義します。異なるタイプのキーストアの実装には、互換性はありません。 -.LP -.LP -\f3keytool\fP は、任意のファイルベースのキーストア実装で動作します。keytool は、コマンド行から渡されたキーストアの場所をファイル名として扱い、これを FileInputStream に変換して、FileInputStream からキーストアの情報をロードします。一方、\f3jarsigner\fP ツールと \f3policytool\fP ツールは、URL で指定可能な任意の場所からキーストアを読み込むことができます。 -.LP -.LP -\f3jarsigner\fP と \f3keytool\fP の場合、\f2\-storetype\fP オプションを使ってコマンド行でキーストアのタイプを指定できます。\f3Policy Tool\fP の場合は、[Edit] メニューの [Change Keystore] コマンドを使ってキーストアのタイプを指定できます。 -.LP -.LP -キーストアのタイプを明示的に指定しない場合、keytool、jarsigner、および policytool の各ツールは、セキュリティープロパティーファイル内で指定された \f2keystore.type\fP プロパティーの値に基づいてキーストアの実装を選択します。セキュリティープロパティーファイルは、\f2java.security\fP という名前で SDK セキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位のディレクトリ) です。 -.LP -.LP -各ツールは、\f2keystore.type\fP の値を取得し、この値で指定されたタイプのキーストアを実装しているプロバイダが見つかるまで、現在インストールされているすべてのプロバイダを調べます。目的のプロバイダが見つかると、そのプロバイダからのキーストアの実装を使います。 -.LP -.LP -\f2KeyStore\fP クラスでは \f2getDefaultType\fP という名前の static メソッドが定義されており、アプリケーションとアプレットはこのメソッドを使うことで \f2keystore.type\fP プロパティーの値を取得できます。次のコードは、デフォルトのキーストアタイプ (\f2keystore.type\fP プロパティーで指定されたタイプ) のインスタンスを生成します。 -.LP -.nf -\f3 -.fl - KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); -.fl -\fP -.fi - -.LP -.LP -デフォルトのキーストアタイプは JKS (Sun が提供する独自のタイプのキーストアの実装) です。これは、セキュリティープロパティーファイル内の次の行によって指定されています。 -.LP -.nf -\f3 -.fl - keystore.type=jks -.fl -\fP -.fi - -.LP -.LP -注:キーストアのタイプの指定では、大文字と小文字は区別されません。たとえば、JKS と jks は同じものとして扱われます。 -.LP -.LP -各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して別のキーストアのタイプを指定します。たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供しているプロバイダパッケージを使用するには、上の行を次のように変更します。 -.LP -.nf -\f3 -.fl - keystore.type=pkcs12 -.fl -\fP -.fi - -.LP -.LP -PKCS#11 プロバイダパッケージを使用する場合、その詳細については、「Java PKCS#11 Reference Guide」にある -.na -\f2「KeyTool and JarSigner」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSignerの節を参照してください。 -.LP -.RE -.RE -.SS -サポートされるアルゴリズム -.LP -.RS 3 - -.LP -.LP -デフォルトでは、\f3jarsigner\fP は次のどちらかのアルゴリズムを使って JAR ファイルに署名します。 -.LP -.RS 3 -.TP 2 -o -SHA\-1 ダイジェストアルゴリズムを使った DSA (デジタル署名アルゴリズム) -.TP 2 -o -MD5 ダイジェストアルゴリズムを使った RSA アルゴリズム +Java 2 SDK ȥ˥ݡȤǤΤϡǤ륢ǥƥƥǤ .RE .LP -.LP -具体的には、署名者の公開鍵と非公開鍵が DSA 鍵である場合、\f3jarsigner\fP は SHA1withDSA アルゴリズムを使って JAR ファイルに署名を付けます。署名者の鍵が RSA 鍵である場合、\f3jarsigner\fP は MD5withRSA アルゴリズムを使って JAR ファイルに署名を付けます。 -.LP -.LP -これらのデフォルトの署名アルゴリズムは、\f2\-sigalg\fP オプションを使ってオーバーライドできます。 -.LP -.RE -.SS -署名付き JAR ファイル -.LP -.RS 3 - -.LP -.LP -\f3jarsigner\fP を使って JAR ファイルに署名を付けた場合、出力される署名付き JAR ファイルは入力 JAR ファイルと同じですが、次の 2 つの追加ファイルが META\-INF ディレクトリに置かれる点が異なります。 -.LP -.RS 3 -.TP 2 -o -.SF 拡張子の付いた署名ファイル -.TP 2 -o -.DSA 拡張子の付いた署名ブロックファイル -.RE - -.LP -.LP -これら 2 つのファイルのベースファイル名は、\f2\-sigFile\fP オプションの値から作成されます。たとえば、次のようにオプションを指定したとします。 -.LP -.nf -\f3 -.fl - \-sigFile MKSIGN -.fl -\fP -.fi - -.LP -.LP -この場合、ファイル名はそれぞれ MKSIGN.SF と MKSIGN.DSA になります。 -.LP -.LP -コマンド行で \f2\-sigfile\fP オプションを指定しなかった場合、.SF ファイルと .DSA ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字をすべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名がそのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。使用できる文字は、アルファベット、数字、下線 (_)、ハイフンです。 -.LP -\f3署名 (.SF) ファイル\fP -.LP -.RS 3 - -.LP -.LP -署名ファイル (.SF ファイル) は、\f3jarsigner\fP で署名を付けた JAR ファイルに常に含まれるマニフェストファイルと似ています。つまり、マニフェストファイル同様、.SF ファイルには、JAR ファイルに含まれているソースファイルごとに、次の 3 つの行があります。 -.LP -.RS 3 -.TP 2 -o -ファイル名 -.TP 2 -o -使われているダイジェストアルゴリズム (SHA) の名前 -.TP 2 -o -SHA ダイジェストの値 -.RE - -.LP -.LP -マニフェストファイルでは、SHA ダイジェストの値は、ソースファイルのバイナリデータのダイジェスト (ハッシュ) です。一方、.SF ファイルでは、ソースファイルのダイジェストの値は、マニフェストファイル中の該当するソースファイルに対応する 3 行のハッシュです。 -.LP -.LP -署名ファイルには、デフォルトでマニフェストファイル全体のハッシュも含まれています。後述の「JAR ファイルの検証」で説明するように、このヘッダーの存在によって検証の最適化が可能になっています。 -.LP -.RE -\f3署名ブロック (.DSA) ファイル\fP -.LP -.RS 3 - -.LP -.LP -.SF ファイルには署名が付けられ、署名は .DSA ファイルに置かれます。.DSA ファイルには、キーストアからの証明書または証明書チェーンも符号化された形で含まれています。 証明書または証明書チェーンは、署名に使われた非公開鍵に対応する公開鍵を認証します。 -.LP -.RE -.RE -.SS -署名タイムスタンプ -.LP -.RS 3 - -.LP -.LP -J2SE 5.0 リリースの \f2jarsigner\fP ツールは、JAR ファイルの署名時に署名タイムスタンプを生成および格納できるようになりました。さらに、\f2jarsigner\fP は代替署名機構をサポートします。この動作は省略可能で、署名時に次の各オプションによって制御されます。 -.LP -.RS 3 -.TP 2 -o -\f2\-tsa url\fP -.TP 2 -o -\f2\-tsacert alias\fP -.TP 2 -o -\f2\-altsigner class\fP -.TP 2 -o -\f2\-altsignerpath classpathlist\fP -.RE - -.LP -.LP -これらの各オプションの詳細については、後述の「オプション」節を参照してください。 -.LP -.RE -.SS -JAR ファイルの検証 -.LP -.RS 3 - -.LP -.LP -JAR ファイルの検証が成功するのは、署名が有効であり、かつ署名の生成以後に JAR ファイル内のどのファイルも変更されていない場合です。JAR ファイルの検証は、次の手順で行われます。 -.LP -.RS 3 -.TP 3 -1. -.SF ファイルそれ自体の署名を検証します。 -.LP -この手順では、各署名ブロック (.DSA) ファイルに格納されている署名が、実際に、公開鍵に対応する非公開鍵を使って生成されたものであることを確認します。 .DSA ファイルには、公開鍵の証明書 (または証明書チェーン) も含まれています。また、この手順では、目的の署名が、対応する署名 (.SF) ファイル内の有効な署名であるかどうかを調べ、.SF ファイルが改変されていないことも確認します。 -.TP 3 -2. -.SF ファイル内の各エントリのダイジェストをマニフェスト内の対応する各セクションと突き合わせて検証します。 -.LP -.SF ファイルには、マニフェストファイル全体のハッシュが格納されたヘッダーがデフォルトで含まれています。このヘッダーが存在する場合は、ヘッダー内のハッシュが実際にマニフェストファイルのハッシュと一致するかどうかを検証することができます。ハッシュが一致する場合は、次の手順に進みます。 -.LP -ハッシュが一致しない場合は、効率的には劣る方法を使って検証を行います。 具体的には、.SF ファイル内の各ソースファイル情報セクションのハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するかどうかを確認します (「署名 (.SF) ファイル」を参照)。 -.LP -.SF ファイルのヘッダーに格納されたマニフェストファイルのハッシュと、実際のマニフェストファイルのハッシュとが一致しない場合は、署名 (および .SF ファイル) の生成後に、JAR ファイルに 1 つ以上のファイルが追加 (\f2jar\fP ツールを使用) された可能性があります。\f2jar\fP ツールを使ってファイルを追加した場合、マニフェストファイルは変更されますが (新しいファイル用のセクションが追加される)、.SF ファイルは変更されません。この場合、.SF ファイルのヘッダー以外のセクションに格納されたハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するときは、署名の生成時に JAR ファイル内に存在していたファイルのうち、どのファイルも変更されていないことになり、検証は成功したものとして扱われます。 -.TP 3 -3. -JAR ファイル内のファイルのうち、.SF ファイル内にエントリを持つ各ファイルを読み込みます。読み込み中にファイルのダイジェストを計算し、結果をマニフェストセクション内の該当するファイルのダイジェストと比較します。2 つのダイジェストは同じでなければならず、そうでない場合は検証が失敗します。 -.RE - -.LP -.LP -検証プロセスの途中でなんらかの重大な検証エラーが発生した場合、検証プロセスは中止され、セキュリティー例外がスローされます。スローされたセキュリティー例外は、\f3jarsigner\fP がキャッチして表示します。 -.LP -.RE -.SS -1 つの JAR ファイルを対象とする複数の署名 -.LP -.RS 3 - -.LP -.LP -1 つの JAR ファイルに対して \f3jarsigner\fP ツールを複数回実行し、実行のたびに、異なるユーザーの別名を指定すれば、JAR ファイルに複数のユーザーの署名を付けることができます。 -.LP -.nf -\f3 -.fl - jarsigner myBundle.jar susan -.fl - jarsigner myBundle.jar kevin -.fl -\fP -.fi - -.LP -.LP -JAR ファイルが複数回署名されている場合、その JAR ファイルには .SF ファイルと .DSA ファイルの対が複数含まれることになります。 .SF ファイルと .DSA ファイルの対は、1 回の署名に対して 1 つ作成されます。したがって、上の例で出力される JAR ファイルには、次の名前を持つファイルが含まれます。 -.LP -.nf -\f3 -.fl - SUSAN.SF -.fl - SUSAN.DSA -.fl - KEVIN.SF -.fl - KEVIN.DSA -.fl -\fP -.fi - -.LP -.LP -注:JAR ファイルでは、JDK 1.1 の \f3javakey\fP ツールで生成された署名と \f3jarsigner\fP で生成された署名が混在できます。つまり、すでに \f3javakey\fP を使って署名が付けられている JAR ファイルに、\f3jarsigner\fP を使って署名を付けることができます。 -.LP -.RE -.SH "オプション" -.LP - -.LP -.LP -以下では、\f3jarsigner\fP のオプションについて説明します。注: +.SH "Ϣ" .LP .RS 3 .TP 2 o -どのオプション名にも先頭にマイナス記号 (\-) が付く -.TP 2 -o -オプションは任意の順序で指定できる -.TP 2 -o -イタリック体の項目の実際の値 (オプションの値) は、ユーザーが指定する必要がある -.TP 2 -o -\f2\-keystore\fP、\f2\-storepass\fP、\f2\-keypass\fP、\f2\-sigfile\fP、\f2\-sigalg\fP、\f2\-digestalg\fP および \f2\-signedjar\fP の各オプションを使用できるのは、JAR ファイルに署名を付ける場合だけである。 これらのオプションは、JAR ファイルを検証する場合には使用できない。同様に、別名をコマンド行で指定するのは、JAR ファイルに署名を付ける場合だけである -.RE - -.LP -.RS 3 -.TP 3 -\-keystore url -キーストアの場所を示す URL を指定します。デフォルトは、ユーザーのホームディレクトリ内のファイル \f2.keystore\fP です。 ユーザーのホームディレクトリは、user.home システムプロパティーによって決まります。 -.LP -署名するときはキーストアが必要です。 このため、デフォルトのキーストアが存在しない場合、あるいはデフォルト以外のほかのキーストアを使用する場合は、キーストアを明示的に指定する必要があります。 -.LP -検証するときはキーストアは必要ありません。 ただし、キーストアが指定されているか、あるいはデフォルトのキーストアが存在していて、さらに \f2\-verbose\fP オプションも指定されている場合は、JAR ファイルの検証に使われる証明書がキーストアに存在するかどうかについての追加情報が出力されます。 -.LP -注:\f2\-keystore\fP の引数には、URL の代わりにファイル名 (とパス) を指定できます。 ファイル名 (とパス) を指定した場合は、「file:」URL として扱われます。たとえば、次のように指定できます。 -.nf -\f3 -.fl - \-keystore \fP\f4filePathAndName\fP\f3 -.fl -\fP -.fi -これは、次の指定と同じものとして扱われます。 -.nf -\f3 -.fl - \-keystore file:\fP\f4filePathAndName\fP\f3 -.fl -\fP -.fi -JRE の \f2$JAVA_HOME/lib/security\fP ディレクトリに格納された \f2java.security\fP セキュリティープロパティーファイル内で Sun PKCS#11 プロバイダが設定されている場合、keytool と jarsigner は PKCS#11 トークンに基づいて動作できます。 次のオプションを指定します。 -.RS 3 -.TP 2 -o -\f2\-keystore NONE\fP +jar(1) ġΥɥ .TP 2 o -\f2\-storetype PKCS11\fP -.RE -たとえば、次のコマンドは、設定された PKCS#11 トークンの内容を一覧表示します。 -.RS 3 - -.LP -.nf -\f3 -.fl - jarsigner \-keystore NONE \-storetype PKCS11 \-list -.fl - -.fl -\fP -.fi -.RE -.TP 3 -\-storetype storetype -インスタンスを生成するキーストアのタイプを指定します。デフォルトのキーストアタイプは、セキュリティープロパティーファイル内の keystore.type プロパティーの値で指定されたタイプです。 この値は、\f2java.security.KeyStore\fP の static \f2getDefaultType\fP メソッドで取得できます。 -.LP -\f2\-storepass\fP オプションを使って PCKS#11 トークンの PIN を指定することもできます。何も指定しなかった場合、keytool と jarsigner はユーザーにトークン PIN の 入力を求めます。トークンに保護された認証パス (専用の PIN パッドや生体読み取り機など) がある場合、\f2\-protected\fP オプションを指定する必要がありますが、パスワードオプションを指定する必要はありません。 -.TP 3 -\-storepass password -キーストアにアクセスするのに必要なパスワードを指定します。このオプションが必要なのは、JAR ファイルに署名を付けるときだけです (JAR ファイルを検証するときは不要)。署名を付けるときに、コマンド行で \f2\-storepass\fP オプションを指定しなかった場合は、パスワードの入力を求められます。 -.LP -注:テストを目的とする場合、またはセキュリティー保護されたシステムを使用している場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。また、password プロンプトでパスワードを入力すると、入力したパスワードがエコーされ、そのまま画面に表示されます。 このため、周囲にほかのユーザーがいる場合は、パスワードを見られないように注意してください。 -.TP 3 -\-keypass password -コマンド行で指定された別名に対応するキーストアエントリの非公開鍵を保護するのに使うパスワードを指定します。\f3jarsigner\fP を使って JAR ファイルに署名を付けるときは、パスワードが必要です。コマンド行でパスワードが指定されておらず、必要なパスワードがストアのパスワードと異なる場合は、パスワードの入力を求められます。 -.LP -注:テストを目的とする場合、またはセキュリティー保護されたシステムを使用している場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。また、password プロンプトでパスワードを入力すると、入力したパスワードがエコーされ、そのまま画面に表示されます。 このため、周囲にほかのユーザーがいる場合は、パスワードを見られないように注意してください。 -.TP 3 -\-sigfile file -.SF ファイルと .DSA ファイルの生成に使うベースファイル名を指定します。たとえば、\f2file\fP に DUKESIGN を指定すると、生成される .SF ファイルと .DSA ファイルの名前は、それぞれ DUKESIGN.SF と DUKESIGN.DSA になります。 これらのファイルは、署名付き JAR ファイルの META\-INF ディレクトリに置かれます。 -.LP -\f2file\fP に使用できる文字は「a\-zA\-Z0\-9_\-」です。つまり、文字、数字、下線、およびハイフンだけを使用できます。注:.SF および .DSA のファイル名では、小文字はすべて大文字に変換されます。 -.LP -コマンド行で \f2\-sigfile\fP オプションを指定しなかった場合、.SF ファイルと .DSA ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字をすべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名がそのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。 -.TP 3 -\-sigalg algorithm -.RS 3 - -.LP -JAR ファイルの署名に使用する署名アルゴリズムの名前を指定します。 -.LP -標準署名アルゴリズム名の一覧については、「Java Cryptography Architecture」にある -.na -\f2「Appendix A 」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。このアルゴリズムは、JAR ファイルの署名に使用する秘密鍵と互換性のあるものでなければなりません。このオプションを指定しなかった場合、秘密鍵のタイプに応じて SHA1withDSA、MD5withRSA のいずれかが使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザーがそのようなプロバイダを \f2\-providerClass\fP オプションを使って指定する必要があります。 そうでない場合、コマンドの実行が失敗します。 -.LP -.RE -.TP 3 -\-digestalg algorithm -.RS 3 -JAR ファイルのエントリをダイジェストする際に使用するメッセージダイジェストアルゴリズムの名前を指定します。 -.LP -標準メッセージダイジェストアルゴリズム名の一覧については、「Java Cryptography Architecture」にある -.na -\f2「Appendix A 」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。このオプションを指定しなかった場合、SHA\-1 が使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザーがそのようなプロバイダを \f2\-providerClass\fP オプションを使って指定する必要があります。 そうでない場合、コマンドの実行が失敗します。 -.LP -.RE -.TP 3 -\-signedjar file -署名付き JAR ファイルの名前を指定します。 -.LP -コマンド行で名前を指定しなかった場合は、入力 JAR ファイル (署名の対象となる JAR ファイル) の名前と同じ名前が使われます。 この場合、入力 JAR ファイルは署名付き JAR ファイルによって上書きされます。 -.TP 3 -\-verify -コマンド行でこのオプションが指定されている場合は、指定された JAR ファイルが検証されます。JAR ファイルへの署名は行われません。 検証が成功すると、「jar が検証されました。」 というメッセージが表示されます。署名されていない JAR ファイル、またはサポートされていないアルゴリズム (RSA プロバイダのインストールを終了していない場合の RSA など) を使って署名された JAR ファイルを検証しようとすると、「jar は署名されていません。(署名が見つからないか、構文解析できません)」というメッセージが表示されます。 -.LP -署名付き JAR ファイルは、\f3jarsigner\fP または JDK 1.1 の \f3javakey\fP ツール、あるいはその両方を使って検証できます。 -.LP -検証についての詳細は、「JAR ファイルの検証」を参照してください。 -.TP 3 -\-certs -コマンド行で、\f2\-verify\fP および \f2\-verbose\fP オプションとともにこのオプションが指定されている場合は、JAR ファイルの各署名者の証明書情報も出力されます。証明書情報には次のものが含まれます。 -.RS 3 -.TP 2 -o -署名者の公開鍵を証明する (.DSA ファイルに格納された) 証明書の種類の名前 -.TP 2 -o -証明書が X.509 証明書 (つまり、\f2java.security.cert.X509Certificate\fP のインスタンス) である場合は、署名者の識別名 -.RE -.LP -キーストアの確認も行われます。コマンド行でキーストアの値が指定されていない場合、デフォルトのキーストアファイルがあれば、検査されます。署名者の公開鍵の証明書がキーストア内のエントリと一致した場合は、次の情報も表示されます。 -.RS 3 +keytool(1) ġΥɥ .TP 2 o -署名者に該当するキーストアエントリの別名。 この別名は括弧で囲まれます。ただし、キーストアではなく JDK 1.1 のアイデンティティーデータベースに由来する署名者の場合は、括弧ではなく大括弧で囲まれます。 -.RE -.TP 3 -\-verbose -コマンド行でこのオプションが指定されている場合、\f3jarsigner\fP は「冗長」モードで動作し、JAR の署名または検証の進行状況に関する追加情報を出力します。 -.TP 3 -\-internalsf -以前は、JAR ファイルの署名時に生成された .DSA (署名ブロック) ファイルの中に、生成された .SF ファイル (署名ファイル) の完全なコピーが符号化された形で含まれていました。この動作は変更されました。この動作は変更になり、現在では、出力 JAR ファイル全体のサイズを小さくするために、デフォルトでは .SF ファイルが .DSA ファイルに含まれないようになっています。ただし、コマンド行で \f2\-internalsf\fP オプションを指定すると、以前と同じように動作します。\f3このオプションは、テストを行う場合には便利ですが、それ以外には使用しないでください。 このオプションを使用すると、有益な最適化が行われなくなります。\fP -.TP 3 -\-sectionsonly -コマンド行でこのオプションが指定されている場合、JAR ファイルの署名時に生成される .SF ファイル (署名ファイル) には、マニフェストファイル全体のハッシュを含むヘッダーは追加されません。この場合、.SF ファイルに含まれるのは、JAR ファイル内の各ソースファイルに関する情報およびハッシュだけです。 詳細は、「署名 (.SF) ファイル」を参照してください。 -.LP -デフォルトでは、最適化を行うために、マニフェストファイル全体のハッシュを含むヘッダーが追加されます。ヘッダーが存在する場合は、JAR ファイルの検証時に、まずヘッダー内のハッシュが、マニフェストファイル全体のハッシュと実際に一致するかどうかが確認されます。ハッシュが一致する場合、検証は次の手順に進みます。ハッシュが一致しない場合は、効率的には劣る方法を使って検証を行います。 具体的には、.SF ファイル内の各ソースファイル情報セクションのハッシュが、マニフェストファイル内の対応するセクションのハッシュと一致するかどうかを確認します。 -.LP -詳細は、「JAR ファイルの検証」を参照してください。 -.LP -\f3このオプションは、テストを行う場合には便利ですが、それ以外には使用しないでください。 このオプションを使用すると、有益な最適化が行われなくなります。\fP -.TP 3 -\-protected -\f2true\fP または \f2false\fP のいずれか。専用 PIN リーダーなどの保護された認証パスを介してパスワードを指定する必要がある場合には、この値に \f2true\fP を指定してください。 -.RE -.RS 3 -.TP 3 -\-provider provider\-class\-name -サービスプロバイダがセキュリティープロパティーファイル (\f2java.security\fP) のリストに入っていないときに、暗号化サービスプロバイダのマスタークラスファイルの名前を指定します。 -.LP -\f2\-providerArg\fP \f2ConfigFilePath\fP オプションと組み合わせて使用します。 keytool と jarsigner はプロバイダを動的にインストールします (ここで、\f2ConfigFilePath\fP はトークン設定ファイルへのパスです)。セキュリティープロパティーファイル内で Sun PKCS#11 プロバイダが設定されていない場合に PKCS#11 キーストアを一覧表示するコマンドの例を次に示します。 -.RS 3 - -.LP -.nf -\f3 -.fl -jarsigner \-keystore NONE \-storetype PKCS11 \\ -.fl - \-providerClass sun.security.pkcs11.SunPKCS11 \\ -.fl - \-providerArg /foo/bar/token.config \\ -.fl - \-list -.fl -\fP -.fi -.RE -.TP 3 -\-providerName providerName -\f2java.security\fP セキュリティープロパティーファイル内で 2 つ以上のプロバイダが設定されている場合、\f2\-providerName\fP オプションを使って特定のプロバイダインスタンスを選択できます。このオプションの引数は、プロバイダの名前です。 -.LP -Sun PKCS#11 プロバイダの場合、\f2providerName\fP は \f2SunPKCS11\-\fP\f2TokenName\fP という形式になります。 ここで「\f2TokenName\fP」は、プロバイダインスタンスが構成された名前の接尾辞です。 詳細は .na -\f2構成属性の表\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#ATTRSを参照してください。たとえば、以下のコマンドでは、名前接尾辞 \f2SmartCard\fP の PKCS#11 キーストアプロバイダインスタンスの内容をリストします。 -.RS 3 - -.LP -.nf -\f3 -.fl -jarsigner \-keystore NONE \-storetype PKCS11 \\ -.fl - \-providerName SunPKCS11\-SmartCard \\ -.fl - \-list -.fl -\fP -.fi -.RE -.TP 3 -\-Jjavaoption -指定された \f2javaoption\fP 文字列を Java インタプリタに直接渡します。(\f3jarsigner\fP は、実際には Java インタプリタに対する「ラッパー」です。このオプションには、空白を含めることはできません。このオプションは、実行環境またはメモリー使用を調整する場合に便利です。指定できるインタプリタオプションを一覧表示するには、コマンド行で \f2java \-h\fP または \f2java \-X\fP と入力してください。 -.LP -.TP 3 -\-tsa url -JAR ファイルの署名時にコマンド行に「\f2\-tsa http://example.tsa.url\fP」が表示される場合、署名のタイムスタンプが生成されます。URL \f2http://example.tsa.url\fP は、TSA (Time Stamping Authority) の場所を特定します。これは、\f2\-tsacert\fP オプションで検出された URL をオーバーライドします。\f2\-tsa\fP オプションでは、TSA の公開鍵証明書をキーストアに配置する必要はありません。 -.LP -タイムスタンプを生成するため、\f2jarsigner\fP は -.na -\f2RFC 3161\fP @ -.fi -http://www.ietf.org/rfc/rfc3161.txt で定義されている TSP (Time\-Stamp Protocol) を使用して TSA と通信します。成功すると、TSA から返されたタイムスタンプトークンは署名ブロックファイルの署名とともに保存されます。 -.LP -.TP 3 -\-tsacert alias -JAR ファイルの署名時にコマンド行に「\f2\-tsacert alias\fP」が表示される場合、署名のタイムスタンプが生成されます。\f2alias\fP は、キーストア内の現在有効な TSA の公開鍵証明書を特定します。エントリの証明書で、TSA の場所を特定する URL を含む Subject Information Access 拡張機能が確認されます。 -.LP -TSA の公開鍵証明書は、\f2\-tsacert\fP を使った場合、キーストアに配置されている必要があります。 -.LP -.TP 3 -\-altsigner class -代替署名機構を使用することを指定します。完全修飾クラス名は、\f2com.sun.jarsigner.ContentSigner\fP の abstract クラスを拡張するクラスファイルを特定します。このクラスファイルへのパスは、\f2\-altsignerpath\fP オプションによって定義されます。\f2\-altsigner\fP オプションを使用した場合、\f2jarsigner\fP は指定されたクラスが提供する署名機構を使用します。または、\f2jarsigner\fP はデフォルトの署名機構を使用します。 -.LP -たとえば、\f2com.sun.sun.jarsigner.AuthSigner\fP というクラスが提供する署名機構を使用するには、\f2jarsigner\fP オプション「\f2\-altsigner com.sun.jarsigner.AuthSigner\fP」を使用します。 -.LP -.TP 3 -\-altsignerpath classpathlist -クラスファイル (クラスファイル名は上記のように \f2\-altsigner\fP オプションで指定される) およびそれが依存する JAR ファイルへのパスを指定します。クラスファイルが JAR ファイル内にある場合、以下の例のように JAR ファイルへのパスが指定されます。 -.LP -絶対パスまたは現在のディレクトリからの相対パスを指定できます。\f2classpathlist\fP には、複数のパスまたは JAR ファイルを含めることができます。 その場合、各パスまたは JAR ファイルを、Solaris の場合にはコロン (\f2:\fP)、Windows の場合にはセミコロン (\f2;\fP) で区切ります。目的のクラスがすでに検索パス内にある場合は、このオプションは不要です。 -.LP -クラスファイルを含む、JAR ファイルへのパスを指定する例を示します。 -.RS 3 - -.LP -.LP -\f2\-altsignerpath /home/user/lib/authsigner.jar\fP -.LP -.RE -.LP -JAR ファイル名が含まれていることに注意してください。 -.LP -クラスファイルを含む JAR ファイルへのパスを指定する例を示します。 -.RS 3 -.LP -\f2\-altsignerpath /home/user/classes/com/sun/tools/jarsigner/\fP -.LP -.RE -.LP -JAR ファイル名は含まれていないことに留意してください。 -.RE -.SH "例" -.LP - -.LP -.SS -JAR ファイルの署名 -.LP -.RS 3 - -.LP -.LP -bundle.jar という名前の JAR ファイルがあるとします。 このファイルに、キーストアの別名が jane であるユーザーの非公開鍵を使って、署名を付けるとします。キーストアは、mystore という名前で、C ドライブの working ディレクトリにあり、キーストアのパスワードは mypass、\f2jane\fP の非公開鍵のパスワードは j638klm とします。この場合、次のコマンドを実行すると、JAR ファイルに署名を付けて sbundle.jar という署名付き JAR ファイルを作成できます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-storepass myspass -.fl - \-keypass j638klm \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -上のコマンドでは \f2\-sigfile\fP オプションが指定されていないため、署名付き JAR ファイルに格納される .SF ファイルと .DSA ファイルの名前は、別名からデフォルト名がつけられます。つまり、\f2JANE.SF\fP と \f2JANE.DSA\fP になります。 -.LP -.LP -ストアのパスワードと非公開鍵のパスワードをあとで入力する場合は、上のコマンドを短縮して次のように入力できます。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore -.fl - \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -デフォルトのキーストア (ホームディレクトリ内の .keystore という名前のキーストア) を使用する場合は、次に示すように、キーストアの指定を省略できます。 -.LP -.nf -\f3 -.fl - jarsigner \-signedjar sbundle.jar bundle.jar jane -.fl -\fP -.fi - -.LP -.LP -また、署名付き JAR ファイルで入力 JAR ファイル (\f2bundle.jar\fP) を上書きする場合は、\f2\-signedjar\fP オプションの指定も省略できます。 -.LP -.nf -\f3 -.fl - jarsigner bundle.jar jane -.fl -\fP +\f4jarsigner\fP\f2 ġλˤĤƤϡ\fP @ .fi -.RE - -.LP -.SS -署名付き JAR ファイルの検証 -.LP -.RS 3 - -.LP -.LP -次に示すのは、署名付き JAR ファイルを検証し、署名が有効で JAR ファイルが改変されていないことを確認するためのコマンド例です。 -.LP -.nf -\f3 -.fl - jarsigner \-verify sbundle.jar -.fl -\fP -.fi - -.LP -.LP -検証が成功すると、次のようなメッセージが表示されます。 -.LP -.nf -\f3 -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -というメッセージが表示されます。検証が成功しなかった場合は、エラーメッセージが表示されます。 -.LP -.LP -\f2\-verbose\fP オプションを使うと、より多くの情報が表示されます。次に示すのは、\f2\-verbose\fP オプションを指定した \f3jarsigner\fP の実行例とその出力結果です。 -.LP -.nf -\f3 -.fl - jarsigner \-verify \-verbose sbundle.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class -.fl - smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP +http://download.oracle.com/javase/tutorial/index.html +.na +\f2Java 塼ȥꥢ\fP\f4\fP @ .fi - -.LP -.SS -証明書情報を使った検証 -.LP -.LP -検証時に、\f2\-verify\fP と \f2\-verbose\fP オプションに加えて \f2\-certs\fP オプションを指定した場合は、JAR ファイル内の各署名者の証明書情報も出力されます。 これには、証明書のタイプ、署名者の識別名情報 (X.509 証明書の場合)、および JAR ファイルの公開鍵の証明書がキーストアエントリの公開鍵の証明書と一致する場合には、括弧で囲まれた署名者のキーストア別名が含まれます。次に例を示します。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-verify \-verbose \-certs myTest.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - 208 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.SF -.fl - 1087 Fri Sep 26 16:23:30 PDT 1997 META\-INF/JAVATEST.DSA -.fl - smk 2752 Fri Sep 26 16:12:30 PDT 1997 Tst.class -.fl - -.fl - X.509, CN=Test Group, OU=Java Software, O=Sun Microsystems, L=CUP, S=CA, C=US (javatest) -.fl - X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -署名者の証明書が X.509 証明書でない場合は、識別名情報は表示されません。その場合には、証明書のタイプと別名だけが表示されます。たとえば、証明書が PGP 証明書で、別名が bob の場合は、次のように表示されます。 -.LP -.nf -\f3 -.fl - PGP, (bob) -.fl -\fP -.fi - -.LP -.SS -アイデンティティーデータベースの署名者を含む JAR ファイルの検証 -.LP -.LP -JAR ファイルが、JDK 1.1 の \f3javakey\fP ツールを使って署名されている場合、署名者はアイデンティティーデータベース内の別名です。 この場合、検証の出力には i という記号が含まれます。JAR ファイルが、アイデンティティーデータベース内の別名とキーストア内の別名の両方によって署名されている場合は、k と i の両方が表示されます。 -.LP -.LP -\f2\-certs\fP オプションを指定した場合、キーストアの別名は括弧で囲まれるのに対し、アイデンティティーデータベース内の別名は角括弧で囲まれて表示されます。例を示します。 -.LP -.nf -\f3 -.fl - jarsigner \-keystore /working/mystore \-verify \-verbose \-certs writeFile.jar -.fl - -.fl - 198 Fri Sep 26 16:14:06 PDT 1997 META\-INF/MANIFEST.MF -.fl - 199 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.SF -.fl - 1013 Fri Sep 26 16:22:10 PDT 1997 META\-INF/JANE.DSA -.fl - 199 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.SF -.fl - 1013 Fri Sep 27 12:22:30 PDT 1997 META\-INF/DUKE.DSA -.fl - smki 2752 Fri Sep 26 16:12:30 PDT 1997 writeFile.html -.fl - -.fl - X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane) -.fl - X.509, CN=Duke, OU=Java Software, O=Sun, L=cup, S=ca, C=us [duke] -.fl - -.fl - s = 署名が検証されました。 -.fl - m = エントリがマニフェスト内にリストされます。 -.fl - k = 1 つ以上の証明書がキーストアで検出されました。 -.fl - i = 1 つ以上の証明書がアイデンティティースコープで検出されました。 -.fl - -.fl - jar が検証されました。 -.fl -\fP -.fi - -.LP -.LP -別名 duke は角括弧で囲まれているので、この別名はキーストアの別名ではなく、アイデンティティーデータベースの別名です。 -.LP -.RE -.SH "関連項目" -.LP - -.LP -.RS 3 -.TP 2 -o -jar(1) ツールのドキュメント -.TP 2 -o -keytool(1) ツールのドキュメント -.TP 2 -o -\f3jarsigner\fP ツールの使用例については、 -.na -\f4「Java Tutorial」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/index.htmlの -.na -\f4「Security」\fP @ -.fi -http://java.sun.com/docs/books/tutorial/security/index.htmlを参照 +http://download.oracle.com/javase/tutorial/index.htmlSecurity\f3򻲾\fP .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/java.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/java.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/java.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,29 +19,29 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH java 1 "02 Jun 2010" +.TH java 1 "14 Apr 2011" .LP -.SH "名前" -java \- Java アプリケーション起動ツール +.SH "̾" +java \- Java ץꥱưġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" +.SH "" .LP .nf \f3 @@ -54,88 +54,78 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 class -呼び出されるクラスの名前 +ƤӽФ륯饹̾ .TP 3 file.jar -呼び出される JAR ファイルの名前。必ず \f2\-jar\fP とともに使用する +ƤӽФ JAR ե̾ɬ \f2\-jar\fP ȤȤ˻Ѥ .TP 3 argument -\f3main\fP 関数に渡される引数 +\f3main\fP ؿϤ .RE .LP -.RE -.SH " 説明" -.LP - +.SH "" .LP .LP -\f3java\fP ツールは、Java アプリケーションを起動します。java ツールは、Java Runtime Environment を起動したあと、指定されたクラスをロードし、そのクラスの \f3main\fP メソッドを呼び出すことにより、Java アプリケーションを起動します。 +\f3java\fP ġϡJava ץꥱưޤjava ġϡJava Runtime Environment ưȡꤵ줿饹ɤΥ饹 \f3main\fP ᥽åɤƤӽФȤˤꡢJava ץꥱưޤ .LP .LP -このメソッドは、public および static として宣言する必要があります。 また、値を返してはいけません。 さらに、\f2String\fP 配列をパラメータとして指定できなければなりません。メソッドの宣言は、次のようになっていなければなりません。 +Υ᥽åɤϡpublic static Ȥɬפޤ ޤ֤ͤƤϤޤ ˡ \f2String\fP ѥ᡼ȤƻǤʤФʤޤ󡣥᥽åɤϡΤ褦ˤʤäƤʤФʤޤ .LP .nf \f3 .fl - public static void main(String args[]) +public static void main(String args[]) .fl \fP .fi .LP .LP -デフォルトでは、コマンド行オプション以外の最初の引数が、呼び出されるクラスの名前になります。この名前には、完全指定のクラス名を使用する必要があります。\f3\-jar\fP オプションを指定した場合、コマンド行オプション以外の最初の引数が、アプリケーションのクラスファイルとリソースファイルを含む \f3JAR\fP アーカイブの名前になります。 この場合、マニフェストの \f3Main\-Class\fP ヘッダーで指定されたクラスが起動クラスになります。 +ǥեȤǤϡޥɹԥץʳκǽΰƤӽФ륯饹̾ˤʤޤ̾ˤϡΥ饹̾Ѥɬפޤ\f3\-jar\fP ץꤷ硢ޥɹԥץʳκǽΰץꥱΥ饹եȥ꥽եޤ \f3JAR\fP ֤̾ˤʤޤξ硢ޥ˥եȤ \f3Main\-Class\fP إåǻꤵ줿饹ư饹ˤʤޤ .LP .LP -Java Runtime は、ブートストラップクラスパス、インストール型拡張機能、およびユーザークラスパスの 3 箇所から起動クラスと他の使用されているクラスを検索します。 +Java Runtime ϡ֡ȥȥåץ饹ѥ󥹥ȡ뷿ĥǽӥ桼饹ѥ 3 ս꤫鵯ư饹¾λѤƤ륯饹򸡺ޤ .LP .LP -クラス名または JAR ファイル名のあとにある、コマンド行オプション以外の引数は、\f3main\fP 関数に渡されます。 +饹̾ޤ JAR ե̾ΤȤˤ롢ޥɹԥץʳΰϡ\f3main\fP ؿϤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -起動ツールには、現在の実行環境および将来のリリースでサポートされる標準オプションがあります。また、仮想マシンの現在の実装では、非標準オプションのセットもサポートされます。 これは、将来のリリースで変更される可能性があります。 +ưġˤϡߤμ¹ԴĶӾΥ꡼ǥݡȤɸ४ץ󤬤ޤޤۥޥθߤμǤϡɸ४ץΥåȤ⥵ݡȤޤϡΥ꡼ѹǽޤ .LP -.SH "標準オプション" -.LP - +.SH "ɸ४ץ" .LP .RS 3 .TP 3 \-client .LP -Java HotSpot Client VM を選択します。64 ビット対応 JDK は現時点では、このオプションを無視し、代わりに Java Hotspot Server VM を使用します。 +Java HotSpot Client VM 򤷤ޤ64 ӥåб JDK ϸǤϡΥץ̵뤷 Java Hotspot Server VM Ѥޤ .LP -デフォルトの VM の選択については、 +ǥեȤ VM ˤĤƤϡ .na -\f2「サーバー \- クラスマシンの検出」\fP @ +\f2֥С \- 饹ޥθС\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.html򻲾ȤƤ .TP 3 \-server .LP -Java HotSpot Server VM を選択します。64 ビット対応 JDK 上では、サポートされるのは Java Hotspot Server VM だけであるため、\-server オプションが暗黙的に選択されます。 +Java HotSpot Server VM 򤷤ޤ64 ӥåб JDK ǤϡݡȤΤ Java Hotspot Server VM Ǥ뤿ᡢ\-server ץ󤬰Ū򤵤ޤ .LP -デフォルトの VM の選択については、 +ǥեȤ VM ˤĤƤϡ .na -\f2「サーバー \- クラスマシンの検出」\fP @ +\f2֥С \- 饹ޥθС\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/vm/server\-class.html򻲾ȤƤ .TP 3 \-agentlib:libname[=options] -ネイティブエージェントライブラリ \f2libname\fP をロードします。 たとえば次のように指定します。 +ͥƥ֥ȥ饤֥ \f2libname\fP ɤޤȤмΤ褦˻ꤷޤ .LP \-agentlib:hprof .LP @@ -143,57 +133,57 @@ .LP \-agentlib:hprof=help .LP -詳細については、 +ܺ٤ˤĤƤϡ .na -\f2「JVMTI エージェントのコマンド行オプション」\fP @ +\f2JVMTI ȤΥޥɹԥץ\fP @ .fi -http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。 +http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#starting򻲾ȤƤ .TP 3 \-agentpath:pathname[=options] -フルパス名を使用して、ネーティブエージェントライブラリをロードします。詳細については、 +եѥ̾Ѥơ͡ƥ֥ȥ饤֥ɤޤܺ٤ˤĤƤϡ .na -\f2「JVMTI エージェントのコマンド行オプション」\fP @ +\f2JVMTI ȤΥޥɹԥץ\fP @ .fi -http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#startingを参照してください。 +http://java.sun.com/javase/6/docs/platform/jvmti/jvmti.html#starting򻲾ȤƤ .TP 3 \-classpath classpath .TP 3 \-cp classpath -クラスファイルを検索するディレクトリ、JAR アーカイブ、および ZIP アーカイブのリストを指定します。クラスパスの各エントリはコロン (\f3:\fP) で区切ります。\f3\-classpath\fP または \f3\-cp\fP を指定すると、このオプションの値によって \f3CLASSPATH\fP 環境変数の設定がオーバーライドされます。 +饹ե򸡺ǥ쥯ȥꡢJAR ֡ ZIP ֤ΥꥹȤꤷޤ饹ѥγƥȥϥ (\f3:\fP) Ƕڤޤ\f3\-classpath\fP ޤ \f3\-cp\fP ꤹȡΥץͤˤä \f3CLASSPATH\fP Ķѿ꤬С饤ɤޤ .LP -\f3\-classpath\fP も \f3\-cp\fP も使用されず、\f3CLASSPATH\fP も設定されていない場合、ユーザークラスパスは現在のディレクトリ (\f4.\fP) になります。 +\f3\-classpath\fP \f3\-cp\fP Ѥ줺\f3CLASSPATH\fP ꤵƤʤ硢桼饹ѥϸߤΥǥ쥯ȥ (\f4.\fP) ˤʤޤ .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡ \f2.jar\fP ޤ \f2.JAR\fP ĥҤ˻ĥǥ쥯ȥΤ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤̤ȤʤޤΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ* \f2饹ѥȥϡ\fP ȥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .LP -クラスパスの詳細は、 +饹ѥξܺ٤ϡ .na -\f2「クラスパスの設定」\fP @ +\f2֥饹ѥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpath򻲾ȤƤ .TP 3 \-Dproperty=value -システムプロパティーの値を設定します。 +ƥץѥƥͤꤷޤ .TP 3 \-d32 .TP 3 \-d64 -それぞれ 32 ビット環境、64 ビット環境でプログラムを実行することを要求します。要求された環境がインストールされていないかサポートされていない場合は、エラーが報告されます。 +줾 32 ӥåȴĶ64 ӥåȴĶǥץ¹Ԥ뤳Ȥ׵ᤷޤ׵ᤵ줿Ķ󥹥ȡ뤵ƤʤݡȤƤʤϡ顼𤵤ޤ .LP -現在のところ、Java HotSpot Server VM だけが 64 ビットの操作をサポートしており、\-d64 を使用すると \-server オプションが暗黙的に有効になります。したがって、\-d64 使用時には「\-client」オプションは無視されます。この仕様は、将来のリリースでは変更になる可能性があります。 +ߤΤȤJava HotSpot Server VM 64 ӥåȤ򥵥ݡȤƤꡢ\-server ץѤϡ\-d64 ˻Ѥɬפޤäơ\-d64 ѻˤϡ\-clientץץ̵뤵ޤλͤϡΥ꡼Ǥѹˤʤǽޤ .LP -\f3\-d32\fP と \f3\-d64\fP がどちらも指定されていない場合は、デフォルトとして、32 ビット環境で実行されます。この仕様は、将来のリリースでは変更になる可能性があります。 +\f3\-d32\fP \f3\-d64\fP ɤꤵƤʤϡǥեȤȤơ32 ӥåȴĶǼ¹ԤޤλͤϡΥ꡼Ǥѹˤʤǽޤ .TP 3 -\-enableassertions[:<package name>"..."| :<class name> ] +\-enableassertions[:<package name>"..." | :<class name> ] .TP 3 -\-ea[:<package name>"..."| :<class name> ] -アサーションを有効にします。アサーションは、デフォルトでは無効になっています。 +\-ea[:<package name>"..." | :<class name> ] +ͭˤޤϡǥեȤǤ̵ˤʤäƤޤ .LP -引数なしの \f3enableassertions\fP または \f3\-ea\fP を指定すると、アサーションが有効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが有効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが有効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが有効になります。 +ʤ \f3enableassertions\fP ޤ \f3\-ea\fP ꤹȡͭˤʤޤ\f2...\fPפǽ 1 ĻꤹȡꤷѥåȤΥ֥ѥåǥͭˤʤޤȤơ\f2...\fPפꤹȡߤκȥǥ쥯ȥˤ̾Τʤѥåǥͭˤʤޤ\f2...\fPפǽʤ 1 Ļꤹȡꤷ饹ǥͭˤʤޤ .LP -単一コマンド行にこれらのスイッチのインスタンスを複数指定した場合は、指定したスイッチが順番に処理されてからクラスがロードされます。したがって、たとえば、パッケージ \f2com.wombat.fruitbat\fP (サブパッケージを含む) 内でのみアサーションを有効にしてプログラムを実行するには、次のようなコマンドを使用します。 +ñ쥳ޥɹԤˤΥåΥ󥹥󥹤ʣꤷϡꤷå֤˽Ƥ饯饹ɤޤäơȤСѥå \f2com.wombat.fruitbat\fP (֥ѥåޤ) ǤΤߥͭˤƥץ¹ԤˤϡΤ褦ʥޥɤѤޤ .nf \f3 .fl @@ -202,151 +192,156 @@ \fP .fi .LP -\f3\-enableassertions\fP および \f3\-ea\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。 システムクラスにはクラスローダはありません。ただし、この規則には例外が 1 つあります。それは、引数なしでこのスイッチを指定すると、その指定はシステムクラスには適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを有効にするために、別のスイッチが用意されています。 このあとの \f3\-enablesystemassertions\fP を参照してください。 +\f3\-enableassertions\fP \f3\-ea\fP åϡ٤ƤΥ饹ӥƥ९饹ŬѤޤƥ९饹ˤϥ饹Ϥޤ󡣤ε§ˤ 1 㳰ޤϡʤηǤΥåꤹȡλ꤬ƥŬѤʤȤȤǤ㳰ѤСƥ९饹٤ƤΥ饹ǥñͭˤ뤳ȤǤޤ٤ƤΥƥ९饹ǥͭˤ뤿ˡ̤ΥåѰդƤޤΤȤ \f3\-enablesystemassertions\fP 򻲾ȤƤ .TP 3 -\-disableassertions[:<package name>"..."| :<class name> ] +\-disableassertions[:<package name>"..." | :<class name> ] .TP 3 -\-da[:<package name>"..."| :<class name> ] -アサーションを無効にします。これはデフォルトの設定です。 +\-da[:<package name>"..." | :<class name> ] +̵ˤޤ줬ǥեȤǤ .LP -引数なしの \f3disableassertions\fP または \f3\-da\fP を指定すると、アサーションが無効になります。「\f2...\fP」で終わる引数を 1 つ指定すると、指定したパッケージとそのサブパッケージ内でアサーションが無効になります。引数として「\f2...\fP」だけを指定すると、現在の作業ディレクトリにある名前のないパッケージ内でアサーションが無効になります。「\f2...\fP」で終わらない引数を 1 つ指定すると、指定したクラス内でアサーションが無効になります。 +ʤ \f3disableassertions\fP ޤ \f3\-da\fP ꤹȡ̵ˤʤޤ\f2...\fPפǽ 1 ĻꤹȡꤷѥåȤΥ֥ѥåǥ̵ˤʤޤȤơ\f2...\fPפꤹȡߤκȥǥ쥯ȥˤ̾Τʤѥåǥ̵ˤʤޤ\f2...\fPפǽʤ 1 Ļꤹȡꤷ饹ǥ̵ˤʤޤ .LP -パッケージ \f2com.wombat.fruitbat\fP 内ではアサーションを有効にし、クラス \f2com.wombat.fruitbat.Brickbat\fP 内ではアサーションを無効にしたうえで、プログラムを実行するには、次のようなコマンドを使用します。 +ѥå \f2com.wombat.fruitbat\fP Ǥϥͭˤ饹 \f2com.wombat.fruitbat.Brickbat\fP Ǥϥ̵ˤǡץ¹ԤˤϡΤ褦ʥޥɤѤޤ .nf \f3 .fl -java \-ea:com.wombat.fruitbat... \-da:com.wombat.fruitbat.Brickbat <Main Class> +java \-ea:com.wombat.fruitbat... \-da:com.wombat.fruitbat.Brickbat \fP\f4<Main Class>\fP\f3 .fl \fP .fi .LP -\f3\-disableassertions\fP および \f3\-da\fP スイッチは、すべてのクラスローダおよびシステムクラスに適用されます。 システムクラスにはクラスローダはありません。ただし、この規則には例外が 1 つあります。それは、引数なしでこのスイッチを指定すると、その指定はシステムクラスには適用されない、ということです。この例外を利用すれば、システムクラスを除くすべてのクラスでアサーションを簡単に有効にすることができます。すべてのシステムクラスでアサーションを無効にするために、別のスイッチが用意されています。 このあとの \f3\-disablesystemassertions\fP を参照してください。 +\f3\-disableassertions\fP \f3\-da\fP åϡ٤ƤΥ饹ӥƥ९饹ŬѤޤƥ९饹ˤϥ饹Ϥޤ󡣤ε§ˤ 1 㳰ޤϡʤηǤΥåꤹȡλ꤬ƥŬѤʤȤȤǤ㳰ѤСƥ९饹٤ƤΥ饹ǥñͭˤ뤳ȤǤޤ٤ƤΥƥ९饹ǥ̵ˤ뤿ˡ̤ΥåѰդƤޤΤȤ \f3\-disablesystemassertions\fP 򻲾ȤƤ .TP 3 \-enablesystemassertions .TP 3 \-esa -すべてのシステムクラス内でアサーションを有効にします。 つまり、システムクラスについてアサーションのデフォルトステータスを \f2true\fP に設定します。 +٤ƤΥƥ९饹ǥͭˤޤĤޤꡢƥ९饹ˤĤƥΥǥեȥơ \f2true\fP ꤷޤ .TP 3 \-disablesystemassertions .TP 3 \-dsa -すべてのシステムクラス内でアサーションを無効にします。 -.LP +٤ƤΥƥ९饹ǥ̵ˤޤ .TP 3 \-jar -JAR ファイルにカプセル化されたプログラムを実行します。最初の引数は、起動クラスの名前ではなく、JAR ファイルの名前にします。このオプションが機能するには、JAR ファイルのマニフェストに\f3「Main\-Class:\fP\f4classname\fP\f3」\fPという形式の行を指定する必要があります。\f2classname\fP には、アプリケーションの開始位置として機能する \f2public\ static\ void\ main(String[]\ args)\fP メソッドを含むクラスを指定します。JAR ファイルとそのマニフェストについては、jar(1)と、 +JAR ե˥ץ벽줿ץ¹Ԥޤǽΰϡư饹̾ǤϤʤJAR ե̾ˤޤΥץ󤬵ǽˤϡJAR եΥޥ˥եȤ\f3Main\-Class:\fP\f4classname\fP\f3\fPȤιԤꤹɬפޤ\f2classname\fP ˤϡץꥱγϰ֤ȤƵǽ \f2public\ static\ void\ main(String[]\ args)\fP ᥽åɤޤ९饹ꤷޤJAR եȤΥޥ˥եȤˤĤƤϡjar(1)ȡ .na -\f2Java チュートリアル\fP @ +\f2Java 塼ȥꥢ\fP @ .fi -http://java.sun.com/docs/books/tutorial/jarの「Trail: Jar Files」を参照してください。 +http://download.oracle.com/javase/tutorial/deployment/jarΡTrail: Jar Filesפ򻲾ȤƤ .LP -このオプションを使用すると、指定した JAR ファイルがすべてのユーザークラスのソースになり、ユーザークラスパスのほかの設定は無視されます。 +ΥץѤȡꤷ JAR ե뤬٤ƤΥ桼饹Υˤʤꡢ桼饹ѥΤ̵ۤ뤵ޤ .LP -Solaris 8 では、「java \-jar」オプションで実行できる JAR ファイルは、実行権限のセットを保持しています。 このため、「java \-jar」を使用しないで実行することも可能です。 +Solaris 8 Ǥϡjava \-jarץץǼ¹ԤǤ JAR եϡ¹Ը¤ΥåȤݻƤޤΤᡢjava \-jarפѤʤǼ¹Ԥ뤳ȤǽǤJava Archive (JAR) ե .na -\f2Java Archive (JAR) ファイル\fP @ + @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jar/index.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jar/index.html .TP 3 \-javaagent:jarpath[=options] -Java プログラミング言語エージェントをロードします。 +Java ץߥ󥰸쥨Ȥɤޤ java.lang.instrument 򻲾ȤƤ .na -\f2java.lang.instrument\fP @ + @ .fi -http://java.sun.com/javase/6/docs/api/java/lang/instrument/package\-summary.html を参照してください。 +http://java.sun.com/javase/6/docs/api/java/lang/instrument/package\-summary.html +.TP 3 +\-jre\-restrict\-search +桼ץ饤١Ȥ JRE С󸡺˴ޤޤ +.TP 3 +\-no\-jre\-restrict\-search +桼ץ饤١Ȥ JRE С󸡺ޤ .TP 3 \-verbose .TP 3 \-verbose:class -クラスがロードされるたびにクラスに関する情報を表示します。 +饹ɤ뤿Ӥ˥饹˴ؤɽޤ .TP 3 \-verbose:gc -ガベージコレクションイベントが発生するたびに報告します。 +١쥯󥤥٥Ȥȯ뤿Ӥ𤷤ޤ .TP 3 \-verbose:jni -ネイティブメソッドの使用およびその他の Java Native Interface (JNI) アクティビティーに関する情報を報告します。 +ͥƥ֥᥽åɤλѤӤ¾ Java Native Interface (JNI) ƥӥƥ˴ؤ𤷤ޤ .TP 3 \-version -バージョン情報を表示して終了します。 +Сɽƽλޤ .TP 3 \-version:release -コマンド行に指定されたクラスまたは JAR ファイルが、\f2release\fP で指定されたバージョンを必要としていることを示します。起動された java コマンドのバージョンがこの指定内容を満たさず、かつ適切な実装がシステム上で見つかった場合には、その適切な実装が使用されます。 +ޥɹԤ˻ꤵ줿饹ޤ JAR ե뤬\f2release\fP ǻꤵ줿СɬפȤƤ뤳Ȥ򼨤ޤư줿 java ޥɤΥС󤬤λƤŬڤʼƥǸĤäˤϡŬڤʼѤޤ .LP -\f2release\fP では、特定のバージョンを指定できるだけでなく、バージョン文字列と呼ばれるバージョンのリストを指定することもできます。バージョン文字列は、いくつかのバージョン範囲を空白で区切った形式の順序付きリストです。バージョン範囲は、バージョン ID、バージョン ID の後にアスタリスク (*) を付加したもの、バージョン ID の後にプラス記号 (+) を付加したもの、2 つのバージョン範囲をアンパサンド (&) で結合したもの、のいずれかになります。アスタリスクはプレフィックス一致を、プラス記号は指定されたバージョン以上を、アンパサンドは 2 つのバージョン範囲の論理積を、それぞれ意味します。例を示します。 +\f2release\fP ǤϡΥСǤǤʤСʸȸƤФСΥꥹȤꤹ뤳ȤǤޤСʸϡĤΥСϰϤǶڤäνդꥹȤǤСϰϤϡС IDС ID θ˥ꥹ (*) ղäΡС ID θ˥ץ饹 (+) ղäΡ2 ĤΥСϰϤ򥢥ѥ (&) Ƿ礷ΡΤ줫ˤʤޤꥹϥץեåפ򡢥ץ饹ϻꤵ줿Сʾ򡢥ѥɤ 2 ĤΥСϰϤѤ򡢤줾̣ޤ򼨤ޤ .nf \f3 .fl -\-version:"1.5.0_04 1.5*&1.5.1_02+" +\-version:"1.6.0_13 1.6*&1.6.0_10+" .fl \fP .fi -上記の意味は、バージョン 1.5.0_04、または 1.5.1_02 以上で 1.5 をバージョン ID プレフィックスとして持つバージョン、のいずれかをクラスまたは JAR ファイルが必要とする、ということです。 バージョン文字列の厳密な構文や定義については、「Java Network Launching Protocol & API Specification (JSR\-56)」の「Appendix A」を参照してください。 +嵭ΰ̣ϡС 1.6.0_131.6 С ID ץեå˻ 1.6.0_10 ʾΥС󡢤Τ줫򥯥饹ޤ JAR ե뤬ɬפȤƤ롢ȤȤǤСʸθ̩ʹʸˤĤƤϡJava Network Launching Protocol & API Specification (JSR\-56)פΡAppendix Aפ򻲾ȤƤ .LP -JAR ファイルの場合は通常、バージョン要件をコマンド行に指定するよりも、JAR ファイルのマニフェスト内に指定することが推奨されています。 +JAR եξ̾С׷򥳥ޥɹԤ˻ꤹ⡢JAR եΥޥ˥ե˻ꤹ뤳Ȥ侩Ƥޤ .LP -このオプションの使用に関する重要なポリシー情報については、後述の「注」節を参照してください。 +ΥץλѤ˴ؤפʥݥꥷˤĤƤϡҤΡ򻲾ȤƤ .TP 3 \-showversion -バージョン情報を表示して続行します。 +Сɽ³Ԥޤ .TP 3 \-? .TP 3 \-help -使用法を表示して終了します。 +ˡɽƽλޤ +.TP 3 +\-splash:imagepath +\f2imagepath\fP ˻ꤵ줿ޤॹץå̤ɽޤ .TP 3 \-X -非標準オプションに関する情報を表示して終了します。 +ɸ४ץ˴ؤɽƽλޤ .RE .LP .SS -非標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Xint -インタプリタ専用モードで動作します。ネイティブコードへのコンパイルは無効になり、すべてのバイトコードがインタプリタによって実行されます。Java HotSpot VM に対応するコンパイラが提供するパフォーマンス上の利点は、このモードでは実現されません。 +󥿥ץ꥿ѥ⡼ɤưޤͥƥ֥ɤؤΥѥ̵ˤʤꡢ٤ƤΥХȥɤ󥿥ץ꥿ˤäƼ¹ԤޤJava HotSpot VM б륳ѥ餬󶡤ѥեޥ󥹾ϡΥ⡼ɤǤϼ¸ޤ .TP 3 \-Xbatch -バックグラウンドコンパイルを無効にします。通常、VM では、バックグラウンドコンパイルが終了するまで、メソッドをバックグラウンドタスクとしてコンパイルし、インタプリタモードでメソッドを実行します。\f2\-Xbatch\fP フラグを指定すると、バックグラウンドコンパイルが無効になり、すべてのメソッドのコンパイルが完了するまでフォアグラウンドタスクとして処理されます。 +Хå饦ɥѥ̵ˤޤ̾VM ǤϡХå饦ɥѥ뤬λޤǡ᥽åɤХå饦ɥȤƥѥ뤷󥿥ץ꥿⡼ɤǥ᥽åɤ¹Ԥޤ\f2\-Xbatch\fP ե饰ꤹȡХå饦ɥѥ뤬̵ˤʤꡢ٤ƤΥ᥽åɤΥѥ뤬λޤǥե饦ɥȤƽޤ .TP 3 \-Xbootclasspath:bootclasspath -ブートクラスファイルを探すディレクトリ、JAR アーカイブ、および ZIP アーカイブをコロンで区切ったリストで指定します。指定したパスに存在するブートクラスファイルが、JDK に含まれるブートクラスファイルの代わりに使用されます。\f2注: rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP +֡ȥ饹եõǥ쥯ȥꡢJAR ֡ ZIP ֤򥳥ǶڤäꥹȤǻꤷޤꤷѥ¸ߤ֡ȥ饹ե뤬Java ץåȥե JDK ˴ޤޤ֡ȥ饹ե˻Ѥޤ\f2: rt.jar Υ饹򥪡С饤ɤŪǤΥץѤ륢ץꥱϡƥ֤ʤǤJava Runtime Environment Хʥꥳɥ饤󥹰ȿˤʤޤ\fP .TP 3 \-Xbootclasspath/a:path -ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。 パスはデフォルトのブートストラップクラスパスのあとに追加されます。 +ǥ쥯ȥꡢJAR ֡ ZIP ֤Υѥ򥳥ǶڤäƻꤷޤѥϥǥեȤΥ֡ȥȥåץ饹ѥΤȤɲäޤ .TP 3 \-Xbootclasspath/p:path -ディレクトリ、JAR アーカイブ、および ZIP アーカイブのパスをコロンで区切って指定します。 パスはデフォルトのブートストラップクラスパスの前に追加されます。\f2注 rt.jar 内のクラスをオーバーライドする目的でこのオプションを使用するアプリケーションは、システムに配置しないでください。Java Runtime Environment バイナリコードライセンス違反になります。\fP +ǥ쥯ȥꡢJAR ֡ ZIP ֤Υѥ򥳥ǶڤäƻꤷޤѥϥǥեȤΥ֡ȥȥåץ饹ѥɲäޤ\f2: rt.jar Υ饹򥪡С饤ɤŪǤΥץѤ륢ץꥱϡƥ֤ʤǤJava Runtime Environment Хʥꥳɥ饤󥹰ȿˤʤޤ\fP .TP 3 \-Xcheck:jni -Java Native Interface (JNI) 機能に対して追加チェックを行います。具体的には、Java 仮想マシンは JNI 要求を処理する前に、JNI 関数に渡されるパラメータと、実行環境のデータを検証します。無効なデータが見つかった場合は、ネイティブコードに問題があることを示しているため、Java 仮想マシンは致命的エラーを発生して終了します。このオプションを使用すると、パフォーマンス低下が予想されます。 +Java Native Interface (JNI) ǽФɲååԤޤŪˤϡJava ۥޥ JNI ׵ˡJNI ؿϤѥ᡼ȡ¹ԴĶΥǡ򸡾ڤޤ̵ʥǡĤäϡͥƥ֥ɤ꤬뤳Ȥ򼨤Ƥ뤿ᡢJava ۥޥ̿Ū顼ȯƽλޤΥץѤȡѥեޥ㲼ͽۤޤ .TP 3 \-Xfuture -クラスとファイルの形式を厳密にチェックします。下位互換性を保つため、JDK の仮想マシンが実行するデフォルトの形式チェックは、JDK ソフトウェアのバージョン 1.1.x が実行するチェックと同程度の厳密さになっています。\f3\-Xfuture\fP フラグを指定すると、クラスファイル形式の仕様への準拠を強化するためのより厳密なチェックが有効になります。Java アプリケーション起動ツールの将来のリリースでは、より厳密なチェックがデフォルトになるため、新しいコードを開発するときにはこのフラグを使用することをお勧めします。 +饹ȥեη̩˥åޤ̸ߴݤĤᡢJDK βۥޥ󤬼¹ԤǥեȤηåϡJDK եȥΥС 1.1.x ¹ԤåƱ٤θ̩ˤʤäƤޤ\f3\-Xfuture\fP ե饰ꤹȡ饹եλͤؤν򶯲뤿Τ긷̩ʥåͭˤʤޤJava ץꥱưġξΥ꡼Ǥϡ긷̩ʥåǥեȤˤʤ뤿ᡢɤȯȤˤϤΥե饰Ѥ뤳Ȥ򤪴ᤷޤ .TP 3 \-Xnoclassgc -クラスのガベージコレクションを無効にします。このオプションを使用すると、ロード済みクラスからメモリーが回復されることがなくなるため、全体的なメモリー使用量が増大します。この場合、アプリケーションによっては OutOfMemoryError がスローされる可能性があります。 +饹Υ١쥯̵ˤޤΥץѤȡɺѤߥ饹꡼뤳Ȥʤʤ뤿ᡢŪʥ꡼̤礷ޤξ硢ץꥱˤäƤ OutOfMemoryError ǽޤ .TP 3 \-Xincgc -インクリメンタルガーベジコレクタを有効にします。インクリメンタルガベージコレクタは、デフォルトでは無効になっています。 有効にすると、プログラムの実行中にガベージコレクションによる一時停止が発生しなくなります。インクリメンタルガベージコレクタは、プログラムと同時に実行することがあり、この場合、プログラムの利用できるプロセッサ能力が低下します。 +󥯥󥿥륬٥쥯ͭˤޤ󥯥󥿥륬١쥯ϡǥեȤǤ̵ˤʤäƤޤ ͭˤȡץμ¹˥١쥯ˤߤȯʤʤޤ󥯥󥿥륬١쥯ϡץƱ˼¹Ԥ뤳Ȥꡢξ硢ץѤǤץåǽϤ㲼ޤ .TP 3 \-Xloggc:file -\-verbose:gc と同様にガベージコレクションイベントが発生するたびに報告しますが、そのデータを \f2file\fP に記録します。\f2\-verbose:gc\fP を指定したときに報告される情報のほかに、報告される各イベントの先頭に、最初のガベージコレクションイベントからの経過時間 (秒単位) が付け加えられます。 +\-verbose:gc Ʊͤ˥١쥯󥤥٥Ȥȯ뤿Ӥ𤷤ޤΥǡ \f2file\fP ˵Ͽޤ\f2\-verbose:gc\fP ꤷȤ𤵤Τۤˡ𤵤ƥ٥ȤƬˡǽΥ١쥯󥤥٥Ȥηв (ñ) դäޤ .LP -ネットワークの応答時間によって JVM の実行速度が低下するのを避けるため、このファイルの格納先は、常にローカルファイルシステムにしてください。ファイルシステムが満杯になると、ファイルは切り詰められ、そのファイルにデータが引き続き記録されます。このオプションと \f2\-verbose:gc\fP の両方がコマンド行に指定されている場合は、このオプションが優先されます。 -.LP +ͥåȥα֤ˤä JVM μ¹®٤㲼Τ򤱤뤿ᡢΥեγǼϡ˥ե륷ƥˤƤե륷ƥबդˤʤȡեڤͤ졢Υե˥ǡ³ϿޤΥץ \f2\-verbose:gc\fP ξޥɹԤ˻ꤵƤϡΥץͥ褵ޤ .TP 3 \-Xmsn -メモリー割り当てプールの初期サイズをバイト数で指定します。指定する値は、1M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。 メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「HotSpot Ergonomics」を参照してください。 -.br -例: -.RS 3 - +꡼ƥסνХȿǻꤷޤꤹͤϡ1M ХȤ礭 1024 ܿˤʤФʤޤ󡣥ХȤꤹˤϡʸ \f2k\fP ޤ \f2K\fP դޤᥬХȤꤹˤϡʸ \f2m\fP ޤ \f2M\fP դޤǥեͤϡ¹Ի˥ƥ˴Ť򤵤ޤܺ٤ˤĤƤϡ +.na +\f2HotSpot Ergonomics\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.htmlפ򻲾ȤƤ .LP +: .nf \f3 .fl @@ -356,19 +351,19 @@ .fl \-Xms6m .fl - + .fl \fP .fi -.RE .TP 3 \-Xmxn -メモリー割り当てプールの最大サイズをバイト数で指定します。指定する値は、2M バイトより大きい 1024 の倍数にしなければなりません。キロバイトを指定するには、文字 \f2k\fP または \f2K\fP を付けます。 メガバイトを指定するには、文字 \f2m\fP または \f2M\fP を付けます。デフォルト値は、実行時にシステムの設定に基づいて選択されます。詳細については、「HotSpot Ergonomics」を参照してください。 +꡼ƥסκ祵Хȿǻꤷޤꤹͤϡ2M ХȤ礭 1024 ܿˤʤФʤޤ󡣥ХȤꤹˤϡʸ \f2k\fP ޤ \f2K\fP դޤᥬХȤꤹˤϡʸ \f2m\fP ޤ \f2M\fP դޤǥեͤϡ¹Ի˥ƥ˴Ť򤵤ޤܺ٤ˤĤƤϡ +.na +\f2HotSpot Ergonomics\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/vm/gc\-ergonomics.htmlפ򻲾ȤƤ .br -例: -.RS 3 - -.LP +: .nf \f3 .fl @@ -378,96 +373,105 @@ .fl \-Xmx80m .fl - + .fl \fP .fi -.RE -Solaris 7 および Solaris 8 SPARC プラットフォームの場合、この値の上限はおよそ 4000m からオーバーヘッドの量を引いたものであり、Solaris 2.6 および x86 プラットフォームの場合は 2000m からオーバーヘッドの量を引いたものです。Linux プラットフォームの場合の上限は、およそ 2000m からオーバーヘッドの量を引いたものです。 +Solaris 7 Solaris 8 SPARC ץåȥեξΤͤξ¤ϡ褽 4000m 饪Сإåɤ̤ΤǤSolaris 2.6 x86 ץåȥեξξ¤ϡ褽 2000m 饪Сإåɤ̤ΤǤLinux ץåȥեξξ¤ϡ褽 2000m 饪Сإåɤ̤ΤǤ .TP 3 \-Xprof -実行中のプログラムのプロファイルを生成し、プロファイリングデータを標準出力に出力します。このオプションは、プログラム開発用のユーティリティーとして提供されています。 本番稼動システムでの使用を目的としたものではありません。 -.LP +¹ΥץΥץեץեǡɸϤ˽ϤޤΥץϡץ೫ȯѤΥ桼ƥƥȤ󶡤Ƥޤ ֲưƥǤλѤŪȤΤǤϤޤ .TP 3 \-Xrs -Java 仮想マシン (JVM) によるオペレーティングシステムシグナルの使用を減らします。 +Java ۥޥ (JVM) ˤ륪ڥ졼ƥ󥰥ƥॷʥλѤ򸺤餷ޤ .LP -以前のリリースでは、Java アプリケーションを秩序正しくシャットダウンするためのシャットダウンフック機能が追加されました。この機能により、JVM が突然終了した場合でも、シャットダウン時にユーザークリーンアップコード (データベース接続のクローズなど) を実行できるようになりました。 +Υ꡼ǤϡJava ץꥱåȥ󤹤뤿ΥåȥեåǽɲäޤεǽˤꡢJVM λǤ⡢åȥ˥桼꡼󥢥åץ (ǡ١³Υʤ) ¹ԤǤ褦ˤʤޤ .LP -Sun の JVM は、シグナルをキャッチすることによって、JVM の異常終了のためのシャットダウンフックを実装します。JVM は、SIGHUP、SIGINT、および SIGTERM を使用して、シャットダウンフックの実行を開始します。 +Sun JVM ϡʥ򥭥å뤳ȤˤäơJVM ΰ۾ェλΤΥåȥեåޤJVM ϡSIGHUPSIGINT SIGTERM Ѥơåȥեåμ¹Ԥ򳫻Ϥޤ .LP -JVM は、デバッグの目的でスレッドスタックをダンプするという、1.2 より前からある機能を実現するためにも、同様の機構を使用します。Sun の JVM は、スレッドダンプを実行するために SIGQUIT を使用します。 +JVM ϡǥХåŪǥåɥåפȤ1.2 餢뵡ǽ¸뤿ˤ⡢ƱͤεѤޤSun JVM ϡåɥפ¹Ԥ뤿 SIGQUIT Ѥޤ .LP -JVM を埋め込んでいるアプリケーションが SIGINT や SIGTERM などのシグナルを頻繁にトラップする必要があると、JVM そのもののシグナルハンドラの処理に支障が出る可能性があります。\f3\-Xrs\fP コマンド行オプションを使用すると、この問題に対処できます。Sun の JVM に対して \f3\-Xrs\fP を使用すると、SIGINT、SIGTERM、SIGHUP、および SIGQUIT に対するシグナルマスクは JVM によって変更されず、これらのシグナルに対するシグナルハンドラはインストールされません。 +JVM Ǥ륢ץꥱ SIGINT SIGTERM ʤɤΥʥˤ˥ȥåפɬפȡJVM ΤΤΥʥϥɥν˻پ㤬Фǽޤ\f3\-Xrs\fP ޥɹԥץѤȡнǤޤSun JVM Ф \f3\-Xrs\fP ѤȡSIGINTSIGTERMSIGHUP SIGQUIT Ф륷ʥޥ JVM ˤäѹ줺ΥʥФ륷ʥϥɥϥ󥹥ȡ뤵ޤ .LP -\f3\-Xrs\fP を指定した場合、次の 2 つの影響があります。 +\f3\-Xrs\fP ꤷ硢 2 Ĥαƶޤ .RS 3 .TP 2 o -SIGQUIT によるスレッドダンプを利用できない +SIGQUIT ˤ륹åɥפѤǤʤ .TP 2 o -シャットダウンフック処理の実行は、JVM が終了しようとしている時点で System.exit() を呼び出すなどして、ユーザーコード側で行う必要がある +åȥեåμ¹ԤϡJVM λ褦ȤƤ System.exit() ƤӽФʤɤơ桼¦ǹԤɬפ .RE .TP 3 \-Xssn -スレッドのスタックサイズを設定します。 +åɤΥåꤷޤ .TP 3 \-XX:+UseAltSigs -VM ではデフォルトで \f2SIGUSR1\fP および \f2SIGUSR2\fP を使用しますが、\f2SIGUSR1\fP および \f2SIGUSR2\fP をシグナル連鎖するアプリケーションと 競合する場合があります。\f2\-XX:+UseAltSigs\fP オプションは、VM にデフォルトとして \f2SIGUSR1\fP と \f2SIGUSR2\fP 以外のシグナルを使用させます。 +VM ǤϥǥեȤ \f2SIGUSR1\fP \f2SIGUSR2\fP Ѥޤ\f2SIGUSR1\fP \f2SIGUSR2\fP 򥷥ʥϢ륢ץꥱ 礹礬ޤ\f2\-XX:+UseAltSigs\fP ץϡVM ˥ǥեȤȤ \f2SIGUSR1\fP \f2SIGUSR2\fP ʳΥʥѤޤ .RE .LP -.RE -.SH "注" +.SH "" +.LP .LP - +\f3\-version:\fP\f2release\fP ޥɹԥץǤϡɤʤʣ˥꡼ꤷƤ⤫ޤޤ󡣤Ūʥ꡼θ¤줿֥åȤѤǤŬڤʥݥꥷɽǤ뤿ᡢΥ֥åȤΤߤ˥ݡȤޤΥݥꥷ򼡤˼ޤ .LP -\f3\-version:\fP\f2release\fP コマンド行オプションでは、どんなに複雑にリリースを指定してもかまいません。ただし、現実的なリリース指定の限られたサブセットを使用するだけでも適切なポリシーを表現できるため、それらのサブセットのみが完全にサポートされます。それらのポリシーを次に示します。 .RS 3 .TP 3 1. -任意のバージョン。 これは、このオプションを使用しないことで表現できます。 +ǤդΥС󡣤ϡΥץѤʤȤɽǤޤ .TP 3 2. -ある特定のバージョン ID よりも大きい任意のバージョン。 次に例を示します。 +ΥС ID 礭ǤդΥС󡣼򼨤ޤ .nf \f3 .fl -"1.5.0_03+" +"1.6.0_10+" .fl \fP .fi -.LP -この場合、1.5.0_03 よりも大きい任意のバージョンが使用されます。 これは、指定されたバージョンで特定のインタフェースが導入された (あるいはそのバグが修正された) 場合に便利です。 +ξ硢 \f21.6.0_10\fP 礭ǤդΥС󤬻Ѥޤϡꤵ줿СΥ󥿥եƳ줿 (뤤ϤΥХ줿) Ǥ .TP 3 3. -ある特定のバージョン ID よりも大きいバージョン。 ただし、そのリリースファミリの上限によって制限するもの。例を示します。 +ΥС ID 礭С󡣤Υ꡼եߥξ¤ˤä¤Ρ򼨤ޤ .nf \f3 .fl -"1.5.0_03+&1.5*" +"1.6.0_10+&1.6*" .fl \fP .fi .TP 3 4. -上の項目 2 または 3 の「OR」表現。例を示します。 +ι 2 ȹ 3 ΡOR׼򼨤ޤ .nf \f3 .fl -"1.4.2_05+&1.4* 1.5+" +"1.6.0_10+&1.6* 1.7+" .fl \fP .fi -これは項目 2 に似ていますが、ある変更が特定のリリース (1.5) で導入されたが、その同じ変更が以前のリリースのアップデートでも利用可能になった、という場合に便利です。 +Ϲ 2 ˻ƤޤѹΥ꡼ (1.7) Ƴ줿ƱѹΥ꡼ΥåץǡȤǤѲǽˤʤäȤǤ .RE .LP -.SH "関連項目" +.SH "λơ" +.LP +.LP +̤ˡνλͤưġ뤫֤Τ̾ưʰǸƤӽФ줿ʥ顼ȯ뤤 Java ۥޥ󤫤㳰줿Ǥ Java ץꥱϡAPI ƤӽФ \f2System.exit(exitValue)\fP ѤǤդ֤ͤȤ򤹤뤳ȤǤޤ .LP +.RS 3 +.TP 2 +o +\f20\fP: ェλ +.TP 2 +o +\f2>0\fP: 顼ȯ +.RE .LP +.SH "Ϣ" +.LP .RS 3 .TP 2 o @@ -484,19 +488,19 @@ .TP 2 o .na -\f2「Java 拡張機能フレームワーク」\fP @ +\f2Java ĥǽե졼\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/extensions/index.html .TP 2 o .na -\f2「セキュリティー」\fP @ +\f2֥ƥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/index.html .TP 2 o .na -\f2「HotSpot VM Specific Options」\fP @ +\f2HotSpot VM Specific Options\fP @ .fi http://java.sun.com/docs/hotspot/VMOptions.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/javac.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/javac.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/javac.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,325 +19,423 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javac 1 "02 Jun 2010" +.TH javac 1 "14 Apr 2011" .LP -.SH "名前" -javac \- Java プログラミング言語コンパイラ +.SH "̾" +javac \- Java ץߥ󥰸쥳ѥ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -コマンド行引数ファイル +ޥɹ԰ե .TP 2 o -注釈処理 + .TP 2 o -型の検索 +θ .TP 2 o -プログラマティックインタフェース +ץޥƥå󥿥ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl \fP\f3javac\fP [ options ] [ sourcefiles ] [ classes ] [ @argfiles ] .fl - + .fl .fi .LP .LP -引数は順不同です。 -.LP -.RS 3 - +ϽƱǤ .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 sourcefiles -コンパイルされる 1 つ以上のソースファイル (MyClass.java など) +ѥ뤵 1 İʾΥե (MyClass.java ʤ) .TP 3 classes -注釈の処理対象となる 1 つ以上のクラス (MyPackage.MyClass など) +νоݤȤʤ 1 İʾΥ饹 (MyPackage.MyClass ʤ) .TP 3 @argfiles -オプションとソースファイルを列挙した 1 つ以上のファイル。このファイルの中では、\f2\-J\fP オプションは指定できません。 +ץȥե󤷤 1 İʾΥե롣ΥեǤ \f2\-J\fP ץϻǤޤ .RE .LP -.RE -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javac\fP ツールは、Java プログラミング言語で記述されたクラスとインタフェースの定義を読み取り、バイトコードのクラスファイルにコンパイルします。また、Java ソースファイルおよびクラス内の注釈の処理も行います。 +\f3javac\fP ġϡJava ץߥ󥰸ǵҤ줿饹ȥ󥿥եɤ߼ꡢХȥɤΥ饹ե˥ѥ뤷ޤޤJava ե뤪ӥ饹νԤޤ .LP .LP -ソースコードのファイル名を \f3javac\fP に渡すには、次の 2 つの方法があります。 +ɤΥե̾ \f3javac\fP Ϥˤϡ 2 Ĥˡޤ .LP .RS 3 .TP 2 o -ソースファイルの数が少ない場合は、ファイル名をコマンド行で直接指定します。 +եοʤϡե̾򥳥ޥɹԤľܻꤷޤ .TP 2 o -ソースファイルの数が多い場合は、ファイル名を空白または改行で区切って、1 つのファイルに列挙します。次に、このリストファイル名の先頭に \f3@\fP を付けて、\f3javac\fP のコマンド行で指定します。 +եο¿ϡե̾ޤϲԤǶڤäơ1 ĤΥե󤷤ޤˡΥꥹȥե̾Ƭ \f3@\fP դơ\f3javac\fP ΥޥɹԤǻꤷޤ .RE .LP .LP -ソースコードのファイル名は \f2.java\fP 拡張子を、クラスのファイル名は \f2.class\fP 拡張子を持っていなければなりません。 また、ソースファイルとクラスファイルのどちらも、該当するクラスに対応するルート名を持っていなければなりません。たとえば、\f2MyClass\fP という名前のクラスは、\f2MyClass.java\fP という名前のソースファイルに記述します。 このソースファイルは、\f2MyClass.class\fP という名前のバイトコードクラスファイルにコンパイルされます。 +ɤΥե̾ \f2.java\fP ĥҤ򡢥饹Υե̾ \f2.class\fP ĥҤäƤʤФʤޤ󡣤ޤեȥ饹եΤɤ⡢륯饹б롼̾äƤʤФʤޤ󡣤ȤС \f2MyClass\fP Ȥ̾Υ饹ϡ \f2MyClass.java\fP Ȥ̾Υե˵ҤޤΥեϡ \f2MyClass.class\fP Ȥ̾ΥХȥɥ饹ե˥ѥ뤵ޤ .LP .LP -内部クラスが定義されていると、追加のクラスファイルが生成されます。これらのクラスファイルの名前は、\f2MyClass$MyInnerClass.class\fP のように、外部クラス名と内部クラス名を組み合わせたものになります。 +饹ƤȡɲäΥ饹ե뤬ޤΥ饹ե̾ϡ \f2MyClass$MyInnerClass.class\fP Τ褦ˡ饹̾饹̾Ȥ߹碌Τˤʤޤ .LP .LP -ソースファイルは、パッケージツリーを反映したディレクトリツリーに配置する必要があります。たとえば、すべてのソースファイルを \f3/workspace\fP に置いている場合、\f2com.mysoft.mypack.MyClass\fP のソースコードは \f3/workspace/com/mysoft/mypack/MyClass.java\fP にある必要があります。 +եϡѥåĥ꡼ȿǤǥ쥯ȥĥ꡼֤ɬפޤȤС٤ƤΥե \f3/workspace\fP ֤Ƥ硢 \f2com.mysoft.mypack.MyClass\fP Υɤ \f3/workspace/com/mysoft/mypack/MyClass.java\fP ˤɬפޤ .LP .LP -デフォルトでは、コンパイラは、各クラスファイルを対応するソースファイルと同じディレクトリに置きます。別の出力先ディレクトリを指定するには、\f3\-d\fP を使用します (このあとのオプションを参照)。 +ǥեȤǤϡѥϡƥ饹եб륽եƱǥ쥯ȥ֤ޤ̤νǥ쥯ȥꤹˤϡ\f3\-d\fP Ѥޤ (ΤȤΥץ򻲾) .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -コンパイラには、現在の開発環境でサポートされており、将来のリリースでもサポートされる標準オプションのセットがあります。これ以外の非標準オプションは、現在の仮想マシンおよびコンパイラの実装に固有のオプションで、将来に変更される可能性があります。非標準オプションは、\f3\-X\fP で始まります。 +ѥˤϡߤγȯĶǥݡȤƤꡢΥ꡼Ǥ⥵ݡȤɸ४ץΥåȤޤʳɸ४ץϡߤβۥޥ󤪤ӥѥμ˸ͭΥץǡѹǽޤɸ४ץϡ\f3\-X\fP ǻϤޤޤ .LP .SS -標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Akey[=value] -注釈プロセッサに渡されるオプション。これらは、javac によって直接解釈されず、個々のプロセッサによって使用されます。 \f2key\fP には、1 つまたは複数の識別子を「.」で区切ったものを指定してください。 +ץåϤ륪ץ󡣤ϡjavac ˤäľܲᤵ줺ġΥץåˤäƻѤޤ\f2key\fP ˤϡ1 Ĥޤʣμ̻Ҥ.פǶڤäΤꤷƤ .TP 3 -\-cp path または \-classpath path -ユーザーのクラスファイルおよび (場合によっては) 注釈プロセッサやソースファイルの検索場所を指定します。このクラスパスは \f3CLASSPATH\fP 環境変数のユーザークラスパスをオーバーライドします。\f3CLASSPATH\fP、\f3\-cp\fP、\f3\-classpath\fP のいずれも指定されていない場合、ユーザークラスパスは、現在のディレクトリになります。詳細は、 -.na -\f2「クラスパスの設定」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +\-cp path ޤ \-classpath path +桼Υ饹ե뤪 (ˤäƤ) ץå䥽եθꤷޤΥ饹ѥ \f3CLASSPATH\fP ĶѿΥ桼饹ѥ򥪡С饤ɤޤ\f3CLASSPATH\fP\f3\-cp\fP\f3\-classpath\fP ΤꤵƤʤ硢桼饹ѥϡߤΥǥ쥯ȥˤʤޤܺ٤ϡ֥饹ѥפ򻲾ȤƤ .LP -\f3\-sourcepath\fP オプションが指定されていない場合は、ソースファイルもユーザークラスパスから検索されます。 +\f3\-sourcepath\fP ץ󤬻ꤵƤʤϡե桼饹ѥ鸡ޤ .LP -\f3\-processorpath\fP オプションが指定されていない場合は、注釈プロセッサもユーザークラスパスから検索されます。 +\f3\-processorpath\fP ץ󤬻ꤵƤʤϡץå桼饹ѥ鸡ޤ .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます。 -.br -.br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。\f3注:\fPコマンド行環境の構成によっては、\f2javac \-cp "*.jar" MyClass.java\fP などのように、ワイルドカード文字を引用符で囲まなければならない場合があります。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡǥ쥯ȥγĥ \f2.jar\fP ޤ \f2.JAR\fP Ĥ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ +.LP +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤ϻꤵޤ󡣤ΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ \f2*\fP 륯饹ѥȥϡߤΥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ\f3:\fP ޥɹԴĶιˤäƤϡ \f2javac \-cp "*.jar" MyClass.java\fP ʤɤΤ褦ˡ磻ɥʸǰϤळȤɬפʾ⤢ޤ .TP 3 \-Djava.ext.dirs=directories -インストール型拡張機能の位置をオーバーライドします。 +󥹥ȡ뷿ĥǽΰ֤򥪡С饤ɤޤ .TP 3 \-Djava.endorsed.dirs=directories -承認された標準パスの位置をオーバーライドします。 +ǧ줿ɸѥΰ֤򥪡С饤ɤޤ .TP 3 \-d directory -クラスファイルの出力先ディレクトリを設定します。そのディレクトリはすでに存在している必要があります。 \f3javac\fP はディレクトリを作成しません。クラスがパッケージの一部である場合、\f3javac\fP は、必要に応じてディレクトリを作成し、パッケージ名を反映したサブディレクトリにクラスファイルを置きます。たとえば、\f3\-d /home/myclasses\fP と指定し、クラスの名前が \f2com.mypackage.MyClass\fP である場合、クラスファイルは \f2/home/myclasses/com/mypackage/MyClass.class\fP になります。 +饹եνǥ쥯ȥꤷޤΥǥ쥯ȥϤǤ¸ߤƤɬפޤ\f3javac\fP Ϻޤ󡣥饹ѥåΰǤ硢\f3javac\fP ϡɬפ˱ƥǥ쥯ȥѥå̾ȿǤ֥ǥ쥯ȥ˥饹ե֤ޤȤС\f3\-d /home/myclasses\fP Ȼꤷ饹̾ \f2com.mypackage.MyClass\fP Ǥ硢饹ե \f2/home/myclasses/com/mypackage/MyClass.class\fP ˤʤޤ .LP -\f3\-d\fP が指定されなかった場合、\f3javac\fP は各クラスファイルを、その生成元となるソースファイルと同じディレクトリ内に格納します。 +\f3\-d\fP ꤵʤä硢\f3javac\fP ϳƥ饹ե򡢤Ȥʤ륽եƱǥ쥯ȥ˳Ǽޤ .LP -\f3注:\fP\f3\-d\fP で指定したディレクトリはユーザークラスパスに自動的には追加されません。 +\f3:\fP \f3\-d\fP ǻꤷǥ쥯ȥϥ桼饹ѥ˼ưŪˤɲäޤ .TP 3 \-deprecation -推奨されないメンバーやクラスが、使用またはオーバーライドされるたびに説明を表示します。\f3\-deprecation\fP が指定されていない場合、\f3javac\fP は、推奨されないメンバーやクラスを使用またはオーバーライドしているソースファイルの要約を表示します。\f3\-deprecation\fP は \f3\-Xlint:deprecation\fP の省略表記です。 +侩ʤС䥯饹ѤޤϥС饤ɤ뤿Ӥɽޤ\f3\-deprecation\fP ꤵƤʤ硢\f3javac\fP ϡ侩ʤС䥯饹ѤޤϥС饤ɤƤ륽եɽޤ\f3\-deprecation\fP \f3\-Xlint:deprecation\fP ξάɽǤ .TP 3 \-encoding encoding -ソースファイルのエンコーディング名 (\f2EUC\-JP\fP や \f2UTF\-8\fP など) を指定します。\f3\-encoding\fP が指定されていない場合は、プラットフォームのデフォルトコンバータが使われます。 +եΥ󥳡ǥ̾ ( \f2EUC\-JP UTF\-8\fP ʤ) ꤷޤ\f3\-encoding\fP ꤵƤʤϡץåȥեΥǥեȥСȤޤ +.TP 3 +\-endorseddirs directories +ǧ줿ɸѥΰ֤򥪡С饤ɤޤ +.TP 3 +\-extdirs directories +\f2ext\fP ǥ쥯ȥΰ֤򥪡С饤ɤޤ\f2directories\fP ѿˤϡǶڤäǥ쥯ȥΥꥹȤꤷޤꤷǥ쥯ȥγ JAR ֤顢饹ե뤬ޤĤä٤Ƥ JAR ֤ϼưŪ˥饹ѥΰˤʤޤ +.LP +ѥ (ۤʤ Java ץåȥե˼줿֡ȥȥåץ饹ĥǽ饹ФƥѥԤ) ¹Ԥ硢Υץˤϳĥǽ饹ޤǥ쥯ȥꤷޤܺ٤ϡ֥ѥ륪ץפ򻲾ȤƤ .TP 3 \-g -局所変数を含むすべてのデバッグ情報を生成します。デフォルトでは、行番号およびソースファイル情報だけが生成されます。 +ɽѿޤह٤ƤΥǥХåޤǥեȤǤϡֹ椪ӥեޤ .TP 3 \-g:none -デバッグ情報を生成しません。 +ǥХåޤ .TP 3 \-g:{keyword list} -コンマで区切られたキーワードリストにより指定された、特定の種類のデバッグ情報だけを生成します。次のキーワードが有効です。 +ޤǶڤ줿ɥꥹȤˤꤵ줿μΥǥХåޤΥɤͭǤ .RS 3 .TP 3 source -ソースファイルのデバッグ情報 +եΥǥХå .TP 3 lines -行番号のデバッグ情報 +ֹΥǥХå .TP 3 vars -局所変数のデバッグ情報 +ɽѿΥǥХå .RE .TP 3 \-help -標準オプションの形式を表示します。 +ɸ४ץηɽޤ .TP 3 \-implicit:{class,none} -暗黙的にロードされたソースファイルに対するクラスファイルの生成を制御します。クラスファイルを自動生成するには、\f3\-implicit:class\fP を使用します。クラスファイルの生成を抑制するには、\f3\-implicit:none\fP を使用します。 このオプションが指定されなかった場合のデフォルト動作は、クラスファイルの自動生成になります。その場合、そのようなクラスファイルが生成された時に注釈処理も実行されると、コンパイラから警告が発行されます。 このオプションが明示的に設定された場合には、警告は発行されません。 「型の検索」を参照してください。 +Ū˥ɤ줿եФ륯饹ե椷ޤ饹եưˤϡ\f3\-implicit:class\fP Ѥޤ饹եˤϡ\f3\-implicit:none\fP ѤޤΥץ󤬻ꤵʤäΥǥեưϡ饹եμưˤʤޤξ硢Τ褦ʥ饹ե뤬줿¹Ԥȡѥ餫ٹȯԤޤΥץŪꤵ줿ˤϡٹȯԤޤ󡣡ַθפ򻲾ȤƤ +.TP 3 +\-Joption +\f3javac\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ +.LP +\f3:\fP \f3CLASSPATH\fP\f3\-classpath\fP\f3\-bootclasspath\fP \f3\-extdirs\fP ϡ\f3javac\fP ¹Ԥ뤿˻Ȥ饹ꤹΤǤϤޤ󡣤Τ褦ˡǥѥμ뤳Ȥϡ̵̣̾Ǥꡢ˴ȼޤΤ褦ˡȤɬפϡ\f3\-J\fP ץȤäơɬפʥץظ \f3java\fP ưġϤƤ .TP 3 \-nowarn -警告メッセージを無効にします。これは \f3\-Xlint:none\fP と同じ意味です。 +ٹå̵ˤޤ \f3\-Xlint:none\fP Ʊ̣Ǥ .TP 3 \-proc: {none,only} -注釈処理、コンパイル、その両方、のいずれを実行するかを制御します。\f3\-proc:none\fP は、注釈処理なしでコンパイルが実行されることを意味します。\f3\-proc:only\fP は、注釈処理だけが実行され、後続のコンパイルはまったく実行されないことを意味します。 +ѥ롢ξΤ¹Ԥ뤫椷ޤ\f3\-proc:none\fP ϡʤǥѥ뤬¹Ԥ뤳Ȥ̣ޤ\f3\-proc:only\fP ϡ¹Ԥ졢³ΥѥϤޤä¹ԤʤȤ̣ޤ .TP 3 \-processor class1[,class2,class3...] -実行する注釈プロセッサの名前。これを指定した場合、デフォルトの検索処理は省略されます。 +¹Ԥץå̾ꤷ硢ǥեȤθϾάޤ .TP 3 \-processorpath path -注釈プロセッサの検索場所を指定します。 このオプションを使用しなかった場合、クラスパス内でプロセッサの検索が行われます。 +ץåθꤷޤΥץѤʤä硢饹ѥǥץåθԤޤ .TP 3 \-s dir -生成されたソースファイルの格納先となるディレクトリを指定します。そのディレクトリはすでに存在している必要があります。 \f3javac\fP は作成しません。クラスがパッケージの一部になっていた場合、コンパイラはそのソースファイルを、パッケージ名を反映したサブディレクトリ内に格納します。 その際、必要に応じてディレクトリを作成します。たとえば、ユーザーが \f3\-s /home/mysrc\fP と指定し、クラスの名前が \f2com.mypackage.MyClass\fP であった場合、そのソースファイルは \f2/home/mysrc/com/mypackage/MyClass.java\fP 内に格納されます。 +줿եγǼȤʤǥ쥯ȥꤷޤΥǥ쥯ȥϤǤ¸ߤƤɬפޤ\f3javac\fP Ϻޤ󡣥饹ѥåΰˤʤäƤ硢ѥϤΥե򡢥ѥå̾ȿǤ֥ǥ쥯ȥ˳Ǽޤκݡɬפ˱ƥǥ쥯ȥޤȤС桼 \f3\-s /home/mysrc\fP Ȼꤷ饹̾ \f2com.mypackage.MyClass\fP Ǥä硢Υե \f2/home/mysrc/com/mypackage/MyClass.java\fP ˳Ǽޤ .TP 3 \-source release -受け付けるソースコードのバージョンを指定します。\f2release\fP には次の値を指定できます。 +դ륽ɤΥСꤷޤ\f2release\fP ˤϼͤǤޤ .RS 3 .TP 3 1.3 -このコンパイラでは、JDK 1.3 以降に導入されたアサーション、総称、または他の言語機能をサポートしません。 +ΥѥǤϡJDK 1.3 ʹߤƳ줿Ρޤ¾θ쵡ǽ򥵥ݡȤޤ .TP 3 1.4 -JDK 1.4 で導入された、アサーションを含むコードを受け付けます。 +JDK 1.4 Ƴ줿ޤॳɤդޤ .TP 3 1.5 -JDK 5 で導入された総称および他の言語機能を含んだコードを受け付けます。 +JDK 5 Ƴ줿Τ¾θ쵡ǽޤɤդޤ .TP 3 5 -1.5 と同義です。 +1.5 ƱǤ .TP 3 1.6 -これがデフォルト値です。Java SE 6 では言語に対する変更は導入されませんでしたが、ソースファイル内のエンコーディングエラーが、以前のような「警告」ではなく、「エラー」として報告されるようになりました。 +줬ǥեͤǤJava SE 6 ǤϸФѹƳޤǤեΥ󥳡ǥ󥰥顼Τ褦ʡַٹפǤϤʤ֥顼פȤ𤵤褦ˤʤޤ .TP 3 6 -1.6 と同義です。 +1.6 ƱǤ +.TP 3 +1.7 +JDK 7 Ƴ줿ǽޤॳɤդޤ +.TP 3 +7 +1.7 ƱǤ .RE .TP 3 \-sourcepath sourcepath -クラスまたはインタフェースの定義を検索するソースコードパスを指定します。ユーザークラスパスと同様に、ソースパスの複数のエントリはコロン (\f3:\fP) で区切ります。 ソースパスのエントリには、ディレクトリ、JAR アーカイブ、または ZIP アーカイブを指定できます。パッケージを使っている場合は、ディレクトリまたはアーカイブ内のローカルパス名がパッケージ名を反映していなければなりません。 +饹ޤϥ󥿥ե򸡺륽ɥѥꤷޤ桼饹ѥƱͤˡѥʣΥȥϥ (\f3:\fP) ǶڤޤѥΥȥˤϡǥ쥯ȥꡢJAR ֡ޤ ZIP ֤ǤޤѥåȤäƤϡǥ쥯ȥޤϥΥѥ̾ѥå̾ȿǤƤʤФʤޤ .LP -\f3注:\fP\ クラスパスからクラスだけでなくそのソースも見つかった場合、そのクラスは自動再コンパイルの対象になることがあります。「型の検索」を参照してください。 +\f3:\fP\ 饹ѥ饯饹ǤʤΥ⸫Ĥä硢Υ饹ϼưƥѥоݤˤʤ뤳Ȥޤַθפ򻲾ȤƤ .TP 3 \-verbose -詳細な出力を表示します。ロードされるクラスおよびコンパイルされるソースファイルごとの情報が出力されます。 +ܺ٤ʽϤɽޤɤ륯饹ӥѥ뤵륽ե뤴Ȥξ󤬽Ϥޤ +.TP 3 +\-version +СϤޤ +.TP 3 +\-Werror +ٹȯ˥ѥλޤ .TP 3 \-X -非標準オプションに関する情報を表示して終了します。 +ɸ४ץ˴ؤɽƽλޤ .RE .LP -.RE .SS -クロスコンパイルオプション -.LP -.RS 3 - +ѥ륪ץ .LP .LP -デフォルトでは、クラスのコンパイルは、\f3javac\fP が添付されているプラットフォームのブートストラップクラスおよび拡張機能クラスに対して行われます。ただし、\f3javac\fP は、異なる Java プラットフォームに実装されたブートストラップクラスおよび拡張機能クラスに対してコンパイルを行う「クロスコンパイル」もサポートしています。クロスコンパイルを行う場合は、\f3\-bootclasspath\fP および \f3\-extdirs\fP を使うことが重要です。 このあとの「クロスコンパイルの例」を参照してください。 +ǥեȤǤϡ饹Υѥϡ\f3javac\fP źդƤץåȥեΥ֡ȥȥåץ饹ӳĥǽ饹ФƹԤޤ\f3javac\fP ϡۤʤ Java ץåȥե˼줿֡ȥȥåץ饹ӳĥǽ饹ФƥѥԤ֥ѥפ⥵ݡȤƤޤѥԤϡ\f3\-bootclasspath\fP \f3\-extdirs\fP ȤȤפǤΤȤΡ֥ѥפ򻲾ȤƤ .LP .RS 3 .TP 3 \-target version -指定されたバージョンの VM をターゲットにしたクラスファイルを生成します。このクラスファイルは、指定されたターゲット以降のバージョンでは動作しますが、それより前のバージョンの VM では動作しません。有効なターゲットは、\f31.1\fP、\f31.2\fP、\f31.3\fP、\f31.4\fP、\f31.5\fP (\f35\fP も可)、および \f31.6\fP (\f36\fP も可) です。 +ꤵ줿С VM 򥿡åȤˤ饹եޤΥ饹եϡꤵ줿åȰʹߤΥСǤưޤΥС VM ǤưޤͭʥåȤϡ\f31.1\fP\f31.2\fP\f31.3\fP\f31.4\fP\f31.5\fP (\f35\fP )\f31.6\fP (\f36\fP ) \f31.7\fP (\f37\fP ) Ǥ .LP -\f3\-target\fP のデフォルトは、次のように \f3\-source\fP の値によって決まります。 +\f3\-target\fP ΥǥեȤϡΤ褦 \f3\-source\fP ͤˤäƷޤޤ .RS 3 .TP 2 o -\-source が\f3指定されなかった\fP場合、\-target の値は \f31.6\fP になります。 +\-source \f3ꤵʤä\fP硢\-target ͤ \f31.7\fP ˤʤޤ .TP 2 o -\-source が\f31.2\fP の場合、\-target の値は \f31.4\fP になります。 +\-source \f31.2\fP ξ硢\-target ͤ \f31.4\fP ˤʤޤ .TP 2 o -\-source が\f31.3\fP の場合、\-target の値は \f31.4\fP になります。 +\-source \f31.3\fP ξ硢\-target ͤ \f31.4\fP ˤʤޤ .TP 2 o -\-source が\f3それ以外の値の場合はすべて\fP、\\\-target の値は \f3\-source\fP の値になります。 +\-source \f3ʳͤξϤ٤\fP\f3\\\-target\fP ͤ \f3\-source\fP ͤˤʤޤ .RE .TP 3 \-bootclasspath bootclasspath -指定された一連のブートクラスに対してクロスコンパイルを行います。ユーザークラスパスと同様に、ブートクラスパスの複数のエントリはコロン (\f3:\fP) で区切ります。 ブートクラスパスのエントリには、ディレクトリ、JAR アーカイブ、または ZIP アーカイブを指定できます。 -.TP 3 -\-extdirs directories -指定された拡張機能ディレクトリに対してクロスコンパイルを行います。\f2directories\fP には、コロンで区切ったディレクトリのリストを指定します。指定したディレクトリ内の各 JAR アーカイブから、クラスファイルが検索されます。 +ꤵ줿ϢΥ֡ȥ饹ФƥѥԤޤ桼饹ѥƱͤˡ֡ȥ饹ѥʣΥȥϥ (\f3:\fP) Ƕڤޤ֡ȥ饹ѥΥȥˤϡǥ쥯ȥꡢJAR ֡ޤ ZIP ֤Ǥޤ .RE .LP -.RE .SS -非標準オプション -.LP -.RS 3 - +ɸ४ץ .LP .RS 3 .TP 3 \-Xbootclasspath/p:path -ブートストラップクラスパスの前に追加します。 +֡ȥȥåץ饹ѥɲäޤ .TP 3 \-Xbootclasspath/a:path -ブートストラップクラスパスの後ろに追加します。 +֡ȥȥåץ饹ѥθɲäޤ .TP 3 \-Xbootclasspath/:path -ブートストラップクラスファイルの位置をオーバーライドします。 +֡ȥȥåץ饹եΰ֤򥪡С饤ɤޤ .TP 3 \-Xlint -推奨されるすべての警告を有効にします。このリリースでは、利用可能なすべての警告が推奨されています。 +侩뤹٤ƤηٹͭˤޤΥ꡼ǤϡѲǽʤ٤Ƥηٹͭˤ뤳Ȥ侩Ƥޤ +.TP 3 +\-Xlint:all +侩뤹٤ƤηٹͭˤޤΥ꡼ǤϡѲǽʤ٤Ƥηٹͭˤ뤳Ȥ侩Ƥޤ .TP 3 \-Xlint:none -Java 言語仕様では指定されていないすべての警告を無効にします。 +Java ͤǤϻꤵƤʤ٤Ƥηٹ̵ˤޤ +.TP 3 +\-Xlint:name +ٹ \f2name\fP ͭˤޤΥץͭˤǤٹΥꥹȤˤĤƤϡ\-Xlint ץȤäͭޤ̵ˤǤٹפ򻲾ȤƤ .TP 3 \-Xlint:\-name -警告 \f2name\fP を無効にします。 ただし、\f2name\fP は、\f3\-Xlint:\fP\f2name\fP に使用できる警告名のいずれかになります。 この警告名は次のとおりです。 +ٹ \f2name\fP ̵ˤޤΥץ̵ˤǤٹΥꥹȤˤĤƤϡ\-Xlint ץȤäͭޤ̵ˤǤٹפ򻲾ȤƤ +.TP 3 +\-Xmaxerrs number +륨顼κꤷޤ .TP 3 -\-Xlint:unchecked -Java 言語仕様で指定されている未検査変換警告の詳細を示します。 +\-Xmaxwarns number +ٹκꤷޤ .TP 3 -\-Xlint:path -存在しないパス (classpath、sourcepath など) ディレクトリについて警告します。 +\-Xstdout filename +ѥΥå򡢻ꤵ줿եޤǥեȤǤϡѥΥå \f2System.err\fP ޤ .TP 3 -\-Xlint:serial -\f2serialVersionUID\fP 定義が直列化可能クラスにないことを警告します。 +\-Xprefer:{newer,source} +뷿Фƥեȥ饹եξĤä硢ΤɤΥեɤ߼٤ꤷޤ (ַθפ򻲾)\f2\-Xprefer:newer\fP Ѥ硢뷿Ф륽եȥ饹եοɤ߼ޤ (ǥե)\f2\-Xprefer:source\fP ץѤ硢ե뤬ɤ߼ޤSOURCE ¸ݥꥷȤä줿ǤդץåǤ褦ˤϡ\f2\-Xprefer:source\fP \f2ѤƤ\fP +.TP 3 +\-Xpkginfo:{always,legacy,nonempty} +ѥåեνꤷޤ .TP 3 -\-Xlint:finally -正常に完了できない \f2finally\fP 節について警告します。 +\-Xprint +ꤵ줿ΥƥɽǥХåŪǽϤޤѥΤɤ¹Ԥޤ󡣽Ϸѹǽޤ .TP 3 -\-Xlint:fallthrough -fall\-through ケースの \f2switch\fP ブロックをチェックし、検出されたものに対して警告メッセージを表示します。Fall\-through ケースは、\f2switch\fP ブロック内の最後のケースを除くケースです。 このコードには \f2break\fP 文は含まれません。 コードの実行をそのケースから次のケースへ移動します。たとえば、この \f2switch\fP ブロック内の \f2case 1\fP ラベルに続くコードは、\f2break\fP 文で終わっていません。 -.RS 3 +\-XprintProcessorInfo +ΥץåꤵƤ˴ؤϤޤ +.TP 3 +\-XprintRounds +󤪤Ӹ³饦ɤ˴ؤϤޤ +.RE .LP +.SS +\-Xlint ץȤäͭޤ̵ˤǤٹ +.LP +.LP +\f3\-Xlint:\fP\f2name\fP ץȤäƷٹ \f2name\fP ͭˤޤ\f2name\fP ϼηٹ̾Τ줫ˤʤޤƱͤˡ\f3\-Xlint:\-\fP\f2name\fP ץȤäƷٹ \f2name\fP ̵ˤǤޤ +.LP +.RS 3 +.TP 3 +cast +פǾĹʥ㥹ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +String s = (String)"Hello!" +.fl +\fP +.fi +.TP 3 +classfile +饹եƤ˴ϢˤĤƷٹ𤷤ޤ +.TP 3 +deprecation +侩ܤλѤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + java.util.Date myDate = new java.util.Date(); +.fl + int currentDay = myDate.getDay(); +.fl +\fP +.fi +.LP +᥽å \f2java.util.Date.getDay\fP JDK 1.1 ʹߤϿ侩Ƥޤ +.TP 3 +dep\-ann +\f2@deprecated\fP Javadoc ȤǥɥȲƤ뤬 \f2@Deprecated\fP ᤬դƤʤܤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + /** +.fl + * @deprecated As of Java SE 7, replaced by {@link #newMethod()} +.fl + */ +.fl + +.fl + public static void deprecatedMethood() { } +.fl + +.fl + public static void newMethod() { } +.fl +\fP +.fi +.TP 3 +divzero + 0 ǽ뤳ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + int divideByZero = 42 / 0; +.fl +\fP +.fi +.TP 3 +empty +\f2if\fP ʸʹߤʸǤ뤳ȤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +class E { +.fl + void m() { +.fl + if (true) ; +.fl + } +.fl +} +.fl +\fP +.fi +.TP 3 +fallthrough +fall\-through \f2switch\fP ֥ååФ줿ΤФƷٹåɽޤFall\-through ϡ\f2switch\fP ֥åκǸΥǤΥɤˤ \f2break\fP ʸϴޤޤޤ󡣥ɤμ¹Ԥ򤽤Υ鼡ΥذưޤȤС \f2switch\fP ֥å \f2case 1\fP ٥³ɤϡ\f2break\fP ʸǽäƤޤ .nf \f3 .fl @@ -347,7 +445,7 @@ .fl System.out.println("1"); .fl - // No break; statement here. + // No break statement here. .fl case 2: .fl @@ -355,96 +453,375 @@ .fl } .fl - +\fP +.fi +.LP +ΥɤΥѥ \f2\-Xlint:fallthrough\fP ե饰ѤƤ硢ѥ ιֹȤȤˡfall\-through βǽ뤳Ȥ򼨤ٹȯԤޤ +.TP 3 +finally +˴λǤʤ \f2finally\fP ˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl + public static int m() { +.fl + try { +.fl + throw new NullPointerException(); +.fl + } catch (NullPointerException e) { +.fl + System.err.println("Caught NullPointerException."); +.fl + return 1; +.fl + } finally { +.fl + return 0; +.fl + } +.fl + } +.fl +\fP +.fi +.LP +Ǥϡѥ \f2finally\fP ֥å˴ؤٹޤΥ᥽åɤƤӽФȡ 1 ǤϤʤ \f20\fP \f2֤ޤ\fP \f2finally\fP ֥åϡ \f2try\fP ֥åλɬ¹ԤޤǤϡ椬 \f2catch\fP ˰ܤ줿硢᥽åɤϽλޤ \f2finally\fP ֥åϼ¹Ԥɬפ뤿ᡢ椬ǤˤΥ᥽åɤγ˰ܤƤƤ⡢Υ֥åϼ¹Ԥޤ +.TP 3 +options +ޥɹԥץλѤ˴ؤˤĤƷٹ𤷤ޤμηٹˤĤƤϡ֥ѥפ򻲾ȤƤ +.TP 3 +overrides +᥽åɤΥС饤ɤ˴ؤˤĤƷٹ𤷤ޤȤС 2 ĤΥ饹Ȥޤ +.nf +\f3 +.fl +public class ClassWithVarargsMethod { +.fl + void varargsMethod(String... s) { } +.fl +} +.fl +\fP +.fi +.nf +\f3 +.fl +public class ClassWithOverridingMethod extends ClassWithVarargsMethod { +.fl + @Override +.fl + void varargsMethod(String[] s) { } +.fl +} +.fl +\fP +.fi +.LP +ѥϼΤ褦ʷٹޤ +.nf +\f3 +.fl +warning: [override] varargsMethod(String[]) in ClassWithOverridingMethod overrides varargsMethod(String...) in ClassWithVarargsMethod; overriding method is missing '...' +.fl +\fP +.fi +.LP +ѥϡvarargs ᥽åɤ򸡽Фȡvarargs βѥ᡼Ѵޤ᥽å \f2ClassWithVarargsMethod.varargsMethod\fP Ǥϡѥ varargs βѥ᡼ \f2String... s\fP 򲾥ѥ᡼ \f2String[] s\fP ѴޤString[] s ϡ᥽å \f2ClassWithOverridingMethod.varargsMethod\fP βѥ᡼бǤη̡Ǥϥѥ뤬Ԥޤ +.TP 3 +path +ޥɹԤǤ̵ʥѥǤ¸ߤʤѥǥ쥯ȥˤĤƷٹ𤷤ޤ (饹ѥѥʤɤΥѥϢ)Τ褦ʷٹ \f2@SuppressWarnings\fP 뤳ȤϤǤޤ󡣼򼨤ޤ +.nf +\f3 +.fl +javac \-Xlint:path \-classpath /nonexistentpath Example.java +.fl +\fP +.fi +.TP 3 +processing +˴ؤˤĤƷٹ𤷤ޤѥ餬ηٹΤϡޤ९饹ȤˡѤƤץåǤη㳰ǤʤǤñץå򼡤˼ޤ +.LP +\f3ե \fP\f4AnnoProc.java\fP: +.nf +\f3 +.fl +import java.util.*; +.fl +import javax.annotation.processing.*; +.fl +import javax.lang.model.*; +.fl +import javax.lang.model.element.*; +.fl + +.fl +@SupportedAnnotationTypes("NotAnno") +.fl +public class AnnoProc extends AbstractProcessor { +.fl + public boolean process(Set<? extends TypeElement> elems, RoundEnvironment renv) { +.fl + return true; +.fl + } +.fl + +.fl + public SourceVersion getSupportedSourceVersion() { +.fl + return SourceVersion.latest(); +.fl + } +.fl +} +.fl +\fP +.fi +.LP +\f3ե \fP\f4AnnosWithoutProcessors.java\fP\f3:\fP +.nf +\f3 +.fl +@interface Anno { } +.fl + +.fl +@Anno +.fl +class AnnosWithoutProcessors { } +.fl +\fP +.fi +.LP +Υޥɤϡץå \f2AnnoProc\fP 򥳥ѥ뤷ץå򥽡ե \f2AnnosWithoutProcessors.java\fP ФƼ¹Ԥޤ +.nf +\f3 +.fl +% javac AnnoProc.java +.fl +% javac \-cp . \-Xlint:processing \-processor AnnoProc \-proc:only AnnosWithoutProcessors.java +.fl +\fP +.fi +.LP +ѥ餬ե \f2AnnosWithoutProcessors.java\fP Фץå¹Ԥȡηٹޤ +.nf +\f3 +.fl +warning: [processing] No processor claimed any of these annotations: Anno .fl \fP .fi -.RE -このコードのコンパイル時に \f2\-Xlint:fallthrough\fP フラグが使用されていた場合、コンパイラは 当該ケースの行番号とともに、fall\-through ケースの可能性があることを示す警告を発行します。 +.LP +褹ˤϡ饹 \f2AnnosWithoutProcessors\fP ӻѤ̾ \f2Anno\fP \f2NotAnno\fP ѹޤ .TP 3 -\-Xmaxerrs number -印刷するエラーの最大数を設定します。 +rawtypes +raw Ф̤ˤĤƷٹ𤷤ޤäˤΥץϡʤѥ᡼줿Ѥ桼ФƷٹ𤷤ޤʸǤϡ \f2rawtypes\fP ٹޤ +.nf +\f3 +.fl +void countElements(List l) { ... } +.fl +\fP +.fi +.LP +ʸǤϡ \f2rawtypes\fP ٹޤ +.nf +\f3 +.fl +void countElements(List<?> l) { ... } +.fl +\fP +.fi +.LP +\f2List\fP raw Ǥ \f2List<?>\fP ϥХɷΥ磻ɥɤΥѥ᡼줿Ǥ \f2List\fP ϥѥ᡼줿󥿥եʤΤǡɬηꤹɬפޤǤϡ \f2List\fP βϥХɷΥ磻ɥ (\f2?\fP) ȤäƤβѥ᡼ȤƻꤵޤĤޤꡢ \f2countElements\fP ᥽åɤ \f2List\fP 󥿥եΤɤΥ󥹥󥹲դ뤳ȤǤޤ .TP 3 -\-Xmaxwarns number -印刷する警告の最大数を設定します。 -.TP 3 -\-Xstdout filename -コンパイラのメッセージを、指定されたファイルに送ります。デフォルトでは、コンパイラのメッセージは \f2System.err\fP に送られます。 +serial +ľ󲽲ǽ饹 \f2serialVersionUID\fP ʤȤٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +public class PersistentTime implements Serializable +.fl +{ +.fl + private Date time; +.fl + +.fl + public PersistentTime() { +.fl + time = Calendar.getInstance().getTime(); +.fl + } +.fl + +.fl + public Date getTime() { +.fl + return time; +.fl + } +.fl +} +.fl +\fP +.fi +.LP +ѥϼηٹޤ +.nf +\f3 +.fl +warning: [serial] serializable class PersistentTime has no definition of serialVersionUID +.fl +\fP +.fi +.LP +ľ󲽲ǽ饹 \f2serialVersionUID\fP Ȥ̾ΥեɤŪʤ硢ľ󲽥󥿥ϡJava ֥ľ󲽻͡פƤ褦ˡ饹Τޤޤ¦̤˴Ťơ饹 \f2serialVersionUID\fP Υǥեͤ׻ޤ٤Ƥľ󲽲ǽ饹 \f2serialVersionUID\fP ͤŪ뤳Ȥ򶯤ᤷޤϡ \f2serialVersionUID\fP ͤ׻ǥեȤΥץѥμˤäưۤʤǽΤ륯饹ξܺ٤ˤƱƶ䤹ľͽʤ \f2InvalidClassExceptions\fP ȯǽ뤿ǤäơJava ѥμۤʤäƤ \f2serialVersionUID\fP ͤΰݤˤˤϡľ󲽲ǽ饹 \f2serialVersionUID\fP ͤŪɬפޤ .TP 3 -\-Xprefer:{newer,source} -ある型に対してソースファイルとクラスファイルの両方が見つかった場合、そのどちらのファイルを読み取るべきかを指定します (「型の検索」を参照)。\f2\-Xprefer:newer\fP を使用した場合、ある型に対するソースファイルとクラスファイルの新しい方が読み取られます (デフォルト)。\f2\-Xprefer:source\fPオプションを使用した場合、ソースファイルが読み取られます。\f2SOURCE\fP の保存ポリシーを使って宣言された注釈に任意の注釈プロセッサがアクセスできるようにしたい場合は、\f2\-Xprefer:source\fPを使用してください。 +static +static λѤ˴ؤˤĤƷٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +class XLintStatic { +.fl + static void m1() { } +.fl + void m2() { this.m1(); } +.fl +} +.fl +\fP +.fi +.LP +ѥϼηٹޤ +.nf +\f3 +.fl +warning: [static] static method should be qualified by type name, XLintStatic, instead of by an expression +.fl +\fP +.fi +.LP +褹뤿ˡΤ褦 static ᥽å \f2m1\fP ƤӽФȤǤޤ +.nf +\f3 +.fl +XLintStatic.m1(); +.fl +\fP +.fi +.LP +뤤ϡ \f2static\fP ɤ᥽å \f2m1\fP 뤳ȤǤޤ .TP 3 -\-Xprint -指定された型のテキスト表現をデバッグ目的で出力します。 注釈処理、コンパイルのどちらも実行しません。出力形式は変更される可能性があります。 +try +try\-with\-resources ʸޤࡢ \f2try\fP ֥åλѤ˴ؤˤĤƷٹ𤷤ޤȤСtry ʸ줿꥽ \f2ac\fP Ѥʤˡ \f2ʸФƷٹ\fP ޤ +.nf +\f3 +.fl +try ( AutoCloseable ac = getResource() ) { +.fl + // do nothing +.fl +} +.fl +\fP +.fi .TP 3 -\-XprintProcessorInfo -ある特定のプロセッサが処理を依頼されている注釈に関する情報を出力します。 +unchecked +Java ͤǻꤵƤ̤Ѵٹξܺ٤򼨤ޤ򼨤ޤ +.nf +\f3 +.fl + List l = new ArrayList<Number>(); +.fl + List<String> ls = l; // unchecked warning +.fl +\fP +.fi +.LP +ξõˡ \f2ArrayList<Number>\fP \f2List<String>\fP Ϥ줾 \f2ArrayList\fP \f2List\fP ˤʤޤ +.LP +ѿ \f2ls\fP ˤϥѥ᡼줿 \f2List<String>\fP ꤵƤޤl ˤäƻȤ \f2List\fP \f2\fP \f2ls\fP ȡѥ̤ٹޤѥ \f2l\fP \f2List<String>\fP 򻲾Ȥ뤫ɤ򥳥ѥȽǤǤޤ󡣤ޤJVM ¹ԻˤȽǤǤʤȤǧƤޤl List<String> 򻲾Ȥޤ󡣤η̡ҡױȯޤ +.LP +ܤȡҡױ֤ȯΤϡ \f2List\fP ֥ \f2l\fP ( static \f2List<Number>\fP) ̤ \f2List\fP ֥ \f2ls\fP (ۤʤ static \f2List<String>\fP ) ǤѥǤϤ̤˵ĤƤޤΤ򥵥ݡȤʤ Java SE ΥСȤβ̸ߴݤ뤿ˡĤɬפޤõΤˡ \f2List<Number>\fP \f2List<String>\fP \f2List\fP ˤʤޤη̡ѥϥ֥ \f2l\fP ( \f2List\fP Ȥ raw ) 򥪥֥ \f2ls\fP뤳ȤĤޤ .TP 3 -\-XprintRounds -初回および後続の注釈処理ラウンドに関する情報を出力します。 +varargs +Ѱ (varargs) ᥽åɡäݲǽޤΤλѤǤʤȤٹ𤷤ޤ򼨤ޤ +.nf +\f3 +.fl +public class ArrayBuilder { +.fl + public static <T> void addToList (List<T> listArg, T... elements) { +.fl + for (T x : elements) { +.fl + listArg.add(x); +.fl + } +.fl + } +.fl +} +.fl +\fP +.fi +.LP +ѥϡ᥽å \f2ArrayBuilder.addToList\fP ˴ؤ뼡ηٹޤ +.nf +\f3 +.fl +warning: [varargs] Possible heap pollution from parameterized vararg type T +.fl +\fP +.fi +.LP +ѥϡvarargs ᥽åɤ򸡽Фȡvarargs βѥ᡼ѴޤJava ץߥ󥰸Ǥϡѥ᡼줿κĤƤޤ󡣥᥽å \f2ArrayBuilder.addToList\fP Ǥϡѥ varargs βѥ᡼ \f2T... elements\fP 򲾥ѥ᡼ \f2T[] elements\fP() ѴޤõΤˡѥ varargs βѥ᡼ \f2Object[] elements\fP Ѵޤη̡ҡױȯǽޤ .RE .LP -.RE -.SS -\-J オプション +.SH "ޥɹ԰ե" .LP -.RS 3 - .LP -.RS 3 -.TP 3 -\-Joption -\f3javac\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。このオプションは \f3\-X\fP で始まっていませんが、\f3javac\fP の「標準オプション」ではありません。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +javac ΥޥɹԤûʷˤꤹ뤿ˡ \f2javac\fP ޥɤФ ( \f2\-J\fP ץ) ޤ 1 İʾΥեꤹ뤳ȤǤޤˡȤȡɤΥڥ졼ƥ󥰥ƥǤ⡢ǤդĹ javac ޥɤǤޤ .LP -\f3注:\fP \ \f3CLASSPATH\fP、\f3\-classpath\fP、\f3\-bootclasspath\fP、および \f3\-extdirs\fP は、\f3javac\fP を実行するために使うクラスを指定するものではありません。このような方法でコンパイラの実装を操作することは、通常は無意味であり、常に危険を伴います。このような方法を使う必要がある場合は、\f3\-J\fP オプションを使って、必要なオプションを背後の \f3java\fP 起動ツールに渡してください。 -.RE - .LP -.RE -.SH "コマンド行引数ファイル" -.LP - +եˤϡjavac Υץȥե̾ͳȤ߹碌ƵҤǤޤեγưϡڡޤϲԤǶڤޤե̾˶򤬴ޤޤƤϡΥե̾ΤŰǰϤߤޤ .LP .LP -\f2javac\fP のコマンド行を短くしたり簡潔にしたりするために、\f2javac\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) を含む 1 つ以上のファイルを指定することができます。この方法を使うと、どのオペレーティングシステム上でも、任意の長さの javac コマンドを作成できます。 -.LP -.LP -引数ファイルには、javac のオプションとソースファイル名を自由に組み合わせて記述できます。ファイル内の各引数は、スペースまたは改行で区切ります。ファイル名に空白が含まれている場合は、そのファイル名全体を二重引用符で囲みます。 +եΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣰եΥե̾ꥹȤǤϡ磻ɥ (*) ϻѤǤޤ󡣤ȤС \f2*.java\fP ȤϻǤޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ \f2\-J\fP ץ⥵ݡȤƤޤ󡣤ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ .LP .LP -引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。引数ファイルの位置から見た相対パスではありません。引数ファイル内のファイル名リストでは、ワイルドカード (*) は使用できません。たとえば、\f2*.java\fP とは指定できません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 +javac ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤjavac ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ +.LP +.SS +ե 1 Ļꤹ .LP .LP -javac を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。javac は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 -.LP -.SS -引数ファイルを 1 つ指定する例 -.LP -.LP -\f2argfile\fP という名前の引数ファイルにすべての javac 引数を格納する場合は、次のように指定します。 +\f2argfileפȤ̾ΰե\fP٤Ƥ javac ǼϡΤ褦˻ꤷޤ .LP .nf \f3 .fl - % \fP\f3javac @argfile\fP -.fl - +% \fP\f3javac @argfile\fP .fl .fi .LP .LP -この引数ファイルには、次の例で示されている 2 つのファイルの内容を両方とも入れることができます。 +ΰեˤϡǼƤ 2 ĤΥեƤξȤ뤳ȤǤޤ .LP .SS -引数ファイルを 2 つ指定する例 +ե 2 Ļꤹ .LP .LP -たとえば、javac オプション用に 1 ファイル、ソースファイル名用に 1 ファイルというように、2 つの引数ファイルを作成することもできます。なお、このあとのリストでは、行の継続文字を使用していません。 +ȤСjavac ץѤ 1 ե롢ե̾Ѥ 1 եȤ褦ˡ2 Ĥΰե뤳ȤǤޤʤΤȤΥꥹȤǤϡԤη³ʸѤƤޤ .LP .LP -以下の内容を含む \f2options\fP という名前のファイルを作成します。 +ʲƤޤ \f2options\fP Ȥեޤ .LP .nf \f3 @@ -455,14 +832,14 @@ .fl \-sourcepath /java/pubs/ws/1.3/src/share/classes .fl - + .fl \fP .fi .LP .LP -以下の内容を含む \f2classes\fP という名前のファイルを作成します。 +ʲƤޤ \f2classes\fP Ȥեޤ .LP .nf \f3 @@ -473,120 +850,104 @@ .fl MyClass3.java .fl - + .fl \fP .fi .LP .LP -次のコマンドを使用して \f3javac\fP を実行します。 +ΥޥɤѤ \f3javac\fP ¹Ԥޤ .LP .nf \f3 .fl % \fP\f3javac @options @classes\fP .fl - + .fl .fi .LP .SS -パス付きの引数ファイルの例 +ѥդΰե .LP .LP -引数ファイルには、パスを指定できます。 ただし、そのファイル内に指定されたファイル名は、現在の作業ディレクトリから見た相対パスになります。 つまり、下の例の場合は、\f2path1\fP や \f2path2\fP から見た相対パスではありません。 +եˤϡѥǤޤΥե˻ꤵ줿ե̾ϡߤκȥǥ쥯ȥ꤫鸫ХѥˤʤޤĤޤꡢξϡ \f2path1\fP \f2path2\fP 鸫ХѥǤϤޤ .LP .nf \f3 .fl - % \fP\f3javac @path1/options @path2/classes\fP -.fl - +% \fP\f3javac @path1/options @path2/classes\fP .fl .fi .LP -.SH "注釈処理" +.SH "" .LP - +.LP +\f3javac\fP ľܥݡȤƤ뤿ᡢΩġǤ \f3apt\fP Ѥɬפʤʤޤ .LP .LP -\f3javac\fP が注釈処理を直接サポートしているため、独立した注釈処理ツールである \f3apt\fP を使用する必要がなくなりました。 + API ϡ \f2javax.annotation.processing\fP \f2javax.lang.model\fP ѥåȤΥ֥ѥåƤޤ +.LP +.SS +γ .LP .LP -注釈処理の API は、\f2javax.annotation.processing\fP および \f2javax.lang.model\fP パッケージとそのサブパッケージ内に定義されています。 -.LP -.SS -注釈処理の概要 +\f3\-proc:none\fP ץˤä̵ʤꡢѥϻѲǽʤ٤Ƥץå򸡺ޤѥ \f3\-processorpath\fP ץȤäƻǤޤѥꤷʤäϡ桼饹ѥѤޤץåθϡѥ \f2META\-INF/services/javax.annotation.processing.Processor\fP Ȥ̾ΥӥץХե˴ŤƹԤޤΤ褦ʥեˤϡѤ뤹٤Ƥץå̾1 Ԥ 1 ĤĴޤƤޤ̤ˡȤơ\f3\-processor\fP ץȤäƥץåŪ˻ꤹ뤳ȤǤޤ .LP .LP -\f3\-proc:none\fP オプションによって注釈処理が無効化されないかぎり、コンパイラは使用可能なすべての注釈プロセッサを検索します。検索パスは \f3\-processorpath\fP オプションを使って指定できます。 検索パスを指定しなかった場合は、ユーザークラスパスが使用されます。プロセッサの検索は、検索パス上の -.br -\f2\ META\-INF/services/javax.annotation.processing.Processor\fP -.br -という名前のサービスプロバイダ構成ファイルに基づいて行われます。このようなファイルには、使用するすべての注釈プロセッサの名前を、1 行に 1 つずつ含めてください。また、別の方法として、\f3\-processor\fP オプションを使ってプロセッサを明示的に指定することもできます。 +ѥϡޥɹԤΥե䥯饹뤳ȤǡɤΤ褦᤬¸ߤƤ뤫ǧȡץåФ䤤碌ԤΥץåɤǤΤǧޤפΤĤä硢ΥץåƤӽФޤƥץåϡȤ׵פǤޤξ硢Ф̤Υץå򸫤ĤߤϹԤޤ󡣤٤Ƥ᤬׵ᤵƤޤȡѥϤʾץåθԤޤ .LP .LP -コンパイラは、コマンド行のソースファイルやクラスを走査することで、どのような注釈が存在しているかを確認し終わると、プロセッサに対して問い合わせを行い、それらのプロセッサがの注釈を処理できるのかを確認します。一致するものが見つかった場合、そのプロセッサが呼び出されます。各プロセッサは、自身が処理する注釈を「要求」できます。 その場合、それらの注釈に対する別のプロセッサを見つける試みは行われません。すべての注釈が要求されてしまうと、コンパイラはそれ以上プロセッサの検索を行いません。 +줫Υץåˤäƿե뤬ȡ 2 ܤΥ饦ɤϤޤ줿٤ƤΥե뤬졢Ʊͤ᤬ޤΥ饦ɤǸƤӽФ줿ץåϤ٤ơ³ΤɤΥ饦ɤǤƤӽФޤ줬ե뤬ʤʤޤ³ޤ .LP .LP -いずれかのプロセッサによって新しいソースファイルが生成されると、注釈処理の 2 回目のラウンドが開始されます。新しく生成されたすべてのソースファイルが走査され、前回と同様に注釈が処理されます。以前のラウンドで呼び出されたプロセッサはすべて、後続のどのラウンドでも呼び出されます。これが、新しいソースファイルが生成されなくなるまで続きます。 -.LP -.LP -あるラウンドで新しいソースファイルが生成されなかった場合、注釈プロセッサがあと 1 回だけ呼び出され、必要な処理を実行する機会が与えられます。 最後に、\f3\-proc:only\fP オプションが使用されないかぎり、コンパイラは、元のソースファイルと生成されたすべてのソースファイルをコンパイルします。 +饦ɤǿե뤬ʤä硢ץå 1 ƤӽФ졢ɬפʽ¹Ԥ뵡ͿޤǸˡ\f3\-proc:only\fP ץ󤬻ѤʤꡢѥϡΥե줿٤ƤΥե򥳥ѥ뤷ޤ .LP .SS -暗黙的にロードされたソースファイル +Ū˥ɤ줿ե .LP .LP -コンパイラは、一連のソースファイルをコンパイルする際に、別のソースファイルを暗黙的にロードしなければならない場合があります (「型の検索」を参照)。そのようなファイルは、現時点では注釈処理の対象になりません。デフォルトでは、注釈処理が実行され、かつ暗黙的にロードされたソースファイルが 1 つでもコンパイルされた場合にコンパイラは警告を発行します。この警告を抑制する方法については、\-implicit オプションを参照してください。 +ѥϡϢΥե򥳥ѥ뤹ݤˡ̤ΥեŪ˥ɤ뤳Ȥɬפʾ礬ޤ (ַθפ򻲾)Τ褦ʥեϡǤоݤˤʤޤ󡣥ǥեȤǤϡ¹Ԥ졢İŪ˥ɤ줿ե뤬 1 ĤǤ⥳ѥ뤵줿˥ѥϷٹȯԤޤηٹˡˤĤƤϡ\-implicit ץ򻲾ȤƤ .LP -.SH "型の検索" -.LP - +.SH "θ" .LP .LP -ソースファイルをコンパイルする場合、コマンド行で指定したソースファイルに型の定義が見つからないとき、コンパイラは通常、その型に関する情報を必要とします。コンパイラは、ソースファイルで使われているクラスまたはインタフェース、拡張されているクラスまたはインタフェース、あるいは実装されているクラスまたはインタフェースすべてについて、型の情報を必要とします。これには、ソースファイルで明示的には言及されていなくても、継承を通じて情報を提供するクラスとインタフェースも含まれます。 +ե򥳥ѥ뤹硢ޥɹԤǻꤷե˷ĤʤȤѥ̾η˴ؤɬפȤޤѥϡեǻȤƤ륯饹ޤϥ󥿥եĥƤ륯饹ޤϥ󥿥ե뤤ϼƤ륯饹ޤϥ󥿥ե٤ƤˤĤơξɬפȤޤˤϡեŪˤϸڤƤʤƤ⡢Ѿ̤ƾ󶡤륯饹ȥ󥿥եޤޤޤ .LP .LP -たとえば、\f3java.applet.Applet\fP をサブクラスにした場合、\f3アプレットの\fP祖先のクラス(\f3java.awt.Panel\fP、\f3java.awt.Container\fP、\f3java.awt.Component\fP、\f3java.lang.Object\fP)を使用していることになります。 +ȤС\f3java.applet.Applet\fP 򥵥֥饹ˤ硢\f3ץåȤ\fPΥ饹\f3java.awt.Panel\fP\f3java.awt.Container\fP\f3java.awt.Component\fP\f3java.lang.Object\fPˤѤƤ뤳Ȥˤʤޤ .LP .LP -コンパイラは、型の情報が必要になると、その型を定義しているソースファイルまたはクラスファイルを探します。まず、ブートストラップクラスと拡張機能クラスを検索し、続いてユーザークラスパス (デフォルトではカレントディレクトリ) を検索します。ユーザークラスパスは、\f3CLASSPATH\fP 環境変数を設定して定義するか、または \f3\-classpath\fP コマンド行オプションを使って設定します。詳細は、 -.na -\f2「クラスパスの設定」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathを参照してください。 +ѥϡξɬפˤʤȡηƤ륽եޤϥ饹եõޤޤ֡ȥȥåץ饹ȳĥǽ饹򸡺³ƥ桼饹ѥ (ǥեȤǤϥȥǥ쥯ȥ) 򸡺ޤ桼饹ѥϡ\f3CLASSPATH\fP Ķѿꤷ뤫ޤ \f3\-classpath\fP ޥɹԥץȤäꤷޤܺ٤ϡ֥饹ѥפ򻲾ȤƤ .LP .LP -\-sourcepath オプションが指定されている場合、コンパイラは、指定されたパスからソースファイルを検索します。 それ以外の場合は、ユーザークラスパスからクラスファイルとソースファイルの両方を検索します。 +\-sourcepath ץ󤬻ꤵƤ硢ѥϡꤵ줿ѥ饽ե򸡺ޤʳξϡ桼饹ѥ饯饹եȥեξ򸡺ޤ .LP .LP -\f3\-bootclasspath\fP オプションと \f3\-extdirs\fP オプションを使うと、別のブートストラップクラスや拡張機能クラスを指定できます。 このあとの「クロスコンパイルオプション」を参照してください。 +\f3\-bootclasspath\fP ץ \f3\-extdirs\fP ץȤȡ̤Υ֡ȥȥåץ饹ĥǽ饹ǤޤΤȤΡ֥ѥ륪ץפ򻲾ȤƤ .LP .LP -型の検索に成功したときに得られる結果は、クラスファイル、ソースファイル、またはその両方である場合があります。両方が見つかった場合、そのどちらを使用すべきかを \-Xprefer オプションでコンパイラに指示できます。\f3newer\fP が指定された場合、コンパイラは 2 つのファイルの新しい方を使用します。\f3source\fP が指定された場合、コンパイラはソースファイルを使用します。デフォルトは \f3newer\fP です。 +θȤ̤ϡ饹ե롢ե롢ޤϤξǤ礬ޤξĤä硢ΤɤѤ٤ \-Xprefer ץǥѥ˻ؼǤޤ\f3newer\fP ꤵ줿硢ѥ 2 ĤΥեοѤޤ\f3source\fP ꤵ줿硢ѥϥեѤޤǥեȤ \f3newer\fP Ǥ .LP .LP -型の検索自体によって、または \f3\-Xprefer\fP が設定された結果として必要な型のソースファイルが見つかった場合、コンパイラはそのソースファイルを読み取り、必要な情報を取得します。さらに、コンパイラはデフォルトで、そのソースファイルのコンパイルも行います。\-implicit オプションを使えばその動作を指定できます。\f3none\fP を指定した場合、そのソースファイルのクラスファイルは生成されません。\f3class\fP を指定した場合、そのソースファイルのクラスファイルが生成されます。 +θΤˤäơޤ \f3\-Xprefer\fP ꤵ줿̤ȤɬפʷΥե뤬Ĥä硢ѥϤΥեɤ߼ꡢɬפʾޤˡѥϥǥեȤǡΥեΥѥԤޤ\-implicit ץȤФưǤޤ\f3none\fP ꤷ硢ΥեΥ饹եޤ\f3class\fP ꤷ硢ΥեΥ饹ե뤬ޤ .LP .LP -コンパイラは、注釈処理の完了後に、ある型情報の必要性を認識しない場合があります。その型情報があるソースファイル内に見つかり、かつ \f3\-implicit\fP オプションが指定されていない場合は、そのファイルが注釈処理の対象とならずにコンパイルされることを、コンパイラがユーザーに警告します。この警告を無効にするには、(そのファイルが注釈処理の対象となるように) そのファイルをコマンド行に指定するか、あるいはそのようなソースファイルに対してクラスファイルを生成すべきかどうかを \f3\-implicit\fP オプションを使って指定します。 +ѥϡδλˡ뷿ɬǧʤ礬ޤη󤬤륽ե˸Ĥꡢ \f3\-implicit\fP ץ󤬻ꤵƤʤϡΥե뤬оݤȤʤ餺˥ѥ뤵뤳Ȥ򡢥ѥ餬桼˷ٹ𤷤ޤηٹ̵ˤˤϡ(Υե뤬оݤȤʤ褦) Υե򥳥ޥɹԤ˻ꤹ뤫뤤ϤΤ褦ʥեФƥ饹ե٤ɤ \f3\-implicit\fP ץȤäƻꤷޤ .LP -.SH "プログラマティックインタフェース" -.LP - +.SH "ץޥƥå󥿥ե" .LP .LP -\f3javac\fP は、\f2javax.tools\fP パッケージ内のクラスとインタフェースによって定義される新しい Java Compiler API をサポートします。 +\f3javac\fP ϡ \f2javax.tools\fP ѥåΥ饹ȥ󥿥եˤä뿷 Java Compiler API 򥵥ݡȤޤ .LP .SS -例 + .LP .LP -コマンド行から指定された引数を使ってコンパイルを実行するには、次のようなコードを使用します。 +ޥɹԤꤵ줿Ȥäƥѥ¹ԤˤϡΤ褦ʥɤѤޤ .LP .nf \f3 @@ -595,29 +956,24 @@ .fl int rc = javac.run(null, null, null, args); .fl - -.fl \fP .fi .LP .LP -この場合、標準出力ストリームにすべての診断メッセージが書き出され、コマンド行から呼び出された \f3javac\fP が返すのと同じ終了コードが返されます。 +ξ硢ɸϥȥ꡼ˤ٤Ƥοǥå񤭽Ф졢ޥɹԤƤӽФ줿 \f3javac\fP ֤ΤƱλɤ֤ޤ .LP .LP -\f2javax.tools.JavaCompiler\fP インタフェース上のほかのメソッドを使えば、診断メッセージの処理やファイルの読み取り元/書き込み先の制御などを行えます。 +\f2javax.tools.JavaCompiler\fP 󥿥եΤۤΥ᥽åɤȤСǥåνեɤ߼긵/񤭹ʤɤԤޤ .LP .SS -旧式のインタフェース -.LP -.RS 3 - +켰Υ󥿥ե .LP .LP -\f3注:\fP \ この API は、下位互換性を確保するためだけに残されています。 新しいコードでは、必ず前述の Java Compiler API を使用してください。 +\f3:\fP API ϡ̸ߴݤ뤿˻ĤƤޤɤǤϡɬҤ Java Compiler API ѤƤ .LP .LP -\f2com.sun.tools.javac.Main\fP クラスには、プログラム内からコンパイラを呼び出すための static メソッドが 2 つ用意されています。 それらを次に示します。 +\f2com.sun.tools.javac.Main\fP 饹ˤϡץ⤫饳ѥƤӽФ static ᥽åɤ 2 ѰդƤޤ򼡤˼ޤ .LP .nf \f3 @@ -626,38 +982,29 @@ .fl public static int compile(String[] args, PrintWriter out); .fl - -.fl \fP .fi .LP .LP -\f2args\fP パラメータは、javac プログラムに通常渡される任意のコマンド行引数を表しています。 その概要については、前出の「形式」節を参照してください。 +\f2args\fP ѥ᡼ϡjavac ץ̾ϤǤդΥޥɹ԰ɽƤޤγפˤĤƤϡФΡַ򻲾ȤƤ .LP .LP -\f2out\fP パラメータは、コンパイラの診断メッセージの出力先を示します。 +\f2out\fP ѥ᡼ϡѥοǥåν򼨤ޤ .LP .LP -戻り値は、\f3javac\fP の終了値と同じです。 +ͤϡ\f3javac\fP νλͤƱǤ .LP .LP -名前が \f2com.sun.tools.javac\fP で始まるパッケージ (非公式には \f2com.sun.tools.javac\fP のサブパッケージとして知られる) に含まれる\f3その他の\fPクラスやメソッドは、どれも完全に内部用であり、いつでも変更される可能性があります。 +̾ \f2com.sun.tools.javac\fP ǻϤޤѥå (ˤ \f2com.sun.tools.javac\fP Υ֥ѥåȤΤ) ˴ޤޤ뤽¾Υ饹᥽åɤϡɤⴰѤǤꡢĤǤѹǽޤ .LP -.RE -.SH "例" +.SH "" .LP .SS -簡単なプログラムのコンパイル -.LP -.RS 3 - +ñʥץΥѥ .LP .LP -\f2Hello.java\fP というソースファイルで、\f3greetings.Hello\fP という名前のクラスを定義しているとします。\f2greetings\fP ディレクトリは、ソースファイルとクラスファイルの両方があるパッケージディレクトリで、現在のディレクトリのすぐ下にあります。このため、この例では、デフォルトのユーザークラスパスを使用できます。また、\f3\-d\fP を使って別の出力先ディレクトリを指定する必要もありません。 -.LP -.RS 3 - +\f2Hello.java\fP Ȥեǡ\f3greetings.Hello\fP Ȥ̾Υ饹ƤȤޤ \f2greetings\fP ǥ쥯ȥϡեȥ饹եξѥåǥ쥯ȥǡߤΥǥ쥯ȥΤˤޤΤᡢǤϡǥեȤΥ桼饹ѥѤǤޤޤ\f3\-d\fP Ȥä̤νǥ쥯ȥꤹɬפ⤢ޤ .LP .nf \f3 @@ -704,24 +1051,14 @@ .fl Hello Everyone .fl - -.fl .fi -.RE .LP -.RE .SS -複数のソースファイルのコンパイル -.LP -.RS 3 - +ʣΥեΥѥ .LP .LP -次の例では、パッケージ \f2greetings\fP 内のすべてのソースファイルをコンパイルします。 -.LP -.RS 3 - +Ǥϡѥå \f2greetings\fP Τ٤ƤΥե򥳥ѥ뤷ޤ .LP .nf \f3 @@ -742,26 +1079,14 @@ .fl Aloha.java GutenTag.java Hello.java Hi.java .fl - -.fl - -.fl .fi -.RE .LP -.RE .SS -ユーザークラスパスの指定 -.LP -.RS 3 - +桼饹ѥλ .LP .LP -上の例のソースファイルのうち 1 つを変更し、変更後のファイルを再コンパイルするとします。 -.LP -.RS 3 - +ΥեΤ 1 ĤѹѹΥեƥѥ뤹Ȥޤ .LP .nf \f3 @@ -772,34 +1097,22 @@ .fl % \f3javac greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -\f2greetings.Hi\fP は、\f2greetings\fP パッケージ内のほかのクラスを参照しているため、コンパイラはこれらのクラスを探す必要があります。上の例では、デフォルトのユーザークラスパスが、パッケージディレクトリを含むディレクトリと同じであるため、コンパイルは正常に実行されます。ただし、現在どのディレクトリにいるかに関係なく、このファイルを再コンパイルする場合は、ユーザークラスパスに \f2/examples\fP を追加する必要があります。ユーザークラスパスにエントリを追加するには、\f3CLASSPATH\fP を設定する方法もありますが、ここでは \f3\-classpath\fP オプションを使うことにします。 -.LP -.RS 3 - +\f2greetings.Hi\fP ϡ \f2greetings\fP ѥåΤۤΥ饹򻲾ȤƤ뤿ᡢѥϤΥ饹õɬפޤǤϡǥեȤΥ桼饹ѥѥåǥ쥯ȥޤǥ쥯ȥƱǤ뤿ᡢѥ˼¹ԤޤߤɤΥǥ쥯ȥˤ뤫˴طʤΥեƥѥ뤹ϡ桼饹ѥ \f2/examples\fP ɲäɬפޤ桼饹ѥ˥ȥɲäˤϡ\f3CLASSPATH\fP ꤹˡ⤢ޤǤ \f3\-classpath\fP ץȤȤˤޤ .LP .nf \f3 .fl % \fP\f3javac \-classpath /examples /examples/greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -再度 \f2greetings.Hi\fP を変更してバナーユーティリティーを使うようにした場合は、このバナーユーティリティーもユーザークラスパスを通じてアクセスできるようになっている必要があります。 -.LP -.RS 3 - + \f2greetings.Hi\fP ѹƥХʡ桼ƥƥȤ褦ˤϡΥХʡ桼ƥƥ桼饹ѥ̤ƥǤ褦ˤʤäƤɬפޤ .LP .nf \f3 @@ -808,41 +1121,25 @@ .fl /examples/greetings/Hi.java\fP .fl - -.fl .fi -.RE .LP .LP -\f2greetings\fP 内のクラスを実行するには、\f2greetings\fP と、\f2greetings\fP が使うクラスの両方にアクセスできる必要があります。 -.LP -.RS 3 - +\f2greetings\fP Υ饹¹Ԥˤϡ \f2greetings\fP ȡ줬Ȥ饹ξ˥Ǥɬפޤ .LP .nf \f3 .fl % \fP\f3java \-classpath /examples:/lib/Banners.jar greetings.Hi\fP .fl - -.fl .fi -.RE .LP -.RE .SS -ソースファイルとクラスファイルの分離 -.LP -.RS 3 - +եȥ饹եʬΥ .LP .LP -特に大規模プロジェクトの場合は、ソースファイルとクラスファイルを別々のディレクトリに置くと便利なことがあります。クラスファイルの出力先を別に指定するには、\f3\-d\fP を使います。ソースファイルはユーザークラスパスにはないので、\f3\-sourcepath\fP を使って、コンパイラがソースファイルを見つけることができるようにします。 -.LP -.RS 3 - +ä絬ϥץȤξϡեȥ饹ե̡Υǥ쥯ȥ֤ʤȤޤ饹եν̤˻ꤹˤϡ\f3\-d\fP Ȥޤեϥ桼饹ѥˤϤʤΤǡ\f3\-sourcepath\fP Ȥäơѥ餬ե򸫤Ĥ뤳ȤǤ褦ˤޤ .LP .nf \f3 @@ -877,83 +1174,78 @@ .fl Base.class GoodBye.class .fl - -.fl - -.fl .fi -.RE .LP .LP -\f3注:\fP \ コマンド行では \f2src/farewells/Base.java\fP を指定していませんが、このファイルもコンパイラによってコンパイルされています。自動コンパイルを監視するには、\f3\-verbose\fP オプションを使います。 +\f3:\fP ޥɹԤǤ \f2src/farewells/Base.java\fP ꤷƤޤ󤬡Υե⥳ѥˤäƥѥ뤵Ƥޤưѥƻ뤹ˤϡ\f3\-verbose\fP ץȤޤ .LP -.RE .SS -クロスコンパイルの例 -.LP -.RS 3 - +ѥ .LP .LP -ここでは、\f3javac\fP を使って、1.5 VM 上で実行するコードをコンパイルします。 -.LP -.RS 3 - +Ǥϡ\f3javac\fP Ȥäơ1.6 VM Ǽ¹Ԥ륳ɤ򥳥ѥ뤷ޤ .LP .nf \f3 .fl -% \fP\f3javac \-target 1.5 \-bootclasspath jdk1.5.0/lib/rt.jar \\ +% \fP\f3javac \-source 1.6 \-target 1.6 \-bootclasspath jdk1.6.0/lib/rt.jar \\ .fl \-extdirs "" OldCode.java\fP .fl - -.fl .fi -.RE .LP .LP -\f3\-target 1.5\fP オプションにより、1.5 VM と互換性のあるクラスファイルが生成されます。デフォルトでは、\f3javac\fP は JDK 6 用にコンパイルします。 +\f2\-source 1.6\fP ץˤꡢ \f2OldCode.java\fP ΥѥˤϥС 1.6 (ޤ 6) Java ץߥ󥰸줬Ѥޤ\f3\-target 1.6\fP ץˤꡢ1.6 VM ȸߴΤ륯饹ե뤬ޤۤȤɤξ硢\f3\-target\fP ץͤ \f3\-source\fP ץͤˤʤޤǤϡ\f3\-target\fP ץάǤޤ .LP .LP -Java プラットフォーム JDK の \f3javac\fP は、デフォルトでは、Java 2 SDK のブートストラップクラスに対してコンパイルを行うので、Java 2 SDK ではなく JDK 1.5 のブートストラップクラスに対してコンパイルを行うように指定する必要があります。これは、\f3\-bootclasspath\fP および \f3\-extdirs\fP を使って指定します。この指定を行わないと、1.5 VM には存在しない Java 2 プラットフォーム API に対応したコンパイルが行われるため、プログラムの実行時に障害が発生することがあります。 +\f3\-bootclasspath\fP ץѤơŬڤʥСΥ֡ȥȥåץ饹 ( \f2rt.jar\fP 饤֥) ꤹɬפޤꤷʤϡѥˤäƼηٹޤ .LP -.RE -.SH "関連項目" +.nf +\f3 +.fl +% \fP\f3javac \-source 1.6 OldCode.java\fP +.fl +warning: [options] bootstrap class path not set in conjunction with \-source 1.6 +.fl +.fi + .LP - +.LP +ŬڤʥСΥ֡ȥȥåץ饹ꤷʤ硢ѥϸŤ (ǤϡС 1.6 Java ץߥ󥰸) 򿷤֡ȥȥåץ饹Ȥ߹碌ƻѤޤη̡¸ߤʤ᥽åɤؤλȤޤޤƤ뤳Ȥ뤿ᡢ饹ե뤬Ťץåȥե (ξ Java SE 6) ưʤǽޤ +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2「The javac Guide」\fP @ +\f2The javac Guide\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javac/index.html .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jdb(1) \- Java デバッガ」 +jdb(1) \- Java ǥХå .TP 2 o -「javah(1) \- C ヘッダーとスタブファイルジェネレータ」 +javah(1) \- C إåȥ֥ե른ͥ졼 .TP 2 o -「javap(1) \- クラスファイル逆アセンブラ」 +javap(1) \- 饹եե֥ .TP 2 o -「javadoc(1) \- Java API ドキュメントジェネレータ」 +javadoc(1) \- Java API ɥȥͥ졼 .TP 2 o -「jar(1) \- JAR アーカイブツール」 +jar(1) \- JAR ֥ġ .TP 2 o .na -\f2「Java 拡張機能フレームワーク」\fP @ +\f2Java ĥǽե졼\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/extensions/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/javadoc.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/javadoc.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/javadoc.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,328 +19,244 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javadoc 1 "02 Jun 2010" -.SH "名前" -javadoc \- Java API ドキュメントジェネレータ -.RS 3 - -.LP -.LP -Java ソースファイルから、API ドキュメントの HTML ページを生成します。このドキュメントで紹介されている Javadoc の例は、Sun Solaris を使用した場合のものです。 -.LP -.RE -.SH "形式" -.LP +.TH javadoc 1 "14 Apr 2011" +.SH "̾" +javadoc \- Java API ɥȥͥ졼 +.LP +Java ե뤫顢API ɥȤ HTML ڡޤΥɥȤǾҲ𤵤Ƥ Javadoc ϡ Solaris ѤΤΤǤ +.SH "" .LP \f4javadoc\fP\f2\ [\ \fP\f2options\fP\f2\ ]\ [\ packagenames\ ]\ [\ sourcefilenames\ ]\ [\ \-subpackages\fP\ \f2pkg1:pkg2:...\fP\f2\ ]\ [\ \fP\f2@argfiles\fP\f2\ ]\fP .LP -.LP -引数を指定する順序は任意です。Javadoc ツールでの、処理対象の \f2.java\fP ファイルを決定する方法の詳細については、「ソースファイルの処理」を参照してください。 -.LP -.RS 3 - -.LP +ꤹǤդǤJavadoc ġǤΡоݤ .java եꤹˡξܺ٤ˤĤƤϡ֥եν\f2򻲾\fPƤ .RS 3 .TP 3 options -このドキュメントで説明されているコマンド行オプションです。Javadoc オプションの標準的な使用法については、「使用例」を参照してください。 +ΥɥȤƤ륳ޥɹԥץǤJavadoc ץɸŪʻˡˤĤƤϡֻפ򻲾ȤƤ .TP 3 packagenames -スペースで区切られた一連のパッケージ名です。 たとえば、\f2java.lang\ java.lang.reflect\ java.awt\fP のように指定します。ドキュメント化するパッケージを個別に指定する必要があります。ワイルドカードは使用不可です。 再帰的処理のためには、\-subpackages を使用します。Javadoc ツールは、\f2\-sourcepath\fP を使ってこれらのパッケージ名を検索します。「1 つ以上のパッケージのドキュメント化」の例を参照してください。 +ڡǶڤ줿ϢΥѥå̾ǤȤС \f2java.lang\ java.lang.reflect\ java.awt Τ褦˻ꤷޤ\fPɥȲѥå̤˻ꤹɬפޤ磻ɥɤϻԲĤǤƵŪΤˤϡ\-subpackages ѤޤJavadoc ġϡ\f2\-sourcepath\fP ѤƤΥѥå̾򸡺ޤ1 İʾΥѥåΥɥȲפ򻲾ȤƤ .TP 3 sourcefilenames -スペースで区切られた一連のソースファイル名です。各ファイルは、パスで始まります。アスタリスク (*) などのワイルドカードを含めることができます。 Javadoc ツールが処理するのは、ファイル名が「.java」という拡張子で終わり、その拡張子を除いた名前が実際に有効なクラス名であるすべてのファイルです ( +ڡǶڤ줿ϢΥե̾Ǥ ƥեϡѥǻϤޤޤꥹ (*) ʤɤΥ磻ɥɤޤ뤳ȤǤޤJavadoc ġ뤬Τϡե̾.javaפȤĥҤǽꡢγĥҤ̾ºݤͭʥ饹̾Ǥ뤹٤ƤΥեǤ ( .na -\f2「Identifiers」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625を参照)。したがって、ハイフンを含む名前 (\f2X\-Buffer\fP など) や、その他の無効な文字を含む名前を付けることによって、それらのファイルをドキュメント化の対象から除外できます。これは、テスト用のファイルや、テンプレートから生成されたファイルの場合に便利です。 ソースファイル名の前に指定したパスによって、javadoc がそのファイルを検索する場所が決まります。Javadoc ツールは、これらのソースファイル名を検索するときに \f2\-sourcepath\fP は使いません。相対パスは、現在のディレクトリからの相対パスです。 \f2Button.java\fP を渡すことは、\f2./Button.java\fP を渡すことと同じです。ソースファイル名をフルパスで指定すると、\f2/home/src/java/awt/Graphics*.java\fP のようになります。「1 つ以上のクラスのドキュメント化」の例を参照してください。また、「パッケージとクラスのドキュメント化」の例のように、パッケージ名とソースファイル名を混在させることもできます。 +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625򻲾)äơϥեޤ̾ ( \f2X\-Buffer\fP ʤ) 䡢¾̵ʸޤ̾դ뤳ȤˤäơΥեɥȲоݤǤޤϡƥѤΥե䡢ƥץ졼Ȥ줿եξǤե̾˻ꤷѥˤäơjavadoc Υե򸡺꤬ޤޤJavadoc ġϡΥե̾򸡺Ȥˤ \f2\-sourcepath\fP ѤޤХѥϸߤΥǥ쥯ȥȤ뤿ᡢ \f2Button.java\fP ϤȤϡ \f2./Button.java\fP ϤȤƱǤե̾եѥǻꤹȡ \f2/home/src/java/awt/Graphics*.java Τ褦ˤʤޤ\fP 1 İʾΥ饹ΥɥȲפ򻲾ȤƤޤ֥ѥåȥ饹ΥɥȲפΤ褦ˡѥå̾ȥե̾򺮺ߤ뤳ȤǤޤ .TP 3 \-subpackages pkg1:pkg2:... -ソースファイルから指定されたパッケージおよびそのサブパッケージ内に再帰的にドキュメントを生成します。パッケージ名またはソースファイル名を指定する必要はありません。 +ե뤫ꤵ줿ѥåӤΥ֥ѥå˺ƵŪ˥ɥȤޤѥå̾ޤϥե̾ꤹɬפϤޤ .TP 3 @argfiles -Javadoc オプション、パッケージ名、およびソースファイル名を任意の順序で並べたリストが含まれる 1 つ以上のファイルです。このファイルの中では、ワイルドカード (*) および \f2\-J\fP オプションは指定できません。 -.RE - -.LP +Javadoc ץ󡢥ѥå̾ӥե̾Ǥդν¤٤ꥹȤޤޤ 1 İʾΥեǤ磻ɥ (*) \f2\-J\fP ץϡΥեǤϻǤޤ .RE -.SH " 説明" -.LP -.LP -\f3Javadoc\fP ツールは、一連の Java ソースファイルにある宣言およびドキュメンテーションコメントを解析し、デフォルトでは public クラス、protected クラス、入れ子にされたクラス (匿名の内部クラスは除く)、インタフェース、コンストラクタ、メソッド、およびフィールドについて説明した一連の HTML ページを生成します。また、API (アプリケーションプログラミングインタフェース) ドキュメントの生成や、一連のソースファイルの実装ドキュメントの生成に使用できます。 -.LP -.LP -Javadoc ツールは、パッケージ全体、個々のソースファイル、またはその両方に対して実行できます。javadoc ツールをパッケージ全体に対して実行する場合は、最上位ディレクトリから再帰的にたどるために \f2\-subpackages\fP を使用するか、パッケージ名の明示的なリストを渡します。個々ソースファイルに対して javadoc を実行する場合は、一連のソース (\f2.java\fP) ファイル名を渡します。具体的な例は、このドキュメントの最後に紹介します。次に、Javadoc によるソースファイルの処理について説明します。 -.LP +.SH " " +.LP +\f3Javadoc\fP ġϡϢ Java եˤӥɥơ󥳥ȤϤǥեȤǤ public 饹protected 饹Ҥˤ줿饹 (ƿ̾饹Ͻ)󥿥ե󥹥ȥ饯᥽åɡӥեɤˤĤϢ HTML ڡޤޤAPI (ץꥱץߥ󥰥󥿥ե) ɥȤ䡢ϢΥեμɥȤ˻ѤǤޤ +.LP +Javadoc ġϡѥåΡġΥե롢ޤϤξФƼ¹ԤǤޤѥåΤΥɥȲԤˤϡ\f2\-subpackages\fP ѤƺǾ̥ǥ쥯ȥ꤫鲼˺ƵŪˤɤ뤫ѥå̾ŪʥꥹȤϤޤġեФ javadoc ¹ԤϡϢΥ (.\f2.java\fP) ե̾ϤޤŪϡΥɥȤκǸ˾Ҳ𤷤ޤˡJavadoc ˤ륽եνˤĤޤ .SS -ソースファイルの処理 -.LP -.LP -Javadoc ツールは、末尾に \f2.java\fP の付いたファイル以外に、ソースファイルで説明する他のファイルも処理します。個々のソースファイル名を明示的に渡すことによって Javadoc ツールを実行する場合、どの \f2.java\fP ファイルを処理するかを正確に指定できます。ただし、多くの開発者はこの方法では作業しません。 パッケージ名を渡すほうが簡単だからです。ソースファイル名を明示的に指定しなくても、Javadoc ツールは 3 つの方法で実行できます。この方法は、(1) パッケージ名を渡す、(2) \f2\-subpackages\fP を使用する、(3) ソースファイル名にワイルドカードを使用する (\f2*.java\fP) という方法です。これらの方法を使用する場合、Javadoc ツールは、\f2.java\fP ファイルが次のすべての要件を満たしている場合にかぎり、このファイルを処理します。 -.LP +եν +.LP +Javadoc ġϡ\f2.java\fPפΥեǤʤ֥եפ뤽¾ΥեޤġΥե̾ŪϤȤˤä Javadoc ġ¹Ԥ硢ɤ \f2.java\fP ե뤫Τ˻Ǥޤ¿γȯԤϤˡǤϺȤޤ󡣥ѥå̾ϤۤñǤե̾Ū˻ꤷʤƤ⡢Javadoc ġ 3 ĤˡǼ¹ԤǤޤˡȤϡ(1) ѥå̾Ϥ(2) \f2\-subpackages\fP Ѥ롢(3) ե̾ǥ磻ɥɤѤ (\f2*.java\fP) 3 ĤǤξ硢Javadoc ġ뤬\f2.java\fPץեνԤΤϡΥե뤬Τ٤Ƥ׷Ǥ .RS 3 .TP 2 o -名前から \f2.java\fP の接尾辞を取り除くと、実際に有効なクラス名になっている (有効な文字については、 +̾\f2.java\fPפȼºݤͭʥ饹̾ˤʤäƤ (ͭʸˤĤƤ .na -\f2「Identifiers」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625を参照) +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625򻲾) .TP 2 o -ソースツリーのルートから相対的なディレクトリパスが、区切り文字をドットに変換すると、実際に有効なパッケージ名になっている +ĥ꡼Υ롼ȤŪʥǥ쥯ȥѥڤʸɥåȤѴȡºݤͭʥѥå̾ˤʤäƤ .TP 2 o -パッケージ文には有効なパッケージ名が含まれる (前項目で指定) +ѥåʸˤͭʥѥå̾ޤޤ (ܤǻ) .RE - -.LP -.LP -\f3リンクの処理\fP \- Javadoc ツールは、処理の実行中に、その実行でドキュメント化されるパッケージ、クラス、およびメンバーの名前に対して、自動的に相互参照リンクを追加します。このようなリンクは、次のような場所に追加されます。 -.LP +.LP +\f3󥯤ν\fP \- Javadoc ġϡμ¹ˡμ¹ԤǥɥȲѥå饹ӥС̾ФơưŪ߻ȥ󥯤ɲäޤΤ褦ʥ󥯤ϡΤ褦ʾɲäޤ .RS 3 .TP 2 o -宣言 (戻り値の型、引数の型、フィールドの型) + (ͤηηեɤη) .TP 2 o -\f2@see\fP タグから生成された [関連項目] セクション +\f2@see\fP 줿 [Ϣ] .TP 2 o -\f2{@link}\fP タグから生成されたインラインテキスト +\f2{@link}\fP 줿饤ƥ .TP 2 o -\f2@throws\fP タグから生成された例外の名前 +\f2@throws\fP 줿㳰̾ .TP 2 o -"インタフェースのメンバーに対する [定義] リンクと、クラスのメンバーに対する [オーバーライド] リンク +󥿥եΥСФץ󥯤ȡ饹ΥСФ֥С饤ɡץ .TP 2 o -パッケージ、クラス、およびメンバーを列挙している概要テーブル +ѥå饹ӥС󤷤Ƥ복ץơ֥ .TP 2 o -パッケージおよびクラスの継承ツリー +ѥåӥ饹ηѾĥ꡼ .TP 2 o -索引 + .RE - -.LP -.LP -コマンド行で指定しなかったクラスについての既存のテキスト (別に生成したテキスト) に対してハイパーリンクを追加するには、\f2\-link\fP および \f2\-linkoffline\fP オプションを利用できます。 -.LP -.LP -\f3その他の処理についての詳細\fP \- Javadoc ツールは、実行するたびに 1 つの完全なドキュメントを作成します。 ドキュメントを追加生成することはできません。 つまり、Javadoc ツールの以前の実行結果を修正したり、その内容を直接組み入れたりすることはできません。ただし、前述のように、以前の実行結果に対してリンクを追加することはできます。 -.LP -.LP -実装上の理由から、Javadoc ツールは、処理を実行するために java コンパイラを必要とし、java コンパイラに依存しています。Javadoc ツールは \f2javac\fP の一部を呼び出すことにより、宣言をコンパイルし、メンバーの実装は無視します。Javadoc ツールは、クラス階層を含むクラスの豊富な内部表現とクラスの「使用」関係を構築し、その情報から HTML を生成します。さらに、Javadoc ツールは、ソースコードのドキュメンテーションコメントから、ユーザーの提供したドキュメントも取得します。 -.LP -.LP -Javadoc ツールは、メソッド本体のない純粋なスタブファイルである \f2.java\fP ソースファイルに対しても、実行することができます。したがって、API の作成時には、実装を記述する前の設計の早い段階で、ドキュメンテーションコメントを記述して javadoc ツールを実行できます。 -.LP -.LP -コンパイラに依存することによって、HTML 出力は、実際の実装に正確に対応します。 実際の実装は、明示的なソースコードにではなく、暗黙のソースコードに依存する場合があります。たとえば、Javadoc ツールは、\f2.class\fP ファイル内に存在するが、ソースコード内には存在しない +.LP +ޥɹԤǻꤷʤä饹ˤĤƤδ¸Υƥ (̤ƥ) Фƥϥѡ󥯤ɲäˤϡ\f2\-link\fP \f2\-linkoffline\fP ץѤǤޤ +.LP +\f3¾νˤĤƤξܺ\fP \- Javadoc ġϡ¹Ԥ뤿Ӥ 1 ĤδʥɥȤޤɥȤɲ뤳ȤϤǤޤ󡣤ĤޤꡢJavadoc ġΰμ¹Է̤ꡢƤľȤ줿ꤹ뤳ȤϤǤޤ󡣤ҤΤ褦ˡμ¹Է̤Фƥ󥯤ɲä뤳ȤϤǤޤ +.LP +ͳ顢Javadoc ġϡ¹Ԥ뤿 java ѥɬפȤjava ѥ˰¸ƤޤJavadoc ġϡ \f2javac\fP ΰƤӽФ򥳥ѥ뤷ޤСμ̵뤷ޤJavadoc ġϡ饹ؤޤ९饹˭٤ɽȥ饹Ρֻѡ״طۤξ󤫤 HTML ޤˡJavadoc ġϡɤΥɥơ󥳥Ȥ顢桼󶡤ɥȤޤ +.LP +ºݤˤϡJavadoc ġϡ᥽åΤʤʥ֥եǤ褦 \f2.java\fP եǤưޤäơAPI κˤϡ򵭽Ҥ߷פᤤʳǡɥơ󥳥Ȥ򵭽Ҥ javadoc ġ¹ԤǤޤ +.LP +ѥ˰¸뤳ȤˤäơHTML ϤϡºݤμΤбޤºݤμϡŪʥɤˤǤϤʤۤΥɤ˰¸礬ޤȤСJavadoc ġϡ.class եˤ¸ߤ뤬ɤˤ¸ߤʤ .na -\f2デフォルトコンストラクタ\fP @ +\f2ǥեȥ󥹥ȥ饯\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#36154 (Java 言語仕様のセクション 8.6.7) をドキュメント化します。 -.LP -.LP -通常、Javadoc ツールでは、ソースファイルのコードが不完全またはエラーを含んでいる場合でもドキュメントを生成できます。このため、デバッグやトラブルシューティングを完了する前にドキュメントを生成できます。たとえば、Java 言語仕様によると、抽象メソッドを含むクラスは、それ自体抽象として宣言されなければなりません。このエラーを検出すると、javac コンパイラは停止しますが、Javadoc ツールは警告を出さずに処理を続行します。Javadoc ツールはドキュメンテーションコメントの基本的なチェックを行います。ドキュメンテーションコメントをより詳しくチェックする必要がある場合は、DocCheck ドックレットを使用してください。 -.LP -.LP -Javadoc ツールは、ドキュメントの内部構造を構築する際、参照クラスをすべてロードします。このため、Javadoc ツールは、ブートストラップクラス、拡張機能、またはユーザークラスにかかわらず、すべての参照クラスを検索できなければなりません。詳細は、 +http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#36154 (Java ͤΥ 8.6.7) \f2ɥȲ\fP ޤ +.LP +̾Javadoc ġǤϡեΥɤԴޤϥ顼ޤǤǤɥȤǤޤΤᡢǥХåȥ֥륷塼ƥ󥰤λ˥ɥȤǤޤȤСJava ͤˤȡݥ᥽åɤޤ९饹ϡ켫ݤȤʤФʤޤ󡣤Υ顼򸡽Фȡjavac ѥߤޤJavadoc ġϷٹФ˽³ԤޤJavadoc ġϥɥơ󥳥ȤδŪʥåԤޤɥơ󥳥ȤܤåɬפϡDocCheck ɥååȤѤƤ +.LP +Javadoc ġϡɥȤ¤ۤݡȥ饹򤹤٤ƥɤޤΤᡢJavadoc ġϡ֡ȥȥåץ饹ĥǽޤϥ桼饹ˤ餺٤Ƥλȥ饹򸡺ǤʤФʤޤ󡣾ܺ٤ϡ .na -\f2「クラスの検索方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.htmlを参照してください。通常、作成するクラスは、拡張機能としてロードするか、Javadoc ツールのクラスパス内に置く必要があります。 -.LP +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html򻲾ȤƤ̾륯饹ϡĥǽȤƥɤ뤫Javadoc ġΥ饹ѥ֤ɬפޤ .SS -Javadoc のドックレット -.LP -.LP -Javadoc ツールの出力の内容と形式は、ドックレットを使ってカスタマイズできます。Javadoc ツールには、標準ドックレットと呼ばれるデフォルトの「組み込み」ドックレットがあります。 標準ドックレットは、HTML 形式の API ドキュメントを生成します。標準ドックレットを修正またはサブクラス化することや、HTML、XML、MIF、RTF などの好みの出力形式を生成する独自のドックレットを記述することも可能です。ドックレットとその使用法については、次の項目を参照してください。 -.LP +Javadoc Υɥåå +.LP +Javadoc ġνϤƤȷϡɥååȤȤäƥޥǤޤJavadoc ġˤϡɸɥååȤȸƤФǥեȤΡȤ߹ߡץɥååȤޤɸɥååȤϡHTML API ɥȤޤɸɥååȤޤϥ֥饹뤳Ȥ䡢HTMLXMLMIFRTF ʤɤιߤνϷȼΥɥååȤ򵭽Ҥ뤳ȤǽǤɥååȤȤλˡˤĤƤϡιܤ򻲾ȤƤ .RS 3 .TP 2 o .na -\f2Javadoc のドックレット\fP @ +\f2Javadoc Υɥåå\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html .TP 2 o -\f2\-doclet\fP コマンド行オプション +\f2\-doclet\fP ޥɹԥץ .RE - -.LP -.LP -\f2\-doclet\fP コマンド行オプションでカスタムドックレットが指定されていない場合、Javadoc ツールは、デフォルトの標準ドックレットを使用します。javadoc ツールには、使用されているドックレットに関係なく使用できるコマンド行オプションがあります。標準ドックレットでは、これらのほかに、いくつかのコマンド行オプションが追加されます。どちらのオプションについても、このあとの「オプション」で説明します。 -.LP +.LP +\f2\-doclet\fP ޥɹԥץǥɥååȤꤵƤʤ硢Javadoc ġϡǥեȤɸɥååȤѤޤjavadoc ġˤϡѤƤɥååȤ˴طʤѤǤ륳ޥɹԥץ󤬤ޤɸɥååȤǤϡΤۤˡĤΥޥɹԥץɲäޤɤΥץˤĤƤ⡢ΤȤΡ֥ץפޤ .SS -関連ドキュメントおよびドックレット -.LP +ϢɥȤӥɥåå .RS 3 .TP 2 o .na -\f2Javadoc に施された機能強化\fP @ +\f2Javadoc ˻ܤ줿ĥǽ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html \- Javadoc で追加された改良点の詳細 +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/index.html \- Javadoc 1.4 ɲä줿ξܺ .TP 2 o .na \f2Javadoc FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html \- 頻繁に寄せられる質問に対する回答、Javadoc 関連のツールについての情報、およびバグの回避方法 +http://java.sun.com/j2se/javadoc/faq/index.html \- ˤ˴󤻤ФJavadoc ϢΥġˤĤƤξ󡢤ӥХβˡ .TP 2 o .na \f2How to Write Doc Comments for Javadoc\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html \- ドキュメンテーションコメントの記述方法に関する Sun の規約 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html \- ɥơ󥳥Ȥεˡ˴ؤ Sun ε .TP 2 o .na \f2Requirements for Writing API Specifications\fP @ .fi -http://java.sun.com/j2se/javadoc/writingapispecs/index.html \- Java 2 プラットフォーム仕様を記述する際に使用された標準要件。この情報は、ソースファイルのドキュメンテーションコメント形式で API 仕様を記述する場合にも、その他の形式で記述する場合にも役立ちます。検証可能なアサーションを満たすパッケージ、クラス、インタフェース、フィールド、およびメソッドについての要件を定めています。 +http://java.sun.com/j2se/javadoc/writingapispecs/index.html \- Java SE ץåȥեͤ򵭽Ҥݤ˻Ѥ줿ɸ׷盧ξϡեΥɥơ󥳥ȷ API ͤ򵭽Ҥˤ⡢¾ηǵҤˤΩޤڲǽʥѥå饹󥿥եեɡӥ᥽åɤˤĤƤ׷Ƥޤ .TP 2 o .na -\f2ドキュメンテーションコメントの仕様\fP @ +\f2ɥơ󥳥Ȥλ\fP @ .fi -http://java.sun.com/docs/books/jls/first_edition/html/18.doc.html \- ドキュメンテーションコメントのオリジナル仕様については、『Java Language Specification』 (James Gosling、Bill Joy、Guy Steele 共著) の初版の第 18 章「Documentation Comments」を参照してください。この章は、第 2 版では削除されました。 +http://java.sun.com/docs/books/jls/first_edition/html/18.doc.html \- ɥơ󥳥ȤΥꥸʥͤˤĤƤϡJava Language Specification (James GoslingBill JoyGuy Steele ) νǤ 18 ϡDocumentation Commentsפ򻲾ȤƤξϤϡ 2 ǤǤϺޤ .TP 2 o .na -\f2DocCheck ドックレット\fP @ +\f2DocCheck ɥåå\fP @ .fi -http://java.sun.com/javadoc/doccheck \- ソースファイル内のドキュメンテーションコメントをチェックし、検出されたエラーや不正のレポートを生成します。Sun Doc Check ユーティリティーの一部です。Sun Doc Check ユーティリティーの一部です。 +http://java.sun.com/javadoc/doccheck \- եΥɥơ󥳥ȤåФ줿顼ΥݡȤޤDoc Check 桼ƥƥΰǤ .TP 2 o .na -\f2MIF ドックレット\fP @ +\f2MIF ɥåå\fP @ .fi -http://java.sun.com/javadoc/mifdoclet \- MIF、FrameMaker、PDF の書式で API ドキュメントを自動生成します。MIF は Adobe FrameMaker の交換書式です。 +http://java.sun.com/javadoc/mifdoclet \- MIFFrameMakerPDF ν񼰤 API ɥȤưޤMIF Adobe FrameMaker θ򴹽񼰤Ǥ .RE - -.LP .SS -用語 -.LP -.LP -\f2「ドキュメンテーションコメント」\fP、\f2「doc コメント」\fP、\f2「主説明」\fP、\f2「タグ」\fP、\f2「ブロックタグ」\fP、および\f2「インラインタグ」\fPの用語については、「ドキュメンテーションコメント」で説明します。次のその他の用語は、Javadoc ツールのコンテキストで特定の意味を持ちます。 -.LP +Ѹ +.LP +\f2֥ɥơ󥳥ȡ\fP\f2doc ȡ\fP\f2ּ\fP\f2֥\fP\f2֥֥å\fP\f2֥饤󥿥\fPѸˤĤƤϡ֥ɥơ󥳥ȡפޤʲΤ¾ѸϡJavadoc ġΥƥȤΰ̣ޤ .RS 3 .TP 3 -生成ドキュメント (generated document) -javadoc ツールが Java ソースコード内のドキュメンテーションコメントから生成したドキュメントのことです。デフォルトの生成ドキュメントは HTML 形式で、標準ドックレットによって作成されます。 +ɥ (generated document) +javadoc ġ뤬 Java Υɥơ󥳥ȤɥȤΤȤǤǥեȤɥȤ HTML ǡɸɥååȤˤäƺޤ .LP .TP 3 -名前 (name) -Java 言語で書かれたプログラム要素の名前、つまりパッケージ、クラス、インタフェース、フィールド、コンストラクタ、またはメソッドの名前のことです。名前は、\f2java.lang.String.equals(java.lang.Object)\fP のように完全修飾することも、\f2equals(Object)\fP のように部分修飾することもできます。 +̾ (name) +Java ǽ񤫤줿ץǤ̾Ĥޤѥå饹󥿥եեɡ󥹥ȥ饯ޤϥ᥽åɤ̾ΤȤǤ̾ϡ \f2java.lang.String.equals(java.lang.Object)\fP Τ褦ʴ̾ˤ뤳Ȥ⡢ \f2equals(Object)\fP Τ褦ʬ̾ˤ뤳ȤǤޤ .LP .TP 3 -ドキュメント化されるクラス (documented classes) -javadoc ツールの実行によって詳細なドキュメントが生成されるクラスおよびインタフェースのことです。ドキュメント化するには、ソースファイルが使用可能でなければならず、ソースファイル名またはパッケージ名を javadoc コマンドに渡され、アクセス修飾子 (public、protected、package\-private または private) によってフィルタ処理されないようにしなければなりません。ドキュメント化されるクラスは、javadoc ツールの出力に組み込まれるクラス、つまり「包含クラス」とも呼ばれます。 +ɥȲ륯饹 (documented classes) +javadoc ġμ¹Ԥˤäƾܺ٤ʥɥȤ륯饹ӥ󥿥եΤȤǤɥȲˤϡե뤬ѲǽǤʤФʤ餺ե̾ޤϥѥå̾ javadoc ޥɤϤ졢 (publicprotectedpackage\-private ޤ private) ˤäƥե륿ʤ褦ˤʤФʤޤ󡣥ɥȲ륯饹ϡjavadoc ġνϤȤ߹ޤ륯饹Ĥޤޥ饹פȤƤФޤ .LP .TP 3 -包含クラス (included classes) -ツールの実行によって詳細なドキュメントが生成されるクラスおよびインタフェースのことです。「ドキュメント化されるクラス」 と同じ。 +ޥ饹 (included classes) +ġμ¹Ԥˤäƾܺ٤ʥɥȤ륯饹ӥ󥿥եΤȤǤ֥ɥȲ륯饹פƱ .LP .TP 3 -除外クラス (excluded classes) -ツールの実行によって詳細なドキュメントが生成されないクラスおよびインタフェースのことです。 +饹 (excluded classes) +ġμ¹Ԥˤäƾܺ٤ʥɥȤʤ饹ӥ󥿥եΤȤǤ .LP .TP 3 -参照クラス (referenced classes) -ドキュメント化されるクラスおよびインタフェースの定義 (実装) またはドキュメンテーションコメントの中で明示的に参照されているクラスおよびインタフェースのことです。参照の例としては、戻り値の型、パラメータの型、キャストの型、拡張されたクラス、実装されたインタフェース、インポートされたクラス、メソッド本体で使用されるクラス、@see、{@link}、{@linkplain}、{@inheritDoc} タグなどがあります。この定義は +ȥ饹 (referenced classes) +ɥȲ륯饹ӥ󥿥ե () ޤϥɥơ󥳥ȤŪ˻ȤƤ륯饹ӥ󥿥եΤȤǤȤȤƤϡͤηѥ᡼η㥹Ȥηĥ줿饹줿󥿥եݡȤ줿饹᥽åΤǻѤ륯饹@see{@link}{@linkplain}{@inheritDoc} ʤɤޤ .na \f21.3\fP @ .fi -http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/javadoc.html#referencedclasses から変更されています。javadoc ツールを実行するときは、Javadoc のブートクラスパスおよびクラスパス内にあるすべての参照クラスをメモリーにロードする必要があります。参照クラスが見つからない場合は、「クラスが見つかりません」という警告が表示されます。Javadoc ツールは、クラスの存在とそのメンバーの完全指定の名前を判別するのに必要なすべての情報を、.class ファイルから引き出すことができます。 +http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/javadoc.html#referencedclasses ѹƤޤjavadoc ġ¹ԤȤϡJavadoc Υ֡ȥ饹ѥӥ饹ѥˤ뤹٤Ƥλȥ饹꡼˥ɤɬפޤȥ饹Ĥʤϡ֥饹ĤޤפȤٹɽޤJavadoc ġϡ饹¸ߤȤΥСδ̾Ƚ̤Τɬפʤ٤Ƥξ.class ե뤫ФȤǤޤ .LP .TP 3 -外部参照クラス (external referenced classes) -参照クラスのうち、javadoc ツールの実行中にドキュメントが生成されないクラスのことです。つまり、これらのクラスは、コマンド行で Javadoc ツールに渡されていません。生成ドキュメント内でこれらのクラスにリンクしている箇所は、「外部参照」または「外部リンク」と呼ばれます。たとえば、\f2java.awt\fP パッケージに対してだけ Javadoc ツールを実行した場合、\f2Object\fP などの \f2java.lang\fP 内のすべてのクラスが外部参照クラスになります。外部参照クラスにリンクするには、\f2\-link\fP および \f2\-linkoffline\fP オプションを使用します。外部参照クラスには、通常そのソースコメントを javadoc ツールの実行で利用できないという重要な特徴があります。この場合、それらのコメントを継承することはできません。 +ȥ饹 (external referenced classes) +ȥ饹Τjavadoc ġμ¹˥ɥȤʤ饹ΤȤǤĤޤꡢΥ饹ϡޥɹԤ Javadoc ġϤƤޤɥǤΥ饹˥󥯤Ƥսϡֳȡפޤϡֳ󥯡פȸƤФޤȤСJavadoc ġμ¹оݤ \f2java.awt\fP ѥåΤߤǤ硢 \f2java.lang\fP Τ٤ƤΥ饹 ( \f2Object\fPʤ) ȥ饹ˤʤޤȥ饹˥󥯤ˤϡ \f2\-link\fP \f2\-linkoffline\fP ץѤޤȥ饹ˤϡ̾綠ΥȤ javadoc ġμ¹ԤѤǤʤȤפħޤξ硢ΥȤѾ뤳ȤϤǤޤ .RE - -.LP -.SH "ソースファイル" -.LP -.LP -Javadoc ツールは、4 種類の異なるソースファイルから出力結果を生成します。そのファイルは、クラスの Java 言語ソースファイル (\f2.java\fP)、パッケージコメントファイル、概要コメントファイル、およびその他の処理されないファイルです。また、ドキュメント化しないがソースツリーに存在する場合があるテストファイルやテンプレートファイルについても説明します。 -.LP +.SH "ե" +.LP +Javadoc ġ 4 ΰۤʤ֥ץե뤫Ϥޤ 4 Ȥϡ饹 Java 쥽ե (\f2.java\fP)ѥåȥե롢ץȥե롢Ӥ¾νʤեǤޤɥȲʤĥ꡼¸ߤ礬ƥȥեƥץ졼ȥեˤĤƤޤ .SS -クラスソースコードファイル -.LP -.LP -それぞれのクラスまたはインタフェース、およびそのメンバーは、独自のドキュメンテーションコメントを持つことができ、それを \f2.java\fP ファイル内に保持します。ドキュメンテーションコメントの詳細は、「ドキュメンテーションコメント」を参照してください。 -.LP +饹ɥե +.LP +줾Υ饹ޤϥ󥿥եӤΥСϡȼΥɥơ󥳥ȤĤȤǤ \f2.java\fP եݻޤɥơ󥳥Ȥξܺ٤ϡ֥ɥơ󥳥ȡפ򻲾ȤƤ .SS -パッケージコメントファイル -.LP -.LP -それぞれのパッケージは、独自のドキュメンテーションコメントを持つことができ、それを専用の「ソース」ファイルに保持します。 その内容は、Javadoc ツールによって生成される概要ページに組み込まれます。このコメントには、通常、そのパッケージ全体に当てはまるドキュメントを記述します。 -.LP -.LP -パッケージコメントファイルを作成する場合、コメントの格納先として、次の 2 つのファイルのいずれかを選択できます。 -.LP +ѥåȥե +.LP +줾ΥѥåϡȼΥɥơ󥳥ȤĤȤǤѤΡ֥ץեݻޤƤϡJavadoc ġˤä복ץڡȤ߹ޤޤΥȤˤϡ̾ΥѥåΤƤϤޤɥȤ򵭽Ҥޤ +.LP +ѥåȥե硢ȤγǼȤơ 2 ĤΥեΤ줫Ǥޤ .RS 3 .TP 2 o -\f2package\-info.java\fP \- パッケージ宣言、パッケージ注釈、パッケージコメント、および Javadoc タグを格納できます。このファイルは JDK 5.0 で導入されたものであり、package.html よりも推奨されています。 +\f2package\-info.java\fP \- ѥåѥåᡢѥåȡ Javadoc ǼǤޤΥեϰ̤ˡpackage.html 侩ޤ .TP 2 o -\f2package.html\fP \- 格納できるのはパッケージコメントと Javadoc タグだけです。 パッケージ注釈は格納できません。 +\f2package.html\fP \- ǼǤΤϥѥåȤ Javadoc ǤѥåϳǼǤޤ .RE - -.LP -.LP -各パッケージは、単一の \f2package.html\fP ファイル、単一の \f2package\-info.java\fP ファイルのいずれかを持つことができますが、両方を持つことはできません。このどちらかのファイルを \f2.java\fP ファイルとともに、ソースツリー内のそのパッケージのディレクトリ内に配置してください。 -.LP -.LP -\f4package\-info.java\fP \- このファイルには、次の構造のパッケージコメントを格納できます。 コメントはパッケージ宣言の前に配置します。 -.LP -.LP -File:\f2java/applet/package\-info.java\fP -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 +.LP +ƥѥåǤϡñ \f2package.html\fP ե롢ñ \f2package\-info.java\fP եΤ줫Ǥޤξ򤹤뤳ȤϤǤޤ󡣤Τɤ餫Υե \f2.java\fP եȤȤˡĥ꡼ΤΥѥåΥǥ쥯ȥ֤Ƥ +.LP +\f4package\-info.java\fP \- Υեˤϡι¤ΥѥåȤǼǤޤ Ȥϥѥå֤ޤ +.LP +File: \f2java/applet/package\-info.java\fP .nf \f3 .fl /** .fl - * Provides the classes necessary to create an + * Provides the classes necessary to create an .fl * applet and the classes an applet uses .fl @@ -372,285 +288,91 @@ .fl \fP .fi -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 352 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-42 - -.LP -.LP -コメント区切り文字の \f2/**\fP と \f2/*\fP は記述する必要がありますが、中間行の行頭のアスタリスクは省略してもかまいません。 -.LP -.LP -\f4package.html\fP \- このファイルには、次の構造のパッケージコメントを格納できます。 コメントは \f2<body>\fP 要素内に配置します。 -.LP -.LP -File:\f2java/applet/package.html\fP -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 +.LP +ȶڤʸ \f2/**\fP \f2/*\fP ¸ߤƤɬפޤֹԤιƬΥꥹϾάƤ⤫ޤޤ +.LP +\f4package.html\fP \- Υեˤϡι¤ΥѥåȤǼǤޤȤ \f2<body>\fP ֤ޤ +.LP +File: \f2java/applet/package.html\fP .nf \f3 .fl -<HTML> -.fl -<BODY> -.fl -Provides the classes necessary to create an applet and the -.fl -classes an applet uses to communicate with its applet context. -.fl -<p> +<HTML> <BODY> Provides the classes necessary to create an applet and the classes an applet uses to communicate with its applet context.<p> .fl The applet framework involves two entities: the applet .fl -and the applet context. An applet is an embeddable -.fl -window (see the {@link java.awt.Panel} class) with a -.fl -few extra methods that the applet context can use to -.fl -initialize, start, and stop the applet. -.fl - -.fl -@since 1.0 -.fl -@see java.awt -.fl -</BODY> -.fl -</HTML> +and the applet context. An applet is an embeddable window (see the {@link java.awt.Panel} class) with a few extra methods that the applet context can use to initialize, start, and stop the applet.@since 1.0 @see java.awt </BODY> </HTML> .fl \fP .fi -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 405 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-40 - -.LP -.LP -これは単なる通常の HTML ファイルであり、パッケージ宣言を含んでいない点に注意してください。パッケージコメントファイルの内容は、ほかのすべてのコメントと同様に HTML で記述されています。それは、このドキュメンテーションコメントには、コメント区切り文字である \f2/**\fP と \f2*/\fP、および行頭のアスタリスクを含めてはならない、ということです。コメントを書く場合は、最初の文をパッケージの概要とし、\f2<body>\fP と最初の文の間にタイトルやその他のテキストを含めないようにします。パッケージタグを含めることはできますが、ほかのドキュメンテーションコメントと同様、すべてのブロックタグは、主説明のあとに置かなければなりません。パッケージコメントファイルに \f2@see\fP タグを追加する場合は、完全指定の名前を使用する必要があります。詳細は、 +.LP +ñʤ̾ HTML եǤꡢѥåޤǤʤդƤѥåȥեƤϡۤΤ٤ƤΥȤƱͤ HTML ǵҤޤ1 Ĥ㳰ޤϡΥɥơ󥳥Ȥˤϡȶڤʸ Ǥ \f2/**\fP \f2*/\fP ӹƬΥꥹޤƤϤʤʤȤǤȤ񤯾ϡǽʸѥåγפȤ \f2<body>\fP Ⱥǽʸδ֤˥ȥ䤽¾ΥƥȤޤʤ褦ˤޤѥåޤ뤳ȤϤǤޤۤΥɥơ󥳥ȤƱ͡٤ƤΥ֥åϡΤȤ֤ʤФʤޤ \f2@see\fP ѥåȥեɲäˤϡ̾Ѥɬפޤܺ٤ϡ .na -\f2package.html\fP の例 @ +\f2package.html\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#packagecommentsを参照してください。 -.LP -.LP -\f3パッケージコメントファイルの処理\fP \- Javadoc ツールは、実行時にパッケージコメントファイルを自動的に検索し、このファイルを見つけると次の処理を行います。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#packagecomments򻲾ȤƤ +.LP +\f3ѥåȥեν\fP \- Javadoc ġϡ¹Ի˥ѥåȥեưŪ˸Υե򸫤ĤȼνԤޤ .RS 3 .TP 2 o -処理できるようにコメントをコピーする (\f2package.html\fP の場合であれば、\f2<body>\fP と \f2</body>\fP HTML タグの間にある内容をすべてコピーする。\f2<head>\fP を含め、そこに \f2<title>\fP やソースファイルの著作権記述などの情報を配置することもできるが、生成後のドキュメンテーションにはそれらは一切表示されない) +Ǥ褦˥Ȥ򥳥ԡ( \f2package.html\fP ξǤС \f2<body>\fP \f2</body>\fP HTML δ֤ˤƤ򤹤٤ƥԡ롣 \f2<head>\fP ޤᡢ \f2<title>\fP 䥽եҤʤɤξ֤뤳ȤǤ뤬ΥɥơˤϤϰɽʤ) .TP 2 o -パッケージタグがあれば、すべて処理する +ѥåС٤ƽ .TP 2 o -生成したパッケージの概要ページの最後に、処理したテキストを挿入する (例: +ѥåγץڡκǸˡƥȤ (: .na -\f2パッケージの概要\fP @ +\f2ѥåγ\fP @ .fi http://java.sun.com/javase/6/docs/api/java/applet/package\-summary.html) .TP 2 o -パッケージの概要ページの先頭に、パッケージコメントの最初の文をコピーする。さらに、概要ページのパッケージリストに、パッケージ名とパッケージコメントの最初の文を追加する (例: +ѥåγץڡƬˡѥåȤκǽʸ򥳥ԡ롣ˡץڡΥѥåꥹȤˡѥå̾ȥѥåȤκǽʸɲä (: .na -\f2概要の要約\fP @ +\f2פ\fP @ .fi -http://java.sun.com/javase/6/docs/api/overview\-summary.html)。文の末尾は、クラスやメンバーの主説明の最初の文の末尾と同じ規則によって判断される +http://java.sun.com/javase/6/docs/api/overview\-summary.html)ʸϡ饹СμκǽʸƱ§ˤäȽǤ .RE - -.LP .SS -概要コメントファイル -.LP -.LP -ドキュメント化する各アプリケーションまたはパッケージセットは、独自の概要ドキュメンテーションコメントを持つことができ、それは専用の「ソース」ファイルに保持されます。 その内容は、Javadoc ツールによって生成される概要ページに組み込まれます。このコメントには、通常、アプリケーションまたはパッケージセット全体に当てはまるドキュメントを記述します。 -.LP -.LP -概要コメントファイルを作成する場合は、ファイルに任意の名前を付け、任意の場所に置くことができます。ただし、通常は、ファイル名を \f4overview.html\fP にして、ソースツリーの最上位レベルに置きます。たとえば、\f2java.applet\fP パッケージのソースファイルが \f2/home/user/src/java/applet\fP ディレクトリに含まれている場合は、\f2/home/user/src/overview.html\fP に概要コメントファイルを作成できます。 -.LP -.LP -異なるパッケージのセットに対して javadoc を複数回実行する場合は、同じ 1 つのソースファイルのセットに対して複数の概要コメントファイルを作成できます。たとえば、内部ドキュメンテーション用に \-private を指定して javadoc を 1 回実行したあと、公開ドキュメンテーション用にそのオプションを指定しないで再度実行することができます。この場合、各概要コメントファイルの 1 文目で、そのドキュメンテーションを公開用または内部用として記述できます。 -.LP -.LP -概要コメントファイルの内容は、前述のパッケージコメントファイルと同様、HTML で記述された 1 つの大きなドキュメンテーションコメントです。詳細は、前述の説明を参照してください。要点を繰り返すと、このコメントを記述する場合は、最初の文をアプリケーションまたはパッケージセットの要約とし、\f2<body>\fP と最初の文の間にタイトルその他のテキストを含めないようにします。概要タグを含めることができます。 どのドキュメンテーションコメントについても、インラインタグ (\f2{@link}\fP など) 以外のすべてのタグは、主説明のあとに置く必要があります。\f2@see\fP タグを追加する場合は、完全指定の名前を使用しなければなりません。 -.LP -.LP -Javadoc ツールの実行時に、\-overview オプションを使って概要コメントファイル名を指定します。このファイルは、パッケージコメントファイルと同じように処理されます。 -.LP +ץȥե +.LP +ɥȲƥץꥱޤϥѥååȤϡȼγץɥơ󥳥ȤĤȤǤѤΡ֥ץեݻޤƤϡJavadoc ġˤä복ץڡȤ߹ޤޤΥȤˤϡ̾ץꥱޤϥѥååΤƤϤޤɥȤ򵭽Ҥޤ +.LP +ץȥեˤϡեǤդ̾ (̾ \f4overview.html\fP) դǤդξ (̾ϥĥ꡼κǾ) ֤ǤޤȤС \f2java.applet\fP ѥåΥե뤬 \f2/home/user/src/java/applet\fP ǥ쥯ȥ˳ǼƤСץȥե \f2/home/user/src/overview.html ˺Ǥޤ\fP +.LP +ۤʤѥåΥåȤФ javadoc ʣ¹ԤϡƱ 1 ĤΥեΥåȤФʣγץȥեǤޤȤСɥơѤ \-private ꤷ javadoc 1 ¹ԤȡɥơѤˤΥץꤷʤǺټ¹Ԥ뤳ȤǤޤξ硢Ƴץȥե 1 ʸܤǡΥɥơѤޤѤȤƵҤǤޤ +.LP +ץȥեƤϡҤΥѥåȥեƱ͡HTML ǵҤ줿 1 Ĥ礭ʥɥơ󥳥ȤǤܺ٤ϡҤ򻲾ȤƤ򷫤֤ȡΥȤ򵭽Ҥϡǽʸ򥢥ץꥱޤϥѥååȤȤ \f2<body>\fP Ⱥǽʸδ֤˥ȥ뤽¾ΥƥȤޤʤ褦ˤޤץޤ뤳ȤǤޤۤΥɥơ󥳥ȤƱ \f2{@link}\fP ʤɤΥ饤󥿥٤ƤΥϡΤȤ֤ɬפޤ \f2@see\fP ɲäˤϡ̾Ѥɬפޤ +.LP +Javadoc ġμ¹Իˡ\-overview ץȤäƳץȥե̾ꤷޤΥեϡѥåȥեƱ褦˽ޤ .RS 3 .TP 2 o -\f2<body>\fP タグと \f2</body>\fP タグの間にあるすべての内容を処理のためにコピーする +\f2<body>\fP \f2</body>\fP δ֤ˤ뤹٤ƤƤоݤȤƥԡ .TP 2 o -概要タグがあればすべて処理する +ץС٤ƽ .TP 2 o -生成した概要ページの最後に、処理したテキストを挿入する (例: +ץڡκǸˡƥȤ (: .na -\f2概要の要約\fP @ +\f2פ\fP @ .fi http://java.sun.com/javase/6/docs/api/overview\-summary.html) .TP 2 o -概要ページの先頭に、概要コメントの最初の文をコピーする +ץڡƬˡץȤκǽʸ򥳥ԡ .RE - -.LP .SS -その他の未処理のファイル -.LP -.LP -ソースには、Javadoc ツールによって生成先のディレクトリにコピーされる、その他の任意のファイルを含めることができます。一般に、このようなファイルには、グラフィックファイル、サンプルの Java ソース (.java) およびクラス (.class) ファイル、内容が通常の Java ソースファイルのドキュメンテーションコメントの影響を受けない独立した HTML ファイルなどがあります。 -.LP -.LP -未処理のファイルをソースに含めるには、それらのファイルを \f4doc\-files\fP というディレクトリに置きます。 このディレクトリは、ソースファイルがある任意のパッケージディレクトリの下に作成できます。このようなサブディレクトリは、パッケージごとに 1 つ用意できます。イメージ、サンプルコード、ソースファイル、.class ファイル、アプレット、および HTML ファイルをこのディレクトリに格納できます。たとえば、ボタンのイメージ \f2button.gif\fP を \f2java.awt.Button\fP クラスのドキュメントに含める場合は、そのファイルを \f2/home/user/src/java/awt/doc\-files/\fP ディレクトリに置きます。\f2doc\-files\fP ディレクトリを \f2/home/user/src/java/doc\-files\fP に置くことはできません。 これは、\f2java\fP はパッケージではなく、そのディレクトリそのものにソースファイルが入っていないからです。 -.LP -.LP -これらの未処理のファイルへのリンクは、すべて明示的に記述する必要があります。 これは、Javadoc ツールがそれらのファイルを見ずに、単にディレクトリとその内容を生成先にコピーするだけだからです。たとえば、\f2Button.java\fP のドキュメンテーションコメント内のリンクは、次のようになります。 -.LP +¾̤Υե +.LP +ˤϡJavadoc ġˤäΥǥ쥯ȥ˥ԡ롢¾ǤդΥեޤ뤳ȤǤޤ̤ˡΤ褦ʥեˤϡեåե롢ץ Java (.java) ӥ饹 (.class) ե롢Ƥ̾ Java եΥɥơ󥳥ȤαƶʤΩ HTML եʤɤޤ +.LP +ʤեޤˤϡ\f4doc\-files\fP Ȥ̾Υǥ쥯ȥˤΥե֤ޤΥǥ쥯ȥϡե뤬Ǽ줿ǤդΥѥåǥ쥯ȥΥ֥ǥ쥯ȥˤޤΤ褦ʥ֥ǥ쥯ȥϡѥåȤ 1 ѰդǤޤ᡼ץ륳ɡե롢.class ե롢ץåȡ HTML ե򤳤Υǥ쥯ȥ˳ǼǤޤȤСܥβ \f2button.gif\fP \f2java.awt.Button\fP 饹Υɥơ˴ޤˤϡΥե \f2/home/user/src/java/awt/doc\-files/\fP ǥ쥯ȥ֤ޤʤ \f2doc\-files\fP ǥ쥯ȥ \f2/home/user/src/java/doc\-files\fP ֤뤳ȤϤǤޤ󡣤ʤʤ顢 \f2java\fP ϥѥåǤϤʤǤĤޤꡢjava ľܴޤޤƤ륽ե 1 Ĥ¸ߤƤޤ +.LP +̤ΥեؤΥ󥯤ϡ٤Ū˵ҤɬפޤϡJavadoc ġ뤬Υե򸫤ˡñ˥ǥ쥯ȥȤƤ˥ԡǤȤС \f2Button.java\fP Υɥơ󥳥Υ󥯤ϡΤ褦ˤʤޤ .nf \f3 .fl @@ -664,23 +386,16 @@ .fl \fP .fi - -.LP .SS -テストファイルおよびテンプレートファイル -.LP -.LP -一部の開発者から、テストファイルおよびテンプレートファイルを対応するソースファイルの近くのソースツリーに保存したいという要望がありました。つまり、これらのソースファイルと同じディレクトリまたはサブディレクトリに保存したいということです。 -.LP -.LP -個別のソースファイル名で明示的に渡して Javadoc ツールを実行する場合は、テストファイルおよびテンプレートファイルを意図的に除外して、処理されないようにすることができます。ただし、パッケージ名またはワイルドカードで渡す場合は、以下のルールに従って、これらのテストファイルおよびテンプレートファイルが処理されないようにする必要があります。 -.LP -.LP -テストファイルとテンプレートファイルの違いは、テストファイルは、正当でコンパイル可能なソースファイルであるのに対して、テンプレートファイルは、そうではないという点です。 ただし、テンプレートファイルも「.java」で終わることができます。 -.LP -.LP -\f3テストファイル\fP \- 開発者の多くは、あるパッケージのコンパイル可能で実行可能なテストファイルをそのパッケージのソースファイルと同じディレクトリに配置したいと考えています。しかしテストファイルは、名前なしパッケージなど、ソースファイルパッケージとは別のパッケージに属させたいとも考えています (そのため、テストファイルには package ステートメントがないか、またはソースとは別の package ステートメントがある)。このような状況では、コマンド行で指定されているソースのパッケージ名を指定してそのソースがドキュメント化されているときに、テストファイルは警告またはエラーを引き起こします。そのようなテストファイルはサブディレクトリに配置する必要があります。\f2com.package1\fP に追加する場合は、それらのテストファイルを、ハイフンが含まれるためパッケージ名としては無効になるサブディレクトリに配置します。 -.LP +ƥȥե뤪ӥƥץ졼ȥե +.LP +γȯԤ顢ƥȥե뤪ӥƥץ졼ȥեб륽եζ᤯Υĥ꡼¸Ȥ˾ޤĤޤꡢΥեƱǥ쥯ȥޤϥ֥ǥ쥯ȥ¸ȤȤǤ +.LP +̤Υե̾ŪϤ Javadoc ġ¹Ԥϡƥȥե뤪ӥƥץ졼ȥետŪ˽ơʤ褦ˤ뤳ȤǤޤѥå̾ޤϥ磻ɥɤϤϡʲΥ롼˽äơΥƥȥե뤪ӥƥץ졼ȥե뤬ʤ褦ˤɬפޤ +.LP +ƥȥեȥƥץ졼ȥեΰ㤤ϡƥȥեϡǥѥǽʥեǤΤФơƥץ졼ȥեϡǤϤʤȤǤƥץ졼ȥե.javaפǽ뤳ȤǤޤ +.LP +\f3ƥȥե\fP \- ȯԤ¿ϡѥåΥѥǽǼ¹Բǽʥƥȥե򤽤ΥѥåΥեƱǥ쥯ȥ֤ȹͤƤޤƥȥեϡ̾ʤѥåʤɡեѥåȤ̤Υѥå°ȤͤƤޤ (Τᡢƥȥեˤ package ơȥȤʤޤϥȤ̤ package ơȥȤ)Τ褦ʾǤϡޥɹԤǻꤵƤ륽Υѥå̾ꤷƤΥɥȲƤȤˡƥȥեϷٹޤϥ顼ޤΤ褦ʥƥȥեϥ֥ǥ쥯ȥ֤ɬפޤȤС \f2com.package1\fP ΥեФƥȥեɲäϼΤ褦ˡϥեޤǤ뤿˥ѥå̾ȤƤ̵Ǥ褦ʥ֥ǥ쥯ȥˡΥե֤ޤ .nf \f3 .fl @@ -688,248 +403,189 @@ .fl \fP .fi - -.LP -.LP -こうすると、Javadoc ツールでは警告なしで test ディレクトリをスキップします。 -.LP -.LP -テストファイルに doc コメントが含まれる場合、次のようにワイルドカードを含んだテストソースファイル名で渡してテストファイルのドキュメントを生成するように、Javadoc ツールを別個に実行できるように設定できます。 たとえば、\f2com/package1/test\-files/*.java\fP などです。 -.LP -.LP -\f3ソースファイルのテンプレート\fP \- テンプレートファイルの名前は「.java」で終わることもありますが、テンプレートファイルはコンパイルできません。ソースディレクトリに保持したいソースファイルのテンプレートがある場合は、このファイル名にハイフン (\f2Buffer\-Template.java\fP など) やその他の不正な Java 文字を使用します。 こうすることで、処理されないようになります。これは、Javadoc ツールが処理するのは、「.java」接尾辞を除いた名前が 正規のクラス名であるソースファイルだけであるためです ( +.LP +ȡJavadoc ġǤϷٹʤ test ǥ쥯ȥ򥹥åפޤ +.LP +ƥȥե doc Ȥޤޤ硢Τ褦˥磻ɥɤޤƥȥե̾ϤƥƥȥեΥɥȤ褦ˡJavadoc ġ̸Ĥ˼¹ԤǤ褦ǤޤȤС \f2com/package1/test\-files/*.java ʤɤǤ\fP +.LP +\f3եΥƥץ졼\fP \- ƥץ졼ȥե̾ϡ.javaפǽ뤳Ȥ⤢ޤƥץ졼ȥեϥѥǤޤ󡣥ǥ쥯ȥݻեΥƥץ졼Ȥϡ \f2Buffer\-Template.java\fP Τ褦˥ϥե䤽¾̵ Java ʸ̾˴ޤ뤳Ȥǡƥץ졼Ȥʤ褦ˤޤϡJavadoc ġ뤬Τϡ.java̾ Υ饹̾Ǥ륽եǤ뤿Ǥ ( .na -\f2「識別子」\fP @ +\f2Identifiers\fP @ .fi -http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625参照)。 -.LP -.SH "生成されるファイル" -.LP -.LP -デフォルトでは、javadoc ツールは、HTML 形式のドキュメントを生成する標準ドックレットを使います。このドックレットは、以下の種類のファイルを生成します。 それぞれの HTML ページは、個々のファイルに相当します。javadoc が生成するファイルの名前には、クラスやインタフェースの名前にちなんだものと、そうでないもの (\f2package\-summary.html\fP など) の 2 種類があります。後者のグループのファイル名には、前者のグループとファイル名が競合しないように、ハイフンが含まれています。 -.LP -.LP -\f3基本内容ページ\fP -.LP +http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#40625) +.SH "ե" +.LP +ǥեȤǤϡjavadoc ġϡHTML ΥɥȤɸɥååȤȤޤΥɥååȤϡʲμΥեޤ줾 HTML ڡϡġΥեޤjavadoc ե̾ˤϡ饹䥤󥿥ե̾ˤʤΤȡǤʤ ( \f2package\-summary.html ʤ\fP) 2 बޤԤΥ롼פΥե̾ˤϡԤΥ롼פȥե̾礷ʤ褦ˡϥե󤬴ޤޤƤޤ +.LP +\f3ƥڡ\fP .RS 3 .TP 2 o -ドキュメント化するクラスまたはインタフェースごとに 1 つの\f3クラスページまたはインタフェースページ\fP (\f2クラス名\fP\f2.html\fP) -.TP 2 -o -ドキュメント化するパッケージごとに 1 つの\f3パッケージページ\fP (\f2package\-summary.html\fP)。Javadoc ツールは、ソースツリーのパッケージディレクトリ内に \f2package.html\fP または \f2package\-info.java\fP というファイルがあれば、その中の HTML テキストをこのページに組み入れます。 -.TP 2 -o -パッケージセット全体に対して 1 つの\f3概要ページ\fP (\f2overview\-summary.html\fP)。これは、生成ドキュメントの先頭ページになります。Javadoc ツールは、\f2\-overview\fP オプションで指定されたファイル内の HTML テキストをこのページに組み入れます。このページのファイルは、javadoc に複数のパッケージ名を渡した場合にだけ作成されます。詳細は、「HTML フレーム」を参照してください。 -.RE - -.LP -.LP -\f3相互参照ページ\fP -.LP -.RS 3 -.TP 2 -o -\f3パッケージのセット全体に対して 1 つのクラス階層ページ\fP (\f2overview\-tree.html\fP)。このページを表示するには、ナビゲーションバーの [概要] をクリックしてから、[階層ツリー] をクリックします。 +ɥȲ륯饹ޤϥ󥿥եȤ 1 Ĥ\f3饹ڡޤϥ󥿥եڡ\fP (\f2饹̾\fP\f2.html\fP) .TP 2 o -\f3パッケージごとに 1 つのクラス階層ページ\fP (\f2package\-tree.html\fP)。 特定のパッケージ、クラス、またはインタフェースのページを表示してから、[階層ツリー] をクリックすると、そのパッケージのクラス階層が表示されます。 -.TP 2 -o -\f3パッケージごとに 1 つの [使用] ページ\fP (\f2package\-use.html\fP)と、\f3クラスおよびインタフェースごとに 1 つずつの [使用] ページ\fP (\f2class\-use/\fP\f2クラス名\fP\f2.html\fP)。このページには、特定のクラス、インタフェース、またはパッケージの一部を使っているパッケージ、クラス、メソッド、コンストラクタ、およびフィールドについて記述されます。クラスまたはインタフェース A を例にして考えると、その [使用] ページには、A のサブクラス、A として宣言されたフィールド、A を返すメソッド、A 型のパラメータを持つメソッドおよびコンストラクタが表示されます。 このページを表示するには、まず、パッケージ、クラス、またはインタフェースのページに移動してから、ナビゲーションバーの [使用] リンクをクリックします。 -.TP 2 -o -\f3非推奨 API ページ\fP (\f2deprecated\-list.html\fP)。 推奨されないすべての名前が一覧表示されます。非推奨名は、一般に改良された API が存在するために使用が推奨されていない API の名前であり、通常、それに置き換わる名前が提示されています。非推奨 API は、将来の実装では削除される可能性があります。 +ɥȲѥåȤ 1 Ĥ\f3ѥåڡ\fP (\f2package\-summary.html\fP)Javadoc ġϡ \f2package.html\fP ޤ \f2package\-info.java\fP Ȥ̾Υե HTML ƥȤ򤹤٤Ȥޤ .TP 2 o -\f3定数フィールド値ページ\fP (\f2constant\-values.html\fP)。 static フィールドの値用です。 -.TP 2 -o -\f3直列化されたフォームページ\fP (\f2serialized\-form.html\fP)。 直列化および外部化可能なクラスです。これらの各クラスには、直列化フィールドおよびメソッドに関する説明があります。これらの情報は、API を使う開発者ではなく、再実装を行う開発者に必要な情報です。ナビゲーションバーにこのページへのリンクはありませんが、直列化されたクラスに移動して、そのクラスの説明にある [関連項目] セクションで [直列化された形式] をクリックすると、この情報を取得できます。標準ドックレットは、直列化された形式のページを自動的に生成します。ここには、Serializable を実装する public または非 public のクラスが組み込まれており、さらに、\f2readObject\fP メソッド、\f2writeObject\fP メソッド、直列化されたフィールド、および \f2@serial\fP タグ、\f2@serialField\fP タグ、\f2@serialData\fP タグからのドキュメンテーションコメントが組み込まれています。直列化が可能な public クラスを除外するには、そのクラスまたはそのクラスが属するパッケージを \f2@serial exclude\fP タグで指定します。 直列化が可能な package private クラスを含めるには、そのクラスまたはそのクラスが属するパッケージを \f2@serial include\fP タグで指定します。バージョン 1.4 では、\f2\-private\fP オプションの指定なしで javadoc ツールを実行することにより、public クラスおよび private クラスの完全に直列化されたクラスを生成できます。 -.TP 2 -o -\f3索引\fP (\f2index\-*.html\fP)。 すべてのクラス名、インタフェース名、コンストラクタ名、フィールド名、およびメソッド名が、アルファベット順に並んでいます。索引は、Unicode を扱えるように国際化されています。 1 つのファイルとして生成することも、先頭文字 (英語の場合 A 〜 Z) ごとに別々のファイルとして生成することもできます。 +ѥåΥåΤФ 1 Ĥ\f3ץڡ\fP (\f2overview\-summary.html\fP)ϡɥȤƬڡˤʤޤJavadoc ġϡ\f2\-overview\fP ץǻꤵ줿ե HTML ƥȤ򤹤٤ȤޤΥڡΥեϡjavadoc ʣΥѥå̾Ϥˤޤܺ٤ϡHTML ե졼פ򻲾ȤƤ .RE - -.LP -.LP -\f3サポートファイル\fP -.LP +.LP +\f3߻ȥڡ\fP .RS 3 .TP 2 o -\f3ヘルプページ\fP (\f2help\-doc.html\fP)。 ナビゲーションバーや前述の各ページに関する説明が記載されています。\f2\-helpfile\fP を使うと、デフォルトのヘルプファイルに代わる独自のカスタムヘルプファイルを提供することもできます。 -.TP 2 -o -表示用の HTML フレームを作成する 1 つの \f3index.html ファイル\fP。このファイルは、フレーム付きの先頭ページを表示する場合にロードします。このファイル自体には、テキスト内容は含まれていません。 +\f3ѥåΥåΤФ 1 ĤΥ饹إڡ\fP (\f2overview\-tree.html\fP)ΥڡɽˤϡʥӥС [] 򥯥åƤ顢[إĥ꡼] 򥯥åޤ .TP 2 o -複数の\f3フレームファイル\fP (\f2*\-frame.html\fP)。 パッケージ、クラス、およびインタフェースのリストが含まれています。 HTML フレームを表示するときに使用されます。 +\f3ѥåȤ 1 ĤΥ饹إڡ\fP (\f2package\-tree.html\fP)ɽˤϡΥѥå饹ޤϥ󥿥եΥڡ˰ư[إĥ꡼] 򥯥åƤΥѥåγؤɽޤ .TP 2 o -\f3パッケージリスト\fPファイル (\f2package\-list\fP)。 \f2\-link\fP オプションおよび \f2\-linkoffline\fP オプションで使用されます。これは、HTML ファイルではなくテキストファイルであり、どのリンクからもアクセスできません。 -.TP 2 -o -\f3スタイルシート\fPファイル (\f2stylesheet.css\fP)。 生成されるページ上のいくつかの要素について、色、フォントファミリ、フォントサイズ、フォントのスタイル、および配置を制御します。 +\f3ѥåȤ 1 Ĥ [] ڡ\fP (\f2package\-use.html\fP) ȡ饹ӥ󥿥եȤ 1 ĤĤ [] ڡ (\f2class\-use/\fP\f2饹̾\fP\f2.html\fP)ΥڡˤϡΥ饹󥿥եޤϥѥåΰȤäƤѥå饹᥽åɡ󥹥ȥ饯ӥեɤˤĤƵҤޤ饹ޤϥ󥿥ե A ˤƹͤȡ [] ڡˤϡA Υ֥饹A Ȥ줿եɡA ֤᥽åɡA Υѥ᡼ĥ᥽åɤӥ󥹥ȥ饯ɽޤ Υڡɽˤϡޤѥå饹ޤϥ󥿥եΥڡ˰ưƤ顢ʥӥС [] 󥯤򥯥åޤ .TP 2 o -\f3doc\-files\fP ディレクトリ。 生成先ディレクトリにコピーするイメージ、サンプルコード、ソースコードなどのファイルがすべて格納されます。これらのファイルは、Javadoc ツールによって処理されないため、ファイル内に javadoc タグがあっても無視されます。このディレクトリは、ソースツリーの中にある場合にのみ生成されます。 +\f3侩 API ڡ\fP (\f2deprecated\-list.html\fP)侩ʤ̾٤ưɽޤ侩̾ϡ̤˲ɤ줿 API ¸ߤ뤿˻Ѥ侩Ƥʤ API ̾Ǥꡢ̾֤̾󼨤Ƥޤ侩 API ϡμǤϺǽޤ +.TP 2 +o +\f3եͥڡ\fP (\f2constant\-values.html\fP)static եɤѤǤ +.TP 2 +o +\f3ľ󲽤줿ڡ\fP (\f2serialized\-form.html\fP)ľ󲽲ǽijǽʥ饹˴ؤѤǤγƥ饹ˤϡľ󲽥եɤӥ᥽åɤ˴ؤޤξϡAPI ȤȯԤǤϤʤƼԤȯԤɬפʾǤʥӥСˤΥڡؤΥ󥯤Ϥޤ󤬡ľ󲽤줿饹˰ươΥ饹ˤִϢܡץǡľ󲽤줿פ򥯥åȡξǤޤɸɥååȤľ󲽤줿ڡưޤSerializable 뤹٤ƤΥ饹 (public ޤ public) ޤޤۤ \f2readObject\fP ᥽åɤ \f2writeObject\fP ᥽åɡľ󲽤եɡ \f2@serial\fP\f2@serialField\fP\f2@serialData\fP Υɥơ󥳥Ȥޤޤޤpublic ľ󲽲ǽ饹ˤϡΥ饹 (ޤϤΥѥå) \f2@serial exclude\fP ǥޡޤpackage\-private ľ󲽲ǽ饹ޤˤϡΥ饹 (ޤϤΥѥå) \f2@serial include\fP ǥޡޤС 1.4 Ǥ \f2\-private\fP ץλʤ javadoc ġ¹Ԥ뤳Ȥˤꡢpublic 饹 private 饹δľ󲽤줿饹Ǥޤ +.TP 2 +o +\f3\fP (\f2index\-*.html\fP)٤ƤΥ饹󥿥ե󥹥ȥ饯եɡӥ᥽åɤ̾ե٥åȽ¤ǤޤϡUnicode 򰷤褦˹ݲƤޤ1 ĤΥեȤ뤳Ȥ⡢Ƭʸ (Ѹξ A Z) Ȥ̡ΥեȤ뤳ȤǤޤ .RE - -.LP -.LP -\f3HTML フレーム\fP -.LP -.LP -Javadoc ツールは、下の図に示すように、2 〜 3 つの HTML フレームを生成します。1 つのパッケージしかない場合 (またはパッケージがない場合) は、パッケージの一覧を省略することによって最低限必要な数のフレームを作成します。単一のパッケージに属するソースファイル (*.java) または単一のパッケージ名を引数として javadoc コマンドに渡す場合は、左側の列にクラスの一覧を表示するフレーム (C) 1 つだけが作成されます。Javadoc に複数のパッケージ名を渡した場合は、概要ページ (Detail) に加えて、すべてのパッケージを一覧表示する第 3 のフレーム (P) が作成されます。この概要ページのファイル名は、\f2overview\-summary.html\fP です。したがって、このファイルは、2 つ以上のパッケージ名を渡した場合にだけ作成されます。[フレームなし] リンクをクリックするか、overview\-summary.html を最初に表示すると、フレームを省略できます。 -.LP -.LP -HTML フレームに慣れていない場合は、特定のフレームを印刷およびスクロールするには、そのフレームに「フォーカス」がなければならないことに注意してください。フレームにフォーカスを与えるには、そのフレームをクリックします。このようにすると、多くのブラウザでは、矢印キーやページキーを使ってそのフレームをスクロールしたり、[印刷] メニューコマンドを使ってそのフレームを印刷したりできます。 -.LP -.nf -\f3 -.fl - \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\- -.fl - |C| Detail | |P| Detail | -.fl - | | | | | | -.fl - | | | |\-| | -.fl - | | | |C| | -.fl - | | | | | | -.fl - | | | | | | -.fl - \-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\-\-\- -.fl - javadoc *.java javadoc java.lang java.awt -.fl -\fP -.fi - -.LP -.LP -HTML フレームが必要かどうかによって、次のどちらかのファイルを開始ページとしてロードします。 -.LP +.LP +\f3ݡȥե\fP .RS 3 .TP 2 o -\f2index.html\fP (フレームあり) +\f3إץڡ\fP (\f2help\-doc.html\fP)ʥӥСҤγƥڡ˴ؤܤƤޤǥեȤΥإץեȼΥإץե󶡤ˤϡ\f2\-helpfile\fP Ѥޤ +.TP 2 +o +ɽѤ HTML ե졼 1 Ĥ \f3index.html ե\fPΥեϡե졼դƬڡɽ˥ɤޤΥե뼫ΤˤϡƥƤϴޤޤƤޤ +.TP 2 +o +ʣ\f3ե졼ե\fP (\f2*\-frame.html\fP)ѥå饹ӥ󥿥եΥꥹȤޤޤƤޤHTML ե졼ɽȤ˻Ѥޤ +.TP 2 +o +\f3ѥåꥹ\fPե (\f2package\-list\fP) \f2\-link\fP \f2\-linkoffline\fP ץǻѤޤϡHTML եǤϤʤƥȥեǤꡢɤΥ󥯤⥢Ǥޤ +.TP 2 +o +\f3륷\fPե (\f2stylesheet.css\fP)ڡΤĤǤˤĤơեȥեߥꡢեȥեȤΥ롢֤椷ޤ .TP 2 o -\f2overview\-summary.html\fP (フレームなし) +\f3doc\-files\fP ǥ쥯ȥꡣǥ쥯ȥ˥ԡ륤᡼ץ륳ɡɤʤɤΥե뤬٤ƳǼޤΥեϡJavadoc ġˤäƽʤᡢե avadoc äƤ̵뤵ޤΥǥ쥯ȥϡĥ꡼ˤˤΤޤ .RE - -.LP -.LP -\f3生成されるファイルの構造\fP -.LP -.LP -生成されるクラスファイルおよびインタフェースファイルは、Java ソースファイルおよびクラスファイルと同じディレクトリ階層に編成されます。1 つのサブパッケージにつき 1 つのディレクトリ、という構造になります。 -.LP -.LP -たとえば、\f2java.applet.Applet\fP クラスに対して生成されるドキュメントは、\f2java/applet/Applet.html\fP に格納されます。生成先のディレクトリの名前が \f2apidocs\fP だとすると、java.applet パッケージのファイル構造は、その下に構築されます。前述のように、「frame」という語を名前に含むファイルは、すべて左上または左下のフレームに表示されます。それ以外の HTML ファイルは、すべて右側のフレームに表示されます。 -.LP +.LP +\f3HTML ե졼\fP +.LP +Javadoc ġϡοޤ˼褦ˡ2 3 Ĥ HTML ե졼ޤ1 ĤΥѥåʤ (ޤϥѥåʤ) ϡѥåΰά뤳ȤˤäƺɬפʿΥե졼ޤñΥѥå°륽ե (*.java) ޤñΥѥå̾Ȥ javadoc ޥɤϤϡ¦˥饹ΰɽե졼 (C) 1 ĤޤJavadoc ʣΥѥå̾Ϥϡץڡ (Detail) ˲äơ٤ƤΥѥåɽ 3 Υե졼 (P) ޤγץڡΥե̾ϡ \f2overview\-summary.html Ǥ\fPäơΥեϡ2 İʾΥѥå̾Ϥˤޤ֥ե졼ʤץ󥯤򥯥å뤫overview\-summary.html ǽɽȡե졼άǤޤ +.LP +HTML ե졼˴ƤʤϡΥե졼ӥ뤹ˤϡΥե졼ˡ֥եפʤФʤʤȤդƤե졼˥եͿˤϡΥե졼򥯥åޤΤ褦ˤȡ¿Υ֥饦ǤϡڡȤäƤΥե졼򥹥뤷ꡢְץ˥塼ޥɤȤäƤΥե졼Ǥޤ +.LP +HTML ե졼बɬפɤˤäơΤɤ餫Υե򳫻ϥڡȤƥɤޤ .RS 3 - -.LP -.LP -注 \- 下の階層図で、ディレクトリは\f3太字\fP (\f3bold\fP) で示してあります。アスタリスク (\f2*\fP) は、javadoc への引数がパッケージ名ではなくソースファイル名 (*.java) である場合に省略されるファイルおよびディレクトリを示しています。また、引数がソースファイル名の場合は、\f2package\-list\fP は作成されますが、内容は空です。doc\-files ディレクトリは、ソースツリー内に存在する場合にのみ、生成先に作成されます。 -.LP +.TP 2 +o +\f2index.html\fP (ե졼ढ) +.TP 2 +o +\f2overview\-summary.html\fP (ե졼ʤ) .RE +.LP +\f3եι¤\fP +.LP +륯饹ե뤪ӥ󥿥եեϡJava ե뤪ӥ饹եƱǥ쥯ȥ곬ؤޤ1 ĤΥ֥ѥåˤĤ 1 ĤΥǥ쥯ȥꡢȤ¤ˤʤޤ +.LP +ȤС \f2java.applet.Applet\fP 饹Ѥ줿ɥȤϡ \f2java/applet/Applet.html\fP ˳ǼޤΥǥ쥯ȥ̾ \f2apidocs\fP Ȥȡjava.applet ѥåΥե빽¤ϡβ˹ۤޤҤΤ褦ˡframeפȤ̾˴ޤեϡ٤ƺޤϺΥե졼ɽޤʳ HTML եϡ٤Ʊ¦Υե졼ɽޤ +.LP + \- γؿޤǡǥ쥯ȥ\f3\fP (bold) ǼƤޤꥹ (\f2*\fP) ϡjavadoc ؤΰѥå̾ǤϤʤե̾ (*.java) Ǥ˾άե뤪ӥǥ쥯ȥ򼨤Ƥޤޤե̾ξ硢 \f2package\-list\fP ϺޤȤ϶Ǥdoc\-files ǥ쥯ȥϡĥ꡼¸ߤˤΤߡ˺ޤ .nf \f3 .fl .fl -\fP\f3apidocs\fP 最上位ディレクトリ -.fl - index.html HTML フレームを設定する初期ページ -.fl - * overview\-summary.html 全パッケージのリスト。 先頭に要約文がある -.fl - overview\-tree.html 全パッケージのクラス階層のリスト -.fl - deprecated\-list.html 全パッケージの推奨されない API のリスト -.fl - constant\-values.html 全パッケージの static フィールドの値のリスト -.fl - serialized\-form.html 全パッケージの直列化された形式のリスト -.fl - * overview\-frame.html 全パッケージのリスト。 左上のフレームに表示される -.fl - allclasses\-frame.html 全パッケージの全クラスのリスト。 左下のフレームに表示される -.fl - help\-doc.html これらのページの構成を示すユーザーヘルプを表示する -.fl - index\-all.html \-splitindex オプションなしで作成されたデフォルト索引 -.fl - \f3index\-files\fP \-splitindex オプションを指定して作成されたディレクトリ -.fl - index\-<number>.html \-splitindex オプションを指定して作成された索引ファイル -.fl - package\-list パッケージ名のリスト。 外部参照を解決するためだけに使用される -.fl - stylesheet.css フォント、色、配置を定義する HTML スタイルシート -.fl - \f3java\fP パッケージディレクトリ -.fl - \f3applet\fP サブパッケージディレクトリ -.fl - Applet.html Applet クラスのページ -.fl - AppletContext.html AppletContext インタフェースのページ -.fl - AppletStub.html AppletStub インタフェースのページ -.fl - AudioClip.html AudioClip インタフェースのページ -.fl - * package\-summary.html このパッケージのクラスのリスト。 先頭に要約文がある -.fl - * package\-frame.html このパッケージのクラスのリスト。 左下のフレームに表示される -.fl - * package\-tree.html このパッケージのクラス階層のリスト -.fl - package\-use このパッケージが使用されている場所のリスト -.fl - \f3doc\-files\fP イメージやサンプルのファイルが格納されるディレクトリ -.fl - \f3class\-use\fP API が使用されている場所のページを格納するディレクトリ -.fl - Applet.html Applet クラスを使用するページ -.fl - AppletContext.html AppletContext インタフェースを使用するページ -.fl - AppletStub.html AppletStub インタフェースを使用するページ -.fl - AudioClip.html AudioClip インタフェースを使用するページ -.fl - \f3src\-html\fP ソースコードディレクトリ -.fl - \f3java\fP パッケージディレクトリ -.fl - \f3applet\fP サブパッケージディレクトリ -.fl - Applet.html Applet ソースコードのページ -.fl - AppletContext.html AppletContext ソースコードのページ -.fl - AppletStub.html AppletStub ソースコードのページ -.fl - AudioClip.html AudioClip ソースコードのページ +\fP\f3apidocs\fP Ǿ̥ǥ쥯ȥ +.fl + index.html HTML ե졼ꤹڡ +.fl + * overview\-summary.html ѥåΥꥹȡƬʸˤդ +.fl + overview\-tree.html ѥåΥ饹ؤΥꥹ +.fl + deprecated\-list.html ѥå侩 API Υꥹ +.fl + constant\-values.html ѥå static եɤͤΥꥹ +.fl + serialized\-form.html ѥåľ󲽤줿Υꥹ +.fl + * overview\-frame.html ѥåΥꥹȡΥե졼ǻѤ +.fl + allclasses\-frame.html ѥå饹ΥꥹȡΥե졼ǻѤ +.fl + help\-doc.html Υڡι򼨤桼إפΥꥹ +.fl + index\-all.html \-splitindex ץꤷʤä˺ǥեȤκ +.fl + \f3index\-files\fP \-splitindex ץꤷ˺ǥ쥯ȥ +.fl + index\-<number>.html \-splitindex ץꤷ˺ե +.fl + package\-list ѥå̾ΥꥹȡȤ褹뤿˻Ѥ +.fl + stylesheet.css եȡ֤ HTML 륷 +.fl + \f3java\fP ѥåǥ쥯ȥ +.fl + \f3applet\fP ֥ѥåǥ쥯ȥ +.fl + Applet.html Applet 饹Υڡ +.fl + AppletContext.html AppletContext 󥿥եΥڡ +.fl + AppletStub.html AppletStub 󥿥եΥڡ +.fl + AudioClip.html AudioClip 󥿥եΥڡ +.fl + * package\-summary.html ΥѥåΥ饹ΥꥹȡƬʸˤդ +.fl + * package\-frame.html ΥѥåΥ饹ΥꥹȡΥե졼ǻѤ +.fl + * package\-tree.html ΥѥåΥ饹ؤΥꥹ +.fl + package\-use ΥѥåѤƤΥꥹ +.fl + \f3doc\-files\fP 䥵ץեݻǥ쥯ȥ +.fl + \f3class\-use\fP API ѤƤΥڡݻǥ쥯ȥ +.fl + Applet.html Applet 饹λѤ˴ؤڡ +.fl + AppletContext.html AppletContext 󥿥եλѤ˴ؤڡ +.fl + AppletStub.html AppletStub 󥿥եλѤ˴ؤڡ +.fl + AudioClip.html AudioClip 󥿥եλѤ˴ؤڡ +.fl + \f3src\-html\fP ɥǥ쥯ȥ +.fl + \f3java\fP ѥåǥ쥯ȥ +.fl + \f3applet\fP ֥ѥåǥ쥯ȥ +.fl + Applet.html Applet ɤΥڡ +.fl + AppletContext.html AppletContext ɤΥڡ +.fl + AppletStub.html AppletStub ɤΥڡ +.fl + AudioClip.html AudioClip ɤΥڡ .fl .fi - -.LP .SS -生成される API 宣言 -.LP -.LP -Javadoc ツールは、それぞれのクラス、インタフェース、フィールド、コンストラクタ、およびメソッドの説明の最初に、その API 用の宣言を生成します。 この宣言は、その API 項目の宣言です。たとえば、\f2Boolean\fP クラスの宣言は、次のようになります。 -.LP + API +.LP +Javadoc ġϡ줾Υ饹󥿥եեɡ󥹥ȥ饯ӥ᥽åɤκǽˡ API ѤޤȤС \f2Boolean\fP 饹ϡΤ褦ˤʤޤ .LP \f2public final class Boolean\fP .br @@ -937,29 +593,20 @@ .br \f2implements Serializable\fP .LP -.LP -また、\f2Boolean.valueOf\fP メソッドの宣言は、次のようになります。 -.LP +ޤ \f2Boolean.valueOf\fP ᥽åɤϡΤ褦ˤʤޤ .LP \f2public static Boolean valueOf(String s)\fP .LP -.LP -Javadoc ツールは、修飾子 \f2public\fP、\f2protected\fP、\f2private\fP、\f2abstract\fP、\f2final\fP、\f2static\fP、\f2transient\fP、および \f2volatile\fP を組み込むことができますが、\f2synchronized\fP と \f2native\fP を組み込むことができません。これら後者の 2 つの修飾子は、実装の詳細と見なされているため、API 仕様には含まれません。 -.LP -.LP -API では、並行性のセマンティクスについて、キーワード \f2synchronized\fP に依存するのではなく、コメントによる主説明としてドキュメント化する必要があります。 たとえば、「1 つの \f2Enumeration\fP を複数のスレッドから並行して使用することはできない」などのコメントを記述します。ドキュメントには、これらのセマンティクスを実現する方法を記述するべきではありません。たとえば、\f2Hashtable\fP はスレッドに対して安全である必要がありますが、「エクスポートされるすべてのメソッドを同期化すればそれを実現できる」のようには指定する根拠はありません。バケットレベルで内部的に同期化する権利を残しておく必要があります。 そうすれば、より高度な並行性が提供されます。 -.LP -.SH "ドキュメンテーションコメント" -.LP -.LP -オリジナルの「ドキュメンテーションコメントの仕様」は、「関連項目」を参照してください。 -.LP +Javadoc ġǤϡ \f2public\fP \f2protected\fP \f2private\fP \f2abstract\fP \f2final\fP \f2static\fP \f2transient\fP \f2volatile\fP Ȥ߹ޤ \f2synchronized\fP \f2native\fP Ȥ߹ޤ󡣤Ԥ 2 ĤνҤϡξܺ٤ȸʤƤ뤿ᡢAPI ͤˤϴޤޤޤ +.LP +API Ǥϡ¹ޥƥˤĤơ \f2synchronized\fP ˰¸ΤǤϤʤȤμȤƥɥȲ٤Ǥ \f2ȤС1 Ĥ Enumeration \fP ʣΥåɤ¹ԤƻѤ뤳ȤϤǤʤפʤɤȵҤޤɥȤˤϡΥޥƥ¸ˡ򵭽Ҥ٤ǤϤޤ󡣤ȤС \f2Hashtable\fP ϥåɤФưǤɬפޤ֥ݡȤ뤹٤ƤΥ᥽åɤƱФ¸ǤפΤ褦ˤϻꤹ뺬Ϥޤ󡣥Хåȥ٥ŪƱ븢ĤƤɬפޤС٤¹󶡤ޤ +.SH "ɥơ󥳥" +.LP +ꥸʥΡ֥ɥơ󥳥Ȥλ͡פϡִϢܡפ򻲾ȤƤ .SS -ソースコードへのコメントの挿入 -.LP -.LP -ソースコードの任意のクラス、インタフェース、メソッド、コンストラクタ、またはフィールドの宣言の前に、ドキュメンテーションコメント ("doc comments") を記述することができます。各パッケージにドキュメンテーションコメントを作成できます。 構文は若干異なりますが、概要にもドキュメンテーションコメントを作成できます。ドキュメンテーションコメントは、非公式に「Javadoc コメント」と呼ばれています (この用語は商標関連の使用法に違反)。ドキュメンテーションコメントは、コメントの始まりを示す文字列 \f2/**\fP と、コメントの終わりを示す文字列 \f2*/\fP の間にある文字で構成されます。行の先頭のアスタリスクは、各行に記述できます。 詳細は、以下で説明します。コメントのテキストは、複数行にわたって記述できます。 -.LP +ɤؤΥȤ +.LP +ɤǤդΥ饹󥿥ե᥽åɡ󥹥ȥ饯ޤϥեɤˡɥơ󥳥 ("doc comments") 򵭽Ҥ뤳ȤǤޤƥѥå˥ɥơ󥳥ȤǤޤʸϼ㴳ۤʤޤפˤɥơ󥳥ȤǤޤɥơ󥳥ȤϡˡJavadoc ȡפȸƤФƤޤ (ѸϾɸϢλˡ˰ȿ)ɥơ󥳥ȤϡȤϤޤ򼨤ʸ \f2/**\fP ȡȤ򽪤򼨤ʸ \f2*/\fP δ֤ˤʸ鹽ޤԤƬΥꥹϡƹԤ˵ҤǤޤܺ٤ϡʲޤȤΥƥȤϡʣԤˤ錄äƵҤǤޤ .nf \f3 .fl @@ -973,26 +620,19 @@ .fl \fP .fi - -.LP -.LP -次のようにして 1 行に記述すると、スペースを節約できます。 -.LP +.LP +Τ褦ˤ 1 Ԥ˵ҤȡڡǤޤ .nf \f3 .fl -/** This comment takes up only one line. */ +/** This comment takes up only one line.*/ .fl \fP .fi - -.LP -.LP -\f3コメントの配置\fP \- ドキュメンテーションコメントは、クラス、インタフェース、コンストラクタ、メソッド、またはフィールドの宣言の直前に置かれているときにだけ認識されます。 クラスの例、メソッドの例、およびフィールドの例を参照してください。メソッドの本体に置かれているドキュメンテーションコメントは無視されます。javadoc ツールでは、1 つの宣言文につき 1 つのドキュメンテーションコメントだけが認識されます。 -.LP -.LP -よくある間違いは、クラスのコメントとクラスの宣言の間に \f2import\fP 文を置いてしまうことです。このような記述はしないでください。 このようなクラスコメントは無視されます。 -.LP +.LP +\f3Ȥ\fP \- ɥơ󥳥Ȥϡ饹󥿥ե󥹥ȥ饯᥽åɡޤϥեɤľ֤ƤȤˤǧޤ饹㡢᥽åɤ㡢ӥեɤ򻲾ȤƤ᥽åɤΤ֤Ƥɥơ󥳥Ȥ̵뤵ޤjavadoc ġǤϡ1 ĤʸˤĤ 1 ĤΥɥơ󥳥Ȥǧޤ +.LP +褯ְ㤤ϡ饹Ȥȥ饹δ֤ \f2import\fP ʸ֤ƤޤȤǤΤ褦ʵҤϤʤǤΤ褦ʥ饹Ȥ̵뤵ޤ .nf \f3 .fl @@ -1014,11 +654,8 @@ .fl \fP .fi - -.LP -.LP -\f3ドキュメンテーションコメントは主説明のあとにタグセクションが続く\fP \- コメントの開始区切り文字である \f2/**\fP のあとからタグセクションまでが主説明になります。タグセクションは、先頭文字が \f2@\fP である行で定義される最初のブロックタグから始まります (行の先頭のアスタリスク、空白、および行の先頭の区切り文字 \f2/**\fP は除く)。主説明を記述せず、タグセクションだけのコメントを記述することもできます。主説明は、タグセクション以降に続けることはできません。タグの引数は、複数行にわたって記述できます。タグの数に制限はありません。 何回も記述できるタグと、1 回しか記述できないタグがあります。例えば、次の \f2@see\fP からタグセクションが始まります。 -.LP +.LP +\f3ɥơ󥳥ȤϼΤȤ˥³ \- Ȥγ϶ڤʸǤ\fP \f2/**\fP ΤȤ饿ޤǤˤʤޤϡԤƬˤǽ \f2@\fP ǽΥ֥åϤޤޤ (ƬΥꥹƬζڤʸ \f2/**\fP Ͻ)򵭽ҤΥȤ򵭽Ҥ뤳ȤǤޤϡʹߤ³뤳ȤϤǤޤ󡣥ΰϡʣԤˤ錄äƵҤǤޤο¤Ϥޤ󡣲⵭ҤǤ륿ȡ1 󤷤ҤǤʤޤȤС \f2@see\fP ϡ򳫻ϤƤޤ .nf \f3 .fl @@ -1032,11 +669,8 @@ .fl \fP .fi - -.LP -.LP -\f3ブロックタグとインラインタグ\fP \- 「タグ」は、Javadoc が処理できる、ドキュメンテーションコメント内の特別なキーワードです。\f2@tag\fP のように記述するブロックタグ (「スタンドアロンタグ」とも呼ばれる) と、インラインタグ (\f2{@tag}\fP のように中括弧で囲んで記述) の 2 種類のタグがあります。ブロックタグが正しく解釈されるためには、行の先頭のアスタリスク、空白、区切り文字 (\f2/**\fP) を除いて、行の先頭に置かなければなりません。これは、テキスト内のそれ以外の位置で \f2@\fP 文字を使用しても、タグの開始としては解釈されないことを意味しています。行の最初に \f2@\fP 文字を使用してもタグとして解釈されないようにするには、HTML エンティティーの「\f2@\fP」を使用してください。それぞれのブロックタグには、対応付けられたテキストがあります。 このテキストは、タグのあとから、次のタグの前、またはドキュメンテーションコメントの最後までの間に記述されたテキスト (タグやコメント区切り文字を除く) です。この関連テキストは複数行にわたって記述できます。インラインタグは、テキストを記述できる場所であればどこにでも置くことができ、正しく解釈されます。次のコード例には、ブロックタグ \f2@deprecated\fP と、インラインタグ \f2{@link}\fP が含まれています。 -.LP +.LP +\f3֥åȥ饤󥿥\fP \- \f2֥\fPϡJavadoc Ǥ롢ɥơ󥳥̤ʥɤǤˤ 2 ढޤ1 Ĥ @tag Τ褦ɽ֥å \f2(ɸॿפȤƤФ)\fP ⤦ 1 Ĥ {@tag} Τ褦̤ǰϤޤ륤饤󥿥 \f2Ǥ\fP֥åᤵ뤿ˤϡԤƬΥꥹ򡢶ڤʸ (\f2/**\fP) ơԤƬ֤ʤФʤޤ󡣤ϡ \f2@\fP ʸƥ̤ξǻѤˤϥγϤȤƲᤵʤȤ̣ƤޤԤƬ \f2@\fP ʸѤƤ⤽줬ᤵʤ褦ˤˤϡHTML ƥƥ \f2@\fP Ѥޤ줾Υ֥åˤϡбդ줿ƥȤޤΥƥȤϡΤȤ顢Υޤϥɥơ󥳥ȤκǸޤǤδ֤˵Ҥ줿ƥ (䥳ȶڤʸ) ǤδϢƥȤʣԤˤ錄äƵҤǤޤ饤󥿥ϡƥȤ򵭽ҤǤǤФɤˤǤ֤ȤǤᤵޤˤϥ֥å \f2@deprecated\fP ȥ饤󥿥 \f2{@link}\fP ޤޤƤޤ .nf \f3 .fl @@ -1048,17 +682,12 @@ .fl \fP .fi - -.LP -.LP -\f3コメントは HTML で記述する\fP \- テキストは HTML 形式で記述しなければなりません。 これは、HTML のエンティティーを使う必要があること、および HTML タグを使用できることを意味します。記述する HTML のバージョンとしては、使用するブラウザがサポートする任意のバージョンを使用できます。 標準ドックレットは、カスケーディングスタイルシート (CSS) とフレームを含め、すべての部分 (ドキュメンテーションコメント以外の部分) で HTML 3.2 に準拠したコードを生成するように作成されています。ただし、フレームセット対応のため、生成される各ファイルには「HTML 4.0」と記述されます。 -.LP -.LP -たとえば、より小さい (\f2<\fP) およびより大きい (\f2>\fP) という記号は\f2<\fP および \f2>\fP として記述する必要があります。同様に、アンパサンド (\f2&\fP) は、\f2&\fP と記述する必要があります。次の例では、ボールドの HTML タグ \f2<b>\fP を使っています。 -.LP -.LP -次に、ドキュメンテーションコメントを示します。 -.LP +.LP +\f3Ȥ HTML ǵҤ\fP \- ƥȤ HTML ǵҤʤФʤޤ󡣤ϡHTML ΥƥƥȤɬפ뤳ȡ HTML ѤǤ뤳Ȥ̣ޤҤ HTML ΥСȤƤϡѤ֥饦ݡȤǤդΥСѤǤޤɸɥååȤϡǥ󥰥륷 (CSS) ȥե졼ޤᡢ٤Ƥʬ (ɥơ󥳥Ȱʳʬ) HTML 3.2 ˽򤷤ɤ褦˺Ƥޤե졼ॻåбΤᡢƥեˤϡHTML 4.0פȵҤޤ +.LP +ȤС꾮 (\f2<\fP) 椪Ӥ礭 (\f2>\fP) Υƥƥϡ \f2<\fP \f2>\fP ȵҤ٤ǤƱͤˡѥ (\f2&\fP) \f2&\fP ȵҤ٤ǤǤϥܡɤ HTML \f2<b>\fP Ƥޤ +.LP +ˡɥơ󥳥Ȥ򼨤ޤ .nf \f3 .fl @@ -1072,20 +701,12 @@ .fl \fP .fi - -.LP -.LP -\f3行頭のアスタリスク\fP \- Javadoc は、ドキュメンテーションコメントを解析するときに、各行の先頭にあるアスタリスク (\f2*\fP) をすべて破棄します。 また、最初のアスタリスク (\f2*\fP) より前の空白とタブも破棄します。バージョン 1.4 からは、行の先頭のアスタリスクを省略しても、先頭の空白文字は削除されなくなりました。このため、コード例を直接ドキュメンテーションコメントの \f2<PRE>\fP タグ内にペーストしても、インデントが保持されます。通常、ブラウザは、空白文字をタブよりも一律に解釈します。インデントは区切り文字 \f2/**\fP または \f2<PRE>\fP タグよりも左寄りになります。 -.LP -.LP -\f3最初の文\fP \- 各ドキュメンテーションコメントの最初の文は、宣言されているエンティティーに関する簡潔かつ完全な要約文である必要があります。この「最初の文」は、直後にスペース、タブ、または改行が続く最初のピリオド (ロケールが英語に設定されている場合)、または最初のタグがある位置で終わります。最初の文は、Javadoc ツールによって HTML ページの最初にあるメンバーの概要の部分にコピーされます。 -.LP -.LP -\f3複数フィールドの宣言\fP \- Java では、1 つの文で複数のフィールドを宣言できます。 ただし、この文には、1 つのドキュメンテーションコメントしか記述できません。 そのコメントが、すべてのフィールドに対してコピーされます。したがって、フィールドごとにドキュメンテーションコメントを記述する必要がある場合は、各フィールドを別々の文で宣言しなければなりません。たとえば、次のドキュメンテーションコメントは、1 つの宣言として記述すると不適切です。 この場合は、宣言を 2 つに分けることをお勧めします。 -.LP -.RS 3 - -.LP +.LP +\f3ƬΥꥹ\fP \- javadoc ˤɥơ󥳥ȤβϻˡƹԤƬˤ륢ꥹ (\f2*\fP) ʸ˴ޤǽΥꥹ (\f2*\fP) ʸˤ䥿֤˴ޤС 1.4 ϡԤƬΥꥹάƤ⡢ƬζʸϺʤʤޤΤᡢľܥɥơ󥳥Ȥ \f2<PRE>\fP ˥ڡȤƤ⡢ǥȤݻޤ̾֥饦ϡʸ򥿥֤Χ˲ᤷޤǥȤεϺޡˤʤޤ (ڤʸ \f2/**\fP ޤ \f2<PRE>\fP ǤϤʤ) +.LP +\f3ǽʸ\fP \- ƥɥơ󥳥ȤκǽʸϡƤ륨ƥƥ˴ؤʷ餫ĴʸǤɬפޤΡֺǽʸפϡľ˥ڡ֡ޤϲԤ³ǽΥԥꥪ (뤬ѸꤵƤ)ޤϺǽΥ֤ǽޤǽʸϡJavadoc ġˤä HTML ڡκǽˤСγפʬ˥ԡޤ +.LP +\f3ʣեɤ\fP \- Java Ǥϡ1 ĤʸʣΥեɤǤޤʸˤϡ1 ĤΥɥơ󥳥ȤҤǤޤ󡣤ΥȤ٤ƤΥեɤФƥԡޤäơեɤȤ˥ɥơ󥳥Ȥ򵭽Ҥɬפϡƥեɤ̡ʸʤФʤޤ󡣤ȤСΥɥơ󥳥Ȥϡ1 ĤȤƵҤŬڤǤξϡ 2 Ĥʬ뤳Ȥ򤪴ᤷޤ .nf \f3 .fl @@ -1099,145 +720,105 @@ .fl \fP .fi -.RE - -.LP -.LP -上記のコードからは、次のようなドキュメントが生成されます。 -.LP -.RS 3 - -.LP +.LP +嵭ΥɤϡΤ褦ʥɥȤޤ .nf \f3 .fl public int \fP\f3x\fP .fl .fi - -.LP .RS 3 The horizontal and vertical distances of point (x,y) .RE - -.LP .nf \f3 .fl public int \fP\f3y\fP .fl .fi - -.LP .RS 3 The horizontal and vertical distances of point (x,y) .RE - -.LP -.RE -.LP -\f3見出しタグはなるべく使用しない\fP \- メンバーに対してドキュメンテーションコメントを記述するときには、<H1> や <H2> などの HTML 見出しタグは、なるべく使わないでください。 Javadoc ツールは、完全に構造化されたドキュメントを作成するので、このような構造化タグが使われていると、生成ドキュメントの形式が悪影響を受けることがあります。ただし、クラスやパッケージのコメントでは、これらの見出しタグを使って独自の構造を組み立ててかまいません。 -.LP +.LP +\f3ФϤʤ٤Ѥʤ\fP \- СФƥɥơ󥳥Ȥ򵭽ҤȤˤϡ<H1> <H2> ʤɤ HTML Фϡʤ٤ȤʤǤ Javadoc ġϡ˹¤줿ɥȤΤǡΤ褦ʹ¤ȤƤȡɥȤηƶ뤳Ȥޤ饹ѥåΥȤǤϡθФȤäȼι¤ȤΩƤƤޤޤ .SS -メソッドコメントの自動コピー -.LP -.LP -Javadoc ツールには、次の 2 つの場合に、クラスおよびインタフェースのメソッドコメントをコピーまたは「継承」する機能があります。コンストラクタ、フィールド、および入れ子のクラスは、ドキュメンテーションコメントを継承しません。 -.LP +᥽åɥȤμưԡ +.LP +Javadoc ġˤϡ 2 Ĥξˡ饹ӥ󥿥եΥ᥽åɥȤ򥳥ԡޤϡַѾפ뵡ǽޤ󥹥ȥ饯եɡҤΥ饹ϡɥơ󥳥ȤѾޤ .RS 3 .TP 2 o -\f3自動的にコメントを継承して、見つからないテキストを埋める\fP \- 主説明、または \f2@return\fP タグ、\f2@param\fP タグ、\f2@throws\fP タグが、メソッドコメントで見つからない場合、Javadoc ツールは、オーバーライドしたメソッドまたは実装している場合はそのメソッドから、対応する主説明またはタグコメントを、次のアルゴリズムに従ってコピーします。 -.LP -厳密には、特定のパラメータの \f2@param\fP タグが見つからない場合、そのパラメータのコメントが、上位の継承階層のメソッドからコピーされます。特定の例外の \f2@throws\fP タグが見つからない場合、その例外が宣言されている場合にかぎり、その \f2@throws\fP タグがコピーされます。 -.LP -この動作はバージョン 1.3 以前の動作とは対照的です。 これまでのバージョンでは、主説明またはタグが存在すれば、コメントは一切継承されませんでした。 +\f3ưŪ˥ȤѾƸĤʤƥȤ\fP \- \f2@return\fP \f2@param\fP ޤ \f2@throws\fP ᥽åɥȤ˸Ĥʤ硢Javadoc ġϡС饤ɤޤϼƤϤоݤȤʤ᥽åɤ顢бޤϥȤ򡢼Υ르ꥺ˽äƥԡޤ +.LP +̩ˤϡΥѥ᡼ \f2@param\fP Ĥʤ硢Υѥ᡼ΥȤ̤ηѾؤΥ᥽åɤ饳ԡޤ㳰 \f2@throws\fP Ĥʤ硢㳰Ƥˤꡢ \f2@throws\fP ԡޤ +.LP +ưϥС 1.3 ưȤоŪǤޤǤΥСǤϡޤϥ¸ߤСȤϰڷѾޤǤ .TP 2 o -\f3{@inheritDoc} タグを持つコメントを明示的に継承する\fP \- インラインタグ \f2{@inheritDoc}\fP を、メソッドの主説明、または \f2@return\fP、\f2@param\fP、\f2@throws\fP タグコメントに挿入します。 継承した対応する主説明またはタグコメントは、その箇所にコピーされます。 +\f3{@inheritDoc} ޤॳȤŪ˷Ѿ\fP \- 饤󥿥 \f2{@inheritDoc}\fP 򡢥᥽åɤμޤ \f2@return\fP \f2@param\fP \f2@throws\fP Τ줫ΥޤбѾ줿ޤϥȤΰ֤˥ԡޤ .RE - -.LP -.LP -ドキュメンテーションコメントを実際にコピーに利用するには、継承したメソッドのソースファイルが \-sourcepath で指定したパスだけに置かれていることが必要になります。コマンド行で、クラスもパッケージも渡す必要はありません。この点は、クラスがドキュメント化されるクラスでなければならなかった 1.3.x 以前のリリースと異なります。 -.LP -.LP -\f3クラスおよびインタフェースからの継承\fP \- クラスおよびインタフェースから継承する次の 3 つの場合に、コメントの継承が行われます。 -.LP +.LP +ɥơ󥳥Ȥºݤ˥ԡѤˤϡѾ᥽åɤΥե뤬 \-sourcepath ǻꤷѥ֤Ƥ뤳ȤɬפˤʤޤޥɹԤǡ饹ѥåϤɬפϤޤ󡣤ϡ饹ɥȲ륯饹ǤʤФʤʤä 1.3.x Υ꡼Ȱۤʤޤ +.LP +\f3饹ӥ󥿥եηѾ\fP \- 饹ӥ󥿥եѾ뼡 3 ĤξˡȤηѾԤޤ .RS 3 .TP 2 o -クラスのメソッドがスーパークラスのメソッドをオーバーライドしている +饹Υ᥽åɤѡ饹Υ᥽åɤ򥪡С饤ɤƤ .TP 2 o -インタフェースのメソッドがスーパーインタフェースのメソッドをオーバーライドしている +󥿥եΥ᥽åɤѡ󥿥եΥ᥽åɤ򥪡С饤ɤƤ .TP 2 o -クラスのメソッドがインタフェースのメソッドを実装している +饹Υ᥽åɤ󥿥եΥ᥽åɤƤ .RE - -.LP -.LP -最初の 2 つのケース (メソッドがオーバーライドしている場合) では、Javadoc ツールは、そのコメントが継承されているかどうかにかかわらず、オーバーライドしているメソッドのドキュメント内に「オーバーライド」という小見出しを生成し、オーバーライドされているメソッドへのリンクを書き込みます。 -.LP -.LP -3 つ目のケース (特定のクラスのメソッドがインタフェースのメソッドを実装している場合) では、javadoc ツールは、オーバーライドしているメソッドのドキュメント内に「定義」という小見出しを生成し、実装されているメソッドへのリンクを書き込みます。これは、コメントが継承されているかどうかにかかわりません。 -.LP -.LP -\f3メソッドの説明が継承されるアルゴリズム\fP \- あるメソッドにドキュメンテーションコメントが記述されていない場合、または {@inheritDoc} タグがある場合、Javadoc ツールは、次のようなアルゴリズムを使用して適切なコメントを検索します。 このアルゴリズムは、もっとも適切なドキュメンテーションコメントを検索できるように設計されており、スーパークラスよりもインタフェースが優先されるようになっています。 -.LP +.LP +ǽ 2 ĤΥ (᥽åɤС饤ɤƤ) ǤϡJavadoc ġϡΥȤѾƤ뤫ɤˤ餺С饤ɤƤ᥽åɤΥɥˡ֥С饤ɡפȤФС饤ɤƤ᥽åɤؤΥ󥯤񤭹ߤޤ +.LP +3 ܤΥ (Υ饹Υ᥽åɤ󥿥եΥ᥽åɤƤ) Ǥϡjavadoc ġϡС饤ɤƤ᥽åɤΥɥˡפȤФƤ᥽åɤؤΥ󥯤񤭹ߤޤϡȤѾƤ뤫ɤˤޤ +.LP +\f3᥽åɤѾ륢르ꥺ\fP \- ᥽åɤ˥ɥơ󥳥ȤҤƤʤ硢ޤ {@inheritDoc} 硢Javadoc ġϡΤ褦ʥ르ꥺѤŬڤʥȤ򸡺ޤ Υ르ꥺϡäȤŬڤʥɥơ󥳥Ȥ򸡺Ǥ褦߷פƤꡢѡ饹⥤󥿥եͥ褵褦ˤʤäƤޤ .RS 3 .TP 3 1. -直接に実装されている (または、拡張されている) インタフェースを、メソッドの宣言で implements (または extends) キーワードのあとに登場する順序で、1 つずつ調べる。このメソッドについて最初に見つかったドキュメンテーションコメントを採用する +ľܤ˼Ƥ (ޤϡĥƤ) 󥿥ե򡢥᥽åɤ implements (ޤ extends) ɤΤȤо줹ǡ1 ĤĴ٤롣Υ᥽åɤˤĤƺǽ˸Ĥäɥơ󥳥ȤѤ .TP 3 2. -手順 1 でドキュメンテーションコメントが見つからなかった場合は、直接実装されている (または、拡張されている) インタフェースのそれぞれに対して、このアルゴリズム全体を再帰的に適用する (その際の順序は、手順 1 でインタフェースを調べたときの順序と同じ) + 1 ǥɥơ󥳥ȤĤʤäϡľܼƤ (ޤϡĥƤ) 󥿥եΤ줾ФơΥ르ꥺΤƵŪŬѤ (κݤνϡ 1 ǥ󥿥եĴ٤ȤνƱ) .TP 3 3. -手順 2 でドキュメンテーションコメントが見つからなかった場合で、このクラスが Object 以外のクラスである (インタフェースではない) 場合は、次のように処理する + 2 ǥɥơ󥳥ȤĤʤäǡΥ饹 Object ʳΥ饹Ǥ (󥿥եǤϤʤ) ϡΤ褦˽ .RS 3 .TP 3 a. -スーパークラスにこのメソッドについてのドキュメンテーションコメントが記述されていれば、そのコメントを採用する +ѡ饹ˤΥ᥽åɤˤĤƤΥɥơ󥳥ȤҤƤСΥȤѤ .TP 3 b. -手順 3a でドキュメンテーションコメントが見つからなかった場合は、スーパークラスに対して、このアルゴリズム全体を適用する + 3a ǥɥơ󥳥ȤĤʤäϡѡ饹ФơΥ르ꥺΤŬѤ .RE .RE - -.LP -.SH "javadoc タグ" -.LP -.LP -Javadoc ツールは、Java のドキュメンテーションコメント内に埋め込まれた特別なタグを解析します。これらのドキュメンテーションタグを使うと、書式の整った完全な API ドキュメントをソースコードから自動的に生成できます。タグは、単価記号 (\f2@\fP) で始まり、大文字と小文字が区別されます。 これらのタグは、定められたとおりの大文字と小文字を使用して記述する必要があります。タグは、行の先頭 (先行する空白と省略可能なアスタリスクは除く) に置かなければなりません。慣例として、同じ名前のタグは 1 か所にまとめて記述するようにします。たとえば、\f2@see\fP タグが複数ある場合は、すべてを 1 か所にまとめて記述します。 -.LP -.LP -タグには 2 つのタイプがあります。 -.LP +.SH "javadoc " +.LP +Javadoc ġϡJava Υɥơ󥳥ޤ줿̤ʥϤޤΥɥơ󥿥Ȥȡ񼰤ä API ɥȤ򥽡ɤ鼫ưŪǤޤϡ֥åȥޡ׵ (\f2@\fP) ǻϤޤꡢʸȾʸζ̤ޤϡʸȾʸѤơɽƤȤϤɬפޤϡԤƬ (ԤȾάǽʥꥹϽ) ֤ʤФʤޤ󡣴ȤơƱ̾Υ 1 ˤޤȤƵҤ褦ˤޤȤС \f2@see\fP Ϥ٤Ʊ֤ޤ +.LP +ˤ 2 ĤΥפޤ .RS 3 .TP 2 o -\f3ブロックタグ\fP \- 主説明に続くタグセクション内にのみ記述可能。ブロックタグは、\f2@tag\fP の形式をとります。 +\f3֥å\fP \- ³ˤΤߵҲǽ֥åϡ \f2@tag\fP ηȤޤ .TP 2 o -\f3インラインタグ\fP \- コメントの主説明内またはブロックタグのコメント内に記述可能。インラインタグは、\f2{@tag}\fP のように中括弧で囲みます。 +\f3饤󥿥\fP \- ⡢ޤϥ֥åΥ˵Ҳǽ饤󥿥ϡ \f2{@tag}\fP.Τ褦̤ǰϤߤޤ .RE - -.LP -.LP -今後のリリースで導入されるタグについては、 +.LP +Υ꡼Ƴ륿ˤĤƤϡ .na -\f2「Proposed Javadoc Tags」\fP @ +\f2Proposed Javadoc Tags\fP @ .fi -http://java.sun.com/j2se/javadoc/proposed\-tags.htmlを参照してください。 -.LP -.LP -現時点で有効なタグは、次のとおりです。 -.LP -.RS 3 - -.LP +http://java.sun.com/j2se/javadoc/proposed\-tags.html򻲾ȤƤ +.LP +ͭʥϡΤȤǤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -1267,7 +848,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f3導入された JDK/SDK のバージョン\fP +\f3Ƴ줿 JDK/SDK ΥС\fP .br .di .nr a| \n(dn @@ -1278,7 +859,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3タグ\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f2@author\fP .if \n(80<\n(38 .nr 80 \n(38 @@ -1373,7 +954,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 1124 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 867 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1392,7 +973,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3タグ\fP\h'|\n(41u' +\&\h'|\n(40u'\f3\fP\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -1486,74 +1067,38 @@ .rm a+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-44 - -.LP -.RE -.LP -カスタムタグについては、\-tag オプションを参照してください。 -.LP +.LP +ॿˤĤƤϡ\-tag ץ򻲾ȤƤ .RS 3 .TP 3 @author\ name\-text -\-author オプションが使われている場合、生成ドキュメントに「著者」の項目を追加し、指定された \f2name\-text\fP を書き込みます。1 つのドキュメンテーションコメントに複数の \f2@author\fP タグを含めることができます。1 つの \f2@author\fP タグに 1 つの名前を指定することも、1 つのタグに複数の名前を指定することもできます。前者の場合は、Javadoc ツールによって、名前と名前の間にコンマ (\f2,\fP) とスペースが挿入されます。後者の場合は、テキスト全体が、解析されることなく、生成ドキュメントにそのままコピーされます。したがって、コンマではなく、各言語に対応した名前区切り文字を使う必要があるときは、1 つのタグに複数の名前を指定してください。 +\-author ץ󤬻ѤƤ硢ꤵ줿 \f2name\-text\fP ޤ [] ȥɥȤɲäޤ1 ĤΥɥơ󥳥Ȥʣ \f2@author\fP ޤ뤳ȤǤޤ1 Ĥ \f2@author\fP 1 Ĥ̾ꤹ뤳Ȥ⡢ʣ̾ꤹ뤳ȤǤޤԤξϡJavadoc ġˤä̾̾δ֤˥ (\f2,\fP) ȶޤԤξϡƥΤϤ뤳ȤʤɥȤˤΤޤޥԡޤäơޤǤϤʤƸб̾ڤʸȤɬפȤϡ1 ĤΥʣ̾ꤷƤ .RE - -.LP -.RS 3 - -.LP -.LP -詳細については、「タグを使用できる場所」および +.LP +ܺ٤ˤĤƤϡ֥ѤǤפ .na -\f2@author タグのドキュメント\fP @ +\f2@author Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@authorを参照してください。 -.LP -.LP - -.LP -.RE +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@author򻲾ȤƤ +.LP .RS 3 .TP 3 -@deprecated\ deprecated\-text -.RS 3 - -.LP -.LP -注: JDK 5.0 から、 -.na -\f2@Deprecated 注釈\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/deprecation.htmlを使って特定のプログラム要素を非推奨にできるようになりました。 -.LP -.RE +@deprecated\ deprecated\-text : @Deprecated ȤäΥץǤ侩ˤǤޤ .RE -.RS 3 - -.LP -.LP -この API は動作し続けますが、この API を使用するべきではないことを示すコメントを追加します。Javadoc ツールは、\f2deprecated\-text\fP を主説明の前に移動してイタリックにし、その前にボールドの警告「推奨されません。」を追加します。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.LP -.LP -\f2deprecated\-text\fP の最初の文では、少なくとも、その API が推奨されなくなった時期と、代替使用するべき API を読者に提示する必要があります。Javadoc ツールは、この最初の文だけを、概要セクションと索引にコピーします。そのあとの文では、その API が推奨されない理由を説明することもできます。また、代わりの API を指し示す \f2{@link}\fP タグ (Javadoc 1.2 以降の場合) を含める必要があります。 次のように記述します。 -.LP -.LP -詳細については、 +.LP + API ư³ޤ API Ѥ٤ǤϤʤȤ򼨤ȤɲäޤJavadoc ġϡ \f2deprecated\-text\fP ˰ưƥåˤ˥ܡɤηٹֿ侩ޤ󡣡פɲäޤΥϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.LP +\f2deprecated\-text\fP κǽʸǤϡʤȤ⡢ API 侩ʤʤäȡػѤ٤ API ɼԤ󼨤ɬפޤJavadoc ġϡκǽʸ򡢳ץȺ˥ԡޤΤȤʸǤϡ API 侩ʤͳ뤳ȤǤޤAPI ؤ \f2{@link}\fP ( Javadoc 1.2 ʹߤξ) ޤ٤Ǥ +.LP +ܺ٤ˤĤƤϡ .na -\f2@deprecated タグのドキュメント\fP @ +\f2@deprecated Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@deprecatedを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@deprecated򻲾ȤƤ .RS 3 .TP 2 o -Javadoc 1.2 以降では、\f2{@link}\fP タグを使用します。これにより、必要な場所にインラインでリンクを作成できます。例を示します。 -.RE - -.LP -.RS 3 - -.LP +Javadoc 1.2 ʹߤǤ \f2{@link}\fP Ѥޤˤꡢɬפʾ˥饤ǥ󥯤ǤޤȤС .nf \f3 .fl @@ -1567,106 +1112,71 @@ .fl \fP .fi -.RE - -.LP -.RS 3 .TP 2 o -Javadoc 1.1 では、各 \f2@deprecated\fP タグに対して \f2@see\fP タグ (インラインにはできない) を記述するのが標準の形式です。 +Javadoc 1.1 ξɸϡ \f2@see\fP (饤Բ) \f2@deprecated\fP Ȥ˺뤳ȤǤ .RE - -.LP -.LP -推奨されないタグについての詳細は、 +.LP +侩ʤˤĤƤξܺ٤ϡ .na -\f2@deprecated タグ\fP @ +\f2@deprecated \fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/index.htmlのドキュメントを参照してください。 -.LP -.LP - -.LP -.RE +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/deprecation/index.htmlΥɥȤ򻲾ȤƤ +.LP .RS 3 .TP 3 {@code\ text} -\f2<code>{@literal}</code>\fP と同等です。 -.RE - -.LP -.RS 3 - -.LP -.LP -テキストを HTML マークアップまたは入れ子になった javadoc タグとして解釈せずに、\f2text\fP を \f2code\fP フォントで表示します。これにより doc コメントでは、パラメータの種類 (\f2<Object>\fP)、不等号 (\f23 < 4\fP)、または矢印 (\f2<\-\fP) などで、HTML エンティティー (\f2<\fP および \f2>\fP) ではなく、通常の山括弧 (\f2<\fP および \f2>\fP) を使用できます。たとえば doc コメントのテキスト -.LP +\f2<code>{@literal}</code>\fP ƱǤ +.LP +ƥȤ \f2HTML ޡå\fP ޤ \f2Ҥˤʤä javadoc \fP ȤƲ᤻ˡtext 򥳡ɥեȤɽޤΤᡢɥơ󥳥̾λ (\f2<\fP \f2>\fP) HTML ƥƥ (\f2<\fP \f2>\fP) ˻ѤǤޤȤСѥ᡼η (\f2<Object>\fP) (\f23 < 4\fP) (\f2<\-\fP) ʤɤǤȤСΥɥơ󥳥 .nf \f3 .fl \fP\f4{@code A<B>C}\fP\f3 .fl + +.fl +\fP +.fi +.LP +ϡ줿 HTML ڡǡΤ褦ˤΤޤɽޤ +.nf +\f3 +.fl + \fP\f4A<B>C\fP\f3 +.fl + +.fl +\fP +.fi +.LP +ܤ٤ϡ \f2<B>\fP ȤƲᤵ줺ΥեȤϥɥեȤˤʤ롢ȤǤ +.LP +ɥեȤʤƱǽ¸ˤϡ\f2{@literal}\fP Ѥޤ +.LP +.TP 3 +{@docRoot} +ڡ鸫ɥȤ () 롼ȥǥ쥯ȥؤХѥɽޤΥϡΥڡҤΥʤɡ뤹٤ƤΥڡ黲ȤեȤ߹ȤǤ̾ϡƥڡβΥڡ˥󥯤ޤ +.LP + \f2{@docRoot}\fP ϡޥɹԤǤɥơ󥳥ǤѤǤޤΥϡ@return@param@deprecated ʤɤǤդΥΥƥʬޤࡢ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.RS 3 +.TP 3 +1. +ޥɹԤǤϡإåեåޤϥܥȥΡȤϼΤ褦ޤ +.nf +\f3 +.fl + javadoc \-bottom '<a href="{@docRoot}/copyright.html">Copyright</a>' +.fl .fl \fP .fi - -.LP -.LP -は、生成された HTML ページで、次のようにそのまま表示されます。 -.LP -.nf -\f3 -.fl - \fP\f4A<B>C\fP\f3 -.fl - -.fl -\fP -.fi - -.LP -.LP -注目すべき点として、\f2<B>\fP は太字であると解釈されませんが、コードフォントになります。 -.LP -.LP -コードフォントなしで同じ機能を実現するには、\f2{@literal}\fP を使用します。 -.LP -.LP - -.LP -.RE -.RS 3 -.TP 3 -{@docRoot} -生成されるページから見た、生成ドキュメントの (生成先の) ルートディレクトリへの相対パスを表します。このタグは、著作権のページや会社のロゴなど、生成されるすべてのページから参照するファイルを組み込むときに便利です。通常は、各ページの下部から著作権のページにリンクします。 -.RE - -.LP -.RS 3 - -.LP -.LP -この \f2{@docRoot}\fP タグは、コマンド行からも、ドキュメンテーションコメントの中でも使用できます。このタグは、@return、@param、@deprecated などの任意のタグのテキスト部分を含む、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.LP -.RS 3 -.TP 3 -1. -コマンド行では、ヘッダー、フッター、またはボトムノートは次のように定義します。 -.nf -\f3 -.fl - javadoc \-bottom '<a href="{@docRoot}/copyright.html">Copyright</a>' -.fl - -.fl -\fP -.fi -.LP -\- \f2{@docRoot}\fP をこのように利用する場合、一部の Makefile プログラムでは、中括弧 { } 文字をエスケープする必要があります。たとえば、Inprise MAKE バージョン 5.2 を Windows 上で実行する場合は、「\f2{{@docRoot}}\fP」のように、中括弧を二重にする必要があります。さらに、\f2\-bottom\fP などのオプションに対する引数を、単一引用符ではなく、二重引用符で囲む必要があります。 \f2href\fP 引数の値を囲む引用符は省略します。 +.LP + \- \f2{@docRoot}\fP Makefile ǤΤ褦Ѥ硢 Makefile ץǤϡ { } ʸ򥨥פɬפޤȤСInprise MAKE С 5.2 Windows Ǽ¹Ԥϡ \f2{{@docRoot}} Τ褦ˡ̤Ťˤɬפޤ\fPˡ \f2\-bottom\fP ʤɤΥץФñǤϤʤŰǰϤɬפ⤢ޤ ( \f2href\fP ΰϤϾά) .TP 3 2. -ドキュメンテーションコメントの中では、次のように使用します。 +ɥơ󥳥ȤǤϡΤ褦˻Ѥޤ .nf \f3 .fl @@ -1676,16 +1186,13 @@ .fl */ .fl - + .fl \fP .fi .RE - -.LP -.LP -このタグが必要な理由は、生成ドキュメントが、サブパッケージと同じ深さを持つ階層構造のディレクトリに格納されるからです。次に例を示します。 -.LP +.LP +ΥɬפͳϡɥȤ֥ѥåƱijع¤Υǥ쥯ȥ˳Ǽ뤫Ǥ򼨤ޤ .nf \f3 .fl @@ -1695,201 +1202,118 @@ .fl \fP .fi - -.LP -.LP -次のように解決されます。 -.LP +.LP +Τ褦˲褵ޤ .nf \f3 .fl - <a href="../../copyright.html"> java/lang/Object.java の場合 + <a href="../../copyright.html"> java/lang/Object.java ξ .fl .fl \fP .fi - -.LP -.LP -および -.LP +.LP + .nf \f3 .fl - <a href="../../../copyright.html"> java/lang/ref/Reference.java の場合 + <a href="../../../copyright.html"> java/lang/ref/Reference.java ξ .fl .fl \fP .fi - -.LP -.LP - -.LP -.RE -.RS 3 +.LP .TP 3 @exception\ class\-name\ description -\f2@exception\fP タグは、\f2@throws\fP タグと同義です。 -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.RE -.RS 3 +\f2@exception\fP \f2@throws\fP ƱǤ +.LP .TP 3 {@inheritDoc}\ -もっとも近い継承可能なクラスまたは実装可能なインタフェースから、このタグの現在のドキュメンテーションコメントに、ドキュメントを継承 (コピー) します。この機能により、より汎用的なコメントを継承ツリーの上位に記述し、コピーしたテキストを使って記述することができます。 -.RE - -.LP -.RS 3 - -.LP -.LP -このタグは、ドキュメンテーションコメントの次の位置でのみ有効です。 -.LP +äȤᤤѾǽʥ饹ޤϼǽʥ󥿥ե顢ΥθߤΥɥơ󥳥ȤˡɥȤѾ (ԡ) ޤεǽˤꡢŪʥȤѾĥ꡼ξ̤˵ҤԡƥȤȤäƵҤ뤳ȤǤޤ +.LP +Υϡɥơ󥳥Ȥμΰ֤ǤΤͭǤ .RS 3 .TP 2 o -メソッドの主説明ブロック内。この場合、主説明は、上位階層のクラスまたはインタフェースからコピーされる +᥽åɤμ֥å⡣ξ硢ϡ̳ؤΥ饹ޤϥ󥿥ե饳ԡ .TP 2 o -メソッドの @return、@param、@throws タグのテキスト引数内。この場合、タグテキストは、上位階層の対応するタグからコピーされる +᥽åɤ @return@param@throws ΥƥȰ⡣ξ硢ƥȤϡ̳ؤб륿饳ԡ .RE - -.LP -.LP -継承階層でコメントを見つける方法に関する正確な説明について、「メソッドコメントの自動コピー」を参照してください。このタグが見つからない場合、コメントは、この節で説明するルールに応じて、自動的に継承されるかどうかが決まります。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +ѾؤǥȤ򸫤Ĥˡ˴ؤΤˤĤơ֥᥽åɥȤμưԡפ򻲾ȤƤΥĤʤ硢Ȥϡ롼˱ơưŪ˷Ѿ뤫ɤޤޤ +.LP .TP 3 -{@link\ \ package.class#member\ \ label}\ -表示テキスト \f2label\fP とのインラインリンクを挿入します。 \f2label\fP は、参照クラスの指定されたパッケージ、クラス、またはメンバーの名前のドキュメンテーションを指し示します。このタグは、@return、@param、@deprecated などの任意のタグのテキスト部分を含む、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -このタグは、\f2@see\fP タグとよく似ています。 どちらのタグも、\f2package.class\fP\f2#\fP\f2member\fP および \f2label\fP の参照の仕方が同じで、有効な構文もまったく同じです。大きな違いは、\f2{@link}\fP は、リンクを [関連項目] セクションに置くのではなく、インラインリンクを生成するということです。また、インラインテキストのほかの部分と区別するために、\f2{@link}\fP タグの最初と最後に中括弧を記述します。ラベルの中で「}」を使う必要がある場合は、HTML エンティティーの「}」を使います。 -.LP -.LP -1 つの文の中で使用できる \f2{@link}\fP タグの数に制限はありません。このタグは、ドキュメンテーションコメントの主説明部分、または @deprecated、@return、@param などの任意のタグのテキスト部分で使うことができます。 -.LP -.LP -たとえば、次のコメントでは \f2getComponentAt(int, int)\fP メソッドを参照しています。 -.LP +{@link\ package.class#member\ label} +ɽƥ \f2label\fP ȤΥ饤󥯤ޤlabel ϡȥ饹λꤵ줿ѥå饹ޤϥС̾ΥɥơؤޤΥϡ@return@param@deprecated ʤɤǤդΥΥƥʬޤࡢ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤ +.LP +Υ \f2@see\fP ˤ褯Ƥޤɤ⡢\f2package.class\fP\f2#\fP\f2member\fP \f2label\fP λȤλƱǡͭʹʸޤäƱǤ礭ʰ㤤ϡ \f2{@link}\fP Ǥϡ[Ϣ] ˥󥯤֤ˡ饤Υ󥯤ȤǤޤ饤ƥȤΤۤʬȶ̤뤿ˡ \f2{@link}\fP κǽȺǸ̤򵭽Ҥޤ٥ǡ}פȤɬפϡHTML ƥƥΡ}פȤޤ +.LP +1 ʸǻѲǽ \f2{@link}\fP ο¤Ϥޤ󡣤Υϡɥơ󥳥Ȥμʬޤ @deprecated@return@param ʤɤǤդΥΥƥʬǻȤȤǤޤ +.LP +ȤСΥȤǤ \f2getComponentAt(int, int)\fP ᥽åɤ򻲾ȤƤޤ .nf \f3 .fl -{@link #getComponentAt(int, int) getComponentAt} メソッドを使用します。 +{@link #getComponentAt(int, int) getComponentAt} ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -標準ドックレットでは、上記のコメントから次の HTML が生成されます (このコメントが同じパッケージの別のクラスを参照している場合)。 -.LP +.LP +ɸɥååȤǤϡ嵭ΥȤ鼡 HTML ޤ (ΥȤƱѥå̤Υ饹򻲾ȤƤ) .nf \f3 .fl -<a href="Component.html#getComponentAt(int, int)">getComponentAt</a> メソッドを使用します。 +<a href="Component.html#getComponentAt(int, int)">getComponentAt</a> ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -この HTML は、Web ページ上では次のように表示されます。 -.LP +.LP + HTML ϡWeb ڡǤϼΤ褦ɽޤ .nf \f3 .fl -getComponentAt メソッドを使用します。 +getComponentAt ᥽åɤѤޤ .fl .fl \fP .fi - -.LP -.LP -\f2{@link}\fP を、ドキュメント化の対象にしていないクラスにまで拡張するには、\f2\-link\fP オプションを使用します。 -.LP -.LP -詳細については、 +.LP +\f2{@link}\fP ĥƥɥȲʤ饹ؤΥ󥯤ǽˤˤϡ\f2\-link\fP ץѤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2{@link} タグのドキュメント\fP @ +\f2{@link} Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#{@link}を参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#{@link}򻲾ȤƤ +.LP .TP 3 {@linkplain\ package.class#member\ label} -リンクのラベルがコードフォントではなくプレーンテキストで表示される点以外は \f2{@link}\fP と同じです。ラベルがプレーンテキストで記述されていると便利です。例: -.RE - -.LP -.RS 3 - -.LP +󥯤Υ٥뤬ɥեȤǤϤʤץ졼ƥȤɽʳ \f2{@link}\fP ƱǤ٥뤬ץ졼ƥȤǵҤƤǤ򻲾ȤƤ: .nf \f3 .fl - {@linkplain add() the overridden method} を参照してください。 + {@linkplain add() the overridden method} 򻲾ȤƤ .fl .fl \fP .fi - -.LP -.LP -これは以下のように表示されます。 -.LP -.RS 3 - -.LP -.LP -the overridden method を参照してください。 -.LP -.RE -.LP - -.LP -.RE -.RS 3 +.LP +ϰʲΤ褦ɽޤ +.LP +the overridden method 򻲾ȤƤ +.LP .TP 3 {@literal\ text} -テキストを HTML マークアップまたは入れ子になった javadoc タグとして解釈せずに、\f2text\fP を表示します。これにより doc コメントでは、パラメータの種類 (\f2<Object>\fP)、不等号 (\f23 < 4\fP)、または矢印 (\f2<\-\fP) などで、HTML エンティティー (\f2<\fP および \f2>\fP) ではなく、通常の山括弧 (\f2<\fP および \f2>\fP) を使用できます。たとえば doc コメントのテキスト -.RE - -.LP -.RS 3 - -.LP +ƥȤ HTML ޡåפޤҤˤʤä javadoc ȤƲ᤻ˡ \f2text\fP ɽޤΤᡢɥơ󥳥̾λ (\f2<\fP \f2>\fP) HTML ƥƥ (\f2<\fP \f2>\fP) ˻ѤǤޤȤСѥ᡼η (\f2<Object>\fP) (\f23 < 4\fP) (\f2<\-\fP) ʤɤǤȤСΥɥơ󥳥 .nf \f3 .fl @@ -1899,40 +1323,22 @@ .fl \fP .fi - -.LP -.LP -は、生成された HTML ページはブラウザで次のようにそのまま表示されます。 -.LP -.LP -\f2\ \ \ \ \ \fPA<B>C -.LP -.LP -注目すべき点として、\f2<B>\fP は太字であると解釈されません (コードフォントにならない)。 -.LP -.LP -コードフォントで同じ機能を実現するには、\f2{@code}\fP を使用します。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +ϡ줿 HTML ڡϥ֥饦ǼΤ褦ˤΤޤɽޤ +.LP +\f2\ \ \ \ \ \fPA<B>C +.LP +ܤ٤ϡ \f2<B>\fP ȤƲᤵ줺ΥեȤϥɥեȤˤʤ롢ȤǤ +.LP +ɥեȤƱǽ¸ˤϡ\f2{@code}\fP Ѥޤ +.LP .TP 3 @param\ parameter\-name description -指定した \f2parameter\-name\fP と指定した \f2description\fP を使用してパラメータを「Parameters」セクションに追加します。doc コメントを記述するときは、\f2description\fP を複数行に続けることができます。このタグは、メソッド、コンストラクタ、またはクラスの doc コメント内でのみ有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2parameter\-name\fP は、メソッドまたはコンストラクタでのパラメータの名前か、クラス、メソッドまたはコンストラクタのタイプパラメータの名前になります。山括弧でパラメータ名を囲むと、型パラメータを使用することを指定します。 -.LP -.LP -クラスの型パラメータの例: -.LP +ꤵ줿 \f2parameter\-name\fP ΤȤ˻ꤵ줿 \f2description\fP ³ѥ᡼[ѥ᡼] ɲäޤɥơ󥳥Ȥ򵭽ҤȤˤϡ \f2description\fP ʣԤˤ錄äƵҤ뤳ȤǤޤΥϡ᥽åɡ󥹥ȥ饯ޤϥ饹 doc ǤΤͭǤ +.LP +\f2parameter\-name\fP ϡ᥽åɤޤϥ󥹥ȥ饯ǤΥѥ᡼̾饹᥽åɤޤϥ󥹥ȥ饯Υץѥ᡼̾ˤʤޤ̤ǥѥ᡼̾Ϥȡѥ᡼Ѥ뤳Ȥ ꤷޤ +.LP +饹ηѥ᡼: .nf \f3 .fl @@ -1950,11 +1356,8 @@ .fl \fP .fi - -.LP -.LP -メソッドの型パラメータの例: -.LP +.LP +᥽åɤηѥ᡼: .nf \f3 .fl @@ -1978,125 +1381,87 @@ .fl \fP .fi - -.LP -.LP -詳細については、 +.LP +ܺ٤ˤĤƤϡ .na -\f2@param タグのドキュメント\fP @ +\f2@param Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@paramを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@param򻲾ȤƤ +.LP .TP 3 @return\ description -[戻り値] セクションを追加して、\f2description\fP のテキストを書き込みます。このテキストでは、戻り値の型と、取り得る値の範囲について記述する必要があります。このタグは、メソッドのドキュメンテーションコメントでのみ有効です。 -.RE - -.LP -.RS 3 - -.LP -.LP -詳細については、 +[] ɲäơ \f2description\fP ΥƥȤ񤭹ߤޤΥƥȤǤϡͤηȡͤϰϤˤĤƵҤɬפޤΥϡ᥽åɤΥɥơ󥳥ȤǤΤͭǤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@return タグのドキュメント\fP @ +\f2@return Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@returnを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@return򻲾ȤƤ +.LP .TP 3 -@see\ \ reference -[関連項目] 見出しを追加し、\f2reference\fP を指すリンクか、またはテキストエントリを書き込みます。1 つのドキュメンテーションコメントには、任意の数の \f2@see\fP タグを指定できます。 すべての \f2@see\fP タグの内容は、同じの見出しの下にグループ化されます。\f2@see\fP タグには、次の 3 種類の形式があります。 もっともよく使われるのは、3 番目の形式です。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。パッケージ、クラス、またはメンバーに対するインラインリンクを文中に挿入する方法は、\f2{@link}\fP を参照してください。 +@see\ reference +ִϢܡ׸Фɲä \f2reference ؤ󥯤ޤϥƥȥȥ񤭹ߤޤ\fPɥơ󥳥ȤˤǤդο \f2@see\fP ޤ뤳ȤǤޤϤ٤ƱФβ˥롼ײޤ \f2@see\fP ˤϡ 3 ηޤäȤ褯ȤΤϡ3 ܤηǤΥϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤѥå饹ޤϥСФ륤饤󥯤ʸˡϡ\f2{@link}\fP 򻲾ȤƤ .RS 3 .TP 3 @see "string" -\f2string\fP のテキストエントリを追加します。リンクは生成されません。\f2string\fP は、書籍または URL ではアクセスできない情報の参照先です。Javadoc ツールは、最初の文字が二重引用符 (\f2"\fP) かどうかを調べて、この形式をほかの 2 つの形式と区別します。例を示します。 +\f2string Υƥȥȥɲäޤ\fP󥯤ޤ \f2string\fP ϡҤޤ URL ǤϥǤʤλǤJavadoc ġϡǽʸŰ (\f2"\fP) ɤĴ٤ơηۤ 2 Ĥηȶ̤ޤȤС .nf \f3 .fl @see "The Java Programming Language" .fl - -.fl -\fP -.fi -.LP -これは次のようなテキストを生成します。 -.RE -.RS 3 -.RS 3 - -.LP -.RS 3 -.TP 3 -関連項目: -The Java Programming Language -.RE - -.LP -.RE -.RE -.TP 3 -@see <a href="URL#value">label</a> -\f2URL\fP#\f2value\fP で定義されたとおりにリンクを追加します。\f2URL\fP#\f2value\fP は、相対 URL または絶対 URL です。Javadoc ツールは、最初の文字が「より小さい」記号 (\f2<\fP) かどうかを調べて、この形式をほかの 2 つの形式と区別します。例を示します。 -.nf -\f3 -.fl - @see <a href="spec.html#section">Java Spec</a> -.fl .fl \fP .fi .LP -これは次のようなリンクを生成します。 -.RS 3 -.RS 3 -.TP 3 -関連項目: -Java Spec -.RE +ϼΤ褦ʥƥȤޤ .RE .RE .RS 3 - -.LP -.LP - -.LP -.RE +.RS 3 +.RS 3 .RS 3 .TP 3 +Ϣ: +The Java Programming Language +.RE +.RE +.TP 3 +@see <a href="URL#value">label</a> +\f2URL\fP#\f2value\fP 줿Ȥ˥󥯤ɲäޤ \f2URL\fP#\f2value\fP URL ޤ URL ǤJavadoc ġϡǽʸ֤꾮׵ (\f2<\fP) ɤĴ٤ơηۤ 2 Ĥηȶ̤ޤȤС +.nf +\f3 +.fl + @see <a href="spec.html#section">Java Spec</a> +.fl +\fP +.fi +ϼΤ褦ʥ󥯤ޤ +.RS 3 +.TP 3 +Ϣ: +Java Spec +.RE +.TP 3 @see\ package.class#member\ label -指定された名前を持つ、参照されている Java 言語のメンバーについてのドキュメントを指すリンクを、表示テキスト \f2label\fP とともに追加します。\f2label\fP は省略可能です。 \f2label\fP を省略すると、リンク先のメンバーの名前が適切に短縮されて表示されます。 「名前が表示される方法」を参照してください。\-noqualifier を使用すると、表示テキストからパッケージ名が全体的に削除されます。ラベルは、自動生成される表示テキストとは異なる表示テキストを指定する場合に使います。 -.LP -バージョン 1.2 だけは、ラベルではなく、名前が <code> HTML タグ内に自動的に表示されます。 1.2.2 からは、ラベルを使用するか、しないかにかかわらず、<code> は常に表示テキストを囲むかたちで、含まれます。 +ĻΥƥ \f2label\fP ĥ󥯤ɲäޤΥ󥯤ϡȤʤ롢ꤵ줿 Java ̾Υɥơؤޤ \f2label\fP ϾάǽǤlabel άȡΥС̾Ŭڤṳ̂ɽޤ ̾ɽˡפ򻲾ȤƤ\-noqualifier ѤȡɽƥȤѥå̾Ū˺ޤ٥ϡưɽƥȤȤϰۤʤɽƥȤꤹ˻Ȥޤ +.LP +С 1.2 ϡ٥ǤϤʤ̾ <code> HTML ˼ưŪɽޤ 1.2.2 ϡ٥Ѥ뤫ʤˤ餺<code> ϾɽƥȤϤफǡޤޤޤ .LP .RS 3 .TP 2 o -\f4package.class\fP\f4#\fP\f4member\fP には、参照されている任意の有効なプログラム要素の名前を指定します。 つまり、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、またはフィールドの名前です。 ただし、メンバー名ーの前のドットは、シャープ記号 (\f2#\fP) で置き換えます。\f2class\fP は、任意のトップレベルまたは入れ子にされたクラスまたはインタフェースを表します。\f2member\fP は、任意のコンストラクタ、メソッドまたはフィールド (入れ子にされたクラスまたはインタフェースではない) を表します。指定した名前が、ドキュメント化されているクラスに含まれている場合、Javadoc ツールは、その名前へのリンクを自動的に作成します。外部参照クラスへのリンクを作成するには、\f2\-link\fP オプションを使います。参照クラスに属していない名前のドキュメントを参照するには、ほかの 2 つの形式の \f2@see\fP タグを使います。この引数については、このあとの「名前の指定」で詳しく説明します。 -.TP 2 -o -\f4label\fP は、省略可能なテキストで、リンクのラベルとして表示されます。\f2label\fP には空白を含めることができます。\f2label\fP を省略すると、\f2package.class.member\fP が、現在のクラスおよびパッケージに応じて適切に短縮されて表示されます。 「名前が表示される方法」を参照してください。 +\f4package.class\fP\f4#\fP\f4member\fP ˤϡȤƤǤդͭʥץǤ̾ꤷޤĤޤꡢѥå饹󥿥ե󥹥ȥ饯᥽åɡޤϥեɤ̾ǤС̾ΥɥåȤϡ㡼׵ (\f2#\fP) ֤ޤ \f2class\fP ϡǤդΥȥåץ٥ޤҤˤ줿饹ޤϥ󥿥եɽޤ \f2member\fP ϡǤդΥ󥹥ȥ饯᥽åɤޤϥե (Ҥˤ줿饹ޤϥ󥿥եǤϤʤ) ɽޤꤷ̾ɥȲƤ륯饹˴ޤޤƤ硢Javadoc ġϡ̾ؤΥ󥯤ưŪ˺ޤȥ饹ؤΥ󥯤ˤϡ\f2\-link\fP ץȤޤΥ饹°Ƥʤ̾Υɥơ򻲾ȤˤϡĤ 2 Ĥ \f2@see\fP ΤΤɤ餫ѤޤΰˤĤƤϡΤȤΡ̾λפǾܤޤ .TP 2 o -空白文字は、\f2package.class\fP\f2#\fP\f2member\fP と \f2label\fP の間の区切り文字です。括弧の内側の空白文字はラベルの先頭とは解釈されないため、メソッドのパラメータ間に空白文字を入れてもかまいません。 +\f4label\fP ϡάǽʥƥȤǡ󥯤Υ٥Ȥɽޤ \f2label\fP ˤ϶ޤ뤳ȤǤޤ \f2label\fP άȡ\f2package.class.member\fP ߤΥ饹ӥѥå˱Ŭڤṳ̂ɽޤ̾ɽˡפ򻲾ȤƤ +.TP 2 +o +򤬡 \f2package.class\fP\f2#\fP\f2member\fP \f2label\fP δ֤ζڤʸˤʤޤ̤¦ζʸϥ٥ƬȤϲᤵʤᡢ᥽åɤΥѥ᡼֤˶ʸƤ⤫ޤޤ .RE .LP -\f3例\fP \- この例では、\f2Character\fP クラスにある \f2@see\fP タグが、\f2String\fP クラスの \f2equals\fP メソッドを参照しています。タグには、名前 \f2String#equals(Object)\fP とラベル \f2equals\fP の両方の引数が含まれています。 -.RS 3 - -.LP +\f3\fP \- Ǥϡ \f2@see\fP ( \f2Character\fP 饹) String 饹 \f2equals\fP ᥽å \f2򻲾\fP ƤޤΥˤ̾\f2String#equals(Object)\fPפȥ٥\f2equals\fPפξΰޤޤƤޤ .nf \f3 .fl @@ -2106,62 +1471,33 @@ .fl */ .fl - -.fl \fP .fi -.RE -.LP -標準ドックレットは、次のような HTML を生成します。 -.RS 3 - -.LP +ɸɥååȤϡΤ褦 HTML ޤ .nf \f3 .fl <dl> .fl -<dt><b>See also:</b> +<dt><b>See Also:</b> .fl <dd><a href="../../java/lang/String#equals(java.lang.Object)"><code>equals<code></a> .fl </dl> .fl - -.fl \fP .fi -.RE -.LP -これは、ブラウザでは次のように表示され、ラベルがリンクテキストになります。 -.RS 3 +ϡ֥饦ǤϼΤ褦ɽ졢٥뤬󥯥ƥȤˤʤޤ .RS 3 .TP 3 -関連項目: +Ϣ: equals .RE -.RE -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.LP -\f3名前の指定\fP \- このタグに指定する \f2package.class\fP\f2#\fP\f2member\fP という名前は、\f2java.lang.String#toUpperCase()\fP のように完全指定することも、\f2String#toUpperCase()\fP や \f2#toUpperCase()\fP のように部分的に指定することもできます。名前が完全指定されていない場合、Javadoc ツールは、Java コンパイラの通常の検索順序でその名前を検索します。詳細は、このあとの「@see の検索順序」を参照してください。名前には、メソッドの複数の引数の間など、括弧の内側であれば空白を含めることができます。 -.LP -.LP -「部分的に指定」した短い名前を指定することの利点は、入力する文字数が減ることや、ソースコードが読みやすくなることです。次の表に、さまざまな形式の名前を示します。 この表の中で、\f2Class\fP にはクラスまたはインタフェースを、\f2Type\fP にはクラス、インタフェース、配列、または基本データ型を、そして \f2method\fP にはメソッドまたはコンストラクタを指定できます。 -.LP -.LP - -.LP -.RE -.RS 3 -.RS 3 +.LP +\f3̾λ\fP \- \f2package.class\fP\f2#\fP\f2member\fP Ȥ̾ϡ \f2java.lang.String#toUpperCase()\fP Τ褦ʴ̾ˤ뤳Ȥ⡢ \f2String#toUpperCase()\fP \f2#toUpperCase()\fP Τ褦̾ˤ뤳ȤǤޤ̾ꤵƤʤ硢Javadoc ġϡJava ѥ̾θǤ̾򸡺ޤܺ٤ϡΤȤΡ@see θפ򻲾ȤƤ̾ˤϡ᥽åɤʣΰδ֤ʤɡ̤¦Ǥжޤ뤳ȤǤޤ +.LP +ʬŪ˻פû̾ꤹ뤳ȤϡϤʸ뤳Ȥ䡢ɤɤߤ䤹ʤ뤳ȤǤɽˡޤޤʷ̾򼨤ޤǡ \f2Class\fP ˤϥ饹ޤϥ󥿥ե \f2Type\fP ˤϥ饹󥿥ե󡢤ޤϴܥǡ \f2method\fP ˤϥ᥽åɤޤϥ󥹥ȥ饯򡢤줾Ǥޤ +.LP .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -2191,7 +1527,7 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f4@see\fP\f3\ \fP\f4package.class#member\fP\f3 の一般的な形式\fP +\f4@see\fP\f3\ \fP\f4package.class#member\fP\f3 ΰŪʷ\fP .br .di .nr a| \n(dn @@ -2207,9 +1543,9 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3現在のクラスのメンバーを参照する\fP +\f3ߤΥ饹ΥС򻲾Ȥ\fP .br -\f2@see\fP\ \f2#\fP\f2field\fP +\f2@see\fP\ \f2#\fP\f2ե\fP .br \f2@see\fP\ \f2#\fP\f2method(Type,\ Type,...)\fP .br @@ -2233,21 +1569,21 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3現在の、またはインポートされたパッケージの別のクラスを参照する\fP +\f3ߤΡޤϥݡȤ줿ѥå̤Υ饹򻲾Ȥ\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2field\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2ե\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2method(Type,\ Type,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2method(Type,\ Type,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2method(Type\ argname,\ Type\ argname,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2method(Type\ argname,\ Type\ argname,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2constructor(Type,\ Type,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2constructor(Type,\ Type,...)\fP .br -\f2@see\fP\ \f2Class\fP\f2#\fP\f2constructor(Type\ argname,\ Type\ argname,...)\fP +\f2@see\fP\ \f2饹\fP\f2#\fP\f2constructor(Type\ argname,\ Type\ argname,...)\fP .br \f2@see\fP\ \f2Class.NestedClass\fP .br -\f2@see\fP\ \f2Class\fP +\f2@see\fP\ \f2饹\fP .br .di .nr c| \n(dn @@ -2263,9 +1599,9 @@ .ll \n(34u*1u/2u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f3別のパッケージの要素を参照する\fP\ (完全修飾) +\f3̤ΥѥåǤ򻲾Ȥ\fP\ () .br -\f2@see\fP\ \f2package.Class\fP\f2#\fP\f2field\fP +\f2@see\fP\ \f2package.Class\fP\f2#\fP\f2ե\fP .br \f2@see\fP\ \f2package.Class\fP\f2#\fP\f2method(Type,\ Type,...)\fP .br @@ -2279,7 +1615,7 @@ .br \f2@see\fP\ \f2package.Class\fP .br -\f2@see\fP\ \f2package\fP +\f2@see\fP\ \f2ѥå\fP .br .di .nr d| \n(dn @@ -2308,7 +1644,7 @@ .nr 40 \n(79+(0*\n(38) .nr 80 +\n(40 .nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 1860 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1358 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2396,74 +1732,52 @@ .rm d+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-58 -.RE -.RE - -.LP -.RS 3 - -.LP -.LP -上の表に対する補足事項を次に示します。 -.LP +.LP +ɽФ­򼡤˼ޤ .RS 3 .TP 2 o -最初の種類の形式 (パッケージとクラスを省略) の場合、Javadoc ツールは、現在のクラスの階層だけを検索します。つまり、現在のクラスかインタフェース、そのスーパークラスかスーパーインタフェース、または現在のクラスかインタフェースを囲んでいるクラスかインタフェースからメンバーを検索します (このあとの検索手順 1 〜 3)。現在のパッケージのほかの部分や、ほかのパッケージは検索しません (検索手順 4 〜 5)。 +ǽμη (ѥåȥ饹ά) ξ硢Javadoc ġϡߤΥ饹γؤ򸡺ޤĤޤꡢߤΥ饹󥿥եΥѡ饹ѡ󥿥եޤϸߤΥ饹󥿥եϤǤ륯饹󥿥եС򸡺ޤ (ΤȤθ 1 3)ߤΥѥåΤۤʬ䡢ۤΥѥåϸޤ ( 4 5) .TP 2 o -メソッドまたはコンストラクタを指定するときに括弧を付けずに名前だけ (\f2getValue\fP など) を使用した場合、同じ名前のフィールドが存在しなければ、Javadoc ツールはそのメソッドに対して正しくリンクを作成します。 ただし、括弧と引数を追加するように促す警告メッセージを出力します。このメソッドがオーバーロードされている場合、Javadoc ツールは、検索で最初に見つかったメソッドにリンクします。 結果は前もって特定できません。 -.TP 2 -o -入れ子にされたクラスは、上記のどの形式の場合も、単に「\f2inner\fP」ではなく、「\f2outer\fP\f2.\fP\f2inner\fP」として指定しなければなりません。 +᥽åɤޤϥ󥹥ȥ饯λˡ \f2getValue\fP Τ褦˳̤ʤ̾Ѥ硢Ʊ̾Υեɤ¸ߤƤʤСJavadoc ġˤäƤ̾ؤΥ󥯤ޤ̤ɲä桼¥ηٹåɽޤΥ᥽åɤСɤƤ硢Javadoc ġϡǺǽ˸Ĥä᥽åɤ˥󥯤ޤ̤äǤޤ .TP 2 o -すでに述べたとおり、クラスとメンバーを区切るために、ドット (\f2.\fP) ではなくシャープ記号 (\f2#\fP) を使用することに注意してください。このように指定すると、Javadoc ツールは、あいまいさを解決できます。 ドットは、クラス、入れ子にされたクラス、パッケージ、およびサブパッケージを区切るためにも使用されます。ただし、Javadoc ツールでは一般に許容範囲が広く、あいまいさがなければ、ドットでも正しく解析されます。 その場合でも警告は表示されます。 +Ҥˤʤä饹ϡ٤ƤηˤĤơ \f2outer\fP\f2.\fP\f2inner\fP Ȥƻꤹɬפޤñ \f2inner\fP ȤϤʤǤ +.TP 2 +o +Ǥ˽Ҥ٤褦ˡ\f2饹ȥСȤδ֤ζڤʸȤƤϡ\fPɥå (\f2.\fP) ǤϤʤ㡼ʸ (#) ѤޤΤ褦˻ꤹȡJavadoc ġϡޤǤޤɥåȤϡ饹Ҥˤ줿饹ѥåӥ֥ѥåڤ뤿ˤѤޤJavadoc ġǤϰ̤˵ϰϤޤʤСɥåȤǤϤޤξǤٹɽޤ .RE - -.LP -.LP -\f3@see の検索順序\fP \- Javadoc ツールは、ソースファイル (.java)、パッケージファイル (package.html または package\-info.java)、または概要ファイル (overview.html) の中に登場する \f2@see\fP タグを処理します。後者の 2 つのファイルでは、完全指定の名前を \f2@see\fP タグに指定しなければなりません。ソースファイルでは、完全指定の名前、または部分指定の名前を指定できます。 -.LP -.LP -Javadoc ツールは、\f2.java\fP ファイル内で完全指定でない名前が記述された \f2@see\fP タグを見つけると、Java コンパイラと同じ順序で指定された名前を検索します。 ただし、Javadoc ツールは、特定の名前空間のあいまいさを検出しません。 これは、ソースコードにこれらのエラーが存在していないことを前提としているためです。この検索順序は、Java 言語仕様第 2 版の第 6 章「Names」で正式に定義されています。Javadoc ツールは、関連するクラスとパッケージ、およびインポートされたクラスとパッケージのすべてから名前を検索します。具体的には、次の順序で検索します。 -.LP +.LP +\f3@see θ\fP \- Javadoc ġϡե (.java)ѥåե (package.html ޤ package\-info.java) ޤϳץե (overview.html) ˴ޤޤ \f2@see\fP ޤԤ 2 ĤΥեǤϡ̾ \f2@see\fP ˻ꤷʤФʤޤ󡣥եǤϡ̾ޤʬ̾Ǥޤ +.LP +Javadoc ġϡǤʤ̾Ҥ줿 \f2@see\fP \f2.java եǸĤȡ\fP Java ѥƱǻꤵ줿̾򸡺ޤ Javadoc ġϡ֤̾Τޤ򸡽Фޤ ϡɤˤΥ顼¸ߤƤʤȤȤƤ뤿ǤθϡJava 2 Ǥ 6 ϡNamesפƤޤJavadoc ġϡϢ륯饹ȥѥåӥݡȤ줿饹ȥѥåΤ٤Ƥ̾򸡺ޤŪˤϡνǸޤ .RS 3 .TP 3 1. -現在のクラスまたはインタフェース +ߤΥ饹ޤϥ󥿥ե .TP 3 2. -外側を囲んでいるクラスとインタフェース (もっとも近いものから検索) +¦ϤǤ륯饹ȥ󥿥ե (äȤᤤΤ鸡) .TP 3 3. -スーパークラスとスーパーインタフェース (もっとも近いものから検索) +ѡ饹ȥѡ󥿥ե (äȤᤤΤ鸡) .TP 3 4. -現在のパッケージ +ߤΥѥå .TP 3 5. -インポートされているパッケージ、クラス、およびインタフェース (import 文の順序に従って検索) +ݡȤƤѥå饹ӥ󥿥ե (import ʸν˽äƸ) .RE - -.LP -.LP -Javadoc ツールは、各クラスについて手順 1 〜 3 を再帰的に適用しながら、一致する名前が見つかるまで検索を続けます。つまり、まず現在のクラスを検索し、次にそのクラスを囲んでいるクラス E を検索し、その次に E のスーパークラスを検索し、さらにその次に E を囲んでいるクラスを検索します。 手順 4 と 5 では、1 つのパッケージ内のクラスまたはインタフェースを検索する順序は決まっていません。 その順序は、個々のコンパイラによって異なります。手順 5 では、Javadoc ツールは、java.lang を検索します。 このパッケージは、すべてのプログラムに自動的にインポートされるからです。 -.LP -.LP -Javadoc ツールは、必ずしもサブクラスを検索するとは限りません。 また、javadoc の実行中にほかのパッケージのドキュメントが生成される場合でも、ほかのパッケージを検索しません。たとえば、\f2@see\fP タグが \f2java.awt.event.KeyEvent\fP クラス内にあって、\f2java.awt\fP パッケージにある名前を参照している場合、Javadoc は、そのクラスがインポートしないかぎりそのパッケージを検索しません。 -.LP -.LP -\f3名前が表示される方法\fP \- \f2label\fP を省略すると、\f2package.class.member\fP が表示されます。一般に、package.class.member は、現在のクラスおよびパッケージに応じて適切に短縮されます。「短縮される」とは、必要最小限の名前だけが表示されるということです。たとえば、\f2String.toUpperCase()\fP メソッドに、同じクラスのメンバーへの参照とほかのクラスのメンバーへの参照が含まれている場合、クラス名が表示されるのは後者のケースだけです (次の表を参照)。 -.LP -.LP -パッケージ名を広域的に削除するには、\-noqualifier を使用します。 +.LP +Javadoc ġϡƥ饹ˤĤƼ 1 3 ƵŪŬѤʤ顢פ̾ĤޤǸ³ޤĤޤꡢޤߤΥ饹򸡺ˤΥ饹ϤǤ륯饹 E 򸡺μ E Υѡ饹򸡺ˤμ E ϤǤ륯饹򸡺ޤ 4 5 Ǥϡ1 ĤΥѥåΥ饹ޤϥ󥿥ե򸡺ϷޤäƤޤ󡣤νϡġΥѥˤäưۤʤޤ 5 ǤϡJavadoc ġϡjava.lang 򸡺ޤΥѥåϡ٤ƤΥץ˼ưŪ˥ݡȤ뤫Ǥ +.LP +Javadoc ġϡɬ⥵֥饹򸡺Ȥϸ¤ޤ󡣤ޤjavadoc μ¹ˤۤΥѥåΥɥȤǤ⡢ۤΥѥå򸡺ޤ󡣤ȤС \f2@see\fP \f2java.awt.event.KeyEvent\fP 饹˴ޤޤƤơ \f2java.awt\fP ѥåΤ̾򻲾ȤƤƤ⡢Υ饹ǤΥѥåݡȤʤꡢjavadoc ϤΥѥåǤθԤޤ +.LP +\f3̾ɽˡ\fP \- \f2label\fP άϡ\f2package.class.member\fP ɽޤ̤ˡpackage.class.member ϡߤΥ饹ӥѥå˱Ŭڤṳ̂ޤṳ̂פȤϡɬ׺Ǿ¤̾ɽȤȤǤȤС \f2String.toUpperCase()\fP ᥽åɤˡƱ饹ΥСؤλȤȤۤΥ饹ΥСؤλȤޤޤƤ硢饹̾ɽΤϸԤΥǤ (ɽ򻲾) +.LP +ѥå̾򹭰Ū˺ˤϡ\-noqualifier Ѥޤ .br - -.LP -.RE -.RS 3 -.RS 3 .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -2493,7 +1807,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f4String.toUpperCase()\fP\f3 での例\fP +\f4String.toUpperCase() Ǥ\fP .br .di .nr a| \n(dn @@ -2509,7 +1823,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが同じクラスのメンバーを参照している +\f2@see\fP Ʊ饹ƱѥåΥС򻲾ȤƤ .br .di .nr b| \n(dn @@ -2525,7 +1839,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2toLowerCase()\fP (クラス名は省略) +\f2toLowerCase()\fP (饹̾Ͼά) .br .di .nr c| \n(dn @@ -2541,7 +1855,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが別のクラスのメンバーを参照している +\f2@see\fP ۤʤ륯饹ƱѥåΥС򻲾ȤƤ .br .di .nr d| \n(dn @@ -2573,7 +1887,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2Character.toLowerCase(char)\fP (パッケージ名は省略し、クラス名を含む) +\f2Character.toLowerCase(char)\fP (ѥå̾Ͼά饹̾ޤ) .br .di .nr f| \n(dn @@ -2589,7 +1903,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(80 .ll \n(80u .in 0 -\f2@see\fP タグが別のクラスのメンバーを参照している +\f2@see\fP ۤʤ륯饹ۤʤѥåΥС򻲾ȤƤ .br .di .nr g| \n(dn @@ -2621,7 +1935,7 @@ .ll \n(34u*1u/4u .if \n(.l<\n(82 .ll \n(82u .in 0 -\f2java.io.File.exists()\fP (パッケージ名とクラス名を含む) +\f2java.io.File.exists()\fP (ѥå̾ȥ饹̾ޤ) .br .di .nr i| \n(dn @@ -2632,7 +1946,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3参照の種類\fP +.nr 38 \w\f3Ȥμ\fP .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 @@ -2654,7 +1968,7 @@ .nr 38 \n(h- .if \n(81<\n(38 .nr 81 \n(38 .nr 82 0 -.nr 38 \w\f3表示される名前\fP +.nr 38 \w\f3ɽ̾\fP .if \n(82<\n(38 .nr 82 \n(38 .82 .rm 82 @@ -2676,7 +1990,7 @@ .nr 42 \n(81+(3*\n(38) .nr 82 +\n(42 .nr TW \n(82 -.if t .if \n(TW>\n(.li .tm Table at line 1958 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 1434 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2695,7 +2009,7 @@ .ta \n(80u \n(81u \n(82u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3参照の種類\fP\h'|\n(41u'\h'|\n(42u'\f3表示される名前\fP +\&\h'|\n(40u'\f3Ȥμ\fP\h'|\n(41u'\h'|\n(42u'\f3ɽ̾\fP .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -2814,22 +2128,14 @@ .rm i+ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-28 -.RE -.RE - -.LP -.RS 3 - -.LP -.LP -\f3@see の例\fP +.LP +\f3@see \fP .br -右側のコメントは、\f2@see\fP タグが別のパッケージ (\f2java.applet.Applet\fP など) のクラス内にある場合に、名前がどのように表示されるかを示しています。 -.LP +¦ΥȤϡ \f2@see\fP \f2java.applet.Applet\fP Τ褦̤ΥѥåΥ饹ˤˡ̾ɤΤ褦ɽ뤫򼨤Ƥޤ .nf \f3 .fl - 関連項目: + Ϣ: .fl @see java.lang.String // String \fP\f3 .fl @@ -2849,121 +2155,68 @@ .fl @see "The Java Programming Language" // "The Java Programming Language" \fP\f3 .fl - -.fl \fP .fi - -.LP -.LP -\f2@see\fP を、ドキュメント化の対象にしていないクラスにまで拡張するには、\f2\-link\fP オプションを使用します。 -.LP -.LP -詳細については、 +\f2@see\fP ĥƥɥȲʤ饹ؤΥ󥯤ǽˤˤϡ\f2\-link\fP ץѤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@see タグのドキュメント\fP @ +\f2@see Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@seeを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@see򻲾ȤƤ .RE -.LP - +.RE .LP .RS 3 .TP 3 @serial\ field\-description | include | exclude -デフォルトの直列化可能フィールドのドキュメンテーションコメントで使用します。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2field\-description\fP (省略可能) では、フィールドの意味を説明し、取り得る値のリストを示す必要があります。必要に応じて、複数の行に渡って説明を記述できます。標準ドックレットは、この情報を、直列化された形式のページに追加します。 -.LP -.LP -クラスを直列化したあとしばらくしてから直列化可能フィールドをクラスに追加した場合、主説明に、追加したバージョンを識別する文を追加する必要があります。 -.LP -.LP -\f2include\fP および \f2exclude\fP 引数は、直列化された形式のページにクラスまたはパッケージを含めるか除外するかを示します。これらの引数には、次のような効果があります。 -.LP +ǥեȤľ󲽲ǽեɤΥɥơ󥳥ȤǻѤޤ +.LP +\f2field\-description\fP (άǽ) Ǥϡեɤΰ̣ͤΥꥹȤ򼨤ɬפޤɬפ˱ơʣιԤϤä򵭽ҤǤޤɸɥååȤϡξľ󲽤줿Υڡɲäޤ +.LP +饹ľ󲽤ȤФ餯Ƥľ󲽲ǽեɤ򥯥饹ɲä硢ˡɲäС̤ʸɲäɬפޤ +.LP +\f2include\fP \f2exclude\fP ϡľ󲽤줿Υڡ˥饹ޤϥѥåޤ뤫뤫򼨤ޤΰˤϡΤ褦ʸ̤ޤ .RS 3 .TP 2 o -\f2Serializable\fP を実装している public または protected クラスは、通常はそのページに含められます。 ただし、そのクラスまたはそのクラスが属するパッケージが \f2@serial exclude\fP で指定されていると、そのページから除外されます。 +\f2Serializable\fP Ƥ public ޤ protected 饹ϡΥ饹 (ޤϤΥѥå) \f2@serial exclude\fP ȤƥޡƤʤꡢޤޤ .TP 2 o -\f2Serializable\fP を実装している private または package private クラスは、通常はそのページから除外されます。 ただし、そのクラスまたはそのクラスが属するパッケージが \f2@serial include\fP で指定されていると、そのページに含められます。 +\f2Serializable\fP Ƥ private ޤ package\-private 饹ϡΥ饹 (ޤϤΥѥå) \f2@serial include\fP Ȥ ޡƤʤꡢޤ .RE - -.LP -.LP -例: \f2javax.swing\fP パッケージは、\f2@serial exclude\fP で指定されています (\f2package.html\fP または \f2package\-info.java\fP 内)。public クラス \f2java.security.BasicPermission\fP は、\f2@serial exclude\fP で指定されています。package private クラス \f2java.util.PropertyPermissionCollection\fP は、\f2@serial include\fP で指定されています。 -.LP -.LP -クラスレベルで指定された @serial タグは、パッケージレベルで指定された @serial タグをオーバーライドします。 -.LP -.LP -これらのタグの使用法についての詳細と使用例は、「Java オブジェクト直列化仕様」の第 1.6 節 +.LP +: \f2javax.swing\fP ѥå \f2@serial exclude\fP ( \f2package.html\fP ޤ \f2package\-info.java\fP) ȤƥޡƤޤpublic 饹 \f2java.security.BasicPermission\fP \f2@serial exclude\fP ȤƥޡƤޤpackage\-private 饹 \f2java.util.PropertyPermissionCollection\fP \f2@serial include\fP ȤƥޡƤޤ +.LP +饹٥ǻꤵ줿 @serial ϡѥå٥ǻꤵ줿 @serial 򥪡С饤ɤޤ +.LP +ΥλˡˤĤƤξܺ٤ȻϡJava ֥ľ󲽻͡פ 1.6 .na -\f2「クラスの直列化可能なフィールドおよびデータの文書化」\fP @ +\f2֥饹ľ󲽲ǽʥեɤӥǡʸ񲽡\fP @ .fi -http://java.sun.com/javase/6/docs/platform/serialization/spec/serial\-arch.htmlを参照してください。また、 +http://java.sun.com/javase/6/docs/platform/serialization/spec/serial\-arch.html򻲾ȤƤޤ .na -\f2「直列化の FAQ」\fP @ -.fi -http://java.sun.com/products/jdk/serialization/faq/#javadoc_warn_missingも参照してください。 この FAQ には、「\-private スイッチを指定しないで javadoc を実行しているのに private フィールドの @serial タグが見つからないという javadoc の警告が表示される」などの一般的な質問への回答が記載されています。直列化形式仕様にクラスを含める場合には、 -.na -\f2「Sun の仕様」\fP @ +\f2ľ󲽤 FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingapispecs/serialized\-criteria.htmlも参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/products/jdk/serialization/faq/#javadoc_warn_missing⻲ȤƤ FAQ ˤϡ\-private åꤷʤ javadoc ¹ԤƤΤ private եɤ @serial ĤʤȤ javadoc ηٹɽפʤɤΰŪʼؤβܤƤޤľ󲽷ͤ˥饹ޤˤϡ +.na +\f2Sun λ͡\fP @ +.fi +http://java.sun.com/j2se/javadoc/writingapispecs/serialized\-criteria.html⻲ȤƤ +.LP .TP 3 @serialField\ field\-name\ field\-type\ field\-description -\f2Serializable\fP クラスの \f2serialPersistentFields\fP メンバーの \f2ObjectStreamField\fP コンポーネントをドキュメント化します。各 \f2ObjectStreamField\fP コンポーネントに対して \f2@serialField\fP タグを 1 つ使う必要があります。 -.RE - -.LP -.RS 3 - -.LP -.LP - -.LP -.RE -.RS 3 +Serializable \f2饹\fP serialPersistentFields \f2С\fP ObjectStreamField ݡͥ \f2ɥȲ\fP ޤ1 Ĥ \f2@serialField\fP \f2ObjectStreamField\fP ݡͥȤǻѤ٤Ǥ +.LP .TP 3 @serialData\ data\-description -\f2data\-description\fP は、直列化された形式でのデータの型と順序を説明するテキストです。このデータには、特に、\f2writeObject\fP メソッドによって書き込まれる省略可能なデータ、および \f2Externalizable.writeExternal\fP メソッドによって書き込まれるすべてのデータ (基底クラスを含む) が含まれます。 -.RE - -.LP -.RS 3 - -.LP -.LP -\f2@serialData\fP タグは、\f2writeObject\fP、\f2readObject\fP、\f2writeExternal\fP、\f2readExternal\fP、\f2writeReplace\fP、および \f2readResolve\fP メソッドのドキュメンテーションコメントで使用できます。 -.LP -.LP - -.LP -.RE -.RS 3 +\f2data\-description\fP ϡľ󲽤줿ǤΥǡηȽƥȤǤŪ˸ȡΥǡˤϡ \f2writeObject\fP ᥽åɤˤäƽ񤭹ޤάǽʥǡ \f2Externalizable.writeExternal\fP ᥽åɤˤäƽ񤭹ޤ뤹٤ƤΥǡ (쥯饹ޤ) ޤޤޤ +.LP +\f2@serialData\fP ϡ \f2writeObject\fP \f2readObject\fP \f2writeExternal\fP \f2readExternal\fP \f2writeReplace\fP \f2readResolve\fP ᥽åɤΥɥơ󥳥ǻѤǤޤ +.LP .TP 3 @since\ since\-text -生成ドキュメントに [導入されたバージョン] 見出しを追加し、指定された \f2since\-text\fP を書き込みます。このテキストには、特別な内部構造はありません。このタグは、すべてのドキュメンテーションコメント、つまり概要、パッケージ、クラス、インタフェース、コンストラクタ、メソッド、およびフィールドで有効です。このタグは、特定の変更または機能が、\f2since\-text\fP に示されたソフトウェアリリース以降、存在していることを意味します。例を示します。 -.RE - -.LP -.RS 3 - -.LP +ɥȤ [Ƴ줿С] Фɲäꤵ줿 \f2since\-text\fP 񤭹ߤޤΥƥȤˤϡ̤¤Ϥޤ󡣤Υϡ٤ƤΥɥơ󥳥ȡĤޤ공סѥå饹󥿥ե󥹥ȥ饯᥽åɡӥեɤͭǤΥϡѹޤϵǽ \f2since\-text ˼줿եȥ꡼ʹߡ¸ߤƤ뤳Ȥ̣ޤ\fPȤС .nf \f3 .fl @@ -2973,52 +2226,26 @@ .fl \fP .fi - -.LP -.LP -Java プラットフォームのソースコードの場合、このタグは、Java プラットフォーム API 仕様のバージョンを示します。 その変更や機能がリファレンス実装に追加された時期を示すとは限りません。複数の @since タグを使用でき、複数の @author タグのように扱われます。プログラム要素が複数の API で使用される場合、複数のタグを使用できます。 -.LP -.LP - -.LP -.RE -.RS 3 +.LP +Java ץåȥեΥɤξ硢ΥϡJava ץåȥե API ͤΥС򼨤ޤѹ䵡ǽե󥹼ɲä줿򼨤Ȥϸ¤ޤʣ @since ѤǤʣ @author Τ褦˰ޤץǤʣ API ǻѤ硢ʣΥѤǤޤ +.LP .TP 3 -@throws\ class\-name\ description\ -\f2@throws\fP タグと \f2@exception\fP タグは同義です。生成ドキュメントに [例外] 小見出しを追加して、\f2class\-name\fP と \f2description\fP テキストを書き込みます。\f2class\-name\fP は、そのメソッドからスローされる可能性のある例外の名前です。このタグは、メソッド、コンストラクタの doc コメント内でのみ有効です。このクラスが完全指定の名前で記述されていない場合、Javadoc ツールは、検索順序に従ってクラスを探します。同じまたは異なる例外の doc コメントで、複数の \f2@throws\fP タグを使用できます。 -.RE - -.LP -.RS 3 - -.LP -.LP -すべてのチェック済み例外がドキュメント化されるようにするために、\f2@throws\fP タグが throws 節内の例外用に存在しない場合は、@throws タグのあるドキュメントであるかのように、Javadoc ツールによって例外が HTML 出力に説明なしで自動的に追加されます。 -.LP -.LP -オーバーライドされるメソッド内で例外が明示的に宣言されている場合のみ、\f2@throws\fP ドキュメンテーションをそのメソッドからサブクラスにコピーされます。インタフェースメソッドから実装メソッドにコピーされる場合も同様です。@throws にドキュメンテーションを継承させるには、{@inheritDoc} を使用できます。 -.LP -.LP -詳細については、 +@throws\ class\-name\ description +\f2@throws\fP \f2@exception\fP ƱǤɥȤˡ㳰׾Фɲäơ \f2class\-name\fP \f2description\fP ΥƥȤ񤭹ߤޤ \f2class\-name\fP ϡΥ᥽åɤ饹ǽΤ㳰̾ǤΥϡ᥽åɡ󥹥ȥ饯 doc ǤΤͭǤΥ饹̾ǵҤƤʤ硢Javadoc ġϡ˽äƥ饹õޤƱޤϰۤʤ㳰 doc Ȥǡʣ \f2@throws\fP ѤǤޤ +.LP +٤ƤΥåѤ㳰ɥȲ褦ˤ뤿ˡ \f2@throws\fP throws 㳰Ѥ¸ߤʤϡ@throws ΤɥȤǤ뤫Τ褦ˡJavadoc ġˤä㳰 HTML ϤʤǼưŪɲäޤ +.LP +С饤ɤ᥽å㳰ŪƤΤߡ \f2@throws\fP ɥơ󤬤Υ᥽åɤ饵֥饹˥ԡޤ󥿥ե᥽åɤ᥽åɤ˥ԡƱͤǤ@throws ˥ɥơѾˤϡ{@inheritDoc} ѤǤޤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@throws タグのドキュメント\fP @ +\f2@throws Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@exceptionを参照してください。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@exception򻲾ȤƤ +.LP .TP 3 {@value\ package.class#field} -\f2{@value}\fP が静的フィールドの doc コメントで 引数なしで使用されている場合、その定数の値が表示されます。 -.RE - -.LP -.RS 3 - -.LP +\f2{@value}\fP Ūեɤ doc Ȥ ʤǻѤƤ硢ͤɽޤ .nf \f3 .fl @@ -3034,11 +2261,8 @@ .fl \fP .fi - -.LP -.LP -任意の doc コメント内で引数 \f2package.class#field\fP ありで使用されている場合は、指定した定数の値が表示されます。 -.LP +.LP +ǤդΥɥơ󥳥ǰ \f2package.class#field\fP ǻѤ줿ϡλꤵ줿ͤɽޤ .nf \f3 .fl @@ -3056,448 +2280,130 @@ .fl \fP .fi - -.LP -.LP -引数 \f2package.class#field\fP は、@see 引数と同一の形式になります。ただし、メンバーが静的フィールドになければならない点が異なります。 -.LP -.LP -これらの定数での値は、 +.LP + \f2package.class#field\fP ϡ@see ƱηˤʤޤСŪեɤˤʤФʤʤۤʤޤ +.LP +Ǥͤϡ .na -\f2定数フィールド値\fP @ +\f2ե\fP @ .fi -http://java.sun.com/javase/6/docs/api/constant\-values.htmlページにも表示されます。 -.LP -.LP - -.LP -.RE -.RS 3 +http://java.sun.com/javase/6/docs/api/constant\-values.htmlڡˤɽޤ +.LP .TP 3 @version\ version\-text -\-version オプションが使われている場合、生成ドキュメントに [バージョン] 小見出しを追加して、指定された \f2version\-text\fP を書き込みます。このタグは、このコードが含まれるソフトウェアの現在のバージョン番号を保持するように意図されています。 これに対し、@since は、このコードが導入されたバージョン番号を保持します。\f2version\-text\fP には、特別な内部構造はありません。バージョンタグを使用できる場所を調べるには、「タグを使用できる場所」を参照してください。 -.RE - -.LP -.RS 3 - -.LP -.LP -1 つのドキュメンテーションコメントに複数の \f2@version\fP タグを含めることができます。必要に応じて、\f2@version\fP タグごとに 1 つのバージョン番号を指定することも、タグごとに複数のバージョン番号を指定することもできます。前者の場合は、Javadoc ツールによって、名前と名前の間にコンマ (\f2,\fP) とスペースが挿入されます。後者の場合は、テキスト全体が、解析されることなく、生成ドキュメントにそのままコピーされます。したがって、コンマではなく、各言語に対応した名前区切り文字を使う必要があるときは、1 つのタグに複数の名前を指定してください。 -.LP -.LP -詳細については、 +\-version ץ󤬻ѤȡɥȤ [С] Фɲäꤵ줿 \f2version\-text\fP 񤭹ߤޤΥϡΥɤޤޤ륽եȥθߤΥСֹݻ褦˰տޤƤޤФ@since ϡΥɤƳ줿Сֹݻޤ \f2version\-text\fP ˤϡ̤¤Ϥޤ󡣥С󥿥ѤǤĴ٤ˤϡ֥ѤǤפ򻲾ȤƤ +.LP +1 ĤΥɥơ󥳥Ȥʣ \f2@version\fP ޤ뤳ȤǤޤ̣ʤϰǡ1 Ĥ \f2@version\fP 1 ĤΥСֹꤹ뤳Ȥ⡢ʣΥСֹꤹ뤳ȤǤޤԤξϡJavadoc ġˤä̾̾δ֤˥ (\f2,\fP) ȶ̾δ֤ޤԤξϡƥΤϤ뤳ȤʤɥȤˤΤޤޥԡޤäơޤǤϤʤƸб̾ڤʸȤɬפȤϡ1 ĤΥʣ̾ꤷƤ +.LP +ܺ٤ˤĤƤϡ .na -\f2@version タグのドキュメント\fP @ +\f2@version Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@versionを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#@version򻲾ȤƤ .RE -.LP .SS -タグを使用できる場所 -.LP -ここでは、タグを使用できる場所について説明します。\f2@see\fP、\f2@since\fP、\f2@deprecated\fP、\f2{@link}\fP、\f2{@linkplain}\fP および \f2{@docroot}\fP のタグは、すべての doc コメントで使用できます。 -.RS 3 - -.LP +ѤǤ +.LP +ǤϡѤǤˤĤޤ٤ƤΥɥơ󥳥ȤǻѲǽʥϼΤȤǤ \f2@see\fP \f2@since\fP \f2@deprecated\fP \f2{@link}\fP \f2{@linkplain}\fP \f2{@docroot}\fP .SS -概要のドキュメンテーションタグ -.LP -.LP -概要タグは、概要ページのドキュメンテーションコメントで使用できるタグです。 このドキュメンテーションコメントは、通常 \f2overview.html\fP という名前ソースファイル内にあります。ほかのドキュメンテーションコメントの場合と同様に、これらのタグは、主説明のあとで使う必要があります。 -.LP -.LP -\f3注\fP \- バージョン 1.2 では、概要ドキュメント内の \f2{@link}\fP タグにバグがあります。テキストは正しく表示されますが、リンクが設定されません。現在のところ、\f2{@docRoot}\fP タグは、概要ドキュメント内では動作しません。 -.LP +פΥɥơ󥿥 +.LP +ץϡץڡΥɥơ󥳥ȤǻѤǤ륿ǤΥɥơ󥳥Ȥϡ̾ \f2overview.html\fP Ȥ̾Υեˤޤ ۤΥɥơ󥳥ȤξƱͤˡΥϡΤȤǻȤɬפޤ +.LP +\f3\fP \- С 1.2 Ǥϡץɥ \f2{@link}\fP ˥ХޤƥȤɽޤ󥯤ꤵޤ󡣸ߤΤȤ \f2{@docRoot}\fP ϡץɥǤưޤ +.LP +\f3ץ\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3概要タグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2279 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3概要タグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-20 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE .SS -パッケージドキュメンテーションタグ -.LP -.LP -パッケージタグは、パッケージのドキュメンテーションコメントで使用できるタグです。 このドキュメンテーションコメントは、\f2package.html\fP または \f2package\-info.java\fP という名前のソースファイル内にあります。ここで使用できる \f2@serial\fP タグは、\f2include\fP または \f2exclude\fP 引数を指定したものだけです。 -.LP +ѥåɥơ󥿥 +.LP +ѥåϡѥåΥɥơ󥳥ȤǻѤǤ륿ǤΥɥơ󥳥Ȥ \f2package.html\fP ޤ \f2package\-info.java\fP Ȥ̾ΥեˤޤǻѤǤ \f2@serial\fP ϡ \f2include\fP ޤ \f2exclude\fP ꤵ줿ΤǤ +.LP +\f3ѥå\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@serial\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3パッケージタグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2315 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3パッケージタグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-22 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE .SS -クラスおよびインタフェースドキュメンテーションタグ -.LP -.LP -次に、クラスまたはインタフェースのドキュメンテーションコメントで使用できるタグを示します。ここで使用できる \f2@serial\fP タグは、\f2include\fP または \f2exclude\fP 引数を指定したものだけです。 -.LP +饹ӥ󥿥եɥơ󥿥 +.LP +ˡ饹ޤϥ󥿥եΥɥơ󥳥ȤǻѤǤ륿򼨤ޤǻѤǤ \f2@serial\fP ϡ \f2include\fP ޤ \f2exclude\fP ꤵ줿ΤǤ +.LP +\f3饹ӥ󥿥ե\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f3クラスおよびインタフェースタグ\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 80 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@serial\fP -.br -\f2@author\fP -.br -\f2@version\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \n(b- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2355 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-26 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@author\fP +.TP 2 +o +\f2@version\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE -\f3次にクラスコメントの例を示します。\fP -.LP +\f3˥饹Ȥ򼨤ޤ\fP .nf \f3 .fl @@ -3533,137 +2439,44 @@ .fl } .fl - -.fl \fP .fi - -.LP .SS -フィールドドキュメンテーションタグ -.LP -.LP -次に、フィールドのドキュメンテーションコメントで使用できるタグを示します。 -.LP +եɥɥơ󥿥 +.LP +ˡեɤΥɥơ󥳥ȤǻѤǤ륿򼨤ޤ +.LP +\f3եɥ\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@serial\fP -.br -\f2@serialField\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@docRoot}\fP -.br -\f2{@value}\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 38 \w\f3フィールドタグ\fP -.if \n(80<\n(38 .nr 80 \n(38 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2436 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f3フィールドタグ\fP -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-24 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@serial\fP +.TP 2 +o +\f2@serialField\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@docRoot}\fP +.TP 2 +o +\f2{@value}\fP .RE -\f3次にフィールドコメントの例を示します。\fP -.LP +\f3˥եɥȤ򼨤ޤ\fP .nf \f3 .fl @@ -3679,170 +2492,50 @@ .fl int x = 1263732; .fl - -.fl \fP .fi - -.LP .SS -コンストラクタおよびメソッドドキュメンテーションタグ -.LP -.LP -次に、コンストラクタまたはメソッドのドキュメンテーションコメント内で表示できるタグを示します。 ただし、\f2@return\fP はコンストラクタでは表示できず、\f2{@inheritDoc}\fP は表示に制限があります。\f2@serialData\fP タグは特定の直列化メソッドの doc コメントでのみ使用できます。 -.LP +󥹥ȥ饯ӥ᥽åɥɥơ󥿥 +.LP +ˡ󥹥ȥ饯ޤϥ᥽åɤΥɥơ󥳥ȤǻѤǤ륿򼨤ޤ \f2@return\fP ϥ󥹥ȥ饯ǤϻѤǤ \f2{@inheritDoc}\fP ˤ¤ޤ \f2@serialData\fP ľ󲽥᥽åɤ doc ȤǤΤ߻ѤǤޤ +.LP +\f3᥽åɤӥ󥹥ȥ饯\fP .RS 3 - -.LP -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 -.nr 34 \n(.lu -.eo -.am 80 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f3メソッドおよびコンストラクタタグ\fP -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 80 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/2u -.if \n(.l<\n(80 .ll \n(80u -.in 0 -\f2@see\fP -.br -\f2@since\fP -.br -\f2@deprecated\fP -.br -\f2@param\fP -.br -\f2@return\fP -.br -\f2@throws\fP と \f2@exception\fP -.br -\f2@serialData\fP -.br -\f2{@link}\fP -.br -\f2{@linkplain}\fP -.br -\f2{@inheritDoc}\fP -.br -\f2{@docRoot}\fP -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.80 -.rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \n(b- -.if \n(80<\n(38 .nr 80 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr TW \n(80 -.if t .if \n(TW>\n(.li .tm Table at line 2503 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(80u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(40u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-30 - -.LP +.TP 2 +o +\f2@see\fP +.TP 2 +o +\f2@since\fP +.TP 2 +o +\f2@deprecated\fP +.TP 2 +o +\f2@param\fP +.TP 2 +o +\f2@return\fP +.TP 2 +o +\f2@throws\fP \f2@exception\fP +.TP 2 +o +\f2@serialData\fP +.TP 2 +o +\f2{@link}\fP +.TP 2 +o +\f2{@linkplain}\fP +.TP 2 +o +\f2{@inheritDoc}\fP +.TP 2 +o +\f2{@docRoot}\fP .RE -\f3次にメソッドのドキュメンテーションコメントの例を示します。\fP -.LP +\f3˥᥽åɤΥɥơ󥳥Ȥ򼨤ޤ\fP .nf \f3 .fl @@ -3874,22 +2567,13 @@ .fl } .fl - -.fl \fP .fi -.RE -.SH "オプション" -.LP -.LP -javadoc ツールは、ドックレットを使って出力を決定します。Javadoc ツールは、\-doclet オプションでカスタムドックレットが指定されている場合以外は、デフォルトの標準ドックレットを使います。Javadoc ツールには、任意のドックレットとともに使用できるコマンド行オプションがあります。 これらのオプションについては、このあとの「Javadoc オプション」で説明します。標準ドックレットでは、このほかに、いくつかの追加のコマンド行オプションが提供されます。 これらのオプションについては、そのあとの「標準ドックレットが提供するオプション」で説明します。どのオプション名も、大文字と小文字が区別されません。 ただし、オプションの引数では、大文字と小文字が区別されます。 -.LP -.LP -オプションを次に示します。 -.LP -.RS 3 - -.LP +.SH "ץ" +.LP +javadoc ġϡɥååȤȤäƽϤꤷޤJavadoc ġϡ\-doclet ץǥɥååȤꤵƤʳϡǥեȤɸɥååȤȤޤJavadoc ġˤϡǤդΥɥååȤȤȤ˻ѤǤ륳ޥɹԥץ󤬤ޤΥץˤĤƤϡΤȤΡJavadoc ץפޤɸɥååȤǤϡΤۤˡĤɲäΥޥɹԥץ󶡤ޤΥץˤĤƤϡΤȤΡɸɥååȤ󶡤륪ץפޤɤΥץ̾⡢ʸȾʸ̤ޤ󡣤ץΰǤϡʸȾʸ̤ޤ +.LP +ץϼΤȤǤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -4043,6 +2727,8 @@ .br \-\f2sourcepath\fP .br +\-sourcetab +.br \-splitindex .br \-stylesheetfile @@ -4055,6 +2741,8 @@ .br \-tagletpath .br +\-top +.br \-title .br \-use @@ -4101,7 +2789,7 @@ .nr 42 \n(81+(3*\n(38) .nr 82 +\n(42 .nr TW \n(82 -.if t .if \n(TW>\n(.li .tm Table at line 2680 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 2009 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4157,54 +2845,49 @@ .rm b+ .rm c+ .TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-123 - -.LP -.RE -.LP -\f2イタリック\fPで示されたオプションは、Javadoc の基本オプションであり、Javadoc ツールのフロントエンドによって提供され、すべてのドックレットで使用できます。標準ドックレット自体は、イタリックでないオプションを提供します。 -.LP +.if \n-(b.=0 .nr c. \n(.c-\n(d.-127 +.LP +\f2å\fP Ǽ줿ץϡJavadoc δܥץǤꡢJavadoc ġΥեȥɤˤä󶡤졢٤ƤΥɥååȤǻѤǤޤɸɥååȼΤϡåǤʤץ󶡤ޤ .SS -Javadoc オプション -.LP +Javadoc ץ .RS 3 .TP 3 \-overview \ path/filename -Javadoc に対して、\f2path/filename\fP で指定された「ソース」ファイルから概要ドキュメント用のテキストを取得し、そのテキストを概要ページ (\f2overview\-summary.html\fP) に配置するように指定します。\f2path/filename\fP は、\f2\-sourcepath\fP への相対パスです。 -.LP -\f2filename\fP と \f2path\fP には、それぞれ任意の名前と場所を指定できますが、通常は、\f2overview.html\fP という名前を付けて、ソースツリー内の最上位のパッケージディレクトリがあるディレクトリに配置します。この場所に配置すると、\f2\-sourcepath\fP によってこのファイルが指し示されるので、パッケージをドキュメント化する際に \f2path\fP が不要になります。たとえば、\f2java.lang\fP パッケージのソースツリーが \f2/src/classes/java/lang/\fP の場合、概要ファイルを \f2/src/classes/overview.html\fP に配置できます。「使用例」を参照してください。 -.LP -\f2path/filename\fP で指定するファイルについては、「概要コメントファイル」を参照してください。 -.LP -概要ページが作成されるのは、Javadoc に複数のパッケージ名を渡した場合だけです。詳細は、「HTML フレーム」を参照してください。 -.LP -概要ページのタイトルは、\f2\-doctitle\fP によって設定されます。 +Javadoc Фơ\f2path/filename\fP ǻꤵ줿֥ץե뤫鳵ץɥѤΥƥȤΥƥȤץڡ (\f2overview\-summary.html\fP) ֤褦˻ꤷޤ \f2path/filename\fP ϡȥǥ쥯ȥ꤫ХѥǤ +.LP +\f2filename\fPǤդ̾Ѥ\f2path\fP Ǥդ򤹤뤳ȤǽǤ̾ \f2overview.html\fP Ȥ̾դĥ꡼κǾ̥ѥåǥ쥯ȥޤǥ쥯ȥ֤ޤξ֤ȡѥåɥȲȤ \f2path\fP ꤹɬפʤʤޤʤʤ顢 \f2\-sourcepath\fP ˤäƤΥե뤬ؤ뤫ǤȤС \f2java.lang\fP ѥåΥĥ꡼ \f2/src/classes/java/lang/\fP ξ硢ץե \f2/src/classes/overview.html\fP ֤Ǥޤֻפ򻲾ȤƤ +.LP +\f2path/filename\fP ǻꤹեˤĤƤϡֳץȥեפ򻲾ȤƤ +.LP +ץڡΤϡJavadoc ʣΥѥå̾ϤǤܺ٤ϡHTML ե졼פ򻲾ȤƤ +.LP +ץڡΥȥϡ\f2\-doctitle\fP ˤäꤵޤ .LP .TP 3 \-public -public クラスおよびメンバーだけを表示します。 +public 饹ӥСɽޤ .LP .TP 3 \-protected -protected および public のクラスとメンバーだけを表示します。これはデフォルトの設定です。 +protected public Υ饹ȥСɽޤ줬ǥեȤǤ .LP .TP 3 \-package -package、protected、および public のクラスとメンバーだけを表示します。 +packageprotected public Υ饹ȥСɽޤ .LP .TP 3 \-private -すべてのクラスとメンバーを表示します。 +٤ƤΥ饹ȥСɽޤ .LP .TP 3 \-help -オンラインヘルプを表示します。 Javadoc とドックレットのコマンド行オプションが一覧表示されます。 +饤إפɽޤJavadoc ȥɥååȤΥޥɹԥץ󤬰ɽޤ .LP .TP 3 \-doclet\ class -ドキュメントの生成に使うドックレットを起動するためのクラスファイルを指定します。完全指定の名前を指定してください。このドックレットにより、出力の内容と形式が定義されます。\f4\-doclet\fP オプションが使われていない場合、Javadoc は、標準ドックレットを使ってデフォルトの HTML 形式を生成します。このクラスには、\f2start(Root)\fP メソッドが含まれていなければなりません。この起動クラスへのパスは、\f2\-docletpath\fP オプションによって定義されます。 -.LP -たとえば、MIF ドックレットを呼び出すには、次のように指定します。 +ɥȤ˻ȤɥååȤư뤿Υ饹եꤷޤ̾ꤷƤΥɥååȤˤꡢϤƤȷޤ\f4\-doclet\fP ץ󤬻ȤƤʤ硢Javadoc ϡɸɥååȤȤäƥǥեȤ HTML ޤΥ饹ˤ \f2start(Root)\fP ޤޤƤɬפޤεư饹ؤΥѥ \f2\-docletpath\fP ץˤäޤ +.LP +ȤСMIF ɥååȤƤӽФˤϡΤ褦˻ꤷޤ .nf \f3 .fl @@ -4213,17 +2896,17 @@ \fP .fi .LP -特定のドックレットを実行した完全な例については、 +ΥɥååȤ¹ԤˤĤƤϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ .LP .TP 3 \-docletpath\ classpathlist -\f2\-doclet\fP オプションで指定されているドックレット開始クラスファイル、およびそれが依存するすべての jar ファイルへのパスを指定します。開始クラスファイルが jar ファイル内にある場合、以下の例のように jar ファイルのパスが指定されます。絶対パスまたは現在のディレクトリからの相対パスを指定できます。\f2classpathlist\fP には、複数のパスまたは JAR ファイルを含めることができます。 その場合、各パスまたは JAR ファイルを、Solaris の場合にはコロン (:)、Windows の場合にはセミコロン (;) で区切ります。目的のドックレット開始クラスがすでに検索パス内にある場合は、このオプションは不要です。 -.LP -jar ファイルへのパスの例には、ドックレット開始クラスファイルが含まれています。jar ファイル名が含まれている点に注目してください。 +\f2\-doclet\fP ץǻꤵ줿ɥååȳϥ饹ե롢 ӤΥ饹¸뤹٤Ƥ JAR եؤΥѥꤷޤϥ饹ե뤬 jar եˤ硢ʲΤ褦 jar եΥѥꤵޤХѥޤϸߤΥǥ쥯ȥ꤫ХѥǤޤ \f2classpathlist\fP ˤϡʣΥѥޤ JAR եޤ뤳ȤǤޤ ξ硢ƥѥޤ JAR եSolaris ξˤϥ (:)Windows ξˤϥߥ (;) ǶڤޤŪΥɥååȳϥ饹Ǥ˸ѥˤϡΥץפǤ +.LP +jar եؤΥѥˤϡɥååȳϥ饹ե뤬ޤޤƤޤjar ե̾ޤޤƤܤƤ .nf \f3 .fl @@ -4231,7 +2914,7 @@ .fl \fP .fi -ドックレット開始クラスファイルのパスの例。クラスファイル名が省略されている点に注目してください。 +ɥååȳϥ饹եΥѥ㡣饹ե̾άƤܤƤ .nf \f3 .fl @@ -4239,212 +2922,40 @@ .fl \fP .fi -特定のドックレットを実行した完全な例については、 +ΥɥååȤ¹ԤˤĤƤϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ .LP .TP 3 \-1.1 -\f2この機能は、Javadoc 1.4 では削除されました。代替機能はありません。このオプションは、Javadoc 1.1 によって生成されるのと同じ外見と機能を持つドキュメントを作成するためのものでした。 入れ子のクラスはサポートされていません。このオプションが必要な場合は、Javadoc 1.2 または 1.3 を使用してください。\fP +\f2εǽ Javadoc 1.4 ޤصǽϤޤ󡣤ΥץϡJavadoc 1.1 ˤäΤƱȵǽĥɥȤ뤿ΤΤǤҤΥ饹ϥݡȤƤޤ󡣤ΥץɬפʾϡJavadoc 1.2 ޤ 1.3 ѤƤ\fP .LP .TP 3 \-source release -受け付けるソースコードのバージョンを指定します。\f2release\fP には次の値を指定できます。 -.LP -.TS -.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 -.de 35 -.ps \n(.s -.vs \n(.vu -.in \n(.iu -.if \n(.u .fi -.if \n(.j .ad -.if \n(.j=0 .na -.. -.nf -.nr #~ 0 -.if n .nr #~ 0.6n -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.fc -.nr 33 \n(.s -.rm 80 81 -.nr 34 \n(.lu -.eo -.am 81 -.br -.di a+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.5 で導入された総称および他の言語機能を含んだコードを受け付けます。\f3\-source\fP フラグを指定しないと、コンパイラはデフォルトとして 1.5 の動作をします。 -.br -.di -.nr a| \n(dn -.nr a- \n(dl -.. -.ec \ -.eo -.am 81 -.br -.di b+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.4 で導入された、アサーションを含むコードを受け付けます。 -.br -.di -.nr b| \n(dn -.nr b- \n(dl -.. -.ec \ -.eo -.am 81 -.br -.di c+ -.35 -.ft \n(.f -.ll \n(34u*1u/3u -.if \n(.l<\n(81 .ll \n(81u -.in 0 -Javadoc は、JDK 1.3 以降に導入されたアサーション、総称、または他の言語機能をサポートしません。 -.br -.di -.nr c| \n(dn -.nr c- \n(dl -.. -.ec \ -.35 -.nf -.ll \n(34u -.nr 80 0 -.nr 31 0 -.nr 32 0 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.5\fP -.if \n(32<\n(38 .nr 32 \n(38 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.4\fP -.if \n(32<\n(38 .nr 32 \n(38 -.nr 38 \w\f31 -.if \n(31<\n(38 .nr 31 \n(38 -.nr 38 \w.3\fP -.if \n(32<\n(38 .nr 32 \n(38 -.80 -.rm 80 -.nr 60 \n(31 -.nr 38 \n(60+\n(32 -.if \n(38>\n(80 .nr 80 \n(38 -.if \n(38<\n(80 .nr 60 +(\n(80-\n(38)/2 -.nr 81 0 -.81 -.rm 81 -.nr 38 \n(a- -.if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \n(b- -.if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \n(c- -.if \n(81<\n(38 .nr 81 \n(38 -.35 -.nf -.ll \n(34u -.nr 38 1n -.nr 79 0 -.nr 40 \n(79+(0*\n(38) -.nr 80 +\n(40 -.nr 60 +\n(40 -.nr 41 \n(80+(3*\n(38) -.nr 81 +\n(41 -.nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 2790 file Input is too wide - \n(TW units -.fc   -.nr #T 0-1 -.nr #a 0-1 -.eo -.de T# -.ds #d .d -.if \(ts\n(.z\(ts\(ts .ds #d nl -.mk ## -.nr ## -1v -.ls 1 -.ls -.. -.ec -.ne \n(a|u+\n(.Vu -.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.5\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.a+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(b|u+\n(.Vu -.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.4\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.b+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.ne \n(c|u+\n(.Vu -.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) -.ta \n(60u \n(80u \n(81u -.nr 31 \n(.f -.nr 35 1m -\&\h'|\n(40u'\f31.3\fP\h'|\n(41u' -.mk ## -.nr 31 \n(## -.sp |\n(##u-1v -.nr 37 \n(41u -.in +\n(37u -.c+ -.in -\n(37u -.mk 32 -.if \n(32>\n(31 .nr 31 \n(32 -.sp |\n(31u -.fc -.nr T. 1 -.T# 1 -.35 -.rm a+ -.rm b+ -.rm c+ -.TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-14 -.LP -javac でコードをコンパイルするときに使用した値に対応する \f2release\fP の値を使用します。 +դ륽ɤΥСꤷޤ\f2release\fP ˤϼͤǤޤ +.RS 3 +.TP 2 +o +\f31.5\fP \- javadoc ϡJDK 1.5 Ƴ줿Τʤɤθ쵡ǽޤॳɤդޤ\f3\-source\fP ե饰ѤʤäΥѥΥǥեưϡ1.5 ΤΤˤʤޤ +.TP 2 +o +\f31.4\fP Javadoc ϡJDK 1.4 Ƴ줿ޤॳɤդޤ +.TP 2 +o +\f31.3\fP Javadoc ϡJDK 1.3 ʹߤƳ줿Ρޤ¾θ쵡ǽ򥵥ݡȤޤ +.RE +.LP +javac ǥɤ򥳥ѥ뤹Ȥ˻Ѥͤб \f2release\fP ͤѤޤ .LP .TP 3 \-sourcepath\ sourcepathlist -\f2javadoc\fP コマンドにパッケージ名または \f2\-subpackages\fP を渡すときに、ソースファイル (\f2.java\fP) を検索するためのパスを指定します。\f2sourcepathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパス以下のすべてのサブディレクトリを検索します。このオプションを使って、ドキュメント化されるソースファイルの位置だけでなく、それ自体はドキュメント化されないがドキュメント化されるソースファイルから継承されたコメントを持つソースファイルの位置も確認できます。 -.LP -\f2\-sourcepath\fP オプションは、javadoc コマンドにパッケージ名を渡すときにだけ使用できます。 \f2javadoc\fP コマンドに渡される \f2.java\fP ファイルは、このパスからは検索されません。\f2.java\fP ファイルを検索するには、そのファイルのあるディレクトリに cd によって移動するか、または各ファイルの先頭にパスを含めます (「1 つ以上のクラスのドキュメント化」を参照)。\f2\-sourcepath\fP が省略された場合、Javadoc は、クラスパスを使ってソースファイルを検索します (\-classpath を参照)。したがって、デフォルトの \-sourcepath は、クラスパスの値です。\-classpath も省略してパッケージ名を Javadoc に渡すと、Javadoc は現在のディレクトリおよびそのサブディレクトリからソースファイルを検索します。 -.LP -\f2sourcepathlist\fP には、ドキュメント化するパッケージ名のソースツリーのルートディレクトリを設定します。たとえば、\f2com.mypackage\fP というパッケージをドキュメント化する場合に、そのソースファイルが次の場所にあるとします。 +ѥå̾ޤ \-subpackages javadoc ޥɤϤȤϡե (.\f2.java\fP) 򸫤Ĥ뤿 \f2ѥ\fP \f2ޤ\fP \f2sourcepathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤJavadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤΥץȤäơɥȲ륽եΰ֤Ǥʤ켫ΤϥɥȲʤɥȲ륽ե뤫Ѿ줿Ȥĥեΰ֤ǧǤޤ +.LP +\f2\-sourcepath\fP ץѤǤΤϡjavadoc ޥɤ˥ѥå̾ϤǤΥѥϡjavadoc ޥɤϤ줿 \f2.java\fP ե \f2\fP ޤ \f2.java\fP ե򸡺ˤϡΥեΤǥ쥯ȥ cd ˤäưư뤫ޤϳƥեƬ˥ѥޤޤ (1 İʾΥ饹ΥɥȲפ򻲾) \f2\-sourcepath\fP ά줿硢Javadoc ϡ饹ѥȤäƥե򸡺ޤ (\-classpath 򻲾)äơǥեȤ \-sourcepath ϡ饹ѥͤǤ\-classpath άƥѥå̾ Javadoc ϤȡJavadoc ϸߤΥǥ쥯ȥꤪӤΥ֥ǥ쥯ȥ꤫饽ե򸡺ޤ +.LP +\f2sourcepathlist\fP ˤϡɥȲѥå̾Υĥ꡼Υ롼ȥǥ쥯ȥꤷޤȤС \f2com.mypackage\fP Ȥ̾ΥѥåɥȲˡΥե뤬ξˤȤޤ .nf \f3 .fl @@ -4452,16 +2963,16 @@ .fl \fP .fi -この場合、次のようにして \f2sourcepath\fP を \f2/home/user/src\fP、つまり \f2com/mypackage\fP を含むディレクトリに指定し、それからパッケージ名 \f2com.mypackage\fP を指定します。 +ΤȤΤ褦ˡ \f2sourcepath\fP com/mypackage ޤǥ쥯ȥǤ \f2/home/user/src\fP ˻ꤷȡ ѥå̾ \f2com.mypackage\fP ꤷޤ .nf \f3 .fl % \fP\f3javadoc \-sourcepath /home/user/src/ com.mypackage\fP .fl .fi -この方法は、ソースパスの値とパッケージ名を連結して、ドットを (円記号) 「\\」に変えると、パッケージのフルパス (C:\\user\\src\\com\\mypackage) になることを理解すると簡単です。\f2/home/user/src/com/mypackage\fP. -.LP -2 つのソースパスを設定するには、次のようにします。 +ˡϡѥͤȥѥå̾Ϣ뤷ơɥåȤ (ߵ) \\פѤȡѥåΥեѥ \f2/home/user/src/com/mypackage ˤʤ뤳Ȥ򤹤ȴñǤ\fP +.LP +2 ĤΥѥꤹˤϡΤ褦ˤޤ .nf \f3 .fl @@ -4471,132 +2982,124 @@ .LP .TP 3 \-classpath\ classpathlist -Javadoc が参照クラス (\f2.class\fP ファイル) を検索するパスを指定します。 参照クラスとは、ドキュメント化されるクラスとそれらのクラスによって参照されるすべてのクラスのことです。\f2classpathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパスの以下すべてのサブディレクトリを検索します。\f2classpathlist\fP を指定するときは、 +javadoc ȥ饹 (\f2.class\fP ե) θԤȤ˻Ѥѥꤷޤȥ饹ȤϡɥȲ륯饹ȡΥ饹黲Ȥ뤹٤ƤΥ饹ؤޤ\f2classpathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤ Javadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤclasspathlist ꤹȤϡ .na -\f2クラスパス\fP @ +\f2饹ѥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#generalのドキュメントにある指示に従ってください。 -.LP -\f2\-sourcepath\fP が省略されている場合、Javadoc ツールは、\f2\-classpath\fP を使って、クラスファイルだけでなくソースファイルも検索します (下位互換性のため)。したがって、ソースファイルとクラスファイルを別々のパスから検索する必要がある場合は、\f2\-sourcepath\fP と \f2\-classpath\fP の両方を使います。 -.LP -たとえば、\f2com.mypackage\fP をドキュメント化する場合に、ソースファイルがディレクトリ \f2/home/user/src/com/mypackage\fP にあり、このパッケージが \f2/home/user/lib\fP 内のライブラリを使うのであれば、次のように指定します。 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#generalΥɥȤˤؼ \f2˽äƤ\fP +.LP +\f2\-sourcepath\fP άȡJavadoc ġϥ饹ե򸡺ȤǤʤե򸡺Ȥˤ \f2\-classpath\fP Ѥޤ (̸ߴΤ)äơեȥ饹ե̡Υѥ鸡ɬפϡ \f2\-sourcepath\fP \f2\-classpath ξȤޤ\fP. +.LP +ȤС \f2com.mypackage\fP ɥȲˡΥե뤬ǥ쥯ȥ \f2/home/user/src/com/mypackage\fP ˳ǼƤꡢΥѥå \f2/home/user/lib\fP Υ饤֥˰¸ƤȤޤΤȤΤ褦˻ꤷޤ .nf \f3 .fl % \fP\f3javadoc \-classpath /home/user/lib \-sourcepath /home/user/src com.mypackage\fP .fl .fi -ほかのツールと同様に、\f2\-classpath\fP が指定されていない場合は、CLASSPATH 環境変数が設定されていれば、Javadoc ツールはこの環境変数を使います。どちらも設定されていない場合、Javadoc ツールは現在のディレクトリからクラスを検索します。 -.LP -Javadoc ツールは拡張機能クラスおよびブートストラップクラスに関連しているため、Javadoc ツールが \f2\-classpath\fP を使用してユーザークラスを検索する方法についての詳細は、 +\f2\-classpath\fP ꤵʤä硢Javadoc ġϤۤΥġƱCLASSPATH ĶѿꤵƤФͤѤޤɤꤵƤʤ硢Javadoc ġϸߤΥǥ쥯ȥ꤫饯饹򸡺ޤ +.LP +Javadoc ġ뤬 \f2\-classpath\fP Ѥƥ桼饹򸡺ˡˤĤơĥ饹֡ȥȥåץ饹ȴϢդƤꤹˤϡ .na -\f2「クラスの検索方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.htmlをご覧ください。 -.LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html򻲾ȤƤ +.LP +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡ \f2.jar\fP ޤ \f2.JAR\fP ĥҤ˻ĥǥ쥯ȥΤ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤̤ȤʤޤΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ* \f2饹ѥȥϡ\fP ȥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .LP .TP 3 \-subpackages\ \ package1:package2:... -ソースファイルから指定されたパッケージおよびそのサブパッケージ内に再帰的にドキュメントを生成します。このオプションは、ソースコードに新しいサブパッケージを追加する際に便利です。新しいサブパッケージは自動的に組み込まれます。各 \f2package\fP 引数は、任意の最上位サブパッケージ (\f2java\fP など) または完全指定のパッケージ (\f2javax.swing\fP など) になります。ソースファイルを含める必要はありません。引数は、コロンで区切られます (すべてのオペレーティングシステム)。ワイルドカードは不要です (使用不可)。パッケージの検索場所を指定するには、\f2\-sourcepath\fP を使用します。このオプションは、「ソースファイルの処理」で説明したとおり、ソースツリーにあるがパッケージには属していないソースファイルを処理しないので役立ちます。 -.LP -例を示します。 +ե뤫ꤵ줿ѥåӤΥ֥ѥå˺ƵŪ˥ɥȤޤΥץϡɤ˿֥ѥåɲäݤǤ֥ѥåϼưŪȤ߹ޤޤ \f2package\fP ϡǤդκǾ̥֥ѥå ( \f2java\fP ʤ) ޤϴѥå ( \f2javax.swing\fP ʤ) ˤʤޤեޤɬפϤޤ󡣰ϡǶڤޤ (٤ƤΥڥ졼ƥ󥰥ƥ)磻ɥɤפǤ (Բ)ѥåθꤹˤϡ\f2\-sourcepath\fP ѤޤΥץϡ֥եνפȤꡢĥ꡼ˤ뤬ѥåˤ°ƤʤեʤΤΩޤ +.LP +ȤС .nf \f3 .fl % \fP\f3javadoc \-d docs \-sourcepath /home/user/src \-subpackages java:javax.swing\fP .fl .fi -このコマンドは、「java」および「javax.swing」という名前のパッケージとこれらのサブパッケージ全部のドキュメントを生成します。 -.LP -\f2\-exclude\fP とともに \f2\-subpackages\fP を使用すると、特定のパッケージを除外できます。 +Υޥɤϡjavaפӡjavax.swingפȤ̾ΥѥåȤΥ֥ѥåΥɥȤޤ +.LP +\f2\-subpackages\fP \f2\-exclude\fP Ȥ߹碌ƻѤȡΥѥåǤޤ .LP .TP 3 \-exclude\ \ packagename1:packagename2:... -指定されたパッケージとそのサブパッケージを \f2\-subpackages\fP によって作成されたリストから無条件に除外します。過去の \f2\-subpackages\fP オプションの指定によって組み込まれたパッケージ、または将来組み込まれるパッケージも除外の対象となります。例を示します。 +ꤵ줿ѥåȤΥ֥ѥå \f2\-subpackages\fP ˤäƺ줿ꥹȤ̵˽ޤ \f2\-subpackages\fP ץλˤäȤ߹ޤ줿ѥåޤϾȤ߹ޤѥåоݤȤʤޤ 򼨤ޤ .nf \f3 .fl % \fP\f3javadoc \-sourcepath /home/user/src \-subpackages java \-exclude java.net:java.lang\fP .fl .fi -このうち、\f2java.io\fP、\f2java.util\fP、\f2java.math\fP は組み込まれますが、\f2java.net\fP と \f2java.lang\fP 以下のパッケージは除外されます。ただし、\f2java.lang\fP のサブパッケージである \f2java.lang.ref\fP は除外されます。 +ξ硢 \f2java.io\fP \f2java.util\fP \f2java.math\fP ʤɤޤ졢 \f2java.net\fP \f2java.lang\fP 롼Ȥ˻ĥѥåޤξ硢 \f2java.lang\fP Υ֥ѥåǤ \f2java.lang.ref\fP դƤ .LP .TP 3 \-bootclasspath\ classpathlist -ブートクラスが存在するパスを指定します。ブートクラスとは、通常、Java プラットフォームのコアクラスのことです。ブートクラスパスは、Javadoc ツールがソースファイルとクラスファイルを探すときに使う検索パスの一部です。詳細は、 +֡ȥ饹¸ߤѥꤷޤ֡ȥ饹Ȥϡ̾Java ץåȥեΥ饹ΤȤǤ֡ȥ饹ѥϡJavadoc ġ뤬եȥ饹եõȤ˻ȤѥΰǤܺ٤ϡ .na -\f2「javac と javadoc がクラスを検索する方法」\fP @ +\f2֥饹θˡ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfilesを参照してください。\f2classpathlist\fP 内の複数のディレクトリは、コロン (:) で区切ります。 +http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfiles򻲾ȤƤ (:) \f2classpathlist\fP Υǥ쥯ȥ֤ζڤʸȤƻѤޤ .LP .TP 3 \-extdirs\ dirlist -拡張機能クラスが存在するディレクトリを指定します。拡張機能クラスとは、Java 拡張機能機構を使うすべてのクラスです。extdirs は、Javadoc ツールがソースファイルとクラスファイルを探すときに使う検索パスの一部です。詳細は、前述の \f2\-classpath\fP を参照してください。\f2dirlist\fP 内の複数のディレクトリは、コロン (:) で区切ります。 +ĥǽ饹¸ߤǥ쥯ȥꤷޤĥǽ饹ȤϡJava ĥǽȤ٤ƤΥ饹Ǥextdirs ϡJavadoc ġ뤬եȥ饹եõȤ˻ȤѥΰǤܺ٤ϡҤ \f2\-classpath\fP 򻲾ȤƤ (:) \f2dirlist\fP Υǥ쥯ȥ֤ζڤʸȤƻѤޤ .LP .TP 3 \-verbose -javadoc の実行中に詳細なメッセージを表示します。verbose オプションを指定しないと、ソースファイルのロード時、ドキュメントの生成時 (ソースファイルごとに 1 つのメッセージ)、およびソート時にメッセージが表示されます。verbose オプションを指定すると、各 Java ソースファイルの解析に要した時間 (ミリ秒単位) など、追加のメッセージが表示されます。 +javadoc μ¹˾ܺ٤ʥåɽޤverbose ץꤷʤȡեΥɻɥȤ (ե뤴Ȥ 1 ĤΥå)ӥȻ˥åɽޤverbose ץꤹȡ Java եβϤפ (ߥñ) ʤɡɲäΥåɽޤ .LP .TP 3 \-quiet -エラーメッセージまたは警告メッセージ以外のメッセージを抑制し、警告とエラーだけが表示されるようにして、これらを特定しやすくします。バージョン文字列も抑制します。 +顼åޤϷٹåʳΥåٹȥ顼ɽ褦ˤơꤷ䤹ޤСʸޤ .LP .TP 3 \-breakiterator\ -英語言語というロケール固有のアルゴリズムではなく、 +ѸκǽʸꤹݤˡѸѤΥͭΥ르ꥺǤϤʤ .na \f2java.text.BreakIterator\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/text/BreakIterator.html の国際化された文境界を使用して、英文の最初の文の終わりを判断します (他のすべてのロケールはすでに \f2BreakIterator\fP を使用)。\f2「最初の文」\fPとは、パッケージ、クラス、またはメンバーの主説明での最初の文のことです。この文は、パッケージ、クラス、またはメンバーの要約にコピーされ、アルファベット順のインデックスにコピーされます。 -.LP -JDK 1.2 以降、BreakIterator クラスは、英語を除くすべての言語の文の終わりを判断するために、すでに使用されています。したがって、1.2 以降では、\f2\-breakiterator\fP オプションは英文以外には効果がありません。英文には、次のような独自のデフォルトのアルゴリズムがあります。 +http://java.sun.com/javase/6/docs/api/java/text/BreakIterator.html ιݲ줿ʸѤޤ (ۤΤ٤ƤΥǤϤǤ \f2BreakIterator\fP ѤƤ)\f2ֺǽʸ\fPȤϡѥå饹ޤϥСμǤκǽʸΤȤǤʸϡѥå饹ޤϥС˥ԡ졢ե٥åȽΥǥå˥ԡޤ +.LP +JDK 1.2 ʹߡBreakIterator 饹ϡѸ٤ƤθʸνȽǤ뤿ˡǤ˻ѤƤޤäơ \f2\-breakiterator\fP ץϡ1.2 ʹߤǤϱʸʳˤϸ̤ޤ󡣱ʸˤϡΤ褦ȼΥǥեȤΥ르ꥺबޤ .RS 3 .TP 2 o -英文のデフォルトの文区切りアルゴリズム \- 空白または HTML ブロックタグ (\f2<P>\fP など) が続くピリオドで停止する +ʸΥǥեȤʸڤꥢ르ꥺ \- ޤ HTML ֥å ( \f2<P>\fP ʤ) ³ԥꥪɤߤ .TP 2 o -breakiterator 文区切りアルゴリズム \- 一般に、次の語が大文字で始まる場合、空白文字が続くピリオド、疑問符、または感嘆符で停止する。このアルゴリズムでは、ほとんどの省略表記が処理される (「The serial no. is valid」は処理されるが「Mr. Smith」は処理されない)。HTML タグや、数字または記号で始まる文では停止しない。HTML タグに埋め込まれている場合でも、「../filename」の最後のピリオドで停止する +breakiterator ʸڤꥢ르ꥺ \- ̤ˡθ줬ʸǻϤޤ硢ʸ³ԥꥪɡ䡢ޤϴòߤ롣Υ르ꥺǤϡThe serial no. is validפʤɡۤȤɤξάɽޤMr. SmithפʤɤϽޤHTML 䡢ޤϵǻϤޤʸǤߤʤHTML ޤƤǤ⡢../filenameפκǸΥԥꥪɤߤ .RE -.RS 3 - -.LP -.LP -注: 1.5.0 からは、1.4.x に設けられていた breakiterator 警告メッセージを削除し、デフォルトの文区切りアルゴリズムを変更していません。つまり、\\\-breakiterator オプションは、1.5.0 ではデフォルトではなくなり、またデフォルトにするつもりもありません。これは、「次のメジャーリリース」(1.5.0) でデフォルトを変更するという、以前の目的とは逆になっています。つまり、ソースコードを変更せず、1.4.x での breakiterator 警告を除去していない場合でも、1.5.0 からは何もする必要がなく、警告は消滅しています。 この逆戻りの理由は、breakiterator をデフォルトにするメリットよりも、デフォルトにするために必要となる、互換性のないソースの変更の方が負担が大きかったためです。この件で皆様に余分の手間をおかけし、混乱を招いたことをお詫びいたします。 -.LP -.RE +.LP +: 1.5.0 ϡ1.4.x ߤƤ breakiterator ٹåǥեȤʸڤꥢ르ꥺѹƤޤ󡣤Ĥޤꡢ\\\-breakiterator ץϡ1.5.0 ǤϥǥեȤǤϤʤʤꡢޤǥեȤˤĤ⤢ޤ󡣤ϡּΥ᥸㡼꡼(1.5.0) ǥǥեȤѹȤŪȤϵդˤʤäƤޤĤޤꡢɤѹ1.4.x Ǥ breakiterator ٹƤʤǤ⡢1.5.0 ϲ⤹ɬפʤٹϾǤƤޤεͳϡbreakiterator ǥեȤˤåȤ⡢ǥեȤˤ뤿ɬפȤʤ롢ߴΤʤѹô礭äǤηdzͤ;ʬμ֤򤪤򾷤ȤͤӤޤ .TP 3 \-locale\ language_country_variant -.RS 3 -.LP -\f3重要\fP \- \f2\-locale\fP オプションは、標準ドックレットが提供するすべてのオプション、またはその他の任意のドックレットの提供するすべてのオプションより前 (左側) に指定する必要があります。そうしないと、ナビゲーションバーが英語で表示されます。このコマンド行オプションだけは、指定する順序に依存します。 -.LP -.RE -.LP -Javadoc がドキュメントを生成するときに使うロケールを指定します。引数には、java.util.Locale のドキュメントで説明されているロケールの名前を指定します。たとえば、\f2en_US\fP (英語、米国)、\f2en_US_WIN\fP (Windows で使われる英語) などを指定します。 -.LP -ロケールを指定すると、指定したロケールのリソースファイルが Javadoc によって選択されて、メッセージ (ナビゲーションバー、リストと表の見出し、ヘルプファイルの目次、stylesheet.css のコメントなどの文字列) のために使われます。また、アルファベット順にソートされるリストのソート順、および最初の文の末尾を判別するための文の区切り文字も、指定したロケールによって決まります。ただし、このオプションは、ドキュメント化されるクラスのソースファイル内で指定されているドキュメンテーションコメントのテキストのロケールを決定するものではありません。 +.LP +\f3\fP \- \f2\-locale\fP ץϡ\f2ɸɥååȤ󶡤뤹٤ƤΥץ\fPޤϤ¾ǤդΥɥååȤ󶡤뤹٤ƤΥץ (¦) ˻ꤹɬפޤʤȡʥӥСѸɽޤΥޥɹԥץϡꤹ˰¸ޤ +.LP +Javadoc ɥȤȤ˻ȤꤷޤΰϼΤ褦ʡjava.util.Locale ΥɥơƤ̾Ǥ \f2en_US\fP (Ѹ졢ƹ) ޤ \f2en_US_WIN\fP (Windows ǻѤѸ) +.LP +ꤹȡꤷΥ꥽ե뤬 Javadoc ˤä򤵤ơå (ʥӥСꥹȤɽθФإץեܼstylesheet.css ΥȤʤɤʸ) Τ˻Ȥޤޤե٥åȽ˥ȤꥹȤΥȽ硢ӺǽʸȽ̤뤿ʸζڤʸ⡢ꤷˤäƷޤޤΥץϡɥȲ륯饹ΥեǻꤵƤɥơ󥳥ȤΥƥȤΥꤹΤǤϤޤ .LP .TP 3 \-encoding\ name -ソースファイルのエンコーディングの名前 (\f2EUCJIS/SJIS\fP など) を指定します。このオプションが指定されていない場合は、プラットフォームのデフォルトコンバータが使われます。 -.LP -\-docencoding および \-charset も参照してください。 +եΥ󥳡ǥ󥰤̾ ( \f2EUCJIS/SJIS\fP ʤ) ꤷޤ Υץ󤬻ꤵƤʤϡץåȥեΥǥեȥСȤޤ +.LP +\-docencoding \-charset ⻲ȤƤ .LP .TP 3 \-Jflag -javadoc を実行する実行時システム java に、\f2flag\fP を直接渡します。\f2J\fP と \f2flag\fP の間に空白を入れてはなりません。たとえば、生成ドキュメントを処理するためにシステムで 32M バイトのメモリーを確保しておく必要がある場合は、Java の \f2\-Xmx\fP オプションを次のように呼び出します。 \f2\-Xms\fP は、省略可能です。 これは、初期メモリーのサイズを設定するだけのオプションで、必要なメモリーの最小サイズがわかっている場合に便利です。 +javadoc ¹Ԥ¹Իƥ java ˡ\f2flag\fP ľϤޤ \f2J\fP \f2flag\fP δ֤˶ʤ褦դƤȤСɥȤνѤȤ32M ХȤΥ꡼򥷥ƥdzݤƤɬפˤϡjava \f2\-Xmx\fP ץ򼡤Τ褦˸ƤӽФޤ\f2\-Xms\fP ϾάǽǤϡ꡼νꤹΥץǡ꡼κɬ̤狼äƤǤ .nf \f3 .fl % \fP\f3javadoc \-J\-Xmx32m \-J\-Xms32m\fP \f3com.mypackage\fP .fl .fi -使用している javadoc のバージョンを確認するには、次のように java の「\f2\-version\fP」オプションを呼び出します。 +ѤƤ javadoc ΥСǧˤϡΤ褦 Java \f2\-version\fPץƤӽФޤ .nf \f3 .fl @@ -4607,17 +3110,16 @@ Classic VM (build JDK\-1.2\-V, green threads, sunwjit) .fl .fi -出力ストリームには標準ドックレットのバージョン番号が含まれます。 +ϥȥ꡼ˤɸɥååȤΥСֹ椬ޤޤޤ .RE .SS -標準ドックレットが提供するオプション -.LP +ɸɥååȤ󶡤륪ץ .RS 3 .TP 3 \-d\ directory -生成された HTML ファイルを保存する生成先ディレクトリを指定します(「d」は「生成先 (destination)」の意味)。このオプションを省略すると、生成されたファイルは現在のディレクトリに保存されます。値 \f2directory\fP には、絶対ディレクトリ、または現在の作業ディレクトリからの相対ディレクトリを指定できます。バージョン 1.4 では、javadoc を実行すると生成先ディレクトリが自動的に作成されます。 -.LP -たとえば、次の例では、\f2com.mypackage\fP パッケージのドキュメントを生成し、結果を \f2/home/user/doc/\fP ディレクトリに保存します。 +줿 HTML ե¸ǥ쥯ȥꤷޤ(dפϡ (destination)פΰ̣)Υץάȡ줿եϸߤΥǥ쥯ȥ¸ޤ \f2directory\fP ˤϡХǥ쥯ȥꡢޤϸߤκȥǥ쥯ȥ꤫Хǥ쥯ȥǤޤС 1.4 Ǥϡjavadoc ¹Ԥǥ쥯ȥ꤬ưŪ˺ޤ +.LP +Ȥмξ硢ѥå \f2com.mypackage\fP ΥɥȤ졢η̤ \f2/home/user/doc/\fP ǥ쥯ȥ¸ޤ .nf \f3 .fl @@ -4627,50 +3129,50 @@ .LP .TP 3 \-use -ドキュメント化されるクラスおよびパッケージごとに 1 つの [使用] ページを組み込みます。このページには、その特定のクラスまたはパッケージの API を使っているパッケージ、クラス、メソッド、コンストラクタ、およびフィールドが記述されます。たとえば、クラス C を例にとると、クラス C を使っているものとしては、C のサブクラス、C として宣言されているフィールド、C を返すメソッド、および、型 C のパラメータを持つメソッドとコンストラクタがあります。 -.LP -たとえば、String の [使用] ページに何が表示されるかを見てみましょう。\f2java.awt.Font\fP クラスの \f2getName()\fP メソッドは、\f2String\fP 型を返します。したがって、\f2getName()\fP は \f2String\fP を使っているので、\f2String\fP の [使用] ページにはこのメソッドがあります。 -.LP -ただし、ドキュメント化されるのは API の使用だけであって、実装はドキュメント化されません。あるメソッドが、その実装の中で \f2String\fP を使っていても、引数として文字列をとったり、文字列を返したりしない場合は、\f2String\fP の「使用」とはみなされません。 -.LP -生成された [使用] ページにアクセスするには、目的のクラスまたはパッケージに移動し、ナビゲーションバーの [使用] リンクをクリックします。 +ɥȲ륯饹ӥѥåȤ 1 ĤΡֻѡץڡȤ߹ߤޤΥڡˤϡΥ饹ޤϥѥå API ȤäƤѥå饹᥽åɡ󥹥ȥ饯ӥեɤҤޤȤС饹 C ˤȤȡ饹 C ȤäƤΤȤƤϡC Υ֥饹C ȤƤեɡC ֤᥽åɡӡ C Υѥ᡼ĥ᥽åɤȥ󥹥ȥ饯ޤ +.LP +ȤСString [] ڡ˲ɽ뤫򸫤Ƥߤޤ礦java.awt.Font 饹 \f2getName()\fP ᥽åɤϡ \f2String\fP ͤ \f2֤ޤ\fPäơ \f2getName()\fP \f2String\fP ѤƤΤǡString [] ڡ \f2Υ᥽åɤɽޤ\fP +.LP +ɥȲΤ API λѤǤäơϥɥȲޤ󡣤᥽åɤμ \f2String\fP ȤäƤƤ⡢ȤʸȤäꡢʸ֤ꤷʤϡ \f2String\fP ΡֻѡפȤϤߤʤޤ +.LP +줿 [] ڡ˥ˤϡŪΥ饹ޤϥѥå˰ưʥӥС [] 󥯤򥯥åޤ .TP 3 \-version -生成ドキュメントに、@version のテキストを組み込みます。このテキストは、デフォルトでは省略されます。使用している Javadoc ツールのバージョンを確認するには、\f2\-J\-version\fP オプションを使用します。 +ɥȤˡ@version ΥƥȤȤ߹ߤޤΥƥȤϡǥեȤǤϾάޤѤƤ Javadoc ġΥСǧˤ \f2\-J\-version\fP ץѤޤ .LP .TP 3 \-author -生成ドキュメントに、@author のテキストを組み込みます。 +ɥȤˡ@author ΥƥȤȤ߹ߤޤ .LP .TP 3 \-splitindex -索引ファイルをアルファベットごとに複数のファイルに分割し、文字ごとに 1 つのファイルと、アルファベット以外の文字で始まる索引エントリ用に 1 つのファイルを作成します。 +ե򥢥ե٥åȤȤʣΥեʬ䤷ʸȤ 1 ĤΥեȡե٥åȰʳʸǻϤޤȥѤ 1 ĤΥեޤ .LP .TP 3 \-windowtitle\ title -HTML の <title> タグに配置するタイトルを指定します。指定したタイトルは、ウィンドウのタイトルや、このページに対して作成されたブラウザのブックマーク (お気に入り) に表示されます。このタイトルには HTML タグを含めないでください。 タイトルに HTML タグが含まれていると、ブラウザがタグを正しく解釈できません。\f2title\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。\-windowtitle が省略されている場合、Javadoc ツールは、このオプションの代わりに \-doctitle の値を使います。 +HTML <title> ֤륿ȥꤷޤꤷȥϡɥΥȥ䡢ΥڡФƺ줿֥饦Υ֥åޡ () ɽޤΥȥˤ HTML ޤʤǤȥ HTML ޤޤƤȡ֥饦Ǥޤ\f2title\fP ǰȤϡ򥨥פɬפޤ\-windowtitle άƤ硢Javadoc ġϡΥץ \-doctitle ͤȤޤ .nf \f3 .fl - % \fP\f3javadoc \-windowtitle "Java 2 Platform" com.mypackage\fP + % \fP\f3javadoc \-windowtitle "Java SE Platform" com.mypackage\fP .fl .fi .TP 3 \-doctitle\ title -概要ファイルの最上部の近くに配置するタイトルを指定します。タイトルは中央揃えになり、レベル 1 の見出しとして、上部ナビゲーションバーのすぐ下に置かれます。\f2title\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2title\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ץեκǾζ᤯֤륿ȥꤷޤȥ·ˤʤꡢ٥ 1 θФȤơʥӥСΤ֤ޤ\f2title\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2title\fP ǰȤϡ򥨥פɬפޤ .nf \f3 .fl - % \fP\f3javadoc \-doctitle "Java (TM)" com.mypackage\fP + % \fP\f3javadoc \-doctitle "Java(TM)" com.mypackage\fP .fl .fi .TP 3 \-title\ title -\f3このオプションは、現在は存在しません。\fPJavadoc 1.2 のベータ版にだけ存在しました。このオプションは、\f2\-doctitle\fP という名前に変更されました。名前を変更した理由は、このオプションが、ウィンドウのタイトルではなくドキュメントのタイトルを定義することを明確にするためです。 +\f3ΥץϤ⤦¸ߤƤޤ\fPΥץ Javadoc 1.2 Υ١Ǥˤ¸ߤƤޤǤΥץ̾ \f2\-doctitle\fP ѹޤ̾ѹͳϡΥץ󤬡ɥΥȥǤϤʤɥȤΥȥ뤳ȤΤˤ뤿Ǥ .LP .TP 3 \-header\ header -各出力ファイルの上端に配置するヘッダーテキストを指定します。ヘッダーは、上部ナビゲーションバーの右側に配置されます。\f2header\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2header\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեξü֤إåƥȤꤷޤإåϡʥӥСα¦֤ޤ\f2header\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2header\fP ǰȤϡ򥨥פɬפޤ .nf \f3 .fl @@ -4680,73 +3182,77 @@ .LP .TP 3 \-footer\ footer -各出力ファイルの下端に配置するフッターテキストを指定します。フッターは、下部ナビゲーションバーの右側に配置されます。 \f2footer\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2footer\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեβü֤եåƥȤꤷޤեåϡʥӥСα¦֤ޤ\f2footer\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ\f2footer\fP ǰȤϡ򥨥פɬפޤ +.LP +.TP 3 +\-top +ƽϥեξü֤ƥȤꤷޤ .LP .TP 3 \-bottom\ text -各出力ファイルの最下部に配置するテキストを指定します。このテキストは、下部ナビゲーションバーより下の、ページの最下部に配置されます。\f2text\fP には、HTML タグと空白を含めることができますが、これらを含める場合は、全体を引用符で囲まなければなりません。\f2text\fP の中で引用符を使う場合は、引用符をエスケープする必要があります。 +ƽϥեκDz֤ƥȤꤷޤΥƥȤϡʥӥС겼ΡڡκDz֤ޤ \f2text\fP ˤϡHTML ȶޤ뤳ȤǤޤޤϡΤǰϤޤʤФʤޤ󡣰 \f2text\fP ǻѤ硢򥨥פʤФʤʤǽޤ .LP .TP 3 \-link\ extdocURL -javadoc により生成された既存の外部参照クラスのドキュメンテーションへのリンクを作成します。引数を 1 つとります。 +javadoc ˤ줿¸γȥ饹ΥɥơؤΥ󥯤ޤ 1 ĤȤޤ .LP .RS 3 .TP 2 o -\f4extdocURL\fP は、リンク先として指定する、javadoc によって生成された外部ドキュメントを含むディレクトリの絶対 URL または相対 URL です。あとで例を示します。このディレクトリ内にパッケージリストファイルが存在していなければなりません。 存在しない場合は、\f2\-linkoffline\fP を使用します。Javadoc ツールは、\f2パッケージリスト\fPファイルからパッケージ名を読み取り、これらのパッケージをその URL にリンクします。Javadoc ツールを実行すると、作成される \f2<A HREF>\fP リンク内に \f2extdocURL\fP の値がそのままコピーされます。したがって、\f2extdocURL\fP はファイルへの URL ではなく「ディレクトリへの URL」でなければなりません。 -.LP -\f2extdocURL\fP への絶対リンクを使用すると、ユーザーのドキュメントを任意の Web サイト上のドキュメントにリンクできます。 相対位置へリンクするだけでよい場合は相対リンクを使用できます。相対リンクを使用する場合、\f2\-d\fP を使って、生成先ディレクトリからリンクされるパッケージのあるディレクトリの相対パスを指定する必要があります。 -.LP -通常、絶対リンクを指定する場合は、\f2http:\fPリンクを使用します。Web サーバーを持たないファイルシステムにリンクする場合は、\f2file:\fP リンクを使用できます。ただし、この方法は、すべてのユーザーが生成された同じファイルシステムを共有するドキュメントにアクセスする必要がある場合以外は使用しないでください。 -.LP -いかなる場合にも、いかなるオペレーティングシステムでも、絶対 URL か相対 URL か、「http:」ベースか「file:」ベースかにかかわらず、スラッシュを区切り文字として使用します ( +\f4extdocURL\fP ϡȤƻꤹ롢javadoc ˤä줿ɥȤޤǥ쥯ȥ URL ޤ URL ǤȤ򼨤ޤΥǥ쥯ȥ˥ѥåꥹȥե뤬¸ߤƤʤФʤޤ ¸ߤʤϡ\f2\-linkoffline\fP ѤޤJavadoc ġϡ \f2package\-list\fP ե뤫ѥå̾ɤ߼äȡ URL ǤΥѥå˥󥯤ޤJavadoc ġμ¹Իˡ\f2extdocURL\fP ͤΤޤޡ줿 \f2<A HREF>\fP ˥ԡޤäơ\f2extdocURL\fP ϥեؤ URL ǤϤʤ֥ǥ쥯ȥؤ URLפǤʤФʤޤ +.LP +\f2extdocURL\fP ؤХ󥯤Ѥȡ桼ΥɥȤǤդ Web ȾΥɥȤ˥󥯤Ǥޤа֤إ󥯤Ǥ褤Х󥯤ѤǤޤХ󥯤ξ硢桼Ϥͤϡ( \f2\-d\fP ǻꤵ줿) ǥ쥯ȥ꤫顢Ȥʤѥåޤǥ쥯ȥؤХѥˤ٤Ǥ +.LP +̾Х󥯤ꤹϡ \f2http:\fP 󥯤ѤޤWeb Сʤե륷ƥ˥󥯤ϡ \f2file: 󥯤ѤǤޤ\fP ˡϡ٤ƤΥ桼줿Ʊե륷ƥͭɥȤ˥ɬפʳϻѤʤǤ +.LP +٤Ƥξ硢٤ƤΥڥ졼ƥ󥰥ƥǡ URL URLhttp:ץ١ȡfile:ץ١ˤ餺åڤʸȤƻѤޤ ( .na \f2URL Memo\fP @ .fi -http://www.ietf.org/rfc/rfc1738.txt で指定)。 +http://www.ietf.org/rfc/rfc1738.txt ǻ) .RS 3 .TP 3 -http:ベースの絶対リンク: +http: ١Х: \f2\-link http://<host>/<directory>/<directory>/.../<name>\fP .TP 3 -file:ベースの絶対リンク: +file: ١Х: \f2\-link file://<host>/<directory>/<directory>/.../<name>\fP .TP 3 -相対リンク: +Х: \f2\-link <directory>/<directory>/.../<name>\fP .RE .RE .LP -javadoc の実行時に複数の \f2\-link\fP オプションを指定して、複数のドキュメントへのリンクを作成することもできます。 \f3\-linkoffline または \-link の選択\fP +javadoc 1 μ¹Ԥʣ \f2\-link\fP ץꤹСʣΥɥȤؤΥ󥯤Ǥޤ \f3\-linkoffline ޤ \-link \fP .br -\f2\-link\fP を使用する場合: +\f2\-link\fPѤ: .RS 3 .TP 2 o -外部 API ドキュメントへの相対パスを使用する場合 + API ɥȤؤХѥѤ .TP 2 o -外部 API ドキュメントへの絶対 URL を使用する場合 (プログラムがその URL に接続し、読み取りを行うことがシェルによって許可されている場合) + API ɥȤؤ URL Ѥ (ץब URL ³ɤ߼ԤȤˤäƵĤƤ) .RE -次のような場合は、\f2\-linkoffline\fP オプションを使用します。 +\f2\-linkoffline\fP Ѥ: .RS 3 .TP 2 o -プログラムがその URL に接続し、読み取りを行うことがシェルによって許可されていない場合に外部 API ドキュメントへの絶対 URL を使用する場合。このような状況は、リンク先のドキュメントがファイアウォールの向こう側にある場合に発生します。 + API ɥȤؤ URL Ѥ (ץब URL ³ɤ߼ԤȤˤäƵĤƤʤ)Τ褦ʾϡΥɥȤեθ¦ˤȯޤ .RE .LP -\f3外部ドキュメントへの絶対リンクの使用例\fP \- +\f3ɥȤؤХ󥯤λ\fP \- \f2java.lang\fP \f2java.io\fP ¾ Java ץåȥեѥå ( .na -\f2http://java.sun.com/j2se/1.5.0/docs/api\fP @ +\f2http://java.sun.com/javase/6/docs/api/\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api 内の \f2java.lang\fP、\f2java.io\fP、その他の Java 2 プラットフォームパッケージにリンクしたい場合があります。 次のコマンドは、\f2com.mypackage\fP パッケージのドキュメントと Java 2 プラットフォームパッケージへのリンクを生成します。生成されたドキュメントには、たとえばクラスツリー内の \f2Object\fP クラスへのリンクが含まれています。\f2\-sourcepath\fP や \f2\-d\fP などの他のオプションは表示されません。 +http://java.sun.com/javase/6/docs/api ) ˥󥯤ͤޤΥޥɤϡJava SE ץåȥեѥåؤΥ󥯤ޤѥå \f2com.mypackage\fP ΥɥȤޤ줿ɥȤˤϡȤХ饹ĥ꡼ \f2Object\fP 饹ؤΥ󥯤ޤޤƤޤʤ \f2\-sourcepath\fP \f2\-d\fP ʤɡ¾ΥץϼƤޤ .nf \f3 .fl - % \fP\f3javadoc \-link http://java.sun.com/j2se/1.5.0/docs/api com.mypackage\fP + % \fP\f3javadoc \-link http://java.sun.com/javase/6/docs/api com.mypackage\fP .fl .fi -\f3外部ドキュメントへの相対リンクの使用例\fP \- 2 つのパッケージがあり、そのドキュメントが Javadoc ツールを複数回実行した結果生成されたものであるとします。 さらに、これらのドキュメントが相対パスで分割されているとします。この例の場合、2 つのパッケージは、API である \f2com.apipackage\fP とSPI (サービスプロバイダインタフェース) である \f2com.spipackage\fP です。ドキュメントの格納先は \f2docs/api/com/apipackage\fP パッケージと \f2docs/spi/com/spipackage\fP パッケージです。API パッケージのドキュメントがすでに生成されていて、現在のディレクトリが \f2docs\fP である場合、次のコマンドを実行することによって、この API ドキュメントへのリンクを持つ SPI パッケージをドキュメント化します。 +\f3ɥȤؤХ󥯤λ\fP \- 2 ĤΥѥåꡢΥɥȤ Javadoc ġʣ¹Ԥ줿ΤǤȤޤˡΥɥȤХѥʬ䤵ƤȤޤξ硢ѥåϡAPI Ǥ \f2com.apipackage\fP ȡSPI (ӥץХ󥿥ե) Ǥ \f2com.spipackage\fP ǤɥȤγǼϡ \f2docs/api/com/apipackage\fP \f2docs/spi/com/spipackage\fP ǤAPI ѥåΥɥȤϤǤѤߤǡ \f2docs\fP ȥǥ쥯ȥˤʤäƤȲꤹȡAPI ɥȤؤΥ󥯤ޤ SPI ѥåɥȲˤϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -4754,43 +3260,43 @@ .fl .fi .LP -\f2\-link\fP 引数は、生成先ディレクトリ (\f2docs/spi\fP) の相対パスです。 -.LP -\f3詳細\fP \- \f2\-link\fP オプションを使うと、「コードからは参照されていても、Javadoc の今回の実行ではドキュメント化されない」というクラスにリンクできるようになります。リンクから有効なページに移動できるようにするには、それらの HTML ページがある場所を調べ、その場所を \f2extdocURL\fP に指定する必要があります。このオプションを使うと、たとえば、サードパーティーのドキュメントから、\f2http://java.sun.com\fP にある \f2java.*\fP のドキュメントにリンクすることができます。 -.LP -今回の実行で Javadoc によって生成されるドキュメント内の API だけを対象にリンクを作成する場合は、\f2\-link\fP オプションを省略します。\f2\-link\fP オプションが指定されていない場合、Javadoc ツールは、外部参照されたドキュメントへのリンクを作成しません。これは、そのドキュメントが存在するかどうか、および存在する場合はその場所を判別できないからです。 -.LP -このオプションでは、生成ドキュメント内の複数の場所にリンクを作成できます。 -.LP -また、このオプションを使うと、複数のパッケージ群の間にクロスリンクを作成することもできます。つまり、ある一式のパッケージに対して javadoc を実行したあと、別の一式のパッケージに対して javadoc を実行し、これら 2 つのパッケージ群の間にクロスリンクを作成できます。 -.LP -\f3クラスの参照方法\fP \- 外部参照クラスへのリンクを、テキストラベルだけではなく実際に表示するには、次の方法でクラスを参照する必要があります。メソッドの本体でクラスを参照するだけでは十分ではありません。\f2import\fP 文または宣言で参照する必要があります。次に、クラス \f2java.io.File\fP を参照する方法の例を示します。 +\f2\-link\fP ΰϡǥ쥯ȥ (\f2docs/spi\fP) ХѥǤ +.LP +\f3ܺ\fP \- \f2\-link\fP ץȤȡ֥ɤϻȤƤƤ⡢Javadoc κμ¹ԤǤϥɥȲʤפȤ饹˥󥯤Ǥ褦ˤʤޤ󥯤ͭʥڡ˰ưǤ褦ˤˤϡ HTML ڡĴ١ξ \f2extdocURL\fP ˻ꤹɬפޤˤꡢȤСɥѡƥΥɥȤ \f2http://java.sun.com java.*\fP ΥɥȤؤΥ󥯤 \f2ǽȤʤޤ\fP +.LP +μ¹Ԥ Javadoc ˤäɥ API оݤ \f2󥯤ϡ\fP \-link ץάޤ \f2\-link\fP ץ󤬻ꤵƤʤ硢Javadoc ġϡȤ줿ɥȤؤΥ󥯤ޤ󡣤ϡΥɥȤ¸ߤ뤫ɤ¸ߤϤξȽ̤ǤʤǤ +.LP +ΥץǤϡɥʣξ˥󥯤Ǥޤ +.LP +⤦ 1 ĤӤϡѥååȴ֤ǤΥ󥯤ǤΥѥååȤФ javadoc ¹Ԥȡ¾ΥѥååȤФ javadoc ټ¹Ԥ뤳Ȥˤꡢξåȴ֤Υ󥯤Ǥޤ +.LP +\f3饹λˡ\fP \- ȥ饹ؤΥ󥯤򡢥ƥȥ٥ǤϤʤºݤɽˤϡˡǥ饹򻲾Ȥɬפޤ᥽åɤΤǥ饹򻲾ȤǤϽʬǤϤޤ󡣤Υ饹ϡ \f2import\fP ʸΤξǻȤƤɬפޤHere are examples of how the class \f2java.io.File\fP can be referenced: .RS 3 .TP 2 o -すべての種類の \f2import\fP 文の場合: ワイルドカードによるインポート、名前による明示的なインポート、または \f2java.lang.*\fP に対する自動的なインポート。たとえば、次のようにすれば十分です。 +٤Ƥμ \f2import\fP ʸξ: 磻ɥɤˤ륤ݡȡ̾ˤŪʥݡȡޤ \f2java.lang.* Ф뼫ưŪʥݡ\fPȤСΤ褦ˤнʬǤ .br \f2import java.io.*;\fP .br -1.3.x および 1.2.x では、名前による明示的なインポートだけです。ワイルドカードによるインポート文も、自動インポート \f2java.lang.*\fP も使用できません。 +1.3.x 1.2.x Ǥϡ̾ˤŪʥݡȤǤ磻ɥɤˤ륤ݡʸ⡢ \f2java.lang.* μưݡȤѤǤޤ\fP .TP 2 o -宣言の場合: +ξ: .br \f2void foo(File f) {}\fP .br -この参照を使用し、メソッド、コンストラクタ、フィールド、クラス、またはインタフェースの戻り値の型またはパラメータの型に置くか、\f2implements\fP、\f2extends\fP、または \f2throws\fP 文に置きます。 +λȤѤ᥽åɡ󥹥ȥ饯եɡ饹ޤϥ󥿥եͤηޤϥѥ᡼η֤ \f2implements\fP \f2extends\fP ޤ \f2throws\fP ʸ֤ޤ .RE .LP -この結果、\f2\-link\fP オプションを使用しても、この制限のために誤って表示されない多くのリンクが多数発生する可能性があります。テキストはハイパーテキストリンクが付けられずに表示されます。これらのリンクが表示する警告から、このリンクを認識できます。クラスを正しく参照し、それによってリンクを追加するためのもっとも安全な方法は上で説明したとおり、当該のクラスをインポートすることです。 -.LP -\f3パッケージリスト\fP \- \f2\-link\fP オプションは、\f2package\-list\fP という名前のファイルを要求します。 このファイルは、Javadoc ツールによって生成され、\f2\-link\fP によって指定した URL に存在します。\f2package\-list\fP ファイルは、その場所にあるドキュメント化されたパッケージの名前のリストが入った単純なテキストファイルです。前の例では、Javadoc ツールは指定された URL にある \f2package\-list\fP という名前のファイルを探し、パッケージ名を読み込んで、その URL にあるそれらのパッケージへのリンクを作成しました。 -.LP -たとえば、Java プラットフォーム v5.0 API のパッケージリストは +פʷ̤Ȥơ \f2\-link\fP ץλѻˡ¤Τ˸äɽʤ󥯤¿ȯǽޤƥȤϥϥѡƥȥ󥯤դ줺ɽޤΥ󥯤ɽٹ𤫤顢Υ󥯤ǧǤޤ饹Ȥˤäƥ󥯤ɲä뤿ΤäȤˡϾȤꡢΥ饹򥤥ݡȤ뤳ȤǤ +.LP +\f3ѥåꥹ\fP \- \f2\-link\fP ץǽˤϡJavadoc ġˤä \f2package\-list\fP Ȥ̾Υե뤬桼 \f2\-link\fP ˻ꤷ URL ¸ߤƤɬפޤ \f2package\-list\fP եϡξˤɥȲ줿ѥå̾ΥꥹȤäñʥƥȥեǤǤϡJavadoc ġϡꤵ줿 URL \f2package\-list\fP Ȥ̾Υե򸡺ѥå̾ɤ߹ȡ URL ˤ뤽ΥѥåؤΥ󥯤ޤ +.LP +ȤСJava SE 6 API ΥѥåꥹȤ .na -\f2http://java.sun.com/j2se/1.5.0/docs/api/package\-list\fP @ +\f2http://java.sun.com/javase/6/docs/api/package\-list\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api/package\-list にあり、次のような内容で始まっています。 +http://java.sun.com/javase/6/docs/api/package\-list ˤꡢΤ褦ƤǻϤޤäƤޤ .nf \f3 .fl @@ -4808,64 +3314,64 @@ .fl java.awt.font .fl - その他 ... + ¾ .fl \fP .fi .LP -\f2\-link\fP オプションを指定せずに javadoc を実行した場合、外部参照クラスに属する名前を見つけると、javadoc はその名前をリンクを持たない形で出力します。一方、\f2\-link\fP オプションを指定した場合は、指定した \f2extdocURL\fP にある \f2package\-list\fP ファイルから該当するパッケージ名が検索されます。パッケージ名が見つかると、\f2extdocURL\fP が名前の前に付加されます。 -.LP -すべてのリンクが正しく機能するためには、外部参照のすべてのドキュメントが、指定した URL に存在していなければなりません。Javadoc ツールは、指定された package\-list が存在するかどうかを調べるだけで、指定された URL に目的のページが存在するかどうかはチェックしません。 -.LP -\f3複数のリンク\fP \- 複数の \f2\-link\fP オプションを指定すると、生成された任意の数の外部ドキュメントに対してリンクを設定できます。Javadoc 1.2 には、複数の \f2\-link\fP オプションを指定できないというバグがあります。これは 1.2.2 で修正されました。 -.LP -リンクする外部ドキュメントごとに、次のように別々のリンクオプションを指定します。 -.LP -\ \ \f2% \fP\f4javadoc \-link\fP \f2extdocURL1\fP \f4\-link\fP \f2extdocURL2\fP \f2...\fP\f4\-link\fP \f2extdocURLn\fP \f4com.mypackage\fP -.LP -\f2extdocURL1\fP、\f2extdocURL2\fP、... \f2extdocURLn\fP は、それぞれ外部ドキュメントのルートを指し、各ルートには \f2package\-list\fP という名前のファイルが入っています。 -.LP -\f3クロスリンク\fP \- まだ生成されていない 2 つ以上のドキュメントをクロスリンクする場合は、「ブートストラップ」が必要になります。つまり、どのドキュメントについても \f2package\-list\fP が存在していない場合は、最初のドキュメントに対して javadoc ツールを実行する時点で、2 番目のドキュメントの \f2package\-list\fP がまだ存在していません。したがって、外部リンクを作成するには、2 番目のドキュメントを生成したあとで、最初のドキュメントを生成し直す必要があります。 -.LP -この場合、最初のドキュメント生成の目的は、そのドキュメントの \f2package\-list\fP を作成することです。 パッケージ名をすべて把握している場合は、package\-list を手動で作成することもできます。次に、2 番目のドキュメントとその外部リンクを生成します。必要な外部の \f2package\-list\fP ファイルが存在しない場合、Javadoc ツールは警告を表示します。 +\f2\-link\fP ץꤻ javadoc ¹Ԥ硢ȥ饹°̾򸫤Ĥȡjavadoc Ϥ̾󥯤ʤǽϤޤ \f2\-link\fP ץ󤬻ꤵ줿硢Javadoc ġϡ \f2ꤵ줿\fP \f2extdocURL\fP ξˤ package\-list եǡΥѥå̾򸡺ޤѥå̾Ĥȡ\f2extdocURL\fP ̾ղäޤ +.LP +٤ƤΥ󥯤ǽ뤿ˤϡȤΤ٤ƤΥɥȤꤷ URL ¸ߤƤʤФʤޤJavadoc ġϡꤵ줿 package\-list ¸ߤ뤫ɤĴ٤ǡꤵ줿 URL ŪΥڡ¸ߤ뤫ɤϥåޤ +.LP +\f3ʣΥ\fP \- ʣ \f2\-link\fP ץꤹȡǤդογɥȤؤΥ󥯤ǤޤJavadoc 1.2 ˤϡʣ \f2\-link\fP ޥɤǤʤȤХޤ 1.2.2 ǽޤ +.LP +󥯤볰ɥȤȤˡΤ褦̡Υ󥯥ץꤷޤ +.LP +\ \ \f2% \fP\f4javadoc \-link\fP \f2extdocURL1\fP \f4\-link\fP \f2extdocURL2\fP \f2... \fP\f4\-link\fP \f2extdocURLn\fP \f4com.mypackage\fP +.LP +\f2extdocURL1\fP\f2extdocURL2\fP... \f2extdocURLn\fP ϡ줾쳰ɥȤΥ롼Ȥؤƥ롼Ȥˤϡ \f2package\-list\fP Ȥ̾Υե뤬äƤޤ +.LP +\f3\fP \- ޤƤʤ 2 İʾΥɥȤ򥯥󥯤ϡ֥֡ȥȥåספɬפˤʤޤĤޤꡢɤΥɥȤˤĤƤ \f2package\-list\fP ¸ߤƤʤϡǽΥɥȤФ Javadoc ġ¹Ԥǡ2 ܤΥɥȤ \f2package\-list\fP Ϥޤ¸ߤƤޤ󡣤äơ󥯤ˤϡ2 ܤΥɥȤȤǡǽΥɥȤľɬפޤ +.LP +ξ硢ǽΥɥŪϡ \f2package\-list\fP 뤳ȤǤѥå̾򤹤٤İƤϡpackage\-list ưǺƤ⤫ޤޤ󡣼ˡ2 ܤΥɥȤȤγ󥯤ޤɬפʳ \f2package\-list\fP ե뤬¸ߤʤϡJavadoc ġ뤫ٹ𤬽Ϥޤ .LP .TP 3 \-linkoffline\ extdocURL\ packagelistLoc -このオプションは、\f2\-link\fP オプションを変えたものです。 どちらも、javadoc によって生成された外部参照クラスのドキュメントへのリンクを作成します。Javadoc ツール自体がオフラインになっているとき (Web 接続を使ってドキュメントにアクセスできないとき)、Web 上のドキュメントにリンクするには、\f2\-linkoffline\fP オプションを使用します。 -.LP -厳密には、外部ドキュメントの \f2package\-list\fP ファイルにアクセスできないとき、またはこのファイルが \f2extdocURL\fP で指定された場所とは異なる場所 (通常、\f2packageListLoc\fP で指定可能なローカルな場所) に存在するとき、\f2\-linkoffline\fP を使用します。したがって、\f2extdocURL\fP に WWW 上でしかアクセスできない場合は、\f2\-linkoffline\fP を指定することにより、ドキュメントの生成時に javadoc ツールが Web に接続できなければならないという制約がなくなります。 -.LP -さらに、ドキュメントを更新するための「ハッキング」としての使用も可能です。パッケージのセット全体に対して javadoc を実行したあと、変更した一部のパッケージだけに対して javadoc を実行します。 こうして、更新されたファイルを、オリジナルのファイルセットに挿入できるようにします。例をあとで示します。 -.LP -\f2\-linkoffline\fP オプションは引数を 2 つ取ります。 最初の引数は \f2<a href>\fP リンクに組み込まれる文字列を指定する引数、2 番目の引数は \f2package\-list\fP の検索場所を指定する引数です。 +Υץ \f2\-link\fP ΥХꥨ 1 ĤǤɤ⡢ȥ饹 javadoc ɥȤؤΥ󥯤ޤJavadoc \f2ġ뼫Τ\fP ե饤ˤʤäƤȤ (Web ³ȤäƥɥȤ˥ǤʤȤ)Web ΥɥȤ˥󥯤ˤϡ\-linkoffline ץѤޤ +.LP +̩ˤϡ \f2\fP ɥȤ \f2package\-list\fP ե˥ǤʤȤޤϤΥե뤬 \f2extdocURL\fP ǻꤵ줿Ȥϰۤʤ (̾\f2packageListLoc\fP ǻǽʥʾ) ¸ߤȤ\-linkoffline ѤޤäơWWW ͳǤ \f2extdocURL\fP ˥Ǥʤ硢 \f2\-linkoffline\fP ꤹ뤳ȤˤꡢɥȤ Javadoc ġ뤬 Web ³ǤʤФʤʤȤ󤬤ʤʤޤ +.LP +ˡɥȤ򹹿뤿Ρ֥ϥå󥰡פȤƤλѤǽǤѥåΥåΤФ javadoc ¹ԤȡѹΥѥåФ javadoc ¹Ԥޤơ줿ե򡢥ꥸʥΥե륻åȤǤ褦ˤޤ򤢤ȤǼޤ +.LP +\f2\-linkoffline\fP ץϰ 2 ļޤ1 Ĥϡ \f2<a href>\fP 󥯤Ȥ߹ޤʸɽ⤦ 1 Ĥ \f2package\-list\fP θ򼨤Ǥ .RS 3 .TP 2 o -\f4extdocURL\fP は、リンク先として指定する、javadoc によって生成された外部ドキュメントを含むディレクトリの絶対 URL または相対 URL です。相対リンクを使用する場合、\f2\-d\fP を使って、生成先ディレクトリからリンクされるパッケージのルートの相対パスを指定する必要があります。詳細は、\f2\-link\fP オプションの \f2extdocURL\fP を参照してください。 +\f4extdocURL\fP ϡȤƻꤹ롢javadoc ˤä줿ɥȤޤǥ쥯ȥ URL ޤ URL ǤХ󥯤ξ硢ͤϡ( \f2\-d\fP ǻꤵ줿) ǥ쥯ȥ꤫ѥåΥ롼ȤؤХѥˤ٤Ǥܺ٤ϡ\-link ץ \f2extdocURL\fP \f2򻲾\fP Ƥ .TP 2 o -\f4packagelistLoc\fP には、外部ドキュメントの \f2package\-list\fP ファイルが入っているディレクトリのパスまたは URL を指定します。これは、URL (http: または file:)or file:)とファイルパスのどちらでもかまいません。また、絶対パスと相対パスのどちらでも指定できます。相対パスの場合は、javadoc が実行されるカレントディレクトリからの相対パスとして指定します。\f2package\-list\fP というファイル名は含めないでください。 +\f4packagelistLoc\fP ϡɥȤ \f2package\-list\fP եޤǥ쥯ȥؤΥѥޤ URL ǤϡURL (http: ޤ file:) ǤեѥǤ⤫ޤޤ󤷡ХѥǤХѥǤ⤫ޤޤХѥξϡjavadoc ¹Ԥ륫ȥǥ쥯ȥ꤫ХѥȤƻꤷޤե̾ \f2package\-list\fP ϴޤʤǤ .RE .LP -javadoc の 1 回の実行で、複数の \f2\-linkoffline\fP オプションを指定できます。1.2.2 より前は、複数のオプションを指定することはできませんでした。 -.LP -\f3外部ドキュメントへの絶対リンクを使った例\fP \- \f2http://java.sun.com/j2se/1.5.0/docs/api\fP 内の \f2java.lang\fP、\f2java.io\fP、、およびその他の Java 2 プラットフォームパッケージにリンクしたくても、Web にアクセスできない 場合について考えてみます。この場合は、ブラウザで +1 javadoc ¹Ԥʣ \f2\-linkoffline\fP ץǤޤ1.2.2 ϡʣΥץꤹ뤳ȤϤǤޤǤ +.LP +\f3ɥȤؤХ󥯤λ\fP \- http://java.sun.com/javase/6/docs/api \f2java.lang\fP \f2java.io\fP Ӥ¾ Java SE ץåȥեѥå \f2˥󥯤Ƥ\fP Web ˥Ǥʤͤޤ֥饦 \f2\fP .na -\f2http://java.sun.com/j2se/1.5.0/docs/api/package\-list\fP @ +\f2http://java.sun.com/javase/6/docs/api/package\-list\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/api/package\-list にある \f2package\-list\fP ファイルを開き、ローカルディレクトリに保存します。 さらに、2 番目の引数 \f2packagelistLoc\fP にこのローカルコピーの場所を指定します。この例では、パッケージリストファイルはカレントディレクトリ "\f2.\fP" に保存されています。次のコマンドは、Java 2 プラットフォーム API へのリンクを含む、\f2com.mypackage\fP パッケージのドキュメントを生成します。生成されたドキュメントには、たとえばクラスツリー内の \f2Object\fP クラスへのリンクが含まれています。\f2\-sourcepath\fP などの他の必要なオプションは表示されません。 +http://java.sun.com/javase/6/docs/api/package\-list ˤ package\-list ե򳫤ǥ쥯ȥ¸ 2 \f2packagelistLoc\fP ǤΥ륳ԡؤΥѥꤷޤǤϡѥåꥹȥեϥȥǥ쥯ȥ "\f2.\fP" ¸ƤޤΥޥɤϡJava SE ץåȥեѥåؤΥ󥯤ޤѥå \f2com.mypackage\fP ΥɥȤޤ줿ɥȤˤϡȤХ饹ĥ꡼ \f2Object\fP 饹ؤΥ󥯤ޤޤƤޤʤ \f2\-sourcepath\fP ʤɡ¾ɬץץϼƤޤ .nf \f3 .fl -% \fP\f3javadoc \-linkoffline http://java.sun.com/j2se/1.5.0/docs/api . com.mypackage\fP +% \fP\f3javadoc \-linkoffline http://java.sun.com/javase/6/docs/api . com.mypackage\fP .fl .fi .LP -\f3外部ドキュメントへの相対リンクの使用例\fP \- 通常、\f2\-linkoffline\fP に相対パスを指定することはありません。 \f2\-link\fP で同じことができるからです。\f2\-linkoffline\fP を使用する際、\f2package\-list\fP には通常ローカルのファイルを指定します。 相対リンクを使用する際も、リンク先のファイルには通常ローカルのファイルを指定します。したがって、\f2\-linkoffline\fP の 2 つの引数に別々のパスを指定する必要はありません。2 つの引数が同一である場合は、\f2\-link\fP を使用できます。\f2\-link\fP の相対リンクの例を参照してください。 -.LP -\f4package\-list\fP\f3 ファイルを手動で作成\fP \- \f2package\-list\fP ファイルがまだ存在しなくても、ドキュメントのリンク先のパッケージ名がわかっている場合は、このファイルを自分で作成し、\f2packagelistLoc\fP でそのパスを指定することができます。\f2com.apipackage\fP が最初に生成され、\f2com.spipackage\fP のパッケージリストが存在しないという前出の例を参照してください。この方法は、パッケージ名はわかっているものの、まだ公開されていない、新しい外部ドキュメントにリンクするドキュメントを生成する必要がある場合に便利です。また、\f2package\-list\fP ファイルが生成されない Javadoc 1.0 や 1.1 などで生成されたパッケージ向けに \f2package\-list\fP ファイルを作成するときにも、この方法を利用します。同様に、2 つの会社が未公開の \f2package\-list\fP ファイルを共有することもできるため、クロスリンクを設定したドキュメントを同時にリリースすることも可能です。 -.LP -\f3複数のドキュメントへのリンク\fP \- \f2\-linkoffline\fP は、参照先の生成ドキュメントごとに 1 つずつ指定します。 次の例では、わかりやすくするためにオプションごとに行を分けています。 +\f3ɥȤؤХ󥯤λ\fP \- \f2\-linkoffline\fP ХѥѤ뤳Ȥϡޤꤢޤͳñǡ̾ \f2\-link\fP ǽʬǤ \f2\-linkoffline\fP Ѥݡ \f2package\-list\fP ˤ̾Υեꤷޤ Х󥯤Ѥݤ⡢Υեˤ̾Υեꤷޤäơ \f2\-linkoffline 2 Ĥΰ̡ΥѥꤹɬפϤޤ\fP2 ĤΰƱǤϡ \f2\-link\fP ѤǤޤ \f2\-link\fP Х󥯤򻲾ȤƤ +.LP +\f4package\-list\fP\f3 եưǺ\fP \- \f2package\-list\fP ե뤬ޤ¸ߤʤƤ⡢ɥȤΥΥѥå̾狼äƤϡΥեʬǺpackagelistLoc \f2ǤΥѥꤹ뤳ȤǤޤ\fPcom.apipackage ǽ \f2com.spipackage\fP ΥѥåꥹȤ¸ߤƤʤäȤ \f2ФΥ\fP ȤƵ󤲤ޤˡϡѥå̾Ϥ狼äƤΤΡޤƤʤɥȤ˥󥯤ɥȤɬפǤޤJavadoc 1.0 ޤ 1.1 줿ѥå \f2package\-list\fP եɬפˤ⡢ˡȤޤΥСǤϡ \f2package\-list\fP եƤޤǤƱͤˡ2 ĤδȤ̤ \f2package\-list\fP եͭС󥯤ޤɥȤƱ˥꡼뤳ȤǽȤʤޤ +.LP +\f3ʣΥɥȤؤΥ\fP \- ȤʤɥȤȤ \f2\-linkoffline\fP 1 󤺤Ĵޤ뤳ȤǤޤ狼䤹뤿ˡץ󤴤Ȥ˲ԤƼƤޤ .LP \f2% \fP\f4javadoc \-linkoffline\fP \f2extdocURL1\fP \f2packagelistLoc1\fP \f2\\\fP .br @@ -4873,24 +3379,24 @@ .br \f2\ \ \ \ \ \ \ \ \ \ ...\fP .LP -\f3ドキュメントの更新\fP \- 前述の \f2\-linkoffline\fP オプションのもうひとつの用途は、プロジェクトに大量のパッケージが含まれていて、すでにツリー全体に対して javadoc の実行が完了している場合に、次の実行では、少量の変更を手早く加えたあと、ソースツリーのごく一部に対してだけ javadoc を再実行する場合に便利です。これは、ドキュメンテーションコメントに対してだけ変更を加え、宣言は変更しない場合にのみ正しく処理されるので、ハッキングのようなものです。ソースコードの宣言を追加、削除、または変更した場合は、索引、パッケージツリー、継承されるメンバーのリスト、[使用] ページなどの場所で、リンクが壊れることがあります。 -.LP -まず、今回の実行で使用する新しい生成先ディレクトリ (\f2update\fP) を作成します。元の生成先ディレクトリの名前が \f2html\fP だとします。もっとも単純な例では、\f2html\fP ディレクトリの親ディレクトリに移動 (cd) します。\f2\-linkoffline\fP の最初の引数にカレントディレクトリ "." を指定し、2 番目の引数に \f2html\fP への相対パスを指定します。 ここで、\f2package\-list\fP が検索されます。 更新対照のパッケージのパッケージ名だけを指定してください。 +\f3ɥȤι\fP \- Ҥ \f2\-linkoffline\fP ץΤ⤦ҤȤĤӤϡץȤ̤ΥѥåޤޤƤơǤ˥ĥ꡼ΤФ javadoc μ¹ԤλƤˡμ¹ԤǤϡ̤ѹ᤯äȡĥ꡼ΤФƤ javadoc Ƽ¹ԤǤϡɥơ󥳥ȤФƤѹäѹʤˤΤΤǡϥå󥰤Τ褦ʤΤǤɤɲáޤѹϡѥåĥ꡼ѾСΥꥹȡֻѡץڡʤɤξǡ󥯤뤳Ȥޤ +.LP +ޤοʼ¹ѤȤơǥ쥯ȥ ( \f2update\fP ̿̾) ޤǥ쥯ȥ̾ \f2html\fP äȤޤäȤñǤϡ \f2html ǥ쥯ȥοƥǥ쥯ȥ˰ư (cd) ޤ\fP \f2\-linkoffline\fP 1 򥫥ȥǥ쥯ȥ.פꤷ 2 package\-list ޤޤƤ \f2html\fP ؤХѥꤷ \f2ѥåΥѥå̾Τߤ\fPϤޤ .nf \f3 .fl % \fP\f3javadoc \-d update \-linkoffline . html com.mypackage\fP .fl .fi -Javadoc ツールの終了後、\f2update/com/package\fP 内の生成されたクラスのページをコピーし (概要や索引を除く)、\f2html/com/package\fP 内の元のファイルに上書きします。 +Javadoc ĥ꡼νλ塢 \f2update/com/package\fP 줿饹Υڡ򥳥ԡ (פϽ) \f2html/com/package θΥե˾񤭤ޤ\fP .LP .TP 3 \-linksource\ -各ソースファイル (行番号付き) の HTML バージョンを作成し、標準 HTML ドキュメントからソースファイルへのリンクを追加します。リンクは、ソースファイル内に宣言されているクラス、インタフェース、コンストラクタ、メソッド、フィールドに対して作成されます。デフォルトコンストラクタ、生成されたクラスに対しては作成されません。 -.LP -\f3このオプションは、\fP\f4\-public\fP\f3、\fP\f4\-package\fP\f3、\fP\f4\-protected\fP\f3、\fP\f4\-private\fP\f3 の各オプションとは関係なく、非公開のクラス、フィールド、非公開のメソッドの本体をはじめとする組み込まれたソースファイル内のすべての非公開実装の詳細を公開します。\fP\f2\-private\fP オプションを指定しないかぎり、非公開のクラスやインタフェースの一部には、リンクを介してアクセスできないことがあります。 -.LP -各リンクは、その宣言内の識別子名の上に作成されます。たとえば、\f2Button\fP クラスのソースコードヘのリンクは、「Button」という語の上に作成されます。 +ƥե (ֹդ) HTML Сɸ HTML ɥȤ饽եؤΥ󥯤ɲäޤ󥯤ϡեƤ륯饹󥿥ե󥹥ȥ饯᥽åɡեɤФƺޤǥեȥ󥹥ȥ饯줿饹ФƤϺޤ +.LP +\f3Υץϡ\fP\f4\-public\fP\f3 \fP\f4\-package\fP\f3 \fP\f4\-protected\fP\f3 \fP\f4\-private\fP\f3 γƥץȤϴطʤΥ饹եɡΥ᥽åɤΤϤȤȤ߹ޤ줿եΤ٤Ƥξܺ٤ޤ\fP\f2\-private\fP ץʻƻꤷʤꡢΤ٤ƤΥ饹䥤󥿥ե˥󥯷ͳǥǤȤϤޤ +.LP +ƥ󥯤ϡμ̻̾ξ˺ޤȤС \f2Button\fP 饹ΥɤؤΥ󥯤ϡButtonפȤξ˺ޤ .nf \f3 .fl @@ -4902,7 +3408,7 @@ .fl \fP .fi -Button クラスの \f2getLabel()\fP メソッドのソースコードへのリンクは、「getLabel」という語の上に作成されます。 +ޤButton 饹 \f2getLabel()\fP ᥽åɤΥɤؤΥ󥯤ϡgetLabelפȤξ˺ޤ .nf \f3 .fl @@ -4913,26 +3419,21 @@ .LP .TP 3 \-group\ groupheading\ packagepattern:packagepattern:... -概要ページの複数のパッケージを、指定したグループに分けて、グループごとに表を作成します。各グループは、それぞれ別の \f2\-group\fP オプションで指定します。これらのグループは、コマンド行で指定した順序でページに表示されます。 各グループ内では、パッケージがアルファベット順に並べられます。指定した \f2\-group\fP オプションごとに、\f2packagepattern\fP 式のリストと一致するパッケージが、見出し \f2groupheading\fP を持つ 1 つの表にまとめて表示されます。 +ץڡʣΥѥå򡢻ꤷ롼פʬơ롼פȤɽޤƥ롼פϡ줾̤ \f2\-group\fP ץǻꤷޤΥ롼פϡޥɹԤǻꤷǥڡɽޤƥ롼Ǥϡѥåե٥åȽ¤٤ޤ \f2\-group\fP ץǤϡ \f2packagepattern\fP ΥꥹȤ˰פѥå \f2groupheading\fP ȤФɽɽޤ .RS 3 .TP 2 o -\f4groupheading\fP には、任意のテキストを指定でき、空白を含めることができます。指定したテキストは、グループの表見出しになります。 +\f4groupheading\fP ˤϡǤդΥƥȤǤޤ뤳ȤǤޤꤷƥȤϡ롼פɽФˤʤޤ .TP 2 o -\f4packagepattern\fP には、任意のパッケージ名、または任意のパッケージ名の先頭部分とそれに続く 1 つのアスタリスク (\f2*\fP) を指定できます。アスタリスクは、「任意の文字に一致する」という意味のワイルドカードです。ワイルドカードとして指定できるのは、アスタリスクだけです。1 つのグループには、コロン (\f2:\fP) で区切って複数のパターンを含めることができます。 +\f4packagepattern\fP ˤϡǤդΥѥå̾ޤǤդΥѥå̾ƬʬȤ³ 1 ĤΥꥹ (\f2*\fP) Ǥޤ ꥹϡǤդʸ˰פפȤ̣Υ磻ɥɤǤ磻ɥɤȤƻǤΤϡꥹǤ1 ĤΥ롼פˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤ .RE -.RS 3 - -.LP -.LP -\f3注: パターンやパターンリスト内でアスタリスクを使う場合は、\fP\f4"java.lang*:java.util"\fP\f3 のように、パターンリストを引用符で囲む必要があります。\fP -.LP -.RE -.LP -\f2\-group\fP オプションが指定されていない場合は、すべてのパッケージが、「パッケージ」という見出しの 1 つのグループに入れられます。ドキュメント化されるパッケージの中に、指定したグループのどのグループにも入らないパッケージがある場合、このようなパッケージは「その他のパッケージ」という見出しを持つ独立したグループに入れられます。 -.LP -たとえば、次のようにオプションを指定すると、ドキュメント化される 5 つのパッケージは、コアパッケージ、拡張機能パッケージ、およびその他のパッケージに分けられます。「java.lang*」では、最後のドットを指定していないことに注目してください。 「java.lang.*」のようにドットを入れると、java.lang パッケージは除外されることになります。 +.LP +\f3: ѥѥꥹǥꥹȤϡ \fP\f4"java.lang*:java.util" Τ褦ˡѥꥹȤǰϤɬפޤ\fP +.LP +桼 \f2\-group\fP ץ 1 Ĥꤷʤä硢֥ѥåפȤФ 1 ĤΥ롼ˡ٤ƤΥѥå֤ޤɥȲѥåˡꤷ롼פΤɤΥ롼פˤʤѥå硢Τ褦ʥѥåϡ֤¾ΥѥåפȤФΩ롼פޤ +.LP +ȤСΤ褦˥ץꤹȡɥȲ 5 ĤΥѥåϡѥåĥǽѥåӤ¾Υѥåʬޤjava.lang*פǤϡǸΥɥåȤꤷƤʤȤܤƤjava.lang.*פΤ褦˥ɥåȤȡjava.lang ѥåϽ뤳Ȥˤʤޤ .nf \f3 .fl @@ -4943,56 +3444,52 @@ java.lang java.lang.reflect java.util javax.servlet java.new\fP .fl .fi -この結果、次のようなグループ化が行われます。 -.RS 3 +η̡Τ褦ʥ롼ײԤޤ .RS 3 .TP 3 -コアパッケージ +ѥå \f2java.lang\fP \f2java.lang.reflect\fP \f2java.util\fP .TP 3 -拡張機能パッケージ +ĥǽѥå \f2javax.servlet\fP .TP 3 -その他のパッケージ +¾Υѥå \f2java.new\fP .RE - -.LP -.RE .LP .TP 3 \-nodeprecated -推奨されない API をドキュメントに生成しないようにします。このオプションを指定すると、\-nodeprecatedlist オプションを指定した場合と同じ効果があることに加えて、ドキュメントのほかの部分全体でも、推奨されない API が生成されません。このオプションは、コードを記述しているとき、推奨されないコードによって気を散らされたくない場合に便利です。 +侩ʤ API ɥȤʤ褦ˤޤΥץꤹȡ\-nodeprecatedlist ץꤷƱ̤뤳Ȥ˲äơɥȤΤۤʬΤǤ⡢侩ʤ API ޤ󡣤Υץϡɤ򵭽ҤƤȤ侩ʤɤˤäƵ򻶤餵줿ʤǤ .LP .TP 3 \-nodeprecatedlist -推奨されない API のリストを含むファイル (deprecated\-list.html)、およびナビゲーションバーのそのページへのリンクが生成されないようにします。ただし、ドキュメントのほかの部分では、推奨されない API が生成されます。このオプションは、推奨されない API がソースコードに含まれておらず、ナビゲーションバーをすっきりと見せたい場合に便利です。 +侩ʤ API ΥꥹȤޤե (deprecated\-list.html)ӥʥӥСΤΥڡؤΥ󥯤ʤ褦ˤޤɥȤΤۤʬǤϡ侩ʤ API ޤΥץϡ侩ʤ API ɤ˴ޤޤƤ餺ʥӥС򤹤äȸǤ .LP .TP 3 \-nosince -生成ドキュメントから、@since タグに対応する「導入されたバージョン」 セクションを省略します。 +ɥȤ顢@since бƳ줿С άޤ .LP .TP 3 \-notree -生成されるドキュメントからクラスおよびインタフェースの階層ページを省略します。これらのページには、ナビゲーションバーの「ツリー」ボタンからアクセスできます。デフォルトでは、階層が生成されます。 +ɥȤ饯饹ӥ󥿥եγإڡάޤΥڡˤϡʥӥСΡ֥ĥ꡼ץܥ󤫤饢ǤޤǥեȤǤϡؤޤ .LP .TP 3 \-noindex -生成ドキュメントから、索引を省略します。デフォルトでは、索引が生成されます。 +ɥȤ顢άޤǥեȤǤϡޤ .LP .TP 3 \-nohelp -出力の各ページの最上部と最下部にあるナビゲーションバーから [ヘルプ] リンクを省略します。 +ϤγƥڡκǾȺDzˤʥӥС֥إסץ󥯤άޤ .LP .TP 3 \-nonavbar -生成されるページの最上部と最下部に表示されるナビゲーションバー、ヘッダー、およびフッターを生成しないようにします。このオプションは、bottom オプションには影響を与えません。\f2\-nonavbar\fP オプションは、印刷するためだけにファイルを PostScript または PDF に変換する場合など、内容だけが重要で、ナビゲーションの必要がない場合に便利です。 +ڡκǾȺDzɽʥӥСإåӥեåʤ褦ˤޤΥץϡbottom ץˤϱƶͿޤ \f2\-nonavbar\fP ץϡ뤿˥ե PostScript ޤ PDF ѴʤɡƤפǡʥӥɬפʤǤ .LP .TP 3 \-helpfile\ path/filename -上部と下部のナビゲーションバーの [ヘルプ] リンクのリンク先となる代替ヘルプファイル \f2path/filename\fP のパスを指定します。このオプションが指定されていない場合、Javadoc ツールは、ハードコードされているヘルプファイル \f2help\-doc.html\fP を自動的に作成します。このオプションを使うと、そのデフォルトの動作をオーバーライドできます。\f2filename\fP にはどんなファイル名でも指定でき、\f2help\-doc.html\fP には限定されません。例を示します。 +ȲΥʥӥСΡ֥إסץ󥯤ΥȤʤإإץե \f2path/filename\fP ΥѥꤷޤΥץ󤬻ꤵʤȡJavadoc ġϡġǥϡɥɤƤإץե \f2help\-doc.html\fP ưޤΥץȤȡΥǥեȤư򥪡С饤ɤǤޤ\f2filename\fP ˤϤɤʥե̾ǤǤ \f2help\-doc.html ˤϸꤵޤ\fP Javadoc ġϡʥӥСΥ󥯤ɬפ˱Ĵޤ򼨤ޤ .nf \f3 .fl @@ -5001,7 +3498,7 @@ .fi .TP 3 \-stylesheetfile\ path/filename -代替 HTML スタイルシートファイルのパスを指定します。このオプションが指定されていない場合、Javadoc ツールは、ハードコードされているスタイルシートファイル \f2stylesheet.css\fP を自動的に作成します。このオプションを使うと、そのデフォルトの動作をオーバーライドできます。\f2filename\fP にはどんなファイル名でも指定でき、\f2stylesheet.css\fP には限定されません。例を示します。 + HTML 륷ȥեΥѥꤷޤΥץ󤬻ꤵʤȡJavadoc ġϡġǥϡɥɤƤ륹륷ȥե \f2stylesheet.css\fP ưޤΥץȤȡΥǥեȤư򥪡С饤ɤǤޤ\f2filename\fP ˤϤɤʥե̾ǤǤ \f2stylesheet.css ˤϸꤵޤ\fPȤС .nf \f3 .fl @@ -5010,22 +3507,22 @@ .fi .TP 3 \-serialwarn -@serial タグがない場合は、コンパイル時に警告を生成します。デフォルトでは、Javadoc 1.2.2 以降のバージョンでは、直列化の警告は生成されません。1.2.2 より前の初期バージョンでは、警告が生成されます。このオプションを使用すると、直列化の警告が表示されるので、デフォルトの直列化可能フィールドと \f2writeExternal\fP メソッドを適切にドキュメント化するのに役立ちます。 +@serial ʤϡѥ˷ٹޤǥեȤǤϡJavadoc 1.2.2 ʹߤΥСǤϡľ󲽤ηٹޤ1.2.2 νСǤϡٹޤΥץѤȡľ󲽤ηٹɽΤǡǥեȤľ󲽲ǽեɤ \f2writeExternal\fP ᥽åɤŬڤ˥ɥȲΤΩޤ .LP .TP 3 \-charset\ name -このドキュメント用の HTML 文字セットを指定します。この名前は、 +ΥɥѤ HTML ʸåȤꤷޤ̾ϡ .na \f2IANA Registry\fP @ .fi -http://www.iana.org/assignments/character\-sets で与えられた、推奨される MIME 名でなければなりません。例を示します。 +http://www.iana.org/assignments/character\-sets Ϳ줿侩 MIME ̾ǤʤФʤޤ󡣤ȤС .nf \f3 .fl % \fP\f3javadoc \-charset "iso\-8859\-1" mypackage\fP .fl .fi -生成されるすべてのページの先頭に、次の行が挿入されます。 +뤹٤ƤΥڡƬˡιԤޤ .nf \f3 .fl @@ -5033,34 +3530,34 @@ .fl \fP .fi -この META タグについては、 + META ˤĤƤϡ .na -\f2HTML の標準\fP @ +\f2HTML ɸ\fP @ .fi -http://www.w3.org/TR/REC\-html40/charset.html#h\-5.2.2 (4197265 および 4137321) を参照してください。 -.LP -\-encoding および \-docencoding も参照してください。 +http://www.w3.org/TR/REC\-html40/charset.html#h\-5.2.2 (4197265 4137321) 򻲾ȤƤ +.LP +\-encoding \-docencoding ⻲ȤƤ .LP .TP 3 \-docencoding\ name -生成される HTML ファイルのエンコーディングを指定します。この名前は、 + HTML եΥ󥳡ǥ󥰤ꤷޤ̾ϡ .na \f2IANA Registry\fP @ .fi -http://www.iana.org/assignments/character\-sets で与えられた、推奨される MIME 名でなければなりません。このオプションを省略しながら \-encoding を使用した場合、生成される HTML ファイルのエンコードは、\-encoding によって決められます。例: +http://www.iana.org/assignments/character\-sets Ϳ줿侩 MIME ̾ǤʤФʤޤ󡣤Υץάʤ \-encoding Ѥ硢 HTML եΥ󥳡ɤϡ\-encoding ˤäƷޤ: .nf \f3 .fl % \fP\f3javadoc \-docencoding "ISO\-8859\-1" mypackage\fP .fl .fi -\-encoding および \-charset も参照してください。 +\-encoding \-charset ⻲ȤƤ .LP .TP 3 \-keywords -HTML メタキーワードタグを、クラスごとに生成されるファイルに追加します。これらのタグは、メタタグを検索するサーチエンジンがページを見つける場合に役立ちます。インターネット全体を検索する多くのサーチエンジンは、ページがメタタグを誤用しているため、メタタグを調べません。 一方、検索を自身の Web サイトに限定している企業では、サーチエンジンがメタタグを調べることによってメリットを得られます。 -.LP -メタタグには、クラスの完全修飾名と、フィールドおよびメソッドの修飾されていない名前が含まれます。コンストラクタは、クラス名と同じであるため含まれません。たとえば、クラス String は次のキーワードで開始します。 +HTML ᥿ɥ򡢥饹ȤեɲäޤΥϡ᥿򸡺륵󥸥󤬥ڡ򸫤ĤΩޤ󥿡ͥåΤ򸡺¿Υ󥸥ϡڡ᥿ѤƤ뤿ᡢ᥿Ĵ٤ޤ󡣰򼫿Ȥ Web Ȥ˸ꤷƤȤǤϡ󥸥󤬥᥿Ĵ٤뤳ȤˤäƥåȤޤ +.LP +᥿ˤϡ饹δ̾ȡեɤӥ᥽åɤνƤʤ̾ޤޤޤ󥹥ȥ饯ϡ饹̾ƱǤ뤿ޤޤޤ󡣤ȤС饹 String ϼΥɤdzϤޤ .nf \f3 .fl @@ -5077,29 +3574,29 @@ .LP .TP 3 \-tag\ \ tagname:Xaoptcmf:"taghead" -Javadoc ツールがドキュメンテーションコメント内の引数を 1 つ取る単純なカスタムブロックタグ \f2@\fP\f2tagname\fP を解釈できるようにします。これにより、Javadoc ツールはタグ名の「スペルチェック」を行うことができるので、ソースコード内のすべてのカスタムタグに \f2\-tag\fP オプションを組み込むことをお勧めします。今回の実行で出力されないタグは、\f2X\fP を付けて無効にします。 -.LP -コロン (\f4:\fP) は常に区切り文字になります。\f2tagname\fP でコロンを使用するには、「タグ名でのコロンの使用」を参照してください。 -.LP -\f2\-tag\fP オプションは、タグの見出し「taghead」を太字で出力します。 その次の行には、このオプションの引数で指定したテキストが続きます。 以下の例を参照してください。ブロックタグと同様、この引数のテキストにはインラインタグを含めることができます。 このインラインタグも解釈されます。出力は、引数を 1 つ取る標準のタグ (\f2@return\fP、\f2@author\fP など) の出力とよく似ています。\f2taghead\fP を省略すると、\f2tagname\fP が見出しとして表示されます。 -.LP -\f3タグの配置\fP \- 引数の \f4Xaoptcmf\fP 部分は、ソースコード内のタグを配置できる位置と、\f2X\fP を使ってこのタグを無効にできるかどうかを特定します。タグの配置位置を制限しない場合は \f4a\fP を指定します。 それ以外の文字の組み合わせも可能です。 \f4X\fP (タグの無効化) +Javadoc ġ뤬ɥơ󥳥ΰ 1 ļñʥ֥å \f2@\fP\f2tagname\fP Ǥ褦ˤޤJavadoc ġϥ̾Ρ֥ڥåפԤȤǤΤǡ¸ߤ뤹٤ƤΥॿˤĤơ \f2\-tag\fP ץޤ뤳ȤפǤμ¹ԤǤϽϤʤϡX դ̵ \f2ˤޤ\fP +.LP + (\f4:\fP) ˶ڤʸˤʤޤtagname \f2ǥѤˡˤĤƤϡ\fP ֥̾ǤΥλѡפ򻲾ȤƤ +.LP +\f2\-tag\fP ץϡθФtagheadפǽϤޤ μιԤˤϡΥץΰǻꤷƥȤ³ޤ ʲ򻲾ȤƤ֥åƱ͡ΰΥƥȤˤϥ饤󥿥ޤ뤳ȤǤޤΥ饤󥿥ᤵޤϤϡ 1 ļɸΥ ( \f2@return\fP \f2@author\fP ʤ) νϤȤ褯Ƥޤ\f2taghead\fP άȡ\f2tagname\fP ФȤɽޤ +.LP +\f3\fP \- \f4Xaoptcmf\fP ʬϡΥ֤Ǥ֤ȡ ȤäƤΥ̵ˤǤ뤫ɤꤷޤ \f2X\fP). ְ֤¤ʤ \f4a\fP ꤷޤʳʸȤ߹碌ǽǤ \f4X\fP (̵) .br -\f4a\fP (すべての位置) +\f4a\fP (٤) .br -\f4o\fP (概要) +\f4o\fP () .br -\f4p\fP (パッケージ) +\f4p\fP (ѥå) .br -\f4t\fP (型すなわちクラスおよびインタフェース) +\f4t\fP (Ĥޤꥯ饹ȥ󥿥ե) .br -\f4c\fP (コンストラクタ) +\f4c\fP (󥹥ȥ饯) .br -\f4m\fP (メソッド) +\f4m\fP (᥽å) .br -\f4f\fP (フィールド) -.LP -\f3シングルタグの例\fP \- ソースコード内の任意の位置で使用で気るタグのタグオプションの例を示します。 +\f4f\fP (ե) +.LP +\f3󥰥륿\fP \- Ǥդΰ֤ǻѤǤ륿Υץ򼨤ޤ .nf \f3 .fl @@ -5107,7 +3604,7 @@ .fl \fP .fi -@todo をコンストラクタ、メソッド、フィールドのみで使用する場合は、以下のオプションを使用します。 +@todo 򥳥󥹥ȥ饯᥽åɡեɤΤߤǻѤϡʲΥץѤޤ .nf \f3 .fl @@ -5115,7 +3612,7 @@ .fl \fP .fi -上の例の最後のコロン (\f2:\fP) は、パラメータ区切り子ですが、見出しテキストの一部になっています (以下の例を参照)。次の例のように、\f2@todo\fP タグを含むソースコードでは、いずれかのタグオプションを使用します。 +κǸΥ (\f2:\fP) ϡѥ᡼ڤҤǤФƥȤΰˤʤäƤޤ (ʲ򻲾)Τ褦ˡ \f2@todo\fP ޤॽɤǤϡ줫ΥץѤޤ .nf \f3 .fl @@ -5123,7 +3620,7 @@ .fl \fP .fi -\f3タグ名にコロンを使用する\fP \- コロン (:) をバックスラッシュでエスケープすると、コロンをタグ名に使用することができます。このドキュメンテーションコメントの中では、次のように使用します。 +\f3̾˥Ѥ\fP \- (:) Хååǥפȡ򥿥̾˻Ѥ뤳ȤǤޤΥɥơ󥳥ȤǤϡΤ褦˻Ѥޤ .nf \f3 .fl @@ -5135,7 +3632,7 @@ .fl \fP .fi -でこのタグオプションを使用すると、 +ǤΥץѤȡ .nf \f3 .fl @@ -5143,9 +3640,9 @@ .fl \fP .fi -\f3タグ名のスペルチェック (タグの無効化)\fP \- ソースコード内に配置した一部のカスタムタグの出力を抑制したい場合があります。この場合も、ソースコード内にすべてのタグを配置し、出力を抑制しないタグを有効にし、出力を抑制するタグを無効にします。タグを無効にするには、\f2X\fP を指定します。指定しないと、そのタグは有効になります。 これにより、Javadoc ツールは、検出したタグが入力ミスなどによる未知のタグであるかどうかを特定できます。未知のタグを検出した場合、Javadoc ツールは警告を出力します。 -.LP -すでに配置されている値に \f2X\fP を追加できます。 こうしておけば、\f2X\fP を削除するだけでタグを有効にすることができます。たとえば、@todo タグの出力を抑制したい場合、次のように指定します。 +\f3̾Υڥå (̵)\fP \- ֤ΥॿνϤ礬ޤξ⡢ˤ٤ƤΥ֤ϤʤͭˤϤ륿̵ˤޤ \f2X\fP ¸ߤϥ̵ˤʤꡢ¸ߤʤϥͭˤʤޤˤꡢJavadoc ġϡФϥߥʤɤˤ̤ΤΥǤ뤫ɤǤޤ̤ΤΥ򸡽Ф硢Javadoc ġϷٹϤޤ +.LP +Ǥ֤Ƥͤ \f2X\fP ɲäǤޤƤС \f2X ǥͭˤ뤳ȤǤޤ\fPȤС@todo νϤ硢Τ褦˻ꤷޤ .nf \f3 .fl @@ -5153,7 +3650,7 @@ .fl \fP .fi -さらに単純な指定方法もあります。 +ñʻˡ⤢ޤ .nf \f3 .fl @@ -5162,13 +3659,13 @@ \fP .fi .LP -構文 \f2\-tag todo:X\fP は、\f2@todo\fP が taglet で定義されている場合も有効です。 -.LP -\f3タグの順序\fP \- \f2\-tag\fP (および \f2\-taglet\fP) オプションの順序によって、その出力順序が決定します。カスタムタグと標準タグを組み合わせて使用することもできます。標準タグのタグオプションは、順序を決定するためだけのプレースホルダです。これらは標準タグ名のみを使用します。(標準タグの小見出しは変更できません。)これについては、以下の例で説明します。 -.LP -\f2\-tag\fP がない場合、\f2\-taglet\fP の位置によってその順序が決定します。タグが両方とも存在する場合、コマンド行の最後にあるほうがその順序を決定します。これは、タグやタグレットがコマンド行に指定された順番に処理されるためです。たとえば、\f2\-taglet\fP と \f2\-tag\fP の両方が todo という名前を持っている場合、コマンド行の最後にあるほうが順序を決定します。 -.LP -\f3タグの完全セットの例\fP \- この例では、出力の「Parameters」と「Throws」の間に「To Do」を挿入します。X を使用して、@example が、ソースコード内の今回の実行では出力されないタグであることを指定します。@argfile を使用する場合は、次のように、引数ファイル内の別々の行にタグを配置できます。 行の継続を示す文字は不要です。 +ʸ \f2\-tag todo:X\fP ϡ \f2@todo\fP åȤƤƤͭǤ +.LP +\f3ν\fP \- \f2\-tag\fP ( \f2\-taglet\fP) ץνˤäơνϽ礬ޤޤॿɸॿȤ߹碌ƻѤ뤳ȤǤޤɸॿΥץϡꤹ뤿Υץ졼ۥǤɸॿ̾ΤߤѤޤ(ɸॿξФѹǤޤ)ˤĤƤϡʲޤ +.LP +\f2\-tag\fP ¸ߤʤϡ \f2\-taglet\fP ΰ֤ˤäƤνޤޤξȤ¸ߤ硢ޥɹԤκǸˤۤνꤷޤϡ䥿åȤޥɹԤ˻ꤵ줿֤˽뤿ǤȤС \f2\-taglet\fP \f2\-tag\fP ξ todo Ȥ̾äƤ硢ޥɹԤκǸˤۤꤷޤ +.LP +\f3δåȤ\fP \- ǤϡϤΡParametersפȡThrowsפδ֤ˡTo DoפޤX Ѥơ@example κμ¹ԤǤϽϤʤǤ뤳Ȥꤷޤ@argfile ѤϡΤ褦ˡե̡ιԤ˥֤ǤޤԤη³򼨤ʸפǤ .nf \f3 .fl @@ -5187,37 +3684,37 @@ \fP .fi .LP -javadoc がドキュメンテーションコメントを解析する際に検出されたタグのうち、標準タグでも \f2\-tag\fP や \f2\-taglet\fP で渡されるタグでもないものは、未知のタグの見なされます。 この場合、警告がスローされます。 -.LP -標準タグは、最初、デフォルトの順序でリスト内に内部的に格納されます。\f2\-tag\fP オプションを使用すると、このリストに追加されるタグ、すなわち標準タグの位置がデフォルトの位置から移動します。つまり、標準タグに \f2\-tag\fP オプションを付けなければ、これらはデフォルトの位置に配置されたままになります。 -.LP -\f3競合の回避\fP \- 固有の名前空間を分割するには、パッケージに使用されている \f2com.mycompany.todo\fP のように、ドット (.) 区切りの命名規則を使用します。Sun は、今後も名前にドットを含まない標準タグを作成します。ユーザーが作成したタグは、Sun が提供する同じ名前のタグの動作をオーバーライドします。つまり、ユーザーが \f2@todo\fP という名前のタグまたはタグレットを作成している場合、Sun があとから同じ名前の標準タグを作成しても、そのタグまたはタグレットは元の動作を保持します。 -.LP -\f3注釈 vs. Javadoc タグ\fP \- 一般に、追加する必要のあるマークアップが、ドキュメンテーションに影響を与えたりドキュメンテーションを生成したりするためのものである場合、そのマークアップは javadoc タグにすべきです。 それ以外の場合は注釈にすべきです。 +javadoc ɥơ󥳥ȤϤݤ˸줿ΤɸॿǤ⡢ \f2\-tag\fP \f2\-taglet\fP Ϥ줿ǤʤΤϤ٤̤ΤΥȤߤʤ졢ٹ𤬥ޤ +.LP +ɸॿϡǽ顢ǥեȤνǥꥹŪ˳Ǽޤ \f2\-tag\fP ץѤȡΥꥹȤɲä륿ʤɸॿΰ֤ǥեȤΰ֤ưޤĤޤꡢɸॿ \f2\-tag\fP ץդʤСϥǥեȤΰ֤֤줿ޤޤˤʤޤ +.LP +\f3β\fP \- ֤ͭ̾٤ʬˤϡѥå˻ѤƤ \f2com.mycompany.todo Ȥ̾Τ褦ˡɥå (.) ڤ국Ȥ̾Ȥޤ\fPOracle ϡ̾˥ɥåȤޤޤʤɸॿޤ桼ϡOracle 󶡤Ʊ̾Υư򥪡С饤ɤޤĤޤꡢ \f2@todo\fP Ȥ̾ΥޤϥåȤ桼硢Oracle θƱ̾ɸॿȤƤ⡢ưϾ˥桼ưƱˤʤޤ +.LP +\f3 vs. Javadoc \fP \- ̤ˡɲäɬפΤޡåפɥơ˱ƶͿɥơꤹ뤿ΤΤǤ硢Υޡåפ javadoc ˤ٤Ǥʳξˤ٤Ǥ .na -\f2「Comparing Annotations and Javadoc Tags」\fP @ +\f2Comparing Annotations and Javadoc Tags\fP @ .fi -http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#annotationsを参照してください。 -.LP -\-taglet オプションを使用して、より複雑なブロックタグやカスタムインラインタグを 作成することができます。 +http://java.sun.com/j2se/javadoc/writingdoccomments/index.html#annotations򻲾ȤƤ +.LP +\-taglet ץѤơʣʥ֥å䥫।饤󥿥 뤳ȤǤޤ .LP .TP 3 \-taglet\ \ class -そのタグのドキュメントの生成に使うドックレットを起動するためのクラスファイルを指定します。クラスの完全指定名を指定してください。このタグレットは、カスタムタグのテキスト引数の数も定義します。タグレットは、これらの引数を受け付け、処理し、出力を生成します。外部ドキュメントとサンプルタグレットについては、以下を参照してください。 +ΥΥɥȤ˻ȤɥååȤư뤿Υ饹եꤷޤ饹δ̾ꤷƤΥåȤϡॿΥƥȰοޤåȤϡΰդϤޤɥȤȥץ륿åȤˤĤƤϡʲ򻲾ȤƤ .RS 3 .TP 2 o .na -\f2「タグレットの概要」\fP @ +\f2֥åȤγס\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/javadoc/taglet/overview.html .RE .LP -タグレットは、標準タグまたはインラインタグで便利です。タグレットは任意の数の引数をとることができます。 また、テキストを太字にする、箇条書きを作成する、テキストをファイルに書き出す、その他のプロセスを開始するなどのカスタム動作を実装できます。 -.LP -タグレットで指定できるのは、タグの配置場所と配置形式のみです。その他のすべての決定は、ドックレットによって行われます。タグレットを使用しても、包含クラスのリストからクラス名を削除するなどの処理は実行できません。ただし、タグのテキストをファイルに出力したり、別のプロセスをトリガーするなどの副作用は得られます。 -.LP -タグレットのパスを指定するには、\f2\-tagletpath\fP オプションを使用します。以下は、生成されるページの「Parameter」と「Throws」の間に「To Do」タグレットを挿入する例です。 +åȤϡ֥åޤϥ饤󥿥ǤåȤǤդοΰȤ뤳ȤǤޤޤƥȤˤ롢վ񤭤롢ƥȤե˽񤭽Ф¾Υץ򳫻ϤʤɤΥưǤޤ +.LP +åȤǻǤΤϡ־ַΤߤǤ¾Τ٤ƤηϡɥååȤˤäƹԤޤåȤѤƤ⡢ޥ饹ΥꥹȤ饯饹̾ʤɤνϼ¹ԤǤޤ󡣤ΥƥȤե˽Ϥꡢ̤ΥץȥꥬʤɤѤޤ +.LP +åȤΥѥꤹˤϡ\f2\-tagletpath\fP ץѤޤʲϡڡΡParameterפȡThrowsפδ֤ˡTo DoץåȤǤ .nf \f3 .fl @@ -5238,25 +3735,25 @@ \fP .fi .LP -\f2\-tag\fP オプションの代わりに \f2\-taglet\fP オプションを使用することもできますが、読みやすさを考慮するなら、\f2\-tag\fP オプションを使用したほうがよいでしょう。 +ޤ \f2\-taglet\fP ץ \f2\-tag\fP ץ˻Ѥ뤳ȤǤޤȲ㲼ǽޤ .LP .TP 3 \-tagletpath\ \ tagletpathlist -taglet クラスファイル (.class) の検索パスを指定します。\f2tagletpathlist\fP には、コロン (\f2:\fP) で区切って複数のパスを含めることができます。Javadoc ツールは、指定されたパスの以下すべてのサブディレクトリを検索します。 +taglet 饹ե (.class) θѥꤷޤ\f2tagletpathlist\fP ˤϡ (\f2:\fP) ǶڤäʣΥѥޤ뤳ȤǤޤJavadoc ġϡꤵ줿ѥʲΤ٤ƤΥ֥ǥ쥯ȥ򸡺ޤ .LP .TP 3 \-docfilessubdirs\ -\f2doc\-files\fP ディレクトリの深いコピーを有効にします。つまり、コピー先には、サブディレクトリとすべてのコンテンツがコピーされます。たとえば、\f2doc\-files/example/images\fP ディレクトリとその中のファイルがコピーされます。ここでも、サブディレクトリを除外する指定が可能です。 +\f2doc\-files\fPץǥ쥯ȥοԡͭˤޤĤޤꡢԡˤϡ֥ǥ쥯ȥȤ٤ƤΥƥĤԡޤȤСǥ쥯ȥ \f2doc\-files/example/images\fP ȤΤ٤ƤƤԡޤǤ⡢֥ǥ쥯ȥ꤬ǽǤ .LP .TP 3 \-excludedocfilessubdir\ \ name1:name2... -所定の名前の \f2doc\-files\fP サブディレクトリを除外します。これにより、SCCS とその他のソースコード制御サブディレクトリのコピーを防ぎます。 +\f2doc\-files\fPפΡꤵ줿̾Υ֥ǥ쥯ȥ򤹤٤ƽޤˤꡢSCCS Ȥ¾Υ極֥ǥ쥯ȥΥԡɤޤ .LP .TP 3 \-noqualifier\ \ all\ | \ packagename1:packagename2:... -出力されるクラス名の先頭のパッケージ名 (パッケージ修飾子) を省略します。\f2\-noqualifier\fP の引数として \f2all\fP を指定した場合、すべてのパッケージ修飾子がすべて省略されます。 削除する複数のパッケージ名をコロンで区切って、ワイルドカードとともに指定することもできます。クラスまたはインタフェース名が表示される位置からパッケージ名が削除されます。 -.LP -次の例では、すべてのパッケージ修飾子を省略します。 +Ϥ륯饹̾ƬΥѥå̾ (ѥå) άޤ \f2\-noqualifier\fP ΰϡ\f2all\fP(٤ƤΥѥåҤά)ҤȤƺ٤ѥåΥڤꥹ (磻ɥɤ)Τ줫Ȥʤޤ饹ޤϥ󥿥ե̾ɽ֤ѥå̾ޤ +.LP +Ǥϡ٤ƤΥѥåҤάޤ .nf \f3 .fl @@ -5264,7 +3761,7 @@ .fl \fP .fi -次の例では、パッケージ修飾子 java.lang および java.io を省略します。 +Ǥϡѥå java.lang java.io άޤ .nf \f3 .fl @@ -5272,7 +3769,7 @@ .fl \fP .fi -次の例では、java で始まるパッケージ修飾子と com.sun というサブパッケージ (javax ではない) を省略します。 +Ǥϡjava ǻϤޤѥåҤ com.sun Ȥ֥ѥå (javax ǤϤʤ) άޤ .nf \f3 .fl @@ -5280,63 +3777,54 @@ .fl \fP .fi -パッケージ修飾子が上記の動作に従って表示される場合、名前は適切に短くされます。 詳細は「名前の表示方法」を参照してください。この規則は、\f2\-noqualifier\fP を使用したかどうかにかかわらず有効です。 +ѥåҤ嵭ư˽äɽ硢̾Ŭڤûޤܺ٤ϡ̾ɽˡפ򻲾ȤƤε§ϡ \f2\-noqualifier\fP Ѥ뤫ɤˤ餺ͭǤ .LP .TP 3 \-notimestamp\ -タイムスタンプが抑制されます。 各ページ先頭近くにある、生成された HTML 内の HTML コメントでタイムスタンプが隠されます。Javadoc を 2 つのソースベースで実行し、それらに対して diff を実行するときにこのオプションを使用すると、タイムスタンプによって diff が発生しなくなるので便利です (このオプションを使用しないと、各ページで diff になります)。タイムスタンプには Javadoc のバージョン番号が含まれており、次のようになります。 +ॹפޤƥڡƬ᤯ˤ롢줿 HTML HTML ȤǥॹפޤJavadoc 2 ĤΥ١Ǽ¹ԤФ diff ¹ԤȤˤΥץѤȡॹפˤä diff ȯʤʤΤǤ (ΥץѤʤȡƥڡ diff ˤʤޤ)ॹפˤ Javadoc ΥСֹ椬ޤޤƤꡢΤ褦ˤʤޤ .nf \f3 .fl - <!\-\- Generated by javadoc (build 1.5.0\-internal) on Tue Jun 22 09:57:24 PDT 2004 \-\-> + <!\-\- Generated by javadoc (build 1.5.0_01) on Thu Apr 02 14:04:52 IST 2009 \-\-> .fl \fP .fi .LP .TP 3 \-nocomment\ -主説明およびすべてのタグを含むコメント本文全体を抑制し、宣言だけを生成します。このオプションにより、元は異なる目的のためだったソースファイルを再利用し、新しいプロジェクトの早い段階でスケルトン HTML ドキュメントを作成できるようになりました。 +Ӥ٤ƤΥޤॳʸΤޤΥץˤꡢϰۤʤŪΤäեѤץȤᤤʳǥȥ HTML ɥȤǤ褦ˤʤޤ +.LP +.TP 3 +\-sourcetab tabLength +dzƥ֤οꤷޤ .RE -.SH "コマンド行引数ファイル" -.LP -.LP -\f2javadoc\fP のコマンド行を短くしたり簡潔にしたりするために、\f2javadoc\fP コマンドに対する引数 (\f2\-J\fP オプションを除く) が入った 1 つ以上のファイルを指定することができます。このことを利用すれば、どのオペレーティングシステム上でも、任意の長さの javadoc コマンドを作成できます。 -.LP -.LP -引数ファイルには、javac のオプションとソースファイル名を自由に組み合わせて記述できます。ファイル内の各引数は、スペースまたは改行で区切ります。ファイル名に空白が含まれている場合は、そのファイル名全体を二重引用符で囲みます。 -.LP -.LP -引数ファイル内のファイル名は、現在のディレクトリから見た相対パスになります。引数ファイルの位置から見た相対パスではありません。引数ファイル内のファイル名リストでは、ワイルドカード (*) は使用できません。たとえば、\f2*.java\fP とは指定できません。引数ファイル内の引数で \f2@\fP 文字を使用して、複数のファイルを再帰的に解釈することはサポートされていません。また、\f2\-J\fP オプションもサポートされていません。 このオプションは起動ツールに渡されますが、起動ツールでは引数ファイルをサポートしていないからです。 -.LP -.LP -javadoc を実行するときに、各引数ファイルのパスとファイル名の先頭に \f2@\fP 文字を付けて渡します。javadoc は、\f2@\fP 文字で始まる引数を見つけると、そのファイルの内容を展開して引数リストに挿入します。 -.LP +.SH "ޥɹ԰ե" +.LP +javadoc ΥޥɹԤûʷˤꤹ뤿ˡ \f2javadoc\fP ޥɤФ ( \f2\-J\fP ץ) ä 1 İʾΥեꤹ뤳ȤǤޤΤȤѤСɤΥڥ졼ƥ󥰥ƥǤ⡢ǤդĹ javadoc ޥɤǤޤ +.LP +եˤϡjavac Υץȥե̾ͳȤ߹碌ƵҤǤޤեγưϡڡޤϲԤǶڤޤե̾˶򤬴ޤޤƤϡΥե̾ΤŰǰϤߤޤ +.LP +եΥե̾ϡߤΥǥ쥯ȥ꤫鸫Хѥˤʤޤեΰ֤鸫ХѥǤϤޤ󡣰եΥե̾ꥹȤǤϡ磻ɥ (*) ϻѤǤޤ󡣤ȤС \f2*.java\fP ȤϻǤޤ󡣰եΰ \f2@\fP ʸѤơʣΥեƵŪ˲᤹뤳ȤϥݡȤƤޤ󡣤ޤ \f2\-J\fP ץ⥵ݡȤƤޤ ΥץϵưġϤޤưġǤϰե򥵥ݡȤƤʤǤ +.LP +javadoc ¹ԤȤˡưեΥѥȥե̾Ƭ \f2@\fP ʸդϤޤjavadoc ϡ\f2@\fP ʸǻϤޤ򸫤ĤȡΥեƤŸưꥹȤޤ .SS -引数ファイルを 1 つ指定する例 -.LP -.LP -\f2argfile\fP という名前の引数ファイルにすべての Javadoc 引数を格納し、次のように使用することができます。 -.LP +ե 1 Ļꤹ +.LP +Τ褦ˡ\f2argfile\fPפȤ̾ñΰեˡJavadoc Τ٤ƤΰǼޤ .nf \f3 .fl % \fP\f3javadoc @argfile\fP .fl .fi - -.LP -.LP -この引数ファイルには、次の例で示されている 2 つのファイルの内容を両方とも入れることができます。 -.LP +.LP +ΰեˤϡǼƤ 2 ĤΥեƤξȤ뤳ȤǤޤ .SS -引数ファイルを 2 つ指定する例 -.LP -.LP -Javadoc オプション用に 1 つ、ソースファイル名用に 1 つというように、2 つの引数ファイルを作成し、次のようにして使用することができます。なお、このあとのリストでは、行の継続文字を使用していません。 -.LP -.LP -以下の内容を含む \f2options\fP という名前のファイルを作成します。 -.LP +ե 2 Ļꤹ +.LP +2 ĤΰեǤޤ1 Ĥ Javadoc ץѡ⤦ 1 Ĥϥѥå̾ޤϥե̾ѤǤʤΥꥹȤǤϹԷ³ʸѤƤޤ +.LP +Ƥޤࡢ\f2options\fPפȤ̾Υեޤ .nf \f3 .fl @@ -5346,27 +3834,24 @@ .fl \-splitindex .fl - \-windowtitle 'Java 2 Platform v1.3 API Specification' -.fl - \-doctitle 'Java(TM) 2 Platform 5.0 API Specification' -.fl - \-header '<b>Java 2 Platform </b><br><font size="\-1">5.0</font>' -.fl - \-bottom 'Copyright 1993\-2000 Sun Microsystems, Inc. All Rights Reserved.' + \-windowtitle 'Java SE 7 API Specification' +.fl + \-doctitle 'Java SE 7 API Specification' +.fl + \-header '<b>Java(TM) SE 7</b>' +.fl + \-bottom 'Copyright © 1993\-2011 Oracle and/or its affiliates. All rights reserved.' .fl \-group "Core Packages" "java.*" .fl - \-overview /java/pubs/ws/1.5/src/share/classes/overview\-core.html -.fl - \-sourcepath /java/pubs/ws/1.5/src/share/classes + \-overview /java/pubs/ws/1.7.0/src/share/classes/overview\-core.html +.fl + \-sourcepath /java/pubs/ws/1.7.0/src/share/classes .fl \fP .fi - -.LP -.LP -以下の内容を含む \f2packages\fP という名前のファイルを作成します。 -.LP +.LP +Ƥޤࡢ\f2packages\fPפȤ̾Υեޤ .nf \f3 .fl @@ -5378,115 +3863,89 @@ .fl \fP .fi - -.LP -.LP -そのあと、次のコマンドを使用して javadoc を実行します。 -.LP +.LP +ΤȡΥޥɤѤ javadoc ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc @options @packages\fP .fl .fi - -.LP .SS -パス付きの引数ファイルの例 -.LP -.LP -引数ファイルには、パスを指定できます。 ただし、そのファイル内に指定されたファイル名は、現在の作業ディレクトリから見た相対パスになります。 つまり、下の例の場合は、\f2path1\fP や \f2path2\fP から見た相対パスではありません。 -.LP +ѥդΰե +.LP +եˤϡѥǤޤΥե˻ꤵ줿ե̾ϡߤκȥǥ쥯ȥ꤫鸫ХѥˤʤޤĤޤꡢξϡ \f2path1\fP \f2path2\fP 鸫ХѥǤϤޤ .nf \f3 .fl % \fP\f3javadoc @path1/options @path2/packages\fP .fl .fi - -.LP .SS -オプションの引数の例 -.LP -.LP -次に、Javadoc オプションに対する引数だけを引数ファイルに格納する例を示します。ここでは、\f2\-bottom\fP を例に取り上げます。 そのオプションには、かなり長い引数を指定することがあるからです。まず、このオプションのテキスト引数になる次のような内容を含む、\f2bottom\fP という名前のファイルを作成します。 -.LP +ץΰ +.LP +ˡJavadoc ץФե˳Ǽ򼨤ޤǤ \f2\-bottom\fP ץѤޤȤΤ⡢Ĺʤǽ뤫ǤΤ褦ʥƥȰޤࡢ\f2bottom\fPפȤ̾ΥեǤޤ .nf \f3 .fl -'<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a -.fl -bug or feature</a><br><br>Java is a trademark or registered trademark of -.fl -Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993\-2000 Sun -.fl -Microsystems, Inc. 901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. -.fl -All Rights Reserved.</font>' +<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font> .fl \fP .fi - -.LP -.LP -そのあと、次のようにして Javadoc ツールを実行します。 -.LP +.LP +ΤȡΤ褦ˤ Javadoc ġ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc \-bottom @bottom @packages\fP .fl .fi - -.LP -.LP -また、引数ファイルの先頭に \f2\-bottom\fP オプションを組み込んでおけば、次のようにして実行できます。 -.LP +.LP +뤤ϡեƬ \f2\-bottom\fP ץȤ߹ȡΤ褦˼¹ԤƤ⤫ޤޤ .nf \f3 .fl % \fP\f3javadoc @bottom @packages\fP .fl .fi -.SH "名前" -実行 -.SH "Javadoc の実行" -.LP -.LP -\f3バージョン番号\fP \- javadoc のバージョン番号を判別するには、\f3javadoc \-J\-version\fP を使用します。出力ストリームには標準ドックレットのバージョン番号が含まれます。\f2\-quiet\fP で無効にできます。 -.LP -.LP -\f3公開プログラムインタフェース\fP \- Java 言語で記述されたプログラムから Javadoc ツールを起動するとき使用します。このインタフェースは \f2com.sun.tools.javadoc.Main\fP にあります (javadoc は再入可能)。詳細は、 -.na -\f2「標準ドックレット」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/javadoc/standard\-doclet.html#runningprogrammaticallyを参照してください。 -.LP -.LP -\f3ドックレットの実行\fP \- 下記の説明は、標準 HTML ドックレットを呼び出すためのものです。カスタムドックレットを呼び出すには、\-doclet および \-docletpath オプションを使用します。特定のドックレットを実行した完全な例については、 +.SH "̾" +¹ +.SH "Javadoc μ¹" +.LP +\f3Сֹ\fP \- javadoc ΥСֹȽ̤ˤϡ\f3javadoc \-J\-version\fP Ѥޤϥȥ꡼ˤɸɥååȤΥСֹ椬ޤޤޤνϤ̵ˤˤϡ \f2\-quiet\fP Ѥޤ +.LP +\f3ץ।󥿥ե\fP \- Java ǵҤ줿ץफ Javadoc ġưȤѤޤΥ󥿥ե \f2com.sun.tools.javadoc.Main ˤޤ\fP (javadoc Ϻǽ)ܺ٤ϡ .na -\f2MIF Doclet のドキュメント\fP @ +\f2ɸɥååȡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/javadoc/standard\-doclet.html#runningprogrammatically򻲾ȤƤ +.LP +\f3ɥååȤμ¹\fP \- ϡɸ HTML ɥååȤƤӽФΤΤǤɥååȤƤӽФˤϡ\-doclet \-docletpath ץѤޤΥɥååȤ¹ԤˤĤƤϡ +.na +\f2MIF Doclet Υɥ\fP @ .fi -http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.htmlを参照してください。 -.LP -.SH "簡単な例" -.LP -.LP -javadoc は、パッケージ全体に対して実行することも、個々のソースファイルに対して実行することもできます。各パッケージ名は、それぞれのパッケージ名に対応するディレクトリ名を持ちます。次の例では、ソースファイルは \f2/home/src/java/awt/*.java\fP にあります。生成先ディレクトリは \f2/home/html\fP です。 -.LP +http://java.sun.com/j2se/javadoc/mifdoclet/docs/mifdoclet.html򻲾ȤƤ +.SH "ñ" +.LP +javadoc ϡѥåΤФƼ¹Ԥ뤳Ȥ⡢ġΥեФƼ¹Ԥ뤳ȤǤޤƥѥå̾ϡ줾Υѥå̾бǥ쥯ȥ̾ޤǤϡե \f2/home/src/java/awt/*.java ˤޤ\fPǥ쥯ȥ \f2/home/html Ǥ\fP .SS -1 つ以上のパッケージのドキュメント化 -.LP -.LP -パッケージをドキュメント化するには、そのパッケージのソースファイル (\f2*.java\fP) が、パッケージと同じ名前を持つディレクトリ内に存在していなければなりません。パッケージ名が複数の識別子で構成されている (\f2java.awt.color\fP のように、各識別子はドットで区切られている) 場合は、後続の各識別子が下位のサブディレクトリに対応していなければなりません (\f2java/awt/color\fP など)。1 つのパッケージのための複数のソースファイルを、異なる場所にある 2 つのディレクトリツリーに分けて格納することも可能です (\f2src1/java/awt/color\fP と \f2src2/java/awt/color\fP など)。 ただし、その場合は、\f2\-sourcepath\fP によって、その両方の場所を指定しなければなりません。 -.LP -.LP -javadoc を実行するには、\f2cd\fP コマンドを使ってディレクトリを変更するか、または \f2\-sourcepath\fP オプションを使用します。以下の例では、両方の方法について説明します。 -.LP +1 İʾΥѥåΥɥȲ +.LP +ѥåɥȲˤϡΥѥåΥե (\f2*.java\fP) 򡢤ΥѥåƱ̾Υǥ쥯ȥ˳Ǽɬפޤѥå̾ ( \f2java.awt.color\fP Τ褦˥ɥåȤǶڤ줿) Ĥμ̻Ҥ鹽Ƥ硢¦μ̻Ҥ˿ʤिӤˡμ̻Ҥ꿼֥ǥ쥯ȥбƤɬפޤ ( \f2java/awt/color\fP ʤ) ñѥåΥե 2 롼פʬۤʤˤ뤽Τ褦 2 ĤΥǥ쥯ȥĥ꡼ˤ줾ǼƤ⤫ޤޤ󡣤ξΥǥ쥯ȥؤΥѥ \f2\-sourcepath\fP ꤹɬפޤ: \f2src1/java/awt/color\fP \f2src2/java/awt/color\fP +.LP +javadoc ¹Ԥˤϡ \f2cd\fP Ѥƥǥ쥯ȥѹ뤫 \f2\-sourcepath\fP ץѤޤʲǤϡξˡˤĤޤ .RS 3 .TP 2 o -\f3ケース 1 \- 1 つ以上のパッケージからの起動を再帰的に実行\fP \- この例では javadoc が任意のディレクトリから実行できるように、\-sourcepath を使用し、再帰的処理のために \-subpackages (1.4 の新オプション) を使用します。これは、\f2java\fP のサブパッケージ (\f2java.net\fP および \f2java.lang\fP をルートとするパッケージを除く) を処理します。ただし、\f2java.lang\fP のサブパッケージである \f2java.lang.ref\fP は除外されます。 +\f3 1 \- 1 İʾΥѥåεưƵŪ˼¹\fP \- Ǥ javadoc ǤդΥǥ쥯ȥ꤫¹ԤǤ褦ˡ\-sourcepath ѤƵŪΤ \-subpackages (1.4 οץ) Ѥޤϡ \f2java\fP ǥ쥯ȥΥ֥ѥå򤿤ɤޤκݤˡ \f2java.net\fP \f2java.lang\fP 롼Ȥ˻ĥѥåϽޤΤȤ \f2java.lang Υ֥ѥå\fPǤ java.lang.ref \f2ޤ\fP .nf \f3 .fl @@ -5494,10 +3953,10 @@ .fl .fi .LP -その他のパッケージツリーを巡回するには、\f2java:javax:org.xml.sax\fP のように、\f2\-subpackages\fP 引数にその名前を追加します。 +ۤΥѥåĥ꡼Ⲽˤɤˤϡ \f2java:javax:org.xml.sax Τ褦ˡ\fP Υѥå̾ \-subpackages \f2ΰɲäޤ\fP .TP 2 o -\f3ケース 2 \- ルートソースディレクトリに移ってから明示的なパッケージに対して実行\fP \- 完全指定のパッケージ名の親ディレクトリに移ります。次に、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。 +\f3 2 \- 롼ȥǥ쥯ȥ˰ܤäƤŪʥѥåФƼ¹\fP \- Υѥå̾οƥǥ쥯ȥ˰ܤޤˡɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5508,7 +3967,7 @@ .fi .TP 2 o -\f3ケース 3 \- 任意のディレクトリから実行。 ソースファイルは 1 つのディレクトリツリー内にある\fP \- このケースでは、現在のディレクトリがどこであってもかまいません。最上位パッケージの親ディレクトリを \f2\-sourcepath\fP に指定し、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。 +\f3 3 \- ǤդΥǥ쥯ȥ꤫¹ԡե 1 ĤΥǥ쥯ȥĥ꡼ˤ\fP \- ΥǤϡߤΥǥ쥯ȥ꤬ɤǤäƤ⤫ޤޤ󡣺Ǿ̥ѥåοƥǥ쥯ȥ \f2\-sourcepath\fP ˻ꤷɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5517,7 +3976,7 @@ .fi .TP 2 o -\f3ケース 4 \- 任意のディレクトリから実行。 ソースファイルは複数のディレクトリツリー内にある\fP \- これはケース 3 と似ていますが、パッケージが複数のディレクトリツリーに存在します。それぞれのツリーのルートへのパスを \f2\-sourcepath\fP に指定し (コロンで区切る)、ドキュメント化する 1 つ以上のパッケージ名を指定して javadoc を実行します。1 つのパッケージのすべてのソースファイルが、1 つのルートディレクトリの下に存在しなければならない、ということはありません。 ソースパスとして指定された場所のどこかで見つかれば十分です。 +\f3 4 \- ǤդΥǥ쥯ȥ꤫¹ԡեʣΥǥ쥯ȥĥ꡼ˤ\fP \- ϥ 3 ȻƤޤѥåʣΥǥ쥯ȥĥ꡼¸ߤޤ줾Υĥ꡼Υ롼ȤؤΥѥ \f2\-sourcepath\fP ˻ꤷ (Ƕڤ)ɥȲ 1 İʾΥѥå̾ꤷ javadoc ¹Ԥޤ1 ĤΥѥåΤ٤ƤΥե뤬1 ĤΥ롼ȥǥ쥯ȥβ¸ߤʤФʤʤȤȤϤޤ󡣥ѥȤƻꤵ줿ΤɤǸĤнʬǤ .nf \f3 .fl @@ -5525,21 +3984,16 @@ .fl .fi .RE - -.LP -.LP -結果: 上記のどのケースでも、\f2java.awt\fP と \f2java.awt.event\fP パッケージ内の public および protected クラスとインタフェースについて、HTML 形式のドキュメントが生成され、指定された生成先ディレクトリ (\f2/home/html\fP) に HTML ファイルが保存されます。2 つ以上のパッケージが生成されているので、ドキュメントは、パッケージのリスト、クラスのリスト、およびメインのクラスページという 3 つのフレームを持つことになります。 -.LP +.LP +: ٤ƤΥǥѥå \f2java.awt\fP \f2java.awt.event\fP public protected 饹ȥ󥿥եˤĤơHTML ΥɥȤ졢ꤵ줿ǥ쥯ȥ (\f2/home/html\fP) HTML ե뤬¸ޤ2 İʾΥѥåƤΤǡɥȤϡѥåΥꥹȡ饹ΥꥹȡӥᥤΥ饹ڡȤ 3 ĤΥե졼ĤȤˤʤޤ .SS -1 つ以上のクラスのドキュメント化 -.LP -.LP -また、1 つ以上のソースファイル (\f2.java\fP) を渡して、Javadoc ツールを実行することもできます。javadoc は、次の 2 つのどちらかの方法で実行できます。 1 つは、\f2cd\fP コマンドでディレクトリを変更する方法、もう 1 つは \f2.java\fP ファイルへのパスを完全指定する方法です。相対パスは、現在のディレクトリを起点とします。ソースファイル名を渡すときは、\f2\-sourcepath\fP オプションは無視されます。アスタリスク (*) のようなコマンド行ワイルドカードを使用すると、クラスのグループを指定できます。 -.LP +1 İʾΥ饹ΥɥȲ +.LP +ޤ1 İʾΥե (\f2.java\fP) ϤơJavadoc ġ¹Ԥ뤳ȤǤޤjavadoc ϡ 2 ĤˡΤ줫Ǽ¹ԤǤޤ1 Ĥ \f2cd\fP Ѥƥǥ쥯ȥѹˡ⤦ 1 Ĥ \f2.java\fP եؤΥѥ˻ꤹˡǤХѥϡߤΥǥ쥯ȥȤޤե̾ϤȤϡ \f2\-sourcepath\fP ץ̵뤵ޤꥹ (*) Τ褦ʥޥɹԥ磻ɥɤѤȡ饹Υ롼פǤޤ .RS 3 .TP 2 o -\f3ケース 1 \- ソースディレクトリに移る\fP \- \f2.java\fP ファイルのあるディレクトリに移ります。次に、ドキュメント化する 1 つ以上のソースファイルの名前を指定して javadoc を実行します。 +\f3 1 \- ǥ쥯ȥ˰ܤ\fP \- \f2.java\fP եΤǥ쥯ȥ˰ܤޤˡɥȲ 1 İʾΥե̾ꤷ javadoc ¹Ԥޤ .nf \f3 .fl @@ -5548,10 +4002,10 @@ % \f3javadoc \-d /home/html Button.java Canvas.java Graphics*.java\fP .fl .fi -この例では、クラス \f2Button\fP と \f2Canvas\fP、および名前が \f2Graphics\fP で始まるクラスについて、HTML 形式のドキュメントが生成されます。パッケージ名ではなくソースファイルが javadoc に引数として渡されているので、ドキュメントは、クラスのリストとメインページという 2 つのフレームを持つことになります。 +Ǥϡ饹 \f2Button\fP \f2Canvas\fP ̾ \f2Graphics ǻϤޤ륯饹ˤĤơHTML ΥɥȤޤ\fPѥå̾ǤϤʤե뤬 javadoc ˰ȤϤƤΤǡɥȤϡ饹ΥꥹȤȥᥤڡȤ 2 ĤΥե졼ĤȤˤʤޤ .TP 2 o -\f3ケース 2 \- パッケージのルートディレクトリに移る\fP \- これは、同じルート内にある複数のサブパッケージの個々のソースファイルをドキュメント化する場合に便利です。パッケージのルートディレクトリに移り、各ソースファイルを、ルートからのパスとともに指定します。 +\f3 2 \- ѥåΥ롼ȥǥ쥯ȥ˰ܤ\fP \- ϡƱ롼ˤʣΥ֥ѥåθġΥեɥȲǤѥåΥ롼ȥǥ쥯ȥ˰ܤꡢƥե򡢥롼ȤΥѥȤȤ˻ꤷޤ .nf \f3 .fl @@ -5560,103 +4014,88 @@ % \f3javadoc \-d /home/html java/awt/Button.java java/applet/Applet.java\fP .fl .fi -この例では、\f2Button\fP クラスおよび \f2Applet\fP クラスについて、HTML 形式のドキュメントが生成されます。 +Ǥϡ饹 \f2Button\fP \f2Applet ˤĤơHTML ΥɥȤޤ\fP .TP 2 o -\f3ケース 3 \- 任意のディレクトリから\fP \- このケースでは、現在のディレクトリがどこであってもかまいません。ドキュメント化する \f2.java\fP ファイルへの絶対パス (または、現在のディレクトリからの相対パス) を指定して javadoc を実行します。 +\f3 3 \- ǤդΥǥ쥯ȥ꤫\fP \- ΥǤϡߤΥǥ쥯ȥ꤬ɤǤäƤ⤫ޤޤ󡣥ɥȲ .java եؤХѥ (ޤϥȥǥ쥯ȥ꤫Хѥ) ꤷ \f2javadoc\fP ¹Ԥޤ .nf \f3 .fl % \fP\f3javadoc \-d /home/html /home/src/java/awt/Button.java /home/src/java/awt/Graphics*.java\fP .fl .fi -この例では、クラス \f2Button\fP と、名前が \f2Graphics\fP で始まるクラスについて、HTML 形式のドキュメントが生成されます。 +Ǥϡ饹 \f2Button\fP ȡ̾ \f2Graphics ǻϤޤ륯饹ˤĤơHTML ΥɥȤޤ\fP .RE - -.LP .SS -パッケージとクラスのドキュメント化 -.LP -.LP -パッケージ全体と個々のクラスを同時に指定してドキュメント化することもできます。次に前述の 2 つの例を組み合わせた例を示します。\f2\-sourcepath\fP は、パッケージへのパスに対しては使用できますが、個々のクラスのパスに対しては使用できません。 -.LP +ѥåȥ饹ΥɥȲ +.LP +ѥåΤȸġΥ饹Ʊ˻ꤷƥɥȲ뤳ȤǤޤҤ 2 ĤȤ߹碌򼨤ޤ \f2\-sourcepath\fP ϡѥåؤΥѥФƤϻѤǤޤġΥ饹ΥѥФƤϻѤǤޤ .nf \f3 .fl % \fP\f3javadoc \-d /home/html \-sourcepath /home/src java.awt /home/src/java/applet/Applet.java\fP .fl .fi - -.LP -.LP -この例では、パッケージ \f2java.awt\fP と、クラス \f2Applet\fP について、HTML 形式のドキュメントが生成されます。Javadoc ツールは、\f2Applet\fP のパッケージ名を、\f2Applet.java\fP ソースファイル内のパッケージ宣言 (その宣言がある場合) から判別します。 -.LP -.SH "使用例" -.LP -.LP -Javadoc ツールには多くの便利なオプションがあり、その中にはほかのオプションよりも頻繁に使われるものがあります。ここで紹介するのは、Java プラットフォーム API に対して Javadoc ツールを実行するときに使用する実際のコマンドです。Java 2 Platform, Standard Edition, v1.2 に存在する、約 1500 個の public および protected クラスについてドキュメントを生成するために、180M バイトのメモリーを使用しました。 -.LP -.LP -同じ例を 2 回掲載します。 最初の例はコマンド行から実行するもので、2 番目の例は Makefile から実行するものです。オプションの引数に絶対パスを使用しているため、任意のディレクトリからこの \f2javadoc\fP コマンドを実行できます。 -.LP +.LP +Ǥϡѥå \f2java.awt\fP ȥ饹 \f2Applet ˤĤơHTML ΥɥȤޤ\fPJavadoc ġϡ \f2Applet.java ե˥ѥåС\fP ˴Ť \f2Applet Υѥå̾\fP Ƚꤷޤ +.SH "" +.LP +Javadoc ġˤ¿ʥץ󤬤ꡢˤϤۤΥץˤ˻ȤΤޤǾҲ𤹤ΤϡJava ץåȥե API Ф Javadoc ġ¹ԤȤ˻ѤºݤΥޥɤǤǤϡJava SE Platform, Standard Edition, v1.2 () 1500 Ĥ public protected 饹ΥɥȤ뤿ˡ180M ХȤΥ꡼Ѥޤ +.LP +Ʊ 2 ǺܤޤǽϥޥɹԤ¹ԤΤǡ2 ܤ Makefile ¹ԤΤǤץΰХѥѤƤ뤿ᡢƱ \f2javadoc\fP ޥɤɤΥǥ쥯ȥ꤫Ǥ¹ԤǤޤ .SS -コマンド行の例 -.LP -.LP -次のコマンド行の例は 900 文字を超えているため、DOS などのシェルには大きすぎます。この制限を回避するには、コマンド行引数ファイルを使用します。 または、シェルスクリプトを記述します。 -.LP +ޥɹԤ +.LP +ϡDOS ʤɤΰΥǤĹǽޤ¤򤹤ˤϡޥɹ԰եѤޤޤϡ륹ץȤ򵭽Ҥޤ .nf \f3 .fl -% javadoc \-sourcepath /java/jdk/src/share/classes \\ -.fl - \-overview /java/jdk/src/share/classes/overview.html \\ -.fl - \-d /java/jdk/build/api \\ -.fl - \-use \\ -.fl - \-splitIndex \\ -.fl - \-windowtitle 'Java 2 Platform 5.0 API Specification' \\ -.fl - \-doctitle 'Java(TM) 2 Platform 5.0 API Specification' \\ -.fl - \-header '<b>Java 2 Platform </b><br><font size="\-1">5.0</font>' \\ -.fl - \-bottom '<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit -.fl -a bug or feature</a><br><br>Java is a trademark or registered trademark of Sun Microsystems, -.fl -Inc. in the US and other countries.<br>Copyright 1993\-1999 Sun Microsystems, Inc. -.fl -901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. All Rights Reserved.</font>' \\ +% javadoc \-sourcepath /java/jdk/src/share/classes \\ +.fl + \-overview /java/jdk/src/share/classes/overview.html \\ +.fl + \-d /java/jdk/build/api \\ +.fl + \-use \\ +.fl + \-splitIndex \\ +.fl + \-windowtitle 'Java Platform, Standard Edition 7 API Specification' \\ +.fl + \-doctitle 'Java Platform, Standard Edition 7 API Specification' \\ +.fl + \-header '<b>Java(TM) SE 7</b>' \\ +.fl + \-bottom '<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font>' \\ .fl \-group "Core Packages" "java.*:com.sun.java.*:org.omg.*" \\ .fl - \-group "Extension Packages" "javax.*" \\ -.fl - \-J\-Xmx180m \\ + \-group "Extension Packages" "javax.*" \\ +.fl + \-J\-Xmx180m \\ .fl @packages .fl \fP .fi - -.LP -.LP -上記のコマンドで、\f2packages\fP は、処理対象のパッケージ名 (\f2java.applet java.lang\fP など) が入っているファイルの名前です。各オプションの、単一引用符で囲まれた引数の内側には、改行文字を挿入できません。たとえば、この例をコピー&ペーストする場合は、\f2\-bottom\fP オプションから改行文字を削除してください。さらに、このあとの「注」も参照してください。 -.LP +.LP +嵭Υޥɤǡ \f2packages\fP ϡоݤΥѥå̾ ( \f2java.applet java.lang\fP ʤ) äƤե̾ǤƥץΡñǰϤޤ줿¦ˤϡʸǤޤ󡣤ȤС򥳥ԡڡȤϡ \f2\-bottom\fP ץ󤫤ʸƤˡΤȤΡפ⻲ȤƤ .SS -Makefile の例 -.LP -.LP -ここでは、GNU Makefile の例を示します。Windows の Makefile の例については、 +Makefile +.LP +ǤϡGNU Makefile 򼨤ޤWindows Makefile ˤĤƤϡ .na -\f2Windows の Makefile の作成方法\fP @ +\f2Windows Makefile κˡ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html#makefilesを参照してください。 -.LP +http://java.sun.com/j2se/javadoc/faq/index.html#makefiles򻲾ȤƤ .nf \f3 .fl @@ -5692,101 +4131,83 @@ .fl .fl -WINDOWTITLE = 'Java 2 Platform v1.2 API Specification' -.fl -DOCTITLE = 'Java(TM) 2 Platform v1.2 API Specification' -.fl -HEADER = '<b>Java 2 Platform </b><br><font size="\-1">v1.2</font>' -.fl -BOTTOM = '<font size="\-1"><a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit -.fl - a bug or feature</a><br><br>Java is a trademark or registered trademark -.fl - of Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993\-1999 -.fl - Sun Microsystems, Inc. 901 San Antonio Road,<br>Palo Alto, California, 94303, U.S.A. -.fl - All Rights Reserved.</font>' +WINDOWTITLE = 'Java(TM) SE 7 API Specification' +.fl +DOCTITLE = 'Java(TM) Platform Standard Edition 7 API Specification' +.fl +HEADER = '<b>Java(TM) SE 7</font>' +.fl +BOTTOM = '<font size="\-1"> +.fl + <a href="http://java.sun.com/cgi\-bin/bugreport.cgi">Submit a bug or feature</a><br/> +.fl + Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved.<br/> +.fl + Oracle is a registered trademark of Oracle Corporation and/or its affiliates. +.fl + Other names may be trademarks of their respective owners.</font>' .fl GROUPCORE = '"Core Packages" "java.*:com.sun.java.*:org.omg.*"' .fl GROUPEXT = '"Extension Packages" "javax.*"' .fl -SRCDIR = '/java/jdk/1.2/src/share/classes' +SRCDIR = '/java/jdk/1.7.0/src/share/classes' .fl \fP .fi - -.LP -.LP -Makefile の引数は、単一引用符で囲みます。 -.LP -.LP -\f3注\fP -.LP +.LP +Makefile ΰϡñǰϤߤޤ +.LP +\f3\fP .RS 3 .TP 2 o -\f2\-windowtitle\fP オプションを省略すると、Javadoc ツールによって、ドキュメントタイトルがウィンドウタイトルにコピーされます。\f2\-windowtitle\fP のテキストは、基本的に \f2\-doctitle\fP と同じです。 ただし、HTML タグは使用しません。 HTML タグは、ウィンドウタイトルにそのままのテキストとして表示されてしまいます。 +\-windowtitle \f2ץάȡ\fP Javadoc ġˤäƥɥȥȥ뤬ɥȥ˥ԡޤ \f2\-windowtitle\fP ΥƥȤϴŪ \f2\-doctitle\fP ΤΤƱǤHTML ޤޤʤۤʤޤϡHTML raw ƥȤȤƥɥȥɽΤɤǤ .TP 2 o -この例のように \f2\-footer\fP オプションを省略すると、Javadoc ツールによって、ヘッダーテキストがフッターにコピーされます。 +ǹԤäƤ褦 \f2\-footer\fP ץάȡJavadoc ġˤäƥإåΥƥȤեå˥ԡޤ .TP 2 o -この例では必要ありませんが、\-\f2classpath\fP および \-\f2link\fP も重要なオプションです。 +Ǥɬפޤ󤬡\-\f2classpath\fP \-\f2link\fP פʥץǤ .RE - -.LP -.SH "トラブルシューティング" -.LP +.SH "ȥ֥륷塼ƥ" .SS -一般的なトラブルシューティング -.LP +Ūʥȥ֥륷塼ƥ .RS 3 .TP 2 o -\f3Javadoc FAQ\fP \- 一般的なバグおよびトラブルシューティングのヒントは、 +\f3Javadoc FAQ\fP \- ŪʥХӥȥ֥륷塼ƥ󥰤ΥҥȤϡ .na -\f2「Javadoc FAQ」\fP @ +\f2Javadoc FAQ\fP @ .fi -http://java.sun.com/j2se/javadoc/faq/index.html#B で参照できます。 +http://java.sun.com/j2se/javadoc/faq/index.html#B ǻȤǤޤ .TP 2 o -\f3バグおよび制限事項\fP \- バグの一部は、「Important Bug Fixes and Changes」 でも参照できます。 +\f3Х»\fP \- ХΰϡImportant Bug Fixes and Changes Ǥ⻲ȤǤޤ .TP 2 o -\f3バージョン番号\fP \- 「バージョン番号」を参照してください。 +\f3Сֹ\fP \- ֥Сֹפ򻲾ȤƤ .TP 2 o -\f3有効なクラスだけをドキュメント化\fP \- パッケージをドキュメント化するとき、Javadoc は、有効なクラス名で構成されているファイルのみを読み込みます。たとえば、ファイル名にハイフン「\-」を含めることで、javadoc によるファイルの解析を防ぐことができます。 +\f3ͭʥ饹ɥȲ\fP \- ѥåɥȲȤJavadoc ϡͭʥ饹̾ǹƤեΤߤɤ߹ߤޤȤСե̾˥ϥե\-פޤ뤳Ȥǡjavadoc ˤեβϤɤȤǤޤ .RE - -.LP .SS -エラーと警告 -.LP -.LP -エラーおよび警告メッセージには、ファイル名と宣言行 (ドキュメンテーションコメント内の特定の行ではない) の行番号が含まれます。 -.LP +顼ȷٹ +.LP +顼ӷٹåˤϡե̾ (ɥơ󥳥ιԤǤϤʤ) ιֹ椬ޤޤޤ .RS 3 .TP 2 o -\f2"error:cannot read:Class1.java"\fP Javadoc ツールはカレントディレクトリに Class1.java クラスをロードしようとしています。絶対パスまたは相対パスとともに表示されるクラス名は、この例の場合 \f2./Class1.java\fP と同じです。 +\f2"error: cannot read: Class1.java"\fP Javadoc ġϥȥǥ쥯ȥ Class1.java 饹ɤ褦ȤƤޤХѥޤХѥȤȤɽ륯饹̾ϡξ \f2./Class1.java ƱǤ\fP .RE - -.LP -.SH "環境" -.LP +.SH "Ķ" .RS 3 .TP 3 CLASSPATH -Javadoc がユーザークラスのファイルを探すときに使うパスを指定する環境変数です。この環境変数は、\f2\-classpath\fP オプションによってオーバーライドされます。ディレクトリは、次のようにコロンで区切ります。 +Javadoc 桼饹ΥեõȤ˻ȤѥꤹĶѿǤδĶѿϡ \f2\-classpath\fP ץˤäƥС饤ɤޤǥ쥯ȥϡΤ褦˥Ƕڤޤ .:/home/classes:/usr/local/java/classes .RE - -.LP -.SH "関連項目" -.LP +.SH "Ϣ" .RS 3 .TP 2 o @@ -5806,7 +4227,7 @@ .TP 2 o .na -\f2Javadoc のホームページ\fP @ +\f2Javadoc Υۡڡ\fP @ .fi http://java.sun.com/j2se/javadoc/index.jsp .TP 2 @@ -5818,16 +4239,14 @@ .TP 2 o .na -\f2クラスパスの設定\fP @ +\f2饹ѥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/tools/index.html#general .TP 2 o .na -\f2javac と javadoc がクラスを検索する方法\fP @ +\f2javac javadoc 饹򸡺ˡ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html#srcfiles (tools.jar) .RE - -.LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/javah.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/javah.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/javah.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,82 +19,67 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javah 1 "02 Jun 2010" +.TH javah 1 "14 Apr 2011" .LP -.SH "名前" -javah \- C ヘッダーとスタブファイルジェネレータ -.LP -.RS 3 - +.SH "̾" +javah \- C إåȥ֥ե른ͥ졼 .LP .LP -\f3javah\fP は、Java クラスから C ヘッダーファイルと C ソースファイルを作成します。これらのファイルは、Java プログラミング言語で書かれたコードと、C などのその他の言語で書かれたコードを接続し、コードが相互に作用するようにします。 +\f3javah\fP ϡJava 饹 C إåե C եޤΥեϡJava ץߥ󥰸ǽ񤫤줿ɤȡC ʤɤΤ¾θǽ񤫤줿ɤ³ɤߤ˺Ѥ褦ˤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 .fl javah [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . . .fl -javah_g [ \fP\f3options\fP\f3 ] fully\-qualified\-classname. . . -.fl \fP .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javah\fP は、ネイティブメソッドを実装するために必要な C ヘッダーとソースファイルを生成します。作成されたヘッダーとソースファイルは、ネイティブソースコードからオブジェクトのインスタンス変数を参照するために C プログラムによって使用されます。.h ファイルは、対応するクラスと一致する配置を持つ構造体定義を含みます。構造体のフィールドは、クラスのインスタンス変数に対応します。 -.LP -.LP -ヘッダーファイルとその中で宣言される構造体の名前はクラスの名前から派生します。\f3javah\fP に渡されるクラスがパッケージの中にある場合、パッケージ名はヘッダーファイル名と構造体名の両方に付加されます。下線 (_) が名前の区切り文字として使用されます。 +\f3javah\fP ϡͥƥ֥᥽åɤ뤿ɬפ C إåȥեޤ줿إåȥեϡͥƥ֥ɤ饪֥ȤΥ󥹥ѿ򻲾Ȥ뤿 C ץˤäƻѤޤ.h եϡб륯饹Ȱפ֤Ťޤߤޤ¤ΤΥեɤϡ饹Υ󥹥ѿбޤ .LP .LP -デフォルトでは \f3javah\fP は、コマンド行にリストされる各クラスのヘッダーファイルを作成し、現在のディレクトリにファイルを置きます。ソースファイルを作成するには、\f2\-stubs\fP オプションを使用してください。1 つのファイルの中に、リストされたすべてのクラスの結果を連結するには、\f2\-o\fP オプションを使用してください。 -.LP -.LP -新しいネイティブメソッドインタフェースである Java Native Interface (JNI) は、ヘッダー情報またはスタブファイルを必要としません。 現在では、\f3javah\fP は、JNI 形式のネイティブメソッドに必要なネイティブメソッド機能プロトタイプを生成します。 デフォルトでは、\f3javah\fP は JNI 形式で出力され、その結果は .h ファイルに格納されます。 +إåեȤ빽¤Τ̾ϥ饹̾ޤ\f3javah\fP Ϥ륯饹ѥåˤ硢ѥå̾ϥإåե̾ȹ¤̾ξղäޤ (_) ̾ζڤʸȤƻѤޤ .LP .LP -\f3javah_g\fP は、jdb(1) のようなデバッガに適した、\f3javah\fP の最適化されていないバージョンです。 +ǥեȤǤ \f3javah\fP ϡޥɹԤ˥ꥹȤƥ饹ΥإåեߤΥǥ쥯ȥ˥ե֤ޤեˤϡ\f2\-stubs\fP ץѤƤ1 ĤΥեˡꥹȤ줿٤ƤΥ饹η̤Ϣ뤹ˤϡ\f2\-o\fP ץѤƤ +.LP .LP -.SH "オプション" +ͥƥ֥᥽åɥ󥿥եǤ Java Native Interface (JNI) ϡإåޤϥ֥եɬפȤޤ󡣸ߤǤϡ\f3javah\fP ϡJNI Υͥƥ֥᥽åɤɬפʥͥƥ֥᥽åɵǽץȥפޤǥեȤǤϡ\f3javah\fP JNI ǽϤ졢η̤ .h ե˳Ǽޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-o outputfile -コマンド行にリストされたすべてのクラスに対して、結果のヘッダーまたはソースファイルを連結して \f2outputfile\fP に格納します。\f3\-o\fP または \f3\-d\fP のどちらか一方だけが使われます。 +ޥɹԤ˥ꥹȤ줿٤ƤΥ饹Фơ̤ΥإåޤϥեϢ뤷 \f2outputfile\fP ˳Ǽޤ\f3\-o\fP ޤ \f3\-d\fP Τɤ餫Ȥޤ .TP 3 \-d directory -\f3javah\fP がヘッダーファイルまたはスタブファイルを保存する、ディレクトリを設定します。\f3\-d\fP または \f3\-o\fP のどちらか一方だけが使われます。 +\f3javah\fP إåեޤϥ֥ե¸롢ǥ쥯ȥꤷޤ\f3\-d\fP ޤ \f3\-o\fP Τɤ餫Ȥޤ .TP 3 \-stubs -\f3javah\fP が、Java オブジェクトファイルから C 宣言を生成します。 +\f3javah\fP Java ֥ȥե뤫 C ޤ .TP 3 \-verbose -詳細出力を指定し、作成ファイルの状態に関するメッセージを、\f3javah\fP が標準出力に出力します。 +ܺٽϤꤷեξ֤˴ؤå\f3javah\fP ɸϤ˽Ϥޤ .TP 3 \-help -\f3javah\fP の使用法についてのヘルプメッセージを出力します。 +\f3javah\fP λˡˤĤƤΥإץåϤޤ .TP 3 \-version -\f3javah\fP のバージョン情報を出力します。 +\f3javah\fP ΥСϤޤ .TP 3 \-jni -JNI 形式のネイティブファイル機能プロトタイプを含む出力ファイルを、\f3javah\fP が作成します。これは標準出力であるため、\f3\-jni\fP の使用はオプションです。 +JNI Υͥƥ֥ե뵡ǽץȥפޤϥե\f3javah\fP ޤɸϤǤ뤿ᡢ\f3\-jni\fP λѤϥץǤ .TP 3 \-classpath path -クラスを探すために \f3javah\fP が使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 +饹õ \f3javah\fP ѤѥꤷޤǥեȤޤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -102,7 +87,7 @@ .fl \fP .fi -例を示します。 +򼨤ޤ .nf \f3 .fl @@ -111,33 +96,31 @@ \fP .fi .LP -便宜上、\f2*\fP のベース名を含むクラスパス要素は、ディレクトリ内の拡張子 \f2.jar\fP または \f2.JAR\fP を持つすべてのファイルのリストを指定するのと同じとみなされます (Java プログラムはこの 2 つの呼び出しを区別できない)。 +ص塢 \f2*\fP Υ١̾ޤ९饹ѥǤϡǥ쥯ȥγĥ \f2.jar\fP ޤ \f2.JAR\fP Ĥ٤ƤΥեΥꥹȤꤹΤƱȤߤʤޤ (Java ץϤ 2 ĤθƤӽФ̤Ǥʤ) .br .br -たとえば、ディレクトリ \f2foo\fP に \f2a.jar\fP と \f2b.JAR\fP が含まれている場合、クラスパス要素 \f2foo/*\fP は \f2A.jar:b.JAR\fP に展開されます。 ただし、JAR ファイルの順番は指定されません。このリストには、隠しファイルも含め、指定されたディレクトリ内のすべての JAR ファイルが含まれます。\f2*\fP だけから成るクラスパスエントリは、カレントディレクトリ内のすべての JAR ファイルのリストに展開されます。\f2CLASSPATH\fP 環境変数も、定義時には同様に展開されます。クラスパスのワイルドカード展開は必ず、Java 仮想マシンの起動前に実行されます。したがって、\f2System.getenv("CLASSPATH")\fP 呼び出しのように環境に問い合わせを行わない限り、Java プログラムが展開されていないワイルドカードを認識することはありません。 +ȤСǥ쥯ȥ \f2foo\fP \f2a.jar\fP \f2b.JAR\fP ޤޤƤ硢饹ѥ \f2foo/*\fP \f2A.jar:b.JAR\fP ŸޤJAR եν֤ϻꤵޤ󡣤ΥꥹȤˤϡեޤᡢꤵ줿ǥ쥯ȥΤ٤Ƥ JAR ե뤬ޤޤޤ \f2*\fP 륯饹ѥȥϡߤΥǥ쥯ȥΤ٤Ƥ JAR եΥꥹȤŸޤ \f2CLASSPATH\fP Ķѿ⡢ˤƱͤŸޤ饹ѥΥ磻ɥŸɬJava ۥޥεư˼¹Ԥޤäơ\f2System.getenv("CLASSPATH")\fP ƤӽФΤ褦˴Ķ䤤碌Ԥʤ¤ꡢJava ץबŸƤʤ磻ɥɤǧ뤳ȤϤޤ .TP 3 \-bootclasspath path -ブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。 +֡ȥȥåץ饹ɤѥꤷޤ֡ȥȥåץ饹ϡǥեȤǤ \f2jre/lib/rt.jar\fP ¾ΤĤ JAR ե ˤ롢 Java 2 ץåȥե륯饹Ǥ .TP 3 \-old -古い JDK1.0 形式のヘッダーファイルを生成するように指定します。 +Ť JDK1.0 Υإåե褦˻ꤷޤ .TP 3 \-force -出力ファイルが常に書き込まれるように指定します。 +ϥե뤬˽񤭹ޤ褦˻ꤷޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割されています。 +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤵Ƥޤ .nf \f3 .fl @@ -148,11 +131,9 @@ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、java(1)、jdb(1)、javap(1)、javadoc(1) +javac(1)java(1)jdb(1)javap(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/javap.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/javap.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/javap.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javap 1 "02 Jun 2010" +.TH javap 1 "14 Apr 2011" .LP -.SH "名前" -javap \- Java クラスファイル逆アセンブラ -.LP -.RS 3 - +.SH "̾" +javap \- Java 饹եե֥ .LP .LP -クラスファイルを逆アセンブルします。 +饹եե֥뤷ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,15 +39,10 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3javap\fP コマンドは、クラスファイルを逆アセンブルします。その出力は指定するオプションにより異なります。オプションを指定しない場合、\f3javap\fP は、そのパッケージ、渡されたクラスの protected および public のフィールドとメソッドを出力します。 \f3javap\fP はその出力を標準出力に表示します。たとえば、次のクラス宣言をコンパイルするとします。 -.LP -.RS 3 - +\f3javap\fP ޥɤϡ饹եե֥뤷ޤνϤϻꤹ륪ץˤۤʤޤץꤷʤ硢\f3javap\fP ϡΥѥåϤ줿饹 protected public Υեɤȥ᥽åɤϤޤ\f3javap\fP ϤνϤɸϤɽޤȤСΥ饹򥳥ѥ뤹Ȥޤ .LP .nf \f3 @@ -96,14 +85,10 @@ .fl \fP .fi -.RE .LP .LP -\f3javap DocFooter\fP がもたらす出力は次のようになります。 -.LP -.RS 3 - +\f3javap DocFooter\fP ⤿餹ϤϼΤ褦ˤʤޤ .LP .nf \f3 @@ -126,14 +111,10 @@ .fl \fP .fi -.RE .LP .LP -\f3javap \-c DocFooter\fP がもたらす出力は次のようになります。 -.LP -.RS 3 - +\f3javap \-c DocFooter\fP ⤿餹ϤϼΤ褦ˤʤޤ .LP .nf \f3 @@ -244,41 +225,35 @@ .fl \fP .fi -.RE .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -\-help -\f3javap\fP のヘルプメッセージを出力します。 +\-help \-\-help \-? +\f3javap\fP ΥإץåϤޤ +.TP 3 +\-version +Сɽޤ .TP 3 \-l -行番号と局所変数テーブルを表示します。 -.TP 3 -\-b -JDK 1.1 の \f3javap\fP との下位互換性を保証します。 +ֹȶɽѿơ֥ɽޤ .TP 3 \-public -public クラスおよびメンバーだけを表示します。 +public 饹ӥСɽޤ .TP 3 \-protected -protected および public のクラスとメンバーだけを表示します。 +protected public Υ饹ȥСɽޤ .TP 3 \-package -package、protected、および public のクラスとメンバーだけを表示します。これはデフォルトの設定です。 +packageprotected public Υ饹ȥСɽޤϥǥեȤǤ .TP 3 -\-private -すべてのクラスとメンバーを表示します。 +\-private \-p +٤ƤΥ饹ȥСɽޤ .TP 3 \-Jflag -ランタイムシステムに直接 \f2flag\fP を渡します。使用例を次に示します。 -.RS 3 - -.LP +󥿥ॷƥľ \f2flag\fP Ϥޤ򼡤˼ޤ .nf \f3 .fl @@ -288,23 +263,28 @@ .fl \fP .fi -.RE .TP 3 \-s -内部の型シグニチャーを出力します。 +η˥㡼Ϥޤ +.TP 3 +\-sysinfo +Υ饹Υƥ (ѥաMD5 ϥå) ɽޤ +.TP 3 +\-constants +static final ɽޤ .TP 3 \-c -クラスの各メソッドのために逆アセンブルされるコード、すなわち Java バイトコードから成る命令を表示します。これらは +饹γƥ᥽åɤΤ˵ե֥뤵륳ɡʤ Java Хȥɤ̿ɽޤ .na -\f2「Java Virtual Machine Specification」\fP @ +\f2Java Virtual Machine Specification\fP @ .fi -http://java.sun.com/docs/books/vmspec/にドキュメント化されています。 +http://java.sun.com/docs/books/vmspec/˥ɥȲƤޤ .TP 3 \-verbose -メソッドのスタックサイズ、および \f2locals\fP と \f2args\fP の数を出力します。 +᥽åɤΥå \f2locals\fP \f2args\fP οϤޤ .TP 3 \-classpath path -\f3javap\fP がクラスを探すために使用するパスを指定します。デフォルトまたは CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 +\f3javap\fP 饹õ˻ѤѥꤷޤǥեȤޤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -312,7 +292,7 @@ .fl \fP .fi -例を示します。 +򼨤ޤ .nf \f3 .fl @@ -322,24 +302,19 @@ .fi .TP 3 \-bootclasspath path -ブートストラップクラスをロードするパスを指定します。ブートストラップクラスは、デフォルトでは \f2jre/lib/rt.jar\fP および他のいくつかの JAR ファイル にある、コア Java 2 プラットフォームを実装するクラスです。 +֡ȥȥåץ饹ɤѥꤷޤ֡ȥȥåץ饹ϡǥեȤǤ \f2jre/lib/rt.jar\fP ¾ΤĤ JAR ե ˤ롢 Java 2 ץåȥե륯饹Ǥ .TP 3 \-extdirs dirs -インストールされた拡張機能を検索する場所をオーバーライドします。The default location for extensions is the value of \f2java.ext.dirs\fP. +󥹥ȡ뤵줿ĥǽ򸡺򥪡С饤ɤޤĥǽϡǥեȤǤ \f2java.ext.dirs\fP ˤޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。 次に例を示します。 -.RS 3 - -.LP +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -348,14 +323,11 @@ \fP .fi .RE -.RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、 java(1)、jdb(1)、javah(1)、javadoc(1) +javac(1)java(1)jdb(1)javah(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/javaws.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/javaws.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/javaws.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,30 +19,18 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH javaws 1 "02 Jun 2010" +.TH javaws 1 "14 Apr 2011" .LP -.SH "名前" -\f2javaws\fP コマンド行 +.SH "̾" +\f2javaws\fP ޥɹ +.LP +.SH "̾" .LP .LP -\ -.LP -.SS -NAME -.LP -.RS 3 - -.LP +\f2javaws\fP \- Java Web Start ưޥ .LP -\f2javaws\fP \- Java Web Start 起動コマンド -.LP -.RE -.SS -形式 -.LP -.RS 3 - +.SH "" .LP .LP \f2javaws [run\-options] <jnlp>\fP @@ -50,309 +38,185 @@ .LP \f2javaws [control\-options]\fP .LP -.RE -.SS -パラメータ -.LP -.RS 3 - +.SH "ѥ᡼" .LP .LP \f2[run\-options]\fP .LP -.RS 3 - -.LP .LP -コマンド行実行オプション。 実行オプションは任意の順序で指定できます。各種オプションについては、下の 「実行オプション」を参照してください。 +ޥɹԼ¹ԥץ󡣼¹ԥץǤդνǻǤޤƼ索ץˤĤƤϡ ּ¹ԥץפ򻲾ȤƤ .LP -.RE .LP \f2<jnlp>\fP .LP -.RS 3 - -.LP .LP -JNLP (Java Network Launching Protocol) ファイルのパスまたは URL (Uniform Resource Locator) のどちらかです。 +JNLP (Java Network Launching Protocol) եΥѥޤ URL (Uniform Resource Locator) Τɤ餫Ǥ .LP -.RE .LP \f2[control\-options]\fP .LP -.RS 3 - -.LP -.LP -コマンド行制御オプション。 制御オプションは任意の順序で指定できます。各種オプションについては、下の 「制御オプション」を参照してください。 .LP -.RE -.RE -.SS -説明 +ޥɹ楪ץ楪ץǤդνǻǤޤƼ索ץˤĤƤϡ 楪ץפ򻲾ȤƤ .LP -.RS 3 - +.SH "" .LP .LP -\f2javaws\fP コマンドは、JNLP (Java Network Launching Protocol) のリファレンス実装である Java Web Start を起動します。Java Web Start は、ネットワーク上で動作する Java アプリケーションまたはアプレットを起動します。 -.LP -.LP -JNLP ファイルを指定すると、\f2javaws\fP は JNLP ファイルに指定された Java アプリケーションまたはアプレットを起動します。 +\f2javaws\fP ޥɤϡJNLP (Java Network Launching Protocol) Υե󥹼Ǥ Java Web Start ưޤJava Web Start ϡͥåȥư Java ץꥱޤϥץåȤưޤ .LP .LP -\f2javaws\fP 起動ツールには、現在のリリースでサポートされている 1 組のオプションがあります。ただし、これらのオプションは将来のリリースでは削除される可能性があります。 +JNLP ե뤬ꤵ줿硢 \f2javaws\fP ϡ JNLP եǻꤵ줿 Java ץꥱ/ץåȤưޤ +.LP .LP -.RE -.SS -実行オプション +\f2javaws\fP ưġˤϡߤΥ꡼ǥݡȤƤ 1 ȤΥץ󤬤ޤΥץϾΥ꡼ǤϺǽޤ .LP -.RS 3 - +.SH "¹ԥץ" .LP .LP \f2\-offline\fP .LP -.RS 3 - -.LP .LP -Java Web Start をオフラインモードで実行します。 +Java Web Start 򥪥ե饤⡼ɤǼ¹Ԥޤ .LP -.RE .LP \f2\-Xnosplash\fP .LP -.RS 3 - -.LP .LP -最初のスプラッシュ画面の表示を無効にします。 +ǽΥץå̤ɽ̵ˤޤ .LP -.RE .LP \f2\-open <arguments>\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、JNLP ファイル内の引数が \f2\-open <arguments>\fP に置き換わります。 +ΥץꤹȡJNLP եΰ \f2\-open <arguments>\fP ֤ޤ .LP -.RE .LP \f2\-print <arguments>\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、JNLP ファイル内の引数が \f2\-print <arguments>\fP に置き換わります。 +ΥץꤹȡJNLP եΰ \f2\-print <arguments>\fP ֤ޤ .LP -.RE .LP \f2\-online\fP .LP -.RS 3 - -.LP .LP -オンラインモードで実行します (デフォルトの動作)。 +饤⡼ɤǼ¹Ԥޤ (ǥեȤư) .LP -.RE .LP \f2\-wait\fP .LP -.RS 3 - -.LP .LP -このオプションを指定すると、アプリケーションが終了するまで \f2javaws\fP プロセスは終了しません。 +Υץꤷ硢 \f2javaws\fP ץϡץꥱ󤬽λޤǽλޤWindows ץåȥեǤϡΥץȤ˵ǽޤ .LP -.RE .LP \f2\-verbose\fP .LP -.RS 3 - -.LP .LP -追加の出力を表示します。 +ɲäνϤɽޤ .LP -.RE .LP \f2\-J<option>\fP .LP -.RS 3 - -.LP .LP -vm にオプションを補います。 +vm ˥ץ䤤ޤ .LP -.RE .LP \f2\-system\fP .LP -.RS 3 - -.LP -.LP -アプリケーションをシステムキャッシュからのみ実行します。 .LP -.RE -.RE -.SS -制御オプション +ץꥱ򥷥ƥ७å夫Τ߼¹Ԥޤ .LP -.RS 3 - +.SH "楪ץ" .LP .LP \f2\-viewer\fP .LP -.RS 3 - +.LP +Java ȥѥͥǥåӥ塼ɽޤ .LP .LP -Java コントロールパネルでキャッシュビューアを表示します。 +\f2\-clearcache\fP +.LP .LP -.RE +󥹥ȡ뤵Ƥʤ٤ƤΥץꥱ򥭥å夫ޤ +.LP .LP \f2\-userConfig <property name>\fP .LP -.RS 3 - -.LP .LP -指定された配備プロパティーをクリアします。 +ꤵ줿ץѥƥ򥯥ꥢޤ .LP -.RE .LP \f2\-userConfig <property name> <property value>\fP .LP -.RS 3 - -.LP .LP -指定された配備プロパティーを指定された値に設定します。 +ꤵ줿ץѥƥꤵ줿ͤꤷޤ .LP -.RE .LP \f2\-uninstall\fP .LP -.RS 3 - -.LP .LP -キャッシュからすべてのアプリケーションを削除します。 +å夫餹٤ƤΥץꥱޤ .LP -.RE .LP \f2\-uninstall <jnlp>\fP .LP -.RS 3 - -.LP .LP -キャッシュからアプリケーションを削除します。 +å夫饢ץꥱޤ .LP -.RE .LP \f2\-import [import\-options] <jnlp>\fP .LP -.RS 3 - -.LP .LP -キャッシュにアプリケーションをインポートします。 +å˥ץꥱ򥤥ݡȤޤ .LP -.RE -\f3インポートオプション\fP +.SH "ݡȥץ" .LP .LP \f2\-silent\fP .LP -.RS 3 - -.LP .LP -サイレントモードでインポートします (UI は表示されません)。 +ȥ⡼ɤǥݡȤޤ (UI ɽޤ) .LP -.RE .LP \f2\-system\fP .LP -.RS 3 - -.LP .LP -システムキャッシュにアプリケーションをインポートします。 +ƥ७å˥ץꥱ򥤥ݡȤޤ .LP -.RE .LP \f2\-codebase <url>\fP .LP -.RS 3 - -.LP .LP -任意の codebase からリソースを取得します。 +Ǥդ codebase ꥽ޤ .LP -.RE .LP \f2\-shortcut\fP .LP -.RS 3 - -.LP .LP -ユーザー許容プロンプトのようにショートカットをインストールします。このオプションは、\f2\-silent\fP オプションと一緒に使用しないと効果がありません。 +桼ƥץץȤΤ褦˥硼ȥåȤ򥤥󥹥ȡ뤷ޤΥץϡ \f2\-silent\fP ץѤʤȸ̤ޤ .LP -.RE .LP \f2\-association\fP .LP -.RS 3 - -.LP -.LP -ユーザー許容プロンプトのように関連付けをインストールします。このオプションは、\f2\-silent\fP オプションと一緒に使用しないと効果がありません。 .LP -.RE -.RE -.SS -ファイル +桼ƥץץȤΤ褦˴Ϣդ򥤥󥹥ȡ뤷ޤΥץϡ \f2\-silent\fP ץѤʤȸ̤ޤ .LP -.RS 3 - +.SH "ե" .LP .LP -ユーザーキャッシュ、システムキャッシュ、および deployment.properties ファイルについては、 +桼å塢ƥ७å塢 deployment.properties եˤĤƤϡ .na -\f2システムレベルおよびユーザーレベルのプロパティー\fP @ +\f2ƥ٥뤪ӥ桼٥Υץѥƥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/properties.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/properties.html򻲾ȤƤ .LP -.RE -.SS -詳細情報 -.LP -.RS 3 - +.SH "ܺپ" .LP .LP -Java Web Start の詳細は、 +Java Web Start ξܺ٤ϡ .na -\f2「Java Web Start」\fP @ +\f2Java Web Start\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/javaws/index.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/javaws/index.html򻲾ȤƤ .LP -.RS 3 - -.LP -.LP -\ -.LP -.RE -.RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jconsole.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jconsole.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jconsole.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jconsole 1 "02 Jun 2010" +.TH jconsole 1 "14 Apr 2011" .LP -.SH "名前" -jconsole \- Java 監視および管理コンソール +.SH "̾" +jconsole \- Java ƻ뤪Ӵ󥽡 .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -58,63 +56,60 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 -.br +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 connection = pid | host:port | jmxUrl .RS 3 -\f2pid\fP\ \ \ ローカルの Java VM のプロセス ID。Java VM は、jconsole を実行しているユーザー ID と同じユーザー ID を使用して実行する必要があります。詳細については、 +.TP 2 +o +\f2pid\fP Java VM Υץ IDJava VM ϡjconsole ¹ԤƤ桼 ID Ʊ桼 ID ѤƼ¹Ԥɬפޤܺ٤ˤĤƤϡ .na -\f2「JMX 監視および管理」\fP @ +\f2JMX ƻ뤪Ӵ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/management/agent.htmlを参照してください。 -.br -\f2host\fP:\f2port\fP\ \ Java VM が実行しているホストシステムの名前と、JVM を起動したときにシステムプロパティー \f2com.sun.management.jmxremote.port\fP で指定したポート番号。詳細については、 +http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html򻲾ȤƤ +.TP 2 +o +\f2host\fP:\f2port\fP Java VM ¹ԤƤۥȥƥ̾ȡJVM ưȤ˥ƥץѥƥ \f2com.sun.management.jmxremote.port\fP ǻꤷݡֹ档ܺ٤ˤĤƤϡ .na -\f2「JMX 監視および管理」\fP @ +\f2JMX ƻ뤪Ӵ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/management/agent.htmlを参照してください。 -.br -\f2jmxUrl\fP 接続先の JMX エージェントのアドレス。 これについては、 +http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html򻲾ȤƤ +.TP 2 +o +\f2jmxUrl\fP ³ JMX ȤΥɥ쥹ˤĤƤϡ .na \f2JMXServiceURL\fP @ .fi -http://java.sun.com/javase/6/docs/api/javax/management/remote/JMXServiceURL.html を参照してください。 +http://java.sun.com/javase/6/docs/api/javax/management/remote/JMXServiceURL.html 򻲾ȤƤ .RE .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jconsole\fP コマンドは、ローカルマシンまたはリモートマシン上の Java アプリケーションと仮想マシンの監視と管理を行うグラフィカルコンソールツールを起動します。 +\f3jconsole\fP ޥɤϡޥޤϥ⡼ȥޥ Java ץꥱȲۥޥδƻȴԤե륳󥽡ġưޤ .LP .LP -Windows 上では、\f3jconsole\fP はコンソールウィンドウと関連付けられていません。ただし、なんらかの理由で \f3jconsole\fP コマンドが失敗すると、エラー情報を示すダイアログボックスが表示されます。 +Windows Ǥϡ\f3jconsole\fP ϥ󥽡륦ɥȴϢդƤޤ󡣤ʤ餫ͳ \f3jconsole\fP ޥɤԤȡ顼򼨤ܥåɽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-interval=n -更新間隔を \f2n\fP 秒に設定します (デフォルトは 4 秒)。 +ֳ֤ \f2n\fP äꤷޤ (ǥեȤ 4 ) .TP 3 -\-notile\ -最初にウィンドウをタイリングしません (複数の接続のため)。 +\-notile +ǽ˥ɥ򥿥󥰤ޤ (ʣ³Τ) .TP 3 -\-pluginpath\ plugins -JConsole プラグインの検索先となるディレクトリまたは JAR ファイルのリストを指定します。\f2plugins\fP パスには、次の名前のプロバイダ構成ファイルを含めてください。 +\-pluginpath plugins +JConsole ץ饰θȤʤǥ쥯ȥޤ JAR եΥꥹȤꤷޤ\f2plugins\fP ѥˤϡ̾ΥץХեޤƤ .br .nf \f3 @@ -124,36 +119,36 @@ \fP .fi .LP -これには、 +ˤϡ .na \f2com.sun.tools.jconsole.JConsolePlugin\fP @ .fi -http://java.sun.com/javase/6/docs/jdk/api/jconsole/spec/com/sun/tools/jconsole/JConsolePlugin.html クラスを実装するクラスの完全修飾クラス名を指定する行が、プラグインごとに 1 行ずつ含まれています。 +http://java.sun.com/javase/6/docs/jdk/api/jconsole/spec/com/sun/tools/jconsole/JConsolePlugin.html 饹륯饹δ饹̾ꤹԤץ饰󤴤Ȥ 1 ԤĴޤޤƤޤ .TP 3 -\-version\ -バージョン情報を出力して終了します。 +\-version +СϤƽλޤ .TP 3 -\-help\ -ヘルプメッセージを出力して終了します。 +\-help +إץåϤƽλޤ .TP 3 -\-J<flag>\ -jconsole が実行されている Java 仮想マシンに <flag> を渡します。 +\-J<flag> +jconsole ¹ԤƤ Java ۥޥ <flag> Ϥޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2jconsole の使用\fP @ +\f2JConsole λ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/management/jconsole.html .TP 2 o .na -\f2「Java プラットフォームの監視および管理」\fP @ +\f2Java ץåȥեδƻ뤪Ӵ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/management/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jdb.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jdb.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jdb.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jdb 1 "02 Jun 2010" +.TH jdb 1 "14 Apr 2011" .LP -.SH "名前" -jdb \- Java デバッガ -.LP -.RS 3 - +.SH "̾" +jdb \- Java ǥХå .LP .LP -\f3jdb\fP は、Java 言語プログラムのバグを見つけて修正するために使用するツールです。 +\f3jdb\fP ϡJava ץΥХ򸫤Ĥƽ뤿˻ѤġǤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,41 +39,32 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -次に示すコマンド行オプション +˼ޥɹԥץ .TP 3 class -デバッグを開始するクラスの名前 +ǥХå򳫻Ϥ륯饹̾ .TP 3 arguments -\f2class\fP の \f2main()\fP メソッドに渡す引数 +class \f2main()\fP ᥽åɤϤ \f2\fP .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -Java デバッガ \f3jdb\fP は、Java クラス用の簡単なコマンド行デバッガです。 +Java ǥХå \f3jdb\fP ϡJava 饹ѤδñʥޥɹԥǥХåǤ .na \f2Java Platform Debugger Architecture\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/index.html を視覚的に実行し、ローカルまたはリモートの Java Virtual Machine の検査とデバッグを行うことができます。 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/index.html Ū˼¹Ԥޤϥ⡼Ȥ Java Virtual Machine θȥǥХåԤȤǤޤ .LP .SS -jdb セッションの開始 -.LP -.RS 3 - +jdb åγ .LP .LP -jdb セッションを開始するにはさまざまな方法があります。もっとも頻繁に使われるのは、デバッグするアプリケーションのメインクラスを使用して、\f3jdb\fP から新しい Java 仮想マシン (VM) を起動する方法です。コマンド行で、 \f3java\fP の代わりに \f3jdb\fP コマンドを入力します。たとえば、アプリケーションのメインクラスが MyClass の場合は、JDB 環境でデバッグするときに次のコマンドを使用します。 +jdb å򳫻ϤˤϤޤޤˡޤäȤˤ˻ȤΤϡǥХå륢ץꥱΥᥤ󥯥饹Ѥơ\f3jdb\fP 鿷 Java ۥޥ (VM) ưˡǤޥɹԤǡ\f3java\fP \f3jdb\fP ޥɤϤޤȤСץꥱΥᥤ󥯥饹 MyClass ξϡJDB ĶǥǥХåȤ˼ΥޥɤѤޤ .LP .nf \f3 @@ -91,10 +76,10 @@ .LP .LP -この方法で起動すると、\f3jdb\fP は、指定されたパラメータを使って 2 つ目の Java VM を呼び出します。 次に、指定されたクラスをロードして、クラスの最初の命令を実行する前に VM を停止させます。 +ˡǵưȡ\f3jdb\fP ϡꤵ줿ѥ᡼Ȥä 2 ܤ Java VM ƤӽФޤˡꤵ줿饹ɤơ饹κǽ̿¹Ԥ VM ߤޤ .LP .LP -\f3jdb\fP のもう 1 つの使用方法は、すでに起動している Java VM に jdb を接続することです。jdb が接続する VM を、その実行中に起動するための構文を次に示します。これは、インプロセスデバッグ用ライブラリをロードし、接続の種類を指定します。 +\f3jdb\fP Τ⤦ 1 ĤλˡϡǤ˵ưƤ Java VM jdb ³뤳ȤǤjdb ³ VM 򡢤μ¹˵ư뤿ιʸ򼡤˼ޤϡץǥХåѥ饤֥ɤ³μꤷޤ .LP .nf \f3 @@ -106,7 +91,7 @@ .LP .LP -たとえば、次のコマンドは、MyClass アプリケーションを実行して、\f3jdb\fP があとでそのアプリケーションに接続できるようにします。 +ȤСΥޥɤϡMyClass ץꥱ¹Ԥơ\f3jdb\fP ȤǤΥץꥱ³Ǥ褦ˤޤ .LP .nf \f3 @@ -118,7 +103,7 @@ .LP .LP -次のコマンドを使用して、\f3jdb\fP を VM に接続できます。 +ΥޥɤѤơ\f3jdb\fP VM ³Ǥޤ .LP .nf \f3 @@ -130,45 +115,42 @@ .LP .LP -この場合、\f3jdb\fP は新しい VM を起動する代わりに既存の VM に接続されるため、\f3jdb\fP コマンド行には「MyClass」は指定しません。 +ξ硢\f3jdb\fP Ͽ VM ư˴¸ VM ³뤿ᡢ\f3jdb\fP ޥɹԤˤϡMyClassפϻꤷޤ .LP .LP -デバッガを VM に接続するにはほかにもさまざまな方法があり、すべて \f3jdb\fP でサポートされています。接続オプションについては、Java Platform Debugger Architecture の +ǥХå VM ³ˤϤۤˤ⤵ޤޤˡꡢ٤ \f3jdb\fP ǥݡȤƤޤ³ץˤĤƤϡJava Platform Debugger Architecture .na -\f2ドキュメント\fP @ +\f2ɥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.htmlを参照してください。\f3jdb\fP で使用するために J2SE 1.4.2 以前の VM を起動する方法については、 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.html򻲾ȤƤ\f3jdb\fP ǻѤ뤿 J2SE 1.4.2 VM ưˡˤĤƤϡ .na -\f21.4.2 のドキュメント\fP @ +\f21.4.2 Υɥ\fP @ .fi -http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.htmlを参照してください。 +http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html򻲾ȤƤ .LP .SS -基本 jdb コマンド + jdb ޥ .LP .LP -基本的な \f3jdb\fP コマンドの一覧を示します。Java デバッガがサポートするコマンドはこれ以外にもあり、それらは \f3jdb\fP の \f2help\fP コマンドを使用して表示できます。 -.LP -.RS 3 - +Ū \f3jdb\fP ޥɤΰ򼨤ޤJava ǥХåݡȤ륳ޥɤϤʳˤ⤢ꡢ \f3jdb\fP \f2help\fP ޥɤѤɽǤޤ .LP .RS 3 .TP 3 -help または ? -もっとも重要な \f3jdb\fP コマンド \f2help\fP は、認識されたコマンドのリストに簡潔な説明を付けて表示します。 +help ޤ ? +äȤפ \f3jdb\fP ޥ \f2help\fP ϡǧ줿ޥɤΥꥹȤ˴ʷդɽޤ .TP 3 run -\f3jdb\fP を起動して必要なブレークポイントを設定したあとに、このコマンドを使用して、デバッグするアプリケーションの実行を開始できます。このコマンドは、既存の VM に接続している場合とは異なり、デバッグするアプリケーションが \f3jdb\fP から起動したときにだけ使用できます。 +\f3jdb\fP ưɬפʥ֥졼ݥȤꤷȤˡΥޥɤѤơǥХå륢ץꥱμ¹Ԥ򳫻ϤǤޤΥޥɤϡ¸ VM ³ƤȤϰۤʤꡢǥХå륢ץꥱ \f3jdb\fP 鵯ưȤˤѤǤޤ .TP 3 cont -ブレークポイント、例外、またはステップ実行のあとで、デバッグするアプリケーションの実行を継続します。 +֥졼ݥȡ㳰ޤϥƥå׼¹ԤΤȤǡǥХå륢ץꥱμ¹Ԥ³ޤ .TP 3 print -Java オブジェクトおよびプリミティブ値を表示します。プリミティブ型の変数またはフィールドの場合には、実際の値が出力されます。オブジェクトの場合には、短い説明が出力されます。オブジェクトについては、以降の \f2dump\fP コマンドの説明を参照してください。 +Java ֥ȤӥץߥƥͤɽޤץߥƥַѿޤϥեɤξˤϡºݤͤϤޤ֥ȤξˤϡûϤޤ֥ȤˤĤƤϡʹߤ \f2dump\fP ޥɤ򻲾ȤƤ .LP -\f2注:局所変数を表示するには、その変数を含むクラスが \fP\f2javac(1)\fP\f2 \fP\f2\-g\fP オプションでコンパイルされていなければなりません。 +\f2: ɽѿɽˤϡѿޤ९饹 \fP\f2javac(1)\fP\f2 \fP\f2\-g\fP ץǥѥ뤵Ƥɬפޤ .LP -\f2print\fP では、メソッドの呼び出しを含む多数の簡単な Java 式がサポートされています。 次に例を示します。 +\f2print\fP Ǥϡ᥽åɤθƤӽФޤ¿δñ Java ݡȤƤޤ򼨤ޤ .RS 3 .TP 2 o @@ -178,25 +160,22 @@ \f2print myObj.myInstanceField\fP .TP 2 o -\f2print i + j + k\fP (i、j、および k はプリミティブであり、フィールドまたは局所変数のいずれか) +\f2print i + j + k\fP (ij k ϥץߥƥ֤Ǥꡢեɤޤ϶ɽѿΤ줫) .TP 2 o -\f2print myObj.myMethod()\fP (myMethod が null 以外を返す場合) +\f2print myObj.myMethod()\fP (myMethod null ʳ֤) .TP 2 o \f2print new java.lang.String("Hello").length()\fP .RE .TP 3 dump -プリミティブ値の場合には、このコマンドは \f2print\fP と同じです。オブジェクトの場合には、オブジェクト内に定義されている各フィールドの現在の値が出力されます。static フィールドと instance フィールドが出力されます。 +ץߥƥͤξˤϡΥޥɤ \f2print\fP ƱǤ֥Ȥξˤϡ֥ƤƥեɤθߤͤϤޤstatic եɤ instance եɤϤޤ .LP -\f2dump\fP コマンドでは、\f2print\fP コマンドと同じ式がサポートされます。 +\f2dump\fP ޥɤǤϡ\f2print\fP ޥɤƱݡȤޤ .TP 3 threads -現在実行中のスレッドを一覧表示します。スレッドごとに、名前と現在の状態、およびほかのコマンドに使用できるインデックスが出力されます。 次に例を示します。 -.RS 3 - -.LP +߼¹ΥåɤɽޤåɤȤˡ̾ȸߤξ֡ӤۤΥޥɤ˻ѤǤ륤ǥåϤޤ򼨤ޤ .nf \f3 .fl @@ -204,163 +183,144 @@ .fl \fP .fi -.RE -この例では、スレッドインデックスは 4 であり、スレッドは java.lang.Thread のインスタンスです。 スレッドの名前は「main」であり、現在実行中です。 +Ǥϡåɥǥå 4 Ǥꡢåɤ java.lang.Thread Υ󥹥󥹤Ǥåɤ̾ϡmainפǤꡢ߼¹Ǥ .TP 3 thread -現在のスレッドにするスレッドを選択します。多くの \f3jdb\fP コマンドは、現在のスレッドの設定に基づいて実行されます。スレッドは、\f2threads\fP コマンドで説明したスレッドインデックスとともに指定します。 +ߤΥåɤˤ륹åɤ򤷤ޤ¿ \f3jdb\fP ޥɤϡߤΥåɤ˴ŤƼ¹Ԥޤåɤϡ\f2threads\fP ޥɤåɥǥåȤȤ˻ꤷޤ .TP 3 where -引数を指定しないで \f2where\fP を実行すると、現在のスレッドのスタックがダンプされます。 \f2where all\fP コマンドは、現在のスレッドグループにあるスレッドのスタックを、すべてダンプします。 \f2where\fP \f2threadindex\fP は、指定されたスレッドのスタックをダンプします。 +\f2ꤷʤ\fP where ¹ԤȡߤΥåɤΥåפޤ \f2where all\fP ޥɤϡߤΥåɥ롼פˤ륹åɤΥå򤹤٤ƥפޤ \f2where\fP \f2threadindex\fP ϡꤵ줿åɤΥåפޤ .LP -現在のスレッドが (ブレークポイントか \f2suspend\fP コマンドによって) 中断している場合は、局所変数とフィールドは \f2print\fP コマンドと \f2dump\fP コマンドで表示できます。\f2up\fP コマンドと \f2down\fP コマンドで、どのスタックフレームをカレントにするかを選ぶことができます。 +ߤΥåɤ (֥졼ݥȤ \f2suspend\fP ޥɤˤä) ǤƤϡɽѿȥեɤ \f2print\fP ޥɤ \f2dump\fP ޥɤɽǤޤ\f2up\fP ޥɤ \f2down\fP ޥɤǡɤΥåե졼򥫥Ȥˤ뤫֤ȤǤޤ .RE .LP -.RE .SS -ブレークポイント -.LP -.RS 3 - +֥졼ݥ .LP .LP -ブレークポイントは、行番号またはメソッドの最初の命令で \f3jdb\fP に設定できます。 次に例を示します。 +֥졼ݥȤϡֹޤϥ᥽åɤκǽ̿ \f3jdb\fP Ǥޤ򼨤ޤ .LP .RS 3 .TP 2 o -\f2stop at MyClass:22\fP (MyClass が含まれるソースファイルの 22 行目の最初の命令にブレークポイントを設定) +\f2stop at MyClass:22\fP (MyClass ޤޤ륽ե 22 ܤκǽ̿˥֥졼ݥȤ) .TP 2 o -\f2stop in java.lang.String.length\fP (\f2java.lang.String.length\fP メソッドの最初にブレークポイントを設定) +\f2stop in java.lang.String.length\fP (\f2java.lang.String.length\fP ᥽åɤκǽ˥֥졼ݥȤ) .TP 2 o -\f2stop in MyClass.<init>\fP (<init> は MyClass コンストラクタを識別) +\f2stop in MyClass.<init>\fP (<init> MyClass 󥹥ȥ饯) .TP 2 o -\f2stop in MyClass.<clinit>\fP (<clinit> は MyClass の静的初期化コードを識別) +\f2stop in MyClass.<clinit>\fP (<clinit> MyClass Ūɤ) .RE .LP .LP -メソッドがオーバーロードされている場合には、メソッドの引数の型も指定して、ブレークポイントに対して適切なメソッドが選択されるようにしなければなりません。たとえば、「\f2MyClass.myMethod(int,java.lang.String)\fP」または「\f2MyClass.myMethod()\fP」と指定します。 +᥽åɤСɤƤˤϡ᥽åɤΰηꤷơ֥졼ݥȤФŬڤʥ᥽åɤ򤵤褦ˤʤФʤޤ󡣤ȤС\f2MyClass.myMethod(int,java.lang.String)\fPפޤϡ\f2MyClass.myMethod()\fPפȻꤷޤ .LP .LP -\f2clear\fP コマンドは、「\f2clear\ MyClass:45\fP」のような構文を使用してブレークポイントを削除します。\f2clear\fP を使用するか、引数を指定しないでコマンドを使用すると、現在設定されているすべてのブレークポイントが表示されます。\f2cont\fP コマンドは実行を継続します。 +\f2clear\fP ޥɤϡ\f2clear\ MyClass:45\fPפΤ褦ʹʸѤƥ֥졼ݥȤޤ\f2clear\fP Ѥ뤫ꤷʤǥޥɤѤȡꤵƤ뤹٤ƤΥ֥졼ݥȤɽޤ\f2cont\fP ޥɤϼ¹Ԥ³ޤ .LP -.RE .SS -ステップ実行 -.LP -.RS 3 - +ƥå׼¹ .LP .LP -\f2step\fP コマンドは、現在のスタックフレームまたは呼び出されたメソッド内で、次の行を実行します。\f2next\fP コマンドは、現在のスタックフレームの次の行を実行します。 +\f2step\fP ޥɤϡߤΥåե졼ޤϸƤӽФ줿᥽åǡιԤ¹Ԥޤ\f2next\fP ޥɤϡߤΥåե졼μιԤ¹Ԥޤ .LP -.RE .SS -例外 -.LP -.RS 3 - +㳰 .LP .LP -スローしているスレッドの呼び出しスタック上のどこにも catch 文がない場合に例外が発生すると、VM は通常、例外トレースを出力して終了します。ただし、\f3jdb\fP 環境で実行している場合は、例外が発生すると \f3jdb\fP に制御が戻ります。次に、\f3jdb\fP を使用して例外の原因を診断します。 +Ƥ륹åɤθƤӽФåΤɤˤ catch ʸʤ㳰ȯȡVM ̾㳰ȥ졼Ϥƽλޤ\f3jdb\fP ĶǼ¹ԤƤϡ㳰ȯ \f3jdb\fP 椬ޤˡ\f3jdb\fP Ѥ㳰θǤޤ .LP .LP -たとえば、「\f2catch java.io.FileNotFoundException\fP」または「\f2catch mypackage.BigTroubleException\fP」のように \f2catch\fP コマンドを使用すると、デバッグされたアプリケーションは、ほかの例外がスローされたときに停止します。例外が特定のクラス (またはサブクラス) のインスタンスの場合は、アプリケーションは例外がスローされた場所で停止します。 +ȤС\f2catch java.io.FileNotFoundException\fPפޤϡ\f2catch mypackage.BigTroubleException\fPפΤ褦 \f2catch\fP ޥɤѤȡǥХå줿ץꥱϡۤ㳰줿Ȥߤޤ㳰Υ饹 (ޤϥ֥饹) Υ󥹥󥹤ξϡץꥱ㳰줿ߤޤ .LP .LP -\f2ignore\fP コマンドを使うと、以前の \f2catch\fP コマンドの効果が無効になります。 +\f2ignore\fP ޥɤȤȡ \f2catch\fP ޥɤθ̵̤ˤʤޤ .LP .LP -\f2注:\fP\f2ignore\fP コマンドでは、デバッグされる VM は例外を無視せず、デバッガだけが例外を無視します。 +\f2: \fP\f2ignore\fP ޥɤǤϡǥХå VM 㳰̵뤻ǥХå㳰̵뤷ޤ .LP -.RE -.RE -.SH "コマンド行オプション" -.LP - +.SH "ޥɹԥץ" .LP .LP -コマンド行で Java アプリケーション起動ツールの代わりに \f3jdb\fP を使用する場合、\f3jdb\fP は、\f2\-D\fP、\f2\-classpath\fP、\f2\-X<option>\fP など、java コマンドと同じ数のオプションを受け入れます。 +ޥɹԤ Java ץꥱưġ \f3jdb\fP Ѥ硢\f3jdb\fP ϡ\f2\-D\fP\f2\-classpath\fP\f2\-X<option>\fP ʤɡjava ޥɤƱΥץޤ .LP .LP -\f3jdb\fP は、そのほかに次のオプションを受け入れます。 +\f3jdb\fP ϡΤۤ˼Υץޤ .LP .RS 3 .TP 3 \-help -ヘルプメッセージを表示します。 +إץåɽޤ .TP 3 \-sourcepath <dir1:dir2:...> -指定されたパスを使用して、ソースファイルを検索します。このオプションが指定されていない場合は、デフォルトパスの「.」が使われます。 +ꤵ줿ѥѤơե򸡺ޤΥץ󤬻ꤵƤʤϡǥեȥѥΡ.פȤޤ .TP 3 \-attach <address> -デフォルトの接続機構を使用して、すでに実行中の VM にデバッガを接続します。 +ǥեȤ³ѤơǤ˼¹ VM ˥ǥХå³ޤ .TP 3 \-listen <address> -実行中の VM が標準のコネクタを使って指定されたアドレスに接続するのを待機します。 +¹ VM ɸΥͥȤäƻꤵ줿ɥ쥹³ΤԵޤ .TP 3 \-listenany -実行中の VM が標準のコネクタを使って利用可能な任意のアドレスに接続するのを待機します。 +¹ VM ɸΥͥȤäѲǽǤդΥɥ쥹³ΤԵޤ .TP 3 \-launch -デバッグするアプリケーションを jdb の起動後ただちに起動します。このオプションによって、\f2run\fP コマンドを使用する必要がなくなります。デバッグするアプリケーションは、起動後、初期アプリケーションクラスがロードされる直前に停止します。その時点で、必要なブレークポイントを設定し、\f2cont\fP を使用して実行を継続できます。 +ǥХå륢ץꥱ jdb εư夿˵ưޤΥץˤäơ\f2run\fP ޥɤѤɬפʤʤޤǥХå륢ץꥱϡư塢ץꥱ󥯥饹ɤľߤޤλǡɬפʥ֥졼ݥȤꤷ\f2cont\fP ѤƼ¹Ԥ³Ǥޤ .TP 3 \-listconnectors -この VM で利用できるコネクタを一覧表示します。 + VM ѤǤ륳ͥɽޤ .TP 3 \-connect <connector\-name>:<name1>=<value1>,... -一覧表示された引数の値と指定のコネクタを使ってターゲット VM に接続します。 +ɽ줿ͤȻΥͥȤäƥå VM ³ޤ .TP 3 \-dbgtrace [flags] -jdb のデバッグ情報を出力します。 +jdb ΥǥХåϤޤ .TP 3 \-tclient -Java HotSpot(tm) VM (クライアント) 内でアプリケーションを実行します。 +Java HotSpot(tm) VM (饤) ǥץꥱ¹Ԥޤ .TP 3 \-tserver -Java HotSpot(tm) VM (サーバー) 内でアプリケーションを実行します。 +Java HotSpot(tm) VM (С) ǥץꥱ¹Ԥޤ .TP 3 \-Joption -jdb の実行に使用される Java 仮想マシンに \f2option\fP を渡します。(アプリケーション Java 仮想マシンに対するオプションは、\f3run\fP コマンドに渡される)。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +jdb μ¹Ԥ˻Ѥ Java ۥޥ \f2option\fP Ϥޤ(ץꥱ Java ۥޥФ륪ץϡ\f3run\fP ޥɤϤ)ȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP .LP -デバッガとデバッグを行う VM を接続するための代替機構に対して、その他のオプションがサポートされています。その他の接続オプションについては、Java Platform Debugger Architecture の +ǥХåȥǥХåԤ VM ³뤿صФơ¾Υץ󤬥ݡȤƤޤ¾³ץˤĤƤϡJava Platform Debugger Architecture .na -\f2ドキュメント\fP @ +\f2ɥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/jpda/conninv.html򻲾ȤƤ .LP .SS -デバッグ対象のプロセスに転送されるオプション +ǥХåоݤΥץž륪ץ .LP .RS 3 .TP 3 \-v \-verbose[:class|gc|jni] -冗長モードにします。 +Ĺ⡼ɤˤޤ .TP 3 \-D<name>=<value> -システムプロパティーを設定します。 +ƥץѥƥꤷޤ .TP 3 \-classpath <directories separated by ":"> -クラスを検索するディレクトリを一覧表示します。 +饹򸡺ǥ쥯ȥɽޤ .TP 3 \-X<option> -非標準ターゲット VM オプションです。 +ɸॿå VM ץǤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -javac(1)、java(1)、javah(1)、javap(1)、javadoc(1) +javac(1)java(1)javah(1)javap(1)javadoc(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jhat.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jhat.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jhat.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jhat 1 "02 Jun 2010" +.TH jhat 1 "14 Apr 2011" .LP -.SH "名前" -jhat \- Java ヒープ解析ツール +.SH "̾" +jhat \- Java ҡײϥġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -58,88 +56,90 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 -.br +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 heap\-dump\-file -ブラウズ対象となる Java バイナリヒープダンプファイル。複数のヒープダンプを含むダンプファイルの場合、「foo.hprof#3」のようにファイル名の後に「#<number>」を付加することで、ファイル内の特定のダンプを指定できます。 -.SH "説明" +֥饦оݤȤʤ Java Хʥҡץץե롣ʣΥҡץפޤץեξ硢foo.hprof#3פΤ褦˥ե̾θˡ#<number>פղä뤳ȤǡեΥפǤޤ +.RE + +.LP +.SH "" .LP .LP -\f3jhat\fP コマンドは、java ヒープダンプファイルを解析し、Web サーバーを起動します。 jhat を使えば、お好みの Web ブラウザを使ってヒープダンプをブラウズできます。 jhat は、「ある既知のクラス「Foo」のすべてのインスタンスを表示する」といった、事前に設計されたクエリのほか、\f3OQL\fP (\f3O\fPbject \f3Q\fPuery \f3L\fPanguage) もサポートします。OQL のヘルプには、jhat によって表示される OQL ヘルプページからアクセスできます。デフォルトポートを使用する場合、OQL のヘルプは http://localhost:7000/oqlhelp/ で利用可能です。 +\f3jhat\fP ޥɤϡjava ҡץץեϤWeb Сưޤjhat ȤСߤ Web ֥饦Ȥäƥҡץפ֥饦Ǥޤjhat ϡ֤ΤΥ饹FooפΤ٤ƤΥ󥹥󥹤ɽפȤä߷פ줿Τۤ\f3OQL\fP (\f3O\fPbject \f3Q\fPuery \f3L\fPanguage) ⥵ݡȤޤOQL Υإפˤϡjhat ˤäɽ OQL إץڡ饢ǤޤǥեȥݡȤѤ硢OQL Υإפ http://localhost:7000/oqlhelp/ ѲǽǤ .LP .LP -Java のヒープダンプを生成するには、いくつかの方法があります。 +Java ΥҡץפˤϡĤˡޤ .LP .RS 3 .TP 2 o -jmap(1) の \-dump オプションを使って実行時にヒープダンプを取得する。 +jmap(1) \-dump ץȤäƼ¹Ի˥ҡץפ롣 .TP 2 o -jconsole(1) のオプションを使って +jconsole(1) ΥץȤä .na \f2HotSpotDiagnosticMXBean\fP @ .fi -http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean.html 経由で実行時にヒープダンプを取得する。 +http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean.html ͳǼ¹Ի˥ҡץפ롣 .TP 2 o -\-XX:+HeapDumpOnOutOfMemoryError VM オプションを指定すると、OutOfMemoryError のスロー時にヒープダンプが生成される。 +\-XX:+HeapDumpOnOutOfMemoryError VM ץꤹȡOutOfMemoryError Υ˥ҡץפ롣 .TP 2 o .na \f2hprof\fP @ .fi -http://java.sun.com/developer/technicalArticles/Programming/HPROF.html を使用する。 +http://java.sun.com/developer/technicalArticles/Programming/HPROF.html Ѥ롣 .RE .LP .LP -\f3注:\fP このツールは\f3試験的なもの\fPであり、将来の JDK のバージョンでは\f3利用できなくなる\fP可能性があります。 +\f3:\fP Υġ\f3Ūʤ\fPǤꡢ JDK ΥСǤ\f3ѤǤʤʤ\fPǽޤ .LP -.SH "オプション" +.SH "ץ" +.LP .RS 3 .TP 3 \-stack false/true -オブジェクト割り当て呼び出しスタックの追跡を無効にします。ヒープダンプ内で割り当てサイト情報が使用できない場合、このフラグを false に設定する必要があります。デフォルトは true です。 +֥ȳƸƤӽФåפ̵ˤޤҡץdzƥȾ󤬻ѤǤʤ硢Υե饰 false ꤹɬפޤǥեȤ true Ǥ .TP 3 \-refs false/true -オブジェクトへの参照の追跡を無効にします。デフォルトは true です。デフォルトでは、ヒープ内のすべてのオブジェクトについて、バックポインタ (指定されたオブジェクトをポイントしているオブジェクト。 参照者または受信参照とも呼ばれる) が計算されます。 +֥ȤؤλȤפ̵ˤޤǥեȤ true ǤǥեȤǤϡҡΤ٤ƤΥ֥ȤˤĤơХåݥ (ꤵ줿֥ȤݥȤƤ륪֥ȡȼԤޤϼȤȤƤФ) ׻ޤ .TP 3 \-port port\-number -jhat の HTTP サーバーのポートを設定します。デフォルトは 7000 です。 +jhat HTTP СΥݡȤꤷޤǥեȤ 7000 Ǥ .TP 3 \-exclude exclude\-file -「到達可能なオブジェクト」のクエリから除外すべきデータメンバーの一覧を含むファイルを指定します。たとえば、このファイルに \f2java.lang.String.value\fP が含まれていた場合、特定のオブジェクト「o」から到達可能なオブジェクトのリストを計算する際に、\f2java.lang.String.value\fP フィールドに関連する参照パスが考慮されなくなります。 +ãǽʥ֥ȡפΥ꤫٤ǡСΰޤեꤷޤȤСΥե \f2java.lang.String.value\fP ޤޤƤ硢Υ֥ȡoפãǽʥ֥ȤΥꥹȤ׻ݤˡ\f2java.lang.String.value\fP եɤ˴Ϣ뻲ȥѥθʤʤޤ .TP 3 \-baseline baseline\-dump\-file -ベースラインとなるヒープダンプを指定します。両方のヒープダンプ内で同じオブジェクト ID を持つオブジェクトは「新規ではない」としてマークされます。その他のオブジェクトは「新規」としてマークされます。これは、異なる 2 つのヒープダンプを比較する際に役立ちます。 +١饤ȤʤҡץפꤷޤξΥҡץƱ֥ ID ĥ֥ȤϡֿǤϤʤפȤƥޡޤ¾Υ֥ȤϡֿפȤƥޡޤϡۤʤ 2 ĤΥҡץפӤݤΩޤ .TP 3 \-debug int -このツールのデバッグレベルを設定します。0 は「デバッグ出力なし」を意味します。より大きな値を設定すると、より冗長なモードになります。 +ΥġΥǥХå٥ꤷޤ0 ϡ֥ǥХåϤʤפ̣ޤ礭ͤꤹȡĹʥ⡼ɤˤʤޤ .TP 3 -\-version\ -バージョン番号を報告したあと、終了します。 +\-version +Сֹ𤷤ȡλޤ .TP 3 -\-h\ -ヘルプメッセージを出力して終了します。 +\-h +إץåϤƽλޤ .TP 3 -\-help\ -ヘルプメッセージを出力して終了します。 +\-help +إץåϤƽλޤ .TP 3 -\-J<flag>\ -jhat が実行されている Java 仮想マシンに <flag> を渡します。たとえば、512M バイトの最大ヒープサイズを使用するには、\-J\-Xmx512m とします。 +\-J<flag> +jhat ¹ԤƤ Java ۥޥ <flag> ϤޤȤС512M ХȤκҡץѤˤϡ\-J\-Xmx512m Ȥޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" +.LP .RS 3 .TP 2 o @@ -150,9 +150,10 @@ .TP 2 o .na -\f2hprof \- ヒープおよび CPU プロファイリングツール\fP @ +\f2hprof \- ҡפ CPU ץե󥰥ġ\fP @ .fi http://java.sun.com/developer/technicalArticles/Programming/HPROF.html .RE -.RE + +.LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jinfo.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jinfo.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jinfo.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jinfo 1 "02 Jun 2010" +.TH jinfo 1 "14 Apr 2011" .LP -.SH "名前" -jinfo \- 構成情報 +.SH "̾" +jinfo \- .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -60,98 +58,100 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 option -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤ +.RE + +.LP .RS 3 .TP 3 pid -出力する構成情報のプロセス ID。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +Ϥ빽Υץ IDץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .RE + +.LP .RS 3 .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .RE + +.LP .RS 3 .TP 3 core -出力する構成情報のコアファイル。 +Ϥ빽Υե롣 .RE + +.LP .RS 3 .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 -.RE -.RS 3 -.TP 3 -server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 -.RE +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .RE .LP -.SH "説明" -.LP - -.LP -.LP -\f3jinfo\fP は、指定された Java プロセスやコアファイルまたはリモートデバッグサーバーの Java 構成情報を出力します。構成情報は、Java システムプロパティーと Java 仮想マシンのコマンド行フラグから構成されます。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 -.br - -.LP -.RS 3 - -.LP -jinfo \-J\-d64 \-sysprops pid -.RE -.LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。Windows 上の jinfo でサポートされているのは、実行中のプロセスの \-flag オプションだけです。\fP -.LP -.SH "オプション" -.LP - -.LP .RS 3 .TP 3 -<オプションなし> -コマンド行フラグを、システムプロパティー名と値のペアとともに出力します。 +server\-id +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ +.RE + +.LP +.SH "" +.LP +.LP +\f3jinfo\fP ϡꤵ줿 Java ץ䥳եޤϥ⡼ȥǥХåС Java ϤޤϡJava ƥץѥƥ Java ۥޥΥޥɹԥե饰鹽ޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ +.br +jinfo \-J\-d64 \-sysprops pid +.LP +.LP +\f3 \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \fP\f4PATH\fP\f3 ĶѿˤϡåȥץˤäƻѤ \fP\f4jvm.dll\fP\f3 ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ\fP +.LP +.LP +\f3򼨤ޤ \fP\f4set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP +.SH "ץ" +.LP +.RS 3 +.TP 3 +<ץʤ> +ޥɹԥե饰򡢥ƥץѥƥ̾ͤΥڥȤȤ˽Ϥޤ .br .TP 3 \-flag name -指定されたコマンド行フラグの名前と値を出力します。 +ꤵ줿ޥɹԥե饰̾ͤϤޤ .br .TP 3 \-flag [+|\-]name -指定されたブール型のコマンド行フラグを有効または無効にします。 +ꤵ줿֡뷿Υޥɹԥե饰ͭޤ̵ˤޤ .br .TP 3 \-flag name=value -指定されたコマンド行フラグを指定された値に設定します。 +ꤵ줿ޥɹԥե饰ꤵ줿ͤꤷޤ .br .TP 3 \-flags -JVM に渡されるコマンド行フラグをペアで出力します。 +JVM Ϥ륳ޥɹԥե饰ڥǽϤޤ .br .TP 3 \-sysprops -Java システムプロパティーを名前と値のペアとして出力します。 +Java ƥץѥƥ̾ͤΥڥȤƽϤޤ .br .TP 3 \-h -ヘルプメッセージを出力します。 +إץåϤޤ .TP 3 \-help -ヘルプメッセージを出力します。 +إץåϤޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jmap.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jmap.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jmap.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,34 +19,32 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jmap 1 "02 Jun 2010" +.TH jmap 1 "14 Apr 2011" .LP -.SH "名前" -jmap \- メモリーマップ +.SH "̾" +jmap \- ꡼ޥå .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -60,46 +58,39 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 option -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤ .TP 3 pid -印刷するメモリーマップのプロセス ID。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +꡼ޥåפΥץ IDץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .br .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .br .TP 3 core -印刷するメモリーマップのコアファイル。 +꡼ޥåפΥե롣 .br .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .br .TP 3 server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ .br .RE .LP -.SH " 説明" -.LP - +.SH "" .LP .LP -\f3jmap\fP は、指定されたプロセスやコアファイルまたはリモートデバッグサーバーの、共用オブジェクトメモリーマップまたはヒープメモリーの詳細を印刷します。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 -.LP -.RS 3 - +\f3jmap\fP ϡꤵ줿ץ䥳եޤϥ⡼ȥǥХåСΡѥ֥ȥ꡼ޥåפޤϥҡץ꡼ξܺ٤ޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ .LP .nf \f3 @@ -108,76 +99,66 @@ .fl \fP .fi -.RE .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。\fP +.LP +\f3: Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \fP\f4PATH\fP\f3 ĶѿˤϡåȥץˤäƻѤ \fP\f4jvm.dll\fP\f3 ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ\fP +.LP +.LP +\f3򼨤ޤ \fP\f4set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP .br .LP -Windows プラットフォーム上で使用可能な唯一の jmap 形式は、次のとおりです。 -.RS 3 - -.LP -jmap \-dump:<\f2dump\-options\fP> pid -.RE -および -.RS 3 - -.LP -jmap \-histo[:live] pid -.RE -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -<オプションなし> -オプションを使用しない場合、\f3jmap\fP は共用オブジェクトマッピングを印刷します。ターゲット VM にロードされた共用オブジェクトごとに、開始アドレス、マッピングのサイズ、および共用オブジェクトファイルのフルパスが印刷されます。これは、Solaris \f3pmap\fP ユーティリティーと類似しています。 +<ץʤ> +ץѤʤ硢jmap ϶ѥ֥ȥޥåԥ󥰤ޤå VM ˥ɤ줿ѥ֥ȤȤˡϥɥ쥹ޥåԥ󥰤ΥӶѥ֥ȥեΥեѥޤϡSolaris \f3pmap\fP 桼ƥƥƤޤ .br .TP 3 \-dump:[live,]format=b,file=<filename> -Java ヒープを hprof バイナリ形式で filename にダンプします。\f2live\fP サブオプションは省略可能です。これが指定された場合、ヒープ内で生存中のオブジェクトのみがダンプされます。ヒープダンプを参照するには、生成されたファイルを jhat(1) (Java Heap Analysis Tool) を使って読み取ります。 +Java ҡפ hprof Хʥ filename ˥פޤ\f2live\fP ֥ץϾάǽǤ줬ꤵ줿硢ҡ¸Υ֥ȤΤߤפޤҡץפ򻲾Ȥˤϡ줿ե jhat(1) (Java Heap Analysis Tool) Ȥäɤ߼ޤ .br .TP 3 \-finalizerinfo -ファイナライズを待っているオブジェクトに関する情報を出力します。 +եʥ饤ԤäƤ륪֥Ȥ˴ؤϤޤ .br .TP 3 \-heap -ヒープサマリーを印刷します。使用される GC アルゴリズム、ヒープ構成、および世代ごとのヒープ使用率が印刷されます。 +ҡץޥ꡼ޤѤ GC 르ꥺࡢҡ׹头ȤΥҡ׻Ψޤ .br .TP 3 \-histo[:live] -ヒープのヒストグラムを印刷します。Java クラスごとに、オブジェクトの数、バイト単位でのメモリーサイズ、および完全修飾クラス名が印刷されます。VM 内部クラス名は、「*」の接頭辞を付けて印刷されます。\f2live\fP サブオプションが指定された場合、生存中のオブジェクトのみがカウントされます。 +ҡפΥҥȥޤJava 饹Ȥˡ֥ȤοХñ̤ǤΥ꡼Ӵ饹̾ޤVM 饹̾ϡ*פƬդưޤ\f2live\fP ֥ץ󤬻ꤵ줿硢¸Υ֥ȤΤߤȤޤ .br .TP 3 \-permstat -Permanent 世代の Java ヒープの、クラスローダー関連の統計データを印刷します。クラスローダーごとに、その名前、状態、アドレス、親クラスローダー、およびクラスローダーがロードしたクラスの数とサイズが印刷されます。さらに、intern された文字列の数とサイズも出力されます。 +Permanent Java ҡפΡ饹Ϣץǡޤ饹Ȥˡ̾֡ɥ쥹ƥ饹ӥ饹ɤ饹οȥޤˡintern 줿ʸοȥϤޤ .br .TP 3 \-F -強制 (Force)。pid が応答しない場合に、jmap \-dump または jmap \-histo オプションとともに使用します。このモードでは、\f2live\fP サブオプションはサポートされません。 + (Force)pid ʤˡjmap \-dump ޤ jmap \-histo ץȤȤ˻ѤޤΥ⡼ɤǤϡ\f2live\fP ֥ץϥݡȤޤ .br .TP 3 \-h -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-help -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-J<flag> -jmap が実行されている Java 仮想マシンに <flag> を渡します。 +jmap ¹ԤƤ Java ۥޥ <flag> Ϥޤ .br .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jps.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jps.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jps.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,43 +19,41 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jps 1 "02 Jun 2010" +.TH jps 1 "14 Apr 2011" .LP -.SH "名前" -jps \- Java 仮想マシンプロセスステータスツール +.SH "̾" +jps \- Java ۥޥץơġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -ホスト識別子 +ۥȼ̻ .TP 2 o -出力形式 +Ϸ .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -67,79 +65,70 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 hostid -プロセスレポートを生成するホストのホスト識別子。\f2hostid\fP には、通信プロトコル、ポート番号、実装に固有な他のデータを指定したオプションコンポーネントを含めることができます。 +ץݡȤۥȤΥۥȼ̻ҡ\f2hostid\fP ˤϡ̿ץȥ롢ݡֹ桢˸ͭ¾Υǡꤷץ󥳥ݡͥȤޤ뤳ȤǤޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jps\fP ツールは、ターゲットシステム上で計測された HotSpot Java 仮想マシン (JVM) を一覧表示します。このツールで表示できるレポート情報は、アクセス権を持った JVM に関するものに限定されます。 +\f3jps\fP ġϡåȥƥǷ¬줿 HotSpot Java ۥޥ (JVM) ɽޤΥġɽǤݡȾϡä JVM ˴ؤΤ˸ꤵޤ .LP .LP -\f2hostid\fP を指定せずに \f3jps\fP を実行した場合、ローカルホストで計測された JVM が検索されます。\f2hostid\fP を指定して起動した場合、指定されたプロトコルとポートを使用して、指定されたホスト上の JVM を検索します。\f3jstatd\fP プロセスがターゲットホスト上で実行されていると想定されます。 +\f2hostid\fP ꤻ \f3jps\fP ¹Ԥ硢ۥȤǷ¬줿 JVM ޤ\f2hostid\fP ꤷƵư硢ꤵ줿ץȥȥݡȤѤơꤵ줿ۥȾ JVM 򸡺ޤ\f3jstatd\fP ץåȥۥȾǼ¹ԤƤꤵޤ .LP .LP -\f3jps\fP コマンドは、ターゲットシステムで計測された各 JVM について、ローカル VM 識別子、つまり \f2lvmid\fP をレポートします。\f3lvmid\fP は、必須ではありませんが、一般的には JVM プロセスに対するオペレーティングシステムのプロセス識別子です。オプションを指定しない場合、\f3jps\fP によって、各 Java アプリケーションの \f2lvmid\fP が一覧表示され、それぞれにアプリケーションのクラス名または JAR ファイル名が簡単な形式で示されます。この簡単な形式のクラス名と JAR ファイル名では、クラスのパッケージ情報または JAR ファイルパス情報が省略されています。 +\f3jps\fP ޥɤϡåȥƥǷ¬줿 JVM ˤĤơ VM ̻ҡĤޤ \f2lvmid\fP ݡȤޤ\f3lvmid\fP ϡɬܤǤϤޤ󤬡Ūˤ JVM ץФ륪ڥ졼ƥ󥰥ƥΥץ̻ҤǤץꤷʤ硢\f3jps\fP ˤäơ Java ץꥱ \f2lvmid\fP ɽ졢줾˥ץꥱΥ饹̾ޤ JAR ե̾ñʷǼޤδñʷΥ饹̾ JAR ե̾Ǥϡ饹Υѥåޤ JAR եѥ󤬾άƤޤ .LP .LP -\f3jps\fP コマンドは、\f3Java\fP 起動ツールを使用して、\f2main\fP メソッドに渡されるクラス名と引数を検索します。独自の起動ツールを使用してターゲット JVM を起動した場合は、\f2main\fP メソッドに渡されるクラス名 (または JAR ファイル名) と引数は利用できません。この場合、\f3jps\fP コマンドは、main メソッドへ渡されるクラス名 (または JAR ファイル名) と引数に対して、文字列 \f2Unknown\fP を出力します。 +\f3jps\fP ޥɤϡ\f3Java\fP ưġѤ \f2main\fP ᥽åɤϤ륯饹̾Ȱ򸡺ޤȼεưġѤƥå JVM ưϡ \f2main\fP ᥽åɤϤ륯饹̾ (ޤ JAR ե̾) ȰѤǤޤ󡣤ξ硢\f3jps\fP ޥɤϡmain ᥽åɤϤ륯饹̾ (ޤ JAR ե̾) ȰФơʸ \f2Unknown\fP Ϥޤ .LP .LP -\f3jps\fP コマンドで生成される JVM のリストは、このコマンドを実行する主体に与えられたアクセス権に基づき、制限される場合があります。このコマンドは、オペレーティングシステム独自のアクセス制御機構による決定に基づいて、主体にアクセス権が与えられている JVM だけを一覧表示します。 +\f3jps\fP ޥɤ JVM ΥꥹȤϡΥޥɤ¹ԤΤͿ줿˴Ť¤礬ޤΥޥɤϡڥ졼ƥ󥰥ƥȼΥ浡ˤ˴ŤơΤ˥ͿƤ JVM ɽޤ .LP .LP -\f3注:\fP このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3:\fP Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jps\fP コマンドでは、コマンドの出力を変更するオプションが多数サポートされています。将来、これらのオプションは、変更または廃止される可能性があります。 +\f3jps\fP ޥɤǤϡޥɤνϤѹ륪ץ¿ݡȤƤޤ衢Υץϡѹޤѻߤǽޤ .LP .RS 3 .TP 3 \-q -ローカル VM 識別子のリストだけを生成するように、\f2main\fP メソッドに渡されるクラス名、JAR ファイル名、および引数の出力を制御します。 +饹̾JAR ե̾ \f2main\fP ᥽åɤϤ줿νϤ VM ̻ҤΰΤߤޤ .TP 3 \-m -main メソッドに渡される引数を出力します。この出力は、組み込まれている JVM に対して null になることもあります。 +main ᥽åɤϤϤޤνϤϡȤ߹ޤƤ JVM Ф null ˤʤ뤳Ȥ⤢ޤ .TP 3 \-l -アプリケーションの主要なクラスのフルパッケージ名、またはアプリケーションの JAR ファイルへのフルパス名を出力します。 +ץꥱμפʥ饹Υեѥå̾ޤϥץꥱ JAR եؤΥեѥ̾Ϥޤ .TP 3 \-v -JVM に渡される引数を出力します。 +JVM ϤϤޤ .TP 3 \-V -フラグファイル (.hotspotrc ファイルまたは \-XX:Flags=<\f2filename\fP> の引数で指定されたファイル) を通じて JVM に渡される引数を出力します。 +ե饰ե (.hotspotrc եޤ \-XX:Flags=<\f2filename\fP> ΰǻꤵ줿ե) ̤ JVM ϤϤޤ .TP 3 \-Joption -\f3jps\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f3jps\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .RE .LP .SS -ホスト識別子 -.LP -.RS 3 - +ۥȼ̻ .LP .LP -ホスト識別子、つまり \f2hostid\fP は、ターゲットシステムを示す文字列です。\f2hostid\fP 文字列の構文の大部分は、URI の構文に対応しています。 +ۥȼ̻ҡĤޤ \f2hostid\fP ϡåȥƥ򼨤ʸǤ\f2hostid\fP ʸιʸʬϡURI ιʸбƤޤ .LP .nf \f3 @@ -155,26 +144,23 @@ .RS 3 .TP 3 protocol -通信プロトコルです。\f2protocol\fP が省略され、\f2hostname\fP が指定されていない場合、デフォルトのプロトコルが、プラットフォーム固有の最適化されたローカルプロトコルになります。\f2protocol\fP が省略され、\f2hostname\fP が指定されている場合は、デフォルトプロトコルは \f3rmi\fP になります。 +̿ץȥǤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤʤ硢ǥեȤΥץȥ뤬ץåȥեͭκŬ줿ץȥˤʤޤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤϡǥեȥץȥ \f3rmi\fP ˤʤޤ .TP 3 hostname -ターゲットホストを示すホスト名または IP アドレスです。\f2hostname\fP が省略されている場合は、ターゲットホストはローカルホストになります。 +åȥۥȤ򼨤ۥ̾ޤ IP ɥ쥹Ǥ\f2hostname\fP άƤϡåȥۥȤϥۥȤˤʤޤ .TP 3 port -リモートサーバーと通信するためのデフォルトポートです。\f2hostname\fP が省略されているか、\f2protocol\fP で最適化されたローカルプロトコルが指定されている場合、\f2port\fP は無視されます。そうでなければ、\f2port\fP パラメータの扱いは、実装によって異なります。デフォルトの \f3rmi\fP プロトコルの場合、\f2port\fP は、リモートホスト上の rmiregistry のポート番号を示します。\f2port\fP が省略され、\f2protocol\fP で \f3rmi\fP が指定されている場合、デフォルトの rmiregistry ポート (1099) が使用されます。 +⡼ȥС̿뤿ΥǥեȥݡȤǤ\f2hostname\fP άƤ뤫\f2protocol\fP ǺŬ줿ץȥ뤬ꤵƤ硢\f2port\fP ̵뤵ޤǤʤС\f2port\fP ѥ᡼ΰϡˤäưۤʤޤǥեȤ \f3rmi\fP ץȥξ硢\f2port\fP ϡ⡼ȥۥȾ rmiregistry Υݡֹ򼨤ޤ\f2port\fP ά졢\f2protocol\fP \f3rmi\fP ꤵƤ硢ǥեȤ rmiregistry ݡ (1099) Ѥޤ .TP 3 servername -このパラメータの扱いは、実装によって異なります。最適化されたローカルプロトコルの場合、このフィールドは無視されます。\f3rmi\fP プロトコルの場合、このパラメータは、リモートホスト上の RMI リモートオブジェクトの名前を示す文字列になります。jstatd(1) コマンドについては、\f3\-n\fP オプションを参照してください。 +Υѥ᡼ΰϡˤäưۤʤޤŬ줿ץȥξ硢Υեɤ̵뤵ޤ\f3rmi\fP ץȥξ硢Υѥ᡼ϡ⡼ȥۥȾ RMI ⡼ȥ֥Ȥ̾򼨤ʸˤʤޤjstatd(1) ޥɤˤĤƤϡ\f3\-n\fP ץ򻲾ȤƤ .RE .LP -.RE -.SH "出力形式" -.LP - +.SH "Ϸ" .LP .LP -\f3jps\fP コマンドの出力は、次のパターンに従います。 +\f3jps\fP ޥɤνϤϡΥѥ˽ޤ .LP .nf \f3 @@ -188,22 +174,20 @@ .LP .LP -すべての出力トークンは空白で区切ります。\f2arg\fP の中で空白を使用すると、実際の定位置パラメータに引数をマッピングしようとするときに、あいまいになります。 +٤Ƥνϥȡ϶Ƕڤޤ\f2arg\fP ǶѤȡºݤ֥ѥ᡼˰ޥåԥ󥰤褦ȤȤˡޤˤʤޤ .br .br -\f3注\fP: 将来のリリースでこの形式は変更される可能性があるため、\f3jps\fP 出力を解析するスクリプトは作成しないことをお勧めします。\f3jps\fP 出力を解析するスクリプトを作成すると、このツールの将来のリリースで、作成したスクリプトを変更する必要が予測されます。 +\f3\fP: Υ꡼Ǥηѹǽ뤿ᡢ\f3jps\fP νϤϤ륹ץȤϺʤȤ򤪴ᤷޤ\f3jps\fP ϤϤ륹ץȤȡΥġξΥ꡼ǡץȤѹɬפͽ¬ޤ .br .LP -.SH "例" -.LP - +.SH "" .LP .LP -この節では、\f3jps\fP コマンドの例を示します。 +Ǥϡ\f3jps\fP ޥɤ򼨤ޤ .LP .LP -ローカルホスト上で計測された JVM を一覧表示する場合: +ۥȾǷ¬줿 JVM ɽ: .LP .nf \f3 @@ -228,10 +212,10 @@ .LP .LP -リモートホスト上で計測された JVM を一覧表示する場合: +⡼ȥۥȾǷ¬줿 JVM ɽ: .LP .LP -この例では、\f3jstat\fP サーバーと、その内部 RMI レジストリまたは別の外部 \f3rmiregistry\fP プロセスのいずれかとが、リモートホストのデフォルトポート (ポート 1099) で実行されていると想定しています。また、ローカルホストが、リモートホストへの有効なアクセス権を持っていることも想定しています。この例には、\f2\-l\fP オプションも含まれ、クラス名または JAR ファイル名を詳細な形式で出力します。 +Ǥϡ\f3jstat\fP Сȡ RMI 쥸ȥޤ̤γ \f3rmiregistry\fP ץΤ줫Ȥ⡼ȥۥȤΥǥեȥݡ (ݡ 1099) Ǽ¹ԤƤꤷƤޤޤۥȤ⡼ȥۥȤؤͭʥäƤ뤳ȤꤷƤޤˤϡ\f2\-l\fP ץޤޤ졢饹̾ޤ JAR ե̾ܺ٤ʷǽϤޤ .LP .nf \f3 @@ -240,7 +224,7 @@ .br .fl -3002 /opt/jdk1.5.0/demo/jfc/Java2D/Java2Demo.JAR +3002 /opt/jdk1.7.0/demo/jfc/Java2D/Java2Demo.JAR .br .fl @@ -252,10 +236,10 @@ .LP .LP -RMI レジストリにデフォルトではないポートを使用して、リモートホスト上で計測された JVM を一覧表示する場合: +RMI 쥸ȥ˥ǥեȤǤϤʤݡȤѤơ⡼ȥۥȾǷ¬줿 JVM ɽ: .LP .LP -この例では、内部 RMI レジストリがポート 2002 にバインドされた \f3jstatd\fP サーバーが、リモートホスト上で実行していると想定しています。また、\f2\-m\fP オプションを使用して、一覧表示されたそれぞれの Java アプリケーションの \f2main\fP メソッドに渡される引数を組み込んでいます。 +Ǥϡ RMI 쥸ȥ꤬ݡ 2002 ˥Хɤ줿 \f3jstatd\fP С⡼ȥۥȾǼ¹ԤƤꤷƤޤޤ\f2\-m\fP ץѤơɽ줿줾 Java ץꥱ \f2main\fP ᥽åɤϤȤ߹Ǥޤ .LP .nf \f3 @@ -264,7 +248,7 @@ .br .fl -3002 /opt/jdk1.5.0/demo/jfc/Java2D/Java2Demo.JAR +3002 /opt/jdk1.7.0/demo/jfc/Java2D/Java2Demo.JAR .br .fl @@ -273,21 +257,21 @@ .fi .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jstat(1) \- Java 仮想マシン統計データ監視ツール」 +jstat(1) \- Java ۥޥץǡƻġ .TP 2 o -「jstatd(1) \- 仮想マシン jstat デーモン」 +jstatd(1) \- ۥޥ jstat ǡ .TP 2 o -「rmiregistry(1) \- Java リモートオブジェクトレジストリ」 +rmiregistry(1) \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jrunscript.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jrunscript.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jrunscript.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,40 +19,38 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jrunscript 1 "02 Jun 2010" +.TH jrunscript 1 "14 Apr 2011" .LP -.SH "名前" -jrunscript \- コマンド行スクリプトシェル +.SH "̾" +jrunscript \- ޥɹԥץȥ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -引数 + .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -62,85 +60,77 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -オプションを使用する場合、コマンド名の直後に記述してください。 +ץѤ硢ޥ̾ľ˵ҤƤ .TP 3 arguments -引数を使用する場合、オプションまたはコマンド名の直後に記述してください。 +Ѥ硢ץޤϥޥ̾ľ˵ҤƤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jrunscript\fP はコマンド行スクリプトシェルです。 jrunscript は、対話型 (読み取り \- 評価 \- 出力) モードとバッチ (\-f オプション) モードの両方のスクリプト実行をサポートします。これはスクリプト言語に依存しないシェルです。デフォルトの使用言語は JavaScript ですが、\-l オプションを使えばほかの言語も指定できます。jrunscript は、Java とスクリプト言語との通信によって「探求的なプログラミング」スタイルをサポートします。 +\f3jrunscript\fP ϥޥɹԥץȥǤjrunscript ϡ÷ (ɤ߼ \- ɾ \- ) ⡼ɤȥХå (\-f ץ) ⡼ɤξΥץȼ¹Ԥ򥵥ݡȤޤϥץȸ˰¸ʤǤǥեȤλѸ JavaScript Ǥ\-l ץȤФۤθǤޤjrunscript ϡJava ȥץȸȤ̿ˤäơõŪʥץߥ󥰡ץ򥵥ݡȤޤ .LP .LP -\f3注:\fP このツールは\f3試験的なもの\fPであり、将来の JDK のバージョンでは\f3利用できなくなる\fP可能性があります。 +\f3:\fP Υġ\f3Ūʤ\fPǤꡢ JDK ΥСǤ\f3ѤǤʤʤ\fPǽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-classpath path -スクリプトからのアクセス対象となるユーザーの .class ファイルの検索場所を指定します。 +ץȤΥоݤȤʤ桼 .class եθꤷޤ .TP 3 \-cp path -\-classpath \f2path\fP と同義です。 +\-classpath \f2path\fP ƱǤ .TP 3 \-Dname=value -Java のシステムプロパティーを設定します。 +Java Υƥץѥƥꤷޤ .TP 3 \-J<flag> -jrunscript が実行されている Java 仮想マシンに <flag> を渡します。 +jrunscript ¹ԤƤ Java ۥޥ <flag> Ϥޤ .TP 3 \-l language -指定されたスクリプト言語を使用します。デフォルトでは JavaScript が使用されます。ほかのスクリプト言語を使用するには、対応するスクリプトエンジンの JAR ファイルも指定する必要があります。 それには、\-cp、\-classpath のいずれかのオプションを使用します。 +ꤵ줿ץȸѤޤǥեȤǤ JavaScript ѤޤۤΥץȸѤˤϡб륹ץȥ󥸥 JAR եꤹɬפޤˤϡ\-cp\-classpath Τ줫ΥץѤޤ .TP 3 \-e script -指定されたスクリプトを評価します。このオプションを使えば、コマンド行にすべてが指定された「1 行」スクリプトを実行できます。 +ꤵ줿ץȤɾޤΥץȤСޥɹԤˤ٤Ƥꤵ줿1 ԡץץȤ¹ԤǤޤ .TP 3 \-encoding encoding -スクリプトファイルの読み取り時に使用する文字エンコーディングを指定します。 +ץȥեɤ߼˻Ѥʸ󥳡ǥ󥰤ꤷޤ .TP 3 \-f script\-file -指定されたスクリプトファイルを評価します (バッチモード)。 +ꤵ줿ץȥեɾޤ (Хå⡼) .TP 3 \-f \- -標準入力からスクリプトを読み取り、それを評価します (対話型モード)。 +ɸϤ饹ץȤɤ߼ꡢɾޤ (÷⡼) .TP 3 \-help\ -ヘルプメッセージを出力して終了します。 +إץåϤƽλޤ .TP 3 \-?\ -ヘルプメッセージを出力して終了します。 +إץåϤƽλޤ .TP 3 \-q\ -利用可能なすべてのスクリプトエンジンを一覧表示したあと、終了します。 +Ѳǽʤ٤ƤΥץȥ󥸥ɽȡλޤ .RE .LP -.SH "引数" +.SH "" .LP .LP -[arguments...] が存在していて、かつ \f3\-e\fP、\f3\-f\fP のいずれのオプションも使用されなかった場合、最初の引数がスクリプトファイルとなり、他の引数が存在する場合はスクリプト引数として渡されます。[arguments..] が使用され、かつ \f3\-e\fP、\f3\-f\fP のいずれかのオプションが使用された場合、すべての [arguments..] がスクリプト引数として渡されます。[arguments..]、\f3\-e\fP、\f3\-f\fP がどれも存在しなかった場合は、対話型モードが使用されます。スクリプトからスクリプト引数を使用するには、「arguments」という名前の String 配列型のエンジン変数を使用します。 -.LP -.SH "例" +[arguments...] ¸ߤƤơ \f3\-e\fP\f3\-f\fP ΤΥץѤʤä硢ǽΰץȥեȤʤꡢ¾ΰ¸ߤϥץȰȤϤޤ[arguments..] ȡ\f3\-e\fP ޤ \f3\-f\fP ѤƤ硢٤Ƥ [arguments..] ץȰȤϤޤ[arguments..]\f3\-e\fP\f3\-f\fP ɤ¸ߤʤäϡ÷⡼ɤѤޤץȤ饹ץȰѤˤϡargumentsפȤ̾ String 󷿤Υ󥸥ѿѤޤ .LP -\f3インラインスクリプトの実行\fP +.SH "" .LP -.RS 3 - +.SS +饤󥹥ץȤμ¹ .LP .nf \f3 @@ -151,13 +141,10 @@ .fl \fP .fi -.RE .LP -\f3指定された言語を使用し、指定されたスクリプトファイルを評価する\fP -.LP -.RS 3 - +.SS +ꤵ줿Ѥꤵ줿ץȥեɾ .LP .nf \f3 @@ -166,42 +153,42 @@ .fl \fP .fi -.RE .LP -\f3対話型モード\fP -.LP -.RS 3 - +.SS +÷⡼ .LP .nf \f3 .fl jrunscript .fl -js>print('hello world'); +js> print('Hello World\\n'); +.fl +Hello World .fl -hello world +js> 34 + 55 .fl -js>34 + 55 +89.0 .fl -89 +js> t = new java.lang.Thread(function() { print('Hello World\\n'); }) +.fl +Thread[Thread\-0,5,main] .fl -js> thread(function() { print('hello world'); } +js> t.start() .fl -hello world +js> Hello World +.fl + .fl js> .fl \fP .fi -.RE .LP -\f3スクリプト引数を指定してスクリプトファイルを実行する\fP -.LP -.RS 3 - +.SS +ץȰꤷƥץȥե¹Ԥ .LP .nf \f3 @@ -210,13 +197,12 @@ .fl \fP .fi -.RE .LP -test.js が実行対象となるスクリプトファイルであり、arg1、arg2、および arg3 はスクリプト引数としてスクリプトに渡されます。スクリプトは「arguments」配列を使ってこれらにアクセスできます。 -.SH "関連項目" +test.js ¹оݤȤʤ륹ץȥեǤꡢarg1arg2 arg3 ϥץȰȤƥץȤϤޤץȤϡargumentsȤäƤ˥Ǥޤ +.SH "Ϣ" .LP .LP -JavaScript が使用される場合、jrunscript は、最初のユーザー定義スクリプトを評価する前に、いくつかの組み込み関数や組み込みオブジェクトを初期化します。これらの JavaScript 組み込み機能については、jsdocs を参照してください。 +JavaScript Ѥ硢jrunscript ϡǽΥ桼ץȤɾˡĤȤ߹ߴؿȤ߹ߥ֥Ȥޤ JavaScript Ȥ߹ߵǽˤĤƤϡjsdocs 򻲾ȤƤ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jsadebugd.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jsadebugd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jsadebugd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,31 +19,29 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jsadebugd 1 "02 Jun 2010" +.TH jsadebugd 1 "14 Apr 2011" .LP -.SH "名前" -jsadebugd \- サービスアビリティーエージェントデバッグデーモン +.SH "̾" +jsadebugd \- ӥӥƥȥǥХåǡ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -55,14 +53,12 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 pid -デバッグサーバーが接続するプロセスのプロセス ID です。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。単一のプロセスに接続できるデバッグサーバーのインスタンスは、1 つに制限されます。 +ǥХåС³ץΥץ ID Ǥץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) ѤޤñΥץ³ǤǥХåСΥ󥹥󥹤ϡ1 Ĥ¤ޤ .RE .LP @@ -74,37 +70,32 @@ .LP .RS 3 .TP 3 -コアダンプの作成元になる Java 実行可能ファイルです。 +פκˤʤ Java ¹ԲǽեǤ .RE .LP .RS 3 .TP 3 core -デバッグサーバーを接続するコアファイルです。 +ǥХåС³륳եǤ .RE .LP .RS 3 .TP 3 server\-id -複数のデバッグサーバーが同一のマシン上で実行している場合に必要になる、オプション固有の ID です。この ID は、リモートクライアントが、接続先のデバッグサーバーを特定するために使用する必要があります。この ID は、単一のマシン内で一意でなければなりません。 +ʣΥǥХåСƱΥޥǼ¹ԤƤɬפˤʤ롢ץͭ ID Ǥ ID ϡ⡼ȥ饤Ȥ³ΥǥХåСꤹ뤿˻Ѥɬפޤ ID ϡñΥޥǰդǤʤФʤޤ .RE .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3jsadebugd\fP は、Java プロセスまたはコアファイルに接続し、デバッグサーバーとして機能します。jstack(1)、jmap(1)、および jinfo(1) などのリモートクライアントは、Java Remote Method Invocation (RMI) を使用しているサーバーに接続できます。\f2jsadebugd\fP を起動する前に、次のように指定して +\f3jsadebugd\fP ϡJava ץޤϥե³ǥХåСȤƵǽޤjstack(1)jmap(1) jinfo(1) ʤɤΥ⡼ȥ饤ȤϡJava Remote Method Invocation (RMI) ѤƤ륵С³Ǥޤ \f2jsadebugd\fP ưˡΤ褦ˤ .na \f2rmiregistry\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi を起動する必要があります。 -.LP -.RS 3 - +http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi ưɬפޤ .LP .nf \f3 @@ -113,16 +104,18 @@ .fl \fP .fi -.RE .LP .LP -ここで、\f2$JAVA_HOME\fP は、JDK のインストールディレクトリです。rmiregistry が起動していない場合、jsadebugd は標準 (1099) ポートの rmiregistry を内部で起動します。デバッグサーバーは、SIGINT を送信する (Ctrl+C を押す) ことにより停止できます。 +ǡ \f2$JAVA_HOME\fP JDK 󥹥ȡǥ쥯ȥǤrmiregistry ưƤʤ硢jsadebugd ɸ (1099) ݡȤ rmiregistry ǵưޤǥХåСϡSIGINT (Ctrl+C 򲡤) ȤˤߤǤޤ .LP .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。 jsadebugd は、現時点では、Windows プラットフォームでは使用できません。\fP +\f3\fP \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \f2PATH\fP ĶѿˤϡåȥץˤäƻѤ \f2jvm.dll\fP ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ +.LP .LP -.SH "関連項目" +򼨤ޤ \f2set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jstack.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jstack.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstack.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,41 +19,39 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstack 1 "02 Jun 2010" +.TH jstack 1 "14 Apr 2011" .LP -.SH "名前" -jstack \- スタックトレース +.SH "̾" +jstack \- åȥ졼 .br .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .br .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .TP 2 o -既知のバグ +ΤΥХ .br .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -67,51 +65,44 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .LP -各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。オプションを参照してください。 +ƥץϸߤ¾ŪǤץѤ硢ޥ̾ľ˵Ҥޤץ򻲾ȤƤ .LP .RS 3 .TP 3 pid -印刷するスタックトレースのプロセス ID です。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。 +륹åȥ졼Υץ ID Ǥץ Java ץǤɬפޤޥǼ¹ԤƤ Java ץΰˤϡjps(1) Ѥޤ .RE .LP .RS 3 .TP 3 executable -コアダンプの作成元の Java 実行可能ファイルです。 +פκ Java ¹ԲǽեǤ .br .TP 3 core -印刷するスタックトレースのコアファイルです。 +륹åȥ졼ΥեǤ .br .TP 3 remote\-hostname\-or\-IP -リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。 +⡼ȥǥХåС (jsadebugd(1) 򻲾) Υۥ̾ޤ IP ɥ쥹Ǥ .br .TP 3 server\-id -複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。 +ʣΥǥХåСƱΥ⡼ȥۥȤǼ¹ԤƤΡץͭ ID Ǥ .RE .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3jstack\fP は、指定された Java プロセスやコアファイルまたはリモートデバッグサーバーに対する Java スレッドの Java スタックトレースを印刷します。Java フレームごとに、フルクラス名、メソッド名、「bci」(バイトコードインデックス)、および行番号 (利用可能な場合) が印刷されます。\-m オプションを使用すると、jstack は、すべてのスレッドの Java フレームとネイティブフレームの両方を、「pc」(プログラムカウンタ) とともに印刷します。ネイティブフレームごとに、「pc」にもっとも近いネイティブシンボル (利用可能な場合) が印刷されます。C++ 分解名は分解解除されません。C++ 名を分解解除するには、このコマンドの出力を \f3c++filt\fP にパイプします。指定されたプロセスが 64 ビット VM 上で実行されている場合、\f2\-J\-d64\fP オプションを指定しなければならない場合があります。 次に例を示します。 +\f3jstack\fP ϡꤵ줿 Java ץ䥳եޤϥ⡼ȥǥХåСФ Java åɤ Java åȥ졼ޤJava ե졼ऴȤˡե륯饹̾᥽å̾bci(Хȥɥǥå)ӹֹ (Ѳǽʾ) ޤ\-m ץѤȡjstack ϡ٤ƤΥåɤ Java ե졼ȥͥƥ֥ե졼ξ򡢡pc(ץ५) ȤȤ˰ޤͥƥ֥ե졼ऴȤˡpcפˤäȤᤤͥƥ֥ܥ (Ѳǽʾ) ޤC++ ʬ̾ʬޤC++ ̾ʬˤϡΥޥɤνϤ \f3c++filt\fP ˥ѥפޤꤵ줿ץ 64 ӥå VM Ǽ¹ԤƤ硢\f2\-J\-d64\fP ץꤷʤФʤʤ礬ޤ򼨤ޤ .br .LP -.RS 3 - -.LP .nf \f3 .fl @@ -119,51 +110,43 @@ .fl \fP .fi -.RE .LP .LP -\f3注 \- このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。Windows プラットフォーム上で使用可能な唯一の jstack 形式は、次のとおりです。\fP +\f3\fP \- Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤdbgeng.dll ¸ߤƤʤ Windows ƥǤϡDebugging Tools For Windowsפ򥤥󥹥ȡ뤷ʤȤΥġ뤬ưޤ󡣤ޤ \f2PATH\fP ĶѿˤϡåȥץˤäƻѤ \f2jvm.dll\fP ξꡢޤϥåץե뤬줿꤬ޤޤ褦ˤƤ +.LP .LP -.nf -\f3 -.fl -\fP\f3 jstack [\-l] pid \fP -.fl -.fi - +򼨤ޤ \f2set PATH=<jdk>\\jre\\bin\\client;%PATH%\fP .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-F -「jstack [\-l] pid」が応答しない場合にスタックダンプを強制します。 +jstack [\-l] pidפʤ˥åפޤ .TP 3 \-l -長形式のリスト。所有 java.util.concurrent の +ĹΥꥹȡͭ java.util.concurrent .na -\f2所有できるシンクロナイザ\fP @ +\f2ͭǤ륷󥯥ʥ\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer.htmlの一覧など、ロックについての追加情報を印刷します。 +http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer.htmlΰʤɡåˤĤƤɲþޤ .TP 3 \-m -混合モード (Java およびネイティブ C/C++ フレームの両方) のスタックトレースを印刷します。 +⡼ (Java ӥͥƥ C/C++ ե졼ξ) Υåȥ졼ޤ .TP 3 \-h -ヘルプメッセージを印刷します。 +إץåޤ .br .br .TP 3 \-help -ヘルプメッセージを印刷します。 +إץåϤޤ .br .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -181,11 +164,9 @@ .RE .LP -.SH "既知のバグ" -.LP - +.SH "ΤΥХ" .LP .LP -混合モードのスタックトレース (\-m オプション使用) は、リモートデバッグサーバーでは機能しません。 +⡼ɤΥåȥ졼 (\-m ץ) ϡ⡼ȥǥХåСǤϵǽޤ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jstat.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jstat.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstat.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,44 +19,46 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstat 1 "02 Jun 2010" +.TH jstat 1 "14 Apr 2011" .LP -.SH "名前" -jstat \- Java 仮想マシン統計データ監視ツール +.SH "̾" +jstat \- Java ۥޥץǡƻġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -仮想マシン識別子 +ۥޥ̻ .TP 2 o -オプション -.br -\ \ \- 一般的なオプション -.br -\ \ \- 出力オプション +ץ +.RS 3 +.TP 2 +* +Ūʥץ +.TP 2 +* +ϥץ +.RE .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -66,56 +68,49 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 generalOption -単独で使用する一般的なコマンド行オプションです (\-help、\-options、または \-version)。 +ñȤǻѤŪʥޥɹԥץǤ (\-help\-optionsޤ \-version) .TP 3 outputOptions -単一の \f2statOption\fP と、\-t、\-h、および \-J オプションのいずれかを組み合わせた、1 つまたは複数の出力オプションです。 +ñ \f2statOption\fP ȡ\-t\-h \-J ץΤ줫Ȥ߹碌1 ĤޤʣνϥץǤ .TP 3 vmid -ターゲットの Java 仮想マシン (JVM) を示す文字列である仮想マシン識別子です。一般的な構文は次のようになります。 +åȤ Java ۥޥ (JVM) 򼨤ʸǤ벾ۥޥ̻ҤǤŪʹʸϼΤ褦ˤʤޤ .nf \f3 .fl [\fP\f4protocol\fP\f3:][//]\fP\f4lvmid\fP[@\f2hostname\fP[:\f2port\fP]/\f2servername\fP] .fl .fi -vmid 文字列の構文の大部分は、URI の構文に対応しています。\f2vmid\fP は、ローカル JVM を表す単純な整数から、通信プロトコル、ポート番号、および他の実装固有の値を示す複雑な構造まで、さまざまに異なります。詳細は、「仮想マシン識別子」を参照してください。 +vmid ʸιʸʬϡURI ιʸбƤޤ\f2vmid\fP ϡ JVM ɽñ顢̿ץȥ롢ݡֹ桢¾μͭͤ򼨤ʣʹ¤ޤǡޤޤ˰ۤʤޤܺ٤ϡֲۥޥ̻ҡפ򻲾ȤƤ .TP 3 interval[s|ms] -秒 (s) またはミリ秒 (ms) のうち指定した単位でのサンプリング間隔です。デフォルトの単位はミリ秒です。\ 正の整数でなければなりません。\ これが指定された場合、\f3jstat\fP は interval ごとに出力を生成します。 + (s) ޤϥߥ (ms) Τꤷñ̤ǤΥץ󥰴ֳ֤ǤǥեȤñ̤ϥߥäǤǤʤФʤޤ󡣤줬ꤵ줿硢\f3jstat\fP interval Ȥ˽Ϥޤ .TP 3 count -表示するサンプル数です。デフォルト値は無限です。 つまり、\f3jstat\fP は、ターゲット JVM が終了するまで、または \f3jstat\fP コマンドが終了するまで、統計データを表示します。 正の整数値を使用する必要があります。 +ɽ륵ץǤǥե̵ͤ¤ǤĤޤꡢ\f3jstat\fP ϡå JVM λޤǡޤ \f3jstat\fP ޥɤλޤǡץǡɽޤǤʤФʤޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jstat\fP ツールは、設置されている HotSpot Java 仮想マシン (JVM) のパフォーマンス統計データを表示します。ターゲット JVM は、仮想マシン識別子、つまり下記の \f2vmid\fP オプションによって識別されます。 +\f3jstat\fP ġϡ֤Ƥ HotSpot Java ۥޥ (JVM) Υѥեޥץǡɽޤå JVM ϡۥޥ̻ҡĤޤ겼 \f2vmid\fP ץˤäƼ̤ޤ .LP .LP -\f3注\fP: このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3\fP: Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .br .LP .SS -仮想マシン識別子 -.LP -.RS 3 - +ۥޥ̻ .LP .LP -\f2vmid\fP 文字列の構文の大部分は、URI の構文に対応しています。 +\f2vmid\fP ʸιʸʬϡURI ιʸбƤޤ .LP .nf \f3 @@ -128,79 +123,73 @@ .RS 3 .TP 3 protocol -通信プロトコルです。\f2protocol\fP が省略され、\f2hostname\fP が指定されていない場合、デフォルトのプロトコルが、プラットフォーム固有の最適化されたローカルプロトコルになります。\f2protocol\fP が省略され、\f2hostname\fP が指定されている場合は、デフォルトプロトコルは \f3rmi\fP になります。 +̿ץȥǤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤʤ硢ǥեȤΥץȥ뤬ץåȥեͭκŬ줿ץȥˤʤޤ\f2protocol\fP ά졢\f2hostname\fP ꤵƤϡǥեȥץȥ \f3rmi\fP ˤʤޤ .TP 3 lvmid -ターゲット JVM のローカル仮想マシン識別子です。\f2lvmid\fP は、システム上の JVM を一意に識別するプラットフォーム固有の値です。\f2lvmid\fP は、仮想マシン識別子の唯一の必須要素です。\f2lvmid\fP は、絶対というわけではありませんが、一般的にはターゲット JVM プロセスに対するオペレーティングシステムのプロセス識別子です。jps(1) コマンドを使用して、\f2lvmid\fP を指定できます。また、Unix プラットフォームでは\f3ps\fP コマンドを使用して、Windows では Windows タスクマネージャーを使用して、\f2lvmid\fP を指定できます。 +å JVM Υ벾ۥޥ̻ҤǤ\f2lvmid\fP ϡƥ JVM դ˼̤ץåȥեͭͤǤ\f2lvmid\fP ϡۥޥ̻ҤͣɬǤǤ\f2lvmid\fP ϡФȤ櫓ǤϤޤ󤬡Ūˤϥå JVM ץФ륪ڥ졼ƥ󥰥ƥΥץ̻ҤǤjps(1) ޥɤѤơ\f2lvmid\fP ǤޤޤUnix ץåȥեǤ\f3ps\fP ޥɤѤơWindows Ǥ Windows ޥ͡㡼Ѥơ\f2lvmid\fP Ǥޤ .TP 3 hostname -ターゲットホストを示すホスト名または IP アドレスです。\f2hostname\fP が省略されている場合は、ターゲットホストはローカルホストになります。 +åȥۥȤ򼨤ۥ̾ޤ IP ɥ쥹Ǥ\f2hostname\fP άƤϡåȥۥȤϥۥȤˤʤޤ .TP 3 port -リモートサーバーと通信するためのデフォルトポートです。\f2hostname\fP が省略されているか、\f2protocol\fP で最適化されたローカルプロトコルが指定されている場合、\f2port\fP は無視されます。そうでなければ、\f2port\fP パラメータの扱いは、実装によって異なります。デフォルトの \f3rmi\fP プロトコルの場合、\f2port\fP は、リモートホスト上の rmiregistry のポート番号を示します。\f2port\fP が省略され、\f2protocol\fP で \f3rmi\fP が指定されている場合、デフォルトの rmiregistry ポート (1099) が使用されます。 +⡼ȥС̿뤿ΥǥեȥݡȤǤ\f2hostname\fP άƤ뤫\f2protocol\fP ǺŬ줿ץȥ뤬ꤵƤ硢\f2port\fP ̵뤵ޤǤʤС\f2port\fP ѥ᡼ΰϡˤäưۤʤޤǥեȤ \f3rmi\fP ץȥξ硢\f2port\fP ϡ⡼ȥۥȾ rmiregistry Υݡֹ򼨤ޤ\f2port\fP ά졢\f2protocol\fP \f3rmi\fP ꤵƤ硢ǥեȤ rmiregistry ݡ (1099) Ѥޤ .TP 3 servername -このパラメータの扱いは、実装によって異なります。最適化されたローカルプロトコルの場合、このフィールドは無視されます。\f3rmi\fP プロトコルの場合は、このパラメータは、リモートホスト上の RMI リソースオブジェクトの名前を示します。 +Υѥ᡼ΰϡˤäưۤʤޤŬ줿ץȥξ硢Υեɤ̵뤵ޤ\f3rmi\fP ץȥξϡΥѥ᡼ϡ⡼ȥۥȾ RMI ꥽֥Ȥ̾򼨤ޤ .RE .LP -.RE -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jstat\fP コマンドは、一般的なオプションと出力オプションの 2 つのタイプのオプションをサポートしています。一般的なオプションを使用した場合、\f3jstat\fP は簡単な使用率およびバージョン情報を表示します。出力オプションでは、統計データ出力の内容と形式を指定します。 +\f3jstat\fP ޥɤϡŪʥץȽϥץ 2 ĤΥפΥץ򥵥ݡȤƤޤŪʥץѤ硢\f3jstat\fP ϴñʻΨӥСɽޤϥץǤϡץǡϤƤȷꤷޤ .br .LP .LP -\f3注\fP: すべてのオプションとその機能は、将来のリリースで変更または廃止される可能性があります。 +\f3\fP: ٤ƤΥץȤεǽϡΥ꡼ѹޤѻߤǽޤ .LP .SS -一般的なオプション +Ūʥץ .LP .LP -いずれかの一般的なオプションを指定した場合、他のオプションまたはパラメータは一切指定できません。 +줫ΰŪʥץꤷ硢¾Υץޤϥѥ᡼ϰڻǤޤ .LP .RS 3 .TP 3 \-help -ヘルプメッセージを表示します。 +إץåɽޤ .TP 3 \-version -バージョン情報を表示します。 +Сɽޤ .TP 3 \-options -統計データオプションを一覧表示します。下記の「出力オプション」の節を参照してください。 +ץǡץɽޤΡֽϥץפ򻲾ȤƤ .RE .LP .SS -出力オプション -.LP -.RS 3 - +ϥץ .LP .LP -一般的なオプションを指定しない場合に、出力オプションを指定できます。出力オプションは、\f3jstat\fP の出力の内容および形式を指定し、単一の \f2statOption\fP と、他のいずれかの出力オプション (\-h、\-t、および \-J) とで構成されます。\ \f2statOption\fP は最初に記述する必要があります。 +ŪʥץꤷʤˡϥץǤޤϥץϡ\f3jstat\fP νϤƤӷꤷñ \f2statOption\fP ȡ¾Τ줫νϥץ (\-h\-t \-J) Ȥǹޤ\f2statOption\fP Ϻǽ˵Ҥɬפޤ .LP .LP -出力は、各列が空白で区切られたテーブルの形式で構成されます。タイトルを記したヘッダー行に、各列の説明が記されます。 \f3\-h\fP オプションを使用して、ヘッダーを表示する頻度を設定します。\ 通常、列のヘッダー名はオプションが異なっている場合でも一貫しています。一般に、2 つのオプションで同じ名前の列が使用されていれば、2 つの列のデータソースは同じになります。 +Ϥϡ󤬶Ƕڤ줿ơ֥ηǹޤȥޤإåԤˤäơΰ̣狼ޤإåɽ٤ꤹˤϡ\f3\-h\fP ץѤޤΥإå̾ϰ̤ˡץ֤ǰݤƤޤ̤ˡ2 ĤΥץƱ̾󤬻ѤƤС2 ĤΥǡƱˤʤޤ .LP .LP -\f3\-t\fP オプションを使用すると、\f2Timestamp\fP というラベルの付いたタイムスタンプの列が、出力の最初の列として表示されます。\f2Timestamp\fP 列には、ターゲット JVM の起動からの経過時間が、秒単位で表示されます。タイムスタンプの精度は、さまざまな要因によって異なり、大量の負荷のかかったシステムでのスレッドスケジュールの遅延により変動します。 +\f3\-t\fP ץѤȡ \f2Timestamp Ȥ٥դॹפ󤬡\fP ϤκǽȤɽޤ \f2Timestamp\fP ˤϡå JVM εưηв֤ñ̤ɽޤॹפ٤ϡޤޤװˤäưۤʤꡢ̤٤ΤäƥǤΥåɥ塼ٱˤưޤ .LP .LP -\f2interval\fP および \f2count\fP パラメータを使用して、\f3jstat\fP がその出力を表示する頻度と回数をそれぞれ指定します。 +\f2interval\fP \f2count\fP ѥ᡼Ѥơ\f3jstat\fP νϤɽ٤Ȳ򤽤줾ꤷޤ .LP .LP -\f3注\fP: 将来のリリースでこの形式は変更される可能性があるため、\f3jstat\fP の出力を解析するスクリプトは作成しないことをお勧めします。\f3jstat\fP 出力を解析するスクリプトを作成する場合は、このツールの将来のリリースで、そのスクリプトを変更しなければならないことに留意してください。 +\f3\fP: Υ꡼Ǥηѹǽ뤿ᡢ\f3jstat\fP νϤϤ륹ץȤϺʤȤ򤪴ᤷޤ\f3jstat\fP ϤϤ륹ץȤϡΥġξΥ꡼ǡΥץȤѹʤФʤʤȤαդƤ .LP .RS 3 .TP 3 \-statOption -\f3jstat\fP が表示する統計データ情報を指定します。次の表には、利用可能なオプションが一覧表示されています。 特定のプラットフォームのインストールについて、オプションを一覧表示するには、一般的なオプションの \f3\-options\fP を使用します。 +\f3jstat\fP ɽץǡꤷޤɽˡѲǽʥץΰ򼨤ޤΥץåȥե।󥹥ȡΥץɽˤϡŪʥץ \f3\-options\fP Ѥޤ .br .br .LP @@ -232,7 +221,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -クラスローダーの動作に関する統計データ +饹ư˴ؤץǡ .br .di .nr a| \n(dn @@ -248,7 +237,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HotSpot Just\-in\-Time コンパイラの動作に関する統計データ +HotSpot Just\-in\-Time ѥư˴ؤץǡ .br .di .nr b| \n(dn @@ -264,7 +253,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクトされたヒープの動作に関する統計データ +١쥯Ȥ줿ҡפư˴ؤץǡ .br .di .nr c| \n(dn @@ -280,7 +269,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -世代ごとの容量と対応する領域に関する統計データ +头Ȥ̤бΰ˴ؤץǡ .br .di .nr d| \n(dn @@ -296,7 +285,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション統計データの概要 (\f3\-gcutil\fP と同じ) と、直前および現在 (適用可能な場合) のガベージコレクションイベントの原因 +١쥯ץǡγ (\f3\-gcutil\fP Ʊ) ȡľӸ (ŬѲǽʾ) Υ١쥯󥤥٥Ȥθ .br .di .nr e| \n(dn @@ -312,7 +301,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の動作に関する統計データ +New ư˴ؤץǡ .br .di .nr f| \n(dn @@ -328,7 +317,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代のサイズと対応する領域に関する統計データ +New Υбΰ˴ؤץǡ .br .di .nr g| \n(dn @@ -344,7 +333,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代および Permanent 世代の動作に関する統計データ +Old 太 Permanent ư˴ؤץǡ .br .di .nr h| \n(dn @@ -360,7 +349,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代のサイズに関する統計データ +Old Υ˴ؤץǡ .br .di .nr i| \n(dn @@ -376,7 +365,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代のサイズに関する統計データ +Permanent Υ˴ؤץǡ .br .di .nr j| \n(dn @@ -392,7 +381,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション統計データの概要 +١쥯ץǡγ .br .di .nr k| \n(dn @@ -408,7 +397,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HotSpot コンパイル方法の統計データ +HotSpot ѥˡץǡ .br .di .nr l| \n(dn @@ -419,7 +408,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wclass .if \n(80<\n(38 .nr 80 \n(38 @@ -448,7 +437,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3表示内容\fP +.nr 38 \w\f3ɽ\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -486,7 +475,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 259 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 248 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -503,7 +492,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3表示内容\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3ɽ\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -716,30 +705,26 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-52 .TP 3 \-h n -\f2n\fP サンプル (出力行) ごとに列ヘッダーを表示。 ただし、\f2n\fP は正の整数値。デフォルト値は 0。 このとき、データの最初の行の上に列ヘッダーが表示される +\f2n\fP ץ (Ϲ) Ȥإåɽ \f2n\fP ͡ǥեͤ 0 ΤȤǡκǽιԤξإåɽ .TP 3 \-t n -タイムスタンプ列を出力の最初の列として表示。タイムスタンプは、ターゲット JVM の起動時からの経過時間 +ॹϤκǽȤɽॹפϡå JVM εưηв .TP 3 -\-J javaOption -\f2javaOption\fP を \f3java\fP アプリケーション起動ツールへ渡す。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。オプションの完全なリストについては、「java(1)」のドキュメントを参照してください。 +\-JjavaOption +\f2javaOption\fP \f3java\fP ץꥱưġϤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤץδʥꥹȤˤĤƤϡjava(1)פΥɥȤ򻲾ȤƤ .RE .LP -.RE .SS -statOption と出力 -.LP -.RS 3 - +statOption Ƚ .LP .LP -以降の表では、\f3jstat\fP が \f2statOption\fP ごとに出力する列について概要を示します。 +ʹߤɽǤϡ\f3jstat\fP \f2statOption\fP Ȥ˽ϤˤĤƳפ򼨤ޤ .br .LP .SS -\-class オプション +\-class ץ .LP .LP .TS @@ -770,7 +755,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ロードされたクラスの数 +ɤ줿饹ο .br .di .nr a| \n(dn @@ -786,7 +771,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ロードされた K バイト数 +ɤ줿 K Хȿ .br .di .nr b| \n(dn @@ -802,7 +787,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -アンロードされたクラスの数 +ɤ줿饹ο .br .di .nr c| \n(dn @@ -818,7 +803,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -アンロードされた K バイト数 +ɤ줿 K Хȿ .br .di .nr d| \n(dn @@ -834,7 +819,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -クラスのロードやアンロード処理に要した時間 +饹Υɤ䥢ɽפ .br .di .nr e| \n(dn @@ -845,9 +830,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wクラスローダーの統計データ +.nr 38 \w饹ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wLoaded .if \n(80<\n(38 .nr 80 \n(38 @@ -862,7 +847,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -886,7 +871,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 313 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 298 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -903,11 +888,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'クラスローダーの統計データ\h'|\n(41u' +\&\h'|\n(40u'饹ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1002,7 +987,7 @@ .LP .SS -\-compiler オプション +\-compiler ץ .LP .LP .TS @@ -1033,7 +1018,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -実行されたコンパイルタスクの数 +¹Ԥ줿ѥ륿ο .br .di .nr a| \n(dn @@ -1049,7 +1034,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -失敗したコンパイルタスクの数 +Ԥѥ륿ο .br .di .nr b| \n(dn @@ -1065,7 +1050,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -無効にされたコンパイルタスクの数 +̵ˤ줿ѥ륿ο .br .di .nr c| \n(dn @@ -1081,7 +1066,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイルタスクの実行に要した時間 +ѥ륿μ¹Ԥפ .br .di .nr d| \n(dn @@ -1097,7 +1082,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後に失敗したコンパイルのコンパイルタイプ +Ǹ˼ԤѥΥѥ륿 .br .di .nr e| \n(dn @@ -1113,7 +1098,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後に失敗したコンパイルのクラス名とメソッド +Ǹ˼ԤѥΥ饹̾ȥ᥽å .br .di .nr f| \n(dn @@ -1124,9 +1109,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wHotSpot Just\-In\-Time コンパイラの統計データ +.nr 38 \wHotSpot Just\-In\-Time ѥץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wCompiled .if \n(80<\n(38 .nr 80 \n(38 @@ -1143,7 +1128,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -1169,7 +1154,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 349 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 334 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1186,11 +1171,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'HotSpot Just\-In\-Time コンパイラの統計データ\h'|\n(41u' +\&\h'|\n(40u'HotSpot Just\-In\-Time ѥץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1302,7 +1287,7 @@ .LP .SS -\-gc オプション +\-gc ץ .LP .LP .TS @@ -1333,7 +1318,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr a| \n(dn @@ -1349,7 +1334,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr b| \n(dn @@ -1365,7 +1350,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (KB) +Survivor ΰ 0 λΨ (KB) .br .di .nr c| \n(dn @@ -1381,7 +1366,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (KB) +Survivor ΰ 1 λΨ (KB) .br .di .nr d| \n(dn @@ -1397,7 +1382,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr e| \n(dn @@ -1413,7 +1398,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (KB) +Eden ΰλΨ (KB) .br .di .nr f| \n(dn @@ -1429,7 +1414,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr g| \n(dn @@ -1445,7 +1430,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (KB) +Old ΰλΨ (KB) .br .di .nr h| \n(dn @@ -1461,7 +1446,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr i| \n(dn @@ -1477,7 +1462,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (KB) +Permanent ΰλΨ (KB) .br .di .nr j| \n(dn @@ -1493,7 +1478,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr k| \n(dn @@ -1509,7 +1494,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr l| \n(dn @@ -1525,7 +1510,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr m| \n(dn @@ -1541,7 +1526,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr n| \n(dn @@ -1552,9 +1537,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wガベージコレクトされたヒープの統計データ +.nr 38 \w١쥯Ȥ줿ҡפץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0C .if \n(80<\n(38 .nr 80 \n(38 @@ -1589,9 +1574,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -1633,7 +1618,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 419 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 404 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -1650,11 +1635,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'ガベージコレクトされたヒープの統計データ\h'|\n(41u' +\&\h'|\n(40u'١쥯Ȥ줿ҡפץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1850,7 +1835,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(m|u+\n(.Vu .if (\n(m|+\n(#^-1v)>\n(#- .nr #- +(\n(m|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -1906,7 +1891,7 @@ .LP .SS -\-gccapacity オプション +\-gccapacity ץ .LP .LP .TS @@ -1937,7 +1922,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最小容量 (KB) +New κǾ (KB) .br .di .nr a| \n(dn @@ -1953,7 +1938,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最大容量 (KB) +New κ (KB) .br .di .nr b| \n(dn @@ -1969,7 +1954,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の現在の容量 (KB) +New θߤ (KB) .br .di .nr c| \n(dn @@ -1985,7 +1970,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr d| \n(dn @@ -2001,7 +1986,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr e| \n(dn @@ -2017,7 +2002,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr f| \n(dn @@ -2033,7 +2018,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最小容量 (KB) +Old κǾ (KB) .br .di .nr g| \n(dn @@ -2049,7 +2034,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最大容量 (KB) +Old κ (KB) .br .di .nr h| \n(dn @@ -2065,7 +2050,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の現在の容量 (KB) +Old θߤ (KB) .br .di .nr i| \n(dn @@ -2081,7 +2066,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr j| \n(dn @@ -2097,7 +2082,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最小容量 (KB) +Permanent κǾ (KB) .br .di .nr k| \n(dn @@ -2113,7 +2098,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最大容量 (KB) +Permanent κ (KB) .br .di .nr l| \n(dn @@ -2129,7 +2114,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の現在の容量 (KB) +Permanent θߤ (KB) .br .di .nr m| \n(dn @@ -2145,7 +2130,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr n| \n(dn @@ -2161,7 +2146,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr o| \n(dn @@ -2172,9 +2157,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wメモリープール世代および領域容量 +.nr 38 \w꡼ס太ΰ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wNGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -2211,9 +2196,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2257,7 +2242,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 493 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 478 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2274,11 +2259,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'メモリープール世代および領域容量\h'|\n(41u' +\&\h'|\n(40u'꡼ס太ΰ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -2522,7 +2507,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .fc .nr T. 1 .T# 1 @@ -2547,10 +2532,10 @@ .LP .SS -\-gccause オプション +\-gccause ץ .LP .LP -このオプションは、\f3\-gcutil\fP オプションと同じガベージコレクション統計データの概要を表示しますが、最後のガベージコレクションイベントと (適用可能な場合は) 現在のガベージコレクションイベントの原因が含まれます。\f3\-gcutil\fP で一覧表示される列の他に、このオプションでは次の列が追加されます。 +Υץϡ\f3\-gcutil\fP ץƱ١쥯ץǡγפɽޤǸΥ١쥯󥤥٥Ȥ (ŬѲǽʾ) ߤΥ١쥯󥤥٥Ȥθޤޤޤ\f3\-gcutil\fP ǰɽ¾ˡΥץǤϼɲäޤ .LP .LP .TS @@ -2581,7 +2566,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最後のガベージコレクションの原因 +ǸΥ١쥯θ .br .di .nr a| \n(dn @@ -2597,7 +2582,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -現在のガベージコレクションの原因 +ߤΥ١쥯θ .br .di .nr b| \n(dn @@ -2608,9 +2593,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wGC イベントを含むガベージコレクション統計データ +.nr 38 \wGC ٥Ȥޤ६١쥯ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wLGCC .if \n(80<\n(38 .nr 80 \n(38 @@ -2619,7 +2604,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2637,7 +2622,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 516 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 501 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2654,11 +2639,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'GC イベントを含むガベージコレクション統計データ\h'|\n(41u' +\&\h'|\n(40u'GC ٥Ȥޤ६١쥯ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -2702,7 +2687,7 @@ .LP .SS -\-gcnew オプション +\-gcnew ץ .LP .LP .TS @@ -2733,7 +2718,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr a| \n(dn @@ -2749,7 +2734,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr b| \n(dn @@ -2765,7 +2750,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (KB) +Survivor ΰ 0 λΨ (KB) .br .di .nr c| \n(dn @@ -2781,7 +2766,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (KB) +Survivor ΰ 1 λΨ (KB) .br .di .nr d| \n(dn @@ -2797,7 +2782,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -最大殿堂入りしきい値 +Ʋꤷ .br .di .nr e| \n(dn @@ -2813,7 +2798,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -適切な Survivor サイズ (KB) +Ŭڤ Survivor (KB) .br .di .nr f| \n(dn @@ -2829,7 +2814,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr g| \n(dn @@ -2845,7 +2830,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (KB) +Eden ΰλΨ (KB) .br .di .nr h| \n(dn @@ -2861,7 +2846,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr i| \n(dn @@ -2877,7 +2862,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr j| \n(dn @@ -2888,9 +2873,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wNew 世代の統計データ +.nr 38 \wNew ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0C .if \n(80<\n(38 .nr 80 \n(38 @@ -2917,9 +2902,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \w殿堂入りしきい値 +.nr 38 \wƲꤷ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -2953,7 +2938,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 570 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 555 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -2970,11 +2955,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'New 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'New ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3042,7 +3027,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'TT\h'|\n(41u'殿堂入りしきい値 +\&\h'|\n(40u'TT\h'|\n(41u'Ʋꤷ .ne \n(e|u+\n(.Vu .if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3158,7 +3143,7 @@ .LP .SS -\-gcnewcapacity オプション +\-gcnewcapacity ץ .LP .LP .TS @@ -3181,16 +3166,15 @@ .rm 80 81 .nr 34 \n(.lu .eo -.am 80 +.am 81 .br .di a+ .35 .ft \n(.f .ll \n(34u*1u/3u -.if \n(.l<\n(80 .ll \n(80u +.if \n(.l<\n(81 .ll \n(81u .in 0 -NGCMN\ \ \ \ \ \ \ \ \ T}~T{ -New 世代の最小容量 (KB) +New κǾ (KB) .br .di .nr a| \n(dn @@ -3206,7 +3190,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の最大容量 (KB) +New κ (KB) .br .di .nr b| \n(dn @@ -3222,7 +3206,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -New 世代の現在の容量 (KB) +New θߤ (KB) .br .di .nr c| \n(dn @@ -3238,7 +3222,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の最大容量 (KB) +Survivor ΰ 0 κ (KB) .br .di .nr d| \n(dn @@ -3254,7 +3238,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の現在の容量 (KB) +Survivor ΰ 0 θߤ (KB) .br .di .nr e| \n(dn @@ -3270,7 +3254,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の最大容量 (KB) +Survivor ΰ 1 κ (KB) .br .di .nr f| \n(dn @@ -3286,7 +3270,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の現在の容量 (KB) +Survivor ΰ 1 θߤ (KB) .br .di .nr g| \n(dn @@ -3302,7 +3286,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の最大容量 (KB) +Eden ΰκ (KB) .br .di .nr h| \n(dn @@ -3318,7 +3302,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の現在の容量 (KB) +Eden ΰθߤ (KB) .br .di .nr i| \n(dn @@ -3334,7 +3318,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr j| \n(dn @@ -3345,13 +3329,15 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wNew 世代領域サイズの統計データ +.nr 38 \wNew ΰ襵ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wNGCMX \ \ \ +.nr 38 \wNGCMN .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wNGC \ \ \ +.nr 38 \wNGCMX +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \wNGC .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0CMX .if \n(80<\n(38 .nr 80 \n(38 @@ -3371,15 +3357,15 @@ .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 -.nr 38 \n(a- -.if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 +.nr 38 \n(a- +.if \n(81<\n(38 .nr 81 \n(38 .nr 38 \n(b- .if \n(81<\n(38 .nr 81 \n(38 .nr 38 \n(c- @@ -3408,7 +3394,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 626 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 609 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -3425,21 +3411,21 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'New 世代領域サイズの統計データ\h'|\n(41u' +\&\h'|\n(40u'New ΰ襵ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\h'|\n(41u' +\&\h'|\n(40u'NGCMN\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v -.nr 37 \n(40u +.nr 37 \n(41u .in +\n(37u .a+ .in -\n(37u @@ -3451,7 +3437,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'NGCMX \ \ \\h'|\n(41u' +\&\h'|\n(40u'NGCMX\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -3467,7 +3453,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'NGC \ \ \\h'|\n(41u' +\&\h'|\n(40u'NGC\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -3593,7 +3579,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .fc .nr T. 1 .T# 1 @@ -3609,11 +3595,11 @@ .rm i+ .rm j+ .TE -.if \n-(b.=0 .nr c. \n(.c-\n(d.-49 +.if \n-(b.=0 .nr c. \n(.c-\n(d.-47 .LP .SS -\-gcold オプション +\-gcold ץ .LP .LP .TS @@ -3644,7 +3630,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr a| \n(dn @@ -3660,7 +3646,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (KB) +Permanent ΰλΨ (KB) .br .di .nr b| \n(dn @@ -3676,7 +3662,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr c| \n(dn @@ -3692,7 +3678,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (KB) +Old ΰλΨ (KB) .br .di .nr d| \n(dn @@ -3708,7 +3694,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -3724,7 +3710,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -3740,7 +3726,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -3751,9 +3737,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wOld および Permanent 世代の統計データ +.nr 38 \wOld Permanent ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wPC .if \n(80<\n(38 .nr 80 \n(38 @@ -3774,9 +3760,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -3804,7 +3790,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 668 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 651 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -3821,11 +3807,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Old および Permanent 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Old Permanent ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3909,7 +3895,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -3958,7 +3944,7 @@ .LP .SS -\-gcoldcapacity オプション +\-gcoldcapacity ץ .LP .LP .TS @@ -3989,7 +3975,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最小容量 (KB) +Old κǾ (KB) .br .di .nr a| \n(dn @@ -4005,7 +3991,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の最大容量 (KB) +Old κ (KB) .br .di .nr b| \n(dn @@ -4021,7 +4007,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 世代の現在の容量 (KB) +Old θߤ (KB) .br .di .nr c| \n(dn @@ -4037,7 +4023,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の現在の容量 (KB) +Old ΰθߤ (KB) .br .di .nr d| \n(dn @@ -4053,7 +4039,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -4069,7 +4055,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -4085,7 +4071,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -4096,9 +4082,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wOld 世代の統計データ +.nr 38 \wOld ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wOGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -4119,9 +4105,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4149,7 +4135,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 710 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 693 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4166,11 +4152,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Old 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Old ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4254,7 +4240,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4303,7 +4289,7 @@ .LP .SS -\-gcpermcapacity オプション +\-gcpermcapacity ץ .LP .LP .TS @@ -4334,7 +4320,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最小容量 (KB) +Permanent κǾ (KB) .br .di .nr a| \n(dn @@ -4350,7 +4336,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の最大容量 (KB) +Permanent κ (KB) .br .di .nr b| \n(dn @@ -4366,7 +4352,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 世代の現在の容量 (KB) +Permanent θߤ (KB) .br .di .nr c| \n(dn @@ -4382,7 +4368,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の現在の容量 (KB) +Permanent ΰθߤ (KB) .br .di .nr d| \n(dn @@ -4398,7 +4384,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr e| \n(dn @@ -4414,7 +4400,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr f| \n(dn @@ -4430,7 +4416,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr g| \n(dn @@ -4441,9 +4427,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wPermanent 世代の統計データ +.nr 38 \wPermanent ץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wPGCMN .if \n(80<\n(38 .nr 80 \n(38 @@ -4464,9 +4450,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4494,7 +4480,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 752 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 735 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4511,11 +4497,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'Permanent 世代の統計データ\h'|\n(41u' +\&\h'|\n(40u'Permanent ץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4599,7 +4585,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(f|u+\n(.Vu .if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -4648,7 +4634,7 @@ .LP .SS -\-gcutil オプション +\-gcutil ץ .LP .LP .TS @@ -4679,7 +4665,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 0 の使用率 (現在の容量に対するパーセンテージ) +Survivor ΰ 0 λΨ (ߤ̤Фѡơ) .br .di .nr a| \n(dn @@ -4695,7 +4681,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Survivor 領域 1 の使用率 (現在の容量に対するパーセンテージ) +Survivor ΰ 1 λΨ (ߤ̤Фѡơ) .br .di .nr b| \n(dn @@ -4711,7 +4697,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Eden 領域の使用率 (現在の容量に対するパーセンテージ) +Eden ΰλΨ (ߤ̤Фѡơ) .br .di .nr c| \n(dn @@ -4727,7 +4713,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Old 領域の使用率 (現在の容量に対するパーセンテージ) +Old ΰλΨ (ߤ̤Фѡơ) .br .di .nr d| \n(dn @@ -4743,7 +4729,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -Permanent 領域の使用率 (現在の容量に対するパーセンテージ) +Permanent ΰλΨ (ߤ̤Фѡơ) .br .di .nr e| \n(dn @@ -4759,7 +4745,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代の GC イベント数 +㤤 GC ٥ȿ .br .di .nr f| \n(dn @@ -4775,7 +4761,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -若い世代のガベージコレクション時間 +㤤Υ١쥯 .br .di .nr g| \n(dn @@ -4791,7 +4777,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -フルガベージコレクション時間 +ե륬١쥯 .br .di .nr h| \n(dn @@ -4807,7 +4793,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ガベージコレクション総時間 +١쥯 .br .di .nr i| \n(dn @@ -4818,9 +4804,9 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wガベージコレクション統計データの概要 +.nr 38 \w١쥯ץǡγ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wS0 .if \n(80<\n(38 .nr 80 \n(38 @@ -4845,9 +4831,9 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wフル GC イベント数 +.nr 38 \wե GC ٥ȿ .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -4879,7 +4865,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 802 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 785 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -4896,11 +4882,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'ガベージコレクション統計データの概要\h'|\n(41u' +\&\h'|\n(40u'١쥯ץǡγ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5016,7 +5002,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'FGC\h'|\n(41u'フル GC イベント数 +\&\h'|\n(40u'FGC\h'|\n(41u'ե GC ٥ȿ .ne \n(h|u+\n(.Vu .if (\n(h|+\n(#^-1v)>\n(#- .nr #- +(\n(h|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5067,7 +5053,7 @@ .LP .SS -\-printcompilation オプション +\-printcompilation ץ .LP .LP .TS @@ -5098,7 +5084,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -実行されたコンパイルタスクの数 +¹Ԥ줿ѥ륿ο .br .di .nr a| \n(dn @@ -5114,7 +5100,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -メソッドのバイトコードのバイト数 +᥽åɤΥХȥɤΥХȿ .br .di .nr b| \n(dn @@ -5130,7 +5116,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイル方法を特定するクラス名とメソッド名。クラス名では、名前空間の区切り文字として、「.」ではなく「/」が使用される。メソッド名は、指定されたクラス内のメソッドである。これらの 2 つのフィールドの形式は、HotSpot \- \f3XX:+PrintComplation\fP オプションと対応している +ѥˡꤹ륯饹̾ȥ᥽å̾饹̾Ǥϡ֤̾ζڤʸȤơ.פˡ/פѤ롣᥽å̾ϡꤵ줿饹Υ᥽åɤǤ롣 2 ĤΥեɤηϡHotSpot \- \f3XX:+PrintComplation\fP ץбƤ .br .di .nr c| \n(dn @@ -5141,24 +5127,24 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \wHotSpot コンパイル方法の統計データ +.nr 38 \wHotSpot ѥˡץǡ .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w\f3列\fP +.nr 38 \w\f3\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \wCompiled .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wサイズ +.nr 38 \w .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \w型 +.nr 38 \w .if \n(80<\n(38 .nr 80 \n(38 -.nr 38 \wメソッド +.nr 38 \w᥽å .if \n(80<\n(38 .nr 80 \n(38 .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 -.nr 38 \wコンパイルタイプ +.nr 38 \wѥ륿 .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -5178,7 +5164,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 828 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 811 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -5195,11 +5181,11 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'HotSpot コンパイル方法の統計データ\h'|\n(41u' +\&\h'|\n(40u'HotSpot ѥˡץǡ\h'|\n(41u' .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3列\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -5221,7 +5207,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'サイズ\h'|\n(41u' +\&\h'|\n(40u'\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -5235,13 +5221,13 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'型\h'|\n(41u'コンパイルタイプ +\&\h'|\n(40u'\h'|\n(41u'ѥ륿 .ne \n(c|u+\n(.Vu .if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'メソッド\h'|\n(41u' +\&\h'|\n(40u'᥽å\h'|\n(41u' .mk ## .nr 31 \n(## .sp |\n(##u-1v @@ -5263,19 +5249,16 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-19 .LP -.SS - -.LP -.SH "" +.SH "" .LP .LP -この項では、21891 の \f2lvmid\fP を持つローカル JVM を監視する例を示します。 +ιǤϡ21891 \f2lvmid\fP ĥ JVM ƻ뤹򼨤ޤ .LP .SS -gcutil オプションの使用 +gcutil ץλ .LP .LP -この例は、\f2lvmid\fP 21891 に接続して、250 ミリ秒間隔で 7 つのサンプルを取得し、\f3\-gcutil\fP オプションでの指定に従って出力を表示します。 +ϡ\f2lvmid\fP 21891 ³ơ250 ߥôֳ֤ 7 ĤΥץ\f3\-gcutil\fP ץǤλ˽äƽϤɽޤ .LP .nf \f3 @@ -5320,13 +5303,13 @@ .LP .LP -この例の出力は、若い世代のコレクションが 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% ѤƤޤ .LP .SS -列ヘッダー文字列の繰り返し +إåʸη֤ .LP .LP -この例は、\f2lvmid\fP 21891 に接続して、250 ミリ秒間隔でサンプルを取得し、\f3\-gcutil\fP オプションでの指定に従って出力を表示します。さらに、\f3\-h3\fP オプションを使用して、データが 3 行表示されるごとに列ヘッダーを出力します。 +ϡ\f2lvmid\fP 21891 ³ơ250 ߥôֳ֤ǥץ\f3\-gcutil\fP ץǤλ˽äƽϤɽޤˡ\f3\-h3\fP ץѤơǡ 3 ɽ뤴ȤإåϤޤ .LP .nf \f3 @@ -5379,16 +5362,16 @@ .LP .LP -この例では、ヘッダー文字列の繰り返しが見られるほかにも、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 ع߳ʤޤ .LP .LP -別のコレクションが、5 番目と 6 番目のサンプル間で行われています。このコレクションでは、Survivor がほとんど見られず、殿堂入りしきい値を 31 に戻しました。 +̤Υ쥯󤬡5 ܤ 6 ܤΥץ֤ǹԤƤޤΥ쥯ǤϡSurvivor ۤȤɸ줺Ʋꤷͤ 31 ᤷޤ .LP .SS -サンプルごとのタイムスタンプの挿入 +ץ뤴ȤΥॹפ .LP .LP -この例は、\f2lvmid\fP 21891 へ接続し、250 ミリ秒間隔で 3 つのサンプルを取得しています。\f3\-t\fP オプションを使用して、最初の列にサンプルごとのタイムスタンプを表示しています。 +ϡ\f2lvmid\fP 21891 ³250 ߥôֳ֤ 3 ĤΥץƤޤ\f3\-t\fP ץѤơǽ˥ץ뤴ȤΥॹפɽƤޤ .LP .nf \f3 @@ -5417,13 +5400,13 @@ .LP .LP -\f2Timestamp\fP 列には、ターゲット JVM の起動時からの経過時間が、秒単位でレポートされています。さらに、\f3\-gcoldcapacity\fP 出力では、割り当て要求または昇格要求あるいはその両方を満たすためにヒープが拡張するごとに、Old 世代の容量 (OGC) と Old 領域の容量 (OC) とが増加していることがわかります。Old 世代の容量 (OGC) は、81 番目のフル GC (FGC) 後に、11696 KB から 13820 KB へ増加しています。Old 世代 (および領域) の最大容量は、60544 KB (OGCMX) なので、まだ拡張できる余裕が残されています。 +\f2Timestamp\fP ˤϡå JVM εưηв֤ñ̤ǥݡȤƤޤˡ\f3\-gcoldcapacity\fP ϤǤϡ׵ޤϾ׵ᤢ뤤Ϥξ˥ҡפĥ뤴ȤˡOld (OGC) Old ΰ (OC) ȤäƤ뤳Ȥ狼ޤOld (OGC) ϡ81 ܤΥե GC (FGC) ˡ11696 KB 13820 KB äƤޤOld (ΰ) κ̤ϡ60544 KB (OGCMX) ʤΤǡޤĥǤ;͵ĤƤޤ .LP .SS -リモート JVM のインストゥルメンテーションの監視 +⡼ JVM Υ󥹥ȥơδƻ .LP .LP -この例は、\f3\-gcutil\fP オプションを使用して、\f2remote.domain\fP というシステム上の \f2lvmid\fP 40496 に接続し、サンプルを秒単位で無期限に取得しています。 +ϡ\f3\-gcutil\fP ץѤơ\f2remote.domain\fP Ȥƥ \f2lvmid\fP 40496 ³ץñ̵̤¤˼Ƥޤ .LP .nf \f3 @@ -5440,24 +5423,23 @@ .LP .LP -\f2lvmid\fP は、リモートホストの名前と結合されて、\f240496@remote.domain\fP の \f2vmid\fP を構成しています。結果として、この \f2vmid\fP は、\f3rmi\fP プロトコルを使用して、リモートホスト上のデフォルトの \f3jstatd\fP サーバーと通信します。\f3jstatd\fP サーバーは、\f3rmiregistry\fP を使用して、デフォルトの \f3rmiregistry\fP ポート (ポート 1099) にバインドされた \f2remote.domain\fP に配置されれます。 +\f2lvmid\fP ϡ⡼ȥۥȤ̾ȷ礵ơ\f240496@remote.domain\fP \f2vmid\fP Ƥޤ̤Ȥơ \f2vmid\fP ϡ\f3rmi\fP ץȥѤơ⡼ȥۥȾΥǥեȤ \f3jstatd\fP С̿ޤ\f3jstatd\fP Сϡ\f3rmiregistry\fP ѤơǥեȤ \f3rmiregistry\fP ݡ (ݡ 1099) ˥Хɤ줿 \f2remote.domain\fP ֤ޤ .LP -.RE -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jps(1) \- Java 仮想マシンプロセスステータスツール」 +jps(1) \- Java ۥޥץơġ .TP 2 o -「jstatd(1) \- 仮想マシン jstat デーモン」 +jstatd(1) \- ۥޥ jstat ǡ .TP 2 o -「rmiregistry(1) \- Java リモートオブジェクトレジストリ」 +rmiregistry(1) \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jstatd.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/jstatd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jstatd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,43 +19,41 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH jstatd 1 "02 Jun 2010" +.TH jstatd 1 "14 Apr 2011" .LP -.SH "名前" -jstatd \- 仮想マシン jstat デーモン +.SH "̾" +jstatd \- ۥޥ jstat ǡ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -パラメータ +ѥ᡼ .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -セキュリティー +ƥ .TP 2 o -リモートインタフェース +⡼ȥ󥿥ե .TP 2 o -例 + .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -68,72 +66,64 @@ .fi .LP -.SH "パラメータ" -.LP - +.SH "ѥ᡼" .LP .RS 3 .TP 3 options -コマンド行オプション。オプションは任意の順序で指定できます。重複または矛盾するオプションがある場合、最後に指定したオプションが優先されます。 +ޥɹԥץ󡣥ץǤդνǻǤޤʣޤ̷⤹륪ץ󤬤硢Ǹ˻ꤷץͥ褵ޤ .RE .LP -.SH " 説明" -.LP - +.SH " " .LP .LP -\f3jstatd\fP ツールは、計測された HotSpot Java 仮想マシン (JVM) の作成と終了を監視し、ローカルシステム上で実行している Java 仮想マシンに、リモート監視ツールが接続できるようにするためのインタフェースを提供する RMI サーバーアプリケーションです。 +\f3jstatd\fP ġϡ¬줿 HotSpot Java ۥޥ (JVM) κȽλƻ뤷륷ƥǼ¹ԤƤ Java ۥޥˡ⡼ȴƻġ뤬³Ǥ褦ˤ뤿Υ󥿥ե󶡤 RMI СץꥱǤ .LP .LP -\f3jstatd\fP サーバーでは、ローカルホストに RMI レジストリが存在することが必要になります。\f3jstatd\fP サーバーは、デフォルトポートまたは \f2\-p port\fP オプションで指定されたポート上の RMI レジストリに接続しようとします。RMI レジストリが見つからない場合、\f2\-p port\fP オプションで指定されたポート、または \f2\-p port\fP が省略されている場合は、デフォルト RMI レジストリにバインドされた \f3jstatd\fP アプリケーション内に、1 つの RMI レジストリが作成されます。内部 RMI レジストリの作成は、\f2\-nr\fP オプションを指定することによって禁止することができます。 +\f3jstatd\fP СǤϡۥȤ RMI 쥸ȥ꤬¸ߤ뤳Ȥɬפˤʤޤ\f3jstatd\fP СϡǥեȥݡȤޤ \f2\-p port\fP ץǻꤵ줿ݡȾ RMI 쥸ȥ³褦ȤޤRMI 쥸ȥ꤬Ĥʤ硢\f2\-p port\fP ץǻꤵ줿ݡȡޤ \f2\-p port\fP άƤϡǥե RMI 쥸ȥ˥Хɤ줿 \f3jstatd\fP ץꥱˡ1 Ĥ RMI 쥸ȥ꤬ޤ RMI 쥸ȥκϡ\f2\-nr\fP ץꤹ뤳Ȥˤäƶػߤ뤳ȤǤޤ .LP .LP -\f3注:\fP このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。現在、Windows 98 および Windows Me プラットフォームでは使用できません。 +\f3:\fP Υ桼ƥƥϥݡоݳǤꡢ JDK ΥСǤѤǤʤʤǽޤߡWindows 98 Windows Me ץåȥեǤϻѤǤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .LP -\f3jstatd\fP コマンドは次のオプションをサポートしています。 +\f3jstatd\fP ޥɤϼΥץ򥵥ݡȤƤޤ .LP .RS 3 .TP 3 \-nr -既存の RMI レジストリが見つからない場合、\f2jstatd\fP プロセス内に内部 RMI レジストリを作成しないようにします。 +¸ RMI 쥸ȥ꤬Ĥʤ硢\f2jstatd\fP ץ RMI 쥸ȥʤ褦ˤޤ .TP 3 \-p\ port -RMI レジストリがあると予想されるポート番号です。 見つからない場合は、\f2\-nr\fP が指定されていなければ作成されます。 +RMI 쥸ȥ꤬ͽۤݡֹǤ Ĥʤϡ\f2\-nr\fP ꤵƤʤкޤ .TP 3 \-n\ rminame -RMI レジストリにおいて、リモート RMI オブジェクトがバインドされる名前です。デフォルト名は \f2JStatRemoteHost\fP です。複数の \f3jstatd\fP サーバーが同じホスト上で起動している場合、各サーバーのエクスポートした RMI オブジェクトの名前は、このオプションを指定することによって、一意の名前にすることができます。ただし、このオプションを使用する場合、監視クライアントの \f2hostid\fP および \f2vmid\fP 文字列に、その一意のサーバー名を含める必要があります。 +RMI 쥸ȥˤơ⡼ RMI ֥ȤХɤ̾Ǥǥե̾ \f2JStatRemoteHost\fP Ǥʣ \f3jstatd\fP СƱۥȾǵưƤ硢ƥСΥݡȤ RMI ֥Ȥ̾ϡΥץꤹ뤳Ȥˤäơդ̾ˤ뤳ȤǤޤΥץѤ硢ƻ륯饤Ȥ \f2hostid\fP \f2vmid\fP ʸˡΰդΥС̾ޤɬפޤ .TP 3 \-Joption -\f3javac\fP が呼び出す \f3java\fP 起動ツールに、\f2option\fP を渡します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f3javac\fP ƤӽФ \f3java\fP ưġˡ\f2option\fP ϤޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .RE .LP -.SH "セキュリティー" -.LP - +.SH "ƥ" .LP .LP -\f3jstatd\fP サーバーは、有効なネイティブアクセス権を持つ JVM だけを監視できます。したがって、\f3jstatd\fP プロセスは、ターゲット JVM と同じユーザー資格で実行している必要があります。一部のユーザー資格は、Unix(TM) ベースのシステムにおける \f2root\fP ユーザーのように、システム上の任意の JVM によってエクスポートされたインストゥルメンテーションへのアクセス権を持っています。このような資格で実行している \f3jstatd\fP プロセスは、システム上のすべての JVM を監視できますが、セキュリティー上の別の問題が起こります。 +\f3jstatd\fP Сϡͭʥͥƥ֥ JVM ƻǤޤäơ\f3jstatd\fP ץϡå JVM Ʊ桼ʤǼ¹ԤƤɬפޤΥ桼ʤϡUNIX(TM) ١Υƥˤ \f2root\fP 桼Τ褦ˡƥǤդ JVM ˤäƥݡȤ줿󥹥ȥơؤΥäƤޤΤ褦ʻʤǼ¹ԤƤ \f3jstatd\fP ץϡƥΤ٤Ƥ JVM ƻǤޤƥ̤꤬ޤ +.LP +.LP +\f3jstatd\fP Сϡ⡼ȥ饤ȤǧڤͿޤ󡣤Τᡢ\f3jstatd\fP Сץ¹Ԥȡ\f3jstatd\fP ץĤ٤Ƥ JVM ˤ륤󥹥ȥơΥݡȤ򡢥ͥåȥΤ٤ƤΥ桼˸뤳Ȥˤʤޤ̵ʾ֤ϡĶŪ˾ޤʤ礬ޤ ä˼²ƯĶޤϰǤʤͥåȥǤϡ\f3jstatd\fP ץưˡ륻ƥݥꥷƤɬפޤ .LP .LP -\f3jstatd\fP サーバーは、リモートクライアントの認証を一切与えません。そのため、\f3jstatd\fP サーバープロセスを実行すると、\f3jstatd\fP プロセスがアクセス権を持つすべての JVM によるインストゥルメンテーションのエクスポートを、ネットワーク上のすべてのユーザーに公開することになります。この無防備な状態は、環境的に望ましくない場合があります。 特に実稼働環境または安全でないネットワークでは、\f3jstatd\fP プロセスを起動する前に、ローカルセキュリティーポリシーを検討する必要があります。 +\f3jstatd\fP Сϡ¾Υƥޥ͡㡼󥹥ȡ뤵ƤʤˤϡRMISecurityPolicy Υ󥹥󥹤򥤥󥹥ȡ뤷ޤ Τᡢƥݥꥷեꤹɬפޤݥꥷեϡǥեȥݥꥷ +.na +\f2ݥꥷեιʸ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.html˽򤹤ɬפޤ .LP .LP -\f3jstatd\fP サーバーは、他のセキュリティーマネージャーがインストールされていない場合には、RMISecurityPolicy のインスタンスをインストールします。 そのため、セキュリティーポリシーファイルを指定する必要があります。ポリシーファイルは、デフォルトポリシー実装の -.na -\f2ポリシーファイルの構文\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.htmlに準拠する必要があります。 -.LP -.LP -次のポリシーファイルの場合、\f3jstatd\fP サーバーは一切のセキュリティー例外を使用せずに実行できます。このポリシーは、すべてのコードベースへのあらゆるアクセス権を認めるポリシーよりも自由度は低いですが、\f3jstatd\fP サーバーを実行するために最低限必要なアクセス権しか認めないポリシーよりも自由度は高くなっています。 +Υݥꥷեξ硢\f3jstatd\fP СϰڤΥƥ㳰Ѥ˼¹ԤǤޤΥݥꥷϡ٤ƤΥɥ١ؤΤ륢ǧݥꥷ⼫ͳ٤㤤Ǥ\f3jstatd\fP С¹Ԥ뤿˺ɬפʥǧʤݥꥷ⼫ͳ٤Ϲ⤯ʤäƤޤ .LP .nf \f3 @@ -155,7 +145,7 @@ .LP .LP -このポリシーを使用するには、このテキストを \f2jstatd.all.policy\fP というファイルにコピーし、次のように \f3jstatd\fP サーバーを実行します。 +ΥݥꥷѤˤϡΥƥȤ \f2jstatd.all.policy\fP Ȥե˥ԡΤ褦 \f3jstatd\fP С¹Ԥޤ .LP .nf \f3 @@ -169,27 +159,23 @@ .LP .LP -より厳しいセキュリティーを実施するサイトの場合、カスタムポリシーファイルを使用して、特定の信頼できるホストまたはネットワークにアクセスを制限することができます。 ただし、このような方法は、IP アドレスの盗聴攻撃を受けやすくなります。セキュリティーの問題について、カスタマイズしたポリシーファイルでも対処できない場合は、\f3jstatd\fP サーバーを実行せずに、\f3jstat\fP と \f3jps\fP ツールをローカルで使用することがもっとも安全な方法になります。 +긷ƥ»ܤ륵Ȥξ硢ݥꥷեѤơοǤۥȤޤϥͥåȥ˥¤뤳ȤǤޤ Τ褦ˡϡIP ɥ쥹İ䤹ʤޤƥˤĤơޥݥꥷեǤнǤʤϡ\f3jstatd\fP С¹Ԥˡ\f3jstat\fP \f3jps\fP ġǻѤ뤳ȤäȤˡˤʤޤ .LP -.SH "リモートインタフェース" -.LP - +.SH "⡼ȥ󥿥ե" .LP .LP -\f3jstatd\fP プロセスがエクスポートするインタフェースは、独自に開発したものであり変更される予定です。ユーザーおよび開発者は、このインタフェースへの書き込みを行わないでください。 +\f3jstatd\fP ץݡȤ륤󥿥եϡȼ˳ȯΤǤѹͽǤ桼ӳȯԤϡΥ󥿥եؤν񤭹ߤԤʤǤ .LP -.SH "例" -.LP - +.SH "" .LP .LP -次に \f3jstatd\fP を起動する例を紹介します。\f3jstatd\fP スクリプトによって、サーバーはバックグラウンドで自動的に起動します。 + \f3jstatd\fP ưҲ𤷤ޤ\f3jstatd\fP ץȤˤäơСϥХå饦ɤǼưŪ˵ưޤ .LP .SS -内部 RMI レジストリの使用 + RMI 쥸ȥλ .LP .LP -この例は、内部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。この例では、デフォルトの RMI レジストリポート (ポート 1099) には、他のサーバーはバインドされていないと想定しています。 +ϡ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤǤϡǥեȤ RMI 쥸ȥݡ (ݡ 1099) ˤϡ¾ΥСϥХɤƤʤꤷƤޤ .LP .nf \f3 @@ -201,10 +187,10 @@ .LP .SS -外部 RMI レジストリの使用 + RMI 쥸ȥλ .LP .LP -この例は、外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -218,7 +204,7 @@ .LP .LP -この例は、ポート 2020 の外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡݡ 2020 γ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -232,7 +218,7 @@ .LP .LP -この例は、AlternateJstatdServerName の名前にバインドされた、ポート 2020 の外部 RMI レジストリを使用した \f3jstatd\fP の起動を表しています。 +ϡAlternateJstatdServerName ̾˥Хɤ줿ݡ 2020 γ RMI 쥸ȥѤ \f3jstatd\fP εưɽƤޤ .LP .nf \f3 @@ -246,10 +232,10 @@ .LP .SS -インプロセス RMI レジストリの作成の禁止 +ץ RMI 쥸ȥκζػ .LP .LP -この例は、RMI レジストリが見つからない場合に RMI レジストリを作成しない \f3jstatd\fP の起動を表しています。この例では、RMI レジストリがすでに実行していると想定しています。実行していない場合は、該当するエラーメッセージが表示されます。 +ϡRMI 쥸ȥ꤬Ĥʤ RMI 쥸ȥʤ \f3jstatd\fP εưɽƤޤǤϡRMI 쥸ȥ꤬Ǥ˼¹ԤƤꤷƤޤ¹ԤƤʤϡ륨顼åɽޤ .LP .nf \f3 @@ -261,10 +247,10 @@ .LP .SS -RMI ログ機能の有効化 +RMI ǽͭ .LP .LP -この例は、RMI ログ機能を有効にした \f3jstatd\fP の起動を表しています。この方法は、トラブルシューティングまたはサーバー活動の監視に役立ちます。 +ϡRMI ǽͭˤ \f3jstatd\fP εưɽƤޤˡϡȥ֥륷塼ƥ󥰤ޤϥСưδƻΩޤ .LP .nf \f3 @@ -275,25 +261,25 @@ .fi .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -「java(1) \- Java アプリケーション起動ツール」 +java(1) \- Java ץꥱưġ .TP 2 o -「jps(1) \- Java 仮想マシンプロセスステータスツール」 +jps(1) \- Java ۥޥץơġ .TP 2 o -「jstat(1) \- Java 仮想マシン統計データ監視ツール」 +jstat(1) \- Java ۥޥץǡƻġ .TP 2 o -「 + .na \f2rmiregistry\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi \- Java リモートオブジェクトレジストリ」 +http://java.sun.com/javase/6/docs/technotes/tools/index.html#rmi \- Java ⡼ȥ֥ȥ쥸ȥ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/jvisualvm.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/jvisualvm.1 Wed Jul 05 17:43:00 2017 +0200 @@ -0,0 +1,126 @@ +." Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. +." 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. +." +.TH jvisualvm 1 "14 Apr 2011" + +.LP +.SH "̾" +\f2jvisualvm\fP \- Java ۥޥδƻ롢ȥ֥륷塼ƥ󥰡ӥץե󥰥ġ +.LP +.RS 3 +.TP 2 +o + +.TP 2 +o +ѥ᡼ +.TP 2 +o + +.TP 2 +o +ץ +.TP 2 +o +ˡ +.TP 2 +o +Ϣ +.RE + +.LP +.SH "" +.LP +.nf +\f3 +.fl + \fP\f3jvisualvm\fP [ \f2options\fP ] +.fl +.fi + +.LP +.SH "ѥ᡼" +.LP +.LP +ץѤ硢ޥ̾ľ˵ҤƤץλ˷ޤϤޤΥץŬѤѥ᡼ˤĤƤϡΤȤΡ֥ץפ򻲾ȤƤ +.LP +.SH " " +.LP +.LP +Java VisualVM ϡꤵ줿 Java ۥޥ (JVM(*)) Java ƥΥ١Υץꥱ (Java ץꥱ) ¹ԤƤȤˡ Java ץꥱ˴ؤܺ٤ʾ󶡤ľŪʥե桼󥿥եǤJava VisualVM Ȥ̾ϡJava VisualVM JVM եȥ˴ؤֻŪˡ󶡤Ȥ¤ͳ褷Ƥޤ +.LP +.LP +Java VisualVM ϡĤδƻ롢ȥ֥륷塼ƥ󥰡ӥץե󥰥桼ƥƥ 1 ĤΥġ礷ޤȤСɥġ \f2jmap\fP \f2jinfo\fP \f2jstat\fP \f2jstack\fP 󶡤Ƥ뵡ǽΤۤȤɤJava VisualVM Ȥ߹ޤƤޤJConsole ġˤä󶡤εǽʤɡۤεǽϥץΥץ饰ȤɲäǤޤ +.LP +.SH "ץ" +.LP +.LP +ΥץϡJava VisualVM ưȤ˼¹Բǽˤʤޤ +.LP +.RS 3 +.TP 3 +\-J<jvm_option>\ + \f2<jvm_option>\fP JVM եȥϤޤ +.RE + +.LP +.SH "ˡ" +.LP +.LP +Java VisualVM ϡJava ץꥱγȯԤץꥱΥȥ֥륷塼ƥ󥰤ԤʤäꡢץꥱΥѥեޥ󥹤ƻ뤪ӲꤹΤΩޤJava VisualVM ѤȡȯԤϥҡץפӲϡ꡼꡼ꡢ١쥯μ¹ԤӴƻ롢ӥ꡼ CPU δʰץץե󥰤μ¹ԤǽˤʤޤJava VisualVM εǽĥץ饰⤤ĤޤȤСJConsole ġΤۤȤɤεǽϡMBeans ֤ JConsole Plug\-in Wrapper ץ饰𤷤ƻѤǤޤɸ Java VisualVM ץ饰Υ򤹤ˤϡJava VisualVM ˥塼Ρ֥ġ>֥ץ饰פ򤷤ޤ +.LP +.LP +Java VisualVM ưˤϡΥޥɤ¹Ԥޤ +.LP +.nf +\f3 +.fl +% jvisualvm \fP\f4<options>\fP\f3 +.fl +\fP +.fi + +.LP +.SH "Ϣ" +.LP +.LP +Java VisualVM ξܺ٤ϡΥڡ򻲾ȤƤ +.LP +.RS 3 +.TP 2 +o +.na +\f2Java VisualVM ȯԤΥ\fP @ +.fi +https://visualvm.dev.java.net +.TP 2 +o +.na +\f2Java SE ץåȥեǤ Java VisualVM Υɥ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/visualvm/index.html +.RE + +.LP +.LP +\f2(* Java ۥޥפȡJVMפȤѸϡJava ץåȥեβۥޥ̣Ƥޤ)\fP +.LP + diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/keytool.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/keytool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/keytool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1998-2010 keytool tool, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,20 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH keytool 1 "02 Jun 2010" +.TH keytool 1 "14 Apr 2011" .LP -.SH "名前" -keytool \- 鍵と証明書の管理ツール +.SH "̾" +keytool \- Ⱦδġ .LP -.RS 3 - .LP -暗号化鍵、X.509 証明書チェーン、および信頼できる証明書を含むキーストア (データベース) を管理します。 -.RE -.SH "形式" +Ź沽X.509 󡢤ӿǤޤ७ȥ (ǡ١) ޤ .LP - +.SH "" .LP .nf \f3 @@ -43,48 +39,44 @@ .LP .LP -Java SE 6 で keytool のコマンドインタフェースが変更されました。 詳細については「変更点」の節を参照してください。以前に定義されたコマンドも引き続きサポートされています。 +Java SE 6 keytool Υޥɥ󥿥եѹޤܺ٤ˤĤƤϡѹפ򻲾ȤƤ줿ޥɤ³ݡȤƤޤ .LP -.SH "説明" +.SH "" .LP - +\f3keytool\fP ϡȾ뤿Υ桼ƥƥǤkeytool ȤȡʬθΥڥӴϢǥ̾Ȥäǧ (ۤΥ桼ޤϥӥФƼʬȤǧڤ뤳) 䡢ǡȾ˴ؤ륵ӥѤ뤳ȤǤޤkeytool Ǥϡ̿θ (η) å夹뤳ȤǤޤ .LP -\f3keytool\fP は、鍵と証明書を管理するためのユーティリティーです。keytool を使うと、自分の公開鍵と非公開鍵のペア、および関連する証明書を管理し、デジタル署名を使った自己認証 (ほかのユーザーまたはサービスに対して自分自身を認証すること) や、データの整合性と証明書に関するサービスを利用することができます。keytool では、通信相手の公開鍵を (証明書の形で) キャッシュすることもできます。 -.LP -「証明書」とは、あるエンティティー (人物、会社など) からのデジタル署名付きの文書のことです。 証明書には、ほかのあるエンティティーの公開鍵 (およびその他の情報) が特別な値を持っていることが書かれています(「証明書」を参照)。データにデジタル署名が付いている場合は、デジタル署名を検証することで、データの整合性およびデータが本物であることをチェックできます。データの「整合性」とは、データが変更されたり、改変されたりしていないことを意味します。 また、データが「本物である」とは、そのデータが、データを作成して署名したと称する人物から実際に渡されたデータであることを意味します。 +־פȤϡ륨ƥƥ (ʪҤʤ) Υǥ̾դʸΤȤǤˤϡۤΤ륨ƥƥθ (Ӥ¾ξ) ̤ͤäƤ뤳Ȥ񤫤Ƥޤ(־פ򻲾)ǡ˥ǥ̾դƤϡǥ̾򸡾ڤ뤳ȤǡǡӥǡʪǤ뤳ȤåǤޤǡΡפȤϡǡѹ줿ꡢѤ줿ꤷƤʤȤ̣ޤ ޤǡʪǤפȤϡΥǡǡƽ̾ȾΤʪºݤϤ줿ǡǤ뤳Ȥ̣ޤ .LP .LP -また、\f3keytool\fP を使えば、DES などの対称暗号化/復号化で使用される秘密鍵を管理することもできます。 +ޤ\f3keytool\fP ȤСDES ʤɤоΰŹ沽/沽ǻѤ̩뤳ȤǤޤ .LP .LP -\f3keytool\fP は、鍵と証明書を\f2「キーストア」\fPに格納します。 +\f3keytool\fP ϡȾ\f2֥ȥ\fP˳Ǽޤ .LP -.SH "コマンドとオプションに関する注" -.LP - +.SH "ޥɤȥץ˴ؤ" .LP .LP -以下では、コマンドとそのオプションについて説明します。注: +ʲǤϡޥɤȤΥץˤĤޤ: .LP .RS 3 .TP 2 o -どのコマンド名およびオプション名にも先頭にマイナス記号 (\-) が付く +ɤΥޥ̾ӥץ̾ˤƬ˥ޥʥ (\-) դ .TP 2 o -各コマンドのオプションは任意の順序で指定できる +ƥޥɤΥץǤդνǻǤ .TP 2 o -イタリック体になっていないすべての項目、または中括弧か角括弧で囲まれているすべての項目は、そのとおりに指定する必要がある +åΤˤʤäƤʤ٤Ƥιܡޤ̤ѳ̤ǰϤޤƤ뤹٤ƤιܤϡΤȤ˻ꤹɬפ .TP 2 o -オプションを囲む中括弧は、一般に、そのオプションをコマンド行で指定しなかった場合に、デフォルト値が使われることを意味する。中括弧は、\f2\-v\fP、\f2\-rfc\fP、および \f2\-J\fP オプションを囲むのにも使われるが、これらのオプションはコマンド行で指定された場合にのみ意味を持つ (つまり、これらのオプションには、オプション自体を指定しないこと以外に「デフォルト値」は存在しない) +ץϤ̤ϡ̤ˡΥץ򥳥ޥɹԤǻꤷʤäˡǥեͤȤ뤳Ȥ̣롣̤ϡ \f2\-v\fP \f2\-rfc\fP \f2\-J\fP ץϤΤˤȤ뤬ΥץϥޥɹԤǻꤵ줿ˤΤ̣߰ (ĤޤꡢΥץˤϡץΤꤷʤȰʳˡ֥ǥե͡פ¸ߤʤ) .TP 2 o -オプションを囲む角括弧は、そのオプションをコマンド行で指定しなかった場合に、値の入力を求められることを意味する。ただし、\f2\-keypass\fP オプションをコマンド行で指定しなかった場合は、\f3keytool\fP がキーストアのパスワードから非公開/秘密鍵の復元を試みる。 ユーザーは、この試みが失敗した場合に非公開/秘密鍵の入力を求められる +ץϤѳ̤ϡΥץ򥳥ޥɹԤǻꤷʤäˡͤϤ뤳Ȥ̣롣( \f2\-keypass\fP ץξ硢ץ򥳥ޥɹԤǻꤷʤäϡ\f3keytool\fP ޤȥΥѥɤ/̩ߤ롣 桼ϡλߤԤ/̩ΥѥɤϤ .TP 2 o -イタリック体の項目の実際の値 (オプションの値) は、ユーザーが指定する必要がある。たとえば、\f2\-printcert\fP コマンドの形式は次のとおりである +åΤιܤμºݤ (ץ) ϡ桼ꤹɬפ뤿ȤС \f2\-printcert\fP ޥɤηϼΤȤǤ .nf \f3 .fl @@ -93,7 +85,7 @@ \fP .fi .LP -\f2\-printcert\fP コマンドを指定するときは、\f2cert_file\fP の代わりに実際のファイル名を指定する。次に例を示す +\f2\-printcert\fP ޥɤꤹȤϡ\f2cert_file\fP ˼ºݤΥե̾ꤹ롣򼨤 .nf \f3 .fl @@ -103,10 +95,10 @@ .fi .TP 2 o -オプションの値に空白 (スペース) が含まれている場合は、値を引用符で囲む必要がある +ץͤ˶ (ڡ) ޤޤƤϡͤǰϤɬפ .TP 2 o -\f2\-help\fP コマンドはデフォルトのコマンドである。たとえば、次のようにコマンド行を指定したとする +\f2\-help\fP ޥɤϥǥեȤΥޥɤǤ롣ȤСΤ褦˥ޥɹԤꤷȤ .nf \f3 .fl @@ -114,7 +106,8 @@ .fl \fP .fi -これは、次のように指定することと同じである +.LP +ϡΤ褦˻ꤹ뤳ȤƱǤ .nf \f3 .fl @@ -126,12 +119,11 @@ .LP .SS -オプションのデフォルト値 +ץΥǥե +.LP .LP -.RS 3 - +ץΥǥեͤϡΤȤǤ .LP -オプションのデフォルト値は、次のとおりです。 .nf \f3 .fl @@ -141,19 +133,25 @@ .fl \-keyalg .fl - "DSA" (\fP\f3\-genkeypair\fP\f3 を使用している場合) + "DSA" (\fP\f3\-genkeypair\fP\f3 ѤƤ) .fl - "DES" (\fP\f3\-genseckey\fP\f3 を使用している場合) + "DES" (\fP\f3\-genseckey\fP\f3 ѤƤ) .fl .fl \-keysize .fl - 1024 (\fP\f3\-genkeypair\fP\f3 を使用している場合) + 2048 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "RSA" ξ) +.fl + 1024 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "DSA" ξ) +.fl + 256 (\fP\f3\-genkeypair\fP\f3 ѤƤ \-keyalg "EC" ξ) .fl - 56 (\fP\f3\-genseckey\fP\f3 を使用していて \-keyalg が "DES" の場合) + 56 (\fP\f3\-genseckey\fP\f3 ѤƤ \-keyalg "DES" ξ) .fl - 168 (\fP\f3\-genseckey\fP\f3 を使用していて \-keyalg が "DESede" の場合) + 168 (\fP\f3\-genseckey\fP\f3 ѤƤ \-keyalg "DESede" ξ) +.fl + .fl .fl @@ -161,320 +159,933 @@ .fl .fl -\-keystore \fP\f4ユーザーのホームディレクトリの \fP\f4.keystore\fP\f3 というファイル\fP\f3 +\-keystore 桼Υۡǥ쥯ȥ \fP\f4.keystore\fP\f3 Ȥե .fl .fl -\-storetype \fP\f4セキュリティープロパティーファイルの「keystore.type」プロパティーの値で、 +\-storetype ƥץѥƥեΡkeystore.typeץץѥƥͤǡ .fl - \fP\f4java.security.KeyStore\fP\f3 の静的な \fP\f4getDefaultType\fP\f3 メソッドから返される\fP\f3 + java.security.KeyStore Ū getDefaultType ᥽åɤ֤ \fP\f4 \fP\f3 +.fl + \fP\f4 \fP\f3 .fl .fl -\-file \fP\f4読み込みの場合は標準入力、書き込みの場合は標準出力\fP\f3 +\-file ɤ߹ߤξɸϡ񤭹ߤξɸ .fl .fl \-protected false .fl - -.fl \fP .fi .LP -公開/非公開鍵ペアの生成において、署名アルゴリズム (\f2\-sigalg\fP オプション) は、基になる非公開鍵のアルゴリズムから派生します。基になる非公開鍵が DSA タイプである場合、\f2\-sigalg\fP オプションのデフォルト値は SHA1withDSA になり、基になる非公開鍵が RSA タイプである場合は、\f2\-sigalg\fP オプションのデフォルト値は MD5withRSA になります。選択可能な \f2\-keyalg\fP および \f2\-sigalg\fP の完全な一覧については、 -.na -\f2「Java Cryptography Architecture API Specification & Reference」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppAを参照してください。 -.RE -.SS -一般オプション +.LP +/ڥˤơ̾르ꥺ (\f2\-sigalg\fP ץ) ϡˤʤΥ르ꥺफޤ .LP .RS 3 +.TP 2 +o +ˤʤ DSA פǤ硢\f2\-sigalg\fP ץΥǥեͤ SHA1withDSA ˤʤꡢ +.TP 2 +o +ˤʤ RSA פǤϡ\f2\-sigalg\fP ץΥǥեͤ SHA256withRSA ˤʤꡢ +.TP 2 +o +ˤʤ EC פǤϡ\f2\-sigalg\fP ץΥǥեͤ SHA256withECDSA ˤʤޤ +.RE .LP -\f2\-v\fP オプションは、\f2\-help\fP コマンドを除くすべてのコマンドで使用できます。このオプションを指定した場合、コマンドは「冗長」モードで実行され、詳細な証明書情報が出力されます。 .LP -また、\f2\-J\fP\f2javaoption\fP オプションも、任意のコマンドで使用できます。このオプションを指定した場合、指定された \f2javaoption\fP 文字列が Java インタプリタに直接渡されます。このオプションには、空白を含めることはできません。このオプションは、実行環境またはメモリー使用を調整する場合に便利です。指定できるインタプリタオプションを一覧表示するには、コマンド行で \f2java \-h\fP または \f2java \-X\fP と入力してください。 +ǽ \f2\-keyalg\fP \f2\-sigalg\fP δʰˤĤƤϡ +.na +\f2Java Cryptography Architecture API Specification & Reference\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA򻲾ȤƤ +.LP +.SS +̥ץ .LP .LP -次のオプションは、キーストアに対する操作を行うすべてのコマンドで指定できます。 +\f2\-v\fP ץϡ \f2\-help\fP ޥɤ٤ƤΥޥɤǻѤǤޤΥץꤷ硢ޥɤϡ־Ĺץ⡼ɤǼ¹Ԥ졢ܺ٤ʾ󤬽Ϥޤ +.LP +.LP +ޤ \f2\-J\fP\f2javaoption\fP ץ⡢ǤդΥޥɤǻѤǤޤΥץꤷ硢ꤵ줿 \f2javaoption\fP ʸ Java 󥿥ץ꥿ľϤޤΥץˤϡޤ뤳ȤϤǤޤ󡣤Υץϡ¹ԴĶޤϥ꡼ѤĴǤǤ륤󥿥ץ꥿ץɽˤϡޥɹԤ \f2java \-h\fP ޤ \f2java \-X\fP ϤƤ +.LP +.LP +ΥץϡȥФԤ٤ƤΥޥɤǻǤޤ .LP .RS 3 .TP 3 \-storetype storetype -この修飾子は、インスタンスを生成するキーストアのタイプを指定します。 +.LP +νҤϡ󥹥󥹤륭ȥΥפꤷޤ .TP 3 \-keystore keystore -キーストアの場所を指定します。 .LP -特定の \f3keytool\fP コマンドを実行する際に、JKS ストアタイプが使用され、かつキーストアファイルがまだ存在していなかった場合、新しいキーストアファイルが作成されます。たとえば、\f2keytool \-genkeypair\fP の実行時に \f2\-keystore\fP オプションが指定されなかった場合、\f2.keystore\fP という名前のデフォルトキーストアファイルがユーザーのホームディレクトリ内にまだ存在していなければ、そこに作成されます。同様に、\f2\-keystore \fP\f2ks_file\fP というオプションが指定されてもその \f2ks_file\fP が存在しなかった場合、そのファイルが作成されます。 -.LP -\f2\-keystore\fP オプションからの入力ストリームは、\f2KeyStore.load\fP メソッドに渡されます。URL として \f2NONE\fP が指定されている場合は、null のストリームが \f2KeyStore.load\fP メソッドに渡されます。\f2NONE\fP は、\f2KeyStore\fP がファイルベースではなく、たとえば、ハードウェアトークンデバイスに置かれている場合に指定します。 -.TP 3 -\-storepass storepass -キーストアの整合性を保護するために使うパスワードを指定します。 -.LP -\f2storepass\fP は、6 文字以上にする必要があります。指定したパスワードは、キーストアの内容にアクセスするすべてのコマンドで使われます。この種のコマンドを実行するときに、コマンド行で \f2\-storepass\fP オプションを指定しなかった場合は、パスワードの入力を求められます。 -.LP -キーストアから情報を取り出す場合は、パスワードを省略できます。 パスワードを省略すると、取り出す情報の整合性をチェックできないので、警告が表示されます。 -.TP 3 -\-providerName provider_name -セキュリティープロパティーファイル内に含まれる暗号化サービスプロバイダ名を特定するために使用されます。 -.TP 3 -\-providerClass provider_class_name -暗号化サービスプロバイダがセキュリティープロパティーファイルに指定されていないときは、そのマスタークラスファイルの名前を指定するときに使われます。 -.TP 3 -\-providerArg provider_arg -\f2\-providerClass\fP と組み合わせて使用します。\f2provider_class_name\fP のコンストラクタに対する省略可能な文字列入力引数を表します。 -.TP 3 -\-protected -\f2true\fP または \f2false\fP のいずれか。専用 PIN リーダーなどの保護された認証パスを介してパスワードを指定する必要がある場合には、この値に \f2true\fP を指定してください。 -.RE - +ȥξꤷޤ .LP -.RE -.SH "コマンド" -.LP - -.LP -.SS -キーストアへのデータの作成または追加 -.LP -.RS 3 - + \f3keytool\fP ޥɤ¹ԤݤˡJKS ȥפѤ졢ĥȥե뤬ޤ¸ߤƤʤä硢ȥե뤬ޤȤС \f2keytool \-genkeypair\fP μ¹Ի \f2\-keystore\fP ץ󤬻ꤵʤä硢 \f2.keystore\fP Ȥ̾Υǥեȥȥե뤬桼Υۡǥ쥯ȥˤޤ¸ߤƤʤС˺ޤƱͤˡ \f2\-keystore \fP\f2ks_file\fP Ȥץ󤬻ꤵƤ⤽ \f2ks_file\fP ¸ߤʤä硢Υե뤬ޤ .LP -.RS 3 -.TP 3 -\-genkeypair {\-alias alias} {\-keyalg keyalg} {\-keysize keysize} {\-sigalg sigalg} [\-dname dname] [\-keypass keypass] {\-validity valDays} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption} -.LP -鍵のペア (公開鍵および関連する非公開鍵) を生成します。公開鍵は X.509 v3 自己署名証明書でラップされます。 証明書は、単一の要素を持つ証明書チェーンとして格納されます。この証明書チェーンと非公開鍵は、\f2alias\fP で特定される新しいキーストアエントリに格納されます。 -.LP -\f2keyalg\fP には、鍵のペアを生成するのに使うアルゴリズムを指定し、\f2keysize\fP には、生成する各鍵のサイズを指定します。 \f2sigalg\fP には、自己署名証明書に署名を付けるときに使うアルゴリズムを指定します。このアルゴリズムは、\f2keyalg\fP と互換性のあるものでなければなりません。 -.LP -\f2dname\fP には、\f2alias\fP に関連付け、自己署名証明書の \f2issuer\fP フィールドと \f2subject\fP フィールドとして使う X.500 識別名を指定します。コマンド行で識別名を指定しなかった場合は、識別名の入力を求められます。 -.LP -\f2keypass\fP には、生成される鍵のペアのうち、非公開鍵を保護するのに使うパスワードを指定します。パスワードを指定しなかった場合、ユーザーはその入力求められます。このとき、Return キーを押すと、キーストアのパスワードと同じパスワードが鍵のパスワードに設定されます。 \f2keypass\fP は、6 文字以上でなければなりません。 -.LP -\f2valDays\fP には、証明書の有効日数を指定します。 -.LP -このコマンドは、以前のリリースでは \f2\-genkey\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-genkeypair\fP を使用することをお勧めします。 +\f2\-keystore\fP ץ󤫤ϥȥ꡼ϡ \f2KeyStore.load\fP ᥽åɤϤޤURL Ȥ \f2NONE\fP ꤵƤϡnull Υȥ꡼ब \f2KeyStore.load\fP ᥽åɤϤޤ \f2NONE\fP ϡ \f2KeyStore\fP ե١ǤϤʤȤСϡɥȡǥХ֤Ƥ˻ꤷޤ .TP 3 -\-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} -.LP -秘密鍵を生成し、それを \f2alias\fP で特定される新しい \f2KeyStore.SecretKeyEntry\fP 内に格納します。 -.LP -\f2keyalg\fP は秘密鍵の生成に使用するアルゴリズムを、\f2keysize\fP は生成する鍵のサイズを、それぞれ指定します。\f2keypass\fP は秘密鍵の保護に使用するパスワードです。パスワードを指定しなかった場合、ユーザーはその入力求められます。このとき、Return キーを押すと、キーストアのパスワードと同じパスワードが鍵のパスワードに設定されます。 \f2keypass\fP は、6 文字以上でなければなりません。 -.TP 3 -\-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} -.LP -ファイル \f2cert_file\fP から証明書または証明書チェーン (証明書チェーンの場合は、PKCS#7 形式の応答で提供されるもの) を読み込み、\f2alias\fP によって特定されるキーストアエントリに格納します。ファイルが指定されていない場合は、標準入力から証明書または PKCS#7 応答を読み込みます。 -.LP -\f3keytool\fP では、X.509 v1、v2、v3 の証明書、および、PKCS#7 形式の証明書から構成されている PKCS#7 形式の証明書チェーンをインポートできます。インポートするデータは、バイナリ符号化方式、または出力可能符号化方式 (Base64 符号化とも呼ばれる) のどちらかで提供する必要があります。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。この符号化方式の場合、証明書は「\-\-\-\-\-BEGIN」で始まる文字列で開始され、「\-\-\-\-\-END」で始まる文字列で終了しなければなりません。 -.LP -証明書のインポートには、次の 2 つの目的があります。 -.RS 3 -.TP 3 -1. -信頼できる証明書のリストに証明書を追加する -.TP 3 -2. -CA に証明書署名要求 (\-certreq コマンドを参照) を送信した結果として、CA から受け取った証明応答をインポートする -.RE +\-storepass[:env|:file] argument .LP -どちらの種類のインポートを行うかは、\f2\-alias\fP オプションの値によって指定します。 -.RS 3 -.TP 3 -1. -\f3別名がキーエントリをポイントしない場合\fP、\f3keytool\fP はユーザーが信頼できる証明書エントリを追加しようとしているものと見なします。この場合、別名がキーストア内にすでに存在していてはいけません。別名がすでに存在している場合、その別名の信頼できる証明書がすでに存在することになるので、\f3keytool\fP はエラーを出力し、証明書のインポートを行いません。 -.TP 3 -2. -\f3別名がキーエントリをポイントしない場合\fP、\f3keytool\fP はユーザーが信頼できる証明書エントリを追加しようとしているものと見なします。 -.RE -\f3新しい信頼できる証明書のインポート\fP -.RS 3 - -.LP -.LP -\f3keytool\fP は、キーストアに証明書を追加する前に、キーストア内にすでに存在する信頼できる証明書を使って、インポートする証明書から (ルート CA の) 自己署名証明書に至るまでの信頼のチェーンの構築を試みます。 +ȥݸ뤿˻Ȥѥɤꤷޤ .LP -.LP -\f2\-trustcacerts\fP オプションを指定した場合、追加の証明書は信頼できるすなわち cacerts という名前のファイルに含まれる証明書のチェーンと見なされます。 -.LP -.LP -\f3keytool\fP が、インポートする証明書から自己署名証明書 (キーストアまたは cacerts ファイルに含まれている自己署名証明書) に至るまでの信頼のパスの構築に失敗した場合は、インポートする証明書の情報を表示し、ユーザーに確認を求めます。 この場合は、表示された証明書のフィンガープリントと、ほかのなんらかの (信頼できる) 情報源 (証明書の所有者本人など) から入手したフィンガープリントとを比較します。「信頼できる証明書」として証明書をインポートするときは、証明書が有効であることを慎重に確認する必要があります。詳細は、「信頼できる証明書のインポートに関する注意事項」を参照してください。インポート操作は、証明書を確認する時点で中止できます。ただし、\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 -.LP -.RE -\f3証明応答のインポート\fP -.RS 3 -.LP -「証明応答」をインポートするときは、キーストア内の信頼できる証明書、および (\f2\-trustcacerts\fP オプションが指定されている場合は) cacerts キーストアファイルで構成された証明書を使って証明応答が検査されます。 -.LP -.LP -証明応答が信頼できるかどうかを決定する方法は次のとおりです。 -.LP + \f2env\fP ޤ \f2file\fP ꤷʤ硢ѥɤͤ \f2argument\fP ˤʤޤͤϡ6 ʸʾˤɬפޤʳξ硢ѥɤϼΤ褦˼ޤ .RS 3 .TP 2 o -\f3証明応答が単一の X.509 証明書である場合\fP、\f3keytool\fP は、証明応答から (ルート CA の) 自己署名証明書に至るまでの信頼チェーンの確立を試みます。証明応答と、証明応答の認証に使われる証明書の階層構造は、\f2alias\fP の新しい証明書チェーンを形成します。信頼チェーンが確立されない場合、証明応答はインポートされません。この場合、\f3keytool\fP は証明書を出力せず、ユーザーに検証を求めるプロンプトを表示します。 ユーザーが証明応答の信頼性を判断するのは、不可能ではなくても非常に困難だからです。 +\f2env\fP: \f2argument\fP Ȥ̾δĶѿѥɤ .TP 2 o -\f3証明応答が PKCS#7 形式の証明書チェーンである場合\fP、\f3keytool\fP は、まずチェーンを並べ替えて、ユーザーの証明書が最初に、ルート CA の自己署名証明書が最後にくるようにしたあと、証明応答に含まれるルート CA の証明書と、キーストア内または (\f2\-trustcacerts\fP オプションが指定されている場合は) cacerts キーストアファイル内の信頼できる証明書とをすべて比較し、一致するものがあるかどうかを調べます。一致するものが見つからなかった場合は、ルート CA の証明書の情報を表示し、ユーザーに確認を求めます。 この場合は、表示された証明書のフィンガープリントと、ほかのなんらかの (信頼できる) 情報源 (ルート CA 自身など) から入手したフィンガープリントとを比較します。インポート操作は、証明書を確認する時点で中止できます。ただし、\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 +\f2file\fP: \f2argument\fP Ȥ̾Υե뤫ѥɤ +.RE +.LP +\f3\fP: \f2\-keypass\fP \f2\-srckeypass\fP \f2\-destkeypass\fP \f2\-srcstorepass\fP \f2\-deststorepass\fP ʤɤΥѥɤɬפȤ뤽¾ΥץϤ٤ơ \f2env\fP \f2file\fP ҤդޤѥɥץȽҤϡɬ (\f2:\fP) ǶڤäƤ +.LP +ѥɤϡȥƤ˥뤹٤ƤΥޥɤǻȤޤμΥޥɤ¹ԤȤˡޥɹԤ \f2\-storepass\fP ץꤷʤäϡѥɤϤޤ +.LP +ȥФϡѥɤάǤޤ ѥɤάȡФåǤʤΤǡٹɽޤ +.TP 3 +\-providerName provider_name +.LP +ƥץѥƥե˴ޤޤŹ沽ӥץХ̾ꤹ뤿˻Ѥޤ +.TP 3 +\-providerClass provider_class_name +.LP +Ź沽ӥץХƥץѥƥե˻ꤵƤʤȤϡΥޥ饹ե̾ꤹȤ˻Ȥޤ +.TP 3 +\-providerArg provider_arg +.LP +\f2\-providerClass\fP Ȥ߹碌ƻѤޤ\f2provider_class_name\fP Υ󥹥ȥ饯Фάǽʸϰɽޤ +.TP 3 +\-protected +.LP +\f2true\fP ޤ \f2false\fP Τ줫 PIN ꡼ʤɤݸ줿ǧڥѥ𤷤ƥѥɤꤹɬפˤϡͤ \f2true\fP ꤷƤ +.LP +: \f2\-importkeystore\fP ޥɤˤ 2 ĤΥȥطƤ뤿ᡢ2 ĤΥץ󡢤Ĥޤ \f2\-srcprotected\fP \f2\-destprotected\fP ȥȥåȥȥˤ줾ꤵޤ +.TP 3 +\-ext {name{:critical}{=value}} +.LP +X.509 񥨥ƥ󥷥򼨤ޤΥץ \-genkeypair \-gencert ǻѤơޤ \f2\-certreq\fP ˥ƥ󥷥ߡ׵׵ᤵ륨ƥ󥷥򼨤ȤǤޤΥץϡʣѤǤޤname ˤϡݡȤƤ륨ƥ󥷥̾ (򻲾) ޤǤդ OID ֹǤޤvalue ꤷϡƥ󥷥Υѥ᡼򼨤ޤάϡƥ󥷥Υǥե (Ƥ) 򼨤ޤϥƥ󥷥˥ѥ᡼ɬפޤ \f2:critical\fP Ҥꤷϡƥ󥷥 isCritical ° true Ǥ뤳Ȥ򼨤ޤʳξ false Ǥ뤳Ȥ򼨤ޤ:critical : \f2:c\fP ѤǤޤ . .RE .LP .LP -証明書応答内の公開鍵が \f2alias\fP の下にすでに格納されているユーザーの公開鍵に一致した場合、古い証明書チェーンが応答内の新しい証明書チェーンで置き換えられます。以前の証明書チェーンを新しい証明書チェーンで置き換えることができるのは、有効な \f2keypass\fP、つまり該当するエントリの非公開鍵を保護するためのパスワードを指定した場合だけです。パスワードを指定しておらず、非公開鍵のパスワードがキーストアのパスワードと異なる場合は、非公開鍵のパスワードの入力を求められます。 -.LP -.RE +ߡkeytool ϼ̾Υƥ󥷥򥵥ݡȤƤޤ (ʸȾʸ϶̤ʤ) .LP -このコマンドは、以前のリリースでは \f2\-import\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-importcert\fP を使用することをお勧めします。 -.TP 3 -\-importkeystore \-srckeystore srckeystore \-destkeystore destkeystore {\-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} -.LP -ソースキーストアからターゲットキーストアへ、単一のエントリまたはすべてのエントリをインポートします。 -.LP -\f2srcalias\fP オプションが指定された場合、このコマンドは、その別名で特定される単一のエントリをターゲットキーストアにインポートします。\f2destalias\fP 経由でターゲット別名が指定されなかった場合、\f2srcalias\fP がターゲット別名として使用されます。ソースのエントリがパスワードで保護されていた場合、\f2srckeypass\fP を使ってそのエントリが回復されます。\f2srckeypass\fP が指定されなかった場合、\f3keytool\fP は \f2srcstorepass\fP を使ってそのエントリを回復しようとします。\f2srcstorepass\fP が指定されなかったか正しくなかった場合、ユーザーはパスワードの入力を求められます。ターゲットエントリは \f2destkeypass\fP によって保護されます。\f2destkeypass\fP が指定されなかった場合、ターゲットエントリはソースエントリのパスワードによって保護されます。 .LP -\f2srcalias\fP オプションが指定されなかった場合、ソースキーストア内のすべてのエントリがターゲットキーストア内にインポートされます。各ターゲットエントリは対応するソースエントリの別名の下に格納されます。ソースのエントリがパスワードで保護されていた場合、\f2srcstorepass\fP を使ってそのエントリが回復されます。\f2srcstorepass\fP が指定されなかったか正しくなかった場合、ユーザーはパスワードの入力を求められます。ソースキーストア内のあるエントリタイプがターゲットキーストアでサポートされていない場合や、あるエントリをターゲットキーストアに格納する際にエラーが発生した場合、ユーザーはそのエントリをスキップして処理を続行するか、あるいは処理を中断するかの選択を求められます。ターゲットエントリはソースエントリのパスワードによって保護されます。 -.LP -ターゲット別名がターゲットキーストア内にすでに存在していた場合、ユーザーは、そのエントリを上書きするか、あるいは異なる別名の下で新しいエントリを作成するかの選択を求められます。 +.TS +.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 +.de 35 +.ps \n(.s +.vs \n(.vu +.in \n(.iu +.if \n(.u .fi +.if \n(.j .ad +.if \n(.j=0 .na +.. +.nf +.nr #~ 0 +.if n .nr #~ 0.6n +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.fc +.nr 33 \n(.s +.rm 80 81 +.nr 34 \n(.lu +.eo +.am 80 +.br +.di a+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +BC ޤ BasicConstraints +.br +.di +.nr a| \n(dn +.nr a- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di b+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ʷϡca:{true|false}[,pathlen:<len>]פǡ<len> ϡca:true,pathlen:<len>פξάɽǤ άȡca:trueפΰ̣ˤʤޤ +.br +.di +.nr b| \n(dn +.nr b- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di c+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +usage(,usage)*usage ˤϡdigitalSignature nonRepudiation (contentCommitment)keyEnciphermentdataEnciphermentkeyAgreementkeyCertSigncRLSignencipherOnlydecipherOnly Τ줫ǤޤUsage ϡޤʤСǽοʸ (ȤСdigitalSignature dig ) ޤϥ륱 (ȤС digitalSignature dS ˡcRLSign cRLS ) ṳ̂ǤޤUsage ʸȾʸ϶̤ޤ +.br +.di +.nr c| \n(dn +.nr c- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di d+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +EKU ޤ ExtendedkeyUsage +.br +.di +.nr d| \n(dn +.nr d- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di e+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +usage(,usage)*usage ˤϡanyExtendedKeyUsage serverAuthclientAuthcodeSigningemailProtection timeStampingOCSPSigningޤǤդ OID ʸΤ줫Ǥޤ ̾դ usage ϡޤʤС ǽοʸޤϥ륱 ṳ̂ǤޤUsage ʸȾʸ϶̤ޤ +.br +.di +.nr e| \n(dn +.nr e- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di f+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +SAN ޤ SubjectAlternativeName +.br +.di +.nr f| \n(dn +.nr f- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di g+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +type:value(,type:value)*type ˤϡEMAILURIDNSIPޤ OID Ǥޤvalue ϡtype ʸͤǤ +.br +.di +.nr g| \n(dn +.nr g- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di h+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +IAN ޤ IssuerAlternativeName +.br +.di +.nr h| \n(dn +.nr h- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di i+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +SubjectAlternativeName ƱǤ +.br +.di +.nr i| \n(dn +.nr i- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di j+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +SIA ޤ SubjectInfoAccess +.br +.di +.nr j| \n(dn +.nr j- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di k+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +method:location\-type:location\-value (,method:location\-type:location\-value)* method ˤϡtimeStampingסcaRepositoryסޤǤդ OID Ǥޤlocation\-type location\-value ˤϡSubjectAlternativeName ƥ󥷥ǥݡȤǤդ type:value Ǥޤ +.br +.di +.nr k| \n(dn +.nr k- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di l+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +AIA ޤ AuthorityInfoAccess +.br +.di +.nr l| \n(dn +.nr l- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di m+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +SubjectInfoAccess ƱǤmethod ˤϡocspסcaIssuersסޤǤդ OID Ǥޤ +.br +.di +.nr m| \n(dn +.nr m- \n(dl +.. +.ec \ +.35 +.nf +.ll \n(34u +.nr 80 0 +.nr 38 \w\f3̾\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \wKU ޤ KeyUsage +.if \n(80<\n(38 .nr 80 \n(38 +.80 +.rm 80 +.nr 38 \n(a- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(d- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(f- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(h- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(j- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \n(l- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 81 0 +.nr 38 \w\f3\fP +.if \n(81<\n(38 .nr 81 \n(38 +.81 +.rm 81 +.nr 38 \n(b- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(c- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(e- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(g- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(i- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(k- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(m- +.if \n(81<\n(38 .nr 81 \n(38 +.35 +.nf +.ll \n(34u +.nr 38 1n +.nr 79 0 +.nr 40 \n(79+(0*\n(38) +.nr 80 +\n(40 +.nr 41 \n(80+(3*\n(38) +.nr 81 +\n(41 +.nr TW \n(81 +.if t .if \n(TW>\n(.li .tm Table at line 325 file Input is too wide - \n(TW units +.fc   +.nr #T 0-1 +.nr #a 0-1 +.eo +.de T# +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.mk ## +.nr ## -1v +.ls 1 +.ls +.. +.ec +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3̾\fP\h'|\n(41u'\f3\fP +.ne \n(a|u+\n(.Vu +.ne \n(b|u+\n(.Vu +.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) +.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.a+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.b+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(c|u+\n(.Vu +.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'KU ޤ KeyUsage\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.c+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(d|u+\n(.Vu +.ne \n(e|u+\n(.Vu +.if (\n(d|+\n(#^-1v)>\n(#- .nr #- +(\n(d|+\n(#^-\n(#--1v) +.if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.d+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.e+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(f|u+\n(.Vu +.ne \n(g|u+\n(.Vu +.if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) +.if (\n(g|+\n(#^-1v)>\n(#- .nr #- +(\n(g|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.f+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.g+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(h|u+\n(.Vu +.ne \n(i|u+\n(.Vu +.if (\n(h|+\n(#^-1v)>\n(#- .nr #- +(\n(h|+\n(#^-\n(#--1v) +.if (\n(i|+\n(#^-1v)>\n(#- .nr #- +(\n(i|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.h+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.i+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(j|u+\n(.Vu +.ne \n(k|u+\n(.Vu +.if (\n(j|+\n(#^-1v)>\n(#- .nr #- +(\n(j|+\n(#^-\n(#--1v) +.if (\n(k|+\n(#^-1v)>\n(#- .nr #- +(\n(k|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.j+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.k+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(l|u+\n(.Vu +.ne \n(m|u+\n(.Vu +.if (\n(l|+\n(#^-1v)>\n(#- .nr #- +(\n(l|+\n(#^-\n(#--1v) +.if (\n(m|+\n(#^-1v)>\n(#- .nr #- +(\n(m|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.l+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.m+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.fc +.nr T. 1 +.T# 1 +.35 +.rm a+ +.rm b+ +.rm c+ +.rm d+ +.rm e+ +.rm f+ +.rm g+ +.rm h+ +.rm i+ +.rm j+ +.rm k+ +.rm l+ +.rm m+ +.TE +.if \n-(b.=0 .nr c. \n(.c-\n(d.-44 + .LP -\f2\-noprompt\fP を指定した場合、ユーザーは新しいターゲット別名の入力を求められません。既存のエントリはそのターゲット別名で自動的に上書きされます。最後に、インポートできないエントリは自動的にスキップされ、警告が出力されます。 -.RE -.RE +.LP +OID ̾ξ硢OCTET STRING פĹΥХȤƥ󥷥ˤĤƤϡͤ extnValue HEX פ DER 󥳡ǥ󥰤ǤHEX ʸǤϡɸ HEX (0\-9a\-fA\-F) ʳʸ̵뤵ޤäơ \f201:02:03:04\fP \f201020304פξȤ\fP ƱͤȤƼդޤͤʤ硢ƥ󥷥ͥեɤ϶ˤʤޤ +.LP +.LP +\f2\-gencert\fP ǤΤ߻ѤhonoredפȤ̤̾ϡ׵˴ޤޤ륨ƥ󥷥ͥ褹ˡ򼨤ޤ̾ͤϡ \f2all\fP (׵ᤵ뤹٤ƤΥƥ󥷥ͥ褵) \f2name{:[critical|non\-critical]}\fP (̾դΥƥ󥷥ͥ褵뤬̤ isCritical °Ѥ) \f2\-name\fP (allפȤȤ˻Ѥ㳰򼨤) Υ޶ڤꥹȤǤǥեȤǤϡ׵ᤵ륨ƥ󥷥ͥ褵ޤ +.LP +.LP +\-ext ͥΥץ˲ä̤̾Ρޤ OID \-ext ΥץꤷϡΥƥ󥷥󤬡Ǥͥ褵Ƥ륨ƥ󥷥ɲäޤ̾ (ޤ OID) ͥ褵ͤǤѤϡͤȽ׵˴ޤޤΤ򥪡С饤ɤޤ +.LP +.LP +subjectKeyIdentifier ƥ󥷥Ͼ˺ޤʽ̾ǤʤξϡauthorityKeyIdentifier ˺ޤ +.LP +.LP +\f3:\fP 桼ϡƥ󥷥 (ӾΤۤΥե) Ȥ߹碌ˤäƤϡ󥿡ͥåȤɸ˽򤷤ʤ礬뤳ȤդƤܺ٤ˤĤƤϡ־ν˴ؤջפ򻲾ȤƤ +.LP +.SH "ޥ" +.LP .SS -データのエクスポート -.LP -.RS 3 - +ȥؤΥǡκޤɲ .LP .RS 3 .TP 3 -\-certreq {\-alias alias} {\-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} +\-gencert {\-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} +.LP +׵ե ( \f2keytool \-certreq\fP ޥɤǺǤ) ˱ƾޤΥޥɤϡ\f2infile\fP (άϡɸϤ) ׵ɤ߹ߡ̾ȤäƤ׵˽̾ơX.509 \f2outfile\fP (άϡɸϤ) Ϥޤ \f2\-rfc\fP ꤷ硢Ϸ BASE64 沽 PEM ˤʤޤʳξϡХʥ DER ޤ +.LP +\f2sigalg\fP ˤϡ˽̾դȤ˻Ȥ르ꥺꤷޤ\f2startdate\fP ϡͭˤʤ볫ϻ/դǤ\f2valDays\fP ˤϡͭꤷޤ +.LP +\f2dname\fP ꤹȡμΤȤƻѤޤʳξϡ׵ᤫ̾Ѥޤ +.LP +\f2ext\fP ϡޤ X.509 ƥ󥷥򼨤ޤ\-ext ʸˡˤĤƤϡְ̥ץפ򻲾ȤƤ +.LP +\f2\-gencert\fP ޥɤѤȡǤޤǤϡ \f2e1\fP Ȥޤξξˤϡ3 Ĥξ񤬴ޤޤƤޤ +.LP +Υޥɤϡcaca1ca2 e1 4 Ĥθڥޤ +.nf +\f3 +.fl +keytool \-alias ca \-dname CN=CA \-genkeypair +.fl +keytool \-alias ca1 \-dname CN=CA \-genkeypair +.fl +keytool \-alias ca2 \-dname CN=CA \-genkeypair +.fl +keytool \-alias e1 \-dname CN=E1 \-genkeypair +.fl +\fP +.fi +.LP + 2 ĤΥޥɤϡ̾դΥޤ \f2ca\fP ca1 ˽̾ \f2ca1 signs ca2\fP ˽̾ޤ٤ƼȯԤǤ +.nf +\f3 +.fl +keytool \-alias ca1 \-certreq | keytool \-alias ca \-gencert \-ext san=dns:ca1 | keytool \-alias ca1 \-importcert +.fl +keytool \-alias ca2 \-certreq | $KT \-alias ca1 \-gencert \-ext san=dns:ca2 | $KT \-alias ca2 \-importcert +.fl +\fP +.fi .LP -PKCS#10 形式を使って証明書署名要求 (CSR) を生成します。 +Υޥɤϡ e1 ƥե e1.cert ˳Ǽޤξ ca2 ˤäƽ̾ޤη̡e1 ξˤ caca1 ca2 ޤޤ뤳Ȥˤʤޤ +.nf +\f3 +.fl +keytool \-alias e1 \-certreq | keytool \-alias ca2 \-gencert > e1.cert +.fl +\fP +.fi +.TP 3 +\-genkeypair {\-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} +.LP +Υڥ (ӴϢ) ޤ X.509 v3 ʽ̾ǥåפޤϡñǤľȤƳǼޤξϡ\f2alias\fP ꤵ뿷ȥȥ˳Ǽޤ +.LP +\f2keyalg\fP ϸΥڥ˻Ѥ륢르ꥺ\f2keysize\fP ƸΥ򡢤줾ꤷޤ\f2sigalg\fP ˤϡʽ̾˽̾դȤ˻Ȥ르ꥺꤷޤΥ르ꥺϡ\f2keyalg\fP ȸߴΤΤǤʤФʤޤ +.LP +\f2dname\fP ˤϡ\f2alias\fP ˴Ϣդʽ̾ issuer եɤ subject եɤȤƻȤ X.500 ̾ꤷޤ ޥɹԤǼ̾ꤷʤäϡ̾Ϥޤ +.LP +\f2keypass\fP ˤϡ븰ΥڥΤݸΤ˻ȤѥɤꤷޤѥɤꤷʤäϡѥɤϤޤΤȤReturn 򲡤ȡȥΥѥɤƱѥɤΥѥɤꤵޤ\f2keypass\fP ϡ6 ʸʾˤɬפޤ +.LP +\f2startdate\fP ˤϡȯԻꤷޤϡX.509 ΡValidityץեɤΡNot BeforeͤȤƤФޤ .LP -CSR は、証明書発行局 (CA) に送信することを目的としたものです。CA は、証明書要求者を (通常はオフラインで) 認証し、証明書または証明書チェーンを送り返します。 この証明書または証明書チェーンは、キーストア内の既存の証明書チェーン (最初は 1 つの自己署名証明書から構成される) に置き換えて使います。 +ץͤϡ 2 ĤηΤ줫Ǥޤ +.RS 3 +.TP 3 +1. +([+\-]\f2nnn\fP[ymdHMS])+ +.TP 3 +2. +[yyyy/mm/dd] [HH:MM:SS] +.RE +.LP +ǽηǤϡȯԻϡꤵͤߤλ狼ܤޤꤵͤϡϢβ̤ͤϢ뤷Τˤʤޤ̤γͤǡץ饹 (+) ϻ֤ʤळȤ򡢥ޥʥ (\-) ϻ֤뤳Ȥ̣Ƥޤܤ֤ \f2nnn\fP ǡñ̤ǯ֡ʬޤäǤ (줾졢1 ʸΡyסmסdסHסMסޤϡSפǼƤ)̤γͤ \f2java.util.GregorianCalendar.add(int field, int amount)\fP ᥽åɤȤȤǡȯԻɲäͤ鱦ط׻ޤȤС \f2\-startdate \-1y+1m\-1d\fPȻꤹȡϻϼΤ褦ˤʤޤ +.nf +\f3 +.fl + Calendar c = new GregorianCalendar(); +.fl + c.add(Calendar.YEAR, \-1); +.fl + c.add(Calendar.MONTH, 1); +.fl + c.add(Calendar.DATE, \-1); +.fl + return c.getTime() +.fl +\fP +.fi +.LP +2 ܤηǤϡ桼ϡǯ//Ȼ:ʬ:ä 2 ĤʬǸ̩ʳϻꤷޤ (ϸλӤ)桼ϡ1 ĤʬǤޤϡ⤦ 1 Ĥʬϸߤ (ޤϻ) ƱˤʤȤȤǤ桼ϡ˼Ƥ褦ˡ̩˻ꤹɬפޤ (û 0 )դȻξꤵ줿֤ǡ2 Ĥʬδ֤˶ʸ 1 (1 Ĥ) ޤ֤Ͼ 24 ַǻꤷƤ +.LP +ץꤷʤȡդϸߤλˤʤޤץϡ 1 Ǥޤ +.LP +\f2valDays\fP ˤϡͭꤷޤ ( \f2\-startdate\fP ǻꤵ줿աޤ \f2\-startdate\fP ꤵƤʤϸߤդϤޤ) .LP -\f2alias\fP に関連付けられた非公開鍵と X.500 識別名は、PKCS#10 証明書要求を作成するのに使われます。非公開鍵はキーストア内ではパスワードによって保護されているので、非公開鍵にアクセスするには、適切なパスワードを提供する必要があります。コマンド行で \f2keypass\fP を指定しておらず、非公開鍵のパスワードがキーストアのパスワードと異なる場合は、非公開鍵のパスワードの入力を求められます。 +ΥޥɤϡΥ꡼Ǥ \f2\-genkey\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-genkeypair\fP Ѥ뤳Ȥ򤪴ᤷޤ +.TP 3 +\-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} +.LP +̩򿷤 \f2KeyStore.SecretKeyEntry\fP (\f2alias\fP ꤵ) ˳Ǽޤ +.LP +\f2keyalg\fP ̩˻Ѥ륢르ꥺ\f2keysize\fP 븰Υ򡢤줾ꤷޤ\f2keypass\fP ̩ݸ˻ѤѥɤǤѥɤꤷʤäϡѥɤϤޤΤȤReturn 򲡤ȡȥΥѥɤƱѥɤΥѥɤꤵޤ\f2keypass\fP ϡ6 ʸʾˤɬפޤ +.TP 3 +\-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} +.LP +ե \f2cert_file\fP ޤϾ (ξϡPKCS#7 αޤϰϢ X.509 󶡤) ɤ߹ߡ\f2alias\fP ˤäꤵ륭ȥȥ˳Ǽޤե뤬ꤵƤʤϡɸϤޤϾɤ߹ߤޤ +.LP +\f3keytool\fP ǤϡX.509 v1v2v3 ξ񡢤ӡPKCS#7 ξ񤫤鹽Ƥ PKCS#7 ξ򥤥ݡȤǤޤݡȤǡϡХʥ沽ޤϽϲǽ沽 (Base64 沽ȤƤФ) Τɤ餫󶡤ɬפޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ沽ξ硢ϡ\-\-\-\-\-BEGINפǻϤޤʸdzϤ졢\-\-\-\-\-ENDפǻϤޤʸǽλʤФʤޤ .LP -\f2sigalg\fP には、CSR に署名を付けるときに使うアルゴリズムを指定します。 +ΥݡȤˤϡ 2 ĤŪޤ +.RS 3 +.TP 3 +1. +ǤΥꥹȤ˾ɲä +.TP 3 +2. +CA ˾̾׵ (\-certreq ޥɤ򻲾) ̤ȤơCA ä򥤥ݡȤ +.RE +.LP +ɤμΥݡȤԤϡ \f2\-alias\fP ץͤˤäƻꤷޤ +.RS 3 +.TP 3 +1. +\f3̾ȥݥȤʤ\fP\f3keytool\fP ϥ桼Ǥ񥨥ȥɲä褦ȤƤΤȸʤޤξ硢̾ȥˤǤ¸ߤƤƤϤޤ̾Ǥ¸ߤƤ硢̾οǤ񤬤Ǥ¸ߤ뤳ȤˤʤΤǡ\f3keytool\fP ϥ顼ϤΥݡȤԤޤ +.TP 3 +2. +.LP +\f3̾ȥݥȤʤ\fP\f3keytool\fP ϥ桼Ǥ񥨥ȥɲä褦ȤƤΤȸʤޤ +.RE +\f3ǤΥݡ\fP +.LP +\f3keytool\fP ϡȥ˾ɲäˡȥˤǤ¸ߤ뿮ǤȤäơݡȤ񤫤 (롼 CA ) ʽ̾˻ޤǤοΥιۤߤޤ +.LP +\f2\-trustcacerts\fP ץꤷ硢ɲäξϿǤ뤹ʤ cacerts Ȥ̾Υե˴ޤޤΥȸʤޤ +.LP +\f3keytool\fP ݡȤ񤫤鼫ʽ̾ (ȥޤ cacerts ե˴ޤޤƤ뼫ʽ̾) ˻ޤǤοΥѥιۤ˼ԤϡݡȤξɽ桼˳ǧޤ ξϡɽ줿Υե󥬡ץȤȡۤΤʤ餫 (Ǥ) (νͭܿͤʤ) ꤷե󥬡ץȤȤӤޤֿǤפȤƾ򥤥ݡȤȤϡͭǤ뤳Ȥ򿵽Ť˳ǧɬפޤܺ٤ϡֿǤΥݡȤ˴ؤջפ򻲾ȤƤݡϡǧߤǤޤ \f2\-noprompt\fP ץ󤬻ꤵƤ硢桼ȤäϹԤޤ +\f3Υݡ\fP +.LP +־פ򥤥ݡȤȤϡȥοǤ񡢤 (\-trustcacerts ץ󤬻ꤵƤ) cacerts ȥեǹ줿Ȥäƾޤ .LP -CSR は、ファイル \f2certreq_file\fP に格納されます。ファイルが指定されていない場合は、標準出力に CSR が出力されます。 +Ǥ뤫ɤꤹˡϼΤȤǤ +.RS 3 +.TP 2 +o +\f3ñ X.509 Ǥ\fP\f3keytool\fP ϡ (롼 CA ) ʽ̾˻ޤǤογΩߤޤȡǧڤ˻Ȥγع¤ϡ\f2alias\fP οޤ󤬳Ωʤ硢ϥݡȤޤ󡣤ξ硢\f3keytool\fP ϾϤ桼˸ڤץץȤɽޤ桼οȽǤΤϡԲǽǤϤʤƤ˺Ǥ +.TP 2 +o +\f3 PKCS#7 ξޤϰϢ X.509 Ǥ\fPϡ桼ξ񤬺ǽˡ0 ʾ CA 񤬤μˤ褦¤٤ޤ󤬼ʽ̾Υ롼 CA ǽꡢ \f2\-trustcacerts\fP ץ󤬻ꤵƤ硢\f3keytool\fP ϡξȡȥޤϡcacertsץȥեοǤ뤹٤Ƥξȹ礷褦Ȥޤ󤬼ʽ̾Υ롼 CA ǽäƤ餺 \f2\-trustcacerts\fP ץ󤬻ꤵƤ硢\f3keytool\fP ϡȥޤϡcacertsץȥեοǤ񤫤鼫ʽ̾Υ롼 CA 򸫤ĤƤɲä褦Ȥޤξ񤬸Ĥ餺 \f2\-noprompt\fP ץ󤬻ꤵƤʤϡκǸξξ󤬽Ϥ졢桼ϳǧޤ +.RE +.LP +θ \f2alias\fP βˤǤ˳ǼƤ桼θ˰פ硢Ť󤬱ο֤ޤξ򿷤֤뤳ȤǤΤϡͭ \f2keypass\fPĤޤ곺륨ȥݸ뤿ΥѥɤꤷǤѥɤꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤ +.LP +ΥޥɤϡΥ꡼Ǥ \f2\-import\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-importcert\fP Ѥ뤳Ȥ򤪴ᤷޤ +.TP 3 +\-importkeystore \-srckeystore srckeystore \-destkeystore destkeystore {\-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} +.LP +ȥ饿åȥȥءñΥȥޤϤ٤ƤΥȥ򥤥ݡȤޤ +.LP +\f2srcalias\fP ץ󤬻ꤵ줿硢Υޥɤϡ̾ꤵñΥȥ򥿡åȥȥ˥ݡȤޤ\f2destalias\fP ͳǥå̾ꤵʤä硢\f2srcalias\fP å̾ȤƻѤޤΥȥ꤬ѥɤݸƤ硢\f2srckeypass\fP ȤäƤΥȥ꤬ޤ\f2srckeypass\fP ꤵʤä硢\f3keytool\fP \f2srcstorepass\fP ȤäƤΥȥ褦Ȥޤ\f2srcstorepass\fP ꤵʤäʤä硢桼ϥѥɤϤޤåȥȥ \f2destkeypass\fP ˤäݸޤ\f2destkeypass\fP ꤵʤä硢åȥȥϥȥΥѥɤˤäݸޤ +.LP +\f2srcalias\fP ץ󤬻ꤵʤä硢ȥΤ٤ƤΥȥ꤬åȥȥ˥ݡȤޤƥåȥȥб륽ȥ̾β˳ǼޤΥȥ꤬ѥɤݸƤ硢\f2srcstorepass\fP ȤäƤΥȥ꤬ޤ\f2srcstorepass\fP ꤵʤäʤä硢桼ϥѥɤϤޤȥΤ륨ȥ꥿פåȥȥǥݡȤƤʤ䡢륨ȥ򥿡åȥȥ˳Ǽݤ˥顼ȯ硢桼ϤΥȥ򥹥åפƽ³Ԥ뤫뤤ϽǤ뤫ޤåȥȥϥȥΥѥɤˤäݸޤ +.LP +å̾åȥȥˤǤ¸ߤƤ硢桼ϡΥȥ񤭤뤫뤤ϰۤʤ̾βǿȥ뤫ޤ .LP -CA からの応答をインポートするには、\f2importcert\fP コマンドを使います。 +\f2\-noprompt\fP ꤷ硢桼Ͽå̾Ϥޤ󡣴¸ΥȥϤΥå̾ǼưŪ˾񤭤ޤǸˡݡȤǤʤȥϼưŪ˥åפ졢ٹ𤬽Ϥޤ +.TP 3 +\-printcertreq {\-file file} +.LP +PKCS #10 ξ׵ƤϤޤ׵ϡkeytool \-certreq ޥɤǤޤΥޥɤϡfile ׵ɤ߹ߤޤfile άƤϡɸϤɤ߹ߤޤ +.RE + +.LP +.SS +ǡΥݡ +.LP +.RS 3 +.TP 3 +\-certreq {\-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} +.LP +PKCS#10 Ȥäƾ̾׵ (CSR) ޤ +.LP +CSR ϡȯԶ (CA) 뤳ȤŪȤΤǤCA ϡ׵Ԥ (̾ϥե饤) ǧڤޤϾ֤ޤ ξޤϾϡȥδ¸ξ (ǽ 1 Ĥμʽ̾񤫤鹽) ֤ƻȤޤ +.LP +\f2alias\fP ˴Ϣդ줿ϡPKCS#10 ׵Τ˻ȤޤϥȥǤϥѥɤˤäݸƤΤǡ˥ˤϡŬڤʥѥɤ󶡤ɬפޤޥɹԤ \f2keypass\fP ꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤdname ꤵƤϡ줬 CSR ǼΤȤƻѤޤʳξϡ̾˴Ϣդ줿 X.500 ̾Ѥޤ +.LP +\f2sigalg\fP ˤϡCSR ˽̾դȤ˻Ȥ르ꥺꤷޤ +.LP +CSR ϡե \f2certreq_file\fP ˳Ǽޤե뤬ꤵƤʤϡɸϤ CSR Ϥޤ +.LP +CA α򥤥ݡȤˤϡ\f2importcert\fP ޥɤȤޤ .TP 3 \-exportcert {\-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} .LP -\f2alias\fP に関連付けられた証明書を (キーストアから) 読み込み、ファイル \f2cert_file\fP に格納します。 +\f2alias\fP ˴Ϣդ줿 (ȥ) ɤ߹ߡե \f2cert_file\fP ˳Ǽޤ .LP -ファイルが指定されていない場合は、標準出力に証明書が出力されます。 +ե뤬ꤵƤʤϡɸϤ˾񤬽Ϥޤ .LP -デフォルトでは、バイナリ符号化方式の証明書が出力されます。 ただし、\f2\-rfc\fP オプションを指定した場合は、出力可能符号化方式の証明書が出力されます。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。 +ǥեȤǤϡХʥ沽ξ񤬽Ϥޤ \-rfc ץꤷϡϲǽ沽ξ񤬽Ϥޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ .LP -\f2alias\fP が、信頼できる証明書を参照している場合は、該当する証明書が出力されます。それ以外の場合、\f2alias\fP は、関連付けられた証明書チェーンを持つ鍵エントリを参照します。この場合は、チェーン内の最初の証明書が返されます。この証明書は、\f2alias\fP によって表されるエンティティーの公開鍵を認証する証明書です。 +\f2alias\fP Ǥ򻲾ȤƤϡ񤬽Ϥޤʳξ硢\f2alias\fP ϡϢդ줿ĸȥ򻲾Ȥޤξϡκǽξ֤ޤξϡ\f2alias\fP ˤäɽ륨ƥƥθǧڤǤ .LP -このコマンドは、以前のリリースでは \f2\-export\fP という名前でした。この古い名前は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。ただし、今後はわかりやすいように、新しい名前 \f2\-exportcert\fP を使用することをお勧めします。 +ΥޥɤϡΥ꡼Ǥ \f2\-export\fP Ȥ̾ǤθŤ̾ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤϤ狼䤹褦ˡ̾ \f2\-exportcert\fP Ѥ뤳Ȥ򤪴ᤷޤ .RE .LP -.RE .SS -データの表示 -.LP -.RS 3 - +ǡɽ .LP .RS 3 .TP 3 \-list {\-alias alias} {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v | \-rfc} {\-protected} {\-Jjavaoption} .LP -\f2alias\fP で特定されるキーストアエントリの内容を (標準出力に) 出力します。別名が指定されていない場合は、キーストア全体の内容が表示されます。 +\f2alias\fP ꤵ륭ȥȥƤ (ɸϤ) Ϥޤ̾ꤵƤʤϡȥΤƤɽޤ .LP -このコマンドは、デフォルトでは証明書の MD5 フィンガープリントを表示します。\f2\-v\fP オプションが指定されている場合は、所有者、発行者、シリアル番号、拡張機能などの付加的な情報とともに、人間が読むことのできる形式で証明書が表示されます。\f2\-rfc\fP オプションが指定されている場合は、出力可能符号化方式で証明書の内容が表示されます。 出力可能符号化方式は、インターネット RFC 1421 証明書符号化規格で定義されています。 +ΥޥɤϡǥեȤǤϾ SHA1 ե󥬡ץȤɽޤ \f2\-v\fP ץ󤬻ꤵƤϡͭԡȯԼԡꥢֹ桢ĥǽʤɤղŪʾȤȤˡʹ֤ɤळȤΤǤǾɽޤ \f2\-rfc\fP ץ󤬻ꤵƤϡϲǽ沽ǾƤɽޤ ϲǽ沽ϡ󥿡ͥå RFC 1421 沽ʤƤޤ .LP -\f2\-v\fP オプションと \f2\-rfc\fP オプションとを同時に指定することはできません。 +\f2\-v\fP ץ \f2\-rfc\fP ץƱ˻ꤹ뤳ȤϤǤޤ .TP 3 -\-printcert {\-file cert_file} {\-v} {\-Jjavaoption} +\-printcert {\-file cert_file | \-sslserver host[:port]} {\-jarfile JAR_file {\-rfc} {\-v} {\-Jjavaoption} +.LP +ե \f2cert_file\fP\f2host:port\fP ˤ SSL СޤϽ̾դ JAR ե \f2JAR_file\fP ( \f2\-jarfile\fP ץ) ɤ߹ߡʹ֤ɤळȤΤǤǾƤɽޤݡȤꤵƤʤϡɸ HTTPS ݡ 443 ꤵޤ \f2\-sslserver\fP \f2\-file\fP ץƱ˻ꤹ뤳ȤϤǤޤƱ˻ꤹȡ顼𤵤ޤץ󤬻ꤵƤʤϡɸϤɤ߹ߤޤ .LP -ファイル +\f2\-rfc\fP ꤵƤ硢keytool ϡ󥿡ͥå RFC 1421 ɸƤ褦ˡPEM ⡼ɤǾϤޤ +.LP +եޤɸϤɤ߹硢ξϡ󥿡ͥå RFC 1421 ɸƤ褦ˡХʥ沽ޤϽϲǽ沽ɽǤޤ .LP -インターネット RFC 1421 証明書符号化規格で定義されています。 +SSL Сեظˤϡ \f2\-J\-Dhttps.proxyHost=proxyhost\fP \f2\-J\-Dhttps.proxyPort=proxyport\fP 򥳥ޥɹԤǻꤷơץȥͥ󥰤ѤǤޤܺ٤ϡ +.na +\f2JSSE ե󥹥ɡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html򻲾ȤƤ .LP -注:このコマンドはキーストアとは関係なく動作します。 +\f3\fP: ΥץϥȥȤϴطʤѤǤޤ +.TP 3 +\-printcrl \-file crl_ {\-v} +.LP +ե \f2crl_file\fP μäꥹ (CRL) ɤ߹ߤޤ +.LP +μäꥹ (CRL) ϡǥȯԤȯԶ (CA) ˤäƼä줿ǥΥꥹȤǤCA ϡ\f2crl_file\fP ޤ +.LP +\f3\fP: ΥץϥȥȤϴطʤѤǤޤ .RE .LP -.RE .SS -キーストアの管理 -.LP -.RS 3 - +ȥδ .LP .RS 3 .TP 3 \-storepasswd [\-new new_storepass] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-Jjavaoption} .LP -キーストアの内容の整合性を保護するために使うパスワードを変更します。\f2new_storepass\fP には、新しいパスワードを指定します。 \f2new_storepass\fP は、6 文字以上でなければなりません。 +ȥƤݸ뤿˻Ȥѥɤѹޤ\f2new_storepass\fP ˤϡѥɤꤷޤnew_storepass ϡ6 ʸʾǤʤФʤޤ .TP 3 \-keypasswd {\-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} .LP -\f2alias\fP によって特定される非公開/秘密鍵を保護するためのパスワードを、\f2old_keypass\fP から \f2new_keypass\fP に変更します。 \f2new_keypass\fP は、6 文字以上でなければなりません。 +\f2alias\fP ˤäꤵ/̩ݸ뤿Υѥɤ\f2old_keypass\fP \f2new_keypass\fP ѹޤnew_keypass ϡ6 ʸʾǤʤФʤޤ .LP -コマンド行で \f2\-keypass\fP オプションを指定しておらず、鍵のパスワードがキーストアのパスワードと異なる場合は、鍵のパスワードの入力を求められます。 +ޥɹԤ \f2\-keypass\fP ץꤷƤ餺ΥѥɤȥΥѥɤȰۤʤϡΥѥɤϤޤ .LP -コマンド行で \f2\-new\fP オプションを指定しなかった場合は、新しいパスワードの入力を求められます。 +ޥɹԤ \f2\-new\fP ץꤷʤäϡѥɤϤޤ .TP 3 \-delete [\-alias alias] {\-storetype storetype} {\-keystore keystore} [\-storepass storepass] {\-providerName provider_name} {\-providerClass provider_class_name {\-providerArg provider_arg}} {\-v} {\-protected} {\-Jjavaoption} .LP -\f2alias\fP によって特定されるエントリをキーストアから削除します。コマンド行で別名を指定しなかった場合は、別名の入力を求められます。 +\f2alias\fP ˤäꤵ륨ȥ򥭡ȥޤޥɹԤ̾ꤷʤäϡ̾Ϥޤ .TP 3 \-changealias {\-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} .LP -指定された \f2alias\fP から新しい別名 \f2destalias\fP へ、既存のキーストアエントリを移動します。ターゲット別名が指定されなかった場合、このコマンドはその入力を求めます。元のエントリがエントリパスワードで保護されていた場合、「\-keypass」オプション経由でそのパスワードを指定できます。鍵パスワードが指定されなかった場合、\f2storepass\fP (指定された場合) がまず試みられます。その試みが失敗すると、ユーザーはパスワードの入力を求められます。 +ꤵ줿 \f2alias\fP 鿷̾ \f2destalias\fP ء¸Υȥȥưޤå̾ꤵʤä硢ΥޥɤϤϤޤΥȥ꤬ȥѥɤݸƤ硢\-keypassץץͳǤΥѥɤǤޤѥɤꤵʤä硢\f2storepass\fP (ꤵ줿) ޤߤޤλߤԤȡ桼ϥѥɤϤޤ .RE .LP -.RE .SS -ヘルプの表示 -.LP -.RS 3 - +إפɽ .LP .RS 3 .TP 3 \-help .LP -基本的なコマンドとそのオプションの一覧を表示します。 +ŪʥޥɤȤΥץΰɽޤ +.LP +Υޥɤξܺ٤ˤĤƤϡΤ褦ϤƤ \f2command_name\fP ϥޥɤ̾Ǥ +.nf +\f3 +.fl + keytool \-\fP\f4command_name\fP\f3 \-help +.fl +\fP +.fi .RE .LP -.RE -.SH "例" -.LP - +.SH "" .LP .LP -ここでは、自分の鍵のペアおよび信頼できるエンティティーからの証明書を管理するためのキーストアを作成する場合を例として示します。 +ǤϡʬθΥڥӿǤ륨ƥƥξ뤿ΥȥȤƼޤ .LP .SS -鍵のペアの生成 -.LP -.RS 3 - +Υڥ .LP .LP -まず、キーストアを作成して鍵のペアを生成する必要があります。次に示すのは、実行するコマンドの例です。 +ޤȥƸΥڥɬפޤ˼Τϡ¹Ԥ륳ޥɤǤ .LP .nf \f3 .fl - keytool \-genkeypair \-dname "cn=Mark Jones, ou=JavaSoft, o=Sun, c=US" + keytool \-genkeypair \-dname "cn=Mark Jones, ou=Java, o=Oracle, c=US" .fl \-alias business \-keypass kpi135 \-keystore /working/mykeystore .fl @@ -485,16 +1096,16 @@ .LP .LP -注:このコマンドは 1 行に入力しなければなりません。例で複数行に入力しているのは読みやすくするためです。 +: Υޥɤ 1 ԤϤʤФʤޤʣԤϤƤΤɤߤ䤹뤿Ǥ .LP .LP -この例では、working ディレクトリに mykeystore という名前のキーストアを作成し (キーストアはまだ存在していないと仮定する)、作成したキーストアにパスワード ab987c を割り当てます。生成する公開鍵と非公開鍵のペアに対応するエンティティーの「識別名」は、通称が「Mark Jones」、組織単位が「JavaSoft」、組織が「Sun」、2 文字の国番号が「US」です。公開鍵と非公開鍵のサイズはどちらも 1024 ビットで、鍵の作成にはデフォルトの DSA 鍵生成アルゴリズムを使用します。 +Ǥϡworking ǥ쥯ȥ mykeystore Ȥ̾Υȥ (ȥϤޤ¸ߤƤʤȲꤹ)ȥ˥ѥ ab987c ƤޤΥڥб륨ƥƥΡּ̾פϡ̾ΤMark Jonesסȿñ̤JavaסȿOracleס2 ʸιֹ椬USפǤΥϤɤ 1024 ӥåȤǡκˤϥǥեȤ DSA 르ꥺѤޤ .LP .LP -このコマンドは、公開鍵と識別名情報を含む自己署名証明書 (デフォルトの SHA1withDSA 署名アルゴリズムを使用) を作成します。証明書の有効期間は 180 日です。 証明書は、別名「business」で特定されるキーストアエントリ内の非公開鍵に関連付けられます。非公開鍵にはパスワード「kpi135」が割り当てられます。 +Υޥɤϡȼ̾ޤ༫ʽ̾ (ǥեȤ SHA1withDSA ̾르ꥺ) ޤ֤ͭ 180 Ǥ ϡ̾businessפꤵ륭ȥȥ˴Ϣդޤˤϥѥɡkpi135פƤޤ .LP .LP -オプションのデフォルト値を使う場合は、上に示したコマンドを大幅に短くすることができます。実際には、オプションを 1 つも指定せずにコマンドを実行することも可能です。 デフォルト値を持つオプションでは、オプションを指定しなければデフォルト値が使われ、必要な値については入力を求められます。たとえば、単に次のように入力することもできます。 +ץΥǥեͤȤϡ˼ޥɤû뤳ȤǤޤºݤˤϡץ 1 Ĥꤻ˥ޥɤ¹Ԥ뤳ȤǽǤ ǥեͤĥץǤϡץꤷʤХǥեͤȤ졢ɬפͤˤĤƤϤޤȤСñ˼Τ褦Ϥ뤳ȤǤޤ .LP .nf \f3 @@ -505,19 +1116,17 @@ .fi .LP -この場合は、mykey という別名でキーストアエントリが作成され、新しく生成された鍵のペア、および 90 日間有効な証明書がこのエントリに格納されます。このエントリは、ホームディレクトリ内の .keystore という名前のキーストアに置かれます。このキーストアがまだ存在していない場合は、作成されます。識別名情報、キーストアのパスワード、および非公開鍵のパスワードについては、入力を求められます。 .LP -以下では、オプションを指定しないで \f2\-genkeypair\fP コマンドを実行したものとして例を示します。 情報の入力を求められた場合は、最初に示した \f2\-genkeypair\fP コマンドの値を入力したものとします (たとえば、非公開鍵のパスワードには kpi135 と指定)。 -.LP -.RE -.SS -証明書発行局に対する署名付き証明書の要求 -.LP -.RS 3 - +ξϡmykey Ȥ̾ǥȥȥ꤬졢줿Υڥ 90 ͭʾ񤬤Υȥ˳ǼޤΥȥϡۡǥ쥯ȥ .keystore Ȥ̾Υȥ֤ޤΥȥޤ¸ߤƤʤϡޤ̾󡢥ȥΥѥɡΥѥɤˤĤƤϡϤޤ .LP .LP -現時点で手元にあるのは、1 通の自己署名証明書だけです。証明書に証明書発行局 (CA) の署名が付いていれば、ほかのユーザーから証明書が信頼できる可能性も高くなります。CA の署名を取得するには、まず、証明書署名要求 (CSR) を生成します。 たとえば、次のようにします。 +ʲǤϡץꤷʤ \f2\-genkeypair\fP ޥɤ¹ԤΤȤ򼨤ޤϤ줿ϡǽ˼ \f2\-genkeypair\fP ޥɤͤϤΤȤޤ (ȤСΥѥɤˤ kpi135 Ȼ) +.LP +.SS +ȯԶɤФ̾դ׵ +.LP +.LP +Ǽ긵ˤΤϡ1 ̤μʽ̾Ǥ˾ȯԶ (CA) ν̾դƤСۤΥ桼񤬿Ǥǽ⤯ʤޤCA ν̾ˤϡޤ̾׵ (CSR) ޤ ȤСΤ褦ˤޤ .LP .nf \f3 @@ -528,41 +1137,39 @@ .fi .LP -CSR (デフォルト別名「mykey」によって特定されるエンティティーの CSR) が作成され、MarkJ.csr という名前のファイルに置かれます。このファイルは、VeriSign などの CA に提出します。 CA は要求者を (通常はオフラインで) 認証し、要求者の公開鍵を認証した署名付きの証明書を送り返します。場合によっては、CA が証明書のチェーンを返すこともあります。 証明書のチェーンでは、各証明書がチェーン内のその前の署名者の公開鍵を認証します。 -.RE +.LP +CSR (ǥե̾mykeyפˤäꤵ륨ƥƥ CSR) 졢MarkJ.csr Ȥ̾Υե֤ޤΥեϡVeriSign ʤɤ CA Фޤ CA ׵Ԥ (̾ϥե饤) ǧڤ׵Ԥθǧڤ̾դξ֤ޤˤäƤϡCA Υ֤Ȥ⤢ޤΥǤϡƾ񤬥Τν̾Ԥθǧڤޤ +.LP .SS -CA からの証明書のインポート -.LP -.RS 3 - +CA ξΥݡ .LP .LP -作成した自己署名証明書は、証明書チェーンで置き換える必要があります。 証明書チェーンでは、各証明書が、「ルート」CA を起点とするチェーン内の次の証明書の署名者の公開鍵を認証します。 +ʽ̾ϡ֤ɬפޤǤϡƾ񤬡֥롼ȡCA Ȥμξν̾Ԥθǧڤޤ .LP .LP -CA からの証明応答をインポートするには、キーストアか、(importcert コマンド で説明しているように) \f2cacerts\fP キーストアファイル内に 1 つ以上の「信頼できる証明書」がある必要があります。 +CA ξ򥤥ݡȤˤϡȥ \f2cacerts\fP ȥե (importcert ޥɤ) 1 İʾΡֿǤפɬפޤ .LP .RS 3 .TP 2 o -証明応答が証明書チェーンの場合は、チェーンのトップの証明書 (その CA の公開鍵を認証する「ルート」CA の証明書) だけを必要とする +ξϡΥȥåפξ ( CA θǧڤ֥롼ȡCA ξ) ɬפȤ .TP 2 o -証明応答が単一の証明書の場合は、証明書に署名した CA の発行用の証明書が必要で、その証明書が自己署名されない場合は、さらにその証明書の署名者用の証明書を必要とする。 このようにして自己署名される「ルート」CA の証明書までそれぞれ証明書を必要とする +ñξξϡ˽̾ CA ȯѤξɬפǡξ񤬼ʽ̾ʤϡˤξν̾ѤξɬפȤ롣 Τ褦ˤƼʽ֥̾롼ȡCA ξޤǤ줾ɬפȤ .RE .LP .LP -cacerts キーストアファイルは、5 つの VeriSign ルート CA 証明書を含んだ状態で出荷されているので、VeriSign の証明書を、信頼できる証明書としてキーストア内にインポートする必要はないかもしれません。ただし、ほかの CA に対して署名付き証明書を要求していて、この CA の公開鍵を認証する証明書が、cacerts にまだ追加されていない場合は、該当する CA からの証明書を、「信頼できる証明書」としてインポートする必要があります。 +cacerts ȥեϡĤ VeriSign 롼 CA ޤ֤ǽв٤ƤΤǡVeriSign ξ򡢿ǤȤƥȥ˥ݡȤɬפϤʤ⤷ޤ󡣤ۤ CA Фƽ̾դ׵ᤷƤơ CA θǧڤ񤬡cacerts ˤޤɲäƤʤϡ CA ξ򡢡ֿǤפȤƥݡȤɬפޤ .LP .LP -通常、CA からの証明書は、自己署名証明書、またはほかの CA によって署名された証明書です (後者の場合は、該当するほかの CA の公開鍵を認証する証明書も必要)。たとえば、ABC という企業が CA だとします。 このとき、この CA の公開鍵を認証する自己署名証明書と考えられる ABCCA.cer という名前のファイルを、ABC から入手したとします。 +̾CA ξϡʽ̾񡢤ޤϤۤ CA ˤäƽ̾줿Ǥ (Ԥξϡۤ CA θǧڤɬ)ȤСABC ȤȤ CA ȤޤΤȤ CA θǧڤ뼫ʽ̾ȹͤ ABCCA.cer Ȥ̾ΥեABC ꤷȤޤ .LP .LP -「信頼できる証明書」として証明書をインポートするときは、証明書が有効であることを慎重に確認する必要があります。まず、証明書の内容を表示し (\f3keytool\fP \f2\-printcert\fP コマンドを使用するか、または \f2\-noprompt\fP オプションを指定しないで \f3keytool\fP \f2\-importcert\fP コマンドを使用)、表示された証明書のフィンガープリントが、期待されるフィンガープリントと一致するかどうかを確認します。証明書を送信した人物に連絡し、この人物が提示した (または安全な公開鍵のリポジトリによって提示される) フィンガープリントと、上のコマンドで表示されたフィンガープリントとを比較します。フィンガープリントが一致すれば、送信途中でほかの何者か (攻撃者など) による証明書のすり替えが行われていないことを確認できます。送信途中でこの種の攻撃が行われていた場合、チェックを行わずに証明書をインポートすると、攻撃者によって署名されたすべてのものを信頼することになります。 +ֿǤפȤƾ򥤥ݡȤȤϡͭǤ뤳Ȥ򿵽Ť˳ǧɬפޤޤƤɽ (\f3keytool\fP \f2\-printcert\fP ޥɤѤ뤫ޤ \-noprompt ץꤷʤ \f3keytool\fP \f2\-importcert\fP ޥɤѤ ɽ줿Υե󥬡ץȤԤե󥬡ץȤȰפ뤫ɤǧޤʪϢοʪ󼨤 (ޤϰʸΥݥȥˤä󼨤) ե󥬡ץȤȡΥޥɤɽ줿ե󥬡ץȤȤӤޤե󥬡ץȤפСǤۤβԤ (Ԥʤ) ˤΤؤԤƤʤȤǧǤޤǤμι⤬ԤƤ硢åԤ鷺˾򥤥ݡȤȡԤˤäƽ̾줿٤ƤΤΤꤹ뤳Ȥˤʤޤ .LP .LP -ABCCA.cer を有効な証明書として信頼する場合は、証明書をキーストアに追加できます。 たとえば、次のようにします。 +ABCCA.cer ͭʾȤƿꤹϡ򥭡ȥɲäǤޤ ȤСΤ褦ˤޤ .LP .nf \f3 @@ -573,19 +1180,17 @@ .fi .LP -ABCCA.cer ファイルのデータを含む「信頼できる証明書」のエントリがキーストア内に作成され、該当するエントリに abc という別名が割り当てられます。 -.RE +.LP +ABCCA.cer եΥǡޤֿǤפΥȥ꤬ȥ˺졢륨ȥ abc Ȥ̾Ƥޤ +.LP .SS -CA からの証明応答のインポート -.LP -.RS 3 - +CA ξΥݡ .LP .LP -証明書署名要求の提出先の CA の公開鍵を認証する証明書をインポートしたあとは (または同種の証明書がすでに cacerts ファイル内に存在している場合は)、証明応答をインポートし、自己署名証明書を証明書チェーンで置き換えることができます。この証明書チェーンは、CA の応答がチェーンの場合、証明書署名要求に対する応答として CA から送り返された証明書チェーンです。 また、CA の応答が単一の証明書の場合は、この証明応答と、インポート先のキーストア内または cacerts キーストアファイル内にすでに存在する信頼できる証明書とを使って構築した証明書チェーンです。 +̾׵ CA θǧڤ򥤥ݡȤȤ (ޤƱξ񤬤Ǥ cacerts ե¸ߤƤ)򥤥ݡȤʽ֤̾뤳ȤǤޤξϡCA αξ硢̾׵ФȤ CA ֤줿Ǥ ޤCA αñξξϡξȡݡΥȥޤ cacerts ȥեˤǤ¸ߤ뿮ǤȤȤäƹۤǤ .LP .LP -たとえば、証明書署名要求を VeriSign に送信したとします。送り返された証明書の名前が VSMarkJ.cer だとすると、次のようにして応答をインポートできます。 +ȤС̾׵ VeriSign Ȥޤ֤줿̾ VSMarkJ.cer ȤȡΤ褦ˤƱ򥤥ݡȤǤޤ .LP .nf \f3 @@ -594,18 +1199,16 @@ .fl \fP .fi -.RE .LP .SS -公開鍵を認証する証明書のエクスポート +ǧڤΥݡ +.LP .LP -.RS 3 - +ȤСjarsigner(1) ġȤä Java ARchive (JAR) ե˽̾դȤޤ JAR եϥ饤ȤˤäƻȤޤ饤¦ǤϽ̾ǧڤȹͤƤޤ .LP -たとえば、jarsigner(1) を使って Java ARchive (JAR) ファイルに署名したとします。この JAR ファイルはクライアントによって使われますが、クライアント側では署名を認証したいと考えています。 .LP -クライアントが署名を認証する方法の 1 つに、まず自分の公開鍵の証明書を「信頼できる」エントリとしてクライアントのキーストアにインポートする方法があります。そのためには、証明書をエクスポートして、クライアントに提供します。たとえば、次のようにして、証明書を \f2MJ.cer\fP という名前のファイルにコピーします。 このエントリには「mykey」という別名が使われているとします。 +饤Ȥ̾ǧڤˡ 1 ĤˡޤʬθξֿǤץȥȤƥ饤ȤΥȥ˥ݡȤˡޤΤˤϡ򥨥ݡȤơ饤Ȥ󶡤ޤȤСΤ褦ˤơ \f2MJ.cer\fP Ȥ̾Υե˥ԡޤΥȥˤϡmykeyפȤ̾ȤƤȤޤ .LP .nf \f3 @@ -616,24 +1219,22 @@ .fi .LP -証明書と署名付き JAR ファイルを入手したクライアントは、\f3jarsigner\fP ツールを使って署名を認証できます。 -.RE +.LP +Ƚ̾դ JAR եꤷ饤Ȥϡ\f3jarsigner\fP ġȤäƽ̾ǧڤǤޤ +.LP .SS -キーストアのインポート -.LP -.RS 3 - +ȥΥݡ .LP .LP -コマンド「importkeystore」を使えば、あるキーストアの全体を別のキーストア内にインポートできます。 これは、鍵や証明書といったソースキーストア内のすべてのエントリが、単一のコマンドを使ってターゲットキーストア内にインポートされることを意味します。このコマンドを使えば、異なるタイプのキーストア内に含まれるエントリをインポートすることができます。インポート時には、ターゲットキーストア内の新しいエントリはすべて、元と同じ別名および (秘密鍵や非公開鍵の場合は) 保護用パスワードを持ちます。ソースキーストア内の非公開鍵や秘密鍵の回復時に問題が発生した場合、\f3keytool\fP はユーザーにパスワードの入力を求めます。このコマンドは、別名の重複を検出すると、ユーザーに新しい別名の入力を求めます。 ユーザーは、新しい別名を指定することも、単純に既存の別名の上書きを \f3keytool\fP に許可することもできます。 +ޥɡimportkeystoreפȤС륭ȥΤ̤Υȥ˥ݡȤǤޤϡȤäȥΤ٤ƤΥȥ꤬ñΥޥɤȤäƥåȥȥ˥ݡȤ뤳Ȥ̣ޤΥޥɤȤСۤʤ륿פΥȥ˴ޤޤ륨ȥ򥤥ݡȤ뤳ȤǤޤݡȻˤϡåȥȥοȥϤ٤ơƱ̾ (̩ξ) ݸѥѥɤޤȥ̩β꤬ȯ硢\f3keytool\fP ϥ桼˥ѥɤϤޤΥޥɤϡ̾νʣ򸡽Фȡ桼˿̾Ϥޤ桼ϡ̾ꤹ뤳Ȥ⡢ñ˴¸̾ξ񤭤 \f3keytool\fP ˵Ĥ뤳ȤǤޤ .LP .LP -たとえば、通常の JKS タイプのキーストア key.jks 内のエントリを PKCS #11 タイプのハードウェアベースのキーストア内にインポートするには、次のコマンドを使用できます。 +ȤС̾ JKS פΥȥ key.jks Υȥ PKCS #11 פΥϡɥ١Υȥ˥ݡȤˤϡΥޥɤѤǤޤ .LP .nf \f3 .fl -keytool \-importkeystore + keytool \-importkeystore .fl \-srckeystore key.jks \-destkeystore NONE .fl @@ -646,12 +1247,12 @@ .LP .LP -また、importkeystore コマンドを使えば、あるソースキーストア内の単一のエントリをターゲットキーストアにインポートすることもできます。この場合、上記の例で示したオプションに加え、インポート対象となる別名を指定する必要があります。srcalias オプションを指定する場合には、ターゲット別名もコマンド行から指定できるほか、秘密/非公開鍵の保護用パスワードやターゲット保護用パスワードも指定できます。そうすれば、プロンプトのまったく表示されない \f3keytool\fP コマンドを発行できます。これは、\f3keytool\fP コマンドをスクリプトファイルに含める際に非常に便利です。 次に例を示します。 +ޤimportkeystore ޥɤȤС륽ȥñΥȥ򥿡åȥȥ˥ݡȤ뤳ȤǤޤξ硢嵭Ǽץ˲äݡоݤȤʤ̾ꤹɬפޤsrcalias ץꤹˤϡå̾⥳ޥɹԤǤ̩ۤ/ݸѥѥɤ䥿åݸѥѥɤǤޤСץץȤΤޤäɽʤ \f3keytool\fP ޥɤȯԤǤޤϡ\f3keytool\fP ޥɤ򥹥ץȥե˴ޤݤǤ򼨤ޤ .LP .nf \f3 .fl -keytool \-importkeystore + keytool \-importkeystore .fl \-srckeystore key.jks \-destkeystore NONE .fl @@ -667,55 +1268,74 @@ .fl \fP .fi -.RE - -.LP -.SH "用語と警告" -.LP .LP .SS -キーストア +Ū SSL СѤξ +.LP +.LP +ˡ3 ĤΥƥƥĤޤ롼 CA (root) CA (ca) SSL С (server) ѤθڥȾ keytool ޥɤ򼨤ޤ٤ƤξƱȥ˳Ǽ褦ˤƤǤϡΥ르ꥺȤ RSA ꤹ뤳Ȥ򤪴ᤷޤ .LP -.RS 3 +.nf +\f3 +.fl +keytool \-genkeypair \-keystore root.jks \-alias root \-ext bc:c +.fl +keytool \-genkeypair \-keystore ca.jks \-alias ca \-ext bc:c +.fl +keytool \-genkeypair \-keystore server.jks \-alias server +.fl + +.fl +keytool \-keystore root.jks \-alias root \-exportcert \-rfc > root.pem +.fl + +.fl +keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore ca.jks \-certreq \-alias ca | keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore root.jks \-gencert \-alias root \-ext BC=0 \-rfc > ca.pem +.fl +keytool \-keystore ca.jks \-importcert \-alias ca \-file ca.pem +.fl + +.fl +keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore server.jks \-certreq \-alias server | keytool \-storepass \fP\f4<storepass>\fP\f3 \-keystore ca.jks \-gencert \-alias ca \-ext ku:c=dig,kE \-rfc > server.pem +.fl +cat root.pem ca.pem server.pem | keytool \-keystore server.jks \-importcert \-alias server +.fl +\fP +.fi .LP -キーストアは、暗号化の鍵と証明書を格納するための機能です。 -.RE +.SH "Ѹȷٹ" +.LP +.SS +KeyStore +.LP +.LP +ȥϡŹ沽θȾǼ뤿εǽǤ +.LP .RS 3 .TP 2 o -.TP 2 -o -\f3キーストアのエントリ\fP -.RS 3 - +\f3ȥΥȥ\fP .LP -キーストアには異なるタイプのエントリを含めることができます。\f3keytool\fP でもっとも適用範囲の広いエントリタイプは、次の 2 つです。 +ȥˤϰۤʤ륿פΥȥޤ뤳ȤǤޤ\f3keytool\fP ǤäȤŬϰϤιȥ꥿פϡ 2 ĤǤ .RS 3 .TP 3 1. -\f3鍵のエントリ\fP \- 各エントリは、非常に重要な暗号化の鍵の情報を保持します。この情報は、許可していないアクセスを防ぐために、保護された形で格納されます。一般に、この種のエントリとして格納される鍵は、秘密鍵か、対応する公開鍵の証明書チェーンを伴う非公開鍵です。\f3keytool\fP がこの両方のタイプのエントリを処理できるのに対し、\f3jarsigner\fP ツールは後者のタイプのエントリ、つまり非公開鍵とそれに関連付けられた証明書チェーンのみを処理します。 +\f3Υȥ\fP \- ƥȥϡ˽פʰŹ沽θξݻޤξϡĤƤʤɤˡݸ줿dzǼޤ ̤ˡμΥȥȤƳǼ븰ϡ̩бξȼǤ\f3keytool\fP ξΥפΥȥǤΤФ\f3jarsigner\fP ġϸԤΥפΥȥꡢĤޤȤ˴Ϣդ줿Τߤޤ .TP 3 2. -\f3信頼できる証明書のエントリ\fP \- 各エントリは、第三者からの公開鍵証明書を 1 つ含んでいます。この証明書は、「信頼できる証明書」と呼ばれます。 それは、証明書内の公開鍵が、証明書の「Subject」(所有者) によって特定されるアイデンティティーに由来するものであることを、キーストアの所有者が信頼するからです。証明書の発行者は、証明書に署名を付けることによって、その内容を保証します。 -.RE - -.LP +\f3ǤΥȥ\fP \- ƥȥϡ軰Ԥθ 1 ĴޤǤޤξϡֿǤפȸƤФޤ ϡθΡSubject(ͭ) ˤäꤵ륢ǥƥƥͳ褹ΤǤ뤳Ȥ򡢥ȥνͭԤꤹ뤫ǤȯԼԤϡ˽̾դ뤳ȤˤäơƤݾڤޤ .RE .TP 2 o -\f3キーストアの別名\fP -.RS 3 +\f3ȥ̾\fP .LP -キーストアのすべてのエントリ (鍵および信頼できる証明書) は、一意の「別名」を介してアクセスされます。 -.LP +ȥΤ٤ƤΥȥ (ӿǤ) ϡդΡ̾פ𤷤ƥޤ .LP -別名を指定するのは、\-genseckey コマンドを使って秘密鍵を生成したり、\-genkeypair コマンドを使って鍵ペア (公開鍵と非公開鍵) を生成したり、\-importcert コマンドを使って証明書または証明書チェーンを信頼できる証明書のリストに追加したりするなど、特定のエンティティーをキーストアに追加する場合です。これ以後、\f3keytool\fP コマンドでエンティティーを参照する場合は、このときに指定した別名を使用する必要があります。 -.LP +̾ꤹΤϡ\-genseckey ޥɤȤä̩ꡢ\-genkeypair ޥɤȤäƸڥ () ꡢ\-importcert ޥɤȤäƾޤϾǤΥꥹȤɲäꤹʤɡΥƥƥ򥭡ȥɲäǤʸ塢\f3keytool\fP ޥɤǥƥƥ򻲾ȤϡΤȤ˻ꤷ̾Ѥɬפޤ .LP -たとえば、\f2duke\fP という別名を使って新しい公開鍵と非公開鍵のペアを生成し、公開鍵を自己署名証明書 (「証明書チェーン」を参照) でラップするとします。 この場合は、次のコマンドを実行します。 -.LP +ȤС\f2duke\fP Ȥ̾ȤäƿΥڥ򼫸ʽ̾ (־פ򻲾) ǥåפȤޤ ξϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -723,9 +1343,8 @@ .fl \fP .fi - .LP -ここでは、初期パスワードとして dukekeypasswd を指定しています。 以後、別名 \f2duke\fP に関連付けられた非公開鍵にアクセスするコマンドを実行するときは、このパスワードが必要になります。duke の非公開鍵のパスワードをあとから変更するには、次のコマンドを実行します。 +ǤϡѥɤȤ dukekeypasswd ꤷƤޤ ʸ塢̾ duke Ϣդ줿˥륳ޥɤ¹ԤȤϡΥѥɤɬפˤʤޤ duke Υѥɤ򤢤ȤѹˤϡΥޥɤ¹Ԥޤ .nf \f3 .fl @@ -733,49 +1352,37 @@ .fl \fP .fi - -.LP -パスワードが、dukekeypasswd から newpass に変更されます。 .LP -注 \-テストを目的とする場合、または安全であることがわかっているシステムで実行する場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。必要なパスワードのオプションをコマンド行で指定しなかった場合は、パスワードの入力を求められます。 +ѥɤdukekeypasswd newpass ѹޤ .LP -.RE +: ƥȤŪȤ硢ޤϰǤ뤳Ȥ狼äƤ륷ƥǼ¹ԤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤɬפʥѥɤΥץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ .TP 2 o -\f3キーストアの実装\fP -.RS 3 -\f2java.security\fP パッケージで提供される \f2KeyStore\fP クラスには、キーストア内の情報に対するアクセスと変更を行うための明確に定義されたインタフェースが用意されています。キーストアの固定実装としては、それぞれが特定の「タイプ」のキーストアを対象とする複数の異なる実装が存在可能です。 +\f3ȥμ\fP .LP -現在、\f3keytool\fP と \f3jarsigner\fP の 2 つのコマンド行ツールと、\f3Policy Tool\fP という名前の 1 つの GUI ベースのツールが、キーストアの実装を使用しています。\f2KeyStore\fP は public として使用可能なので、JDK ユーザーは \f2KeyStore\fP を使ったほかのセキュリティーアプリケーションも作成できます。 -.LP +\f2KeyStore\fP 饹 ( \f2java.security\fP ѥå󶡤) ˤϡȥξФ륢ѹԤΤ줿󥿥եѰդƤޤȥθȤƤϡ줾줬Ρ֥ספΥȥоݤȤʣΰۤʤ¸߲ǽǤ .LP -キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアをファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワードによって保護され、キーストア全体の整合性も (非公開鍵とは別の) パスワードによって保護されます。 -.LP +ߡ\f3keytool\fP \f3jarsigner\fP 2 ĤΥޥɹԥġȡ\f3Policy Tool\fP Ȥ̾ 1 Ĥ GUI ١Υġ뤬ȥμѤƤޤ \f2KeyStore\fP public ȤƻѲǽʤΤǡJDK 桼 KeyStore ȤäۤΥƥץꥱǤޤ .LP -キーストアの実装は、プロバイダベースです。具体的には、\f2KeyStore\fP が提供するアプリケーションインタフェースは、Service Provider Interface (SPI) という形で実装されています。つまり、対応する \f2KeystoreSpi\fP 抽象クラス (これも \f2java.security\fP パッケージに含まれている) があり、このクラスが Service Provider Interface のメソッドを定義しています。 これらのメソッドは、「プロバイダ」が実装しなければなりません。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービスのサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合のことです。したがって、キーストアの実装を提供するには、 -.na -\f2「Java(TM) 暗号化アーキテクチャー用プロバイダの実装方法」\fP @ -.fi -http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlで説明しているように、クライアントが「プロバイダ」を実装し、KeystoreSpi サブクラスの実装を提供する必要があります。 -.LP +ȥˤϡOracle 󶡤Ȥ߹ߤΥǥեȤμޤϡJKS Ȥ̾ȼΥȥ () ѤΤǡȥեȤƼƤޤμǤϡġϸ̤Υѥɤˤäݸ졢ȥΤ (Ȥ̤) ѥɤˤäݸޤ .LP -アプリケーションでは、\f2KeyStore\fP クラスが提供する getInstance ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式を定義するとともに、キーストア内の非公開/秘密鍵とキーストア自体の整合性を保護するために使われるアルゴリズムを定義します。異なるタイプのキーストアの実装には、互換性はありません。 -.LP +ȥμϡץХ١ǤŪˤϡ \f2KeyStore\fP 󶡤륢ץꥱ󥤥󥿥եϡService Provider Interface (SPI) ȤǼƤޤĤޤꡢб \f2KeystoreSpi\fP ݥ饹 ( \f2java.security\fP ѥå˴ޤޤƤ) ꡢΥ饹֥ץХפɬפΤ Service Provider Interface Υ᥽åɤƤޤǡ֥ץХפȤϡJava Security API ˤäƥǽʥӥΥ֥åȤФθ󶡤ѥåޤϥѥåνΤȤǤäơȥμ󶡤ˤϡ +.na +\f2Java(TM) Ź沽ƥ㡼ѥץХμˡ\fP @ +.fi +http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.htmlƤ褦ˡ饤Ȥ֥ץХפKeystoreSpi ֥饹μ󶡤ɬפޤ .LP -\f3keytool\fP は、任意のファイルベースのキーストア実装で動作します。keytool は、コマンド行から渡されたキーストアの場所をファイル名として扱い、これを FileInputStream に変換して、FileInputStream からキーストアの情報をロードします。一方、\f3jarsigner\fP ツールと \f3policytool\fP ツールは、URL で指定可能な任意の場所からキーストアを読み込むことができます。 -.LP -.LP -\f3keytool\fP と \f3jarsigner\fP の場合、\f2\-storetype\fP オプションを使ってコマンド行でキーストアのタイプを指定できます。\f3Policy Tool\fPの場合は、「キーストア」メニューによってキーストアのタイプを指定できます。 -.LP +ץꥱǤϡKeyStore 饹󶡤 getInstance եȥ᥽åɤȤȤǡޤޤʥץХۤʤ֥ספΥȥμǤޤ ȥΥפϡȥγǼȥǡȤȤˡȥ/̩ȥȥΤݸ뤿˻Ȥ륢르ꥺޤۤʤ륿פΥȥμˤϡߴϤޤ .LP -キーストアのタイプを明示的に指定しない場合、keytool、jarsigner、および policytool の各ツールは、セキュリティープロパティーファイル内で指定された \f2keystore.type\fP プロパティーの値に基づいてキーストアの実装を選択します。セキュリティープロパティーファイルは、\f2java.security\fP という名前でセキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位ディレクトリ) です。 +\f3keytool\fP ϡǤդΥե١Υȥưޤkeytool ϡޥɹԤϤ줿ȥξե̾Ȥư FileInputStream ѴơFileInputStream 饭ȥξɤޤ\f3jarsigner\fP ġ \f3policytool\fP ġϡURL ǻǽǤդξ꤫饭ȥɤ߹ळȤǤޤ .LP +\f3keytool\fP \f3jarsigner\fP ξ硢\f2\-storetype\fP ץȤäƥޥɹԤǥȥΥפǤޤ\f3Policy Tool\fPξϡ֥ȥץ˥塼ˤäƥȥΥפǤޤ .LP -各ツールは、\f2keystore.type\fP の値を取得し、この値で指定されたタイプのキーストアを実装しているプロバイダが見つかるまで、現在インストールされているすべてのプロバイダを調べます。目的のプロバイダが見つかると、そのプロバイダからのキーストアの実装を使います。 -.LP +ȥΥפŪ˻ꤷʤ硢keytooljarsigner policytool γƥġϡƥץѥƥեǻꤵ줿 \f2keystore.type\fP ץѥƥͤ˴Ťƥȥμ򤷤ޤƥץѥƥեϡ\f2java.security\fP Ȥ̾ǥƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ֤Ƥޤ\f2java.home\fP ϡ¹ԴĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment κǾ̥ǥ쥯ȥ) Ǥ .LP -\f2KeyStore\fP クラスでは \f2getDefaultType\fP という名前の static メソッドが定義されており、アプリケーションとアプレットはこのメソッドを使うことで \f2keystore.type\fP プロパティーの値を取得できます。次のコードは、デフォルトのキーストアタイプ (\f2keystore.type\fP プロパティーで指定されたタイプ) のインスタンスを生成します。 +ƥġϡ \f2keystore.type\fP ͤͤǻꤵ줿פΥȥƤץХĤޤǡߥ󥹥ȡ뤵Ƥ뤹٤ƤΥץХĴ٤ޤŪΥץХĤȡΥץХΥȥμȤޤ .LP +\f2KeyStore\fP 饹Ǥ \f2getDefaultType\fP Ȥ̾ static ᥽åɤƤꡢץꥱȥץåȤϤΥ᥽åɤȤȤ \f2keystore.type\fP ץѥƥͤǤޤΥɤϡǥեȤΥȥ ( \f2keystore.type\fP ץѥƥǻꤵ줿) Υ󥹥󥹤ޤ .nf \f3 .fl @@ -783,11 +1390,8 @@ .fl \fP .fi - .LP -.LP -デフォルトのキーストアタイプは JKS (Sun が提供する独自のタイプのキーストアの実装) です。これは、セキュリティープロパティーファイル内の次の行によって指定されています。 -.LP +ǥեȤΥȥפ JKS (Oracle 󶡤ȼΥפΥȥμ) ǤϡƥץѥƥեμιԤˤäƻꤵƤޤ .nf \f3 .fl @@ -795,14 +1399,10 @@ .fl \fP .fi - -.LP .LP -各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して別のキーストアのタイプを指定します。 -.LP +ƥġǥǥեȰʳΥȥμѤˤϡιԤѹ̤ΥȥΥפꤷޤ .LP -たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供しているプロバイダパッケージを使用するには、上の行を次のように変更します。 -.LP +ȤСpkcs12 ȸƤФ륿פΥȥμ󶡤ƤץХѥåѤˤϡιԤ򼡤Τ褦ѹޤ .nf \f3 .fl @@ -810,561 +1410,163 @@ .fl \fP .fi +.LP +: ȥΥפλǤϡʸȾʸ϶̤ޤ󡣤ȤСJKS jks ƱΤȤưޤ +.RE .LP -注:キーストアのタイプの指定では、大文字と小文字は区別されません。たとえば、JKS と jks は同じものとして扱われます。 -.RE -.RE .SS -証明書 + .LP -.RS 3 - -.LP -\f3証明書\fP (\f3公開鍵証明書\fPとも呼ぶ) とは、あるエンティティー (「発行者」) からのデジタル署名付きの文書のことです。 証明書には、ほかのあるエンティティー (「署名者」) の公開鍵 (およびその他の情報) が特別な値を持っていることが書かれています。 -.RE +\f3\fP (\f3\fPȤƤ) Ȥϡ륨ƥƥ (ȯԼԡ) Υǥ̾դʸΤȤǤ ˤϡۤΤ륨ƥƥ (ֽ̾ԡ) θ (Ӥ¾ξ) ̤ͤäƤ뤳Ȥ񤫤Ƥޤ .RS 3 .TP 2 o -.TP 2 -o -\f3証明書の用語\fP -.RS 3 - -.LP +\f3Ѹ\fP .RS 3 .TP 3 -公開鍵 -公開鍵は、特定のエンティティーに関連付けられた数です。 公開鍵は、該当するエンティティーとの間に信頼できる関係を持つ必要があるすべての人に対して公開することを意図したものです。公開鍵は、署名を検証するのに使われます。 + +.LP +ϡΥƥƥ˴Ϣդ줿Ǥϡ륨ƥƥȤδ֤˿Ǥطɬפ뤹٤ƤοͤФƸ뤳ȤտޤΤǤϡ̾򸡾ڤΤ˻Ȥޤ .TP 3 -デジタル署名 -データが「\f2デジタル署名\fP」されると、そのデータは、エンティティーの「アイデンティティー」と、そのエンティティーがデータの内容について知っていることを証明する署名とともに格納されます。エンティティーの非公開鍵を使ってデータに署名を付けると、データの偽造は不可能になります。 +ǥ̾ +.LP +ǡ֥ǥ̾פȡΥǡϡƥƥΡ֥ǥƥƥפȡΥƥƥǡƤˤĤΤäƤ뤳Ȥ̾ȤȤ˳ǼޤƥƥȤäƥǡ˽̾դȡǡε¤Բǽˤʤޤ .TP 3 -アイデンティティー -エンティティーを特定するための既知の方法です。システムによっては、公開鍵をアイデンティティーにするものがあります。 公開鍵のほかにも、Unix UID や電子メールアドレス、X.509 識別名など、さまざまなものをアイデンティティーとすることができます。 +ǥƥƥ +.LP +ƥƥꤹ뤿δΤˡǤƥˤäƤϡ򥢥ǥƥƥˤΤޤΤۤˤ⡢Unix UID Żҥ᡼륢ɥ쥹X.509 ̾ʤɡޤޤʤΤ򥢥ǥƥƥȤ뤳ȤǤޤ .TP 3 -署名 -署名は、なんらかのデータを基にエンティティー (署名者。 証明書に関しては発行者とも呼ばれる) の非公開鍵を使って計算されます。 -.TP 3 -非公開鍵 -非公開鍵は特定のエンティティーだけが知っている数のことで、この数のことを、そのエンティティーの非公開鍵といいます。非公開鍵は、ほかに知られないように秘密にしておくことが前提になっています。 非公開鍵と公開鍵は、すべての公開鍵暗号化システムで対になって存在しています。DSA などの典型的な公開鍵暗号化システムの場合、1 つの非公開鍵は正確に 1 つの公開鍵に対応します。非公開鍵は、署名を計算するのに使われます。 +̾ +.LP +̾ϡʤ餫Υǡ˥ƥƥ (̾ԡ ˴ؤƤȯԼԤȤƤФ) ȤäƷ׻ޤ .TP 3 -エンティティー -エンテンティーは、人、組織、プログラム、コンピュータ、企業、銀行など、一定の度合いで信頼の対象となるさまざまなものを指します。 + +.LP +ΥƥƥΤäƤΤȤǡοΤȤ򡢤ΥƥƥȤޤϡۤΤʤ褦̩ˤƤȤˤʤäƤޤȸϡ٤ƤθŹ沽ƥФˤʤä¸ߤƤޤDSA ʤɤŵŪʸŹ沽ƥξ硢1 ĤΤ 1 Ĥθбޤϡ̾׻Τ˻Ȥޤ +.TP 3 +ƥƥ +.LP +ƥƥϡ͡ȿץࡢԥ塼ȡԤʤɡٹ礤ǿоݤȤʤ뤵ޤޤʤΤؤޤ .RE - .LP -.LP -公開鍵暗号化では、その性質上、ユーザーの公開鍵にアクセスする必要があります。大規模なネットワーク環境では、互いに通信しているエンティティー間で以前の関係が引き続き確立されていると仮定したり、使われているすべての公開鍵を収めた信頼できるリポジトリが存在すると仮定したりすることは不可能です。このような公開鍵の配布に関する問題を解決するために証明書が考案されました。現在では、「証明書発行局 (CA)」が信頼できる第三者として機能します。CA は、ほかのエンティティーの証明書に署名する (発行する) 行為を、信頼して任されているエンティティー (企業など) です。CA は法律上の契約に拘束されるので、有効かつ信頼できる証明書だけを作成するものとして扱われます。 +Ź沽Ǥϡ塢桼θ˥ɬפޤ絬ϤʥͥåȥĶǤϡߤ̿Ƥ륨ƥƥ֤ǰδط³ΩƤȲꤷꡢȤƤ뤹٤Ƥθ᤿Ǥݥȥ꤬¸ߤȲꤷꤹ뤳ȤԲǽǤΤ褦ʸۤ˴ؤ褹뤿˾񤬹ͰƤޤߤǤϡ־ȯԶ (CA)פǤ軰ԤȤƵǽޤCA ϡۤΥƥƥξ˽̾ (ȯԤ) ԰٤򡢿ꤷǤƤ륨ƥƥ (Ȥʤ) ǤCA ˡΧη˹«ΤǡͭĿǤΤȤưޤ .na \f2VeriSign\fP @ .fi -http://www.verisign.com/、 +http://www.verisign.com/ .na \f2Thawte\fP @ .fi -http://www.thawte.com/、 +http://www.thawte.com/ .na \f2Entrust\fP @ .fi -http://www.entrust.com/ をはじめ、多くの CA が存在します。Netscape や Microsoft の認証サーバー、Entrust の CA 製品などを所属組織内で利用すれば、独自の証明書発行局を運営することも可能です。 -.LP -.LP -\f3keytool\fP を使うと、証明書の表示、インポート、およびエクスポートを行うことができます。また、自己署名証明書を生成することもできます。 +http://www.entrust.com/ Ϥᡢ¿ CA ¸ߤޤMicrosoft ǧڥСEntrust CA ʤʤɤ°ȿѤСȼξȯԶɤ򱿱Ĥ뤳ȤǽǤ .LP +\f3keytool\fP ȤȡɽݡȡӥݡȤԤȤǤޤޤʽ̾뤳ȤǤޤ .LP -現在、\f3keytool\fP は X.509 証明書を対象にしています。 -.LP -.RE +ߡ\f3keytool\fP X.509 оݤˤƤޤ .TP 2 o -\f3X.509 証明書\fP -.RS 3 -X.509 規格では、証明書に含める情報が定義されており、この情報を証明書に書き込む方法 (データ形式) についても記述されています。証明書のすべてのデータは、ASN.1/DER と呼ばれる 2 つの関連規格を使って符号化されます。\f2Abstract Syntax Notation 1\fP はデータについて記述しています。\f2Definite Encoding Rules\fP は、データの保存および転送の方法について記述しています。 +\f3X.509 \fP .LP -すべての X.509 証明書は、署名のほかに次のデータを含んでいます。 +X.509 ʤǤϡ˴ޤƤꡢξ˽񤭹ˡ (ǡ) ˤĤƤ⵭ҤƤޤΤ٤ƤΥǡϡASN.1/DER ȸƤФ 2 ĤδϢʤȤä沽ޤ\f2Abstract Syntax Notation 1\fP ϥǡˤĤƵҤƤޤ\f2Definite Encoding Rules\fP ϡǡ¸žˡˤĤƵҤƤޤ .LP +٤Ƥ X.509 ϡ̾Τۤ˼ΥǡޤǤޤ .RS 3 .TP 3 -バージョン -証明書に適用される X.509 規格のバージョンを特定します。 証明書に指定できる情報は、バージョンによって異なります。これまでに、3 つのバージョンが定義されています。\f3keytool\fP では、v1、v2、および v3 の証明書のインポートとエクスポートが可能です。keytool が生成するのは、v3 の証明書です。 +С .LP -「X.509 Version 1」は、1988 年から利用されて広く普及しており、もっとも一般的です。 +ŬѤ X.509 ʤΥСꤷޤ˻ǤϡСˤäưۤʤޤޤǤˡ3 ĤΥСƤޤ\f3keytool\fP Ǥϡv1v2 v3 ξΥݡȤȥݡȤǽǤkeytool Τϡv3 ξǤ +.LP +X.509 Version 1פϡ1988 ǯѤƹڤƤꡢäȤŪǤ .LP -「X.509 Version 2」では、Subject や発行者の名前をあとで再利用できるようにするために、Subject と発行者の一意識別子の概念が導入されました。ほとんどの証明書プロファイル文書では、名前を再使用しないことと、証明書で一意な識別子を使わないことが、強く推奨されています。Version 2 の証明書は、広くは使われていません。 +X.509 Version 2פǤϡSubject ȯԼԤ̾򤢤ȤǺѤǤ褦ˤ뤿ˡSubject ȯԼԤΰռ̻ҤγǰƳޤۤȤɤξץեʸǤϡ̾ƻѤʤȤȡǰդʼ̻ҤȤʤȤ侩ƤޤVersion 2 ξϡϻȤƤޤ .LP -「X.509 Version 3」はもっとも新しい (1996 年) 規格で、エクステンションの概念をサポートしています。エクステンションは誰でも定義することができ、証明書に含めることができます。現在使われている一般的なエクステンションとしては、KeyUsage (「署名専用」など、鍵の使用を特定の目的に制限する)、AlternativeNames (DNS 名、電子メールアドレス、IP アドレスなど、ほかのアイデンティティーを公開鍵に関連付けることができる) などがあります。エクステンションには、critical というマークを付けて、そのエクステンションのチェックと使用を義務づけることができます。たとえば、critical とマークされ、KeyCertSign が設定された KeyUsage エクステンションが証明書に含まれている場合、この証明書を SSL 通信中に提示すると、証明書が拒否されます。 これは、証明書のエクステンションによって、関連する非公開鍵が証明書の署名専用として指定されており、SSL では使用できないためです。 +X.509 Version 3פϤäȤ⿷ (1996 ǯ) ʤǡƥ󥷥γǰ򥵥ݡȤƤޤƥ󥷥ïǤ뤳ȤǤ˴ޤ뤳ȤǤޤ߻ȤƤŪʥƥ󥷥ȤƤϡKeyUsage (ֽ̾ѡפʤɡλѤŪ¤)AlternativeNames (DNS ̾Żҥ᡼륢ɥ쥹IP ɥ쥹ʤɡۤΥǥƥƥ˴Ϣդ뤳ȤǤ) ʤɤޤƥ󥷥ˤϡcritical ȤޡդơΥƥ󥷥ΥåȻѤ̳Ť뤳ȤǤޤȤСcritical ȥޡ졢KeyCertSign ꤵ줿 KeyUsage ƥ󥷥󤬾˴ޤޤƤ硢ξ SSL ̿󼨤ȡ񤬵ݤޤϡΥƥ󥷥ˤäơϢν̾ѤȤƻꤵƤꡢSSL ǤϻѤǤʤǤ .TP 3 -シリアル番号 -証明書を作成したエンティティーは、そのエンティティーが発行するほかの証明書と区別するために、証明書にシリアル番号を割り当てます。この情報は、さまざまな方法で使われます。 たとえば、証明書が取り消されると、シリアル番号が証明書の取り消しリスト (CRL) に格納されます。 +ꥢֹ +.LP +ƥƥϡΥƥƥȯԤۤξȶ̤뤿ˡ˥ꥢֹƤޤξϡޤޤˡǻȤޤȤС񤬼äȡꥢֹ椬μäꥹ (CRL) ˳Ǽޤ .TP 3 -署名アルゴリズム識別子 -証明書に署名を付けるときに CA が使ったアルゴリズムを特定します。 +̾르ꥺ༱̻ +.LP +˽̾դȤ CA Ȥä르ꥺꤷޤ .TP 3 -発行者名 -証明書に署名を付けたエンティティーの X.500 識別名です。エンティティーは、通常は CA です。この証明書を使うことは、証明書に署名を付けたエンティティーを信頼することを意味します。「ルート」つまり「トップレベル」の CA の証明書など、場合によっては発行者が自身の証明書に署名を付けることがある点に注意してください。 +ȯԼ̾ +.LP +˽̾դƥƥ X.500 ̾Ǥƥƥϡ̾ CA ǤξȤȤϡ˽̾դƥƥꤹ뤳Ȥ̣ޤ֥롼ȡפĤޤ֥ȥåץ٥פ CA ξʤɡˤäƤȯԼԤȤξ˽̾դ뤳ȤդƤ .TP 3 -有効期間 -各証明書は、限られた期間だけ有効になります。この期間は開始の日時と終了の日時によって指定され、数秒の短い期間から 100 年という長期にわたることもあります。選択される有効期間は、証明書への署名に使われる非公開鍵の強度や証明書に支払う金額など、さまざまな要因で異なります。有効期間は、使用する非公開鍵が損なわれない場合に、エンティティーが公開鍵を信頼できると期待される期間です。 +ͭ +.LP +ƾϡ¤줿֤ͭˤʤޤδ֤ϳϤȽλˤäƻꤵ졢äû֤ 100 ǯȤĹˤ錄뤳Ȥ⤢ޤ򤵤֤ͭϡؤν̾˻Ȥζ٤˻ʧۤʤɡޤޤװǰۤʤޤ֤ͭϡѤ»ʤʤˡƥƥǤȴԤ֤Ǥ .TP 3 -Subject 名 -証明書で公開鍵が識別されているエンティティーの名前です。この名前は X.500 標準を使うので、インターネット全体で一意なものと想定されます。これは、エンティティーの X.500 識別名 (DN) です。 次に例を示します。 +Subject ̾ +.LP +Ǹ̤Ƥ륨ƥƥ̾Ǥ̾ X.500 ɸȤΤǡ󥿡ͥåΤǰդʤΤꤵޤϡƥƥ X.500 ̾ (DN) Ǥ򼨤ޤ .nf \f3 .fl - CN=Java Duke, OU=Java Software Division, O=Sun Microsystems Inc, C=US + CN=Java Duke, OU=Java Software Division, O=Oracle Corporation, C=US .fl \fP .fi -これらはそれぞれ主体の通称、組織単位、組織、国を表します。 -.TP 3 -Subject の公開鍵情報 -名前を付けられたエンティティーの公開鍵とアルゴリズム識別子です。 アルゴリズム識別子では、公開鍵に対して使われている公開鍵暗号化システムおよび関連する鍵パラメータが指定されています。 -.RE - -.LP -.RE -.TP 2 -o -\f3証明書チェーン\fP -.RS 3 -.LP -\f3keytool\fP では、非公開鍵および関連する証明書「チェーン」を含むキーストアの「鍵」エントリを作成し、管理することができます。このようなエントリでは、非公開鍵に対応する公開鍵は、チェーンの最初の証明書に含まれています。 -.LP .LP -鍵を初めて作成すると (\-genkeypair コマンドを参照)、「自己署名証明書」という 1 つの要素だけを含むチェーンが開始されます。自己署名証明書は、発行者 (署名者) が主体 (証明書で認証されている公開鍵の持ち主) と同じである証明書のことです。\f2\-genkeypair\fP コマンドを呼び出して新しい公開鍵と非公開鍵のペアを作成すると、公開鍵は常に自己署名証明書でラップされます。 -.LP -.LP -このあと、証明書署名要求 (CSR) が生成されて (\-certreq コマンドを参照)、CSR が証明書発行局 (CA) に送信されると、CA からの応答がインポートされ (\-importcert コマンドを参照)、元の自己署名証明書は証明書チェーンによって置き換えられます。チェーンの最後にあるのは、Subject の公開鍵を認証した CA が発行した証明書 (応答) です。チェーン内のその前の証明書は、「CA」の公開鍵を認証する証明書です。 -.LP -.LP -CA の公開鍵を認証する証明書は、多くの場合、自己署名証明書 (つまり CA が自身の公開鍵を認証した証明書) であり、これはチェーンの最初の証明書になります。場合によっては、CA が証明書のチェーンを返すこともあります。この場合、チェーン内の最後の証明書 (CA によって署名され、鍵エントリの公開鍵を認証する証明書) に変わりはありませんが、チェーン内のその前の証明書は、CSR の送信先の CA とは「別の」CA によって署名され、CSR の送信先の CA の公開鍵を認証する証明書になります。さらに、チェーン内のその前の証明書は、次の CA の鍵を認証する証明書になります。 以下同様に、自己署名された「ルート」証明書に達するまでチェーンが続きます。したがって、チェーン内の (最初の証明書以後の) 各証明書では、チェーン内の次の証明書の署名者の公開鍵が認証されていることになります。 -.LP +Ϥ줾Τ̾Ρȿñ̡ȿɽޤ +.TP 3 +Subject θ .LP -多くの CA は、チェーンをサポートせずに発行済みの証明書だけを返します。 特に、中間の CA が存在しないフラットな階層構造の場合は、その傾向が顕著です。このような場合は、キーストアにすでに格納されている信頼できる証明書情報から、証明書チェーンを確立する必要があります。 -.LP -.LP -別の応答形式 (PKCS#7 で定義されている形式) でも、発行済み証明書に加え、証明書チェーンのサポートが含まれています。\f3keytool\fP では、どちらの応答形式も扱うことができます。 -.LP -.LP -トップレベル (ルート) CA の証明書は、自己署名証明書です。ただし、ルートの公開鍵に対する信頼は、ルートの証明書自体から導き出されるものではなく (たとえば、VeriSign ルート CA のような有名な識別名を使った自己署名証明書を作成すること自体は誰でも可能)、新聞などのほかの情報源に由来するものです。ルート CA の公開鍵は広く知られています。ルート CA の公開鍵を証明書に格納する理由は、証明書という形式にすることで多くのツールから利用できるようになるからにすぎません。 つまり、証明書は、ルート CA の公開鍵を運ぶ「媒体」として利用されるだけです。ルート CA の証明書をキーストアに追加するときは、その前に証明書の内容を表示し (\f2\-printcert\fP オプションを使用)、表示されたフィンガープリントと、新聞やルート CA の Web ページなどから入手した既知のフィンガープリントとを比較する必要があります。 -.LP +̾դ줿ƥƥθȥ르ꥺ༱̻ҤǤ르ꥺ༱̻ҤǤϡФƻȤƤŹ沽ƥपӴϢ븰ѥ᡼ꤵƤޤ .RE .TP 2 o -\f3cacerts 証明書ファイル\fP -.RS 3 +\f3\fP +.LP +\f3keytool\fP ǤϡӴϢ֥פޤ७ȥΡָץȥ뤳ȤǤޤΤ褦ʥȥǤϡбϡκǽξ˴ޤޤƤޤ .LP -\f3cacerts\fP 証明書ファイルは、セキュリティープロパティーディレクトリ \f2java.home\fP/lib/security に置かれています。 \f2java.home\fP は、実行環境のディレクトリ (SDK の \f2jre\fP ディレクトリまたは Java 2 Runtime Environment の最上位ディレクトリ) です。 +ƺ (\-genkeypair ޥɤ򻲾)ּʽ̾פȤ 1 ĤǤޤ󤬳Ϥޤʽ̾ϡȯԼ (̾) (ǧڤƤλ) ƱǤΤȤǤ \f2\-genkeypair\fP ޥɤƤӽФƿΥڥȡϾ˼ʽ̾ǥåפޤ .LP -.LP -cacerts ファイルは、CA の証明書を含む、システム全体のキーストアです。システム管理者は、キーストアタイプに jks を指定することで、\f3keytool\fP を使ってこのファイルの構成と管理を行うことができます。cacerts キーストアファイルは、次の別名および X.500 所有者識別名を持ついくつかのルート CA 証明書を含んだ状態で出荷されています。 +Τȡ̾׵ (CSR) (\-certreq ޥɤ򻲾)CSR ȯԶ (CA) ȡCA αݡȤ (\-importcert ޥɤ򻲾)μʽ̾Ͼˤä֤ޤκǸˤΤϡSubject θǧڤ CA ȯԤ () ǤΤξϡCAפθǧڤǤ .LP -.RS 3 -.TP 2 -* -\f3Alias\fP:thawtepersonalfreemailca -.br -\f3Owner DN\fP:EmailAddress=personal\-freemail@thawte.com, -.br -CN=Thawte Personal Freemail CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepersonalbasicca -.br -\f3Owner DN\fP:EmailAddress=personal\-basic@thawte.com, -.br -CN=Thawte Personal Basic CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepersonalpremiumca -.br -\f3Owner DN\fP:EmailAddress=personal\-premium@thawte.com, -.br -CN=Thawte Personal Premium CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawteserverca -.br -\f3Owner DN\fP:EmailAddress=server\-certs@thawte.com, -.br -CN=Thawte Server CA, OU=Certification Services Division, -.br -O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:thawtepremiumserverca -.br -\f3Owner DN\fP:EmailAddress=premium\-server@thawte.com, -.br -CN=Thawte Premium Server CA, -.br -OU=Certification Services Division, -.br -O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA -.TP 2 -* -\f3Alias\fP:verisignclass1ca -.br -\f3Owner DN\fP:OU=Class 1 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2ca -.br -\f3Owner DN\fP:OU=Class 2 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3ca -.br -\f3Owner DN\fP:OU=Class 3 Public Primary Certification Authority, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignserverca -.br -\f3Owner DN\fP:OU=Secure Server Certification Authority, -.br -O="RSA Data Security, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass1g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 1 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass1g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 1 Public Primary Certification Authority \- G3, OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 2 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass2g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 2 Public Primary Certification Authority \- G3, -.br -OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3g2ca -.br -\f3Owner DN\fP:OU=VeriSign Trust Network, -.br -OU="(c) 1998 VeriSign, Inc. \- For authorized use only", -.br -OU=Class 3 Public Primary Certification Authority \- G2, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:verisignclass3g3ca -.br -\f3Owner DN\fP:CN=VeriSign Class 3 Public Primary Certification Authority \- G3, -.br -OU="(c) 1999 VeriSign, Inc. \- For authorized use only", -.br -OU=VeriSign Trust Network, -.br -O="VeriSign, Inc.", C=US -.TP 2 -* -\f3Alias\fP:baltimorecodesigningca -.br -\f3Owner DN\fP:CN=Baltimore CyberTrust Code Signing Root, -.br -OU=CyberTrust, O=Baltimore, C=IE -.TP 2 -* -\f3Alias\fP:gtecybertrustglobalca -.br -\f3Owner DN\fP:CN=GTE CyberTrust Global Root, -.br -OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US -.TP 2 -* -\f3Alias\fP:baltimorecybertrustca -.br -\f3Owner DN\fP:CN=Baltimore CyberTrust Root, -.br -OU=CyberTrust, O=Baltimore, C=IE -.TP 2 -* -\f3Alias\fP:gtecybertrust5ca -.br -\f3Owner DN\fP:CN=GTE CyberTrust Root 5, -.br -OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US -.TP 2 -* -\f3Alias\fP:entrustclientca -.br -\f3Owner DN\fP:CN=Entrust.net Client Certification Authority, -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/Client_CA_Info/CPS incorp. by ref. limits liab., -.br -O=Entrust.net, C=US -.TP 2 -* -\f3Alias\fP:entrustglobalclientca -.br -\f3Owner DN\fP:CN=Entrust.net Client Certification Authority, -.br -OU=(c) 2000 Entrust.net Limited, -.br -OU=www.entrust.net/GCCA_CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:entrust2048ca -.br -\f3Owner DN\fP:CN=Entrust.net Certification Authority (2048), -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:entrustsslca -.br -\f3Owner DN\fP:CN=Entrust.net Secure Server Certification Authority, -.br -OU=(c) 1999 Entrust.net Limited, -.br -OU=www.entrust.net/CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net, C=US -.TP 2 -* -\f3Alias\fP:entrustgsslca -.br -\f3Owner DN\fP:CN=Entrust.net Secure Server Certification Authority, -.br -OU=(c) 2000 Entrust.net Limited, -.br -OU=www.entrust.net/SSL_CPS incorp. by ref. (limits liab.), -.br -O=Entrust.net -.TP 2 -* -\f3Alias\fP:godaddyclass2ca -.br -\f3Owner DN\fP:OU=Go Daddy Class 2 Certification Authority, -.br -O="The Go Daddy Group, Inc.", C=US -.TP 2 -* -\f3Alias\fP:starfieldclass2ca -.br -\f3Owner DN\fP:OU=Starfield Class 2 Certification Authority, -.br -O="Starfield Technologies, Inc.", C=US -.TP 2 -* -\f3Alias\fP:valicertclass2ca -.br -\f3Owner DN\fP:EMAILADDRESS=info@valicert.com, -.br -CN=http://www.valicert.com/, -.br -OU=ValiCert Class 2 Policy Validation Authority, -.br -O="ValiCert, Inc.", L=ValiCert Validation Network -.TP 2 -* -\f3Alias\fP:geotrustglobalca -.br -\f3Owner DN\fP:CN=GeoTrust Global CA, -.br -O=GeoTrust Inc., C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureca -.br -\f3Owner DN\fP:OU=Equifax Secure Certificate Authority, -.br -O=Equifax, C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureebusinessca1 -.br -\f3Owner DN\fP:CN=Equifax Secure eBusiness CA\-1, -.br -O=Equifax Secure Inc., C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureebusinessca2 -.br -\f3Owner DN\fP:OU=Equifax Secure eBusiness CA\-2, -.br -O=Equifax Secure, C=US -.TP 2 -* -\f3Alias\fP:equifaxsecureglobalebusinessca1 -.br -\f3Owner DN\fP:CN=Equifax Secure Global eBusiness CA\-1, -.br -O=Equifax Secure Inc., C=US -.TP 2 -* -\f3Alias\fP:soneraclass1ca -.br -\f3Owner DN\fP:CN=Sonera Class1 CA, O=Sonera, C=FI -.TP 2 -* -\f3Alias\fP:soneraclass2ca -.br -\f3Owner DN\fP:CN=Sonera Class2 CA, O=Sonera, C=FI -.TP 2 -* -\f3Alias\fP:comodoaaaca -.br -\f3Owner DN\fP:CN=AAA Certificate Services, -.br -O=Comodo CA Limited, L=Salford, ST=Greater Manchester, C=GB -.TP 2 -* -\f3Alias\fP:addtrustclass1ca -.br -\f3Owner DN\fP:CN=AddTrust Class 1 CA Root, -.br -OU=AddTrust TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:addtrustexternalca -.br -\f3Owner DN\fP:CN=AddTrust External CA Root, -.br -OU=AddTrust External TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:addtrustqualifiedca -.br -\f3Owner DN\fP:CN=AddTrust Qualified CA Root, -.br -OU=AddTrust TTP Network, O=AddTrust AB, C=SE -.TP 2 -* -\f3Alias\fP:utnuserfirsthardwareca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Hardware, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utnuserfirstclientauthemailca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Client Authentication and Email, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utndatacorpsgcca -.br -\f3Owner DN\fP:CN=UTN \- DATACorp SGC, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.TP 2 -* -\f3Alias\fP:utnuserfirstobjectca -.br -\f3Owner DN\fP:CN=UTN\-USERFirst\-Object, -.br -OU=http://www.usertrust.com, O=The USERTRUST Network, -.br -L=Salt Lake City, ST=UT, C=US -.RE - +CA θǧڤϡ¿ξ硢ʽ̾ (Ĥޤ CA Ȥθǧڤ) ǤꡢϥκǽξˤʤޤˤäƤϡCA Υ֤Ȥ⤢ޤξ硢κǸξ (CA ˤäƽ̾졢ȥθǧڤ) ѤϤޤ󤬡ΤξϡCSR CA Ȥϡ̤ΡCA ˤäƽ̾졢CSR CA θǧڤˤʤޤˡΤξϡ CA θǧڤˤʤޤ ʲƱͤˡʽ̾줿֥롼ȡ׾ãޤǥ³ޤäơ (ǽξʸ) ƾǤϡμξν̾ԤθǧڤƤ뤳Ȥˤʤޤ +.LP +¿ CA ϡ򥵥ݡȤȯԺѤߤξ֤ޤäˡ֤ CA ¸ߤʤեåȤʳع¤ξϡηǤΤ褦ʾϡȥˤǤ˳ǼƤ뿮Ǥ󤫤顢Ωɬפޤ .LP -.LP -cacerts キーストアファイルの初期パスワードは、changeit です。システム管理者は、SDK のインストール後、このファイルのパスワードとデフォルトアクセス権を変更する必要があります。 -.LP -.RS 3 - -.LP - +̤α (PKCS#7 Ƥ) Ǥ⡢ȯԺѤ߾˲äΥݡȤޤޤƤޤ\f3keytool\fP ǤϡɤαⰷȤǤޤ .LP -\f3重要:\fP\f4cacerts\fP\f3 ファイルを確認してください。\fP -.br - -.LP -\f2cacerts\fP ファイル内の CA は、署名および他のエンティティーへの証明書発行のためのエンティティーとして信頼されるため、\f2cacerts\fP ファイルの管理は慎重に行う必要があります。\f2cacerts\fP ファイルには、信頼する CA の証明書だけが含まれていなければなりません。ユーザーは、自身の責任において、\f2cacerts\fP ファイルにバンドルされている信頼できるルート CA 証明書を検証し、信頼性に関する独自の決定を行います。信頼できない CA 証明書を \f2cacerts\fP ファイルから削除するには、\f2keytool\fP コマンドの削除オプションを使用します。\f2cacerts\fP ファイルは JRE のインストールディレクトリにあります。このファイルを編集するアクセス権がない場合は、システム管理者に連絡してください。 -.br - -.LP -.RE - -.LP -.RE +ȥåץ٥ (롼) CA ξϡʽ̾Ǥ롼ȤθФ뿮ϡ롼ȤξΤƳФΤǤϤʤ (ȤСVeriSign 롼 CA Τ褦ͭ̾ʼ̾Ȥäʽ̾뤳ȼΤïǤǽ)ʹʤɤΤۤξ󸻤ͳ褹ΤǤ롼 CA θϹΤƤޤ롼 CA θ˳ǼͳϡȤˤ뤳Ȥ¿Υġ뤫ѤǤ褦ˤʤ뤫ˤޤ Ĥޤꡢϡ롼 CA θ򱿤֡ΡפȤѤǤ롼 CA ξ򥭡ȥɲäȤϡ˾Ƥɽ ( \f2\-printcert\fP ץ)ɽ줿ե󥬡ץȤȡʹ롼 CA Web ڡʤɤꤷΤΥե󥬡ץȤȤӤɬפޤ .TP 2 o -\f3インターネット RFC 1421 証明書符号化規格\fP -.RS 3 +\f3cacerts ե\fP +.LP +\f3cacerts\fP Ȥ̾ξեϡƥץѥƥǥ쥯ȥ \f2java.home\fP/lib/security ֤Ƥޤ\f2java.home\fP ϡ¹ԴĶΥǥ쥯ȥ (SDK \f2jre\fP ǥ쥯ȥޤ Java 2 Runtime Environment κǾ̥ǥ쥯ȥ) Ǥ .LP -多くの場合、証明書は、バイナリ符号化ではなく、インターネット RFC 1421 規格で定義されている出力可能符号化方式を使って格納されます。「Base 64 符号化」とも呼ばれるこの証明書形式では、電子メールやその他の機構を通じて、ほかのアプリケーションに証明書を容易にエクスポートできます。 -.LP +cacerts եϡCA ξޤࡢƥΤΥȥǤƥԤϡȥפ jks ꤹ뤳Ȥǡ\f3keytool\fP ȤäƤΥեιȴԤȤǤޤcacerts ȥեϡ롼 CA ΥǥեȥåȤޤ֤ǽв٤ƤޤξɽˤϡΥޥɤѤޤ +.nf +\f3 +.fl +keytool \-list \-keystore \fP\f4java.home\fP\f3/lib/security/cacerts +.fl +\fP +.fi .LP -\f2\-importcert\fP コマンドと \f2\-printcert\fP コマンドでは、この形式の証明書とバイナリ符号化の証明書を読み込むことができます。 -.LP +cacerts ȥեνѥɤϡchangeit ǤƥԤϡSDK Υ󥹥ȡ塢ΥեΥѥɤȥǥեȥѹɬפޤ .LP -\f2\-exportcert\fP コマンドでは、デフォルトでバイナリ符号化の証明書が出力されます。 ただし、\f2\-rfc\fP オプションを指定した場合は、出力可能符号化方式の証明書が出力されます。 +\f3: \fP\f4cacerts\fP\f3 եǧƤ\fP: \f2cacerts\fP ե CA ϡ̾¾ΥƥƥؤξȯԤΤΥƥƥȤƿꤵ뤿ᡢ \f2cacerts\fP եδϿŤ˹Ԥɬפޤ \f2cacerts\fP եˤϡꤹ CA ξޤޤƤʤФʤޤ󡣥桼ϡȤǤˤơ \f2cacerts\fP ե˥Хɥ뤵Ƥ뿮Ǥ롼 CA 򸡾ڤ˴ؤȼηԤޤǤʤ CA \f2cacerts\fP ե뤫ˤϡ \f2keytool\fP ޥɤκץѤޤ \f2cacerts\fP ե JRE Υ󥹥ȡǥ쥯ȥˤޤΥեԽ륢ʤϡƥԤϢƤ +.TP 2 +o +\f3󥿡ͥå RFC 1421 沽\fP .LP +¿ξ硢ϡХʥ沽ǤϤʤ󥿡ͥå RFC 1421 ʤƤϲǽ沽ȤäƳǼޤBase 64 沽פȤƤФ뤳ξǤϡŻҥ᡼䤽¾ε̤ơۤΥץꥱ˾ưפ˥ݡȤǤޤ .LP -\f2\-list\fP コマンドでは、デフォルトで証明書の MD5 フィンガープリントが出力されます。\f2\-v\fP オプションを指定すると、人間が読むことのできる形式で証明書が出力されます。 一方、\f2\-rfc\fP オプションを指定すると、出力可能符号化方式で証明書が出力されます。 +\f2\-importcert\fP \f2\-printcert\fP ޥɤǤϡηξȥХʥ沽ξɤ߹ळȤǤޤ .LP +\f2\-exportcert\fP ޥɤǤϡǥեȤǥХʥ沽ξ񤬽Ϥޤ \f2\-rfc\fP ץꤷϡϲǽ沽ξ񤬽Ϥޤ .LP -出力可能符号化方式で符号化された証明書は、次の行で始まります。 +\f2\-list\fP ޥɤǤϡǥեȤǾ SHA1 ե󥬡ץȤϤޤ \f2\-v\fP ץꤹȡʹ֤ɤळȤΤǤǾ񤬽Ϥޤ \f2\-rfc\fP ץꤹȡϲǽ沽Ǿ񤬽Ϥޤ .LP +ϲǽ沽沽줿ϡιԤǻϤޤޤ .nf \f3 .fl @@ -1372,11 +1574,8 @@ .fl \fP .fi - .LP -.LP -最後は、次の行で終わります。 -.LP +ǸϡιԤǽޤ .nf \f3 .fl @@ -1385,40 +1584,38 @@ \fP .fi .RE -.RE .LP .SS -X.500 識別名 +X.500 ̾ +.LP .LP -.RS 3 - +X.500 ̾ϡƥƥꤹ뤿˻ȤޤȤСX.509 \f2subject\fP եɤ \f2issuer\fP (̾) եɤǻꤵ̾ϡX.500 ̾Ǥ\f3keytool\fP ϡΥ֥ѡȤ򥵥ݡȤƤޤ .LP -X.500 識別名は、エンティティーを特定するために使われます。 たとえば、X.509 証明書の \f2subject\fP フィールドと \f2issuer\fP (署名者) フィールドで指定される名前は、X.500 識別名です。 \f3keytool\fP は、次のサブパートをサポートしています。 .RS 3 .TP 2 o -\f2commonName\fP \- 人の通称。 「Susan Jones」など +\f2commonName\fP \- ͤ̾Ρ Susan Jonesפʤ .TP 2 o -\f2organizationUnit\fP \- 小さな組織 (部、課など) の名称。 「仕入部」など +\f2organizationUnit\fP \- ȿ (ݤʤ) ̾Ρ ֻפʤ .TP 2 o -\f2organizationName\fP \- 大きな組織の名称。 「ABCSystems, Inc.」など +\f2organizationName\fP \- 礭ȿ̾Ρ ABCSystems, Inc.פʤ .TP 2 o -\f2localityName\fP \- 地域 (都市) 名。 「Palo Alto」など +\f2localityName\fP \- ϰ (Ի) ̾ Palo Altoפʤ .TP 2 o -\f2stateName\fP \- 州名または地方名。 「California」など +\f2stateName\fP \- ̾ޤ̾ Californiaפʤ .TP 2 o -\f2country\fP \- 2 文字の国番号。 「CH」など +\f2country\fP \- 2 ʸιֹ档 CHפʤ .RE .LP .LP -\f2\-genkeypair\fP コマンド の \f2\-dname\fP オプションの値として識別名文字列を指定する場合は、次の形式で指定する必要があります。 +\-genkeypair ޥɤ \f2\-dname\fP ץͤȤƼ̾ʸꤹϡ ηǻꤹɬפޤ .LP .nf \f3 @@ -1430,12 +1627,12 @@ .LP .LP -イタリック体の項目は、実際に指定する値を表します。 短縮形のキーワードの意味は、次のとおりです。 +åΤιܤϡºݤ˻ꤹͤɽޤ û̷Υɤΰ̣ϡΤȤǤ .LP .nf \f3 .fl - CN=commonName + CN=commonName .fl OU=organizationUnit .fl @@ -1452,22 +1649,24 @@ .LP .LP -次に示すのは、識別名文字列の例です。 +˼Τϡ̾ʸǤ .LP .nf \f3 .fl -CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, S=California, C=US +CN=Mark Smith, OU=Java, O=Oracle, L=Cupertino, S=California, C=US .fl \fP .fi .LP -次は、この文字列を使ったコマンドの例です。 +.LP +ϡʸȤäޥɤǤ +.LP .nf \f3 .fl -keytool \-genkeypair \-dname "CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, +keytool \-genkeypair \-dname "CN=Mark Smith, OU=Java, O=Oracle, L=Cupertino, .fl S=California, C=US" \-alias mark .fl @@ -1476,45 +1675,43 @@ .LP .LP -キーワードの短縮形では、大文字と小文字は区別されません。たとえば、CN、cn、および Cn は、どれも同じものとして扱われます。 +ɤû̷ǤϡʸȾʸ϶̤ޤ󡣤ȤСCNcn Cn ϡɤƱΤȤưޤ .LP .LP -一方、キーワードの指定順序には意味があり、各サブコンポーネントは上に示した順序で指定する必要があります。ただし、サブコンポーネントをすべて指定する必要はありません。たとえば、次のように一部のサブコンポーネントだけを指定できます。 +ɤλˤϰ̣ꡢƥ֥ݡͥȤϾ˼ǻꤹɬפޤ֥ݡͥȤ򤹤٤ƻꤹɬפϤޤ󡣤ȤСΤ褦˰Υ֥ݡͥȤǤޤ .LP .nf \f3 .fl -CN=Steve Meier, OU=SunSoft, O=Sun, C=US +CN=Steve Meier, OU=Java, O=Oracle, C=US .fl \fP .fi .LP .LP -識別名文字列の値にコンマが含まれる場合に、コマンド行で文字列を指定するときには、次のようにコンマを文字 \\ でエスケープする必要があります。 +̾ʸͤ˥ޤޤޤˡޥɹԤʸꤹȤˤϡΤ褦˥ޤʸ \\ ǥפɬפޤ .LP .nf \f3 .fl - cn=peter schuster, o=Sun Microsystems\\, Inc., o=sun, c=us + cn=Peter Schuster, ou=Java\\, Product Development, o=Oracle, c=US .fl \fP .fi .LP .LP -識別名文字列をコマンド行で指定する必要はありません。識別名を必要とするコマンドを実行するときに、コマンド行で識別名を指定しなかった場合は、各サブコンポーネントの入力を求められます。この場合は、コンマを文字 \\ でエスケープする必要はありません。 +̾ʸ򥳥ޥɹԤǻꤹɬפϤޤ󡣼̾ɬפȤ륳ޥɤ¹ԤȤˡޥɹԤǼ̾ꤷʤäϡƥ֥ݡͥȤϤޤξϡޤʸ \\ ǥפɬפϤޤ .LP -.RE .SS -信頼できる証明書のインポートに関する注意事項 +ǤΥݡȤ˴ؤջ .LP -.RS 3 - +.LP +: ǤȤƾ򥤥ݡȤˡƤ򿵽ŤĴ٤Ƥ .LP -重要:信頼できる証明書として証明書をインポートする前に、証明書の内容を慎重に調べてください。 .LP -まず、証明書の内容を表示し (\f2\-printcert\fP コマンドを使用するか、または \f2\-noprompt\fP オプションを指定しないで \f2\-import\fP コマンドを使用)、表示された証明書のフィンガープリントが、期待されるフィンガープリントと一致するかどうかを確認します。たとえば、あるユーザーから証明書が送られてきて、この証明書を \f2/tmp/cert\fP という名前でファイルに格納しているとします。この場合は、信頼できる証明書のリストにこの証明書を追加する前に、\f2\-printcert\fP コマンドを実行してフィンガープリントを表示できます。 たとえば、次のようにします。 +ޤƤɽ (\-printcert ޥɤѤ뤫ޤ \-noprompt ץꤷʤ \-importcert ޥɤ) ɽ줿Υե󥬡ץȤԤե󥬡ץȤȰפ뤫ɤǧޤȤС桼Ƥơξ /tmp/cert Ȥ̾ǥե˳ǼƤȤޤ ξϡǤΥꥹȤˤξɲäˡ \f2\-printcert\fP ޥɤ¹Ԥƥե󥬡ץȤɽǤޤȤСΤ褦ˤޤ .LP .nf \f3 @@ -1535,90 +1732,93 @@ .fl SHA1: 20:B6:17:FA:EF:E5:55:8A:D0:71:1F:E8:D6:9D:C0:37:13:0E:5E:FE .fl + SHA256: 90:7B:70:0A:EA:DC:16:79:92:99:41:FF:8A:FE:EB:90: +.fl + 17:75:E0:90:B2:24:4D:3A:2A:16:A6:E4:11:0F:67:A4 +.fl \fP .fi .LP -次に、証明書を送信した人物に連絡し、この人物が提示したフィンガープリントと、上のコマンドで表示されたフィンガープリントとを比較します。フィンガープリントが一致すれば、送信途中でほかの何者か (攻撃者など) による証明書のすり替えが行われていないことを確認できます。送信途中でこの種の攻撃が行われていた場合、チェックを行わずに証明書をインポートすると、攻撃者によって署名されたすべてのもの (攻撃的意図を持つクラスファイルを含んだ JAR ファイルなど) を信頼することになります。 +.LP +ˡʪϢοʪ󼨤ե󥬡ץȤȡΥޥɤɽ줿ե󥬡ץȤȤӤޤե󥬡ץȤפСǤۤβԤ (Ԥʤ) ˤΤؤԤƤʤȤǧǤޤǤμι⤬ԤƤ硢åԤ鷺˾򥤥ݡȤȡԤˤäƽ̾줿٤ƤΤ (Ūտޤĥ饹եޤ JAR եʤ) ꤹ뤳Ȥˤʤޤ .LP -注:証明書をインポートする前に必ず \f2\-printcert\fP コマンドを実行しなければならないわけではありません。 キーストア内の信頼できる証明書のリストに証明書を追加する前に \f2\-importcert\fP コマンドを実行すると、証明書の情報が表示され、確認を求めるメッセージが表示されます。インポート操作は、この時点で中止できます。ただし、確認メッセージが表示されるのは、\f2\-importcert\fP コマンドを \f2\-noprompt\fP オプションを指定せずに実行した場合だけです。\f2\-noprompt\fP オプションが指定されている場合、ユーザーとの対話は行われません。 +.LP +: 򥤥ݡȤɬ \f2\-printcert\fP ޥɤ¹ԤʤФʤʤ櫓ǤϤޤ󡣥ȥοǤΥꥹȤ˾ɲä \f2\-importcert\fP ޥɤ¹Ԥȡξɽ졢ǧåɽޤݡϡλߤǤޤǧåɽΤϡ\-importcert ޥɤ \-noprompt ץꤻ˼¹ԤǤ \f2\-noprompt\fP ץ󤬻ꤵƤ硢桼ȤäϹԤޤ .LP -.RE .SS -パスワードに関する注意事項 +ѥɤ˴ؤջ .LP -.RS 3 - +.LP +ȥФԤۤȤɤΥޥɤǤϡȥΥѥɤɬפǤޤΥޥɤǤϡ/̩Υѥɤɬפˤʤ뤳Ȥޤ .LP .LP -キーストアに対する操作を行うほとんどのコマンドでは、ストアのパスワードが必要です。また、一部のコマンドでは、非公開/秘密鍵のパスワードが必要になることがあります。 -.LP -.LP -パスワードはコマンド行で指定できます (ストアのパスワードには \f2\-storepass\fP オプション、非公開鍵のパスワードには \f2\-keypass\fP オプションを使用)。ただし、テストを目的とする場合、または安全であることがわかっているシステムで実行する場合以外は、コマンド行やスクリプトでパスワードを指定しないでください。 +ѥɤϥޥɹԤǻǤޤ (ȥΥѥɤˤ \f2\-storepass\fP ץΥѥɤˤ \f2\-keypass\fP ץ)ƥȤŪȤ硢ޤϰǤ뤳Ȥ狼äƤ륷ƥǼ¹ԤʳϡޥɹԤ䥹ץȤǥѥɤꤷʤǤ .LP .LP -必要なパスワードのオプションをコマンド行で指定しなかった場合は、パスワードの入力を求められます。 +ɬפʥѥɤΥץ򥳥ޥɹԤǻꤷʤäϡѥɤϤޤ +.LP +.SS +ν˴ؤջ +.LP .LP -.RE -.SH "関連項目" +󥿡ͥåɸ +.na +\f2RFC 5280\fP @ +.fi +http://tools.ietf.org/rfc/rfc5280.txt ǤϡX.509 񤬽򤹤ץեƤޤΥץեˤϡΥեɤ䥨ƥ󥷥ͭͤͤȤ߹碌ޤޤƤޤ\f3keytool\fP ǤϡΤ٤Ƥε§ŬѤƤ櫓ǤϤʤΤǡɸ˽򤷤ʤǽꡢΤ褦ʾ JRE ۤΥץꥱǵݤ뤳Ȥޤ桼ϡ \f2\-dname\fP \f2\-ext\fP ʤɤŬʥץꤹ褦ˤƤ .LP - +.SH "Ϣ" .LP .RS 3 .TP 2 o -.LP -jar(1) ツールのドキュメント +jar(1) ġΥɥ .TP 2 o -.LP -jarsigner(1) ツールのドキュメント +jarsigner(1) ġΥɥ .TP 2 o -.LP -\f3keytool\fP の使用例については、 .na -\f4「Java Tutorial」\fP @ +\f4keytool\fP\f2 λˤĤƤϡ\fP @ .fi -http://java.sun.com/docs/books/tutorialの +http://download.oracle.com/javase/tutorial/security/index.html .na -\f4「Security」\fP @ +\f2Java Tutorial\fP\f4\fP @ .fi -http://java.sun.com/docs/books/tutorial/security/index.htmlを参照 +http://download.oracle.com/javase/tutorial/Security\f3򻲾\fP .RE .LP -.SH "変更点" -.LP - +.SH "ѹ" .LP .LP -Java SE 6 で keytool のコマンドインタフェースが変更されました。 +Java SE 6 keytool Υޥɥ󥿥եѹޤ .LP .LP -\f3keytool\fP は、ユーザーがパスワードを入力する際にその入力内容を表示しなくなりました。ユーザーはパスワード入力時にその入力内容を確認できなくなったため、初期キーストアパスワードを設定したり鍵パスワードを変更したりするなど、パスワードの設定や変更を行うたびにパスワードの再入力を求められます。 +\f3keytool\fP ϡ桼ѥɤϤݤˤƤɽʤʤޤ桼ϥѥϻˤƤǧǤʤʤäᡢȥѥɤꤷ기ѥɤѹꤹʤɡѥɤѹԤӤ˥ѥɤκϤޤ .LP .LP -変更されたコマンドの中には、名前が変更されただけのものもあれば、廃止されてこのドキュメントに記載されなくなったものもあります。以前のすべてのコマンド (名前が変更されたものと廃止されたものの両方) は、このリリースでも引き続きサポートされており、今後のリリースでもサポートされる予定です。keytool のコマンドインタフェースに加えられたすべての変更点の概要を、次に示します。 +ѹ줿ޥɤˤϡ̾ѹ줿ΤΤ⤢СѻߤƤΥɥȤ˵ܤʤʤäΤ⤢ޤΤ٤ƤΥޥ (̾ѹ줿Τѻߤ줿Τξ) ϡΥ꡼Ǥ³ݡȤƤꡢΥ꡼Ǥ⥵ݡȤͽǤkeytool Υޥɥ󥿥ե˲ä줿٤Ƥѹγפ򡢼˼ޤ .LP .LP -名前が変更されたコマンド: +̾ѹ줿ޥ: .LP .RS 3 .TP 2 o -\f2\-export\fP の名前が \f2\-exportcert\fP に変更 +\f2\-export\fP ̾ \f2\-exportcert ѹ\fP .TP 2 o -\f2\-genkey\fP の名前が \f2\-genkeypair\fP に変更 +\f2\-genkey\fP ̾ \f2\-genkeypair ѹ\fP .TP 2 o -\f2\-import\fP の名前が \f2\-importcert\fP に変更 +\f2\-import\fP ̾ \f2\-importcert ѹ\fP .RE .LP .LP -廃止されてドキュメントに記載されなくなったコマンド: +ѻߤƥɥȤ˵ܤʤʤäޥ: .LP .RS 3 .TP 2 @@ -1626,19 +1826,19 @@ .na \f2\-keyclone\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#keycloneCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#keycloneCmd .TP 2 o .na \f2\-identitydb\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#identitydbCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#identitydbCmd .TP 2 o .na \f2\-selfcert\fP @ .fi -http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html#selfcertCmd +http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html#selfcertCmd .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/native2ascii.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/native2ascii.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/native2ascii.1 Wed Jul 05 17:43:00 2017 +0200 @@ -1,4 +1,4 @@ -." Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. +." Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ." ." This code is free software; you can redistribute it and/or modify it @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH native2ascii 1 "02 Jun 2010" +.TH native2ascii 1 "14 Apr 2011" .LP -.SH "名前" -native2ascii \- ネイティブ \- ASCII コンバータ -.LP -.RS 3 - +.SH "̾" +native2ascii \- ͥƥ \- ASCII С .LP .LP -ネイティブコード (Latin 1 および Unicode 以外) のファイルを Unicode コードに変換します。 +ݡȤʸ󥳡ǥ󥰤ʸΥե ASCII ޤ Unicode פ뤤ϤξΥեѴޤεդѴԤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -44,36 +38,34 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -Java コンパイラおよびその他の Java ツールは、Latin\-1 または Unicode コード (\\udddd 表記) 文字を含んだファイルだけを処理することができます。 \f2native2ascii\fP は、これら以外の文字コードのファイルを Latin\-1 または Unicode コードのファイルに変換します。 +\f2native2ascii\fP Java ¹ԴĶǥݡȤʸ󥳡ǥ󥰤˥󥳡ɤ줿եASCII ǥ󥳡ɤ줿եѴޤASCII ʸåȤΰǤʤ٤Ƥʸ Unicode (\\uxxxxפɽ) ѤޤΥץϡISO\-8859\-1 ʸåȤ˴ޤޤʤʸޤޤƤץѥƥեɬפǤΥġϡεդѴ¹Ԥ뤳ȤǤޤ .LP .LP -\f2outputfile\fP を省略した場合、標準出力に出力されます。さらに、\f2inputfile\fP を省略した場合、標準入力から入力されます。 +\f2outputfile\fP ά硢ɸϤ˽Ϥޤˡ \f2inputfile\fP ά硢ɸϤϤޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-reverse -逆の処理を行います。つまり、Latin\-1 または Unicode コードのファイルをネイティブコードに変換します。 +դνԤޤĤޤꡢISO\-8859\-1 Unicode פȤäƥ󥳡ɤ줿եJava ¹ԴĶǥݡȤʸ󥳡ǥ󥰤ΥեѴޤ .br .br .TP 3 \-encoding encoding_name -変換処理で使用するコードの名前を指定します。デフォルトのコードは、システムプロパティーの \f2file.encoding\fP から取得されます。\f2encoding_name\fP 文字列は、 +ѴǻѤʸ󥳡ǥ󥰤̾ꤷޤΥץ¸ߤʤϡǥեȤʸ󥳡ǥ ( \f2java.nio.charset.Charset.defaultCharset\fP ᥽åɤ) Ѥޤ \f2encoding_name\fP ʸϡ .na -\f4「サポートされているエンコーディング」\fP @ +\f4֥ݡȤƤʸ󥨥󥳡ǥ󥰡\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.htmlドキュメントに示されている、サポートされるエンコーディングの表の最初の列から取得される必要があります。 +http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.htmlɥȤ˼Ƥ롢Java ¹ԴĶǥݡȤʸ󥳡ǥ󥰤̾ˤɬפޤ +.br +.br .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/orbd.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/orbd.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/orbd.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,29 +19,23 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH orbd 1 "02 Jun 2010" +.TH orbd 1 "14 Apr 2011" .LP -.SH "名前" +.SH "̾" orbd \- The Object Request Broker Daemon .LP -.RS 3 - +.LP +\f3orbd\fP ϡ饤Ȥ CORBA ĶΥСˤ³֥ȤƩŪ˸ƸƤӽФ˻Ѥޤ .LP .LP -\f3orbd\fP は、クライアントから CORBA 環境のサーバーにある持続オブジェクトを透過的に検索して呼び出すために使用します。 -.LP -.LP -\f3関連項目:\fP +\f3Ϣ:\fP .na -\f2ネームサービス\fP @ +\f2͡ॵӥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -52,42 +46,40 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3orbd\fP ツールに含まれるサーバーマネージャーを使うと、クライアントは CORBA 環境でサーバー上にある持続オブジェクトを透過的に検索して呼び出すことができます。持続サーバーは、ネームサービスに持続オブジェクト参照を発行する際、サーバーのポート番号の代わりに OBRD のポート番号をオブジェクト参照に含めます。持続オブジェクト参照のオブジェクト参照に ORBD ポート番号を含めることには、次のような利点があります。 +\f3orbd\fP ġ˴ޤޤ륵Сޥ͡㡼Ȥȡ饤Ȥ CORBA ĶǥСˤ³֥ȤƩŪ˸ƸƤӽФȤǤޤ³Сϡ͡ॵӥ˻³֥ȻȤȯԤݡСΥݡֹ OBRD Υݡֹ򥪥֥ȻȤ˴ޤޤ³֥ȻȤΥ֥ȻȤ ORBD ݡֹޤ뤳ȤˤϡΤ褦ޤ .LP .RS 3 .TP 2 o -ネームサービスにあるオブジェクト参照が、サーバーのライフタイムと無関係になる。オブジェクト参照は、始めてインストールされたときはネームサービスのサーバーによりネームサービスに発行されますが、その後は、サーバーの開始またはシャットダウンの回数にかかわらず、ORBD がいつでも呼び出したクライアントに正しいオブジェクト参照を返します。 +͡ॵӥˤ륪֥ȻȤСΥ饤ե̵طˤʤ롣֥ȻȤϡϤƥ󥹥ȡ뤵줿Ȥϥ͡ॵӥΥСˤ͡ॵӥȯԤޤθϡСγϤޤϥåȥβˤ餺ORBD ĤǤƤӽФ饤Ȥ֥ȻȤ֤ޤ .TP 2 o -クライアントは一度だけネーミングサービスのオブジェクト参照をルックアップする必要があるが、その後はサーバーのライフタイムによる変更とは無関係にこの参照を利用することができる +饤Ȥϰ٤͡ߥ󥰥ӥΥ֥ȻȤååפɬפ뤬θϥСΥ饤եˤѹȤ̵طˤλȤѤ뤳ȤǤ .RE .LP .LP -ORBD のサーバーマネージャーにアクセスするには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。サーバーマネージャーの詳細については、このドキュメントの\f2「サーバーマネージャー」\fPを参照してください。 +ORBD ΥСޥ͡㡼˥ˤϡservertool(1) ѤƥСưɬפޤservertool ϡץꥱץޤ³СϿϿưӥåȥԤΥޥɹԥ󥿥եǤСޥ͡㡼ξܺ٤ˤĤƤϡΥɥȤΡ֥Сޥ͡㡼פ򻲾ȤƤ .LP .LP -\f2orbd\fP を起動すると、ネームサービスも起動されます。ネームサービスについては、 +\f2orbd\fP ưȡ͡ॵӥⵯưޤ͡ॵӥˤĤƤϡ .na -\f2「ネームサービス」\fP @ +\f2֥͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html򻲾ȤƤ .LP -.SH "オプション" +.SH "ץ" .LP .SS -必須オプション +ɬܥץ .LP .RS 3 .TP 3 \-ORBInitialPort nameserverport -ネームサーバーを起動するポートの番号を指定します。\f2orbd\fP は、起動されると、このポート上で着信要求を待機します。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 (必須) +͡ॵСưݡȤֹꤷޤ\f2orbd\fP ϡưȡΥݡȾ忮׵ԵޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ(ɬ) .RE .LP @@ -95,75 +87,75 @@ .LP .SS -その他のオプション +¾Υץ .LP .RS 3 .TP 3 \-port port -ORBD を起動するポートを指定します。 ORBD は、このポートで、持続オブジェクトに対する要求を受け取ります。このポートのデフォルト値は 1049 です。 このポート番号は持続 Interoperable Object References (IOR) のポートフィールドに追加されます。(省略可) +ORBD ưݡȤꤷޤORBD ϡΥݡȤǡ³֥ȤФ׵ޤΥݡȤΥǥեͤ 1049 ǤΥݡֹ椬³ Interoperable Object References (IOR). Υݡȥեɤɲäޤ(ά) .RE .LP .RS 3 .TP 3 \-defaultdb directory -ORBD 持続格納ディレクトリ \f2orb.db\fP が作成されるベースディレクトリを指定します。このオプションが指定されていない場合、デフォルト値は「./orb.db」となります。(省略可) +ORBD ³Ǽǥ쥯ȥ \f2orb.db\fP ١ǥ쥯ȥꤷޤΥץ󤬻ꤵƤʤ硢ǥեͤϡ./orb.dbפȤʤޤ(ά) .RE .LP .RS 3 .TP 3 \-serverPollingTime milliseconds -\f2servertool\fP を使用して登録された持続サーバーが正常に動作していることを ORBD が確認する回数を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可) +\f2servertool\fP ѤϿ줿³СưƤ뤳Ȥ ORBD ǧꤷޤǥեͤ 1,000 ߥäǤ\f2milliseconds\fP ˻ꤹͤϡͭǤʤФʤޤ(ά) .RE .LP .RS 3 .TP 3 \-serverStartupDelay milliseconds -\f2servertool\fP を使用して登録された持続サーバーを再起動してから、位置転送の例外を送信するまでの ORBD の待機時間を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可) +\f2servertool\fP ѤϿ줿³СƵưƤ顢ž㳰ޤǤ ORBD Ե֤ꤷޤǥեͤ 1,000 ߥäǤ\f2milliseconds\fP ˻ꤹͤϡͭǤʤФʤޤ(ά) .RE .LP .RS 3 .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .TP 3 .RE .LP -.SH "ネームサービスの起動と停止" +.SH "͡ॵӥεư" .LP .LP -ネームサービスは、 +͡ॵӥϡ .na -\f2CORBA オブジェクト\fP @ +\f2CORBA ֥\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#CORBA%20objectにネーミングを可能にする CORBA サービスです。 ネーミングは名前をオブジェクト参照にバインドすることにより可能になります。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#CORBA%20object˥͡ߥ󥰤ǽˤ CORBA ӥǤ͡ߥ󥰤̾򥪥֥ȻȤ˥Хɤ뤳Ȥˤǽˤʤޤ .na -\f2「ネームバインディング」\fP @ +\f2֥͡Хǥ󥰡\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#name%20bindingはネームサービスに格納され、クライアントは名前を与えて目的のオブジェクト参照を取得できます。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#name%20bindingϥ͡ॵӥ˳Ǽ졢饤Ȥ̾ͿŪΥ֥ȻȤǤޤ .LP .LP -ORBD は、クライアントまたはサーバーを実行する前に起動します。ORBD には、持続ネームサービスおよび一時ネームサービスが組み込まれています。 これらはどちらも COS ネームサービスの実装です。 +ORBD ϡ饤ȤޤϥС¹Ԥ˵ưޤORBD ˤϡ³͡ॵӥӰ͡ॵӥȤ߹ޤƤޤϤɤ COS ͡ॵӥμǤ .LP .LP -\f3「持続」ネームサービス\fPは、ネーミングコンテキストに対して持続性を提供します。つまり、この情報は、サービスの停止や起動後にも維持され、サービスに障害が発生した場合でも回復できます。ORBD を再起動すると、持続ネームサービスはネーミングコンテキストのグラフを復元し、すべてのクライアントとサーバーの名前のバインディングが保持されます。 +\f3ֻ³ץ͡ॵӥ\fPϡ͡ߥ󥰥ƥȤФƻ³󶡤ޤĤޤꡢξϡӥߤ䵯ưˤݻ졢ӥ˾㳲ȯǤǤޤORBD Ƶưȡ³͡ॵӥϥ͡ߥ󥰥ƥȤΥդ٤ƤΥ饤ȤȥС̾ΥХǥ󥰤ݻޤ .LP .LP \ .LP .LP -下位互換性のため、旧バージョンの JDK に同梱されていた\f3一時ネームサービス\fPが、今回のリリースの J2SE にも同梱されています。一時ネームサービスでは、ネームサービスの実行中にのみネーミングコンテキストが保持されます。サービスが中断されると、ネーミングコンテキストは失われます。 +̸ߴΤᡢС JDK ƱƤ\f2͡ॵӥ\fPΥ꡼ J2SE ˤƱƤޤ͡ॵӥǤϡ͡ॵӥμ¹ˤΤߥ͡ߥ󥰥ƥȤݻޤӥǤȡ͡ߥ󥰥ƥȤϼޤ .LP .LP -\f2\-ORBInitialPort\fP 引数は、\f2orbd\fP の必須のコマンド行引数で、ネームサービスが実行されるポートの番号を設定するために使われます。以下の説明では、Java\ IDL Object Request Broker Daemon 用にポート 1050 を使用できることを前提としています。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 +\f2\-ORBInitialPort\fP ϡ\f2orbd\fP ɬܤΥޥɹ԰ǡ͡ॵӥ¹ԤݡȤֹꤹ뤿˻ȤޤʲǤϡJavaIDL Object Request Broker Daemon Ѥ˥ݡ 1050 ѤǤ뤳ȤȤƤޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤɬפǤ̤ΥݡȤѹƤ .LP .LP -UNIX コマンドシェルで \f2orbd\fP を起動するには、次のように入力します。 +UNIX ޥɥ \f2orbd\fP ưˤϡΤ褦Ϥޤ .LP .nf \f3 @@ -175,7 +167,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -187,7 +179,7 @@ .LP .LP -これで ORBD が実行され、サーバーとクライアントのアプリケーションを実行できるようになります。クライアントとサーバーのアプリケーションは、実行時に、ネームサービスが実行されているポートの番号 (必要な場合はさらにマシン名) を認識している必要があります。これを実現する 1 つの方法は、次のコードをアプリケーションに追加することです。 + ORBD ¹Ԥ졢Сȥ饤ȤΥץꥱ¹ԤǤ褦ˤʤޤ饤ȤȥСΥץꥱϡ¹Իˡ͡ॵӥ¹ԤƤݡȤֹ (ɬפʾϤ˥ޥ̾) ǧƤɬפޤ¸ 1 ĤˡϡΥɤ򥢥ץꥱɲä뤳ȤǤ .LP .nf \f3 @@ -205,7 +197,7 @@ .LP .LP -この例では、ネームサービスは、ホスト MyHost のポート 1050 上で実行されます。別の方法として、コマンド行からサーバーまたはクライアントのアプリケーションを実行するときに、ポート番号またはマシン名あるいはその両方を指定する方法もあります。たとえば、次のコマンド行オプションを使用して、「HelloApplication」を起動できます。 +Ǥϡ͡ॵӥϡۥ MyHost Υݡ 1050 Ǽ¹Ԥޤ̤ˡȤơޥɹԤ饵Сޤϥ饤ȤΥץꥱ¹ԤȤˡݡֹޤϥޥ̾뤤Ϥξꤹˡ⤢ޤȤСΥޥɹԥץѤơHelloApplicationפưǤޤ .LP .nf \f3 @@ -217,35 +209,35 @@ .LP .LP -ネームサービスを停止するには、適切なオペレーティングシステムコマンドを使用します。 たとえば、Solaris では \f2pkill orbd\fP を使用し、\f2orbd\fP が実行されている DOS ウィンドウでは \f2Ctrl+C\fP キーを使用します。一時ネームサービスの場合は、サービスが終了されると、ネームサービスに登録された名前が消去される場合があります。Java IDL ネームサービスは、明示的に停止されるまで実行されます。 +͡ॵӥߤˤϡŬڤʥڥ졼ƥ󥰥ƥॳޥɤѤޤȤСSolaris \f2pkill orbd\fP \f2¹Ԥꡢ\fP \f2orbd\fP ư DOS ɥ Ctrl+C 򲡤ꤷޤ͡ॵӥξϡӥλȡ͡ॵӥϿ줿̾õ礬ޤJava IDL ͡ॵӥϡŪߤޤǼ¹Ԥޤ .LP .LP -ORDB に含まれるネームサービスの詳細については、 +ORDB ˴ޤޤ͡ॵӥξܺ٤ˤĤƤϡ .na -\f2「ネームサービス」\fP @ +\f2֥͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html򻲾ȤƤ .LP -.SH "サーバーマネージャー" +.SH "Сޥ͡㡼" .LP .LP -ORBD のサーバーマネージャーにアクセスして持続サーバーを実行するには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。servertool を使用してサーバーを起動する場合は、\f2orbd\fP が実行されている場所と同じポートとホストで起動する必要があります。サーバーを異なるポートで実行すると、ローカルコンテキスト用にデータベースに保存されている情報が無効になり、サービスが正しく動作しません。 +ORBD ΥСޥ͡㡼˥ƻ³С¹Ԥˤϡservertool(1) ѤƥСưɬפޤservertool ϡץꥱץޤ³СϿϿưӥåȥԤΥޥɹԥ󥿥եǤ\f2servertool\fP ѤƥСưϡ\f2orbd\fP ¹ԤƤƱݡȤȥۥȤǵưɬפޤСۤʤݡȤǼ¹Ԥȡ륳ƥѤ˥ǡ١¸Ƥ̵ˤʤꡢӥưޤ .LP .SS -サーバーマネージャー:例 +Сޥ͡㡼: .LP .LP -デモ用の +ǥѤ .na -\f2サンプルチュートリアル\fP @ +\f2ץ塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlExample.htmlを使用し、チュートリアルの手順に従って、\f2idlj\fP コンパイラと \f2javac\fP コンパイラを実行します。サーバーマネージャーを実行するには、次の手順に従ってアプリケーションを実行します。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlExample.htmlѤ塼ȥꥢμ˽äơ\f2idlj\fP ѥ \f2javac\fP ѥ¹ԤޤСޥ͡㡼¹Ԥˤϡμ˽äƥץꥱ¹Ԥޤ .LP .LP -\f2orbd\fP を起動します。 +\f2orbd\fP ưޤ .LP .LP -UNIX コマンドシェルで \f2orbd\fP を起動するには、次のように入力します。 +UNIX ޥɥ \f2orbd\fP ưˤϡΤ褦Ϥޤ .LP .LP \ @@ -260,7 +252,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -272,13 +264,13 @@ .LP .LP -\f21050\fP はネームサーバーを実行するポートです。\f2\-ORBInitialPort\fP は必要なコマンド行の引数です。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 +\f21050\fP ϥ͡ॵС¹ԤݡȤǤ\f2\-ORBInitialPort\fP ɬפʥޥɹԤΰǤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ .LP .LP -\f2servertool\fP を起動します。 +\f2servertool\fP ưޤ .LP .LP -Hello サーバーを起動するには、次のように入力します。 +Hello СưˤϡΤ褦Ϥޤ .LP .nf \f3 @@ -290,21 +282,21 @@ .LP .LP -前回の手順と同様にネームサーバー (\f2orbd\fP) のポートを指定します。 たとえば \f2\-ORBInitialPort 1050\fP のようになります。\f2servertool\fP は、ネームサーバーと同じポート上で起動する必要があります。 +μƱͤ˥͡ॵС (\f2orbd\fP) ΥݡȤꤷޤȤ \f2\-ORBInitialPort 1050\fP Τ褦ˤʤޤ\f2servertool\fP ϡ͡ॵСƱݡȾǵưɬפޤ .LP .LP -\f2servertool\fP コマンド行インタフェースが表示されます。 +\f2servertool\fP ޥɹԥ󥿥եɽޤ .LP .LP .LP .LP -\f2servertool\fP プロンプトから Hello サーバーを起動します。 +\f2servertool\fP ץץȤ Hello Сưޤ .LP .nf \f3 .fl - servertool > register \-server HelloServer \-classpath . \-applicationName + servertool > register \-server HelloServer \-classpath .\-applicationName .fl HelloServerApName .fl @@ -313,13 +305,13 @@ .LP .LP -\f2servertool\fP によってサーバーが登録されて、「HelloServerApName」という名前がサーバーに割り当てられ、サーバー ID が表示されます。 +\f2servertool\fP ˤäƥСϿơHelloServerApNameפȤ̾С˳Ƥ졢С ID ɽޤ .LP .LP .LP .LP -別の端末ウィンドウまたはプロンプトからクライアントアプリケーションを実行します。 +̤üɥޤϥץץȤ饯饤ȥץꥱ¹Ԥޤ .LP .LP \ @@ -334,10 +326,10 @@ .LP .LP -この例の \f2\-ORBInitialHost localhost\fP は省略することができます。 ネームサーバーが Hello クライアントとして同一ホスト上で動作しているからです。ネームサーバーが別のホストで動作している場合は、IDL ネームサーバーが動作しているホストを \f2\-ORBInitialHost\fP \f2nameserverhost\fP で指定します。 + \f2\-ORBInitialHost localhost\fP Ͼά뤳ȤǤޤ͡ॵС Hello 饤ȤȤƱۥȾưƤ뤫Ǥ͡ॵС̤ΥۥȤưƤϡIDL ͡ॵСưƤۥȤ \f2\-ORBInitialHost\fP \f2nameserverhost\fP ǻꤷޤ .LP .LP -前回の手順と同様にネームサーバー (\f2orbd\fP) のポートを指定します。 たとえば \f2\-ORBInitialPort 1050\fP のようになります。 +μƱͤ˥͡ॵС (\f2orbd\fP) ΥݡȤꤷޤȤ \f2\-ORBInitialPort 1050\fP Τ褦ˤʤޤ .LP .LP \ @@ -346,21 +338,21 @@ \ .LP .LP -サーバーマネージャーの操作が終了したら、ネームサーバー (\f2orbd\fP) と \f2servertool\fP を停止するか終了してください。 +Сޥ͡㡼λ顢͡ॵС (\f2orbd\fP) \f2servertool\fP ߤ뤫λƤ .LP .LP -DOS プロンプトで \f2orbd\fP をシャットダウンするには、サーバーを実行しているウィンドウを選択して \f2Ctrl+C\fP と入力します。UNIX シェルで \f2orbd\fP をシャットダウンするには、プロセスを検出して終了 (kill) します。サーバーを明示的に停止するまでは、呼び出し待機状態が続きます。 +DOS ץץȤ \f2orbd\fP 򥷥åȥ󤹤ˤϡС¹ԤƤ륦ɥ򤷤 \f2Ctrl+C\fP ϤޤUNIX \f2orbd\fP 򥷥åȥ󤹤ˤϡץ򸡽Фƽλ (kill) ޤСŪߤޤǤϡƤӽФԵ֤³ޤ .LP .LP -\f2servertool\fP をシャットダウンするには、\f2quit\fP と入力し、キーボードの \f2Enter\fP キーを押します。 +\f2servertool\fP 򥷥åȥ󤹤ˤϡ \f2quit\fP Ϥƥܡɤ \f2Enter\fP 򲡤ޤ .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o .na -\f2ネームサービス\fP @ +\f2͡ॵӥ\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/pack200.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/pack200.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/pack200.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,99 +19,79 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH pack200 1 "02 Jun 2010" +.TH pack200 1 "14 Apr 2011" .LP -.SH "名前" -pack200 \- JAR パックツール +.SH "̾" +pack200 \- JAR ѥåġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -終了ステータス +λơ .TP 2 o -関連項目 +Ϣ .TP 2 o -説明 +ջ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .LP \f4pack200\fP\f2 [ \fP\f2options\fP ] \f2output\-file\fP \f2JAR\-file\fP .LP .LP -オプションの指定順序に決まりはありません。コマンド行または properties ファイルに指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。 -.LP -.RS 3 - +ץλ˷ޤϤޤ󡣥ޥɹԤޤ properties ե˻ꤵ줿ǸΥץ󤬡˻ꤵ줿٤ƤΥץͥ褵ޤ .LP .RS 3 .TP 3 options -コマンド行オプション。 +ޥɹԥץ .TP 3 output\-file -出力ファイルの名前。 +ϥե̾ .TP 3 JAR\-file -入力ファイルの名前。 +ϥե̾ .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -\f2pack200\fP ツールは、Java \f2gzip\fP 圧縮プログラムを使用して、JAR ファイルを \f2pack200\fP 圧縮ファイルに変換する Java アプリケーションです。\f2pack200\fP ファイルは高圧縮のファイルで、帯域幅の節約やダウンロード時間の短縮や直接配備することができます。 +\f2pack200\fP ġϡJava gzip ̥ץѤ JAR ե \f2pack200\fP ̥եѴ \f2Java ץꥱ\fP Ǥ \f2pack200\fP եϹⰵ̤ΥեǡӰɻ֤ṳ̂ľ뤳ȤǤޤ .LP .LP -\f2pack200\fP ツールには、圧縮エンジンの設定や微調整を行うオプションが用意されています。 +\f2pack200\fP ġˤϡ̥󥸥ĴԤץѰդƤޤ .LP .SS -一般的な使用方法: -.LP -.RS 3 - +Ūʻˡ: .LP .LP \f2% pack200 myarchive.pack.gz myarchive.jar\fP .LP -.RE -.LP -この例では、デフォルトの \f2pack200\fP 設定で、\f2myarchive.pack.gz\fP が作成されます。 .LP -.SH "オプション" +Ǥϡ \f2ǥեȤ pack200 Ѥ\fP myarchive.pack.gz \f2ޤ\fP .LP - +.SH "ץ" .LP .LP \f4\-r \-\-repack\fP .LP -.RS 3 - .LP -.LP -\f2myarchive.jar\fP ファイルをパックした後にアンパックすることにより、JAR ファイルを生成します。生成されたファイルは、\f2jarsigner(1)\fP ツールの入力ファイルとして使用できます。 -.LP -.RS 3 - +ե \f2myarchive.jar\fP ѥåȥѥå뤳ȤǡJAR եޤ줿ե \f2jarsigner(1)\fP ġϥեȤƻѤǤޤ .LP .LP \f2% pack200 \-\-repack myarchive\-packer.jar myarchive.jar\fP @@ -119,158 +99,122 @@ .LP \f2% pack200 \-\-repack myarchive.jar\fP .LP -.RE -.RE .LP \f4\-g \-\-no\-gzip\fP .LP -.RS 3 - .LP -.LP -\f2pack200\fP ファイルを生成します。このオプションを指定するときは、適切な圧縮ツールを使用する必要があります。 また、ターゲットシステムでは、対応する圧縮解除ツールを使用する必要があります。 -.LP -.RS 3 - +\f2pack200\fP եޤΥץꤹȤϡŬڤʰ̥ġѤɬפޤޤåȥƥǤϡб밵̲ġѤɬפޤ .LP .LP \f2% pack200 \-\-no\-gzip myarchive.pack myarchive.jar\fP .LP -.RE -.RE .LP \f4\-G \-\-strip\-debug\fP .LP -.RS 3 - +.LP +ϤǥХåѤ°ޤ°ȤƤϡ \f2SourceFile\fP \f2LineNumberTable\fP \f2LocalVariableTable\fP \f2LocalVariableTypeTable\fP ʤɤ󤲤ޤ°Сɤȥ󥹥ȡΥϾʤޤǥХåεǽ¤ޤ .LP .LP -出力からデバッグ用の属性を削除します。対象となる属性には、\f2SourceFile\fP、\f2LineNumberTable\fP、\f2LocalVariableTable\fP、および \f2LocalVariableTypeTable\fP などがあります。これらの属性を削除すれば、ダウンロードとインストールのサイズは小さくなりますが、デバッガの機能は制限されます。 +\f4\-\-keep\-file\-order\fP +.LP .LP -.RE +ϥեΥեνݻޤ줬ǥեȤưǤ +.LP .LP \f4\-O \-\-no\-keep\-file\-order\fP .LP -.RS 3 - -.LP .LP -パックツールは、すべての要素を並べ替えて転送します。また、JAR ディレクトリ名を削除します。このため、ダウンロードのサイズは小さくなりますが、インデックスをはじめとする JAR ファイルの最適化機能は正常に動作しなくなることがあります。 +ѥåġϡ٤ƤǤ¤ؤžޤޤJAR ǥ쥯ȥ̾ޤΤᡢɤΥϾʤޤǥåϤȤ JAR եκŬǽưʤʤ뤳Ȥޤ .LP -.RE .LP \f4\-Svalue \-\-segment\-limit=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -この値は、各アーカイブセグメントの予想ターゲットサイズ N (バイト単位) です。N バイト以上を必要とする単一の入力ファイルには、 +ͤϡƥ֥Ȥͽۥåȥ N (Хñ) Ǥñϥեɬץ .br -独立したアーカイブセグメントが割り当てられます。たとえば、これは特殊な例ですが、値が \f2\-1\fP の場合、すべての入力ファイルを含む単一の巨大なセグメントが生成されます。 一方、値が \f20\fP の場合、クラスごとにセグメントが 1 つずつ生成されます。アーカイブセグメントのサイズが大きければ大きいほど断片化は起こりにくく、圧縮率も高くなります。しかし、こうしたセグメントを処理するためには、大量のメモリーが必要になります。 +N ХȤĶȡΥեˤΩ֥ȤƤޤüʥȤơͤ \f2\-1\fP ξϡ٤Ƥϥեޤ礭ñΥȤ졢ͤ \f20\fP ξϡ饹Ȥ˥Ȥ 1 Ĥޤ֥Ȥ礭ʤȡҲʤʤ갵Ψ⤯ʤޤνˤ¿Υ꡼ɬפǤ .LP .LP -各セグメントのサイズは、セグメント内で転送される入力ファイルのサイズと、このファイルの名前のサイズ、およびその他の転送プロパティーによって予測されます。 +ƥȤΥϡȤѴ뤽줾ϥեΥΤۤ̾ȤۤץѥƥΥ׻ƿ¬ޤ .LP .LP -デフォルトのサイズは \f21000000\fP (100 万バイト) です。これは、標準サイズの入力 JAR ファイルを単一セグメント内で転送できるサイズです。パックツールおよびアンパックツールのメモリー要件には制限が課されます。 +ǥեȤ \-1 ǤĤޤꡢѥåġϾñΥȽϥեޤü礭ʽϥե뤬ˤϡϥե򥻥Ȳ (ʬ) Ƥ꾮 JAR ˤ뤳Ȥ򶯤ᤷޤ .LP .LP -この制限が課されていない 10M バイトの JAR パックファイルは通常、元の 10% 程度のサイズにパックされます。 しかし、パックツールでより大きな Java ヒープ (セグメントの制限の約 10 倍) を必要とする場合もあります。 +¤ݤƤʤ 10M ХȤ JAR ѥåե̾ 10% ٤Υ˥ѥåޤѥåġǤ礭 Java ҡ (Ȥ¤ 10 ) ɬפȤ⤢ޤ .LP -.RE .LP \f4\-Evalue \-\-effort=\fP\f2value\fP .LP -.RS 3 - +.LP +ñ 10 ʿͤꤷ硢ѥåġϡꤵ줿Ψǥ֤򰵽̤ޤ٥ \f21\fP ξϡŪû̻֤Ǥ礭Υե뤬ޤ٥ \f29\fP ξϡĹ֤ΤΡ갵Ψι⤤ե뤬ޤü \f20\fP ꤷϡ JAR ե򰵽̤ʤľܥԡޤJSR 200 ɸǤϡ٤Ƥβץब̤ʾ򥢡ΤΥѥ롼Ȳ᤹褦˵ꤷƤޤ .LP .LP -単一の 10 進数値を指定した場合、パックツールは、指定された圧縮率でアーカイブを圧縮します。レベル \f21\fP の場合、圧縮速度は速くても圧縮率はそれほど高くありません。 レベル \f29\fP の場合、圧縮速度は遅くても圧縮率は高くなります。特殊な値 \f20\fP を指定した場合は、元の JAR ファイルを圧縮なしで直接コピーします。JSR 200 標準では、すべてのアンパックツールはこの特殊な処理をアーカイブ全体のパススルーとして理解する必要があります。 -.LP +ǥեȤ \f25\fPǤξ硢ɸŪʻ֤Ŭڤʰ̤Ԥޤ .LP -デフォルト値は \f25\fP です。 この場合、標準的な時間で、適度な圧縮が行われます。 -.LP -.RE .LP \f4\-Hvalue \-\-deflate\-hint=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -デフォルト値を上書きし、入力情報を保持します。 転送されるアーカイブのサイズは大きくなります。可能な値: +ǥեͤ񤭤Ͼ¸ޤž륢֤Υ礭ʤޤ֤ͤϼΤɤ줫ˤʤޤ .LP .RS 3 .TP 3 true .TP 3 false -どちらの場合でも、パックツールはデフレーションヒントを出力アーカイブに設定します。 アーカイブ要素の個々のデフレーションヒントは転送しません。 +ɤξǤ⡢ѥåġϥǥե졼ҥȤϥ֤ꤷޤǤθġΥǥե졼ҥȤžޤ .RE .LP .RS 3 .TP 3 keep -入力 JAR 内のデフレーションヒントを保持します (デフォルト)。 + JAR.ǸĤäǥե졼ҥȤݻޤ(줬ǥեȤǤ) .RE .LP -.RE .LP \f4\-mvalue \-\-modification\-time=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -可能な値: +֤ͤϼΤɤ줫ˤʤޤ .LP .RS 3 .TP 3 latest -パックツールは、元のアーカイブの全エントリの最終更新時刻か、そのセグメントのすべてのエントリの最終更新時刻を特定しようとします。この単一の値はセグメントの一部として転送され、各セグメントの全エントリに適用されます。この場合、すべてのインストールファイルに単一の日付が設定されるという問題はありますが、アーカイブの転送サイズを少し小さくすることができます。 +ѥåġϡΥ֤ȥκǽ狼ΥȤΤ٤ƤΥȥκǽꤷ褦ȤޤñͤϥȤΰȤž졢ƥȤȥŬѤޤξ硢٤ƤΥ󥹥ȡեñդꤵȤϤޤ֤ž򾯤뤳ȤǤޤ .TP 3 keep -入力 JAR 内の更新時刻を保持します (デフォルト)。 + JAR. ǸĤäѹݻޤ(줬ǥեȤǤ) .RE .LP -.RE .LP \f4\-Pfile \-\-pass\-file=\fP\f2file\fP .LP -.RS 3 - -.LP .LP -ファイルを圧縮せず、バイト単位で転送するように指定します。このオプションを繰り返し使用して、複数のファイルを指定できます。パス名の変換は行われません。 システムファイルの区切り文字が JAR ファイルの区切り文字「\f2/\fP」で置き換えられるだけです。ファイル名は、JAR ファイル内の文字列と完全に一致していなければなりません。file にディレクトリ名を指定した場合、そのディレクトリ内のすべてのファイルが転送されます。 +ե򰵽̤Хñ̤ž褦˻ꤷޤΥץ򷫤֤ѤơʣΥեǤޤƥե륻ѥ졼 JAR ե륻ѥ졼\f2/\fPפ֤ѥ̾ѴϹԤޤ ̤Ȥե̾ϡʸȤΤ JAR եǤνиȰפƤɬפޤfile ˥ǥ쥯ȥ̾ꤷ硢Υǥ쥯ȥΤ٤ƤΥե뤬žޤ .LP -.RE .LP \f4\-Uaction \-\-unknown\-attribute=\fP\f2action\fP .LP -.RS 3 - .LP -.LP -デフォルトの動作を無効にします。 たとえば、不明な属性を含むクラスファイルを指定したアクションで転送します。アクションとして指定可能な値: +ǥեȤư̵ˤޤȤС°ޤ९饹եꤷžޤȤƻǽ: .LP .RS 3 .TP 3 error -\f2pack200\fP の操作に失敗し、適切な解説が表示されます。 +\f2pack200\fP ˼ԤŬڤʲ⤬ɽޤ .TP 3 strip -属性はドロップされます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。 +°ϥɥåפޤ: VM ɬ°ȥ饹ξ㳲ȯ뤳Ȥޤ .TP 3 pass -この属性が検出された場合、クラス全体が 1 つのリソースとして転送されます。 +°Ф줿硢饹Τ 1 ĤΥ꥽Ȥžޤ .RE .LP -.RE .LP \f4\-Cattribute\-name=\fP\f2layout\fP \f3\-\-class\-attribute=\fP\f2attribute\-name=action\fP .br @@ -280,42 +224,32 @@ .br \f4\-Dattribute\-name=\fP\f2layout\fP \f3\-\-code\-attribute=\fP\f2attribute\-name=action\fP .LP -.RS 3 - .LP -.LP -これら 4 つのオプションでは、クラスエンティティーに Class 属性、Field 属性、Method 属性、Code 属性などの属性のレイアウトを指定できます。attribute\-name には、これからレイアウトまたはアクションを定義する属性の名前を指定します。アクションとして指定可能な値: + 4 ĤΥץǤϡ饹ƥƥ Class °Field °Method °Code °ʤɤ°Υ쥤ȤǤޤattribute\-name ˤϡ줫쥤Ȥޤϥ°̾ꤷޤȤƻǽ: .LP .RS 3 .TP 3 -(一部のレイアウト文字列) -レイアウト言語は、JSR 200 仕様に定義されています。 +some\-layout\-string +쥤ȸϡJSR 200 ͤƤޤ .LP -例: \f2\-\-class\-attribute=SourceFile=RUH\fP +: \f2\-\-class\-attribute=SourceFile=RUH\fP .TP 3 error -この属性が検出された場合、pack200 の操作に失敗し、適切な解説が表示されます。 +°Ф줿硢pack200 ˼ԤŬڤʲ⤬ɽޤ .TP 3 strip -この属性が検出された場合、属性は出力から削除されます。注: VM 必須属性を削除すると、クラスローダーの障害が発生することがあります。 +°Ф줿硢°ϽϤޤ: VM ɬ°ȥ饹ξ㳲ȯ뤳Ȥޤ .RE .LP .LP -例: \f2\-\-class\-attribute=CompilationID=pass\fP というこの属性を含むクラスファイルを転送します。 パックツールは、その他のアクションを行いません。 +: \f2\-\-class\-attribute=CompilationID=pass\fP Ȥ°ޤ९饹եžޤѥåġϡ¾ΥԤޤ .LP -.RE .LP \f4\-f\fP\f2 \fP\f2pack.properties\fP \f3\-\-config\-file=\fP\f2pack.properties\fP .LP -.RS 3 - .LP -.LP -コマンド行に、パックツールを初期化するための Java プロパティーが含まれている設定ファイルを指定できます。 -.LP -.RS 3 - +ޥɹԤˡѥåġ뤿 Java ץѥƥޤޤƤեǤޤ .LP .LP \f2% pack200 \-f pack.properties myarchive.pack.gz myarchive.jar\fP @@ -340,70 +274,54 @@ .br \f2segment.limit=\-1\fP .LP -.RE -.RE -.RS 3 - -.LP .LP \f4\-v \-\-verbose\fP .LP -.RS 3 - -.LP .LP -最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが出力されます。 +Ǿ¤ΥåϤޤΥץʣꤹȡĹåϤޤ .LP -.RE .LP \f4\-q \-\-quiet\fP .LP -.RS 3 - -.LP .LP -メッセージを表示せずに動作します。 +åɽưޤ .LP -.RE .LP \f4\-lfilename \-\-log\-file=\fP\f2filename\fP .LP -.RS 3 - +.LP +ϥåΥեꤷޤ +.LP +.LP +\f4\-? \-h \-\-help\fP .LP .LP -出力メッセージのログファイルを指定します。 +Υޥɤ˴ؤإ׾Ϥޤ .LP -.RE .LP -\f4\-Joption\fP +\f4\-V \-\-version\fP .LP -.RS 3 - +.LP +Υޥɤ˴ؤСϤޤ .LP .LP -\f2pack200\fP によって呼び出される Java 起動ツールにオプションを渡します。たとえば、\f2\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。このオプションは \f2\-X\fP で始まっていませんが、\f2pack200\fP の標準オプションではありません。\f2\-J\fP を使って、Java で記述されたアプリケーションを実行する背後の VM にオプション渡すことは、よく行われています。 +\f4\-J\fP\f2option\fP +.LP .LP -.RE -.RE -.SH "終了ステータス" +\f2option\fP \f2pack200\fP ƤӽФ줿 Java ưġϤޤȤС \f2\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤΥץ \f2\-X\fP ǻϤޤäƤޤ󤬡 \f2pack200\fP ɸ४ץǤϤޤ \f2\-J\fP ȤäơJava ǵҤ줿ץꥱ¹Ԥظ VM ˥ץϤȤϡ褯ԤƤޤ .LP - +.SH "λơ" .LP .LP -次の終了値が返されます。 -.LP -.RS 3 - +νλ֤ͤޤ .LP .LP -\f2\ 0\fP "成功" +\f2\ 0\fP ェλ .LP .LP -\f2>0\fP "エラー" +\f2>0\fP 顼ȯ .LP -.RE -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -412,35 +330,33 @@ .TP 2 o .na -\f2Java SE のドキュメント\fP @ +\f2Java SE Υɥ\fP @ .fi http://java.sun.com/javase/6/docs/index.html .TP 2 o .na -\f2「Java 配備ガイド \- Pack200」\fP @ +\f2Java \- Pack200\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/pack200.html .TP 2 o -jar(1) \- Java Archive ツール」 +jar(1) \- Java Archive ġ .TP 2 o -「jarsigner(1) \- JAR 署名および検証ツール」 +jarsigner(1) \- JAR ̾Ӹڥġ .TP 2 o -\f2attributes(5)\fP のマニュアルページ +\f2attributes(5) \fP ޥ˥奢ڡ .RE .LP -.SH "注意事項" -.LP - +.SH "ջ" .LP .LP -このコマンドと \f2pack(1)\fP を混同しないでください。これらは別製品です。 +Υޥɤ \f2pack(1)\fP ƱʤǤʤǤ .LP .LP -SDK に付属する Java SE API 仕様との相違が見つかった場合には、仕様を優先してください。 +SDK ° Java SE API ͤȤ㤬Ĥäˤϡͤͥ褷Ƥ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/policytool.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/policytool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/policytool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,84 +19,82 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH policytool 1 "02 Jun 2010" +.TH policytool 1 "14 Apr 2011" .LP -.SH "名前" -policytool \- PolicyTool 管理 GUI ユーティリティー +.SH "̾" +policytool \- PolicyTool GUI 桼ƥƥ .LP -\f3policytool\fP は、ユーティリティー GUI 経由で取得したユーザー入力に基づいて、プレーンテキストのポリシーファイルを読み書きします。 +\f3policytool\fP ϡ桼ƥƥ GUI ͳǼ桼Ϥ˴Ťơץ졼ƥȤΥݥꥷեɤ߽񤭤ޤ .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -関連項目 +Ϣ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .RS 3 .TP 3 \ .TP 3 -policytool 管理者ユーティリティーを実行します +policytool ԥ桼ƥƥ¹Ԥޤ \f4policytool\fP .TP 3 -policytool を実行し、指定されたポリシーファイルを読み込みます -\f4policytool\fP\f2 [\-file\ \fP\f2filename\fP\f2]\fP +policytool ¹Ԥꤵ줿ݥꥷեɤ߹ߤޤ +\f4policytool\fP\f2[\-file\ \fP\f2filename\fP\f2]\fP .TP 3 \ .TP 3 -各要素は次のとおりです。 +ʲˤ줾ΰ̣򼨤ޤ .RS 3 .TP 3 file -ローカルポリシーファイルを読み込むように \f2policytool\fP に指示します +ݥꥷեɤ߹褦 \f2policytool\fP ˻ؼޤ .TP 3 filename -ファイル名 +ե̾ .RE -.SH "説明" +.SH "" .LP -\f3policytool\fP は、ユーザーがローカルポリシーファイルの内容を管理することを可能にする GUI です。詳細については、 +\f3policytool\fP ϡ桼ݥꥷեƤ뤳Ȥǽˤ GUI Ǥܺ٤ˤĤƤϡ .na -\f2「ポリシーファイル作成および管理ツール」\fP @ +\f2֥ݥꥷեӴġ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.htmlを参照してください。 -.SH "オプション" +http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.html򻲾ȤƤ +.SH "ץ" .RS 3 .TP 3 file -\f2filename\fP を読み込みます。 -.SH "関連項目" +\f2filename\fP ɤ߹ߤޤ +.SH "Ϣ" .na -\f2「Default Policy Implementation and Syntax」\fP @ +\f2Default Policy Implementation and Syntax\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyFiles.html .br .na -\f2「Policy Tool Users' Guide」\fP @ +\f2Policy Tool Users' Guide\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/PolicyGuide.html .br .na -\f2「Security Permissions」\fP @ +\f2Security Permissions\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/permissions.html .br .na -\f2「Security Overview」\fP @ +\f2Security Overview\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/security/overview/jsoverview.html .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/rmic.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/rmic.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmic.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmic 1 "02 Jun 2010" +.TH rmic 1 "14 Apr 2011" .LP -.SH "名前" -rmic \- Java RMI コンパイラ -.LP -.RS 3 - +.SH "̾" +rmic \- Java RMI ѥ .LP .LP -\f3rmic\fP によって、JRMP または IIOP プロトコルを使用するリモートオブジェクトのスタブ、スケルトン、および Tie クラスが生成されます。また、OMG IDL も生成されます。 +\f3rmic\fP ˤäơJRMP ޤ IIOP ץȥѤ⡼ȥ֥ȤΥ֡ȥ󡢤 Tie 饹ޤޤOMG IDL ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,12 +39,10 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmic\fP コンパイラによって、リモートオブジェクトの、スタブ、スケルトンクラスファイル (JRMP プロトコル)、およびスタブと Tie クラスファイルの組み合わせ (IIOP プロトコル) が生成されます。リモートオブジェクトの実装クラスであるこれらのクラスファイルは、Java プログラミング言語のクラスをコンパイルしたときに生成されます。リモート実装クラスは、\f2java.rmi.Remote\fP インタフェースを実装するクラスです。\f3rmic\fP コマンドでのクラス名は、そのクラスが \f3javac\fP コマンドでコンパイルが成功していて、かつ完全なパッケージ名が指定されている必要があります。たとえば、クラスファイル名 \f2HelloImpl\fP で \f3rmic\fP を実行するには、次のようにします。 +\f3rmic\fP ѥˤäơ⡼ȥ֥ȤΡ֡ȥ󥯥饹ե (JRMP ץȥ)ӥ֤ Tie 饹եȤ߹碌 (IIOP ץȥ) ޤ⡼ȥ֥Ȥμ饹Ǥ뤳Υ饹եϡJava ץߥ󥰸Υ饹򥳥ѥ뤷Ȥޤ⡼ȼ饹ϡ\f2java.rmi.Remote\fP 󥿥ե륯饹Ǥ\f3rmic\fP ޥɤǤΥ饹̾ϡΥ饹 \f3javac\fP ޥɤǥѥ뤬ƤơĴʥѥå̾ꤵƤɬפޤȤС饹ե̾ \f2HelloImpl\fP \f3rmic\fP ¹ԤˤϡΤ褦ˤޤ .LP .nf \f3 @@ -62,37 +54,32 @@ .LP .LP -\f2HelloImpl_Stub.class\fP ファイルが、クラスのパッケージ名が付いた \f2hello\fP サブディレクトリに作成されます。 +\f2HelloImpl_Stub.class\fP ե뤬饹Υѥå̾դ \f2hello\fP ֥ǥ쥯ȥ˺ޤ .LP .LP -リモートオブジェクトの「スケルトン」は JRMP プロトコルサーバー側のエンティティーで、実際のリモートオブジェクト実装を呼び出すメソッドを含みます。 +⡼ȥ֥ȤΡ֥ȥפ JRMP ץȥ륵С¦ΥƥƥǡºݤΥ⡼ȥ֥ȼƤӽФ᥽åɤޤߤޤ .LP .LP -リモートオブジェクトの「Tie」は、スケルトンと同様にサーバー側のエンティティーですが、IIOP プロトコルを使ってクライアントと通信します。 +⡼ȥ֥ȤΡTieפϡȥƱͤ˥С¦ΥƥƥǤIIOP ץȥȤäƥ饤Ȥ̿ޤ .LP .LP -「スタブ」とは、リモートオブジェクトのクライアント側での代理です。 スタブは、リモートオブジェクトのメソッド呼び出しを、実物のリモートオブジェクトが常駐するサーバーと通信する役割を持ちます。したがって、クライアントのリモートオブジェクトへの参照は、実際はローカルスタブへの参照となります。 -.LP -.LP -デフォルトで \f3rmic\fP では、1.2 JRMP スタブプロトコルバージョンだけを使用するスタブクラスを生成します。 これは、\f2\-v1.2\fP オプションを指定した場合と同じ動作です。(5.0 以前では \f2\-vcompat\fP オプションがデフォルトであったことに注意。) IIOP プロトコル用のスタブおよび Tie クラスを生成するには \f2\-iiop\fP オプションを使用します。 +֥֡פȤϡ⡼ȥ֥ȤΥ饤¦ǤǤ֤ϡ⡼ȥ֥ȤΥ᥽åɸƤӽФ򡢼ʪΥ⡼ȥ֥Ȥ󤹤륵С̿ޤäơ饤ȤΥ⡼ȥ֥ȤؤλȤϡºݤϥ륹֤ؤλȤȤʤޤ .LP .LP -スタブはリモートインタフェースだけを実装し、リモートオブジェクトが実装する局所インタフェースは実装していません。JRMP スタブはリモートオブジェクト自体が実装するリモートインタフェースと同じものを実装しているので、クライアントは、キャストや型チェックに Java プログラミング言語に組み込まれた演算子を使用することができます。IIOP の場合は、\f2PortableRemoteObject.narrow\fP メソッドを使わなければなりません。 +ǥեȤ \f3rmic\fP Ǥϡ1.2 JRMP ֥ץȥСѤ륹֥饹ޤϡ\f2\-v1.2\fP ץꤷƱưǤ(5.0 Ǥ \f2\-vcompat\fP ץ󤬥ǥեȤǤäȤաIIOP ץȥѤΥ֤ Tie 饹ˤ \f2\-iiop\fP ץѤޤ +.LP .LP -.SH "オプション" +֤ϥ⡼ȥ󥿥ե⡼ȥ֥Ȥɽꥤ󥿥եϼƤޤJRMP ֤ϥ⡼ȥ֥ȼΤ⡼ȥ󥿥եƱΤƤΤǡ饤Ȥϡ㥹Ȥ䷿å Java ץߥ󥰸Ȥ߹ޤ줿黻ҤѤ뤳ȤǤޤIIOP ξϡ\f2PortableRemoteObject.narrow\fP ᥽åɤȤʤФʤޤ .LP - +.SH "ץ" .LP .RS 3 .TP 3 \-bootclasspath path -ブートストラップクラスファイルの位置をオーバーライドします。 +֡ȥȥåץ饹եΰ֤򥪡С饤ɤޤ .TP 3 \-classpath path -\f3rmic\fP がクラスを探すためのパスを指定します。このオプションは、デフォルトや CLASSPATH 環境変数設定を上書きします。ディレクトリはコロンで分割します。したがって、\f2path\fP の一般形式は次のようになります。 -.RS 3 - -.LP +\f3rmic\fP 饹õΥѥꤷޤΥץϡǥեȤ CLASSPATH Ķѿ񤭤ޤǥ쥯ȥϥʬ䤷ޤäơ\f2path\fP ΰ̷ϼΤ褦ˤʤޤ .nf \f3 .fl @@ -100,11 +87,7 @@ .fl \fP .fi -.RE -例を示します。 -.RS 3 - -.LP +򼨤ޤ .nf \f3 .fl @@ -112,13 +95,9 @@ .fl \fP .fi -.RE .TP 3 \-d directory -生成されたクラス階層の出力先ディレクトリのルートを指定します。このオプションを使えば、スタブ、スケルトン、および Tie ファイルを格納するディレクトリを指定できます。たとえば、次のようにして使います。 -.RS 3 - -.LP +줿饹ؤνǥ쥯ȥΥ롼ȤꤷޤΥץȤС֡ȥ󡢤 Tie եǼǥ쥯ȥǤޤȤСΤ褦ˤƻȤޤ .nf \f3 .fl @@ -126,49 +105,43 @@ .fl \fP .fi -.RE -\f2MyClass\fP から取得したスタブとスケルトンクラスを \f2/java/classes/foo\fP ディレクトリに置きます。\f2\-d\fP オプションが指定されていない場合は、\f2「\-d\ .」\fPが指定されていると見なされます。ターゲットクラスのパッケージ階層が現在のディレクトリに作成され、スタブ、Tie、およびスケルトンファイルがそのディレクトリに格納されます。(以前のバージョンの \f3rmic\fP では、\f2\-d\fP が指定されていない場合は、パッケージ階層は作成されず、出力ファイルはすべて現在のディレクトリに直接格納されていた)。 +MyClass \f2֤ȥȥ󥯥饹\fP \f2/java/classes/foo\fP ǥ쥯ȥ֤ޤ\f2\-d\fP ץ󤬻ꤵƤʤϡ\f2\-d\ .\fPꤵƤȸʤޤåȥ饹ΥѥåؤߤΥǥ쥯ȥ˺졢֡Tieӥȥե뤬Υǥ쥯ȥ˳Ǽޤ(ΥС \f3rmic\fP Ǥϡ\f2\-d\fP ꤵƤʤϡѥåؤϺ줺ϥեϤ٤ƸߤΥǥ쥯ȥľܳǼƤ) .br \ .TP 3 \-extdirs path -インストール型拡張機能の位置をオーバーライドします。 +󥹥ȡ뷿ĥǽΰ֤򥪡С饤ɤޤ .TP 3 \-g -局所変数を含むすべてのデバッグ情報を生成します。デフォルトでは、行番号情報だけが生成されます。 -.LP +ɽѿޤह٤ƤΥǥХåޤǥեȤǤϡֹޤ .TP 3 \-idl -\f2rmic\fP によって、指定したクラスおよび参照されたクラスの OMG IDL が生成されます。IDL では、プログラミング言語に依存せずに、宣言するだけでオブジェクトの API を指定することができます。IDL は、メソッドおよびデータの仕様として使用します。 CORBA バインディングを提供する任意の言語で、メソッドおよびデータの作成および呼び出しを行うことができます。これらの言語には、Java および C++ が含まれています。詳細は、 +\f2rmic\fP ˤäơꤷ饹ӻȤ줿饹 OMG IDL ޤIDL Ǥϡץߥ󥰸˰¸ˡǥ֥Ȥ API ꤹ뤳ȤǤޤIDL ϡ᥽åɤӥǡλͤȤƻѤޤCORBA Хǥ󥰤󶡤Ǥդθǡ᥽åɤӥǡκӸƤӽФԤȤǤޤθˤϡJava C++ ޤޤƤޤܺ٤ϡ .na \f2Java Language to IDL Mapping\fP @ .fi -http://www.omg.org/technology/documents/formal/java_language_mapping_to_omg_idl.htm (OMG) を参照してください。 +http://www.omg.org/technology/documents/formal/java_language_mapping_to_omg_idl.htm (OMG) 򻲾ȤƤ .LP -\f2\-idl\fP オプションを使うときは、ほかのオプションも指定できます。 +\f2\-idl\fP ץȤȤϡۤΥץǤޤ .RS 3 .TP 3 -\-always または \-alwaysgenerate -既存のスタブ、Tie、および IDL が入力クラスより新しいときでも、強制的に生成し直します。 +\-always ޤ \-alwaysgenerate +¸Υ֡Tie IDL ϥ饹꿷ȤǤ⡢Ūľޤ .TP 3 \-factory -生成された IDL で factory キーワードを使います。 +줿 IDL factory ɤȤޤ .TP 3 \-idlModule\ fromJavaPackage[.class]\ toIDLModule -IDLEntity パッケージのマップを指定します。例を示します。 \f2\-idlModule foo.bar my::real::idlmod\fP +IDLEntity ѥåΥޥåפꤷޤ򼨤ޤ \f2\-idlModule foo.bar my::real::idlmod\fP .TP 3 \-idlFile\ fromJavaPackage[.class]\ toIDLFile -IDLEntity ファイルのマップを指定します。例を示します。 \f2\-idlFile test.pkg.X TEST16.idl\fP\ +IDLEntity եΥޥåפꤷޤ򼨤ޤ \f2\-idlFile test.pkg.X TEST16.idl\fP\ .RE -.LP .TP 3 \-iiop -\f2rmic\fP によって、JRMP のスタブとスケルトンクラスの代わりに、IIOP のスタブと Tie クラスが生成されます。スタブクラスは、リモートオブジェクトのローカルプロキシで、クライアントからサーバーに呼び出しを送信するときに使われます。各リモートインタフェースにはスタブクラスが必要です。 スタブクラスによってリモートインタフェースが実装されます。クライアントでリモートオブジェクトを参照するときは、実際にはスタブを参照することになります。タイクラスは、サーバー側で着呼を処理し、その呼び出しを適切な実装クラスにディスパッチするときに使われます。各実装クラスには、タイクラスが必要です。 +\f2rmic\fP ˤäơJRMP Υ֤ȥȥ󥯥饹ˡIIOP Υ֤ Tie 饹ޤ֥饹ϡ⡼ȥ֥ȤΥץǡ饤Ȥ饵С˸ƤӽФȤ˻Ȥޤƥ⡼ȥ󥿥եˤϥ֥饹ɬפǤ֥饹ˤäƥ⡼ȥ󥿥եޤ饤Ȥǥ⡼ȥ֥Ȥ򻲾ȤȤϡºݤˤϥ֤򻲾Ȥ뤳Ȥˤʤޤ饹ϡС¦ƤθƤӽФŬڤʼ饹˥ǥѥåȤ˻ȤޤƼ饹ˤϡ饹ɬפǤ .LP -\f2\-iiop\fP を使って \f2rmic\fP を呼び出すと、次の命名規約に準拠したスタブと Tie が生成されます。 -.RS 3 - -.LP +\f2\-iiop\fP Ȥä \f2rmic\fP ƤӽФȡ̿̾˽򤷤֤ Tie ޤ .nf \f3 .fl @@ -182,66 +155,60 @@ .fl \fP .fi -.RE .LP -\f2\-iiop\fP オプションを使うときは、ほかのオプションも指定できます。 +\f2\-iiop\fP ץȤȤϡۤΥץǤޤ .RS 3 .TP 3 -\-always または \-alwaysgenerate -既存のスタブ、Tie、および IDL が入力クラスより新しいときでも、強制的に生成し直します。 +\-always ޤ \-alwaysgenerate +¸Υ֡Tie IDL ϥ饹꿷ȤǤ⡢Ūľޤ .TP 3 \-nolocalstubs -同じプロセスのクライアントとサーバーに対して最適化されたスタブを作成しません。 +ƱץΥ饤ȤȥСФƺŬ줿֤ޤ .TP 3 \-noValueMethods -\f2\-idl\fP オプションとともに使われなければなりません。発行された IDL に、\f2valuetype\fP メソッドおよび初期化子を追加しません。このメソッドおよび初期化子は、\f2valuetype\fP の場合はオプションです。 \f2\-idl\fP オプションを使うときは、 \f2\-noValueMethods\fP オプションを指定しない限り生成されます。 + \f2\-idl\fP ץȤȤ˻ȤʤФʤޤȯԤ줿 IDL ˡ\f2valuetype\fP ᥽åɤӽҤɲäޤ󡣤Υ᥽åɤӽҤϡ\f2valuetype\fP ξϥץǤ \f2\-idl\fP ץȤȤϡ \f2\-noValueMethods\fP ץꤷʤ¤ޤ .TP 3 \-poa -継承が \f2org.omg.CORBA_2_3.portable.ObjectImpl\fP から \f2org.omg.PortableServer.Servant\fP に変わります。 +Ѿ \f2org.omg.CORBA_2_3.portable.ObjectImpl\fP \f2org.omg.PortableServer.Servant\fP Ѥޤ .LP .na \f2Portable Object Adapter\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html (POA) の \f2PortableServer\fP モジュールは、ネイティブの \f2Servant\fP 型を定義します。Java プログラミング言語では、\f2Servant\fP 型は、Java の \f2org.omg.PortableServer.Servant\fP クラスにマッピングされています。これはあらゆる POA サーバント実装の基底クラスとなり多数のメソッドを提供します。 これらのメソッドはアプリケーションプログラマが呼び出すだけではなく、POA 自身からも呼び出され、場合によってはサーバントの動作を制御するためにユーザーがオーバーライドすることもあります。OMG IDL to Java Language Mapping Specification、CORBA V 2.3.1 ptc/00\-01\-08.pdf に準拠しています。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/POA.html (POA) \f2PortableServer\fP ⥸塼ϡͥƥ֤ \f2Servant\fP ޤJava ץߥ󥰸Ǥϡ\f2Servant\fP Java \f2org.omg.PortableServer.Servant\fP 饹˥ޥåפޤΥ饹ϡ٤Ƥ POA Хȼδ쥯饹ȤƵǽץꥱץޤƤӽФȤΤǤ뤤ĤΥ᥽åɤΤۤˡPOA ΤΤˤäƸƤӽФ졢ХȤư椹뤿˥桼С饤ɤǤ᥽åɤ󶡤ޤOMG IDL to Java Language Mapping SpecificationCORBA V 2.3.1 ptc/00\-01\-08.pdf ˽򤷤Ƥޤ .RE .TP 3 \-J -\f2\-J\fP の後ろに続くオプションを \f2java\fP インタプリタに引き渡します。 \f2java\fP オプションと組み合わせて使います (\f2\-J\fP と \f2java\fP オプションの間にスペースは入れない)。 +\f2\-J\fP θ³ץ \f2java\fP 󥿥ץ꥿˰Ϥޤ \f2java\fP ץȤ߹碌ƻȤޤ (\-J java ץδ֤˥ڡʤ) .TP 3 -\-keep または \-keepgenerated -スタブ、スケルトン、または Tie クラスのための \f2.java\fP ソースファイルを \f2.class\fP ファイルと同じディレクトリに残します。 +\-keep ޤ \-keepgenerated +֡ȥ󡢤ޤ Tie 饹Τ \f2.java\fP ե \f2.class\fP եƱǥ쥯ȥ˻Ĥޤ .TP 3 \-nowarn -警告をオフにします。このオプションを指定すると、コンパイラは警告を表示しません。 -.LP +ٹ򥪥դˤޤΥץꤹȡѥϷٹɽޤ +.TP 3 +\-nowrite +ѥ뤷饹ե륷ƥ˽񤭹ߤޤ .TP 3 \-vcompat -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 ξΥ֥ץȥС򥵥ݡȤޤ줿饹ξ⡼ɤ򥵥ݡȤ뤿ˡ礭ʤޤ .TP 3 \-verbose -コンパイラやリンカーが、コンパイルされているクラスやロードされているクラスファイルについてのメッセージを表示するようにします。 -.LP +ѥ󥫡ѥ뤵Ƥ륯饹ɤƤ륯饹եˤĤƤΥåɽ褦ˤޤ .TP 3 \-v1.1 -1.1 JRMP スタブプロトコルバージョンのみのスタブおよびスケルトンクラスを生成します。このオプションが使用できるのは、JDK 1.1 から \f3rmic\fP ツールで生成され、アップグレードできない (さらにダイナミッククラスローディングを使用していない) 、既存の静的配備されたスタブクラスに対し、直列化互換性のあるスタブクラスを生成場合だけです。 -.LP +1.1 JRMP ֥ץȥСΤߤΥ֤ӥȥ󥯥饹ޤΥץ󤬻ѤǤΤϡJDK 1.1 \f3rmic\fP ġ졢åץ졼ɤǤʤ (˥ʥߥå饹ǥ󥰤ѤƤʤ) ¸Ū줿֥饹Фľ󲽸ߴΤ륹֥饹Ǥ .TP 3 \-v1.2 -(デフォルト) 1.2 JRMP スタブプロトコルバージョンのみのスタブクラスを生成します。スケルトンクラスは 1.2 スタブプロトコルバージョンで使用できないため、このオプションではスケルトンクラスは生成されません。生成されたスタブクラスは、JDK 1.1 仮想マシンにロードされても動作しません。 +(ǥե) 1.2 JRMP ֥ץȥСΤߤΥ֥饹ޤȥ󥯥饹 1.2 ֥ץȥСǻѤǤʤᡢΥץǤϥȥ󥯥饹ޤ줿֥饹ϡJDK 1.1 ۥޥ˥ɤƤưޤ .RE .LP -.SH "環境変数" -.LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。次に例を示します。 -.RS 3 - -.LP +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -250,15 +217,12 @@ \fP .fi .RE -.RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -java(1)、javac(1)、 +java(1)javac(1) .na \f2CLASSPATH\fP @ .fi diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/rmid.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/rmid.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmid.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmid 1 "02 Jun 2010" +.TH rmid 1 "14 Apr 2011" .LP -.SH "名前" -rmid \- Java RMI 起動システムデーモン -.LP -.RS 3 - +.SH "̾" +rmid \- Java RMI ưƥǡ .LP .LP -\f3rmid\fP で起動システムデーモンを開始すると、オブジェクトを仮想マシン (VM) に登録して起動できるようになります。 +\f3rmid\fP ǵưƥǡ򳫻Ϥȡ֥Ȥۥޥ (VM) ϿƵưǤ褦ˤʤޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,23 +39,21 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmid\fP ツールは、起動システムデーモンを開始します。起動システムデーモンを開始してからでないと、起動可能オブジェクトを起動システムに登録したり、VM 内で起動したりすることができません。起動可能なリモートオブジェクトを使ったプログラムの作成方法の詳細は、 +\f3rmid\fP ġϡưƥǡ򳫻Ϥޤưƥǡ򳫻ϤƤǤʤȡưǽ֥ȤưƥϿꡢVM ǵưꤹ뤳ȤǤޤ󡣵ưǽʥ⡼ȥ֥ȤȤäץκˡξܺ٤ϡ .na -\f2「Java RMI 仕様」\fP @ +\f2Java RMI ͡\fP @ .fi -http://java.sun.com/javase/6/docs/platform/rmi/spec/rmiTOC.htmlおよび +http://java.sun.com/javase/6/docs/platform/rmi/spec/rmiTOC.html .na -\f2「起動のチュートリアル」\fP @ +\f2ֵưΥ塼ȥꥢ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.htmlを参照してくだ さい。 +http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.html򻲾ȤƤ .LP .LP -デーモンを起動するには、次のように、セキュリティーポリシーファイルを指定して \f2rmid\fP コマンドを実行します。 +ǡưˤϡΤ褦ˡƥݥꥷեꤷ \f2rmid\fP ޥɤ¹Ԥޤ .LP .nf \f3 @@ -73,23 +65,23 @@ .LP .LP -\f3注:\fP\f2rmid\fP の Sun の 実装を実行する場合、デフォルトでは、セキュリティーポリシーファイルを指定する必要があります。 それは、起動グループ用に VM を起動するために各 \f2ActivationGroupDesc\fP 内の情報を使用できるかどうかを \f2rmid\fP が検証できるようにするためです。特に、\f2ActivationGroupDesc\fP のコンストラクタに渡される \f2CommandEnvironment\fP や任意の \f2Properties\fP によって指定されるコマンドおよびオプションは、\f2rmid\fP のセキュリティーポリシーファイルの中で明示的に許可することが必要になりました。\f2sun.rmi.activation.execPolicy\fP プロパティーの値は、起動グループ用に VM を起動するために \f2ActivationGroupDesc\fP 内の情報を使用できるかどうかを判断するときに \f2rmid\fP が使用するポリシーを決定します。 +\f3:\fP \f2rmid\fP Sun ¹Ԥ硢ǥեȤǤϡƥݥꥷեꤹɬפޤϡ \f2rmid\fP ư롼Ѥ VM ư뤿˳ \f2ActivationGroupDesc\fP ξѤǤ뤫ɤ򸡾ڤǤ褦ˤ뤿ǤäˡActivationGroupDesc Υ󥹥ȥ饯Ϥ \f2CommandEnvironment\fP Ǥդ \f2Properties\fP ˤäƻꤵ \f2ޥɤ\fPץϡ \f2rmid\fP ΥƥݥꥷեŪ˵Ĥ뤳Ȥɬפˤʤޤ\f2sun.rmi.activation.execPolicy\fP ץѥƥͤϡ \f2ư롼Ѥ VM \fP ư뤿 \f2ActivationGroupDesc\fP ξѤǤ뤫ɤȽǤȤ rmid Ѥݥꥷꤷޤ .LP .LP -\f2rmid\fP をデフォルト設定で実行すると、次のような処理が行われます。 +\f2rmid\fP ǥեǼ¹ԤȡΤ褦ʽԤޤ .LP .RS 3 .TP 2 o -アクティベータを起動し、デフォルトポート 1098 で内部レジストリを起動する +ƥ١ưǥեȥݡ 1098 쥸ȥư .TP 2 o -この内部レジストリの中で、\f2ActivationSystem\fP を \f2java.rmi.activation.ActivationSystem\fP という名前にバインドする +쥸ȥǡ \f2ActivationSystem\fP \f2java.rmi.activation.ActivationSystem Ȥ̾\fP Хɤ .RE .LP .LP -レジストリにほかのポートを指定するには、\f2rmid\fP の起動時に \f2\-port\fP オプションを指定しなければなりません。次に例を示します。 +쥸ȥˤۤΥݡȤꤹˤϡrmid εư \f2\-port\fP ץ \f2ꤷʤФʤޤ\fP򼨤ޤ .LP .nf \f3 @@ -101,44 +93,42 @@ .LP .LP -このコマンドは、起動システムデーモンを開始し、レジストリのデフォルトポート 1099 でレジストリを開始します。 +Υޥɤϡưƥǡ򳫻Ϥ쥸ȥΥǥեȥݡ 1099 ǥ쥸ȥ򳫻Ϥޤ .LP .SS -rmid を inetd/xinetd から開始する +rmid inetd/xinetd 鳫Ϥ .LP .LP -\f2rmid\fP をコマンド行から開始するには、\f2inetd\fP (Solaris の場合)、または \f2xinetd\fP (Linux) を構成して \f2rmid\fP を必要に応じて開始する方法もあります。 +\f2rmid\fP 򥳥ޥɹԤ鳫Ϥˤϡ \f2inetd\fP (Solaris ξ)ޤ \f2xinetd\fP (Linux ξ) \f2rmid\fP ɬפ˱ƳϤˡ⤢ޤ .LP .LP -\f2rmid\fP を開始すると、\f2System.inheritedChannel\fP メソッドを呼び出して、継承されたチャンネル (\f2inetd\fP/\f2xinetd\fP から継承) を取得しようとします。継承されたチャンネルが \f2null\fP であるか、\f2java.nio.channels.ServerSocketChannel\fP のインスタンスでなかった場合、\f2rmid\fP はそのチャンネルは \f2inetd\fP/\f2xinetd\fP によって起動されたものではないと判断し、前述のように起動します。 +\f2rmid\fP 򳫻ϤȡSystem.inheritedChannel ᥽åɤƤӽФơѾ줿ͥ ( \f2inetd\fP/\f2xinetd\fP Ѿ) 褦Ȥޤ Ѿ줿ͥ뤬 \f2null\fP Ǥ뤫 \f2java.nio.channels.ServerSocketChannel\fP Υ󥹥󥹤Ǥʤä硢 \f2rmid\fP rmid ϤΥͥ \f2inetd\fP/\f2xinetd\fP ˤäƵư줿ΤǤϤʤȽǤҤΤ褦˵ưޤ .LP .LP -継承されたチャンネルが \f2ServerSocketChannel\fP インスタンスである場合は、エクスポートするリモートオブジェクト、つまり \f2java.rmi.activation.ActivationSystem\fP がバインドされているレジストリと \f2java.rmi.activation.Activator\fP リモートオブジェクトに対する要求を受信するサーバーソケットとして、\f2ServerSocketChannel\fP から取得した \f2java.net.ServerSocket\fP を \f2rmid\fP では使用します。このモードでは、\f2rmid\fP の動作は、次のことを除いて、 コマンド行から起動した場合と同じです。 +Ѿ줿ͥ뤬 \f2ServerSocketChannel\fP 󥹥󥹤Ǥϡ \f2rmid\fP ϥݡȤ⡼ȥ֥ȡĤޤ java.rmi.activation.ActivationSystem ХɤƤ쥸ȥ java.rmi.activation.Activator ⡼ȥ֥ȤФ׵륵СåȤȤơServerSocketChannel java.net.ServerSocket Ѥޤ Υ⡼ɤǤϡ \f2rmid\fP ưϡΤȤơ ޥɹԤ鵯ưƱǤ .LP .RS 3 .TP 2 o -\f2System.err\fP に対する出力は、ファイルにリダイレクトされる。このファイルは \f2java.io.tmpdir\fP システムプロパティーで指定されるディレクトリ (通常は \f2/var/tmp\fP または \f2/tmp\fP) にある。 ファイル名の接頭辞は \f2rmid\-err\fP で、接尾辞は \f2"tmp"\fP である +\f2System.err\fP ФϤϡե˥쥯Ȥ롣Υե \f2java.io.tmpdir\fP ƥץѥƥǻꤵǥ쥯ȥ (̾ \f2/var/tmp\fP ޤ \f2/tmp\fP) ˤ롣ե̾Ƭ \f2"rmid\-err"\fP ǡ \f2"tmp"\fP Ǥ .TP 2 o -\f2\-port\fP オプションは拒否される。このオプションを指定すると、\f2rmid\fP はエラーメッセージを出して終了する +\f2\-port\fP ץϵݤ롣Υץꤹȡ \f2rmid\fP ϥ顼åФƽλ .TP 2 o -\f2\-log\fP オプションは必須。このオプションを指定しないと、\f2rmid\fP はエラーメッセージを出して終了する +\f2\-log\fP ץɬܡΥץꤷʤȡ \f2rmid\fP ϥ顼åФƽλ .RE .LP .LP -必要に応じてサービスを開始するように設定する詳細については、\f2inetd\fP (Solaris) または \f2xinetd\fP (Linux) のマニュアルページを参照してください。 +ɬפ˱ƥӥ򳫻Ϥ褦ꤹܺ٤ˤĤƤϡ \f2inetd\fP (Solaris) ޤ \f2xinetd\fP (Linux) Υޥ˥奢ڡ򻲾ȤƤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-C<someCommandLineOption> -\f2rmid\fP の子プロセス (起動グループ) が作成されたときに、それぞれの子プロセスにコマンド行引数として渡されるオプションを指定します。たとえば、次のように指定すると、起動システムデーモ ンによって生成される各仮想マシンにプロパティーを渡すことができます。 +\f2rmid\fP λҥץ (ư롼) 줿Ȥˡ줾λҥץ˥ޥɹ԰ȤϤ륪ץꤷޤȤСΤ褦˻ꤹȡưƥǡˤäƲۥޥ˥ץѥƥϤȤǤޤ .nf \f3 .fl @@ -146,7 +136,7 @@ .fl \fP .fi -コマンド行引数を子プロセスに渡す機能は、デバッグを行う場合に便利です。たとえば、次のようなコマンドを実行できます。 +ޥɹ԰ҥץϤǽϡǥХåԤǤȤСΤ褦ʥޥɤ¹ԤǤޤ .nf \f3 .fl @@ -154,11 +144,11 @@ .fl \fP .fi -このコマンドにより、すべての子 VM でサーバー呼び出しのログが作成されるようになります。 +Υޥɤˤꡢ٤Ƥλ VM ǥСƤӽФΥ褦ˤʤޤ .LP .TP 3 \-J<someCommandLineOption> -\f2rmid\fP を実行している \f2java\fP インタプリタに渡すオプションを指定します。たとえば、\f2rmid\fP が \f2rmid.policy\fP という名前のポリシーファイルを使用するように指定するには、\f2rmid\fP のコマンド行で \f2\-J\fP オプションを使って、\f2java.security.policy\fP プロパティーを定義します。 次に例を示します。 +rmid ¹ԤƤ \f2java\fP 󥿥ץ꥿Ϥץꤷޤ ȤС \f2rmid\fP \f2rmid.policy\fP Ȥ̾ΥݥꥷեѤ褦˻ꤹˤϡrmid ΥޥɹԤ \f2\-J\fP ץȤäơ \f2java.security.policy\fP ץѥƥޤ 򼨤ޤ .nf \f3 .fl @@ -168,16 +158,15 @@ .fi .TP 3 \-J\-Dsun.rmi.activation.execPolicy=<policy> -起動グループが実行されることになる VM の起動に使用するコマンドおよびコマンド行オプションをチェックするために、\f2rmid\fP が採用するポリシーを指定します。このオプションは、Java RMI 起動デーモンの Sun の実装だけに存在することに注意してください。コマンド行にこのプロパティーを指定しない場合、結果は \f2\-J\-Dsun.rmi.activation.execPolicy=default\fP を指定した場合と同じになります。\f2<policy>\fP に指定可能な値は、\f2default\fP、\f2<policyClassName>\fP、または \f2none\fP です。 それぞれの値について、このあと説明します。 -.LP +ư롼פ¹Ԥ뤳Ȥˤʤ VM εư˻Ѥ륳ޥɤӥޥɹԥץå뤿ˡ \f2rmid\fP ѤݥꥷꤷޤΥץϡJava RMI ưǡ Sun μ¸ߤ뤳ȤդƤޥɹԤˤΥץѥƥꤷʤ硢̤ \f2\-J\-Dsun.rmi.activation.execPolicy=default\fP ꤷƱˤʤޤ\f2<policy>\fP ˻ǽͤϡ\f2default\fP\f2<policyClassName>\fPޤ \f2none\fP Ǥ .RS 3 .TP 2 o -\f3default (または、このプロパティーが「指定されていない」場合)\fP +\f3default (ޤϡΥץѥƥֻꤵƤʤ׾)\fP .LP -デフォルトの \f2execPolicy\fP の場合、\f2rmid\fP が実行できるのは、\f2rmid\fP が使用する セキュリティーポリシーファイルの中で、実行する権限が \f2rmid\fP に与えられているコマンドおよびコマンド行オプションだけです。「デフォルト」の実行ポリシーで使用できるのは、デフォルトの起動グループ実装だけです。 +ǥեȤ \f2execPolicy\fP ξ硢 \f2rmid\fP ¹ԤǤΤϡ \f2rmid\fP Ѥ륻ƥݥꥷեǡ¹Ԥ븢¤ \f2rmid\fP ͿƤ륳ޥɤӥޥɹԥץǤ֥ǥեȡפμ¹ԥݥꥷǻѤǤΤϡǥեȤεư롼׼Ǥ .LP -\f2rmid\fP は、起動グループ用の VM を起動するときに、そのグループについて登録された起動グループ記述子である \f2ActivationGroupDesc\fP 内の情報を使用します。グループ記述子は、\f2ActivationGroupDesc.CommandEnvironment\fP を指定します (省略可能)。 これには、起動グループを開始する「コマンド」と、そのコマンド行に追加できるコマンド行「オプション」が含まれています。デフォルトでは、\f2rmid\fP は、\f2java.home\fP にある \f2java\fP コマンドを使用します。グループ記述子には、オプションとしてコマンド行に追加される「プロパティー」オーバーライドも含まれています。 このプロパティーは、次のように定義します。 +\f2rmid ϡ\fP ư롼Ѥ VM ưȤˡΥ롼פˤĤϿ줿ư롼׵һҤǤ \f2ActivationGroupDesc\fP ξѤޤ롼׵һҤϡ \f2ActivationGroupDesc.CommandEnvironment\fP ꤷޤ (άǽ)ˤϡư롼פ򳫻Ϥ֥ޥɡפȡΥޥɹԤɲäǤ륳ޥɹԡ֥ץפޤޤƤޤǥեȤǤϡ \f2rmid \fP java.home ˤ \f2java\fP ޥɤѤޤ 롼׵һҤˤϡץȤƥޥɹԤɲä֥ץѥƥץС饤ɤޤޤƤޤΥץѥƥϡΤ褦ޤ .nf \f3 .fl @@ -186,33 +175,33 @@ \fP .fi .LP -アクセス権 \f2com.sun.rmi.rmid.ExecPermission\fP を使用すると、グループ記述子の \f2CommandEnvironment\fP で指定されたコマンドを実行して起動グループを開始する権限を、\f2rmid\fP に対して許可することができます。アクセス権 \f2com.sun.rmi.rmid.ExecOptionPermission\fP を使用すると、グループ記述子でプロパティーオーバーライドとして指定されたコマンド行オプション、または \f2CommandEnvironment\fP でオプションとして指定されたコマンド行オプションを、起動グループを開始するときに \f2rmid\fP が使用できるようになります。 + \f2com.sun.rmi.rmid.ExecPermission\fP Ѥȡ \f2rmid\fP Фơ롼׵һҤ \f2CommandEnvironment\fP ǻꤵ줿ޥɤ¹ԤƵư롼פ򳫻Ϥ븢¤Ĥ뤳ȤǤޤ \f2com.sun.rmi.rmid.ExecOptionPermission\fP Ѥȡ롼׵һҤǥץѥƥС饤ɤȤƻꤵ줿ޥɹԥץ󡢤ޤ \f2CommandEnvironment\fP ǥץȤƻꤵ줿ޥɹԥץ򡢵ư롼פ򳫻ϤȤ rmid ѤǤ褦ˤʤޤ .LP -\f2rmid\fP にさまざまなコマンドおよびオプションを実行する権限を許可する場合は、アクセス権 \f2ExecPermission\fP および \f2ExecOptionPermission\fP を汎用的に許可する必要があります。 つまり、すべてのコードソースに対して許可します。 +\f2rmid \fP ޤޤʥޥɤӥץ¹Ԥ븢¤Ĥϡ \f2ExecPermission\fP \f2ExecOptionPermission\fP Ū˵ĤɬפޤĤޤꡢ٤ƤΥɥФƵĤޤ .RS 3 .TP 3 ExecPermission -\f2ExecPermission\fP クラスは、起動グループを開始するために \f2rmid\fP が特定の「コマンド」を実行する権限を表します。 +\f2ExecPermission\fP 饹ϡư롼פ򳫻Ϥ뤿 \f2rmid \fP Ρ֥ޥɡפ¹Ԥ븢¤ɽޤ .LP -\f3構文\fP +\f3ʸ\fP .br -\f2ExecPermission\fP の「名前」は、\f2rmid\fP に実行を許可するコマンドのパス名です。「/*」 (「/」はファイル区切り文字 \f2File.separatorChar\fP) で終わるパス名は、そのディレクトリに含まれるすべてのファイルを示します。「/\-」で終わるパス名は、そのディレクトリに含まれるすべてのファイルとサブディレクトリ (再帰的に) を示します。パス名に特別なトークン「<<ALL FILES>>」を指定した場合は、\f3任意の\fPファイルを示します。 +\f2ExecPermission\fP Ρ̾פϡ \f2rmid\fP ˼¹ԤĤ륳ޥɤΥѥ̾Ǥ/* (/פϥեڤʸ File.separatorChar) ǽѥ̾ϡΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥե򼨤ޤ /\-פǽѥ̾ϡΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥեȥ֥ǥ쥯ȥ (ƵŪ) 򼨤ޤѥ̤̾ʥȡ<<ALL FILES>>פꤷϡ\f3Ǥդ\fPե򼨤ޤ .LP -\f3注:\fP「*」を 1 つ指定しただけのパス名は、現在のディレクトリ内のすべてのファイルを表します。 また、「\-」を 1 つ指定しただけのパス名は、現在のディレクトリ内のすべてのファイルと、現在のディレクトリに含まれるすべてのファイルとサブディレクトリ (再帰的に) を表します。 +\f3:\fP *פ 1 ĻꤷΥѥ̾ϡߤΥǥ쥯ȥΤ٤ƤΥեɽޤޤ\-פ 1 ĻꤷΥѥ̾ϡߤΥǥ쥯ȥΤ٤ƤΥեȡߤΥǥ쥯ȥ˴ޤޤ뤹٤ƤΥեȥ֥ǥ쥯ȥ (ƵŪ) ɽޤ .TP 3 ExecOptionPermission -\f2ExecOptionPermission\fP クラスは、起動グループを開始するときに \f2rmid\fP が特定のコマンド行「オプション」を使用できる権限を表します。\f2ExecOptionPermission\fP の「名前」は、コマンド行オプションの値です。 +\f2ExecOptionPermission\fP 饹ϡư롼פ򳫻ϤȤ \f2rmid ϡư롼פ򳫻Ϥ륳ޥɤޤäڤޤ\fP Υޥɹԡ֥ץפѤǤ븢¤ɽޤ \f2ExecOptionPermission\fP Ρ̾פϡޥɹԥץͤǤ .LP -\f3構文\fP +\f3ʸ\fP .br -オプションでは、ワイルドカードが限定的にサポートされます。アスタリスクは、ワイルドカードマッチを表します。 アスタリスクは、オプション名そのものとして使用できます。 つまり、任意のオプションを表すことができます。 また、オプション名の末尾に使用することもできます。 ただし、「.」か「=」の直後にアスタリスクを指定する必要があります。 +ץǤϡ磻ɥɤŪ˥ݡȤޤꥹϡ磻ɥɥޥåɽޤ ꥹϡץ̾ΤΤȤƻѤǤޤ ĤޤꡢǤդΥץɽȤǤޤ ޤץ̾˻Ѥ뤳ȤǤޤ .פ=פľ˥ꥹꤹɬפޤ .LP -例を示します。「*」、「\-Dfoo.*」、「\-Da.b.c=*」は有効ですが、「*foo」、「\-Da*b」、「ab*」は無効です。 +򼨤ޤ*ס\-Dfoo.*ס\-Da.b.c=*פͭǤ*fooס\-Da*bסab*פ̵Ǥ .TP 3 -rmid のポリシーファイル -\f2rmid\fP にさまざまなコマンドおよびオプションを実行する権限を許可する場合は、アクセス権 \f2ExecPermission\fP および \f2ExecOptionPermission\fP を汎用的に許可する必要があります。 つまり、すべてのコードソースに対して許可します。これらのアクセス権をチェックするのは \f2rmid\fP だけなので、これらのアクセス権を汎用的に許可しても安全です。 +rmid Υݥꥷե +\f2rmid \fP ޤޤʥޥɤӥץ¹Ԥ븢¤Ĥϡ \f2ExecPermission\fP \f2ExecOptionPermission\fP Ū˵ĤɬפޤĤޤꡢ٤ƤΥɥФƵĤޤΥåΤ \f2rmid\fP ʤΤǡΥŪ˵ĤƤǤ .LP -\f2rmid\fP に各種の実行権限を許可するポリシーファイルの例を、次に示します。 +rmid ˳Ƽμ¹Ը¤Ĥݥꥷե򡢼˼ޤ .nf \f3 .fl @@ -220,13 +209,7 @@ .fl permission com.sun.rmi.rmid.ExecPermission .fl - "/files/apps/java/jdk1.2.2/solaris/bin/java"; -.fl - -.fl - permission com.sun.rmi.rmid.ExecPermission -.fl - "/files/apps/java/jdk1.2.2/solaris/bin/java_g"; + "/files/apps/java/jdk1.7.0/solaris/bin/java"; .fl .fl @@ -256,29 +239,21 @@ .fl \fP .fi -最初の 2 つの付与されているアクセス権は、\f2rmid\fP に対し、パス名により明示的に指定される \f2java\fP コマンドおよび \f2java_g\fP コマンドの 1.2.2 バージョンの実行を許可します。デフォルトでは、\f2java.home\fP にあるバージョンの \f2java\fP コマンド (\f2rmid\fP が使用するのと同じバージョン) が使用されるため、そのコマンドは、ポリシーファイルで指定する必要はありません。3 番目のアクセス権は、\f2rmid\fP に対して、ディレクトリ \f2/files/apps/rmidcmds\fP 内の任意のコマンドの実行権限を許可します。 -.LP -4 番目のアクセス権 \f2ExecOptionPermission\fP は、\f2rmid\fP に対して、セキュリティーポリシーファイルを \f2/files/policies/group.policy\fP として定義している起動グループの開始を許可します。5 番目のアクセス権は、起動グループが \f2java.security.debug\fP プロパティーを使用することを許可しています。最後のアクセス権は、起動グループが \f2sun.rmi\fP というプロパティー名の階層内の任意のプロパティーを使用することを許可しています。 +ǽͿƤ륢ϡ \f2rmid\fP Фѥ̾ˤŪ˻ꤵ \f2java\fP ޥɤ 1.7.0 Сμ¹ԤĤޤǥեȤǤϡjava.home ˤС \f2java\fP ޥ ( \f2rmid\fP ѤΤƱС) Ѥ뤿ᡢΥޥɤϡݥꥷեǻꤹɬפϤޤ2 ܤΥϡ \f2rmid\fP Фơǥ쥯ȥ \f2/files/apps/rmidcmds\fP ǤդΥޥɤμ¹Ը¤Ĥޤ .LP -ポリシーファイルを指定して \f2rmid\fP を起動するには、\f2rmid\fP のコマンド行で \f2java.security.policy\fP プロパティーを指定する必要があります。 次に例を示します。 -.RS 3 - +3 ܤͿƤ륢 \f2ExecOptionPermission\fP ϡ \f2rmid\fP Фơƥݥꥷե \f2/files/policies/group.policy\fP ȤƤ뵯ư롼פγϤĤޤΥϡư롼פ \f2java.security.debug\fP ץѥƥѤ뤳ȤĤƤޤǸΥϡư롼פ \f2sun.rmi\fP Ȥץѥƥ̾γǤդΥץѥƥѤ뤳ȤĤƤޤ .LP +ݥꥷեꤷ \f2rmid\fP ưˤϡrmid ΥޥɹԤ \f2java.security.policy\fP ץѥƥꤹɬפޤ 򼨤ޤ .LP -\f2rmid \-J\-Djava.security.policy=rmid.policy\fP -.LP +\f2rmid \-J\-Djava.security.policy=rmid.policy\fP .RE -.RE -.TP 2 -o -.LP .TP 2 o \f4<policyClassName>\fP .LP -デフォルトの動作では十分な柔軟性が得られない場合、管理者は、\f2rmid\fP の起動時に、\f2checkExecCommand\fP メソッドが所属するクラスの名前を指定して、rmid が実行するコマンドをチェックすることができます。 +ǥեȤưǤϽʬʽʤ硢Ԥϡ \f2rmid\fP εưˡ \f2checkExecCommand\fP ᥽åɤ°륯饹̾ꤷơrmid ¹Ԥ륳ޥɤå뤳ȤǤޤ .LP -\f2policyClassName\fP には、引数なしのコンストラクタを持ち、次のような \f2checkExecCommand\fP メソッドを実装している public クラスを指定します。 +\f2policyClassName\fP ˤϡʤΥ󥹥ȥ饯Τ褦 \f2checkExecCommand\fP ᥽åɤƤ public 饹ꤷޤ .nf \f3 .fl @@ -290,22 +265,21 @@ .fl \fP .fi -起動グループを開始する前に、\f2rmid\fP は、ポリシーの \f2checkExecCommand\fP メソッドを呼び出します。このとき、起動グループの記述子と、起動グループを開始するための完全なコマンドを含む配列をそのメソッドに渡します。\f2checkExecCommand\fP が \f2SecurityException\fP をスローすると、\f2rmid\fP はその起動グループを開始せず、オブジェクトの起動を試行している呼び出し側には \f2ActivationException\fP がスローされます。 -.LP +ư롼פ򳫻Ϥˡ \f2rmid\fP ϡݥꥷ \f2checkExecCommand\fP ᥽åɤƤӽФޤΤȤư롼פεһҤȡư롼פ򳫻Ϥ뤿δʥޥɤޤ򤽤Υ᥽åɤϤޤ \f2checkExecCommand\fP \f2SecurityException\fP 򥹥ȡ \f2rmid\fP Ϥεư롼פ򳫻Ϥ֥ȤεưԤƤƤӽФ¦ˤ \f2ActivationException\fP ޤ .TP 2 o \f3none\fP .LP -\f2sun.rmi.activation.execPolicy\fP プロパティーの値が「none」の場合、\f2rmid\fP は、起動グループを開始するコマンドをまったく検証しません。 +\f2sun.rmi.activation.execPolicy\fP ץѥƥͤnoneפξ硢 \f2rmid\fP ϡư롼פ򳫻Ϥ륳ޥɤޤäڤޤ .RE .LP .TP 3 \-log dir -起動システムデーモンがデータベースおよび関連情報を書き込むのに使うディレクトリの名前を指定します。デフォルトでは、\f2rmid\fP コマンドを実行したディレクトリに、\f2log\fP というログディレクトリが作成されます。 +ưƥǡ󤬥ǡ١ӴϢ񤭹Τ˻Ȥǥ쥯ȥ̾ꤷޤǥեȤǤϡrmid ޥɤ¹Ԥǥ쥯ȥˡ \f2log\fP Ȥǥ쥯ȥ꤬ޤ .LP .TP 3 \-port port -\f2rmid\fP のレジストリが使うポートを指定します。起動システムデーモンは、このレジストリの中で、\f2java.rmi.activation.ActivationSystem\fP という名前で\f2ActivationSystem\fP をバインドします。したがって、ローカルマシン上の \f2ActivationSystem\fP は、次のように \f2Naming.lookup\fP メソッドを呼び出すことによって取得できます。 +\f2rmid\fP Υ쥸ȥ꤬ȤݡȤꤷޤưƥǡϡΥ쥸ȥǡ \f2java.rmi.activation.ActivationSystem\fP Ȥ̾ActivationSystem Хɤޤäơޥ \f2ActivationSystem\fP ϡΤ褦 \f2Naming.lookup\fP ᥽åɤƤӽФȤˤäƼǤޤ .nf \f3 .fl @@ -322,16 +296,16 @@ .fi .TP 3 \-stop -\f2\-port\fP オプションによって指定されたポートの、現在の \f2rmid\fP 呼び出しを停止します。ポートが指定されていない場合は、ポート 1098 で実行されている \f2rmid\fP を停止します。 +\-port ץˤäƻꤵ줿ݡȤΡߤ \f2rmid\fP ƤӽФߤޤ ݡȤꤵƤʤϡݡ 1098 Ǽ¹ԤƤ \f2rmid\fP ߤޤ .RE -.SH "環境変数" + .LP - +.SH "Ķѿ" .LP .RS 3 .TP 3 CLASSPATH -ユーザー定義クラスへのパスをシステムに指定します。ディレクトリはコロンで分割します。例を示します。 +桼饹ؤΥѥ򥷥ƥ˻ꤷޤǥ쥯ȥϥʬ䤷ޤ򼨤ޤ .nf \f3 .fl @@ -342,15 +316,13 @@ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP -rmic(1)、 +rmic(1) .na \f2CLASSPATH\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpath、java(1) +http://java.sun.com/javase/6/docs/technotes/tools/index.html#classpathjava(1) .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/rmiregistry.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/rmiregistry.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/rmiregistry.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,18 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH rmiregistry 1 "02 Jun 2010" +.TH rmiregistry 1 "14 Apr 2011" .LP -.SH "名前" -rmiregistry \- Java リモートオブジェクトレジストリ +.SH "̾" +rmiregistry \- Java ⡼ȥ֥ȥ쥸ȥ .LP .RS 3 +\f3rmiregistry\fP ޥɤϡߤΥۥȤλꤷݡȾ˥⡼ȥ֥ȥ쥸ȥ򳫻Ϥޤ +.RE .LP -.LP -\f3rmiregistry\fP コマンドは、現在のホストの指定したポート上にリモートオブジェクトレジストリを開始します。 -.LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,52 +41,43 @@ .fi .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f3rmiregistry\fP コマンドは、現在のホストの指定 \f2port\fP 上にリモートオブジェクトレジストリを作成し、開始します。\f2port\fP の指定を省略した場合、レジストリはポート 1099 で開始します。\f3rmiregistry\fP コマンドに、出力機能はありません。通常、これはバックグラウンドで実行されます。例を示します。 +\f3rmiregistry\fP ޥɤϡߤΥۥȤλ \f2port\fP ˥⡼ȥ֥ȥ쥸ȥϤޤ\f2port\fP λά硢쥸ȥϥݡ 1099 dzϤޤ\f3rmiregistry\fP ޥɤˡϵǽϤޤ̾ϥХå饦ɤǼ¹Ԥޤ򼨤ޤ .LP .LP \f2rmiregistry&\fP .LP .LP -リモートオブジェクトレジストリは、ブートストラップのネームサービスです。 同一ホストの RMI サーバーが、リモートオブジェクトを名前にバインドするために使用されます。次に、ローカルおよびリモートホストのクライアントはリモートオブジェクトを検索し、リモートメソッドの呼び出しを行います。 +⡼ȥ֥ȥ쥸ȥϡ֡ȥȥåפΥ͡ॵӥǤƱۥȤ RMI С⡼ȥ֥Ȥ̾˥Хɤ뤿˻Ѥޤˡ뤪ӥ⡼ȥۥȤΥ饤Ȥϥ⡼ȥ֥Ȥ򸡺⡼ȥ᥽åɤθƤӽФԤޤ .LP .LP -レジストリは、一般的に、最初のリモートオブジェクトの位置を指定します。 そこで、アプリケーションはメソッドを呼び出す必要があります。代わって、そのオブジェクトはアプリケーション指定のサポートを提供し、他のオブジェクトを探します。 +쥸ȥϡŪˡǽΥ⡼ȥ֥Ȥΰ֤ꤷޤ ǡץꥱϥ᥽åɤƤӽФɬפޤäơΥ֥ȤϥץꥱΥݡȤ󶡤¾Υ֥Ȥõޤ .LP .LP -\f2java.rmi.registry.LocateRegistry\fP クラスのメソッドは、ローカルホスト、またはローカルホストとポートで動作するレジストリを取得するために使用されます。 +\f2java.rmi.registry.LocateRegistry\fP 饹Υ᥽åɤϡۥȡޤϥۥȤȥݡȤư쥸ȥ뤿˻Ѥޤ .LP .LP -\f2java.rmi.Naming\fP クラスの URL ベースのメソッドは、レジストリで動作し、任意のホストおよびローカルホスト上のリモートオブジェクトの検索に使用されます。リモートオブジェクトに単純な (文字列) 名前をバインドしたり、新しい名前をリバインド (古いバインドにオーバーライド) します。 またリモートオブジェクトをアンバインドしたり、レジストリにバインドされた URL を出力します。 +\f2java.rmi.Naming\fP 饹 URL ١Υ᥽åɤϡ쥸ȥưǤդΥۥȤӥۥȾΥ⡼ȥ֥Ȥθ˻Ѥޤ⡼ȥ֥Ȥñ (ʸ) ̾Хɤꡢ̾Х (ŤХɤ˥С饤) ޤޤ⡼ȥ֥Ȥ򥢥Хɤꡢ쥸ȥ˥Хɤ줿 URL Ϥޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-J -\f2\-J\fP の後ろに続くオプションを \f2java\fP インタプリタに引き渡します。 \f2java\fP オプションと組み合わせて使います (\f2\-J\fP と \f2java\fP オプションの間にスペースは入れない)。 +\f2\-J\fP θ³ץ \f2java\fP 󥿥ץ꥿˰Ϥޤ \f2java\fP ץȤ߹碌ƻȤޤ (\-J java ץδ֤˥ڡʤ) .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP - -.LP -.LP -java(1)、 +java(1) .na \f2java.rmi.registry.LocateRegistry\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/rmi/registry/LocateRegistry.html、および +http://java.sun.com/javase/6/docs/api/java/rmi/registry/LocateRegistry.html .na \f2java.rmi.Naming\fP @ .fi -http://java.sun.com/javase/6/docs/api/java/rmi/Naming.html -.LP - +http://java.sun.com/javase/6/docs/api/java/rmi/Naming.html diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/schemagen.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/schemagen.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/schemagen.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,110 +19,106 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH schemagen 1 "02 Jun 2010" +.TH schemagen 1 "14 Apr 2011" .LP -.SH "名前" -schemagen \- XML バインドのための Java(TM) アーキテクチャースキーマジェネレータ -.LP -.LP -\f3仕様バージョン:\fP 2.1 -.br -\f3実装バージョン:\fP 2.1.3 -.LP -.SS -schemagen の起動 +.SH "̾" +schemagen \- XML ХɤΤ Java(TM) ƥ㡼ޥͥ졼 .LP .LP -スキーマジェネレータは、ユーザーのプラットフォームの \f2bin\fP ディレクトリにある \f2schemagen\fP シェルスクリプトを使って起動できます。 +\f3ͥС:\fP 2.1 +.br +\f3С:\fP 2.1.3 .LP -.LP -現在のスキーマジェネレータは、Java ソースファイルとクラスファイルのいずれも処理できます。 +.SH "schemagen εư" .LP .LP -また、スキーマジェネレータを実行するための Ant タスクも用意されています。 +ޥͥ졼ưˤϡ桼Υץåȥե bin ǥ쥯ȥˤ \f2Ŭڤ schemagen 륹ץ\fP \f2ޤ\fP +.LP +.LP +ߤΥޥͥ졼ϡJava եȥ饹եΤǤޤ +.LP +.LP +ޤޥͥ졼¹Ԥ뤿 Ant ѰդƤޤ .na -\f2schemagen を Ant とともに使用する\fP @ +\f2schemagen Ant ȤȤ˻Ѥ\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlための手順を参照してください。 -.LP -.RS 3 - +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlμ򻲾ȤƤ .LP .nf \f3 .fl % schemagen.sh Foo.java Bar.java ... .fl -注: Writing schema1.xsd +Note: Writing schema1.xsd .fl \fP .fi -.RE .LP .LP -ユーザーの Java ソース/クラスがほかのクラスを参照している場合、システムの CLASSPATH 環境変数経由でそれらのクラスにアクセスできるようになっているか、あるいは \f2\-classpath\fP/\f2\-cp\fP オプションを使ってそれらのクラスをツールに指定する必要があります。そうしないと、スキーマの生成時にエラーが発生します。 -.LP -.RS 3 - +桼 Java /饹ۤΥ饹򻲾ȤƤ硢ƥ ĶѿͳǤΥ饹˥Ǥ褦ˤʤäƤ뤫뤤 \f2\-classpath\fP/\f2\-cp\fP ȤäƤΥ饹ġ˻ꤹɬפޤʤȡޤ˥顼ȯޤ .LP -\f3コマンド行オプション\fP -.LP -.RS 3 - +.SS +ޥɹԥץ .LP .nf \f3 .fl -使用方法: schemagen [\-options ...] <java files> +ˡ: schemagen [\-options ...] <java files> .fl .fl -オプション: +ץ: +.fl + \-d <path> : ץå javac ˤä륯饹եγǼꤷޤ .fl - \-d <path> : プロセッサと javac 生成のクラスファイルを置く場所を指定します。 + \-cp <path> : 桼եθꤷޤ +.fl + \-classpath <path> : 桼եθꤷޤ .fl - \-cp <path> : ユーザー指定ファイルの検索場所を指定します。 + \-encoding <encoding> : apt/javac ƤӽФ˻Ѥ륨󥳡ǥ󥰤ꤷޤ +.fl + .fl - \-classpath <path> : ユーザー指定ファイルの検索場所を指定します。 + \-episode <file> : ̥ѥѤΥԥɥեޤ .fl - \-help : この使用方法に関するメッセージを表示します。 + \-version : Сɽޤ +.fl + \-help : λˡ˴ؤåɽޤ .fl \fP .fi -.RE .LP -.RE -.SS -生成されるリソースファイル +.SH "꥽ե" .LP .LP -現在のスキーマジェネレータは単純に、Java クラス内で参照されている名前空間ごとに 1 つのスキーマファイルを作成します。生成されるスキーマファイルの名前を制御する方法は、現時点では存在しません。そうした目的には、 +ߤΥޥͥ졼ñˡJava 饹ǻȤƤ֤̾Ȥ 1 ĤΥޥեޤ륹ޥե̾椹ˡϡǤ¸ߤޤ󡣤Ūˤϡ .na -\f2スキーマジェネレータの Ant タスク\fP @ +\f2ޥͥ졼 ant \fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlを使用してください。 +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.htmlѤƤ .LP -.SH "関連項目" +.SH "̾" +Ϣ .LP .RS 3 .TP 2 o -スキーマジェネレータの実行 (schemagen):[ +ޥͥ졼μ¹ (schemagen): [ .na -\f2コマンド行の命令\fP @ +\f2ޥɹԤ̿\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagen.html、 +https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagen.html .na -\f2SchemaGen を Ant とともに使用する\fP @ +\f2SchemaGen Ant ȤȤ˻Ѥ\fP @ .fi https://jaxb.dev.java.net/nonav/2.1.3/docs/schemagenTask.html] .TP 2 o .na -\f2XML バインドのための JavaTM アーキテクチャー (JAXB)\fP @ +\f2XML ХɤΤ JavaTM ƥ㡼 (JAXB)\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/xml/jaxb/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/serialver.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/serialver.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/serialver.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,22 +19,16 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH serialver 1 "02 Jun 2010" +.TH serialver 1 "14 Apr 2011" .LP -.SH "名前" -serialver \- シリアルバージョンコマンド -.LP -.RS 3 - +.SH "̾" +serialver \- ꥢС󥳥ޥ .LP .LP -\f3serialver\fP コマンドは \f2serialVersionUID\fP を返します。 +\f3serialver\fP ޥɤ \f2serialVersionUID\fP ֤ޤ .LP -.RE -.SH "形式" -.LP - +.SH "" .LP .nf \f3 @@ -45,74 +39,54 @@ .LP .RS 3 - -.LP -.RS 3 .TP 3 options -このドキュメントで説明されているコマンド行オプションです。 +ΥɥȤƤ륳ޥɹԥץǤ .TP 3 classnames -1 つ以上のクラス名です。 +1 İʾΥ饹̾Ǥ .RE .LP -.RE -.SH "説明" -.LP - +.SH "" .LP .LP -\f3serialver\fP は、1 つ以上のクラスの \f2serialVersionUID\fP を、展開しているクラスへコピーするのに適した形式で返します。引数を指定しないで呼び出すと、使用方法が表示されます。 +\f3serialver\fP ϡ1 İʾΥ饹 \f2serialVersionUID\fP ŸƤ륯饹إԡΤŬ֤ޤꤷʤǸƤӽФȡˡɽޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 -\-classpath <: で区切られたディレクトリと zip や jar ファイル> -アプリケーションのクラスおよびリソースの検索パスを設定します。 +\-classpath <: Ƕڤ줿ǥ쥯ȥ zip jar ե> +ץꥱΥ饹ӥ꥽θѥꤷޤ .RE .LP .RS 3 .TP 3 \-show -簡単なユーザーインタフェースを表示します。完全指定のクラス名を入力して、Enter キーか [Show] ボタンを押し、シリアルバージョン UID を表示します。 +ñʥ桼󥿥եɽޤΥ饹̾ϤơEnter Showץܥ򲡤ꥢС UID ɽޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ .RE .LP -.SH "注" -.LP - +.SH "" .LP .LP -\f3serialver\fP コマンドは、指定されたクラスをその仮想マシン内に読み込んで初期化しますが、デフォルトではセキュリティーマネージャーの設定は行いません。信頼できないクラスとともに \f3serialver\fP を実行する場合には、次のオプションを使ってセキュリティーマネージャーを設定できます。 -.LP -.RS 3 - +\f3serialver\fP ޥɤϡꤵ줿饹򤽤βۥޥɤ߹ǽޤǥեȤǤϥƥޥ͡㡼ϹԤޤ󡣿Ǥʤ饹ȤȤ \f3serialver\fP ¹ԤˤϡΥץȤäƥƥޥ͡㡼Ǥޤ .LP .LP \f2\-J\-Djava.security.manager\fP .LP -.RE .LP -また、必要であれば、次のオプションを使ってセキュリティーポリシーを指定できます。 -.LP -.RS 3 - +ޤɬפǤСΥץȤäƥƥݥꥷǤޤ .LP .LP \f2\-J\-Djava.security.policy=<policy file>\fP .LP -.RE -.SH "関連項目" -.LP - +.SH "Ϣ" .LP .LP .na diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/servertool.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/servertool.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/servertool.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,20 +19,14 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH servertool 1 "02 Jun 2010" +.TH servertool 1 "14 Apr 2011" .LP -.SH "名前" -servertool \- Java(TM) IDL サーバーツール -.LP -.RS 3 - +.SH "̾" +servertool \- Java(TM) IDL Сġ .LP -\f3servertool\fP はアプリケーションプログラマが、持続サーバーの登録、登録解除、起動、および停止を行うためのコマンド行インタフェースを提供します。 -.RE -.SH "形式" -.LP - +\f3servertool\fP ϥץꥱץޤ³СϿϿưߤԤΥޥɹԥ󥿥ե󶡤ޤ +.SH "" .LP .nf \f3 @@ -44,84 +38,76 @@ .LP .LP -コマンドを入力しないで \f2servertool\fP を起動すると、コマンド行ツールとして \f2servertool >\fP プロンプトが表示されます。\f2servertool >\fP プロンプトにコマンドを入力します。 +ޥɤϤʤ \f2servertool\fP ưȡޥɹԥġȤ \f2servertool >\fP ץץȤɽޤ\f2servertool >\fP ץץȤ˥ޥɤϤޤ .LP .LP -コマンドを入力して \f2servertool\fP を起動すると、Java IDL サーバーツールが起動し、コマンドを実行して終了します。 +ޥɤϤ \f2servertool\fP ưȡJava IDL Сġ뤬ưޥɤ¹Ԥƽλޤ .LP .LP -\f2\-ORBInitialPort\fP \f2nameserverport\fP オプションは\f3必須\fPです。\f2nameserverport\fP の値には、\f2orbd\fP が実行され、着信要求を待機しているポートを指定する必要があります。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、\f2nameserverport\fP として 1024 または 1024 より大きいポートを使用することをお勧めします。 +\f2\-ORBInitialPort\fP \f2nameserverport\fP ץ\f3ɬ\fPǤ \f2nameserverport\fP ͤˤϡ\f2orbd\fP ¹Ԥ졢忮׵ԵƤݡȤꤹɬפޤSolaris եȥѤ硢1024 꾮ݡȾǥץ򳫻Ϥˤϡroot 桼ˤʤɬפޤΤᡢ\f2nameserverport\fPȤ 1024 ʾΥݡֹѤ뤳Ȥ򤪴ᤷޤ .LP -.SH "説明" -.LP - +.SH "" .LP .LP -\f2servertool\fP はアプリケーションプログラマが、持続サーバーの登録、登録解除、起動、および停止を行うためのコマンド行インタフェースを提供します。そのほかに、サーバーに関するさまざまな統計情報を取得するためのコマンドも提供します。 +\f2servertool\fP ϥץꥱץޤ³СϿϿưߤԤΥޥɹԥ󥿥ե󶡤ޤΤۤˡС˴ؤ뤵ޤޤ׾뤿Υޥɤ󶡤ޤ .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-ORBInitialHost nameserverhost -ネームサーバーが、実行され、着信要求を待機しているホストマシンを指定します。このオプションを指定しない場合、\f2nameserverhost\fP はデフォルトで \f2localhost\fP に設定されます。\f2orbd\fP と \f2servertool\fP が異なるマシン上で実行されている場合は、\f2orbd\fP が実行されているホストの名前と IP アドレスを指定する必要があります。 +͡ॵС¹Ԥ졢忮׵ԵƤۥȥޥꤷޤΥץꤷʤ硢\f2nameserverhost\fP ϥǥեȤ \f2localhost\fP ꤵޤ\f2orbd\fP \f2servertool\fP ۤʤޥǼ¹ԤƤϡ\f2orbd\fP ¹ԤƤۥȤ̾ IP ɥ쥹ꤹɬפޤ .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.SH "コマンド" -.LP - +.SH "ޥ" .LP .RS 3 .TP 3 register \-server\ <server\ class\ name> \ \-classpath\ <classpath\ to\ server> [\ \-applicationName\ <application\ name> \-args\ <args\ to\ server> \-vmargs\ <flags\ to\ be\ passed\ to\ Java\ VM> \ ] -Object Request Broker Daemon (ORBD) に新規持続サーバーを登録します。サーバーが未登録の場合、登録して起動します。このコマンドによって、\f2\-server\fP オプションで識別されるサーバーのメインクラス内でインストールメソッドが呼び出されます。このインストールメソッドは、\f2public static void install(org.omg.CORBA.ORB)\fP になっている必要があります。インストールメソッドは、オプションであり、データベーススキーマの作成などの独自のサーバーインストール動作を開発者が指定できます。 +Object Request Broker Daemon (ORBD) ˿³СϿޤС̤Ͽξ硢ϿƵưޤΥޥɤˤäơ\f2\-server\fP ץǼ̤륵СΥᥤ󥯥饹ǥ󥹥ȡ᥽åɤƤӽФޤΥ󥹥ȡ᥽åɤϡ\f2public static void install(org.omg.CORBA.ORB)\fP ˤʤäƤɬפޤ󥹥ȡ᥽åɤϡץǤꡢǡ١ޤκʤɤȼΥС󥹥ȡưȯԤǤޤ .TP 3 unregister \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -サーバー ID またはアプリケーション名を使用して、ORBD のサーバーの登録を解除します。このコマンドによって、\f2\-server\fP オプションで識別されるサーバーのメインクラス内でアンインストールメソッドが呼び出されます。このアンインストールメソッドは、\f2public static void uninstall(org.omg.CORBA.ORB)\fP になっている必要があります。アンインストールメソッドは、オプションであり、インストールメソッドの動作の取り消しなどの独自のサーバーアンインストール動作を開発者が指定できます。 +С ID ޤϥץꥱ̾ѤơORBD ΥСϿޤΥޥɤˤäơ\f2\-server\fP ץǼ̤륵СΥᥤ󥯥饹ǥ󥤥󥹥ȡ᥽åɤƤӽФޤΥ󥤥󥹥ȡ᥽åɤϡ\f2public static void uninstall(org.omg.CORBA.ORB)\fP ˤʤäƤɬפޤ󥤥󥹥ȡ᥽åɤϡץǤꡢ󥹥ȡ᥽åɤưμäʤɤȼΥС󥤥󥹥ȡưȯԤǤޤ .TP 3 getserverid \-applicationName\ <application\ name> -アプリケーションに関連付けられているサーバー ID を返します。 +ץꥱ˴ϢդƤ륵С ID ֤ޤ .TP 3 list -ORBD に登録されているすべての持続サーバーに関する情報を一覧表示します。 +ORBD ϿƤ뤹٤Ƥλ³С˴ؤɽޤ .TP 3 listappnames -現在 ORBD に登録されているすべてのサーバーのアプリケーション名を一覧表示します。 + ORBD ϿƤ뤹٤ƤΥСΥץꥱ̾ɽޤ .TP 3 listactive -ORDB によって起動され、現在実行されているすべての持続サーバーに関する情報を一覧表示します。 +ORDB ˤäƵư졢߼¹ԤƤ뤹٤Ƥλ³С˴ؤɽޤ .TP 3 locate \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> [\-endpointType\ <endpointType>\ ] -登録されたサーバーで作成したすべての ORB の特定の型について端点 (ポート) を検出します。サーバーが実行されていない場合、起動されます。端点の型が指定されていない場合、サーバーの ORB ごとに関連付けられている plain 型 または non\-protected 型の端点が返されます。 +Ͽ줿СǺ٤Ƥ ORB ηˤĤü (ݡ) 򸡽ФޤС¹ԤƤʤ硢ưޤüηꤵƤʤ硢С ORB Ȥ˴ϢդƤ plain ޤ non\-protected ü֤ޤ .TP 3 locateperorb \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> [\-orbid\ <ORB\ name>\ ] -登録されたサーバーの特定の ORB で登録された端点 (ポート) を検出します。サーバーが実行されていない場合、起動されます。\f2orbid\fP が指定されていない場合は、デフォルト値の「""」が\f2orbid\fPに割り当てられます。ORB が空文字列の \f2orbid\fP で作成されている場合、登録したポートがすべて返されます。 +Ͽ줿С ORB Ͽ줿ü (ݡ) 򸡽ФޤС¹ԤƤʤ硢ưޤ\f2orbid\fP ꤵƤʤϡǥեͤΡ""פ\f2orbid\fP˳ƤޤORB ʸ \f2orbid\fP ǺƤ硢ϿݡȤ٤֤ޤ .TP 3 orblist \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -サーバー上に定義された ORB の ORBId を一覧表示します。ORBId はサーバーで作成された ORB の文字列名です。サーバーが実行されていない場合、起動されます。 +С줿 ORB ORBId ɽޤORBId ϥСǺ줿 ORB ʸ̾ǤС¹ԤƤʤ硢ưޤ .TP 3 shutdown \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -ORBD に登録されたアクティブなサーバーを停止します。このコマンドの実行中に、\f2\-serverid\fP パラメータまたは \f2\-applicationName\fP パラメータで指定されたクラス内に定義された \f2shutdown()\fP メソッドも呼び出されてサーバープロセスを正しく停止します。 +ORBD Ͽ줿ƥ֤ʥСߤޤΥޥɤμ¹ˡ\f2\-serverid\fP ѥ᡼ޤ \f2\-applicationName\fP ѥ᡼ǻꤵ줿饹줿 \f2shutdown()\fP ᥽åɤƤӽФƥСץߤޤ .TP 3 startup \-serverid\ <server\ id\ >\ | \-applicationName\ <application\ name> -ORBD に登録されたサーバーを起動します。サーバーが実行されていない場合は、このコマンドでサーバーを起動します。サーバーがすでに実行されている場合は、ユーザーにエラーメッセージが返されます。 +ORBD Ͽ줿СưޤС¹ԤƤʤϡΥޥɤǥСưޤСǤ˼¹ԤƤϡ桼˥顼å֤ޤ .TP 3 help -サーバーがサーバーツールで使用できるすべてのコマンドを表示します。 +ССġǻѤǤ뤹٤ƤΥޥɤɽޤ .TP 3 quit -サーバーツールを終了します。 +Сġλޤ .RE .LP -.SH "関連項目" -.LP - +.SH "Ϣ" .LP orbd(1) diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/tnameserv.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/tnameserv.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/tnameserv.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,59 +19,59 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH tnameserv 1 "02 Jun 2010" +.TH tnameserv 1 "14 Apr 2011" .LP -.SH "名前" -Java IDL:一時ネームサービス \- \f2tnameserv\fP +.SH "̾" +Java IDL: ͡ॵӥ \- \f2tnameserv\fP .LP .LP -このドキュメントでは、Java IDL 一時ネームサービス \f2tnameserv\fP の使用方法について説明します。Java IDL には、Object Request Broker Daemon (ORBD) も含まれています。ORBD は、ブートストラップサービス、一時ネームサービス、\f3持続\fPネームサービス、およびサーバーマネージャーを含むデーモンプロセスです。Java IDL のすべてのチュートリアルでは ORBD を使用していますが、一時ネームサービスを使用する例では、\f2orbd\fP の代わりに \f2tnameserv\fP を使用できます。\f2orbd\fP ツールの詳細については、\f2orbd\fP の orbd(1)または +ΥɥȤǤϡJava IDL ͡ॵӥ \f2tnameserv\fP λˡˤĤޤJava IDL ˤϡObject Request Broker Daemon (ORBD) ޤޤƤޤORBD ϡ֡ȥȥåץӥ͡ॵӥ\f3³\fP͡ॵӥӥСޥ͡㡼ޤǡץǤJava IDL Τ٤ƤΥ塼ȥꥢǤ ORBD ѤƤޤ͡ॵӥѤǤϡ\f2orbd\fP \f2tnameserv\fP ѤǤޤ\f2orbd\fP ġξܺ٤ˤĤƤϡorbd orbd(1)ޤ .na -\f2ORBD に含まれる Java IDL ネームサービス\fP @ +\f2ORBD ˴ޤޤ Java IDL ͡ॵӥ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.htmlに関するトピックを参照してください。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlNaming.html˴ؤȥԥå򻲾ȤƤ .LP .LP -ここでは、以下の項目について説明します。 +ǤϡʲιܤˤĤޤ .LP .RS 3 .TP 2 o -Java\ IDL 一時ネームサービス +Java\ IDL ͡ॵӥ .TP 2 o -Java\ IDL 一時ネームサービスの起動 +Java\ IDL ͡ॵӥεư .TP 2 o -Java\ IDL 一時ネームサービスの停止 +Java\ IDL ͡ॵӥ .TP 2 o -サンプルクライアント:名前空間へのオブジェクトの追加 +ץ륯饤: ֤̾ؤΥ֥Ȥɲ .TP 2 o -サンプルクライアント:名前空間のブラウズ +ץ륯饤: ֤̾Υ֥饦 .RE .LP -.SH "Java\ IDL 一時ネームサービス" +.SH "Java IDL ͡ॵӥ" .LP .LP -CORBA の COS (Common Object Services) ネームサービスは、ファイルシステムがファイルに対してディレクトリ構造を提供しているのと同じように、オブジェクト参照に対してツリー構造のディレクトリを提供します。Java IDL の一時ネームサービスである \f2tnameserv\fP は、COS ネームサービスの仕様を単純な形で実装したものです。 +CORBA COS (Common Object Services) ͡ॵӥϡե륷ƥबեФƥǥ쥯ȥ깽¤󶡤ƤΤƱ褦ˡ֥ȻȤФƥĥ꡼¤Υǥ쥯ȥ󶡤ޤJava IDL ΰ͡ॵӥǤ \f2tnameserv\fP ϡCOS ͡ॵӥλͤñʷǼΤǤ .LP .LP -オブジェクト参照は名前空間に名前で格納され、オブジェクト参照と名前のペアは、それぞれ「ネームバインディング」と呼ばれます。ネームバインディングは「ネーミングコンテキスト」に組み込むことができます。ネーミングコンテキストはそれ自体がネームバインディングであり、ファイルシステムのサブディレクトリと同じ編成機能を持ちます。すべてのバインディングは「初期ネーミングコンテキスト」に格納されます。名前空間において、初期ネーミングコンテキストは唯一の持続的バインディングです。 それ以外のネーミングコンテキストは、Java IDL のネーミングサービスプロセスが停止し、再起動されると失われます。 +֥ȻȤ֤̾̾dzǼ졢֥ȻȤ̾Υڥϡ줾֥͡Хǥ󥰡פȸƤФޤ͡Хǥ󥰤ϡ֥͡ߥ󥰥ƥȡפȤ߹ळȤǤޤ͡ߥ󥰥ƥȤϤ켫Τ͡Хǥ󥰤Ǥꡢե륷ƥΥ֥ǥ쥯ȥƱǽޤ٤ƤΥХǥ󥰤ϡֽ͡ߥ󥰥ƥȡפ˳Ǽޤ֤̾ˤơ͡ߥ󥰥ƥȤͣλ³ŪХǥ󥰤ǤʳΥ͡ߥ󥰥ƥȤϡJava IDL Υ͡ߥ󥰥ӥץߤƵưȼޤ .LP .LP -アプレットまたはアプリケーションから COS ネームサービスを使用するためには、その ORB はネームサービスが動作しているホストのポートを知っているか、そのネームサービスの文字列化された初期ネーミングコンテキストにアクセスできなければなりません。ネームサービスは、Java\ IDL のネームサービスでもその他の COS 準拠のネームサービスでもかまいません。 +ץåȤޤϥץꥱ󤫤 COS ͡ॵӥѤ뤿ˤϡ ORB ϥ͡ॵӥưƤۥȤΥݡȤΤäƤ뤫Υ͡ॵӥʸ󲽤줿͡ߥ󥰥ƥȤ˥ǤʤФʤޤ󡣥͡ॵӥϡJava IDL Υ͡ॵӥǤ⤽¾ COS Υ͡ॵӥǤ⤫ޤޤ .LP -.SH "Java\ IDL 一時ネームサービスの起動" +.SH "Java IDL ͡ॵӥεư" .LP .LP -Java\ IDL ネームサービスは、ネームサービスを使用するアプリケーションまたはアプレットより前に起動しておかなければなりません。Java\ IDL 製品をインストールすると、Java IDL ネームサービスを起動するスクリプト (Solaris: \f2tnameserv\fP) か、実行可能ファイル (Windows NT: \f2tnameserv.exe\fP) が作成されます。バックグラウンドで動作するように、ネームサービスを起動してください。 +Java IDL ͡ॵӥϡ͡ॵӥѤ륢ץꥱޤϥץåȤ˵ưƤɬפޤJava\ IDL ʤ򥤥󥹥ȡ뤹ȡJava\ IDL ͡ॵӥư륹ץ (Solaris: \f2tnameserv\fP) ޤϼ¹Բǽե (Windows NT: \f2tnameserv.exe\fP) ޤХå饦ɤư褦ˡ͡ॵӥưƤ .LP .LP -特に指定しない場合、Java IDL ネームサービスは、ORB の \f2resolve_initial_references()\fP メソッドと \f2list_initial_references()\fP メソッドの実装に使用するブートストラッププロトコルに対してポート 900 で待機します。 +ä˻ꤷʤ硢Java IDL ͡ॵӥϡORB \f2resolve_initial_references()\fP ᥽åɤ \f2list_initial_references()\fP ᥽åɤμ˻Ѥ֡ȥȥåץץȥФƥݡ 900 Եޤ .LP .nf \f3 @@ -83,7 +83,7 @@ .LP .LP -ネームサーバーポートを指定しない場合、デフォルトでポート 900 が使用されます。Solaris ソフトウェアの実行時は、1024 より小さいポートでプロセスを開始する場合、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 1050 のように別のポートを指定し、ネームサービスをバックグラウンドで実行するには、UNIX コマンドシェルで次のように入力します。 +͡ॵСݡȤꤷʤ硢ǥեȤǥݡ 900 ѤޤSolaris եȥμ¹Իϡ1024 꾮ݡȤǥץ򳫻Ϥ硢root 桼ˤʤɬפޤΤᡢ1024 ޤ 1024 礭ݡֹѤ뤳Ȥ򤪴ᤷޤ1050 Τ褦̤ΥݡȤꤷ͡ॵӥХå饦ɤǼ¹ԤˤϡUNIX ޥɥǼΤ褦Ϥޤ .LP .nf \f3 @@ -95,7 +95,7 @@ .LP .LP -Windows の MS\-DOS システムプロンプトでは、次のように入力します。 +Windows MS\-DOS ƥץץȤǤϡΤ褦Ϥޤ .LP .nf \f3 @@ -107,32 +107,32 @@ .LP .LP -ネームサーバーのクライアントには、新しいポート番号を知らせる必要があります。このため、ORB オブジェクトの作成時に \f2org.omg.CORBA.ORBInitialPort\fP プロパティーに新しいポート番号を設定します。 +͡ॵСΥ饤ȤˤϡݡֹΤ餻ɬפޤΤᡢORB ֥Ȥκ \f2org.omg.CORBA.ORBInitialPort\fP ץѥƥ˿ݡֹꤷޤ .LP .SS -異なるマシン上でのクライアントとサーバーの実行 +ۤʤޥǤΥ饤ȤȥСμ¹ .LP .LP -Java IDL と RMI\-IIOP のほとんどのチュートリアルでは、ネームサービス、サーバー、およびクライアントはすべて開発用のマシン上で実行されます。実際に配備する場合には、クライアントとサーバーを、ネームサービスとは異なるホスト上で実行することが多くなります。 +Java IDL RMI\-IIOP ΤۤȤɤΥ塼ȥꥢǤϡ͡ॵӥСӥ饤ȤϤ٤ƳȯѤΥޥǼ¹Ԥޤºݤˤϡ饤ȤȥС򡢥͡ॵӥȤϰۤʤۥȾǼ¹Ԥ뤳Ȥ¿ʤޤ .LP .LP -クライアントとサーバーがネームサービスを見つけるには、クライアントとサーバーが、ネームサービスが実行されているポートの番号とホストを認識している必要があります。そのためには、クライアントとサーバーのファイル内の \f2org.omg.CORBA.ORBInitialPort\fP プロパティーと \f2org.omg.CORBA.ORBInitialHost\fP プロパティーをネームサービスが実行されているポートの番号とマシンの名前に設定します。この例は、 +饤ȤȥС͡ॵӥ򸫤Ĥˤϡ饤ȤȥС͡ॵӥ¹ԤƤݡȤֹȥۥȤǧƤɬפޤΤˤϡ饤ȤȥСΥե \f2org.omg.CORBA.ORBInitialPort\fP ץѥƥ \f2org.omg.CORBA.ORBInitialHost\fP ץѥƥ͡ॵӥ¹ԤƤݡȤֹȥޥ̾ꤷޤϡ .na -\f2「RMI\-IIOP を使った Hello World の例」\fP @ +\f2RMI\-IIOP Ȥä Hello World פ˼Ƥޤ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/rmi\-iiop/rmiiiopexample.htmlに示されています。コマンド行オプション \f2\-ORBInitialPort\fP \f2nameserverport#\fP と \f2\-ORBInitialHost\fP \f2nameserverhostname\fP を使用して、クライアントとサーバーに対してネームサービスを探す場所を指定することもできます。 +http://java.sun.com/javase/6/docs/technotes/guides/rmi\-iiop/rmiiiopexample.htmlޥɹԥץ \f2\-ORBInitialPort\fP \f2nameserverport#\fP \f2\-ORBInitialHost\fP \f2nameserverhostname\fP Ѥơ饤ȤȥСФƥ͡ॵӥõꤹ뤳ȤǤޤ .na -\f2「Java IDL: 2 台のマシン上で実行する Hello World プログラム」\fP @ +\f2Java IDL: 2 ΥޥǼ¹Ԥ Hello World ץ\fP @ .fi -http://java.sun.com/javase/6/docs/technotes/guides/idl/tutorial/jidl2machines.html には、コマンド行オプションを使用して指定する方法が示されています。 +http://java.sun.com/javase/6/docs/technotes/guides/idl/tutorial/jidl2machines.html ˤϡޥɹԥץѤƻꤹˡƤޤ .LP .LP -たとえば、一時ネームサービス \f2tnameserv\fP が、ホスト \f2nameserverhost\fP のポート 1050 上で実行されているとします。さらに、クライアントがホスト \f2clienthost\fP 上で実行され、サーバーはホスト \f2serverhost\fP 上で実行されているとします。 +ȤС͡ॵӥ \f2tnameserv\fP ۥ \f2nameserverhost\fP Υݡ 1050 Ǽ¹ԤƤȤޤˡ饤Ȥۥ \f2clienthost\fP Ǽ¹Ԥ졢Сϥۥ \f2serverhost\fP Ǽ¹ԤƤȤޤ .LP .RS 3 .TP 2 o -次のように、ホスト \f2nameserverhost\fP 上で \f2tnameserv\fP を起動します。 +Τ褦ˡۥ \f2nameserverhost\fP \f2tnameserv\fP ưޤ .nf \f3 .fl @@ -144,7 +144,7 @@ .fi .TP 2 o -\f2serverhost\fP 上でサーバーを起動します。 +\f2serverhost\fP ǥСưޤ .nf \f3 .fl @@ -154,7 +154,7 @@ .fi .TP 2 o -\f2clienthost\fP 上でクライアントを起動します。 +\f2clienthost\fP ǥ饤Ȥưޤ .nf \f3 .fl @@ -166,38 +166,34 @@ .LP .SS -\-J オプション +\-J ץ .LP -このコマンド行オプションは、\f2tnameserve\fP とともに使用できます。 -.RS 3 - -.LP +Υޥɹԥץϡ\f2tnameserve\fP ȤȤ˻ѤǤޤ .RS 3 .TP 3 \-Joption -Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。 +Java ۥޥ \f2option\fP Ϥޤ\f2option\fP ˤϡjava(1)Υե󥹥ڡ˵ܤƤ륪ץ 1 ĻꤷޤȤС\f3\-J\-Xms48m\fP Ȼꤹȡȥåץ꡼ 48M ХȤꤵޤ\f3\-J\fP Ȥäظμ¹ԴĶ˥ץϤȤϤ褯ԤƤޤ .RE .LP -.RE -.SH "Java\ IDL 一時ネームサービスの停止" +.SH "Java IDL ͡ॵӥ" .LP .LP -Java IDL ネームサービスを停止するには、Unix の場合は、\f2kill\fP などのオペレーティングシステムのコマンドを使い、Windows の場合は、\f2Ctrl\-C\fP を使います。ネームサービスを明示的に停止するまでは、呼び出し待機状態が続きます。なお、サービスを終了させると、Java\ IDL ネームサービスに登録されている名前は失われます。 +Java IDL ͡ॵӥߤˤϡUnix ξϡ\f2kill\fP ʤɤΥڥ졼ƥ󥰥ƥΥޥɤȤWindows ξϡ\f2Ctrl\-C\fP Ȥޤ͡ॵӥŪߤޤǤϡƤӽФԵ֤³ޤʤӥλȡJava IDL ͡ॵӥϿƤ̾ϼޤ .LP -.SH "サンプルクライアント:名前空間へのオブジェクトの追加" +.SH "ץ륯饤: ֤̾ؤΥ֥Ȥɲ" .LP .LP -次に示すサンプルプログラムは、名前を名前空間に追加する方法を示すものです。このサンプルプログラムは、このままの状態で完全に動作する一時ネームサービスクライアントで、次のような単純なツリーを作成するものです。 +˼ץץϡ֤̾̾ɲäˡ򼨤ΤǤΥץץϡΤޤޤξ֤Ǵư͡ॵӥ饤ȤǡΤ褦ñʥĥ꡼ΤǤ .LP .nf \f3 .fl \fP\f3 .fl - \fP\f4初期\fP\f3 + \fP\f4\fP\f3 .fl - \fP\f4ネーミングコンテキスト\fP\f3 + \fP\f4͡ߥ󥰥ƥ\fP\f3 .fl / \\ .fl @@ -215,7 +211,7 @@ .LP .LP -この例で、\f3plans\fP はオブジェクト参照、\f3Personal\fP は \f3calendar\fP と \f3schedule\fP の 2 つのオブジェクト参照を含むネーミングコンテキストです。 +ǡ\f3plans\fP ϥ֥Ȼȡ\f3Personal\fP \f3calendar\fP \f3schedule\fP 2 ĤΥ֥ȻȤޤ͡ߥ󥰥ƥȤǤ .LP .nf \f3 @@ -242,7 +238,7 @@ .fi .LP -前述の「Java IDL 一時ネームサービスの起動」で、ネームサーバーはポート 1050 を使用して起動しました。 次のコードで、このポート番号をクライアントプログラムに知らせます。 +ҤΡJava IDL ͡ॵӥεưפǡ͡ॵСϥݡ 1050 ѤƵưޤΥɤǡΥݡֹ򥯥饤ȥƥΤ餻ޤ .nf \f3 .fl @@ -258,7 +254,7 @@ .fi .LP -次のコードでは、初期ネーミングコンテキストを取得し、それを \f3ctx\fP に代入します。2 行目では、\f3ctx\fP をダミーのオブジェクト参照 \f3objref\fP にコピーします。 この \f3objref\fP には、あとでさまざまな名前を割り当てて名前空間に追加します。 +ΥɤǤϡ͡ߥ󥰥ƥȤ \f3ctx\fP ޤ2 ܤǤϡ\f3ctx\fP ߡΥ֥Ȼ \f3objref\fP ˥ԡޤ objref ˤϡȤǤޤޤ̾Ƥ֤̾ɲäޤ .nf \f3 .fl @@ -274,7 +270,7 @@ .fi .LP -次のコードでは、text 型の名前 plans を作成し、それをダミーのオブジェクト参照にバインドします。その後、\f2rebind\fP を使用して初期ネーミングコンテキストの下に "plans" を追加しています。\f2rebind\fP メソッドを使用すれば、\f2bind\fP を使用した場合に発生する例外を発生させずに、このプログラムを何度も繰り返し実行できます。 +ΥɤǤϡtext ̾ plans ߡΥ֥ȻȤ˥Хɤޤθ塢rebind Ѥƽ͡ߥ󥰥ƥȤβ \f2plans ɲäƤޤ\fP \f2rebind\fP ᥽åɤѤСbind Ѥȯ㳰ȯˡ \f2Υץ٤֤ⷫ¹ԤǤޤ\fP .nf \f3 .fl @@ -292,7 +288,7 @@ .fi .LP -次のコードでは、directory 型の Personal というネーミングコンテキストを作成します。その結果得られるオブジェクト参照 \f3ctx2\fP をこの名前にバインドし、初期ネーミングコンテキストに追加します。 +ΥɤǤϡdirectory Personal Ȥ͡ߥ󥰥ƥȤޤη륪֥Ȼ \f3ctx2\fP 򤳤̾˥Хɤ͡ߥ󥰥ƥȤɲäޤ .nf \f3 .fl @@ -310,7 +306,7 @@ .fi .LP -残りのコードでは、ダミーのオブジェクト参照を schedule と calendar という名前でネーミングコンテキスト "Personal" (\f3ctx2\fP) にバインドします。 +ĤΥɤǤϡߡΥ֥ȻȤ schedule calendar Ȥ̾ǥ͡ߥ󥰥ƥ "Personal" (\f3ctx2\fP) ˥Хɤޤ .nf \f3 .fl @@ -350,10 +346,10 @@ .fi .LP -.SH "サンプルクライアント:名前空間のブラウズ" +.SH "ץ륯饤: ֤̾Υ֥饦" .LP .LP -次のサンプルプログラムでは、名前空間をブラウズする方法を示します。 +ΥץץǤϡ֤֥̾饦ˡ򼨤ޤ .LP .nf \f3 @@ -380,7 +376,7 @@ .fi .LP -前述の「Java IDL 一時ネームサービスの起動」で、ネームサーバーはポート 1050 を使用して起動しました。 次のコードで、このポート番号をクライアントプログラムに知らせます。 +ҤΡJava IDL ͡ॵӥεưפǡ͡ॵСϥݡ 1050 ѤƵưޤΥɤǡΥݡֹ򥯥饤ȥƥΤ餻ޤ .nf \f3 .fl @@ -400,7 +396,7 @@ .fi .LP -次のコードでは、初期ネーミングコンテキストを取得しています。 +ΥɤǤϡ͡ߥ󥰥ƥȤƤޤ .nf \f3 .fl @@ -414,7 +410,7 @@ .fi .LP -\f2list\fP メソッドは、ネーミングコンテキストに追加されているバインディングをリストします。この場合、最大 1000 個までのバインディングが初期ネーミングコンテキストから BindingListHolder に返されます。 残りのバインディングは、BindingIteratorHolder に返されます。 +\f2list\fP ᥽åɤϡ͡ߥ󥰥ƥȤɲäƤХǥ󥰤ꥹȤޤξ硢 1000 ĤޤǤΥХǥ󥰤͡ߥ󥰥ƥȤ BindingListHolder ֤ޤĤΥХǥ󥰤ϡBindingIteratorHolder ֤ޤ .nf \f3 .fl @@ -430,7 +426,7 @@ .fi .LP -次のコードでは、返された BindingListHolder からバインディングの配列を取得します。バインディングがない場合は、プログラムは終了します。 +ΥɤǤϡ֤줿 BindingListHolder Хǥ󥰤ޤХǥ󥰤ʤϡץϽλޤ .nf \f3 .fl @@ -444,7 +440,7 @@ .fi .LP -残りのコードでは、バインディングに対してループ処理を行い、名前を出力します。 +ĤΥɤǤϡХǥ󥰤Фƥ롼׽Ԥ̾Ϥޤ .nf \f3 .fl diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/unpack200.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/unpack200.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/unpack200.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,159 +19,125 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH unpack200 1 "02 Jun 2010" +.TH unpack200 1 "14 Apr 2011" .LP -.SH "名前" -unpack200 \- JAR アンパックツール +.SH "̾" +unpack200 \- JAR ѥåġ .LP .RS 3 .TP 2 o -形式 + .TP 2 o -説明 + .TP 2 o -オプション +ץ .TP 2 o -終了ステータス +λơ .TP 2 o -関連項目 +Ϣ .TP 2 o -説明 +ջ .RE .LP -.SH "形式" -.LP - +.SH "" .LP .LP \f4unpack200\fP\f2 [ \fP\f2options\fP ] \f2input\-file\fP \f2JAR\-file\fP .LP .LP -オプションの指定順序に決まりはありません。コマンド行に指定された最後のオプションが、それ以前に指定されたすべてのオプションより優先されます。 -.LP -.RS 3 - +ץλ˷ޤϤޤ󡣥ޥɹԤ˻ꤵ줿ǸΥץ󤬡˻ꤵ줿٤ƤΥץͥ褵ޤ .LP .RS 3 .TP 3 input\-file -入力ファイルの名前。 入力ファイルは通常、pack200 gzip ファイルか pack200 ファイルです。このほかに、0 を設定すれば pack200(1) から作成された JAR ファイルも入力ファイルとして使用できます。 この場合、入力ファイルの内容が Pack200 マーカーとともに出力 JAR ファイルにコピーされます。 +ϥե̾ϥե̾pack200 gzip ե뤫 pack200 եǤΤۤˡ0 ꤹ pack200(1) 줿 JAR եϥեȤƻѤǤޤξ硢ϥեƤ Pack200 ޡȤȤ˽ JAR ե˥ԡޤ .TP 3 JAR\-file -出力 JAR ファイル名。 + JAR ե̾ .RE .LP -.RE -.SH " 説明" -.LP - +.SH " " .LP .LP -\f2unpack200\fP は、\f2pack200\fP(1) で作成されたパックファイルを JAR ファイルに変換するネイティブ実装です。一般的な使用方法: -.LP -.RS 3 - +\f2unpack200\fP ϡpack200(1) Ǻ줿ѥåե JAR եѴ \f2ͥƥּ\fPǤŪʻˡ: .LP .LP \f2% unpack200 myarchive.pack.gz myarchive.jar\fP .LP -.RE -.LP -この例では、デフォルトの \f2unpack200\fP 設定で、\f2myarchive.jar\fP から \f2myarchive.pack.gz\fP が作成されます。 -.LP -.SH "オプション" .LP -.SS -標準オプション +Ǥϡ \f2ǥեȤ unpack200 ǡmyarchive.pack.gz\fP \f2myarchive.jar\fP \f2ޤ\fP .LP -.RS 3 - +.SH "ץ" .LP .LP \f4\-Hvalue \-\-deflate\-hint=\fP\f2value\fP .LP -.RS 3 - .LP -.LP -JAR ファイル内のすべてのエントリに \f2true\fP、\f2false\fP、\f2keep\fP としてデフレーションを設定します。デフォルトモードは \f2keep\fP です。\f2true\fP または \f2false\fP の場合、デフォルトの動作をオーバーライドして、出力 JAR ファイル内のすべてのエントリのデフレーションモードを設定します。 -.LP -.RE -.RE -.SS -非標準オプション -.LP -.RS 3 - +JAR եΤ٤ƤΥȥ \f2true\fP \f2false\fP \f2keep\fP Ȥƥǥե졼ꤷޤǥեȥ⡼ɤ \f2keep\fP Ǥ \f2true\fP ޤ \f2false 硢\fPǥեȤư򥪡С饤ɤơ JAR եΤ٤ƤΥȥΥǥե졼⡼ɤꤷޤ .LP .LP \f4\-r \-\-remove\-pack\-file\fP .LP -.RS 3 - -.LP .LP -入力パックファイルを削除します。 +ϥѥåեޤ .LP -.RE .LP \f4\-v \-\-verbose\fP .LP -.RS 3 - -.LP .LP -最小限のメッセージを出力します。このオプションを複数指定すると、より長いメッセージが出力されます。 +Ǿ¤ΥåϤޤΥץʣꤹȡĹåϤޤ .LP -.RE .LP \f4\-q \-\-quiet\fP .LP -.RS 3 - -.LP .LP -メッセージを表示せずに動作します。 +åɽưޤ .LP -.RE .LP \f4\-lfilename \-\-log\-file=\fP\f2filename\fP .LP -.RS 3 - +.LP +ϥåΥեꤷޤ +.LP +.LP +\f4\-? \-h \-\-help\fP .LP .LP -出力メッセージのログファイルを指定します。 +Υޥɤ˴ؤإ׾Ϥޤ +.LP .LP -.RE -.RE -.SH "終了ステータス" +\f4\-V \-\-version\fP .LP - +.LP +Υޥɤ˴ؤСϤޤ .LP .LP -次の終了値が返されます。 +\f4\-J\fP\f2option\fP +.LP .LP -.RS 3 - +unpack200 ˤäƸƤӽФ Java ưġ \f2ץ\fP \f2Ϥޤ\fP +.LP +.SH "λơ" .LP .LP -\f2\ 0\fP " 成功" +νλ֤ͤޤ .LP .LP -\f2>0\fP " エラー" +\f2\ 0\fP " " +.LP .LP -.RE -.SH "関連項目" +\f2>0\fP " 顼" +.LP +.SH "Ϣ" .LP .RS 3 .TP 2 @@ -180,35 +146,33 @@ .TP 2 o .na -\f2Java SE のドキュメント\fP @ +\f2Java SE Υɥ\fP @ .fi http://java.sun.com/javase/6/docs/index.html .TP 2 o .na -\f2「Java 配備ガイド \- Pack200」\fP @ +\f2Java \- Pack200\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/deployment/deployment\-guide/pack200.html .TP 2 o -jar(1) \- Java Archive ツール」 +jar(1) \- Java Archive ġ .TP 2 o -「jarsigner(1) \- JAR 署名および検証ツール」 +jarsigner(1) \- JAR ̾Ӹڥġ .TP 2 o -\f2attributes(5)\fP のマニュアルページ +\f2attributes(5)\fP Υޥ˥奢ڡ .RE .LP -.SH "注意事項" -.LP - +.SH "ջ" .LP .LP -このコマンドと \f2unpack(1)\fP を混同しないでください。これらは別製品です。 +Υޥɤ \f2unpack(1) \fPƱʤǤʤǤ .LP .LP -SDK に付属する Java SE API 仕様との相違が見つかった場合には、仕様を優先してください。 +SDK ° Java SE API ͤȤ㤬Ĥäˤϡͤͥ褷Ƥ .LP diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/wsgen.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/wsgen.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/wsgen.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,30 +19,24 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH wsgen 1 "02 Jun 2010" -.SH "名前" -wsgen \- XML Web Services (JAX\-WS) 2.0 のための Java(TM) API -.RS 3 - +.TH wsgen 1 "14 Apr 2011" +.SH "̾" +wsgen \- XML Web Services (JAX\-WS) 2.0 Τ Java(TM) API .LP -.LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3実装バージョン:\fP 2.1.1 -.LP +\f3С:\fP 2.1.1 .LP -\f2wsgen\fP ツールは、JAX\-WS Web サービスで使用される JAX\-WS ポータブルアーティファクトを生成します。このツールは、Web サービスのエンドポイント実装クラス (SEI) を読み取り、Web サービスの配備と呼び出しに必要なすべてのアーティファクトを生成します。 -.LP -.RE -.SH "概要" +\f2wsgen\fP ġϡJAX\-WS Web ӥǻѤ JAX\-WS ݡ֥륢ƥեȤޤΥġϡWeb ӥΥɥݥȼ饹 (SEI) ɤ߼ꡢWeb ӥȸƤӽФɬפʤ٤ƤΥƥեȤޤ +.SH "" .LP -\f2wsgen\fP ツールは、JAX\-WS Web サービスで使用される JAX\-WS ポータブルアーティファクトを生成します。このツールは、Web サービスのエンドポイントクラスを読み取り、Web サービスの配備と呼び出しに必要なすべてのアーティファクトを生成します。JAXWS 2.1.1 RI には wsgen Ant タスクも用意されています。詳細は、 +\f2wsgen\fP ġϡJAX\-WS Web ӥǻѤ JAX\-WS ݡ֥륢ƥեȤޤΥġϡWeb ӥΥɥݥȥ饹ɤ߼ꡢWeb ӥȸƤӽФɬפʤ٤ƤΥƥեȤޤJAXWS 2.1.1 RI ˤ wsgen Ant ѰդƤޤܺ٤ϡ .na -\f2Wsgen Ant タスク\fP @ +\f2Wsgen Ant \fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsgenant.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsgenant.html򻲾ȤƤ .LP -.SH "wsgen の起動" +.SH "wsgen εư" .RS 3 .TP 2 o @@ -69,7 +63,7 @@ .RE .LP -.SH "構文" +.SH "ʸ" .nf \f3 .fl @@ -80,7 +74,7 @@ \fP .fi .LP -次の表に、\f2wsgen\fP のオプションを示します。 +ɽˡ \f2wsgen\fP Υץ򼨤ޤ .br .LP .TS @@ -111,7 +105,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -入力クラスファイルの検索場所を指定します +ϥ饹եθꤷޤ .br .di .nr a| \n(dn @@ -127,7 +121,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2\-classpath <path>\fP と同じ +\-classpath <path> \f2ƱǤ\fP .br .di .nr b| \n(dn @@ -143,7 +137,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成される出力ファイルを格納する場所を指定する +ϥեǼꤷޤ .br .di .nr c| \n(dn @@ -159,7 +153,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可性があります +٥ĥ (ͤǵꤵƤʤǽ) ĤޤĥѤȡץꥱΰܿ줿ꡢۤμȤ߱ѤԤʤʤޤ .br .di .nr d| \n(dn @@ -175,7 +169,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ヘルプを表示します +إפɽޤ .br .di .nr e| \n(dn @@ -191,7 +185,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されたファイルを保持します +줿եݻޤ .br .di .nr f| \n(dn @@ -207,7 +201,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \-wsdl オプションと組み合わせて使用します。WSDL などの生成されたリソースファイルの格納場所を指定します + \-wsdl ץȤ߹碌ƻѤޤWSDL ʤɤ줿꥽եγǼꤷޤ .br .di .nr g| \n(dn @@ -223,7 +217,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されるソースファイルを格納する場所を指定する +륽եǼꤹ .br .di .nr h| \n(dn @@ -239,7 +233,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイラが実行している処理に関するメッセージを出力します +ѥ餬¹ԤƤ˴ؤåϤޤ .br .di .nr i| \n(dn @@ -255,7 +249,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -バージョン情報を出力します。このオプションを使用した場合、バージョン情報が出力されるだけです。通常の処理は実行されません。 +СϤޤΥץѤ硢С󤬽ϤǤ̾νϼ¹Ԥޤ .br .di .nr j| \n(dn @@ -271,7 +265,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2wsgen\fP は、デフォルトでは WSDL ファイルを生成しません。このフラグは省略可能ですが、指定した場合は \f2wsgen\fP が WSDL ファイルを生成するようになります。このフラグは通常、エンドポイントの配備前に開発者が WSDL を参照できるようにするためだけに使用されます。\f2protocol\fP は省略可能であり、\f2wsdl:binding\fP で使用すべきプロトコルを指定するために使用されます。有効なプロトコルは次のとおりです。\f2soap1.1\fP と \f2Xsoap1.2\fP。デフォルトは \f2soap1.1\fP です。\f2Xsoap1.2\fP は標準ではないため、\f2\-extension\fP オプションと組み合わせないと使用できません。 +ǥեȤǤ \f2wsgen\fP WSDL եޤ󡣤Υե饰ϾάǽǤꤷ \f2wsgen\fP WSDL ե褦ˤʤޤΥե饰̾ɥݥȤ˳ȯԤ WSDL 򻲾ȤǤ褦ˤ뤿˻Ѥޤ \f2protocol\fP ϾάǽǤꡢwsdl:binding ǻѤ٤ץȥꤹ뤿 \f2Ѥޤ\fPͭʥץȥϼΤȤǤ \f2soap1.1\fP \f2Xsoap1.2\fPǥեȤ \f2soap1.1\fP Ǥ \f2Xsoap1.2\fP ɸǤϤʤᡢ \f2\-extension\fP ץȤ߹碌ʤȻѤǤޤ .br .di .nr k| \n(dn @@ -287,7 +281,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \f2\-wsdl\fP オプションと組み合わせて使用します。WSDL 内で生成されるべき \f2wsdl:service\fP の名前を指定するために使用します。例 : \f2\-servicename "{http://mynamespace/}MyService"\fP + \f2\-wsdl\fP ץȤ߹碌ƻѤޤWSDL ٤ \f2wsdl:service\fP ̾ꤹ뤿˻Ѥޤ: \f2\-servicename "{http://mynamespace/}MyService"\fP .br .di .nr l| \n(dn @@ -303,7 +297,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -常に \f2\-wsdl\fP オプションと組み合わせて使用します。WSDL 内で生成されるべき \f2wsdl:port\fP の名前を指定するために使用します。例 : \f2\-portname "{http://mynamespace/}MyPort"\fP + \f2\-wsdl\fP ץȤ߹碌ƻѤޤWSDL ٤ \f2wsdl:port\fP ̾ꤹ뤿˻Ѥޤ: \f2\-portname "{http://mynamespace/}MyPort"\fP .br .br .di @@ -315,7 +309,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f4\-classpath <path>\fP .if \n(80<\n(38 .nr 80 \n(38 @@ -346,7 +340,7 @@ .80 .rm 80 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -386,7 +380,7 @@ .nr 41 \n(80+(3*\n(38) .nr 81 +\n(41 .nr TW \n(81 -.if t .if \n(TW>\n(.li .tm Table at line 143 file Input is too wide - \n(TW units +.if t .if \n(TW>\n(.li .tm Table at line 137 file Input is too wide - \n(TW units .fc   .nr #T 0-1 .nr #a 0-1 @@ -403,7 +397,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -633,7 +627,7 @@ .if \n-(b.=0 .nr c. \n(.c-\n(d.-57 .LP -.SH "例" +.SH "" .nf \f3 .fl @@ -641,7 +635,7 @@ .fl .fi .LP -\f3stock\fP ディレクトリ内に @WebService 注釈が付けられた、StockService に必要なラッパークラスが生成されます。 +\f3stock\fP ǥ쥯ȥ @WebService ᤬դ줿StockService ɬפʥåѡ饹ޤ .nf \f3 .fl @@ -649,7 +643,7 @@ .fl .fi .LP -SOAP 1.1 WSDL と、@WebService 注釈が付けられた Java クラス stock.StockService のスキーマが生成されます。 +SOAP 1.1 WSDL ȡ@WebService ᤬դ줿 Java 饹 stock.StockService Υޤޤ .nf \f3 .fl @@ -657,6 +651,6 @@ .fl .fi .LP -SOAP 1.2 WSDL が生成されます。 +SOAP 1.2 WSDL ޤ .LP -サービスを配備するときに JAXWS ランタイムによって自動的に WSDL が生成されるため、開発時に WSDL を生成する必要はありません。 +ӥȤ JAXWS 󥿥ˤäƼưŪ WSDL 뤿ᡢȯ WSDL ɬפϤޤ diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/wsimport.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/wsimport.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/wsimport.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,44 +19,44 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH wsimport 1 "02 Jun 2010" -.SH "名前" -wsimport \- XML Web Services (JAX\-WS) 2.0 のための Java(TM) API +.TH wsimport 1 "14 Apr 2011" +.SH "̾" +wsimport \- XML Web Services (JAX\-WS) 2.0 Τ Java(TM) API .LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3実装バージョン:\fP 2.1.1 +\f3С:\fP 2.1.1 .br -.SH "概要" +.SH "" .LP -\f2wsimport\fP ツールは、次のような JAX\-WS ポータブルアーティファクトを生成します。 +\f2wsimport\fP ġϡΤ褦 JAX\-WS ݡ֥륢ƥեȤޤ .RS 3 .TP 2 o -サービスエンドポイントインタフェース (SEI) +ӥɥݥȥ󥿥ե (SEI) .TP 2 o -サービス +ӥ .TP 2 o -wsdl:fault からマップされる例外クラス (存在する場合) +wsdl:fault ޥåפ㳰饹 (¸ߤ) .TP 2 o -応答 wsdl:message から派生する非同期応答 Bean (存在する場合) + wsdl:message Ʊ Bean (¸ߤ) .TP 2 o -JAX\-B が生成する値タイプ (スキーマの型からマップされた Java クラス) +JAX\-B ͥ (ޤηޥåפ줿 Java 饹) .RE .LP -これらのアーティファクトは、WSDL ドキュメント、スキーマドキュメント、およびエンドポイント実装とともに WAR ファイル内にパッケージ化して配備することができます。また、wsimport Ant タスクも用意されています。 +ΥƥեȤϡWSDL ɥȡޥɥȡӥɥݥȼȤȤ WAR ե˥ѥå뤳ȤǤޤޤwsimport Ant ѰդƤޤ .na -\f2Wsimport Ant タスク\fP @ +\f2wsimport Ant \fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsimportant.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/wsimportant.html򻲾ȤƤ .br .LP -.SH "wsimport の起動" +.SH "wsimport εư" .RS 3 .TP 2 o @@ -77,7 +77,7 @@ .RE .LP -.SH "構文" +.SH "ʸ" .nf \f3 .fl @@ -86,7 +86,7 @@ \fP .fi .LP -次の表に、\f2wsimport\fP のオプションを示します。 +ɽˡ \f2wsimport\fP Υץ򼨤ޤ .LP .TS .if \n+(b.=1 .nr d. \n(.c-\n(c.-1 @@ -116,7 +116,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成される出力ファイルを格納する場所を指定します +ϥեǼꤷޤ .br .di .nr a| \n(dn @@ -132,7 +132,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -外部の JAX\-WS または JAXB バインディングファイルを指定します (\f2<file>\fP ごとに \f2\-b\fP が必要となる) + JAX\-WS ޤ JAXB Хǥ󥰥եꤷޤ ( \f2<file>\fP Ȥ \f2\-b\fP ɬפȤʤ) .br .di .nr b| \n(dn @@ -148,7 +148,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -このオプションを JAXB スキーマコンパイラに渡します +Υץ JAXB ޥѥϤޤ .br .di .nr c| \n(dn @@ -164,11 +164,11 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -外部エンティティー参照を解決するためのカタログファイルを指定します。 TR9401、XCatalog、OASIS XML Catalog の各形式がサポートされています。 +ƥƥȤ褹뤿ΥեꤷޤTR9401XCatalogOASIS XML Catalog γƷݡȤƤޤ .na -\f2カタログ\fP @ +\f2\fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/catalog\-support.htmlのドキュメントをお読みになり、\f3カタログ\fPのサンプルを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/catalog\-support.htmlΥɥȤɤߤˤʤꡢ\f3\fPΥץ򻲾ȤƤ .br .di .nr d| \n(dn @@ -184,7 +184,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可能性があります +٥ĥ (ͤǵꤵƤʤǽ) ĤޤĥѤȡץꥱΰܿ줿ꡢۤμȤ߱ѤԤʤʤǽޤ .br .di .nr e| \n(dn @@ -200,7 +200,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -ヘルプを表示します +إפɽޤ .br .di .nr f| \n(dn @@ -232,7 +232,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -HTTP プロキシサーバーを指定します (デフォルトのポートは 8080) +HTTP ץСꤷޤ (ǥեȤΥݡȤ 8080) .br .di .nr h| \n(dn @@ -248,7 +248,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されたファイルを保持します +줿եݻޤ .br .di .nr i| \n(dn @@ -264,7 +264,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -このコマンド行オプション経由でターゲットパッケージを指定した場合、その指定内容は、パッケージ名に対するすべての WSDL/スキーマバインディングカスタマイズや、 仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます +Υޥɹԥץͳǥåȥѥåꤷ硢λƤϡѥå̾Ф뤹٤Ƥ WSDL/ޥХǥ󥰥ޥ䡢 ͤǵꤵƤǥեȤΥѥå̾르ꥺͥ褵ޤ .br .di .nr j| \n(dn @@ -280,7 +280,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -生成されるソースファイルを格納する場所を指定します +륽եǼꤹ .br .di .nr k| \n(dn @@ -296,7 +296,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -コンパイラが実行している処理に関するメッセージを出力します +ѥ餬¹ԤƤ˴ؤåϤޤ .br .di .nr l| \n(dn @@ -312,7 +312,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -バージョン情報を出力します +СϤޤ .br .di .nr m| \n(dn @@ -344,7 +344,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -\f2@WebServiceClient.wsdlLocation\fP 値 +\f2@WebServiceClient.wsdlLocation\fP .br .di .nr o| \n(dn @@ -360,7 +360,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -指定された JAX\-WS 仕様バージョンに従ってコードを生成します。バージョン 2.0 では、JAX\-WS 2.0 仕様に準拠したコードを生成します。 +ꤵ줿 JAX\-WS ͥС˽äƥɤޤС 2.0 ǤϡJAX\-WS 2.0 ͤ˽򤷤ɤޤ .br .di .nr p| \n(dn @@ -376,7 +376,7 @@ .ll \n(34u*1u/3u .if \n(.l<\n(81 .ll \n(81u .in 0 -wsimport 出力を抑制します +wsimport Ϥޤ .br .di .nr q| \n(dn @@ -387,7 +387,7 @@ .nf .ll \n(34u .nr 80 0 -.nr 38 \w\f3オプション\fP +.nr 38 \w\f3ץ\fP .if \n(80<\n(38 .nr 80 \n(38 .nr 38 \w\f3\-d <directory> \fP .if \n(80<\n(38 .nr 80 \n(38 @@ -422,7 +422,7 @@ .nr 38 \n(n- .if \n(80<\n(38 .nr 80 \n(38 .nr 81 0 -.nr 38 \w\f3説明\fP +.nr 38 \w\f3\fP .if \n(81<\n(38 .nr 81 \n(38 .81 .rm 81 @@ -483,7 +483,7 @@ .ta \n(80u \n(81u .nr 31 \n(.f .nr 35 1m -\&\h'|\n(40u'\f3オプション\fP\h'|\n(41u'\f3説明\fP +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP .ne \n(a|u+\n(.Vu .if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) .ta \n(80u \n(81u @@ -766,13 +766,294 @@ .TE .if \n-(b.=0 .nr c. \n(.c-\n(d.-72 .LP -\f2\-b\fP オプションを使って、複数の JAX\-WS および JAXB バインディングファイルを指定できます。 これらのファイルを使って、パッケージ名や Bean 名など、さまざまなカスタマイズが可能です。 JAX\-WS および JAXB バインディングファイルの詳細は、 +\-b ץȤäơʣ JAX\-WS JAXB Хǥ󥰥ե \f2Ǥޤ\fP ΥեȤäơѥå̾ Bean ̾ʤɡޤޤʥޥǽǤJAX\-WS JAXB Хǥ󥰥եξܺ٤ϡ .na -\f2カスタマイズマニュアル\fP @ +\f2ޥޥ˥奢\fP @ .fi -https://jax\-ws.dev.java.net/nonav/2.1.1/docs/customizations.htmlを参照してください。 +https://jax\-ws.dev.java.net/nonav/2.1.1/docs/customizations.html򻲾ȤƤ +.LP +ɽˡ \f2wsimport\fP ɸ४ץ򼨤ޤ .LP -.SH "例" +.TS +.if \n+(b.=1 .nr d. \n(.c-\n(c.-1 +.de 35 +.ps \n(.s +.vs \n(.vu +.in \n(.iu +.if \n(.u .fi +.if \n(.j .ad +.if \n(.j=0 .na +.. +.nf +.nr #~ 0 +.if n .nr #~ 0.6n +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.fc +.nr 33 \n(.s +.rm 80 81 +.nr 34 \n(.lu +.eo +.am 81 +.br +.di a+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +׵ޤϱå˥Хɤʤإå Java ᥽åɤΥѥ᡼˥ޥåפޤ +.br +.di +.nr a| \n(dn +.nr a- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di b+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ǧھޤեꤹ WSDL URI Ǥ URI ηϼΤȤǤ http://username:password@example.org/stock?wsdl +.br +.di +.nr b| \n(dn +.nr b- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di c+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +ǥХåϤޤ +.br +.di +.nr c| \n(dn +.nr c- \n(dl +.. +.ec \ +.eo +.am 80 +.br +.di d+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(80 .ll \n(80u +.in 0 +\f3\-Xno\-addressing\-databinding\fP +.br +.di +.nr d| \n(dn +.nr d- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di e+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +W3C \f2EndpointReferenceType\fP Java ΥХǥ󥰤ͭˤޤ +.br +.di +.nr e| \n(dn +.nr e- \n(dl +.. +.ec \ +.eo +.am 81 +.br +.di f+ +.35 +.ft \n(.f +.ll \n(34u*1u/3u +.if \n(.l<\n(81 .ll \n(81u +.in 0 +줿 Java ե򥳥ѥ뤷ޤ +.br +.di +.nr f| \n(dn +.nr f- \n(dl +.. +.ec \ +.35 +.nf +.ll \n(34u +.nr 80 0 +.nr 38 \w\f3ץ\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-XadditionalHeaders\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xauthfile <file>\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xdebug\fP +.if \n(80<\n(38 .nr 80 \n(38 +.nr 38 \w\f3\-Xnocompile\fP +.if \n(80<\n(38 .nr 80 \n(38 +.80 +.rm 80 +.nr 38 \n(d- +.if \n(80<\n(38 .nr 80 \n(38 +.nr 81 0 +.nr 38 \w\f3\fP +.if \n(81<\n(38 .nr 81 \n(38 +.81 +.rm 81 +.nr 38 \n(a- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(b- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(c- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(e- +.if \n(81<\n(38 .nr 81 \n(38 +.nr 38 \n(f- +.if \n(81<\n(38 .nr 81 \n(38 +.35 +.nf +.ll \n(34u +.nr 38 1n +.nr 79 0 +.nr 40 \n(79+(0*\n(38) +.nr 80 +\n(40 +.nr 41 \n(80+(3*\n(38) +.nr 81 +\n(41 +.nr TW \n(81 +.if t .if \n(TW>\n(.li .tm Table at line 199 file Input is too wide - \n(TW units +.fc   +.nr #T 0-1 +.nr #a 0-1 +.eo +.de T# +.ds #d .d +.if \(ts\n(.z\(ts\(ts .ds #d nl +.mk ## +.nr ## -1v +.ls 1 +.ls +.. +.ec +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3ץ\fP\h'|\n(41u'\f3\fP +.ne \n(a|u+\n(.Vu +.if (\n(a|+\n(#^-1v)>\n(#- .nr #- +(\n(a|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-XadditionalHeaders\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.a+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(b|u+\n(.Vu +.if (\n(b|+\n(#^-1v)>\n(#- .nr #- +(\n(b|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xauthfile <file>\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.b+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(c|u+\n(.Vu +.if (\n(c|+\n(#^-1v)>\n(#- .nr #- +(\n(c|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xdebug\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.c+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(d|u+\n(.Vu +.ne \n(e|u+\n(.Vu +.if (\n(d|+\n(#^-1v)>\n(#- .nr #- +(\n(d|+\n(#^-\n(#--1v) +.if (\n(e|+\n(#^-1v)>\n(#- .nr #- +(\n(e|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(40u +.in +\n(37u +.d+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.e+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.ne \n(f|u+\n(.Vu +.if (\n(f|+\n(#^-1v)>\n(#- .nr #- +(\n(f|+\n(#^-\n(#--1v) +.ta \n(80u \n(81u +.nr 31 \n(.f +.nr 35 1m +\&\h'|\n(40u'\f3\-Xnocompile\fP\h'|\n(41u' +.mk ## +.nr 31 \n(## +.sp |\n(##u-1v +.nr 37 \n(41u +.in +\n(37u +.f+ +.in -\n(37u +.mk 32 +.if \n(32>\n(31 .nr 31 \n(32 +.sp |\n(31u +.fc +.nr T. 1 +.T# 1 +.35 +.rm a+ +.rm b+ +.rm c+ +.rm d+ +.rm e+ +.rm f+ +.TE +.if \n-(b.=0 .nr c. \n(.c-\n(d.-26 + +.LP +.SH "" .nf \f3 .fl @@ -780,6 +1061,6 @@ .fl .fi .LP -Java アーティファクトを生成し、\f2http://stockquote.xyz/quote?wsdl\fP をインポートすることで、それらのアーティファクトをコンパイルします。 +Java ƥեȤ \f2http://stockquote.xyz/quote?wsdl\fP 򥤥ݡȤ뤳ȤǡΥƥեȤ򥳥ѥ뤷ޤ .br diff -r 76bb81c6327c -r 5cad348bfb7b jdk/src/solaris/doc/sun/man/man1/ja/xjc.1 --- a/jdk/src/solaris/doc/sun/man/man1/ja/xjc.1 Mon May 02 09:36:49 2011 -0700 +++ b/jdk/src/solaris/doc/sun/man/man1/ja/xjc.1 Wed Jul 05 17:43:00 2017 +0200 @@ -19,266 +19,277 @@ ." or visit www.oracle.com if you need additional information or have any ." questions. ." -.TH xjc 1 "02 Jun 2010" +.TH xjc 1 "14 Apr 2011" .LP .ad c -.SH "名前" -xjc \- XML バインドのための Java(TM) アーキテクチャー +.SH "̾" +xjc \- XML ХɤΤ Java(TM) ƥ㡼 .br -バインディングコンパイラ +Хǥ󥰥ѥ .LP -\f3仕様バージョン:\fP 2.1 +\f3ͥС:\fP 2.1 .br -\f3リファレンス実装 (RI) バージョン:\fP 2.1.3 .ad l +\f3ե󥹼 (RI) С:\fP 2.1.3 .ad l .LP -.SH "xjc の起動" +.SH "xjc εư" .LP .LP -バインディングコンパイラを起動するには、使用するプラットフォームに応じた \f2bin\fP ディレクトリ内の \f2xjc\fP シェルスクリプトを使用します。また、バインディングコンパイラを実行するための Ant タスクも用意されています。 +Хǥ󥰥ѥưˤϡѤץåȥե˱ bin ǥ쥯ȥ \f2xjc\fP 륹ץ \f2\fP ѤޤޤХǥ󥰥ѥ¹Ԥ뤿 Ant ѰդƤޤ .na -\f2xjc を Ant とともに使用する\fP @ +\f2xjc Ant ȤȤ˻Ѥ\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.htmlための手順を参照してください。 -.LP -.RS 3 - +https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.htmlμ򻲾ȤƤ .LP .LP \f2% xjc \-help\fP .LP -.RE -\f3出力\fP -.LP -.RS 3 - +.SS + .LP .nf \f3 .fl -Usage: xjc [\-options ...] <schema_file/URL/dir> ... [\-b <bindinfo>] ... +Usage: xjc [\-options ...] <schema file/URL/dir/jar> ... [\-b <bindinfo>] ... +.fl +If dir is specified, all schema files in it will be compiled. +.fl +If jar is specified, /META\-INF/sun\-jaxb.episode binding file will be compiled. .fl Options: .fl - \-nv : do not perform strict validation of the input schema(s) + \-nv : do not perform strict validation of the input schema(s) .fl - \-extension : allow vendor extensions \- do not strictly follow the + \-extension : allow vendor extensions \- do not strictly follow the Compatibility Rules and App E.2 from the JAXB Spec .fl - Compatibility Rules and App E.2 from the JAXB Spec + \-b <file/dir> : specify external bindings files (each <file> must have its own \-b); if a directory is given, **/*.xjb is searched .fl - \-b <file/dir> : specify external bindings files (each <file> must have its own \-b) + \-d <dir> : generated files will go into this directory +.fl + \-p <pkg> : specifies the target package .fl - If a directory is given, **/*.xjb is searched + \-httpproxy <proxy> : set HTTP/HTTPS proxy; format is [user[:password]@]proxyHost:proxyPort .fl - \-d <dir> : generated files will go into this directory + \-httpproxyfile <f> : works like \-httpproxy but takes the argument in a file to protect password .fl - \-p <pkg> : specifies the target package + \-classpath <arg> : specify where to find user class files .fl - \-httpproxy <proxy> : set HTTP/HTTPS proxy. Format is [user[:password]@]proxyHost:proxyPort + \-catalog <file> : specify catalog files to resolve external entity references; support TR9401, XCatalog, and OASIS XML Catalog format .fl - \-httpproxyfile <file>: set the proxy string (same format as above). + \-readOnly : generated files will be in read\-only mode .fl - \-classpath <arg> : specify where to find user class files + \-npa : suppress generation of package level annotations (**/package\-info.java) +.fl + \-no\-header : suppress generation of a file header with timestamp .fl - \-catalog <file> : specify catalog files to resolve external entity references + \-target 2.0 : behave like XJC 2.0 and generate code that doesnt use any 2.1 features .fl - support TR9401, XCatalog, and OASIS XML Catalog format. + \-xmlschema : treat input as W3C XML Schema (default) .fl - \-readOnly : generated files will be in read\-only mode + \-relaxng : treat input as RELAX NG (experimental,unsupported) .fl - \-npa : suppress generation of package level annotations (**/package\-info.java) + \-relaxng\-compact : treat input as RELAX NG compact syntax (experimental,unsupported) .fl - \-no\-header : suppress generation of a file header with timestamp + \-dtd : treat input as XML DTD (experimental,unsupported) .fl - \-target 2.0 : behave like XJC 2.0 and generate code that doesnt use any 2.1 features. + \-wsdl : treat input as WSDL and compile schemas inside it (experimental,unsupported) +.fl + \-verbose : be extra verbose .fl - \-xmlschema : treat input as W3C XML Schema (default) + \-quiet : suppress compiler output .fl - \-relaxng : treat input as RELAX NG (experimental,unsupported) + \-help : display this help message .fl - \-relaxng\-compact : treat input as RELAX NG compact syntax (experimental,unsupported) + \-version : display version information +.fl + .fl - \-dtd : treat input as XML DTD (experimental,unsupported) + .fl - \-wsdl : treat input as WSDL and compile schemas inside it (experimental,unsupported) +Extensions: .fl - \-verbose : be extra verbose + \-Xlocator : enable source location support for generated code .fl - \-quiet : suppress compiler output + \-Xsync\-methods : generate accessor methods with the 'synchronized' keyword .fl - \-help : display this help message + \-mark\-generated : mark the generated code as @javax.annotation.Generated .fl - \-version : display version information + \-episode <FILE> : generate the episode file for separate compilation .fl \fP .fi -.RE .LP -.SH "オプション" -.LP - +.SH "ץ" .LP .RS 3 .TP 3 \-nv -デフォルトでは、XJC バインディングコンパイラは、ソーススキーマを処理する前に厳密な検証を実行します。このオプションを使用すると、厳密なスキーマ検証を無効にします。これは、バインディングコンパイラが検証を一切実行しないということではありません。 より厳密でない検証を実行するということです。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡޤ˸̩ʸڤ¹ԤޤΥץѤȡ̩ʥ޸ڤ̵ˤޤϡХǥ󥰥ѥ餬ڤڼ¹ԤʤȤȤǤϤޤ󡣤긷̩Ǥʤڤ¹ԤȤȤǤ .TP 3 \-extension -デフォルトでは、XJC バインディングコンパイラは、JAXB 仕様の「Compatibility」の章で説明されている規則を厳密に強制します。付録 E.2 には、JAXB v1.0 で完全にはサポートされていない一連の W3C XML スキーマ機能が定義されています。 場合によっては、このスイッチで有効になる「\-extension」モードでそれらの機能が使用できるかもしれません。また、デフォルトの厳密なモードでは、仕様に定義されているバインディングカスタマイズのみが使用できます。「\-extension」スイッチを指定すれば、JAXB Vendor Extension を使用できます。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡJAXB ͤΡCompatibilityפξϤƤ뵬§̩˶ޤϿ E.2 ˤϡJAXB v1.0 ǴˤϥݡȤƤʤϢ W3C XML ޵ǽƤޤˤäƤϡΥåͭˤʤ\-extensionץ⡼ɤǤεǽѤǤ뤫⤷ޤ󡣤ޤǥեȤθ̩ʥ⡼ɤǤϡͤƤХǥ󥰥ޥΤߤѤǤޤ\-extensionץåꤹСJAXB Vendor Extension ѤǤޤ .TP 3 \-b <file> -処理する外部バインディングファイルを 1 つまたは複数指定します。(バインディングファイルごとに「\f2\-b\fP」スイッチを指定する必要があります。)外部バインディングファイルの構文は非常に柔軟です。複数のスキーマのカスタマイズが含まれる 1 つのバインディングファイルを使用したり、それらのカスタマイズを複数のバインディングファイルに分割したりできます。 次に例を示します。 -.RS 3 - -.LP -\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings123.xjb\fP +볰Хǥ󥰥ե 1 Ĥޤʣꤷޤ(Хǥ󥰥ե뤴Ȥ \f2\-b\fP åꤹɬפޤ) Хǥ󥰥եιʸ˽ǤʣΥޤΥޥޤޤ 1 ĤΥХǥ󥰥եѤꡢΥޥʣΥХǥ󥰥եʬ䤷Ǥޤ򼨤ޤ \f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings123.xjb\fP .br -\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings1.xjb \-b bindings2.xjb \-b bindings3.xjb\fP -.RE -また、コマンド行にスキーマファイルとバインディングファイルを指定する順番は任意です。 +\f2xjc schema1.xsd schema2.xsd schema3.xsd \-b bindings1.xjb \-b bindings2.xjb \-b bindings3.xjb\fP ޤޥɹԤ˥ޥեȥХǥ󥰥եꤹ֤ǤդǤ .TP 3 \-d <dir> -デフォルトでは、XJC バインディングコンパイラは、Java コンテンツクラスを現在のディレクトリに生成します。このオプションを使用すると、代替出力ディレクトリを指定できます。出力ディレクトリはあらかじめ存在している必要があります。 XJC バインディングコンパイラは、このディレクトリを自動的に作成しません。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡJava ƥĥ饹򸽺ߤΥǥ쥯ȥޤΥץѤȡؽϥǥ쥯ȥǤޤϥǥ쥯ȥϤ餫¸ߤƤɬפޤXJC Хǥ󥰥ѥϡΥǥ쥯ȥưŪ˺ޤ .TP 3 \-p <pkg> -このコマンド行オプション経由でターゲットパッケージを指定した場合、その指定内容は、パッケージ名に対するすべてのバインディングカスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。 +Υޥɹԥץͳǥåȥѥåꤷ硢λƤϡѥå̾Ф뤹٤ƤΥХǥ󥰥ޥ䡢ͤǵꤵƤǥեȤΥѥå̾르ꥺͥ褵ޤ .TP 3 \-httpproxy <proxy> -HTTP/HTTPS プロキシを指定します。形式は [user[:password]@]proxyHost[:proxyPort] です。従来の \f2\-host\fP および \f2\-port\fP は、下位互換性のためにリファレンス実装でもサポートされていますが、推奨されなくなりました。このオプションで指定されたパスワードは、\f2top\fP コマンドを使用するユーザーなど、ほかのユーザーが表示できる引数であることに注意してください。セキュリティーを高めるには、次の \f2\-httpproxyfile\fP を使用してください。 +HTTP/HTTPS ץꤷޤ [user[:password]@]proxyHost[:proxyPort] Ǥ \f2\-host\fP \f2\-port\fP ϡ̸ߴΤ˥ե󥹼Ǥ⥵ݡȤƤޤ侩ʤʤޤΥץǻꤵ줿ѥɤϡ \f2top\fP ޥɤѤ桼ʤɡۤΥ桼ɽǤǤ뤳ȤդƤƥˤϡ \f2\-httpproxyfile\fP ѤƤ .TP 3 \-httpproxyfile <file> -HTTP/HTTPS プロキシをファイル経由で指定します。形式は上記と同じですが、このファイル内に指定されたパスワードをほかのユーザーが表示することはできません。 +HTTP/HTTPS ץեͳǻꤷޤϾ嵭ƱǤΥե˻ꤵ줿ѥɤۤΥ桼ɽ뤳ȤϤǤޤ .TP 3 \-classpath <arg> -\f2<jxb:javaType>\fP および \f2<xjc:superClass>\fP カスタマイズが使用するクライアントアプリケーションのクラスファイルの検索場所を指定します。 +<jxb:javaType> <xjc:superClass> \f2ޥѤ\fP 饤ȥץꥱ \f2饹եθ\fP ꤷޤ .TP 3 \-catalog <file> -外部エンティティー参照を解決するカタログファイルを指定します。TR9401、XCatalog、および OASIS XML Catalog 形式がサポートされます。詳細は、『XML Entity and URI Resolvers』ドキュメントを参照するか、\f2カタログリゾルバ\fPのサンプルアプリケーションを調べてください。 +ƥƥȤ褹륫եꤷޤTR9401XCatalog OASIS XML Catalog ݡȤޤܺ٤ϡXML Entity and URI Resolvers٥ɥȤ򻲾Ȥ뤫 \f2꥾Ф\fP ץ륢ץꥱĴ٤Ƥ .TP 3 \-readOnly -デフォルトでは、XJC バインディングコンパイラは、生成する Java ソースファイルを書き込みから保護しません。このオプションを使用すると、XJC バインディングコンパイラは生成される Java ソースを強制的に読み取り専用にします。 +ǥեȤǤϡXJC Хǥ󥰥ѥϡ Java ե񤭹ߤݸޤ󡣤ΥץѤȡXJC Хǥ󥰥ѥ Java Ūɤ߼Ѥˤޤ .TP 3 \-npa -パッケージレベルの注釈を **/package\-info.java に生成することを抑制します。このスイッチを使用して生成するコードでは、これらの注釈がほかの生成済みクラスに内部化されます。 +ѥå٥ **/package\-info.java 뤳ȤޤΥåѤ륳ɤǤϡ᤬ۤѤߥ饹ޤ .TP 3 \-no\-header -多少のメモとタイムスタンプを含むファイルヘッダーコメントの生成を抑制します。このオプションを使用すると、生成されたコードがわかりにくくなります。 +¿ΥȥॹפޤեإåȤޤΥץѤȡ줿ɤ狼ˤʤޤ .TP 3 \-target 2.0 -なんらかの JAXB 2.1 機能に依存するコードを生成しないようにします。これにより、生成されたコードを JAXB 2.0 ランタイム (JavaSE 6 など) で実行できます。 +ʤ餫 JAXB 2.1 ǽ˰¸륳ɤʤ褦ˤޤˤꡢ줿ɤ JAXB 2.0 󥿥 (JavaSE 6 ʤ) Ǽ¹ԤǤޤ .TP 3 \-xmlschema -入力スキーマを W3C XML スキーマ (デフォルト) と見なします。このスイッチを指定しなくても、入力スキーマは W3C XML スキーマと見なされます。 +ϥޤ W3C XML (ǥե) ȸʤޤΥåꤷʤƤ⡢ϥޤ W3C XML ޤȸʤޤ .TP 3 \-relaxng -入力スキーマを RELAX NG として扱います (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ RELAX NG Ȥưޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-relaxng\-compact -入力スキーマを RELAX NG 圧縮構文として処理します (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ RELAX NG ̹ʸȤƽޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-dtd -入力スキーマを XML DTD として扱います (試験的、未サポート)。RELAX NG スキーマのサポートは JAXB Vendor Extension として提供されています。 +ϥޤ XML DTD Ȥưޤ (Ṳ̄ݡ)RELAX NG ޤΥݡȤ JAXB Vendor Extension Ȥ󶡤Ƥޤ .TP 3 \-wsdl -入力を WSDL として扱い、その内部のスキーマをコンパイルします (試験的、未サポート)。 +Ϥ WSDL ȤưΥޤ򥳥ѥ뤷ޤ (Ṳ̄ݡ) .TP 3 \-quiet -進捗情報や警告など、コンパイラの出力を抑制します。 +ĽٹʤɡѥνϤޤ .TP 3 \-verbose -情報メッセージを出力したり特定のエラー発生時にスタックトレースを表示したりするなど、極めて冗長になります。 +åϤΥ顼ȯ˥åȥ졼ɽꤹʤɡˤƾĹˤʤޤ .TP 3 \-help -コンパイラスイッチの概要を表示します。 +ѥ饹åγפɽޤ .TP 3 \-version -コンパイラのバージョン情報を表示します。 +ѥΥСɽޤ .TP 3 <schema file/URL/dir> -コンパイル対象となる 1 つまたは複数のスキーマファイルを指定します。ユーザーがディレクトリを指定した場合、xjc はそのディレクトリを走査し、そこで見つかったすべてのスキーマファイルをコンパイルします。 +ѥоݤȤʤ 1 ĤޤʣΥޥեꤷޤ桼ǥ쥯ȥꤷ硢xjc ϤΥǥ쥯ȥǸĤä٤ƤΥޥե򥳥ѥ뤷ޤ .RE + +.LP .SS -非推奨コマンド行オプションおよび削除されたコマンド行オプションの概要 +ɸΥޥɹԥץ .LP .RS 3 +.TP 3 +\-Xlocator +줿ɤǤϡ󲽤ΤȤ Java Bean 󥹥󥹤˴ޤޤ륽 XML ˴ؤ SAX Locator 󤬸ޤ +.TP 3 +\-Xsync\-methods +줿٤ƤΥ᥽åɥ˥㡼 \f2Ʊ줿\fP ɤޤޤ +.TP 3 +\-mark\-generated +줿ɤ \f2@javax.annotation.Generated\fP դޤ +.TP 3 +\-episode <file> +ѥ뤴Ȥ˻ꤵ줿ԥɥեޤ +.RE .LP +.SS +侩ޥɹԥץ󤪤Ӻ줿ޥɹԥץ +.LP .RS 3 .TP 3 \-host & \-port -これらのオプションは非推奨となり、\f3\-httpproxy\fP オプションで置き換えられました。これらのオプションは、下位互換性を確保する目的で引き続きサポートされますが、ドキュメントには記載されず、将来のリリースで削除される可能性もあります。 +Υץ侩Ȥʤꡢ\f3\-httpproxy\fP ץ֤ޤΥץϡ̸ߴݤŪǰ³ݡȤޤɥȤˤϵܤ줺Υ꡼Ǻǽ⤢ޤ .TP 3 \-use\-runtime -JAXB 2.0 仕様で移植性のあるランタイムが規定されたため、JAXB RI が **/impl/runtime パッケージを生成する必要がなくなりました。このため、このスイッチは不要となり、削除されました。 +JAXB 2.0 ͤǰܿΤ󥿥बꤵ줿ᡢJAXB RI **/impl/runtime ѥåɬפʤʤޤΤᡢΥåפȤʤꡢޤ .TP 3 \-source -\-source 互換性スイッチは、JAXB 2.0 の最初の Early Access 版で導入されました。このスイッチは、JAXB 2.0 の今後のリリースから削除されることになりました。1.0.x コードを生成する必要がある場合には、1.0.x コードベースのインストールを使用してください。 -.TP 3 -\-Xlocator & \-Xsync\-methods -これらのスイッチは現時点では無効化されています。この機能は将来、個別のダウンロードとして提供される予定です。 +\-source ߴåϡJAXB 2.0 κǽ Early Access ǤƳޤΥåϡJAXB 2.0 κΥ꡼뤳Ȥˤʤޤ1.0.x ɤɬפϡ1.0.x ɥ١Υ󥹥ȡѤƤ .RE .LP -.RE .SS -コンパイラの制限 +ѥ .LP .LP -通常は、関連するすべてのスキーマを、同じバインディングコンパイラスイッチを指定して 1 つの単位としてコンパイルするのがもっとも安全です。 +̾ϡϢ뤹٤ƤΥޤƱХǥ󥰥ѥ饹åꤷ 1 Ĥñ̤Ȥƥѥ뤹ΤäȤǤ .LP .LP -xjc を実行するときは、次に示す制限に注意してください。これらの制限のほとんどは、xjc を何度か呼び出して複数のスキーマをコンパイルする場合にのみ適用されます。 +xjc ¹ԤȤϡ˼¤դƤ¤ΤۤȤɤϡxjc ٤ƤӽФʣΥޤ򥳥ѥ뤹ˤΤŬѤޤ .LP .RS 3 .TP 2 o -複数のスキーマを同時にコンパイルする場合は、ターゲットの Java パッケージ名に次の優先順位の規則が適用されることに注意してください。 +ʣΥޤƱ˥ѥ뤹ϡåȤ Java ѥå̾˼̤ͥε§ŬѤ뤳ȤդƤ .RS 3 .TP 3 1. -「\f2\-p\fP」コマンド行オプションがもっとも優先されます。 +\f2\-p\fPץޥɹԥץ󤬤äȤͥ褵ޤ .TP 3 2. -<\f2jaxb:package\fP> のカスタマイズ +<\f2jaxb:package\fP> Υޥ .TP 3 3. -\f2targetNamespace\fP が宣言されている場合は、仕様に定義されている \f2targetNamespace\fP \-> Java パッケージ名のアルゴリズムを適用します。 +\f2targetNamespace\fP Ƥϡ \f2ͤƤ targetNamespace\fP \-> Java ѥå̾Υ르ꥺŬѤޤ .TP 3 4. -\f2targetNamespace\fP が宣言されていない場合は、"generated" という名前のハードコードされたパッケージを使用します。 +\f2targetNamespace\fP ƤʤϡgeneratedפȤ̾Υϡɥɤ줿ѥåѤޤ .RE .TP 2 o -名前空間ごとに複数の <\f2jaxb:schemaBindings\fP> を持つことは不正です。 このため、1 つのターゲット名前空間内の 2 つのスキーマを、異なる Java パッケージにコンパイルすることはできません。 +֤̾Ȥʣ <\f2jaxb:schemaBindings\fP> ĤȤǤΤᡢ1 ĤΥå̾ 2 ĤΥޤۤʤ Java ѥå˥ѥ뤹뤳ȤϤǤޤ .TP 2 o -1 つの Java パッケージにコンパイルされるすべてのスキーマは、XJC バインディングコンパイラに同時に送信する必要があります。 個別にコンパイルすることはできず、予期したとおりに動作しません。 +1 Ĥ Java ѥå˥ѥ뤵뤹٤ƤΥޤϡXJC Хǥ󥰥ѥƱɬפޤ̤˥ѥ뤹뤳ȤϤǤͽȤưޤ .TP 2 o -複数のスキーマファイルにまたがる要素置換グループは、同時にコンパイルする必要があります。 +ʣΥޥեˤޤִ롼פϡƱ˥ѥ뤹ɬפޤ .RE .LP -.SH "関連項目" +.SH "Ϣ" .LP .RS 3 .TP 2 o -コマンド行でのコンバータの実行 (XJC):[ +ޥɹԤǤΥСμ¹ (XJC): [ .na -\f2コマンド行の命令\fP @ +\f2ޥɹԤ̿\fP @ .fi -https://jaxb.dev.java.net/nonav/2.1.3/docs/xjc.html、 +https://jaxb.dev.java.net/nonav/2.1.3/docs/xjc.html .na -\f2xjc を Ant とともに使用する\fP @ +\f2xjc Ant ȤȤ˻Ѥ\fP @ .fi https://jaxb.dev.java.net/nonav/2.1.3/docs/xjcTask.html] .TP 2 o .na -\f2XML バインドのための JavaTM アーキテクチャー (JAXB)\fP @ +\f2XML ХɤΤ Java ƥ㡼 (JAXB)\fP @ .fi http://java.sun.com/javase/6/docs/technotes/guides/xml/jaxb/index.html .RE diff -r 76bb81c6327c -r 5cad348bfb7b jdk/test/java/util/jar/JarInputStream/ScanSignedJar.java --- a/jdk/test/java/util/jar/JarInputStream/ScanSignedJar.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/test/java/util/jar/JarInputStream/ScanSignedJar.java Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved. * 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,11 +27,9 @@ * @summary Confirm that JarEntry.getCertificates identifies signed entries. */ -import java.io.*; import java.net.URL; import java.security.CodeSigner; import java.security.cert.Certificate; -import java.util.Enumeration; import java.util.jar.*; /* @@ -72,6 +70,9 @@ if (signers == null && certificates == null) { System.out.println("[unsigned]\t" + name + "\t(" + size + " bytes)"); + if (name.equals("Count.class")) { + throw new Exception("Count.class should be signed"); + } } else if (signers != null && certificates != null) { System.out.println("[" + signers.length + (signers.length == 1 ? " signer" : " signers") + "]\t" + diff -r 76bb81c6327c -r 5cad348bfb7b jdk/test/java/util/jar/JarInputStream/TestIndexedJarWithBadSignature.java --- a/jdk/test/java/util/jar/JarInputStream/TestIndexedJarWithBadSignature.java Mon May 02 09:36:49 2011 -0700 +++ b/jdk/test/java/util/jar/JarInputStream/TestIndexedJarWithBadSignature.java Wed Jul 05 17:43:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. * 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,7 +37,7 @@ public static void main(String...args) throws Throwable { try (JarInputStream jis = new JarInputStream( - new FileInputStream(System.getProperty("tst.src", ".") + + new FileInputStream(System.getProperty("test.src", ".") + System.getProperty("file.separator") + "BadSignedJar.jar"))) {