The installation of SQLcl is easy... you just download the zip, unpack and run the executable.
But to be fair, before I got SQLcl running (especially the script part) I encountered a number of issues, so hopefully this post helps you be able to run SQLcl with all features in minutes as it's meant to be :)
Those were the error messages I received when running sql (script):
javax.script.ScriptException: sun.org.mozilla.javascript.EvaluatorException: Java class "java.util.ArrayList" has no public instance field or method named "0".
javax.script.ScriptException: sun.org.mozilla.javascript.EcmaError: ReferenceError: "Java" is not defined. (#1) in at line number 1
The solution for me was to upgrade my Java version to Java 8.
Here're the steps on my OEL/RHEL system to upgrade Java:
$ cd /opt
$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz"
$ tar xzf jdk-8u102-linux-x64.tar.gz
$ cd jdk1.8.0_102/
$ alternatives --install /usr/bin/java java /opt/jdk1.8.0_102/bin/java 2
$ alternatives --config java
There are 5 programs which provide 'java'.
Selection Command
-----------------------------------------------
1 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
3 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
*+ 4 /usr/java/jre1.8.0_101/bin/java
5 /opt/jdk1.8.0_102/bin/java
Enter to keep the current selection[+], or type selection number: 5
$ alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_102/bin/jar 2
$ alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_102/bin/javac 2
$ alternatives --set jar /opt/jdk1.8.0_102/bin/jar
$ alternatives --set javac /opt/jdk1.8.0_102/bin/javac
$ java -version
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)
$ export JAVA_HOME=/opt/jdk1.8.0_102
$ export JRE_HOME=/opt/jdk1.8.0_102/jre
$ export PATH=$PATH:/opt/jdk1.8.0_102/bin:/opt/jdk1.8.0_102/jre/bin
Now when running SQLcl everything worked like a charm. Hurray :)
Got this new version of SQLCI from sqldeveloper.oracle.com but on Windows 7(64-bit) machine, got this error.
ReplyDeleteAny inputs/help on how to resolve this ?
C:\Users\179818>sql /nolog
Aug 05, 2016 11:08:01 AM java.util.prefs.WindowsPreferences
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
SQLcl: Release 4.2.0.16.175.1027 RC on Fri Aug 05 11:08:04 2016
Copyright (c) 1982, 2016, Oracle. All rights reserved.
idle>