zoukankan      html  css  js  c++  java
  • Mapreduce部署与第三方依赖包管理

    参考了几篇文章,总算搞定打包第三方jar了,记录一下

    https://segmentfault.com/a/1190000016237395

    https://www.cnblogs.com/Dhouse/p/6595344.html

    https://yq.aliyun.com/articles/308777

    https://blog.csdn.net/u013177446/article/details/54134583

    pom.xml加入maven-assembly-plugin

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
    	                <artifactId>maven-assembly-plugin</artifactId>
    	                <configuration>
    <!-- 	                    <descriptorRefs> -->
    <!-- 	                        <descriptorRef>jar-with-dependencies</descriptorRef> -->
    <!-- 	                    </descriptorRefs> -->
    	                    <descriptors>
                                <descriptor>src/assembly.xml</descriptor>
                            </descriptors>
    	                </configuration>
    	                <executions>
    		                <execution>
    		                    <id>make-assembly</id>
    		                    <phase>package</phase>
    		                    <goals>
    		                        <goal>single</goal>
    		                    </goals>
    		                </execution>
    		            </executions>
    	            </plugin>
    

    src/assembly.xml指定需要打包哪些第三方包

    <?xml version="1.0" encoding="UTF-8"?>
    <assembly>
        <id>cascading</id>
        <formats>
            <format>jar</format>
        </formats>
        <includeBaseDirectory>false</includeBaseDirectory>
        <dependencySets>
            <dependencySet>
    <!--             默认为添加为.class,指定为false,则以jar包的方式导入 -->
                <unpack>false</unpack>
                <scope>runtime</scope>
                <!--
                <excludes>
                    <exclude>org.apache.hadoop:*</exclude>
                </excludes>
                -->
                <!-- very small jar -->
    <!--             指定路径,放到lib目录下 -->
                <outputDirectory>lib</outputDirectory>
                <includes>
                    <include>fastjson:*</include>
                </includes>
            </dependencySet>
        </dependencySets>
        <fileSets>
            <fileSet>
                <directory>${project.build.outputDirectory}</directory>
                <outputDirectory>/</outputDirectory>
            </fileSet>
        </fileSets>
    </assembly>
    

    打包

    mvn assembly:assembly -Dmaven.test.skip=true

    生成的jar包中,第三方jar包fastjson放在lib目录下。直接上传生成的jar到hadoop,可以直接运行

  • 相关阅读:
    常见HTTP状态码
    Spring MVC 原理小结
    RESTful API
    java:IO流学习小结
    理解 Statement 和 PreparedStatement
    Hibernate缓存原理与策略
    APP运营
    网站常见术语
    php常见术语
    运维------术语名词
  • 原文地址:https://www.cnblogs.com/jerryzh/p/11137927.html
Copyright © 2011-2022 走看看