zoukankan      html  css  js  c++  java
  • eclipse 如何对maven项目进行打包?

    eclipse 如何对maven项目进行打包?

    CreateTime--2018年4月19日22:02:50

    Author:Marydon

    1.方式一:使用eclipse中的maven插件(命令)打包

      方法:利用pom.xml文件打包

      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/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>demo_WebService2</groupId>
        <artifactId>demo_WebService2</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>war</packaging>
        <dependencies>
            <!-- https://mvnrepository.com/artifact/aopalliance/aopalliance -->
            <dependency>
                <groupId>aopalliance</groupId>
                <artifactId>aopalliance</artifactId>
                <version>1.0</version>
            </dependency>
        </dependencies>
        <build>
            <plugins>
                <!-- Java编译插件版本 -->
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.5.1</version>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                        <!-- 跳过对测试代码的编译 -->
    <!--                     <skip>true</skip> -->
                    </configuration>
                </plugin>
                <!-- 跳过对测试类代码的执行 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.4.2</version>
                    <configuration>
                        <skipTests>true</skipTests>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </project>
    View Code 

      打包前,target目录在eclipse下的展示

      打包前,target目录在磁盘上的展示

      具体操作:

      选中"pom.xml"-->右键-->Run As/Debugg As-->Maven install

      不出意外的话,打包成功

      打包后,target目录在eclipse下的展示

      选中target目录-->右键-->Refresh

      

      打包后,target目录在磁盘上的展示

      红框标出来的是,多出的文件夹    

      Maven install命令执行流程:

      对src/main/java/下的Java文件进行编译-->对src/test/java/下的Java文件进行编译-->

      在target目录下创建项目webapp:demo_WebService2-0.0.1-SNAPSHOT-->

      并将target/classes和target/test-classes下的所有文件组装到target/demo_WebService2-0.0.1-SNAPSHOT/WEB-INF/classes下-->

      将D:WorkSpaceseclipse2016demo_WebService2srcmainwebapp目录下的除了classes文件夹和lib以外的所有文件拷贝到该目录下-->

      将该目录打成war包。

      证实:

      为了证实猜想,所以在用maven打包之前我将WEB-INF/classes和lib文件加下的内容全部清空或者直接将这2个文件夹删掉。

      这就证明了:

      打包后的classes里的编译文件不是来自于WEB-INF/classes;

      打包后的lib里的jar包不是来自于WEB-INF/lib,而是来自与pom.xml。

      

    2.方式二:使用eclipse的export进行打包

      选中项目-->右键-->Export-->选择"WAR File"-->Next;

      点击"Browse..."设置war保存位置-->取消勾选项"Optimize for a ..."-->Finish

    总结:

      项目开发过程中,使用maven对项目打war包;

      将项目进行正式部署时,使用eclipse的export对项目打war;

      使用maven打的jar包,并不一定是最新,当将项目发布到正式地址时,一定要记得重新打个war包。

  • 相关阅读:
    mysql用户密码修改
    Java List java.lang.UnsupportedOperationException
    python __dict__
    pytest.fixture
    Python __metaclass__ 解释
    Python __new__()方法,为对象分配内存 返回对象的引用
    git 常用操作
    boto3 dynamodb 一些简单操作
    conda, pip, virtualenv 区别
    list去重后不改变排序
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/8886587.html
Copyright © 2011-2022 走看看