Tomcat 不能 运行 war
Tomcat cant run war
我从 https://start.spring.io/(gradle kotlin 项目)下载了演示 webapp。
为 '/' 和 '/test' 添加了 2 个控制器,只是为了测试是否一切正常。
这是代码:
@Controller
class IndexController {
@ResponseBody
@GetMapping("/")
fun main() : String {
return "Hello World"
}
@Controller
class TestController {
@ResponseBody
@GetMapping("/test")
fun main() : String {
return "test"
}
然后我将 war 插件添加到 gradle
apply plugin: 'war'
然后我打印到终端
gradlew build
并在 build/libs 中找到 .war 文件。
我将其部署到定位 Tomcat,但
http://localhost:8080/demo-0.0.1-SNAPSHOT/
http://localhost:8080/demo-0.0.1-SNAPSHOT/test
响应 404 错误。
在 IDEA 中,我可以轻松启动我的应用程序并查看 Hello World 并进行测试。
有什么想法吗?
[JAR 文件]
您在控制器中缺少导入。
在您的控制器中输入以下内容。
package com.example.demo
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
现在删除插件 apply plugin: 'war'
并使用 gradlew build
构建项目
它将在 app_name\build\libs
中创建一个 jar 文件
在命令提示符中打开此位置并在命令下方运行。
java -jar <jar_file_name>.java
使用以下 url 打开应用程序。
http://localhost:8080
[WAR 文件]
如下扩展 SpringBootServletInitializer
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
class DemoApplication : SpringBootServletInitializer()
放置插件 apply plugin: 'war'
并使用 gradlew build
构建项目
现在在 app_name\build\libs 中,它将创建一个 war 文件。
将此 war 部署到 tomcat 服务器并使用以下 URL 进行访问:
http://localhost:8080/demo-0.0.1-SNAPSHOT/
我从 https://start.spring.io/(gradle kotlin 项目)下载了演示 webapp。 为 '/' 和 '/test' 添加了 2 个控制器,只是为了测试是否一切正常。 这是代码:
@Controller
class IndexController {
@ResponseBody
@GetMapping("/")
fun main() : String {
return "Hello World"
}
@Controller
class TestController {
@ResponseBody
@GetMapping("/test")
fun main() : String {
return "test"
}
然后我将 war 插件添加到 gradle
apply plugin: 'war'
然后我打印到终端
gradlew build
并在 build/libs 中找到 .war 文件。 我将其部署到定位 Tomcat,但
http://localhost:8080/demo-0.0.1-SNAPSHOT/
http://localhost:8080/demo-0.0.1-SNAPSHOT/test
响应 404 错误。
在 IDEA 中,我可以轻松启动我的应用程序并查看 Hello World 并进行测试。
有什么想法吗?
[JAR 文件]
您在控制器中缺少导入。
在您的控制器中输入以下内容。
package com.example.demo
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
现在删除插件 apply plugin: 'war'
并使用 gradlew build
它将在 app_name\build\libs
中创建一个 jar 文件在命令提示符中打开此位置并在命令下方运行。
java -jar <jar_file_name>.java
使用以下 url 打开应用程序。
http://localhost:8080
[WAR 文件]
如下扩展 SpringBootServletInitializer
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@SpringBootApplication
class DemoApplication : SpringBootServletInitializer()
放置插件 apply plugin: 'war'
并使用 gradlew build
现在在 app_name\build\libs 中,它将创建一个 war 文件。
将此 war 部署到 tomcat 服务器并使用以下 URL 进行访问:
http://localhost:8080/demo-0.0.1-SNAPSHOT/