我正在使用heroku的config var插件(参见https://devcenter.heroku.com/articles/config-vars)。
它允许我使用.env文件,我没有推送到源代码控制来定义heroku环境。
因此,当我使用heroku时,我可以通过System.properties访问合理的信息。
在dev中,我想从这个文件中读取,所以最好是在我的类路径中。
.env文件是我项目的根目录,所以我不能使用这样的东西:
sourceSets {
main {
resources {
srcDirs = ['src/main/resources', '/']
}
}
}
将单个文件包含到gradle资源中的最简单方法是什么?
答案 0 :(得分:4)
之前的答案看起来比我希望的要复杂得多,所以我在gradle forums上询问并得到了Sterling Green的回复,他是其中一个摇篮核心开发者。
他建议直接配置processResources
processResources {
from(".env")
}
他还提到将项目根目录直接包含在输入中可能是一个坏主意。
答案 1 :(得分:3)
将此前的答案与其他网站的其他提示合并后,我想出了以下解决方案:
sourceSets {
specRes {
resources {
srcDir 'extra-dir'
include 'extrafiles/or-just-one-file.*'
}
}
main.resources {
srcDir 'src/standard/resources'
srcDir specRes.resources
}
}
processResources {
rename 'some.file', 'META-INF/possible-way-to-rename.txt'
}
我仍然想知道是否有更好的方法。
答案 2 :(得分:1)
我最终做的是将项目根目录添加为资源文件夹,仅包含我感兴趣的文件:
sourceSets.main.resources { srcDir file('.') include '.env' }
似乎要做的伎俩。我想知道它是否是最好的解决方案