Ответ 1
Для меня это была аналогичная ошибка. Я решил это просто, вставив
SetJavaHome /usr/lib/jvm/java-7-openjdk-amd64/
в файл ~/.sqldeveloper/4.0.0/product.conf.
Я хочу запустить Oracle SQL Devloper
на Ubuntu с помощью этой команды:
sh sqldeveloper/sqldeveloper.sh
Затем я получил это сообщение:
Введите полный путь к установке JDK (или Ctrl-C, чтобы выйти), путь будет сохранен в /home/aimad/.sqldeveloper/4.0.0/product.conf
Итак, я дал путь к jdk следующим образом:
/USR/Library/JVM/Java-7-OpenJDK-i386/
Но потом я получил это сообщение:
Ошибка: Java home/usr/lib/jvm/java-7-openjdk-i386//bin/java не является JDK. Запуск SQL Developer под JRE не поддерживается.
Для меня это была аналогичная ошибка. Я решил это просто, вставив
SetJavaHome /usr/lib/jvm/java-7-openjdk-amd64/
в файл ~/.sqldeveloper/4.0.0/product.conf.
Я согласен с ответом szabozoltan, но для этого должно быть какое-то объяснение:
SetJavaHome /usr/lib/jvm/java-7-openjdk-amd64/
Это нужно оставить в файле product.conf. Чтобы открыть этот файл, нам нужно ввести следующую команду:
sudo gedit /home/abc/.sqldeveloper/4.0.0/product.conf
После этого введите следующую команду.
./sqldeveloper.sh
Что это, ваш разработчик SQL будет открыта.
У вас установлен Java JRE, вам нужно установить JDK для работы Oracle SQL Devloper.
TL; DR
Установите JDK, введите sudo apt-get install openjdk-7-jdk
в терминал.
Чтобы проверить, установлен ли JDK, введите aptitude search openjdk-7-jdk
в терминал. Если вы видите i
рядом с любым пакетом, он устанавливается. Например, у меня установлен 64-разрядный JDK на моей машине, это результат.
$ aptitude search openjdk-7-jdk
i openjdk-7-jdk - OpenJDK Development Kit (JDK)
p openjdk-7-jdk:i386 - OpenJDK Development Kit (JDK)
Если пакет не имеет i
рядом с ним, он не установлен.
Для установки в JDK в ubuntu вам необходимо установить пакет openjdk-7-jdk. Установите, запустив sudo apt-get install openjdk-7-jdk
в терминале.
После установки JDK вам необходимо установить переменную среды JAVA_HOME.
Вы можете увидеть все установленные JDK на вашем компьютере, запустив update-java-alternatives -l
, выберите тот, который вы хотите использовать, и скопируйте третье поле, это поле JAVA_HOME для этого JDK.
Например, на моей машине
$ update-java-alternatives -l
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
Это означает, что у меня установлен только один JDK, java-1.7.0-openjdk-amd64
, а его JAVA_HOME - /usr/lib/jvm/java-1.7.0-openjdk-amd64
.
Затем установите переменную среды JAVA_HOME, в Bash я бы установил ее, выполнив ее с терминала:
$ export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64
Проверьте правильность установки.
$ echo $JAVA_HOME
/usr/lib/jvm/java-1.7.0-openjdk-amd64
Это установит JAVA_HOME для вашего текущего сеанса терминала, чтобы не беспокоиться о его настройке, вы можете добавить его в свой файл ~/.bashrc
.
После установки JDK и заданной переменной среды JAVA_HOME вы можете перейти в каталог разработчика sql и запустить sqldeveloper.sh script.
$ cd sqldeveloper
$ ./sqldeveloper.sh
Если sqldeveloper.sh не является исполняемым, запустите chmod +x sqldeveloper.sh
и снова запустите script.
Для полноты вы можете проверить, какие пакеты Java вы установили, запустив aptitude search openjdk-7
. Если вы установили JRE, вы увидите i
рядом с пакетом, который начинается с openjdk-7-jre
$ aptitude search openjdk-7
p openjdk-7-dbg - Java runtime based on OpenJDK (debugging symbols)
p openjdk-7-dbg:i386 - Java runtime based on OpenJDK (debugging symbols)
p openjdk-7-demo - Java runtime based on OpenJDK (demos and examples)
p openjdk-7-demo:i386 - Java runtime based on OpenJDK (demos and examples)
p openjdk-7-doc - OpenJDK Development Kit (JDK) documentation
i openjdk-7-jdk - OpenJDK Development Kit (JDK)
p openjdk-7-jdk:i386 - OpenJDK Development Kit (JDK)
i openjdk-7-jre - OpenJDK Java runtime, using Hotspot JIT
p openjdk-7-jre:i386 - OpenJDK Java runtime, using Hotspot JIT
i openjdk-7-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless)
p openjdk-7-jre-headless:i386 - OpenJDK Java runtime, using Hotspot JIT (headless)
i openjdk-7-jre-lib - OpenJDK Java runtime (architecture independent libraries)
v openjdk-7-jre-lib:i386 -
p openjdk-7-jre-zero - Alternative JVM for OpenJDK, using Zero/Shark
p openjdk-7-jre-zero:i386 - Alternative JVM for OpenJDK, using Zero/Shark
p openjdk-7-source - OpenJDK Development Kit (JDK) source files
p uwsgi-plugin-jvm-openjdk-7 - Java plugin for uWSGI (OpenJDK 7)
p uwsgi-plugin-jvm-openjdk-7:i386 - Java plugin for uWSGI (OpenJDK 7)
p uwsgi-plugin-jwsgi-openjdk-7 - JWSGI plugin for uWSGI (OpenJDK 7)
p uwsgi-plugin-jwsgi-openjdk-7:i386 - JWSGI plugin for uWSGI (OpenJDK 7)
Просто решил это, не добавляя косой черты, как вы, поэтому вместо
/USR/Library/JVM/Java-7-OpenJDK-i386/
тип
/USR/Library/JVM/Java-7-OpenJDK-i386
Просто вставьте ниже одного в файл ~/.sqldeveloper/4.0.0/product.conf.
SetJavaHome /usr/lib/jvm/java-7-openjdk-amd64/
У меня была аналогичная проблема, и я решил ее просто добавить 'SetSkipJ2SDKCheck true' к одному из следующих файлов.
/home/abc/.sqldeveloper/4.1.5/product.conf
/opt/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf
apt-get install openjdk-6-jre
apt-get install openjdk-7-jre
apt-get install openjdk-6-jdk
apt-get install openjdk-7-jdk
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java7-installer