Класс JarURLConnection
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 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
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected URLConnection |
jarFileURLConnection |
Подключение к JAR файлу URL, если соединение было установлено. |
Объявленные в классе java.net.URLConnection поля
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
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() |
Возвращает манифест для этого соединения или 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
Подробное описание полей
jarFileURLConnection
protected URLConnection jarFileURLConnection
Подробное описание конструкторов
JarURLConnection
protected JarURLConnection(URL url) throws MalformedURLException
- Параметры:
-
url- URL-адрес - Исключения:
-
MalformedURLException- если в строке спецификации не удалось найти допустимый протокол или строку не удалось разобрать.
Подробное описание методов
getJarFileURL
public URL getJarFileURL()
- Возвращает:
- URL JAR-файла для данного соединения.
getEntryName
public String getEntryName()
- Возвращает:
- имя записи для данного соединения, если оно есть.
getJarFile
public abstract JarFile getJarFile() throws IOException
- Возвращает:
- JAR-файл для данного соединения. Если соединение соединяется с записью JAR-файла, возвращается объект JAR-файла.
- Исключения:
-
IOException- если при попытке подключиться к JAR-файлу для данного соединения возникает исключение IOException. - См. также:
getManifest
public Manifest getManifest() throws IOException
- Возвращает:
- объект манифеста, соответствующий объекту JAR-файла для данного соединения.
- Исключения:
-
IOException- если получение JAR-файла для данного соединения вызывает исключение IOException. - См. также:
getJarEntry
public JarEntry getJarEntry() throws IOException
- Возвращает:
- объект записи JAR для данного соединения или null, если URL JAR для этого соединения указывает на JAR-файл.
- Исключения:
-
IOException- если получение JAR-файла для данного соединения вызывает исключение IOException. - См. также:
getAttributes
public Attributes getAttributes() throws IOException
- Возвращает:
- объект Attributes для данного соединения, если URL указывает на запись JAR-файла, в противном случае null.
- Исключения:
-
IOException- если получение записи JAR вызывает исключение IOException. - См. также:
getMainAttributes
public Attributes getMainAttributes() throws IOException
- Возвращает:
- основные атрибуты JAR-файла для данного соединения.
- Исключения:
-
IOException- если получение манифеста вызывает исключение IOException. - См. также:
getCertificates
public Certificate[] getCertificates() throws IOException
null
- Возвращает:
- объект сертификата для данного соединения, если URL указывает на запись JAR-файла, в противном случае null.
- Исключения:
-
IOException- если получение записи JAR вызывает исключение IOException. - См. также:
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/net/JarURLConnection.html