#tomcat8 #artifactory
#tomcat8 #artifactory
Вопрос:
В настоящее время я размещаю Artifactory на Tomcat8/JDK1.8
.
Если я проверю экран информации о системе, я увижу, что файлы записываются в /u01/usr/share/tomcat8/.artifactory/
Однако в конфигурации сервлета в bin/setenv.sh
я указал, что домашний каталог Artifactory находится где-то в другом месте:
-DARTIFACTORY_HOME=/u01/opt/artifactory
Затем я обнаружил в документах, что он должен быть в нижнем регистре:
-Dartifactory_home=/u01/opt/artifactory
Я перезагрузил Tomcat после изменений, и целевой путь все еще /u01/usr/share/tomcat8/.artifactory
остается. Папка также принадлежит пользователю, запускающему Tomcat.
Почему он не использует указанный домашний каталог?
Ответ №1:
Это кажется немного старым, но для других, которые с этим сталкиваются, вам нужно установить переменную среды ARTIFACTORY_HOME
в вашем сценарии запуска Tomcat, а не системную переменную через -D
параметр.
Linux
set ARTIFACTORY_HOME=/pathto/your/artifactory
Windows
"set ARTIFACTORY_HOME=C:path to your/artifactory"
Обратите внимание на кавычки для Windows
Системные свойства устанавливаются в командной строке Java с использованием синтаксиса -Dpropertyname=value . Они также могут быть добавлены во время выполнения с помощью System.setProperty(строковый ключ, строковое значение) или с помощью различных методов System.GetProperties().load() . Чтобы получить определенное системное свойство, вы можете использовать System.getProperty(строковый ключ) или System.getProperty(строковый ключ, String def).
Переменные среды устанавливаются в ОС, например, в Linux export HOME=/Users/myusername или в Windows SET WINDIR=C: Windows и т. Д., И, в отличие от свойств, могут не устанавливаться во время выполнения. Чтобы получить определенную переменную среды, вы можете использовать System.getenv(строковое имя).