Spring Boot Maven和Gradle插件现在可以为Linux/Unix操作系统生成完整的可执行存档.运行完全可执行的JAR就像输入一样简单:
$ ./myapp.jar
Run Code Online (Sandbox Code Playgroud)
我的问题是在这种情况下如何设置-D属性,例如
-Dspring.profiles.active=test
Run Code Online (Sandbox Code Playgroud)
另外,如果服务器没有安装jdk,这个完全可执行的jar仍然可以运行吗?
dun*_*nni 37
有两种方法可以配置这样的属性:
1:
通过在单独的配置文件中指定它们.Spring Boot将查找名为like的文件,该文件JARfilename.conf应存储在与JAR文件相同的文件夹中.在那里你可以添加环境变量JAVA_OPTS:
JAVA_OPTS="-Dpropertykey=propvalue"
Run Code Online (Sandbox Code Playgroud)
2:
或者,您可以在执行应用程序之前在shell中指定环境变量的值:
JAVA_OPTS="-Dpropertykey=propvalue" ./myapp.jar
Run Code Online (Sandbox Code Playgroud)
查看可用变量完整列表的文档:http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#deployment-service
关于你的第二个问题:要执行JAR,你不需要JDK,JRE就足够了(但至少你需要它,如果你没有在服务器上安装任何java,那么应用程序就不会运行) .
zhu*_*wei 23
默认情况下,SpringApplication会将任何命令行选项参数(以' - '开头,例如--server.port = 9000)转换为属性并将其添加到Spring环境中.如上所述,命令行属性始终优先于其他属性源.
例如
$ java -jar myapp.jar --spring.application.json='{"foo":"bar"}'
Run Code Online (Sandbox Code Playgroud)
请参阅http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/
| 归档时间: |
|
| 查看次数: |
30014 次 |
| 最近记录: |