We are currently utilizing the Jenkins Artifactory Plugin to push our artifacts to Artifactory, and everything is working well on the master Jenkins Node.
One thing we do in ALL of our builds is: we specify the target repository IN THE BUILD SCRIPT based on the version of the build (i.e. if the project version contains SNAPSHOT, put the builds somewhere else). This has worked without issues, even without explicitly setting the target repo as in the picture below:
On the master node, leaving "Target Repository" empty is no problem, and our artifacts go to the right places. But when running the exact same build on a JNLP slave node, we get the "Target Repository Cannot be Empty" exception. When we EXPLICITLY set the target repo, the job works fine on the slave node, but obviously, this defeats the purpose of dynamically setting the target repo in the build script.
Is there any reason that we'd be getting these errors when running jobs on our slave node, but not master? They're all running the same version of java, gradle, etc. So I'm not sure what the problem would be.