AWS Java - 未找到包含在我的 .War 包中的参考文件

Posted

技术标签:

【中文标题】AWS Java - 未找到包含在我的 .War 包中的参考文件【英文标题】:AWS Java - Referencing file included in my .War package not found 【发布时间】:2021-04-26 04:37:00 【问题描述】:

我需要这个文件来授权我对外部服务的 API 请求。我的应用程序使用 WAR 包部署在 Elastic Beanstalk 中,我的文件存储在 WEB-INF/lib 中,但是当我将服务路由到该地址时,什么也没有发生。我的 java 类存储在 WEB-INF/classes 及其子文件夹中(由于包)。我应该使用任何绝对地址而不是相对地址吗?对可能发生的事情有任何想法吗?

我的build.xml文件用ant生成War包:

【问题讨论】:

你是如何构建你的项目的? @smac2020 使用 ant 及其 build.xml 文件。我会发布它。 【参考方案1】:

看起来您缺少依赖项。在使用 Spring BOOT 和 Maven 构建 Web 应用程序时,我从未见过这个问题。同样,在使用 Maven/Spring BOOT 构建时,我始终确保使用 spring-boot-maven-plugin 来构建包含依赖项的可执行 JAR 文件。

要了解如何使用依赖项创建基本 Java 应用程序并部署到 Elastic Beanstalk,请参阅此 AWS 教程。

Creating your first AWS Java web application

【讨论】:

好吧,我会试试看,但是我应该如何在 java 代码中引用我的文件呢?像“./WEB-INF/lib/”?谢谢 我建议做一些测试。例如,查看您的 WAR 是否在 Tomcat 等本地服务器上运行良好。我见过 ANT 做一些有趣的事情,这也是我更喜欢 Maven 的原因之一。

以上是关于AWS Java - 未找到包含在我的 .War 包中的参考文件的主要内容,如果未能解决你的问题,请参考以下文章

AWS Elastic Beanstalk:Tomcat 忽略了我的 WAR 文件

使用 AWS SSO 时 AWS Java SDK 未找到配置文件

WAR 中的打包 JSON 文件未在 AWS 上获取

Maven WAR Overlays - 包括未打包的依赖项

在 AWS linux 上通过 yum 安装 MongoDB 失败:HTTPS 错误 404 - 未找到

输出文件未保存在我的存储桶中,在 AWS s3 中