zoukankan      html  css  js  c++  java
  • Linux下安装maven

    set home_dir=C:
    set project_dir=%home_dir%UsersAdministratorDesktop123
    
    %home_dir%
    cd %project_dir%ztyq_bs-service
    call mvn clean
    call mvn install -DskipTests   #测试类
    call mvn -Pproduct package

    可以合一起

    call mvn clean package -DskipTests -Pproduct

     

    • mvn clean:清空输出目录(即 target 目录)

    • mvn compile:编译源代码

    • mvn package:生成构件包(一般为 jar 包或 war 包)

    • mvn install:将构件包安装到本地仓库

    • mvn deploy:将构件包部署到远程仓库

    可以通过yum安装:

    #wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
    
    #yum -y install apache-maven

     

    或者:

    1.首先到Maven官网下载安装文件,目前最新版本为3.0.5,下载文件为apache-maven-3.0.5-bin.tar.gz,下载可以使用wget命令;

    2.进入下载文件夹,找到下载的文件,运行如下命令解压

    tar -xvf  apache-maven-3.0.5-bin.tar.gz


    解压后的文件夹名为apache-maven-3.0.5

    3.使用mv命令将apache-maven-3.0.5文件夹拷贝到自己指定的文件夹,比如/usr/local/下

    sudo mv -f apache-maven-3.0.5 /usr/local/


    4.配置环境变量,编辑/etc/profile文件,添加如下代码

    MAVEN_HOME=/usr/local/apache-maven-3.0.5
    export MAVEN_HOME
    export PATH=${PATH}:${MAVEN_HOME}/bin


    5.保存文件,并运行如下命令使环境变量生效

    source /etc/profile


    6.在控制台输入如下命令,如果能看到Maven相关版本信息,则说明Maven已经安装成功

    mvn -v
     
    7.设置本地maven仓库缓存路径
    <localRepository>/usr/local/maven/repository</localRepository>
     
    8.设置私服镜像拉取地址
    <mirrors>
        <mirror>
          <id>nexus</id>
          <mirrorOf>*</mirrorOf>
          <url>http://10.0.10.54:8081/nexus/content/groups/public/</url>
        </mirror>
    
        <mirror>
          <id>nexus-osc</id>
          <mirrorOf>*</mirrorOf>
          <name>Nexus osc</name>
          <url>http://maven.oschina.net/content/groups/public/</url>
        </mirror>
    </mirrors>
     
    常用命令:
    打包:mvn package   
    清除产生的项目:mvn clean   
    编译源代码:   mvn compile 
    编译测试代码:mvn test-compile  
    运行测试:mvn test 
     
    一系列动作合用:mvn clean compile package
     
    -------------------------------------------------------------------------------------------------------------------------------------------------------
    项目开发好以后,通常要在多个环境部署,像我们公司多达5种环境:本机环境(local)、(开发小组内自测的)开发环境(dev)、(提供给测试团队的)测试环境(test)、预发布环境(pre)、正式生产环境(prod),每种环境都有各自的配置参数,比如:数据库连接、远程调用的ws地址等等。如果每个环境build前手动修改这些参数,显然太不fashion.
    maven早就考虑到了这些问题,看下面的pom片段:
    <profiles>
            <profile>
                <!-- 本地环境 -->
                <id>local</id>
                <properties>                
                    <db-url>jdbc:oracle:thin:@localhost:1521:XE</db-url>
                    <db-username>***</db-username>
                    <db-password>***</db-password>
                </properties>
            </profile>
            <profile>
                <!-- 开发环境 -->
                <id>dev</id>
                <properties>                
                    <db-url>jdbc:oracle:thin:@172.21.129.51:1521:orcl</db-url>
                    <db-username>***</db-username>
                    <db-password>***</db-password>
                </properties>
                <!-- 默认激活本环境 -->
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
            </profile>
            ...
        </profiles>

    profiles节点中,定义了二种环境:local、dev(默认激活dev环境),可以在各自的环境中添加需要的property值,接下来修改build节点,通常配置文件放在resources目录下,build时该目录下的文件都自动会copy到class目录下

    以上图为例,其中spring-database.xml的内容为:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <bean id="dataSource"
            class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
            <property name="url" value="${db-url}" />
            <property name="username" value="${db-username}" />
            <property name="password" value="${db-password}" />        
        </bean>
    </beans>

    各属性节点的值,用占位符"${属性名}"占位,maven在package时,会根据profile的环境自动替换这些占位符为实际属性值。

    默认情况下: 

    maven package

    将采用默认激活的profile环境来打包,也可以手动指定环境,比如:

    maven package -P dev

    将自动打包成dev环境的部署包(注:参数P为大写)

    参考资料:http://www.cnblogs.com/yjmyzz/p/3941043.html

  • 相关阅读:
    JavaScript之延迟加载
    Android之adb命令
    Android之所有API汇总
    Android常用系统广播
    CSS之自适应布局webkit-box
    在Go中没有引用传值
    go指针-1
    go如何实现优雅的错误处理,
    Golang中切片复制成本,一个大切片会比小切片占用更多内存吗?
    Go中的Slice有何不同,传递类型,详解切片类型
  • 原文地址:https://www.cnblogs.com/wjoyxt/p/4224563.html
Copyright © 2011-2022 走看看