|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.tools.ForwardingJavaFileManager<M>
M
- 此物件將轉發到的檔案管理器的型別public class ForwardingJavaFileManager<M extends JavaFileManager>
將調用轉發到給定的檔案管理器。此類別的子類別可以覆寫其中某些方法,還可以提供附加欄位和方法。
巢狀類別摘要 |
---|
從介面 javax.tools.JavaFileManager 繼承的巢狀類別/介面 |
---|
JavaFileManager.Location |
欄位摘要 | |
---|---|
protected M |
fileManager
一個檔案管理器,所有方法都將委託給它。 |
建構子摘要 | |
---|---|
protected |
ForwardingJavaFileManager(M fileManager)
創建一個新的 ForwardingJavaFileManager 的實例。 |
方法摘要 | |
---|---|
void |
close()
釋放此檔案管理器直接或間接打開的所有資源。 |
void |
flush()
刷新此檔案管理器直接或間接為輸出打開的所有資源。 |
ClassLoader |
getClassLoader(JavaFileManager.Location location)
獲取可從給定位置載入外掛程式的類別載入器。 |
FileObject |
getFileForInput(JavaFileManager.Location location,
String packageName,
String relativeName)
獲取輸入的檔案物件,它表示給定位置處指定包中的指定相對名稱。 |
FileObject |
getFileForOutput(JavaFileManager.Location location,
String packageName,
String relativeName,
FileObject sibling)
獲取輸出的檔案物件,它表示給定位置處指定包中的指定相對名稱。 |
JavaFileObject |
getJavaFileForInput(JavaFileManager.Location location,
String className,
JavaFileObject.Kind kind)
獲取輸入的檔案物件,它表示給定位置處指定型別的指定類別。 |
JavaFileObject |
getJavaFileForOutput(JavaFileManager.Location location,
String className,
JavaFileObject.Kind kind,
FileObject sibling)
獲取輸出的檔案物件,它表示給定位置處指定型別的指定類別。 |
boolean |
handleOption(String current,
Iterator<String> remaining)
處理一個選項。 |
boolean |
hasLocation(JavaFileManager.Location location)
確定此檔案管理器是否已知某位置。 |
String |
inferBinaryName(JavaFileManager.Location location,
JavaFileObject file)
根據位置推斷檔案物件的二進制名稱。 |
boolean |
isSameFile(FileObject a,
FileObject b)
比較兩個檔案物件,如果它們表示相同的底層物件,則返回 true。 |
int |
isSupportedOption(String option)
確定是否支持給定選項,如果支持,則返回該選項所使用的參數數量。 |
Iterable<JavaFileObject> |
list(JavaFileManager.Location location,
String packageName,
Set<JavaFileObject.Kind> kinds,
boolean recurse)
列出給定位置處符合給定標準的所有檔案物件。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
欄位詳細資訊 |
---|
protected final M extends JavaFileManager fileManager
建構子詳細資訊 |
---|
protected ForwardingJavaFileManager(M fileManager)
fileManager
- 委託給此檔案管理器方法詳細資訊 |
---|
public ClassLoader getClassLoader(JavaFileManager.Location location)
JavaFileManager
複製的描述ANNOTATION_PROCESSOR_PATH
位置的類別載入器。
JavaFileManager
中的 getClassLoader
location
- 位置
null
SecurityException
- 如果在當前安全上下文中不能創建類別載入器
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且不能重新打開此檔案管理器public Iterable<JavaFileObject> list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) throws IOException
JavaFileManager
複製的描述註:即使給定位置對於此檔案管理器是未知的,此方法也不會返回 null
。未知位置也不會導致異常。
JavaFileManager
中的 list
location
- 位置packageName
- 套件名稱kinds
- 只返回這些型別的物件recurse
- 如果為 true,則包含“子包”
IOException
- 如果發生 I/O 錯誤,或者已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public String inferBinaryName(JavaFileManager.Location location, JavaFileObject file)
JavaFileManager
複製的描述
JavaFileManager
中的 inferBinaryName
location
- 位置file
- 檔案物件
null
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public boolean isSameFile(FileObject a, FileObject b)
JavaFileManager
複製的描述
JavaFileManager
中的 isSameFile
a
- 檔案物件b
- 檔案物件
IllegalArgumentException
- 如果其中一個參數是用另一個檔案管理器創建的,並且此檔案管理器不支持外部檔案物件public boolean handleOption(String current, Iterator<String> remaining)
JavaFileManager
複製的描述current
是此檔案管理器的一個選項,則它將通過 remaining
獲得該選項的所有參數並返回 true,否則返回 false。
JavaFileManager
中的 handleOption
current
- 當前選項remaining
- 剩餘選項
IllegalArgumentException
- 如果錯誤地使用了此檔案管理器的選項
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public boolean hasLocation(JavaFileManager.Location location)
JavaFileManager
複製的描述
JavaFileManager
中的 hasLocation
location
- 位置
public int isSupportedOption(String option)
OptionChecker
複製的描述
OptionChecker
中的 isSupportedOption
option
- 選項
public JavaFileObject getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind) throws IOException
JavaFileManager
複製的描述
JavaFileManager
中的 getJavaFileForInput
location
- 位置className
- 類別的名稱kind
- 檔案的型別,必須是 SOURCE
或 CLASS
null
IllegalArgumentException
- 如果位置對於此檔案管理器未知並且該檔案管理器不支持未知位置,或者型別無效
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器
IOException
- 如果發生 I/O 錯誤,或者已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public JavaFileObject getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) throws IOException
JavaFileManager
複製的描述此檔案管理器可以將 sibling 視為對放置輸出位置的提示(可選)。沒有指定此提示的確切語義。除非提供了類別檔案輸出目錄,否則 Sun 的編譯器(例如 javac)將把類別檔案放到與原始源檔案相同的目錄下。要實作此行為,調用此方法時 javac 可以提供原始源檔案作為 sibling。
JavaFileManager
中的 getJavaFileForOutput
location
- 位置className
- 類別的名稱kind
- 檔案的型別,必須是 SOURCE
或 CLASS
sibling
- 用作位置提示的檔案物件,可以為 null
IllegalArgumentException
- 如果 sibling 對於此檔案管理器是未知的,或者位置對於此檔案管理器是未知的並且該檔案管理器不支持未知位置,或者型別無效
IllegalStateException
- 已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器
IOException
- 如果發生 I/O 錯誤,或者已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public FileObject getFileForInput(JavaFileManager.Location location, String packageName, String relativeName) throws IOException
JavaFileManager
複製的描述如果返回的物件表示源或類別檔案,則它必須是 JavaFileObject
的一個實例。
非嚴格意義上來講,在位置、套件名稱和相對名稱的串聯中尋找此方法返回的檔案物件。例如,要在 SOURCE_PATH 位置處的 "com.sun.tools.javac" 套件中尋找屬性檔案 "resources/compiler.properties",將調用此方法,如下:
getFileForInput(SOURCE_PATH, "com.sun.tools.javac", "resources/compiler.properties");
如果在 Windows 上執行該調用,其中 SOURCE_PATH 設置為 "C:\Documents and Settings\UncleBob\src\share\classes"
,那麼有效的結果將是表示檔案 "C:\Documents and Settings\UncleBob\src\share\classes\com\sun\tools\javac\resources\compiler.properties"
的檔案物件。
JavaFileManager
中的 getFileForInput
location
- 位置packageName
- 套件名稱relativeName
- 相對名稱
null
IllegalArgumentException
- 如果位置對於此檔案管理器是未知的並且該檔案管理器不支持未知位置,或者 relativeName
無效
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器
IOException
- 如果發生 I/O 錯誤,或者已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public FileObject getFileForOutput(JavaFileManager.Location location, String packageName, String relativeName, FileObject sibling) throws IOException
JavaFileManager
複製的描述此檔案管理器可能將 sibling 視為對放置輸出位置的提示(可選)。沒有指定此提示的確切語義。除非提供了類別檔案輸出目錄,否則 Sun 的編譯器(例如 javac)將把類別檔案放到與原始源檔案相同的目錄下。要實作此行為,調用此方法時 javac 可以提供原始源檔案作為 sibling。
如果返回的物件表示源或類別檔案,則它必須是 JavaFileObject
的一個實例。
非正式情況下,在位置、套件名稱和相對名稱的串聯或 sibling 參數的同級元素中尋找此方法返回的檔案物件。有關範例,請參閱 getFileForInput
。
JavaFileManager
中的 getFileForOutput
location
- 位置packageName
- 套件名稱relativeName
- 相對名稱sibling
- 用作位置提示的檔案物件;可以為 null
IllegalArgumentException
- 如果 sibling 對於此檔案管理器是未知的,或者位置對於此檔案管理器是未知的並且該檔案管理器不支持未知位置,或者 relativeName
無效
IllegalStateException
- 如果已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器
IOException
- 如果發生 I/O 錯誤,或者已經調用了 JavaFileManager.close()
並且無法重新打開此檔案管理器public void flush() throws IOException
JavaFileManager
複製的描述
Flushable
中的 flush
JavaFileManager
中的 flush
IOException
- 如果發生 I/O 錯誤JavaFileManager.close()
public void close() throws IOException
JavaFileManager
複製的描述
Closeable
中的 close
JavaFileManager
中的 close
IOException
- 如果發生 I/O 錯誤JavaFileManager.flush()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。