• eclipse中(装了插件m2eclipse后的)导入maven工程显示"感叹号"


     

     

           有时候导入一些开源工程(maven结构的),在eclipse中(装了插件m2eclipse后的)该工程前面
    会有一个小的红色感叹号,但点开工程后没有发现有打小红叉的内容,这种情况其实大部分是
    jar包依赖出来问题造成编译不能通过,如果有耐性可以在src里挨个点击代码打开,运气好的话
    就会发现有报错内容(import 包名 not resloved),找到对应的jar包在maven dependencies下
    点击相关jar包发现无法打开(正常加载的jar是可以展开目录结构的)。如果怕查找src麻烦,
    也可以直接在maven dependencies下挨个点击,看哪个jar不能正常展开目录,说明就是这个jar
    在maven下载或加载的时候出了问题,导致src下报错,进而使整个工程出现“红色感叹号”。

    解决办法:
    这种问题基本上是由于maven3和maven2的一些资源库下载到本地的jar和其他文件不同造成的,
    如果是在maven3下报错,则在eclipse中将maven的bin等相关配置改为maven2,然后重新update
    maven工程,如果不报错,则把下载后对应之前报错的jar包等所有相关内容拷贝覆盖掉maven3
    的resposity里,然后在将eclipse中的maven改成3版本的,重新update后即可。

    举例:MetaQ(全称Metamorphosis)的工程导入既是如此,直接用maven3时,其子模块server,
    server-wrapper,tools工程都报“红色小感叹号”,但是里面的src没有报“红叉叉”,按照
    上面的排查方式发现是quartz和aviator的包加载不上,随后换成maven2后能够正常编译加载了,
    然后将maven2的resposity里的这两个包的内容覆盖掉maven3里的,再把eclipse里的maven
    改成maven3后update即可。

    解决办法之一:

    Maven -> Update Project...

  • 相关阅读:
    转载:.NET Web开发技术简单整理
    我眼中的Java架构师
    使用命令行写一个 Java Servlet
    不用注入方式使用Spring管理的对象中的方法,神奇
    部署java项目日志乱码求解!!!
    Java后台解决跨域问题
    发送ajax请求时候注意的问题
    简单的调用阿里云的短信接口
    jmeter测试
    springboot集成mongo
  • 原文地址:https://www.cnblogs.com/wenlj/p/4820189.html
Copyright © 2020-2023  润新知