Intellij + Gradle + SpringLoaded + Tomcat

时间:2016-02-06 21:29:01

标签: spring tomcat intellij-idea gradle spring-loaded

我正在使用Gradle,Intellij和Tomcat开发Spring休息服务。我想重新加载我的更改而不重新部署,所以我使用SpringLoaded。但它并没有重新加载我的项目。即使热插拔也不起作用。 这是我的build.gradle:

\debug_backtrace()

在我的Tomcat配置中,我有vm选项/** * Will return true if called from within 'Namespace\Class', false otherwhise. * * @return bool */ public function test() { // Get debug_backtrace. This function will be at index 0. $backtrace = \debug_backtrace(); // If the caller is a function it will be at index 1, if not, it will not exist // and we will not execute the indented code. if (false === \array_key_exists(1, $backtrace) // If the caller is within a class the 'class' key will exist || false === \array_key_exists('class', $backtrace[1]) // and its name including namespace(s) will be the string-value of this key. // If it does not exist nor start with 'Namespace\Class' this block will trigger. || 0 !== \strpos($backtrace[1]['class'], 'Namespace\Class') ) { return false; } return true; } 。 我在部署选项卡上选择了爆炸工件。

正如你所看到的,我试图将我的弹簧加载的jar包括在classpath中(我不知道为什么需要它,我在一些文章中看到它)。我试图将此jar添加为编译依赖项,但后来我无法构建项目。  此外,我试图不包括它,只在vm选项中设置。 以下是我的观察:

  • 简单热插拔不适用于弹簧加载的代理,但在没有它的情况下工作
  • 看起来Tomcat使用 \ out \ artifacts \ expecker \ explosion \ expecker-1.0 - SNAPSHOT.war \文件夹,但是当我做项目时,更改是仅反映在 \ build \文件夹中。


任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

我的错,Spring加载不支持添加新类。所以,实际上,一切都按预期工作。