如何使用SBT将隐藏文件夹打包到WAR文件的根目录中



我正在尝试构建一个适合部署到Elastic Beanstalk的WAR文件(包含Lift项目)。我还需要使用.ebextensions配置我的应用程序。

.ebextensions应该存储在WAR文件的根目录中。资源应该放在哪里,以便它们最终位于SBT package中WAR文件的根目录中?使用src/main/resources似乎是在WEB-INF/classes中放置资源。

即使我将.ebextensions文件夹放在src/main/resources文件夹中,将package放在WAR文件中,该文件夹也不会出现(在WEB-INF/classes中)。如果我去掉前导句号,它就会出现。那么,如何将SBT也配置为打包隐藏文件夹呢?

将文件夹放在src/main/webapp中。

更新10/23正如Richard Dallaway在下面指出的那样,这似乎不再有效,SBT的作者对此有一个很好的解释:如何使SBT不忽略.eextensions文件夹?。简短的答案是添加以下内容:

excludeFilter := HiddenFileFilter -- ".ebextensions" //or whatever your hidden folder name is

到您的build.sbt文件。