开发者

Maven使用pom.xml引入自定义jar包方式

开发者 https://www.devze.com 2024-08-15 10:37 出处:网络 作者: KAI丶
目录Maven使用pom.XML引入自定义jar包maven打jar包 本地包pom引入的2种方式第一种第二种总结Maven使用pom.xml引入自定义jar包
目录
  • Maven使用pom.XML引入自定义jar包
  • maven打jar包 本地包pom引入的2种方式
    • 第一种
    • 第二种
  • 总结

    Maven使用pom.xml引入自定义jar包

    这里我以这个jar包为例,aliyun-Java-sdk-core-3.2.3.jar ,这是我在做手机短信服务用到的jar包

    ①进入C盘下的maven仓库C:\Users\用户\.m2\repository

    创建一个文件夹aliyun-java-sdk-core,进入,再创建一个相同名字的文件夹

    ②进入,创建一个名字为3.2.3(jar包版本号)的文件夹

    ③在目录下将自定义的jar包copy过来,新建一个同名的.pom文件

    Maven使用pom.xml引入自定义jar包方式

    在.pom中这样写

    <project>   
      <modelVersion>1.0.0</modelVersion>   
      <groupId>aliyun-java-sdk-core</groupId>   
      <artifactId>aliyun-java-sdk-core</artifactId>   
      <version>3.2.3</version>   
    </project>

    ④最后在项目的pom.xml中这样引入jar包就OK了

    	<!-- 阿里短信服务jar/ -->
    		<dependency>
    			<groupId>aliyun-java-sdk-core</groupId>
    			<artifactId>aliyun-java-sdk-core</artifactId>
    			<version>3.2.3</version>
    		</dependency>

    maven打jar包 本地包pom引入的2种方式

    项目中有些jar包是第三方的,maven官方仓库没有,

    需要使用mvn install命令打包到android本地,然后将其写入到pom.xml的依赖中,

    maven仓库有的jar包则从maven官网找到对应版本的depdency写入pom文件里面,这样maven打包就可以包含第三方jar包了,否则maven只会打包pom文件里面的,不会包括第三方jar包,程序运行将报错。

    这里推荐2种打包第三方jar包的方式:

    第一种

    打包第三方jar包到本地仓库,然后在pom.xml中引入

    例如:将alipay-sdk-abc.jar 打包到本地仓库

    • mvn命令:
    mvn install:install-file -Dfile=‪第三方jar路径 -DgroupId=包名 -DartifactId=jar名 -Dversion=版本 -Dpackaging=类型
    • 案例:
    mvn instalhttp://www.devze.coml:install-file -Dfile=‪G:\thirdpartyjar\alipay-sdk-abc.jar -DgroupId=com.thirdparty -DartifactId=alipay-sdk-abc -Dversion=3.1.0.8 -Dpackaging=jar
    • pom.xml配置:
    <dependency>
        <groupId>com.thirdparty</groupId>
        <artifactId>alipay-sdk-abc</artifactId>
        <version>3.1.0.8</version>
    </depehttp://www.devze.comndency>

    第二种

    通过在pom.xml中指定第三方jar包http://www.devze.com路径来引入依赖

    比如第三方jar包在lib文件夹下,对pom.xml的配置如下:

    标签里面引入第三方jar包的依赖

    • pom.basedir指的是pom文件所在的目录,
    • systemPath指的是第三方jar包所在路径。

    如:

    <dependency>
            <groupId>com.abc</groupId>
            <artifactId>cryptokit</artifactId>
            <version>1.0</version>
            <scope>system</scope>
            <systemPath>${pom.basedir}/lib/cryptokit-1.0.jar</systemPath>
     </dependency>

    ${pom.basedir} 对应的是当前项目的目录所在

    总结

    以上为个人经验,希望能给大家一个参考,也android希望大家多多支持编程客栈(www.devze.com)。

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号