【问题标题】:JSPs, static content, SpringBoot jars and IntelliJJSP、静态内容、SpringBoot jar 和 IntelliJ
【发布时间】:2019-09-19 15:09:36
【问题描述】:

所以我正在 IntelliJ 中开发一个 Spring Boot 应用程序。使用 Gradle,我正在创建 sprint 启动 jar 文件。

我无法确定将 jsps 和静态内容(例如 .js 文件)放在何处,以便运行 jar 并从 IntelliJ 中运行!

似乎为了让 SpringBoot 在 jar 文件中找到 jsps,我需要将 jsps 放在 src/main/resources/META-INF/resources 目录中。例如,META-INF/resources/WEB-INF/index.jsp。我很确定 WEB-INF 现在毫无意义。

但是,如果我尝试从 IntelliJ 中运行这个 Spring Boot 应用程序,它会找不到 jsp。 404,哈哈哈哈哈哈。我实际上必须将 jsps 放在 src/main 中的战争风格的 webapp 目录中。然而,在 spring boot jar 构建过程中,该目录完全被忽略了。

那么.. 开发人员如何设置他们的开发环境既是 IntelliJ 又是对 gradle bootRun 友好的?

【问题讨论】:

  • htr3n.github.io/2018/12/jsp-spring-boot 有一个指南,它可以在 IntelliJ IDEA 和命令行中通过 war 文件运行,该文件可以作为 jar 执行(通过 java -jar)。
  • CrazyCoder 我爱你。如果不介意在此处输入答案,我可以将您标记为天才。

标签: spring-boot jsp intellij-idea


【解决方案1】:

有一个guide here 应该可以在 IntelliJ IDEA 和命令行中通过 war 文件运行,该文件可以作为 jar 文件执行(通​​过 java -jar)。

【讨论】:

    【解决方案2】:

    根据 Spring Boot,jsp 有一些限制。

    为了克服这些限制,我们需要在应用程序中进行配置以通过将 jsp 放置在 src/main/resources/META-INF/resources/WEB-INF/jsp 文件夹下来呈现 jsp。

    示例代码:Click Here

    参考资料:

    https://dzone.com/articles/spring-boot-with-jsps-in-executable-jars-1

    https://github.com/hengyunabc/spring-boot-fat-jar-jsp-sample

    【讨论】:

    • 哦.. 我可以让 spring boot 来渲染 jsps,但是 IntelliJ 在运行应用程序时找不到它们。如果我将它们移动到 IntelliJ 期望它们的位置,则可执行文件无法找到它们。但是,CrazyCoder 指向解决方案的指针对我来说效果很好。
    猜你喜欢
    • 1970-01-01
    • 2020-01-26
    • 2018-02-14
    • 1970-01-01
    • 2012-12-22
    • 2015-04-02
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多