gpt4 book ai didi

java - Bndtools 与 lombok "contains an unknown container"

转载 作者:行者123 更新时间:2023-12-01 18:09:05 25 4
gpt4 key购买 nike

我终于完成了将应用程序的一部分移动到 osgi bundle 中,并在我的主机应用程序中使用这些 bundle 。这真的非常好用!

目前我正在使用 bndtools 清理我的 Eclipse 工作区并消除警告。

我无法摆脱的一个警告是:

Eclipse: The .classpath contains an unknown container: org.eclipse.jdt.USER_LIBRARY/lombok

我在我的一些包中使用了 lombok。我只是将其添加到项目属性 > java 构建路径 > 库选项卡中。效果很好,因为 lombok 是 eclipse 中编译时的库。但这里的问题是我确实收到了上述警告。

我向本地 bndtools 存储库(存储库 View )添加了一些外部 jar(包含捆绑信息),然后可以将这些 jar 添加到 bndtools 构建路径,例如 gson。

但是 lombok 似乎没有任何 osgi 捆绑信息,因此将其添加到本地存储库会给我一个错误“Jar 没有符号名称”。

当然,我可以编辑 lombok.jar 并添加捆绑信息。但我想知道是否有更干净的方法来做到这一点?

最佳答案

警告意味着,虽然 Eclipse 由于 lombok 容器而知道要放在编译路径上的 jar,但离线构建(例如 gradle)现在无法知道要放在类路径上的 jar。因此,该警告表明在 Eclipse 中构建和在 Eclipse 外部构建之间存在保真度问题。

将所有编译 jar 放入项目的 bnd.bnd 文件的 -buildpath 指令中意味着 Eclipse 和非 Eclipse 构建之间的保真度。

但是,您可以使用 bnd 文件中的 -fixupmessages 指令删除警告。

-fixupmessages:“Eclipse:.classpath 包含未知容器:org.eclipse.jdt.USER_LIBRARY/lombok”

关于java - Bndtools 与 lombok "contains an unknown container",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34251470/

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