我正在努力构建一个有效的一次性Spring Boot应用程序。使用CLI,我可以获得基本页面并开始工作(参见https://spring.io/guides/gs/spring-boot/)。但是,我还没想到该怎么做,当我使用“spring run”或“spring jar”命令时,我如何将外部依赖项(即第三方JAR文件)添加到编译或运行时类路径中。请注意,这些外部依赖项是我的计算机的本地依赖项,并不存储在工件存储库中。有一种简单的方法可以做到这一点吗?
答案 0 :(得分:3)
如果jar文件不在工件库中,则将它们添加到类路径的最简单方法是在运行应用程序或创建jar时使用-cp
。
例如:
spring run -cp foo.jar app.groovy
或者:
spring jar -cp foo.jar app.jar app.groovy
在spring jar
的情况下,使用-cp
添加到类路径的任何内容都将打包在生成的jar(在本例中为app.jar)中,以确保它是自包含的。
答案 1 :(得分:1)
你可以使用groovy的@Grab
表示法(还有spring grab
来电)。 E.g。
@Grab('joda-time:joda-time:2.5')
@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
return new org.joda.time.DateTime().toString()
}
}