gpt4 book ai didi

java - 使用 Trinidad 时从 lib 目录重新加载 jar(JRuby 和 RoR 3)

转载 作者:行者123 更新时间:2023-12-01 13:42:48 28 4
gpt4 key购买 nike

有人在使用 Trinidad 时实现了 Java 库(甚至编译的 Java 类)的热部署吗?

我的 Rails 应用程序在 Trinidad 上运行,并依赖于在 my-rails/lib/java 下打包了许多 jar 的 Java 后端。当这些 jar 之一发生更改时,Trinidad 服务器不会重新加载它。 touch tmp/restart.txt 仅重新加载应用上下文。

请注意,我的问题与 config.autoload_paths 无关,因为据我所知,此选项仅用于重新加载 Ruby 文件。

<小时/>已更新
我未能实现 java 依赖项的热部署并放弃了。对我来说唯一的帮助是每次我都会在本地启动单元测试来检查我的代码。

最佳答案

我认为如果 .jar 没有重新加载,那么它可能是特立尼达错误(因为在上下文重新启动期间应该重新添加 jar - 假设 Tomcat 默认情况下这样做 - 我不确定)...会很棒了解详细信息(在特立尼达的追踪器中),例如如果 jar 名称相同,配置是什么样的(如果有)。

另一种选择是尝试滚动重新启动,因为创建了一个全新的上下文 - 因此它应该从文件系统中获取上下文依赖的任何内容。

请注意,在特立尼达特意禁用了文件更改时的自动重新加载(例如更改 .jar 文件,尽管可能适用于 Tomcat) - 您需要“明确”(触摸...)来请求重新启动。

关于java - 使用 Trinidad 时从 lib 目录重新加载 jar(JRuby 和 RoR 3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20573891/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com