大数据学习20:Maven 理解 和 spark、hadoop、hive编译

来源:互联网 发布:淘宝客服怎么做流程 编辑:程序博客网 时间:2024/06/01 13:26
一、Maven的一些含义:
groupId定义了项目属于哪个组,这个组往往和项目所在的组织或公司存在关联。
譬如你在googlecode上建立了一个名为myapp的项目,那么groupId就应该是com.googlecode.myapp,
如果你的公司是mycom,有一个项目为myapp,那么groupId就应该是com.mycom.myapp


artifactId定义了当前Maven项目在组中唯一的ID
version指定了Hello World项目当前的版本——1.0-SNAPSHOT。
SNAPSHOT意为快照,说明该项目还处于开发中,是不稳定的版本


二、使用maven命令编译、测试、打包、运行
Maven最主要的命令:mvn clean compile、mvn clean test、mvn clean package、mvn clean install。
执行test之前是会先执行compile的,执行package之前是会先执行test的,而类似地,install之前会执行package。


生成清除Eclipse项目结构:
mvn eclipse:eclipse
mvn eclipse:clean


清理(删除target目录下编译内容):
mvn clean


仅打包Web页面文件:
mvn war:exploded


打包时跳过测试:
mvn package -Dmaven.test.skip=ture


跳过测试运行maven任务:    
mvn -Dmaven.test.skip=true XXX


!!!几个编译的例子:
--编译 hadoop
mvn clean package -Pdist,native -DskipTests -Dtar


--编译spark
mvn -Pyarn -Phadoop-2.6 -Dhadoop.version=2.6.0-cdh5.7.0 -Phive -Phive-thriftserver -DskipTests clean package
PS:
另外用其他的方式去编译spark
./dev/make-distribution.sh \
--name 2.6.0-cdh5.7.0 \
--tgz \
-Phadoop-2.6 \
-Dhadoop.version=2.6.0-cdh5.7.0 \
-Phive -Phive-thriftserver -Pyarn


--编译hive
mvn clean package -DskipTests -Phadoop-2 -Pdist 


-P,--activate-profiles <arg>   Comma-delimited list of profiles to activate  
主要涉及profiles配置文件,指定使用相应的profiles,也就是说在<profiles>指定的<id>中,可以通过-P进行传递或者赋值。
例:
如果你的pom.xml如下:
  <profiles>
      <profile>
          <id>test</id>
          ...
      </profile>
   </profiles>
执行mvn test -Ptest为触发配置文件。
或者
<profile>
   <id>test</id>
   <activation>
      <property>
         <name>env</name>
         <value>test</value>
      </property>
   </activation>
   ...
</profile>


-D,--define <arg>    Define a system property   
主要涉及propertites属性,将参数传入到对应的properties里面
要发送多个变量,请使用多个空格分隔符加-D:
例子:mvn -DpropA=valueA -DpropB=valueB -DpropC=valueC clean package
如果你的pom.xml如下:
<properties>
    <theme>myDefaultTheme</theme>
</properties>
那么在这个执行过程中mvn -Dtheme=halloween clean package会覆盖theme的值,具有如下效果:
<properties>
    <theme>halloween</theme>
</properties>


参考文档:
http://blog.csdn.net/wangjunjun2008/article/details/18982089
http://blog.csdn.net/yy193728/article/details/72847122
阅读全文
0 0
原创粉丝点击