maven仓库找不到需要的jar包解决办法

有时候我们需要使用的jar包maven仓库没有时,我们会使用其他办法添加jar包或有时候我们可能需要在项目中使用自己开发的包,如果你用的是中央库地址,库中肯定是没有的;一般我们会用自己搭建的maven私服地址,在上传到私服前,我们需要对包进行测试,那么需要临时加到lib目录下,测试成功后再加到私服库中。

1.maven 使用本地包 lib jar包 依赖一个lib目录

有些项目的jar包不是在maven服务器上能够下载的,那么需要将这样的包放在项目的lib目录下,

  不过这样会导致maven打包时找不到包,报错。可以通过下面的配置解决这个问题

配置步骤:

  1. 在WEB-INF下新建lib目录并加入自己的包。
    (截图上传不了)
  2. 右键项目 -> Build Path -> Configure Build Paht…

  3. Libraries > New Project Library > … > Attach Jar Directories选择lib目录的jar,确定。

  4. 配置pom.xml文件

<build> 
        <plugins> 
            <plugin> 
              <artifactId>maven-compiler-pluginartifactId> 
              <configuration> 
                  <source>1.6source> 
                  <target>1.6target> 
                  <encoding>UTF-8encoding> 
                  <compilerArguments> 
                   <extdirs>src\main\webapp\WEB-INF\libextdirs> 
                 compilerArguments> 
              configuration> 
            plugin> 
        plugins> 
    build>

2.把某个单独jar包加入maven寻找的路径(非整个lib目录)

比如:

<dependency>
    <groupId>org.swinglabsgroupId>
    <artifactId>swingxartifactId>
    <version>0.9.2version>
    <scope>systemscope>
    <systemPath>${project.basedir}/lib/swingx-0.9.3.jarsystemPath>
dependency>
这种的不好处是,只能加入某个jar包而不是某个目录。

3.把jar包安装入本地仓库

注意: 正规maven的方法,要求jar包中有合法的 artifactId信息

  • 先安装jar包到本地仓库

  • 引用安装的jar包

  • 批量小工具,批量安装jar包到本地仓库–(参考)工具

<repository>
    <id>repoid>
    <releases>
        <enabled>trueenabled>
        <checksumPolicy>ignorechecksumPolicy>
    releases>
    <snapshots>
        <enabled>falseenabled>
    snapshots>
    <url>file://${project.basedir}/repourl>
repository>

你可能感兴趣的:(maven)