zoukankan      html  css  js  c++  java
  • maven配置: 生成war的同时生成jar, 并在其他artifact配置依赖于这个jar

    方法一 :使用 attachClasses 和 

    <classifier>classes</classifier>

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-war-plugin</artifactId>

    <version>2.1.1</version>

    <configuration>

    <attachClasses>true</attachClasses>

    </configuration>

    </plugin>

    将会同时生成foo.war和foo-classes.jar。

    在另一个artifact的pom.xml中加入对这个jar的依赖:

    <dependency>

    <groupId>bar</groupId>

    <artifactId>foo</artifactId>

    <version>0.0.1-SNAPSHOT</version>

    <classifier>classes</classifier>

    </dependency>

    方法二

    同时使用 maven-war-plugin 和maven-jar-plugin 并把jar plugin放在war后面,这样就可以把jar install

    
    
    <?xml version="1.0" encoding="UTF-8"?>
    <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>
    
        <parent>
            <groupId>ict.ada</groupId>
            <artifactId>ada-main</artifactId>
            <version>0.0.2-SNAPSHOT</version>
        </parent>
        <artifactId>ada-gdb-rest</artifactId>
    
        <dependencies>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-core</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.hbase</groupId>
                <artifactId>hbase</artifactId>
            </dependency>
            <dependency>
                <groupId>com.sun.jersey</groupId>
                <artifactId>jersey-server</artifactId>
                <version>${jersey.version}</version>
            </dependency>
            <dependency>
                <groupId>com.sun.jersey</groupId>
                <artifactId>jersey-json</artifactId>
                <version>${jersey.version}</version>
            </dependency>
            <dependency>
                <groupId>com.sun.jersey.contribs</groupId>
                <artifactId>jersey-spring</artifactId>
                <version>${jersey.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-digester</groupId>
                <artifactId>commons-digester</artifactId>
                <version>1.8</version>
            </dependency>
            <dependency>
                <groupId>ict.ada</groupId>
                <artifactId>ada-common</artifactId>
            </dependency>
            <dependency>
                <groupId>ict.ada</groupId>
                <artifactId>ada-gdb</artifactId>
            </dependency>
            <dependency>
                <groupId>cn.golaxy</groupId>
                <artifactId>dtsearch2</artifactId>
                <version>2.0</version>
            </dependency>
            <dependency>
                <groupId>ict.ada</groupId>
                <artifactId>community-find</artifactId>
                <version>1.0.0</version>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.21</version>
            </dependency>
            <dependency>
                <groupId>org.apache.lucene</groupId>
                <artifactId>lucene-core</artifactId>
                <version>4.0.0</version>
            </dependency>
            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>mongo-java-driver</artifactId>
                <version>2.11.3</version>
            </dependency>
        </dependencies>
    
        <properties>
            <jdkLevel>1.6</jdkLevel>
            <jetty.version>6.1.18</jetty.version>
            <jersey.version>1.8</jersey.version>
        </properties>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.mortbay.jetty</groupId>
                    <artifactId>maven-jetty-plugin</artifactId>
                    <version>${jetty.version}</version>
                    <configuration>
                        <reload>manual</reload>
                        <stopKey>stop</stopKey>
                        <stopPort>9966</stopPort>
                    </configuration>
                </plugin>
    
                <!-- put aside some unwanted jars from war... -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <warName>ada</warName><!-- war packege name -->
                        <packagingExcludes>WEB-INF/lib/log4j*.jar,WEB-INF/lib/slf4j-api*.jar,WEB-INF/lib/xml-apis*.jar,WEB-INF/classes/*.properties</packagingExcludes>
                    </configuration>
                    <executions>
                        <execution>
                            <id>ada-gdb-rest</id>
                            <phase>package</phase>
                            <goals>
                                <goal>war</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <excludes>
                            <exclude>**/*.xml</exclude>
                        </excludes>
                    </configuration>
                    <executions>
                        <execution>
                            <id>make-a-jar</id>
                            <phase>package</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <!-- <plugin> -->
                <!-- <groupId>org.apache.maven.plugins</groupId> -->
                <!-- <artifactId>maven-dependency-plugin</artifactId> -->
                <!-- <executions> -->
                <!-- <execution> -->
                <!-- <id>copy-dependencies</id> -->
                <!-- <phase>install</phase> -->
                <!-- <goals> -->
                <!-- <goal>copy-dependencies</goal> -->
                <!-- </goals> -->
                <!-- <configuration> -->
                <!-- <includeGroupIds></includeGroupIds> -->
                <!-- <outputDirectory>${project.build.directory}/lib</outputDirectory> -->
                <!-- <overWriteReleases>false</overWriteReleases> -->
                <!-- <overWriteSnapshots>true</overWriteSnapshots> -->
                <!-- <overWriteIfNewer>true</overWriteIfNewer> -->
                <!-- <excludeScope>provided</excludeScope> -->
                <!-- </configuration> -->
                <!-- </execution> -->
                <!-- </executions> -->
                <!-- </plugin> -->
            </plugins>
        </build>
    
    </project>
  • 相关阅读:
    [windows]清除访问共享的用户和密码信息
    Java架构搜集
    jsp、freemarker、velocity对比
    Spring MVC 了解WebApplicationContext中特殊的bean类型
    Web.xml配置详解之context-param
    <context:annotation-config/> 的理解
    使用@Controller注解为什么要配置<mvc:annotation-driven />
    web.xml配置之<context-param>详解
    @WebServlet
    正向代理与反向代理
  • 原文地址:https://www.cnblogs.com/wangqianbo/p/3572512.html
Copyright © 2011-2022 走看看