# java.lang.IllegalArgumentException: path may not be null or empty string. path='null'

**URL:** <https://discuss.gradle.org/t/java-lang-illegalargumentexception-path-may-not-be-null-or-empty-string-path-null/24097>\
**Category:** Help/Discuss\
**Created:** [September 16, 2017, 9:22pm UTC](https://discuss.gradle.org/t/java-lang-illegalargumentexception-path-may-not-be-null-or-empty-string-path-null/24097 "2017-09-16T21:22:19Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![sc1478](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/sc1478/32/4341_2.png) [@sc1478](https://discuss.gradle.org/u/sc1478)\
**Post date:** [September 16, 2017, 9:41pm UTC](https://discuss.gradle.org/t/java-lang-illegalargumentexception-path-may-not-be-null-or-empty-string-path-null/24097/2 "2017-09-16T21:41:50Z")

</div>

I’ve figured out what the null is. This particular variety of rpm plugin is trying something no earlier one has. It doesn’t know the “from” for one of its copyspecs until a separate configuration task has **run**. Nonetheless I want this file to go into the rpm I’m building. Even though I’ve specified a getter() as the from, this is still getting called at configure time when it is still null. I’ve tried every lazy evaluation trick I know to delay evaluation, and it doesn’t work.

How may I generate a copy spec at dynamically at runtime?

---

_[View the full topic](https://discuss.gradle.org/t/java-lang-illegalargumentexception-path-may-not-be-null-or-empty-string-path-null/24097)._
