如何在 Eclipse 本身中运行 Spring Boot Web 应用程序?
Posted
技术标签:
【中文标题】如何在 Eclipse 本身中运行 Spring Boot Web 应用程序?【英文标题】:How to run Spring Boot web application in Eclipse itself? 【发布时间】:2014-07-03 21:00:29 【问题描述】:我能够在我的 Eclipse (STS) 中运行几个示例应用程序。 现在,我想在 Eclipse 中运行一个 Web 应用程序。
我尝试使用link 提供的示例应用程序“spring-boot-sample-web-jsp” 我能够将其战争导出到外部 tomcat 并运行应用程序。 现在我的问题是如何在 eclipse 中运行 Spring Boot Web 应用程序?
【问题讨论】:
【参考方案1】:只需运行SampleWebJspApplication
类中的main
方法。
Spring Boot 将处理所有其余的事情(启动将托管您的示例应用程序的嵌入式 tomcat)。
【讨论】:
谢谢,我能够运行其他应用程序的主要方法,但对于上述应用程序,我没有看到“作为应用程序运行”选项。 @KrishanBabbar 右键单击时看不到Run as -> Java application
?
不,我看不到。
@KrishanBabbar 这很奇怪,对于运行 Spring Boot 应用程序的 Eclipse 来说应该是透明的......
当你运行 Spring Boot 插件时,你会得到代码的热部署。当您将应用程序作为 Java 进程运行时,您将失去此功能。【参考方案2】:
这个答案很晚,但我遇到了同样的问题。我发现了一些有用的东西。
在 Eclipse 项目资源管理器中,右键单击项目名称 -> 选择“运行方式”->“Maven 构建...”
在目标中,输入spring-boot:run
然后点击运行按钮。
我有 STS 插件(即 SpringSource Tool Suite),所以在某些项目中,我会在 Run As 下获得“Spring Boot App”选项。但是,由于某种原因,它并不总是出现。我使用上述解决方法。 以下是解释如何运行 Spring Boot 应用程序的参考:Spring boot tutorial
【讨论】:
那么重新加载是如何工作的?当我在 Controller 或任何其他类中进行更改时,它不会重新加载。我们需要手动运行应用程序吗? 是的,停止并重新启动服务器以重新加载对类的更新。 每次课程代码更改时手动停止和启动很不方便。但我也注意到,如果您的 IDE 支持对不影响方法签名的类进行热插拔更改,则不需要这样做。 github.com/spring-projects/spring-boot/issues/110 。希望我理解正确 这样,如果我第二次运行,我会得到 java.net.BindException: Address already in use 异常。如何解决? @Prashanth Debbadwar 我认为您在第二次开始之前忘记停止第一次运行。对于第二次尝试,tomcat 服务器无法启动,因为第一次运行仍在使用端口 8080。在尝试第二次运行之前单击红色的“终止”按钮。希望对您有所帮助。【参考方案3】:您还可以使用“Spring Boot App”运行配置。为此,您需要安装 Spring Tool Suite plug-in for Eclipse (STS)。
【讨论】:
我现在在 STS 上运行,但是我不知道为什么对于我拥有的这个特定项目,启动运行消失了。 @Shilan 您在 .project 文件中看到“步骤: 1. 运行->运行配置-> Maven 构建-> 新建配置 2. 设置你的项目的基本目录 ie.$workspace_loc:/shc-be-war 3. 设定目标 spring-boot:run 4. 从 Run->New_Configuration
运行项目【讨论】:
如何添加 -Dspring.profiles.active=svil 等参数?我试图把它放在 VM Arguments 中的 JRE 选项卡上,但它不起作用。【参考方案5】:第一种方法:(如果 STS 在 eclipse 中可用) 1.右键单击项目->运行方式->Spring Boot应用程序。
第二种方法: 1.右键项目->运行方式->运行配置 2. 设置你项目的基本目录 ie.$workspace_loc:/first 3. 设定目标 spring-boot:run 4. 运行
第三种方法: 1.右键@SpringBootApplication注解类->运行方式->Java应用程序
【讨论】:
【参考方案6】:就我而言,我必须选择“src/main/java”并选择“Run As”菜单 Just like this,以便显示“Spring Boot App”as here。
【讨论】:
【参考方案7】:我也尝试在 Eclipse 中运行 Spring Boot 应用程序,没有任何插件。
第 1 步
右键单击您的项目。选择“运行方式”->“Maven 构建...”。然后在“目标”字段中,输入“spring-boot:run”。应用并运行。
在此之后您不必再次运行。
第 2 步
进行任何更改后,清理您的项目。清理后,它会自动构建一次项目。然后,当您在浏览器上刷新页面时,将反映更改。
【讨论】:
【参考方案8】:如果您在 STS 中编写代码,您只需在您的 maven 文件中添加 devtools 依赖项。 之后,只要您进行一些更改,它就会自行运行。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
【讨论】:
【参考方案9】:在eclipse中选择项目->选择运行方式->选择Java应用程序。这将显示一个弹出窗口,强制您选择某些内容,尝试在搜索框中搜索具有 main 方法的类。找到它后,选择它并点击确定。这将启动 Spring Boot 应用程序。
我还没有在 Eclipse 中安装 spring 工具套件,但它仍然可以工作。我希望这会有所帮助。
【讨论】:
【参考方案10】:可能对某人有用.. 在运行中,就好像您只获得了 java 应用程序(没有 spring bootapp).. 那么您可能需要通过 Eclipse 市场安装“Spring Tools(又名 Spring IDE 和 Spring Tool Suite)”。 成功安装并重启 Eclipse 后.. 现在您可以在 Run as "Spring Boot app" 中看到。
【讨论】:
【参考方案11】:对我来说,我没有看到该选项,因为我的 Eclipse 中没有正确安装 spring 工具套件。我使用了这个解决方案:Missing Spring Properties Yaml Editor and and Spring Properties Editor with Spring Tools 3.9.2
请注意,由于依赖冲突,我的 eclipse 无法安装它,我必须卸载所有 spring 插件并重新安装
安装后显示选项
【讨论】:
以上是关于如何在 Eclipse 本身中运行 Spring Boot Web 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Eclipse Tomcat 中运行 Spring Boot 应用程序?
如何在没有完整安装 Tomcat 的情况下运行 Spring Web 应用程序?