首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有人成功地使用Grails 4/ Java 11并在开发过程中使用DCEVM进行热交换吗?

有人成功地使用Grails 4/ Java 11并在开发过程中使用DCEVM进行热交换吗?
EN

Stack Overflow用户
提问于 2020-09-28 23:16:22
回答 2查看 150关注 0票数 2

我们升级到了Grails 4/ Java 11,并且在开发过程中失去了热插拔功能。我尝试了DCEVM,但应用程序无法启动(第一次调用withNewSession时出错)。

有没有人成功地让Grails和DCEVM协同工作?

EN

回答 2

Stack Overflow用户

发布于 2021-02-18 17:34:14

最近我尝试了Hybris2005 +Java11+ Windows + Eclipse。

请按照以下步骤操作,并根据需要进行修改。

DCEVM 11配置步骤。

  1. 下载并解压本地计算机中的java11-openjdk-dcevm-windows.zip
  2. set JAVA_ home =D:\java11-openjdk\dcevm-11.0.10+3 (根据系统中的每个位置调整路径) eclipse中的
  3. 转到窗口->首选项->已安装的JRE,并将JRE home设置为D:\java11-openjdk\dcevm-11.0.10+3 4在local.properties中调整属性tomcat.debugjavaoptions,如下所示

Tomcat.debugjavaoptions=-XX:HotswapAgent= -javaagent:D:/java11-openjdk/dcevm-11.0.10+3/lib/hotswap/hotswap-agent.jar=disablePlugin=Log4j2,disablePlugin=Spring、disablePlugin=Proxy、disablePlugin=AnonymousClassPatch、disablePlugin=ZK、autoHotswap=true -Djava.locale.providers=COMPAT、CLDR -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket、server=y、address=8000、suspend=n -Xmx4G -Xms2G

  1. 另外,请设置ANT_HOME环境变量,这样我们就不会从\hybris\bin\platform运行setantenv.bat并更新PATH变量PATH

  1. 在调试模式下执行ant clean all并启动hybris。

  1. 在代码中添加System.out.println()语句,然后从特定扩展文件夹执行ant build命令。

  1. 验证是否已完成热插拔。
票数 0
EN

Stack Overflow用户

发布于 2022-02-25 10:30:19

我已经在Grails 5.1.2中使用了热插拔功能,但是Hibernate插件会导致

代码语言:javascript
复制
org.hibernate.HibernateException: No Session found for current thread

所以我不得不禁用Hibernate插件。这意味着对域类的任何更改都需要重新启动。

  1. sdk安装java 11.0.9-trava

  1. sdk使用java 11.0.9-trava

  1. 将以下内容添加到build.gradle中的bootRun jvmArgs:

'-XX:HotswapAgent=fatjar'

  1. 创建src/main/resources/hotswap agent.properties,其中包含:

disabledPlugins=Hibernate

autoHotswap=true

  1. 您现在应该能够启动Grails了,任何代码更改都将在不重新启动的情况下生效。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64104951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档