Manuale d’uso / di manutenzione del prodotto 2 del fabbricante Sun Microsystems
Vai alla pagina of 58
Sun Microsystems, Inc. www .sun.com Submit comments about this document at: http://java.sun.com/docs/forms/sendusmail.html SigT est T ool 2.0 User’ s Guide F or J a va™ Compatibility T est Suite D.
Please Recycle Copyright © 2008 Sun Microsystems, Inc., 4150 Network Cir cle, Santa Clara, California 95054, U.S.A. All rights reserved. THIS PRODUCT CONT AINS CONFIDENTIAL INFORMA TION AND TRADE SECRETS OF SUN MICROSYSTEMS, INC. USE, DISCLOSURE OR REPRODUCTION IS PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SUN MICROSYSTEMS, INC.
iii Contents Preface xi 1. Introduction 1 Signature Test Basics 1 What is Tested 2 Mutual Binary Compatibility Check 2 Mutual Source Compatibility Check 3 Class and Class Member Attributes Checked 3 Source and Binary Compatibility Modes 4 Using Custom Signature Loaders 5 2.
iv Signature Test Tool 2.0 User’s Guide • April 2008 Merge Command Operative Principles 1 1 Element Handling by Merge 12 Setup Command 14 Command Description 14 Case Sensitivity of Command Argumen.
Contents v Example Result Files 39 Index 43.
vi Signature Test Tool 2.0 User’s Guide • April 2008.
vii T ables TABLE 2-1 Settings for the Setup and SignatureTest Commands 10 TABLE 2-2 Setup Command Arguments 14 TABLE 2-3 Signature File Format Compatibility 16 TABLE 2-4 Signature File Content Summar.
viii Signature Test Tool 2.0 User’s Guide • April 2008.
ix Code Examples CODE EXAMPLE 2-1 Unsorted Report Example 25 CODE EXAMPLE A-1 The V1.0/test.java File 31 CODE EXAMPLE A-2 The test.sig File 31 CODE EXAMPLE A-3 The V2.0/test.java File 32 CODE EXAMPLE A-4 The report.txt File 33 CODE EXAMPLE A-5 SetupAndTest Command Output Example 35 CODE EXAMPLE A-6 Contents of .
x Signature Test Tool 2.0 User’s Guide • April 2008.
xi Pr eface This guide describes how to install and run the SigT est tool. This tool is composed of a group of utilities used to develop signature test components that can be used to compare API test signatures. Note – For simplicity , this user ’s guide refers to the test harness as the JavaT est harness .
xii Signature Test Tool 2.0 User’s Guide • April 2008 How This Guide Is Or ganized Chapter 1 describes SigT est tool and the purpose of signature testing. Chapter 2” provides a synopsis of each of the SigT est tool commands along with their available options and arguments.
Preface xiii T ypographic Conventions Sun W elcomes Y our Comments W e are inter ested in improving our documentation and welcome your comments and suggestions.
xiv Signature Test Tool 2.0 User’s Guide • April 2008.
1 CHAPTER 1 Intr oduction The SigT est tool makes it possible to easily compare the signatures of two dif ferent implementations of the same API. It verifies that all of the members are pr esent, reports when new members are added, and checks the specif ied behavior of each API member .
2 Signature Test Tool 2.0 User’s Guide • April 2008 When used in a software development environment, SigT est tool can be used to track and control changes to an API thr oughout the development process.
Chapter 1 Introduction 3 Mutual Sour ce Compatibility Check While binary compatibility is important, it cannot guarantee that an application in binary form as a set of class files can be r ecompiled without error .
4 Signature Test Tool 2.0 User’s Guide • April 2008 ■ In source mode only , the normalized list of thrown exceptions, described earlier , where order is insignif icant ■ Fields: ■ Set of mod.
Chapter 1 Introduction 5 The use of building blocks created a need for more lenient checking of exception throw lists compar ed to earlier SigT est tool versions. Consequently , SigT est tool 1.5 provides both a sour ce and a binary compatibility mode of operation.
6 Signature Test Tool 2.0 User’s Guide • April 2008 As an aid in developing such an extension, the SigT est tool distribution includes a class library that contains a signature serializer and some related utility classes in the SigT est-Directory /lib/remote.
7 CHAPTER 2 Using the Signatur e T est T ool This chapter provides a synopsis of each of the SigT est tool commands along with their available options and arguments.
8 Signature Test Tool 2.0 User’s Guide • April 2008 ■ Merge - Creates a combined signature f ile from several signature f iles repr esenting differ ent Java APIs in one Java runtime environment according to the JSR 68 rules.
Chapter 2 Using the Signature T est T ool 9 Note – In static mode you can test specified classes in another runtime environment. For example, this can be useful to analyze APIs that are part of a Java SE platform 1.4.2 environment when the SignatureTest command is run on a Java SE platform version 5.
10 Signature Test Tool 2.0 User’s Guide • April 2008 CLASSPATH and -classpath Settings T ABLE 2-1 lists the r equirements for setting the CLASSPATH environment variable and the -classpath argument when running either the Setup or SignatureTest commands.
Chapter 2 Using the Signature T est T ool 11 Signatur e File Merge Rules The -Files argument of the SignatureTest command accepts values to specify one or more signatur e files that are combined to repr esent an API configuration that is used as input for testing.
12 Signature Test Tool 2.0 User’s Guide • April 2008 ■ The Merge operation is commutative, so with API A and B, A + B = B + A. ■ It recognizes either binary or source compatibility when mer ging APIs.
Chapter 2 Using the Signature T est T ool 13 ■ When there ar e two differ ent access modifiers select the mor e visible one. For example, if A is a public int foo , and B is protected int foo , then the merge into C r esults into public int foo .
14 Signature Test Tool 2.0 User’s Guide • April 2008 Setup Command The Setup command has the following synopsis: java com.sun.tdk.signaturetest.Setup [ arguments ] T ABLE 2-2 describes the available command arguments and the values that they accept.
Chapter 2 Using the Signature T est T ool 15 -TestURL path Optional. Specifies the dir ectory location in which to create the signatur e file as a file protocol URL: file:// path Must end in a trailing slash on a UNIX system or a backslash on a Microsoft W indows or DOS system.
16 Signature Test Tool 2.0 User’s Guide • April 2008 Case Sensitivity of Command Ar guments The specification of each ar gument flag at the command line is not case sensitive, but the input value entered immediately after the ar gument flag is case sensitive.
Chapter 2 Using the Signature T est T ool 17 Also see “Source and Binary Compatibility Modes” on page 4 . Signatur e File Contents Setup generates each signature file with a mandatory header in the f irst two lines, followed by the body of the signature f ile.
18 Signature Test Tool 2.0 User’s Guide • April 2008 Signatur e File Body The remaining body of a signature f ile immediately follows the header . It contains the following information, which is f.
Chapter 2 Using the Signature T est T ool 19 strictfp ––– transient – volatile + synchroniz ed – native – T ABLE 2-4 Signature File Content Summary (Continued) Modifier Class or Interface .
20 Signature Test Tool 2.0 User’s Guide • April 2008 SignatureTest Command The SignatureTest command has the following synopsis: java com.sun.tdk.signaturetest.SignatureTest [ arguments ] It follows the rules described in “Case Sensitivity of Command Arguments” on page 16 .
Chapter 2 Using the Signature T est T ool 21 -CheckValue Specifies to check the values of primitive and string constants. This option generates an error if a signature f ile does not contain the data necessary for constant checking. -NoCheckValue Specifies not to check the values of primitive and string constants.
22 Signature Test Tool 2.0 User’s Guide • April 2008 -NoMerge Optional. Forces using the f irst encountered class description if more than one class with the same name is found in the input set of signatur e files specified by -Files option. In this case it uses the class from the left-most signatur e file that is specified with -Files .
Chapter 2 Using the Signature T est T ool 23 ▼ Running a Signatur e T est W ith the JavaT est Harness Although the SignatureTest command can be run by itself, SignatureTest can also be executed as a test by the JavaT est harness.
24 Signature Test Tool 2.0 User’s Guide • April 2008 5. Change the following two arguments in the executeArgs value of the test description f ile in use. ■ Change the argument to the -FileName option in the test description to correspond to the signature f ile name.
Chapter 2 Using the Signature T est T ool 25 ■ Missing Classes ■ Missing Class Descriptions (Modified classes and nested classes) ■ Missing Superclasses or Superinterfaces ■ Missing Fields ■.
26 Signature Test Tool 2.0 User’s Guide • April 2008 SetupAndTest Command The SetupAndTest command has the following synopsis: java com.sun.tdk.signaturetest.SetupAndTest [ arguments ] T ABLE 2-6 describes all arguments available to the SetupAndTest command.
Chapter 2 Using the Signature T est T ool 27 Merge Command The Merge command has the following synopsis: java com.sun.tdk.signaturetest.Merge [ arguments ] -PackageWithoutSubpackages name Optional. Specifies package to be tested excluding subpackages.
28 Signature Test Tool 2.0 User’s Guide • April 2008 T ABLE 2-7 describes the arguments available to the Merge command. Also see “Case Sensitivity of Command Arguments” on page 16 . Command Description The Merge command combines (mer ges) a number of input signature f iles into one resulting signatur e file.
29 APPENDIX A Quick Start Examples This appendix provides a simple example of each of the SigT est tool commands that you can run quickly to become familiar with them.
30 Signature Test Tool 2.0 User’s Guide • April 2008 ▼ Running the Setup Command 1. At a command prompt, change to a current working directory of your choice and note that all subsequent steps and commands are relative to this directory . 2. Using your favorite text editor , copy and paste the code from the test.
Appendix A Quick Star t Examples 31 5. Conf irm the correct contents of the resulting test.sig f ile by comparing it with CODE EXAMPLE A-2 . This completes the Setup command example. Note – Save the files you cr eated in this procedure for use in the subsequent example in “Running SignatureTest W ithout the JavaT est Harness” on page 32 .
32 Signature Test Tool 2.0 User’s Guide • April 2008 Example SignatureTest Command This section illustrates how to run SignatureTest from the command line without the JavaT est harness. Also see “Running a Signature T est W ith the JavaT est Harness” on page 23 to see how the signature test is run automatically during a test run.
Appendix A Quick Star t Examples 33 3. Compile the V2.0/test.java source f ile version with this command, noting that this newly compiled version serves as the implementation class under test. % javac -d V2.0 V2.0/test.java This step generates the following new class file to be tested against the test.
34 Signature Test Tool 2.0 User’s Guide • April 2008 Example SetupAndTest Command The following procedur e runs the SetupAndTest command to create a new test2.
Appendix A Quick Star t Examples 35 The previous SetupAndTest command r eports to standard output a message similar to CODE EXAMPLE A-5 with differ ences according to your system characteristics : % java $CLASSPATH com.sun.tdk.signaturetest.SetupAndTest -apiVersion 2.
36 Signature Test Tool 2.0 User’s Guide • April 2008 Mer ge Examples This section illustrates an example of running Merge which involves these three steps: 1. Compiling three .java f iles to produce .class files as a sour ce for the signature files used in the example 2.
Appendix A Quick Star t Examples 37 Contents of: ./3/A.java 3. Run these commands to compile each f ile into a separate x subdirectory: These are the r esulting files: ■ ./1/x/A.class ■ ./2/x/A.class ■ ./3/x/A.class 4. Run these three Setup command lines on each A.
38 Signature Test Tool 2.0 User’s Guide • April 2008 b. Run command #2: The command generates the ./x2.sig file shown in CODE EXAMPLE A-7 and produces a console message similar to this indicating successful setup with some possible differ ences according to your system characteristics: c.
Appendix A Quick Star t Examples 39 6. Run this command to merge x2.sig and x3.sig attempting to produce the x2+x3.sig f ile: The command prints a message to the console similar to the following with .
40 Signature Test Tool 2.0 User’s Guide • April 2008 CLSS public x.A cons public A() meth public void abc() meth public void foo() supr java.lang.Object CODE EXAMPLE A-7 Contents of ./x2.sig #Signature file v4.0 #Version CLSS public java.lang.Object cons public Object() meth protected java.
Appendix A Quick Star t Examples 41 meth protected void finalize() throws java.lang.Throwable meth public boolean equals(java.lang.Object) meth public final java.lang.Class<?> getClass() meth public final void notify() meth public final void notifyAll() meth public final void wait() throws java.
42 Signature Test Tool 2.0 User’s Guide • April 2008 meth public void bar() meth public void foo() supr java.lang.Object CODE EXAMPLE A-9 Contents of x1+x2.
43 Index C command arguments -apiVersion ,2 7 -Binary ,2 8 -CheckValue , 21, 27 -ClassCacheSize , 21, 27 -classpath , 14, 21 -ClosedFile ,1 5 -debug , 14, 20 -ErrorAll ,2 2 -exclude , 15, 22, 27 -File.
44 Signature T est T ool 2.0 User’ s Guide • Apr il 2008 U unsorted report, 25.
Un punto importante, dopo l’acquisto del dispositivo (o anche prima di acquisto) è quello di leggere il manuale. Dobbiamo farlo per diversi motivi semplici:
Se non hai ancora comprato il Sun Microsystems 2 è un buon momento per familiarizzare con i dati di base del prodotto. Prime consultare le pagine iniziali del manuale d’uso, che si trova al di sopra. Dovresti trovare lì i dati tecnici più importanti del Sun Microsystems 2 - in questo modo è possibile verificare se l’apparecchio soddisfa le tue esigenze. Esplorando le pagine segenti del manuali d’uso Sun Microsystems 2 imparerai tutte le caratteristiche del prodotto e le informazioni sul suo funzionamento. Le informazioni sul Sun Microsystems 2 ti aiuteranno sicuramente a prendere una decisione relativa all’acquisto.
In una situazione in cui hai già il Sun Microsystems 2, ma non hai ancora letto il manuale d’uso, dovresti farlo per le ragioni sopra descritte. Saprai quindi se hai correttamente usato le funzioni disponibili, e se hai commesso errori che possono ridurre la durata di vita del Sun Microsystems 2.
Tuttavia, uno dei ruoli più importanti per l’utente svolti dal manuale d’uso è quello di aiutare a risolvere i problemi con il Sun Microsystems 2. Quasi sempre, ci troverai Troubleshooting, cioè i guasti più frequenti e malfunzionamenti del dispositivo Sun Microsystems 2 insieme con le istruzioni su come risolverli. Anche se non si riesci a risolvere il problema, il manuale d’uso ti mostrerà il percorso di ulteriori procedimenti – il contatto con il centro servizio clienti o il servizio più vicino.