6

我在我的portlet 中使用了几个jar,例如c3p0。现在我想避免将罐子放在我的每个 portlets lib 文件夹中。如何在多个 portlet 中共享一个 jar 文件?我应该如何将它们集成到 Eclipse IDE 中?添加一个外部 jar 或将它们放在一个专用项目中并从那里包含它们?

4

2 回答 2

6

另一种解决方案是将它们放在../liferay-portal-<version>/tomcat-<version>/webapps/ROOT/WEB-INF/lib

如果将它们放在这里,您可以将 JAR 作为 portlet 的依赖项添加到 portlet 中liferay-plugin-package.properties(如果您使用 Liferay Developer Studio 或 Liferay IDE,那么有一个很好的 GUI)。

然后在部署时,Liferay 会将所需的 JARS 复制ROOT/WEB-INF/lib到您的 portletWEB-INF/lib

我相信这是 Liferay 的支持机制,并且不需要重新启动,因为 JAR 会在部署时复制到 portlet 类路径。

于 2012-09-11T08:09:10.937 回答
2

我能想到的一种方法是将它们全部放在全局路径中。

例如,在 Tomcat 中,您可以将它们放置在../liferay-portal-<version>/tomcat-<version>/lib/ext然后当您在 eclipse 中配置服务器运行时库时,您将在构建路径中拥有这些 jar。

链接也可以帮助您做出决定,但它代表了*-service.jar但我不确定它是否适用于任何一个 portlet 中的其他 jar。

于 2012-09-10T10:52:24.690 回答