Я только что закончил чистую установку LTS Ubuntu 16.04. Я установил Scilab здесь из официального репозитория, столь же простого как sudo apt-get install scilab
.
Затем я пытался запустить его от GUI, но это не запускается. Выполнение scilab
от терминала дает следующий вывод:
$ scilab
Could not access to the Main Scilab Class:
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.scilab.modules.localization.Messages.gettext(Unknown Source)
at org.scilab.modules.commons.xml.XConfiguration.<clinit>(Unknown Source)
at org.scilab.modules.core.Scilab.<clinit>(Unknown Source)
Caused by: java.lang.NullPointerException
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1847)
at java.lang.Runtime.loadLibrary0(Runtime.java:871)
at java.lang.System.loadLibrary(System.java:1124)
at org.scilab.modules.localization.MessagesJNI.<clinit>(Unknown Source)
... 3 more
Scilab cannot create Scilab Java Main-Class (we have not been able to find the main Scilab class. Check if the Scilab and thirdparty packages are available).
Таким образом, это имеет проблемы с Java и OpenJDK. У меня есть только один Java в моей системе:
$ update-java-alternatives -l
java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
Как я могу решить проблему с Scilab, запускаются?
Я сообщил об ошибке 1863726 к Панели запуска об этом катастрофическом отказе сначала.
Затем я установил Ubuntu 16.04.0 LTS и не сделал установил любые обновления в нем. Scilab обычно работает в такой системе.
Таким образом, я решил заморозить/прикрепить/блокировать версию пакета OpenJDK к версиям от основного.
Предупреждение: не выполняйте команды ниже, если Вы действительно коснулись о безопасности.
sudo apt-get install openjdk-8-jre:amd64=8u77-b03-3ubuntu3 openjdk-8-jre-headless:amd64=8u77-b03-3ubuntu3
cat <<EOF | sudo tee /etc/apt/preferences.d/pin-java-scilab
Package: openjdk-8-jre:amd64
Pin: version 8u77-b03-3ubuntu3
Pin-Priority: 1337
Package: openjdk-8-jre-headless:amd64
Pin: version 8u77-b03-3ubuntu3
Pin-Priority: 1337
EOF
И теперь я могу выполнить Scilab 5.5.2 как прежде.