Eclipse-CVS中的ClassNotFoundException

时间:2012-08-13 05:54:27

标签: java liferay

名为Project A的我的Liferay项目依赖于名为Project B的CVS目录中的另一个项目,

每次我使用CVS项目ClassNotFoundException中的类时,我都会得到Project B。我不明白为什么,我还在项目的构建路径中包含了Project B但是没有用。

请帮帮我,如何从存储库中使用项目内的类?以下是引发Stack Trace的{​​{1}}:

exception

1 个答案:

答案 0 :(得分:0)

问题是项目B中的类在编译期间可以访问,但不能在运行时访问。为了实现这一目标,您有几种方法:

  1. Simpy:将两个项目合并为一个项目。这是最简单的方法,您将多个portlet和挂钩放在一个项目中。比所有类都要由一个类加载器加载。

  2. 如果您需要共享类,那将由多个项目加载 - 创建一个仅包含java类的项目(没有门户配置,如portlet.xml等)。将此共享项目导出到jar文件,并将jar文件放在docroot/WEB-INF/lib文件夹中的其他项目(如项目A)中。如果共享类具有共享状态,则将jar文件唯一地放入tomcat共享文件夹,如tomcat/lib/ext/