zoukankan      html  css  js  c++  java
  • maven maven-war-plugin 解决java war项目间的依赖(两个war都可独立部署运行,maven 3.2.x亲测)

    最近整理基础框架,有些项目不想分布式,所以基础框架必须同时可独立部署,也可直接被作为依赖和业务工程打到一起,记录下解决war项目依赖的要点,一开始用warpath,结果报找不到,有些帖子还是17年的,于是继续查看。

    warpath 是个坑,按照网上的说明基本跑不通,可能是maven-war-plugin 升级了不兼容,不建议再去使用warpath了,maven-war-plugin就可以搞定所有的事情了。直接上结果了。

    base-webapp

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
                        <!--注意增加这两行,在打包时相关的类会被独立打成jar
                        <attachClasses>true</attachClasses>
                        <classesClassifier>api</classesClassifier>-->
                        <!-- <archiveClasses>true</archiveClasses> --> <!-- 最好不要archiveClasses,否则有些配置的classpath而非classpath*就完了 -->
                        <attachClasses>true</attachClasses>
                     </configuration>
                    <version>3.2.0</version>
                </plugin>

    XXX-webapp依赖配置:

            <pluginManagement>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-war-plugin</artifactId>
                        <configuration>
                            <!-- <dependentWarExcludes>WEB-INF/lib/*</dependentWarExcludes> -->
                            <!-- <archiveClasses>true</archiveClasses> -->
                         </configuration>
                        <version>3.2.0</version>
                    </plugin>
    
        <dependencies>
            <dependency>
                <groupId>com.XXX.YYY</groupId>
                <artifactId>base-webapp</artifactId>
                <version>1.0.0-SNAPSHOT</version>
                <type>war</type>
            </dependency>
            <dependency>
                <groupId>com.XXX.YYY</groupId>
                <artifactId>base-webapp</artifactId>
                <version>1.0.0-SNAPSHOT</version>
                <type>jar</type>
                <classifier>classes</classifier>
                <scope>provided</scope>
            </dependency>

    这样XXX-webapp就把所有classes和静态资源都打包进去了,但是默认还会生成target/work目录,这个后面再看,现在没时间看。

    还没有整合为spring boot,后面再细化整理。

  • 相关阅读:
    Parallel Programming指南
    使用Autofac IOC组织多项目应用程序
    对SQL Server 2008 R2感兴趣StreamInsight特性
    跨平台团队协作项目源码管理软件Mercurial客户端TortoiseHg
    Windows Server AppFabric正式发布
    Windows NLB搭配IIS的ARR搭建高可用环境
    使用VS2010的Database 项目模板统一管理数据库对象
    Fityk曲线拟合工具
    Windows Server AppFabric Beta 2 for For Vistual Studio 2010已经发布
    Visual Studio 2010快速参考指南里头的Scrum海报
  • 原文地址:https://www.cnblogs.com/zhjh256/p/10029432.html
Copyright © 2011-2022 走看看