我正在尝试在 Azure 应用服务上部署 Spring 应用程序。我使用如下插件添加到 build.gradle 指令:
azurewebapp {
subscription = 'xxx'
resourceGroup = 'xxx'
appName = 'xxx'
region = 'westus'
runtime {
os = 'Linux'
webContainer = 'Tomcat 10.0'
javaVersion = 'Java 17'
}
appSettings {
DatabaseConnectionString = "xxx"
DatabaseUsername = "xxxx"
DatabasePassword = "xxxx"
}
auth {
}
然后在命令 gradle azureWebAppDeply 之后,我得到了有关成功的信息,但是当我尝试到达任何端点时,我得到了 404,即使应用程序只是 1 个具有如下 String 返回类型的 Controller
@RestController
@RequestMapping("any")
@CrossOrigin("*")
public class Example {
@GetMapping
public String re() {
return "Hello world";
}
}
任何人都可以帮助我做什么,以便能够到达端点吗?
最佳答案
I tried to reach any endpoint I got 404
这可能是因为应用程序部署不正确。检查您的应用程序的所有文件是否在 Azure 应用服务中可用。
我已使用 IntelliJ IDE 部署了您的应用程序,并且在运行已部署的应用程序后可以看到预期的结果。
遵循的步骤:
-
Right click on the project=> Select Azure=> Choose Deploy to Azure Web Apps
:
- 选择您的
web app
部署 Spring Boot 应用程序,如下所示,并相应填写其余详细信息:
部署成功:
- 确保您的应用程序已正确部署,并且您可以在中看到所有项目文件 KUDU 站点(
https://<web_app_name>.scm.azurewebsites.net/newui
)。 -
Azure App Service=>Advanced Tools=>Go=>
KUDU 网站即将开通。 - 转到
File Manager=>site/wwwroot/
,检查项目文件是否全部部署完毕。
回应:
浏览申请网站https://<web_app_name>.azurewebsites.net/any
:
关于java - Azure spring应用程序部署,找不到 Controller 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77194521/