Spec-Zone.ru › OpenJDK 21

Класс JarURLConnection

java.lang.Object
java.net.URLConnection
java.net.JarURLConnection
public abstract class JarURLConnection extends URLConnection
Подключение к URL-адресу файла Java ARchive (JAR) или записи в файле JAR.

Синтаксис JAR URL:

 jar:<url>!/{entry}
 

например:

jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class

JAR URL должны использоваться для ссылки на файл JAR или записи в файле JAR. Приведённый выше пример — JAR URL, который ссылается на запись в файле JAR. Если имя записи опущено, URL ссылается на весь файл JAR: jar:http://www.foo.com/bar/baz.jar!/

Пользователи должны привести общий URLConnection к JarURLConnection, когда они знают, что созданный ими URL-адрес — это JAR URL, и им нужна функциональность, специфичная для JAR. Например:

 URL url = new URL("jar:file:/home/duke/duke.jar!/");
 JarURLConnection jarConnection = (JarURLConnection)url.openConnection();
 Manifest manifest = jarConnection.getManifest();
 

Экземпляры JarURLConnection могут использоваться только для чтения из файлов JAR. Получить OutputStream для изменения или записи в подлежащий файлу JAR с помощью этого класса невозможно.

Примеры:

Запись в файле JAR
jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class
Файл JAR
jar:http://www.foo.com/bar/baz.jar!/
Директория JAR
jar:http://www.foo.com/bar/baz.jar!/COM/foo/

!/ называется разделителем.

При создании JAR URL с помощью new URL(context, spec), применяются следующие правила:

  • Если контекстный URL отсутствует, а спецификация, переданная в конструктор URL, не содержит разделитель, URL считается ссылкой на JarFile.
  • Если контекстный URL существует, контекстный URL предполагается ссылкой на файл JAR или директорию JAR.
  • Если спецификация начинается с '/', директория JAR игнорируется, и спецификация считается находящейся в корне файла JAR.

    Примеры:

    контекст: jar:http://www.foo.com/bar/jar.jar!/, спецификация:baz/entry.txt
    url:jar:http://www.foo.com/bar/jar.jar!/baz/entry.txt
    контекст: jar:http://www.foo.com/bar/jar.jar!/baz, спецификация:entry.txt
    url:jar:http://www.foo.com/bar/jar.jar!/baz/entry.txt
    контекст: jar:http://www.foo.com/bar/jar.jar!/baz, спецификация:/entry.txt
    url:jar:http://www.foo.com/bar/jar.jar!/entry.txt
С:
1.2
См. также:
  • URL
  • URLConnection
  • JarFile
  • JarInputStream
  • Manifest
  • ZipEntry

Краткое описание полей

Модификатор и тип Поле Описание
protected URLConnection jarFileURLConnection
Подключение к URL файла JAR, если подключение было инициировано.

Поля, объявленные в классе java.net.URLConnection

allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches

Краткое описание конструкторов

JarURLConnection(URL url)
Модификатор Конструктор Описание
protected
Создаёт новый JarURLConnection для указанного URL.

Краткое описание методов

Модификатор и тип Метод Описание
Attributes getAttributes()
Возвращает объект Attributes для этого подключения, если URL для него указывает на запись в файле JAR, иначе null.
Certificate[] getCertificates()
Возвращает объекты Certificate для этого подключения, если URL для него указывает на запись в файле JAR, иначе null.
String getEntryName()
Возвращает имя записи для этого подключения.
JarEntry getJarEntry()
Возвращает объект записи JAR для этого подключения, если он есть.
abstract JarFile getJarFile()
Возвращает файл JAR для этого подключения.
URL getJarFileURL()
Возвращает URL для файла Jar для этого подключения.
Attributes getMainAttributes()
Возвращает основные атрибуты для файла JAR для этого подключения.
Manifest getManifest()
Возвращает Manifest для этого подключения или null, если его нет.

Методы, объявленные в классе java.net.URLConnection

addRequestProperty, connect, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLength, getContentLengthLong, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, 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, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches, toString

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

jarFileURLConnection

protected URLConnection jarFileURLConnection
Подключение к URL JAR-файла, если подключение инициировано. Оно должно быть установлено методом connect.

Подробное описание конструкторов

JarURLConnection

protected JarURLConnection(URL url) throws MalformedURLException
Создаёт новое JarURLConnection для указанного URL.
Параметры:
url - URL
Исключения:
MalformedURLException - если в строке спецификации не удалось найти допустимый протокол или строка не может быть обработана.

Подробное описание методов

getJarFileURL

public URL getJarFileURL()
Возвращает URL JAR-файла для этого подключения.
Возвращает:
URL JAR-файла для этого подключения.

getEntryName

public String getEntryName()
Возвращает имя записи для этого подключения. Этот метод возвращает null, если URL JAR-файла, соответствующий этому подключению, указывает на JAR-файл, а не запись JAR-файла.
Возвращает:
имя записи для этого подключения, если оно есть.

getJarFile

public abstract JarFile getJarFile() throws IOException
Возвращает JAR-файл для этого подключения.
Возвращает:
JAR-файл для этого подключения. Если подключение является подключением к записи JAR-файла, возвращается объект JAR-файла.
Исключения:
IOException - если при попытке подключения к JAR-файлу для этого подключения возникает исключение IOException.
См. также:
  • URLConnection.connect()

getManifest

public Manifest getManifest() throws IOException
Возвращает манифест для этого подключения или null, если манифест отсутствует.
Возвращает:
объект манифеста, соответствующий объекту JAR-файла для этого подключения.
Исключения:
IOException - если получение JAR-файла для этого подключения вызывает исключение IOException.
См. также:
  • getJarFile()

getJarEntry

public JarEntry getJarEntry() throws IOException
Возвращает объект записи JAR для этого подключения, если он есть. Этот метод возвращает null, если URL JAR-файла, соответствующий этому подключению, указывает на JAR-файл, а не на запись JAR-файла.
Возвращает:
объект записи JAR для этого подключения или null, если URL JAR для этого подключения указывает на JAR-файл.
Исключения:
IOException - если получение JAR-файла для этого подключения вызывает исключение IOException.
См. также:
  • getJarFile()
  • getJarEntry()

getAttributes

public Attributes getAttributes() throws IOException
Возвращает объект Attributes для этого подключения, если соответствующий ему URL указывает на запись JAR-файла, в противном случае возвращает null.
Возвращает:
объект Attributes для этого подключения, если соответствующий ему URL указывает на запись JAR-файла, в противном случае возвращает null.
Исключения:
IOException - если получение записи JAR вызывает исключение IOException.
См. также:
  • getJarEntry()

getMainAttributes

public Attributes getMainAttributes() throws IOException
Возвращает основные атрибуты JAR-файла для этого подключения.
Возвращает:
основные атрибуты JAR-файла для этого подключения.
Исключения:
IOException - если получение манифеста вызывает исключение IOException.
См. также:
  • getJarFile()
  • getManifest()

getCertificates

public Certificate[] getCertificates() throws IOException
Возвращает объекты Certificate для этого подключения, если соответствующий ему URL указывает на запись JAR-файла, в противном случае возвращает null. Этот метод может быть вызван только после полного проверки подключения путём чтения из входного потока до конца потока. В противном случае этот метод вернёт null
Возвращает:
объект Certificate для этого подключения, если соответствующий ему URL указывает на запись JAR-файла, в противном случае возвращает null.
Исключения:
IOException - если получение записи JAR вызывает исключение IOException.
См. также:
  • getJarEntry()

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/net/JarURLConnection.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API