gpt4 book ai didi

java - Liferay Unresolved 需求

转载 作者:行者123 更新时间:2023-12-02 01:36:05 27 4
gpt4 key购买 nike

我需要在另一个 Java 项目的 liferay 模块项目中使用一些类。我正在使用 gradle,当我部署应用程序时,即使 gradle 编译了我的 jar 文件,我也会收到 Unresolved 需求错误。

这是我到目前为止所做的,我的 gradle.build:

compile files('libs/p01-jdbc.jar')  
compileOnly group: "org.mql.biblio.dao.jdbc", name: "p01-jdbc", version: "default"

我的bnd文件:

Bundle-Name: Inter_Portlet_Communication
Bundle-SymbolicName: Inter_Portlet_Communication
Bundle-Version: 1.0.0
Export-Package: \
com.mql.ipc.constants
Include-Resource: @p01-jdbc.jar

还有我的导入

import org.mql.biblio.dao.jdbc.DataBase;
import org.mql.biblio.dao.jdbc.DataSource;
import org.mql.biblio.dao.jdbc.MySQLDataSource;

P.S:我正在编译的 jar 还使用本地 mysql.jar(位于名为 lib 的文件夹中)。

最佳答案

您不应该盲目地compileIninclude一切,直到“它有效”。检查this article对于您所做的事情 - 将依赖项也部署到 OSGi 容器更好 - 如果它们也是 OSGi 包。或者,也将它们制作为 OSGi 包。

如果 p01-jdbc.jar 已经是 OSGi 包:将其部署到 Liferay。如果它是一个自定义库而不是 OSGi bundle ,我更愿意将其设为一个,然后参见上文。

对于数据库驱动程序,这可能会在稍后影响您,因为 mysql 驱动程序通常也是全局部署的,并且您可能会遇到无法相互替换的模糊类,或者不同版本中的相同类,通过不同的类加载器。

关于java - Liferay Unresolved 需求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55251537/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com