原文链接:http://www.dubby.cn/detail.html?id=8724
把应用打包成jar,并且内嵌一个HTTP服务器的最大的优点之一就是,你可以想任何其他普通程序一样运行你的应用。Debug一个Spring Boot应用非常简单,你不需要任何其他特殊的IDE插件或者扩展。
这一章只会介绍打包你的应用成jar包,如果你希望把你的应用打包成war,那么你需要参考你的服务器和IDE文档。
从IDE启动
你可以从IDE把你的Spring Boot应用当做一个普通的Java程序启动,不过,第一步你需要先把项目导入到你的IDE中(译者注:这简直是是废话)。导入项目到你的IDE非常依赖你的IDE和构建工具。大部分IDE可以直接导入Maven项目,例如:Eclipse用户可以从File
中选择Import
->Existing Maven Projects
。
如果你不能直接导入到你的IDE中,你或许可以使用构建插件生成一个IDE的元数据(metadata)。Maven有为Eclispe和IDEA的插件,Grdale也有为了各个IDE提供插件。
如果你意外的启动了两次应用,你可以看到”Port already in use”的错误。你可以选择重新启动(restart),而不是启动(start)。
jar包运行
如果你是用Spring Boot的Maven或Gradle插件创建了一个可执行的jar包,你可以直接输入java -jar
命令来执行:
$ java -jar target/myproject-0.0.1-SNAPSHOT.jar
你也可以开启远程debug来启动应用,这样你就在你的应用上依附了一个debugger:
$ java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n \
-jar target/myproject-0.0.1-SNAPSHOT.jar
使用Maven插件
Spring Boot的Maven插件包含了一个run
的goal(译者注:goal是Maven的一个概念),用来快速的编译和运行应用。输入:
$ mvn spring-boot:run
你也可以使用一些有用的环境变量:
$ export MAVEN_OPTS=-Xmx1024m -XX:MaxPermSize=128M
使用Gradle插件
Spring Boot的Gradle插件也提供了一个bootRun
的task,可以运行你的应用。前提是你加了spring-boot-gradle-plugin
这个插件:
$ gradle bootRun
你也可以使用一些有用的环境变量:
$ export JAVA_OPTS=-Xmx1024m -XX:MaxPermSize=128M