• maven加载本地jar


    【问题描述】

        由于对接公司外部产品,导致公司内网上的maven库中并不存在对应的SDK jar,因此,需要通过maven加载本地jar的方式来实现工程编译。

    【方法】

    方法很简单,

    1、在resources下边键lib文件夹,将对应的jar放在该位置

    2、在pom文件中添加对应依赖即可。scope定义为system,然后通过systemPath指定对应的jar路径。

        <dependencies>
            <dependency>
            <groupId>scylla</groupId>
            <artifactId>scylla</artifactId>
            <version>1.0.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/main/resources/lib/xxxx.jar</systemPath>
        </dependency>
    

    3、另外,需要增加如下配置

        <build>
            <resources>
           <!-- 这里将配置文件在编译时,拷贝到编译后的路径下 --> <resource> <directory>src/main/resources/</directory> <excludes> <exclude>**/xxx.jar</exclude> </excludes> </resource> <!-- 这里是为了将需要的jar拷贝到编译后的目录下 --> <resource> <targetPath>../../WebContent/WEB-INF/lib/</targetPath> <directory>src/main/resources/lib/</directory> <includes> <include>**/xxxx.jar</include> </includes> </resource> </resources> </build>

    另外,学习了scope的几种参数

    * compile,缺省值,适用于所有阶段,会随着项目一起发布。 
    * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 
    * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 
    * test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 
    * system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。

    参考博文:https://www.cnblogs.com/hzzll/p/6738955.html

  • 相关阅读:
    base64编码
    URL编码和解码
    Android MineType
    Gzip压缩
    关于文件与文件系统的压缩与打包命令-Linux(笔记)
    tesseract的编译安装
    HDOJ How many ways?? 2157【矩阵高速幂】
    [ACM] POJ 3253 Fence Repair (Huffman树思想,优先队列)
    6.非关系型数据库(Nosql)之mongodb:集群(主从复制)
    androidproject有红色叹号的解决方式
  • 原文地址:https://www.cnblogs.com/woniu4/p/10581924.html
Copyright © 2020-2023  润新知