Discussions
Categories
- 196.7K All Categories
- 2.2K Data
- 235 Big Data Appliance
- 1.9K Data Science
- 449.9K Databases
- 221.6K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 549 MySQL Community Space
- 478 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3K ORDS, SODA & JSON in the Database
- 532 SQLcl
- 4K SQL Developer Data Modeler
- 186.9K SQL & PL/SQL
- 21.3K SQL Developer
- 295.4K Development
- 17 Developer Projects
- 138 Programming Languages
- 292.1K Development Tools
- 104 DevOps
- 3.1K QA/Testing
- 645.9K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 153 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.1K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 17 Java Essentials
- 158 Java 8 Questions
- 85.9K Java Programming
- 79 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.2K Java SE
- 13.8K Java Security
- 203 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 400 LiveLabs
- 37 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.6K Other Languages
- 2.3K Chinese
- 170 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 230 Portuguese
sqlcl in 19.13 ORACLE_HOME is broken

Hi!
After applying 19c Oct-21 PSU (ORACLE_HOME 19.13) sqlcl throws java error:
$ sql /nolog Exception in thread "main" java.util.ServiceConfigurationError: oracle.dbtools.extension.SQLCLService: Provider oracle.dbtools.raptor.scriptrunner.commands.liquibase.liquibaseCommand could not be instantiated at java.util.ServiceLoader.fail(ServiceLoader.java:232) at java.util.ServiceLoader.access$100(ServiceLoader.java:185) at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384) at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) at java.util.ServiceLoader$1.next(ServiceLoader.java:480) at oracle.dbtools.extension.SQLCLServices.registerServices(SQLCLServices.java:48) at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.<init>(SqlCli.java:220) at oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli.main(SqlCli.java:441) Caused by: java.lang.NoClassDefFoundError: liquibase/exception/DatabaseException at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) at java.lang.Class.getConstructor0(Class.java:3075) at java.lang.Class.newInstance(Class.java:412) at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380) ... 5 more Caused by: java.lang.ClassNotFoundException: liquibase.exception.DatabaseException at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 10 more
sqlcl in the ORACLE_HOME 19.12 works fine.
$ sql /nolog SQLcl: Release 19.1 Production on Thu Nov 04 09:16:35 2021 Copyright (c) 1982, 2021, Oracle. All rights reserved. SQL>
I've opened a SR.
Comments
-
-
@User_JPQ2N on my side, I found that liquibase-core.jar was removed as part of patch 33192793. I found liquibase-core.jar in:
$ORACLE_HOME/.patch_storage/33192793_*/files/sqldeveloper/sqldeveloper/lib/ext/
When I copied that file back to $ORACLE_HOME/sqldeveloper/sqldeveloper/lib/ext, SQLcl works again.
Still working with Oracle to determine why this happened. For what it's worth, I patched with the DB RU + OJVM RU combo patch 33248420.
-
Hi, thanks for the workaround! Works for me as well.
I wonder if the Oracle perform any tests of their PSUs at all... Looks like they choose the MS-way (It compiled? The first screen came up? Ship it!) :(
-
Oracle Support has created a note on this case:
SQLcl will no longer launch after applying RDBMS patch 33248420 (Doc ID 2822539.1).
-
With latest Jan2022, 19.14 RU, again same issue, but this time Oracle ups the ante :)
Now you have to copy back two files:
$ find $ORACLE_HOME/.patch_storage -name "liquibase-core.jar" # to $ORACLE_HOME/sqldeveloper/sqldeveloper/lib/ext/
and
$ find $ORACLE_HOME/.patch_storage -name "jackson-databind.jar" # to $ORACLE_HOME/sqldeveloper/sqldeveloper/lib
--
sorry for lousy formatting
-
Yes, with latest Jan2022, 19.14 RU again not working. We opened an SR:
...
Please download the latest SQLcl which is SQLcl 21.4. Developer always recommends that customers test on latest releases as those older releases become desupported.
SQLcl 21.4.1 Downloads
https://www.oracle.com/tools/downloads/sqlcl-downloads.html
However this is standalone and not integrated in the database installation:
...
An Enhancement Request was created for this internally here:
ENH 33271902 - ENH: NEED ABILITY TO UPGRADE SCLCL PACKAGED WITH DATABASE IN PLACE (NO NEW FOLDER OR CONFIGS)
-
Hi,
Looks like Oracle finally made it in 19.15 PSU. The sqlcl is 21.4 now and runs ok.
BR!