Discussions
Categories
- 197.2K All Categories
- 2.5K Data
- 546 Big Data Appliance
- 1.9K Data Science
- 450.8K Databases
- 221.9K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 552 MySQL Community Space
- 479 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.1K ORDS, SODA & JSON in the Database
- 555 SQLcl
- 4K SQL Developer Data Modeler
- 187.2K SQL & PL/SQL
- 21.4K SQL Developer
- 296.3K Development
- 17 Developer Projects
- 139 Programming Languages
- 293K Development Tools
- 110 DevOps
- 3.1K QA/Testing
- 646.1K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 158 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.2K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 19 Java Essentials
- 162 Java 8 Questions
- 86K Java Programming
- 81 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 205 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 468 LiveLabs
- 39 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 175 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 233 Portuguese
SQLcl.exe giving Java error Exception in thread "main" java.lang.UnsatisfiedLinkError: Could not loa
Answers
-
Oh, sorry, I forgot about a prior forum discussion on that problem. If you just run sql.bat from the command line you will see...
C:\Program Files\sqlcl\bin>sql.batEnvironment variable echo on not definedThe syntax of the command is incorrect.
That other discussion describes in detail a fix for that issue (and others) with the bat file...
Errors in sql.bat 17.4.0.354.2224
As for the Modified Date of the sql.exe changing after running it, I do not see that happen on my system. Most likely something "special" going on in your environment.
-
I found that this was caused in my env by /tmp being secured and not having execute permission. I resolved this (for me) by setting the tmp location to a different directory (my preference was within the current directory).
I did this by editing the the sql binary (sqlcl/bin/sql) in two places :
FIRSTLY:
function setupArgs {
#
# Standard JVM options which are always used
#
AddVMOption -Djava.awt.headless=true
AddVMOption -Dapple.awt.UIElement=true
AddVMOption -Xss10M
AddVMOption -Djava.io.tmpdir=$TMPDIR
}
SECONDLY, right at the bottom of the file:
checkADE
PWD=`pwd`
TMPDIR="$PWD/tmp"
if [ ! -d $TMPDIR ]; then
mkdir $TMPDIR
fi
setupArgs
...
..
.
This had me stumped for a while, so I hope its helpful to someone