Java真的很重很复杂,连项目构建和编译都得专门拉出来学,这里整理一下在OS X上使用Maven的注意事项。

一、安装

[bash] 1.从http://maven.apache.org/download.cgi下载二进制文件,如: apache-maven-3.3.9-bin.zip 2.将文件解压,并放在合适的目录,如: /Users/xiexiaowen/bin/apache-maven-3.3.9 3.创建一个符号链接(方便以后升级) ln -s apache-maven-3.3.9 apache-maven 4.配置好java与maven相关环境变量,vim ~/.bash_profile export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home" export PATH=$JAVA_HOME/bin:$PATH export M2_HOME="/Users/xiexiaowen/bin/apache-maven" export PATH=$PATH:$M2_HOME/bin export MAVEN_OPTS="-Xms1024m -Xmx4096m -XX:PermSize=1024m" 5.检查maven安装情况 echo $M2_HOME mvn -v 6.让maven做一些初始化工作: mvn help:system 7.用户范围的配置文件: cp $M2_HOME/conf/settings.xml ~/.m2/settings.xml 8.修改IDE中Maven Home,不要使用IDE内嵌的Maven [/bash]

二、编写pom

[bash] groupId: 项目属于的组,往往体现组织或公司,如: com.hupu.mvntest artifactId:标示子模块,如: helloworld version:版本号,带有SNAPSHOT代表处于开发中,不是稳定版本,如: 1.0-SMAPSHOT name:非必需,只是一个对于用户更为友好的项目名称 dependenicies:依赖包 scope:依赖包的范围(默认值是compile,表示依赖对主代码和测试代码都有效) 默认打包生成的jar是不能够直接运行的,因为带有main方法的类信息不会添加到manifest中,为了生成可执行的jar文件,需要借助maven-shade-plugin [/bash]

三、项目目录

[bash] 1.项目主代码目录: src/main/java/ 2.Java类的包名应与pom中定义的groupId和artifactId相吻合: com.hupu.mvntest.helloworld 3.包名也对应着相应的目录层级: com/hupu/mvntest/helloworld/ 4.Maven构建的输出: target/ 5.默认测试代码目录: src/test/java [/bash]

四、Maven命令

[bash] 编译: mvn clean compile 测试: mvn clean test 打包: mvn clean package 安装(将jar包和pom文件放进本地仓库): mvn clean install 生成骨架: mvn archetype:generate [/bash]

OS X Maven 安装与使用简介的更多相关文章

  1. 转载maven安装,配置,入门

    转载:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html 本书代码下载 大家可以从我的网站下载本书的代码:http://ww ...

  2. 学习笔记-[Maven实战]-第二章:Maven安装和配置

    在windows上安装Maven 1.检查JDK安装:在CMD下运行以下命令来检查JAVA安装情况: 命令: C:\Documents and Settings\Administrator>ec ...

  3. Linux必备 -- 如何在Mac OS 使用VMware 安装Linux

    Linux简介 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协 ...

  4. Spotlight on Mysql在Windows平台下的安装及使用简介

    Spotlight on Mysql在Windows平台下的安装及使用简介   by:授客 QQ:1033553122 1.   测试环境 Win7 64位 mysql-connector-odbc- ...

  5. 基于Centos搭建Maven 安装与使用

    CentOS 7.2 64 位操作系统 安装 Maven Maven 简介 Apache Maven 是一个软件项目管理及自动构建工具,由 Apache 软件基金会所提供.基于项目对象模型(缩写:PO ...

  6. maven学习之一:maven安装

    1.下载maven: 地址:https://maven.apache.org/ 点击download后; 解压: 解压后放在d:\develop目录下 下面我们去配置环境变量,找到计算机,右键,找到属 ...

  7. Ubuntu系统Apache Maven安装

    操作系统:Linux x64 / Ubuntu 14.04 Apache Maven版本:3.3.9 建议预先搭建Java开发环境:详见上一篇<Linux Ubuntu系统下Java开发环境搭建 ...

  8. maven 安装 过程

    maven 安装 过程 1 下载: apache-maven-3.0.3-bin.zip 压缩包 2 将压缩包解压到需要安装的目录文件中. 比如解压到: Z:\zr_anzhungwenjian\ap ...

  9. 【Java】Maven安装、Eclipse配置以及相关错误解决集合

    作者呕血总结,下面写的每一个错误我都遇过 · Maven安装 · Eclipse配置 · Maven安装 安装前请确保已经装有JDK. 一. 准备Maven程序包 到官网https://maven.a ...

  10. Windows下Maven安装 + eclipse集成

    一.什么是maven? Maven是一个项目管理工具,能方便的帮我们下载jar包,告别传统手动导包的方式. 二.maven仓库 maven中有中央仓库,本地仓库,私服三个概念 1.中央仓库是maven ...

随机推荐

  1. C++实现二叉树的定义与操作

    头文件及常量定义 #include<stdio.h> #include<stdlib.h> #include<stdarg.h> #include<iostr ...

  2. C#的闭包捕获变量与英语中Nice to meet you的联系

    看标题有种"意大利面与42号混凝土"放在一起说的感觉,实际上,就是. 闭包捕获变量 我们都知道在C#里,闭包捕获的是变量,而不是变量值本身 每个Task在运行的时候,发现i的值是3 ...

  3. 在stm32中使用printf

    记录使用printf的方法 1.配置GPIO GPIO_InitTypeDef GPIO_InitStruct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA ...

  4. lg7335 [JRKSJ R1] 异或 题解

    本题的标签中含有trie,但是这道题可以不用trie做. 考虑列出本题的dp方程:设\(f_{k,i}\)表示前\(i\)个数选了\(k\)段的答案,\(s_i\)为数组的前缀异或和 当不选择第\(i ...

  5. 浏览器tab标签切换触发监听事件visibilitychange

    document.addEventListener('visibilitychange', function() { if(document.hidden){ //当页面切换或隐藏时触发的代码,可以用 ...

  6. linux 端口的相关命令

    查看某个端口是否开发 isof -i:端口 说明:如果有显示说明已经开放了,如果没有显示说明没有开放 开放端口之后,查看防火墙是否对端口开放 查询端口号80 是否开启: firewall-cmd -- ...

  7. VUE学习-组件

    组件 组件是可复用的 Vue 实例,且带有一个名字. <div id="components-demo"> <button-counter></but ...

  8. Installing Superset最新版本安装(笔记)

    官方文档:https://superset.apache.org/docs/installation/installing-superset-from-scratch 由于在centos上安装有各种问 ...

  9. Java面向对象之instanceof和类型转换

    instanceof instanceof(类型转换):利用此关键字可以判断某一个对象是否是指定类的实例 格式: 对象 instanceof 类 返回boolean型 - 如果某个对象是某个类的实例, ...

  10. python + unittest + request + parameterized 参数化遇到中文名称testcase不显示的问题

    最近使用python+unittest+request+parameterized做接口测试,然后在利用parameterized做参数化时,发现测试用例的中文名称,感觉很奇怪,于是跟踪了parame ...