410013796724260
• Webmoney
R335386147728
Z369087728698
OSGi бандл драйвера для OracleДрайверы JDBC для Oracle не являются OSGi бандлами, но их можно преобразовать в бандл, используя фреймворк Maven. Для этого следует выполнить следующие шаги :
Манифест MANIFEST.MF вновь созданного бандла JDBC драйвера должен включать соответствующие секции <Import-Package>, <Export-Package>. Проект создания бандла драйвера для OracleМожно использовать предлагаемый Eclipse проект для формирования OSGi бандла JDBC драйвера. Проект включает только файл описания pom.xml. Листинг описания проекта pom.xmlОсновную роль в этом проекте играет один единственный файл pom.xml, включающий :
При описании плагина BND важно правильно определить секции <Export-Package> и <Import-Package>. <?xml version="1.0" encoding="UTF-8" standalone="no"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.oracle.ojdbc</groupId> <artifactId>ojdbc6</artifactId> <packaging>bundle</packaging> <version>11.2.0.1</version> <name>Oracle JDBC driver</name> <description> This bundle wraps driver ojdbc6-11.2.0.1.0.jar </description> <properties> <project.build.sourceEncoding> UTF-8 </project.build.sourceEncoding> <pkgArtifactId>ojdbc6</pkgArtifactId> <pkgVersion>11.2.0.1</pkgVersion> <osgiVersion></osgiVersion> <pkgVendor>Oracle Corporation</pkgVendor> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <pkgDocUrl/> </properties> <dependencies> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.1.0</version> <optional>true</optional> </dependency> </dependencies> <build> <extensions> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-webdav-jackrabbit</artifactId> <version>1.0-beta-6</version> </extension> </extensions> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>2.3.4</version> <extensions>true</extensions> <configuration> <instructions> <Bundle-SymbolicName> </Bundle-SymbolicName> <Export-Package> *;version= </Export-Package> <Import-Package> !javax.resource, !javax.resource.spi, !javax.resource.spi.endpoint, !javax.resource.spi.security, !oracle.security.pki, !oracle.ons, !oracle.i18n.text, !oracle.i18n.text.converter, !oracle.xdb, !com.sun.security.auth.module,* </Import-Package> </instructions> </configuration> </plugin> </plugins> </build> </project> Листинг манифеста бандла, MANIFEST.MFЕсли взглянуть на манифест MANIFEST.MF созданного бандла, то можно будет увидеть все необходимые параметры и секции, классифицирующие jar-архив как OSGi бандл. Export-Package в листинге представлен в сильно усеченном виде. Manifest-Version: 1.0 Bundle-Description: This bundle wraps driver ojdbc6-11.2.0.1.0.jar Bundle-SymbolicName: ojdbc6 Built-By: PC Bundle-ManifestVersion: 2 Bnd-LastModified: 1515178285409 Bundle-Version: 11.2.0.1 Bundle-Name: Oracle JDBC driver Created-By: Apache Maven Bundle Plugin Build-Jdk: 1.8.0_121 Tool: Bnd-1.15.0 Import-Package: javax.crypto,javax.crypto.spec,javax.management,javax. naming,javax.naming.directory,javax.naming.spi,javax.net,javax.net.ss l,javax.security.auth,javax.security.auth.callback,javax.security.aut h.kerberos,javax.security.cert,javax.sql,javax.sql.rowset,javax.sql.r owset.spi,javax.transaction.xa,javax.xml.parsers,org.ietf.jgss,org.w3 c.dom,org.xml.sax,org.xml.sax.helpers Export-Package: oracle.jdbc.util;version="11.2.0.1", … Ignore-Package: oracle.i18n.text.converter,oracle.security.pki,com.sun .security.auth.module,javax.resource.spi.endpoint,javax.resource.spi. security,oracle.ons,oracle.xdb,oracle.i18n.text,javax.resource,javax. resource.spi Скачать проектРассмотренный на странице проект создания бандла драйвера для Oracle в виде проекта Eclipse можно скачать здесь (1.95 Мб). Архив включает бандл JDBC драйвера ojdbc6-11.2.0.1.jar в директории target. |