zoukankan      html  css  js  c++  java
  • IDEA 在Maven项目中,出现“找不到或无法加载主类”的问题

    IDEA在使用maven时可能会出现找不到类的情况,

    这边直接说结论:maven dependcy scope为 provided时,继承外部依赖的抽象类,如 class Udf1 extend UDF {}

    此时加载外部类会出问题,但并不是报ClassNotFound,而是此阶段在类初始化早期,

    而scope 为provided,也即在project structure 的dependencies 中,被标记为provied的包,在运行时不会有classpath,

    这就导致类加载时链接外部类失败,但是控制台只会简单报出“找不到或无法加载”。

    (下图为印证自己想法后去掉了provided,重新sync后的结果)

    如果scope 为provided ,则在classpath中不会包含该项的jar包。

     

    当然你可能会注意到奇怪的现象,就是,此时在test文件夹中的类是不会受影响的。

    这也是maven scope的定义之一。

  • 相关阅读:
    [Luogu]小Z的AK计划
    [POI2006]OKR-Periods of Words
    [NOI2014]动物园
    [NOI2009]管道取珠
    [IOI2005]河流
    [国家集训队]Crash的文明世界
    [HDU5382]GCD?LCM!
    [AGC027E]ABBreviate
    [CF]Round510
    [NOIp2005]篝火晚会
  • 原文地址:https://www.cnblogs.com/easy-tech/p/13540509.html
Copyright © 2011-2022 走看看