Из-за зависимости от другого программного обеспечения, которое я собираюсь создать, мне пришлось установить Java JDK 8 вручную, я использовал следующее руководство: https://www.vultr.com/docs/how-to-manually-install-java-8-on-ubuntu-16-04
Но когда я попытался собрать программное обеспечение, произошла следующая ошибка:
/bin/bash: jar: command not found
Я установил PATH в .bashrc и .profile, а также установил среду в /etc/environment, но проблема все еще сохраняется.
в конце .bashrc и .profile я добавил следующие строки:
PATH = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/jdk1.8.0_211/bin:/usr/lib/jvm/jdk1.8.0_211/db/bin:/usr/lib/jvm/jdk1.8.0_211/jre/bin"
JAVA_HOME=/usr/lib/jvm/jdk1.8.0_211
JRE=/usr/lib/jvm/jdk1.8.0_211/jre
Я ожидаю, что расположение пути правильное, и программное обеспечение должно собраться, но вместо этого это не удалось. Пожалуйста, помогите мне решить эту проблему.
Заранее спасибо.
Обновлено: Нашел решение моей проблемы, просто нужно запустить следующие команды на терминале:
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.8.0_211/bin/jar 180
Да, я запускаю source ~/.bashrc и source ~/.profile, также перезапускаю систему. И да, банка существует внутри /usr/lib/jvm/jdk1.8.0_211/bin.
Он также выполняется нормально, если вы укажете полный путь, то есть /usr/lib/jvm/jdk1.8.0_211/bin/jar?
это тоже не работает. Я также пытался запустить export PATH = "$PATH:$JAVA_HOME/bin" в терминале, но это тоже не удалось.
Он должен работать с полным путем, независимо от PATH, так что это что-то другое. Права доступа в порядке, включая исполняемый бит?
Я запускаю ls -l jar, результат: -rwxr-xr-x, это правильно?
Кажется правильным. Итак, какую ошибку вы получите, если запустите /usr/lib/jvm/jdk1.8.0_211/bin/jar или просто ./jar в этом каталоге?
Какую именно команду вы используете?
При прямом запуске jar ошибки нет.
@TheFiddlerWins Я попытался собрать так называемый контроллер ONOS SDN, используя следующую команду: bazel build onos




Решение моей проблемы заключается в вводе следующей команды в терминале:
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.8.0_211/bin/jar 180
Вы повторно вошли в систему (или запустили
source .bashrc), чтобы ваш текущий PATH имел это значение? Существует ли файлjarвнутри/usr/lib/jvm/jdk1.8.0_211/bin?