问题标签 [hotswap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Roslyn 代码交换
我真的很喜欢在 asp.net vnext 中,我可以在我的应用程序运行时更改控制器的代码,只需刷新它就可以工作。
我想为我的应用程序实现同样的事情,它是如何发生的?如何动态更改类型的实现?
maven - 在 Intellij 中使用 Maven 运行/调试配置时能够热交换类
我想在 Intellij 中使用 Maven 运行/调试配置来构建和运行我的应用程序:一个打包为 fat jar 的 Spring Boot 驱动的 Web 应用程序。我还希望能够热交换课程。但是在 Intellij 中,我只有在使用 Intellij 的内置 Make 功能和 Intellij 'Application' 运行/调试配置时才知道如何进行热插拔。有没有办法做到这一点?
注意:我不想使用 WAR 打包。
java - Java中“热重载”的定义
我正在使用 Java,我被要求将 jar 文件热加载到 ejb 服务器。
所以我的问题是(是的,我已经用谷歌搜索了!),Hot reload 的定义是什么?
node.js - Meanjs 热插拔部署
我正在尝试将我的 MEANjs 应用程序部署到生产环境中......
到目前为止,我已经使用 jenkins、git、rsync 等将项目复制到远程服务器。
在最后一步我只需要打电话
- 停止 myMeanjsApp
- 用新版本的应用程序替换文件夹
- 调用启动 myMeanjsApp
但这意味着我试图避免的停机时间
1. 我怎样才能避免这种情况?
2. 这方面有没有好的实践工作流程?
我已经看到了这个 ,但我不确定它是要走的路还是有其他简单的方法可以做到这一点?
java - 我可以使用 Oracle Java 7 HotSpot VM 安装 DCEVM 吗?
我在 MacOS (OSX 10.7.5) 上运行 Oracle Java 7
java-版本:
我最近阅读了有关DCEVM 的信息,并且很想尝试一下。但是,我对它的兼容性感到困惑。
根据二进制文件下载页面,有 OpenJDK Java 7 update 51, build 3 的二进制文件。我不太确定这与我目前机器上的 Java 版本有什么关系。
安装 JRE 是否需要匹配 DCEVM Hotspot 版本?我是否需要安装 OpenJDK 7_51_3 才能使用有问题的 DCEVM?或者我可以使用我的 Oracle JRE 安装热点 VM?
我不完全确定 JRE/JDK 附带的所有实用程序如何与 HotSpot VM 交互,以及它们是否都必须具有相同的构建,因为编译后的字节码应该能够在任何 JVM 上运行相同的主要版本号。
谁能提供一点了解所有这些组件如何组合在一起?
作为后续,有谁知道我是否/如何/在哪里可以找到适用于 OSX 的兼容版本的 OpenJDK,我可以在其上运行DCEVM for Java 7 update 51, build 3??
scripting - 支持“编辑并继续”或“热交换”的脚本语言?(也许在 Lua 中可能?)
我正在为非编程用户编写现有的 .Net 应用程序脚本。我添加了 lua,它就像一个魅力。然后我通过 debug.sethook添加了调试功能(暂停/继续/步骤) 。它也像一个魅力。
现在我意识到我的应用程序需要像 Visual Studio 那样的编辑和继续功能。您暂停执行可以编辑代码,然后从当前状态继续应用更改。这个功能对我来说非常重要。我认为这对于脚本语言来说很容易做到。
我在任何地方读到脚本语言都可以做到这一点。但即使经过数小时的搜索,我还没有找到 Lua 实现。它不一定是 Lua,但 Lua 中的热交换代码将是我的首选。
如何为用户提供暂停和编辑脚本并在应用更改后继续执行的能力?
注意:不必是 Lua,每种脚本语言都可以
更新
@Schollii 这是一个例子:
谢谢你的建议。这就是它的工作方式:
- 我将使用https://github.com/frabert/NetLua它是一个非常酷、编写良好的 100% C# Lua 解释器。它首先生成一个 AST 树,然后直接执行它。
- 解析器需要修改。在 Parser.cs
public Ast.Block ParseString(string Chunk)
中首先生成了一个 parseTree。parseTree.tokens[i].locations 包含每个标记的确切位置。然后Irony.Parsing.ParseTree
再次解析并转换为aNetLua.Ast.Block
,但丢失了位置信息。我需要改变它,所以稍后我会知道哪条语句在哪一行。 - 现在 AST 树中的每个 Statement 都直接通过 EvalBlock 执行。需要添加调试功能(就像我在 C Binding lua Interpreter DynamicLua via debug.setHook 中的那样)。这可以在 LuaInterpreter.cs internal static LuaArguments EvalBlock(`. Pause/continue/step 函数中完成。我现在也可以添加当前行突出显示,因为每个语句都包含位置行信息。
- 当执行暂停并且代码被编辑时,当前的 LuaContxct 被保存。它包含所有变量。最后一个执行行的最后一个语句也被保存。
- 现在,代码 String 再次被解析为新的 AST 树。它被执行。但是所有语句都被跳过,直到到达带有 line 语句的已保存语句。保存
LuaContext
的被恢复并且可以继续执行所有应用的更改。
新变量也可以在最后执行的行之后添加,因为一个新的NetLua.Ast.Assignment
Statement 可以只向当前的 LuaContext 添加一个新变量,一切都应该正常工作。
这行得通吗?
jakarta-ee - Intellij idea 13.1 和 TomEE - 热插拔不起作用
我正在开发一个部署在 TomEE Server(版本:apache-tomee-jaxrs-1.6.0.2)和 JetBrains IntelliJ IDEA 13.1.5 Ultimate 版上的 Java 项目。我用 Gradle 构建一切。
当我处于调试模式(远程调试器/应用程序服务器调试器)并尝试执行HotSwap
(稍微更改其中一个类并单击Ctrl+之后F9)时,IDE 声称:
但我知道文件已更改...
在调试时添加 watch 显示该类仍在它的 prev 中。状态 - 没有更新更新。
但是,当我在同事站上执行相同的过程时,在两种模式下,一切都很好。(远程/应用程序服务器)更改后更新服务器Make
。
两个站的配置相同。(通过 SVN 和手动三重检查)
有什么问题?还有哪里可以检查?
谢谢。
javascript - 是否可以在 weblogic 12 上进行热插拔?
前端:AngularJS
后端:Java
我们的雇主决定使用 Weblogic 12 来部署该项目。所以我们的问题是:
有什么方法可以修改 javascript 文件并立即看到更改?(例如 weblogic 中的主机交换)
注意:我们不使用 Eclipse
java - 带有 HotSwap 代理的 JBoss
有没有人在生产中使用带有 DCEVM 和 HotSwap 代理的 JBoss AS 7.1?任何地方的教程?是否可以通过 HotSwap 代理添加新的包/类,或者只是替换现有的包/类?
对不起,这个问题太含糊了。我只是在研究提议的技术。
另一点:我是否必须始终部署为爆炸的 .war,并在其中替换/添加 .class 文件?或者我可以部署为压缩的 .war 并在其旁边复制其他压缩的 .jars?
我的架构是我有一个 servlet,然后需要从它访问其他组件。我想在运行时添加/替换这些组件。
java - 在 JBoss 中使用 Hotswap 代理 (Jboss Developer Studio)
教程在这里: http: //www.hotswapagent.org/quick-start
说使用:
作为命令行参数。
但是,在 JBoss 开发人员工作室的 JBoss 上运行我的 servlet 时,我如何传递这些参数?
乍一看,它可能带有eclipse.ini/config.ini
,但是 IDE jvm 为 JBoss 服务器生成了一个新的 jvm,它是否将参数从 传递.ini
到那个?