新建的Maven项目,在build的时候总是打包失败,提示少Jar包,如下:
[INFO] ------------------------------------------------------------------------ [INFO] Building data 1.0.0-RELEASE [INFO] ------------------------------------------------------------------------ [WARNING] The POM for com.oracle:ojdbc6:jar:11.2.0.4 is missing, no dependency information available [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.372 s [INFO] Finished at: 2017-02-24T15:40:39+08:00 [INFO] Final Memory: 9M/150M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal on project data: Could not resolve dependencies for project com.chinatelecom.ecs:data:jar:1.0.0-RELEASE: Failure to find com.oracle:ojdbc6:jar:11.2.0.4 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
主要原因还是找不到相应的Jar包,去https://repo.maven.apache.org/maven2仓库中没有找到包
再去本地仓库中看了有相应的Jar,重新配置Maven,还是有问题,最后终于找出问题所在,如下图:
一般情况下,当我们选择好GlobalSettings的路径时,下面的User Settings会自动定位到用户目录下,所以就没有去管用户的配置文件是否有问题了。打开.m2文件夹,发现不但没有 setting.xml,而且仓库里面还没有jar包,这就有问题了。故我们应该将Settings.xml文件复制到用户目录下,然后修改该文件,在用户范围定制Maven的行为。
这两个路径有什么区别?
第一个路径是全局的,对于本台机器上的所有用户都会受到影响,后者是用户范围的只有当前用户才会受到该配置的影响。推荐使用用户范围的settings.xml,一方面是为了避免无意识的影响系统中其他用户,另一方面是便于Maven升级。
默认情况下 .m2文件夹放置了Maven本地仓库,所有的Maven构件都被存储到该仓库中,以方便重用。默认情况下,该文件夹目录下除了repository仓库之外就没有其他目录和文件了,不过大多数Maven用户需要复制 M2_HOME/conf/settings.xml 文件到 .m2 文件夹下,或者是把路径改为当前的 setting.xml 文件的路径。我这里是将User Settings设置和Global Settings一样了
总结:
碰上这样的问题,一定不要急着往下走,停下来,多问几个为什么。多查一下相关资料,有些知识是必备的,有些知识是扩展的,那么现在的就属于必备的了,就要多了解了解。
未经允许请勿转载:程序喵 » Maven Build--缺少Jar包