From b368693d80f35c9857bb42273115d7c1d0c81efc Mon Sep 17 00:00:00 2001 From: Bretislav Wajtr Date: Tue, 21 Mar 2017 09:01:45 +0100 Subject: [PATCH 1/2] Add support for HotSwapAgent to devtools HotSwapAgent is an open source competition to JRebel. This commit adds "org.hotswap.agent.HotswapAgent" to the list of known Java agent based class reloaders. This causes same behavior as when JRebel is used: a full restart is NOT triggered when any class changes, however LiveReload event is still triggered. See gh-8683 --- .../org/springframework/boot/devtools/restart/AgentReloader.java | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java index f54e9c080fd..c3784b16e2b 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java @@ -36,6 +36,7 @@ public abstract class AgentReloader { Set agentClasses = new LinkedHashSet(); agentClasses.add("org.zeroturnaround.javarebel.Integration"); agentClasses.add("org.zeroturnaround.javarebel.ReloaderFactory"); + agentClasses.add("org.hotswap.agent.HotswapAgent"); // relevant for http://hotswapagent.org/ (https://github.com/HotswapProjects/HotswapAgent) AGENT_CLASSES = Collections.unmodifiableSet(agentClasses); } From 16afb8a973973b874f15cb640b40e0b8860f8c5d Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Mon, 10 Apr 2017 14:18:12 +0200 Subject: [PATCH 2/2] Polish "Add support for HotSwapAgent to devtools" Closes gh-8683 --- .../springframework/boot/devtools/restart/AgentReloader.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java index c3784b16e2b..f95dc41ad2f 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/restart/AgentReloader.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,7 +36,7 @@ public abstract class AgentReloader { Set agentClasses = new LinkedHashSet(); agentClasses.add("org.zeroturnaround.javarebel.Integration"); agentClasses.add("org.zeroturnaround.javarebel.ReloaderFactory"); - agentClasses.add("org.hotswap.agent.HotswapAgent"); // relevant for http://hotswapagent.org/ (https://github.com/HotswapProjects/HotswapAgent) + agentClasses.add("org.hotswap.agent.HotswapAgent"); AGENT_CLASSES = Collections.unmodifiableSet(agentClasses); }