java - 在“org.eclipse.pde.build”包中添加“pdebuild.jar”到编译类路径?
问题描述
当我查看位于 Maven 中心以下坐标处的罐子时:
<dependency>
<groupId>org.eclipse.pde</groupId>
<artifactId>org.eclipse.pde.build</artifactId>
<version>3.11.0</version>
</dependency>
我看到有线内容。里面没有*.class
文件。
只有META-INF/MANIFEST.MF
似乎是相关的和正确的。
对应源码: https ://git.eclipse.org/c/pde/eclipse.pde.build.git/tree/org.eclipse.pde.build/META-INF/MANIFEST.MF
当我尝试在我的代码中使用其 maven 中心坐标引用的 jar 时,Gradle 构建失败并出现预期的结果:
error: cannot access org.eclipse.pde.internal.build.IBuildPropertiesConstants
这是有道理的,因为该类位于罐子pdebuild.jar
内。org.eclipse.pde:org.eclipse.pde.build:3.11.0
我猜 MANIFEST 中的这一行告诉 Eclipse 编译器也要查看 jar 中的 jar:
Bundle-ClassPath: pdebuild.jar
如果我将pdebuild.jar
(从 Maven 中央获取的 jar 中手动提取)放在类路径中:
然后我就可以编译了。
如何让 Gradle 知道这个Bundle-ClassPath
OSGi 指令?
我发现了这个相关的问题:Gradle: Properly build classpath from OSGI dependency's MANIFEST.MF
从答案来看,这似乎是不可能的
解决方案
推荐阅读
- html - 仅在小屏幕尺寸上应用类
- reactjs - 为什么第一个 SetState 总是受到影响,而第二个没有反应原生?
- c# - 从默认构造函数在静态类中添加实例类时出现 Stack-Overflow 异常
- tensorflow - CUB 减少错误无效的配置参数 [[{{node FUllYConnected_1/weight_regularizer/Sum}}]] [[{{node metrics/acc/Mean}}]]
- java - Prettyprint 在 JTextArea/JEditorPane 中提升为数字
- android - 如何在改造错误处理程序上检索从服务器发送的 errorBody?
- javascript - 如何过滤其值可能包含 null 的对象数组?
- java - 无法使用自制软件安装 java8
- php - Laravel 雄辩的查询构建器 - 与组的关系求和
- java - 如何在不提交表单的情况下将jsp中选择的选择/选项字段转换为变量?