有没有办法通过 JDT API 以编程方式访问 Java 项目的 build.properties
?像 IJavaProject.getRawClasspath()
这样的东西只是为了 build.properties
?
如果我有一个 IProject
/IJavaProject
,我可以像这样使用 JDT API 添加一行(通过 JDT API 调用):
之前:
source.. = src/
output.. = bin/
之后:
source.. = src/,\
xtend-gen/
output.. = bin/
最佳答案
这是一个 PDE 对象而不是 JDT,因此您需要使用 PDE API。有关 PDE API 的文档非常少。
build.properties 由 org.eclipse.pde.core.build.IBuildModel 接口(interface)描述。你可以使用以下方法得到这个:
IProject project = ... project ...
IPluginModelBase base = PluginRegistry.findModel(project);
IBuildModel buildModel = PluginRegistry.createBuildModel(base);
您可以使用以下方式获取“bin.includes”条目
IBuildEntry entry = buildModel.getBuild().getEntry(IBuildEntry.BIN_INCLUDES);
IBuildEntry
的 addToken
方法似乎是添加到条目的方法。
要保存,您需要检查模型是否是 IEditableModel
的实例,并调用 IEditableModel.save
方法。
if (buildModel instanceof IEditableModel) {
((IEditableModel)buildModel).save();
}
关于java - 通过 JDT API 以编程方式访问 Java 项目的 build.properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42255047/