Spec-Zone .ru
спецификации, руководства, описания, API
|
СОДЕРЖАНИЕ | ПРЕДЫДУЩИЙ | NEXT |
META-INF/services
каталог, который используется, чтобы перечислить любых поставщиков услуг, которые содержатся в файле. Для каждого интерфейса поставщика услуг, который реализуется class, сохраненным в файле JAR, файл, имя которого является полностью определенным именем class интерфейса поставщика услуг, помещается в пределах services
каталог. Файл должен содержать полностью определенные имена class классов реализации, существующих в файле JAR, один на строку. Например, если файл JAR содержит поставщика услуг названный class com.mycompany.mypackage.MyImageReaderSpi
, который реализует javax.imageio.spi.ImageReaderSpi
интерфейс, должен быть названный файл META-INF/services/javax.imageio.spi.ImageReaderSpi
содержа строку com.mycompany.mypackage.MyImageReaderSpi
. API ввода-вывода Изображения автоматически исследует любые файлы JAR, которые находятся на пути class, и идентифицируют тех, которые содержат плагины ввода-вывода Изображения. Для каждого найденного плагина единственный экземпляр его поставщика услуг class инстанцируют и сохранен в реестре времени выполнения class, javax.iamgeio.spi.IIORegistry
.
Файлы JAR на приложении путь class (то есть, набор пути, используя CLASSPATH
переменная), или в другом месте (например, доступный через сетевой URL) может быть загружен приложением. Они не загружаются по умолчанию, чтобы минимизировать время запуска.
javax.imageio.spi.IIORegistry
class может также использоваться во времени выполнения, чтобы вычеркнуть из списка установленные плагины и зарегистрировать новые. В частности возможно использовать a ClassLoader
загрузить плагин по сети, которая может тогда быть зарегистрирована и использоваться точно как локально установленный плагин.
Большинство приложений не должно должно быть иметь дело непосредственно с реестром. Вместо этого они могут использовать методы удобства, содержавшие в пределах javax.imageio.ImageIO
class, которые ищут соответствующие плагины автоматически.