1. 从IDE中的Run 按钮运行
你可以从IDE中运行Spring Boot应用, 就像一个简单的Java应用, 但是, 你首先需要导入项目。 导入步骤跟你的IDE和构建系统有关。 大多数IDEs能够直接导入Maven项目, 例如Eclipse用户可以选择 File 菜单的 Import… –> Existing MavenProjects 。
如果不能直接将项目导入IDE, 你可以需要使用构建系统生成IDE元数据。 Maven有针对Eclipse和IDEA的插件;Gradle为各种IDEs提供插件。
注:如果意外地运行一个web应用两次, 你将看到一个“端口已在使用中“错误。 为了确保任何存在的实例是关闭的, STS用户可以使用 Relaunch 按钮而不是 Run 按钮。
2. 作为一个可执行的Jar 运行
如果使用Spring Boot Maven或Gradle插件创建一个可执行jar, 你可以使用 java -jar 运行你的应用。 例如:
1
2
|
java -jar target/myproject-0.0.1-SNAPSHOT.jar
|
运行一个打包的程序并开启远程调试支持是可能的, 这允许你将调试器附加到打包的应用程序上:
1
2
|
java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n
-jar target/myproject-0.0.1-SNAPSHOT.jar
|
3. 使用Maven插件运行
Spring Boot Maven插件包含一个 run 目标, 它可以用来快速编译和运行应用程序。 应用程序以一种暴露的方式运行, 由于即时“热“加载, 你可以编辑资源。
1
|
mvn spring-boot:run
|
你可能想使用有用的操作系统环境变量:
1
|
export MAVEN_OPTS=-Xmx1024m -XX:MaxPermSize=128M -Djava.security.egd=file:/dev/./urandom
|
(“egd”设置是通过为Tomcat提供一个更快的会话keys熵源来加速Tomcat的。 )
4. 使用Gradle插件运行
Spring Boot Gradle插件也包含一个 run 目标, 它可以用来以暴露的方式运行你的应用程序。 不管你什么时候导入 springboot-plugin , bootRun 任务总是被添加进去。
1
|
gradle bootRun
|
你可能想使用那些有用的操作系统环境变量:
1
|
export JAVA_OPTS=-Xmx1024m -XX:MaxPermSize=128M -Djava.security.egd=file:/dev/./urandom
|
5. 热交换
由于Spring Boot应用程序只是普通的Java应用, 那JVM热交换( hot-swapping) 应该能出色的工作。 JVM热交换在它能替换的字节码上有些限制, 更全面的解决方案可以使用Spring Loaded项目或JRebel。