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

无法访问maven/Spring boot子模块的webapp资源

胥良平
2023-03-14

但现在我在洛杉矶有404台:8080台。看起来我无法访问子模块静态资源。

父pom:

...
<modules>
    <module>liquibase</module>
    <module>server</module>
</modules>

...

<build>
    <plugins>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

<packaging>pom</packaging>

和儿童pom:

<parent>
    <artifactId>stable-backend</artifactId>
     <groupId>...</groupId>
     <version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>server</artifactId>

<packaging>war</packaging>

它怎么了?

更新我把我的html放到服务器/src/webapp/在第一种情况下,它就像一个魅力。关于访问,我的意思是从浏览器获取html。

运行spring boot时更新2:运行maven任务它也可以工作。只有当我在intellij“run”按钮上作为spring项目运行时,才会产生这个问题。

共有2个答案

聂风史
2023-03-14

我回答这个问题可能有点晚了,但您仍然可以在Intellij中使用它。

您只需执行以下操作:

>

  • 转到运行

    将工作目录设置为子模块的根目录。在您的示例中,我认为应该是:[项目目录]/稳定的后端/服务器

    注意:默认情况下,IntelliJ将您的工作目录设置为顶级模块,在您的情况下,它可能是:[project\u目录]/稳定的后端/

  • 谭向晨
    2023-03-14

    尝试将maven插件更改为

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                        <configuration>
                            <classifier>exec</classifier>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
    

    让重新打包过程相关模块

     类似资料:
    • 我正在尝试实现动态交付类型的APP。首先,我在create模块之后创建新项目,用于此动态步骤 我的crate类和想要访问资源文件夹的使用布局,可绘制文件夹。 在主模块级实现 实现'com.google.android.play:core:1.2.0'和dynamicFeatures=[“:Dynamic_Feature”] 错误:找不到符号变量activity_main 错误:找不到符号变量iv_

    • 我成功安装了Apache Tomcat9,并访问了servername:8080。 null

    • 在我的java应用程序中,我只是想知道是否可以将src/main/resources下的资源文件从maven子模块复制或直接使用到主maven模块(该子模块作为依赖项)src/main/resource文件夹中,因此我不需要再次手动将所有资源文件复制到我的工作区中。

    • 问题内容: 到目前为止,直到未模块化的Java,您只需将文件放入以确保它位于类路径中,然后使用 从classpath的几乎任何地方开始。 现在有了模块,地块变厚了。 我的项目设置如下: 配置文件放在里面。 项目运行于 由于主类不是位于我自己的项目中,而是位于外部框架模块中,因此看不到。现在的问题是,是否有办法以某种方式将我的配置文件放入模块或打开它?我是否必须更改框架上游加载文件的方式? 我尝试在

    • 我的项目设置如下: 配置文件放在中。 运行项目时使用 如何以最佳实用的方式实现这一点,使它能够像在Java8中一样工作,并且尽可能少的改动?

    • 关于maven项目结构,我有两个问题: 1)我正在创建一个maven多模块项目,并且想知道是否可以将模块的所有公共依赖项放在父POM中?这是正确的做法吗? 2)如果我正在创建一个包含所有web.xml和JSP文件的maven webapp项目,那么web控制器、侦听器和模型对象应该驻留在哪里?在一个单独的maven jar项目中还是在同一个webapp项目中?