繁体   English   中英

Maven将2个项目打包成一个单一的战争,以部署到tomcat服务器

[英]Maven package 2 projects into a single war to deploy to tomcat server

我正在尝试创建一个使用java spring后端和javascript前端的项目。 我有一个带有2个模块“ webapp”和“ frontend”的父pom。 我如何将所有这些打包成一场大战,复制到本地tomcat服务器上?


我知道我将不得不创建一个“超级” WAR,但我不知道如何使用Maven来完成该工作,是否有任何指向此类包装项目教程的指针/链接?

我不想将它们放入一个EAR文件中。

父pom

<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>foo</groupId>
    <artifactId>barr</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.1.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.4</version>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>

    <modules>
        <module>webapp</module>
        <module>frontend</module>
    </modules>
</project>

您可以结合使用maven-assembly插件和maven-shade插件来创建最终的“超级” jar。 虽然,我认为这是一个坏主意,但根据我的看法,您应该安装TomEE而不是tomcat并部署常规EAR,这样会很轻松

我可以看到您尝试利用Spring Boot上可用的任何功能,因此在使用它的过程中利用它的自动配置/约定是有意义的。 据我所知,Spring Boot支持将静态内容包含到现有的战争中,请参阅此处的相关问题或此处

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM