Имея активный репозиторий EPEL, используя графический интерфейс программного обеспечения, я удалил все материалы OpenJava или OpenJDK ; сделал поиск по java и не проверил, используя здравый смысл. Некоторые вещи, такие как json -glib или python -javapackages или tzdata -java я оставил в покое.
затем я сделал yum install jdk-8u191-linux-x64.rpm
от оракула.
Это отображается в графическом интерфейсе программного обеспечения как jdk1.8-2000:1.8.0.201-fcs
без формулировки Open , и все компоненты OpenJava или OpenJDK не установлены.
После этого работает только при использовании java -jar StigViewer.jar
Если я делаю только java StigViewer.jar , я все еще получаю сообщение об ошибке, и если я дважды щелкну файл.jar в проводнике Windows, он откроет файл, как если бы это был контейнер.
При установке Centos 7.6; Я выбрал Сервер с графическим интерфейсом , и я думаю, что был выбор для java, но если бы он был, я знаю, что не выбирал, поэтому кажется, что Centos в некоторой степени автоматически устанавливает openjava.
обновление:
oracle jdk -8u201 -linux -x64.rpm приводит к/usr/bin/java
ссылке на /etc/alternatives/java
, которая затем указывает на/usr/java/jdk1.8.0_201-amd64/jre/bin/java
ЭТОТ oracle java работает с этим файлом stigviewer.jar толькоjava -jar stigviewer.jar
Другие программы, такие как Octave и plplot , полагаются на OpenJDK Headless Runtime Environment 8 , который является java-1.8.0-openjdk-headless-1:1.8.0.201
, и это приводит к тому, что /usr/bin/java
по-прежнему связывается с /etc/alternatives/java
и ссылается на /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/jre/bin/java
, который не работает для этого файла stigviewer.jar .
Поэтому я не забываю вручную запускать Oracle /usr/java/jdk1.8.0_201-amd64/jre/bin/java
, когда мне это нужно. Кажется, что после того, как OpenJDK вообще установлен, oracle rpm не перезапишет ссылки.
В C++ (, как и в любом другом компилируемом языке, )вы всегда должны перекомпилировать после изменения исходного кода. Я подозреваю, что ваш учитель использует среду разработки, которая компилируется и выполняется одним нажатием кнопки. Для крошечного примера, который может быть настолько быстрым, что вы даже не заметите. В «тупом» редакторе выполните следующие шаги:
g++ -Wall -std=c++14
./a.out