IBM 的 DB2 和 Oracle 的 SQLJ 转换器在哪里?

问题描述 投票:0回答:1

一年前我一直在开发一个 Java 项目,并使用 Codehaus Mojo SQLJ 插件 将 .sqlj 文件转换为可访问的 Java 类。由于我保存了旧存储库,我看到以下

<plugin>
已插入我的
pom.xml
:

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>sqlj-maven-plugin</artifactId>
            <version>1.3</version>
            <executions>
                <execution>
                    <goals>
                        <goal>sqlj</goal>
                    </goals>
                    <configuration>
                        <sqljDirs>
                            <sqljDir>src/main/sqlj/</sqljDir>
                        </sqljDirs>
                        <generatedSourcesDirectory>../sales-persistance/src/main/java</generatedSourcesDirectory>
                            <generatedResourcesDirectory>../sales-persistance/src/main/resources/ro/ibm/sqlj</generatedResourcesDirectory>
                    </configuration>
                </execution>
            </executions>
            <dependencies>
                <dependency>
                    <groupId>com.ibm.db2</groupId>
                    <artifactId>sqlj4</artifactId>
                    <version>4.29.29</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>

它使用

com.ibm.db2:sqlj4
依赖项进行 sqlj 翻译。根据我的研究,SQLJ 可以使用两个翻译器之一进行翻译:IBM 或 Oracle 的。根据他们的文档,此类转换器仅随其数据库提供(例如,Oracle 及其数据库 23c 等),而不是作为独立包提供。

一年前,这个

com.ibm.db2:sqlj4
翻译器在 MavenCentral 上可用。目前,它不再可用。从 GitHub 上找到的旧项目来看,Oracle 还提供了一个无需数据库客户端即可使用的 SQLJ 转换器 (
com.oracle:sqlj
),但我似乎无法在任何 Maven 存储库中找到它了。

我找不到独立版本的翻译器有什么原因吗?另外,是否有可能下载 jar 文件并通过

pom.xml
将它们添加到本地? Oracle 和 IBM 不为这些翻译器提供任何下载链接。

java db2 oracle-sqldeveloper ojdbc sqlj
1个回答
1
投票

从 Oracle 12.2 开始,不再支持服务器端 SQLJ

Oracle 数据库内部的 SQLJ 支持

从 Oracle Database 12c 第 2 版 (12.2) 开始,Oracle 不支持运行服务器端 SQLJ 代码。

Oracle 支持使用客户端 SQLJ。但是,Oracle 不支持使用服务器端 SQLJ,包括在数据库环境中运行存储过程、函数和触发器。

Oracle SQLJ 入门文档 指出:

2.1.2 使用 Oracle SQLJ 实现的要求

使用 Oracle SQLJ 实现需要满足以下条件:

  • 可使用 JDBC 驱动程序访问的数据库系统

  • SQLJ 转换器的类文件

    以下文件中提供了与翻译器相关的类:

    ORACLE_HOME/sqlj/lib/translator.jar
    

    注意:有关

    translator.jar
    的更多信息,请参阅“设置路径和类路径”。

  • SQLJ 运行时的类文件。

    ORACLE_HOME/sqlj/lib/runtime12.jar
    

    注意:自 Oracle Database 11g 第 1 版以来,

    runtime12ee.jar
    已被弃用。请改用
    runtime12.jar

因此,您应该能够从数据库安装中获取适当的 JAR 文件。

© www.soinside.com 2019 - 2024. All rights reserved.