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. (八) Mysql 脑图总结

  2. Visual Studio Code C / C++ 语言环境配置的历程

    前言 从大一开始学习c++用的dev-c++,后来看到老师用的是vs  code,实在是馋它的颜值便去下了vs  2017.至于为什么下载vs 2017呢?是因为下载的时候我以为他们是一样的,便下了v ...

  3. loj2511

    引言 思维题. 这个做法跑得飞快,还不用 dp,也不是爆搜! 复杂度(可能)为 \(O(s^2t)\) 或 \(O(s^2)\),实际效率也是飞快. 不过这题我直接提交答案了. 思路 考虑 \(A=m ...

  4. sql_server数据库

    问题:如何在SQL SERVER中合并时间和日期? 解决方法1:使用+合并时间日期让我们运行以下命令:SELECT CAST(字段名 AS DATETIME) + CAST(字段名 AS DATETI ...

  5. 重写父类的ToString

    我们任何对象调用ToString的时候,打出来的都是这个类的命名空间的名字 using System; using System.Collections.Generic; using System.L ...

  6. python发送钉钉消息通用脚本

    1.使用shell生成需要发送的内容. 2.调用该脚本发送文本内容python3,其中的文件 /wj/sbjk,需要改成直接需要发送的文件. [root@manager dingding]# more ...

  7. 如何写出不可维护的Vue代码

    前言 不止一次接手过复杂业务功能模块,开端总是深陷其中难以自拔,无数个深夜抚摸着头皮在内心暗暗咒骂. 相信你也有过类似的经历,面对复杂的业务逻辑,看代码俩小时,写代码五分钟,没有点胆识和谋略都不敢下手 ...

  8. oracle 行转列,动态年份,月份列。已解决!

    -----------------存储过程包体----------- procedure GetComparativeAnalysisTB(p_StartTime varchar2, ----开始时间 ...

  9. Centos7忘记root密码,修改root密码及其他用户密码

    具体步骤: 1.重启系统,在开机过程中,快速按下方向键↑和↓.在引导程序页面暂停. 2.选择第一行(背景高亮即为选中),按下键盘上的e,进入编辑模式 3.将光标一直移动到 LANG=en_US.UTF ...

  10. 【SSO单点系列】(9):CAS4.0 之客户端排除不需要过滤的路径

    客户端排除不需要过滤的路径 Web.xml <filter> <filter-name>CASFilter</filter-name> <filter-cla ...