Java Spring引导替代索引页

Java Spring引导替代索引页,java,spring,spring-mvc,configuration,spring-boot,Java,Spring,Spring Mvc,Configuration,Spring Boot,我的应用程序在后端使用Spring Boot,在前端使用SPA(角度)站点。目前,我正在为webapp文件夹中的index.html页面提供服务,它可以自动工作,无需配置。现在,我使用gulp集成了前端的构建过程,所有创建的源代码都被“复制”到build目录中。现在我想将build目录中的index.html文件作为我的主页 我尝试了spring.application.index=build/index.html和其他一些spring引导设置,但没有任何效果。我相信我目前的代码库中不需要任何代

我的应用程序在后端使用Spring Boot,在前端使用SPA(角度)站点。目前,我正在为
webapp
文件夹中的index.html页面提供服务,它可以自动工作,无需配置。现在,我使用gulp集成了前端的构建过程,所有创建的源代码都被“复制”到
build
目录中。现在我想将
build
目录中的
index.html
文件作为我的主页

我尝试了
spring.application.index=build/index.html
和其他一些spring引导设置,但没有任何效果。我相信我目前的代码库中不需要任何代码,但如果缺少什么,请告诉我

是否有办法在
applications.properties
文件中对此进行配置?我需要为索引页创建控制器吗?或者是否有其他方法可以更改默认行为

感谢使用,您应该能够修改此属性:

spring.application.index=
诚然,我确实倾向于创建一个带有
@RequestMapping(“/”
)的最小“主”控制器

值得注意的是,
build
目录只有在
src/main/resources
下才会位于类路径上。还值得一提的是,
src/main/webapp
的内容不会自动绑定到jar中
src/main/resources/static
是Spring Boot查找静态web文件的地方。因此,您有两种选择

选项1:将Grunt构建配置为输出到
src/main/resources/static
下的目录

<plugin>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.6</version>
  <executions>
    <execution>
      <id>copy-resources</id>
      <phase>validate</phase>
      <goals>
        <goal>copy-resources</goal>
      </goals>
      <configuration>
        <outputDirectory>${basedir}/target/classes/static</outputDirectory>
        <resources>
          <resource>
            <directory>build</directory>
            <filtering>true</filtering>
          </resource>
        </resources>
      </configuration>
    </execution>
  </executions>
</plugin>
选项2:将Java构建工具配置为获取Grunt输出并将其放在资源目录中,使其位于类路径上。例如,使用Maven,下面将名为
build
的目录的内容移动到
src/main/resources/static

<plugin>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.6</version>
  <executions>
    <execution>
      <id>copy-resources</id>
      <phase>validate</phase>
      <goals>
        <goal>copy-resources</goal>
      </goals>
      <configuration>
        <outputDirectory>${basedir}/target/classes/static</outputDirectory>
        <resources>
          <resource>
            <directory>build</directory>
            <filtering>true</filtering>
          </resource>
        </resources>
      </configuration>
    </execution>
  </executions>
</plugin>

maven资源插件
2.6
复制资源
验证
复制资源
${basedir}/target/classes/static
建造
真的

我尝试了“/build/index.html”、“build/index.html”、“classpath:build/index.html”和其他一些版本,没有任何变化。我还尝试了从-。我将尝试使用“主”控制器。好的,主控制器工作了,我想我会离开,不会浪费时间去弄清楚为什么其他方法没有,谢谢。我不确定它们是否是有用的替代方案,但我添加了一些关于如何配置构建的选项,以将Grunt生成的资源移动到正确的位置。但是,如果控制器中的几行代码对您有效,那么正如您所说,可能不值得花费太多时间进行试验。Hrmm。。。您提供的链接没有任何对属性spring.application.index的引用?我们可以了解有关您的配置的更多信息吗