Introduction
After moving the JFrog Artifactory installation directory to a new location, Artifactory may fail to start if the startup configuration still points to the old path.
This article explains why this happens and how to resolve the issue.
Problem Description
After migrating the Artifactory installation directory (for example, to a new filesystem or mount point), starting Artifactory using:
$JFROG_HOME/artifactory/app/bin/artifactoryctl start
fails with an error similar to:
** ERROR: Tomcat Artifactory folder not defined or does not exists at /usr/local/jfrog/artifactory/app/artifactory/tomcat
Artifactory does not start successfully.
Root Cause
artifactory.sh determines the runtime paths based on the JF_PRODUCT_HOME variable, which is sourced from artifactory.default.
Although the Artifactory directory was physically moved to /home/jfrog/artifactory, the environment variable JF_PRODUCT_HOME still pointed to the old path (/usr/local/jfrog/artifactory).
This causes a mismatch when checkArtHome and checkTomcatHome validate the existence of required directories.
Resolution
1. Update the Artifactory Home Path
Locate the artifactory.default configuration file and update the JF_PRODUCT_HOME value so it matches the new installation directory.
For example:
JF_PRODUCT_HOME=/home/jfrog/artifactory
Ensure this path reflects the actual location of the Artifactory installation.
2. Verify Directory Permissions
Make sure the Artifactory service user owns the new installation directory:
chown -R jfrog:jfrog /home/jfrog/artifactory
3. Restart Artifactory
Start Artifactory again using:
$JFROG_HOME/artifactory/app/bin/artifactoryctl restart
or, if Artifactory is managed by systemd:
systemctl restart artifactory
Validation
After restarting, confirm that Artifactory is running correctly:
-
The service status shows running
-
The Artifactory UI is accessible
-
No path-related errors appear in the logs