IDEA工程运行时总是报xx程序包不存在实际上包已导入(问题分析及解决方案)

IDEA工程运行时,总是报xx程序包不存在,实际上包已导入

先上截图

使用IDEA写Java工程时,使用Maven导入依赖包,程序写好后,代码没有报错,但是执行时就会报图中的错误。

如何解决?

网上找了很多解决方法,都没有解决问题。本人是使用IDEA的新手,也很少使用Maven,学习为主。该办法不一定能解决所有类似的问题,仅作参考。

  1. 删除工程目录下的 .iml 文件,删除之前可以看下文件内容;
  2. 打开命令行或者IDEA底部Terminal窗口,将目录调整到工程目录下,执行 mvn idea:module 重新生成 .iml 文件,重新生成之后再看下文件内容,是不是多了很多东西;
  3. IDEA菜单选择 Rebuild Project (可选操作);
  4. 执行程序,问题解决;

可能会报编译错误,我使用JDK为1.8版本,在pom.xml文件中添加如下代码

<build>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>maven-compiler-plugin
</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>

或者是打开setting,搜索Java Compiler ,更改Target bytecode version为1.8,保存即可。

疑问

  • 这种解决办法的原理是什么?
  • .iml 文件不能删除,但能不能隐藏,或者自动更新文件内容?

遇到新问题

写了一个简单的动态代理程序,需要导入cglib依赖包,非maven工程,直接导入jar包,执行时依然报程序包找不到


非maven工程使用mvn命令肯定是不行的,到目前都没有找到该问题的根本原因。就很郁闷,idea真难用。

新问题的解决办法(2020.6.30更新)

非Maven工程报错的原因找到了。因为该jar包是我之前从maven上下载的,再在工程中直接导入,结果就是报错。直接在网上下载一个jar包,不通过maven下载,导入工程,尝试运行了一下是可以用的。

总结

到此这篇关于IDEA工程运行时总是报xx程序包不存在实际上包已导入(问题分析及解决方案)的文章就介绍到这了,更多相关IDEA工程运行时报xx程序包不存在内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • IDEA2020.1启动SpringBoot项目出现java程序包:xxx不存在

    本地启动springboot项目一直报一个工具类的找不到,但是我看了好几次,那个类明明就在项目中,不知道为什么一启动项目就报错,,说这个包xxxx不存在,,弄了我一晚上没睡好觉,,整的我都快开始怀疑人生了,.我是谁?我在那?我还适合敲代码吗? Error:(3, 38) java: 程序包org.springframework.stereotype不存在 Error:(4, 47) java: 程序包org.springframework.web.bind.annotation不存在 Error

  • IDEA工程运行时总是报xx程序包不存在实际上包已导入(问题分析及解决方案)

    IDEA工程运行时,总是报xx程序包不存在,实际上包已导入 先上截图 使用IDEA写Java工程时,使用Maven导入依赖包,程序写好后,代码没有报错,但是执行时就会报图中的错误. 如何解决? 网上找了很多解决方法,都没有解决问题.本人是使用IDEA的新手,也很少使用Maven,学习为主.该办法不一定能解决所有类似的问题,仅作参考. 删除工程目录下的 .iml 文件,删除之前可以看下文件内容: 打开命令行或者IDEA底部Terminal窗口,将目录调整到工程目录下,执行 mvn idea:mod

  • Android Studio 运行时出现的警告信息解决办法

    Android Studio 运行时出现的警告信息解决办法 今天群友看到他说运行的时候报下面的错,我记得我之前导入百度地图也是遇到过,运行的时候一堆警告信息,然后编译失败等的,特别郁闷,其实后来在网上查了下,原来是很多第三方里面加个混淆,然后你有找不到那些方法或者匿名内部类,才导致此问题的发生 看到这一堆东西别慌 解决方案: 在您的proguard-rules.pro 中添加这两个混淆 然后重新编译应该是没问题的!希望能够帮助更多的童鞋走出这个坑! -keepattributes Enclosi

  • SpringBoot如何在运行时动态添加数据源

    此方案适用于解决springboot项目运行时动态添加数据源,非静态切换多数据源!!! 一.多数据源应用场景: 1.配置文件配置多数据源,如默认数据源:master,数据源1:salve1...,运行时动态切换已配置的数据源(master.salve1互相切换),无法在运行时动态添加配置文件中未配置的数据源. 2.配置一个默认数据源,运行时动态添加新数据源使用(本博客适用于此场景) 二.解决方案: Spring提供了AbstractRoutingDataSource用于动态路由数据源,第一种场景

  • matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析

    什么是运行时配置(Runtime Configuration,rc) Matplotlib使用matplotlibrc配置文件来自定义图形的各种属性,称之为rc配置或rc参数(rcParams).通过rc参数可以修改matplotlib绝大多数属性的默认值,包括窗体大小.每英寸的点数.线条宽度.颜色.样式.坐标轴.坐标和网络属性.文本.字体等. 运行时配置的默认值 运行时配置的默认值存放在默认的matplotlibrc文件中. matplotlibrc文件与rcParams的关系 rcParam

  • Javaweb工程运行报错HTTP Status 404解决办法

    最近在学习jsp和servlet,避免不了的要和tomcat打交道,但tomcat经常会出现各式各样的错误,下面是我总结的一些常见的解决方法,希望对大家有用. 1.未部署Web应用 2.URL输入错误 排错方法:首先,查看URL的IP地址和端口号是否书写正确.              其次,查看上下文路径是否正确 Project--------Properties------MyElipse-----Web-----Web Context-root检查这个路径名称是否书写正确.       

  • Android 在程序运行时申请权限的实例讲解

    这里我们以拨打电话申请权限来写个小例子,也就是CALL_PHONE,因为拨打电话会涉及用户手机的资费问题,因而被列为了危险权限,在Android6.0系统出现之前,拨打电话功能的实现其实非常简单,修改activity_mainxml中的代码,如下: <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android=&qu

  • 执行Python程序时模块报错问题

    1. 在执行python程序时遇到 'ModuleNotFoundError: No module named 'xxxxx'' : 例如: 图片中以导入第三方的 'requests' 模块为例,此报错提示找不到requests模块.在python中,有的 模块是内置的(直接导入就能使用)有的模块是第三方的,则需要安装完成后才能导入使用,若未 安装直接导入使用就会出现上述报错!这里介绍最快的解决方法: 1)通过 pip (python软件包工具) 来安装所需要使用的第三方模块: 打开cmd输入

  • java程序运行时内存分配详解

    一. 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个或者多个线程,每一个Java进程对应唯一一个JVM实例,每一个JVM实例唯一对应一个堆,每一个线程有一个自己私有的栈.进程所创建的所有类的实例(也就是对象)或数组(指的是数组的本身,不是引用)都放在堆中,并由该进程所有的线程共享.Java中分配堆内存是自动初始化的,即为一个对象分配内存的时候,会初始化这个对象中变量.虽然Java中所有对象的存储空间都是在堆中分配的,但是这个对象的引用却是在栈中分配,也就是说

  • Linux程序运行时加载动态库失败的解决方法

    Linux下不能加载动态库问题 当出现下边异常情况 ./test: error while loading shared libraries: libmfs_open.so: cannot open shared object file: No such file or directory 若动态库的路径在(/usr/cluster/.share/lib) 解决办法: 方法一.在/etc/ld.so.conf文件中添加路径,vi /etc/ld.so.conf 添加下边内容 include ld

  • hadoop运行java程序(jar包)并运行时动态指定参数

    1)首先启动hadoop2个进程,进入hadoop/sbin目录下,依次启动如下命令 [root@node02 sbin]# pwd /usr/server/hadoop/hadoop-2.7.0/sbin sh start-dfs.sh sh start-yarn.sh jps 2)通过jps查看是否正确启动,确保启动如下6个程序 [root@node02 sbin]# jps 10096 DataNode 6952 NodeManager 9962 NameNode 10269 Second

随机推荐