关于使用MyEclipse 6.0 整合ssh 包冲突问题

07-12-15 hiworld
这个问题困了我几天了,我总是改不了.到底应该怎么加入这么包使它们不冲突呢.在网上查了下说删除个asm.jar就可以了,但是还是不行.干脆那位大哥给我讲一个各个包的在什么情况下加.以下为MyEclipse-->Add Spring Capabilities包的加入选项:

1.Spring 2.0 AOP Libraries-<MyEclipse-Library>

2.Spring 2.0 Core Libraries-<MyEclipse-Library>

3.Spring 2.0 Persistence Core Libraries-<MyEclipse-Library>

4.Spring 2.0 Persistence JDBC Libraries-<MyEclipse-Library>

5.Spring 2.0 Persistence JDO Libraries-<MyEclipse-Library>

6.Spring 2.0 Persistence IBATIS Libraries-<MyEclipse-Library>

7.Spring 2.0 J2EE Libraries-<MyEclipse-Library>

8.Spring 2.0 Remoting Libraries-<MyEclipse-Library>

9.Spring 2.0 Misc Libraries-<MyEclipse-Library>

10.Spring 2.0 Testing Support Libraries-<MyEclipse-Library>

11.Spring 2.0 Web Libraries-<MyEclipse-Library>

12.Toplink Essentials-<MyEclipse-Library>

13.OpenJPA -<MyEclipse-Library>

14.Hibernate 3.2 Core Libraries-<MyEclipse-Library>

15.Hibernate 3.2 Annotations & Entity Manager <MyEclipse-Library>

16.Hibernate 3.2 Advanced Support Libraries-<MyEclipse-Library>

下为加入hibernate 包:

1.Hibernate 3.1 Core Libraries-<MyEclipse-Library>

2.Hibernate 3.1 Advanced Support Libraries-<MyEclipse-Library>

总会出现action null 的错误.

本来想发图片的,太是只允许不大于100K,所以就手写了一下.

[该贴被hiworld于2007-12-15 23:31修改过]

machiatto
2009-02-12 10:22
我也想知道这个问题 有没有高手解释下啊

dearshor
2009-02-12 20:32
to hiworld :

>干脆那位大哥给我讲一个各个包的在什么情况下加

这个很难讲清楚的。比如:

Spring 2.0 Core Libraries 本身依赖于一大批其他Libraries(eg. jars) ;其他你列出来的1,2,3...n也是每个都依赖于一大批其他Libraries,如何能搞清楚其中的依赖关系?如何搞清楚其中的版本兼容问题?到最后恐怕连这些Libraries 本身的开发者都回答不了这个问题。

那么如何解决这类问题?目前的解决方案就是给Libraries 里的每一个artifact(eg. jar)一些metadata, 用于描述这些artifact之间的依赖关系,比如a 依赖于 b,c , b 依赖于e,f, e 依赖于g,h ... 如此这般将所有的依赖关系都登记在册。

用的时候,在你的project的metadata里声明对其他artifact的“直接”引用(特别要注意,这里只需“直接引用”即可),比如只要声明你的project依赖于a, 那么你的project也就隐含的依赖于b,c,乃至 e,f, 这样你的project的dependency tree就建立起来了,冲突问题就解决了。

说到这,可能有人已经知道我在说什么了,没错,就是maven。

让maven来管理依赖吧,不要使用ide的什么“Add Spring Capabilities”之类的方式来添加依赖了,否则就会陷入你一开始所描述的噩梦里去的。

BTW, IDE是用于生产环境的,是开发real-world project时用来提高效率的。初学者在做练习的时候,IDE其实并不适合你用,特别是MyEclipse这类什么插件都预集成好了的(也不管你用不用的着)ide,强烈建议你抛弃它,否则你会像个傻瓜一样被这些ide玩的团团转!醒醒吧,是ide在玩你,而不是你在玩ide!!你了解ide的各种炫目的功能实际上都干了些什么吗?你用对ide的种种功能了吗?

最后,奉劝大家要慎用IDE, 请先了解ide所服务的技术/框架本身(比如这里提到的spring,hibernate),再去使用这些ide,才能把ide用好,真正发挥ide的作用。否则,你只有数不尽的噩梦缠身。

[该贴被dearshor于2009-02-12 20:38修改过]

猜你喜欢