我需要帮助在项目中配置hotswap代理以热部署类文件。
在我的项目中,我们有如下项目设置:
WebProject(战争)
|
| _ _服务项目(罐子)
服务项目用作Web项目中的jar文件。因此,每当我在服务项目中对java文件进行更改时,我都希望hotswap代理使用最新版本重新加载/替换其类文件,而无需再次部署整个项目。
我已经为 jdk 1.7.51 和 hotswap-agent.jar 文件下载了 dcevm(动态代码演变vm)完成eclipse配置。每当我在WebProject的.java,.properties文件中进行更改时,它会自动重新加载它,而无需再次部署应用程序。现在我只想以这样的方式配置我的hotswap代理:如果我在服务项目中对java文件进行了更改,该文件在Web Project中用作jar文件,它应该再次重新加载.class文件或.jar文件。 / p>
我是否需要在服务项目的资源文件夹中再添加一个hotswap-agent.properties文件?目前我已将其添加到Web项目的资源文件夹中。
非常感谢任何帮助。
答案 0 :(得分:2)
我为多模块项目配置了热插拔代理。在Web项目中,我添加了hotswap-agent.properties文件。在hotswap-agent.properties文件中添加了服务项目目标目录的路径,如此
extraClasspath = D:/ Sample / serviceproject / target / classes
现在它正在从上述目录重新加载文件。
答案 1 :(得分:1)
配置文件hotswap-agent.properties在运行时从类路径根加载(即WEB-INF / webapp项目类)。如果您有标准的maven目录布局,请将其放入src / main / resources。
使用hotswap-agent.properties中描述的extraClasspath属性:
# Add a directory prior to application classpath (load classes and resources).
#
# This may be useful for example in multi module maven project to load class changes from upstream project
# classes. Set extraClasspath to upstream project compiler output and .class file will have precedence to
# classes from built JAR file.
extraClasspath=
maven布局示例:
extraClasspath = _PATH_TO_Service_Project_ /目标/类