Maven 缺少将Spring引导应用程序部署到Elastic Beanstalk所需的文件
我有一个Spring Boot应用程序,它正在编译成WAR格式,并将部署到Amazon的Elastic Beanstalk上。这 正在使用mvnw构建应用程序 为了在Elastic Beanstalk上利用日志记录和某些配置功能,我需要在根目录中包含 Spring启动应用程序的文件夹,一个名为.ebextensions的文件夹 显然,因为这个文件夹不是Spring引导配置中指定的类路径的一部分,所以mvnw在构建时不包括它。更糟糕的是,将其放在resources文件夹中也不会起作用,因为Elastic Beanstalk在启动时只会在WAR文件的根文件夹中查找该文件夹 是否有一些方法来配置mvnw,以便它将.ebextensions放在适当的位置?或者是否有一些部署过程Maven 缺少将Spring引导应用程序部署到Elastic Beanstalk所需的文件,maven,spring-boot,amazon-elastic-beanstalk,Maven,Spring Boot,Amazon Elastic Beanstalk,我有一个Spring Boot应用程序,它正在编译成WAR格式,并将部署到Amazon的Elastic Beanstalk上。这 正在使用mvnw构建应用程序 为了在Elastic Beanstalk上利用日志记录和某些配置功能,我需要在根目录中包含 Spring启动应用程序的文件夹,一个名为.ebextensions的文件夹 显然,因为这个文件夹不是Spring引导配置中指定的类路径的一部分,所以mvnw在构建时不包括它。更糟糕的是,将其放在resources文件夹中也不会起作用,因为Elas
我可以使用,以便在部署WAR文件时包含.ebextensions?或者,是否有一种将Spring引导应用程序部署到Elastic Beanstalk的标准方法,允许该应用程序包含.ebextensions文件?您可以使用以下过程。创建一个部署脚本(sh),用于构建包含所需文件的zip文件:
zip -r your-app.zip your-app.war .ebextensions
eb deploy
在文件.elasticbeanstalk/config.yml中,只需指定要上载的文件:
deploy:
artifact: your-app.zip
如果您将
.ebextensions
目录放在src/main/webapp
中,它将不起作用?这是WAR文件的根内容的来源。否。.ebextensions文件不能存在。它需要位于扩展的.WAR文件的根文件夹中。换句话说,如果WAR扩展到tomcat/webapps/someapp,则.ebextensions文件必须位于tomcat/webapps/someapp文件夹中。maven构建WAR时,src/main/webapp
中的所有文件和目录都会复制到WAR的根目录。例如,我希望您有一个src/main/webapp/WEB-INF
目录?如果展开生成的WAR文件,则WEB-INF
目录将显示在根目录中。你的.ebextensions
目录也一样。我建议你把.ebextensions
放在src/main/webapp
-而不是src/main/webapp/WEB-INF
中。后者就是一个例子。不,史蒂夫,事实上是完全不同的。在来寻求帮助之前,我尝试了你的建议。发生的情况是mvnw正确地放置了WEB_INF文件夹,但在创建WAR文件时忽略了.ebextensions。如果它没有忽略.ebextensions,我的问题就不会在这里了。我怀疑我需要在POM文件中进行一些配置。我正在调查。。。