zoukankan      html  css  js  c++  java
  • 将jar文件加到maven的local repository中

    可参考:http://www.cnblogs.com/davenkin/archive/2012/02/15/install-jar-into-maven-local-repository.html  

      对于Maven项目来说,日常使用的多数第三方java库文件都可以从Maven的Central Repository中自动下载,但是如果我们需要的jar文件不在Central Repository中,那么我们就需要手动将自己下载的jar文件加入到Maven的local reposotory中了,此时我们需要向Maven提供用于识别jar文件(可能多个)的groupId, artifactId和version等信息。

      1. 进入maven 的local repository下

        a. 打开终端,查看maven安装信息:brew info maven

        b. 进入maven本地目录下:cd ~/.m2 (Linux/Mac中maven本地路径)

        c. 进入repository文件夹下: cd  repository

        d. 编译打包baseApp.jar, 路径path=/Users/sarah/Desktop/MR-base/target/baseApp.jar

        d. 提供用于识别jar文件的groupId, artifactId, version和packaging信息,就可以将jar文件加到maven的local repository中:

          mvn install:install-file -Dfile=path -DgroupId=com.aliyun.eleme -DartifactId=baseApp -Dversion=1.0 -Dpackaging=jar 

      2. 现在,我们的baseApp.jar便可以被其它Maven项目所使用了,为此创建一个Maven工程:

         mvn archetype:generate-DgroupId=com.aliyun.eleme.demo -DartifactId=baseApp-demo -DarchetypeArtifactId=maven-archetype-quickstart -Dversion=1.0

      3. 删除baseApp-demo目录下已有的App.java, 并创建自己的Main.java文件

        rm src/main/java/com/aliyun/eleme/demo/App.java

        touch src/main/java/com/aliyun/eleme/demo/Main.java

      4. Main.java文件可以引用该jar文件了

        package com.aliyun.eleme.demo

        import com.aliyun.eleme.baseApp

      5. 最后一步,修改pom.xml文件加以对baseApp类的依赖 (绿色部分为添加baseApp类的依赖,红色部分执行步骤一致)  

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.eleme.matrix</groupId>
    <artifactId>qa</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>

    <dependency>
    <groupId>com.aliyun.eleme</groupId>
    <artifactId>baseApp</artifactId>
    <version>1.0</version>
    </dependency>

    <dependency>
    <groupId>com.aliyun.eleme</groupId>
    <artifactId>hadoop</artifactId>
    <version>1.0</version>
    </dependency>

    <dependency>
    <groupId>com.aliyun.eleme</groupId>
    <artifactId>hive</artifactId>
    <version>1.0</version>
    </dependency>

    <dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>6.9.9</version>
    <scope>test</scope>
    </dependency>

    </dependencies>

    <build>
    <finalName>QA</finalName>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4</version>
    <configuration>
    <descriptorRefs>
    <descriptorRef>jar-with-dependencies</descriptorRef>
    </descriptorRefs>
    <encoding>UTF-8</encoding>
    <archive>
    <manifest>
    <addClasspath>true</addClasspath>
    <mainClass>com.eleme.matrix.App</mainClass>
    </manifest>
    </archive>
    </configuration>
    <executions>
    <execution>
    <id>make-assembly</id>
    <phase>package</phase>
    <goals>
    <goal>single</goal>
    </goals>
    </execution>
    </executions>
    </plugin>
    </plugins>
    </build>


    </project>
  • 相关阅读:
    Vue vue-resource三种请求数据方式pet,post,jsonp
    Vue 各个阶段生命周期函数
    Vue v-if和v-show的使用.区别
    vue v-for循环中key属性的使用
    vue v-for循环使用
    Vue 设置style属性
    Vue 设置class样式
    Vue 双向数据绑定v-model
    Vue的事件修饰符
    关于“svn: Can't connect to host '*.*.*.*': 由于连接方在一段时间后没有正确答复或连接”的解决方法
  • 原文地址:https://www.cnblogs.com/sunshine2016/p/5949311.html
Copyright © 2011-2022 走看看