build path功能详解 在项目上右键》Build path》Config build path
https://www.cnblogs.com/liaojie970/p/5391044.html
java基础–Jar包添加到build path方式说明–01
https://www.cnblogs.com/wuyifu/p/3592995.html
MyEclipse中分别通过buildpath和lib导入jar包的区别
第一篇博文 纪念一下 我这个记性实在不好 所以以后会把学习中遇到的问题和解决的办法记在这里 聚沙成塔 积水成渊吧
这个问题早就发现了 但今天想搞清楚是为什么
今天写一个小项目 通过buildpath导入MySQL的驱动jar包 结果编译没问题 运行出错 (而且在.classpath文件里面是有我引入jar包的路径的)
java.lang.ClassNotFoundException:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1116)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:809)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
at org.apache.coyote.http11.Http11AprProtocolHttp11ConnectionHandler.process(Http11AprProtocol.java:579)atorg.apache.tomcat.util.net.AprEndpointHttp11ConnectionHandler.process(Http11AprProtocol.java:579) at org.apache.tomcat.util.net.AprEndpointHttp11ConnectionHandler.process(Http11AprProtocol.java:579)atorg.apache.tomcat.util.net.AprEndpointWorker.run(AprEndpoint.java:1665)
at java.lang.Thread.run(Thread.java:662)
然后又把JAR包复制到了WEBROOT 里面的 lib目录下 结果可以了
但如果只把JAR包放在lib文件夹下 那我用到的jar的代码 直接就会没法通过编译(找不到包)
就是说 二者缺一不可 这是为什么呢?这两种方式究竟有什么区别?
在网上找了一下 也没发现原因 比较权威的说法是这两种导入没什么区别 很奇怪 搞到三点我就去睡了
今天起来 跟群里的人讨教这个问题 然后无意间想起了 我部署TOMCAT用的是修改server.xml文件这个方法 不是用MyEclipse的自动部署 也就是我在server.xml文件里面加上 path 和docBase
比如 这样在浏览器里敲localhost:8080/vote 就相当于直接访问我docBase所指定的路径
而MyEclipse自动部署的时候 会把工程复制到tomcat的webapps目录下面 同时会把用buildpath引入的jar包 自动放在lib里面
所以如果用MyEclipse部署tomcat的话 这两种导入JAR包的方式是没区别的 但我这种部署的方法 他不会自动把jar包复制到lib下面 所以就出现了这个问题
现在想想 对于我这种方法来说 buildpath的引入能保证写代码的时候不会出编译问题 但是由于tomcat运行是会在他的lib目录下面找相应的JAR包 所以运行的时候会出classnotfoundexcption
build path功能详解 在项目上右键》Build path》Config build path相关推荐
- 史上最全Android build.gradle配置详解
Android Studio是采用gradle来构建项目的,gradle是基于groovy语言的,如果只是用它构建普通Android项目的话,是可以不去学groovy的.当我们创建一个Android项 ...
- 【毕设项目】新闻推荐平台功能详解----新闻推荐系统
系列目录 基于Python网络爬虫与推荐算法新闻推荐平台 新闻推荐平台功能详解----新闻爬虫 新闻推荐平台功能详解----数据分析系统 文章目录 系列目录 功能介绍 一.结构 二.具体实现 1.标签 ...
- iOS之UI--使用SWRevealViewController实现侧边菜单功能详解实例
使用SWRevealViewController实现侧边菜单功能详解 下面通过两种方法详解SWRevealViewController实现侧边菜单功能: 1.使用StoryBoard实现 2.纯代码实 ...
- Android build.gradle文件详解(转述自《Android第一行代码》第二版)
Android build.gradle文件详解 1. 最外层目录下的build.gradle文件 1.1 repostories 1.2 dependencies 2. app目录下的build.g ...
- Git详解之四 服务器上的Git
Git详解之四 服务器上的Git 服务器上的 Git 到目前为止,你应该已经学会了使用 Git来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git仓库.尽管技术上可以从个人的仓库里推送和拉 ...
- UWA Pipeline 功能详解|如何快速创建UWA服务
今天为大家详细介绍的是如何在一条UWA Pipeline内快速创建UWA服务,包括自动化测试.GOT Online测试.真人真机测试.本地资源检测服务,让UWA性能保障体系无缝融入到项目工业化之中,进 ...
- KBQA_多轮对话——模型源码解析(一)Pickle模块功能详解
KBQA_多轮对话--模型源码解析(一)Pickle模块功能详解 pickle --- Python 对象序列化的基本功能 1.pickle基本概念 2.pickle 与 json 模块的比较 3.p ...
- IOS视频编辑功能详解下篇-视频裁剪、视频拼接、音视频的处理
转自:http://www.hudongdong.com/ios/550.html 前言 用代码在简单视频编辑中,主要就是加美颜.水印(贴图).视频截取.视频拼接.音视频的处理,在美颜中,使用GPUI ...
- Android Studio build.gradle配置详解
Android Studio是采用gradle来构建项目的,gradle是基于groovy语言的,如果只是用它构建普通Android项目的话,是可以不去学groovy的.当我们创建一个Android项 ...
最新文章
- Microsoft Anti-Cross Site Scripting Library V1.5 发布了
- listFiles()
- [.NET开发] C#编程调用Cards.dll实现图形化发牌功能示例
- .NET 的 WCF 和 WebService 有什么区别?(转载)
- Jmeter系列之接口断言
- 关于oracle自动编号
- 软件测试的目的和原则
- bzoj 3332 旧试题
- Unity5.3官方VR教程重磅登场-系列5 VR中的运动
- java 休眠_Java中 休眠(sleep)
- Ubuntu18.04安装ceres-solver
- 计算机网络原理第七章——Internet 原理
- 104键键盘布局高清示意图
- 可解释性研究 -LRP-for-LSTM
- Unity3D 背景动态模糊(blur)和截屏方法
- wms、wmts、wfs等地图服务区别
- 苹果教你如何保持iPhone电池健康、延长电池寿命
- item_search_shop - 获得店铺的所有商品
- 安规测试 之耐压测试
- 健康管理的营利模式及体系构建
热门文章
- 在 E:\db\Custom\201610211635.bak 上读取失败: 38(已到文件结尾。) (Microsoft SQL Server,错误: 3203)
- 洛谷 P2657 (数位DP)
- 第1关:创建第一个 HTML 标签
- 本地方法栈 程序计数器 方法区
- matlab函数im2bw_im2bw(matlab中im2bw用法)
- 学生学籍管理系统简单设计(中)
- 【手写ICP】ICP -SVD 手动实现与例程(上)
- 仿联想商城laravel实战---5、无刷新的增删改查(动态页面更新的三种方式(html))...
- 香港千兆宽带每月160元 内地网民称伤不起
- 銀織の雷使い(プレメア) / 银雷(异时层机娘)