【发布时间】:2020-12-17 19:32:43
【问题描述】:
谁能帮我解决这个问题。我已经成功安装了 Talend studio (Talend Data Fabric 7.3.1)。但是当我尝试使用 tDBInput 组件连接到 Azure SQL 数据库时,它向我显示了一个错误,即缺少 jar "mssql-jdbc.jar"。由于下载按钮被禁用。
请看下面显示下载按钮被禁用的快照
screenshot showing download buttion in component is disabled
我手动下载了 jar“mssql-jdbc-8.4.0.jre11”并将其指向组件。当我执行我的 Talend 作业时,它显示以下错误
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/microsoft/sqlserver/jdbc/SQLServerDriver has been compiled by a more recent version of the Java Runtime (class file version 59.0), this version of the Java Runtime only recognizes class file versions up to 55.0
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:800)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:698)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:621)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:579)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:315)
at psc_co_biopharm.test_job_0_1.Test_job.tDBInput_2Process(Test_job.java:727)
at psc_co_biopharm.test_job_0_1.Test_job.runJobInTOS(Test_job.java:1458)
at psc_co_biopharm.test_job_0_1.Test_job.main(Test_job.java:1240)
所以,我尝试了一种解决方法。使用 tlibraryload 组件导入 jar “mssql-jdbc-8.2.1jre11”。它工作正常,我能够查询 Azure SQL 数据库。
但是使用 tlibraryload 不是最好的做法,有人可以告诉我如何将这个版本的 jar "mssql-jdbc-8.2.1jre11" 直接指向组件。
我尝试通过 windows->show_view->Modules 加载这个 jre。但它显示“这个模块已经安装了 maven URI”
请帮助我并建议如何将此版本的 jar "mssql-jdbc-8.2.1jre11" 直接指向组件。
【问题讨论】: