Intellij IDEA在maven项目中添加外部Jar包运行
一. 问题概述
我们知道Intellij IDEA是非常好用的Java语言开发的集成环境。提供了非常多实用的功能,包括了智能代码助手、代码自动提示、代码重构、各种插件等,当然也集成了maven
正常情况下,我们创建maven项目时,相关的jar包会自动导入,当然我们也可以通过IDEA右侧的maven工具来实现jar包的加载。

但我们在实际开发过程中,可能会使用外部jar包的情况,如实现与第三方公司的系统对接时,需要使用到他公司提供的jar包,这个时候在maven中央仓库找不到,该如何导入呢?
首先未导入jar包时,代码中体现出找不到对应的程序包、类以及方法

二. 网上方案
在网上看到过一些解决方案,基本上提到的就是,打开项目结构(Project Structure),找到对应的Modules,然后右侧切换到Dependencies,点击“+”号添加“JARS or directories”,找到对应的jar包添加进来。
第一步:

第二步:


但经过我实际测试发现,代码中虽然不报错了,但通过tomcat启动,仍然报找不到对应class文件的错误。


引入了jar包siam-am-agent-simple-3.2.RELEASE.jar,代码也不再报错了,但项目启动后,仍然报ClassNotFoundException

三. 解决方案
经过我多次测试发现了解决方案
第一步,仍然打开项目结构(Project Structure)

第二步,在Libraries中将外部jar包添加进来


确定后,在Libraries中和对应的Module(此处为nuwa-application)的Dependencies中都可看到该jar包


这个时候就可以了吗,不,还不行,我们还需要在Artifacts中将刚才的jar包添加到发布的项目中

添加进来后是这样,和WEB-INF平行了,显然不行

我们需要将该jar包移到WEB-INF/lib文件jar中,直接拖动即可,到这里,我们将外部jar包添加到maven项目就完成了,代码不会报错,部署的时候也能正常运行。
Intellij IDEA在maven项目中添加外部Jar包运行的更多相关文章
- 关于如何正确地在android项目中添加第三方jar包
在android项目中添加第三方jar包虽然不是一个很复杂的问题,但是确实给很多开发者带来了不小的困扰.我自己就曾经碰到过calss not found exception.error inflati ...
- 在maven项目中解决第三方jar包依赖的问题
在maven项目中,对于那些在maven仓库中不存在的第三方jar,依赖解决通常有如下解决方法: 方法1:直接将jar包拷贝到项目指定目录下,然后在pom文件中指定依赖类型为system,如: < ...
- 关于在Andoird集成开发软件中添加外部jar包的方法
步骤必须是下面的两步,少一步都不行. 第一步是存放于项目中,第二步是导入和应用于项目中. 1.右键项目-Build Path-Configure Build Path-在Libraries目录下-点右 ...
- struts项目中添加的jar包
一般我们使用struts时,添加的jar如下: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar freemarker-2.3.16.jar java ...
- 将maven项目中依赖的jar包导出到指定的目录
<plugin> <artifactId>maven-dependency-plugin</artifactId> <configuration> &l ...
- Idea中maven项目中导入本地jar包
说一下正确的流程: 1.将jar包导入到本地maven库或者远程nexus仓库,再使用maven引用: 2.导入命令: //通过一下信息引入maven -DgroupId=com.test -Dart ...
- IntelliJ IDEA 把Maven项目导出可执行jar包
2017年04月05日 14:05:08 waterimelon 阅读数:1574 标签: intellij ideamaven 更多 个人分类: idea 第一步 第二步 第三步
- Maven项目中使用本地JAR包
<dependency> <groupId>com.TEST</groupId> <artifactId>hm-test</artifactId& ...
- Nexus-在项目中使用Maven私服,Deploy到私服、上传第三方jar包、在项目中使用私服jar包
场景 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...
随机推荐
- JavaScript数据结构——栈的实现与应用
在计算机编程中,栈是一种很常见的数据结构,它遵从后进先出(LIFO——Last In First Out)原则,新添加或待删除的元素保存在栈的同一端,称作栈顶,另一端称作栈底.在栈中,新元素总是靠近栈 ...
- kafka同步异步消费和消息的偏移量(四)
1. 消费者位置(consumer position) 因为kafka服务端不保存消息的状态,所以消费端需要自己去做很多事情.我们每次调用poll()方法他总是返回已经保存在生产者队列中还未被消费者消 ...
- android ——Intent
Intent是android程序中各组件之间进行交互的重要方式,它可以用于指明当前组件想要执行的动作,也可以在不同组件之间传递数据,Intent一般被用于启动活动,启动服务以及发送广播. 一.显式的使 ...
- struts的上传下载
文件上传 添加jar包 commons-io-1.3.2.jar commons-fileupload-1.2.1.jar 前台页面 form表单 method值为post 添加"encty ...
- 观书有感(摘自12期CSDN)
CSDN要闻 Visual Studio 将登陆Mac平台 在11月的Connect()上,微软正式发布了Visual Studio For Max预览版,这是微软这一编程工具首次进入苹果平台.Vis ...
- cookie session sessionStorage localStorage
什么是会话? 会话指的是浏览器与服务器之间的数据交互.所白了就是 浏览器和服务器进行的请求和响应. http协议是无状态的,多次请求之间没有关联性 cookie和session的作用?干啥的? 利用c ...
- 用python实现银行家算法
编制模拟银行家算法的程序,并以下面给出的例子验证所编写的程序的正确性. 进程 已占资源 最大需求数 资源种类 A B C D A B C D P0 0 0 1 2 0 0 1 2 P1 1 0 0 0 ...
- Flink 源码解析 —— 深度解析 Flink 序列化机制
Flink 序列化机制 https://t.zsxq.com/JaQfeMf 博客 1.Flink 从0到1学习 -- Apache Flink 介绍 2.Flink 从0到1学习 -- Mac 上搭 ...
- SpringBoot与Shiro整合权限管理实战
SpringBoot与Shiro整合权限管理实战 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] *观看本文章需要有一定SpringBoot整合经验* Shiro框架简介 Apach ...
- springCould:使用Feign 实现声明式服务调用
一.Spring Cloud Feign概念引入通过前面的随笔,我们了解如何通过Spring Cloud ribbon进行负责均衡,如何通过Spring Cloud Hystrix进行服务断路保护,两 ...