天天看点

Maven-打外部jar包

一共三个方法,每一个方法我都用过,最推荐方法3,因为前两个总特么的莫名其妙的报错,方法3贼J8好用
方法一
1.执行命令如下,目的是把jar包打进本地仓库
mvn install:install-file -Dfile=你的jar包.jar -DgroupId=自定义的groupId(例如com.aa.bb) -DartifactId=自定义的artifactId(例如core) -Dversion=版本号(例如1.0) -Dpackaging=jar
2.在POM文件里写
<dependency>
            <groupId>com.aa.bb</groupId>
            <artifactId>core</artifactId>
            <version>1.0</version>
</dependency>
3.这个时候maven打包的package命令就可以把外部jar打进我们想要的war或者jar里了,但是我用eclipse的时候,pom文件会报错,但是并不影响什么,我也不清楚为什么,还望爱心人士给予解答
方法二
1.我们假设在项目中自己新建了一个文件夹叫libs
2.在pom文件的<build></build>标签下加上
<resources>
    <resource>
        <directory>libs</directory>
        //注意这里,我用的是springboot,所以是boot-inf
        <targetPath>BOOT-INF/lib/</targetPath>
        <includes>
            <include>**/*.jar</include>
        </includes>
    </resource>
</resources>
3.在pom文件的<plugins><plugins>标签下加上
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    //这个version其实没什么用说实话,可以不加
    <version>3.5.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArguments>
            <extdirs>${project.basedir}/libs</extdirs>
        </compilerArguments>
    </configuration>
</plugin>
4.在<dependencies></dependencies>下写
<dependency>
    <groupId>随便写什么都行</groupId>
    <artifactId>随便写什么都行</artifactId>
    <version>1.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/libs/你的jar名.jar</systemPath>
</dependency>
方法三:
假如我们想在自己的pom文件中
<dependency> 
            <groupId>com.aa.bb</groupId>
            <artifactId>cc</artifactId>
            <version>1.0.1</version>
</dependency>
这样引用自己的cc.jar包,那么我们分如下几步骤
1.找到maven根目录(不是maven安装的目录),是c盘有个.m2的目录,我的是C:\Users\shiwentian\.m2\repository\目录,然后在repository目录下建立一个叫com的文件夹,在com文件夹下建立叫aa的文件夹,在aa文件夹下建立bb文件夹,在bb文件夹下建立一个叫cc的文件夹,在cc下建立一个叫1.0.1的文件夹(注意版本,重要)
2.将cc.jar包改名,改成cc-1.0.1.jar,然后复制到1.0.1文件夹中
3.在1.0.1文件夹中创建一个cc-1.0.1.pom文件,文件里只写
<project>
  <modelVersion>4.0.0</modelVersion>//我写的是4,别的好像也行
  <groupId>com.aa.bb</groupId>
  <artifactId>cc</artifactId>
  <packaging>jar</packaging>
  <version>1.0.1</version>
</project>
4.eclipse maven update project即可