当前位置: 首页 > 知识库问答 >
问题:

如何让Spring Boot在IntelliJ IDEA社区中自动重启?(出/生成目录问题)

司徒兴思
2023-03-14

我正在IntelliJ IDEA 2018.3社区从事一个基于Gradle的Spring Boot 2项目。

我想让Spring Boot的自动重启工作起来,这样当我在IDE中编辑一个文件时,IDE会动态地重新编译它(而不将其委托给Gradle),运行中的Spring Boot实例会看到更新的类文件并重启部分应用程序。

我有:

  1. 将spring boot开发工具添加到我的项目的依赖项中
  2. 在设置/生成执行部署/编译器中启用“自动生成项目”
  3. 已启用编译器。汽车制造商。允许什么时候应用程序。在注册表中运行

但是我仍然无法让自动重启工作。

问题似乎是IDEA将编译后的类放在out目录中,而不是Gradle的build目录中。此外,编译的类(和更新的资源文件)被放置在与Gradle不同的子目录结构中。这显然是IDEA的一个众所周知的“特性”,就像“按预期工作”一样

out/
  production/             <- different
    classes/
      (package)/
        MyClass.class
  resources/
    templates/
      test.html

build/
  classes/
    kotlin/               <- different
      main/               <- different
        (package)/
          MyClass.class
  resources/
    main/                 <- different
      templates/
        test.html

那么,考虑到IDEA的这个“特性”,我如何才能让Spring Boot的自动重启/实时重新加载工作呢?

共有1个答案

郎建章
2023-03-14

找到了解决方案。

我需要在不使用Gradle的情况下启动Spring Boot应用程序。

单击右上角的下拉框;编辑配置;单击左上角的加号图标;选择静态编程语言(或Java,无论您在Spring Boot项目中的主要语言是什么);输入Main类,它是包含main()方法的类(对于静态编程语言,输入带有Kt后缀的文件名,例如com/demo/myblog/Application.kt变为com.demo.myblog.Application ationKt)然后确定;并将其用作开始目标。

增量编译的配置如上所述。

 类似资料:
  • 问题内容: 我正在尝试检查目录是否存在,如果发生这种情况,我想给它另一个数字,例如,如果“ folderX”存在,那么我想创建一个新的名为“ FolderX1”的文件夹这样做一次,因为我在这样的if / else语句中拥有它: 我要递归地执行此操作,如果程序检测到“ folderX”存在,则应跳转并检查其他文件夹(folderX,FolderX1,FolderX2等),直到找到可以创建的文件夹,但

  • ThinkPHP5.1 具备自动创建功能,可以用来自动生成需要的模块及目录结构和文件等。 快速生成模块 生成一个test模块的指令如下: >php think build --module test 表示自动生成test模块,自动生成的模块目录包含了config、controller、model和view目录以及common.php公共文件。 批量生成模块 如果需要批量生成多个模块的目录和文件,需

  • 我的版本:jkd11 我尝试了下面的代码,但抛出了Docx4JException,但github演示就是这样https://github.com/plutext/docx4j/blob/docx4j-parent-11.1.0/docx4j-samples-docx4j/src/main/java/org/docx4j/samples/TocAdd.java

  • 我刚刚在Eclipse中安装了Groovy和Repast Simphony,并创建了一个Repast Simphony项目。在自动生成的文件中有一个错误。在ModelInitializer类中,导入: 抛出错误:Groovy:无法解析类repast.simphony.essentials.RepastEssentials (我检查了文件系统,文件存在于给定位置) 当我删除静态关键字时,错误消失了,

  • 问题内容: 假设重新启动操作系统时,通过init.d或类似systemd的进程自动重启了Docker守护进程,那么重启一个或多个Docker容器的首选方式是什么?例如,我可能在反向代理或数据库服务器后面有许多Web服务器。 问题答案: CoreOS使用systemd来管理长期运行的服务: https://coreos.com/os/docs/latest/getting-started-with-