Maven、多web模块共享控制器、jsp、样式、脚本

Maven、多web模块共享控制器、jsp、样式、脚本,maven,spring-mvc,Maven,Spring Mvc,使用Maven,可以将公共控制器、jsp和其他资源共享给web模块 结构 web1(包装罐) web2(包装战) 我的web2应用程序可以工作,但找不到web1模块中定义了URI的HTTP请求的映射。我使用注解@Controller和@RequestMapping。我在servlet.xml中定义: <context:component-scan base-package="controller" /> <mvc:annotation-driven/> 如何在不同的

使用Maven,可以将公共控制器、jsp和其他资源共享给web模块

结构

web1(包装罐)

web2(包装战)

我的web2应用程序可以工作,但找不到web1模块中定义了URI的HTTP请求的映射。我使用注解@Controller和@RequestMapping。我在servlet.xml中定义:

<context:component-scan base-package="controller" />
<mvc:annotation-driven/>

如何在不同的web模块之间共享控制器和资源?
最后,我需要3个web应用程序,其中包含公共内容(错误处理程序、jsp错误、样式、js等)。

为什么不创建一个包含所有共享资源的额外项目?您可以在所有web应用程序中重复使用它,只需将共享文件作为依赖项包含在pom.xml中即可

您可以从具有共享资源的其他项目开始:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>nl.connexys</groupId>
    <artifactId>shared</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>Shared resources</name>

</project>

4.0.0
nl.connexys
共享
1.0-快照
共享资源
在webapp项目中,您可以将该项目用作依赖项:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>nl.connexys</groupId>
    <artifactId>webapp</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>Webservice endpoints</name>

    <dependencies>
        <dependency>
            <groupId>nl.connexys</groupId>
            <artifactId>shared</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
    </dependencies>
</project>

4.0.0
nl.connexys
网络应用
1.0-快照
战争
Web服务端点
nl.connexys
共享
1.0-快照

但这些都是非常基本的Maven材料。我认为这些例子应该为你指出正确的方向。

看看这个答案: ,以及有关的参考资料:


它适用于jsp-s、js-s等。

现在您只使用一个项目,您需要创建第二个项目,并将其称为“共享”项目。我将编辑我的答案以添加一些代码示例。对于类,请确定。已经像你的例子那样做了。但是对于jsp来说呢?Jsp不包括在shared.jar中。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>nl.connexys</groupId>
    <artifactId>shared</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>Shared resources</name>

</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>nl.connexys</groupId>
    <artifactId>webapp</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>Webservice endpoints</name>

    <dependencies>
        <dependency>
            <groupId>nl.connexys</groupId>
            <artifactId>shared</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
    </dependencies>
</project>