Pet*_*ter 1 grails gradle bootrun
我们有一个复杂的多模块项目,由于各种原因必须使用'gradle bootRun'而不是'grails run-app'运行.使用'grails run-app',可以使用'grails run-app -https'在本地https环境中轻松运行,但这对gradle bootRun不起作用,我找不到明显的等价物.我可以添加到构建文件中,还是作为参数传递,以模仿在开发人员计算机上本地运行时grails run-app的-https行为?
编辑:我正在使用默认的嵌入式servlet容器(Tomcat)
我能够通过以下步骤解决这个问题:
按照https://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html#Configuration中的说明创建本地密钥库- 特别是此命令(在提示输入密码时使用'mysecret',这是显然你的选择)
$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore ./localkeystore
将生成的localkeystore文件与build.gradle一起复制到项目的根目录中
将以下块添加到build.gradle:
-
bootRun {
systemProperty 'server.port', '8443'
systemProperty 'server.ssl.enabled', 'true'
systemProperty 'server.ssl.key-store', './localkeystore'
systemProperty 'server.ssl.key-store-password', 'mysecret'
systemProperty 'server.ssl.key-password', 'mysecret'
}
Run Code Online (Sandbox Code Playgroud)