eclipse_project
转!java web项目 build path 导入jar包,tomcat启动报错 找不到该类
在eclipse集成tomcat开发java web项目时,引入的外部jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环境中。
问题:在 web应用 右键->Run as -> Run on Server情况下,会找不到Java Resources下Libraries的jar,应该是eclipse工程在发布到tomcat时并未将lib内jar包发布过去;
解决:右键web应用,选择Properties->deployment assembly-> add ->java build path entries ->选择 jar 后重新发布;

但是这样打包的时候,仍然会报错,找不到该外部jar包的类。(参考:http://blog.sina.com.cn/s/blog_65e5eb110102v0fj.html)
解决方法如下:
1.在项目下建个文件目录,如lib()
2.将外部jar包复制到该目录下
3.选中我们复制好的jar,右键选择Build Path--->Add to Build Path:
我在web-inf下建的lib目录,同样的方式,但是打包会报错。
浅谈java项目与javaweb项目导入jar包的区别 http://www.jb51.net/article/129156.htm
eclipse内使用tomcat项目究竟被部署到了哪里
笔者在使用eclipse+tomcat做本地调试,项目没跑起来,原因就很奇怪啊(某前辈说过:奇怪源于无知),然后就想它究竟是把项目放到哪个目录下呢,我的tomcat/webapps目录下并没有啊。
默认部署到了哪里
eclipse并不像MyEclipse默认将项目部署到tomcat安装目录下的webapps中,而默认部署到工作目录(workspace)下的.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps中。(tmp0、tmp1的不同是目前这个server容器的顺序)
如何修改
为了使项目默认部署到tomcat安装目录下的webapps中,show view->servers->找到需要修改的tomcat->右击
- 停止eclipse内的tomcat服务器(stop)
- 删除该容器中部署的项目(add and remove)
- 清除该容器相关数据(clean)
- 打开tomcat的修改界面(open)
- 找到servers location, 选择第二个(User tomcat Installation)
- 修改deploy path为webapps
- 保存关闭
tomcat信息配置页详解
核心:
Configuration Path配置了本页面获取配置信息内容的地址,在tomcat run的时候,配置文件会同步到Server path/conf目录下,部署的文件会部署到Deploy path目录下。
页面打开方式:
show view->servers->找到需要修改的tomcat->右击+open或者双击
General Information
包含一些基本信息
注意Configuration path,默认配置的是work
space中的配置文件,而不是tomcat目录下的配置文件。
每个tomcat一个配置文件,会在tomcat run的时候,将配置文件信息与Server Path/conf中相关文件保持同步。
文件目录示例如下:
- +- Server
- +- Tomcat v7.0 Server at localhost-config
- --catalina.policy
- --catalina.properties
- --context.xml
- --server.xml
- --tomcat-users.xml
- --web.xml
Server Locations
Server Locations包含server path和Deploy path,
- Server Path
Use workspace metadata 默认位置(
.metadata/.plugins/org.eclipse.wst.server.core/tmp0)Use Tomcat installation(配置的本地tomcat目录)
如:/Users/shenpengyan/Documents/apache-tomcat-7.0.70/webappsUse custom location(使用任意其他目录)
- Deploy path:
和Server Path关联,设置serverpath的一个子目录,默认为(wtpwebapps)
Server Options
Publishing
Timeouts (启动和关闭超时)
在启动和关闭时,如果超过这里设定的时间就会报错。启动时如果项目启动比较耗时,可以调高start timeout。
Ports(端口)
这里列出了启动时候需要占用的端口号,如果启动时候显示端口号被占用。可以到这里去看,把相关端口占用清理掉,或者到对应的Configuration Path中的server.xml文件中修改对应的端口。
标准tomcat需要占用三个端口
| 端口 | 描述 |
|---|---|
| Tomcat admin port | tomcat启动关闭时用的端口 |
| HTTP/1.1 | http请求占用的端口 |
| APJ/1.3 | apj请求占用的端口 |
MIME Mapping(MIME类型对照关系,更改会显示在web.xml中)
tomcat内两种添加Web Modules的方式
- 添加web project
view->servers->找到需要修改的tomcat->右击-> add and remove
tomcat配置信息页,切换Modules tab。
如图,按钮`Add Web Module`用来添加内部project。
添加外部web project
如上图,按钮
Add External Web Module用来添加外部project。使用这种方式,可以直接把maven web项目中的target目录下的产出放进去启动。
eclipse_project的更多相关文章
- Difference between Tomcat's extraResourcePaths and aliases to access an external directory--转
Question: Simple question: In Tomcat7, what's the difference between using extraResourcePaths and al ...
- Oracle 11g XML java连接
在网上找了好多教程 走好好多弯路 现在从头总结下 oralce11g 可以直接用xmltype节点存储xml文件 简单来说就是直接存一个文件进去 首先安装oracle11g 网上教程非常多 然后进Ne ...
随机推荐
- Ubuntu14.04文件目录说明
一.Dev设备目录 二.etc配置文件目录 三.bin默认程序安装目录 四.boot系统启动用到的配置文件以及内核镜像 五.home用户目录 六.lib库文件目录 七.media系统自动挂载设备会选择 ...
- 1027C Minimum Value Rectangle
传送门 题目大意 有n个木棍,让你选4根使得组成的矩形的周长的平方除以面积最小. 分析 这个题看起来就是一个需要证明的贪心,下面我们来证明一下: 所以我们只需要枚举一边所有的a的可能值,然后b就是比a ...
- Linux-shell获取天气
用Linux中的shell获取天气,本来觉的比较难,原来,真简单,个位数的代码就搞定. 获取对应城市天气 所有天气信息都从中国天气网获取.每一个城市多会对应一个id(比如,北京为101010100,因 ...
- 【C# MVC】
http://www.cnblogs.com/powertoolsteam/p/MVC_three.html
- java实现生产者消费者模式
生产者消费者问题是一个著名的线程同步问题,该问题描述如下:有一个生产者在生产产品,这些产品将提供给若干个消费者去消费,为了使生产者和消费者能并发执行,在两者之间设置一个具有多个缓冲区的缓冲池,生产者将 ...
- 清理前一天log日志shell
清理前一天log日志shell #!/bin/bashlogPathList=`cat <<STD/data/logs/aiclass/backcms/data/logs/aiclass/ ...
- [BZOJ4521][Cqoi2016]手机号码 (数位dp)
题目描述 人们选择手机号码时都希望号码好记.吉利.比如号码中含有几位相邻的相同数字.不含谐音不吉利的数字等.手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号码单独出售.为了便于前 ...
- mysql远程访问被禁止
远程连接Mysql服务器的数据库,错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL ...
- luogu2948 滑雪课
题解里面全是dp的大神本蒟蒻瑟瑟发抖奉上一篇记忆化搜索... 其实嘛,记忆化搜索还是很安全透彻清真人品的,一般递推不好实现dp可以用记忆化搜索 然后本题先预处理一个mint[i]代表当前能力值为i,参 ...
- freemarker常用标签解释
标签一: if else 你可以使用if,elseif和else指令来条件判断是否越过模板的一个部分.这些condition-s必须计算成布尔值,否则错误将会中止模板处理.elseif-s和else- ...