public abstract class JarURLConnection extends URLConnection
JAR URL の構文は、次のとおりです。
jar:<url>!/{entry}
たとえば、
jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class
JAR URL は、ある JAR ファイルを参照するか、ある JAR ファイル内のエントリを参照する場合に使用するようにしてください。上記の例は、JAR のエントリを参照する JAR URL です。次のようにエントリ名が省略された場合、その URL は JAR ファイルの全体を参照します。
jar:http://www.foo.com/bar/baz.jar!/
作成した URL が JAR URL であることがわかっていて、JAR に固有の機能が必要である場合には、ジェネリック URLConnection を JarURLConnection にキャストするようにしてください。たとえば、
URL url = new URL("jar:file:/home/duke/duke.jar!/"); JarURLConnection jarConnection = (JarURLConnection)url.openConnection(); Manifest manifest = jarConnection.getManifest();
JarURLConnection インスタンスは、JAR ファイルからの読み取り時にしか使用できません。このクラスで OutputStream
を取得して対象の JAR ファイルを変更したりデータを書き込んだりすることはできません。
例
jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class
jar:http://www.foo.com/bar/baz.jar!/
jar:http://www.foo.com/bar/baz.jar!/COM/foo/
!/
は、区切り文字です。
new URL(context, spec)
を使った JAR url の作成では、次の規則が適用されます。
例
URL
, URLConnection
, JarFile
, JarInputStream
, Manifest
, ZipEntry
修飾子と型 | フィールドと説明 |
---|---|
protected URLConnection |
jarFileURLConnection
接続が開始された場合の JAR ファイル URL への接続。
|
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
修飾子 | コンストラクタと説明 |
---|---|
protected |
JarURLConnection(URL url)
指定した URL に新しい JarURLConnection を作成します。
|
修飾子と型 | メソッドと説明 |
---|---|
Attributes |
getAttributes()
接続で使う URL が JAR ファイルエントリを指す場合、この接続用の Attributes オブジェクトを返します。そうでない場合は null を返します。
|
Certificate[] |
getCertificates()
接続で使う URL が JAR ファイルエントリを指す場合はこの接続用の Certificate オブジェクト、そうでない場合は null を返します。
|
String |
getEntryName()
この接続のエントリ名を返します。
|
JarEntry |
getJarEntry()
この接続の JAR エントリオブジェクトが存在する場合にそれを返します。
|
abstract JarFile |
getJarFile()
この接続の JAR ファイルを返します。
|
URL |
getJarFileURL()
この接続で使う JAR ファイルの URL を返します。
|
Attributes |
getMainAttributes()
この接続で使う JAR ファイルの主要な Attributes を返します。
|
Manifest |
getManifest()
この接続の Manifest が存在する場合はそれを、存在しない場合は null を、それぞれ返します。
|
addRequestProperty, connect, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLength, getContentLengthLong, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderField, getHeaderFieldDate, getHeaderFieldInt, getHeaderFieldKey, getHeaderFieldLong, getHeaderFields, getIfModifiedSince, getInputStream, getLastModified, getOutputStream, getPermission, getReadTimeout, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setConnectTimeout, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches, toString
protected URLConnection jarFileURLConnection
protected JarURLConnection(URL url) throws MalformedURLException
url
- URLMalformedURLException
− 指定文字列に有効なプロトコルが見つからない場合、または文字列を解析できない場合。public URL getJarFileURL()
public String getEntryName()
public abstract JarFile getJarFile() throws IOException
IOException
− この接続の JAR ファイルへの接続試行中に IOException が発生した場合。URLConnection.connect()
public Manifest getManifest() throws IOException
IOException
- この接続の JAR ファイルの取得時に IOException がスローされた場合。getJarFile()
public JarEntry getJarEntry() throws IOException
IOException
- この接続の JAR ファイルの取得時に IOException がスローされた場合。getJarFile()
, getJarEntry()
public Attributes getAttributes() throws IOException
IOException
- JAR エントリの取得時に IOException がスローされた場合。getJarEntry()
public Attributes getMainAttributes() throws IOException
IOException
− マニフェストの取得時に IOException がスローされた場合。getJarFile()
, getManifest()
public Certificate[] getCertificates() throws IOException
null
を返しますIOException
- JAR エントリの取得時に IOException がスローされた場合。getJarEntry()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.