如何解决升级到 14.6.0 后“Java 实时重新加载不可用”
在使用 TravaOpenJDK 11.0.9 从 14.4.7 升级到 14.6.0 后,我收到了“Java 实时重新加载不可用”框。
Screenshot of "Java live reload unavailable"-box
发行说明中是否有我可能遗漏的内容?
解决方法
我在 IntelliJ 中使用 Gradle 和 Spring Boot,并且我在 IntelliJ 的运行配置中包含了 -XX:HotswapAgent=fatjar
。但我不尊重 bootRun
正在分叉一个新的 JVM!不知道 Vaadin 升级的一致性,但至少在将 -XX:HotswapAgent=fatjar
添加到 bootRun
配置后,它现在对我有用。
为了不强迫其他开发者使用 TravaOpenJDK,我在我的 build.gradle
中使用了这个:
def isUsingTravaOpenJDK() {
// Vendor is AdoptOpenJDK,therefore we identify Trava by its version number:
def knownTravaVersions = ["11.0.9+2-202011221400"]
def currentJVM = System.getProperty("java.vm.version")
return knownTravaVersions.contains(currentJVM)
}
bootRun {
if (isUsingTravaOpenJDK()) {
jvmArgs("-XX:HotswapAgent=fatjar")
}
}
目前无法使用 java[.vm].vendor
来确定是否使用 Trava:
java -XshowSettings:properties -version
Property settings:
[...]
java.vendor = AdoptOpenJDK
java.vendor.url = https://adoptopenjdk.net/
java.vendor.url.bug = https://github.com/AdoptOpenJDK/openjdk-support/issues
java.vendor.version = AdoptOpenJDK
java.version = 11.0.9
java.version.date = 2020-10-20
[...]
java.vm.vendor = AdoptOpenJDK
java.vm.version = 11.0.9+2-202011221400
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。